GENERATING A NEW HYBRID MAP FOR NAVIGATION
20210278222 · 2021-09-09
Inventors
Cpc classification
International classification
G05D1/00
PHYSICS
Abstract
A method for generating a new hybrid map by at least one of extending and modifying a first hybrid map with a second hybrid map, the hybrid map being used for the navigation of a vehicle (10) in a navigation area and including a plurality of information categories, one information category comprising a trajectory of the vehicle (10) to be driven, which trajectory is predefined by a trail (12), and one information category comprising a surrounding contour (24) of the trail (12), wherein a transfer decision is made for each of the information categories as to whether information from the first hybrid map, the second hybrid map, or both the first hybrid map and the second hybrid map is transferred to the new hybrid map.
Claims
1. A method for generating a new hybrid map by at least one of extending and modifying a first hybrid map with a second hybrid map, the hybrid map being used for the navigation of a vehicle (10) in a navigation area and including a plurality of information categories, one information category comprising a trajectory of the vehicle (10) to be driven, which trajectory is predefined by a trail (12), and one information category comprising a surrounding contour (24) of the trail (12), wherein a transfer decision is made for each of the information categories as to whether information from the first hybrid map, the second hybrid map, or both the first hybrid map and the second hybrid map is transferred to the new hybrid map.
2. The method according to claim 1, wherein the first hybrid map is generated in a first mapping process and/or the second hybrid map is generated in a second mapping process at a later time, wherein in a mapping process the vehicle (10) travels along at least parts of the trail (12) and records the surrounding contour (24) of the trail (12) with a contour detection sensor (14).
3. The method according to claim 1, wherein the transfer decision is made by a specification per information category.
4. The method according to claim 3, wherein the transfer decision is made by a selection in a user interface.
5. The method according to claim 1, wherein the transfer decision is made automatically.
6. The method according to claim 5, wherein the transfer decision is made according to at least one of the following criteria: if information is present only in the first or the second hybrid map, it is taken over into the new hybrid map; if information in the first and second hybrid map coincides within a tolerance, it is taken over from the first hybrid map; if information in the second hybrid map deviates from the first hybrid map beyond a tolerance, it is taken over from the second hybrid map.
7. The method according to claim 1, wherein the transfer decision is a selection to transfer the environment contour (24) from the first hybrid map, the second hybrid map, both hybrid maps, or no hybrid map.
8. The method according to claim 1, wherein the transfer decision is a selection to take the trail (12) to be driven from the first hybrid map, the second hybrid map, both hybrid maps, or no hybrid map.
9. The method according to claim 1, wherein the hybrid map comprises at least one of reflector positions (32), additional codes (36) and position codes as information category.
10. The method of claim 9, wherein the transfer decision is a selection to transfer the reflector positions (32) from the first hybrid map, the second hybrid map, both hybrid maps, or no hybrid map.
11. The method of claim 9, wherein the transfer decision is a selection to transfer the additional codes (36) from the first hybrid map, the second hybrid map, both hybrid maps, or no hybrid map.
12. The method according to claim 1, wherein the hybrid map comprises additional codes (36) as an information category, and wherein additional codes (36) are assigned to a position along the trail (12).
13. The method according to claim 1, wherein the first hybrid map and the second map are represented as graphs and the new hybrid map is generated from a fusion of the graphs.
14. The method according to claim 13, wherein the transfer decision takes into account the condition of leaving unchanged or being allowed to change the graph of the first hybrid map.
15. The method according to claim 1 wherein the trail (12) is a virtual trail.
16. The method according to claim 15, wherein the trail (12) is learned from a physical trail (12).
17. A mapping apparatus (14, 18) for generating a new hybrid map for the navigation of a vehicle (10), the device having a contour detection sensor (14) for detecting an environmental contour (24) of an environment of the vehicle (10) and a control and evaluation unit (18) configured to execute a method for generating the new hybrid map by at least one of extending and modifying a first hybrid map with a second hybrid map, the hybrid map being used for the navigation of a vehicle (10) in a navigation area and including a plurality of information categories, one information category comprising a trajectory of the vehicle (10) to be driven, which trajectory is predefined by a trail (12), and one information category comprising a surrounding contour (24) of the trail (12), wherein a transfer decision is made for each of the information categories as to whether information from the first hybrid map, the second hybrid map, or both the first hybrid map and the second hybrid map is transferred to the new hybrid map.
Description
[0033] The invention will be explained in the following also with respect to further advantages and features with reference to exemplary embodiments and the enclosed drawing. The Figures of the drawing show in:
[0034]
[0035]
[0036]
[0037]
[0038]
[0039]
[0040]
[0041]
[0042]
[0043]
[0044]
[0045]
[0046] A control and evaluation unit 18 is connected to the contour detection sensor 14 in order to evaluate its contour measurement data, to create a map of the environment of the vehicle 10 in a learning phase in a manner to be described, and then to navigate using the map in a subsequent operating phase. The control and evaluation unit 18 in turn is in communication with a vehicle control unit 20. The vehicle control unit 20 acts on the wheels 22 or axles thereof to accelerate, brake and steer the vehicle. Conversely, vehicle control unit 20 may also receive sensor information from wheels 22. Control and evaluation unit 18 may be at least partially implemented in contour detection sensor 14. A separation of control and evaluation unit 18 and vehicle control unit 20 is to be understood as exemplary only, they may at least partially be implemented together. At least parts of the control and evaluation unit 18 may be provided externally to the vehicle 10, for example in a computer wirelessly connected thereto, a network or a cloud. In particular, the creation or modification of a map based on measurement data of the contour detection sensor 14 can be done externally.
[0047] In a preferred embodiment, the vehicle 10 initially navigates in a learning phase using trail guidance sensors or line guidance sensors that are not shown and are known per se and detect a physical trail 12. The contour detection sensor 14 is also active and generates contour information of the surroundings or environment of the trail 12, and the contour information is combined to form a map. During further operation, the physical trail 12 is no longer needed and can be replaced by a virtual trail 12 that merely indicates the desired trajectory. Navigation at operation time is based on a localization of the vehicle 10 by means of a comparison of currently acquired contour information by the contour detection sensor 14 and the map. The control and evaluation unit 18 can also use the virtual trail 12 and the contour information to generate control data for the vehicle control system 20 of the same type as previously generated with the trail guidance sensor from the physical trail 12. The method of using a virtual trail guidance sensor with creation of a map and subsequent localization and navigation based on the map, which has only been summarily described, is explained in detail in the German patent application with file number 10 2019 123 659.2 and its U.S. counterpart Ser. No. 17/008,921, which is herewith incorporated by reference.
[0048]
[0049] Although the generation of one map is assumed to be known and the invention relates to the combination of two maps for an update (remapping), it will facilitate understanding of the invention to at first briefly discuss the individual steps of an automated mapping. However, this exemplary advantageous method can be replaced by other ways to arrive at a map with the corresponding information.
[0050] During at least one acquisition or mapping trip along the trail 12, the ego motion of the vehicle 10 is estimated from the measurement data of the contour detection sensor 14. The trail 12 is preferably still physically present during this phase and is detected by at least one trail or line detection sensor. Preferably, any existing additional codes along the trail 12 are read by a code reader. The acquired contours, trails and code data are pre-processed and stored. Based on the estimated vehicle motion, the data is arranged in a map.
[0051] However, errors in the estimation of the vehicle's motion accumulate over time, resulting in inconsistencies in the map. One way of correcting such errors is to use positions that have already been visited and which the vehicle 10 passes over again, so-called loop closures. Preferred are loop closures at positions with an additional code that contains the corresponding absolute position and thus forms a reliable anchor point.
[0052] A particularly advantageous representation of the map is a graph whose nodes are positions and whose edges are connections along the trail 12.
[0053] In such a representation, a graph-based optimization can use the loop closures 28 to correct errors in the estimation of the vehicle motion. At the position of a loop closure 28, the respective positions are superimposed or, if an absolute position is known from an additional code, shifted to this absolute position. This shift is distributed to the other nodes 26a-b during optimization. When a node 26ab is moved, associated contour, trail and code data are also moved.
[0054] To further improve the map, the acquired trail 12 can not only be entered into the map, but also be used algorithmically. Trails 12 detected multiple times, whether from multiple visits of the same position or through the use of multiple trail guidance sensors, are drawn on top of each other and combined into a single trail 12, respectively. Additional codes read multiple times are also united at one position.
[0055]
[0056]
[0057] The two connected graphs can then be optimized as a single graph as described above with reference to
[0058] In principle, it is conceivable to optimize all information of the combined map at the same time. In that case, all old and new information is combined in a new map which is as accurate as possible. According to the invention, however, it should be possible to make a specific transfer decision so that the map updates only affect a part of the map. This does not only mean a local restriction, although this is conceivable. The maps in question are so-called hybrid maps, because they include several different information categories. It should be possible to make a transfer decision per information category as to how the information from the two source maps is transferred to the new map.
[0059]
[0060] The information categories according to
[0061] A first information category concerns a representation as a graph and, if selected, fixes the nodes of the graph of the first map. An optimization of the merged graph is thus forbidden to move the nodes already known from the first map. This has the advantage that already known positions and the coordinate system of the map do not change. Thus, positions stored by the user also retain their validity. However, at the same time, the chance to compensate for earlier optimization errors in the first map is not used. A corresponding option for fixing nodes for the second map, although possible in principle, does not really make sense, by the way, since it would only exclude the use of optimization options without any advantages, since there are no previously used known positions or coordinates in the second map.
[0062] Alternatively, if the nodes of the first map are not selected as fixed, only one node is fixed to ensure the convergence of the optimization. All other nodes from both graphs can change their positions. This may deform the map or move it to a different position in the coordinate system. The coordinate system of the new map thus no longer matches the original first map, and depending on the situation, not only in the form of an offset, but even a deformation of structures. However, if, for example, the user does not have to rely on the metric positions, for example because only the trajectory given by the trail 12 is to be followed, more freedom is created for the optimization to correct errors. A more accurate new map is created, where it is even possible that earlier errors of the first map are reduced using the additional information of the second map. In this mode, maps can be composed of individual sections, which can be used to perform mapping in several separate acquisition trips rather than having to cover the complete course in one run.
[0063] A second information category concerns the contours 24 acquired by the contour detection sensor 14. The contours 24 are preferably still retained during the optimization, independently of the selection, and used, for example, for the search for loop closures 28, 30. Finally, however, they are only transferred to the new map according to the selection.
[0064] If contours 24 are only selected from the first map, the new measurements of contours 24 of the second map are ignored. For example, the second map has been included because the desired trail 12 or trajectory has changed, or additional codes have been changed. However, the contours 24 themselves have proven to be useful for localization and may have already been manually edited, so no change is desired in this regard. Conversely, contours may only have been selected from the second map. In this case, the structures in the environment have changed significantly, for example because shelves or movable walls have been moved, so that the original contours 24 are no longer well suited for localization.
[0065] It makes sense, for example, to transfer contours 24 from both maps to the new map if the mapped area has been expanded, i.e. new areas have become accessible. If the new map is not to contain any contours 24 at all, then this map can only be used for navigation to a very limited extent, since it is no longer possible to make a comparison to correct the localization. However, the user possibly wants to transfer only trails 12 or additional codes into a CAD drawing or the like, for which the option is offered.
[0066] A third information category concerns reflectors. Such reflectors are placed everywhere or at particularly critical points in order to further support navigation through particularly reliable detection by the contour detection sensor 14. In principle, therefore, reflectors can be understood as part of the contour 24, so that the explanations are largely the same. Reflector information is preferably used during optimization whatever the selection, for example, to search for loop closures 28, 30. The selection determines if and how they are finally transferred to the new map.
[0067] If reflectors of only the first map are selected, any additional reflectors detected with the second map are ignored. This makes sense if the changes for which the map is being updated affect contours 24, trail 12 and/or additional codes, but the previous reflector positions have proven themselves and have possibly already been edited manually. Conversely, if only reflectors of the second map are selected, the previous reflectors of the first map are discarded and replaced by the new reflectors of the second map. For example, the reflector population has been greatly changed by both removing old reflectors and mounting new reflectors. Preferably, the second map has been acquired in such a way that all reflectors currently present have been detected.
[0068] If reflectors of both maps are selected, all known reflectors are taken over, and overlapping detections of the same reflector are merged. Example cases are an extension of the navigation area or the addition of reflectors at certain locations to improve localization. Also with regard to reflectors, there is the possibility of not including them in the new map at all. One reason for this could be that there are too many mismeasurements of reflectors, for example because workers in the area are wearing reflector bands.
[0069] A fourth information category concerns the trail 12 and the path or trajectory of the vehicle 10 that the trail 12 defines, respectively. Again, data of the trail 12 are preferably used during optimization, independently of the selection, for example in order to superimpose trails 12 that have been acquired a plurality of times as described above with reference to
[0070] If only the first map is selected, the trajectory remains unchanged. The changes that required updating the map therefore do not affect the intended trajectory. It is possible that trail 12 does not even exist physically and can therefore only be preserved in this way, or that the trajectory was manually edited. If, on the other hand, only the second map is selected as the source of the new trail 12, the desired trajectory has changed, and the old trajectories should only be used to the extent that this is still currently specified in the second map. For this option, all new trails should have been visited and thus acquired in the second map.
[0071] If both maps are allowed as a source of the new trail, all trail data will be transferred. Overlapping trails will be combined to a single trail, similar to
[0072] A fifth information category concerns additional codes. Like other information categories, additional codes can also be used during optimization, independently of the selection, in particularly to detect and locate loop closures 28, 30. However, it should be noted that additional codes known from the first map may not be present or may have been moved.
[0073] When selecting additional codes only of the first map, their positions have not changed. It is possible that at least some additional codes are no longer physically present, but are only used virtually. Conversely, when selecting additional codes of the second map only, all previously known additional codes of the first map are discarded. Care should be taken to ensure that the second map includes all additional codes that are still relevant.
[0074] A combination of additional codes from both maps transfers all additional codes that have been acquired in only one map. If additional codes are detected in both maps at very close positions, or if they are unique additional codes that occur in both maps, they are preferably merged in the new map, or the maps are unified in a way that is compatible with the additional code having been detected twice. Use cases include extending the navigation area with more additional codes in the new areas and/or adding additional codes in known areas to assist in localization or to provide additional control instructions to the vehicle 10. The option to not include additional codes in the new map is useful, for example, if the vehicle 10 does not have a code reader at all.
[0075] Following this explanation of the individual information categories and the selection options for merging two maps within each of the information categories, a number of examples will now be considered. These are use cases of particular relevance where updating the map is necessary or useful. However, this is not intended to limit the possible combinations of selections.
[0076]
[0077] A preferred selection, as explained with reference to
[0078] With this selection, the new reflectors 32 are additionally entered in the new map. If reflectors have already been entered in the first map, they are retained. Overlapping reflectors from both maps are merged. In the other information categories, the first map remains untouched.
[0079] For this example, only the new map is shown in
[0080]
[0081] In this case, the trails 12 are already mapped or even manually edited, for example by adding the left arc as a virtual trail. Then, however, the environment has changed in such a way that a reliable comparison with the existing map is no longer possible. Therefore, the environment should be re-mapped, but the trails should remain. A complete remapping would in particular cause a manually added part of the trail to disappear.
[0082] A preferred selection, as explained with reference to
[0083] Thus, the trails 12 and additional codes of the first map are retained, while the changed environment is re-mapped in contour 24 and reflectors. The selection with respect to the additional codes could be varied within this use case depending on whether or not anything has changed in the navigation environment in this regard. In the example shown in
[0084]
[0085] In this use case, the first map is to remain largely unchanged, but the additional codes 36 are to be newly detected and entered, where in this example it is assumed that the changes in the additional codes 36 have been extensive so that the previous information in this regard can no longer be used at all.
[0086] A preferred selection, as explained with reference to
[0087]
[0088] A preferred selection, as explained with reference to
[0089] This selection assumes that there are almost no conflicts between the information of the two maps because the maps cover different areas. This exactly has been the initial scenario, where the second map should be prevented from again covering the area of the first map.
[0090] Without its own representation in a Figure, yet another use case will be discussed. The scenario is that a first map has been acquired with a different sensor configuration, in particular a different contour detection sensor 14, than the vehicle 10 will use for navigation. In particular, multiple vehicles 10 should be able to share at least portions of a map. The detection of contours 24 and also reflectors 32 differs from sensor configuration to sensor configuration, so in this respect the vehicle 10 needs a map that matches the current sensor configuration. However, the differences are quite subtle to the human eye, which is the reason that no example images are presented in a Figure for that case.
[0091] A lot of work in the form of manual editing may have already been invested in the first map that was acquired with a different sensor configuration. Therefore, there is a requirement to maintain this state for all affected vehicles 10. Only the actual sensor data, i.e. the contour 24 and, if applicable, the reflectors 32, are to be exchanged. The coordinate system including known positions, the trails or trajectories and the additional codes 36 are not to be modified.
[0092] A preferred selection, as explained with reference to
[0093] This selection corresponds to that explained with reference to
[0094] The selection illustrated in
[0095] It is also conceivable that the system automatically decides which data is taken from which map in order to reduce manual effort. For example, similar data or data that exists only once can be retained or merged, while priority is given to the more recent recording in the case of contradictory data.
[0096]
[0097] In order to ensure the most accurate control and determination of the route section, the reading area 44 of the code reader should be small, for example 15 cm wide. Otherwise, the localization will be imprecise. On the other hand, if the reading area 44 is small, the code reader may not pass over the additional code 36 with sufficient accuracy due to random variations in the trail control, and thus may not be able to read it. As a result, there may be false controls. Depending on the technology of the code reader and associated additional code 36, code information of the additional code 36 may also not be detected for other reasons. RFID tags may not be located or may be located incorrectly due to reflections and shielding. Barcodes cannot be read if the orientation of the detection is unfavorable so that the reading line does not cross all code elements. Optical 2D codes can no longer be read from perspectives that are too flat.
[0098] Of course, a virtual code reader can avoid these physical limitations of the respective technology, i.e., it can simply not emulate that aspects. However, the case where the emulated reading area 44 misses the additional code 36 as in
[0099]
[0100] A first option is to draw or shift the captured additional code 36 onto the trail 12 as a virtual additional code 36′. A control command encoded in the additional code 36 is to be executed at the time when the additional code 36 is detected. This, in turn, corresponds to a specific position along the trail 12. Therefore, the position of the code can be reassigned to only one coordinate corresponding to the position along the trail 12. If the additional code 36 encodes an absolute position, this absolute position is corrected for the virtual additional code 36 according to the offset from the trail 12. The virtual additional code 36′ is considered to have been read when the vehicle 10 reaches the corresponding position on the trail 12.
[0101] An alternative possibility, which is mathematically equivalent in principle, is to replace the rectangular or circular, narrowly defined original reading area 44 in the virtual code reader with a virtual measuring line 46, which is arranged perpendicular to the trail 12 in each case. As soon as the virtual measuring line 46 sweeps over the additional code 36 at its position learned in the map, the additional code 36 is considered to have been read, and its control command is executed. The virtual measuring line 46 ultimately does nothing but project the position of the additional code 36 onto a corresponding position on the trail 12. Instead of a virtual measuring line 46, a rectangle with the width of the virtual measuring line 46 could also be used as the reading area 44.
[0102] The extent of the virtual measurement line 46 must be limited to approximately the width of the vehicle 10, since otherwise additional codes 36 that do not belong to the currently traveled section of the trail 12 would possibly also be taken into account. Similarly, in the first option described above, only virtual additional codes 36′ are drawn onto the trail 12 that are sufficiently close to the trail 12 and thus would in principle be detected by a code reader.