DE112016005776T5 - Systeme und Verfahren zum Bereitstellen eines Bild-Klassifikators - Google Patents

Systeme und Verfahren zum Bereitstellen eines Bild-Klassifikators Download PDF

Info

Publication number
DE112016005776T5
DE112016005776T5 DE112016005776.8T DE112016005776T DE112016005776T5 DE 112016005776 T5 DE112016005776 T5 DE 112016005776T5 DE 112016005776 T DE112016005776 T DE 112016005776T DE 112016005776 T5 DE112016005776 T5 DE 112016005776T5
Authority
DE
Germany
Prior art keywords
image
cell
rectangular
training images
detection window
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
DE112016005776.8T
Other languages
English (en)
Inventor
David Moloney
Alireza Dehghani
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.)
Movidius Ltd Ireland
Original Assignee
Linear Algebra Technologies Ltd
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 Linear Algebra Technologies Ltd filed Critical Linear Algebra Technologies Ltd
Publication of DE112016005776T5 publication Critical patent/DE112016005776T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/94Hardware or software architectures specially adapted for image or video understanding
    • G06V10/955Hardware or software architectures specially adapted for image or video understanding using specific electronic processors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/2411Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/28Determining representative reference patterns, e.g. by averaging or distorting; Generating dictionaries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/50Extraction of image or video features by performing operations within image blocks; by using histograms, e.g. histogram of oriented gradients [HoG]; by summing image-intensity values; Projection analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/50Extraction of image or video features by performing operations within image blocks; by using histograms, e.g. histogram of oriented gradients [HoG]; by summing image-intensity values; Projection analysis
    • G06V10/507Summing image-intensity values; Histogram projection analysis
    • 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/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/755Deformable models or variational models, e.g. snakes or active contours
    • G06V10/7557Deformable models or variational models, e.g. snakes or active contours based on appearance, e.g. active appearance models [AAM]
    • 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/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/758Involving statistics of pixels or of feature values, e.g. histogram matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/19Recognition using electronic means
    • G06V30/192Recognition using electronic means using simultaneous comparisons or correlations of the image signals with a plurality of references
    • G06V30/194References adjustable by an adaptive method, e.g. learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/172Classification, e.g. identification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/103Static body considered as a whole, e.g. static pedestrian or occupant recognition

Landscapes

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

Abstract

Systeme und Verfahren werden bereitgestellt zur Bildklassifizierung unter Benutzung von Histogrammen von orientierten Gradienten (HoG) in Verbindung mit einem Trainer. Die Leistungsfähigkeit des Vorgehens wird in hohem Maße durch zuerst Festlegen eines Bitmusters erhöht, welches einen Untersatz der Pixel in dem HoG-Fenster als relevante Vordergrundinformation enthaltend identifiziert, und Beschränken des HoG-Berechnungs-Vergleichsvorgehens auf lediglich die in dem Bitmuster enthaltenen Pixel.

