DE102014110201B3 - Self-propelled robot and obstacle detection method for a self-propelled robot - Google Patents

Self-propelled robot and obstacle detection method for a self-propelled robot Download PDF

Info

Publication number
DE102014110201B3
DE102014110201B3 DE102014110201.0A DE102014110201A DE102014110201B3 DE 102014110201 B3 DE102014110201 B3 DE 102014110201B3 DE 102014110201 A DE102014110201 A DE 102014110201A DE 102014110201 B3 DE102014110201 B3 DE 102014110201B3
Authority
DE
Germany
Prior art keywords
robot
error
camera
self
obstacle
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.)
Active
Application number
DE102014110201.0A
Other languages
German (de)
Inventor
David Fleer
Michael Horst
Ralf Möller
Andreas Stöckel
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.)
Miele und Cie KG
Universitaet Bielefeld
Original Assignee
Miele und Cie KG
Universitaet Bielefeld
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 Miele und Cie KG, Universitaet Bielefeld filed Critical Miele und Cie KG
Priority to DE102014110201.0A priority Critical patent/DE102014110201B3/en
Application granted granted Critical
Publication of DE102014110201B3 publication Critical patent/DE102014110201B3/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/35Categorising the entire scene, e.g. birthday party or wedding scene
    • G06V20/36Indoor scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/19Recognition using electronic means
    • G06V30/192Recognition using electronic means using simultaneous comparisons or correlations of the image signals with a plurality of references
    • G06V30/194References adjustable by an adaptive method, e.g. learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle
    • G06T2207/30261Obstacle

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Electromagnetism (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Automation & Control Theory (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Manipulator (AREA)

Abstract

Die Erfindung betrifft einen selbstfahrenden Roboter, insbesondere ein selbstfahrendes Bodenbearbeitungsgerät, der bzw. das eine Kamera zur Aufnahme von Bildern einer Umgebung des Roboters und eine Steuereinrichtung zur Auswertung der Bilder der Kamera aufweist. Die Erfindung betrifft weiter ein Verfahren zur Hinderniserkennung bei einem derartigen selbstfahrenden Roboter mit den folgenden Schritten: a) Aufnehmen eines Referenzbildes der Umgebung des Roboters durch die Kamera (8); b) Bewegen des Roboters um eine Fahrstrecke; c) Aufnehmen eines aktuellen Bildes der Umgebung des Roboters durch die Kamera (8); d) Berechnen einer Mehrzahl von Vorschaubildern anhand des Referenzbildes, anhand der Fahrstrecke sowie jeweils einem angenommenen Objektabstand; e) Vergleichen des aktuellen Bildes mit jedem der Vorschaubilder und ermitteln jeweils einer Fehlermatrix mit Fehlerwerten; f) Identifizieren von Bereichen der Fehlermatrix, in denen Werte der Fehlermatrix ein lokales Minimum aufweisen, als ein Hindernis (10.1, 10.2).The invention relates to a self-propelled robot, in particular a self-propelled soil cultivation device, which has a camera for recording images of an environment of the robot and a control device for evaluating the images of the camera. The invention further relates to a method for obstacle detection in such a self-propelled robot comprising the following steps: a) taking a reference image of the surroundings of the robot through the camera (8); b) moving the robot around a driving distance; c) taking a current image of the environment of the robot through the camera (8); d) calculating a plurality of preview images on the basis of the reference image, on the basis of the route as well as in each case on an assumed object distance; e) comparing the current image with each of the preview images and each determining an error matrix with error values; f) identifying regions of the error matrix in which values of the error matrix have a local minimum as an obstacle (10.1, 10.2).

Description

Die Erfindung betrifft einen selbstfahrenden Roboter, insbesondere ein selbstfahrendes Bodenbearbeitungsgerät, der bzw. das eine Kamera zur Aufnahme von Bildern einer Umgebung des Roboters und eine Steuereinrichtung zur Auswertung der Bilder der Kamera aufweist. Die Erfindung betrifft weiterhin ein Verfahren zur Hinderniserkennung bei einem derartigen selbstfahrenden Roboter.The invention relates to a self-propelled robot, in particular a self-propelled soil cultivation device, which has a camera for recording images of an environment of the robot and a control device for evaluating the images of the camera. The invention further relates to a method for obstacle detection in such a self-propelled robot.

Selbstfahrende Roboter dienen der automatisierten Verrichtung von nicht ortsgebundenen Tätigkeiten. In Form von selbstfahrenden Bodenbearbeitungsgeräten dienen solche Roboter der automatisierten Bearbeitung, beispielsweise Reinigung, von Flächen, ohne dass sie von einem Benutzer geschoben oder geführt werden müssen. Zu solchen selbstfahrenden Bodenbearbeitungsgeräten zählen für den Innenbereich beispielsweise selbstfahrende Staubsauger, auch Saugroboter genannt. Weiterhin werden für den Innenbereich selbstfahrende Reinigungsgeräte zum Wischen von Bodenbelägen eingesetzt. Für den Außenbereich sind als selbstfahrende Bodenbearbeitungsgeräte Mähroboter zum Rasen mähen bekannt und, für eine landwirtschaftliche Nutzung, selbstständig arbeitende Landwirtschaftsmaschinen, beispielsweise zum Pflügen, Säen oder Ernten von Feldern.Self-propelled robots are used for the automated performance of non-stationary activities. In the form of self-propelled tillage machines such robots are used for automated processing, such as cleaning, of surfaces without having to be pushed or guided by a user. Self-propelled vacuum cleaners, also referred to as vacuum robots, are used for such self-propelled soil cultivation devices for indoor use. Furthermore, for the interior self-propelled cleaning equipment used for wiping of floor coverings. For outdoor use are known as self-propelled tillage mowing robots for lawn mowing and, for agricultural use, independently operating agricultural machinery, for example, for plowing, sowing or harvesting fields.

Zur Erkennung von Hindernissen und zur Vermeidung von Zusammenstößen mit Hindernissen und/oder zur Unterstützung der Navigation weisen selbstfahrende Roboter häufig Abstandssensoren auf, die einen Abstand zu einem Gegenstand bestimmen, der sich in der Umgebung des Roboters befindet. Derartige Abstandssensoren bestehen häufig aus einer kombinierten Sende- und Empfangseinheit, oder es werden getrennte Einheiten benutzt. Für die Messung werden Signale erzeugt, die an Gegenständen, beispielsweise den genannten Hindernissen, reflektiert werden. Dabei sind verschiedene Funktionsprinzipien mit unterschiedlichen Signalarten bekannt. Bei Infrarotsensoren trifft ein reflektierter Strahl – abhängig vom Hindernisabstand – auf eine bestimmte Position eines Empfängers, der ortsaufgelöste Messungen zulässt (Position Sensitive Device, PSD). Aus der Messposition kann über Triangulationsmethoden auf den Abstand zum Gegenstand geschlossen werden.To detect obstacles and to avoid collisions with obstacles and / or to support the navigation, self-propelled robots often have distance sensors that determine a distance to an object that is located in the vicinity of the robot. Such distance sensors often consist of a combined transmitting and receiving unit, or separate units are used. For the measurement signals are generated, which are reflected on objects, for example, the aforementioned obstacles. Different functional principles with different signal types are known. In infrared sensors, a reflected beam - depending on the obstacle distance - hits a specific position of a receiver that allows spatially resolved measurements (position sensitive device, PSD). The distance to the object can be deduced from the measuring position by triangulation methods.

