DE112020005663T5 - Objekterkennung mit training aus mehreren datensätzen - Google Patents

Objekterkennung mit training aus mehreren datensätzen Download PDF

Info

Publication number
DE112020005663T5
DE112020005663T5 DE112020005663.5T DE112020005663T DE112020005663T5 DE 112020005663 T5 DE112020005663 T5 DE 112020005663T5 DE 112020005663 T DE112020005663 T DE 112020005663T DE 112020005663 T5 DE112020005663 T5 DE 112020005663T5
Authority
DE
Germany
Prior art keywords
annotated
objects
dataset
datasets
record
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
DE112020005663.5T
Other languages
English (en)
Inventor
Samuel Schulter
Gaurav Sharma
Yi-Hsuan Tsai
Manmohan Chandraker
Xiangyun ZHAO
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.)
NEC Laboratories America Inc
Original Assignee
NEC Laboratories America 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
Application filed by NEC Laboratories America Inc filed Critical NEC Laboratories America Inc
Publication of DE112020005663T5 publication Critical patent/DE112020005663T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • G06F18/2148Generating training patterns; Bootstrap methods, e.g. bagging or boosting characterised by the process organisation or structure, e.g. boosting cascade
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/243Classification techniques relating to the number of classes
    • G06F18/2431Multiple classes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/25Fusion techniques
    • G06F18/254Fusion techniques of classification results, e.g. of results related to same input data
    • G06F18/256Fusion techniques of classification results, e.g. of results related to same input data of results relating to different input data, e.g. multimodal recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • G06V10/7747Organisation of the process, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • G06V20/58Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads

Landscapes

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

Abstract

Verfahren und Systeme zur Objekterkennung umfassen ein Trainieren (204) von datensatzspezifischen Objektdetektoren unter Verwendung jeweiliger kommentierter bzw. annotierter Datensätze, wobei jeder der annotierten Datensätze Kommentierungen bzw. Anmerkungen für einen jeweiligen Satz von einer oder mehreren Objektklassen enthält. Die annotierten Datensätze werden unter Verwendung der datensatzspezifischen Objektdetektoren kreuzweise kommentiert bzw. annotiert (206). Ein vereinigter Objektdetektor wird trainiert (208), und zwar unter Verwendung der kreuzweise annotierten Datensätze, um alle der Objektklassen der annotierten Datensätze zu erkennen. Objekte werden in einem Eingabebild unter Verwendung des vereinigten Objektdetektors erkannt (210).

