tesseract 및 ocrfeeder를 사용하여 이미지의 텍스트를 올바르게 인식하는 방법을 알아 봅니다.

많은 분들이 OCR (광학 문자 인식) 프로그램을 이미 알고 있어야합니다. 그렇다면 eñe, tílde와 같은 스페인어의 전형적인 문자 (ñ, ó, ü)를 인식하지 못하는 일부 프로그램을 접했습니다.

이제 덕분에 테세 랙트 그리고 패키지에 tesseract-ocr-스파 우리는 이러한 문자를 인식 할 수 있고 색상 또는 픽셀 수준이 올바르지 않은 특정 이미지를 처리하는 방법을 볼 수 있습니다.

먼저 다음 프로그램을 설치해야합니다.

tesseract-ocr
tesseract-ocr-스파
Ocrfeeder

데비안에서는 권장 소프트웨어를 설치하지 않고 설치하는 것이 좋습니다.

sudo apt-get --no-install-recommends install ocrfeeder tesseract-ocr-spa tesseract-ocr

글자를 읽을 수있는 이미지 (스캔 된 문서)가있는 경우 약 90 %의 경우 텍스트를 인식 할 수 있으며 표가 인식되지 않으며 이미지에 2 개의 열이 있으면 자동으로 인식됩니다. 텍스트의 순서를 유지하기 위해 열을 먼저 한 다음 다른 열을 사용합니다.

텍스트를 인식하는 방법에는 터미널의 명령 줄을 통하거나 ocrfeeder를 통하는 두 가지 방법이 있습니다. 후자는 더 많은 처리 시간이 필요합니다.

명령 줄 방법 ​​:

tesseract "/entrada/fichero.jpg" "/salida/fichero.txt" -l spa -psm 3

여러 이미지를 변환하려면 다음 명령을 사용합니다.

cd /carpeta/imagenes
find ./ -name "*.jpg" | sort | while read file; do tesseract "$file" "`basename "$file" | sed 's/\.[[:alnum:]]*$//'`.txt" -l spa -psm 3; done

해당 폴더의 결과 텍스트 파일을 결합하기 위해 단락이 올바르게 결합되는 다음 명령을 사용합니다.

cd /carpeta/imagenes
find ./ -name "*.txt" | sort | while read file; do cat "$file" | sed 's|^$|##|g' | tr '\n' " " | tr '##' "\n" >> Texto-unido.txt; done

ocrfeeder를 사용한 방법 :
1- 우리는 ocrfeeder 프로그램을 엽니 다.
2- 도구-OCR 엔진을 클릭하여 엔진을 편집하고 esseract 엔진을 선택하고 편집을 클릭 한 다음 엔진 인수가 표시된 곳에서이 스크립트를 변경합니다.

$IMAGE $FILE -l spa -psm 3 > /dev/null 2> /dev/null; cat $FILE.txt; rm $FILE $FILE.txt

3- 이미지 또는 여러 이미지가있는 폴더를 가져옵니다.
4- 문서 식별을 클릭하면 문서가 식별되면 이미지 또는 텍스트가 될 부분을 수동으로 선택할 수 있습니다.
5- 문서를 내보내기 전에 편집-페이지 편집을 클릭하고 원하는 페이지를 선택합니다. 가장 일반적인 것은 문자 (레터)입니다.
6- 문서를 내보내려면 파일-내보내기를 클릭하고 원하는 출력 형식을 선택합니다. 문서에 이미지가있는 경우 odt 또는 html 형식을 사용하는 것이 좋습니다. 텍스트 만 사용하는 경우 일반 텍스트 ( txt) 형식.

품질이 적절하지 않은 사본이 많기 때문에 여기에서 끝나지 않습니다.이를 복구하려면 김프와 엠보싱 필터를 사용합니다 (이 과정은 느릴 수 있음).
1- 우리는 김프와 함께 이미지를 엽니 다.
2- 필터-왜곡-엠보싱을 클릭하고 범프 맵 상자를 선택하고 방위각 수준을 약 162,25로, 고도를 88,73으로, 깊이를 6 또는 3으로 조정합니다. 이미지가 jpg 인 경우 100 % 품질로 저장합니다. 내보내기-name.jpg.

선택적으로 색상-레벨-자동을 클릭하여 흰색 레벨을 조정할 수 있습니다.