불만족한 OCR 결과 개선

This article was translated from English: Does it need improvement?
Translated
View the article in English

OCR 품질은 입력에 크게 의존합니다. 하나의 문서를 완벽하게 읽을 수 있는 설정이 또 다른 문서에서는 좋지 않은 상태로 남기 때문에 잘못된 텍스트가 생길 수 있습니다. 표준 읽기가 실망스러울 때, IronOcr.Extensions.AdvancedScan 패키지가 정확도 차이를 주로 메웁니다.

차이는 엔진에 있습니다. 표준 IronOCRTesseract 엔진으로 실행되며, IronOcr.Extensions.AdvancedScanPaddleOCR에 의해 구동되며 기계 학습 기능이 추가됩니다. 이는 스크린 샷과 같은 노이즈가 많은 입력 및 여권 및 등록 번호판과 같은 구조화된 소스에 잘 적합합니다.

패키지는 이러한 경우를 위한 목적별 읽기 메서드를 제공합니다:

해결책

1. ReadDocumentAdvanced()EnhanceResolution() 시작하기

다른 설정에 이르기 전에 ReadDocumentAdvanced() 메서드를 EnhanceResolution() 사전 처리 필터와 결합하십시오. 이 조합은 사용자가 표준 읽기에서 겪는 대부분의 정확성 문제를 해결합니다.

필터를 OcrInput에 적용한 후 동일한 입력을 ReadDocumentAdvanced()에 전달하십시오:

var ocr = new IronTesseract();
using var input = new OcrInput();
input.LoadPdf("document.pdf");
// Upscale and sharpen low-resolution input before reading
input.EnhanceResolution();
var result = ocr.ReadDocumentAdvanced(input);
Console.WriteLine(result.Text);
var ocr = new IronTesseract();
using var input = new OcrInput();
input.LoadPdf("document.pdf");
// Upscale and sharpen low-resolution input before reading
input.EnhanceResolution();
var result = ocr.ReadDocumentAdvanced(input);
Console.WriteLine(result.Text);
Imports IronOcr

Dim ocr As New IronTesseract()
Using input As New OcrInput()
    input.LoadPdf("document.pdf")
    ' Upscale and sharpen low-resolution input before reading
    input.EnhanceResolution()
    Dim result = ocr.ReadDocumentAdvanced(input)
    Console.WriteLine(result.Text)
End Using
$vbLabelText   $csharpLabel

ReadDocumentAdvanced()는 레이아웃 인식, 텍스트가 많은 문서를 파싱하기 위해 PaddleOCR 기계 학습 엔진을 실행하며 EnhanceResolution()는 읽기 전에 저해상도 입력을 확대하고 선명하게 합니다. 저해상도는 흔한 결과 문제의 근본 원인이므로 이 사전 처리 단계는 엔진 교환만큼이나 중요한 경우가 많습니다.

2. .NET Framework에서 x64 대상으로 설정

.NET Framework 프로젝트를 x64로 빌드하도록 구성하십시오. AdvancedScan은 충분한 메모리가 필요하며, 다른 아키텍처에서 실행하면 런타임 오류가 발생할 수 있습니다. 전체 설정을 보려면 .NET Framework에서의 고급 스캔 가이드를 참조하십시오.

제한 사항

AdvancedScan은 강력한 정확성을 제공하지만, 오늘날 몇 가지 제약이 있습니다:

  • 결과 기능이 적음: AdvancedScan 결과 객체는 표준 OcrResult 객체보다 노출되는 속성이 적습니다.
  • 다른 반환 유형: 각 읽기 메서드는 다른 결과 객체 타입을 반환하므로 호출한 API 참조에서 특히 확인하십시오.
  • 검색 가능한 PDF 없음: AdvancedScan 출력에서 검색 가능한 PDF 작성이 아직 지원되지 않으며, 이 기능은 개발 중입니다.
  • 언어 제한: 패키지는 현재 영어, 중국어, 일본어, 한국어 및 라틴 알파벳을 지원합니다.

참고해 주세요AdvancedScan에서 읽을 수 있는 검색 가능한 PDF 출력은 현재 사용할 수 없습니다. 그 기능에 의존한다면 표준 IronOCR 읽기 경로에 머무르십시오.

Curtis Chau
기술 문서 작성자

커티스 차우는 칼턴 대학교에서 컴퓨터 과학 학사 학위를 취득했으며, Node.js, TypeScript, JavaScript, React를 전문으로 하는 프론트엔드 개발자입니다. 직관적이고 미적으로 뛰어난 사용자 인터페이스를 만드는 데 열정을 가진 그는 최신 프레임워크를 활용하고, 잘 구성되고 시각적으로 매력적인 매뉴얼을 제작하는 것을 즐깁니다.

커티스는 개발 분야 외에도 사물 인터넷(IoT)에 깊은 관심을 가지고 있으며, 하드웨어와 소프트웨어를 통합하는 혁신적인 방법을 연구합니다. 여가 시간에는 게임을 즐기거나 디스코드 봇을 만들면서 기술에 대한 애정과 창의성을 결합합니다.

시작할 준비 되셨나요?
Nuget 다운로드 6,136,090 | 버전: 2026.7 방금 출시
Still Scrolling Icon

아직도 스크롤하고 계신가요?

빠른 증거를 원하시나요? PM > Install-Package IronOcr
샘플을 실행하세요 이미지가 검색 가능한 텍스트로 바뀌는 것을 확인해 보세요.