Description

  • Gebiet der Anmeldung
  • Die vorliegende Anmeldung betrifft allgemein eine Rechnersicht-Verarbeitung und insbesondere eine effiziente Klassifizierung von Bildern.
  • Hintergrund
  • Das Gebiet der Rechnersicht erfordert häufig Klassifikatoren, die trainiert sind, Objekte wie Gesichter oder Leute in der Absicht nachzuweisen, Anwendungen bereitzustellen, die mit Leuten oder Objekten der realen Welt wechselwirken. Eine Vielzahl von Klassifikatoren existiert, weil Rechner-Sehvermögenforscher durchweg nach ressourceneffizienten Verfahren zum genauen Lokalisieren und Identifizieren unterschiedlicher Objekte in Bildern streben.
  • Ein bekanntes, in 1 beschriebenes Verfahren einer Identifizierung einer besonderen Klasse von Objekten benutzt Histogramme orientierter Gradienten (HoG) in Verbindung mit Trainingsbildern und einem Lernsystem. HoG ist benutzt worden, um Menschen gegenüber einer Vielzahl von Hintergründen wie Gesichtern, Tieren, Fahrzeugen und anderen Objekten nachzuweisen. Da HoG einen relativ kompakten Referenzdeskriptor benutzt, konnte es erfolgreich in Echtzeit benutzt werden, um Objekte bei einer gleichzeitigen Übertragung und Wiedergabe (Streaming) von Videos zu klassifizieren. Es konnte auch gezeigt werden, einen robusten Nachweis in der Gegenwart von Drehungen, einer Skalierung und Variationen hinsichtlich der Beleuchtungsbedingungen zu ermöglichen.
  • 1 veranschaulicht ein auf dem Gebiet zur Klassifizierung von Objekten in Bildern unter Benutzung von HoG in Verbindung mit einem Stützvektormaschinen-(SVM)-Algorithmus (Support Vector Machine-Algorithmus) bekanntes Vorgehen 100 - auf dem Gebiet passend als HoG/SVM bezeichnet. Das beschriebene Vorgehen benutzt die von Dalal und Triggs in ihrer 2005er Veröffentlichung „Histogramme orientierter Gradienten zum Nachweis von Menschen", Internationale Konferenz über Rechnervision und Mustererkennung (International Conference on Computer Vision and Pattern Recognition), Bd. 2, S. 886-893, Juni 2005, das hiermit durch Bezugnahme in seiner Gesamtheit einbezogen wird, identifizierten Parameter.
  • Zuerst werden Gradientenwerte für jedes Pixel innerhalb einer besonderen Zelle berechnet (Schritt 102 in 1). Wie in 2, die das Vorgehen veranschaulicht, gezeigt, wird ein rechteckiges HoG-Nachweisfenster 202 auf einen Teil des Bildes angewandt, das die Pixel in diskrete Zellen 204 unterteilt. Eine HoG-Zelle 204 kann zum Beispiel 8 Pixel auf jeder Seite für insgesamt 64 (8-mal-8) Pixeln pro Zelle 204 umfassen, obwohl größere oder kleinere Zellgrößen in einigen Ausführungen gewählt werden können. Für jede Zelle 204 werden eine Größe und eine Orientierung eines Gradienten berechnet. Eine Vielzahl von Filtern kann angewandt werden, um diese Werte zu berechnen. Zum Beispiel kann die Größe des Gradienten |G| gemäß den Intensitätswerten seiner angrenzenden Pixel in einer Ausführung gegeben sein: | G | = | G x | + | G y | = | G x + 1 G x 1 | + | G y + 1 G y 1 | .
    Figure DE112016005776T5_0001
  • Und die Orientierung Θ kann gemäß der Tangente der horizontalen x- und vertikalen y-Intensitäten gegeben sein: Θ= arctan ( | G y + 1 G y 1 | / | G x + 1 G x 1 | )
    Figure DE112016005776T5_0002
  • Um das Histogramm zu erzeugen, werden die Orientierungswinkel Θ in irgendeine Anzahl von Kästen (Bins) gebrochen. In diesem Beispiel wird der Bereich von 0° bis 180° in neun Kästen, wovon jeweils 20° gebrochen. Jeder Intensitätswert |G| wird zu dem mit seinem Orientierungswinkel Θ verbundenen Kasten addiert (Schritt 104 in 1). Der resultierende HoG-Zellendeskriptor, veranschaulicht als 206 in 2, weist 9 Werte jeweils mit einem Minimum von 0 und einem Maximum von 128 mal dem maximalen Pixelintensitäts-Wert auf.
  • Jeder der Zellendeskriptoren 206 wird dann basierend auf jedem 2-mal-2 Block 208 von vier Zellen in Blockdeskriptoren 210 aggregiert (Schritt 106 in 1). Da jeder Block 208 von Zellen benutzt wird, wird eine Zelle 204 nicht an der Kante des Fensters 202 in vier unterschiedlichen Blöcken 208 erscheinen, und daher wird sein Deskriptor 206 in vier unterschiedlichen Blockdeskriptoren 212 enthalten sein.
  • Jeder Blockdeskriptor 210, enthaltend die Deskriptoren 206 von jeder der vier Zellen 204 in dem Block 208 wird gemäß den Deskriptoren in dem Block normiert (Schritt 108 in 1). Eine Vielzahl von Normierungsalgorithmen kann benutzt werden, von denen viele in der oben angegebenen 2005er Veröffentlichung von Dalal und Triggs diskutiert werden. Das Ergebnis dieses Vorgehens ist ein normierter Blockdeskriptor 202 für jeden Block 208, ein Satz von 36 Datenelemente pro Block repräsentierenden Histogrammdaten. Da die Normierung von den Werten der vier Deskriptoren 206 in einem bestimmten Blockdeskriptor 210 abhängt, können die normierten, einer bestimmten Zelle 206 verbundenen Werte in jedem normierten Blockdeskriptor 212, der die Zelle enthält, unterschiedlich sein.
  • Für ein 64-mal-128 Pixelfenster 202 umfasst der vollständige HoG-Deskriptor 214, der die normierten Blockdeskriptoren 212 repräsentiert, 105 normierte Blöcke von Histogrammdaten: insgesamt 3.780 Datenwerte. Dieser vollständige Deskriptor 214 wird in den SVM-Klassifikator eingespeist (Schritt 110 in 1), welcher zuvor Trainingsbilder gemäß den gleichen Parametern ausgewertet hat. Die Trainingsbilder können jeder geeignete Satz von Trainingsdaten für die ausgewerteten Objekte sein, wie die in der 2005er Veröffentlichung von Dalal und Triggs beschriebenen MIT- und INRIA-Bilddatensätze. Andere öffentlich verfügbare oder private Trainingsdaten können benutzt werden.
  • Die HoG-Berechnung wird durch wiederholtes Abschreiten (Stepping) eines Fensters, 64 Pixel breit mal 128 Pixel hoch in dem veranschaulichten Beispiel, über einen Quellbild-Rahmen und Berechnen des HoG-Deskriptors wie in dem vorangegangenen Abschnitt skizziert durchgeführt. Da die HoG-Berechnung keine intrinsische Wahrnehmung einer Skala enthält und Objekte in mehreren Skalen innerhalb eines Bildes auftreten können, wird die HoG-Berechnung schrittweise und über jedes Niveau einer Skalenpyramide wiederholt.
  • 3 veranschaulicht ein Fenster 302, das über jedes Niveau 304 der Skalenpyramide 306 abgeschritten wird. Jedes Niveau 304 stellt eine weiter herunterskalierte Kopie des Bildes dar, das abgetastet (scanned) wird. Der Skalierungsfaktor zwischen jedem Niveau in der Skalenpyramide zwischen einem Niveau und dem nächsten ist gewöhnlich 1,05 oder 1,2. Das Bild wird wiederholt herunterskaliert, bis der skalierte Quell-Rahmen nicht weiter ein vollständiges HoG-Fenster aufnehmen kann.
  • Die geschlossene Form für die Anzahl von Pixeln in der Skalierungspyramide ist gegeben durch einen auf s basierenden Ausdruck. s ist der Skalierungsmultiplikator für die Gesamtzahl von Pixeln in der Skalenpyramide: s = α m α 1 α .
    Figure DE112016005776T5_0003
  • α ist der zwischen Pyramidenniveaus benutzte Skalierungsfaktor. m = log(W/H)/log(α), wobei W und H die jeweilige Breite oder Höhe des Eingabebild-/Videorahmens sind. Die Gesamtanzahl von zu betrachtenden Pixeln in der Skalierungspyramide ist daher s▪W▪H.
  • Wie man in 2 sieht und in der Berechnung oben gezeigt ist, erzeugt der HoG-Deskriptor für ein System, das 9D Histogramme für jedes der 7-mal-15 4-mal-4 Blöcke in dem Bild benutzt, einen 3,78 kB Deskriptor für jedes 64-mal-128-Fenster, das in dem aufkommenden Bild untersucht wird.
  • Die zum Trainieren derartiger Klassifikatoren benutzten Bilder sind typischerweise rechteckig als ein Nebenprodukt der zum Aufnehmen der Bilder benutzten 2D-Bildsensor-Anordnungen (Arrays). Man füge zu diesem die Einfachheit eines Abschreitens eines rechteckigen Deskriptors über ein rechteckiges Quellbild und Falten hinzu, um eine Passung nachzuweisen, und es ist einfach, zu sehen, warum sich dieses Paradigma etabliert hat. Während einige Objekte wie Möbel in der Tat quadratisch oder rechteckig sein können, sind die meisten Objekte von Interesse beim Klassifizieren nicht einfach durch einfache genetische Formen darstellbar. Daher ist ein rechteckiges Referenzbild eine schlechte Anpassung für derartige Objekte. Eine Benutzung eines rechteckigen Referenzbildes bedeutet in der Tat, dass bedeutende zusätzliche Arbeit getan werden muss, um die Pixel zu falten, die für die Anpassungsaufgabe nicht relevant sind, und diese Pixel ferner bedeuten, dass ein Teil des Hintergrunds, der das Objekt von Interesse umgibt, in dem zur Anpassung der Bilder benutzten Deskriptor abgetastet (aliased) wird, wobei somit die Genauigkeit der Anpassungsoperation durcheinandergebracht und herabgesetzt wird.
  • Die Rechenkosten jedes HoG-Datensatzes sind sehr groß. Eine Abschätzung ist von Dziri, Chevobb und Darouich in ihrer 2013-Veröffentlichung gemacht „Gestenerkennung auf einer feinen Kamera“, CEA LIST - Embedded Computing Laboratory, 2013. Um zum Beispiel ein HoG auf einen 42-mal-42-Pixelbereich von Interesse anzuwenden, sind die folgenden Operationen erforderlich: 11.664 Additionen, 1.296 Multiplikationen, 5.200 Divisionen, 16 Quadratwurzeln und 5.184 Arkustangens. Die Berechnung erfordert zahlreiche aufwendige und komplexe mathematische Operationen wie Division, Quadratwurzel und Arkustangens, was mehrere Zyklen einnimmt, um auf einem konventionellen, sequentiellen Prozessor in Software ausgeführt zu werden. Die Berechnung erfordert ebenso große Zahlen von allgemeineren mathematischen Operationen wie Addition und Multiplikation, die normalerweise in so wenig wie einem Taktzyklus ausführbar sind. Die Rechenkosten legen sich durch die Tatsache bei, dass ein Ausführen einer erschöpfenden Suche durch ein Abschreiten einer HoG-Schablone zum Vergleich über das gesamte Bild abhängig von der Auflösung des Eingangsbildes rechnerisch noch teurer ist. In Szenarios, in denen Objekte in einem Abstandsbereich gesehen werden können, ist es ferner häufig notwendig, nach Anwärterfenstern unterschiedlicher Größen zu suchen, wobei die Rechenkosten weiter ansteigen.
  • HoG/SVM ist eine sehr kostspielige Operation. Viele Optimierungen von einer Änderung des Skalierungsfaktors zur Modifizierung der Blockgröße, in welcher das HoG-Fenster über das skalierte Quell-Bild abgeschritten wird, können benutzt werden, um den Suchraum zu beschneiden und damit den Rechenaufwand zu begrenzen. Diese kombinierten Faktoren bedeuten, dass sich eine robuste Echtzeit-HoG auf Desktop-Systeme hoher Anforderung, die Rechenvorgänge an eine universelle Hochleistungsprozessoreinheit (High Performance Generell Processing Unit) (GPU) ablädt, beschränkt. Dieses treibt die Stromkosten weit hinter die Grenzen von mobilen Bauelementen wie Telefonen, Tablet-Computern und mobilen Robotern.
  • Während es möglich ist, ein Ganzbild teilabzutasten und einen Bereich von Optimierungen für mobile Plattformen auszuführen, wird damit oft ein großer Verlust hinsichtlich einer Passungsgenauigkeit erreicht, wodurch die mobile Ausführung von sehr begrenztem Nutzen erbracht wird. Nichtsdestotrotz sind weitere Optimierungen zur Begrenzung der Rechenausgaben von HoG-Prozessen erwünscht.
  • Zusammenfassung
  • Gemäß dem offenbarten Gegenstand sind Systeme und Verfahren zur Bildklassifizierung unter Benutzung einer HoG in Verbindung mit einem Trainer vorgesehen. Die Leistungsfähigkeit des Vorgehens wird bedeutend gesteigert durch zuerst eine Einrichtung einer Bitmusters (Bit Map), das einen Untersatz von Pixeln in dem HoG-Fenster als relevante Vordergrundinformation enthaltend identifiziert, und Begrenzen des HoG-Berechnungs- und Vergleichsvorgehens auf lediglich die in dem Bitmuster enthaltenen Pixel.
  • Die offenbarten Ausführungsformen enthalten ein Computer-implementiertes Verfahren zur Bildklassifizierung. Das Verfahren umfasst: Erzeugen einer nicht-rechteckigen, einen relevanten Teil eines Bildfensters repräsentierenden Silhouette aus einem Satz von Trainingsbildern, Erzeugen eines nicht-rechteckigen, weniger als alle der Zellen innerhalb eines rechteckigen Nachweisfensters identifizierenden Bitmusters (Bitmap) aus der Silhouette, wobei das rechteckige Nachweisfenster eine vorbestimmte Zellenbreite und Zellenhöhe aufweist, Empfangen eines Bildes zur Klassifizierung, welches Bild eine Zellenbreite und eine Zellenhöhe enthält, Anwenden des rechteckigen Nachweisfensters auf einen Teil des die Zellenbreite und Zellenhöhe des rechteckigen Nachweisfensters aufweisenden Bildes, wobei das Anwenden des Nachweisfensters ein Identifizieren von Zellen innerhalb des Bildteils enthält, die zu den identifizierten Zellen des nicht-rechteckigen Bitmusters passen, für jede der identifizierten Zellen innerhalb des Bildteils Erzeugen eines Histogramms von Orientierungen der Pixel innerhalb der Zelle, Festlegen von überlappenden Zellblöcken, wobei jeder Zellblock eine Vielzahl von benachbarten, identifizierten Zellen aus dem Bildteil aufweist, für jeden Zellblock Erzeugen eines Deskriptors, enthaltend ein Histogramm für jede der identifizierten Zellen in dem Zellblock, wobei jedes Histogramm innerhalb des Deskriptors auf all die Histogramme innerhalb des Deskriptors normiert wird und Auswerten der erzeugten Deskriptoren gegenüber dem Satz von Trainingsbildern, um zu bestimmen, ob der Bildteil als eine dem Satz der Trainingsbilder zugeordnete Klasse eines Objekts enthaltend identifiziert wird.
  • In einigen Ausführungsformen umfasst das Verfahren weiter: Neu-Skalierung des Bildes auf eine unterschiedliche Zellbreite und Zellhöhe und Anwenden des rechteckigen Nachweisfensters auf einen Teil des neu-skalierten Bildes mit der Zellbreite und Zellhöhe des rechteckigen Nachweisfensters.
  • In einigen Ausführungsformen umfasst das Verfahren weiter ein Erzeugen der nicht-rechteckigen Silhouette durch eines von Mitteln des Satzes von Trainingsbildern, Anwenden eines Rechnersehvermögen-Algorithmus (computer vision algorithm) oder Anwenden einer gründlichen Lernens, um den relevanten Teil des Bildfensters zu bestimmen.
  • In einigen Ausführungsformen umfasst das Verfahren weiter ein Erzeugen der nicht-rechteckigen Silhouette durch: Bestimmen von Intensitätswerten von allen Pixeln in jeder Position für jedes Trainingsbild aus dem Satz der Trainingsbilder, Hinzufügen der Intensitätswerte von all den Pixeln für jede Position aus dem Satz der Trainingsbilder, um resultierende Werte zu erzeugen und Teilen der resultierenden Werte für jede Position aus dem Satz der Trainingsbilder mit einer Anzahl von Trainingsbildern aus dem Satz der Trainingsbilder.
  • In einigen Ausführungsformen umfasst das Verfahren weiter für jede der identifizierten Zellen innerhalb des Bildteils ein Erzeugen eines Histogramms von Orientierungen der Pixel innerhalb der Zelle durch: Berechnen von Gradienten, von denen jeder eine Größe und eine entsprechende Orientierung aufweist, Zuordnen jeder entsprechenden Orientierung zu einem einer Vielzahl von Kästen und Hinzufügen jeder Größe zu dem einen der Vielzahl von der entsprechenden Orientierung zugeordneten Kästen.
  • In einigen Ausführungsformen umfasst das Verfahren weiter ein Vorsehen jedes Zellblocks als einen 2-mal-2 der benachbarten, identifizierten Zellen aus dem Bildteil.
  • In einigen Ausführungsformen umfasst das Verfahren weiter für jede der identifizierten Zellen in dem Zellenblock für jeden Zellenblock ein Erzeugen eines Deskriptors durch ein Verknüpfen des Histogramms.
  • In einigen Ausführungsformen umfasst das Verfahren weiter ein Bestimmen, dass die Klasse des Objekts eine ist von: einer Person, eines Gesichts, einer nicht-rechteckigen geometrischen Form oder einer nicht-geometrischen Form.
  • Die offenbarten Ausführungsformen enthalten eine Recheneinrichtung zur Bildklassifizierung. Die Recheneinrichtung umfasst einen zum Speichern eines Satzes von Trainingsbildern konfigurierten Speicher, eine nicht-rechteckige Silhouette, die einen relevanten Teil eines Bildfensters aus dem Satz der Trainingsbilder repräsentiert, und ein nicht-rechtwinkliges Bitmuster (Bitmap), das weniger als alle der Zellen innerhalb eines rechteckigen Nachweisfensters identifiziert, wobei das rechteckige Nachweisfenster eine vorbestimmte Zellenbreite und Zellenhöhe aufweist. Die Recheneinrichtung umfasst auch eine mit dem Speicher verbundene Hardware-Beschleunigungsvorrichtung, welche Hardware-Beschleunigungsvorrichtung konfiguriert ist: ein Bild zur Klassifizierung als Eingabe zu empfangen, wobei das Bild eine Zellbreite und Zellhöhe enthält, das gespeicherte rechtwinklige Nachweisfenster auf einen Teil des Bilds mit der Zellbreite und der Zellhöhe des rechteckigen Nachweisfensters durch Identifizieren von Zellen innerhalb des Bildteils, die zu den identifizierten Zellen des nicht-rechteckigen Bitmusters passen, anzuwenden, für jede der identifizierten Zellen innerhalb des Bildteils ein Histogramm von Orientierungen der Pixel innerhalb der Zelle zu erzeugen und zu speichern und überlappende Zellblöcke festzulegen, wobei jeder Zellblock eine Vielzahl von benachbarten, identifizierten Zellen aus dem Bildteil aufweist. Die Recheneinrichtung umfasst ebenso einen mit der Hardware-Beschleunigungsvorrichtung und dem Speicher verbundenen Prozessor, welcher Prozessor konfiguriert ist: für jeden Zellblock einen Deskriptor enthaltend ein Histogramm für jede der identifizierten Zellen in dem Zellblock zu erzeugen, wobei jedes Histogramm innerhalb des Deskriptors auf alle der Histogramme innerhalb des Deskriptors normiert ist, und die erzeugten Deskriptoren gegenüber dem gespeicherten Satz von Trainingsbildern zu bewerten, um zu bestimmen, ob der Bildteil als eine dem Satz von Trainingsbildern zugeordnete Klasse eines Objekts enthaltend zu identifizieren ist. Der Speicher, die Hardware-Beschleunigungsvorrichtung und/oder der Prozessor können weiter konfiguriert sein, irgendeine und alle der mit Bezug auf jedes der obigen Ausführungsformen beschriebenen Schritte auszuführen.
  • Die offenbarten Ausführungsformen enthalten ein nicht-flüchtiges computerlesbares Medium. Das nicht-flüchtige computerlesbare Medium weist ausführbare Befehle auf, die betriebsfähig sind, eine Datenverarbeitungs-Einrichtung zu veranlassen: aus einem Satz von Trainingsbildern eine nicht-rechteckige Silhouette zu erzeugen, die einen relevanten Teil eines Bildfensters repräsentiert, aus der Silhouette ein nicht-rechteckiges Bitmuster zu erzeugen, das weniger als alle der Zellen innerhalb eines rechteckigen Nachweisfensters identifiziert, wobei das rechteckige Nachweisfenster eine vorbestimmte Zellbreite und Zellhöhe aufweist, ein Bild zur Klassifizierung zu empfangen, wobei das Bild eine Zellbreite und eine Zellhöhe aufweist, das rechteckige Nachweisfenster auf einen Teil des Bildes mit der Zellbreite und der Zellhöhe des rechteckigen Nachweisfensters durch Identifizieren von Zellen innerhalb des Bildteils, die zu den identifizierten Zellen des nicht-rechteckigen Bitmusters passen, anzuwenden, für jede der identifizierten Zellen innerhalb des Bildteils ein Histogramm von Orientierungen der Pixel innerhalb der Zelle zu erzeugen, überlappende Zellblöcke festzulegen, wobei jeder Zellblock eine Vielzahl von benachbarten, identifizierten Zellen aus dem Bildteil aufweist, für jeden Zellenblock einen Deskriptor enthaltend ein Histogramm für jede der identifizierten Zellen in dem Zellenblock zu erzeugen, wobei jedes Histogramm innerhalb des Deskriptors auf alle der Histogramme innerhalb des Deskriptors normiert ist, und die erzeugten Deskriptoren gegenüber dem Satz von Trainingsbildern zu bewerten, um zu bestimmen, ob der Bildteil als eine dem Satz der Trainingsbilder zugeordnete Klasse eines Objekts enthaltend zu identifizieren ist. Die ausführbaren Befehle können weiter betriebsfähig sein, um die Datenverarbeitungs-Einrichtung zu veranlassen, irgendeine und alle der mit Bezug auf irgendeine der obigen Ausführungen beschriebenen Schritte auszuführen.
  • Die vorliegende Erfindung wird nun detaillierter mit Bezug auf besondere Ausführungsformen davon wie in den begleitenden Zeichnungen gezeigt beschrieben werden. Während die vorliegende Offenbarung nachfolgend mit Bezug auf die besonderen Ausführungen beschrieben wird, sollte man verstehen, dass die vorliegende Offenbarung nicht darauf beschränkt ist. Die Durchschnittsfachleute mit Zugang zu den Lehren hierin werden zusätzliche Realisierungen, Modifikationen und Ausführungsformen als auch andere Anwendungsfelder erkennen, die innerhalb des Umfangs der vorliegenden Offenbarung wie hierin beschrieben liegen und mit Bezug auf welche die vorliegende Offenbarung von bedeutender Nützlichkeit sein kann.
  • Figurenliste
  • Unterschiedliche Aufgaben, Merkmale und Vorteile des offenbarten Gegenstands können vollständiger mit Bezug auf die folgende detaillierte Beschreibung des offenbarten Gegenstands verstanden werden, wenn sie in Verbindung mit den folgenden Zeichnungen betrachtet werden, in denen gleiche Bezugszeichen gleiche Elemente bezeichnen. Die begleitenden Figuren sind schematisch und nicht als maßstäblich gezeichnet gemeint. Für Zwecke der Klarheit ist nicht jede Komponente in jeder Figur bezeichnet worden. Noch ist jede Komponente jeder Ausführungsform des offenbarten Gegenstandes gezeigt, wo eine Veranschaulichung nicht notwendig ist, damit Durchschnittsfachleute den offenbarten Gegenstand verstehen.
    • 1 ist ein Ablaufdiagramm einer Ausführung eines HoG/SVM-Klassifizierungsvorgehens,
    • 2 veranschaulicht eine Ausführung eines HoG/SVM-Vorgehens wie praktiziert bei fehlendem Bitmuster wie auf dem Gebiet bekannt,
    • 3 veranschaulicht ein Pyramiden-Skalierungsschema wie auf dem Gebiet bekannt,
    • 4 veranschaulicht eine durch Mitteln eines Satzes von Trainingsbildern gemäß Ausführungsformen der vorliegenden Erfindung erzeugte Silhouette,
    • 5 veranschaulicht eine Ausführung des HoG/SVM-Vorgehens unter Anwendung eines Bitmusters gemäß Ausführungsformen der vorliegenden Erfindung,
    • 6 ist ein eine Ausführung eines HoG/SVM-Klassifizierungsvorgehens gemäß Ausführungsformen der vorliegenden Erfindung beschreibendes Ablaufdiagramm,
    • 7 ist ein eine gemäß Ausführungsformen der vorliegenden Erfindung konfigurierte Hardware darstellendes Schema,
    • 8 ist ein eine gemäß Ausführungsformen der vorliegenden Erfindung konfigurierte Hardware darstellendes Schema,
    • 9 ist ein eine gemäß Ausführungsformen der vorliegenden Erfindung konfigurierte Hardware darstellendes Schema,
    • 10 ist ein das Betriebsbitmuster-Steuerprogramm (Scheduler) für ein typisches Bitmuster gemäß Ausführungsformen der vorliegenden Erfindung darstellendes Zeitablauf-Diagramm,
    • 11 ist ein eine Ausführung eines HoG/SVM-Klassifizierungsvorgehens gemäß Ausführungsformen der vorliegenden Erfindung beschreibendes Ablaufdiagramm .
  • Detaillierte Beschreibung
  • In der folgenden Beschreibung sind zahlreiche spezifische, die Systeme und Verfahren des offenbarten Gegenstands und der Umgebung, in welcher derartige Systeme und Verfahren gehandhabt werden, etc. betreffende Details dargelegt, um ein eingehendes Verstehen des offenbarten Gegenstands bereitzustellen. Es wird den Fachleuten jedoch offensichtlich werden, dass der offenbarte Gegenstand ohne derartige spezifische Details ausgeübt werden kann und dass gewisse Merkmale, die auf dem Fachgebiet wohlbekannt sind, nicht im Detail beschrieben werden, um eine Verkomplizierung des offenbarten Gegenstandes zu vermeiden. Zusätzlich wird man verstehen, dass die nachfolgenden Beispiele beispielhaft sind und dass beabsichtigt ist, dass es andere Systeme und Verfahren gibt, die innerhalb des Umfangs des offenbarten Gegenstandes sind.
  • Die vorliegende Erfindung macht Gebrauch von bedingter Verarbeitung unter Benutzung eines Bitmusters, das jene Teile eines zum Trainieren eines Klassifikators benutzten Bildes codiert. Das Bitmuster wird durch irgendwelche geeigneten Mittel abgeleitet. Zum Beispiel kann das Bitmuster durch Mitteln der Bilder in einem Trainingsdatensatz abgeleitet werden. Als anderes Beispiel kann das Bitmuster unter Benutzung eines Rechnersehvermögen-Algorithmus oder eines gründlichen Lernens (deep learning) abgeleitet werden, um eine Lage und eine Ausdehnung eines in einem Bild nachzuweisenden Objekts zu bestimmen. Diese Mittel erzeugen eine Silhouette des Objekts, die dann wertuntersucht wird (thresholded), um ein Bitmuster zu erzeugen. Das Bitmuster kann auch die zugrundeliegende, bei den Berechnungen eines Histogramms orientierter Gradienten (HoG) benutzte Blockstruktur in Betracht ziehen.
  • 4 veranschaulicht einen Ausdruck mit einer aus dem Mittelwert des in Bezug auf die oben referenzierte 2005er Veröffentlichung von Dalal und Triggs beschriebenen INRIA-Fußgängemachweisbild-Datensatzes erzeugten Silhouette. Der Ausdruck zeigt ein 48-mal-96 Pixelbild 400, das in 4-mal-4 Zellen zu insgesamt 288 Zellen (48/4-mal-96/4 = 12-mal-24 = 288 4-mal-4 Zellen) unterteilt ist. Von den 288 Zellen sind lediglich 92 in der durch Mitteln der Bilder in dem Datensatz erzeugten Vordergrund-Silhouette 402 enthalten, die 32 % (92/288) der Gesamtfläche des Bildes repräsentiert.
  • Die Vordergrund-Silhouette kann in irgendeiner Anzahl von geeigneten Weisen erzeugt werden. Zum Beispiel kann die Silhouette durch Zusammenaddieren der Intensitätswerte all der Pixel in jeder Position innerhalb der Trainingsbilder und dann durch Dividieren der resultierenden Werte durch die Anzahl der Bilder erzeugt werden. Die folgende Veröffentlichung beschreibt „Durchschnittsbilder“, die durch dieses Vorgehen erzeugt werden können: Jun-Yan Zhu et al., „Durchschnittserforscher: Interaktive Erforschung und Ausrichtung von visuellen Datensammlungen" („Average Explorer: Interactive Exploration and Alignment of Visual Data Collections"), ACM Transactions on Graphics, Bd. 33, Nr. 4, August 2014. Zum Beispiel können die MATLAB-Funktionen imadd() und imdivide() benutzt werden, um diese Funktionen an einem Datensatz auszuführen und das Ergebnis in einer Bitmuster-Datei zur Nachprüfung auszugeben. Der Silhouettenumriss kann automatisch basiered auf dem Ergebnis einer Pixel-über-Pixel-Mittelung des Datensatzes, einer Rechnersehvermögen, eines gründlichen Lernens oder andere geeigneter Mittel oder einer Kombination der Mittel erzeugt werden.
  • Die Silhouette wird dann in ein HoG-Nachweis-Bitmuster 500 wie in 5 gezeigt übertragen, in welchem die Zahlen 502-514 ähnlich denjenigen oben benutzten sind, 202-214, mit Bezug auf das veranschaulichte Vorgehen der 2. Hier sind von den ursprünglichen 128 in dem HoG-Nachweisfenster 502 enthaltenen Zellen lediglich 74 als Vordergrundzellen des Bitmusters 500 enthalten, die 58 % (74/128) der Gesamtfläche des Fensters 502 repräsentieren. Bei einer Erzeugung der Histogrammdaten 506 werden ferner sechs Orientierungskästen von jeweils 30° anstelle von neun Kästen von 20° benutzt, um die Gesamtgröße des vollständigen HoG-Deskriptors 514 zu reduzieren. Während ein Abdecken des Gesamtfensters 502 105 überlappende 2-mal-2-Blöcke erfordert, erfordert ein Abdecken des Bitmusters lediglich 74 von derartigen 2-mal-2-Blöcken 508.
  • Wie in 5 gezeigt enthält der vollständige bHoG-Deskriptor lediglich 1776 Gesamtreferenzwerte (74-mal-24-D), wobei die Größe des Deskriptors mit einem Faktor von 3 verglichen mit dem oben beschriebenen Gesamt-HoG-Deskriptors verringert wird. Diese Deskriptoren werden über SVM oder einen anderen geeigneten Lernalgorithmus mit Referenzbildern verglichen, die in ihrer Größe durch die Silhouette 400 der 4 auf ähnliche Weise reduziert worden sind, wobei ein weiterer Anstieg des Wirkungsgrades hervorgebracht wird.
  • Durch ein Vergleichen lediglich der relevanten Zonen der vorliegenden Bilder mit lediglich relevanten Zonen der Referenzbilder kann eine signifikante Reduktion in Vorgehenskosten und Komplexität realisiert werden. In einem experimentellen Beispiel wurde ein bHoG/SVM-Klassifikator unter Benutzung lediglich solcher Teile der INRIA-Bilddatenbasis, die keine Hintergrundinformation enthalten, und mit einem auf konventionelle Weise trainierten HoG/SVM-Klassifikator verglichen. Die Ergebnisse zeigten eine 75%-Arbeitsbelastungsreduktion unter Benutzung des INRIA-Bildsatzes für einen Fußgängernachweis, auf den oben hingewiesen wurde. Eine ähnliche Arbeitsbelastungsreduktion wurde durch Benutzung des durch F. Flohr und D.M. Gavrila eingeführten Daimler Fußgängersegmentationsbewertungs-Datensatz (Daimler Pedestrian Segmentation Benchmark Dataset) „PedCut: ein iterativer Rahmen für Fußgängersegmentation kombinierend Formmodelle und mehrfache Datenaufrufe", Proc. of the British Machine Vision Conference, Bristol, UK, 2013, gefunden.
  • Die gezeigten Ergebnisse lassen sich unabhängig von übergeordneten Optimierungen anwenden, die gemacht werden können, um die Dimensionalität des Suchraums zu reduzieren, und werden mit Hardware leicht beschleunigt, was zu einer potenziellen 4x Beschleunigung in einem Hardware-beschleunigten bHoG/SVM-Detektor führt, mit entsprechender 4x Reduzierung in Datenspeicherung, Datenbandbreite und Stromverbrauch.
  • 6 ist ein eine Ausführung eines hierin beschriebenen HoG/SVM-Klassifizierungsvorgehens beschreibendes Ablaufdiagramm. Das Vorgehen 600 beginnt bei Schritt 602 mit einem zu klassifizierenden Bild. Ein ein willkürlich geformtes Bitmuster einer willkürlich geformten Silhouette enthaltendes Nachweisfenster wird auf einen Teil des Bildes angewendet. Zum Beispiel wird ein rechteckiges, ein nicht-rechteckiges Bitmuster einer nicht-rechteckigen Silhouette enthaltendes Nachweisfenster auf einen Teil des Bildes angewandt. Das Nachweisfenster wird aus Zellen gebildet und hat eine vorbestimmte Zellbreite und Zellhöhe. Das Bitmuster identifiziert weniger als alle der Zellen innerhalb des regulären Nachweisfensters. Die Silhouette und damit das Bitmuster kann irgendeine geeignete willkürliche Form sein, einschließlich irgendeiner geometrischen Form (eine andere als eine rechteckige Form), nicht-geometrischen Form oder einer Kombination von geometrischen oder nicht-geometrischen Formen. Das Anwendungsvorgehen identifiziert lediglich die Zellen innerhalb des Bildteils, die zu den identifizierten Zellen des Bitmusters passen. Danach berechnet das Vorgehen bei Schritt 604 Gradientenwerte (Größen und Orientierungswinkel) für jeden Pixel innerhalb einer identifizierten Zelle innerhalb des Bildteils. Bei Schritt 606 bricht das Vorgehen dann die Orientierungswinkel in eine geeignete Zahl von Kästen auf und addiert jede Größe zu dem ihrer Orientierung zugeordneten Kasten hinzu. Jeder resultierende HoG-Zelldeskriptor wird dann bei Schritt 608 zu Blockdeskriptoren vereinigt. Bei Schritt 610 wird jeder Blockdeskriptor einschließlich seiner Deskriptoren unter Benutzung irgendeines geeigneten Normierungsalgorithmus normiert. Der resultierende vollständige HoG-Deskriptor, der die normierten Deskriptoren repräsentiert, wird dann bei Schritt 110 in den SVM-Klassifikator eingespeist. In Fig. 6 führen Schritte 604, 606, 608, 610 und 612 jeweils ähnliche Funktionen wie oben in Verbindung mit den jeweiligen Schritten 102, 104, 106, 108 und 110 in 1 beschrieben aus, aber lediglich an den Daten, die den identifizierten Zellen des Bitmusters entsprechend der Silhouette entsprechen, wodurch sich Optimierungen, gesteigerte Wirkungsgrade und eine Verringerung von Vorgehenskosten und Komplexität wie oben beschrieben ergeben.
  • 7 zeigt einen möglichen Hardwareblock 700 für beschleunigte bHoG-Berechnungen wie hierin beschrieben. Eingaberahmen enthaltend eine Anordnung von Intensitätswerten für eine gegebene Zelle und alle angrenzenden Zellen werden an eine Hardware bHoG-Beschleunigungsvorrichtung 702 gesendet, die Module zum Ausführen aller notwendigen Funktionen zur Berechnung von Gradienten und für eine Erzeugung von Orientierungskästen wie zuvor beschrieben enthält. Gewisse Module können mehrere HoG-Deskriptoren und zugeordnete, in dem Systemspeicher 704 gespeicherte Bitmuster (das heißt bHoG-Deskriptoren) adressieren und modifizieren. Der Rest der Schritte des bHoG/SVM-Vorgehens (Erzeugen von Deskriptor-Blöcken, Blocknormierung und SVM-Klassifizierung von bHoG-Daten) kann von einem VLIW-Prozessor 706 unter Beziehung auf die bHoG-Deskriptoren in dem Systemspeicher 704 ausgeführt werden.
  • In 8 ist ein möglicher Hardwareblock zur Beschleunigung von bHoG-Berechnungen und Histogramm-Zusammenfassen (Binning) gezeigt, wo die Winkelberechnungen durchgeführt werden und in einen Speicher zum nachfolgenden Histogramm-Zusammenfassen in Software gepackt werden. Ein ganzzahliger Divisor 802 dividiert den für jedes Pixel durch die Anzahl von jedem Histogrammkasten zugeordneten Graden berechneten θ-Winkel, um eine Kastenzahl - eine ganze Zahl zwischen 0 und N, wobei N die Anzahl von Histogrammkästen ist - auszugeben. Diese Ausgabe wird dann benutzt, um aus der Vielzahl von Zwischenspeichern 804 in dem bei der nächsten Taktflanke zu aktualisierenden Histogrammblock zu selektieren. Die Gehalte dieser Zwischenspeicher können dann an dem Ende des Blocks der bHoG-Berechnung über eine Speicher-eingeblendete (memory-mapped) Prozessorschnittstelle 806 ausgelesen werden.
  • Diese Hardware kann durch das Hinzufügen eines Bitmap-Steuerprogramms 900 erweitert werden, um zerstreute Bitmuster wie in 9 gezeigt, zu unterstützen. Ein Bitmusterzähler 902 zählt die Anzahl von Bits in dem Bitmuster entsprechend der ausgewählten Zellgröße bis zu einer max_Zählgrenze (max_count) - die Anzahl an Bits in dem Bitmuster entsprechend der ausgewählten Zellgröße. Die Ausgabe des Zählers ist die „Zählung“ und wird benutzt, ein Bit aus der n-Bit-Bitmusteranordnung 904, die über die Bitmustereingabe geladen wird, bevor eine Schaltkreisoperation beginnt, zu suchen. Die Ausgabe des Bitmusteranordnungs-Suchfelds 904 ist die „HoG-Freigabe“-Variable, die benutzt wird, den HoG-Berechnungsblock ebenso wie die Ausgabe der zum Suchen der erforderlichen Pixel für die HoG-Operation im Speicher durch Freigeben des Ausgangs von AND-Gattern 906 und 908 benutzten „X_adr“ und „Y_adr“-Ausgänge zu steuern. Die Eingaben dieser AND-Gatter werden durch Suchen von relativen Adressen „X_rel“ und „Y_rel“ aus einer Nachschlagetabelle 910 erzeugt, die geladen wird, bevor der Schaltkreis eine Operation über die „lut_data“-Eingabe beginnt. Die „X_rel“- und „Y_rel“-Adressen werden zu den „X_base“- und „Y_base“-Eingaben über ein Paar von Addierern 912 und 914 addiert.
  • 10 ist ein Zeitablaufdiagramm 1000, welches das Betriebsbitmuster-Steuerprogramm für ein beispielhaftes Bitmuster 1010 darstellt. Ein Bitstrom 1012 ist für das Bitmuster 1010 veranschaulicht, wobei die Bits, welche die erste, auf dem Bitstrom 1012 als eine erste Reihe 1014 markierte Reihe des Bitmusters 1010 repräsentieren. Der Teil des Zeitablaufdiagramms 1000 entsprechend der ersten Reihe 1014 wird als erster Zeitablaufabschnitt 1002 markiert. Wie veranschaulicht wirkt das Zeitsignal „clk“ als ein Taktgeber durch Senden abwechselnder Hoch- und Niedrigsignale wie Uhrschläge. In diesem Zusammenhang werden zahlreiche andere, unterschiedliche Variable repräsentierende Signale gesendet. Vor allem und gemäß dem Blockdiagramm aus 9 wirkt das „HoG_Freigabe“-Signal wie oben beschrieben als eine Maske für die „X_adr“- und „Y_adr“-Signale. Wenn das „HoG_Freigabe“-Signal einen hohen Wert aufweist, entsprechend einem 1 Wert für das „Bitmuster“ an dieser Position, dann wird das „X_adr“-Signal die Summe des „X_rel“- und des „X_base“-Signals sein und das „Y_adr“-Signal wird die Summe der „Y_rel“- und „Y_base“-Signale sein. Wenn das „HoG_Freigabe“-Signal niedrig ist, entsprechend einem 0 Wert für das „Bitmuster“ an dieser Position, werden die „X_adr“- und „Y_adr“-Signale sonst noch ebenfalls niedrig sein (das heißt einen Nullwert oder keinen Wert signalisieren).
  • 11 ist eine Ausführung eines hierin beschriebenen HoG/SVM-Klassifizierungsvorgehens beschreibend das Ablaufdiagramm. Das Vorgehen 1100 beginnt bei Schritt 1102, wo das Vorgehen aus einem Satz von Trainingsbildern eine zufällig-geformte (eine solche wie eine nicht-rechteckige) Silhouette, die einen relevanten Teil eines Bildfensters repräsentiert, erzeugt. Bei Schritt 1104 erzeugt das Vorgehen aus der Silhouette ein zufällig-geformtes (ein solches wie ein nicht-rechteckiges) Bitmuster, das weniger als all die Zellen innerhalb eines rechteckigen Nachweisfensters identifiziert, wobei das rechteckige Nachweisfenster eine vorbestimmte Zellbreite und Zellhöhe aufweist. Bei Schritt 1106 empfängt das Vorgehen ein Bild zur Klassifizierung, wobei das Bild eine Zellbreite und Zellhöhe aufweist. Bei Schritt 1108 wendet das Vorgehen das rechteckige Nachweisfenster auf einen Teil des Bildes mit der Zellbreite und der Zellhöhe des rechteckigen Nachweisfensters an. Dies enthält ein Identifizieren von Zellen innerhalb des Bildteils, die zu den identifizierten Zellen des nicht-rechteckigen Bitmusters passen. Bei Schritt 1110 erzeugt das Vorgehen für jede der innerhalb des Bildteils identifizierten Zellen ein Histogramm von Orientierungen der Pixel innerhalb der Zelle. Bei Schritt 1112 legt das Vorgehen überlappende Zellblöcke fest, von denen jeder Zellblock eine Vielzahl von benachbarten, identifizierten Zellen aus dem Bildteil aufweist. Bei Schritt 1114 erzeugt das Vorgehen für jeden Zellblock einen Deskriptor enthaltend ein Histogramm für jede der identifizierten Zellen in dem Zellblock. Jedes Histogramm innerhalb des Deskriptors wird auf alle der Histogramme innerhalb des Deskriptors normiert. Bei Schritt 1116 legt das Vorgehen die erzeugten Deskriptoren gegenüber dem Satz von Trainingsbildern fest, um zu bestimmen, ob der Bildteil als eine dem Satz von Trainingsbildern zugeordnete Klasse eines Objekts enthaltend zu identifizieren ist.
  • Um die mit einer Speicherung eines Bitmusters verbundenen Speicheranforderungen zu minimieren, könnte es unter Benutzung einer Laufzeit-Codierung für jeden Lauf einer in jeder Zeile des Bitmusters komprimiert werden, wenn es als vorteilhaft bestimmt worden ist. In diesem Fall würde ein Hardware- und/oder Software-Laufzeitdecodierer benutzt werden, um das Bitmuster aus der Laufzeit-codierten Version zu rekonstruieren.
  • Man sollte anerkennen, dass, während einige unterschiedliche Anordnungen hierin beschrieben worden sind, die Merkmale jeder davon vorteilhaft miteinander in einer Vielzahl von Formen kombiniert werden können, um einen Vorteil zu erreichen.
  • In der vorangehenden Beschreibung ist die Anmeldung mit Bezug auf spezifische Beispiele beschrieben worden. Jedoch wird klar werden, dass zahlreiche Modifikationen und Änderungen daran gemacht werden können, ohne den weiteren Gedanken und Umfang der Erfindung wie in den angehängten Patentansprüchen dargelegt zu verlassen. Zum Beispiel können Verbindungen irgendeine Art einer Verbindung, die zur Übertragung von Signalen von oder auf jeweilige Knoten, Einheiten oder Einrichtungen, zum Beispiel über Zwischeneinrichtungen, geeignet ist, sein. Entsprechend, wenn nicht impliziert oder anders dargelegt, können Verbindungen z. B. direkte oder indirekte Verbindungen sein.
  • Es versteht sich, dass die hierin gezeigten Architekturen lediglich beispielhaft sind und dass in der Tat viele andere Architekturen verwirklicht sein können, welche die gleiche Funktionalität erreichen. In einer Zusammenfassung, aber noch in einem bestimmten Sinn, ist jede Anordnung von Komponenten zum Erreichen der gleichen Funktionalität wirksam „verbunden bzw. zugeordnet“, sodass die gewünschte Funktionalität erreicht wird. Somit können irgendwelche zwei hierin zum Erreichen einer besonderen Funktionalität kombinierte Komponenten unabhängig von Architekturen oder Zwischenkomponenten als „miteinander verbunden bzw. zugeordnet“ angesehen werden, sodass die gewünschte Funktionalität erreicht wird. Ähnlich können irgendwelche zwei miteinander verbundenen Komponenten auch als „wirkverbunden“ oder „wirkgekoppelt“ zueinander angesehen werden, um die gewünschte Funktionalität zu erreichen.
  • Weiter erkennen die Fachleute, dass Grenzen zwischen der Funktionalität den oben beschriebenen Operationen lediglich veranschaulichend sind. Die Funktionalität der vielfachen Operationen kann zu einer einzelnen Operation kombiniert und/oder die Funktionalität einer einzelnen Operation kann auf zusätzliche Operationen verteilt werden. Vielmehr können alternative Ausführungsformen Mehrfachinstanzen einer besonderen Operation enthalten, und die Reihenfolge der Operationen kann in verschiedenen anderen Ausführungsformen geändert werden.
  • Jedoch sind andere Modifikationen, Variationen und Alternativen ebenso möglich. Die Beschreibungen und Zeichnungen werden entsprechend in einem illustrativen als vielmehr in einem restriktiven Sinne betrachtet.
  • In den Ansprüchen werden alle in Klammern gesetzten Bezugszeichen nicht als den Anspruch limitierend betrachtet. Das Wort „umfassend“ schließt das Vorhandensein anderer Elemente oder Schritte als die in einem Anspruch aufgelisteten nicht aus. Weiter werden die hierin benutzten Ausdrücke „ein“ oder „eine“ als eine oder mehrere definiert. Ebenso sollte die Benutzung von einführenden Phrasen wie „wenigstens ein“ und „ein oder mehrere“ in den Ansprüchen nicht ausgelegt werden, zu besagen, dass die Einführung eines anderen Anspruchselements durch den unbestimmten Artikel „ein“ oder „eine“ irgendeinen einzelnen Anspruch, der ein so eingeführtes Anspruchselement enthält, auf Erfindungen enthaltend lediglich ein solches Element begrenzt, sogar wenn derselbe Anspruch die einführenden Phrasen „ein“ oder „mehrere“ oder „wenigstens ein“ und unbestimmte Artikel wie „ein“ oder „eine“ enthält. Dasselbe gilt für die Verwendung von bestimmten Artikeln. Wenn nicht anders dargelegt, werden die Ausdrücke wie „erste“ und „zweite“ willkürlich benutzt, um zwischen den Elementen, die derartige Ausdrücke beschreiben, zu unterscheiden. Somit sind diese Ausdrücke nicht notwendigerweise beabsichtigt, eine zeitliche oder andere Priorisierung derartiger Elemente anzuzeigen. Die bloße Tatsache, dass gewisse Maßnahmen in gegenseitig unterschiedlichen Ansprüchen zitiert werden, zeigt nicht an, dass eine Kombination dieser Maßnahmen nicht mit Vorteil benutzt werden kann.
  • 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 Nicht-Patentliteratur
    • „Histogramme orientierter Gradienten zum Nachweis von Menschen", Internationale Konferenz über Rechnervision und Mustererkennung (International Conference on Computer Vision and Pattern Recognition), Bd. 2, S. 886-893, Juni 2005 [0004]
    • Jun-Yan Zhu et al., „Durchschnittserforscher: Interaktive Erforschung und Ausrichtung von visuellen Datensammlungen“ („Average Explorer: Interactive Exploration and Alignment of Visual Data Collections“), ACM Transactions on Graphics, Bd. 33, Nr. 4, August 2014 [0036]
    • „PedCut: ein iterativer Rahmen für Fußgängersegmentation kombinierend Formmodelle und mehrfache Datenaufrufe", Proc. of the British Machine Vision Conference, Bristol, UK, 2013 [0039]

