DE102022201427A1 - Method for determining a position and/or orientation of a mobile device in an environment - Google Patents

Method for determining a position and/or orientation of a mobile device in an environment Download PDF

Info

Publication number
DE102022201427A1
DE102022201427A1 DE102022201427.8A DE102022201427A DE102022201427A1 DE 102022201427 A1 DE102022201427 A1 DE 102022201427A1 DE 102022201427 A DE102022201427 A DE 102022201427A DE 102022201427 A1 DE102022201427 A1 DE 102022201427A1
Authority
DE
Germany
Prior art keywords
mobile device
points
markers
orientation
current
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
DE102022201427.8A
Other languages
German (de)
Inventor
Peter Biber
Gerhard Kurz
Sebastian Scherer
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.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE102022201427.8A priority Critical patent/DE102022201427A1/en
Publication of DE102022201427A1 publication Critical patent/DE102022201427A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/02Systems using the reflection of electromagnetic waves other than radio waves
    • G01S17/06Systems determining position data of a target
    • G01S17/42Simultaneous measurement of distance and other co-ordinates
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/005Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 with correlation of navigation data from several sources, e.g. map or contour matching
    • 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

Abstract

Die Erfindung betrifft ein Verfahren zum Bestimmen einer Position und/oder Orientierung eines mobilen Geräts (100) in einer Umgebung (150), in der sich das mobile Gerät (100) bewegt oder bewegen soll, umfassend: Bereitstellen einer aktuellen ersten Menge von Punkten erster Art in der Umgebung, die ausgehend von und relativ zu dem mobilen Gerät (100) bestimmt worden sind; Bereitstellen einer aktuellen zweiten Menge von einem oder mehreren nachverfolgten Markern (162, 164, 165); Bestimmen einer dritten Menge von nachverfolgten Markern (162, 164, 165), die sowohl in der aktuellen zweiten Menge als auch in einer zweiten Referenzmenge von einem oder mehreren nachverfolgten Markern (160-165) enthalten sind; und Bestimmen einer aktuellen Position und/oder Orientierung des mobilen Geräts (100) in der Umgebung (150), basierend auf der aktuellen ersten Menge, einer ersten Referenzmenge von Punkten erster Art, der dritten Menge und der zweiten Referenzmenge. Die Erfindung betrifft auch ein mobiles Gerät (100).The invention relates to a method for determining a position and/or orientation of a mobile device (100) in an environment (150) in which the mobile device (100) moves or is intended to move, comprising: providing a current first set of points first nature in the environment determined from and relative to the mobile device (100); providing a current second set of one or more tracked markers (162, 164, 165); determining a third set of tracked markers (162, 164, 165) included in both the current second set and a second reference set of one or more tracked markers (160-165); and determining a current position and/or orientation of the mobile device (100) in the environment (150) based on the current first set, a first reference set of points of the first type, the third set and the second reference set. The invention also relates to a mobile device (100).

Description

Die vorliegende Erfindung betrifft ein Verfahren zum Bestimmen einer Position und/oder Orientierung eines mobilen Geräts, z.B. eines sich teilweise automatisiert bewegenden Fahrzeugs oder eines Roboters, in einer Umgebung, eine Recheneinheit und ein Computerprogramm zu dessen Durchführung sowie ein solches mobiles Gerät.The present invention relates to a method for determining a position and/or orientation of a mobile device, e.g. a partially automated moving vehicle or a robot, in an environment, a computing unit and a computer program for its implementation, and such a mobile device.

Hintergrund der ErfindungBackground of the Invention

Mobile Geräte wie z.B. sich zumindest teilautomatisiert bewegende Fahrzeuge oder Roboter bewegen sich typischerweise entlang eines Bewegungspfades in einer Umgebung wie z.B. einer Wohnung, in einem Garten, in einer Fabrikhalle oder auf der Straße, in der Luft oder im Wasser. Hierzu ist es nötig, dass eine aktuelle Position und/oder Orientierung (auch als Pose bezeichnet) des mobilen Geräts bekannt ist und auch immer wieder neu bestimmt wird. Hierzu kann z.B. auf eine Laserentfernungsmessung (z.B. mit sog. Lidar-Sensoren) zurückgegriffen werden.Mobile devices such as vehicles or robots that move at least partially automatically move along a movement path in an environment such as an apartment, in a garden, in a factory building or on the street, in the air or in water. For this it is necessary that a current position and/or orientation (also referred to as a pose) of the mobile device is known and is also determined again and again. For this purpose, e.g. a laser distance measurement (e.g. with so-called lidar sensors) can be used.

Offenbarung der ErfindungDisclosure of Invention

Erfindungsgemäß werden ein Verfahren zum Bestimmen einer Position und/oder Orientierung eines mobilen Geräts, eine Recheneinheit und ein Computerprogramm zu dessen Durchführung sowie ein solches mobiles Gerät mit den Merkmalen der unabhängigen Patentansprüche vorgeschlagen. Vorteilhafte Ausgestaltungen sind Gegenstand der Unteransprüche sowie der nachfolgenden Beschreibung.According to the invention, a method for determining a position and/or orientation of a mobile device, a computing unit and a computer program for executing it, and such a mobile device with the features of the independent patent claims are proposed. Advantageous configurations are the subject of the dependent claims and the following description.

Die Erfindung beschäftigt sich mit dem Bestimmen einer (aktuellen) Position und/oder Orientierung (auch als Pose bezeichnet) eines mobilen Geräts in einer Umgebung, also insbesondere der Lokalisierung des mobilen Geräts. Als mobiles Gerät kommt hier z.B. ein sich zumindest teilweise automatisiert bewegendes Fahrzeug, insbesondere ein Personenbeförderungsfahrzeug oder Güterbeförderungsfahrzeug (z.B. Gabelstapler, Flurförderfahrzeug), oder ein Roboter, in Betracht. Dabei wird auf das Prinzip der Entfernungsmessung mittels Laser (Laserentfernungsmessung, z.B. mit sog. Lidar-Sensoren) zurückgegriffen. Einer oder ggf. mehrere solcher Lidar-Sensoren sind hierzu typischerweise an oder in dem mobilen Gerät vorgesehen, womit Entfernungen (Abstände) von Objekten in der Umgebung (relativ) zum mobilen Gerät (bzw. zum Sensor) bestimmt werden können. Typischerweise scannt ein solcher Lidar-Sensor die Umgebung vor dem mobilen Gerät in einem gewissen Winkel, z.B. 90°, 180°, 270° oder auch mehr ab.The invention deals with determining a (current) position and/or orientation (also referred to as a pose) of a mobile device in an environment, ie in particular the localization of the mobile device. A possible mobile device here is, for example, a vehicle that moves at least partially automatically, in particular a passenger transport vehicle or goods transport vehicle (e.g. forklift truck, industrial truck), or a robot. The principle of distance measurement using a laser (laser distance measurement, e.g. with so-called lidar sensors) is used. For this purpose, one or possibly several such lidar sensors are typically provided on or in the mobile device, with which distances (distances) of objects in the environment (relative) to the mobile device (or to the sensor) can be determined. Such a lidar sensor typically scans the area in front of the mobile device at a certain angle, e.g. 90°, 180°, 270° or even more.

Eine eher historische und heutzutage zunehmend als veraltet anzusehende Möglichkeit zur Laserentfernungsmessung und darauf basierenden Lokalisierung (Laserlokalisierung) basiert auf der ausschließlichen Verwendung von sog. Reflektormarkern, die flächendeckend in der Umgebung angebracht werden müssen. Diese Reflektormarker können vom Laserscanner bzw. Lidar-Sensor dadurch erkannt werden, dass auf ihnen gemessene Punkte mit deutlich höherer Intensität reflektiert werden als in der restlichen Umgebung. Laserscanner können die Reflektormarker z.B. auf Wunsch selbst erkennen, d.h. es können z.B. direkt nur Messwerte berücksichtigt werden, die einer gewissen Intensität (z.B. höher als ein bestimmter Schwellwert) entsprechen.A more historical option for laser distance measurement and localization based on it (laser localization), which is nowadays increasingly to be regarded as outdated, is based on the exclusive use of so-called reflector markers, which have to be installed across the board in the surrounding area. These reflector markers can be recognized by the laser scanner or lidar sensor in that points measured on them are reflected with a significantly higher intensity than in the rest of the environment. Laser scanners can, for example, recognize the reflector markers themselves if desired, i.e. only measured values that correspond to a certain intensity (e.g. higher than a certain threshold value) can be taken into account directly.

Sind die Reflektormarker einmal angebracht, kann deren Position manuell vermessen und in eine Karte eingetragen werden. Während der Lokalisierung können die Positionen erkannter Reflektormarker ständig mit den (dann genau bekannten) Positionen der Reflektormarker in der Karte verglichen werden. Sofern stets mindestens zwei der kartierten Reflektormarker erkannt werden, kann die Pose (Position und Orientierung) des Laserscanners eindeutig bestimmt werden. Dabei soll insbesondere angenommen werden, dass sich das mobile Gerät sowie der Laserscanner in einer 2D-Ebene bewegen, also lediglich über drei Freiheitsgrade (zwei translatorische und ein rotatorischer Freiheitsgrad) verfügen. Grundsätzlich ist das Prinzip aber z.B. auch in 3D anwendbar.Once the reflector markers have been attached, their position can be measured manually and entered on a map. During localization, the positions of recognized reflector markers can be constantly compared with the (then precisely known) positions of the reflector markers on the map. If at least two of the mapped reflector markers are always recognized, the pose (position and orientation) of the laser scanner can be clearly determined. In particular, it should be assumed that the mobile device and the laser scanner move in a 2D plane, i.e. only have three degrees of freedom (two translational and one rotational degree of freedom). In principle, however, the principle can also be used in 3D, for example.

Die Anbringung und Vermessung von Reflektormarkern sind allerdings in der Regel sehr aufwändig. Die Rechenleistung von Recheneinheiten oder Rechensystemen, selbst bei eingebetteten Computersystemen wie sie z.B. bei mobilen Geräten verwendet werden, ist in letzter Zeit deutlich angestiegen. Dies hat dazu geführt, dass sich in den letzten Jahren die Lokalisierung (Bestimmung von Position und/oder Orientierung) von mobilen Geräten unter Verwendung natürlicher Konturen mit Hilfe des sog. „Scan Matching“ durchgesetzt hat. Reflektormarker sind dadurch verdrängt worden.However, attaching and measuring reflector markers is usually very time-consuming. The computing power of computing units or computing systems, even in embedded computer systems such as those used in mobile devices, has increased significantly in recent times. As a result, the localization (determination of position and/or orientation) of mobile devices using natural contours with the help of so-called "scan matching" has become established in recent years. As a result, reflector markers have been superseded.

