[go: up one dir, main page]

DE112019006564T5 - Kontinuierliches Lernen zur Objektverfolgung - Google Patents

Kontinuierliches Lernen zur Objektverfolgung Download PDF

Info

Publication number
DE112019006564T5
DE112019006564T5 DE112019006564.5T DE112019006564T DE112019006564T5 DE 112019006564 T5 DE112019006564 T5 DE 112019006564T5 DE 112019006564 T DE112019006564 T DE 112019006564T DE 112019006564 T5 DE112019006564 T5 DE 112019006564T5
Authority
DE
Germany
Prior art keywords
target object
pattern
target
candidate
feature
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE112019006564.5T
Other languages
English (en)
Inventor
Lidan ZHANG
Ping Guo
Haibing Ren
Yimin Zhang
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.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of DE112019006564T5 publication Critical patent/DE112019006564T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • G06F18/24133Distances to prototypes
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • G06T7/248Analysis of motion using feature-based methods, e.g. the tracking of corners or segments involving reference images or patches
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/52Surveillance or monitoring of activities, e.g. for recognising suspicious objects
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/07Target detection

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Mathematical Physics (AREA)
  • Image Analysis (AREA)

Abstract

Ein Langzeit-Objektverfolger setzt ein Rahmenwerk für kontinuierliches Lernen ein, um Wanderung in der Verfolgungsposition eines verfolgten Objektes zu beseitigen. Das Rahmenwerk für kontinuierliches Lernen besteht aus einem Modul für kontinuierliches Lernen, das Muster des verfolgten Objektes akkumuliert, um die Genauigkeit der Objektverfolgung über verlängerte Zeiträume zu verbessern. Das Modul für kontinuierliches Lernen kann einen Musterpräprozessor, um einen Ort eines Kandidatenobjektes zu verfeinern, das während der Objektverfolgung gefunden wurde, und einen Ausschneider beinhalten, um einen Teil eines Einzelbildes, der ein verfolgtes Objekt enthält, als ein Muster auszuschneiden und das Muster in eine Datenbank für kontinuierliches Lernen einzufügen, um zukünftige Verfolgung zu unterstützen.

