DE102020107383A1 - Objekterkennung und Führen eines Fahrzeugs - Google Patents

Objekterkennung und Führen eines Fahrzeugs Download PDF

Info

Publication number
DE102020107383A1
DE102020107383A1 DE102020107383.6A DE102020107383A DE102020107383A1 DE 102020107383 A1 DE102020107383 A1 DE 102020107383A1 DE 102020107383 A DE102020107383 A DE 102020107383A DE 102020107383 A1 DE102020107383 A1 DE 102020107383A1
Authority
DE
Germany
Prior art keywords
field
initial
image
camera
rotation parameter
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
DE102020107383.6A
Other languages
English (en)
Inventor
Prashanth Viswanath
Ciaran Hughes
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.)
Connaught Electronics Ltd
Original Assignee
Connaught Electronics 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 Connaught Electronics Ltd filed Critical Connaught Electronics Ltd
Priority to DE102020107383.6A priority Critical patent/DE102020107383A1/de
Priority to PCT/EP2021/056632 priority patent/WO2021185812A1/en
Publication of DE102020107383A1 publication Critical patent/DE102020107383A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/103Static body considered as a whole, e.g. static pedestrian or occupant recognition
    • 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/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • 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/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • 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)
  • Multimedia (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Image Analysis (AREA)

Abstract

Gemäß einem Verfahren zur Objekterkennung wird eine Recheneinheit (3) dazu benutzt, ein Bild (5) von einer Kamera (4) zu erhalten und das Bild (5) in eine Vielzahl von Zellen zu unterteilen und eine der Zellen auszuwählen. Die Recheneinheit (3) wird dazu benutzt, ein Begrenzungsfeld (6b) für ein Objekt (7) auf dem Bild (5) durch Anpassen eines Ankerfeldes (8b) an das Objekt (7) zu bestimmen, wobei sich wenigstens ein Teil des Objekts (7) in der ausgewählten Zelle befindet. Die Recheneinheit (3) wird dazu benutzt, einen Rotationsparameter von einem Speichermedium (9) abzurufen und das Ankerfeld (8b) durch Rotieren eines initialen Ankerfeldes zu bestimmen oder das Begrenzungsfeld (8b) durch Rotieren eines initialen Begrenzungsfelds (8a) zu bestimmen.

Description

  • Die vorliegende Erfindung betrifft ein Verfahren zur Objekterkennung, wobei eine Recheneinheit dazu benutzt wird, ein Bild von einer Kamera zu erhalten und das Bild in eine Vielzahl von Zellen zu unterteilen und eine der Zellen auszuwählen und ein Begrenzungsfeld für ein Objekt auf dem Bild durch Anpassen eines Ankerfeldes an das Objekt zu bestimmen, wobei sich wenigstens ein Teil des Objekts in der ausgewählten Zelle befindet. Die Erfindung betrifft des Weiteren ein entsprechendes Verfahren zum wenigstens teilweise automatischen Führen eines Fahrzeugs, ein elektronisches Fahrzeugführungssystem und ein Computerprogrammprodukt.
  • Deep Learning kann zum Beispiel zur Objekterkennung, -klassifikation oder -segmentierung benutzt werden. Es kann für verschiedene Fahrerassistenzanwendungen oder autonomes Fahren benutzt werden. Zur Objekterkennung und Fußgängererkennung können beispielsweise Einzelaufnahmedetektoren verwendet werden.
  • Derartige Detektoren können ein Bild in mehrere kleinere Zellen unterteilen und weisen innerhalb dieser Zellen einen vordefinierten Satz an Ankern (englisch: „anchors“) auf, die dazu benutzt werden, die Objekte, die innerhalb dieser Zelle liegen, anzupassen. Diese Anker gehen davon aus, dass die Objekte vertikal sind und auf einer flachen Bodenebene stehen. Eine Beschreibung derartiger Detektoren findet sich in M. Hollemans: „One-stage object detection“, 9. Juni 2018, https://machinethink.net/blog/object-detection, abgerufen am 11. November 2019.
  • Jedoch ist die Annahme, dass die Objekte vertikal sind und auf einer flachen Bodenebene stehen, nur in dem Fall sinnvoll, dass es in dem Bild weder Verzerrung noch perspektivische Effekte gibt. Daher funktionieren die erwähnten Objekterkennungsalgorithmen nur gut für geradlinige Projektionen oder dergleichen, bei denen die abgebildeten Objekte vertikal sind und die Bodenebene flach ist. Die Verwendung einer nicht-geradlinigen Kamera kann jedoch zu gekrümmten Bildern von Objekten führen, die in der realen Welt vertikale oder horizontale Geraden sind, wie etwa der Boden. Des Weiteren, können abhängig von der Position und Orientierung der Kamera hinsichtlich der Umgebung des Fahrzeugs, vertikale oder horizontale Linien in der realen Welt im Bild schräg erscheinen.
  • Daher sind die bestehenden Herangehensweisen, beispielsweise zum Bestimmen eines Begrenzungsfelds (englisch: „bounding box“) für ein Objekt auf dem Bild, in ihrer Genauigkeit eingeschränkt. Dies kann in der Folge zu weniger zuverlässiger oder konservativerer Objekterkennung oder Abstandsschätzung basierend auf dem nichtoptimalen Begrenzungsfeld führen.
  • Es ist daher Aufgabe der vorliegenden Erfindung, ein verbessertes Konzept zur Objekterkennung bereitzustellen, welches die Genauigkeit der Objekterkennung, insbesondere eines Begrenzungsfelds für ein Objekt in der Umgebung, verbessert.
  • Diese Aufgabe wird durch den jeweiligen Gegenstand der unabhängigen Ansprüche gelöst. Weitere Ausführungen und bevorzugte Ausführungsbeispiele sind Gegenstand der abhängigen Ansprüche.
  • Das verbesserte Konzept beruht auf der Idee, eine im gesamten Bild konstante Referenzrichtung, wie eine vertikale oder horizontale Richtung, durch eine lokal variierende oder positionsabhängige Referenzrichtung oder, insbesondere, eine lokal abhängige vertikale oder horizontale Richtung, zu ersetzen. Zu diesem Zweck wird ein Ankerfeld (englisch: „anchor box“) an das Objekt angepasst, um ein Begrenzungsfeld zu bestimmen. Anders als bei bekannten Herangehensweisen wird das Ankerfeld oder das Begrenzungsfeld durch Rotieren eines initialen Ankerfeldes beziehungsweise eines initialen Begrenzungsfelds von einem lokal abhängigen Winkel oder Rotationsparameter bestimmt.
  • Gemäß dem verbesserten Konzept wird ein Verfahren zur Objekterkennung bereitgestellt. Gemäß dem Verfahren wird eine Recheneinheit, insbesondere eine Recheneinheit eines Fahrzeugs, dazu benutzt, ein Bild von einer Kamera, insbesondere einer Kamera des Fahrzeugs, zu erhalten und die Recheneinheit wird dazu benutzt, das Bild in eine Vielzahl von Zellen zu unterteilen und eine Zelle aus der Vielzahl von Zellen auszuwählen. Die Recheneinheit wird dazu benutzt, ein Begrenzungsfeld für ein Objekt auf dem Bild durch Anpassen eines Ankerfeldes an das Objekt zu bestimmen, wobei sich wenigstens ein Teil des Objekts in der ausgewählten Zelle befindet. Die Recheneinheit wird dazu benutzt, einen vorbestimmten Rotationsparameter von einem Speichermedium, insbesondere von einem Speichermedium der Recheneinheit oder der Kamera oder eines elektronischen Fahrzeugführungssystems des Fahrzeugs, abzurufen, wobei der Rotationsparameter, insbesondere der Wert des Rotationsparameters, von einer Position der ausgewählten Zelle innerhalb des Bildes abhängt.
  • Die Recheneinheit wird dazu benutzt, das Ankerfeld durch Rotieren eines vordefinierten initialen Ankerfeldes abhängig von dem Rotationsparameter zu bestimmen. Alternativ wird die Recheneinheit dazu benutzt, das Begrenzungsfeld durch Rotieren eines initialen Begrenzungsfelds abhängig von dem Rotationsparameter zu bestimmen, wobei das initiale Begrenzungsfeld insbesondere durch Anpassen des initialen Ankerfeldes an das Objekt bestimmt wird.
  • Das Unterteilen des Bildes in die Vielzahl von Zellen kann derart verstanden werden, dass dem Bild ein vordefiniertes Gitter, beispielsweise ein rechtwinkliges oder quadratisches Gitter, überlagert wird.
  • Die beschriebenen Schritte des Auswählens einer Zelle, des Bestimmens des Begrenzungsfelds, des Abrufens des Rotationsparameters und des Bestimmens des Ankerfeldes oder des Begrenzungsfelds durch Rotation des initialen Ankerfeldes beziehungsweise des initialen Begrenzungsfelds können beispielsweise für alle der Gitterzellen ausgeführt werden, vorausgesetzt ein Objekt oder ein Teil eines Objekts befindet sich in der entsprechenden Zelle.
  • Folglich betreffen die oben beschriebenen Verfahrensschritte eine spezifische Zelle der Vielzahl von Zellen, nämlich die ausgewählte Zelle, kann aber für alle anderen Zellen ebenso ausgeführt werden, um die Objekterkennung auf dem gesamten Bild durchzuführen.
  • Das Ankerfeld kann zu einem Satz an Ankerfeldern gehören, die der jeweiligen ausgewählten Zelle zugeordnet sind. Jedes Ankerfeld des Satzes kann als typisches oder potenzielles Begrenzungsfeld für im Bild zu erwartende Objekte verstanden werden. Zum Beispiel können die verschiedenen Ankerfelder des Satzes von Ankerfeldern der ausgewählten Zelle verschiedene Größen und/oder verschiedene Formen haben.
  • Insbesondere kann das Ankerfeld eine rechteckige oder quadratische Form haben. Dies ist jedoch nicht notwendigerweise der Fall. Es ist ausreichend, dass das Ankerfeld eine wohldefinierte Orientierung aufweist, die, im Falle eines Rechtecks, durch die Richtung einer der Seiten des Rechtecks gegeben sein kann. Im Falle von anderen Formen können jedoch andere wohldefinierte Orientierungen definiert sein.
  • Das initiale Ankerfeld kann auch ein initiales Ankerfeld eines Satzes von initialen Ankerfeldern sein, die der ausgewählten Zelle zugeordnet sind. Dabei können die jeweiligen Sätze an initialen Ankerfeldern für alle Zellen des Gitters identisch sein. Dies könnte für die verschiedenen Sätze von Ankerfeldern verschiedener Zellen nicht der Fall sein, die in manchen Ausführungen von den jeweiligen Rotationsparametern abhängen können.
  • Das Anpassen des Ankerfeldes an das Objekt kann zum Beispiel verstanden werden als Auswählen des Ankerfeldes des jeweiligen Satzes von Ankerfeldern, das am besten zu dem Objekt passt. Mit anderen Worten kann das Anpassen des Ankerfeldes dem Auswählen des optimalen Ankerfeldes aus dem Satz von Ankerfeldern oder einer Minimierung eines Fehlers zum Annähern des Objekts durch das jeweilige Ankerfeld entsprechen.
  • Insbesondere entspricht der Rotationsparameter einem Rotationswinkel hinsichtlich einer vordefinierten Referenzrichtung, die global für das gesamte Bild definiert ist. Mit anderen Worten ist die Referenzrichtung für alle Zellen gleich. Falls das Bild zum Beispiel insgesamt eine rechteckige Form hat, kann die Referenzrichtung der vertikalen oder horizontalen Richtung gemäß einer der Seiten des Bildes entsprechen. Dieses ist im Falle eines rechteckigen Gitters äquivalent dazu, eine Gitterrichtung als die Referenzrichtung zu wählen.
  • Bestimmen des Begrenzungsfelds für das Objekt kann als eine Objekterkennungsaufgabe verstanden werden. Die Objekterkennung kann weitere Aufgaben (englisch: „tasks“) beinhalten oder nicht. Insbesondere kann die Objekterkennung Bestimmen weiterer Begrenzungsfelder für weitere Objekte auf dem Bild beinhalten, insbesondere in gleicher Weise wie für das Begrenzungsfeld und die ausgewählte Zelle beschrieben.
  • In manchen Ausführungen kann die Objekterkennung auch weitere Aufgaben basierend auf dem Begrenzungsfeld oder unter Verwendung des Begrenzungsfelds beinhalten, wie etwa Objektverfolgungs- oder Segmentierungsaufgaben.
  • Das Bestimmen des Begrenzungsfelds durch Anpassen des Ankerfeldes an das Objekt kann zum Beispiel durch Anwenden eines trainierten Algorithmus, insbesondere eines Algorithmus, der auf maschinellem Lernen und/oder maschinellem Sehen (englisch: „computer vision“) beruht, auf das Bild oder die individuellen Zellen, ausgeführt werden.
  • Dem Algorithmus kann zum Beispiel der vordefinierte Rotationsparameter bereitgestellt werden. Alternativ kann das Bestimmen des Rotationsparameters Teil des Algorithmus sein.
  • Der trainierte Algorithmus kann zum Beispiel auf einem trainierten künstlichen neuronalen Netzwerk, zum Beispiel einem faltenden neuronalen Netzwerk, CNN, basieren.
  • Wie beschrieben verwendet ein Verfahren gemäß dem verbesserten Konzept effektiv lokale Ankerfelder oder lokale Begrenzungsfelder mit positionsabhängigen Orientierungen hinsichtlich der Referenzrichtung. Auf diese Weise können Abweichungen von der Annahme betreffend vertikale Objekte auf flachem Grund in dem Bild ausgeglichen werden, was eine größere Genauigkeit des Begrenzungsfeldes und der Objekterkennung zum Ergebnis hat.
  • Insbesondere kann es sein, dass die Kamera aus verschiedenen Gründen nicht notwendigerweise horizontale oder vertikale Linien in der realen Welt auf horizontale beziehungsweise vertikale Linien in dem Bild abbildet. Ein Grund hierfür kann sein, dass die Kamera eine nicht-geradlinige (englisch: „non-rectilinear“) Kamera, wie etwa eine Fischaugenkamera, ist. Derartige Kameras bilden im Allgemeinen gerade Linien in der realen Welt nicht auf gerade Linien in dem Bild ab. Daher ist die oben geäußerte Annahme in diesem Fall intrinsisch falsch. Ein anderer Grund kann sein, dass, auch bei geradlinigen Kameras, vertikale Objekte oder horizontale Objekte in der realen Welt sich aufgrund perspektivischer Effekte nicht notwendigerweise auf vertikale Bilder oder horizontale Bilder des besagten Objekts abbilden. Mit anderen Worten kann dies der Fall sein, wenn das Objekt nicht auf einer optischen Achse der Kamera liegt. Beide Ungenauigkeitsquellen können durch das verbesserte Konzept ausgeglichen werden.
  • Folglich können genauere Begrenzungsfelder und daher eine zuverlässigere Objekterkennung erreicht werden.
  • Eine nicht-geradlinige Kamera kann als eine Kamera mit einer nicht-geradlinigen Linse oder Linseneinheit verstanden werden. Eine nicht-geradlinige Linse oder Linseneinheit kann verstanden werden als eine Linse oder Linseneinheit, das heißt eine oder mehrere Linsen, die eine nicht-geradlinige Abbildungsfunktion haben, auch als krummlinige (englisch: „curvilinear“) Abbildungsfunktion bezeichnet. Insbesondere stellen Fischaugenkameras nicht-geradlinige Kameras dar.
  • Die Abbildungsfunktion der Linse oder Linseneinheit kann verstanden werden als eine Funktion r(θ), die einen Winkel θ von der optischen Achse der Linse oder Linseneinheit bis zu einem radialen Versatz r aus der Bildmitte abbildet. Die Funktion hängt parametrisch von der Brennweite f der Linse oder Linseneinheit ab.
  • Zum Beispiel hat eine geradlinige Linse oder Linseneinheit eine gnomonische Abbildungsfunktion, insbesondere r(θ) = f tan(θ). Mit anderen Worten bildet eine geradlinige Linse oder Linseneinheit gerade Linien in der realen Welt auf gerade Linien in dem Bild ab, zumindest bis auf Linsenungenauigkeiten.
  • Eine nicht-geradlinige oder krummlinige Linseneinheit bildet im Allgemeinen gerade Linien nicht auf gerade Linien im Bild ab. Insbesondere kann die Abbildungsfunktion einer nicht-geradlinigen Kamera stereographisch, äquidistant, raumwinkelgleich oder orthographisch sein. Andere Beispiele für Abbildungsfunktionen nicht-geradliniger Linseneinheiten sind Polynomfunktionen.
  • Begrenzungsfelder können zum Beispiel dazu benutzt werden, den Abstand zwischen der Kamera und dem Objekt zu bestimmen. Im Falle eines unkorrekten oder ungenauen Begrenzungsfelds kann der Abstand geringer eingeschätzt werden als er tatsächlich ist. Dies führt zu pessimistischen Abstandsschätzungen, zum Beispiel im Falle von Automobilanwendungen. Das verbesserte Konzept kann daher auch zu weniger pessimistischen Abstandsschätzungen führen. Dies kann besonders vorteilhaft sein im Zusammenhang mit teil- oder vollautonomen Fahr- oder Parkanwendungen.
  • Gemäß einigen Ausführungen des Verfahrens gemäß dem verbesserten Konzept wird die Kamera dazu benutzt, das Bild zu erzeugen. Gemäß einigen Ausführungen, wird die Recheneinheit dazu benutzt, einen Abstand zwischen dem Objekt und der Kamera abhängig von dem Begrenzungsfeld zu schätzen.
  • Insbesondere kann die Recheneinheit dazu benutzt werden, die Position eines Fußpunktes oder Referenzpunktes des Begrenzungsfelds zu bestimmen und den Abstand zwischen der Kamera und dem Objekt abhängig von der Position des Fußpunkts oder Referenzpunkts zu schätzen. Im Falle eines rechteckigen Begrenzungsfelds kann der Fußpunkt zum Beispiel einem Punkt auf einer unteren Seite des Rechtecks, insbesondere einem Mittelpunkt der unteren Seite, entsprechen.
  • Gemäß mehreren Ausführungen wird die Recheneinheit dazu benutzt, das initiale Ankerfeld abhängig von dem Rotationsparameter zu rotieren, um das Ankerfeld zu bestimmen. Danach, das heißt nach dem Rotieren des initialen Ankerfeldes, wird die Recheneinheit dazu benutzt, das Begrenzungsfeld durch Anpassen des rotierten initialen Ankerfeldes an das Objekt zu bestimmen.
  • Bei derartigen Ausführungen entspricht das zum Bestimmen des Begrenzungsfelds benutzte Ankerfeld dem rotierten initialen Ankerfeld.
  • Bei derartigen Ausführungen ist nur ein Begrenzungsfeld pro Zelle beteiligt, nämlich das basierend auf dem rotierten initialen Ankerfeld bestimmte Begrenzungsfeld.
  • Derartige Ausführungen erlauben die größte Genauigkeit beim Bestimmen des Begrenzungsfelds, da der trainierte Algorithmus zum Beispiel basierend auf den rotierten initialen Ankerfeldern trainiert wird.
  • Gemäß einigen Ausführungen wird ein Begrenzungsfeldalgorithmus, insbesondere unter Verwendung einer Trainingsrecheneinheit, basierend auf Trainingsbildern und auf den rotierten Ankerfeldern trainiert. Die Recheneinheit wird dazu benutzt, den trainierten Begrenzungsfeldalgorithmus auf das Bild anzuwenden, um das Begrenzungsfeld durch Anpassen des rotierten initialen Ankerfeldes an das Objekt zu bestimmen.
  • Der Begrenzungsfeldalgorithmus kann zum Beispiel das neuronale Netzwerk oder das CNN beinhalten.
  • Insbesondere wird das Trainieren basierend auf allen rotierten initialen Ankerfeldern aller Zellen der Vielzahl von Zellen durchgeführt.
  • Wie oben beschrieben erlauben derartige Ausführungen höchste Genauigkeit beim Bestimmen des Begrenzungsfelds.
  • Gemäß einigen Ausführungen wird die Recheneinheit dazu benutzt, das initiale Begrenzungsfeld durch Anpassen des initialen Ankerfeldes an das Objekt zu bestimmen. Danach, das heißt nach dem Bestimmen des initialen Begrenzungsfelds, wird die Recheneinheit dazu benutzt, das Begrenzungsfeld durch Rotieren des initialen Begrenzungsfelds abhängig von dem Rotationsparameter zu bestimmen.
  • Bei derartigen Ausführungen entspricht das initiale Ankerfeld dem Ankerfeld, welches zum Bestimmen des Begrenzungsfelds benutzt wird.
  • Derartige Ausführungen können den Vorteil haben, dass das Verfahren zum Nachbearbeiten (englisch: „post processing“) verwendet werden kann, falls der Begrenzungsfeldalgorithmus selbst nicht modifiziert werden kann oder soll.
  • Gemäß einigen Ausführungen wird der Begrenzungsfeldalgorithmus, insbesondere durch die Trainingsrecheneinheit, basierend auf Trainingsbildern und auf den initialen Ankerfeldern trainiert. Die Recheneinheit wird dazu benutzt, den Trainingsbegrenzungsfeldalgorithmus auf das Bild anzuwenden, um das initiale Begrenzungsfeld durch Anpassen des initialen Ankerfeldes an das Objekt zu bestimmen.
  • Insbesondere wird das Trainieren basierend auf allen initialen Ankerfeldern aller Zellen der Vielzahl von Zellen durchgeführt.
  • Der Rotationsparameter wird dann erst benutzt, nachdem das Trainieren abgeschlossen ist. Folglich sind derartige Ausführungen zum Nachbearbeiten von den Begrenzungsfeldern in den Bildern geeignet.
  • Gemäß einigen Ausführungen wird die Recheneinheit dazu benutzt, einen initialen Punkt, welcher der ausgewählten Zelle zugeordnet ist, auf einer Bildebene der Kamera auszuwählen. Die Recheneinheit wird dazu benutzt, einen Projektionsvektor zu erzeugen, der von einem Projektionszentrum der Kamera zu einem Projektionspunkt zeigt, wobei eine Abbildungsfunktion der Kamera den Projektionspunkt auf den initialen Punkt abbildet. Die Recheneinheit wird dazu benutzt, den Rotationsparameter abhängig von dem Projektionsvektor zu bestimmen.
  • Insbesondere wird die Recheneinheit dazu benutzt, den Rotationsparameter auf dem Speichermedium zu speichern.
  • Der initiale Punkt auf der Bildebene ist durch zweidimensionale Koordinaten auf der Bildebene gegeben und ist insbesondere unabhängig von jeglichen in dem Bild enthaltenen Informationen. Der initiale Punkt entspricht nur einer Position und hat keinen dem Bild entsprechenden Informationsgehalt.
  • Zum Beispiel entspricht die Bildebene einer aktiven Oberfläche oder einem Teil der aktiven Oberfläche eines Bildsensors der Kamera.
  • Dass der initiale Punkt der Zelle zugeordnet ist, kann so verstanden werden, dass der initiale Punkt eine wohldefinierte Position hinsichtlich der Zelle hat, beispielsweise einem Mittelpunkt der Zelle, einem Eckpunkt der Zelle oder einem Punkt in definiertem Verhältnis zum Mittelpunkt oder Eckpunkt entspricht.
  • Das Projektionszentrum der Kamera entspricht einem Projektionszentrum einer Linse der Kamera. Zum Beispiel kann das Projektionszentrum der Mitte der Linse entsprechen.
  • Da die Abbildungsfunktion den Projektionspunkt auf den initialen Punkt abbildet, wird der initiale Punkt durch die Umkehrfunktion der Abbildungsfunktion auf den Projektionspunkt abgebildet. Mit anderen Worten, falls der initiale Punkt bekannt ist, kann der Projektionspunkt durch Anwenden der Umkehrfunktion auf den initialen Punkt bestimmt werden.
  • Die Abbildungsfunktion wird insbesondere vorab bestimmt, das heißt bevor das Verfahren gemäß dem verbesserten Konzept ausgeführt wird. Die Abbildungsfunktion kann während einer Kalibrierphase der Kamera bestimmt werden. Die Abbildungsfunktion kann auf dem Speicherelement gespeichert werden. Die Abbildungsfunktion kann auch als einer oder mehrere intrinsische Kalibrierparameter der Kamera erachtet werden.
  • Im Falle einer geradlinigen Kamera zeigt der Projektionsvektor auch von dem initialen Punkt zu dem Projektionszentrum. Bei einer nicht-geradlinige Kamera kann es jedoch sein, dass dies nicht der Fall ist.
  • Insbesondere kann der Projektionsvektor als ein gebundener Vektor verstanden werden.
  • Gemäß einigen Ausführungen wird die Recheneinheit dazu benutzt, einen Referenzvektor abhängig von einer Pose der Kamera zu bestimmen und eine Projektionsebene zu konstruieren, die den Referenzvektor und den Projektionsvektor enthält, und den Rotationsparameter abhängig von der Projektionsebene zu bestimmen.
  • Die Pose der Kamera ist durch eine Position und eine Orientierung der Kamera gegeben. Insbesondere entspricht die Pose der Position und Orientierung eines Sensorkoordinatensystems der Kamera hinsichtlich eines Referenzkoordinatensystems, zum Beispiel eines starr mit einem Fahrzeug verbundenen Referenzkoordinatensystems, an dem die Kamera montiert sein kann.
  • Die Pose ist daher durch sechs Parameter gegeben, einschließlich dreier translatorischer Parameter, die die Position der Kamera definieren, insbesondere den translatorischen Versatz des Sensorkoordinatensystems hinsichtlich des Referenzkoordinatensystems in den drei Raumdimensionen. Die sechs Parameter umfassen des Weiteren drei Winkelparameter, die zum Beispiel durch einen Rollwinkel, einen Nickwinkel und einen Gierwinkel gegeben sein können.
  • Rollwinkel, Nickwinkel und Gierwinkel können als Rotationswinkel oder Euler-Winkel des Sensorkoordinatensystems hinsichtlich des Referenzkoordinatensystems gemäß einer vordefinierten Konvention definiert sein. Die Konvention kann zum Beispiel darin bestehen, dass das Sensorkoordinatensystem aus dem Referenzkoordinatensystem aufgrund der folgenden drei Rotationen resultiert. Dabei wird davon ausgegangen, dass die Sensorkoordinatensysteme und das Referenzkoordinatensystem anfänglich miteinander identisch sind. Das Sensorkoordinatensystem wird um den Gierwinkel um die z-Achse des Referenzkoordinatensystems rotiert. Danach wird das resultierende Sensorkoordinatensystem um den Nickwinkel um die resultierende y-Achse des resultierenden Sensorkoordinatensystems rotiert. Danach wird das resultierende Sensorkoordinatensystem um den Rollwinkel um die resultierende x-Achse des resultierenden Sensorkoordinatensystems rotiert. Andere Konventionen sind ebenso möglich.
  • Das Referenzkoordinatensystem kann starr mit einem Host-Objekt verbunden sein, an welchem die Kamera montiert ist, wobei das Host-Objekt das Fahrzeug sein kann.
  • Die Pose, insbesondere die die Pose definierenden sechs Parameter, können auch als extrinsische Kalibrierparameter erachtet werden.
  • Der Referenzvektor entspricht der Richtung, hinsichtlich welcher der Rotationsparameter definiert sein soll. Zum Beispiel kann der Referenzvektor eine vertikale Richtung in der realen Welt, einer vertikalen Achse im Referenzkoordinatensystem oder einer vertikalen Achse des Sensorkoordinatensystems entsprechen.
  • Der Referenzvektor ist insbesondere ein gebundener Vektor.
  • Insbesondere kann der Referenzvektor einer gemäß dem Rollwinkel, dem Nickwinkel und dem Gierwinkel rotierten Achse des Referenzkoordinatensystems entsprechen.
  • Der Referenzvektor hat denselben Ursprung wie der Projektionsvektor, nämlich das Projektionszentrum. Die Projektionsebene enthält daher auch das Projektionszentrum.
  • Durch die jeweiligen Ausführungen werden die intrinsische Kalibrierungsinformation sowie die extrinsische Kalibrierungsinformation der Kamera berücksichtigt, um eine besonders hohe Genauigkeit zu erzielen.
  • Gemäß einigen Ausführungen wird die Recheneinheit dazu benutzt, den Referenzvektor abhängig von einer Orientierung der Kamera, insbesondere unabhängig von einer Position der Kamera, zu bestimmen.
  • Mit anderen Worten kann der Referenzvektor abhängig von dem Rollwinkel, dem Nickwinkel und dem Gierwinkel bestimmt werden.
  • Gemäß einigen Ausführungen wird die Recheneinheit dazu benutzt, die Projektionsebene abhängig von der Abbildungsfunktion auf eine Linie in der Bildebene abzubilden. Die Recheneinheit wird dazu benutzt, eine Tangentialrichtung der Linie an dem initialen Punkt zu bestimmen und den Rotationsparameter abhängig von der Tangentialrichtung zu bestimmen.
  • Mit anderen Worten entspricht die Tangentialrichtung in dem Sinne dem Rotationsparameter, dass die Tangentialrichtung einen Winkel mit dem Referenzvektor einschließt, der dem Rotationswinkel entspricht.
  • Das Abbilden der Projektionsebene abhängig von der Abbildungsfunktion entspricht dem Abbilden eines jeden Punkts auf der Projektionsebene durch Anwenden der Abbildungsfunktion auf diesen Punkt. Da die Projektionsebene das Projektionszentrum enthält, wird die Ebene auf eine Linie in der Bildebene abgebildet.
  • Die Linie kann abhängig von der Abbildungsfunktion gerade oder gekrümmt sein. Insbesondere kann die Linie bei einer geradlinigen Kamera gerade sein, während sie bei einer nicht-geradlinigen Kamera gekrümmt sein kann. Per Konstruktion liegt auch der initiale Punkt auf der Linie.
  • In derartigen Ausführungen wird die Tangente zum initialen Punkt als eine lokale Referenzrichtung benutzt, die in den jeweiligen Ausführungen einer lokalen vertikalen Richtung oder horizontalen Richtung der ausgewählten Zelle entsprechen kann.
  • Gemäß einigen Ausführungen wird die Recheneinheit dazu benutzt, einen ersten Hilfsvektor und einen zweiten Hilfsvektor zu bestimmen. Beide Hilfsvektoren haben das Projektionszentrum als jeweilige Ursprünge und liegen innerhalb der Projektionsebene. Beide Hilfsvektoren schließen denselben vordefinierten Winkel mit dem Projektionsvektor ein. Die Recheneinheit wird dazu benutzt, abhängig von der Abbildungsfunktion jeweilige Endpunkte beider Vektoren auf jeweilige abgebildete Punkte auf der Bildebene abzubilden. Die Recheneinheit wird dazu benutzt, den Rotationsparameter abhängig von einer geraden Linie, die die abgebildeten Punkte miteinander verbindet, zu bestimmen.
  • Dass die Hilfsvektoren denselben Winkel mit dem Projektionsvektor einschließen, kann so verstanden werden, dass die absoluten Werte der jeweiligen mit dem Projektionsvektor eingeschlossenen Winkel gleich sind.
  • Die den Abbildungspunkt verbindende Gerade ist per Konstruktion eine Annäherung an die Tangentialrichtung der oben beschriebenen Linie an dem initialen Punkt. Folglich muss der Winkel „klein genug“ sein. Mit anderen Worten nimmt der Fehler, der durch Näherung der Tangentialrichtung durch die Gerade, welche die Abbildungspunkte verbindet, mit zunehmendem absoluten Wert des Winkels zu.
  • Derartige Ausführungen können eingesetzt werden, falls ein exakter Ausdruck oder eine geschlossene parametrische Darstellung der Linie, die der abgebildeten Projektionsebene entspricht, nicht verfügbar ist oder nicht bestimmt werden kann. Des Weiteren können derartige Ausführungen den rechnerischen Aufwand zur Bestimmung des Rotationsparameters reduzieren.
  • Gemäß einigen Ausführungen wird die Recheneinheit dazu benutzt, das Ankerfeld durch Rotieren des initialen Ankerfeldes abhängig von dem Rotationsparameter zu bestimmen. Das Ankerfeld, und insbesondere auch das initiale Ankerfeld, hat die Form eines Rechtecks, wobei eine Seite des Rechtecks parallel zur Tangentialrichtung oder zur ungefähren Tangentialrichtung verläuft, die durch die Gerade gegeben ist, welche die abgebildeten Punkte verbindet.
  • Gemäß einigen Ausführungen wird die Recheneinheit dazu benutzt, das Begrenzungsfeld durch Rotieren des initialen Begrenzungsfelds abhängig von dem Rotationsparameter zu bestimmen. Das Begrenzungsfeld, und insbesondere auch das initiale Begrenzungsfeld, hat die Form eines Rechtecks, wobei eine Seite des Rechtecks parallel zur Tangentialrichtung oder zur genäherten Tangentialrichtung verläuft, die durch die Gerade gegeben ist, welche die abgebildeten Punkte verbindet.
  • Gemäß einigen Ausführungen werden die Schritte Abrufen des Rotationsparameters und Bestimmen des Ankerfeldes durch Rotieren des vordefinierten initialen Ankerfeldes oder Bestimmen des Begrenzungsfelds durch Rotieren des initialen Begrenzungsfelds sowie der Schritt Bestimmen des Begrenzungsfelds durch Anpassen des Ankerfeldes für jede Zelle der Vielzahl von Zellen durchgeführt.
  • Folglich können für das Bestimmen des Rotationsparameters beschriebene Schritte auch für jede der Zellen der Vielzahl von Zellen durchgeführt werden.
  • Gemäß dem verbesserten Konzept wird auch ein Verfahren zum wenigstens teilweise automatischen Führen eines Fahrzeugs bereitgestellt. Eine Kamera des Fahrzeugs wird dazu benutzt, ein die Umgebung des Fahrzeugs darstellendes Bild zu erzeugen, und das Fahrzeug wird abhängig von einem Begrenzungsfeld für ein Objekt auf dem Bild, insbesondere unter Verwendung eines elektronischen Fahrzeugführungssystems, wenigstens teilweise automatisch geführt. Um das Begrenzungsfeld zu bestimmen, wird ein Verfahren zur Objekterkennung gemäß dem verbesserten Konzept, insbesondere durch das elektronische Fahrzeugführungssystem, ausgeführt.
  • Gemäß einigen Ausführungen des Verfahrens zum Führen eines Fahrzeugs ist das Verfahren als ein Verfahren zum wenigstens teilweise automatischen Parken des Fahrzeugs ausgestaltet.
  • Für Parkanwendungen ist das verbesserte Konzept besonders geeignet, da zu pessimistische Abstandsschätzungen, wie oben beschrieben, vermieden werden können.
  • Gemäß dem verbesserten Konzept wird auch ein elektronisches Fahrzeugführungssystem, welches eine Recheneinheit umfasst, bereitgestellt. Die Recheneinheit ist dazu eingerichtet, ein Bild von einer Kamera zu erhalten und das Bild in eine Vielzahl von Zellen zu unterteilen und eine Zelle aus der Vielzahl von Zellen auszuwählen. Die Recheneinheit ist dazu eingerichtet, ein Begrenzungsfeld für ein Objekt auf dem Bild durch Anpassen eines Ankerfeldes an das Objekt zu bestimmen, wobei sich wenigstens ein Teil des Objekts in der ausgewählten Zelle befindet. Die Recheneinheit ist dazu eingerichtet, einen vordefinierten Rotationsparameter von einem Speichermedium abzurufen, insbesondere von einem Speichermedium der Recheneinheit oder der Kamera oder des elektronischen Fahrzeugführungssystems abzurufen, wobei der Rotationsparameter von einer Position der ausgewählten Zelle innerhalb des Bildes abhängt. Die Recheneinheit ist dazu eingerichtet, das Ankerfeld durch Rotieren eines vordefinierten initialen Ankerfeldes abhängig von dem Rotationsparameter zu bestimmen oder das Begrenzungsfeld durch Rotieren eines initialen Begrenzungsfelds abhängig von dem Rotationsparameter zu bestimmen.
  • Ein elektronisches Fahrzeugführungssystem kann als ein elektronisches System verstanden werden, welches dazu eingerichtet ist, ein Fahrzeug vollautomatisch oder vollautonom und insbesondere, ohne dass ein manuelles Eingreifen oder Steuern durch einen Fahrer oder Benutzer des Fahrzeugs notwendig wäre, zu führen. Das Fahrzeug führt erforderliche Lenkmanöver, Bremsmanöver und/oder Beschleunigungsmanöver und so weiter automatisch aus. Insbesondere kann das elektronische Fahrzeugführungssystem einen vollautomatischen oder vollautonomen Fahrmodus gemäß Stufe 5 der SAE J3016 Klassifikation implementieren. Ein elektronisches Fahrzeugführungssystem kann auch als ein Fahrerassistenzsystem, ADAS, implementiert sein, welches einem Fahrer beim teilautomatischen oder teilautonomen Fahren assistiert. Insbesondere kann das elektronische Fahrzeugführungssystem einen teilautomatischen oder teilautonomen Fahrmodus gemäß den Stufen 1 bis 4 der SAE J3016 Klassifikation implementieren. Hier und im Folgenden bezieht sich SAE J3016 auf den entsprechenden Standard mit Datum vom Juni 2018.
  • Ein wenigstens teilweise automatisches Führen des Fahrzeugs kann daher als Führen des Fahrzeugs gemäß einem vollautomatischen oder vollautonomen Fahrmodus nach Stufe 5 der SAE J3016 Klassifikation beinhalten. Ein wenigstens teilweise automatisches Führen des Fahrzeugs kann auch als Führen des Fahrzeugs gemäß einem teilautomatischen oder teilautonomen Fahrmodus nach den Stufen 1 bis 4 der SAE J3016 Klassifikation beinhalten.
  • Gemäß einigen Ausführungen des elektronischen Fahrzeugführungssystems beinhaltet das Fahrzeugführungssystem die Kamera und die Kamera ist als eine nicht-geradlinige Kamera, insbesondere als eine Fischaugenkamera, ausgestaltet.
  • Weitere Ausführungen des elektronischen Fahrzeugführungssystems ergeben sich direkt aus den verschiedenen Ausführungen des Verfahrens zur Objekterkennung gemäß dem verbesserten Konzept und aus den verschiedenen Ausführungen des Verfahrens zum Führen eines Fahrzeugs gemäß dem verbesserten Konzept beziehungsweise umgekehrt. Insbesondere kann das elektronische Fahrzeugführungssystem dazu eingerichtet oder programmiert sein, ein Verfahren gemäß dem verbesserten Konzept durchzuführen oder das elektronische Fahrzeugführungssystem führt ein derartiges Verfahren durch.
  • Gemäß dem verbesserten Konzept wird auch ein Befehle beinhaltendes Computerprogramm bereitgestellt.
  • Gemäß einigen Ausführungen des Computerprogramms veranlassen die Befehle, wenn sie von einem Computersystem ausgeführt werden, das Computersystem dazu, ein Verfahren gemäß dem verbesserten Konzept auszuführen.
  • Das Computersystem kann eine oder mehrere Recheneinheiten umfassen, zum Beispiel die Recheneinheit des elektronischen Fahrzeugführungssystems und optional die Trainingsrecheneinheit.
  • Gemäß einigen Ausführungen des Computerprogramms, veranlassen die Befehle, wenn sie von einem elektronischen Fahrzeugführungssystem gemäß dem verbesserten Konzept ausgeführt werden, insbesondere von der Recheneinheit des Fahrzeugsystems, das Fahrzeugführungssystem dazu, ein Verfahren gemäß dem verbesserten Konzept auszuführen.
  • Gemäß dem verbesserten Konzept wird auch ein computerlesbares Speichermedium, welches ein Computerprogramm gemäß dem verbesserten Konzept speichert, bereitgestellt.
  • Das Computerprogramm sowie das computerlesbare Speichermedium gemäß dem verbesserten Konzept können als entsprechende Computerprogrammprodukte betrachtet werden, die die Befehle beinhalten.
  • Weitere Merkmale der Erfindung ergeben sich aus den Ansprüchen, den Figuren und der Figurenbeschreibung. Die vorstehend in der Beschreibung genannten Merkmale und Merkmalskombinationen sowie die nachfolgend in der Figurenbeschreibung genannten und/oder in den Figuren alleine gezeigten Merkmale und Merkmalskombinationen sind nicht nur in der jeweils angegebenen Kombination, sondern auch in anderen Kombinationen verwendbar, ohne den Rahmen der Erfindung zu verlassen. Es sind somit auch Ausführungen von der Erfindung als umfasst und offenbart anzusehen, die in den Figuren nicht explizit gezeigt und erläutert sind, jedoch durch separierte Merkmalskombinationen aus den erläuterten Ausführungen hervorgehen und erzeugbar sind. Es sind auch Ausführungen und Merkmalskombinationen als offenbart anzusehen, die somit nicht alle Merkmale eines ursprünglich formulierten unabhängigen Anspruchs aufweisen. Es sind darüber hinaus Ausführungen und Merkmalskombinationen, insbesondere durch die oben dargelegten Ausführungen, als offenbart anzusehen, die über die in den Rückbezügen der Ansprüche dargelegten Merkmalskombinationen hinausgehen oder davon abweichen.
  • In den Figuren zeigen
    • 1 schematisch ein Fahrzeug mit einer beispielhaften Ausführung eines elektronischen Fahrzeugführungssystems gemäß dem verbesserten Konzept;
    • 2 ein Flussdiagramm einer beispielhaften Ausführung eines Verfahrens gemäß dem verbesserten Konzept;
    • 3 ein Flussdiagramm einer weiteren beispielhaften Ausführung eines Verfahrens gemäß dem verbesserten Konzept; und
    • 4 ein Flussdiagramm einer weiteren Ausführung eines Verfahrens gemäß dem verbesserten Konzept.
  • In 1 ist ein Fahrzeug 1 mit einem elektronischen Fahrzeugführungssystem 2 gemäß dem verbesserten Konzept gezeigt.
  • Das Fahrzeugführungssystem 2 umfasst eine Recheneinheit 3, die Teil einer elektronischen Recheneinheit, ECU, des Fahrzeugs 1 sein kann oder eine solche umfassen kann. Das Fahrzeugführungssystem 2 umfasst des Weiteren eine Kamera 4, zum Beispiel eine Fischaugenkamera. Das Fahrzeugführungssystem 2 oder das Fahrzeug 1 umfasst des Weiteren ein Speichermedium 9, welches mit der Recheneinheit 3 gekoppelt ist.
  • Die Funktionalität des Fahrzeugführungssystems 2 wird im Folgenden genauer hinsichtlich der Ausführungen der Verfahren gemäß dem verbesserten Konzept und insbesondere mit Bezug auf 2 bis 4 erläutert.
  • 2 zeigt ein Flussdiagramm einer beispielhaften Ausführung eines Verfahrens zur Objekterkennung gemäß dem verbesserten Konzept.
  • In Schritt S1 erzeugt die Kamera 4 ein Bild 5 einer Umgebung des Fahrzeugs 1 und stellt es der Recheneinheit 3 bereit. Die Recheneinheit 3 unterteilt das Bild 5 in eine Vielzahl von Zellen und wählt eine von ihnen aus.
  • Die Recheneinheit 3 wählt einen initialen Punkt P auf einer Bildebene 10 der Kamera 4 aus, welcher der ausgewählten Zelle zugeordnet ist. Die Bildebene 10 kann zum Beispiel der aktiven Oberfläche eines Bildsensors der Kamera 4 oder einem Teil der aktiven Oberfläche entsprechen.
  • Zum Beispiel kann der initiale Punkt P einem Zentrum der ausgewählten Zelle entsprechen, welche zum Beispiel eine rechteckige oder quadratische Zelle sein kann.
  • Die Recheneinheit 3 erzeugt einen Projektionsvektor P, der von einem Projektionszentrum C der Kamera 4 zu einem Projektionspunkt zeigt. Der Projektionspunkt entspricht einem Punkt in der realen Welt, welcher aus dem Anwenden der Umkehrfunktion einer Abbildungsfunktion der Kamera 4 auf den initialen Punkt P resultiert. Mit anderen Worten bildet die Abbildungsfunktion der Kamera 4 den Projektionspunkt auf den initialen Punkt P ab. Falls die Kamera 4 eine nicht-geradlinige Kamera ist, wie etwa eine Fischaugenkamera, ist die Abbildungsfunktion eine nichtgnomonische Funktion.
  • Die Recheneinheit 3 bestimmt einen Referenzvektor V abhängig von einer Pose, insbesondere einer Orientierung der Kamera 4 hinsichtlich eines Fahrzeugkoordinatensystems, welches starr mit dem Fahrzeug verbunden ist.
  • Insbesondere kann der Referenzvektor V einer vertikalen Achse eines Sensorkoordinatensystems entsprechen, das starr mit der Kamera verbunden ist, wie in 2 dargestellt. Die Recheneinheit 3 konstruiert eine Projektionsebene, die den Referenzvektor V und den Projektionsvektor P enthält. Zum Beispiel kann die Projektionsebene durch ihren normalen Vektor N gegeben durch N = P x V definiert sein, wobei „x“ das Vektorprodukt oder Kreuzprodukt darstellt. Per Konstruktion liegt das Projektionszentrum C auf der Projektionsebene.
  • Des Weiteren kann die Projektionsebene als vertikal betrachtet werden, falls der Referenzvektor V als eine globale vertikale Richtung aufgefasst wird.
  • In Schritt S2 wird die Projektionsebene dann von der Recheneinheit 3 in die Bildebene 10 zurückprojiziert. Zu diesem Zweck wird die Projektionsebene abhängig von der Abbildungsfunktion auf eine Linie 11 in der Bildebene 10 abgebildet. Mit anderen Worten wird die Abbildungsfunktion von der Recheneinheit 3 auf jeden der Punkte auf der Projektionsebene oder auf eine entsprechend diskretisierte Projektionsebene angewendet, um diese Punkte auf der Bildebene 10 abzubilden.
  • Danach bestimmt die Recheneinheit 3 eine Tangentialrichtung 12 der Linie 11 an dem initialen Punkt P, welcher per Konstruktion auf der Linie 11 liegt.
  • Insbesondere kann die Recheneinheit 3 abhängig von der Abbildungsfunktion dazu imstande sein, eine exakte oder parametrische Darstellung der Linie 11 zu bestimmen und die Tangentialrichtung 12 basierend auf dieser Darstellung zu berechnen.
  • In Schritt S3 bestimmt die Recheneinheit 3 abhängig von der Tangentialrichtung 12 den Rotationsparameter für die ausgewählte Zelle. Mit anderen Worten entspricht der Winkel, den die Tangentialrichtung mit dem Referenzvektor V einschließt, einem Winkel, der den Rotationsparameter definiert.
  • Ein initiales Ankerfeld 8a, welches einem Rechteck entspricht, das gemäß dem vertikalen Referenzvektor V ausgerichtet ist, wird durch den Rotationsparameter rotiert, um ein rotiertes Ankerfeld 8b zu erhalten.
  • Die beschriebenen Schritte können für alle Zellen der Vielzahl von Zellen wiederholt werden.
  • Ein Begrenzungsfeldalgorithmus kann basierend auf Trainingsbildern und den rotierten Ankerfeldern 8b für alle Zellen trainiert werden.
  • In Schritt S4 kann die Recheneinheit 3 den trainierten Begrenzungsfeldalgorithmus auf das Bild 5 anwenden, um das Begrenzungsfeld 6b durch Anpassen des Begrenzungsfeldalgorithmus 8b an das Objekt 7 zu bestimmen.
  • In Schritt S5 kann die Recheneinheit abhängig von dem Begrenzungsfeld 6b das Fahrzeug 1 wenigstens teilweise automatisch steuern.
  • In 3 ist ein Flussdiagramm einer weiteren beispielhaften Ausführung eines Verfahrens zur Objekterkennung gemäß dem verbesserten Konzept gezeigt. Das Verfahren gemäß 3 basiert auf dem Verfahren gemäß 2. Daher sind nur Unterschiede erläutert.
  • Gemäß 3 bestimmt die Recheneinheit 3 zusätzlich zum Projektionsvektor P einen ersten Hilfsvektor P1 und einen zweiten Hilfsvektor P2. Die Hilfsvektoren P1, P2 haben das Projektionszentrum C als Ursprung und liegen innerhalb der Projektionsebene. Sie schließen denselben vordefinierten Winkel α hinsichtlich des Projektionsvektors P ein.
  • Des Weiteren bildet die Recheneinheit 3 in Schritt S2a die jeweiligen Endpunkte der Hilfsvektoren P1, P2 auf jeweilige abgebildete Punkte P1, P2 auf der Bildebene 10 ab. In Schritt S2b bestimmt die Recheneinheit 3 eine Gerade, welche die abgebildeten Punkte P1, P2 miteinander verbindet, und interpretiert diese Gerade als eine Annäherung an die Tangentialrichtung 12.
  • Die Schritte S2a und S2b können die jeweiligen Verfahrensschritte zum Bestimmen der Tangentialrichtung 12, wie hinsichtlich 2 erläutert, ersetzen.
  • Schritte S3 bis S5 sind dieselben wie sie hinsichtlich 2 beschrieben wurden. Sie sind daher in 3 nicht explizit gezeigt.
  • 4 zeigt ein Flussdiagramm einer weiteren beispielhaften Ausführungsform eines Verfahrens zur Objekterkennung gemäß dem verbesserten Konzept.
  • Die Schritte S1 bis S3 sind identisch mit den Schritten S1 bis S3 gemäß dem hinsichtlich 2 beschriebenen Verfahren oder mit den Schritten S1, S2a, S2b und S3, wie sie hinsichtlich 3 beschrieben sind.
  • Gemäß dem Verfahren aus 4 wendet die Recheneinheit 3 jedoch einen trainierten Begrenzungsfeldalgorithmus auf das Bild 5 an, um ein initiales Begrenzungsfeld 6a durch Anpassen des initialen, nicht-rotierten Ankerfeldes 8a an das Objekt 7 zu bestimmen.
  • In Schritt S7 bestimmt die Recheneinheit 3 danach abhängig von dem Rotationsparameter das Begrenzungsfeld 6b durch Rotieren des initialen Begrenzungsfelds 6a.
  • Auf diese Weise kann, falls nötig, die vorgeschlagene Herangehensweise als ein Nachbearbeitungsschritt angewendet werden.
  • Wie beschrieben kann gemäß dem verbesserten Konzept Objekterkennung und insbesondere Bestimmung des Begrenzungsfelds mit verbesserter Genauigkeit und Zuverlässigkeit für verschiedene Posen der Kamera und für beliebige Abbildungsfunktionen der Kamera durchgeführt werden.
  • Mittels des verbesserten Konzepts kann die Komplexität eines jeweiligen Begrenzungsfeldalgorithmus, zum Beispiel eines CNN, gering gehalten werden.
  • Der Rotationsparameter kann zum Beispiel durch intrinsische und/oder extrinsische Kalibrierungsinformationen erhalten werden und kann dazu benutzt werden, rotierte Felder zur Objekterkennung vorherzusagen. Basierend auf den intrinsischen und/oder extrinsischen Kalibrierungsinformationsparametern der Kamera kann der Rotationswinkel des Zentrums jeder Zelle wie beschrieben berechnet werden. Dies kann dann beispielsweise verwendet werden, um einen Satz rotierter Anker für jede Zelle zu erhalten. Im Falle von Echtzeitbeschränkungen der Rechenressourcen kann der Rotationswinkel zum Beispiel einmalig offline berechnet werden und als eine Look-Up-Tabelle gespeichert werden.
  • Wie beschrieben ist das verbesserte Konzept vorteilhaft bei nicht-geradlinigen Kameras, kann aber auch dazu verwendet werden, unabhängig von der Abbildungsfunktion der Kamera perspektivische Effekte auszugleichen.
  • In manchen Ausführungen kann das verbesserte Konzept als ein Nachbearbeiten realisiert sein. In einem solchen Szenario kann ein Objektdetektions-CNN angewendet werden und die Rotationswinkel können gemäß dem verbesserten Konzept berechnet werden. Danach kann das Begrenzungsfeld dann rotiert werden.
  • Gemäß dem verbesserten Konzept braucht der Rotationswinkel nicht diskretisiert zu werden. Da der Rotationswinkel aus den Kalibrierungsparametern selbst erhalten werden kann, muss der Rotationswinkel nicht vorab diskretisiert werden. Dies erlaubt eine sehr genaue Darstellung von Objekten.

Claims (15)

  1. Verfahren zur Objekterkennung, wobei eine Recheneinheit (3) dazu benutzt wird, - ein Bild (5) von einer Kamera (4) zu erhalten und das Bild (5) in eine Vielzahl von Zellen zu unterteilen und eine der Zellen auszuwählen; und - ein Begrenzungsfeld (6b) für ein Objekt (7) auf dem Bild (5) durch Anpassen eines Ankerfeldes (8b) an das Objekt (7) zu bestimmen, wobei sich wenigstens ein Teil des Objekts (7) in der ausgewählten Zelle befindet; dadurch gekennzeichnet, dass die Recheneinheit (3) dazu benutzt wird, - einen Rotationsparameter von einem Speichermedium (9) abzurufen, wobei der Rotationsparameter von einer Position der ausgewählten Zelle innerhalb des Bildes (5) abhängt; und - das Ankerfeld (8b) durch Rotieren eines vordefinierten initialen Ankerfeldes (6a) abhängig von dem Rotationsparameter zu bestimmen oder das Begrenzungsfeld (8b) durch Rotieren eines initialen Begrenzungsfeldes (8a) abhängig von dem Rotationsparameter zu bestimmen.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Recheneinheit (4) dazu benutzt wird, - das initiale Ankerfeld (8a) abhängig von dem Rotationsparameter zu rotieren; - und danach das Begrenzungsfeld (8b) durch Anpassen des rotierten initialen Ankerfeldes (8b) an das Objekt (7) zu bestimmen.
  3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, dass - ein Begrenzungsfeldalgorithmus basierend auf Trainingsbildern und basierend auf den rotierten Ankerfeldern (8b) trainiert wird; und - die Recheneinheit (3) dazu benutzt wird, den trainierten Begrenzungsfeldalgorithmus auf das Bild (5) anzuwenden, um das Begrenzungsfeld (6b) durch Anpassen des rotierten initialen Ankerfeldes (8b) an das Objekt (7) zu bestimmen.
  4. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Recheneinheit (3) dazu benutzt wird, - das initiale Begrenzungsfeld (6a) durch Anpassen des initialen Ankerfeldes (8a) an das Objekt (7) zu bestimmen; - und danach das Begrenzungsfeld (6b) durch Rotieren des initialen Begrenzungsfelds (6a) abhängig von dem Rotationsparameter zu bestimmen.
  5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, dass - ein Begrenzungsfeldalgorithmus basierend auf Trainingsbildern und den initialen Ankerfeldern (6a) trainiert wird; und - die Recheneinheit (3) dazu benutzt wird, den trainierten Begrenzungsfeldalgorithmus auf das Bild (5) anzuwenden, um das initiale Begrenzungsfeld (6a) durch Anpassen des initialen Ankerfeldes (8a) an das Objekt (7) zu bestimmen.
  6. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Recheneinheit (3) dazu benutzt wird, - einen initialen Punkt (P), welcher der ausgewählten Zelle zugeordnet ist, auf einer Bildebene (10) der Kamera (4) auszuwählen; - einen Projektionsvektor (P) zu erzeugen, der von einem Projektionszentrum (C) der Kamera (4) zu einem Projektionspunkt zeigt, wobei eine Abbildungsfunktion der Kamera (4) den Projektionspunkt auf den initialen Punkt (P) abbildet; und - den Rotationsparameter abhängig von dem Projektionsvektor (P) zu bestimmen.
  7. Verfahren nach Anspruch 6, dadurch gekennzeichnet, dass die Recheneinheit (3) dazu benutzt wird, - einen Referenzvektor (V) abhängig von einer Pose der Kamera (4) zu bestimmen; - eine Projektionsebene zu konstruieren, die den Referenzvektor (V) und den Projektionsvektor (P) enthält; und - den Rotationsparameter abhängig von der Projektionsebene zu bestimmen.
  8. Verfahren nach Anspruch 7 dadurch gekennzeichnet, dass die Recheneinheit (3) dazu benutzt wird, - die Projektionsebene abhängig von der Abbildungsfunktion auf eine Linie (11) in der Bildebene (10) abzubilden; - eine Tangentialrichtung (12) der Linie (11) an dem initialen Punkt (P) zu bestimmen; und - den Rotationsparameter abhängig von der Tangentialrichtung (12) zu bestimmen.
  9. Verfahren nach Anspruch 7, dadurch gekennzeichnet, dass die Recheneinheit (3) dazu benutzt wird, - einen ersten Hilfsvektor (P1) und einen zweiten Hilfsvektor (P2) zu bestimmen, wobei beide Hilfsvektoren (P1, P2) das Projektionszentrum (C) als einen Ursprung haben und innerhalb der Projektionsebene liegen und denselben vordefinierten Winkel (a) mit dem Projektionsvektor (P) einschließen; - jeweilige Endpunkte beider Hilfsvektoren (P1, P2) abhängig von der Abbildungsfunktion auf jeweilige abgebildete Punkte (P1, P2) auf der Bildebene (10) abzubilden; - den Rotationsparameter abhängig von einer Geraden, die die Abbildungspunkte (P1, P2) miteinander verbindet, zu bestimmen.
  10. Verfahren nach Anspruch 8, dadurch gekennzeichnet, dass - die Recheneinheit dazu benutzt wird, das Ankerfeld (8b) durch Rotieren des initialen Ankerfeldes (8a) abhängig von dem Rotationsparameter zu bestimmen; und - das Ankerfeld (8b) die Form eines Rechtecks hat, wobei eine Seite des Rechtecks parallel zur Tangentialrichtung (12) verläuft.
  11. Verfahren nach Anspruch 8, dadurch gekennzeichnet, dass - die Recheneinheit (3) dazu benutzt wird, das Begrenzungsfeld (6b) durch Rotieren des initialen Begrenzungsfelds (6a) abhängig von dem Rotationsparameter zu bestimmen; und - das Begrenzungsfeld (6b) die Form eines Rechtecks hat, wobei eine Seite des Rechtecks parallel zur Tangentialrichtung (12) verläuft.
  12. Verfahren zum wenigstens teilweise automatischen Führen eines Fahrzeugs, wobei - eine Kamera (4) des Fahrzeugs (1) dazu benutzt wird, ein Bild (5) zu erzeugen, welches eine Umgebung des Fahrzeugs (1) darstellt; und - das Fahrzeug (1) abhängig von einem Begrenzungsfeld (6b) für ein Objekt (7) auf dem Bild (5) wenigstens teilweise automatisch geführt wird; dadurch gekennzeichnet, dass ein Verfahren zur Objekterkennung nach einem der Ansprüche 1 bis 11 ausgeführt wird, um das Begrenzungsfeld (6b) zu bestimmen.
  13. Elektronisches Fahrzeugführungssystem umfassend eine Recheneinheit (3), welche dazu eingerichtet ist, - ein Bild (5) von einer Kamera (4) zu erhalten und das Bild (5) in eine Vielzahl von Zellen zu unterteilen und eine der Zellen auszuwählen; und - ein Begrenzungsfeld (6b) für ein Objekt (7) auf dem Bild (5) durch Anpassen eines Ankerfeldes (8b) an das Objekt (7) zu bestimmen, wobei sich wenigstens ein Teil des Objekts (7) in der ausgewählten Zelle befindet; dadurch gekennzeichnet, dass die Recheneinheit (3) dazu eingerichtet ist, - einen Rotationsparameter von einem Speichermedium (9) abzurufen, wobei der Rotationsparameter von einer Position der ausgewählten Zelle innerhalb des Bilds (5) abhängt; und - das Ankerfeld (8b) durch Rotieren eines vordefinierten initialen Ankerfeldes (8a) abhängig von dem Rotationsparameter zu bestimmen oder das Begrenzungsfeld (6b) durch Rotieren eines initialen Begrenzungsfelds (6a) abhängig von dem Rotationsparameter zu bestimmen.
  14. Elektronisches Fahrzeugführungssystem nach Anspruch 13, dadurch gekennzeichnet, dass das Fahrzeugführungssystem (2) die Kamera (4) beinhaltet und die Kamera (4) als eine nicht-geradlinige Kamera, insbesondere als eine Fischaugenkamera, ausgebildet ist.
  15. Computerprogrammprodukt, welches Befehle beinhaltet, die, - wenn sie von einem Computersystem ausgeführt werden, das Computersystem dazu veranlassen, ein Verfahren nach einem der Ansprüche 1 bis 11 durchzuführen; und/oder - wenn sie von einem elektronischen Fahrzeugführungssystem (2) nach einem der Ansprüche 13 oder 14 ausgeführt werden, das Fahrzeugführungssystem (2) dazu veranlassen, ein Verfahren nach einem der Ansprüche 1 bis 12 durchzuführen.
DE102020107383.6A 2020-03-18 2020-03-18 Objekterkennung und Führen eines Fahrzeugs Pending DE102020107383A1 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE102020107383.6A DE102020107383A1 (de) 2020-03-18 2020-03-18 Objekterkennung und Führen eines Fahrzeugs
PCT/EP2021/056632 WO2021185812A1 (en) 2020-03-18 2021-03-16 Object detection and guiding a vehicle

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102020107383.6A DE102020107383A1 (de) 2020-03-18 2020-03-18 Objekterkennung und Führen eines Fahrzeugs

Publications (1)

Publication Number Publication Date
DE102020107383A1 true DE102020107383A1 (de) 2021-09-23

Family

ID=75111574

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102020107383.6A Pending DE102020107383A1 (de) 2020-03-18 2020-03-18 Objekterkennung und Führen eines Fahrzeugs

Country Status (2)

Country Link
DE (1) DE102020107383A1 (de)
WO (1) WO2021185812A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102022119751A1 (de) 2022-08-05 2024-02-08 Connaught Electronics Ltd. Bestimmen eines Bereichs von Interesse aus Kamerabildern

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116862980B (zh) * 2023-06-12 2024-01-23 上海玉贲智能科技有限公司 图像边缘的目标检测框位置优化校正方法、系统、介质及终端

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017182225A1 (en) * 2016-04-21 2017-10-26 Osram Gmbh Training method and detection method for object recognition

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
CHIANG, An-Ti; WANG, Yao. Human detection in fish-eye images using HOG-based detectors over rotated windows. In: 2014 IEEE International Conference on Multimedia and Expo Workshops (ICMEW). IEEE, 2014. S. 1-6
LI, Shengye, et al. Supervised people counting using an overhead fisheye camera. In: 2019 16th IEEE International Conference on Advanced Video and Signal Based Surveillance (AVSS). IEEE, 2019. S. 1-8
TAMURA, Masato; HORIGUCHI, Shota; MURAKAMI, Tomokazu. Omnidirectional pedestrian detection by rotation invariant training. In: 2019 IEEE winter conference on applications of computer vision (WACV). IEEE, 2019. S. 1989-1998

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102022119751A1 (de) 2022-08-05 2024-02-08 Connaught Electronics Ltd. Bestimmen eines Bereichs von Interesse aus Kamerabildern

Also Published As

Publication number Publication date
WO2021185812A1 (en) 2021-09-23

Similar Documents

Publication Publication Date Title
DE102017105635A1 (de) System und verfahren zum erzeugen einer hybriden kameraansicht in einem fahrzeug
EP3488419B1 (de) Fahrassistenzverfahren, fahrassistenzsystem und fahrzeug
WO2015173092A1 (de) Verfahren und vorrichtung zur kalibrierung eines kamerasystems eines kraftfahrzeugs
DE102020107383A1 (de) Objekterkennung und Führen eines Fahrzeugs
DE102018100909A1 (de) Verfahren zum Rekonstruieren von Bildern einer Szene, die durch ein multifokales Kamerasystem aufgenommen werden
DE102014114221A1 (de) Verfahren zum Detektieren von einem Objekt in einem Umgebungsbereich eines Kraftfahrzeugs, Fahrerassistenzsystem und Kraftfahrzeug
DE102016114284A1 (de) Parklückenerkennungsvorrichtung und verfahren zur steuerung derselben
DE102019132996A1 (de) Schätzen einer dreidimensionalen Position eines Objekts
DE102015220031A1 (de) Verfahren zur Konfidenzabschätzung für optisch-visuelle Posenbestimmung
DE112020006935T5 (de) Verfahren und gerät zur parkplatzerkennung sowie vorrichtung und speichermedium
DE102008046505B4 (de) Verfahren zur Bildverarbeitung von Stereobildern
DE102017219688A1 (de) Verfahren zur Kalibrierung einer Fahrzeugkamera
DE102020116774A1 (de) Automatische visuelle Wahrnehmung mittels eines künstlichen neuronalen Netzes
DE112021000595T5 (de) Bildverarbeitungssystem
DE102019219247A1 (de) Verfahren zur Umfelderfassung, Datenverarbeitungseinheit
DE102022124085A1 (de) Darstellung von Bilddaten in einem Fahrzeug abhängig von Sensordaten
DE102021203825B4 (de) Verfahren und System zur Optimierung eines detektierten Parkplatzes
DE102014206246A1 (de) Verfahren und Vorrichtung zum Anpassen einer dreidimensionalen Projektionsfläche zum Projizieren einer Mehrzahl benachbarter Kamerabilder
WO2019057473A1 (de) Verfahren und vorrichtung zum bewerten von bildern, betriebsassistenzverfahren und betriebsvorrichtung
DE102021110056A1 (de) Automatische visuelle Wahrnehmung mit globaler Aufmerksamkeit
DE102016124989A1 (de) Bordsteinrepräsentation mit einem dreidimensionalen Körper in einem Fahrerassistenzsystem für ein Kraftfahrzeug
DE102022129697A1 (de) Verfahren zum Bestimmen einer Distanz eines Objektes in einer Fahrzeugumgebung zu einem Fahrzeug auf Basis von Bildern mit unterschiedlichen Schärfen
DE102022105318A1 (de) Erzeugen eines zusammengesetzten Bildes und Fahrerassistenz für ein Fahrzeug
DE102022125766A1 (de) Berechnung von Höheninformationen eines Bordsteins in einer Umgebung einesFahrzeugs
DE102022121839A1 (de) Texterkennung basierend auf einem verzeichneten Kamerabild

Legal Events

Date Code Title Description
R163 Identified publications notified
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06K0009460000

Ipc: G06V0030180000