Beim „Scan Matching“ (Angleichen von Scans) wird insbesondere die gesamte vom Laserscanner gemessene bzw. erfasste Punktwolke verwendet; bei einer Punktwolke handelt es sich um eine Menge von Punkten in der Umgebung, die mittels des Laserscanners bzw. Lidar-Sensors bestimmt werden. Dabei kann jedem Punkt ein Abstand zum mobilen Gerät bzw. Laserscanner zugeordnet werden, ebenso eine Orientierung relativ zu einer Referenzorientierung des mobilen Geräts bzw. Laserscanner. Die Punktwolke entspricht üblicherweise einer oder mehreren „Punktlinien“ entlang der Kontur der Objekte im Sichtbereich; ggf. können die Punkte aber auch nur näherungsweise auf einer solchen Linie liegen.Specifically, “scan matching” uses the entire point cloud measured or captured by the laser scanner; A point cloud is a set of points in the environment that are determined using the laser scanner or lidar sensor. A distance from the mobile device or laser scanner can be assigned to each point, as can an orientation relative to a reference orientation of the mobile device or laser scanner. The point cloud usually corresponds to one or more "point lines" along the contour of the objects in the field of view; if necessary, however, the points can only lie approximately on such a line.

Diese Punktwolke allein erlaubt aber noch nicht, eine Position und/oder Orientierung des mobilen Geräts in der Umgebung zu bestimmen. Hierzu wird die Punktwolke bzw. Menge von Punkten mit einer Referenzpunktwolke bzw. Referenzmenge von Punkten verglichen. Es kann dann eine Transformation bestimmt werden, die die Punktwolke (bzw. Menge von Punkten) mit der Referenzpunktwolke (bzw. Referenzmenge von Punkten) am besten zur Deckung bzw. in Übereinstimmung bringt, d.h. beide aneinander angleicht. Diese Transformation entspricht dann einer Position und/oder Orientierung des mobilen Geräts bei Erfassung der Punktwolke relativ zur Referenzpunktwolke bzw. einem Koordinatensystem der Referenzpunktwolke. Wenn es sich bei der Referenzpunktwolke um eine Karte der Umgebung oder zumindest eines Teils davon handelt, so kann die aktuelle Position und/oder Orientierung des mobilen Geräts in der Umgebung bestimmt werden. Die Referenzpunktwolke (bzw. Karte der Umgebung) kann z.B. durch ständiges bzw. wiederholtes Hinzufügen neuer Punktwolken oder Teilen davon erweitert werden.However, this point cloud alone does not yet allow a position and/or orientation of the mobile device to be determined in the environment. For this purpose, the point cloud or set of points is compared with a reference point cloud or reference set of points. A transformation can then be determined which best brings the point cloud (or set of points) into congruence with the reference point cloud (or reference set of points), i.e. aligns both with one another. This transformation then corresponds to a position and/or orientation of the mobile device when the point cloud is recorded relative to the reference point cloud or a coordinate system of the reference point cloud. If the reference point cloud is a map of the area or at least a part of it, then the current position and/or orientation of the mobile device in the area can be determined. The reference point cloud (or map of the environment) can be expanded, for example, by constantly or repeatedly adding new point clouds or parts thereof.

In diesem Zusammenhang wird auch von SLAM gesprochen. Als SLAM („Simultaneous Localization and Mapping“, in etwa: Simultane Positionsbestimmung und Kartierung) wird ein Verfahren in der Robotik bezeichnet, bei dem ein mobiles Gerät wie ein Roboter gleichzeitig eine Karte seiner Umgebung erstellen und seine räumliche Lage innerhalb dieser Karte schätzen kann oder muss. Es dient damit z.B. dem Erkennen von Hindernissen und unterstützt somit die autonome Navigation.SLAM is also used in this context. SLAM (“Simultaneous Localization and Mapping”) is a method in robotics in which a mobile device like a robot can simultaneously create a map of its surroundings and estimate its spatial position within this map or must. It is used, for example, to recognize obstacles and thus supports autonomous navigation.

Um auf diese Weise die Position und/oder Orientierung des mobilen Geräts in der Umgebung hinreichend genau bestimmen zu können, sollte die Umgebung über ausreichend viele charakteristische Konturen verfügen, die sich in entsprechenden Punkten der Punktwolke niederschlagen, um das dem „Scan Matching“ zugrundeliegenden Problem in allen drei Freiheitsgraden eindeutig eingrenzen zu können. Wie sich gezeigt hat, gibt es jedoch Fälle, in denen dies nicht der Fall ist.In order to be able to determine the position and/or orientation of the mobile device in the environment with sufficient accuracy in this way, the environment should have a sufficient number of characteristic contours that are reflected in corresponding points in the point cloud to solve the problem underlying "scan matching". in all three degrees of freedom. However, as has been shown, there are cases where this is not the case.

Vor diesem Hintergrund wird vorgeschlagen, zusätzlich zu der Menge von Punkten wie beim üblichen „Scan Matching“ auch Reflektormarker oder andere Marker zu berücksichtigen.Against this background, it is proposed to also consider reflector markers or other markers in addition to the set of points as in the usual "scan matching".

Hierbei wird eine aktuelle erste Menge von Punkten erster Art in der Umgebung bereitgestellt oder erhalten, die ausgehend von und relativ zu dem mobilen Gerät bestimmt worden sind. Hierzu kann eine Entfernungsmessung (bspw. das schon erwähnte Laserscanning) verwendet werden, also z.B. mittels eines an oder in dem mobilen Gerät vorgesehenen Lidar-Sensors. Bei diesen Punkten erster Art handelt es sich insbesondere um Punkte wie beim üblichen „Scan Matching“, wie vorstehend erwähnt.In this case, a current first set of points of the first type in the area is provided or obtained, which have been determined on the basis of and relative to the mobile device. A distance measurement (e.g. the already mentioned laser scanning) can be used for this purpose, e.g. by means of a lidar sensor provided on or in the mobile device. These points of the first type are, in particular, points as in the usual “scan matching” as mentioned above.

Außerdem wird eine aktuelle zweite Menge von einem oder mehreren Markern bereitgestellt oder erhalten. Die aktuelle zweite Menge enthält insbesondere die aktuell „sichtbaren“ Marker. Weiterhin wird eine dritte Menge von nachverfolgten Markern bestimmt, die sowohl in der aktuellen zweiten Menge als auch in einer zweiten Referenzmenge aus einem oder mehreren nachverfolgten Markern enthalten sind. Dies kann z.B. anhand von Identifikationen (oder IDs) erfolgen, die den einzelnen (nachverfolgten) Markern zugeordnet sind oder werden, wie später noch näher erläutert werden soll. Unter nachverfolgten Markern sind insbesondere Marker in der Umgebung, z.B. die erwähnten Reflektormarker, zu verstehen, die bereits bei früheren Scans als dem aktuellen Scan (oder Erfassungszyklus) erkannt worden sind, also z.B. über mehrere Scans nachverfolgt („getrackt“) wurden. Nähere Ausführungen hierzu folgen später. Marker werden vorzugsweise anhand von Punkten zweiter Art bestimmt, sodass Punkte zweiter Art den Markern entsprechen, wobei Punkte erster Art anderen Objekten in der Umgebung als den Markern entsprechen. Auch bei Punkten zweiter Art kann eine Entfernungsmessung (bspw. das schon erwähnte Laserscanning) verwendet werden, und zwar insbesondere mittels desselben Laserscanners bzw. Lidar-Sensors wie für die Punkte erster Art.A current second set of one or more markers is also provided or obtained. In particular, the current second set contains the currently “visible” markers. Furthermore, a third set of tracked markers is determined, which is contained both in the current second set and in a second reference set of one or more tracked markers. This can be done, for example, using identifications (or IDs) that are or will be assigned to the individual (tracked) markers, as will be explained in more detail later. Tracked markers are to be understood in particular as markers in the environment, e.g. the reflector markers mentioned, which have already been recognized in earlier scans than the current scan (or acquisition cycle), i.e. e.g. tracked over several scans. More details on this will follow later. Markers are preferably determined using second-type points, such that second-type points correspond to the markers, with first-type points corresponding to objects in the environment other than the markers. A distance measurement (e.g. the already mentioned laser scanning) can also be used for points of the second type, in particular by means of the same laser scanner or lidar sensor as for the points of the first type.

Bei den Punkten zweiter Art handelt es sich dann insbesondere um solche, die einer bei der Entfernungsmessung bestimmten Lichtintensität entsprechen, die oberhalb eines Schwellwerts liegt. Der Schwellwert kann z.B. fest vorgegeben sein. Eine Unterscheidung kann aber auch anderweitig getroffen werden, z.B. mit einem Schwellwert, der abhängig von dem Median oder Mittelwert aller Intensitäten eines Scans ist, oder mittels Maschinenlernalgorithmen. Besonders zweckmäßig ist aber auch, dass ein Intensitätssprung am Rand des Markers berücksichtigt wird, auf gleicher räumlicher Ebene, von niedrig (dort, wo kein Marker ist) auf hoch (dort, wo der Marker beginnt) und wieder auf niedrig (dort, wo der Marker wieder zu Ende ist). Bei den Punkten erster Art kann es sich um alle Punkte handeln oder nur um solche, die einer bei der Entfernungsmessung bestimmten Lichtintensität entsprechen, die unterhalb des Schwellwerts liegt.The points of the second type are then in particular those which correspond to a light intensity determined during the distance measurement which is above a threshold value. The threshold value can be fixed, for example. However, a distinction can also be made in other ways, for example with a threshold value that is dependent on the median or mean value of all intensities of a scan, or by means of machine learning algorithms. However, it is also particularly useful that an intensity jump at the edge of the marker is taken into account, on the same spatial level, from low (where there is no marker) to high (where the marker begins) and back to low (where the marker ends again). The points of the first type can be all points or only those that correspond to a light intensity determined during the distance measurement that is below the threshold value.

Die Punkte zweiter Art können also vordefinierten Markern wie z.B. den erwähnten Reflektormarkern, in der Umgebung, entsprechen, die Punkte erster Art hingegen allen oder allen anderen Objekten in der Umgebung als den vordefinierten Markern. Dabei ist zu beachten, dass - z.B. je nach Größe oder Grad der Erfassung eines Markers - einer oder auch mehrere Punkte zweiter Art einem einzelnen Marker entsprechen können. Es können in der betreffenden Menge eines Scans Punkte zweiter Art vorhanden sein, die einem oder mehreren Markern entsprechen. Bei mehreren Markern sind dann notwendigerweise mehrere Punkte zweiter Art vorhanden.The points of the second type can therefore correspond to predefined markers such as the aforementioned reflector markers in the area, while the points of the first type can correspond to all or all other objects in the area than the predefined markers. It should be noted that - e.g. depending on the size or degree of coverage of a marker - one or more points of the second type can correspond to a single marker. There may be points of the second type corresponding to one or more markers in the relevant set of a scan. If there are several markers, there are then necessarily several points of the second type.

