DE112013000590B4 - Verbesserter Kontrast zur Objekterfassung und Charakterisierung durch optisches Abbilden - Google Patents

Verbesserter Kontrast zur Objekterfassung und Charakterisierung durch optisches Abbilden Download PDF

Info

Publication number
DE112013000590B4
DE112013000590B4 DE112013000590.5T DE112013000590T DE112013000590B4 DE 112013000590 B4 DE112013000590 B4 DE 112013000590B4 DE 112013000590 T DE112013000590 T DE 112013000590T DE 112013000590 B4 DE112013000590 B4 DE 112013000590B4
Authority
DE
Germany
Prior art keywords
camera
image
light source
pixels
view
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE112013000590.5T
Other languages
English (en)
Other versions
DE112013000590T5 (de
Inventor
David Holz
Hua Yang
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.)
ULTRAHAPTICS IP TWO LIMITED, GB
Original Assignee
Leap Motion Inc
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
Priority claimed from US13/414,485 external-priority patent/US20130182079A1/en
Priority claimed from US13/724,357 external-priority patent/US9070019B2/en
Application filed by Leap Motion Inc filed Critical Leap Motion Inc
Publication of DE112013000590T5 publication Critical patent/DE112013000590T5/de
Application granted granted Critical
Publication of DE112013000590B4 publication Critical patent/DE112013000590B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/107Static hand or arm
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/10Image acquisition
    • G06V10/12Details of acquisition arrangements; Constructional details thereof
    • G06V10/14Optical characteristics of the device performing the acquisition or on the illumination arrangements
    • G06V10/143Sensing or illuminating at different wavelengths
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/10Image acquisition
    • G06V10/12Details of acquisition arrangements; Constructional details thereof
    • G06V10/14Optical characteristics of the device performing the acquisition or on the illumination arrangements
    • G06V10/145Illumination specially adapted for pattern recognition, e.g. using gratings
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/28Quantising the image, e.g. histogram thresholding for discrimination between background and foreground patterns
    • 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/20Movements or behaviour, e.g. gesture recognition
    • G06V40/28Recognition of hand or arm movements, e.g. recognition of deaf sign language

Abstract

Bildaufnahme- und Analysesystem zur Bestimmung von Objekten von Interesse in einer digital dargestellten Bildszene, wobei das System umfasst: wenigstens eine auf ein Sichtfeld gerichtete Kamera; wenigstens eine Lichtquelle, die auf einer gleichen Seite des Sichtfeldes wie die Kamera angeordnet und ausgerichtet ist, um das Sichtfeld zu beleuchten; und eine Bildanalysevorrichtung, die an die Kamera und die wenigstens eine Lichtquelle gekoppelt und ausgebildet ist, um: die wenigstens eine Kamera zu steuern, um eine Sequenz von Bildern aufzunehmen, die ein erstes Bild aufweist, das zu einem Zeitpunkt erfasst wird, wenn die wenigstens eine Lichtquelle das Sichtfeld beleuchtet; Pixel zu bestimmen, die vielmehr dem Objekt als einem Hintergrund entsprechen; und auf der Grundlage der bestimmten Pixel, ein 3D-Modell des Objekts einschließlich einer Position, Form und Querschnitt des Objekts zu erstellen, um geometrisch zu bestimmen, ob es dem Objekt von Interesse entspricht, wobei die Bildanalysevorrichtung zwischen (i) Vordergrundbildkomponenten, die in einem proximalen Bereich des Sichtfeldes angeordneten Objekten entsprechen, wobei sich der proximale Bereich von der wenigstens einen Kamera erstreckt und eine darauf bezogene Tiefe von wenigstens dem ...

