광학 마크 인식 작업을 수행하여 이미지의 특정 마크를 인식할 수 있습니다. 예를 들어, 객관식 질문 형식으로 설문지, 설문조사 또는 시험에 대해 채워진 거품을 인식할 수 있습니다. 자세한 내용은 다음 섹션을 참조하십시오.

광학 마크 인식 – C# API 설치

Downloads 섹션에서 DLL을 다운로드하거나 다음 설치 명령으로 NuGet 갤러리를 통해 C# 애플리케이션에서 Aspose.OMR for .NET API를 구성할 수 있습니다.

PM> Install-Package Aspose.OMR

C#에서 OMR을 사용하여 MemoryStream에서 이미지 인식

때로는 이미지가 데이터베이스 또는 일부 원격 리소스에 저장되고 해당 파일을 MemoryStream에 로드할 수 있습니다. 마찬가지로 디스크에 이미지를 저장한 다음 처리를 위해 로드하는 것이 오버헤드가 될 수 있는 많은 시나리오가 있을 수 있습니다. 따라서 이미지를 Stream에 편리하게 로드하고 OMR 작업을 수행할 수 있습니다. 다음은 MemoryStream에서 이미지를 인식하는 단계입니다.

  1. 인식할 템플릿을 가져옵니다.
  2. OmrEngine 클래스 객체를 초기화합니다.
  3. RecognizeImage 메서드를 사용하여 MemoryStream의 이미지를 인식합니다.
  4. RecognitionResult 클래스 인스턴스로 출력 파일을 저장합니다.

다음 코드는 C#에서 OMR을 사용하여 MemoryStream의 이미지를 인식하는 방법을 보여줍니다.

// 인식할 템플릿 가져오기
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);
    }
}

C#을 사용하여 OMR로 인식할 이미지를 일괄 처리

폴더에 있는 이미지를 일괄 처리하고 광학식 마크 인식으로 마크를 인식할 수 있습니다. 이미지 배치를 인식하려면 다음 단계를 따르십시오.

  1. 인식할 OMR 템플릿을 가져옵니다.
  2. RecognizeFolder 메서드를 사용하여 모든 이미지의 RecognitionResult를 가져옵니다.
  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를 평가할 수 있습니다.

결론

이 기사에서는 C#에서 OMR을 사용하여 MemoryStream에서 이미지를 인식하는 방법을 배웠습니다. 또한 폴더에 있는 모든 이미지를 인식하고 출력 결과를 CSV, 쉼표로 구분된 값, 파일로 저장하는 방법에 대해서도 설명합니다. 또한 문서를 방문하여 API의 다른 기능을 살펴볼 수 있습니다. 우려 사항이 있으면 무료 지원 포럼에서 언제든지 문의할 수 있습니다.

또한보십시오