Claims (20)

  1. Computer-implementiertes Verfahren zur Bildklassifizierung umfassend: Erzeugen einer nicht-rechteckigen, einen relevanten Teil eines Bildfensters repräsentierenden Silhouette aus einem Satz von Trainingsbildern, aus der Silhouette Erzeugen eines nicht-rechteckigen, weniger als alle der Zellen innerhalb eines rechteckigen Nachweisfensters identifizierenden Bitmusters, wobei das rechteckige Nachweisfenster eine vorbestimmte Zellbreite und Zellhöhe aufweist, Empfangen eines Bildes zur Klassifizierung, wobei das Bild eine Zellbreite und eine Zellhöhe aufweist, Anwenden des rechteckigen Nachweisfensters auf einen Teil des Bildes mit der Zellbreite und der Zellhöhe des rechteckigen Nachweisfensters, wobei das Anwenden des Nachweisfensters ein Identifizieren von Zellen innerhalb des Bildteils enthält, die zu den identifizierten Zellen des nicht-rechteckigen Bit-Musters passen, für jede der identifizierten Zellen innerhalb des Bildteils Erzeugen eines Histogramms von Orientierungen der Pixel innerhalb der Zelle, Festlegen von überlappenden Zellblöcken, wobei jeder Zellblock eine Vielzahl von benachbarten, identifizierten Zellen aus dem Bildteil aufweist, für jeden Zellblock Erzeugen eines Deskriptors enthaltend ein Histogramm für jede der identifizierten Zellen in dem Zellblock, wobei jedes Histogramm innerhalb des Deskriptors auf alle der Histogramme innerhalb des Deskriptors normiert ist, und Bewertendes des erzeugten Deskriptors gegenüber dem Satz von Trainingsbildern, um zu bestimmen, ob der Bildteil als eine dem Satz der Trainingsbilder zugeordnete Klasse eines Objekts enthaltend zu identifizieren ist.
  2. Verfahren nach Anspruch 1 weiter umfassend: Neu-Skalieren des Bildes auf eine unterschiedliche Zellbreite und Zellhöhe; und Anwenden des rechteckigen Nachweisfensters auf einen Teil des neu-skalierten Bildes mit der Zellbreite und Zellhöhe des rechteckigen Nachweisfensters.
  3. Verfahren nach Anspruch 1, wobei das Erzeugen der nicht-rechteckigen Silhouette eines von Mitteln des Satzes der Trainingsbilder, Anwenden eines Rechnersehvermögen-Algorithmus oder Anwenden eines gründlichen Lernens zum Bestimmen des relevanten Teils des Bildfensters umfasst.
  4. Verfahren nach Anspruch 1, wobei das Erzeugen der nicht-rechteckigen Silhouette umfasst: Bestimmen von Intensitätswerten aller Pixel in jeder Position für jedes Trainingsbild von dem Satz von Trainingsbildern, Addieren der Intensitätswerte all der Pixel für jede Position aus dem Satz der Trainingsbilder, um resultierende Werte zu erzeugen, Dividieren der resultierenden Werte für jede Position aus dem Satz der Trainingsbilder durch eine Anzahl von Trainingsbildern aus dem Satz von Trainingsbildern.
  5. Verfahren nach Anspruch 1, wobei für jede der identifizierten Zellen innerhalb des Bildteils ein Erzeugen eines Histogramms von Orientierungen der Pixel innerhalb der Zelle umfasst: Berechnen von Gradienten, von denen jeder eine Größe und eine entsprechende Orientierung aufweist, Zuordnen jeder entsprechenden Orientierung zu einer Vielzahl von Kästen und Addieren jeder Größe zu der einen der Vielzahl von der entsprechenden Orientierung zugeordneten Kästen.
  6. Verfahren nach Anspruch 1, wobei jeder Zellblock zwei-mal-zwei der benachbarten, identifizierten Zellen aus dem Bildteil umfasst.
  7. Verfahren nach Anspruch 1, wobei das Erzeugen eines Deskriptors für jeden Zellenblock ein Verknüpfen des Histogramms für jede der identifizierten Zellen in dem Zellenblock umfasst.
  8. Verfahren nach Anspruch 1 weiter umfassend ein Bestimmen, dass die Klasse des Objekts eine ist von: einer Person einem Gesicht einer nicht-rechteckigen geometrischen Form oder einer nicht-geometrischen Form.
  9. Recheneinrichtung zur Bildklassifizierung umfassend: einen zum Speichern eines Satzes von Trainingsbildern konfigurierten Speicher, eine nicht-rechteckige Silhouette, die einen relevanten Teil eines Bildfensters aus dem Satz von Trainingsbildern repräsentiert, und ein nicht-rechteckiges Bitmuster, das weniger als alle der Zellen innerhalb eines rechteckigen Nachweisfensters identifiziert, wobei das rechteckige Nachweisfenster eine vorbestimmte Zellbreite und Zellhöhe aufweist, eine mit dem Speicher verbundene Hardware-Beschleunigungsvorrichtung, welche Hardware-Beschleunigungsvorrichtung konfiguriert ist: ein Bild zur Klassifizierung als Eingabe zu empfangen, wobei das Bild eine Zellbreite und eine Zellhöhe aufweist, das gespeicherte, rechteckige Nachweisfenster auf einen Teil des Bildes mit der Zellbreite und der Zellhöhe des rechteckigen Nachweisfensters durch Identifizieren von Zellen innerhalb des Bildteils, die zu den identifizierten Zellen des nicht-rechteckigen Bitmusters passen, anzuwenden, für jede der identifizierten Zellen innerhalb des Bildteils ein Histogramm von Orientierungen der Pixel innerhalb der Zelle zu erzeugen und zu speichern und überlappende Zellblöcke festzulegen, wobei jeder Zellblock eine Vielzahl von benachbarten, identifizierten Zellen aus dem Bildteil aufweist, und einen mit der Hardware-Beschleunigungsvorrichtung und dem Speicher verbundenen Prozessor, wobei der Prozessor konfiguriert ist: für jeden Zellblock einen Deskriptor enthaltend ein Histogramm für jede der identifizierten Zellen in dem Zellblock zu erzeugen, wobei jedes Histogramm innerhalb des Deskriptors auf alle der Histogramme innerhalb des Deskriptors normiert ist, und die erzeugten Deskriptoren gegenüber dem gespeicherten Satz von Trainingsbildern zu bewerten, um zu bestimmen, ob der Bildteil als eine dem Satz von Trainingsbildern zugeordnete Klasse eines Objekts enthaltend zu identifizieren ist.
  10. Recheneinrichtung nach Anspruch 9, wobei die Hardware-Beschleunigungsvorrichtung weiter konfiguriert ist, das Bild auf eine andere Zellbreite und Zellhöhe neu zu skalieren, und das rechteckige Nachweisfenster auf einen Teil des neu-skalierten Bilds mit der Zellbreite und der Zellhöhe des rechteckigen Nachweisfensters anzuwenden.
  11. Recheneinrichtung nach Anspruch 9, wobei wenigstens eines von der Hardware-Beschleunigungsvorrichtung oder dem Prozessor konfiguriert ist: den Satz von Trainingsbildern zu mitteln, und den gemittelten Satz von Trainingsbildern als die nicht-rechteckige Silhouette zu speichern.
  12. Recheneinrichtung nach Anspruch 9, wobei wenigstens eines von der Hardware-Beschleunigungsvorrichtung oder dem Prozessor konfiguriert ist: Intensitätswerte aller Pixel in jeder Position für jedes Trainingsbild aus dem Satz der Trainingsbilder zu bestimmen, die Intensitätswerte all der Pixel für jede Position aus dem Satz der Trainingsbilder zu addieren, um resultierende Werte zu erzeugen, die resultierenden Werte für jede Position aus dem Satz der Trainingsbilder durch eine Anzahl von Trainingsbildern aus dem Satz der Trainingsbilder zu dividieren und die dividierten, resultierenden Werte als die nicht-rechteckige Silhouette zu speichern.
  13. Recheneinrichtung nach Anspruch 9, wobei die zum Erzeugen und Speichern konfigurierte Hardware-Beschleunigungsvorrichtung für jede der identifizierten Zellen innerhalb des Bildteils ein Histogramm von Orientierungen der Pixel innerhalb der Zelle weiter konfiguriert ist: Gradienten zu berechnen, von denen jeder eine Größe und eine korrespondierende Orientierung aufweist, jeder entsprechenden Orientierung einer Vielzahl von Kästen zuzuordnen und jede Größe zu der einen der Vielzahl von der entsprechenden Orientierung zugeordneten Kästen zu addieren.
  14. Recheneinrichtung nach Anspruch 9, wobei der zur Bewertung der erzeugten Deskriptoren gegenüber dem gespeicherten Satz von Trainingsbildern konfigurierte Prozessor weiter konfiguriert ist, zu bestimmen, ob die Klasse des Objekts eine ist von: einer Person, einem Gesicht, einer nicht-rechteckigen geometrischen Form, oder einer nicht-geometrischen Form.
  15. Ein nicht-flüchtiges, computerlesbares Medium mit ausführbaren Befehlen, die betriebsfähig sind, eine Datenverarbeitungs-Einrichtung zu veranlassen, aus einem Satz von Trainingsbildern eine nicht-rechteckige, einen relevanten Teil eines Bildfensters repräsentierende Silhouette zu erzeugen, aus der Silhouette ein nicht-rechteckiges, weniger als alle der Zellen innerhalb eines rechteckigen Nachweisfensters identifizierendes Bitmuster zu erzeugen, wobei das rechteckige Nachweisfenster eine vorbestimmte Zellbreite und Zellhöhe aufweist, ein Bild zur Klassifizierung zu empfangen, wobei das Bild eine Zellbreite und eine Zellhöhe aufweist, das rechteckige Nachweisfenster auf einen Teil des Bildes mit der Zellbreite und Zellhöhe des rechteckigen Nachweisfensters durch Identifizieren von Zellen innerhalb des Bildteils, die zu den identifizierten Zellen des nicht-rechteckigen Bitmusters passen, anzuwenden, für jede der identifizierten Zellen innerhalb des Bildteils ein Histogramm von Orientierungen der Pixel innerhalb der Zelle zu erzeugen, überlappende Zellblöcke festzulegen, von denen jeder Zellblock eine Vielzahl von benachbarten, identifizierten Zellen aus dem Bildteil aufweist, für jeden Zellblock einen Deskriptor enthaltend ein Histogramm für jede der identifizierten Zellen in dem Zellblock zu erzeugen, wobei jedes Histogramm innerhalb des Deskriptors auf alle der Histogramme innerhalb des Deskriptors normiert ist, und die erzeugten Deskriptoren gegenüber dem Satz von Trainingsbildern zu bewerten, um zu bestimmen, ob der Bildabschnitt als eine dem Satz der Trainingsbilder zugeordnete Klasse eines Objekts enthaltend zu identifizieren ist.
  16. Nicht-flüchtiges computerlesbares Medium nach Anspruch 15 weiter umfassend ausführbare Befehle, die operabel sind, die Datenverarbeitungs-Einrichtung zu veranlassen: das Bild auf eine unterschiedliche Zellbreite und Zellhöhe neu zu skalieren, und das rechteckige Nachweisfenster auf einem Teil des neu skalierten Bilds mit der Zellbreite und Zellhöhe des rechteckigen Nachweisfensters anzuwenden.
  17. Nicht-flüchtiges computerlesbares Medium nach Anspruch 15 weiter umfassend ausführbare Befehle, die operabel sind, die Datenverarbeitungs-Einrichtung zu einem von Mitteln des Satzes der Trainingsbilder, Anwenden eines Rechnersehvermögen-Algorithmus oder Anwenden gründlichen Lernens zur Erzeugung der nicht-rechteckigen Silhouette zu veranlassen.
  18. Nicht-flüchtiges computerlesbares Medium nach Anspruch 15 weiter umfassend ausführbare Befehle, die operabel sind, die Datenverarbeitungs-Einrichtung zu veranlassen: Intensitätswerte aller Pixel in jeder Position für jedes Trainingsbild aus dem Satz der Trainingsbilder zu bestimmen, die Intensitätswerte all der Pixel für jede Position aus dem Satz der Trainingsbilder zu addieren, um resultierende Werte zu erzeugen, und die resultierenden Werte für jede Position aus dem Satz der Trainingsbilder durch eine Anzahl von Trainingsbildern aus dem Satz der Trainingsbilder zu dividieren, um die nicht-rechteckige Silhouette zu erzeugen.
  19. Nicht-flüchtiges computerlesbares Medium nach Anspruch 15 weiter umfassend ausführbare Befehle, die operabel sind, die Datenverarbeitungs-Einrichtung zu veranlassen: Gradienten zu berechnen, von denen jeder eine Größe und eine entsprechende Orientierung aufweist, jede entsprechende Orientierung einer Vielzahl von Kästen zuzuordnen und jede Größe zu der einen der Vielzahl von der entsprechenden Orientierung zugeordneten Kästen zu addieren.
  20. Nicht-flüchtiges computerlesbares Medium nach Anspruch 15 weiter umfassend ausführbare Befehle, die operabel sind, die Datenverarbeitungs-Einrichtung zu veranlassen, zu bestimmen, ob die Klasse des Objekts eine ist von: einer Person, einem Gesicht, einer nicht-rechteckigen geometrischen Form, oder einer nicht-geometrischen Form.
DE112016005776.8T 2015-12-17 2016-12-15 Systeme und Verfahren zum Bereitstellen eines Bild-Klassifikators Pending DE112016005776T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/973,272 2015-12-17
US14/973,272 US9639777B1 (en) 2015-12-17 2015-12-17 Systems and methods for providing an image classifier
PCT/IB2016/001890 WO2017103676A1 (en) 2015-12-17 2016-12-15 Systems and methods for providing an image classifier

Publications (1)

Publication Number Publication Date
DE112016005776T5 true DE112016005776T5 (de) 2018-09-13

Family

ID=58191490

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112016005776.8T Pending DE112016005776T5 (de) 2015-12-17 2016-12-15 Systeme und Verfahren zum Bereitstellen eines Bild-Klassifikators

Country Status (5)

Country Link
US (4) US9639777B1 (de)
EP (1) EP3391289A1 (de)
CN (2) CN108780507B (de)
DE (1) DE112016005776T5 (de)
WO (1) WO2017103676A1 (de)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9639777B1 (en) 2015-12-17 2017-05-02 Linear Algebra Technologies Limited Systems and methods for providing an image classifier
WO2017214164A1 (en) 2016-06-06 2017-12-14 Linear Algebra Technologies Limited Improvement of image classification using boundary-bitmaps
US10169647B2 (en) * 2016-07-27 2019-01-01 International Business Machines Corporation Inferring body position in a scan
CN117556888A (zh) 2016-08-19 2024-02-13 莫维迪乌斯有限公司 用于深度学习模型的分布式训练的系统和方法
US11449985B2 (en) * 2016-12-02 2022-09-20 Regents Of The University Of Minnesota Computer vision for cancerous tissue recognition
KR102257226B1 (ko) * 2017-02-16 2021-05-28 현대자동차주식회사 픽토그램 인식 장치, 픽토그램 인식 시스템 및 픽토그램 인식 방법
US11004205B2 (en) * 2017-04-18 2021-05-11 Texas Instruments Incorporated Hardware accelerator for histogram of oriented gradients computation
FR3069087B1 (fr) * 2017-07-11 2019-08-23 Commissariat A L'energie Atomique Et Aux Energies Alternatives Procede de traitement d'une image
CN108108753B (zh) * 2017-12-15 2022-08-19 京北方信息技术股份有限公司 一种基于支持向量机的复选框选择状态的识别方法及装置
CN108520249A (zh) * 2018-04-19 2018-09-11 赵乐 一种细胞分类器的构建方法、装置及系统
CN109491722B (zh) * 2018-11-05 2022-05-03 四川长虹电器股份有限公司 基于微信小程序的柱状图图表插件系统及其实现方法
CN109948432A (zh) * 2019-01-29 2019-06-28 江苏裕兰信息科技有限公司 一种行人检测方法
CN110046652A (zh) * 2019-03-18 2019-07-23 深圳神目信息技术有限公司 人脸质量评估方法、装置、终端及可读介质
US11416661B2 (en) * 2019-08-07 2022-08-16 Synopsys, Inc. Automatic derivation of integrated circuit cell mapping rules in an engineering change order flow
CN111832395A (zh) * 2020-06-01 2020-10-27 厦门理工学院 一种基于人脸识别的教室节能综合控制系统
CN113221915A (zh) * 2021-05-12 2021-08-06 西北工业大学 一种基于视觉的水下集群邻居识别方法

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6753919B1 (en) 1998-11-25 2004-06-22 Iridian Technologies, Inc. Fast focus assessment system and method for imaging
US7711152B1 (en) 1999-04-30 2010-05-04 Davida George I System and method for authenticated and privacy preserving biometric identification systems
US6516087B1 (en) 2000-01-10 2003-02-04 Sensar, Inc. Method for real time correlation of stereo images
KR100374791B1 (ko) 2000-11-22 2003-03-04 삼성전자주식회사 영상의 영역 구분 방법 및 장치
US7333653B2 (en) * 2003-08-29 2008-02-19 Hewlett-Packard Development Company, L.P. Detecting and correcting redeye in an image
US8081818B2 (en) 2004-09-15 2011-12-20 Adobe Systems Incorporated Locating a feature in a digital image
US7454058B2 (en) 2005-02-07 2008-11-18 Mitsubishi Electric Research Lab, Inc. Method of extracting and searching integral histograms of data samples
US8170293B2 (en) * 2006-09-15 2012-05-01 Identix Incorporated Multimodal ocular biometric system and methods
US8165397B2 (en) * 2006-12-04 2012-04-24 Lockheed Martin Company Identifying descriptor for person or object in an image
US7756296B2 (en) 2007-03-27 2010-07-13 Mitsubishi Electric Research Laboratories, Inc. Method for tracking objects in videos using forward and backward tracking
JP2009010636A (ja) 2007-06-27 2009-01-15 Sony Deutsche Gmbh 適応ヒストグラム等化方法及び適応ヒストグラム等化装置
US8131074B2 (en) 2008-09-11 2012-03-06 Raytheon Company Specific emitter identification using histogram of oriented gradient features
JP4626692B2 (ja) * 2008-09-12 2011-02-09 ソニー株式会社 物体検出装置、撮像装置、物体検出方法およびプログラム
US8706663B2 (en) * 2009-02-04 2014-04-22 Honeywell International Inc. Detection of people in real world videos and images
US8750573B2 (en) * 2010-08-02 2014-06-10 Sony Corporation Hand gesture detection
US8898169B2 (en) * 2010-11-10 2014-11-25 Google Inc. Automated product attribute selection
US8463073B2 (en) 2010-11-29 2013-06-11 Microsoft Corporation Robust recovery of transform invariant low-rank textures
CN102161202B (zh) * 2010-12-31 2012-11-14 中国科学院深圳先进技术研究院 全景监控机器人系统、监控机器人
US20150170385A1 (en) 2012-06-22 2015-06-18 Google Inc. Editing a feature within a map
US20130346855A1 (en) 2012-06-22 2013-12-26 Google Inc. Providing differentiated display of a map feature
CN103218831B (zh) * 2013-04-21 2015-11-18 北京航空航天大学 一种基于轮廓约束的视频运动目标分类识别方法
CN103902976B (zh) * 2014-03-31 2017-12-29 浙江大学 一种基于红外图像的行人检测方法
US9436987B2 (en) * 2014-04-30 2016-09-06 Seiko Epson Corporation Geodesic distance based primitive segmentation and fitting for 3D modeling of non-rigid objects from 2D images
US9443320B1 (en) * 2015-05-18 2016-09-13 Xerox Corporation Multi-object tracking with generic object proposals
US9639777B1 (en) 2015-12-17 2017-05-02 Linear Algebra Technologies Limited Systems and methods for providing an image classifier