Description

  • TECHNISCHES GEBIET
  • Das technische Gebiet betrifft im Allgemeinen Computer-Vision und im Besonderen Objektverfolgung bei Computer-Vision.
  • ALLGEMEINER STAND DER TECHNIK
  • In der Computer-Vision bezeichnet Objektverfolgung Lokalisierung eines beliebigen Zieles in mehreren Einzelbildern einer Videosequenz oder in einem live erfassten Stream. Objektverfolgung wird in vielen Computer-Vision-Anwendungen verwendet, wie z.B. Videoanalyse, Überwachung, Robotik, Augmented Reality und Videobearbeitung. Eines der Ziele bei der Objektverfolgung ist es, ein Zielobjekt über einen längeren Zeitraum zu verfolgen, was hierin als Langzeit-Objektverfolgung bezeichnet wird. Aufgrund verschiedener Faktoren, die mit der Zeit Veränderungen im Erscheinungsbild des Zielobjektes bewirken, kann Langzeit-Objektverfolgung problematisch sein, wie z.B. Abdeckung durch andere Objekte, starre oder nicht starre Veränderung des Zielobjektes selbst, Kamerabewegung während des Aufnehmens von Bildern des Zielobjektes, die Bewegungsunschärfe verursachen kann, Beleuchtungsänderung usw. Beispielsweise kann sich, wenn das Zielobjekt eine Person ist, die unter Überwachung steht, während sie durch ein Flughafenterminal geht, das Erscheinungsbild der Person abhängig von ihrer Kleidung, ihrer Umgebung, ihren Handlungen und ihrer Position relativ zu anderen Personen in der Nähe, die durch das Terminal gehen, mit der Zeit ändern.
  • Figurenliste
  • Die beschriebenen Ausführungsformen sind in den Figuren der beiliegenden Zeichnungen als Beispiel und nicht einschränkend dargestellt. Die Verfahren, die Prozesse und die Logik, die in den nachstehenden Figuren abgebildet sind, können Hardware (z.B. Schaltungen, zweckbestimmte Logik, Steuerungen usw.), Software (wie sie z.B. auf einem Mehrzweck-Computersystem oder einer zweckbestimmten Maschine, z.B. einem Softwaremodul oder Logik, ausgeführt wird) und Schnittstellen (wie z.B. eine Speicherschnittstelle) zwischen Hardware und Software oder eine Kombination beider umfassen. Obgleich die abgebildeten Verfahren, Prozesse und die abgebildete Logik im Hinblick auf sequenzielle Operationen beschrieben sein können, muss man verstehen, dass einige der beschriebenen Operationen in unterschiedlicher Reihenfolge durchgeführt werden können. Darüber hinaus können einige Operationen parallel statt sequenziell ausgeführt werden. Die nachstehenden Figuren beinhalten ähnliche Bezugszeichen, die ähnliche Elemente angeben, und wobei
    • 1 eine schematische Blockdiagrammdarstellung eines Rahmenwerkes für kontinuierliches Lernen zur Langzeit-Objektverfolgung gemäß verschienen hierin beschriebenen Beispielen ist;
    • 2 eine schematische Blockdiagrammdarstellung einer Architektur zum Implementieren kontinuierlichen Lernens zur Langzeit-Objektverfolgung gemäß verschienen hierin beschriebenen Beispielen ist;
    • 3 eine schematische Blockdiagrammdarstellung einer Übersicht eines Moduls für kontinuierliches Lernen zum Implementieren kontinuierlichen Lernens zur Langzeit-Objektverfolgung gemäß verschienen hierin beschriebenen Beispielen ist;
    • 4 eine Darstellung einer Sequenz von Videoeinzelbildern ist, die ein Zielobjekt enthalten, für das kontinuierliches Lernen zur Langzeit-Objektverfolgung gemäß verschienen hierin beschriebenen Beispielen implementiert ist;
    • 5A-5B schematische Blockdiagramme sind, die kontrastierende Schemata für das Trainieren für Langzeit-Objektverfolgung mit kontinuierlichem Lernen und ohne dieses gemäß verschiedenen hierin beschriebenen Beispielen darstellen;
    • 6A-6E eine andere Sequenz von Videoeinzelbildern darstellt, die ein Zielobjekt enthalten, für das kontinuierliches Lernen zur Langzeit-Objektverfolgung gemäß verschienen hierin beschriebenen Beispielen implementiert ist;
    • 7A-7D eine weitere Sequenz von Videoeinzelbildern darstellt, die ein Zielobjekt enthalten, für das kontinuierliches Lernen zur Langzeit-Objektverfolgung gemäß verschienen hierin beschriebenen Beispielen implementiert ist; und
    • 8 eine schematische Blockdiagrammdarstellung eines typischen Computersystems ist, in dem Ausführungsformen kontinuierlichen Lernens zur Langzeit-Objektverfolgung entweder ganz oder zum Teil gemäß verschienen hierin beschriebenen Beispielen implementiert sein können.
  • Andere Merkmale der beschriebenen Ausführungsformen werden aus den beiliegenden Zeichnungen und aus der nachstehenden ausführlichen Beschreibung offensichtlich.
  • BESCHREIBUNG DER AUSFÜHRUNGSFORMEN
  • In der Computer-Vision beinhaltet das typische Rahmenwerk für das Verfolgen von Objekten ein Objekterkennungsmodul, ein Objektverfolgermodul und ein Objektidentifikationsmodul, die gemäß einem Objektverfolgungsmodell implementiert sind. Das Objektverfolgungsmodell, das im Kontext von Langzeit-Objektverfolgung auch als Online-Objektverfolgungsmodell bezeichnet wird, ist eine Art Maschinelllernmodell, das einen Maschinelllernalgorithmus und Trainingsdaten beinhaltet. Der Maschinelllernalgorithmus erlernt aus den Trainingsdaten, ein Objektverfolgungsmodell zu erzeugen, um Objekte mit der Zeit zu verfolgen.
  • Die Objekterkennungs-, Objektverfolger- und Objektidentifikationsmodule, die gemäß dem Objektverfolgungsmodell implementiert sind, setzen einen Maschinelllernklassifizierer ein, um zwischen Objekten basierend auf Erscheinungsmerkmalen von Objekten zu unterscheiden, die mit der Zeit beobachtet werden. Der Maschinelllernklassifizierer ist ein mathematisches Modell eines Satzes von Daten, die die Erscheinungsmerkmale repräsentieren. Unter Verwendung von Convolutional Neural Networks ist der Maschinelllernklassifizierer in der Lage, verfolgte Objekte basierend auf den Daten zu identifizieren, die die Erscheinungsmerkmale repräsentieren.
  • Bezug nehmend auf 1 initialisiert ein Objekterkennungsmodul 102, um das Verfolgen zu beginnen, ein Objektverfolgermodul 108, um ein bestimmtes Objekt zu verfolgen, das hierin als Zielobjekt 104 bezeichnet wird. Das Objekterkennungsmodul 102 stellt einen präzisen Hüllkörper für jedwedes vorgegebene Ziel bereit. Es kann mithilfe von Objektdetektoren nach Stand der Technik implementiert werden, wie z.B. FAST-R-CNN (Fast Region-Based Convolutional Network), Mask-R-CNN (Mask Region-Based Convolutional Network), SSD (Single Shot Detection Neural Network), YOLO (You-Only-Look-Once-Echtzeit-Objekterkennung) usw. Es kann auch über Benutzer-Interaktion implementiert werden.
  • Das Erkennungsmodul 102 initialisiert einen oder mehrere Verfolgungsparameter 120 des Objektverfolgermoduls 108 durch Erlernen eines oder mehrerer entsprechender Erscheinungsmerkmale des Zielobjektes 104 in einem Einzelbild, in dem das Zielobjekt erkannt wurde. Das Einzelbild bezeichnet ein Bild in einer Sequenz von Videoeinzelbildern oder einer Sequenz von Bildern, die in einem Videostrom und dergleichen erfasst wurden.
  • Im Allgemeinen wird, sobald das Zielobjekt 104 mit einem Hüllkörper initialisiert worden ist, das Objektverfolgermodul 108 die Parameter 120 des Objektverfolgungsmodells 122 mit einer gegebenen Anmerkung initialisieren, die einem Erscheinungsmerkmal des Zielobjektes 104 entspricht. Die Parameter 120 des Objektverfolgermoduls hängen von der Art des verwendeten Objektverfolgungsmodells 122 ab. In diesem Fall entsprechen die Parameter 120 des Moduls den erlernten Erscheinungsmerkmalen des verfolgten Zielobjektes 104. Die erlernten Erscheinungsmerkmale können solche Charakteristika wie Farbe, Form und so fort beinhalten. Derartige Merkmale werden verwendet, um ein erkanntes Objekt von einem anderen mithilfe des Maschinelllernklassifizierers zu unterscheiden.
  • In nachfolgenden Einzelbildern sucht das Objektverfolgermodul 108 um die letzte bekannte Position des Zielobjektes 104 herum. Die letzte bekannte Position des Zielobjektes ist die Position nach der anfänglichen Erkennung oder die Position nach dem letzten Mal, dass das Zielobjekt in einem vorherigen Einzelbild erfolgreich verfolgt wurde. Das Obj ektverfolgermodul 108 versucht, das Zielobjekt an der letzten bekannten Position mithilfe des einen oder der mehreren erlernten Erscheinungsmerkmale des Zielobjektes zu finden. Beispielsweise kann das Zielobjekt 104 durch Maximieren einer Antwort des Objektverfolgungsmodells 122 und Verwenden der Antwort als Prognose der zukünftigen Position des Zielobjektes in einem nachfolgenden Einzelbild oder nachfolgenden Einzelbildern gefunden werden.
  • Das Objektidentifikationsmodul 106 ist konfiguriert zu prüfen, ob das Verfolgen des Zielobjektes 104 durch das Objektverfolgermodul 108 erfolgreich ist. In einigen Fällen kann das Zielobjekt in einem nachfolgenden Einzelbild nicht gefunden werden, wie z.B., wenn sich das Zielobjekt aus dem Einzelbild herausbewegt. In anderen Fällen kann das Zielobjekt 104 eine große Veränderung des Erscheinungsbildes aufgrund von Abdeckung, Verformung usw. erfahren, die bewirkt, dass das Objektverfolgermodul 108 die Spur des Zielobjektes verliert oder dass das Objektidentifikationsmodul 106 es nicht als das Zielobjekt identifizieren kann. So oder so wird, sobald das Zielobjekt 104 verloren ist, das Objektverfolgermodul 108 durch Löschen aller Verfolgungsmodellparameter 120 zurückgesetzt, die gesetzt wurden, als das Objektverfolgermodul 108 initialisiert wurde. Das Objekterkennungsmodul 102 reinitialisiert das Objektverfolgermodul 108, um durch erneutes Erkennen des Zielobjektes 104 noch einmal von vorn zu beginnen.
  • Während der Objektverfolgung wird die Verfolgung dann fortgeführt, solang das Zielobjekt 104 gefunden wird. Anders ausgedrückt können, wenn das Zielobjekt 104 basierend auf den Parametereinstellungen des Objektverfolgermoduls 108 verfolgt und erfolgreich identifiziert wurde, mithilfe der Verfolgungsposition neue Muster, die das Zielobjekt 104 enthalten, aus den Einzelbildern erlangt werden, in denen sie gefunden werden. Die neuen Muster, die auch als Ausschnitte bezeichnet werden, die aus den Einzelbildern ausgeschnitten werden, werden verwendet, um das Objektverfolgungsmodell 122 zu aktualisieren 118, um Verformung des Zielobjektes Rechnung zu tragen. Beispielsweise werden, wenn sich ein Erscheinungsbild des Zielobjektes 104 mit der Zeit ändert, die neuen Muster/Ausschnitte, die das Zielobjekt einfassen, verwendet, um die Parameter 120 des Objektverfolgermoduls 108 zu aktualisieren, um die erlernten Erscheinungsmerkmale des Zielobjektes einschließlich der Verformung des Zielobjektes widerzuspiegeln.
  • Eines der herausforderndsten Probleme beim Implementieren von Objektverfolgung unter Verwendung des oben beschriebenen Rahmenwerkes (Obj ekterkennungsmodul 102, Obj ektidentifikationsmodul 106 und Objektverfolgermodul 108 gemäß einem Objektverfolgungsmodell 122 und zugeordneter Parameter 120) ist die Wanderung in der Verfolgungsposition des Zielobjektes 104 mit der Zeit. Wanderung ist typischerweise bedingt durch Fehlerfortpflanzung aus dem Aktualisieren des Objektverfolgungsmodells 122, implementiert durch das Objektverfolgermodul 108 mit den neuen Mustern/Ausschnitten, die das Zielobjekt 104 einfassen. Tritt Wanderung auf, ist das Verfolgungsergebnis, das durch das Objektverfolgermodul 108 erlangt wird, gegenüber der wahren Position des Zielobjektes 104 versetzt. Als Folge davon enthalten die neuen Muster/Ausschnitte, die unter Verwendung der „gewanderten“ Zielposition statt der wahren Position ausgeschnitten werden, unrichtige Informationen über das Zielobjekt 104.
  • Neben anderen Fehlern erhöht Wanderung die Wahrscheinlichkeit, dass das Objektverfolgermodul 108 einiges des Hintergrundes in den neuen Mustern/Ausschnitten, die das Zielobjekt 104 einfassen, als Vordergrund interpretiert und umgekehrt. Mit der Aggregation weiterer Muster/Ausschnitte lernt das Objektverfolgermodul 108 unrichtiges Wissen über das Zielobjekt 104. Als Konsequenz daraus sucht das Objektverfolgermodul 108 in nachfolgenden Einzelbildern am falschen Ort nach dem Zielobjekt 104. Anders ausgedrückt, sucht das Obj ektverfolgermodul 108 an der „gewanderten“ Position und entfernt von der wahren Position nach dem Zielobjekt 104. Das Suchen am falschen Ort verschlimmert die Wanderung weiter und resultiert schließlich in Verfolgungsversagen. Aus diesem Grunde ist Objektverfolgung in aktuellen Computer-Vision-Anwendungen nur über kurze Zeiträume genau, typischerweise weniger als eine Minute lang.
  • Zum Beispiel unterstützt die Visual-Object-Tracking- (VOT-) - Datensatzbibliothek zum Ermitteln von Benchmarks in der Objektverfolgung (http://www.votchallenge.net) Verfolgung mit einer Dauer von durchschnittlich nur 7 bis 30 Sekunden. Derartige zeitliche Einschränkungen beeinträchtigen die Fähigkeit, Objektverfolgung in realen Situationen zu verwenden, die anfällig für Fehler sind aufgrund von beispielsweise Objektverdeckung (z.B. durch andere Objekte im Einzelbild), der Bewegung des Objektes aus dem Einzelbild heraus und/oder dem Vorhandensein eines ähnlichen Erscheinungsmerkmals (z.B. einer ähnlichen Farbe) des Objektes im Hintergrund, das bewirkt, dass das Objekt schlecht zu „sehen“ ist, und dergleichen. Um ein Objektverfolgungsmodell 122 an praktische Anwendungen in der Realität anzupassen, ist das Objektverfolgermodul 108 gezwungen, wenn die Verfolgung versagt, oder in regelmäßigen Zeitintervallen Wanderung durch Zurücksetzen und Neustarten Rechnung zu tragen.
  • Zurücksetzen und Neustarten des Objektverfolgermoduls 108 verwirft jedoch möglicherweise wertvolle Muster, die vor dem Verfolgungsversagen erlangt wurden. Verwerfen von Mustern verursacht, dass das Objektverfolgermodul 108 bereits erlernte Informationen vergisst, und verschlechtert die Fähigkeit des Objektverfolgungsmodells 122, zwischen möglichen Kandidatenobjekten für Langzeit-Objektverfolgung zu unterscheiden.
  • Um das Problem der Wanderung in der Verfolgungsposition bei Langzeit-Objektverfolgung anzugehen, beinhalten Ausführungsformen kontinuierlichen Lernens für Langzeitverfolgung ein Rahmenwerk für kontinuierliches Lernen 100. Statt Muster, die erlernte Erscheinungsmerkmale des Zielobjektes enthalten, beim Zurücksetzen und Neustarten des Objektverfolgermoduls 108 zu verwerfen, verbessert in einer Ausführungsform das Rahmenwerk für kontinuierliches Lernen 100 das Verfolgen durch kontinuierliches Akkumulieren von Mustern in großem Maßstab und Speichern der akkumulierten Muster in einer Datenbank der Muster kontinuierlichen Lernens 112.
  • In einer Ausführungsform aktualisiert ein Modul für kontinuierliches Lernen 110 mithilfe der akkumulierten Muster, die in der Datenbank der Muster kontinuierlichen Lernens 112 gespeichert sind, kontinuierlich das aktuelle Objektverfolgungsmodell 122 basierend auf den erlernten Erscheinungsmerkmalen, die in den akkumulierten Mustern enthalten sind. Durch Verwenden eines kontinuierlich aktualisierten Objektverfolgungsmodells 122 vermeidet das Modul für kontinuierliches Lernen 110 das Einführen von Mustern schlechter Qualität, die ungenaue Erscheinungsmerkmaldaten enthalten, wodurch Fehlerfortpflanzung begrenzt wird. In einer Ausführungsform beinhaltet ein aktuelles Objektverfolgungsmodell 122, das fähig ist, kontinuierlich aktualisiert zu werden, ein diskriminatives Korrelationsfilter (Discriminative Correlation Filter, DCF), das faktorisierte Faltungsoperatoren verwendet, um die Anzahl der Parameter im Objektverfolgungsmodell 122 zu verringern.
  • 2 ist eine schematische Blockdiagrammdarstellung einer Architektur 200 zum Implementieren kontinuierlichen Lernens zur Langzeit-Objektverfolgung gemäß verschienen hierin beschriebenen Beispielen. In einer Ausführungsform wird bei Prozess 202 ein Objekterkennungsmodul 102 mit dem Zielobjekt 104 initialisiert. Beispielsweise kann das Zielobjekt 104 mit einer manuellen Interaktion ausgewählt werden oder kann das Objekterkennungsmodul 102 das Zielobjekt 104 automatisch erkennen einschließlich Wiedererkennen des Zielobjektes, wobei Letzteres typischerweise auf vorherigen manuellen und/oder Trainingserkennungen des Zielobjektes 104 basiert.
  • Bei Prozess 204 wird das Objektverfolgermodul 108 mit dem erkannten (oder wiedererkannten) Zielobjekt 104 und jedweden etikettierten Anmerkungsparametern initialisiert, die während der Erkennung erlangt werden. Die etikettierten Anmerkungsparameter entsprechen den erlernten Erscheinungsmerkmalen des Zielobjektes 104. Bei Prozess 206 wird das Objektverfolgermodul 108 mit der Datenbank der Muster kontinuierlichen Lernens 112 mit Mustern aktualisiert, die während vorherigen erfolgreichen Verfolgens akkumuliert wurden, einschließlich jedweder etikettierten Anmerkungen des Zielobjektes, die in den akkumulierten Mustern gefunden werden.
  • In einer Ausführungsform verfolgt bei Prozess 208 das Objektverfolgermodul 108 unter Verwendung des Zielobjektes 104 mögliche Kandidatenobjekte in nachfolgenden Einzelbildern der Videobilder, wie z.B. während des Trainings und/oder während nachfolgender Langzeit-Objektverfolgung. Das Zielobjekt 104 kann das anfängliche Zielobjekt aus Prozess 202 oder ein wiedererkanntes Zielobjekt aus Prozess 212 sein. Das/die Bild(er) 210, in denen das Zielobjekt 104 verfolgt wird, beinhalten ein oder mehrere Videobilder, die auch als Einzelbilder bezeichnet werden, aus irgendeiner oder mehreren Ansichten (Mehrfachansichten), die durch mehrere Bilderfassungsgeräte erzeugt werden. Das/die Bild(er) 210 können auch Mehrfachinstanzen eines einzigen Bildes beinhalten.
  • In einer Ausführungsform untersucht bei Prozess 214 das Objektidentifikationsmodul 106 verfolgte Kandidatenobjekte. Beispielsweise kann das Obj ektidentifikationsmodul 106 die Merkmale eines verfolgten Kandidatenobjektes mit dem Zielobjekt 104 sowie den verfügbaren Ansichten des Zielobjektes 104 vergleichen, die in den akkumulierten Mustern identifiziert worden sind, die in der Datenbank der Muster kontinuierlichen Lernens 112 gespeichert sind, um Mehrfachansichtsähnlichkeit zu untersuchen.
  • In einer Ausführungsform beinhaltet das Objektidentifikationsmodul 106 ein Wiederidentifikationsnetz, um zu unterscheiden, ob ein verfolgter Bereich das Zielobjekt 104 enthält. Beispielsweise extrahiert das Wiederidentifikationsnetz Erscheinungsmerkmale durch Weiterleiten beobachteter Merkmale im verfolgten Bereich an ein Deep-Neural-Network. Das Objektidentifikationsmodul 106 berechnet den Abstand zwischen den extrahierten Erscheinungsmerkmalen, die im verfolgten Bereich vorhanden sind, und den Erscheinungsmerkmalen, die im Zielobjekt 104 vorhanden sind. Das Objektidentifikationsmodul 106 berechnet ferner den Abstand zwischen den extrahierten Erscheinungsmerkmalen, die im verfolgten Bereich vorhanden sind, und den Erscheinungsmerkmalen, die in den akkumulierten Mustern vorhanden sind, die in der Datenbank der Muster kontinuierlichen Lernens 112 für das Zielobjekt 104 gespeichert sind.
  • In Entscheidungsprozess 216 ist, wenn der durchschnittliche Abstand zwischen den extrahierten Erscheinungsmerkmalen, die im verfolgten Bereich vorhanden sind, und den Erscheinungsmerkmalen, die in Zielobjekt 104 vorhanden sind, und akkumulierten Mustern kleiner als eine Identitätsschwelle ist, das Verfolgungsergebnis erfolgreich, was die Erfolgswahrscheinlichkeit beim Fortfahren erhöht, das Zielobjekt 104 ohne Zurücksetzen des Objektverfolgermoduls 108 zu verfolgen, einschließlich ohne das Zielobjekt 104 wiedererkennen zu müssen. Das Verfolgungsergebnis ist eine Verfolgungsantwortkarte des Kandidatenobjektes im verfolgten Bereich. Auf erfolgreiches Verfolgen hin kann bei Prozess 218 das Modul für kontinuierliches Lernen 110 damit fortfahren, ein Muster aus einem Einzelbild auszuscheiden, in dem ein erfolgreich verfolgtes Kandidatenobjekt erscheint, und alle derartig ausgeschnittenen Muster in einem Datensatz des Musters kontinuierlichen Lernens für das Zielobjekt 104 zur letztendlichen Speicherung in der Datenbank der Muster kontinuierlichen Lernens 110 zu erfassen.
  • Unter gewissen Umständen wird Objektverfolgung als erfolglos angesehen. Beispielsweise geht, wenn der Durchschnitt der Abstände zwischen den extrahierten Erscheinungsmerkmalen, die im verfolgten Bereich vorhanden sind, und den Erscheinungsmerkmalen, die in Zielobjekt 104 vorhanden sind, und akkumulierten Mustern größer als die Identitätsschwelle ist, das Objektverfolgermodul 108 verloren. Das Zielobjekt 104 muss durch das Objekterkennungsmodul 102 wiedererkannt werden, bevor weitere Objektverfolgung stattfinden kann. Somit fährt bei Prozess 212 das Objekterkennungsmodul 102 damit fort, das Zielobjekt 104 im aktuellen Einzelbild wiederzuerkennen.
  • Auch wenn das Verfolgen erfolglos ist, kann, weil das Objektverfolgermodul 108 mit den ausgeschnittenen Mustern im Datensatz des Musters kontinuierlichen Lernens aus einem oder mehreren vorherigen erfolgreichen Verfolgungsergebnissen aktualisiert worden ist, einschließlich jedweder etikettierten Anmerkungsparameter, die die ausgeschnittenen Muster begleiten, das Objektverfolgermodul 108 das wiedererkannte Zielobjekt 104 verwenden, um Langzeitverfolgung fortzusetzen, ohne die wertvollen Informationen in den akkumulierten Mustern zu verlieren, die in der Datenbank der Muster kontinuierlichen Lernens 112 gespeichert sind.
  • 3 ist eine schematische Blockdiagrammdarstellung einer Übersicht 300 eines Modul für kontinuierliches Lernen 110 zum Implementieren kontinuierlichen Lernens zur Langzeit-Objektverfolgung gemäß verschienen hierin beschriebenen Beispielen. In einer Ausführungsform beinhaltet das Modul für kontinuierliches Lernen 110 einen Musterpräprozessor 302 und einen Musterausschneider 304.
  • In einer Ausführungsform ist der Musterpräprozessor 302 konfiguriert, einen Ort eines Kandidatenobjektes, das im Verfolgungsergebnis des Objektverfolgermoduls 108 gefunden wurde, mithilfe beispielsweise eines Verfeinerungsnetzes und/oder von Clustering der akkumulierten Muster aus der Datenbank der Muster kontinuierlichen Lernens 112 zu verfeinern. Sobald der Ort eines Kandidatenobjektes verfeinert worden ist, schneidet ein Musterausschneiderprozessor 304 einen Ausschnitt aus dem Gesamtbild aus, um das Muster zu bilden, und fügt das Muster zum Merken aller Veränderungen der Verformungen des Zielobjektes 104, die in den ausgeschnittenen Mustern repräsentiert sind, in eine Datensatz des Musters kontinuierlichen Lernens ein.
  • Die oben beschriebene Architektur kontinuierlichen Lernens für Langzeit-Objektverfolgung, die in 2-3 dargestellt ist, wird in dem Beispiel demonstriert, das in 4 dargestellt ist. Eine Reihe von Eingangseinzelbildern EINZELBILD 0, EINZELBILD 1, EINZELBILD 8, EINZELBILD 11, EINZELBILD 17 und EINZELBILD 36 enthält Videobilder eines Boxkampfes zwischen zwei Boxern und eines Ringrichters, der den Boxkampf beaufsichtigt. Ein Obj ekterkennungsmodul 102, Obj ektidentifikationsmodul 106 und Objektverfolgermodul 108 erzeugen eine anfängliche Verfolgungsantwortkarte 402, die die Boxer und den Ringrichter identifiziert. Nur als Beispiel ist das anfängliche Zielobjekt 404 der Ringrichter, wie in EINZELBILD 0 initialisiert und wie in den Verfolgungsantwortkarten 405 verfolgt, die durch das Objektverfolgermodul 108 aus nachfolgenden Einzelbildern EINZELBILD 1, EINZELBILD 8, EINZELBILD 11, EINZELBILD 17 und EINZELBILD 36 erzeugt worden sind.
  • In einer Ausführungsform wird ein Satz von fünf Verfolgungsergebnisausschnitten 408 aus den Einzelbildern ausgeschnitten, die Kandidatenobjekte einfassen, die den verfolgten Ringrichter in verschiedenen Posen und mit verglichen mit dem Erscheinungsbild des verfolgten Ringrichters im anfänglichen Zielobjekt 404 sich verändernden Mengen von Zielverformungen repräsentieren.
  • In einer Ausführungsform wird ein Teilsatz von vier Verfolgungsergebnisausschnitten 408 als Muster kontinuierlichen Lernens 410 in einem Datensatz der Muster kontinuierlichen Lernens erfasst. Ein fünfter Verfolgungsergebnisausschnitt 408 (der in der Mitte des Satzes von fünf Verfolgungsergebnisausschnitten erscheint) wird nicht in den Mustern kontinuierlichen Lernens 410 erfasst, da er ein zu kleines Segment des Zielobjektes 104 (die Schulter des verfolgten Ringrichters) enthält, um von Wert zu sein. Die erfassten Muster kontinuierlichen Lernens 410 zeigen das Erscheinungsbild des Zielobjektes 404, des verfolgten Ringrichters, unter unterschiedlichen Umständen. Beispielsweise sind, wenn der verfolgte Ringrichter durch einen der Boxer verdecket ist, gewisse Segmente des Ringrichters dennoch sichtbar und können für zukünftige Verfolgung wertvoll sein. In einer Ausführungsform werden die erfassten Muster kontinuierlichen Lernens 410 in der Datenbank der Muster kontinuierlichen Lernens 112 zur nachfolgenden Verwendung während des Trainings und/oder während Langzeitverfolgung gespeichert.
  • In einer Ausführungsform werden die Muster kontinuierlichen Lernens 410 im Objektidentifikationsmodul 106 verwendet, um zu ermitteln, ob das Kandidatenobjekt in einem bestimmten Verfolgungsergebnis tatsächlich das Zielobjekt 104/404 ist. In einer Ausführungsform implementiert das Objektidentifikationsmodul 106 durch Berechnen des durchschnittlichen Abstands zwischen den Erscheinungsmerkmalen des Zielobjektes 104/404 und jedem der Erscheinungsmerkmale, die aus den Mustern kontinuierlichen Lernens 410 extrahiert wurden, wie ausführlicher unter Bezug auf 2-3 beschrieben, einen Algorithmus für Mehrfachansichtsvergleiche, der robust gegenüber Störungen ist.
  • Im dargestellten Beispiel in 4 sind die vier optimalen ausgeschnittenen Ausschnitte, die das Kandidatenobjekt einfassen und als Muster kontinuierlichen Lernens 410 erfasst sind, jene, die die besten Ansichten des verfolgten Ringrichters enthalten. Die besten Ansichten in den Mustern kontinuierlichen Lernens 410 sind jene, in denen die durchschnittlichen Abstände zwischen Erscheinungsmerkmalen des Kandidatenobjektes verglichen mit den Erscheinungsmerkmalen des Zielobjektes 104 hinreichend klein sind, um das Kandidatenobjekt als Zielobjekt 104 zu identifizieren. Im dargestellten Beispiel nach 4 ist das Zielobjekt 104, das zum Vergleich verwendet wird, der verfolgte Ringrichter/das anfängliche verfolgte Objekt 404. In einer Ausführungsform werden die Abstände zwischen den Erscheinungsmerkmalen unter Verwendung eines Identitätsschwellenabstandes berechnet. Der Identitätsschwellenabstand kann jedwedes von vorgegeben und/oder dynamisch konfiguriert sein, basierend beispielsweise auf einer Größe des Zielobjektes 104, das verfolgt wird, relativ zu anderen Objekten in einem Eingangseinzelbild.
  • Im dargestellten Beispiel in 4 kann der Musterpräprozessor 302 nach 3 mit einem Segmentierungsmodul konfiguriert sein, um den Ort des verfolgten Ringrichters zu verfeinern. In einer Ausführungsform wird lediglich als Beispiel und nicht als Einschränkung das Segmentierungsmodul durch den Musterpräprozessor 302 verwendet, um die Muster kontinuierlichen Lernens 410 mit einem Segmentierungskontur-Erscheinungsmerkmal zu etikettieren, das die Konturen verschiedener Segmente umreißt, die das anfängliche Zielobjekt 404, das verfolgt wird, und die Kandidatenobjekte umfassen, die erfolgreich zum anfänglichen Zielobjekt 404 führen. Natürlich können andere Präprozessingverfahren verwendet werden, um die Qualität der Muster kontinuierlichen Lernens 410 zu verbessern.
  • Die Muster kontinuierlichen Lernens 410, die im Datensatz des Musters kontinuierlichen Lernens akkumuliert und in der Datenbank der Muster kontinuierlichen Lernens 112 gespeichert sind, sind wertvoll, weil sie die Etikettierungsinformationen (auch als Anmerkungen bezeichnet) für das Zielobjekt 104/404 und Kandidatenobjekte ohne manuelle Intervention transportieren. Die Muster kontinuierlichen Lernens 410 werden in den verschiedenen Ausführungsformen kontinuierlichen Lernens für Langzeit-Objektverfolgung verwendet, um Erkennungs- und Identifikationsgenauigkeit zu verbessern.
  • 5A-5B sind schematische Blockdiagramme, die kontrastierende Schemata für das Trainieren für Langzeit-Objektverfolgung mit kontinuierlichem Lernen und ohne dieses gemäß verschiedenen hierin beschriebenen Beispielen darstellen. Beispielsweise stellt 5A einen Standard-Verfolgungsalgorithmus dar, der einen Trainingsprozess mit geschlossener Schleife 502 benutzt, in dem ein Muster extrahiert und als Trainingsmuster verwendet wird. Während des Ablaufs des Trainingsprozesses mit geschlossener Schleife 502 wird ein diskriminativer Klassifizierer 504 für ein anfängliches Zielobjekt auf ein Eingangseinzelbild 506 angewandt, um eine maximale Antwort als Trainingsmuster 508 zu extrahieren. Während des Trainings 510 wird wiederum das Trainingsmuster 508 verwendet, um den diskriminativen Klassifizierer 504 zu aktualisieren.
  • Im Gegensatz dazu werden in einem Trainingsprozess mit offener Schleife 512 mit kontinuierlichem Lernen mehrere Trainingsmuster verwendet, um Genauigkeit und Identifikation bei Langzeit-Objektverfolgung zu verbessern. Beispielsweise wird, um die geschlossene Schleife aufzubrechen, ein Objektwiederidentifikationsmodul (z.B. das Objektidentifikationsmodul 106) eingeführt, um dem Objektverfolgermodul 108 zu helfen, in nachfolgenden Einzelbildern einen genaueren Ort des verfolgten Zielobjektes 104 zu finden. In einer Ausführungsform kann während Langzeit-Objektverfolgung das Objektwiederidentifikationsmodul 106 periodisch aufgerufen werden, wie z.B. alle N Einzelbilder, um die Genauigkeit des Objektverfolgungsmodells 122 und der Parameter 120 zu erhöhen, die verwendet werden, um das Objektverfolgermodul 108, Objektidentifikationsmodul 106 und Objekterkennungsmodul 102 zu implementieren.
  • Beispielsweise werden während Trainings mit offener Schleife mit kontinuierlichem Lernen 512 das aktuelle verfolgte Objekt 514 (das Kandidatenobjekt) und das aktuelle erkannte Objekt 516 (das Zielobjekt) beide im Wiederidentifikationsmodul 106 verwendet, um genaue Trainingsmuster während Training 510 wie auch während Langzeit-Objektverfolgung zu finden. Die genauen Trainingsmuster werden in der Datenbank der Muster kontinuierlichen Lernens 112 zur späteren Verwendung während Anwendung des diskriminatorischen Klassifizierers 504 auf nachfolgende Einzelbilder einer Sequenz von Videoeinzelbildern gespeichert.
  • In einem Beispielszenario könnte sich ein Zielobjekt 104 während Langzeitverfolgung zu viel verformen, sodass Wiederidentifikation mit der ersten Anmerkung, mit der das anfängliche Zielobjekt 104 etikettiert ist, nicht möglich sein könnte. Dieses Szenario wird im Trainingsbeispiel 600 demonstriert, das in 6A-6E dargestellt ist. Ein Objektverfolgermodul 108 versucht, eine weiß gekleidete Straßenkünstlerin zu verfolgen, wie in 6A-6E in entsprechenden Einzelbildern EINZELBILD 2, EINZELBILD 3, EINZELBILD 8, EINZELBILD 9 und EINZELBILD 10 dargestellt.
  • Lediglich als Beispiel und nicht als Einschränkung sind in 6A-6E die Ergebnisse der Verfolgung mit Training mit geschlossener Schleife 502 den Ergebnissen der Verfolgung mit Training mit offener Schleife mit kontinuierlichem Lernen 512 gegenübergestellt. Die Ergebnisse der geschlossenen Schleife 602a beginnen von den Ergebnissen der offenen Schleife 602b ab EINZELBILD 8 in 6C abzuweichen, wie durch die durchgezogene Grenzlinie gekennzeichnet, die einen Teil des Einzelbildes abgrenzt, der das verfolgte Objekt enthält, in diesem Beispiel die Straßenkünstlerin. Die Ergebnisse der geschlossenen Schleife 602a wandern von der Straßenkünstlerin nach rechts, wobei der diskriminatorische Klassifizierer 504 möglicherweise die weiße Farbe der Tür im Hintergrund mit der weißen Kleidung der Straßenkünstlerin verwechselt, wenn das Trainingsmuster ohne die Vorteile des kontinuierlichen Lernens verwendet wird.
  • Im Gegensatz dazu behalten die Ergebnisse der offenen Schleife 602b die Verfolgung der Straßenkünstlerin bei, wie durch die gepunktete Grenzlinie gekennzeichnet, die einen Teil des Einzelbildes abgrenzt, der das verfolgte Objekt enthält, also die Straßenkünstlerin. Beispielsweise ist in EINZELBILD 8 der 6C und EINZELBILD 9 der 6D die Straßenkünstlerin nahezu perfekt innerhalb der gepunkteten Grenzlinie zentriert. Ab EINZELBILD 10 der 6E wandern die Ergebnisse der geschlossenen Schleife 602a weiter von der Straßenkünstlerin nach rechts, wohingegen die Ergebnisse der offenen Schleife 602b weiterhin nahezu perfekt innerhalb der gepunkteten Grenzlinie zentriert sind. Jedes der Ergebnisse der offenen Schleife 602b wird als Trainingsmuster kontinuierlichen Lernens gespeichert, die aus EINZELBILD 0, EINZELBILD 3, EINZELBILD 8, EINZELBILD 9 und EINZELBILD 10 in der jeweiligen 6A-6E ausgeschnitten worden sind. Die Ergebnisse der offenen Schleife 602b als Verfolgungsfortschritt bis EINZELBILD 10 in 6E zeigen an, dass der diskriminatorische Klassifizierer 504 von den Trainingsmustern kontinuierlichen Lernens profitiert, um die Genauigkeit der Erkennung und Identifikation während Langzeit-Objektverfolgung zu verbessern.
  • Das oben beschriebene Szenario der 6A-6E ist weiter in Trainingsbeispiel 700 dargestellt, das in 7A-7D und jeweils in EINZELBILD 22, EINZELBILD 37, EINZELBILD 54 und EINZELBILD 67 dargestellt ist. Die Standard-Verfolgungsalgorithmus-Ergebnisse der geschlossenen Schleife 702a und Ergebnisse der offenen Schleife mit kontinuierlichem Lernen 702b werden ferner Ergebnissen einer Verfolgung mit Rücksetz-Algorithmus 702c gegenübergestellt. Wie dargestellt, wandern die Standard-Verfolgungsalgorithmus-Ergebnisse der geschlossenen Schleife 702a weiterhin nach rechts, und die Verfolgung der Straßenkünstlerin ist in 7A-7D verloren. Die Verfolge- und Rücksetz-Algorithmus-Ergebnisse 702c verfolgen weiterhin die Straßenkünstlerin in 7A-7D, aber ab EINZELBILD 37 in 7B beginnt der Verfolge- und Rücksetz-Algorithmus 702c, einen Teil des rechten Armes der Straßenkünstlerin zu verlieren. Ab EINZELBILD 67 in 7D beginnt der Verfolge- und Rücksetz-Algorithmus 702c, ebenso einen Teil des Rückens der Straßenkünstlerin zu verlieren. Im Gegensatz dazu behalten die Ergebnisse der offenen Schleife mit kontinuierlichem Lernen 702b weiterhin einen genauen Ort der Straßenkünstlerin bei und Vermeiden das Abschneiden wesentlicher Teile der Straßenkünstlerin.
  • 8 ist eine Darstellung eines Systems, in dem kontinuierliches Lernen für Langzeit-Objektverfolgung gemäß einer Ausführungsform implementiert sein kann. In dieser Darstellung sind gewisse standardmäßige und wohlbekannte Komponenten nicht gezeigt, die für die vorliegende Beschreibung nicht relevant sind. Elemente, die als getrennte Elemente gezeigt sind, können kombiniert sein, einschließlich beispielsweise einem SoC (System on Chip), das mehrere Elemente auf einem einzigen Chip kombiniert.
  • In einigen Ausführungsformen kann ein Computing-System wie z.B. Plattform 800 ein Verarbeitungsmittel wie z.B. einen oder mehrere Prozessoren 810 beinhalten, die mit einem bzw. einer oder mehreren Bussen oder Verbindungen gekoppelt sind, die im Allgemeinen als Bus 805 gezeigt sind. Die Prozessoren 810 können einen oder mehrere physikalische Prozessoren und einen oder mehrere logische Prozessoren umfassen. In einigen Ausführungsformen können die Prozessoren einen oder mehrere Mehrzweckprozessoren oder Spezialprozessoren beinhalten.
  • Der Bus 805 ist ein Kommunikationsmittel zur Übertragung von Daten. Lediglich als Beispiel und nicht als Einschränkung ist der Bus 805 als einzelner Bus dargestellt, kann aber mehrere unterschiedliche Verbindungen oder Busse repräsentieren, und die Komponentenverbindungen zu derartigen Verbindungen können variieren. Der in 8 gezeigte Bus 805 ist eine Abstraktion, die eine(n) oder mehrere beliebige separate physikalische Busse, Punkt-zu-Punkt-Verbindungen oder beides repräsentiert, verbunden durch zweckentsprechende Bridges, Adapter oder Steuerungen.
  • In einigen Ausführungsformen umfasst das Computing-System 800 ferner einen Direktzugriffsspeicher (Random Access Memory, RAM) oder ein anderes dynamisches Speichergerät oder -element als Hauptspeicher 815 und Speichersteuerung 816 zum Speichern von Informationen und Befehlen, die durch die Prozessoren 810 auszuführen sind. Hauptspeicher 815 kann, ohne jedoch darauf beschränkt zu sein, dynamischen Schreib-Lese-Speicher (Dynamic Random Access Memory, DRAM) beinhalten. In einigen Ausführungsformen beinhaltet der RAM oder das andere dynamische Speichergerät oder -element einen Verfolgungsmodell-Schaltungsblock 818, der Logik kontinuierlichen Lernens 817 implementiert, um der Verfolgungsmodelllogik 818 Trainingsmuster zum Ausführen von Langzeitverfolgung gemäß den beschriebenen Ausführungsformen bereitzustellen.
  • Das Computing-System 800 kann auch einen nichtflüchtigen Speicher 820; ein Speichergerät wie z.B. ein Halbleiterlaufwerk (Solid-State Drive, SSD) 830 und einen Nur-Lese-Speicher (Read Only Memory, ROM) 835 oder ein anderes statisches Speichergerät zum Speichern statischer Informationen und Befehle für die Prozessoren 810 umfassen.
  • In einigen Ausführungsformen beinhaltet das Computing-System 800 einen oder mehrere Sender oder Empfänger 840, die mit dem Bus 805 gekoppelt sind. In einigen Ausführungsformen kann das Computing-System 800 eine oder mehrere Antennen 844, wie z.B. Dipol- oder Monopolantennen, für die Sendung und den Empfang von Daten per Drahtloskommunikation mithilfe eines Drahtlossenders, -empfängers oder beider und einen oder mehrere Anschlüsse 842 für die Sendung und den Empfang von Daten per leitungsgebundener Kommunikation beinhalten. Zur Drahtloskommunikation zählen ohne jedoch darauf beschränkt zu sein, Wi-Fi, Bluetooth™, Nahfeldkommunikation und andere Drahtloskommunikations-Standards.
  • In einigen Ausführungsformen beinhaltet Computing-System 800 ein oder mehrere Eingabegeräte 850 für die Eingabe von Daten, einschließlich Tasten oder Schaltflächen mit fester oder variabler Funktion, eines Joysticks, einer Maus oder eines anderen Zeigegerätes, einer Tastatur, eines Sprachbefehlssystems oder eines Gestenerkennngssystems. In einer Ausführungsform beinhaltet das Computing-System 800 eine(n) oder mehrere Tiefenkameras/-scanner 852, um Daten zu erfassen, die zur Bildverarbeitung verwendet werden, einschließlich 3D-Daten. Die Tiefenkameras/-scanner können RGB-D-Sensoren (Rot-, Grün-, Blau-, Tiefensensoren) und Lidar-Fernabtaster (Light Detection and Ranging, Licht-Erkennung und -Entfernungsbestimmung) beinhalten.
  • In einigen Ausführungsformen beinhaltet Computing-System 800 eine Ausgabeanzeige 855, wobei die Ausgabeanzeige 855 eine Flüssigkristallanzeige (Liquid Crystal Display, LCD) oder jedwede andere Anzeigetechnologie beinhalten kann, zum Anzeigen von Informationen oder Inhalten für einen Benutzer. In einigen Umgebungen kann die Ausgabeanzeige 855 einen Berührbildschirm beinhalten, der auch als mindestens ein Teil eines Eingabegerätes 850 genutzt wird. Ausgabeanzeige 855 kann ferner Audioausgabe einschließlich eines/einer oder mehrerer Lautsprecher, Audioausgangsbuchsen oder anderes Audio und andere Ausgabe für den Benutzer beinhalten.
  • Auch kann das Computing-System 800 eine Batterie oder andere Stromquelle 860 umfassen, die eine Solarzelle, eine Brennstoffzelle, einen geladenen Kondensator, eine induktive Nahfeldkopplung oder ein anderes System oder Gerät zum Bereitstellen oder Erzeugen von Strom im Computing-System 800 beinhalten kann. Der durch die Stromquelle 860 bereitgestellte Strom kann erforderlichenfalls an Elemente des Computing-Systems 800 verteilt werden.
  • Aus dieser Beschreibung wird offensichtlich, dass Aspekte der beschriebenen Ausführungsformen mindestens teilweise in Software implementiert sein könnten. Das heißt, dass die hierin beschriebenen Techniken und Verfahren in einem Datenverarbeitungssystem in Reaktion darauf ausgeführt werden könnten, dass sein Prozessor eine Abfolge von Befehlen ausführt, die in einem dinghaften, nichtflüchtigen Speicher wie z.B. dem Speicher 815 oder dem nichtflüchtigen Speicher 820 oder einer Kombination derartiger Speicher enthalten sind und wobei jeder dieser Speicher eine Form eines maschinenlesbaren, dinghaften Speichermediums ist.
  • Um die verschiedenen Ausführungsformen zu implementieren, könnten festverdrahtete Schaltungen in Kombination mit Softwarebefehlen verwendet werden. Beispielsweise können Aspekte der beschriebenen Ausführungsformen als Software implementiert werden, die in einem persistenten Speichergerät installiert und gespeichert ist und die durch einen Prozessor (nicht gezeigt) in einen Speicher geladen und ausgeführt werden kann, um die Prozesse oder Operationen auszuführen, die in dieser ganzen Anmeldung beschrieben sind. Alternativ können die beschriebenen Ausführungsformen mindestens zum Teil als ausführbarer Code implementiert sein, der in dedizierte Hardware programmiert oder eingebettet ist, wie z.B. eine integrierte Schaltung (z.B. einen anwendungsspezifischen IC oder ASIC), einen Digitalsignalprozessor (DSP), eine feldprogrammierbare Gatteranordnung (FPGA) oder Steuerung, auf die über einen entsprechenden Treiber und/oder ein Betriebssystem von einer Anwendung zugegriffen werden kann. Außerdem können die beschriebenen Ausführungsformen mindestens zum Teil als spezifische Hardwarelogik in einem Prozessor oder Prozessorkern als Teil eines Befehlssatzes implementiert sein, worauf durch eine Softwarekomponente über einen oder mehrere spezifische Befehle zugegriffen werden kann.
  • Somit sind die Techniken nicht auf irgendeine spezifische Kombination von Hardwareschaltung und Software oder auf irgendeine bestimmte Quelle für die Befehle beschränkt, die durch das Datenverarbeitungssystem ausgeführt werden.
  • Alle oder ein Teil der beschriebenen Ausführungsformen können mit Logikschaltungen implementiert sein, wie z.B. die oben beschriebenen ASIC-, DSP- oder FPGA-Schaltungen, einschließlich einer dedizierten Logikschaltung, einer Steuerung oder eines Mikrocontrollers oder einer anderen Form von Verarbeitungskern, der Programmcodebefehle ausführt. Somit könnten Prozesse, die durch die obige Diskussion gelehrt werden, mit Programmcode wie z.B. maschinenausführbaren Befehlen durchgeführt werden, die eine Maschine, die diese Befehle ausführt, veranlassen, gewisse Funktionen auszuüben. In diesem Kontext ist eine „Maschine“ typischerweise eine Maschine, die Befehle in einer Zwischenform (oder „abstrakte“ Befehle) in prozessorspezifische Befehle umwandelt (z.B. eine abstrakte Laufzeitumgebung wie z.B. eine „virtuelle Maschine“ (z.B. eine virtuelle Java-Maschine), ein Interpreter, eine Common Language Runtime, eine virtuelle Hochsprachen-Maschine usw.), und/oder elektronische Schaltungen, die auf einem Halbleiterchip angeordnet (z.B. „Logikschaltungen“, die mit Transistoren implementiert sind) und ausgelegt sind, Befehle auszuführen, wie z.B. ein Mehrzweckprozessor und/oder ein Spezialprozessor. Durch die obige Diskussion gelehrte Prozesse können auch (als Alternative zu eine Maschine oder in Kombination mit einer Maschine) durch elektronische Schaltungen durchgeführt werden, die ausgelegt sind, die Prozesse (oder einen Teil davon) ohne die Ausführung von Programmcode durchzuführen.
  • Um Programmcode zu speichern, kann ein Fertigungsgegenstand verwendet werden. Ein Fertigungsgegenstand, der Programmcode speichert, kann, ohne jedoch darauf beschränkt zu sein, als ein oder mehrere Speicher (z.B. ein oder mehrere Flash-Speicher, Direktzugriffsspeicher (statisch, dynamisch oder anderweitig)), optische Disks, CD-ROMs, DVD ROMs, EPROMs, EEPROMs, magnetische oder optische Karten oder eine andere Art maschinenlesbarer Medien ausgeführt sein, die zum Speichern elektronischer Befehle geeignet ist. Auch kann Programmcode von einem entfernten Computer (z.B. einem Server) auf einen anfordernden Computer (z.B. einen Client) über Datensignale heruntergeladen werden, die in einem Ausbreitungsmedium ausgeführt sind (z.B. über eine Kommunikationsverbindung (z.B. eine Netzverbindung)).
  • Es ist beabsichtigt, dass der Begriff „Speicher“ in der hier verwendeten Weise alle flüchtigen Speichermedien einbezieht, wie z.B. dynamischen Direktzugriffsspeicher (Dynamic Random Access Memory, DRAM) und statischen RAM (SRAM) oder andere Arten von Speicher, die anderswo in dieser Anmeldung beschrieben sind. Computerausführbare Befehle können auf nichtflüchtigen Speichergeräten gespeichert sein, wie z.B. einer magnetischen Festplatte, einer optischen Disk, und sind typischerweise durch einen direkten Speicherzugriffsprozess während Ausführung von Software durch einen Prozessor in den Speicher geschrieben worden. Ein Fachmann wird unmittelbar erkennen, dass der Begriff „maschinenlesbares Speichermedium“ jedwede Art flüchtigen oder nichtflüchtigen Speichergerätes beinhaltet, auf das durch einen Prozessor zugegriffen werden kann.
  • Die vorhergehenden ausführlichen Beschreibungen werden im Hinblick auf Algorithmen und symbolische Repräsentationen von Operationen an Datenbits innerhalb eines Computerspeichers dargelegt. Diese algorithmischen Beschreibungen und Repräsentationen sind die Hilfsmittel, die durch Fachleute im Datenverarbeitungswesen verwendet werden, um anderen Fachleuten die Substanz ihrer Arbeit am effektivsten zu vermitteln. Ein Algorithmus wird hier und im Allgemeinen als selbstkonsistente Abfolge von Operationen begriffen, die zu einem gewünschten Ergebnis führt. Die Operationen sind jene, die physikalische Manipulationen physikalischer Größen erfordern. Üblicher-, aber nicht notwendigerweise nehmen diese Größen die Form elektrischer oder magnetischer Signale an, die in der Lage sind, gespeichert, übertragen, kombiniert, verglichen und anderweitig manipuliert zu werden. Es hat sich hin und wieder als zweckdienlich erwiesen, vornehmlich aus Gründen der üblichen Verwendung diese Signale als Bits, Werte, Elemente, Symbole, Zeichen, Terme, Zahlen oder dergleichen zu bezeichnen.
  • Es muss jedoch beachtet werden, dass all diese und ähnliche Begriffe den entsprechenden physikalischen Größen zuzuordnen sind und hauptsächlich praktische Bezeichnungen sind, die auf diese Größen angewendet werden. Sofern nicht wie aus obiger Diskussion offensichtlich eigens anders erklärt, versteht es sich, dass in der gesamten Beschreibung Diskussionen, die Begriffe wie z.B. „Verarbeitung“ oder „Computing“ oder „Berechnen“ oder „Bestimmen“ oder „Anzeigen“ oder dergleichen nutzen, sich auf die Aktion und die Prozesse eines Computersystems oder ähnlichen elektronischen Computing-Gerätes beziehen, das Daten, die als physikalische (elektronische) Größen innerhalb der Register und Speicher des Computersystems repräsentiert sind, in andere Daten umarbeitet und transformiert, die in ähnlicher Weise als physikalische Größen innerhalb der Computersystemspeicher oder -register oder anderer derartiger Informationsspeicher-, -übertragungs- oder -anzeigegeräte repräsentiert sind.
  • Die beschriebenen Ausführungsformen betreffen auch eine Vorrichtung zum Durchführen der hierin beschriebenen Operationen. Diese Vorrichtung kann speziell für den gewünschten Zweck aufgebaut sein, oder sie kann einen Mehrzweckcomputer umfassen, der durch ein Computerprogramm, das im Computer gespeichert ist, selektiv aktiviert oder umkonfiguriert wird. So oder so stellt die Vorrichtung die Mittel zum Ausführen der hierin beschriebenen Operationen bereit. Das Computerprogramm kann in einem computerlesbaren Speichermedium gespeichert sein, wie z.B., ohne jedoch darauf beschränkt zu sein, jedweder Art von Disk einschließlich Floppy-Disks, optischer Disks, CD-ROMs und magneto-optischer Disks, Lesespeichern (Read-Only Memories, ROMs), RAMs, EPROMs, EEPROMs, magnetischer oder optischer Karten oder jedwedes anderen zum Speichern elektronischer Befehle geeigneten Medientyps, und wobei jedes davon mit einem Computersystembus gekoppelt ist.
  • Die hierin präsentierten Prozesse und Anzeigen sind nicht von Natur aus auf einen bestimmten Computer oder eine sonstige Vorrichtung bezogen. Verschiedene Mehrzwecksysteme können mit Programmen gemäß den Ausführungen hierin benutzt werden, oder es kann sich als günstig erweisen, eine spezialisiertere Vorrichtung aufzubauen, um die beschriebenen Operationen durchzuführen. Die erforderliche Struktur für eine Vielzahl dieser Systeme wird aus der Beschreibung ersichtlich, die in dieser Anmeldung bereitgestellt ist. Darüber hinaus sind die Ausführungsformen nicht unter Bezug auf irgendeine bestimmte Programmiersprache beschrieben. Man wird verstehen, dass eine Vielzahl von Programmiersprachen verwendet werden könnte, um die Lehren der Ausführungsformen, wie hierin beschrieben, zu implementieren.
  • Zusätzliche Beispielimplementierungen sind wie folgt:
  • Ein Beispielverfahren, -system, eine Beispielvorrichtung oder ein beispielhaftes computerlesbares Medium für Objektverfolgung umfasst mindestens einen Kanal mehrerer Eingangseinzelbilder, einen Datensatz kontinuierlichen Lernens zum Akkumulieren von Mustern eines Zielobjektes, das in einem Eingangseinzelbild der mehreren Eingangseinzelbilder verfolgt wird, mindestens einen Prozessor und eine Schaltung für kontinuierliches Lernen, die durch den mindestens einen Prozessor betrieben wird, um ein Zielobjekt zu erkennen, das mindestens ein Merkmal aufweist, ein Kandidatenobjekt in einem Eingangseinzelbild der mehreren Eingangseinzelbilder zu verfolgen und das Kandidatenobjekt als das Zielobjekt basierend auf dem mindestens einen Merkmal des Zielobjektes und einem vorher akkumulierten Muster des Zielobjektes zu identifizieren.
  • In einer anderen Beispielimplementierung dient die Schaltung für kontinuierliches Lernen, die durch den mindestens einen Prozessor betrieben wird, ferner dazu, einen Teil des Eingangseinzelbildes, der das Kandidatenobjekt enthält, das als das Zielobjekt identifiziert worden ist, im Datensatz kontinuierlichen Lernens zu akkumulieren, wobei der Teil ein Muster des Zielobjektes repräsentiert.
  • In einer anderen Beispielimplementierung dient die Schaltung für kontinuierliches Lernen, die durch den mindestens einen Prozessor betrieben wird, ferner dazu, einen Ort des Kandidatenobjektes, das als das Zielobjekt identifiziert worden ist, zu verfeinern, um den zu akkumulierenden Teil des Eingangseinzelbildes genau zu ermitteln, einschließlich des Durchführens irgendeines von einem Verfeinerungsnetz und Clustering des Kandidatenobjektes, das als das Zielobjekt identifiziert worden ist, und vorher akkumulierter Muster des Zielobjektes im Datensatz kontinuierlichen Lernens.
  • In einer anderen Beispielimplementierung dient, um das Kandidatenobjekt als das Zielobjekt basierend auf dem mindestens einen Merkmal des Zielobjektes und dem Muster des Zielobjektes zu identifizieren, die Schaltung für kontinuierliches Lernen, die durch den mindestens einen Prozessor betrieben wird, ferner dazu, zu ermitteln, ob das mindestens eine Merkmal des Zielobjektes im Kandidatenobjekt und dem Muster des Zielobjektes vorhanden ist, einen Zielabstand zwischen mindestens einem Merkmal zu berechnen, das in jedem des Kandidatenobjektes und des Zielobjektes vorhanden ist, einen oder mehrere Musterabstände zwischen dem mindestens einen Merkmal zu berechnen, das in jedem des Kandidatenobjektes und des Musters des Zielobjektes vorhanden ist, und zu ermitteln, dass ein Durchschnitt des berechneten Zielabstandes und der berechneten Musterabstände innerhalb der Identitätsschwelle liegt.
  • In einer anderen Beispielimplementierung dient die Schaltung für kontinuierliches Lernen, die durch den mindestens einen Prozessor betrieben wird, ferner dazu, basierend auf dem mindestens einen Merkmal, das im Kandidatenobjekt und dem Muster des Zielobjektes vorhanden ist, das Kandidatenobjekt als nicht das Zielobjekt zu identifizieren, das Zielobjekt, das das mindestens eine Merkmal aufweist, wiederzuerkennen und das Kandidatenobjekt in dem Eingangseinzelbild der mehreren Eingangseinzelbilder unter Verwendung des wiedererkannten Zielobjektes zu verfolgen.
  • In einer anderen Beispielimplementierung dient, um basierend auf dem mindestens einen Merkmal, das im Kandidatenobjekt und dem Muster des Zielobjektes vorhanden ist, das Kandidatenobjekt als nicht das Zielobjekt zu identifizieren, die Schaltung für kontinuierliches Lernen, die durch den mindestens einen Prozessor betrieben wird, ferner dazu, einen oder mehrere Zielabstände zwischen dem mindestens einem Merkmal zu berechnen, das in jedem des Kandidatenobjektes und des Zielobjektes vorhanden ist, einen oder mehrere Musterabstände zwischen dem mindestens einen Merkmal zu berechnen, das in jedem des Kandidatenobjektes und des Musters des Zielobjektes vorhanden ist, und zu ermitteln, dass ein Durchschnitt der berechneten Zielabstände und Musterabstände die Identitätsschwelle überschreitet.
  • In einer anderen Beispielimplementierung beinhaltet das mindestens eine Merkmal, das in jedwedem des Kandidatenobjektes, des Zielobjektes und des Musters des Zielobjektes vorhanden ist, ein Erscheinungsbild des Objektes, das der Veränderung fähig ist, einschließlich jedwedem von einer Farbe, einer Form, einer Richtung und einem Bewegungsmerkmal.
  • In einer anderen Beispielimplementierung dient, um ein Kandidatenobjekt in einem Eingangseinzelbild der mehreren Eingangseinzelbilder zu verfolgen, die Schaltung für kontinuierliches Lernen, die durch den mindestens einen Prozessor betrieben wird, ferner dazu, einen Klassifizierer auszuführen, um zwischen dem Kandidatenobjekt und anderen Objekten basierend auf dem mindestens einen Merkmal zu unterscheiden, das in jedwedem des Zielobjektes, des Kandidatenobjektes und des Musters des Zielobjektes vorhanden ist.
  • In der vorangehenden Spezifikation sind Ausführungsformen unter Bezug auf spezielle Ausführungsbeispiele oder -implementierungen beschrieben worden. Es ist offensichtlich, dass verschiedene Modifikationen an den beschriebenen Ausführungsformen oder Implementierungen vorgenommen werden können, ohne den weiteren Geist und Umfang der Ausführungsformen oder Implementierungen zu verlassen, wie in den nachfolgenden Ansprüchen dargelegt. Die Spezifikation und die Zeichnungen sind dementsprechend eher in einem veranschaulichenden Sinne als in einem beschränkenden Sinne zu betrachten.

Claims (25)

  1. Computerimplementiertes System zur Objektverfolgung, das Folgendes umfasst: mindestens einen Kanal mehrerer Eingangseinzelbilder; einen Datensatz kontinuierlichen Lernens zum Akkumulieren von Mustern eines Zielobjektes, das in einem Eingangseinzelbild der mehreren Eingangseinzelbilder verfolgt wird; mindestens einen Prozessor und eine Schaltung für kontinuierliches Lernen, die durch den mindestens einen Prozessor betrieben wird, um ein Zielobjekt zu erkennen, das mindestens ein Merkmal aufweist, ein Kandidatenobjekt in einem Eingangseinzelbild der mehreren Eingangseinzelbilder zu verfolgen und das Kandidatenobjekt als das Zielobjekt basierend auf dem mindestens einen Merkmal des Zielobjektes und einem vorher akkumulierten Muster des Zielobjektes zu identifizieren.
  2. Computerimplementiertes System nach Anspruch 1, wobei die Schaltung für kontinuierliches Lernen, die durch den mindestens einen Prozessor betrieben wird, ferner dazu dient, einen Teil des Eingangseinzelbildes, der das Kandidatenobjekt enthält, das als das Zielobjekt identifiziert worden ist, im Datensatz kontinuierlichen Lernens zu akkumulieren, wobei der Teil ein Muster des Zielobjektes repräsentiert.
  3. Computerimplementiertes System nach irgendeinem der vorhergehenden Ansprüche 1 und 2, wobei die Schaltung für kontinuierliches Lernen, die durch den mindestens einen Prozessor betrieben wird, ferner dazu dient, einen Ort des Kandidatenobjektes, das als das Zielobjekt identifiziert worden ist, zu verfeinern, um den zu akkumulierenden Teil des Eingangseinzelbildes genau zu ermitteln, einschließlich des Durchführens irgendeines von einem Verfeinerungsnetz und Clustering des Kandidatenobjektes, das als das Zielobjekt identifiziert worden ist, und vorher akkumulierter Muster des Zielobjektes im Datensatz kontinuierlichen Lernens.
  4. Computerimplementiertes System nach irgendeinem der vorhergehenden Ansprüche 1, 2 und 3, wobei, um das Kandidatenobjekt als das Zielobjekt basierend auf dem mindestens einen Merkmal des Zielobjektes und dem Muster des Zielobjektes zu identifizieren, die Schaltung für kontinuierliches Lernen, die durch den mindestens einen Prozessor betrieben wird, ferner dazu dient, zu ermitteln, ob das mindestens eine Merkmal des Zielobjektes in dem Kandidatenobjekt und dem Muster des Zielobjektes vorhanden ist, einen Zielabstand zwischen mindestens einem Merkmal zu berechnen, das in jedem des Kandidatenobjektes und des Zielobjektes vorhanden ist, einen oder mehrere Musterabstände zwischen dem mindestens einen Merkmal zu berechnen, das in jedem des Kandidatenobjektes und des Musters des Zielobjektes vorhanden ist, und zu ermitteln, dass ein Durchschnitt des berechneten Zielabstandes und der berechneten Musterabstände innerhalb der Identitätsschwelle liegt.
  5. Computerimplementiertes System nach irgendeinem der vorhergehenden Ansprüche 1, 2, 3 und 4, wobei die Schaltung für kontinuierliches Lernen, die durch den mindestens einen Prozessor betrieben wird, ferner dazu dient, basierend auf dem mindestens einen Merkmal, das im Kandidatenobjekt und dem Muster des Zielobjektes vorhanden ist, das Kandidatenobjekt als nicht das Zielobjekt zu identifizieren, das Zielobjekt wiederzuerkennen, das das mindestens eine Merkmal aufweist; und das Kandidatenobjekt im Eingangseinzelbild der mehreren Eingangseinzelbilder unter Verwendung des wiedererkannten Zielobjektes zu verfolgen.
  6. Computerimplementiertes System nach irgendeinem der vorhergehenden Ansprüche 1, 2, 3, 4 und 5, wobei, um basierend auf dem mindestens einen Merkmal, das im Kandidatenobjekt und dem Muster des Zielobjektes vorhanden ist, das Kandidatenobjekt als nicht das Zielobjekt zu identifizieren, die Schaltung für kontinuierliches Lernen, die durch den mindestens einen Prozessor betrieben wird, ferner dazu dient, einen oder mehrere Zielabstände zwischen dem mindestens einen Merkmal zu berechnen, das in jedem des Kandidatenobjektes und des Zielobjektes vorhanden ist, einen oder mehrere Musterabstände zwischen dem mindestens einen Merkmal zu berechnen, das in jedem des Kandidatenobjektes und des Musters des Zielobjektes vorhanden ist, und zu ermitteln, dass ein Durchschnitt der berechneten Zielabstände und Musterabstände die Identitätsschwelle überschreitet.
  7. Computerimplementiertes System nach irgendeinem der vorhergehenden Ansprüche 1, 2, 3, 4, 5 und 6, wobei das mindestens eine Merkmal, das in jedwedem des Kandidatenobjektes, des Zielobjektes und des Musters des Zielobjektes vorhanden ist, ein Erscheinungsbild des Objektes beinhaltet, das der Veränderung fähig ist, einschließlich jedwedem von einer Farbe, einer Form, einer Richtung und einem Bewegungsmerkmal.
  8. Computerimplementiertes System nach irgendeinem vorhergehender Ansprüche 1, 2, 3, 4, 5, 6 und 7, wobei, um ein Kandidatenobjekt in einem Eingangseinzelbild der mehreren Eingangseinzelbilder zu verfolgen, die Schaltung für kontinuierliches Lernen, die durch den mindestens einen Prozessor betrieben wird, ferner dazu dient, einen Klassifizierer auszuführen, um zwischen dem Kandidatenobjekt und anderen Objekten basierend auf dem mindestens einen Merkmal zu unterscheiden, das in jedwedem des Zielobjektes, des Kandidatenobjektes und des Musters des Zielobjektes vorhanden ist.
  9. Computerimplementiertes Verfahren zur Objektverfolgung, das Folgendes umfasst: Erkennen eines Zielobjektes, das mindestens ein Merkmal aufweist, Akkumulieren von Mustern des Zielobjektes, die in Eingangseinzelbildern einer Videosequenz identifiziert wurden; Verfolgen eines Kandidatenobjektes in einem Eingangseinzelbild der Videosequenz; und Identifizieren des Kandidatenobjektes als das Zielobjekt basierend auf dem mindestens einen Merkmal des Zielobjektes und einem oder mehreren akkumulierten Mustern des Zielobjektes.
  10. Computerimplementiertes Verfahren nach Anspruch 9, das ferner Folgendes umfasst: Akkumulieren eines Teils des Eingangseinzelbildes, der das Kandidatenobjekt enthält, das als das Zielobjekt identifiziert worden ist, in einem Datensatz kontinuierlichen Lernens, wobei der Teil ein Muster des Zielobjektes repräsentiert.
  11. Computerimplementiertes Verfahren nach irgendeinem der vorhergehenden Ansprüche 9 und 10, das ferner Folgendes umfasst: Verfeinern eines Ortes des Kandidatenobjektes, das als das Zielobjekt identifiziert worden ist, um den zu akkumulierenden Teil des Eingangseinzelbildes genau zu ermitteln, einschließlich des Durchführens irgendeines von einem Verfeinerungsnetz und Clustering mit dem Kandidatenobjekt, das als das Zielobjekt identifiziert worden ist, und vorher akkumulierten Mustern des Zielobjektes im Datensatz kontinuierlichen Lernens.
  12. Computerimplementiertes Verfahren nach irgendeinem der vorhergehenden Ansprüche 9, 10 und 11, wobei Identifizieren des Kandidatenobjektes als das Zielobjekt basierend auf dem mindestens einen Merkmal des Zielobjektes und dem einen oder den mehreren akkumulierten Mustern des Zielobjektes ferner Folgendes beinhaltet: Berechnen, dass das mindestens eine Merkmal des Zielobjektes im Kandidatenobjekt und in dem einen oder den mehreren akkumulierten Mustern des Zielobjektes vorhanden ist, Berechnen eines oder mehrerer Zielabstände zwischen mindestens einem Merkmal, das in jedem des Kandidatenobj ektes und des Zielobjektes vorhanden ist, und Ermitteln, dass ein Durchschnitt des einen oder der mehreren berechneten Ziel- und Musterabstände innerhalb der Identitätsschwelle liegt.
  13. Computerimplementiertes Verfahren nach irgendeinem der vorhergehenden Ansprüche 9, 10, 11 und 12, das ferner Folgendes umfasst: basierend auf dem mindestens einen Merkmal, das im Kandidatenobjekt und dem einen oder den mehreren akkumulierten Mustern des Zielobjektes vorhanden ist, Identifizieren des Kandidatenobjektes als nicht das Zielobjekt; Wiedererkennen des Zielobjektes, das das mindestens eine Merkmal aufweist; und Verfolgen des Kandidatenobjektes im Eingangseinzelbild der Videosequenz unter Verwendung des wiedererkannten Ziel Objektes.
  14. Computerimplementiertes Verfahren nach irgendeinem der vorhergehenden Ansprüche 9, 10, 11, 12 und 13, wobei Identifizieren des Kandidatenobjektes als nicht das Zielobjekt basierend auf dem mindestens einen Merkmal, das im Kandidatenobjekt und dem einen oder den mehreren akkumulierten Mustern des Zielobjektes vorhanden ist, ferner Folgendes beinhaltet: Berechnen eines oder mehrerer Zielabstände zwischen dem mindestens einen Merkmal, das in jedem des Kandidatenobjektes und des Zielobjektes vorhanden ist, Berechnen eines oder mehrerer Musterabstände zwischen dem mindestens einen Merkmal, das in jedem des Kandidatenobjektes und des Musters des Zielobjektes vorhanden ist, und Ermitteln, dass ein Durchschnitt des berechneten Zielabstandes und der berechneten Musterabstände die Identitätsschwelle überschreitet.
  15. Computerimplementiertes Verfahren nach irgendeinem der vorhergehenden Ansprüche 9, 10, 11, 12, 13 und 14, wobei das mindestens eine Merkmal, das in jedwedem des Kandidatenobjektes, des Zielobjektes und des Musters des Zielobjektes vorhanden ist, ein Erscheinungsbild des Objektes beinhaltet, das der Veränderung fähig ist, einschließlich jedwedem von einer Farbe, einer Form, einer Richtung und einem Bewegungsmerkmal.
  16. Computerimplementiertes Verfahren nach irgendeinem vorhergehender Ansprüche 9, 10, 11, 12, 13, 14 und 15, wobei Verfolgen eines Kandidatenobjektes in einem Eingangseinzelbild der Videosequenz ferner Folgendes beinhaltet: Unterscheiden zwischen dem Kandidatenobjekt und anderen Objekten mithilfe eines Klassifizierers basierend auf dem mindestens einem Merkmal, das in jedwedem des Zielobjektes, des Kandidatenobjektes und des Musters des Zielobjektes vorhanden ist.
  17. Computerlesbares Speichermedium oder computerlesbare Speichermedien, die mehrere Befehle umfassen, die bei Ausführung auf einem Prozessor veranlassen, dass der Prozessor ein Verfahren nach irgendeinem der Ansprüche 9-16 implementiert.
  18. Vorrichtung zur Objektverfolgung, die Folgendes umfasst: mindestens einen Speicher; mindestens einen Prozessor, der kommunikativ mit dem Speicher gekoppelt ist, mindestens einen Kanal von Einzelbildern einer Videosequenz; mindestens einen Prozessor; und eine Schaltung für kontinuierliches Lernen, die durch den mindestens einen Prozessor betrieben wird, um ein Zielobjekt zu erkennen, das mindestens ein Merkmal aufweist, ein Kandidatenobjekt in einem Eingangseinzelbild der Videosequenz zu verfolgen und das Kandidatenobjekt als das Zielobjekt basierend auf dem mindestens einen Merkmal des Zielobjektes und einem Muster des Zielobjektes zu identifizieren, das vorher in dem mindestens einen Speicher akkumuliert worden ist.
  19. Vorrichtung nach Anspruch 18, wobei die Schaltung für kontinuierliches Lernen, die durch den mindestens einen Prozessor betrieben wird, ferner dazu dient, einen Teil des Eingangseinzelbildes, der das Kandidatenobjekt enthält, das als das Zielobjekt identifiziert worden ist, in dem mindestens einen Speicher zu akkumulieren, wobei der Teil ein Muster des Zielobjektes repräsentiert.
  20. Vorrichtung nach irgendeinem der vorhergehenden Ansprüche 18 und 19, wobei die Schaltung für kontinuierliches Lernen, die durch den mindestens einen Prozessor betrieben wird, ferner dazu dient, einen Ort des Kandidatenobjektes zu verfeinern, das als das Zielobjekt identifiziert worden ist, um den zu akkumulierenden Teil des Eingangseinzelbildes genau zu ermitteln, einschließlich irgendeines von einem Verfeinerungsnetz und Clustering mit dem Kandidatenobjekt, das als das Zielobjekt identifiziert worden ist, und vorher akkumulierten Mustern des Ziel Objektes in dem mindestens einen Speicher durchzuführen.
  21. Vorrichtung nach irgendeinem der vorhergehenden Ansprüche 18, 19 und 20, wobei, um das Kandidatenobjekt als das Zielobjekt basierend auf dem mindestens einen Merkmal des Zielobjektes und dem Muster des Zielobjektes zu identifizieren, die Schaltung für kontinuierliches Lernen, die durch den mindestens einen Prozessor betrieben wird, ferner dazu dient, zu ermitteln, ob das mindestens eine Merkmal des Zielobjektes in dem Kandidatenobjekt und dem Muster des Zielobjektes vorhanden ist, einen Zielabstand zwischen mindestens einem Merkmal zu berechnen, das in jedem des Kandidatenobjektes und des Zielobjektes vorhanden ist, und einen Musterabstand zwischen dem mindestens einen Merkmal zu berechnen, das in jedem des Kandidatenobjektes und des Musters des Zielobjektes vorhanden ist, und zu ermitteln, dass ein Durchschnitt des berechneten Zielabstandes und Musterabstandes innerhalb der Identitätsschwelle liegt.
  22. Vorrichtung nach irgendeinem der vorhergehenden Ansprüche 18, 19, 20 und 21, wobei die Schaltung für kontinuierliches Lernen, die durch den mindestens einen Prozessor betrieben wird, ferner dazu dient, basierend auf dem mindestens einen Merkmal, das im Kandidatenobjekt und dem Muster des Zielobjektes vorhanden ist, das Kandidatenobjekt als nicht das Zielobjekt zu identifizieren, das Zielobjekt wiederzuerkennen, das das mindestens eine Merkmal aufweist; und das Kandidatenobjekt im Eingangseinzelbild der Videosequenz unter Verwendung des wiedererkannten Zielobjektes zu verfolgen.
  23. Vorrichtung nach irgendeinem der vorhergehenden Ansprüche 18, 19, 20, 21 und 22, wobei, um basierend auf dem mindestens einen Merkmal, das im Kandidatenobjekt und dem Muster des Zielobjektes vorhanden ist, das Kandidatenobjekt als nicht das Zielobjekt zu identifizieren, die Schaltung für kontinuierliches Lernen, die durch den mindestens einen Prozessor betrieben wird, ferner dazu dient, einen Zielabstand zwischen dem mindestens einen Merkmal zu berechnen, das in jedem des Kandidatenobjektes und des Zielobjektes vorhanden ist, einen Musterabstand zwischen dem mindestens einen Merkmal zu berechnen, das in jedem des Kandidatenobjektes und des Musters des Zielobjektes vorhanden ist, und zu ermitteln, ob ein Durchschnitt des berechneten Zielabstandes und Musterabstandes die Identitätsschwelle überschreitet.
  24. Vorrichtung nach irgendeinem der vorhergehenden Ansprüche 18, 19, 20, 21, 22 und 23, wobei das mindestens eine Merkmal, das in jedwedem des Kandidatenobjektes, des Zielobjektes und des Musters des Zielobjektes vorhanden ist, ein Erscheinungsbild des Objektes beinhaltet, das der Veränderung fähig ist, einschließlich jedwedem von einer Farbe, einer Form, einer Richtung und einem Bewegungsmerkmal.
  25. Vorrichtung nach irgendeinem der vorhergehenden Ansprüche 18, 19, 20, 21, 22, 23 und 24, wobei, um ein Kandidatenobjekt in einem Eingangseinzelbild der Videosequenz zu verfolgen, die Schaltung für kontinuierliches Lernen, die durch den mindestens einen Prozessor betrieben wird, ferner dazu dient, einen Klassifizierer auszuführen, um zwischen dem Kandidatenobjekt und anderen Objekten basierend auf dem mindestens einen Merkmal zu unterscheiden, das in jedwedem des Zielobjektes, des Kandidatenobjektes und des Musters des Zielobjektes vorhanden ist.
DE112019006564.5T 2019-01-03 2019-01-03 Kontinuierliches Lernen zur Objektverfolgung Pending DE112019006564T5 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2019/070174 WO2020140223A1 (en) 2019-01-03 2019-01-03 Continuous learning for object tracking

Publications (1)

Publication Number Publication Date
DE112019006564T5 true DE112019006564T5 (de) 2021-10-14

Family

ID=71406498

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112019006564.5T Pending DE112019006564T5 (de) 2019-01-03 2019-01-03 Kontinuierliches Lernen zur Objektverfolgung

Country Status (3)

Country Link
US (1) US11978217B2 (de)
DE (1) DE112019006564T5 (de)
WO (1) WO2020140223A1 (de)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021137763A1 (en) * 2019-12-30 2021-07-08 Nanyang Technological University Object re-identification using multiple cameras
CN111339855B (zh) * 2020-02-14 2023-05-23 睿魔智能科技(深圳)有限公司 基于视觉的目标跟踪方法、系统、设备及存储介质
CN114627189A (zh) * 2020-12-11 2022-06-14 深圳市智汇创科技有限公司 从多幅图像中获取目标位置的方法、装置、设备和介质
JP7784239B2 (ja) * 2021-04-23 2025-12-11 キヤノン株式会社 情報処理装置、情報処理方法、及びプログラム
US12540815B2 (en) * 2021-09-27 2026-02-03 Northwestern University Image correlation for end-to-end displacement and strain measurement
US20240303831A1 (en) * 2023-03-09 2024-09-12 Palantir Technologies Inc. Systems and methods for object tracking with retargeting inputs
CN116817743A (zh) * 2023-04-25 2023-09-29 思看科技(杭州)股份有限公司 用于跟踪测量系统的跟踪方法、跟踪系统和跟踪装置
CN116665133B (zh) * 2023-07-24 2023-10-13 山东科技大学 基于三元组网络的安全帽检测跟踪方法、设备及存储介质

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8050454B2 (en) * 2006-12-29 2011-11-01 Intel Corporation Processing digital video using trajectory extraction and spatiotemporal decomposition
CN102324030B (zh) * 2011-09-09 2013-11-06 广州灵视信息科技有限公司 一种基于图像块特征的目标跟踪方法及跟踪系统
KR101342018B1 (ko) * 2011-11-21 2013-12-16 고려대학교 산학협력단 대표 특징을 이용한 실시간 객체 인식 및 추적 방법과 그 장치
US20140185924A1 (en) * 2012-12-27 2014-07-03 Microsoft Corporation Face Alignment by Explicit Shape Regression
CN104866853A (zh) * 2015-04-17 2015-08-26 广西科技大学 一种足球比赛视频中的多运动员的行为特征提取方法
CN104767911A (zh) 2015-04-28 2015-07-08 腾讯科技(深圳)有限公司 图像处理方法及装置
US9898677B1 (en) * 2015-10-13 2018-02-20 MotionDSP, Inc. Object-level grouping and identification for tracking objects in a video
CN105760854B (zh) 2016-03-11 2019-07-26 联想(北京)有限公司 信息处理方法及电子设备
JP6988146B2 (ja) * 2016-05-25 2022-01-05 ソニーグループ株式会社 演算処理装置及び演算処理方法
CN107316322A (zh) * 2017-06-27 2017-11-03 上海智臻智能网络科技股份有限公司 视频跟踪方法和装置、以及对象识别方法和装置
US10740881B2 (en) * 2018-03-26 2020-08-11 Adobe Inc. Deep patch feature prediction for image inpainting
CN108898623A (zh) * 2018-05-24 2018-11-27 北京飞搜科技有限公司 目标跟踪方法及设备
US11158063B2 (en) * 2018-07-30 2021-10-26 Hewlett Packard Enterprise Development Lp Objects and features neural network

Also Published As

Publication number Publication date
US11978217B2 (en) 2024-05-07
WO2020140223A1 (en) 2020-07-09
US20210312642A1 (en) 2021-10-07

Similar Documents

Publication Publication Date Title
DE112019006564T5 (de) Kontinuierliches Lernen zur Objektverfolgung
Liu et al. Object detection based on YOLO network
DE112021005070T5 (de) Multi-hop-transformer für räumlich-zeitliches denken und lokalisierung
US20230186486A1 (en) Vehicle tracking method and apparatus, and electronic device
DE102022131673A1 (de) Autonomes-fahrzeug-wahrnehmung-multimodale-sensordaten-management
DE60316690T2 (de) System zur bildvergleichung mit verwendung eines dreidimensionalen objectmodelles, bildvergleichverfahren und bildvergleichprogramm
DE112020000279T5 (de) Erlernen eines erkennungsmodells unter verwenden einer verlustfunktion
DE102017100396A1 (de) Auf Straßenszenenbilder angewendete Klassifikatoren für hohe und niedrige Wiedergabetreue
DE112019000744T5 (de) Nicht überwachte domänenübergreifende Abstandsmetrikanpassung mit Merkmalsübertragungsnetz
DE112016004535T5 (de) Universelles Übereinstimmungsnetz
DE102018119682A1 (de) Bildverarbeitungsvorrichtung, bildverarbeitungsverfahren und nicht-vorübergehendes computerlesbares speichermedium
DE102018117660A1 (de) Verfahren und system zum bestimmen einer position eines fahrzeugs
DE102012218390A1 (de) Optimierung der Erkennung von Objekten in Bildern
BE1029597B1 (de) Bildverarbeitungssysteme und -verfahren zum automatischen Erzeugen eines oder mehrerer Bildverarbeitungsaufträge auf Grundlage interessierender Regionen (ROIs) digitaler Bilder
DE112020004920T5 (de) Verfolgen von datenstromobjekten mit verzögerter objekterkennung
DE102014204320A1 (de) Informationsabfrage durch Zeigen
DE102024204143A1 (de) System und Verfahren mit sprachengeführter selbstbeaufsichtigter semantischer Segmentierung
WO2018073163A1 (de) Ertragsvorhersage für ein kornfeld
DE102022110889A1 (de) Halbüberwachtes training grober labels bei bildsegmentierung
BE1031719B1 (de) Elektronisches Gerät sowie Bilddatenverarbeitungsverfahren und System
DE102021203020A1 (de) Generative-adversarial-network-modelle zur detektion kleiner strassenobjekte
CN103473562B (zh) 特定人体动作的自动训练和识别系统
DE102023106947A1 (de) Ein auf eine AR-Vorrichtung angewandtes Steuerungsverfahren der Augmented Reality (AR), eine AR-Steuerungsvorrichtung, ein elektronisches Gerät und ein computerlesbares Speichermedium
DE112022002910T5 (de) Auf verstärkungslernen basierendes system für die abstimmung von kameraparametern zur verbesserung der analytik
DE102021003755A1 (de) Contentadaptive Tutorials für Grafikbearbeitungswerkzeuge in einem Grafikbearbeitungssystem

Legal Events

Date Code Title Description
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06K0009660000

Ipc: G06V0030194000