Search on blog:

Linux: Jak użyć tesseract z językiem innym niż Angielski (np. Polski)

Ta komenda pokazuje jakie języki są zainstalowane z tesseract

tesseract --list-langs

Wynik

List of available languages (3):
eng
osd
pol

Na Linux Mint/Ubuntu/Debian można użyć apt do doinstalowania nowych języków - np. Polski wymaga pol na końcu komendy

sudo apt-get install tesseract-ocr-pol

Dla innych języków można użyć apt dla znalezienia pliku lub użyć nazwy z poniższego linku do dodakowych zbiorów danych.

Aby zainstalować wszystkie języki można użyć tesseract-ocr-all

Będą one zainstalowane w /usr/share/tesseract-ocr/4.00/tessdata/ (przynajmniej w Linux Mint 20)

Ale można też ściągnąc pliki traineddata ręcznie ze srtony

Traineddata Files for Version 4.00 + lub z repozytorium tesseract

I można je trzymać w dowolnym folderze i używać --tessdata-dir aby pracować z językami z tego folderu

Można sprawdzić czy tesseract rozpoznaje ściągnięte pliki używająć

tesseract --list-langs --tessdata-dir /folder/with/traineddata/

Można użyć absolutnej ub względnej ścieżki. Dla plików w obrcnym folderze można użyć .

tesseract --list-langs --tessdata-dir .

To powinno wyświetlić tylko języki w tym folderze (pominie języki z poprzedniej komendy)

Ale można też używać tego folderu do rozpoznawania tekstu w pliku

tesseract image.png output_file --tessdata-dir /folder/with/traineddata/ -l pol

Opcje muszą być po obrazku i pliku wynikowy.


Normalnie tesseract generuje plik z tekstem ale używając stdout może wyświetlic w konsoli (i można to przekierować do innego programu korzystając z potokowania |)

tesseract image.png stdout --tessdata-dir /folder/with/traineddata/ -l pol

Można także użyć pliku z ekstra opcjami aby zapisać w pdf, tsv, itp.

Wszystkie opcje można zobaczyć z

tesseract --print-parameters

Aby zobaczyć opcje dotyczące tworzenia extra plików można użyć fitra

tesseract --print-parameters | grep create

Wynik

devanagari_split_debugimage 0       Whether to create a debug image for split shiro-rekha process.
tessedit_create_txt         0       Write .txt output file
tessedit_create_hocr            0   Write .html hOCR output file
tessedit_create_alto            0   Write .xml ALTO file
tessedit_create_lstmbox         0   Write .box file for LSTM training
tessedit_create_tsv         0       Write .tsv output file
tessedit_create_wordstrbox  0       Write WordStr format .box output file
tessedit_create_pdf         0       Write .pdf output file
tessedit_create_boxfile         0   Output text with boxes

I wtedy można stworzyć plik np. my_options z

tessedit_create_pdf 1

i użyć go jako ostatni argument

tesseract image.png output_file --tessdata-dir /folder/with/traineddata/ -l pol my_options

If you like it
Buy a Coffee