Namestitev Tesseract OCR v Linux
Tesseract OCR je privzeto na voljo v večini distribucij Linuxa. Lahko ga namestite v Ubuntu z uporabo spodnjega ukaza:
$ sudo apt namestite tesseract-ocrNa voljo so podrobna navodila za druge distribucije tukaj. Čeprav je Tesseract OCR privzeto na voljo v skladiščih številnih distribucij Linuxa, je za večjo natančnost in razčlenjevanje priporočljivo namestiti najnovejšo različico z zgoraj omenjene povezave.
Namestitev podpore za dodatne jezike v Tesseract OCR
Tesseract OCR vključuje podporo za zaznavanje besedila v več kot 100 jezikih. Podporo za zaznavanje besedila v angleškem jeziku pa dobite le s privzeto namestitvijo v Ubuntuju. Če želite dodati podporo za razčlenitev dodatnih jezikov v Ubuntuju, zaženite ukaz v naslednji obliki:
$ sudo apt namestite tesseract-ocr-hinZgornji ukaz bo Tesseract OCR dodal podporo za hindujski jezik. Včasih lahko dosežete boljšo natančnost in rezultate z namestitvijo podpore za jezikovne skripte. Na primer namestitev in uporaba paketa tesseract za skript Devanagari “tesseract-ocr-script-deva” mi je dala veliko natančnejše rezultate kot uporaba paketa “tesseract-ocr-hin”.
V Ubuntuju lahko poiščete pravilna imena paketov za vse jezike in skripte, tako da zaženete spodnji ukaz:
$ apt-cache iskanje tesseract-Ko prepoznate pravilno ime paketa za namestitev, v prvem zgoraj navedenem ukazu zamenjajte niz »tesseract-ocr-hin«.
Uporaba Tesseract OCR za pridobivanje besedila iz slik
Vzemimo primer slike, prikazane spodaj (povzeto s strani Wikipedije za Linux):
Če želite iz zgornje slike izvleči besedilo, morate zagnati ukaz v naslednji obliki:
$ tesseract zajemanje.png izhod -l engZ zagonom zgornjega ukaza se dobi naslednji izhod:
V zgornjem ukazu »zajem.png "se nanaša na sliko, iz katere želite izvleči besedilo. Zajeti izhod se nato shrani v “izhod.txt ”. Jezik lahko spremenite tako, da argument »eng« zamenjate s svojo izbiro. Če si želite ogledati vse veljavne jezike, zaženite spodnji ukaz:
$ tesseract --list-langsPrikazane bodo okrajšave za vse jezike, ki jih v vašem sistemu podpira Tesseract OCR. Privzeto bo kot rezultat prikazal samo »eng«. Če pa namestite pakete za dodatne jezike, kot je razloženo zgoraj, bo ta ukaz navedel več jezikov, ki jih lahko uporabite za zaznavanje besedila (kot 3-črkovne kode jezika ISO 639).
Če slika vsebuje besedilo v več jezikih, najprej določite primarni jezik, ki mu sledijo dodatni jeziki, ločeni z znaki plus.
$ tesseract zajemanje.png izhod -l eng + fraČe želite izhod shraniti kot datoteko PDF, ki jo je mogoče iskati, zaženite ukaz v naslednji obliki:
$ tesseract zajemanje.png izhod -l eng pdfUpoštevajte, da datoteka PDF, ki jo je mogoče iskati, ne bo vsebovala besedila, ki ga je mogoče urejati. Vključuje izvirno sliko, z dodatno plastjo, ki vsebuje prepoznano besedilo, nadgrajeno na sliko. Čeprav boste lahko natančno iskali besedilo v datoteki PDF z uporabo katerega koli bralnika PDF, besedila ne boste mogli urediti.
Upoštevajte še to, da se natančnost zaznavanja besedila močno poveča, če je slikovna datoteka kakovostna. Če imate možnost izbire, vedno uporabite oblike datotek brez izgub ali datoteke PNG. Uporaba datotek JPG morda ne bo dala najboljših rezultatov.
Izvlečenje besedila iz večstranske datoteke PDF
Tesseract OCR prvotno ne podpira pridobivanja besedila iz datotek PDF. Vendar je mogoče iz večstranske datoteke PDF izvleči besedilo s pretvorbo vsake strani v slikovno datoteko. Za pretvorbo datoteke PDF v nabor slik zaženite spodnji ukaz:
$ pdftoppm -png datoteka.pdf izhodZa vsako stran datoteke PDF boste dobili ustrezen »output-1.png "," output-2.png ”in tako naprej.
Zdaj, če želite izvleči besedilo iz teh slik z enim samim ukazom, boste morali uporabiti zanko "for" v ukazu bash:
$ za i v *.png; naredite tesseract "$ i" "output- $ i" -l eng; Končano;Zagon zgornjega ukaza bo izvlekel besedilo iz vseh.datoteke png ", najdene v delovnem imeniku, in prepoznano besedilo shranijo v" output-original_filename.txt ”. Srednji del ukaza lahko spremenite glede na vaše potrebe.
Če želite združiti vse besedilne datoteke, ki vsebujejo prepoznano besedilo, zaženite spodnji ukaz:
$ mačka *.txt> pridružil.txtPostopek za pridobivanje besedila iz večstranske datoteke PDF v datoteke PDF, ki jih je mogoče iskati, je skoraj enak. Ukazu morate navesti dodaten argument »pdf«:
$ za i v *.png; naredite tesseract "$ i" "output- $ i" -l eng pdf; Končano;Če želite združiti vse datoteke PDF, ki jih je mogoče iskati in vsebujejo prepoznano besedilo, zaženite spodnji ukaz:
$ pdfunite *.pdf pridružil.pdfTako pdftoppm kot pdfunite sta privzeto nameščena v najnovejši stabilni različici Ubuntuja.
Prednosti in slabosti pridobivanja besedila v datotekah TXT in PDF, ki jih je mogoče iskati
Če v datoteke TXT izvlečete prepoznano besedilo, boste dobili besedilo, ki ga je mogoče urejati. Vse oblikovanje dokumentov pa bo izgubljeno (krepko, ležeče in podobno). Datoteke PDF, ki jih je mogoče iskati, bodo ohranile prvotno oblikovanje, vendar boste izgubili zmožnosti urejanja besedila (še vedno lahko kopirate surovo besedilo). Če datoteko PDF, ki jo je mogoče iskati, odprete v katerem koli urejevalniku PDF, boste v datoteko dobili vdelane slike in ne izhodnega besedila. Če pretvorite datoteke PDF, ki jih je mogoče iskati, v HTML ali EPUB, boste dobili tudi vdelane slike.
Zaključek
Tesseract OCR je eden najpogosteje uporabljanih OCR motorjev danes. Je brezplačen, odprtokoden in podpira več kot sto jezikov. Ko uporabljate Tesseract OCR, v argumentih ukazne vrstice uporabite slike visoke ločljivosti in popravite jezikovne kode, da izboljšate natančnost zaznavanja besedila.