Neben Triangulationsmethoden werden zur Bestimmung eines Abstands zu einem Gegenstand auch Laufzeitmessungen verwendet. Bei einer optischen Abstandsmessung ist es beispielsweise bekannt, Laserpulse auszusenden, wobei aus der Laufzeit bis zum Eintreffen eines reflektierten Signals die Entfernung zum reflektierenden Gegenstand berechnet wird (Light Detection and Ranging, LIDAR). Alternativ kann auch eine Phasenverschiebung eines reflektierten Laserstrahls für die Messung des Abstands herangezogen werden. Neben optischen sind auch akustische Laufzeitmessungen bekannt, bei denen bevorzugt Ultraschallsensoren verwendet werden. In addition to triangulation methods, transit time measurements are also used to determine a distance to an object. In the case of an optical distance measurement, it is known, for example, to emit laser pulses, the distance to the reflecting object being calculated from the transit time until the arrival of a reflected signal (Light Detection and Ranging, LIDAR). Alternatively, a phase shift of a reflected laser beam can be used for the measurement of the distance. In addition to optical and acoustic runtime measurements are known in which preferably ultrasonic sensors are used.

Häufig weisen selbstfahrende Roboter eine Kamera zur Aufnahme von Bildern einer Umgebung des Roboters auf. Beispielsweise ist aus der Druckschrift DE 10 2007 016 802 B3 ein selbstfahrender Roboter bekannt, bei dem von einer Kamera in regelmäßigen Zeitabschnitten Umgebungsbilder aufgenommen und abgespeichert werden. Durch einen Vergleich von aktuellen mit gespeicherten Bildern kann durch ein sogenanntes visuelles Homing-Verfahren eine odometrisch, also über Fahrinformation der Antriebsräder bestimmte Position des Roboters korrigiert werden.Frequently, self-propelled robots have a camera for taking pictures of an environment of the robot. For example, from the document DE 10 2007 016 802 B3 a self-propelled robot, in which environmental images are taken and stored by a camera at regular time intervals. By comparing current with stored images can be corrected by a so-called visual homing method odometrically, so driving information about the drive wheels position of the robot.

Bei Verwendung einer Kamera zur Aufnahme von Umgebungsbildern, die zur Positionsbestimmung und zu Navigationszwecken ausgewertet werden, ist es darüber hinaus bekannt, die Kamerabilder zusätzlich im Hinblick auf ein Erkennen möglicher Hindernisse auszuwerten. Aus dem Dokument US 2007/0090973 A1 wird ein sogenanntes Simultaneous Localisation and Mapping(SLAM)-Verfahren beschrieben, bei dem aus den Umgebungsbildern charakteristische Merkmale extrahiert werden, die einzelnen Gegenständen (Hindernissen) zugeordnet werden. Das Auftreten charakteristischer Merkmale kann in Folgebildern nachvollzogen werden, so dass im Laufe der Zeit Artefakte in den Aufnahmen von tatsächlichen Gegenständen unterschieden werden können. Mit Hilfe von Triangulation kann auf die Position des Gegenstands geschlossen werden und der Gegenstand in einer Hinderniskarte kartographiert werden. Die Merkmalsauswertung der Umgebungsbilder und das Nachverfolgen der entsprechenden Merkmale ist jedoch sehr rechenintensiv und daher bei begrenzt zur Verfügung stehender Rechenkapazität insbesondere bei kleineren selbstfahrenden Robotern nur schwierig und mit einem unangemessen hohen Energiebedarf umsetzbar.When using a camera to capture environmental images, which are evaluated for positioning and navigation purposes, it is also known to evaluate the camera images additionally with a view to detecting possible obstacles. From the document US 2007/0090973 A1 a so-called Simultaneous Localization and Mapping (SLAM) method is described in which characteristic features are extracted from the environment images, which are assigned to individual objects (obstacles). The occurrence of characteristic features can be reproduced in subsequent images, so that over time artifacts in the images of actual objects can be distinguished. With the help of triangulation, the position of the object can be deduced and the object can be mapped in an obstacle map. However, the feature evaluation of the surrounding images and the tracking of the corresponding features is very computationally intensive and therefore, with limited available computing capacity, can be implemented only with difficulty and with an unreasonably high energy requirement, especially in the case of smaller self-propelled robots.

Es ist daher eine Aufgabe der vorliegenden Erfindung, ein Verfahren zur Hinderniserkennung bei einem selbstfahrenden Roboter, der eine Kamera zur Aufnahme von Bildern einer Umgebung aufweist, zu schaffen, mit dem Hindernisse in den Umgebungsbildern auf schnelle und möglichst wenig rechenintensive Art und Weise erfasst werden können. Es ist eine weitere Aufgabe, einen selbstfahrenden Roboter zur Durchführung eines derartigen Verfahrens bereitzustellen.It is therefore an object of the present invention to provide a method for obstacle detection in a self-propelled robot having a camera for taking pictures of an environment, can be detected with the obstacles in the surrounding images in a fast and less compute-intensive manner , It is another object to provide a self-propelled robot for performing such a method.

Diese Aufgabe wird durch ein Verfahren bzw. einen selbstfahrenden Roboter mit den Merkmalen des jeweiligen unabhängigen Anspruchs gelöst. Vorteilhafte Ausgestaltungen und Weiterbildungen des Verfahrens bzw. des selbstfahrenden Roboters sind in den jeweiligen abhängigen Ansprüchen angegeben.This object is achieved by a method or a self-propelled robot having the features of the respective independent claim. Advantageous embodiments and further developments of Method or the self-propelled robot are specified in the respective dependent claims.

Ein erfindungsgemäßes Verfahren zur Hinderniserkennung bei einem selbstfahrenden Roboter, der eine Kamera zur Aufnahme von Bildern einer Umgebung des Roboters und eine Steuereinrichtung zur Auswertung der Bilder der Kamera aufweist, weist die folgenden Schritte auf: Es wird ein Referenzbild der Umgebung des Roboters durch die Kamera aufgenommen und der Roboter um eine Fahrstrecke bewegt. Danach wird ein aktuelles Bild der Umgebung des Roboters durch die Kamera aufgenommen. Es wird eine Mehrzahl von Vorschaubildern anhand des Referenzbildes, anhand der Fahrstrecke sowie jeweils eines angenommenen Objektabstands berechnet. Das aktuelle Bild wird mit jedem der Vorschaubilder verglichen und als Ergebnis des Vergleichs wird jeweils eine Fehlermatrix mit Fehlerwerten berechnet. Anschließend werden Bereiche der Fehlermatrizen, in denen Werte der Fehlermatrizen ein Minimum aufweisen, als ein Hindernis identifiziert. A method according to the invention for detecting obstacles in a self-propelled robot, which has a camera for capturing images of an environment of the robot and a control device for evaluating the images of the camera, comprises the following steps: A reference image of the environment of the robot is taken by the camera and the robot moves around a driving distance. Thereafter, a current image of the environment of the robot is taken by the camera. A multiplicity of preview images is calculated on the basis of the reference image, on the basis of the route as well as in each case on an assumed object distance. The current image is compared with each of the preview images and, as a result of the comparison, an error matrix with error values is calculated in each case. Subsequently, regions of the error matrices in which values of the error matrices are minimum are identified as an obstacle.

Bei der Berechnung der Vorschaubilder aus dem Referenzbild wird die seit Aufnahme des Referenzbildes zurückgelegte Fahrstrecke berücksichtigt. Nach dem Zurücklegen der Fahrstrecke kann der Roboter eine andere Position und/oder Ausrichtung haben. Beides fließt in die Berechnung der Vorschaubilder ein. When calculating the preview images from the reference image, the distance traveled since the reference image was taken is taken into account. After covering the route, the robot may have a different position and / or orientation. Both contribute to the calculation of the preview images.