Description

  • INFORMATION ÜBER ZUGEHÖRIGE ANMELDUNGEN
  • Diese Anmeldung beansprucht die Priorität der US-Patentanmeldung Nr. 62/935,103 , eingereicht am 14. November 2019, und der US-Patentanmeldung Nr. 17/094,261 , eingereicht am 10. November 2020, die jeweils hierin durch Bezugnahme in ihrer Gesamtheit enthalten sind.
  • HINTERGRUND
  • Technisches Gebiet
  • Die vorliegende Erfindung betrifft eine Bildklassifizierung und insbesondere die Erkennung von Objekten innerhalb eines Bildes unter Verwendung mehrerer Datensätze mit heterogenen Beschriftungs- bzw. Bezeichnungsräumen.
  • Beschreibung der zugehörigen Standes der Technik
  • Objekterkennung bemüht sich, Objekte innerhalb eines gegebenen Bildes zu lokalisieren und zu kategorisieren. Für jede Objektkategorie, die zu erkennen ist, sind Trainingsdaten nötig. Jedoch sind viele Objekterkennungssysteme auf ein Erkennen von nur einer einzigen Klasse von Objekten oder einer festen Anzahl von spezifischen Objektklassen beschränkt.
  • ZUSAMMENFASSUNG
  • Ein Verfahren zur Objekterkennung enthält ein Trainieren von datensatzspezifischen Objektdetektoren unter Verwendung jeweiliger kommentierter bzw. annotierter Datensätze, wobei jeder der kommentierten Datensätze Kommentierungen bzw. Anmerkungen für einen jeweiligen Satz von einer oder mehreren Objektklassen enthält. Die kommentierten Datensätze werden unter Verwendung der datensatzspezifischen Objektdetektoren kreuzweise kommentiert. Ein vereinigter bzw. vereinheitlichter Objektdetektor wird unter Verwendung der kreuzweise kommentierten Datensätze trainiert, um alle der Objektklassen der kommentierten Datensätze zu erkennen. Objekte werden in einem Eingabebild unter Verwendung des vereinigten Objektdetektors erkannt.
  • Ein System zur Objekterkennung enthält einen Hardwareprozessor und einen Speicher. Der Speicher ist konfiguriert, um einen Computerprogrammcode zu speichern, der durch den Hardwareprozessor ausgeführt wird und der einen Maschinenlerncode, der eine Vielzahl von datensatzspezifischen Objektdetektoren implementiert, einen Maschinenlerncode, der einen vereinigten bzw. vereinheitlichten Objektdetektor implementiert, einen datensatzspezifischen Trainingscode, einen vereinigten Trainingscode und einen Objekterkennungscode enthält. Die Vielzahl von datensatzspezifischen Objektdetektoren erkennt und kommentiert bzw. annotiert jeweils Objekte innerhalb von Eingabebildern gemäß einem Training durch einen jeweiligen annotierten bzw. kommentierten Datensatz. Jeder der kommentierten Datensätze enthält Kommentierungen bzw. Anmerkungen für einen jeweiligen Satz von einer oder mehreren Objektklassen. Die datensatzspezifischen Objektdetektoren kommentieren kreuzweise die kommentierten bzw. mit Anmerkungen versehenen Datensätze. Der vereinigte Objektdetektor erkennt und kommentiert Objekte innerhalb von Eingabebildern gemäß einem Training durch mehrere Datensätze. Der datensatzspezifische Trainingscode trainiert die Vielzahl von datensatzspezifischen Objektdetektoren unter Verwendung jeweiliger kommentierter Datensätze. Der vereinigte Trainingscode trainiert den vereinigten Objektdetektor unter Verwendung der kreuzweise kommentierten Datensätze, um alle der Objektklassen der kommentierten Datensätze zu erkennen. Der Objekterkennungscode erkennt Objekte in einem Eingabebild unter Verwendung des vereinigten Objektdetektors.
  • Diese und weitere Merkmale und Vorteile werden aus der folgenden detaillierten Beschreibung von illustrativen Ausführungsformen davon offensichtlich werden, die im Zusammenhang mit den beigefügten Zeichnungen zu lesen ist.
  • Figurenliste
  • Die Offenbarung wird Details in der folgenden Beschreibung bevorzugter Ausführungsformen unter Bezugnahme auf die folgenden Figuren bereitstellen, wobei:
    • 1 ein Diagramm, das kommentierte Datensätze zeigt, wobei Bilder aus jedem Datensatz unkommentierte Objekte enthalten, die innerhalb des anderen Datensatzes kommentiert sind, gemäß einer Ausführungsform der vorliegenden Erfindung ist;
    • 2 ein Block-/Ablaufdiagramm eines Verfahrens zum Trainieren eines Mehrklassendetektors unter Verwendung mehrerer kommentierter Datensätze gemäß einer Ausführungsform der vorliegenden Erfindung ist;
    • 3 ein Diagramm unterschiedlicher Implementierungen von datensatzspezifischen Objektdetektoren gemäß einer Ausführungsform der vorliegenden Erfindung ist;
    • 4 ein Blockdiagramm eines Objekterkennungssystems mit mehreren Datensätzen gemäß einer Ausführungsform der vorliegenden Erfindung ist;
    • 5 ein Diagramm eines neuronalen Netzwerks auf hoher Ebene gemäß einer Ausführungsform der vorliegenden Erfindung ist; und
    • 6 ein Diagramm einer beispielhaften neuronalen Netzwerkarchitektur gemäß einer Ausführungsform der vorliegenden Erfindung ist.
  • DETAILLIERTE BESCHREIBUNG BEVORZUGTER AUSFÜHRUNGSFORMEN
  • Objekterkennung kann für eine Vielfalt von Zwecken verwendet werden, wie beispielsweise autonomes Fahren (z.B. Identifizierung von Personen und Fahrzeugen in einem Bild) und Computer-Vision-Aufgaben wie Verfolgung bzw. Tracking, Posen- bzw. Stellungsschätzung und Posen- bzw. Stellungserkennung. Datensätze, die unterschiedliche jeweilige Klassen von Bildobjekten identifizieren, können kombiniert werden, um Bilderkennungs-Klassifikatoren an allen der unterschiedlichen Klassen zu trainieren. Eine Herausforderung bei einem Kombinieren von Trainingsdatensätzen, bei welchen Objekte der relevanten Klasse innerhalb von jedem Bild identifiziert werden, besteht darin, dass diese ungleichartigen Datensätze jeweils Bilder enthalten können, die Objekte aus anderen Klassen zeigen. Somit kann, wenn ein Datensatz A verwendet wird, um Objekte A innerhalb von Bildern zu lokalisieren, und wenn ein Datensatz B verwendet wird, um Objekte B innerhalb von Bildern zu lokalisieren, ein naives Kombinieren der zwei Datensätze die Genauigkeit des resultierenden Klassifikators verringern, da einige Objekte B innerhalb von Bildern des Datensatzes A vorhanden sein können und einige Objekte A innerhalb von Bildern des Datensatzes B vorhanden sein können.
  • Eher als alle der Datensätze mit Objektbezeichnungen für jede der anderen Klassen manuell mit Anmerkungen zu versehen (z.B. eher als Objekte B innerhalb von Bildern aus dem Datensatz A manuell zu identifizieren), können jeweilige Einzelklassen-Klassifikatoren verwendet werden, um Objekte innerhalb der anderen Datensätze automatisch zu lokalisieren. Somit kann ein Klassifikator A, der an dem Datensatz A trainiert ist, um Objekte A zu erkennen, am Datensatz B ausgeführt werden, um Kommentierungen bzw. Anmerkungen innerhalb der Bilder des Datensatzes B bereitzustellen, die das Vorhandensein von Objekten A anzeigen. Diese automatisch kommentierten Datensätze können dann in Kombination verwendet werden, um einen kombinierten Klassifikator zu trainieren, der irgendeine der Objektklassen innerhalb eines Eingabebilds lokalisieren kann.
  • Nimmt man nun im Detail Bezug auf die Figuren, in welchen ähnliche Zahlensymbole bzw. Ziffern dieselben oder ähnliche Elemente darstellen, und zunächst auf 1, sind zwei Trainingsdatensätze gezeigt. Ein erster Datensatz, der mit A bezeichnet ist, ist mit Personen kommentiert, während der zweite Datensatz, der mit B bezeichnet ist, mit Automobilen kommentiert ist. Jeder Datensatz enthält mehrere Bilder 100, von welchen jedes null, ein oder mehrere Objekte der relevanten Klasse enthalten kann.
  • Zum Beispiel zeigt der Datensatz A das Vorhandensein einer Person mit einem Begrenzungsrahmen 102 an. Der Datensatz B zeigt das Vorhandensein eines Automobils mit einem Begrenzungsrahmen 104 an. Jedoch enthält jeder Datensatz Bilder 100, die Objekte aus der Klasse des anderen Datensatzes enthalten. Somit können zum Beispiel Bilder 100 aus dem Datensatz B Personen 106 enthalten, die nicht mit einem Begrenzungsrahmen kommentiert sind. Wenn die Bilder 100 aus dem Datensatz B in einem Trainingsdatensatz für einen Klassifikator enthalten sind, der Personen identifiziert, kann es im kombinierten Datensatz wenigstens einige Bilder 100 geben, die Personen als Teil des Hintergrunds des Bildes enthalten. Dies ergibt inkonsistente Trainingsdaten, bei welchen einige Objekte kommentiert sind und einige nicht.
  • Ein Ansatz zum Erzeugen eines Datensatzes, der einen Klassifikator angemessen trainiert, um mehrere Bildklassen zu erkennen, würde darin bestehen, anfängliche Trainingsdatensätze manuell zu kommentieren, das Objekterkennungssystem mit mehreren Klassen zu trainieren und das System unter Verwendung eines Satzes von Validierungsbildern zu bewerten. Dann könnten, wenn der Klassifikator darin fehlschlägt, eine angemessene Leistung für irgendeine Objektklasse bereitzustellen, zusätzliche Trainingsdaten erhalten werden, die spezifisch für diese Objektklasse sind. Jedoch würden in einem solchen Fall die zusätzlichen Trainingsdaten für alle der anderen Klassen, selbst für diejenigen mit angemessener Leistung im Klassifikator, neu kommentiert werden müssen, damit die neuen Trainingsdaten nicht die Wirksamkeit von diesen Klassifikationen untergraben.
  • Und wenn einmal ein Klassifikator bereits trainiert worden ist, stellt ein Hinzufügen einer neuen Klasse von Objekten eine ähnliche Herausforderung dar. In einem solchen Fall würde jedes Bild des ursprünglichen Trainingsdatensatzes neu kommentiert werden müssen, um die neue Klasse von Objekten zu identifizieren, zusätzlich zu einem Kommentieren des neuen Datensatzes mit jeder der ursprünglichen Klassen.
  • Um diese Herausforderungen zu bewältigen, kann ein Einzelklassen-Klassifikator, der an einem jeweiligen annotierten bzw. kommentierten Datensatz trainiert ist, verwendet werden, um zu dieser Klasse gehörende Objekte in anderen Trainingsdatensätzen zu identifizieren. Somit kann nach dem obigen Beispiel ein Klassifikator A, der am Datensatz A trainiert ist, um Personen zu identifizieren, am Datensatz B verwendet werden, um Personen innerhalb dieses Datensatzes zu identifizieren. Dies vermeidet Zeit- und Kostenaufwand, der dafür nötig ist, Datensätze manuell neu zu kommentieren.
  • Nimmt man nun Bezug auf 2, ist ein Objekterkennungsverfahren gezeigt, das vereinigte Datensätze für mehrere unterschiedliche Objektklassen verwendet. Ein Block 202 vereinigt den Bezeichnungsraum der mehreren Datensätze, wobei der Begriff „Bezeichnungsraum“ bzw. „Beschriftungsraum“ verwendet werden kann, um auf den Satz von Objektklassen Bezug zu nehmen, die innerhalb eines gegebenen Datensatzes kommentiert bzw. mit Anmerkungen versehen sind. Dies enthält ein Vereinheitlichen bzw. Vereinigen der durch die Datensätze definierten Objektklassen. Zum Beispiel können zwei Datensätze semantische Duplikate von einer oder mehreren Objektklassen enthalten, wobei beide Datensätze dieselbe Klasse von Objekten darstellen (z.B. Automobile). Diese semantischen Duplikate können zusammengeführt werden. Während die Bezeichnungsräume der unterschiedlichen Datensätze in den meisten Fällen unterschiedlich sein können, wird auch in Betracht gezogen, dass die mehreren Datensätze einen einzigen Bezeichnungsraum gemeinsam nutzen bzw. teilen können, in welchem Fall der Bezeichnungsraum im Block 202 nicht vereinigt werden muss.
  • Die Datensätze können das Vorhandensein eines Objekts in einem Bild mit einem geeigneten Begrenzungsrahmen oder einem anderen Rahmen anzeigen, der die Position des Objekts innerhalb des Bildes identifiziert. Jede Anmerkung bzw. Kommentierung kann zum Beispiel Koordinaten im Bildraum (identifizierende Ecken eines Begrenzungsrahmens) enthalten, die das Objekt eng umschließen, und eine Klassenbeschriftung bzw. -bezeichnung, die das Objekt innerhalb des Begrenzungsrahmens identifiziert. Begrenzungsrahmen können sich überlappen, wie zum Beispiel in Fällen, in welchen sich identifizierte Objekte im Bild überlappen.
  • Die Hintergrundkategorie der unterschiedlichen Datensätze kann auch zusammengeführt werden, obwohl die Definition für den Hintergrund von einem Datensatz zum nächsten unterschiedlich sein kann. Mehrdeutigkeiten bei dieser Zusammenführung können mit der Verwendung einer Verlustfunktion und einem pseudomäßigen Ground Truth aufgelöst werden.
  • Bei einer Darstellung können N Datensätze als D1, ...,DN mit entsprechenden Bezeichnungs- bzw. Beschriftungsräumen L1, ..., LN dargestellt werden, wobei jeder Bezeichnungsraum Li ein Satz von Kategorien ist, die im Datensatz Di mit Anmerkungen versehen bzw. kommentiert sind. Die Bezeichnungsräume müssen nicht gleich sein und gemeinsame Kategorien sind zwischen ihnen zugelassen. Zum Beispiel werden viele unterschiedliche Objekterkennungsdatensätze für häufig erscheinende Merkmale, wie beispielsweise Personen, mit Anmerkungen versehen bzw. kommentiert. Der Hintergrund bi für einen Datensatz Di kann für jeden Datensatz unterschiedlich sein, was den gesamten Bezeichnungs- bzw. Beschriftungsraum für einen Datensatz vollständig macht Li u bi. Ein Zusammenführen des datensatzspezifischen Hintergrunds für die unterschiedlichen Datensätze wird nachstehend detaillierter beschrieben.
  • Der Datensatz Di kann Mi Bilder Ii,j enthalten, wobei j = 1, ..., M. Die Annotationen bzw. -Kommentierungen für wahren Ground Truth für das ein Bild Ii,j können dargestellt werden als G i , j = { g i , j k = ( x 1 , y 1 , x 2 , y 2 , c ) k , k = 1, , | G i , j | } ,
    Figure DE112020005663T5_0001
    wobei jede Ground-Truth-Annotation g i , j k
    Figure DE112020005663T5_0002
    einem Objekt k im Bild entspricht Ii,j und Begrenzungsrahmenkoordinaten (x1,y1,x2,y2) im Bildraum und eine Kategorienbezeichnung bzw. -beschriftung c ∈ Li enthält. Irgendein Bereich des Bildes Ii,j, der nicht durch irgendeinem Begrenzungsrahmen in Gi,j abgedeckt ist, wird derart angesehen, dass er im Hintergrund bi ist. Ein Vereinheitlichen bzw. Vereinigen der Bezeichnungsräume erstellt einen neuen Bezeichnungsraum L = L1 ∪ ... ∪ LN, so dass ein Objektdetektor, der an L trainiert ist, Objekte aus allen Objektklassen erkennen wird.
  • Ein Block 204 trainiert datensatzspezifische Detektoren. Weil es keine Mehrdeutigkeit der Hintergrundkategorie für Detektoren gibt, die an einzelnen Datensätzen trainiert werden, können diese jeweiligen Detektoren verwendet werden, um Objekte innerhalb von Bildern aus den verschiedenen Datensätzen zu identifizieren und zu kommentieren, und zwar gemäß den Anmerkungen von Trainingsdatensätzen jedes Detektors. Eine unüberwachte Domänenanpassung kann verwendet werden, um die Leistung von datensatzspezifischen Detektoren zu verbessern, wenn sie auf die anderen Datensätze angewendet werden.
  • Irgendeine geeignete Detektorstruktur kann verwendet werden, aber die Verwendung eines neuronalen Netzwerks wird spezifisch in Betracht gezogen. Zum Beispiel kann ein System für Bereiche mit Merkmalen eines neuronalen Faltungsnetzwerks (R-CNN-System) mit Merkmalspyramidennetzwerken (FPN (= Feature Pyramid Networks)) als der Objektdetektor verwendet werden. Ein Eingabebild kann bereitgestellt werden und Faltungsmerkmale können mit einem „Backbone“-Netzwerk extrahiert werden. Ein Bereichsvorschlagsnetzwerk (RPN (= Region Proposal Network)) kann dann verwendet werden, um einen Satz bzw. eine Gruppe von Begrenzungsrahmen vorherzusagen, die potenzielle Objekte auf kategorienunabhängige Weise beschreiben. Ein Regions- bzw. Bereichsklassifizierungsnetzwerk kann dann jeden Vorschlag in den definierten Beschriftungsraum klassifizieren und kann die Lokalisierung bzw. Position verfeinern.
  • Ein Block 206 verwendet dann die datensatzspezifischen Detektoren, um die Datensätze für andere Objektklassen kreuzweise zu kommentieren bzw. annotieren, was einen pseudomäßigen Ground Truth für fehlende Anmerkungen bzw. Kommentierungen der verschiedenen Objektklassen bereitstellt. Dies hilft, um die Mehrdeutigkeit der Hintergrundkategorie in den Bildern aus verschiedenen Datensätzen gering zu halten. Die datensatzspezifischen Detektoren versuchen jeweils, jedes potenzielle Objekt in jedem der Bilder der anderen Datensätze zu klassifizieren, was pseudomäßigen Ground Truth bildet, der sich zum wahren Ground Truth von ursprünglichen Anmerkungen jedes Datensatzes hinzufügt.
  • Ein Block 208 verwendet dann die Vereinigung der kommentierten bzw. annotierten Datensätze, um einen Detektor mit dem vereinigten Beschriftungsraum zu trainieren. Die Objektdetektoren können zum Beispiel als tiefe neuronale Netzwerke implementiert sein, und zwar mit Parametern, die basierend auf den angewendeten Trainingsdaten eingestellt sind. Eine Verlustfunktion kann verwendet werden, um die Differenz zwischen Ground Truth und den Vorhersagen des aktuellen Erkennungsmodells für ein gegebenes Bild der Trainingsdaten zu messen. Die Parameter des Modells können in Bezug auf die Verlustfunktion differenzierbar sein. Eine Optimierung, wie beispielsweise ein stochastischer Gradientenabfall, kann verwendet werden, um die Parameter zu aktualisieren.
    Somit gibt für ein Bild Ii,j mit Anmerkungen Gi,j aus einem Beschriftungsraum Li ein an dem vereinigten Beschriftungsraum L trainierter Objektdetektor eine Gruppe bzw. einen Satz von Erkennungen d U l
    Figure DE112020005663T5_0003
    aus. Ein Block 208 kann die IOU(= Intersection-over-Union)-Ähnlichkeit skl zwischen g i , j k
    Figure DE112020005663T5_0004
    und d U l
    Figure DE112020005663T5_0005
    berechnen. Alle vorhergesagten Rahmen d U l
    Figure DE112020005663T5_0006
    mit skl > τ, für ein beliebiges Objekt k, werden mit der Ground-Truth-Bezeichnung bzw. -Beschriftung vom entsprechenden g i , j k
    Figure DE112020005663T5_0007
    verglichen. Irgendwelche mehrdeutigen Übereinstimmungen werden weiterhin verarbeitet, um zu bestimmen, ob sie als Teil des Hintergrunds bi betrachtet oder ignoriert werden sollten.
  • Ein Block 210 kann dann den trainierten Detektor verwenden, um irgendwelche oder alle Objektklassen innerhalb von neuen Eingabebildern zu identifizieren. Für ein gegebenes Bild kann der Block 210 einen Satz von Begrenzungsrahmen zurückgeben, von welchen jeder ein jeweiliges erkanntes Objekt darstellt. Jede neue Erkennung kann einen Satz von Koordinaten enthalten, um den Begrenzungsrahmen, eine entsprechende Beschriftung für das erkannte Objekt und eine Bewertung zu bestimmen. Die Punktzahl bzw. Bewertung, zum Beispiel eine Zahl zwischen 0 und 1, zeigt ein Ausmaß an Vertrauen für die Beschriftung des erkannten Objekts an.
  • Das Trainieren im Block 210 kann eine Verlustfunktion verwenden, die teilweise kommentierte bzw. annotierte Daten nimmt, wie zum Beispiel durch Nutzen der im Block 206 erzeugten Pseudo-Beschriftungen, um pseudomäßigen Ground Truth zu erzeugen. Der pseudomäßige Ground Truth kann daher eine rauschbehaftete Schätzung vom wahren Ground Truth sein, der durch manuelle Anmerkungen eines Menschen erzeugt werden würde.
  • Die Verlustfunktion kann eine Übereinstimmungs- bzw. Anpassungsstrategie enthalten, die vorhergesagte Rahmen Ground-Truth-Rahmen zuordnet, und eine Funktion zum Messen der Diskrepanz zwischen ihnen. Angesichts eines Bildes aus einem Trainingsdatensatz sagt das Erkennungsmodell zuerst die Objektpositionen im Bild voraus, die mit einem gegebenen Ground Truth in Übereinstimmung gebracht sind (z.B. der wahre Ground Truth, der in den ursprünglichen Datensätzen bereitgestellt ist). Diese in Übereinstimmung gebrachten Vorhersagen können in eine Verlustfunktion zur Klassifizierung (z.B. Kreuzentropie) und Lokalisierung (z.B. den I1- oder I2-Abstand) eingefügt werden. Alle nicht in Übereinstimmung gebrachten Erkennungen können weiterhin mit dem durch den Block 206 erzeugten pseudomäßigen Ground Truth verglichen werden.
  • Für mehrdeutige Objekterkennungen D kann eine Einschränkung darin bestehen, dass es sein kann, dass die wahre Bezeichnung bzw. Beschriftung der mehrdeutigen Erkennungen in einem gegebenen Bild Ii,j nicht zu irgendeiner Beschriftung in Li gehört, da diese Kategorien bereits mit Anmerkungen versehen bzw. kommentiert wurden. Die Wahrscheinlichkeitsverteilung für einen vorhergesagten Begrenzungsrahmen über den vereinigten Beschriftungsraum L und einen Hintergrund kann ausgedrückt werden als p = [p1,p2, ...] ∈ ℝ|LUl+1, mit c = 1 | L U | + 1 p c = 1.
    Figure DE112020005663T5_0008
  • Wenn der vorhergesagte Begrenzungsrahmen irgendeinem der Ground-Truth-Rahmen in Gi,j mit einer Beschriftung a ∈ Li zugeordnet ist, dann trägt er zu einem Entropieverlustausdruck bei: L + ( p , a ) = C E ( 1 a , p ) = c 1 c a log ( p c )
    Figure DE112020005663T5_0009
    wobei 1a ∈ ℝ|LU|+1 eine 1-aus-n-Vektor-Codierung einer Beschriftung bzw. Bezeichnung a ist. Zum Beispiel: 1 i a = 1,
    Figure DE112020005663T5_0010
    wenn i = a, und sonst gleich Null.
  • Wenn der vorhergesagte Rahmen zu D gehört, dann kann die zugrundeliegende Ground-Truth-Kategorie zu irgendeiner von L * = ( L U \ L i ) b U
    Figure DE112020005663T5_0011
    gehören, wobei bU der vereinigte Hintergrund aus den unterschiedlichen Datensätzen ist. Daher kann die folgende Verlustfunktion verwendet werden: L s u m ( L * , p ) = log ( c L * p c )
    Figure DE112020005663T5_0012
    die einem Kreuzentropieverlust an der Summe der mehrdeutigen Kategorien ähnelt und die als Zusammenführung aller Mehrdeutigkeiten in eine Kategorie interpretiert werden kann. Um eine Selektivität zu fördern und um die Ausbreitung von Wahrscheinlichkeitsmasse über viele Kategorien zu verhindern, kann eine Minimalentropie-Regularisierung hinzugefügt werden: L s u m + m e ( L * , p ) = L a ( L * , p ) λ c L * p c log ( p c )
    Figure DE112020005663T5_0013
    wobei λ ein Hyperparameter ist. Eine weitere Verlustfunktion kann ausgedrückt werden als: L m a x ( L * , p ) = log ( max c L * p c )
    Figure DE112020005663T5_0014
    die die Summe von L s u m
    Figure DE112020005663T5_0015
    durch ein Maximum über den mehrdeutigen Kategorien ersetzen kann, um dadurch zu fördern, dass eine einzelne Kategorie direkt ausgewählt herausgepickt wird, ohne dass ein Entropieausdruck nötig ist.
  • Jedoch löst keine von diesen Verlustfunktionen die Mehrdeutigkeiten im Beschriftungsraum auf. Obwohl sie die Tatsache codieren, dass eine mehrdeutige Kategorie in L *
    Figure DE112020005663T5_0016
    korrekt sein kann, verwenden sie keine Priorisierung an den Kategorien. Eine Pseudo-Beschriftung kann somit verwendet werden, um die datensatzspezifischen Detektoren zu nutzen, um eine solche Priorisierung durch Schätzen fehlender Anmerkungen bereitzustellen.
  • Wie es oben angemerkt ist, werden die datensatzspezifischen Detektoren im Block 204 unter Verwendung einzelner jeweiliger Datensätze trainiert. N solche Detektoren können verwendet werden, und zwar einer für einen jeweiligen Datensatz. Jeder datensatzspezifische Detektor kann auf eine andere Weise trainiert werden, die für den in Frage stehenden Trainingsdatensatz geeignet ist. Die datensatzspezifischen Detektoren können unabhängig voneinander trainiert werden, wobei jeder einen separaten Merkmalsextraktions-Backbone hat. Die datensatzspezifischen Detektoren können unter Verwendung eines gemeinsam genutzten bzw. geteilten Backbones trainiert werden, gefolgt durch N separate Detektorköpfe.
  • Da die datensatzspezifischen Detektoren an einem ersten Datensatz Dj trainiert werden, aber an einem anderen Datensatz Di angewendet werden, um Anmerkungen bzw. Kommentierung zu erweitern, kann die Domänenlücke zwischen den Datensätzen berücksichtigt werden. Gemeinsames Trainieren kann bessere Ergebnisse ergeben, da ein Teil des Netzwerks domänenübergreifend gemeinsam genutzt bzw. geteilt werden kann. Eine weitere Option zum Trainieren der datensatzspezifischen Detektoren besteht darin, eine Domänenanpassung zu nutzen, die es möglich macht, einen Detektor, der an einem Datensatz trainiert ist, an alle anderen Datensätze bezüglich einer Domäne anzupassen.
  • Beim Trainieren des vereinigten Detektors im Block 208 können Mini-Batches bzw. Mini-Stapel von Daten aus einzelnen Datensätzen verwendet werden, um eine effiziente Gradientenberechnung bereitzustellen. Für ein Bild Ii,j, das ursprünglich aus einem Datensatz Di stammt, mit einem Beschriftungsraum Li, ist der Ground Truth für Kategorien in Li verfügbar, aber für diejenigen in L *
    Figure DE112020005663T5_0017
    nicht. Um dies zu beheben, können alle der datensatzspezifischen Detektoren über alle der Datensätze ausgeführt werden, um einen Satz von Begrenzungsrahmen G ^ * , j
    Figure DE112020005663T5_0018
    des Beschriftungsraums L *
    Figure DE112020005663T5_0019
    für ein Bild j zu bestimmen. Diese Begrenzungsrahmen sind der pseudomäßige Ground Truth. Jeder Pseudo-Ground-Truth-Rahmen g ^ * , j k
    Figure DE112020005663T5_0020
    ist eine mit ihm assoziierte Erkennungsbewertung S d e t ( g ^ * , j k ) .
    Figure DE112020005663T5_0021
  • Eine Verlustfunktion für den vereinigten Objektdetektor kann der Pseudo-Ground-Truth als erstes nutzen, um die Mehrdeutigkeit des Beschriftungsraums aufzulösen. Der Pseudo-Ground-Truth enthält Rauschen aufgrund der Domänenlücke zwischen Datensätzen und Fehlern, die in der Ausgabe der datensatzspezifischen Detektoren vorhanden sein können. Somit kann angesichts eines Satzes von nicht übereinstimmenden Erkennungen D und allen Pseudo-Ground-Truth-Rahmen G ^ * , j
    Figure DE112020005663T5_0022
    die IOU-Ähnlichkeit sk,l zwischen d lD und g ^ * , j k G ^ * , j
    Figure DE112020005663T5_0023
    für alle l und k berechnet werden. Alle Pseudo-Ground-Truth-Rahmen mit ausreichend hohen IOU-Ähnlichkeiten (z.B. sl,k > τ) werden beibehalten. Ein Beibehalten mehrerer Übereinstimmungen mit Pseudo-Ground-Truth wirkt der Unsicherheit des Pseudo-Beschriftens entgegen und mittelt potenzielles Rauschen heraus.
  • Es soll angenommen werden, dass für jeden Rahmen d l, der nicht mit Gi,j in Übereinstimmung gebracht ist, ein Satz von in Übereinstimmung gebrachten Pseudo-Ground-Truth-Rahmen als G ^ * , j m = { g ^ * , j k | s l , k > τ S d e t ( g ^ * , j k ) > κ b g }
    Figure DE112020005663T5_0024
    bestimmt werden kann, wobei Sdet(·) die Erkennungsbewertung ist und wobei Kbg eine Schwelle ist, die eine minimale Bewertung für eine Erkennung als Pseudo-Ground-Truth-Klasse definiert, wobei alles unter der Schwelle als Hintergrund anzusehen ist. Wenn G ^ * , j m
    Figure DE112020005663T5_0025
    leer ist, kann die Ground-Truth-Beschriftung für d l auf „Hintergrund“ eingestellt werden und kann ein Kreuzentropieverlust verwendet werden. Andernfalls kann die folgende Verlustfunktion an der vorhergesagten Klassenverteilung pl von d l verwendet werden: L P ( p l , G ^ * , j m ) = 1 Z k Γ ( S   d e t ( g ^ * , j k ) ) C E ( p l , c ( g ^ * , j k ) )
    Figure DE112020005663T5_0026
    wobei Γ(·) eine Wichtigkeitsfunktion für Ground Truth ist. Der Verlust ist die Summe über die in Übereinstimmung gebrachten Pseudo-Ground-Truth-Rahmen, gewichtet über der Wichtigkeit, normalisiert durch Z = max ( k Γ ( S   d e t ( g ^ * , j k ) ) , )
    Figure DE112020005663T5_0027
    wobei ∈ eine kleine Konstante ist, die eine Division durch Null in dem Fall verhindert, dass alle g ^ * , j k
    Figure DE112020005663T5_0028
    mit 0 gewichtet sind. Die Gewichtungsfunktion kann auf irgendeine geeignete Weise definiert sein. Zum Beispiel ist Γ(x) = x, eine Gewichtung nach der Punktzahl bzw. Bewertung selbst, ein einfacher Ansatz. Eine andere Möglichkeit bildet eine harte Schwelle, wobei Bewertungen über einer Schwelle eine Gewichtung von 1 haben und Bewertungen unter der Schwelle eine Gewichtung von 0 haben.
  • Für Rahmen, die mit Pseudo-Ground-Truth in Übereinstimmung gebracht sind, mit einer Konfidenz über einer ersten Schwelle (z.B. etwa 0,6), kann eine weitere Klassifizierung durchgeführt werden. Wenn die Vorhersage mit einer Pseudo-Grundregel in Übereinstimmung gebracht wird, die unter der ersten Schwelle, aber über einer zweiten Schwelle (z.B. etwa 0,1) liegt, kann die Vorhersage bei der Verlustberechnung vollständig ignoriert werden. Wenn die Vorhersage mit einem Konfidenzwert unter der zweiten Schwelle (z.B. unter etwa 0,1) in Übereinstimmung gebracht ist oder nicht mit einem Ground Truth in Übereinstimmung gebracht ist, kann die Vorhersage als Hintergrund für eine Klassifizierung behandelt werden. Somit können mehrdeutige Ergebnisse ignoriert werden. Die besonderen Werte der ersten Schwelle und der zweiten Schwelle können auf irgendeinen geeigneten Wert festgelegt werden, der die beste Leistung ergibt.
  • Nimmt man nun Bezug auf 3, sind beispielhafte neuronale Netzwerkstrukturen für den datensatzspezifischen Objektdetektor gezeigt. Bei einer ersten Struktur 310 wird jeder datensatzspezifische Detektor mit einem separaten Backbone 302 trainiert, der zum Beispiel mit einem R-CNN-Netzwerk implementiert sein kann. Der Detektor 304 kann als RPN implementiert sein, um die Begrenzungsrahmen von Objekten vorherzusagen. Ein Klassifikator 306 bestimmt dann eine oder mehrere Beschriftungen bzw. Bezeichnungen für jeden der vorhergesagten Begrenzungsrahmen. Jeder datensatzspezifische Detektor enthält dann einen separaten Backbone 302, einen Detektor 304 und einen Klassifikator 306, von welchen jeder ein Eingabebild 300 separat verarbeitet.
  • Bei einer zweiten Struktur 320 teilen sich die datensatzspezifischen Detektoren alle einen einzigen Backbone 302. Dieser geteilte bzw. gemeinsam genutzte Backbone 302 verarbeitet das Eingabebild 300, bevor separate Detektoren 304 und Klassifikatoren 306 an ihm arbeiten. Der Backbone 302 kann als Merkmalsextraktor zur Objekterkennung interpretiert werden. Er kann rohe Bildinformation als Eingabe nehmen und kann Zwischenmerkmale erzeugen. Diese Merkmale können durch die erkennungsspezifischen Teile des neuronalen Netzwerks als Eingabe genommen werden.
  • Wenn das neuronale Netzwerk optimiert wird, fließt Information durch die erkennungsspezifischen Teile zurück zu dem (den) Merkmalsextraktor(en). Wenn der Backbone 302 auf geteilte Weise trainiert wird (z.B. bei der Struktur 320), empfängt dieser Teil des neuronalen Netzwerks somit rückpropagierte Information aus allen Datensätzen. Im Gegensatz dazu bekommen die erkennungsspezifischen Teile Aktualisierungen bzw. Updates nur aus ihren jeweiligen Datensätzen. Dies ist unterschiedlich vom Trainieren eines vereinigten Detektors, bei welchem alle Teile des vereinigten Detektors Information aus allen Datensätzen empfangen.
  • Die hierin beschriebenen Ausführungsformen können vollständig Hardware, vollständig Software oder sowohl Hardware- als auch Softwareelemente sein. Bei einer bevorzugten Ausführungsform ist die vorliegende Erfindung in Software implementiert, die Firmware, residente Software, einen Microcode etc. enthält, ist aber nicht darauf beschränkt.
  • Ausführungsformen können ein Computerprogrammprodukt enthalten, auf das von einem computerverwendbaren oder computerlesbaren Medium aus zugegriffen werden kann, das einen Programmcode zur Verwendung durch einen oder in Verbindung mit einem Computer, oder irgendein oder irgendeinem Anweisungsausführungssystem, bereitstellt. Ein computerverwendbares oder computerlesbares Medium kann irgendeine Vorrichtung enthalten, die das Programm zur Verwendung durch das Befehlsausführungssystem, die Vorrichtung oder das Gerät, oder in Verbindung damit, speichert, kommuniziert, aus- bzw. verbreitet oder transportiert. Das Medium kann ein magnetisches, optisches, elektronisches, elektromagnetisches, infrarotes oder Halbleitersystem (oder eine Vorrichtung oder ein Gerät) oder ein Ausbreitungsmedium sein. Das Medium kann ein computerlesbares Speichermedium enthalten, wie beispielsweise einen Halbleiter- oder Festkörperspeicher, ein Magnetband, eine Wechsel-Computerdiskette, einen Direktzugriffsspeicher (RAM), einen Nurlesespeicher (ROM), eine feste bzw. starre Magnetplatte und eine optische Scheibe etc.
  • Jedes Computerprogramm kann konkret bzw. materiell in einem maschinenlesbaren Speichermedium oder einer -vorrichtung (z.B. Programmspeicher oder Magnetplatte) gespeichert sein, das oder die durch einem allgemeinen oder speziellen programmierbaren Computer lesbar ist, zum Konfigurieren und Steuern eines Betriebs eines Computers, wenn das Speichermedium bzw. die Speichermedien oder die Vorrichtung durch den Computer gelesen wird bzw. werden, um die hierin beschriebenen Prozeduren durchzuführen. Das erfinderische System kann auch als in einem computerlesbaren Speichermedium verkörpert angesehen werden, das mit einem Computerprogramm konfiguriert ist, wobei das Speichermedium so konfiguriert ist, dass es veranlasst, dass ein Computer auf eine spezifische und vordefinierte Weise arbeitet, um die hierin beschriebenen Funktionen durchzuführen.
  • Ein Datenverarbeitungssystem, das zum Speichern und/oder Ausführen eines Programmcodes geeignet ist, kann wenigstens einen Prozessor enthalten, der direkt oder indirekt über einen Systembus mit Speicherelementen gekoppelt ist. Die Speicherelemente können einen lokalen Speicher enthalten, der während einer tatsächlichen Ausführung des Programmcodes verwendet wird, einen Massenspeicher und Cachespeicher, die eine temporäre Speicherung von wenigstens etwas von einem Programmcode zur Verfügung zu stellen, um die Anzahl von Malen zu reduzieren, für welche der Code während einer Ausführung aus einem Massenspeicher abgerufen wird. Eingabe-/Ausgabe- oder I/O-Vorrichtungen (einschließlich, aber nicht darauf beschränkt, von Tastaturen, Anzeigen, Zeigevorrichtungen etc.) können entweder direkt oder über dazwischenliegende I/O-Steuerungen mit dem System gekoppelt sein.
  • Netzwerkadapter können auch mit dem System gekoppelt sein, um zu ermöglichen, dass das Datenverarbeitungssystem über dazwischenliegende private oder öffentliche Netzwerke mit anderen Datenverarbeitungssystemen oder entfernten bzw. Remote-Druckern oder Speichervorrichtungen gekoppelt werden. Modems, ein Kabelmodem und Ethernet-Karten sind nur einige wenige der derzeit verfügbaren Typen von Netzwerkadaptern.
  • Wie er hierin verwendet wird, kann sich der Begriff „Hardwareprozessor-Untersystem“ oder „Hardwareprozessor“ auf einen Prozessor, einen Speicher (einschließlich RAM, Cache(s) und so weiter), Software (einschließlich Speichermanagementsoftware) oder Kombinationen davon beziehen, die zusammenarbeiten, um eine oder mehrere spezifische Aufgaben durchzuführen. Bei nützlichen Ausführungsformen kann das Hardwareprozessor-Untersystem ein oder mehrere Datenverarbeitungselemente (z.B. Logikschaltungen, Verarbeitungsschaltungen, Anweisungsausführungsvorrichtungen etc.) enthalten. Das eine oder die mehreren Datenverarbeitungselemente kann oder können in einer zentralen Verarbeitungseinheit, einer Grafikverarbeitungseinheit und/oder einer separaten prozessor- oder computerelementbasierten Steuerung (z.B. Logikgatter etc.) enthalten sein. Das Hardwareprozessor-Untersystem kann einen oder mehrere integrierte Speicher bzw. Onboard-Speicher (z.B. Caches, bestimmte bzw. dedizierte Speicherarrays, einen Nurlesespeicher etc.) enthalten. Bei einigen Ausführungsformen kann das Hardwareprozessor-Untersystem einen oder mehrere Speicher enthalten, die onboard oder offboard sein können oder die zur Verwendung durch das Hardwareprozessor-Untersystem bestimmt bzw. dediziert sein können (z.B. ROM, RAM, BIOS (Basic Input/Output System (= Grundlegendes Eingabe-/Ausgabe-System)) etc.).
  • Bei einigen Ausführungsformen kann das Hardwareprozessor-Untersystem ein oder mehrere Softwareelemente umfassen und ausführen. Das eine oder die mehreren Softwareelemente kann oder können ein Betriebssystem und/oder eine oder mehrere Anwendungen und/oder einen spezifischen Code enthalten, um ein spezifiziertes bzw. bestimmtes Ergebnis zu erzielen.
  • Bei anderen Ausführungsformen kann das Hardwareprozessor-Untersystem eine dedizierte, spezialisierte Schaltung enthalten, die eine oder mehrere elektronische Verarbeitungsfunktionen durchführt, um ein bestimmtes Ergebnis zu erzielen. Eine solche Schaltung kann eine oder mehrere anwendungsspezifische integrierte Schaltungen (ASICs), FPGAs und/oder PLAs enthalten.
  • Diese und andere Variationen eines Hardwareprozessor-Untersystems werden gemäß Ausführungsformen der vorliegenden Erfindung auch in Betracht gezogen.
  • Eine Bezugnahme in der Spezifikation auf „eine einzelne Ausführungsform“ oder „eine Ausführungsform“ der vorliegenden Erfindung sowie andere Variationen davon bedeutet, dass ein bestimmtes Merkmal, eine bestimmte Struktur, eine bestimmte Charakteristik und so weiter, das oder die in Verbindung mit der Ausführungsform beschrieben wird, bei wenigstens einer Ausführungsform der vorliegenden Erfindung enthalten ist. Somit beziehen sich die Erscheinungen der Formulierung „bei einer einzelnen Ausführungsform“ oder „bei einer Ausführungsform“ sowie irgendwelche anderen Variationen, die an verschiedenen Stellen in der gesamten Spezifikation erscheinen, nicht notwendigerweise alle auf dieselbe Ausführungsform. Es ist jedoch einzusehen, dass Merkmale von einer oder von mehreren Ausführungsformen bei den hierin zur Verfügung gestellten gegebenen Lehren der vorliegenden Erfindung kombiniert werden können.
  • Es ist einzusehen, dass die Verwendung von irgendetwas von dem folgendem „/“, „und/oder“ und „wenigstens eines von“, wie zum Beispiel in den Fällen von „A/B“, „A und/oder B“ und „wenigstens eines von A und B“, nur die Auswahl der ersten aufgelisteten Option (A) oder die Auswahl der zweiten aufgelisteten Option (B) oder die Auswahl von beiden Optionen (A und B) umfassen soll. Als ein weiteres Beispiel soll eine solche Formulierung in den Fällen „A, B und/oder C“ und „wenigstens eines von A, B und C“ nur die Auswahl der ersten aufgelisteten Option (A) oder nur die Auswahl der zweiten aufgelisteten Option (B) oder nur die Auswahl der dritten aufgelisteten Option (C) oder nur die Auswahl der ersten und zweiten aufgelisteten Optionen (A und B) oder nur die Auswahl der ersten und dritten aufgelisteten Optionen (A und C) oder nur die Auswahl der zweiten und dritten aufgelisteten Optionen (B und C) oder die Auswahl aller drei Optionen (A und B und C) umfassen. Dies kann für so viele Elemente ausgeweitet werden, wie sie aufgelistet sind.
  • Nimmt man nun Bezug auf 4, ist ein Objekterkennungssystem mit mehreren Datensätzen 400 gezeigt. Das System 400 enthält einen Hardwareprozessor 402 und einen Speicher 404. Eine Bildeingabe 405 kann eine Quelle von Bilddaten darstellen, wie beispielsweise eine Kamera oder eine Benutzereingabe, die ein oder mehrere Objekte von Interesse enthalten können. Zum Beispiel kann die Bildeingabe 405 einen Strom bzw. Stream von einer Überwachungsvideokamera darstellen, wo die Erkennung von Personen in den Bildern des Videostreams nötig sein kann, um einen gefährlichen oder unsicheren Zustand zu identifizieren.
  • Ein Modelltrainer 410 trainiert einen vereinigten Objektdetektor 408, um mehrere Klassen von Objekten innerhalb der Bildeingabe 405 zu erkennen. Diese mehreren Klassen von Objekten sind in mehreren ursprünglichen Trainingsdatensätzen 407 mit Anmerkungen versehen bzw. kommentiert und jeder der Trainingsdatensätze 407 kann eine oder mehrere Objektklassenanmerkungen enthalten, die im Rest der Trainingsdatensätze 407 nicht bereitgestellt sind. Somit trainiert der Modelltrainer 410 den vereinigten Objektdetektor 408, um alle der Objekte innerhalb der Trainingsdatensätze 407 zu erkennen.
  • Der Modelltrainer 410 trainiert mehrere datensatzspezifische Objektdetektoren 406, wie er zum Beispiel einen separaten datensatzspezifischen Objektdetektor 406 für jeden jeweiligen Datensatz der Trainingsdatensätze 407 trainiert. Der Modelltrainer 410 verwendet diese datensatzspezifischen Objektdetektoren 406, um die Trainingsdatensätze 407 kreuzweise zu kommentieren, was „Pseudo-Ground-Truth“ für alle der Objektklassen identifiziert, und zwar über alle der Bilder in den mehreren Trainingsdatensätzen 407 hinweg. Diese Pseudo-Ground-Truths, dargestellt durch die kreuzweisen Anmerkungen, werden in Kombination mit den wahren Ground Truths, dargestellt durch die ursprünglichen Anmerkungen, verwendet, um den vereinigten Objektdetektor 408 zu trainieren.
  • Die datensatzspezifischen Objektdetektoren 406 und der vereinigte Objektdetektor 408 können alle als künstliche neuronale Netzwerke (ANNs (= artificial neural networks)) implementiert sein, wie zum Beispiel unter Verwendung eines gemeinsam genutzten bzw. geteilten „Backbones“ oder von separaten Backbones, wie es oben beschrieben ist. Ein ANN ist ein Informationsverarbeitungssystem, das durch biologische Nervensysteme, wie beispielsweise das Gehirn, inspiriert ist. Das Schlüsselelement von ANNs ist die Struktur des Informationsverarbeitungssystems, das eine große Anzahl von stark miteinander verbundenen Verarbeitungselementen (die „Neuronen“ genannt werden) enthält, die parallel arbeiten, um spezifische Probleme zu lösen. ANNs werden weiterhin im Einsatz trainiert, Und zwar mit einem Lernen, das Einstellungen an Gewichtungen enthält, die zwischen den Neuronen existieren. Ein ANN ist durch einen solchen Lernprozess für eine spezifische Anwendung, wie beispielsweise Mustererkennung oder Datenklassifizierung, konfiguriert.
  • Nimmt man nun Bezug auf 5, ist ein verallgemeinertes Diagramm eines neuronalen Netzwerks gezeigt. ANNs zeigen eine Fähigkeit, aus komplizierten oder ungenauen Daten eine Bedeutung abzuleiten, und können verwendet werden, um Muster zu extrahieren und Trends zu erkennen, die zu komplex sind, um von Menschen oder anderen computerbasierten Systemen erkannt zu werden. Es ist allgemein bekannt, dass die Struktur eines neuronalen Netzwerks Eingabeneuronen 502 hat, die Information zu einem oder mehreren „versteckten“ Neuronen 504 liefern. Verbindungen 508 zwischen den Eingabeneuronen 502 und versteckten Neuronen 504 werden gewichtet und diese gewichteten Eingaben werden dann durch die versteckten Neuronen 504 gemäß einer Funktion in den versteckten Neuronen 504 verarbeitet, und zwar mit gewichteten Verbindungen 508 zwischen den Schichten. Es kann irgendeine Anzahl von Schichten von versteckten Neuronen 504 sowie Neuronen, die unterschiedliche Funktionen durchführen, geben. Es existieren auch unterschiedliche neuronale Netzwerkstrukturen, wie beispielsweise ein neuronales Faltungsnetzwerk, ein Maxout-Netzwerk etc. Schließlich akzeptiert und verarbeitet ein Satz von Ausgabeneuronen 506 eine gewichtete Eingabe von dem letzten Satz versteckter Neuronen 504.
  • Dies stellt eine „Feed-Forward“-Berechnung dar, bei welcher sich Information von Eingabeneuronen 502 zu den Ausgabeneuronen 506 ausbreitet. Auf eine Beendigung einer Feed-Forward-Berechnung hin wird die Ausgabe mit einer erwünschten Ausgabe verglichen, die aus Trainingsdaten verfügbar ist. Der Fehler in Bezug auf die Trainingsdaten wird dann bei der „Feed-Back“-Berechnung verarbeitet, wobei die versteckten Neuronen 504 und Eingabeneuronen 502 Information bezüglich des Fehlers empfangen, der sich von den Ausgabeneuronen 506 rückwärts ausbreitet. Wenn die Rückwärtsfehlerausbreitung einmal beendet worden ist, werden Gewichtungsaktualisierungen durchgeführt, wobei die gewichteten Verbindungen 508 aktualisiert werden, um den empfangenen Fehler zu berücksichtigen. Dies stellt nur eine Variante von ANN dar.
  • Nimmt man nun Bezug auf 6, ist eine ANN-Architektur 600 gezeigt. Es sollte verstanden werden, dass die vorliegende Architektur rein beispielhaft ist und dass stattdessen andere Architekturen oder Typen von neuronalen Netzwerken verwendet werden können. Die hierin beschriebene ANN-Ausführungsform ist mit der Absicht enthalten, allgemeine Prinzipien einer Berechnung mit neuronalem Netzwerk auf einer hohen Ebene einer Allgemeingültigkeit darzustellen, und sollte in keiner Weise als beschränkend ausgelegt werden.
  • Weiterhin werden die unten beschriebenen Schichten von Neuronen und die Gewichte bzw. Gewichtungen, die sie verbinden, auf eine allgemeine Weise beschrieben und können durch irgendeinen Typ von Schichten eines neuronalen Netzwerks mit irgendeinem geeigneten Grad oder Typ von Interkonnektivität ersetzt werden. Zum Beispiel können Schichten Faltungsschichten, Poolingschichten, vollständig verbundene Schichten, Softmax-Schichten oder irgendeinen anderen geeigneten Typ von Schichten eines neuronalen Netzwerks enthalten. Weiterhin können Schichten hinzugefügt oder entfernt werden, wie es nötig ist, und können die Gewichtungen für kompliziertere Verbindungsformen weggelassen werden.
  • Während eines Feed-Forward-Betriebs liefert ein Satz von Eingabeneuronen 602 jeweils ein Eingangssignal parallel zu einer jeweiligen Zeile bzw. Reihe von Gewichten 604. Die Gewichte 604 haben jeweils einen jeweiligen einstellbaren Wert, so dass eine Gewichtsausgabe vom Gewicht 604 zu einem jeweiligen versteckten Neuron 606 übergeht, um die gewichtete Eingabe dem versteckten Neuron 606 darzustellen. Bei softwaremäßigen Ausführungsformen können die Gewichte 604 einfach als Koeffizientenwerte dargestellt werden, die mit den relevanten Signalen multipliziert werden. Die Signale von jedem Gewicht fügen sich spaltenweise hinzu und fließen zu einem versteckten Neuron 606.
  • Die versteckten Neuronen 606 verwenden die Signale aus dem Feld von Gewichten 604, um eine Berechnung durchzuführen. Die versteckten Neuronen 606 geben dann ein Signal von ihnen selbst zu einem anderen Feld von Gewichten 604 aus. Dieses Feld führt auf dieselbe Weise durch, wobei eine Spalte von Gewichten 604 ein Signal von ihrem jeweiligen versteckten Neuron 606 empfängt, um eine gewichtete Signalausgabe zu erzeugen, die sich zeilenweise hinzufügt und zum Ausgabeneuron 608 geliefert wird.
  • Es sollte verstanden werden, dass irgendeine Anzahl von diesen Stufen implementiert werden kann, indem zusätzliche Schichten von Feldern bzw. Arrays und versteckten Neuronen 606 zwischengeschaltet werden. Es sollte auch beachtet werden, dass einige Neuronen konstante Neuronen 609 sein können, die eine konstante Ausgabe zum Feld bzw. Array liefern. Die konstanten Neuronen 609 können unter den Eingabeneuronen 602 und/oder versteckten Neuronen 606 vorhanden sein und werden nur während eines Feed-Forward-Betriebs verwendet.
  • Während einer Rückpropagation bzw. Rückausbreitung liefern die Ausgabeneuronen 608 ein Signal über das Feld bzw. Array von Gewichten 604. Die Ausgabeschicht vergleicht die erzeugte Netzwerkantwort mit Trainingsdaten und berechnet einen Fehler. Das Fehlersignal kann proportional zum Fehlerwert gemacht werden. Bei diesem Beispiel empfängt eine Zeile bzw. Reihe von Gewichtungen 604 ein Signal von einem jeweiligen Ausgabeneuron 608 parallel und erzeugt eine Ausgabe, die sich spaltenweise hinzufügt bzw. addiert, um eine Eingabe zu versteckten Neuronen 606 zu liefern. Die versteckten Neuronen 606 kombinieren das gewichtete Rückkoppel- bzw. Feedback-Signal mit einer Ableitung seiner Feed-Forward-Berechnung und speichern einen Fehlerwert vor einem Ausgeben eines Feedback-Signals zu ihren jeweiligen Spalten von Gewichtungen 604. Diese Rückpropagation wandert durch das gesamte Netzwerk 600, bis alle versteckten Neuronen 606 und die Eingabeneuronen 602 einen Fehlerwert gespeichert haben.
  • Während Gewichtsaktualisierungen werden die gespeicherten Fehlerwerte verwendet, um die einstellbaren Werte der Gewichtungen 604 zu aktualisieren. Auf diese Weise können die Gewichtungen 604 trainiert werden, um das neuronale Netzwerk 600 an Fehler bei seiner Verarbeitung anzupassen. Es sollte beachtet werden, dass sich die drei Betriebsarten Feed-Forward, Rückpropagation und Gewichtsaktualisierung einander nicht überlappen.
  • Das Vorstehende ist in jeder Hinsicht als illustrativ und beispielhaft, aber nicht als einschränkend, zu verstehen, und der Schutzumfang der hierin offenbarten Erfindung ist nicht aus der detaillierten Beschreibung zu bestimmen, sondern aus den Ansprüchen, wie sie gemäß der vollständigen Breite interpretiert werden, die durch die Patentgesetze zulässig ist. Es ist zu verstehen, dass die hierin gezeigten und beschriebenen Ausführungsformen nur illustrativ für die vorliegende Erfindung sind und dass Fachleute auf dem Gebiet verschiedene Modifikationen implementieren können, ohne vom Schutzumfang und Sinngehalt der Erfindung abzuweichen. Fachleute auf dem Gebiet könnten verschiedene andere Merkmalskombinationen implementieren, ohne vom Schutzumfang und Sinngehalt der Erfindung abzuweichen. Nachdem somit Aspekte der Erfindung mit den von den Patentgesetzen geforderten Details und Besonderheiten beschrieben sind, wird das, was beansprucht und durch das Patent geschützt erwünscht wird, in den beigefügten Ansprüchen dargelegt.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • US 62/935103 [0001]
    • US 17/094261 [0001]

