C#및 .Net의 한국어 OCR

이 문서의 다른 버전 :

IronOCR은 .NET 코더가 한국어를 포함한 126 개 언어로 이미지 및 PDF 문서에서 텍스트를 읽을 수 있도록하는 C#소프트웨어 구성 요소입니다.

.NET 개발자 전용으로 제작 된 Tesseract의 고급 포크이며 속도와 정확성 모두에서 정기적으로 다른 Tesseract 엔진보다 성능이 뛰어납니다.

IronOcr.Languages.Korean의 내용

이 패키지에는 .NET 용 108 OCR 언어가 포함되어 있습니다.

  • 한국어
  • 한국 최고
  • 한국어 빠른
  • 한국어 수직
  • 한국어 VerticalBest
  • 한국어 VerticalFast

다운로드

한국어 언어 팩 [한국어 (韓國 語)]
* Download as 지퍼
* Install with as
https://www.nuget.org/packages/IronOcr.Languages.Korean/'> NuGet

설치

가장 먼저해야 할 일은 한국어 OCR 패키지를 .NET 프로젝트에 설치하는 것입니다.

PM> Install-Package IronOCR.Languages.Korean

코드 예

이 C#코드 예제는 이미지 또는 PDF 문서에서 한국어 텍스트를 읽습니다.

//PM> Install-Package IronOcr.Languages.Korean
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Korean;
using (var Input = new OcrInput(@"images\Korean.png"))
{
var Result = Ocr.Read(Input);
Var AllText = Result.Text
}
//PM> Install-Package IronOcr.Languages.Korean
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Korean;
using (var Input = new OcrInput(@"images\Korean.png"))
{
var Result = Ocr.Read(Input);
Var AllText = Result.Text
}
'PM> Install-Package IronOcr.Languages.Korean
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Korean
Using Input = New OcrInput("images\Korean.png")
Dim Result = Ocr.Read(Input)
Dim AllText As Var = Result.Text
End Using
VB   C#

IronOCR을 선택하는 이유는 무엇입니까?

Iron OCR은 설치가 쉽고 완전하며 잘 문서화 된 .NET 소프트웨어 라이브러리입니다.

IronOCR을 선택하면 외부 웹 서비스를 사용하지 않고 지속적인 비용을 지불하거나 인터넷을 통해 기밀 문서를 전송하지 않고도 99.8 % 이상의 OCR 정확도 를 달성 할 수 있습니다.

C#개발자가 Vanilla Tesseract보다 IronOCR을 선택하는 이유 :

  • 단일 DLL 또는 Nuget으로 설치
  • Tesseract 5, 4 및 3 엔진을 즉시 사용할 수 있습니다.
  • 정확도 99.8 %는 일반 Tesseract보다 훨씬 뛰어난 성능을 보입니다.
  • 놀라운 속도와 멀티 스레딩
  • MVC, WebApp, 데스크탑, 콘솔 및 서버 애플리케이션 호환
  • 작업 할 Exes 또는 C ++ 코드 없음
  • 전체 PDF OCR 지원
  • 거의 모든 이미지 파일 또는 PDF에서 OCR을 수행하려면
  • 완전한 .Net Core, Standard 및 FrameWork 지원
  • Windows, Mac, Linux, Azure, Docker, Lambda, AWS에 배포
  • 바코드 및 QR 코드 읽기
  • OCR을 XHTML로 내보내기
  • OCR을 검색 가능한 PDF 문서로 내보내기
  • 멀티 스레딩 지원
  • Nuget 또는 OcrData 파일을 통해 관리되는 126 개의 국제 언어
  • 이미지, 좌표, 통계 및 글꼴을 추출합니다. 텍스트 뿐만이 아닙니다.
  • 상용 및 독점 응용 프로그램 내에서 Tesseract OCR을 재배포하는 데 사용할 수 있습니다.