Die Objektabstände gelten jeweils für ein gesamtes Vorschaubild, sind jedoch für die verschiedenen Vorschaubilder unterschiedlich. Es wird so eine Abfolge an Vorschaubildern generiert, bei denen jeweils unterschiedliche Objektabstände angenommen sind. Befindet sich in dem angenommenen Objektabstand tatsächlich ein Objekt, z.B. ein Hindernis, wird sich das Vorschaubild nicht oder nur wenig vom später aufgenommenen, aktuellen Bild unterscheiden. Entsprechend wird sich ein kleiner Fehlerwert für einen bestimmten Bildbereich in derjenigen Fehlermatrix einstellen, bei der der angenommene Objektabstand am bestem dem tatsächlichen Objektabstand eines in diesem Bildbereich abgebildeten Objekts entspricht. Umgekehrt kann aus einem Minimum der Fehlerwerte in einem bestimmten Bildbereich in einer der Fehlermatrizen darauf geschlossen werden, dass in dem angenommenen Objektabstand sich in diesem Bildbereich ein Objekt befindet, das dann als Hindernis identifiziert werden kann. The object distances apply to an entire preview image, but are different for the different preview images. A sequence of preview images is thus generated in which different object distances are assumed in each case. If, in the assumed object distance, there is actually an object, e.g. an obstacle, the preview image will not differ or only slightly from the later recorded, current image. Correspondingly, a small error value for a certain image area in the error matrix is set, in which the assumed object distance best corresponds to the actual object distance of an object imaged in this image area. Conversely, from a minimum of the error values in a certain image area in one of the error matrices, it can be concluded that in the assumed object distance there is an object in this image area which can then be identified as an obstacle.

Im Rahmen der Anmeldung ist als Minimum der Fehlerwerte einer der Fehlermatrizen zu verstehen, dass der Fehlerwert in diesem Bildbereich bei dieser Fehlermatrix kleiner ist als bei den anderen Fehlermatrizen, die anhand eines Vorschaubilds mit einem anderen angenommenen Objektabstand bestimmt wurden. Sortiert nach dem angenommenen Objektabstand bilden die Fehlermatrizen einen Matrizenstapel, der Fehlerwerte dreidimensional repräsentiert. Es wird innerhalb des Stapels für einen Bildbereich das Minimum somit entlang der Objektabstandsachse gesucht.In the context of the application, as a minimum of the error values of one of the error matrices, it is to be understood that the error value in this image area is smaller for this error matrix than for the other error matrices determined on the basis of a preview image with another assumed object distance. Sorted according to the assumed object distance, the error matrices form a matrix stack which represents error values three-dimensionally. Within the stack for an image area, the minimum is thus searched along the object distance axis.

Ein Hindernis wird so erkannt, ohne dass eine Merkmalsauswertung (z.B. eine Kanten- oder Eckenidentifizierung) am aktuellen Bild durchgeführt werden muss. Das Verfahren kann dadurch effizient implementiert werden und liefert durch seine holistische, nicht merkmalsbasierte Auswertung auch bei einer geringen Auflösung der zugrundeliegenden Umgebungsbilder gute Ergebnisse.An obstacle is thus detected without having to perform feature evaluation (e.g., edge or corner identification) on the current image. The method can thus be implemented efficiently and provides good results through its holistic, non-feature-based evaluation even with a low resolution of the underlying environment images.

In einer Ausgestaltung des Verfahrens wird ein Abstand des Hindernisses gleich dem Objektabstand desjenigen Vorschaubildes angenommen, bei dem die dem Objektabstand zugeordnete Fehlermatrix verglichen mit den Fehlermatrizen bei anderen Objektabständen die kleinsten Fehlerwerte aufweist. In einer alternativen vorteilhaften Ausgestaltung ergibt sich der Abstand des Hindernisses aus dem Minimalwert einer Fehlerkurve, wobei die Fehlerkurve näherungsweise an die Fehlerwerte von zumindest zwei der Fehlermatrizen angepasst ist und genäherte Fehlerwerte abhängig vom Abstand angibt. Bevorzugt ist dabei die Fehlerkurve ein Polynom und besonders bevorzugt eine Parabel. Auf diese Weise tragen die Ergebnisse mehrerer, beispielsweise benachbarter Fehlermatrizen zum Ergebnis der Abstandsbestimmung bei, wodurch deren Genauigkeit steigt.In one embodiment of the method, a distance of the obstacle is assumed to be equal to the object distance of that preview image in which the error matrix associated with the object distance has the smallest error values at other object distances compared to the error matrices. In an alternative advantageous embodiment, the distance of the obstacle results from the minimum value of an error curve, wherein the error curve is approximately adapted to the error values of at least two of the error matrices and indicates approximated error values depending on the distance. In this case, the error curve is preferably a polynomial and particularly preferably a parabola. In this way, the results of several, for example, adjacent error matrices contribute to the result of the distance determination, thereby increasing their accuracy.

In einer weiteren vorteilhaften Ausgestaltung des Verfahrens werden die Schritte des Bewegens des Roboters und des Aufnehmens und Vergleichens der Bilder mehrfach durchgeführt, wobei jeweils eine Wahrscheinlichkeitsverteilung für das Vorliegen eines Hindernisses in der Bewegungsebene des Roboters aus der jeweiligen Fehlermatrix berechnet wird. Anschließend werden die Wahrscheinlichkeitsverteilungen zu einer Gesamtwahrscheinlichkeitsverteilung aufaddiert, anhand derer Hindernisse identifiziert werden. Auf diese Weise werden die Ergebnisse mehrerer Zyklen der Bildvorausberechnung und des Bildvergleichs zusammengeführt, wodurch die Genauigkeit der Hinderniserkennung sukzessive gesteigert wird. Die Gesamtwahrscheinlichkeitsverteilung kann dabei nach dem Aufaddieren normiert werden. Um diesen zusätzlichen Rechenschritt zu sparen, ist es jedoch auch möglich, mit einer Gesamtwahrscheinlichkeitsverteilung zu arbeiten, die rein rechnerisch in Summe einen Wert größer 1 annimmt. Auch eine solche Verteilung wird im Rahmen der Anmeldung als Wahrscheinlichkeitsverteilung bezeichnet.In a further advantageous embodiment of the method, the steps of moving the robot and recording and comparing the images are performed several times, wherein in each case a probability distribution for the presence of an obstacle in the movement plane of the robot is calculated from the respective error matrix. Subsequently, the probability distributions are added up to a total probability distribution, by means of which obstacles are identified. In this way, the results of several cycles of image pre-calculation and image comparison are merged, whereby the accuracy of the obstacle detection is successively increased. The total probability distribution can be normalized after the addition. However, in order to save this additional computation step, it is also possible to work with a total probability distribution which in purely mathematical terms assumes a value greater than 1 in total. Also, such a distribution is referred to in the context of the application as a probability distribution.

In einer bevorzugten Ausgestaltung dieses Verfahrens ist ein Schwellenwert vorgegeben, wobei in den Bereichen der Bewegungsebene, in denen ein Wahrscheinlichkeitswert der Gesamtwahrscheinlichkeitsverteilung den Schwellenwert überschreitet, das Hindernis identifiziert wird.In a preferred embodiment of this method, a threshold value is predetermined, wherein in the areas of the movement plane in which a Probability value of the total probability distribution exceeds the threshold, the obstacle is identified.

Bei einem erfindungsgemäßen selbstfahrenden Roboter der eingangs genannten Art ist dessen Steuereinrichtung dazu eingerichtet, ein derartiges Verfahren durchzuführen. Es ergeben sich die im Zusammenhang mit dem Verfahren genannten Vorteile. Insbesondere bei einem nicht kabelgebundenen Roboter kann das Verfahren vorteilhaft eingesetzt werden, da es mit geringem Rechen- und somit Energieaufwand durchgeführt werden kann. In einer vorteilhaften Ausgestaltung des Roboters weist die Kamera ein weites Blickfeld auf und ist insbesondere eine Panorama-Kamera. Weiter bevorzugt ist der Roboter als selbstfahrendes Bodenbearbeitungsgerät und insbesondere als Saugroboter ausgebildet.In a self-propelled robot according to the invention of the type mentioned above whose control device is adapted to perform such a method. This results in the advantages mentioned in connection with the method. In particular, in a non-wired robot, the method can be advantageously used, since it can be performed with low computational and thus energy costs. In an advantageous embodiment of the robot, the camera has a wide field of view and is in particular a panoramic camera. More preferably, the robot is designed as a self-propelled soil cultivation device and in particular as a vacuum robot.

Die Erfindung wird nachfolgend anhand von Ausführungsbeispielen mithilfe von Figuren näher erläutert. Die Figuren zeigen:The invention will be explained in more detail by means of embodiments with reference to figures. The figures show:

1 ein zur Durchführung eines erfindungsgemäßen Verfahrens geeignetes Bodenbearbeitungsgerät in einer schematischen Darstellung; 1 a suitable for carrying out a method according to the invention tillage equipment in a schematic representation;

2a eine Aufsicht auf ein Bodenbearbeitungsgerät und eine Hindernisse aufweisende Umgebung zur Illustration eines erfindungsgemäßen Verfahrens; 2a a plan view of a tillage implement and an obstacle-containing environment for illustrating a method according to the invention;

2b–d Darstellungen von Abweichungen zwischen jeweils einem aktuellen Umgebungsbild und einem vorhergesagten Umgebungsbild, wobei die Vorhersage auf unterschiedlichen angenommenen Hindernisabständen beruht; 2 B -D depicting deviations between a respective current environmental image and a predicted environmental image, wherein the prediction is based on different assumed obstacle distances;

3 eine Illustration eines Teilschrittes eines Verfahrens zur Hinderniserkennung. 3 an illustration of a sub-step of a method for obstacle detection.

In der 1 ist ein mobiles Bodenbearbeitungsgerät, konkret ein Saugroboter 1, als Beispiel für einen selbstfahrenden Roboter schematisch in einer Seitenansicht dargestellt. Der Saugroboter 1 weist angeordnet an bzw. in einem Gehäuse 2 ein Antriebssystem 3 auf, das auf zwei Antriebsräder 4, eins auf jeder Seite des Saugroboters 1, wirkt. Die Antriebsräder 4 können unabhängig voneinander über hier nicht einzeln dargestellte Antriebsmotoren angetrieben werden. Weiter ist ein Stützrad 5 vorgesehen, das entweder verschwenkbar oder als eine in alle Richtungen drehbare Kugel ausgebildet ist. Bei voneinander unabhängiger Ansteuerung der Drehrichtungen und Drehgeschwindigkeiten der Antriebsräder 4 kann der Saugroboter 1 Bewegungen mit unabhängig voneinander einstellbaren Rotations- und Translationsgeschwindigkeiten auf einer zu reinigenden Fläche ausführen.In the 1 is a mobile tillage implement, specifically a vacuum robot 1 , as an example of a self-propelled robot shown schematically in a side view. The vacuum robot 1 has arranged on or in a housing 2 a drive system 3 on top of that, on two drive wheels 4 , one on each side of the vacuum robot 1 , works. The drive wheels 4 can be independently driven by drive motors not shown separately here. Next is a jockey wheel 5 provided, which is either pivotable or designed as a rotatable ball in all directions. For independent control of the directions of rotation and rotational speeds of the drive wheels 4 can the vacuum robot 1 Perform movements with independently adjustable rotation and translation speeds on a surface to be cleaned.

Weiterhin ist ein Saugbereich 6 in der Figur angedeutet, in dem nicht dargestellte Saugdüsen angeordnet sind, die beispielsweise in bekannter Weise mit einem Filtersystem, zum Beispiel einem Staubsaugerbeutel, mit einem Gebläsemotor zusammenwirken. Unterstützend ist in dem dargestellten Ausführungsbeispiel im Saugbereich 6 eine rotierende Bürste angeordnet. Der Saugbereich 6 mit der rotierenden Bürste repräsentiert die Reinigungseinrichtungen des Saugroboters 1. Weitere für den Betrieb des Saugroboter 1 vorhandene Elemente, beispielsweise eine wiederaufladbare Batterie zur Stromversorgung, Ladeanschlüsse für die Batterie oder eine Entnahmemöglichkeit für den Staubsaugerbeutel, sind in der Figur aus Gründen der Übersichtlichkeit nicht wiedergegeben.Furthermore, a suction area 6 indicated in the figure, are arranged in the suction nozzles, not shown, which cooperate, for example, in a known manner with a filter system, for example a vacuum cleaner bag, with a blower motor. It is supportive in the illustrated embodiment in the suction area 6 arranged a rotating brush. The suction area 6 with the rotating brush represents the cleaning equipment of the vacuum robot 1 , Further for the operation of the vacuum robot 1 existing elements, such as a rechargeable battery for power supply, charging ports for the battery or a removal option for the vacuum cleaner bag, are not shown in the figure for reasons of clarity.

Der Saugroboter 1 weist eine Steuervorrichtung 7 auf, die mit dem Antriebssystem 3 sowie den Reinigungseinrichtungen zu deren Steuerung verbunden ist. Auf der Oberseite des Saugroboters 1 ist eine Kamera 8 angeordnet, die zur Abbildung der Umgebung des Saugroboters mit einem weiten Gesichtsfeld ausgebildet ist. Ein derartiges weites Gesichtsfeld kann zum Beispiel durch die Verwendung eines sogenannten Fish-Eye-Objektivs erzielt werden. Beispielhaft sind einige von der Kamera 8 aufnehmbare Abbildungsstrahlen 9 dargestellt. Die Kamera 8 weist ein weites Blickfeld mit einem Öffnungswinkel Θ auf, der im dargestellten Beispiel mehr als 180 Grad beträgt. Bevorzugt ist die Kamera 8 eine Panorama-Kamera, die ein 360°-Panoramabild aufzeichnen kann.The vacuum robot 1 has a control device 7 on that with the drive system 3 and the cleaning devices connected to their control. On the top of the vacuum robot 1 is a camera 8th arranged, which is designed to image the environment of the vacuum robot with a wide field of view. Such a wide field of view can be achieved, for example, by the use of a so-called fish-eye lens. Exemplary are some of the camera 8th recordable picture rays 9 shown. The camera 8th has a wide field of view with an opening angle Θ, which is more than 180 degrees in the example shown. The camera is preferred 8th a panorama camera that can record a 360 ° panorama image.

Im Betrieb des Saugroboters 1 erfasst die Kamera 8 fortlaufend das Umfeld des Saugroboters 1 und sendet eine Folge aufgenommener Bilder als Signale an die Steuereinrichtung 7.During operation of the vacuum robot 1 captures the camera 8th continuously the environment of the vacuum robot 1 and sends a sequence of captured images as signals to the controller 7 ,

Im Blickfeld der Kamera 8 liegen Hindernisse 10a und 10b, deren Anzahl (hier zwei) und Form (hier Tonnenform) rein beispielhaft ist.In the field of vision of the camera 8th are obstacles 10a and 10b whose number (here two) and form (here tonal form) is purely exemplary.

Ein erfindungsgemäßes Verfahren zum Erkennen von Hindernissen und zum Bestimmen der Position der Hindernisse wird nachfolgend anhand der 2a bis 2d dargestellt. Das Verfahren kann beispielsweise von dem in 1 gezeigten Saugroboter 1 durchgeführt werden und wird daher beispielhaft mit Bezug auf das Ausführungsbeispiel der 1 erläutert.An inventive method for detecting obstacles and for determining the position of the obstacles will be described below with reference to 2a to 2d shown. The method may be, for example, from the in 1 shown suction robot 1 be performed and is therefore exemplary with reference to the embodiment of the 1 explained.

In 2a ist zunächst die zugrundeliegende Situation in einer Aufsicht auf die Bewegungsebene, in der sich der Saugroboter 1 bewegt, skizziert. Die Ebene wird auch als xy-Ebene mit den Koordinatenrichtungen x und y bezeichnet. Es wird wie bei 1 von zwei tonnenförmigen Hindernissen 10.1 und 10.2 ausgegangen, die sich in einem Sichtfeld eines Saugroboters 1 befinden, der sich im unteren mittleren Bereich der 2a an einer aktuellen Position 11a befindet. Der Saugroboter 1 ist in der 2a nur durch ein stilisiertes Sichtfeld angedeutet. Die Abstände von einem Referenzpunkt des Saugroboter 1, der z.B. durch das Zentrum seiner Kamera 8 (vgl. 1) gegeben ist, zu den Hindernissen werden als Abstände d1 bzw. d2 bezeichnet.In 2a is first the underlying situation in a supervision of the plane of motion, in which the vacuum robot 1 moved, sketched. The plane is also called the xy plane with the coordinate directions x and y. It will be like at 1 of two barrel-shaped obstacles 10.1 and 10.2 assumed that in a field of view of a vacuum robot 1 located in the lower middle range of 2a at a current position 11a located. The vacuum robot 1 is in the 2a indicated only by a stylized field of view. The distances from a reference point of the vacuum robot 1 for example, through the center of his camera 8th (see. 1 ), the obstacles are referred to as distances d 1 and d 2 , respectively.

Weiter ist in der 2a eine vorherige Position 11b des Saugroboters 1 eingezeichnet, die nachfolgend auch als Referenzposition 11b bezeichnet wird. Die Referenzposition 11b ist in der 2a durch ein gestrichelt eingezeichnetes Sichtfeld angedeutet. Von der Referenzposition 11b bis zur aktuellen Position 11a hat sich der Saugroboter 1 um die durch den Bewegungspfeil 13 dargestellte Fahrstrecke und Richtung bewegt. Der Bewegungspfeil 13 entspricht der Entfernung und Richtung der Bewegung des Saugroboters. Fahrgeschwindigkeit und Fahrrichtung, zusammenfassend als Fahrinformationen bezeichnet, werden während der Fahrt des Saugroboters 1 laufend ermittelt, beispielsweise odometrisch aus Drehinformationen der Antriebsräder 4 des Saugroboters 1.Next is in the 2a a previous position 11b of the vacuum robot 1 drawn below, also referred to as the reference position 11b referred to as. The reference position 11b is in the 2a indicated by a dashed line of vision. From the reference position 11b up to the current position 11a has the vacuum robot 1 around by the movement arrow 13 illustrated route and direction moves. The motion arrow 13 corresponds to the distance and direction of movement of the vacuum robot. Driving speed and direction, collectively referred to as driving information, while driving the vacuum robot 1 continuously determined, for example, odometrically from Drehinformationen the drive wheels 4 of the vacuum robot 1 ,

Sowohl an der Referenzposition 11b, als auch an der aktuellen Position 11a, werden von der Kamera 8 Umgebungsbilder aufgezeichnet. Nachfolgend werden die an der Referenzposition 11b aufgenommenen Bilder als Referenzbilder bezeichnet und die an der aktuellen Position 11a aufgenommenen Bilder als aktuelle Bilder. Both at the reference position 11b , as well as at the current position 11a , be from the camera 8th Environmental images recorded. Below are the at the reference position 11b recorded pictures as reference pictures and those at the current position 11a taken pictures as current pictures.

Bei dem erfindungsgemäßen Verfahren werden ausgehend von den Referenzbildern und den Fahrinformationen verschiedene Vorschaubilder berechnet, wobei jeweils unterschiedliche Objektabstände für die in den Referenzbildern abgebildeten Objekte zugrunde gelegt werden. Bei jedem der Vorschaubilder wird ein einheitlicher, für das gesamte Bild geltender Objektabstand angenommen. Ausgehend von dieser Information kann für jeden Bildpunkt ein Verschiebungsvektor berechnet werden, welcher zur Berechnung des jeweiligen Vorschaubildes genutzt wird. Es wird dann eine Mehrzahl von Vorschaubildern für verschiedene Objektabstände berechnet, beispielsweise Objektabstände von 0,3m (Metern), 0,6m, 1m, 2m, 5m und unendlich. Die Anzahl der berechneten Vorschaubilder und die gewählten Objektabstände können je nach Auflösung der zugrunde liegenden Bilder, der gewünschter Genauigkeit und der zur Berechnung zur Verfügung stehenden Rechenleistung ausgewählt werden.In the method according to the invention, different preview images are calculated on the basis of the reference images and the driving information, with different object distances being used as the basis for the objects imaged in the reference images. Each of the thumbnails will assume a consistent object distance for the entire image. Based on this information, a displacement vector can be calculated for each pixel, which is used to calculate the respective preview image. It then calculates a plurality of thumbnails for different object distances, for example object distances of 0.3m (meters), 0.6m, 1m, 2m, 5m and infinity. The number of calculated preview images and the selected object distances can be selected according to the resolution of the underlying images, the desired accuracy, and the computational power available for calculation.

In einem nächsten Schritt werden die Vorschaubilder jeweils mit dem tatsächlichen Bild an der aktuellen Position 11a verglichen und für jedes Vorschaubild eine Fehlermatrix erstellt. Die Fehlermatrix enthält für jeden Bildpunkt des Vorschaubildes einen Fehlerwert, der die Abweichung zwischen dem Vorschaubild und dem aktuellen Bild in einer Umgebung des jeweiligen Bildpunktes wiedergibt.In a next step, the thumbnails will each be with the actual image at the current position 11a compared and created an error matrix for each preview image. The error matrix contains for each pixel of the preview image an error value representing the deviation between the preview image and the current image in an environment of the respective pixel.

In den 2b bis 2d ist jeweils das aktuelle Bild, das der Saugroboter 1 von den Hindernissen 10.1 und 10.2 an der aktuellen Position 11a aufgenommen hat, mit durchgezogenen Strichen dargestellt. Weiter ist jeweils ein berechnetes Vorschaubild für unterschiedliche Objektabstände mit gestrichelten Linien eingezeichnet. Im Bereich der Hindernisse 10.1 und 10.2 sind in den 2b bis 2d Schraffuren eingezeichnet, die Informationen aus der jeweiligen Fehlermatrix wiedergeben. Dabei entspricht eine Schraffur mit geringer Dichte (großer Linienabstand) einem kleinen Wert der Fehlermatrix und eine Schraffur mit hoher Dichte (kleinem Linienabstand) einem hohen Wert der Fehlermatrix in diesem Bildbereich. Bei 2b ist das Vorschaubild für einen Objektabstand d berechnet, der dem Abstand d1 zwischen dem Saugroboter 1 und dem Hindernis 10.1 entspricht. In 2c ist eine Situation wiedergegeben, bei der der Objektabstand für das berechnete Vorschaubild d dem Abstand d2 zwischen dem Saugroboter 1 und dem Hindernis 10.2 entspricht. In 2d ist das Vorschaubild für einen Objektabstand d berechnet, der gegen unendlich geht.In the 2 B to 2d is always the current picture, which is the vacuum robot 1 from the obstacles 10.1 and 10.2 at the current position 11a has been shown with solid lines. Furthermore, in each case a calculated preview image for different object distances is shown with dashed lines. In the field of obstacles 10.1 and 10.2 are in the 2 B to 2d Hatching drawn, reproduce the information from the respective error matrix. Hatching with a low density (large line spacing) corresponds to a small value of the error matrix and a hatching with high density (small line spacing) corresponds to a high value of the error matrix in this image area. at 2 B is the preview image calculated for an object distance d, the distance d1 between the vacuum robot 1 and the obstacle 10.1 equivalent. In 2c is reproduced a situation in which the object distance for the calculated preview image d the distance d2 between the vacuum robot 1 and the obstacle 10.2 equivalent. In 2d the preview image is calculated for an object distance d that approaches infinity.

