-
HINTERGRUND DER ERFINDUNG
-
1. Gebiet der Erfindung
-
Die vorliegende Erfindung bezieht sich auf eine Bildverarbeitungseinrichtung zum Anzeigen eines Objekts, das anhand einer Eingabebildaufnahme erkannt wird, und mehr im Detail auf eine Bildverarbeitungseinrichtung zum Erkennen von Positionen von Aufnahmen mehrerer Objekte, die auf einer Bildaufnahme gezeigt sind, und zum Anzeigen eines Erkennungsergebnisses, um einem Benutzer zu ermöglichen, zu prüfen, ob die Aufnahme des erkannten Objekts korrekt ist.
-
2. Beschreibung des verwandten Standes der Technik
-
Wenn eine Aufnahme eines bestimmten Objekts anhand einer Bildaufnahme in einem Sichtfeld einer Bilderfassungsvorrichtung unter Verwendung einer Bildverarbeitungseinrichtung erkannt wird, werden im Allgemeinen Merkmalswerte zwischen einer Referenzinformation, die ein Objekt indiziert (im Allgemeinen als Modellmuster, Vorlage oder dergleichen bezeichnet), und einer Eingabebildaufnahme, die von der Bilderfassungsvorrichtung erhalten wird, verglichen und wenn der Übereinstimmungsgrad über einer ausgewiesenen Höhe (Schwellenwert) liegt, wird ermittelt, dass das Objekt erfolgreich erkannt wurde.
-
Jedoch auch wenn der Übereinstimmungsgrad höher als der Schwellenwert ist, wurde die Aufnahme des Objekts in der Realität nicht zwingenderweise korrekt erkannt. Um einen Erkennungsparameter wie z. B. einen Schwellenwert für den Übereinstimmungsgrad anzupassen, kann ein Benutzer daher visuell prüfen, ob das Objekt korrekt erkannt wurde. Um zu prüfen, ob ein Objekt korrekt erkannt wurde, wird häufig ein Verfahren des Auftragens eines Ursprungs des Modellmusters, eines Rechtecks, das das Modellmuster umschließt, und einer Form des Modellmusters an der erkannten Position auf der Eingabebildaufnahme verwendet.
-
Nicht nur wenn das Objekt anhand der Eingabebildaufnahme erkannt wird, sondern auch wenn das Objekt auf der Eingabebildaufnahme geprüft wird, ist es des Weiteren erforderlich, dass der Benutzer visuell prüft, ob ein Ergebnis bezüglich der Ermittlung der Korrektheit und Inkorrektheit während der Stufe der Parameteranpassung geeignet ist. In diesem Fall ist es wünschenswert, ein Ermittlungsergebnis auf einfach verständliche Weise anzuzeigen, z. B. durch Versehen eines fehlerhaften Abschnitts mit einer Farbe und Umschließen eines Objekts, d. h. eines fehlerhaften Stücks, in einer anderen Farbe.
-
Das Maschinenlernen zum Verbessern der Wahrscheinlichkeit einer Objekterkennung und das statistische Verarbeiten zum Verbessern eines Modellmusters können vorzugsweise auf Basis eines Erkennungsergebnisses und eines Ergebnisses bezüglich der Ermittlung der Korrektheit und Inkorrektheit durchgeführt werden. Bei einer Technik des Maschinenlernens, die überwachtes Lernen genannt wird, sind Eingabedaten und eine Markierung dafür (OK/NG oder ein Typ) vorhanden. Um ein überwachtes Lernen auf Basis eines Erkennungsergebnisses und eines Ergebnisses bezüglich der Ermittlung der Korrektheit und Inkorrektheit durchzuführen, wird eine Prüfung durchgeführt, um zu ermitteln, ob das Erkennungsergebnis und das Ergebnis bezüglich der Ermittlung der Korrektheit und Inkorrektheit korrekt sind, und wenn ein inkorrektes Ergebnis vorliegt, wird die Markierung mit einer Schaltfläche, einem Textfeld und dergleichen korrigiert. Beim statistischen Verarbeiten wird die Verarbeitung an der Aufnahme des Objekts mit dem korrekten Ermittlungsergebnis durchgeführt und ein Schwellenwert zum Ermitteln der Korrektheit und Inkorrektheit wird unter Verwendung des Ergebnisses bezüglich der Ermittlung der Korrektheit und Inkorrektheit berechnet. In diesem Fall wird das Lernen als Maschinenlernen und statistisches Verarbeiten umfassend angesehen.
-
Die nichtgeprüfte
japanische Patentveröffentlichung Nr. 2007-114843 (Kokai) beschreibt eine Ermittlung der Korrektheit und Inkorrektheit, um einem Benutzer das Eingeben eines Ergebnisses bezüglich der Ermittlung der Korrektheit und Inkorrektheit und das Festlegen eines Schwellenwerts zum Durchführen der Ermittlung der Korrektheit und Inkorrektheit mit einer Bildaufnahme und dem Ergebnis bezüglich der Ermittlung der Korrektheit und Inkorrektheit zu ermöglichen. Die Auswahl einer Bildaufnahme erfolgt durch Auswählen eines Bildaufnahmedateinamens, und das Ergebnis bezüglich der Ermittlung der Korrektheit und Inkorrektheit kann nur dann geprüft werden, wenn Bilder einzeln geöffnet werden. Ein einzelnes Ergebnis bezüglich der Ermittlung der Korrektheit und Inkorrektheit wird als für eine Bildaufnahme vorhanden angesehen, und das Ermitteln der Korrektheit und Inkorrektheit mehrerer Objekte auf einer Bildaufnahme wird nicht erwartet.
-
Die
internationale Veröffentlichung Nr. 2001/041068 beschreibt ein Fehlerprüfsystem, wobei bei einer Änderung eines Fehlerextraktionsparameters eine Fehlerextraktion erneut an allen gespeicherten Bildaufnahmen durchgeführt wird und die Ermittlung der Korrektheit und Inkorrektheit sowie die Miniaturbildaufnahmen werden als Liste angezeigt. Wenn eine Fehlerermittlung erneut durchgeführt wird, werden Abschnitte, die als mehrere Fehler aufweisend ermittelt wurden, auf der Bildaufnahme gezeigt. Um eine Region, die als Fehler ermittelt wird, zu vergrößern und den Fehler in einem Fehlerlexikon einzutragen, kann es in diesem Zustand bevorzugt sein, auf einen Fehlerabschnitt auf der Bildaufnahme zu klicken. Aus diesem Grund können mehrere Fehler ggf. nicht gleichzeitig vergrößert und angezeigt werden. Außerdem ist das Eintragen eines Fehlers aufwendig.
-
Die nichtgeprüfte
japanische Patentveröffentlichung Nr. 2013-142558 (Kokai) beschreibt eine Vorrichtung zum Prüfen des äußeren Erscheinungsbilds, wobei, wenn eine Bildaufnahme, die ein fehlerfreies Stück sein soll, zu einer Bildaufnahmegruppe neu hinzugefügt wird, mit der die Korrektheit und Inkorrektheit konfiguriert werden, die Vorrichtung zum Prüfen des externen Erscheinungsbilds einen Schwellenwert für die Ermittlung unter Verwendung der Bildaufnahmegruppe des fehlerfreien Stücks berechnet und prüft, ob das fehlerhafte Stück als ein fehlerhaftes Stück ermittelt wurde, mit dem Schwellenwert. Bei dieser Patentanmeldung werden Bildaufnahmen Aufnahme für Aufnahme angezeigt, um eine Korrektur der Korrektheit und Inkorrektheit zu ermöglichen, es ist jedoch nicht einfach, die Korrektheit und Inkorrektheit für viele Bildaufnahmen zu prüfen. Eine Ermittlung in Bezug auf mehrere Abschnitte auf einer einzelnen Bildaufnahme wird nicht berücksichtigt.
-
Wie oben erläutert, wird beim Prüfen eines Erkennungsergebnisses und eines Ergebnisses bezüglich der Ermittlung der Korrektheit und Inkorrektheit häufig ein Verfahren des Auftragens des Erkennungsergebnisses und des Ergebnisses bezüglich der Ermittlung der Korrektheit und Inkorrektheit auf eine Bildaufnahme verwendet.
-
Dieses Verfahren ist jedoch mit den folgenden Problemen verbunden.
- – Wenn mehrere Objekte anhand einer einzelnen Bildaufnahme erkannt werden, ist das Prüfen der Gültigkeit schwierig, wenn die Erkennungsergebnisse einander überlappen oder nebeneinanderliegen. Des Weiteren bewirkt das Korrigieren einer Markierung, dass die Entsprechung zwischen einer Schaltfläche, einem Kontrollkästchen und dergleichen, die zu korrigieren sind, und dem Erkennungsergebnis schwer nachzuvollziehen ist.
- – Wenn die Größe des Erkennungsergebnisses für eine Bildaufnahme klein ist, gestaltet sich das Prüfen der Gültigkeit schwierig.
-
KURZDARSTELLUNG DER ERFINDUNG
-
Ein Ziel der Erfindung liegt in der Bereitstellung einer Bildverarbeitungseinrichtung zum Anzeigen eines Objekts, das anhand einer Eingabebildaufnahme erkannt wird, auf eine solche Weise, dass ein Erkennungsergebnis und ein Ergebnis bezüglich der Ermittlung der Korrektheit und Inkorrektheit leicht geprüft werden können.
-
Eine Bildverarbeitungseinrichtung umfasst eine Objekterkennungseinheit zum Erkennen einer oder mehrerer Aufnahmen von Objekten anhand einer Eingabebildaufnahme, auf der die Objekte erfasst wurden, auf Basis eines Modellmusters des Objekts und eine Erkennungsergebnisanzeigeeinheit zum graphischen Überlagern und Anzeigen eines Erkennungsergebnisses zu jeder auf diese Weise erkannten Aufnahme. Die Erkennungsergebnisanzeigeeinheit umfasst einen ersten Rahmenbereich zum Anzeigen der ganzen Eingabebildaufnahme und einen zweiten Rahmenbereich zum Auflisten und Anzeigen einer oder mehrerer Teilbildaufnahmen, die jeweils eine anhand der Eingabebildaufnahme erkannte Aufnahme umfassen. Auf der Eingabebildaufnahme, die im ersten Rahmenbereich gezeigt wird, werden Erkennungsergebnisse aller erkannten Aufnahmen überlagert und angezeigt, und auf der Teilbildaufnahme, die im zweiten Rahmenbereich angezeigt wird, wird ein Erkennungsergebnis einer Aufnahme, das jeder Teilbildaufnahme entspricht, überlagert und angezeigt.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
Die vorliegende Erfindung ist unter Bezugnahme auf die folgenden beiliegenden Zeichnungen deutlicher zu verstehen:
-
1 ist ein Blockschaubild, das eine Konfiguration einer Bildverarbeitungseinrichtung gemäß einer ersten Ausführungsform veranschaulicht;
-
2 ist ein Schaubild, das ein Beispiel einer Konfiguration veranschaulicht, bei der die Bildverarbeitungseinrichtung gemäß der ersten Ausführungsform verwendet wird;
-
3 ist ein Schaubild, das ein weiteres Beispiel einer Konfiguration veranschaulicht, bei der die Bildverarbeitungseinrichtung gemäß der ersten Ausführungsform verwendet wird;
-
4 ist ein Schaubild, das eine Beziehung zwischen einer erfassten Eingabebildaufnahme und einem Bildaufnahmekoordinatensystem veranschaulicht;
-
5 ist ein Ablaufplan, der einen Ablauf der Verarbeitung der Bildverarbeitungseinrichtung gemäß der ersten Ausführungsform veranschaulicht;
-
6 ist ein Schaubild, das ein Beispiel eines Modellmusters eines Objekts veranschaulicht;
-
7 ist ein Schaubild, das ein Beispiel eines Formats von Daten veranschaulicht, die mit einem Modellmuster in Zusammenhang stehen;
-
8 ist ein Schaubild, das ein Beispiel einer Anzeige eines Eingabebildaufnahme-Listenbildschirms veranschaulicht;
-
9 ist ein Schaubild, das ein Beispiel einer Anzeige nach Klicken auf eine Korrekturschaltfläche für eine zweite Markierung in einem Zustand von 8 veranschaulicht;
-
10 ist ein Schaubild, das ein Beispiel einer Anzeige eines Erkennungsergebnislistenbildschirms veranschaulicht;
-
11 ist ein Schaubild, das einen Anzeigebildschirm nach Klicken auf die Korrekturschaltfläche für eine erste Markierung in einem Zustand von 10 veranschaulicht;
-
12 ist ein Schaubild, das ein weiteres Beispiel einer Anzeige des Erkennungsergebnislistenbildschirms veranschaulicht;
-
13 ist ein Schaubild, das ein noch weiteres Beispiel einer Anzeige des Erkennungsergebnislistenbildschirms veranschaulicht;
-
14 ist ein Schaubild, das ein noch weiteres Beispiel einer Anzeige des Erkennungsergebnislistenbildschirms veranschaulicht;
-
15 ist ein Schaubild, das ein noch weiteres Beispiel einer Anzeige des Erkennungsergebnislistenbildschirms veranschaulicht;
-
16 ist ein Schaubild, das ein Beispiel einer Anzeige des Erkennungsergebnislistenbildschirms veranschaulicht, wenn jeweilige Aufnahmen von Objekten auf Teilbildaufnahmen in der gleichen Ausrichtung angezeigt werden;
-
17 ist ein Schaubild, das ein Beispiel einer Anzeige des Erkennungsergebnislistenbildschirms veranschaulicht, wenn Aufnahmen von Objekten unterschiedlicher Größen gleichzeitig mit dem ursprünglichen Größenverhältnis angezeigt werden;
-
18 ist ein Ablaufplan, der einen Ablauf der Verarbeitung einer Bildverarbeitungseinrichtung gemäß einer zweiten Ausführungsform veranschaulicht;
-
19 ist ein Schaubild, das ein Beispiel einer Anzeige eines Erkennungsergebnislistenbildschirms veranschaulicht, der bei der zweiten Ausführungsform verwendet wird;
-
20 ist ein Schaubild, das ein Beispiel einer Anzeige des in Schritt S204 angezeigten Erkennungsergebnislistenbildschirms veranschaulicht;
-
21 ist ein Schaubild, das ein Beispiel einer Anzeige des Erkennungsergebnislistenbildschirms veranschaulicht, wenn eine erste Markierung korrigiert wird;
-
22 ist ein Schaubild, das ein Modell von Neuronen schematisch veranschaulicht;
-
23 ist ein Schaubild, das ein dreischichtiges neuronales Netz schematisch veranschaulicht, das durch Kombinieren von Neuronen konfiguriert wird, wie in 22 veranschaulicht; und
-
24 ist ein Schaubild, das eine schematische Konfiguration einer Lerneinheit 22 gemäß den ersten und zweiten Ausführungsformen veranschaulicht.
-
AUSFÜHRLICHE BESCHREIBUNG
-
Eine Bildverarbeitungseinrichtung zum Anzeigen eines Objekts, das anhand einer Eingabebildaufnahme erkannt wird, wird nachstehend unter Bezugnahme auf die Zeichnungen beschrieben. Es sei jedoch verstanden, dass die Erfindung nicht auf die nachstehend beschriebenen Zeichnungen oder Ausführungsformen beschränkt ist.
-
In der nachstehenden Erläuterung werden bei den Ausführungsformen die unten angeführten Bezugssymbole wie folgt verwendet. Der leichteren Erläuterung wegen werden zuerst die Bezugssymbole erläutert.
- NP:
- die Anzahl von Merkmalspunkten, die ein Modellmuster bilden
- P_i:
- der i-te Merkmalspunkt des Modellmusters (i ist 1 bis NP)
- NI:
- die Anzahl von Eingabebildaufnahmen
- I_j:
- die j-te Eingabebildaufnahme (j ist 1 bis NI)
- NT_j:
- die Anzahl von Aufnahmen von Objekten, die anhand der j-ten Eingabebildaufnahme I_j erkannt wurden
- T_jg:
- eine Aufnahme des g-ten Objekts, das anhand der j-ten Eingabebildaufnahme I_j erkannt wurde (g ist 1 bis NT_j)
- L1_jg:
- erste Markierung der Aufnahme des g-ten Objekts, das anhand der j-ten Eingabebildaufnahme I_j erkannt wurde
- L2_j:
- zweite Markierung der j-ten Eingabebildaufnahme I_j
-
1 ist ein Blockschaubild, das eine Konfiguration einer Bildverarbeitungseinrichtung gemäß einer ersten Ausführungsform veranschaulicht.
-
Wie in 1 veranschaulicht, umfasst eine Bildverarbeitungseinrichtung 10 gemäß der ersten Ausführungsform 10 eine arithmetische Einheit 20, eine Speichereinheit 30, eine Anzeigeeinheit 40 und eine Betriebseinheit 50. Die Bildverarbeitungseinrichtung 10 ist mit einem visuellen Sensor 11, einem Bedienfeld 12, einer Anzeigevorrichtung 13 und dergleichen verbunden. Die arithmetische Einheit 20 umfasst eine Objekterkennungseinheit 21 und eine Lerneinheit 22. Die Speichereinheit 30 umfasst eine Modellmusterspeichereinheit 31, eine Lerndatenspeichereinheit 32 und eine Erkennungsergebnisspeichereinheit 33. Die Anzeigeeinheit 40 beinhaltet eine Erkennungsergebnisanzeigeeinheit 41 und eine Eingabebildaufnahme-Anzeigeeinheit 42. Die Betriebseinheit 50 umfasst eine Teilbildaufnahme-Auswahleinheit 51 und eine Eingabebildaufnahme-Auswahleinheit 52. Jeder Abschnitt, der in der Bildverarbeitungseinrichtung 10 umfasst ist, ist mit einer Software auf einem Computer mit CPU, ROM, RAM und dergleichen umgesetzt.
-
Der visuelle Sensor 11 ist mit einem Kommunikationskabel mit der Bildverarbeitungseinrichtung 10 verbunden. Der visuelle Sensor 11 stellt erfasste Bildaufnahmedaten an die Bildverarbeitungseinrichtung 10 bereit. Das Bedienfeld 12 ist mit einem Kommunikationskabel mit der Bildverarbeitungseinrichtung 10 verbunden. Das Bedienfeld 12 wird verwendet, um einen Bildschirm zu bedienen, der auf der Anzeigevorrichtung 13 angezeigt wird. Die Anzeigevorrichtung 13 ist mit einem Kommunikationskabel mit der Bildverarbeitungseinrichtung 10 verbunden. Die Anzeigevorrichtung 13 zeigt eine Bildaufnahme, die vom visuellen Sensor 11 erfasst wird, ein Erkennungsergebnis und dergleichen an. Es sei angemerkt, dass der visuelle Sensor 11, das Bedienfeld 12 und die Anzeigevorrichtung 13 in der Bildverarbeitungseinrichtung 10 integral bereitgestellt sein kann. Die Anzeigevorrichtung 13 ist eine Anzeigeeinrichtung mit CRT, einer Flüssigkristallanzeige oder dergleichen. Das Bedienfeld 12 kann eine Maus und eine Tastatur sein oder kann ein berührungsempfindliches Feld auf der Anzeigevorrichtung 13 sein.
-
2 ist ein Schaubild, das ein Beispiel einer Konfiguration veranschaulicht, bei der die Bildverarbeitungseinrichtung 10 gemäß der ersten Ausführungsform verwendet wird;
-
Wie in 2 veranschaulicht, ist der visuelle Sensor 11 in einer Position fixiert und installiert, so dass der visuelle Sensor 11 Bildaufnahmen der Objekte 17A und 17B erfassen kann, und die Objekte 17A und 17B sind auf einer Arbeitsbank 16 installiert. Es können ein einzelnes Objekt oder mehrere Objekte 17A und 17B vorhanden sein, die auf der Arbeitsbank 16 platziert sind. Der visuelle Sensor 11 kann eine Kamera zum Erfassen von Graustufen-Bildaufnahmen oder Farbbildaufnahmen sein oder kann eine Stereokamera oder ein dreidimensionaler Sensor sein, die bzw. der in der Lage ist, Bereichsbildaufnahmen zu erhalten.
-
Bei dieser ersten Ausführungsform wird davon ausgegangen, dass eine Kamera als visueller Sensor 11 verwendet wird und der visuelle Sensor 11 gibt eine Graustufenbildaufnahme in der Erläuterung aus. Die Kamera ist eine elektronische Kamera mit einem Bildgebungselement wie z. B. einer CCD (Charge Coupled Device) und ist ein hinlänglicher Photodetektor mit einer Funktion zum Erkennen einer zweidimensionalen Bildaufnahme in seiner Bilderfassungsebene (auf einer CCD-Array-Ebene) durch Erfassen einer Aufnahme. Es sei angemerkt, dass ein zweidimensionales Koordinatensystem auf einer Bilderfassungsebene im Folgenden als Bildkoordinatensystem bezeichnet wird.
-
3 ist ein Schaubild, das ein weiteres Beispiel einer Konfiguration veranschaulicht, bei der die Bildverarbeitungseinrichtung 10 gemäß der ersten Ausführungsform verwendet wird.
-
Wie in 3 veranschaulicht, kann der visuelle Sensor 11 auf einem beweglichen Abschnitt wie z. B. einem Handstück (Hand) 2 eines Roboters 1 installiert werden. Die Objekte 17A und 17B können mit dem Handstück des Roboters 1 gegriffen werden und können bewegt werden, um innerhalb des Sichtfelds des installierten und fixierten visuellen Sensors platziert zu werden. Der Roboter 1 ist über ein Kommunikationskabel mit einer Robotersteuervorrichtung 3 verbunden und wird von dieser gesteuert. Die Robotersteuervorrichtung 3 verwendet die Verarbeitungsergebnisse, die von der Bildverarbeitungseinrichtung 10 ausgegeben werden, um den Roboter 1 zu steuern.
-
4 ist ein Schaubild, das eine Beziehung zwischen einer erfassten Eingabebildaufnahme und einem Bildaufnahmekoordinatensystem veranschaulicht.
-
Wie in 4 veranschaulicht, umfasst die Eingabebildaufnahme 100 eine rechteckige Bildaufnahmeebene und hat ein Bildaufnahmekoordinatensystem 110, das den Seiten des Rechtecks entspricht. Eine Position auf der Bildaufnahmeebene wird durch XY-Koordinaten des Bildaufnahmekoordinatensystems 110 dargestellt. In 4 umfasst die Eingabebildaufnahme 100 Bildaufnahmen 200A bis 200C von drei Objekten. In der folgenden Erläuterung wird eine Bildaufnahme eines Objekts ggf. einfach als Objekt bezeichnet.
-
5 ist ein Ablaufplan, der einen Ablauf der Verarbeitung der Bildverarbeitungseinrichtung gemäß der ersten Ausführungsform veranschaulicht.
-
Gemäß der Verarbeitung, die von der Lerneinheit 22 durchgeführt wird, sind die Inhalte des Betriebs und der Verarbeitung, die vom Benutzer mit der Bildverarbeitungseinrichtung durchgeführt werden, unterschiedlich. In diesem Fall wird zunächst als Beispiel ein Fall erläutert, bei dem die Lerneinheit 22 eine statistische Verarbeitung durchführt.
-
In Schritt S101 wird ein Modellmuster erzeugt, das zum Erkennen eines Objekts verwendet wird.
-
Das Modellmuster gemäß der ersten Ausführungsform ist durch mehrere Merkmalspunkte gebildet. Diverse Dinge können als Merkmalspunkte verwendet werden, bei der ersten Ausführungsform wird jedoch ein Randpunkt als Merkmalspunkt verwendet. Der Randpunkt ist ein Punkt, an dem ein Luminanzgradient auf einer Bildaufnahme hoch ist, und kann verwendet werden, um eine Konturform eines Objekts zu erhalten. Ein Verfahren zum Extrahieren eines Randpunkts ist hinlänglich bekannt. Der Randpunkt kann mit einer beliebigen Granularität erhalten werden, in diesem Fall wird jedoch ein einzelner Randpunkt für einen einzelnen Pixel extrahiert.
-
Der Merkmalspunkt ist nicht auf den Randpunkt beschränkt und es kann z. B. ein Merkmalspunkt wie z. B. SIFT verwendet werden. Ein Verfahren zum Extrahieren eines SIFT-Merkmalspunkts aus einer Bildaufnahme ist hinlänglich bekannt, wie z. B. in „Object Recognition from Local Scale-Invariant Features", David G. Lowe, Proc. of the International Conference on Computer Vision, Corfu (Sept. 1999), und dergleichen beschrieben.
-
Der Merkmalspunkt umfasst zumindest eine Position. Wenn eine Richtung eines Luminanzgradienten eines Randpunkts als Ausrichtung des Merkmalspunkts definiert ist, können die Position sowie die Positionsausrichtung des Merkmalspunkts definiert werden. Bei der ersten Ausführungsform wird der Merkmalspunkt als eine Position und eine Ausrichtung aufweisend angesehen.
-
6 ist ein Schaubild, das ein Beispiel eines Modellmusters eines Objekts veranschaulicht. Wie in 6 veranschaulicht, wird das Modellmuster der 200 durch mehrere Merkmalspunkte (Randpunkte) P_i (i = 1 bis NP) gebildet. Die Positionsausrichtung des Merkmalspunkts P_i, der das Modellmuster bildet, kann in einem beliebigen Format ausgedrückt werden, es gibt jedoch z. B. ein Verfahren, bei dem ein Koordinatensystem in einem Modellmuster (im Folgenden als Modellmusterkoordinatensystem bezeichnet) definiert ist und eine Position t_Pi (i = 1 bis NP) und eine Ausrichtung v_Pi (i = 1 bis NP) eines Merkmalspunkts, der das Modellmuster bildet, unter Verwendung eines Positionsvektors, eines Richtungsvektors und dergleichen ausgedrückt werden, die aus dem Modellmusterkoordinatensystem ersichtlich sind.
-
Der Ursprung des Modellmusterkoordinatensystems kann auf eine beliebige Weise definiert werden. Beispielsweise wird ein beliebiger bestimmter Punkt aus Merkmalspunkten ausgewählt, die das Modellmuster bilden, und dieser Punkt kann als Ursprung definiert werden, und der Schwerpunkt aller Merkmalspunkte, die das Modellmuster bilden, kann als Ursprung definiert werden.
-
Die Ausrichtung des Modellmusterkoordinatensystems (Axialrichtung) kann ebenfalls auf beliebige Weise definiert werden. Bei der Bildaufnahme, auf der das Modellmuster erzeugt wird, beispielsweise können das Bildaufnahmekoordinatensystem und das Modellmusterkoordinatensystem als parallel seiend definiert werden oder können zwei beliebige Punkte aus den Merkmalspunkten, die das Modellmuster bilden, ausgewählt werden und eine Richtung, die sich von einem der zwei Punkte zum anderen erstreckt, kann als X-Achsenrichtung definiert werden.
-
7 ist ein Schaubild, das ein Beispiel eines Formats von Daten zu einem Modellmuster veranschaulicht.
-
Wie in 7 veranschaulicht, werden die Daten zum Modellmuster durch die Position und die Ausrichtung in Bezug auf jeden Merkmalspunkt ausgedrückt. Der Merkmalspunkt P_i, der das Modellmuster bildet, wird in der Modellmusterspeichereinheit 31 in einem Format (Position, Ausrichtung) gespeichert, wie in 7 veranschaulicht.
-
In Schritt S102 werden eine oder mehrere Eingabebildaufnahmen I_j (j = 1 bis NI) erhalten, die eine Aufnahme eines Objekts umfassen. Die Eingabebildaufnahme wird durch Anordnen eines Objekts im Sichtfeld des visuellen Sensors 11 und Erfassen einer Bildaufnahme erhalten. Die Bildaufnahme wird vorzugsweise in der gleichen Umgebung wie die tatsächliche Fertigungsstraße erfasst. Eine große Anzahl von Bildaufnahmen des Objekts, die in der tatsächlichen Fertigungsstraße aufgenommen und gespeichert werden, können verwendet werden. Mehrere Objekte können auf einer einzelnen Bildaufnahme gezeigt werden.
-
In Schritt S103 vergleicht die Objekterkennungseinheit 21 das Modellmuster mit der Eingabebildaufnahme I_j für jede der Eingabebildaufnahmen I_j (j = 1 bis NI) und führt eine Erkennung des Objekts durch. Das Erkennungsergebnis wird mit der Eingabebildaufnahme I_j assoziiert und in der Erkennungsergebnisspeichereinheit 33 gespeichert. Ein Ergebnis, das aus einer Reihe der Verarbeitung bis zur Ausführung des nachstehenden Lernprozesses erhalten wird, wird als in der Erkennungsergebnisspeichereinheit 33 gespeichert angesehen. Es gibt diverse Verfahren zum Erkennen eines Objekts mit der Objekterkennungseinheit 21, es können jedoch z. B. die generalisierte Hough-Transformation, wie in „Generalizing the Hough Transform to Detect Arbitrary Shapes", D. H. Ballard, Pattern Recognition Bd. 13, Nr. 2, S. 111–122, 1981, beschrieben, RANSAC, wie in „Random sample consensus: a paradigm for model fitting with applications to picture image analysis and automated cartography", Martin A. Fischler, et al., Communications of the Association for Computing Machinery, Bd. 24, Nr. 6, S. 381–395, Juni 1981, beschrieben, und dergleichen als hinlänglich bekanntes Verfahren verwendet werden. Bei der vorliegenden Ausführungsform kann eine Aufnahme eines Objekts, dessen Übereinstimmungsgrad geringer als ein Schwellenwert ist, dessen Übereinstimmungsgrad jedoch innerhalb eines vorab definierten Bereichs liegt, ebenfalls als Erkennungsergebnis hinzugefügt werden. Beispielsweise wenn der Übereinstimmungsgrad als 0 bis 100 definiert ist, wird ein Übereinstimmungrad bis zu einem Übereinstimmungsgrad, der durch Subtrahieren von 10 vom Schwellenwert für den Übereinstimmungsgrad erhalten wird, akzeptiert. Wie oben beschrieben, kann sogar bei einem Erkennungsergebnis, dessen Übereinstimmungsgrad geringer als der Schwellenwert ist, eine Markierung als korrektes Erkennungsergebnis in einem späteren Schritt geändert werden.
-
NT_j Aufnahmen von Objekten werden als anhand der Eingabebildaufnahme I_j im Rahmen der Erkennung erkannt angenommen. Die erkannte Aufnahme wird als T_jg (g = 1 bis NT_j) ausgewiesen und die erkannte Position der Aufnahme T_jg wird als R_Tjg ausgewiesen. Die erkannte Position R_Tjg ist eine Positionsausrichtung der Aufnahme T_jg des Objekts, wie aus dem Bildaufnahmekoordinatensystem ersichtlich, d. h. eine homogene Transformationsmatrix, die eine Positionsausrichtung des Modellmusterkoordinatensystems darstellt, wie aus dem Bildaufnahmekoordinatensystem ersichtlich, wenn das Modellmuster auf der Aufnahme T_jg überlagert ist, und wird durch die folgende Gleichung ausgedrückt:
-
Beispielsweise wenn das Objekt sich in Bezug auf die optische Achse der Kamera nicht neigt und nur eine Kongruenztransformation als Bewegung einer Aufnahme eines Objekts, das auf einer Bildaufnahme gezeigt ist, angesehen werden kann, sind a00 und a12 wie folgt: a00 = cosθ a01 = –sinθ a02 = x a10 = sinθ a11 = cosθ a12 = y
-
(x, y) ist jedoch eine Position auf einer Bildaufnahme und θ ist ein Drehbewegungsausmaß auf der Bildaufnahme.
-
Wenn sich das Objekt nicht in Bezug auf die optische Achse der Kamera neigt, der Abstand zwischen dem Objekt und der Kamera jedoch nicht konstant ist, ändert sich die Größe der Aufnahme des Objekts, das auf der Bildaufnahme gezeigt ist, gemäß dem Abstand und daher ist die Bewegung der Aufnahme des Objekts, das auf der Bildaufnahme gezeigt ist, eine Ähnlichkeitstransformation. In diesem Fall sind a00 bis a12 wie folgt. a00 = s·cosθ a01 = –s·sinθ a02 = x a10 = s·sinθ a11 = s·cosθ a12 = y
-
Allerdings bezeichnet s ein Verhältnis zwischen der Größe des gelehrten Modellmusters und der Größe der Aufnahme T_jg des Objekts.
-
Die erkannte Position R_Tjg und die Eingabebildaufnahme I_j werden zu einem Paar gemacht und in der Erkennungsergebnisspeichereinheit 33 gespeichert.
-
Auf Basis der erkannten Position R_Tjg der Aufnahme T_jg (j = 1 bis NI, g = 1 bis NT_j) des Objekts, das anhand jeder Eingabebildaufnahme I_j (j = 1 bis NI) erkannt wird, wird die Positionsausrichtung des Merkmalspunkts P_i, der das Modellmuster bildet, transformiert und auf der Aufnahme des Objekts auf der Bildaufnahme überlagert.
-
Der Erläuterung wegen wird die Positionsausrichtung jedes Merkmalspunkts P_i, der das Modellmuster bildet, durch eine homogene Transformationsmatrix R_Pi ausgedrückt. R_Pi kann wie folgt beschrieben werden.
b00 = vx_Pi b01 = –vy_Pi b02 = tx_Pi b10 = vy_Pi b11 = vx_Pi b12 = ty_Pi
-
Allerdings ist t_Pi = (tx_Pi, ty_Pi) die Position von P_i im Modellmusterkoordinatensystem und ist v_Pi = (vx_Pi, vy_Pi) die Ausrichtung von P_i im Modellmusterkoordinatensystem.
-
In diesem Fall sei angemerkt, dass die Positionsausrichtung R_Pi des Merkmalspunkts P_i, der das Modellmuster bildet, im Modellmusterkoordinatensystem ausgedrückt ist.
-
Wenn die Positionsausrichtung des Merkmalspunkts P_i, wie aus dem Bildaufnahmekoordinatensystem ersichtlich, als R_Pi' ausgewiesen ist, wenn das Modellmuster auf der Aufnahme T_jg des Objekts überlagert ist, das auf der Bildaufnahme I_j gezeigt ist, wird R_Pi' wie folgt unter Verwendung der Positionsausrichtung R_Pi des Merkmalspunkts P_i, wie aus dem Modellmusterkoordinatensystem ersichtlich, und der erkannten Position R_Tjg der Aufnahme T_jg, wie aus Bildaufnahmekoordinatensystem ersichtlich, ausgedrückt. R_Pi' = R_Tjg·R_Pi
-
Der einfacheren späteren Erläuterung wegen wird die Position von P_i, wie aus dem Bildaufnahmekoordinatensystem ersichtlich, als t_Pi' ausgewiesen und wird die Ausrichtung von P_i, wie vom Bildaufnahmekoordinatensystem aus gesehen, als v_Pi' ausgewiesen.
-
In diesem Fall wird die erste Markierung L1_jg (j = 1 bis NI, g = 1 bis NT_j) der Aufnahme T_jg jedes Objekts zugewiesen. Bei der ersten Ausführungsform können zwei Optionen als Markierung des Bilds des Objekts ausgewählt werden, d. h. „OK” und „NG”. Bei der ersten Ausführungsform werden unter den Aufnahmen der erkannten Objekte die ersten Markierungen L1_jg der Aufnahmen aller Objekte, deren Übereinstimmungsgrad größer gleich dem Schwellenwert ist, auf „OK” geändert. Unter den Aufnahmen der erkannten Objekte werden die ersten Markierungen L1_jg der Aufnahmen der Objekte, deren Übereinstimmungsgrad kleiner als der Schwellenwert ist, auf „NG” geändert.
-
In Schritt S104 prüft der Benutzer die Aufnahme T_jg (j = 1 bis NI, g = 1 bis NT_j) des Objekts, das anhand jeder Eingabebildaufnahme I_j (j = 1 bis NI) erkannt wird, und korrigiert die Markierung. Der Benutzer prüft die Aufnahme des Objekts, das mit „OK” versehen ist, und wenn der Benutzer ermittelt, dass es sich nicht um das Objekt handelt, ändert der Benutzer die erste Markierung auf „NG” und die korrigierte Markierung wird gespeichert. Des Weiteren prüft der Benutzer die Aufnahme des Objekts, das mit „NG” versehen ist, und wenn der Benutzer ermittelt, dass es sich um das zu erkennende Objekt handelt, ändert der Benutzer die erste Markierung auf „OK und die korrigierte Markierung wird gespeichert.
-
Bei der ersten Ausführungsform wechselt der Benutzer zwischen dem Eingabebildaufnahme-Listenbildschirm, der von der Eingabebildaufnahme-Anzeigeeinheit 42 angezeigt wird, und dem Erkennungsergebnislistenbildschirm, der von der Erkennungsergebnisanzeigeeinheit 41 angezeigt wird, hin und her, um das Bild T_jg (j = 1 bis NI, g = 1 bis NT_j) des Objekts zu prüfen.
-
Der Eingabebildaufnahme-Listenbildschirm und der Erkennungsergebnislistenbildschirm werden auf der Anzeigevorrichtung angezeigt. Die zwei Bildschirme können nebeneinander angezeigt werden oder durch Wechseln der Bildschirme. Bei der ersten Ausführungsform wird ein Verfahren zum Anzeigen der zwei Bildschirme durch Wechseln der Bildschirme erläutert.
-
8 ist ein Schaubild, das ein Beispiel einer Anzeige eines Eingabebildaufnahme-Listenbildschirms veranschaulicht.
-
Am Eingabebildaufnahme-Listenbildschirm werden alle Eingabebildaufnahmen I_j (j = 1 bis NI) aufgelistet und wie in 8 veranschaulicht angezeigt. Beispielsweise erfolgt die Anzeige dieses Bildschirms gemäß der nachstehenden Regel.
- – Eingabebildaufnahmen werden mit einer ausgewiesenen Vergrößerungsrate auf dem Bildschirm angeordnet und angezeigt. Bei der ersten Ausführungsform sind alle Größen von Eingabebildaufnahmen gleich, die Größen der Eingabebildaufnahmen können sich jedoch unterscheiden.
- – Die Anzahl von Reihen oder die Anzahl von Zeilen der Bildaufnahme auf dem Bildschirm wird anhand der Größe des Bildschirms, der Größe der Eingabebildaufnahme und der Vergrößerungsrate automatisch bestimmt.
-
Wenn nicht alle Bildaufnahmen angezeigt werden können, wird ein Scrollbalken angezeigt. Der Benutzer kann alle Bildaufnahmen durch Scrollen im Bildschirm mit dem Scrollbalken anschauen. Der Scrollbalken kann vertikal oder horizontal gezeigt werden.
- – Die Anzeigevergrößerungsrate der Eingabebildaufnahme kann mit einer Vergrößerungsraten-Dropdown-Liste ausgewiesen werden. Die Eingabebildaufnahmen können mit einer Größe angezeigt werden, die größer als die ursprüngliche Bildaufnahme ist, oder können mit einer Größe angezeigt werden, die kleiner als die ursprüngliche Bildaufnahme ist.
-
Eine Verfahrensweise zum Auftragen eines Modellmusters auf einer Aufnahme eines Objekts, das auf einer Eingabebildaufnahme gezeigt ist, wird erläutert. Das Auftragen des Modellmusters kann vorzugsweise gemäß der nachstehenden Verfahrensweise erfolgen.
- (1) Die nachstehend gezeigte Verarbeitung von (2) wird an allen Eingabebildaufnahmen I_j (j = 1 bis NI) durchgeführt.
- (2) Die nachstehend gezeigte Verarbeitung von (2-1) bis (2-2) wird an den Aufnahmen T_jg (g = 1 bis NT_j) aller Objekte durchgeführt, die anhand der Eingabebildaufnahme I_j erkannt werden.
- (2-1) Die Positionen R_Pi' aller Merkmalspunkte P_i (i = 1 bis NP) des Modellmusters, wie aus dem Bildaufnahmekoordinatensystem ersichtlich, werden auf Basis der Position R_Tjg der Aufnahme des Objekts berechnet.
- (2-2) Ein Punkt wird an Position R_Pi' der Eingabebildaufnahme I_j aufgetragen. Wenn die erste Markierung L1_jg „OK ist, wird der Punkt grün aufgetragen. Wenn die erste Markierung L1_jg „NG” ist, wird der Punkt rot aufgetragen. Der Merkmalspunkt P_i kann nicht als Punkt aufgetragen werden und stattdessen kann er als Zeilensegment aufgetragen werden. Aus diesem Grund wird die erste Markierung L1_jg als Reihe von Merkmalspunkten des Objekts ausgedrückt, das grün oder rot angezeigt wird.
-
Es folgt eine Erläuterung der zweiten Markierung.
- – Jede Eingabebildaufnahme hat eine zweite Markierung L2_j (j = 1 bis NI).
- – Eine Korrekturschaltfläche für eine zweite Markierung ist oben links jeder Eingabebildaufnahme angeordnet. Die Korrekturschaltfläche für die zweite Markierung kann außerhalb der Bildaufnahme angeordnet werden, z. B. unter der Eingabebildaufnahme.
-
Die zweite Markierung L2_j wird wie folgt auf Basis der ersten Markierung L1_jg (g = 1 bis NT_j) ermittelt.
- – Wenn die ersten Markierungen L1_jg der Aufnahmen aller Objekte auf der gleichen Eingabebildaufnahme „OK” sind, werden die zweiten Markierungen L2_j auf „OK” eingestellt.
- – Wenn die Aufnahmen der Objekte auf der gleichen Eingabebildaufnahme auch nur eine einzelne Aufnahme umfassen, deren erste Markierung L1_jg „NG” ist, wird die zweite Markierung L2_j auf „NG” eingestellt.
-
Die Korrekturschaltfläche für die zweite Markierung wird wie folgt angezeigt.
- – Die zweite Markierung wird als Markierung angezeigt, die auf der Korrekturschaltfläche für die zweite Markierung angezeigt wird.
- – Wenn die zweite Markierung „OK” ist, ist die Hintergrundfarbe der Korrekturschaltfläche für die zweite Markierung grün, und wenn die zweite Markierung „NG” ist, ist die Hintergrundfarbe der Korrekturschaltfläche für die zweite Markierung rot.
-
Wenn die Korrekturschaltfläche für die zweite Markierung angeklickt wird, wird die zweite Markierung L2_j zwischen „OK” und „NG” umgeschaltet. Demgemäß werden die ersten Markierungen L1_jg der Aufnahmen aller Objekte auf der gleichen Bildaufnahme ebenfalls auf die gleiche wie L2_j geändert. Synchron mit der Änderung der ersten Markierung L1_jg und der zweiten Markierung L2_j wird auch der Bildschirm aktualisiert.
-
9 ist ein Schaubild, das ein Beispiel einer Anzeige nach Klicken auf die Korrekturschaltfläche für die zweite Markierung in dem Zustand von 8 veranschaulicht. Die zweite Markierung der zweiten Bildaufnahme von links in der ersten Reihe ändert sich von „OK” auf „NG”.
-
Wenn der Benutzer auf die Eingabebildaufnahme I_j auf dem Eingabebildaufnahme-Listenbildschirm klickt, wird ein Erkennungsergebnislistenbildschirm angezeigt, der eine Liste von Erkennungsergebnissen für diese Eingabebildaufnahme anzeigt.
-
10 ist ein Schaubild, das ein Beispiel einer Anzeige eines Erkennungsergebnislistenbildschirms veranschaulicht.
-
Wie in 10 veranschaulicht, werden die Aufnahmen T_jg (g = 1 bis NT_j) der Objekte auf der ausgewählten Eingabebildaufnahme I_j auf dem Erkennungsergebnislistenbildschirm aufgelistet und wie folgt angezeigt.
- – Ein erster Rahmenbereich und ein zweiter Rahmenbereich werden auf dem Erkennungsergebnislistenbildschirm angezeigt.
- – Im ersten Rahmenbereich und im zweiten Rahmenbereich kann die Anzeigevergrößerungsrate der Bildaufnahme auf eine andere Rate geändert werden.
- – Die Größen des ersten Rahmenbereichs und des zweiten Rahmenbereichs können ebenfalls geändert werden. Beispielsweise können die Größen der zwei Rahmenbereich durch Ziehen der Grenzlinie zwischen dem ersten Rahmenbereich und dem zweiten Rahmenbereich geändert werden.
- – Wenn die Zurück-Schaltfläche angeklickt wird, kann der Benutzer zum Eingabebildaufnahme-Listenbildschirm zurückkehren.
-
Im ersten Rahmenbereich wird die gesamte Bildaufnahme angezeigt.
- – Wenn eine Vergrößerungsraten-Dropdown-Liste des ersten Rahmenbereichs verwendet wird, kann die Anzeigevergrößerungsrate der Gesamtbildaufnahme verändert werden.
- – Wenn die Gesamtbildaufnahme nicht in den ersten Rahmenbereich fällt, wird ein Scrollbalken angezeigt.
- – Ein Modellmuster kann mit dem gleichen Verfahren wie das Verfahren zum Auftragen des Modellmusters auf die Bildaufnahme des Eingabebildaufnahme-Listenbildschirms auf die Aufnahme des erkannten Objekts auf der Gesamtbildaufnahme aufgetragen werden.
-
Eine Teilbildaufnahme wird im zweiten Rahmenbereich angezeigt.
- – Wenn die Vergrößerungsraten-Dropdown-Liste des zweiten Rahmenbereichs verwendet wird, kann die Anzeigevergrößerungsrate der Teilbildaufnahme verändert werden.
- – Wenn nicht alle Teilbildaufnahmen in den zweiten Rahmenbereich passen, wird ein Scrollbalken angezeigt. Der Scrollbalken kann vertikal oder horizontal gezeigt werden.
- – Die Teilbildaufnahme wird für die Aufnahme T_jg (g = 1 bis NT_j) jedes Objekts erzeugt. Die Teilbildaufnahme wird gemäß der folgenden Verfahrensweise erzeugt.
- 1. Ein Modellmuster wird auf das Bild des erkannten Objekts der Eingabebildaufnahme aufgetragen. Dazu werden die folgenden Verfahrensweisen (1-1) bis (1-2) an der Aufnahme T_jg des Objekts durchgeführt.
(1-1) Die Position R_Pi' aller Merkmalspunkte P_i (i = 1 bis NP) des Modellmusters, wie aus dem Bildaufnahmekoordinatensystem ersichtlich, wird auf Basis der Position R_Tjg der Aufnahme des Objekts berechnet.
(1-2) Ein Punkt wird an Position R_Pi' der Eingabebildaufnahme I_j aufgetragen. Wenn die erste Markierung L1_jg „OK” ist, wird der Punkt grün aufgetragen. Wenn die erste Markierung L1_jg „NG” ist, wird der Punkt rot aufgetragen. Der Merkmalspunkt P_i kann nicht als Punkt aufgetragen werden und stattdessen kann er als Zeilensegment aufgetragen werden.
- 2. Ein maximaler Wert tx_Pi_max und ein Mindestwert tx_Pi_min in X-Richtung und ein maximaler Wert ty_Pi_max und ein Mindestwert ty_Pi_min in Y-Richtung der Position t_Pi' = (tx_Pi, ty_Pi) aller R_Pi' (i = 1 bis NP), die berechnet wurden, werden abgeleitet.
- 3. Wenn eine Form, bei der eine Teilbildaufnahme gegenüber der Eingabebildaufnahme zugeschnitten wird, ein Rechteck ist, wird das Rechteck durch die Position am oberen linken Scheitel und die Position am unteren rechten Scheitel definiert. Wenn die Begrenzung aist, kann die Position des oberen linken Scheitels als (tx_Pi_min – a, ty_Pi_min – a) berechnet werden und kann die Position des unteren rechten Scheitels als (tx_Pi_max + a, ty_Pi_max + a) berechnet werden. Die Begrenzung a kann ein vorab festgelegter Wert sein oder kann anhand der Größe der Bildaufnahme berechnet werden.
- 4. Eine Bildaufnahme wird gegenüber der Eingabebildaufnahme mit dem berechneten Rechteck zugeschnitten und die Bildaufnahme wird als Teilbildaufnahme verwendet.
-
Wenn die Teilbildaufnahme von der Teilbildaufnahme-Auswahleinheit 51 ausgewählt wird, wird die Teilbildaufnahme in einen Auswahlzustand gesetzt, um hervorgehoben angezeigt zu werden. Beispielsweise wenn die Teilbildaufnahme angeklickt wird, wird die Teilbildaufnahme so angezeigt, dass sie sich von anderen Teilbildaufnahmen unterscheidet, d. h. die Teilbildaufnahme wird hervorgehoben angezeigt. Um die Teilbildaufnahme hervorgehoben anzuzeigen, kann z. B. die Teilbildaufnahme von einer Rahmenlinie in heller Farbe umschlossen werden. Die Aufnahme T_jg des Objekts, die der Teilaufnahme entspricht, wird in der Gesamtbildaufnahme ebenfalls hervorgehoben angezeigt. Um die Gesamtbildaufnahme hervorgehoben anzuzeigen, kann das Bild des Objekts ebenfalls von einer hellen Rahmenlinie umschlossen werden. Die Form der Rahmenlinie kann gleich wie das Rechteck sein, auf das die Teilbildaufnahme zugeschnitten wird. Alternativ kann sie durch Ändern der Farbe, mit der das Modellmuster aufgetragen wird, hervorgehoben angezeigt werden. Des Weiteren kann, wenn die Gesamtbildaufnahme vergrößert wird und nur ein Abschnitt der Gesamtbildaufnahme angezeigt wird, die Gesamtbildaufnahme automatisch gescrollt werden, so dass der Benutzer die Aufnahme des Objekts, wie hervorgehoben angezeigt, prüfen kann.
- – Jede Teilbildaufnahme wird mit der ersten Markierung L1_jg (j = 1 bis NI, g = 1 bis NT_j) assoziiert.
- – Eine Korrekturschaltfläche für die erste Markierung ist oben links jeder Teilbildaufnahme angeordnet. Die Korrekturschaltfläche für die erste Markierung kann außerhalb der Bildaufnahme angeordnet werden, z. B. unmittelbar unter der Teilbildaufnahme.
- – Eine erste Markierung („OK” oder „NG”) wird auf der Korrekturschaltfläche für die erste Markierung angezeigt.
- – Wenn die erste Markierung „OK” ist, ist die Hintergrundfarbe der Korrekturschaltfläche für die erste Markierung grün, und wenn die erste Markierung „NG” ist, ist die Hintergrundfarbe der Korrekturschaltfläche für die erste Markierung rot.
- – Wenn die Korrekturschaltfläche für die erste Markierung angeklickt wird, wird die erste Markierung L1_jg zwischen „OK” und „NG” umgeschaltet. Synchron mit der Änderung der ersten Markierung L1_jg wird auch der Bildschirm aktualisiert.
-
11 ist ein Schaubild, das einen Anzeigebildschirm nach Klicken auf eine Korrekturschaltfläche für die erste Markierung in dem Zustand von 10 veranschaulicht. Die Teilbildaufnahme oben links im zweiten Rahmenbereich und der Merkmalspunkt des Objekts im ersten Rahmenbereich, der der Teilbildaufnahme entspricht, wird von grün auf rot geändert. Die Korrekturschaltfläche für die erste Markierung, die in Assoziation mit der Teilbildaufnahme oben links im zweiten Rahmenbereich angezeigt wird, wird von „OK” auf „NG” geändert.
-
12 ist ein Schaubild, das ein weiteres Beispiel einer Anzeige eines Erkennungsergebnislistenbildschirms veranschaulicht.
-
Wie in 12 veranschaulicht, kann der erste Rahmenbereich bei einem weiteren Anzeigebildschirm vergrößert werden und kann der zweite Rahmenbereich verkleinert werden. Bei diesem Beispiel ist die Vergrößerungsrate des ersten Rahmenbereichs 50% und die ist Vergrößerungsrate des zweiten Rahmenbereichs 25%. Bei einer solchen Konfiguration kann der Benutzer im zweiten Rahmenbereich die ganze Aufnahme jedes Objekts im zweiten Rahmenbereich grob prüfen und wenn der Benutzer genauer prüfen möchte, kann der Benutzer die Aufnahme im ersten Rahmenbereich prüfen.
-
13 ist ein Schaubild, das ein noch weiteres Beispiel einer Anzeige eines Erkennungsergebnislistenbildschirms veranschaulicht.
-
Wie in 13 veranschaulicht, kann die Vergrößerungsrate des ersten Rahmenbereichs bei einem noch weiteren Anzeigebeispiel verringert werden und kann die Vergrößerungsrate des zweiten Rahmenbereichs erhöht werden. Bei diesem Beispiel ist die Vergrößerungsrate des ersten Rahmenbereichs 25% und die ist Vergrößerungsrate des zweiten Rahmenbereichs 50%. Gemäß einer solchen Konfiguration kann der Benutzer die Aufnahme des Objekts genau prüfen, indem die Aufnahme vergrößert im zweiten Rahmenbereich angezeigt wird, und der Benutzer kann herausfinden, an welcher Position sich das Objekt in der Gesamtbildaufnahme im ersten Rahmenbereich befindet.
-
14 ist ein Schaubild, das ein noch weiteres Beispiel einer Anzeige eines Erkennungsergebnislistenbildschirms veranschaulicht.
-
Bei dem Beispiel von 14 sind eine Vorherige-Bildaufnahme-Schaltfläche, eine Nächste-Bildaufnahme-Schaltfläche und ein Textfeld für einen Index einer Bildaufnahme zum unteren Teil des Erkennungsergebnislistenbildschirms hinzugefügt.
-
Wenn die Vorherige-Bildaufnahme-Schaltfläche gedrückt wird, werden eine vorherige Eingabebildaufnahme I_j – 1, wobei es sich um eine Bildaufnahme vor der Eingabebildaufnahme I_j handelt, und Erkennungsergebnisse T_j – 1g (g = 1 bis NT_j – 1) angezeigt.
-
Wenn die Nächste-Bildaufnahme-Schaltfläche gedrückt wird, werden eine nächste Eingabebildaufnahme I_j + 1, wobei es sich um eine Bildaufnahme nach der Eingabebildaufnahme I_j handelt, und Erkennungsergebnisse T_j + 1g (g = 1 bis NT_j + 1) angezeigt.
-
Wenn ein ganzzahliger Wert x in das Textfeld für den Index der Bildaufnahme eingegeben wird, werden die Eingabebildaufnahme I_x und die Erkennungsergebnisse T_xg (g = 1 bis NT_x) angezeigt.
-
Demgemäß können eine weitere Eingabebildaufnahme und die Erkennungsergebnisse für die Bildaufnahme auf dem Erkennungsergebnislistenbildschirm angezeigt werden, ohne dass zum Eingabebildaufnahme-Listenbildschirm zurückgekehrt wird.
-
15 ist ein Schaubild, das ein noch weiteres Beispiel einer Anzeige eines Erkennungsergebnislistenbildschirms veranschaulicht.
-
Die Anordnung des ersten Rahmenbereichs und des zweiten Rahmenbereichs ist ggf. keine Nebeneinanderanordnung, sondern eine vertikale Anordnung. Der erste Rahmenbereich und der zweite Rahmenbereich können auch wie in 15 veranschaulicht angeordnet sein. Bei einer solchen Anordnung können mehr Aufnahmen von Objekten angeordnet und als Teilbildaufnahmen angezeigt werden.
-
In Schritt S105 werden mehrere Datensätze, die die Aufnahme T_jg (j = 1 bis NI, g = g = 1 bis NT_j) der erkannten Objekte und die ersten Markierungen L1_jg umfassen, als Lerndaten verwendet und die Lerneinheit 22 führt ein solches Maschinenlernen oder statistisches Verarbeiten durch. Die von der Lerneinheit 22 durchgeführte Verarbeitung, die den Fall der zweiten Ausführungsform umfasst, wird später erläutert.
-
Der folgende Fall kann als Modifikation der Bildverarbeitungseinrichtung gemäß der ersten Ausführungsform angesehen werden.
- – Mehrere Modellmuster können gehalten werden und ein Name wird jedem Modellmuster zugewiesen. Ein Name eines übereinstimmenden Modellmusters wird in der Markierung verwendet. Wenn die Markierung korrigiert wird, wird die Markierung mit der Dropdown-Liste ausgewählt.
- – Anstatt ein Modellmuster mit mehreren Merkmalspunkten zu definieren, kann das Modellmuster als Form einer Vorlagen-Bildaufnahme definiert werden. In diesem Fall wird ein Objekt unter Verwendung einer Technik wie z. B. normalisierter Korrelation erkannt. Wenn eine Vorlagen-Bildaufnahme als Modellmuster verwendet wird, kann ein Merkmalspunkt nicht aufgetragen werden; aus diesem Grund ist es erforderlich, ein Erkennungsergebnis auszudrücken, z. B. durch Auftragen eines Rechtecks um die Aufnahme des Objekts.
- – Die Markierung wird unter Verwendung eines Kontrollkästchens oder eines Textfelds anstatt einer Schaltfläche korrigiert. Wenn das Kontrollkästchen verwendet wird, können nur zwei Werte ausgewiesen werden. Wenn das Textfeld verwendet wird, kann eine beliebige bestimmte Zeichenfolge eingegeben werden.
- – Die Vergrößerungsrate wird mit einem Schieber anstatt einer Dropdown-Liste verändert.
- – Der Benutzer bestimmt die Vergrößerungsrate nicht. Stattdessen wird die Vergrößerungsrate anhand der Bildschirmgröße und der Bildaufnahmegröße automatisch ermittelt.
- – Anstatt einen Merkmalspunkt eines Modellmusters auf einer Bildaufnahme aufzutragen, wird eine Mittelposition eines Modellmusters oder ein Rechteck, das ein Modellmuster umschließt, aufgetragen. Das Auftragen kann durch Kombinieren dieser erfolgen. Die Mittelposition und das Rechteck, das das Modellmuster umschließt, können vom Benutzer manuell definiert werden oder können automatisch festgelegt werden, wenn das Modellmuster erzeugt wird.
- – Wenn viele Bildaufnahmen auf dem Eingabebildaufnahme-Listenbildschirm angezeigt werden, wechselt der Benutzer die anzuzeigende Aufnahme durch Wechseln der Seite, anstatt mit dem Scrollbalken zu scrollen. Beispielsweise wenn 100 Bildaufnahmen vorhanden sind, werden 9 Bildaufnahmen auf einer einzelnen Seite angezeigt und werden die Aufnahmen nach Aufteilung auf 12 Seiten angezeigt. Im zweiten Rahmenbereich des Erkennungsergebnislistenbildschirms kann das gleiche Verfahren herangezogen werden.
- – Ein Verfahren zum Zuschneiden einer Teilbildaufnahme eines Erkennungsergebnislistenbildschirms kann wie folgt sein.
- 1. Ein Rechteck, das ein Modellmuster umschließt, wird vorab definiert. Dieses Rechteck kann automatisch definiert werden, wenn ein Modellmuster gelehrt wird, oder kann vom Benutzer manuell definiert werden. Das Rechteck wird durch die Positionsausrichtung eines Scheitels U1 am linken Ende des Rechtecks und mit einer Breite U_W und einer Höhe U_H definiert. Die Positionsausrichtung des Scheitels U1, wie aus dem Modellmusterkoordinatensystem ersichtlich, wird mit einer homogenen Transformationsmatrix R_U1 definiert.
- 2. Eine Positionsausrichtung R_U1' des Scheitels U1, wie aus dem Bildaufnahmekoordinatensystem ersichtlich, wird auf Basis der Position R_Tjg der Aufnahme des Objekts berechnet.
- 3. Eine Teilbildaufnahme wird unter Verwendung der Positionsausrichtung R_U1' des Scheitels U1 im Bildaufnahmekoordinatensystem, mit der Breite U_W und der Höhe U_H zugeschnitten.
-
In diesem Fall wird die Aufnahme des Objekts auf der Teilbildaufnahme mit der gleichen Ausrichtung angezeigt. Es sei verstanden, dass eine Form, zu der eine Teilbildaufnahme zugeschnitten ist, ggf. kein Rechteck ist.
-
16 ist ein Schaubild, das ein Beispiel einer Anzeige eines Erkennungsergebnislistenbildschirms veranschaulicht, wenn Aufnahmen von Objekten auf einer Teilbildaufnahme mit der gleichen Ausrichtung angezeigt werden.
- – Aufnahmen von Objekten mit unterschiedlichen Größen können gleichzeitig angezeigt werden. In diesem Fall können Aufnahmen von Objekten in der gleichen Größe angezeigt werden oder können mit dem ursprünglichen Größenverhältnis angezeigt werden.
-
17 ist ein Schaubild, das ein Beispiel einer Anzeige eines Erkennungsergebnislistenbildschirms veranschaulicht, wenn Aufnahmen von Objekten unterschiedlicher Größen gleichzeitig mit dem ursprünglichen Größenverhältnis angezeigt werden.
-
18 ist ein Ablaufplan, der einen Ablauf der Verarbeitung einer Bildverarbeitungseinrichtung gemäß der zweiten Ausführungsform veranschaulicht.
-
Die Bildverarbeitungseinrichtung gemäß der zweiten Ausführungsform umfasst die gleiche Hardwarekonfiguration wie die Bildverarbeitungseinrichtung gemäß der ersten Ausführungsform und ein Abschnitt der Verarbeitung unterscheidet sich von jener der ersten Ausführungsform. Im Rahmen der Erläuterung bezüglich der zweiten Ausführungsform wird zunächst z. B. ein Fall erläutert, bei dem die Lerneinheit 22 ein statistisches Verarbeiten durchführt.
-
19 ist ein Schaubild, das ein Beispiel einer Anzeige eines Erkennungsergebnislistenbildschirms veranschaulicht, der bei der zweiten Ausführungsform verwendet wird.
-
Auf dem Bildschirm von 19 sind ein erster Rahmenbereich und ein zweiter Rahmenbereich vertikal nebeneinander angeordnet. Eine SCHNAPPSCHUSS-Schaltfläche, eine SUCHEN-Schaltfläche und eine FERTIG-Schaltfläche befinden sich auf der rechten Seite des ersten Rahmenbereichs.
-
In Schritt S201 wird die gleiche Verarbeitung wie bei Schritt S101 der ersten Ausführungsform durchgeführt.
-
In Schritt S202 wird ein Objekt innerhalb eines Sichtfelds des visuellen Sensors 11 platziert und der Benutzer drückt die SCHNAPPSCHUSS-Schaltfläche, um eine Eingabebildaufnahme zu erfassen. Die Aufnahme des Objekts, das auf der Eingabebildaufnahme I_j gezeigt ist, umfasst vorzugsweise eine Abweichung, die bei der Erkennung zu einem Problem führen kann. Wenn der Benutzer nach dem Prüfen der Eingabebildaufnahme I_j ermittelt, dass die Eingabebildaufnahme I_j als Lerndaten nicht zu bevorzugen sind, kann der Benutzer die SCHNAPPSCHUSS-Schaltfläche erneut drücken, um die Eingabebildaufnahme I_j erneut zu erfassen. Die erfasste Bildaufnahme wird als Gesamtbildaufnahme im ersten Rahmenbereich angezeigt. Zu diesem Zeitpunkt wird das Objekt nicht erkannt und daher wird kein Modellmuster auf die Aufnahme des Objekts in der Gesamtbildaufnahme aufgetragen und die Teilbildaufnahme wird auch nicht angezeigt. Zu diesem Zeitpunkt kann nur der erste Rahmenbereich angezeigt werden und der zweite Rahmenbereich kann nicht angezeigt werden.
-
In Schritt S203 wird, wenn die SUCHEN-Schaltfläche gedrückt wird, ein Objekt anhand der Eingabebildaufnahme I_j erkannt. Die Verarbeitung der Erkennung kann auf die gleiche Weise wie bei Schritt S103 der ersten Ausführungsform erfolgen. In diesem Fall erfolgt eine Erkennung jedoch nicht nur anhand einer einzelnen Eingabebildaufnahme I_j.
-
In Schritt S204 werden die Aufnahmen T_jg (g = 1 bis NT_j) der Objekte, die anhand der Eingabebildaufnahme I_j erkannt werden, aufgelistet und auf einem Erkennungsergebnislistenbildschirm angezeigt.
-
20 ist ein Schaubild, das ein Beispiel einer Anzeige eines in Schritt S204 angezeigten Erkennungsergebnislistenbildschirms veranschaulicht.
-
Die Gesamtbildaufnahme und die Teilbildaufnahme können auf die gleiche Weise wie bei der ersten Ausführungsform angezeigt werden. Auf der rechten Seite des ersten Rahmenbereichs sind die SCHNAPPSCHUSS-Schaltfläche und die SUCHEN-Schaltfläche ausgeblendet und eine HINZUFÜGEN-Schaltfläche und eine VERWERFEN-Schaltfläche sind hinzugefügt. Der Benutzer prüft die Gesamtbildaufnahme und die Teilbildaufnahme, die auf dem Erkennungsergebnislistenbildschirm angezeigt werden und der Benutzer prüft, wie bei der ersten Ausführungsform, ob bezüglich des Erkennungsergebnisses ein Problem vorliegt.
-
Wie auf dem Erkennungsergebnislistenbildschirm der ersten Ausführungsform ist es in Schritt S204 des Weiteren möglich, die erste Markierung zu korrigieren.
-
21 ist ein Schaubild, das ein Beispiel einer Anzeige eines Erkennungsergebnislistenbildschirms veranschaulicht, wenn eine erste Markierung korrigiert wird.
-
In diesem Fall prüft der Benutzer die Aufnahme des Objekts, das mit „OK versehen ist, und wenn der Benutzer ermittelt, dass es sich nicht um das Objekt handelt, ändert der Benutzer die erste Markierung auf „NG” und die korrigierte Markierung wird gespeichert. Des Weiteren prüft der Benutzer die Aufnahme des Objekts, das mit „NG” versehen ist, und wenn der Benutzer ermittelt, dass es sich um das zu erkennende Objekt handelt, ändert der Benutzer die erste Markierung auf „OK und die korrigierte Markierung wird gespeichert.
-
In Schritt S205 ermittelt der Benutzer, ob die Aufnahmen T_jg (g = 1 bis NT_j) der Objekte zu den Lerndaten hinzuzufügen sind, und wenn ermittelt wird, dass die Aufnahmen T_jg (g = 1 bis NT_j) der Objekte zu den Lerndaten hinzuzufügen sind, drückt der Benutzer die HINZUFÜGEN-Schaltfläche, um die Aufnahmen T_jg (g = 1 bis NT_j) und die ersten Markierungen L1_jg (g = 1 bis NT_j) der Objekte mit der Eingabebildaufnahme I_j zu assoziieren, und fügt diese zu den Lerndaten hinzu. Wenn ermittelt wird, dass die Aufnahmen T_jg (g = 1 bis NT_j) der Objekte nicht zu den Lerndaten hinzuzufügen sind, drückt der Benutzer auf die VERWERFEN-Schaltfläche, um die Eingabebildaufnahme I_j und die Aufnahmen T_jg und die ersten Markierungen L1_jg der Objekte zu verwerfen. Wenn der Benutzer die HINZUFÜGEN-Schaltfläche und die VERWERFEN-Schaltfläche drückt, wird mit der Verarbeitung jeweils erneut mit Schritt S202 begonnen.
-
Wenn ausreichend Lerndaten hinzugefügt wurden, drückt der Benutzer die FERTIG-Schaltfläche und die Verarbeitung geht zu Schritt S206 über.
-
In diesem Fall kann vor S206 ein Schritt, bei dem der Eingabebildaufnahme-Listenbildschirm und der Erkennungsergebnislistenbildschirm verwendet werden, um die ersten Markierungen L1_jg (j = 1 bis NI, g = 1 bis NT_j) der Aufnahmen T_jg (j = 1 bis NI, g = 1 bis NT_j) der Objekte, die allen Eingabebildaufnahmen I_j (j = 1 bis NI) entsprechen, die zu den Lerndaten hinzugefügt wurden, geprüft und korrigiert werden, genau wie Schritt S104 der ersten Ausführungsform, hinzugefügt werden.
-
Auf Basis der gesammelten Lerndaten werden in Schritt S206 genau wie in Schritt S105 der ersten Ausführungsform mehrere Datensätze, die die Aufnahmen T_jg (j = 1 bis NI, g = 1 bis NT_j) und die ersten Markierungen L1_jg (j = 1 bis NI, g = 1 bis NT_j) der Objekte umfassen, als Lerndaten verwendet und die Lerneinheit 22 führt das statistische Verarbeiten durch.
-
Im Folgenden wird die statistische Verarbeitung, die von der Lerneinheit 22 gemäß der ersten und der zweiten Ausführungsform durchgeführt wird, erläutert.
-
Die Lerneinheit 22 führt ein Lernen durch, so dass die Aufnahmen T_jg (j = 1 bis NI, g = 1 bis NT_j) der Objekte korrekt als Objekte ermittelt werden, die dem Modellmuster entsprechen. Anders ausgedrückt führt die Lerneinheit 22 ein Lernen durch, so dass korrekt ermittelt werden kann, ob eine Aufnahme eines Objekts umfasst ist, wenn eine Teilbildaufnahme eingegeben wird, die als eine Aufnahme eines Objekts umfassend angesehen wird. Üblicherweise erkennt die Objekterkennungseinheit 21 ein Objekt anhand der Eingabebildaufnahme, so dass eine gewisse Genauigkeitshöhe erreicht wird, durch das Lernen der Lerneinheit 22 wird die Genauigkeit der Erkennung jedoch noch weiter verbessert. In diesem Fall führt die Objekterkennungseinheit 21 eine Erkennung durch, und eine Teilbildaufnahme, die als für eine Verwendung als Lernziel geeignet angesehen wird und die eine Aufnahme eines Objekts umfasst, dessen erste Markierung „OK” ist, wird in der Lerndatenspeichereinheit 32 gespeichert. Wenn die Betriebsverarbeitungsleistung der Lerneinheit 22 ausreichend hoch ist, kann eine Eingabebildaufnahme anstatt einer Teilbildaufnahme zum Erkennen von Objekten eingegeben werden. Die Lerneinheit 22 führt eine statistische Verarbeitung an mehreren Teilbildaufnahmen durch, die in der Lerndatenspeichereinheit 32 gespeichert sind, um das Modellmuster zu verbessern.
-
Der Anmelder der vorliegenden Anmeldung hat eine Technik zum Verbessern des Modellmusters durch Durchführen einer statistischen Verarbeitung an mehreren Aufnahmen von Objekten offenbart, die auf Basis eines Modellmusters aus der
japanischen Patentanmeldung Nr. 2015-218357 erkannt werden, und beispielsweise kann die Lerneinheit
22 mit einer Technik unter Verwendung einer statistischen Verarbeitung umgesetzt werden, die in der
japanischen Patentanmeldung Nr. 2015-218357 offenbart ist. Die von der Lerneinheit
22 durchgeführte statistische Verarbeitung ist jedoch nicht darauf beschränkt.
-
Die erste und die zweite Ausführungsform, bei denen die Lerneinheit 22 eine statistische Verarbeitung durchführt, wurden hier vorstehend erläutert. Nachstehend wird der Fall erläutert, dass die Lerneinheit 22 ein Maschinenlernen (überwachtes Lernen) durchführt.
-
Die Lerneinheit 22 führt ein Maschinenlernen durch, um die Wahrscheinlichkeit, dass die Objekterkennungseinheit 21 ein Objekt erkennt, zu verbessern. In diesem Fall bedeutet eine korrekte Erkennung, dass ein Objekt, bei dem es sich tatsächlich um ein Objekt handelt, korrekt als Objekt ermittelt wird, ein Objekt, bei dem es sich nicht um ein Objekt handelt, korrekt als kein Objekt ermittelt wird, und ein Erkennungsfehler, bei dem ein Objekt nicht erkannt wird, obwohl es sich um ein Objekt handelt, nicht auftritt, und eine Fehlerkennung, bei der ein Objekt, bei dem es sich tatsächlich um kein Objekt handelt, als Objekt ermittelt wird, nicht auftritt. Um ein solches Lernen durchzuführen, wird bevorzugt, dass Teilbildaufnahmen („OK”, „OK”), die von der Bildverarbeitungseinrichtung 10 als Aufnahmen von Objekten auf einer Eingabebildaufnahme ermittelt wurden und in Bezug auf welche der Benutzer geprüft hat, dass die Ermittlung korrekt ist, Teilbildaufnahmen („OK, „NG”), die von der Bildverarbeitungseinrichtung 10 als Aufnahmen von Objekten auf einer Eingabebildaufnahme ermittelt wurden, in Bezug auf welche der Benutzer jedoch geprüft hat, dass die Ermittlung inkorrekt ist, Teilbildaufnahmen („NG”, „OK”), die von der Bildverarbeitungseinrichtung 10 als keine Aufnahmen von Objekten auf Eingabebildaufnahme ermittelt wurden, in Bezug auf welche der Benutzer jedoch geprüft hat, dass die Ermittlung inkorrekt ist, und Teilbildaufnahmen („NG”, „NG”), die von der Bildverarbeitungseinrichtung 10 als keine Aufnahmen von Objekten auf einer Eingabebildaufnahme ermittelt werden und in Bezug auf welche der Benutzer geprüft hat, dass die Ermittlung korrekt ist, ähnliche Verhältnis aufweisen, was Lerndaten betrifft, um das Lernen effizient durchzuführen. Aus diesem Grund wird bei der ersten und der zweiten Ausführungsform, bei denen eine Lerneinheit 22 die statistische Verarbeitung durchführt, eine Teilbildaufnahme mit einem Verlauf, bei dem eine erste Markierung von „NG” auf „OK” geändert wurde, und eine Teilbildaufnahme mit einem Verlauf, bei dem eine erste Markierung von „OK” auf „NG” geändert wurde, mit jedem Verlauf assoziiert und in der Lerndatenspeichereinheit 32 gespeichert. Es handelt sich bei diesen um die Teilbildaufnahme („NG”, „OK) und die Teilbildaufnahme („OK, „NG”). Des Weiteren wählt der Benutzer Teilbildaufnahmen, die sich als Lerndaten eignen, aus den Teilbildaufnahmen („OK, „OK”) aus, die als Aufnahmen von Objekten auf einer Eingabebildaufnahme ermittelt wurden und in Bezug auf welche die Ermittlung aufrechterhalten wird, und aus den Teilbildaufnahmen („NG”, „NG”), die als keine Aufnahmen von Objekten auf einer Eingabebildaufnahme ermittelt wurden und in Bezug auf welche die Ermittlung aufrechterhalten wird, aus und speichert sie als Teilbildaufnahme („OK, „OK) und Teilbildaufnahme („NG”, „NG”) in der Lerndatenspeichereinheit 32. Die Ausführungsform ist jedoch nicht darauf beschränkt und Teilbildaufnahmen können willkürlich gesammelt und als Lerndaten verwendet werden. Die Teilbildaufnahmen von „NG”, „NG” können als Lerndaten verwendet werden.
-
Die Lerneinheit 22 hat eine Funktion zum Extrahieren nützlicher Regeln, wissenswerter Gleichungen, Ermittlungsreferenzen und dergleichen, die in einem Satz von Eingabedaten vorhanden sind, durch Analyse, zum Ausgeben eines Ermittlungsergebnisses dieser und zum Durchführen eines Lernens (Maschinenlernen) von Wissen. Für das Maschinenlernen gibt es diverse Techniken, die Techniken können jedoch grob gesagt in z. B. „überwachtes Lernen”, „nichtüberwachtes Lernen” und „Verstärkungslernen” eingeteilt werden, in diesem Fall wird jedoch „überwachtes Lernen” herangezogen. Um diese Techniken umzusetzen, gibt es des Weiteren eine Technik, die „tiefes Lernen” genannt wird, um das Extrahieren eines Merkmalswert selbst zu lernen. Für ein solches Maschinenlernen (Maschinenlernvorrichtung 20) kann ein Universalrechner oder ein Prozessor verwendet werden, bei einer GPGPU (allgemeine Berechnung auf Graphikverarbeitungseinheiten) jedoch kann ein großskalierter PC-Cluster und dergleichen verwendet werden, so dass die Verarbeitung mit höherer Geschwindigkeit durchgeführt werden kann.
-
Beim überwachten Lernen werden viele Sätze von Daten in die Lerneinheit 22 eingegeben, die beliebige bestimmte Eingaben und ein Ergebnis (Markierung) umfassen, so dass Merkmale in den Datensätzen gelernt werden, und ein Modell zum Schätzen eines Ergebnisses anhand einer Eingabe, d. h. eine Beziehung dieser, wird rekursiv erhalten. Wenn dieses überwachte Lernen auf die Ausführungsform angewandt wird, kann die Lerneinheit 22 z. B. unter Verwendung eines Algorithmus wie z. B. eines neuronalen Netzes umgesetzt werden.
-
Ein neuronales Netz kann beim überwachten Lernen als Approximationsalgorithmus einer Wertfunktion verwendet werden. 22 ist ein Schaubild, das ein Modell eines Neurons schematisch veranschaulicht, und 23 ist ein Schaubild, das ein dreischichtiges neuronales Netz schematisch veranschaulicht, das durch Kombinieren von Neuronen konfiguriert wird, wie in 22 veranschaulicht. Mehr im Detail wird das neuronale Netz durch z. B. eine arithmetische Vorrichtung und einen Speicher gebildet, die ein Neuronenmodell simulieren, wie in 22 veranschaulicht.
-
Wie in 22 veranschaulicht, gibt ein Neuron eine Ausgabe (Ergebnis) y gemäß mehreren Eingaben x aus (z. B. eine Eingabe x1 bis eine Eingabe x3 in 22). Die Eingaben x (x1, x2, x3) werden jeweils mit Gewichten w (w1, w2, w3) multipliziert, die den Eingaben x entsprechen. Demgemäß gibt das Neuron das Ergebnis y aus, das durch die folgende Gleichung ausgedrückt wird. Es sei angemerkt, dass es sich bei den Eingaben x, dem Ergebnis y und den Gewichten w jeweils um Vektoren handelt. In der folgenden Gleichung bezeichnet θ eine systematische Abweichung und bezeichnet fk eine Aktivierungsfunktion. y = fk(Σ n / i=1xiwi – θ)
-
Das dreischichtige neuronale Netz, das durch Kombinieren der Neuronen gebildet wird, wie in 22 gezeigt, wird unter Bezugnahme auf 23 erläutert. Wie in 23 veranschaulicht, werden mehrere Eingaben x (in diesem Fall z. B. die Eingabe x1 bis Eingabe x3) von der linken Seite des neuronalen Netzes eingegeben und die Ergebnisse y (in diesem Fall z. B. das Ergebnis y1 bis Eingabe y3) von der rechten Seite ausgegeben. Mehr im Detail werden die Eingaben x1, x2 und x3 in drei Neuronen N11 bis N13 eingegeben, nachdem sie jeweils mit entsprechenden Gewichten für die Neuronen N11 bis N13 multipliziert wurden. Die Gewichte, mit denen die Eingaben multipliziert werden, werden gesammelt als w1 bezeichnet.
-
Die Neuronen N11 bis N13 geben jeweils z11 bis z13 aus. In 23 werden z11 bis z13 gesammelt als Merkmalsvektor z1 bezeichnet und können als Vektor angesehen werden, der durch Extrahieren des Merkmalswerts des Eingabevektors erhalten wird. Dieser Merkmalsvektor z1 ist ein Merkmalsvektor zwischen dem Gewicht w1 und dem Gewicht w2. z11 bis z13 werden in zwei Neuronen N21 und N22 eingegeben, nachdem sie jeweils mit entsprechenden Gewichten für die Neuronen N21 und N22 multipliziert wurden. Die Gewichte, mit denen die Merkmalsvektoren multipliziert werden, werden gesammelt als w2 bezeichnet.
-
Die Neuronen N21 und N22 geben z21 bzw. z22 aus. In 23 werden diese z21 und z22 gesammelt als Merkmalsvektor z2 bezeichnet. Dieser Merkmalsvektor z2 ist ein Merkmalsvektor zwischen dem Gewicht w2 und Gewicht w3. z21 und z22 werden in drei Neuronen N31 bis N33 eingegeben, nachdem sie jeweils mit entsprechenden Gewichten für die Neuronen N31 bis N33 multipliziert wurden. Die Gewichte, mit denen die Merkmalsvektoren multipliziert werden, werden gesammelt als w3 bezeichnet.
-
Schließlich geben die Neuronen N31 bis N33 jeweils Ergebnis y1 bis Ergebnis y3 aus. Betriebe des neuronalen Netzes umfassen einen Lernmodus und einen Wertprognosemodus. Beim Lernmodus beispielsweise wird das Gewicht W unter Verwendung des Lerndatensatzes gelernt und unter Verwendung des Parameters wird eine Verhaltensbestimmung eines Roboters im Prognosemodus durchgeführt. Der Einfachheit halber wird er als Prognose beschrieben, es wird jedoch verstanden, dass diverse Aufgaben, z. B. Erkennung, Klassifizierung und Interferenz, durchgeführt werden können.
-
In diesem Fall können Daten, die durch tatsächliches Betreiben des Roboters im Prognosemodus erhalten werden, unmittelbar gelernt und in einem darauffolgenden Verhalten widergespiegelt werden (Online-Lernen), und es kann ein gesammeltes Lernen unter Verwendung einer Datengruppe, die vorab gesammelt wurde, durchgeführt werden und danach kann der Erkennungsmodus mit dem gleichen Parameter kontinuierlich ausgeführt werden (bündelweises Lernen). Alternativ kann der Lernmodus zwischenzeitlich jedes Mal, wenn eine gewisse Datenmenge angehäuft wurde, zwischengeschaltet werden.
-
Die Gewichte w1 bis w3 können durch Rückpropagierung gelernt werden. Es sei verstanden, dass Informationen zu einem Fehler auf der rechten Seite eintreten und zur linken Seite fließen. Die Rückpropagierung ist eine Technik zum Anpassen (Lernen) eines Gewichts für jedes Neuron, so dass ein Unterschied zwischen der Ausgabe y und der tatsächlichen Ausgabe y (Supervisor) verringert wird, wenn die Eingabe x eingegeben wird.
-
Bei einem solchen neuronalen Netz kann die Anzahl von Schichten auf drei oder mehr Schichten erhöht werden (tiefes Lernen genannt). Eine arithmetische Vorrichtung, die eine Merkmalsextraktion von Eingaben schrittweise durchführt und ein Ergebnis rekursiv ableitet, kann nur anhand der Supervisor-Daten automatisch erhalten werden.
-
24 ist ein Schaubild, das eine schematische Konfiguration der Lerneinheit 22 gemäß der ersten und der zweiten Ausführungsform veranschaulicht.
-
Die Lerneinheit 22 umfasst eine Statusquantitätsbeobachtungseinheit 61, ein neuronales Netz 62 und eine Steuereinheit 63 zum Aktualisieren eines neuronalen Netzes (NN). Wie oben beschrieben, wird die Lerneinheit 22 z. B. unter Verwendung von GPGPU (allgemeine Berechnung auf Graphikverarbeitungseinheiten) umgesetzt.
-
Die Statusquantitätsbeobachtungseinheit 61 empfängt einen Datensatz, der eine Teilbildaufnahme und erste Markierungen von Aufnahmen von darauf umfassten Objekten umfasst, von der Lerndatenspeichereinheit 32. Die Lerndatenspeichereinheit 32 speichert eine äußerst große Anzahl von Datensätzen und sendet die Datensätze in der jeweiligen Reihenfolge an die Statusquantitätsbeobachtungseinheit 61.
-
Das neuronale Netz 62 ist ein neuronales Netz zum Durchführen eines tiefen Lernens und berechnet ein Erkennungsergebnis („OK”, „NG”) in Reaktion auf eine Teilbildaufnahme, die von der Statusquantitätsbeobachtungseinheit 61 bereitgestellt wird. Im neuronalen Netz 62 kann das Gewicht für jedes Neuron von der NN-Aktualisierungssteuereinheit 63 angepasst (gelernt) werden.
-
Die NN-Aktualisierungssteuereinheit 63 vergleicht ein Erkennungsergebnis („OK”, „NG”), das vom neuronalen Netz 62 gemäß der Teilbildaufnahme, die von der Statusquantitätsbeobachtungseinheit 61 bereitgestellt wird, und der ersten Markierung (Supervisor-Daten) der Teilbildaufnahme berechnet wurde, und führt eine Aktualisierungssteuerung zum Ändern des Gewichts für jedes Neuron des neuronalen Netzes 62 durch, um die Wahrscheinlichkeit zu erhöhen, dass das Vergleichsergebnis übereinstimmt.
-
Es sei angemerkt, dass die von der Lerneinheit 22 verarbeiteten Inhalte nicht auf die obigen Inhalte beschränkt sind. Im Allgemeinen wird beim überwachten Maschinenlernen eine Funktion des Zuordnens einer Eingabe zu einer Ausgabe (Markierung), die dieser entspricht, gelernt. Die erste und die zweite Ausführungsform offenbaren eine Einheit zum Eingeben einer Eingabebildaufnahme und einer Aufnahme eines erkannten Objekts und schnellen Korrigieren einer Markierung, die eine Ausgabe dieser davon ist. Das Verfahren zum Lernen einer Funktion zum Zuordnen anhand der Eingabe und der Ausgabe kann ein beliebiges Verfahren sein.
-
Die Ausführungsformen wurden zwar hier vorstehend erläutert, der Erkennungsergebnislistenbildschirm hat jedoch die folgenden Merkmale.
- – Der Erkennungsergebnislistenbildschirm wird durch zwei Rahmenbereiche gebildet, die einen ersten (oberen) Rahmenbereich und einen zweiten (unteren) Rahmenbereich umfassen.
- – Eine Teilbildaufnahme, die durch Zuschneiden einer Aufnahme eines jeweils erkannten Objekts erhalten wird, wird im zweiten Rahmenbereich angezeigt.
- – Eine Aufnahme eines Objekts wird auf der Gesamtbildaufnahme im ersten Rahmenbereich angezeigt. Die Anordnung der Rahmenbereiche unterliegt jedoch keinen besonderen Beschränkungen und die Rahmenbereiche können entweder vertikal oder horizontal oder in einer beliebigen anderen Anordnung angeordnet werden.
- – Die Anzeigevergrößerungsrate jedes Rahmenbereichs kann unabhängig geändert werden.
- – Wenn eine Aufnahme eines Objekts im zweiten Rahmenbereich ausgewählt wird, wird eine Aufnahme eines entsprechenden Objekts im oberen Rahmenbereich hervorgehoben.
- – Des Weiteren kann, wenn nur ein Abschnitt einer Bildaufnahme im ersten Rahmenbereich angezeigt wird, die Gesamtbildaufnahme gescrollt werden, so dass die Aufnahme des ausgewählten Objekts angezeigt wird.
- – Wenn die Aufnahme des Objekts im ersten Rahmenbereich ausgewählt wird, wird die Aufnahme des entsprechenden Objekts im zweiten Rahmenbereich ausgewählt.
- – Im zweiten Rahmenbereich können Markierungen (OK/NG und dergleichen) von Erkennungsergebnissen und Ergebnisse bezüglich der Ermittlung der Korrektheit und Inkorrektheit korrigiert werden.
-
Der obige Anzeigebildschirm ist mit den folgenden Vorteilen verbunden.
- – Im zweiten Rahmenbereich kann der Benutzer eine Prüfung durchführen, wobei er sich auf eine Aufnahme eines Objekts konzentriert, die ein Ziel ist, ohne von Aufnahmen anderer Objekte auf der gleichen Bildaufnahme gestört zu werden.
- – Wenn die Markierung des erkannten Objekts geändert wird, kann der Benutzer eine Aufnahme eines Objekts, zu dem eine Schaltfläche, ein Textfeld und dergleichen gehört, auf einfache Weise identifizieren.
- – Der Benutzer kann auf einfache Weise herausfinden, in welcher Position auf der Bildaufnahme sich jede Aufnahme des erkannten Objekts befindet.
- – Im ersten Rahmenbereich wird eine Aufnahme eines Objekts auf der Gesamtbildaufnahme vergrößert angezeigt und im zweiten Rahmenbereich werden Aufnahmen von Objekten verkleinert angezeigt, so dass der Benutzer im ersten Rahmenbereich eine Aufnahme eines Objekts ausführlich prüfen kann und der Benutzer jedes der ganzen Objekte auf der zweiten Aufnahme grob prüfen kann.
- – Im Gegensatz dazu kann im zweiten Rahmenbereich eine Aufnahme jedes Objekts vergrößert angezeigt werden und kann die Gesamtbildaufnahme im ersten Rahmenbereich verkleinert angezeigt werden, so dass der Benutzer im zweiten Rahmenbereich eine Aufnahme eines Objekts ausführlich prüfen kann und der erste Rahmenbereich zeigen kann, an welcher Position auf der Gesamtbildaufnahme eine Aufnahme des Objekts befindet.
-
Des Weiteren möchte der Benutzer ggf. Erkennungsergebnisse und Ermittlungsergebnisse für mehrere Bildaufnahmen prüfen. Beispielsweise umfasst dies die folgenden Fälle.
- – Der Benutzer möchte ggf. prüfen, ob eine inkorrekte Erkennung in Bezug auf erfasste Bildaufnahmen während der Produktion vorliegt.
- – Der Benutzer möchte ggf. eine Erkennung an mehreren Bildaufnahmen durchführen, nachdem ein Erkennungsparameter geändert wurde, und der Benutzer möchte ggf. ermitteln, ob eine Erkennung an allen Bildaufnahmen korrekt durchgeführt wurde.
- – Wenn ein vorhandenes Ergebnis bezüglich der Ermittlung der Korrektheit und Inkorrektheit als Lerndaten verwendet wird, um ein Maschinenlernen eines Parameters zum Durchführen einer Ermittlung im Rahmen einer Ermittlung der Korrektheit und Inkorrektheit durchzuführen, möchte der Benutzer ggf. prüfen, ob das vorhandene Ergebnis bezüglich der Ermittlung der Korrektheit und Inkorrektheit korrekt ist, und wenn es inkorrekt ist, korrigiert der Benutzer ein Ermittlungsergebnis (Markierung).
-
Wenn der Benutzer Erkennungsergebnisse für mehrere Bildaufnahmen wie oben beschrieben prüft, ist es effektiv, ein Verfahren zu verwenden, bei dem verkleinerte Bildaufnahmen mehrerer Bildaufnahmen auf einem Eingabebildaufnahme-Listenbildschirm angeordnet und angezeigt werden, Erkennungsergebnisse auf die Bildaufnahmen aufgetragen werden, und wenn der Benutzer genauer prüft, wählt der Benutzer eine Bildaufnahme aus, um zu einem Eingabebildaufnahme-Listenbildschirm überzugehen, auf dem der Benutzer ein Erkennungsergebnis für jede Bildaufnahme, wie oben erläutert, prüft.
-
Des Weiteren sind eine Konfiguration, die in den Ansprüchen beschrieben ist, und eine Wirkung davon wie folgt.
-
Eine Bildverarbeitungseinrichtung gemäß der Erfindung umfasst eine Objekterkennungseinheit zum Erkennen einer oder mehrerer Aufnahmen von Objekt anhand einer Eingabebildaufnahme, auf der die Objekte erfasst wurden, auf Basis eines Modellmusters des Objekts und eine Erkennungsergebnisanzeigeeinheit zum graphischen Überlagern und Anzeigen eines Erkennungsergebnisses zu jeder auf diese Weise erkannten Aufnahme. Die Erkennungsergebnisanzeigeeinheit umfasst einen ersten Rahmenbereich zum Anzeigen der ganzen Eingabebildaufnahme und einen zweiten Rahmenbereich zum Auflisten und Anzeigen einer oder mehrerer Teilbildaufnahmen, die jeweils eine anhand der Eingabebildaufnahme erkannte Aufnahme umfassen. Auf der Eingabebildaufnahme, die im ersten Rahmenbereich gezeigt wird, wird ein Erkennungsergebnis überlagert und auf allen erkannten Aufnahmen angezeigt, und auf der Teilbildaufnahme, die im zweiten Rahmenbereich angezeigt wird, wird das Erkennungsergebnis einer Aufnahme, die jeder Teilbildaufnahme entspricht, überlagert und angezeigt.
-
Gemäß dieser Konfiguration können im ersten Rahmenbereich die folgenden Punkte auf der Gesamtbildaufnahme geprüft werden.
- – Wo und wie die Aufnahme des Objekts gezeigt ist.
- – Wie viele Aufnahmen von Objekten gezeigt sind.
- – Ob Aufnahmen mehrerer Objekte anhand des gleichen Abschnitts erkannt wurden.
-
Im zweiten Rahmen kann der Benutzer eine Prüfung durchführen, wobei er sich auf eine Aufnahme eines Objekts konzentriert, die ein Ziel ist, ohne von Aufnahmen anderer Objekte auf der gleichen Bildaufnahme gestört zu werden.
-
Der erste Rahmenbereich und der zweite Rahmenbereich werden gleichzeitig im gleichen Fenster angezeigt, so dass die Aufnahme des Objekts geprüft werden kann, während gleichzeitig die obigen Vorteile genutzt werden. Demgemäß können die Aufnahmen mehrerer Objekte, die auf der Bildaufnahme gezeigt sind, in kurzer Zeit geprüft werden.
-
Wie in der
internationalen Veröffentlichung Nr. 2001/041068 beschrieben, kann ein Verfahren zum Anzeigen einer Gesamtbildaufnahme im ersten Rahmenbereich und zum Anzeigen eines Erkennungsergebnisses in einem Tabellenformat im zweiten Rahmenbereich berücksichtigt werden. Bei diesem Verfahren ist es jedoch schwierig, eine Beziehung zwischen einer Zeile einer Tabelle, die ein Erkennungsergebnis ausdrückt, und einer Aufnahme eines Objekts auf der Bildaufnahme zu erkennen. Beim Prüfen eines Erkennungsergebnisses unter Verwendung von Zeichen im Tabellenformat hingegen ermöglicht das Verfahren des Sehens der Teilbildaufnahme dem Benutzer eine intuitivere Prüfung der Aufnahme des Objekts.
-
Die Erkennungsergebnisanzeigeeinheit überlagert ferner erste Markierungsinformationen, die in Assoziation mit einer Aufnahme gespeichert sind, entsprechend jeder Teilbildaufnahme, auf der im zweiten Rahmenbereich angezeigten Teilbildaufnahme und zeigt diese dort an und ermöglicht einem Benutzer das Ändern der ersten Markierungsinformationen auf Basis eines vom Benutzer durchgeführten Betriebs.
-
Wenn eine Einheit zum Betreiben einer Markierung auf der Teilbildaufnahme im zweiten Rahmenbereich bereitgestellt ist, gestaltet sich das Erkennen einer Beziehung zwischen der Aufnahme des Objekts und der Betriebseinheit für die Markierung einfacher. Die Markierungen können korrigiert werden, ohne dass ein Betrieb des Auswählens eines Objekts durchgeführt wird. Bei dem in der
internationalen Veröffentlichung 2001/041068 beschriebenen Verfahren ist es z. B. erforderlich, eine Markierung nach Auswahl eines Objekts zu korrigieren. Es gibt noch ein anderes Verfahren, das das Hervorheben einer Aufnahme eines Objekts, die einem Erkennungsergebnis entspricht, wenn ein Erkennungsergebnis in einem Tabellenformat angezeigt wird und eine Zeile der Tabelle ausgewählt wird, auf einer Gesamtbildaufnahme und das Bereitstellen einer Einheit zum Korrigieren einer Markierung in einer Zeile der Tabelle umfasst. Bei diesem Verfahren ist es jedoch erforderlich, eine Zeile einer Tabelle auszuwählen, um eine Bildaufnahme zu prüfen. Es gibt ein noch weiteres Verfahren zum Bereitstellen einer Einheit zum Betreiben einer Markierung auf einer Gesamtbildaufnahme in einem ersten Rahmenbereich, bei diesem Verfahren ist es jedoch schwierig, eine Entsprechungsbeziehung zwischen der Betriebseinheit und der Aufnahme des Objekts zu finden, wenn Aufnahmen von Objekten einander überlappen oder nebeneinanderliegen.
-
Die Erkennungsergebnisanzeigeeinheit zeigt Bildaufnahmen im ersten Rahmenbereich und im zweiten Rahmenbereich mit einer Einstellungsvergrößerungsrate für jede dieser an.
-
Zunächst kann die ganze Aufnahme eines Objekts so konfiguriert sein, dass sie im ersten Rahmenbereich vergrößert und auf einer Gesamtbildaufnahme angezeigt wird, und Aufnahmen von Objekten können so konfiguriert sein, dass sie im zweiten Rahmenbereich verkleinert und angezeigt werden. In diesem Fall kann der Benutzer die Aufnahme des Objekts genau prüfen, indem die Aufnahme vergrößert im ersten Rahmenbereich angezeigt wird, und der Benutzer kann die ganze Aufnahme jedes Objekts im zweiten Rahmenbereich grob prüfen. Danach kann eine Aufnahme jedes Objekts so konfiguriert sein, dass sie im zweiten Rahmenbereich vergrößert angezeigt wird, und Aufnahmen aller Objekte können so konfiguriert sein, dass sie im ersten Rahmenbereich verkleinert angezeigt werden. In diesem Fall kann der Benutzer im zweiten Rahmen eine Aufnahme eines Objekts durch Vergrößern und Anzeigen der Aufnahme des Objekts genau prüfen. Auf der ersten Aufnahme kann der Benutzer herausfinden, an welcher Position in der Gesamtbildaufnahme sich das Objekt befindet. Wie oben beschrieben, prüft der Benutzer die Aufnahme des Objekts gleichzeitig mit unterschiedlichen Vergrößerungsraten für das gleiche Objekt, so dass der Benutzer die Aufnahme des Objekts schneller prüfen kann.
-
Die Erkennungsergebnisanzeigeeinheit umfasst eine Teilbildaufnahme-Auswahleinheit zum Auswählen einer einer Mehrzahl der Teilbildaufnahmen, die im zweiten Rahmenbereich angezeigt werden, und auf der im ersten Rahmenbereich angezeigten Eingabebildaufnahme wird ein Erkennungsergebnis einer Aufnahme eines Objekts, entsprechend einer Teilbildaufnahme, die von der Teilbildaufnahme-Auswahleinheit (51) ausgewählt wird, hervorgehoben angezeigt.
-
Gemäß dieser Konfiguration kann der Benutzer eine Entsprechungsbeziehung zwischen einer Aufnahme eines Objekts, die auf der Gesamtbildaufnahme im ersten Rahmenbereich angezeigt wird, und einer Aufnahme eines Objekts, die auf der Teilbildaufnahme im zweiten Rahmenbereich angezeigt wird, auf einfache Weise prüfen.
-
Die Erkennungsergebnisanzeigeeinheit überlagert die ersten Markierungsinformationen, die jeder der einen oder mehreren Aufnahmen entsprechen, die anhand der Eingabebildaufnahme erkannt werden, auf der im ersten Rahmenbereich angezeigten Eingabebildaufnahme.
-
Gemäß dieser Konfiguration kann der Benutzer Informationen zur Markierung sogar auf der Gesamtbildaufnahme im ersten Rahmenbereich prüfen. Dies ist nützlich, wenn sich das Prüfen der Aufnahme des Objekts mit nur der Teilbildaufnahme schwierig gestaltet. Beispielsweise wenn die Aufnahme des Objekts einen Abschnitt eines Elements zeigt, kann es schwierig sein, die Positionsbeziehung der Aufnahme des Objekts hinsichtlich des ganzen Elements zu prüfen. In einem solchen Fall kann der Benutzer die Aufnahme des Objekts durch Anzeigen von Markierungsinformationen auf der Gesamtbildaufnahme im ersten Rahmenbereich auf einfache Weise prüfen.
-
Die Bildverarbeitungseinrichtung umfasst eine Erkennungsergebnisspeichereinheit, die eine Mehrzahl von Eingabebildaufnahmen mit Erkennungsergebnissen einer oder mehrerer Aufnahmen der Objekte umfasst, die anhand jeder der Mehrzahl von Eingabebildaufnahmen erkannt werden, assoziiert und diese speichert, und eine Eingabebildaufnahme-Auswahleinheit zum Auswählen einer der Mehrzahl von Eingabebildaufnahmen, und die Erkennungsergebnisanzeigeeinheit zeigt die eine der Eingabebildaufnahmen, die von der Eingabebildaufnahme-Auswahleinheit ausgewählt wird, und ein Erkennungsergebnis, das in der Erkennungsergebnisspeichereinheit in Assoziation mit der einen der Eingabebildaufnahmen gespeichert ist, an.
-
Gemäß dieser Konfiguration kann der Benutzer mehrere Bildaufnahmen in der Erkennungsergebnisanzeigeeinheit prüfen, ohne zwischen der Eingabebildaufnahme-Anzeigeeinheit und der Erkennungsergebnisanzeigeeinheit hin- und herzuwechseln. Beispielsweise wird eine Nächste-Bildaufnahme-Schaltfläche als Eingabebildaufnahme-Auswahleinheit in der Erkennungsergebnisanzeigeeinheit bereitgestellt, so dass der Benutzer Bildaufnahmen in der Erkennungsergebnisanzeigeeinheit sukzessive ändern kann.
-
Die Bildverarbeitungseinrichtung umfasst eine Eingabebildaufnahme-Anzeigeeinheit, die die Mehrzahl von in der Erkennungsergebnisspeichereinheit gespeicherten Eingabebildaufnahmen nach Überlagerung einer oder mehrerer Aufnahmen und Erkennungsergebnisse der anhand der Eingabebildaufnahmen erkannten Objekte auflistet und anzeigt. Die Erkennungsergebnisanzeigeeinheit zeigt die von der Eingabebildaufnahme-Auswahleinheit ausgewählte Eingabebildaufnahme an und ermöglicht das Wechseln zwischen der Eingabebildaufnahme-Anzeigeeinheit und der Erkennungsergebnisanzeigeeinheit auf Basis eines vom Benutzer durchgeführten Betriebs.
-
Mit der Eingabebildaufnahme-Anzeigeeinheit werden Erkennungsergebnisse für eine Mehrzahl von Bildaufnahmen aufgelistet und angezeigt, so dass der Benutzer eine Bildaufnahme erkennen kann, bei der ein Problem zu bestehen scheint, und wenn der Benutzer die Bildaufnahme genauer prüfen möchte, kann der Benutzer nur das Erkennungsergebnis für diese Bildaufnahme mit der Erkennungsergebnisanzeigeeinheit prüfen. Folglich kann der Benutzer intuitiv zu einem Bildschirm übergehen, um eine Erkennung in Bezug auf eine bestimmte Bildaufnahme aus vielen Bildaufnahmen zu prüfen.
-
Die Erkennungsergebnisspeichereinheit assoziiert zweite Markierungsinformationen mit einer Mehrzahl von Eingabebildaufnahmen und speichert diese, und die Eingabebildaufnahme-Anzeigeeinheit überlagert ferner die zweite Markierung, die in Assoziation mit jeder der Mehrzahl von Eingabebildaufnahmen gespeichert ist, und zeigt diese an und ermöglicht einem Benutzer das Ändern der zweiten Markierungsinformationen, und wenn der Benutzer die zweiten Markierungsinformationen einer der Eingabebildaufnahmen ändert, werden die ersten Markierungsinformationen, die jeweils den Aufnahmen der Mehrzahl von Objekten entsprechen, die in Assoziation mit der Eingabebildaufnahme gespeichert sind, gesammelt geändert.
-
Gemäß dieser Konfiguration kann der Benutzer, wenn ein Erkennungsergebnis einfach durch Prüfen jeder Bildaufnahme mit der Eingabebildaufnahme-Anzeigeeinheit geprüft werden kann, eine Markierung eines Erkennungsergebnisses korrigieren, ohne auf den Erkennungsergebnisanzeigebildschirm zu wechseln. Beispielsweise wenn die Aufnahme des Objekts mit der Eingabebildaufnahme-Anzeigeeinheit ausreichend groß angezeigt wird, muss der Benutzer sie nicht auf dem Erkennungsergebnisanzeigebildschirm prüfen. Wenn jedoch eine Mehrzahl von Erkennungsergebnissen auf der Bildaufnahme angezeigt werden, kann dieses Verfahren nur verwendet werden, wenn alle Erkennungsergebnisse auf die gleiche Markierung geändert werden. Wenn nur ein einzelnes Erkennungsergebnis auf der Bildaufnahme angezeigt wird, prüft der Benutzer diese wahrscheinlich nur mit der Eingabebildaufnahme-Anzeigeeinheit. In diesem Fall ist es nicht erforderlich, auf die Eingabebildaufnahme-Anzeigeeinheit zu wechseln, um jede Markierung zu korrigieren, da nur eine einzelne Markierung vorhanden ist. Mit einer solchen Funktion kann das Problem mit dem gleichen Verfahren behandelt werden, unabhängig davon, ob ein einzelnes Erkennungsergebnis oder eine Mehrzahl von Erkennungsergebnissen auf einer Bildaufnahme vorhanden sind.
-
Die Bildverarbeitungseinrichtung umfasst eine Lerndatenspeichereinheit, die erste Markierungsinformationen zu jeder der erkannten Aufnahmen hinzufügt, diese miteinander assoziiert, um Lerndaten zu bilden, und die Lerndaten speichert, und eine Lerneinheit, die ein Maschinenlernen oder ein statistisches Verarbeiten auf Basis der Lerndaten durchführt.
-
Gemäß dieser Konfiguration wird eine Erkennung oder Ermittlung der Korrektheit und Inkorrektheit an einer Aufnahme eines Objekts durchgeführt, so dass die Genauigkeit des Hinzufügens der ersten Markierungsinformationen verbessert wird.
-
Bei der mit der Bildverarbeitungseinrichtung gemäß der vorliegenden Erfindung erzielten Anzeige liegt ein Vorteil darin, dass ein Erkennungsergebnis und ein Ergebnis bezüglich der Ermittlung der Korrektheit und Inkorrektheit zu einem Objekt, das anhand einer Eingabebildaufnahme erkannt wird, auf einfache Weise geprüft werden können.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-
- JP 2007-114843 [0006]
- WO 2001/041068 [0007, 0160, 0162]
- JP 2013-142558 [0008]
- JP 2015-218357 [0131, 0131]
-
Zitierte Nicht-Patentliteratur
-
- „Object Recognition from Local Scale-Invariant Features”, David G. Lowe, Proc. of the International Conference on Computer Vision, Corfu (Sept. 1999) [0054]
- „Generalizing the Hough Transform to Detect Arbitrary Shapes”, D. H. Ballard, Pattern Recognition Bd. 13, Nr. 2, S. 111–122, 1981 [0062]
- „Random sample consensus: a paradigm for model fitting with applications to picture image analysis and automated cartography”, Martin A. Fischler, et al., Communications of the Association for Computing Machinery, Bd. 24, Nr. 6, S. 381–395, Juni 1981 [0062]