翻譯|使用教程|編輯:李顯亮|2020-08-26 10:30:50.463|閱讀 426 次
概述:光學標記識別,縮寫為OMR,通常用于評估問卷,調查和其他信息收集標準。因此,光學標記識別系統在科學研究或商業研究中起著重要作用。在本文中,讓我們學習如何在.NET應用程序中使用C#語言創建和檢查OMR問答紙。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
Aspose.OMR是一種光學標記識別API,用于識別各種類型的答題紙,包括測試,評估,調查,測驗,MCQ論文,反饋表格-包括氣泡作為輸入的任何類型的文檔。API支持創建和讀取OMR表單,并以流行的圖像格式處理照片和掃描,并提供各種格式的輸出。
光學標記識別,縮寫為OMR,通常用于評估問卷,調查和其他信息收集標準。因此,光學標記識別系統在科學研究或商業研究中起著重要作用。
本文讓我們學習如何在.NET應用程序中使用C#語言創建和檢查OMR問答紙。我們將簡要探討以下方法:
在這里,我們將樣本問題存儲在TXT文件中,稍后OMR引擎將使用它們來創建OMR問題紙模板,圖像和PDF文件。此外,以下是我們將用作OMR引擎輸入的文本標記:
現在,我們將使用C#代碼按照以下步驟創建OMR多選題表:
以下代碼段基于這些步驟,這些步驟顯示了如何使用C#創建OMR問題表模板,圖像和PDF文件:
// initialize OMR engine OmrEngine engine = new OmrEngine(); // call template generation providing path to the txt file with markup GenerationResult res = engine.GenerateTemplate(Path.Combine(testFolderPath, "Grid.txt")); // check in case of errors if (res.ErrorCode != 0) { Console.WriteLine("ERROR CODE: " + res.ErrorCode); } // you can use either of the following approaches // save generation result: PDF and .omr template res.SaveAsPdf(testFolderPath , "Grid"); // save generation result: image and .omr template res.Save(testFolderPath, "Grid");
因此,我們已經創建了OMR試卷,如下截圖所示。您可以通過打印生成的PDF文件或圖像按您的要求分發文件。
最后,您將在生成的氣泡答題紙上收集響應,然后捕獲圖像,或掃描它們以使用C#執行OMR。在此示例中,讓我們考慮以下示例圖像。用于.NET API的Aspose.OMR將創建一個逗號分隔(CSV)文件作為執行OMR的輸出。
讓我們按照以下步驟使用C#執行OMR:
下面的代碼段顯示了如何在C#中的多選氣泡答題紙圖像上執行OMR:
string TemplateName = @"Sheet.omr"; string[] UserImages = new string[] { "Sheet1.jpg" }; // input and output preparation string testFolderPath = dataDir; string templatePath = Path.Combine(testFolderPath, TemplateName); // actual OMR API calls OmrEngine engine = new OmrEngine(); TemplateProcessor templateProcessor = engine.GetTemplateProcessor(templatePath); Console.WriteLine("Template loaded."); for (int i = 0; i < UserImages.Length; i++) { string imagePath = Path.Combine(testFolderPath, UserImages[i]); string csvResult = templateProcessor.RecognizeImage(imagePath).GetCsv(); File.WriteAllText(Path.Combine(outputPath, Path.GetFileNameWithoutExtension(UserImages[i]) + ".csv"), csvResult); Console.WriteLine("Result exported. Path: " + Path.Combine(testFolderPath, Path.GetFileNameWithoutExtension(UserImages[i]) + ".csv")); }
以下屏幕截圖顯示了使用Aspose.OMR for .NET API生成輸出CSV文件的效率和準確性。現在可以根據系統設計進一步處理此CSV信息。
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn