## VietOCR

### KIRJELDUS

VietOCR on Java kasutajaliides Tesseracti tekstituvastusmootorile, mis võimaldab tuvastada teksti tavalisematelt pildivormingutest ja mitmeleheküljelistelt piltidelt. Järeltöötlus võimaldab parandada vigasid, mis tulevad tekstituvastusel sageli ette ning niimoodi saad täpsema tulemuse. Programm töötab ka käsurealt.

Nüüd on toetatud ka hulgitöötlus. Programm jälgib kausta pandud uusi faile, sooritab neis automaatselt tekstittuvastuse ning paneb tulemuseks saadud failid väljundkausta.

### SÜSTEEMINÕUDED

Java Runtime Environment 8 või uuem. Windowsil on nõutud ka Microsoft Visual C++ v14 Redistributable Package.

### PAIGALDAMINE

Windowsi on kaasas ka Tesseract. Tesseracti keelepakid, mille nimed algavad ISO639-3 koodiga, peaks olema pandud alamkausta `tessdata`.

Linuxil on Tesseract ja selle keelepakid saadaval Graphics (universe) repositooriumis. Neid võib paigaldada Synapticuga või kasutades järgmist käsku:

> `sudo apt-get install tesseract-ocr tesseract-ocr-eng tesseract-ocr-vie`

Failid pannakse kaustadesse `/usr/bin` ja `/usr/share/tesseract-ocr/tessdata`. Teisestküljest, kui Tesseract on paigaldatud lähtekoodist, siis pannakse need kaustadesse `/usr/local/bin` ja `/usr/local/share/tessdata`. VietOCR-ile võid kausta `tessdata` asukohast anda teada ka muutujaga `TESSDATA_PREFIX`:

> `eksport TESSDATA_PREFIX=/usr/local/share/`

Teiste platformide kohta vaata infot Tesseract Wiki leheküljelt.

VietOCR võimaldab ka keelepakke alla laadida kasutades menüüs olevat valikut Laadi keele andmed alla.... Sõltuvalt kausta `tessdata` asukohast, pead ehk programmi käivitama juurkasutaja või administraatorina, et allalaaditud andmed oleks võimalik panna süsteemikausta nagu `/usr` Linuxil või `C:\Program Files` Windowsil.

Skännimise tuge pakub Windowsi Image Acquisition Library v2.0.

Linuxil nõuab skännimine SANE pakke:

> `sudo apt-get install libsane sane sane-utils libsane-extras xsane`

PDF support is possible via PDFBox.

Õigekirjakontrolli eest hoolitseb Hunspell, mille sõnastiku failid (`.aff`, `.dic`) peaks olema pandud VietOCR kausta `dict`. Fail `user.dic` on UTF-8 fail, milles on nimekiri kohandatud sõnadest. Igal real on üks sõna.

Linuxil võib Hunspelli ja selle sõnastikke saab paigalda Synapticuga või `apt` käsuga:

> `sudo apt-get install hunspell hunspell-en-us`

### JUHENDID

Programmi käivitamiseks:

> `java -jar VietOCR.jar`

Märkus: Kui saad veateateis selle kohta, et mälu on täis, siis käivita `ocr` skriptifail kasutades JAR-faili.

Vietnami keeleandmed on loodud fontidega Times New Roman, Arial, Verdana, ja Courier New. Seega töötab tekstituvastus paremini piltidel, millel on sarnased fondid. Teiste fontide puhul on tavaliselt vaja Tesseracti õpetada neid fonte ära tundma ning luua teised keelepakid spetsiaalselt nende fontide jaoks. Viimases versioonis on ka keeleandmed mõningate VNI ja TCVN3 (ABC) fontide jaoks.

Tekstituvastuse jaoks peaksid pildid olema skännitud vähemalt resolutsiooniga 200 DPI (punkti tolli kohta) kuni 400 DPI ning ühevärvilisena (must-valge) või halltoonides. Kõrgema resolutsiooniga skännimine ei anna tingimata paremat tulemust. Vietnami keele jaoks on täpsus praegu kõrgem kui 97% ning järgmine Tesseracti versioon võib seda veelgi parandada. Isegi seda arvesse võttes, sõltub tulemus siiski skännitud pildi kvaliteedist. Tüüpiline eelistus skännimise jaoks on 300 DPI ja 1 bpp (bitti piksli kohta) must-valge või 8 bpp hallskaalas pakkimata TIFF või PNG vorming.

Ekraanipildi režiim võimaldab paremini tuvastada madalama resolutsiooniga pilte nagu näiteks ekraanipildid, tõstes nende punktitiheduse 300 DPI-ni.

Lisaks sisseehitatud teksti järeltöötluse algoritmile võid lisada oma kohandatud teksti asendamise skeeme kasutades UTF-8 tabulaatoritega eraldatud tekstifaile nimega `x.DangAmbigs.txt`, kus x on ISO639-3 keelekood. Toetatud on lihtteksti asendused ja Regex asendused.

Parameetritele `tessdata/configs/tess_configs` ja `tess_configvars` failidele võib lisada parameetrid init-only ja non-init control, et muuta Tesseract'i käitumist.

Saadaval on mõned sisseehitatud tööriistad et liita kokku mitu pilti või PDF-faili üheks failiks, ei neid mugavalt tekstituvastuse toiminguteks kasutada või siis jagada liiga suur PDF-fail väiksemateks, et vältida mälupuudusest tekkinud veateateid.

### JÄRELTÖÖTLUS

Tekstituvastusvead saab üldiselt jagada kolme kategooriasse. Paljud vead on seotud suur-või väike tähtedega — näiteks: hOa, nhắC — mida võib kergesti parandada Unicode tekstiredaktoritega. Mitmed teised tekstituvastuse vead on diakriitiliste märkide segamini ajamine sellega sarnase kujuga märkidega nt. — huu – hưu, mang – marg, h0a – hoa, la – 1a, uhìu - nhìn. Ka neid võib kergesti parandada õigekeelekontrolliga. Sisseehitatud järeltöötluse funktsioon võib paljude selliste vigade puhul abiks olla.

Viimase kategooria vigade parandamine on kõige raskem, kuna need on mõttega seotud vead, mis tähendab, et need sõnad on sõnastikus olemas, aga need ei sobi tähenduse poolest konteksti. Nt.— e.g., tinh – tình, vân – vấn. Selliste vigade parandamiseks peab tekstitoimetaja need üle lugema ning vead ise käsitsi vastavalt algsele pildile parandama.

Siin on juhendid, kuidas parandada esimesed kaks enamlevinud tekstituvastuse viga kasutades sisseehitatud funktsionaalsust:

1. Grupeeri read. Read grupeeritakse lõikude järgi. Iga lõik pannakse eraldi ühele reale. Kasuta menüüs Vorming olevat valikut Eemalda reavahetused. Pane tähele, et luuletuste jaoks pole see hea valik.
2. Tee menüüst Vorming valik Muuda tekstisuurust ning sealt Suurtähed lause alguses , et parandada enimlevinud suutähtede probleemid. Tuvasta ülejäänud probleemid teksti üle vaadates.
3. Paranda kirjavigu kasutades sisseehitatud Õigekirjakontrolli.

Ülaltoodud tööprotsessiga saab parandada enimlevinud vead. Ülejäänud vigu ei peaks olema väga palju, aga nende parandamine nõuab inimese poolt teksti üle vaatamist ja vajalike paranduste tegemist, et saada originaalile vastav tekstidokument

Kui sul on veel küsimusi, siis palun postita need VietOCR foorumisse.