Description

  • GEBIET DER ERFINDUNG
  • Die vorliegende Erfindung betrifft Im Allgemeinen Abbildungssysteme und insbesondere eine dreidimensionale (3D) Objekterfassung, Nachverfolgung und Charakterisierung mittels optischer Abbildung.
  • HINTERGRUND
  • Bewegungserfassungssysteme werden in einer Vielzahl von Kontexten verwendet, um Informationen über die Form und die Bewegung verschiedener Objekte, einschließlich Objekte mit Gliederelementen, wie menschliche Hände oder menschliche Körper, zu erhalten. Solche Systeme umfassen in der Regel Kameras zur Erfassung aufeinanderfolgender Bilder eines Objekts in Bewegung sowie Computer zur Analyse der Bilder, um ein Volumen, eine Position und eine Bewegung eines Objekts zu rekonstruieren. Für eine Bewegungserfassung in 3D werden in der Regel wenigstens zwei Kameras verwendet.
  • Bildbasierte Bewegungserfassungssysteme beruhen auf der Fähigkeit, ein Objekt von Interesse von einem Hintergrund zu unterscheiden. Dies wird häufig unter Verwendung von kantendetektierenden Bildanalyse-Algorithmen erreicht, typischerweise durch Vergleichen der Pixel, um abrupte Änderungen in der Farbe und/oder Helligkeit zu erfassen. Solche herkömmlichen Systeme erleiden jedoch Leistungseinbußen unter vielen geläufigen Umständen, wie beispielsweise einem geringen Kontrast zwischen dem Objekt von Interesse und dem Hintergrund und/oder Muster im Hintergrund, die fälschlicherweise als Objektkanten erfasst werden.
  • In einigen Fällen kann eine Unterscheidung zwischen Objekt und Hintergrund durch ”Instrumentierung” des Objekts von Interesse erleichtert werden, beispielsweise indem eine Person ein Netz aus Reflektoren oder aktiven Lichtquellen oder dergleichen während des Bewegungsablaufs trägt. Spezielle Lichtbedingungen (z. B., wenig Licht) können verwendet werden, sodass die Reflektoren oder Lichtquellen in den Bildern hervorstechen. Die Instrumentierung des Gegenstands bildet jedoch nicht immer eine praktische oder wünschenswerte Alternative.
  • Das Dokument DE 10 2009 023 875 A1 betrifft ein Gestenerkennungsschnittstellensystem, bei dem ein Höhenprofil von kleinen Teilen einer sichtbaren Oberfläche beispielsweise einer Hand erzeugt wird. Ein Querschnitt, der die Rückseite des Objekts einschließt wird jedoch nicht erzeugt. Das Erstellen eines 3D-Modells des Objekts einschließlich einer Position, Form und eines Querschnitts des Objekts wird weder implizit noch explizit offenbart.
  • Die DE 103 26 035 A1 betrifft ein Verfahren zur adaptiven Erkennung eines Fehlers auf einer strukturierten Oberfläche. Die DE 103 26 035 A1 offenbart keine 3D-Rekonstruktion eines Objekts einschließlich einer Position, Form und eines Querschnitts des Objekts.
  • Die oben genannten Nachteile werden behoben durch ein Bildaufnahme- und Analysesystem zur Bestimmung von Objekten von Interesse in einer digital dargestellten Bildszene gemäß Anspruch 1, durch ein Verfahren zum Aufnehmen und Analysieren von Bildern nach Anspruch 10 und 16. Bevorzugte Ausführungsformen werden in den abhängigen Ansprüchen definiert.
  • Bestimmte Ausführungsformen der vorliegenden Erfindung beziehen sich auf Abbildungssysteme, die eine Objekterfassung durch die Verbesserung des Kontrasts zwischen dem Objekt und den auf einem Bild sichtbaren Hintergrundflächen verbessern; Dies kann z. B., durch eine auf das Objekt gerichtete, gesteuerte Beleuchtung erreicht werden. Zum Beispiel kann in einem Bewegungserfassungssystem, bei dem sich ein Objekt von Interesse, wie beispielsweise die Hand einer Person, deutlich näher an der Kamera befindet als irgendwelche Hintergrundflächen, die Abnahme der Lichtintensität mit der Entfernung (1/r2 für Punktlichtquellen) durch Positionieren einer Lichtquelle (oder mehrerer Lichtquellen) in der Nähe der Kamera(s) oder einer anderen Bilderfassungsvorrichtung(en) und durch Strahlen des Lichts auf das Objekt ausgenutzt werden. Es ist zu erwarten, dass eine durch das nahe Objekt von Interesse reflektierte Lichtquelle viel heller ist als Licht, das von weiter entfernten Hintergrundflächen reflektiert wird, und je weiter der Hintergrund (relativ zu dem Objekt) entfernt ist, desto ausgeprägter ist die Wirkung. Dementsprechend kann in einigen Ausführungsformen eine Schwellwertgrenze der Pixelhelligkeit in den aufgenommenen Bildern verwendet werden, um ”Objekt”-Pixel von ”Hintergrund”-Pixeln zu unterscheiden. Während Breitbandumgebungslichtquellen eingesetzt werden können, verwenden verschiedene Ausführungsformen Licht mit einem begrenzten Wellenlängenbereich und eine Kamera, die abgestimmt ist, derartiges Licht zu erkennen; Beispielsweise kann eine Infrarotlichtquelle mit einer oder mehreren Kameras, die infrarotfrequenzempfindlich sind, verwendet werden.
  • Dementsprechend bezieht sich die Erfindung in einem ersten Aspekt auf ein Bildaufnahme- und Analysesystem zur Bestimmung von Objekten von Interesse in einer digital dargestellten Bildszene. In verschiedenen Ausführungsformen umfasst das System wenigstens eine auf ein Sichtfeld gerichtete Kamera; wenigstens eine Lichtquelle, die auf einer gleichen Seite des Sichtfeldes wie die Kamera angeordnet und ausgerichtet ist, um das Sichtfeld zu beleuchten; und eine Bildanalysevorrichtung, die an die Kamera und die Lichtquelle(n) gekoppelt ist. Die Bildanalysevorrichtung ist ausgebildet, die Kamera(s) zu steuern, um eine Sequenz von Bildern aufzunehmen, die ein erstes Bild aufweist, das zu einem Zeitpunkt erfasst wird, wenn die Lichtquelle(n) das Sichtfeld beleuchtet; Pixel zu bestimmen, die vielmehr dem Objekt als einem Hintergrund entsprechen (Bildkomponenten, die sich in der Nähe befinden oder reflektieren); und auf der Grundlage der bestimmten Pixel, ein 3D-Modell des Objekts einschließlich einer Position, Form und Querschnitt des Objekts zu erstellen, um geometrisch zu bestimmen, ob es dem Objekt von Interesse entspricht. Weiterhin unterscheidet die Bildanalysevorrichtung zwischen (i) Vordergrundbildkomponenten, die in einem proximalen Bereich des Sichtfeldes angeordneten Objekten entsprechen, wobei sich der proximale Bereich von der Kamera(s) erstreckt und eine darauf bezogene Tiefe von wenigstens dem Zweifachen eines zu erwartenden maximalen Abstands zwischen den Vordergrundbildkomponenten entsprechenden Objekten und der Kamera(s) aufweist, und (ii) Hintergrundbildkomponenten, die in einem distalen Bereich des Sichtfeldes angeordneten Objekten entsprechen, wobei der distale Bereich relativ zu der wenigstens einen Kamera über dem proximalen Bereich angeordnet ist. Beispielsweise kann der proximale Bereich eine Tiefe von wenigstens dem Vierfachen des zu erwartenden maximalen Abstands aufweisen.
  • In weiteren Ausführungsformen steuert die Bildanalysevorrichtung die Kamera(s), um ein zweites und drittes Bild aufzunehmen, wenn die Lichtquelle(n) das Sichtfeld nicht beleuchtet, und ermittelt die dem Objekt entsprechenden Pixel auf der Grundlage einer Differenz zwischen dem ersten und zweiten Bild und einer Differenz zwischen dem ersten und dritten Bild, wobei das zweite Bild vor dem ersten Bild aufgenommenen wird und das dritte Bild nach dem zweiten Bild aufgenommen wird.
  • Die Lichtquelle(n) können beispielsweise ein diffundierter Emitter sein – z. B. Infrarotlichtemittierende Dioden, wobei die Kamera(s) eine infrarotempfindliche Kamera aufweisen. Zwei oder mehrere Lichtquellen können zu beiden Seiten der Kamera(s) angeordnet werden und im Wesentlichen koplanar dazu sein. In verschiedenen Ausführungsformen sind die Kamera(s) und die Lichtquelle(n) vertikal nach oben gerichtet. Zur Verbesserung des Kontrasts kann die Kamera gesteuert werden, um eine Belichtungszeit von nicht mehr als 100 Mikrosekunden bereitzustellen, und die Lichtquelle(n) kann während der Belichtungszeit mit einem Leistungspegel von wenigstens 5 Watt aktiviert werden. In bestimmten Implementierungen wird ein holographisches Beugungsgitter zwischen der Linse jeder Kamera und dem Sichtfeld (d. h., vor der Kameralinse) angeordnet.
  • Die Bildanalysevorrichtung kann geometrisch bestimmen, ob ein Objekt dem Objekt von Interesse entspricht, indem Ellipsen ermittelt werden, die volumetrisch ein Kandidatenobjekt definieren, Objektsegmente verworfen werden, die geometrisch nicht mit einer ellipsenbasierten Definition konsistent sind, und indem auf der Grundlage der Ellipsen bestimmt wird, ob das Kandidatenobjekt dem Objekt von Interesse entspricht.
  • In einem weiteren Aspekt betrifft die Erfindung ein Verfahren zum Erfassen und Analysieren von Bildern. In verschiedenen Ausführungsformen umfasst das Verfahren die Schritte: Aktivieren wenigstens einer Lichtquelle, um ein Sichtfeld, das ein Objekt von Interesse enthält, zu beleuchten; Erfassen einer Sequenz von digitalen Bildern des Sichtfeldes mit einer Kamera (oder Kameras) zu einem Zeitpunkt, wenn die Lichtquelle(n) aktiviert ist; Bestimmen von Pixeln, die vielmehr dem Objekt als dem Hintergrund entsprechen; und auf der Grundlage der bestimmten Pixel, Erstellen eines 3D-Modells des Objekts einschließlich einer Position, Form und Querschnitt des Objekts, um geometrisch zu bestimmen, ob es dem Objekt von Interesse entspricht.
  • Die Lichtquelle(n) wird(werden) so positioniert, dass Objekte von Interesse innerhalb eines proximalen Bereichs des Sichtfeldes angeordnet sind, wobei sich der proximale Bereich von der Kamera zu einem Abstand von wenigstens dem Zweifachen eines zu erwartenden maximalen Abstands zwischen den Objekten von Interesse und der Kamera erstreckt. Zum Beispiel kann der proximale Bereich eine Tiefe von wenigstens dem Vierfachen des zu erwartenden maximalen Abstands aufweisen. Die Lichtquelle(n) kann beispielsweise ein diffundierter Emitter sein – z. B. infrarotlichtemittierende Dioden, wobei die Kamera eine infrarotempfindliche Kamera aufweist. Zwei oder mehrere Lichtquellen können zu beiden Seiten der Kamera angeordnet werden und im Wesentlichen koplanar dazu zu verlaufen. In verschiedenen Ausführungsformen sind die Kamera und die Lichtquelle(n) vertikal nach oben gerichtet. Zur Verbesserung des Kontrasts kann die Kamera so gesteuert werden, dass sie eine Belichtungszeit von nicht mehr als 100 Mikrosekunden bereitstellt und die Lichtquelle(n) während der Belichtungszeit mit einem Leistungspegel von wenigstens 5 Watt aktiviert wird.
  • In einem weiteren Aspekt betrifft die Erfindung ein Verfahren zum Erfassen und Analysieren von Bildern. In verschiedenen Ausführungsformen umfasst das Verfahren die Schritte: Aktivieren wenigstens einer Lichtquelle, um ein Sichtfeld, das ein Objekt von Interesse enthält, zu beleuchten; Erfassen einer Sequenz von digitalen Bildern des Sichtfeldes mit einer Kamera (oder Kameras) zu einem Zeitpunkt, wenn die Lichtquelle(n) aktiviert ist; Bestimmen von Pixeln, die vielmehr dem Objekt als dem Hintergrund entsprechen; und auf der Grundlage der bestimmten Pixel, Erstellen eines 3D-Modells des Objekts einschließlich einer Position, Form und Querschnitt des Objekts, um geometrisch zu bestimmen, ob es dem Objekt von Interesse entspricht. Weiterhin werden Objektpixel durch Erfassen eines ersten Bildes, wenn die Lichtquelle(n) nicht aktiviert sind, eines zweiten Bildes, wenn die Lichtquelle(n) aktiviert sind und eines dritten Bildes, wenn die Lichtquelle(n) nicht aktiviert sind, ermittelt, wobei die dem Objekt entsprechenden Pixel auf der Grundlage einer Differenz zwischen dem zweiten und dem ersten Bild und einer Differenz zwischen dem zweiten und dem dritten Bild ermittelt werden.
  • Das geometrische Bestimmen, ob ein Objekt dem Objekt von Interesse entspricht, umfasst oder besteht aus dem Ermitteln von Ellipsen, die volumetrisch ein Kandidatenobjekt definieren, dem Verwerfen von Objektsegmenten, die geometrisch nicht mit einer ellipsenbasierten Definition konsistent sind, und dem Bestimmen, basierend auf den Ellipsen, ob das Kandidatenobjekt dem Objekt von Interesse entspricht.
  • Der hierin verwendete Begriff ”im Wesentlichen” oder ”ungefähr” bedeutet ±10% (z. B., nach Gewicht oder Volumen) und in einigen Ausführungsformen ±5%. Der Begriff ”besteht im Wesentlichen aus” bedeutet das Ausschließen anderer zur Funktion beitragender Materialien, sofern nicht anderweitig definiert. Die Bezugnahme auf ”in einem (engl.: one) Beispiel”, ”in einem (engl.: an) Beispiel”, ”eine (engl.: one) Ausführungsform” oder ”eine (engl.: an) Ausführungsform” in dieser Beschreibung bedeutet, dass ein bestimmtes Merkmal, Struktur oder Eigenschaft, die in Verbindung mit dem Beispiel beschrieben ist, in wenigstens einem Beispiel der vorliegenden Technologie beinhaltet ist. Somit bezieht sich das Vorkommen der Ausdrücke ”in einem (engl.: one) Beispiel”, ”in einem (engl.: an) Beispiel”, ”eine (engl.: one) Ausführungsform” oder ”eine (engl.: an) Ausführungsform” an verschiedenen Stellen in dieser Beschreibung notwendigerweise nicht immer auf dasselbe Beispiel. Ferner können die besonderen Merkmale, Strukturen, Routinen, Schritte oder Eigenschaften in jeder geeigneten Weise in einem oder mehreren Beispielen der Technologie kombiniert werden. Die hierin bereitgestellten Überschriften dienen der Zweckmäßigkeit und sollen den Umfang oder die Bedeutung der beanspruchten Technologie nicht beschränken oder interpretieren.
  • Die folgende detaillierte Beschreibung dient zusammen mit den beigefügten Zeichnungen dem besseren Verständnis der Art und der Vorteile der vorliegenden Erfindung.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • 1 zeigt ein System zur Aufnahme von Bilddaten gemäß einer Ausführungsform der vorliegenden Erfindung.
  • 2 zeigt ein vereinfachtes Blockdiagramm eines Computersystems für die Realisierung einer Bildanalysevorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung.
  • 3A3C sind graphische Darstellungen von Helligkeitsdaten für Pixelreihen, die gemäß einer Ausführungsform der vorliegenden Erfindung erhalten werden können.
  • 4 zeigt ein Flussdiagramm eines Verfahrens zur Ermittlung der Position eines Objekts in einem Bild gemäß einer Ausführungsform der vorliegenden Erfindung.
  • 5 zeigt eine Zeitachse, in der Lichtquellen in regelmäßigen Abständen entsprechend einer Ausführungsform der vorliegenden Erfindung gepulst werden.
  • 6 zeigt eine Zeitachse zum Pulsen von Lichtquellen und Aufnehmen von Bildern gemäß einer Ausführungsform der vorliegenden Erfindung.
  • 7 zeigt ein Flussdiagramm eines Verfahrens zur Ermittlung von Objektkanten unter Verwendung aufeinanderfolgender Bilder gemäß einer Ausführungsform der vorliegenden Erfindung.
  • 8 zeigt eine Draufsicht eines Computersystems, das einen Bewegungsdetektor als eine Benutzereingabevorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung enthält.
  • 9 zeigt eine Vorderansicht eines Tablets, das ein anderes Beispiel eines Computersystems mit einem Bewegungsdetektor gemäß einer Ausführungsform der vorliegenden Erfindung darstellt.
  • 10 zeigt ein Brillensystem mit einem Bewegungsdetektor gemäß einer Ausführungsform der vorliegenden Erfindung.
  • 11 zeigt ein Flussdiagramm eines Verfahrens zur Verwendung von Bewegungsinformationen als Benutzereingaben, um ein Computersystem oder ein anderes System gemäß einer Ausführungsform der vorliegenden Erfindung zu steuern.
  • 12 zeigt ein System zum Erfassen von Bilddaten gemäß einer weiteren Ausführungsform der vorliegenden Erfindung.
  • 13 zeigt ein System zum Erfassen von Bilddaten gemäß einer noch anderen Ausführungsform der vorliegenden Erfindung.
  • DETAILLIERTE BESCHREIBUNG
  • Zunächst wird auf die 1 Bezug genommen, in der ein System 100 zum Erfassen von Bilddaten gemäß einer Ausführungsform der vorliegenden Erfindung dargestellt ist. Das System 100 umfasst ein Kamerapaar 102, 104, das an ein Bildanalysesystem 106 gekoppelt ist. Die Kameras 102, 104 können jede Art von Kamera umfassen, einschließlich Kameras, die über das sichtbare Spektrum hinweg empfindlich sind, oder noch typischer eine erhöhte Empfindlichkeit gegenüber einem bestimmten Wellenlängenbereich aufweisen (z. B., Infrarot-(IR)- oder Ultraviolettbereiche); Im Allgemeinen bezieht sich der Begriff ”Kamera” hierin auf jede Vorrichtung (oder eine Kombination von Vorrichtungen), die zum Aufnehmen eines Bildes eines Objekts geeignet ist und das Bild in Form von digitalen Daten wiedergibt. Zum Beispiel können Zeilensensoren oder Zeilenkameras anstelle herkömmlicher Geräte, die ein zweidimensionales (2D)-Bild erfassen, verwendet werden. Der Begriff ”Licht” wird in der Regel verwendet, um irgendeine elektromagnetische Strahlung anzugeben, die sich innerhalb des sichtbaren Spektrums befinden kann oder nicht und ein Breitband (z. B., weißes Licht) oder Schmalband (z. B., eine einzelne Wellenlänge oder ein Wellenlängenschmalband) aufweisen kann.
  • Das Herzstück einer digitalen Kamera bildet ein Bildsensor, der ein Raster aus lichtempfindlichen Bildelementen (Pixel) enthält. Eine Linse fokussiert das Licht auf der Oberfläche des Bildsensors, und das Bild wird ausgebildet, wenn das Licht mit unterschiedlicher Intensität auf die Pixel trifft. Jedes Pixel wandelt das Licht in eine elektrische Ladung um, deren Größe die Intensität des detektierten Licht widerspiegelt, und sammelt diese Ladung für Messzwecke. Sowohl der CCD-Bildsensor als auch der CMOS-Bildsensor führen die gleiche Funktion aus, unterscheiden sich jedoch hinsichtlich der Messung und der Übertragung des Signals.
  • In einem CCD, wird die Ladung von jedem Pixel zu einer einzigen Struktur, die die Ladung in eine messbare Spannung umwandelt, transportiert. Dies erfolgt durch sequentielles Verschieben der Ladung in jedem Pixel zu seinem Nachbarn, Zeile für Zeile und dann Spalte für Spalte nach ”Eimerketten”-Art (engl.: bucket brigade), bis es die Messstruktur erreicht hat. Im Gegensatz dazu, platziert ein CMOS-Sensor eine Messstruktur an jeder Pixelposition. Die Messungen werden direkt von jeder Position an den Ausgang des Sensors übertragen.
  • Die Kameras 102, 104 sind vorzugsweise in der Lage, Videobilder aufzunehmen (d. h., aufeinanderfolgende Bildfolgen mit einer gleichmäßigen Geschwindigkeit von wenigstens 15 Bilder pro Sekunde), obwohl keine besondere Bildfolge erforderlich ist. Die Funktionen der Kameras 102, 104 sind für die Erfindung nicht entscheidend, und die Kameras können in Hinblick auf die Bildfolge, die Bildauflösung (z. B., Pixel pro Bild), die Farb- oder Intensitätsauflösung (z. B., die Bitanzahl der Intensitätsdaten pro Pixel), die Brennweite der Linsen, die Feldtiefe, usw., variieren. Im Allgemeinen können für eine bestimmte Anwendung irgendwelche Kameras verwendet werden, die in der Lage sind, auf Objekte in einem Raumvolumen von Interesse zu fokussieren. Zur Erfassung der Handbewegung einer ansonsten sich nicht bewegenden Person kann beispielsweise das Volumen von Interesse als ein Würfel mit etwa einem Meter auf einer Seite definiert werden.
  • Das System 100 umfasst auch ein Lichtquellenpaar 108, 110, das zu beiden Seiten der Kameras 102, 104 angeordnet werden kann und durch das Bildanalysesystem 106 steuerbar ist. Die Lichtquellen 108, 110 können Infrarotlichtquellen mit einer im Allgemeinen herkömmlicher Bauart, beispielsweise Infrarot-Leuchtdioden (LEDs), umfassen, und die Kameras 102, 104 können infrarotlichtempfindlich sein. Filter 120, 122 können vor der Kamera 102, 104 angeordnet sein, um sichtbares Licht herauszufiltern, so dass nur Infrarotlicht in den von Kameras 102, 104 aufgenommenen Bildern aufgezeichnet wird. In einigen Ausführungsformen, in denen das Objekt von Interesse die Hand oder der Körper einer Person ist, kann das Bewegungserfassungssystem durch die Verwendung von Infrarotlicht in einem breiten Bereich von Lichtbedingungen arbeiten und verschiedene Unannehmlichkeiten oder Ablenkungen vermeiden, die mit dem Steuren von sichtbarem Licht in den Bereich, in dem sich die Person bewegt, in Verbindung gebracht werden können. Jedoch ist eine spezielle Wellenlänge oder Bereich des elektromagnetischen Spektrums erforderlich.
  • Es sollte hervorgehoben werden, dass die vorstehende Anordnung als darstellend und nicht als einschränkend zu verstehen ist. Beispielsweise können Laser oder andere Lichtquellen anstelle von LEDs verwendet werden. Für Laseraufbauten kann eine zusätzliche Optik (z. B., eine Linse oder ein Diffuser) verwendet werden, um den Laserstrahl zu weiten (und das Sichtfeld dem der Kameras anzugleichen). Nützliche Anordnungen können auch Kurz- und Weitwinkelstrahler für verschiedene Bereiche umfassen. Die Lichtquellen sind in der Regel eher diffuse als spiegelnde Punktlichtquellen; Zum Beispiel sind verpackte LEDs mit lichtstreuender Verkapselung geeignet.
  • Im Betrieb werden die Kameras 102, 104 auf einen Bereich von Interesse 112 gerichtet, in dem ein Objekt von Interesse 114 (in diesem Beispiel eine Hand) und ein oder mehrere Hintergrundobjekte 116 vorhanden sein können. Die Lichtquellen 108, 110 sind angeordnet, um den Bereich 112 zu beleuchten. In einigen Ausführungsformen sind eine oder mehrere der Lichtquellen 108, 110 und eine oder mehrere der Kameras 102, 104 unterhalb der zu erfassenden Bewegung, z. B., wo die Handbewegung erfasst werden soll, unterhalb des Raumbereichs, wo diese Bewegung stattfindet, angeordnet. Dies ist eine optimale Position, da die Menge der über die Hand aufgezeichneten Informationen proportional zu der Anzahl der Pixel ist, die sie in den Kamerabildern besetzt, wobei die Hand mehr Pixel besetzen wird, wenn der Kamerawinkel in Bezug auf die Ausrichtung der Hand so senkrecht wie möglich ist. Weil es für einen Benutzer unbequem ist, seine Handfläche in Richtung eines Bildschirms auszurichten, umfassen die optimalen Positionen entweder von unten nach oben schauend, von oben nach unten schauend (das eine Brücke erfordert) oder vom Bildschirmrand schräg nach oben oder diagonal nach unten schauend. In nach oben schauenden Szenarien, ist die Wahrscheinlichkeit einer Verwechslung mit Hintergrundobjekten gering (zum Beispiel die Unordnung auf dem Schreibtisch des Benutzers), und beim direkten nach oben Schauen ist die Wahrscheinlichkeit einer Verwechslung mit anderen Menschen außerhalb des Sichtfeldes gering (aufgrund des Nichtabbildens der Gesichter wird auch die Privatsphäre erhöht). Das Bildanalysesystem 106, das beispielsweise ein Computersystem sein kann, kann den Betrieb der Lichtquellen 108, 110 und der Kameras 102, 104 steuern, um Bilder des Bereichs 112 aufzunehmen. Auf der Grundlage der aufgenommenen Bilder bestimmt das Bildanalysesystem 106 die Position und/oder die Bewegung des Objekts 114.
  • Beispielsweise kann das Bildanalysesystem 106 als Schritt bei der Bestimmung der Position des Objekts 114 bestimmen, welche Pixel der von den Kameras 102, 104 aufgenommenen, verschiedenen Bilder Teile des Objekts 114 enthalten. In einigen Ausführungsformen kann jedes Pixel in einem Bild als ein ”Objekt”-Pixel oder ein ”Hintergrund”-Pixel eingeordnet werden, je nachdem, ob das Pixel einen Teil des Objekts 114 aufweist oder nicht. Unter Verwendung der Lichtquellen 108, 110, kann auf der Grundlage der Helligkeit des Pixels eine Klassifizierung der Pixel als Objekt- oder Hintergrund-Pixel erfolgen. Beispielsweise wird erwartet, dass der Abstand (rO) zwischen einem Objekt von Interesse 114 und den Kameras 102, 104 kleiner als der Abstand (rB) zwischen dem Hintergrundobjekt(en) 116 und den Kameras 102, 104 ist. Da die Lichtintensität der Quellen 108, 110 mit 1/r2 abnimmt, wird das Objekt 114 heller beleuchtet als der Hintergrund 116, und die Pixel, die Teile des Objekts 114 (d. h., Objekt-Pixel) aufweisen, werden entsprechend heller als jene Pixel, die Teile des Hintergrunds 116 (d. h., Hintergrund-Pixel) aufweisen. Ist zum Beispiel rB/rO = 2, werden die Objekt-Pixel ungefähr vier Mal heller als die Hintergrund-Pixel, vorausgesetzt das Objekt 114 und der Hintergrund 116 reflektieren das Licht von den Quellen 108, 110 in ähnlicher Weise, und unter der weiteren Annahme, dass die Gesamtbeleuchtung des Bereichs 112 (wenigstens in dem von den Kameras 102, 104 erfassten Frequenzband) von den Lichtquellen 108, 110 dominiert wird. Diese Annahmen gelten im Allgemeinen für eine entsprechende Auswahl der Kameras 102, 104, der Lichtquellen 108, 110, der Filter 120, 122 und üblicherweise antreffende Objekte. Beispielsweise können die Lichtquellen 108, 110 Infrarot-LEDs umfassen, die in der Lage sind, Strahlung insbesondere in einem schmalen Frequenzband zu emittieren, und die Filter 120, 122 können auf das Frequenzband der Lichtquellen 108, 110 abgestimmt werden. Obwohl eine menschliche Hand oder Körper oder eine Wärmequelle oder ein anderes Objekt im Hintergrund eine gewisse Infrarotstrahlung emittieren kann, wird das Ansprechverhalten der Kameras 102, 104 dennoch durch Licht, das von den Quellen 108, 110 stammt und von dem Objekt 114 und/oder dem Hintergrund 116 reflektiert wird, dominiert.
  • Bei dieser Anordnung kann das Bildanalysesystem 106 schnell und genau die Objekt-Pixel von den Hintergrund-Pixeln unterscheiden, indem ein Helligkeitsschwellwert auf jedes Pixel angewandt wird. Beispielsweise kann die Pixelhelligkeit in einem CMOS-Sensor oder in einer ähnlichen Vorrichtung auf einer Skala von 0,0 (dunkel) bis 1,0 (vollständig gesättigt) gemessen werden, wobei gewisse Abstufungswerte dazwischen von dem Sensoraufbau abhängen. Die von den Kamerapixeln kodierte Helligkeit skaliert, in der Regel aufgrund der abgeschiedenen Ladung oder Diodenspannungen, standardmäßig (linear) mit der Leuchtkraft des Objekts. In einigen Ausführungsformen, sind die Lichtquellen 108, 110 hell genug, dass reflektiertes Licht von einem Objekt bei einer Entfernung von rO eine Helligkeit von 1,0 erzeugt, während ein Objekt bei einer Entfernung von rB = 2rO eine Helligkeit von 0,25 erzeugt. Somit können die Objekt-Pixel auf Grundlage der Helligkeit leicht von den Hintergrund-Pixeln unterschieden werden. Ferner können auch Kanten des Objekts ohne weiteres auf Grundlage der Helligkeitsunterschiede zwischen benachbarten Pixeln erfasst werden, so dass die Position des Objektes in jedem Bild bestimmt werden kann. Korrelierende Objektpositionen zwischen den Bildern der Kameras 102, 104 ermöglicht es dem Bildanalysesystem 106, die Position im 3D-Raum des Objekts 114 zu bestimmen, und die Analyse von Bildsequenzen ermöglicht es dem Bildanalysesystem 106, die 3D-Bewegung des Objekts 114 mit herkömmlichen Bewegungsalgorithmen zu rekonstruieren.
  • Es versteht sich, dass das System 100 der Erklärung dient und Änderungen und Modifikationen möglich sind. Zum Beispiel sind die Lichtquellen 108, 110 auf beiden Seiten der Kameras 102, 104 angeordnet. Dies erleichtert, aus der Perspektive der beiden Kameras gesehen, die Beleuchtung der Objektkanten 114; Jedoch ist keine besondere Anordnung der Kameras und Lichtquellen erforderlich. (Beispiele für andere Anordnungen werden unten beschrieben.) Solange das Objekt deutlich näher an den Kameras ist als der Hintergrund, kann ein verbesserter Kontrast, wie hierin beschrieben, erreicht werden.
  • Das Bildanalysesystem 106 (auch als eine Bildanalysevorrichtung bezeichnet) kann eine beliebige Vorrichtung oder Vorrichtungskomponente umfassen oder aus dieser bestehen, die in der Lage ist, Bilddaten, beispielsweise unter Verwendung von hierin beschriebenen Verfahren, aufzunehmen und zu verarbeiten. 2 zeigt ein vereinfachtes Blockdiagramm eines Computersystems 200, das das Bildanalysesystem 106 gemäß einer Ausführungsform der vorliegenden Erfindung verwendet. Das Computersystem 200 enthält einen Prozessor 202, einen Speicher 204, eine Kamera-Schnittstelle 206, eine Anzeige 208, einen Lautsprecher 209, eine Tastatur 210 und eine Maus 211.
  • Der Speicher 204 kann verwendet werden, um vom Prozessor 202 auszuführende Befehle zu speichern, die sowie Daten, die der Ausführung der Befehle zugeordnet sind, einzugeben und/oder auszugeben. Insbesondere umfasst der Speicher 204 Befehle, konzeptionell als eine im Folgenden näher beschriebene Modulgruppe dargestellt, die den Betrieb des Prozessors 202 und seine Wechselwirkung mit den anderen Hardware-Komponenten steuern. Ein Betriebssystem steuert die Durchführung systemnaher Systembasisfunktionen, wie Speicherzuweisung, Dateimanagement und Massenspeichergerätevorgänge. Das Betriebssystem kann eine Vielzahl von Betriebssystemen, wie das Microsoft WINDOWS-Betriebssystem, das Unix-Betriebssystem, das Linux-Betriebssystem, das Xenix-Betriebssystem, das IBM AIX-Betriebssystem, das Hewlett Packard UX-Betriebssystem, das Novell NETWARE-Betriebssystem, das Sun Microsystems SOLARIS-Betriebssystem, das OS/2-Betriebssystem, das BeOS-Betriebssystem, das MACINTOSH-Betriebssystem, das APACHE-Betriebssystem, ein OPENSTEP-Betriebssystem oder eine andere Betriebssystemplattform sein oder umfassen.
  • Die Rechnerumgebung kann auch andere entfernbare/nicht-entfernbare, flüchtige/nichtflüchtige Computerspeichermedien umfassen. Zum Beispiel kann ein Festplattenlaufwerk von nicht-entfernbaren, nichtflüchtigen magnetischen Medien lesen oder darauf schreiben. Eine Magnetplattenlaufwerk kann von einer entfernbaren, nichtflüchtigen Magnetplatte lesen oder darauf schreiben, und ein optisches Plattenlaufwerk kann von einer entfernbaren, nichtflüchtigen optischen Platte, wie einer CD-ROM oder anderen optischen Medien, lesen oder darauf schreiben. Andere entfernbare/nicht-entfernbare, flüchtige/nichtflüchtige Computerspeichermedien, die in der beispielhaften Betriebsumgebung verwendbar sind, umfassen Magnetbandkassetten, Flash-Speicherkarten, digitale, vielseitig verwendbare Disks, ein digitales Videoband, Halbleiterspeicher RAM, Halbleiterspeicher ROM und dergleichen, sind aber nicht darauf beschränkt. Die Speichermedien sind typischerweise über eine entfernbare oder nicht entfernbare Speicherschnittstelle mit dem Systembus verbunden.
  • Der Prozessor 202 kann ein Allzweck-Mikroprozessor sein, aber je nach Anwendung alternativ einen Mikrocontroller, ein peripheres integriertes Schaltkreiselement, ein CSIC (anwenderspezifisch-integrierte Schaltung), ein ASIC (anwenderspezifisch-integrierte Schaltung), eine logische Schaltung, einen digitalen Signalprozessor, eine programmierbare Logikvorrichtung, wie ein FPGA (Field Programmable Gate Array), eine PLD (programmierbare Logikvorrichtung), eine PLA (programmierbares Logik-Array), einen RFID-Prozessor, Smart Chip oder ein anderes Gerät oder Vorrichtungsanordnung, die für die Umsetzung der Verfahrensschritte der Erfindung geeignet ist, umfassen.
  • Die Kamera-Schnittstelle 206 kann Hardware und/oder Software umfassen, die die Kommunikation zwischen dem Computersystem 200 und den Kameras, wie den in 1 gezeigten Kameras 102, 104, sowie den dazugehörigen Lichtquellen, wie den in 1 gezeigten Lichtquellen 108, 110, ermöglicht. Somit kann zum Beispiel die Kamera-Schnittstelle 206 eine oder mehrere Datenschnittstellen 216, 218, an die die Kameras angeschlossen werden kann, sowie Hardware- und/oder Software-Signalprozessoren zur Modifizierung von Datensignalen, die aus den Kameras empfangen werden (z. B., zur Verringerung von Rauschen oder Umformatierung von Daten), vor dem Bereitstellen der Signale als Eingänge an ein herkömmliches Bewegungserfassungsprogramm (”mocap”) 214, das auf dem Prozessor 202 ausführt wird, umfassen. In einigen Ausführungsformen kann die Kamera-Schnittstelle 206 auch Signale an die Kameras übertragen, beispielsweise zur Aktivierung oder zur Deaktivierung der Kameras, um die Kameraeinstellungen (Bildfolge, Bildqualität, Empfindlichkeit, etc.) oder dergleichen zu steuern. Solche Signale können beispielsweise in Reaktion auf die Steuerungssignale von dem Prozessor 202 übertragen werden, die wiederum in Reaktion auf Benutzereingaben oder andere detektierte Ereignisse erzeugt werden können.
  • Die Kamera-Schnittstelle 206 kann auch Steuerungen 217, 219 umfassen, an die Lichtquellen (z. B., die Lichtquellen 108, 110) angeschlossen werden können. In einigen Ausführungsformen führen die Steuerungen 217, 219 den Lichtquellen Arbeitsstrom zu, beispielsweise in Reaktion auf Befehle von dem Prozessor 202, der das mocap-Programm 214 ausführt. In anderen Ausführungsformen können die Lichtquellen den Arbeitsstrom von einer externen Stromversorgung (nicht gezeigt) aufnehmen, und die Steuerungen 217, 219 können Steuersignale für die Lichtquellen erzeugen, beispielsweise durch Anweisen, dass die Lichtquellen ein- oder ausgeschalten werden oder die Helligkeit ändern. In einigen Ausführungsformen kann eine einzelne Steuerung zur Steuerung mehrerer Lichtquellen verwendet werden.
  • Befehle, die das mocap-Programm 214 definieren, sind im Speicher 204 gespeichert, und diese Befehle führen bei der Ausführung eine Bewegungserfassungsanalyse an Bildern von den Kameras, die mit der Kameras-Schnittstelle 206 verbunden sind, durch. In einer Ausführungsform umfasst das mocap-Programm 214 verschiedene Module, wie z. B. ein Objekterfassungsmodul 222 und ein Objektanalysemodul 224; Diese beiden Module sind wiederum herkömmlich und im Stand der Technik ausführlich beschrieben. Das Objekterfassungsmodul 222 kann Bilder analysieren (z. B. die durch die Kamera-Schnittstelle 206 erfassten Bilder), um darin Kanten eines Objekts und/oder andere Informationen über die Position des Objekts zu erfassen. Das Objektanalysemodul 224 kann die von dem Objektdetektionsmodul 222 bereitgestellten Objektinformationen analysieren, um die 3D-Position und/oder -Bewegung des Objekts zu bestimmen. Beispiele der Vorgänge, die in Code-Modulen des mocap-Programms 214 implementiert sein können, werden nachstehend beschrieben. Der Speicher 204 kann auch andere Informationen und/oder Code-Module des mocap-Programms 214 verwendet.
  • Die Anzeige 208, die Lautsprecher 209, die Tastatur 210 und die Maus 211 können verwendet werden, um die Wechselbeziehung des Benutzers mit dem Computersystem 200 zu erleichtern. Diese Komponenten können einen im Allgemeinen herkömmlichen Aufbau aufweisen oder wie gewünscht modifiziert werden, um jegliche Art von Benutzerinteraktion bereitzustellen. In einigen Ausführungsformen können die Ergebnisse der Bewegungserfassung unter Verwendung der Kamera-Schnittstelle 206 und des mocap-Programms 214 als Benutzereingaben interpretiert werden. Zum Beispiel kann ein Benutzer Handgesten ausführen, die mit dem mocap-Programm 214 analysiert werden, und die Ergebnisse dieser Analyse können als ein Befehl an ein anderes Programm, das auf dem Prozessor 200 ausgeführt wird (z. B. einen Web-Browser, eine Textverarbeitung oder eine andere Anwendung), interpretiert werden. Somit kann zum Zwecke der Veranschaulichung ein Benutzer nach oben oder unten verlaufende, streichende Gesten verwenden, um eine derzeit auf der Anzeige 208 angezeigte Webseite „zu verschieben” (engl. scroll), und rotierende Gesten verwenden, um die Lautstärke der Audioausgabe über die Lautsprecher 209 zu erhöhen oder zu verringern, und so weiter.
  • Es versteht sich, dass das Computersystem 200 veranschaulichend ist und Änderungen und Modifikationen möglich sind. Computersysteme können in einer Vielzahl von Formfaktoren, einschließlich Server-Systemen, Desktop-Systemen, Laptop-Systemen, Tablets, Smartphones oder Minicomputer (PDA's) und so weiter, implementiert werden. Eine besondere Anwendung kann eine andere Funktionsweise, die hier nicht beschrieben ist, wie beispielsweise drahtgebundene und/oder drahtlose Netzwerkschnittstellen, Medienabspiel- und/oder -aufnahmefunktionen usw., umfassen. In einigen Ausführungsformen kann eine oder mehrere Kameras in den Computer eingebaut ein, anstatt sie als separate Komponenten bereitzustellen. Ferner kann eine Bildanalysevorrichtung implementiert werden, die nur einen Teilsatz von Computersystemkomponenten verwendet (z. B., ein Programm-Code ausführender Prozessor, ein ASIC oder ein digitaler Signalprozessor mit festen Funktionen, der geeignete I/O-Schnittstellen aufweist, um Bilddaten zu empfangen und Analyseergebnisse auszugeben).
  • Während das Computersystem 200 hierin mit Bezug auf bestimmte Blöcke beschrieben wurde, sollte verstanden werden, dass die Blöcke zur Vereinfachung der Beschreibung definiert wurden und nicht dazu gedacht sind, eine bestimmte physikalische Anordnung der Komponenten zu implizieren. Ferner müssen die Blöcke nicht physisch getrennten Komponenten entsprechen. Soweit physisch getrennte Komponenten verwendet werden, können Verbindungen zwischen den Komponenten (z. B. zur Datenkommunikation) je nach Bedarf drahtgebunden und/oder drahtlos sein.
  • Die Ausführung des Objekterfassungsmoduls 222 durch den Prozessor 202 kann den Prozessor 202 veranlassen, die Kamera-Schnittstelle 206 zu steuern, um Bilder eines Objekts zu erfassen und durch die Analyse der Bilddaten Objekt-Pixel von Hintergrund-Pixeln zu unterscheiden. 3A3C zeigen drei verschiedene Diagramme der Helligkeitsdaten für die Pixelreihen, die gemäß den verschiedenen Ausführungsformen der vorliegenden Erfindung erhalten werden können. Während jedes Diagramm eine Pixelreihe darstellt, versteht es sich, dass ein Bild typischerweise viele Pixelreihen umfasst, und dass eine Reihe eine beliebige Anzahl von Pixeln enthalten kann; Zum Beispiel kann ein HD-Videobild 1080 Zeilen mit jeweils 1920 Pixel umfassen.
  • 3A stellt Helligkeitsdaten 300 für eine Pixelreihe dar, wobei das Objekt einen einzigen Querschnitt, wie beispielsweise einen Querschnitt durch eine Handfläche einer Hand, aufweist. Die dem Objekt entsprechenden Pixel im Bereich 302 weisen eine hohe Helligkeit auf, während die dem Hintergrund entsprechenden Pixel in den Bereichen 304 und 306 eine deutlich geringere Helligkeit aufweisen. Wie gesehen werden kann, ist die Position des Objekts ohne weiteres ersichtlich, und die Positionen der Kanten des Objekts (bei 308, bei 310) sind leicht identifizierbar. Zum Beispiel kann angenommen werden, dass jedes Pixel mit einer Helligkeit über 0,5 ein Objekt-Pixel darstellt, während jedes Pixel mit einer Helligkeit unter 0,5 als ein Hintergrund-Pixel angesehen werden kann.
  • 3B stellt Helligkeitsdaten 320 für eine Pixelreihe dar, wobei das Objekt mehrere unterschiedliche Querschnitte, wie beispielsweise einen Querschnitt durch die Finger einer geöffneten Hand, aufweist. Die dem Objekt entsprechenden Bereiche 322, 323 und 324 weisen eine hohe Helligkeit auf, während die dem Hintergrund entsprechenden Pixel in den Bereichen 326329 eine geringe Helligkeit aufweisen. Auch hier genügt eine einfache Helligkeitsschwellwertgrenze (z. B. 0,5), um die Objekt-Pixel von den Hintergrund-Pixeln zu unterscheiden, und die Objektkanten können leicht bestimmt werden.
  • 3C stellt Helligkeitsdaten 340 für eine Pixelreihe dar, wobei sich der Abstand zu dem Objekt innerhalb der Reihe ändert, wie beispielsweise ein Querschnitt einer Hand mit zwei in Richtung der Kamera ausgestreckten Fingern. Die Bereiche 342 und 343 entsprechen den ausgestreckten Fingern und haben die höchste Helligkeit; Die Bereiche 344 und 345 entsprechen den anderen Abschnitten der Hand und sind etwas weniger hell; Dies liegt zum Teil daran, dass sie weiter weg sind und zum Teil daran, dass der Schatten durch die ausgestreckten Finger darauf fällt. Die Bereiche 348 und 349 sind Hintergrundbereiche und erheblich dunkler als die Bereiche 342345, die die Hand aufweisen. Eine Helligkeitsschwellenwertgrenze (z. B. bei 0,5) genügt wiederum, um die Objekt-Pixel von den Hintergrund-Pixeln zu unterscheiden. Es kann eine weitere Analyse der Objekt-Pixel zur Ermittlung der Kanten der Bereiche 342 und 343 durchgeführt werden, um zusätzliche Informationen über die Form des Objekts zu erhalten.
  • Es versteht sich, dass die in den 3A3C gezeigten Daten der Erklärung dienen. In einigen Ausführungsformen kann es wünschenswert sein, die Intensität der Lichtquellen 108, 110 anzupassen, so dass ein Objekt bei einer erwarteten Entfernung (z. B. rO in 1) überbelichtet wird – das heißt, viele, wenn nicht alle der Objekt-Pixel werden bis zu einem Helligkeitsgrad von 1,0 vollständig gesättigt. (Die tatsächliche Helligkeit des Objekts kann in Wirklichkeit höher sein.) Obwohl dies auch die Hintergrund-Pixel etwas heller machen kann, führt die 1/r2-Abnahme der Lichtintensität mit der Entfernung immer noch zu einem klaren Unterscheidung zwischen Objekt- und Hintergrund-Pixel, solange die Intensität nicht so hoch eingestellt wird, dass sich auch die Hintergrund-Pixel dem Sättigungsniveau nähern. Wie die 3A3C darstellen, ermöglicht die Verwendung einer direkt auf das Objekt gerichteten Beleuchtung zur Erzeugung eines starken Kontrasts zwischen dem Objekt und dem Hintergrund, die Verwendung von einfachen und schnellen Algorithmen, um zwischen Hintergrund-Pixel und Objekt-Pixel zu unterscheiden, die in Echtzeit-Bewegungserfassungssystemen besonders nützlich sein können. Das Vereinfachen der Aufgabe, die Hintergrund-Pixel von den Objekt-Pixel zu unterscheiden, kann auch Rechenressourcen für andere Bewegungserfassungsaufgaben (z. B. die Rekonstruktion der Objektposition, -form und/oder -bewegung) freisetzen.
  • Im Folgenden wird nun Bezug auf die 4 genommen, die ein Verfahren 400 zur Bestimmung der Position eines Objekts in einem Bild gemäß einer Ausführungsform der vorliegenden Erfindung veranschaulicht. Das Verfahren 400 kann z. B. in dem System 100 der 1 implementiert werden. In Block 402 werden die Lichtquellen 108, 110 eingeschaltet. In Block 404 werden ein oder mehrere Bilder mit den Kameras 102, 104 aufgenommen. In einigen Ausführungsformen wird ein Bild von jeder Kamera erfasst. In anderen Ausführungsformen wird eine Folge von Bildern von jeder Kamera aufgenommen. Die Bilder von den zwei Kameras können zeitlich genau (z. B., simultan innerhalb einiger Millisekunden) korreliert werden, so dass die korrelierten Bilder von den zwei Kameras zur Bestimmung der 3D-Position des Objekts verwendet werden können.
  • In Block 406 wird eine Schwellwert-Pixelhelligkeit angewendet, um die Objekt-Pixel von den Hintergrund-Pixeln zu unterscheiden. Block 406 kann auch das Bestimmen von Positionen der Objektkanten auf der Grundlage von Übergangspunkten zwischen Hintergrund- und Objekt-Pixel umfassen. In einigen Ausführungsformen wird jedes Pixel zunächst entweder als Objekt oder Hintergrund klassifiziert, abhängig davon, ob es die Schwellwerthelligkeitsgrenze überschreitet. Zum Beispiel wird, wie in 3A3C gezeigt, ein Grenze (Cutoff) bei einem Sättigungsgrad von 0,5 verwendet. Nach der Klassifizierung der Pixel können die Kanten erfasst werden, indem Positionen gefunden werden, an denen sich Hintergrund-Pixel neben den Objekt-Pixel befinden. In einigen Ausführungsformen kann es zur Vermeidung von Rauschartefakten erforderlich sein, dass die Bereiche der Hintergrund- und Objekt-Pixel auf jeder Seite der Kante eine gewisse Mindestgröße (z. B. 2, 4 oder 8 Pixel) aufweisen.
  • In anderen Ausführungsformen können Kanten erfasst werden, ohne die Pixel zuerst als Objekt oder Hintergrund zu klassifizieren. Zum Beispiel kann Δβ als Helligkeitsdifferenz zwischen benachbarten Pixeln definiert werden, und |Δβ| über einem Schwellwert (z. B., 0,3 oder 0,5 in Bezug auf die Sättigungsskala) kann einen Übergang vom Hintergrund zum Objekt oder vom Objekt zum Hintergrund zwischen benachbarten Pixeln angeben. (Das Vorzeichen von Δβ kann die Richtung des Übergangs anzeigen.) In einigen Fällen, in denen die Kante des Objekts tatsächlich in der Mitte eines Pixels liegt, kann es ein Pixel mit einem Zwischenwert an der Grenze geben. Dies kann beispielsweise durch Berechnen von zwei Helligkeitswerten für ein Pixel i festgestellt werden: βL = (βi + βi – 1)/2 und βR = (βi + βi + 1)/2, wobei Pixel (i – 1) links von Pixel i liegt und das Pixel (i + 1) auf der rechten Seite des Pixels i liegt. Befindet sich Pixel i ist nicht in der Nähe einer Kante, ist |βL – βR| in der Regel nahe Null; Befindet sich das Pixel in der Nähe einer Kante, dann ist |βL – βR| näher bei 1, und ein Schwellwert für |βL – βR| kann zur Erfassung von Kanten verwendet werden.
  • In einigen Fällen kann ein Teil eines Objekts teilweise ein anderes in einem Bild verdecken; Zum Beispiel kann im Fall einer Hand, ein Finger teilweise die Handfläche oder einen anderen Finger verdecken. Überdeckungskanten, die auftreten, wenn ein Teil des Objekts teilweise ein anderes verdeckt, können auch auf der Grundlage kleinerer, aber deutlicher Veränderungen in der Helligkeit erkannt wird, nachdem die Hintergrund-Pixel beseitigt wurden. 3C zeigt ein Beispiel einer solchen teilweisen Verdeckung, und die Positionen der Überdeckungskanten sind offensichtlich.
  • Die erfassten Kanten können für viele Zwecke verwendet werden. Zum Beispiel, wie zuvor erwähnt, können die Kanten des Objektes, wenn durch die zwei Kameras betrachtet, verwendet werden, um eine ungefähre Position des Objekts im 3D-Raum zu bestimmen. Die Position des Objektes in einer 2D-Ebene quer zur optischen Achse der Kamera kann von einem einzigen Bild bestimmt werden, und der Versatz (Parallaxe) zwischen der Position des Objekts in zeitkorrelierten Bilder von zwei verschiedenen Kameras kann verwendet werden, um die Entfernung zu dem Objekt, wenn der Abstand zwischen den Kameras bekannt ist, zu bestimmen.
  • Ferner kann die Position und die Form des Objekts auf der Grundlage der Positionen der Kanten in den zeitkorrelierten Bilder von zwei verschiedenen Kameras bestimmt werden, und die Bewegung (einschließlich der Gelenke) des Objekts kann aus der Analyse der aufeinanderfolgenden Bilderpaare bestimmt werden. Beispiele für Verfahren, die zur Bestimmung einer Objektposition, -form und -bewegung auf der Grundlage der Positionen der Objektkanten verwendet werden können, sind in der am 7. März 2012 eingereichten ebenfalls anhängigen US-Anmeldung Nr. 13/414,485 beschrieben, deren gesamte Offenbarung durch Bezugnahme hierin aufgenommen ist. Fachleute auf dem Gebiet mit Zugang zu der vorliegenden Offenbarung werden erkennen, dass auch andere Verfahren zur Bestimmung von Position, Form und Bewegung eines Objekts auf der Grundlage von Informationen über die Position der Objektkanten verwendet werden können.
  • In Übereinstimmung mit der '485-ger Anmeldung wird die Bewegung und/oder die Position eines Objekts unter Verwendung kleiner Informationsmengen rekonstruiert. Zum Beispiel kann eine Kontur einer Objektform, oder eine Silhouette, von einem bestimmten Blickwinkel aus gesehen verwendet werden, um Tangenten (Berührungslinien) für das Objekt von diesem Blickwinkel in verschiedenen Ebenen zu definieren, die hier als ”Schicht” bezeichnet werden. Unter Verwendung von nur zwei verschiedenen Blickwinkeln können vier (oder mehr) Tangenten von den Blickwinkeln zum Objekt in einer bestimmten Schicht erhalten werden. Aus diesen vier (oder mehr) Tangenten, ist es möglich, die Position des Objekts in der Schicht zu ermitteln und dessen Querschnitt in der Schicht zu approximieren, beispielsweise indem eine oder mehrere Ellipsen oder andere einfache, geschlossene Kurven verwendet werden. Als weiteres Beispiel können die Positionen von Punkten auf einer Objektoberfläche in einer speziellen Schicht direkt bestimmt werden (z. B., unter Verwendung einer Laufzeitkamera bzw. TOF-Kamera), und die Position und Form eines Querschnitts des Objekts in der Schicht kann durch Ellipsenanpassung oder durch Anpassung einer anderen einfachen, geschlossenen Kurven an die Punkte approximiert werden. Die für verschiedene Schichten bestimmten Positionen und Querschnitte können korreliert werden, um ein 3D-Modell des Objekts, einschließlich seiner Position und Form, zu konstruieren. Eine Abfolge von Bildern kann unter Verwendung desselben Verfahrens analysiert werden, um die Bewegung des Objekts abzubilden. Die Bewegung eines komplexen Objekts, das mehrere separate Gelenkselemente aufweist (wie z. B. eine menschliche Hand), kann mit diesen Verfahren modelliert werden.
  • Insbesondere kann eine Ellipse in der xy-Ebene durch fünf Parameter gekennzeichnet werden: Die x- und y-Koordinaten des Mittelpunkts (xC, yC), die große Halbachse, die kleine Halbachse und einen Drehwinkel (z. B., der Winkel der großen Halbachse relativ zu der x-Achse). Mit nur vier Tangenten wird die Ellipse unterbestimmt. Trotz dieser Tatsache umfasst jedoch ein effizientes Verfahren für die Schätzung der Ellipse das Erstellen einer anfänglichen Arbeitsthese (oder ”Schätzung”) bezüglich einen der Parameter und das Überarbeiten der Annahme, wenn zusätzliche Information bei der Analyse gesammelt wurde. Diese zusätzlichen Informationen können zum Beispiel physikalische Einschränkungen auf der Grundlage der Eigenschaften der Kameras und/oder des Objekts umfassen. In einigen Fällen können mehr als vier Tangenten an einem Objekt für einige oder alle der Schichten verfügbar sein, da beispielsweise mehr als zwei Blickwinkel verfügbar sind. Ein elliptischer Querschnitt kann dennoch bestimmt werden, und das Verfahren ist in einigen Fällen etwas vereinfacht, da es nicht notwendig ist, einen Parameterwert zu schätzen. In einigen Fällen können die zusätzlichen Tangenten eine zusätzliche Komplexität erzeugen. In einigen Fällen können weniger als vier Tangenten an einem Objekt für einige oder alle der Schichten verfügbar sein, da zum Beispiel eine Kante des Objekts außerhalb des Bereiches des Kamerasichtfelds liegt oder weil eine Kante nicht erfasst wurde. Eine Schicht mit drei Tangenten kann analysiert werden. Beispielsweise wird unter Verwendung von zwei Parametern einer an eine benachbarte Schicht angepassten Ellipse (beispielsweise eine Schicht, die wenigstens vier Tangenten aufwies) das Gleichungssystem für die Ellipse und die drei Tangenten ausreichend bestimmt, sodass es gelöst werden kann. Als weitere Option kann ein Kreis an die drei Tangenten angepasst werden; Für die Definition eines Kreises in einer Ebene bedarf es nur drei Parameter (die Mittelpunktkoordinaten und den Radius), so dass drei Tangenten ausreichen, um einen Kreis anzupassen. Schichten mit weniger als drei Tangenten können verworfen oder mit benachbarten Schichten kombiniert werden.
  • Zur geometrischen Bestimmung, ob ein Objekt einem Objekt von Interesse entspricht, umfasst ein Vorgehen das Suchen kontinuierlicher Volumen von Ellipsen, die ein Objekt definieren, und das Verwerfen von Objektsegmenten, die geometrisch mit der ellipsenbasierte Definition des Objekts inkonsistent sind – z. B., Segmente, die zu zylindrisch oder zu gerade oder zu dünn oder zu klein oder zu weit weg sind – und das Verwerfen derselben. Wenn eine ausreichende Anzahl von Ellipsen zur Charakterisierung des Objekts übrig bleibt, und diese dem Objekt von Interesse entspricht, wird es ermittelt und kann von Bildfeld zu Bildfeld verfolgt werden.
  • In einigen Ausführungsformen wird jede einer Anzahl von Schichten getrennt analysiert, um die Größe und die Position des elliptischen Querschnitts des Objekts in dieser Schicht zu bestimmen. Das ergibt ein 3D-Ausgangsmodell (insbesondere einen Stapel von elliptischen Querschnitten), das durch Korrelation der Querschnitte über verschiedene Schichten hinweg weiterentwickelt werden kann. Zum Beispiel wird erwartet, dass die Oberfläche eines Objekts Kontinuität aufweist und diskontinuierliche Ellipsen dementsprechend ignoriert werden können. Eine weitere Verfeinerung bzw. Weiterentwicklung kann durch Korrelation des 3D-Modells mit sich selbst über die Zeit erhalten werden, z. B., auf der Grundlage der Erwartungen bezüglich der Kontinuität in der Bewegung und Verformung. Mit erneutem Bezug auf die 1 und 2, können in einigen Ausführungsformen die Lichtquellen 108, 110 in einem gepulsten Modus gesteuert werden, anstatt kontinuierlich eingeschaltet zu sein. Dies ist nützlich, wenn beispielsweise die Lichtquellen 108, 110 ein helleres Licht in einem Puls als im Dauerbetrieb erzeugen können. 5 zeigt eine Zeitachse, in der die Lichtquellen 108, 110 in regelmäßigen Abständen gepulst sind, wie in 502 gezeigt. Die Blenden der Kameras 102, 104 können geöffnet werden, um Bilder zu dem mit den Lichtpulsen übereinstimmenden Zeitpunkt, wie in 504 gezeigt, aufzunehmen. Somit kann ein Objekt von Interesse in den Zeiten, wenn die Bilder erfasst werden, hell beleuchtet werden. In einigen Ausführungsformen werden die Silhouetten eines Objekts von einem oder mehreren Bildern des Objekts, das Informationen über das Objekt aus verschiedenen Blickwinkeln gesehen zeigt, extrahiert. Während die Silhouetten in einigen Ausführungsformen unter Verwendung einer Anzahl verschiedener Verfahren erhalten werden können, werden die Silhouetten unter Verwendung von Kameras zur Aufnahme von Bildern des Objekts und durch Analysieren der Bilder zur Erfassung von Objektkanten erhalten.
  • In einigen Ausführungsformen kann das Pulsen der Lichtquellen 108, 110 verwendet werden, um den Kontrast zwischen einem Objekt von Interesse und dem Hintergrund weiter zu verbessern. Insbesondere kann die Fähigkeit, zwischen relevanten und irrelevanten (z. B., der Hintergrund) Objekten in einer Szene zu unterscheiden, beeinträchtigt werden, sollte die Szene Objekte enthalten, die selbst Licht emittieren oder stark reflektierend sind. Dieses Problem kann durch Einstellen der Belichtungszeit der Kamera auf eine ungewöhnlich kurze Zeitspanne (z. B., 100 Mikrosekunden oder weniger) und Pulsen der Beleuchtung bei sehr hohen Leistungen (d. h., 5 bis 20 Watt oder in einigen Fällen auf höhere Pegel, z. B., 40 Watt) behoben werden. In dieser Zeit, sind die meisten Umgebungslichtquellen (z. B., Leuchtstofflampen) im Vergleich zu einer derartig hellen, Kurzzeit-Beleuchtung sehr dunkel; Das heißt, dass in Mikrosekunden nicht-gepulste Lichtquellen dunkler sind als sie es bei einer Belichtungszeit von Millisekunden oder mehr wären. In Wirklichkeit erhöht diese Vorgehensweise den Kontrast eines Objekts von Interesse in Bezug auf andere Objekte, auch jenen, die im gleichen allgemeinen Bereich emittieren. Dementsprechend ermöglicht das Unterscheiden durch Helligkeit unter solchen Bedingungen, dass irrelevante Objekte zum Zweck der Bildrekonstruktion und der Verarbeitung ignoriert werden können. Der durchschnittliche Stromverbrauch wird ebenfalls reduziert; Bei 20 Watt für 100 Mikrosekunden beträgt der durchschnittliche Stromverbrauch unter 10 Milliwatt. Im Allgemeinen werden die Lichtquellen 108, 110 so gesteuert, dass sie während der gesamten Kamerabelichtungszeit eingeschaltet sind, d. h., die Pulsbreite ist gleich der Belichtungszeit und mit dieser koordiniert.
  • Zudem ist es möglich, das Pulsen der Lichter 108, 110 zu koordinieren, um die bei eingeschaltetem Licht 108, 110 aufgenommenen Bilder und die bei ausgeschaltetem Licht 108, 110 aufgenommenen Bilder zu vergleichen. 6 zeigt eine Zeitachse, in der die Lichtquellen 108, 110 in regelmäßigen Abständen gepulst sind, wie in 602 gezeigt, während die Blenden der Kameras 102, 104 geöffnet sind, um Bilder zu den in 604 gezeigten Zeitpunkten aufzunehmen. In diesem Fall sind die Lichtquellen 108, 110 für jedes zweite Bild ”eingeschaltet”. Befindet sich das Objekt von Interesse deutlich näher an den Lichtquellen 108, 110 als die Hintergrundbereiche, wird die Differenz in der Lichtintensität für die Objekt-Pixel stärker als für die Hintergrund Pixel sein. Dementsprechend kann das Vergleichen der Pixel in aufeinanderfolgenden Bildern dabei helfen, die Objekt- und die Hintergrund-Pixel zu unterscheiden.
  • 7 zeigt ein Flussdiagramm eines Verfahrens 700 zur Bestimmung von Objektkanten unter Verwendung aufeinanderfolgender Bilder gemäß einer Ausführungsform der vorliegenden Erfindung. In Block 702 werden die Lichtquellen ausgeschaltet und in Block 704 wird ein erstes Bild (A) aufgenommen. Dann werden in Block 706 die Lichtquellen eingeschaltet und in Block 708 wird ein zweites Bild (B) aufgenommen. In Block 710 wird eine ”Differenz”-Bild B – A berechnet, beispielsweise durch Subtrahieren des Helligkeitswerts eines jeden Pixels in Bild A von dem Helligkeitswert des entsprechenden Pixels im Bild B. Da Bild B mit eingeschaltetem Licht aufgenommen wurde, wird erwartet, dass B – A für die meisten Pixel positiv ist.
  • Das Differenzbild wird verwendet, um zwischen Vordergrund und Hintergrund zu unterscheiden, indem ein Schwellwert oder eine andere Metrik auf einer Pixel-zu-Pixel Basis verwendet wird. In Block 712 wird zur Ermittlung der Objekt-Pixel ein Schwellwert auf das Differenzbild (B – A) angewendet, wobei (B – A) oberhalb eines Schwellwertes den Objekt-Pixel zugeordnet wird und (B – A) unterhalb des Schwellwertes den Hintergrund-Pixeln zugeordnet wird. Die Objektkanten können dann definiert werden, indem wie oben beschrieben ermittelt wird, wo sich die Objekt-Pixel neben den Hintergrund-Pixeln befinden. Die Objektkanten können, wie oben beschrieben, für Zwecke wie Positions- und/oder Bewegungserfassung verwendet werden.
  • In einer alternativen Ausführungsform werden die Objektkanten vielmehr mit drei Einzelbildern als mit einem Paar ermittelt. Beispielsweise wird in einer Implementierung ein erstes Bild (Bild 1) mit den ausgeschalteten Lichtquellen erhalten; Ein zweites Bild (Bild 2) mit den eingeschalteten Lichtquellen erhalten; Und ein drittes Bild (Bild 3) wird mit den wieder ausgeschalteten Lichtquellen aufgenommen. Zwei Differenzbilder, Bild 4 = abs (Bild 2 – Bild 1) und Bild 5 = abs (Bild 2 – Bild 3) werden dann durch Subtrahieren von Pixelhelligkeitswerten definiert. Ein endgültiges Bild, Bild 6, wird auf der Grundlage der zwei Bilder Bild 4 und Bild 5 definiert. Insbesondere ist der Wert eines jeden Pixels in Bild 6 der kleinere der zwei entsprechenden Pixelwerte in Bild 4 und Bild 5. Mit anderen Worten, Bild 6 = min (Bild 4, Bild 5) auf einer Pixel-zu-Pixel Basis. Bild 6 stellt ein Differenzbild mit verbesserter Genauigkeit dar und die meisten seiner Pixel werden positiv sein. Wie bereits erwähnt, kann ein Schwellwert oder eine andere Metrik auf einer Pixel-zu-Pixel Basis verwendet werden, um Vordergrund- und Hintergrund-Pixel zu unterscheiden.
  • Eine hierin beschriebene kontrastbasierte Objekterfassung kann in jeder Situation, in der erwartet wird, dass Objekte von Interesse deutlich näher (z. B. die Hälfte der Strecke) an der Lichtquelle(n) als an den Hintergrundobjekten sind, angewandt werden. Eine solche Anwendung betrifft die Verwendung der Bewegungserfassung als Benutzereingabe, um mit einem Computersystem zu interagieren. Zum Beispiel kann der Benutzer auf den Bildschirm zeigen oder eine andere Gesten mit der Hand ausführen, die von dem Computersystem als Eingabe interpretiert werden kann.
  • Ein Computersystem 800, das einen Bewegungsdetektor als eine Benutzereingabevorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung aufweist, ist in 8 dargestellt. Das Computersystem 800 umfasst ein Desktopgehäuse 802, das verschiedene Komponenten eines Computersystems, wie Prozessoren, Speicher, Fest- oder Wechselplattenlaufwerke, Videotreiber, Audiotreiber, Netzwerkschnittstellenkomponenten und so weiter aufnehmen kann. Eine Anzeige 804 ist mit dem Desktopgehäuse 802 verbunden und sichtbar für einen Benutzer positioniert. Eine Tastatur 806 ist in Reichweite der Hände des Benutzers positioniert. Eine Bewegungserfassungseinheit 808 ist in der Nähe der Tastatur 806 angeordnet (z. B. dahinter, wie gezeigt, oder auf einer Seite) und in Richtung eines Bereiches gerichtet, in dem es für den Benutzer selbstverständlich ist, auf die Anzeige 804 gerichtete Gesten auszuführen (beispielsweise ein Bereich in der Luft oberhalb der Tastatur und vor dem Monitor). Die Kameras 810, 812 (die wie oben beschrieben ähnlich oder identisch zu den Kameras 102, 104 sein können) sind so angeordnet, dass sie im Allgemeinen nach oben zeigen, und die Lichtquellen 814, 816 (die wie oben beschrieben ähnlich oder identisch zu den Lichtquellen 108, 110 sein können) sind zu beiden Seiten der Kameras 810, 812 angeordnet, um eine Fläche oberhalb der Bewegungserfassungseinheit 808 zu beleuchten. In typischen Implementierungen können die Kameras 810, 812 und die Lichtquellen 814, 816 im Wesentlichen koplanar sein. Diese Konfiguration verhindert das Auftreten von Schatten, die beispielsweise bei der Kantenerkennung stören können (wie dies der Fall sein kann, wenn die Lichtquellen zwischen anstatt zu beiden Seiten der Kameras angeordnet sind). Ein nicht gezeigter Filter kann über der Oberseite der Bewegungserfassungseinheit 808 platziert werden (oder nur über den Öffnungen der Kameras 810, 812), um das ganze Licht außerhalb eines Bandes bei den Spitzenfrequenzen der Lichtquellen 814, 816 zu filtern.
  • Bei der dargestellten Konfiguration wird, wenn der Benutzer eine Hand oder einen anderen Gegenstand (beispielsweise ein Stift) im Sichtfeld der Kameras 810, 812 bewegt, der Hintergrund wahrscheinlich aus einer Decke und/oder verschiedenen an der Decke befestigten Vorrichtungen bestehen. Die Hand des Benutzers kann 10–20 cm über dem Bewegungsdetektor 808 sein, während die Decke fünf bis zehn Mal diesen Abstand (oder mehr) aufweisen kann. Das Licht von den Lichtquellen 814, 816 ist daher wesentlich intensiver auf der Hand des Benutzers als auf der Decke, und die hierin beschriebenen Verfahren können verwendet werden, um zuverlässig zwischen Objekt-Pixel und Hintergrund-Pixel in den von den Kameras 810, 812 aufgenommenen Bilder zu unterscheiden. Bei der Verwendung von Infrarotlicht wird der Benutzer nicht durch das Licht abgelenkt oder davon gestört.
  • Das Computersystem 800 kann die in 1 gezeigte Architektur verwenden. Beispielsweise können die Kameras 810, 812 der Bewegungserfassungseinheit 808 die Bilddaten an das Desktopgehäuse 802 weitergeben, und die Bildanalyse und die anschließende Interpretation kann unter Verwendung der Prozessoren und anderer Komponenten, die in dem Desktopgehäuse 802 untergebracht sind, durchgeführt werden. Alternativ kann die Bewegungserfassungseinheit 808 Prozessoren oder andere Komponenten integrieren, um einige oder alle Stufen der Bildanalyse und Interpretation durchzuführen. Beispielsweise kann die Bewegungserfassungseinheit 808 einen Prozessor (programmierbar oder mit fester Funktion) umfassen, der einen oder mehrere der oben beschriebenen Prozesse verwendet, um zwischen Objekt-Pixel und Hintergrund-Pixel zu unterscheiden. In diesem Fall kann die Bewegungserfassungseinheit 808 eine schwächere Darstellung der aufgenommenen Bilder (z. B., eine Darstellung, in der alle Hintergrund-Pixel eliminiert sind) zur weiteren Analyse und Interpretation an das Desktopgehäuse 802 senden. Eine besondere Aufteilung der Rechenaufgaben zwischen einem Prozessor im Inneren der Bewegungserfassungseinheit 808 und einem Prozessor im Inneren des Desktopgehäuses 802 ist nicht erforderlich.
  • Es ist nicht immer notwendig, zwischen Objekt-Pixel und Hintergrund-Pixel mittels absoluter Helligkeitsstufen zu unterscheiden; Bestehen zum Beispiel Kenntnisse über die Objektform, kann das Muster des Helligkeitsabfalls genutzt werden, um das Objekt in einem Bild zu erkennen, auch ohne explizite Erfassung von Objektkanten. An gerundeten bzw. rundlichen Objekten (wie Hände und Finger) erzeugt die Beziehung 1/r2 zum Beispiel Gauß- oder nahezu Gauss-Helligkeitsverteilungen in der Nähe der Mittelpunkte der Objekte; Das Abbilden eines mit einer LED beleuchteten Zylinders und das senkrechte Anordnen in Bezug auf eine Kamera ergibt ein Bild mit einer hellen Mittellinie, die der Zylinderachse entspricht, wobei die Helligkeit an jeder Seite abfällt (um den Zylinderumfang). Die Finger sind ungefähr zylindrisch, und durch die Ermittlung dieser Gauß-Peaks ist es möglich, die Finger auch in Situationen, in denen sich der Hintergrund in der Nähe befindet und die Kanten aufgrund der relativen Helligkeit des Hintergrunds nicht sichtbar sind, zu finden (entweder aufgrund der Nähe oder der Tatsache, dass dieser aktiv Infrarotlicht emittieren kann). Der Begriff ”Gauß” wird hierin allgemein verwendet, um eine Kurve mit einer negativen zweiten Ableitung zu kennzeichnen. Oft sind solche Kurven glockenförmig und symmetrisch, jedoch ist dies nicht notwendigerweise der Fall; Zum Beispiel kann in Situationen mit höherer Objektspiegelung oder wenn das Objekt einen extremen Winkel aufweist, die Kurve in einer bestimmten Richtung verdreht werden. Dementsprechend ist der hierin verwendete Begriff ”Gauß” nicht auf Kurven beschränkt, die explizit einer Gauß-Funktion entsprechen.
  • 9 zeigt einen Tablet-Computer 900, der einen Bewegungsdetektor gemäß einer Ausführungsform der vorliegenden Erfindung umfasst. Der Tablet-Computer 900 hat ein Gehäuse, dessen vordere Oberfläche einen Bildschirm 902 aufweist, der von einer Einfassung 904 umgeben ist. Ein oder mehrere Steuerknöpfe 906 können in der Einfassung 904 eingebaut sein. Innerhalb des Gehäuses, z. B. hinter dem Bildschirm 902, kann der Tablet-Computer 900 verschiedene herkömmliche Computer-Komponenten (Prozessoren, Speicher, Netzwerkschnittstellen, etc.) aufweisen. Ein Bewegungsdetektor 910 kann unter Verwendung der Kameras 912, 914 (beispielsweise ähnlich oder identisch zu den Kameras 102, 104 der 1) und der Lichtquellen 916, 918 realisiert werden (beispielsweise ähnlich oder identisch zu den Lichtquellen 108, 110 der 1), die in der Einfassung 904 befestigt sind und in Richtung der Vorderfläche ausgerichtet sind, um die Bewegung eines vor dem Tablet-Computer 900 positionierten Benutzers zu erfassen.
  • Wenn der Benutzer eine Hand oder ein anderes Objekt in dem Sichtfeld der Kameras 912, 914 bewegt, wird die Bewegung wie oben beschrieben detektiert. In diesem Fall ist der Hintergrund wahrscheinlich der eigene Körper des Benutzers, in einem Abstand von ungefähr 25–30 cm von dem Tablet-Computer 900. Der Benutzer kann eine Hand oder ein anderes Objekt in einem kurzen Abstand von der Anzeige 902 halten, z. B. 5–10 cm. So lange die Hand des Benutzers deutlich näher an den Lichtquellen 916, 918 ist als der Körper des Benutzers (z. B. die Hälfte des Abstandes), können die hierin beschriebenen beleuchtungsbasierten Kontrastverbesserungsverfahren verwendet werden, um Objekt-Pixel von Hintergrund-Pixel zu unterscheiden. Die Bildanalyse und die anschließende Interpretation als Eingabegesten können innerhalb des Tablet-Computers 900 durchgeführt werden (beispielsweise das wirksame Einsetzen des Hauptprozessors zur Ausführung des Betriebssystems oder anderer Software, um die von den Kameras 912, 914 erhaltenen Daten zu analysierten). Der Benutzer kann somit unter Verwendung der Gesten im 3D-Raum mit dem Tablet 900 interagieren.
  • Ein in 10 gezeigtes Brillensystem 1000 kann ebenfalls einen Bewegungsdetektor gemäß einer Ausführungsform der vorliegenden Erfindung umfassen. Das Brillensystem 1000 kann z. B. in Verbindung mit virtuellen Realitäts- und/oder erweiterten Realitätsumgebung verwendet werden. Das Brillensystem 1000 umfasst Brille 1002, die von einem Benutzer ähnlich den herkömmlichen Brillen tragbar sind. Die Brille 1002 umfasst Okulare 1004, 1006, die kleine Bildschirme enthalten können, um Bilder auf dem linken und rechten Auge des Benutzers zu bilden, z. B., Bilder einer virtuellen Realitätsumgebung. Diese Bilder können von einer Basiseinheit 1008 (beispielsweise einem Computersystem) bereitgestellt werden, die entweder über einen drahtgebundenen oder drahtlosen Kanal in Kommunikation mit der Brille 1002 ist. Die Kameras 1010, 1012 (z. B. ähnlich oder identisch zu den Kameras 102, 104 der 1) können in einem Rahmenabschnitt der Brille 1002 montiert werden, so dass sie nicht die Sicht des Benutzers verdecken. Die Lichtquellen 1014, 1016 können in dem Rahmenabschnitt der Brille 1002 zu beiden Seiten der Kameras 1010, 1012 montiert werden. Die von den Kameras 1010, 1012 gesammelten Bilder können zur Analyse und Interpretation in Form von Gesten, die eine Benutzer-Interaktion mit der virtuellen oder erweiterten Umgebung anzeigen, an die Basiseinheit 1008 übertragen werden. (In einigen Ausführungsformen kann die durch die Okulare 1004 1006 dargestellte virtuelle oder erweiterte Umgebung eine Darstellung der Hand des Benutzers umfassen, und diese Darstellung kann auf den von den Kameras 1010, 1012 gesammelten Bilder basieren.)
  • Wenn der Benutzer mit einer Hand oder einem anderen Objekt im Sichtfeld der Kameras 1008, 1010 gestikuliert, wird die Bewegung, wie oben beschrieben, erfasst. In diesem Fall ist der Hintergrund wahrscheinlich eine Wand eines Raumes, in dem sich der Benutzer befindet, und der Benutzer wird wahrscheinlich in einem gewissen Abstand zur Wand sitzen oder stehen. Solange sich die Hand des Benutzers deutlich näher an den Lichtquellen, 1012, 1014 befindet als der Körper des Benutzers (z. B., die Hälfte des Abstands), werden die hierin beschriebenen beleuchtungsbasierten Kontrastverbesserungsverfahren verwendet, um Objekt-Pixel von Hintergrund-Pixel zu unterscheiden. Die Bildanalyse und die anschließende Interpretation als Eingabegesten können innerhalb der Basiseinheit 1008 durchgeführt werden.
  • Es versteht sich, dass die in 810 gezeigten Bewegungsdetektor-Implementierungen veranschaulichend sind und Änderungen und Modifikationen möglich sind. Zum Beispiel kann ein Bewegungsdetektor oder dessen Komponenten in einem einzigen Gehäuse mit anderen Benutzereingabevorrichtungen untergebracht sein, wie beispielsweise eine Tastatur oder ein Touchpad. Als weiteres Beispiel kann ein Bewegungsdetektor in einem Laptop-Computer untergebracht sein, beispielsweise mit nach oben ausgerichteten Kameras und Lichtquellen, die in der gleichen Oberfläche wie die Laptop-Tastatur eingebaut sind (z. B. an einer Seite der Tastatur oder davor oder dahinter), oder mit frontorientierten Kameras und Lichtquellen, die in einem Rahmen des Laptopbildschirms eingebaut sind. Als noch weiteres Beispiel kann ein tragbarer Bewegungsdetektor realisiert werden, beispielsweise als Kopfhörerbügel oder Headset, der keine aktiven Anzeigen oder optische Komponenten umfasst.
  • Wie in 11 gezeigt, kann die Bewegungsinformation als Benutzereingabe zur Steuerung eines Computersystems oder ein anderes System gemäß einer Ausführungsform der vorliegenden Erfindung verwendet werden. Das Verfahren 1100 kann beispielsweise in Computersystemen, wie sie in 810 gezeigt sind, realisiert werden. In Block 1102 werden die Bilder unter Verwendung der Lichtquellen und Kameras des Bewegungsdetektors erfasst. Wie oben beschrieben, kann das Aufnehmen der Bilder die Verwendung von Lichtquellen umfassen, um das Sichtfeld der Kameras zu beleuchten, so dass sich näher an den Lichtquellen (und den Kameras) befindende Objekte heller beleuchtet werden als weiter entfernte Objekte.
  • In Block 1104 werden die aufgenommenen Bilder analysiert, um die Kanten des Objekts auf der Grundlage von Änderungen in der Helligkeit zu erfassen. Zum Beispiel kann diese Analyse, wie oben beschrieben, das Vergleichen der Helligkeit jedes Pixels mit einem Schwellwert, das Erfassen von Übergängen in der Helligkeit von einem niedrigen Pegel auf einen hohen Pegel über benachbarte Pixel hinweg, und/oder das Vergleichen aufeinanderfolgender Bilder, die mit und ohne Beleuchtung durch die Lichtquellen aufgenommen werden, umfassen. In Block 1106 wird ein kantenbasierter Algorithmus zur Bestimmung der Position und/oder der Bewegung des Objekts verwendet. Dieser Algorithmus kann zum Beispiel jeden der in der oben genannten '485-ger Anmeldung beschriebenen tangentenbasierten Algorithmen umfassen; Andere Algorithmen können ebenfalls verwendet werden.
  • In Block 1108 wird auf der Grundlage der Position und/oder der Bewegung des Objekts eine Geste ermittelt. Zum Beispiel kann eine Bibliothek von Gesten auf der Grundlage der Position und/oder der Bewegung der Finger eines Benutzers definiert werden. Ein ”Tippen” kann auf der Grundlage einer schnellen Bewegung eines ausgestreckten Fingers in Richtung eines Bildschirms definiert werden. Ein ”Spurziehen” kann als Bewegung eines ausgestreckten Fingers in einer Ebene in etwa parallel zu dem Bildschirm festgelegt werden. Ein Zangengriff nach innen kann in Form von zwei ausgestreckten Fingern, die sich zueinander bewegen, definiert werden und ein Zangengriff nach außen kann in Form von zwei ausgestreckten Fingern, die sich weiter auseinander bewegen, definiert werden. Streichgesten können auf der Grundlage der Bewegung des ganzen Hand in eine bestimmte Richtung definiert werden (z. B. oben, unten, links, rechts) und verschiedene Streichgesten können ferner auf der Grundlage der Anzahl der ausgestreckten Finger (beispielsweise einen, zwei, alle) definiert werden. Andere Gesten können ebenfalls definiert werden. Durch Vergleichen einer erfassten Bewegung mit der Bibliothek kann eine bestimmte Geste, die mit der erfassten Position und/oder Bewegung in Verbindung gebracht wird, bestimmt werden.
  • In Block 1110 wird die Geste als Benutzereingabe, die das Computersystem verarbeiten kann, interpretiert. Die besondere Verarbeitung hängt im Allgemeinen von Anwendungsprogrammen ab, die gerade auf dem Computersystem ausgeführt werden und davon, wie diese Programme konfiguriert sind, um auf bestimmte Eingaben zu reagieren.
  • Zum Beispiel kann ein Tippen in einem Browser-Programm als Auswahl eines Links, auf den der Finger zeigt, interpretiert werden. Ein Tippen in einem Textverarbeitungsprogramm kann als Setzen des Cursors an eine Position, auf die der Finger zeigt, oder als Auswahl eines Menüpunktes oder eines anderen grafischen Bedienungselements, das auf dem Bildschirm sichtbar ist, interpretiert werden. Die besonderen Gesten und Interpretationen können wie gewünscht auf der Ebene der Betriebssysteme und/oder Anwendungen festgelegt werden, und es ist keine besondere Interpretation einer Geste erforderlich.
  • Eine Ganzkörperbewegung kann für ähnliche Zwecke aufgenommen und verwendet werden. In solchen Ausführungsformen erfolgt die Analyse und Rekonstruktion vorteilhafterweise etwa in Echtzeit (z. B. Zeiten, die mit der menschlichen Reaktionszeit vergleichbar sind), so dass der Benutzer eine natürliche Interaktion mit dem Gerät erfährt. In anderen Anwendungen kann die Bewegungserfassung für eine digitale Wiedergabe, die nicht in Echtzeit durchgeführt wird, zum Beispiel für computeranimierte Filme oder dergleichen, verwendet werden; In solchen Fällen kann die Analyse so lange wie gewünscht dauern.
  • Die hierin beschriebenen Ausführungsformen bieten eine effiziente Unterscheidung zwischen Objekt und Hintergrund in den Aufnahmen, indem die Abnahme der Lichtintensität mit der Entfernung genutzt wird. Durch helles Beleuchten des Objekts unter Verwendung einer oder mehreren Lichtquellen, die sich wesentlich näher an dem Objekt als am Hintergrund befinden (z. B. um einen Faktor zwei oder mehr), kann der Kontrast zwischen Objekt und Hintergrund erhöht werden. In einigen Fällen können Filter verwendet werden, um Licht von anderen als den vorgesehenen Quellen zu entfernen. Infrarotlicht kann unerwünschtes ”Rauschen” oder helle Flecken von sichtbaren Lichtquellen, die wahrscheinlich in der Umgebung auftreten, in der die Bilder aufgenommen werden, verringern und es kann auch eine Ablenkung des Benutzers verringern (der vermutlich Infrarot nicht sehen kann).
  • Die oben beschriebenen Ausführungsformen stellen zwei Lichtquellen bereit, die zu beiden Seiten der Kameras, die zur Aufnahme von Bildern des Objekts von Interesse verwendet werden, angeordnet sind. Diese Anordnung ist besonders dann nützlich, wenn die Positions- und Bewegungsanalyse darauf beruht, dass die Kanten des Objekts von jeder Kamera aus gesehen bekannt sind, da die Lichtquellen diese Kanten beleuchten. Jedoch können auch andere Anordnungen verwendet werden. Zum Beispiel zeigt 12 ein System 1200 mit einer einzigen Kamera 1202 und zwei Lichtquellen 1204, 1206, die zu beiden Seiten der Kamera 1202 angeordnet sind. Diese Anordnung kann verwendet werden, um Bilder des Objekts 1208 und Schatten, die von dem Objekt 1208 auf einen flachen Hintergrundbereich 1210 geworfen werden, zu erfassen. In diese Ausführungsform können die Objekt-Pixel und die Hintergrund-Pixel leicht unterschieden werden. Darüber hinaus, sofern der Hintergrund 1210 nicht zu weit von dem Objekt 1208 entfernt ist, ist noch immer genug Kontrast zwischen den Pixeln im schattigen Hintergrundbereich und den Pixeln im nicht schattigen Hintergrundbereich vorhanden, um eine Unterscheidung zwischen den beiden zu ermöglichen. Die Positions- und Bewegungserkennungsalgorithmen, die Bilder eines Objekts und dessen Schatten verwenden, werden in der oben genannten '485-ger Anmeldung beschrieben, und das System 1200 kann Eingangsinformationen an solche Algorithmen, einschließlich der Position der Objektkanten und die Schatten davon, weiterleiten.
  • Die Einzelkameraimplementierung 1200 kann von einem Einbau eines holographischen Beugungsgitters 1215, das vor der Linse der Kamera 1202 angeordnet wird, profitieren. Das Gitter 1215 erzeugt Streifenmuster, die als Geistersilhouetten und/oder Tangenten des Objektes 1208 sichtbar sind. Sind diese zudem trennbar (d. h., wenn keine zu starke Überschneidung vorherrscht), bilden diese Muster einen starken Kontrast, der eine Unterscheidung zwischen Objekt und Hintergrund erleichtert. Siehe zum Beispiel DIFFRACTION GRATING HANDBOOK (Newport Corporation, Jan. 2005, erhältlich unter http://gratings.newport.com/library/handbook/handbook.asp), dessen gesamte Offenbarung durch Bezugnahme hierin aufgenommen ist.
  • 13 zeigt ein anderes System 1300 mit zwei Kameras 1302, 1304 und einer Lichtquelle 1306, die zwischen den Kameras angeordnet ist. Das System 1300 kann Bilder eines Objekts gegen einen Hintergrund 1308 1310 erfassen. Das System 1300 ist im Allgemeinen zur Kantenbeleuchtung weniger zuverlässig als das System 100 der 1; Jedoch beruhen nicht alle Algorithmen zur Bestimmung der Position und der Bewegung auf der genauen Kenntnis der Objektkanten. Dementsprechend kann das System 1300 z. B. mit kantenbasierten Algorithmen in solchen Situationen verwendet werden, in denen eine geringere Genauigkeit erforderlich ist. Das System 1300 kann auch mit nicht kantenbasierten Algorithmen verwendet werden.
  • Die Erfindung wurde zwar mit Bezug auf spezifische Ausführungsformen beschrieben, jedoch erkennt der Fachmann, dass zahlreiche Modifikationen möglich sind. Die Anzahl und Anordnung der Kameras und Lichtquellen kann variiert werden. Die Funktionen der Kameras, einschließlich Bildfolge, räumliche Auflösung und Intensitätsauflösung können ebenfalls beliebig variiert werden. Die Lichtquellen können kontinuierlich oder gepulst betrieben werden. Die hierin beschriebenen Systeme stellen Bilder mit verbessertem Kontrast zwischen Objekt und Hintergrund zur Erleichterung der Unterscheidung zwischen den beiden bereit, und diese Information kann für verschiedene Zwecke, von denen die Positions- und/oder Bewegungserkennung nur eine von vielen Möglichkeiten ist, verwendet werden.
  • Schwellwertgrenzen und andere spezifische Kriterien für die Unterscheidung zwischen Objekt und Hintergrund sind an bestimmte Kameras und bestimmte Umgebungen anpassbar. Wie oben erwähnt, wird dagegen erwartet, dass der Kontrast mit zunehmendem Verhältnis rB/rO zunimmt. In einigen Ausführungsformen kann das System in einer bestimmten Umgebung kalibriert werden, z. B. durch Einstellen der Helligkeit der Lichtquelle, der Schwellwertkriterien, und so weiter. Die Verwendung von einfachen Kriterien, die in schnellen Algorithmen implementiert werden können, kann eine Verarbeitungsleistung in einem bestimmten System für andere Zwecke freisetzen.
  • Jede Art von Objekt kann den Gegenstand der Bewegungserfassung unter Verwendung dieser Verfahren bilden, und verschiedene Aspekte der Implementierung können für ein bestimmtes Objekt optimiert werden. Beispielsweise kann der Typ und die Positionen der Kameras und/oder Lichtquellen auf der Grundlage der Größe des Objekts, dessen Bewegung erfasst werden soll, und/oder des Raums, in dem Bewegung erfasst werden soll, optimiert werden. Analyseverfahren gemäß der Ausführungsformen der vorliegenden Erfindung können als Algorithmen in jeder geeigneten Computersprache implementiert und auf programmierbaren Prozessoren ausgeführt werden. Alternativ können einige oder alle der Algorithmen in Festfunktionslogikschaltungen implementiert werden, und solche Schaltungen können unter Verwendung herkömmlicher oder anderer Tools entworfen und hergestellt werden.
  • Computerprogramme, die verschiedene Merkmale der vorliegenden Erfindung aufweisen, können auf verschiedenen computerlesbaren Speichermedien kodiert werden; Geeignete Medien umfassen eine magnetische Platte oder Band, optische Speichermedien, wie Compact Disks (CD) oder DVDs (digitale, vielseitig verwendbare Disk), Flash-Speicher, und jedes andere nicht transitorische Medium, das Daten in einer computerlesbaren Form bereithalten kann. Computerlesbare Speichermedien, die mit einem Programmcode kodiert sind, können mit einem kompatiblen Gerät verpackt oder getrennt von anderen Geräten zur Verfügung gestellt werden. Zusätzlich kann der Programmcode über verdrahtete optische und/oder drahtlose Netzwerke entsprechend einer Vielzahl von Protokollen, einschließlich des Internets, zur Verteilung, z. B. über Internetdownload, kodiert und übertragen werden.

Claims (16)

  1. Bildaufnahme- und Analysesystem zur Bestimmung von Objekten von Interesse in einer digital dargestellten Bildszene, wobei das System umfasst: wenigstens eine auf ein Sichtfeld gerichtete Kamera; wenigstens eine Lichtquelle, die auf einer gleichen Seite des Sichtfeldes wie die Kamera angeordnet und ausgerichtet ist, um das Sichtfeld zu beleuchten; und eine Bildanalysevorrichtung, die an die Kamera und die wenigstens eine Lichtquelle gekoppelt und ausgebildet ist, um: die wenigstens eine Kamera zu steuern, um eine Sequenz von Bildern aufzunehmen, die ein erstes Bild aufweist, das zu einem Zeitpunkt erfasst wird, wenn die wenigstens eine Lichtquelle das Sichtfeld beleuchtet; Pixel zu bestimmen, die vielmehr dem Objekt als einem Hintergrund entsprechen; und auf der Grundlage der bestimmten Pixel, ein 3D-Modell des Objekts einschließlich einer Position, Form und Querschnitt des Objekts zu erstellen, um geometrisch zu bestimmen, ob es dem Objekt von Interesse entspricht, wobei die Bildanalysevorrichtung zwischen (i) Vordergrundbildkomponenten, die in einem proximalen Bereich des Sichtfeldes angeordneten Objekten entsprechen, wobei sich der proximale Bereich von der wenigstens einen Kamera erstreckt und eine darauf bezogene Tiefe von wenigstens dem Zweifachen eines zu erwartenden maximalen Abstands zwischen den den Vordergrundbildkomponenten entsprechenden Objekten und der wenigstens einen Kamera aufweist, und (ii) Hintergrundbildkomponenten, die in einem distalen Bereich des Sichtfeldes angeordneten Objekten entsprechen, wobei der distale Bereich relativ zu der wenigstens einen Kamera über dem proximalen Bereich angeordnet ist, unterscheidet.
  2. System nach Anspruch 1, wobei der proximale Bereich eine Tiefe von wenigstens dem Vierfachen des zu erwartenden maximalen Abstands aufweist.
  3. System nach Anspruch 1, wobei die wenigstens eine Lichtquelle ein diffundierter Emitter ist.
  4. System nach Anspruch 3, wobei die wenigstens eine Lichtquelle eine Infrarot-Leuchtdiode und die wenigstens eine Kamera eine infrarotempfindliche Kamera sind.
  5. System nach Anspruch 1, wobei wenigstens zwei Lichtquellen vorhanden sind, die die wenigstens eine Kamera flankieren und im Wesentlichen koplanar dazu sind.
  6. System nach Anspruch 1, wobei die wenigstens eine Kamera und die wenigstens eine Lichtquelle vertikal nach oben gerichtet sind.
  7. System nach Anspruch 1, wobei die wenigstens eine Kamera so gesteuert wird, dass sie eine Belichtungszeit von nicht mehr als 100 Mikrosekunden bereitstellt, und die wenigstens eine Lichtquelle während der Belichtungszeit mit einem Leistungspegel von wenigstens 5 Watt aktiviert wird.
  8. System nach Anspruch 1, ferner umfassend ein holographisches Beugungsgitter, das zwischen einer Linse der wenigstens einen Kamera und dem Gesichtsfeld angeordnet ist.
  9. System nach Anspruch 1, wobei die Bildanalysevorrichtung die wenigstens eine Kamera steuert, um ein zweites und drittes Bild aufzunehmen, wenn die wenigstens eine Lichtquelle das Sichtfeld nicht beleuchtet, und die dem Objekt entsprechenden Pixel bestimmt, auf der Grundlage einer Differenz zwischen dem ersten und zweiten Bild und einer Differenz zwischen dem ersten und dritten Bild, wobei das zweite Bild vor dem ersten Bild aufgenommenen wird und das dritte Bild nach dem zweiten Bild aufgenommen wird.
  10. Verfahren zum Aufnehmen und Analysieren von Bildern, wobei das Verfahren die folgenden Schritte umfasst: Aktivieren wenigstens einer Lichtquelle, um ein Sichtfeld, das ein Objekt von Interesse enthält, zu beleuchten; Erfassen einer Sequenz von digitalen Bildern des Sichtfeldes mit einer Kamera zu einem Zeitpunkt, wenn die wenigstens eine Lichtquelle aktiviert ist; Bestimmen von Pixeln, die vielmehr dem Objekt als dem Hintergrund entsprechen; und auf der Grundlage der bestimmten Pixel, Erstellen eines 3D-Modells des Objekts einschließlich einer Position, Form und Querschnitt des Objekts, um geometrisch zu bestimmen, ob es dem Objekt von Interesse entspricht, wobei die wenigstens eine Lichtquelle so positioniert ist, dass die Objekte von Interesse in einem proximalen Bereich des Sichtfeldes angeordnet sind, wobei sich der proximale Bereich von einer Kamera zu einem Abstand von wenigstens dem Zweifachen eines zu erwartenden maximalen Abstands zwischen den Objekten und der Kamera erstreckt.
  11. Verfahren nach Anspruch 10, wobei der proximale Bereich eine Tiefe von wenigstens dem Vierfachen des zu erwartenden maximalen Abstands aufweist.
  12. Verfahren nach Anspruch 10, wobei die wenigstens eine Lichtquelle ein diffundierter Emitter ist.
  13. Verfahren nach Anspruch 10, wobei die wenigstens eine Lichtquelle eine Infrarot-Leuchtdiode und die Kamera eine infrarotempfindliche Kamera sind.
  14. Verfahren nach Anspruch 10, wobei zwei Lichtquellen aktiviert werden, wobei die Lichtquellen die Kamera flankieren und im Wesentlichen koplanar dazu sind.
  15. Verfahren nach Anspruch 10, wobei die Kamera und die wenigstens eine Lichtquelle vertikal nach oben gerichtet sind.
  16. Verfahren zum Aufnehmen und Analysieren von Bildern, wobei das Verfahren die folgenden Schritte umfasst: Aktivieren wenigstens einer Lichtquelle, um ein Sichtfeld, das ein Objekt von Interesse enthält, zu beleuchten; Erfassen einer Sequenz von digitalen Bildern des Sichtfeldes mit einer Kamera zu einem Zeitpunkt, wenn die wenigstens eine Lichtquelle aktiviert ist; Bestimmen von Pixeln, die vielmehr dem Objekt als dem Hintergrund entsprechen; und auf der Grundlage der bestimmten Pixel, Erstellen eines 3D-Modells des Objekts einschließlich einer Position, Form und Querschnitt des Objekts, um geometrisch zu bestimmen, ob das Modell dem Objekt von Interesse entspricht; und Aufnehmen eines ersten Bildes, wenn die wenigstens eine Lichtquelle nicht aktiviert ist, eines zweiten Bildes, wenn die wenigstens eine Lichtquelle aktiviert ist, und eines dritten Bildes, wenn die wenigstens eine Lichtquelle nicht aktiviert ist, wobei die dem Objekt entsprechenden Pixel auf der Grundlage einer Differenz zwischen dem zweiten und dem ersten Bild und einer Differenz zwischen dem zweiten und dritten Bild bestimmt werden.
DE112013000590.5T 2012-01-17 2013-01-16 Verbesserter Kontrast zur Objekterfassung und Charakterisierung durch optisches Abbilden Active DE112013000590B4 (de)

Applications Claiming Priority (11)

Application Number Priority Date Filing Date Title
US201261587554P 2012-01-17 2012-01-17
USUS-61/587,554 2012-01-17
USUS-13/414,485 2012-03-07
US13/414,485 US20130182079A1 (en) 2012-01-17 2012-03-07 Motion capture using cross-sections of an object
US201261724068P 2012-11-08 2012-11-08
US201261724091P 2012-11-08 2012-11-08
USUS-61/724,091 2012-11-08
USUS-61/724,068 2012-11-08
US13/724,357 US9070019B2 (en) 2012-01-17 2012-12-21 Systems and methods for capturing motion in three-dimensional space
USUS-13/724,357 2012-12-21
PCT/US2013/021713 WO2013109609A2 (en) 2012-01-17 2013-01-16 Enhanced contrast for object detection and characterization by optical imaging

Publications (2)

Publication Number Publication Date
DE112013000590T5 DE112013000590T5 (de) 2014-11-06
DE112013000590B4 true DE112013000590B4 (de) 2016-05-04

Family

ID=48799803

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112013000590.5T Active DE112013000590B4 (de) 2012-01-17 2013-01-16 Verbesserter Kontrast zur Objekterfassung und Charakterisierung durch optisches Abbilden

Country Status (4)

Country Link
JP (2) JP2015510169A (de)
CN (2) CN104145276B (de)
DE (1) DE112013000590B4 (de)
WO (1) WO2013109609A2 (de)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8638989B2 (en) 2012-01-17 2014-01-28 Leap Motion, Inc. Systems and methods for capturing motion in three-dimensional space
US8693731B2 (en) 2012-01-17 2014-04-08 Leap Motion, Inc. Enhanced contrast for object detection and characterization by optical imaging
US10691219B2 (en) 2012-01-17 2020-06-23 Ultrahaptics IP Two Limited Systems and methods for machine control
US9501152B2 (en) 2013-01-15 2016-11-22 Leap Motion, Inc. Free-space user interface and control using virtual constructs
US9679215B2 (en) 2012-01-17 2017-06-13 Leap Motion, Inc. Systems and methods for machine control
US11493998B2 (en) 2012-01-17 2022-11-08 Ultrahaptics IP Two Limited Systems and methods for machine control
US9070019B2 (en) 2012-01-17 2015-06-30 Leap Motion, Inc. Systems and methods for capturing motion in three-dimensional space
JP6271444B2 (ja) 2012-02-24 2018-01-31 トーマス ジェイ モスカリッロMOSCARILLO, Thomas, J. ジェスチャー認識装置及び方法
US9285893B2 (en) 2012-11-08 2016-03-15 Leap Motion, Inc. Object detection and tracking with variable-field illumination devices
US10609285B2 (en) 2013-01-07 2020-03-31 Ultrahaptics IP Two Limited Power consumption in motion-capture systems
US9465461B2 (en) 2013-01-08 2016-10-11 Leap Motion, Inc. Object detection and tracking with audio and optical signals
US9459697B2 (en) 2013-01-15 2016-10-04 Leap Motion, Inc. Dynamic, free-space user interactions for machine control
US9702977B2 (en) 2013-03-15 2017-07-11 Leap Motion, Inc. Determining positional information of an object in space
US9916009B2 (en) 2013-04-26 2018-03-13 Leap Motion, Inc. Non-tactile interface systems and methods
US9721383B1 (en) 2013-08-29 2017-08-01 Leap Motion, Inc. Predictive information for free space gesture control and communication
US9632572B2 (en) 2013-10-03 2017-04-25 Leap Motion, Inc. Enhanced field of view to augment three-dimensional (3D) sensory space for free-space gesture interpretation
US9996638B1 (en) 2013-10-31 2018-06-12 Leap Motion, Inc. Predictive information for free space gesture control and communication
US9613262B2 (en) 2014-01-15 2017-04-04 Leap Motion, Inc. Object detection and tracking for providing a virtual device experience
DE102014201313A1 (de) * 2014-01-24 2015-07-30 Myestro Interactive Gmbh Verfahren zur Erkennung einer Bewegungsbahn mindestens eines bewegten Objektes innerhalb eines Erfassungsbereiches, Verfahren zur Gestikerkennung unter Einsatz eines derartigen Erkennungsverfahrens sowie Vorrichtung zur Durchführung eines derartigen Erkennungsverfahrens
US10092220B2 (en) 2014-03-20 2018-10-09 Telecom Italia S.P.A. System and method for motion capture
CN204480228U (zh) 2014-08-08 2015-07-15 厉动公司 运动感测和成像设备
US9652653B2 (en) * 2014-12-27 2017-05-16 Hand Held Products, Inc. Acceleration-based motion tolerance and predictive coding
CN104586404A (zh) * 2015-01-27 2015-05-06 深圳泰山在线科技有限公司 体质监测的姿态识别方法及系统
CN107532885B (zh) * 2015-02-25 2020-03-03 脸谱科技有限责任公司 光图案中的强度变化用于体积中的物体的深度绘制
DE102015207768B4 (de) 2015-04-28 2020-03-12 Volkswagen Aktiengesellschaft Verbesserte Gestenerkennung für ein Fahrzeug
CN113433775B (zh) 2015-11-10 2023-01-17 亮锐控股有限公司 自适应光源
FR3046519B1 (fr) * 2016-01-04 2022-11-04 Netatmo Dispositif d'eclairage automatique
DE102016201704A1 (de) 2016-02-04 2017-08-10 Bayerische Motoren Werke Aktiengesellschaft Gestenerkennungsvorrichtung und Verfahren zum Erkennen einer Geste eines Insassen eines Fahrzeuges
US10671881B2 (en) 2017-04-11 2020-06-02 Microsoft Technology Licensing, Llc Image processing system with discriminative control
DE102017125799A1 (de) * 2017-11-06 2019-05-09 Carl Zeiss Industrielle Messtechnik Gmbh Reduktion von Bildstörungen in Bildern
TWI672957B (zh) 2018-03-29 2019-09-21 瑞昱半導體股份有限公司 影像處理裝置及影像處理方法
US10616550B1 (en) * 2018-09-14 2020-04-07 Facebook Technologies, Llc Generating a representation of an object from depth information determined in parallel from images captured by multiple cameras
WO2020121174A1 (en) 2018-12-10 2020-06-18 Gentex Corporation Scanning apparatus for reducing field of view search space
JP7286815B2 (ja) * 2019-06-20 2023-06-05 ジェンテックス コーポレイション 物体追跡のための照明システム及び方法
JP2021051042A (ja) * 2019-09-26 2021-04-01 ソニーセミコンダクタソリューションズ株式会社 画像処理装置、電子機器、画像処理方法及びプログラム
US11418742B2 (en) * 2020-01-16 2022-08-16 GM Global Technology Operations LLC System and method for analyzing camera performance degradation due to lens abrasion
JP7401129B1 (ja) 2022-11-15 2023-12-19 株式会社SEtech 商品陳列棚

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10326035A1 (de) * 2003-06-10 2005-01-13 Hema Elektronik-Fertigungs- Und Vertriebs Gmbh Verfahren zur adaptiven Fehlererkennung auf einer strukturierten Oberfläche
DE102009023875A1 (de) * 2008-06-05 2010-02-04 Northrop Grumman Corp., Los Angeles Gestenerkennungsschittstellensystem mit vertikaler Anzeigefläche

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH076782B2 (ja) * 1989-03-10 1995-01-30 工業技術院長 物体の形状測定方法及び装置
US5282067A (en) * 1991-10-07 1994-01-25 California Institute Of Technology Self-amplified optical pattern recognition system
JP3737537B2 (ja) * 1995-03-22 2006-01-18 帝人ファイバー株式会社 画像処理用照明手段の劣化検出方法
JPH09259278A (ja) * 1996-03-25 1997-10-03 Matsushita Electric Ind Co Ltd 画像処理装置
JP2000023038A (ja) * 1998-06-30 2000-01-21 Toshiba Corp 画像抽出装置
JP4483067B2 (ja) * 2000-10-24 2010-06-16 沖電気工業株式会社 対象物体抽出画像処理装置
JP2003256814A (ja) * 2002-02-27 2003-09-12 Olympus Optical Co Ltd 基板検査装置
JP2004246252A (ja) * 2003-02-17 2004-09-02 Takenaka Komuten Co Ltd 画像情報収集装置及び方法
EP1639546B1 (de) * 2003-06-17 2011-05-04 Brown University Verfahren und vorrichtung zur modelbasierten detektion einer struktur in projektionsdaten
US8059153B1 (en) * 2004-06-21 2011-11-15 Wyse Technology Inc. Three-dimensional object tracking using distributed thin-client cameras
JP4678487B2 (ja) * 2005-03-15 2011-04-27 オムロン株式会社 画像処理システム、画像処理装置および方法、記録媒体、並びにプログラム
JP4797752B2 (ja) * 2006-03-31 2011-10-19 株式会社デンソー 移動体用操作物体抽出装置
US9696808B2 (en) * 2006-07-13 2017-07-04 Northrop Grumman Systems Corporation Hand-gesture recognition method
US8059894B1 (en) * 2006-12-19 2011-11-15 Playvision Technologies, Inc. System and associated methods of calibration and use for an interactive imaging environment
JP2008227569A (ja) * 2007-03-08 2008-09-25 Seiko Epson Corp 撮影装置、電子機器、撮影制御方法、及び、撮影制御プログラム
US20100027845A1 (en) * 2008-07-31 2010-02-04 Samsung Electronics Co., Ltd. System and method for motion detection based on object trajectory
US8199248B2 (en) * 2009-01-30 2012-06-12 Sony Corporation Two-dimensional polynomial model for depth estimation based on two-picture matching
JP2011010258A (ja) * 2009-05-27 2011-01-13 Seiko Epson Corp 画像処理装置、画像表示システム、画像抽出装置
KR101307341B1 (ko) * 2009-12-18 2013-09-11 한국전자통신연구원 동적 개체 모션 캡쳐 방법 및 그 장치
CN102044151B (zh) * 2010-10-14 2012-10-17 吉林大学 基于光照可见度辨识的夜间车辆视频检测方法
JP5397426B2 (ja) * 2011-07-22 2014-01-22 カシオ計算機株式会社 撮像装置、合焦方法及びプログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10326035A1 (de) * 2003-06-10 2005-01-13 Hema Elektronik-Fertigungs- Und Vertriebs Gmbh Verfahren zur adaptiven Fehlererkennung auf einer strukturierten Oberfläche
DE102009023875A1 (de) * 2008-06-05 2010-02-04 Northrop Grumman Corp., Los Angeles Gestenerkennungsschittstellensystem mit vertikaler Anzeigefläche

Also Published As

Publication number Publication date
CN107066962A (zh) 2017-08-18
DE112013000590T5 (de) 2014-11-06
WO2013109609A2 (en) 2013-07-25
WO2013109609A3 (en) 2013-10-31
CN104145276B (zh) 2017-05-03
CN104145276A (zh) 2014-11-12
JP2015510169A (ja) 2015-04-02
CN107066962B (zh) 2020-08-07
JP2016186793A (ja) 2016-10-27

Similar Documents

Publication Publication Date Title
DE112013000590B4 (de) Verbesserter Kontrast zur Objekterfassung und Charakterisierung durch optisches Abbilden
US11782516B2 (en) Differentiating a detected object from a background using a gaussian brightness falloff pattern
DE112013005337T5 (de) Objekterfassung und Nachverfolgung mit veränderlichen Feldbeleuchtungsvorrichtungen
DE112020003794T5 (de) Tiefenbewusste Fotobearbeitung
DE202014103729U1 (de) Augmented-Reality mit Bewegungserfassung
WO2016175234A1 (ja) 色画像処理方法、色画像処理プログラム、物体認識方法及び装置
DE112015007146T5 (de) Vorrichtung und verfahren zur dreidimensionalen bildmessung
EP3103059A1 (de) 3d-bildanalysator zur blickrichtungsbestimmung
DE112013004489T5 (de) Laserscanner mit Dynamischer Einstellung der Winkel-Abtastgeschwindigkeit
DE102010001520A1 (de) Durch einen Flugzeugsensor unterstütztes Iriserfassungssystem und -Verfahren
EP3688725B1 (de) Verfahren und vorrichtung zum erzeugen einer 3d-rekonstruktion eines objekts
DE112016006069T5 (de) Stereotiefenkamera mit vcsel-projektor mit gesteuerten projektionslinsen
Kubo et al. Programmable non-epipolar indirect light transport: Capture and analysis
Danciu et al. Shadow removal in depth images morphology-based for kinect cameras
DE212018000158U1 (de) Augenblickverfolgung
EP2887010B1 (de) Verfahren und Vorrichtung zum dreidimensionalen optischen Vermessen von Objekten mit einem topometrischen Messverfahren sowie Computerprogramm hierzu
DE102014108789A1 (de) Mehrstufiges Verfahren zur Untersuchung von Oberflächen sowie entsprechende Vorrichtung
US11758297B2 (en) Systems, methods, and media for high dynamic range imaging using single-photon and conventional image sensor data
DE102007033835B4 (de) Bildaufnahmetechnik zur direkten Objektsegmentierung in Bildern
EP2790151B1 (de) Verfahren zur echtzeitfähigen Materialschätzung und zur materialbasierten Bildsegmentierung in elektronischen Bildsequenzen
EP3724601B1 (de) Abstandsermittlung basierend auf verschiedenen tiefenschärfebereichen bei unterschiedlichen fokuseinstellungen eines objektivs
AT521934A1 (de) Verfahren zur Erfassung von Fingerabdrücken
WO2023041706A1 (de) Verfahren und vorrichtung zur messung von tiefeninformationen einer szene anhand von mittels zumindest einer parallelstrahlungsquelle generiertem strukturierten licht
Vu Machine Vision in Industrial Quality Control
Anderson Multi-target camera tracking, hand-off and display LDRD 158819 final report

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R130 Divisional application to

Ref document number: 112013007297

Country of ref document: DE

R020 Patent grant now final
R081 Change of applicant/patentee

Owner name: ULTRAHAPTICS IP TWO LIMITED, GB

Free format text: FORMER OWNER: LEAP MOTION, INC., SAN FRANCISCO, CALF., US

R082 Change of representative

Representative=s name: GRUENECKER PATENT- UND RECHTSANWAELTE PARTG MB, DE

R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06K0009000000

Ipc: G06V0010000000