DE3853885T2 - Vektorisationsverfahren. - Google Patents
Vektorisationsverfahren.Info
- Publication number
- DE3853885T2 DE3853885T2 DE3853885T DE3853885T DE3853885T2 DE 3853885 T2 DE3853885 T2 DE 3853885T2 DE 3853885 T DE3853885 T DE 3853885T DE 3853885 T DE3853885 T DE 3853885T DE 3853885 T2 DE3853885 T2 DE 3853885T2
- Authority
- DE
- Germany
- Prior art keywords
- chain code
- train
- codes
- extracting
- pixel
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
- 238000000034 method Methods 0.000 title claims description 35
- 238000010586 diagram Methods 0.000 description 23
- 238000012986 modification Methods 0.000 description 13
- 230000004048 modification Effects 0.000 description 13
- 238000004364 calculation method Methods 0.000 description 5
- 238000009877 rendering Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000010191 image analysis Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/20—Contour coding, e.g. using detection of edges
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/46—Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
- G06V10/469—Contour-based spatial representations, e.g. vector-coding
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Processing (AREA)
- Image Analysis (AREA)
Description
- Die vorliegende Erfindung betrifft ein Vektorisierungsverfahren gemäß dem Oberbegriff des Patentanspruchs 1.
- Es gibt zwei Datentypen, die sich zum Speichern einer Konfiguration eignen: Rastertyp-Daten und Vektortyp-Daten. Die Vektortyp-Daten insbesondere die peripheren Vektordaten sind vorteilhaft, da sie einen geringeren Umfang einnehmen als die Rasterdaten und da mit ihnen in einfacher Weise eine Konfiguration rotiert oder in ihrer Größe geändert werden kann.
- Vektordaten werden durch einen Zug von Randpixeln einer Konfiguration definiert. Somit hängt die Qualität der wiedergegebenen Konfiguration von der Auswahl der Randpixel ab.
- Im Falle einer Zeichen-Vektorisierung, wie beispielsweise der Vektorisierung von chinesischen Buchstaben, ist die Wiedergabequalität sehr bedeutend, da der Wert der entsprechenden Produkte überwiegend von der Wiedergabequalität abhängt.
- Ein herkömmliches Vektorisierungsverfahren sieht Winkelberechnungen zwischen Paaren von Randpixeln einer Konfiguration vor. Da die Winkelberechnung eine Berechnung mit Gleitkomma darstellt, vergeht viel Zeit, bis die Randpixel ausgewählt sind.
- Weiterhin ist es schwierig, Eckpunkte bei rechtwinkeligen konkaven Stellen zu finden und zu definieren.
- In ELECTRONICS LETTERS, vol. 23, no. 24, 19. November 1987, Seiten 1326-1327, Stevenage, Herts, GB; D.T. NGUYEN et al: "Efficient technique for scale-space imaging of planar objects" wird vorgeschlagen, die Kontur eines planaren Objekts durch einen Zug aus Freeman's Chain Codes zu beschreiben. Die Druckschrift beschreibt, wie die Lage von Beugungspunkten in der Kontur direkt aus den Chain Codes erkannt werden kann.
- Aus EP-A-0 090 395 ist ein Verfahren und eine Vorrichtung zum automatischen Verarbeiten von visuellen Bildern bekannt, um eine intelligente Maschinenanalyse von dem Bildinhalt vorzunehmen. Eine spezielle verteilte logische Systemarchitektur vereinfacht die schnelle Echtzeit-Bildanalyse und die Erzeugung von Steuersignalen für eine Hochgeschwindigkeitsproduktionsstraßenumgebung. Es ist eine Entscheidungslogik vorgesehen, um in einem einzelnen Mikrobefehlszyklus zu bestimmen, ob ein erkannter Randpunkt des Bildes mit einer anderen bereits verbundenen Kette derartiger Eckpunkte verbunden werden soll, um einen Teil einer geschlossenen Eckenkontur des zu überprüfenden Bildes zu definieren.
- Wie in Figur 1 gezeigt ist, besteht ein Freeman's chain code aus einer Zahl zwischen 0 und 7. Null bedeutet rechts, 1 nach oben rechts, 2 oben, 3 oben links, 4 links, 5 unten links, 6 unten, und 7 unten rechts. Jeder Chain Code zeigt die Richtung von einem Randpixel zum nächsten Randpixel an, wenn Randpixel in einer Umdrehungsrichtung nacheinander abgetastet werden.
- Durch Auswählen von Vektorpunkten entsprechend einem Zug von Chain Codes oder einem anderen Code ist es möglich, hochqualitative Vektordaten in wesentlich kürzerer Zeit als herkömmlich zu erzeugen.
- Es ist die Aufgabe der vorliegenden Erfindung, ein Vektorisierungsverfahren anzugeben, welches sich zum Erzeugen von Vektordaten in sehr kurzer Zeit eignet, wobei von diesen Daten eine Hochqualitätskonfiguration wiedergewonnen werden kann. Diese Aufgabe wird durch den Gegenstand des Patentanspruchs 1 gelöst.
- Im folgenden werden bevorzugte Ausführungsformen der vorliegenden Erfindung unter Bezugnahme auf die beiliegenden Zeichnungen näher erläutert. Dabei zeigen die Zeichnungen im einzelnen:
- Figur 1 einen Freeman's Chain Code;
- Figur 2 ein Chain Code-Diagramm einer Konfiguration, wobei Chain Codes den Randpixeln in Gegenuhrzeigersinn zugeordnet sind;
- Figur 3 ein Chain Code-Diagramm, bei dem einem Pixel zwei unterschiedliche Chain Codes zugewiesen werden;
- Figur 4 einen konvexen Teil einer Konfiguration;
- Figur 5 ein Chain Code-Diagramm für eine rechtwinkelige konkave Stelle;
- Figur 6 ein Chain Code-Diagramm für eine rechtwinkelige konvexe Stelle;
- Figuren 7a und b ein Chain Code-Digramm von zwei Schritten bei einer ersten Ausführungsform hinsichtlich einer rechtwinkeligen konkaven Stelle;
- Figuren 8a und b ein Chain Code-Diagramm, das durch die erste Ausführungsform im Hinblick auf eine andere rechtwinkelige konkave Stelle erzeugt wurde;
- Figuren 9a und b ein Chain Code-Diagramm, welches durch eine erste Ausführungsform bezüglich einer anderen rechtwinkeligen konkaven Stelle erzeugt wurde;
- Figuren 10a und b ein Chain Code Diagramm, welches durch die erste Ausführungsform bezüglich einer weiteren rechtwinkeligen konkaven Stelle erzeugt wurde;
- Figur 11 eine geneigte rechtwinkelige konkave Stelle;
- Figuren 12a und b ein Chain Code-Diagramm, welches durch die erste Ausführungsform bezüglich innerer Randpixel erzeugt wurde;
- Figuren 13a und b ein Chain Code-Digaramm von zwei Schrittten der zweiten Ausführungsform der vorliegenden Erfindung bezüglich einer rechtwinkeligen konkaven Stelle;
- Figuren 14a und b ein Chain Code-Diagramm, welches durch eine zweite Ausführungsform im bezug auf eine andere rechtwinkelige konkave Stelle erzeugt wurde;
- Figuren 15a und b zeigen ein Chain Code-Diagramm, welches durch die zweite Ausführungsform bezüglich einer anderen rechtwinkeligen konkaven Stelle erzeugt wurde;
- Figuren 16a und b ein Chain Code-Diagramm, welches durch die zweite Ausführungsform bezüglich einer anderen rechtwinkeligen konkaven Stelle erzeugt wurde,
- Figuren 17a und b ein Chain Code-Diagramm, welches durch die zweite Ausführungsform bezüglich innerer Randpixel erzeugt wurde,
- Figur 18 zeigt einen gestuften Rand mit kleinen Schritten;
- Figur 19 zeigt einen Startpunkt eines Chain Codes auf dem äußeren Rand;
- Figur 20 zeigt einen Startpunkt des Chain Codes auf dem inneren Rand;
- Figur 21 zeigt einen Rand mit einem Chain Code-Zug, bei dem die Chain Codes abwechselnd gewechselt werden;
- Figur 22 zeigt einen Randpixel, der von einem Pixel gefolgt wird, bei dem der Chain Code um 1 kleiner ist als der vorausgehende;
- Figur 23 zeigt einen linearen Rand;
- Figur 24 zeigt einen Rand, der aus zwei fortlaufenden linearen Rändern besteht;
- Figur 25 zeigt eine konkave Stelle von einem Pixel;
- Figur 26 zeigt einen kurzen linearen Rand, der einem relativ langen linearen Rand folgt;
- Figur 27 zeigt einen relativ langen linearen Rand, der einem relativ langen linearen Rand folgt; und
- Figuren 28 bis 35 zeigen gestufte Ränder.
- In Figur 2 ist eine Konfiguration F gezeigt. Um dieser Konfiguration einen Chain Code zuzuweisen, wird zunächst ein Startpunkt ermittelt. Wenn das Bild entlang der gewöhnlichen Abtastrichtung abgetastet wird, wird zunächst ein oberer linker Pixel gefunden.
- Der Chain Code wird gegenuhrzeigersinnmäßig vom Startpunkt entlang des Randes erzeugt. Jeder Chain Code zeigt die Richtung zum folgenden Pixel von dem momentanen Pixel an. Der momentane Pixel ist der Pixel, der momentan erzeugt wird.
- Figur 2 ist ein Chain Code-Diagramm, welches einen Chain Code für jeden Randpixel anzeigt, wenn der Rand in Gegenuhrzeigersinn abgetastet wird. In Figur 2 ist der letzte Pixel b neben dem Startpixel a und zeigt mit seinem Chain Code zum Startpunkt.
- Auf der anderen Seite ist es manchmal nicht notwendig, dem letzten Pixel einen Chain Code zu geben.
- In Figur 3 ist eine Linie 1 gezeigt, welche eine Weite von 1 Pixel aufweist. Um den Pixeln a, b und c auf der Linie 1 einen Chain Code zuzuweisen, wird die Linie zum freien Ende hin abgetastet, und dann zurück von dem freien Ende. Deshalb werden einem Pixel zwei unterschiedliche Chain Codes zugeordnet.
- Der Chain-Code Zug in Figur 2 ist 66000766002222244444, wobei eine vertikale nach unten gerichtete Linie durch 66, eine horizontale, nach rechts verlaufende Linie durch 00, eine vertikale, nach oben verlaufende Linie durch 22 und eine horizontale nach links laufende Linie durch 44 definiert wird.
- Wenn die Konfiguration der Figur 2 vektorisiert wird, sollten der Startpixel a, der Pixel c&sub1; an der rechtwinkeligen konvexen Ecke neben dem Pixel a, der Pixel c&sub2; an der rechtwinkeligen konkaven Ecke rechts vom Pixel c&sub1;, der Pixel c&sub3; an der rechtwinkeligen konvexen Ecke neben dem Pixel c&sub2;, der Pixel c&sub4; an der rechtwinkeligen konvexen Ecke rechts von dem Pixel c&sub3; und der Pixel c&sub5; an der rechtwinkeligen konvexen Ecke über dem Pixel c&sub4; als Vektorpunkte von den Randpixeln extrahiert werden. Der Pixel an der rechtwinkeligen konvexen Ecke weist zumindest zwei Pixel auf, die einen Chain Code aufweisen, der um zwei kleiner ist als der Chain Code des früheren Pixels. Bei dieser Berechnung wird 0 als Addition zwischen 6 und 2 angenommen. Es dürfte klar sein, daß der Chain Code die Charakteristik des Rands der Konfiguration wiedergibt. Eine rechtwinkelige konvexe Ecke besteht aus zwei geneigten Linien, wie dies in Figur 4 erkannt werden kann. Ein Eckpunkt b ist dadurch definiert, daß er zumindest zwei Pixeln mit dem gleichen Code folgt, die einen um zwei kleineren Chain Code aufweisen.
- Der Eckpunkt c&sub2; an der rechtwinkeligen konkaven Ecke sollte als Vektorpunkt extrahiert werden, wobei die Ecke keinen Chain Code aufweist, da hier kein Randpixel vorliegt. Dies stellt eine Schwierigkeit bei der Vektorisierung dar. Die Lösung dieser Schwierigkeit wird durch die vorliegende Erfindung bereitgestellt und wird im folgenden beschrieben.
- Der Chain Code wird üblicherweise durch Nachfolgen des Randes in Gegenuhrzeigersinnrichtung im Bezug auf den äußeren Rand erzeugt. Es ist jedoch auch möglich, dem Rand in Uhrzeigersinnrichtung zu folgen. Im Bezug auf den inneren Rand, sollte die Nachführrichtung die entgegengesetzte, zur Nachführrichtung beim äußeren Rand sein, um den Rand entweder als äußeren oder Innenrand zu definieren.
- Im folgenden wird eine Beschreibung im Gegenuhrzeigersinn für den äußeren Rand und in Uhrzeigersinnrichtung für den inneren Rand gegeben.
- Wenn ein Pixel einen Chain Code k aufweist, so ist der Chain Code k' für den folgenden Pixel wie folgt zu ermitteln:
- a) k ist eine gerade Zahl k'≠ (k-2) und (k-3)
- b) k ist eine ungerade Zahl k'≠ (k-3)
- wobei k' unter Modulo 7 berechnet wird, so daß gilt 0-2=6.
- In Figur 1 wird k' nie zu 1 und nie zu 2, wenn k=4 ist. K' wird nie 2, wenn k=5 ist. Daher begrenzt der Chain Code eines Pixels den Chain Code des nachfolgenden Pixels.
- Wie oben erwähnt, ist der Pixel des Chain Codes ein Pixel auf der rechtwinkeligen konvexen Ecke, wenn k'= (k+2) ist. Selbstverständlich ist es wählbar, ob alle Punkte auf der rechtwinkeligen konvexen Ecke als Vektorpunkte extrahiert werden oder nicht. Beispielsweise wird nur ein Eckpunkt extrahiert, wenn die Ecke aus zwei Linien besteht, von denen beide länger als eine vorgegebene Länge sind, beispielsweise länger als drei Pixel. In diesem Fall ist die Ecke abc und def (Figur 5) nicht als rechtwinklige Ecke definiert, so daß die Pixel a, c, d und f nicht als Vektorpunkte extrahiert werden, sondern nur die Pixel b und e extrahiert werden. Die Konfiguration wird dann zu einer Konfiguration mit relativ stumpfen oder weichen Rändern, wie dies durch die Linie 1 der Figur 5 gezeigt ist.
- Wenn alle Pixel extrahiert werden sollen, werden die Pixel a bis f Vektorpunkte (Figur 5).
- Durch die obige Verarbeitung wurde der Eckpunkt an der rechtwinkeligen konkaven Ecke noch nicht verarbeitet.
- Im folgenden wird ein Verfahren zum Verarbeiten der rechtwinkeligen konkaven Ecke beschrieben.
- Die rechtwinkelige konkave Ecke besteht jeweils aus einer vertikalen Linie und einer horizontalen Linie wie dies in den Figuren 7a, 8a, 9a und 10a gezeigt ist.
- Die Figur 7a zeigt eine Ecke, die nach unten links geöffnet ist. Der Chain Code-Zug weist 007 auf der horizontalen Linie zum Eckpunkt a hin und ändert dann nach 66.. auf der vertikalen Linie. In dem Chain Code-Zug definieren die letzten zwei Chain Codes der horizontalen Linie zusammen mit dem ersten Chain Code der vertikalen Linie die rechtwinkelige Ecke. In Figur 7a sind die Chain Codes, die die rechtwinkelige Ecke definieren 076. Dies bedeutet, daß es eine nach links unten geöffnete rechtwinkelige Ecke gibt, wenn der Chain Code 076 in dem Chain Code-Zug enthalten ist. Figur 7b zeigt ein Chain Code-Diagramm, bei dem der Chain Code-Zug der Figur 7a gemäß der vorliegenden Erfindung geändert ist. In Figur 7b wird der letzte Chain Code der horizontalen Linie von 7 nach 0 geändert und ein neuer Chain Code 6 hinter den geänderten Chain Code angehängt. Daher wird der Chain Code-Zug 076 zum Chain Code-Zug 0066. Mit dieser Modifikation zeigt der letzte Chain Code c der horizontalen Linie den Eckpunkt a an und der Chain Code am Eckpunkt zeigt den ersten Pixel b der vertikalen Linie an.
- Figur 8a zeigt eine nach rechts unten geöffnete rechtwinkelige Ecke. Der Chain Code-Zug auf der vertikalen Linie weist "...221" zum Eckpunkt a hin auf. Nach dem Eckpunkt a wird der Chain Code mit 00... fortgesetzt. In diesem Fall wird die rechtwinkelige Ecke durch die letzten zwei Chain Codes b und c der vertikalen Linie sowie den ersten Chain Code d auf der horizontalen Linie festgelegt. Der Chain Code-Zug ist somit 210. Dies bedeutet, daß es eine nach unten rechts geöffnete rechtwinkelige Ecke gibt, wenn der Chain Code-Zug den Chain Code 210 enthält.
- Figur 8a zeigt ein Chain Code-Diagramm, bei dem Chain Code-Zug der Figur 8a gemäß der vorliegenden Erfindung geändert wurde. In Figur 8b wurde der letzte Chain Code keine auf der horizontalen Linie von 1 nach 2 geändert und ein neuer Chain Code 0 nach dem geänderten Chain Code eingefügt. Daher wird der Chain Code 210 zum Chain Code 2200 modifziert. Durch diese Modifikation zeigt der letzte Chain Code c der horizontalen Linie den Eckpunkt a an und der Chain Code auf dem Eckpunkt a zeigt den ersten Pixel d auf der horizontalen Linie an.
- Figur 9a zeigt eine nach oben links geöffnete rechtwinkelige Ecke. Der Chain Code-Zug der vertikalen Linie weist 665 zum Eckpunkt a hin auf. Nach dem Eckpunkt a setzt sich der Chain Code-Zug mit 44... auf der horizontalen Linie fort. Diese rechtwinklige Ecke wird durch die letzten beiden Chain Codes b und c der horizontalen Linie sowie den ersten Chain Code d auf der vertikalen Linie bestimmt. Der Chain Code-Zug ist 654. Dies bedeutet, es existiert eine nach links unten geöffnete rechtwinkelige Ecke, wenn ein Chain Code-Zug den Chain Code 654 enthält.
- Figur 9b zeigt ein Chain Code-Diagramm, bei dem der Chain Code- Zug der Figur 9a gemäß der vorliegenden Erfindung geändert wurde. In Figur 9b ist der letzte Chain Code c auf der vertikalen Linie von 5 nach 6 geändert worden und ein neuer Chain Code 4 wurde nach dem geänderten Chain Code eingefügt. Daher wurde der Chain Code-Zug 654 zum Chain Code-Zug 6644 geändert. Durch diese Modifikation zeigt der letzte Chain Code c auf der horizontalen Linie den Eckpunkt a an und der Chain Code auf dem Eckpunkt a zeigt den ersten Pixel d auf der vertikalen Linie an.
- Figur 10a zeigt eine nach rechts oben geöffnete rechtwinkelige Ecke. Der Chain Code-Zug auf der vertikalen Linie beinhaltet ..443 zum Eckpunkt a hin. Nach dem Eckpunkt a setzt sich der Chain Code-Zug mit 22... auf der horizontalen Linie fort. Diese rechtwinkelige Ecke wird durch die letzten zwei Chain Codes b und c auf der horizontalen Linie sowie durch den ersten Chain Code d auf der vertikalen Linie definiert. Dieser Chain Code- Zug ist 432. Dies bedeutet, es existiert eine nach oben rechts geöffnete rechtwinkelige Ecke, wenn in dem Chain Code-Zug ein Chain Code von 432 enthalten ist.
- Durch Modifikationen ähnlich den Modifikationen in den Figuren 7b, 8b und 9b wird dem Eckpunkt ein neuer Chain Code gegeben und der Chain Code gerade vor dem Eckpunkt wird geändert, um auf den Eckpunkt zu zeigen.
- Der letzte Chain Code c auf der horizontalen Linie wird von 3 nach 4 geändert und ein neuer Chain Code 2 wird dem Eckpunkt zugwiesen. Der Chain Code-Zug 432 wird zum Chain Code-Zug 4422 modifiziert. Durch diese Modifikation zeigt der letzte Chain Code c auf der horizontalen Linie zum Eckpunkt a und der Chain Code auf dem Eckpunkt zeigt zum ersten Pixel c auf der vertikalen Linie.
- Obige Verarbeitung gilt für den äußeren Rand. Die Verarbeitung für den Innenrand wird im folgenden beschrieben.
- Figur 12a zeigt ein Chain Code-Diagramm eines inneren Randes. Der Chain Code-Zug ist dabei 0007666544432221. Wenn der letzte Chain Code des Zuges den ersten Chain Code erreicht, sind die rechtwinkeligen Ecken durch die Chain Codes 076, 654, 432 oder 210 definiert, ähnlich wie dies bei den äußeren rechtwinkeligen Ecken der Fall war.
- Die Chain Code-Züge werden in ähnlicher Weise wie bei dem äußeren Rand verarbeitet oder modifiziert, d.h. 076 wird zu 0066 verändert, 654 wird zu 6644 verändert, 432 wird zu 4422 verändert und 210 wird zu 2200 verändert, wie dies in Figur 8 ezeigt ist. Mit anderen Worten werden den Eckpunkten a1, a2, a3 und a4 neue Chain Codes zugeordnet und die Chain Codes, denen die Eckpunkte nachfolgen, werden von 7 nach 0, von 5 nach 6, von 3 nach 4 und von 1 nach 2 verändert.
- Durch obige Verarbeitung wird sowohl der äußere als auch innnere Rand hinsichtlich der rechtwinkeligen Ecken verbessert.
- Mit obiger Verarbeitung werden rechtwinkelige Ecken durch jeweils drei aufeinanderfolgende Chain Codes detektiert. In manchen Fällen, wie beispielsweise bei gestuften Rändern, die aus feinen Stufen bestehen, wie dies in Figur 18 gezeigt ist, kann es notwendig sein, den Rand als gerade Linie wiederzugeben. Daher ist es möglich, eine Bestimmung von rechtwinkeligen Ecken nur dann vorzunehmen, wenn es eine kontinuierliche gerade Linie gibt, die an ihren beiden Enden eine Mindestlänge von drei Chain Codes aufweist. Beispielsweise wird der Chain Code-Zug zu 00766 als rechtwinkelige Ecke angesehen und wird somit nach 000666 (Figur 7), verändert.
- Im folgenden wird die zweite Ausführungsform für Chaincode-Züge in Uhrzeigersinn beschrieben.
- Figur 14a zeigt ein Chain Code-Diagramm, bei dem ein Chain Code-Zug im Uhrzeigersinn einer Konfiguration zugewiesen wird, die ählich der der Figur 8 ist. In Figur 14a wird die rechtwinkelige Ecke durch die Chain Codes 456 definiert. Figur 14b zeigt eine Modifikation des Chain Code-Zuges von 456 nach 4466. Durch die Modifikatlon wird die rechtwinkelige Ecke klar wiedergegeben.
- Figur 15a zeigt ein Chain Code-Diagramm, bei dem ein Chain Code-Zug im Uhrzeigersinn der Konfiguration der Figur 9 zugewiesen wird. In Figur 15a wird die rechtwinkelige Ecke durch die Chain Codes 012 definiert. Figur 15b zeigt eine Modifikation des Chain Code-Zuges von 012 nach 0022. Durch die Modifikation wird die rechtwinkelige Ecke klar wiedergegeben.
- Figur 16a zeigt ein Chain Code-Diagramm, bei dem ein Chain Code-Zug im Uhrzeigersinn der Konfiguration der Figur 10 zugewiesen wird.
- In Figur 16a ist die rechtwinkelige Ecke durch den Chain Code 234 definiert. Figur 16b zeigt eine Modifikation des Chain Code-Zuges von 234 nach 2244. Durch die Modifikation kann die rechtwinkelige Ecke klar wiedergegeben werden.
- Figur 17 zeigt eine Verarbeitung für einen inneren Rand oder für eine Öffnung. Der innere Rand wird durch den Chain Code-Zug in entgegengesetzter Richtung zudem für den äußeren Rand definiert. Wie in Figur 17a gezeigt, besteht der Chaine Code- Zug aus 5666700012223444. Der letzte Chain Code wird als fortlaufend zu dem ersten behandelt, ähnlich wie bei der ersten Ausführungsform. Die Chain Code-Züge definieren rechtwinkelige Ecken wie dies der Fall für den äußeren Rand war. Die Chain Code-Züge sind 234, 456, 012 und 670, und werden zu 2244, 4466, 0222 und 6600 verändert. Durch diese Modifikation werden die rechtwinkeligen Ecken klar wiedergegeben.
- Ähnlich wie bei der ersten Ausführungsform ist es möglich, eine Bestimmung einer rechtwinkeligen Ecke dann vorzunehmen, wenn zu beiden Enden gerade Linien vorhanden sind, die länger als eine vorbestimmte Länge sind.
- Ein Beispiel für einen Chain Code-Erzeugungsprozeß wird im folgenden gegeben.Um einen Chain Code zu erzeugen, muß zunächst der Startpunkt gefunden werden. Der Startpunkt kann durch die Nachbarpixel im bezug auf die Abstastrichtung bestimmt werden. Wenn die Abtastrichtung normal ist, d.h. von oben nach unten und von links nach rechts verlaufend, wird der Randpixel, der keinen oberen und linken Nachbarn hat, als Startpunkt für den Chain Code des äußeren Randes definiert, wie dies in Figur 19 gezeigt ist. Der Randpixel mit einem tieferen linken Nachbarn jedoch ohne tieferen Nachbarn kann als Startpunkt für den Chain Code des inneren Randes angenommen werden, wie dies in Figur 20 gezeigt ist.
- Wie oben erwähnt (siehe Seite 7, Formeln a und b) sollte, da ein Chain Code den folgenden Chain Code limitiert, nur der Bereich in Uhrzeigersinnrichtung oder gegen Uhrzeigersinnrichtung durchsucht werden, bei dem ein nachfolgender Chain Code existieren kann. Wenn der Chain Code zu in Gegenuhrzeigersinnrichtung am äußeren Rand betrachtet wird, sollte die Suchrichtung ebenfalls in Gegenuhrzeigersinnrichtung verlaufen und umgekehrt.
- Der Chain Code-Zug für den Innenrand kann entsprechend dem Algorithmus für den äußeren Rand erzeugt werden.
- Wenn ein Pixel auf dem Innenrand einen Chain Code von k aufweist und k eine gerade Zahl ist, kann der nachfolgende Chain Code durch Suchen eines Randpixels in Gegenuhrzeigersinnrichtung von dem Chain Code (k-1) gesucht werden. Die Richtung, in der der Randpixel zuerst gefunden Der Algorithmus ist effizient, da der gesamte Chain Code-Zug durch einmaliges Nachziehen der Randpixel generiert wird. Der Algorithmus ist effizient zum Auffüllen von Öffnungen, da der äußere Rand und der innere Rand voneinander unterscheidbar sind.
- Im folgenden wird ein Algorithmus für das Extrahieren von Vectorpunkten von einem Chain Code-Zug angegeben, wobei dies nicht auf rechtwinkelige Ecken beschränkt ist.
- In Figur 21 gibt es hintereinanderliegende unterschiedliche Chain Codes und die Konfiguration weist konkave und konvexe Stellen auf. Um eine solche Konfiguration präzise zu beschreiben, werden die Randpixel als Vektorpunkte extrahiert.
- Auf der anderen Seite kann es wie in Figur 22, besser sein, kleine konkave Stellen nicht zu beachten, selbst wenn es dort unterschiedliche Chain Codes gibt. In Figur 22 wird der Chain Code 5 an den Pixeln a und b um die konkave Stelle von ein Chain Code gefolgt der um 1 kleiner ist, d.h., vier ist. Der Chain Code-Zug k, (k -1) definiert eine gerade Linie, die länger als ein Pixel nach einem Einpixelschritt ist. Durch Weglassen des Pixels des Chain Codes k-1 von den Vektorpunkten und durch Extrahieren des nächsten Pixels zum Pixel k-1, wird die Wiedergabekonfiguration eine höhere Qualität aufweisen, als wenn die Konfiguration präzise wiedergegeben wird. Die Dateneffizienz ist ebenfalls verbessert. Diese Regel schließt eine Regel für das Vektorisieren rechtwinkeliger konkaver Stellen ein und kann wie folgt ausgedrückt werden.
- In dem Chain Code-Zug k, k' kann der Pixel mit Chain Code k als Vektorpunkt extrahiert werden, wenn folgende Beziehung zwischen k und k' gilt:
- eine Regel für das Vektorisieren rechtwinkeliger konkaver Stellen ein und kann wie folgt ausgedrückt werden.
- In dem Chain Code-Zug k, k' kann der Pixel mit Chain Code k als Vektorpunkt extrahiert werden, wenn folgende Beziehung zwischen k und k' gilt:
- k≠ k' und k'≠(k-1).
- Wenn gilt k'= (k-1) und ein oder mehr Pixel des Chain Codes k-1 dem ersten Pixel von k-1 nachfolgen, wie dies in Figur 23 gezeigt ist, ist es besser, alle Pixel mit k-1 von den Vektorpunkten auszuschließen. Dann wird der erste Pixel b des Chain Codes der nicht k-1 ist, nach dem Chain Code-Zug von k-1, k-1 als Vektorpunkt extrahiert.
- Mit anderen Worten sollte der Pixel des Chain Codes k' in dem folgenden Chain Code-Zug als Vektorpunkt extrahiert werden.
- k, (k-1) , (k-1) , ...(k-1) , k' ..... wobei k'≠k-1 ist.
- Es ist möglich, daß der Startpunkt a für den Chain Code-Zug auf den der Startpunkt folgt, weggelassen wird. Jedoch kann der Verbindungspunkt b als Vektorpunkt extrahiert werden. Mit anderen Worten sollte, wenn ein konstanter Chain Code-Zug von einem Chain Code-Zug gefolgt wird, der konstante Chain Codes aufweist, der Pixel des ersten Chain Codes der zweiten Linie als Vektorpunkt extrahiert werden, wie dies im nachfolgenden Chain Code-Zug durch Unterstreichen gezeigt ist.
- k, k, ...k, k', k', ..., k wobei k'≠k
- ist.
- Ein Chain Code-Zug mit konstanten Chain Codes definiert eine gerade Linie. Wenn zwei gerade Linien mit unterschiedlichen Neigungen an ihren Endpunkten miteinander verbunden sind, wie dies in Figur 24 gezeigt ist, sollten beide geraden Linien wiedergegeben werden. In Figur 24 wird eine Linie mit dem Chain Code-Zug 5,5, ... durch eine Linie eines Chain Code-Zuges 6, 6, ... gefolgt. Der Startpunkt der Linie mit dem Chain Code 5 ist a und der Endpunkt ist b.
- Figur 25 zeigt eine konkave Stelle von einem Pixel nach der geraden Linie mit dem Chain Code 5. Der Bodenpunkt der konkaven Stelle kann extrahiert werden indem ein Pixel mit einem Chain Code extrahiert wird, der sich von den konstanten Chain Codes, die die gerade Linie unterscheidet, und dieser nachfolgt.
- Figur 26 zeigt eine gerade Linie aus zwei Pixeln nach einer geraden Linie mit einem Chain Code, der um 1 kleiner ist als der Chain Code der ersten geraden Linie. Der Chain Code-Zug kann wie folgt ausgedrückt werden:
- k, k, ...., k, k-1, k' wobei k'≠k-1
- gilt.
- In diesem Fall sollte der Pixel a des Chain Codes k-1 von den Vektorpunkten ausgeschlossen werden. Der nächste Pixel des Chain Codes k' sollte als Vektorpunkt extrahiert werden, wie dies im bezug auf Figuren 22 und 23 beschrieben wurde.
- Figur 27 zeigt ein Chain Code-Diagramm mit einem Rand, der aus zwei geraden Linien besteht. Die erste Linie hat einen Chain Code von 5 und die zweite Linie hat einen Chain Code von 4. Der Startpunkt b der zweiten Linie sollte als Vektorpunkt extrahiert werden. Mit anderen Worten sollte der Pixel, der dem unterstrichenen Chain Code in dem folgenden Chain Code-Zug entspricht, extrahiert werden.
- k, k, ..., k, k-1, k-1, ..., k-1.
- Die Regeln können wie folgt zusammengefaßt werden:
- i) wenn k1, k2, und k3 unterschiedliche Chain Codes in dem Chain Code-Zug k1, k2, k3 sind,
- wenn k2≠k1-1 ist, sollte k2 als Vektorpunkt extrahiert werden und ansonsten, falls k2=k-1 ist, sollte k3 als Vektorpunkt extrahiert werden.
- ii) Wenn k1≠k2, k2≠k3 und k3≠k1 in dem Chain Code-Zug k1, k1, ..., k1, k2, k3 gilt,
- und falls k2≠k1-1, gilt, sollte k2 als Vektorpunkt extrahiert werden, ansonsten falls k2=k1-1 ist, sollte k3 als Vektorpunkt extrahiert werden.
- iii) Wenn k1≠k2, k2≠k3 und k3≠k1 in dem Chain Code-Zug k1, k2, k2, ..., k2, k3 gilt, und falls
- k2≠k1-1 gilt, sollte k2 als Vektorpunkt extrahiert werden und ansonsten, falls k2=k1-1 gilt, sollte k3 als Vectorpunkt extrahiert werden.
- iv) Wenn k1≠k2, k2≠k3 und k3≠k1 in dem Chain Code-Zug k1, k1, ..., k1, k2, k2, k3 ist, sollte k2 als Vektorpunkt extrahiert werden.
- Die nächste Regel ist für die Vektorisierung anzuwenden, um die Vektordaten zu minimieren.
- v) Wie in Figur 28 gezeigt ist, ist ein Chain Code-Zug gegeben, der aus aufeinanderfolgender Kombination 445 besteht. Diese Chain Code-Züge definieren Stufen mit konstanter Länge. Die Konfiguration kann durch eine gerade Linie angenähert werden. Für diese Annäherung sollte die folgende Regel angewendet werden.
- Wenn die Chain Code-Züge aus einer Kombination von Chain Codes k und k-1 bestehen oder ein Chain Code-Zug aus einer Kombination von Chain Codes k und k+1 wiederholt besteht, sollte der erste Punkt der ersten Kombination der letzte Punkt der letzten Kombination als Vektorpunkt extrahiert werden, wie dies in Figur 28 durch a und b angezeigt ist.
- Die Konfiguration der Figur 30 weist eine Neigung auf, die entgegengesetzt zu der in der Konfiguration der Figur 28 ist. Die Konfiguration in Figur 31 weist eine Neigung auf, die entgegengesetzt der von der Konfiguration der Figur 29 ist.
- Die Chain Code-Züge 001 werden wiederholt erzeugt. Bei diesen Konfigurationen, sollte der Startpunkt des ersten Schrittes und der Endpunkt des letzten Schrittes als Vektorpunkt extrahiert werden, so daß die Konfiguration durch eine gerade Linie angenähert wird.
- Die obigen schrittweisen Konfigurationen weisen eine relativ geringe Neigung auf.
- Die Konfigurationen in den Figuren 32 bis 35 weisen relativ steile Neigungen auf.
- Die Konfiguration in Figur 32 enthält einen wiederholten Chain Code-Zug von 665.
- Die Konfiguration der Figur 33 enthält einen wiederholten Chain Code-Zug von 667.
- Die Konfiguration der Figur 34 enthält einen wiederholten Chain Code-Zug von 223.
- Die Konfiguration der Figur 35 enthält einen wiederholten Chain Code-Zug von 221.
- In jeder Konfiguration mit steilen Stufen, wird der untere Eckpunkt einer jeden Stufe extrahiert, wenn der Rand nach unten gerichtet wird und umgekehrt, wie dies in Figur 32 bis 35 gezeigt ist. Die Annäherungsregel für die schrittweise Konfiguration kann wie folgt zusammengefaßt werden:
- vi) Wenn der Chain Code-Zug aus einem wiederholten Chain Code- Zug aus wiederholten Chain Code-Zügen von k, k, ...., k, k-1 besteht, sollte der erste Pixel von k in dem ersten Chain Code- Zug und der erste Pixel von k in dem letzten Chain Code-Zug als Vektorpunkt extrahiert werden.
- vii) In dem Chain Code-Zug der aus wiederholten Chain Code- Zügen von k,k, ..., k, k+1 besteht, sollte der Pixel k+1 im ersten und letzten Chain Code-Zug als Vektorpunkt extrahiert werden.
- Die verallgemeinerten Regeln sind auch zum Vektorisieren einer Öffnung anwendbar. Wenn der Chain Code-Zug in Uhrzeigersinnrichtung generiert wird, d.h. entgegengesetzt der Richtung wie oben beschrieben wurde, sollten die Chain Code- Veränderungen entsprechend umgedreht werden, d.h. das Inkrementieren wird zu einem Dekrementieren.
- Wenn ein Code äquivalent zum Chain Code für Vektorisierung angewendet wird, können die obigen Regeln leicht entsprechend angepaßt werden.
- Wie in den obigen Ausführungsformen beschrieben wurde, können, duch Extrahieren von Vektorpunkten entsprechend dem Chain Code oder einem äquivalenten Code die Vektordaten leicht erzeugt werden, ohne daß hierfür komplexe Winkelberechnungen notwendig sind. Eine Konfiguration mit hoher Qualität kann aus den Vektordaten erstellt werden.
Claims (26)
1. Verfahren zum Vektorisieren gespeicherter Randdaten einer
Konfiguration, die in einem aus Pixel bestehenden Bild
enthalten ist mit folgenden Schritten:
a) Erzeugen eines ursprünglichen Zuges aus Chain Codes, wobei
der Wert der Codes die Randpixel der Konfiguration
spezifiziert;
wobei das Verfahren gekennzeichnet ist durch folgende Schritte:
b) Identifizieren vorbestimmter Muster aus Codewerten in dem
ursprünglichen Zug von Chain Codes, wobei die vorbestimmten
Muster rechtwinklige konkave Ecken der Konfiguration definieren
und wobei es eine durchgehend gerade Linie an beiden Enden der
rechtwinkligen konkaven Ecken gibt, welche eine vorbestimmte
Mindestlänge aufweist;
c) Erzeugen eines veränderten Zuges von Codes durch
Modifizieren der vorgegebenen Muster der Codewerte, so daß jedem
Eckpunktpixel, welcher keinen Chain Code in dem ursprünglichen Zug
von Chain-Codes aufwies, da er kein Randpixel war, ein Chain-
Codewert zugewiesen wird;
d) Extrahieren von Vektorpunkten, die die Grenzen der
Konfiguration definieren, aus dem veränderten Zug von Codes
entsprechend bestimmter Codekombinationen in dem veränderten Zug
erfolgen.
2. Verfahren nach Anspruch 1, bei dem die Codes Freeman-Chain
Codes sind.
3. Verfahren im Gegenuhrzeigersinn nach Anspruch 2, bei dem der
Schritt des Extrahierens von Vektorpunkten den Schritt des
Extrahierens eines Pixels entsprechend dem Chain Code k2 in einem
Chain Code-Zug von "k1, k2, k3", welcher in dem veränderten Zug
von Codes enthalten ist, wenn k2≠k1-1 und k1≠k2, k2≠k3, k3≠k1
ist, aufweist.
4. Verfahren im Gegenuhrzeigersinn nach Anspruch 2, bei dem der
Schritt des Extrahierens von Vektorpunkten einen Schritt zum
Extrahieren eines Pixels entsprechend dem Chain Code k3 in dem
Chain Code-Zug von "k1, k2, k3", wie er in dem veränderten Zug
von Codes enthalten ist, enthält, wobei k2≠k1-1 und k1≠k2,
k2≠k3, k3≠k1 gilt.
5. Verfahren im Gegenuhrzeigersinn nach Anspruch 2, bei dem der
Schritt des Extrahierens von Vektorpunkten einen Schritt des
Extrahierens eines Pixels entsprechend dem Chain Code k2 in
einem Chain Code-Zug von "k1, k1, ..., k1, k2, k3", wie er in dem
veränderten Zug von Codes enthalten ist, einschließt, wobei
k1≠k2, k2≠3, k3≠k1, k2≠k1-1 gilt.
6. Verfahren im Gegenuhrzeigersinn nach Anspruch 2, bei dem der
Schritt des Extrahierens einen Schritt des Extrahierens eines
Pixels entsprechend dem Chain Code k3 in einem Chain Code-Zug
von "k1, k1, ..., k1, k2, k3", wie er in dem veränderten Zug von
Codes enthalten ist, einschließt, wobei k1≠k2, k2≠k3, k3≠k1,
k2≠k1-1 gilt.
7. Verfahren im Gegenuhrzeigersinn nach Anspruch 2, bei dem der
Schritt des Extrahierens von Vektorpunkten den Schritt des
Extrahierens
eines Pixels entsprechend dem ersten Chain Code k2
in einem Chain Code-Zug von "k1, k2, k2,..., k2, k3", wie er in
dem veränderten Zug von Codes enthalten ist, einschließt, wobei
k1≠k2, k2≠k3, k3≠k1 und k2≠k1-1 gilt.
8. Verfahren im Gegenuhrzeigersinn nach Anspruch 2, bei dem der
Schritt des Extrahierens von Vektorpunkten einen Schritt des
Extrahierens eines Pixels entsprechend dem Chain Code k3 in dem
Chain Code-Zug von "k1, k2, k2,..., k2, k3", wie er in dem
veränderten Zug von Codes enthalten ist, einschließt, wobei k1≠k2,
k2≠k3, k3≠k1 und k2≠k1-1 git.
9. Verfahren im Gegenuhrzeigersinn nach Anspruch 2, wobei der
Schritt des Extrahierens von Vektorpunkten einen Schritt des
Extrahierens eines Pixels entsprechend dem ersten Chain Code
von k2 in dem Chain Code-Zug "k1, k1, ..., k1, k2, k2 ..., k2,
k3", wie er in dem veränderten Zug von Codes enthalten ist,
einschließt, wobei k1≠k2, k2≠k3, k3≠k1 gilt.
10. Verfahren im Gegenuhrzeigersinn nach Anspruch 2, wobei der
Schritt des Extrahierens von Vektorpunkten einen Schritt des
Extrahierens von Pixeln entsprechend dem ersten Chain Code k
beim ersten und letzten Auftreten einer sich in dem
ursprünglichen Zug von Codes wiederholenden Chain Code-Kombination von
"k, k, ..., k, k-1" einschließt.
11. Verfahren im Gegenuhrzeigersinn nach Anspruch 2, wobei der
Schritt des Extrahierens von Vektorpunkten einen Schritt des
Extrahierens von Pixeln entspechend einem Chain Code k+1 beim
ersten und letzten Auftreten einer sich wiederholenden Chain
Code-Kombination von "k, k,..., k, k+1", wie sie wiederholt in
dem ursprünglichen Zug von Codes enthalten ist, einschließt.
12. Verfahren im Uhrzeigersinn nach Anspruch 2, bei dem der
Schritt des Extrahierens von Vektorpunkten einen Schritt des
Extrahierens eines Pixels entsprechend dem Chain Code k2 in
einem Chain Code-Zug von "k1, k2, k3", welcher in dem veränderten
Zug von Codes enthalten ist, wenn k2≠k1+1 und k1≠k2, k2≠k3,
k3≠k1 ist, enthält.
13. Verfahren im Uhrzeigersinn nach Anspruch 2, bei dem der
Schritt des Extrahierens von Vektorpunkten einen Schritt zum
Extrahieren eines Pixels entsprechend dem Chain Code k3 in den
Chain Code-Zug von "k1, k2, k3", wie er in dem veränderten Zug
von Codes enthalten ist, enthält, wobei k2≠k1+1 und k1≠k2,
k2≠k3, k3≠k1 gilt.
14. Verfahren im Uhrzeigersinn nach Anspruch 2, bei dem der
Schritt des Extrahierens von Vektorpunkten einen Schritt des
Extrahierens eines Pixels entsprechend dem Chain Code k2 in
einem Chain Code-Zug von "k1, k1, ..., k1, k2, k3", wie er in dem
veränderten Zug von Codes enthalten ist, einschließt, wobei
k1≠k2, k2≠k3, k3≠k1, k2≠k1+1 gilt.
15. Verfahren im Uhrzeigersinn nach Anspruch 2, bei dem der
Schritt des Extrahierens einen Schritt des Extrahierens eines
Pixels entsprechend dem Chain Code k3 in einem Chain Code-Zug
von "k1, k1 ..., k1, k2, k3", wie er in dem veränderten Zug von
Codes enthalten ist, einschließt, wobei k1≠k2, k2≠k3, k3≠k1,
k2≠k1+1 gilt.
16. Verfahren im Uhrzeigersinn nach Anspruch 2, bei dem der
Schritt des Extrahierens von Vektorpunkten den Schritt des
Extrahierens eines Pixels entsprechend dem ersten Chain Code k2
in einem Chain Code-Zug von "k1, k2, k2, ..., k2, k3", wie er in
dem veränderten Zug von codes enthalten ist; einschließt, wobei
k1≠k2, k2≠k3, k3≠k1 und K2≠k1+1 gilt.
17. Verfahren im Uhrzeigersinn nach Anspruch 2, bei dem der
Schritt des Extrahierens von Vektorpunkten einen Schritt des
Extrahierens eines Pixels entsprechend dem Chain Code k3 in dem
Chain Code-Zug von "k1, k2, k2, ..., k2, k3", wie er in dem
veränderten Zug von Codes enthalten ist, einschließt, wobei k1≠k2,
k2≠k3, k3≠k1 und k2≠k1+1 gilt.
18. Verfahren im Uhrzeigersinn nach Anspruch 2, wobei der
Schritt des Extrahierens von Vektorpunkten ein Schritt des
Extrahierens von Pixeln entsprechend dem ersten Chain Code k beim
ersten und letzten Auftreten einer wiederholenden Chain Code-
Kombination von "k, k,..., k, k-1", wie er wiederholt in dem
ursprünglichen Zug von Codes enthalten ist, einschließt.
19. Verfahren im Uhrzeigersinn nach Anspruch 2, wobei der
Schritt des Extrahierens von Vektorpunkten einen Schritt des
Extrahierens von Pixeln entspechend einem Chain Code k+1 beim
ersten und letzten Auftren einer sich wiederholenden Chain
Code-Kombination von "k, k, ..., k, k+1", wie sie wiederholt in
dem ursprünglichen Zug von Codes enthalten ist, einschließt.
20. Verfahren nach Anspruch 1, bei dem der Schritt des
Erzeugens eines ursprünglichen Zugs von Codes folgende Schritte
einschließt:
Erzeugen eines ursprünglichen Zugs von Codes für einen äußeren
Rand in einer ersten Umlaufrichtung um die Konfiguration; und
Erzeugen eines ursprünglichen Zugs von Codes für einen inneren
Rand der Konfiguration in einer entgegengesetzten
Umlaufrichtung gegenüber der für den äußeren Rand.
21. Verfahren nach Anspruch 1, bei dem der Schritt des Erzeugen
eines ursprünglichen Zugs von Codes einen Schritt mit
einschließt, bei dem ein Pixel beurteilt wird, um festzustellen,
ob dieser ein Startpunkt des ursprünglichen Zugs von Codes ist,
in dem seine Nachbarpixel bewertet werden.
22. Verfahren nach Anspruch 21, bei dem der Schritt des
Beurteilen eines Pixels den Schritt des Definierens eines
Randpixels mit weder oberen noch linken Nachbarn als Startpunkt des
ursprünglichen Zugs von Codes auf dem äußeren Rand mit
einschließt, wenn die Abtastung von links nach rechts und von oben
nach unten verläuft.
23. Verfahren nach Anspruch 21, bei dem der Schritt des
Beurteilen eines Pixels den Schritt des Definierens eines
Randpixels mit einem linken Nachbarn, jedoch ohne einen unteren
Nachbar, als Startpunkt des ursprünglichen Zugs von Codes auf dem
inneren Rand mit einschließt, wenn die Abtastung nach rechts
und von oben nach unten erfolgt.
24. Verfahren nach Anspruch 1, bei dem der Schritt des
Erzeugens eines ursprünglichen Zugs von Codes folgende Schritte
aufweist:
Erzeugen von Codes entsprechend einem Umlaufsinn um die
Konfiguration; und
Suchen von Randpixeln, die zu einem Pixel benachbart sind, und
deren ein Code in gleicher Umlaufrichtung wie bei der Erzeugung
es ursprünglichen Zugs von Codes gegeben wird.
25. Verfahren nch Anspruch 24, wobei
der Zug von Codes aus Freeman-Chain Codes besteht;
dem Pixel, dem ein Chain Code gegeben wird, sich in einem
Abstand k von dem ursprünglichen Pixel befindet; und
der Suchschritt von der Richtung (k-1) beginnt, wenn k eine
gerade Anzahl ist.
26. Verfahren nach Anspruch 24, wobei der Zug von Codes aus
Freeman-Codes besteht;
der Pixel, dem ein Chain Code zugewiesen wird, in Richtung k
von dem vorhergehenden Pixel liegt; und
der Suchschritt von der Richtung (k-2) beginnt, wenn k eine
ungerade Zahl ist.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP88121903A EP0375805B1 (de) | 1988-12-30 | 1988-12-30 | Vektorisationsverfahren |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3853885D1 DE3853885D1 (de) | 1995-06-29 |
DE3853885T2 true DE3853885T2 (de) | 1995-09-14 |
Family
ID=8199731
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE3853885T Expired - Lifetime DE3853885T2 (de) | 1988-12-30 | 1988-12-30 | Vektorisationsverfahren. |
Country Status (3)
Country | Link |
---|---|
US (1) | US5007098A (de) |
EP (1) | EP0375805B1 (de) |
DE (1) | DE3853885T2 (de) |
Families Citing this family (141)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE68920144T2 (de) * | 1989-10-12 | 1995-06-29 | Ibm | Anzeigesystem. |
US5265173A (en) * | 1991-03-20 | 1993-11-23 | Hughes Aircraft Company | Rectilinear object image matcher |
US5568566A (en) * | 1991-11-25 | 1996-10-22 | Kabushiki Kaisha Toshiba | Drawing processing apparatus |
EP0553762B1 (de) * | 1992-01-27 | 2000-05-03 | Canon Kabushiki Kaisha | Bildverarbeitungs-Verfahren und Vorrichtung |
US5380428A (en) * | 1992-04-22 | 1995-01-10 | Product Research & Development | Pump for reverse osmosis system |
US5418862A (en) * | 1992-08-10 | 1995-05-23 | United Parcel Service Of America | Method and apparatus for detecting artifact corners in two-dimensional images |
JPH0749927A (ja) * | 1993-08-09 | 1995-02-21 | Nireco Corp | パターン認識方法 |
US5362796A (en) | 1993-08-09 | 1994-11-08 | Isp Investments Inc. | Molded crosslinked vinyl lactam polymer gel and method of preparation |
EP0650287B1 (de) * | 1993-10-26 | 2004-03-10 | Canon Kabushiki Kaisha | Bildverarbeitungsverfahren und -gerät |
US5600733A (en) * | 1993-11-01 | 1997-02-04 | Kulicke And Soffa Investments, Inc | Method for locating eye points on objects subject to size variations |
US5577134A (en) * | 1994-01-07 | 1996-11-19 | Panasonic Technologies, Inc. | Method and apparatus for encoding a segmented image without loss of information |
JP2918465B2 (ja) * | 1994-11-14 | 1999-07-12 | 大日本スクリーン製造株式会社 | 画像処理方法 |
US6005680A (en) * | 1995-04-04 | 1999-12-21 | Canon Information Systems, Inc. | Method for capturing a document image, a scanner using the method and a document image management system using the scanner |
US6041137A (en) | 1995-08-25 | 2000-03-21 | Microsoft Corporation | Radical definition and dictionary creation for a handwriting recognition system |
KR100203266B1 (ko) * | 1996-07-09 | 1999-06-15 | 윤종용 | 윤곽선복호화장치 |
US5969317A (en) * | 1996-11-13 | 1999-10-19 | Ncr Corporation | Price determination system and method using digitized gray-scale image recognition and price-lookup files |
US6324300B1 (en) * | 1998-06-24 | 2001-11-27 | Colorcom, Ltd. | Defining color borders in a raster image |
US6310970B1 (en) * | 1998-06-24 | 2001-10-30 | Colorcom, Ltd. | Defining surfaces in border string sequences representing a raster image |
US6226400B1 (en) | 1998-06-24 | 2001-05-01 | Colorcom, Ltd. | Defining color borders in a raster image by identifying and breaking contrast ties |
US8645137B2 (en) | 2000-03-16 | 2014-02-04 | Apple Inc. | Fast, language-independent method for user authentication by voice |
US7069108B2 (en) | 2002-12-10 | 2006-06-27 | Jostens, Inc. | Automated engraving of a customized jewelry item |
CA2563700C (en) * | 2004-04-19 | 2014-07-08 | Jostens, Inc. | System and method for smoothing three-dimensional images |
US8677377B2 (en) | 2005-09-08 | 2014-03-18 | Apple Inc. | Method and apparatus for building an intelligent automated assistant |
CN100403769C (zh) * | 2006-04-29 | 2008-07-16 | 北京北大方正电子有限公司 | 一种在排版过程中进行图像勾边的方法 |
JP4829835B2 (ja) * | 2006-06-12 | 2011-12-07 | キヤノン株式会社 | 画像処理装置、画像処理方法、コンピュータプログラム、及びコンピュータ読み取り可能な記憶媒体 |
US9318108B2 (en) | 2010-01-18 | 2016-04-19 | Apple Inc. | Intelligent automated assistant |
US7856285B2 (en) | 2007-01-18 | 2010-12-21 | Jostens, Inc. | System and method for generating instructions for customization |
WO2008112796A1 (en) | 2007-03-12 | 2008-09-18 | Jostens, Inc. | Method for embellishment placement |
US8977255B2 (en) | 2007-04-03 | 2015-03-10 | Apple Inc. | Method and system for operating a multi-function portable electronic device using voice-activation |
US9330720B2 (en) | 2008-01-03 | 2016-05-03 | Apple Inc. | Methods and apparatus for altering audio output signals |
US8996376B2 (en) | 2008-04-05 | 2015-03-31 | Apple Inc. | Intelligent text-to-speech conversion |
US10496753B2 (en) | 2010-01-18 | 2019-12-03 | Apple Inc. | Automatically adapting user interfaces for hands-free interaction |
US20100030549A1 (en) | 2008-07-31 | 2010-02-04 | Lee Michael M | Mobile device having human language translation capability with positional feedback |
WO2010067118A1 (en) | 2008-12-11 | 2010-06-17 | Novauris Technologies Limited | Speech recognition involving a mobile device |
US10706373B2 (en) | 2011-06-03 | 2020-07-07 | Apple Inc. | Performing actions associated with task items that represent tasks to perform |
US10241752B2 (en) | 2011-09-30 | 2019-03-26 | Apple Inc. | Interface for a virtual digital assistant |
US10241644B2 (en) | 2011-06-03 | 2019-03-26 | Apple Inc. | Actionable reminder entries |
US9858925B2 (en) | 2009-06-05 | 2018-01-02 | Apple Inc. | Using context information to facilitate processing of commands in a virtual assistant |
US9431006B2 (en) | 2009-07-02 | 2016-08-30 | Apple Inc. | Methods and apparatuses for automatic speech recognition |
US10705794B2 (en) | 2010-01-18 | 2020-07-07 | Apple Inc. | Automatically adapting user interfaces for hands-free interaction |
US10553209B2 (en) | 2010-01-18 | 2020-02-04 | Apple Inc. | Systems and methods for hands-free notification summaries |
US10679605B2 (en) | 2010-01-18 | 2020-06-09 | Apple Inc. | Hands-free list-reading by intelligent automated assistant |
US10276170B2 (en) | 2010-01-18 | 2019-04-30 | Apple Inc. | Intelligent automated assistant |
DE202011111062U1 (de) | 2010-01-25 | 2019-02-19 | Newvaluexchange Ltd. | Vorrichtung und System für eine Digitalkonversationsmanagementplattform |
US8682667B2 (en) | 2010-02-25 | 2014-03-25 | Apple Inc. | User profiling for selecting user specific voice input processing information |
US8977377B2 (en) | 2010-02-25 | 2015-03-10 | Jostens, Inc. | Method for digital manufacturing of jewelry items |
US10762293B2 (en) | 2010-12-22 | 2020-09-01 | Apple Inc. | Using parts-of-speech tagging and named entity recognition for spelling correction |
US9262612B2 (en) | 2011-03-21 | 2016-02-16 | Apple Inc. | Device access using voice authentication |
US10057736B2 (en) | 2011-06-03 | 2018-08-21 | Apple Inc. | Active transport based notifications |
US8977059B2 (en) * | 2011-06-03 | 2015-03-10 | Apple Inc. | Integrating feature extraction via local sequential embedding for automatic handwriting recognition |
US8994660B2 (en) | 2011-08-29 | 2015-03-31 | Apple Inc. | Text correction processing |
US9208265B2 (en) | 2011-12-02 | 2015-12-08 | Jostens, Inc. | System and method for jewelry design |
US10134385B2 (en) | 2012-03-02 | 2018-11-20 | Apple Inc. | Systems and methods for name pronunciation |
US9483461B2 (en) | 2012-03-06 | 2016-11-01 | Apple Inc. | Handling speech synthesis of content for multiple languages |
US9280610B2 (en) | 2012-05-14 | 2016-03-08 | Apple Inc. | Crowd sourcing information to fulfill user requests |
US9721563B2 (en) | 2012-06-08 | 2017-08-01 | Apple Inc. | Name recognition system |
US9495129B2 (en) | 2012-06-29 | 2016-11-15 | Apple Inc. | Device, method, and user interface for voice-activated navigation and browsing of a document |
US9576574B2 (en) | 2012-09-10 | 2017-02-21 | Apple Inc. | Context-sensitive handling of interruptions by intelligent digital assistant |
US9547647B2 (en) | 2012-09-19 | 2017-01-17 | Apple Inc. | Voice-based media searching |
US9582615B2 (en) | 2013-01-16 | 2017-02-28 | Jostens, Inc. | Modeling using thin plate spline technology |
KR20240132105A (ko) | 2013-02-07 | 2024-09-02 | 애플 인크. | 디지털 어시스턴트를 위한 음성 트리거 |
US10652394B2 (en) | 2013-03-14 | 2020-05-12 | Apple Inc. | System and method for processing voicemail |
US9368114B2 (en) | 2013-03-14 | 2016-06-14 | Apple Inc. | Context-sensitive handling of interruptions |
WO2014144579A1 (en) | 2013-03-15 | 2014-09-18 | Apple Inc. | System and method for updating an adaptive speech recognition model |
AU2014233517B2 (en) | 2013-03-15 | 2017-05-25 | Apple Inc. | Training an at least partial voice command system |
WO2014197334A2 (en) | 2013-06-07 | 2014-12-11 | Apple Inc. | System and method for user-specified pronunciation of words for speech synthesis and recognition |
WO2014197336A1 (en) | 2013-06-07 | 2014-12-11 | Apple Inc. | System and method for detecting errors in interactions with a voice-based digital assistant |
US9582608B2 (en) | 2013-06-07 | 2017-02-28 | Apple Inc. | Unified ranking with entropy-weighted information for phrase-based semantic auto-completion |
WO2014197335A1 (en) | 2013-06-08 | 2014-12-11 | Apple Inc. | Interpreting and acting upon commands that involve sharing information with remote devices |
KR101772152B1 (ko) | 2013-06-09 | 2017-08-28 | 애플 인크. | 디지털 어시스턴트의 둘 이상의 인스턴스들에 걸친 대화 지속성을 가능하게 하기 위한 디바이스, 방법 및 그래픽 사용자 인터페이스 |
US10176167B2 (en) | 2013-06-09 | 2019-01-08 | Apple Inc. | System and method for inferring user intent from speech inputs |
EP3008964B1 (de) | 2013-06-13 | 2019-09-25 | Apple Inc. | System und verfahren für durch sprachsteuerung ausgelöste notrufe |
DE112014003653B4 (de) | 2013-08-06 | 2024-04-18 | Apple Inc. | Automatisch aktivierende intelligente Antworten auf der Grundlage von Aktivitäten von entfernt angeordneten Vorrichtungen |
USD789228S1 (en) | 2013-11-25 | 2017-06-13 | Jostens, Inc. | Bezel for a ring |
US10725650B2 (en) * | 2014-03-17 | 2020-07-28 | Kabushiki Kaisha Kawai Gakki Seisakusho | Handwritten music sign recognition device and program |
US9620105B2 (en) | 2014-05-15 | 2017-04-11 | Apple Inc. | Analyzing audio input for efficient speech and music recognition |
US10592095B2 (en) | 2014-05-23 | 2020-03-17 | Apple Inc. | Instantaneous speaking of content on touch devices |
US9502031B2 (en) | 2014-05-27 | 2016-11-22 | Apple Inc. | Method for supporting dynamic grammars in WFST-based ASR |
US9785630B2 (en) | 2014-05-30 | 2017-10-10 | Apple Inc. | Text prediction using combined word N-gram and unigram language models |
US9715875B2 (en) | 2014-05-30 | 2017-07-25 | Apple Inc. | Reducing the need for manual start/end-pointing and trigger phrases |
US10170123B2 (en) | 2014-05-30 | 2019-01-01 | Apple Inc. | Intelligent assistant for home automation |
US9842101B2 (en) | 2014-05-30 | 2017-12-12 | Apple Inc. | Predictive conversion of language input |
US9760559B2 (en) | 2014-05-30 | 2017-09-12 | Apple Inc. | Predictive text input |
US9633004B2 (en) | 2014-05-30 | 2017-04-25 | Apple Inc. | Better resolution when referencing to concepts |
US9734193B2 (en) | 2014-05-30 | 2017-08-15 | Apple Inc. | Determining domain salience ranking from ambiguous words in natural speech |
US9430463B2 (en) | 2014-05-30 | 2016-08-30 | Apple Inc. | Exemplar-based natural language processing |
US10078631B2 (en) | 2014-05-30 | 2018-09-18 | Apple Inc. | Entropy-guided text prediction using combined word and character n-gram language models |
CN110797019B (zh) | 2014-05-30 | 2023-08-29 | 苹果公司 | 多命令单一话语输入方法 |
US10289433B2 (en) | 2014-05-30 | 2019-05-14 | Apple Inc. | Domain specific language for encoding assistant dialog |
US9338493B2 (en) | 2014-06-30 | 2016-05-10 | Apple Inc. | Intelligent automated assistant for TV user interactions |
US10659851B2 (en) | 2014-06-30 | 2020-05-19 | Apple Inc. | Real-time digital assistant knowledge updates |
US10446141B2 (en) | 2014-08-28 | 2019-10-15 | Apple Inc. | Automatic speech recognition based on user feedback |
US9818400B2 (en) | 2014-09-11 | 2017-11-14 | Apple Inc. | Method and apparatus for discovering trending terms in speech requests |
US10789041B2 (en) | 2014-09-12 | 2020-09-29 | Apple Inc. | Dynamic thresholds for always listening speech trigger |
US10127911B2 (en) | 2014-09-30 | 2018-11-13 | Apple Inc. | Speaker identification and unsupervised speaker adaptation techniques |
US9886432B2 (en) | 2014-09-30 | 2018-02-06 | Apple Inc. | Parsimonious handling of word inflection via categorical stem + suffix N-gram language models |
US9668121B2 (en) | 2014-09-30 | 2017-05-30 | Apple Inc. | Social reminders |
US9646609B2 (en) | 2014-09-30 | 2017-05-09 | Apple Inc. | Caching apparatus for serving phonetic pronunciations |
US10074360B2 (en) | 2014-09-30 | 2018-09-11 | Apple Inc. | Providing an indication of the suitability of speech recognition |
US10552013B2 (en) | 2014-12-02 | 2020-02-04 | Apple Inc. | Data detection |
US9711141B2 (en) | 2014-12-09 | 2017-07-18 | Apple Inc. | Disambiguating heteronyms in speech synthesis |
US9865280B2 (en) | 2015-03-06 | 2018-01-09 | Apple Inc. | Structured dictation using intelligent automated assistants |
US9886953B2 (en) | 2015-03-08 | 2018-02-06 | Apple Inc. | Virtual assistant activation |
US10567477B2 (en) | 2015-03-08 | 2020-02-18 | Apple Inc. | Virtual assistant continuity |
US9721566B2 (en) | 2015-03-08 | 2017-08-01 | Apple Inc. | Competing devices responding to voice triggers |
US9899019B2 (en) | 2015-03-18 | 2018-02-20 | Apple Inc. | Systems and methods for structured stem and suffix language models |
US9842105B2 (en) | 2015-04-16 | 2017-12-12 | Apple Inc. | Parsimonious continuous-space phrase representations for natural language processing |
US10083688B2 (en) | 2015-05-27 | 2018-09-25 | Apple Inc. | Device voice control for selecting a displayed affordance |
US10127220B2 (en) | 2015-06-04 | 2018-11-13 | Apple Inc. | Language identification from short strings |
US10101822B2 (en) | 2015-06-05 | 2018-10-16 | Apple Inc. | Language input correction |
US11025565B2 (en) | 2015-06-07 | 2021-06-01 | Apple Inc. | Personalized prediction of responses for instant messaging |
US10186254B2 (en) | 2015-06-07 | 2019-01-22 | Apple Inc. | Context-based endpoint detection |
US10255907B2 (en) | 2015-06-07 | 2019-04-09 | Apple Inc. | Automatic accent detection using acoustic models |
US10671428B2 (en) | 2015-09-08 | 2020-06-02 | Apple Inc. | Distributed personal assistant |
US10747498B2 (en) | 2015-09-08 | 2020-08-18 | Apple Inc. | Zero latency digital assistant |
US9697820B2 (en) | 2015-09-24 | 2017-07-04 | Apple Inc. | Unit-selection text-to-speech synthesis using concatenation-sensitive neural networks |
US10366158B2 (en) | 2015-09-29 | 2019-07-30 | Apple Inc. | Efficient word encoding for recurrent neural network language models |
US11010550B2 (en) | 2015-09-29 | 2021-05-18 | Apple Inc. | Unified language modeling framework for word prediction, auto-completion and auto-correction |
US11587559B2 (en) | 2015-09-30 | 2023-02-21 | Apple Inc. | Intelligent device identification |
US10691473B2 (en) | 2015-11-06 | 2020-06-23 | Apple Inc. | Intelligent automated assistant in a messaging environment |
US10049668B2 (en) | 2015-12-02 | 2018-08-14 | Apple Inc. | Applying neural network language models to weighted finite state transducers for automatic speech recognition |
US10223066B2 (en) | 2015-12-23 | 2019-03-05 | Apple Inc. | Proactive assistance based on dialog communication between devices |
US10446143B2 (en) | 2016-03-14 | 2019-10-15 | Apple Inc. | Identification of voice inputs providing credentials |
US9934775B2 (en) | 2016-05-26 | 2018-04-03 | Apple Inc. | Unit-selection text-to-speech synthesis based on predicted concatenation parameters |
US9972304B2 (en) | 2016-06-03 | 2018-05-15 | Apple Inc. | Privacy preserving distributed evaluation framework for embedded personalized systems |
US10249300B2 (en) | 2016-06-06 | 2019-04-02 | Apple Inc. | Intelligent list reading |
US10049663B2 (en) | 2016-06-08 | 2018-08-14 | Apple, Inc. | Intelligent automated assistant for media exploration |
DK179588B1 (en) | 2016-06-09 | 2019-02-22 | Apple Inc. | INTELLIGENT AUTOMATED ASSISTANT IN A HOME ENVIRONMENT |
US10490187B2 (en) | 2016-06-10 | 2019-11-26 | Apple Inc. | Digital assistant providing automated status report |
US10586535B2 (en) | 2016-06-10 | 2020-03-10 | Apple Inc. | Intelligent digital assistant in a multi-tasking environment |
US10192552B2 (en) | 2016-06-10 | 2019-01-29 | Apple Inc. | Digital assistant providing whispered speech |
US10067938B2 (en) | 2016-06-10 | 2018-09-04 | Apple Inc. | Multilingual word prediction |
US10509862B2 (en) | 2016-06-10 | 2019-12-17 | Apple Inc. | Dynamic phrase expansion of language input |
DK179415B1 (en) | 2016-06-11 | 2018-06-14 | Apple Inc | Intelligent device arbitration and control |
DK179049B1 (en) | 2016-06-11 | 2017-09-18 | Apple Inc | Data driven natural language event detection and classification |
DK179343B1 (en) | 2016-06-11 | 2018-05-14 | Apple Inc | Intelligent task discovery |
DK201670540A1 (en) | 2016-06-11 | 2018-01-08 | Apple Inc | Application integration with a digital assistant |
US10593346B2 (en) | 2016-12-22 | 2020-03-17 | Apple Inc. | Rank-reduced token representation for automatic speech recognition |
DK179745B1 (en) | 2017-05-12 | 2019-05-01 | Apple Inc. | SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT |
DK201770431A1 (en) | 2017-05-15 | 2018-12-20 | Apple Inc. | Optimizing dialogue policy decisions for digital assistants using implicit feedback |
EP4254337A1 (de) | 2023-01-17 | 2023-10-04 | University of Maribor | Verfahren zur kodierung und dekodierung binärer bilder unter verwendung von kettenkoden |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5619657B2 (de) * | 1973-09-10 | 1981-05-08 | ||
GB1517869A (en) * | 1976-12-20 | 1978-07-12 | Ibm | Image encoding apparatus |
JPS5851388A (ja) * | 1981-09-22 | 1983-03-26 | Ricoh Co Ltd | 方向コ−ド割付け方法 |
DE3381833D1 (de) * | 1982-03-31 | 1990-10-04 | Gen Electric | Verfahren und geraet zur sehbildverarbeitung und zur eckpunktsortierung in einem sehbild-verarbeitungssystem. |
JPS5930179A (ja) * | 1982-08-10 | 1984-02-17 | Agency Of Ind Science & Technol | パタ−ンの線分近似方式 |
GB8311813D0 (en) * | 1983-04-29 | 1983-06-02 | West G A W | Coding and storing raster scan images |
US4628532A (en) * | 1983-07-14 | 1986-12-09 | Scan Optics, Inc. | Alphanumeric handprint recognition |
JPS60136892A (ja) * | 1983-12-26 | 1985-07-20 | Hitachi Ltd | オンライン手書き図形認識装置 |
JPS6282486A (ja) * | 1985-10-08 | 1987-04-15 | Hitachi Ltd | オンライン手書き図形認識装置 |
-
1988
- 1988-12-30 EP EP88121903A patent/EP0375805B1/de not_active Expired - Lifetime
- 1988-12-30 US US07/292,309 patent/US5007098A/en not_active Expired - Lifetime
- 1988-12-30 DE DE3853885T patent/DE3853885T2/de not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
US5007098A (en) | 1991-04-09 |
EP0375805B1 (de) | 1995-05-24 |
DE3853885D1 (de) | 1995-06-29 |
EP0375805A1 (de) | 1990-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3853885T2 (de) | Vektorisationsverfahren. | |
EP0409310B1 (de) | Verfahren sowie Anordnung zum Bestimmen von Kanten in Bildern | |
DE69026041T2 (de) | Identifikation, Kennzeichnung und Segmentierung der halbtongerasterten oder punktierten Bereiche eines Binärbildes | |
DE68914528T2 (de) | Bildsignalverarbeitungsvorrichtung für Strichkodebildsignale. | |
DE69230633T2 (de) | Verfahren zur Ermittlung von Wortformen zum folgenden Vergleich | |
DE69433492T2 (de) | Verfahren und Vorrichtung zum Dekodieren von Streifencodes durch unabhängige Analyse von Streifen und Zwischenräumen | |
DE2557553C2 (de) | Maschinelles Verfahren zur Verdichtung und -Wiederausdehnung eines beliebigen Schwarzweiß-Bildes und Einrichtung zur Durchführung des Verfahrens | |
DE69434131T2 (de) | Vorrichtung zur Segmentierung von aus Texturen bestehenden Bildern | |
DE19814075B4 (de) | Verfahren zum Abtasten und Erkennen mehrerer Fotografien und zum Beseitigen von Randfehlern | |
DE69327928T2 (de) | Vorrichtung zur Kodierung von unbeweglichen Bildern | |
DE60003032T2 (de) | Verfahren zur bildsegmentation | |
DE2432129C3 (de) | Verfahren zum maschinellen Lesen von Zeichen und Vorrichtung zur Durchführung des Verfahrens | |
DE3342947C2 (de) | System zur Verarbeitung eines grafischen Musters | |
DE60028584T2 (de) | System und methode zur bildinterpolation | |
DE3633743A1 (de) | Zeichenerkennungssystem | |
DE3685571T2 (de) | Verfahren zum ueberbruecken von luecken zwischen konturelementen in einem bild. | |
DE2752421A1 (de) | Anordnung fuer die abtastung und digitalisierung von grafischen darstellungen oder daten | |
DE4005492A1 (de) | Bildcodierverfahren | |
DE102008013789A1 (de) | Vorrichtung, Verfahren und Programm zum Eliminieren von Zeichenstörungen | |
DE69309823T2 (de) | Verfahren und Apparat zum Erzeugen einer Mustereinheit auf einem Druckzylinder zum Drucken eines endlosen Musters | |
DE2435982A1 (de) | Verfahren und vorrichtung zur verarbeitung von durch abtastung eines mehrfarbigen musters erhaltenen informationen | |
DE3923914C2 (de) | Verfahren zum Extrahieren von Merkmalsgrößen eines Zeichens | |
DE3524505A1 (de) | Bilderkennungsvorrichtung | |
DE3811396C2 (de) | ||
DE19711873C2 (de) | Verfahren und Vorrichtung zum Lesen eines Strichcodes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: YOZAN INC., TOKIO/TOKYO, JP SHARP K.K., OSAKA, JP |
|
8327 | Change in the person/name/address of the patent owner |
Owner name: YOZAN, INC., TOKIO/TOKYO, JP SHARP K.K., OSAKA, JP |