Claims (20)

  1. Verfahren zur Objekterkennung, umfassend: Trainieren (204) einer Vielzahl von datensatzspezifischen Objektdetektoren unter Verwendung jeweiliger kommentierter bzw. annotierter Datensätze, wobei jeder der annotierten Datensätze Anmerkungen bzw. Kommentierungen für einen jeweiligen Satz von einer oder mehreren Objektklassen enthält; kreuzweises Kommentieren bzw. Annotieren (206) der annotierten Datensätze unter Verwendung der datensatzspezifischen Objektdetektoren; Trainieren (208) eines vereinigten Objektdetektors unter Verwendung der kreuzweise annotierten Datensätze, um alle der Objektklassen der annotierten Datensätze zu erkennen; und Erkennen (210) von Objekten in einem Eingabebild unter Verwendung des vereinigten Objektdetektors.
  2. Verfahren nach Anspruch 1, wobei ein Trainieren des vereinigten Objektdetektors Anmerkungen der annotierten Datensätze als wahren Ground Truth verwendet und kreuzweise Anmerkungen durch die datensatzspezifischen Objektdetektoren als pseudomäßigen Ground Truth verwendet.
  3. Verfahren nach Anspruch 1, wobei die Anmerkungen jeweils einen Begrenzungsrahmen für ein Objekt und eine Objektklasse enthalten.
  4. Verfahren nach Anspruch 1, wobei die Vielzahl von datensatzspezifischen Objektdetektoren unter Verwendung eines gemeinsam genutzten bzw. geteilten Backbones trainiert wird.
  5. Verfahren nach Anspruch 1, wobei die Vielzahl von datensatzspezifischen Objektdetektoren unter Verwendung separater bzw. getrennter jeweiliger Backbones trainiert wird.
  6. Verfahren nach Anspruch 1, wobei jeder der annotierten Datensätze Anmerkungen für wenigstens eine Objektklasse enthält, die nicht in irgendeinem der anderen annotierten Datensätze annotiert ist.
  7. Verfahren nach Anspruch 1, wobei ein kreuzweises Kommentieren der annotierten Datensätze ein Durchführen einer Objekterkennung an einem ersten annotierten Datensatz unter Verwendung eines datensatzspezifischen Objektdetektors umfasst, der an einem zweiten annotierten Datensatz trainiert ist, um ein oder mehrere vorläufige Objekte zu erkennen, das oder die zu der einen oder den mehreren Objektklassen des zweiten annotierten Datensatzes gehört oder gehören.
  8. Verfahren nach Anspruch 7, wobei ein kreuzweises Kommentieren der annotierten Datensätze weiterhin folgendes umfasst: Bestimmen eines Konfidenzwerts für jedes von dem einen oder den mehreren erkannten vorläufigen Objekten; Vergleichen des Konfidenzwerts für jedes von dem einen oder den mehreren erkannten vorläufigen Objekten mit einer ersten Schwelle und einer zweiten Schwelle; Kommentieren von dem oder den mehreren erkannten vorläufigen Objekten gemäß dem Vergleich.
  9. Verfahren nach Anspruch 8, wobei ein Kommentieren von dem einen oder den mehreren erkannten vorläufigen Objekten ein Verwerfen von wenigstens einem von dem einen oder den mehreren erkannten vorläufigen Objekten in Reaktion auf eine Bestimmung enthält, dass der Konfidenzwert für das wenigstens eine von dem einen oder den mehreren erkannten vorläufigen Objekten zwischen die erste Schwelle und die zweite Schwelle fällt.
  10. Verfahren nach Anspruch 1, das weiterhin ein Durchführen einer Computer-Vision-Aufgabe unter Verwendung der erkannten Objekte umfasst.
  11. System zur Objekterkennung, umfassend: einen Hardwareprozessor (402); und einen Speicher (404), der konfigurieret ist, um einen Computerprogrammcode zu speichern, der durch den Hardwareprozessor ausgeführt wird und der folgendes enthält: einen Maschinenlerncode (406), der eine Vielzahl von datensatzspezifischen Objektdetektoren implementiert, von welchen jeder Objekte innerhalb von Eingabebildern gemäß einem Trainieren durch einen jeweiligen annotierten Datensatz erkennt und kommentiert bzw. annotiert, wobei jeder der annotierten Datensätze Kommentierungen bzw. Anmerkungen für einen jeweiligen Satz von einer oder mehreren Objektklassen enthält, wobei die Vielzahl von datensatzspezifischen Objektdetektoren die annotierten Datensätze kreuzweise kommentiert bzw. annotiert; einen Maschinenlerncode (408), der einen vereinigten Objektdetektor implementiert, der Objekte innerhalb von Eingabebildern gemäß einem Trainieren durch mehrere Datensätze erkennt und kommentiert bzw. annotiert; einen datensatzspezifischen Trainingscode (407), der die Vielzahl von datensatzspezifischen Objektdetektoren unter Verwendung jeweiliger annotierter Datensätze trainiert; einen vereinigten Trainingscode (407), der den vereinigten Objektdetektor unter Verwendung der kreuzweise kommentierten bzw. annotierten Datensätze trainiert, um alle der Objektklassen der kommentierten bzw. annotierten Datensätze zu erkennen; und einen Objekterkennungscode (408), der Objekte in einem Eingabebild unter Verwendung des vereinigten Objektdetektors erkennt.
  12. System nach Anspruch 11, wobei der vereinigte Objektdetektor Anmerkungen der annotierten Datensätze als wahren Ground Truth verwendet und kreuzweise Anmerkungen durch die datensatzspezifischen Objektdetektoren als pseudomäßigen Ground Truth verwendet.
  13. System nach Anspruch 11, wobei die Anmerkungen jeweils einen Begrenzungsrahmen für ein Objekt und eine Objektklasse enthalten.
  14. System nach Anspruch 11, wobei der datensatzspezifische Trainingscode die Vielzahl von datensatzspezifischen Objektdetektoren unter Verwendung eines gemeinsam genutzten bzw. geteilten Backbones trainiert.
  15. System nach Anspruch 11, wobei der datensatzspezifische Trainingscode die Vielzahl von datensatzspezifischen Objektdetektoren unter Verwendung separater bzw. getrennter jeweiliger Backbones trainiert.
  16. System nach Anspruch 11, wobei jeder der annotierten Datensätze Anmerkungen für wenigstens eine Objektklasse enthält, die nicht in irgendeinem der anderen annotierten Datensätze annotiert bzw. kommentiert ist.
  17. System nach Anspruch 11, wobei jeder der Vielzahl von datensatzspezifischen Objektdetektoren an einem jeweiligen zweiten annotierten Datensatz trainiert wird und eine Objekterkennung an Bildern in einem Satz von ersten annotierten Datensätzen durchführt, um ein oder mehrere vorläufige Objekte zu erkennen, das oder die zu der einen oder den mehreren Objektklassen des zweiten annotierten Datensatzes gehört oder gehören.
  18. System nach Anspruch 17, wobei jeder der Vielzahl von datensatzspezifischen Objektdetektoren weiterhin einen Konfidenzwert für jedes von dem einen oder den mehreren erkannten vorläufigen Objekten in jedem der Bilder bestimmt, den Konfidenzwert für jedes von dem einen oder den mehreren erkannten vorläufigen Objekten mit einer ersten Schwelle und einer zweiten Schwelle vergleicht und die Bilder gemäß dem Vergleich kommentiert.
  19. System nach Anspruch 18, wobei jeder der Vielzahl von datensatzspezifischen Objektdetektoren weiterhin wenigstens eines von dem einen oder den mehreren erkannten vorläufigen Objekten in Reaktion auf eine Bestimmung verwirft, dass der Konfidenzwert für den wenigstens einen von dem einen oder den mehreren erkannten vorläufigen Objekten zwischen die erste Schwelle und die zweite Schwelle fällt.
  20. System nach Anspruch 11, wobei der Computerprogrammcode weiterhin einen Sicherheitscode enthält, der eine Computer-Vision-Aufgabe unter Verwendung der erkannten Objekte durchführt.
