DE60216411T2 - Robotervorrichtung, gesichtserkennungsverfahren und gesichtserkennungsvorrichtung - Google Patents

Robotervorrichtung, gesichtserkennungsverfahren und gesichtserkennungsvorrichtung Download PDF

Info

Publication number
DE60216411T2
DE60216411T2 DE60216411T DE60216411T DE60216411T2 DE 60216411 T2 DE60216411 T2 DE 60216411T2 DE 60216411 T DE60216411 T DE 60216411T DE 60216411 T DE60216411 T DE 60216411T DE 60216411 T2 DE60216411 T2 DE 60216411T2
Authority
DE
Germany
Prior art keywords
face
image
facial
face recognition
facial feature
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE60216411T
Other languages
English (en)
Other versions
DE60216411D1 (de
Inventor
c/o Sony Corporation Jun YOKONO
c/o Sony Corporation Kohtaro SABE
c/o Sony Corporation Kenta KAWAMOTO
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 DE60216411D1 publication Critical patent/DE60216411D1/de
Application granted granted Critical
Publication of DE60216411T2 publication Critical patent/DE60216411T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • 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
    • 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
    • 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/172Classification, e.g. identification

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Human Computer Interaction (AREA)
  • Manipulator (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)

Description

  • Technisches Gebiet
  • Die vorliegende Erfindung bezieht sich auf eine Robotervorrichtung, welche mit einer menschlichen Schnittstelle versehen ist, welche in der Lage ist, innerhalb einer vorher festgelegten Zeit unter einer dynamisch sich ändernden Arbeitsumgebung zu antworten, und auf ein Gesichtserkennungsverfahren und eine Gesichtserkennungsvorrichtung, welche wie eine menschliche Schnittstelle für einen Roboter verwendet werden können. Die vorliegende Erfindung bezieht sich weiter auf eine Robotervorrichtung, ein Gesichtserkennungsverfahren und eine Gesichtserkennungsvorrichtung, welche die Erkennung eines Gesichts eines Benutzers innerhalb einer vorher festgelegten Zeit unter einer dynamisch sich ändernden Arbeitsumgebung zulassen.
  • Insbesondere bezieht sich die vorliegende Erfindung auf eine Robotervorrichtung, ein Gesichtserkennungsverfahren und eine Gesichtserkennungsvorrichtung, welche keine Positionierung erfordern, beispielsweise Gestaltung, und die robuste Gesichtserkennung gegenüber Drehung und Positionsänderung und dgl. zulassen, insbesondere bezieht sich die vorliegende Erfindung auf eine Robotervorrichtung, ein Gesichtserkennungsverfahren und eine Gesichtserkennungsvorrichtung, welche robuste Gesichtserkennung unter Umgebungen mit unterschiedlichen Beleuchtungszuständen oder Kameraparametern zulassen.
  • Technischer Hintergrund
  • Verfahren zur Gesichtserkennung können breit auf Mensch-Maschinen-Schnittstellen angewandt werden, beispielsweise für ein persönliches Beglaubigungssystem, welches Benutzern keine Belastung auferlegt, und zur Unterscheidung des Geschlechts. Obwohl Erkennungsverfahren auf Basis von Seiten von Gesichtern anfangs in betracht gezogen wurden, sind Erkennungsverfahren auf Basis von Frontbildern am häufigsten.
  • Untersuchungen über Gesichtserkennungen werden als Bezugsgrößen betrachtet, um Theorien von Mustererkennung zu verifizieren, und somit wurden verschiedene Verfahren hier zur Gesichtserkennung entwickelt. Die meisten Anwendungen, die bei der Entwicklung in betracht gezogen werden, beispielsweise Beglaubigung bei Sicherungssystemen und der Suche nach einer Person für eine groß-volumige Datenbank haben Genauigkeit unter statischen Umgebungen erfordert.
  • Seit einiger Zeit sind Robotervorrichtungen zur Unterhaltung mit Erscheinungsformen ähnlich denen von Tieren, beispielsweise Hunden verfügbar. Beispielsweise kündigte am 25. November 2000 Sony Corporation "SDR-3X" an, was ein menschlicher mobiler Roboter mit zwei Beinen ist. Mobile Roboter mit zwei Beinen dieser Art sind nicht stabil, und es ist schwierig, deren Verhalten und Gangart zu steuern. Es wird jedoch in vorteilhafter Weise den Robotern erlaubt, Treppen nach oben und nach unten zu gehen, oder Leitern zu besteigen und Hindernisse zu überwinden, flexibles Laufen zu erreichen und unabhängig von einer Unterscheidung zwischen ebenen und nicht ebenen Böden zu laufen. Mit der verbesserten Intelligenz, die es Robotern erlaubt, autonom zu arbeiten, wird es außerdem für Leute und Roboter nicht unmöglich, zusammen im gleichen Lebensraum zu leben.
  • Intelligente Robotervorrichtungen sind in der Lage, tierähnliches Verhalten zu zeigen, wobei Augen und Beine gemäß externer Information (beispielsweise Information in Bezug auf Umstände), interner Zustände (Bewegtzustände) usw. autonom betätigt werden.
  • Die Notwendigkeit nach derartigen Robotervorrichtungen weckte den Wunsch nach menschlichen Schnittstellentechniken, welche Antwort innerhalb einer vorher festgelegte Zeit erlauben, unter einer dynamisch sich ändernden Betriebsumgebung, wobei eine davon die Gesichtsunterscheidung durch eine Robotervorrichtung ist. Durch Verwendung der Gesichtsunterscheidung wird es einer Robotervorrichtung erlaubt, einen Benutzer (Eigentümer, Freund oder legitimierten Benutzer) unter vielen zu unterscheiden, und es wird ein höheres Niveau an Unterhaltung erzielt, beispielsweise durch Ändern von Reaktionen auf Basis individueller Benutzer.
  • Verfahren zur Gesichtserkennung bei Robotervorrichtungen, wie bei Anwendungen zur Beglaubigung bei Sicherheitssystemen und bei der Suche nach einer Position von einer groß-volumigen Datenbank vorgeschlagen, erfordern die Antwort innerhalb einer vorher festgelegten Zeit unter einer dynamisch sich ändernden Betriebsumgebung sogar auf Kosten etwas geringerer Genauigkeit.
  • Eine Anwendung einer Gesichtsunterscheidung bei einer derartigen Robotervorrichtung muss die folgenden Probleme zusätzlich zu dem Problem lösen, um eine Person von einer bestimmten Szene zu unterscheiden.
    • (1) Da sich die Robotervorrichtung selbst bewegt, muss eine Änderung in einer und eine Mannigfaltigkeit der Umgebung akzeptiert werden.
    • (2) Da die Relativpositionen einer Position und der Robotervorrichtung sich ändern, muss die Person während Zwischenaktionen im Blick gehalten werden.
    • (3) Ein Bild, welches zur Unterscheidung einer Person nützlich ist, muss aus einer großen Anzahl von Szenen ausgewählt werden, und es muss eine verständliche Beurteilung ausgeführt werden.
    • (4) Eine Antwort muss innerhalb einer vorher festgelegten Zeit stattfinden.
  • Der Hauptstrom von Gesichterkennungsverfahren sind Verfahren auf Basis eines neuralen Netzwerks und Verfahren, bei denen prinzipielle Komponentenanalyse (PCA) auf einen Vektorraum angewandt wird, der aus Luminanzwerten eines Gesichtsbilds (Eigenraumverfahren) besteht. Diese herkömmlichen Verfahren haben jedoch die folgenden Nachteile gehabt.
  • Zunächst erlaubt die Gesichtserkennung auf Basis eines neuralen Netzwerks nicht wachsendes Lernen.
  • Wie für Verfahren auf Basis des Eigenraums, obwohl orthogonale paarweis-lineare Räume angenommen werden (d.h., Durchschnittsbildung von zwei Gesichtsbildern bildet ein menschliches Gesicht), wird Linearität in Wirklichkeit nicht in vielen Fällen vorgesehen, so dass genaues Positionieren, welches als Gestaltung bezeichnet wird, oder Ausrichtung, erforderlich ist. Einige Verfahren versuchen, den Effekt durch Normierung in Bezug auf die Position, die Drehung und die Größe bei der Vorverarbeitung zu lindern. Die Verarbeitung arbeitet jedoch nicht notwendigerweise gut. Dies war ein Faktor, dass die Erkennungsleistung verschlechtert wird. Da außerdem das Maß des Gesichtsraums signifikant reduziert wird, um Trennung in diesem Raum zuzulassen, können hochgradige Merkmale verloren werden.
  • Jedes Erkennungsverfahren, welches oben beschrieben wurde, ist außerdem empfindlich gegenüber Effekten einer Änderung von Beleuchtungszuständen, einer Änderung von Kameraparametern, Geräusch, Position und Drehung, so dass Vorverarbeitung, beispielsweise Geräuschfiltern und Gestaltung erforderlich ist. Außerdem verbleibt die Frage im Hinblick auf die Fähigkeit einer Generalisierung.
  • "A Gabor Feature Classifier for Face Recognition" Chengjun Lui et al, Proc. Int. Conf. on Computer Vision, Band 2, 7. Juli 2001, Seite 270–275, XP010554098 beschreibt die Verwendung einer Gabor-Merkmalanalyse zum Zweck einer Gesichtserkennung.
  • "Face Recognition with Support Vector Machines: Global versus Componentbased Approach", Heisele B. et al, Proc. Int. Conf. on Computer Vision, Band 2, 7. Juli 2001, Seite 688–694, XP010554156 vergleicht eine Vielzahl von Gesichtserkennungsverfahren ge genüber Widerstandsfähigkeit auf Lageänderungen. Lagervektormaschinen sind für die Merkmalsklassifizierung offenbart.
  • Die CN 1302056 offenbart einen Roboterhund mit Stimmen- und Gestik-Ermittlungseinrichtung, die verwendet werden, das Verhalten des Roboterhunds zu bestimmen.
  • Offenbarung der Erfindung
  • Es ist eine Aufgabe der vorliegenden Erfindung, eine Robotervorrichtung bereitzustellen, welche mit einer menschlichen Schnittstelle versehen ist, welche eine Antwort innerhalb vorher festgelegten Zeit unter einer dynamisch sich ändernden Betriebsumgebung zulässt, und ein günstiges Gesichterkennungsverfahren und eine Gesichtserkennungsvorrichtung, welche wie eine menschliche Schnittstelle für einen Roboter verwendet werden können.
  • Es ist eine weitere Aufgabe der vorliegenden Erfindung, eine günstige Robotervorrichtung, ein Gesichtserkennungsverfahren und eine Gesichtserkennungsvorrichtung bereitzustellen, welche die Erkennung eines Gesichts eines Benutzers innerhalb einer vorher festgelegten Zeit unter einer dynamisch sich ändernden Betriebsumgebung zulassen.
  • Eine weitere Aufgabe der vorliegenden Erfindung ist es, eine günstige Robotervorrichtung, ein Gesichtserkennungsverfahren und eine Gesichtserkennungsvorrichtung bereitzustellen, welche robuste Gesichtserkennung unter Umgebung mit unterschiedlichen Beleuchtungszuständen und Kameraparametern zulassen.
  • Eine weitere Aufgabe der vorliegenden Erfindung besteht darin, eine günstige Robotervorrichtung, ein Gesichtserkennungsverfahren und eine Gesichtserkennungsvorrichtung bereitzustellen, welche das Positionieren, beispielsweise Gestaltung nicht erfordern und somit robuste Gesichtserkennung gegenüber Drehung, Positionsänderung und dgl. zulassen.
  • Eine weitere Aufgabe der vorliegenden Erfindung besteht darin, eine günstige Robotervorrichtung, ein Gesichtserkennungsverfahren und eine Gesichtserkennungsvorrichtung bereitzustellen, die keine Positionierung erfordern, beispielsweise Gestaltung, und welche robuste Gesichtserkennung gegenüber Drehung, Positionsänderung und dgl. zulassen.
  • Die vorliegende Erfindung wurde in Abwägung der obigen Aufgaben getätigt. Erfindungsgemäß wird eine Robotervorrichtung bereitgestellt, welche autonom arbeitet, die eine Bildeingangseinrichtung aufweist, um ein Gesichtsbild zuzuführen; eine Gesichtsmerkmalextraktionseinrichtung, um Merkmale des Gesichtsbilds unter Verwendung von mehreren Filtern zu extrahieren, welche Orientierungsselektivität haben und welche mit unterschiedlichen Frequenzkomponenten in Verbindung sind; und eine Gesichtsunterscheidungseinrichtung zum Unterscheiden eines bestimmten Gesichts von anderen Gesichtern durch nichtlineares Abbilden unter Verwendung einer Kernel-Funktion. der Gesichtsmerkmale, welche durch die Gesichtsmerkmal-Extraktionseinrichtung extrahiert werden, und durch Erlangen einer Hyperebene, welche einen Merkmalsraum trennt, der durch das Abbilden erlangt wird.
  • Die Gesichtsmerkmal-Extraktionseinrichtung kann durch Gabor-Filter verwirklicht werden, und die Gesichtsunterscheidungseinrichtung kann durch eine Unterstützungsvektormaschine verwirklicht werden.
  • Gemäß dieser Ausführungsform der vorliegenden Erfindung erfordert die Robotervorrichtung nicht das Positionieren, beispielsweise Gestaltung für das zugeführte Bild, wodurch robuste Gesichtserkennung gegenüber Drehung und Positionsänderung und dgl. zugelassen wird. Das heißt, dass es der Robotervorrichtung erlaubt wird, Gesichter von Benutzern innerhalb einer vorher festgelegten Zeit unter einer dynamisch sich ändernden Betriebsumgebung zu erkennen und in Realzeit auf individuelle Benutzer zu antworten.
  • Die Gesichtsmerkmal-Extraktionseinrichtung kann eine Filteränderungseinrichtung aufweisen, um die Art der Gabor-Filter gemäß der Erkennungsaufgabe zu ändern. Außerdem kann die Gesichtsmerkmal-Extraktionseinrichtung beim Filtern mit einer niedrigen Frequenz ein gefiltertes Bild mit niedriger Rate abtasten, um die Dimension des gefilterten Bilds zu reduzieren. Abtast-Vektoren mit niedriger Rate sind in einer Reihe angeordnet, um einen langen Vektor zu bilden, der zur Gesichtserkennungseinrichtung in einer nachfolgenden Stufe geliefert wird.
  • Gemäß einem Merkmal der vorliegenden Erfindung wird eine Gesichtserkennungsvorrichtung bereitgestellt, welche aufweist:
    eine Bildeingabeeinrichtung zum Eingeben eines Gesichtsbilds;
    eine Gesichtsmerkmal-Extraktionseinrichtung zum Extrahieren von Merkmalen des Gesichtsbilds unter Verwendung von mehreren Filtern, welche Orientierungsselektivität haben und welche mit unterschiedlichen Frequenzkomponenten in Verbindung sind; und
    eine Gesichtsunterscheidungseinrichtung zum Unterscheiden eines bestimmten Gesichtes von anderen Gesichtern durch nichtlineares Abbilden unter Verwendung einer Kernel-Funktion der Gesichtsmerkmale, welche durch die Gesichtsmerkmal-Extraktionseinrichtung extrahiert werden, und durch Erlangen einer Hyperebene, welche einen Merkmalsraum, der durch das Abbilden erlangt wird, trennt;
    dadurch gekennzeichnet, dass die Gesichtsmerkmal-Extraktionseinrichtung eine Filteränderungseinrichtung zum Ändern der Art der Filter gemäß einer Gesichtsgröße entsprechend dem zugeführten Gesichtsbild aufweist.
  • Gemäß einem weiteren Merkmal der Erfindung wird ein Gesichtserkennungsverfahren bereitgestellt, welches aufweist:
    einen Bildeingabeschritt zum Eingeben eines Gesichtsbilds; einen Gesichtsmerkmal-Extraktionsschritt zum Extrahieren von Merkmalen des Gesichtsbilds unter Verwendung von mehreren Filtern, welche Orientierungsselektivität haben und welche mit unterschiedlichen Frequenzkomponenten in Verbindung sind; und einen Gesichtsunterscheidungsschritt zum Unterscheiden eines bestimmten Gesichts von anderen Gesichtern durch nichtlineares Abbilden unter Verwendung einer Kernel-Funktion, der Gesichtsmerkmale, welche im Gesichtsmerkmal-Extraktionsschritt extrahiert werden, und durch Erlangen einer Hyperebene, welche einen Merkmalsraum, der durch das Abbilden erlangt wird, trennt; dadurch gekennzeichnet, dass der Gesichtsmerkmal-Extraktionsschritt einen Filteränderungsschritt zum Ändern der Art der Filter gemäß einer Gesichtsgröße entsprechend dem zugeführten Gesichtbild aufweist.
  • Die Gesichtsmerkmal-Extraktionseinrichtung kann durch Gabor-Filter verwirklicht werden, und die Gesichtsunterscheidungseinrichtung kann durch eine Unterstützungsvektormaschine verwirklicht werden.
  • Durch die Gesichtserkennungsvorrichtung oder das Gesichterkennungsverfahren nach einer Ausführungsform der vorliegenden Erfindung wird ohne das Erfordernis einer Positionierung, beispielsweise Gestaltung für das zugeführte Bild, robuste Gesichtserkennung gegenüber Drehung und Änderung der Position und dgl. zugelassen. Das heißt, die Erkennung eines Gesichtes eines Benutzers wird innerhalb einer vorher festgelegten Zeit sogar unter einer dynamisch sich ändernden Betriebsumgebung zugelassen. Unter Verwendung der Gesichtserkennungsvorrichtung oder des Gesichtserkennungsverfahrens gemäß den Ausführungsformen der vorliegenden Erfindung wird es bei einem Robotergerät dem Robotergerät gestattet, beispielsweise unterschiedliche Reaktionen auf Basis individueller Benutzer ohne Verzögerung vorzunehmen, wodurch ein höherer Unterhaltungspegel erzielt wird.
  • Die Gesichtszustands-Extraktionseinrichtung oder der Schritt können eine Filteränderungseinrichtung oder den Schritt zum Ändern der Art der Gabor-Filter gemäß einer Erkennungsaufgabe aufweisen.
  • Außerdem kann die Gesichtsmerkmal-Extraktionseinrichtung oder der Schritt beim Filtern bei einer niedrigen Frequenz ein gefiltertes Bild mit kleiner Rate abtasten, um die Dimension des gefilterten Bilds zu reduzieren. Abtast-Vektoren mit niedriger Rate sind in einer Linie angeordnet, um einen langen Vektor zu bilden, der zur Gesichtserkennungseinrichtung oder dem Schritt in einer nachfolgenden Stufe geliefert wird.
  • Weitere Aufgaben, Merkmale und Vorteile der vorliegenden Erfindung werden durch ausführliche Beschreibungen auf Basis von Ausführungsformen der vorliegenden Erfindung, die später beschrieben wird, und den beigefügten Zeichnungen deutlich.
  • Kurzbeschreibung der Zeichnungen
  • 1 ist ein Diagramm, welches einen mit Beinen versehenen mobilen Roboter 100 gemäß einer Ausführungsform der vorliegenden Erfindung zeigt, gesehen von der Vorderseite;
  • 2 ist ein Diagramm, welches einen mit Beinen versehenen mobilen Roboter 100 gemäß einer Ausführungsform der vorliegenden Erfindung zeigt, gesehen von der Rückseite;
  • 3 ist schematisches Diagramm, welches den Aufbau von Freiheitsgraden beim mit Beinen versehenen mobilen Roboter 100 gemäß der Ausführungsform zeigt;
  • 4 ist ein schematisches Diagramm, welches den Aufbau eines Steuersystems des mit Beinen versehenen mobilen Roboters 100 zeigt;
  • 5 ist ein schematisches Diagramm, welches den Software-Aufbau eines Steuerprogramms zum Verwirklichen von Verarbeitungsoperationen der Robotervorrichtung 100 gemäß der Ausführungsform zeigt;
  • 6 ist ein Diagramm, welches eine spezifische Software-Konfiguration einer Middleware-Ebene 400 ausführlich zeigt;
  • 7 ist ein Diagramm, welches eine spezifische Software-Konfiguration einer Anwendungsebene 141 ausführlich zeigt;
  • 8 ist ein Diagramm, welches eine spezifische Software-Konfiguration einer Aktionsmodell-Bibliothek 170 ausführlich zeigt;
  • 9 ist ein Diagramm, welches das Prinzip eines endlichen Wahrscheinlichkeitsautomaten für die Bestimmung nachfolgender Aktionen auf Basis von Aktionsmodellen 170-1 bis 170-n zeigt;
  • 10 ist ein Diagramm, welches eine Zustandsübergangstabelle zeigt, welche für jeden der Knoten NODE0 bis NODEn vorgesehen ist, welche die eigenen Aktionsmodelle 170-1 bis 170n bilden;
  • 11 ist ein Blockdiagramm, welches den Funktionsaufbau eines Gesichtserkennungssystems 100 gemäß der Ausführungsform in einer Lernstufe zeigt;
  • 12 ist ein Blockdiagramm, welches den Funktionsaufbau des Gesichtserkennungssystems 100 gemäß der Ausführungsform in einer Erkennungsstufe zeigt;
  • 13 ist ein Diagramm, welches Raum-Kenndaten eines Gabor-Filters, welches bei der Ausführungsform verwendet wird, zeigt;
  • 14 ist ein Diagramm, welches Raum-Kenndaten eines Gabor-Filters zeigt, welches bei der Ausführungsform verwendet wird;
  • 15 ist ein Diagramm, welches Raum-Kenndaten eines Gabor-Filters zeigt, welches bei der Ausführungsform verwendet wird;
  • 16 ist ein Diagramm, welches Raum-Kenndaten eines Gabor-Filters zeigt, welches bei der Ausführungsform verwendet wird;
  • 17 ist ein Diagramm, welches Raum-Kenndaten eines Gabor-Filters zeigt, welches bei der Ausführungsform verwendet wird;
  • 18 ist ein Diagramm, welches Raum-Kenndaten eines Gabor-Filters zeigt, welches bei der Ausführungsform verwendet wird;
  • 19 ist ein Diagramm, welches Raum-Kenndaten eines Gabor-Filters zeigt, welches bei der Ausführungsform verwendet wird;
  • 20 ist ein Diagramm, welches Raum-Kenndaten eines Gabor-Filters zeigt, welches bei der Ausführungsform verwendet wird;
  • 21 ist ein Diagramm, welches Raum-Kenndaten eines Gabor-Filters zeigt, welches bei der Ausführungsform verwendet wird;
  • 22 ist ein Diagramm, welches Raum-Kenndaten eines Gabor-Filters zeigt, welches bei der Ausführungsform verwendet wird;
  • 23 ist ein Diagramm, welches Raum-Kenndaten eines Gabor-Filters zeigt, welches bei der Ausführungsform verwendet wird;
  • 24 ist ein Diagramm, welches Raum-Kenndaten eines Gabor-Filters zeigt, welches bei der Ausführungsform verwendet wird;
  • 25 ist ein Diagramm, welches Raum-Kenndaten eines Gabor-Filters zeigt, welches bei der Ausführungsform verwendet wird;
  • 26 ist ein Diagramm, welches Raum-Kenndaten eines Gabor-Filters zeigt, welches bei der Ausführungsform verwendet wird;
  • 27 ist ein Diagramm, welches Raum-Kenndaten eines Gabor-Filters zeigt, welches bei der Ausführungsform verwendet wird;
  • 28 ist ein Diagramm, welches Raum-Kenndaten eines Gabor-Filters zeigt, welches bei der Ausführungsform verwendet wird;
  • 29 ist ein Diagramm, welches Raum-Kenndaten eines Gabor-Filters zeigt, welches bei der Ausführungsform verwendet wird;
  • 30 ist ein Diagramm, welches Raum-Kenndaten eines Gabor-Filters zeigt, welches bei der Ausführungsform verwendet wird;
  • 31 ist ein Diagramm, welches Raum-Kenndaten eines Gabor-Filters zeigt, welches bei der Ausführungsform verwendet wird;
  • 32 ist ein Diagramm, welches Raum-Kenndaten eines Gabor-Filters zeigt, welches bei der Ausführungsform verwendet wird;
  • 33 ist ein Diagramm, welches Raum-Kenndaten eines Gabor-Filters zeigt, welches bei der Ausführungsform verwendet wird;
  • 34 ist ein Diagramm, welches Raum-Kenndaten eines Gabor-Filters zeigt, welches bei der Ausführungsform verwendet wird;
  • 35 ist ein Diagramm, welches Raum-Kenndaten eines Gabor-Filters zeigt, welches bei der Ausführungsform verwendet wird;
  • 36 ist ein Diagramm, welches Raum-Kenndaten eines Gabor-Filters zeigt, welches bei der Ausführungsform verwendet wird;
  • 37 ist ein Diagramm, welches ein Beispiel eines Eingangsbilds zeigt;
  • 38 ist ein Ergebnis des Filterns des zugeführten Bilds, welches in 37 gezeigt ist, durch das Gabor-Filter, welches in 13 gezeigt ist;
  • 39 ist ein Ergebnis des Filterns des zugeführten Bilds, welches in 37 gezeigt ist, durch das Gabor-Filter, welches in 14 gezeigt ist;
  • 40 ist ein Ergebnis des Filterns des zugeführten Bilds, welches in 37 gezeigt ist, durch das Gabor-Filter, welches in 15 gezeigt ist;
  • 41 ist ein Ergebnis des Filterns des zugeführten Bilds, welches in 37 gezeigt ist, durch das Gabor-Filter, welches in 16 gezeigt ist;
  • 42 ist ein Ergebnis des Filterns des zugeführten Bilds, welches in 37 gezeigt ist, durch das Gabor-Filter, welches in 17 gezeigt ist;
  • 43 ist ein Ergebnis des Filterns des zugeführten Bilds, welches in 37 gezeigt ist, durch das Gabor-Filter, welches in 18 gezeigt ist;
  • 44 ist ein Ergebnis des Filterns des zugeführten Bilds, welches in 37 gezeigt ist, durch das Gabor-Filter, welches in 19 gezeigt ist;
  • 45 ist ein Ergebnis des Filterns des zugeführten Bilds, welches in 37 gezeigt ist, durch das Gabor-Filter, welches in 20 gezeigt ist;
  • 46 ist ein Ergebnis des Filterns des zugeführten Bilds, welches in 37 gezeigt ist, durch das Gabor-Filter, welches in 21 gezeigt ist;
  • 47 ist ein Ergebnis des Filterns des zugeführten Bilds, welches in 37 gezeigt ist, durch das Gabor-Filter, welches in 22 gezeigt ist;
  • 48 ist ein Ergebnis des Filterns des zugeführten Bilds, welches in 37 gezeigt ist, durch das Gabor-Filter, welches in 23 gezeigt ist;
  • 49 ist ein Ergebnis des Filterns des zugeführten Bilds, welches in 37 gezeigt ist, durch das Gabor-Filter, welches in 24 gezeigt ist;
  • 50 ist ein Ergebnis des Filterns des zugeführten Bilds, welches in 37 gezeigt ist, durch das Gabor-Filter, welches in 25 gezeigt ist;
  • 51 ist ein Ergebnis des Filterns des zugeführten Bilds, welches in 37 gezeigt ist, durch das Gabor-Filter, welches in 26 gezeigt ist;
  • 52 ist ein Ergebnis des Filterns des zugeführten Bilds, welches in 37 gezeigt ist, durch das Gabor-Filter, welches in 27 gezeigt ist;
  • 53 ist ein Ergebnis des Filterns des zugeführten Bilds, welches in 37 gezeigt ist, durch das Gabor-Filter, welches in 28 gezeigt ist;
  • 54 ist ein Ergebnis des Filterns des zugeführten Bilds, welches in 37 gezeigt ist, durch das Gabor-Filter, welches in 29 gezeigt ist;
  • 55 ist ein Ergebnis des Filterns des zugeführten Bilds, welches in 37 gezeigt ist, durch das Gabor-Filter, welches in 30 gezeigt ist;
  • 56 ist ein Ergebnis des Filterns des zugeführten Bilds, welches in 37 gezeigt ist, durch das Gabor-Filter, welches in 31 gezeigt ist;
  • 57 ist ein Ergebnis des Filterns des zugeführten Bilds, welches in 37 gezeigt ist, durch das Gabor-Filter, welches in 32 gezeigt ist;
  • 58 ist ein Ergebnis des Filterns des zugeführten Bilds, welches in 37 gezeigt ist, durch das Gabor-Filter, welches in 33 gezeigt ist;
  • 59 ist ein Ergebnis des Filterns des zugeführten Bilds, welches in 37 gezeigt ist, durch das Gabor-Filter, welches in 34 gezeigt ist;
  • 60 ist ein Ergebnis des Filterns des zugeführten Bilds, welches in 37 gezeigt ist, durch das Gabor-Filter, welches in 35 gezeigt ist;
  • 61 ist ein Ergebnis des Filterns des zugeführten Bilds, welches in 37 gezeigt ist, durch das Gabor-Filter, welches in 36 gezeigt ist;
  • 62 ist ein Diagramm, welches die Beziehung zwischen Gesichtsgrößen bei Bildern und dem Abstand zeigt;
  • 63 ist ein Diagramm, um die Verarbeitung zum Berechnen von Spitzenwerten in der Frequenzdomäne durch schnelle Fourier-Transformation von Bildern entsprechender Gesichtsgrößen zu erläutern;
  • 64 ist ein Diagramm, welches die Beziehung zwischen dem Abstand und der Frequenz von Gabor-Filtern zeigt; und
  • 65 ist ein Flussdiagramm, welches eine Verarbeitung der Gesichtsextraktionsverarbeitung durch Gabor-Filter unter Verwendung von Entfernungsinformation zeigt.
  • Bevorzugtes Ausführungsbeispiel
  • Anschließend werden Ausführungsformen der vorliegenden Erfindung mit Hilfe der Zeichnungen erläutert.
  • Bei einer Ausführungsform der vorliegenden Erfindung, die anschließend beschrieben wird, wird die vorliegende Erfindung bei einer zweibeinigen mobilen Robotervorrichtung angewandt, die eine externe menschenartige Form hat, d.h. bei einem Mensch-Roboter. Die vorliegende Erfindung ist im Kern jedoch nicht darauf beschränkt, und kann ähnlich beispielsweise bei einem vierbeinigen mobilen Roboter, beispielsweise einem Roboterhund angewandt werden.
  • Die Robotervorrichtung gemäß dieser Ausführungsform zeigt ein Verhalten mit einer Realität durch autonomes Betätigen von Augen, Beinen, usw. gemäß externer Information (beispielsweise Information in Bezug auf Umstände) und dem internen Status (beispielsweise emotioneller Status). Die Robotervorrichtung hat die Kapazität zum Erkennen von Gesichtern, die als eine menschliche Schnittstelle dient, um Unterscheidung von Gesichtern von Benutzern (Freunde oder Eigner) oder dgl. zuzulassen, wobei unterschiedliche Reaktionen auf Basis individueller Benutzer auf Basis von Ergebnissen der Gesichterkennung getroffen werden.
  • A. Aufbau des Roboters
  • 1 und 2 zeigen einen mit Beinen versehen mobilen Roboter 100 gemäß dieser Ausführungsform, gesehen von vorne bzw. von hinten. 3 zeigt schematisch Freiheitsgrade von Gelenken des mit Beinen versehenen mobilen Roboters 100.
  • Wie in 3 gezeigt ist, hat der mit Beinen versehene mobile Roboter 100 einen Aufbau mit mehreren Gliedmaßen, welcher obere Gliedmaßen hat, welche zwei Arme ent halten, und einen Kopf 1, und untere Gliedmaßen, einschließlich zwei Beinen, um Bewegung zuzulassen, und einen Rumpf, der die oberen Gliedmaßen und die unteren Gliedmaßen miteinander verbindet.
  • Ein Halsgelenk, welches den Kopf 1 trägt, hat drei Freiheitsgrade, d.h., eine Halsgelenk-Gierachse 2, eine Halsgelenk-Neigungsachse 3 und eine Halsgelenk-Rollachse 4.
  • Ein jeder der Arme hat eine Schultergelenk-Neigungsachse 8, eine Schultergelenk-Rollachse 9, eine Oberarm-Gierachse 10, eine Ellbogengelenk-Neigungsachse 11, eine Vorderarm-Gierachse 12, eine Handgelenk-Rollachse 14 und eine Hand 15. Die Hand 15 besitzt aktuell einen Aufbau, der mehrere Finger aufweist, die mehrere Gelenke und mehrere Freiheitsgrade haben. Die Arbeitsweise der Hand jedoch trägt nicht signifikant dazu bei oder um die Verhaltenssteuerung oder die Gangartsteuerung des Roboters 100 zu beeinträchtigen, und somit wird angenommen, dass die Freiheitsgrade der Hand 15 bei dieser Ausführung null sind. Somit wird angenommen, dass jeder der Arme sieben Freiheitsgrade hat.
  • Der Rumpf hat drei Freiheitsgrade, nämlich eine Rumpfneigungsachse 5, eine Rumpfrollachse 6 und eine Rumpfgierachse 7.
  • Ein jedes der Beine, welche die unteren Gliedmaßen bilden, besitzt eine Hüftgelenk-Neigungsachse 17, eine Hüftgelenk-Rollachse 18, eine Kniegelenk-Neigungsachse 19, eine Knöchelgelenk-Rollachse 21 und einen Fuß 22. Bei dieser Beschreibung definiert der Zwischenabschnitt zwischen der Hüftgelenk-Neigungsachse 17 und der Hüftgelenk-Rollachse 18 die Position eines Hüftgelenks des mit Beinen versehenen mobilen Roboters 100 gemäß dieser Ausführungsform. Obwohl der Fuß 22 eines Menschen tatsächlich einen Aufbau hat, der einen Fuß hat, der viele Gelenke und viele Freiheitsgrade hat, hat ein Fuß des mit Beinen versehenen mobilen Roboters 100 gemäß dieser Ausführungsform null Freiheitsgrade. Somit hat jeder der Füße sechs Freiheitsgrade.
  • Zusammengefasst hat der mit Beinen versehene mobile Roboter 100 nach dieser Ausführungsform insgesamt 3 + 7 × 2 + 3 + 6 × 2 = 32 Freiheitsgrade. Die Freiheitsgrade des mit Beinen versehenen mobilen Roboters 100 zur Unterhaltung sind jedoch nicht notwendigerweise auf 32 begrenzt. Es soll verstanden sein, dass die Freiheitsgrade, beispielsweise die Anzahl von Gelenken, vergrößert oder vermindert werden kann, wie dies gemäß Beschränkungen und erforderlichen Ausführungsformen bezüglich Konstruktion und Fertigung geeignet ist.
  • Die Freiheitsgrade des mit Beinen versehenen mobilen Roboters 100, der oben beschrieben wurde, werden durch Betätigungsglieder verwirklicht. In Anbetracht der Erfordernisse zum Simulieren der Erscheinungsform einer natürlichen Form eines Menschen ohne übermäßigen Aufwand und um das Verhalten einer nicht stabilen Struktur zu steuern, welche auf zwei Beinen läuft, haben die Betätigungsglieder vorzugsweise eine kleine Baugröße und sind leicht. Bei dieser Ausführungsform werden kleine AC-Servo-Betätigungsglieder, die jeweils unmittelbar mit einem Getriebe verbunden sind und welche ein Ein-Chip-Servo-Steuersystem aufweisen, welches in einer Motoreinheit eingebaut ist, verwendet. Ein AC-Servo-Betätigungsorgan dieser Art ist beispielsweise in der japanischen ungeprüften Patentanmeldungsveröffentlichung Nr. 2000-299970 (japanische Patentanmeldung Nr. 11-33386) offenbart, die auf den Anmelder dieser Anmeldung übertragen ist.
  • 4 zeigt schematisch den Aufbau eines Steuersystems des mit Beinen versehenen mobilen Roboters 100. Das Steuersystem umfasst eine Steuerung 116 und eine Batterie 117, welche als Spannungsquelle für die Robotervorrichtung 100 dient, und ist beispielsweise in dem Vorrichtungskörper oder auf der Rückseite des mit Beinen versehenen mobilen Roboters befestigt. Die Steuerung 116 besitzt eine CPU 110 (Zentralverarbeitungseinheit), einen DRAM (dynamischer Speicher mit wahlfreiem Zugriff) 111, einen Flash-ROM 112 (Nur-Lese-Speicher), eine PC-Kartenschnittstellenschaltung 113 und eine Signalverarbeitungsschaltung 114, die jeweils miteinander über einen internen Bus 115 verbunden sind. Die Vorrichtung besitzt einen Winkelgeschwindigkeitssensor 118, einen Beschleunigungssensor 119 usw., um eine Orientierung und eine Bewegungsbeschleunigung der Robotervorrichtung 100 zu ermitteln.
  • Der Kopf der Vorrichtung umfasst eine CCD-Kamera 120 (ladungsgekoppelte Einrichtung), um einen externen Status abzubilden, einen Berührungssensor 121, um einen Druck zu ermitteln, der durch eine reale Betätigung durch einen Benutzer ausgeübt wird, beispielsweise "Anschlagen" oder "Schlagen", einen Entfernungssensor 122, um eine Entfernung zu einem Ziel zu messen, welches vorne angeordnet ist, ein Mikrophon 123, um einen externen Ton aufzunehmen, einen Lautsprecher 124, um einen Ton auszugeben, beispielsweise eine Tierstimme, usw., welche an vorher festgelegten Positionen der Vorrichtung angeordnet sind. Die CCD-Kamera 120 funktioniert als Bildzuführeinrichtung, um ein Gesichtsbild zur Gesichtunterscheidung einzufangen.
  • Außerdem sind an den Gelenken der Fußeinheiten, den Verbindungsteilen zwischen den Fußeinheiten und der Körpereinheit und dem Verbindungsteil zwischen der Kopfeinheit und der Körpereinheit, usw., Betätigungsorgane 125-1 bis 125-n und Potentiometer 126-1 bis 126-n gemäß ihren entsprechenden Freiheitsgraden vorgesehen. Beispielsweise werden die Betätigungsorgane 125-1 bis 125-n entsprechend durch Einzelservomotore ver wirklicht. Die Fußeinheiten werden durch die Servomotore angesteuert und gesteuert, um zu einem Zielverhalten oder Betrieb überzugehen.
  • Die oben beschriebenen verschiedenen Sensoren einschließlich des Winkelgeschwindigkeitssensors 118, des Beschleunigungssensors 119, des Berührungssensors 121, des Abstandssensors 122, des Mikrophons 123, des Lautsprechers 124 und der Potentiometer 126-1 bis 126-n sowie die Betätigungsorgane 125-1 bis 125-n sind auf verknüpfte Netzknoten 127-1 bis 127-n entsprechend konzentriert und dadurch mit der Signalverarbeitungsschaltung 114 der Steuerung 116 verbunden. Die CCD-Kamera 120 und die Batterie 117 sind unmittelbar mit der Signalverarbeitungsschaltung 114 verbunden.
  • Die Signalverarbeitungsschaltung 114 fängt sequentiell Sensordaten, Bilddaten und Audiodaten, die von dem oben beschriebenen Sensoren geliefert werden, ein und speichert diese Daten wenn erforderlich bei spezifizierten Adressen über den internen Bus 115 im DRAM 111. Außerdem fängt die Signalverarbeitungsschaltung 114 sequentiell Batterieladezustandsdaten ein, die eine verbleibende Batteriekapazität zeigen, die von der Batterie 117 geliefert wird, und speichert ähnlich die Daten bei einer spezifizierten Adresse im DRAM 111.
  • Die Sensordaten, die Bilddaten, die Audiodaten und die Batterieladezustandsdaten, welche im DRAM 111 gespeichert sind, wie oben beschrieben, sind sequentiell für die CPU 110 beim Steuerungsbetrieb der Robotervorrichtung 100 verfügbar.
  • Wenn aktuell zu Anfang die Robotervorrichtung eingeschaltet wird, liest die CPU 110 ein Steuerprogramm, welches auf einer Speicherkarte 128 gespeichert ist, welche in einen PC-Kartenschlitz (nicht gezeigt) der Körpereinheit 2 angeordnet ist oder welches im Flash-ROM 112 gespeichert ist, über die PC-Kartenschnittstellenschaltung 113 oder unmittelbar und lädt das Steuerprogramm in den DRAM 111.
  • Nach dem Laden des Programms beurteilt die CPU 110 ihren eigenen Status und Umstände der Vorrichtung, ob eine Instruktion oder eine Betätigung durch einen Benutzer usw. ausgeführt wurde, auf Basis der Sensordaten, der Bilddaten, der Audiodaten und der Batterieladezustandsdaten, welche sequentiell im DRAM 111 gespeichert sind, von der Signalverarbeitungsschaltung 114, wie früher beschrieben wurde.
  • Außerdem bestimmt die CPU 110 eine nachfolgende Aktion auf Basis von Ergebnissen der Beurteilungen und des Steuerprogramms, welches in den DRAM 111 geladen ist, und steuert die Betätigungsorgane 125-1 bis 125-n wenn erforderlich auf Basis eines Ergebnisses der Bestimmung an, wodurch der Kopf nach links und rechts verschwenkt wird oder die Fußeinheiten angetrieben werden, um eine Fußbetätigung beispielsweise Gehen auszuführen.
  • Beim Ausführen des Programms erzeugt die CPU 110 Audiodaten, wenn erforderlich, und liefert die Audiodaten über die Signalverarbeitungsschaltung 114 als Audiosignal zum Lautsprecher 24, um dadurch einen Ton auf Basis des Audiosignals auszugeben.
  • Wie oben beschrieben ist die Robotervorrichtung 100 eingerichtet, um sich gemäß ihrem eigenen Zustand und Unständen und Instruktionen und Betätigungen durch den Benutzer autonom zu verhalten.
  • B. Software-Konfiguration des Steuerprogramms
  • 5 zeigt schematisch die Software-Konfiguration des Steuerprogramms zum Verwirklichen von Verarbeitungsarbeitsweisen der Robotervorrichtung 100 gemäß dieser Ausführungsform.
  • Wie in der Figur gezeigt ist, befindet sich eine Einrichtungsansteuerenene 130 in einer untersten Ebene des Steuerprogramms, und umfasst einen Einrichtungsansteuersatz 31, der aus mehreren Einrichtungsansteuerungen gebildet ist. Jede der Einrichtungsansteuerungen hier ist ein Objekt, dem erlaubt wird, unmittelbar auf Hardware zuzugreifen, welche für übliche Computerverarbeitung verwendet wird, beispielsweise die CCD-Kamera (siehe 4) oder einen Timer, und beginnt üblicherweise die Verarbeitung als Antwort auf einen Interrupt (Unterbrechung) durch relevante Hardware (Unterbrechungsprogramm).
  • Ein Roboterserverobjekt 132 befindet sind in einer untersten Ebene der Einrichtungsansteuerebene 130 und umfasst beispielsweise einen virtuellen Roboter 133, der aus einer Software-Programmfamilie besteht, um Schnittstellen bereitzustellen, um auf Hardware zuzugreifen, beispielsweise die verschiedenen Sensoren und Betätigungsorgane 125-1 bis 125-n, die früher beschrieben wurden, einen Leistungsverwalter 134, der aus einer Software-Programmfamilie gebildet wird, hauptsächlich, um das Schalten von Leistung zu verwalten, einen Einrichtungsansteuerverwalter 135, der aus einer Software-Programmfamilie besteht, zum Verwalten verschiedener Einrichtungsansteuerungen, und einen bestimmten Roboter 136, der aus einer Software-Programmfamilie gebildet wird, um Verwaltungsmechanismen der Robotervorrichtung 100 zu steuern.
  • Ein Verwalterobjekt 137 umfasst einen Objektverwalter 138 und einen Dienstverwalter 139. Der Objektverwalter 138 ist eine Software-Programmfamilie, welche zum Verwalten von Aktivierung und Deaktivierung von Software-Programmfamilien geeignet ist, welche im Roboterserverobjekt 132 enthalten ist, einer Middleware-Ebene 140 und einer An wendungsebene 141. Der Dienstverwalter 139 ist eine Software-Programmfamilie zum Verwalten von Verbindungen unter Objekten auf Basis von Information bezüglich Verbindungen unter Objekten, die in einer Verbindungsdatei beschrieben ist, welche auf der Speicherkarte 128 gespeichert ist (siehe 4).
  • Die Middleware-Ebene 140 befindet sich unmittelbar über dem Roboterserverobjekt 132 und besteht aus einer Software-Programmfamilie, um Basisfunktionen der Robotervorrichtung 100 gemäß dieser Ausführungsform bereitzustellen, beispielsweise Bildverarbeitung und Audioverarbeitung. Die Anwendungsebene befindet sich unmittelbar über der Middleware-Ebene 40 und besteht aus einer Software-Programmfamilie zum Bestimmen von Aktionen der Robotervorrichtung 100 auf Basis der Ergebnisse der Verarbeitung durch die Software-Programmfamilie, welche die Middleware-Ebene 140 bildet.
  • 6 zeigt eine spezifische Software-Konfiguration der Middleware-Ebene 140 im Detail.
  • Wie in der Figur gezeigt ist, weist die Middleware-Ebene 140 Erkennungssystem-Middleware 160 auf, einschließlich Signalverarbeitungsmodule 150 bis 158 zur Geräuschermittlung, zur Temperaturermittlung, zur Helligkeitsermittlung, zur Tonumfangermittlung, zur Abstandsermittlung, zur Verhaltensermittlung, den Berührungssensor, zur Bewegungsermittlung bzw. zur Farberkennung, und besitzt ein Eingangssemantik-Umsetzermodul 159. Die Middleware-Ebene 140 besitzt außerdem Ausgangssystem-Middleware 169 einschließlich eines Ausgangssemantik-Umsetzermoduls 168, und umfasst Signalverarbeitungsmodule 161 bis 167 zur Verhaltensverwaltung, zum Aufspüren, zur Bewegungswiedergabe, zum Laufen, zur Sturzentdeckung bzw. zur Audiowiedergabe.
  • Die Signalverarbeitungsmodule 150 bis 158 der Erkennungssystem-Middleware 160 fangen entsprechend verknüpfte Daten von Sensordaten, Bilddaten (Gesichtsbilddaten) und Audiodaten ein, welche vom DRAM 11 gelesen werden (siehe 4) durch den virtuellen Roboter 133 des Roboterserverobjekts 132 gelesen werden, führen vorher festgelegte Verarbeitung auf Basis der Daten durch, und liefern Ergebnisse der Verarbeitung zum Eingangssemantik-Umsetzermodul 159. Der virtuelle Roboter 133 ist beispielsweise so verwirklicht, um Signale auf Basis eines vorher festgelegten Kommunikationsprotokolls auszutauschen oder umzusetzen.
  • Auf Basis der Verarbeitungsergebnisse, welche von den Signalverarbeitungsmodulen 150 bis 158 geliefert werden, erkennt das Eingangssemantik-Umsetzermodul 159 seinen eigenen Status oder Umstände, beispielsweise "geräuschvoll", "heiß", "hell", "Ball ermittelt", "Sturz ermittelt", "angeschlagen", "geschlagen", "Tonskala do, mi, und sol gehört", "Bewregungsobjekt ermittelt", "Hindernis ermittelt", oder "Person A gefunden (erkannt)", und erkennt Instruktionen und Betätigungen durch einen Benutzer, wobei die Erkennungsergebnisse an die Anwendungsebene 141 ausgegeben werden.
  • 7 zeigt einen spezifischen Software-Aufbau der Anwendungsebene 141 im Detail. Wie in der Figur gezeigt ist, weist die Anwendungsebene 141 fünf Module auf, nämlich eine Aktionsmodell-Bibliothek 170, ein Aktionsschaltmodul 171, ein Lernmodul 172, ein Emotionsmodell 173 und ein Instinktmodul 174.
  • 8 zeigt einen spezifischen Software-Aufbau der Aktionsmodell-Bibliothek 170. Wie in der Figur zeigt ist, weist die Aktionsmodell-Bibliothek 170 Aktionsmodelle 170-1 bis 170-n, die unabhängig voneinander sind, auf, die entsprechend mit einer Anzahl vorher ausgewählter Zustände verknüpft sind, beispielsweise "Batterierestladekapazität ist klein", "Entdecken von einem Sturz", "Vermeidung von Hindernis", "Ausdrücken von Emotion", "Ball ermittelt", und "Person A gefunden (erkannt)".
  • Jedes der Aktionsmodelle 170-1 bis 170-n bestimmt bei Empfang eines Erkennungsergebnisses vom Eingangssemantik-Umsetzermodul 159, oder wenn eine vorher festgelegte Zeit seit dem letzten Empfang eines Erkennungsergebnisses verstrichen ist, eine nachfolgende Aktion in Bezug, wenn erforderlich, auf einen relevanten Emotionsparameterwert, der im Emotionsmodell 173 gespeichert ist, und einen relevanten Wunschparameterwert, der im Instinktmodell 174 gespeichert ist, wie später beschrieben wird, wobei ein Bestimmungsergebnis an das Aktionsschaltmodul 171 ausgegeben wird.
  • Bei dieser Ausführungsform bestimmen die Aktionsmodelle 170-1 bis 170-n nachfolgende Aktionen auf Basis eines Algorithmus, der als endlicher Wahrscheinlichkeitsautomat bezeichnet wird, der in 9 gezeigt ist. Wie in der Figur gezeigt ist, kann gemäß dem endlichen Wahrscheinlichkeitsautomat die Bestimmung eines Übergangs von einem Knoten unter Knoten (Zuständen) NODE0 bis NODEn zum anderen Knoten unter den Knoten NODE0 bis NODEn aufgrund von Wahrscheinlichkeit auf Basis von Übergangswahrscheinlichkeiten P1 bis Pn bestimmt werden, die entsprechend für Bögen ARC1 bis ARCn gesetzt werden, welche Knoten NODE0 bis NODEn untereinander verbinden.
  • Insbesondere haben die Aktionsmodelle 170-1 bis 170-n Zustandsübergangstabellen 180, beispielsweise die, welche in 10 gezeigt ist, die entsprechend mit den Knoten NODE0 bis NODEn, die das eigene Aktionsmodell 170-1 bis 170-n bilden, verknüpft sind.
  • In den Zustandsübergangstabellen 180 sind Eingangsereignisse (Erkennungsergebnisse), welche als Zustände für den Übergang bei den Knoten NODE0 bis NODEn dienen, in der Reihenfolge der Priorität auf einer Reihe "Eingangsereignisname" aufgelistet, und weitere Zustände im Hinblick auf die Zustände für den Übergang sind in den verknüpften Spalten auf Reihen "Datenname" und "Datenbereich" vorgeschrieben.
  • Beispielsweise ist beim Knoten NODE100, der in der Zustandsübergangstabelle 180, die in 10 gezeigt ist, dargestellt ist, wenn ein Erkennungsergebnis, welches zeigt "Ball ermittelt (BALL)", vorhanden ist, ein Zustand für einen Übergang zum anderen Knoten so, dass die "Größe (SIZE)" des Balls, die zusammen mit dem Erkennungsergebnis angegeben wird, in einem Bereich "0 bis 1000" liegt. Wenn ähnlich ein Erkennungsergebnis, welches zeigt "Hindernis ermittelt (OBSTACLE)", vorhanden ist, ist ein Zustand für einen Übergang zum anderen Knoten so, das der "Abstand (DISTANCE)" zum Hindernis, der zusammen mit dem Erkennungsergebnis angegeben wird, in einem Bereich von "0 bis 100" liegt.
  • Sogar, wenn kein Erkennungsergebnis zugeführt wird, wird es dem Knoten NODE100 erlaubt, zu einem anderen Knoten überzugehen, wenn einer der Parameterwerte "Spiel (JOY)", "Überraschung (SURPRISE)" und "Traurigkeit (SUDNESS)" unter den Emotions- und Wunschparameterwerten, die entsprechend im Emotionsmodell 173 und im Instinktmodell 174 gespeichert sind, der periodisch durch die Aktionsmodelle 170-1 bis 170-n bezogen wird, in einem Bereich von "50 bis 100" liegt.
  • Außerdem sind in den Zustandsübergangstabellen 130 Namen von Knoten, für die erlaubt wird, dass die Knoten NODE0 bis NODEn übergehen, in einer Spalte "Übergangsbestimmungsknoten" in einem Abschnitt "Wahrscheinlichkeiten von Übergang zu anderen Knoten" aufgelistet, und Wahrscheinlichkeiten eines Übergangs zu anderen Knoten NODE0 bis NODEn, für die erlaubt wird, Bestimmungsorte von Übergängen zu sein, wenn alle Bedingungen in den Reihen "Eingangsereignisname", "Datenwert" und "Datenbereich" erfüllt sind, sind in entsprechenden Teilen des Abschnitts "Wahrscheinlichkeiten des Übergangs zu anderen Knoten" vorgeschrieben, und Aktionen, die beim Übergang zu anderen Knoten NODE0 bis NODEn auszuführen sind, sind in einer Reihe "Ausgabeaktion" im Abschnitt "Wahrscheinlichkeiten des Übergangs zu anderen Knoten" vorgeschrieben. Die Summe an Wahrscheinlichkeiten in jeder Reihe des Abschnitts "Wahrscheinlichkeiten eines Übergangs zu anderen Knoten" beträgt 100%.
  • Somit tritt bei dem Knoten NODE100, der in der Zustandsübergangstabelle 180 gezeigt ist, welche in 10 gezeigt ist, beispielsweise, wenn ein Erkennungsergebnis, welches zeigt "Ball ermittelt (BALL)" und "Größe (SIZE)" des Balls in einem Bereich von "0 bis 1000" liegt, vorhanden ist, ein Übergang zum Knoten NODE120 (node 120)" auf mit einer Wahrscheinlichkeit von 30%, wobei in diesem Fall eine Aktion "ACTION1" ausgegeben wird, d.h., durch die Vorrichtung durchgeführt wird.
  • Die Aktionsmodelle 170-1 bis 170-n sind entsprechend als Ketten der Knoten NODE0 bis NODEn definiert, wie in den Zustandsübergangstabellen 180 vorgeschrieben. Wenn somit beispielsweise ein Erkennungsergebnis für das Eingangssemantik-Umsetzermodul 159 gegeben ist, wird die nachfolgende Aktion aufgrund der Wahrscheinlichkeit auf Basis der Zustandsübergangstabelle eines relevanten der Knoten NODE0 bis NODEn bestimmt, wobei ein Bestimmungsergebnis an das Aktionsschaltmodul 171 ausgegeben wird. Durch Bereitstellen eines Eintrags mit einem Eingangsereignisname "Person A gefunden (erkannt)" und durch Vorschreiben eines Zustands zum Übergang und dgl. in der Statusübergangstabelle, welche in 10 gezeigt ist, ist es möglich, eine Reaktion, die zu unternehmen ist, zu diktieren, wenn die Robotervorrichtung 100 einen bestimmten Benutzer erkennt.
  • Aus den Aktionen, welche entsprechend von den Aktionsmodellen 170-1 bis 170-n der Aktionsmodell-Bibliothek 170 ausgegeben werden, wählt das Aktionsschaltmodul 171, welches in 7 gezeigt ist, eine Aktion aus, welche durch eines der Aktionsmodelle 170-1 bis 170-n ausgegeben wird, welches eine Priorität hoher Ordnung hat, die vorher bestimmt wurde, und überträgt einen Befehl zum Ausüben der Aktion (anschließend als "Aktionsbefehl" bezeichnet) zum Ausgangssemantik-Umsetzermodul 168 der Middleware-Ebene 140. Bei dieser Ausführungsform haben die Aktionsmodelle 170-1 bis 170-n höhere Prioritätsordnung, da sie nach unten in 8 gehen.
  • Auf Basis der Aktionsbeendigungsinformation, welche vom Ausgangssemantik-Umsetzermodul 168 nach Beendigung einer Aktion ausgegeben wird, informiert das Aktionsschaltmodul 171 das Lernmodul 172, das Emotionsmodell 173 und das Instinktmodell 174 über die Beendigung der Aktion.
  • Von den Erkennungsergebnissen, die durch das Eingangssemantik-Umsetzermodul 159 erlangt werden, empfängt das Lernmodul 172 das Eingangssignal eines Erkennungsergebnisses des Lernens, beispielsweise "Schlag" oder "geschlagen", welches durch eine Betätigung durch einen Benutzer empfangen wird.
  • Auf Basis des Erkennungsergebnisses und der Mitteilung durch das Aktionsschaltmodul 171 modifiziert das Lernmodul 172 eine relevante Übergangswahrscheinlichkeit eines relevanten der Aktionsmodelle 170-1 bis 170-n, um somit die Wahrscheinlichkeit eines Auftretens der Aktion zu reduzieren, wenn "Schlag (gescholten)", während die Wahrscheinlichkeit eines Auftretens der Aktion erhöht wird, wenn "geschlagen (gerühmt)".
  • Das Emotionsmodell 173 hält Parameter, welche Intensitäten von sechs Emotionen insgesamt darstellen, nämlich "Spiel", "Traurigkeit", "Ärger", "Überraschung", "Empörung" bzw. "Gefahr". Das Emotionsmodell 173 aktualisiert periodisch Parameterwerte der entspre chenden Emotionen auf Basis von bestimmten Erkennungsergebnissen, beispielsweise "Schlag" und "geschlagen", die durch das Eingangssemantik-Umsetzermodul 159 angegeben werden, einer Ablaufzeit, Mitteilungen durch das Aktionsschaltmodul 171, usw..
  • Insbesondere, wenn angenommen wird, dass ΔE[t] eine Variationsmenge bei einer Emotion in diesem Zeitpunkt bezeichnet, berechnet gemäß einer vorher bestimmten Formel auf Basis eines Erkennungsergebnisses, welches durch das Eingangssemantik-Umsetzermodul 159 angegeben wird, einer Aktion der Robotervorrichtung 100 in diesem Zeitpunkt, einer Ablaufzeit seit dem letzten Aktualisieren usw., dass E(t) einen aktuellen Parameterwert der Bewegung bezeichnet, und ke einen Koeffizienten bezeichnet, der die Empfindlichkeit der Emotion zeigt, dann das Emotionsmodell 173 einen Parameterwert E[t + 1] der Emotion in der nächsten Periode durch die Gleichung (1) unten, der durch den aktuellen Parameterwert E[t] der Emotion ersetzt wird, um den Parameterwert der Emotion zu aktualisieren. Das Emotionsmodell 173 aktualisiert in ähnlicher Weise die Parameterwerte aller Emotionen. E[t + 1] = E[t] + ke × ΔE[t] (1)
  • Das Ausmaß, bis zu dem die Höhe der Variation ΔE[t] des Parameterwerts von jeder der Emotionen durch die Erkennungsergebnisse und die Informationen beeinträchtigt wird, wird durch das Ausgangssemantik-Umsetzermodul 168 vorher festgelegt. Beispielsweise beeinträchtigt ein Erkennungsergebnis, welches "Schlag" zeigt, signifikant die Höhe der Variation ΔE[t] des Parameterwerts, der die Emotion "Ärger" zeigt. Ein Erkennungsergebnis, welches "geschlagen" zeigt, beeinträchtigt signifikant die Höhe der Variation ΔE[t] des Parameterwerts, der die Emotion "Spiel" zeigt.
  • Die Mitteilungen durch das Ausgangssemantik-Umsetzermodul 168 entsprechen dem, was als Rückführinformation von Aktionen (Aktionsbeendigungsinformation) bekannt ist, d.h., Information, welche Ergebnisse über das Auftreten von Aktionen zeigt. Das Emotionsmodell 173 ändert außerdem die Emotion gemäß dieser Information. Beispielsweise vermindert eine Aktion "bellen" den Pegel der Emotion eines Ärgers. Die Meldungen durch das Ausgangssemantik-Umsetzermodul 168 werden außerdem dem Lernmodul 172 wie früher beschrieben zugeführt. Das Lernmodul 172 modifiziert relevante Übergangswahrscheinlichkeiten der Aktionsmodelle 170-1 bis 170-n auf Basis der Meldungen.
  • Das Rückführen von Aktionsergebnissen kann durch Ausgangssignal des Aktionsschaltmoduls 171 bereitgestellt werden (Aktionen mit Emotionen).
  • Das Instinktmodul 174 hält Parameter, welche die Intensitäten von vier Wünschen zeigen, unabhängig voneinander, nämlich "Übung", "Beeinträchtigung", "Appetit" und "Neugierigkeit". Das Instinktmodul 174 aktualisiert periodisch Parameterwerte von Wünschen auf Basis von Erkennungsergebnissen, welche durch das Eingangssemantik-Umsetzermodul 159 geliefert werden, einer Ablaufzeit, Meldungen durch das Aktionsschaltmodul 171, usw..
  • Insbesondere verwendet in Bezug auf "Übung", "Beeinträchtigung" und "Neugierigkeit" das Instinktmodul 174 die Gleichung (2) unten, bei der ΔI[k] eine Variationshöhe bei einem relevanten Wunsch in diesem Zeitpunkt bezeichnet, was gemäß einer vorher festgelegten Formel berechnet wird, auf Basis von Erkennungsergebnissen, einer Ablaufzeit und Mitteilungen des Ausgangssemantik-Umsetzermoduls 168, usw., I[k] einen aktuellen Parameterwert des Wunsches bezeichnet und ki einen Koeffizienten bezeichnet, der die Sensitivität des Wunsches zeigt, um einen Parameterwert I[k + 1] des Wunsches in einer nächsten Periode zu berechnen, wodurch der aktuelle Parameterwert I[k] des Wunsches durch das Berechnungsergebnis ersetzt wird, um den Parameterwert des Wunsches zu aktualisieren. Das Instinktmodul aktualisiert ähnlich Parameterwerte aller Wünsche mit Ausnahme für "Appetit". I[k + 1] = I[k] + ki × ΔI[k] (2)
  • Das Ausmaß, bis zu dem die Höhe einer Variation ΔI[k] eines jeden der Wünsche durch Erkennungsergebnisse, Meldungen durch das Ausgangssemantik-Umsetzermodul 168 usw. beeinträchtigt wird, wird vorher festgelegt. Beispielsweise beeinträchtigen Meldungen durch das Ausgangssemantik-Umsetzermodul 168 signifikant die Höhe einer Variation ΔI[k] des Parameterwerts, der "müde" zeigt.
  • Bei dieser Ausführungsform ist jeder der Parameterwerte der Emotionen und Wünsche (Instinkte) so beschränkt, um innerhalb eines Bereichs von 0 bis 100 zu variieren, und Werte von Koeffizienten ki und ke werden individuell für die Bewegungen und Wünsche festgelegt.
  • Das Ausgangssemantik-Umsetzermodul 168 der Middleware-Ebene 140 liefert einen abstrakten Aktionsbefehl, beispielsweise "Fortschritt", "Spiel", "Sprache" oder "Spur (Spur eines Balls)", was von dem Aktionsschaltmodul 171 der Anwendungsebene 141 wie oben beschrieben geliefert wird, zu den relevanten Signalverarbeitungsmodulen 161 bis 167 im Ausgangssystem-Semantik-Umsetzermodul 169.
  • Danach erzeugen die Signalverarbeitungsmodule 161 bis 167 bei Empfang eines Aktionsbefehls Ansteuerdaten, beispielsweise einen Servobefehlswert, der zu einem relevanten der Betätigungsorgane 125-1 bis 125-n (siehe 4) zu liefern ist, um die Aktion durchzuführen, oder Audiodaten eines Tons, welche vom Lautsprecher 124 ausgegeben werden sollen, auf Basis des Aktionsbefehls, und leiten sequentiell die Daten weiter zu den relevanten Betätigungsorganen 125-1 bis 125-n oder zum Lautsprecher 124 über den virtuellen Roboter 133 des Roboterserverobjekts 132 und die Signalverarbeitungsschaltung 114.
  • Wie oben beschrieben ist die Robotervorrichtung 100 eingerichtet, um sich autonom gemäß dem Steuerprogramm gemäß ihrem eigenen (internen) Status und (externen) Umständen und Instruktionen und Betätigungen durch einen Benutzer zu verhalten.
  • C. Gesichterkennung durch die Robotervorrichtung
  • Eine intelligente Robotervorrichtung erfordert menschliche Schnittstellenverfahren, die eine Antwort innerhalb einer vorher festgelegten Zeit unter einer dynamisch sich ändernden Betriebsumgebung zulassen. Die Robotervorrichtung 100 nach dieser Ausführungsform lässt unter Verwendung von Gesichtserkennungsverfahren eine Unterscheidung eines Benutzers (Eigner, Freund oder legitimierter Benutzer) unter vielen zu, und steuert Reaktionen auf Basis von Erkennungsergebnissen (d.h. in Abhängigkeit von Benutzern), um einen höheren Wert an Unterhaltung zu erzielen.
  • Ein Gesichtserkennungssystem 1000 nach dieser Ausführungsform, welches in der Lage ist, innerhalb einer vorher festgelegten Zeit unter einer dynamisch sich ändernden Umgebung zu antworten, weist einen Gesichtsextraktions-Verarbeitungsabschnitt 1001 auf, um ein Gesichtsmuster von einem Bild zu extrahieren, welches durch eine CCD-Kamera eingefangen ist, und einen Gesichtserkennungsabschnitt 1002, um ein Gesicht auf Basis des extrahierten Gesichtsmusters zu erkennen. Bei dieser Ausführungsform wird das "Gabor-Filtern", bei dem mehrere Filter, welche Orientierungsselektivität haben und welche mit verschiedenen Frequenzkomponenten in Verbindung sind, um Merkmale eines Gesichtsbilds zu extrahieren, für die Gesichtsextraktionsverarbeitung verwendet, um ein Gesichtsmuster zu extrahieren (extrahieren von Merkmalen eines Gesichtsbilds). Bei der Gesichtserkennungsverarbeitung zum Erkennen eines Gesichts vom Gesichtsmuster wird eine Unterstützungsvektormaschine (SVM) verwendet, bei der eine nichtlineare Abbildung unter Verwendung einer Kernel-Funktion und einer Hyper-Ebene durchgeführt wird, welche sich in einen Merkmalsraum aufteilt, nachdem das Abbilden erlangt wird, wodurch ein bestimmtes Gesicht von anderen Gesichtern unterschieden wird.
  • Das Gesichtserkennungssystem 1000 besitzt eine Lernstufe, in welcher der Gesichtserkennungsabschnitt ein Gesichtsmuster erlernt, und eine Erkennungsstufe, in der ein Gesichtsmuster, welches durch ein eingefangenes Bild extrahiert wird, auf Basis der erlernten Daten erkannt wird.
  • 11 zeigt den Aufbau der Lernstufe des Gesichtserkennungssystems 1000 dieser Ausführungsform, und 12 zeigt den Aufbau der Erkennungsstufe des Gesichtserkennungssystems 1000.
  • Wie in 11 gezeigt ist, wird in der Lernstufe ein Gesicht durch Gabor-Filterung 1001 von einem eingefangenen Bild eines Benutzers extrahiert, das von einer CCD-Kamera zugeführt wird, und das Ergebnis einer Unterstützungsvektormaschine 1002 zugeführt. Die Unterstützungsvektormaschine 1002 erlangt eine provisorische Unterscheidungsfunktion unter Verwendung extern gelieferter Daten zum Lernen, d.h. Lehrerdaten.
  • Wie in 12 gezeigt ist, wird in der Erkennungsstufe ein Gesicht durch Gabor-Filterung 1001 von einem eingefangenen Bild eines Benutzers extrahiert, welches von einer CCD-Kamera zugeführt wird, und das Ergebnis wird der Unterstützungsvektormaschine 1002 zugeführt. Die Unterstützungsvektormaschine 1002 prüft die provisorische Unterscheidungsfunktion bezüglich verschiedener Bilder in einer Datenbank, um ein Gesicht zu ermitteln. Ein Gesicht, welches erfolgreich ermittelt wurde, wird als Gesichtsdaten ausgegeben. Gesichter, welche nicht ermittelt werden konnten, werden den Lerndaten als Nicht-Gesichts-Daten hinzugefügt, und das Lernen wird wiederum durchgeführt.
  • Die Gabor-Filterung und die Unterstützungsvektormaschine werden anschließend im Detail beschrieben.
  • Gabor-Filterung
  • Man hat herausgefunden, dass einige menschliche optische Zellen Selektivität für bestimmte Orientierung haben. Diese Zellen umfassen Zellen, welche als Antwort auf vertikale Linien zünden, und Zellen, welche auf horizontalen Linien antworten. Ähnlich ist die Gabor-Filterung räumliche Filterung, welche durch mehrere Filter verwirklicht wird, welche Orientierungsselektivität haben.
  • Ein Gabor-Filter wird räumlich durch eine Gabor-Funktion dargestellt. Eine Gabor-Funktion g(x, y) umfasst einen Träger s(x, y), der aus Kosinus-Komponenten zusammengesetzt ist, und eine Hüll-Kurve wr(x, y), die eine zweidimensionale Gauss-Verteilung hat, wie in der Gleichung (3) unten zum Ausdruck kommt: g(x, y) = s(x, y) wr(x, y) (3)
  • Der Träger s(x, y) wird durch die Gleichung (4) unten unter Verwendung einer komplexen Funktion dargestellt, wo ein Koordinatenwert (u0, v0) eine räumliche Frequenz bezeichnet und P eine Phase von Kosinus-Komponenten bezeichnet: s(x, y) = exp(j(2π(u0x + v0y) + P)) (4)
  • Der Träger, der durch die Gleichung (4) oben ausgedrückt wird, kann in eine Realkomponente Re(s(x, y)) und eine Imaginärkomponente Im (s(x, y)) getrennt werden, wie durch die Gleichung (5) unten zum Ausdruck kommt. Re(s(x, y)) = cos(2π(u0x + v0y) + P Im(s(x, y)) = sin(2π(u0x + v0y) + P) (5)
  • Die Hüll-Kurve, welche eine zweidimensionale Gauss-Verteilung hat, wird durch eine Gleichung (6) unten ausgedrückt: wr(x, y) = K exp(–π(α2(x – x0)r 2 + b2(y – y0)r 2)) (6)
  • Der Koordinatenwert (x0, y0) entspricht einem Spitzenwert der Funktion, und die Konstanten a und b sind Maßstabsparameter der Gauss-Verteilung. Der Index r bezeichnet eine Drehoperation, welche in der Gleichung (7) unten zum Ausdruck kommt (x – x0)r = (x – x0)cosθ + (y – y0)sinθ (y – y0)r = –(x – x0)sinθ + (y – y0)cosθ (7)
  • Aus den Gleichungen (4) und (6) oben wird das Gabor-Filter als eine räumliche Funktion ausgedrückt, welche in der Gleichung (8) unten zum Ausdruck kommt. g(x, y) = K exp(–π(α2(x – x0)r 2 + b2(y – y0)r 2)) exp(j(2π(u0x + v0y) + P)) (8)
  • Der Gesichtsextraktionsabschnitt 1001 bei dieser Ausführungsform verwendet acht Richtungen und drei Frequenzen, um die Gesichtsextraktionsverarbeitung unter Verwendung von 24 Gabor-Filtern insgesamt auszuführen. 13 bis 36 zeigen Raumbereichs-Kenndaten der Gabor-Filter, welche bei dieser Ausführungsform verwendet werden. Von den Figuren zeigen 13 bis 20 Gabor-Filter in Verbindung mit Hochfrequenzkomponenten, bei denen die Richtung mit Inkrementen von 22,5° variiert wird. 21 bis 28 zeigen Gabor-Filter in Verbindung mit mittleren Frequenzkomponenten, bei denen die Richtung mit Inkrementen von 22,5° variiert wird. 29 bis 36 zeigen Gabor-Filter in Verbindung mit Niedrigfrequenzkomponenten, bei denen die Richtung mit Inkrementen von 22,5° variiert wird. Es soll verstanden sein, dass die Schattierung in den Figuren Komponenten in der Richtung einer Koordinatenachse zeigt, die senkrecht zum Blatt ist.
  • Die Antwort der Gabor-Filter wird durch die Gleichung (9) unten ausgedrückt, wobei Gi ein i-tes Gabor-Filter zeigt, Ji ein Ergebnis des i-ten Gabor-Filters (Gabor-Jet) bezeichnet, und I ein Eingangsbild zeigt. Die Berechnung der Gleichung (9) kann aktuell schnell unter Verendung der schnellen Fourier-Transformation ausgeführt werden. Ji(x, y) = Gi(x, y) ⊗ I(x, y) (9)
  • 38 bis 61 zeigen Ergebnisse einer Filterung eines Eingangsbilds (das Eingangsbild hat 20×20 Pixel), welches in 37 gezeigt ist, durch Gabor-Filter, welche in 13 bis 36 entsprechend gezeigt sind. Die Gabor-Filter überdecken im Wesentlichen alle Frequenzen.
  • Die Leistung der Gabor-Filter, die vorbereitet sind, wird durch Rekonstruieren gefilterter Bilder getestet. Die rekonstruierten Bilder H werden durch die Gleichung (10) unten ausgedrückt.
  • Figure 00250001
  • Ein Fehler eines rekonstruierten Bilds gegenüber dem Eingangsbild I wird durch Gleichung (11) unten ausgedrückt.
  • Figure 00250002
  • Das Rekonstruieren wird dadurch zugelassen, dass ein Optimum erlangt wird, welches den Fehler E minimiert.
  • Unterstützungsvektormaschine
  • Bei dieser Ausführungsform wird in Bezug auf die Gesichtserkennung ein Zielgesicht von anderen Gesichtern unter Verwendung einer Unterstützungsvektormaschine (SVM) unterschieden, welche am besten in Bezug auf die Fähigkeit einer Generalisieren beim Lernen auf dem Gebiet der Mustererkennung bekannt ist.
  • Eine SVM selbst ist beispielsweise in einem Bericht von B. Sholkopf, et al, (B. Sholkopf, C. Burges, A. Smola, "Advance in Kernel Methods Support Vector Learning" The MIT Press, 1999) beschrieben. Ergebnisse von vorbereitenden Experimenten durch die Erfinder nach der vorliegenden Erfindung zeigen, dass die Gesichtserkennung auf Basis von SVM bessere Ergebnisse als Verfahren auf Basis prinzipieller Komponentenanalyse (PCA) oder eines neuralen Netzwerks erzielt.
  • SVM ist eine Lernmaschine, welche einen Linear-Diskriminator (Perceptron) als Unterscheidungsfunktion verwendet, und kann auf einen nichtlinearen Raum unter Verwen dung einer Kernel-Funktion erweitert werden. Die Unterscheidungsfunktion wird durch Maximieren einer Grenze zum Trennen von Klassen erlernt, und eine Lösung wird durch Lösen eines zweidimensionalen mathematischen Einebnungsproblems erlangt, welches theoretisch sicherstellt, dass eine globale Lösung gefunden werden kann.
  • Üblicherweise wird ein Problem der Mustererkennung auf die Berechnung einer Unterscheidungsfunktion (fx) unten für eine Testprobe x = (x1, x2, ...xn) reduziert.
  • Figure 00260001
  • Eine Lehrer-Bezeichnung zum Erlernen von SVM wird wie folgt bezeichnet: y = (y1, y2, ..., yn) (13)
  • Dann kann die Erkennung eines Gesichtsmusters durch SVM als ein Problem angesehen werden, das Quadrat eines Wichtungsfaktors w unter der folgenden Beschränkung zu minimieren. yi(wTxi + b) ≥ 1 (14)
  • Das Problem mit der Beschränkung kann durch ein unbestimmtes Konstant-Verfahren nach Lagrange gelöst werden. Zunächst wird Lagrange unten eingeführt:
    Figure 00260002
  • Danach wird Partialdifferenzierung mit Bezug auf jeweils von b und w ausgeführt.
  • Figure 00260003
  • Somit kann die Unterscheidung eines Gesichtsmusters durch SVM als ein Problem zweidimensionaler Einebnung wie folgt unten ausgedrückt werden:
    Figure 00260004
    Beschränkungen: αi ≥ 0, Σαiyi = 0
  • Wenn die Gradanzahl des Merkmalraums kleiner ist als die Anzahl von Trainingsbeispielen, werden die Beschränkungen modifiziert, wie unten zum Ausdruck kommt, wobei eine Schlupfvariable ζ ≥ eingeführt wird. yi(wT xi + b) ≥ 1 – ξi (18)
  • Optimierung wird zugelassen, wobei eine Objektfunktion unten minimiert wird.
  • Figure 00270001
  • In der Gleichung (19) oben bezeichnet C einen Koeffizienten, der spezifiziert, bis zu welchem Ausmaß die Beschränkung einen Schlupf hat, dessen Wert experimentell bestimmt werden muss.
    Figure 00270002
    Beschränkungen: 0 ≤ αi ≤ C, Σaiyi = 0
  • Die Gleichung (20) erlaubt jedoch nicht unmittelbar, dass ein nichtlineares Problem gelöst wird. Somit wird bei dieser Ausführungsform eine Kernel-Funktion K(x, x') zum Abbilden auf einen Raum einer höheren Dimension eingeführt (Kernel-Trick), was lineare Trennung in diesem Raum zulässt. Dies ist äquivalent einer nichtlinearen Trennung im Ursprungsraum.
  • Die Kernel-Funktion wird durch die folgende Gleichung unter Verwendung einer Abbildung ϕ ausgedrückt. K(x, x') = Φ(x)T Φ(x') (21)
  • Die Unterscheidungsfunktion, die in Gleichung (12) ausgedrückt wird, kann wie unten ausgedrückt werden. f(Φ(x)) = wT Φ(x) + b = ΣaiyiK(x, xi) + b (22)
  • Das Lernen kann als ein Problem angesehen werden, wobei zweidimensionale Einebnung wie unten ausgedrückt in betracht gezogen wird.
    Figure 00270003
    Beschränkungen: 0 ≤ αi ≤ C, Σαiyi = 0
  • Als Kernel kann beispielsweise ein Gauss-Kernel (Radius-Basis-Funktion (RBF)), welches unten zum Ausdruck kommt, verwendet werden.
  • Figure 00270004
  • In Bezug auf Gabor-Filterung kann das Filter in Abhängigkeit von Erkennungsaufgaben geändert werden.
  • Um bei niedrigen Frequenzen zu filtern, ist es überflüssig, alle gefilterten Bilder in Form von Vektoren zu halten. Somit können die gefilterten Bilder mit verminderter Rate abgetastet werden, um die Dimension der Vektoren zu reduzieren. Die 24 mit verminderter Rate abgetasteten Vektoren werden in einer Linie angeordnet, um einen langen Vektor zu bilden.
  • Die SVM, welche zur Erkennung eines Gesichtsmusters bei dieser Ausführungsform verwendet wird, welches ein Diskriminator ist, der das Merkmalsmuster in zwei klassifiziert, führt das Lernen durch, um somit zu entscheiden, ob eine Person "Person A" oder "Nicht-Person A" ist. Somit werden zunächst Gesichtsbilder Person A von Bildern in einer Datenbank gesammelt, und ein Vektor, der durch Gabor-Filterung erlangt wird, wird als "Nicht-Person A" etikettiert. Allgemein ist die Anzahl von Gesichtsbildern vorzugsweise größer als die Abmessung des Merkmalraums. Wenn Gesichter von 10 Personen zu erkennen sind, wird ein Diskriminator ähnlich für jede der Personen verwirklicht, beispielsweise "Person B" oder "Nicht-Person B".
  • Durch Lernen wie oben beschrieben wird beispielsweise ein Unterstützungsvektor, der "Person A" und "Nicht-Person A" klassifiziert, erlangt. Die SVM ist ein Diskriminator, der den Merkmalsraum in zwei klassifiziert, und wenn ein neues Merkmal-Gesichtsbild zugeführt wird, gibt die SVM ein Erkennungsergebnis gemäß aus, auf welcher Seite der Grenze, welche durch den Unterstützungsvektor diktiert wird, ein Vektor der Gabor-Filterung ist. Wenn der Vektor im Bereich der "Person A" in Bezug auf die Grenze ist, hat die Erkennung "Person A" zum Ergebnis. Wenn der Vektor im Bereich "Nicht-Person A" bleibt, die Erkennung "Nicht-Person A" zum Ergebnis.
  • Ein Bereich, der als Gesichtsbereich vom Eingangsbild extrahiert wird, welches von CCD-Kamera oder dgl. zugeführt wird, ist nicht fest. Somit könnte der Bereich auf einen Punkt fern von einer Kategorie projiziert werden, der im Merkmalsraum erkannt werden soll. Somit könnte die Erkennungsrate verbessert werden, indem Merkmalsteile geschätzt werden, beispielsweise Augen, die Nase und der Mund und durch Ausführen von Gestaltung durch affine Transformation.
  • Außerdem kann ein Bootstrap-Verfahren verwendet werden, um die Erkennungsleistung zu verbessern. Ein Bild wird separat von einem Bild eingefangen, welches zum Lernen verwendet wird, und es wird für Bootstrap verwendet. Dies zeigt, dass, wenn ein Diskriminator ein fehlerhaftes Erkennungsergebnis nach dem Lernen ausgibt, das Eingangsbild in einen Lernsatz geworfen wird, um wiederum zu lernen.
  • Um die Erkennungsleistung weiter zu verbessern, kann die zeitliche Änderung der Erkennungsergebnisse überwacht werden. Beim einfachsten Verfahren wird eine Person als "Person A" erkannt, wenn diese als "Person A" 8 Mal erkannt wird. Andere Verfahren wurden vorgeschlagen, einschließlich ein Vorhersageverfahren auf Basis einer Kalman-Filterung.
  • Weitere Ausführungsformen
  • Wie oben beschrieben kann der Gesichtsextraktionsabschnitt 1001 die Art der Gabor-Filter in Abhängigkeit von Erkennungsaufgaben ändern. Insbesondere bezieht sich die Art der Gabor-Filter hier auf das Einstellen der Anzahl von Frequenzen und entsprechender Werte davon und der Anzahl von Richtungen und der entsprechenden Richtungen.
  • Bei der oben beschriebenen Ausführungsform sind Gabor-Filter, die drei Arten von Frequenz haben, vorgesehen; ein Gesichtsbild kann jedoch mit einzigen Frequenz erkannt werden. Dies reduziert die Berechnungsmenge, obgleich die Erkennungsrate vermindert sein könnte. Die Verminderung der Berechnungsmenge ist ein signifikanter Vorteil bei einem Unterhaltungsroboter, der beschränkte Computerresourcen für eine große Anzahl von Programmen verbraucht, einschließlich Programmen, um Arbeitsweisen und Programme zu steuern, um den internen Status (Emotionen und Instinkte) zu steuern.
  • Der Roboter 100 (siehe 1 bis 3), der das Gesichtserkennungssystem nach der Ausführungsform hat, welches darauf befestigt ist, erlangt Entfernungsinformation von stereoskopischen Ansichten durch beispielsweise zwei Kameras. Die Gabor-Filter können unter Verwendung der Abstandsinformation abgestimmt werden.
  • Die Beziehung zwischen Gesichtsgrößen und Abstand kann vorher erlangt werden. Außerdem existiert eine bestimmte Beziehung zwischen Größen von Gesichtsbildern und Frequenzen von Gabor-Filtern. Das heißt, es muss Merkmalsextraktion mit einer hohen Frequenz ausgeführt werden, wenn ein Gesichtsbild klein ist, während eine niedrige Frequenz reicht, wenn das Gesichtsbild groß ist.
  • Wenn ein Eingangsbild nicht eine Extraktion eines Gesichtsbereichs ist, muss ein Bereich eines Gesichts bestimmt werden, und die Identifikation des Gesichts muss von dem Gesamtbild unterschieden werden. In diesem Fall kann eine Frequenz gemäß dem Abstand auf Basis einer Verteilung von Entfernungsbildern ausgewählt werden. Als Ergebnis von oben wird durch eine nachfolgende Unterstützungsvektormaschine (SVM, später beschrieben) unterschieden.
  • Ein Verfahren zur Gesichtsextraktionsverarbeitung durch Gabor-Filter unter Verwendung von Abstandsinformation wird unten beschrieben.
  • Vorbereitung
    • 1. Die Beziehung zwischen Gesichtsgrößen (T Pixel×T Pixel) und dem Abstand (M cm) in Bildern wird erlangt. In 62 entspricht die Horizontalachse dem Abstand, und die Vertikalachse entspricht der Größe eines Gesichtsbilds. Auf der Vertikalachse wird angenommen, dass jedes Gesichtsbild ein Quadrat ist, und die Länge einer Seite davon wird gezeigt. Beispielsweise wird ein Bild in einem vorher festgelegten Abstand eingefangen, und die Größe eines Gesichtsbereichs im Bild wird durch eine Person gemessen.
    • 2. Spitzenwerte im Frequenzbereich werden durch schnelle Fourier-Transformation (FFT) von Gesichtbildern entsprechender Größen erlangt (siehe 63). Gesichtsbilder verschiedener Größen werden eingefangen, und Spitzenwerte der Frequenz werden entsprechend dafür erhalten.
    • 3. Beziehung zwischen Entfernung und Frequenz wird erlangt (siehe 64). Auf Basis von 1 und 2 oben wird die Beziehung zwischen Abstand und Frequenz, welche in 64 gezeigt ist, erhalten.
  • Erkennung (siehe 65)
    • 1. Der Abstand wird für ein Bild erhalten. (dreidimensionale Koordinatenwerte werden entsprechend für Pixel im Bild bestimmt).
    • 2. Eine Frequenz wird aus dem Abstand berechnet Eine Frequenz wird auf Basis der Beziehung berechnet, welche im Schritt 3 der Vorbereitung erhalten wird.
    • 3. Ein Merkmal wird durch ein Gabor-Filter in Verbindung mit der berechneten Frequenz extrahiert.
    • 4. Ein resultierendes Bild wird durch eine Unterstützungsvektormaschine unterschieden, um zu bestimmen, ob das Bild einem bestimmten Gesicht oder nicht entspricht.
  • Ergänzung
  • Obwohl die vorliegende Erfindung oben in Zusammenhang mit speziellen Ausführungsformen beschrieben wurde, soll schnell verstanden sein, dass Modifikationen oder Alternativen der Ausführungsformen durch den Fachmann ausgeführt werden können, ohne den Rahmen der vorliegenden Erfindung zu verlassen.
  • Die vorliegende Erfindung ist im Wesentlichen nicht notwendigerweise auf Produkte begrenzt, welche als "Roboter" bezeichnet werden. Das heißt, die vorliegende Erfindung kann ähnlich auf Maschinenvorrichtungen angewandt werden, welche in einer Art und Weise arbeiten, die menschliche Betätigungen durch elektrische oder magnetische Wirkungen simulieren, sogar wenn die Produkte anderen industriellen Feldern angehören, beispielsweise Spielzeugen.
  • Das heißt, die vorliegende Erfindung wurde als Beispiel offenbart, und die Offenbarung in dieser Beschreibung sollte nicht so ausgedacht sein, beschränkend zu sein. Der Rahmen der vorliegenden Erfindung ist auf Basis der Patentansprüche bestimmt.
  • Industrielle Verwertbarkeit
  • Gemäß der vorliegenden Erfindung sind eine Robotervorrichtung, welche mit einer menschlichen Schnittstelle versehen ist, welche eine Antwort innerhalb einer vorher festgelegten Zeit unter einer dynamisch sich ändernden Betriebsumgebung zuzulassen, und eine günstiges Gesichtserkennungsverfahren und eine Gesichtserkennungsvorrichtung, welche als menschliche Schnittstelle für einen Roboter verwendet werden kann, vorgesehen.
  • Außerdem sind gemäß der vorliegenden Erfindung eine vorteilhafte Robotervorrichtung, ein Gesichtserkennungsverfahren und eine Gesichtserkennungsvorrichtung, die Erkennung eines Gesichts eines Benutzers innerhalb einer vorher festgelegten Zeit unter einer dynamisch sich ändernden Betriebsumgebung zulassen, vorgesehen.
  • Außerdem sind gemäß der vorliegenden Erfindung eine vorteilhafte Robotervorrichtung, ein Gesichtserkennungsverfahren und eine Gesichtserkennungsvorrichtung, die kein Positionieren erfordern, beispielsweise Gestaltung, und die eine robuste Gesichtserkennung gegenüber Drehung, Änderung der Position und dgl. zulassen, vorgesehen.
  • Außerdem sind gemäß der vorliegenden Erfindung eine vorteilhafte Robotervorrichtung, ein Gesichtserkennungsverfahren und eine Gesichtserkennungsvorrichtung, welche robuste Gesichtserkennung unter Umgebung mit unterschiedlichen Beleuchtungszuständen und Kameraparametern zulassen, vorgesehen.

Claims (9)

  1. Gesichterkennungsvorrichtung (1000), welche aufweist: eine Bildeinfangeinrichtung zum Einfangen eines Gesichtsbilds; eine Gesichtsmerkmal-Extraktionseinrichtung (1001) zum Extrahieren von Merkmalen des Gesichtsbilds unter Verwendung von mehreren Filtern, welche Orientierungsselektivität haben und welche mit unterschiedlichen Frequenzkomponenten verknüpft sind; und eine Gesichtsunterscheidungseinrichtung (1002) zum Unterscheiden eines bestimmten Gesichts von anderen Gesichtern durch nichtlineares Abbilden unter Verwendung einer Kernel-Funktion der Gesichtmerkmale, welche durch die Gesichtsmerkmal-Extraktionseinrichtung extrahiert werden, und durch Erlangen einer Hyperebene, welche sich in einen Merkmalsraum, der durch Abbilden erlangt wird, trennt; dadurch gekennzeichnet, dass die Gesichtsmerkmal-Extraktionseinrichtung eine Filteränderungseinrichtung aufweist, um etwas oder alles von i. der Anzahl von Frequenzkomponenten; ii. zumindest einem ersten Frequenzwert; iii. der Anzahl von Orientierungen; und iv. zumindest einer ersten entsprechenden Orientierung der Filter zu ändern, wobei der Wert der oder jeder Frequenzkomponente gemäß der erlangten Information ist, welche für den Abstand zu einem Ziel bezeichnend ist, welches vor der Bildeinfangeinrichtung angeordnet ist.
  2. Gesichtserkennungsvorrichtung nach Anspruch 1, bei der die Filteränderungseinrichtung betriebsfähig ist, um Abstandsinformation zu empfangen, welche für einen Abstand zu einem Ziel bezeichnend ist, welches vor der Bildeinfangseinrichtung angeordnet ist, und um etwas oder alles von i. der Anzahl von Frequenzkomponenten, und ii. zumindest einem ersten Frequenzwert der Filter gemäß der empfangenen Abstandsinformation zu ändern.
  3. Gesichtserkennungsvorrichtung nach einem der vorhergehenden Ansprüche, wobei die Gesichtsmerkmal-Extraktionseinrichtung durch Gabor-Filter verwirklicht wird, und die Gesichtunterscheidungseinrichtung durch eine Unterstützungsvektormaschine verwirklicht wird.
  4. Gesichtserkennungsvorrichtung nach einem der Ansprüche 1 bis 3, wobei die Gesichtsmerkmal-Extraktionseinrichtung beim Filtern bei einer niedrigen Frequenz ein gefiltertes Bild mit einer niedrigen Rate abtastet, um das Ausmaß des gefilterten Bilds zu reduzieren.
  5. Robotervorrichtung, welche autonom arbeitet, welche eine Gesichterkennungsvorrichtung nach einem der vorhergehenden Ansprüche aufweist.
  6. Gesichtserkennungsverfahren, welches umfasst: einen Bildeinfangschritt, um ein Gesichtsbild einzufangen; einen Gesichtsmerkmal-Extraktionsschritt zum Extrahieren von Merkmalen des Gesichtsbilds unter Verwendung von mehreren Filtern, welche Orientierungsselektivität haben und welche mit unterschiedlichen Frequenzkomponenten verknüpft sind, und einen Gesichtsunterscheidungsschritt zum Unterscheiden eines bestimmten Gesichts von anderen Gesichtern durch nichtlineares Abbilden unter Verwendung einer Kernel-Funktion der Gesichtsmerkmale, die im Gesichtsmerkmal-Extraktionsschritt extrahiert werden, und durch Erlangung einer Hyperebene, welche sich in einem Merkmalraum, welcher durch Abbilden erlangt wird, trennt; dadurch gekennzeichnet, dass der Gesichtsmerkmal-Extraktionsschritt einen Filteränderungsschritt zum Ändern etwas oder aller von i. der Anzahl von Frequenzkomponenten; ii. zumindest einem ersten Frequenzwert; iii. der Anzahl von Orientierungen; und iv. zumindest einer ersten entsprechenden Orientierung der Filter aufweist, wobei der Wert der oder jeder Frequenzkomponente gemäß der erlangten Information ist, welche für den Abstand zu einem Ziel bezeichnend ist, welche vor der Bildeinfangeinrichtung angeordnet ist, welche im Bildeingabeschritt betrieben wird.
  7. Bilderkennungsverfahren nach Anspruch 6, wobei der Filteränderungsschritt Abstandsinformation empfängt, welche für einen Abstand zu einem Ziel bezeichnend ist, welches vor der Bildeinfangeinrichtung angeordnet ist, und etwas oder alles von i. der Anzahl von Frequenzkomponenten; und ii. zumindest einem ersten Frequenzwert der Filter gemäß der empfangenen Abstandsinformation ändert.
  8. Bilderkennungsverfahren nach Anspruch 6 oder 7, wobei Merkmale eines Gesichts von dem zugeführten Bild unter Verwendung von Gabor-Filter im Gesichtsmerkmal-Extraktionsschritt extrahiert werden, und ein bestimmtes Gesicht gegenüber anderen Gesichtern unter Verwendung einer Unterstützungsvektormaschine im Gesichtsunterscheidungsschritt unterschieden wird.
  9. Gesichtserkennungsverfahren nach einem der Ansprüche 6 bis 8, wobei beim Filtern bei einen niedrigen Frequenz ein gefiltertes Bild mit geringer Rate abgetastet wird, um das Ausmaß des gefilterten Bilds im Gesichtsmerkmal-Extraktionsschritt zu reduzieren.
DE60216411T 2001-08-23 2002-08-21 Robotervorrichtung, gesichtserkennungsverfahren und gesichtserkennungsvorrichtung Expired - Lifetime DE60216411T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2001253700 2001-08-23
JP2001253700 2001-08-23
PCT/JP2002/008433 WO2003019475A1 (fr) 2001-08-23 2002-08-21 Appareil robotique, procede de reconnaissance faciale, et appareil de reconnaissance faciale

Publications (2)

Publication Number Publication Date
DE60216411D1 DE60216411D1 (de) 2007-01-11
DE60216411T2 true DE60216411T2 (de) 2007-10-04

Family

ID=19081987

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60216411T Expired - Lifetime DE60216411T2 (de) 2001-08-23 2002-08-21 Robotervorrichtung, gesichtserkennungsverfahren und gesichtserkennungsvorrichtung

Country Status (7)

Country Link
US (1) US7369686B2 (de)
EP (1) EP1343115B1 (de)
JP (2) JP4333364B2 (de)
KR (1) KR100941209B1 (de)
CN (1) CN1273912C (de)
DE (1) DE60216411T2 (de)
WO (1) WO2003019475A1 (de)

Families Citing this family (131)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2395781A (en) * 2002-11-29 2004-06-02 Sony Uk Ltd Face detection
JP3994950B2 (ja) * 2003-09-19 2007-10-24 ソニー株式会社 環境認識装置及び方法、経路計画装置及び方法、並びにロボット装置
JP4303602B2 (ja) 2004-01-09 2009-07-29 本田技研工業株式会社 顔面像取得システム
JP4439927B2 (ja) * 2004-01-19 2010-03-24 三菱電機株式会社 検出対象識別装置
CN1294521C (zh) * 2004-06-28 2007-01-10 李剑华 商用迎宾机器人的识别方法
JP4601380B2 (ja) * 2004-10-08 2010-12-22 富士通株式会社 生体認証システムの登録方法、生体認証システム及びそのプログラム
US7734067B2 (en) 2004-12-07 2010-06-08 Electronics And Telecommunications Research Institute User recognition system and method thereof
JP4595750B2 (ja) * 2005-08-29 2010-12-08 ソニー株式会社 画像処理装置および方法、並びにプログラム
US20070060830A1 (en) * 2005-09-12 2007-03-15 Le Tan Thi T Method and system for detecting and classifying facial muscle movements
US7835821B2 (en) * 2005-11-17 2010-11-16 Electronics And Telecommunications Research Institute Robot server for controlling robot, system having the same for providing content, and method thereof
JP2007157063A (ja) 2005-12-08 2007-06-21 Sony Corp 画像処理装置及び画像処理方法、並びにコンピュータ・プログラム
US7822223B2 (en) * 2006-01-13 2010-10-26 New Jersey Institute Of Technology Method for identifying marked images using statistical moments based at least in part on a JPEG array
JP4610653B2 (ja) * 2006-01-13 2011-01-12 ニュー ジャージー インスティチュート オブ テクノロジー Jpeg配列に少なくとも部分的に基づいた統計モーメントを用いてマーク付き画像を識別する方法
CN101089874B (zh) * 2006-06-12 2010-08-18 华为技术有限公司 一种远程人脸图像的身份识别方法
JP4321645B2 (ja) * 2006-12-08 2009-08-26 ソニー株式会社 情報処理装置および情報処理方法、認識装置および情報認識方法、並びに、プログラム
EP1930842B1 (de) 2006-12-08 2010-07-28 Sony Corporation Gesichtserkennung mit Gaborfiltern
JP2008152530A (ja) 2006-12-18 2008-07-03 Sony Corp 顔認識装置及び顔認識方法、ガボア・フィルタ適用装置、並びにコンピュータ・プログラム
JP2008191816A (ja) 2007-02-02 2008-08-21 Sony Corp 画像処理装置、および画像処理方法、並びにコンピュータ・プログラム
WO2009025032A1 (ja) * 2007-08-21 2009-02-26 Fujitsu Limited ロボット制御装置およびロボット制御方法
JP4946730B2 (ja) 2007-08-27 2012-06-06 ソニー株式会社 顔画像処理装置及び顔画像処理方法、並びにコンピュータ・プログラム
US8588539B2 (en) * 2008-02-20 2013-11-19 Canon Kabushiki Kaisha Methods and devices for filtering and coding a digital signal
JP5414416B2 (ja) * 2008-09-24 2014-02-12 キヤノン株式会社 情報処理装置及び方法
KR20100086262A (ko) * 2009-01-22 2010-07-30 삼성전자주식회사 로봇 및 그 제어방법
US8224042B2 (en) * 2009-03-12 2012-07-17 Seiko Epson Corporation Automatic face recognition
JP2010244381A (ja) * 2009-04-08 2010-10-28 Sony Corp ガボアフィルタ、画像認識装置および方法、プログラム、並びに記録媒体
TWI415011B (zh) * 2009-12-17 2013-11-11 Ind Tech Res Inst 人臉辨識方法及應用此方法之系統
US8315305B2 (en) 2010-03-26 2012-11-20 Brain Corporation Systems and methods for invariant pulse latency coding
US9122994B2 (en) 2010-03-26 2015-09-01 Brain Corporation Apparatus and methods for temporally proximate object recognition
US9405975B2 (en) * 2010-03-26 2016-08-02 Brain Corporation Apparatus and methods for pulse-code invariant object recognition
US9311593B2 (en) 2010-03-26 2016-04-12 Brain Corporation Apparatus and methods for polychronous encoding and multiplexing in neuronal prosthetic devices
US9906838B2 (en) 2010-07-12 2018-02-27 Time Warner Cable Enterprises Llc Apparatus and methods for content delivery and message exchange across multiple content delivery networks
US9193075B1 (en) 2010-08-26 2015-11-24 Brain Corporation Apparatus and methods for object detection via optical flow cancellation
US8942466B2 (en) 2010-08-26 2015-01-27 Brain Corporation Sensory input processing apparatus and methods
US9015093B1 (en) 2010-10-26 2015-04-21 Michael Lamport Commons Intelligent control with hierarchical stacked neural networks
US8775341B1 (en) 2010-10-26 2014-07-08 Michael Lamport Commons Intelligent control with hierarchical stacked neural networks
US8990133B1 (en) 2012-12-20 2015-03-24 Brain Corporation Apparatus and methods for state-dependent learning in spiking neuron networks
US9147156B2 (en) 2011-09-21 2015-09-29 Qualcomm Technologies Inc. Apparatus and methods for synaptic update in a pulse-coded network
US9070039B2 (en) 2013-02-01 2015-06-30 Brian Corporation Temporal winner takes all spiking neuron network sensory processing apparatus and methods
US9566710B2 (en) 2011-06-02 2017-02-14 Brain Corporation Apparatus and methods for operating robotic devices using selective state space training
US9047568B1 (en) 2012-09-20 2015-06-02 Brain Corporation Apparatus and methods for encoding of sensory data using artificial spiking neurons
US8719199B2 (en) 2011-09-21 2014-05-06 Brain Corporation Systems and methods for providing a neural network having an elementary network description for efficient implementation of event-triggered plasticity rules
US8725662B2 (en) 2011-09-21 2014-05-13 Brain Corporation Apparatus and method for partial evaluation of synaptic updates based on system events
US9412064B2 (en) 2011-08-17 2016-08-09 Qualcomm Technologies Inc. Event-based communication in spiking neuron networks communicating a neural activity payload with an efficacy update
US8725658B2 (en) 2011-09-21 2014-05-13 Brain Corporation Elementary network description for efficient memory management in neuromorphic systems
US9104973B2 (en) 2011-09-21 2015-08-11 Qualcomm Technologies Inc. Elementary network description for neuromorphic systems with plurality of doublets wherein doublet events rules are executed in parallel
US9460387B2 (en) 2011-09-21 2016-10-04 Qualcomm Technologies Inc. Apparatus and methods for implementing event-based updates in neuron networks
US9104186B2 (en) 2012-06-04 2015-08-11 Brain Corporation Stochastic apparatus and methods for implementing generalized learning rules
US9015092B2 (en) 2012-06-04 2015-04-21 Brain Corporation Dynamically reconfigurable stochastic learning apparatus and methods
US10210452B2 (en) 2011-09-21 2019-02-19 Qualcomm Incorporated High level neuromorphic network description apparatus and methods
US9117176B2 (en) 2011-09-21 2015-08-25 Qualcomm Technologies Inc. Round-trip engineering apparatus and methods for neural networks
US8712939B2 (en) 2011-09-21 2014-04-29 Brain Corporation Tag-based apparatus and methods for neural networks
US9146546B2 (en) 2012-06-04 2015-09-29 Brain Corporation Systems and apparatus for implementing task-specific learning using spiking neurons
US9098811B2 (en) 2012-06-04 2015-08-04 Brain Corporation Spiking neuron network apparatus and methods
US9156165B2 (en) 2011-09-21 2015-10-13 Brain Corporation Adaptive critic apparatus and methods
US9213937B2 (en) 2011-09-21 2015-12-15 Brain Corporation Apparatus and methods for gating analog and spiking signals in artificial neural networks
KR101443139B1 (ko) * 2011-09-30 2014-09-19 아이포콤 주식회사 단일 영상을 사용한 위조 얼굴 검출 방법
JP5836095B2 (ja) * 2011-12-05 2015-12-24 キヤノン株式会社 画像処理装置、画像処理方法
CN102592136B (zh) 2011-12-21 2013-10-16 东南大学 基于几何图像中中频信息的三维人脸识别方法
JP2013202260A (ja) 2012-03-29 2013-10-07 Sony Corp 情報処理装置、情報処理方法およびコンピュータプログラム
US9129221B2 (en) 2012-05-07 2015-09-08 Brain Corporation Spiking neural network feedback apparatus and methods
US9224090B2 (en) 2012-05-07 2015-12-29 Brain Corporation Sensory input processing apparatus in a spiking neural network
US9412041B1 (en) 2012-06-29 2016-08-09 Brain Corporation Retinal apparatus and methods
US9111215B2 (en) 2012-07-03 2015-08-18 Brain Corporation Conditional plasticity spiking neuron network apparatus and methods
US8977582B2 (en) 2012-07-12 2015-03-10 Brain Corporation Spiking neuron network sensory processing apparatus and methods
US9256823B2 (en) 2012-07-27 2016-02-09 Qualcomm Technologies Inc. Apparatus and methods for efficient updates in spiking neuron network
US9256215B2 (en) 2012-07-27 2016-02-09 Brain Corporation Apparatus and methods for generalized state-dependent learning in spiking neuron networks
US9440352B2 (en) 2012-08-31 2016-09-13 Qualcomm Technologies Inc. Apparatus and methods for robotic learning
US9186793B1 (en) 2012-08-31 2015-11-17 Brain Corporation Apparatus and methods for controlling attention of a robot
US9189730B1 (en) 2012-09-20 2015-11-17 Brain Corporation Modulated stochasticity spiking neuron network controller apparatus and methods
US9367798B2 (en) 2012-09-20 2016-06-14 Brain Corporation Spiking neuron network adaptive control apparatus and methods
US9311594B1 (en) 2012-09-20 2016-04-12 Brain Corporation Spiking neuron network apparatus and methods for encoding of sensory data
US8793205B1 (en) 2012-09-20 2014-07-29 Brain Corporation Robotic learning and evolution apparatus
US9082079B1 (en) 2012-10-22 2015-07-14 Brain Corporation Proportional-integral-derivative controller effecting expansion kernels comprising a plurality of spiking neurons associated with a plurality of receptive fields
US9183493B2 (en) 2012-10-25 2015-11-10 Brain Corporation Adaptive plasticity apparatus and methods for spiking neuron network
US9111226B2 (en) 2012-10-25 2015-08-18 Brain Corporation Modulated plasticity apparatus and methods for spiking neuron network
US9218563B2 (en) 2012-10-25 2015-12-22 Brain Corporation Spiking neuron sensory processing apparatus and methods for saliency detection
US9275326B2 (en) 2012-11-30 2016-03-01 Brain Corporation Rate stabilization through plasticity in spiking neuron network
US9123127B2 (en) 2012-12-10 2015-09-01 Brain Corporation Contrast enhancement spiking neuron network sensory processing apparatus and methods
US9195934B1 (en) 2013-01-31 2015-11-24 Brain Corporation Spiking neuron classifier apparatus and methods using conditionally independent subsets
US9177245B2 (en) 2013-02-08 2015-11-03 Qualcomm Technologies Inc. Spiking network apparatus and method with bimodal spike-timing dependent plasticity
US9764468B2 (en) 2013-03-15 2017-09-19 Brain Corporation Adaptive predictor apparatus and methods
US8996177B2 (en) 2013-03-15 2015-03-31 Brain Corporation Robotic training apparatus and methods
US9008840B1 (en) 2013-04-19 2015-04-14 Brain Corporation Apparatus and methods for reinforcement-guided supervised learning
US9242372B2 (en) 2013-05-31 2016-01-26 Brain Corporation Adaptive robotic interface apparatus and methods
US9792546B2 (en) 2013-06-14 2017-10-17 Brain Corporation Hierarchical robotic controller apparatus and methods
US9314924B1 (en) * 2013-06-14 2016-04-19 Brain Corporation Predictive robotic controller apparatus and methods
US9384443B2 (en) 2013-06-14 2016-07-05 Brain Corporation Robotic training apparatus and methods
US9239985B2 (en) 2013-06-19 2016-01-19 Brain Corporation Apparatus and methods for processing inputs in an artificial neuron network
US9436909B2 (en) 2013-06-19 2016-09-06 Brain Corporation Increased dynamic range artificial neuron network apparatus and methods
CN104257490B (zh) * 2013-06-26 2016-04-13 中国科学院合肥物质科学研究院 一种穿戴型下肢助力机器人的折叠方法
US9552546B1 (en) 2013-07-30 2017-01-24 Brain Corporation Apparatus and methods for efficacy balancing in a spiking neuron network
US9296101B2 (en) 2013-09-27 2016-03-29 Brain Corporation Robotic control arbitration apparatus and methods
US9579789B2 (en) 2013-09-27 2017-02-28 Brain Corporation Apparatus and methods for training of robotic control arbitration
US9489623B1 (en) 2013-10-15 2016-11-08 Brain Corporation Apparatus and methods for backward propagation of errors in a spiking neuron network
US9463571B2 (en) 2013-11-01 2016-10-11 Brian Corporation Apparatus and methods for online training of robots
US9597797B2 (en) 2013-11-01 2017-03-21 Brain Corporation Apparatus and methods for haptic training of robots
US9248569B2 (en) 2013-11-22 2016-02-02 Brain Corporation Discrepancy detection apparatus and methods for machine learning
US9358685B2 (en) 2014-02-03 2016-06-07 Brain Corporation Apparatus and methods for control of robot actions based on corrective user inputs
US9987743B2 (en) 2014-03-13 2018-06-05 Brain Corporation Trainable modular robotic apparatus and methods
US9533413B2 (en) 2014-03-13 2017-01-03 Brain Corporation Trainable modular robotic apparatus and methods
US9364950B2 (en) 2014-03-13 2016-06-14 Brain Corporation Trainable modular robotic methods
US9613308B2 (en) 2014-04-03 2017-04-04 Brain Corporation Spoofing remote control apparatus and methods
US9630317B2 (en) 2014-04-03 2017-04-25 Brain Corporation Learning apparatus and methods for control of robotic devices via spoofing
US9346167B2 (en) 2014-04-29 2016-05-24 Brain Corporation Trainable convolutional network apparatus and methods for operating a robotic vehicle
US9939253B2 (en) 2014-05-22 2018-04-10 Brain Corporation Apparatus and methods for distance estimation using multiple image sensors
US10194163B2 (en) * 2014-05-22 2019-01-29 Brain Corporation Apparatus and methods for real time estimation of differential motion in live video
US9713982B2 (en) 2014-05-22 2017-07-25 Brain Corporation Apparatus and methods for robotic operation using video imagery
US9848112B2 (en) 2014-07-01 2017-12-19 Brain Corporation Optical detection apparatus and methods
US10057593B2 (en) 2014-07-08 2018-08-21 Brain Corporation Apparatus and methods for distance estimation using stereo imagery
US9849588B2 (en) 2014-09-17 2017-12-26 Brain Corporation Apparatus and methods for remotely controlling robotic devices
US9579790B2 (en) 2014-09-17 2017-02-28 Brain Corporation Apparatus and methods for removal of learned behaviors in robots
US9860077B2 (en) 2014-09-17 2018-01-02 Brain Corporation Home animation apparatus and methods
US9821470B2 (en) 2014-09-17 2017-11-21 Brain Corporation Apparatus and methods for context determination using real time sensor data
US9870617B2 (en) 2014-09-19 2018-01-16 Brain Corporation Apparatus and methods for saliency detection based on color occurrence analysis
US9630318B2 (en) 2014-10-02 2017-04-25 Brain Corporation Feature detection apparatus and methods for training of robotic navigation
US9881349B1 (en) 2014-10-24 2018-01-30 Gopro, Inc. Apparatus and methods for computerized object identification
US9426946B2 (en) 2014-12-02 2016-08-30 Brain Corporation Computerized learning landscaping apparatus and methods
JP6632288B2 (ja) * 2014-12-12 2020-01-22 キヤノン株式会社 情報処理装置、情報処理方法、プログラム
CN105844202A (zh) * 2015-01-12 2016-08-10 芋头科技(杭州)有限公司 一种影像识别系统及方法
US9717387B1 (en) 2015-02-26 2017-08-01 Brain Corporation Apparatus and methods for programming and training of robotic household appliances
US9840003B2 (en) 2015-06-24 2017-12-12 Brain Corporation Apparatus and methods for safe navigation of robotic devices
US10197664B2 (en) 2015-07-20 2019-02-05 Brain Corporation Apparatus and methods for detection of objects using broadband signals
CN105599821B (zh) * 2016-01-06 2019-03-01 山东优宝特智能机器人有限公司 具有环境感知能力的电驱动仿生四足机器人及控制方法
US10295972B2 (en) 2016-04-29 2019-05-21 Brain Corporation Systems and methods to operate controllable devices with gestures and/or noises
JP2019101492A (ja) * 2017-11-28 2019-06-24 トヨタ自動車株式会社 コミュニケーション装置
US11068741B2 (en) * 2017-12-28 2021-07-20 Qualcomm Incorporated Multi-resolution feature description for object recognition
CN108161953A (zh) * 2018-02-24 2018-06-15 上海理工大学 一种智能机器人头部系统
CN108297109A (zh) * 2018-02-24 2018-07-20 上海理工大学 一种智能机器人系统
US11106896B2 (en) * 2018-03-26 2021-08-31 Intel Corporation Methods and apparatus for multi-task recognition using neural networks
TWI668639B (zh) * 2018-05-30 2019-08-11 瑞軒科技股份有限公司 臉部辨識系統與方法
CN113524205B (zh) * 2021-09-15 2021-12-31 深圳市优必选科技股份有限公司 仿人机器人的冗余手臂的抛投轨迹规划方法、装置及介质

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2921936B2 (ja) * 1990-07-13 1999-07-19 株式会社東芝 画像監視装置
US5909516A (en) 1996-03-29 1999-06-01 Sarnoff Corporation Method and apparatus for decomposing an image stream into units of local contrast
JPH1153525A (ja) * 1997-08-06 1999-02-26 Matsushita Electric Ind Co Ltd 顔器官検出装置及び媒体
US6421463B1 (en) * 1998-04-01 2002-07-16 Massachusetts Institute Of Technology Trainable system to search for objects in images
WO1999053443A1 (en) * 1998-04-13 1999-10-21 Eyematic Interfaces, Inc. Wavelet-based facial motion capture for avatar animation
JP3307354B2 (ja) * 1999-01-29 2002-07-24 日本電気株式会社 人物識別方法及び装置と人物識別プログラムを記録した記録媒体
WO2000053281A1 (fr) * 1999-03-05 2000-09-14 Namco, Ltd. Dispositif d'animal virtuel et support d'enregistrement de son programme de commande
JP3435666B2 (ja) 1999-09-07 2003-08-11 ソニー株式会社 ロボット
JP2001188555A (ja) * 1999-12-28 2001-07-10 Sony Corp 情報処理装置および方法、並びに記録媒体
JP4403477B2 (ja) 2000-01-26 2010-01-27 ソニー株式会社 画像処理装置及び画像処理方法
US6983065B1 (en) * 2001-12-28 2006-01-03 Cognex Technology And Investment Corporation Method for extracting features from an image using oriented filters
US7035467B2 (en) * 2002-01-09 2006-04-25 Eastman Kodak Company Method and system for processing images for themed imaging services

Also Published As

Publication number Publication date
JP2009157948A (ja) 2009-07-16
CN1273912C (zh) 2006-09-06
WO2003019475A1 (fr) 2003-03-06
EP1343115A4 (de) 2005-03-09
KR20040028660A (ko) 2004-04-03
JPWO2003019475A1 (ja) 2004-12-16
DE60216411D1 (de) 2007-01-11
JP4333364B2 (ja) 2009-09-16
EP1343115A1 (de) 2003-09-10
CN1476589A (zh) 2004-02-18
EP1343115B1 (de) 2006-11-29
US7369686B2 (en) 2008-05-06
KR100941209B1 (ko) 2010-02-10
JP4609584B2 (ja) 2011-01-12
US20050036649A1 (en) 2005-02-17

Similar Documents

Publication Publication Date Title
DE60216411T2 (de) Robotervorrichtung, gesichtserkennungsverfahren und gesichtserkennungsvorrichtung
DE60111677T2 (de) Roboter und handlungsbestimmtes Verfahren für Roboter
DE102017009223B4 (de) Steuervorrichtung zum Steuern eines Roboters durch Lernen einer Aktion einer Person, Robotersystem und Produktionssystem
DE602004004324T2 (de) System und Verfahren zur Sprachkommunikation und Roboter
DE69634221T2 (de) Verfahren und Gerät zur Verarbeitung visueller Information
DE102019216229B4 (de) Vorrichtung und Verfahren zum Steuern einer Robotervorrichtung
DE69730811T2 (de) Anlage zur Bilderkennung
DE102015111080B4 (de) Robotervorrichtung mit maschinellem Sehen
EP3765927B1 (de) Verfahren zum erzeugen eines trainingsdatensatzes zum trainieren eines künstlichen-intelligenz-moduls für eine steuervorrichtung eines fahrzeugs
EP1327504A1 (de) Robotervorrichtung und verhaltenssteuerung dieser vorrichtung
DE102019122760A1 (de) Selbstfahrende mobile roboter, die mensch-roboter-interaktionen verwenden
DE112008001884T5 (de) Bahnplanungsvorrichtung, Bahnplanungsverfahren und sich bewegender Körper
DE112017004414T5 (de) Autonom handelnder roboter, server und verhaltenssteuerungsprogramm
DE102020114583A1 (de) Rechenvorrichtung, Maschinenlernverfahren und Speichermedium
DE102021205722A1 (de) System und verfahren für mehrskalenmodelle mit tiefem gleichgewicht
DE102021201777A1 (de) Verfahren zur Verhaltenserkennung, Vorrichtung zur Verhaltenserkennung und computerlesbares Aufzeichnungsmedium
Beuth Visual attention in primates and for machines-neuronal mechanisms
EP4326500A1 (de) Ansteuerung eines industrieroboters für eine greifaufgabe
Mel Vision-based robot motion planning
Do et al. Application of neural processing paradigm in visual landmark recognition and autonomous robot navigation
DE102021211185B4 (de) Vorrichtung und Verfahren zum Steuern eines Roboters
DE60029976T2 (de) Selbsttätiges System mit heterogenen Körpern
DE102022207847A1 (de) Verfahren zum Steuern eines Roboters zum Manipulieren, insbesondere Aufnehmen, eines Objekts
DE102022206273A1 (de) Verfahren zum Trainieren eines maschinellen Lernmodells zum Implementieren einer Steuerungsvorschrift
WO2006005669A2 (de) System zur informationsextraktion und/oder informationsbewertung

Legal Events

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