Home
Biografija


Poslovni programi
Rečnik
PlanB

Veštačka inteligen.
Neuronske mreže
ANN
Force learn algorit.
NeuroVCL
Agenti
ENAA

OCR
OCR soft

Izrada SCADA
SmartSCADA
OPC standard

Nanotehnologija
Virtuelna učionica
EDI
Linkovi
Free Download




Velibor Ilić - Web Page
OCR V1.1 - PROGRAM ZA PREPOZNAVANJE TEKSTA

Autor: Velibor Ilić

Kratak opis: Program za prepoznavanje ćiriličnih slova. Za prepoznavanje slova program koristi neuronske mreže sa backpropagation algoritmom obučavanja. Program je rađen kao prateći materijal za magistarski rad "Obučavanje neuronskih mreža za prepoznavanje ćiriličnih slova".

Abstract: Program OCR is used for recognition Cyrillic letters. OCR is based on the backpropagation neural networks. OCR is developed as addition to masters thesis "Training neural networks for recognition Cyrillic letters".

Programski jezik: Delphi 5

Operativni sistem: Windows 95, 98, NT

Datum izrade: © Avgust, 1999

Download!!! OCR V1.1 (OCR.ZIP 356Kb)
http://www.ptt.rs/korisnici/i/l/ilicv/OCR.ZIP
 
Sadržaj

Hardverski zahtevi
Softverski zahtevi
Opis programa
Konfiguracija neuronske mreže
Primene programa za prepoznavanje teksta

English version
(Google Translate)
Povezano sa:
OCR - prep. ćiriličnih slova

ANN

NeuroVCL

Veštačka inteligecija

Neuronske mreže

Force learn algorithm

ENAA

Sledece poglavlje Prethodno poglavlje Sadrzaj
Hardverski zahtevi
Minimalna hardverska konfiguracija potrebna za korišćenje programa za prepoznavanja teksta:
Sledece poglavlje Prethodno poglavlje Sadrzaj
Softverski zahtevi
Program zahteva da na računaru bude instaliran operativni sistem Microsoft Windows 95 ili noviji.
 
Sledece poglavlje Prethodno poglavlje Sadrzaj
Opis programa
Program OCR je namenjen prepoznavanju ćiričnih slova iz slika u bitmap formatu. Ova verzija programa nije za komercijalnu upotrebu. Program je rađen kao prateći materijal magistarskog rada "Obučavanje neuronskih mreža za prepoznavanje ćiričnih slova". Program je razvijan u programskom jeziku Delphi 4 ali je naknadno kompajliranje izvršeno u programskom jeziku Delphi 5. Prepoznavanje slova vrši neuronska mreža sa backpropagation algoritmom obučavanja.

Program algoritamskim metodama određuje granice pojedinih slova, slike pojedinačnih slova se propuštaju korz neuronsku mrežu koja vrši identifikaciju slova.

NAČIN RADA PROGRAMA

Prvobitno je zamišljeno da se izdvojeno slovo posle skaliranja stanji (pre propuštanja kroz NM), da sve linije slova budu debljine od jednog piksela, ali se kasnije odustalo od primene procedure stanjivanja, jer se stanjivanjem gubi važan deo informacija koje je slovo nosilo pre stanjivanja slike.

Program dozvoljava promenu praga osetljivosti na greške prilikom prepoznavanja teksta. Inicijalna vrednost je 0.50, ali se osetljivost na greške može menjati u intervalu od 0.30 do 0.90. Ukoliko je vrednost ovog parametra veća, program će tačnije prepoznavati slova, ali će zato češće prijavljivati “problematična” slova.

