Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky
Všetky kroky zapojených do OCR - segmentácia , extrakcia príznakov a klasifikácie - môžu byť realizované pomocou MATLAB . Segmentácia , ktorá zahŕňa kontrolu pripojenia tvarov a označovania a ich izoláciu , je najdôležitejšia fáza , pretože to umožňuje program OCR extrahovať vlastnosti z každého znaku . Segmentácia ručne písaného textu , je obzvlášť ťažké , pretože ručne písané znaky majú tendenciu byť navzájom spojené . Extrakcia príznakov výťažky najviac užitočných funkcií , pokiaľ ide o uznanie , od každého znaku a priradí klasifikáciu týchto funkcií , tried postáv .
Image Capture
Podľa prednáškou na seminári danej LASIN laboratórium Synergetiká na Univerzite v Ľubľane , OCR môžu byť implementované v MATLAB pomocou Neural Network Toolbox a Image Processing Toolbox na AMO . Prvá etapa sa týka čítania obrazu do priestoru MATLABu ako bitmapový súbor . Jedná sa o typ grafického súboru , v ktorom každý obrazový prvok , alebo pixel zodpovedá jednému alebo viacerým binárne číslice , alebo hrotu , v pamäti . Nasledujúci kód sa používa pre túto úlohu klipart
= imread ( " training.bmp " ) ; . Imshow ( I)
Obrázok konverzie
v ďalšej fáze je previesť farebný obraz , ktorý je uložený ako samostatný červenej , zelenej a modrej presahmi , do obrazu v stupňoch šedi , ktorý sa skladá z jednotlivých odtieňov šedej . . Nasledujúci kód MATLAB prevádza obraz RGB do obrazu v stupňoch šedi
Igram = rgb2gray ( I) ; imshow ( Igram )
Mlátenie
Následne , technika známa ako " mlátenie " sa používa pre prevod obrázku v stupňoch šedi do binárneho obrazu . Bunka MATLAB kódov požadovaných previesť obraz v stupňoch šedi do binárnej obraz vyzerá niečo ako toto :
ITV = im2bw ( Igram , graythresh ( Igram ) ) ; imshow ( ITV )
Detekcia hrán
Akonáhle je vytvorený binárny obraz , jednotlivé znaky sú orežú do subimages . Tie poskytujú vstupné údaje pre rutinné funkcie extrakcie . V subimages musí byť ostro orezaný na hranici každého znaku , v prípade , ak majú byť štandardné veľkosti , takže detekovanie hrany každého znaku je dôležitá . Hrana obrazu môže byť zistený použitím nasledujúcej MATLAB kód
iedge = hrana ( uint8 ( IBW ) ) ; . Imshow ( iedge )
Objekty
.
Všetky objekty v obraze - a vlastnosti každého objektu - možno určiť pomocou nasledujúci kód MATLAB
[ Ilabel num ] = bwlabel ( Ifill ) ; disp ( num ) ; Iprops = regionprops ( Ilabel ) ; iBox = [ Iprops.BoundingBox ] ; iBox = RESHAPE ( iBox , [ 4 50 ] ) ; imshow ( I)
Copyright © počítačové znalosti Všetky práva vyhradené