OCR

Installer Tesseract OCR på Linux

Installer Tesseract OCR på Linux

Tesseract: En gratis OCR-løsning

Introduktion

Tessereact betragtes som en af ​​de bedste tilgængelige OCR-løsninger. Siden 2006 er det sponsoreret af Google, tidligere blev det udviklet af Hewlett Packard i C og C ++ mellem 1985 og 1998.   Systemet er i stand til at identificere selv håndskrift, det kan lære at øge dets nøjagtighed og er blandt de mest udviklede og komplette på markedet.

Det slår let kommercielle konkurrenter som ABBY, hvis du er på udkig efter en seriøs løsning til OCR, er Tesseract den mest nøjagtige, men forvent ikke til massive løsninger: den bruger en kerne pr. Proces, hvilket betyder en 8-kerne processor (hyperthreading accepteret) vil kunne behandle 8 eller 16 billeder samtidigt.

Da jeg brugte Tesseract, administrerede vi tusindvis af potentielle kunder, der uploader håndskrevet indhold, billeder med tekst osv. Vi brugte 48 kerneservere, med DatabaseByDesign og derefter med AWS, vi havde aldrig et ressourceproblem.

Vi havde en uploader, der diskriminerede mellem tekstfiler som Microsoft Office eller Open Office-filer og billeder eller scannede dokumenter. Uploader bestemte, hvad OCR- eller PHP-scripts ville behandle en ordre inden for tekstgenkendelse.

Tesseact er en god løsning, men inden du tænker over det, skal du vide, sidste Tesseracts versioner bragte store forbedringer, nogle af dem betyder hårdt arbejde. Mens træning kan vare i timer eller dage, kan den seneste Tessercts versionstræning være dage, uger eller endda måneder, hvis du leder efter en flersproget OCR-løsning.


Installation af Tesseract 4 på Debian / Ubuntu:

apt-get install tesseract-ocr

Hvis du bruger en anden Linux-distribution, skal du kopiere den sidste version af github-arkivet og kopiere .uddannet datafil til 'tessdata' (/ usr / share / tesseract-ocr / tessdata eller / usr / share / tessdata).

Som standard installerer Tesseract den engelske sprogpakke for at installere yderligere sprogkørsel

apt-get install tesseract-ocr-LANG

for eksempel at tilføje hebraisk:

apt-get install tesseract-ocr-heb

Du kan inkludere alle sprog ved at køre:

apt-get install tesseract-ocr-all

For at Tesseract skal fungere ordentligt, skal vi bruge kommandoen "konvertere" (konvertere mellem billedformater samt ændre størrelsen på et billede, sløre, beskære, afpeckle, rulle, trække på, vende, sammenføje, genprøve og meget mere) leveret af Imagemagick:

Lad os installere imagemagick med apt-get:

apt-get installer imagemagick

Lad os nu teste Tesseract, find et billede, der indeholder tekst og kør:

tesseract [image_name] [output file_name]

Hvis Tesseract er installeret korrekt, udtrækker teksten fra billedet.

Da jeg arbejdede med Tesseract, var alt, hvad vi havde brug for, orddokumenter. Som med ethvert andet program kan du og skal træne det, i Word kan vi definere nogle symboler, der kan tælles eller ej, hvis der skal tælles eller ikke tal osv. det samme med Tesseract.

Vi kan også træne dets følsomhed over for bestemte billeder.


Tesseract-optimering:

Størrelsesoptimering: Ifølge officielle kilder er den optimale pixelstørrelse for et billede, der skal behandles med succes af Tesseract, 300DPI. Vi bliver nødt til at behandle ethvert billede ved hjælp af -r-parameteren for at håndhæve denne DPI. Forøgelse af DPI vil også øge behandlingstiden.

Siderotation: Hvis siden scannet ikke blev roteret ordentligt og forbliver 180 ° eller 45 °, vil Tesseracts nøjagtighed falde, du kan bruge dette Python-script til automatisk at registrere og rette rotationsproblemer.

Fjernelse af grænser: Ifølge Tesseracts officielle mand kan grænser fejlagtigt vælges som tegn, især mørke grænser, og hvor der er gradering variation. Fjernelse af grænser kan være et godt skridt for at opnå maksimal nøjagtighed med Tesseract.

Fjernelse af støj: Ifølge Tesseracts er støj "tilfældig variation af lysstyrke eller farve i et billede". Vi kan fjerne det i binærisering trin, hvilket betyder at polarisere dets farver.


Træning Tesseract:

Mens de fleste tutorials kun dækker Tesseracts installation, vil jeg opsummere, hvordan du træner dit OCR-system, her kan vi finde en tutorial til alle versioner. I denne artikel opsummerer jeg, hvordan man træner Tesseract 4, som inkluderer en ny ”Neuralt netværksbaseret genkendelsesmotor, der leverer væsentligt højere nøjagtighed (på dokumentbilleder) end de tidligere versioner til gengæld for en betydelig stigning i den krævede beregningskraft. På komplekse sprog kan det dog faktisk være hurtigere end base Tesseract.”

Før vi fortsætter, skal vi installere yderligere biblioteker:

sudo apt-get install libicu-dev
sudo apt-get install libpango1.0-dev
sudo apt-get install libcairo2-dev

Og vi installerer træningsværktøjerne ved at køre inden for Tesseract-biblioteket:

lave
lave træning
sudo lave træningsinstallation

Ifølge Tesseracts officielle wiki har vi 3 aktuelle muligheder for at træne vores OCR-system:

Selvom ovenstående muligheder måske lyder anderledes, er træningstrinnene faktisk næsten identiske bortset fra kommandolinjen, så det er relativt let at prøve det på alle måder, givet tid eller hardware til at køre dem parallelt.”

I denne vejledning kører vi kun tesstrain.sh-script, der kalder nødvendige programmer til at træne et bestemt sprog.

Først og fremmest kan vi klone alle filerne i vores / usr / share / tesseract-ocr:

git klon https: // github.com / tesseract-ocr / tesseract

Gå til / usr / share / tesseract-ocr / tesseract / training (Tesseracts standardinstallationsmappe) og kør:

$ ./ tesstrain.sh --lang heb --langdata_dir / usr / share / tesseract-ocr / langdata --tdatadata_dir / usr / share / tesseract-ocr / tessdata 

Skift "heb" for det sprog, du vil træne, og rediger også stien til dine data.

Inden for biblioteket / usr / share / tesseract-ocr / tesseract / træning du finder filsprogsspecifik.Det er nyttigt at tilføje regler til bestemte sprog.


Fejlfinding

Tesseract er for mig den bedste OCR-løsning, men for nylig lavede den store ændringer fra de tidligere versioner, og mange brugere klager over ændringer eller ting, der ikke længere fungerer, jeg ville ikke bekymre mig, da ændringerne ser ud til at give gode resultater. Tesseracts samfund er meget aktiv, hvis du finder problemer med at køre tesseract, skal du blive en del af Tesseracts samfund her.

Kæmp om Wesnoth-vejledning
Slaget om Wesnoth er et af de mest populære open source-strategispil, som du kan spille på dette tidspunkt. Ikke kun har dette spil været under udvikl...
0 A.D. Vejledning
Ud af de mange strategispil derude, 0 A.D. formår at skille sig ud som en omfattende titel og et meget dybt, taktisk spil på trods af at det er open s...
Unity3D Tutorial
Introduktion til Unity 3D Unity 3D er en kraftfuld spiludviklingsmotor. Det er cross platform, det er det giver dig mulighed for at oprette spil til m...