DE602005006341T2 - Vorrichtung, Methode, Aufzeichnungsmedium und Programm zur Informationsverarbeitung - Google Patents

Vorrichtung, Methode, Aufzeichnungsmedium und Programm zur Informationsverarbeitung Download PDF

Info

Publication number
DE602005006341T2
DE602005006341T2 DE602005006341T DE602005006341T DE602005006341T2 DE 602005006341 T2 DE602005006341 T2 DE 602005006341T2 DE 602005006341 T DE602005006341 T DE 602005006341T DE 602005006341 T DE602005006341 T DE 602005006341T DE 602005006341 T2 DE602005006341 T2 DE 602005006341T2
Authority
DE
Germany
Prior art keywords
node
learning
nodes
classification
weak classifiers
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.)
Active
Application number
DE602005006341T
Other languages
English (en)
Other versions
DE602005006341D1 (de
Inventor
Kohtaro Sabe
Kenichi Hidai
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Publication of DE602005006341D1 publication Critical patent/DE602005006341D1/de
Application granted granted Critical
Publication of DE602005006341T2 publication Critical patent/DE602005006341T2/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • G06V40/165Detection; Localisation; Normalisation using facial parts and geometric relationships
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/243Classification techniques relating to the number of classes
    • G06F18/24323Tree-organised classifiers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Multimedia (AREA)
  • Computing Systems (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Software Systems (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • General Engineering & Computer Science (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Geometry (AREA)
  • Human Computer Interaction (AREA)
  • Image Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

  • Die vorliegende Erfindung bezieht sich auf Vorrichtungen und Verfahren, Aufzeichnungsmedien sowie Programme zur Informationsverarbeitung.
  • Bisher wurden verschiedene Verfahren zum Ermitteln von Gesichtern von komplexen Videoszenen auf Basis lediglich von Grauskalamustern von Bildsignalen ohne Betrachtung der Bewegung vorgeschlagen. Beispielsweise verwendet ein Gesichtsdetektor, der in der ungeprüften amerikanischen Patentanmeldungsveröffentlichung Nr. 2002/0102024 beschrieben wurde, AdaBoost, bei dem Filter verwendet werden, beispielsweise Haarbasis-Filter, als Schwachklassifizierer (schwache Lerner). Der Gesichtsdetektor ist in der Lage, schnell schwache Hypothesen unter Verwendung von integrierten Bildern und Rechteckmerkmalen, die später beschrieben werden, zu berechnen. Ein weiterer relevanter Stand der Technik ist S. Li et al "Learning to Detect Multi-View Faces in Real Time", Proc. 2. Internationale Konferenz über Entwicklung und Lernen (ICDL'02), Juni 2002, und P. Viola und M. Jones, "Rapid Object Detection using a Boosted Cascade of Simple Features", Proc. IEEE Conference an Computer Vision and Pattern Recognition (CVPR'01), Dezember 2001.
  • 1A bis 1D der beiliegenden Zeichnungen sind schematische Diagramme, welche Rechteckmerkmale zeigen, die in der amerikanischen ungeprüften Patentanmeldungsveröffentlichung Nr. 2002/0102024 beschrieben wurden. Wie in 1A bis 1D gezeigt ist, berechnen gemäß den in dem Dokument beschriebenen Verfahren mehrere Filter (schwache Hypothesen), welche Eingangsbilder 142A bis 142D betreffen, die entsprechenden Summen von Luminanzwerten in benachbarten rechteckigen Boxen der gleichen Größe und gibt die Differenz zwischen den entsprechenden Summen der Luminanzwerte in den beiden rechteckigen Boxen aus. Beispielsweise ist betreffend des Eingangsbildes 142A ein Filter 124A, welches die Summe von Luminanzwerten in einer rechteckigen Box 154A-2, welche schraffiert dargestellt ist, von der Summe der Luminanzwerte in einer rechteckigen Box 154A-1 subtrahiert, aufgebaut. Ein derartiges Filter auf Basis von zwei rechteckigen Boxen wird als 2-Rechteck-Merkmal bezeichnet.
  • Bezüglich des Eingangsbilds 142C ist eine rechteckige Box in drei rechteckige Boxen 154C-1 bis 154C-3 unterteilt, und ein Filter 154C, welches die Summe von Luminanzwerten in der mittleren rechteckigen Box 154C-2, die schraffiert gezeigt ist, von der Summe der Luminanzwerten in den rechteckigen Boxen 154C-1 und 154C-3 subtrahiert, ist aufgebaut. Ein derartiges Filter auf Basis von drei rechteckigen Boxen wird als 3-Rechteck-Merkmal bezeichnet. Bezüglich des Eingangsbilds 142D ist eine rechteckige Box vertikal und horizontal in vier rechteckige Boxen 154D-1 bis 154-D-4 unterteilt, und ein Filter 154D, welches die Summe der Luminanzwerte in den rechteckigen Boxen 154D-2 und 154D-4, die schraffiert gezeigt sind, von den rechteckigen Boxen 154D-1 und 154D-3 subtrahiert, ist aufgebaut. Ein derartiges Filter auf Basis von vier rechteckigen Boxen wird als 4-Rechteck-Merkmal bezeichnet.
  • Anschließend wird ein Beispiel zum Klassifizieren eines Gesichtsbilds, welches in 2 gezeigt ist, als ein Gesicht unter Verwendung eines Rechteckmerkmals 154B, welches in 1B gezeigt ist, beschrieben. Das 2-Rechteck-Merkmal 154B ist vertikal in zwei rechteckige Boxen 154B-1 und 154B-2 unterteilt, und die Summe der Luminanzwerte in der rechteckigen Box 154B-1, welche schraffiert gezeigt ist, wird von der Summe der Luminanzwerte in der rechteckigen Box 154B-2 subtrahiert. Auf Basis der Tatsache, dass ein Bereich eines Auges einen niedrigeren Luminanzwert als ein Bereich der Wange hat, ist es möglich, mit einer bestimmten Wahrscheinlichkeit, ob das Eingangsbild eines menschlichen Gesichtes (Objekt von Interesse) 138 einem Gesicht entspricht oder nicht (positiv oder negativ) auf Basis eines Ausgangswerts des rechteckigen Merkmals 154B zu schätzen. Dies wird als Schwachklassifizierer bei AdaBoost verwendet.
  • Um die Ermittlung von Gesichtsbereichen verschiedener Größen, welche in den Eingangsbildern enthalten sind, zuzulassen, müssen Bereiche verschiedener Größen (anschließend als Suchfenster bezeichnet) ausgeschnitten werden, um zu bestimmen, ob Bilder den Gesichtern entsprechen. In dem Fall beispielsweise eines Eingangsbilds, welches aus 320×240 Pixeln besteht, sind Gesichtsbereiche (Suchfenster) von ungefähr 50 000 Größen enthalten, und man benötigt eine extrem lange Zeit, Berechnung für alle Fenstergrößen durchzuführen. Somit werden gemäß der amerikanischen ungeprüften Patentanmeldungsveröffentlichung Nr. 2002/0102024 Bilder, welche als integrierte Bilder bezeichnet werden, verwendet. Wie in 3 gezeigt ist, ist ein integriertes Bild ein Bild, wo ein Pixel (x, y) 162 in einem Eingangsbild 144 einen Wert hat, der der Summe von Luminanzwerten der Pixel in einem Bereich entspricht, der links über dem Pixel 162 liegt, wie in der Gleichung (1) unten zum Ausdruck kommt. Das heißt, der Wert des Pixels 162 ist die Summe von Luminanzwerten von Pixeln in einem Bereich 160, der links über dem Pixel 162 liegt. Anschließend wird ein Bild, welches Pixelwerte gemäß der Gleichung (1) unten hat, als ein integriertes Bild bezeichnet.
  • Figure 00030001
  • Unter Verwendung eines integrierten Bilds ist es möglich, eine Berechnung in Bezug auf eine rechteckige Box einer beliebigen Größe schnell durchzuführen. Wie beispielsweise in 4 gezeigt ist, werden in Bezug auf eine obere linke rechteckige Box 170, eine rechteckige Box 172, welche rechts zur rechteckigen Box 170 ist, eine rechteckige Box 174, welche unterhalb der rechteckigen Box 170 ist, und eine rechteckige Box 176, welche diagonal rechts unterhalb der rechteckigen Box 170 ist, die vier Ecken der rechteckigen Box 176 bezeichnet mit p1, p2, p3 und p4 im Uhrzeigersinn von der oberen linken Ecke, und dessen integrierte Bilder mit P1, P2, P3 und P4. P1 entspricht einer Summe A der Luminanzwerte in der rechteckigen Bos 170 (P1 = A). P2 entspricht der Summe A und einer Summe B der Luminanzwerte in der rechteckigen Box 172 (P2 = A + B). P3 entspricht der Summe der Summe A und einer Summe C der Luminanzwerte in der rechteckigen Box 174 (P3 = A + C). P4 entspricht der Summe der Summen A, B, C und einer Summe D der Luminanzwerte in der rechteckigen Box 176 (P4 = A + B + C + D). Die Summe D der Luminanzwerte in der rechteckigen Box 176 kann berechnet werden durch P4 – (P2 + P3) – P1. Das heißt, die Summe der Luminanzwerte in einer rechteckigen Box kann schnell berechnet werden, indem Pixelwerte bei den vier Ecken der rechteckigen Box addiert oder subtrahiert werden. Üblicherweise wird ein Eingangsbild in unterschiedliche Maßstäbe umgesetzt, und Suchfenster, welche die gleiche Größe haben wie Lernproben, welche zum Lernen verwendet werden, werden aus den skalierten Bildern herausgeschnitten, wodurch die Ermittlung durch Suchfenster unterschiedlicher Größen zugelassen wird. Wie früher beschrieben wird jedoch die Menge der Berechnung riesig, wenn Eingangsbilder so skaliert werden, dass Suchfenster aller Größen festgesetzt werden können. Somit werden gemäß dem Verfahren, welches in der amerikanischen ungeprüften Patentanmeldungsveröffentlichung Nr. 2002/0102024 beschrieben ist, integrierte Bilder, welche schnelle Berechnung der Summen von Luminanzwerten in den jeweiligen rechteckigen Boxen erlauben, verwendet, und die Menge der Berechnung wird unter Verwendung von Rechteckmerkmalen reduziert.
  • Der Gesichtsdetektor, der in der amerikanischen ungeprüften Patentanmeldungsveröffentlichung Nr. 2002/0102024 beschrieben ist, ist jedoch in der Lage, lediglich Objekte von Größen zu ermitteln, welche ganzzahlige Vielfache der Größen von Lernproben sind, welche zum Lernen verwendet werden. Der Grund dafür gemäß in dem Dokument beschriebenen Verfahren liegt darin, dass anstelle des Änderns der Größe des Suchfensters durch Skalieren eines Eingangsbilds ein Eingangsbild in ein integriertes Bild umgesetzt wird und Gesichtsbereiche in unterschiedlichen Suchfenstern unter Verwendung des integrierten Bilds verwendet werden. Das heißt, da das integrierte Bild diskret auf Pixel-Pixel-Basis ist, wenn beispielsweise eine Fenstergröße von 20×20 verwendet wird, ist es nicht möglich, eine Größe von 30×30 für ein Suchfenster festzulegen, so dass es nicht möglich ist, ein Gesicht dieser Fenstergröße zu ermitteln.
  • Da außerdem lediglich Unterschiede zwischen Luminanzwerten von benachbarten rechteckigen Boxen als Rechteckmerkmale verwendet werden, ist es, um die Berechnungsgeschwindigkeit zu steigern, nicht möglich, eine Änderung der Luminanz zwischen entfernten Rechteckboxen zu erkennen. Somit ist die Fähigkeit zum Ermitteln von Objekten begrenzt.
  • Obwohl es möglich ist, beispielsweise durch Skalieren eines integrierten Bilds das Suchen über ein Fenster einer beliebigen Größe durchzuführen und die Unterschiede zwischen Luminanzwerten in entfernten Rechteckboxen zu verwenden, vergrößert das Skalieren eines integrierten Bilds die Rechnungsmenge, wodurch die Wirkung zum Vergrößern der Berechnungsgeschwindigkeit beseitigt wird, indem das integrierte Bild verwendet wird. Um außerdem Unterschiede zwischen Luminanzwerten in entfernten Rechteckboxen in betracht zu ziehen, wird die Anzahl der benötigten Filter riesig. Dies steigert ebenfalls die Berechnungsmenge.
  • Die vorliegende Erfindung wurde im Hinblick auf die oben beschriebene Situation getätigt, wobei Ausführungsformen davon außerdem die Berechnungsgeschwindigkeit während des Lernens und die Ermittlung durch Reduzieren der Berechnungsmenge steigern, wenn ein Objekt von Interesse auf Basis des Gesamteindrucks des Lernens ermittelt wird.
  • Verschiedene entsprechende Merkmale und Gesichtspunkte der Erfindung sind in den angehängten Patentansprüchen definiert. Die Merkmale von den abhängigen Ansprüchen können mit Merkmalen der unabhängigen Ansprüche, wenn geeignet kombiniert werden und sind nicht lediglich explizit in den Ansprüchen herausgestellt. Ausführungsformen der vorliegenden Erfindung beziehen sich auf eine Vorrichtung und ein Verfahren, ein Aufzeichnungsmedium und ein Programm zur Informationsverarbeitung, welche schnell die Ermittlung eines Objekts von Interesse, beispielsweise eines Gesichtsbilds, mit einer kleinen Berechnungsmenge zulassen.
  • Gemäß einem Merkmal der vorliegenden Erfindung wird eine Bildverarbeitungsvorrichtung nach Anspruch 1 vorgesehen.
  • Die Vorrichtung kann Anschlussknoten aufweisen, welche den Anschluss eines Zweigs der Baumstruktur zeigen, wobei die Gesamteindrucks-Lerneinheit betriebsfähig ist, sequentiell das Lernen der Klassifikation der Klassifikations-Lern-Proben vom obersten Knoten zu einem der Anschlussknoten durchzuführen, und, wenn der Lernprozess diesen Anschlussknoten erreicht, der Lernprozess für andere verschiedene Sequenzen von Knoten vom obersten Knoten zu unterschiedlichen Anschlussknoten durchgeführt wird.
  • Die Vorrichtung umfasst vorzugsweise Anschlussknoten, welche den Anschluss eines Zweigs der Baumstruktur zeigen, wobei die oberen Knoten jeweils eine vorher festgelegte Anzahl von Schwachklassifizierern haben und jeder Anschlussknoten eine Anzahl von Schwachklassifizierern hat, die niedriger oder gleich ist wie die vorher festgelegte Anzahl.
  • Ein jeder von den oberen Knoten und von den ersten und zweiten unteren Knoten kann eine Auswahleinheit aufweisen, um einen Schwachklassifizierer auszuwählen, indem Datenwichtungen bei jeder Lernwiederholung verwendet werden; eine Kumulativ-Summenberechnungseinheit zum Berechnen kumulativer Summen durch Wichtung von Ergebnissen der Klassifikation der entsprechenden Lernproben durch Schwachklassifizierer, welche ausgewählt wurden, wobei die Wichtung auf Vertrauen in Verbindung mit den jeweiligen Schwachklassifizierern basiert; eine Referenzwert-Berechnungseinheit zum Berechnen auf Basis der kumulativen Summen eines Referenzwerts, der verwendet wird, wenn die Unterscheidung unter Verwendung der erlernten Schwachklassifizierer durchgeführt wird; eine Wichtungsberechnungseinheit zum Berechnen von Datenwichtungen auf Basis der Lernproben; und eine Reflexionseinheit zum Sichern der Datenwichtungen, welche durch die Wichtungsberechnungseinheit berechnet wurden, und zum Reflektieren der Datenwichtungen auf die Auswahl eines Schwachklassifizierer durch die Auswahleinheit in einer nächsten Lernwiederholung.
  • Die Schwachklassifizierer können Ergebnisse der Klassifikation auf Basis eines Unterschieds zwischen einem Schwellenwert und einem Unterschied zwischen Werten von zwei Pixeln in Bilddaten der Lernproben berechnen.
  • Gemäß einem weiteren Gesichtspunkt der vorliegenden Erfindung wird ein Bildverarbeitungsverfahren nach Anspruch 7 bereitgestellt.
  • Vorzugsweise wird ein Aufzeichnungsmedium bereitgestellt, auf welchem ein computer-lesbares Programm aufgezeichnet ist, welches es einem Computer erlaubt, das oben beschriebene Verfahren auszuführen.
  • Gemäß den Ausführungsformen der vorliegenden Erfindung werden lernende Bildproben mit einem ersten Kennsatz eines ersten Winkelbereichs durch obere Knoten erlernt. Auf Basis der Ergebnisse der Klassifikation durch die oberen Knoten werden lernende Bildproben mit einem zweiten Kennsatz eines zweiten Winkelbereichs durch die ersten unteren Knoten erlernt, wobei der zweite Winkelbereich Teil des ersten Winkelbereichs ist, und die lernenden Bildproben mit einem dritten Kennsatz eines dritten Winkelbereichs werden durch zweite untere Knoten erlernt, wobei der dritte Winkelbereich ein Teil des ersten Winkelbereichs ist und gegenüber dem zweiten Winkelbereich verschieden ist.
  • Gemäß den Ausführungsformen der vorliegenden Erfindung ist es möglich, Gesichter in Realzeit zu ermitteln. Insbesondere kann die Geschwindigkeit zum Lernen und/oder Ermitteln durch Reduzieren der Berechnungsmenge gesteigert werden.
  • Die Erfindung wird nun als Beispiel mittels der beiliegenden Zeichnungen beschrieben, wobei durchwegs gleiche Teile mit gleichen Bezugszeichen bezeichnet sind, und in denen:
  • 1A bis 1D schematische Diagramme sind, welche Rechteckmerkmale zeigen, welche beim Stand der Technik verwendet werden;
  • 2 ein Diagramm ist, um ein Verfahren zum Klassifizieren eines Gesichtsbilds unter Verwendung der Rechteckmerkmale gemäß dem Stand der Technik zu erläutern;
  • 3 ein schematisches Diagramm ist, welches ein integriertes Bild zeigt, welches beim Stand der Technik verwendet wird;
  • 4 ein Diagramm ist, welches ein Verfahren zum Berechnen der Summe von Luminanzwerten in einer Rechteckbox unter Verwendung des integrierten Bilds gemäß dem Stand der Technik zeigt;
  • 5 ein Funktionsblockdiagramm ist, welches Verarbeitungsfunktionen einer Objektermittlungsvorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung zeigt;
  • 6 ein Diagramm ist, um Maßstabsumsetzung zu erläutern;
  • 7 ein Diagramm ist, um das Abtasten unter Verwendung eines Suchfensters zu erläutern;
  • 8 ein Diagramm ist, um die Bewegung eines Suchfensters zu erläutern;
  • 9 ein Diagramm ist, welches den Aufbau einer Klassifikationseinheit zeigt;
  • 10 ein Diagramm ist, um ein Interpixel-Differenzmerkmal zu erläutern;
  • 11A bis 11C Diagramme sind, um die Beziehung zwischen einem Interpixel-Differenzmerkmal und einem Schwellenwert zu erläutern;
  • 12 ein Diagramm ist, um eine Frequenzverteilung zu erläutern;
  • 13A und 13B Diagramme sind, um Interpixel-Differenzmerkmale auf Basis einer Wahrscheinlichkeitsdichte zu erläutern;
  • 14 ein Diagramm ist, welches die Änderung des Werts F(x) der Wichtungsmajorität zeigt;
  • 15 ein Diagramm ist, welches ein Beispiel einer Lernprobe zeigt;
  • 16A und 16B Diagramme sind, um Winkel in Bezug auf die Lage eines Gesichts zu erläutern;
  • 17 ein Diagramm ist, um Kennsätze zu erläutern;
  • 18 ein Diagramm ist, um die Klassifikation von Winkeln in Bezug auf die Lage eines Gesichts zu erläutern;
  • 19 ein Diagramm ist, um eine Baumstruktur zu erläutern;
  • 20 ein Diagramm ist, um einen Aufbau von Schwachklassifizierern gemäß üblichem AdaBoost zu erläutern;
  • 21 ein Diagramm ist, um die Unterscheidung von Kennsätzen gemäß üblichem AdaBoost zu erläutern;
  • 22 ein Diagramm ist, welches den Aufbau eines Knotens zeigt, der aus Schwachklassifizierern mit Verweigerungsprüfung besteht;
  • 23 ein Diagramm ist, welches den Aufbau eines Schwachklassifizierers mit Verweigerungsprüfung zeigt;
  • 24 ein Diagramm ist, um eine Baumstruktur von Knoten zu erläutern, welche aus Schwachklassifizierern konstruiert sind, mit Verweigerungsprüfung;
  • 25 ein Diagramm ist, um eine Baumstruktur von Knoten zu erläutern;
  • 26 ein Diagramm ist, um eine Datenstruktur eines Knotens zu erläutern;
  • 27 ein Blockdiagramm ist, welches ein Beispiel einer funktionellen Konstruktion einer Gesamteindrucks-Lernmaschine zeigt;
  • 28 ein Flussdiagramm eines Lernprozesses ist;
  • 29 ein Blockdiagramm ist, welches ein Beispiel des funktionellen Aufbaus einer Knotenlerneinheit zeigt;
  • 30 ein Flussdiagramm eines Knotenlernprozesses im Schritt S12 ist, der in 28 gezeigt ist;
  • 31 ein Blockdiagramm ist, welches ein Beispiel des funktionellen Aufbaus einer Schwachklassifizierer-Auswahleinheit zeigt;
  • 32 ein Flussdiagramm eines Schwachklassifizierer-Auswahlprozesses im Schritt S43 ist, der in 30 gezeigt ist;
  • 33 ein Diagramm ist, um die Änderung des Schwellenwerts zu erläutern;
  • 34 ein Blockdiagramm ist, welches ein Beispiel des funktionellen Aufbaus einer Klassifikationseinheit zeigt;
  • 35 ein Flussdiagramm eines Objektermittlungsprozesses ist;
  • 36 ein Flussdiagramm eines Unterscheidungsprozesses im Schritt S103 ist, der in 35 gezeigt ist;
  • 37 ein Flussdiagramm eines Auswertungswert-Berechnungsprozesses im Schritt S132 ist, der in 36 gezeigt ist; und
  • 38 ein Blockdiagramm ist, welches ein Beispiel des Aufbaus eines Computers zeigt.
  • Eine Informationsverarbeitungsvorrichtung (beispielsweise eine Objektermittlungsvorrichtung 5, welche in 5 gezeigt ist), weist gemäß der vorliegenden Erfindung obere Knoten (beispielsweise einen Knoten 221-1, der in 24 gezeigt ist) auf, die jeweils mehrere Schwachklassifizierer aufweisen (beispielsweise Schwachklassifizierer 21-11 bis 21-1100 , welche in 24 gezeigt sind), welche Lernproben mit einem ersten Kennsatz (beispielsweise Kennsätze 1 bis 15, welche in 17 gezeigt sind) eines ersten Bereichs unter lernenden Proben erlernen, welche mit mehreren Kennsätzen klassifiziert sind (beispielsweise Kennsätze 1 bis 15, welche in 17 gezeigt sind); erste untere Knoten (beispielsweise einen Knoten 221-1-1, der in 24 gezeigt ist), die jeweils mehrere Schwachklassifizierer aufweisen (beispielsweise Schwachklassifizierer 21-1-11 bis 21-1-1100 ), welche Lernproben mit einem zweiten Kennsatz (beispielsweise Kennsätze 1 bis 5, welche in 17 gezeigt sind) eines zweiten Bereichs auf Basis von Ergebnissen der Klassifikation durch die oberen Knoten erlernen (beispielsweise den Knoten 221-1, der in 24 gezeigt ist), wobei der zweite Bereich ein Teil des ersten Bereichs ist; und zweite untere Knoten (beispielsweise einen Knoten 221-1-2, der in 24 gezeigt ist), die jeweils mehrere Schwachklassifizierer aufweisen (beispielsweise Schwachklassifizierer 21-1-21 bis 21-1-2100 ), welche Lernproben mit einem dritten Kennsatz (beispielsweise Kennsätze 6, 8, 10, 12 und 14, welche in 17 gezeigt sind), eines dritten Bereichs aufweisen, auf Basis der Klassifikationsergebnisse durch die oberen Knoten erlernen (beispielsweise des Knotens 221-1, der in 24 gezeigt ist), wobei der dritte Bereich ein Teil des ersten Bereichs ist und gegenüber dem zweiten Bereich verschieden ist.
  • Das Lernen kann sequentiell von einem obersten Knoten (beispielsweise dem Knoten 221-1, der in 25 gezeigt ist) in der Nähe der oberen Knoten zu einem Anschlussknoten (beispielsweise einen Knoten 221-1-1-1-1, der in 25 gezeigt ist) in der Nähe der ersten oder zweiten unteren Knoten durchgeführt werden, und, wenn das Lernen den Anschlussknoten in der Nähe des ersten oder zweiten unteren Knotens erreicht, kann das Lernen für die anderen ersten und zweiten unteren Knoten (beispielsweise einen Knoten 221-1-1-1-2, der in 25 gezeigt ist, der ein Schwesterknoten ist) durchgeführt werden, welche parallel zum Anschlussknoten sind.
  • Die oberen Knoten (beispielsweise ein Knoten 221-1-1-1, welcher in 24 ist) können jeweils eine vorher festgelegte Anzahl (beispielsweise 100) von Schwachklassifizierern haben, und die Endknoten in der Nähe der ersten und zweiten unteren Knoten können jeweils eine Anzahl (beispielsweise 100 oder L1, was in 24 gezeigt ist) von Schwachklassifizierern haben, die niedriger oder gleich ist wie die vorher festgelegte Anzahl.
  • Ein jeder von den oberen Knoten und von den ersten und zweiten unteren Knoten kann eine Auswahleinheit (beispielsweise ein Schwachklassifizierorgan 333, das in 29 gezeigt ist) aufweisen, um einen Schwachklassifizierer unter Verwendung von Datenwichtungen (Wichtungen beispielsweise Dt gemäß der Gleichung (11)) bei jeder Lernwiederholung zu verwenden; eine Kumulativ-Summen-Berechnungseinheit (beispielsweise einen Wichtungsmajoritätsrechner 336, der in 29 gezeigt ist), um kumulative Summen (beispielsweise F(x) gemäß der Gleichung (7)) durch Wichten von Ergebnissen (beispielsweise f(x)) der Klassifikation der jeweiligen Lernproben durch Schwachklassifizierer zu berechnen, die ausgewählt wurden, wobei das Wichten auf Vertrauen (beispielsweise Wichtungen αt gemäß der Gleichung (10)) in Verbindung mit den jeweiligen Schwachklassifizierern basiert; eine Referenzwert-Berechnungseinheit (beispielsweise einen Schwellenwertrechner 337, der in 29 gezeigt ist), um auf Basis der kumulativen Summen einen Referenzwert zu berechnen (beispielsweise einen Anschlussschwellenwert RM gemäß der Gleichung (8)), der verwendet wird, wenn die Unterscheidung unter Verwendung erlernter Schwachklassifizierer durchgeführt wird; eine Wichtungsberechnungseinheit (beispielsweise einen Datenwichtungsaktualisierer 335, der in 29 gezeigt ist), um Datenwichtungen auf Basis der Lernproben zu berechnen; und eine Reflexionseinheit (beispielsweise einen Speicher 339, der in 29 gezeigt ist), um Datenwichtungen zu speichern, welche durch die Wichtungsberechnungseinheit berechnet wurden und die Datenwichtungen bei Auswahl eines Schwachklassifizierers durch die Auswahleinheit in einer nächsten Lernwiederholung reflektieren.
  • Die Schwachklassifizierer können Ergebnisse (beispielsweise eine Schwach-Hypothese f(x) im Schritt S74, der in 32 gezeigt ist) der Klassifikation auf Basis einer Differenz zwischen einem Schwellenwert (beispielsweise einem Schwellenwert Th für eine Schwach-Hypothese f(x) im Schritt S74, der in 32 gezeigt ist) und eine Differenz (beispielsweise einem Interpixel-Differenzmerkmal d gemäß der Gleichung (2)) zwischen Werten (beispielsweise I1 und I2 von zwei Pixeln) in Bilddaten der Lernproben berechnen.
  • Ein Informationsverarbeitungsverfahren nach der vorliegenden Erfindung weist die Schritte zum Lernen von Lernproben mit einem ersten Kennsatz (beispielsweise Kennsätze 1 bis 15, welche in 17 gezeigt sind) eines ersten Bereichs in der Nähe von Lernproben auf, welche mit mehreren Kennsätzen klassifiziert sind (beispielsweise Kennsätze 1 bis 15, welche in 17 gezeigt sind), durch obere Knoten (beispielsweise einen Knoten 221-1, der in 24 gezeigt ist), wobei jeder mehrere Schwachklassifizierer aufweist (beispielsweise Schwachklassifizierer 21-11 bis 21-1100 , welche in 24 gezeigt sind); lernende Lernproben mit einem zweiten Kennsatz (beispielsweise Kennsätze 1 bis 15, welche in 17 gezeigt sind) eines zweiten Bereichs auf Basis von Klassifikationsergebnissen durch die oberen Knoten (beispielsweise ein Knoten 221-1, der in 24 gezeigt ist), wobei der zweite Bereich ein Teil des ersten Bereichs ist, mit ersten unteren Knoten (beispielsweise einen Knoten 211-1-1, der in 24 gezeigt ist), wobei jeder mehrere Schwachklassifizierer aufweist (beispielsweise Schwachklassifizierer 21-1-11 bis 21-1-1100 , welche in 24 gezeigt sind), und lernende Lernproben mit einem dritten Kennsatz (beispielsweise Kennsätze 6, 8, 10, 12 und 12, die in 18 gezeigt sind, eines dritten Bereichs auf Basis der Klassifikationsergebnisse durch die oberen Knoten (beispielsweise einen Knoten 221-1, der in 24 gezeigt ist), wobei der dritte Bereich ein Teil des ersten Bereichs ist und gegenüber dem zweiten Bereich verschieden ist, mit zweiten unteren Knoten (beispielsweise einen Knoten 211-1-2, der in 24 gezeigt ist), welche jeweils mehrere Schwachklassifizierer aufweisen (beispielsweise Schwachklassifizierer 21-1-21 bis 21-1-2100 , die in 24 gezeigt sind).
  • Eine weitere Informationsverarbeitungsvorrichtung (beispielsweise eine Objektermittlungsvorrichtung 1, welche in 5 gezeigt ist) weist gemäß der vorliegenden Erfindung obere Knoten (beispielsweise einen Knoten 221-1, der in 24 gezeigt ist) auf, die jeweils mehrere Schwachklassifizierer aufweisen (beispielsweise Schwachklassifizierer 21-11 bis 21-1100 , welche in 24 gezeigt sind), welche Lernproben mit einem ersten Kennsatz (beispielsweise Kennsätze 1 bis 15, welche in 17 gezeigt sind), eines ersten Bereichs in der Nähe von Lernproben erlernt haben, welche mit mehreren Kennsätzen klassifiziert wurden (beispielsweise Kennsätze 1 bis 15, welche in 17 gezeigt sind); erste untere Knoten (beispielsweise einen Knoten 221-1-1, der in 24 gezeigt ist), welche jeweils mehrere Schwachklassifizierer aufweisen (beispielsweise Schwachklassifizierer 21-1-11 bis 21-1-1100 , die in 24 gezeigt sind), welche Lernproben mit einem zweiten Kennsatz (beispielsweise Kennsätze 1 bis 5, welche in 17 gezeigt sind) eines zweiten Bereichs auf Basis von Klassifikationsergebnissen durch die oberen Knoten (beispielsweise einen Knoten 221-1, der in 24 gezeigt ist) erlernt haben, wobei der zweite Bereich ein Teil des ersten Bereichs ist; und zweite untere Knoten (beispielsweise einen Knoten 221-1-2, der in 24 gezeigt ist), die jeweils mehrere Schwachklassifizierer aufweisen (beispielsweise Schwachklassifizierer 21-1-21 bis 21-1-2100 , welche in 24 gezeigt sind), welche Lernproben mit einem dritten Kennsatz (beispielsweise Kennsätze 6, 8, 10, 12 und 12, die in 17 gezeigt sind) eines dritten Bereichs auf Basis von den Klassifikationsergebnissen durch die oberen Knoten erlernt haben (beispielsweise einen Knoten 221-1, der in 24 gezeigt ist), wobei der dritte Bereich ein Teil des ersten Bereichs ist und gegenüber dem zweiten Bereich verschieden ist. Der erste und der zweite untere Knoten (beispielsweise die Knoten 221-1-1 und 221-1-2, die in 24 gezeigt sind) führen eine Unterscheidung (beispielsweise Schritt S132, der in 36 gezeigt ist) von Eingangssignalen auf Basis der Klassifikationsergebnisse durch die oberen Knoten durch (beispielsweise einen Knoten 221-1, der in 24 gezeigt ist), und die Unterscheidung wird auf knotenweiser Basis sequentiell von einem obersten Knoten (beispielsweise einem Knoten 221-1, der in 24 gezeigt ist) in der Nähe der oberen Knoten zu einem Anschlussknoten (beispielsweise einen Knoten 221-1-1-1-1, der 24 gezeigt ist) in der Nähe der ersten und zweiten unteren Knoten durchgeführt, und, wenn die Unterscheidung den Anschlussknoten in der Nähe der ersten oder zweiten unteren Knoten erreicht, wird die Unterscheidung für andere erste oder zweite unteren Knoten durchgeführt (beispielsweise einen Knoten 221-1-1-1-2, der in 24 gezeigt ist, der ein Schwesterknoten ist), die parallel zum Anschlussknoten sind (beispielsweise Schritte S132 bis S136 nach dem Schritt S138, der in 36 gezeigt ist).
  • Bei einem Informationsverarbeitungsverfahren nach der vorliegenden Erfindung für eine Informationsverarbeitungsvorrichtung weist die Informationsverarbeitungsvorrichtung obere Knoten auf, welche jeweils mehrere Schwachklassifizierer aufweisen, welche Lernproben mit einem ersten Kennsatz eines ersten Bereichs in der Nähe von Lernproben erlernt haben, welche mit mehreren Kennsätzen klassifiziert wurden; erste untere Knoten, welche jeweils mehrere Schwachklassifizierer aufweisen, welche Lernproben erlernt haben, mit einem zweiten Kennsatz eines zweiten Bereichs auf Basis von Klassifikationsergebnissen durch die oberen Knoten, wobei der zweite Bereich ein Teil des ersten Bereichs ist; und zweite untere Knoten, welche jeweils mehrere Schwachklassifizierer aufweisen, welche Lernproben erlernt haben, mit einem dritten Kennsatz eines dritten Bereichs auf Basis der Klassifikationsergebnisse durch die oberen Knoten, wobei der dritte Bereich ein Teil des ersten Bereichs ist und gegenüber dem zweiten Bereich verschieden ist. Das Informationsverarbeitungsverfahren weist die Schritte zum Unterscheiden von Eingangssignalen durch die unteren Knoten auf Basis der Klassifikationsergebnisse durch die oberen Knoten auf (beispielsweise Schritt S132, der in 36 gezeigt ist); und das Durchführen der Unterscheidung auf knotenweiser Basis sequentiell von einem obersten Knoten in der Nähe der oberen Knoten zu einem Anschlussknoten in der Nähe der ersten und zweiten unteren Knoten, und das Durchführen der Unterscheidung für die anderen ersten und zweiten unteren Knoten, welche parallel zum Anschlussknoten sind, wenn die Unterscheidung den Anschlussknoten in der Nähe der ersten oder zweiten unteren Knoten erreicht (beispielsweise Schritte S132 bis S136 nach dem Schritt S138, der in 36 gezeigt ist).
  • Anschließend wird eine Ausführungsform der vorliegenden Erfindung ausführlich mit Hilfe der Zeichnungen beschrieben. Bei dieser Ausführungsform wird die vorliegende Erfindung bei einer Informationsverarbeitungsvorrichtung angewandt, welche als Objektermittlungsvorrichtung funktioniert, um ein Objekt von Interesse von einem Bild über Gesamteindruckslernen zu ermitteln.
  • Eine Lernmaschine, welche durch Gesamteindruckslernen erlangt wird, besteht aus einer großen Anzahl von Schwach-Hypothesen und einem Kombinierer, um die Schwach-Hypothesen zu kombinieren. Ein Beispiel eines Kombinierers, der Ausgangssignale der Schwach-Hypothesen mit festen Wichtungen unabhängig vom Eingangssignal kombiniert, ist das Anheben. Beim Anheben werden unter Verwendung von Lernergebnissen der vorher erzeugten Schwach-Hypothesen die Verteilung von Lernproben modifiziert, so dass Wichtungen fehlklassifizierter Lernproben (beispielsweise Beispiele) vergrößert werden, und das Lernen von neuen Schwach-Hypothesen auf Basis der modifizierten Verteilung durchgeführt wird. Somit vergrößern sich Wichtungen für Objekte, welche schwierig zu erlernen sind, um relativ zu klassifizieren, so dass Schwachklassifizierer, welche lernen, Lernproben mit hohen Wichtungen korrekt zu klassifizieren, welche schwierig zum Klassifizieren zu erlernen sind, progressiv ausgewählt werden. In diesem Fall werden Schwach-Hypothesen zum Lernen progressiv erzeugt, und die Schwach-Hypothesen, welche später erzeugt werden, hängen von vorherig erzeugten Schwach-Hypothesen ab.
  • Wenn ein Objekt von Interesse ermittelt wird, werden Klassifikationsergebnisse durch eine große Anzahl von Hypothesen, die progressiv erzeugt werden, durch Lernen, wie oben beschrieben, verwendet. In dem Fall von AdaBoost werden beispielsweise alle Klassifikationsergebnisse (1 für Objekt von Interesse und –1 für Objekt von keinem Interesse) durch Schwach-Hypothese (anschließend als Schwachklassifizierer bezeichnet), welche durch Lernen erzeugt werden, zu einem Kombinierer geführt. Der Kombinierer berechnet die Summe der Klassifikationsergebnisse, welche durch Vertrauen gewichtet wurden, welche während des Lernens berechnet wurden, für die jeweiligen verknüpften Schwachklassifizierer, um einen Wert gewichteter Majorität auszugeben, und bestimmt, ob das Eingangsbild einem Objekt von Interesse entspricht, wobei die Ausgabe des Kombinierers ausgewertet wird.
  • Die Schwachklassifizierer bestimmen, ob ein Bild einem Objekt von Interesse entspricht, auf Basis bestimmter Merkmale. Wie später beschrieben wird, können die Schwachklassifizierer bestimmende Werte ausgeben, ob ein Bild einem Objekt von Interesse entspricht, oder Wahrscheinlichkeitswerte entsprechend der Wahrscheinlichkeit, ob ein Objekt von Interesse vorliegt. Eine Gesamteindrucks-Lernmaschine bei dieser Ausführungsform nutzt Schwachklassifizierer, die bestimmen, ob ein Bild einem Objekt von Interesse entspricht, wobei sehr einfache Merkmale verwendet werden, d. h., Unterschiede zwischen Luminanzwerten von Pixelpaaren (anschließend als Interpixel-Differenzmerkmale bezeichnet), welche eine schnelle Ermittlung eines Objekts von Interesse zulassen.
  • (1) Objektermittlungsvorrichtung
  • 5 ist ein Funktionsblockdiagramm, welches Verarbeitungsfunktionen einer Objektermittlungsvorrichtung gemäß dieser Ausführungsform zeigt. Wie in 5 gezeigt ist, weist eine Objektermittlungsvorrichtung 1 eine Bildausgabeeinheit 2 zum Ausgeben eines Grauskalabilds (Luminanzbild) als ein Eingangsbild an eine Skalierungseinheit 3 auf, eine Skalierungseinheit 3 zum Skalieren beispielsweise zum Vergrößern oder Verkleinern des Eingangsbilds, eine Abtasteinheit 4 zum sequentiellen Abtasten des skalierten Eingangsbilds beispielsweise von oben links zum Boden rechts unter Verwendung eines Fensters, welches eine spezifizierte Größe hat, zum Ausgeben eines Bilds in dem Fenster als Fensterbild, und eine Klassifikationseinheit 5 zum Klassifizieren, ob jedes Fensterbild, welches durch sequentielles Abtasten durch die Abtasteinheit 4 erlangt wird, einem Objekt von Interesse entspricht oder nicht. Die Objektermittlungsvorrichtung 1 gibt eine Position und eine Größe eines Objekts von Interesse, welche einen Bereich des Objekts von Interesse im Eingangsbild zeigen, aus.
  • Die Skalierungseinheit 3 vergrößert oder verkleinert das zugeführte Bild auf jeden spezifizierten Maßstab, um das skalierte Bild auszugeben. Die Abtasteinheit 4 tastet sequentiell jedes der skalierten Bilder unter Verwendung eines Fensters einer Größe ab, welche der Größe eines zu ermittelnden Objekts entspricht, um dadurch Fensterbilder auszuschneiden. Die Klassifikationseinheit 5 klassifiziert, ob jedes der Fensterbilder einem Gesicht entspricht.
  • Die Klassifikationseinheit 5 klassifiziert unter Bezug auf Ergebnisse des Lernens durch die Gesamteindrucks-Lernmaschine 6, welche das Gesamteindruckslernen mehrerer Schwachklassifizierer durchführt, welche die Klassifikationseinheit 5 bilden, ob ein aktuelles Fensterbild einem Objekt von Interesse entspricht (beispielsweise ein Bild eines Gesichts) oder einem Objekt, welches nicht von Interesse ist (beispielsweise ein Bild, welches nicht ein Bild eines Gesichts ist).
  • Die Objektermittlungsvorrichtung 1 gibt, wenn mehrere Objekte von dem zugeführten Bild ermittelt werden, mehrere Teile von Bereichsinformation aus. Wenn außerdem einige der Bereiche sich einander unter den mehreren Bereichen überlappen, ist die Objektermittlungsvorrichtung 1 in der Lage, einen der Bereiche auszuwählen, der den höchsten Auswertungswert für das Objekt von Interesse hat, durch ein Verfahren, welches später beschrieben wird.
  • Das Grauskalenbild, welches von der Bildausgabeeinheit 2 ausgegeben wird, wird an die Skalierungseinheit 3 ausgegeben. Die Skalierungseinheit 3 reduziert das Bild durch bilineare Interpolation. In diesem Beispiel wiederholt anstelle eines ersten Erzeugens von mehreren reduzierten Bildern in der Skalierungseinheit 3 die Skalierungseinheit 3 einen Prozess zum Ausgeben eines Bilds, welches für die Abtasteinheit 4 benötigt wird, und zum Erzeugen eines weiteren reduzierten Bilds, lediglich, nachdem die Verarbeitung des vorherigen Bilds beendet wurde.
  • Das heißt, dass, wie in 6 gezeigt ist, die Skalierungseinheit 3 zunächst ein zugeführtes Bild 10A unverändert an die Abtasteinheit 4 ausgibt. Danach erzeugt, nachdem die Verarbeitung des zugeführten Bilds 10A durch die Abtasteinheit 4 und die Klassifikationseinheit 5 beendet ist, die Skalierungseinheit 3 ein Eingangsbild 10B, wobei die Größe des Eingangsbilds 10A reduziert wird. Nachdem weiter die Verarbeitung des Eingangsbilds 10B durch die Abtasteinheit 4 und die Klassifikationseinheit 5 beendet ist, erzeugt die Skalierungseinheit 3 ein Eingangsbild 10C, wobei die Größe des Eingangsbilds 10B weiter reduziert wird. In ähnlicher Weise erzeugt die Skalierungseinheit 3 progressiv reduzierte Bilder 10D, 10E usw. von zunehmend reduzierten Größen, bis die Größe eines reduzierten Bilds kleiner wird als die Größe des Fensters, welches zum Abtasten durch die Abtasteinheit 4 verwendet wird. Wenn der Prozess beendet ist, gibt die Bildausgabeeinheit 2 ein nächstes Eingangsbild an die Skalierungseinheit 3 aus.
  • Wie in 7 gezeigt ist, findet die Abtasteinheit 4 beispielsweise, wenn das Bild 10A ihr zugeführt wird, sequentiell das gesamte Bild Anwendung bei einem Fenster 11 an, welches die gleiche Größe hat wie die Fenstergröße, welche durch die Klassifikationseinheit 5 stromabwärts davon akzeptiert wird, wobei ein Bild im Fenster 11 bei jeder Position (anschließend als Ausschnittsbild oder als Fensterbild bezeichnet) an die Klassifikationseinheit 5 ausgegeben wird.
  • Das Abtasten wird auf der Basis des Fensters 11 in Bezug auf pixelweiser Basis durchgeführt, wie in 8 gezeigt ist. Das heißt, nachdem ein Ausschnittsbild im Fenster 11 in einer bestimmten Position von der Abtasteinheit 4 ausgegeben wird, wird das Fenster 11 nach rechts um ein Pixel für eine nächste Abtastung verschoben, so dass ein Ausschnittsbild im Fenster 11 in der verschobenen Position der Klassifikationseinheit 5 zugeführt wird.
  • Obwohl die Fenstergröße fest ist, ist es, da die Abtasteinheit 3 die Größe des zugeführten Bilds auf verschiedene Maßstäbe wie vorher beschrieben progressiv reduziert, möglich, ein Objekt einer beliebigen Größe zu ermitteln.
  • Das heißt, dass, gleich wie die Größe eines Gesichts in einem Eingangsbild ist, wird die Größe des Gesichts im Bild im Wesentlichen die gleiche wie die Fenstergröße S, da die Bildgröße zunehmend reduziert wird. Somit ist es möglich, zu ermitteln, ob das Bild im Fenster 11 ein Bild eines menschlichen Gesichts ist oder nicht.
  • Die Klassifikationseinheit 5 klassifiziert, ob ein Ausschnittsbild, welches von stromaufwärts zugeführt wird, einem Objekt von Interesse entspricht, beispielsweise einem Gesicht. Wie in 9 gezeigt ist, besteht die Klassifikationseinheit 5 aus mehreren Schwachklassifizierern 21i (i = 1, 2, 3, ..., K), welche durch Gesamteindruckslernen erlangt werden, und einem Addierer 22, um einen Wert F(x) der gewichteten Majorität zu berechnen, wobei Ausgangssignale (Klassifikationsergebnisse) der jeweiligen Klassifizierer 21i mit entsprechend verknüpften Wichtungen αi (i = 1, 2, 3, ..., K) multipliziert werden.
  • Jeder der Schwachklassifizierer 211 bis 21K bestimmt, ob das Bild im Fenster 11 ein Bild eines menschlichen Gesichts ist, auf Basis von zwei beliebigen Pixeln in der Nähe der Pixel im Fenster 11. K bezeichnet die Anzahl möglicher Paare von zwei Pixeln, welche von dem Bild im Fenster 11 ausgewählt werden können.
  • In der Klassifikationseinheit 5 geben die Klassifizierer 21i sequentiell Schätzwerte f(x) aus, ob das zugeführte Fensterbild einem Objekt von Interesse entspricht, und der Addierer 2 berechnet einen Wert F(x) der gewichteten Majorität, um ein Ausgangssignal zu liefern. Auf Basis des Werts F(x) der gewichteten Majorität bestimmt ein Bestimmungsorgan (nicht in 9 gezeigt), ob das Fensterbild einem Objekt von Interesse entspricht.
  • Die Gesamteindruckslernmaschine 6 lernt vorher die Schwachlerner (Schwachklassifizierer) 21i und die zu verwendenden Wichtungen, um die Ausgangssignale (Schätzwerte) der jeweiligen Schwachlerner 21i zu multiplizieren, durch Gesamteindruckslernen, das später beschrieben wird. Das Gesamteindruckslernen kann durch irgendein Verfahren durchgeführt werden, welches Majoritätsberechnung von Ergebnissen erlaubt, welche durch mehrere Klassifizierer erlangt werden. Beispielsweise kann ein Gesamteindruckslernen, welches auf Anhebung basiert, beispielsweise AdaBoost, welches Daten wichtet, um einen Wert der gewichteten Majorität zu berechnen, verwendet werden.
  • Jeder der Schwachklassifizierer 21i , der die Klassifikationseinheit 5 bildet, verwendet die Differenz zwischen dem Luminanzwert von zwei Pixeln (ein Interpixel-Differenzmerkmal) als ein Merkmal zur Klassifizierung. Jeder der Schwachklassifizierer 21i vergleicht ein Merkmal, welches von den lernenden Proben erlernt wird, einschließlich mehrerer Graustufenbilder, welche vorher gekennzeichnet wurden, ob das Bild einem Objekt von Interesse entspricht oder nicht, mit einem Merkmal des Fensterbilds, wobei ein Schätzwert bestimmend oder als wahrscheinlich ausgegeben wird, ob das Fensterbild einem Objekt entspricht oder nicht.
  • Der Multiplizierer 22 multipliziert die Schätzwerte, welche durch die Schwachklassifizierer 21i erlangt werden, mit Wichtungen, welche als Vertrauen der jeweiligen Schwachklassifizierer 21i dienen, und gibt die Summe der Ergebnisse aus (einen Wert gewichteter Majorität). Im Fall von AdaBoost berechnen die mehreren Klassifizierer 21i sequentiell die Schätzwerte, und ein Wert der gewichteten Majorität wird entsprechend progressiv aktualisiert. Die mehreren Schwachklassifizierer 21i werden progressiv durch Gesamteindruckslernen durch die Gesamteindruckslernmaschine 6 gemäß einem Algorithmus erzeugt, der später beschrieben wird, unter Verwendung von lernenden Proben, und die Schwachklassifizierer berechnen die Schätzwerte beispielsweise in der Reihefolge der Erzeugung. Die Wichtungen (Vertrauen), welche für die gewichtete Majorität verwendet werden, werden in einem Lernprozess erlernt, um Schwachklassifizierer zu erzeugen, was später beschrieben wird.
  • Jeder der Schwachklassifizierer 21i klassifiziert, wenn er ein binäres Ausgangssignal wie im Fall von AdaBoost erzeugt, ein Interpixel-Differenzmerkmal in zwei Klassen auf Basis eines Schwellenwerts zur Klassifikation, ob das Bild einem Objekt von Interesse entspricht. Alternativ kann die Klassifikation auf Basis mehrerer Schwellenwerte sein. Die Schwachklassifizierer können auf Wahrscheinlichkeit fortlaufende Werte ausgeben, welche die Wahrscheinlichkeit zeigen, die zeigt, ob das Bild einem Objekt von Interesse entspricht, auf Basis des Interpixel-Differenzmerkmals. Merkmale (Schwellenwerte), welche durch den Schwachklassifizierer 21i zur Klassifikation benötigt werden, werden ebenfalls während des Lernens gemäß dem oben beschriebenen Algorithmus erlernt.
  • Außerdem kann bei dieser Ausführungsform im Zeitpunkt des Berechnens eines Werts der gewichteten Majorität, ohne Berechnungsergebnisse durch alle Schwachklassifizierer zu warten, die Berechnung beendet werden, sogar im Laufe der Berechnung, wenn betrachtet wird, dass das Bild nicht einem Objekt von Interesse entspricht, in Abhängigkeit von dem berechneten Wert. Zu diesem Zweck wird ein Beendigungsschwellenwert (Referenzwert) im Lernprozess erlernt. Durch die Beendigungsberechnung kann die Menge an Berechnung zum Ermitteln beträchtlich reduziert werden. Somit ist es möglich, in einen Prozess zum Klassifizieren eines nächsten Fensterbilds im Laufe der Berechnung einzutreten, ohne auf Berechnungsergebnisse durch alle Schwachklassifizierer zu warten, wodurch schnelle Verarbeitung zugelassen wird.
  • Wie oben beschrieben arbeitet die Klassifikationseinheit 5 wie ein Bestimmungsorgan zum Berechnen eines Werts der gewichteten Majorität als einen Auswertungswert zum Bestimmen, ob ein Fensterbild einem Objekt von Interesse entspricht, auf Basis des Auswertungswerts. Außerdem aktualisiert jedes Mal, wenn mehrere Schwachklassifizierer, welche durch Lernen erzeugt werden, vorher einen Schätzwert ausgeben, die Klassifikationseinheit 5 den Wert der gewichteten Majorität, der durch Multiplizieren von Auswertungswerten mit Wichtungen für die entsprechenden Schwachklassifizierer erlangt wird, welche durch Lernen und Summieren der Multiplikationsergebnisse erlangt werden. Die Klassifikationseinheit 5 steuert außerdem, ob die Berechnung der Schätzwerte auf Basis des Beendigungsschwellenwerts beendigt wird, wobei jedes Mal der Wert der gewichteten Majorität aktualisiert wird (Auswertungswert).
  • Die Klassifikationseinheit 5 wird durch Gesamteindruckslernen durch die Gesamteindrucks-Lernmaschine 6 gemäß einem vorher festgelegten Algorithmus unter Verwendung von Lernproben erzeugt. Nun richtet sich die Beschreibung zunächst auf ein Verfahren zum Gesamteindruckslernen durch die Gesamteindrucks-Lernmaschine 6, und dann auf ein Verfahren zum Klassifizieren eines Objekts in ein Eingangsbild unter Verwendung der Klassifikationseinheit 5, welche durch Gesamteindruckslernen erlangt wird.
  • (2) Gesamteindrucks-Lernmaschine
  • Die Gesamteindrucks-Lernmaschine 6 führt Gesamteindruckslernen gemäß einem Anhebungsalgorithmus unter Verwendung mehrerer Schwachklassifizierer durch, wie oben beschrieben, so dass eine starke Klassifikation als Ergebnis erlangt werden kann. Obwohl jeder der Schwachklassifizierer sehr einfach aufgebaut ist, der einen niedrige Fähigkeit zum Klassifizieren eines Gesichts oder eines Nicht-Gesichts selbst hat, kann eine hohe Fähigkeit zum Klassifizieren durch Kombinieren von beispielsweise in der Größenordnung von hunderten oder tausenden von Schwachklassifizierern erreicht werden. Die Gesamteindrucks-Lernmaschine erzeugt Schwachklassifizierer unter Verwendung von beispielsweise in der Größenordnung von tausenden von Lernproben, die vorher gekennzeichnet wurden (d. h., denen korrekte Klassifikationen zugeordnet wird), einschließlich von Bildproben von Objekten von Interesse und Objekten, die nicht von Interesse sind, beispielsweise von Gesichtsbildern oder Bildern mit keinem Gesicht, indem eine Hypothese gemäß einem vorher festgelegten Lernalgorithmus von einer großen Anzahl von Lernmodellen (Kombinationen von Hypothesen) ausgewählt (erlernt) werden, wobei eine Kombination von Schwachklassifizierern bestimmt wird. Obwohl jeder der Schwachklassifizierer eine niedrige Klassifikationsfähigkeit selbst hat, kann ein Klassifizierer, der eine hohe Klassifikationsfähigkeit hat, in Abhängigkeit von der Auswahl und Kombination der Schwachklassifizierer erlangt werden. Somit erlernt die Gesamteindrucks-Lernmaschine 6 eine Kombination von Schwachklassifizierern, d. h., die Auswahl von Schwachklassifizierern und Wichtungen in Bezug auf Ausgangswerte der jeweiligen Schwachklassifizierer, um einen Wert gewichteter Majorität zu berechnen.
  • Anschließend wird ein Lernverfahren, welches durch die Gesamteindrucks-Lernmaschine 6 verwendet wird, um eine geeignete Kombination einer großen Anzahl von Klassifizierern zu erlangen, gemäß einem Lernalgorithmus beschrieben. Bevor das Lernverfahren der Gesamteindrucks-Lernmaschine 6 beschrieben wird, werden Lerndaten, welche als Merkmale bei dieser Ausführungsform dienen, unter Lerndaten, welche durch Gesamteindruckslernen erlernt werden, insbesondere Interpixel-Differenzmerkmale zum Bilden von Schwachklassifizierern und eines Beendigungsschwellenwerts (Referenzwert) zum Beendigen der Ermittlung während eines Klassifikationsprozesses (Ermittlungsprozess) beschrieben.
  • (3) Aufbau der Schwachklassifizierer
  • die Klassifikationseinheit 5 bei dieser Ausführungsform ist aus mehreren Schwachklassifizierern gebildet. Jeder der Schwachklassifizierer ist sehr einfach aufgebaut, um zu bestimmen, ob ein zugeführtes Bild einem Gesicht entspricht, auf Basis der Differenz zwischen Luminanzwerten von zwei Pixeln, welche aus allen Pixeln des zugeführten Bilds ausgewählt werden (ein Interpixel-Differenzmerkmal). Somit berechnen in einem Klassifikationsprozess die Schwachklassifizierer Ergebnisse der Berechnung schnell. Bilder, welche an die Schwachklassifizierer im Lernprozess ausgegeben werden, sind Lernproben, und Bilder, welche an die Schwachklassifizierer im Klassifikationsprozess (Unterscheidungsprozess) ausgegeben werden, sind Fensterbilder, welche aus skalierten Bildern ausgeschnitten sind.
  • 10 ist ein schematisches Diagramm, welches ein Bild zum Erläutern eines Interpixel-Differenzmerkmals zeigt. In einem Bild 30 wird die Differenz zwischen Luminanzwerten von beliebig ausgewählten zwei Pixeln, beispielsweise die Differenz zwischen einem Luminanzwert I1 eines Pixels 31 und eines Luminanzwerts I2 eines Pixels 32, d. h., ein Wert d, der durch die Gleichung (2) unten ausgedrückt wird, als Interpixel-Differenzmerkmal definiert: d = I1 – I2 (2)
  • Die Fähigkeit eines jeden der Schwachklassifizierer hängt davon ab, welches Interpixel-Differenzmerkmal d zur Gesichtsermittlung verwendet wird. Somit muss ein Pixelpaar, welches durch jeden der Schwachklassifizierer verwendet wird, aus Kombinationen beliebiger zwei Pixel ausgewählt werden, welche in einem Probenbild oder einem Fensterbild enthalten sind (als Filter oder Schwach-Hypothese bezeichnet).
  • Beispielsweise erfordert AdaBoost, dass jeder Schwachklassifizierer einen bestimmende Ausgabe von "+1" (d. h., ein Objekt von Interesse) oder "–1" (d. h., ein Objekt, welches nicht von Interesse ist). Im Fall von AdaBoost kann ein Schwachklassifizierer durch Klassifizieren eines Interpixel-Differenzmerkmals d eines Pixelpaars von beliebigen Positionen in zwei Klassen (+1 und –1) unter Verwendung von einem oder mehreren Schwellenwerten aufgebaut sein.
  • Im Fall eines Anhebungsalgorithmus, bei dem fortlaufende Werte (Realwerte) ausgegeben werden, welche die Wahrscheinlichkeitsverteilung von lernenden Proben zeigen, anstelle Binärwerte auszugeben, beispielsweise Real-AdaBoost oder GentleBoost, gibt ein Schwachklassifizierer einen Wahrscheinlichkeitswert (Wahrscheinlichkeit) eines zugeführten Bilds entsprechend einem Objekt von Interesse aus. Wie oben beschrieben kann das Ausgangssignal eines Schwachklassifizierers entweder bestimmend oder wahrscheinlich sein. Anschließend werden diese beiden Arten von Schwachklassifizierern beschrieben.
  • (3-1) Binärausgangs-Schwachklassifizierer
  • Ein Schwachklassifizierer, der ein bestimmendes Ausgangssignal erzeugt, führt zwei Klassenklassifikation durch, d. h. ob ein Bild einem Objekt von Interesse entspricht, auf Basis des Werts eines Interpixel-Differenzmerkmals d. Die Luminanzwerte von zwei Pixeln in einem gewünschten Bildbereich sollen durch I1 und I2 und ein Schwellenwert zum Klassifizieren des gewünschten Bildbereichs als Objekt von Interesse oder nicht auf Basis des Interpixel-Differenzmerkmals d mit Th1 bezeichnet werden Dann kann die Klasse, zu welcher der gewünschte Bildbereich gehört, gemäß dadurch bestimmt werden, ob die Gleichung (3) erfüllt ist: I1 – I2 > Th1 (3)
  • Um einen Schwachklassifizierer aufzubauen, müssen die Positionen von zwei Pixeln und ein Schwellenwert bestimmt werden. Ein Verfahren für diesen Zweck wird später beschrieben. Die Gleichung (3) wird in einem Fall einer einfachsten Schwellenwertprüfung verwendet. Alternativ kann eine Schwellenwertprüfung auf Basis von zwei Schwellenwerten sein, wie in der Gleichung (4) oder der Gleichung (5) unten zum Ausdruck kommt: Th11 > I1 – I2 > Th12 (4) I1 – I2 < Th21 oder Th22 > I1 – I2 (5)
  • 11A bis 11C sind schematische Diagramme, welche charakteristische Fälle der Frequenzverteilung von Daten zeigen, gemäß den drei Klassifikationsverfahren, welche in den Gleichungen (3) bis (5) oben zum Ausdruck kommen, wobei die vertikalen Achsen die Frequenz und die horizontalen Achsen das Interpixel-Differenzmerkmal d zeigen. In 10A bis 10C bezeichnet yi eine Ausgabe eines Schwachklassifizierers, eine unterbrochene Linie zeigt die Verteilung von lernenden Proben, welche als yi = –1 klassifiziert sind (d. h., Objekte, welche nicht von Interesse sind), und eine durchgezogene Linie zeigt die Verteilung von lernenden Proben, welche als yi = 1 dargestellt sind (d. h., Objekte von Interesse). Histogramme, welche in 11A bis 11C gezeigt sind, werden erlangt, indem Frequenzen der gleichen Werte des Interpixel-Differenzmerkmals d bezugnehmend auf lernende Proben hergenommen werden, die eine große Anzahl von Gesichtsbildern haben, und Bilder, die kein Gesicht darstellen.
  • Die durchgezogene Linie und die unterbrochene Linie zeigen die Verteilungen von lernenden Proben, welche als yi = 1 bzw. yi = –1 klassifiziert sind, unabhängig voneinander. Somit ist beispielsweise die Gesamtverteilung des Interpixel-Differenzmerkmals d, welche in 11A gezeigt ist, so, wie in 12 gezeigt ist.
  • Wenn beispielsweise das Histogramm so ist, dass die Verteilung von Objekten, welche nicht von Interesse sind, wie durch die unterbrochene Linie gezeigt ist, und die Verteilung von Objekten von Interesse, wie durch die durchgezogene Linie dargestellt, Normalkurven bilden, wobei deren Spitzenwerte horizontal in Bezug zueinander verschoben sind, wie in 11A gezeigt ist, wird ein Schwellenwert Th1 bei einer Grenze dazwischen festgelegt, so dass es möglich ist, zu klassifizieren, ob ein Bild einem Objekt von Interesse entspricht, gemäß der obigen Gleichung (3). Beispielsweise im Fall AdaBoost, wenn ein Ausgangssignal (Klassifikationsergebnis) eines Schwachklassiflzierers mit f(x) bezeichnet wird, ist das Ausgangssignal f(x) = 1 (d. h., ein Objekt von Interesse) oder f(x) = –1 (d. h., ein Objekt, welches nicht von Interesse ist). 11A zeigt ein Beispiel, wo bestimmt wird, dass das Bild einem Objekt von Interesse entspricht, wenn das Interpixel-Differenzmerkmal d größer ist als der Schwellenwert Th1 und das Ausgangssignal des Schwachklassifizierers f(x) = 1.
  • Wenn die Spitzenwerte der beiden Histogramme bei im Wesentlichen den gleichen Positionen angeordnet sind und die Breiten der Verteilungen dafür verschieden sind, wobei ein Wert in der Nähe einer oberen Grenze und ein Wert in der Nähe einer unteren Grenze des Interpixel-Differenzmerkmals d der engeren Verteilung als Schwellenwerte verwendet wird, ist es möglich, zu klassifizieren, ob das Bild einem Objekt von Interesse entspricht, gemäß der obigen Gleichung (4) oder (5). 11B zeigt ein Beispiel, wo das Bild klassifiziert wird, dass es einem Objekt von Interesse entspricht, wenn das Interpixel-Differenzmerkmal d innerhalb der engeren Verteilung liegt und das Ausgangssignal des Schwachklassifizierers gleich f(x) = 1. 11C zeigt ein Beispiel, wo das Bild klassifiziert wird, dass es einem Objekt von Interesse entspricht, wenn das Interpixel-Differenzmerkmal d in einem der Bereiche liegt, die definiert sind, indem die engere Verteilung von der weiteren Verteilung ausgenommen wird, und das Ausgangssignal des Schwachklassifizierers gleich f(x) = 1.
  • Der Schwachklassifizierer wird gebildet, indem ein Interpixel-Differenzmerkmal d und ein Schwellenwert bestimmt werden. Das Interpixel-Differenzmerkmal d muss so gewählt werden, dass das Fehlerverhältnis minimiert wird, d. h., so dass das Klassifikationsverhältnis hoch wird. Wenn beispielsweise gekennzeichnete lernende Proben für zwei Pixel betrachtet werden, werden Positionen bestimmt, ein Histogramm, beispielsweise das, wie in 11 gezeigt ist, wird erlangt, und es wird ein Schwellenwert so bestimmt, dass das korrekte Klassifikationsverhältnis maximiert wird, d. h., dass ein nichtkorrektes Klassifikationsverhältnis (Fehlerverhältnis) minimiert wird. Die beiden Pixelpositionen werden so bestimmt, dass beispielsweise das Fehlerverhältnis unter Betrachtung des Schwellenwerts minimiert wird. Bei AdaBoost werden jedoch Datenwichtungen, welche den Klassifikationsschwierigkeitsgrad widerspiegeln, den jeweiligen lernenden Proben zugeordnet, und das Lernen wird so durchgeführt, dass das gewichtete Fehlerverhältnis, welches später beschrieben wird, minimiert wird, indem ein geeignetes Interpixel-Differenzmerkmal ausgewählt wird (indem ein geeignetes Pixelpaar ausgewählt wird, dessen Luminanzwerte verwendet werden, um ein Merkmal zu definieren).
  • (3-2) Fortlaufende Ausgabe von Schwachklassifizierern
  • Eine Art eines Schwachklassifizierers, der Wahrscheinlichkeitsausgangssignale erzeugt, beispielsweise Real-AdaBoost oder GentleBoost, gibt fortlaufende Werte wie oben beschrieben aus. In diesem Fall gibt im Gegensatz zu dem Fall, der oben beschrieben wurde, bei dem ein Klassifikationsproblem auf Basis eines vorher festgelegten Schwellenwerts gelöst wird, um ein Binärausgangssignal zu erzeugen (f(x) = 1 oder –1), der Schwachklassifizierer die Wahrscheinlichkeit eines zugeführten Bilds entsprechend einem Objekt von Interesse aus, beispielsweise in Form einer Wahrscheinlichkeitsdichtefunktion.
  • Die Wahrscheinlichkeitsdichtefunktion von Objekten von Interesse bei lernenden Proben mit dem Eingangssignal von Interpixel-Differenzmerkmalen d soll durch PP(x) bezeichnet werden, und die Wahrscheinlichkeitsdichtefunktion von Objekten, welche nicht von Interesse sind, in den lernenden Proben als Pn(x). Dann kann das Wahrscheinlichkeits-Ausgangssignal entsprechend der Wahrscheinlichkeit eines Bilds entsprechend einem Objekt von Interesse durch eine Funktion f(x) ausgedruckt werden, welche in der Gleichung (6) unten zum Ausdruck kommt: f(x) = PP(x) – Pn(x) (6)
  • 13A ist ein Diagramm, welches einen Fall einer charakteristischen Frequenzverteilung von Daten zeigt, wobei die vertikale Achse die Wahrscheinlichkeitsdichte zeigt und die horizontale Achse das Interpixel-Differenzmerkmal d zeigt. 13B ist eine grafische Darstellung, welche die Funktion f(x) für die Datenverteilung zeigt, welche in 13A gezeigt ist, wobei die vertikale Achse den Wert der Funktion f(x) zeigt und die horizontale Achse das Interpixel-Differenzmerkmal d zeigt. In 13A zeigt die gestrichelte Linie die Wahrscheinlichkeitsdichte von Bildern, welche Objekten entsprechen, die nicht von Interesse sind, und die durchgezogene Linie zeigt die Wahrscheinlichkeitsdichte von Bildern, welche Objekten von Interesse entsprechen. Die Berechnung der Funktion f(x) gemäß der Gleichung (6) oben liefert die grafische Darstellung, welche in 13B gezeigt ist. Der Schwachklassifizierer gibt eine Funktion f(x) entsprechend dem Interpixel-Differenzmerkmal d gemäß der obigen Gleichung (2) aus, welches von einer lernenden Probe oder eines Fensterbilds, welche im Lernprozess oder im Klassifikationsprozess zugeführt wird. Die Funktion f(x) zeigt die Wahrscheinlichkeit eines Bilds entsprechend einem Objekt von Interesse. Wenn beispielsweise ein Objekt, welches nicht von Interesse ist, –1 entspricht, und ein Objekt von Interesse 1 entspricht, ist es möglich, dass die Funktion f(x) fortlaufende Werte zwischen –1 bis 1 annimmt. Beispielsweise wird eine Tabelle, welche Interpixel-Differenzmerkmale d und entsprechende Werte von f(x) definiert, gespeichert, und ein Wert von f(x) entsprechend einem gelieferten Eingangssignal wird gelesen und ausgegeben. Somit wird, obwohl die Menge an Speicherung, die benötigt wird, etwas größer wird als der Schwellenwert Th1 oder die Schwellenwerte Th11 und Th12 und Th21 und Th22, die Klassifikationsleistung verbessert.
  • Es wird erwartet, dass die Klassifikationsleistung verbessert wird, wenn diese Schätzverfahren (Klassifikationsverfahren) in Kombination während des Gesamteindruckslernens verwendet werden. Wenn lediglich ein einziges Klassifikationsverfahren verwendet wird, wird die Ausführungsgeschwindigkeit gesteigert.
  • Die Schwachklassifizierer, welche bei dieser Ausführungsform verwendet werden, sind dahingehend vorteilhaft, dass sie in der Lage sind, Objekte wie oben beschrieben schnell zu klassifizieren, da Merkmale, die verwendet werden (Interpixel-Differenzmerkmale d), sehr einfach sind. Wenn Gesichter als Objekt von Interesse ermittelt werden, können sehr günstige Klassifikationsergebnisse auf Basis der Schwellenwertprüfung der Interpixel-Differenzmerkmale d gemäß der Gleichung (3) erlangt werden, welche die einfachste unter den Klassifikationsverfahren, die oben beschrieben wurden, ist. Welches Klassifikationsverfahren für die Schwachklassifizierer geeignet ist, um effektiv zu arbeiten, hängt von dem Problem, welches in Frage steht, ab, und ein Verfahren zum Einstellen eines Schwellenwerts wird in jedem Fall geeignet gewählt. Außerdem kann in Abhängigkeit von der Natur des Problems anstelle der Differenz zwischen Luminanzwerten von zwei Pixeln die Differenz unter Luminanzwerten von drei oder mehreren Pixeln als ein Merkmal verwendet werden.
  • (4) Beendigungsschwellenwert
  • Anschließend wird ein Beendigungsschwellenwert beschrieben. In einer Gesamteindrucks-Lernmaschine wird üblicherweise, ob ein Fensterbild einem Objekt von Interesse entspricht, durch Berechnen ein Wert gewichteter Majorität auf Basis der Ausgangssignale aller Schwachldassifizierer bestimmt, welche die Klassifikationseinheit 5 bilden. Der Wert der gewichteten Majorität wird durch progressives Aufsummieren der Klassifikationsergebnisse (Schätzwerte) durch die Schwachklassifizierer berechnet. Wenn beispielsweise die Anzahl von Schwachklassifizierern mit t (= 1, ..., K) bezeichnet wird, die Majoritätswichtungen (Vertrauen) für die jeweiligen Schwachklassifizierer mit αt, und die Ausgangssignale der jeweiligen Schwachklassifizierer mit f(x) bezeichnet werden, kann der Wert F(x) der gewichteten Majorität im Fall von AdaBoost gemäß der Gleichung (7) unten berechnet werden:
    Figure 00260001
  • 14 ist eine grafische Darstellung, die zeigt, wie der Wert F(x) der gewichteten Majorität gemäß dem, ob ein zugeführtes Bild einem Objekt von Interesse entspricht, sich ändert, wobei die Horizontalachse die Anzahl von Schwachklassifizierern zeigt und die Vertikalachse den Wert F(x) der gewichteten Majorität der obigen Gleichung (7) zeigt. In 14 zeigen Daten V1 bis V4, die durch gestrichelte Linien dargestellt sind, Werte F(x) der gewichteten Majorität in den Fällen, wo die Schätzwerte f(x) sequentiell durch die Schwachklassifizierer berechnet werden, wobei Bilder (lernende Proben) als Objekte von Interesse als Eingangsbilder gekennzeichnet sind. Wie durch die Daten V1 bis V4 gezeigt ist, wird, wenn die Eingangsbilder, welche Objekten von Interesse entsprechen, der Wert F(x) der gewichteten Majorität gemäß der Klassifikation bei einer bestimmten Anzahl von Schwachklassifizierern positiv.
  • Bei dieser Ausführungsform wird ein Verfahren, welches gegenüber dem normalen Anhebungsalgorithmus verschieden ist, verwendet. Insbesondere kann in einem Prozess zum progressiven Aufsummieren von Klassifikationsergebnissen durch Schwachklassifizierer, sogar, bevor Ergebnisse von allen Schwachklassifizierern erlangt werden, die Klassifikation beendet werden, wenn ein Fensterbild deutlich so klassifiziert werden kann, dass es nicht einem Objekt von Interesse entspricht. Ein Beendigungsschwellenwert (Referenzwert) zum Bestimmen, ob die Beendigungsklassifikation beendet wird, wird im Lernprozess erlernt.
  • Unter Verwendung des Beendigungsschwellenwerts kann, wenn verlässlich geschätzt wird, dass ein Bild nicht einem Objekt von Interesse entspricht, ohne Ergebnisse zu verwenden, welche von allen Schwachklassifizierern ausgegeben werden, die Berechnung von geschätzten Werten f(x) durch die Schwachklassifizierer in der Mitte beendet werden. Dies dient dazu, die Rechnungsmenge beträchtlich im Vergleich zu einem Fall zu reduzieren, wo alle Schwachklassifizierer verwendet werden, um einen Wert der gewichteten Majorität zu berechnen, wodurch schnelle Verarbeitung ermöglicht wird.
  • Der Beendigungsschwellenwert kann gewählt werden, ein Minimalwert zu sein, der bei dem Wert der gewichteten Majorität hergenommen werden kann, als Ergebnis der Klassifizierung einer lernenden Probe, welche ein Objekt zeigt, welches unter den gekennzeichneten lernenden Proben ermittelt wird. In einem Klassifikationsprozess werden Klassifikationsergebnisse eines Bildfensters durch die Schwachklassifizierer sequentiell gewichtet und ausgegeben. Das heißt, dass der Wert der gewichteten Majorität progressiv aktualisiert wird. Bei jeder Gelegenheit eines Aktualisierens, d. h., jedes Mal, wenn ein Klassifikationsergebnis durch einen Schwachklassifizierer ausgegeben wird, wird der aktualisierte Wert mit dem Beendigungsschwellenwert verglichen. Wenn der aktualisierte Wert der gewichteten Majorität kleiner wird als der Beendigungsschwellenwert, ist es möglich, zu bestimmen, dass das Fensterbild nicht einem Objekt von Interesse entspricht, so dass die Berechnung beendet werden kann. Dies dient dazu, nutzlose Berechnung einzusparen, was dazu dient, die Geschwindigkeit des Klassifikationsprozesses zu verbessern.
  • Das heißt, ein Beendigungsschwellenwert RM für das Ausgangssignal fM(x) des M-ten Schwachklassifizierers ist ein Minimalwert des Werts F(x) der gewichteten Majorität für lernende Proben xi (j = 1 bis J) für positive Proben (d. h., lernende Proben entsprechend Objekten von Interesse) unter lernenden Proben xi (i = 1 bis N), was in der nachstehenden Gleichung (8) ausgedrückt werden kann:
    Figure 00270001
  • Wie in der Gleichung (8) zum Ausdruck kommt, wenn der Minimalwert des Werts F(x) der gewichteten Majorität der lernenden Proben x1 bis xJ entsprechend den Objekten von Interesse 0 übersteigt, 0 als Beendigungsschwellenwert RM festgelegt. Dies gilt für den Fall von AdaBoost, welches Berechnung mit einem Schwellenwert von 0 durchführt, und es gilt nicht notwendigerweise in Abhängigkeit von dem Verfahren des Gesamteindruckslernens. Im Fall von AdaBoost wird, wie durch eine durchgezogene Linie in 14 gezeigt ist, der Beendigungsschwellenwert RM so gewählt, dass er ein Minimalwert ist, der unter den Werten F(x) der gewichteten Majorität aller Daten V1 bis V4 hergenommen werden kann, wenn die zugeführten Bilder, welche Objekten von Interesse entsprechen, zugeführt werden, und, wenn der Minimalwert der Werte F(x) der gewichteten Majorität aller Daten V1 bis V4 die 0 übersteigt, der Beendigungsschwellenwert RM so gewählt wird, dass dieser 0 ist.
  • Bei dieser Ausführungsform werden die Beendigungsschwellenwerte RM (R1, bis RK), die verwendet werden, wenn Schwachklassifizierer erzeugt werden, erlernt, so dass im Klassifikationsprozess, der später beschrieben wird, die Schätzwerte sequentiell durch mehrere Schwachklassifizierer ausgegeben werden, und der Wert der gewichteten Majorität progressiv wie bei den Daten V5 aktualisiert wird. Wenn der Wert kleiner wird als der Beendigungsschwellenwert RM, wird von der Klassifikation bei nachfolgenden Schwachklassifizierer Abstand genommen. Das heißt, durch Lernen der Beendigungsschwellenwerte RM, wenn ein Schätzwert durch einen Schwachklassifizierer berechnet wird, ist es möglich, zu bestimmen, ob Berechnung durch einen nächsten Schwachklassifizierer durchgeführt wird. Somit kann, wenn klar ist, dass ein Bild nicht einem Objekt von Interesse entspricht, ohne auf Ergebnisse der Klassifikation durch alle Schwachklassifizierer zu warten, die Berechnung im Laufe der Klassifikation beendigt werden. Dies dient dazu, die Ermittlungsgeschwindigkeit zu verbessern.
  • (5) Aufbau der Schwachklassifizierer
  • Anschließend wird der Aufbau der Schwachklassifizierer bei dieser Ausführungsform beschrieben. Bei dieser Ausführungsform werden beispielsweise mehrere lernende Proben, welche in 15 gezeigt sind, zum Lernen verwendet. Eine jede der lernenden Proben besteht aus 24×24 Pixeln. Die lernenden Proben sind Bilder von menschlichen Gesichtern und haben eine Variation in Bezug auf den Beleuchtungszustand, die Rasse usw..
  • Bei dieser Ausführungsform wird das Kennzeichnen auf Basis der Stellung von menschlichen Gesichtern (Köpfen) durchgeführt.
  • Insbesondere wird ein menschliches Gesicht auf Basis eines Neigungswinkels, eines Gierwinkels und eines Rollwinkels bestimmt, wie in 16A und 16B gezeigt ist. Der Neigungswinkel ist ein Winkel nach oben oder unten in Bezug auf eine Achse 201, die parallel zu einer Linie ist, welche die Augen einer Person verbindet und im Wesentlichen durch die Mitte des Kopfes der Person läuft. Beispielsweise ist der Neigungswinkel positiv, wenn die Person nach oben schaut, und der Neigungswinkel ist negativ, wenn die Person nach unten schaut. Der Gierwinkel ist ein Winkel in Bezug auf eine Achse 202, welche senkrecht zur Achse 201 ist und welche im Wesentlichen durch die Mitte des Kopfs in der vertikalen Richtung läuft. Beispielsweise beträgt der Gierwinkel 0 Grad, wenn die Person nach vorne schaut, und der Gierwinkel ist negativ, wenn die Person nach rechts schaut, und der Gierwinkel ist positiv, wenn die Person nach links schaut. Der Rollwinkel ist ein Winkel einer Drehung in Bezug auf eine Achse 203, welche senkrecht zu den Achsen 201 und 202 ist. Der Rollwinkel beträgt 0 Grad, wenn die Achse 201 horizontal ist.
  • Von diesen drei Winkeln kann der Rollwinkel durch Drehen des Bilds korrigiert (umgesetzt) werden. Somit ist es möglich, zu bestimmen, ob das Bild einem menschlichen Gesicht entspricht, auf Basis des korrigierten Bilds. Dagegen können der Gierwinkel und der der Neigungswinkel nicht einfach korrigiert werden. Somit wird es bei dieser Ausführungsform durch Lernen von Bildern menschlicher Gesichter, welche bestimmte Gierwinkel und Neigungswinkel haben, möglich, zu ermitteln, ob Bilder menschlichen Gesichtern entsprechen.
  • Zu diesem Zweck werden bei dieser Ausführungsform lernende Proben in 15 Gruppen (Kennsätzen) auf Basis von deren Gierwinkel und deren Neigungswinkel klassifiziert (gekennzeichnet), wie in 17 gezeigt ist.
  • Der Gierwinkel ist in fünf Bereiche unterteilt, nämlich in einen Bereich von –90 bis –45 Grad, einen Bereich von –45 bis –15 Grad, einen Bereich von –15 bis +15 Grad, einen Bereich von +15 bis +45 Grad und in einen Bereich von +45 bis +90 Grad. Der Neigungswinkel ist in drei Bereiche unterteilt, nämlich in einen Bereich von –90 bis –25 Grad, in einen Bereich von –25 bis +25 Grad und einen Bereich von +25 bis +90 Grad.
  • Der Kennsatz 1 wird zugeordnet, wenn der Gierwinkel in dem Bereich von –15 Grad bis +15 Grad ist und der Neigungswinkel im Bereich von –25 bis + 25 Grad ist. Der Kennsatz 2 wird zugeteilt, wenn der Gierwinkel im Bereich von +15 Grad bis +45 Grad ist und der Neigungswinkel im Bereich von –25 bis +25 Grad ist. Der Kennsatz 3 wird zugeteilt, wenn der Gierwinkel im Bereich von –45 bis –15 Grad ist und der Neigungswinkel im Bereich von –25 bis +25 Grad ist. Der Kennsatz 4 wird zugeteilt, wenn der Gierwinkel im Bereich von –15 Grad bis +15 Grad ist und der Neigungswinkel im Bereich von +25 bis +90 Grad ist. Der Kennsatz 5 wird zugeteilt, wenn der Gierwinkel im Bereich von –15 bis +15 Grad ist und der Neigungswinkel im Bereich von –90 Grad bis –25 Grad ist. Der Kennsatz 6 wird zugeteilt, wenn der Gierwinkel im Bereich von +15 Grad bis +45 Grad ist und der Neigungswinkel im Bereich von +25 bis +90 Grad ist. Der Kennsatz wird ist zugeteilt, wenn der Gierwinkel im Bereich von –45 bis –15 Grad ist und der Neigungswinkel im Bereich von +25 bis +90 Grad ist. Der Kennsatz 8 wird zugeteilt, wenn der Gierwinkel im Bereich von +15 Grad bis +45 Grad ist und der Neigungswinkel im Bereich von –90 bis –25 Grad ist. Der Kennsatz 9 wird zugeteilt, wenn der Gierwinkel im Bereich von –45 bis –15 Grad ist und der Neigungswinkel im Bereich von –90 bis –25 Grad ist. Der Kennsatz 10 wird zugeteilt, wenn der Gierwinkel im Bereich von +45 bis +90 Grad ist und der Neigungswinkel im Bereich von –25 bis +25 Grad ist. Der Kennsatz 11 wird zugeteilt, wenn der Gierwinkel im Bereich von –90 bis –45 Grad ist und der Neigungswinkel im Bereich von –25 bis +25 Grad ist. Der Kennsatz 12 wird zugeteilt, wenn der Gierwinkel im Bereich von +45 bis +90 Grad ist und der Neigungswinkel im Bereich von +25 bis +90 Grad ist. Der Kennsatz 13 wird zugeteilt, wenn der Gierwinkel im Bereich von –90 bis –45 Grad ist und der Neigungswinkel im Bereich von +25 bis +90 Grad ist. Der Kennsatz 14 wird zugeteilt, wenn der Gierwinkel im Bereich von +45 bis +90 Grad ist und der Neigungswinkel im Bereich von –90 bis –25 Grad ist. Der Kennsatz 15 wird zugeteilt, wenn der Gierwinkel im Bereich von –90 bis –45 Grad ist und der Neigungswinkel im Bereich von –90 bis –25 Grad ist.
  • Wie in 18 gezeigt ist, ist jede der Lernproben mit einem der Kennsätze 1 bis 15, welche in 17 gezeigt sind, gekennzeichnet, gemäß der Richtung des Gesichts einer Person in der Probe. Dieses Kennzeichnen wird manuell durchgeführt.
  • Bei dieser Ausführungsform ist jeder Knoten grundsätzlich aus einer vorher festgelegten Anzahl von Schwachklassifizierern (beispielsweise 100 Schwachklassifizierer) aufgebaut, und die Knoten sind angeordnet, eine Baumstruktur zu bilden. Das Lernen wird so durchgeführt, dass die Unterscheidung von Bildern mit den entsprechenden Kennzeichen zugelassen wird. Ein oberer Knoten in der Baumstruktur führt das Lernen durch, welche alle Kennsätze beteiligt, welche durch die Schwachklassifizierer der unteren Knoten zu lernen sind.
  • Als einfaches Beispiel, wenn Bilder von fünf Kennsätzen 1 bis 5 zu lernen sind, wird eine Baumstruktur, welche in 19 gezeigt ist, gebildet. In dem in 19 gezeigten Beispiel wird jeder Knoten aus 100 Schwachklassifizierern gebildet. Ein oberster Knoten 221-1 besteht aus Schwachklassifizierern 21-11 bis 21-1100 . Der Knoten 221-1 lernt alle lernenden Proben mit den Kennsätzen 1 bis 5.
  • Als untere Knoten des Knotens 221-1 sind die Knoten 221-1-1 und 221-1-2 gebildet. Der Knoten 221-1-1 ist aus Schwachklassifizierern 21-1-11 bis 21-1-1100 gebildet, und der Knoten 221-1-2 ist aus Schwachklassifizierern 21-1-21 bis 21-1-2L5 gebildet. Das heißt, die Knoten 221-1-1 und 221-1-2 sind abgeleitete Knoten des oberen Knotens 221-1, und der Knoten relativ dazu ist ein Hauptknoten der Knoten 221-1-1 und 221-1-2. Die Knoten 221-1-1 und 221-1-2 sind Schwesterknoten zueinander in Bezug auf den Hauptknoten 222-1. Wenn ein Hauptknoten sogar einen oberen Knoten hat, ist ein Hauptknoten ein abgeleiteter Knoten des oberen Knotens.
  • Da der Knoten 221-1-2 keinen unteren Knoten (abgeleiteten Knoten) hat, beträgt die Anzahl von Schwachklassifizierern L5. Der Knoten 221-1-2 lernt lernende Proben mit dem Kennsatz 5. Dagegen lernt der Knoten 221-1-1 lernende Proben mit den Kennsätzen 1 bis 4, d. h., lernende Proben mit den Kennsätzen mit Ausnahme des Kennsatzes 5, der durch den Schwesterknoten 221-1-2 erlernt wurde, unter den Kennsätzen 1 bis 5, welche durch den Hauptknoten 221-1 erlernt wurden.
  • Als untere Knoten (abgeleitete Knoten) des Knotens 221-1-1 sind die Knoten 221-1-1-1 bis 221-1-1-3 vorgesehen. Der Knoten 221-1-1-1 erlernt lernende Proben mit dem Kennsatz 1, der Knoten 221-1-1-2 erlernt lernende Proben mit dem Kennsatz 2 und der Knoten 221-1-1-3 erlernt lernende Proben mit den Kennsätzen 3 und 4, d. h., lernende Proben mit den Kennsätzen mit Ausschluss der Kennsätze 1 und 2, welche durch die Schwesterknoten erlernt wurden, unter den Knoten 1 bis 4, welche durch den Hauptknoten 221-1-1 erlernt wurden.
  • Der Knoten 221-1-1-1 ist ein Anschlussknoten, der keinen unteren Knoten hat, und er hat L1 Schwachklassifizierer 21-1-1-11 bis 21-1-1-1L1 . Der Knoten 221-1-1-2 ist ebenfalls ein Anschlussknoten, und besitzt L2 Schwachklassifizierer 21-1-1-21 bis 21-1-1-2L2 .
  • Der Knoten 221-1-1-3 ist kein Anschlussknoten, und er hat 100 Schwachklassifizierer 21-1-1-31 bis 21-1-1-3100 .
  • Als abgeleiteter Knoten mit dem Knoten 221-1-1-3 als Hauptknoten sind die Knoten 221-1-1-3-1 und 221-1-1-3-2 vorgesehen. Der Knoten 221-1-1-3-1 erlernt lernende Proben mit dem Kennsatz 3 unter den Kennsätzen 3 und 4, welche durch den Hauptknoten erlernt wurden. Der Knoten 221-1-1-3-2 erlernt Lernproben mit dem Kennsatz 4, d. h., lernende Proben mit dem Kennsatz mit Ausschluss des Kennsatzes 3, der durch den Schwesterknoten 221-1-1-3-1 erlernt wurde, unter den Kennsätzen 3 und 4, welche durch den Hauptknoten 221-1-1-3 erlernt wurden. Der Knoten 221-1-1-3-1, der ein Anschlussknoten ist, besteht aus L3 Schwachklassifizierern 21-1-1-3-11 bis 21-1-1-3-1L3 . Der Knoten 221-1-1-3-2, der ebenfalls ein Anschlussknoten ist, besteht aus L4 Schwachklassifizierern 21-1-1-3-21 bis 21-1-1-3-2L4 .
  • Die Anzahl L1 bis L5 der Schwachklassifizierer der Anschlussknoten 221-1-1-1, 221-1-1-2, 221-1-1-3-1, 221-1-1-3-2 und 221-1-2 ist so gewählt, dass die gewichteten Fehlerverhältnisse et zu 0 werden (ausreichend reduziert), wenn die entsprechenden Knoten lernende Proben mit den verknüpften Kennsätzen erlernen.
  • Auf diese Weise kann die Anzahl von Schwachklassifizierern reduziert werden.
  • Wenn insbesondere eine derartige Baumstruktur nicht verwendet wird, wird beispielsweise ein Satz von Schwachklassifizierern 231, der in 20 gezeigt ist, zum Unterscheiden eines Kennsatzes benötigt. Der Satz an Schwachklassifizierern 231 umfasst K Schwachklassifizierer 21-11 bis 21-1K . Das Erlernen von Proben mit einem Kennsatz wird durch die K-Schwachklassifizierer erlernt.
  • Um somit beispielsweise lernende Proben mit fünf Kennsätzen zu erlernen, sowie den Satz der Schwachklassifizierer 231-1 zum Erlernen lernender Proben mit dem Kennsatz 1, werden Sätze an Schwachklassifizierern 231-2 bis 231-5 zum Erlernen von lernenden Proben mit den Kennsätzen 2 bis 5 benötigt. Jeder der Sätze an Schwachklassifizierern 231-2 bis 231-5 umfasst K Schwachklassifizierer.
  • Bei der in 19 gezeigten Baumstruktur beträgt, wenn ein gewichtetes Fehlerverhältnis et nicht ausreichend bis zum Ende reduziert wird, die maximale Anzahl an Schwachklassifizierern im lernenden Pfad von einem obersten Knoten zu einem Endknoten gleich K. Wenn jedoch das gewichtete Fehlerverhältnis et ausreichend in der Mitte reduziert ist, wird das nachfolgende Lernen von lernenden Proben mit dem relevanten Kennsatz nicht durchgeführt, so dass die Anzahl an Schwachklassifizierern entsprechend reduziert werden kann. Außerdem werden die lernenden Proben mit einer Anzahl von Kennsätzen auf der oberen Seite durch gemeinsame Schwachklassifizierer erlernt, so dass die Anzahl von Schwachklassifizierern entsprechend reduziert werden kann.
  • Außerdem wird bei dieser Ausführungsform, wenn ein Wert der gewichteten Majorität, welche durch Ansammeln von Ergebnissen von Wichtungsergebnissen einer Klassifikation (Unterscheidung) durch die jeweiligen Schwachklassifizierer kleiner wird als ein Beendigungsschwellenwert, von einer nachfolgenden Klassifikation (Unterscheidung) Abstand genommen. Damit kann die Anzahl an Schwachklassifizierern auch in dieser Hinsicht reduziert werden.
  • Dies ist in 22 schematisch gezeigt. Das heißt, dass bei dieser Ausführungsform, obwohl der Knoten 221 grundsätzlich aus den Schwachklassifizierern 211 bis 21100 gebildet ist, jeder Knoten 21i eine Funktion einer Beendigung auf Basis eines Beendigungsschwellenwerts hat. In 22 bezeichnet Y, dass ein Ausgangssignal durch eine nachfolgende Stufe weitergeleitet wird, und N bezeichnet, dass die Verarbeitung beendet ist.
  • 24 zeigt ein Teil einer Baumstruktur (ein Teil einer Baumstruktur, welche in 25 gezeigt ist), in einem Fall, wo jeder Knoten aus Schwachklassifizierern gebildet ist, welche die Beendigungsfunktion, die oben beschrieben wurde, haben. In diesem Beispiel werden lernende Proben mit 15 Kennsätzen 1 bis 15 erlernt und unterschieden. Insbesondere ist ein oberster Hauptknoten 221-1 aus Schwachklassifizierern 21-11 bis 21-1100 gebildet. Als abgeleitete Knoten des Hauptknotens 221-1 sind die Knoten 221-1-1, 221-1-2 und 221-1-3 vorgesehen. Der Hauptknoten 221-1 erlernt lernende Proben mit allen Kennsätzen 1 bis 15. Der Knoten 221-1-1 erlernt lernende Proben mit den fünf Kennsätzen 1 bis 5. Der Knoten 221-1-2 erlernt lernende Proben mit den fünf Kennsätzen 6, 8, 10, 12 und 14. Der Knoten 221-1-3 erlernt lernende Proben mit den fünf Kennsätzen 7, 9, 11, 13 und 15.
  • Der Knoten 221-1-1 ist aus 100 Schwachklassifizierern 21-1-11 bis 21-1-1100 gebildet. Der Knoten 221-1-2 ist aus 100 Schwachklassifizierern 21-1-21 bis 21-1-2100 gebildet. Der Knoten 221-1-3 ist aus 100 Schwachklassifizierern 21-1-31 bis 21-1-3100 gebildet.
  • Als abgeleitete Knoten mit dem Knoten 221-1-1 als Hauptknoten sind die Knoten 221-1-1-1, 221-1-1-2 und 221-1-1-3 vorgesehen. Der Knoten 221-1-1-1 ist aus 100 Schwachklassifizierern 21-1-1-11 bis 21-1-1-1100 gebildet, und er erlernt lernende Proben der drei Kennsätze 1 bis 3 unter den Kennsätzen 1 bis 5, welche durch den Hauptknoten 221-1-1 erlernt werden. Der Knoten 221-1-1-2 erlernt lernende Proben mit dem Kennsatz 4, und er hat L4 Schwachklassifizierer 21-1-1-21 bis 21-1-1-2L4 . Der Knoten 221-1-1-3 erlernt lernende Proben mit dem Kennsatz 5, und er besitzt L5 Schwachklassifizierer 21-1-1-31 bis 21-1-1-3L5 .
  • Als abgeleitete Knoten mit dem Knoten 221-1-1-1 sind als Hauptknoten die Knoten 221-1-1-1-1 bis 221-1-1-1-3 vorgesehen. Der Knoten 221-1-1-1-1 erlernt lernende Proben mit dem Kennsatz 1, und er besitzt L1 Schwachklassifizierer 21-1-1-1-11 bis 21-1-1-1-1L1 . Der Knoten 221-1-1-1-2 erlernt lernende Proben mit dem Kennsatz 2, und besitzt L2 Schwachklassifizierer 21-1-1-1-21 bis 21-1-1-1-2L2 . Der Knoten 221-1-1-1-3 erlernt lernende Proben mit dem Kennsatz 3, und besitzt L3 Schwachklassifizierer 21-1-1-1-31 bis 21-1-1-1-3L3 .
  • Die Knoten 221-1-2-1 bis 221-1-2-3, welche abgeleitete Knoten des Knotens 221-1-2 sind, erlernen lernende Proben mit dem Kennsatz 10, den Kennsätzen 6 und 12 bzw. den Kennsätzen 8 und 14. Der Knoten 221-1-2-1 besteht aus L10 Schwachklassifizierern 21-1-2-11 bis 21-1-2-1L10 , der Knoten 221-1-2-2 hat 100 Schwachklassifizierer 21-1-2-21 bis 21-1-2-2100 , und der Knoten 221-1-2-3 hat 100 Schwachklassifizierer 21-1-2-31 bis 21-1-2-3100 .
  • Als abgeleitete Knoten, mit dem Knoten 221-1-3 als Hauptknoten, sind die Knoten 221-1-3-1 bis 221-1-3-3 vorgesehen. Der Knoten 221-1-3-1 erlernt lernende Proben mit dem Kennsatz 11, und er hat L11 Schwachklassifizierer 21-1-3-11 bis 21-1-3-1L11 . Der Knoten 221-1-3-2 erlernt lernende Proben mit den Kennsätzen 7 und 11, und er besitzt 100 Schwachklassifizierer 21-1-3-21 bis 21-1-3-2100 . Der Knoten 221-1-3-3 erlernt lernende Proben mit den Kennsätzen 9 und 15, und er hat 100 Schwachklassifizierer 21-1-3-31 bis 21-1-3-3100 .
  • Wie in 25 gezeigt ist, ist eine Knoten-ID jedem Knoten zugeteilt. Der Knoten 221-1 hat eine Knoten-ID 1000, und die Knoten 221-1-1 bis 221-1-3 haben Knoten-IDs 1100, 1200 bzw. 1300. Die Knoten 221-1-1-1 bis 221-1-1-3 haben Knoten-IDs 1110, 1120 bzw. 1130. Die Knoten 221-1-1-1-1 bis 221-1-1-1-3 haben Knoten-ID 1111, 1112 bzw. bis 1113. Die Knoten 221-1-2-1 bis 221-1-2-3 haben Knoten-IDs 1210, 1220 bzw. 1230.
  • Als abgeleitete Knoten mit dem Knoten 221-1-2-2 sind als Hauptknoten die Knoten 221-1-2-2-1 und 221-1-2-2-2 vorgesehen, welche die Knoten-IDs 1221 bzw. 1222 haben.
  • Als abgeleitete Knoten mit dem Knoten 221-1-2-3 sind als Hauptknoten die Knoten 221-1-2-3-1 und 221-1-2-3-2 vorgesehen, welche die Knoten-IDs 1231 bzw. 1232 haben.
  • Die Knoten 221-1-3-1 bis 221-1-3-3 haben die Knoten-IDs 1310, 1320 bzw. 1330.
  • Als abgeleitete Knoten mit dem Knoten 221-1-3-2 sind als Hauptknoten die Knoten 221-1-3-2-1 und 221-1-3-2-2 vorgesehen, welche die Knoten-IDs 1321 bzw. 1322 haben.
  • Als abgeleitete Knoten des Knotens 221-1-3-3 sind die Knoten 221-1-3-3-1 und 221-1-3-3-2 vorgesehen, welche die Knoten IDs 1331 bzw. 1332 haben.
  • Die Baumstruktur kann manuell auf Basis der Kenntnis der charakteristischen Muster festgelegt werden, oder sie kann gebildet werden, indem bewirkt wird, dass Proben, für welche die Fähigkeit der Unterscheidung sich nicht verbessert (das gewichtete Fehlerverhältnis et wird nicht ausreichend reduziert), abzweigen, wenn das Lernen weitergeht.
  • Die Baumstruktur, welche in 25 (24) gezeigt ist, ist auf Basis der Kenntnis bestimmt, dass die Ähnlichkeit des Musters hoch ist, wenn der Gierwinkel eng ist. Somit lernt der oberste Hauptknoten 221-1 lernende Proben mit allen Kennsätzen 1 bis 15. Die lernenden Proben mit den 15 Kennsätzen werden in lernende Proben mit Kennsätzen betreffs vorwärts blickender Bilder, Kennsätzen betreffs nach links blickender Bilder und Kennsätzen betreffs nach rechts blickender Bilder unterteilt, und die lernenden Proben mit diesen Kennsätzen werden durch die Knoten 221-1-1, 221-1-2 bzw. 221-1-3 erlernt.
  • Die lernenden Proben der nach vorne schauenden Bilder mit den Kennsätzen 1 bis 5 sind außerdem in lernende Proben von Bildern mit den Kennsätzen 1 bis 3 unterteilt, d. h., mit dem Neigungswinkel im Bereich von –25 bis 25 Grad, lernende Proben von Bildern mit dem Kennsatz 4, d. h., mit dem Neigungswinkel im Bereich von +25 bis 90 Grad, und in lernende Proben von Bildern mit dem Kennsatz 5, d. h., mit dem Neigungswinkel im Bereich von –90 bis 25 Grad. Diese lernenden Proben werden durch die Knoten 221-1-1-1, 221-1-1-2 bzw. 221-1-1-3 erlernt.
  • Die erlernenden Proben der Bilder mit den Kennsätzen 1 bis 3, d. h., mit dem Neigungswinkel im Bereich von –25 bis 25 Grad sind weiter in lernende Proben mit dem Kennsatz 1, dem Kennsatz 2 und dem Kennsatz 3 unterteilt. Diese lernenden Proben werden durch die Knoten 221-1-1-1-1, 221-1-1-1-2 bzw. 221-1-1-1-3 erlernt.
  • Die lernenden Proben der nach links schauenden Bilder mit den Kennsätzen 6, 8, 10, 12 und 14 sind in lernende Proben mit dem Kennsatz 10, lernende Proben mit den Kennsätzen 6 und 12 und lernende Proben mit den Kennsätzen 8 und 14 gemäß dem Neigungswinkel unterteilt. Die lernenden Proben mit dem Kennsatz 10 werden durch den Knoten 221-1-2-1 erlernt, die lernenden Proben mit den Kennsätzen 6 und 12 werden durch den Knoten 221-1-2-2 erlernt, und die lernenden Proben mit den Kennsätzen 8 und 14 werden durch den Knoten 221-1-2-3 erlernt.
  • Die lernenden Proben mit den Kennsätzen 6 und 12 sind weiter in lernende Proben mit dem Kennsatz 6 und in lernende Proben mit dem Kennsatz 12 unterteilt. Diese lernenden Proben werden durch die Knoten 221-1-2-2-1 bzw. 221-1-2-2-2 erlernt.
  • Die lernenden Proben mit den Kennsätzen 8 und 14 sind weiter in lernende Proben mit dem Kennsatz 8 und lernende Proben mit dem Kennsatz 14 unterteilt. Diese lernenden Proben werden durch die Knoten 221-1-2-3-1 bzw. 221-1-2-3-2 erlernt.
  • Die lernenden Proben der nach rechts schauenden Bilder mit dem Kennsätzen 7, 9, 11, 13 und 15 sind in lernende Proben mit dem Kennsatz 11, in lernende Proben mit dem Kennsätzen 7 und 13 und in lernende Proben mit den Kennsätzen 9 und 15 unterteilt. Die lernenden Proben mit dem Kennsatz 11 werden durch den Knoten 221-1-3-1 erlernt, die lernenden Proben mit den Kennsätzen 7 und 13 werden durch den Knoten 221-1-3-2 erlernt, und die lernenden Proben mit den Kennsätzen 9 und 15 werden durch den Knoten 221-1-3-3 erlernt.
  • Die lernenden Proben mit den Kennsätzen 7 und 13 werden in lernende Proben mit dem Kennsatz 7 und lernende Proben mit dem Kennsatz 13 unterteilt. Diese lernenden Proben werden durch die Knoten 221-1-3-2-2 bzw. 221-1-3-2-1 erlernt.
  • Die lernenden Proben mit den Kennsätzen 9 und 15 werden in lernende Proben mit dem Kennsatz 9 und in lernende Proben mit dem Kennsatz 15 unterteilt. Diese lernenden Proben werden durch die Knoten 221-1-3-3-2 bzw. 221-1-3-3-1 erlernt.
  • Wie in 26 gezeigt ist, hat jeder Knoten eine Definition einer Datenstruktur. Eine Knoten-ID ist eine Zahl zum Identifizieren jedes Knotens. Im in 26 gezeigten Beispiel ist die Knoten-ID 1310. Eine Hauptknoten-ID zeigt die Knoten-ID eines Hauptknotens gesehen von einem in Frage stehenden Knoten. Der Hauptknoten des Knotens 221-1-3-1 ist der Knoten 221-1-3 mit einer Knoten-ID 1300, so dass 1300 in den Abschnitt des Knoten-IDs geschrieben wird. Wenn kein Hauptknoten existiert, ist die Hauptknoten-ID gleich –1. Eine abgeleitete Knoten-ID ist eine ID eines abgeleiteten Knotens. Wenn mehrere abgeleitete Knoten existieren, werden mehrere abgeleitete Knoten-ID geschrieben. Da der Knoten 221-1-3-1 ein Anschlussknoten ist und keinen abgeleiteten Knoten hat, wird –1 in den Abschnitt der abgeleiteten Knoten-ID geschrieben. Ein Kennsatz bezieht sich auf einen Kennsatz von Proben, welche durch den in Frage stehenden Knoten zu verarbeiten sind, und der Kennsatz des Knotens 221-1-3-1 ist 11. Die Anzahl von Schwachklassifizierern bezieht sich auf die Anzahl von Schwachklassifizierern des Frage stehenden Knotens, wobei L11 dies in diesem Beispiel ist.
  • Die Wichtung für die gewichtete Majorität und die Abtastwichtungen werden in die Datenstruktur geschrieben.
  • (6) Lernverfahren
  • Anschließend wird ein Verfahren zum Erlernen durch die Gesamteindrucks-Lernmaschine 6 beschrieben. Bei einem Mustererkennungsproblem zum Klassifizieren, ob bestimmte Daten einem Gesicht entsprechen und in welcher Richtung das Gesicht schaut, wenn die Daten einem Gesicht entsprechen, werden Bilder, welche als Lernproben (Trainingsdaten) dienen, welche vorher manuell gekennzeichnet sind (d. h., korrekte Klassifikationen zugeteilt sind) vorbereitet. Die Lernproben umfassen Bilder von Bereichen von Objekten, welche zu ermitteln sind (d. h., positive Proben) und irrelevante Bilder von Bereichen, welche zufallsmäßig extrahiert werden (d. h., negative Proben), beispielsweise Landschaften.
  • Ein Lernalgorithmus wird auf Basis der Lernproben angewandt, um Lerndaten zu erzeugen, die während der Klassifikation verwendet werden. Bei dieser Ausführungsform umfassen die Lerndaten, welche während der Klassifikation verwendet werden, die folgenden vier Datenarten:
    • (A) K Paare von zwei Pixelpositionen
    • (B) K Schwellenwerte für Schwachklassifizierer
    • (C) K Wichtungen für gewichtete Majorität (K Vertrauen für Schwachklassifizierer)
    • (D) K Beendigungsschwellenwerte
  • (6-1) Erzeugung von Schwachklassifizierern
  • Anschließend wird ein Algorithmus zum Erlernen der vier Arten von Lerndaten (A) bis (D) von einer großen Anzahl von Lernproben beschrieben.
  • Um einen Lernprozess auszuführen, ist die Gesamteindrucks-Lernmaschine 6 funktionell aufgebaut, wie in 27 gezeigt ist. Gemäß 27 weist die Gesamteindrucks-Lernmaschine 6 einen Initialisierer 301, eine Knotenlerneinheit 302, ein Prüforgan 303, ein Auswahlorgan 304 und ein Rückbringorgan 305 auf. Diese Komponenten sind in der Lage, Daten miteinander wenn notwendig auszutauschen.
  • Der Initialisierer 301 setzt verschiedene Anfangswerte. Die Knotenlerneinheit führt einen Lernprozess von Schwachklassifizierern bei jedem Knoten durch. Das Prüforgan 303 vergleicht die Anzahl von abgeleiteten Knoten (Größe (numChild)) mit einem Zweigzählwert (branch_count[i]), was später beschrieben wird, prüft, ob eine Knoten-ID positiv ist, usw.. Das Auswahlorgan 304 wählt einen Knoten aus, der anschließend zu verarbeiten ist. Das Rückbringorgan 305 führt eine Verarbeitung aus, beispielsweise das Rückbringen eines Knotens, der zu verarbeiten ist, zu einem Hauptknoten.
  • 28 ist ein Flussdiagramm des Verfahrens zum Erlernen durch die Gesamteindrucks-Lernmaschine 6. Obwohl AdaBoost, welches ein Lernalgorithmus ist, der spezifische Werte als Schwellenwerte zur Schwachklassifikation nutzt, hier beschrieben wird, können andere Lernalgorithmen zum Durchführen des Gesamteindruckslernens, um Schwachklassifizierer zu kombinieren, verwendet werden. Beispielsweise kann Real-AdaBoost, welches fortlaufende Werte nutzt, welche die Wahrscheinlichkeiten korrekter Klassifikationen als Schwellenwerte zeigen, verwendet werden.
  • Wie oben beschrieben sind zunächst N Lernproben, welche vorher als Objekte von Interesse oder Objekte, die nicht von Interesse sind, gekennzeichnet wurden, vorbereitet.
  • Beispielsweise sind die Lernproben N Bilder menschlicher Gesichter, wobei jedes aus 24×24 Pixeln besteht, wie in 18 gezeigt ist. Jede der Lernproben wird mit einem der Kennsätze 1 bis 15 gekennzeichnet.
  • Im Schritt S11 stellt ein Initialisierungsorgan 301 Anfangswerte ein. Insbesondere stellt das Initialisierungsorgan 301 eine ID eines obersten Knotens (Wurzelknoten) (1000 in dem in 25 gezeigten Beispiel) auf eine Variable i ein, welche die Knoten-ID eines zu verarbeitenden Knotens zeigt. Außerdem setzt das Initialisierungsorgan 301 1/N auf Datenwichtungen Dt aller Daten. N bezeichnet die Artzahl von Proben. Außerdem initialisiert das Initialisierungsorgan 301 die Werte F(x) der gewichteten Majorität aller Knoten auf 0. Außerdem setzt das Initialisierungsorgan 301 die 0 auf eine Variablen branch_count[i], welche die Häufigkeit zeigt, wo die unteren Knoten (abgeleitete Knoten) durch jeden Knoten besucht werden.
  • Im Schritt S12 führt die Knotenlerneinheit 302 einen Lernprozess eines Knotens durch, der eine ID hat, welche auf den aktuellen Wert der Variablen i eingestellt ist. Wenn auch der Prozess später ausführlich mit Hilfe eines in 30 gezeigten Flussdiagramms beschrieben wird, wird das Lernen von Schwachklassifizierern im aktuellen Knoten der Verarbeitung durchgeführt. Die Ergebnisse der Verarbeitung bei dem Knoten werden gespeichert, so dass die Ergebnisse durch einen abgeleiteten Knoten weitergegeben werden können. In diesem Beispiel wird, da ein 1000 auf die Variable 1 gesetzt wird, ein Lernprozess des Knotens 221-1, der in 25 gezeigt ist, durchgeführt.
  • Danach vergleicht im Schritt S13 das Prüforgan 303 den Wert der Variablen branch_count[i] mit einer Variablen size(numChild), welche die Anzahl der abgeleiteten Knoten zeigt. Wenn der Wert der Variablen branch_count[i] kleiner als die Anzahl der abgeleiteten Knoten ist, wird angezeigt, dass der Lernprozess für alle abgeleiteten Knoten nicht beendet wurde, so dass der Prozess zum Schritt S14 weiterläuft. In diesem Fall ist der Wert der Variablen branch_count[i] gleich 0 (im Schritt S11), und der Knoten 221-1 mit einer ID 1000 (i = 1000) hat drei abgeleitete Knoten 221-1-1 bis 221-1-3. Somit wird im Schritt S13 JA ausgegeben, und das Verfahren läuft weiter zum Schritt S14.
  • Im Schritt S14 wählt das Auswahlorgan 304 einen Knoten, der anschließend zu verarbeiten ist, aus. Insbesondere inkrementiert das Auswahlorgan 304 den Wert der Variablen branch_count[i] des Knotens 221-i, der aktuell verarbeitet wird (der Wert wird zu 1 in diesem Fall) um 1, und setzt die Knoten-ID eines abgeleiteten Knotens, der durch die Variable branch_count[i] dargestellt wird, auf die Variable i, welche einen Knoten zeigt, der zu verarbeiten ist. Beispielsweise wird eine ID 1100 des Knotens 221-1-1, der ein abgeleiteter Knoten des Knotens 221-1 ist, der aktuell verarbeitet wird, auf die Variable i gesetzt.
  • Danach kehrt der Prozess zurück zum Schritt S12, und es wird ein Lernprozess für einen Knoten entsprechend dem Wert, der auf die Variable i gesetzt ist, durchgeführt. In diesem Beispiel wird ein Lernprozess für den Knoten 221-1-1 mit einer Knoten-ID 1100 durchgeführt.
  • Danach bestimmt im Schritt S13 das Prüforgan 303, ob der Wert der Variablen branch_count[i] kleiner ist als die Anzahl von abgeleiteten Knoten. In diesem Beispiel ist der Knoten, der verarbeitet wird, der Knoten 221-1-1 mit einer Knoten-ID 1100, der drei abgeleitete Knoten 221-1-1-1 bis 221-1-1-3 hat, welche Knoten-IDs 1110, 1120 bzw. 1130 haben. Da die Variable branch_count[i] des Knotens 221-1-1 ebenfalls auf 0 im Schritt S12 initialisiert ist, wird bestimmt, dass der Wert der Variablen branch_count[i] kleiner ist als die Anzahl der abgeleiteten Knoten (3), so dass der Prozess zum Schritt S14 weitergeht. Im Schritt S14 wird die Variable branch_count[i] des Knotens 221-1-1 um 1 inkrementiert (der Wert wird zu 1), und eine Knoten-ID eines abgeleiteten Knotens des Knotens 221-1-1, welche durch den Variablen branch_count[i] des Knotens 221-1-1 gezeigt wird, wird auf die Variable i festgelegt. In dem in 25 gezeigten Beispiel wird 1110, welches die Knoten-ID des Knotens 221-1-1-1 ist, der einer der abgeleiteten Knoten des Knotens 221-1-1 ist, der verarbeitet wurde, auf die Variable i gesetzt.
  • Danach kehrt der Prozess zurück zum Schritt S12, und ein Lernprozess für den Knoten 221-1-1-1, der der ID, welche auf die Variable i (1110 in diesem Fall) gesetzt wurde, entspricht, wird durchgeführt.
  • Danach wird im Schritt S13 die Anzahl der abgeleiteten Knoten des Knotens 221-1-1-1, welche aktuell verarbeitet werden (im in 25 gezeigten Beispiel beträgt die Anzahl von abgeleiteten Knoten 3, da der Knoten 221-1-1-1 drei abgeleitete Knoten 221-1-1-1-1 bis 221-1-1-1-3 hat), mit der Variablen branch_count[i] des Knotens 221-1-1-1-1 verglichen. Der Wert der Variablen branch_count[i] des Knotens 221-1-1-1 wird auf 0 im Schritt S11 initialisiert, so dass dieser kleiner ist als die Anzahl der abgeleiteten Knoten (3). Somit wird im Schritt S14 der Wert der Variablen branch_count[i] um 1 inkrementiert (der Wert wird zu 1). Außerdem wird eine Knoten-ID eines abgeleiteten Knotens des Knotens 221-1-1-1, der durch die Variable branch_count[i] (= 1) gezeigt wird, (beispielsweise ID 1111 des Knotens 221-1-1-1-1 in 25) auf die Variable i gesetzt. Danach wird im Schritt S12 ein Lernprozess des Knotens 221-1-1-1-1 entsprechend der ID 1111, welche auf die Variable i gesetzt wurde, durchgeführt.
  • Danach wird im Schritt S13 der Wert (= 0) der Variablen branch_count[i] des Knotens 221-1-1-1-1, der aktuell gerade verarbeitet wird, mit der Anzahl von abgeleiteten Knoten verglichen. Da der Knoten 221-1-1-1-1 ein Anschlussknoten ist und keinen abgeleiteten Knoten hat, beträgt die Anzahl der abgeleiteten Knoten gleich 0. Somit wird im Schritt S13, da die Variable branch_count[i] (= 0) gleich der Anzahl von abgeleiteten Knoten (= 0) ist, bestimmt, dass die Variable branch_count[i] nicht kleiner ist als die Anzahl der abgeleiteten Knoten. Danach bringt im Schritt S15 das Rückbringorgan 305 den zu verarbeitenden Knoten zum Hauptknoten zurück. Insbesondere setzt das Rückbringorgan 305 die ID 1110 des Knotens 221-1-1-1, welche der Hauptknoten des Knotens 221-1-1-1-1 ist, der aktuell verarbeitet wird. Danach bestimmt im Schritt S16 das Rückbringorgan 305, ob der Wert der Variablen i, der im Schritt S15 gesetzt wurde, größer als 0 ist. Da die IDs der Knoten abgesehen vom obersten Hauptknoten (Wurzelknoten) 221-1 positiv sind, liefert in diesem Fall der Schritt S16 JA. Aktuell ist die ID des Hauptknotens 221-1-1-1 gleich 1110, was größer ist als 0. Somit bringt das Rückbringorgan 305 die Verarbeitung zurück zum Schritt S13.
  • Im Schritt S13 bestimmt das Prüforgan 303, ob die Variable branch_count[i] des Knotens entsprechend der ID, welche auf die Variable i gesetzt ist (in diesem Fall den Knoten 221-1-1-1, der eine ID 1110 hat), kleiner ist als die Anzahl von abgeleiteten Knoten. Da 1 auf die Variable branch_count[i] des Knotens 221-1-1-1 in diesem Fall gesetzt wird und die Anzahl der abgeleiteten Knoten 3 beträgt, wird bestimmt, dass die Variable branch_count[i] kleiner ist als die Anzahl von abgeleiteten Knoten, so dass der Prozess weiter zum Schritt S14 läuft. Im Schritt S14 inkrementiert das Auswahlorgan 304 den Wert der Variablen branch_count[i] um 1 (der Wert wird 2) und setzt die ID eines abgeleiteten Knotens entsprechend dem aktuellen Wert der Variablen branch_count[i] auf die Variable i. In diesem Fall wird die ID 1112 des Knotens 221-1-1-1-2 auf die Variable i gesetzt. Dann wird im Schritt S12 ein Lernprozess des Knotens 221-1-1-1-2, der eine Knoten-ID 1112 hat, durchgeführt.
  • Im Schritt S13 wird bestimmt, ob die Variable branch_count[i] (= 0) des Knotens 221-1-1-1-2, die aktuell verarbeitet wird, kleiner ist als die Anzahl der abgeleiteten Knoten. Da der Knoten 221-1-1-2 ein Anschlussknoten ist und keinen abgeleiteten Knoten hat, ist die Anzahl der abgeleiteten Knoten gleich 0. Der Wert der Variablen branch_count[i] beträgt ebenfalls 0. Somit liefert der Schritt S13 NEIN. Danach setzt im Schritt S15 das Rückbringorgan 305 die ID des Hauptknotens auf die Variable i. Das heißt, das Rückbringorgan 305 setzt die ID 1110 des Hauptknotens 221-1-1-1. Im Schritt S16 wird bestimmt, ob der Wert der Variablen i, der im Schritt S15 gesetzt wurde, größer als 0 ist. In diesem Fall ist der Wert größer als 0, so dass der Prozess zum Schritt S13 zurückkehrt.
  • Im Schritt S13 bestimmt das Prüforgan 303, ob der Wert der Variablen branch_count[i] des Knotens 221-1-1-1, der eine ID 1110 hat, die aktuell verarbeitet wird, kleiner ist als die Anzahl von dessen abgeleiteten Knoten. In diesem Beispiel beträgt die Anzahl von abgeleiteten Knoten 3, und der Wert der Variablen branch_count[i] beträgt 2. Damit liefert der Schritt S13 JA, und die Verarbeitung läuft weiter zum Schritt S14.
  • Im Schritt S14 inkrementiert das Auswahlorgan den Wert der Variablen branch_count[i] um 1 (der Wert wird in diesem Fall zu 3) und setzt eine ID des abgeleiteten Knotens, der durch den Wert dargestellt wird, auf die Variable i. In diesem Fall wird die ID 1113 des Knotens 221-1-1-1-3, der ein abgeleiteter Knoten des Knotens 221-1-1-1 ist, auf die Variable i gesetzt. Danach wird im Schritt S12 ein Lernprozess des Knotens 221-1-1-1-3, welcher die ID 1113 hat, durchgeführt.
  • Im Schritt S13 wird bestimmt, ob der Wert der Variablen branch_count[i] des Knotens 221-1-1-1-3 kleiner ist als die Anzahl von abgeleiteten Knoten. Da der Knoten 221-1-1-1-3 ein Anschlussknoten ist und keinen abgeleiteten Knoten hat, ist der Wert der Variablen branch_count[i] gleich der Anzahl von abgeleiteten Knoten und nicht kleiner als die Anzahl der abgeleiteten Knoten. Somit läuft das Verfahren weiter zum Schritt S15, in welchem das Rückbringorgan die ID 1110 des Knotens 221-1-1-1, welcher der Hauptknoten des Knotens 221-1-1-1-3 ist, der verarbeitet wurde, auf die Variable i setzt. Da der Wert größer ist als 0, kehrt das Verfahren zurück vom Schritt S16 zum Schritt S13.
  • Im Schritt S13 bestimmt das Prüforgan 303, ob der Wert (in diesem Fall 3) der Variablen branch_count[i] des Knotens 221-1-1-1 kleiner ist als die Anzahl von abgeleiteten Knoten (in diesem Fall 3). Da diese Werte beide 3 sind, liefert der Schritt S13 NEIN und das Verfahren läuft weiter zum Schritt S15. Im Schritt S15 setzt das Rückbringorgan 305 die ID 1100, welche der Hauptknoten des Knotens 221-1-1-1 ist, auf die Variable i. Im Schritt S16 wird bestimmt, dass die ID, welche auf die Variable i gesetzt wurde, größer ist als 0, so dass der Prozess zum Schritt S13 zurückkehrt.
  • Im Schritt S13 bestimmt das Prüforgan 303, ob der Wert (= 1) der Variablen branch_count[i] des Knotens 221-1-1 kleiner ist als die Anzahl von dessen abgeleiteten Knoten. Die Anzahl der abgeleiteten Knoten beträgt 3, was größer ist als der Wert 1 der Variablen branch_count[i]. Damit läuft das Verfahren weiter zum Schritt S14, bei dem die Variable i in der Variablen branch_count[i] um 1 inkrementiert wird (der Wert wird zu 2). Dann wird eine ID eines abgeleiteten Knotens entsprechend dem Wert 2 auf die Variable i gesetzt. In diesem Fall wird die ID 1130 des Knotens 221-1-1-2, welche ein abgeleiteter Knoten des Knotens 221-1-1 ist, auf die Variable i gesetzt. Danach wird im Schritt S12 ein Lernprozess des Knotens 221-1-1-2 durchgeführt.
  • Ähnlich kehrt, wenn das Lernen zu einem Anschlussknoten weitergelaufen ist, das Lernen zum Hauptknoten zurück, und das Lernen der Schwesterknoten wird durchgeführt. Wenn das Lernen aller Schwesterknoten beendet ist, kehrt das Lernen zurück sogar zu einem oberen Hauptknoten, und das Lernen für die Schwesterknoten wird durchgeführt. Dieser Prozess wird sequentiell wiederholt.
  • In dem in 25 gezeigten Beispiel wird, wenn das Lernen des Endknotens 221-1-3-3-2 im Schritt S12 durchgeführt wurde, im Schritt S13 bestimmt, dass der Wert der Variablen branch_count[i] nicht kleiner ist als die Anzahl von dessen abgeleiteten Knoten. Im Schritt S15 wird die ID des Hauptknotens, d. h., die ID 1330 des Knotens 221-1-3-3 auf die Variable i gesetzt. Da der Wert größer ist als 0, kehrt der Prozess vom Schritt S16 zu S13 zurück, in welchem bestimmt wird, dass der Wert (= 2) der Variablen branch_count[i] des Knotens 221-1-3-3 nicht kleiner ist als die Anzahl der abgeleiteten Knoten (= 2). Danach läuft der Prozess weiter zum Schritt S15, in welchem die ID 1300, welche die ID des Hauptknotens 221-1-3 des Knotens 221-1-3-3 ist, auf die Variable i gesetzt wird.
  • Da die ID 1300 größer ist als 0, kehrt der Prozess zurück vom Schritt S16 zum Schritt S13, in welchem bestimmt wird, dass der Wert (= 3) der Variablen branch_count[i] des Knotens 221-1-3 nicht kleiner ist als die Anzahl von abgeleiteten Knoten (= 3). Der Prozess läuft dann weiter zum Schritt S15, in welchem die ID 1000 des Hauptknotens 221-1 des Knotens 221-1-3 auf die Variable i gesetzt wird. Da im Schritt S16 bestimmt wird, dass der Wert größer als 0 ist, kehrt die Verarbeitung zurück zum Schritt S13. Dann wird bestimmt, dass der Wert (= 3) der Variablen branch_count[i] des Knotens 221-1 nicht kleiner ist als die Anzahl von dessen abgeleiteten Knoten (= 3). Dann wird im Schritt S15 die ID des Hauptknotens auf die Variable i gesetzt. Der Knoten 221-1 ist der oberste Knoten (Wurzelknoten), und sogar ein oberer Hauptknoten existiert aktuell nicht, so das –1 auf den Hauptknoten gesetzt wird. Da –1 auf die Variable i im Schritt S15 gesetzt wird, wird im Schritt S16 bestimmt, dass die Variable i (= –1) nicht größer als 0 ist. Dann wird der Prozess verlassen.
  • Auf diese Weise werden Schwachklassifizierer der Knoten, welche in der Baumstruktur angeordnet sind, erlernt.
  • Anschließend wird der Knotenlernprozess im Schritt S12, der in 28 gezeigt ist, ausführlich beschrieben. Um den Prozess auszuführen, ist die Knotenlerneinheit 302, welche in 27 gezeigt ist, so aufgebaut, wie in 29 gezeigt ist. Insbesondere weist die Knotenlerneinheit 302 ein Probenauswahlorgan 331, ein Weiterleitorgan 332, ein Schwachklassifizier-Auswahlorgan 333, ein Majoritätsrichtungsrechner 334, ein Datenwichtungs-Aktualisierungsgerät 335, einen Wichtungsmajoritätsrechner 336, einen Schwellenwertrechner 337, ein Prüforgan 338 und einen Speicher 339 auf.
  • Das Probenauswahlorgan 331 wählt positive Proben und negative Proben aus, welche zum Knotenlernen benötigt werden. Das Weiterleitorgan 332 leitet die Werte, welche durch einen vorherigen Knoten gespeichert wurden, als Anfangswerte zur Verarbeitung eines nachfolgenden Knotens weiter. Das Schwachklassifizier-Auswahlorgan 333 wählt einen Schwachklassifizierer auf Basis von Datenwichtungen Dt aus. Der Majoritätswichtungsrechner 334 berechnet Majoritätswichtungen αt.
  • Das Datenwichtungs-Aktualisierungsorgan 335 aktualisiert die Datenwichtungen Dt. Der Wichtungsmajoritätsrechner 336 berechnet einen Wert der gewichteten Majorität, indem Wichtungsausgangsergebnisse der jeweiligen Schwachklassifizierer durch die Majoritätswichtungen αt angesammelt werden. Insbesondere berechnet der Wichtungsmajoritätsrechner 336 die Gleichung (7), die früher angegeben wurde. Der Schwellenwertrechner 337 berechnet einen Endschwellenwert (Referenzwert RM) gemäß der Gleichung (8). Das Prüforgan 338 prüft, ob der Wert der gewichteten Majorität kleiner wurde als der Endschwellenwert RM, der durch den Schwellenwertrechner 337 berechnet wurde, ob der Lernprozess für alle Schwachklassifizierer bei einem Knoten, der in Frage steht, beendet wurde, usw.. Der Speicher 339 speichert den Wert F(x) der gewichteten Majorität und die Datenwichtungen Dt als Ergebnisse der Klassifikation (Ausgänge des Knotens) durch den letzten Schwachklassifizierer bei dem Knoten.
  • Anschließen wird der Knotenlernprozess mit Hilfe eines Flussdiagramms, welches in 30 gezeigt ist, beschrieben. Zunächst wählt im Schritt S41 das Probenauswahlorgan 331 positive Proben mit Kennsätzen aus, welche bei dem Knoten zu lernen sind. Beispielsweise werden im Fall eines Lernprozesses des Knotens 221-1, der in 25 gezeigt ist, positive Proben aller Kennsätze 1 bis 15 ausgewählt. Dagegen werden in einem Lernprozess des Knotens 221-1-1-1-1 lediglich positive Proben mit dem Kennsatz 1 ausgewählt. Negative Proben werden in jedem Fall insgesamt verwendet.
  • Im Schritt S42 leitet das Weiterleitorgan 332 die Ausgänge des Hauptknotens weiter. Im Fall des obersten Hauptknotens 221-1, wird, da kein Hauptknoten dafür existiert, der Wert F(x) der gewichteten Majorität auf 0 initialisiert, und 1/N (N bezeichnet die Anzahl von lernenden Proben) wird auf die Werte der Datenwichtungen Dt gesetzt. In dem Fall eines Knotens, der einen Hauptknoten hat, werden im Schritt S49 für den Hauptknoten, was später beschrieben wird, der Wert F(x) der gewichteten Majorität und der Datenwichtungen Dt, welche durch den Speicher 339 gespeichert wurden, gelesen und als Anfangswerte gesetzt.
  • Wenn die Ausgaben des Hauptknotens weitergeleitet werden, werden die Datenwichtungen Dt normiert, um diese auf 1 aufzusummieren.
  • Danach wählt im Schritt S43 das Schwachklassifizier-Auswahlorgan 333 einen Schwachklassifizierer aus. Obwohl der Prozess ausführlich mit Hilfe eines in 32 gezeigten Flussdiagramms beschrieben wird, wird ein Schwachklassifizierer, der den Wert des gewichteten Fehlerverhältnisses et unter K minimiert (die Anzahl von Interpixel-Differenzmerkmalen d) Schwachklassifizierer ausgewählt (erzeugt). Im Schritt S44 berechnet der Majoritätswichtungsrechner 334 die Majoritätswichtungen αt gemäß der Gleichung (10) unten:
    Figure 00450001
  • Wie aus der Gleichung (10) oben offensichtlich ist, vergrößert sich das Vertrauen αt des Schwachklassifizierers, wenn das gewichtete Fehlerverhältnis et abnimmt.
  • Im Schritt S45 aktualisiert das Datenwichtungs-Aktualisierungsorgan 335 die Datenwichtungen Dt,i, der lernenden Proben unter Verwendung von Vertrauen αt, welche gemäß der Gleichung (9) berechnet wurden, gemäß der Gleichung (10) unten. Üblicherweise müssen die Datenwichtungen Dt,i normiert werden, um diese auf 1 aufzusummieren. Somit werden die Datenwichtungen Dt,i gemäß der Gleichung (11) unten normiert:
    Figure 00450002
  • Im Schritt S406 aktualisiert der Wichtungsmajoritätsrechner 336 den Wert F(x) der Wichtungsmajorität gemäß der Gleichung (7). Der Wert αt der gewichteten Majorität wird im Schritt S44 berechnet, und der Wert ft(x) wird im Schritt S43 berechnet.
  • Danach berechnet im Schritt S47 der Schwellenwertrechner 337 einen Beendigungsschwellenwert RM gemäß der Gleichung (8). Der Beendigungsschwellenwert RM wird im Schritt S175 verwendet, der später mit Hilfe von 37 beschrieben wird.
  • Im Schritt S48 bestimmt das Prüforgan 338, ob das Lernen aller Schwachklassifizierer beendet wurde, wenn der Knoten, der aktuell verarbeitet wurde, einen abgeleitet Knoten hat. Wenn der Knoten keinen abgeleitet Knoten hat, wird bestimmt, ob der Wert des gewichteten Fehlerverhältnis et, welches im Schritt S43 berechnet wurde, ausreichend reduziert wurde. Wenn der Knoten einen abgeleitet Knoten hat, wird bei dieser Ausführungsform die Anzahl von Schwachklassifizierern so gewählt, dass diese 100 ist, wie früher beschrieben wurde. Wenn somit das Lernen von den 100 Schwachklassifizierern nicht beendet wurde, kehrt der Prozess zurück zum Schritt S43, und es werden die nachfolgenden Schritte wiederholt. Wenn der Knoten ein Anschlussknoten ist, wird der Prozess wiederholt, bis das gewichtete Fehlerverhältnis er ausreichend reduziert ist. Insbesondere wird bestimmt, dass das gewichtete Fehlerverhältnis et ausreichend reduziert ist, wenn das gewichtete Fehlerverhältnis et kleiner oder gleich 0 wird. Wenn das gewichtete Fehlerverhältnis et nicht ausreichend reduziert ist, kehrt der Prozess zurück zum Schritt S43, und es werden die nachfolgenden Schritte wiederholt. Das heißt, die Schritt S43 bis S48 werden mit einer Häufigkeit wiederholt, welche der Anzahl von Schwachklassifizierern bei dem in Frage stehenden Knoten entsprechen.
  • Wenn im Schritt S48 bestimmt wird, dass das Lernen aller Schwachklassifizierer beendet wurde, läuft der Prozess weiter zum Schritt S49, in welchem der Speicher 339 als Ausgangssignale den Wert F(x) der gewichteten Majorität, der durch die Klassifizierung durch den letzten Klassifizierer erlangt wird, und die Werte der Datenwichtungen Dt speichert. Die Ausgangssignale, welche gespeichert wurden, werden im Schritt S42 durch einen unteren abgeleiteten Knoten als Anfangswerte weitergeleitet.
  • Auf diese Weise wird der in 30 gezeigte Prozess für jeden Knoten im Schritt S12, der in 28 gezeigt ist, ausgeführt.
  • (6-2) Erzeugung der Schwachklassifizierer
  • Anschließend wird der Schwachklassifizier-Auswahlprozess im Schritt S43 im Flussdiagramm, welches in 30 gezeigt ist, beschrieben. Das Verfahren zum Erzeugen der Schwachklassifizierer unterscheidet zwischen einem Fall, wo Schwachklassifizierer Binärwerte ausgeben, und einem Fall, wo Schwachklassifizierer fortlaufende Werte ausgeben, welche durch die Funktion f(x) dargestellt werden, welche durch die Gleichung 86) zum Ausdruck kommt, die früher angegeben wurde. Außerdem unterscheidet in dem Fall von Binärausgangssignalen das Verfahren leicht zwischen einem Fall, wo die Klassifikation auf dem einfachen Schwellenwert Th1 basiert, wie in der Gleichung (3) zum Ausdruck kommt, und einem Fall, wo die Klassifikation auf zwei Schwellenwerten Th11 und Th12 oder Th21 und Th22 basiert, wie in der Gleichung (4) oder (5) zum Ausdruck kommt. Die folgende Beschreibung befasst sich mit einem Verfahren zum Erlernen (Erzeugen) von Schwachklassifizierern, welche Binärwerte ausgeben, auf Basis des einfachen Schwellenwerts Th1.
  • Wie in 31 gezeigt ist, weist die Schwachklassifizier-Auswahleinheit 333 ein Bestimmungsorgan 421, einen Frequenzverteilungsrechner 422, ein Schwellenwerteinstellorgan 423, ein Schwach-Hypothesenrechner 424, einen Wichtungsfehler-Verhältnisrechner 425, ein Prüforgan 426 und ein Auswahlorgan 427 auf.
  • Das Bestimmungsorgan 421 bestimmt zufallsmäßig zwei Pixel von einer zugeführten lernenden Probe. Der Frequenzverteilungsrechner 422 sammelt Interpixel-Differenzmerkmale d für Pixelpaare, welche durch das Bestimmungsorgan 421 bestimmt werden, wodurch eine Frequenzverteilung dafür erlangt wird. Das Schwellenwerteinstellorgan 423 setzt die Schwellenwerte für Schwachklassifizierer. Der Schwach-Hypothesenrechner 424 berechnet Schwach-Hypothesen durch Schwachklassifizierer, wobei Klassifikationsergebnisse f(x) ausgegeben werden.
  • Der Wichtungsfehler-Verhältnisrechner 425 berechnet das Wichtungsfehlerverhältnis et, welches in der Gleichung (12) unten zum Ausdruck kommt:
    Figure 00470001
  • Wie in der Gleichung (12) oben zum Ausdruck kommt, ist das Wichtungsfehlerverhältnis et eine Summe von Datenwichtungen von lernenden Proben, welche durch die Schwachklassifizierer (ft(xi) ≠ yi) fehlklassifiziert sind, d. h., lernenden Proben, die als yi = 1 gekennzeichnet sind und als (ft(xi) = –1 klassifiziert sind, und lernenden Proben, welche als yi = –1 gekennzeichnet sind und als ft(xi) = 1 klassifiziert sind. Das Wichtungsfehlerverhältnis et steigt an, wenn der Klassifizierer eine lernende Probe fehlklassifiziert, welche eine große Datenwichtung Dt,i hat, d. h., eine lernende Probe, welche schwierig zu klassifizieren ist.
  • Das Prüforgan 426 vergleicht die Schwellenwerte Th der Schwachklassifizierer und die Interpixel-Differenzmerkmale d. Das Auswahlorgan 427 wählt einen Schwachklassifizierer in Verbindung mit einem Schwellenwert Th aus, der mit einem kleinsten Wichtungsfehlerverhältnis et verknüpft ist.
  • 32 ist ein Flussdiagramm eines Verfahrens im Schritt S43 zum Erlernen (Erzeugen) von Schwachklassifizierern, welche Binärwerte auf Basis eines einzigen Schwellenwerts Th1 ausgeben.
  • Im Schritt S71 bestimmt das Bestimmungsorgan 421 zufallsmäßig Positionen S1 und S2 von zwei Pixeln in einer lernenden Probe, welche aus 24×24 Pixel besteht. Wenn eine lernende Probe aus 24×24 Pixeln besteht, beträgt die Anzahl möglicher Paare von zwei Pixeln 576×575, und es wird eines der Paare ausgewählt. Die Positionen der beiden Pixel werden mit S1 und S2 bezeichnet, und deren Luminanzwerte mit I1 bzw. I2.
  • Im Schritt S72 berechnet der Frequenzverteilungsrechner 422 Interpixel-Differenzmerkmale für alle lernenden Proben, und erlangt eine Frequenzverteilung dafür. Das heißt, der Frequenzverteilungsrechner 422 berechnet ein Interpixel-Differenzmerkmale d, welches die Differenz (I1 – I2) zwischen den Luminanzwerten I1 und I2 der Pixel bei den beiden Positionen S1 und S2 zeigt, welche im Schritt S71 ausgewählt wurden, für jede der N lernenden Proben, wodurch ein Histogramm (Frequenzverteilung), welche in 11A gezeigt ist, erlangt wird.
  • Im Schritt S73 setzt das Schwellenwertsetzorgan 423 einen Schwellenwert Th, der kleiner ist als das kleinste Interpixel-Differenzmerkmale d. Wenn beispielsweise die Werte der Interpixel-Differenzmerkmale d zwischen d1 und d9 verteilt sind, wie in 33 gezeigt ist, ist der Wert des kleinsten Interpixel-Differenzmerkmale d gleich d1. Somit setzt das Schwellenwertsetzorgan 423 einen Schwellenwert Th31, der kleiner ist als das Interpixel-Differenzmerkmale d1 als den Schwellenwert Th.
  • Dann berechnet im Schritt S74 der Schwach-Hypothesenrechner 424 eine Schwach-Hypothese gemäß der Gleichung (13) unten, wobei sign(A) eine Funktion ist, welche +1 ausgibt, wenn der Wert A positiv ist, während die –1 ausgegeben wird, wenn der Wert A negativ ist: f(x) = sign(d – Th) (13)
  • In diesem Fall ist unabhängig davon, da Th = Th31 ist, welcher von d1 bis d1 der Wert des Interpixel-Differenzmerkmals d ist, der Wert (d – Th) positiv. Somit ist das Ergebnis f(x) der Klassifikation gemäß der Schwach-Hypothese ausgedrückt durch die Gleichung (13) gleich +1.
  • Im Schritt S75 berechnet der Wichtungsfehler-Verhältnisrechner 425 Wichtungsfehlerverhältnisse et1 und et2. Die Wichtungsfehlerverhältnisse et1 und et2 haben die Beziehung, welche in der Gleichung 814) unten zum Ausdruck kommt: et2 = 1 – et1 (14)
  • Das Wichtungsfehlerverhältnis et1 wird gemäß der Gleichung (12) berechnet. Das Wichtungsfehlerverhältnis et1 ist ein Wichtungsfehlerverhältnis in einem Fall, wo I1 und I2 die Pixelwerte bei den Positionen S1 bzw. S2 sind. Das Wichtungsfehlerverhältnis et2 ist ein Wichtungsfehlerverhältnis in einem Fall, wo I2 der Pixelwerte bei der Position S1 ist und I1 der Pixelwert bei der Position S2 ist. Das heißt, eine Kombination einer ersten Position als Position S1 und einer zweiten Position als Position S2 unterscheidet sich gegenüber einer Kombination der ersten Position als Position S2 und der zweiten Position als Position S1. Die Werte der gewichteten Fehlerverhältnisse et1 und et2 haben jedoch noch die Beziehung, welche in der Gleichung (14) zum Ausdruck kommt. Somit werden im Schritt S35 die Wichtungsfehlerverhältnisse et von zwei Kombinationen zusammen berechnet. Wenn nicht müssen K Wiederholungen von Schritten S71 bis S81 durchgeführt werden (wo K die Anzahl aller möglichen Paare von zwei Pixeln bezeichnet, welche von der lernenden Probe extrahiert werden können). Durch Berechnen von zwei Wichtungsfehlerverhältnissen et1 und et2 im Schritt S75 wird dagegen die Anzahl von Wiederholungen auf einer Hälfte der Anzahl K aller möglichen Kombinationen reduziert.
  • Im Schritt S76 wählt der Wichtungsfehler-Verhältnisrechner 425 das kleinere der Wichtungsfehlerverhältnisse et1 und et2 aus, welche im Schritt S75 berechnet wurden.
  • Im Schritt S77 prüft das Prüforgan 426, ob der Schwellenwert größer ist als das größte Interpixel-Differenzmerkmale. Das heißt, das Prüforgan 126 prüft, ob der aktuelle Schwellenwert Th größer ist als das Interpixel-Differenzmerkmale d (d9 im Beispiel, welches in 33 gezeigt ist). Da in diesem Fall der Schwellenwert Th der Schwellenwert Th31 ist, der in 33 gezeigt ist, wird bestimmt, dass der Schwellenwert Th kleiner ist als das größte Interpixel-Differenzmerkmal d9. Dann läuft das Verfahren weiter zum Schritt S78.
  • Im Schritt S78 setzt das Schwellenwert-Setzorgan 423 einen Schwellenwert Th, der einen Zwischenwert hat, zwischen einem Interpixel-Differenzmerkmal, welches am engsten zum aktuellen Schwellenwert ist, und einem Interpixel-Differenzmerkmal, welches am nächsten zum aktuellen Schwellenwert ist. In dem in 33 gezeigten Beispiel wird ein Zwischenwert Th32 zwischen dem Interpixel-Differenzmerkmal d1, welches am nächsten zum aktuellen Schwellenwert Th31 ist, und dem Interpixel-Differenzmerkmal d2, welches das nächst engste ist, gesetzt.
  • Dann läuft das Verfahren weiter zum Schritt S74, bei dem der Schwach-Hypothesenrechner 424 ein Ausgangssignal f(x) der Klassifikation durch die Schwach-Hypothese gemäß der früher angegeben Gleichung (13) berechnet. In diesem Fall ist der Wert von f(x) gleich +1, wenn der Wert des Interpixel-Differenzmerkmals d zwischen d2 bis d9 liegt, und der Wert von f(x) beträgt –1, wenn der Wert des Interpixel-Differenzmerkmals d gleich d1 ist.
  • Im Schritt S75 wird das Wichtungsfehlerverhältnis et1 gemäß der Gleichung (12) berechnet, und das Wichtungsfehlerverhältnis et2 wird gemäß der Gleichung 814) berechnet. Dann wird im Schritt S76 das kleinere der Wichtungsfehlerverhältnisse et1 und et2 ausgewählt.
  • Im Schritt S77 wird wiederum bestimmt, ob der Schwellenwert größer ist als das größte Interpixel-Differenzmerkmal. Da in diesem Fall der Schwellenwert Th32 kleiner ist als das größte Interpixel-Differenzmerkmal d9, läuft das Verfahren weiter zum Schritt S78, bei dem ein Schwellenwert Th33 zwischen dem Interpixel-Differenzmerkmalen d2 und d3 als Schwellenwert Th gesetzt wird.
  • Auf diese Weise wird der Schwellenwert Th progressiv auf größere Werte aktualisiert. Im Schritt S74 wird beispielsweise, wenn der Schwellenwert Th ein Schwellenwert Th34 zwischen Interpixel-Differenzmerkmalen d3 und d4 ist, +1 ausgegeben, wenn der Wert des Interpixel-Differenzmerkmals d größer als oder gleich d4 ist, während die –1 ausgegeben wird, wenn der Wert kleiner oder gleich als d3 ist. Ähnlich ist das Ergebnis f(x) der Klassifikation durch die Schwach-Hypothese gleich +1, wenn der Wert des Interpixel-Differenzmerkmals d größer oder gleich dem Schwellenwert Thi und das Ergebnis f(x) ansonsten –1 ist.
  • Das oben beschriebene Verfahren wird wiederholt, bis im Schritt S77 bestimmt wird, dass der Schwellenwert Th größer ist als das größte Interpixel-Differenzmerkmal. Im Beispiel, welches in 33 gezeigt ist, wird das Verfahren wiederholt, bis der Schwellenwert einen Wert Th40 erreicht, der größer ist als das größte Interpixel-Differenzmerkmal d9. Das heißt, durch Wiederholen der Schritte S74 bis S78 werden Wichtungsfehlerverhältnisse et für die entsprechenden Werte des Schwellenwerts Th für ein Paar ausgewählter Pixel berechnet. Im Schritt S79 wählt das Auswahlorgan 427 das kleinste Wichtungsfehlerverhältnis von den Wichtungsfehlerverhältnissen et aus, die berechnet wurden. Im Schritt S80 wählt das Auswahlorgan 427 einen Schwellenwert in Verbindung mit dem kleinsten Wichtungsfehlerverhältnis als einen Schwellenwert für die aktuelle Schwach-Hypothese aus. Das heißt, ein Schwellenwert Thi in Verbindung mit dem kleinsten Wichtungsfehlerverhältnis et, welches im Schritt S79 ausgewählt wurde, wird als Schwellenwert für den Schwachklassifizierer ausgewählt (der Schwachldassifizierer, der auf Basis des Pixelpaars erzeugt wurde).
  • Im Schritt S81 prüft das Prüforgan 426, ob das Verfahren für alle Pixelpaare wiederholt wurde. Wenn das Verfahren für alle Pixelpaare nicht wiederholt wurde, kehrt das Verfahren zurück zum Schritt S71, und die nachfolgenden Schritte werden wiederholt. Das heißt, die Positionen S1 und S2 von zwei Pixeln werden zufallsmäßig bestimmt (aber unterschiedlich gegenüber vorher ausgewählten Positionen), und das gleiche Verfahren wird für die Luminanzwerte I1 und I2 bei den Positionen S1 und S2 ausgeführt.
  • Das oben beschriebene Verfahren wird wiederholt, bis bestimmt ist, dass K Wiederholungen beendet wurden, wobei K die Anzahl aller möglichen Paare von zwei Pixeln ist, welche von der lernenden Probe extrahiert werden können. Bei dieser Ausführungsform wird jedoch wie oben beschrieben das Verfahren im Wesentlichen im Schritt S75 für den Fall ausgeführt, wo die Positionen S1 und S2 umgekehrt sind, wobei eine Hälfte der Anzahl K aller Paare im Schritt S81 ausreicht.
  • Wenn im Schritt S81 bestimmt wird, dass das Verfahren für alle Paare beendet ist, wählt im Schritt S82 das Auswahlorgan 427 einen Schwachldassifizierer in Verbindung mit dem kleinsten Wichtungsfehlerverhältnis unter den erzeugten Schwachklassifizierern aus. Das heißt, durch das oben beschriebene Verfahren wird einer der K Schwachklassifizierer (beispielsweise der Schwachklassifizierer 211 in 9) erlernt und erzeugt.
  • Dann kehrt das Verfahren zurück zum Schritt S43 in 30, und es werden die nachfolgenden Schritte ausgeführt. Das Verfahren, welches in 30 gezeigt ist, wird wiederholt, bis im Schritt S48 bestimmt wird, dass das Erlernen aller Klassifizierer beendigt wurde, wenn ein abgeleiteter Knoten existiert, oder wenn bestimmt wird, dass das Wichtungsfehlerverhältnis ausreichend reduziert wurde, wenn ein abgeleiteter Knoten nicht existiert. Das heißt, bei der zweiten Wiederholung des in 30 gezeigten Verfahrens wird der Schwachklassifizierer 212 , der in 9 gezeigt ist, durch Erlernen erzeugt, und bei der dritten Wiederholung des in 30 gezeigten Verfahrens wird der Schwachklassifizierer 213 , der in 9 gezeigt ist, durch Erlernen erzeugt. Ähnlich wird bei der K-ten Wiederholung das in 30 gezeigte Verfahren des in 30 gezeigten Verfahrens der Schwachklassifizierer 21K , der in 9 gezeigt ist, durch Erlernen erzeugt.
  • Die Ausführungsform oben wurde im Zusammenhang eines Beispiels beschrieben, wo ein Schwachklassifizierer erzeugt wird, indem Merkmale mehrerer Schwachklassifizierer unter Verwendung von Datenwichtungen Dt ,i erlernt werden, welche im Schritt S45 einer vorherigen Wiederholung erlangt werden und einer der Schwachklassifizierer in Verbindung mit dem kleinsten Wichtungsfehlerverhältnis et gemäß der Gleichung (12) ausgewählt wird. Alternativ kann jedoch im Schritt S43, der früher beschrieben wurde, beispielsweise ein Schwachklassifizierer erzeugt werden, indem beliebige Pixelpositionen von mehreren Pixelpositionen ausgewählt werden, welche vorher vorbereitet oder erlernt wurden. Weiter alternativ kann ein Schwachklassifizierer unter Verwendung von lernenden Proben erzeugt werden, welche gegenüber lernenden Proben verschieden sind, welche für die Wiederholungen der Schritte S71 bis S81, die früher beschrieben wurden, verwendet werden. Weiter alternativ kann ein Schwachklassifizierer oder ein Klassifizierer, der erzeugt wird, unter Verwendung von Proben ausgewertet werden, die gegenüber lernenden Proben verschieden sind, wie bei der Kreuz-Gültigkeitserklärung oder dem Querstellungsverfahren. Bei der Kreuz-Gültigkeitserklärung werden die lernenden Proben gleichförmig in I-Einheiten unterteilt, das Lernen wird unter Verwendung der Einheiten durchgeführt, die anders als eine Einheit sind, und die Ergebnisse des Lernens werden unter Verwendung der einen Einheit ausgewertet, wobei dieses Verfahren I-Mal wiederholt wird.
  • Wenn ein Schwachklassifizierer eine Klassifikation auf Basis von zwei Schwellenwerten Th11 und Th12 oder Th21 und Th22, wie in der Gleichung (4) oder der Gleichung (5) zum Ausdruck kommt, durchführt, unterscheidet sich die Verarbeitung in den Schritten S74 bis S78, welche in 32 gezeigt sind, leicht. Wenn lediglich ein Schwellenwert Th verwendet wird, wie in der Gleichung (3) zum Ausdruck kommt, ist es möglich, ein Wichtungsfehlerverhältnis et durch Subtraktion von 1 zu berechnen. Wenn dagegen eine korrekte Klassifikation durch das Interpixel-Differenzmerkmal angezeigt wird, welche größer ist als der Schwellenwert Th12 und kleiner ist als der Schwellenwert Th11, wie in der Gleichung (4) zum Ausdruck kommt, versteht es sich, dass unter Subtraktion von 1 eine korrekte Klassifikation angezeigt wird, wenn das Interpixel-Differenzmerkmal kleiner ist als der Schwellenwert Th22 oder wenn das Interpixel-Differenzmerkmal größer ist als der Schwellenwert Th21, wie in der Gleichung (5) zum Ausdruck kommt. Das heißt, die Umkehrung der Gleichung (4) ist die Gleichung (5), und die Umkehrung der Gleichung (5) ist die Gleichung (4).
  • Wenn ein Schwachklassifizierer ein Klassifikationsergebnis auf Basis der beiden Schwellenwerte Th11 und Th12 oder Th21 und Th22 ausgibt, wird im Schritt S72, der in 32 gezeigt ist, die Frequenzverteilung von Interpixel-Differenzmerkmalen erlangt, und die Werte der Schwellenwerte Th11 und Th12 oder Th21 und Th22, welche das Wichtungsfehlerverhältnis et minimieren, werden berechnet. Dann wird im Schritt S81 bestimmt, ob die vorher festgelegte Anzahl von Wiederholungen beendet wurde. Somit wird ein Schwachklassifizierer in Verbindung mit dem kleinsten Fehlerverhältnis unter den Schwachldassifizierern, welche durch die vorher festgelegte Anzahl von Wiederholungen erzeugt werden, angenommen.
  • Wenn der Schwachklassifizierer fortlaufende Werte ausgibt, wie in der Gleichung (6), die früher angegeben wurde, zum Ausdruck kommt, werden ähnlich dem Schritt S71 in 32 zunächst zwei Pixel zufallsmäßig ausgewählt. Dann wird ähnlich dem Schritt S32 die Frequenzverteilung für alle lernenden Proben erlangt. Außerdem wird die Funktion f(x), die in der Gleichung (6) zum Ausdruck kommt, auf Basis der erlangten Frequenzverteilung berechnet. Dann wird ein Verfahren zum Berechnen eines Wichtungsfehlerverhältnisses gemäß einem vorher festgelegten Lernalgorithmus, der die Wahrscheinlichkeit ausgibt, ein Objekt von Interesse zu sein (positive Probe), mit einer vorher festgelegten Häufigkeit wiederholt, und ein Parameter, der das Fehlerverhältnis minimiert (der korrektes Klassifikationsverhältnis maximiert), wird ausgewählt, wodurch ein Schwachklassifizierer erzeugt wird.
  • Bei dem Verfahren zum Erzeugen eines Schwachklassifizierers wird, wie in 32 gezeigt ist, wenn beispielsweise lernende Proben, die jeweils aus 24×24 Pixel bestehen, verwendet werden, die Anzahl möglicher Paare von zwei Pixeln zu 331200 (= 576×575). Damit kann ein Schwachklassifizierer, der das Fehlerverhältnis unter den Schwachklassifizierern minimiert, die mit einem Maximum von 331200 Wiederholungen erzeugt werden, angenommen werden. Wie oben beschrieben kann ein Schwachklassifizierer, der eine hohe Fähigkeit hat, erzeugt werden, indem ein Schwachklassifizierer angenommen wird, der das Fehlerverhältnis unter einer maximalen Anzahl von Schwachklassifizierern minimiert, welche durch eine maximale Anzahl von Wiederholungen erzeugt werden. Alternativ kann jedoch ein Schwachklassifizierer, der das Fehlerverhältnis minimiert, von Schwachklassifizierern angenommen werden, welche durch eine Anzahl von Wiederholungen erzeugt werden, die kleiner ist als die maximale Anzahl von Wiederholungen, d. h., mehreren 100 Wiederholungen.
  • (6) Verfahren zum Ermitteln des Objekt von Interesse
  • Anschließend wird ein Verfahren zum Ermitteln eines Objekts von Interesse durch die Objektermittlungsvorrichtung 1, welche in 5 gezeigt ist, beschrieben.
  • Um das Verfahren auszuführen weist die Klassifikationseinheit 5 einen Initialisierer 471, ein Prüforgan 472, ein Auswahlorgan 473, ein Rückbringorgan 474, ein Weiterleitorgan 475, einen Schwach-Hypothesenrechner 476, einen Auswertwertrechner 477, ein Einstellorgan 478 und eine Ausgabeeinheit 479 auf.
  • Der Initialisierer 471 setzt Anfangswerte von Schwachklassifizierern von dem obersten Knoten. Das Prüforgan 472 prüft, ob ein nächstes Skalierungsbild abzutasten ist, ob Bereiche des Objekts von Interesse einander überlappen, ob ein Bild einem Gesicht entspricht, ob ein abgeleiteter Knoten existiert, ob die Variable branch_count[i] kleiner ist als die Anzahl von abgeleiteten Knoten, ob die Variable i positiv ist, usw..
  • Das Auswahlorgan 473 extrahiert zwei sich überlappende Bereiche und wählt einen der Bereiche aus. Das Rückbringorgan 474 bringt den zu verarbeiteten Knoten zu einem Hauptknoten zurück. Das Weiterleitorgan 475 leitet Ausgangssignale eines Hauptknotens weiter. Der Schwach-Hypothesenrechner 476 berechnet eine Schwach-Hypothese gemäß der Gleichung (13). Der Auswertungswertrechner 477 berechnet einen Auswertungswert s gemäß der Gleichung (7).
  • Das Einstellorgan 478 setzt einen Maximalwert auf den Auswertungswert S. Die Ausgabeeinheit 479 gibt den Auswertungswert s aus.
  • Es wird erlaubt, dass der Initialisierer 471 bis zur Ausgabeeinheit 479 Daten miteinander wenn notwendig auszutauschen.
  • Bei einem Ermittlungsprozess (Klassifikationsprozess) wird die Klassifikationseinheit 5, die aus dem Satz von Schwachklassifizierern aufgebaut ist, die im lernenden Prozess wie oben beschrieben erzeugt werden, verwendet, um ein Objekt von Interesse (menschliches Gesicht) von einem Bild gemäß einem vorher festgelegten Algorithmus zu ermitteln. Dieser Prozess wird mit Hilfe eines Flussdiagramms, welches in 35 gezeigt ist, beschrieben.
  • Im Schritt S101 reduziert die Skalierungseinheit 3 die Skala eines Grausstufenbilds, welches von der Bildausgabeeinheit 2 zugeführt wird, mit einem spezifizierten Verhältnis.
  • Die Bildausgabeeinheit 2 kann das Eingangssignal eines Graustufenbilds unmittelbar empfangen, oder ein zugeführtes Farbbild kann in ein Graustufenbild in der Bildausgabeeinheit 2 umgesetzt werden. Die Skalierungseinheit 3 gibt zuerst ein Bild aus, welches durch die Bildausgabeeinheit 2 geliefert wird, und zwar unverändert, ohne dies zu skalieren, und gibt Bilder reduzierter Skalen in einem nachfolgenden Zeittakt aus. Um die Beschreibung zu vereinfachen, werden alle Bilder, welche von der Skalierungseinheit 3 ausgegeben werden, als skalierte Bilder bezeichnet. Ein skaliertes Bild wird mit einem Zeitablauf erzeugt, wenn die Gesichtsermittlung in allen Bereichen eines vorherig ausgegebenen Skalierbilds beendet ist. Wenn ein Skalierungsbild kleiner wird als ein Fensterbild, wird die Verarbeitung eines nächsten Rahmens des zugeführten Bilds begonnen.
  • Im Schritt S102 tastet die Abtasteinheit 4 das zugeführte skalierte Bild unter Verwendung eines Suchfensters ab, um ein Bild auszuschneiden. Das heißt, die Abtasteinheit 4 lokalisiert ein Suchfenster bei einer spezifizierten Position auf dem skalierten Bild, um ein Bild im Fenster als ein Fensterbild auszuschneiden, wobei das Fensterbild an die Klassifikationseinheit 5 ausgegeben wird.
  • Im Schritt S103 führt die Klassifikationseinheit 5 einen Unterscheidungsprozess aus. Obwohl der Unterscheidungsprozess später ausführlich mit Hilfe eines in 36 gezeigten Flussdiagramms beschrieben wird, wird die Klassifikation durchgeführt, ob ein Bild im Suchfenster einem menschlichen Gesicht entspricht, und in welcher Richtung das Bild schaut, wenn das Bild einem menschlichen Gesicht entspricht (welchem der Kennsätze 1 bis 15).
  • Im Schritt S104 prüft das Prüforgan 472, ob ein anderes Suchfenster angewandt werden soll. Wenn ein anderes Suchfenster angewandt werden soll, kehrt das Verfahren zurück zum Schritt S102, in welchem die Abtasteinheit 4 das Suchfenster des aktuell skalierten Bilds um ein Pixel nach rechts verschiebt, und ein Bild ausschneidet, welches durch das verschobene Suchfenster definiert wird, wobei das Bild an die Klassifikationseinheit 5 ausgegeben wird. Dann führt die Klassifikationseinheit 5 den Schritt S103 durch, um zu bestimmen, welchem Kennsatz des menschlichen Gesichtsbilds das Fensterbild entspricht.
  • Wie oben beschrieben wird das Suchfenster sequentiell um ein Pixel nach rechts oder nach unten, wie in 7 gezeigt ist, verschoben, wobei bestimmt wird, welcher Kennsatz des menschlichen Gesichtsbilds das Bild im Suchfenster jeder Position entspricht. Wenn die Position des Suchfensters den Boden rechts vom skalierten Bild erreicht hat, wird im Schritt S104 bestimmt, dass ein anderes Suchfenster, welches anzuwenden ist, nicht existiert. Dann läuft das Verfahren weiter zum Schritt S105.
  • Im Schritt S105 bestimmt die Skalierungseinheit 3, ob ein weiteres skaliertes Bild abzutasten ist. Wenn ein weiteres skaliertes Bild abzutasten ist, erzeugt im Schritt S61 die Skalierungseinheit 3 ein skaliertes Bild mit einem weiteren Reduktionsverhältnis (d. h., reduziert weiter), wobei das skalierte Bild an die Abtasteinheit 4 ausgegeben wird. Dann wird der gleiche Prozess wie oben beschrieben für das skalierte Bild ausgeführt.
  • Der oben beschriebene Prozess wird ausgeführt, bis im Schritt S105 bestimmt wird, dass kein weiteres skaliertes Bild abzutasten ist. Das heißt, der oben beschriebene Prozess wird wiederholt, bis das skalierte Bild kleiner als ein Fensterbild wird.
  • Wie oben beschrieben wird das Suchfenster sequentiell um ein Pixel nach rechts oder nach unten verschoben. Wenn somit beispielsweise ein Bild in einem Suchfenster so bestimmt wird, dass dies einem menschlichen Gesicht entspricht, wird ein Bild in einem Fenster, welches um ein Pixel nach rechts oder nach unten verschoben wird, üblicherweise so bestimmt, ein menschliches Gesicht zu sein. Somit wird ein Bild des gleichen Gesichts ermittelt, dass dies einem menschlichen Gesicht in mehreren Fensterbildern entspricht. Wenn somit der Verarbeitung aller skalierten Bilder beendet wurde, wird ein Prozess zum Entfernen des Überlappens in den Suchfenstern ausgeführt.
  • Danach bestimmt im Schritt S106 das Prüforgan 472, ob zwei oder mehrere Bereiche von Objekten von Interesse einander überlappen. Wenn zwei oder mehrere Bereiche von Objekten von Interesse sich einander überlappen, führt im Schritt S107 das Auswahlorgan 473 einen Prozess durch, um die beiden sich überlappenden Bereiche zu extrahieren. Wenn beispielsweise bestimmt wird, dass ein Bild eines Suchfensters in einem Bereich eines Objekts von Interesse erlangt wird, wird üblicherweise bestimmt, dass ein Bild eines Suchfensters nach rechts um ein Pixel verschoben ist, das auch einem menschlichen Gesicht entspricht, so dass Bereiche dieser beiden Fenster extrahiert werden. Im Schritt S108 wählt das Auswahlorgan 473 einen Bereich mit einem größeren Auswertungswert s (wird später in Bezug auf Schritt S174, der in 37 gezeigt ist, beschrieben) von den beiden Bereichen aus, welche im Schritt S70 extrahiert wurden.
  • Das Verfahren kehrt dann zurück zum Schritt S106, und es werden die nachfolgenden Schritte wiederholt.
  • Wie oben beschrieben wird ein Bereich mit einem kleinen Schätzwert s nicht angesehen, als nicht verlässlich zu sein, und es wird ein Bereich des höchsten Auswertungswerts s ausgewählt. Das oben beschriebene Verfahren wird wiederholt, bis im Schritt S106 bestimmt wird, dass zwei oder mehrere Bereiche von Objekten von Interesse sich nicht einander überlappen. Wenn bestimmt wird, dass Bereiche von Objekten von Interesse sich nicht einander überlappen, wird das Verfahren für den Rahmen verlassen. Dann wird das Verfahren für einen nächsten Rahmen wenn notwendig durchgeführt.
  • Anschließend wird der Unterscheidungsprozess im Schritt S103, der in 35 gezeigt ist, mit Hilfe eines Flussdiagramms, welches in 36 gezeigt ist, beschrieben. Im Schritt S131 setzt der Initialisierer 471 Anfangswerte. Insbesondere setzt der Initialisierer 471 eine ID des obersten Knotens (Wurzelknoten) auf die Variable i, welche die ID eines zu verarbeitenden Knotens zeigt. In dem Fall des Beispiels, welches in 25 gezeigt ist, wird die ID 1000 des obersten Knotens 221-1 gesetzt. Außerdem initialisiert der Initialisierer 471 den Wert der Variablen branch_count[i], welche die Anzahl von abgeleiteten Knoten zeigt, welche durch einen in Frage stehenden Knoten besucht werden, auf 0 für alle Knoten. Außerdem initialisiert der Initialisierer 471 den Auswertungswert s, der durch Berechnen eines Werts einer gewichteten Majorität erlangt wird, gemäß der Gleichung (7) auf 0 für alle Knoten.
  • Danach berechnet im Schritt S132 der Auswertungswertrechner 477 einen Auswertungswert, wobei der Prozess berechnet wird. Obwohl der Prozess später mit Hilfe eines Flussdiagramms, welches in 37 gezeigt ist, beschrieben wird, wird ein Auswertungswert eines zu verarbeitenden Knotens berechnet.
  • Im Schritt S133 bestimmt das Prüforgan 472, ob ein Frage stehendes Fensterbild einem Gesicht entspricht, auf Basis des Auswertungswerts s, der im Schritt S132 berechnet wurde. Wenn der Auswertungswert s positiv ist (insbesondere, wenn der Auswertungswert s größer als ein Referenzwert (-HUGE_VAL) ist, der im Schritt S178 festgelegt wird, was später mit Hilfe von 37 beschrieben wird), wird bestimmt, dass das Bild einem Gesicht entspricht, wobei ansonsten bestimmt wird, dass das Bild nicht einem Gesicht entspricht.
  • Wenn bestimmt wird, dass das in Frage stehende Fensterbild nicht einem Gesicht entspricht, bringt im Schritt S138 das Rückbringorgan 474 den Knoten, der zu verarbeiten ist, zum Hauptknoten zurück. Insbesondere setzt das Rückbringorgan 474 die ID des Hauptknotens auf die Variable i. Da der Knoten, der aktuell verarbeitet wird, der oberste Knoten 221-1 ist, existiert davon kein Hauptknoten. Somit wird –1 auf die Variable i gesetzt, wie früher beschrieben wurde.
  • Im Schritt S139 bestimmt das Prüforgan 472, ob der Wert der Variablen i, der im Schritt S138 gesetzt wurde, größer ist als 0. In diesem Beispiel ist der Wert der Variablen i gleich –1, was nicht größer ist als 0. Somit bestimmt im Schritt S140 das Prüforgan 472, dass das in Frage stehende Fensterbild nicht einem Gesicht entspricht.
  • Das heißt, in diesem Beispiel wird bestimmt, dass das Fensterbild nicht einem Gesicht entspricht, lediglich durch die Verarbeitung des obersten Knotens 221-1.
  • Wenn im Schritt S133 bestimmt wird, dass das Fensterbild einem menschlichen Gesicht entspricht (der Auswertungswert s ist positiv), bestimmt im Schritt S134 das Prüforgan 472, ob der aktuell zu verarbeitende Knoten einen abgeleiteten Knoten hat. Der Knoten 221-1, der aktuell verarbeitet wird, hat drei abgeleitete Knoten 221-1-1, 221-1-2 und 221-1-3. Somit bestimmt im Schritt S135 das Prüforgan 472, ob die Variable branch_count[i] des Knotens 221-1 (auf 0 im Schritt S131 in diesem Beispiel initialisiert) kleiner ist als die Anzahl von abgeleiteten Knoten (size(numChild)) des Knotens 221-1. Da der Wert der Variablen branch_count[i] gleich 0 ist und die Anzahl von abgeleiteten Knoten 3 beträgt, wird bestimmt, dass der Wert der Variablen branch_count[i] kleiner ist als die Anzahl von abgeleiteten Knoten. Somit wählt im Schritt S136 das Auswahlorgan 473 einen Knoten, der anschließend zu verarbeiten ist, aus. Insbesondere wird der Wert der Variabeln branch_count[i] um 1 inkrementiert (der Wert wird zu 1). Dann wird eine ID des abgeleiteten Knotens entsprechend dem Wert der Variablen branch_count[i] auf die Variable i gesetzt. In dem Beispiel, welches in 25 gezeigt ist, wird beispielsweise die ID 1100 des Knotens 221-1-1, welche ein abgeleiteter Knoten des Knotens 221-1 ist, auf die Variable i gesetzt. Dann wird im Schritt S132 ein Prozess zum Berechnen eines Auswertungswerts des Knotens, der die ID hat, welche auf die Variable i gesetzt ist (des Knotens 221-1 in diesem Fall) ausgeführt. Das heißt, ein Auswertungswert s wird durch den Knoten 221-1-1 berechnet (es wird bestimmt, welchem Kennsatz des menschlichen Gesichtsbilds das Fensterbild entspricht).
  • Im Schritt S133 m bestimmt das Prüforgan 472, ob das Fensterbild einem Gesicht entspricht (ob der Auswertungswert s positiv ist). Wenn das Fensterbild einem Gesicht entspricht, bestimmt im Schritt S134 das Prüforgan 472, ob der Knoten 221-1-1, der aktuell verarbeitet wird, einen abgeleiteten Knoten hat. Da der Knoten 221-1-1 drei abgeleitete Knoten 221-1-1-1 bis 221-1-1-3 hat, bestimmt im Schritt S135 das Prüforgan 472, ob der Wert (= 1) der Variablen branch_count[i] des Knotens 221-1-1 kleiner ist als die Anzahl von dessen abgeleiteten Knoten. Da die Anzahl der abgeleiteten Knoten 3 ist, ist der Wert der Variablen branch_count[i] kleiner als die Anzahl. Somit vergleicht im Schritt S136 das Auswahlorgan 473 den Wert der Variablen branch_count[i] des Knotens 221-1-1 (auf 0 im Schritt S131 initialisiert) mit der Anzahl von abgeleiteten Knoten (3 in diesem Fall). Da der Wert der Variablen branch_count[i] kleiner ist als die Anzahl von abgeleiteten Knoten, inkrementiert im Schritt S136 das Auswahlorgan 473 den Wert der Variablen branch_count[i] des Knotens 221-1-1 um 1 (der Wert wird zu 1), und setzt dann die ID 1110 des Knotens 221-1-1-1, welche ein abgeleiteter Knoten des Knotens 221-1-1 ist, entsprechend der Variablen branch_count[i], die inkrementiert wurde, auf die Variable i. Dann berechnet der Auswertungswertrechner 477 einen Auswertungswert des Knotens 221-1-1-1, der der ID entspricht, welche auf die Variable i gesetzt wurde.
  • Im Schritt S133 bestimmt das Prüforgan 472, ob der Auswertungswert s des Knotens 221-1-1-1 zeigt, dass das Fensterbild einem Gesicht entspricht. Wenn das Fensterbild einem Gesicht entspricht, bestimmt im Schritt S134 der Knoten 221-1-1-1, ob ein abgeleiteter Knoten existiert. Da der Knoten 221-1-1-1 drei abgeleitete Knoten hat, wird im Schritt S135 bestimmt, ob der Wert der Variablen branch_count[i] des Knotens 221-1-1-1 kleiner ist als die Anzahl von dessen abgeleiteten Knoten. Da der Wert (= 0) der Variablen branch_count[i] kleiner ist als die Anzahl abgeleiteter Knoten (= 3), inkrementiert im Schritt S136 das Auswahlorgan 473 den Wert der Variablen branch_count[i] des Knotens 221-1-1-1-1 um 1 (der Wert wird zu 1). Dann wird eine ID eines abgeleiteten Knotens entsprechend der Variablen branch_count[i], die inkrementiert wurde, auf die Variable i gesetzt. Im in 25 gezeigten Beispiel wird die ID 1111 des Knotens 221-1-1-1-1, welcher ein abgeleiteter Knoten des Knotens 221-1-1-1 ist, auf die Variable i gesetzt. Im Schritt S132 berechnet der Auswertungswertrechner 477 einen Auswertungswert durch den Knoten 221-1-1-1-1.
  • Im Schritt S133 bestimmt das Prüforgan 472, ob der Wert s des Knotens 221-1-1-1-1 positiv ist (ob das Bild einem Gesicht entspricht). Wenn der Auswertungswert s positiv ist, wird im Schritt S134 bestimmt, ob der Knoten einen abgeleiteten Knoten hat. Der Knoten 221-1-1-1-1 ist ein Anschlussknoten und hat keinen abgeleiteten Knoten. Somit bestimmt in diesem Fall im Schritt S137 das Prüforgan 472, dass das Fensterbild einem Gesicht entspricht, mit dem Kennsatz 1 in Verbindung mit dem Knoten 221-1-1-1-1.
  • Wenn dagegen bestimmt wird, dass der Auswertungswert s negativ ist (das Bild entspricht nicht einem Bild), setzt im Schritt S138 das Rückbringorgan 474 die ID des Hauptknotens auf die Variable i. Insbesondere wird in diesem Beispiel die ID 1110 des Knotens 221-1-1-1-, der der Hauptknoten des Knotens 221-1-1-1-1 ist, auf die Variable i gesetzt.
  • Wenn im Schritt S139 bestimmt wird, dass die Variable i positiv ist, bestimmt im Schritt S135 das Prüforgan 472, ob die Variable branch_count[i] des Knotens 221-1-1-1 kleiner ist als die Anzahl von dessen abgeleiteten Knoten. In diesem Beispiel ist der Wert der Variablen branch_count[i] gleich 1, was kleiner ist als die Anzahl von abgeleiteten Knoten (3). Somit inkrementiert im Schritt S136 das Auswahlorgan 473 den Wert der Variablen branch_count[i] um 1 (der Wert wird zu 2). Außerdem wird eine ID eines abgeleiteten Knotens entsprechend der Variablen branch_count[i] auf die Variable i gesetzt. Insbesondere wird die ID 1112 des Knotens 221-1-1-1-2 auf die Variable i gesetzt. Im Schritt S132 berechnet der Auswertungswertrechner 477 einen Auswertungswert s des Knotens 221-1-1-1-2.
  • Im Schritt S133 bestimmt das Prüforgan 472, ob der Auswertungswert s des Knotens 221-1-1-1-2 ein Gesicht zeigt. Wenn ein Gesicht gezeigt wird, wird im Schritt S134 bestimmt, ob der Knoten 221-1-1-1-2 einen abgeleiteten Knoten hat. Da der Knoten 221-1-1-1-2 keinen abgeleiteten Knoten hat, bestimmt im Schritt S137 das Prüforgan 472, dass das Fensterbild einem Gesicht entspricht, mit dem Kennsatz 2, der mit dem Knoten 221-1-1-1-2 verknüpft ist.
  • Wenn dagegen im Schritt S133 bestimmt wird, dass der Auswertungswert s des Knotens 221-1-1-1-2 nicht positiv ist, setzt im Schritt S138 das Rückbringorgan 474 die ID 1110 des Hauptknotens des Knotens 221-1-1-1-2 auf die Variable i. Da das Prüforgan 472 bestimmt, dass die Variable i größer als 0 ist, läuft das Verfahren weiter vom Schritt S139 zum Schritt S135, in welchem bestimmt wird, ob der Wert (= 2) der Variablen branch_count[i] des Knotens 221-1-1-1, der eine ID 1110 hat, kleiner ist als die Anzahl von dessen abgeleiteten Knoten. Da die Variable branch_count[i] kleiner ist als die Anzahl von abgeleiteten Knoten in diesem Fall, inkrementiert im Schritt S136 das Auswahlorgan 473 den Wert der Variablen branch_count[i] des Knotens 221-1-1-1 um 1 (der Wert wird zu 3). Dann wird eine ID eines abgeleiteten Knotens entsprechend dem Wert 3 der Variablen branch_count[i] auf die Variable i gesetzt. In diesem Beispiel wird die ID 1113 des Knotens 221-1-1-1-3, welcher ein abgeleiteter Knoten des Knotens 221-1-1-1 ist, auf die Variable i gesetzt. Im Schritt S132 wird ein Auswertungswert s des Knotens 221-1-1-1-3, der die ID 1113 hat, berechnet.
  • Wie oben beschrieben wird, wenn bestimmt wird, dass ein Fensterbild einem Gesicht entspricht, in jedem Knoten die Klassifikation sequentiell durch die unteren Knoten durchgeführt. Wenn durch einen unteren Knoten (abgeleiteten Knoten) bestimmt wird, dass ein Fensterbild nicht einem menschlichen Gesicht entspricht, wird ein Unterscheidungsprozess bei den Schwesterknoten ausgeführt.
  • Wie oben beschrieben sind bei dieser Ausführungsform die Knoten (Schwachklassifizierer) in einer Baumstruktur angeordnet, so dass die durchschnittliche Berechnungsmenge, die benötigt wird, um Ergebnisse der Klassifikation zu erlangen, reduziert werden kann. Insbesondere ist bei dem in 25 gezeigten Beispiel die maximale Anzahl von Ebenen 4. Da die Anzahl von Schwachklassifizierern in jedem Knoten abgesehen von den Endknoten 100 beträgt, beträgt beispielsweise die minimale Anzahl von Schwachklassifizierern, die benötigt wird, Klassifikationsergebnisse des Kennsatzes 15 zu erlangen, (100 × 3 + L15). Unter der Annahme, dass Schwachklassifizierer aller möglichen Pixelpaare zur Klassifikation verwendet werden, ist der Wert (300 + L15) gleich K. Wenn somit die Kennsätze 1 bis 15 durch die in 21 gezeigte Anordnung klassifiziert werden, werden Unterscheidungsprozesse für K×15 Schwachklassifizierer benötigt, um die Kennsätze 1 bis 15 sequentiell zu unterscheiden. In diesem Fall beträgt die Verarbeitungszeit das 15-fache der Zeit, welche zur Berechnung der K-Schwachklassifizierer benötigt wird. Durch Ausführen der Berechnung in Bezug auf die Kennsätze 1 bis 15 parallel kann die Verarbeitungszeit auf die Berechnungszeit von K Schwachklassifizierer reduziert werden, wobei sich die Berechnungsmenge jedoch nicht ändert.
  • In dem in 25 gezeigten Beispiel sind idealerweise, wenn die Berechnung in der Reihenfolge des Knotens 221-1, des Knotens 221-1-3, des Knotens 221-1-3-3 und des Knotens 221-1-3-3-1 durchgeführt wird, die Berechnungsmenge und die Berechnungszeit diejenigen von K Schwachklassifizierern. Sogar, wenn die Klassifikationsprozesse unterer Knoten des Knotens 221-1-1 und unterer Knoten des Knotens 221-1-2 nach Berechnung durch den Knoten 221-1 durchgeführt werden, ist die Wahrscheinlichkeit, dass der Prozess einen Anschlussknoten erreicht, niedrig, da in der Mitte bestimmt werden könnte, dass das Bild nicht einem Gesicht entspricht oder das Bild einem anderen Kennsatz entspricht. Sogar, wenn der Prozess einen Anschlussknoten erreicht, ist die Anzahl von Schwachklassifizierern niedriger als die in dem Fall, der in 21 gezeigt ist.
  • Durch Anwenden der Baumstruktur, welche in 25 gezeigt ist, ist es somit möglich, die Berechnungsmenge und die Verarbeitungszeit im Vergleich zu dem Fall zu reduzieren, der in 21 gezeigt ist.
  • Sogar, wenn die in 25 gezeigte Baumstruktur verwendet wird, ist durch parallele Verarbeitung von Knoten jeder Ebene die Verarbeitungszeit gleich oder reduziert im Vergleich zu dem Fall, wo paralleles Verarbeiten in dem Fall, der in 21 gezeigt ist, angewandt wird. Die Berechnungsmenge wird im Vergleich zu dem Fall, der in 21 gezeigt ist, reduziert.
  • Anschließend wird der Auswertungswert-Berechnungsprozess im Schritt S132, der in 36 gezeigt ist, mit Hilfe eines Flussdiagramms, welches in 37 gezeigt ist, beschrieben.
  • Im Schritt S171 leitet das Weiterleitorgan 475 Ausgangssignale eines Hauptknotens weiter. Insbesondere wird ein Auswertungswert, der durch einen Wert gewichteter Majorität dargestellt wird, berechnet durch den Hauptknoten, zunächst auf einen Auswertungswert s(i) des aktuellen Knotens gesetzt. Wenn kein Hauptknoten existiert, d. h., im Fall des obersten Knotens, wird der Auswertungswert s(i) auf 0 initialisiert.
  • Im Schritt S172 initialisiert der Schwach-Hypothesenrechner 476 eine Variable t, welche die Anzahl (Ordnung) von verarbeiteten Schwachklassifizierern zeigt, auf 1. Dann berechnet im Schritt S173 der Schwach-Hypothesenrechner 476 eine Schwach-Hypothese f(x) durch einen Schwachklassifizierer, der durch die Variable t gezeigt wird, gemäß der früher angegebenen Gleichung (13). Der Schwachklassifizierer entspricht einem Interpixel-Differenzmerkmal d, welches durch ein Paar von Pixeln I1 und I2 definiert ist, wie früher beschrieben, und es wird ein Schwellenwert Th dafür vorher durch den früher beschriebenen Lernprozess gewählt.
  • Im Schritt S174 aktualisiert der Auswertungswertrechner 477 gemäß der Gleichung (15) den Auswertungswert s, indem eine Schwach-Hypothese (Schätzwert) des aktuellen Schwachklassifizierers mit dem Vertrauen (Majoritätswert) αt multipliziert wird und der vorherige Auswertungswert s addiert wird. Das heißt, der Auswertungswertrechner 477 berechnet den Wert F(x) der Wichtungsmajorität, indem das Klassifikationsergebnis des Schwachklassifizierers, welches gemäß der Gleichung (13) berechnet wurde, durch die Majoritätswichtung αt entsprechend der Gleichung (9) gewichtet wird, wodurch der Auswertungswert s aktualisiert wird. s(i) = s(i) + α·f(x) (15)
  • Ein Schwachklassifizierer, der einen binären Schätzwert gemäß den Gleichungen (3) und (5) ausgibt, und ein Schwachklassifizierer, der einen Schätzwert gemäß der Funktion f(x) ausgibt, welche in der Gleichung (6) zum Ausdruck kommen, reflektieren ihre Schätzwerte in Bezug auf den Auswertungswert s in unterschiedlicher Weise.
  • Wenn die Gleichung (2) für einen Klassifizierer verwendet wird, um einen binären Schätzwert auszugeben, kann der Auswertungswert s durch die Gleichung (16) unten ausgedrückt werden
    Figure 00640001
  • Das heißt, dass der Wert des Ergebnisses ft(x) der Klassifikation durch den Schwachklassifizierer +1 beträgt, wenn der Wert des Interpixel-Differenzmerkmals d größer ist als der Schwellenwert Tht und ansonsten –1 ist. Somit ist der Wert, der durch Multiplizieren des Schätzwerts ft(x) durch die Wichtung αt erlang wird, αt, wenn der Wert des Interpixel-Differenzmerkmals d größer ist als der Schwellenwert und ansonsten –αt ist. Diese Werte werden zu dem vorherigen Auswertungswert s gemäß der Gleichung (7) addiert, um den Auswertungswert s zu aktualisieren, der der Wert F(x) der Wichtungsmajorität ist, gemäß der Gleichung (7).
  • Wenn die Gleichung (3) für einen Schwachklassifizierer verwendet wird, um einen binären Schätzwert auszugeben, kann der Auswertungswert s durch die Gleichung (17) unten ausgedrückt werden:
    Figure 00640002
  • Wenn die Gleichung (4) für einen Schwachklassifizierer verwendet wird, um einen binären Schätzwert auszugeben, kann der Schätzwert s durch die Gleichung (18) unten ausgedrückt werden:
    Figure 00640003
  • Wenn die Gleichung (5) für einen Schwachklassifizierer verwendet wird, um einen Schätzwert gemäß der Funktion f auszugeben, kann der Schätzwert s durch die Gleichung (19) unten ausgedrückt werden: s ← s + f(d) (19)
  • Im Schritt S175 bestimmt danach das Prüforgan 472, ob der Auswertungswert s(i) größer ist als der Anschlussbestimmungswert RM(t). Das heißt, das Prüforgan 472 bestimmt, ob der Wert s(i), der im Schritt S174 aktualisiert wurde, größer ist als der Anschlussschwellenwert RM(t) des t-ten Schwachklassifizierers, der während des Lernens erlernt wurde. Wenn der Auswertungswert s(i) größer ist als der Anschlussschwellenwert RM(t), inkrementiert im Schritt S176 das Prüforgan 472 die Variable t um 1. Danach bestimmt im Schritt S177 das Prüforgan 472, ob die Variable t, welche im Schritt S176 inkrementiert wurde, größer ist als eine vorher festgelegte Konstante T. Die Konstante T bezeichnet die Anzahl von Schwachklassifizierern, welche im Knoten enthalten sind. Bei dieser Ausführungsform ist der Wert T gleich 100, wenn der Knoten kein Anschlussknoten ist, und der Wert T wird für jeden Knoten gewählt, wenn der Knoten ein Anschlussknoten ist. Wenn die Variable t kleiner als oder gleich wie die Konstante t ist, wird angezeigt, dass Klassifikation durch alle Schwachklassifizierer nicht beendet wurde, so dass der Prozess zum Schritt S173 zurückkehrt. Danach berechnet im Schritt S173 der Schwach-Hypothesenrechner 476 eine Schwach-Hypothese eins nächsten Schwachklassifizierers entsprechend der inkrementierten Variablen t. Ähnliche Prozesse werden sequentiell ausgeführt.
  • Wenn im Schritt S177 bestimmt wird, dass die Variable t größer ist als die Konstante T, gibt im Schritt S179 die Ausgabeeinheit 479 den Auswertungswert s(i), der im Schritt S174 aktualisiert wurde, als einen Auswertungswert (Klassifikationsergebnis) des Knotens aus.
  • Wenn dagegen im Schritt S175 bestimmt wird, dass der Auswertungswert s (i) kleiner ist oder gleich dem Anschlussschwellenwert RM(t), setzt im Schritt S178 das Setzorgan 478 einen negativen riesigen Wert (-HUGE_VAL) auf den Auswertungswert s(i). Danach gibt im Schritt S179 die Ausgabeeinheit 479 den negativen riesigen Wert des Auswertungswerts s(i), der im Schritt S178 gesetzt wurde, als Klassifikationsergebnis des Knotens aus.
  • Das heißt, in diesem Fall, da der Auswertungswert s(i) kleiner ist als der Anschlussschwellenwert RM(t), wird bestimmt, dass das Fensterbild nicht einem menschlichen Gesicht entspricht, mit irgendwelchem der Kennsätze 1 bis 15, so dass der nachfolgende Unterscheidungsprozess nicht ausgeführt wird. Dies lässt sogar eine schnellere Unterscheidung zu.
  • Danach kehrt der Prozess zurück zum Schritt S132, der in 36 gezeigt ist. Im Schritt S133 wird bestimmt, ob das Fensterbild bestimmt wird, welches einem Gesicht beim Knoten entspricht. Wie oben beschrieben wird, wenn der Auswertungswert s so gewählt wird, um der Referenzwert zu sein, im Schritt S178 bestimmt, dass das Fensterbild nicht einem menschlichen Gesicht entspricht. Wenn dagegen der Auswertungswert s größer ist als der Referenzwert, wird bestimmt, dass das Fensterbild einem menschlichen Gesicht entspricht.
  • Wie oben beschrieben wird durch das Verfahren zum Ermitteln eines Objekts von Interesse gemäß dieser Ausführungsform ein Objekt von Interesse unter Verwendung einer Klassifikationseinheit ermittelt, welches durch Schwachklassifizierer aufgebaut ist, welche Schwachklassifikationen durchführen, auf Basis von Interpixel-Differenzmerkmalen, welche durch Eindruckserlernen erlernt werden. Somit wird einfach durch Lesen von Luminanzwerten von zwei Pixeln in einem Fensterbild und durch Berechnen der Differenz dazwischen der Schritt zum Berechnen eines Merkmals eines Objekts von Interesse im Schritt S173 beendet. Damit kann eine Gesichtsermittlung sehr schnell durchgeführt werden, wodurch eine Gesichtsermittlung in Realzeit ermöglicht wird.
  • Außerdem wird, jedes Mal, wenn der Auswertungswert s aktualisiert wird, durch Aufaddieren eines Werts, der durch Multiplizieren eines Klassifikationsergebnisses (Schätzwert) eines Merkmals mit einem Vertrauen für einen Schwachklassifizierer multipliziert wird, der zur Klassifikation verwendet wird, der Auswertungswert s mit den Anschlussschwellenwert RM(t) verglichen, um zu bestimmen, ob die Berechnung des Schätzwerts durch Schwachklassifizierer fortgesetzt wird. Die Berechnung durch Schwachklassifizierer wird beendet, wenn der Auswertungswert s kleiner wird als der Anschlussschwellenwert RM(t) und der Prozess sich zu einem nächsten Fensterbild verschiebt. Dies reduziert beträchtlich nutzlose Berechnung, wodurch eine schnellere Gesichtsermittlung ermöglicht wird.
  • Das heißt, wenn alle Bereiche des zugeführten Bilds und Bilder reduzierter Skalen gescannt werden, um Fensterbilder auszuschneiden, ist die Wahrscheinlichkeit, dass ein Fensterbild einem Objekt von Interesse entspricht, klein, und die meisten der Fensterbilder entsprechen nicht Objekten, die von Interesse sind. Durch die Beendigung der Klassifikation von Fensterbildern, welche nicht Objekten von Interesse entsprechen, wird die Effektivität der Klassifikation beträchtlich verbessert. Wenn dagegen eine große Anzahl von Objekten von Interesse, welche zu ermitteln sind, enthalten ist, kann ähnlich dem Verfahren zum Beendigungen auf Basis des Beendigungsschwellenwerts ein Schwellenwert zum Beendigung der Berechnung von Fensterbildern, die bestimmt werden, klar Objekten von Interesse zu entsprechen, bereitgestellt werden. Außerdem ist es durch Skalieren eines zugeführten Bilds durch eine Skaliereinheit möglich, ein Suchfenster einer beliebigen Größe festzulegen, wo durch die Ermittlung eines Objekts von Interesse einer beliebigen Größe zugelassen wird.
  • Die vorliegende Erfindung kann bei Informationsverarbeitungsvorrichtungen angewandt werden, welche verschiedene Bildverarbeitungsvorrichtung umfassen, um Bewegtbilder wie auch Standbilder, beispielsweise Roboter zu empfangen und anzuzeigen.
  • Die Reihe von Prozessen, die oben beschrieben wurden, kann entweder durch Hardware oder durch Software ausgeführt werden. Beispielsweise kann eine Objektermittlungsvorrichtung durch einen Personalcomputer, der in 38 gezeigt ist, realisiert werden.
  • Gemäß 38 führt eine Zentralverarbeitungseinheit (CPU) 621 verschiedene Prozesse gemäß Programmen durch, welche in einem Nur-Lese-Speicher (ROM) 622 gespeichert sind, oder Programme, welche von einer Speichereinheit 628 in einen Speicher mit wahlfreiem Zugriff (RAM) 623 geladen werden. Der RAM 623 speichert außerdem Daten, welche für die CPU 621 benötigt werden, und verschiedene Prozesse auszuführen.
  • Die CPU 621, der ROM 622 und der RAM 623 sind über einen Bus 624 miteinander verbunden. Der Bus 624 ist außerdem mit einer Eingangs/Ausgangsschnittstelle 625 verbunden.
  • Die Eingangs-/Ausgangsschnittstelle 625 ist mit einer Eingabeeinheit 626 verbunden, beispielsweise einer Tastatur und einer Maus, einer Anzeigeeinrichtung, beispielsweise einer Kathodenstrahlröhren-Anzeige (CRT) oder einer Flüssigkristallanzeige (LCD), einer Ausgabeeinheit 627, beispielsweise einem Lautsprecher, der Speichereinheit 628, beispielsweise einer Festplatte, und einer Kommunikationseinheit 629, beispielsweise einem Modem. Die Kommunikationseinheit 629 führt Kommunikationen über Netzwerke einschließlich des Internets aus.
  • Die Eingabe-/Ausgabeschnittstelle 625 ist außerdem mit einer Ansteuerung 630 wenn notwendig verbunden. Auf der Ansteuerung 630 ist ein bewegbares Medium 631, beispielsweise eine Magnetplatte, eine optische Platte, eine magneto-optische Platte oder ein Halbleiterspeicher wenn notwendig befestigt, und die Computerprogramme, die davon gelesen werden, werden auf der Speichereinheit 628 wenn notwendig installiert.
  • Wenn die Reihe an Prozessen durch Software ausgeführt wird, werden Programme, welche die Software bilden, auf einem Computer installiert, der in Spezial-Hardware eingebettet ist, oder von einem Aufzeichnungsmedium oder über ein Netzwerk auf einen Allgemeinzweck-Personalcomputer oder dgl. installiert, der das Ausführen verschiedener Funktionen zulässt, wobei verschiedene Programme darauf installiert sind.
  • Die Programme können auf einem Aufzeichnungsmedium aufgezeichnet sein, welches separat vom Computer vertrieben wird, um Programme einem Benutzer bereitzustellen, beispielsweise auf dem bewegbaren Medium 631, beispielsweise einer Magnetplatte (beispielsweise eine Diskette), einer optischen Platte (beispielsweise eine Compact Disc-Nur-Lese-Speicher (CD-ROM) oder einer digitalen universellverwendbaren Platte (DVD)), einer magneto-optischen Platte (beispielsweise eine Mini Disc (MD)) oder einem Halbleiterspeicher, wie in 38 gezeigt ist. Alternativ kann das Aufzeichnungsmedium, welches die Programme trägt, der ROM 622 oder eine Festplatte sein, welche in der Speichereinheit 628 enthalten sind, welche für den Benutzer bereitgestellt werden, wenn diese im Computer ist.
  • Die Schritte, die gemäß Programmen ausgeführt werden, welche auf dem Aufzeichnungsmedium aufgezeichnet sind, müssen nicht notwendigerweise sequentiell in der Reihenfolge, die hier beschrieben wurde, ausgeführt werden, und können Schritte aufweisen, welche parallel oder individuell ausgeführt werden.
  • In dieser Anmeldung bezieht sich ein System auf oder kann sich auf die Gesamtheit mehrerer Vorrichtungen beziehen.
  • Insoweit die Ausführungsformen der Erfindung, die oben beschrieben wurden, realisiert werden, wird man zumindest teilweise unter Verwendung von einer software-gesteuerten Datenverarbeitungsvorrichtung es als nützlich ansehen, dass ein Computerprogramm, welches diese Softwaresteuerung bereitstellt, und eine Übertragung oder Speicherung oder weiteres Medium, durch welches ein derartiges Computerprogramm bereitgestellt wird, als Merkmale der vorliegenden Erfindung betrachtet werden.

Claims (8)

  1. Bildverarbeitungsvorrichtung, welche aufweist: eine Gesamteindrucks-Lerneinheit (6) zum Lernen der Klassifikation von Klassifikation lernenden Bildproben, wobei die Gesamteindrucks-Lerneinheit betriebsfähig ist, einen gewichteten Majoritätswert der Klassifikationsergebnisse von Schwach-Klassifizierern zu berechnen, wobei der gewichtete Majoritätswert für die Klassifikation der Klassifikation lernenden Bildproben bezeichnend ist; mehrere Knoten, die in einer Baumstruktur hierarchisch angeordnet sind, die am obersten Knoten unter den Knoten beginnen; obere Knoten unter den Knoten, wobei jeder obere Knoten mit mehreren unteren Knoten verbunden ist, die entfernter vom obersten Knoten als der obere Knoten über entsprechende untere Zweige angeordnet sind und mehrere Schwachklassifizierer aufweisen, welcher Klassifikation lernende Bildproben mit einem ersten Kennsatz eines ersten Winkelbereichs unter den Lernproben, welche mit mehreren Etiketten klassifiziert sind, lernt einen ersten unteren Knoten unter den unteren Knoten, die mehrere der Schwachklassifizierer, der Klassifikation lernende Bildproben lernt, mit einem zweiten Kennsatz eines zweiten Winkelbereichs auf Basis von Ergebnissen der Klassifikation durch die oberen Knoten aufweisen, wobei der zweite Winkelbereich Teil des ersten Winkelbereichs ist; und einen zweiten unteren Knoten unter den unteren Knoten, der gegenüber dem ersten unteren Knoten verschieden ist, welcher mehrere der Schwachklassifizierer aufweist, welcher Klassifikation lernende Bildproben mit einem dritten Kennsatz eines dritten Winkelbereichs auf Basis der Ergebnisse der Klassifikation durch die oberen Knoten lernt, wobei der dritte Winkelbereich Teil eines ersten Winkelbereichs ist und gegenüber dem zweiten Winkelbereich verschieden ist; wobei die Vorrichtung durch eine Vererbungseinrichtung (332) für die unteren Knoten gekennzeichnet ist, um die Datenwichtungen, welche für die jeweiligen oberen Knoten berechnet wurden, zu vererben, so dass die vererbten Datenwichtungsergebnisse als Basis zum Lernen der Klassifikation von Klassifikation lernenden Bildproben der entsprechenden unteren Knoten verwendet werden.
  2. Informationsverarbeitungsvorrichtung nach Anspruch 1, welche Anschlussknoten aufweist, welche den Anschluss eines Zweigs der Baumstruktur zeigen, wobei die Gesamteindruckslerneinheit betriebsfähig ist, das Lernen der Klassifikation der die Klassifikation lernenden Bildproben vom obersten Knoten zu einem der Anschlussknoten sequentiell durchzuführen, und, wenn der Lernprozess diesen Anschlussknoten erreicht, der Lernprozess für andere verschiedene Sequenzen von Knoten vom obersten Knoten zu verschiedenen Anschlussknoten durchgeführt wird.
  3. Informationsverarbeitungsvorrichtung nach Anspruch 1, welche Anschlussknoten aufweist, welche den Anschluss eines Zweigs der Baumstruktur zeigen, wobei die oberen Knoten jeweils eine vorher festgelegte Anzahl von Schwachklassifizierern haben und jeder Anschlussknoten eine Anzahl von Schwachklassifizierern hat, die kleiner oder gleich ist als die vorher festgelegte Anzahl.
  4. Informationsverarbeitungsvorrichtung nach Anspruch 1, wobei jeder von den oberen Knoten und von ersten und zweiten unteren Knoten aufweist: eine Auswahleinrichtung zum Auswählen eines Schwachklassifizierers unter Verwendung der Datenwichtungen bei jeder Lernwiederholung; eine Kumulativ-Summenberechnungseinrichtung zum Berechnen kumulativer Summen durch Wichten von Klassifikationsergebnissen der entsprechenden lernenden Bildproben durch Schwachklassifizierer, die ausgewählt wurden, wobei die Wichtung auf Vertrauen in Verbindung mit den entsprechenden Schwachklassifizierern basiert; eine Referenzwert-Berechnungseinrichtung zum Berechnen auf Basis der kumulativen Summen eines Referenzwerts, der verwendet wird, wenn eine Unterscheidung unter Verwendung der erlernten Schwachklassifizierer durchgeführt wird; eine Wichtungsberechnungseinrichtung zum Berechnen von Datenwichtungen auf Basis der lernenden Bildproben; und eine Reflexionseinrichtung zum Sichern der Datenwichtungen, welche durch die Wichtungsberechnungseinrichtung berechnet wurden, und zum Reflektieren der Datenwichtungen auf die Auswahl eines Schwachklassifizierers durch die Auswahleinrichtung bei einer nächsten Lernwiederholung.
  5. Informationsverarbeitungsvorrichtung nach Anspruch 1, wobei die Schwachklassifizierer Klassifikationsergebnisse auf Basis einer Differenz zwischen einem Schwellenwert und einer Differenz zwischen Werten von zwei Pixeln in Bilddaten der lernenden Bildproben berechnen.
  6. Informationsverarbeitungsvorrichtung nach Anspruch 1, wobei die Vererbungseinrichtung betriebsfähig ist, den gewichteten Majoritätswert, der für die entsprechenden oberen Knoten berechnet wurde, zu vererben.
  7. Informationsverarbeitungsverfahren zum Ausführen bei einer Bildverarbeitungsvorrichtung, welche eine Gesamteindrucks-Lerneinheit (6) hat, um die Klassifikation von Klassifikation lernenden Bildproben zu lernen, wobei die Gesamteindruckslerneinheit betriebsfähig ist, einen gewichteten Majoritätswert der Klassifikationsergebnisse von Schwachklassifizierern zu berechnen, wobei der gewichtete Majoritätswert für die Klassifikation der die Klassifikation lernenden Bildproben bezeichnend ist, wobei die Vorrichtung aufweist: mehrere Knoten, welche in einer Baumstruktur hierarchisch angeordnet sind, die am obersten Knoten unter den Knoten beginnt; obere Knoten unter den Knoten, wobei jeder obere Knoten mit mehreren unteren Knoten entfernter vom obersten Knoten als der obere Knoten über entsprechende untere Zweige verbunden ist und mehrere Schwachklassifizierer aufweist; einen ersten unteren Knoten unter den unteren Knoten einschließlich mehrerer der Schwachklassifizierer; und einen zweiten unteren Knoten unter den unteren Knoten, welcher gegenüber dem ersten unteren Knoten verschieden ist, einschließlich mehrerer der Schwachklassifizierer, wobei das Verfahren folgende Schritte aufweist: Verwenden der oberen Knoten, um Klassifikation lernende Bildproben mit einem ersten Kennsatz eines ersten Winkelbereichs unter den lernenden Bildproben, welche mit den mehreren Kennsätzen klassifiziert sind, zu lernen (s12); Verwenden der ersten unteren Knoten, um Klassifikation lernende Bildproben mit einem zweiten Kennsatz eines zweiten Winkelbereichs auf Basis von Ergebnissen der Klassifikation durch die oberen Knoten zu lernen (s12), wobei der zweite Bereich Teil des ersten Winkelbereichs ist; und Verwenden der zweiten unteren Knoten, um Klassifikation lernende Bildproben mit einem dritten Kennsatz eines dritten Winkelbereichs auf Basis der Klassifikationsergebnisse durch die oberen Knoten zu lernen (s12), wobei der dritte Bereich Teil des ersten Winkelbereichs ist und gegenüber dem zweiten Winkelbereich verschieden ist; wobei das Verfahren durch den Schritt gekennzeichnet ist, für jeden der unteren Knoten die Datenwichtungen, welche für die entsprechenden oberen Knoten berechnet wurden, zu vererben (s42), und die vererbten Datenwichtungen als Basis zum Lernen der Klassifikation von Klassifikation lernenden Bildproben der entsprechenden unteren Knoten zu verwenden.
  8. Aufzeichnungsmedium, auf welchem ein computer-lesbares Programm aufgezeichnet ist, welches es einem Computer erlaubt, das Verfahren nach Anspruch 7 auszuführen.
DE602005006341T 2004-03-29 2005-03-04 Vorrichtung, Methode, Aufzeichnungsmedium und Programm zur Informationsverarbeitung Active DE602005006341T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004094792A JP5025893B2 (ja) 2004-03-29 2004-03-29 情報処理装置および方法、記録媒体、並びにプログラム
JP2004094792 2004-03-29

Publications (2)

Publication Number Publication Date
DE602005006341D1 DE602005006341D1 (de) 2008-06-12
DE602005006341T2 true DE602005006341T2 (de) 2008-08-07

Family

ID=34940542

Family Applications (3)

Application Number Title Priority Date Filing Date
DE602005009169T Active DE602005009169D1 (de) 2004-03-29 2005-03-04 Vorrichtung und Verfahren zur Informationsverarbeitung, Aufzeichnungsmedium und Programm
DE602005014573T Active DE602005014573D1 (de) 2004-03-29 2005-03-04 Vorrichtung und Verfahren zur Informationsverarbeitung, Aufzeichnungsmedium und Programm
DE602005006341T Active DE602005006341T2 (de) 2004-03-29 2005-03-04 Vorrichtung, Methode, Aufzeichnungsmedium und Programm zur Informationsverarbeitung

Family Applications Before (2)

Application Number Title Priority Date Filing Date
DE602005009169T Active DE602005009169D1 (de) 2004-03-29 2005-03-04 Vorrichtung und Verfahren zur Informationsverarbeitung, Aufzeichnungsmedium und Programm
DE602005014573T Active DE602005014573D1 (de) 2004-03-29 2005-03-04 Vorrichtung und Verfahren zur Informationsverarbeitung, Aufzeichnungsmedium und Programm

Country Status (4)

Country Link
US (2) US7630525B2 (de)
EP (3) EP1587024B1 (de)
JP (1) JP5025893B2 (de)
DE (3) DE602005009169D1 (de)

Families Citing this family (62)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7769228B2 (en) * 2004-05-10 2010-08-03 Siemens Corporation Method for combining boosted classifiers for efficient multi-class object detection
KR100643303B1 (ko) * 2004-12-07 2006-11-10 삼성전자주식회사 다면 얼굴을 검출하는 방법 및 장치
JP4767595B2 (ja) * 2005-06-15 2011-09-07 パナソニック株式会社 対象物検出装置及びその学習装置
EP1772816A1 (de) * 2005-10-09 2007-04-11 Omron Corporation Gerät und Verfahren zur Entdeckung einer Person
CN100472556C (zh) * 2005-10-09 2009-03-25 欧姆龙株式会社 特定被摄体检测装置及方法
US7894677B2 (en) * 2006-02-09 2011-02-22 Microsoft Corporation Reducing human overhead in text categorization
DE102006012477A1 (de) * 2006-03-16 2007-09-20 Robert Bosch Gmbh Bewertungsvorrichtung, Verfahren und Computerprogramm
DE102006012475A1 (de) * 2006-03-16 2007-09-20 Robert Bosch Gmbh Vorrichtung, Verfahren und Computerprogramm zur Bewertung von Testobjekten
JP4556891B2 (ja) * 2006-03-17 2010-10-06 ソニー株式会社 情報処理装置および方法、記録媒体、並びにプログラム
EP2023288A4 (de) 2006-05-10 2010-11-10 Nikon Corp Objekterkennungseinrichtung, objekerkennungsprogramm und bildsuchdienstbereitstellungsverfahren
JP4725408B2 (ja) * 2006-05-10 2011-07-13 株式会社ニコン 被写体認識装置および被写体認識プログラム
JP4757116B2 (ja) * 2006-06-30 2011-08-24 キヤノン株式会社 パラメータ学習方法及びその装置、パターン識別方法及びその装置、プログラム
JP4933186B2 (ja) 2006-07-26 2012-05-16 キヤノン株式会社 画像処理装置、画像処理方法、プログラム及び記憶媒体
JP4225339B2 (ja) 2006-09-11 2009-02-18 ソニー株式会社 画像データ処理装置および方法、プログラム、並びに記録媒体
JP4228320B2 (ja) 2006-09-11 2009-02-25 ソニー株式会社 画像処理装置および方法、並びにプログラム
US7729533B2 (en) * 2006-09-12 2010-06-01 Boston Scientific Scimed, Inc. Systems and methods for producing classifiers with individuality
US7844085B2 (en) * 2007-06-07 2010-11-30 Seiko Epson Corporation Pairwise feature learning with boosting for use in face detection
JP2009064162A (ja) * 2007-09-05 2009-03-26 Fuji Heavy Ind Ltd 画像認識システム
JP4891197B2 (ja) 2007-11-01 2012-03-07 キヤノン株式会社 画像処理装置および画像処理方法
JP4948379B2 (ja) 2007-12-18 2012-06-06 キヤノン株式会社 パターン識別器生成方法、情報処理装置、プログラム及び記憶媒体
JP5208540B2 (ja) * 2008-02-27 2013-06-12 株式会社Pfu 画像ファイル振分方法、画像ファイル振分装置、および、プログラム
JP4655235B2 (ja) 2008-03-14 2011-03-23 ソニー株式会社 情報処理装置および方法、並びにプログラム
JP4513898B2 (ja) * 2008-06-09 2010-07-28 株式会社デンソー 画像識別装置
JP2010092199A (ja) 2008-10-07 2010-04-22 Sony Corp 情報処理装置および方法、プログラム、並びに記録媒体
JP2010122879A (ja) 2008-11-19 2010-06-03 Sony Ericsson Mobile Communications Ab 端末装置、表示制御方法および表示制御プログラム
JP5087532B2 (ja) 2008-12-05 2012-12-05 ソニーモバイルコミュニケーションズ株式会社 端末装置、表示制御方法および表示制御プログラム
JP5235691B2 (ja) 2009-01-13 2013-07-10 キヤノン株式会社 情報処理装置及び情報処理方法
JP2010176170A (ja) 2009-01-27 2010-08-12 Sony Ericsson Mobilecommunications Japan Inc 表示装置、表示制御方法および表示制御プログラム
KR101033098B1 (ko) * 2009-02-09 2011-05-06 성균관대학교산학협력단 실시간 얼굴 검출 장치
US8175376B2 (en) * 2009-03-09 2012-05-08 Xerox Corporation Framework for image thumbnailing based on visual similarity
JP5538967B2 (ja) * 2009-06-18 2014-07-02 キヤノン株式会社 情報処理装置、情報処理方法、プログラム
JP2011053915A (ja) * 2009-09-02 2011-03-17 Sony Corp 画像処理装置、画像処理方法、プログラム及び電子機器
JP5523053B2 (ja) * 2009-10-19 2014-06-18 キヤノン株式会社 物体識別装置及び物体識別方法
KR101268520B1 (ko) * 2009-12-14 2013-06-04 한국전자통신연구원 영상 인식 장치 및 방법
JP5434569B2 (ja) * 2009-12-22 2014-03-05 ソニー株式会社 情報処理装置および方法、並びにプログラム
US8964103B2 (en) * 2010-02-16 2015-02-24 Blackberry Limited Method and apparatus for reducing continuous autofocus power consumption
JP5394959B2 (ja) * 2010-03-23 2014-01-22 富士フイルム株式会社 判別器生成装置および方法並びにプログラム
EP2385484A1 (de) * 2010-05-06 2011-11-09 STMicroelectronics (Grenoble 2) SAS Objektdetektion in einem Bild
WO2012075221A1 (en) * 2010-12-01 2012-06-07 Data Engines Corporation Method for inferring attributes of a data set and recognizers used thereon
US8565482B2 (en) * 2011-02-28 2013-10-22 Seiko Epson Corporation Local difference pattern based local background modeling for object detection
CN102136075B (zh) * 2011-03-04 2013-05-15 杭州海康威视数字技术股份有限公司 复杂场景下的多视角人脸检测方法及其装置
US8687893B2 (en) * 2011-03-31 2014-04-01 Microsoft Corporation Classification algorithm optimization
US8774515B2 (en) * 2011-04-20 2014-07-08 Xerox Corporation Learning structured prediction models for interactive image labeling
JP2012243179A (ja) * 2011-05-23 2012-12-10 Sony Corp 情報処理装置、情報処理方法、及び、プログラム
US20140314273A1 (en) * 2011-06-07 2014-10-23 Nokia Corporation Method, Apparatus and Computer Program Product for Object Detection
JP5848551B2 (ja) * 2011-08-26 2016-01-27 キヤノン株式会社 学習装置、学習装置の制御方法、検出装置、検出装置の制御方法、およびプログラム
JP6122269B2 (ja) * 2011-12-16 2017-04-26 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム
WO2013132836A1 (ja) * 2012-03-05 2013-09-12 パナソニック株式会社 物体検出装置、物体検出方法、及び物体検出プログラム
US9240184B1 (en) * 2012-11-15 2016-01-19 Google Inc. Frame-level combination of deep neural network and gaussian mixture models
CN104680120B (zh) * 2013-12-02 2018-10-19 华为技术有限公司 一种人脸检测的强分类器的生成方法及装置
JP6448204B2 (ja) 2014-03-28 2019-01-09 キヤノン株式会社 物体検出装置、物体検出方法及びプログラム
JP2016057918A (ja) * 2014-09-10 2016-04-21 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム
US9454712B2 (en) * 2014-10-08 2016-09-27 Adobe Systems Incorporated Saliency map computation
US9626584B2 (en) 2014-10-09 2017-04-18 Adobe Systems Incorporated Image cropping suggestion using multiple saliency maps
KR102407624B1 (ko) * 2015-10-06 2022-06-10 삼성전자주식회사 전자 장치의 영상 처리 방법 및 그 전자 장치
WO2018033137A1 (zh) * 2016-08-19 2018-02-22 北京市商汤科技开发有限公司 在视频图像中展示业务对象的方法、装置和电子设备
CN110197190B (zh) * 2018-02-27 2022-11-01 北京猎户星空科技有限公司 模型训练和物体的定位方法及装置
JP7166784B2 (ja) * 2018-04-26 2022-11-08 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム
US10733742B2 (en) * 2018-09-26 2020-08-04 International Business Machines Corporation Image labeling
JP7312560B2 (ja) * 2019-01-31 2023-07-21 株式会社Screenホールディングス 情報処理装置、情報処理方法、情報処理プログラム、学習方法および学習済モデル
US10936868B2 (en) * 2019-03-19 2021-03-02 Booz Allen Hamilton Inc. Method and system for classifying an input data set within a data category using multiple data recognition tools
US10943099B2 (en) 2019-03-19 2021-03-09 Booz Allen Hamilton Inc. Method and system for classifying an input data set using multiple data representation source modes

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6144755A (en) * 1996-10-11 2000-11-07 Mitsubishi Electric Information Technology Center America, Inc. (Ita) Method and apparatus for determining poses
DE60045699D1 (de) * 1999-01-29 2011-04-21 Sony Corp Daten-beschreibungs-verfahren und daten-bearbeitung-vorrichtung
US7099510B2 (en) 2000-11-29 2006-08-29 Hewlett-Packard Development Company, L.P. Method and system for object detection in digital images
US7024033B2 (en) * 2001-12-08 2006-04-04 Microsoft Corp. Method for boosting the performance of machine-learning classifiers
US7050607B2 (en) * 2001-12-08 2006-05-23 Microsoft Corp. System and method for multi-view face detection
US7203669B2 (en) * 2003-03-17 2007-04-10 Intel Corporation Detector tree of boosted classifiers for real-time object detection and tracking

Also Published As

Publication number Publication date
EP1967984A1 (de) 2008-09-10
JP5025893B2 (ja) 2012-09-12
EP1744265A1 (de) 2007-01-17
EP1967984B1 (de) 2009-05-20
DE602005009169D1 (de) 2008-10-02
US7783086B2 (en) 2010-08-24
EP1744265B1 (de) 2008-08-20
DE602005006341D1 (de) 2008-06-12
US20090175533A1 (en) 2009-07-09
EP1587024A2 (de) 2005-10-19
EP1587024B1 (de) 2008-04-30
JP2005284487A (ja) 2005-10-13
EP1587024A3 (de) 2006-04-05
DE602005014573D1 (de) 2009-07-02
US7630525B2 (en) 2009-12-08
US20050213810A1 (en) 2005-09-29

Similar Documents

Publication Publication Date Title
DE602005006341T2 (de) Vorrichtung, Methode, Aufzeichnungsmedium und Programm zur Informationsverarbeitung
DE602004004048T2 (de) Anordnung und Verfahren zur Objekterkennung sowie Anordnung und Verfahren zum Gruppenlernen
JP4482796B2 (ja) 情報処理装置および方法、記録媒体、並びにプログラム
DE60213032T2 (de) Gerät zur Gesichtsdetektion, Gerät zur Detektion der Gesichtspose, Gerät zur Extraktion von Teilbildern und Verfahren für diese Geräte
DE60209989T2 (de) Robuste Ansichtsmodelle zur visuellen Bewegungsanalyse und Nachführung
DE60114469T2 (de) Methode und Gerät zur Bestimmung von interessanten Bildern und zur Bildübermittlung
CN112016591A (zh) 一种图像识别模型的训练方法及图像识别方法
DE102017220307B4 (de) Vorrichtung und Verfahren zum Erkennen von Verkehrszeichen
EP1835441A2 (de) Vorrichtung und Verfahren zur Informationsverarbeitung, Aufzeichnungsmedium und -programm
EP1646964B1 (de) Verfahren und anordnung zur bestimmung einer objektkontur
CN109740572A (zh) 一种基于局部彩色纹理特征的人脸活体检测方法
DE112020005864T5 (de) Verfahren und Einrichtung zur Verifizierung der Authentizität eines Produkts
EP3989161A1 (de) Verfahren und system zur blattalterschätzung auf basis von morphologischen, aus segmentierten blättern extrahierten merkmalen
CN111507227A (zh) 基于深度学习的多学生个体分割及状态自主识别方法
WO2007047665A1 (en) Modeling micro-structure for feature extraction
CN114266757A (zh) 一种基于多尺度融合注意力机制的糖尿病性视网膜病变分级方法
KR20080076170A (ko) 지문 영상 생성을 위한 영상 필터 조합 생성 방법
Ioannidis et al. An edge preserving image resizing method based on cellular automata
Gibson et al. A no-reference perceptual based contrast enhancement metric for ocean scenes in fog
Bhandari et al. Image aesthetic assessment using deep learning for automated classification of images into appealing or not-appealing
CN112380995B (zh) 稀疏表示域中基于深度特征学习的人脸识别方法及系统
CN117011674A (zh) 一种基于多视角特征融合的复杂车辆识别方法
CN117894083A (zh) 一种基于深度学习的图像识别方法和系统
Gao et al. Non-reference image quality evaluation method based on HVS characteristics
Egorov et al. Using neural networks to recognize text labels of raster navigation maps

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8320 Willingness to grant licences declared (paragraph 23)