MATLAB ist ein Akronym für "matrix Labor " und bezieht sich auf eine High-Level- Programmiersprache und Programmierumgebung von technischen Software-Firma The MathWorks entwickelt. OCR ist die Abkürzung für " Optical Character Recognition " und bezieht sich auf den Prozess des Lesens von Daten in gedruckter Form und Identifizierung optischen Mustern, Buchstaben, Zahlen und anderen Zeichen entsprechen . OCR
Alle Schritte in OCR beteiligt - Segmentierung , Merkmalsextraktion und Klassifikation - können unter Verwendung von MATLAB werden. Segmentierung , die die Überprüfung der Konnektivität von Formen und Kennzeichnung und Isolierung von ihnen beinhaltet , ist die wichtigste Phase , weil es die OCR-Programm , um Funktionen von jedem einzelnen Charakter zu extrahieren . Segmentierung eines handgeschriebenen Textes ist besonders schwierig, weil handgeschriebenen Zeichen , um miteinander verbunden werden neigen. Feature- Extraktion extrahiert die nützlichsten Funktionen in Bezug auf die Anerkennung von jedem Charakter und Klassifizierung weist diese Merkmale auf Charakter-Klassen .
Bilderfassung
Laut einem Papier vorgestellt bei einem Seminar von Lasin Laboratory der Synergetik an der Universität von Ljubljana gegeben , können OCR in MATLAB implementiert werden mit der Neural Network Toolbox und Image Processing Toolbox Add-ons. Die erste Stufe beinhaltet das Lesen des Bildes in den MATLAB-Workspace als Bitmap-Datei . Dies ist eine Art von Grafik-Datei , in der jedes Bildelement oder Pixel entspricht , um einen oder mehrere binäre Ziffer oder Bit im Speicher. Der folgende Code ist für diese Aufgabe verwendet
I = imread ( ' training.bmp '); . Imshow (I)
Bildkonvertierungsfaktor
der nächste Schritt besteht darin, das Farbbild , das als getrennte rote , grüne und blaue Overlays gespeichert ist, in ein Graustufenbild , das aus diskreten Graustufen besteht konvertieren. Die folgende MATLAB-Code wandelt die RGB-Bild in ein Graustufenbild
iGray = rgb2gray (I); . Imshow ( iGray )
Dreschen
Anschließend ist eine Technik, die als " Dreschen " bekannt zur Umwandlung des Graustufenbildes in ein binäres Bild . Die Zelle von MATLAB -Codes erforderlich ist, um die Umwandlung Graustufenbild in ein binäres Bild sieht ungefähr so aus :
Ibw = im2bw ( iGray , graythresh ( iGray ) ); imshow ( Ibw )
Kantenerkennung
Sobald das binäre Bild erstellt wird, werden einzelne Zeichen in Teilbilder abgeschnitten. Diese liefern die Rohdaten für die Feature - Extraktion Routine. Die Teilbilder müssen stark an der Grenze jedes Zeichens beschnitten werden , wenn sie von Standardgröße sein sollen, so Erfassen der Kante eines jeden Zeichens ist wichtig. Der Rand eines Bildes kann unter Verwendung des folgenden MATLAB-Code werden
iEDGE = Rand ( uint8 ( Ibw ) ); . Imshow ( iEDGE )
Objekte
.
Alle Objekte in einem Bild - und die Eigenschaften der einzelnen Objekte - unter Verwendung der folgenden MATLAB-Code kann
[ iLabel num ] = bwlabel ( Ifill ); disp (num) ; iRequisiten = regionprops ( iLabel ); Ibox = [ Iprops.BoundingBox ] ; Ibox = umzugestalten ( Ibox , [ 4 50 ] ); imshow (I)