Iron OCR은 실제 이미지와 사진과 같은 불완전한 문서 또는 디지털 노이즈 나 결함이있을 수있는 저해상도 스캔 작업을 할 때 빛납니다.

다른 .net tesseract API 및 웹 서비스와 같은 .NET 플랫폼 용 다른 무료 OCR 라이브러리는 이러한 실제 사용 사례에서 그렇게 잘 수행되지 않습니다.

Tesseract 5를 사용한 OCR-C #으로 코딩 시작

아래 코드 샘플은 C#또는 VB .NET을 사용하여 이미지에서 텍스트를 읽는 것이 얼마나 쉬운 지 보여줍니다.

짧막 한 농담

string Text = new IronTesseract().Read(@"img\Screenshot.png").Text;
string Text = new IronTesseract().Read(@"img\Screenshot.png").Text;
Dim Text As String = (New IronTesseract()).Read("img\Screenshot.png").Text
VB   C#

구성 가능한 Hello World

// PM> Install-Package IronOCR.Languages.Korean
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Korean;
using (var Input = new OcrInput()){
Input.AddImage("images/sample.jpeg")
//... 여러 이미지를 추가 할 수 있습니다.
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
// PM> Install-Package IronOCR.Languages.Korean
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Korean;
using (var Input = new OcrInput()){
Input.AddImage("images/sample.jpeg")
//... 여러 이미지를 추가 할 수 있습니다.
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
' PM> Install-Package IronOCR.Languages.Korean
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Korean
Using Input = New OcrInput()
Input.AddImage("images/sample.jpeg") var Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
VB   C#

C#PDF OCR

모든 PDF 문서에서 텍스트를 추출하는 데 동일한 접근 방식을 유사하게 사용할 수 있습니다.

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Korean;
using (var input = new OcrInput())
{
input.AddPdf("example.pdf", "password");
// 특정 PDF 페이지 번호를 OCR로 선택할 수도 있습니다.

var Result = Ocr.Read(input);

Console.WriteLine(Result.Text);
Console.WriteLine($"{Result.Pages.Count()} Pages");
// PDF의 모든 페이지 당 1 페이지
}
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Korean;
using (var input = new OcrInput())
{
input.AddPdf("example.pdf", "password");
// 특정 PDF 페이지 번호를 OCR로 선택할 수도 있습니다.

var Result = Ocr.Read(input);

Console.WriteLine(Result.Text);
Console.WriteLine($"{Result.Pages.Count()} Pages");
// PDF의 모든 페이지 당 1 페이지
}
Dim Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Korean
Using input = New OcrInput()
input.AddPdf("example.pdf", "password")
' 특정 PDF 페이지 번호를 OCR로 선택할 수도 있습니다.

Dim Result = Ocr.Read(input)

Console.WriteLine(Result.Text)
Console.WriteLine($"{Result.Pages.Count()} Pages")
' PDF의 모든 페이지 당 1 페이지
End Using
VB   C#

MultiPage TIFF 용 OCR

OCR 여러 페이지 문서를 포함한 TIFF 파일 형식 읽기. TIFF는 검색 가능한 텍스트가있는 PDF 파일로 직접 변환 할 수도 있습니다.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Korean;

using (var Input = new OcrInput()){
input.AddMultiFrameTiff("multi - frame.tiff");
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Korean;

using (var Input = new OcrInput()){
input.AddMultiFrameTiff("multi - frame.tiff");
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Korean

Using Input = New OcrInput()
input.AddMultiFrameTiff("multi - frame.tiff")
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
VB   C#

바코드 및 QR

Iron OCR의 고유 한 기능은 텍스트를 스캔하는 동안 문서에서 바코드와 QR 코드를 읽을 수 있다는 것입니다. OcrResult.OcrBarcode 클래스의 인스턴스는 개발자에게 스캔 된 각 바코드에 대한 자세한 정보를 제공합니다.

// using IronOcr;
var Ocr = new IronTesseract();
Ocr.Configuration.ReadBarCodes = true;

using (var input = new OcrInput())
{
input.AddImage("img/Barcode.png");
var Result = Ocr.Read(input);
foreach (var Barcode in Result.Barcodes)
{
Console.WriteLine(Barcode.Value);
// 유형 및 위치 속성도 노출됨
}
}
// using IronOcr;
var Ocr = new IronTesseract();
Ocr.Configuration.ReadBarCodes = true;

using (var input = new OcrInput())
{
input.AddImage("img/Barcode.png");
var Result = Ocr.Read(input);
foreach (var Barcode in Result.Barcodes)
{
Console.WriteLine(Barcode.Value);
// 유형 및 위치 속성도 노출됨
}
}
' using IronOcr;
Dim Ocr = New IronTesseract()
Ocr.Configuration.ReadBarCodes = True

Using input = New OcrInput()
input.AddImage("img/Barcode.png")
Dim Result = Ocr.Read(input)
For Each Barcode In Result.Barcodes
Console.WriteLine(Barcode.Value)
' 유형 및 위치 속성도 노출됨
Next Barcode
End Using
VB   C#

이미지의 특정 영역에 대한 OCR

Iron OCR의 모든 스캔 및 읽기 방법은 페이지에서 텍스트를 읽고 자하는 페이지를 정확히 지정하는 기능을 제공합니다. 이것은 표준화 된 양식을 볼 때 매우 유용하며 많은 시간을 절약하고 효율성을 향상시킬 수 있습니다.

자르기 영역을 사용하려면 System.Drawing.Rectangle 개체를 사용할 수 있도록 System.Drawing 시스템 참조를 추가해야합니다.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Korean;

using (var Input = new OcrInput())
{
var ContentArea = new System.Drawing.Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 };
// 치수는 픽셀 단위입니다.

Input.Add("document.png", ContentArea);

var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Korean;

using (var Input = new OcrInput())
{
var ContentArea = new System.Drawing.Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 };
// 치수는 픽셀 단위입니다.

Input.Add("document.png", ContentArea);

var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Korean

Using Input = New OcrInput()
Dim ContentArea = New System.Drawing.Rectangle() With {
	.X = 215,
	.Y = 1250,
	.Height = 280,
	.Width = 1335
}
' 치수는 픽셀 단위입니다.

Input.Add("document.png", ContentArea)

Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
VB   C#

저품질 스캔을위한 OCR

Iron OCR OcrInput 클래스는 일반 Tesseract가 읽을 수없는 스캔을 수정할 수 있습니다.

using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Korean;

using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
Input.DeNoise(); // 디지털 노이즈 및 스캔 불량 수정
Input.Deskew(); // 회전 및 원근 수정
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Korean;

using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
Input.DeNoise(); // 디지털 노이즈 및 스캔 불량 수정
Input.Deskew(); // 회전 및 원근 수정
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Korean

Using Input = New OcrInput("img\Potter.LowQuality.tiff")
Input.DeNoise() ' 디지털 노이즈 및 스캔 불량 수정
Input.Deskew() ' 회전 및 원근 수정
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
VB   C#

OCR 결과를 검색 가능한 PDF로 내보내기

복사 가능한 텍스트 문자열로 이미지를 PDF로 변환합니다. 검색 엔진 및 데이터베이스에 의해 색인화 될 수 있습니다.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Korean;

using (var Input = new OcrInput()){
input.Title = "Quarterly Report"
input.AddImage("image1.jpeg");
input.AddImage("image2.png");
input.AddImage("image3.gif");

var Result = Ocr.Read(input);
Result.SaveAsSearchablePdf("searchable.pdf")
}
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Korean;

using (var Input = new OcrInput()){
input.Title = "Quarterly Report"
input.AddImage("image1.jpeg");
input.AddImage("image2.png");
input.AddImage("image3.gif");

var Result = Ocr.Read(input);
Result.SaveAsSearchablePdf("searchable.pdf")
}
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Korean

Using Input = New OcrInput()
input.Title = "Quarterly Report" input.AddImage("image1.jpeg")
input.AddImage("image2.png")
input.AddImage("image3.gif")

Dim Result = Ocr.Read(input)
Result.SaveAsSearchablePdf("searchable.pdf")
End Using
VB   C#

TIFF를 검색 가능한 PDF로 변환

TIFF 문서 (또는 이미지 파일 그룹)를 인트라넷, 웹 사이트 및 Google 검색 엔진에서 색인화 할 수있는 검색 가능한 PDF로 직접 변환합니다.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Korean;

using (var Input = new OcrInput()){
input.AddMultiFrameTiff("example.tiff")
var Result = Ocr.Read(input).SaveAsSearchablePdf("searchable.pdf")
}
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Korean;

using (var Input = new OcrInput()){
input.AddMultiFrameTiff("example.tiff")
var Result = Ocr.Read(input).SaveAsSearchablePdf("searchable.pdf")
}
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Korean

Using Input = New OcrInput()
input.AddMultiFrameTiff("example.tiff") var Result = Ocr.Read(input).SaveAsSearchablePdf("searchable.pdf")
End Using
VB   C#

OCR 결과를 HTML로 내보내기

OCR 이미지를 XHTML로 변환합니다.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Korean;
using (var Input = new OcrInput()){
input.Title = "Html Title"
input.AddImage("image1.jpeg");
var Result = Ocr.Read(input);
Result.SaveAsHocrFile("results.html");
}
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Korean;
using (var Input = new OcrInput()){
input.Title = "Html Title"
input.AddImage("image1.jpeg");
var Result = Ocr.Read(input);
Result.SaveAsHocrFile("results.html");
}
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Korean
Using Input = New OcrInput()
input.Title = "Html Title" input.AddImage("image1.jpeg")
Dim Result = Ocr.Read(input)
Result.SaveAsHocrFile("results.html")
End Using
VB   C#

OCR 이미지 향상 필터

IronOCR은 OCR 성능을 향상시키기 위해 OcrInput 객체에 고유 한 필터를 제공합니다.

이미지 향상 코드 예

OCR 입력 이미지를 더 높은 품질로 만들어 더 빠르고 더 나은 OCR 결과를 생성합니다.

using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Korean;

using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
Input.DeNoise(); // 디지털 노이즈 및 스캔 불량 수정
Input.Deskew(); // 회전 및 원근 수정
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Korean;

using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
Input.DeNoise(); // 디지털 노이즈 및 스캔 불량 수정
Input.Deskew(); // 회전 및 원근 수정
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Korean

Using Input = New OcrInput("LowQuality.jpeg")
Input.DeNoise() ' 디지털 노이즈 및 스캔 불량 수정
Input.Deskew() ' 회전 및 원근 수정
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
VB   C#

OCR 이미지 필터 목록

IronOCR에 내장 된 OCR 성능을 향상시키는 입력 필터는 다음과 같습니다.

  • OcrInput.Rotate (double degrees) -이미지를 시계 방향으로 회전합니다. 시계 반대 방향의 경우 음수를 사용합니다.
  • OcrInput.Binarize () -이 이미지 필터는 중간 접지없이 모든 픽셀을 검정색 또는 흰색으로 바꿉니다. 텍스트 대비 배경이 매우 낮은 OCR 성능 사례를 개선 할 수 있습니다.
  • OcrInput.ToGrayScale () -이 이미지 필터는 모든 픽셀을 회색 음영으로 바꿉니다. OCR 정확도는 향상되지 않지만 속도는 향상 될 수 있습니다.
  • OcrInput.Contrast () -자동으로 대비를 증가시킵니다. 이 필터는 종종 저 대비 스캔에서 OCR 속도와 정확도를 향상시킵니다.
  • OcrInput.DeNoise () -디지털 노이즈를 제거합니다. 이 필터는 노이즈가 예상되는 곳에서만 사용해야합니다.
  • OcrInput.Invert () -모든 색상을 반전합니다. 예 : 흰색이 검은 색이됩니다 : 검은 색이 흰색이됩니다.
  • OcrInput.Dilate () -고급 형태. Dilation 은 이미지의 개체 경계에 픽셀을 추가합니다. 침식의 반대
  • OcrInput.Erode () -고급 형태. 침식 은 물체 경계의 픽셀을 제거합니다.
  • OcrInput.Deskew () -올바른 방향으로 직교하도록 이미지를 회전합니다. 기울어 진 스캔에 대한 Tesseract 허용 오차는 5도까지 낮을 수 있기 때문에 OCR에 매우 유용합니다.
  • OcrInput.DeepCleanBackgroundNoise () -무거운 배경 노이즈 제거. 이 필터는 깨끗한 문서의 OCR 정확도를 떨어 뜨릴 위험이 있고 CPU 비용이 매우 높기 때문에 극단적 인 문서 배경 잡음이 알려진 경우에만이 필터를 사용하십시오.
  • OcrInput.EnhanceResolution- 저품질 이미지의 해상도를 향상시킵니다. OcrInput.MinimumDPIOcrInput.TargetDPI 는 저해상도 입력을 자동으로 포착하고 해결 하므로이 필터는 자주 필요하지 않습니다.

CleanBackgroundNoise. 이것은 다소 시간이 많이 걸리는 설정입니다. 그러나 라이브러리가 디지털 이미지 내의 디지털 노이즈, 종이 구겨진 부분 및 기타 결함을 자동으로 제거하여 다른 OCR 라이브러리에서 읽을 수 없게 만들 수 있습니다.

EnhanceContrast 는 Iron OCR이 이미지 배경에 대한 텍스트의 대비를 자동으로 증가시켜 OCR의 정확도를 높이고 일반적으로 OCR의 성능과 속도를 높이는 설정입니다.

EnhanceResolution 은 저해상도 이미지 ( 275dpi 미만 )를 자동으로 감지하고 이미지를 자동으로 업 스케일링 한 다음 OCR 라이브러리에서 완벽하게 읽을 수 있도록 모든 텍스트를 선명하게하는 설정입니다. 이 작업은 그 자체로 시간이 많이 걸리지 만 일반적으로 이미지에 대한 OCR 작업의 전체 시간을 줄입니다.

언어 Iron OCR은 22 개의 국제 언어 팩을 지원하며 언어 설정을 사용하여 OCR 작업에 적용 할 하나 이상의 여러 언어를 선택할 수 있습니다.

전략 Iron OCR은 두 가지 전략을 지원합니다. 빠르고 덜 정확한 문서 스캔을 선택하거나, 일부 인공 지능 모델을 사용하는 고급 전략을 사용하여 문장에서 단어 간의 통계적 관계를 살펴봄으로써 OCR 텍스트의 정확성을 자동으로 향상시킬 수 있습니다. .

ColorSpace 는 그레이 스케일 또는 컬러로 OCR을 선택할 수있는 설정입니다. 일반적으로 회색조가 최상의 옵션입니다. 그러나 때로는 색조가 비슷하지만 색상이 매우 다른 텍스트 또는 배경이있는 경우 풀 컬러 색상 공간이 더 나은 결과를 제공합니다.

DetectWhiteTextOnDarkBackgrounds. 일반적으로 모든 OCR 라이브러리는 흰색 배경에 검정색 텍스트가 표시 될 것으로 예상합니다. 이 설정을 사용하면 Iron OCR이 자동으로 음화 또는 흰색 텍스트가있는 어두운 페이지를 감지하여 읽을 수 있습니다.

InputImageType. 이 설정을 통해 개발자는 전체 문서 또는 스크린 샷과 같은 스 니펫을보고 있는지 여부에 대해 OCR 라이브러리를 안내 할 수 있습니다.

RotateAndStraighten 은 Iron OCR이 회전 된 문서뿐만 아니라 텍스트 문서 사진과 같은 원근이 포함 된 문서를 읽을 수있는 고유 한 기능을 제공하는 고급 설정입니다.

ReadBarcodes 는 Iron OCR이 텍스트를 읽을 때 페이지의 바코드와 QR 코드를 자동으로 읽을 수 있도록하는 유용한 기능입니다.

ColorDepth. 이 설정은 OCR 라이브러리가 색상의 깊이를 결정하는 데 사용할 픽셀 당 비트 수를 결정합니다. 색 농도가 높을수록 OCR 품질이 향상 될 수 있지만 OCR 작업을 완료하는 데 필요한 시간도 늘어납니다.

126 언어 팩

Iron OCR 은이 웹 사이트 또는 NuGet 패키지 관리자 에서 다운로드 할 수있는 DLL로 배포되는 언어 팩을 통해 126 개의 국제 언어 를 지원합니다.

언어에는 독일어, 프랑스어, 영어, 중국어, 일본어 등이 포함됩니다. 여권 MRZ, MICR 수표, 재무 데이터, 번호판 등에 대한 전문 언어 팩이 있습니다. 자신이 만든 파일을 포함하여 모든 tesseract ".traineddata"파일을 사용할 수도 있습니다.

언어 예

다른 OCR 언어 사용.

// using IronOcr;
// PM> Install IronOcr.Languages.Arabic

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Arabic;

using (var input = new OcrInput())
{
input.AddImage("img/arabic.gif");
// 필요한 경우 이미지 필터 추가
// 이 경우 생각한 입력조차도 품질이 매우 낮습니다.
// IronTesseract는 기존의 Tesseract가 할 수없는 것을 읽을 수 있습니다.

var Result = Ocr.Read(input);

// 콘솔은 Windows에서 아랍어를 쉽게 인쇄 할 수 없습니다.
// 대신 디스크에 저장합시다.
Result.SaveAsTextFile("arabic.txt");
}
// using IronOcr;
// PM> Install IronOcr.Languages.Arabic

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Arabic;

using (var input = new OcrInput())
{
input.AddImage("img/arabic.gif");
// 필요한 경우 이미지 필터 추가
// 이 경우 생각한 입력조차도 품질이 매우 낮습니다.
// IronTesseract는 기존의 Tesseract가 할 수없는 것을 읽을 수 있습니다.

var Result = Ocr.Read(input);

// 콘솔은 Windows에서 아랍어를 쉽게 인쇄 할 수 없습니다.
// 대신 디스크에 저장합시다.
Result.SaveAsTextFile("arabic.txt");
}
' using IronOcr;
' PM> Install IronOcr.Languages.Arabic

Dim Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Arabic

Using input = New OcrInput()
input.AddImage("img/arabic.gif")
' 필요한 경우 이미지 필터 추가
' 이 경우 생각한 입력조차도 품질이 매우 낮습니다.
' IronTesseract는 기존의 Tesseract가 할 수없는 것을 읽을 수 있습니다.

Dim Result = Ocr.Read(input)

' 콘솔은 Windows에서 아랍어를 쉽게 인쇄 할 수 없습니다.
' 대신 디스크에 저장합시다.
Result.SaveAsTextFile("arabic.txt")
End Using
VB   C#

다국어 예

동시에 여러 언어를 사용하여 OCR을 수행 할 수도 있습니다. 이것은 유니 코드 문서에서 영어 메타 데이터와 URL을 얻는 데 정말로 도움이 될 수 있습니다.

// using IronOcr;
// PM> Install IronOcr.Languages.ChineseSimplified

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.ChineseSimplified;
Ocr.AddSecondaryLanguage(OcrLanguage.Korean);

// 여러 언어를 추가 할 수 있습니다.

using (var input = new OcrInput())
{
input.Add("multi - language.pdf");
var Result = Ocr.Read(input);
Result.SaveAsTextFile("results.txt");
}
// using IronOcr;
// PM> Install IronOcr.Languages.ChineseSimplified

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.ChineseSimplified;
Ocr.AddSecondaryLanguage(OcrLanguage.Korean);

// 여러 언어를 추가 할 수 있습니다.

using (var input = new OcrInput())
{
input.Add("multi - language.pdf");
var Result = Ocr.Read(input);
Result.SaveAsTextFile("results.txt");
}
' using IronOcr;
' PM> Install IronOcr.Languages.ChineseSimplified

Dim Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.ChineseSimplified
Ocr.AddSecondaryLanguage(OcrLanguage.Korean)

' 여러 언어를 추가 할 수 있습니다.

Using input = New OcrInput()
input.Add("multi - language.pdf")
Dim Result = Ocr.Read(input)
Result.SaveAsTextFile("results.txt")
End Using
VB   C#

자세한 OCR 결과 개체

Iron OCR은 각 OCR 작업에 대해 OCR 결과 개체를 반환합니다. 일반적으로 개발자는 이미지에서 텍스트를 스캔하기 위해이 개체의 text 속성 만 사용합니다. 그러나 OCR 결과 DOM은 이보다 훨씬 더 발전했습니다.

using IronOcr;
using System.Drawing; //어셈블리 참조 추가

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Korean;
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm;
Ocr.Configuration.ReadBarCodes = true; //!중대한

using (var Input = new OcrInput(@"images\sample.tiff"))
{
OcrResult Result = Ocr.Read(Input);
var Pages = Result.Pages;
var Words = Pages[0].Words;
var Barcodes = Result.Barcodes;
// 방대하고 상세한 API를 찾으려면 여기를 탐색하십시오.
// -페이지, 블록, Paraphaphs, 라인, 단어, 문자
// -이미지 내보내기, 글꼴 좌표, 통계 데이터
}
using IronOcr;
using System.Drawing; //어셈블리 참조 추가

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Korean;
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm;
Ocr.Configuration.ReadBarCodes = true; //!중대한

using (var Input = new OcrInput(@"images\sample.tiff"))
{
OcrResult Result = Ocr.Read(Input);
var Pages = Result.Pages;
var Words = Pages[0].Words;
var Barcodes = Result.Barcodes;
// 방대하고 상세한 API를 찾으려면 여기를 탐색하십시오.
// -페이지, 블록, Paraphaphs, 라인, 단어, 문자
// -이미지 내보내기, 글꼴 좌표, 통계 데이터
}
Imports IronOcr
Imports System.Drawing '어셈블리 참조 추가

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Korean
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm
Ocr.Configuration.ReadBarCodes = True '!중대한

Using Input = New OcrInput("images\sample.tiff")
Dim Result As OcrResult = Ocr.Read(Input)
Dim Pages = Result.Pages
Dim Words = Pages(0).Words
Dim Barcodes = Result.Barcodes
' 방대하고 상세한 API를 찾으려면 여기를 탐색하십시오.
' -페이지, 블록, Paraphaphs, 라인, 단어, 문자
' -이미지 내보내기, 글꼴 좌표, 통계 데이터
End Using
VB   C#

공연

IronOCR은 성능을 조정하거나 입력 이미지를 크게 수정할 필요없이 즉시 작동합니다.

Speed is Blazing : IronOcr.2020 +는 이전 빌드보다 최대 10 배 더 빠르고 오류가 250 % 이상 적습니다.

더 알아보기

C #, VB, F # 또는 기타 .NET 언어의 OCR에 대해 자세히 알아 보려면 Iron OCR을 사용하는 방법에 대한 실제 예를 제공하고 최대한 활용하는 방법에 대한 뉘앙스를 보여줄 수있는 커뮤니티 자습서 를 참조하십시오. 이 도서관.

.NET 개발자를위한 전체 개체 참조 도 제공됩니다.