Eine aktuelle Position und/oder Orientierung des mobilen Geräts in der Umgebung wird dann basierend auf der aktuellen ersten Menge, einer ersten Referenzmenge von Punkten erster Art, der dritten Menge und der zweiten Referenzmenge bestimmt. Die umfasst insbesondere, dass die erste Menge mit der ersten Referenzmenge, im Rahmen einer Optimierung, zur Übereinstimmung gebracht wird, und dass bei der Optimierung eine Kostenfunktion, insbesondere gewichtet, berücksichtigt wird. Die Kostenfunktion gibt ein Maß für Abstände der nachverfolgten Marker zwischen der dritten Menge und der zweiten Referenzmenge an. Es versteht sich, dass - wie für eine Optimierung üblich - in der Regel keine exakte Übereinstimmung erreicht wird bzw. werden muss; vielmehr wird lediglich versucht, eine möglichst gute Übereinstimmung zu erreichen. Basierend auf der aktuellen Position und/oder Orientierung des mobilen Geräts kann dann auch ein Bewegungspfad bestimmt werden, auf dem sich das mobile Gerät in der Umgebung bewegen soll. Hierzu können, basierend auf dem Bewegungspfad sowie der aktuellen Position und/oder Orientierung, Steuerungsinformationen zum Bewegen des mobilen Geräts bestimmt werden; die Steuerungsinformationen können dann bereitgestellt werden bzw. das mobile Gerät kann basierend auf den Steuerungsinformationen bewegt werden.A current position and/or orientation of the mobile device in the environment is then determined based on the current first set, a first reference set of points of the first type, the third set and the second reference set. This includes, in particular, that the first quantity is brought into agreement with the first reference quantity as part of an optimization, and that a cost function, in particular weighted, is taken into account in the optimization. The cost function gives a measure of distances of the tracked markers between the third set and the second reference set. It goes without saying that--as is usual for an optimization--an exact match is not or does not have to be achieved as a rule; rather, an attempt is made to achieve as good a match as possible. Based on the current position and/or orientation of the mobile device, a movement path can then also be determined along which the mobile device is to move in the area. For this purpose, control information for moving the mobile device can be determined based on the movement path and the current position and/or orientation; the control information can then be provided or the mobile device can be moved based on the control information.

Die aktuelle Position und/oder Orientierung des mobilen Geräts in der Umgebung kann, insbesondere bei nicht automatisierten mobilen Geräten, z.B. auch zur Nachverfolgung („Tracken“) des mobilen Geräts verwendet werden. So kann z.B. bestimmt werden, wo sich ein Gabelstapler oder anderes mobiles Gerät gerade innerhalb einer Fabrikhalle befindet.The current position and/or orientation of the mobile device in the area can be used, especially in the case of non-automated mobile devices, e.g. to track the mobile device. For example, it can be determined where a forklift or other mobile device is currently located within a factory building.

Das „Scan Matching“ (mit natürlichen Konturen von Objekten in der Umgebung, Punkte erster Art) wird hier also mit der Idee der Reflektormarker bei der Laserentfernungsmessung (oder allgemein Marker oder Punkte zweiter Art) kombiniert, um die Vorteile aus beiden Ansätzen zu kombinieren und die Nachteile beider Ansätze auszugleichen. Dabei kann sich z.B. grundsätzlich auf die Lokalisierung mittels „Scan Matching“ verlassen werden, zumindest dort, wo dies ausreichend zuverlässig funktioniert; dies ist typischerweise in mehr als 95% der Umgebungen der Fall. Falls in der gewünschten Umgebung allerdings problematische Stellen anzutreffen sind, kann ein Benutzer z.B. eine gewisse Zahl an Reflektormarkern anbringen, durch deren Verwendung dann an dieser Stelle das möglicherweise zuvor mehrdeutige Ergebnis des „Scan Matching“ eindeutig wird. Solche problematischen Stellen können beispielsweise strukturarme Gänge, Bereiche mit unebenem Boden oder Umgebungen mit sehr vielen dynamischen Objekten sein.The "scan matching" (with natural contours of objects in the environment, points of the first kind) is thus combined here with the idea of reflector markers in laser distance measurement (or generally markers or points of the second kind) in order to combine the advantages of both approaches and balance the disadvantages of both approaches. For example, localization using "scan matching" can generally be relied on, at least where this works with sufficient reliability; this is typically the case in more than 95% of environments. However, if problematic areas are to be found in the desired environment, a user can, for example, attach a certain number of reflective markers, the use of which then makes the possibly previously ambiguous result of the “scan matching” clear at this point. Such problematic areas can be, for example, corridors with little structure, areas with uneven ground or environments with a large number of dynamic objects.

Der Vorteil im Vergleich zur Lokalisierung ohne Reflektormarker ist eine deutlich verbesserte Zuverlässigkeit des Lokalisierungsergebnisses an problematischen Stellen. Der Vorteil im Vergleich zu klassischen reinen reflektormarkerbasierten Lokalisierung ist der deutlich geringere Aufwand bei der Anbringung von Markern. Anstelle einer hohen Anzahl an Markern auf der ganzen Fläche müssen z.B. nur wenige Marker an kritischen Stellen angebracht werden. The advantage compared to localization without reflector markers is a significantly improved reliability of the localization result in problematic areas. The advantage compared to classic purely reflector marker-based localization is the significantly lower effort when attaching markers. Instead of a large number of markers all over the area, only a few markers have to be attached at critical points, for example.

Vorzugsweise wird die erste Menge mit der ersten Referenzmenge zur Übereinstimmung gebracht, indem eine Transformation bestimmt wird, die die erste Menge auf die erste Referenzmenge abbildet, wobei die aktuelle Position und/oder Orientierung des mobilen Geräts in der Umgebung basierend auf der Transformation bestimmt wird. Vorzugsweise wird die Transformation auch in der Kostenfunktion berücksichtigt. In der Praxis wird hierbei oft keine Transformation gefunden werden, die eine exakte Abbildung der Mengen aufeinander bewirkt; vielmehr geht es um eine - im Rahmen einer zeitlich begrenzten Optimierung - bestmögliche Transformation. Insbesondere werden beim Bestimmen der Transformation Punkte zweiter Art bzw. Marker höher gewichtet als Punkte erster Art, zumal diese typischerweise deutlich genauer sind. Es können also zwei Mengen verschiedenartiger Punkte während eines „Scan Matching“-Prozesses innerhalb eines Laserlokalisierungssystems gleichzeitig behandelt werden, also alle herkömmlichen Punkte (Punkte erster Art) auf natürlichen Konturen einerseits, und Punkte auf erkannten Reflektormarkern (Punkte zweiter Art) andererseits.Preferably, the first set is matched to the first reference set by determining a transformation that maps the first set to the first reference set, wherein the current position and/or orientation of the mobile device in the environment is determined based on the transformation. The transformation is preferably also taken into account in the cost function. In practice, often no transformation will be found that causes an exact mapping of the sets to each other; Rather, it is about the best possible transformation - within the framework of a time-limited optimization. In particular, when determining the transformation, points of the second type or markers are weighted more highly than points of the first type, especially since these are typically significantly more accurate. Thus, two sets of dissimilar points can be treated simultaneously during a "scan matching" process within a laser localization system, i.e. all conventional points (points first type) on natural contours on the one hand, and points on recognized reflector markers (points of the second type) on the other hand.

Während selbst das beste „Scan Matching“-Ergebnis unter alleiniger Verwendung von Konturpunkten (Punkte erster Art) in vielen Fällen uneindeutig sein kann - zum Beispiel die Position in einem langen Gang, von dem lediglich zwei parallele Linien gesehen werden, wodurch nicht sicher erkannt werden kann, wo genau entlang des Ganges sich die Position befindet - kann die Hinzuziehung von auf Reflektormarkern bzw. darauf erkannten Punkten (Punkte zweiter Art) zu einem eindeutigen Ergebnis führen. Das „Scan Matching“-Problem wird dann unter Berücksichtigung der Marker bzw. der darauf erkannten Punkte gelöst.While even the best "scan matching" result using only contour points (points of the first kind) can in many cases be ambiguous - for example the position in a long corridor from which only two parallel lines can be seen, thus not being recognized with certainty where exactly the position is along the corridor - the inclusion of points on reflector markers or points recognized on them (points of the second type) can lead to a clear result. The "scan matching" problem is then solved taking into account the markers or the points recognized on them.

Als „Scan Matching“-Verfahren, d.h. ein Verfahren, bei dem die erste Menge auf die erste Referenzmenge abgebildet wird, bzw. bei denen eine Transformatoin bestimmt wird, die diese Abbildung bewirkt, kommen grundsäztlich verschiedene Arten von Methoden bzw. Verfahren in Betracht. Beispielsweise können dies das sog. „Iterative Closest Point“-Verfahren (ICP) oder das „Normal Distributions Transform“-Verfahren (NDT) sein, vgl. P. Biber and W. Strasser, „The normal distributions transform: a new approach to laser scan matching,“ Proceedings 2003 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS 2003) (Cat. No.03CH37453), 2003, pp. 2743-2748 vol.3, doi: 10.1 109/IROS.2003.1249285. Die nachverfolgten Marker bzw. die Punkte zweiter Art können im Rahmen des „Scan Matching“-Verfahrens für die erste Menge bzw. Referenzmenge besonders einfach als Kostenfunktion (oder Kostenterm) berücksichtigt werden.As a "scan matching" method, i.e. a method in which the first set is mapped to the first reference set, or in which a transformation is determined that causes this mapping, fundamentally different types of methods or processes can be considered. For example, this can be the so-called “Iterative Closest Point” method (ICP) or the “Normal Distributions Transform” method (NDT), see P. Biber and W. Strasser, “The normal distributions transform: a new approach to laser scan matching,” Proceedings 2003 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS 2003) (Cat. No.03CH37453), 2003, pp. 2743-2748 vol.3, doi: 10.1 109/IROS.2003.1249285. The tracked markers or the points of the second type can be taken into account in a particularly simple manner as a cost function (or cost term) as part of the "scan matching" method for the first set or reference set.

Im Rahmen der vorliegenden Erfindung wird besonders auf das Nachverfolgen von Markern abgestellt. Marker der aktuellen zweiten Menge (d.h. im aktuellen Scan), die auch in der zweiten Referenzmenge vorhanden sind, also früher schon erkannt worden waren, werden für die Bestimmung von Position und/oder Orientierung herangezogen und hier als dritte Menge bezeichnet.Within the scope of the present invention, special emphasis is placed on the tracking of markers. Markers of the current second set (i.e. in the current scan), which are also present in the second reference set, i.e. had been recognized earlier, are used to determine the position and/or orientation and are referred to here as the third set.

Vorzugsweise werden Marker der aktuellen zweiten Menge, die nicht in der dritten Menge enthalten sind, also bisher noch nicht erkannt worden waren, nach der Bestimmung von Position und/oder Orientierung der zweiten Referenzmenge hinzugefügt. Bei zukünftigen Scans dienen dann auch diese als schon einmal erkannte - nachverfolgte - Marker.Preferably, markers of the current second set that are not contained in the third set, ie have not yet been recognized, are added after the position and/or orientation of the second reference set has been determined. In future scans, these will also serve as previously recognized - tracked - markers.

Vorzugsweise wird auch erfasst (und gespeichert), wie oft ein Marker aus der zweiten Referenzmenge bereits erkannt worden ist. Dies kann beispielsweise zur Erhöhung der Genauigkeit verwendet werden, wenn der dritten Menge nur solche Marker aus der zweiten Menge zugeordnet werden, bei denen diese Anzahl bereits mindestens einen Erkennungsschwellwert erreicht hat, z.B. dreimal.It is preferably also recorded (and stored) how often a marker from the second reference set has already been recognized. This can be used, for example, to increase the accuracy if only those markers from the second set are assigned to the third set, for which this number has already reached at least a detection threshold value, e.g. three times.

Das Nachverfolgen („Tracken“) von Markern bzw. Reflektormarkern wird also, mit anderen Worten, verwendet, um die Information daraus später für das „Scan Matching“ nutzen zu können. Dabei können aus den einzelnen Detektionen der Marker je Scan zusammenhängende Tracks (Treffer), also (über mehrere Scans hinweg) nachverfolgte Marker erzeugt werden. Hierbei wird berücksichtigt, dass bei aufeinanderfolgenden Scans die Veränderung der Position und/oder Orientierung des mobilen Geräts meist nur geringfügig abweicht, jedenfalls weniger als bei zeitlich weiter auseinanderliegenden Scans. Dies erlaubt es, Marker nachzuverfolgen; solche Marker sind dann sehr sicher auch tatsächlich in der Umgebung vorhandene Marker und können die Lokalisierung positiv beeinflussen. Eine noch detailliertere Erläuterung zum Nachverfolgen von Markern soll in Bezug auf die Figurenbeschreibung erfolgen.In other words, the following ("tracking") of markers or reflector markers is used in order to be able to use the information from it later for "scan matching". From the individual detections of the markers per scan, connected tracks (hits), i.e. markers tracked (over several scans), can be generated. It is taken into account here that the change in the position and/or orientation of the mobile device usually deviates only slightly in the case of successive scans, at least less than in the case of scans that are more distant in time. This allows markers to be tracked; such markers are then very definitely also markers actually present in the environment and can have a positive influence on the localization. An even more detailed explanation of the tracking of markers should be given in relation to the description of the figures.

Vorzugsweise wird zumindest ein Teil der Punkte der aktuellen ersten Menge zur ersten Referenzmenge hinzugefügt, wenn zumindest ein Kriterium erfüllt ist. Das erste Kriterium kann z.B. bedingen, dass zumindest ein gewisser Anteil der Punkte der aktuellen ersten Menge, z.B. 25%, 50% oder auch mehr, nicht auch schon in der ersten Referenzmenge vorhanden ist. Damit kann die erste Referenzmenge - und damit also letztlich auch die eigentliche Karte der Umgebung - erweitert werden. Mit jeder neuen, aktuellen ersten Menge kann dann also die Karte der Umgebung ggf. immer weiter verbessert werden. Weitere mögliche Kriterien (Heuristiken) sind z.B., ob eine gewisse Strecke zurückgelegt wurde oder ob der NDT-Score unterhalb eines gewissen Schwellwerts liegt.At least some of the points of the current first set are preferably added to the first reference set if at least one criterion is met. The first criterion can e.g. require that at least a certain proportion of the points of the current first set, e.g. 25%, 50% or even more, is not already present in the first reference set. In this way, the first reference set—and ultimately also the actual map of the environment—can be expanded. With each new, up-to-date first set, the map of the area can then be further improved, if necessary. Other possible criteria (heuristics) are, for example, whether a certain distance has been covered or whether the NDT score is below a certain threshold.

Durch das Nachverfolgen der Marker ergibt sich ein weiteres bevorzugtes Kriterium hierfür. Sobald ein neuer nachverfolgter Marker angelegt wird, d.h. der zweiten Referenzmenge hinzugefügt wird, kann zumindest ein Teil der Punkte der aktuellen ersten Menge oder die gesamte aktuelle erste Menge zur ersten Referenzmenge hinzugefügt werden. Der Teil beinhaltet insbesondere den neu nachverfolgten Marker bzw. den Bereich um diesen, die gesamte erste Menge beinhaltet diesen ohnehin. Damit können zukünftige „Scan Matches“ diesen Marker nutzen, da er dann sowohl im aktuellen Scan als auch in der lokalen Karte (Referenzmenge) vorkommt.A further preferred criterion for this results from the tracking of the markers. As soon as a new tracked marker is created, ie added to the second reference set, at least part of the points of the current first set or all of the current first set can be added to the first reference set. The part contains in particular the newly tracked marker or the area around it, the entire first set contains this anyway. This allows future "Scan Matches" use this marker, since it then occurs both in the current scan and in the local map (reference set).

Da die lokale Karte typischerweise aus mehreren Scans zusammengesetzt ist, kann es vorkommen, dass ein nachverfolgter Marker in der lokalen Karte mehrfach auftaucht, d.h., dass mehrere nachverfolgte Marker mit der gleichen ID vorhanden sind. Hierbei gibt es mehrere Möglichkeiten, wie damit umgegangen werden kann: Der älteste nachverfolgte Marker kann verwendet werden, um Drift zu verringern. Der neueste nachverfolgte Marker kann verwendet werden, um robuster gegen nicht komplett statische Marker zu sein. Ein Mittelwert aller nachverfolgten Marker mit der gleichen ID kann verwendet werden, um robuster gegenüber verrauschten Messungen der Markerposition zu werden.Since the local map is typically composed of several scans, it can happen that a tracked marker appears multiple times in the local map, i.e. that there are several tracked markers with the same ID. There are several ways to deal with this: The oldest tracked marker can be used to reduce drift. The latest tracked marker can be used to be more robust against markers that are not completely static. An average of all tracked markers with the same ID can be used to become more robust to noisy marker position measurements.

Es ist auch von Vorteil, wenn das Bestimmen der aktuellen Position und/oder Orientierung des mobilen Geräts in der Umgebung nur dann basierend auf der aktuellen ersten Menge, der ersten Referenzmenge, der dritten Menge und der zweiten Referenzmenge erfolgt, wenn ein weiteres Kriterium erfüllt ist. Dieses weitere Kriterium kann z.B. fordern, dass überhaupt ein Marker (oder Punkt zweiter Art) in der aktuellen Messung vorhanden ist. Alternativ oder zusätzlich kann das weitere Kriterium z.B. fordern, dass sich das mobile Gerät innerhalb eines bestimmten Bereichs der Umgebung, z.B. einem solchen, in dem bekannt ist, dass Reflektormarker vorhanden sind, aufhält. Wenn das weitere Kriterium nicht erfüllt ist, erfolgt das Bestimmen der aktuellen Position und/oder Orientierung des mobilen Geräts in der Umgebung nur basierend auf der ersten Menge und der der ersten Referenzmenge, also wie bei herkömmlichem „Scan-Matching“ (ohne Reflektormarker oder ähnlichem).It is also advantageous if the current position and/or orientation of the mobile device in the area is only determined based on the current first set, the first reference set, the third set and the second reference set if another criterion is met . This additional criterion can, for example, require that a marker (or point of the second type) is present in the current measurement. Alternatively or additionally, the further criterion can require, for example, that the mobile device is located within a certain area of the environment, e.g. one in which it is known that reflector markers are present. If the other criterion is not met, the current position and/or orientation of the mobile device in the environment is determined based only on the first set and the first reference set, i.e. as with conventional "scan matching" (without reflector markers or similar ).

Eine erfindungsgemäße Recheneinheit, z.B. ein Steuergerät eines Roboters, ist, insbesondere programmtechnisch, dazu eingerichtet, ein erfindungsgemäßes Verfahren durchzuführen.A computing unit according to the invention, e.g. a control unit of a robot, is set up, in particular in terms of programming, to carry out a method according to the invention.

Die Erfindung betrifft auch ein mobiles Gerät mit einer erfindungsgemäßen Recheneinheit. Vorzugsweise ist das mobile Gerät als sich zumindest teilweise automatisiert bewegendes Fahrzeug, insbesondere als Personenbeförderungsfahrzeug oder als Güterbeförderungsfahrzeug, oder als Roboter, ausgebildet.The invention also relates to a mobile device with a computing unit according to the invention. The mobile device is preferably designed as a vehicle that moves at least partially automatically, in particular as a passenger transport vehicle or as a goods transport vehicle, or as a robot.

Auch die Implementierung eines erfindungsgemäßen Verfahrens in Form eines Computerprogramms oder Computerprogrammprodukts mit Programmcode zur Durchführung aller Verfahrensschritte ist vorteilhaft, da dies besonders geringe Kosten verursacht, insbesondere wenn ein ausführendes Steuergerät noch für weitere Aufgaben genutzt wird und daher ohnehin vorhanden ist. Geeignete Datenträger zur Bereitstellung des Computerprogramms sind insbesondere magnetische, optische und elektrische Speicher, wie z.B. Festplatten, Flash-Speicher, EEPROMs, DVDs u.a.m. Auch ein Download eines Programms über Computernetze (Internet, Intranet usw.) ist möglich.The implementation of a method according to the invention in the form of a computer program or computer program product with program code for carrying out all method steps is advantageous because this causes particularly low costs, especially if an executing control device is also used for other tasks and is therefore available anyway. Suitable data carriers for providing the computer program are, in particular, magnetic, optical and electrical memories, such as hard drives, flash memories, EEPROMs, DVDs, etc. It is also possible to download a program via computer networks (Internet, intranet, etc.).

Weitere Vorteile und Ausgestaltungen der Erfindung ergeben sich aus der Beschreibung und der beiliegenden Zeichnung.Further advantages and refinements of the invention result from the description and the attached drawing.

Es versteht sich, dass die vorstehend genannten und die nachfolgend noch zu erläuternden Merkmale nicht nur in der jeweils angegebenen Kombination, sondern auch in anderen Kombinationen oder in Alleinstellung verwendbar sind, ohne den Rahmen der vorliegenden Erfindung zu verlassen.It goes without saying that the features mentioned above and those still to be explained below can be used not only in the combination specified in each case, but also in other combinations or on their own, without departing from the scope of the present invention.

Die Erfindung ist anhand eines Ausführungsbeispiels in der Zeichnung schematisch dargestellt und wird im Folgenden unter Bezugnahme auf die Zeichnung ausführlich beschrieben.The invention is shown schematically in the drawing using an exemplary embodiment and is described in detail below with reference to the drawing.

Figurenlistecharacter list

  • 1 zeigt schematisch ein mobiles Gerät in einer Umgebung, bei dem ein erfindungsgemäßes Verfahren durchführbar ist. 1 shows schematically a mobile device in an environment in which a method according to the invention can be carried out.
  • 2 zeigt schematisch Referenzmengen von Punkten, wie sie bei einem erfindungsgemäßen Verfahren in einer bevorzugten Ausführungsform auftreten können. 2 shows schematically reference sets of points as can occur in a preferred embodiment of a method according to the invention.
  • 3 zeigt schematisch Mengen von Punkten, wie sie bei einem erfindungsgemäßen Verfahren in einer bevorzugten Ausführungsform auftreten können. 3 shows schematically sets of points as can occur in a preferred embodiment of a method according to the invention.
  • 4 zeigt schematisch einen Ablauf eines erfindungsgemäßen Verfahrens in einer bevorzugten Ausführungsform. 4 shows schematically a sequence of a method according to the invention in a preferred embodiment.

Detaillierte Beschreibung der ZeichnungDetailed description of the drawing

In 1 ist schematisch ein mobiles Gerät 100 in einer Umgebung 150 dargestellt, bei dem ein erfindungsgemäßes Verfahren durchführbar ist. Bei dem mobilen Gerät 100 handelt es sich z.B. um einen Roboter oder ein automatisiert (bzw. autonom) fahrendes Fahrzeug, mit einer Recheneinheit 110 sowie einem Lidar-Sensor 120 zur Laserentfernungsmessung; ein Erfassungsbereich des Lidar-Sensors 120 ist beispielhaft gestrichelt angedeutet.In 1 a mobile device 100 is shown schematically in an environment 150 in which a method according to the invention can be carried out. The mobile device 100 is, for example, a robot or an automated (or autonomous) driving vehicle, with a computing unit 110 and a lidar sensor 120 for laser distance measurement; a detection range of the lidar sensor 120 is indicated by dashed lines as an example.

Bei der Umgebung 150 handelt es sich beispielhaft um das Innere eines Gebäudes mit einem z.B. längeren Flur, von links in der 1 beginnend, mit Seitenwänden 152 und 154. Der Flur weitet sich, nach rechts in der 1 hin, auf der Seite der Seitenwand 152 hin auf, es sind zwei Säulen 156 und 158 vorgesehen. An den Seitenwänden 152 und 154 sind beispielhaft jeweils drei Reflektormarker 160, 161, 162 bzw. 163, 164, 165 vorgesehen.The environment 150 is, for example, the interior of a building with a longer corridor, for example, from the left in the 1 beginning with side walls 152 and 154. The hallway widens, to the right in the 1 towards, towards the side wall 152 side, two columns 156 and 158 are provided. Three reflector markers 160, 161, 162 or 163, 164, 165 are provided on the side walls 152 and 154, for example.

Das mobile Gerät 100 soll sich nun z.B. entlang des Bewegungspfades 102 in der Umgebung 150 bewegen. Hierzu ist die Kenntnis der aktuellen Position und/oder Orientierung des mobilen Geräts 100 erforderlich, um bestimmen zu können, wie das mobile Gerät 100 angesteuert werden muss, um dem Bewegungspfad 102 folgen zu können, oder auch, um zunächst den Bewegungspfad 102 planen zu können. Wie erwähnt, kann die Kenntnis der aktuellen Position und/oder Orientierung auch (nur) der Nachverfolgung des mobilen Geräts dienen.The mobile device 100 is now supposed to move along the movement path 102 in the environment 150, for example. This requires knowledge of the current position and/or orientation of the mobile device 100 in order to be able to determine how the mobile device 100 must be controlled in order to be able to follow the movement path 102, or also in order to be able to plan the movement path 102 first . As mentioned, knowledge of the current position and/or orientation can also be used (only) to track the mobile device.

Hierzu kann mittels des Lidar-Sensors 120 die Umgebung 150 abgescannt werden. Dabei wird der Laserscanner im Lidar-Sensor bewegt, während mittels ausgesendeter Laserstrahlen und empfangener, reflektierter Strahlung eine Vielzahl an Punkten erhalten wird; jeder Punkt steht dabei für einen Punkt oder eine kleine Fläche in der Umgebung, dort z.B. an einem Objekt, von dem eine reflektierte Strahlung empfangen wird.For this purpose, the environment 150 can be scanned by means of the lidar sensor 120 . The laser scanner is moved in the lidar sensor, while a large number of points are obtained by means of emitted laser beams and received, reflected radiation; each point stands for a point or a small area in the environment, e.g. on an object from which reflected radiation is received.

In 2 sind hierzu für die Umgebung 150 aus 1 beispielhaft Punkte dargestellt, wie sie mittels Laserentfernungsmessung grundsätzlich erhalten werden können. Dabei gibt es Punkte 210 erster Art, die durch Reflexion der Laserstrahlen an z.B. den Seitenwänden 152, 154 sowie den Seitenflächen der Säulen 156, 158 entstehen bzw. erhalten werden. Diese Punkte 210 erster Art sind mittels kleiner Kreuze dargestellt. Außerdem gibt es Punkte 220 zweiter Art, die durch Reflexion der Laserstrahlen an den Reflektormarkern 160 bis 165 entstehen bzw. erhalten werden. Diese Punkte 220 zweiter Art sind mittels Kreisen dargestellt. Wie erwähnt, können je Reflektormarker auch mehrere Punkte zweiter Art vorhanden sein.In 2 are off for this for the environment 150 1 points are shown as examples of how they can be obtained in principle using laser distance measurement. There are points 210 of the first type, which arise or are obtained by reflection of the laser beams on, for example, the side walls 152, 154 and the side surfaces of the columns 156, 158. These points 210 of the first type are represented by small crosses. There are also points 220 of the second type, which arise or are obtained by reflecting the laser beams at the reflector markers 160 to 165 . These points 220 of the second type are represented by circles. As mentioned, several points of the second type can also be present for each reflector marker.

Diese beiden Arten von Punkten lassen sich unterscheiden, da die von den Reflektormarkern reflektierte Strahlung aufgrund der entsprechenden Ausbildung der Reflektormarker (z.B. als Spiegel) im Lidar-Sensor eine deutlich höhere Lichtintensität erzeugt als die von den übrigen Objekten in der Umgebung reflektierte Strahlung, wo die Laserstrahlung zumeist diffus gestreut wird.These two types of points can be distinguished because the radiation reflected by the reflector markers generates a significantly higher light intensity than the radiation reflected by the other objects in the area, due to the corresponding design of the reflector markers (e.g. as mirrors) in the lidar sensor, where Laser radiation is mostly diffusely scattered.

Die in 2 gezeigten Punkte bilden zumindest im Wesentlichen die Umgebung 150 aus 1 ab; es handelt sich um mehr Punkte als aus Sicht des mobilen Geräts 100 an der in 1 gezeigten Position erfasst werden können. Diese Punkte können als Referenz oder Karte der Umgebung 150 dienen; sie kann z.B. über mehrere Erfassungszyklen hinweg erhalten worden sein. Hierzu können die Punkte 210 erster Art zu einer ersten Referenzmenge 212 zusammengefasst werden.In the 2 The points shown at least essentially form the surroundings 150 1 away; it is more points than seen from the mobile device 100 at the in 1 shown position can be detected. These points can serve as a reference or map of the area 150; it may have been obtained over several acquisition cycles, for example. For this purpose, the points 210 of the first type can be combined to form a first reference set 212 .

In 3 sind für die Umgebung 150 aus 1 ebenfalls beispielhaft Punkte dargestellt, wie sie mittels Laserentfernungsmessung grundsätzlich erhalten werden können. Dabei gibt es Punkte 310 erster Art, die durch Reflexion der Laserstrahlen an z.B. den Seitenwänden 152, 154 sowie den Seitenflächen der Säulen 156, 158 entstehen bzw. erhalten werden. Diese Punkte 310 erster Art sind mittels kleiner Kreuze dargestellt. Außerdem gibt es Punkte 320 zweiter Art, die durch Reflexion der Laserstrahlen an den Reflektormarkern 162, 164 und 165 entstehen bzw. erhalten werden. Diese Punkte 320 zweiter Art sind mittels Kreisen dargestellt.In 3 are off for the area 150 1 points are also shown as examples of how they can in principle be obtained by means of laser distance measurement. There are points 310 of the first type, which arise or are obtained by reflection of the laser beams on, for example, the side walls 152, 154 and the side surfaces of the columns 156, 158. These points 310 of the first type are represented by small crosses. There are also points 320 of the second type, which arise or are obtained by reflecting the laser beams at the reflector markers 162, 164 and 165. These points 320 of the second type are represented by circles.

Anders als in 2, handelt es sich bei denen in 3 gezeigten Punkte nur um diejenigen Punkte, die aus Sicht des mobilen Geräts 100 an der in 1 gezeigten Position und auch in etwa der dort gezeigten Orientierung erfasst werden können. Diese Punkte können als aktuelle Punkte angesehen werden, wie sie z.B. an einer bestimmten Position mit bestimmter Orientierung des Geräts erfasst bzw. erhalten werden können. Die Punkte 310 erster Art können zu einer ersten Menge 312 zusammengefasst werden.Unlike in 2 , those in 3 points shown only by those points which, from the point of view of the mobile device 100, are at the in 1 shown position and can be detected in about the orientation shown there. These points can be regarded as current points, such as can be acquired or obtained at a specific position with a specific orientation of the device. The points 310 of the first type can be combined into a first set 312 .

Um die Information aus den Markern bzw. Reflektormarkern später für das „Scan Matching“ nutzen zu können, wird das Nachverfolgen („Tracken“) von Markern bzw. Reflektormarkern verwendet. Dabei können aus den einzelnen Detektionen der Marker je Scan zusammenhängende Tracks (Treffer), also (über mehrere Scans hinweg) nachverfolgte Marker erzeugt werden.In order to be able to use the information from the markers or reflector markers later for “scan matching”, the tracking of markers or reflector markers is used. From the individual detections of the markers per scan, connected tracks (hits), i.e. markers tracked (over several scans), can be generated.

Dazu kann angenommen werden, dass bei jedem Scan (also in jedem Zeitschritt) eine Menge von Detektionen D = {d1, ... , dND } als zweite Menge und eine Menge von nachverfolgten (also früher bzw. mehrfach erkannten) Markern („Tracks“) T = {t1, ..., tNT} als zweite Referenzmenge gegeben sind. Die Menge von nachverfolgten Markern umfasst z.B. diejenigen Marker, die in einem oder mehreren früheren Scans bereits vorhanden waren. Beispielsweise können dies die sechs Marker 160 bis 165 aus 1 sein, sodass die sechs gezeigten Punkte 220 zweiter Art als zweite Referenzmenge 222 von nachverfolgten Markern ( 2) angesehen werden können.It can be assumed that for each scan (i.e. in each time step) there is a set of detections D = {d 1 , ... , d N D } are given as the second set and a set of markers (“tracks”) T = {t 1 , ..., t NT } that have been tracked (ie recognized earlier or more than once) as the second set of references. The set of tracked markers includes, for example, those markers that were already present in one or more previous scans. For example, the six markers 160 to 165 can do this 1 be such that the six points 220 of the second type shown serve as a second reference set 222 of tracked markers ( 2 ) can be viewed.

Die Menge von Detektionen umfasst diejenigen Marker, die im aktuellen Scan erfasst werden. Beispielsweise können dies die drei Marker 162, 164 und 165 aus 1 sein, sodass die drei gezeigten Punkte 320 zweiter Art als zweite Menge 322 von Markern (3) angesehen werden kann.The set of detections includes those markers that are detected in the current scan. For example, the three markers 162, 164 and 165 can do this 1 be such that the three points 320 shown of the second type as a second set 322 of markers ( 3 ) can be viewed.

Um diejenigen Marker, die für die Posenbestimmung verwendet werden, zu bestimmen, werden Detektion und Tracks einander zugeordnet, so dass die Summe der Abstände zwischen den Tracks und den Detektionen, cost(A), minimiert wird. So kann also z.B. versucht werden, die drei Marker, die in 3 erkannt worden sind, den sechs in 2 erkannten Markern zuzuordnen.In order to determine those markers that are used for pose determination, detection and tracks are associated with each other such that the sum of the distances between the tracks and the detections, cost(A), is minimized. So, for example, you can try to use the three markers that are in 3 have been recognized, the six in 2 assigned to recognized markers.

Dabei können jede Detektion und jeder Track maximal einmal zugeordnet werden. Detektionen und Tracks, die übrig bleiben, erhalten z.B. fixe Kosten cD > 0 bzw. cT > 0. Die Menge der Zuordnungen wird dabei beschrieben als A = {(i,j) | di ist tj zugeordnet}. cost ( A ) = ( i , j ) A | d i t j | 2 + ( N D | A | ) c D + ( N T | A | ) c T

Figure DE102022201427A1_0001
Each detection and each track can be assigned a maximum of once. For example, detections and tracks that remain have fixed costs c D > 0 or c T > 0. The set of assignments is described as A = {(i,j) | d i is associated with t j }. cost ( A ) = ( i , j ) A | i.e i t j | 2 + ( N D | A | ) c D + ( N T | A | ) c T
Figure DE102022201427A1_0001

