با انجام عملیات تشخیص علامت نوری می توانید علائم خاصی را روی تصاویر تشخیص دهید. برای مثال، می‌توانید حباب‌های پرشده برای پرسشنامه، نظرسنجی یا امتحان را در قالب سؤالات چند گزینه‌ای تشخیص دهید. لطفا برای جزئیات بیشتر به بخش های زیر مراجعه کنید:

تشخیص علامت نوری – نصب C# API

می‌توانید با دانلود DLL از بخش‌های Downloads یا از طریق گالری NuGet با دستور نصب زیر، Aspose.OMR for .NET API را در برنامه‌های #C خود پیکربندی کنید:

PM> Install-Package Aspose.OMR

تشخیص تصویر از MemoryStream با استفاده از OMR در سی شارپ

گاهی اوقات تصاویر در پایگاه داده یا برخی منابع راه دور ذخیره می شوند و می توانید آن فایل ها را در MemoryStream بارگذاری کنید. به همین ترتیب، ممکن است سناریوهای زیادی وجود داشته باشد که ذخیره یک تصویر بر روی دیسک و سپس بارگذاری آن برای پردازش می تواند یک هزینه اضافی باشد. بنابراین می توانید به راحتی تصویر را در یک Stream بارگذاری کنید و عملیات OMR را روی آن انجام دهید. در زیر مراحل تشخیص تصویر از MemoryStream آمده است:

  1. برای تشخیص الگو را دریافت کنید.
  2. شی کلاس OmrEngine را مقداردهی کنید.
  3. تصویر را در MemoryStream با روش RecognizeImage تشخیص دهید.
  4. فایل خروجی را با نمونه کلاس RecognitionResult ذخیره کنید.

کد زیر نحوه تشخیص تصویر از MemoryStream با OMR در سی شارپ را نشان می دهد:

// برای تشخیص الگو دریافت کنید
string templatePath = "Sheet.omr";

// دریافت تصویر برای شناسایی
string imagePath = "Sheet1.JPG";

// شی کلاس OmrEngine را راه اندازی کنید
OmrEngine engine = new OmrEngine();

// تنظیم قالب برای شناسایی
TemplateProcessor templateProcessor = engine.GetTemplateProcessor(templatePath);

using (Image image = Image.FromFile(imagePath))
{
    using (MemoryStream ms = new MemoryStream())
    {
        image.Save(ms, image.RawFormat);
        ms.Flush();

        // تشخیص تصویر
        Aspose.OMR.Model.RecognitionResult result = templateProcessor.RecognizeImage(ms);

        var stringRes = result.GetCsv();
        File.WriteAllText(Path.GetFileNameWithoutExtension(imagePath) + ".csv", stringRes);
    }
}

پردازش دسته ای تصاویر برای شناسایی با OMR با استفاده از C#

می توانید دسته ای از تصاویر را در یک پوشه پردازش کنید و علائم را با تشخیص علامت نوری تشخیص دهید. لطفاً مراحل زیر را برای تشخیص دسته ای از تصاویر دنبال کنید:

  1. برای تشخیص الگوی OMR را دریافت کنید.
  2. RecognitionResult از همه تصاویر را با استفاده از روش RecognizeFolder دریافت کنید.
  3. خروجی را به عنوان یک فایل CSV ذخیره کنید.

کد زیر نحوه پردازش دسته ای از تصاویر را برای تشخیص علامت نوری به صورت برنامه نویسی با استفاده از C# توضیح می دهد:

// برای تشخیص الگو دریافت کنید
string templatePath = "Sheet.omr";

// پوشه دریافت حاوی تصاویر برای شناسایی است
string folderPath = "D:\images\";

OmrEngine engine = new OmrEngine();

// تنظیم قالب برای شناسایی
TemplateProcessor templateProcessor = engine.GetTemplateProcessor(templatePath);

// تشخیص تصاویر از پوشه
Aspose.OMR.Model.RecognitionResult[] result = templateProcessor.RecognizeFolder(folderPath);

for (int i = 0; i < result.Length; i++)
{
    var stringRes = result[i].GetCsv();
    File.WriteAllText(folderPath  + (i+1) + ".csv", stringRes);
}

مجوز API رایگان دریافت کنید

با درخواست مجوز موقت رایگان می‌توانید API را بدون هیچ محدودیتی ارزیابی کنید.

نتیجه

در این مقاله، نحوه تشخیص تصویر از MemoryStream با استفاده از OMR در سی شارپ را یاد گرفتید. همچنین در مورد شناسایی تمام تصاویر در یک پوشه و ذخیره نتیجه خروجی به عنوان CSV، مقادیر جدا شده با کاما، فایل ها بحث می کند. علاوه بر این، می‌توانید با مراجعه به Documentation به سایر ویژگی‌های API نگاهی بیندازید. برای هر یک از نگرانی‌هایتان همیشه می‌توانید در تالار گفتمان پشتیبانی رایگان با ما تماس بگیرید.

همچنین ببینید