DE112020005663.5T 2019-11-14 2020-11-12 Objekterkennung mit training aus mehreren datensätzen Pending DE112020005663T5 (de)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201962935103P 2019-11-14 2019-11-14
US62/935,103 2019-11-14
US17/094,261 2020-11-10
US17/094,261 US11222238B2 (en) 2019-11-14 2020-11-10 Object detection with training from multiple datasets
PCT/US2020/060169 WO2021097048A1 (en) 2019-11-14 2020-11-12 Object detection with training from multiple datasets

Publications (1)

Publication Number Publication Date
DE112020005663T5 true DE112020005663T5 (de) 2022-09-01

Family

ID=75908793

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112020005663.5T Pending DE112020005663T5 (de) 2019-11-14 2020-11-12 Objekterkennung mit training aus mehreren datensätzen

Country Status (4)

Country Link
US (1) US11222238B2 (de)
JP (1) JP7257587B2 (de)
DE (1) DE112020005663T5 (de)
WO (1) WO2021097048A1 (de)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115298708A (zh) * 2020-03-30 2022-11-04 上海科技大学 多视角神经人体渲染
EP4266260A1 (de) * 2022-04-20 2023-10-25 Axis AB Codierung von trainingsdaten zum trainieren eines neuronalen netzes
US11955272B1 (en) * 2022-11-10 2024-04-09 Superb Ai Co., Ltd. Method for generating object detector based on deep learning capable of detecting extended object class and detector generation device using the same
CN117612140B (zh) * 2024-01-19 2024-04-19 福思(杭州)智能科技有限公司 道路场景的识别方法、装置和存储介质及电子设备

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB201517462D0 (en) * 2015-10-02 2015-11-18 Tractable Ltd Semi-automatic labelling of datasets
US10019631B2 (en) * 2015-11-05 2018-07-10 Qualcomm Incorporated Adapting to appearance variations when tracking a target object in video sequence
GB2554633B (en) * 2016-06-24 2020-01-22 Imperial College Sci Tech & Medicine Detecting objects in video data
JP6622172B2 (ja) * 2016-11-17 2019-12-18 株式会社東芝 情報抽出支援装置、情報抽出支援方法およびプログラム
US10360732B2 (en) * 2017-03-23 2019-07-23 Intel Corporation Method and system of determining object positions for image processing using wireless network angle of transmission
JP6835218B2 (ja) * 2017-05-22 2021-02-24 日本電気株式会社 群衆状態認識装置、学習方法および学習プログラム
US11017550B2 (en) * 2017-11-15 2021-05-25 Uatc, Llc End-to-end tracking of objects
JP2019192022A (ja) * 2018-04-26 2019-10-31 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム
CN110136202A (zh) * 2019-05-21 2019-08-16 杭州电子科技大学 一种基于ssd与双摄像头的多目标识别与定位方法

