2009-08-26 3 views
3

응용 프로그램의 자동화 된 테스트를 위해 Tesseract OCR (pytesser 통해) 및 PIL (Python Image Library)을 사용하고 있습니다.OCR 소프트웨어의 성공 가능성을 높일 수있는 방법은 무엇입니까?

나는 스크린 샷을 만들고 tesseract 덕분에 텍스트를 가져 와서 표시된 텍스트가 괜찮은지 확인하고 있습니다.

처음에는 몇 가지 문제가 있었지만 필자가 PIL의 바이 큐빅 보간 덕분에 스크린 샷의 크기를 늘렸으므로 더 잘 작동하는 것 같습니다.

불행히도, 나는 여전히 '0'과 'O'사이의 혼동과 같은 실수를 가지고 있습니다. 나는 앞으로도 비슷한 다른 이슈가있을 것이라고 상상할 수 있습니다.

OCR을 돕기 위해 이미지를 준비하는 몇 가지 기술이 있는지 알고 싶습니다. 어떤 아이디어라도 환영합니다. 0 O 구별 미리

+0

이 질문은 여전히 ​​관련이있는 경우 :이 정팔 포체해야합니까? 저품질 입력 이미지에 적합하고 자동으로 이미지 전처리를 수행하는 OCR 엔진 (예 : ABBYY)이 있습니다. http://www.wisetrend.com/wisetrend_ocr_cloud.shtml에서 ABBYY 엔진을 사용하는 OCR 용 REST API가 있습니다. 무료 평가판을 사용하므로 몇 가지 이미지를 직접 사용해 볼 수 있습니다. –

답변

1

뻔뻔 플러그 및 면책 조항 :

정팔 포체는 OK OCR 엔진입니다 .NET에서 사용하기에 my company 패키지 정팔 포체. 그것은 많은 것을 놓칠 수 있으며 비 텍스트로 쉽게 혼란 스러울 수 있습니다. 당신이 그것을 할 수있는 최선의 일은 텍스트 만 가져 오는 것입니다. 다음으로 가장 좋은 것은 2 진화 된 (adaptive or dynamic threshold) 또는 그레이 스케일 (grayscale)을 부여하고 이진화를 시도하도록하는 것입니다.

+0

나는 그것에 동의한다. 대화 상자 가장자리로 혼란스럽고 'I'로 변환되었습니다. 텍스트 만 이미지를 얻으면 잘됩니다. 2 치화도 좋은 아이디어입니다. 감사. – luc

0

덕분 간단한 해결책은 모두 구별 폰트를 선택 (예 : 0의 중간에 또는 대시 점을 갖는다). 그것이 귀하의 신청서에서 받아 들일 수 있습니까?

다른 해결책은 텍스트의 문자 별 문자 분석 후 사전 기반 단계를 적용하여 인식 된 텍스트를 맞춤법 검사기 나 유효성 검사기의 양식에 입력하여 어려운 문자를 구별하는 것입니다.

예를 들어, 둥근 기호 다음에 다른 숫자가 오는 것은 대부분 0 일 가능성이 높지만 문자 뒤에 오는 동일한 기호는 대문자 o 일 가능성이 가장 높습니다. 이것은 간단한 예이지만보다 신뢰성있는 OCR 시스템을 만드는 데 상황이 어떻게 필요한지를 보여줍니다.

+0

불행히도, 저는 제어 할 권한이 없습니다. 글꼴. 사전에 기반을 둔 단계가 무엇을 의미하는지 조금 더 설명해 주시겠습니까? – luc

0

최상의 조건에서도 OCR 변형이 당신을 몰래 빠져 나옵니다. 가장 좋은 방법은 테스트를 디자인하는 것입니다.

1
  1. 기차 정팔 포체는
  2. 가 이익 : 여기

몇 실제 예입니다 추가 깨끗하고 문자 주변에 충분한 여유 공간이 글꼴

  • 만들기 이미지를 인식합니다.

    • 첫번째 이미지는 원본 이미지 (croped 전력 계량 숫자)
    • 번째 이미지가 약간 정팔 포체 50 % OCR 정확도 주위 GIMP에서 이미지를 세정
    • 세번째 이미지가 완전히 화상을 세정 인 - 100 % OCR 어떤 훈련도없이 인정!

    enter image description here enter image description here enter image description here

  • 관련 문제