DE3788264T2 - Verfahren und Gerät zur selbsttätigen Unterscheidung von strichkodierten Daten. - Google Patents
Verfahren und Gerät zur selbsttätigen Unterscheidung von strichkodierten Daten.Info
- Publication number
- DE3788264T2 DE3788264T2 DE87308618T DE3788264T DE3788264T2 DE 3788264 T2 DE3788264 T2 DE 3788264T2 DE 87308618 T DE87308618 T DE 87308618T DE 3788264 T DE3788264 T DE 3788264T DE 3788264 T2 DE3788264 T2 DE 3788264T2
- Authority
- DE
- Germany
- Prior art keywords
- ratio
- bar code
- bar
- space
- data
- 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 - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 43
- 238000000691 measurement method Methods 0.000 claims 1
- 230000000295 complement effect Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/10544—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum
- G06K7/10821—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum further details of bar or optical code scanning devices
- G06K7/10851—Circuits for pulse shaping, amplifying, eliminating noise signals, checking the function of the sensing device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/14—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/14—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
- G06K7/1404—Methods for optical code recognition
- G06K7/1439—Methods for optical code recognition including a method step for retrieval of the optical code
- G06K7/1443—Methods for optical code recognition including a method step for retrieval of the optical code locating of the code in an image
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Electromagnetism (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Toxicology (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Record Information Processing For Printing (AREA)
- Devices For Checking Fares Or Tickets At Control Points (AREA)
- Machine Tool Sensing Apparatuses (AREA)
- Control Of Vending Devices And Auxiliary Devices For Vending Devices (AREA)
- Sorting Of Articles (AREA)
- Labeling Devices (AREA)
- Discharge Of Articles From Conveyors (AREA)
- Automatic Analysis And Handling Materials Therefor (AREA)
- Cash Registers Or Receiving Machines (AREA)
- Character Discrimination (AREA)
- Printers Characterized By Their Purpose (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Crystals, And After-Treatments Of Crystals (AREA)
Description
- Die Erfindung betrifft allgemein ein verbessertes Verfahren und eine Vorrichtung zur selbständigen Erkennung, spezieller ein Verfahren und eine Vorrichtung zum Ermitteln des Orts von Strichcodedaten und zum unterscheiden zwischen mehreren schnell abgerasterten Strichcodes.
- Strichcodesymbole, die aus einem streifen abwechselnder dunkler Striche und heller Zwischenräume bestehen, sowie Strichcodescanner zum Lesen von Strichcodes werden in vielen Industriezweigen für eine Vielzahl von Aufgaben eingesetzt. Es existiert eine große Anzahl verschiedener Strichcodestandards. Z. B. werden die folgenden Codes mit weiter Verbreitung verwendet: Code 128, codabar, UPC/EAN, Code 11, Code 93, Interleaved 2 of 5 sowie Code 3 of 9. Damit ein Strichcodescanner allgemein anwendbar ist, sollte er dazu in der Lage sein, zwischen mehreren verschiedenen Strichcodeformaten unterscheiden zu können, und er sollte dies auf schnelle Weise können.
- In Zusammenhang mit dem Decodieren von Daten in einem Strichcode ist selbständige Erkennung der Prozeß zum Unterscheiden eines Strichcodetyps von einem anderen. Typischerweise erfolgt die tatsächliche Unterscheidung auf Grundlage eines empirischen Verfahrens, wobei die vorherrschenden Strichcodetypen als Erste durchprobiert werden.
- Typischerweise wird dann, wenn ein Strichcode abgerastert wird, ein Impulszug erzeugt, der die dunklen und hellen Bereiche des Strichcodes repräsentiert. Der Impuls muß zunächst in binäre Daten umgewandelt werden, bevor ein Decodieren stattfinden kann. Bei einer bekannten Technik wird ein Mikroprozessor dazu verwendet, die Dauer jedes Impulses zeitlich zu steuern. Der Mikroprozessor ist mit einer Softwareschleife programmiert, die die Länge jedes Impulses mißt. Immer dann, wenn der Mikroprozessor einen Polaritätswechsel feststellt, wird die Dauer des Impulses abgespeichert, und die Schleife wird rückgesetzt, um den nächsten Impuls zu zählen. Wenn ein Rastervorgang vollständig ist, werden die abgespeicherten Binärdaten decodiert. Das Decodieren muß vor dem nächsten Rastervorgang abgeschlossen sein.
- Unter Verwendung dieser Technik wird die gesamte Zeit des Mikroprozessors dafür verwendet, den Impulszug zeitlich zu steuern; die gesammelten Daten können nur in der Zeitspanne zwischen Rastervorgängen decodiert werden. Bei einem Strichcodeleser mit Handbetrieb ist die Zeitspanne zwischen von Hand ausgeführten Rastervorgängen im allgemeinen lange genug, um selbständige Erkennung von Strichcodes unter Verwendung der obigen Technik auszuführen. Wenn ein automatischer Scanner verwendet wird, ist jedoch die Zeitspanne zwischen Rastervorgängen viel kürzer und kann nicht ausreichend lang dafür sein, um mehrere Strichcodetypen selbständig zu erkennen.
- Zusätzlich muß, bevor ein Strichcode decodiert werden kann, der Startpunkt für den Code aufgefunden werden. Wenn ein Strichcode abgerastert wird, kann auch jedes andere Druckerzeugnis nahe dem Strichcode abgerastert und zusammen mit dem Strichcode in einem Puffer abgespeichert werden, in dem Daten des Rastervorgangs abgespeichert sind. Der Startpunkt kann im Strichcodepuffer hinter nicht zutreffenden Daten vergraben liegen. Jedoch müssen alle Strichcodes definitionsgemäß Raumbereiche aufweisen, die direkt vor und hinter dem Strichcode liegen. Diese Raumbereiche werden als Ränder bezeichnet.
- Die Minimalrandgrößen, wie sie in der Spezifikation für jeden Strichcodetyp beschrieben ist, ist im allgemeinen das Zehnfache der minimalen Elementbreite dieses Strichcodes. Wenn mehr als ein Strichcodetyp durch einen Strichcodescanner abgerastert und decodiert werden kann, wird ein Gesamtminimalrand für einen Strichcode als kleinster Raumbereich festgelegt, der als Rand für einen der Strichcodetypen angesehen werden kann. Z. B. weist ein Strichcodetyp A eine minimale Elementbreite von 0,0100 Zoll und einen minimalen Rand von 0,1 Zoll auf (1 Zoll entspricht 2,54 cm). Ein Strichcodetyp B weist eine Minimalelementbreite von 0,105 Zoll und einen Minimalrand von 0,105 Zollauf. Der Gesamtminimalrand für einen Strichcodescanner zum Abrastern der Strichcodetypen A und B ist 0,1 Zoll; das Zehnfache der kleinsten Minimalelementbreite des Strichcode A. Jedoch ist ferner zu beachten, daß die Elementgröße durch den Abstand beeinflußt sein kann, aus dem der Strichcode abgerastert wird. Die Elemente erscheinen schmaler, wenn der Strichcodescanner weiter weg über den Strichcode bewegt wird. Um dies zu berücksichtigen, wird die Gesamtminimalrandgröße als das Zehnfache des schmalsten Elements berechnet, wenn dieses aus dem weitesten Abstand gerastert wird, mit dem es gerastert werden kann. Jeder Raumbereich, der größer als dieses Maß ist, ist ein Kandidat für einen Rand.
- Ein weiteres Problem entsteht dann, wenn es erwünscht ist, einen Strichcodetyp mit einem relativ breiten Minimalelement zu decodieren. Wenn ein solcher Code aus kleinem Abstand abgerastert wird, ist der Minimalrand viel größer als der Gesamtminimalrand. Ein Zwischenraum mit einer Breite über dem Gesamtminimalrand, der jedoch nicht als Möglichkeit für einen Rand dieses Strichcodetyps in Frage kommt, kann beim Decodieren als Startpunkt versucht werden. Daraus resultieren geringere als erwünschte Erfolgsraten beim Decodieren solcher Strichcodes.
- Die Erfolgsrate kann auch durch die Anzahl und die Unterschiede der abzurasternden Strichcodetypen beeinflußt sein. Geräte zum Decodieren zweier Strichcodetypen mit ähnlichen Minimalelementbreiten sollten ungefähr dieselbe Erfolgsrate beim Auffinden eines Randes haben, wie sie vorliegt, wenn dasselbe Gerät zum Decodieren nur eines der beiden ähnlichen Minimalbreiten-Strichcodes verwendet wird. Wenn jedoch das Gerät für einen dritten Strichcodetyp mit einer viel schmäleren Minimalbreite ausgebildet ist, als sie der Minimalbreite der zwei ähnlichen Strichcodes entspricht, ist die Erfolgsrate zum Auffinden eines gültigen Randes für die ersten zwei Typen verringert. Wenn noch mehr Strichcodetypen hinzugefügt werden, kann die Erfolgsrate zum Auffinden eines Randes noch weiter abgesenkt werden.
- Eine geringe Erfolgsrate führt zu einem Geschwindigkeitsproblem, d. h., daß dann, wenn die Zeit zum Auffinden des Randes, damit das Decodieren beginnen kann, zu lange wird, der gesamte Decodierprozeß zu lange dauern kann.
- US-A-3,882,464 zeigt einen Strichcodedecoder mit einem Paar Zeitgeber zur zeitlichen Steuerung der Dauer abgerasteter Striche und Zwischenräume und mit einer Logikschaltung zum Ermitteln, ob die Dauern für einen Zwischenraum und einen Strich in einem vorgegebenem Verhältnis von 2 : 1 liegen.
- Die Erfindung ist durch die Ansprüche festgelegt. Allgemein gesagt, begrenzt das erfindungsgemäße Verfahren zum selbständigen Erkennen von Strichcodedaten die Anzahl von Strichcodes, die zu Vergleichszwecken durchprobiert werden müssen, und zwar durch die folgenden Schritte: Abspeichern von den Zwischenraum- und Strichbreiten entsprechenden Daten eines abgerasterten Strichcodes von unbekanntem Formattyp in einem Speicher; Abrufen von Breitedaten für einen ersten Zwischenraum aus dem Speicher; Abrufen von Breitedaten für einen ersten Strich, der dem ersten Zwischenraum folgt, aus dem Speicher; Berechnen eines ersten Verhältnisses für die Breitedaten für den ersten Zwischenraum und den ersten Strich; Vergleichen des ersten Verhältnisses mit einer ersten vorgegebenen Zahl; und Ermitteln, aufgrund des Vergleichs, ob der erste Zwischenraum ein Strichcoderand ist oder nicht. Wenn der erste Zwischenraum ein Strichcoderand ist, wird die Randbreite (in Form des Verhältnisses) dazu verwendet, bestimmte Strichcodetypen auszuschließen, was die Anzahl von Typkandidaten verringert, zwischen denen beim Decodieren auszuwählen ist.
- Es wird auch ein zugehöriges Gerät angegeben.
- Zusätzliche Einzelheiten, Merkmale und Vorteile der Erfindung werden aus den Zeichnungen und der nachfolgenden detaillierten Diskussion deutlich.
- Fig. 1 ist ein Schaltbild, das eine erfindungsgemäße Interruptverarbeitungstechnik veranschaulicht;
- Fig. 2 ist ein Flußdiagramm, das erfindungsgemäße Interruptverarbeitungstechniken veranschaulicht;
- Fig. 3 ist ein Flußdiagramm, das die erfindungsgemäße selbständige Erkennungstechnik veranschaulicht.
- Bei einem automatischen Strichcodescanner, wie dem in EP-A- 0 262 943 diskutierten Strichcodescanner, wird ein Strahl typischerweise in mehr oder weniger kontinuierlicher Weise für eine festgelegte Zeitspanne oder eine Anzahl von Durchläufen von einer Seite auf die andere abgelenkt oder durchgerastert. Das reflektierte Licht wird gesammelt und so verarbeitet, daß ein Impulszug erzeugt wird, der für die dunklen und hellen Bereiche auf der abgerasterten Fläche repräsentativ ist. Dieser Impulszug muß in die Form binärer Daten umgewandelt werden, um von einem Mikroprozessor decodiert werden zu können.
- Eine bekannte Weise, um dies vorzunehmen, ist es, den Impulszug durch einen Mikroprozessor zu beobachten und mit einer softwareschleife, die den Wert für jeden Polaritätswechsel abspeichert, eine "Zeitmessung" für die Impulsdauern vorzunehmen. Dies erfordert jedoch die gesamte Zeit des Prozessors.
- Die Erfindung gibt einen Lösungsweg an, der den Prozessor unter Verwendung der Hardwarezeitgeber und der Interruptmöglichkeiten des Mikroprozessors "befreit". Es ist zu beachten, daß diese Hardwarezeitgeber dazu in der Lage sind, zeitliche Inkremente mit viel kürzerem Wert zu messen, als er der Dauer des kleinsten abzurasternden Zwischenraums oder Strichs entspricht. Wenn der Impulszug und sein Komplementärwert, die Zwischenräume und Striche repräsentieren, den zwei Interruptpins des Mikroprozessors zugeführt werden (die auch die internen Zeitgeber des Mikroprozessors auftasten), kann die Zeit zwischen Impulsübergängen dafür verwendet werden, andere Softwareaufgaben wahrzunehmen, während die Hardware die Dauer des eingehenden Signals "zeitlich mißt". Diese "Zeitmessung" mißt die relativen Breiten der Striche und Zwischenräume. Wenn die Signalpolarität wechselt, hält ein Zeitgeber an und der andere beginnt, und es wird ein Interrupt erzeugt. Dieser Prozeß hängt davon ab, daß relativ gleichförmige Rastergeschwindigkeiten aufrechterhalten werden. Die Interruptroutine liest einfach den angehaltenen Zeitgeber aus, speichert den Datenwert ab und löscht den angehaltenen Zeitgeber, um ihn für den nächsten Zyklus bereitzumachen. Bei geeigneter Ausgestaltung kann der Prozessor die "freie" Zeit zwischen Zustandsänderung dafür verwenden, die zuletzt gesammelten Daten während des Aufzeichnens der aktuellen Daten in Echtzeit zu decodieren.
- Fig. 1 veranschaulicht die erfindungsgemäße Interrupt-Verarbeitungstechnik. Fig. 1 zeigt die Hardwareinterruptpins, Interrupt 0 und Interrupt 1 eines Mikroprozessors 10. Sie zeigt auch einen Taktgeber 11, UND-Gatter 12-13, einen Zeitgeber 0 und einen Zeitgeber 1, die alle innere Komponenten sind, die im Mikroprozessor 10 untergebracht sind. Ein für Strichcode-Digitaldaten repräsentativer Impulszug 1, wie er zu decodieren ist, ist über einen Inverter 5 an Interrupt 0 angeschlossen, und dieser Impulszug 1 ist direkt an Interrupt 1 angeschlossen.
- Der vorstehend beschriebene Anschluß des Mikroprozessors 10 an den Impulszug 1 wird dazu verwendet, den Impulszug zeitlich zu steuern. Der Impulszug 1 wird dem Eingang eines der Interruptpins des Prozessors zugeführt, dem Interrupt 1. Der Komplementärwert des Impulszugs wird dem zweiten Interruptpin, also Interrupt 0, zugeführt. Diese Interrupts sind für Kantentriggerung programmiert.
- Wie im Flußdiagramm von Fig. 2 veranschaulicht, tasten die Interruptpins die internen Zeitgeber des Mikroprozessors, den Zeitgeber o und den Zeitgeber 1, auf. Wenn der Impulszug auf niedrigen Pegel geht, läuft der Zeitgeber 0, und ein Interrupt tritt am Interrupt 1 auf. Die Interruptroutine speichert den Wert des Zeitgebers 1 ab und setzt ihn zurück. Wenn der Impulszug auf hohen Pegel geht, läuft der Zeitgeber 1, und ein Interrupt tritt am Interrupt 0 auf. Die Interruptroutine speichert den Wert des Zeitgebers 0 ab und setzt ihn zurück.
- Da die tatsächliche zeitliche Steuerung des Impulszugs 1 durch Hardware vorgenommen wird, ist der Zeitraum, in dem sich der Mikroprozessor 10 dem Decodieren widmen kann, stark erhöht. Die Datenerfassung erfordert Prozessorzeit nur beim Auftreten eines Interrupts, anders gesagt dann, wenn eine Änderung im Zustand des Impulszugs 1 auftritt. Während der Impulszug entweder dauernd auf hohem oder auf niedrigem Wert ist, ist der Mikroprozessor 10 frei, um die während eines vorangehenden Rastervorgangs erfaßten Daten zu decodieren.
- Bevor die unter Verwendung des obigen Verfahrens erfaßten Strichcodedaten decodiert werden können, ist es erforderlich, zu bestimmen, wo aktuelle Strichcodedaten beginnen und welcher Typ von mehreren Strichcodetypen abgerastert wurde. Um die Probleme der selbständigen Erkennung voll würdigen zu können, müssen einige Tatsachen bekannt sein. Ein Strichcode wird im allgemeinen abgerastert, während er von anderen Druckerzeugnissen umgeben ist, und demgemäß beinhalten die zu decodierenden Strichcodedaten sowohl irrelevante Daten als auch tatsächliche Strichcodedaten. Die irrelevanten Daten müssen zusammen mit den tatsächlichen Strichcodedaten ausgewertet werden. Geschwindigkeit kann ein wesentlicher Gesichtspunkt sein, da ein Scanner einen Durchlauf über einen Strichcode über etwa 40 ms abschließen kann. Demgemäß sind 40 ms abzüglich der Datenerfassungszeit die gesamte Zeit, die zum Decodieren zur Verfügung steht. Ferner kann es erforderlich sein, mindestens sieben Codetypen selbständig zu erkennen.
- Abgerasterte Daten werden typischerweise in einem Pufferspeicher abgelegt. Alle weitverbreiteten Strichcodes erfordern einen Minimalzwischenraum auf beiden Seiten des Strichcode, der im allgemeinen dem Zehnfachen der Minimalelementgröße entspricht. Dieser Minimalzwischenraum wird "Rand" genannt. Wenn ein Rand lokalisiert wurde, kann daraufhin ein Versuch unternommen werden, die auf ihn folgenden Elemente in einen gültigen Strichcode zu decodieren.
- Eine bekannte Technik zum Identifizieren möglicher Ränder oder Randkandidaten ist es, die Daten für irgendeinen Zwischenraum zu durchsuchen, der größer als ein spezieller Wert ist, jedoch ist dies eine grobe Technik, da die Abrastergeschwindigkeit und der Abstand vom Ziel die Relativgröße der Daten verändert. Die aktuelle Technik dient dazu, die Dauer eines Kandidatenzwischenraums durch die Dauer des im folgenden Strichs zu teilen. Das sich ergebende Verhältnis kann dazu verwendet werden, nicht nur zu entscheiden, ob es sich um einen gültigen Randkandidaten handelt, sondern in manchen Fällen kann es auch bestimmte Strichcodetypen ausschließen, wodurch der Prozeß der selbständigen Erkenntnis beschleunigt wird.
- Die Grundlage für die neue Technik ist das Verhältnis der minimalen Randgröße zum Maximum der ersten oder letzten Strichgröße. Die erste und die letzte Strichgröße wird verwendet, da der Strichcode in beliebiger Richtung abgerastert werden kann. Die Erfindung wird weiter unten in Zusammenhang mit dem selbständigen Erkennen von sieben derzeit üblicherweise verwendeten Strichcodeformaten erörtert. Es ist zu beachten, daß die Lehre der Erfindung nicht auf diese speziellen Strichcodes beschränkt ist.
- Die Verhältnisse für sieben übliche Strichcodetypen sind untenstehend dargestellt. Durch Versuche werden die Verhältnisse so eingestellt, daß sie Schwankungen in den gemessenen Strichen und Zwischenräumen aufgrund von Fehlern zulassen, wie sie durch Schwankungen in der Rastergeschwindigkeit, Schwankungen für Strichcodes, die auf unebener Oberfläche abgerastert werden, Schwankungen im Strichcodedruck und dergleichen verursacht werden. Die folgenden Schlüsse werden zwischen Verhältnissen und Strichcodetypen gezogen:
- Verhältnis Strichcodetyp
- < 3 der Zwischenraum kann kein Rand sein
- > = 3 & < 4 Code 128 oder Codabar
- > = 3 & < 6 UPC/EAN, Code 128 oder Codabar
- > = 6 UPC/EAN, Code 128, Codabar, Code 11, Code 93, Interleaved 2 or 5, Code 3 of 9
- Wenn das Verhältnis kleiner als drei ist, kann der Zwischenraum kein Rand sein. Wenn das Verhältnis größer als drei und kleiner als vier ist, kann der Zwischenraum ein Rand nur für den Code 128 oder den Codabar-Strichcode sein. Wenn das Verhältnis größer als 3 und kleiner als 6 ist, kann der Zwischenraum ein Rand nur für den Strichcode UPC/EAN, Codabar oder Code 128 sein. Ein Verhältnis größer oder gleich 6 bedeutet, daß der Zwischenraum ein Rand für einen beliebigen der sieben Strichcodetypen sein kann.
- Fig. 1 zeigt einen mit einem Puffer 20 verbundenen Mikroprozessor 10. Der Puffer 20 speichert Decodierdaten für verschiedene Strichcodes ab, wie auch die zu decodierenden Strichcodedaten. Fig. 3 ist ein Flußdiagramm, das das aktuelle Verfahren zum selbständigen Erkennen der im Puffer 20 abgespeicherten Strichcodedaten veranschaulicht, wenn es auf das Decodieren der folgenden sieben Strichcodes angewandt wird: Code 128, Codabar, UPC/EAN, Code 11, Code 93, Interleaved 2 of 5 oder Code 3 of 9.
- Der Prozeß beginnt damit, daß der Mikroprozessor 10 den nächsten Zwischenraum mit einer Dauer A aus dem Puffer 20 abruft. Dann wird der nächste Strich mit der Dauer B aus dem Puffer 20 abgerufen. Anschließend wird ermittelt, ob das Ende der Daten im Puffer 20 erreicht wurde, was dadurch erfolgt, daß nachgeprüft wird, ob die Strichdauer B = 0 ist. Ist dies nicht der Fall, wird das Verhältnis C der Zwischenraumdauer A zur Strichdauer B berechnet. Wenn z. B. A = 10 und B = 3 sind, wird A geteilt durch B = C = 3.3 berechnet. Zum Vereinfachen der Berechnung kann das Verhältnis in seinen ganzzahligen Teil gerundet werden. Das Rundungsergebnis ist C = 3.
- Der nächste Schritt ist es, das Verhältnis C mit einer vorgegebenen Zahl, in diesem Fall 3, zu vergleichen. Wenn das Verhältnis C kleiner als 3 ist, wird erkannt, daß der Zwischenraum kein Rand ist, und der Prozeß geht dazu über, zum Schritt des Abrufens der nächsten Zwischenraumdauer aus dem Puffer 20 zurückzukehren. Wenn das Verhältnis 10 nicht kleiner als 3 ist, ist es der nächste Schritt, danach zu schauen, ob das Verhältnis C kleiner als eine zweite vorgegebene Zahl, in diesem Fall 4, ist.
- Wenn das Verhältnis kleiner als 4 ist, überprüft der Mikroprozessor 10 die im Puffer 20 abgespeicherten Daten, um zu erkennen, ob es sich um den Code 128 oder den Code Codabar handelt, und wenn es einer dieser Codes ist, werden die Daten decodiert. Wenn das Verhältnis 10 nicht kleiner als 4 ist, ist es der nächste Schritt, das Verhältnis C mit einer dritten vorgegebenen Zahl, in diesem Fall 6, zu vergleichen.
- Wenn das Verhältnis C kleiner als 6 ist, versucht der Mikroprozessor 10, die Daten im Puffer 20 nur mit den Codes UPC/EAN, Code 128 oder Codabar zu decodieren. Schließlich versucht der Mikroprozessor 10 dann, wenn das Verhältnis C nicht kleiner als 6 ist, die Daten unter Verwendung aller sieben Strichcodetypen zu decodieren.
Claims (13)
1. Verfahren zum Reduzieren der Anzahl von Kandidaten von
Strichcodeformattypen aus einem vorgegebenen Satz von
Kandidatentypen, zur Verwendung beim Decodieren von
Strichcodedaten, mit den folgenden Schritten:
(a) Abspeichern von den Zwischenraum- und Strichbreiten
entsprechenden Daten eines abgerasterten Strichcodes von
unbekanntem Formattyp in einem Speicher;
(b) Abrufen von Breitedaten (A) für einen ersten
Zwischenraum aus dem Speicher;
(c) Abrufen von Breitedaten (B) für einen ersten Strich, der
dem ersten Zwischenraum folgt, aus dem Speicher;
(d) Berechnen eines ersten Verhältnisses (C) für die
Breitedaten für den ersten Zwischenraum und den ersten Strich;
(e) Vergleichen des ersten Verhältnisses mit einer ersten
vorgegebenen Zahl;
(f) Ermitteln, aufgrund des Vergleichs zwischen dem ersten
Verhältnis und der ersten, vorgegebenen Zahl, ob der erste
Zwischenraum ein Strichcoderand ist oder nicht; und
(g) Ausschließen, wenn sich herausstellt, daß der erste
Zwischenraum ein Strichcoderand ist, von
Kandidaten-Strichcodeformattypen abhängig vom ersten Verhältnis.
2. Verfahren nach Anspruch 1, bei dem der Schritt des
Vergleichens des ersten Verhältnisses mit einer ersten
vorgegebenen Zahl ferner den Schritt des Ermittelns aufweist, ob
das Verhältnis kleiner als die erste vorgegebene Zahl ist.
3. Verfahren nach Anspruch 2, das ferner die folgenden
Schritte aufweist:
- Vergleichen des ersten Verhältnisses (C), um zu erkennen,
ob es kleiner als eine zweite vorgegebene Zahl ist, wenn das
erste Verhältnis nicht kleiner als die erste vorgegebene
Zahl ist; und
- Decodieren der Strichcodedaten so, als seien sie von einem
ersten vorgegebenen Codetyp, wenn das erste Verhältnis
kleiner als die zweite vorgegebene Zahl ist.
4. Verfahren nach Anspruch 3, das ferner die folgenden
Schritte aufweist:
- Vergleichen des ersten Verhältnisses (C), um zu erkennen,
ob es kleiner als eine dritte vorgegebene Zahl ist, wenn das
erste Verhältnis nicht kleiner als die zweite vorgegebene
Zahl ist; und
- Decodieren der Strichcodedaten so, als seien sie von einem
zweiten vorgegebenen Codetyp, wenn das erste Verhältnis (C)
kleiner als die dritte vorgegebene Zahl ist.
5. Verfahren nach Anspruch 4, ferner mit dem Schritt des
Decodierens der Strichcodedaten so, als seien sie von einem
dritten vorgegebenen Codetyp, wenn das erste Verhältnis (C)
nicht kleiner als die dritte vorgegebene Zahl ist.
6. Verfahren nach einem der Ansprüche 1 bis 5, ferner mit
dem Schritt des Wiederholens der Verfahrensschritte außer
dem Schritt (a) durch Abrufen von Breitedaten für einen
zweiten Zwischenraum und einen zweiten Strich, der auf den
zweiten Zwischenraum folgt, und des Berechnens einen zweiten
Verhältnisses, wenn das erste Verhältnis kleiner als die
erste vorgegebene Zahl ist.
7. Verfahren nach Anspruch 1, bei dem die erste
vorgegebene Zahl 3 ist.
8. Verfahren nach Anspruch 3, bei dem die zweite
vorgegebene Zahl 4 ist.
9. Verfahren nach Anspruch 4, bei dem die dritte
vorgegebene Zahl 6 ist.
10. Verfahren nach Anspruch 4, bei dem der erste
vorgegebene Codetyp mindestens den Code 128 und den Code Codabar
umfaßt.
11. Verfahren nach Anspruch 4, bei dem der zweite
vorgegebene Codetyp mindestens die Codes Code 128, Codabar und
UPC/EAN umfaßt.
12. Verfahren nach Anspruch 1, das ferner den Schritt des
Messens von Zwischenraum- und Strichdaten unter Verwendung
einer durch einen Interrupt betriebenen Meßtechnik mißt.
13. Strichcode-Decodiergerät, das folgendes aufweist:
- eine Einrichtung zum Abrastern eines Strichcodes;
- eine Speichereinrichtung (20) zum Abspeichern von Daten,
die den Zwischen- und Strichbreiten des abgerasterten
Strichcodes entsprechen;
- eine Einrichtung zum Abrufen von Breitedaten (A) für einen
ersten von der Abrastereinrichtung abgerasterten
Zwischenraum aus der Speichereinrichtung (20);
- eine Einrichtung zum Abrufen von Breitedaten (B) für einen
ersten Strich, der dem ersten Zwischenraum folgt, aus der
Speichereinrichtung (20); und
- eine Einrichtung (10) zum Berechnen eines ersten
Verhältnisses (C), der Breitedaten für den ersten Zwischenraum und
den ersten Strich und zum Vergleichen des ersten
Verhältnisses mit einer vorgegebenen Zahl und zum Ermitteln, auf
Grundlage des Vergleichs des ersten Verhältnisses (C) mit
der vorgegebenen Zahl, ob der erste Zwischenraum ein
Strichcoderand ist oder nicht, und Reduzieren, wenn sich
herausstellt, daß der erste Zwischenraum ein Strichcoderand ist,
der Anzahl von Kandidaten von Strichcodetypen auf Grundlage
des ersten Verhältnisses (C) und Decodieren der
abgerasterten Strichcodedaten unter Verwendung der reduzierten Anzahl
von Kandidaten-Strichcodetypen.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US06/913,098 US4782220A (en) | 1986-09-29 | 1986-09-29 | Method and apparatus for bar code data autodiscrimination |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3788264D1 DE3788264D1 (de) | 1994-01-05 |
DE3788264T2 true DE3788264T2 (de) | 1994-03-17 |
Family
ID=25432925
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE87308618T Expired - Fee Related DE3788264T2 (de) | 1986-09-29 | 1987-09-29 | Verfahren und Gerät zur selbsttätigen Unterscheidung von strichkodierten Daten. |
Country Status (14)
Country | Link |
---|---|
US (1) | US4782220A (de) |
EP (1) | EP0262924B1 (de) |
JP (1) | JP3004017B2 (de) |
KR (1) | KR880701924A (de) |
AT (1) | ATE97754T1 (de) |
AU (1) | AU597443B2 (de) |
BR (1) | BR8707477A (de) |
CA (1) | CA1293326C (de) |
DE (1) | DE3788264T2 (de) |
DK (1) | DK291888A (de) |
ES (1) | ES2046205T3 (de) |
IE (1) | IE872620L (de) |
MX (1) | MX160169A (de) |
WO (1) | WO1988002521A1 (de) |
Families Citing this family (60)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4879456A (en) * | 1987-06-18 | 1989-11-07 | Spectra-Physics, Inc. | Method of decoding a binary scan signal |
US4855581A (en) * | 1988-06-17 | 1989-08-08 | Microscan Systems Incorporated | Decoding of barcodes by preprocessing scan data |
US5235167A (en) * | 1988-10-21 | 1993-08-10 | Symbol Technologies, Inc. | Laser scanning system and scanning method for reading bar codes |
US4933538A (en) * | 1988-10-21 | 1990-06-12 | Symbol Technologies, Inc. | Scanning system with adjustable light output and/or scanning angle |
US5486944A (en) * | 1989-10-30 | 1996-01-23 | Symbol Technologies, Inc. | Scanner module for symbol scanning system |
US5229591A (en) * | 1988-10-21 | 1993-07-20 | Symbol Technologies, Inc. | Scanning system with adjustable light output and/or scanning angle |
US5811785A (en) * | 1988-10-21 | 1998-09-22 | Symbol Technologies, Inc. | Scanning system with adjustable light output and/or scanning angle |
DE69022533T2 (de) * | 1989-05-17 | 1996-02-01 | Fujitsu Ltd | Strichcode-leseverfahren und -vorrichtungen. |
US5051567A (en) * | 1989-06-13 | 1991-09-24 | Rjs, Inc. | Bar code reader to read different bar code formats |
US5495097A (en) * | 1993-09-14 | 1996-02-27 | Symbol Technologies, Inc. | Plurality of scan units with scan stitching |
US5241164A (en) * | 1990-01-05 | 1993-08-31 | Symbol Technologies, Inc. | Method of decoding bar code symbols from partial scans |
JP2776035B2 (ja) * | 1991-02-18 | 1998-07-16 | 富士通株式会社 | バーコード読取装置 |
JPH04283885A (ja) * | 1991-03-13 | 1992-10-08 | Alps Electric Co Ltd | 自動識別デコード装置 |
US5196684A (en) * | 1991-03-25 | 1993-03-23 | Opticon, Inc. | Method and apparatus for improving the throughput of a CCD bar code scanner/decoder |
US5231293A (en) * | 1991-10-31 | 1993-07-27 | Psc, Inc. | Bar code reading instrument which prompts operator to scan bar codes properly |
JP2755516B2 (ja) * | 1992-03-10 | 1998-05-20 | アルプス電気株式会社 | 自動識別デコード装置 |
AU655800B2 (en) * | 1992-03-16 | 1995-01-12 | Symbol Technologies, Inc. | Systems for encoding and decoding data in machine readable graphic form |
US5449893A (en) * | 1992-04-02 | 1995-09-12 | Symbol Technologies, Inc. | Digitizer for bar code reader |
US5734152A (en) * | 1995-05-31 | 1998-03-31 | Symbol Technologies, Inc. | Optical scanners and signal processors therefor |
US6164540A (en) | 1996-05-22 | 2000-12-26 | Symbol Technologies, Inc. | Optical scanners |
US5302813A (en) * | 1992-04-02 | 1994-04-12 | Symbol Technologies, Inc. | Multi-bit digitizer |
US6082621A (en) * | 1992-04-02 | 2000-07-04 | Symbol Technologies, Inc. | Interface between threshold processing digitizer for bar code reader |
US6170749B1 (en) | 1995-05-31 | 2001-01-09 | Symbol Technologies, Inc. | Method of scanning indicia using selective sampling |
US5486689A (en) * | 1993-01-22 | 1996-01-23 | Intermec Corporation | Method and apparatus for decoding unresolved multi-width bar code symbology profiles |
AU681421B2 (en) * | 1993-09-14 | 1997-08-28 | Symbol Technologies, Inc. | Bar code scan stitching |
US5457308A (en) * | 1993-09-14 | 1995-10-10 | Symbol Technologies, Inc. | Bar code scan stitching |
US5481098A (en) * | 1993-11-09 | 1996-01-02 | Spectra-Physics Scanning Systems, Inc. | Method and apparatus for reading multiple bar code formats |
JP2836773B2 (ja) * | 1993-12-20 | 1998-12-14 | 富士通株式会社 | バーコードデータ検出方法及び装置 |
US7387253B1 (en) | 1996-09-03 | 2008-06-17 | Hand Held Products, Inc. | Optical reader system comprising local host processor and optical reader |
JP3234405B2 (ja) * | 1994-08-05 | 2001-12-04 | 富士通株式会社 | バーコード読取装置及びその方法 |
US5455414A (en) * | 1994-09-15 | 1995-10-03 | Metanetics Corporation | Simplified bar code decoding with dynamically loadable data character sets |
DE69429784T2 (de) * | 1994-10-17 | 2002-06-20 | Intermec Corp., Everett | Verfahren und vorrichtung zur dekodierung von strichcodeprofilen |
US5770847A (en) * | 1994-12-23 | 1998-06-23 | Spectra-Physics Scanning Systems, Inc. | Bar code reader with multi-focus lens |
US5814803A (en) * | 1994-12-23 | 1998-09-29 | Spectra-Physics Scanning Systems, Inc. | Image reader with multi-focus lens |
EP0722148A2 (de) * | 1995-01-10 | 1996-07-17 | Welch Allyn, Inc. | Streifencodeleser |
US5514858A (en) * | 1995-02-10 | 1996-05-07 | Intermec Corporation | Method and apparatus for decoding unresolved complex multi-width bar code symbology profiles |
US5619027A (en) * | 1995-05-04 | 1997-04-08 | Intermec Corporation | Single width bar code symbology with full character set utilizing robust start/stop characters and error detection scheme |
US5539191A (en) * | 1995-06-22 | 1996-07-23 | Intermec Corporation | Method and apparatus for decoding unresolved bar code profiles using edge finding circuitry |
US5777309A (en) * | 1995-10-30 | 1998-07-07 | Intermec Corporation | Method and apparatus for locating and decoding machine-readable symbols |
JPH09179927A (ja) | 1995-12-26 | 1997-07-11 | Fujitsu Ltd | バーコード読取装置 |
US5818024A (en) * | 1996-02-05 | 1998-10-06 | Advanced Micro Devices, Inc. | Pulse width demodulation device and method |
WO2000016242A1 (en) * | 1998-09-14 | 2000-03-23 | Psc Scanning, Inc. | Bar code label reconstruction system and methodologies |
US6078698A (en) * | 1999-09-20 | 2000-06-20 | Flir Systems, Inc. | System for reading data glyphs |
US7181066B1 (en) | 2002-12-26 | 2007-02-20 | Cognex Technology And Investment Corporation | Method for locating bar codes and symbols in an image |
US20060027657A1 (en) | 2004-08-04 | 2006-02-09 | Laurens Ninnink | Method and apparatus for high resolution decoding of encoded symbols |
US7175090B2 (en) * | 2004-08-30 | 2007-02-13 | Cognex Technology And Investment Corporation | Methods and apparatus for reading bar code identifications |
US7963448B2 (en) | 2004-12-22 | 2011-06-21 | Cognex Technology And Investment Corporation | Hand held machine vision method and apparatus |
US9552506B1 (en) | 2004-12-23 | 2017-01-24 | Cognex Technology And Investment Llc | Method and apparatus for industrial identification mark verification |
JP4254724B2 (ja) | 2005-02-16 | 2009-04-15 | 株式会社デンソーウェーブ | バーコード読取り方法及びコンピュータプログラム |
KR100742756B1 (ko) | 2005-06-21 | 2007-07-25 | 인사이드테크윈(주) | 다종의 2차원 코드 복호방법과 이 방법이 수록되어컴퓨터로 읽을 수 있는 기록매체 |
US7628331B2 (en) * | 2005-09-29 | 2009-12-08 | Symbol Technologies, Inc. | Method and system for optimizing scanner performance |
US7364080B2 (en) * | 2006-03-22 | 2008-04-29 | Symbol Technologies, Inc. | System and method for bar code detection |
US8108176B2 (en) * | 2006-06-29 | 2012-01-31 | Cognex Corporation | Method and apparatus for verifying two dimensional mark quality |
US7984854B2 (en) * | 2006-07-17 | 2011-07-26 | Cognex Corporation | Method and apparatus for multiplexed symbol decoding |
US8169478B2 (en) | 2006-12-14 | 2012-05-01 | Cognex Corporation | Method and apparatus for calibrating a mark verifier |
US9734376B2 (en) | 2007-11-13 | 2017-08-15 | Cognex Corporation | System and method for reading patterns using multiple image frames |
JP5321610B2 (ja) * | 2011-02-04 | 2013-10-23 | カシオ計算機株式会社 | スキャナ装置及びプログラム |
JP5748715B2 (ja) * | 2012-09-05 | 2015-07-15 | 東芝テック株式会社 | コードシンボル読取装置及びプログラム |
KR101903467B1 (ko) | 2016-08-19 | 2018-11-22 | 승병선 | 종이 컵 회수 장치 및 방법 |
KR101903470B1 (ko) | 2016-09-21 | 2018-11-13 | 승병선 | 플라스틱 용기와 종이 컵의 분류 및 회수 장치와 그 방법 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3784792A (en) * | 1972-03-29 | 1974-01-08 | Monarch Marking Systems Inc | Coded record and methods of and apparatus for encoding and decoding records |
US3882464A (en) * | 1974-04-04 | 1975-05-06 | Computer Identics Corp | Size ratio label reading system |
US4032888A (en) * | 1975-12-15 | 1977-06-28 | The Singer Company | Nonlinear scan drive reader with variable clock correction |
US4354101A (en) * | 1977-04-15 | 1982-10-12 | Msi Data Corporation | Method and apparatus for reading and decoding a high density linear bar code |
JPS5566063A (en) * | 1978-11-14 | 1980-05-19 | Nippon Electric Ind Co Ltd | Optical read system |
US4245152A (en) * | 1979-10-23 | 1981-01-13 | International Business Machines Corporation | Decoding method and system for ETAB bar code |
JPS56157570A (en) * | 1980-05-08 | 1981-12-04 | Fujitsu Ltd | Bar-code reading system |
JPS575175A (en) * | 1980-06-13 | 1982-01-11 | Nec Corp | Bar code reader |
US4329574A (en) * | 1980-06-25 | 1982-05-11 | International Business Machines Corp. | Bar code candidate select circuit |
US4308455A (en) * | 1980-06-26 | 1981-12-29 | E. I. Du Pont De Nemours And Company | Method for decoding bar-coded labels |
JPS57120179A (en) * | 1981-01-19 | 1982-07-27 | Sharp Corp | Bar code reader |
JPS57172478A (en) * | 1981-04-17 | 1982-10-23 | Teraoka Seiko Co Ltd | Type deciding method for bar code of bar code reader |
US4414468A (en) * | 1981-05-18 | 1983-11-08 | International Business Machines Corporation | Systematic error correction in bar code scanner |
JPS58223876A (ja) * | 1982-06-23 | 1983-12-26 | Casio Comput Co Ltd | バ−コ−ド認識装置 |
JPS59201174A (ja) * | 1983-04-28 | 1984-11-14 | Nissan Motor Co Ltd | バ−コ−ド読取装置における信号処理方法 |
US4578570A (en) * | 1984-08-14 | 1986-03-25 | Ncr Canada Ltd.-Ncr Canada Ltee | Bar code processing apparatus |
JPH0762858B2 (ja) * | 1985-06-06 | 1995-07-05 | 株式会社サトー | バーコード読取方法および装置 |
-
1986
- 1986-09-29 US US06/913,098 patent/US4782220A/en not_active Expired - Fee Related
-
1987
- 1987-09-15 WO PCT/US1987/002416 patent/WO1988002521A1/en unknown
- 1987-09-15 BR BR8707477A patent/BR8707477A/pt not_active Application Discontinuation
- 1987-09-15 JP JP62506208A patent/JP3004017B2/ja not_active Expired - Fee Related
- 1987-09-15 AU AU81030/87A patent/AU597443B2/en not_active Ceased
- 1987-09-29 ES ES198787308618T patent/ES2046205T3/es not_active Expired - Lifetime
- 1987-09-29 IE IE872620A patent/IE872620L/xx unknown
- 1987-09-29 DE DE87308618T patent/DE3788264T2/de not_active Expired - Fee Related
- 1987-09-29 AT AT87308618T patent/ATE97754T1/de not_active IP Right Cessation
- 1987-09-29 EP EP87308618A patent/EP0262924B1/de not_active Expired - Lifetime
- 1987-09-29 CA CA000548135A patent/CA1293326C/en not_active Expired - Lifetime
- 1987-09-29 MX MX8594A patent/MX160169A/es unknown
-
1988
- 1988-05-27 DK DK291888A patent/DK291888A/da not_active Application Discontinuation
- 1988-05-27 KR KR1019880700592A patent/KR880701924A/ko not_active Application Discontinuation
Also Published As
Publication number | Publication date |
---|---|
EP0262924B1 (de) | 1993-11-24 |
US4782220A (en) | 1988-11-01 |
JPH01500937A (ja) | 1989-03-30 |
DK291888D0 (da) | 1988-05-27 |
EP0262924A3 (en) | 1989-10-18 |
MX160169A (es) | 1989-12-19 |
WO1988002521A1 (en) | 1988-04-07 |
CA1293326C (en) | 1991-12-17 |
EP0262924A2 (de) | 1988-04-06 |
JP3004017B2 (ja) | 2000-01-31 |
AU8103087A (en) | 1988-04-21 |
DE3788264D1 (de) | 1994-01-05 |
ATE97754T1 (de) | 1993-12-15 |
IE872620L (en) | 1988-03-29 |
BR8707477A (pt) | 1988-12-06 |
DK291888A (da) | 1988-05-27 |
AU597443B2 (en) | 1990-05-31 |
KR880701924A (ko) | 1988-11-07 |
ES2046205T3 (es) | 1994-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3788264T2 (de) | Verfahren und Gerät zur selbsttätigen Unterscheidung von strichkodierten Daten. | |
DE2914509C2 (de) | ||
DE2616753C3 (de) | Vorrichtung zum Lesen von strichkodierten Informationen | |
DE69131006T2 (de) | Gerät und Verfahren zur optischen Zeichenerkennung | |
DE69709165T2 (de) | Vorrichtung und verfahren zur dekodierung von streifencode-symbolen durch quotenanalyse der modulformate | |
DE10025332B4 (de) | Verfahren zum Lesen eines zweidimensionalen Barcodes | |
DE3854885T2 (de) | Kombinieren von gelesenen Strichcode-Daten | |
DE69028899T2 (de) | Verfahren und Vorrichtung zum Dekodieren von Strichkodes mit Mehrfachabtastung | |
DE69230631T2 (de) | Verfahren zum Vergleichen von Wortgestalten | |
DE3633743C2 (de) | ||
DE3879254T2 (de) | Unterscheidungsvorrichtung für handgeschriebene und maschinengedruckte Buchstaben. | |
DE69226846T2 (de) | Verfahren zur Bestimmung von Wortgrenzen im Text | |
DE69425404T2 (de) | Kombinieren von Strichcodeabtastungen | |
DE68915950T2 (de) | Verfahren zum Trennen von Zeichen. | |
DE2524495C3 (de) | Schaltungsanordnung zur Formatpriifung von Codesignalen eines Streifencodes | |
DE2216013A1 (de) | Verfahren und Gerät zum optischen Lesen eines Binärkodes | |
DE19960555A1 (de) | Verfahren zum Auffinden und Lesen eines zweidimensionalen Strichcodes | |
DE2816333A1 (de) | Verfahren und anordnung zum lesen eines strichcodes | |
DE2338561A1 (de) | Verfahren und vorrichtung zum identifizieren von objekten | |
DE2125019C3 (de) | Verfahren zum maschinellen Lesen und Erkennen von auf Informationsträgern dargestellter Information und Vorrichtung zur Durchführung des Verfahrens | |
DE69121805T2 (de) | Strichkode-Abtastvorrichtung | |
DE69030614T2 (de) | Gerät zur Erkennung handgeschriebener Zeichen | |
DE68912557T2 (de) | Verfahren und gerät zum lesen von zeichen. | |
DE1901335A1 (de) | Vorrichtung zur Schriftzeichenerkennung | |
DE1499394B2 (de) | Anordnung zum messen der groesse von zeichen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |