DE102023210263A1 - Method for generating a texture map - Google Patents
Method for generating a texture map Download PDFInfo
- Publication number
- DE102023210263A1 DE102023210263A1 DE102023210263.3A DE102023210263A DE102023210263A1 DE 102023210263 A1 DE102023210263 A1 DE 102023210263A1 DE 102023210263 A DE102023210263 A DE 102023210263A DE 102023210263 A1 DE102023210263 A1 DE 102023210263A1
- Authority
- DE
- Germany
- Prior art keywords
- image
- mobile device
- images
- environment
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/20—Control system inputs
- G05D1/24—Arrangements for determining position or orientation
- G05D1/242—Means based on the reflection of waves generated by the vehicle
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/005—Navigation; 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
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3804—Creation or updating of map data
- G01C21/3807—Creation or updating of map data characterised by the type of data
- G01C21/3826—Terrain data
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3804—Creation or updating of map data
- G01C21/3833—Creation or updating of map data characterised by the source of data
- G01C21/3848—Data obtained from both position sensors and additional sensors
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/88—Lidar systems specially adapted for specific applications
- G01S17/89—Lidar systems specially adapted for specific applications for mapping or imaging
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/20—Control system inputs
- G05D1/22—Command input arrangements
- G05D1/221—Remote-control arrangements
- G05D1/222—Remote-control arrangements operated by humans
- G05D1/224—Output arrangements on the remote controller, e.g. displays, haptics or speakers
- G05D1/2244—Optic
- G05D1/2245—Optic providing the operator with a purely computer-generated representation of the environment of the vehicle, e.g. virtual reality
- G05D1/2246—Optic providing the operator with a purely computer-generated representation of the environment of the vehicle, e.g. virtual reality displaying a map of the environment
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/20—Control system inputs
- G05D1/24—Arrangements for determining position or orientation
- G05D1/243—Means capturing signals occurring naturally from the environment, e.g. ambient optical, acoustic, gravitational or magnetic signals
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D2105/00—Specific applications of the controlled vehicles
- G05D2105/10—Specific applications of the controlled vehicles for cleaning, vacuuming or polishing
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D2107/00—Specific environments of the controlled vehicles
- G05D2107/40—Indoor domestic environment
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D2109/00—Types of controlled vehicles
- G05D2109/10—Land vehicles
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D2111/00—Details of signals used for control of position, course, altitude or attitude of land, water, air or space vehicles
- G05D2111/10—Optical signals
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D2111/00—Details of signals used for control of position, course, altitude or attitude of land, water, air or space vehicles
- G05D2111/10—Optical signals
- G05D2111/17—Coherent light, e.g. laser signals
Landscapes
- Engineering & Computer Science (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Aviation & Aerospace Engineering (AREA)
- Computer Networks & Wireless Communication (AREA)
- Electromagnetism (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
Die Erfindung betrifft ein Verfahren zum Verfahren zum Erzeugen einer Texturkarte (232) einer Bodenoberfläche in einer Umgebung, in welcher Umgebung sich ein mobiles Gerät, insbesondere ein sich zumindest teilweise automatisiert bewegenden Fahrzeugs oder Roboter, insbesondere ein Reinigungsroboters, bewegt oder bewegen soll, umfassend: Bereitstellen (200) von Geräte- und/oder Umgebungsinformationen (202, 204, 206), die mittels wenigstens eines Sensors des mobilen Geräts von dem mobilen Gerät und/oder der Umgebung erfasst worden sind, wobei der wenigstens eine Sensor einen Tiefensensor umfasst; Bereitstellen (208) von Bildern (210), die mittels einer Kamera des mobilen Geräts von der Umgebung erfasst worden sind; für ein ausgewähltes Bild oder jedes von mehreren ausgewählten Bildern der bereitgestellten Bilder: Synchronisieren (212) des Bildes mit zumindest einem Anteil der Geräte- und/oder Umgebungsinformationen, die mittels des Tiefensensors erfasst worden sind, in räumlicher und/oder zeitlicher Hinsicht, um synchronisierte Tiefeninformationen (214) zu erhalten, und Extrahieren (216), aus dem Bild, basierend auf den synchronisierten Tiefeninformationen, eines Bodenbildes (218) der Umgebung; Erzeugen (230), basierend auf dem einen oder den mehreren Bodenbildern, einer Texturkarte (232) der Bodenoberfläche der Umgebung; und Bereitstellen (240) der Texturkarte. The invention relates to a method for generating a texture map (232) of a floor surface in an environment in which a mobile device, in particular an at least partially automated vehicle or robot, in particular a cleaning robot, is moving or is intended to move, comprising: providing (200) device and/or environmental information (202, 204, 206) that has been acquired from the mobile device and/or the environment by means of at least one sensor of the mobile device, wherein the at least one sensor comprises a depth sensor; providing (208) images (210) that have been acquired from the environment by means of a camera of the mobile device; for a selected image or each of a plurality of selected images of the provided images: synchronizing (212) the image with at least a portion of the device and/or environmental information acquired by the depth sensor in spatial and/or temporal terms to obtain synchronized depth information (214), and extracting (216) from the image, based on the synchronized depth information, a ground image (218) of the environment; generating (230) a texture map (232) of the ground surface of the environment based on the one or more ground images; and providing (240) the texture map.
Description
Die vorliegende Erfindung betrifft ein Verfahren zum Erzeugen einer Texturkarte einer Bodenoberfläche in einer Umgebung, in welcher Umgebung sich ein mobiles Gerät, insbesondere ein sich zumindest teilweise automatisiert bewegenden Fahrzeugs oder Roboter, bewegt oder bewegen soll, sowie ein System zur Datenverarbeitung, ein mobiles Gerät und ein Computerprogramm zu dessen Durchführung.The present invention relates to a method for generating a texture map of a ground surface in an environment in which environment a mobile device, in particular an at least partially automated vehicle or robot, is moving or is intended to move, as well as a system for data processing, a mobile device and a computer program for carrying out the method.
Hintergrund der ErfindungBackground of the invention
Mobile Geräte wie z.B. sich zumindest teilautomatisiert bewegende Fahrzeuge oder Roboter bewegen sich typischerweise in einer Umgebung, insbesondere einer zu bearbeitenden Umgebung oder einem Arbeitsbereich, wie z.B. einer Wohnung, in einem Garten, in einer Fabrikhalle oder auf der Straße, in der Luft oder im Wasser. Eines der grundlegenden Probleme eines solchen oder auch anderen mobilen Geräts besteht darin, sich zu orientieren, also zu wissen, wie die Umgebung aussieht, also insbesondere wo Hindernisse oder andere Objekte sind, und wo es sich (absolut) befindet. Dafür kann das mobile Gerät z.B. mit verschiedenen Sensoren ausgerüstet sein, wie z.B. Kameras, Lidar-Sensoren oder auch Intertialsensoren, mit deren Hilfe die Umgebung und die Bewegung des mobilen Gerätes z.B. zwei- oder dreidimensional erfasst wird. Dies ermöglicht es dem mobilen Gerät, sich lokal zu bewegen, Hindernisse rechtzeitig zu erkennen und zu umfahren.Mobile devices, such as at least partially automated vehicles or robots, typically move within an environment, particularly a working area or workspace, such as a home, a garden, a factory hall, on the street, in the air, or in water. One of the fundamental problems of such or other mobile devices is to orient themselves, i.e., to know what the environment looks like, in particular where obstacles or other objects are, and where it is (absolutely) located. For this purpose, the mobile device can be equipped with various sensors, such as cameras, lidar sensors, or inertial sensors, which are used to capture the environment and the movement of the mobile device, for example, in two or three dimensions. This enables the mobile device to move locally, detect obstacles in a timely manner, and avoid them.
Offenbarung der ErfindungDisclosure of the invention
Erfindungsgemäß werden ein Verfahren zum Erzeugen einer Texturkarte, sowie ein System zur Datenverarbeitung, ein mobiles Gerät und ein Computerprogramm zu dessen Durchführung 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 generating a texture map, as well as a data processing system, a mobile device, and a computer program for implementing the method are proposed, having the features of the independent patent claims. Advantageous embodiments are the subject of the subclaims and the following description.
Die Erfindung beschäftigt sich allgemein mit mobilen Geräten, die sich in einer Umgebung oder dort z.B. in einem Arbeitsbereich bewegen bzw. bewegen sollen, sowie insbesondere mit dem Erzeugen einer Texturkarte der Bodenoberfläche in einer solchen Umgebung. Unter einer Texturkarte ist dabei eine Karte zu verstehen, in der eine Textur oder eine Art der Bodenoberfläche (z.B. ein Teppich, ein ebener Boden etc.) erkennbar oder sichtbar ist, also z.B. in Art eines Fotos oder Bildes.The invention generally relates to mobile devices that move or are intended to move in an environment or there, e.g., in a workspace, and in particular to the generation of a texture map of the floor surface in such an environment. A texture map is understood to be a map in which a texture or type of floor surface (e.g., a carpet, a flat floor, etc.) is recognizable or visible, e.g., in the form of a photo or image.
Beispiele für solche mobilen Geräte (oder auch mobile Arbeitsgeräte) sind z.B. Roboter und/oder Drohnen und/oder auch sich teilautomatisiert oder (vollständig) automatisiert (zu Land, Wasser oder in der Luft) bewegende Fahrzeuge. Als Roboter kommen z.B. Haushaltsroboter wie Saug- und/oder Wischroboter, Boden- oder Straßenreinigungsgeräte oder Rasenmähroboter in Betracht, ebenso aber auch andere sog. Service-Roboter, als sich zumindest teilweise automatisiert bewegende Fahrzeuge z.B. Personenbeförderungsfahrzeuge oder Güterbeförderungsfahrzeuge (auch sog. Flurförderfahrzeuge, z.B. in Lagerhäusern), aber auch Luftfahrzeuge wie sog. Drohnen oder Wasserfahrzeuge.Examples of such mobile devices (or mobile work equipment) include robots and/or drones and/or partially or fully automated vehicles (on land, water, or in the air). Robots include, for example, household robots such as vacuum and/or mop robots, floor or street cleaning devices, or lawnmower robots, as well as other so-called service robots, as well as at least partially automated vehicles, such as passenger vehicles or goods transport vehicles (including industrial trucks, e.g., in warehouses), as well as aircraft such as drones or watercraft.
Ein solches mobiles Gerät weist insbesondere eine Steuer- und/oder Regeleinheit und eine Antriebseinheit zum Bewegen des mobilen Geräts auf, sodass das mobile Gerät in der Umgebung, z.B. auch entlang eines Bewegungspfads oder einer Trajektorie, bewegt werden kann. Außerdem kann ein mobiles Gerät einen oder mehrere Sensoren aufweisen, mittels welcher die Umgebung bzw. Informationen in der Umgebung erfasst werden können.Such a mobile device comprises, in particular, a control and/or regulating unit and a drive unit for moving the mobile device, so that the mobile device can be moved in the environment, e.g., along a movement path or trajectory. Furthermore, a mobile device can comprise one or more sensors by means of which the environment or information in the environment can be detected.
Nachfolgend soll die Erfindung insbesondere am Beispiel eines Reinigungsroboters als mobiles Gerät erläutert werden, wenngleich sich das Prinzip auch auf andere Arten von mobilen Geräten übertragen lässt.In the following, the invention will be explained in particular using the example of a cleaning robot as a mobile device, although the principle can also be applied to other types of mobile devices.
Mobile Geräte können im Rahmen ihrer Navigation in einer Umgebung eine Karte erstellen und/oder verwenden. Haushaltsroboter wie Reinigungsroboter können z.B. eine 2D-Kartenansicht zur Interaktion mit einem Benutzer verwenden. Dabei kann z.B. die Struktur der Umgebung auf einer künstlich eingefärbten Karte zu sehen sein, auf der Hindernisse und Mauern als Begrenzung oder sonstige Objekte angezeigt werden. Karten können auch mit Piktogrammen angereichert sein und z.B. die Position der Dockingstation zeigen, die aktuelle Position des Roboters, den zurückgelegten Weg und anders. Auch kann der Benutzer z.B. interaktiv Objektplatzhalter wie Sofa- oder Stuhlmodelle platzieren, um die Karte zu verbessern.Mobile devices can create and/or use a map as part of their navigation within an environment. Household robots, such as cleaning robots, can use a 2D map view to interact with a user. This can include showing the structure of the environment on an artificially colored map, with obstacles and walls representing boundaries or other objects. Maps can also be enhanced with pictograms, showing, for example, the position of the docking station, the current position of the robot, the path traveled, and other information. The user can also interactively place object placeholders, such as sofa or chair models, to enhance the map.
Wie sich gezeigt hat, besteht ein Problem für einen Benutzer jedoch insbesondere darin, dass es schwierig ist, verschiedene Bodentypen in einer solchen Karte zu annotieren (z.B. einen Teppich, eine Grenze zwischen Fliesen in offener Küche und Wohnzimmer und dergleichen). Genau solche Informationen über eine Bodenoberfläche können jedoch wichtig sein, wenn der Benutzer spezielle Go- oder No-Go-Zonen definieren will, d.h. bestimmte Bereich in der Umgebung, in die der Roboter sich bewegen darf oder eben nicht.However, as it turns out, one particular problem for a user is that it is difficult to annotate different floor types in such a map (e.g., a carpet, a border between tiles in an open kitchen and living room, and the like). However, such information about a floor surface can be important if the user wants to define specific go- or no-go zones, i.e., specific areas in the environment into which the robot is allowed or not allowed to move.
Vor diesem Hintergrund wird ein Verfahren zum Erzeugen einer Texturkarte einer Bodenoberfläche in einer Umgebung, insbesondere einem Innenraum, vorgeschlagen. Dabei soll sich das mobile Gerät, in dieser Umgebung bewegen. Hierzu werden Geräte- und/oder Umgebungsinformationen bereitgestellt, die mittels wenigstens eines Sensors des mobilen Geräts von dem mobilen Gerät und/oder der Umgebung erfasst worden sind. Der wenigstens eine Sensor umfasst dabei (zumindest) einen Tiefensensor. Als Tiefensensor kommt insbesondere ein Lidar-Sensor (oder Laserscanner) in Betracht, und zwar insbesondere ein 2D-Lidar-Sensor, d.h. ein Lidar-Sensor, der die Umgebung nur in einer Ebene abtastet. Diese Ebene ist dabei in aller Regel parallel zur Bodenoberfläche, zumindest dann, wenn das mobile Geräte auf einem ebenen Boden steht.Against this background, a method for generating a texture map of a ground surface in an environment, in particular an indoor space. The mobile device is intended to move in this environment. For this purpose, device and/or environmental information is provided which has been detected by at least one sensor of the mobile device from the mobile device and/or the environment. The at least one sensor comprises (at least) one depth sensor. A lidar sensor (or laser scanner) is particularly suitable as a depth sensor, and more specifically a 2D lidar sensor, i.e. a lidar sensor which scans the environment only in one plane. This plane is generally parallel to the ground surface, at least when the mobile device is on level ground.
Grundsätzlich kommen aber auch andere Arten von Tiefensensoren in Betracht, z.B. Time-Of-Flight-Kameras und dergleichen. Unabhängig davon kann das mobile Gerät auch einen oder mehrere andere Sensoren als einen Tiefensensor umfassen, z.B. eine inertiale Messeinheit (IMU), eine Kamera oder Odometrie. Solche anderen Sensoren können insbesondere für die Lokalisierung und/oder Navigation des mobilen Geräts verwendet werden, z.B. im Rahmen von sog. SLAM.In principle, other types of depth sensors are also possible, e.g., time-of-flight cameras and the like. Irrespective of this, the mobile device may also include one or more sensors other than a depth sensor, e.g., an inertial measurement unit (IMU), a camera, or odometry. Such other sensors can be used, in particular, for localization and/or navigation of the mobile device, e.g., in the context of so-called SLAM.
Bei SLAM gibt es verschiedene Ansätze, Karten und Positionen darzustellen. Herkömmliche Verfahren für SLAM stützen sich in der Regel auf geometrische Informationen wie Knoten und Kanten. Knoten und Kanten sind typischerweise Bestandteile des SLAM-Graphen. Die Knoten und Kanten im SLAM-Graph können verschieden ausgestaltet sein; traditionell entsprechen die Knoten z.B. der Pose (Position und Orientierung) des mobilen Geräts oder bestimmter Umgebungsmerkmale zu bestimmten Zeitpunkten, während die Kanten relative Messungen zwischen mobilem Gerät und Umgebungsmerkmal repräsentieren, oder zwischen verschiedenen Posen des mobilen Geräts zu unterschiedlichen Zeitpunkten. Basierend auf einem solchen SLAM-Graphen kann dann eine Karte der Umgebung, in der sich das mobile Gerät bewegt, bestimmt sein oder bestimmt werden. Mit jedem neuen Datensatz mit Informationen zur Umgebung, welche Informationen von einem Sensor des mobilen Geräts erhalten wird bzw. darauf basiert, kann die Karte (bzw. der SLAM-Graph) erweitert oder aktualsiert werden. Die vorstehend erwähnte Karte oder 2D-Karte für den Benutzer kann dabei auch basierend auf der SLAM-Karte oder dem SLAM-Graphen erzeugt werden.In SLAM, there are various approaches to representing maps and positions. Conventional SLAM methods generally rely on geometric information such as nodes and edges. Nodes and edges are typically components of the SLAM graph. The nodes and edges in the SLAM graph can take various forms; traditionally, the nodes correspond, for example, to the pose (position and orientation) of the mobile device or certain environmental features at specific times, while the edges represent relative measurements between the mobile device and environmental features, or between different poses of the mobile device at different times. Based on such a SLAM graph, a map of the environment in which the mobile device moves can be determined or will be determined. With each new data set containing information about the environment, which information is obtained from or is based on a sensor of the mobile device, the map (or SLAM graph) can be expanded or updated. The aforementioned map or 2D map for the user can also be generated based on the SLAM map or SLAM graph.
Zudem werden, neben den Geräte- und/oder Umgebungsinformationen, auch Bilder bereitgestellt, die mittels einer Kamera des mobilen Geräts von der Umgebung erfasst worden sind. Neben dem Tiefensensor weist das mobile Gerät also zumindest noch eine Kamera auf; dies ist erneut unabhängig von ggf. weiteren Sensoren. Die Kamera bzw. die davon erfassten Bilder können ebenfalls zur Lokalisierung und/oder Navigation des mobilen Geräts verwendet werden, z.B. ebenfalls im Rahmen von SLAM. In diesem Zusammenhang wird dann auch von visuellem SLAM gesprochen.In addition to the device and/or environmental information, images captured by the mobile device's camera are also provided. In addition to the depth sensor, the mobile device therefore has at least one other camera; this is again independent of any other sensors. The camera or the images captured by it can also be used for localization and/or navigation of the mobile device, e.g., also within the framework of SLAM. In this context, this is also referred to as visual SLAM.
Für ein ausgewähltes Bild oder jedes von mehreren ausgewählten Bildern der bereitgestellten Bilder werden dann folgende Schritte vorgenommen. Das Bild wird mit zumindest einem Anteil der Geräte- und/oder Umgebungsinformationen, die mittels des Tiefensensors erfasst worden sind - es handelt sich also um Tiefeninformationen - in räumlicher und/oder zeitlicher Hinsicht synchronisiert, um synchronisierte Tiefeninformationen zu erhalten.The following steps are then performed for a selected image or each of several selected images from the provided images. The image is spatially and/or temporally synchronized with at least a portion of the device and/or environmental information captured by the depth sensor—i.e., depth information—to obtain synchronized depth information.
Bei diesem Anteil der Geräte- und/oder Umgebungsinformationen handelt es sich also z.B. um Daten eines Lidar-Scans. Ein Lidar-Scan entspricht in der Regel einer Menge von Punkten, einer sog. Lidar-Punktwolke. Dabei entspricht jeder Punkt einer Stelle an einem Objekt oder Hindernis in der Umgebung, an dem der Laserstrahl des Lidar-Sensors reflektiert worden ist. Damit gibt jeder Punkt auch eine Entfernung eines Hindernisses zum mobilen Gerät bzw. zum Lidar-Sensor an. Die Punktewolke insgesamt liefert damit auch eine Art Tiefenkarte. Eine Time-Of-Flight-Kamera liefert eine ähnliche Art von Tiefeninformationen.This portion of the device and/or environmental information is, for example, data from a lidar scan. A lidar scan typically corresponds to a set of points, a so-called lidar point cloud. Each point corresponds to a location on an object or obstacle in the environment where the laser beam from the lidar sensor was reflected. Thus, each point also indicates the distance of an obstacle from the mobile device or lidar sensor. The point cloud as a whole also provides a type of depth map. A time-of-flight camera provides a similar type of depth information.
Beim Synchronisieren eines Bildes mit Tiefeninformationen geht insbesondere um die zeitliche Synchronisation (sog. Paarfindung) und anschließend ggf. eine Transformation der Daten, sodass sie in einem gemeinsamen Referenz-Koordinatensystem vorliegen, für die weitere Verarbeitung. In der Regel werden die Bilder der Kamera und die Daten des Tiefensensors nämlich nicht oder nicht immer zum selben Zeitpunkt oder zeitlich synchron erfasst. Da sich das mobile Gerät zwischen zwei solche Zeitpunkten jedoch bewegen kann, ist hier ggf. eine räumliche Synchronisation nötig. Bei den synchronisierten Tiefeninformationen handelt es sich dann also insbesondere um Tiefeninformationen, die in Bezug auf Zeit und Pose des mobilen Geräts dem Bild von der Kamera entsprechen.Synchronizing an image with depth information primarily involves temporal synchronization (so-called pairing) and, if necessary, subsequent transformation of the data so that they are available in a common reference coordinate system for further processing. Typically, the camera images and the depth sensor data are not captured at the same time or not always at the same time or synchronously in time. However, since the mobile device can move between two such times, spatial synchronization may be necessary. The synchronized depth information is therefore, in particular, depth information that corresponds to the camera image in terms of time and pose of the mobile device.
Aus dem Bild wird dann, basierend auf den synchronisierten Tiefeninformationen, ein Bodenbild der Umgebung extrahiert. Hierzu ist anzumerken, dass eine Kamera auf einem mobilen Gerät in der Regel nach vorne (oder ggf. auch nach hinten oder zur Seite) gerichtet ist, was für die Navigation und das Erkennen von Hindernissen in der Regel nötig ist. Unter einem Bodenbild ist nunmehr ein Bild zu verstehen, das zumindest annähernd (nur) die Bodenoberfläche zeigt, nicht jedoch Bereiche der Umgebung, die sich nennenswert über den Boden erheben.Based on the synchronized depth information, a ground image of the surroundings is then extracted from the image. It should be noted that a camera on a mobile device is typically directed forward (or possibly backward or to the side), which is usually necessary for navigation and obstacle detection. A ground image is now defined as an image that at least approximately shows (only) the ground surface, but not areas of the surroundings that are significantly elevated above the ground.
Basierend auf dem einen oder den mehreren Bodenbildern wird dann die Texturkarte der Bodenoberfläche der Umgebung erzeugt, die dann auch bereitgestellt wird, z.B. für den Benutzer.Based on the one or more ground images, the texture map of the ground surface of the environment is then generated, which is then also made available, e.g. to the user.
Im Vergleich zu einer Darstellung ohne Textur ist eine Texturkarte mit z.B. fotorealistischer Ansicht für den Benutzer einfacher zu verstehen und es ist für den Benutzer einfacher, mit ihr zu interagieren. Es erleichtert dem Benutzer z.B. eine manuelle Raumsegmentierung und Zonenannotierung (z.B. No-Go-Zonen etc.). Darüber hinaus bietet die generierte Texturkarte eine Grundlage für automatische Segmentierungsmethoden, die z.B. maschinelle Lerntechniken nutzen könnten, um Go-To- oder No-Go-Zonen aus früheren Benutzereingaben zu lernen.Compared to a non-textured representation, a texture map with, for example, a photorealistic view is easier for the user to understand and interact with. It facilitates, for example, manual spatial segmentation and zone annotation (e.g., no-go zones). Furthermore, the generated texture map provides a basis for automatic segmentation methods, which could, for example, use machine learning techniques to learn go-to or no-go zones from previous user input.
Im Vergleich zu anderen Techniken zum Erzeugen einer Texturkarte bietet die Verwendung des Tiefensensors, also z.B. des Lidar-Scans, eine effektive und effiziente Möglichkeit, zu bestimmen, welche Punkte oder Bereiche der Bodenoberfläche oder der Bodenebene zuordnen sind. Dadurch können effektiv die Grenzen des Bildes erstellt werden, und es wird vermieden, dass verzerrte Objekte in der Texturkarte abgebildet werden. Diese Kombination von Sensoren ermöglicht es, ein konsistenteres Bild der Bodenoberfläche oder Bodenebene zu erstellen, als wenn nur eine Transformation des Kamerabildes aus der Vogelperspektive (Top-Down-View) verwendet würde. Darüber hinaus kann diese Texturkarte online (also z.B. zur Laufzeit des mobilen Geräts oder gar in Echtzeit; denkbar ist davon abgesehen auch eine zumindest teilweise Ausführung des Verfahrens z.B. in einer Cloud oder im Internet) erstellt werden. Außerdem kann, anders als bei Live-Ansichten von oben, die bekannte Position aus dem SLAM-System genutzt werden, um eine konsistente Texturkarte der Bodenoberfläche zu erstellen und diese z.B. zur späteren Referenz zu speichern.Compared to other techniques for generating a texture map, the use of a depth sensor, such as lidar scanning, offers an effective and efficient way to determine which points or areas belong to the ground surface or ground plane. This effectively establishes the boundaries of the image and prevents distorted objects from being depicted in the texture map. This combination of sensors makes it possible to create a more consistent image of the ground surface or ground plane than if only a top-down camera image transformation were used. Furthermore, this texture map can be created online (e.g., during runtime of the mobile device or even in real time; it is also conceivable to execute at least part of the process, e.g., in a cloud or on the internet). Furthermore, unlike live views from above, the known position from the SLAM system can be used to create a consistent texture map of the ground surface and save it, for example, for later reference.
In einer Ausführungsform umfasst das Extrahieren des Bodenbildes folgende Schritte. Es wird ein freier Bereich bestimmt, und zwar basierend auf den synchronisierten Tiefeninformationen. Der freie Bereich deckt dabei zumindest einen Teil der Bodenoberfläche der Umgebung ab. Dies kann z.B. ein gewisser Winkelbereich vor dem mobilen Gerät sein. Dabei erlauben die Tiefeninformationen bzw. die synchronisierten Tiefeninformationen, konkret nur einen Bereich zu wählen, in dem kein Hindernis oder sonstiges Objekt wie z.B. eine Wand liegt. Der freie Bereich liegt dabei also insbesondere in einer Ebene, z.B. einer Ebene parallel zur Bodenoberfläche, insbesondere in einem vertikalen Abstand, der einer Höhe des Tiefensensors über dem Boden entspricht.In one embodiment, extracting the ground image comprises the following steps: A clear area is determined based on the synchronized depth information. The clear area covers at least part of the surrounding ground surface. This can, for example, be a certain angular range in front of the mobile device. The depth information or the synchronized depth information specifically allows only an area to be selected in which there is no obstacle or other object, such as a wall. The clear area therefore lies in particular in a plane, e.g., a plane parallel to the ground surface, in particular at a vertical distance that corresponds to a height of the depth sensor above the ground.
Im konkreten Fall des Lidar-Sensors oder 2D-Lidar-Sensors kann der freie Bereich z.B. als eine Menge an Punkten auf Geraden bestimmt werden, welche Geraden einer Erfassungsrichtung des Lidar-Sensors entsprechen, also Linien, auf denen der Lidar-Sensor Laserstrahlen aussendet. Diese Punkte hier sind dabei nicht mit den Punkten der Lidar-Punktwolke zu verwechseln; vielmehr kann es sich bei den Punkten auf den Geraden um mehrere Punkte je Gerade handeln, die insgesamt dann zumindest in etwa gleichmäßig über den freien Bereich verteilt sind und diesen darstellen.In the specific case of a lidar sensor or 2D lidar sensor, the free area can be defined, for example, as a set of points on straight lines, which correspond to a detection direction of the lidar sensor—i.e., lines along which the lidar sensor emits laser beams. These points should not be confused with the points in the lidar point cloud; rather, the points on the straight lines can be multiple points per straight line, which are then distributed at least approximately evenly across the free area and represent it.
Dieser freie Bereich wird dann in das Bild (der Kamera) projiziert, und es werden Bildinformationen aus dem Bild zu zumindest einem Teil des freien Bereichs zugeordnet. Der freie Bereich mit den zugeordneten Bildinformationen wird dann als Bodenbild für das Erzeugen der Texturkarte verwendet. Auf diese Weise kann besonders effizient die Tiefeninformation genutzt werden, um Bodenbilder für die Texturkarte zu erzeugen oder bestimmen.This free area is then projected into the camera image, and image information from the image is assigned to at least part of the free area. The free area with the assigned image information is then used as the ground image for generating the texture map. In this way, depth information can be used particularly efficiently to generate or determine ground images for the texture map.
Alternativ kann das Extrahieren des Bodenbildes aber auch folgende Schritte umfassen. Zunächst wird eine perspektivische Transformation des Bildes (der Kamera) durchgeführt, um ein transformiertes Bild zu erhalten. Es wird zudem, basierend auf den synchronisierten Tiefeninformationen, ein freier Bereich bestimmt, welcher freie Bereich zumindest einen Teil der Bodenoberfläche der Umgebung abdeckt. Dies kann grundsätzlich wie vorstehend beschrieben erfolgen. Ein dem freien Bereich entsprechender Teil des transformierten Bildes wird dann als Bodenbild verwendet.Alternatively, extracting the ground image can also include the following steps. First, a perspective transformation of the image (from the camera) is performed to obtain a transformed image. Based on the synchronized depth information, a clear area is determined, which clear area covers at least part of the surrounding ground surface. This can generally be done as described above. A portion of the transformed image corresponding to the clear area is then used as the ground image.
In einer Ausführungsform umfasst das Erzeugen der Texturkarte das Bestimmen eines oder mehrerer Bildbereiche der Texturkarte, für welche Bildbereiche Bildinformationen von mehreren Bodenbildern vorliegen. Bei solchen Bildereichen kann es sich z.B. um einzelne Bildpunkte und/oder oder Gruppen von Bildpunkten (sog. Pixel) handeln. Für den einen oder zumindest einen, vorzugsweise alle, der mehreren Bildbereiche, wird dann ein Wert für zumindest eines Teils der Bildinformationen basierend auf den mehreren Bodenbildern bestimmt. Dieser Wert wird dann für die Texturkarte verwendet.In one embodiment, generating the texture map comprises determining one or more image regions of the texture map for which image regions contain image information from multiple ground images. Such image regions can be, for example, individual pixels and/or groups of pixels. For one or at least one, preferably all, of the multiple image regions, a value for at least a portion of the image information is then determined based on the multiple ground images. This value is then used for the texture map.
Hierbei kann von einer sog. Multi-View-Kombination gesprochen werden. Ein Ziel der Multi-View-Kombination besteht insbesondere darin, aus Einzelbildern (den mehreren Bodenbildern) ein konsistentes globales Bild der Bodenoberfläche zu erstellen. Jedes Bodenbild ist einer Pose des mobilen Geräts in der globalen Karte zugeordnet. Um die einzelnen Bodenbilder zu kombinieren, kann z.B. eine Mittelung auf einem globalen Pixelraster durchgeführt werden. Für jedes Pixel in diesem Raster können alle Pixel von Bodenbildern gesammelt oder bereitgestellt werden, die in dieses Pixel des Rasters fallen. Anschließend kann z.B. der Farbwert all dieser Pixel gemittelt werden, wobei eine Gammakorrektur berücksichtigt werden kann, um eine natürliche Mischung der beobachteten Farben zu erhalten. Dabei können einzelne Pixel unterschiedlich gewichtet werden, je nachdem, wie weit sie bei der Erfassung durch die Kamera vom mobilen Gerät entfernt waren. Pixel bzw. Bildinformationen, die weniger weit von der Kamera entfernte Bereiche abbilden, weisen nämlich in der Regel weniger Verzerrungen auf, die durch die umgekehrte perspektivische Abbildung verursacht werden, und werden auch weniger durch Rauschen in der Posenschätzung beeinflusst. Auf diese Weise kann also ein (finaler) Wert (z.B. Farbwert) als eine Art gemittelter oder anderweitig abgeleiteter Wert gefunden werden, der für die Texturkarte verwendet wird.This can be referred to as a so-called multi-view combination. One goal of multi-view combination is to create a consistent global image of the ground surface from individual images (the multiple ground images). Each ground image is assigned to a pose of the mobile device in the global map. To combine the individual ground images, for example, an averaging can be performed on a global pixel grid. For each pixel in this grid, all pixels of ground images can be collected or made available. that fall within this pixel of the grid. The color value of all these pixels can then be averaged, for example, taking gamma correction into account in order to obtain a natural mix of the observed colors. Individual pixels can be weighted differently depending on how far they were from the mobile device when captured by the camera. Pixels or image information that depict areas less distant from the camera generally exhibit less distortion caused by inverted perspective mapping and are also less affected by noise in the pose estimation. In this way, a (final) value (e.g. color value) can be found as a kind of averaged or otherwise derived value, which is used for the texture map.
Ein anderer Ansatz zur Bestimmung eines solchen Werts, z.B. mit Mittelung der verschiedenen Farben, ist, die Farben zu mitteln, z.B. im sog. LAB-Farbraum. Es könnte z.B. auch nur die „beste“ Farbe in jedem Pixel behalten bzw. verwendet werden, nachdem ein Gütekriterium (für die Wahl eines Wertes eines der mehreren Pixel als finalen Wert) definiert und angewendet worden ist (z.B. Entfernung von der Kamera bei der Beobachtung oder mäßige Helligkeit).Another approach to determining such a value, e.g., by averaging the different colors, is to average the colors, e.g., in the so-called LAB color space. For example, only the "best" color in each pixel could be retained or used after a quality criterion (for selecting a value from one of the several pixels as the final value) has been defined and applied (e.g., distance from the camera during observation or moderate brightness).
In einer Ausführungsform werden das eine oder die mehreren ausgewählten Bilder gemäß wenigstens eines Kriteriums aus den bereitgestellten Bildern ausgewählt. Somit müssen nicht alle Bilder verwendet werden, sondern es können gezielt Bilder ausgewählt bzw. weggelassen werden, um das Verfahren schneller und effizienter zu machen, oder aber auch das Ergebnis an sich zu verbessern. In one embodiment, the one or more selected images are selected from the provided images according to at least one criterion. Thus, not all images need to be used; rather, specific images can be selected or omitted to make the method faster and more efficient, or even to improve the result itself.
Dabei kommen die folgenden Kriterien für ein jeweiliges Bild in Betracht. Wenn sich eine Position des mobilen Geräts beim Erfassen des Bildes gegenüber dem zuletzt erfassten Bild um weniger als eine vorgegebene Strecke geändert hat. Oder wenn eine Orientierung des mobilen Geräts sich beim Erfassen des Bildes gegenüber dem zuletzt erfassten Bild um weniger als einen vorgegebenen Winkel geändert hat. Position und Orientierung können dabei auch als Pose bezeichnet werden. So werden also z.B. nur Bilder einbezogen, bei denen das mobile Gerät eine begrenzte Anzahl von Translations- und Winkelbewegungen ausführt. Auf diese Weise können Fehler begrenzt werden, die durch unzureichende extrinsische Kalibrierung und Bewegungsunschärfe entstehen. Denkbar ist auch, dass sich eine Position bzw. Orientierung um mehr als eine (dann andere) vorgegebene Strecke bzw. vorgegebenen Winkel geändert hat.The following criteria are taken into account for each image: If the position of the mobile device has changed by less than a specified distance compared to the last captured image when the image was captured. Or if the orientation of the mobile device has changed by less than a specified angle compared to the last captured image when the image was captured. Position and orientation can also be referred to as pose. For example, only images in which the mobile device performs a limited number of translational and angular movements are included. In this way, errors caused by insufficient extrinsic calibration and motion blur can be limited. It is also conceivable that a position or orientation has changed by more than a (then different) specified distance or specified angle.
Es kann auch in Betracht gezogen werden, ob eine Orientierung des mobilen Geräts beim Erfassen des Bildes in einem vorgegebenen Bereich liegt, oder ob eine (ggf. globale) Pose des mobilen Geräts beim Erfassen des Bildes bei keinem einer vorbestimmten Anzahl an zuletzt erfassten Bildern vorlag. Damit werden z.B. nur Bilder berücksichtigt, bei denen das mobile Gerät bzw. dessen Kamera in eine bestimmte Richtung gerichtet ist, um die Auswirkungen von Spiegelreflexionen von Lichtquellen auf das Endergebnis zu begrenzen. In der Praxis ist dies insbesondere bei mobilen Geräten möglich, die zur Erfüllung ihrer Aufgaben Abdeckungsfahrten durchführen (z.B. Reinigungs-, Staubsauger- und Rasenmähroboter). Es kann so auch festgestellt werden, wann eine Pose bereits besucht worden ist, und entschieden werden, ob dort ein neues Bild verwendet werden soll oder das letzte beibehalten werden soll.It can also be considered whether the orientation of the mobile device lies within a predefined range when the image is captured, or whether a (possibly global) pose of the mobile device when the image is captured was not present in any of a predetermined number of recently captured images. This means, for example, that only images in which the mobile device or its camera is pointed in a specific direction are taken into account in order to limit the effects of specular reflections from light sources on the final result. In practice, this is particularly possible for mobile devices that perform coverage movements to perform their tasks (e.g., cleaning robots, vacuum cleaners, and lawnmowers). It can also be determined when a pose has already been visited and a decision can be made whether a new image should be used there or the last one should be retained.
Es kommt auch in Betracht, ob einer oder mehrere Bildparameter vorgegebenen Anforderungen entsprechen. So kann also die Bildqualität berücksichtigt werden Einige grundlegende Parameter des Bildes selbst können so z.B. bewertet werden, um Bilder auszuschließen, die höchstwahrscheinlich extrem unter- oder überbelichtet sind und somit keine nützlichen Informationen in der Region von Interesse liefern.It is also considered whether one or more image parameters meet specified requirements. This allows image quality to be taken into account. For example, some basic parameters of the image itself can be evaluated to exclude images that are most likely extremely under- or overexposed and thus do not provide useful information in the region of interest.
Es kommt auch in Betracht, ob ein Abstand eines Hindernisses in Erfassungsrichtung der Kamera größer als ein vorgegebener Wert ist, wobei der Abstand insbesondere basierend auf den mittels des Tiefensensors erfassten Geräte- und/oder Umgebungsinformationen bestimmt worden ist. So kann z.B. entschieden werden, ob ein Bild verwendet oder nicht verwendet werden soll, je nachdem, wie viel freier Raum vor dem mobilen Gerät mit dem Tiefensensor erkannt werden kann. Mit anderen Worten sollen hierbei keine Bilder verwendet werden, bei denen das mobile Gerät nahe an Objekten ist und daher nur wenig vom Boden sichtbar ist.It is also considered whether the distance of an obstacle in the camera's detection direction is greater than a predetermined value, with the distance being determined, in particular, based on the device and/or environmental information acquired by the depth sensor. For example, a decision can be made whether or not to use an image depending on how much free space in front of the mobile device can be detected with the depth sensor. In other words, images should not be used in which the mobile device is close to objects and therefore only a small part of the ground is visible.
In einer Ausführungsform wird zudem, basierend auf der Texturkarte, eine segmentierte Karte des Untergrunds der Umgebung erzeugt. Damit kann z.B. die Bodentextur durch ein CNN (Convolutional Neural Network) oder einen anderen Maschinenlernalgorithmus nachbearbeitet werden, um verschiedene Typen an Bodenbelägen abzuleiten. Dies kann z.B. bei der richtigen Segmentierung von Räumen helfen, denn oft haben verschiedene Räume unterschiedliche Bodenbeläge; zudem können damit z.B. Vorschläge für die Reinigung oder für Reinigungsarten auf der Grundlage des Bodentyps gemacht werden (z.B.: kein Wischen auf Teppich).In one embodiment, a segmented map of the environment's subsurface is also generated based on the texture map. This allows, for example, the floor texture to be post-processed using a CNN (Convolutional Neural Network) or another machine learning algorithm to derive different types of floor coverings. This can, for example, help with the correct segmentation of rooms, as different rooms often have different floor coverings; it can also be used to make suggestions for cleaning or cleaning methods based on the floor type (e.g., no mopping on carpet).
In einer Ausführungsform kann auch eine aktive Erfassung berücksichtigt werden. Hierbei kann das mobile Gerät direkt angewiesen werden, bestimmte Orte oder Positionen anzufahren, um neue Informationen oder Bilder für die Texturkarte zu erfassen.In one embodiment, active detection may also be considered. The mobile device can be directly instructed to move to specific locations or positions in order to capture new information or images for the texture map.
Anstelle eines Lidar-Sensors können, wie erwähnt, auch andere Tiefensensoren verwenden werden, z.B. Stereokameras, Tiefenkameras (basierend auf Flugzeit oder strukturiertem Licht) sowie Ultraschallsensoren.As mentioned, other depth sensors can be used instead of a lidar sensor, e.g. stereo cameras, depth cameras (based on time-of-flight or structured light) and ultrasonic sensors.
In einer Ausführungsform kann sog. Stitching verwendet werde. Die erwähnte Multi-View-Kombination kann z.B. durch den Einsatz von Stitching-Methoden verbessert werden, wie sie z. B. für das Stitching von Panoramabildern verwendet werden. Dadurch kann z.B. ein überzeugenderes und konsistenteres Bild des Bodens bzw. der Bodenoberfläche erhalten werden.In one embodiment, so-called stitching can be used. The aforementioned multi-view combination can be improved, for example, by using stitching methods such as those used for stitching panoramic images. This can, for example, result in a more convincing and consistent image of the ground or ground surface.
In einer Ausführungsform kann eine Modellierung von Reflektionen erfolgen. Die erwähnte Multi-View-Kombination kann z.B. auch so konzipiert werden, dass Reflexionen auf dem Boden erfasst werden. Eine Möglichkeit ist z.B., mehrere globale Pixelraster zu erstellen, von denen jedes mit Ansichten gefüllt wird, die aus verschiedenen globalen Richtungen bzw. Orientierungen des mobilen Geräts aufgenommen wurden. Ein Raster würde beispielsweise nur mit Einzelbildansichten gefüllt werden, in denen der Roboter in eine Richtung zwischen 0° und 30° zeigt, ein anderes Raster mit Ansichten zwischen 30° und 60° und so weiter. Dies würde zu mehreren Bodenabbildungen führen, bei denen die Spiegelungen in jeder Abbildung konsistent sind. Diese Abbildungen könnten dann in einer Benutzeroberfläche verwendet werden und eine andere Karte anzeigen, je nachdem, in welche Richtung der Benutzer die Darstellung in einer App dreht, was zu einer realistischeren und immersiveren Benutzererfahrung führt. Eine andere Möglichkeit, dies zu erreichen, wäre das Trainieren eines sog. NeRF-basierten Modells auf die einzelne Szene, das auf den 2D-Anwendungsfall beschränkt ist und dadurch einfacher ist (NeRF steht für Neural Radiance Fields und ist ein Verfahren zur Synthese neuartiger Ansichten komplexer Szenen).In one embodiment, reflection modeling can be performed. The aforementioned multi-view combination can, for example, also be designed to capture reflections on the floor. One possibility is, for example, to create multiple global pixel grids, each filled with views captured from different global directions or orientations of the mobile device. For example, one grid would be filled only with single-image views in which the robot is pointing in a direction between 0° and 30°, another grid with views between 30° and 60°, and so on. This would result in multiple floor maps where the reflections are consistent in each map. These maps could then be used in a user interface, displaying a different map depending on the direction the user rotates the view in an app, resulting in a more realistic and immersive user experience. Another way to achieve this would be to train a so-called NeRF-based model on the individual scene, which is limited to the 2D use case and is therefore simpler (NeRF stands for Neural Radiance Fields and is a method for synthesizing novel views of complex scenes).
In einer Ausführungsform kann eine panoptische Abbildung erfolgen. Zusätzlich zur direkten Abbildung (Mapping) von Farbdaten aus den Bildern, kann z.B. auch eine semantische oder panoptische Segmentierung der Farbbilder durchgeführt werden und die Ergebnisse dieser Methoden können dann zugeordnet werden. Eine panoptische Segmentierung beschreibt in diesem Zusammenhang die Zuordnung eines jeden Bildpunkts zu einer eindeutigen Objektklasse und ggf. einer Unterscheidung verschiedener Instanzen einer Objektklasse. Dies würde zu einer kategorialen Zuordnung des Bodens führen, die für den Nutzer noch einfacher zu interpretieren ist, indem ihm einfach gezeigt wird, in welchen Bereichen z.B. Teppiche, Fliesen, Holzböden und so weiter vorhanden sind. Damit dies funktioniert, kann ein anderer Ansatz zur Mittelwertbildung als der vorstehend näher erläuterte diskutierte verwendet werden, ggf. unter Berücksichtigung von Konfidenzen, die von dem für die Segmentierung verwendeten neuronalen Netz vorhergesagt werden.In one embodiment, panoptic mapping can be performed. In addition to directly mapping color data from the images, semantic or panoptic segmentation of the color images can also be performed, and the results of these methods can then be assigned. Panoptic segmentation in this context describes the assignment of each pixel to a unique object class and, if necessary, a differentiation between different instances of an object class. This would lead to a categorical assignment of the floor, which is even easier for the user to interpret by simply showing them in which areas, for example, carpets, tiles, wooden floors, and so on are present. For this to work, a different approach to averaging than the one discussed in more detail above can be used, possibly taking into account confidences predicted by the neural network used for segmentation.
Bevorzugt werden weiterhin Lokalisierungs- und/oder Navigationsinformationen für das mobile Gerät bestimmt, und zwar basierend auf den Geräte- und/oder Umgebungsinformationen und basierend auf SLAM, wie vorstehend schon erwähnt. Das Erzeugen der Texturkarte kann dann weiterhin basierend auf den Lokalisierungs- und/oder Navigationsinformationen erfolgten.Preferably, localization and/or navigation information for the mobile device is further determined based on the device and/or environment information and based on SLAM, as already mentioned above. The texture map can then be generated based on the localization and/or navigation information.
Ein erfindungsgemäßes System zur Datenverarbeitung umfasst Mittel zur Ausführung des erfindungsgemäßen Verfahrens bzw. von dessen Verfahrensschritten. Es kann sich bei dem System um einen Computer oder Server handeln, z.B. in einer sog. Cloud oder Cloud-Umgebung. Dort können die Bilder und Umgebungs- und/oder Geräteinformationen von dem mobilen Gerät erhalten und die Texturkarte wieder an das mobile Gerät übermittelt werden (z.B. über eine drahtlose Datenverbindung). Denkbar ist aber auch, dass ein solches System zur Datenverarbeitung ein Computer oder ein Steuergerät in einem solchen mobilen Gerät ist. Ebenso ist denkbar, dass manche Schritte des Verfahrens auf dem Computer oder Server im Sinne der Cloud-Umgebung durchgeführt werden, andere Schritte hingegen in dem Computer oder Steuergerät in dem mobilen GerätA data processing system according to the invention comprises means for executing the method according to the invention or its method steps. The system can be a computer or server, e.g., in a so-called cloud or cloud environment. There, the images and environmental and/or device information can be received from the mobile device, and the texture map can be transmitted back to the mobile device (e.g., via a wireless data connection). However, it is also conceivable that such a data processing system is a computer or a control unit in such a mobile device. It is also conceivable that some steps of the method are carried out on the computer or server in the cloud environment, while other steps are carried out on the computer or control unit in the mobile device.
Die Erfindung betrifft auch ein mobiles Gerät, das einen Tiefensensor und eine Kamera aufweist, sowie das erwähnte System zur Datenverarbeitung (dann im Sinne eines Computer oder Steuergerät in dem mobilen Gerät). Bevorzugt weist das mobile Gerät auch eine Steuer- und/oder Regeleinheit und eine Antriebseinheit zum Bewegen des mobilen Geräts auf.The invention also relates to a mobile device having a depth sensor and a camera, as well as the aforementioned data processing system (then in the sense of a computer or control unit in the mobile device). Preferably, the mobile device also has a control and/or regulating unit and a drive unit for moving the mobile device.
Das mobile Gerät ist vorzugsweise als sich zumindest teilweise automatisiert bewegendes Fahrzeug, insbesondere als Personenbeförderungsfahrzeug oder als Güterbeförderungsfahrzeug, und/oder als Roboter, insbesondere als Haushaltsroboter, z.B. Saug- und/oder Wischroboter, Boden- oder Straßenreinigungsgerät oder Rasenmähroboter, und/oder als Drohne ausgebildet, wie vorstehend auch schon erläutert.The mobile device is preferably designed as an at least partially automated vehicle, in particular as a passenger transport vehicle or as a goods transport vehicle, and/or as a robot, in particular as a household robot, e.g. a vacuum and/or mop robot, a floor or street cleaning device or a lawnmower robot, and/or as a drone, as already explained above.
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. Schließlich ist ein maschinenlesbares Speichermedium vorgesehen mit einem darauf gespeicherten Computerprogramm wie oben beschrieben. Geeignete Speichermedien bzw. 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. Ein solcher Download kann dabei drahtgebunden bzw. kabelgebunden oder drahtlos (z.B. über ein WLAN-Netz, eine 3G-, 4G-, 5G- oder 6G-Verbindung, etc.) erfolgen.The implementation of a method according to the invention in the form of a computer program or computer program product with pro Program code for carrying out all method steps is advantageous because it results in particularly low costs, particularly if an executing control unit is also used for other tasks and is therefore already present. Finally, a machine-readable storage medium is provided with a computer program stored thereon as described above. Suitable storage media or data carriers for providing the computer program are, in particular, magnetic, optical and electrical memories, such as hard disks, flash memories, EEPROMs, DVDs, etc. Downloading a program via computer networks (Internet, intranet, etc.) is also possible. Such a download can be wired or cable-based or wireless (e.g. via a WLAN network, a 3G, 4G, 5G or 6G connection, etc.).
Weitere Vorteile und Ausgestaltungen der Erfindung ergeben sich aus der Beschreibung und der beiliegenden Zeichnung.Further advantages and embodiments of the invention will become apparent from the description and the accompanying drawings.
Die Erfindung ist anhand eines Ausführungsbeispiels in der Zeichnung schematisch dargestellt und wird im Folgenden unter Bezugnahme auf die Zeichnung beschrieben.The invention is illustrated schematically in the drawing using an embodiment and is described below with reference to the drawing.
Kurze Beschreibung der ZeichnungenShort description of the drawings
-
1 zeigt schematisch ein mobiles Gerät in einer Umgebung zur Erläuterung der Erfindung in einer bevorzugten Ausführungsform.1 schematically shows a mobile device in an environment for explaining the invention in a preferred embodiment. -
2 zeigt schematisch einen Ablauf eines erfindungsgemäßen Verfahrens in einer bevorzugten Ausführungsform.2 shows schematically a sequence of a method according to the invention in a preferred embodiment. -
3 zeigt schematisch ein mobiles Gerät zur Erläuterung der Erfindung.3 shows schematically a mobile device to explain the invention.
Ausführungsform(en) der ErfindungEmbodiment(s) of the invention
In
Weiterhin weist der Staubsaugerroboter 100 beispielhaft einen als 2D-Lidar-Sensor ausgebildeten Sensor 106 mit einem Erfassungsfeld auf. Zur besseren Veranschaulichung ist das Erfassungsfeld hier relativ klein gewählt; in der Praxis kann das Blickfeld aber auch bis zu 360° betragen (z.B. aber mindestens 180° oder mindestens 270°). Mittels des 2D-Lidar-Sensors 106 können Abstände zwischen dem mobilen Gerät 100 (bzw. dem Sensor 106) und Objekten in der Umgebung erfasst oder bestimmt werden. Der 2D-Lidar-Sensor 106 ist dabei insbesondere derart angeordnet, dass er die Abstände von den Objekten in einer Ebene parallel zur Bodenoberfläche 122 misst.Furthermore, the
Bei dem 2D-Lidar-Sensor 106 handelt es sich also um ein Beispiel für einen Tiefensensor mittels dessen Tiefeninformationen als z.B. Teil von Geräte- und/oder Umgebungsinformationen erfasst werden können.The
Weiterhin weist der Staubsaugerroboter 100 eine Kamera 110 auf, mittels welcher Bilder der Umgebung 120 erfasst werden können. Dabei ist die Kamera insbesondere nach vorne, d.h. in regulärer Fahrrichtung, gerichtet und kann so Bilder von der Umgebung erfassen. Die Bodenoberfläche 122 ist in Bildern der Kamera also nur am Rande und verzerrt enthalten.Furthermore, the
Weiterhin weist der Staubsaugerroboter 100 ein System 108 zur Datenverarbeitung, z.B. ein Steuergerät, auf, mittels dessen z.B. über eine angedeutete Funkverbindung Daten mit einem übergeordneten System 150 zur Datenverarbeitung ausgetauscht werden können. In dem System 150 (z.B. ein Server, es kann auch für eine sog. Cloud stehen) können z.B. Navigationsinformationen bestimmt werden, die dann auf das System 108 im Staubsaugerroboter 100 übermittelt werden, gemäß welcher dieser dann betrieben werden soll. Ebenso kann aber vorgesehen sein, dass Navigationsinformationen im System 108 selbst bestimmt werden oder anderweitig dort erhalt werden. Anstelle von Navigationsinformationen kann das System 108 aber z.B. auch Steuerinformationen erhalten, die anhand ei von Navigationsinformationen bestimmt worden sind, und gemäß welcher die Steuer- oder Regeleinheit 102 über die Antriebseinheit 104 den Staubsaugerroboter 100 bewegen kann. Dabei kann sich der Staubsaugerroboter 100 gemäß eines Bewegungspfads oder einer Trajektorie 130 bewegen.Furthermore, the
Weiterhin sind in der Umgebung 120 beispielhaft zwei Hindernisse 124, 128 gezeigt, z.B. Möbel. Zudem ist beispielhaft ein Teppich 126 gezeigt, auf dem sich der Staubsaugerroboter 100 z.B. an sich bewegen kann. Die Beschaffenheit oder Textur der Oberfläche des Teppichs 126 - allgemein auch eine Bodenoberfläche - ist dabei jedoch anders als in anderen Bereichen der Bodenoberfläche 122, in der z.B. ein Holzboden vorhanden ist.Furthermore, two
Weiterhin ist ein mobiles Eingabegerät 140, z.B. ein Smartphone gezeigt, d.h. z.B. mit dem Staubsaugerroboter 100 bzw. dessen System 108 sowie dem Rechensystem 150 datenübertagend verbunden sein kann, z.B. über eine drahtlose Kommunikationsverbindung. Auf dem mobilen Eingabegerät 140 kann z.B. eine Anwendung (sog. App) vorgesehen sein, mittels welcher der Staubsaugerroboter 100 gesteuert werden kann, z.B. kann dessen Bewegung gestartet und gestoppt werden; die Bewegung des Staubsaugerroboters 100 selbst erfolgt hingegen in der Regel automatisiert bzw. autonom, und zwar insbesondere unter Verwendung von SLAM wie eingangs erläutert.Furthermore, a
Daneben kann auf dem mobilen Eingabegerät 140 bzw. der Anwendung aber die Möglichkeit vorgesehen sein, eine Karte der Umgebung 120 anzuzeigen, auf der ein Benutzer dann z.B. bestimmte Bereiche als Go-To- oder No-Go-Zonen oder anderweitig definiert.In addition, the
Im Rahmen der vorliegenden Erfindung wird dabei insbesondere eine Möglichkeit zum Erzeugen einer Texturkarte als solche Karte vorgeschlagen. Eine Texturkarte 142 ist in
In einem Schritt 200 werden hierbei Geräte- und/oder Umgebungsinformationen bereitgestellt, die mittels wenigstens eines Sensors des mobilen Geräts von dem mobilen Gerät und/oder der Umgebung erfasst worden sind. Dabei umfassen die Geräte- und/oder Umgebungsinformationen z.B. Informationen 202 von einer IMU und Informationen 204 von einer Odometrie als Sensoren des mobilen Geräts. Zudem umfassen die Geräte- und/oder Umgebungsinformationen aber Tiefeninformationen 206 die z.B. von einem Lidar-Sensor des mobilen Geräts, wie in
In einem Schritt 208 werden Bilder 210 bereitgestellt, die mittels einer Kamera des mobilen Geräts von der Umgebung erfasst worden sind, z.B. der in
Die Geräte- und/oder Umgebungsinformationen sowie die Bilder werden dabei in der Regel wiederholt erfasst und bereitgestellt, in der Regel jedoch nicht zeitlich oder räumlich synchron.The device and/or environmental information as well as the images are usually recorded and provided repeatedly, but usually not synchronously in time or space.
In einem Schritt 212 wird dann ein ausgewähltes der Bilder 210 mit den Tiefeninformationen 206 räumlicher und/oder zeitlicher Hinsicht synchronisiert, um synchronisierte Tiefeninformationen 214 zu erhalten. Dabei wird insbesondere eine zeitliche Synchronisation vorgenommen, anschließend ggf. eine Transformation der Daten, sodass sie in einem gemeinsamen Referenz-Koordinatensystem vorliegen, für die weitere Verarbeitung.In a
In einem Schritt 216 wird dann, aus dem Bild, basierend auf den synchronisierten Tiefeninformationen 214, ein Bodenbild 218 der Umgebung extrahiert.In a
Diese Schritte 212, 216 können für alle Bilder 210 erfolgen oder aber nur für ausgewählte dieser Bilder 210. Wie vorstehend schon ausführlicher erläutert, kommen verschiedene Kriterien 220 in Betracht, welche Bilder hierfür ausgewählt werden können. Die so erhaltenen Bodenbilder 218 können dann z.B., Schritt 222, zwischengespeichert werden.These
Neben den Schritten des Synchronisierens der Bilder und des Extrahierens der Bodenbilder können auch ganz regulär für den Betrieb des mobilen Geräts auch Lokalisierungs- und/oder Navigationsinformationen 224 erzeugt werden, z.B. im Rahmen des erwähnten SLAM. Hierzu werden die Geräte- und/oder Umgebungsinformationen, insbesondere die Informationen 202 von der IMU, die Informationen 204 von der Odometrie sowie die Tiefeninformationen 206 verwendet. Diese Informationen 202, 204, 206 werden, Schritt 226, im Rahmen einer z.B. kontinuierlichen oder quasi-kontinuierlichen Trajektorienplanung verarbeitet, basierend worauf, ggf. mit Zwischenschritten, in Schritt 228, eine Optimierung einer Pose mittels eines SLAM-Graphen erfolgen.In addition to the steps of synchronizing the images and extracting the ground images, localization and/or
Der Schritt 226 kann auch hier für alle erhaltenen Geräte- und/oder Umgebungsinformationen erfolgen, die Optimierung in Schritt 228 hingegen z.B. nur für sog. Keyframes. Basierend auf der Trajektorienplanung in Schritt 226 können dabei insbesondere auch die Kriterien 220 bestimmt werden.Here, too,
Basierend auf den ggf. zwischengespeicherten Bodenbildern 218 wird dann, Schritt 230, eine Texturkarte 232 erzeugt. Hierzu wird insbesondere, Schritt 234, die schon erwähnte Multi-View-Kombination verwendet. Dabei können insbesondere Bildbereiche der Texturkarte, für die Bildinformationen von mehreren Bodenbildern vorliegen, bestimmt werden; zudem können für diese Bildbereiche dann Werte basierend auf den Bodenbildern bestimmt werden.Based on the possibly cached
Wie schon erwähnt, ist ein Ziel der Multi-View-Kombination insbesondere, aus den Bodenbildern ein konsistentes globales Bild der Bodenoberfläche zu erstellen. Jedes Bodenbild ist einer Pose des mobilen Geräts in der globalen Karte zugeordnet. Dazu kann z.B. die schon erwähnte Mittelung auf einem globalen Pixelraster durchgeführt werden, ebenso aber eine andere Art der Multi-View-Kombination, wie ebenfalls schon ausführlich erläutert. Dazu kann insbesondere auf die Ergebnisse aus der Optimierung in Schritt 228 zurückgegriffen werden.As already mentioned, one goal of multi-view combination is, in particular, to create a consistent global image of the ground surface from the ground images. Each ground image is assigned to a pose of the mobile device in the global map. For this purpose, the aforementioned averaging can be performed on a global pixel grid, as well as another type of multi-view combination, as already explained in detail. For this purpose, the results from the optimization in
Die Texturkarte 232, die z.B. der in
An dieser Stelle sei erwähnt, dass eine solche Texturkarte grundsätzlich von verschieden großen und umfangreichen Umgebungen erstellet werden kann, nicht nur von einem einzelnen Raum. So kann die Texturkarte z.B. über eine Wohnung mit einer Vielzahl an Räumen mit teils jeweils mehreren verschiedenen Typen von Bodenoberflächen erstellt werden. Ebenso kann eine Texturkarte aber z.B. aber auch von einer Fabrikhalle oder dergleichen als Umgebung erstellet werden, grundsätzlich auch von Außenumgebungen. Außerdem müssen die verschiedenen Typen von Bodenoberflächen nicht notwendigerweise unterschiedliche Rauigkeiten wie z.B. bei der Unterscheidung Teppich und Holzboden aufweisen, auch z.B. verschiedene Farben des Bodens können als verschiedenen Typen von Bodenoberflächen unterschieden werden.It should be noted here that such a texture map can generally be created for environments of varying sizes and complexity, not just for a single room. For example, the texture map can be created for an apartment with numerous rooms, each with several different types of floor surfaces. Likewise, a texture map can also be created for a factory hall or similar environment, and in principle, for outdoor environments as well. Furthermore, the different types of floor surfaces do not necessarily have to have different roughnesses, such as carpet and wooden floors; different floor colors can also be distinguished as different types of floor surfaces.
In
Mit 360 sind hierbei Lidar- bzw. Laserstrahlen bezeichnet, die von dem Lidar-Sensor ausgesendet werden. Wenn mittels des Lidar-Sensors die Umgebung erfasst wird, werden solche Laserstrahlen 360 typsicherweise jeweils mit einem gewissen Winkelabstand Δθ zueinander ausgesendet, dieser Winkelabstand kann, muss aber nicht, zwischen jeweils zwei Laserstrahlen 360 identisch sein.360 refers to the lidar or laser beams emitted by the lidar sensor. When the environment is detected using the lidar sensor, such 360 laser beams are typically emitted at a certain angular distance Δθ from each other. This angular distance can, but does not have to, be identical between any two 360 laser beams.
Die Laserstrahlen 360 werden dann an einem Hindernis reflektiert (sofern ein Hindernis hinreichend nahe ist) und die reflektierten Strahlen werden erfasst. Auf diese Weise kann entlang der Laserstrahlen jeweils ein Punkt, hier mit 362 bezeichnet, erhalten werden, der auf einer Oberfläche des Hindernisses liegt und damit eine Entfernung des Hindernisses angibt. Die Menge der Punkte 362 kann dabei auch als Lidar-Punktwolke bezeichnet werden.The
Das Extrahieren des Bodenbildes kann, wie erwähnt, das Bestimmen eines freien Bereichs umfassen, und zwar basierend auf den synchronisierten Tiefeninformationen, also z.B. einer mit einem Bild synchronisierte Lidar-Punktewolke. Dieser freie Bereich deckt dabei zumindest einen Teil der Bodenoberfläche der Umgebung ab. Insbesondere kann der freie Bereich dabei als eine Menge an Punkten auf Geraden bestimmt werden, welche Geraden einer Erfassungsrichtung des Lidar-Sensors entsprechen.As mentioned, extracting the ground image can include determining a clear area based on the synchronized depth information, e.g., a lidar point cloud synchronized with an image. This clear area covers at least part of the surrounding ground surface. In particular, the clear area can be defined as a set of points on straight lines, which correspond to a detection direction of the lidar sensor.
Solche Punkte sind in
Allgemein geht es dabei darum, „wie weit“ entlang einer gedachten Linie Punkte dem freien Bereich zugeordnet werden können oder sollen. Die Punkte 364 müssen nicht zwangsweise auf Geraden gesampled werden, die Δθ auseinanderliegen, sondern könnten auch dichter gesampled werden (z.B. 1/2 Δθ) Dann gäbe es nicht für jeden Strahl einen Punkt 362, der diesen begrenzt. In diesem Fall kann der freie Bereich z.B. über eine lineare Interpolation zwischen zwei Punkten 362 begrenzt sein oder es wird der Punkt gewählt, der einen geringeren Radius aufweist (um z.B. auf Nummer sicher zu gehen).In general, this is about "how far" along an imaginary line points can or should be assigned to the free area. The
Der maximale Radius rmax ist dabei eine zuvor vorgegebene Konstante, die beschreibt, dass keinesfalls Punkte in Betracht gezogen werden sollen, die weiter entfernt liegen als rmax (z.B., weil davon ausgegangen wird, dass das Bild dann zu sehr verzerrt wäre oder weil die Messung des Tiefensensors bei großer Entfernung stark verrauscht ist, etc).The maximum radius r max is a previously specified constant that states that points further away than r max should not be considered under any circumstances (e.g. because it is assumed that the image would then be too distorted or because the depth sensor measurement is very noisy at great distances, etc.).
Analog zu rmax ist auch rmin ein zuvor festgelegter Parameter, der den Abtastbereich begrenzt, z.B. um im Bild Bereiche auszusparen, auf denen Teile des Roboters zu sehen sind oder wo die Tiefenmessungen des Lidars ungenau sind (Lidars haben üblicherweise einen Mindestabstand, ab denen sie verlässliche Tiefenwerte liefern).Analogous to r max , r min is also a previously defined parameter that limits the sampling range, e.g. to exclude areas in the image where parts of the robot are visible or where the depth measurements of the lidar are inaccurate (lidars usually have a minimum distance from which they provide reliable depth values).
Auf diese Weise kann durch die Menge der Punkte 364 ein freier Bereich 366 dargestellt werden, insbesondere in einem Koordinatensystem, welcher freie Bereich 366 - jedenfalls auf Höhe des Lidar-Sensors - frei von Hindernissen ist. In dem freien Bereich 366 wird damit also ein Teil der Bodenoberfläche liegen und auch im zugehörigen Bild der Kamera sichtbar sein.In this way, the set of
Dieser freie Bereich 366 bzw. diese Menge an Punkten 364 kann dann in das Bild projiziert werden, wozu z.B. extrinsische und/oder intrinsische Kameraparameter verwendet werden. Damit kann zumindest einem Teil des freien Bereichs, insbesondere aber jedem Punkt 364, eine Bildinformationen, also z.B. eine Farbe oder eine Menge an Pixeln mit bestimmten Farben, aus dem Bild zugeordnet werden.This
Alternativ kann, wie erwähnt, aber auch eine perspektivische Transformation des Bildes durchgeführt werden.Alternatively, as mentioned, a perspective transformation of the image can also be carried out.
Claims (15)
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE102023210263.3A DE102023210263A1 (en) | 2023-10-19 | 2023-10-19 | Method for generating a texture map |
| PCT/EP2024/078502 WO2025082838A1 (en) | 2023-10-19 | 2024-10-10 | Method for generating a texture map |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE102023210263.3A DE102023210263A1 (en) | 2023-10-19 | 2023-10-19 | Method for generating a texture map |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| DE102023210263A1 true DE102023210263A1 (en) | 2025-04-24 |
Family
ID=93119665
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE102023210263.3A Pending DE102023210263A1 (en) | 2023-10-19 | 2023-10-19 | Method for generating a texture map |
Country Status (2)
| Country | Link |
|---|---|
| DE (1) | DE102023210263A1 (en) |
| WO (1) | WO2025082838A1 (en) |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE102019220413A1 (en) | 2019-12-20 | 2021-06-24 | Robert Bosch Gmbh | Method for determining a digital depth map |
| DE102020133634A1 (en) | 2020-12-16 | 2022-06-23 | Valeo Schalter Und Sensoren Gmbh | Creating a depth map |
| WO2022263488A1 (en) | 2021-06-17 | 2022-12-22 | Robert Bosch Gmbh | Method for detecting objects of a sought type in camera images |
Family Cites Families (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20190332114A1 (en) * | 2018-04-26 | 2019-10-31 | Maidbot, Inc. | Robot Contextualization of Map Regions |
-
2023
- 2023-10-19 DE DE102023210263.3A patent/DE102023210263A1/en active Pending
-
2024
- 2024-10-10 WO PCT/EP2024/078502 patent/WO2025082838A1/en active Pending
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE102019220413A1 (en) | 2019-12-20 | 2021-06-24 | Robert Bosch Gmbh | Method for determining a digital depth map |
| DE102020133634A1 (en) | 2020-12-16 | 2022-06-23 | Valeo Schalter Und Sensoren Gmbh | Creating a depth map |
| WO2022263488A1 (en) | 2021-06-17 | 2022-12-22 | Robert Bosch Gmbh | Method for detecting objects of a sought type in camera images |
Also Published As
| Publication number | Publication date |
|---|---|
| WO2025082838A1 (en) | 2025-04-24 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP2977844B1 (en) | Method for cleaning or processing a room using an automatically moved device | |
| WO2018114412A1 (en) | Method for creating an environment map for a processing unit | |
| DE102022207829A1 (en) | Method for adding one or more anchor points to a map of an environment | |
| EP3559773A1 (en) | Method for the navigation and self-location of an autonomously moving processing device | |
| WO2023094588A1 (en) | Mobile apparatus and method for scanning an object space | |
| DE102022206041A1 (en) | Method for determining objects in an environment for SLAM | |
| DE102021205620A1 (en) | Method for determining a movement path on a background | |
| DE102025123827A1 (en) | EFFICIENT VIEW SELECTION AND 3D SCENE RECONSTRUCTION FOR MOBILE ROBOTS WITH NEURAL RADIATION FIELDS | |
| DE102025123794A1 (en) | TRAINING OF MOBILE ROBOT PASSABILITY DETECTION WITH SIMULATED DATA | |
| DE102023210263A1 (en) | Method for generating a texture map | |
| EP4229597A1 (en) | Method and device for mapping a deployment environment for at least one mobile unit and for locating at least one mobile unit in a deployment environment, and locating system for a deployment environment | |
| DE102021202570A1 (en) | DEVICE AND METHOD FOR LOCATING LOCATIONS OF OBJECTS FROM CAMERA IMAGES OF THE OBJECTS | |
| DE102022210911A1 (en) | Method for determining a selection area in an environment for a mobile device | |
| WO2023217603A1 (en) | Method for determining point groups which are visible or not visible from a specified viewing point | |
| DE102024202538A1 (en) | Method for generating a semantically segmented soil map | |
| EP2741161B1 (en) | Autonomous apparatus for processing a surface and method for detecting the position of the autonomous apparatus | |
| EP4517471B1 (en) | Method for determining a border of a working area for a mobile device | |
| EP4517469B1 (en) | Method for determining a changed border of a work area for a mobile device | |
| DE102024203975A1 (en) | Method for determining the pose of a mobile device | |
| DE102019204837B4 (en) | 3D environment scanning | |
| DE102024203015A1 (en) | Method for determining a movement path for a mobile device | |
| DE102024204255A1 (en) | Method for creating a map of a workspace for a mobile device | |
| DE102023208362A1 (en) | Method for determining a type of subsoil | |
| WO2026057507A1 (en) | Method for registering two point sets | |
| DE102024208730A1 (en) | Method for determining a motion path for a mobile device |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| R163 | Identified publications notified |
