2012-08-08 3 views
1

특정 번호판 이미지를 특정 글꼴로 조정하려고합니다. 내가 그것을 훈련하는 동안 unicharambigs 파일에 넣어해야 궁금하네요. 나는 unicharambigs 파일없이 훈련 된 데이터 세트를 가지고있었습니다. 하지만 tessdata 폴더를 코드에 포함 시켰을 때 실행 시간 중에 예외가 발생했습니다. "보호 된 메모리를 읽거나 쓰려고 시도했습니다. 이것은 다른 메모리가 손상되었다는 것을 나타내는 경우가 많습니다." 나는 tesseract를 사용하여 새로운 질문입니다. 위의 예외가 다음 문제 중 하나로 인해 발생한다고 생각하기 때문에 명확히 할 몇 가지 질문이 있습니다.Tesseract 교육 문제

1) unicharambigs 파일을 가지고 있어야합니까? 그렇다면 최종 훈련 데이터를 작성하기 전에이 파일에 어디에 넣어야합니까?

2) C# 코드와 통합 할 때 tessdata 폴더에서 어떤 파일을 고려해야합니까?

것은 내가 설정 pretrained 데이터로 테스트 한하지만 난 내 자신의 데이터 세트 갖고 싶어 내가 위에서 언급 한 런타임 예외를 사용하여 응용 프로그램 것 종료되지 폴더 tessdata 것을 사용하는 경우. 그러므로 나는 내 자신의 tessdata 폴더와 관련이 있다고 믿는다.

UPDATE 그냥 질문에 추가 할 수 있습니다. tesseract 설치로 작성된 기본 tessdata 폴더를 사용할 때 응용 프로그램은 정상적으로 작동하지만 오류가있는 결과가 발생합니다. tesseract를 다시 훈련하고 기존의 traineddata 파일을 교육 후에 생성 된 새로운 traineddata 파일로 대체하고 응용 프로그램이 다시 충돌했습니다.

나는 C# 및 tesseract 닷넷 래퍼를 사용하고 있습니다.

답변

1

실제로 여기서 문제는 훈련 된 tessedata와 tesseract DLL의 버전 불일치입니다. 훈련 된 tessedata는 3.0 버전이기 때문에 이전 버전 (2.0) 때문에 dll이 예외를 던지고있는 것처럼 보입니다. 최신 tesseract dll을 사용해보십시오 https://github.com/charlesw/tesseract/tree/master/Samples 위의 링크에서 샘플 프로젝트를 다운로드하고 훈련 된 데이터를 테스트하십시오. Nuget tesseract 패키지에 대한 참조가 있으므로 Tesseract 3.02 훈련 된 tessedata를 지원할 것입니다 ..