2017-11-24 1 views
0

라스베리 파이 모델에서 텍스트 인식을 위해 openCV에 OCRTesseract 추가 모듈을 사용하고 있습니다. 나는 단 하나의 대문자 만 검색하려고합니다. cv :: text :: OCRTesseract가 라스베리 파이의 필터를 준수하지 않습니다

Ptr<OCRTesseract> tess; 
tess = OCRTesseract::create(NULL, NULL, "ABCDEFGHIJKLMNOPQRSTUVWXYZ", 3, 10); 

은 라즈베리 파이에 실행에 실행할 때이 필터를 무시하는 것 같다 종종 소문자와 기호를 줄 것이다 다음시 초기화 코드는 내 데스크톱 및 노트북에 완벽하게 잘 작동합니다. 때로는 동시에 여러 문자를 제공합니다.
나는 시도했다 :

tess->setWhiteList("ABCDEFGHIJKLMNOPQRSTUVWXYZ"); 

를 사용할 수 없다.

제안 사항이 있으십니까? OCR은이 문제와 별개로 작동합니다. 소문자/기호를 탐지하도록 허용하면 내가 아는 것보다 오 탐지가 훨씬 많이 발생합니다.

답변

0

일부 연구를 한 후 tesseract 버전 4.00.00alpha (이는 PI에서 실행중인 버전 일뿐입니다)에서 bug으로 나타났습니다.
OEM 모드를 0으로 설정하면 문제가 완전히 해결되었습니다. 다음 초기화 코드는 의도 한대로 작동합니다.

Ptr<OCRTesseract> tess; 
tess = OCRTesseract::create(NULL, NULL, "ABCDEFGHIJKLMNOPQRSTUVWXYZ", 0, 10); 
0

의견을 작성하는 데 필요한 담당자가 없습니다. PSM이 10 (단일 문자)로 설정되면 화이트리스트를 무시하고 다중 문자를 제공한다는 사실을 고려하여 pi에 tesseract 또는 opencv를 잘못 설치 한 것 같습니다.

tesseract 및 opencv의 버전을 제공 할 수 있습니까?

가능하면 이미지를 파일로 저장 한 다음 명령 줄에서 tesseract를 사용하여 올바르게 작동하는지 확인하십시오.

+0

Tesseract 버전은 4.00.00α입니다. 커맨드 라인 테스트는 당신이 OEM을 0으로 설정하지 않으면이 버전에서 허용 된 사이트리스트가 깨져 있다는 것을 알게되었습니다. 현재 작동하고 있습니다, 건배 – Mike

+0

당신이 문제를 발견 한 것을 기쁘게 생각합니다. Tesseract 4.00.00은 아직 활발히 개발 중이므로 여기 저기에 버그가있을 수 있습니다. 가능한 경우 최신 안정 버전 인 3.05.01을 사용해보십시오. – lamandy

관련 문제