Also Published As

Publication number Publication date
JP7257587B2 (ja) 2023-04-13
US20210150275A1 (en) 2021-05-20
US11222238B2 (en) 2022-01-11
JP2022545030A (ja) 2022-10-24
WO2021097048A1 (en) 2021-05-20

Similar Documents

Publication Publication Date Title
DE112020005663T5 (de) Objekterkennung mit training aus mehreren datensätzen
DE112020005609T5 (de) Domainanpassung für semantische Segmentierung durch Ausnutzen schwacher Etiketten
DE112016005059B4 (de) Unterkategorienbewusste faltende neuronale Netzwerke zur Objekterfassung
DE102019008142A1 (de) Lernen von Darstellungen unter Nutzung gemeinsamer semantischer Vektoren
DE112016005062T5 (de) Kaskadiertes neuronales netzwerk mit massstabsabhängiger poolbildung zur objekterfassung
DE102017127592A1 (de) Verfahren zum Klassifizieren von Bildszenen in einem Fahrunterstützungssystem
DE112017005651T5 (de) Vorrichtung zur Klassifizierung von Daten
WO2020049154A1 (de) Verfahren und vorrichtung zur klassifizierung von objekten
DE112020005572T5 (de) Tiefe Gesichtserkennung basierend auf Clustern über unbezeichnete Gesichtsdaten
DE102019209462A1 (de) Verfahren zur Bestimmung eines Vertrauens-Wertes eines detektierten Objektes
DE102018206108A1 (de) Generieren von Validierungsdaten mit generativen kontradiktorischen Netzwerken
CN114549470B (zh) 基于卷积神经网络和多粒度注意力的手骨关键性区域获取方法
DE112020005584T5 (de) Verdeckung berücksichtigende Innenraumszenenanalyse
DE102020210352A1 (de) Verfahren und Vorrichtung zum Transferlernen zwischen modifizierten Aufgaben
WO2022037853A1 (de) Computerimplementiertes verfahren zur analyse des innenraums eines fahrzeugs
DE102019206720B4 (de) Überwachung eines KI-Moduls einer Fahrfunktion eines Fahrzeugs
CN110490028A (zh) 基于深度学习的人脸识别网络训练方法、设备及存储介质
DE102013210771A1 (de) Detektion eines komplexen objekts unter verwendung einer kaskade von klassifizierungseinrichtungen
Ghahnavieh et al. Enhancing the license plates character recognition methods by means of SVM
DE102021207613A1 (de) Verfahren zur Qualitätssicherung eines Systems
DE102021213118A1 (de) Verfahren und ein system für black-box-universalangriffe mit geringer abfrage
DE102020211849A1 (de) Trainieren eines maschinellen lernmodells unter verwendung eines batch-basierten aktiven lernansatzes
DE102020215200A1 (de) System und verfahren eines verfahrens für robustes aktives lernen unter verwendung von verrauschten labels und domänenadaption
DE102020200503A1 (de) Verfahren zum Generieren von gelabelten Daten, insbesondere für das Training eines neuronalen Netzes, mittels Verbesserung initialer Label
DE102020216188A1 (de) Vorrichtung und Verfahren zum Trainieren eines Klassifizierers

Legal Events

Date Code Title Description
R012 Request for examination validly filed