Ukoliko program prilikom prepoznavanja teksta naiđe na slovo kod koga je verovatnoća slova manja od željene, prepoznavanje se zaustavlja i pojavljuje se ekran na kome korisnik može ručno uneti “problematično” slovo. Program u gornjem desnom uglu prikazuje uvećanu sliku problematičnog slova i predlaže slovo sa najvećom verovatnoćom. Verovatnoću predloženog slova možemo videti u gornjem desnom uglu ekrana. Slovo koje program predloži veće je od ostalih slova koja se nalaze na prikazanim tasterima u levoj polovini ekrana. Ukoliko je program dobro pretpostavio slovo, dovoljno je pritisnuti dugme Ok i program će slovo ubaciti u prepoznati tekst, a zatim nastaviti sa prepoznavanjem. Ukoliko je program pogrešno prepoznao slovo, korisnik može pomoću miša da odabere to “problematično” slovo. Ako korisnik želi, može “problematično” slovo da memoriše i kasnije da pokrene program za obučavanje. Nakon obučavanja, mreža će uspešno prepoznavati i takva slova. U desnom delu ekrana, ispod slike se nalazi polje u kome se prikazuje poslednji red prepoznatog teksta da bi korisnik mogao lakše identifikovati slovo u zavisnosti od prethodnih slova.

Najčešći razlog zbog čega program zaustavlja prepoznavanje je ukoliko naiđe na spojena slova. Takva “slova” program ne može da obradi pošto je predviđena obrada samo pojedinačnih slova. Takva “slova” se lako uočavaju prilikom prepoznavanja jer imaju malu verovatnoću. U tom slučaju je potrebno iz leve polovine prozora mišem odabrati oba slova koja su prikazana u gornjem desnom delu ekrana.

Prepoznati tekst možemo memorisati na disku odabiranjem opcije Snimi. Nakon odabiranja opcije Snimi, pojavljuje se dijalog polje prikazano. U polje se upisuje ime fajla pod kojim želimo da tekst snimimo na disk.
 

Sledece poglavlje Prethodno poglavlje Sadrzaj
Konfiguracija neuronske mreže
Program ANN je upotrebljen za obučavanje neuronske mreže koja se koristi u  programu za prepoznavanje ćirilčnih slova (OCR).

Troslojna neuronska mreža sa backpropagation algoritmom obučavanja.
Broj neurona na ulaznom sloju (broj ulaza): 12x12 = 144
Broj neurona na srednjem sloju: 35
Broj neurona na izlaznom sloju (broj izlaza): 30
Broj primera kojima se mreža obučava: 1590 (30 slova u više varijanti)

Obučavanje je vršeno na trening skupu od 1590 slova. Da bi se dobio toliko veliki skup ulazno-izlaznih podataka, napisan je program koji automatski izdvaja slovo po slovo sa slike i pravi fajlove u odgovarajućem formatu za obučavanje mreže. Za obučavanje ove mreže korišćeni su fontovi: Arial, Times New Roman i Courier New. Slova su pisana u oblicima normalno (Normal), ukošeno (Italic), i podebljano (Bold). Takođe su upotrebljene tri veličine fonta koje su zatim skaliranjem svedene na veličinu  12x12. Za sve tipove slova su korišćena velika i mala slova.

Pri obučavanju su upotrebljene metode obučavanja Random i Force learn.

Vreme potrebno za obučavanje mreže iznosi 02:12:53 sati bez prekida na računaru Celeron 333. Da bi se mreža obučila, bilo je potrebno 667 iteracija. Maksimalna greška je iznosila 0.098874 a  prosečna greška je iznosila 0.00573.
 

Sledece poglavlje Prethodno poglavlje Sadrzaj
Primena programa za prepoznavanje teksta
Programi za prepoznavanje teksta su značajni iz razloga što postoji veliki broj tekstova (informacija, znanja) koji su zapisani na papiru (knjige, poslovni dokumenti, fakture, priznanice, računi, itd.). Prebacivanje ovih informacija u digitalni oblik zahteva veliki ljudski rad. Prebacivanjem informacija koje su zapisane na papiru u digitalni oblik, ostvarujemo brojne prednosti kao na primer: Današnji programi za prepoznavanje teksta, iako imaju visoku tačnost prilikom prepoznavanja teksta (preko 99%), još uvek ne mogu da garantuju 100% sigurnost prilikom konvertovanja informacija. Kada se postigne veća sigurnost konvertovane informacije, programi za prepoznavanje teksta će naći brojne primene u privredi i svakodnevnom životu.

Download!!! OCR V1.1 (OCR.ZIP 356Kb)
http://www.ptt.rs/korisnici/i/l/ilicv/~ilicv/OCR.ZIP
 
Poslednja izmena 22.11.1999.
Autor: Velibor Ilić
Adresa ove stranice je:http://SOLAIR.EUnet.rs/~ilicv/ocr.html