Für jedes der berechneten Vorschaubilder werden in einem nächsten Schritt die Fehlermatrizen auf Minima untersucht. Ein Minimum, das in den 2b bis 2d durch einen Bereich mit geringer Schraffurdichte gekennzeichnet ist, zeigt an, dass sich ein in dem aktuellen Umgebungsbild und dem Referenzbild abgebildetes Objekt sich in dem angenommenen Objektabstand d bzw. annähernd in dem angenommenen Objektabstand d befindet. Eine Auswertung der 2b bis 2d würde hier ergeben, dass sich im linken Bereich ein Objekt im Abstand d1 (nämlich das Hindernis 10.1) und im rechten Bildbereich ein Objekt mit einem Objektabstand d2, nämlich das Hindernis 10.2, befindet.For each of the calculated preview images, the error matrices are examined for minima in a next step. A minimum that in the 2 B to 2d is indicated by a region of low hatch density, indicates that an object imaged in the current environment image and the reference image is in the assumed object distance d or approximately in the assumed object distance d, respectively. An evaluation of the 2 B to 2d would show here that in the left area an object at a distance d1 (namely the obstacle 10.1 ) and in the right image area an object with an object distance d2, namely the obstacle 10.2 , is located.

Es wird angemerkt, dass bei dem Verfahren bis zu diesem Zeitpunkt nur ein ganzheitlicher (holistischer) Bildvergleich erfolgt ist. Die Fehlermatrizen bilden einen Matrizenstapel, der Fehlerwerte dreidimensional repräsentiert. Mögliche Hindernisobjekte können aus den Minima des Fehlermatrixstapels erkannt werden, ohne dass eine rechenaufwendige Merkmalsanalyse (zur Identifizierung von Kanten, Ecken, usw.) der Umgebungsbilder selbst durchgeführt wird.It is noted that in the process up to this time only a holistic image comparison has taken place. The error matrices form a matrix stack that represents error values three-dimensionally. Possible obstacle objects can be detected from the minima of the error matrix stack without performing a computationally expensive feature analysis (to identify edges, corners, etc.) of the environment images themselves.

Bei dem schematischen Beispiel, das der 2 zugrunde liegt, entspricht der angenommene Objektabstand d bei den 2b und 2c zur leichteren Illustration des Verfahrens gerade dem Abstand d1 bzw. d2 zwischen dem Saugroboter 1 und den Hindernissen 10.1 und 10.2. Bei einer Folge von Vorschaubildern mit unterschiedlichen angenommenen Objektabständen d liegt eine solche Situation natürlich üblicherweise nicht oder nur zufällig vor. Häufig tritt die Situation auf, dass ein tatsächlicher Hindernisabstand nicht durch eines der Vorschaubilder erfasst ist, sondern beispielsweise zwischen dem angenommen Objektabstand von zwei Vorschaubildern liegt. Zur Ermittlung eines wahrscheinlichsten Hindernisabstands ist es dann vorteilhaft, den Wert der Fehlermatrix für einen Bildbereich oder auch für jeden einzelnen Bildpunkt zwischen den angenommenen Objektabständen der Vorschaubilder zu interpolieren. Die Interpolierten Werte geben die Abhängigkeit der Fehlerwerte von dem Objektabstand wieder. Diese Abhängigkeit wird nachfolgend auch als Fehlerkurve bezeichnet. Für die Annäherung durch eine derartige Fehlerkurve ist beispielsweise ein Polynom zweiter Ordnung (quadratische Parabel) geeignet. In dem Fall basiert die Interpolation bevorzugt auf drei benachbarten Fehlermatrizen.In the schematic example that the 2 underlying the assumed object distance d at the 2 B and 2c for ease of illustration of the process just the distance d 1 or d 2 between the vacuum robot 1 and the obstacles 10.1 and 10.2 , In a sequence of thumbnails with different assumed object distances d, such a situation is of course usually not or only incidentally. Frequently the situation arises that an actual obstacle distance is not covered by one of the preview images, but lies for example between the assumed object distance of two preview images. In order to determine a most probable obstacle distance, it is then advantageous to interpolate the value of the error matrix for an image area or also for each individual pixel between the assumed object distances of the preview images. The interpolated values represent the dependency of the error values on the object distance. This dependency is also referred to below as an error curve. For the approximation by such an error curve, for example, a second-order polynomial (quadratic parabola) is suitable. In that case, the interpolation is preferably based on three adjacent error matrices.

Um aus der Lage des Minimums im Fehlermatrizenstapels auf das Vorliegen eines Hindernisses zu schließen und dessen Position zu bestimmen, wird bei dem anmeldungsgemäßen Verfahren eine Hinderniskarte der Umgebung angelegt. Durch Bildrauschen der Umgebungsbilder, durch Ungenauigkeiten bei der (odometrischen) Bestimmung der Fahrinformation und auch durch eine Varianz bei der Interpolation des Abstands des lokalen Minimums in der Fehlermatrix ist die Position eines möglichen Hindernisses, die sich aus der Lage des Minimums in dem Fehlermatrixstapels ergibt, mit einer abschätzbaren Ungenauigkeit belegt. Das in 2 dargestellte Verfahren wird vorteilhaft bei Bewegung des Saugroboters 1 mehrfach durchgeführt, wobei die angegebene aktuelle Position 11a für einen nachfolgenden Schritt die Referenzposition darstellt und ausgehend von dieser Position als Referenzposition wiederum Vorschaubilder erstellt werden, die mit einer neuen aktuellen Position verglichen werden. Für jede aktuelle Position, an der ein Bildvergleich vorgenommen wird und die resultierende Fehlermatrix ausgewertet wird, werden Informationen zur Lage eines bzw. mehrerer lokaler Minima in der Fehlermatrix gewonnen. Diese können vorteilhaft zur Hinderniserkennung und zur Bestimmung eines erkannten Hindernisses kombiniert werden. Dieses ist in 3 schematisch illustriert.In order to deduce the existence of an obstacle from the position of the minimum in the error matrix stack and to determine its position, an obstacle map of the environment is created in the method according to the application. By image noise of the surrounding images, by inaccuracies in the (odometric) determination of the driving information and also by a variance in the interpolation of the local minimum distance in the error matrix, the position of a possible obstacle resulting from the position of the minimum in the error matrix stack is with an estimable inaccuracy. This in 2 The illustrated method is advantageous in movement of the vacuum robot 1 performed repeatedly, with the specified current position 11a for a subsequent step represents the reference position and from this position as reference position again thumbnails are created, which are compared with a new current position. For each current position at which an image comparison is made and the resulting error matrix is evaluated, information about the location of one or more local minima in the error matrix is obtained. These can be advantageously combined for obstacle detection and for determining a detected obstacle. This is in 3 schematically illustrated.

Die 3 zeigt eine Aufsicht auf die Umgebung des Saugroboters 1, der sich in diesem Beispiel entlang der x-Koordinate in der Bewegungsebene bewegt. Dargestellt sind drei verschiedene Positionen 11a, 11b, 11c des Saugroboters, von denen die Position 11a die aktuelle Position ist, an der ein Bildvergleich mit Vorschaubildern erfolgt, die an einer vorherigen Position, nämlich der Position 11b als Referenzposition, erstellt wurden. An der Position 11a wurde ein Minimum in den Fehlermatrizen unter einem Winkel von βa und in einem wahrscheinlichsten Abstand da ermittelt. Sowohl die Bestimmung des Winkels βa, unter dem das lokale Minimum von Saugroboter 1 aus erscheint, als auch die Bestimmung des wahrscheinlichsten Abstands da sind fehlerbehaftet, wobei die Größe des Fehlers jeweils durch eine Gaußverteilung angenähert ist. Dabei wird im Allgemeinen die Fehlergröße in der Richtungsbestimmung des Winkels βa kleiner sein als die in der Bestimmung des Abstands da. Die daraus resultierende Wahrscheinlichkeitsverteilung für die wahrscheinlichste Position des lokalen Minimums der Fehlermatrizen ist in der Projektion auf die xy-Ebene durch eine Ellipse 14a symbolisiert. Die Ellipse 14a gibt die Varianz bei der Bestimmung des Winkels βa bzw. des Abstands da wieder. The 3 shows a view of the surroundings of the vacuum robot 1 which in this example moves along the x-coordinate in the plane of motion. Shown are three different positions 11a . 11b . 11c of the robotic vacuum cleaner, of which the position 11a the current position is where an image comparison is made with thumbnails that are at a previous position, namely the position 11b as a reference position. At the position 11a a minimum was found in the error matrices at an angle of β a and at a most probable distance d a . Both the determination of the angle β a , below the local minimum of vacuum robots 1 out, as well as the determination of the most probable distance d a are error-prone, wherein the size of the error is approximated by a Gaussian distribution. In general, the error variable in the direction determination of the angle β a will be smaller than that in the determination of the distance d a . The resulting probability distribution for the most probable position of the local minimum of the error matrices is in the projection onto the xy plane by an ellipse 14a symbolizes. The ellipse 14a gives the variance in the determination of the angle β a or the distance d a .

In gleicher Weise werden für die zuvor eingenommenen Positionen 11b und 11c die Ergebnisse der an diesen Positionen ermittelten lokalen Minima in den Fehlermatrizen in Form von Ellipsen 14b und 14c eingetragen. Die den Ellipsen 14a bis 14c zugrunde liegenden Gaußverteilungen werden zu einer Gesamtwahrscheinlichkeitsverteilung aufsummiert. Aus dieser Gesamtwahrscheinlichkeitsverteilung ergibt sich nun die Lage des Hindernisses bzw. der Hindernisse. Beispielsweise kann das Maximum dieser Gesamtwahrscheinlichkeitsverteilung als wahrscheinlichste Position 15 eines Hindernisses in die Hinderniskarte eingetragen werden. Auch kann ein Schwellenwert vorgegeben sein. An den Positionen, an denen die Werte der Gesamtwahrscheinlichkeitsverteilung den Schwellenwert überschreiten, wird ein Hindernis angenommen.. In the same way, for the previously occupied positions 11b and 11c the results of the local minima determined in these positions in the error matrices in the form of ellipses 14b and 14c entered. The ellipses 14a to 14c underlying Gaussian distributions are summed up to a total probability distribution. From this total probability distribution, the position of the obstacle or obstacles now results. For example, the maximum of this total probability distribution may be the most probable position 15 an obstacle in the obstacle card are registered. Also, a threshold may be specified. At the positions where the values of the total probability distribution exceed the threshold, an obstacle is assumed.

Claims (10)

Verfahren zur Hinderniserkennung bei einem selbstfahrenden Roboter, der eine Kamera (8) zur Aufnahme von Bildern einer Umgebung des Roboters und eine Steuereinrichtung (7) zur Auswertung der Bilder der Kamera (8) aufweist, mit den folgenden Schritten: a) Aufnehmen eines Referenzbildes der Umgebung des Roboters durch die Kamera (8); b) Bewegen des Roboters um eine Fahrstrecke; c) Aufnehmen eines aktuellen Bildes der Umgebung des Roboters durch die Kamera (8); d) Berechnen einer Mehrzahl von Vorschaubildern anhand des Referenzbildes, anhand der Fahrstrecke sowie jeweils eines angenommenen Objektabstands; e) Vergleichen des aktuellen Bildes mit jedem der Vorschaubilder und ermitteln jeweils einer Fehlermatrix mit Fehlerwerten; f) Identifizieren von Bereichen der Fehlermatrizen, in denen Werte der Fehlermatrizen ein Minimum aufweisen, als Hindernis (10.1, 10.2).Obstacle detection method for a self-propelled robot using a camera ( 8th ) for taking pictures of an environment of the robot and a control device ( 7 ) for evaluating the images of the camera ( 8th ) comprising the following steps: a) taking a reference image of the environment of the robot through the camera ( 8th ); b) moving the robot around a driving distance; c) taking a current image of the environment of the robot by the camera ( 8th ); d) calculating a plurality of preview images on the basis of the reference image, on the basis of the travel distance and in each case on an assumed object distance; e) comparing the current image with each of the preview images and each determining an error matrix with error values; f) identifying areas of the error matrices in which values of the error matrices have a minimum as an obstacle ( 10.1 . 10.2 ). Verfahren nach Anspruch 1, bei dem ein Abstand des Hindernisses (10.1, 10.2) zum Roboter aus dem Objektabstand der Vorschaubilder ermittelt wird.Method according to Claim 1, in which a distance of the obstacle ( 10.1 . 10.2 ) is determined to the robot from the object distance of the preview images. Verfahren nach Anspruch 2, bei dem der Abstand des Hindernisses (10.1, 10.2) gleich dem Objektabstand desjenigen Vorschaubildes angenommen wird, bei dem die dem Objektabstand zugeordnete Fehlermatrix verglichen mit den Fehlermatrizen bei anderen Objektabständen die kleinsten Fehlerwerte aufweist. Method according to Claim 2, in which the distance of the obstacle ( 10.1 . 10.2 ) is assumed equal to the object distance of that preview image in which the error matrix associated with the object distance has the smallest error values at other object distances compared to the error matrices. Verfahren nach Anspruch 3, bei dem der Abstand des Hindernisses (10.1, 10.2) sich aus dem Minimalwert einer Fehlerkurve ergibt, wobei die Fehlerkurve näherungsweise an die Fehlerwerte der Fehlermatrizen angepasst ist und genäherte Fehlerwerte abhängig vom Objektabstand angibt. Method according to Claim 3, in which the distance of the obstacle ( 10.1 . 10.2 ) results from the minimum value of an error curve, wherein the error curve is approximately adapted to the error values of the error matrices and indicates approximated error values depending on the object distance. Verfahren nach Anspruch 4, bei dem die Fehlerkurve ein Polynom und bevorzugt eine Parabel ist.Method according to claim 4, wherein the error curve is a polynomial and preferably a parabola. Verfahren nach einem der Ansprüche 1 bis 5, bei dem die Schritte a) bis e) mehrfach durchgeführt werden, wobei jeweils eine Wahrscheinlichkeitsverteilung für das Vorliegen eines Hindernisses in der Bewegungsebene des Roboters aus der jeweiligen Fehlermatrix berechnet wird, und wobei die Wahrscheinlichkeitsverteilungen zu einer Gesamtwahrscheinlichkeitsverteilung aufaddiert werden.Method according to one of claims 1 to 5, wherein the steps a) to e) are performed several times, wherein in each case a probability distribution for the presence of an obstacle in the movement plane of the robot from the respective error matrix is calculated, and wherein the probability distributions to a total probability distribution be added up. Verfahren nach Anspruch 6, bei dem ein Schwellenwert vorgegeben ist und bei dem in den Bereichen der Bewegungsebene, in denen ein Wahrscheinlichkeitswert der Gesamtwahrscheinlichkeitsverteilung den Schwellenwert überschreitet, ein Hindernis (10.1, 10.2) identifiziert wird.Method according to Claim 6, in which a threshold value is predetermined and in which an obstacle (in the regions of the plane of motion in which a probability value of the overall probability distribution exceeds the threshold value) 10.1 . 10.2 ) is identified. Selbstfahrender Roboter mit einer Kamera (8) zur Aufnahme von Bildern einer Umgebung des Roboters und einer Steuereinrichtung (7) zur Auswertung der Bilder der Kamera (8), dadurch gekennzeichnet, dass die Steuereinrichtung (7) dazu eingerichtet ist, ein Verfahren nach einem der Ansprüche 1 bis 7 durchzuführen. Self-propelled robot with a camera ( 8th ) for taking pictures of an environment of the robot and a control device ( 7 ) for evaluating the images of the camera ( 8th ), characterized in that the control device ( 7 ) is adapted to perform a method according to any one of claims 1 to 7. Selbstfahrender Roboter nach Anspruch 8, bei dem die Kamera (8) ein weites Blickfeld aufweist und insbesondere eine Panorama-Kamera ist.Self-propelled robot according to claim 8, in which the camera ( 8th ) has a wide field of view and is in particular a panoramic camera. Selbstfahrender Roboter nach Anspruch 8 oder 9, der als selbstfahrendes Bodenbearbeitungsgerät und insbesondere als Saugroboter (1) ausgebildet ist.Self-propelled robot according to claim 8 or 9, as a self-propelled soil cultivation device and in particular as a suction robot ( 1 ) is trained.
DE102014110201.0A 2014-07-21 2014-07-21 Self-propelled robot and obstacle detection method for a self-propelled robot Active DE102014110201B3 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102014110201.0A DE102014110201B3 (en) 2014-07-21 2014-07-21 Self-propelled robot and obstacle detection method for a self-propelled robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102014110201.0A DE102014110201B3 (en) 2014-07-21 2014-07-21 Self-propelled robot and obstacle detection method for a self-propelled robot

