C# 프로젝트에서 OCR 구현

Muhammad Zeeshan 2023년10월12일
  1. NuGet 참조 패키지 추가
  2. C#에서 OCR 구현
C# 프로젝트에서 OCR 구현

오늘의 기사에서는 C# 프로그래밍 언어를 사용하여 프로젝트에서 OCR을 구현하는 방법에 대해 설명합니다.

NuGet 참조 패키지 추가

광학 문자 인식 또는 OCR 작업을 위해 IronOcr 패키지를 추가합니다. 그렇게 하려면 아래 단계를 따르십시오.

  • Visual Studio를 열고 Console Application을 만들고 이름을 지정합니다.
  • Solution Explorer 패널을 마우스 오른쪽 버튼으로 클릭하고 NuGet 패키지 관리를 선택합니다.
  • 이제 찾아보기 옵션을 클릭하고 IronOcr을 검색하여 설치합니다.

    IronOcr 설치

C#에서 OCR 구현

Tesseract 5 API의 다음 예를 통해 사진 데이터를 텍스트로 변환할 수 있는 프로세스인 OCR을 더 잘 이해할 수 있습니다.

시작하려면 다음 라이브러리를 가져옵니다.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using IronOcr;

먼저 Iron Tesseract에 대한 새 개체를 만들고 ocrbyZeeshan이라는 이름을 지정해야 합니다.

var ocrbyZeeshan = new IronTesseract();

하나 이상의 이미지 파일을 추가할 수 있도록 OcrInput 변수에 대한 객체를 구성해야 합니다.

using (var inputfile = new OcrInput()) {}

OcrInput 개체 메서드 AddImage를 활용하고 있습니다. 이 함수는 액세스 가능한 이미지 경로를 제공하기를 원합니다.

using (var inputfile = new OcrInput()) {
  inputfile.AddImage(@"Shani.png");
  var Result = ocrbyZeeshan.Read(inputfile);
  Console.WriteLine(Result.Text);
  Console.ReadKey();
}

Shani.png라는 이름의 이미지는 아래와 같습니다.

샘플 이미지

완전한 소스 코드:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using IronOcr;

namespace ImplementOCRbyZeeshan {
  class Program {
    static void Main(string[] args) {
      var ocrbyZeeshan = new IronTesseract();
      ocrbyZeeshan.Language = OcrLanguage.English;
      ocrbyZeeshan.Configuration.TesseractVersion = TesseractVersion.Tesseract5;
      using (var inputfile = new OcrInput()) {
        inputfile.AddImage(@"Shani.png");
        var Result = ocrbyZeeshan.Read(inputfile);
        Console.WriteLine(Result.Text);
        Console.ReadKey();
      }
    }
  }
}

출력:

My Name is Muhammad Zeeshan. Let's code.
Muhammad Zeeshan avatar Muhammad Zeeshan avatar

I have been working as a Flutter app developer for a year now. Firebase and SQLite have been crucial in the development of my android apps. I have experience with C#, Windows Form Based C#, C, Java, PHP on WampServer, and HTML/CSS on MYSQL, and I have authored articles on their theory and issue solving. I'm a senior in an undergraduate program for a bachelor's degree in Information Technology.

LinkedIn