Also Published As

Publication number Publication date
US11600059B2 (en) 2023-03-07
US10248884B2 (en) 2019-04-02
WO2017103676A1 (en) 2017-06-22
US9639777B1 (en) 2017-05-02
CN114612978A (zh) 2022-06-10
US11037020B2 (en) 2021-06-15
US20190340464A1 (en) 2019-11-07
EP3391289A1 (de) 2018-10-24
CN108780507A (zh) 2018-11-09
US20210374464A1 (en) 2021-12-02
CN108780507B (zh) 2022-03-29
US20170277972A1 (en) 2017-09-28

Similar Documents

Publication Publication Date Title
DE112016005776T5 (de) Systeme und Verfahren zum Bereitstellen eines Bild-Klassifikators
Kim et al. Nonnegative tucker decomposition
US10185895B1 (en) Systems and methods for classifying activities captured within images
CN106991665B (zh) 基于cuda图像融合并行计算的方法
DE102018108324A1 (de) System und Verfahren zur Schätzung eines optischen Flusses
DE102019130889A1 (de) Schätzung der tiefe eines mit einer monokularen rgb-kamera aufgenommenen videodatenstroms
DE102019130702A1 (de) Stilbasierte architektur für generative neuronale netzwerke
DE102017124573A1 (de) Systeme und verfahren zum beschneiden von neuronalen netzen für eine betriebsmitteleffiziente folgerung
DE102016100101A1 (de) System zum maschinellen sehen und analytisches verfahren zur segmentierung planarer oberflächen
DE102019102009A1 (de) Reduzierung des rauschens während des renderings durch parallele path-space-filterung unter verwendung von hashing
DE102015121339A1 (de) Systeme und verfahren zum ermitteln eines zustands einer fahrbahn
CN111127631A (zh) 基于单图像的三维形状和纹理重建方法、系统及存储介质
DE112014005109T5 (de) Support-Vector-Maschine-Basiertes Objekterkennungsystem und assoziiertes Verfahren
WO2022155933A1 (en) Accelerated training of neural radiance fields-based machine learning models
DE102019106996A1 (de) Darstellen eines neuronalen netzwerks unter verwendung von pfaden innerhalb des netzwerks zum verbessern der leistung des neuronalen netzwerks
DE102019122402A1 (de) Das klassifizieren von zeitreihenbilddaten
DE102019108733A1 (de) Schnelle mehrskalige Punktwolkenregistrierung mit einer hierarchischen Gauß-Mischung
DE112016005482T5 (de) Objektdetektion mit adaptiven Kanalmerkmalen
DE102022121509A1 (de) Einzelbild-inversrendering
Diego Andilla et al. Learning multi-level sparse representations
DE102023101265A1 (de) Objekterfassung bei Bildstromverarbeitung unter Verwendung von optischem Fluss mit dynamischen Regionen von Interesse
DE102022104121A1 (de) Künstliche neuronale netze erzeugt durch sequenzen mit geringer diskrepanz
DE102017009118A1 (de) Bildabgleich für serienbilder
DE102018128592A1 (de) Erzeugen eines Bilds unter Verwendung einer Map, die verschiedene Klassen von Pixeln repräsentiert
CN112580442B (zh) 一种基于多维金字塔层次模型的行为识别方法

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R081 Change of applicant/patentee

Owner name: MOVIDIUS LIMITED, IE

Free format text: FORMER OWNER: LINEAR ALGEBRA TECHNOLOGIES LTD., DUBLIN, IE

R082 Change of representative

Representative=s name: SAMSON & PARTNER PATENTANWAELTE MBB, DE

R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06K0009460000

Ipc: G06V0030180000

R016 Response to examination communication