Tesseract OCR je moćan open-source alat za optičko prepoznavanje teksta (OCR – Optical Character Recognition). Može se koristiti za izdvajanje teksta iz slika i PDF dokumenata, podržava više jezika i može se kombinovati sa drugim alatima za automatsku obradu dokumenata.
1. Instalacija Tesseract-a na Linuxu
1.1 Instalacija na Ubuntu/Debian
sudo apt install tesseract-ocr sudo apt install tesseract-ocr-all # Instalira sve jezike
1.2 Instalacija na Arch Linux
sudo pacman -S tesseract tesseract-data-eng
1.3 Instalacija na Fedora
sudo dnf install tesseract
1.4 Provera instalacije
tesseract --version
2. Osnovna upotreba
Najjednostavniji način da izvučeš tekst iz slike:
tesseract image.png output
Ovo kreira output.txt
sa prepoznatim tekstom.
Ako želiš direktan prikaz u terminalu:
tesseract image.png stdout
3. Odabir jezika za OCR
Tesseract podržava mnoge jezike. Instalirani jezici se mogu prikazati pomoću:
tesseract --list-langs
Primer prepoznavanja teksta na srpskom:
tesseract image.png output -l srp
Za više jezika istovremeno:
tesseract image.png output -l eng+srp
4. Poboljšavanje rezultata OCR-a
4.1 Korišćenje različitih modela obuke
Tesseract koristi različite modele (tessdata
direktorijum). Možeš koristiti --oem
opciju:
--oem 0
– Stari model iz Tesseract 3--oem 1
– Samo novi LSTM model (podrazumevano)--oem 2
– Hibrid starog i novog modela--oem 3
– Automatski bira najbolji model
Primer:
tesseract image.png output -l eng --oem 1
4.2 Postavljanje načina segmentacije teksta (psm
mode)
Opcija --psm
određuje kako će Tesseract analizirati raspored teksta:
--psm | Opis |
---|---|
0 | Orijentacija i detekcija skripte samo |
3 | Standardno (podešeno na redove) |
6 | Obrada kao jedinstveni blok teksta |
11 | Obrada kao jedinstveni red teksta |
Primer za obradu dokumenta kao jedinstveni blok:
tesseract image.png output --psm 6
5. Rad sa PDF dokumentima
Tesseract može raditi sa PDF-ovima koristeći pdf
izlazni format:
tesseract document.png output pdf
Ako imaš više stranica u PDF-u, prvo ih konvertuj u slike pomoću pdftoppm
:
pdftoppm document.pdf page -png tesseract page-1.png output -l eng pdf
Za konverziju celog PDF-a u pretraživi PDF:
tesseract image.png output pdf
Ili pomoću pdfsandwich
:
pdfsandwich document.pdf -o output.pdf -lang eng
6. Automatizacija obrade više fajlova
Ako imaš više slika (image1.png
, image2.png
, image3.png
), možeš ih obraditi petljom:
for img in *.png; do tesseract "$img" "${img%.png}" -l eng done
Za spajanje rezultata u jedan fajl:
cat *.txt > final_output.txt
7. Napredne opcije i primeri
7.1 Ekstrakcija samo brojeva
Ako želiš samo brojeve iz dokumenta:
tesseract image.png output --psm 6 -c tessedit_char_whitelist="0123456789"
7.2 Ekstrakcija samo određenih slova
tesseract image.png output --psm 6 -c tessedit_char_whitelist="ABCDEFGHIJKLMNOPQRSTUVWXYZ"
7.3 Izbacivanje specijalnih karaktera
tesseract image.png output -c preserve_interword_spaces=1
7.4 Korišćenje prilagođenog rečnika
Ako želiš da koristiš određeni rečnik, možeš dodati .traineddata
fajl u tessdata
direktorijum.
8. Integracija sa Python-om
Tesseract se može koristiti u Python skriptama pomoću pytesseract
biblioteke.
Prvo instaliraj pytesseract
:
pip install pytesseract
Primer koda:
import pytesseract from PIL import Image # Otvaranje slike image = Image.open("image.png") # Ekstrakcija teksta text = pytesseract.image_to_string(image, lang="eng") # Prikaz teksta print(text)
Ako Tesseract nije u $PATH
, moraš ga postaviti:
pytesseract.pytesseract.tesseract_cmd = "/usr/bin/tesseract"
9. Prednosti i nedostaci Tesseract-a
✅ Prednosti:
- Besplatan i open-source
- Podrška za više jezika
- Može raditi sa PDF-ovima
- Podržava prepoznavanje različitih rasporeda teksta
❌ Nedostaci:
- Nije savršen za rukopisni tekst
- Zahteva optimizaciju slika za bolje rezultate
- Ponekad je potrebno dodatno podešavanje (
psm
,oem
)
Zaključak
Tesseract OCR je moćan alat za prepoznavanje teksta iz slika i skeniranih dokumenata. Može se koristiti samostalno u terminalu ili u kombinaciji sa Python-om i drugim alatima. Ako ti treba precizniji OCR, možeš kombinovati Tesseract sa alatima poput OpenCV za poboljšanje kvaliteta slika.