Dabei sind ND bzw. NT die Anzahl der nicht zugeordneten Detektionen bzw. Tracks. Die Zuordnungen, welche diese Kosten minimieren, werden z. B. mit der „Ungarischen Methode“ (Hungarian Algorithm, auch Kuhn-Munkres-Algorithm, vgl. „James Munkres: Algorithms for the Assignment and Transportation Problems, Journal of the Society for Industrial and Applied Mathematics, Vol. 5 No. 1, 32-38, 1957.“) bestimmt. Für nicht zugeordnete Detektionen wird anschließend jeweils ein neuer Track erstellt und mit einer eindeutigen Track ID versehen, d.h. sie werden der zweiten Referenzmenge hinzugefügt. Wenn also z.B. der Marker 165 in 2 (noch) nicht erkannt worden wäre, würde hierfür ein neuer Track bzw. ein neuer nachverfolgter Marker angelegt. Ein Track kann insbesondere Koordinaten des Markers umfassen.N D and N T are the number of unassigned detections or tracks. The allocations that minimize these costs are e.g. B. with the "Hungarian Method" (Hungarian Algorithm, also Kuhn-Munkres Algorithm, cf. "James Munkres: Algorithms for the Assignment and Transportation Problems, Journal of the Society for Industrial and Applied Mathematics, Vol. 5 No. 1, 32-38, 1957.”). A new track is then created for unassigned detections and provided with a unique track ID, ie they are added to the second reference set. For example, if the marker is 165 in 2 had not (yet) been detected, a new track or a new tracked marker would be created for this. A track can in particular include coordinates of the marker.

Nicht zugeordnete Tracks, also z.B. die Marker 160, 161, 163, die in 2 noch erkannt worden sind, bleiben zunächst unverändert erhalten, werden aber z.B. nach einer gewissen Zahl von Zeitschritten bzw. Scans ohne eine zugeordnete Detektion verworfen.Unassigned tracks, e.g. markers 160, 161, 163, which are in 2 have still been recognized initially remain unchanged, but are discarded, for example, after a certain number of time steps or scans without an associated detection.

Um die Robustheit gegenüber kurzzeitigen Fehldetektionen zu erhöhen (z.B. Fehldetektionen, die nur in einem einzelnen Scan auftauchen), ist es zweckmäßig, für die weitere Verarbeitung nur Tracks zu nutzen, die mehrfach, z.B. mindestens dreimal detektiert wurden.In order to increase the robustness against short-term incorrect detections (e.g. incorrect detections that only appear in a single scan), it is advisable to only use tracks for further processing that have been detected several times, e.g. at least three times.

Um die Position und Orientierung des mobilen Geräts in der Situation der 3 zu bestimmen, soll die erste Menge 312 mit der ersten Referenzmenge 212 zur Überlappung bzw. Übereinstimmung gebracht werden, wobei die Marker bzw. die Tracks, die sowohl in der aktuellen zweiten Menge 322 als auch in der zweiten Referenzmenge 322 enthalten sind - diese werden als dritte Menge 332 bezeichnet und sind im gezeigten Beispiel die Marker 162, 154, 165 - über eine Kostenfunktion berücksichtigt werden. Eine Transformation, die, z.B. angewendet auf die erste Menge die entsprechenden Punkte auf die erste Referenzmenge abbildet, ergibt die Position und Orientierung des mobilen Geräts in der Situation der 3 relativ zu der Situation in 2.To the position and orientation of the mobile device in the situation of 3 to determine, the first set 312 is to be made to overlap or match with the first reference set 212, with the markers or tracks that are contained in both the current second set 322 and in the second reference set 322 - these are defined as third set 332 and in the example shown the markers 162, 154, 165 are taken into account via a cost function. A transformation that, for example applied to the first set, maps the corresponding points to the first reference set, yields the position and orientation of the mobile device in the situation 3 relative to the situation in 2 .

In 4 ist nun ein erfindungsgemäßes Verfahren in einer bevorzugten Ausführungsform anhand eines Ablaufdiagramms schematisch dargestellt. In einem neuen Messzyklus können vorzugsweise zunächst, in einem Schritt 400, Informationen z.B. aus Odometrie und/oder Inertialsensoren erhalten bzw. erfasst werden, die es erlauben, in einem Schritt 402, die aktuelle Position und/oder Orientierung (zumindest grob) zu schätzen. Dies ist z.B. möglich, da mittels Odometrie bestimmt werden kann, wie viel sich die Position relativ zur letzten bekannten Position geändert hat; mittels Inertialsensoren kann dies für die Orientierung bestimmt werden. Wenn solche Informationen nicht vorhanden sind oder nicht verwendet werden können oder sollen, kann die aktuelle Position und/oder Orientierung aber z.B. auch anhand von Erfahrungswerten geschätzt werden. Diese geschätzte aktuelle Position und/oder Orientierung kann dann für das nachfolgende „Scan Matching“-Verfahren verwendet werden. Ebenso kann aber die zuletzt bekannte Position und/oder Orientierung für das nachfolgende „Scan Matching“-Verfahren verwendet werden, d.h. eine solche initiale Schätzung muss nicht notwendigerweise stattfinden.In 4 a method according to the invention is now shown schematically in a preferred embodiment using a flow chart. In a new measurement cycle, information can be obtained or recorded, for example from odometry and/or inertial sensors, in a step 400, which allows the current position and/or orientation (at least roughly) to be estimated in a step 402. This is possible, for example, because odometry can be used to determine how much the posi tion has changed relative to the last known position; this can be determined for orientation using inertial sensors. If such information is not available or cannot or should not be used, the current position and/or orientation can also be estimated using empirical values, for example. This estimated current position and/or orientation can then be used for the subsequent "scan matching" procedure. However, the last known position and/or orientation can also be used for the subsequent “scan matching” method, ie such an initial estimation does not necessarily have to take place.

Weiterhin wird in einem Schritt 404 ein Scan mittels des Lidar-Sensors durchgeführt. Dabei wird, in Schritt 406, die aktuelle erste Menge 312 von Punkten 310 erster Art erhalten. In Schritt 408 werden einer oder mehrere Punkte 320 (in dem gezeigten Beispiel in 3 sind es drei Punkte) zweiter Art erhalten.Furthermore, in a step 404 a scan is carried out using the lidar sensor. In this case, in step 406, the current first set 312 of points 310 of the first type is obtained. In step 408, one or more points 320 (in the example shown in 3 there are three points) of the second kind received.

Anhand des einen oder der mehreren Punkte 320 wird, in einem Schritt 410, eine aktuelle zweite Menge an nachverfolgten Markern bestimmt. Daraus wiederum wird, einem Schritt 412, eine dritte Menge an nachverfolgten Markern bestimmt, die sowohl in der aktuellen zweiten Menge als auch in der zweiten Referenzmenge enthalten sind,Based on the one or more points 320, in a step 410 a current second set of tracked markers is determined. From this, in a step 412, a third set of tracked markers is determined, which are contained both in the current second set and in the second reference set,

Es wird dann, in Schritt 414, ein „Scan Matching“-Verfahren angewendet. Hierbei wird auf die geschätzte oder ggf. zuletzt bekannte Position und/oder Orientierung zurückgegriffen. Wie schon erwähnt, gibt es verschiedene sogenannte „Scan Matching“-Verfahren (oder auch Verfahren zur Registrierung von Punktwolken), von denen die meisten entweder auf dem „Iterative Closest Point“-Verfahren (ICP) oder dem „Normal Distributions Transform“-Verfahren (NDT) basieren. Nachfolgend soll das NDT-Verfahren zum „Scan Matching“ als Beispiel näher erläutert werden.Then, in step 414, a "scan matching" method is applied. In this case, the estimated or possibly last known position and/or orientation is used. As already mentioned, there are different so-called "scan matching" methods (or point cloud registration methods), most of which are based on either the "Iterative Closest Point" method (ICP) or the "Normal Distributions Transform" method (NDT) based. In the following, the NDT method for "Scan Matching" will be explained in more detail as an example.

Zunächst soll kurz die Funktionsweise eines „Scan Matching“-Verfahrens an sich erläutert werden. Als Eingabe eines „Scan Matching“-Verfahrens (dies gilt im Grunde für alle „Scan Matching“-Verfahren) sind eine aktuelle Menge an Punkten bzw. eine Punktwolke PA = {pA1, ...,>pAi }, Referenzmenge an Punkten bzw. eine Referenzpunktwolke PR = {pR1, ..., pRj} und eine initiale Schätzung der Position und/oder Orientierung der aktuellen Punktwolke TR,A relativ zur Referenzpunktwolke (oder eben ggf. die zuletzt bekannte) nötig.First of all, the functionality of a "scan matching" method should be briefly explained. A current set of points or a point cloud P A = {p A1 ,...,>p Ai }, reference set, is input to a "scan matching" procedure (this applies to all "scan matching" procedures). at points or a reference point cloud P R = {p R1 , ..., p Rj } and an initial estimate of the position and/or orientation of the current point cloud T R,A relative to the reference point cloud (or the last known one, if applicable). .

Das NDT-„Scan Matching“-Verfahren überführt in einem ersten Schritt die Referenzpunktwolke in eine sog. NDT-Darstellung. Dabei handelt es sich um ein diskretisiertes Raster von Zellen (NDT-Zellen), die jeweils entweder leer sind oder die in ihnen enthaltenen Punkte durch eine multivariate Normalverteilung mit Mittelwert q und Kovarianzmatrix Σ approximieren. Um Diskretisierungseffekte zu vermeiden ist es zweckmäßig, mehrere überlappende Raster zu verwenden.In a first step, the NDT "Scan Matching" process converts the reference point cloud into a so-called NDT representation. This is a discretized grid of cells (NDT cells), each of which is either empty or approximates the points they contain using a multivariate normal distribution with mean q and covariance matrix Σ. In order to avoid discretization effects, it is advisable to use several overlapping grids.

In einem zweiten Schritt werden alle Punkte der aktuellen Punktwolke basierend auf der aktuellen bzw. initialen Schätzung der Position und/oder Orientierung (Posenschätzung) TR,A in Referenzkoordinaten transformiert und mit der nächsten NDT-Zelle bzw. deren Mittelwert qi und Kovarianzmatrix Σi assoziiert.In a second step, all points of the current point cloud are transformed into reference coordinates based on the current or initial estimate of the position and/or orientation (pose estimate) T R,A and with the next NDT cell or its mean q i and covariance matrix Σ i associated.

In einem dritten Schritt wird diejenige relative Position und/oder Orientierung (Pose) TRr4 ermittelt, die den NDT-Score maximiert: NDT Score = i exp ( 1 2 ( T R , A   p A i q i ) t i 1 ( T R , A   p A i q i ) )

Figure DE102022201427A1_0002
In a third step, the relative position and/or orientation (pose) T Rr4 that maximizes the NDT score is determined: NDT score = i ex ( 1 2 ( T R , A p A i q i ) t i 1 ( T R , A p A i q i ) )
Figure DE102022201427A1_0002

Der zweite und dritte Schritt werden in der Regel mehrfach wiederholt, da veränderte Posenschätzungen zu anderen Assoziationen zwischen Punkten und NDT-Zellen führen können. Diejenige relative Position und/oder Orientierung (Pose) TR,A, die diesen NDT-Score maximiert, stellt dann die aktuelle Position und/oder Orientierung dar.The second and third steps are usually repeated several times, since changed pose estimates can lead to different associations between points and NDT cells. That relative position and/or orientation (pose) T R,A that maximizes this NDT score then represents the current position and/or orientation.

Dieses „Scan Matching“-Verfahren kann für die erwähnte aktuelle erste Menge an Punkten erster Art und die erste Referenzmenge an Punkten erster Art durchgeführt werden, wobei die nachverfolgten Marker als Kostenfunktion zu berücksichtigen ist, wie nachfolgend erläutert werden soll.This "scan matching" method can be carried out for the mentioned current first set of points of the first type and the first reference set of points of the first type, with the tracked markers having to be taken into account as a cost function, as will be explained below.

Bei der Verwendung von Markern bzw. Reflektormarkern stehen neben den oben genannten Punkten (erster Art) PA und PR weiterhin die zweite Menge an Markern TAM = {tAM1 , ...,tAMk } und die entsprechende zweite Referenzmenge TRM = {tRN1 , ...,tRNl } zur Verfügung. Die zweite Menge an Markern TAM kann der vorstehend erwähnten Menge an Detektionen D entsprechen, insbesondere aber auch nur eine Teilmenge davon sein. Die (nachverfolgten) Marker können IDs bzw. Track-IDs M1..., Mk bzw. N1, ... , Nl aufweisen. Anhand der Track-IDs kann bestimmt werden, welche Marker in beiden Mengen auftauchen; dies ist dann die erwähnte dritte Menge. Es handelt sich dann um diejenigen Marker, die im aktuellen Scan erkannt worden sind und zudem aber auch schon in früheren Scans. Basierend darauf kann dann eine Kostenfunktion definiert werden: cost marker = k { M 1 , , M k } { N 1 , N l } | T R , A   t A , k t R , k | 2

Figure DE102022201427A1_0003
When using markers or reflector markers, in addition to the points (first type) P A and P R mentioned above, there is also the second set of markers T AM = {t AM 1 , ...,t AM k } and the corresponding second reference set T RM = {t RN 1 ,...,t RN l } available. The second set of markers T AM can correspond to the above-mentioned set of detections D, but in particular can also only be a subset thereof. The (tracked) markers can have IDs or track IDs M 1 . . . , M k or N 1 , . . . , N l . The track IDs can be used to determine which markers appear in both sets; this is then the third set mentioned. These are then those markers that have been recognized in the current scan and also in previous scans. Based on this, a cost function can then be defined: cost marker = k { M 1 , ... , M k } { N 1 , ... N l } | T R , A t A , k t R , k | 2
Figure DE102022201427A1_0003

Mithilfe dieser Kostenfunktion kann der NDT-Score angepasst werden, um einen Gesamt-Score zu erhalten: Gesamt Score = NDT _ Score w maker cost marker

Figure DE102022201427A1_0004
wobei der Parameter wmarker > 0 die Gewichtung von Reflektormarkern im Verhältnis zum konturbasierten Matching (Punkte erster Art) angibt. Die Ableitung von costmarker und somit auch der gesamten Scorefunktion, Gesamt-Score, lässt sich analytisch bestimmen, so dass die optimale Pose wie im gewöhnlichen „Scan Matching“ z.B. mit dem Newton-Verfahren bestimmt werden kann.Using this cost function, the NDT score can be adjusted to obtain an overall score: In total score = NDT _ score w maker cost marker
Figure DE102022201427A1_0004
where the parameter w marker > 0 specifies the weighting of reflector markers in relation to contour-based matching (points of the first kind). The derivation of cost marker and thus also of the overall score function, overall score, can be determined analytically, so that the optimal pose can be determined as in the usual “scan matching”, for example with the Newton method.

In einem Schritt 416 kann dann die aktuelle Position und/oder Orientierung (Pose) 418 ausgegeben werden. In einem Schritt 420 kann darauf basierend auch ein Bewegungspfad bestimmt werden, worauf basierend wiederum, in Schritt 422, Steuerungsinformationen zum Bewegen des mobilen Geräts bestimmt. werden, um dieses zu bewegen.In a step 416, the current position and/or orientation (pose) 418 can then be output. Based on this, a movement path can also be determined in a step 420, based on which in turn, in step 422, control information for moving the mobile device is determined. to move this.

Außerdem kann, in einem Schritt 424, zumindest ein Teil der Punkte der aktuellen ersten Menge zur ersten Referenzmenge hinzugefügt werden, z.B. wenn eine gewisse Strecke zurückgelegt wurde oder der NDT-Score unterhalb eines gewissen Schwellwerts liegt oder ein neuer nachverfolgter Marker angelegt wird.In addition, in a step 424, at least a part of the points of the current first set can be added to the first reference set, e.g. if a certain distance has been covered or the NDT score is below a certain threshold or a new tracked marker is created.

Claims (15)

Verfahren zum Bestimmen einer Position und/oder Orientierung eines mobilen Geräts (100) in einer Umgebung (150), in der sich das mobile Gerät (100) bewegt oder bewegen soll, umfassend: Bereitstellen (406) einer aktuellen ersten Menge (312) von Punkten (310) erster Art in der Umgebung, die ausgehend von und relativ zu dem mobilen Gerät (100) bestimmt worden sind, Bereitstellen (410) einer aktuellen zweiten Menge (322) von einem oder mehreren Markern (162, 164, 165), Bestimmen (412) einer dritten Menge (332) von nachverfolgten Markern (162, 164, 165), die sowohl in der aktuellen zweiten Menge (322) als auch in einer zweiten Referenzmenge (222) von einem oder mehreren nachverfolgten Markern (160-165) enthalten sind, und Bestimmen (416) einer aktuellen Position und/oder Orientierung (418) des mobilen Geräts (100) in der Umgebung (150), basierend auf der aktuellen ersten Menge (312), einer ersten Referenzmenge (212) von Punkten (210, 310) erster Art, der dritten Menge (332) und der zweiten Referenzmenge (222).A method for determining a position and/or orientation of a mobile device (100) in an environment (150) in which the mobile device (100) moves or is intended to move, comprising: Providing (406) a current first set (312) of points (310) of the first type in the environment, which have been determined starting from and relative to the mobile device (100), providing (410) a current second set (322) of one or more markers (162, 164, 165), Determining (412) a third set (332) of tracked markers (162, 164, 165) that are in both the current second set (322) and in a second reference set (222) of one or more tracked markers (160-165 ) are included, and Determining (416) a current position and/or orientation (418) of the mobile device (100) in the area (150) based on the current first set (312), a first reference set (212) of points (210, 310) first type, the third set (332) and the second reference set (222). Verfahren nach Anspruch 1, wobei das Bestimmen der aktuellen Position und/oder Orientierung des mobilen Geräts (100) umfasst, dass die erste Menge (312) mit der ersten Referenzmenge (212), im Rahmen einer Optimierung, zur Übereinstimmung gebracht wird, und dass bei der Optimierung eine Kostenfunktion, insbesondere gewichtet, berücksichtigt wird, wobei die Kostenfunktion ein Maß für Abstände der nachverfolgten Marker zwischen der dritten Menge (332) und der zweiten Referenzmenge (222) angibt.procedure after claim 1 , wherein the determination of the current position and / or orientation of the mobile device (100) comprises that the first set (312) with the first reference set (212) is brought into line as part of an optimization, and that in the optimization a Cost function, in particular weighted, is taken into account, the cost function indicating a measure of the distances between the tracked markers between the third set (332) and the second reference set (222). Verfahren nach Anspruch 2, wobei die erste Menge (312) mit der ersten Referenzmenge (212) zur Übereinstimmung gebracht wird, indem eine Transformation bestimmt wird, die die erste Menge (312) auf die erste Referenzmenge (212) abbildet, und wobei die aktuelle Position und/oder Orientierung (414) des mobilen Geräts (100) in der Umgebung (150) basierend auf der Transformation bestimmt wird, und wobei vorzugsweise die Transformation in der Kostenfunktion berücksichtigt wird.procedure after claim 2 , wherein the first set (312) is matched with the first reference set (212) by determining a transformation that maps the first set (312) to the first reference set (212), and wherein the current position and/or Orientation (414) of the mobile device (100) in the environment (150) is determined based on the transformation, and wherein the transformation is preferably taken into account in the cost function. Verfahren nach einem der vorstehenden Ansprüche, weiterhin umfassend nach dem Bestimmen (416) der aktuellen Position und/oder Orientierung (418) des mobilen Geräts (100): Hinzufügen von Markern der aktuellen zweite Menge (322), die nicht in der dritten Menge enthalten sind, zu der zweiten Referenzmenge (222).Method according to one of the preceding claims, further comprising after determining (416) the current position and/or orientation (418) of the mobile device (100): adding markers of the current second set (322) not contained in the third set to the second reference set (222). Verfahren nach einem der vorstehenden Ansprüche, wobei Marker anhand von Punkten zweiter Art (320) bestimmt werden oder worden sind, sodass Punkte zweiter Art den Markern entsprechen, und wobei Punkte (210, 310) erster Art anderen Objekten in der Umgebung als den vordefinierten Markern entsprechen.A method according to any one of the preceding claims, wherein markers are or have been determined using second type points (320) such that second type points correspond to the markers, and wherein Points (210, 310) of the first type correspond to objects in the environment other than the predefined markers. Verfahren nach einem der vorstehenden Ansprüche, wobei Punkte (210, 310) erster Art und/oder Punkte (220, 320) zweiter Art mittels Entfernungsmessung, insbesondere mittels eines Lidar-Sensors (120) des mobilen Geräts (100), bestimmt werden oder worden sind.Method according to one of the preceding claims, wherein points (210, 310) of the first type and/or points (220, 320) of the second type are or have been determined by means of distance measurement, in particular by means of a lidar sensor (120) of the mobile device (100). are. Verfahren nach Anspruch 6, wobei Punkte (220, 320) zweiter Art einer bei der Entfernungsmessung bestimmten Lichtintensität entsprechen, die oberhalb eines Schwellwerts liegt, und wobei Punkte (210, 310) erster Art einer bei der Entfernungsmessung bestimmten Lichtintensität entsprechen, die unterhalb eines Schwellwerts liegt.procedure after claim 6 , wherein points (220, 320) of the second type correspond to a light intensity determined during the distance measurement that is above a threshold value, and wherein points (210, 310) of the first type correspond to a light intensity determined during the distance measurement that is below a threshold value. Verfahren nach einem der vorstehenden Ansprüche, wobei zumindest ein Teil der Punkte der aktuellen ersten Menge (310) zur ersten Referenzmenge (210) hinzugefügt wird, wenn zumindest ein Kriterium erfüllt ist, das vorzugsweise ein Kriterium umfasst, das bedingt, dass der zweiten Menge ein neuer nachverfolgter Marker hinzugefügt wird.Method according to one of the preceding claims, wherein at least part of the points of the current first set (310) is added to the first reference set (210) if at least one criterion is met, which preferably includes a criterion that requires that the second set a new tracked marker is added. Verfahren nach einem der vorstehenden Ansprüche, weiterhin umfassend: Bestimmen (420) eines Bewegungspfads (102), auf dem sich das mobile Gerät (100) in der Umgebung (150) bewegen soll, basierend auf der aktuellen Position und/oder Orientierung (414) mobilen Geräts.A method according to any one of the preceding claims, further comprising: Determining (420) a movement path (102) on which the mobile device (100) should move in the environment (150) based on the current position and/or orientation (414) of the mobile device. Verfahren nach Anspruch 9, weiterhin umfassend: Bestimmen (422), basierend auf dem Bewegungspfad (102) und der aktuellen Position und/oder Orientierung (414), von Steuerungsinformationen zum Bewegen des mobilen Geräts (100), und Bereitstellen der Steuerungsinformationen und/oder Bewegen des mobilen Geräts (100) basierend auf den Steuerungsinformationen.procedure after claim 9 , further comprising: determining (422), based on the movement path (102) and the current position and/or orientation (414), control information for moving the mobile device (100), and providing the control information and/or moving the mobile device (100) based on the control information. Recheneinheit (110), die dazu eingerichtet ist, die Verfahrensschritte eines Verfahrens nach einem der vorstehenden Ansprüche durchzuführen.Arithmetic unit (110) which is set up to carry out the method steps of a method according to one of the preceding claims. Mobiles Gerät (100) mit einer Recheneinheit (110) nach Anspruch 11.Mobile device (100) with a computing unit (110). claim 11 . Mobiles Gerät (100) nach Anspruch 12, das als sich zumindest teilweise automatisiert bewegendes Fahrzeug, insbesondere als Personenbeförderungsfahrzeug oder als Güterbeförderungsfahrzeug, oder als Roboter, ausgebildet ist.Mobile device (100) after claim 12 , which is designed as an at least partially automated moving vehicle, in particular as a passenger transport vehicle or as a goods transport vehicle, or as a robot. Computerprogramm, das eine Recheneinheit (110) veranlasst, ein Verfahren nach einem der Ansprüche 1 bis 10 durchzuführen, wenn es auf der Recheneinheit (110) ausgeführt wird.Computer program that causes a computing unit (110) to use a method according to one of Claims 1 until 10 to be performed when it is executed on the computing unit (110). Maschinenlesbares Speichermedium mit einem darauf gespeicherten Computerprogramm nach Anspruch 14.Machine-readable storage medium with a computer program stored on it Claim 14 .
DE102022201427.8A 2022-02-11 2022-02-11 Method for determining a position and/or orientation of a mobile device in an environment Pending DE102022201427A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102022201427.8A DE102022201427A1 (en) 2022-02-11 2022-02-11 Method for determining a position and/or orientation of a mobile device in an environment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102022201427.8A DE102022201427A1 (en) 2022-02-11 2022-02-11 Method for determining a position and/or orientation of a mobile device in an environment

Publications (1)

Publication Number Publication Date
DE102022201427A1 true DE102022201427A1 (en) 2023-08-17

Family

ID=87430473

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102022201427.8A Pending DE102022201427A1 (en) 2022-02-11 2022-02-11 Method for determining a position and/or orientation of a mobile device in an environment

Country Status (1)

Country Link
DE (1) DE102022201427A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102009046109A1 (en) 2009-10-28 2011-05-05 Ifm Electronic Gmbh Position determining system for e.g. agricultural working machine, has evaluation device assigned to camera such that position and orientation of vehicle is determined in reference system based on detected detection marks
DE102010060942A1 (en) 2010-12-01 2012-06-06 Sick Ag Sensor arrangement for object recognition
DE102011012689A1 (en) 2011-03-01 2012-09-06 E&K Automation GmbH Method for determining position of object e.g. vehicle in reference system e.g. landmark, involves determining position of object using detected relative position of landmarks and detected characteristic of marker
DE102020118629A1 (en) 2020-07-15 2022-01-20 Bayerische Motoren Werke Aktiengesellschaft Computer-implemented method for determining the validity of an estimated position of a vehicle

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102009046109A1 (en) 2009-10-28 2011-05-05 Ifm Electronic Gmbh Position determining system for e.g. agricultural working machine, has evaluation device assigned to camera such that position and orientation of vehicle is determined in reference system based on detected detection marks
DE102010060942A1 (en) 2010-12-01 2012-06-06 Sick Ag Sensor arrangement for object recognition
DE102011012689A1 (en) 2011-03-01 2012-09-06 E&K Automation GmbH Method for determining position of object e.g. vehicle in reference system e.g. landmark, involves determining position of object using detected relative position of landmarks and detected characteristic of marker
DE102020118629A1 (en) 2020-07-15 2022-01-20 Bayerische Motoren Werke Aktiengesellschaft Computer-implemented method for determining the validity of an estimated position of a vehicle

Similar Documents

Publication Publication Date Title
EP3491417B1 (en) Method and system for detecting landmarks in a traffic environment of a mobile unit
EP3695244B1 (en) Method and device for creating an inverse sensor model and method for detecting obstacles
DE102014005181A1 (en) Position and orientation of objects
DE102018124108A1 (en) METHOD AND DEVICE FOR DETECTING ROAD LIMITATION
DE102013113570A1 (en) Bayes network for tracking objects using search points using multiple LiDAR sensors
EP3824247A1 (en) Method and system for determining a position of a vehicle
DE102019112649A1 (en) DEVICE AND METHOD FOR IMPROVING RADAR BEAM FORMING
DE102020124236A1 (en) REUSABLE GHOST IMAGE IN THE VEHICLE RADAR SYSTEM
DE102018123393A1 (en) Detection of parking areas
DE102021206075A1 (en) Vehicle localization as a ride-sharing option and occupant identification for autonomous vehicles
EP4055459A1 (en) Computer-implemented method for creating a map of the surrounding area for the operation of a mobile agent
EP2749982A2 (en) Generation and updating of reference models
DE102008008499B4 (en) Method for computer-aided calculation of the movement of an object from sensor data
DE102022201427A1 (en) Method for determining a position and/or orientation of a mobile device in an environment
DE102022201421A1 (en) Method for determining a position and/or orientation of a mobile device in an environment
DE102019203623A1 (en) Method of providing a card
DE102020127315B4 (en) System and method for annotating automotive radar data
EP0417665A2 (en) Method and apparatus for optical position and/or course determination of a driverless self-propelled vehicle in the x-y plane
DE102022211112A1 (en) Method for determining markers for a position and/or orientation of a mobile device in an environment
DE102019214008A1 (en) Method and device for localizing a mobile agent in an environment with dynamic objects
WO2020001690A1 (en) Method and system for identifying obstacles
DE102018130745A1 (en) Method for controlling an autonomous vehicle
DE102020216317A1 (en) Indoor localization of moving objects
EP2251849B1 (en) Method for improved recognition of conduit-type objects
DE102022207370A1 (en) Method for detecting a faulty map of an environment

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication