DE112021005607T5 - Systems and methods for camera-LiDAR-fused object detection - Google Patents

Systems and methods for camera-LiDAR-fused object detection Download PDF

Info

Publication number
DE112021005607T5
DE112021005607T5 DE112021005607.7T DE112021005607T DE112021005607T5 DE 112021005607 T5 DE112021005607 T5 DE 112021005607T5 DE 112021005607 T DE112021005607 T DE 112021005607T DE 112021005607 T5 DE112021005607 T5 DE 112021005607T5
Authority
DE
Germany
Prior art keywords
lidar
points
segments
image
dataset
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
DE112021005607.7T
Other languages
German (de)
Inventor
Arsenii Saranin
Basel Alghanem
Benjamin D. Ballard
Jason Ziglar
G. Peter K. Carr
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.)
Ford Global Technologies LLC
Original Assignee
Ford Global Technologies LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US17/078,575 external-priority patent/US11430224B2/en
Priority claimed from US17/078,543 external-priority patent/US11885886B2/en
Priority claimed from US17/078,548 external-priority patent/US20220128702A1/en
Priority claimed from US17/078,532 external-priority patent/US20220128700A1/en
Priority claimed from US17/078,561 external-priority patent/US20220126873A1/en
Application filed by Ford Global Technologies LLC filed Critical Ford Global Technologies LLC
Publication of DE112021005607T5 publication Critical patent/DE112021005607T5/en
Pending legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • B60W60/0011Planning or execution of driving tasks involving control alternatives for a single driving scenario, e.g. planning several paths to avoid obstacles
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W10/00Conjoint control of vehicle sub-units of different type or different function
    • B60W10/04Conjoint control of vehicle sub-units of different type or different function including control of propulsion units
    • B60W10/06Conjoint control of vehicle sub-units of different type or different function including control of propulsion units including control of combustion engines
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W10/00Conjoint control of vehicle sub-units of different type or different function
    • B60W10/18Conjoint control of vehicle sub-units of different type or different function including control of braking systems
    • B60W10/184Conjoint control of vehicle sub-units of different type or different function including control of braking systems with wheel brakes
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W10/00Conjoint control of vehicle sub-units of different type or different function
    • B60W10/20Conjoint control of vehicle sub-units of different type or different function including control of steering systems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • B60W60/0015Planning or execution of driving tasks specially adapted for safety
    • B60W60/0017Planning or execution of driving tasks specially adapted for safety of other traffic participants
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • B60W60/0027Planning or execution of driving tasks using trajectory prediction for other traffic participants
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/86Combinations of lidar systems with systems other than lidar, radar or sonar, e.g. with direction finders
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/89Lidar systems specially adapted for specific applications for mapping or imaging
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S7/00Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
    • G01S7/48Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S17/00
    • G01S7/4808Evaluating distance, position or velocity data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/80Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
    • G06V10/803Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of input or preprocessed data
    • 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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2420/00Indexing codes relating to the type of sensors based on the principle of their operation
    • B60W2420/40Photo, light or radio wave sensitive means, e.g. infrared sensors
    • B60W2420/408Radar; Laser, e.g. lidar
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2554/00Input parameters relating to objects
    • B60W2554/40Dynamic objects, e.g. animals, windblown objects
    • B60W2554/402Type
    • B60W2554/4026Cycles

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Mechanical Engineering (AREA)
  • Transportation (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • General Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Automation & Control Theory (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Electromagnetism (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Traffic Control Systems (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

Systeme und Verfahren zur Objektdetektion. Die Verfahren umfassen: Erhalten eines LiDAR-Datensatzes und Verwenden des LiDAR-Datensatzes und des Bildes/der Bilder zum Detektieren eines Objekts durch: Anpassen von Punkten des LiDAR-Datensatzes an Pixel in dem Bild; Erzeugen eines beschnittenen LiDAR-Datensatzes durch Reduzieren einer Gesamtanzahl von Punkten, die in dem LiDAR-Datensatz enthalten sind; Berechnen einer Verteilung von Objektdetektionen, in denen jeder Punkt des LiDAR-Datensatzes wahrscheinlich enthalten ist; Erzeugen einer Vielzahl von Segmenten von LiDAR-Datenpunkten unter Verwendung der Verteilung von Objektdetektionen; Zusammenführen der Vielzahl von Segmenten von LiDAR-Datenpunkten, um zusammengeführte Segmente zu erzeugen; und/oder Detektieren des Objekts in einer Punktwolke, die durch den LiDAR-Datensatz definiert ist, basierend auf den zusammengeführten Segmenten von LiDAR-Datenpunkten. Die Objekterkennung kann verwendet werden, um mindestens einen autonomen Fahrbetrieb zu ermöglichen.Systems and methods for object detection. The methods include: obtaining a LiDAR dataset and using the LiDAR dataset and the image(s) to detect an object by: fitting points of the LiDAR dataset to pixels in the image; generating a pruned LiDAR dataset by reducing a total number of points included in the LiDAR dataset; calculating a distribution of object detections in which each point of the LiDAR dataset is likely to be included; generating a plurality of segments of LiDAR data points using the distribution of object detections; merging the plurality of segments of LiDAR data points to create merged segments; and/or detecting the object in a point cloud defined by the LiDAR data set based on the merged segments of LiDAR data points. Object recognition can be used to enable at least one autonomous driving operation.

Description

QUERVERWEIS UND PRIORITÄTSANSPRUCHCROSS REFERENCE AND PRIORITY CLAIM

Dieses Patentdokument beansprucht die Priorität der US-Patentanmeldung Nr. 17/078,532 , eingereicht am 23. Oktober 2020, der US-Patentanmeldung Nr. 17/078,543 , eingereicht am 23. Oktober 2020, der US-Patentanmeldung Nr. 17/078,548 , eingereicht am 23. Oktober 2020, der US-Patentanmeldung Nr. 17/078,561 , eingereicht am 23. Oktober 2020, und der US-Patentanmeldung Nr. 17/078,575 , eingereicht am 23. Oktober 2020.This patent document claims priority from U.S. Patent Application No. 17/078,532 , filed October 23, 2020, U.S. Patent Application No. 17/078,543 , filed October 23, 2020, U.S. Patent Application No. 17/078,548 , filed October 23, 2020, U.S. Patent Application No. 17/078,561 , filed October 23, 2020, and U.S. Patent Application No. 17/078,575 , filed October 23, 2020.

HINTERGRUNDBACKGROUND

Technisches Gebiettechnical field

Die vorliegende Offenbarung bezieht sich allgemein auf Objektdetektionssysteme. Insbesondere bezieht sich die vorliegende Offenbarung auf das Implementieren von Systemen und Verfahren für kamera-LiDAR-fusionierte („Camera LiDAR Fused“, „CLF“) Objektdetektion mit LiDAR-zu-Bild-Detektionsanpassung, Punktbeschneidung, lokaler Variationssegmentierung, Segmentzusammenführung und/oder Segmentfilterung.The present disclosure generally relates to object detection systems. More particularly, the present disclosure relates to implementing systems and methods for camera LiDAR fused ("CLF") object detection with LiDAR-to-image detection adjustment, point clipping, local variation segmentation, segment merging, and/or segment filtering .

Beschreibung des Standes der TechnikDescription of the prior art

Moderne Fahrzeuge weisen mindestens einen Bordcomputer auf und weisen Internet/Satelliten-Konnektivität auf. Die auf diesen Bordrechnern ablaufende Software überwacht und/oder steuert den Betrieb der Fahrzeuge. Das Fahrzeug umfasst auch LiDAR-Detektoren zum Erfassen von in der Nähe befindlicher Objekte. Die LiDAR-Detektoren erzeugen LiDAR-Datensätze, die den Abstand von dem Fahrzeug zu einem Objekt zu mehreren unterschiedlichen Zeiten messen. Diese Abstandsmessungen können verwendet werden, um Bewegungen des Objekts zu verfolgen, Vorhersagen bezüglich der Objekt-Trajektorie und Planungspfade für das Fahrzeug auf der Grundlage der vorhergesagten Objekt-Trajektorie zu machen.Modern vehicles have at least one onboard computer and have internet/satellite connectivity. The software running on these on-board computers monitors and/or controls the operation of the vehicles. The vehicle also includes LiDAR detectors for detecting nearby objects. The LiDAR detectors generate LiDAR datasets that measure the distance from the vehicle to an object at several different times. These distance measurements can be used to track movements of the object, make predictions regarding the object's trajectory, and plan paths for the vehicle based on the predicted object's trajectory.

ZUSAMMENFASSUNG DER ERFINDUNGSUMMARY OF THE INVENTION

Die vorliegende Offenbarung betrifft die Implementierung von Systemen und Verfahren zur Objektdetektion mit LiDAR-zu-Bild-Detektionsanpassung. Die Objekterkennung kann verwendet werden, um ein autonomes Fahrzeug zu steuern. In diesem Szenario umfassen die Verfahren: Erhalten, durch eine Berechnungs-Vorrichtung, eines LiDAR-Datensatzes, der von einem LiDAR-System des autonomen Fahrzeugs erzeugt wird; und Verwenden, durch eine Rechenvorrichtung, des LiDAR-Datensatzes und mindestens eines Bildes, um ein Objekt zu detektieren, das sich in der Nähe des autonomen Fahrzeugs befindet. Das Objekt wird erfasst durch: Anpassen von Punkten des LiDAR-Datensatzes an Pixel in dem wenigstens einen Bild; und Detektieren des Objekts in einer Punktwolke, die durch den LiDAR-Datensatz definiert ist, basierend auf der Anpassung. Die Objektdetektion wird verwendet, um mindestens eine autonome Fahroperation zu erleichtern (z.B. umfasst die autonome Fahroperation eine Objektverfolgungsoperation, eine Objekttrajektorienvorhersageoperation, eine Fahrzeugtrajektorienbestimmungsoperation und/oder eine Kollisionsvermeidungsoperation).The present disclosure relates to the implementation of systems and methods for object detection with LiDAR-to-image detection adaptation. Object detection can be used to control an autonomous vehicle. In this scenario, the methods include: obtaining, by a computing device, a LiDAR data set generated by a LiDAR system of the autonomous vehicle; and using, by a computing device, the LiDAR dataset and at least one image to detect an object that is proximate to the autonomous vehicle. The object is detected by: fitting points of the LiDAR data set to pixels in the at least one image; and detecting the object in a point cloud defined by the LiDAR dataset based on the adjustment. Object detection is used to facilitate at least one autonomous driving operation (e.g., the autonomous driving operation includes an object tracking operation, an object trajectory prediction operation, a vehicle trajectory determination operation, and/or a collision avoidance operation).

In einigen Szenarien umfassen die Verfahren auch das Erhalten, durch die Rechenvorrichtung, mindestens eines Bildes, das zu einem Zeitpunkt erfasst wurde, zu dem ein Sensor des LiDAR-Systems über ein Zentrum eines Kamerasichtfeldes („Field Of View“, „FOV“) schweifen gelassen wurde, wobei das mindestens eine Bild zusätzlich zu dem LiDAR-Datensatz verwendet wird, um das Objekt zu detektieren. Die Anpassung kann auf Kennungen für jedes Objekt basieren, das in dem mindestens einen Bild detektiert wird, eine Maskenkennung, Zellkennungen für eine Maske, Konfidenzwerte für jede Zelle, LiDAR-Punktkennungen, LiDAR-Punktkoordinaten, extrinsische LiDAR-Sensor- und Kamerakalibrierungsparameter und/oder intrinsische Kamerakalibrierungsparameter.In some scenarios, the methods also include obtaining, by the computing device, at least one image captured at a time when a sensor of the LiDAR system sweeps across a center of a camera's field of view ("FOV") was left, wherein the at least one image is used in addition to the LiDAR data set to detect the object. The adjustment may be based on identifiers for each object detected in the at least one image, a mask identifier, cell identifiers for a mask, confidence values for each cell, LiDAR point identifiers, LiDAR point coordinates, extrinsic LiDAR sensor and camera calibration parameters, and/or intrinsic camera calibration parameters.

Die Anpassung kann das Bestimmen einer Wahrscheinlichkeitsverteilung von Pixeln des mindestens einen Bildes umfassen, an die ein Punkt des LiDAR-Datensatzes unter Berücksichtigung einer Projektionsunsicherheit im Hinblick auf Kamerakalibrierungsunsicherheiten projiziert werden kann. Die Wahrscheinlichkeitsverteilung wird durch Berechnen einer Wahrscheinlichkeitsverteilungsfunktion über Bildraumkoordinaten für ein Pixel bestimmt, an dem ein Punkt des LiDAR-Datensatzes sich wahrscheinlich hineinerstrecken würde. Die Wahrscheinlichkeitsverteilungsfunktion kann gemäß der folgenden mathematischen Gleichung berechnet werden [ x i y i 1 ] = M i n t T V e h i c l e C a m e r a T L i D A R V e h i c l e [ X Y Z 1 ]

Figure DE112021005607T5_0001
wobei xi und yi Bildraumkoordinaten für ein Pixel repräsentieren, und X, Y und Z LiDAR-Raumkoordinaten für einen Punkt des LiDAR-Datensatzes darstellen. Die Wahrscheinlichkeitsverteilungsfunktion kann in Übereinstimmung mit der folgenden mathematischen Gleichung in Bilderfassungsmaskenkoordinaten umgewandelt werden x m = R x i x b b o x x b b o x + x b b o x
Figure DE112021005607T5_0002
wobei x b b o x +  und  x b b o x
Figure DE112021005607T5_0003
von Bildraumgrenzen eines Begrenzungsrechtecks und R eine Maskenauflösung darstellen.The adjustment can include determining a probability distribution of pixels of the at least one image to which a point of the LiDAR data set can be projected, taking into account a projection uncertainty with regard to camera calibration uncertainties. The probability distribution is determined by computing a probability distribution function over image space coordinates for a pixel into which a point of the LiDAR dataset is likely to extend would. The probability distribution function can be calculated according to the following mathematical equation [ x i y i 1 ] = M i n t T V e H i c l e C a m e right a T L i D A R V e H i c l e [ X Y Z 1 ]
Figure DE112021005607T5_0001
where x i and y i represent image space coordinates for a pixel, and X, Y and Z represent LiDAR space coordinates for a point of the LiDAR dataset. The probability distribution function can be converted to image acquisition mask coordinates according to the following mathematical equation x m = R x i x b b O x x b b O x + x b b O x
Figure DE112021005607T5_0002
where x b b O x + and x b b O x
Figure DE112021005607T5_0003
of image space boundaries of a bounding rectangle and R represent a mask resolution.

Alternativ oder zusätzlich umfasst das Anpassen das Bestimmen einer Wahrscheinlichkeitsverteilung über einen Satz von Objekterfassungen, in denen sich ein Punkt des LiDAR-Datensatzes wahrscheinlich befindet, basierend auf mindestens einem Konfidenzwert, der einen Vertrauensgrad angibt, dass mindestens ein jeweiliges Pixel des mindestens einen Bildes zu einem gegebenen detektierten Objekt gehört. Die Wahrscheinlichkeitsverteilung kann durch Berechnen einer Wahrscheinlichkeit bestimmt werden, dass ein Punkt des LiDAR-Datensatzes unabhängig von allen anderen Bilderfassungen in eine Bilderfassung projiziert. Beispielsweise kann die Wahrscheinlichkeit gemäß den folgenden mathematischen Gleichung(en) berechnet werden: p ( l p m p ) = m p ƒ ( x m , y m ) d m p = x m p x m p + y m p y m p + ƒ ( x m , y m ) d y d x

Figure DE112021005607T5_0004
[ \ h box? ] i p ( l p d ) = p ( d ) m a s k p ( l p m p ) p ( m p d ) = p ( d ) x = 0 R y = 0 R p ( l p m p x , y ) p ( m p x , y d )
Figure DE112021005607T5_0005
wobei Ip einen LiDAR-Punkt, mp ein Maskenpixel, [ x m p , x m p + ]
Figure DE112021005607T5_0006
die x-Grenzen des Pixels in Maskenkoordinaten, [ y m p , y m p + ]
Figure DE112021005607T5_0007
die y-Grenzen des Pixels in Maskenkoordinaten und dmp ein Maskenpixel darstellt, das einer gegebenen Objektdetektion d zugeordnet ist, ferner stellt dy die y-Achsenkoordinate für ein Maskenpixel dar, das der gegebenen Objektdetektion d zugeordnet ist, und dx stellt eine x-Achsenkoordinate für das Maskenpixel dar, das der gegebenen Objektdetektion d zugeordnet ist.Alternatively or additionally, the adjusting includes determining a probability distribution over a set of object detections in which a point of the LiDAR dataset is likely to be based on at least one confidence value indicating a level of confidence that at least one respective pixel of the at least one image becomes a given detected object belongs. The probability distribution may be determined by calculating a probability that a point of the LiDAR dataset will project into an image capture independent of all other image captures. For example, the probability can be calculated according to the following mathematical equation(s): p ( l p m p ) = m p ƒ ( x m , y m ) i.e m p = x m p x m p + y m p y m p + ƒ ( x m , y m ) i.e y i.e x
Figure DE112021005607T5_0004
[ \ h box? ] i p ( l p i.e ) = p ( i.e ) m a s k p ( l p m p ) p ( m p i.e ) = p ( i.e ) x = 0 R y = 0 R p ( l p m p x , y ) p ( m p x , y i.e )
Figure DE112021005607T5_0005
where Ip is a LiDAR point, mp is a mask pixel, [ x m p , x m p + ]
Figure DE112021005607T5_0006
the x-boundaries of the pixel in mask coordinates, [ y m p , y m p + ]
Figure DE112021005607T5_0007
the pixel's y-boundaries in mask coordinates, and dmp represents a mask pixel associated with a given object detection d, dy represents the y-axis coordinate for a mask pixel associated with the given object detection d, and dx represents an x-axis coordinate for represents the mask pixel associated with the given object detection d.

Alternativ oder zusätzlich umfasst die Anpassung das Bestimmen einer Wahrscheinlichkeit, dass der LiDAR-Punkt nicht in eine beliebige Bilderfassung hineinragt bzw. projiziert. Zum Beispiel beinhaltet die Anpassung das Normalisieren einer Vielzahl von Wahrscheinlichkeiten, die für einen gegebenen Punkt des LiDAR-Datensatzes gemäß der folgenden mathematischen Gleichung bestimmt wurden: d p ( l p d i ) = p ( d   l p d ) d p ( l p d i | d   l p d ) = [ 1 p ( d   l p d ) i p ( l p d i ) d e t e c t i o n s i p ( l p d ) ]

Figure DE112021005607T5_0008
wobei ip(lp ∈ d) eine Wahrscheinlichkeit repräsentiert, dass ein Punkt des LiDAR-Datensatzes in eine Bilderfassung unabhängig von allen anderen Bilderfassungen projiziert ist, und p(∀d lp ∉ d) eine Wahrscheinlichkeit darstellt, dass der LiDAR-Punkt nicht in eine beliebige Bilderfassung hineinragt.Alternatively or additionally, the adjustment includes determining a probability that the LiDAR point does not project into any image capture. For example, fitting involves normalizing a variety of probabilities determined for a given point of the LiDAR dataset according to the following mathematical equation: i.e p ( l p i.e i ) = p ( i.e l p i.e ) i.e p ( l p i.e i | i.e l p i.e ) = [ 1 p ( i.e l p i.e ) i p ( l p i.e i ) i.e e t e c t i O n s i p ( l p i.e ) ]
Figure DE112021005607T5_0008
where ip(lp ∈ d) represents a probability that a point of the LiDAR dataset is projected into an image acquisition independent of all other image acquisitions, and p(∀d lp ∉ d) represents a probability that the LiDAR point is not in a any image capture protrudes.

Die vorliegende Offenbarung betrifft auch die Implementierung von Systemen und Verfahren zur CLF-Objektdetektion mit Punktbeschneidung. Die vorliegende Lösung kann verwendet werden, um ein autonomes Fahrzeug zu betreiben. In diesem Szenario umfassen die Verfahren: Erhalten, durch eine Rechenvorrichtung, eines LiDAR-Datensatzes, der von einem LiDAR-System des autonomen Fahrzeugs erzeugt wird; und Verwenden, durch eine Rechenvorrichtung, des LiDAR-Datensatzes und mindestens eines Bildes, um ein Objekt zu detektieren, das sich in der Nähe des autonomen Fahrzeugs befindet. Das Objekt wird durch Erzeugen eines beschnittenen („pruned“ bzw. „prunierten“) LiDAR-Datensatzes durch Reduzieren einer Gesamtanzahl von Punkten, die in dem LiDAR-Datensatz enthalten sind, und Detektieren des Objekts in einer Punktwolke, die durch den beschnittenen LiDAR-Datensatz definiert ist, detektiert. Die Objektdetektion kann von der Rechenvorrichtung verwendet werden, um mindestens eine autonome Fahroperation (z.B. eine Objektverfolgungsoperation, eine Objekttrajektorienvorhersageoperation, eine Fahrzeugtrajektorienbestimmungsoperation und/oder eine Kollisionsvermeidungsoperation) zu ermöglichen.The present disclosure also relates to the implementation of systems and methods for CLF object detection with point clipping. The present solution can be used to operate an autonomous vehicle. In this scenario, the methods include: obtaining, by a computing device, a LiDAR dataset generated by a LiDAR system of the autonomous vehicle; and using, by a computing device, the LiDAR dataset and at least one image to represent an object to detect that is in the vicinity of the autonomous vehicle. The object is created by generating a pruned LiDAR dataset by reducing a total number of points included in the LiDAR dataset and detecting the object in a point cloud created by the pruned LiDAR dataset. Record is defined, detected. Object detection may be used by the computing device to enable at least one autonomous driving operation (eg, an object tracking operation, an object trajectory prediction operation, a vehicle trajectory determination operation, and/or a collision avoidance operation).

In diesen oder anderen Szenarien umfassen die Verfahren auch das Erhalten, durch die Rechenvorrichtung, mindestens eines Bildes, das zu einem Zeitpunkt erfasst wurde, zu dem ein Sensor des LiDAR-Systems über eine Mitte eines Kamera-FOV schweifen gelassen wurde. Das Bild wird zusätzlich zu dem LiDAR-Datensatz verwendet, um das Objekt zu detektieren.In these or other scenarios, the methods also include obtaining, by the computing device, at least one image captured at a time when a sensor of the LiDAR system was swept over a center of a camera FOV. The image is used in addition to the LiDAR dataset to detect the object.

In diesen oder anderen Szenarien wird der beschnittene LiDAR-Datensatz durch Downsampling der Punkte basierend auf einer geplanten Trajektorie des autonomen Fahrzeugs erzeugt. Die Punkte des LiDAR-Datensatzes, die einem ersten Bereich entlang der geplanten Trajektorie des autonomen Fahrzeugs entsprechen, können mit einer höheren oder niedrigeren Abtastrate als Punkte des LiDAR-Datensatzes, die einem zweiten Bereich entsprechen, der nicht entlang der geplanten Trajektorie des autonomen Fahrzeugs ist, heruntergesampelt werden. Der erste Bereich kann einen Bereich umfassen, der Punkte beinhaltet, die mindestens einem Objekt entsprechen, das unwahrscheinlich mit dem autonomen Fahrzeug interferiert, wenn es der geplanten Trajektorie folgt, und der zweite Bereich kann einen Bereich umfassen, der Punkte beinhaltet, die mindestens einem Objekt entsprechen, das wahrscheinlich mit dem autonomen Fahrzeug interferiert, wenn es der geplanten Trajektorie folgt.In these or other scenarios, the cropped LiDAR dataset is generated by downsampling the points based on a planned trajectory of the autonomous vehicle. The LiDAR dataset points that correspond to a first area along the autonomous vehicle's planned trajectory may be sampled at a higher or lower sampling rate than the LiDAR dataset points that correspond to a second area that is not along the autonomous vehicle's planned trajectory , to be downsampled. The first area may include an area including points corresponding to at least one object that is unlikely to interfere with the autonomous vehicle when following the planned trajectory, and the second area may include an area including points corresponding to at least one object that is likely to interfere with the autonomous vehicle when following the planned trajectory.

In diesen oder anderen Szenarien wird der beschnittene LiDAR-Datensatz durch Downsampling des LiDAR-Datensatzes basierend auf Punktmarkierungen erzeugt, die den Punkten zugeordnet sind. Jede der Punktmarkierungen kann mindestens eine Objektklassenkennung, eine Farbe und/oder eine eindeutige Kennung umfassen.In these or other scenarios, the cropped LiDAR dataset is generated by downsampling the LiDAR dataset based on point markers associated with the points. Each of the point markers may include at least one object class identifier, a color, and/or a unique identifier.

Alternativ oder zusätzlich wird der LiDAR-Datensatz durch Zuweisen einer ersten Wichtigkeitsmarkierung zu Punkten, die mit einer sich bewegenden Objektklasse assoziiert sind, und einer zweiten Wichtigkeitsmarkierung zu Punkten, die mit einer statischen Objektklasse assoziiert sind, heruntergesampelt. Die Punkte, die der ersten Wichtigkeitsmarkierung zugewiesen sind, können heruntergesampelt werden (z.B. mit einer ersten Auflösung), und/oder die Punkte, die der zweiten Wichtigkeitsmarkierung zugewiesen sind, können heruntergesampelt werden (z.B. mit einer zweiten Auflösung, die niedriger als die erste Auflösung ist).Alternatively or additionally, the LiDAR dataset is downsampled by assigning a first importance marker to points associated with a moving object class and a second importance marker to points associated with a static object class. The points associated with the first importance marking may be downsampled (e.g., at a first resolution) and/or the points associated with the second importance marking may be downsampled (e.g., at a second resolution lower than the first resolution is).

In diesen oder anderen Szenarien wird der beschnittene LiDAR-Datensatz durch Downsampling des LiDAR-Datensatzes basierend auf Punktabständen von einem Begrenzungsrechteck erzeugt. Ein Punkt kann aus dem LiDAR-Datensatz entfernt werden, wenn ein jeweiliger der Punktabstände größer als ein Schwellenabstand ist.In these or other scenarios, the cropped LiDAR dataset is generated by downsampling the LiDAR dataset based on point distances from a bounding box. A point may be removed from the LiDAR dataset if any one of the point spacings is greater than a threshold spacing.

In diesen oder anderen Szenarien wird der beschnittene LiDAR-Datensatz durch Downsampling des LiDAR-Datensatzes unter Verwendung einer Karte erzeugt, die Informationen beinhaltet, die einer geplanten Trajektorie des autonomen Fahrzeugs zugeordnet sind. Ein Punkt kann aus dem LiDAR-Datensatz entfernt werden, wenn der Punkt eine Höhe aufweist, die kleiner als ein minimaler Höhenschwellenwert oder größer als ein maximaler Höhenschwellenwert ist. Zusätzlich oder alternativ wird der beschnittene LiDAR-Datensatz durch Downsampling des LiDAR-Datensatzes mit einer Auflösung erzeugt, die basierend auf einer modellierten Prozesslatenz ausgewählt wird.In these or other scenarios, the trimmed LiDAR dataset is generated by downsampling the LiDAR dataset using a map that includes information associated with a planned trajectory of the autonomous vehicle. A point can be removed from the LiDAR dataset if the point has an elevation that is less than a minimum elevation threshold or greater than a maximum elevation threshold. Additionally or alternatively, the pruned LiDAR dataset is generated by downsampling the LiDAR dataset at a resolution selected based on a modeled process latency.

Die vorliegende Offenbarung betrifft ferner das Implementieren von Systemen und Verfahren zur Objektdetektion mit lokaler Variationssegmentierung. Die Objekterkennung kann verwendet werden, um ein autonomes Fahrzeug zu steuern. In diesem Szenario umfasst das Verfahren: Erhalten, durch eine Rechenvorrichtung, eines LiDAR-Datensatzes, der von einem LiDAR-System des autonomen Fahrzeugs erzeugt wird; und Verwenden, durch eine Rechenvorrichtung, des LiDAR-Datensatzes und mindestens eines Bildes, um ein Objekt zu detektieren, das sich in der Nähe des autonomen Fahrzeugs befindet. Das Objekt wird erfasst durch: Berechnen einer Verteilung von Objekterfassungen, in denen jeder Punkt des LiDAR-Datensatzes wahrscheinlich ist; Erzeugen einer Vielzahl von Segmenten von LiDAR-Datenpunkten unter Verwendung der Verteilung von Objektdetektionen; und Detektieren des Objekts in einer Punktwolke, die durch den LiDAR-Datensatz basierend auf der Vielzahl von Segmenten von LiDAR-Datenpunkten definiert ist. Die Objektdetektion kann von der Rechenvorrichtung verwendet werden, um mindestens einen autonomen Fahrbetrieb zu erleichtern (z.B. autonomer Fahrbetrieb, eine Objektverfolgungsoperation, eine Objekttrajektorienvorhersageoperation, eine Fahrzeugtrajektorienbestimmungsoperation und/oder eine Kollisionsvermeidungsoperation).The present disclosure further relates to implementing systems and methods for object detection with local variation segmentation. Object detection can be used to control an autonomous vehicle. In this scenario, the method includes: obtaining, by a computing device, a LiDAR data set generated by a LiDAR system of the autonomous vehicle; and using, by a computing device, the LiDAR dataset and at least one image to detect an object that is proximate to the autonomous vehicle. The object is detected by: calculating a distribution of object detections in which each point of the LiDAR dataset is likely; generating a plurality of segments of LiDAR data points using the distribution of object detections; and detecting the object in a point cloud defined by the LiDAR data set based on the plurality of segments of LiDAR data points. The object detection can be used by the computing device to at least one autonomous driving to facilitate operation (eg, autonomous driving operation, an object tracking operation, an object trajectory prediction operation, a vehicle trajectory determination operation, and/or a collision avoidance operation).

In diesen oder anderen Szenarien umfassen die Verfahren auch das Erhalten, durch die Rechenvorrichtung, mindestens eines Bildes, das zu einem Zeitpunkt erfasst wurde, zu dem ein Sensor des LiDAR-Systems über eine Mitte eines Kamera-FOV schweifen gelassen wurde, wobei das mindestens eine Bild zusätzlich zu dem LiDAR-Datensatz verwendet wird, um das Objekt zu detektieren. Die Verteilung von Objektdetektionen kann basierend auf (a) einer Wahrscheinlichkeitsverteilung von Pixeln des mindestens einen Bildes, zu dem ein Punkt des LiDAR-Datensatzes projiziert werden kann, und (b) einer Wahrscheinlichkeit berechnet werden, dass der Punkt nicht in eine beliebige Bilderfassung hineinragt bzw. projiziert.In these or other scenarios, the methods also include obtaining, by the computing device, at least one image captured at a time when a sensor of the LiDAR system was swept over a center of a camera FOV, the at least one Image is used in addition to the LiDAR dataset to detect the object. The distribution of object detections can be calculated based on (a) a probability distribution of pixels of the at least one image to which a point of the LiDAR data set can be projected and (b) a probability that the point does not protrude into any image acquisition or .projected.

Die Segmente von LiDAR-Datenpunkten können unter Verwendung des LiDAR-Datensatzes erzeugt werden, um einen Konnektivitätsgraphen zu konstruieren. Der Konnektivitätsgraph umfasst Punkte des LiDAR-Datensatzes, die in einem 3D-Koordinatensystem aufgetragen sind, und Verbindungslinien, die jeweils die Punkte verbinden. Die Verbindungslinien können dem Konnektivitätsgraphen basierend darauf hinzugefügt werden, ob zwei Punkte des LiDAR-Datensatzes innerhalb eines räumlichen oder zeitlichen Abstands voneinander liegen, ob zwei Punkte nächste Nachbarn oder Triangulation sind.The segments of LiDAR data points can be generated using the LiDAR dataset to construct a connectivity graph. The connectivity graph includes points of the LiDAR dataset plotted in a 3D coordinate system and connecting lines connecting each point. The connecting lines can be added to the connectivity graph based on whether two points of the LiDAR dataset are within a spatial or temporal distance of each other, whether two points are nearest neighbors or triangulation.

Zusätzlich oder alternativ werden die Segmente von LiDAR-Datenpunkten erzeugt, indem für jeden Punkt in dem Konnektivitätsgraphen ein Deskriptor bestimmt wird, der einen Vektor von Elementen umfasst, die einen gegebenen Punkt des LiDAR-Datensatzes charakterisieren. Die Elemente des Vektors können eine Flächennormale, einen Farbwert basierend auf dem mindestens einen Bild, eine Intensität, eine Textur, räumliche Koordinaten, eine Höhe über dem Grund, eine Klassenmarkierung, eine Instanzkennung, ein bildbasiertes Merkmal, ein Fast-Point-Feature-Histogramm, eine Bilderfassungsfähigkeit und/oder einen modifizierten Abstand umfassen.Additionally or alternatively, the segments of LiDAR data points are generated by determining, for each point in the connectivity graph, a descriptor comprising a vector of elements characterizing a given point of the LiDAR data set. The elements of the vector can be a surface normal, a color value based on the at least one image, an intensity, a texture, spatial coordinates, a height above ground, a class marker, an instance identifier, an image-based feature, a fast point feature histogram , an image capture capability and/or a modified distance.

Zusätzlich oder alternativ werden die Segmente von LiDAR-Datenpunkten durch weiteres Zuweisen eines Gewichts zu jeder Verbindungslinie basierend auf dem Deskriptor erzeugt. Das Gewicht stellt ein Dissimilaritätsmaß zwischen zwei Punkten dar, die in dem Konnektivitätsgraphen über die Verbindungslinie miteinander verbunden sind.Additionally or alternatively, the segments of LiDAR data points are generated by further assigning a weight to each connecting line based on the descriptor. The weight represents a measure of dissimilarity between two points that are connected in the connectivity graph by the connecting line.

Zusätzlich oder alternativ werden die mehreren Segmente von LiDAR-Datenpunkten durch weitere Zusammenführungspunkte des LiDAR-Datensatzes basierend auf den Gewichten erzeugt. Zwei Punkte können zusammengeführt werden, wenn ein Gewicht, das einer jeweiligen Verbindungslinie zugeordnet ist, kleiner als ein Schwellenwert ist.Additionally or alternatively, the multiple segments of LiDAR data points are generated by further merging points of the LiDAR data set based on the weights. Two points may be merged if a weight associated with each connecting line is less than a threshold.

Die vorliegende Offenbarung betrifft die Implementierung von Systemen und Verfahren zur Objektdetektion mit Segmentzusammenführung. Die Objekterkennung kann verwendet werden, um ein autonomes Fahrzeug zu steuern. In diesen Szenarien umfassen die Verfahren: Erhalten, durch eine Rechenvorrichtung, eines LiDAR-Datensatzes, der von einem LiDAR-System des autonomen Fahrzeugs erzeugt wird; und Verwenden, durch eine Rechenvorrichtung, des LiDAR-Datensatzes und mindestens eines Bildes, um ein Objekt zu detektieren, das sich in der Nähe des autonomen Fahrzeugs befindet. Das Objekt wird erfasst durch: Berechnen einer Verteilung von Objekterfassungen, in denen sich jeder Punkt des LiDAR-Datensatzes wahrscheinlich befindet; Erzeugen einer Vielzahl von Segmenten von LiDAR-Datenpunkten unter Verwendung der Verteilung von Objektdetektionen; Zusammenführen der Vielzahl von Segmenten von LiDAR-Datenpunkten, um zusammengeführte Segmente zu erzeugen; und Detektieren des Objekts in einer Punktwolke, die durch den LiDAR-Datensatz definiert ist, basierend auf den zusammengeführten Segmenten. Die Objektdetektion kann von der Rechenvorrichtung verwendet werden, um mindestens eine autonome Fahroperation (z.B. eine Objektverfolgungsoperation, eine Objekttrajektorienvorhersageoperation, eine Fahrzeugtrajektorienbestimmungsoperation und/oder eine Kollisionsvermeidungsoperation) zu ermöglichen.The present disclosure relates to the implementation of systems and methods for object detection with segment merging. Object detection can be used to control an autonomous vehicle. In these scenarios, the methods include: obtaining, by a computing device, a LiDAR dataset generated by a LiDAR system of the autonomous vehicle; and using, by a computing device, the LiDAR dataset and at least one image to detect an object that is proximate to the autonomous vehicle. The object is detected by: calculating a distribution of object detections in which each point of the LiDAR data set is likely to be located; generating a plurality of segments of LiDAR data points using the distribution of object detections; merging the plurality of segments of LiDAR data points to create merged segments; and detecting the object in a point cloud defined by the LiDAR dataset based on the merged segments. Object detection may be used by the computing device to enable at least one autonomous driving operation (e.g., an object tracking operation, an object trajectory prediction operation, a vehicle trajectory determination operation, and/or a collision avoidance operation).

In diesen oder anderen Szenarien umfassen die Verfahren auch das Erhalten, durch die Rechenvorrichtung, mindestens eines Bildes, das zu einem Zeitpunkt erfasst wurde, zu dem ein Sensor des LiDAR-Systems über eine Mitte eines Kamera-FOV schweifen gelassen wurde, wobei das mindestens eine Bild zusätzlich zu dem LiDAR-Datensatz verwendet wird, um das Objekt zu detektieren. Die Verteilung von Objektdetektionen kann basierend auf (a) einer Wahrscheinlichkeitsverteilung von Pixeln des mindestens einen Bildes, zu dem ein Punkt des LiDAR-Datensatzes projiziert werden kann, und (b) einer Wahrscheinlichkeit berechnet werden, dass der Punkt nicht in eine beliebige Bilderfassung hineinragt bzw. projiziert.In these or other scenarios, the methods also include obtaining, by the computing device, at least one image captured at a time when a sensor of the LiDAR system was swept over a center of a camera FOV, the at least one Image is used in addition to the LiDAR dataset to detect the object. The distribution of object detections can be calculated based on (a) a probability distribution of pixels of the at least one image to which a point of the LiDAR data set can be projected and (b) a probability that the point does not protrude into any image acquisition or .projected.

Die zusammengeführten Segmente können erzeugt werden durch: Auswählen von Paaren von Segmenten aus der Vielzahl von Segmenten von LiDAR-Datenpunkten; Berechnen von Merkmalen für jedes Paar von Segmenten basierend auf Attributen der Segmente, die in dem Paar enthalten sind; Erzeugen, für jedes Paar von Segmenten, einer Wahrscheinlichkeit, dass die Segmente, die in dem Paar enthalten sind, basierend auf den Merkmalen zusammengefügt werden sollten; und Zusammenführen der Vielzahl von Segmenten von LiDAR-Datenpunkten basierend auf den Wahrscheinlichkeiten, die für die Paare von Segmenten erzeugt werden.The merged segments may be generated by: selecting pairs of segments from the plurality of segments of LiDAR data points; computing features for each pair of segments based on attributes of the segments included in the pair; generating, for each pair of segments, a probability that the segments included in the pair should be merged based on the features; and merging the plurality of segments of LiDAR data points based on the probabilities generated for the pairs of segments.

Die Paare von Segmenten können gefiltert werden, um Paare von Segmenten zu entfernen, die Schwerpunkt-zu-Schwerpunkt-Abstände aufweisen, die größer als ein Schwellenwert sind. Die Merkmale können eine Differenz zwischen dem Durchschnitt der Wahrscheinlichkeitsverteilungen, die für die LiDAR-Datenpunkte berechnet wurden, die in einem ersten Segment der Vielzahl von Segmenten von LiDAR-Datenpunkten enthalten waren, und dem Durchschnitt der Wahrscheinlichkeitsverteilungen, die für die LiDAR-Datenpunkte berechnet wurden, die in einem zweiten Segment der Vielzahl von Segmenten von LiDAR-Datenpunkten enthalten waren. Die Attribute können einen Durchschnitt aus einer Vielzahl von Wahrscheinlichkeitsverteilungen beinhalten, die für die LiDAR-Datenpunkte berechnet wurden, die in einem gegebenen Segment der Vielzahl von Segmenten von LiDAR-Datenpunkten enthalten waren, und/oder wobei jede Wahrscheinlichkeitsverteilung detektierte Objekte spezifiziert, in denen ein gegebener LiDAR-Datenpunkt wahrscheinlich ist.The pairs of segments can be filtered to remove pairs of segments that have centroid-to-centroid distances greater than a threshold. The features may be a difference between the average of the probability distributions calculated for the LiDAR data points included in a first segment of the plurality of segments of LiDAR data points and the average of the probability distributions calculated for the LiDAR data points , contained in a second segment of the plurality of segments of LiDAR data points. The attributes may include an average of a plurality of probability distributions calculated for the LiDAR data points that were included in a given segment of the plurality of segments of LiDAR data points, and/or each probability distribution specifying detected objects in which a given LiDAR data point is probable.

Alternativ oder zusätzlich beinhalten die Attribute eine 2D-Region, die die LiDAR-Datenpunkte in einer gegebenen Segmentabdeckung darstellen, einen Prozentsatz von LiDAR-Datenpunkten, die in dem gegebenen Segment enthalten sind, die auf einer Straße liegen, einen Prozentsatz von LiDAR-Datenpunkten, die in dem gegebenen Segment enthalten sind, die von einer Straße sind, und/oder eine Gesamtanzahl von Spuren, die das gegebene Segment zumindest teilweise überlappt. Die Merkmale beinhalten einen Unterschied in Straßenverhältnissen, eine Differenz in Geländeverhältnissen, eine Bereichskompatibilität, eine Fahrspurkompatibilität, eine Differenz zwischen einer Gesamtanzahl von Fahrspuren, die ein erstes Segment von LiDAR-Datenpunkten zumindest teilweise überlappt, und eine Gesamtanzahl von Spuren, die ein zweites Segment von LiDAR-Datenpunkten zumindest teilweise überlappt, eine Differenz oder einen Abstand in der Höhe zwischen Segmenten von LiDAR-Datenpunkten, eine Maskenkompatibilität, eine Differenz der Objekttypverteilungen und/oder eine Objekttyp-Kompatibilität.Alternatively or additionally, the attributes include a 2D region representing the LiDAR data points in a given segment coverage, a percentage of LiDAR data points contained in the given segment that lie on a road, a percentage of LiDAR data points, included in the given segment that are of a road, and/or a total number of lanes that the given segment at least partially overlaps. The features include a difference in road conditions, a difference in terrain conditions, an area compatibility, a lane compatibility, a difference between a total number of lanes that a first segment of LiDAR data points at least partially overlaps, and a total number of lanes that a second segment of LiDAR data points at least partially overlapped, a difference or distance in height between segments of LiDAR data points, mask compatibility, a difference in object type distributions, and/or object type compatibility.

Die vorliegende Offenbarung betrifft die Implementierung von Systemen und Verfahren zur Objektdetektion mit Segment-Filterung. Die Objekterkennung kann verwendet werden, um ein autonomes Fahrzeug zu steuern. In diesen Szenarien umfassen die Verfahren: Erhalten, durch eine Rechenvorrichtung, eines LiDAR-Datensatzes, der von einem LiDAR-System des autonomen Fahrzeugs erzeugt wird; und Verwenden, durch eine Rechenvorrichtung, des LiDAR-Datensatzes und mindestens eines Bildes, um ein Objekt zu detektieren, das sich in der Nähe des autonomen Fahrzeugs befindet. Das Objekt wird durch Ausführen der folgenden Operationen erfasst: Berechnen einer Verteilung von Objektdetektionen, dass jeder Punkt des LiDAR-Datensatzes wahrscheinlich ist; Erzeugen einer Vielzahl von Segmenten von LiDAR-Datenpunkten unter Verwendung der Verteilung von Objektdetektionen; Zusammenführen der Vielzahl von Segmenten von LiDAR-Datenpunkten, um zusammengeführte Segmente zu erzeugen; und Detektieren des Objekts in einer Punktwolke, die durch den LiDAR-Datensatz definiert ist, basierend auf den zusammengeführten Segmenten. Die Objektdetektion wird von der Rechenvorrichtung verwendet, um mindestens eine autonome Fahroperation (z.B. eine Objektverfolgungsoperation, eine Objekttrajektorienvorhersageoperation, eine Fahrzeugtrajektorienbestimmungsoperation und/oder eine Kollisionsvermeidungsoperation) zu ermöglichen.The present disclosure relates to the implementation of systems and methods for object detection with segment filtering. Object detection can be used to control an autonomous vehicle. In these scenarios, the methods include: obtaining, by a computing device, a LiDAR dataset generated by a LiDAR system of the autonomous vehicle; and using, by a computing device, the LiDAR dataset and at least one image to detect an object that is proximate to the autonomous vehicle. The object is detected by performing the following operations: calculating a distribution of object detections that each point of the LiDAR dataset is probable; generating a plurality of segments of LiDAR data points using the distribution of object detections; merging the plurality of segments of LiDAR data points to create merged segments; and detecting the object in a point cloud defined by the LiDAR dataset based on the merged segments. Object detection is used by the computing device to enable at least one autonomous driving operation (e.g., an object tracking operation, an object trajectory prediction operation, a vehicle trajectory determination operation, and/or a collision avoidance operation).

In diesen oder anderen Szenarien umfassen die Verfahren auch das Erhalten, durch die Rechenvorrichtung, mindestens eines Bildes, das zu einem Zeitpunkt erfasst wurde, zu dem ein Sensor des LiDAR-Systems über eine Mitte eines Kamera-FOV schweifen gelassen wurde, wobei das mindestens eine Bild zusätzlich zu dem LiDAR-Datensatz verwendet wird, um das Objekt zu detektieren. Die Verteilung von Objektdetektionen kann basierend auf (a) einer Wahrscheinlichkeitsverteilung von Pixeln des mindestens einen Bildes, zu dem ein Punkt des LiDAR-Datensatzes projiziert werden kann, und (b) einer Wahrscheinlichkeit berechnet werden, dass der Punkt nicht in eine beliebige Bilderfassung hineinragt.In these or other scenarios, the methods also include obtaining, by the computing device, at least one image captured at a time when a sensor of the LiDAR system was swept over a center of a camera FOV, the at least one Image is used in addition to the LiDAR dataset to detect the object. The distribution of object detections may be calculated based on (a) a probability distribution of pixels of the at least one image to which a point of the LiDAR dataset can be projected and (b) a probability that the point does not protrude into any image acquisition.

In diesen oder anderen Szenarien umfasst das Detektieren das Erhalten von Informationen für eine gegebene Detektionsmaske und ein gegebenes zusammengeführtes Segment der zusammengeführten Segmente. Die Informationen können mindestens einen Pm-Wert umfassen, der eine Anzahl von Punkten eines LiDAR-Datensatzes darstellt, die in die gegebene Detektionsmaske hineinragen, wobei Si eine Anzahl von Punkten darstellt, die das gegebene zusammengeführte Segment bilden, Psm eine Anzahl von Punkten in dem gegebenen zusammengeführten Segment darstellt, die in die gegebene Detektionsmaske hineinragen, eine Höhe des gegebenen zusammengeführten Segments, eine Länge ls des gegebenen zusammengeführten Segments und/oder eine Breite ws des gegebenen zusammengeführten Segments.In these or other scenarios, detecting includes obtaining information for a given detection mask and a given merged segment of the merged segments. The information may include at least a Pm value representing a number of points of a LiDAR dataset that intrude into the given detection mask, where Si represents a number of points forming the given merged segment, Psm a number of points in of the given merged segment that protrude into the given detection mask, a height of the given merged segment, a length l s of the given merged segment and/or a width w s of the given merged segment.

In diesen oder anderen Szenarien umfasst das Detektieren das Bestimmen mindestens eines Clustermerkmals basierend auf den Informationen. Das Cluster-Merkmal kann umfassen: ein Cluster-Merkmal U, bestimmt basierend auf einer Anzahl von Punkten eines LiDAR-Datensatzes, die in die gegebene Detektionsmaske hineinragen, und/oder einer Anzahl von Punkten, die das gegebene zusammengeführte Segment bilden; ein Clustermerkmal V, das basierend auf einer Anzahl von Punkten in dem gegebenen zusammengeführten Segment bestimmt wird, die in die gegebene Detektionsmaske hineinragen, und/oder einer Anzahl von Punkten eines LiDAR-Datensatzes, die in die gegebene Detektionsmaske hineinragen; und/oder ein Clustermerkmal H, das eine Clusterhöhe darstellt, ein Clustermerkmal L, das eine Clusterlänge darstellt, ein Cluster-Merkmal LTW, das ein Längen-zu-Breiten-Verhältnis für ein Cluster darstellt, und/oder ein Cluster-Merkmal C, das einen Zylinder-Konvolutions-(oder Fit-) Score von geclusterten LiDAR-Datenpunkten darstellt.In these or other scenarios, detecting includes determining at least one cluster feature based on the information. The cluster feature may include: a cluster feature U determined based on a number of points of a LiDAR data set that intrude into the given detection mask and/or a number of points that form the given merged segment; a cluster feature V determined based on a number of points in the given merged segment that intrude into the given detection mask and/or a number of points of a LiDAR data set that intrude into the given detection mask; and/or a cluster feature H representing a cluster height, a cluster feature L representing a cluster length, a cluster feature LTW representing a length-to-width ratio for a cluster, and/or a cluster feature C, representing a cylinder convolution (or fit) score of clustered LiDAR data points.

In diesen oder anderen Szenarien umfasst das Detektieren das Berechnen eines Projektionswerts PS basierend auf dem mindestens einen Cluster-Merkmal. Der Projektionswert PS ist ein Produkt von zwei oder mehr Clustermerkmalen.In these or other scenarios, detecting includes calculating a projection value PS based on the at least one cluster feature. The projection value PS is a product of two or more cluster features.

In diesen oder anderen Szenarien umfasst das Detektieren das Verwenden des Projektionswerts PS, um zu verifizieren, dass das gegebene zusammengeführte Segment Teil eines bestimmten detektierten Objekts ist, das der gegebenen Detektionsmaske zugeordnet ist. Eine Verifizierung kann durchgeführt werden, dass das gegebene zusammengeführte Segment Teil eines bestimmten detektierten Objekts ist, das der gegebenen Detektionsmaske zugeordnet ist, wenn der Projektionswert PS einen Schwellenwert überschreitet oder einen Wert aufweist, der größer ist als andere Projektionswerte, die für andere zusammengeführte Segmente mit Punkten in der gegebenen Detektionsmaske bestimmt wurden.In these or other scenarios, detecting includes using the projection value PS to verify that the given merged segment is part of a particular detected object associated with the given detection mask. A verification can be performed that the given merged segment is part of a particular detected object associated with the given detection mask if the projection value PS exceeds a threshold or has a value greater than other projection values used for other merged segments with points in the given detection mask have been determined.

Die Implementierungssysteme können Folgendes umfassen: einen Prozessor; und ein nichtflüchtiges computerlesbares Speichermedium, das Programmieranweisungen umfasst, die konfiguriert sind, um zu bewirken, dass der Prozessor ein Verfahren zur Objektdetektion implementiert. Die oben beschriebenen Verfahren können auch durch ein Computerprogrammprodukt implementiert werden, das einen Speicher und Programmieranweisungen umfasst, die konfiguriert sind, um zu bewirken, dass ein Prozessor Operationen durchführt.The implementation systems may include: a processor; and a non-transitory computer-readable storage medium comprising programming instructions configured to cause the processor to implement a method for object detection. The methods described above may also be implemented by a computer program product comprising memory and programming instructions configured to cause a processor to perform operations.

Figurenlistecharacter list

Die vorliegende Lösung wird unter Bezugnahme auf die folgenden Zeichnungsfiguren beschrieben, in denen gleiche Bezugszeichen in den Figuren gleiche Elemente darstellen.

  • 1 ist eine Darstellung eines illustrativen Systems.
  • 2 ist eine Veranschaulichung einer illustrativen Architektur für ein Fahrzeug.
  • 3 ist eine Veranschaulichung einer illustrativen Architektur für ein LiDAR-System, das von dem in 2 gezeigten Fahrzeug verwendet wird.
  • 4 ist eine Veranschaulichung einer illustrativen Computervorrichtung.
  • 5 stellt ein Blockdiagramm bereit, das zum Verständnis nützlich ist, wie die Fahrzeugsteuerung gemäß der vorliegenden Lösung erreicht wird.
  • Die 6A-6B (hierin kollektiv als „6“ bezeichnet) stellen ein Flussdiagramm eines veranschaulichenden Verfahrens zum Steuern eines autonomen Fahrzeugs unter Verwendung von CLF-Objektdetektion bereit.
  • 7 stellt ein Flussdiagramm eines veranschaulichenden Verfahrens zur CLF-Objektdetektion bereit.
  • 8 stellt ein Flussdiagramm eines veranschaulichenden Verfahrens zum Beschneiden (oder Reduzieren) der Anzahl von LiDAR-Datenpunkten bereit, die verarbeitet werden, um ein Objekt zu detektieren, das sich in der Nähe eines AV befindet.
  • 9 stellt ein Flussdiagramm eines veranschaulichenden Verfahrens zum Durchführen eines LiDAR-to-Image-Detection-Algorithmus („LID“-Matching-Algorithmus) bereit.
  • 10 stellt ein veranschaulichendes Bild bereit, das von einer Kamera eines Fahrzeugs aufgenommen wurde.
  • 11 stellt ein veranschaulichendes Bild mit einer Mehrzahl von Begrenzungskästen bereit, die darauf überlagert sind.
  • 12 stellt ein veranschaulichendes Bild mit einem Begrenzungsrechteck und einer darauf überlagerten Maske bereit.
  • 13 stellt ein Flussdiagramm eines veranschaulichenden Verfahrens zum Bestimmen einer Wahrscheinlichkeitsverteilung von Pixeln bereit, an die ein LiDAR-Datenpunkt unter Berücksichtigung einer Projektionsunsicherheit projizieren kann.
  • 14 stellt ein Flussdiagramm eines veranschaulichenden Verfahrens zum Bestimmen einer Wahrscheinlichkeitsverteilung über einen Satz von Objekterfassungen bereit, in denen ein LiDAR-Datenpunkt wahrscheinlich ist.
  • 15 stellt eine Darstellung bereit, die zum Verständnis des neuen Algorithmus der lokalen Variationssegmentierung („Local Variation Segmentation“) der vorliegenden Lösung nützlich ist
  • 16 stellt eine Darstellung bereit, die einen Graphen zeigt, der während des LVS-Algorithmus von 15 erzeugt wird.
  • 17 stellt eine Veranschaulichung einer veranschaulichenden Architektur für einen Segmentmerger bereit.
  • 18 stellt ein Flussdiagramm eines veranschaulichenden Verfahrens zur Objektdetektionssegmentfilterung bereit.
The present solution is described with reference to the following drawing figures, in which like reference numbers represent like elements in the figures.
  • 1 Figure 12 is a representation of an illustrative system.
  • 2 Figure 12 is an illustration of an illustrative architecture for a vehicle.
  • 3 is a depiction of an illustrative architecture for a LiDAR system derived from the in 2 vehicle shown is used.
  • 4 Figure 12 is an illustration of an illustrative computing device.
  • 5 provides a block diagram useful for understanding how vehicle control is achieved according to the present solution.
  • The 6A-6B (herein collectively as “ 6 ') provide a flow diagram of an illustrative method for controlling an autonomous vehicle using CLF object detection.
  • 7 provides a flow chart of an illustrative method for CLF object detection.
  • 8th provides a flowchart of an illustrative method for pruning (or reducing) the number of LiDAR data points processed to detect an object that is in proximity to an AV.
  • 9 FIG. 12 provides a flowchart of an illustrative method for performing a LiDAR-to-Image Detection ("LID") matching algorithm.
  • 10 provides an illustrative image captured by a camera of a vehicle.
  • 11 provides an illustrative image with a plurality of bounding boxes superimposed thereon.
  • 12 provides an illustrative image with a bounding box and a mask overlaid on it.
  • 13 FIG. 12 provides a flowchart of an illustrative method for determining a probability distribution of pixels that a LiDAR data point can project to, considering projection uncertainty.
  • 14 provides a flowchart of an illustrative method for determining a probability distribution over a set of object detections in which a LiDAR data point is likely.
  • 15 12 provides an illustration useful in understanding the new Local Variation Segmentation algorithm of the present solution
  • 16 provides a plot showing a graph generated during the LVS algorithm of 15 is produced.
  • 17 provides an illustration of an illustrative architecture for a segment merger.
  • 18 Figure 12 provides a flow chart of an illustrative method for object detection segment filtering.

DETAILLIERTE BESCHREIBUNGDETAILED DESCRIPTION

Wie in diesem Dokument verwendet, umfassen die Singularformen „ein(e)“, „der/die/das“ auch eine Mehrzahl als Referenz, es sei denn, der Kontext schreibt eindeutig etwas anderes vor. Sofern nicht anders definiert, haben alle hierin verwendeten technischen und wissenschaftlichen Begriffe die gleichen Bedeutungen, wie sie vom Durchschnittsfachmann allgemein verstanden werden. Wie in diesem Dokument verwendet, bedeutet der Begriff „umfassend“ so viel wie „einschließend“, ohne darauf beschränkt zu sein. Weitere Begriffe, die für dieses Dokument relevant sind, sind am Ende dieser detaillierten Beschreibung enthalten.As used in this document, the singular forms "a", "the" also include a plural of reference, unless the context clearly dictates otherwise. Unless otherwise defined, all technical and scientific terms used herein have the same meanings as commonly understood by those of ordinary skill in the art. As used in this document, the term "comprising" means including, but not limited to. Additional terms relevant to this document are included at the end of this detailed description.

Eine „elektronische Vorrichtung“ oder eine „Rechenvorrichtung“ bezieht sich auf eine Vorrichtung, die einen Prozessor und einen Speicher umfasst. Jede Vorrichtung kann ihren eigenen Prozessor und/oder Speicher aufweisen, oder der Prozessor und/oder der Speicher können mit anderen Vorrichtungen wie in einer virtuellen Maschine oder Containeranordnung gemeinsam genutzt werden. Der Speicher enthält oder empfängt Programmieranweisungen, die, wenn sie durch den Prozessor ausgeführt werden, die elektronische Vorrichtung veranlassen, eine oder mehrere Operationen gemäß den Programmieranweisungen durchzuführen.An “electronic device” or a “computing device” refers to a device that includes a processor and memory. Each device may have its own processor and/or memory, or the processor and/or memory may be shared with other devices, such as in a virtual machine or container arrangement. The memory contains or receives programming instructions that, when executed by the processor, cause the electronic device to perform one or more operations according to the programming instructions.

Die Begriffe „Speicher“, „Speichervorrichtung“, „Datenspeicher“, „Datenspeicher“ und dergleichen beziehen sich jeweils auf eine nichtflüchtige Vorrichtung, auf der computerlesbare Daten, Programmieranweisungen oder beide gespeichert sind. Mit Ausnahme, wo spezifisch anders angegeben, sollen die Begriffe „Speicher“, „Speichervorrichtung“, „Datenspeicher“, „Datenspeicher“ und dergleichen einzelne Vorrichtungsausführungsformen umfassen, Ausführungsformen, bei denen mehrere Speichervorrichtungen zusammen einen Satz von Daten oder Anweisungen speichern oder gemeinsam speichern- sowie einzelne Sektoren innerhalb solcher Vorrichtungen.The terms "memory," "storage device," "data storage," "data storage," and the like each refer to a non-transitory device having stored computer-readable data, programming instructions, or both. Except where specifically stated otherwise, the terms "memory," "storage device," "data storage," "data storage," and the like are intended to encompass individual device embodiments, embodiments in which multiple memory devices collectively store or collectively store a set of data or instructions. as well as individual sectors within such devices.

Die Begriffe „Prozessor“ und „Verarbeitungsgerät“ beziehen sich auf eine Hardwarekomponente eines elektronischen Geräts, die für die Ausführung von Programmieranweisungen konfiguriert ist. Sofern nicht ausdrücklich anders angegeben, soll der Singularbegriff „Prozessor“ oder „Verarbeitungsvorrichtung“ sowohl Ausführungsformen einer einzelnen Verarbeitungsvorrichtung als auch Ausführungsformen umfassen, in denen mehrere Verarbeitungsvorrichtungen zusammen oder gemeinsam ein Verfahren ausführen.The terms "processor" and "processing device" refer to a hardware component of an electronic device that is configured to execute programming instructions. Unless expressly stated otherwise, the singular term “processor” or “processing device” is intended to encompass both embodiments of a single processing device and embodiments in which multiple processing devices perform a method together or in concert.

Der Begriff „Fahrzeug“ bezieht sich auf jede bewegliche Form des Transportmittels, die entweder einen oder mehrere menschliche Insassen und/oder Fracht befördern kann und mit jeder Form von Energie betrieben wird. Ein „autonomes Fahrzeug“ ist ein Fahrzeug mit einem Prozessor, Programmieranweisungen und Antriebsstrangkomponenten, die durch den Prozessor steuerbar sind, ohne einen menschlichen Bediener zu erfordern. Ein autonomes Fahrzeug kann vollständig autonom sein, indem es keinen menschlichen Bediener für die meisten oder alle Fahrbedingungen und Funktionen benötigt, oder es kann halbautonom sein, indem ein menschlicher Bediener unter bestimmten Bedingungen oder für bestimmte Operationen erforderlich sein kann oder ein menschlicher Bediener das autonome System des Fahrzeugs außer Kraft setzen kann und die Steuerung des Fahrzeugs übernehmen kann.The term "Vehicle" refers to any mobile form of transportation that can carry either one or more human occupants and/or cargo and is powered by any form of energy. An "autonomous vehicle" is a vehicle with a processor, programming instructions, and powertrain components controllable by the processor without a human operator ner to require. An autonomous vehicle can be fully autonomous in that it does not require a human operator for most or all driving conditions and functions, or it can be semi-autonomous in that a human operator may be required under certain conditions or for certain operations, or a human operator can run the autonomous system of the vehicle can override and take control of the vehicle.

In diesem Dokument soll, wenn z.B. von einem „ersten“ und einem „zweiten“ Wert die Rede ist, um ein Nomen zu modifizieren, eine solche Verwendung lediglich dazu bestimmt sein, einen Gegenstand von einem anderen zu unterscheiden, und es soll damit keine sequentielle Reihenfolge impliziert sein, sofern nicht speziell angegeben. Zusätzlich sollen die Begriffe der relativen Position, wie z.B. der Vertikalen u. a. und der Horizontalen, oder der Vorderseite und der Rückseite, wenn sie verwendet werden, relativ zueinander gemeint sein, d.h., diese müssen nicht absolut sein, und diese sollen sich nur auf eine mögliche Position der Vorrichtung beziehen, die diesen Begriffen in Abhängigkeit von der Orientierung der Vorrichtung zugeordnet ist.For example, when reference is made in this document to a "first" and a "second" value to modify a noun, such usage is intended solely to distinguish one item from another, and is not intended to be sequential Order to be implied unless specifically stated. In addition, the terms of relative position, such as vertical, etc. and horizontal, or front and back when used, are meant relative to each other, i.e. these need not be absolute and are intended to refer only to a possible position of the device corresponding to these terms depending on the orientation associated with the device.

Echtzeit-Vorhersage von Aktionen durch Fahrer anderer Fahrzeuge und Fußgänger ist eine Herausforderung für halbautonome oder autonome Fahrzeuganwendungen. Eine solche Echtzeitvorhersage ist besonders anspruchsvoll, wenn die Fahrer und/oder Fußgänger Verkehrsregeln brechen. Systematisch, unter der Annahme, dass die Worst-Case-Aktion von den Fahrern und/oder Fußgängern das selbstfahrende Fahrzeug paralysiert, aber irrtümlich optimistische Vorhersagen zu einem unerwünschten autonomen Fahrzeugverhalten führen können.Real-time prediction of actions by drivers of other vehicles and pedestrians is a challenge for semi-autonomous or autonomous vehicle applications. Such real-time prediction is particularly challenging when drivers and/or pedestrians are breaking traffic rules. Systematically, assuming that the worst-case action by the drivers and/or pedestrians will paralyze the self-driving vehicle, but erroneously optimistic predictions may result in undesirable autonomous vehicle behavior.

Dieses Dokument beschreibt Verfahren und Systeme, die auf das Adressieren der oben beschriebenen Probleme und/oder andere Probleme gerichtet sind. Dementsprechend betrifft die vorliegende Lösung Systeme und Verfahren zum Steuern von Fahrzeugen. Die Verfahren beinhalten im Allgemeinen: Erzeugen einer Fahrzeugtrajektorie für das Fahrzeug, das sich in Bewegung befindet; Durchführen von CLF-Objektdetektionsoperationen, um ein Objekt innerhalb eines gegebenen Abstands von dem Fahrzeug zu detektieren; Erzeugen mindestens einer möglichen Objekttrajektorie für das erfasste Objekt; Verwenden der Fahrzeugtrajektorie und mindestens einer möglichen Objekttrajektorie, um zu bestimmen, ob es eine unerwünschte Wahrscheinlichkeit gibt, dass eine Kollision zwischen dem Fahrzeug und dem Objekt auftreten wird; und Modifizieren der Fahrzeugtrajektorie, wenn eine Bestimmung durchgeführt wird, dass es eine unerwünschte Wahrscheinlichkeit gibt, dass die Kollision auftreten wird.This document describes methods and systems aimed at addressing the issues described above and/or other issues. Accordingly, the present solution relates to systems and methods for controlling vehicles. The methods generally include: generating a vehicle trajectory for the vehicle in motion; performing CLF object detection operations to detect an object within a given distance from the vehicle; generating at least one possible object trajectory for the detected object; using the vehicle trajectory and at least one possible object trajectory to determine if there is an undesirable probability that a collision between the vehicle and the object will occur; and modifying the vehicle trajectory when a determination is made that there is an undesirable probability that the collision will occur.

Insbesondere wird die vorliegende Lösung hierin im Kontext eines autonomen Fahrzeugs beschrieben. Die vorliegende Lösung ist nicht auf autonome Fahrzeuganwendungen beschränkt. Die vorliegende Lösung kann bei anderen Anwendungen, wie Roboteranwendungen, Radarsystemanwendungen, Metrikanwendungen und/oder System leistungsanwendungen verwendet werden.In particular, the present solution is described herein in the context of an autonomous vehicle. The present solution is not limited to autonomous vehicle applications. The present solution can be used in other applications such as robotic applications, radar system applications, metrics applications and/or system performance applications.

Veranschaulichende SystemeIllustrative Systems

Unter Bezugnahme auf 1 ist eine Veranschaulichung eines illustrativen Systems 100 bereitgestellt. Das System 100 umfasst ein Fahrzeug 1021, das halbautonom oder autonom entlang einer Straße fährt. Das Fahrzeug 1021 wird hierin auch als ein autonomes Fahrzeug („AV“) bezeichnet. Das AV 1021 kann ein Landfahrzeug (wie in 1 gezeigt), ein Flugzeug oder ein Wasserfahrzeug beinhalten, ist aber nicht darauf beschränkt.With reference to 1 an illustration of an illustrative system 100 is provided. The system 100 includes a vehicle 102 1 driving semi-autonomously or autonomously along a road. The vehicle 102 1 is also referred to herein as an autonomous vehicle ("AV"). The AV 102 1 can be a land vehicle (as in 1 shown), include, but is not limited to, an airplane or a watercraft.

Das AV 1021 ist im Allgemeinen so konfiguriert, dass es Objekte 1021, 114, 116 in der Nähe dazu erkennt. Die Objekte können ein Fahrzeug 1022, einen Radfahrer 114 (wie etwa einen Fahrer eines Fahrrads, Elektrorollers, Motorrads oder dergleichen) und/oder einen Fußgänger 116 beinhalten, sind aber nicht darauf beschränkt. Die Objektdetektion wird gemäß einem neuen CLF-Objekterkennungsprozess erreicht. Der neue CLF-Objekterkennungsprozess wird nachstehend ausführlich beschrieben. Wenn eine solche Detektion durchgeführt wird, führt das AV 1021 folgende Operationen durch: Erzeugen einer oder mehrerer möglicher Objekttrajektorien für das detektierte Objekt; und Analysieren mindestens einer der erzeugten möglichen Objekttrajektorien, um zu bestimmen, ob es eine unerwünschte Wahrscheinlichkeit gibt, dass eine Kollision zwischen dem AV und dem Objekt in einem Schwellenzeitraum (z.B. 1 Minute) auftritt oder nicht. Wenn dies der Fall ist, führt das AV 1021 Operationen durch, um zu bestimmen, ob die Kollision vermieden werden kann, wenn einer gegebenen Fahrzeugtrajektorie von dem AV 1021 befolgt wird und ein beliebiges aus einer Vielzahl von dynamisch erzeugten Notmanövern in einer vordefinierten Zeitperiode (z.B. N Millisekunden) durchgeführt wird. Wenn die Kollision vermieden werden kann, dann übernimmt das AV 1021 keine Aktion oder führt optional ein vorsichtiges Manöver durch (z.B. ein sachtes Verlangsamen). Kann dagegen die Kollision nicht vermieden werden, so nimmt das AV 1021 unmittelbar ein Notmanöver (z.B. Bremsen und/oder Richtungswechsel) ein.The AV 102 1 is generally configured to detect objects 102 1 , 114, 116 in proximity thereto. The objects may include, but are not limited to, a vehicle 102 2 , a cyclist 114 (such as a rider of a bicycle, electric scooter, motorcycle, or the like), and/or a pedestrian 116 . Object detection is achieved according to a new CLF object detection process. The new CLF object detection process is described in detail below. When performing such a detection, the AV 102 1 performs the following operations: generating one or more possible object trajectories for the detected object; and analyzing at least one of the generated possible object trajectories to determine whether or not there is an undesirable probability that a collision between the AV and the object will occur in a threshold time period (eg, 1 minute). If so, the AV 102 1 performs operations to determine whether the collision can be avoided by following a given vehicle trajectory by the AV 102 1 and any of a variety of dynamically generated emergency maneuvers in a predefined time period (eg N milliseconds). If the collision can be avoided, then the AV 102 1 takes no action or, optionally, performs a cautious maneuver (eg, gently slowing down). Can the colli sion cannot be avoided, the AV 102 1 immediately initiates an emergency maneuver (e.g. braking and/or changing direction).

Unter Bezugnahme auf 2 ist eine Veranschaulichung einer illustrativen Systemarchitektur 200 für ein Fahrzeug bereitgestellt. Die Fahrzeuge 1021 und/oder 1022 von 1 können die gleiche oder ähnliche Systemarchitektur wie die in 2 gezeigte aufweisen, so dass die folgende Diskussion der Systemarchitektur 200 ausreichend ist, um das (die) Fahrzeug(e) 1021, 1022 von 1 zu verstehen.With reference to 2 An illustration of an illustrative system architecture 200 for a vehicle is provided. The vehicles 102 1 and/or 102 2 from 1 can have the same or similar system architecture as that in 2 1, such that the following discussion of the system architecture 200 is sufficient to describe the vehicle(s) 102 1 , 102 2 of FIG 1 to understand.

Wie in 2 gezeigt, beinhaltet das Fahrzeug 200 einen Motor oder eine Brennkraftmaschine 202 und verschiedene Sensoren 204-218 zum Messen verschiedener Parameter des Fahrzeugs. Bei gasbetriebenen oder Hybridfahrzeugen, die einen mit Kraftstoff betriebenen Motor aufweisen, können die Sensoren beispielsweise einen Motortemperatursensor 204, einen Batteriespannungssensor 206, einen Motorrotationen pro Minute (Drehzahl/Minute)-Sensor 208 und einen Drosselpositionssensor 210 beinhalten. Wenn das Fahrzeug ein Elektro- oder Hybridfahrzeug ist, kann das Fahrzeug einen Elektromotor aufweisen und dementsprechend Sensoren wie etwa ein Batterieüberwachungssystem 212 (um Strom, Spannung und/oder Temperatur der Batterie zu messen), Motorstrom- 214 und Spannungs-Sensoren 216 sowie Motorpositionssensoren, wie Resolver und Codierer 218, aufweisen.As in 2 As shown, the vehicle 200 includes a motor or engine 202 and various sensors 204-218 for measuring various parameters of the vehicle. For example, in gas-powered or hybrid vehicles that have a fuel-powered engine, the sensors may include an engine temperature sensor 204 , a battery voltage sensor 206 , an engine revolutions per minute (RPM) sensor 208 , and a throttle position sensor 210 . If the vehicle is an electric or hybrid vehicle, the vehicle may include an electric motor and, accordingly, sensors such as a battery monitoring system 212 (to measure battery current, voltage, and/or temperature), motor current 214 and voltage sensors 216, and motor position sensors, such as resolver and encoder 218.

Betriebsparametersensoren, die beiden Arten von Fahrzeugen gemeinsam sind, beinhalten zum Beispiel: einen Positionssensor 236, wie etwa einen Beschleunigungsmesser, eine Gyroskop- und/oder Trägheitsmesseinheit; einen Geschwindigkeitssensor 238; und einen Wegstreckensensor 240. Das Fahrzeug kann auch eine Uhr bzw. einen Taktgeber 242 aufweisen, die das System verwendet, um die Fahrzeugzeit während des Betriebs zu bestimmen. Der Taktgeber 242 kann in das Fahrzeug-Bordcomputergerät codiert werden, es kann sich um eine separate Vorrichtung handeln, oder es können mehrere Taktgeber verfügbar sein.Operating parameter sensors common to both types of vehicles include, for example: a position sensor 236, such as an accelerometer, gyroscope, and/or inertial measurement unit; a speed sensor 238; and a distance sensor 240. The vehicle may also include a clock 242 that the system uses to determine vehicle time during operation. The clock 242 may be encoded into the vehicle on-board computing device, it may be a separate device, or multiple clocks may be available.

Das Fahrzeug umfasst auch verschiedene Sensoren, die arbeiten, um Informationen über die Umgebung, in der das Fahrzeug fährt, zu sammeln. Diese Sensoren können zum Beispiel Folgendes beinhalten: einen Standortsensor 260 (z.B. ein globales Positionsbestimmungssystem (Global Positioning System); Objekterfassungssensoren, wie etwa eine oder mehrere Kameras 262; ein LiDAR-Sensorsystem 264; und/oder ein Radar- und/oder ein Sonarsystem 266. Die Sensoren können auch Umgebungssensoren 268 beinhalten, wie etwa einen Niederschlagssensor und/oder einen Umgebungstemperatursensor. Die Objekterfassungssensoren können es dem Fahrzeug ermöglichen, Objekte zu detektieren, die sich innerhalb eines gegebenen Entfernungsbereichs des Fahrzeugs 200 in einer beliebigen Richtung befinden, während die Umgebungssensoren Daten über Umgebungsbedingungen innerhalb des Fahrbereichs des Fahrzeugs sammeln.The vehicle also includes various sensors that work to gather information about the environment in which the vehicle is traveling. These sensors may include, for example: a location sensor 260 (e.g., a global positioning system); object detection sensors, such as one or more cameras 262; a LiDAR sensor system 264; and/or a radar and/or a sonar system 266 The sensors may also include environmental sensors 268, such as a precipitation sensor and/or an ambient temperature sensor The object detection sensors may allow the vehicle to detect objects that are within a given range of distance of the vehicle 200 in any direction while the environmental sensors collect data about environmental conditions within the driving range of the vehicle.

Während des Betriebs werden Informationen von den Sensoren an eine bordeigene Rechenvorrichtung 220 übertragen. Die bordeigene Rechenvorrichtung 220 analysiert die von den Sensoren erfassten Daten und steuert optional Operationen des Fahrzeugs basierend auf Ergebnissen der Analyse. Zum Beispiel kann die bordeigene Rechenvorrichtung 220 steuern: Bremsen über eine Bremssteuerung 232; Richtung über eine Lenksteuerung 224; Geschwindigkeit und Beschleunigung über eine Drosselsteuerung 226 (in einem gasbetriebenen Fahrzeug) oder eine Motordrehzahlsteuerung 228 (wie etwa eine Strompegelsteuerung in einem Elektrofahrzeug); eine Differentialgetriebesteuerung 230 (in Fahrzeugen mit Getrieben); und/oder andere Steuerungen.During operation, information from the sensors is transmitted to an onboard computing device 220 . The onboard computing device 220 analyzes the data collected from the sensors and optionally controls operations of the vehicle based on results of the analysis. For example, the onboard computing device 220 may control: braking via a brake controller 232; direction via steering control 224; speed and acceleration via a throttle control 226 (in a gas-powered vehicle) or an engine speed control 228 (such as a current level control in an electric vehicle); a differential gear controller 230 (in vehicles with gears); and/or other controls.

Geographische Standortinformationen können von dem Standortsensor 260 an die bordeigene Rechenvorrichtung 220 übermittelt werden, die dann auf eine Karte der Umgebung zugreifen kann, die der Standortinformation entspricht, um bekannte feste Merkmale der Umgebung, wie Straßen, Gebäude, Stoppschilder und/oder Stop/Go-Signale, zu bestimmen. Erfasste Bilder von den Kameras 262 und/oder Objekterfassungsinformationen, die von Sensoren wie LiDAR 264 erfasst werden, werden von diesen Sensoren an die bordeigene Rechenvorrichtung 220 übermittelt. Die Objekterfassungsinformationen und/oder die erfassten Bilder werden von der bordeigenen Rechenvorrichtung 220 verarbeitet, um Objekte in der Nähe des Fahrzeugs 200 zu detektieren. Jede bekannte oder bekannte Technik zur Herstellung einer Objektdetektion basierend auf Sensordaten und/oder erfassten Bildern kann in den in diesem Dokument offenbarten Ausführungsformen verwendet werden.Geographical location information may be communicated from the location sensor 260 to the onboard computing device 220, which may then access a map of the surrounding area corresponding to the location information to determine known fixed features of the surrounding area, such as streets, buildings, stop signs, and/or stop/go signals to determine. Captured images from the cameras 262 and/or object detection information captured by sensors such as LiDAR 264 are communicated from those sensors to the onboard computing device 220 . The object detection information and/or the captured images are processed by the onboard computing device 220 to detect objects in the vicinity of the vehicle 200 . Any known or known technique for making an object detection based on sensor data and/or captured images can be used in the embodiments disclosed in this document.

Die LiDAR-Informationen werden von dem LiDAR-Sensor 264 an die bordeigene Rechenvorrichtung 220 übermittelt. Zusätzlich werden erfasste Bilder von der Kamera oder den Kameras 262 an die bordeigene Rechenvorrichtung 220 übertragen. Die LiDAR-Informationen und/oder erfassten Bilder werden von der bordeigenen Rechenvorrichtung 220 verarbeitet, um Objekte in der Nähe des Fahrzeugs 200 zu detektieren. Die Art und Weise, in der die Objekterfassungen durch die bordeigene Rechenvorrichtung 220 durchgeführt werden, wird offensichtlich, wenn die Diskussion fortschreitet.The LiDAR information is communicated from the LiDAR sensor 264 to the onboard computing device 220 . Additionally, captured images are transmitted from the camera or cameras 262 to the onboard computing device 220 . The LiDAR information and/or captured images are provided by the bor own computing device 220 to detect objects in the vicinity of the vehicle 200 . The manner in which the object detections are performed by the onboard computing device 220 will become apparent as the discussion proceeds.

Wenn die bordeigene Rechenvorrichtung 220 ein sich bewegendes Objekt detektiert, erzeugt die bordeigene Rechenvorrichtung 220 eine oder mehrere mögliche Objekttrajektorien für das erfasste Objekt und analysiert die möglichen Objekttrajektorien, um die Wahrscheinlichkeit einer Kollision zwischen dem Objekt und dem AV zu bewerten. Wenn die Wahrscheinlichkeit einen akzeptablen Schwellenwert überschreitet, führt die bordeigene Rechenvorrichtung 220 Operationen durch, um zu bestimmen, ob die Kollision vermieden werden kann, wenn das AV einer definierten Fahrzeugtrajektorie folgt und/oder ein oder mehrere dynamisch erzeugte Notmanöver implementiert, die in einem vordefinierten Zeitraum (z.B. N Millisekunden) durchzuführen wären. Wenn die Kollision vermieden werden kann, kann die bordeigene Rechenvorrichtung 220 bewirken, dass das Fahrzeug 200 ein vorsichtiges Manöver durchführt (z.B., schwach verlangsamen, beschleunigen oder einen Bogen fahren (swerve)). Im Gegensatz dazu veranlasst die bordeigene Rechenvorrichtung 220, wenn die Kollision nicht vermieden werden kann, das Fahrzeug 200 dazu, ein Notmanöver (z.B. Brems- und/oder Änderungsfahrtrichtung) aufzunehmen.When the onboard computing device 220 detects a moving object, the onboard computing device 220 generates one or more possible object trajectories for the detected object and analyzes the possible object trajectories to assess the likelihood of a collision between the object and the AV. If the probability exceeds an acceptable threshold, the onboard computing device 220 performs operations to determine whether the collision can be avoided if the AV follows a defined vehicle trajectory and/or implements one or more dynamically generated emergency maneuvers that occur in a predefined time period (e.g. N milliseconds) would have to be performed. If the collision can be avoided, the onboard computing device 220 may cause the vehicle 200 to perform a cautious maneuver (e.g., slow down slightly, accelerate, or swerve). In contrast, if the collision cannot be avoided, the onboard computing device 220 prompts the vehicle 200 to initiate an emergency maneuver (e.g., braking and/or changing direction).

Unter Bezugnahme auf 3 ist eine Veranschaulichung eines illustrativen LiDAR-Systems 300 bereitgestellt. Das LiDAR-System 264 von 2 kann das gleiche sein wie oder im Wesentlichen ähnlich dem LiDAR-System 300. Als solches ist die Diskussion des LiDAR-Systems 300 zum Verständnis des LiDAR-Systems 264 von 2 ausreichend.With reference to 3 An illustration of an illustrative LiDAR system 300 is provided. The LiDAR system 264 from 2 may be the same as or substantially similar to LiDAR system 300. As such, discussion of LiDAR system 300 is necessary for understanding LiDAR system 264 of FIG 2 sufficient.

Wie in 3 gezeigt, umfasst das LiDAR-System 300 ein Gehäuse 306, das um 360° um eine Mittelachse drehbar sein kann, wie beispielsweise eine Nabe oder Achse 316. Das Gehäuse kann eine Emitter-/ Empfängeröffnung 312 umfassen, die aus einem für Licht transparenten Material hergestellt ist. Obwohl in 2 eine einzige Öffnung gezeigt ist, ist die vorliegende Lösung in dieser Hinsicht nicht beschränkt. In anderen Szenarien können mehrere Öffnungen zum Aussenden und/oder Empfangen von Licht bereitgestellt werden. Entweder kann das LiDAR-System 300 Licht durch eine oder mehrere der Apertur(en) 312 emittieren und reflektiertes Licht zurück in Richtung einer oder mehrerer der Apertur(en) 211 empfangen, wenn sich das Gehäuse 306 um die inneren Komponenten. In alternativen Szenarien kann die Außenschale des Gehäuses 306 eine stationäre Kuppel sein, die zumindest teilweise aus einem Material hergestellt ist, das für Licht transparent ist, mit drehbaren Komponenten innerhalb des Gehäuses 306.As in 3 As shown, the LiDAR system 300 includes a housing 306 that may be rotatable 360° about a central axis, such as a hub or axle 316. The housing may include an emitter/receiver port 312 made of a light transparent material is. Although in 2 a single opening is shown, the present solution is not limited in this respect. In other scenarios, multiple apertures can be provided for emitting and/or receiving light. Either, the LiDAR system 300 may emit light through one or more of the aperture(s) 312 and receive reflected light back toward one or more of the aperture(s) 211 as the housing 306 wraps around the internal components. In alternative scenarios, the outer shell of housing 306 may be a stationary dome made at least in part from a material that is transparent to light, with rotatable components within housing 306.

Innerhalb der rotierenden Schale oder der stationären Kuppel ist ein Lichtemittersystem 304 vorgesehen, das konfiguriert und positioniert ist, um Lichtimpulse durch die Öffnung 312 oder durch die transparente Kuppel des Gehäuses 306 über einen oder mehrere Laseremitterchips oder andere lichtemittierende Vorrichtungen zu erzeugen und zu emittieren. Das Emittersystem 304 kann eine beliebige Anzahl einzelner Emitter (z.B. 8 Emitter, 64 Emitter oder 128 Emitter) beinhalten. Die Emitter können Licht im Wesentlichen mit der gleichen Intensität oder mit variierenden Intensitäten emittieren. Die von dem Lichtemittersystem 304 emittierten Einzelstrahlen haben einen wohldefinierten Polarisationszustand, der über die gesamte Anordnung nicht gleich ist. Als ein Beispiel können einige Strahlen eine vertikale Polarisation aufweisen und andere Strahlen können eine horizontale Polarisation aufweisen. Das LiDAR-System umfasst auch einen Lichtdetektor 308, der einen Photodetektor oder eine Anordnung von Photodetektoren enthält, die positioniert und konfiguriert sind, um Licht zu empfangen, das zurück in das System reflektiert wird. Das Emittersystem 304 und der Lichtdetektor 308 würden sich mit der rotierenden Schale drehen, oder sie würden sich innerhalb der stationären Kuppel des Gehäuses 306 drehen. Eine oder mehrere optische Elementstrukturen 310 können vor der lichtemittierenden Einheit 304 und/oder dem Lichtdetektor 308 positioniert sein, um als eine oder mehrere Linsen oder Wellenplatten zu dienen, die Licht fokussieren und lenken, das durch die optische Elementstruktur 310 geleitet wird.Provided within the rotating shell or stationary dome is a light emitter system 304 configured and positioned to generate and emit pulses of light through the aperture 312 or through the transparent dome of the housing 306 via one or more laser emitter chips or other light emitting devices. The emitter system 304 can include any number of individual emitters (e.g., 8 emitters, 64 emitters, or 128 emitters). The emitters can emit light at essentially the same intensity or at varying intensities. The individual beams emitted by the light emitter system 304 have a well-defined state of polarization which is not the same over the entire arrangement. As an example, some beams may have vertical polarization and other beams may have horizontal polarization. The LiDAR system also includes a light detector 308 that includes a photodetector or array of photodetectors positioned and configured to receive light reflected back into the system. The emitter system 304 and the light detector 308 would rotate with the rotating shell or they would rotate within the stationary dome of the housing 306. One or more optical element structures 310 may be positioned in front of the light emitting unit 304 and/or the light detector 308 to serve as one or more lenses or waveplates that focus and direct light transmitted through the optical element structure 310 .

Eine oder mehrere optische Elementstrukturen 310 können vor einem Spiegel 312 positioniert sein, um Licht zu fokussieren und zu lenken, das durch die optische Elementstruktur 310 geleitet wird. Wie nachstehend gezeigt, umfasst das System eine optische Elementstruktur 310, die vor dem Spiegel 312 positioniert und mit den rotierenden Elementen des Systems verbunden ist, so dass sich die optische Elementstruktur 310 mit dem Spiegel 312 dreht. Alternativ oder zusätzlich kann die optische Elementstruktur 310 mehrere derartige Strukturen (z.B. Linsen und/oder Wellenplatten) umfassen. Optional können mehrere optische Elementstrukturen 310 in einer Anordnung auf oder integral mit dem Schalenabschnitt des Gehäuses 306 angeordnet sein.One or more optical element structures 310 may be positioned in front of a mirror 312 to focus and direct light transmitted through optical element structure 310 . As shown below, the system includes an optical element structure 310 positioned in front of mirror 312 and connected to the rotating elements of the system such that optical element structure 310 rotates with mirror 312 . Alternatively or additionally, the optical element structure 310 may include multiple such structures (e.g., lenses and/or waveplates). Optionally, multiple optical element structures 310 may be arranged in an array on or integral with the shell portion of the housing 306 .

Optional kann jede optische Elementstruktur 310 einen Strahlteiler beinhalten, der das Licht, das das System von Licht empfängt, von dem Licht trennt, das das System erzeugt. Der Strahlteiler kann zum Beispiel eine Viertelwellen- oder Halbwellen-Wellenplatte umfassen, um die Trennung durchzuführen und sicherzustellen, dass empfangenes Licht an die Empfängereinheit anstatt an das Emittersystem geleitet wird (was ohne eine solche Wellenplatte auftreten könnte, wenn das emittierte Licht und das empfangene Licht die gleichen oder ähnliche Polarisationen aufweisen sollten).Optionally, each optical element structure 310 can include a beam splitter that separates the light that the system receives from light from the light that the system produces. For example, the beam splitter may comprise a quarter-wave or half-wave waveplate to perform the separation and ensure that received light is directed to the receiver unit rather than to the emitter system (which could occur without such a waveplate when the emitted light and received light should have the same or similar polarizations).

Das LiDAR-System umfasst eine Leistungseinheit 318, um die lichtemittierende Einheit 304, einen Motor 316 und elektronische Komponenten mit Leistung zu versorgen. Das LiDAR-System umfasst auch einen Analysator 314 mit Elementen, wie etwa einem Prozessor 322 und einem nichtflüchtigen computerlesbaren Speicher 320, der Programmieranweisungen enthält, die konfiguriert sind, um es dem System zu ermöglichen, Daten zu empfangen, die von der Lichtdetektoreinheit gesammelt werden, und diese zu analysieren, um Eigenschaften des empfangenen Lichts zu messen und Informationen zu erzeugen, die ein verbundenes System verwenden kann, um Entscheidungen über den Betrieb in einer Umgebung zu treffen, aus der die Daten gesammelt wurden. Optional kann der Analysator 314 integral mit dem LiDAR-System 300 sein, wie gezeigt, oder einige oder alle davon können extern zu dem LiDAR-System sein und kommunikativ mit dem LiDAR-System über ein drahtgebundenes oder drahtloses Kommunikationsnetzwerk oder eine drahtlose Verbindung verbunden sein.The LiDAR system includes a power unit 318 to power the light emitting unit 304, a motor 316, and electronic components. The LiDAR system also includes an analyzer 314 having elements such as a processor 322 and non-transitory computer-readable memory 320 containing programming instructions configured to enable the system to receive data collected by the light detector unit, and analyze it to measure properties of the received light and generate information that a connected system can use to make decisions about operation in an environment from which the data was collected. Optionally, the analyzer 314 may be integral with the LiDAR system 300, as shown, or some or all of them may be external to the LiDAR system and communicatively connected to the LiDAR system via a wired or wireless communication network or link.

Unter Bezugnahme auf 4 ist eine Veranschaulichung einer illustrativen Architektur für eine Rechenvorrichtung 400 bereitgestellt. Die Rechenvorrichtung 110 von 1 und/oder die fahrzeuginterne Rechenvorrichtung 220 von 2 ist/sind dieselben wie oder ähnlich der Rechenvorrichtung 300. Als solches ist die Diskussion der Rechenvorrichtung 300 ausreichend, um die Rechenvorrichtung 110 aus 1 und die fahrzeuginterne Rechenvorrichtung 220 aus 2 zu verstehen.With reference to 4 An illustration of an illustrative architecture for a computing device 400 is provided. The computing device 110 of FIG 1 and/or the in-vehicle computing device 220 of FIG 2 is/are the same as or similar to computing device 300. As such, discussion of computing device 300 is sufficient to exclude computing device 110 1 and the in-vehicle computing device 220 2 to understand.

Die Rechenvorrichtung 400 kann mehr oder weniger Komponenten als die in 4 gezeigten umfassen, jedoch sind die gezeigten Komponenten ausreichend, um eine veranschaulichende Lösung zu offenbaren, die die vorliegende Lösung implementiert. Die Hardware-Architektur von 4 stellt eine Implementierung einer repräsentativen Rechenvorrichtung dar, die konfiguriert ist, um ein Fahrzeug zu betreiben, wie hierin beschrieben. Somit implementiert die Rechenvorrichtung 400 von 4 zumindest einen Teil des hierin beschriebenen Verfahrens bzw. der beschriebenen Verfahren.The computing device 400 may have more or fewer components than those in 4 shown, however, the components shown are sufficient to disclose an illustrative solution that implements the present solution. The hardware architecture of 4 FIG. 12 illustrates an implementation of a representative computing device configured to operate a vehicle as described herein. Thus, computing device 400 implements FIG 4 at least part of the method or methods described herein.

Einige oder alle Komponenten der Rechenvorrichtung 400 können als Hardware, als Software und/oder als eine Kombination von Hardware und Software implementiert sein. Die Hardware beinhaltet, ohne darauf beschränkt zu sein, eine oder mehrere elektronische Schaltungen. Die elektronischen Schaltungen können passive Komponenten (z.B. Widerstände und Kondensatoren) und/oder aktive Komponenten (z.B. Verstärker und/oder Mikroprozessoren) umfassen, sind aber nicht darauf beschränkt. Die passiven und/oder aktiven Komponenten können angepasst und/oder programmiert sein, um eine oder mehrere der hierin beschriebenen Methodologien, Prozeduren oder Funktionen durchzuführen.Some or all of the components of computing device 400 may be implemented in hardware, in software, and/or in a combination of hardware and software. Hardware includes, but is not limited to, one or more electronic circuits. The electronic circuits may include, but are not limited to, passive components (e.g., resistors and capacitors) and/or active components (e.g., amplifiers and/or microprocessors). The passive and/or active components may be adapted and/or programmed to perform one or more of the methodologies, procedures, or functions described herein.

Wie in 4 gezeigt, umfasst die Rechenvorrichtung 400 eine Benutzerschnittstelle 402, eine zentrale Verarbeitungseinheit (Central Processing Unit) 406, einen Systembus 410, einen Speicher 412, der mit anderen Teilen der Rechenvorrichtung 400 über den Systembus 410, eine Systemschnittstelle 460 und Hardwareeinheiten 414, die mit dem Systembus 410 verbunden sind, verbunden ist und von diesen zugänglich ist. Die Benutzerschnittstelle kann Eingabevorrichtungen und Ausgabevorrichtungen beinhalten, die Benutzersoftware-Interaktionen zum Steuern von Operationen der Rechenvorrichtung 400 erleichtern. Die Eingabevorrichtungen beinhalten unter anderem eine physische und/oder Berührungstastatur 450. Die Eingabevorrichtungen können über eine drahtgebundene oder drahtlose Verbindung (z.B. eine Bluetooth®-Verbindung) mit der Rechenvorrichtung 400 verbunden sein. Die Ausgabevorrichtungen umfassen, ohne darauf beschränkt zu sein, einen Lautsprecher 452, eine Anzeige 454 und/oder Leuchtdioden 456. Die Systemschnittstelle 460 ist konfiguriert, um drahtgebundene oder drahtlose Kommunikationen von und zu externen Vorrichtungen (z.B. Netzwerkknoten, wie Zugangspunkten usw.) zu erleichtern.As in 4 As shown, computing device 400 includes a user interface 402, a central processing unit 406, a system bus 410, a memory 412 that communicates with other parts of computing device 400 via system bus 410, a system interface 460, and hardware units 414 that communicate with the system bus 410 are connected, connected and accessible by them. The user interface may include input devices and output devices that facilitate user software interactions to control operations of computing device 400 . The input devices include, among other things, a physical and/or touch keyboard 450. The input devices may be connected to the computing device 400 via a wired or wireless connection (eg, a Bluetooth® connection). The output devices include, but are not limited to, a speaker 452, a display 454, and/or LEDs 456. The system interface 460 is configured to facilitate wired or wireless communications to and from external devices (e.g., network nodes, such as access points, etc.). .

Zumindest einige der Hardware-Entitäten 414 führen Aktionen aus, die Zugriff auf die und die Verwendung des Speichers 412 beinhalten, der ein Direktzugriffsspeicher („Random Access Memory“), ein Plattenlaufwerk, ein Flash-Speicher, ein Compact Disc Read Only Memory („CD-ROM“) und/oder eine andere Hardwarevorrichtung sein kann, die in der Lage ist, Anweisungen und Daten zu speichern. Die Hardware-Entitäten 414 können eine Platteneinheit 416 umfassen, die ein computerlesbares Speichermedium 418 umfasst, auf dem ein oder mehrere Sätze von Anweisungen 420 (z.B. einen Softwarecode), der konfiguriert ist, um eine oder mehrere der hierin beschriebenen Methodologien, Prozeduren oder Funktionen zu implementieren. Die Anweisungen 420 können sich auch vollständig oder zumindest teilweise innerhalb des Speichers 412 und/oder innerhalb der CPU 406 während der Ausführung davon durch die Rechenvorrichtung 400 befinden. Der Speicher 412 und die CPU 406 können auch maschinenlesbare Medien darstellen. Der Begriff „maschinenlesbare Medien“, wie hier verwendet, bezieht sich auf ein einzelnes Medium oder mehrere Medien (z.B., eine zentralisierte oder verteilte Datenbank und/oder zugehörige Caches und Server), die den einen oder die mehreren Sätze von Anweisungen 420 speichern. Der Begriff „maschinenlesbare Medien“, wie hier verwendet, bezieht sich auch auf ein beliebiges Medium, das in der Lage ist, einen Satz von Anweisungen 420 zur Ausführung durch die Rechenvorrichtung 400 zu speichern, zu codieren oder zu tragen und die die Rechenvorrichtung 400 dazu zu veranlassen, eine oder mehrere der Methodologien der vorliegenden Offenbarung durchzuführen.At least some of the hardware entities 414 perform actions that include accessing and using memory 412, which may be random access memory ("Random Access Memory"), disk drive, flash memory, compact disc read only memory ("CD-ROM") and/or other hardware device capable of storing instructions and data. The hardware entities 414 may include a disk unit 416 comprising a computer-readable storage medium 418 storing one or more sets of instructions 420 (e.g., software code) configured to perform one or more methodologies, procedures, or functions described herein imple mention. Instructions 420 may also reside wholly or at least partially within memory 412 and/or within CPU 406 during execution thereof by computing device 400. Memory 412 and CPU 406 may also represent machine-readable media. The term "machine-readable media" as used herein refers to a single medium or multiple media (eg, a centralized or distributed database and/or associated caches and servers) storing the one or more sets of instructions 420 . The term "machine-readable media" as used herein also refers to any medium capable of storing, encoding, or carrying a set of instructions 420 for execution by computing device 400, and enabling computing device 400 to do so to cause one or more of the methodologies of the present disclosure to be performed.

Unter Bezugnahme auf 5 wird ein Blockdiagramm bereitgestellt, das zum Verständnis nützlich ist, wie die Fahrzeugsteuerung gemäß der vorliegenden Lösung erreicht wird. Alle in den Blöcken 502-518 durchgeführten Operationen können durch die bordeigene Rechenvorrichtung eines Fahrzeugs (z.B. AV 1021 von 1) durchgeführt werden.With reference to 5 a block diagram is provided useful for understanding how vehicle control is achieved according to the present solution. All of the operations performed in blocks 502-518 can be performed by a vehicle's onboard computing device (e.g., AV 102 1 of 1 ) be performed.

In Block 502 wird ein Standort des Fahrzeugs erfasst. Diese Detektion kann basierend auf Sensordaten erfolgen, die von einem Positionssensor (z.B. dem Positionssensor 248 von 2) des Fahrzeugs ausgegeben werden. Diese Sensordaten können GPS-Daten umfassen, sind aber nicht darauf beschränkt. Der erfasste Standort des Fahrzeugs wird dann zu Block 506 weitergeleitet.In block 502, a location of the vehicle is acquired. This detection may be based on sensor data obtained from a position sensor (e.g., position sensor 248 of 2 ) of the vehicle. This sensor data may include, but is not limited to, GPS data. The detected location of the vehicle is then forwarded to block 506 .

In Block 504 wird ein Objekt in der Nähe des Fahrzeugs erfasst. Diese Detektion wird basierend auf Sensordaten durchgeführt, die von einem LiDAR-System (z.B. LiDAR-System 264 aus 2) und einer Kamera (z.B., Kamera 262 von 2) des Fahrzeugs ausgegeben werden. Mit fortschreitender Diskussion wird die Art und Weise, in der die Objekterkennung erreicht wird, offensichtlich werden. Informationen über das detektierte Objekt werden zu Block 506 weitergeleitet. Diese Informationen umfassen, ohne darauf beschränkt zu sein, eine anfängliche vorhergesagte Trajektorie des Objekts, eine Geschwindigkeit des Objekts, eine vollständige Ausdehnung des Objekts, einen Kurs des Objekts, eine Bewegungsrichtung des Objekts und/oder eine Klassifizierung des Objekts. Die volle Ausdehnung des Objekts und der Kurs des Objekts können durch einen in einem 3D-Graphen definierten Quader vorgegeben werden, auf dem die LiDAR-Datenpunkte aufgetragen sind. Die aufgetragenen LiDAR-Datenpunkte bilden eine 3D-Punktwolke. Die anfängliche vorhergesagte Objekttrajektorie kann einen linearen Pfad beinhalten, der in die Kursrichtung des Quaders zeigt, ist aber nicht darauf beschränkt.In block 504, an object near the vehicle is detected. This detection is performed based on sensor data received from a LiDAR system (e.g. LiDAR system 264 2 ) and a camera (e.g., Camera 262 from 2 ) of the vehicle. As the discussion progresses, the manner in which object detection is achieved will become apparent. Information about the detected object is passed to block 506 . This information includes, but is not limited to, an initial predicted trajectory of the object, a speed of the object, a full extent of the object, a course of the object, a direction of movement of the object, and/or a classification of the object. The full extent of the object and the object's course can be specified by a cuboid defined in a 3D graph on which the LiDAR data points are plotted. The applied LiDAR data points form a 3D point cloud. The initial predicted object trajectory may include, but is not limited to, a linear path pointing in the course direction of the box.

Diese Objekterfassungsinformationsausgabe von Block 504 kann anschließend verwendet werden, um mindestens eine autonome Fahroperation (z.B. Objektverfolgungsoperationen, Objekttrajektorienvorhersageoperationen, Fahrzeugtrajektorienbestimmungsoperationen und/oder Kollisionsvermeidungsoperationen) zu erleichtern. Beispielsweise kann ein Quader für das erfasste Objekt in einem 3D-Graphen mit einem LiDAR-Datensatz definiert werden. Der quaderförmige Kurs und die quaderförmige Geometrie können verwendet werden, um Objekttrajektorien in Block 512 vorherzusagen, wie nachstehend erörtert, und/oder eine Fahrzeugtrajektorie in Block 506 zu bestimmen, wie nachstehend erörtert. Eine prognostizierte Objekttrajektorie für den „worst case“ kann identifiziert und verwendet werden, um Notfallmanöver in den Blöcken 514-518 auszulösen, wie nachstehend erörtert. Die vorliegende Lösung ist nicht auf die Einzelheiten dieses Beispiels beschränkt.This object detection information output from block 504 may then be used to facilitate at least one autonomous driving operation (e.g., object tracking operations, object trajectory prediction operations, vehicle trajectory determination operations, and/or collision avoidance operations). For example, a cuboid for the detected object can be defined in a 3D graph with a LiDAR dataset. The cuboid course and cuboid geometry may be used to predict object trajectories at block 512, discussed below, and/or to determine a vehicle trajectory at block 506, discussed below. A "worst case" predicted object trajectory may be identified and used to trigger emergency maneuvers in blocks 514-518, as discussed below. The present solution is not limited to the details of this example.

In Block 506 wird eine Fahrzeugtrajektorie unter Verwendung der Informationen aus den Blöcken 502 und 504 erzeugt. Techniken zum Bestimmen einer Fahrzeugtrajektorie sind in der Technik wohlbekannt. Jede bekannte oder bekannte Technik zum Bestimmen einer Fahrzeugtrajektorie kann hierin ohne Einschränkung verwendet werden. In einigen Szenarien beinhaltet eine solche Technik zum Beispiel das Bestimmen einer Trajektorie für das AV, die das Objekt passieren würde, wenn sich das Objekt vor dem AV befindet, der Quader weist eine Kursrichtung auf, die mit der Richtung ausgerichtet ist, in der sich das AV bewegt, und der Quader hat eine Länge, die größer als ein Schwellenwert ist. Die vorliegende Lösung ist nicht auf die Einzelheiten dieses Szenarios beschränkt. Die Fahrzeugtrajektorie 520 kann basierend auf den Standortinformationen von Block 502, den Objekterfassungsinformationen von Block 504 und Karteninformationen 528 (die in einem Datenspeicher des Fahrzeugs vorgespeichert sind) bestimmt werden. Die Fahrzeugtrajektorie 520 kann einen glatten Weg darstellen, der keine abrupten Änderungen aufweist, die ansonsten ein Unbehagen des Insassen bewirken würden. Z.B. wird die Fahrzeugtrajektorie durch einen Fahrweg entlang einer gegebenen Fahrspur einer Straße definiert, in der das Objekt innerhalb einer gegebenen Zeitspanne nicht vorhergesagt wird. Die Fahrzeugtrajektorie 520 wird dann dem Block 508 bereitgestellt.In block 506 a vehicle trajectory is generated using the information from blocks 502 and 504 . Techniques for determining a vehicle trajectory are well known in the art. Any known or known technique for determining a vehicle trajectory may be used herein without limitation. For example, in some scenarios, such a technique involves determining a trajectory for the AV that the object would pass if the object is in front of the AV, the box has a course direction that aligns with the direction in which the AV moves and the cuboid has a length greater than a threshold. The present solution is not limited to the details of this scenario. The vehicle trajectory 520 may be determined based on the location information of block 502, the object detection information of block 504, and map information 528 (which is pre-stored in a memory of the vehicle). The vehicle trajectory 520 may represent a smooth path that does not have abrupt changes that would otherwise cause occupant discomfort. For example, the vehicle trajectory is defined by a travel path along a given lane of a road in which the object is not predicted within a given period of time. The vehicle trajectory 520 is then provided to block 508 .

In Block 508 wird ein Lenkwinkel- und Geschwindigkeitsbefehl basierend auf der Fahrzeugtrajektorie 520 erzeugt. Der Lenkwinkel- und Geschwindigkeitsbefehl wird für Block 510 zur Fahrdynamikregelung bereitgestellt.In block 508 a steering angle and speed command is generated based on the vehicle trajectory 520 . The steering angle and speed command is provided to block 510 for vehicle dynamics control.

Insbesondere verstärkt die vorliegende Lösung den oben beschriebenen Fahrzeugtrajektorienplanungsprozess 500 der Blöcke 502-510 mit einem zusätzlichen Überwachungsschichtprozess 550. Der zusätzliche Überwachungsschichtprozess 550 optimiert die Fahrzeugtrajektorie für das wahrscheinlichste Verhalten der in Block 504 erfassten Objekte, behält jedoch dennoch akzeptable Operationen bei, wenn das ungünstigste Verhalten auftritt. Dieser zusätzliche Überwachungsschichtprozess 550 wird durch die Blöcke 512-518 implementiert.In particular, the present solution augments the vehicle trajectory planning process 500 of blocks 502-510 described above with an additional layer monitor process 550. The additional layer monitor process 550 optimizes the vehicle trajectory for the most likely behavior of the objects detected in block 504, but still maintains acceptable operations when the worst behavior occurs. This additional layer monitor process 550 is implemented by blocks 512-518.

Wie in 5 gezeigt, wird in Block 504 eine Objektklassifizierung durchgeführt, um das detektierte Objekt in eine aus einer Vielzahl von Klassen und/oder Unterklassen zu klassifizieren. Die Klassen können eine Fahrzeugklasse und eine Fußgängerklasse beinhalten, sind aber nicht darauf beschränkt. Die Fahrzeugklasse kann eine Vielzahl von Fahrzeugunterklassen aufweisen. Die Fahrzeugunterklassen können eine Fahrradunterklasse, eine Motorradunterklasse, eine Skateboard-Unterklasse, eine Rollerblade-Unterklasse, eine Rollerunterklasse, eine Limousinen-Unterklasse, eine SUV-Unterklasse und/oder eine Truck-Unterklasse umfassen, sind aber nicht darauf beschränkt. Die Objektklassifizierung wird basierend auf Sensordaten durchgeführt, die von einem LiDAR-System (z.B. LiDAR-System 264 von 2) und/oder einer Kamera (z.B. Kamera 262 von 2) des Fahrzeugs erzeugt werden. Techniken zum Klassifizieren von Objekten auf der Basis von LiDAR-Daten und/oder Bilddaten sind in der Technik wohlbekannt. Jede bekannte oder bekannte Objektklassifizierungstechnik kann hierin ohne Einschränkung verwendet werden. Informationen 530, die die Klassifizierung des Objekts spezifizieren, werden dem Block 512 bereitgestellt, zusätzlich zu den Informationen 532, die die tatsächliche Geschwindigkeit und Fahrtrichtung des Objekts angeben.As in 5 As shown, an object classification is performed in block 504 to classify the detected object into one of a plurality of classes and/or subclasses. The classes may include, but are not limited to, a vehicle class and a pedestrian class. The vehicle class can have a variety of vehicle subclasses. The vehicle subclasses may include, but are not limited to, a bicycle subclass, a motorcycle subclass, a skateboard subclass, a rollerblade subclass, a scooter subclass, a sedan subclass, an SUV subclass, and/or a truck subclass. The object classification is performed based on sensor data received from a LiDAR system (e.g. LiDAR system 264 from 2 ) and/or a camera (e.g. camera 262 from 2 ) of the vehicle are generated. Techniques for classifying objects based on LiDAR data and/or image data are well known in the art. Any known or known object classification technique can be used herein without limitation. Information 530 specifying the object's classification is provided to block 512, in addition to information 532 indicating the object's actual speed and heading.

Block 512 beinhaltet das Bestimmen einer oder mehrerer möglicher Objekttrajektorien für das Objekt, das in 504 detektiert wird. Die möglichen Objekttrajektorien können die folgenden Trajektorien umfassen, sind aber nicht darauf beschränkt:

  • • eine Trajektorie, die durch die tatsächliche Geschwindigkeit des Objekts (z.B. 1 Meile pro Stunde bzw. ca. 1,6 km/h) und tatsächliche Fahrtrichtung (z.B. nach Westen) definiert ist;
  • • eine Trajektorie, die durch die tatsächliche Geschwindigkeit des Objekts (z.B. 1 Meile pro Stunde bzw. ca. 1,6 km/h) und eine andere mögliche Fahrtrichtung (z.B. Süd, Süd-West oder X (z.B. 40°) Grad von der tatsächlichen Fahrtrichtung des Objekts in einer Richtung zu dem AV) für das Objekt definiert ist;
  • • eine Trajektorie, die durch eine andere mögliche Geschwindigkeit für das Objekt (z.B. 2 bis 10 Meilen pro Stunde bzw. ca. 3 bis 16 km/h) und die tatsächliche Fahrtrichtung des Objekts (z.B. nach Westen) definiert ist; und/oder
  • • eine Trajektorie, die durch eine andere mögliche Geschwindigkeit für das Objekt (z.B. 2 bis 10 Meilen pro Stunde bzw. ca. 3 bis 16 km/h) und eine andere mögliche Fahrtrichtung (z.B. Süd, Süd-West oder X (z.B. 40°) Grad von der tatsächlichen Fahrtrichtung des Objekts in einer Richtung zu dem AV) für das Objekt definiert ist.
Block 512 includes determining one or more possible object trajectories for the object detected in 504 . The possible object trajectories can include, but are not limited to, the following trajectories:
  • • a trajectory defined by the object's actual speed (eg, 1 mile per hour) and actual direction of travel (eg, west);
  • • a trajectory that is determined by the actual speed of the object (e.g 1 miles per hour) and another possible heading (eg, south, south-west, or X (eg, 40°) degrees from the object's actual heading in a direction toward the AV) for the object is defined;
  • • a trajectory defined by another possible speed for the object (eg, 2 to 10 miles per hour or about 3 to 16 km/h) and the actual heading of the object (eg, west); and or
  • • a trajectory that is defined by another possible speed for the object (e.g. 2 to 10 miles per hour or approx. 3 to 16 km/h) and another possible direction of travel (e.g. south, south-west or X (e.g. 40° ) degrees from the actual heading of the object in a direction to the AV) is defined for the object.

Die mögliche(n) Geschwindigkeit(en) und/oder mögliche(n) Richtung(en) der Fahrt können für Objekte in derselben Klasse und/oder Unterklasse als das Objekt vordefiniert werden. Die eine oder mehreren möglichen Objekttrajektorien 522 werden dann zu Block 514 weitergeleitet. Das System kann bewirken, dass die Geschwindigkeits- und Lenksteuerungen des Fahrzeugs das Fahrzeug gemäß der definierten Trajektorie bewegen, wie nachstehend erörtert.The possible speed(s) and/or possible direction(s) of travel can be predefined for objects in the same class and/or subclass as the object. The one or more possible object trajectories 522 are then passed to block 514 . The system may cause the vehicle's speed and steering controls to move the vehicle according to the defined trajectory, as discussed below.

In dem Fall, dass zwei oder mehr mögliche Objekttrajektorien bestimmt werden, kann bei 512 optional auch das Auswählen einer der möglichen Objekttrajektorien beinhalten, die ein Worst-Case-Kollisionsszenario für das AV bereitstellt. Diese Bestimmung wird auf der Grundlage von Informationen 532 durchgeführt, die die tatsächliche Geschwindigkeit und Fahrtrichtung des AV angeben. Die ausgewählte mögliche Objekttrajektorie wird dann an Block 514 weitergeleitet, anstatt alle möglichen Objekttrajektorien, die in 512 bestimmt wurden.In the event that two or more possible object trajectories are determined, at 512 may also optionally include selecting one of the possible object trajectories that provides a worst-case collision scenario for the AV. This determination is made based on information 532 indicative of the actual speed and direction of travel of the AV. The selected possible object trajectory is then forwarded to block 514 instead of all possible object trajectories determined in 512.

In Block 514 wird eine Kollisionsprüfung für jede der möglichen Objekttrajektorien 522 durchgeführt, die zu Block 514 weitergeleitet werden. Die Kollisionsprüfung beinhaltet das Bestimmen, ob es eine unerwünschte Wahrscheinlichkeit gibt, dass eine Kollision zwischen dem Fahrzeug und dem Objekt auftreten wird. Eine solche Bestimmung wird durchgeführt, indem zunächst bestimmt wird, ob sich die Fahrzeugtrajektorie 520 und eine vorgegebene mögliche Objekttrajektorie 522 schneiden. Wenn sich die beiden Trajektorien 520, 522 nicht schneiden, dann wird die Fahrzeugtrajektorie 520 als eine akzeptable Fahrzeugtrajektorie angesehen und es wird keine Steueraktion unternommen, um die Fahrzeugtrajektorie zu modifizieren.In block 514 a collision check is performed for each of the possible object trajectories 522 which are forwarded to block 514 . Collision testing involves determining whether there is an undesirable probability that a collision between the vehicle and the object will occur. Such a determination is made by first determining whether the vehicle trajectory tory 520 and a predetermined possible object trajectory 522 intersect. If the two trajectories 520, 522 do not intersect, then the vehicle trajectory 520 is considered an acceptable vehicle trajectory and no control action is taken to modify the vehicle trajectory.

Wenn sich hingegen die beiden Trajektorien 520, 522 schneiden, dann wird eine vorhergesagte Zeit, zu der eine Kollision auftreten würde, wenn die beiden Trajektorien verfolgt werden, bestimmt. Die vorhergesagte Zeit wird mit einem Schwellenwert (z.B. 1 Sekunde) verglichen. Wenn die vorhergesagte Zeit den Schwellenwert überschreitet, dann wird die Fahrzeugtrajektorie 520 als eine akzeptable Fahrzeugtrajektorie angesehen und es wird keine Steueraktion unternommen, um die Fahrzeugtrajektorie zu modifizierenConversely, if the two trajectories 520, 522 intersect, then a predicted time at which a collision would occur if the two trajectories are followed is determined. The predicted time is compared to a threshold (e.g. 1 second). If the predicted time exceeds the threshold, then the vehicle trajectory 520 is considered an acceptable vehicle trajectory and no control action is taken to modify the vehicle trajectory

Wenn die vorhergesagte Zeit gleich oder kleiner als der Schwellenwert ist, dann wird bestimmt, ob die Kollision vermieden werden kann, wenn (a) der Fahrzeugtrajektorie von dem AV gefolgt wird und (b) ein beliebiges einer Vielzahl von dynamisch erzeugten Notmanövern in einer vordefinierten Zeitperiode (z.B. N Millisekunden) durchgeführt wird. Die dynamisch erzeugten Notmanöver umfassen, ohne darauf beschränkt zu sein, Folgendes:

  • • ein Notmanöver, das einen Bremsbefehl umfasst und das basierend auf der Fahrzeugtrajektorie und einer möglichen Objekttrajektorie bestimmt wird;
  • • ein Notmanöver, das zumindest einen Lenkbefehl und einen Bremsbefehl oder einen Beschleunigungsbefehl umfasst, und das über einen Gradientenabstieg von der aktiven AV-Trajektorie auf eine Zielfunktion bestimmt wird, die Kollisions- und/oder Fahrunannehmlichkeiten bestraft; und/oder
  • • ein Notmanöver, das ein vorgegebenes Notmanöver umfasst, das über einen Gradientenabstieg von der aktiven AV-Trajektorie auf eine Zielfunktion optimiert wurde, die Kollisions- und/oder Fahrunannehmlichkeiten bestraft.
If the predicted time is equal to or less than the threshold, then it is determined whether the collision can be avoided if (a) the vehicle trajectory is followed by the AV and (b) any of a variety of dynamically generated emergency maneuvers in a predefined time period (eg N milliseconds). The dynamically generated emergency maneuvers include but are not limited to the following:
  • • an emergency maneuver that includes a braking command and that is determined based on the vehicle trajectory and a possible object trajectory;
  • • an emergency maneuver, comprising at least one of a steering command and a braking command or an acceleration command, determined via a gradient descent from the active AV trajectory to a target function that penalizes collision and/or driving inconveniences; and or
  • • a contingency maneuver comprising a predetermined contingency maneuver optimized via a gradient descent from the active AV trajectory to an objective function that penalizes collision and/or driving inconveniences.

In einigen Szenarien wird ein Notbremsmanöver erzeugt, indem eine Trajektorie, die die beabsichtigte Trajektorie für den vordefinierten Zeitraum (N Millisekunden) aufrechterhält und dann bei einem maximalen Bremsprofil abbremst, das durch maximal zulässige Verzögerungs- und Ruckgrenzen parametrisiert wird. Das maximale Bremsprofil wird entlang der ursprünglichen Trajektorie über Euler-Integration eines neuen Geschwindigkeitsprofils oder durch andere Verfahren erzeugt. Die vorliegende Lösung ist nicht auf die Einzelheiten dieser Szenarien beschränkt.In some scenarios, an emergency braking maneuver is generated by following a trajectory that maintains the intended trajectory for the predefined time period (N milliseconds) and then decelerating at a maximum braking profile parameterized by maximum allowable deceleration and jerk limits. The maximum braking profile is generated along the original trajectory via Euler integration of a new velocity profile or by other methods. The present solution is not limited to the details of these scenarios.

In diesen oder anderen Szenarien wird ein Notmanöver, das sowohl das Lenken als auch das Bremsen umfasst, erzeugt durch: Parametrisieren sowohl der Lenkung als auch des Bremsens mit einem begrenzten Satz von Spline-Punkten (z.B. 4 Spline-Punkten für Lenk- und 3 Spline-Punkten für die Geschwindigkeit); Minimieren einer Zielfunktion, die Kollisions- und/oder Fahrunannehmlichkeiten bestraft, in Abhängigkeit von diesen Parametern unter Verwendung eines konjugiertem Gradientenabstieges, eines Newton-Verfahrens, eines Powell-Verfahrens oder ein oder mehrerer anderer bestehender Verfahren zum Minimieren von multivariaten Funktionen; und Berechnen der Trajektorie, die den parametrisierten Spline-Punkten entspricht, mit den minimalen objektiven Funktionskosten. Die vorliegende Lösung ist nicht auf die Einzelheiten dieser Szenarien beschränkt.In these or other scenarios, an emergency maneuver involving both steering and braking is generated by: Parameterizing both steering and braking with a limited set of spline points (e.g. 4 spline points for steering and 3 spline -points for speed); minimizing an objective function penalizing collision and/or driving discomfort as a function of these parameters using conjugate gradient descent, a Newton method, a Powell method, or one or more other existing methods for minimizing multivariate functions; and computing the trajectory corresponding to the parameterized spline points with the minimum objective function cost. The present solution is not limited to the details of these scenarios.

In diesen oder anderen Szenarien wird ein vordefiniertes Notmanöver durch Aufzeichnen von Befehlen von einem menschlichen Bediener während eines simulierten Notbremsereignisses oder durch Abtasten eines kleinen Satzes von Lenkmomenten und Bremsprofilen, die auf den aktuellen Fahrzeugzustand angewendet werden, erzeugt. Diese Drehmomente werden in konstanten Intervallen von Null bis zu den Grenzen des Lenk- und Bremsmechanismus oder durch andere Verfahren berechnet. Die vorliegende Lösung ist nicht auf die Einzelheiten dieser Szenarien beschränkt.In these or other scenarios, a predefined emergency maneuver is generated by recording commands from a human operator during a simulated emergency braking event, or by sampling a small set of steering torques and braking profiles applied to the current vehicle state. These torques are calculated at constant intervals from zero to the limits of the steering and braking mechanisms or by other methods. The present solution is not limited to the details of these scenarios.

Wenn bestimmt wird, dass die Kollision in der vordefinierten Zeitspanne vermieden werden kann, dann wird die Fahrzeugtrajektorie 520 als eine akzeptable Fahrzeugtrajektorie angesehen und es wird keine Steueraktion unternommen, um die Fahrzeugtrajektorie zu modifizieren. Alternativ wird das AV veranlasst, ein vorsichtiges Manöver durchzuführen (z.B. schwach verlangsamen, wie etwa auf 5-10 mph, d.h. ca. 8 - 16 km/h). Techniken, um ein AV zu veranlassen, ein vorsichtiges Manöver, wie zum Beispiel das Verlangsamen, zu ergreifen, sind im Stand der Technik wohlbekannt. Zum Beispiel wird ein Steueraktionsbefehl erzeugt, wie durch 516 gezeigt, und verwendet, um die Fahrzeugtrajektorie bei 508 einzustellen oder anderweitig zu modifizieren, bevor sie zum Block 510 weitergeleitet wird. Die Fahrzeugtrajektorie kann eingestellt oder anderweitig modifiziert werden, um zu bewirken, dass das Fahrzeug verzögert wird, das Fahrzeug dazu veranlasst wird, zu beschleunigen und/oder das Fahrzeug veranlasst wird, seine Fahrtrichtung zu ändern.If it is determined that the collision can be avoided in the predefined amount of time, then the vehicle trajectory 520 is considered an acceptable vehicle trajectory and no control action is taken to modify the vehicle trajectory. Alternatively, the AV is caused to perform a cautious maneuver (e.g. slowing down slightly, such as to 5-10 mph, i.e. about 8-16 km/h). Techniques for causing an AV to take a cautious maneuver, such as slowing down, are well known in the art. For example, a control action command is generated as shown by 516 and used to adjust or otherwise modify the vehicle trajectory at 508 before it is passed to block 510 . The vehicle trajectory may be adjusted or otherwise modified to cause the vehicle to decelerate, cause the vehicle to accelerate, and/or cause the vehicle to change direction of travel.

Wenn dagegen festgestellt wird, dass die Kollision in der vordefinierten Zeitspanne nicht vermieden werden kann, wird der AV veranlasst, sofort ein Notmanöver durchzuführen. Dieses Notfallmanöver kann eines der oben diskutierten dynamisch generierten Notfallmanöver umfassen. Techniken, mit denen ein AV zu Notmanövern veranlasst werden kann, sind auf dem Gebiet wohlbekannt.If, on the other hand, it is determined that the collision cannot be avoided within the predefined period of time, the AV is prompted to carry out an emergency maneuver immediately. This emergency maneuver may include any of the dynamically generated emergency maneuvers discussed above. Techniques for causing an AV to perform emergency maneuvers are well known in the art.

Anschauliche Methoden zur Steuerung eines FahrzeugsIllustrative methods of controlling a vehicle

Unter Bezugnahme auf 6 ist ein Flussdiagramm eines veranschaulichenden Verfahrens 600 zum Steuern eines Fahrzeugs (z.B. des Fahrzeugs 1021 von 1) bereitgestellt. Zumindest ein Teil des Verfahrens 600 wird durch eine fahrzeuginterne Rechenvorrichtung (z.B. fahrzeuginterne Rechenvorrichtung 220 von 2) durchgeführt. Das Verfahren 600 wird für jedes Objekt (z.B., Fahrzeug 1022 von 1, Radfahrer 104 von 1 und/oder Fußgänger 106 aus 1) durchgeführt, das erfasst wurde, um innerhalb eines Entfernungsbereichs von dem Fahrzeug zu jeder gegebenen Zeit zu sein.With reference to 6 1 is a flowchart of an illustrative method 600 for controlling a vehicle (eg, vehicle 102 of FIG 1 ) provided. At least a portion of method 600 is performed by an in-vehicle computing device (e.g., in-vehicle computing device 220 of FIG 2 ) carried out. The method 600 is performed for each object (e.g., vehicle 102 2 of 1 , Cyclist 104 from 1 and/or pedestrian 106 1 ) detected to be within a range of distance from the vehicle at any given time.

Das Verfahren 600 umfasst eine Vielzahl von Operationen 602-630. Die vorliegende Lösung ist nicht auf die bestimmte Reihenfolge der Operationen 602 - 630 beschränkt, die in 6 gezeigt sind. Zum Beispiel können die Operationen von 620 parallel zu den Operationen von 604-618 durchgeführt werden, anstatt danach, wie in 6 gezeigt.The method 600 includes a variety of operations 602-630. The present solution is not limited to the particular order of operations 602 - 630 described in 6 are shown. For example, the operations of 620 can be performed in parallel with the operations of 604-618 instead of after them as in 6 shown.

Wie in 6A gezeigt, beginnt das Verfahren 600 mit 602 und fährt mit 604 fort, wo eine Fahrzeugtrajektorie (z.B. die Fahrzeugtrajektorie 520 von 5) für ein AV erzeugt wird. Die Fahrzeugtrajektorie stellt einen glatten Weg dar, der keine abrupten Änderungen aufweist, die ansonsten ein Unbehagen des Insassen bewirken würden. Techniken zum Bestimmen einer Fahrzeugtrajektorie sind im Stand der Technik wohlbekannt. Jede bekannte oder bekannte Technik zum Bestimmen einer Fahrzeugtrajektorie kann hierin ohne Einschränkung verwendet werden. In einigen Szenarien wird die Fahrzeugtrajektorie basierend auf Standortinformationen bestimmt, die durch einen Standortsensor (z.B. Standortsensor 260 von 2) des AV erzeugt werden, Objekterfassungsinformationen, die durch die bordeigene Rechenvorrichtung (z.B. bordeigene Rechenvorrichtung 220 von 2) des AV erzeugt werden, Bilder, die von mindestens einer Kamera (z.B. Kamera 262 von 2) des AV erfasst werden, und Karteninformationen, die in einem Speicher (z.B. dem Speicher 412 von 4) des AV gespeichert sind. In anderen Szenarien werden Spurinformationen alternativ oder zusätzlich zu den Ortsinformationen und/oder Karteninformationen verwendet.As in 6A As shown, method 600 begins at 602 and proceeds to 604 where a vehicle trajectory (eg, vehicle trajectory 520 of 5 ) is generated for an AV. The vehicle trajectory presents a smooth path that has no abrupt changes that would otherwise cause occupant discomfort. Techniques for determining a vehicle trajectory are well known in the art. Any known or known technique for determining a vehicle trajectory may be used herein without limitation. In some scenarios, the vehicle trajectory is determined based on location information provided by a location sensor (e.g., location sensor 260 from 2 ) of the AV, object detection information generated by the onboard computing device (e.g., onboard computing device 220 of 2 ) of the AV are generated, images from at least one camera (e.g. camera 262 from 2 ) of the AV are acquired, and map information stored in a memory (e.g., memory 412 of 4 ) of the AV are stored. In other scenarios, lane information is used as an alternative or in addition to location information and/or map information.

Sobald die Fahrzeugtrajektorie erzeugt ist, fährt das Verfahren 600 mit 605 fort, wo das AV Operationen durchführt, um ein Objekt zu detektieren, das sich in der Nähe dazu befindet. Ein CLF-Objekterkennungsalgorithmus wird in 605 verwendet. Der CLF-Objekterkennungsalgorithmus wird nachstehend ausführlich beschrieben. Die Objektdetektion wird dann verwendet, um mindestens einen autonomen Fahrbetrieb zu erleichtern (z.B. Objektverfolgungsoperationen, Objekttrajektorienvorhersageoperationen, Fahrzeugtrajektorienbestimmungsoperationen und/oder Kollisionsvermeidungsoperationen). Zum Beispiel kann ein Quader oder Kuboid für das detektierte Objekt in einem 3D-Graphen definiert werden, der einen LiDAR-Datensatz umfasst. Der Quader spezifiziert einen Kurs des Objekts und/oder das volle Ausmaß der Geometrie des Objekts. Die Kurs- und Objektgeometrie kann verwendet werden, um eine Objekttrajektorie vorherzusagen und/oder eine Fahrzeugtrajektorie zu bestimmen, wie im Stand der Technik bekannt und oben erörtert wurde. Die vorliegende Lösung ist nicht auf die Einzelheiten dieses Beispiels beschränkt.Once the vehicle trajectory is generated, method 600 proceeds to 605 where the AV performs operations to detect an object that is in proximity thereto. A CLF object detection algorithm is used in 605 . The CLF object detection algorithm is described in detail below. The object detection is then used to facilitate at least one autonomous driving operation (e.g., object tracking operations, object trajectory prediction operations, vehicle trajectory determination operations, and/or collision avoidance operations). For example, a cuboid or cuboid can be defined for the detected object in a 3D graph that includes a LiDAR dataset. The box specifies a course of the object and/or the full extent of the object's geometry. The course and object geometry may be used to predict an object trajectory and/or determine a vehicle trajectory as is known in the art and discussed above. The present solution is not limited to the details of this example.

Dementsprechend fährt das Verfahren 600 mit 606 fort, wo eine oder mehrere mögliche Objekttrajektorien (z.B. mögliche Objekttrajektorien 522 von 5) für das Objekt (z.B. das Fahrzeug 1022, den Radfahrer 104 oder den Fußgänger 106 von 1) bestimmt werden, die in 605 erkannt wurden. Die möglichen Objekttrajektorien können die folgenden Trajektorien beinhalten, sind aber nicht darauf beschränkt: eine Trajektorie, die durch die tatsächliche Geschwindigkeit des Objekts (z.B. 1 Meile pro Stunde bzw. ca,. 1,6 km/h) und die tatsächliche Fahrtrichtung definiert ist (z.B. nach Westen); eine Trajektorie, die durch die tatsächliche Geschwindigkeit des Objekts (z.B. 1 Meile pro Stunde bzw. ca 1,6 km/h) und eine andere mögliche Fahrtrichtung (z.B. Süd, Süd-West oder X (z.B. 40°) Grad von der tatsächlichen Fahrtrichtung des Objekts in einer Richtung zu dem AV) definiert ist; eine Trajektorie, die durch eine andere mögliche Geschwindigkeit für das Objekt (z.B. 2-10 Meilen pro Stunde bzw. ca. 3-16 km/h) und die tatsächliche Bewegungsrichtung des Objekts (z.B. nach Westen) definiert ist; und/oder eine Trajektorie, die durch eine andere mögliche Geschwindigkeit für das Objekt definiert ist (z.B. 2-10 Meilen pro Stunde bzw. ca. 3-16 km/h) und eine andere mögliche Fahrtrichtung (z.B. Süd oder Süd-West oder X (z.B. 40°) Grad von der tatsächlichen Fahrtrichtung des Objekts in einer Richtung zu dem AV). definiert ist. Die mögliche(n) Geschwindigkeit(en) und/oder mögliche(n) Richtung(en) der Fahrt können für Objekte in der gleichen Klasse und/oder Unterklasse als Objekt vordefiniert werden.Accordingly, method 600 proceeds to 606, where one or more possible object trajectories (e.g., possible object trajectories 522 of 5 ) for the object (e.g., vehicle 102 2 , cyclist 104, or pedestrian 106 of 1 ) detected in 605 can be determined. The possible object trajectories may include, but are not limited to, the following trajectories: a trajectory defined by the actual speed of the object (e.g., 1 mile per hour) and the actual direction of travel ( e.g. to the west); a trajectory defined by the actual speed of the object (e.g. 1 mile per hour) and another possible direction of travel (e.g. south, south-west or X (e.g. 40°) degrees from the actual direction of travel of the object is defined in a direction towards the AV); a trajectory defined by another possible speed for the object (eg, 2-10 miles per hour or about 3-16 km/h) and the object's actual direction of travel (eg, west); and/or a trajectory defined by another possible speed for the object (e.g. 2-10 miles per hour or approx. 3-16 km/h) and another possible direction of travel (e.g. south or south-west or X (eg 40°) degrees from the object's actual heading in a direction toward the AV). is defined. The possible speed(s) and/or possible direction(s) of travel can be predefined for objects in the same class and/or subclass as the object.

Als nächstes wird in 608 eine der möglichen Objekttrajektorien für die nachfolgende Analyse ausgewählt. In einigen Szenarien werden die Operationen von 610-628 durchgeführt (z.B. in einer iterativen oder parallelen Weise) für jede mögliche Objekttrajektorie, die in 606 erzeugt wird. In anderen Szenarien werden die Operationen von 610-628 nur für eine der möglichen Objekttrajektorien durchgeführt, die ein Worst-Case-Kollisionsszenario für das AV bereitstellt. Diese mögliche Worst-Case Objekttrajektorie wird basierend auf Informationen ausgewählt, die die tatsächliche Geschwindigkeit und Fahrtrichtung des AV angeben (z.B. durch einen Geschwindigkeitssensor 238 von 2 und/oder den Positionssensor 260 von 2 erzeugt). Ein Worst-Collision-Szenario kann, ohne darauf beschränkt zu sein, ein Kollisionsszenario beinhalten, das früher auftreten würde als alle anderen Kollisionsszenarien, die durch die möglichen Objekttrajektorien bereitgestellt werden, und/oder bei denen erwartet wird, dass es zu schwerwiegenden Verletzungen oder Tod führt (z.B. eine hohe Geschwindigkeit, eine Seitenaufprallkollision oder eine hohe Geschwindigkeit, eine Frontalkollision). In noch anderen Szenarien werden die Operationen 610-628 für zwei oder mehr der möglichen Objekttrajektorien durchgeführt, die die ersten Z (z.B. 2 oder 5) Worst-Case-Kollisionsszenarien für das AV bereitstellen. Z ist eine ganze Zahl, die gemäß einer bestimmten Anwendung ausgewählt ist. Die vorliegende Lösung ist nicht auf die Einzelheiten dieser Szenarien beschränkt.Next, in 608, one of the possible object trajectories is selected for the subsequent analysis. In some scenarios, the operations of 610-628 are performed (eg, in an iterative or parallel fashion) for each possible object trajectory generated in 606. In other scenarios, the operations of 610-628 are only performed for one of the possible object trajectories that provide a worst-case collision scenario for the AV. This possible worst-case object trajectory is selected based on information indicative of the actual speed and direction of travel of the AV (e.g., from a speed sensor 238 of 2 and/or the position sensor 260 of FIG 2 generated). A worst collision scenario may include, but is not limited to, a collision scenario that would occur earlier than all other collision scenarios provided by the possible object trajectories and/or which is expected to result in serious injury or death (e.g. high speed, side impact collision or high speed, frontal collision). In still other scenarios, operations 610-628 are performed on two or more of the possible object trajectories that provide the first Z (eg, 2 or 5) worst case collision scenarios for the AV. Z is an integer selected according to a particular application. The present solution is not limited to the details of these scenarios.

Im nächsten Schritt 610 wird bestimmt, ob die in 604 erzeugte Fahrzeugtrajektorie und die mögliche Objekttrajektorie, die in 608 ausgewählt wird, einander schneiden. Wenn die beiden Trajektorien einander nicht schneiden [611: NEIN], dann wird 612 durchgeführt, wo das Verfahren 600 zu 604 zurückkehrt.In the next step 610 it is determined whether the vehicle trajectory generated in 604 and the possible object trajectory selected in 608 intersect. If the two trajectories do not intersect [611: NO], then 612 is performed where the method 600 returns to 604 .

Wenn hingegen die beiden Trajektorien einander schneiden [611: JA], dann fährt das Verfahren 600 mit 614 fort, wo ein Zeitwert bestimmt wird. Dieser Zeitwert stellt eine Zeit dar, bei der eine Kollision auftreten wird, wenn die Fahrzeugtrajektorie von dem AV gefolgt wird und auf die mögliche Objekttrajektorie das Objekt folgt. Der in 614 bestimmte Zeitwert wird dann mit einem Schwellenzeitwert verglichen, wie bei 616 gezeigt. Der Schwellenzeitwert wird gemäß einer gegebenen Anwendung (z.B. einer oder mehreren Sekunden) ausgewählt. Wenn der Zeitwert größer als der Schwellenzeitwert ist [616: NEIN], dann wird Schritt 618 durchgeführt, wobei das Verfahren 600 zu 604 zurückkehrt. Wenn der Zeitwert gleich oder kleiner als der Schwellenzeitwert [616: JA] ist, dann fährt das Verfahren 600 mit 620-622 fort. Die Schritte 620-622 beinhalten: dynamisches Erzeugen eines oder mehrerer Notmanöver-Profile basierend auf der Fahrzeugtrajektorie und der möglichen Objekttrajektorie; und Bestimmen, ob die Kollision vermieden werden kann, wenn die Fahrzeugtrajektorie von dem AV gefolgt wird und eines der Notmanöver in einer vordefinierten Zeitspanne (z.B. N Millisekunden) durchgeführt wird. Nach Abschluss 622 fährt das Verfahren 600 mit 624 von 6B fort.On the other hand, if the two trajectories intersect [611: YES], then the method 600 proceeds to 614, where a time value is determined. This time value represents a time at which a collision will occur if the vehicle trajectory is followed by the AV and the possible object trajectory is followed by the object. The time value determined in 614 is then compared to a threshold time value as shown at 616 . The threshold time value is selected according to a given application (eg, one or more seconds). If the time value is greater than the threshold time value [616: NO], then step 618 is performed and method 600 returns to 604 . If the time value is equal to or less than the threshold time value [616: YES], then the method 600 proceeds to 620-622. Steps 620-622 include: dynamically generating one or more contingency maneuver profiles based on the vehicle trajectory and the possible object trajectory; and determining whether the collision can be avoided if the vehicle trajectory is followed by the AV and one of the emergency maneuvers is performed in a predefined amount of time (eg, N milliseconds). After completion 622 , method 600 continues at 624 6B away.

Unter Bezugnahme auf 6B wird, wenn die Kollision nicht in der vordefinierten Zeitperiode vermieden werden kann [624: NEIN], Schritt 626 durchgeführt, wo das AV veranlasst wird, sofort ein erstes Manöver zu wählen. Das erste Manöver kann, ohne darauf beschränkt zu sein, eines der dynamisch erzeugten Notmanöver beinhalten, die oben bei den bei 620 erläuterten Techniken erörtert wurden, wie im Stand der Technik wohlbekannt. Jede bekannte oder bekannte Technik, um ein AV zu veranlassen, Manöver zu ergreifen, können hier verwendet werden. Anschließend wird Schritt 630 durchgeführt, wo das Verfahren 600 endet oder eine andere Verarbeitung durchgeführt wird.With reference to 6B if the collision cannot be avoided in the predefined time period [624: NO], step 626 is performed, where the AV is caused to choose a first maneuver immediately. The first maneuver may include, but is not limited to, any of the dynamically generated emergency maneuvers discussed above in the techniques discussed at 620, as is well known in the art. Any known or known technique for causing an AV to engage in maneuvers can be used here. Step 630 is then performed where method 600 ends or other processing is performed.

Im Gegensatz dazu wird, wenn die Kollision in der vordefinierten Zeitperiode vermieden werden kann [624: JA], Schritt 628 durchgeführt, wo das AV optional veranlasst wird, ein zweites Manöver durchzuführen (z.B. schwach verlangsamen). Anschließend wird 630 durchgeführt, wo das Verfahren 600 endet oder eine andere Verarbeitung durchgeführt wird.In contrast, if the collision can be avoided in the predefined time period [624: YES], step 628 is performed, where the AV is optionally caused to perform a second maneuver (e.g., slow down slightly). Then, 630 is performed where the method 600 ends or other processing is performed.

CLF-ObjektdetektionCLF object detection

Die folgende Diskussion ist auf eine neue Lösung zur Detektion von Objekten gerichtet. Diese neue Lösung kann in Block 504 von 5 und/oder Block 605 von 6A durchgeführt werden. Die neue Lösung wird hierin als eine CLF-basierte Lösung bezeichnet.The following discussion is directed to a new solution for detecting objects. This new solution can be found in block 504 of 5 and/or block 605 of 6A be performed. The new solution is referred to herein as a CLF-based solution.

Der Zweck der CLF-Objektdetektion besteht darin, Objekte in einer LiDAR-Punktwolke mit hinzugefügtem Kontext aus Bilddetektionen zu detektieren. Das AV kann in einer unübersichtlichen bzw. Störobjekten aufweisenden („cluttered“) Umgebung betrieben werden, in der sich Objekte bewegen können und mit dem AV und/oder einander interagieren können. In einer reinen LiDAR-Umgebung ist diese Aufgabe in Situationen extrem schwierig, wenn Objekte in unmittelbarer Nähe zueinander sind und miteinander interagieren. Die CLF-Objektdetektion hat den vollen Vorteil von monokularen Kamerabilderfassungen, bei denen die Detektionen mit der LiDAR-Punktwolke fusioniert werden können. LiDAR-Datenpunkte werden in das monokularen Kameraframe projiziert, um Pixelinformationen zu den LiDAR-Datenpunkten zu übertragen, wie oben beschrieben. Die übertragenen Informationen können Farbe, Objekttyp und Objektinstanz umfassen, sind aber nicht darauf beschränkt.The purpose of CLF object detection is to detect objects in a LiDAR point cloud with added context from image detections. The AV may operate in a cluttered environment where objects may move and interact with the AV and/or each other. In a pure LiDAR environment, this task is extremely difficult in situations when objects are in close proximity and interacting with each other. CLF object detection has the full advantage of monocular camera image acquisitions, where the detections can be fused to the LiDAR point cloud. LiDAR data points are projected into the monocular camera frame to transfer pixel information to the LiDAR data points, as above described. The information transmitted may include, but is not limited to, color, object type, and object instance.

Es gibt mehrere Herausforderungen beim Übertragen von Markierungen von 2D-Bilderfassungen zu einer 3D-LiDAR-Punktwolke. In dieser Hinsicht sei angemerkt, dass Bildpixel nicht gleichzeitig als LiDAR-Datenpunkte in dem Erfassungskeil (sweep wedge) erfasst werden, der dem FOV der Kamera entspricht. Das Belichtungszeitfenster der Kamera ist üblicherweise viel kleiner als die Zeit, die bei einer LiDAR-Spinnanordnung zum Überstreichen des horizontalen FOVs der Kamera benötigt wird. Dieses zeitliche Ausrichtungsproblem macht sich am deutlichsten bemerkbar, wenn sich Objekte mit großer Winkelgeschwindigkeit relativ zu dem LiDAR-System bewegen. Es ist auch anzumerken, dass das LiDAR-System an einer anderen Stelle als die monokularen Kameras montiert ist. Aufgrund eines Parallaxenproblems gibt es Raumbereiche, die von dem LiDAR-System wahrgenommen werden, aber nicht von der Kamera wahrgenommen werden, und umgekehrt. Dies macht den Markierungstransfer in den Fällen mehrdeutig, in denen mehr als ein LiDAR-Punkt in den gleichen Bereich des Bildes hineinragt. Es gibt auch Probleme mit der Genauigkeit und der begrenzten Auflösung von Bilderfassungsmasken, Sensorkalibrierungen und der relativen Bewegung des AV und der Aktoren.There are several challenges when transferring markers from 2D image acquisitions to a 3D LiDAR point cloud. In this regard, it should be noted that image pixels are not simultaneously captured as LiDAR data points in the sweep wedge that corresponds to the camera's FOV. The camera's exposure window is typically much smaller than the time it takes a LiDAR spin array to scan the camera's horizontal FOV. This temporal alignment problem is most noticeable when objects are moving with large angular velocities relative to the LiDAR system. It's also worth noting that the LiDAR system is mounted in a different location than the monocular cameras. Due to a parallax problem, there are areas of space that are seen by the LiDAR system but not seen by the camera, and vice versa. This makes the marker transfer ambiguous in cases where more than one LiDAR point extends into the same area of the image. There are also issues with the accuracy and limited resolution of image acquisition masks, sensor calibrations, and the relative movement of the AV and actuators.

Die CLF-basierte Lösung detektiert Objekte (z.B. Objekte 1022, 114 und/oder 116 von 1) in einer LiDAR-Punktwolke mit hinzugefügtem Kontext aus Bilddetektionen. Das AV (z.B. AV 1021 von 1) muss in einer unordentlichen bzw. strörobjektbehafteten Umgebung arbeiten, wo Objekte sich bewegen und interagieren können. In einer reinen LiDAR-Umgebung ist diese Aufgabe in Situationen extrem schwierig, wenn Objekte nahe beieinander liegen und auch wenn Objekte zusammenwirken. Typische Segmentdetektionsansätze basieren auf der euklidischen Punktclustering-Struktur, um getrennte Objekte zu detektieren, die sich in unmittelbarer Nähe zueinander befinden. Zum Beispiel können Fußgänger, die nahe dem Fahrzeug bleiben, sie beladen oder in sie eintreten, wahrscheinlich als ein einzelner Fußgänger + ein Fahrzeugsegment dargestellt werden - die Punkte sind nahe beieinander, aber die Objekte sind getrennt. Auf der gegenüberliegenden Seite kann ein großes Objekt (wie z.B. ein Bus) oft als mehrere Objekte detektiert werden, wenn es teilweise durch andere Objekte vor ihm verdeckt wird. Eine andere Herausforderung besteht darin, dass der große gefensterte Bereich auf den Seiten des Busses es ermöglicht, dass das Licht von dem Laserscanner frei durch das Fenster hindurchgeht und von den Objekten innerhalb des Busses zurückkehrt. Dies erzeugt mehrere Fragmente, die tatsächlich zu demselben großen Objekt gehören. D.h., die Punkte sind weit auseinander, sie gehören aber zu demselben Objekt.The CLF-based solution detects objects (e.g. objects 102 2 , 114 and/or 116 of 1 ) in a LiDAR point cloud with added context from image detections. The AV (e.g. AV 102 1 from 1 ) must work in a cluttered or noisy environment where objects can move and interact. In a pure LiDAR environment, this task is extremely difficult in situations when objects are close to each other and also when objects interact. Typical segment detection approaches rely on the Euclidean point clustering structure to detect separate objects that are in close proximity to each other. For example, pedestrians staying near, loading, or entering the vehicle can likely be represented as a single pedestrian + vehicle segment - the points are close, but the objects are separate. On the opposite side, a large object (such as a bus) can often be detected as multiple objects if it is partially obscured by other objects in front of it. Another challenge is that the large windowed area on the sides of the bus allows the light from the laser scanner to pass freely through the window and return from the objects inside the bus. This creates multiple fragments that actually belong to the same large object. That is, the points are far apart, but they belong to the same object.

In der CLF-basierten Lösung werden monokulare Kameradetektionen mit einer LiDAR-Punktwolke fusioniert. Punkte der LiDAR-Punktwolke werden in ein monokulares Kameraframe projiziert, um Pixelinformationen zu jedem Punkt in der LiDAR-Punktwolke zu übertragen. Die Pixelinformation beinhaltet, ohne darauf beschränkt zu sein, eine Farbe, einen Objekttyp und eine Objektinstanz.In the CLF-based solution, monocular camera detections are fused with a LiDAR point cloud. Points in the LiDAR point cloud are projected into a monocular camera frame to transmit pixel information about each point in the LiDAR point cloud. The pixel information includes, but is not limited to, a color, an object type, and an object instance.

Insbesondere können die Kameras (z.B., die Kameras 262 von 2) des AV überlappende Sichtfelder („Field of View“ bzw. „FOV“) aufweisen. Das vertikale FOV des LiDAR-Systems überlappt nicht perfekt mit den vertikalen FOVs der Kameras. Daher können einige LiDAR-Punkte von mehreren Kameras sichtbar sein und andere Punkte können von keiner der Kameras sichtbar sein. Um die zeitliche Ausrichtung zu unterstützen, sind die Kameras konfiguriert, um auszulösen, wenn ein LiDAR-System die Mitte des FOV der Kamera überstreicht. Dieser Zeitausrichtungsfehler (z.B. die Zeitdifferenz zwischen der LiDAR-Punkterfassung und der Bilderfassung) wird verwendet, um eine Projektionsunsicherheit zu berechnen, die dann für LiDAR zur Bilderfassungsanpassung verwendet wird.In particular, the cameras (e.g., the cameras 262 of 2 ) of the AV have overlapping fields of view (“FOV”). The vertical FOV of the LiDAR system does not perfectly overlap with the vertical FOVs of the cameras. Therefore, some LiDAR points may be visible from multiple cameras and other points may not be visible from any camera. To aid in temporal alignment, the cameras are configured to trigger when a LiDAR system sweeps the center of the camera's FOV. This time alignment error (e.g. the time difference between LiDAR point acquisition and image acquisition) is used to calculate a projection uncertainty, which is then used for LiDAR for image acquisition adjustment.

Die Kamerabildinformation wird als zusätzlicher Hinweis verwendet, um die LiDAR-Punktsegmentierung zu unterstützen. Die Entfernungsfunktion, die zum Cluster von LiDAR-Punkten verwendet wird, wird erweitert, um eine Farbe und eine Bilddetektionsinstanz-Kompatibilität einzuschließen. Dies lässt LiDAR-Punkte, die in verschiedene Objektdetektionen in dem Bild hineinragen, für den Segmentierungsalgorithmus als weiter entfernt erscheinen. In ähnlicher Weise erscheinen LiDAR-Punkte, die in dieselbe Bilderfassungsmaske hineinragen, näher beieinander. Dieser Ansatz liefert eine deutliche Verbesserung im Vergleich zu einer Segmentierung, die sich auf den euklidischen Abstand zwischen Punkten allein in Fällen mit unterschiedlichen Objekten in unmittelbarer Nähe zueinander stützt.The camera image information is used as an additional hint to support LiDAR point segmentation. The distance function used to cluster LiDAR points is extended to include color and image detection instance compatibility. This makes LiDAR points that protrude into different object detections in the image appear further away to the segmentation algorithm. Similarly, LiDAR points protruding into the same image capture mask will appear closer together. This approach provides a significant improvement over segmentation that relies on Euclidean distance between points alone in cases with different objects in close proximity to each other.

Segmentierung: Jeder Segmentierungsalgorithmus kann von der vorliegenden Lösung verwendet werden, solange dieser eine angepasste Abstandsfunktion unterstützt. In einigen Szenarien ist der Segmentierungsalgorithmus, der in der CLF-basierten Lösung verwendet wird, LVS. Für LVS kann die vorliegende Lösung eine Farbwertentfernungs- und/oder eine Bilderfassungsinstanz-Kompatibilität in der Abstandsfunktion enthalten. Die zwei Hauptfehlermodi eines beliebigen Segmentierungsalgorithmus sind Untersegmentierung (mehrere Objekte dargestellt mit einem einzelnen Segment) und Übersegmentierung (einzelnes Objekt dargestellt als mehrere Segmente). In der CLF-basierten Lösung wird eine Optimierung für eine minimale Anzahl von Untersegmentierungsereignissen auf Kosten einer hohen Anzahl von Übersegmentierungsereignissen durchgeführt. Die Übersegmentierungsereignisse werden dann durch eine separate SegmentMerger-Komponente gehandhabt.Segmentation: Any segmentation algorithm can be used by the present solution as long as it supports a custom distance function. In some scenarios, the segmentation algorithm used in the CLF-based solution is LVS. For WMS, the present solution can provide color value removal and/or image capture instance compatibility in the distance radio included. The two main failure modes of any segmentation algorithm are under-segmentation (multiple objects represented with a single segment) and over-segmentation (single object represented as multiple segments). In the CLF-based solution, optimization is performed for a minimal number of under-segmentation events at the expense of a high number of over-segmentation events. The over-segmentation events are then handled by a separate SegmentMerger component.

Segment Merger: Jede maschinell gelernte Klassifizierungstechnik kann von der vorliegenden Lösung verwendet werden, um zu lernen, welche Segmente zusammengeführt werden sollten. Die maschinell gelernte Klassifizierungstechnik beinhaltet, ohne darauf beschränkt zu sein, ein künstliches neuronales Netzwerk, einen Zufallswald-Lernverfahren („Random Forest“), einen Entscheidungsbaum und/oder eine Unterstützungsvektormaschine. Die maschinell gelernte Klassifizierungstechnik wird trainiert, um zu bestimmen, welche Segmente miteinander verschmolzen werden sollten. Die gleiche Bilderfassungsinformation, die in der Segmentierung verwendet wurde, wird nun über die konstituierenden Punkte des Segments aggregiert, um Segment-Level-Merkmale zu berechnen. Zusätzlich dazu werden die Bodenhöhen- und Spurinformationsmerkmale aus der HD-Karte auch verwendet, um die Segmentzusammenführung zu unterstützen.Segment Merger: Any machine learned classification technique can be used by the present solution to learn which segments should be merged. The machine learned classification technique includes, but is not limited to, an artificial neural network, a random forest learning method, a decision tree, and/or a support vector machine. The machine learned classification technique is trained to determine which segments should be merged together. The same image acquisition information used in the segmentation is now aggregated over the segment's constituent points to calculate segment-level features. In addition to this, the ground elevation and lane information features from the HD map are also used to aid in segment merging.

Segmentfilter: Nicht alle detektierten Segmente sind für das AV relevant und viele von ihnen entsprechen den Störobjekten („Clutter“) von der Straße (Gebäude, Pfosten, Abfalldosen usw.). Dies ist dort, wo wiederum Bilderfassungsinformationen verwendet werden, um relevante Objekte außerhalb der Straße zu finden. Da nur die Verfolgung von Verkehrsteilnehmern, die sich von der Straße wegbewegen können, von Interesse ist, können statische Objekte verworfen werden, um den Rest der Verfolgungspipeline-Latenz zu verbessern und die Rechenanforderungen zu reduzieren. Es ist wichtig, relevante Objekte (z.B. sich bewegende Objekte oder Objekte, die sich bewegen können und möglicherweise den AV-Pfad schneiden, wenn sie sich bewegen) von statischen Objekten (z.B. Objekten, deren Bewegung unwahrscheinlich ist) zu unterscheiden. Hochrelevante Objekte können der höchsten Priorität zugeordnet werden, um entsprechend begrenzte bordeigene Rechenressourcen zuzuordnen. Jede Bilderfassungsmaske entspricht einer Sammlung von LiDAR-Punkten innerhalb eines Kegelstumpfes im 3D-Raum. Die Herausforderung besteht hier darin, dass in der Regel mehrere Objekte in unterschiedlichen Tiefen in dieselbe Bilderfassungsmaske hineinragen. Ein Beispiel ist eine Fahrzeugerfassung mit einem Pfahl vor ihm sowie einem dahinter befindlichen Fußgänger. LiDAR-Punkte, die zu dem wahren Fußgängerobjekt und dem Pfahlobjekt gehören, werden aufgrund von Projektionsfehlern, die während der Sensorfusionsstufe auftreten, Punkte aufweisen, die als Fahrzeug bezeichnet werden. Diese Fehler ergeben sich aus der Zeitdifferenz, wann der LiDAR-Punkt erfasst wurde und wann das Bildpixel erfasst wurde, aus Parallaxen-Effekten aufgrund unterschiedlicher Positionen von LiDAR und Kamera (das LiDAR kann über ein Objekt hinwegsehen, das von der Kamera gesehen wird), der AV-Bewegung, der Verkehrsteilnehmerbewegung bzw. Aktorenbewegung, aus Kalibrierungsfehlern und/oder der Genauigkeit und der begrenzten Auflösung von Bilddetektionsmasken. Um die Mehrdeutigkeit der Bilderfassungsmaske in der Segmentzuordnung aufzulösen, werden Projektionseigenschaften für alle Segmente bestimmt, die Punkte enthalten, die in eine bestimmte Bilderfassungsmaske hineinragen. Es werden nur eine oder wenige beste Übereinstimmungen berichtet, die wahrscheinlich dem auf dem Bild erfassten Objekt entsprechen. Dies hilft dabei, Störobjekte aus dem Satz von verfolgten Objekten zu eliminieren und die Latenz der Verfolgungs-Pipeline und die Rechenanforderungen zu reduzieren.Segment filter: Not all detected segments are relevant for the AV and many of them correspond to the clutter from the road (buildings, posts, garbage cans, etc.). This is where, in turn, image capture information is used to find off-road objects of interest. Since only the tracking of road users who may move off the road is of interest, static objects can be discarded to improve the rest of the tracking pipeline latency and reduce computational requirements. It is important to distinguish relevant objects (e.g., moving objects or objects that can move and potentially intersect the AV path if they move) from static objects (e.g., objects that are unlikely to move). Highly relevant objects can be assigned the highest priority to allocate correspondingly limited onboard computing resources. Each image acquisition mask corresponds to a collection of LiDAR points within a truncated cone in 3D space. The challenge here is that, as a rule, several objects protrude into the same image acquisition mask at different depths. An example is a vehicle detection with a pole in front of it and a pedestrian behind it. LiDAR points associated with the true pedestrian object and pole object will have points referred to as vehicle due to projection errors that occur during the sensor fusion stage. These errors result from the time difference between when the LiDAR point was captured and when the image pixel was captured, parallax effects due to different positions of the LiDAR and camera (the LiDAR can see over an object seen by the camera), AV movement, road user movement or actuator movement, calibration errors and/or the accuracy and limited resolution of image detection masks. To resolve the image capture mask ambiguity in the segment mapping, projection properties are determined for all segments containing points that protrude into a particular image capture mask. Only one or a few best matches are reported that are likely to correspond to the object captured in the image. This helps to eliminate clutter from the set of objects being tracked and to reduce the latency of the tracking pipeline and the computational requirements.

Die vorliegende CLF-basierte Lösung hat viele Vorteile. Zum Beispiel übernimmt die vorliegende CLF-basierte Lösung den vollen Vorteil von Bilderfassungen, ist aber nicht nur auf Bilddetektionen oder maschinelles Lernen („Machine Learning“ bzw. „ML“) angewiesen. Dies bedeutet sowohl das Trennen von Objekten in unmittelbarer Nähe als auch das Erfassen von Objekten, die zuvor nicht erkannt wurden. Dieser Ansatz kombiniert ML-Bilddetektionen mit klassischen Verfahren zur PunktwolkensegmentierungThe present CLF-based solution has many advantages. For example, the present CLF-based solution takes full advantage of image capture, but does not rely solely on image detection or machine learning (or "ML"). This means both separating objects in close proximity and capturing objects not previously detected. This approach combines ML image detection with classical point cloud segmentation methods

Eine Übersegmentierungs-Mergestrategie ist möglicherweise für Bildpixel wohlbekannt, ist jedoch für die Anwendung auf LiDAR-Punktwolken nicht verbreitet. Mit anderen Worten, viele Basislinien-LiDAR-Detektionsansätze arbeiten entweder mit einem einzelnen Cluster-Schritt oder verwenden Deep-Learning-Verfahren. Der vorgeschlagene Ansatz baut kleine Cluster aus Merkmalen auf niedriger Ebene auf, extrahiert dann aber aussagekräftigere Merkmale aus den Clustern, um zu bestimmen, welche Cluster zusammenlaufen, um Objekte zu bildenAn over-segmentation merge strategy may be well known for image pixels, but is not common for application to LiDAR point clouds. In other words, many baseline LiDAR detection approaches either work with a single cluster step or use deep learning techniques. The proposed approach builds small clusters of low-level features, but then extracts more meaningful features from the clusters to determine which clusters converge to form objects

Viele lernbasierte Ansätze verwenden generische Handwebmerkmale oder arbeiten auf den Rohdaten (wie die Anpassungsfunktion in einem Microsoft® Kinect). Der vorgeschlagene Ansatz beinhaltet mehrere neuartige „handgefertigte“ Features, die für die Objekte in der Umgebung optimiert sind (Fahrzeuge und Vegetation).Many learning-based approaches use generic hand weaving features or work on the raw data (like the fitting function in a Microsoft® Kinect). The proposed approach includes several novel "handcrafted" features optimized for the objects in the environment (vehicles and vegetation).

Unter Bezugnahme auf 7 ist ein Flussdiagramm eines veranschaulichenden Verfahrens 700 zur CLF-basierten Objektdetektion bereitgestellt. Das Verfahren 700 beginnt mit 702 und fährt mit 704 fort, wo Operationen durch ein LiDAR-System (z.B. LiDAR-System 264 aus 2) des AV (z.B. AV 1021 von 1 und/oder 200 von 2) durchgeführt werden, um einen LiDAR-Datensatz zu erzeugen. Der LiDAR-Datensatz misst einen Abstand (enthaltend Abstands-, Azimut- und Höhenmessungen) von dem AV zu mindestens einem Objekt (z.B. einem Fahrzeug 1022 von 1) zu einem gegebenen Zeitpunkt t. Der LiDAR-Datensatz umfasst eine Vielzahl von Datenpunkten, die eine Punktwolke bilden, wenn sie auf einem 3D-Graphen aufgetragen sind. Techniken zur Durchführung des Verfahrens zur Erzeugung von LiDAR-Datensätzen sind im Stand der Technik wohlbekannt. Hierbei kann jede bekannte oder bekannte Technik zur Erzeugung von LiDAR-Datensätzen verwendet werden. In einigen Szenarien dreht sich das LiDAR-System kontinuierlich mit 10 Hz und erfasst Daten, unabhängig davon, wie sein aktueller Winkel ist.With reference to 7 A flowchart of an illustrative method 700 for CLF-based object detection is provided. Method 700 begins at 702 and proceeds to 704 where operations performed by a LiDAR system (e.g., LiDAR system 264 2 ) of the AV (e.g. AV 102 1 of 1 and/or 200 of 2 ) to generate a LiDAR dataset. The LiDAR dataset measures a distance (including range, azimuth, and elevation measurements) from the AV to at least one object (e.g., a vehicle 102 2 from 1 ) at a given time t. The LiDAR dataset comprises a multitude of data points that form a point cloud when plotted on a 3D graph. Techniques for performing the method for generating LiDAR datasets are well known in the art. Any known or well-known technique for generating LiDAR data sets can be used here. In some scenarios, the LiDAR system rotates continuously at 10 Hz and collects data no matter what its current angle is.

In 706 wird eine Detektion durchgeführt, ob ein Sensor des LiDAR-Systems in der Lage ist, über eine Mitte eines FOV der Kamera zu streichen. Operationen der Kamera (z.B. der Kamera 262 von 2) werden ausgelöst, wenn eine solche Detektion vorgenommen wird, wie bei 708. Wie bei 710 gezeigt, erfasst die Kamera ein Bild, wenn der Sensor des LiDAR-Systems die Mitte des FOV der Kamera überstreicht. Das Bild beinhaltet Inhalt, der die Position eines ersten Objekts (z.B. des Fahrzeugs 1022 von 1) zu einer gegebenen Zeit t relativ zu dem AV darstellt. Das Bild wird hier als ein Kameraaufnahme oder -frame oder als ein monokulares Kameraframe bezeichnet. In einigen Szenarien hat die Kamera einen globaler Verschluss bzw. Shutter (d.h., alle Pixel werden gleichzeitig erfasst), der bei 20 Hz arbeitet. Die Operationen von 706-710 unterstützen die zeitliche Ausrichtung der Auslösung der Kamera mit dem LiDAR-System. Der Zeitausrichtungsfehler (d.h., die Zeitdifferenz zwischen LiDAR-Punkterfassung und Bilderfassung) wird daher in der Kamera minimiert.In 706 a detection is made as to whether a sensor of the LiDAR system is able to sweep over a center of a FOV of the camera. Operations of the camera (e.g. the camera 262 from 2 ) are triggered when such a detection is made, as at 708. As shown at 710, the camera captures an image when the LiDAR system's sensor sweeps the center of the camera's FOV. The image includes content that shows the location of a first object (e.g., vehicle 102 2 of 1 ) at a given time t relative to the AV. The image is referred to herein as a camera shot or frame, or as a monocular camera frame. In some scenarios, the camera has a global shutter (ie, all pixels are captured at once) that operates at 20 Hz. The operations of 706-710 support the timing of camera triggering with the LiDAR system. The time alignment error (ie, the time difference between LiDAR point acquisition and image acquisition) is therefore minimized in the camera.

In Schritt 712 führt eine bordeigene Rechenvorrichtung (z.B. die bordeigene Rechenvorrichtung 220 aus 2) des AV Operationen durch, um das Bild und den LiDAR-Datensatz zu erhalten. Die bordeigene Rechenvorrichtung führt dann Operationen in 714-728 durch, um Objekte in der Nähe des AV unter Verwendung des Bildes und des LiDAR-Datensatzes zu detektieren. Die Schritte 714-728 beinhalten: Beschneiden (oder Reduzieren) einer Gesamtanzahl von Punkten, die in dem LiDAR-Datensatz enthalten sind; Durchführen von LiDAR-zu-Bild-Objektdetektionsoperationen, um eine Verteilung von Objektdetektionen zu berechnen, in denen jeder Punkt des LiDAR-Datensatzes wahrscheinlich enthalten ist, Durchführen einer lokalen Variationssegmentierung unter Verwendung der Ausgaben der LiDAR-zu-Bild-Objektdetektionsoperationen, um eine Vielzahl von Segmenten von LiDAR-Datenpunkten zu erzeugen; Durchführen von Segmentzusammenführungsoperationen zum Zusammenführen der Vielzahl von Segmenten von LiDAR-Datenpunkten in Objekte; und Durchführen von Segmentfilterungsoperationen zum Detektieren von Objekten in der durch den LiDAR-Datensatz definierten Punktwolke. Insbesondere können die LiDAR-Punkte ein oder mehrere Male während der Verarbeitung der On-Board-Computervorrichtung des Bildes und des LiDAR-Datensatzes, wie durch 718, 722 und 726 gezeigt, weiter beschnitten werden. Diese Beschneidung kann die Recheneffizienz der bordeigenen Rechenvorrichtung verbessern. Insbesondere werden die Punktbeschneidungsoperationen von 714, 718, 722 und 726 beschriebenIn step 712, an on-board computing device (e.g., on-board computing device 220) executes 2 ) of the AV to obtain the image and the LiDAR data set. The onboard computing device then performs operations at 714-728 to detect objects near the AV using the image and the LiDAR dataset. Steps 714-728 include: cropping (or reducing) a total number of points included in the LiDAR data set; performing LiDAR-to-image object detection operations to calculate a distribution of object detections in which each point of the LiDAR dataset is likely to be included, performing local variation segmentation using the outputs of the LiDAR-to-image object detection operations to calculate a plurality generate from segments of LiDAR data points; performing segment merge operations to merge the plurality of segments of LiDAR data points into objects; and performing segment filtering operations to detect objects in the point cloud defined by the LiDAR dataset. In particular, the LiDAR points may be further cropped one or more times during the on-board computing device's processing of the image and the LiDAR dataset, as indicated by 718 , 722 , and 726 . This pruning can improve the computing efficiency of the onboard computing device. In particular, the point clipping operations of 714, 718, 722, and 726 are described

Im Folgenden werden die LiDAR-zu-Bild-Objektdetektionsoperationen von 716 im Folgenden mit dem Titel „LiDAR-zu-Bild Erkennungs-Matching“ und in Bezug auf die 9 bis 14 im Detail beschrieben. Die lokalen Variationssegmentierungsoperationen von 720 werden im folgenden Abschnitt mit dem Titel „Lokale Variationssegmentierung mit Bilderfassungsmerkmalen“ und in Bezug auf die 15 bis 16 ausführlich beschrieben. Die Segmentverschmelzungsoperationen von 724 werden im Detail in dem folgenden Abschnitt mit dem Titel „Segment Merger“ und in Bezug auf 17 beschrieben. Die Segmentfilteroperationen von 728 werden im Detail in dem folgenden Abschnitt mit dem Titel „Objektdetektionssegmentfilterung“ und in Bezug auf 18 beschrieben. Nach Abschluss des Schritts 728 wird Schritt 730 durchgeführt, wo das Verfahren 700 endet oder eine andere Verarbeitung durchgeführt wird.In the following, the LiDAR-to-image object detection operations of 716 hereinafter titled "LiDAR-to-image detection matching" and in relation to the 9 until 14 described in detail. The local variation segmentation operations of 720 are discussed in the following section entitled "Local Variation Segmentation with Image Capture Features" and in relation to the 15 until 16 described in detail. The segment merging operations of 724 are described in detail in the following section entitled "Segment Merger" and in relation to 17 described. The segment filter operations of 728 are described in detail in the following section entitled "Object Detection Segment Filtering" and with respect to 18 described. Upon completion of step 728, step 730 is performed where method 700 ends or other processing is performed.

Punktbeschneidungpoint clipping

LiDAR-Datensätze können eine signifikante Anzahl von Punkten enthalten. Zum Beispiel kann ein LiDAR-Scanner (z.B. LiDAR-Sensorsystem 264 von 2) ein Bild mit hoher Dichte erzeugen, das mehr als 100.000 Punkte zur Verarbeitung alle 100 ms enthält, und die vollständige Verarbeitung aller LiDAR-Datenpunkte kann in einem Echtzeitsystem unerschwinglich teuer sein. Als solches liefert die Begrenzung der Anzahl von LiDAR-Datenpunkten, die letztlich durch das System zur Objekterkennung verarbeitet werden, Vorteile, einschließlich, ohne Einschränkung, reduziertem Energieverbrauch, reduzierter Ansprüche an die Hardware-Kapazität und verringerter Systemlatenz. Dementsprechend implementiert die vorliegende Lösung ein Verfahren zum Beschneiden (oder Reduzieren) der Anzahl von LiDAR-Datenpunkten, die zu Zwecken des Detektierens eines Objekts (z.B. AV 1022 von FIG: 1) verarbeitet werden, das sich in der Nähe eines AV befindet, z.B. AV 1021 oder 1).LiDAR datasets can contain a significant number of points. For example, a LiDAR scanner (e.g. LiDAR sensor system 264 from 2 ) produce a high-density image containing more than 100,000 points to process every 100 ms, and fully processing all LiDAR data points can be prohibitively expensive in a real-time system. As such, limiting the number of LiDAR data points ultimately processed by the system for object detection provides benefits including, without limitation, reduced power consumption, reduced hardware capacity requirements, and reduced system latency. Accordingly, the present solution implements a method of pruning (or reducing) the number of LiDAR data points processed for purposes of detecting an object (e.g. AV 102 2 of FIG. 1) that is proximate to an AV, e.g. AV 102 1 or 1 ).

Unter Bezugnahme auf 8 wird ein Flussdiagramm eines veranschaulichenden Verfahrens 800 zum Beschneiden (oder Reduzieren) der Anzahl von LiDAR-Datenpunkten bereitgestellt, die zu Zwecken des Detektierens eines Objekts (z.B. AV 1021 von 1) verarbeitet werden, das sich in der Nähe eines AV (z.B. AV 1021 oder 1) befindet. Das Verfahren 800 kann durch eine bordeigene Rechenvorrichtung (z.B. bordeigene Rechenvorrichtung 220 von 2) und/oder eine entfernte Rechenvorrichtung (z.B. die Rechenvorrichtung 110 von 1) durchgeführt werden. Die Operationen des Verfahrens 800 können in der gleichen oder verschiedenen Reihenfolge gemäß einer gegebenen Anwendung durchgeführt werden. Bei dem Verfahren 800 können auch eine oder mehrere Operationen gemäß einer gegebenen Anwendung fehlen. In dieser Hinsicht versteht es sich, dass ein oder mehrere der nachstehend beschriebenen Kriterien zum Heruntersampeln oder Downsampeln von LiDAR-Datenpunkten während einer gegebenen Anwendung verwendet werden können. Es sollte auch verstanden werden, dass die Operationen von 804-814 an verschiedenen Punkten während eines Objektdetektionsprozesses durchgeführt werden können. Zum Beispiel können die Downsampling-Operationen von 804 in 714 von 7 durchgeführt werden. Die Downsampling-Operationen von 806-808 können in 714 und/oder 718 durchgeführt werden. Die Downsampling-Operationen von 810 können in 718 von 7. durchgeführt werden. Die Operationen von 812 können in 714 und/oder 722 von 7. durchgeführt werden. Die Operationen von 814 können in 714, 718, 722 und/oder 726 von 7 durchgeführt werden. Die vorliegende Lösung ist nicht auf die Einzelheiten dieses Beispiels beschränkt.With reference to 8th A flowchart of an illustrative method 800 for pruning (or reducing) the number of LiDAR data points used for purposes of detecting an object (e.g., AV 102 1 of 1 ) that is close to an AV (e.g. AV 102 1 or 1 ) is located. The method 800 may be performed by an on-board computing device (e.g., on-board computing device 220 of 2 ) and/or a remote computing device (e.g., computing device 110 of 1 ) be performed. The operations of method 800 may be performed in the same or different order according to a given application. The method 800 may also lack one or more operations according to a given application. In this regard, it is understood that one or more of the criteria described below for downsampling or downsampling of LiDAR data points may be used during a given application. It should also be understood that the operations of 804-814 can be performed at various points during an object detection process. For example, the downsampling operations from 804 to 714 from 7 be performed. The downsampling operations from 806-808 may be performed in 714 and/or 718. The downsampling operations of 810 can be performed in 718 of 7 . be performed. The operations of 812 may be performed in 714 and/or 722 of 7 . be performed. The operations of 814 may be performed in 714, 718, 722, and/or 726 of 7 be performed. The present solution is not limited to the details of this example.

Wie in 8 gezeigt, beginnt das Verfahren 800 mit 802 und fährt mit dem optionalen Schritt 804 fort, wo der LiDAR-Datensatz basierend auf einer geplanten Trajektorie eines AV heruntergesampelt wird. Zum Beispiel wird eine Abwärtsabtastung für LiDAR-Datenpunkte durchgeführt, die einer Region von Interesse entlang einer geplanten Trajektorie des AV mit einer niedrigeren Rate entsprechen als die LiDAR-Datenpunkte, die anderen Regionen entsprechen, die nicht entlang der geplanten Trajektorie des AV sind. Das Downsampling kann zusätzlich oder alternativ für LiDAR-Datenpunkte durchgeführt werden, die Regionen entsprechen, die nicht von Interesse entlang der geplanten Trajektorie mit einer höheren Rate sind als die LiDAR-Datenpunkte, die einem interessierenden Bereich entsprechen. Eine Region von Interesse kann eine Region sein, die LiDAR-Datenpunkte beinhaltet, die mindestens einem Objekt entsprechen, das wahrscheinlich mit dem AV interferiert, wenn es der geplanten Trajektorie folgt (z.B. einen Bereich, der ein Fahrzeug, ein Fahrrad und/oder einen Fußgänger entlang der geplanten Trajektorie des AV beinhaltet). Regionen, die nicht interessierende Regionen sind, können LiDAR-Datenpunkte beinhalten, die mindestens einem Objekt entsprechen, das unwahrscheinlich mit dem AV interferiert, wenn es der geplanten Trajektorie folgt. Dieses Objekt kann ein geparktes Fahrzeug auf der Seite einer Straße und ein Fahrzeug auf der Rückseite des AV beinhalten, das sich in der entgegengesetzten Richtung als das AV bewegt.As in 8th As shown, method 800 begins at 802 and proceeds to optional step 804 where the LiDAR dataset is downsampled based on a planned trajectory of an AV. For example, LiDAR data points corresponding to a region of interest along a planned trajectory of the AV are downsampled at a lower rate than LiDAR data points corresponding to other regions that are not along the planned trajectory of the AV. The downsampling may additionally or alternatively be performed for LiDAR data points corresponding to regions of non-interest along the planned trajectory at a higher rate than the LiDAR data points corresponding to an area of interest. A region of interest may be a region that includes LiDAR data points corresponding to at least one object likely to interfere with the AV when following the planned trajectory (e.g., an area containing a vehicle, bicycle, and/or pedestrian along the planned trajectory of the AV). Regions that are non-interest regions may include LiDAR data points corresponding to at least one object that is unlikely to interfere with the AV when following the planned trajectory. This object may include a parked vehicle on the side of a road and a vehicle behind the AV that is moving in the opposite direction from the AV.

Im optionalen Schritt 806 werden LiDAR-Datenpunkte des LiDAR-Datensatzes in ein Kameraframe (oder -bild) projiziert, um Informationen von den bildbasierten Objekterfassungen zu den LiDAR-Datenpunkten zu übertragen. Techniken zum Projizieren von LiDAR-Datenpunkten in ein Kameraframe sind im Stand der Technik wohlbekannt. Jede bekannte oder bekannte Technik zum Projizieren von LiDAR-Datenpunkten in ein Frame kann hier ohne Einschränkung verwendet werden. Eine bekannte Projektionstechnik implementiert einen naiven Projektionsalgorithmus, der durch mathematische Gleichung (1) definiert wird, die unten bereitgestellt wird. Die übertragenen Informationen werden hier als Punktmarkierungen bezeichnet. Eine Punktmarkierung bezieht sich auf eine Angabe oder Beschreibung, die einem LiDAR-Datenpunkt zugeordnet ist, der Informationen oder Daten umfasst, die insbesondere dem LiDAR-Datenpunkt entsprechen. Zum Beispiel kann ein Punktmarkierung eine Objektklassenkennung (z.B. eine Fahrzeugklassenkennung, eine Fußgängerklassenkennung, eine Baumklassenkennung und/oder eine Gebäudeklassenkennung), eine Farbe (z.B. einen RGB-Wert), mindestens eine eindeutige Kennung (z.B. für das Objekt, entsprechende Bildpixel und/oder einen LiDAR-Datenpunkt) und/oder eine Objektinstanzkennung (z.B., wenn es viele Objekte derselben Klasse gibt, die in einem Bild detektiert werden).In optional step 806, LiDAR data points of the LiDAR data set are projected into a camera frame (or image) to transfer information from the image-based object detections to the LiDAR data points. Techniques for projecting LiDAR data points into a camera frame are well known in the art. Any known or known technique for projecting LiDAR data points into a frame can be used here without limitation. A known projection technique implements a naive projection algorithm defined by mathematical equation (1) provided below. The transmitted information is referred to herein as point markers. A point label refers to an indication or description associated with a LiDAR data point that includes information or data that specifically corresponds to the LiDAR data point. For example, a point marker may include an object class identifier (e.g., a vehicle class identifier, a pedestrian class identifier, a tree class identifier, and/or a building class identifier), a color (e.g., an RGB value), at least one unique identifier (e.g., for the object, corresponding image pixels, and/or a LiDAR data point) and/or an object instance identifier (e.g. when there are many objects of the same class detected in an image).

In optional 808 kann das System (z.B. das System 100 von 1 und/oder 200 von 2) einen LiDAR-Datensatz basierend auf den zugehörigen Punktmarkierungen herunterladen. Zum Beispiel werden Punkte eines LiDAR-Datensatzes basierend auf den Punktmarkierungen, die den Punkten des LiDAR-Datensatzes zugeordnet sind, in zwei oder mehr Klassen unterteilt. Zum Beispiel können LiDAR-Datenpunkte in zwei Klassen getrennt werden, nämlich eine erste Klasse, die LiDAR-Datenpunkte enthält, denen hochwertige Markierungen zugewiesen sind, und eine zweite Klasse, die LiDAR-Datenpunkte enthält, denen niederwertige Markierungen zugewiesen sind. Markierungen mit hoher Wichtigkeit können Markierungen umfassen, die wichtig sind, um diese mit einer hohen Genauigkeit zu verfolgen. Die Markierung (bzw. das Label) mit hoher Wichtigkeit wird LiDAR-Datenpunkten mit beispielsweise Objektklassenkennungen zugeordnet, die einer Fahrzeugklasse, einem Fußgänger, einem Fahrrad oder einer anderen sich bewegenden Objektklasse zugeordnet sind. Den LiDAR-Datenpunkten mit beispielsweise Objektklassenkennungen, die mit statischen Objektklassen (z.B. einer Gebäudeklasse, einer Laubklasse, einer Baubarriereklasse und/oder einer Beschilderungsklasse) assoziiert sind, ist eine Markierung mit geringer Wichtigkeit zugeordnet. Die Markierungen oder Labels mit geringer Wichtigkeit können weniger wichtig sein als Markierungen oder Labels mit hoher Wichtigkeit, welche mit einem höheren Grad an Genauigkeit zu verfolgen sind. Der LiDAR-Datensatz wird dann auf der Grundlage der Wichtigkeits-Markierungen der Punkte in dem LiDAR-Datensatz (wie durch ihre entsprechenden Punktmarkierungen bestimmt) heruntergesampelt. Beispielsweise werden LiDAR-Datenpunkte mit hoher WichtigkeitsMarkierung nicht heruntergesampelt oder alternativ mit einer hohen Auflösung heruntergesampelt. LiDAR-Datenpunkte mit Markierungen mit geringer Wichtigkeit werden aggressiver als die LiDAR-Datenpunkte mit hoher Wichtigkeitsmarkierung, d.h. mit einer niedrigeren Auflösung, heruntergesampelt. Die vorliegende Lösung ist nicht auf die Einzelheiten dieses Beispiels beschränkt.In optional 808, the system (e.g. the system 100 of 1 and/or 200 of 2 ) download a LiDAR dataset based on the associated point markers. For example, points of a LiDAR dataset are divided into two or more classes based on the point markers associated with the points of the LiDAR dataset. For example, LiDAR data points can be separated into two classes, namely a first class containing LiDAR data points assigned high-order markers and a second class containing LiDAR data points assigned low-order markers. High importance tags may include tags which are important to track them with a high level of accuracy. The high importance tag (or label) is associated with LiDAR data points having, for example, object class identifiers associated with a vehicle class, pedestrian, bicycle, or other moving object class. A low importance tag is associated with the LiDAR data points having, for example, feature class identifiers associated with static feature classes (eg, a building class, a foliage class, a building barrier class, and/or a signage class). The low importance marks or labels may be less important than high importance marks or labels, which are to be tracked with a higher degree of accuracy. The LiDAR dataset is then downsampled based on the importance markers of the points in the LiDAR dataset (as determined by their corresponding point markers). For example, LiDAR data points marked as high importance are not downsampled, or alternatively are downsampled at a high resolution. LiDAR data points with low importance markers are downsampled more aggressively than the LiDAR data points with high importance markers, ie at a lower resolution. The present solution is not limited to the details of this example.

Optional in 810 wird der LiDAR-Datensatz nach einem Kegelstumpf-Beschneidungsalgorithmus heruntergesampelt („Downsampling“). Ein LiDAR-Datensatz kann Punkte beinhalten, die Objekte (z.B. anderen Fahrzeugen, Fußgängern, Radfahrern und/oder Schildern) entsprechen, die sich auf einer Straße oder einem anderen Fahrweg (z.B. der Fahrradspur oder einer Bahn) befinden, und/oder Punkte, die Objekte (z.B. Gebäuden, Bäumen und/oder anderem Blattwerk) entsprechen, die sich außerhalb der Straße oder einem anderen Bewegungspfad befinden. Ein Kegelstumpf kann für ein oder mehrere detektierte Objekte erzeugt werden. Der Kegelstumpf, der einem Bilderfassungsbegrenzungsrechteck entspricht, umfasst LiDAR-Datenpunkte einer Punktwolke, die wahrscheinlich einem bestimmten Objekt entsprechen. Die LiDAR-Datenpunkte, die innerhalb oder in der Nähe der Bilderfassungsbegrenzungsbox vorstehen, können für den Objektdetektionsprozess von mehr Relevanz oder Bedeutung sein als die LiDAR-Datenpunkte, die weiter weg von der Begrenzungsbox vorstehen, da die LiDAR-Datenpunkte, die weiter von der Begrenzungsbox entfernt liegen, unwahrscheinlicher in Übereinstimmung zu Objekten von Interesse stehen (z.B. Fußgänger, Fahrrad, Fahrzeug). Somit können die LiDAR-Datenpunkte auf der Grundlage ihrer Abstände von der Begrenzungsbox weiter heruntergesampelt und/oder beschnitten werden. Zum Beispiel wird eine Beschneidung für die LiDAR-Datenpunkte durchgeführt, die sich mehr als eine Schwellenentfernung von der Begrenzungsbox weg befinden. Ist der Abstand kleiner oder gleich dem Schwellenabstand, so bleibt der Punkt im LiDAR-Datensatz. Wenn der Abstand größer als der Schwellenabstand ist, wird der Punkt aus dem LiDAR-Datensatz entfernt. Die vorliegende Lösung ist nicht auf die Einzelheiten dieses Beispiels beschränkt. Ist neben der Bilderfassungsbegrenzungsbox die Bildobjektgrenze bekannt (z.B. in Form einer Pixelmaske), so kann anstelle des Abstands zum Begrenzungsrechteck der Abstand zur Maske verwendet werden. Die Entscheidung, ob der Punkt in dem Datensatz beibehalten werden soll, wird basierend darauf bestimmt, ob der Punkt in die dilatierte Maske hineinragt.Optionally in 810 the LiDAR data set is downsampled (“downsampling”) according to a truncated cone clipping algorithm. A LiDAR dataset may include points that correspond to objects (e.g., other vehicles, pedestrians, cyclists, and/or signs) that are on a road or other travel path (e.g., the bike lane or a train) and/or points that Correspond to objects (e.g. buildings, trees and/or other foliage) that are outside the road or other path of movement. A truncated cone can be generated for one or more detected objects. The truncated cone that corresponds to an image acquisition bounding box contains LiDAR data points of a point cloud that likely correspond to a specific object. The LiDAR data points that protrude inside or near the image acquisition bounding box may be of more relevance or importance to the object detection process than the LiDAR data points that protrude further away from the bounding box, since the LiDAR data points that protrude farther from the bounding box distant, less likely to be in line with objects of interest (e.g., pedestrian, bicycle, vehicle). Thus, the LiDAR data points may be further downsampled and/or clipped based on their distances from the bounding box. For example, clipping is performed for the LiDAR data points that are more than a threshold distance from the bounding box. If the distance is less than or equal to the threshold distance, the point remains in the LiDAR dataset. If the distance is greater than the threshold distance, the point is removed from the LiDAR dataset. The present solution is not limited to the details of this example. If, in addition to the image acquisition bounding box, the image object boundary is known (e.g. in the form of a pixel mask), the distance to the mask can be used instead of the distance to the bounding box. The decision whether to keep the point in the dataset is determined based on whether the point protrudes into the dilated mask.

Optional bei 812 wird der LiDAR-Datensatz unter Verwendung einer Karte heruntergerechnet, die Informationen enthält, die einer Trajektorie eines AV zugeordnet sind (z.B. AV 1021 von 1). Zum Beispiel kann ein AV eine geplante Trajektorie oder einen Reiseweg haben, dem er autonom folgt. Die Karte enthält verschiedene Informationen, die der geplanten Trajektorie oder dem geplanten Reisepfad entsprechen. Diese Informationen können unter anderem Informationen über die Platzierung der Fahrspur, die Steigung der Oberfläche, die Straßenbegrenzung und/oder die Position stationärer Objekte umfassen. Die Karte kann in einem Datenspeicher (z. B. Speicher 412 der 4) des AV gespeichert und/oder abgerufen werden. Ein oder mehrere Punkte des LiDAR-Datensatzes können für das Downsampling relativ zur Karte identifiziert werden. Genauer gesagt wird das Downsampling für LiDAR-Datenpunkte durchgeführt, die unter einem minimalen Höhenschwellenwert auf der Karte angeordnet sind. Zum Beispiel wird angenommen, dass die meisten LiDAR-Punkte von Interesse für ein AV Objekten entsprechen, die Höhen aufweisen, die eine bestimmte Höhenmessung (z.B. 2 Fuß bzw. ca. 0,6 m) überschreiten. Punkte werden aus dem LiDAR-Datensatz entfernt, die mit Höhen assoziiert sind, die geringer sind als der minimale Höhenschwellenwert (z.B. 2 Fuß bzw. ca. 0,6 m).Es kann auch davon ausgegangen werden, dass die meisten LiDAR-Punkte von Interesse für ein AV Objekte entsprechen, die Höhen unterhalb eines maximalen Höhenschwellenwerts (z.B. 100 Fuß bzw. ca. 30 m) aufweisen. Somit werden Punkte aus dem LiDAR-Datensatz entfernt, die den Höhen zugeordnet sind, die den maximalen Schwellenwert überschreiten. Die vorliegende Lösung ist nicht auf die Einzelheiten dieses Beispiels beschränkt.Optionally at 812, the LiDAR dataset is downsampled using a map containing information associated with a trajectory of an AV (e.g., AV 102 1 of 1 ). For example, an AV may have a planned trajectory or travel path that it autonomously follows. The map contains various information corresponding to the planned trajectory or travel path. This information may include, but is not limited to, information about lane placement, surface slope, road boundary, and/or stationary object location. The map may be stored in a data store (e.g., store 412 of the 4 ) of the AV can be stored and/or retrieved. One or more points of the LiDAR dataset can be identified relative to the map for downsampling. More specifically, LiDAR data points located below a minimum height threshold on the map are downsampled. For example, assume that most LiDAR points of interest for an AV correspond to objects having heights that exceed a specified height measurement (eg, 2 feet). Points are removed from the LiDAR dataset that are associated with elevations less than the minimum elevation threshold (e.g., 2 feet). It can also be assumed that most LiDAR points from Interest for an AV correspond to objects that have heights below a maximum height threshold (eg, 100 feet or about 30 m). Thus, points associated with elevations that exceed the maximum threshold are removed from the LiDAR dataset. The present solution is not limited to the details of this example.

Im optionalen Schritt 814 werden die Punkte des LiDAR-Datensatzes basierend auf der Prozesslatenz heruntergesampelt. Eine Objektdetektionspipeline kann mehrere Algorithmen verwenden, die unterschiedliche Zeitkomplexitätscharakteristika aufweisen. Die gesamte Pipeline-Latenz als Funktion der Eingangsdatengröße kann eine nichtlineare Kurve sein. Die Analyse von Latenzdaten von Fahrzeugprotokollen kann Erkenntnisse bereitstellen, wie die Funktion sich verhält. Beispielsweise kann die Funktion eine lineare Funktion und/oder eine Funktion höherer Ordnung (z.B. ein Polynom) sein. Durch Akkumulieren von Daten wird ein Pipeline-Latenzmodell erzeugt. Das Pipeline-Latenzmodell wird dann verwendet, um die Latenz bei einer bestimmten Eingangsdatengröße zu schätzen, und diese geschätzte Latenz kann verwendet werden, um die Downsampling-Auflösung zu manipulieren. Anschließend wird Schritt 816 durchgeführt, wo das Verfahren 800 endet oder andere Operationen durchgeführt werden.In optional step 814, the LiDAR dataset points are downsampled based on the process latency. An object detection pipeline may use multiple algorithms that have different time complexity characteristics. The total pipeline latency as a function of the in input data size can be a non-linear curve. Analysis of latency data from vehicle logs can provide insights into how the feature is behaving. For example, the function can be a linear function and/or a higher-order function (eg a polynomial). A pipeline latency model is generated by accumulating data. The pipeline latency model is then used to estimate the latency given a given input data size, and this estimated latency can be used to manipulate the downsampling resolution. Step 816 is then performed where method 800 ends or other operations are performed.

LiDAR-zu-Bild Erkennungs-MatchingLiDAR-to-image detection matching

Der LID-Abgleichalgorithmus der vorliegenden Lösung weist mehrere Aspekte auf. Diese Aspekte beinhalten: (i) Synchronisieren der Kameraauslösung mit der LiDAR-Systemabtastung; (ii) Berücksichtigen einer Projektionsunsicherheit mit bekannten Kamerakalibrierungsunsicherheiten; und (iii) Bestimmen, welche Bilderfassung einer Vielzahl von Bilderfassungen jeden Punkt in einem LiDAR-Datensatz am wahrscheinlichsten ist. Wie oben angemerkt, wird der Aspekt (i) durch Auslösen der Bilderfassung erreicht, wenn ein Brennpunkt des LiDAR-Sensors mit einer Mitte des FOV der Kamera ausgerichtet ist. Dieser Zeitausrichtungsfehler (d.h. die Zeitdifferenz zwischen LiDAR-Punkterfassung und Bilderfassung) wird durch diese Synchronisation minimiert. Aspekt (ii) beinhaltet: Bestimmen einer Unsicherheit bei der Kamerakalibrierung basierend auf elf Kalibrierungsparametern (d. h., 5 intrinsische: eine xy-Brennweite, eine Schrägstellung, eine xy-Bildmitte sowie 6 extrinsische: XYZ-Translation und 3 Rotationsfreiheitsgrade); Projizieren der Unsicherheit in ein Kameraframe; und Bestimmen einer Verteilung von Pixeln, an die ein LiDAR-Punkt projiziert werden kann (anstelle eines einzelnen Pixels). Aspekt (iii) wird erreicht durch: Betrachten jeder Objektdetektion als eine unabhängige Messung; und Verwenden der Konfidenzen, um eine Verteilung von Erfassungen zu berechnen, in denen wahrscheinlich ein LiDAR-Punkt sein sollte. Aspekte (i)-(iii) ermöglichen es dem LID-Anpassungsalgorithmus, mehrere Fehlerquellen und Unsicherheit zu berücksichtigen, um LiDAR-Punkte besser mit Kamera-Raum-Objekten in Übereinstimmung zu bringen.The LID matching algorithm of the present solution has several aspects. These aspects include: (i) synchronizing camera triggering with LiDAR system sampling; (ii) accounting for projection uncertainty with known camera calibration uncertainties; and (iii) determining which of a plurality of image acquisitions of each point in a LiDAR dataset is the most likely. As noted above, aspect (i) is achieved by triggering image capture when a focal point of the LiDAR sensor is aligned with a center of the camera's FOV. This time alignment error (i.e. the time difference between LiDAR point acquisition and image acquisition) is minimized by this synchronization. Aspect (ii) includes: determining an uncertainty in camera calibration based on eleven calibration parameters (i.e., 5 intrinsic: an xy focal length, a tilt, an xy image center and 6 extrinsic: XYZ translation and 3 rotational degrees of freedom); projecting the uncertainty into a camera frame; and determining a distribution of pixels to which a LiDAR point can be projected (rather than a single pixel). Aspect (iii) is achieved by: considering each object detection as an independent measurement; and using the confidences to calculate a distribution of detections where a LiDAR point should likely be. Aspects (i)-(iii) allow the LID adjustment algorithm to account for multiple sources of error and uncertainty to better match LiDAR points to camera-space objects.

Dementsprechend berücksichtigt der LID-Abgleichalgorithmus sowohl die Projektionsunsicherheit als auch die vollständige Konfidenzinformation aus den Bilderfassungen. Gegenwärtig wird keine Projektionsunsicherheit betrachtet, und Bilderfassungsvertrauen (in der gesamten Detektion und pro Pixel in der Maske) werden binarisiert. Eine Objekttypschätzung würde aktualisiert werden, um die neue Anpassung zu berücksichtigen.Accordingly, the LID matching algorithm takes into account both the projection uncertainty and the full confidence information from the image acquisitions. No projection uncertainty is currently considered, and image acquisition confidences (in total detection and per pixel in the mask) are binarized. An object type estimate would be updated to reflect the new adjustment.

Es gibt zwei Hauptprobleme mit den herkömmlichen LID-Anpassungsalgorithmen, der Maskenbleed/Maskenerosion und der Maskenverschiebung. Die vorliegende Lösung löst beide dieser Probleme durch Schätzen von p(lpi ∈ dj) (wobei lpi einen LiDAR-Punkt i darstellt und dj eine Bilderfassung j darstellt), anstelle der Bereitstellung der Bilddetektionen, auf die ein LiDAR-Punkt nativ projiziert ist. Diese Wahrscheinlichkeitsschätzung berücksichtigt Bilderfassungsvertrauen, Projektionsunsicherheit und das Zusammenwirken mehrerer überlappender Masken. Es gibt mehrere bekannte Quellen von Projektionsunsicherheit, wie zum Beispiel Kameradaten, Kamera-zu-LiDAR-Extrinsika und Zeitausrichtung (aufgrund von Fehlern bei der Bewegungskompensation (z.B. eine Fahrbahnwelle in der Straße wird positionsmäßig nicht gut kompensiert) und aufgrund der Objektbewegung).There are two main problems with the traditional LID adjustment algorithms, mask bleed/erosion and mask shifting. The present solution solves both of these problems by estimating p(lp i ∈ d j ) (where lp i represents a LiDAR point i and d j represents an image capture j), instead of providing the image detections that a LiDAR point is native to is projected. This probability estimate accounts for image capture confidence, projection uncertainty, and the interaction of multiple overlapping masks. There are several known sources of projection uncertainty, such as camera data, camera-to-LiDAR extrinsics, and time alignment (due to errors in motion compensation (e.g., a bump in the road is not positionally compensated well) and due to object motion).

Diese Änderung erfordert eine Änderung der aktuellen Einzelframeobjekttypschätzung. Anstelle eines Bitsatz-Zählverfahrens berechnet die vorliegende Lösung eine Objekttypverteilung für jede Bilderfassung, in die ein LiDAR-Punkt hineinragen kann. Der Satz von Objekttypverteilungen wird dann unter Verwendung der geschätzten Wahrscheinlichkeit für jede Bilderfassung kombiniert. Ein naives Verfahren könnte für einen Punkt aus mehreren Bilderfassungen darin bestehen, die Typverteilung für jede Bilderfassung zu mitteln. Die vorliegende Lösung ist ein gewichteter Mittelwert, der durch die Wahrscheinlichkeit jeder Bilderfassung gewichtet wird.This change requires a change in the current single frame object type estimate. Instead of using a bitset counting method, the present solution calculates an object type distribution for each image capture that a LiDAR point can intrude. The set of object type distributions is then combined using the estimated probability for each image capture. For a point from multiple image acquisitions, a naive approach might be to average the type distribution for each image acquisition. The present solution is a weighted average weighted by the probability of each image capture.

Unter Bezugnahme auf 9 wird ein Flussdiagramm eines Verfahrens 900 zum Durchführen des LID-Anpassungsalgorithmus bereitgestellt. Das Verfahren 900 beginnt mit 904, wo ein Bild (z.B. Bild 1000 aus 10) durch eine bordeigene Rechenvorrichtung (z.B. die bordeigene Rechenvorrichtung 220 von 2) eines AV (z.B. des AV 1021 von 1) erhalten wird. Das Verfahren 900 fährt mit den Bildanalyseoperationen 906-912 fort. Diese Bildanalyseoperationen 906-912 können von einem handelsüblichen Bildanalysegerät, das einen herkömmlichen Objekterkennungsalgorithmus implementiert, durchgeführt werden. 906-912 beinhaltet im Allgemeinen: Identifizieren eines oder mehrerer Objekte (z.B. des Fahrzeugs 1022 von 1, des Radfahrers 114 von 1, des Fußgängers 116 von 1 und/oder des Fahrzeugs 1002 von 10) in dem Bild; Definieren einer zweidimensionalen Begrenzungsbox (z.B. der Begrenzungsbox 1100 aus 11), die jedes identifizierte Objekt umfasst; Definieren einer Maske (oder eines Gitters) (z.B. der Maske 1200 von 12) für jede zweidimensionale Begrenzungsbox; und Berechnen eines Konfidenzwerts für jede Zelle der Maske (oder des Gitters), ob das Pixel/die Pixel darin zu einem gegebenen detektierten Objekt gehören. Technik zum Berechnen von Konfidenzwerten für Objektdetektionszwecke sind im Stand der Technik wohlbekannt.With reference to 9 A flow diagram of a method 900 for performing the LID adaptation algorithm is provided. Method 900 begins at 904, where an image (e.g., image 1000 from 10 ) by an onboard computing device (e.g., onboard computing device 220 of FIG 2 ) of an AV (e.g. the AV 102 1 of 1 ) is obtained. Method 900 continues with image analysis operations 906-912. These image analysis operations 906-912 can be performed by commercially available image analysis equipment implementing a conventional object detection algorithm. 906-912 generally involves: identifying one or more objects (eg, the vehicle 102 2 of 1 , the cyclist 114 from 1 , of the pedestrian 116 of 1 and/or the vehicle 1002 of 10 ) in the picture; Define a two-dimensional bounding box (e.g. the bounding box 1100 out of 11 ) that includes each identified object; Define a mask (or grid) (e.g. the mask 1200 of 12 ) for each two-dimensional bounding box; and calculating, for each cell of the mask (or grid), a confidence value as to whether the pixel(s) therein belong to a given detected object. Techniques for calculating confidence values for object detection purposes are well known in the art.

In Schritt 914 bestimmt oder erhält die bordeigene Rechenvorrichtung extrinsische LiDAR-Sensor- und Kamerakalibrierungsparameter und intrinsische Kamerakalibrierungsparameter. Die extrinsischen LiDAR-Sensor- und Kamerakalibrierungsparameter umfassen LiDAR-Sensorkoordinaten und/oder Informationen, die eine Entsprechung zwischen LiDAR-Sensorkoordinaten und Kamerakoordinaten angeben. Die intrinsischen Kamerakalibrierungsparameter umfassen, ohne darauf beschränkt zu sein, eine x-Brennweite, eine y-Brennweite, eine Schrägstellung, eine Bildmitte, eine Brennpunktmitte des Bildes und/oder 3D-Koordinaten (x, y, z) einer Kameraposition.In step 914, the onboard computing device determines or obtains extrinsic LiDAR sensor and camera calibration parameters and intrinsic camera calibration parameters. The extrinsic LiDAR sensor and camera calibration parameters include LiDAR sensor coordinates and/or information indicating a correspondence between LiDAR sensor coordinates and camera coordinates. The intrinsic camera calibration parameters include, but are not limited to, x-focal length, y-focal length, skew, image center, image center of focus, and/or 3D coordinates (x,y,z) of a camera position.

In Schritt 916 werden verschiedene Informationen in einen LID-Anpassungsalgorithmus eingegeben. Diese Informationen umfassen, ohne darauf beschränkt zu sein, Kennungen oder Identifizierer für jedes Objekt, das in dem Bild detektiert wird, Maskenkennungen, Zellenkennungen für jede Maske, Konfidenzwerte für jede Zelle, LiDAR-Punktkennungen, LiDAR-Punktkoordinaten, extrinsische LiDAR-Sensor- und Kamerakalibrierungsparameter und intrinsische Kamerakalibrierungsparameter. Diese Eingaben werden in den nachfolgenden Operationen 918-920 verwendet: Bestimmen (für jeden Punkt des LiDAR-Datensatzes) einer Wahrscheinlichkeitsverteilung von Pixeln, an die ein LiDAR-Datenpunkt unter Berücksichtigung einer Projektionsunsicherheit im Hinblick auf Kamerakalibrierungsunsicherheiten projizieren kann; und Bestimmen (für jeden Punkt des LiDAR-Datensatzes) einer Wahrscheinlichkeitsverteilung über einen Satz von Objekterfassungen, in denen sich ein LiDAR-Datenpunkt wahrscheinlich befindet, auf der Grundlage der Konfidenzwerte. Die Operationen von 918 werden im Detail unten in Bezug auf 13 beschrieben. Anschließend werden die Operationen von 920 im Detail unten in Bezug auf 14 beschrieben. Anschließend wird Schritt 922 durchgeführt, wo das Verfahren 900 endet oder andere Operationen durchgeführt werden (z.B. Rückkehr zu 902).At step 916, various information is input to a LID adaptation algorithm. This information includes, but is not limited to, identifiers or identifiers for each object detected in the image, mask identifiers, cell identifiers for each mask, confidence values for each cell, LiDAR point identifiers, LiDAR point coordinates, extrinsic LiDAR sensor and camera calibration parameters and intrinsic camera calibration parameters. These inputs are used in subsequent operations 918-920: determine (for each point of the LiDAR data set) a probability distribution of pixels to which a LiDAR data point can project, considering projection uncertainty in terms of camera calibration uncertainties; and determining (for each point of the LiDAR data set) a probability distribution over a set of object detections in which a LiDAR data point is likely to be based on the confidence values. The operations of 918 are discussed in detail below with respect to 13 described. Subsequently, the operations of 920 are described in detail below with respect to 14 described. Step 922 is then performed, where method 900 ends or other operations are performed (eg, return to 902).

Wie in 13 gezeigt, umfasst Schritt 918 von 9 eine Vielzahl von Unteroperationen 1304-1306.As in 13 shown, includes step 918 of 9 a variety of sub-operations 1304-1306.

In 1304 berechnet die On-Board-Rechenvorrichtung eine Wahrscheinlichkeitsverteilungsfunktion („Probability Distribution Function“, „PDF“) f(xi,yi) über Bildraumkoordinaten für ein Pixel, zu dem ein LiDAR-Punkt wahrscheinlich gemäß einem naiven Projektionsalgorithmus (d.h. einer Wahrscheinlichkeitsverteilung, die um einen naiven Projektionspunkt zentriert ist) vorstehen oder projizieren würde. Der naive Projektionsalgorithmus wird durch die folgende mathematische Gleichung (1) definiert: [ x i y i 1 ] = M i n t T V e h i c l e C a m e r a T L i D A R V e h i c l e [ X Y Z 1 ]

Figure DE112021005607T5_0009
wobei Xi und yi Bildraumkoordinaten für ein Pixel repräsentieren, und X, Y und Z LiDAR-Raumkoordinaten für einen Punkt des LiDAR-Datensatzes darstellen. Grundsätzlich wird jeder Punkt des LiDAR-Datensatzes auf ein Pixel eines Bildes projiziert, das sich auf derselben Linie wie das Pixel befindet, wobei eine Linie von jedem Pixel zu einem Bereich des Bildes gezogen wird.In 1304, the on-board computing device calculates a probability distribution function ("PDF") f(x i ,y i ) over image space coordinates for a pixel to which a LiDAR point is likely to belong according to a naive projection algorithm (ie, a probability distribution centered around a naive projection point) would project or project. The naive projection algorithm is defined by the following mathematical equation (1): [ x i y i 1 ] = M i n t T V e H i c l e C a m e right a T L i D A R V e H i c l e [ X Y Z 1 ]
Figure DE112021005607T5_0009
where X i and y i represent image space coordinates for a pixel, and X, Y and Z represent LiDAR space coordinates for a point of the LiDAR data set. Basically, each point of the LiDAR dataset is projected onto a pixel of an image that is on the same line as the pixel, drawing a line from each pixel to an area of the image.

Es gibt mehrere Quellen von Projektionsunsicherheit, wie z.B. eine Zeitausrichtung und eine Objektbewegung. Wenn mehrere Quellen der Projektionsunsicherheit verwendet werden, dann ist es für jedes PDF und für jeden LiDAR-Punkt erforderlich: (i) in Bildraumkoordinaten darstellbar zu sein; (ii) in Bilderfassungsmaskenkoordinaten umwandelbar zu sein (kann übersetzt und skaliert werden); und (iii) zusammensetzbar (oder kombinierbar) mit anderen Projektionsunsicherheits-PDFs zu sein. Die vorliegende Lösung verwendet eine Jacobi(-Matrix) der PDF, um eine Unsicherheit der LiDAR-Frames zu Kamera-Frames weiter zu propagieren. Dies (oder eine ähnliche Alternative zur Ausbreitungsunsicherheit) trägt dazu bei, die Anforderung (i) zur Wahrscheinlichkeitsverteilung zu erfüllen.There are several sources of projection uncertainty, such as time alignment and object motion. If multiple sources of projection uncertainty are used, then each PDF and LiDAR point is required to: (i) be representable in image space coordinates; (ii) be convertible to image capture mask coordinates (can be translated and scaled); and (iii) to be composable (or combinable) with other projection uncertainty PDFs. The present solution uses a Jacobian (-matrix) of the PDF to further propagate an uncertainty of the LiDAR frames to camera frames. This (or a similar alternative to propagation uncertainty) helps to meet requirement (i) on the probability distribution.

Die PDF wird dann in Bilderfassungsmaskenkoordinaten umgewandelt, wie bei 1306 gezeigt.The PDF is then converted to image capture mask coordinates as shown at 1306 .

Diese Konvertierung wird durch Translation und Skalierung erreicht (wobei die Skalierung in x und die Skalierung in y unabhängig voneinander sind). Die Umrechnung wird durch die folgende mathematische Gleichung (2) definiert: x m = R x i x b b o x x b b o x + x b b o x

Figure DE112021005607T5_0010
wobei x b b o x +  und  x b b o x
Figure DE112021005607T5_0011
die Bildraumgrenzen eines Begrenzungsrechtecks darstellen und R eine Maskenauflösung ist.This conversion is achieved by translation and scaling (where the scaling in x and the scaling in y are independent of each other). The conversion is defined by the following mathematical equation (2): x m = R x i x b b O x x b b O x + x b b O x
Figure DE112021005607T5_0010
where x b b O x + and x b b O x
Figure DE112021005607T5_0011
represent the image space boundaries of a bounding rectangle and R is a mask resolution.

Wie in 14 gezeigt, umfasst Schritt 920 von 9 das Durchführen verschiedener Operationen 1404-1408. In 1404 berechnet die bordeigene Rechenvorrichtung eine Wahrscheinlichkeit, dass ein LiDAR-Punkt Ipi unabhängig von allen anderen Bilderfassungen (z.B. d2, ... , d10) in eine gegebene Bilderfassung dj (z.B. d1) projiziert. Die Wahrscheinlichkeit wird als ip(Ipi ∈ dj) ausgedrückt. An diesem Punkt besteht eine PDF f(xm, ym) Funktion, die eine wahrscheinliche LiDAR-Punktprojektion über Bilderfassungsmaskenkoordinaten darstellt. Bei dieser Berechnung werden die Bilderfassungskonfidenz cd und die Pro-Pixel-Konfidenzen cxm, ym berücksichtigt. Diese Konfidenzen liegen in einem Intervall [0, 1], stellen aber keine Wahrscheinlichkeiten dar. Eine Abbildungsfunktion wird angewendet, um eine Wahrscheinlichkeit p(d) aus cd und eine Wahrscheinlichkeit p(mp ∈ d) aus cxm, ym zu berechnen, wobei mp ein Maskenpixel darstellt. Die Abbildung kann eine logistische Funktion umfassen, ist aber nicht darauf beschränkt. Die Pro-Pixel-Vertrauen in der Bilderfassungsmaske beziehen sich auf die gesamten Maskenpixel (keine infinitesimalen Koordinaten). Somit berechnet die bordeigene Rechenvorrichtung die Wahrscheinlichkeit, dass ein LiDAR-Punkt gemäß der mathematischen Gleichung (3) in ein spezifisches Bilddetektionsmaskenpixel projiziert: p ( l p m p ) m p ƒ ( x m , y m ) d m p = x m p x m p + y m p y m p + ƒ ( x m , y m ) d y d x

Figure DE112021005607T5_0012
wobei Ip ein LiDAR-Punkt ist, mp ein Maskenpixel ist, [ x m p , x m p + ]
Figure DE112021005607T5_0013
die x-Grenzen eines Pixels in Maskenkoordinaten darstellen und [ y m p , y m p + ]
Figure DE112021005607T5_0014
die y-Grenzen eines Pixels in Maskenkoordinaten darstellen, dmp ein Maskenpixel darstellt, das einer gegebenen Objektdetektion d zugeordnet ist, d, dy die y-Achsenkoordinate für ein Maskenpixel darstellt, das mit der gegebenen Objektdetektion d assoziiert ist und d und dx die x-Achsenkoordinate für ein Maskenpixel darstellt, das mit der gegebenen Objektdetektion d assoziiert ist.As in 14 shown, includes step 920 of 9 performing various operations 1404-1408. In 1404, the on-board computing device calculates a probability that a LiDAR point projects Ip i into a given image acquisition d j (eg d 1 ) independently of all other image acquisitions (eg d 2 , . . . , d 10 ). The probability is expressed as i p (Ip i ∈ d j ). At this point, there is a PDF f(x m ,y m ) function that represents a probable LiDAR point projection over image acquisition mask coordinates. This calculation takes into account the image acquisition confidence c d and the per-pixel confidences c x m, y m . These confidences lie in an interval [0, 1] but do not represent probabilities. A mapping function is applied to derive a probability p(d) from c d and a probability p(mp ∈ d) from c x m, y m calculate, where mp represents a mask pixel. The mapping may include, but is not limited to, a logistic function. The per-pixel confidences in the image capture mask refer to the total mask pixels (not infinitesimal coordinates). Thus, the on-board computing device calculates the probability that a LiDAR point will project into a specific image detection mask pixel according to mathematical equation (3): p ( l p m p ) m p ƒ ( x m , y m ) i.e m p = x m p x m p + y m p y m p + ƒ ( x m , y m ) i.e y i.e x
Figure DE112021005607T5_0012
where Ip is a LiDAR point, mp is a mask pixel, [ x m p , x m p + ]
Figure DE112021005607T5_0013
represent the x-boundaries of a pixel in mask coordinates and [ y m p , y m p + ]
Figure DE112021005607T5_0014
represent the y-boundaries of a pixel in mask coordinates, dmp represents a mask pixel associated with a given object detection d, d,dy represents the y-axis coordinate for a mask pixel associated with the given object detection d, and d and dx represent the x- axis coordinate for a mask pixel associated with the given object detection d.

Diese Berechnung wird durch die folgende mathematische Gleichung (4) definiert: [ \ h box? ] i p ( l p d ) = p ( d ) m a s k p ( l p m p ) p ( m p d ) = p ( d ) x = 0 R y = 0 R p ( l p m p x , y ) p ( m p x , y d )

Figure DE112021005607T5_0015
wobei die Maskenauflösung R mal R für jeden Punkt ist, diese Wahrscheinlichkeit für jede Detektion berechnet wird, in die der LiDAR-Punkt hineinragen kann. In einigen Szenarien können sich die Wahrscheinlichkeiten auf mehr als eins summieren. Es wird davon ausgegangen, dass ein LiDAR-Punkt nur in eine einzige Bilderfassung hineinragen kann. Somit wird jede unabhängige Wahrscheinlichkeit als unabhängige Messung behandelt, (d.h., ip(lp ∈ d1) ist unabhängig von ip(Ip ∈ d2)).This calculation is defined by the following mathematical equation (4): [ \ h box? ] i p ( l p i.e ) = p ( i.e ) m a s k p ( l p m p ) p ( m p i.e ) = p ( i.e ) x = 0 R y = 0 R p ( l p m p x , y ) p ( m p x , y i.e )
Figure DE112021005607T5_0015
where the mask resolution is R times R for each point, this probability is calculated for each detection that the LiDAR point can intrude. In some scenarios, the probabilities can add up to more than one. It is assumed that a LiDAR point can only protrude into a single image acquisition. Thus, each independent probability is treated as an independent measurement (ie, ip(lp ∈ d 1 ) is independent of ip(Ip ∈ d 2 )).

Die bordeigene Rechenvorrichtung berechnet ferner die Wahrscheinlichkeit, dass der LiDAR-Punkt nicht in eine beliebige Bilderfassung hineinragt, wie bei 1406 gezeigt. Diese Berechnung wird durch die mathematische Gleichung (5) definiert: p ( d   l p d ) = d e t e c t i o n s [ 1 i p ( l p d ) ]

Figure DE112021005607T5_0016
The on-board computing device further calculates the probability that the LiDAR point does not protrude into any image capture, as shown at 1406 . This calculation is defined by the mathematical equation (5): p ( i.e l p i.e ) = i.e e t e c t i O n s [ 1 i p ( l p i.e ) ]
Figure DE112021005607T5_0016

Schließlich berechnet die bordeigene Rechenvorrichtung in 1408 eine abhängige Wahrscheinlichkeit durch Normalisieren über alle berechneten Wahrscheinlichkeiten. Diese Berechnung wird durch die folgende mathematische Gleichung (6) definiert: d p ( l p d i ) = p ( d   l p d ) d p ( l p d i | d   l p d ) = [ 1 p ( d   l p d ) ] i p ( l p d i ) d e t e c t i o n s i p ( l p d )

Figure DE112021005607T5_0017
wobei ip(lp ∈ d) eine Wahrscheinlichkeit repräsentiert, dass ein Punkt des LiDAR-Datensatzes in eine Bilderfassung unabhängig von allen anderen Bilderfassungen projiziert ist, und p(∀d lp ∉ d) eine Wahrscheinlichkeit darstellt, dass der LiDAR-Punkt nicht in eine beliebige Bilderfassung hineinragt. Das Ergebnis dieser Berechnung stellt die Wahrscheinlichkeit dar, dass ein LiDAR-Punkt in eine bestimmte Detektion hineinragt. Für jeden LiDAR-Punkt gibt der LID-Anpassungsalgorithmus diese Wahrscheinlichkeit für jede Detektion aus, dass der LiDAR-Punkt dort hineinragt. D.h., für jeden Punkt wird eine schwachbesetzte Wahrscheinlichkeitsverteilung über Bilddetektionen aus dem LID-Anpassungsalgorithmus ausgegeben. Die schwachbesetzte Wahrscheinlichkeitsverteilung stellt die Wahrscheinlichkeitsverteilung über einen Satz von Objekterfassungen dar, in denen wahrscheinlich ein LiDAR-Datenpunkt vorhanden ist.Finally, in 1408, the on-board computing device calculates a dependent probability by normalizing over all calculated probabilities. This calculation is defined by the following mathematical equation (6): i.e p ( l p i.e i ) = p ( i.e l p i.e ) i.e p ( l p i.e i | i.e l p i.e ) = [ 1 p ( i.e l p i.e ) ] i p ( l p i.e i ) i.e e t e c t i O n s i p ( l p i.e )
Figure DE112021005607T5_0017
where ip(lp ∈ d) represents a probability that a point of the LiDAR dataset is projected into an image acquisition independent of all other image acquisitions, and p(∀d lp ∉ d) represents a probability that the LiDAR point is not in a any image capture protrudes. The result of this calculation represents the probability that a LiDAR point will protrude into a given detection. For each LiDAR point, the LID adaptation algorithm outputs this probability for each detection that the LiDAR point protrudes into it. That is, for each point, a sparse probability distribution is output via image detections from the LID adaptation algorithm. The sparse probability distribution represents the probability distribution over a set of object detections in which a LiDAR data point is likely to be present.

Lokale Variationssegmentierung mit BilderfassungsmerkmalenLocal variation segmentation with image capture features

Bei einigen herkömmlichen Objekterkennungsalgorithmen unter Verwendung einer 3D-LiDAR-Punktwolke werden kleine Punktwolkencluster erzeugt, die sehr ähnlich sind und daher fast sicher in demselben Objekt sind, wobei die Punktwolkencluster (weniger in der Anzahl und mit mehr Kontext als einzelne Punkte) zu einem Objekt zusammengeführt werden. Gemeinsame Verfahren für Punktwolken-Clustering sind verbundene Komponenten („Connected Components“) und dichtebasiertes räumliches Clustering von Anwendungen („Density-Based Spatial Clustering of Applications“ bzw. „DBSCAN“). Beide Verfahren berücksichtigen nur lokale Informationen (und nicht den größeren Kontext der Szenerie). Ein besseres Verfahren ist „Point Cloud Local Variations Segmentation“ („PCLVS“), das lokale Informationen mit einem breiteren Kontext kombiniert. Ein beispielhafter PCLVS-Algorithmus wird in einem Dokument mit dem Titel „Graph Based Over-Segmentation Methods for 3D Point Clouds“ diskutiert, das von Yizhak Ben-Shabat et al geschrieben wurde. Dieses Dokument diskutiert die Verwendung mehrerer Merkmale eines Punkts (Ort, Farbe basierend auf einem Bild und Richtung einer geschätzten Oberfläche an dem Punkt). Diese Merkmale allein sind nicht notwendigerweise genug, um zwei nahe Objekte davon abzuhalten, zusammengeführt zu werden.Some traditional object detection algorithms using a 3D LiDAR point cloud produce small point cloud clusters that are very similar and therefore almost certainly in the same object, merging the point cloud clusters (fewer in number and with more context than individual points) into one object become. Common techniques for point cloud clustering are Connected Components and Density-Based Spatial Clustering of Applications (DBSCAN). Both methods only consider local information (and not the larger context of the scene). A better technique is Point Cloud Local Variations Segmentation ("PCLVS"), which combines local information with a broader context. An example PCLVS algorithm is discussed in a document entitled "Graph Based Over-Segmentation Methods for 3D Point Clouds" written by Yizhak Ben-Shabat et al. This document discusses using multiple features of a point (location, color based on an image, and direction of an estimated surface at the point). These features alone are not necessarily enough to keep two close objects from merging.

Die vorliegende Lösung stellt einen verbesserten LVS-basierten Algorithmus bereit, der das Zusammenführen von nahen Objekten eliminiert oder minimiert. Diese Verbesserung wird zumindest teilweise durch die Verwendung zusätzlicher Merkmale erreicht, die (i) ein Bilderfassungsfähigkeitsmerkmal und (ii) ein modifiziertes Abstandsmerkmal umfassen. Das Merkmal (i) ist die Differenz, zwischen welchen Bilderfassungen jeder Punkt enthalten ist. Jeder Punkt hat eine Pro-Kamera-Verteilung von Bilddetektionen, dass er in der Bilderfassung ist (und eine Wahrscheinlichkeit, dass er in keiner Bilderfassung ist). Die Informationen von allen Kameras werden probabilistisch in eine einzige Zahl kombiniert, die anzeigt, ob die Punkte wahrscheinlich in der gleichen Bilderfassung sind oder nicht. Merkmal (ii) ist eine erweiterte oder kontrahierte Höhenkomponente eines geometrischen Abstands zwischen Punkten. Das Merkmal (ii) wird bereitgestellt, um die Probleme zu adressieren, dass Punktwolken keine gleichmäßige Dichte von Punkten aufweisen und dass weniger Laser auf die oberen und die unteren Enden eines Objekts gerichtet sind. Die Merkmale (i) und (ii) werden in dem LVS-basierten Algorithmus mit gemeinsamen Merkmalen wie Farbähnlichkeit kombiniert. Die Merkmale (i) und (ii) stellen eine überlegene Objektdetektionsfähigkeit bereit, indem es wahrscheinlicher ist, Cluster zu kombinieren, die sich in demselben Objekt befinden und weniger wahrscheinlich Cluster zu kombinieren, die nicht in demselben Objekt sind.The present solution provides an improved LVS-based algorithm that eliminates or minimizes merging of nearby objects. This improvement is achieved, at least in part, through the use of additional features, including (i) an image capture capability feature and (ii) a modified spacing feature. Feature (i) is the difference between which image acquisitions each point is included. Each point has a per-camera distribution of image detections that it is in image acquisition (and a probability that it is not in image acquisition). The information from all cameras is probabilistically combined into a single number that indicates whether the points are likely to be in the same frame or not. Feature (ii) is an expanded or contracted height component of a geometric distance between points. Feature (ii) is provided to address the problems that point clouds do not have a uniform density of points and that fewer lasers are aimed at the tops and bottoms of an object. Features (i) and (ii) are combined in the LVS-based algorithm with common features such as color similarity. Features (i) and (ii) provide superior object detection capability by being more likely to combine clusters that are in the same object and less likely to combine clusters that are not in the same object.

Der herkömmliche PCLVS-Algorithmus behandelt die Segmentierung in einer breiten Vielfalt von relativ leichten und moderaten Szenarien zum Extrahieren von Objekten aus einer Punktwolke, arbeitet aber derzeit in anspruchsvollen Szenarien nicht wie gewünscht. Dieser herkömmliche Ansatz nutzt keine anderen Aspekte der Informationen, die aus den LiDAR-Daten verfügbar sind, wie (i) die negative Information, die vom LiDAR beim Passieren durch Regionen der Umgebung ohne Interaktion bereitgestellt wird, und (ii) die zugrundeliegende Struktur, wie die Daten erfasst werden. Diese Informationen können verwendet werden, um die Durchführung der Segmentierung in mehrdeutigen oder herausfordernden Szenarien zu verbessern. Darüber hinaus versucht der PCLVS-Ansatz, Segmente weitgehend zu erzeugen, die 1:1 zu Objekten in der Welt entsprechen, ohne dass Informationen außerhalb des LiDAR rigoros genutzt werden, um dies zu tun. Dies führt zu einer Erhöhung der Segmentierungsfehler, insbesondere der Untersegmentierungsfehler. Untersegmentierungsfehler sind nach der Segmentierung besonders schwierig zu lösen, da das Aufteilen eines unterteilten Objekts das Implementieren eines zweiten Segmentierungsalgorithmus erfordert. Das „Vorspannen“ in Richtung einer Übersegmentierung stellt zwei entscheidende Vorteile bereit: eine Verbesserung der Fähigkeit, die Grenzen zu extrahieren, die die Bewegungsplanung für ein AV am kritisch beeinflussen, und eine Nachverarbeitung aufgrund von Zusammenführungssegmenten, die einen grundsätzlich anderen Algorithmus darstellt, zu ermöglichen. Die vorliegende Lösung schlägt einen neuen LVS-basierten Segmentierungsansatz vor, der diese Probleme löst: Bereitstellen eines Frames zum Integrieren zusätzlicher Informationen von den LiDAR-Sensoren; Definieren des Problems, um sicherzustellen, dass der Ausgang in einer Weise strukturiert wird, die sich leichter nachgelagert verarbeiten lässt; und Verbessern der Leistung durch Reduzieren der Untersegmentierung und Verbesserung des Grenzrückrufs („Boundary Recall“).The conventional PCLVS algorithm handles segmentation in a wide variety of relatively easy and moderate scenarios for extracting objects from a point cloud, but currently does not work as desired in demanding scenarios. This traditional approach does not utilize other aspects of the information available from the LiDAR data, such as (i) the negative information provided by the LiDAR when passing through non-interacting regions of the environment, and (ii) the underlying structure, such as the data are recorded. This information can be used to improve the performance of segmentation in ambiguous or challenging scenarios. In addition, the PCLVS approach attempts to largely generate segments that correspond 1:1 to objects in the world without rigorously leveraging information outside of the LiDAR to do so. This leads to an increase in segmentation errors, particularly sub-segmentation errors. Sub-segmentation errors are particularly difficult to solve after segmentation, since splitting a subdivided object requires implementing a second segmentation algorithm. "Biasing" towards over-segmentation provides two key benefits: an improvement in the ability to extract the boundaries that most critically affect motion planning for an AV, and enabling post-processing due to merging segments, which represents a fundamentally different algorithm . The present solution proposes a new LVS-based segmentation approach that solves these problems: provide a frame to integrate additional information from the LiDAR sensors; Defining the problem to ensure that the output is in a structured in a way that is easier to process downstream; and improve performance by reducing sub-segmentation and improving boundary recall.

Unter Bezugnahme auf 15 wird eine Darstellung bereitgestellt, die zum Verständnis des neuen LVS-Algorithmus 1500 der vorliegenden Lösung nützlich ist. Wie in 15 gezeigt, werden LiDAR-Datenpunkte 1502 in den LVS-Algorithmus 1500 eingegeben. Die LiDAR-Datenpunkte 1502 werden zu einem Graphen-Konstruktor 1504 geleitet, wo ein Konnektivitätsgraph durch Plotten der LiDAR-Datenpunkte auf einem 3D-Graphen und Verbinden von LiDAR-Datenpunkten konstruiert wird. Die LiDAR-Datenpunktverbindungen können basierend darauf gemacht werden, ob zwei Punkte innerhalb eines räumlichen Schwellenabstands voneinander liegen, und/oder, ob zwei Punkte innerhalb eines Schwellenzeitabstands voneinander liegen. In anderen Szenarien ist jeder LiDAR-Datenpunkt mit seinen K-nächsten Nachbarn verbunden. In noch anderen Szenarien wird eine Delaunay-Triangulation konstruiert und als Konnektivitätsgraph verwendet. Die verbundenen LiDAR-Datenpunkte stellen einen vorgeschlagenen Satz von LiDAR-Datenpunkten dar, die zusammengeführt werden sollten, um ein Segment 1512 zu bilden. Ein beispielhafter Graph 1600 ist in 16 bereitgestellt. Wie in 16 gezeigt, weist der Graph 1600 eine Vielzahl von Knoten 1602 auf, die LiDAR-Datenpunkte oder Messungen darstellen. Verbindungslinien 1604 wurden zwischen den Knoten 1602 hinzugefügt. Die Verbindungslinien 1604 werden hier auch als Graphenkanten eij bezeichnet.With reference to 15 a representation is provided useful in understanding the new LVS algorithm 1500 of the present solution. As in 15 As shown, LiDAR data points 1502 are input to LVS algorithm 1500 . The LiDAR data points 1502 are passed to a graph constructor 1504 where a connectivity graph is constructed by plotting the LiDAR data points on a 3D graph and connecting LiDAR data points. The LiDAR data point connections may be made based on whether two points are within a threshold spatial distance of one another and/or whether two points are within a threshold time distance of one another. In other scenarios, each LiDAR data point is connected to its K-nearest neighbors. In still other scenarios, a Delaunay triangulation is constructed and used as the connectivity graph. The connected LiDAR data points represent a proposed set of LiDAR data points that should be merged to form a segment 1512 . An example graph 1600 is in 16 provided. As in 16 As shown, the graph 1600 includes a plurality of nodes 1602 representing LiDAR data points or measurements. Connection lines 1604 have been added between nodes 1602. The connecting lines 1604 are also referred to here as graph edges e ij .

Als nächstes bestimmt ein Deskriptor-Bestimmer 1506 einen Deskriptor für jeden Knoten 1602 (oder LiDAR-Datenpunkt). Der Deskriptor ist ein Vektor V von Elementen, die den Knoten (oder LiDAR-Datenpunkt) charakterisieren. Die Elemente umfassen, ohne darauf beschränkt zu sein, Oberflächennormale Ni, einen Pro-Punkt-Farbwert (RiGiBi) basierend auf einem Bild (z.B. Bild 1000 von 10), eine Intensität Ii, eine Textur Ti räumliche Koordinaten (xi, yi, zi), Höhe über Grund Hi, eine Wahrscheinlichkeitsverteilung cli über Objektklassen für Punkt-(oder Knoten -) Bilddetektionen, dass sie in einen Satz von Instanzkennungen {idi}, in ein Bild-basiertes Merkmal fi und/oder in ein Fast-Point-Feature-Histogramm FPFHi hineinragen, wobei jedes der aufgelisteten Elemente RiGiBi, Ii, Ti, (xi, yi, zi) und FPFHi in der Technik wohlbekannt ist. Dementsprechend kann der Vektor V durch die folgende mathematische Gleichung (7) definiert werden: V = ( N i , R i G i B i , I i , T i , ( x i , y i , z i ) , H i , c l i , i d i , f i , F P F H i , )

Figure DE112021005607T5_0018
Next, a descriptor determiner 1506 determines a descriptor for each node 1602 (or LiDAR data point). The descriptor is a vector V of elements that characterize the node (or LiDAR data point). The elements include, but are not limited to, surface normals N i , a per-dot color value (R i G i B i ) based on an image (e.g., image 1000 of 10 ), an intensity I i , a texture T i spatial coordinates (x i , y i , z i ), height above ground Hi, a probability distribution cl i over object classes for point (or node) image detections, that they are in a sentence of instance identifiers {idi}, protrude into an image-based feature fi and/or into a fast point feature histogram FPFH i , where each of the listed elements R i G i B i , I i , T i , (x i , y i , z i ) and FPFH i is well known in the art. Accordingly, the vector V can be defined by the following mathematical equation (7): V = ( N i , R i G i B i , I i , T i , ( x i , y i , e.g i ) , H i , c l i , i i.e i , f i , f P f H i , ... )
Figure DE112021005607T5_0018

Ein Kantengewichtszuordner 1508 ordnet jeder Graphenkante eij Gewichte zu. Die Graphenkante umfasst ein Kantenmerkmal MDi. Der modifizierte Abstand MDi ist eine erweiterte oder kontrahierte Höhenkomponente eines geometrischen Abstands zwischen Knoten (oder LiDAR-Datenpunkten). Der modifizierte Abstand MDi kann durch die folgende mathematische Gleichung (8) definiert werden:   ω m d ( e i j ) = ( X i X j ) 2 + ( Y i Y j ) 2 + ( ƒ ( H i ) ƒ ( H j ) ) 2 d m i n d m a x d m i n , ƒ ( x ) = a 1 + e k z

Figure DE112021005607T5_0019
H ist die Punkthöhe über Grund, a und k sind Konstanten für logistische Funktion, die die Z-Achsen-Abstände komprimiert, wenn Punkte nahe dem Boden liegen.An edge weight assigner 1508 assigns each graph edge e ij weights. The graph edge includes an edge feature MD i . The modified distance MD i is an expanded or contracted height component of a geometric distance between nodes (or LiDAR data points). The modified distance MD i can be defined by the following mathematical equation (8): ω m i.e ( e i j ) = ( X i X j ) 2 + ( Y i Y j ) 2 + ( ƒ ( H i ) ƒ ( H j ) ) 2 i.e m i n i.e m a x i.e m i n , ƒ ( x ) = a 1 + e k e.g
Figure DE112021005607T5_0019
H is point height above ground, a and k are constants for logistic function that compresses z-axis distances when points are close to ground.

Die Gewichte repräsentieren jeweils ein Dissimilaritätsmaß zwischen zwei benachbarten Knoten 1602. Ein Gewicht wird für jede Art von Element berechnet, das in dem Vektor V enthalten ist. Genauer wird ein Gewicht wn für die Oberflächennormale berechnet, das durch die folgende mathematische Gleichung (9) definiert werden kann: w n ( e i j ) = 1 N ^ i N ^ j

Figure DE112021005607T5_0020
The weights each represent a measure of dissimilarity between two neighboring nodes 1602. A weight is calculated for each type of element contained in the vector V . More specifically, a weight w n is calculated for the surface normal, which can be defined by the following mathematical equation (9): w n ( e i j ) = 1 N ^ i N ^ j
Figure DE112021005607T5_0020

Für die Farbe wird ein Gewicht wc berechnet, das durch die folgende mathematische Gleichung (10) definiert werden kann: w c ( e i j ) = ( R i R j ) 2 + ( G i G j ) 2 + ( B i B j ) 2 3 .

Figure DE112021005607T5_0021
A weight w c is calculated for the color, which can be defined by the following mathematical equation (10): w c ( e i j ) = ( R i R j ) 2 + ( G i G j ) 2 + ( B i B j ) 2 3 .
Figure DE112021005607T5_0021

Ferner wird ein Gewicht wl für die Intensität berechnet, das durch die folgende mathematische Gleichung (11) definiert werden kann: w i = | I i I j | I m a x

Figure DE112021005607T5_0022
wobei Ii und Ij LiDAR-Punktintensitäten sind und Imax der maximal mögliche Intensitätswert ist.Furthermore, a weight w l for the intensity is calculated, which can be defined by the following mathematical equation (11): w i = | I i I j | I m a x
Figure DE112021005607T5_0022
where I i and I j are LiDAR point intensities and I max is the maximum possible intensity value.

Ein Gewicht wd wird für 3D-Graphkoordinaten berechnet, die durch die folgende mathematische Gleichung (12) definiert werden können: w d ( e i j ) = ( X i X j ) 2 + ( Y i Y j ) 2 + ( Z i Z j ) 2 d min d max d min

Figure DE112021005607T5_0023
wobei dmin einen minimalen Abstand innerhalb des Graphen darstellt und dmax einen maximalen Abstand innerhalb des Graphen darstellt.A weight w d is calculated for 3D graph coordinates, which can be defined by the following mathematical equation (12): w i.e ( e i j ) = ( X i X j ) 2 + ( Y i Y j ) 2 + ( Z i Z j ) 2 i.e at least i.e Max i.e at least
Figure DE112021005607T5_0023
where d min represents a minimum distance within the graph and d max represents a maximum distance within the graph.

Ein Gewicht wcl wird für cli berechnet. Dies kann durch die folgende mathematische Gleichung (13) definiert werden. Der Wert des Gewichts wcl kann 1 sein, wenn die Objektklassen unterschiedlich sind, oder -1, wenn die Objektklassen gleich sind. Ein Graphenknoten kann aus mehreren LIDAR-Punkten zusammengesetzt sein. Wie oben angemerkt, ist cli die Wahrscheinlichkeitsverteilung über Objektklassen für konstituierende Punkte. Der Bhattacharyya-Abstand kann verwendet werden, um die Ähnlichkeit zwischen zwei Wahrscheinlichkeitsverteilungen zu berechnen.A weight w cl is calculated for cl i . This can be defined by the following mathematical equation (13). The value of the weight w cl can be 1 if the object classes are different, or -1 if the object classes are the same. A graph node can be composed of multiple lidar points. As noted above, cl i is the probability distribution over object classes for constituent points. The Bhattacharyya distance can be used to calculate the similarity between two probability distributions.

Ein Gewicht wFPFH wird für ein False-Point-Feature-Histogramm berechnet, das durch die folgende mathematische Gleichung (14) definiert werden kann. w F P F H ( e i j ) = 1 l = 1 33 min ( F P F H i , l , F P F H j , l )

Figure DE112021005607T5_0024
A weight w FPFH is calculated for a false point feature histogram, which can be defined by the following mathematical equation (14). w f P f H ( e i j ) = 1 l = 1 33 at least ( f P f H i , l , f P f H j , l )
Figure DE112021005607T5_0024

Ein Gewicht wIDC wird für die Bilderfassungsfähigkeit berechnet, die durch die folgende mathematische Gleichung (15) definiert werden kann. I D C i j = [ c C d D c p ( l p i d ) p ( l p j d ) ] 0 1

Figure DE112021005607T5_0025
wobei c die Kompatibilität zwischen Punkten ist, C der Satz aller Kameras ist, Dc der Satz von Bilderfassungen in C ist und deine Abschneidefunktion ist.A weight w IDC is calculated for the imaging capability, which can be defined by the following mathematical equation (15). I D C i j = [ c C i.e D c p ( l p i i.e ) p ( l p j i.e ) ] 0 1
Figure DE112021005607T5_0025
where c is the compatibility between points, C is the set of all cameras, Dc is the set of image acquisitions in C, and is your clipping function.

Ein Gewicht wMD wird für einen modifizierten Abstand berechnet, der gleich dem obigen MDij sein kann.A weight w MD is calculated for a modified distance, which may be equal to the MD ij above.

Die obigen Gewichte können zu einem nicht-negativen Skalar w(eij) durch zum Beispiel Linearkombination kombiniert werden. Die Informationen von allen Kameras werden probabilistisch in eine einzige Zahl kombiniert, die anzeigt, ob die Punkte wahrscheinlich in der gleichen Bilderfassung sind oder nicht. Der nichtnegative Skalierer w(eij) kann durch die folgende mathematische Gleichung (16) definiert werden: w ( e i j ) = k n w n ( e i j ) + k c w c ( e i j ) + k l w l ( e i j ) + k T w T ( e i j ) + k d w d ( e i j ) + k H k H ( e i j ) + k c l w c l ( e i j )   + k i d w i d ( e i j ) + k F P F H w F P F H ( e i j ) + k I D C w I D C ( e i j ) + k M D w M D ( e i j ) +

Figure DE112021005607T5_0026
wobei kn, kc, kl, kT, kd, kH, kcl, kid, kppFH, kIDC und kMD vorgegebene Konstanten sind. Der Skalierer w(eij) wird dann durch den Kantenzuordner 1508 als das Kantengewicht für eine gegebene Graphenkante ey zugewiesen. Die Kantengewichte w(eij) werden dann zu einem LiDAR-Punktmerger 1510 geleitet.The above weights can be combined into a non-negative scalar w(e ij ) by, for example, linear combination. The information from all cameras is probabilistically combined into a single number that indicates whether the points are likely to be in the same frame or not. The non-negative scaler w(e ij ) can be defined by the following mathematical equation (16): w ( e i j ) = k n w n ( e i j ) + k c w c ( e i j ) + k l w l ( e i j ) + k T w T ( e i j ) + k i.e w i.e ( e i j ) + k H k H ( e i j ) + k c l w c l ( e i j ) + k i i.e w i i.e ( e i j ) + k f P f H w f P f H ( e i j ) + k I D C w I D C ( e i j ) + k M D w M D ( e i j ) + ...
Figure DE112021005607T5_0026
where k n , k c , k l , k T , k d , k H , k cl , k id , k ppFH , k IDC , and k MD are predetermined constants. The scaler w(e ij ) is then assigned by the edge allocator 1508 as the edge weight for a given graph edge e y . The edge weights w(e ij ) are then passed to a LiDAR point merger 1510 .

Der LiDAR-Punkt-Merger 1510 verwendet die Kantengewichte w(eij), um zu entscheiden, welche LiDAR-Datenpunkte zusammengeführt werden sollten, um Segmente 1512 zu bilden. Die LiDAR-Punkte werden basierend auf diesen Entscheidungen zusammengeführt. Die Ausgabe des LiDAR-Punktmergers 1510 stellt eine Vielzahl von Segmenten 1512 dar. Die Segmente 1512 werden in nachfolgenden Segmentzusammenführungsoperationen verwendet.The LiDAR point merger 1510 uses the edge weights w(e ij ) to decide which LiDAR data points should be merged to form segments 1512 . The LiDAR points are merged based on these decisions. The output of the LiDAR point merger 1510 Figure 12 illustrates a plurality of segments 1512. Segments 1512 are used in subsequent segment merge operations.

Die iterativen Segmentverschmelzungsoperationen, die von dem LiDAR-Punktmerger 1510 durchgeführt werden, beinhalten das Bilden von Segmenten durch iteratives Zusammenführen kleinerer Segmente, bis ein Stoppzustand erreicht ist. Insbesondere werden alle Knoten 1602 zunächst als einzelne Segmente betrachtet, und alle Graphenkanten 1604 werden in aufsteigender Reihenfolge durch das Kantengewicht w(eij) sortiert. Die Graphenkanten 1604 werden berücksichtigt, um jede Graphenkante als Zusammenführungsvorschlag zu behandeln, wenn die Graphenkante zwei verschiedene Segmente verbindet. Ein Zusammenführungsvorschlag wird akzeptiert, wenn das Gewicht zwischen den beiden Segmenten kleiner als eine größte interne Variation der beiden Segmente ist, plus einem Term, der die Segmentierung vorspannt, um kleine Segmente zusammenzufügen. Genauer gesagt sind die gegebenen Segmente Ci, Cj durch eine Kante eij mit einem Gewicht w(eij) verbunden: w ( e i j ) < = m i n x ( i , j ) ( m a x e M S T ( C x ) w ( e ) + δ | C x | )

Figure DE112021005607T5_0027
wobei MST(Cx) einen minimalen Spannbaum von C definiert, und δ einen Parameter darstellt, der einen Grad der Segmentierung steuert, der auftritt. Dieser Schwellenwert kann auf einer Pro-Element-Basis oder auf eine gewichtete Summe des für die Graphenkante definierten Gewichts angewendet werden. Der finale Ausgangswert 1512 ist dann eine Segmentierung aller Beobachtungen über verschiedene Cluster. Jedes der Segmente 1512 umfasst einen oder mehrere LiDAR-Punkte.The iterative segment merging operations performed by the LiDAR point merge 1510 involve forming segments by iteratively merging smaller segments until a stopping state is reached. In particular, all nodes 1602 are first considered as individual segments, and all graph edges 1604 are sorted in ascending order by edge weight w(e ij ). The graph edges 1604 are considered to treat each graph edge as a merge proposal when the graph edge connects two different segments. A merge proposal is accepted if the weight between the two segments is less than a largest internal variation of the two segments, plus a term biasing the segmentation to merge small segments. More precisely, the given segments C i , C j are connected by an edge e ij with weight w(e ij ): w ( e i j ) < = m i n x ( i , j ) ( m a x e M S T ( C x ) w ( e ) + δ | C x | )
Figure DE112021005607T5_0027
where MST(C x ) defines a minimum spanning tree of C, and δ represents a parameter that controls a degree of segmentation that occurs. This threshold can be applied on a per element basis or to a weighted sum of the weight defined for the graph edge. The final output 1512 is then a segmentation of all observations across different clusters. Each of the segments 1512 includes one or more LiDAR points.

In einigen Szenarien wird ein Metrikgenerator 1514 bereitgestellt, um Segmentierungsmetriken aus der Segmentierungsoperation und -ausgabe zu sammeln, zu berechnen und/oder zu erzeugen. Um diese zu definieren, wird angenommen, dass eine markierte „Ground Truth“ (Feldvergleichsfähigkeit) für Punktwolken verfügbar ist, die alle Objekte kennzeichnet, die für das System von Interesse sind. Es ist zu beachten, dass, da dieser Segmentierungsansatz alle Objekte detektieren soll, die vermieden werden sollten, Markierungen für Hindernisse existieren sollten, die nicht von Interesse für das Detektionssystem sind, sondern vermieden werden sollten (z.B. Fremdobjektschutt, Straßenschilder und/oder Mülltonnen). Die vorgeschlagenen Metriken umfassen eine Untersegmentierungsfehlermetrik, eine Grenzabrufmetrik und eine Instanzpräzisions- und Abrufmetrik.In some scenarios, a metrics generator 1514 is provided to collect, calculate, and/or generate segmentation metrics from the segmentation operation and output. To define these, it is assumed that a tagged "ground truth" (field comparison capability) is available for point clouds that flags all objects of interest to the system. Note that since this segmentation approach aims to detect all objects that should be avoided, there should be markers for obstacles that are not of interest to the detection system but should be avoided (e.g., foreign object debris, street signs, and/or garbage cans). The proposed metrics include a sub-segmentation error metric, a boundary retrieval metric, and an instance precision and retrieval metric.

Unter der Segmentierungsfehlermetrik wird gemessen, wie viel die Segmentierungsergebnisse Segmente enthalten, die Grenzen zwischen verschiedenen Objekten in der Szene kreuzen. Da ein Untersegmentierungsereignis zwei Ground-Truth-Segmente umfasst, muss diese Fehlermetrik so berechnet werden, dass sie das Ereignis nicht doppelt zählt. Die Untersegmentierungsfehlermetrik kann berechnet werden, indem jedes Segment gefunden wird, das mehr als ein Ground-Truth-Objekt schneidet und das Segment zwischen den Ground-Truth-Objekten teilt. Die Untersegmentierungsfehlermetrik wird dann als die Summe der kleineren der beiden Teilsegmente für alle diese Untersegmente definiert, gemittelt über die Anzahl der Punkte über alle Segmente. Formal wird die Untersegmentierungsfehlermetrik UE durch die folgende mathematische Gleichung (18) definiert. U E = 1 | G T | ( S G T ( P O P S 0 m i n ( | P \ S | , | S \ P | ) ) )

Figure DE112021005607T5_0028
wobei GT einen Satz von Ground-Truth-Labels darstellt und O einen Satz von berechneten Labels darstellt.The segmentation error metric measures how much the segmentation results contain segments that cross boundaries between different objects in the scene. Because a sub-segmentation event includes two ground-truth segments, this error metric must be calculated in a way that does not double-count the event. The sub-segmentation error metric can be calculated by finding each segment that intersects more than one ground truth object and splits the segment between the ground truth objects. The sub-segmentation error metric is then defined as the sum of the smaller of the two sub-segments for all those sub-segments, averaged over the number of points across all segments. Formally, the sub-segmentation error metric UE is defined by the following mathematical equation (18). u E = 1 | G T | ( S G T ( P O P S 0 m i n ( | P \ S | , | S \ P | ) ) )
Figure DE112021005607T5_0028
where GT represents a set of ground truth labels and O represents a set of computed labels.

Die Grenzabrufmetrik misst einen Grad, zu dem eine Grenze jedes Objekts durch Segmentierung wiedergewonnen wird. Eine Übersegmentierung erzeugt Grenzen, die innerhalb der Ground-Truth-Segmentierung liegen, aber den Leistungsverbesserungen des vorliegenden Ansatzes eigen sind. Diese Metrik zielt also darauf ab, zu messen, wie viele der LiDAR-Datenpunkte, die Objektgrenzen repräsentieren, durch eine gegebene Segmentierung extrahiert werden. Dies kann berechnet werden, indem die 3D-Punktwolkendaten in ein Tiefenbild projiziert werden und jeder Pixel mit einer zugeordneten Segmentmarkierung farbmarkiert wird. Somit können Grenzen durch Auffinden der Kanten im Bild berechnet werden. Der gleiche Prozess kann mit der Ausgabesegmentierung durchgeführt werden, wobei Kanten dann als echte Positive (Kanten, die in beiden Bildern vorhanden sind) und falsche Negative (Kanten, die in den Ground-Truth-Daten vorhanden sind, aber nicht in der Ausgabesegmentierung) gelabelt werden. Die Grenzabrufmetrik BR kann durch die folgende mathematische Gleichung (19) definiert werden: B R = T P T P + F N

Figure DE112021005607T5_0029
The boundary retrieval metric measures a degree to which a boundary of each object is retrieved through segmentation. Over-segmentation creates boundaries that are within ground-truth segmentation but are inherent to the performance improvements of the present approach. So, this metric aims to measure how many of the LiDAR data points representing object boundaries are extracted by a given segmentation. This can be calculated by projecting the 3D point cloud data into a depth image and color labeling each pixel with an associated segment marker. Thus, boundaries can be calculated by finding the edges in the image. The same process can be done with the output segmentation, with edges then labeled as true positives (edges that are present in both images) and false negatives (edges that are present in the ground truth data but not in the output segmentation). become. The boundary retrieval metric BR can be defined by the following mathematical equation (19): B R = T P T P + f N
Figure DE112021005607T5_0029

Ein Performancewert zum Extrahieren von Objekten von Interesse kann als Präzisions- und Abrufmetriken über Objektinstanzen berechnet werden. Für jedes Objekt in der Ground-Truth kann eine Bestimmung vorgenommen werden, ob ein Segment in der gleichen Weise mit einer Ground-Truth-Markierung assoziiert ist, wie es im Untersegmentierungsfehler durchgeführt wird. Mit dieser Information können Präzision und Abruf standardmäßig berechnet werden.A performance value for extracting objects of interest can be calculated as precision and retrieval metrics over object instances. For each object in the ground truth, a determination can be made as to whether a segment is associated with a ground truth marker in the same way as is done in the sub-segmentation error. With this information, precision and recall can be calculated by default.

Segment-Mergersegment merger

Insbesondere sind die Segmente 1512, die von dem LVS-Algorithmus 1500 ausgegeben werden, zu klein, um Kuben bzw. Quader zu schätzen. Deshalb wird ein Segment-Merger verwendet, um Segmente zu konstruieren, die groß genug für eine nachfolgende Formung vor einer (z.B. quaderförmigen) Schätzung sind. Der Segment-Merger führt Segmentzusammenführungsoperationen durch, die im Allgemeinen umfassen: Auswählen von Paaren von Segmenten; Identifizieren, welche Paare von Segmenten einen Schwerpunkt-zu-SchwerpunktAbstand aufweisen, der größer als ein Schwellenwert ist (z.B. < 3 m); Berechnen von Merkmalen für jedes Segmentpaar (wobei der Schwerpunkt-zu-SchwerpunktAbstand kleiner als der Schwellenwert (z.B. < 3 m) ist) basierend auf den Attributen der Segmente, die in dem Paar enthalten sind; Erzeugen (für jedes Segmentpaar) einer Wahrscheinlichkeit, dass die Segmente basierend auf den berechneten Merkmalen zusammengefügt werden sollten; und Zusammenführen von Segmenten basierend auf den Wahrscheinlichkeiten.In particular, the segments 1512 output from the LVS algorithm 1500 are too small to estimate cubes. Therefore, a segment merger is used to construct segments large enough for subsequent shaping prior to (e.g., cuboid) estimation. The segment merger performs segment merging operations, which generally include: selecting pairs of segments; identifying which pairs of segments have a centroid-to-centroid distance that is greater than a threshold (e.g., <3m); computing features for each pair of segments (where the centroid-to-centroid distance is less than the threshold (e.g., <3m)) based on the attributes of the segments included in the pair; generating (for each pair of segments) a probability that the segments should be merged based on the computed features; and merging segments based on the probabilities.

Es wird nun auf 17 Bezug genommen, in der eine Darstellung eines veranschaulichenden Segmentmergers 1700 vorgesehen ist. Die Segmente 1512 können in den Segmentmerger 1700 eingegeben werden. Die Segmente 1512 können optional in 1706 vorverarbeitet werden. Vor-Verarbeitungsoperationen sind im Stand der Technik wohlbekannt. Die Vorverarbeitung kann das Auswählen von Paaren von Segmenten, das Erhalten von Schwerpunkten für die Segmente, das Bestimmen von Schwerpunkt-zu-Schwerpunkt-Abständen für jedes Paar von Segmenten, das Identifizieren, welche Paare von Segmenten einen Schwerpunkt-zu-Schwerpunkt-Abstand aufweisen, der größer als ein Schwellenwert (z.B. 3 m) ist, und das Entfernen der identifizierten Paare von Segmenten aus einer weiteren Betrachtung für Segmentzusammenführungszwecke beinhalten. In einigen Szenarien sind die Schwellenwerte als eine Summe eines Radius des ersten Segments von dem Schwerpunkt und eines Radius des zweiten Segments vom Schwerpunkt plus einer vordefinierten Konstante (z.B. 0,5 m) definiert.It will now open 17 Reference is made wherein an illustration of an illustrative segment merger 1700 is provided. The segments 1512 can be input into the segment merger 1700 . The segments 1512 can optionally be pre-processed in 1706 . Pre-processing operations are well known in the art. The pre-processing may include selecting pairs of segments, obtaining centroids for the segments, determining centroid-to-centroid distances for each pair of segments, identifying which pairs of segments have centroid-to-centroid distances that is greater than a threshold (eg, 3m) and removing the identified pairs of segments from further consideration for segment merging purposes. In some scenarios, the thresholds are defined as a sum of a first segment radius from the centroid and a second segment radius from the centroid plus a predefined constant (eg, 0.5 m).

Die verbleibenden Segmente werden einem Attributgenerator 1708 und einem Graphenkonstruktor 1710 zugeführt. Am Attributgenerator 1608 kann ein Satz von Attributen für jedes Segment erhalten und/oder erzeugt werden. Ein Satz von Attributen kann umfassen, ist aber nicht beschränkt auf: (i) eine 2D-Region, die die LiDAR-Datenpunkte in der Segmentabdeckung zeigt; (ii) einen Durchschnitt der Wahrscheinlichkeitsverteilungen, die in 920 von 9 für die LiDAR Datenpunkte berechnet wurden, die in dem Segment enthalten sind; (iii) einen Prozentsatz von LiDAR. Datenpunkte, die in dem Segment enthalten sind, die auf einer Straße liegen; (iv) einen Prozentsatz von LiDAR-Datenpunkten, die in dem Segment enthalten sind, die abseits einer Straße sind; und/oder (v) eine Gesamtanzahl von Fahrspuren, die ein Segment zumindest teilweise überlappt. Die Attribute (i), (iii), (iv) und (v) können unter Verwendung einer Straßenkarte, einer Fahrspurkarte und/oder einer anderen Karte bestimmt werden. Zum Beispiel wird das Attribut (i) bestimmt, indem ein Bereich auf der Karte identifiziert wird, wo sich das Segment befindet. Die Attribute (ii) und (iii) werden bestimmt durch Identifizieren, welche LiDAR-Datenpunkte in einem Segment auf einer Straße liegen, die in der Karte enthalten ist, und Identifizieren, welche LiDAR-Datenpunkte in einem Segment sich nicht auf einer Straße („off-road“) befinden, die in der Karte enthalten ist. Das Attribut (iv) wird bestimmt durch Identifizieren, welche Spuren in einer Karte die LiDAR-Datenpunkte der Segmentabdeckung abbilden, und Zählen der Anzahl der identifizierten Spuren.The remaining segments are fed to an attribute generator 1708 and a graph constructor 1710 . At attribute generator 1608, a set of attributes may be obtained and/or generated for each segment. A set of attributes may include, but is not limited to: (i) a 2D region showing the LiDAR data points in segment coverage; (ii) an average of the probability distributions obtained in 920 from 9 for which LiDAR data points included in the segment were calculated; (iii) a percentage of LiDAR. data points included in the segment that lie on a road; (iv) a percentage of LiDAR data points included in the segment that are off-road; and/or (v) a total number of lanes that a segment at least partially overlaps. Attributes (i), (iii), (iv) and (v) can be determined using a road map, lane map and/or other map. For example, attribute (i) is determined by identifying an area on the map where the segment is located. Attributes (ii) and (iii) are determined by identifying which LiDAR data points in a segment are on a road contained in the map and identifying which LiDAR data points in a segment are not on a road (“ off-road") included in the map. Attribute (iv) is determined by identifying which lanes in a map depict the segment coverage LiDAR data points and counting the number of lanes identified.

Am Graphen-Konstruktor 1710 ist ein Graph konstruiert, in dem die Segmente aufgetragen sind. Verbindungen werden dem Graphen für Paare von in der Nähe befindlichen Segmenten (unter Berücksichtigung der Größe jedes Segments) hinzugefügt. Diese Verbindungen definieren Paare von Segmenten, für die Merkmale durch den Merkmalsgenerator 1712 erzeugt werden sollten.At the graph constructor 1710, a graph is constructed in which the segments are plotted. Links are added to the graph for pairs of nearby segments (taking into account the size of each segment). These connections define pairs of segments for which features should be generated by feature generator 1712.

In einigen Szenarien beschreibt jeder Satz von Merkmalen eine Paarung von zwei Segmenten. Die Merkmale können unter Verwendung der durch den Attributgenerator 1708 erzeugten Attribute erzeugt werden. Die Merkmale können umfassen, sind aber nicht darauf beschränkt:

  • • Differenz zwischen einem Durchschnitt einer Wahrscheinlichkeitsverteilung, die in 920 von 9 für ein erstes Segment berechnet wurde, und einem Durchschnitt von Wahrscheinlichkeitsverteilungen, die in 920 von 9 für ein zweites Segment berechnet wurde;
  • • Differenz in Straßenverhältnissen oder Differenz in einem Prozentsatz von LiDAR-Datenpunkten, die in einem ersten Segment enthalten sind, das sich auf einer Straße befindet, und einem Prozentsatz von LiDAR-Datenpunkten, die in einem zweiten Segment enthalten sind, das sich auf einer Straße befindet;
  • • Differenz in Geländeverhältnissen (z.B. Differenz in einem Prozentsatz von LiDAR-Datenpunkten, die in einem ersten Segment enthalten sind, das abseits einer Straße (off-road) ist, und einem Prozentsatz von LiDAR-Datenpunkten, die in einem zweiten Segment enthalten sind, die abseits von einer Straße (off-road) sind);
  • • Bereichskompatibilität (z.B. einen Überlappungsgrad zwischen den 2D-Spuren, die durch erste und zweite Segmente bedeckt sind);
  • • Fahrspurkompatibilität (z.B. einen Überlappungsgrad zwischen den Spuren, in denen sich das erste und das zweite Segment befinden) (z.B., wenn die Sätze von Spuren überlappen, dann kompatibel. Wenn sich keines der Segmente in beliebigen Spuren befindet, gibt es keine Information. Wenn die Sätze von Spuren nicht überlappen, dann nicht kompatibel);
  • • Differenz zwischen der Gesamtanzahl von Fahrspuren, die ein erstes Segment zumindest teilweise überlappt, und der Gesamtanzahl von Fahrspuren, die ein zweites Segment zumindest teilweise überlappt;
  • • einem nächsten Abstand zwischen konvexen Hüllen (oder Punkten);
  • • einen Hausdorff-Abstand zwischen konvexen Hüllen (oder Punkten);
  • • ob sich die konvexen Hüllen schneiden;
  • • eine Differenz oder ein Abstand in der Höhe zwischen Segmenten (z.B. ist dann, wenn sich ein Höhenintervall für jedes Segment schneidet, dieser Abstand Null. Ansonsten ist dies der Abstand zwischen einer minimalen Höhe eines höheren Segments und einer maximalen Höhe eines unteren Segments),
  • • Maskenkompatibilität, die durch mathematische Gleichung definiert ist:
    • c D d D w 1 c d * w 2 c d c C n p 1 c * n p 2 c ,
      Figure DE112021005607T5_0030
      wobei C einen Satz von Kameras, D einen Satz von Kameras darstellt, w1cd summierte Wahrscheinlichkeiten von Punkten in Segment 1 darstellen, die mit der Bilderfassung d in der Kamera c zusammenpassen, und np1c stellt eine Gesamtanzahl von Punkten in Segment 1 dar, die in die Kamera c projiziert werden. Dies führt zu einer Zahl zwischen 0 und 1 (weil c C d D w 1 c d < n p 1 c
      Figure DE112021005607T5_0031
      für jedes Segment). Dies gewichtet den Beitrag jeder Kamera durch die Anzahl der in sie projizierten oder hineinragenden Punkte;
  • • dominante Maskenkompatibilität (wenn Segmente eine gleiche dominante Maske in einer beliebigen Kamera aufweisen, dann kompatibel. Wenn Segmente unterschiedliche dominante Masken in einer beliebigen Kamera aufweisen, dann inkompatibel. Wenn es ein „Unentschieden“ gibt, wird die Kompatibilität als (Segment-1-Punkte, die zu der Segment-1-dominierenden Maske projizieren) * (Segment-2-Punkte, die zu der Segment-2-dominierenden Maske projizieren) bestimmt);
  • • Differenz der Objekttypverteilungen (z.B. „Earth-Mover's Distance“, „EMD“);
  • • durchschnittlicher Bereich von zwei Segmenten (Kontextmerkmal);
  • • eine kleinere wahrscheinlichste Objektgröße;
  • • gemeinsam genutzter wahrscheinlichster Objekttyp (z.B., wenn der wahrscheinlichste Objekttyp jedes Segments gleich ist, dann ist es dieser Objekttyp);
  • • Objekttyp-Kompatibilität (z.B., wenn eine Kreuzung in den Typen vorhanden ist, zu der jeder Bestandteilspunkt hinzeigt, dann kompatibel);
  • • dominante Objekttyp-Kompatibilität (z.B., wenn es einen dominanten Objekttyp gibt (die meisten Punkte ragen zu einer Maske, die von einem Typ ist), und dieser dominante Typ ist für beide Segmente gleich, dann kompatibel);
  • • Differenz zwischen flächenbezogenen Merkmalen (z.B. Differenz zwischen einem Verhältnis von [Summe von Bereichen von Segment-konvexen Hüllen] zu [Fläche von zusammengeführten Segment-konvexen Hüllen] für zwei Segmente); und
  • • Differenz von Farbhistogramm.
In some scenarios, each set of features describes a pairing of two segments. The features can be generated using the attributes generated by attribute generator 1708 . Features may include, but are not limited to:
  • • Difference between an average of a probability distribution obtained in 920 from 9 for a first segment, and an average of probability distributions calculated in 920 from 9 calculated for a second segment;
  • • Difference in road conditions, or difference in a percentage of LiDAR data points contained in a first segment that is on a road and a percentage of LiDAR data points that are contained in a second segment that is on a road located;
  • • difference in terrain conditions (e.g. difference in a percentage of LiDAR data points contained in a first segment that is off-road and a percentage of LiDAR data points contained in a second segment, that are off-road);
  • • area compatibility (eg, a degree of overlap between the 2D tracks covered by first and second segments);
  • • Lane compatibility (eg a degree of overlap between the lanes in which the first and second segments are located) (eg if the sets of lanes overlap then compatible. If none of the segments are in any lanes then there is no information. If the sets of tracks do not overlap, then incompatible);
  • • Difference between the total number of lanes at least partially overlapping a first segment and the total number of lanes at least partially overlapping a second segment;
  • • a nearest distance between convex hulls (or points);
  • • a Hausdorff distance between convex hulls (or points);
  • • whether the convex hulls intersect;
  • • a difference or distance in height between segments (e.g. if a height interval for each segment intersects, then this distance is zero. Otherwise, this is the distance between a minimum height of a higher segment and a maximum height of a lower segment),
  • • Mask compatibility defined by mathematical equation:
    • c D i.e D w 1 c i.e * w 2 c i.e c C n p 1 c * n p 2 c ,
      Figure DE112021005607T5_0030
      where C represents a set of cameras, D represents a set of cameras, w 1cd represent summed probabilities of points in segment 1 that match image capture d in camera c, and np 1c represents a total number of points in segment 1 that be projected into the camera c. This results in a number between 0 and 1 (because c C i.e D w 1 c i.e < n p 1 c
      Figure DE112021005607T5_0031
      for each segment). This weights each camera's contribution by the number of points projected or projected into it;
  • • dominant mask compatibility (if segments share same dominant mask in any camera then compatible. If segments share different dominant mask in any camera then incompatible. If there is a “tie” then compatibility is reported as (segment-1- points projecting to segment 1 dominant mask) * (segment 2 points projecting to segment 2 dominant mask) determined);
  • • Difference in object type distributions (eg "Earth-Mover's Distance", "EMD");
  • • average area of two segments (contextual feature);
  • • a smaller most likely object size;
  • • shared most likely object type (eg, if each segment's most likely object type is the same, then it is that object type);
  • • object type compatibility (eg, if there is a crossing in the types to which each constituent point points, then compatible);
  • • dominant object type compatibility (eg, if there is a dominant object type (most points protrude to a mask that is of one type) and that dominant type is the same for both segments, then compatible);
  • • difference between area-related features (eg, difference between a ratio of [sum of areas of segment convex hulls] to [area of merged segment convex hulls] for two segments); and
  • • Difference of color histogram.

Die Merkmale werden dann von dem Merkmalsgenerator 1712 zu dem maschinell gelernten Klassifikator 1714 geleitet. Der maschinell gelernte Klassifikator 1714 analysiert jeden Satz von Merkmalen, um eine Wahrscheinlichkeit zu bestimmen, dass die entsprechenden Segmente zusammengeführt werden sollten. Beispielsweise wird eine niedrige Wahrscheinlichkeit für das Zusammenführen zweier Segmente bestimmt, wenn (1) eine Differenz zwischen Wahrscheinlichkeitsverteilungsmittelwerten einen Schwellenwert überschreitet und (2) eine Fahrspurunverträglichkeit existiert. Im Gegensatz dazu besteht eine hohe Wahrscheinlichkeit, wenn (1) eine Differenz zwischen Wahrscheinlichkeitsverteilungen-Mittelwerten kleiner als ein Schwellenwert ist und (2) eine Fahrspurkompatibilität existiert. Die vorliegende Lösung ist diesbezüglich nicht beschränkt. Die Wahrscheinlichkeiten könnten einem numerischen Wert (z.B. 0 - 10) zusätzlich zu oder alternativ zu einem Pegel (z.B. niedrig, mittel oder hoch) zugewiesen werden. Der Grad oder Grad der Wahrscheinlichkeit kann durch eine beliebige Kombination von Merkmalen bestimmt werden, die gemäß einer gegebenen Anwendung ausgewählt werden.The features are then passed from the feature generator 1712 to the machine learned classifier 1714 . The machine learned classifier 1714 analyzes each set of features to determine a probability that the corresponding segments should be merged. For example, a low probability of merging two segments is determined when (1) a difference between probability distribution means exceeds a threshold and (2) lane mismatch exists. In contrast, there is a high probability when (1) a difference between probability distribution means is less than a threshold and (2) lane compatibility exists. The present solution is not limited in this regard. The probabilities could be assigned a numeric value (e.g., 0-10) in addition to or as an alternative to a level (e.g., low, medium, or high). The degree or level of likelihood can be determined by any combination of features selected according to a given application.

Der maschinell gelernte Klassifikator 1714 wird unter Verwendung eines maschinellen Lernalgorithmus trainiert, der lernt, wenn zwei Segmente im Hinblick auf ein oder mehrere Merkmale zusammengeführt werden sollten. Jeder Maschinenlernalgorithmus kann hierin ohne Einschränkung verwendet werden. Zum Beispiel wird hier ein oder mehrere der folgenden maschinellen Lernalgorithmen verwendet: überwachtes Lernen; unüberwachtes Lernen; halbüberwachtes Lernen; und Verstärkungslernen. Die erlernten Informationen durch den maschinellen Lernalgorithmus können verwendet werden, um Regeln zum Bestimmen einer Wahrscheinlichkeit zu erzeugen, dass zwei Segmente zusammengeführt werden sollten. Diese Regeln werden dann durch den maschinell gelernten Klassifikator 1714 implementiert.The machine learned classifier 1714 is trained using a machine learning algorithm that learns when two segments should be merged in terms of one or more features. Any machine learning algorithm can be used herein without limitation. For example, one or more of the following machine learning algorithms are used here: supervised learning; unsupervised learning; semi-supervised learning; and reinforcement learning. The information learned by the machine learning algorithm can be used to generate rules for determining a probability that two segments should be merged. These rules are then implemented by the machine learned classifier 1714.

Die Zusammenführungswahrscheinlichkeiten werden dann durch den maschinell erlernten Klassifikator 1714 analysiert, um die Paare von Segmenten als Zusammenführungspaare oder Nicht-Zusammenführungspaare zu klassifizieren. Beispielsweise wird ein Paar von Segmenten als Zusammenführungspaar klassifiziert, wenn die jeweilige Zusammenführungs- oder Merge-Wahrscheinlichkeit einen hohen Pegel aufweist oder einen numerischen Wert aufweist, der größer als ein Schwellenwert ist. Im Gegensatz dazu wird ein Paar von Segmenten als ein Nicht-Zusammenführungspaar klassifiziert, wenn die jeweilige Zusammenführungswahrscheinlichkeit einen niedrigen Pegel aufweist oder einen numerischen Wert aufweist, der kleiner als ein Schwellenwert ist. Die vorliegende Lösung ist nicht auf die Einzelheiten dieses Beispiels beschränkt.The merge probabilities are then analyzed by the machine learned classifier 1714 to classify the pairs of segments as merge pairs or non-merge pairs. For example, a pair of segments is classified as a merge pair if the respective merge probability is at a high level or has a numeric value greater than a threshold. In contrast, a pair of segments is classified as a non-merge pair if the respective merge probability is at a low level or has a numeric value less than a threshold. The present solution is not limited to the details of this example.

Die Klassifikationen werden dann an den Merger 1716 weitergegeben. Der Merger 1716 führt die Segmente gemäß den Klassifikationen zusammen. Beispielsweise werden Segmente in jedem Zusammenführungspaar zusammengeführt. Insbesondere werden redundante Verbindungen nicht für Segmentzusammenführungszwecke ausgewertet. Sollte beispielsweise das Segment A mit Segment B zusammenzuführen sein („merge“) und das Segment B mit dem Segment C zusammenzuführen sein, dann evaluiert der Segmentmerger 1716 nicht ein Zusammenführung des Segments A mit dem Segment C. Die vorliegende Lösung ist nicht auf die Einzelheiten dieses Beispiels beschränkt.The classifications are then passed on to the 1716 merger. The merger 1716 merges the segments according to the classifications. For example, segments are merged in each merge pair. In particular, redundant connections are not evaluated for segment merging purposes. For example, if segment A is to be merged into segment B and segment B is to be merged into segment C, then segment merger 1716 does not evaluate merging segment A into segment C. The present solution does not go into detail limited to this example.

Es sollte beachtet werden, dass ein Problem, das schwierig mit einer paarweisen Zusammenführungsperspektive zu behandeln ist, die Behandlung von Fragmenten von größeren Fahrzeugen ist. Zum Beispiel kann ein Großraumlastwagen als mehrere Fragmente beobachtet werden, die weit auseinander liegen Aufgrund der Projektionsunsicherheit ragen diese Fragmente oft nicht in die gleiche Bilderfassungsmaske wie die Rückseite des Lastkraftwagens, und es gibt nicht genügend Kontext, damit der Merger diese Fragmente auf der Grundlage der Zusammenführungswahrscheinlichkeiten kombiniert. Daher führt der Merger 1716 zusätzliche Operationen durch, um jedes große detektierte Segment, das als Fahrzeug (z.B. eine Rückseite des Lastwagens) erfasst wird, zu einem Formmodell (z.B. einem Quader) zu passen, um die wahre Ausdehnung des detektierten Objekts zu schätzen. Der Bounding-Box-Schätzer kann Bodenhöhen- und Spurinformationen von Bord-HD-Karte und visuellem Kurs aus der Bilderfassung verwenden. Der geschätzte Quader weist nun genügend Informationen auf, um Fragmente basierend auf ihrem Überlappungsbereich mit dem geschätzten Quader zusammenzufügen. Ein weiteres Beispiel, bei dem Quader nützlich eingesetzt werden können, ist die Unterstützung der Segmentierung bei Bussen. Die großen Fensterbereiche ermöglichen es dem Laserlicht, in die inneren Abschnitte des Busses vorzudringen und diese abzutasten, was zu mehreren Fragmenten führt, die weit weg von der L-Form des Busses sind. Nach Abschluss der Zusammenführungsoperationen gibt der Merger 1716 eine Vielzahl von zusammengeführten Segmenten 1714 ausIt should be noted that one problem that is difficult to handle with a pairwise merge perspective is the handling of fragments from larger vehicles. For example, a heavy-duty truck can be observed as multiple fragments that are widely spaced. Due to projection uncertainty, these fragments often do not protrude into the same image capture mask as the back of the truck, and there is insufficient context to allow the merger of these fragments based on the merging probabilities combined. Therefore, the merger 1716 performs additional operations to fit each large detected segment detected as a vehicle (e.g., a back of the truck) to a shape model (e.g., a box) to estimate the true extent of the detected object. The bounding box estimator can use ground level and track information from onboard HD map and visual heading from image acquisition. The estimated box now has enough information to stitch fragments together based on their area of overlap with the estimated box. Another example where boxes can be useful is to support segmentation in buses. The large window areas allow the laser light to penetrate and scan the interior sections of the bus, resulting in multiple fragments that are far from the L-shape of the bus. Upon completion of the merge operations, the merger 1716 outputs a plurality of merged segments 1714

ObjektdetektionssegmentfilterungObject detection segment filtering

Nicht alle detektierten Segmente von LiDAR-Datenpunkten sind für das AV relevant, und viele der Segmente entsprechen Störobjekten („Clutter“) von der Straße (z.B. Gebäude, Masten und/oder Abfalldosen). Die Bilddetektionen werden verwendet, um relevante Objekte von der Straße zu finden. Da „Off-Road“ nur bewegte Akteure von Interesse sind, können statische Objekte verworfen werden, um den Rest der CLF-Objektdetektionspipeline zu verbessern und die Rechenanforderungen des CLF-Objekterkennungsalgorithmus zu reduzieren.Not all detected segments of LiDAR data points are relevant for the AV, and many of the segments correspond to clutter from the road (e.g. buildings, poles and/or garbage cans). The image detections are used to find relevant objects from the road. Since "off-road" is only interested in moving actors, static objects can be discarded to improve the rest of the CLF object detection pipeline and reduce the computational requirements of the CLF object detection algorithm.

Aufgrund der Markierungsübertragungsprobleme gibt es mehrere Segmente von LiDAR-Datenpunkten innerhalb des Kegelstumpfs, die der Bilddetektionsmaske entsprechen. In dieser Sammlung können 0 oder 1 wahre positive Segmente und in dieser Sammlung 0 bis N falsch positive Segmente vorhanden sein. Das Lösen dieses Zuordnungsproblems ist ein primärer Zweck des CLF-Segmentfilters.Because of the marker transfer issues, there are multiple segments of LiDAR data points within the frustum that correspond to the image detection mask. There can be 0 or 1 true positive segments in this collection and 0 to N false positive segments in this collection. Solving this mapping problem is a primary purpose of the CLF segment filter.

Ein Beispiel ist eine Fahrzeugdetektion mit einem Pfahl vor und auch einem Fußgänger dahinter. LiDAR-Datenpunkte, die zu dem wahren Fußgängerobjekt und dem Polobjekt gehören, werden aufgrund von Projektionsfehlern, die während der Sensorfusionsstufe auftreten, Punkte aufweisen, die als Fahrzeuge bezeichnet werden. Um die Mehrdeutigkeit der Bilderfassungsmaske in der Segmentzuordnung aufzulösen, werden Projektionscharakteristiken für alle Segmente berechnet, die LiDAR-Datenpunkte enthalten, die in eine bestimmte Bilderfassungsmaske hineinragen. Es werden eine oder mehrere beste Übereinstimmungen berichtet, die wahrscheinlich dem auf dem Bild erfassten Objekt entsprechen. Dies hilft dabei, Störobjekte aus dem Satz von verfolgten Objekten zu eliminieren und die Verfolgung der Pipeline-Latenz und der Rechenanforderungen zu reduzieren.An example is vehicle detection with a pole in front and also a pedestrian behind. LiDAR data points associated with the true pedestrian object and the pole object will have points called vehicles due to projection errors that occur during the sensor fusion stage. To resolve the image capture mask ambiguity in the segment mapping, projection characteristics are computed for all segments containing LiDAR data points that protrude into a specific image capture mask. One or more best matches are reported that are likely to correspond to the object captured in the image. This helps eliminate spurious objects from the set of objects being tracked and reduces tracking pipeline latency and computational requirements.

Unter Bezugnahme auf 18 wird ein Flussdiagramm eines veranschaulichenden Verfahrens 1800 zur Objektdetektionssegmentfilterung bereitgestellt. Eine Eingabe in ein Segmentfilter ist eine Sammlung von Kandidatensegmenten, die in früheren Stufen der Pipeline gebildet werden, wobei jeder Kandidat dem realen Objekt entspricht oder nicht. Für jedes Segment würde es zwei Sätze von Punkten geben, die das Segment bilden. P-Punkte, die in die Bilderfassungsmaske hineinragen. N-Punkte, die nicht in die Bilderfassungsmaske hineinragen, sondern in unmittelbarer Nähe zu dem Segment. Die Intuition hinter dem Hinzufügen von nahegelegenen Punkten, gefolgt von der geometrischen Segmentierung, besteht darin, dass die projizierten Punkte eines falschen Clusters (wie einer Wand oder eines Baums) viele N-Punkte innerhalb eines engen Abstands zu P-Punkten aufweisen, was zu einem einzelnen Cluster führt, der beide Punktkategorien enthält. Der resultierende falsche Cluster enthält eine relativ kleine Anzahl von P-Punkten im Vergleich zu der Gesamtanzahl von Punkten in dem Cluster. Ein wahrer Cluster wird jedoch meist aus P-Punkten mit einer relativ kleinen Anzahl von N-Punkten bestehen. Somit wird ein Cluster-Merkmal U benötigt, um echte Segmente von LiDAR-Datenpunkten von falschen Segmenten von LiDAR-Datenpunkten zu unterscheiden. Das Clustermerkmal U wird durch die folgende mathematische Gleichung (20) definiert: U = count ( P ) / ( count ( N ) + count ( P ) )

Figure DE112021005607T5_0032
wobei P eine Anzahl von projizierten Punkten in einem Cluster darstellt, und N eine Anzahl von Punkten in engem Abstand zu den Punkten P darstellt. Manchmal, wenn das Clustermerkmal U allein verwendet wird, können Fälle auftreten, wenn sie nicht ausreichend sind, um wahre Segmente zu identifizieren, zum Beispiel kann ein größeres wahres Objekt (z.B. ein Fahrzeug) durch ein kleineres Falschobjekt (z.B. einen Pfahl) verdeckt werden. In diesem Fall kann ein kleineres falsches Objekt vollständig aus P-Punkten bestehen, während ein Fahrzeugcluster eine Mischung von P-Punkten und N-Punkten aufweist. Um solche Fälle zu unterstützen, wird ein weiteres Cluster-Merkmal V benötigt und in Verbindung mit dem Cluster-Merkmal U verwendet, um zu verifizieren, dass das Segment korrekt mit einer gegebenen Objektdetektion assoziiert ist. Das Clustermerkmal V ist durch die folgende mathematische Gleichung (21) definiert: V = count ( P ) /count ( D )
Figure DE112021005607T5_0033
wobei D eine Gesamtanzahl von Punkten darstellt, die in eine bestimmte Bilderfassungsmaske m (z.B. Maske 1200 von 12) hineinragen. Die D-Punkte werden üblicherweise über mehrere Objekte in der Welt verteilt.With reference to 18 A flow diagram of an illustrative method 1800 for object detection segment filtering is provided. An input to a segment filter is a collection of candidate segments formed in earlier stages of the pipeline, where each candidate may or may not correspond to the real object. For each segment there would be two sets of points making up the segment. P-dots protruding into the image capture mask. N points that do not protrude into the image capture mask but are in close proximity to the segment. The intuition behind adding nearby points, followed by geometric segmentation, is that the projected points of a false cluster (like a wall or tree) will have many N points within close range of P points, resulting in a single cluster containing both categories of points. The resulting false cluster contains a relatively small number of P-points compared to the total number of points in the cluster. However, a true cluster will mostly consist of P-points with a relatively small number of N-points. Thus, a cluster feature U is needed to distinguish real segments of LiDAR data points from false segments of LiDAR data points. The cluster feature U is defined by the following mathematical equation (20): u = count ( P ) / ( count ( N ) + count ( P ) )
Figure DE112021005607T5_0032
where P represents a number of projected points in a cluster, and N represents a number of points closely spaced from the P points. Sometimes when the cluster feature U is used alone, cases may arise when they are not sufficient to identify true segments, for example a larger true object (e.g. a vehicle) may be occluded by a smaller false object (e.g. a pole). In this case, a smaller false object may consist entirely of P-dots, while a vehicle cluster will have a mixture of P-dots and N-dots. To support such cases, another cluster feature V is needed and used in conjunction with the cluster feature U to verify that the segment is correctly associated with a given object detection. The cluster feature V is defined by the following mathematical equation (21): V = count ( P ) /count ( D )
Figure DE112021005607T5_0033
where D represents a total number of points that fit into a particular image acquisition mask m (e.g. mask 1200 of 12 ) protrude. The D-points are usually distributed over several objects in the world.

Es gibt andere Cluster-Merkmale, die verwendet werden können, um Segmente von LiDAR-Datenpunkten zu identifizieren, die einem Fußgänger, einem Fahrzeug, einem Radfahrer und/oder einem beliebigen anderen sich bewegenden Objekt zugeordnet sind. Diese zusätzlichen Cluster-Merkmale umfassen ein Cluster-Merkmal H, das eine Clusterhöhe darstellt, ein Cluster-Merkmal L, das eine Clusterlänge darstellt, und ein Cluster-Merkmal LTW, das ein Längen-zu-Breiten-Verhältnis für ein Cluster darstellt.There are other cluster features that can be used to identify segments of LiDAR data points that are associated with a pedestrian, vehicle, cyclist, and/or any other moving object. These additional cluster features include a Cluster feature H representing cluster height, cluster feature L representing cluster length, and cluster feature LTW representing length-to-width ratio for a cluster.

Cluster mit einer Höhe über 2,0 - 2,5 Meter sind unwahrscheinlich mit Fußgängern assoziiert. Cluster über 1 Meter Länge sind unwahrscheinlich mit Fußgängern assoziiert. Cluster mit einem Längen-zu-Breiten-Verhältnis über 4,0 neigen häufig dazu, mit Gebäuden verbunden zu sein und sind unwahrscheinlich mit Fußgängern verbunden. Cluster mit hoher Zylinderfaltungsbewertung sind wahrscheinlich mit Fußgängern assoziiert.Clusters taller than 2.0-2.5 meters are unlikely to be associated with pedestrians. Clusters longer than 1 meter are unlikely to be associated with pedestrians. Clusters with an aspect ratio above 4.0 often tend to be associated with buildings and are unlikely to be associated with pedestrians. Clusters with high cylinder fold scores are likely associated with pedestrians.

Dementsprechend beginnt das Verfahren 1800 mit 1804, wo verschiedene Informationen für eine gegebene Bilderfassungsmaske m (z.B. die Maske 1200 von 12) erhalten werden (z.B. aus dem Speicher 412 aus 4). Diese Information umfasst, ohne darauf beschränkt zu sein, Pm, das eine Anzahl von Punkten eines LiDAR-Datensatzes darstellt, die in die Maske m hineinragen, wobei Si eine Anzahl von Punkten darstellt, die ein gegebenes zusammengeführtes Segment s von LiDAR-Datenpunkten (z.B. das zusammengesetzte Segment 1714 von 17); Ps m repräsentierend eine Anzahl von Punkten in dem gegebenen zusammengeführten Segment s, die in die Maske m hineinragen, eine Höhe hs eines zusammengeführten Segments, eine Länge Is des zusammengeführten Segments und/oder eine Breite ws des zusammengeführten Segments. Diese Information wird in 1806-1810 zum Bestimmen eines oder mehrerer Cluster-Merkmale U, V, H, L und/oder LTW benutzt. Das Cluster-Merkmal U kann gemäß der folgenden mathematischen Gleichung (22) bestimmt werden, und das Cluster-Merkmal V kann gemäß der folgenden mathematischen Gleichung (23) bestimmt werden: U = P s m / S i

Figure DE112021005607T5_0034
V = P s m / P m
Figure DE112021005607T5_0035
Accordingly, the method 1800 begins with 1804, where various information for a given image acquisition mask m (e.g. the mask 1200 of 12 ) can be obtained (e.g. from memory 412 from 4 ). This information includes, but is not limited to, P m , which represents a number of points of a LiDAR data set that intrude into the mask m, where Si represents a number of points that make up a given merged segment s of LiDAR data points (e.g. the composite segment 1714 from 17 ); P s m representing a number of points in the given merged segment s that protrude into the mask m, a merged segment height h s , a merged segment length I s , and/or a merged segment width w s . This information is used in 1806-1810 to determine one or more cluster features U, V, H, L and/or LTW. The cluster feature U can be determined according to the following mathematical equation (22), and the cluster feature V can be determined according to the following mathematical equation (23): u = P s m / S i
Figure DE112021005607T5_0034
V = P s m / P m
Figure DE112021005607T5_0035

Das Cluster-Merkmal H ist gleich hs gesetzt. Das Cluster-Merkmal L ist gleich Is gesetzt. Das Clustermerkmal LTW kann durch die folgende mathematische Gleichung (24) bestimmt werden: L T W = I s / w s

Figure DE112021005607T5_0036
The cluster feature H is set equal to h s . The cluster feature L is set equal to I s . The cluster feature LTW can be determined by the following mathematical equation (24): L T W = I s / w s
Figure DE112021005607T5_0036

In 1812 wird ein Projektionswert PS basierend auf den Clustermerkmalen U, V, H, L und/oder LTW berechnet. Der Projektionswert kann durch die folgende mathematische Gleichung (25) definiert werden: P S = U * V * H * L * L T W

Figure DE112021005607T5_0037
Insbesondere ist die vorliegende Lösung nicht auf die mathematische Gleichung (25) beschränkt. Der Projektionswert kann das Produkt einer beliebigen Kombination von Clustermerkmalen darstellen.In 1812, a projection value PS is calculated based on the cluster features U, V, H, L and/or LTW. The projection value can be defined by the following mathematical equation (25): P S = u * V * H * L * L T W
Figure DE112021005607T5_0037
In particular, the present solution is not limited to the mathematical equation (25). The projection value can be the product of any combination of cluster features.

Als nächstes wird in 1814 der Projektionswert verwendet, um zu verifizieren, dass das zusammengeführte Segment Teil des detektierten Objekts ist, das einer gegebenen Bilddetektionsmaske zugeordnet ist. Eine solche Verifikation kann vorgenommen werden, wenn der Projektionswert größer als ein Schwellenwert ist. Eine Objekterkennung kann in 1816 vorgenommen werden, wenn eine solche Verifizierung vorgenommen wird. In einigen Szenarien wird die Objektdetektion basierend auf den Ergebnissen von Operationen 1804-1814 für zwei oder mehr zusammengeführte Segmente durchgeführt, die der gleichen Bilddetektionsmaske zugeordnet sind. Beispielsweise wird eine Objekterkennung durchgeführt, dass ein gegebenes zusammengeführtes Segment einer Vielzahl von zusammengeführten Segmenten einem gegebenen detektierten Objekt zugeordnet ist, wenn der für das gegebene zusammengeführte Segment berechnete PS größer als die Projektionswerte PS ist, die für die anderen zusammengeführten Segmente der Vielzahl von zusammengeführten Segmenten berechnet wurden. Anschließend wird Schritt 1818 durchgeführt, wo das Verfahren 1800 endet oder eine andere Verarbeitung durchgeführt wird.Next, in 1814, the projection value is used to verify that the merged segment is part of the detected object associated with a given image detection mask. Such verification can be done when the projection value is greater than a threshold. Object detection can be performed in 1816 when such verification is performed. In some scenarios, object detection is performed based on the results of operations 1804-1814 for two or more merged segments associated with the same image detection mask. For example, object recognition is performed that a given merged segment of a plurality of merged segments is associated with a given detected object if the PS calculated for the given merged segment is greater than the projection values PS calculated for the other merged segments of the plurality of merged segments were calculated. Step 1818 is then performed where method 1800 ends or other processing is performed.

Obwohl die vorliegende Lösung in Bezug auf eine oder mehrere Implementierungen veranschaulicht und beschrieben wurde, werden dem Fachmann beim Lesen und Verstehen dieser Beschreibung und den beigefügten Zeichnungen äquivalente Änderungen und Modifikationen auftreten. Obwohl ein bestimmtes Merkmal der vorliegenden Lösung in Bezug auf nur eine von mehreren Implementierungen offenbart worden sein kann, kann dieses Merkmal mit einem oder mehreren anderen Merkmalen der anderen Implementierungen kombiniert werden, wie es für eine gegebene oder bestimmte Anwendung erwünscht und vorteilhaft sein kann. Somit sollte die Breite und der Umfang der vorliegenden Lösung nicht durch irgendeine der oben beschriebenen Ausführungsformen eingeschränkt werden. Vielmehr sollte der Umfang der vorliegenden Lösung gemäß den folgenden Ansprüchen und ihren Äquivalenten definiert werden.Although the present solution has been illustrated and described with respect to one or more implementations, equivalent changes and modifications will occur to those skilled in the art upon reading and understanding this specification and the accompanying drawings. Although a particular feature of the present solution may have been disclosed with respect to only one of several implementations, that feature may be combined with one or more other features of the other implementations as may be desirable and advantageous for a given or particular application. Thus, the breadth and scope of the present solution should not be constrained by any of the above described embodiments are limited. Rather, the scope of the present solution should be defined in accordance with the following claims and their equivalents.

ZITATE ENTHALTEN IN DER BESCHREIBUNGQUOTES INCLUDED IN DESCRIPTION

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.This list of documents cited by the applicant was generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.

Zitierte PatentliteraturPatent Literature Cited

  • US 17/078532 [0001]US 17/078532 [0001]
  • US 17/078543 [0001]US 17/078543 [0001]
  • US 17/078548 [0001]US 17/078548 [0001]
  • US 17/078561 [0001]US 17/078561 [0001]
  • US 17/078575 [0001]US 17/078575 [0001]

Claims (135)

Verfahren zum Steuern eines autonomen Fahrzeugs, umfassend: Erhalten, durch eine Rechenvorrichtung, eines LiDAR-Datensatzes, der von einem LiDAR-System des autonomen Fahrzeugs erzeugt wird; Verwenden des LiDAR-Datensatzes und mindestens eines Bildes, um ein Objekt zu detektieren, das sich in der Nähe des autonomen Fahrzeugs befindet, wobei das Objekt durch Abgleichen von Punkten des LiDAR-Datensatzes mit Pixeln in dem mindestens einen Bild erfasst wird, und Detektieren des Objekts in einer Punktwolke, die durch den LiDAR-Datensatz definiert ist, basierend auf der Anpassung; Verwenden der Objektdetektion durch die Rechenvorrichtung, um mindestens einen autonomen Fahrbetrieb zu erleichtern.A method for controlling an autonomous vehicle, comprising: obtaining, by a computing device, a LiDAR dataset generated by a LiDAR system of the autonomous vehicle; Using the LiDAR dataset and at least one image to detect an object that is in the vicinity of the autonomous vehicle, wherein the object is detected by matching points of the LiDAR dataset with pixels in the at least one image, and detecting the object in a point cloud defined by the LiDAR dataset based on the adjustment; Using object detection by the computing device to facilitate at least one autonomous driving operation. Verfahren nach Anspruch 1, ferner umfassend das Erhalten, durch die Rechenvorrichtung, mindestens eines Bildes, das zu einem Zeitpunkt erfasst wurde, zu dem ein Sensor des LiDAR-Systems über eine Mitte eines Kamerasichtfeldes schweifen gelassen wurde, wobei das mindestens eine Bild zusätzlich zu dem LiDAR-Datensatz verwendet wird, um das Objekt zu detektieren.procedure after claim 1 , further comprising obtaining, by the computing device, at least one image captured at a time when a sensor of the LiDAR system was swept across a center of a camera field of view, the at least one image used in addition to the LiDAR dataset is used to detect the object. Verfahren nach Anspruch 1, wobei die mindestens eine autonome Fahroperation eine Objektverfolgungsoperation, eine Objekttrajektorienvorhersageoperation, eine Fahrzeugtrajektorienbestimmungsoperation oder eine Kollisionsvermeidungsoperation umfasst.procedure after claim 1 , wherein the at least one autonomous driving operation comprises an object tracking operation, an object trajectory prediction operation, a vehicle trajectory determination operation, or a collision avoidance operation. Verfahren nach Anspruch 1, wobei die Anpassung auf wenigstens einem der Folgenden basiert: einem Identifizierer für jedes Objekt, das in dem mindestens einen Bild detektiert wird, einem Maskenidentifizierer, einem Zellenidentifizierer für eine Maske, Konfidenzwerten für jede Zelle, LiDAR-Punktkennungen, LiDAR-Punktkoordinaten, extrinsischen LiDAR-Sensor- und Kamerakalibrierungsparametern und intrinsischen Kamerakalibrierungsparametern.procedure after claim 1 , wherein the adjustment is based on at least one of the following: an identifier for each object detected in the at least one image, a mask identifier, a cell identifier for a mask, confidence values for each cell, LiDAR point identifiers, LiDAR point coordinates, extrinsic LiDAR - Sensor and camera calibration parameters and intrinsic camera calibration parameters. Verfahren nach Anspruch 1, wobei das Anpassen das Bestimmen einer Wahrscheinlichkeitsverteilung von Pixeln des mindestens einen Bildes umfasst, an die ein Punkt des LiDAR-Datensatzes unter Berücksichtigung einer Projektionsunsicherheit im Hinblick auf Kamerakalibrierungsunsicherheiten projiziert werden kann.procedure after claim 1 , wherein the adjustment comprises determining a probability distribution of pixels of the at least one image to which a point of the LiDAR data set can be projected, taking into account a projection uncertainty with regard to camera calibration uncertainties. Verfahren nach Anspruch 5, wobei die Wahrscheinlichkeitsverteilung durch Berechnen einer Wahrscheinlichkeitsverteilungsfunktion über Bildraumkoordinaten für ein Pixel bestimmt wird, an dem wahrscheinlich ein Punkt des LiDAR-Datensatzes projiziert sein würde.procedure after claim 5 , where the probability distribution is determined by computing a probability distribution function over image space coordinates for a pixel where a point of the LiDAR dataset would likely be projected. Verfahren nach Anspruch 6, wobei die Wahrscheinlichkeitsverteilungsfunktion gemäß der folgenden mathematischen Gleichung berechnet wird [ x i y i 1 ] = M i n t T V e h i c l e C a m e r a T L i D A R V e h i c l e [ X Y Z 1 ]
Figure DE112021005607T5_0038
wobei xi und yi Bildraumkoordinaten für ein Pixel darstellen, und X, Y und Z LiDAR-Raumkoordinaten für einen Punkt des LiDAR-Datensatzes darstellen.
procedure after claim 6 , where the probability distribution function is calculated according to the following mathematical equation [ x i y i 1 ] = M i n t T V e H i c l e C a m e right a T L i D A R V e H i c l e [ X Y Z 1 ]
Figure DE112021005607T5_0038
where x i and y i represent image space coordinates for a pixel, and X, Y and Z represent LiDAR spatial coordinates for a point of the LiDAR data set.
Verfahren nach Anspruch 6, wobei die Wahrscheinlichkeitsverteilungsfunktion in Bilderfassungsmaskenkoordinaten gemäß der folgenden mathematischen Gleichung umgewandelt wird x m = R x i x b b o x x b b o x + x b b o x
Figure DE112021005607T5_0039
wobei x b b o x +  und  x b b o x
Figure DE112021005607T5_0040
Bildraumgrenzen eines Begrenzungsrechtecks darstellen, und R eine Maskenauflösung darstellt.
procedure after claim 6 , where the probability distribution function is converted into image acquisition mask coordinates according to the following mathematical equation x m = R x i x b b O x x b b O x + x b b O x
Figure DE112021005607T5_0039
where x b b O x + and x b b O x
Figure DE112021005607T5_0040
represent image space boundaries of a bounding rectangle, and R represents a mask resolution.
Verfahren nach Anspruch 1, wobei das Anpassen das Bestimmen einer Wahrscheinlichkeitsverteilung über einen Satz von Objekterfassungen umfasst, in denen ein Punkt des LiDAR-Datensatzes wahrscheinlich ist, basierend auf mindestens einem Konfidenzwert, der einen Vertrauensgrad angibt, dass mindestens ein jeweiliges Pixel des mindestens einen Bildes zu einem gegebenen detektierten Objekt gehört.procedure after claim 1 , wherein the fitting comprises determining a probability distribution over a set of object detections in which a point of the LiDAR dataset is likely based on at least one confidence value indicating a degree of confidence that at least one respective pixel of the at least one image belongs to a given detected object. Verfahren nach Anspruch 9, wobei die Wahrscheinlichkeitsverteilung durch Berechnen einer Wahrscheinlichkeit bestimmt wird, dass ein Punkt des LiDAR-Datensatzes unabhängig von allen anderen Bilderfassungen in eine Bilderfassung projiziert.procedure after claim 9 , where the probability distribution is determined by calculating a probability that a point of the LiDAR dataset will project into an image acquisition independently of all other image acquisitions. Verfahren nach Anspruch 10, wobei die Wahrscheinlichkeit gemäß der folgenden mathematischen Gleichung berechnet wird p ( l p m p ) m p ƒ ( x m , y m ) d m p = x m p x m p + y m p y m p + ƒ ( x m , y m ) d y d x
Figure DE112021005607T5_0041
wobei Ip ein LiDAR-Punkt ist, mp ein Maskenpixel ist, [ x m p , x m p + ]
Figure DE112021005607T5_0042
die x-Grenzen eines Pixels in Maskenkoordinaten, [ y m p , y m p + ]
Figure DE112021005607T5_0043
die y-Grenzen des Pixels in Maskenkoordinaten darstellen, dmp ein Maskenpixel darstellt, das einer gegebenen Objektdetektion d zugeordnet ist, dy eine y-Achsenkoordinate für ein Maskenpixel darstellt, das der gegebenen Objektdetektion d zugeordnet ist, und dx eine x-Achsenkoordinate für das Maskenpixel darstellt, das der gegebenen Objektdetektion d zugeordnet ist.
procedure after claim 10 , where the probability is calculated according to the following mathematical equation p ( l p m p ) m p ƒ ( x m , y m ) i.e m p = x m p x m p + y m p y m p + ƒ ( x m , y m ) i.e y i.e x
Figure DE112021005607T5_0041
where Ip is a LiDAR point, mp is a mask pixel, [ x m p , x m p + ]
Figure DE112021005607T5_0042
the x-boundaries of a pixel in mask coordinates, [ y m p , y m p + ]
Figure DE112021005607T5_0043
represent the y-boundaries of the pixel in mask coordinates, dmp represents a mask pixel associated with a given object detection d, dy represents a y-axis coordinate for a mask pixel associated with the given object detection d, and dx represents an x-axis coordinate for the mask pixel represents associated with the given object detection d.
Verfahren nach Anspruch 11, wobei die Wahrscheinlichkeit gemäß der folgenden mathematischen Gleichung berechnet wird [ \ h b o x ? ] i p ( l p d ) = p ( d ) m a s k p ( l p m p ) p ( m p d ) = p ( d ) x = 0 R y = 0 R p ( l p m p x , y d )
Figure DE112021005607T5_0044
procedure after claim 11 , where the probability is calculated according to the following mathematical equation [ \ H b O x ? ] i p ( l p i.e ) = p ( i.e ) m a s k p ( l p m p ) p ( m p i.e ) = p ( i.e ) x = 0 R y = 0 R p ( l p m p x , y i.e )
Figure DE112021005607T5_0044
Verfahren nach Anspruch 10, wobei das Anpassen das Bestimmen einer Wahrscheinlichkeit umfasst, dass der LiDAR-Punkt in keine Bilderfassung projiziert.procedure after claim 10 , wherein the adjusting includes determining a probability that the LiDAR point will not project into an image capture. Verfahren nach Anspruch 13, wobei das Anpassen das Normalisieren einer Vielzahl von Wahrscheinlichkeiten umfasst, die für einen gegebenen Punkt des LiDAR-Datensatzes gemäß der folgenden mathematischen Gleichung bestimmt werden d p ( l p d i ) = p ( d   l p d ) d p ( l p d i | d   l p d ) = [ 1 p ( d   l p d ) ] i p ( l p d i ) d e t e c t i o n s i p ( l p d )
Figure DE112021005607T5_0045
wobei ip(lp ∈ d) eine Wahrscheinlichkeit repräsentiert, dass ein Punkt des LiDAR-Datensatzes in eine Bilderfassung projiziert wird unabhängig von allen anderen Bilderfassungen und p(∀d lp ∉ (d) eine Wahrscheinlichkeit darstellt, dass der LiDAR-Punkt in keine Bilderfassung projiziert.
procedure after Claim 13 , wherein the fitting comprises normalizing a plurality of probabilities determined for a given point of the LiDAR data set according to the following mathematical equation i.e p ( l p i.e i ) = p ( i.e l p i.e ) i.e p ( l p i.e i | i.e l p i.e ) = [ 1 p ( i.e l p i.e ) ] i p ( l p i.e i ) i.e e t e c t i O n s i p ( l p i.e )
Figure DE112021005607T5_0045
where ip(lp ∈ d) represents a probability that a point of the LiDAR dataset will be projected into an image capture independent of all other image captures and p(∀d lp ∉ (d) represents a probability that the LiDAR point will not result in any image capture projected.
System, umfassend: einen Prozessor; ein nichtflüchtiges computerlesbares Speichermedium, das Programmieranweisungen umfasst, die konfiguriert sind, den Prozessor zu veranlassen, ein Verfahren zum Betreiben eines autonomen Fahrzeugs zu implementieren, wobei die Programmieranweisungen Anweisungen umfassen zum: Erhalten, durch eine Rechenvorrichtung, eines LiDAR-Datensatzes, der von einem LiDAR-System des autonomen Fahrzeugs erzeugt wird; Verwenden des LiDAR-Datensatzes und mindestens eines Bildes, um ein Objekt zu detektieren, das sich in der Nähe des autonomen Fahrzeugs befindet, wobei das Objekt durch Abgleichen von Punkten des LiDAR-Datensatzes mit Pixeln in dem mindestens einen Bild detektiert wird, und Detektieren des Objekts in einer Punktwolke, die durch den LiDAR-Datensatz definiert ist, basierend auf der Anpassung; Verwenden der Objektdetektion durch die Rechenvorrichtung, um mindestens einen autonomen Fahrbetrieb zu erleichtern.System comprising: a processor; a non-transitory computer-readable storage medium comprising programming instructions configured to cause the processor to implement a method of operating an autonomous vehicle, the programming instructions comprising instructions for: obtaining, by a computing device, a LiDAR dataset generated by a LiDAR system of the autonomous vehicle; using the LiDAR data set and at least one image to detect an object that is in the vicinity of the autonomous vehicle, the object being detected by matching points of the LiDAR data set with pixels in the at least one image, and detecting the object in a point cloud defined by the LiDAR dataset based on the adjustment; Using object detection by the computing device to facilitate at least one autonomous driving operation. System nach Anspruch 15, wobei die Programmieranweisungen ferner Anweisungen umfassen, um mindestens ein Bild zu erhalten, das zu einem Zeitpunkt erfasst wurde, zu dem ein Sensor des LiDAR-Systems über eine Mitte eines Kamerasichtfeldes schweifen gelassen wurde, wobei das mindestens eine Bild zusätzlich zu dem LiDAR-Datensatz verwendet wird, um das Objekt zu detektieren.system after claim 15 , wherein the programming instructions further comprise instructions to obtain at least one image captured at a time when a sensor of the LiDAR system tems has been swept over a center of a camera field of view, wherein the at least one image is used in addition to the LiDAR data set to detect the object. System nach Anspruch 15, wobei die mindestens eine autonome Fahroperation eine Objektverfolgungsoperation, eine Objekttrajektorienvorhersageoperation, eine Fahrzeugtrajektorienbestimmungsoperation oder eine Kollisionsvermeidungsoperation umfasst.system after claim 15 , wherein the at least one autonomous driving operation comprises an object tracking operation, an object trajectory prediction operation, a vehicle trajectory determination operation, or a collision avoidance operation. System nach Anspruch 15, wobei die Anpassung auf mindestens einem von Kennungen für jedes Objekt basiert, das in dem mindestens einen Bild, einer Maskenkennung, Zellenkennungen für eine Maske, Konfidenzwerten für jede Zelle, LiDAR-Punktkennungen, LiDAR-Punktkoordinaten, extrinsischen LiDAR-Sensor- und Kamerakalibrierungsparametern und intrinsischen Kamerakalibrierungsparametern detektiert wird.system after claim 15 , wherein the adjustment is based on at least one of identifiers for each object included in the at least one image, a mask identifier, cell identifiers for a mask, confidence values for each cell, LiDAR point identifiers, LiDAR point coordinates, extrinsic LiDAR sensor and camera calibration parameters, and intrinsic camera calibration parameters is detected. System nach Anspruch 15, wobei das Anpassen das Bestimmen einer Wahrscheinlichkeitsverteilung von Pixeln des mindestens einen Bildes umfasst, an die ein Punkt des LiDAR-Datensatzes unter Berücksichtigung einer Projektionsunsicherheit im Hinblick auf Kamerakalibrierungsunsicherheiten projiziert werden kann.system after claim 15 , wherein the adjustment comprises determining a probability distribution of pixels of the at least one image to which a point of the LiDAR data set can be projected, taking into account a projection uncertainty with regard to camera calibration uncertainties. System nach Anspruch 19, wobei die Wahrscheinlichkeitsverteilung durch Berechnen einer Wahrscheinlichkeitsverteilungsfunktion über Bildraumkoordinaten für ein Pixel bestimmt wird, an dem wahrscheinlich ein Punkt des LiDAR-Datensatzes vorstehen würde.system after claim 19 , where the probability distribution is determined by computing a probability distribution function over image space coordinates for a pixel where a point of the LiDAR dataset would likely protrude. System nach Anspruch 20, wobei die Wahrscheinlichkeitsverteilungsfunktion gemäß der folgenden mathematischen Gleichung berechnet wird [ x i y i 1 ] = M i n t T V e h i c l e C a m e r a T L i D A R V e h i c l e [ X Y Z 1 ]
Figure DE112021005607T5_0046
wobei xi und yi Bildraumkoordinaten für ein Pixel darstellen, und X, Y und Z LiDAR-Raumkoordinaten für einen Punkt des LiDAR-Datensatzes darstellen.
system after claim 20 , where the probability distribution function is calculated according to the following mathematical equation [ x i y i 1 ] = M i n t T V e H i c l e C a m e right a T L i D A R V e H i c l e [ X Y Z 1 ]
Figure DE112021005607T5_0046
where x i and y i represent image space coordinates for a pixel, and X, Y and Z represent LiDAR spatial coordinates for a point of the LiDAR data set.
System nach Anspruch 20, wobei die Wahrscheinlichkeitsverteilungsfunktion in Bilderfassungsmaskenkoordinaten gemäß der folgenden mathematischen Gleichung umgewandelt wird x m = R x i x b b o x x b b o x + x b b o x
Figure DE112021005607T5_0047
wobei x b b o x +  und  x b b o x
Figure DE112021005607T5_0048
Darstellen von Bildraumgrenzen eines Begrenzungsrechtecks, und R eine Maskenauflösung darstellt.
system after claim 20 , where the probability distribution function is converted into image acquisition mask coordinates according to the following mathematical equation x m = R x i x b b O x x b b O x + x b b O x
Figure DE112021005607T5_0047
where x b b O x + and x b b O x
Figure DE112021005607T5_0048
representing image space boundaries of a bounding rectangle, and R representing a mask resolution.
System nach Anspruch 15, wobei das Anpassen das Bestimmen einer Wahrscheinlichkeitsverteilung über einen Satz von Objekterfassungen umfasst, in denen ein Punkt des LiDAR-Datensatzes wahrscheinlich ist, basierend auf mindestens einem Konfidenzwert, der einen Vertrauensgrad angibt, dass mindestens ein jeweiliges Pixel des mindestens einen Bildes zu einem gegebenen detektierten Objekt gehört.system after claim 15 , wherein the adjusting comprises determining a probability distribution over a set of object detections in which a point of the LiDAR data set is likely based on at least one confidence value indicating a level of confidence that at least one respective pixel of the at least one image is detected at a given one object belongs. System nach Anspruch 23, wobei die Wahrscheinlichkeitsverteilung durch Berechnen einer Wahrscheinlichkeit bestimmt wird, dass ein Punkt des LiDAR-Datensatzes unabhängig von allen anderen Bilderfassungen in eine Bilderfassung projiziert.system after Claim 23 , where the probability distribution is determined by calculating a probability that a point of the LiDAR dataset will project into an image acquisition independently of all other image acquisitions. System nach Anspruch 24, wobei die Wahrscheinlichkeit gemäß der folgenden mathematischen Gleichung berechnet wird p ( l p m p ) m p ƒ ( x m , y m ) d m p = x m p x m p + y m p y m p + ƒ ( x m , y m ) d y d x
Figure DE112021005607T5_0049
wobei Ip ein LiDAR-Punkt ist, mp ein Maskenpixel ist, [ x m p , x m p + ]
Figure DE112021005607T5_0050
die x-Grenzen eines Pixels in Maskenkoordinaten, [ y m p , y m p + ]
Figure DE112021005607T5_0051
die y-Grenzen des Pixels in Maskenkoordinaten darstellen, dmp ein Maskenpixel darstellt, das einer gegebenen Objektdetektion d zugeordnet ist, dy eine y-Achsenkoordinate für ein Maskenpixel darstellt, das der gegebenen Objektdetektion d zugeordnet ist, und dx eine x-Achsenkoordinate für das Maskenpixel darstellt, das der gegebenen Objektdetektion d zugeordnet ist.
system after Claim 24 , where the probability is calculated according to the following mathematical equation p ( l p m p ) m p ƒ ( x m , y m ) i.e m p = x m p x m p + y m p y m p + ƒ ( x m , y m ) i.e y i.e x
Figure DE112021005607T5_0049
where Ip is a LiDAR point, mp is a mask pixel, [ x m p , x m p + ]
Figure DE112021005607T5_0050
the x-boundaries of a pixel in mask coordinates, [ y m p , y m p + ]
Figure DE112021005607T5_0051
represent the y-boundaries of the pixel in mask coordinates, dmp represents a mask pixel associated with a given object detection d, dy represents a y-axis coordinate for a mask pixel associated with the given object detection d, and dx represents an x-axis coordinate for the mask pixel represents associated with the given object detection d.
System nach Anspruch 25, wobei die Wahrscheinlichkeit gemäß der folgenden mathematischen Gleichung berechnet wird [ \ h b o x ? ] i p ( l p d ) = p ( d ) m a s k p ( l p m p ) p ( m p d ) = p ( d ) x = 0 R y = 0 R p ( l p m p x , y ) p ( m p x , y d )
Figure DE112021005607T5_0052
system after Claim 25 , where the probability is calculated according to the following mathematical equation [ \ H b O x ? ] i p ( l p i.e ) = p ( i.e ) m a s k p ( l p m p ) p ( m p i.e ) = p ( i.e ) x = 0 R y = 0 R p ( l p m p x , y ) p ( m p x , y i.e )
Figure DE112021005607T5_0052
System nach Anspruch 24, wobei das Anpassen das Bestimmen einer Wahrscheinlichkeit umfasst, dass der LiDAR-Punkt in keine der Bilderfassungen projiziert.system after Claim 24 , wherein the adjusting comprises determining a probability that the LiDAR point will not project into any of the image acquisitions. Verfahren nach Anspruch 27, wobei das Anpassen das Normalisieren einer Vielzahl von Wahrscheinlichkeiten umfasst, die für einen gegebenen Punkt des LiDAR-Datensatzes gemäß der folgenden mathematischen Gleichung bestimmt werden d p ( l p d i ) = p ( d   l p d ) d p ( l p d i | d   l p d ) = [ 1 p ( d   l p d ) ] i p ( l p d i ) d e t e c t i o n s i p ( l p d )
Figure DE112021005607T5_0053
wobei ip(lpc ∈ d) eine Wahrscheinlichkeit repräsentiert, dass ein Punkt des LiDAR-Datensatzes in eine Bilderfassung projiziert wird, unabhängig von allen anderen Bilderfassungen, und p(∀d lp ∉ d) eine Wahrscheinlichkeit darstellt, dass der LiDAR-Punkt in keine der Bilderfassungen projiziert.
procedure after Claim 27 , wherein the fitting comprises normalizing a plurality of probabilities determined for a given point of the LiDAR data set according to the following mathematical equation i.e p ( l p i.e i ) = p ( i.e l p i.e ) i.e p ( l p i.e i | i.e l p i.e ) = [ 1 p ( i.e l p i.e ) ] i p ( l p i.e i ) i.e e t e c t i O n s i p ( l p i.e )
Figure DE112021005607T5_0053
where ip(lpc ∈ d) represents a probability that a point of the LiDAR dataset will be projected into one image acquisition, independent of all other image acquisitions, and p(∀d lp ∉ d) represents a probability that the LiDAR point will be projected into no of image captures projected.
Nichtflüchtiges computerlesbares Medium mit darauf gespeicherten Anweisungen, die, wenn sie von mindestens einer Rechenvorrichtung ausgeführt werden, bewirken, dass die mindestens eine Rechenvorrichtung Operationen durchführt, die Folgendes umfassen: Erhalten eines LiDAR-Datensatzes, der von einem LiDAR-System eines autonomen Fahrzeugs erzeugt wird; Verwenden des LiDAR-Datensatzes und mindestens eines Bildes zum Detektieren eines Objekts, das sich in der Nähe des autonomen Fahrzeugs befindet, wobei das Objekt detektiert wird durch Anpassen von Punkten des LiDAR-Datensatzes an Pixel in dem mindestens einen Bild und Detektieren des Objekts in einer Punktwolke, die durch den LiDAR-Datensatz definiert ist, basierend auf der Anpassung; und Verwenden der Objektdetektion, um mindestens einen autonomen Fahrbetrieb zu erleichtern.A non-transitory computer-readable medium having instructions stored thereon that, when executed by at least one computing device, cause the at least one computing device to perform operations, comprising: obtaining a LiDAR dataset generated by an autonomous vehicle LiDAR system; Using the LiDAR dataset and at least one image to detect an object that is in proximity to the autonomous vehicle, the object being detected by fitting points of the LiDAR dataset to pixels in the at least one image and detecting the object in a point cloud defined by the LiDAR dataset based on the fitting; and Using object detection to facilitate at least one autonomous driving operation. Verfahren zum Betreiben eines autonomen Fahrzeugs, umfassend: Erhalten, durch eine Rechenvorrichtung, eines LiDAR-Datensatzes, der von einem LiDAR-System des autonomen Fahrzeugs erzeugt wird; Verwenden des LiDAR-Datensatzes und mindestens eines Bildes, um ein Objekt zu detektieren, das sich in der Nähe des autonomen Fahrzeugs befindet, wobei das Objekt durch Erzeugen eines beschnittene LiDAR-Datensatzes durch Reduzieren einer Gesamtanzahl von Punkten, die in dem LiDAR-Datensatz enthalten sind, erfasst wird, und Detektieren des Objekts in einer Punktwolke, die durch den beschnittene LiDAR-Datensatz definiert ist; Verwenden der Objektdetektion durch die Rechenvorrichtung, um mindestens einen autonomen Fahrbetrieb zu erleichtern.A method of operating an autonomous vehicle, comprising: obtaining, by a computing device, a LiDAR dataset generated by a LiDAR system of the autonomous vehicle; Using the LiDAR dataset and at least one image to detect an object that is in the vicinity of the autonomous vehicle, the object by generating a cropped LiDAR dataset by reducing a total number of points included in the LiDAR dataset are, is recorded, and detecting the object in a point cloud defined by the clipped LiDAR dataset; Using object detection by the computing device to facilitate at least one autonomous driving operation. Verfahren nach Anspruch 30, ferner umfassend das Erhalten, durch die Rechenvorrichtung, mindestens eines Bildes, das zu einem Zeitpunkt erfasst wurde, zu dem ein Sensor des LiDAR-Systems über ein Zentrum eines Kamerasichtfeldes („FOV“) schweifen gelassen wurde, wobei das mindestens eine Bild zusätzlich zu dem LiDAR-Datensatz verwendet wird, um das Objekt zu detektieren.procedure after Claim 30 , further comprising obtaining, by the computing device, at least one image captured at a time when a sensor of the LiDAR system was swept across a center of a camera field of view ("FOV"), the at least one image additionally to used in the LiDAR dataset to detect the object. Verfahren nach Anspruch 30, wobei die mindestens eine autonome Fahroperation eine Objektverfolgungsoperation, eine Objekttrajektorienvorhersageoperation, eine Fahrzeugtrajektorienbestimmungsoperation oder eine Kollisionsvermeidungsoperation umfasst.procedure after Claim 30 , wherein the at least one autonomous driving operation comprises an object tracking operation, an object trajectory prediction operation, a vehicle trajectory determination operation, or a collision avoidance operation. Verfahren nach Anspruch 30, wobei der beschnittene LiDAR-Datensatz durch Heruntersampeln der Punkte basierend auf einer geplanten Trajektorie des autonomen Fahrzeugs erzeugt wird.procedure after Claim 30 , where the cropped LiDAR dataset is generated by downsampling the points based on a planned trajectory of the autonomous vehicle. Verfahren nach Anspruch 33, wobei Punkte des LiDAR-Datensatzes, die einem ersten Bereich entlang der geplanten Trajektorie des autonomen Fahrzeugs entsprechen, mit einer niedrigeren Abtastrate als Punkte des LiDAR-Datensatzes, die einem zweiten Bereich entsprechen, der nicht entlang der geplanten Trajektorie des autonomen Fahrzeugs ist, heruntergesampelt werden.procedure after Claim 33 , wherein points of the LiDAR dataset that correspond to a first area along the planned trajectory of the autonomous vehicle are downsampled at a lower sampling rate than points of the LiDAR dataset that correspond to a second area that is not along the planned trajectory of the autonomous vehicle become. Verfahren nach Anspruch 34, wobei Punkte des LiDAR-Datensatzes, die einem ersten Bereich entlang der geplanten Trajektorie des autonomen Fahrzeugs entsprechen, mit einer höheren Abtastrate als Punkte des LiDAR-Datensatzes, die einem zweiten Bereich entsprechen, der sich ebenfalls entlang der geplanten Trajektorie des autonomen Fahrzeugs befindet, abgetastet werden.procedure after Claim 34 , where points of the LiDAR dataset that correspond to a first area along the planned trajectory of the autonomous vehicle with a higher sampling rate than points of the LiDAR dataset that correspond to a second area that is also located along the planned trajectory of the autonomous vehicle, be scanned. Verfahren nach Anspruch 35, wobei der erste Bereich einen Bereich umfasst, der Punkte umfasst, die mindestens einem Objekt entsprechen, das unwahrscheinlich mit dem autonomen Fahrzeug interferiert, wenn es der geplanten Trajektorie folgt, und der zweite Bereich einen Bereich umfasst, der Punkte umfasst, die mindestens einem Objekt entsprechen, das wahrscheinlich mit dem autonomen Fahrzeug interferiert, wenn es der geplanten Trajektorie folgt.procedure after Claim 35 , wherein the first area includes an area including points corresponding to at least one object that is unlikely to interfere with the autonomous vehicle when following the planned trajectory, and the second area includes an area including points corresponding to at least one object that is likely to interfere with the autonomous vehicle when following the planned trajectory. Verfahren nach Anspruch 30, wobei der beschnittene LiDAR-Datensatz durch Heruntersampeln des LiDAR-Datensatzes basierend auf Punktmarkierungen erzeugt wird, die den Punkten zugeordnet sind.procedure after Claim 30 , wherein the cropped LiDAR dataset is generated by downsampling the LiDAR dataset based on point markers associated with the points. Verfahren nach Anspruch 37, wobei jede der Punktmarkierungen mindestens eines von einer Objektklassenkennung, einer Farbe und einen eindeutigen Identifikator umfasst.procedure after Claim 37 , wherein each of the point markers comprises at least one of an object class identifier, a color, and a unique identifier. Verfahren nach Anspruch 37, wobei der LiDAR-Datensatz durch Zuweisen einer ersten Wichtigkeitsmarkierung zu Punkten, die mit einer sich bewegenden Objektklasse assoziiert sind, und einer zweiten Wichtigkeitsmarkierung zu Punkten, die mit einer statischen Objektklasse assoziiert sind, heruntergesampelt wird.procedure after Claim 37 wherein the LiDAR dataset is downsampled by assigning a first importance marker to points associated with a moving object class and a second importance marker to points associated with a static object class. Verfahren nach Anspruch 39, wobei die Punkte, die der ersten Wichtigkeitsmarkierung zugewiesen sind, mit einer ersten Auflösung heruntergesampelt werden, und die Punkte, die der zweiten Wichtigkeitsmarkierung zugewiesen sind, mit einer zweiten Auflösung, die niedriger als die erste Auflösung ist, heruntergesampelt werden.procedure after Claim 39 wherein the points associated with the first importance mark are downsampled at a first resolution and the points associated with the second importance mark are downsampled at a second resolution lower than the first resolution. Verfahren nach Anspruch 39, wobei nur die Punkte, die der zweiten Wichtigkeitsmarkierung zugewiesen sind, heruntergesampelt werden.procedure after Claim 39 , where only the points assigned to the second importance marker are downsampled. Verfahren nach Anspruch 30, wobei der beschnittene LiDAR-Datensatz durch Heruntersampeln des LiDAR-Datensatzes basierend auf Punktabständen von einem Begrenzungsrechteck erzeugt wird.procedure after Claim 30 , where the cropped LiDAR dataset is generated by downsampling the LiDAR dataset based on point distances from a bounding box. Verfahren nach Anspruch 42, wobei ein Punkt aus dem LiDAR-Datensatz entfernt wird, wenn ein jeweiliger der Punktabstände größer als ein Schwellenabstand ist.procedure after Claim 42 , wherein a point is removed from the LiDAR dataset if a respective one of the point spacings is greater than a threshold spacing. Verfahren nach Anspruch 30, wobei der beschnittene LiDAR-Datensatz durch Heruntersampeln des LiDAR-Datensatzes unter Verwendung einer Karte erzeugt wird, die Informationen enthält, die einer geplanten Trajektorie des autonomen Fahrzeugs zugeordnet sind.procedure after Claim 30 , wherein the pruned LiDAR dataset is generated by downsampling the LiDAR dataset using a map containing information associated with a planned trajectory of the autonomous vehicle. Verfahren nach Anspruch 44, wobei ein Punkt aus dem LiDAR-Datensatz entfernt wird, wenn der Punkt eine Höhe aufweist, die kleiner als ein minimaler Höhenschwellenwert oder größer als ein maximaler Höhenschwellenwert ist.procedure after Claim 44 , where a point is removed from the LiDAR dataset if the point has an elevation that is less than a minimum elevation threshold or greater than a maximum elevation threshold. Verfahren nach Anspruch 30, wobei der beschnittene LiDAR-Datensatz durch Heruntersampeln des LiDAR-Datensatzes mit einer Auflösung erzeugt wird, die basierend auf einer modellierten Prozesslatenz ausgewählt wird.procedure after Claim 30 , wherein the pruned LiDAR dataset is generated by downsampling the LiDAR dataset at a resolution selected based on a modeled process latency. System, umfassend: einen Prozessor; ein nichtflüchtiges computerlesbares Speichermedium, das Programmieranweisungen umfasst, die konfiguriert sind, den Prozessor zu veranlassen, ein Verfahren zum Betreiben eines autonomen Fahrzeugs zu implementieren, wobei die Programmieranweisungen Anweisungen umfassen zum: Erhalten eines LiDAR-Datensatzes, der von einem LiDAR-System des autonomen Fahrzeugs erzeugt wird; Verwenden des LiDAR-Datensatzes und mindestens eines Bildes zum Detektieren eines Objekts, das sich in der Nähe des autonomen Fahrzeugs befindet, wobei das Objekt durch Erzeugen eines beschnittenen LiDAR-Datensatzes durch Reduzieren einer Gesamtanzahl von Punkten, die in dem LiDAR-Datensatz enthalten sind, und Detektieren des Objekts in einer Punktwolke, die durch den beschnittene LiDAR-Datensatz definiert ist; Verwenden der Objektdetektion, um mindestens einen autonomen Fahrbetrieb zu erleichtern.A system, comprising: a processor; a non-transitory computer-readable storage medium comprising programming instructions configured to cause the processor to perform a method of operating an autonomous vehicle implement, wherein the programming instructions include instructions to: obtain a LiDAR data set generated by a LiDAR system of the autonomous vehicle; Using the LiDAR data set and at least one image to detect an object that is in the vicinity of the autonomous vehicle, the object by generating a cropped LiDAR data set by reducing a total number of points included in the LiDAR data set, and detecting the object in a point cloud defined by the clipped LiDAR data set; Using object detection to facilitate at least one autonomous driving operation. System nach Anspruch 47, wobei die Programmieranweisungen Anweisungen umfassen, um mindestens ein Bild zu erhalten, das zu einem Zeitpunkt erfasst wurde, zu dem ein Sensor des LiDAR-Systems über eine Mitte eines Kamerasichtfelds schweifen gelassen wurde, wobei das mindestens eine Bild zusätzlich zu dem LiDAR-Datensatz verwendet wird, um das Objekt zu detektieren.system after Claim 47 , wherein the programming instructions include instructions to obtain at least one image captured at a time when a sensor of the LiDAR system was swept across a center of a camera field of view, using the at least one image in addition to the LiDAR dataset is used to detect the object. System nach Anspruch 47, wobei die mindestens eine autonome Fahroperation eine Objektverfolgungsoperation, eine Objekttrajektorienvorhersageoperation, eine Fahrzeugtrajektorienbestimmungsoperation oder eine Kollisionsvermeidungsoperation umfasst.system after Claim 47 , wherein the at least one autonomous driving operation comprises an object tracking operation, an object trajectory prediction operation, a vehicle trajectory determination operation, or a collision avoidance operation. System nach Anspruch 47, wobei der beschnittene LiDAR-Datensatz durch Heruntersampeln der Punkte basierend auf einer geplanten Trajektorie des autonomen Fahrzeugs erzeugt wird.system after Claim 47 , where the cropped LiDAR dataset is generated by downsampling the points based on a planned trajectory of the autonomous vehicle. System nach Anspruch 50, wobei Punkte des LiDAR-Datensatzes, die einem ersten Bereich entlang der geplanten Trajektorie des autonomen Fahrzeugs entsprechen, mit einer niedrigeren Abtastrate als Punkte des LiDAR-Datensatzes, die einem zweiten Bereich entsprechen, der nicht entlang der geplanten Trajektorie des autonomen Fahrzeugs ist, heruntergesampelt werden.system after Claim 50 , wherein points of the LiDAR dataset that correspond to a first area along the planned trajectory of the autonomous vehicle are downsampled at a lower sampling rate than points of the LiDAR dataset that correspond to a second area that is not along the planned trajectory of the autonomous vehicle become. System nach Anspruch 51, wobei Punkte des LiDAR-Datensatzes, die einem ersten Bereich entlang der geplanten Trajektorie des autonomen Fahrzeugs entsprechen, mit einer höheren Abtastrate als Punkte des LiDAR-Datensatzes, die einem zweiten Bereich entsprechen, der sich ebenfalls entlang der geplanten Trajektorie des autonomen Fahrzeugs befindet, abgetastet werden.system after Claim 51 , where points of the LiDAR dataset that correspond to a first area along the planned trajectory of the autonomous vehicle with a higher sampling rate than points of the LiDAR dataset that correspond to a second area that is also located along the planned trajectory of the autonomous vehicle, be scanned. System nach Anspruch 52, wobei der erste Bereich einen Bereich umfasst, der Punkte umfasst, die mindestens einem Objekt entsprechen, das unwahrscheinlich mit dem autonomen Fahrzeug interferieren kann, wenn es der geplanten Trajektorie folgt, und der zweite Bereich einen Bereich umfasst, der Punkte beinhaltet, die mindestens einem Objekt entsprechen, das wahrscheinlich mit dem autonomen Fahrzeug interferiert, wenn es der geplanten Trajektorie folgt.system after Claim 52 , wherein the first area includes an area including points corresponding to at least one object that is unlikely to interfere with the autonomous vehicle when following the planned trajectory, and the second area includes an area including points corresponding to at least one correspond to an object that is likely to interfere with the autonomous vehicle when following the planned trajectory. System nach Anspruch 47, wobei der beschnittene LiDAR-Datensatz durch Heruntersampeln des LiDAR-Datensatzes basierend auf Punktmarkierungen erzeugt wird, die den Punkten zugewiesen sind.system after Claim 47 , where the cropped LiDAR dataset is generated by downsampling the LiDAR dataset based on point markers assigned to the points. System nach Anspruch 54, wobei jede der Punktmarkierungen mindestens eines von einer Objektklassenkennung, einer Farbe und einer eindeutigen Kennung umfasst.system after Claim 54 , wherein each of the point markers comprises at least one of an object class identifier, a color, and a unique identifier. System nach Anspruch 55, wobei der LiDAR-Datensatz durch Zuweisen einer ersten Wichtigkeitsmarkierung zu Punkten, die mit einer sich bewegenden Objektklasse assoziiert sind, und einer zweiten Wichtigkeitsmarkierung zu Punkten, die mit einer statischen Objektklasse assoziiert sind, heruntergesampelt wird.system after Claim 55 wherein the LiDAR dataset is downsampled by assigning a first importance marker to points associated with a moving object class and a second importance marker to points associated with a static object class. System nach Anspruch 56, wobei die Punkte, die der Markierung der ersten Wichtigkeit zugewiesen sind, mit einer ersten Auflösung heruntergesampelt werden und die Punkte, die der Markierung der zweiten Wichtigkeit zugewiesen sind, mit einer zweiten Auflösung, die niedriger als die erste Auflösung ist, heruntergesampelt werden.system after Claim 56 wherein the points assigned to the first importance marker are downsampled at a first resolution and the points assigned to the second importance marker are downsampled at a second resolution lower than the first resolution. System nach Anspruch 56, wobei nur die Punkte, die der zweiten Wichtigkeitsmarkierung zugewiesen sind, heruntergesampelt werden.system after Claim 56 , where only the points assigned to the second importance marker are downsampled. System nach Anspruch 47, wobei der beschnittene LiDAR-Datensatz durch Heruntersampeln des LiDAR-Datensatzes basierend auf Punktabständen von einem Begrenzungsrechteck erzeugt wird.system after Claim 47 , where the cropped LiDAR dataset is generated by downsampling the LiDAR dataset based on point distances from a bounding box. System nach Anspruch 59, wobei ein Punkt aus dem LiDAR-Datensatz entfernt wird, wenn ein jeweiliger der Punktabstände größer als ein Schwellenabstand ist.system after Claim 59 , wherein a point is removed from the LiDAR dataset if a respective one of the point spacings is greater than a threshold spacing. System nach Anspruch 47, wobei der beschnittene LiDAR-Datensatz durch Heruntersampeln des LiDAR-Datensatzes unter Verwendung einer Karte erzeugt wird, die Informationen enthält, die einer geplanten Trajektorie des autonomen Fahrzeugs zugeordnet sind.system after Claim 47 , wherein the pruned LiDAR dataset is generated by downsampling the LiDAR dataset using a map containing information associated with a planned trajectory of the autonomous vehicle. System nach Anspruch 61, wobei ein Punkt aus dem LiDAR-Datensatz entfernt wird, wenn der Punkt eine Höhe aufweist, die kleiner als ein minimaler Höhenschwellenwert oder größer als ein maximaler Höhenschwellenwert ist.system after Claim 61 , where a point is removed from the LiDAR dataset if the point has an elevation that is less than a minimum elevation threshold or greater than a maximum elevation threshold. System nach Anspruch 47, wobei der beschnittene LiDAR-Datensatz durch Heruntersampeln des LiDAR-Datensatzes mit einer Auflösung erzeugt wird, die basierend auf einer modellierten Prozesslatenz ausgewählt wird.system after Claim 47 , wherein the pruned LiDAR dataset is generated by downsampling the LiDAR dataset at a resolution selected based on a modeled process latency. Nichtflüchtiges computerlesbares Medium mit darauf gespeicherten Anweisungen, die, wenn sie von mindestens einer Rechenvorrichtung ausgeführt werden, bewirken, dass die mindestens eine Rechenvorrichtung Operationen durchführt, die Folgendes umfassen: Erhalten, durch eine Rechenvorrichtung, eines LiDAR-Datensatzes, der von einem LiDAR-System des autonomen Fahrzeugs erzeugt wird; Verwenden des LiDAR-Datensatzes und mindestens eines Bildes, um ein Objekt zu detektieren, das sich in der Nähe des autonomen Fahrzeugs befindet, wobei das Objekt durch Erzeugen eines beschnittenen LiDAR-Datensatzes durch Reduzieren einer Gesamtanzahl von Punkten, die in dem LiDAR-Datensatz enthalten sind, erfasst wird, und Detektieren des Objekts in einer Punktwolke, die durch den beschnittenen LiDAR-Datensatz definiert ist, unter Verwendung, durch die Rechenvorrichtung, der Objektdetektion, um mindestens einen autonomen Fahrbetrieb zu erleichtern.A non-transitory computer-readable medium having instructions stored thereon that, when executed by at least one computing device, cause the at least one computing device to perform operations, comprising: obtaining, by a computing device, a LiDAR dataset generated by a LiDAR system of the autonomous vehicle; Using the LiDAR dataset and at least one image to detect an object that is in the vicinity of the autonomous vehicle, the object by generating a cropped LiDAR dataset by reducing a total number of points included in the LiDAR dataset are, is recorded, and detecting, by the computing device, the object in a point cloud defined by the cropped LiDAR dataset using object detection to facilitate at least one autonomous driving operation. Verfahren zum Steuern eines autonomen Fahrzeugs, umfassend: Erhalten, durch eine Rechenvorrichtung, eines LiDAR-Datensatzes, der von einem LiDAR-System des autonomen Fahrzeugs erzeugt wird; Verwenden des LiDAR-Datensatzes und mindestens eines Bildes, um ein Objekt zu detektieren, das sich in der Nähe des autonomen Fahrzeugs befindet, wobei das Objekt durch Berechnen einer Verteilung von Objektdetektionen erfasst wird, Erzeugen einer Vielzahl von Segmenten von LiDAR-Datenpunkten unter Verwendung der Verteilung von Objektdetektionen, und Detektieren des Objekts in einer Punktwolke, die durch den LiDAR-Datensatz definiert ist, basierend auf der Vielzahl von Segmenten von LiDAR-Datenpunkten; und Verwenden der Objektdetektion durch die Rechenvorrichtung, um mindestens einen autonomen Fahrbetrieb zu erleichtern. A method for controlling an autonomous vehicle, comprising: obtaining, by a computing device, a LiDAR dataset generated by a LiDAR system of the autonomous vehicle; Using the LiDAR data set and at least one image to detect an object that is in the vicinity of the autonomous vehicle, the object being detected by calculating a distribution of object detections, generating a plurality of segments of LiDAR data points using the distribution of object detections, and detecting the object in a point cloud defined by the LiDAR data set based on the plurality of segments of LiDAR data points; and Using object detection by the computing device to facilitate at least one autonomous driving operation. Verfahren nach Anspruch 65, ferner umfassend das Erhalten, durch die Rechenvorrichtung, mindestens eines Bildes, das zu einem Zeitpunkt erfasst wurde, zu dem ein Sensor des LiDAR-Systems über eine Mitte eines Kamerasichtfeldes schweifen gelassen wurde, wobei das mindestens eine Bild zusätzlich zu dem LiDAR-Datensatz verwendet wird, um das Objekt zu detektieren.procedure after Claim 65 , further comprising obtaining, by the computing device, at least one image captured at a time when a sensor of the LiDAR system was swept across a center of a camera field of view, the at least one image used in addition to the LiDAR data set is used to detect the object. Verfahren nach Anspruch 65, wobei die mindestens eine autonome Fahroperation eine Objektverfolgungsoperation, eine Objekttrajektorienvorhersageoperation, eine Fahrzeugtrajektorienbestimmungsoperation oder eine Kollisionsvermeidungsoperation umfasst.procedure after Claim 65 , wherein the at least one autonomous driving operation comprises an object tracking operation, an object trajectory prediction operation, a vehicle trajectory determination operation, or a collision avoidance operation. Verfahren nach Anspruch 65, wobei die Verteilung von Objektdetektionen basierend auf (a) einer Wahrscheinlichkeitsverteilung von Pixeln des mindestens einen Bildes berechnet wird, an die ein Punkt des LiDAR-Datensatzes projiziert werden kann, und (b) eine Wahrscheinlichkeit, dass der Punkt in keine der Bilderfassungen projiziert.procedure after Claim 65 , wherein the distribution of object detections is calculated based on (a) a probability distribution of pixels of the at least one image to which a point of the LiDAR dataset can be projected, and (b) a probability that the point does not project into any of the image acquisitions. Verfahren nach Anspruch 65, wobei die Vielzahl von Segmenten von LiDAR-Datenpunkten unter Verwendung des LiDAR-Datensatzes erzeugt werden, um einen Konnektivitätsgraphen zu konstruieren, wobei der Konnektivitätsgraph Punkte des LiDAR-Datensatzes umfasst, die in einem 3D-Koordinatensystem aufgetragen sind, und Verbindungslinien, die jeweils die Punkte verbinden.procedure after Claim 65 , wherein the plurality of segments of LiDAR data points are generated using the LiDAR data set to construct a connectivity graph, the connectivity graph comprising points of the LiDAR data set plotted in a 3D coordinate system and connecting lines respectively representing the connect dots. Verfahren nach Anspruch 69, wobei die Verbindungslinien dem Konnektivitätsgraphen basierend darauf hinzugefügt werden, ob zwei Punkte des LiDAR-Datensatzes innerhalb eines räumlichen oder zeitlichen Abstands voneinander liegen, ob zwei Punkte nächste Nachbarn sind, oder aufgrund Triangulation.procedure after Claim 69 , where the connecting lines are added to the connectivity graph based on whether two points of the LiDAR dataset are within a spatial or temporal distance of each other, whether two points are nearest neighbors, or based on triangulation. Verfahren nach Anspruch 69, wobei die Vielzahl von Segmenten von LiDAR-Datenpunkten durch weiteres Bestimmen, für jeden Punkt in dem Konnektivitätsgraphen, eines Deskriptors erzeugt wird, der einen Vektor von Elementen umfasst, die einen gegebenen Punkt des LiDAR-Datensatzes charakterisieren.procedure after Claim 69 wherein the plurality of segments of LiDAR data points is generated by further determining, for each point in the connectivity graph, a descriptor comprising a vector of elements characterizing a given point of the LiDAR data set. Verfahren nach Anspruch 71, wobei die Elemente mindestens eines von einer Oberflächennormalen, einem Farbwert basierend auf dem mindestens einen Bild, einer Intensität, einer Textur, räumlichen Koordinaten, einer Höhe über Grund, einer Klassenmarkierung, einer Instanzkennung, einem bildbasierten Merkmal, einem schnellen Punktmerkmalshistogramm, einer Bilderfassungsfähigkeit und einem modifizierten Abstand umfassen.procedure after Claim 71 , wherein the elements are at least one of a surface normal, a color value based on the at least one image, an intensity, a texture, spatial coordinates, a height above ground, a class marker, an instance identifier, an image-based feature, a fast point feature histogram, an image capture capability, and include a modified distance. Verfahren nach Anspruch 71, wobei die mehreren Segmente von LiDAR-Datenpunkten durch weiteres Zuweisen eines Gewichts zu jeder Verbindungslinie basierend auf dem Deskriptor erzeugt werden, wobei das Gewicht ein Dissimilaritätsmaß zwischen zwei Punkten darstellt, die in dem Konnektivitätsgraphen über die Verbindungslinien miteinander verbunden sind.procedure after Claim 71 , wherein the plurality of segments of LiDAR data points are generated by further assigning a weight to each connecting line based on the descriptor, the weight representing a measure of dissimilarity between two points connected in the connectivity graph by the connecting lines. Verfahren nach Anspruch 71, wobei die Vielzahl von Segmenten von LiDAR-Datenpunkten durch weitere Zusammenführungspunkte des LiDAR-Datensatzes basierend auf den Gewichten erzeugt werden.procedure after Claim 71 , wherein the plurality of segments of LiDAR data points are generated by further merging points of the LiDAR data set based on the weights. Verfahren nach Anspruch 74, wobei zwei Punkte zusammengeführt werden, wenn ein Gewicht, das einer jeweiligen Verbindungslinie zugeordnet ist, kleiner als ein Schwellenwert ist.procedure after Claim 74 , where two points are merged if a weight associated with each connecting line is less than a threshold. System, umfassend: einen Prozessor; ein nichtflüchtiges computerlesbares Speichermedium, das Programmieranweisungen umfasst, die konfiguriert sind, den Prozessor zu veranlassen, ein Verfahren zum Betreiben eines autonomen Fahrzeugs zu implementieren, wobei die Programmieranweisungen Anweisungen umfassen zum: Erhalten eines LiDAR-Datensatzes, der von einem LiDAR-System des autonomen Fahrzeugs erzeugt wird; Verwenden des LiDAR-Datensatzes und mindestens eines Bildes zum Detektieren eines Objekts, das sich in der Nähe des autonomen Fahrzeugs befindet, wobei das Objekt durch Berechnen einer Verteilung von Objektdetektionen, dass jeder Punkt des LiDAR-Datensatzes wahrscheinlich ist, Erzeugen einer Vielzahl von Segmenten von LiDAR-Datenpunkten unter Verwendung der Verteilung von Objektdetektionen, und Detektieren des Objekts in einer Punktwolke, die durch den LiDAR-Datensatz definiert ist, basierend auf der Vielzahl von Segmenten von LiDAR-Datenpunkten; und Verwenden der Objektdetektion, um mindestens einen autonomen Fahrbetrieb zu erleichtern.System comprising: a processor; a non-transitory computer-readable storage medium comprising programming instructions configured to cause the processor to implement a method of operating an autonomous vehicle, the programming instructions comprising instructions for: obtaining a LiDAR dataset generated by a LiDAR system of the autonomous vehicle; Using the LiDAR dataset and at least one image to detect an object that is in the vicinity of the autonomous vehicle, the object being probable by calculating a distribution of object detections that each point of the LiDAR dataset is generating a plurality of segments of LiDAR data points using the distribution of object detections, and detecting the object in a point cloud defined by the LiDAR data set based on the plurality of segments of LiDAR data points; and Using object detection to facilitate at least one autonomous driving operation. System nach Anspruch 76, wobei die Programmieranweisungen ferner Anweisungen umfassen, um mindestens ein Bild zu erhalten, das zu einem Zeitpunkt erfasst wurde, zu dem ein Sensor des LiDAR-Systems über eine Mitte eines Kamerasichtfelds („Field Of View“, „FOV“) schweifen gelassen wurde, wobei das mindestens eine Bild zusätzlich zu dem LiDAR-Datensatz verwendet wird, um das Objekt zu detektieren.system after Claim 76 , wherein the programming instructions further include instructions to obtain at least one image captured at a time when a sensor of the LiDAR system was swept across a center of a camera's Field Of View ("FOV"), wherein the at least one image is used in addition to the LiDAR dataset to detect the object. System nach Anspruch 76, wobei die mindestens eine autonome Fahroperation: eine Objektverfolgungsoperation, eine Objekttrajektorienvorhersageoperation, eine Fahrzeugtrajektorienbestimmungsoperation oder eine Kollisionsvermeidungsoperation umfasst.system after Claim 76 , wherein the at least one autonomous driving operation comprises: an object tracking operation, an object trajectory prediction operation, a vehicle trajectory determination operation, or a collision avoidance operation. System nach Anspruch 76, wobei die Verteilung von Objektdetektionen basierend auf (a) einer Wahrscheinlichkeitsverteilung von Pixeln des mindestens einen Bildes berechnet wird, an die ein Punkt des LiDAR-Datensatzes projiziert werden kann, und (b) eine Wahrscheinlichkeit, dass der Punkt in keine der Bilderfassungen projiziert.system after Claim 76 , wherein the distribution of object detections is calculated based on (a) a probability distribution of pixels of the at least one image to which a point of the LiDAR dataset can be projected, and (b) a probability that the point does not project into any of the image acquisitions. System nach Anspruch 76, wobei die mehreren Segmente von LiDAR-Datenpunkten unter Verwendung des LiDAR-Datensatzes erzeugt werden, um einen Konnektivitätsgraphen zu konstruieren, wobei der Konnektivitätsgraph Punkte des LiDAR-Datensatzes umfasst, die in einem 3D-Koordinatensystem aufgetragen sind, und Verbindungslinien, die jeweils die Punkte verbinden.system after Claim 76 , wherein the multiple segments of LiDAR data points are generated using the LiDAR data set to construct a connectivity graph, the connectivity graph comprising points of the LiDAR data set plotted in a 3D coordinate system and connecting lines respectively connecting the points connect. System nach Anspruch 80, wobei die Verbindungslinien dem Konnektivitätsgraphen basierend darauf hinzugefügt werden, ob zwei Punkte des LiDAR-Datensatzes innerhalb eines räumlichen oder zeitlichen Abstands voneinander liegen, ob zwei Punkte nächste Nachbarn oder Triangulation sind.system after Claim 80 , where the connecting lines are added to the connectivity graph based on whether two points of the LiDAR dataset are within a spatial or temporal distance of each other, whether two points are nearest neighbors or triangulation. System nach Anspruch 80, wobei die Vielzahl von Segmenten von LiDAR-Datenpunkten durch weiteres Bestimmen, für jeden Punkt in dem Konnektivitätsgraphen, eines Deskriptors erzeugt wird, der einen Vektor von Elementen umfasst, die einen gegebenen Punkt des LiDAR-Datensatzes charakterisieren.system after Claim 80 wherein the plurality of segments of LiDAR data points is generated by further determining, for each point in the connectivity graph, a descriptor comprising a vector of elements characterizing a given point of the LiDAR data set. System nach Anspruch 82, wobei die Elemente mindestens eines von einer Oberflächennormalen, einem Farbwert basierend auf dem mindestens einen Bild, einer Intensität, einer Textur, räumlichen Koordinaten, einer Höhe über Masse, einer Klassenmarkierung, einer Instanzkennung, einem bildbasierten Merkmal, einem schnellen Punktmerkmalshistogramm, einer Bilderfassungsfähigkeit und einem modifizierten Abstand umfassen.system after Claim 82 , wherein the elements are at least one of a surface normal, a color value based on the at least one image, an intensity, a texture, spatial coordinates, a height above ground, a class marker, an instance identifier, an image-based feature, a fast point feature histogram, an image capture capability, and include a modified distance. System nach Anspruch 83, wobei die mehreren Segmente von LiDAR-Datenpunkten durch weiteres Zuweisen eines Gewichts zu jeder Verbindungslinie basierend auf dem Deskriptor erzeugt werden, wobei das Gewicht ein Dissimilaritätsmaß zwischen zwei Punkten darstellt, die in dem Konnektivitätsgraphen über die Verbindungslinien miteinander verbunden sind.system after Claim 83 , wherein the plurality of segments of LiDAR data points are generated by further assigning a weight to each connecting line based on the descriptor, the weight representing a measure of dissimilarity between two points connected in the connectivity graph by the connecting lines. System nach Anspruch 83, wobei die Vielzahl von Segmenten von LiDAR-Datenpunkten durch weitere Zusammenführungspunkte des LiDAR-Datensatzes basierend auf den Gewichten erzeugt werden.system after Claim 83 , wherein the plurality of segments of LiDAR data points are generated by further merging points of the LiDAR data set based on the weights. System nach Anspruch 85, wobei zwei Punkte zusammengeführt werden, wenn ein Gewicht, das einer jeweiligen Verbindungslinie zugeordnet ist, kleiner als ein Schwellenwert ist.system after Claim 85 , where two points are merged if a weight associated with each connecting line is less than a threshold. Nichtflüchtiges computerlesbares Medium mit darauf gespeicherten Anweisungen, die, wenn sie von mindestens einer Rechenvorrichtung ausgeführt werden, bewirken, dass die mindestens eine Rechenvorrichtung Operationen durchführt, die Folgendes umfassen: Erhalten, durch eine Rechenvorrichtung, eines LiDAR-Datensatzes, der von einem LiDAR-System des autonomen Fahrzeugs erzeugt wird; Verwenden des LiDAR-Datensatzes und mindestens eines Bildes, um ein Objekt zu detektieren, das sich in der Nähe des autonomen Fahrzeugs befindet, wobei das Objekt durch Berechnen einer Verteilung von Objektdetektionen erfasst wird, Erzeugen einer Vielzahl von Segmenten von LiDAR-Datenpunkten unter Verwendung der Verteilung von Objektdetektionen, und Detektieren des Objekts in einer Punktwolke, die durch den LiDAR-Datensatz definiert ist, basierend auf der Vielzahl von Segmenten von LiDAR-Datenpunkten; und Verwenden der Objektdetektion durch die Rechenvorrichtung, um mindestens einen autonomen Fahrbetrieb zu erleichtern.A non-transitory computer-readable medium having instructions stored thereon that, when executed by at least one computing device, cause the at least one computing device to perform operations, comprising: obtaining, by a computing device, a LiDAR data set generated by a LiDAR system of the autonomous vehicle; Using the LiDAR data set and at least one image to detect an object that is in the vicinity of the autonomous vehicle, the object being detected by calculating a distribution of object detections, generating a plurality of segments of LiDAR data points using the distribution of object detections, and detecting the object in a point cloud defined by the LiDAR data set based on the plurality of segments of LiDAR data points; and Using object detection by the computing device to facilitate at least one autonomous driving operation. Verfahren zum Steuern eines autonomen Fahrzeugs, umfassend: Erhalten, durch eine Rechenvorrichtung, eines LiDAR-Datensatzes, der von einem LiDAR-System des autonomen Fahrzeugs erzeugt wird; Verwenden des LiDAR-Datensatzes und mindestens eines Bildes, um ein Objekt zu detektieren, das sich in der Nähe des autonomen Fahrzeugs befindet, wobei das Objekt durch Berechnen einer Verteilung von Objektdetektionen erfasst wird, Erzeugen einer Vielzahl von Segmenten von LiDAR-Datenpunkten unter Verwendung der Verteilung von Objektdetektionen, Zusammenführen der Vielzahl von Segmenten von LiDAR-Datenpunkten, um zusammengeführte Segmente zu erzeugen, und Detektieren des Objekts in einer Punktwolke, die durch den LiDAR-Datensatz basierend auf den zusammengeführten Segmenten definiert ist; Verwenden der Objektdetektion durch die Rechenvorrichtung, um mindestens einen autonomen Fahrbetrieb zu erleichtern.A method for controlling an autonomous vehicle, comprising: obtaining, by a computing device, a LiDAR dataset generated by a LiDAR system of the autonomous vehicle; Using the LiDAR data set and at least one image to detect an object that is in the vicinity of the autonomous vehicle, the object being detected by calculating a distribution of object detections, generating a multitude of segments of LiDAR data points using the distribution of object detections, merging the plurality of segments of LiDAR data points to produce merged segments, and detecting the object in a point cloud defined by the LiDAR dataset based on the merged segments; Using object detection by the computing device to facilitate at least one autonomous driving operation. Verfahren nach Anspruch 88, ferner umfassend das Erhalten, durch die Rechenvorrichtung, mindestens eines Bildes, das zu einem Zeitpunkt erfasst wurde, zu dem ein Sensor des LiDAR-Systems über eine Mitte eines Kamerasichtfeldes schweifen gelassen wurde, wobei das mindestens eine Bild zusätzlich zu dem LiDAR-Datensatz verwendet wird, um das Objekt zu detektieren.procedure after Claim 88 , further comprising obtaining, by the computing device, at least one image captured at a time when a sensor of the LiDAR system was swept across a center of a camera field of view, the at least one image used in addition to the LiDAR dataset is used to detect the object. Verfahren nach Anspruch 88, wobei die mindestens eine autonome Fahroperation eine Objektverfolgungsoperation, eine Objekttrajektorienvorhersageoperation, eine Fahrzeugtrajektorienbestimmungsoperation oder eine Kollisionsvermeidungsoperation umfasst.procedure after Claim 88 , wherein the at least one autonomous driving operation comprises an object tracking operation, an object trajectory prediction operation, a vehicle trajectory determination operation, or a collision avoidance operation. Verfahren nach Anspruch 88, wobei die Verteilung von Objektdetektionen basierend auf (a) einer Wahrscheinlichkeitsverteilung von Pixeln des mindestens einen Bildes berechnet wird, an die ein Punkt des LiDAR-Datensatzes projiziert werden kann, und (b) eine Wahrscheinlichkeit, dass der Punkt nicht in eine beliebige Bilderfassung projiziert.procedure after Claim 88 , wherein the distribution of object detections is calculated based on (a) a probability distribution of pixels of the at least one image to which a point of the LiDAR data set can be projected, and (b) a probability that the point does not project into any image acquisition . Verfahren nach Anspruch 88, wobei die zusammengeführten Segmente erzeugt werden durch: Auswählen von Paaren von Segmenten aus der Vielzahl von Segmenten von LiDAR-Datenpunkten; Berechnen von Merkmalen für jedes Paar von Segmenten basierend auf Attributen der Segmente, die in dem Paar enthalten sind; Erzeugen, für jedes Paar von Segmenten, einer Wahrscheinlichkeit, dass die Segmente, die in dem Paar enthalten sind, basierend auf den Merkmalen zusammengeführt werden sollten; und Zusammenführen der Vielzahl von Segmenten von LiDAR-Datenpunkten basierend auf den Wahrscheinlichkeiten, die für die Paare von Segmenten erzeugt werden.procedure after Claim 88 , wherein the merged segments are generated by: selecting pairs of segments from the plurality of segments of LiDAR data points; computing features for each pair of segments based on attributes of the segments included in the pair; generating, for each pair of segments, a probability that the segments included in the pair should be merged based on the features; and merging the plurality of segments of LiDAR data points based on the probabilities generated for the pairs of segments. Verfahren nach Anspruch 92, ferner umfassend das Filtern der Paare von Segmenten, um Paare von Segmenten zu entfernen, die Schwerpunkt-zu-Schwerpunkt-Abstände aufweisen, die größer als ein Schwellenwert sind.procedure after Claim 92 , further comprising filtering the pairs of segments to remove pairs of segments having centroid-to-centroid distances greater than a threshold. Verfahren nach Anspruch 92, wobei die Attribute einen Durchschnitt aus einer Vielzahl von Wahrscheinlichkeitsverteilungen umfassen, die für die LiDAR-Datenpunkte berechnet wurden, die in einem gegebenen Segment der Vielzahl von Segmenten von LiDAR-Datenpunkten enthalten sind, wobei jede Wahrscheinlichkeitsverteilung detektierte Objekte spezifiziert, in denen ein gegebener LiDAR-Datenpunkt wahrscheinlich ist.procedure after Claim 92 , wherein the attributes comprise an average of a plurality of probability distributions calculated for the LiDAR data points contained in a given segment of the plurality of segments of LiDAR data points, each probability distribution specifying detected objects in which a given LiDAR -data point is probable. Verfahren nach Anspruch 94, wobei die Merkmale eine Differenz zwischen dem Durchschnitt der Wahrscheinlichkeitsverteilungen, die für die LiDAR-Datenpunkte berechnet wurden, die in einem ersten Segment der Vielzahl von Segmenten von LiDAR-Datenpunkten enthalten sind, und dem Durchschnitt der Wahrscheinlichkeitsverteilungen, die für die LiDAR-Datenpunkte berechnet wurden, die in einem zweiten Segment der Vielzahl von Segmenten von LiDAR-Datenpunkten enthalten sind, aufweisen können.procedure after Claim 94 , wherein the features are a difference between the average of the probability distributions calculated for the LiDAR data points included in a first segment of the plurality of segments of LiDAR data points and the average of the probability distributions calculated for the LiDAR data points included in a second segment of the plurality of segments of LiDAR data points. Verfahren nach Anspruch 92, wobei die Attribute mindestens eine von einer 2D-Region, die die LiDAR-Datenpunkte in einer gegebenen Segmentabdeckung zeigen, einem Prozentsatz von LiDAR-Datenpunkten, die in dem gegebenen Segment enthalten sind, die auf einer Straße liegen, einem Prozentsatz von LiDAR-Datenpunkten, die in dem gegebenen Segment enthalten sind, die abseits einer Straße liegen, und einer Gesamtzahl von Fahrspuren, die das gegebene Segment zumindest teilweise überlappt, aufweisen können.procedure after Claim 92 , wherein the attributes are at least one of a 2D region showing the LiDAR data points in a given segment coverage, a percentage of LiDAR data points contained in the given segment that lie on a road, a percentage of LiDAR data points included in the given segment that may be off-road and a total number of lanes that the given segment at least partially overlaps. Verfahren nach Anspruch 92, wobei die Merkmale eine Differenz von Straßenverhältnissen, Unterschiede in Geländeverhältnissen, Bereichskompatibilität, Spurkompatibilität, eine Differenz zwischen einer Gesamtanzahl von Fahrspuren, die ein erstes Segment von LiDAR-Datenpunkten zumindest teilweise überlappt, und einer Gesamtanzahl von Fahrspuren, die ein zweites Segment von LiDAR-Datenpunkten zumindest teilweise überlappt, eine Differenz oder einen Abstand in der Höhe zwischen Segmenten von LiDAR-Datenpunkten, eine Maskenkompatibilität, eine Differenz der Objekttypverteilungen und eine Objekttyp-Kompatibilität aufweisen können.procedure after Claim 92 , wherein the characteristics include a difference in road conditions, differences in terrain conditions, area compatibility, lane compatibility, a difference between a total number of lanes that a first segment of LiDAR data points at least partially overlaps, and a total number of lanes that a second segment of LiDAR data points Data points at least partially overlapped, a difference or spacing in height between segments of LiDAR data points, mask compatibility, a difference in object type distributions, and object type compatibility. System, umfassend: einen Prozessor; ein nichtflüchtiges computerlesbares Speichermedium, das Programmieranweisungen umfasst, die konfiguriert sind, den Prozessor zu veranlassen, ein Verfahren zum Betreiben eines autonomen Fahrzeugs zu implementieren, wobei die Programmieranweisungen Anweisungen umfassen zum: Erhalten eines LiDAR-Datensatzes, der von einem LiDAR-System des autonomen Fahrzeugs erzeugt wird, Verwenden des LiDAR-Datensatzes und mindestens eines Bildes, um ein Objekt zu detektieren, das sich in der Nähe des autonomen Fahrzeugs befindet, wobei das Objekt durch Berechnen einer Verteilung von Objektdetektionen, dass jeder Punkt des LiDAR-Datensatzes wahrscheinlich ist, Erzeugen einer Vielzahl von Segmenten von LiDAR-Datenpunkten unter Verwendung der Verteilung von Objektdetektionen, Zusammenführen der Vielzahl von Segmenten von LiDAR-Datenpunkten, um zusammengeführte Segmente zu erzeugen, und Detektieren des Objekts in einer Punktwolke, die durch den LiDAR-Datensatz basierend auf den zusammengeführten Segmenten definiert ist; Verwenden der Objektdetektion, um mindestens einen autonomen Fahrbetrieb zu erleichtern.A system, comprising: a processor; a non-transitory computer-readable storage medium comprising programming instructions configured to cause the processor to implement a method of operating an autonomous vehicle, the programming instructions comprising instructions to: obtain a LiDAR data set generated by a LiDAR system of the autonomous vehicle is generated, using the LiDAR data set and at least one image to detect an object that is in the vicinity of the autonomous vehicle, the object being generated by calculating a distribution of object detections that each point of the LiDAR data set is likely to generate a plurality of segments of LiDAR data points using the distribution of object detections, merging the plurality of segments of LiDAR data points to generate merged segments, and detecting the object in a point cloud defined by the LiDAR data set based on the merged segments; Using object detection to facilitate at least one autonomous driving operation. System nach Anspruch 98, wobei die Programmieranweisungen ferner Anweisungen umfassen, um mindestens ein Bild zu erhalten, das zu einem Zeitpunkt erfasst wurde, zu dem ein Sensor des LiDAR-Systems über eine Mitte eines Kamerasichtfeldes schweifen gelassen wurde, wobei das mindestens eine Bild zusätzlich zu dem LiDAR-Datensatz verwendet wird, um das Objekt zu detektieren.system after Claim 98 , the programming instructions further comprising instructions to obtain at least one image captured at a time when a sensor of the LiDAR system was swept across a center of a camera field of view, the at least one image additional to the LiDAR dataset used to detect the object. System nach Anspruch 98, wobei die mindestens eine autonome Fahroperation eine Objektverfolgungsoperation, eine Objekttrajektorienvorhersageoperation, eine Fahrzeugtrajektorienbestimmungsoperation oder eine Kollisionsvermeidungsoperation umfasst.system after Claim 98 , wherein the at least one autonomous driving operation comprises an object tracking operation, an object trajectory prediction operation, a vehicle trajectory determination operation, or a collision avoidance operation. System nach Anspruch 98, wobei die Verteilung von Objektdetektionen basierend auf (a) einer Wahrscheinlichkeitsverteilung von Pixeln des mindestens einen Bildes berechnet wird, an die ein Punkt des LiDAR-Datensatzes projiziert werden kann, und (b) eine Wahrscheinlichkeit, dass der Punkt in keine der Bilderfassungen projiziert.system after Claim 98 , wherein the distribution of object detections is calculated based on (a) a probability distribution of pixels of the at least one image to which a point of the LiDAR dataset can be projected, and (b) a probability that the point does not project into any of the image acquisitions. System nach Anspruch 98, wobei die zusammengeführten Segmente erzeugt werden durch: Auswählen von Paaren von Segmenten aus der Vielzahl von Segmenten von LiDAR-Datenpunkten; Berechnen von Merkmalen für jedes Paar von Segmenten basierend auf Attributen der Segmente, die in dem Paar enthalten sind; Erzeugen, für jedes Paar von Segmenten, einer Wahrscheinlichkeit, dass die Segmente, die in dem Paar enthalten sind, basierend auf den Merkmalen zusammengeführt werden sollten; und Zusammenführen der Vielzahl von Segmenten von LiDAR-Datenpunkten basierend auf den Wahrscheinlichkeiten, die für die Paare von Segmenten erzeugt werden.system after Claim 98 , wherein the merged segments are generated by: selecting pairs of segments from the plurality of segments of LiDAR data points; computing features for each pair of segments based on attributes of the segments included in the pair; generating, for each pair of segments, a probability that the segments included in the pair should be merged based on the features; and merging the plurality of segments of LiDAR data points based on the probabilities generated for the pairs of segments. System nach Anspruch 102, wobei die Programmieranweisungen ferner Anweisungen zum Filtern der Paare von Segmenten umfassen, um Paare von Segmenten zu entfernen, die Schwerpunkt-zu-Schwerpunkt-Abstände aufweisen, die größer als ein Schwellenwert sind.system after Claim 102 wherein the programming instructions further comprise instructions for filtering the pairs of segments to remove pairs of segments having centroid-to-centroid distances greater than a threshold. System nach Anspruch 102, wobei die Attribute einen Durchschnitt aus einer Vielzahl von Wahrscheinlichkeitsverteilungen umfassen, die für die LiDAR-Datenpunkte berechnet wurden, die in einem gegebenen Segment der Vielzahl von Segmenten von LiDAR-Datenpunkten enthalten waren, wobei jede Wahrscheinlichkeitsverteilung detektierte Objekte spezifiziert, in denen ein gegebener LiDAR-Datenpunkt wahrscheinlich ist.system after Claim 102 , wherein the attributes comprise an average of a plurality of probability distributions calculated for the LiDAR data points that were contained in a given segment of the plurality of segments of LiDAR data points, each probability distribution specifying detected objects in which a given LiDAR -data point is probable. System nach Anspruch 104, wobei die Merkmale eine Differenz zwischen dem Durchschnitt der Wahrscheinlichkeitsverteilungen, die für die LiDAR-Datenpunkte berechnet wurden, die in einem ersten Segment der Vielzahl von Segmenten von LiDAR-Datenpunkten enthalten sind, und dem Durchschnitt der Wahrscheinlichkeitsverteilungen, die für die LiDAR-Datenpunkte berechnet wurden, die in einem zweiten Segment der Vielzahl von Segmenten von LiDAR-Datenpunkten enthalten sind, umfassen.system after Claim 104 , wherein the features are a difference between the average of the probability distributions calculated for the LiDAR data points included in a first segment of the plurality of segments of LiDAR data points and the average of the probability distributions calculated for the LiDAR data points included in a second segment of the plurality of segments of LiDAR data points. System nach Anspruch 102, wobei die Attribute mindestens eine von einer 2D-Region, die die LiDAR-Datenpunkte in einer gegebenen Segmentabdeckung zeigen, einem Prozentsatz von LiDAR-Datenpunkten, die in dem gegebenen Segment enthalten sind, die auf einer Straße liegen, einem Prozentsatz von LiDAR-Datenpunkten, die in dem gegebenen Segment enthalten sind, die abseits einer Straße liegen, und einer Gesamtzahl von Fahrspuren, die das gegebene Segment zumindest teilweise überlappt, umfassen.system after Claim 102 , wherein the attributes are at least one of a 2D region showing the LiDAR data points in a given segment coverage, a percentage of LiDAR data points contained in the given segment that lie on a road, a percentage of LiDAR data points included in the given segment that are off-road and a total number of lanes that the given segment at least partially overlaps. System nach Anspruch 102, wobei die Merkmale mindestens einen von Differenz in Straßenverhältnissen, Unterschied in Geländeverhältnissen, Bereichskompatibilität, Fahrspurkompatibilität, einer Differenz zwischen einer Gesamtanzahl von Fahrspuren, die ein erstes Segment von LiDAR-Datenpunkten zumindest teilweise überlappt, und einer Gesamtanzahl von Spuren, die ein zweites Segment von LiDAR-Datenpunkten zumindest teilweise überlappt, eine Differenz oder einen Abstand in der Höhe zwischen Segmenten von LiDAR-Datenpunkten eine Maskenkompatibilität, eine Differenz der Objekttypverteilungen und eine Objekttyp-Kompatibilität, aufweisen können.system after Claim 102 , wherein the characteristics are at least one of difference in road conditions, difference in terrain conditions, area compatibility, lane compatibility, a difference between a total number of lanes that a first segment of LiDAR data points at least partially overlaps, and a total number of lanes that a second segment of LiDAR data points at least partially overlapped, a difference or distance in height between segments of LiDAR data points, mask compatibility, a difference in object type distributions, and object type compatibility. Nichtflüchtiges computerlesbares Medium mit darauf gespeicherten Anweisungen, die, wenn sie von mindestens einer Rechenvorrichtung ausgeführt werden, bewirken, dass die mindestens eine Rechenvorrichtung Operationen durchführt, die Folgendes umfassen: Erhalten eines LiDAR-Datensatzes, der von einem LiDAR-System des autonomen Fahrzeugs erzeugt wird; Verwenden des LiDAR-Datensatzes und mindestens eines Bildes zum Detektieren eines Objekts, das sich in der Nähe des autonomen Fahrzeugs befindet, wobei das Objekt detektiert wird durch Berechnen einer Verteilung von Objektdetektionen, dass jeder Punkt des LiDAR-Datensatzes wahrscheinlich ist, Erzeugen einer Vielzahl von Segmenten von LiDAR-Datenpunkten unter Verwendung der Verteilung von Objektdetektionen, Zusammenführen der Vielzahl von Segmenten von LiDAR-Datenpunkten, um zusammengeführte Segmente zu erzeugen, und Detektieren des Objekts in einer Punktwolke, die durch den LiDAR-Datensatz basierend auf den zusammengeführten Segmenten definiert ist; Verwenden der Objektdetektion, um mindestens einen autonomen Fahrbetrieb zu erleichtern.A non-transitory computer-readable medium having instructions stored thereon that, when executed by at least one computing device, cause the at least one computing device to perform operations, comprising: obtaining a LiDAR data set generated by a LiDAR system of the autonomous vehicle ; Using the LiDAR data set and at least one image to detect an object that is in the vicinity of the autonomous vehicle, the object being detected by calculating a distribution of object detections that each point of the LiDAR data set is likely to generate a plurality of segments of LiDAR data points using the distribution of object detections, merging the plurality of segments of LiDAR data points to generate merged segments, and detecting the object in a point cloud defined by the LiDAR data set based on the merged segments; Using object detection to facilitate at least one autonomous driving operation. Verfahren zum Steuern eines autonomen Fahrzeugs, umfassend: Erhalten, durch eine Rechenvorrichtung, eines LiDAR-Datensatzes, der von einem LiDAR-System des autonomen Fahrzeugs erzeugt wird; Verwenden, durch die Rechenvorrichtung, des LiDAR-Datensatzes und mindestens eines Bildes, um ein Objekt zu detektieren, das sich in der Nähe des autonomen Fahrzeugs befindet, wobei das Objekt durch Ausführen der folgenden Operationen erfasst wird, Berechnen einer Verteilung von Objektdetektionen, dass jeder Punkt des LiDAR-Datensatzes wahrscheinlich ist, Erzeugen einer Vielzahl von Segmenten von LiDAR-Datenpunkten unter Verwendung der Verteilung von Objektdetektionen, Zusammenführen der Vielzahl von Segmenten von LiDAR-Datenpunkten, um zusammengeführte Segmente zu erzeugen; und Detektieren des Objekts in einer Punktwolke, die durch den LiDAR-Datensatz definiert ist, basierend auf den verbleibenden der zusammengeführten Segmente, wobei das Detektieren das Erhalten von Informationen für eine gegebene Detektionsmaske und ein gegebenes zusammengeführtes Segment der zusammengeführten Segmente umfasst; Verwenden der Objektdetektion durch die Rechenvorrichtung, um mindestens einen autonomen Fahrbetrieb zu erleichtern.A method for controlling an autonomous vehicle, comprising: obtaining, by a computing device, a LiDAR dataset generated by a LiDAR system of the autonomous vehicle; using, by the computing device, the LiDAR data set and at least one image to detect an object that is in the vicinity of the autonomous vehicle, wherein the object is detected by performing the following operations, Calculating a distribution of object detections that every point of the LiDAR data set is likely to generating a multitude of segments of LiDAR data points using the distribution of object detections, merging the plurality of segments of LiDAR data points to create merged segments; and detecting the object in a point cloud defined by the LiDAR dataset based on the remaining ones of the merged segments, the detecting comprising obtaining information for a given detection mask and a given merged segment of the merged segments; Using object detection by the computing device to facilitate at least one autonomous driving operation. Verfahren nach Anspruch 109, ferner umfassend das Erhalten, durch die Rechenvorrichtung, mindestens eines Bildes, das zu einem Zeitpunkt erfasst wurde, zu dem ein Sensor des LiDAR-Systems über eine Mitte eines Kamerasichtfeldes schweifen gelassen wurde, wobei das mindestens eine Bild zusätzlich zu dem LiDAR-Datensatz verwendet wird, um das Objekt zu detektieren.procedure after Claim 109 , further comprising obtaining, by the computing device, at least one image captured at a time when a sensor of the LiDAR system was swept across a center of a camera field of view, the at least one image used in addition to the LiDAR dataset is used to detect the object. Verfahren nach Anspruch 109, wobei die mindestens eine autonome Fahroperation eine Objektverfolgungsoperation, eine Objekttrajektorienvorhersageoperation, eine Fahrzeugtrajektorienbestimmungsoperation oder eine Kollisionsvermeidungsoperation umfasst.procedure after Claim 109 , wherein the at least one autonomous driving operation comprises an object tracking operation, an object trajectory prediction operation, a vehicle trajectory determination operation, or a collision avoidance operation. Verfahren nach Anspruch 109, wobei die Verteilung von Objektdetektionen basierend auf (a) einer Wahrscheinlichkeitsverteilung von Pixeln des mindestens einen Bildes berechnet wird, an die ein Punkt des LiDAR-Datensatzes projiziert werden kann, und (b) eine Wahrscheinlichkeit, dass der Punkt in keine der Bilderfassungen projiziert.procedure after Claim 109 , wherein the distribution of object detections is calculated based on (a) a probability distribution of pixels of the at least one image to which a point of the LiDAR dataset can be projected, and (b) a probability that the point does not project into any of the image acquisitions. Verfahren nach Anspruch 109, wobei die Informationen mindestens eine von den Größen Pm, die eine Anzahl von Punkten eines LiDAR-Datensatzes darstellt, die in die gegebene Detektionsmaske hineinragen, Si, die eine Anzahl von Punkten darstellt, die das gegebene zusammengeführte Segment bilden, P m s _ ,
Figure DE112021005607T5_0054
die eine Anzahl von Punkten in dem gegebenen zusammengeführten Segment darstellt, die in die gegebene Detektionsmaske hineinragen, eine Höhe des gegebenen zusammengeführten Segments, eine Länge ls des gegebenen zusammengeführten Segments und eine Breite ws des gegebenen zusammengeführten Segments aufweisen kann.
procedure after Claim 109 , the information being at least one of P m , representing a number of points of a LiDAR dataset that protrude into the given detection mask, S i , representing a number of points forming the given merged segment, P m s _ ,
Figure DE112021005607T5_0054
which represents a number of points in the given merged segment that protrude into the given detection mask, a height of the given merged segment, a length l s of the given merged segment and a width w s of the given merged segment.
Verfahren nach Anspruch 109, wobei das Detektieren ferner das Bestimmen mindestens eines Clustermerkmals basierend auf den Informationen umfasst.procedure after Claim 109 , wherein the detecting further comprises determining at least one cluster feature based on the information. Verfahren nach Anspruch 114, wobei das mindestens eine Cluster-Merkmal ein Cluster-Merkmal U umfasst, das basierend auf einer Anzahl von Punkten eines LiDAR-Datensatzes bestimmt wird, die in die gegebene Detektionsmaske projizieren, und eine Anzahl von Punkten, die das gegebene zusammengeführte Segment bilden.procedure after Claim 114 , wherein the at least one cluster feature comprises a cluster feature U determined based on a number of points of a LiDAR data set that project into the given detection mask and a number of points that form the given merged segment. Verfahren nach Anspruch 114, wobei das mindestens eine Clustermerkmal ein Clustermerkmal V umfasst, das basierend auf einer Anzahl von Punkten in dem gegebenen zusammengeführten Segment bestimmt wird, das in die gegebene Detektionsmaske hineinragt, und einer Anzahl von Punkten eines LiDAR-Datensatzes, die in die gegebene Detektionsmaske hineinragen.procedure after Claim 114 , wherein the at least one cluster feature comprises a cluster feature V determined based on a number of points in the given merged segment that extends into the given detection mask and a number of points of a LiDAR dataset that extends into the given detection mask. Verfahren nach Anspruch 114, wobei das mindestens eine Cluster-Merkmal ein Cluster-Merkmal H umfasst, das eine Clusterhöhe darstellt, ein Cluster-Merkmal L, das eine Clusterlänge darstellt, ein Cluster-Merkmal LTW, das ein Längen-zu-Breiten-Verhältnis für ein Cluster darstellt, oder ein Cluster-Merkmal C, das einen Zylinder-Konvolutions-(oder Fit-) Score von geclusterten LiDAR-Datenpunkten darstellt.procedure after Claim 114 , wherein the at least one cluster feature comprises a cluster feature H representing a cluster height, a cluster feature L representing a cluster length, a cluster feature LTW representing a length-to-width ratio for a cluster , or a cluster feature C representing a cylinder convolution (or fit) score of clustered LiDAR data points. Verfahren nach Anspruch 109, wobei das Detektieren ferner das Berechnen eines Projektionswerts PS basierend auf dem mindestens einen Cluster-Merkmal umfasst.procedure after Claim 109 , wherein the detecting further comprises calculating a projection value PS based on the at least one cluster feature. Verfahren nach Anspruch 118, wobei der Projektionswert PS ein Produkt von zwei oder mehr Clustermerkmalen ist.procedure after Claim 118 , where the projection value PS is a product of two or more cluster features. Verfahren nach Anspruch 119, wobei das Detektieren ferner das Verwenden des Projektionswerts PS umfasst, um zu verifizieren, dass das gegebene zusammengeführte Segment Teil eines bestimmten detektierten Objekts ist, das der gegebenen Detektionsmaske zugeordnet ist.procedure after Claim 119 , wherein the detecting further comprises using the projection value PS to verify that the given merged segment is part of a particular detected object associated with the given detection mask. Verfahren nach Anspruch 120, wobei eine Verifizierung durchgeführt wird, dass das gegebene zusammengeführte Segment Teil eines bestimmten detektierten Objekts ist, das der gegebenen Detektionsmaske zugeordnet ist, wenn der Projektionswert PS einen Schwellenwert überschreitet oder einen Wert aufweist, der größer ist als andere Projektionswerte, die für andere zusammengeführte Segmente mit Punkten in der gegebenen Detektionsmaske bestimmt werden.procedure after Claim 120 , wherein a verification is performed that the given merged segment is part of a particular detected object associated with the given detection mask if the projection value PS exceeds a threshold or has a value greater than other projection values used for other merged segments can be determined with points in the given detection mask. System, umfassend: einen Prozessor; ein nichtflüchtiges computerlesbares Speichermedium, das Programmieranweisungen umfasst, die konfiguriert sind, den Prozessor zu veranlassen, ein Verfahren zum Betreiben eines autonomen Fahrzeugs zu implementieren, wobei die Programmieranweisungen Anweisungen umfassen zum: Erhalten eines LiDAR-Datensatzes, der von einem LiDAR-System des autonomen Fahrzeugs erzeugt wird; Verwenden des LiDAR-Datensatzes und mindestens eines Bildes, um ein Objekt zu detektieren, das sich in der Nähe des autonomen Fahrzeugs befindet, wobei das Objekt durch Ausführen der folgenden Operationen detektiert wird, Berechnen einer Verteilung von Objektdetektionen, dass jeder Punkt des LiDAR-Datensatzes wahrscheinlich ist, Erzeugen einer Vielzahl von Segmenten von LiDAR-Datenpunkten unter Verwendung der Verteilung von Objektdetektionen, Zusammenführen der Vielzahl von Segmenten von LiDAR-Datenpunkten, um zusammengeführte Segmente zu erzeugen, und Detektieren des Objekts in einer Punktwolke, die durch den LiDAR-Datensatz definiert ist, basierend auf den zusammengeführten Segmenten, wobei das Detektieren das Erhalten von Informationen für eine gegebene Detektionsmaske und ein gegebenes zusammengeführtes Segment der zusammengeführten Segmente umfasst; und Verwenden der Objektdetektion, um mindestens einen autonomen Fahrbetrieb zu erleichtern.System comprising: a processor; a non-transitory computer-readable storage medium comprising programming instructions configured to cause the processor to implement a method of operating an autonomous vehicle, the programming instructions comprising instructions to: obtaining a LiDAR dataset generated by a LiDAR system of the autonomous vehicle; Using the LiDAR data set and at least one image to detect an object that is in the vicinity of the autonomous vehicle, the object being detected by performing the following operations, Calculating a distribution of object detections that every point of the LiDAR data set is likely to generating a multitude of segments of LiDAR data points using the distribution of object detections, merging the plurality of segments of LiDAR data points to produce merged segments, and detecting the object in a point cloud defined by the LiDAR data set based on the merged segments, the detecting comprising obtaining information for a given detection mask and a given merged segment of the merged segments; and using the object detection to facilitate at least one autonomous driving operation. System nach Anspruch 122, wobei die Programmieranweisungen Anweisungen umfassen, um mindestens ein Bild zu erhalten, das zu einem Zeitpunkt erfasst wurde, zu dem ein Sensor des LiDAR-Systems über eine Mitte eines Kamerasichtfeldes schweifen gelassen wurde, wobei das mindestens eine Bild zusätzlich zu dem LiDAR-Datensatz verwendet wird, um das Objekt zu detektieren.system after Claim 122 , wherein the programming instructions include instructions to obtain at least one image captured at a time when a sensor of the LiDAR system was swept across a center of a camera field of view, using the at least one image in addition to the LiDAR data set is used to detect the object. System nach Anspruch 122, wobei die mindestens eine autonome Fahroperation eine Objektverfolgungsoperation, eine Objekttrajektorienvorhersageoperation, eine Fahrzeugtrajektorienbestimmungsoperation oder eine Kollisionsvermeidungsoperation umfasst.system after Claim 122 , wherein the at least one autonomous driving operation comprises an object tracking operation, an object trajectory prediction operation, a vehicle trajectory determination operation, or a collision avoidance operation. System nach Anspruch 122, wobei die Verteilung von Objektdetektionen basierend auf (a) einer Wahrscheinlichkeitsverteilung von Pixeln des mindestens einen Bildes berechnet wird, an die ein Punkt des LiDAR-Datensatzes hineinragen kann, und (b) eine Wahrscheinlichkeit, dass der Punkt nicht in keine der Bilderfassungen projiziert.system after Claim 122 , wherein the distribution of object detections is calculated based on (a) a probability distribution of pixels of the at least one image to which a point of the LiDAR data set can protrude, and (b) a probability that the point does not project into any of the image acquisitions. System nach Anspruch 122, wobei die Informationen mindestens eine von Folgenden umfassen: Pm darstellend eine Anzahl von Punkten eines LiDAR-Datensatzes, die in die gegebene Detektionsmaske hineinragen, Si eine Anzahl von Punkten darstellend, die das gegebene zusammengeführte Segment bilden, Ps m eine Anzahl von Punkten in dem gegebenen zusammengeführten Segment darstellend, das in die gegebene Detektionsmaske hineinragt, eine Höhe des gegebenen zusammengeführten Segments, eine Länge Is des gegebenen zusammengeführten Segments und eine Breite ws des gegebenen zusammengeführten Segments.system after Claim 122 , wherein the information comprises at least one of: P m representing a number of points of a LiDAR data set that intrude into the given detection mask, S i representing a number of points forming the given merged segment, P s m a number of Representing points in the given merged segment that protrude into the given detection mask, a height of the given merged segment, a length I s of the given merged segment, and a width w s of the given merged segment. System nach Anspruch 126, wobei das Detektieren ferner das Bestimmen mindestens eines Clustermerkmals basierend auf den Informationen umfasst.system after Claim 126 , wherein the detecting further comprises determining at least one cluster feature based on the information. System nach Anspruch 127, wobei das mindestens eine Cluster-Merkmal ein Cluster-Merkmal U umfasst, das basierend auf einer Anzahl von Punkten eines LiDAR-Datensatzes bestimmt wird, die in die gegebene Detektionsmaske hineinragen, und eine Anzahl von Punkten, die das gegebene zusammengeführte Segment bilden.system after Claim 127 , wherein the at least one cluster feature comprises a cluster feature U, which is determined based on a number of points of a LiDAR data set that protrude into the given detection mask and a number of points that form the given merged segment. System nach Anspruch 128, wobei das mindestens eine Clustermerkmal ein Clustermerkmal V umfasst, das basierend auf einer Anzahl von Punkten in dem gegebenen zusammengeführten Segment bestimmt wird, das in die gegebene Detektionsmaske hineinragt, und einer Anzahl von Punkten eines LiDAR-Datensatzes, die in die gegebene Detektionsmaske projizieren.system after Claim 128 , wherein the at least one cluster feature comprises a cluster feature V determined based on a number of points in the given merged segment that protrudes into the given detection mask and a number of points of a LiDAR dataset that project into the given detection mask. System nach Anspruch 128, wobei das mindestens eine Cluster-Merkmal ein Cluster-Merkmal H umfasst, das eine Clusterhöhe darstellt, ein Cluster-Merkmal L, das eine Clusterlänge darstellt, ein Cluster-Merkmal LTW, das ein Längen-zu-Breiten-Verhältnis für ein Cluster darstellt, oder ein Cluster-Merkmal C, das einen Zylinder-Konvolutions-(oder Fit-) Score von geclusterten LiDAR-Datenpunkten darstellt.system after Claim 128 , wherein the at least one cluster feature comprises a cluster feature H representing a cluster height, a cluster feature L representing a cluster length, a cluster feature LTW representing a length-to-width ratio for a cluster , or a cluster feature C representing a cylinder convolution (or fit) score of clustered LiDAR data points. System nach Anspruch 126, wobei das Detektieren ferner das Berechnen eines Projektionswerts PS basierend auf dem mindestens einen Cluster-Merkmal umfasst.system after Claim 126 , wherein the detecting further comprises calculating a projection value PS based on the at least one cluster feature. System nach Anspruch 132, wobei der Projektionswert PS ein Produkt von zwei oder mehr Clustermerkmalen ist.system after Claim 132 , where the projection value PS is a product of two or more cluster features. System nach Anspruch 132, wobei das Detektieren ferner das Verwenden des Projektionswerts PS umfasst, um zu verifizieren, dass das gegebene zusammengeführte Segment Teil eines bestimmten detektierten Objekts ist, das der gegebenen Detektionsmaske zugeordnet ist.system after Claim 132 , wherein the detecting further comprises using the projection value PS to verify that the given merged segment is part of a particular detected object associated with the given detection mask. System nach Anspruch 133, wobei eine Verifizierung durchgeführt wird, dass das gegebene zusammengeführte Segment Teil eines bestimmten detektierten Objekts ist, das der gegebenen Detektionsmaske zugeordnet ist, wenn der Projektionswert PS einen Schwellenwert überschreitet oder einen Wert aufweist, der größer ist als andere Projektionswerte, die für andere zusammengeführte Segmente mit Punkten in der gegebenen Detektionsmaske bestimmt werden.system after Claim 133 , wherein a verification is performed that the given merged segment is part of a particular detected object associated with the given detection mask if the projection value PS exceeds a threshold or has a value greater than other projection values used for other merged segments can be determined with points in the given detection mask. Nichtflüchtiges computerlesbares Medium mit darauf gespeicherten Anweisungen, die, wenn sie von mindestens einer Rechenvorrichtung ausgeführt werden, bewirken, dass die mindestens eine Rechenvorrichtung Operationen durchführt, die Folgendes umfassen: Erhalten eines LiDAR-Datensatzes, der von einem LiDAR-System eines autonomen Fahrzeugs erzeugt wird; Verwenden des LiDAR-Datensatzes und mindestens eines Bildes, um ein Objekt zu detektieren, das sich in der Nähe des autonomen Fahrzeugs befindet, wobei das Objekt durch Durchführen der folgenden Operationen erfasst wird: Berechnen einer Verteilung von Objektdetektionen, dass jeder Punkt des LiDAR-Datensatzes wahrscheinlich ist, Erzeugen einer Vielzahl von Segmenten von LiDAR-Datenpunkten unter Verwendung der Verteilung von Objektdetektionen, Zusammenführen der Vielzahl von Segmenten von LiDAR-Datenpunkten, um zusammengeführte Segmente zu erzeugen, und Detektieren des Objekts in einer Punktwolke, die durch den LiDAR-Datensatz definiert ist, basierend auf den zusammengeführten Segmenten, wobei das Detektieren das Erhalten von Informationen für eine gegebene Detektionsmaske und ein gegebenes zusammengeführtes Segment der zusammengeführten Segmente umfasst; und Verwenden der Objektdetektion, um mindestens einen autonomen Fahrbetrieb zu erleichtern.A non-transitory computer-readable medium having instructions stored thereon that, when executed by at least one computing device, cause the at least one computing device to perform operations, comprising: obtaining a LiDAR data set generated by an autonomous vehicle LiDAR system ; Using the LiDAR dataset and at least one image to detect an object that is in the vicinity of the autonomous vehicle, wherein the object is detected by performing the following operations: Compute a distribution of object detections that each point of the LiDAR dataset is likely, generating a plurality of segments of LiDAR data points using the distribution of object detections, merging the plurality of segments of LiDAR data points to generate merged segments, and detecting the object in a point cloud defined by the LiDAR data set is based on the merged segments, wherein detecting comprises obtaining information for a given detection mask and a given merged segment of the merged segments; and using the object detection to facilitate at least one autonomous driving operation.
DE112021005607.7T 2020-10-23 2021-10-11 Systems and methods for camera-LiDAR-fused object detection Pending DE112021005607T5 (en)

Applications Claiming Priority (11)

Application Number Priority Date Filing Date Title
US17/078,532 2020-10-23
US17/078,575 US11430224B2 (en) 2020-10-23 2020-10-23 Systems and methods for camera-LiDAR fused object detection with segment filtering
US17/078,543 US11885886B2 (en) 2020-10-23 2020-10-23 Systems and methods for camera-LiDAR fused object detection with LiDAR-to-image detection matching
US17/078,548 US20220128702A1 (en) 2020-10-23 2020-10-23 Systems and methods for camera-lidar fused object detection with local variation segmentation
US17/078,532 US20220128700A1 (en) 2020-10-23 2020-10-23 Systems and methods for camera-lidar fused object detection with point pruning
US17/078,543 2020-10-23
US17/078,561 US20220126873A1 (en) 2020-10-23 2020-10-23 Systems and methods for camera-lidar fused object detection with segment merging
US17/078,575 2020-10-23
US17/078,561 2020-10-23
US17/078,548 2020-10-23
PCT/US2021/054333 WO2022086739A2 (en) 2020-10-23 2021-10-11 Systems and methods for camera-lidar fused object detection

Publications (1)

Publication Number Publication Date
DE112021005607T5 true DE112021005607T5 (en) 2023-08-24

Family

ID=81291747

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112021005607.7T Pending DE112021005607T5 (en) 2020-10-23 2021-10-11 Systems and methods for camera-LiDAR-fused object detection

Country Status (2)

Country Link
DE (1) DE112021005607T5 (en)
WO (1) WO2022086739A2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230303084A1 (en) * 2022-03-23 2023-09-28 Robert Bosch Gmbh Systems and methods for multi-modal data augmentation for perception tasks in autonomous driving
CN115035184B (en) * 2022-06-13 2024-05-28 浙江大学 Honey pomelo volume estimation method based on lateral multi-view reconstruction
CN117706942B (en) * 2024-02-05 2024-04-26 四川大学 Environment sensing and self-adaptive driving auxiliary electronic control method and system
CN117893412B (en) * 2024-03-15 2024-06-11 北京理工大学 Point cloud data filtering method, device, equipment and storage medium

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10671862B2 (en) * 2018-01-30 2020-06-02 Wipro Limited Method and system for detecting obstacles by autonomous vehicles in real-time
US10726567B2 (en) * 2018-05-03 2020-07-28 Zoox, Inc. Associating LIDAR data and image data
US10491885B1 (en) * 2018-06-13 2019-11-26 Luminar Technologies, Inc. Post-processing by lidar system guided by camera information

Also Published As

Publication number Publication date
WO2022086739A2 (en) 2022-04-28
WO2022086739A3 (en) 2022-06-23

Similar Documents

Publication Publication Date Title
EP3218890B1 (en) Hyper-class augmented and regularized deep learning for fine-grained image classification
DE112020004139T5 (en) MAP CREATION AND LOCALIZATION FOR AUTONOMOUS DRIVING APPLICATIONS
DE112021005607T5 (en) Systems and methods for camera-LiDAR-fused object detection
US11430224B2 (en) Systems and methods for camera-LiDAR fused object detection with segment filtering
DE112019000122T5 (en) REAL-TIME DETECTION OF TRACKS AND LIMITATIONS BY AUTONOMOUS VEHICLES
DE112019006468T5 (en) DETECTION OF DISTANCE TO OBSTACLES IN APPLICATIONS WITH AUTONOMOUS MACHINERY
DE112021006101T5 (en) Systems and methods for object detection with LiDAR decorrelation
DE112020002602T5 (en) MULTI-OBJECT TRACKING USING CORRELATION FILTERS IN VIDEO ANALYSIS APPLICATIONS
DE112020000413T5 (en) DETECTION OF ORIENTATION POINTS USING CURVE FITTING FOR APPLICATIONS FOR AUTONOMOUS DRIVING
DE112019000048T5 (en) DETERMINATION OF A ACCESSIBLE CLEARANCE FOR AUTONOMOUS VEHICLES
DE112020006426T5 (en) SYSTEMS AND METHODS FOR VEHICLE NAVIGATION
DE112019001657T5 (en) SIGNAL PROCESSING DEVICE AND SIGNAL PROCESSING METHOD, PROGRAM AND MOBILE BODY
US20220128702A1 (en) Systems and methods for camera-lidar fused object detection with local variation segmentation
DE102019118999A1 (en) LIDAR-BASED OBJECT DETECTION AND CLASSIFICATION
US20220128700A1 (en) Systems and methods for camera-lidar fused object detection with point pruning
US20220126873A1 (en) Systems and methods for camera-lidar fused object detection with segment merging
DE102019115455A1 (en) FOCUS-BASED MARKING OF SENSOR DATA
US11885886B2 (en) Systems and methods for camera-LiDAR fused object detection with LiDAR-to-image detection matching
DE112018003986T5 (en) CONTROL DEVICE, CONTROL PROCEDURE, PROGRAM AND MOBILE UNIT
DE102019214628A1 (en) Validation of surroundings detection using satellite images and SAR radar data
DE102021002798A1 (en) Process for camera-based environment detection
DE112021002680T5 (en) SYSTEMS AND METHODS FOR DETECTING AN OPEN DOOR
DE112021006299T5 (en) Methods and systems for soil segmentation using graph cuts
DE102022126706A1 (en) 3D surface reconstruction with point cloud compression using deep neural networks for autonomous systems and applications
DE102022128030A1 (en) 3D SURFACE RECONSTRUCTION WITH POINT CLOUD COMPENSATION USING ARTIFICIAL INTELLIGENCE FOR AUTONOMOUS SYSTEMS AND APPLICATIONS