DE102019126074A1 - Analysis of an environment of an active optical sensor system - Google Patents
Analysis of an environment of an active optical sensor system Download PDFInfo
- Publication number
- DE102019126074A1 DE102019126074A1 DE102019126074.4A DE102019126074A DE102019126074A1 DE 102019126074 A1 DE102019126074 A1 DE 102019126074A1 DE 102019126074 A DE102019126074 A DE 102019126074A DE 102019126074 A1 DE102019126074 A1 DE 102019126074A1
- Authority
- DE
- Germany
- Prior art keywords
- matrix
- coordinate matrix
- error
- area
- entries
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO 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/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/88—Lidar systems specially adapted for specific applications
- G01S17/93—Lidar systems specially adapted for specific applications for anti-collision purposes
- G01S17/931—Lidar systems specially adapted for specific applications for anti-collision purposes of land vehicles
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO 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/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/88—Lidar systems specially adapted for specific applications
- G01S17/89—Lidar systems specially adapted for specific applications for mapping or imaging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/521—Depth or shape recovery from laser ranging, e.g. using interferometry; from the projection of structured light
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Electromagnetism (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Optics & Photonics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Theoretical Computer Science (AREA)
- Optical Radar Systems And Details Thereof (AREA)
Abstract
Gemäß einem Verfahren zur Analyse einer Umgebung (3) eines aktiven optischen Sensorsystems (2) wird mittels des Sensorsystems (2) eine Punktwolke von Abtastpunkten der Umgebung (3) erzeugt, wobei die Punktwolke eine Koordinatenmatrix für eine Raumdimension aufweist. Mittels einer Recheneinheit (6) wird die Koordinatenmatrix modifiziert, indem Fehlereinträge durch einen ersten Referenzzahlenwert ersetzt werden, ein Integralbild der modifizierten Koordinatenmatrix erzeugt, für jeden Eintrag der modifizierten Koordinatenmatrix ein quadratischer Teilbereich definiert, für jeden Teilbereich abhängig von der Anzahl von ersetzen Fehlereinträgen eine Kennzahl bestimmt, für jeden Eintrag der modifizierten Koordinatenmatrix ein Mittelwert von Einträgen innerhalb des jeweiligen Teilbereichs basierend auf dem Integralbild und der Kennzahl berechnet, um eine gemittelte Koordinatenmatrix zu erzeugen, und für wenigstens einen der Abtastpunkte basierend auf der gemittelten Koordinatenmatrix eine Oberflächennormale (8) bestimmt.According to a method for analyzing an environment (3) of an active optical sensor system (2), a point cloud of scanning points of the environment (3) is generated by means of the sensor system (2), the point cloud having a coordinate matrix for a spatial dimension. The coordinate matrix is modified by means of a computing unit (6) by replacing error entries with a first reference number value, generating an integral image of the modified coordinate matrix, defining a square sub-area for each entry in the modified coordinate matrix, and defining a code number for each sub-area depending on the number of replaced error entries For each entry of the modified coordinate matrix, a mean value of entries within the respective sub-area is calculated based on the integral image and the characteristic number in order to generate an averaged coordinate matrix, and a surface normal (8) is determined for at least one of the sampling points based on the averaged coordinate matrix.
Description
Die vorliegende Erfindung betrifft ein Verfahren zur Analyse einer Umgebung eines aktiven optischen Sensorsystems, wobei mittels eines aktiven optischen Sensorsystems eine geordnete Punktwolke von Abtastpunkten der Umgebung erzeugt wird, wobei die Punktwolke eine Koordinatenmatrix für jede Raumdimension aufweist. Die Erfindung betrifft ferner eine Sensorvorrichtung mit einem aktiven optischen Sensorsystem und einer Recheneinheit, ein Kraftfahrzeug, ein Computerprogramm, sowie ein computerlesbares Speichermedium.The present invention relates to a method for analyzing the surroundings of an active optical sensor system, an ordered point cloud of scanning points of the surroundings being generated by means of an active optical sensor system, the point cloud having a coordinate matrix for each spatial dimension. The invention also relates to a sensor device with an active optical sensor system and a computing unit, a motor vehicle, a computer program, and a computer-readable storage medium.
Aktive optische Sensorsysteme, beispielsweise Lidarsysteme, die mitunter auch als Laserscanner bezeichnet werden, können an Kraftfahrzeugen montiert werden, um vielfältige Funktionen elektronischer Fahrzeugführungssysteme oder Fahrerassistenzsysteme zu realisieren. Diese Funktionen beinhalten beispielsweise Abstandsmessungen, Abstandsregelalgorithmen, Spurhalteassistenten, Objektverfolgungsfunktionen und so weiter.Active optical sensor systems, for example lidar systems, which are sometimes also referred to as laser scanners, can be mounted on motor vehicles in order to implement various functions of electronic vehicle guidance systems or driver assistance systems. These functions include, for example, distance measurements, distance control algorithms, lane keeping assistants, object tracking functions and so on.
Diese Funktionen beruhen in der Regel auf der Analyse der räumlichen Umgebung des Kraftfahrzeugs und somit des aktiven optischen Sensorsystems mittels Verfahren zur Bildverarbeitung. Beispielsweise können Oberflächennormalen, also Normalenvektoren, die auf der Oberfläche von Objekten in der Umgebung senkrecht stehen, zur Analyse der Umgebung beziehungsweise der Objekte herangezogen werden. Verschiedene Objekte zeichnen sich beispielsweise durch charakteristische Richtungen, Richtungsverteilungen oder -verläufe ihrer Oberflächennormalen aus. Beispielsweise können Oberflächennormalen einer Fahrbahnoberfläche über einen großen Bereich hinweg näherungsweise parallel zueinander sein, während Oberflächennormalen eines Kraftfahrzeugs in verschiedene Richtungen zeigen.These functions are usually based on the analysis of the spatial surroundings of the motor vehicle and thus of the active optical sensor system by means of image processing methods. For example, surface normals, that is to say normal vectors that are perpendicular to the surface of objects in the environment, can be used to analyze the environment or the objects. Different objects are characterized, for example, by characteristic directions, directional distributions or courses of their surface normals. For example, surface normals of a road surface can be approximately parallel to one another over a large area, while surface normals of a motor vehicle point in different directions.
Die Veröffentlichung
Aus dem Stand der Technik sind außerdem beispielsweise Laserscanner bekannt, die durch Abtastung der Umgebung für diskrete Abtastrichtungen und eine entsprechende Entfernungsmessung, beispielsweise mittels Lichtlaufzeitmessung, Entfernungsbilder der Umgebung erzeugen können.Laser scanners, for example, are also known from the prior art, which can generate distance images of the environment by scanning the environment for discrete scanning directions and a corresponding distance measurement, for example by means of time-of-flight measurement.
In verschiedenen Anwendungsbereichen, insbesondere im Bereich der Automobiltechnologie, stellt die Rechenkapazität, insbesondere von CPUs, eine begrenzte Ressource dar.In various application areas, especially in the field of automotive technology, the computing capacity, especially of CPUs, is a limited resource.
Zudem kann es beim Abtasten der Umgebung mittels des Laserscanners dazu kommen, dass für einzelne Abtastrichtungen keine Messung vorgenommen werden kann oder eine Messung fehlerhaft ist. Dies kann zu führen, dass die Punktwolke, welche beispielsweise eine Matrixstruktur aufweist, fehlerhafte oder fehlende Einträge aufweist. Solche Einträge können die Genauigkeit der Berechnung der Oberflächennormalen negativ beeinflussen sowie die Effekte von Signalrauschen verstärkt in Erscheinung treten lassen.In addition, when the environment is scanned with the aid of the laser scanner, it may be the case that no measurement can be made for individual scanning directions or that a measurement is faulty. This can lead to the point cloud, which has a matrix structure, for example, having incorrect or missing entries. Such entries can negatively influence the accuracy of the calculation of the surface normals and make the effects of signal noise appear more pronounced.
Vor diesem Hintergrund ist es eine Aufgabe der vorliegenden Erfindung, ein verbessertes Konzept zur Analyse einer Umgebung eines aktiven optischen Sensorsystems anzugeben, das eine genauere Abschätzung von Oberflächennormalen bei geringem oder reduziertem Rechenaufwand ermöglicht.Against this background, it is an object of the present invention to provide an improved concept for analyzing the surroundings of an active optical sensor system which enables a more precise estimation of surface normals with little or less computational effort.
Erfindungsgemäß wird diese Aufgabe gelöst durch den jeweiligen Gegenstand der unabhängigen Ansprüche. Vorteilhafte Weiterbildungen und bevorzugte Ausführungsformen sind Gegenstand der abhängigen Ansprüche.According to the invention, this object is achieved by the respective subject matter of the independent claims. Advantageous developments and preferred embodiments are the subject of the dependent claims.
Das verbesserte Konzept beruht auf der Idee, eine Koordinatenmatrix der Punktwolke zu mitteln, um den Einfluss von Rauschen zu reduzieren und bei der Mittelung fehlende Einträge beziehungsweise fehlende Abtastpunkte oder Fehlereinträge in der Punktwolke explizit zu berücksichtigen.The improved concept is based on the idea of averaging a coordinate matrix of the point cloud in order to reduce the influence of noise and to explicitly take into account missing entries or missing sampling points or error entries in the point cloud when averaging.
Gemäß einem unabhängigen Aspekt des verbesserten Konzepts wird ein Verfahren zur Analyse einer Umgebung eines aktiven optischen Sensorsystems angegeben, wobei mittels des aktiven optischen Sensorsystems, insbesondere mittels des Sensorsystems und einer Recheneinheit, eine geordnete Punktwolke von Abtastpunkten der Umgebung erzeugt wird, wobei die Punktwolke eine Koordinatenmatrix für jede Raumdimension, insbesondere für kartesische Raumdimensionen, aufweist. Mittels der Recheneinheit wird die Koordinatenmatrix modifiziert, indem Fehlereinträge, insbesondere alle Fehlereinträge, in der Koordinatenmatrix jeweils durch einen ersten Referenzzahlenwert ersetzt werden. Mittels der Recheneinheit wird ein Integralbild der modifizierten Koordinatenmatrix erzeugt und für jeden Eintrag der modifizierten Koordinatenmatrix wird ein, insbesondere quadratischer, Teilbereich der modifizierten Koordinatenmatrix definiert. Für jeden der Teilbereiche wird mittels der Recheneinheit abhängig von der Anzahl von in dem jeweiligen Teilbereich ersetzten Fehlereinträgen eine zugehörige Kennzahl bestimmt. Für jeden Eintrag der modifizierten Koordinatenmatrix wird mittels der Recheneinheit ein Mittelwert von Einträgen, insbesondere von allen Einträgen, innerhalb des jeweiligen Teilbereichs basierend auf dem Integralbild und basierend auf der Kennzahl des jeweiligen Teilbereichs berechnet, um eine gemittelte Koordinatenmatrix zu erzeugen. Mittels der Recheneinheit wird für wenigstens einen der Abtastpunkte basierend auf der gemittelten Koordinatenmatrix eine Oberflächennormale bestimmt.According to an independent aspect of the improved concept, a method for analyzing an environment of an active optical sensor system is specified, with the active optical sensor system, in particular with the sensor system and a computing unit, generating an ordered point cloud of sampling points in the environment, the point cloud being a coordinate matrix for each spatial dimension, in particular for Cartesian spatial dimensions. The coordinate matrix is modified by means of the computing unit by adding error entries, in particular all error entries, to the coordinate matrix are each replaced by a first reference numerical value. An integral image of the modified coordinate matrix is generated by means of the computing unit and an, in particular square, partial area of the modified coordinate matrix is defined for each entry in the modified coordinate matrix. For each of the sub-areas an associated code number is determined by means of the arithmetic unit as a function of the number of error entries replaced in the respective sub-area. For each entry of the modified coordinate matrix, the computing unit calculates an average of entries, in particular of all entries, within the respective sub-area based on the integral image and based on the code number of the respective sub-area in order to generate an averaged coordinate matrix. By means of the computing unit, a surface normal is determined for at least one of the scanning points based on the averaged coordinate matrix.
Für jede der Abtastrichtungen übermittelt das aktive optische Sensorsystem beispielsweise zugehörige Sensordaten an die Recheneinheit. Die Recheneinheit kann dann basierend auf den Sensordaten für die verschiedenen Abtastrichtungen das Entfernungsbild erzeugen. Alternativ kann eine weitere Recheneinheit basierend auf den Sensordaten für die verschiedenen Abtastrichtungen das Entfernungsbild erzeugen und dieses an die Recheneinheit übertragen.For each of the scanning directions, the active optical sensor system transmits, for example, associated sensor data to the computing unit. The computing unit can then generate the distance image based on the sensor data for the various scanning directions. Alternatively, a further processing unit can generate the distance image based on the sensor data for the various scanning directions and transmit this to the processing unit.
Die Entfernung, die mittels des aktiven optischen Sensorsystems für jede der Abtastrichtungen bestimmt wird, entspricht insbesondere einer Entfernung des aktiven optischen Sensorsystems, insbesondere eines optischen Detektors des aktiven optischen Sensorsystems, von einem Objekt in der Umgebung, das sich bezüglich des aktiven optischen Sensorsystems in Richtung der jeweiligen Abtastrichtung befindet.The distance that is determined by means of the active optical sensor system for each of the scanning directions corresponds in particular to a distance of the active optical sensor system, in particular an optical detector of the active optical sensor system, from an object in the vicinity that is in the direction of the active optical sensor system the respective scanning direction is located.
Ein aktives optisches Sensorsystem weist definitionsgemäß eine Lichtquelle zum Aussenden von Licht beziehungsweise von Lichtimpulsen auf. Die Lichtquelle kann insbesondere als Laser ausgestaltet sein. Des Weiteren weist ein aktives optisches Sensorsystem definitionsgemäß wenigstens einen optischen Detektor auf, um reflektierte Anteile des ausgesendeten Lichts zu erfassen. Das aktive optische Sensorsystem ist insbesondere dazu eingerichtet, basierend auf den detektierten Anteilen des Lichts eines oder mehrere Sensorsignale zu erzeugen und zu verarbeiten oder auszugeben, insbesondere um die Sensordaten zu erzeugen.By definition, an active optical sensor system has a light source for emitting light or light pulses. The light source can in particular be designed as a laser. Furthermore, by definition, an active optical sensor system has at least one optical detector in order to detect reflected components of the emitted light. The active optical sensor system is set up in particular to generate and process or output one or more sensor signals based on the detected components of the light, in particular to generate the sensor data.
Hier und im Folgenden kann der Begriff „Licht“ derart verstanden werden, dass damit elektromagnetische Wellen im sichtbaren Bereich, im infraroten Bereich und/oder im ultravioletten Bereich umfasst sind. Dementsprechend kann auch der Begriff „optisch“ derart verstanden werden, dass er sich auf Licht nach diesem Verständnis bezieht.Here and in the following, the term “light” can be understood to include electromagnetic waves in the visible range, in the infrared range and / or in the ultraviolet range. Accordingly, the term “optical” can also be understood in such a way that it relates to light according to this understanding.
Basierend auf einem Laufzeitunterschied zwischen Aussenden der Lichtpulse und Detektieren der Lichtpulse kann dann die entsprechende Entfernung des optischen Detektors von dem reflektierenden Objekt bestimmt werden.The corresponding distance of the optical detector from the reflecting object can then be determined based on a transit time difference between the emission of the light pulses and the detection of the light pulses.
Das aktive optische Sensorsystem kann beispielsweise eine Ablenkvorrichtung zum Ablenken der ausgesendeten sowie der reflektierten Lichtpulse beinhalten. So können insbesondere Lichtpulse in unterschiedliche Richtung ausgesendet werden und Lichtpulse aus unterschiedlichen Einfallrichtungen detektiert werden, indem sie mittels der Ablenkvorrichtung auf den einen oder mehrere optische Detektoren gelenkt werden.The active optical sensor system can contain, for example, a deflection device for deflecting the emitted and the reflected light pulses. In particular, light pulses can be emitted in different directions and light pulses from different directions of incidence can be detected by being directed onto the one or more optical detectors by means of the deflection device.
Das aktive optische Sensorsystem kann beispielsweise eine Ablenkvorrichtung zum Ablenken der ausgesendeten sowie der reflektierten Lichtpulse beinhalten. So können insbesondere Lichtpulse in unterschiedliche Richtung ausgesendet werden und Lichtpulse aus unterschiedlichen Einfallsrichtungen detektiert werden, indem sie mittels der Ablenkvorrichtung auf den einen oder mehrere optische Detektoren gelenkt werden.The active optical sensor system can contain, for example, a deflection device for deflecting the emitted and the reflected light pulses. In particular, light pulses can be emitted in different directions and light pulses from different directions of incidence can be detected by being directed onto the one or more optical detectors by means of the deflection device.
Die Ablenkvorrichtung kann beispielsweise einen rotierbaren Spiegel beinhalten, auf den das Licht der Lichtquelle trifft und dementsprechend zu unterschiedlichen Zeitpunkten in unterschiedliche Aussenderichtungen ausgesendet wird. Dadurch ist senkrecht zu der Rotationsachse des Spiegels eine Aussendeebene des aktiven optischen Sensorsystems definiert.The deflection device can, for example, contain a rotatable mirror on which the light from the light source strikes and is accordingly emitted at different times in different emission directions. As a result, an emission plane of the active optical sensor system is defined perpendicular to the axis of rotation of the mirror.
Je nach Einfallsrichtung des reflektierten Lichts und je nach aktueller Spiegelstellung des rotierenden Spiegels kann reflektiertes Licht mittels des Spiegels aus verschiedenen Einfallrichtungen auf den oder die optischen Detektoren gelenkt werden. Durch die unterschiedlichen Spiegelstellungen können beispielsweise die verschiedenen horizontalen Abtastwinkel definiert sein.Depending on the direction of incidence of the reflected light and depending on the current mirror position of the rotating mirror, reflected light can be directed by means of the mirror from different directions of incidence onto the optical detector or detectors. For example, the different horizontal scanning angles can be defined by the different mirror positions.
Das aktive optische Sensorsystem kann beispielsweise mehrere optische Detektoren aufweisen, beispielsweise drei oder mehr optische Detektoren. Die optischen Detektoren können beispielsweise entlang einer Richtung parallel zur Rotationsachse des Spiegels oder senkrecht zur Aussendeebene angeordnet sein. Je nach Richtung des einfallenden reflektierten Lichts kann das Licht also mittels des Spiegels auf unterschiedliche der optischen Detektoren gelenkt werden. Dadurch kann beispielsweise der vertikale Abtastwinkel definiert sein, insbesondere kann jeder diskrete Wert für den vertikalen Abtastwinkel einem entsprechenden der optischen Detektoren entsprechen.The active optical sensor system can for example have several optical detectors, for example three or more optical detectors. The optical detectors can be arranged, for example, along a direction parallel to the axis of rotation of the mirror or perpendicular to the emission plane. Ever according to the direction of the incident reflected light, the light can therefore be directed to different of the optical detectors by means of the mirror. In this way, for example, the vertical scanning angle can be defined; in particular, each discrete value for the vertical scanning angle can correspond to a corresponding one of the optical detectors.
Die Sensordaten umfassen also für jeden detektierten Lichtpuls den horizontalen Abtastwinkel, beispielsweise bestimmt basierend auf der aktuellen Spiegelstellung, dem zugehörigen vertikal Abtastwinkel, identifiziert über den entsprechenden angeregten optischen Detektor, sowie die zugehörige Entfernung des reflektierenden Objekts von dem optischen Detektor beziehungsweise die entsprechende Lichtlaufzeit.The sensor data therefore include the horizontal scanning angle for each detected light pulse, for example determined based on the current mirror position, the associated vertical scanning angle, identified via the corresponding excited optical detector, as well as the associated distance of the reflecting object from the optical detector or the corresponding light transit time.
Die Koordinatenmatrix kann auch als geordnete Menge von Koordinaten der Abtastpunkte in der entsprechenden Raumdimension betrachtet werden, wobei die Menge wie beschrieben entsprechend der vertikalen und horizontalen Abtastwinkel geordnet ist. Aus diesem Grund wird die Punktwolke, die diese Struktur ebenfalls aufweist, auch als geordnete Punktwolke bezeichnet.The coordinate matrix can also be viewed as an ordered set of coordinates of the scanning points in the corresponding spatial dimension, the set being ordered as described in accordance with the vertical and horizontal scanning angles. For this reason, the point cloud, which also has this structure, is also referred to as an ordered point cloud.
Insbesondere kann die Punktwolke für jede der drei kartesischen Raumdimensionen eine entsprechende Koordinatenmatrix aufweisen. Die bezüglich einer Koordinatenmatrix beschriebenen Schritte können analog auch für die übrigen Koordinatenmatrizen der übrigen Raumdimensionen durchgeführt werden.In particular, the point cloud can have a corresponding coordinate matrix for each of the three Cartesian spatial dimensions. The steps described with regard to a coordinate matrix can also be carried out analogously for the other coordinate matrices of the other spatial dimensions.
Unter einer Matrix kann insbesondere eine Abbildung F verstanden werden, die wie folgt definiert ist:
Ein Abtastpunkt der Punktwolke kann insbesondere als dreidimensionales Koordinatentupel verstanden werden, wobei die x-, y- und z-Koordinate des Abtastpunkts durch die jeweils zueinander gehörenden, also zu einer bestimmten Abtastrichtung gehörenden, Einträge der verschiedenen Koordinatenmatrizen gegeben sind.A scanning point of the point cloud can in particular be understood as a three-dimensional coordinate tuple, the x, y and z coordinates of the scanning point being given by the entries of the various coordinate matrices belonging to one another, i.e. belonging to a specific scanning direction.
Ein Fehlereintrag entspricht einem Eintrag der Koordinatenmatrix, für den der Abtastpunkt, beziehungsweise die Lichtlaufzeit oder die entsprechende Entfernung, nicht oder nicht korrekt bestimmt werden konnte. Der Fehlereintrag kann dabei beispielsweise einem „keine Zahl“-Eintrag (englisch: „Not a number“, NaN) entsprechen. Ein Fehlereintrag kann mit anderen Worten einem vordefinierten Platzhalterwert entsprechen. An error entry corresponds to an entry in the coordinate matrix for which the scanning point, or the light transit time or the corresponding distance, could not be determined or could not be determined correctly. The error entry can correspond, for example, to a “Not a number” entry (NaN). In other words, an error entry can correspond to a predefined placeholder value.
Um die Koordinatenmatrix zu modifizieren, überprüft die Recheneinheit beispielsweise alle Einträge der Koordinatenmatrix und ersetzt bei Vorliegen eines Fehleintrags diesen durch den ersten Referenzzahlenwert. Der erste Referenzzahlenwert kann dabei insbesondere gleich Null sein. Wird ein anderer Zahlenwert als Null für den ersten Referenzzahlenwert verwendet, so sind die im Folgenden angeführten Gleichungen gegebenenfalls entsprechend zu modifizieren.In order to modify the coordinate matrix, the computing unit checks, for example, all entries in the coordinate matrix and, if there is an incorrect entry, replaces it with the first reference numerical value. The first reference numerical value can in particular be zero. If a numerical value other than zero is used for the first reference numerical value, the equations listed below may have to be modified accordingly.
Der quadratische Teilbereich wird mittels der Recheneinheit beispielsweise derart definiert, dass für jeden Eintrag der Koordinatenmatrix eine Größe r des Teilbereichs definiert wird, und der Teilbereich einem Quadrat mit r2 Einträgen der Koordinatenmatrix entspricht, die den betrachteten Eintrag, für den der Teilbereich definiert wird, beinhaltet. Dabei kann der Wert für r beispielsweise fest vorgegeben sein oder mittels der Recheneinheit für verschiedene Einträge der Koordinatenmatrix individuell bestimmt werden. Die individuelle Bestimmung kann beispielsweise basierend auf den Sensordaten, einem Entfernungsbild oder einer entsprechenden Tiefenänderungskarte erfolgen. Beispielsweise kann der Wert für r derart definiert werden, dass in den Teilbereichen jeweils keine Kante liegt.The square sub-area is defined by means of the computing unit, for example, in such a way that a size r of the sub-area is defined for each entry in the coordinate matrix, and the sub-area corresponds to a square with r 2 entries of the coordinate matrix that contains the entry under consideration for which the sub-area is defined, includes. In this case, the value for r can, for example, be fixed or determined individually for different entries in the coordinate matrix by means of the computing unit. The individual determination can be made, for example, based on the sensor data, a distance image or a corresponding depth change map. For example, the value for r can be defined in such a way that there is no edge in each of the subregions.
Bei dem Mittelwert handelt es sich nicht notwendigerweise um einen arithmetischen Mittelwert. Vielmehr können andere Definitionen eines Mittelwerts verwendet werden. Insbesondere kann ein getrimmter Mittelwert verwendet werden.The mean is not necessarily an arithmetic mean. Rather, other definitions of a mean can be used. In particular, a trimmed mean can be used.
Der Mittelwert entspricht insbesondere einem Mittelwert über alle Einträge in dem Teilbereich, die nicht durch den Referenzzahlenwert ersetzt wurden. Damit wird sichergestellt, dass der Mittelwert nur korrekt bestimmte Entfernungen beziehungsweise Koordinaten von Abtastpunkten berücksichtigt.The mean value corresponds in particular to a mean value over all entries in the sub-area that have not been replaced by the reference numerical value. This ensures that the mean value only takes correctly determined distances or coordinates of scanning points into account.
Die Kennzahl für einen bestimmten Teilbereich kann beispielsweise gleich der Anzahl von in diesem Teilbereich ersetzten Fehlereinträgen sein. Die Kennzahl kann auch gleich der Anzahl von Einträgen in dem Teilbereich sein, die nicht durch den Referenzzahlenwert ersetzt wurden, also 4r2 minus der Anzahl von ersetzten Fehlereinträgen.The code number for a specific sub-area can, for example, be equal to the number of error entries replaced in this sub-area. The code number can also be equal to the number of entries in the sub-area that were not replaced by the reference numerical value, i.e. 4r 2 minus the number of replaced error entries.
Um die gemittelte Koordinatenmatrix zu erzeugen, berechnet die Recheneinheit insbesondere für jeden Eintrag der Koordinatenmatrix wie beschrieben den Mittelwert und ersetzt den Eintrag durch den so berechneten Mittelwert.In order to generate the averaged coordinate matrix, the computing unit calculates the mean value in particular for each entry in the coordinate matrix, as described, and replaces the entry with the mean value calculated in this way.
Gemäß dem verbesserten Konzept kann die wie beschrieben bestimmte Oberflächennormale zur Analyse der Umgebung herangezogen werden, wobei die Analyse der Umgebung die Bestimmung der Oberflächennormale beinhalten kann oder daraus bestehen kann.According to the improved concept, the surface normal determined as described can be used to analyze the surroundings, wherein the analysis of the surroundings can include or consist of the determination of the surface normal.
Gemäß zumindest einer Ausführungsform wird die Umgebung mittels der Recheneinheit basierend auf der Oberflächennormalen analysiert.According to at least one embodiment, the environment is analyzed by means of the computing unit based on the surface normal.
Insbesondere kann die Oberflächennormale für alle Abtastpunkte wie beschrieben bestimmt werden.In particular, the surface normal can be determined for all sampling points as described.
Zur Bestimmung der Oberflächennormale kann die Recheneinheit neben der gemittelten Koordinatenmatrix die übrigen beiden Koordinatenmatrizen oder entsprechende weitere gemittelte Koordinatenmatrizen verwenden, wobei die Mittelung analog wie oben beschrieben erfolgt.To determine the surface normal, the computing unit can use the averaged coordinate matrix as well as the other two coordinate matrices or corresponding further averaged coordinate matrices, the averaging being carried out analogously to that described above.
Durch die Berechnung des Mittelwerts und dessen Verwendung zur Bestimmung der Oberflächennormalen wird der Einfluss von Signalrauschen oder sonstigen Rauscheffekten reduziert, was zu einer besonders genauen Bestimmung der Oberflächennormalen führt. Durch die Bestimmung der Oberflächennormalen anhand der für die beschriebenen Schritte erforderlichen Matrixmodifikationen ist das Verfahren nach dem verbesserten Konzept mit einem besonders geringen Rechenaufwand realisierbar.By calculating the mean value and using it to determine the surface normals, the influence of signal noise or other noise effects is reduced, which leads to a particularly precise determination of the surface normals. By determining the surface normal on the basis of the matrix modifications required for the steps described, the method can be implemented according to the improved concept with a particularly low computational effort.
Dadurch, dass die Anzahl der Fehlereinträge in dem jeweiligen zur Mittelwertberechnung herangezogenen Teilbereich explizit berücksichtigt wird, kann die Genauigkeit bei der Bestimmung der Oberflächennormalen erhöht werden und der Einfluss von Rauschen weiter reduziert werden. Insbesondere können größere Teilbereiche zur Mittelung herangezogen worden, da die Fehlereinträge in dem Teilbereich explizit berücksichtigt und verarbeitet werden. Insbesondere muss der Teilbereich nicht aufgrund etwaiger Fehlereinträge besonders klein gewählt werden, um die Mittelung über Teilbereiche mit Fehlereinträgen ganz zu vermeiden. Dadurch kann eine effektivere Mittelwertbildung, also insbesondere eine stärkere Reduktion des Rauschens, erzielt werden.Because the number of error entries in the respective sub-area used for calculating the mean value is explicitly taken into account, the accuracy in determining the surface normals can be increased and the influence of noise can be further reduced. In particular, larger sub-areas can be used for averaging, since the error entries in the sub-area are explicitly taken into account and processed. In particular, the sub-area does not have to be selected to be particularly small due to any error entries in order to completely avoid averaging over sub-areas with error entries. As a result, a more effective averaging, that is to say in particular a greater reduction in noise, can be achieved.
Für eine Matrix nach der obigen Definition (
Für den Mittelwert O'mod(m, n) eines Eintrags Omod(m, n) der modifizierten Koordinatenmatrix gilt dann:
Durch die Verwendung des Integralbilds für die Berechnung des Mittelwerts kann die Anzahl der erforderlichen Rechenschritte reduziert werden, was den Rechenaufwand des Verfahrens weiter reduziert. Insbesondere muss das Integralbild nur einmalig bestimmt werden und kann dann für alle Mittelungen herangezogen werden.By using the integral image for calculating the mean value, the number of computation steps required can be reduced, which further reduces the computational effort of the method. In particular, the integral image only needs to be determined once and can then be used for all averaging.
Insbesondere wird dadurch die Implementierung des verbesserten Konzepts beziehungsweise des Verfahrens nach dem verbesserten Konzept auf feldprogrammierbaren Gate-Arrays ermöglicht, sodass die Rechenschritte nicht auf einer CPU durchgeführt werden müssen. Ein feldprogrammierbares Gate-Array wird auch als Field Programmable Gate Array, FPGA, bezeichnet.In particular, this enables the implementation of the improved concept or the method according to the improved concept on field-programmable gate arrays, so that the computing steps do not have to be carried out on a CPU. A field programmable gate array is also referred to as a field programmable gate array, FPGA.
Gemäß zumindest einer Ausführungsform des Verfahrens zur Analyse der Umgebung nach dem verbesserten Konzept weist die Punktwolke für jede der drei kartesischen Raumdimensionen eine zugehörige Koordinatenmatrix auf. Jede der Koordinatenmatrizen wird mittels der Recheneinheit modifiziert, indem Fehlereinträge in den jeweiligen Koordinatenmatrizen jeweils durch den ersten Referenzzahlenwert ersetzt werden. Für jede der modifizierten Koordinatenmatrizen wird ein zugehöriges Integralbild mittels der Recheneinheit erzeugt. Für jeden Eintrag jeder modifizierten Koordinatenmatrix wird der Teilbereich definiert, wobei einander entsprechenden Einträgen unterschiedlicher Koordinatenmatrizen derselbe Teilbereich, also insbesondere ein Teilbereich derselben Größe und Form, zugeordnet wird. Es wird für jede der modifizierten Koordinatenmatrizen für jeden Teilbereich eine zugehörige Kennzahl bestimmt, wobei die Kennzahl jeweils von der Anzahl der in der entsprechenden Koordinatenmatrix ersetzten Fehlereinträge in dem jeweiligen Teilbereich abhängt. Für jeden Eintrag der modifizierten Koordinatenmatrizen wird ein Mittelwert von Einträgen innerhalb des jeweiligen Teilbereichs basierend auf dem zugehörigen Integralbild der modifizierten Koordinatenmatrix und der jeweiligen Kennzahl der entsprechenden modifizierten Koordinatenmatrix berechnet, um entsprechende gemittelte Koordinatenmatrizen zu erzeugen. Die Oberflächennormale wird für den wenigstens einen Abtastpunkt basierend auf allen drei ermittelten Koordinatenmatrizen bestimmt.According to at least one embodiment of the method for analyzing the environment according to the improved concept, the point cloud has an associated coordinate matrix for each of the three Cartesian spatial dimensions. Each of the coordinate matrices is modified by means of the arithmetic unit by replacing error entries in the respective coordinate matrices with the first reference numerical value. For each of the modified coordinate matrices, an associated integral image is generated by means of the computing unit. The sub-area is defined for each entry of each modified coordinate matrix, the same sub-area, that is to say in particular a sub-area of the same size and shape, being assigned to entries of different coordinate matrices that correspond to one another. An associated code number is determined for each of the modified coordinate matrices for each sub-area, the code number depending on the number of error entries replaced in the corresponding coordinate matrix in the respective sub-area. For each entry of the modified coordinate matrices, an average value of entries within the respective sub-area is calculated based on the associated integral image of the modified coordinate matrix and the respective characteristic number of the corresponding modified coordinate matrix in order to generate corresponding averaged coordinate matrices. The surface normal is determined for the at least one scanning point based on all three determined coordinate matrices.
Gemäß zumindest einer Ausführungsform wird mittels der Recheneinheit für einen Abtastpunkt, für den die Oberflächennormale bestimmt werden soll, ein erster Vektor bestimmt, der zwei horizontal benachbarte Abtastpunkte des betrachteten Abtastpunkts miteinander verbindet, wobei die Koordinaten der gemittelten Koordinatenmatrizen verwendet werden, falls vorhanden. Entsprechend wird ein zweiter Vektor bestimmt, der zwei vertikal benachbarte Abtastpunkte miteinander verbindet. Die Oberflächennormale wird basierend auf dem ersten und dem zweiten Vektor bestimmt, insbesondere basierend auf einem Vektorprodukt oder Kreuzprodukt des ersten und des zweiten Vektors.According to at least one embodiment, a first vector is determined by means of the computing unit for a sampling point for which the surface normal is to be determined, which connects two horizontally adjacent sampling points of the sampling point under consideration, the coordinates of the averaged coordinate matrices being used, if available. Correspondingly, a second vector is determined which connects two vertically adjacent sampling points with one another. The surface normal is determined based on the first and the second vector, in particular based on a vector product or cross product of the first and the second vector.
Bei den vertikal benachbarten Abtastpunkten handelt es sich insbesondere um nächste Nachbarn des betrachteten Abtastpunkts, für den die Oberflächennormale bestimmt werden soll. Entsprechend der geordneten Struktur der Koordinatenmatrix gehören die beiden horizontal benachbarten Abtastpunkte zu demselben vertikalen Abtastwinkel und die beiden vertikalen benachbarten Abtastpunkte gehören zu demselben horizontalen Abtastwinkel.The vertically adjacent scanning points are in particular the closest neighbors of the scanning point under consideration, for which the surface normal is to be determined. According to the ordered structure of the coordinate matrix, the two horizontally adjacent scanning points belong to the same vertical scanning angle and the two vertical adjacent scanning points belong to the same horizontal scanning angle.
Der erste und der zweite Vektor spannen also eine Ebene auf, die näherungsweise einer Objektoberfläche der Umgebung entspricht, in dessen Zentrum der betrachtete gemittelte Abtastpunkt beziehungsweise die entsprechende Abtastrichtung liegt. Ein Normalenvektor, der senkrecht auf dieser von den beiden Vektoren aufgespannten Ebene steht, kann also näherungsweise als Oberflächennormale für die betrachtete Abtastrichtung beziehungsweise an dem entsprechenden Abtastpunkt angesehen werden.The first and the second vector thus span a plane which approximately corresponds to an object surface in the surroundings, in the center of which the averaged scanning point under consideration or the corresponding scanning direction lies. A normal vector that is perpendicular to this plane spanned by the two vectors can therefore be viewed approximately as a surface normal for the scanning direction under consideration or at the corresponding scanning point.
Gemäß zumindest einer Ausführungsform wird mittels der Recheneinheit eine Fehlermatrix erzeugt, die an Positionen, welche den Fehlereinträgen in der Koordinatenmatrix oder einer der weiteren Koordinatenmatrizen entsprechen, einen zweiten Referenzzahlenwert aufweist. Die Kennzahl wird mittels der Recheneinheit basierend auf der Fehlermatrix bestimmt.According to at least one embodiment, the computing unit generates an error matrix which has a second reference numerical value at positions which correspond to the error entries in the coordinate matrix or one of the further coordinate matrices. The key figure is determined by means of the arithmetic unit based on the error matrix.
Die Fehlermatrix hat insbesondere die gleiche Anzahl von Zeilen und Spalten wie die Koordinatenmatrix.In particular, the error matrix has the same number of rows and columns as the coordinate matrix.
Insbesondere sind alle Einträge der Fehlermatrix, die nicht den Positionen der Fehlereinträge entsprechen, die also nicht den zweiten Referenzzahlenwert aufweisen, gleich Null.In particular, all entries in the error matrix that do not correspond to the positions of the error entries, that is to say that do not have the second reference numerical value, are equal to zero.
Der zweite Referenzzahlenwert ist insbesondere gleich 1. Wird ein davon abweichender zweiter Referenzzahlenwert verwendet, so sind im Folgenden erläuterte Gleichungen gegebenenfalls zu korrigieren.The second reference numerical value is in particular equal to 1. If a second reference numerical value that deviates therefrom is used, the equations explained below may need to be corrected.
Gemäß zumindest einer Ausführungsform wird mittels der Recheneinheit ein Integralbild der Fehlermatrix erzeugt und die Kennzahl wird basierend auf dem Integralbild der Fehlermatrix und basierend auf dem Integralbild der modifizierten Koordinatenmatrix bestimmt.According to at least one embodiment, an integral image of the error matrix is generated by means of the computing unit and the characteristic number is determined based on the integral image of the error matrix and based on the integral image of the modified coordinate matrix.
Dadurch wird eine besonders einfache und wenig rechenaufwendige Berechnung des Mittelwerts beziehungsweise der Kennzahl möglich. Insbesondere kann die Kennzahl als die Anzahl k wie folgt berechnet werden, wobei C(m, n) einen entsprechenden Eintrag der Fehlermatrix bezeichnet:
Zusammen mit Gleichung (3) ergibt sich damit für den Mittelwert:
Gemäß zumindest einer Ausführungsform wird ein Entfernungsbild der Umgebung erzeugt, indem mittels des aktiven optischen Sensorsystems für die Vielzahl von Abtastrichtungen jeweils die zugehörige Entfernung bestimmt wird, wobei jede der Abtastrichtungen durch den zugehörigen horizontalen Abtastwinkel und den zugehörigen vertikalen Abtastwinkel definiert ist. Mittels der Recheneinheit wird die Punktwolke basierend auf dem Entfernungsbild erzeugt.According to at least one embodiment, a distance image of the surroundings is generated by using the active optical sensor system to determine the associated distance for the plurality of scanning directions, each of the scanning directions being defined by the associated horizontal scanning angle and the associated vertical scanning angle. The point cloud is generated based on the distance image by means of the computing unit.
Das Entfernungsbild entspricht beispielsweise einer Matrix, bei der unterschiedliche Zeilen unterschiedlichen vertikalen Abtastwinkeln entsprechen und unterschiedliche Spalten unterschiedlichen horizontalen Abtastwinkeln oder umgekehrt. Die jeweiligen Einträge in der Matrix entsprechen den zugehörigen Entfernungen.The distance image corresponds, for example, to a matrix in which different rows correspond to different vertical scanning angles and different columns correspond to different horizontal scanning angles or vice versa. The respective entries in the matrix correspond to the associated distances.
„Horizontal“ und „vertikal“ sind insbesondere bezüglich des Sensorsystems definiert, beispielsweise bezüglich der Aussendeebene. Liegt beispielsweise eine erste Abtastrichtung mit erstem vertikalen und erstem vertikalen Abtastwinkel innerhalb der Aussendeebene, so kann eine zweite Abtastrichtung mit dem ersten vertikalen Abtastwinkel und einem von dem ersten horizontalen Abtastwinkel abweichenden zweiten horizontalen Abtastwinkel ebenfalls in der Aussendeebene liegen. Eine dritte Abtastrichtung mit dem ersten horizontalen Abtastwinkel und einem von dem ersten vertikalen Abtastwinkel verschiedenen zweiten vertikalen Abtastwinkel liegt beispielsweise nicht in der Aussendeebene, sondern in einer dazu senkrechten Ebene.“Horizontal” and “vertical” are defined in particular with regard to the sensor system, for example with regard to the emission plane. If, for example, a first scanning direction with a first vertical and a first vertical scanning angle lies within the transmission plane, a second scanning direction with the first vertical scanning angle and a second horizontal scanning angle deviating from the first horizontal scanning angle can also lie in the transmission plane. A third scanning direction with the first horizontal scanning angle and a second vertical scanning angle different from the first vertical scanning angle does not lie, for example, in the transmission plane, but in a plane perpendicular thereto.
Die Recheneinheit führt insbesondere eine Koordinatentransformation basierend auf dem Entfernungsbild durch, um die geordnete Punktwolke zu erzeugen. Die Koordinatentransformation entspricht dabei einer Transformation von Polarkoordinaten, in denen das Entfernungsbild, wie oben beschrieben, gegeben ist, in kartesische Koordinaten. Dabei wird jedoch die genannte Matrixstruktur beibehalten.In particular, the computing unit carries out a coordinate transformation based on the distance image in order to generate the ordered point cloud. The coordinate transformation corresponds to a transformation of polar coordinates, in which the distance image, as described above, is given, into Cartesian coordinates. However, the aforementioned matrix structure is retained.
Dementsprechend beinhaltet die geordnete Punktwolke beispielsweise für jede der drei kartesischen Raumdimensionen eine entsprechende Koordinatenmatrix, wobei Zeilen und Spalten den verschiedenen vertikalen und horizontalen Abtastwinkeln entsprechen, wie für das Entfernungsbild beschrieben, und die Einträge der Koordinatenmatrizen den entsprechenden kartesischen Koordinaten, also x-, y- beziehungsweise z-Koordinaten, entsprechen.Accordingly, the ordered point cloud contains, for example, a corresponding coordinate matrix for each of the three Cartesian spatial dimensions, with rows and columns corresponding to the various vertical and horizontal scanning angles, as described for the distance image, and the entries in the coordinate matrices to the corresponding Cartesian coordinates, i.e. x-, y- and z coordinates, respectively.
Insbesondere wird in dieser Art und Weise sichergestellt, dass benachbarte Punkte in dem Entfernungsbild, also benachbarte Matrixeinträge in dem Entfernungsbild, auch in den jeweiligen Koordinatenmatrizen auf entsprechend benachbarte Einträge abgebildet werden.In particular, this ensures that neighboring points in the distance image, that is to say neighboring matrix entries in the distance image, are also mapped onto correspondingly neighboring entries in the respective coordinate matrices.
Gemäß zumindest einer Ausführungsform wird mittels der Recheneinheit eine Bildsegmentierung, insbesondere der Umgebung, also der Objekte in der Umgebung, abhängig von der Oberflächennormalen, insbesondere abhängig von allen bestimmten Oberflächennormalen, durchgeführt. Die Analyse der Umgebung beinhaltet insbesondere die Bildsegmentierung.In accordance with at least one embodiment, the computing unit is used to perform image segmentation, in particular of the surroundings, that is to say of the objects in the surroundings, depending on the surface normal, in particular depending on all determined surface normal. The analysis of the environment includes, in particular, image segmentation.
Bei der Segmentierung werden insbesondere zusammenhängende oder in sonstiger Weise korrelierte Objekte oder Objektteile in der Umgebung als solche identifiziert. Basierend auf der Bildsegmentierung kann eine weitere Analyse der Umgebung erfolgen. During the segmentation, objects or object parts in the environment that are connected or correlated in some other way are identified as such. A further analysis of the surroundings can be carried out based on the image segmentation.
Alternativ oder zusätzlich können die segmentierten Bildbereiche zur weiteren Verarbeitung verwendet werden, was mit einer Datenreduktion einhergehen kann.Alternatively or additionally, the segmented image areas can be used for further processing, which can be accompanied by a data reduction.
Gemäß zumindest einer Ausführungsform wird mittels der Recheneinheit basierend auf einem Ergebnis der Bildsegmentierung eine Objektklassifizierung und/oder Objektverfolgung durchgeführt. Die Analyse der Umgebung beinhaltet insbesondere die Objektklassifizieru ng.According to at least one embodiment, an object classification and / or object tracking is carried out by means of the computing unit based on a result of the image segmentation. The analysis of the environment includes, in particular, object classification.
Im Rahmen der Objektklassifizierung und/oder Objektverfolgung ordnet die Recheneinheit einzelnen Objekten in der Umgebung beispielsweise eine bestimmte vorgegebene Klasse zu. Insbesondere kann die Klassifizierung der Zuordnung einer Semantik zu den entsprechenden Objekten oder Objektteilen entsprechen.In the context of object classification and / or object tracking, the processing unit assigns individual objects in the environment, for example, to a specific predefined class. In particular, the classification can correspond to the assignment of semantics to the corresponding objects or object parts.
Beispielsweise können durch die Objektklassifizierung unterschiedliche Arten von Objekten in der Umgebung unterschieden werden. Beispielsweise kann eine Fahrbahnoberfläche einer anderen Klasse zugeordnet werden als beispielsweise eine Gebäudewand, ein weiteres Kraftfahrzeug oder ein Fußgänger.For example, the object classification can be used to differentiate between different types of objects in the environment. For example, a road surface can be assigned to a different class than, for example, a building wall, another motor vehicle or a pedestrian.
Gemäß zumindest einer Ausführungsform wird mittels der Recheneinheit basierend auf einem Ergebnis der Bildsegmentierung eine Bounding Box für ein Objekt in der Umgebung bestimmt, also ein Hüllkörper oder eine Hüllfigur, die das Objekt einschließt. Die Analyse der Umgebung beinhaltet insbesondere das Erzeugen oder Bestimmen der Bounding Box.According to at least one embodiment, a bounding box for an object in the environment is determined by means of the computing unit based on a result of the image segmentation, that is to say an envelope body or an envelope figure that encloses the object. The analysis of the environment includes in particular the creation or determination of the bounding box.
Gemäß zumindest einer Ausführungsform handelt es sich bei der Umgebung des aktiven optischen Sensorsystems um eine Umgebung eines Kraftfahrzeugs, an dem oder in dem das aktive optische Sensorsystem montiert ist.According to at least one embodiment, the surroundings of the active optical sensor system are surroundings of a motor vehicle on or in which the active optical sensor system is mounted.
Mit anderen Worten handelt es sich um ein Verfahren zur Analyse einer Umgebung des Kraftfahrzeugs, wobei das aktive optische Sensorsystem an oder in dem Kraftfahrzeug montiert ist.In other words, it is a method for analyzing the surroundings of the motor vehicle, the active optical sensor system being mounted on or in the motor vehicle.
Ergebnisse der Analyse können beispielsweise durch ein Fahrerassistenzsystem des Kraftfahrzeugs und/oder zur teilautonomen oder vollautonomen Steuerung des Kraftfahrzeugs mittels eines elektronischen Fahrzeugführungssystems genutzt werden. Results of the analysis can be used, for example, by a driver assistance system of the motor vehicle and / or for partially autonomous or fully autonomous control of the motor vehicle by means of an electronic vehicle guidance system.
Gemäß einem weiteren unabhängigen Aspekt des verbesserten Konzepts wird eine Sensorvorrichtung, insbesondere für ein Kraftfahrzeug, angegeben. Die Sensorvorrichtung weist ein aktives optisches Sensorsystem auf, das dazu eingerichtet ist, für eine Vielzahl von Abtastrichtungen jeweils eine zugehörige Entfernung zu bestimmen und basierend auf der Entfernung zugehörige Sensordaten zu erzeugen. Die Sensorvorrichtung weist eine Recheneinheit auf, die dazu eingerichtet ist, basierend auf den Sensordaten der Vielzahl von Abtastrichtungen eine geordnete Punktwolke von Abtastpunkten der Umgebung zu erzeugen, wobei die Punktwolke eine Koordinatenmatrix für eine Raumdimension aufweist. Die Recheneinheit ist dazu eingerichtet, Fehlereinträge, insbesondere alle Fehlereinträge, in der Koordinatenmatrix jeweils durch einen ersten Referenzzahlenwert zu ersetzen, um die Koordinatenmatrix zu modifizieren. Die Recheneinheit ist dazu eingerichtet, ein Integralbild der modifizierten Koordinatenmatrix zu erzeugen und für jeden Eintrag der modifizierten Koordinatenmatrix einen, insbesondere quadratischen, Teilbereich der modifizierten Koordinatenmatrix zu definieren. Die Recheneinheit ist dazu eingerichtet, für jeden Teilbereich abhängig von der Anzahl von ersetzen Fehlereinträgen in dem Teilbereich eine zugehörige Kennzahl zu bestimmen. Die Recheneinheit ist dazu eingerichtet, für jeden Eintrag der modifizierten Koordinatenmatrix einen Mittelwert von Einträgen, insbesondere aller Einträge, innerhalb des jeweiligen Teilbereichs basierend auf dem Integralbild und basierend auf der Kennzahl des jeweiligen Teilbereichs zu berechnen, um eine gemittelte Koordinatenmatrix zu erzeugen. Die Recheneinheit ist dazu eingerichtet, für wenigstens einen der Abtastpunkte basierend auf der gemittelten Koordinatenmatrix eine Oberflächennormale zu bestimmen.According to a further independent aspect of the improved concept, a sensor device, in particular for a motor vehicle, is specified. The sensor device has an active optical sensor system which is set up to determine an associated distance for a plurality of scanning directions and to generate associated sensor data based on the distance. The sensor device has a computing unit which is set up to generate an ordered point cloud of sampling points in the surroundings based on the sensor data of the plurality of scanning directions, the point cloud having a coordinate matrix for a spatial dimension. The computing unit is set up to replace error entries, in particular all error entries, in the coordinate matrix with a first reference numerical value in order to modify the coordinate matrix. The computing unit is set up to generate an integral image of the modified coordinate matrix and to define an, in particular square, sub-area of the modified coordinate matrix for each entry of the modified coordinate matrix. The processing unit is set up to determine an associated code number for each sub-area as a function of the number of replaced error entries in the sub-area. The computing unit is set up to calculate an average value of entries, in particular all entries, within the respective sub-area based on the integral image and based on the characteristic number of the respective sub-area for each entry of the modified coordinate matrix in order to generate an averaged coordinate matrix. The computing unit is set up to determine a surface normal for at least one of the sampling points based on the averaged coordinate matrix.
Gemäß zumindest einer Ausführungsform der Sensorvorrichtung ist das aktive optische Sensorsystem als Laserscanner oder Lidarsystem ausgestaltet.According to at least one embodiment of the sensor device, the active optical sensor system is designed as a laser scanner or lidar system.
Gemäß zumindest einer Ausführungsform enthält die Recheneinheit ein feldprogrammierbares Gate-Array, um die Punktwolke zu erzeugen, die Fehlereinträge zu ersetzen und/oder das Integralbild der modifizierten Koordinatenmatrix zu erzeugen und/oder die Kennzahl zu bestimmen und/oder den Mittelwert zu berechnen und/oder die Oberflächennormale zu bestimmen.According to at least one embodiment, the computing unit contains a field-programmable gate array to generate the point cloud, to replace the error entries and / or to generate the integral image of the modified coordinate matrix and / or to determine the characteristic number and / or to calculate the mean value and / or to determine the surface normal.
Weitere Ausführungsformen der Sensorvorrichtung nach dem verbesserten Konzept ergeben sich unmittelbar aus den verschiedenen Ausgestaltungsformen des Verfahrens nach dem verbesserten Konzept und umgekehrt. Insbesondere kann die Sensorvorrichtung nach dem verbesserten Konzept dazu eingerichtet oder programmiert sein, ein Verfahren nach dem verbesserten Konzept durchzuführen oder die Sensorvorrichtung führt ein Verfahren nach dem verbesserten Konzept durch.Further embodiments of the sensor device according to the improved concept result directly from the various embodiments of the method according to the improved concept and vice versa. In particular, the sensor device according to the improved concept can be set up or programmed to carry out a method according to the improved concept or the sensor device carries out a method according to the improved concept.
Gemäß einem weiteren unabhängigen Aspekt des verbesserten Konzepts wird ein Kraftfahrzeug mit einer Sensorvorrichtung nach dem verbesserten Konzept angegeben.According to a further independent aspect of the improved concept, a motor vehicle with a sensor device according to the improved concept is specified.
Gemäß einem weiteren unabhängigen Aspekt des verbesserten Konzepts wird ein Computerprogramm mit Befehlen angegeben. Bei Ausführung des Computerprogramms durch eine Sensorvorrichtung nach dem verbesserten Konzept, insbesondere durch die Recheneinheit der Sensorvorrichtung, veranlassen die Befehle die Sensorvorrichtung dazu, ein Verfahren nach dem verbesserten Konzept durchzuführen.According to a further independent aspect of the improved concept, a computer program with instructions is specified. When the computer program is executed by a sensor device according to the improved concept, in particular by the computing unit of the sensor device, the commands cause the sensor device to carry out a method according to the improved concept.
Gemäß einem weiteren unabhängigen Aspekt des verbesserten Konzepts wird ein computerlesbares Speichermedium angegeben, auf dem ein Computerprogramm nach dem verbesserten Konzept gespeichert ist.According to a further independent aspect of the improved concept, a computer-readable storage medium is specified on which a computer program according to the improved concept is stored.
Weitere Merkmale der Erfindung ergeben sich aus den Ansprüchen, den Figuren und der Figurenbeschreibung. Die vorstehend in der Beschreibung genannten Merkmale und Merkmalskombinationen sowie die nachfolgend in der Figurenbeschreibung genannten und/oder in den Figuren alleine gezeigten Merkmale und Merkmalskombinationen sind nicht nur in der jeweils angegebenen Kombination, sondern auch in anderen Kombinationen verwendbar, ohne den Rahmen der Erfindung zu verlassen. Es sind somit auch Ausführungen von der Erfindung als erfasst und offenbart anzusehen, die in den Figuren nicht explizit gezeigt und erläutert sind, jedoch durch separierte Merkmalskombinationen aus den erläuterten Ausführungen hervorgehen und erzeugbar sind. Es sind auch Ausführungen und Merkmalskombinationen als offenbart anzusehen, die somit nicht alle Merkmale eines ursprünglich formulierten unabhängigen Anspruchs aufweisen. Es sind darüber hinaus Ausführungen und Merkmalskombinationen, insbesondere durch die oben dargelegten Ausführungen, als offenbart anzusehen, die über die in den Rückbezügen der Ansprüche dargelegten Merkmalskombinationen hinausgehen oder von denen abweichen.Further features of the invention emerge from the claims, the figures and the description of the figures. The features and combinations of features mentioned above in the description as well as the features and combinations of features mentioned below in the description of the figures and / or shown alone in the figures can be used not only in the specified combination, but also in other combinations without departing from the scope of the invention . Embodiments of the invention that are not explicitly shown and explained in the figures, but emerge and can be generated from the explained embodiments by means of separate combinations of features, are therefore also to be regarded as covered and disclosed. Designs and combinations of features are also to be regarded as disclosed, which therefore do not have all the features of an originally formulated independent claim. In addition, designs and combinations of features, in particular through the statements set out above, are to be regarded as disclosed that go beyond the combinations of features set forth in the back references of the claims or differ from them.
In den Figuren zeigen:
-
1 eine schematische Darstellung eines Kraftfahrzeugs mit einer beispielhaften Ausführungsform einer Sensorvorrichtung nach dem verbesserten Konzept; -
2 eine schematische Darstellung eines aktiven optischen Sensorsystems einer weiteren beispielhaften Ausführungsform einer Sensorvorrichtung nach dem verbesserten Konzept; -
3 ein Ablaufdiagramm einer beispielhaften Ausführungsform eines Verfahrens nach dem verbesserten Konzept; und -
4 ein Ablaufdiagramm einer weiteren beispielhaften Ausführungsform eines Verfahrens nach dem verbesserten Konzept.
-
1 a schematic representation of a motor vehicle with an exemplary embodiment of a sensor device according to the improved concept; -
2 a schematic representation of an active optical sensor system of a further exemplary embodiment of a sensor device according to the improved concept; -
3 a flowchart of an exemplary embodiment of a method according to the improved concept; and -
4th a flowchart of a further exemplary embodiment of a method according to the improved concept.
In
Die Sensorvorrichtung
Die Ansicht in
In der Umgebung
In
Es kann eine Referenzrichtung
Treffen die reflektierten Lichtimpulse
Die optischen Detektoren sind beispielsweise entlang einer Richtung senkrecht zu der Aussendeebene, also beispielsweise parallel zu der Rotationsachse des Spiegels, angeordnet. Je nach Richtung der einfallenden Lichtimpulse
Jede Kombination aus einem vertikalen Abtastwinkel αv und einem horizontalen Abtastwinkel αh definiert insbesondere eine Abtastrichtung.Each combination of a vertical scanning angle α v and a horizontal scanning angle α h in particular defines a scanning direction.
Die Funktionsweise der Sensorvorrichtung
In
In Schritt
In Schritt
In Schritt
Zudem berechnet die Recheneinheit
In Schritt
Für jeden Eintrag der modifizierten Koordinatenmatrix Ox,mod, also für jede Abtastrichtung, berechnet die Recheneinheit
In analoger Weise gemittelte modifizierte Koordinatenmatrizen O'y,mod, O'z,mod für die y-, die z-Richtung bestimmt. Modified coordinate matrices O 'y, mod , O' z, mod averaged in an analogous manner are determined for the y, the z direction.
In Schritt
Basierend auf diesen Differenzvektoren wird dann mittels der Recheneinheit
Im optionalen Schritt
Im Schritt
Die Größe r des Mittelungsbereichs kann beispielsweise fest vorgegeben sein. Alternativ wird die Größe r adaptiv angepasst. Beispielsweise kann die Recheneinheit basierend auf einer Tiefenänderungskarte eine Kantenerkennung durchführen, um die Position von Kanten zu identifizieren und lokalisieren.The size r of the averaging area can, for example, be fixed. Alternatively, the size r is adapted adaptively. For example, the computing unit can perform edge detection based on a depth change map in order to identify and localize the position of edges.
Im optionalen Schritt
In
In Schritt
Schritt
In Schritt
In Schritt
Zum Durchführen einzelner oder aller Berechnungsschritte in den Verfahrensschritten
Wie beschrieben, erlaubt es das verbesserte Konzept die Umgebung eines aktiven optischen Sensorsystems und insbesondere eines Kraftfahrzeugs durch die Bestimmung von Oberflächennormalen zu analysieren.As described, the improved concept allows the environment of an active optical sensor system and in particular of a motor vehicle to be analyzed by determining surface normals.
Die beschriebenen Verfahrensschritte zur Bestimmung Oberflächennormalen der können mit Vorteil beispielsweise auf einer FPGA-Hardware ablaufen, so dass begrenzt zur Verfügung stehende CPU-Kapazität eingespart werden kann.The method steps described for determining surface normals can advantageously run on FPGA hardware, for example, so that limited CPU capacity can be saved.
Das verbesserte Konzept verwendet eine geordnete Punktwolke, in der definierte räumliche Beziehungen zwischen benachbarten Abtastpunkte ausgenutzt werden, um die Oberflächennormalen zu berechnen. Um den Einfluss von Rauschen in den Messdaten zu verringern, wird zur Glättung ein Integralbild verwendet, mit dessen Hilfe Mittelwerte über einen quadratischen Datenbereich im Wesentlichen mittels Additionen und wenigen Multiplikationen bestimmt werden können. Für die Berechnung der Integralbilder selbst werden ebenfalls nur Additionen benötigt, sodass eine besonders effiziente Implementierung, beispielsweise auf einem FPGA, möglich wird.The improved concept uses an ordered point cloud in which defined spatial relationships between adjacent sampling points are used to calculate the surface normals. In order to reduce the influence of noise in the measurement data, an integral image is used for smoothing, with the aid of which mean values over a square data area can be determined essentially by means of additions and a few multiplications. For the calculation of the integral images themselves, only additions are required, so that a particularly efficient implementation, for example on an FPGA, is possible.
Durch die explizite Berücksichtigung fehlender Einträge in der Punktwolke kann der Teilbereich über den gemittelt wird größer gewählt werden, sodass die Genauigkeit der Bestimmung der Oberflächennormalen und damit der Analyse erhöht wird.By explicitly considering missing entries in the point cloud, the sub-area over which is averaged can be selected to be larger, so that the accuracy of the determination of the surface normals and thus of the analysis is increased.
ZITATE ENTHALTEN IN DER BESCHREIBUNGQUOTES INCLUDED IN THE 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 the documents listed 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 Nicht-PatentliteraturNon-patent literature cited
- „Adaptive Neighborhood Selection for Real-Time Surface Normal Estimation from Organized Point Cloud Data Using Integral Images‟, 2012 IEEE/RSJ International Conference on Intelligent Robots and Systems, 2012, Portugal von S. Holzer et al. beschreibt ein Verfahren zur Bestimmung von Oberflächennormalen für Robotikanwendungen auf der Basis von Kamerabildern [0004]"Adaptive Neighborhood Selection for Real-Time Surface Normal Estimation from Organized Point Cloud Data Using Integral Images", 2012 IEEE / RSJ International Conference on Intelligent Robots and Systems, 2012, Portugal by S. Holzer et al. describes a method for determining surface normals for robotic applications on the basis of camera images [0004]
Claims (15)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102019126074.4A DE102019126074A1 (en) | 2019-09-27 | 2019-09-27 | Analysis of an environment of an active optical sensor system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102019126074.4A DE102019126074A1 (en) | 2019-09-27 | 2019-09-27 | Analysis of an environment of an active optical sensor system |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102019126074A1 true DE102019126074A1 (en) | 2021-04-01 |
Family
ID=74872626
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102019126074.4A Pending DE102019126074A1 (en) | 2019-09-27 | 2019-09-27 | Analysis of an environment of an active optical sensor system |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102019126074A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114359861A (en) * | 2021-12-20 | 2022-04-15 | 浙江天尚元科技有限公司 | Intelligent vehicle obstacle recognition deep learning method based on vision and laser radar |
-
2019
- 2019-09-27 DE DE102019126074.4A patent/DE102019126074A1/en active Pending
Non-Patent Citations (4)
Title |
---|
HOLZ, Dirk, et al. Real-time plane segmentation using RGB-D cameras. In: Robot Soccer World Cup. Springer, Berlin, Heidelberg, 2011. S. 306-317 * |
HOLZER, S. [u.a.]: Adaptive neighborhood selection for real-time surface normal estimation from organized point cloud data using integral images. In: IEEE/RSJ International Conference on Intelligent Robots and Systems - 7-12 Oct. 2012 - Vilamoura, Portugal, S. 2684-2689. - ISSN 2153-0858 (p); 2153-0866 (e). DOI: 10.1109/IROS.2012.6385999. URL: https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=6385999 [abgerufen am 2019-12-13]. * |
KURNIANGGORO, Laksono; JO, Kang-Hyun. Free road space estimation based on surface normal analysis in organized point cloud. In: 2014 IEEE International Conference on Industrial Technology (ICIT). IEEE, 2014. S. 609-613 * |
TREVOR, Alexander JB, et al. Efficient organized point cloud segmentation with connected components. Semantic Perception Mapping and Exploration (SPME), 2013 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114359861A (en) * | 2021-12-20 | 2022-04-15 | 浙江天尚元科技有限公司 | Intelligent vehicle obstacle recognition deep learning method based on vision and laser radar |
CN114359861B (en) * | 2021-12-20 | 2024-07-02 | 尚元智行(宁波)科技有限公司 | Intelligent vehicle obstacle recognition deep learning method based on vision and laser radar |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102011117585B4 (en) | Systems and methods for tracking objects | |
EP1418444B1 (en) | Method for determining the yaw rate of a vehicle | |
DE102013102153A1 (en) | Method for combining sensor signals of LiDAR-sensors, involves defining transformation value for one of two LiDAR sensors, which identifies navigation angle and position of sensor, where target scanning points of objects are provided | |
DE102018124108A1 (en) | METHOD AND DEVICE FOR DETECTING ROAD LIMITATION | |
DE102014208009A1 (en) | Capture static and dynamic objects | |
DE102017217972A1 (en) | Method and device for generating an inverse sensor model and method for detecting obstacles | |
DE102016200642A1 (en) | METHOD AND DEVICE FOR CLASSIFYING TRAFFIC LIMITS AND VEHICLE | |
EP3430423B1 (en) | Method for improving detection of at least one object in an environment of a motor vehicle by means of an indirect measurement using sensors, control device, driver assistance system, and motor vehicle | |
DE102021100351A1 (en) | ADAPTIVE EXAMINATION FOR LIDAR-BASED GROUPING | |
EP1634241B1 (en) | Method and device for object recognition in driver aid systems for motor vehicles | |
DE102008015535B4 (en) | Process for image processing of stereo images | |
DE102022110895A1 (en) | System and method for window generation for areas of interest for attention-based perception | |
DE102016105022A1 (en) | Method for detecting at least one object in an environment of a motor vehicle by an indirect measurement with sensors, control device, driver assistance system and motor vehicle | |
DE102019126074A1 (en) | Analysis of an environment of an active optical sensor system | |
EP3531167A1 (en) | Method and device for optically measuring distances | |
EP4049061A1 (en) | Filtering measurement data of an active optical sensor system | |
DE102020214596A1 (en) | Method for generating training data for a recognition model for recognizing objects in sensor data of an environment sensor system of a vehicle, method for generating such a recognition model and method for controlling an actuator system of a vehicle | |
EP3809316A1 (en) | Prediction of a road route based on radar data | |
DE102016105023B4 (en) | Method for detecting at least one object in an environment of a motor vehicle by combining object features, control device, driver assistance system | |
DE102021133977A1 (en) | Method and system for classifying virtual test scenarios and training methods | |
DE102022000849A1 (en) | Method for generating an environment representation for a vehicle | |
DE102019126073A1 (en) | Analysis of an environment of an active optical sensor system | |
DE102012008780B4 (en) | Method and device for detecting at least one road edge and motor vehicle | |
EP3885787A1 (en) | Detection of distance measurement data | |
WO2020001690A1 (en) | Method and system for identifying obstacles |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R163 | Identified publications notified |