Publications (1)

Publication Number Publication Date
DE102014110201B3 true DE102014110201B3 (en) 2015-08-13

Family

ID=53677079

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102014110201.0A Active DE102014110201B3 (en) 2014-07-21 2014-07-21 Self-propelled robot and obstacle detection method for a self-propelled robot

Country Status (1)

Country Link
DE (1) DE102014110201B3 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106426211A (en) * 2016-11-11 2017-02-22 四川省科拓梦无人机科技有限公司 Control system of sweeping robot
DE102017113605A1 (en) * 2017-06-20 2018-12-20 Vorwerk & Co. Interholding Gmbh Autonomous cleaning system and cleaning process
CN113655793A (en) * 2021-08-12 2021-11-16 上海三一重机股份有限公司 Obstacle avoidance control method and device based on fusion strategy and engineering machinery

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10326943A1 (en) * 2002-11-21 2004-06-17 Samsung Electronics Co., Ltd., Suwon Autonomous vehicle and associated method and device for motion determination, motion control and object detection
US20070090973A1 (en) * 2002-12-17 2007-04-26 Evolution Robotics, Inc. Systems and methods for using multiple hypotheses in a visual simultaneous localization and mapping system
DE102007016802B3 (en) * 2007-04-05 2008-05-15 Miele & Cie. Kg Self-propelled tilling device e.g. robot, navigating method, involves determining driving direction by evaluating determined vectors and by controlling distance to preceding tracks, and forming meander/spiral shaped preset track

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10326943A1 (en) * 2002-11-21 2004-06-17 Samsung Electronics Co., Ltd., Suwon Autonomous vehicle and associated method and device for motion determination, motion control and object detection
US20070090973A1 (en) * 2002-12-17 2007-04-26 Evolution Robotics, Inc. Systems and methods for using multiple hypotheses in a visual simultaneous localization and mapping system
DE102007016802B3 (en) * 2007-04-05 2008-05-15 Miele & Cie. Kg Self-propelled tilling device e.g. robot, navigating method, involves determining driving direction by evaluating determined vectors and by controlling distance to preceding tracks, and forming meander/spiral shaped preset track

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106426211A (en) * 2016-11-11 2017-02-22 四川省科拓梦无人机科技有限公司 Control system of sweeping robot
DE102017113605A1 (en) * 2017-06-20 2018-12-20 Vorwerk & Co. Interholding Gmbh Autonomous cleaning system and cleaning process
CN113655793A (en) * 2021-08-12 2021-11-16 上海三一重机股份有限公司 Obstacle avoidance control method and device based on fusion strategy and engineering machinery

Similar Documents

Publication Publication Date Title
DE102007016802B3 (en) Self-propelled tilling device e.g. robot, navigating method, involves determining driving direction by evaluating determined vectors and by controlling distance to preceding tracks, and forming meander/spiral shaped preset track
EP2755101B1 (en) Self-propelled robot and method for distance determination in a self-propelled robot
DE102011000009A1 (en) Method of simultaneous determination and map formation
DE102019115874A1 (en) SYSTEMS AND METHODS FOR IMPROVED DISTANCE ESTIMATION BY A MONOCAMERA USING RADAR AND MOTION DATA
EP3408719B1 (en) Method for creating an environment map for an automatically moveable processing device
EP2479584B1 (en) Method for determining the position of a self-propelled device
EP2764812B1 (en) Cleaning robot
DE102019122760A1 (en) SELF-DRIVING MOBILE ROBOTS USING HUMAN-ROBOT INTERACTIONS
DE102015006014A1 (en) Soil cultivation device and method for its navigation and swarm of tillage equipment and methods for their joint navigation
DE102012112036B4 (en) Self-propelled tillage implement and method for navigating a self-propelled tillage implement
DE102013101543A1 (en) CONTROL PROCEDURE FOR CLEANING ROBOT
DE102016121320A1 (en) Method for operating a self-propelled robot
DE102012102915A1 (en) Method and device for optically determining a position and / or orientation of an object in space
DE102017112794A1 (en) Method for operating a self-propelled soil tillage implement
DE102018133441A1 (en) Method and system for determining landmarks in the surroundings of a vehicle
DE102014110201B3 (en) Self-propelled robot and obstacle detection method for a self-propelled robot
EP3559773A1 (en) Method for the navigation and self-location of an autonomously moving processing device
DE102019218192A1 (en) Method of working crops in a field
DE102018113015A1 (en) Autonomous, mobile work machine
DE102020103575B4 (en) Feature point detection device and method for detecting feature points in image data
EP2741161B1 (en) Autonomous apparatus for processing a surface and method for detecting the position of the autonomous apparatus
DE102018132676A1 (en) Method for locating a vehicle in an environment
DE112022002520T5 (en) Procedure for automatic calibration of cameras and creation of maps
DE102022206060A1 (en) DEFENSE MULTIMODAL FUSION MODELS AGAINST SINGLE-SOURCE ATTACKERS
DE112021001445T5 (en) Detection device, tracking device, detection program and tracking program

Legal Events

Date Code Title Description
R163 Identified publications notified
R012 Request for examination validly filed
R018 Grant decision by examination section/examining division
R020 Patent grant now final
R083 Amendment of/additions to inventor(s)
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G05D0001020000

Ipc: G05D0001430000