CN113012295A - Multi-map splicing method and device, computer equipment and storage medium - Google Patents

Multi-map splicing method and device, computer equipment and storage medium Download PDF

Info

Publication number
CN113012295A
CN113012295A CN202110364583.6A CN202110364583A CN113012295A CN 113012295 A CN113012295 A CN 113012295A CN 202110364583 A CN202110364583 A CN 202110364583A CN 113012295 A CN113012295 A CN 113012295A
Authority
CN
China
Prior art keywords
vertex
sub
map
information
maps
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110364583.6A
Other languages
Chinese (zh)
Inventor
赵成伟
冯艳晓
靳兴来
朱世强
裴翔
王国成
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Guochen Robot Technology Co ltd
Original Assignee
Hangzhou Guochen Robot Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou Guochen Robot Technology Co ltd filed Critical Hangzhou Guochen Robot Technology Co ltd
Priority to CN202110364583.6A priority Critical patent/CN113012295A/en
Publication of CN113012295A publication Critical patent/CN113012295A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/05Geographic models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4038Image mosaicing, e.g. composing plane images from plane sub-images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/32Indexing scheme for image data processing or generation, in general involving image mosaicing

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Remote Sensing (AREA)
  • Processing Or Creating Images (AREA)

Abstract

The invention discloses a multi-map splicing method and device, computer equipment and a storage medium. The method comprises the following steps: acquiring a plurality of pose data sub-maps, wherein each pose data sub-map comprises a number and vertex information associated with the number; determining the adjacency relation of the vertexes of the multiple sub-maps according to the numbers and the vertex information; determining a first alternative vertex set, a second alternative vertex set and a public candidate region according to the adjacency relation; selecting a first public vertex set and a second public vertex set according to the public candidate area, and calculating the first similarity of each vertex in the two sets; determining a first vertex pair set with a first similarity larger than a preset first similarity threshold; calculating a second similarity of each vertex pair in the first vertex pair set to obtain a second vertex pair set; and splicing the first sub map vertex set and the second sub map vertex set according to the pose information of the vertex pairs in the second vertex pair set. The invention can automatically splice without manually marking the splicing area and avoid double images.

Description

Multi-map splicing method and device, computer equipment and storage medium
Technical Field
The invention relates to the technical field of computers, in particular to a multi-map splicing method and device, computer equipment and a storage medium.
Background
In recent years, with the increasing level of technology, mobile robot technology has been widely applied to various fields of daily life. The mobile robot can independently execute various tasks, labor pressure brought by labor cost is relieved, and people pay more and more attention to the mobile robot. However, the mobile robot is still at a certain distance from the actual manual operation. On the other hand, the tasks are heavy and are simple and repeated for the polling and distribution operations of scenes such as living communities, industrial parks and the like, so that the intelligent mobile robot equipment replaces the manual work, and the operation is inevitably out of gear.
In daily operation of the mobile robot, reliable pose information needs to be obtained, and a high-precision environment map is obtained since the pose information is obtained. In an actual scene, the complexity of an operation area is high, the area of the operation area is large, a single track cannot meet the map construction of the scene, and the multi-map splicing is necessarily involved. The splicing accuracy of the scene map can directly influence the positioning accuracy of the excited robot. Considering that the mobile robot runs in different scenes such as indoor and outdoor scenes, once the positioning is wrong or necessary, uncontrollable dangers may occur, and therefore the map splicing mode is required to be applicable to complex scenes and meet the precision requirement.
At present, the splicing method based on laser point cloud matching is a splicing mode with more map splicing.
The laser point cloud matching-based splicing method is characterized in that the position and posture transformation relation among different sub-maps is obtained by using a laser registration mode for point cloud data with an overlapped area, and the sub-maps are spliced based on the transformation relation. Because the scheme belongs to rigid splicing of data, the problems of map distortion, ghost images and the like are easily caused under the influence of the quality of an intermediate process during generation of a sub map. If the spliced map has the problems of distortion, ghost image and the like, the laser matching precision is influenced, and the laser positioning precision is further influenced.
The splicing mode can finish high-precision multi-map splicing only in a specific scene, and has more restriction factors, and the actual application scene of the mobile robot is changeable and complex, so that the precision of multi-map splicing is difficult to ensure in the actual use of the scheme.
Disclosure of Invention
In order to solve the technical problems, the invention provides a multi-map splicing method, a multi-map splicing device, computer equipment and a storage medium, which are used for solving the problem that the matching precision cannot be ensured in the existing splicing technology, and the technical scheme of the invention is as follows:
in one embodiment, a multi-map stitching method includes the following steps:
acquiring a plurality of pose data sub-maps, wherein each pose data sub-map comprises a number and vertex information associated with the number;
determining the adjacency relation of the vertexes of the multiple sub-maps according to the numbers and the vertex information;
and determining a first candidate vertex set and a second candidate vertex set according to the adjacency relation of the vertexes of the two adjacent sub-maps. The first alternative vertex set comprises a vertex at the position where the first sub-map acquisition track is adjacent to the second sub-map acquisition track and a vertex of which the distance between track points at the position where the adjacent position is adjacent to the second sub-map acquisition track is within a preset range; the second alternative vertex set comprises a vertex at the position where the second sub-map acquisition track is adjacent to the first sub-map acquisition track and a vertex of which the distance between track points at the position where the second sub-map acquisition track is adjacent to the first sub-map acquisition track is within a preset range;
calculating a common candidate region of the first candidate vertex set and the second candidate vertex set, and selecting the first common vertex set and the second common vertex set according to the common candidate region, wherein the first common vertex set comprises the first candidate vertex set in the common candidate region; the second common set of vertices comprises a second set of candidate vertices within a common candidate region;
calculating a first similarity of each vertex in the first common vertex set and each vertex in the second common vertex set; determining a first vertex pair set with a first similarity larger than a preset first similarity threshold;
calculating a second similarity of each vertex pair in the first vertex pair set to obtain a second vertex pair set;
and splicing the vertex set of the first sub-map and the vertex set of the second sub-map according to the pose information of the vertex pair in the set of the second vertex pair.
In one embodiment, the acquiring the plurality of pose data sub-maps specifically includes:
and processing the first data acquired by the laser sensor, the second data acquired by the IMU, the third data acquired by the wheel speed meter and the fourth data acquired by the GPS through a graph optimization data fusion algorithm to acquire vertex information of a plurality of sub-maps.
In an embodiment, the obtaining of the vertex information of the multiple sub-maps specifically includes:
obtaining first vertex positions at different times through Kalman filtering fusion of second data acquired by an IMU and third data acquired by a wheel speed meter;
the first vertex position is used as an initial value, and a second vertex position is obtained by a least square method in combination with first data of different time sequences acquired by a laser sensor;
combining fourth data acquired by the GPS to be a third vertex position;
and solving the pose constraint equation between different constructed vertexes by combining the first vertex position, the second vertex position and the third vertex position by a graph optimization-based method to obtain the position information of the corresponding vertex of the sub-map.
In an embodiment, the determining, according to the number and the vertex information, an adjacency relation of vertices of the multiple sub-maps specifically includes:
according to the numbers and the vertex information, processing the vertex information of the multiple sub-maps by a unified map vertex coordinate system; and determining the adjacency relation of the vertexes of the two adjacent sub-maps according to the vertex information of the plurality of sub-maps processed by the unified map vertex coordinate system.
In one embodiment, the unified map vertex coordinate system processing specifically includes:
and converting the GPS information contained in the corresponding vertex information into an earth geocentric coordinate system, and calculating to obtain a unified conversion equation so as to obtain the poses of different sub-map vertex information under the unified coordinate system.
In one embodiment, the calculating the first similarity between each vertex in the first common vertex set and each vertex in the second common vertex set specifically includes:
acquiring laser point cloud data of each vertex in a first sub-map vertex set; acquiring laser point cloud data of each vertex in a second sub-map vertex set;
dividing data in an L meter range into sector areas with intervals of a degrees by taking a laser sensor as an origin for each laser point cloud data;
counting the characteristic distribution of the point cloud from near to far at certain intervals for each sector area;
and calculating the first similarity of the vertexes according to the characteristic distribution condition of each laser point cloud data.
In one embodiment, the calculating the second similarity of each vertex pair in the first set of vertex pairs specifically includes:
and for each vertex pair, respectively taking the vertices adjacent to the positions of the vertices in the sub-maps for data fusion, and calculating the second similarity of the vertex pair by using an icp algorithm.
In one embodiment, the splicing the first sub-map vertex set and the second sub-map vertex set specifically includes:
fixing the vertex of one sub map in the second vertex pair set, constructing a pose graph relation for the vertex information data of the other sub map, adding a fixed edge according to the pose relation in the second vertex pair set, and obtaining new pose information of the sub map through graph optimization;
and fusing the optimized sub-map pose information to obtain spliced pose data.
A multi-map stitching device, comprising:
an acquisition unit configured to acquire a plurality of pose data sub-maps, each of the pose data sub-maps including a number and vertex information associated with the number;
the analysis processing unit is used for determining the adjacency relation of the vertexes of the multiple sub-maps according to the serial numbers and the vertex information; the first alternative vertex set comprises a vertex at the joint of the first sub map acquisition track and the second sub map acquisition track and a vertex of which the distance of the track point at the joint is within a preset range; the second alternative vertex set comprises a vertex at the position where the second sub-map acquisition track is adjacent to the first sub-map acquisition track and a vertex of which the distance between track points at the position where the second sub-map acquisition track is adjacent to the first sub-map acquisition track is within a preset range; the first candidate vertex set and the second candidate vertex set are selected according to the common candidate region, and the first common vertex set comprises the first candidate vertex set in the common candidate region; the second common set of vertices comprises a second set of candidate vertices within a common candidate region; the first similarity calculation module is further used for calculating first similarity of each vertex in the first public vertex set and each vertex in the second public vertex set; determining a first vertex pair set with a first similarity larger than a preset first similarity threshold; the vertex pair set is also used for calculating a second similarity of each vertex pair in the first vertex pair set to obtain a second vertex pair set; the first sub-map vertex set and the second sub-map vertex set are spliced according to the pose information of the vertex pairs in the second vertex pair set;
and the output unit is used for outputting the map information spliced by the analysis processing unit.
A computer device comprising a memory storing a computer program and a processor implementing the steps of any of the methods described above when the processor executes the computer program.
A computer-readable storage medium, on which a computer program is stored which, when being executed by a processor, carries out the steps of the method of any of the above.
Based on the technical scheme, the invention has the beneficial effects that:
1) according to the invention, the splicing region does not need to be marked manually, and an automatic splicing region detection and verification method is adopted, so that a splicing point pair can be provided effectively and reliably;
2) the method avoids double images caused by rigid splicing of the point cloud data, and reduces the error accumulation phenomenon caused by rigid splicing;
3) the invention realizes a scheme of automatic sub-map splicing, improves the adaptability of the mobile robot to the environment and widens the use scene.
Drawings
The following describes embodiments of the present invention in further detail with reference to the accompanying drawings.
FIG. 1 is a schematic flow chart of a multi-map stitching method according to an embodiment;
FIG. 2 is a map stitching effect diagram of an embodiment, wherein, the diagrams a) and b) are sub-maps of different pose data before stitching; the map c) is a spliced map formed by splicing a) pose data sub-map and a b) pose data sub-map;
FIG. 3 is a block diagram of a multi-map stitching device in one embodiment;
FIG. 4 is a diagram illustrating an internal structure of a computer device according to an embodiment.
Detailed Description
The technical solution in this embodiment will be clearly and completely described below with reference to the drawings in this embodiment. It should be understood that the specific embodiments described herein are merely illustrative of the present application and are not intended to limit the present application.
It is to be understood that the ordinal numbers such as "first", "second", etc., are used for distinguishing a plurality of objects and are not used for defining the sequence, time sequence, priority or importance of the plurality of objects. For example, the first data and the second data are different data only for distinguishing them, and do not indicate differences in the contents, priorities, transmission orders, importance levels, and the like of the two data.
In one embodiment, as shown in fig. 1, a multi-map stitching method is provided, where an application scenario of the method is in the fields of mobile robots, navigation positioning, and computer vision, and the method is described below as applied to a mobile robot as an example, and includes the following steps:
in step S1, a plurality of pose data sub-maps are acquired; each pose data sub-map comprises a number and vertex information associated with the number;
in the embodiment, the mobile robot acquires a plurality of pose data sub-maps; and numbering each position vertex in each pose data sub-map, and acquiring each pose data sub-map comprising the number and vertex information associated with the number, wherein the vertex information comprises but is not limited to: position information, GPS information, laser frame data, laser feature data, and adjacency information.
In one embodiment, the mobile robot processes the first data collected by the laser sensor, the second data collected by the IMU, the third data collected by the wheel speed meter, and the fourth data collected by the GPS through a graph optimization data fusion algorithm to obtain vertex information of the plurality of sub-maps.
Obtaining first vertex positions at different times through Kalman filtering fusion of second data acquired by the IMU and third data acquired by the wheel speed meter; the first vertex position is used as an initial value, and a second vertex position is obtained by a least square method in combination with first data of different time sequences acquired by a laser sensor; combining fourth data acquired by the GPS to be a third vertex position;
and solving the constructed pose constraint equation among different vertexes by combining the first vertex position, the second vertex position and the third vertex position by a graph optimization-based method to obtain the position information of the corresponding vertex.
In step S2, determining the adjacency relation of the vertices of the multiple sub-maps according to the numbers and the vertex information;
in one embodiment, the mobile robot acquires latitude and longitude data of the GPS in the vertex information of each sub-map in step S1; converting the longitude and latitude data into a position under an earth-center coordinate system (ECEF), wherein the vertex information of all sub-maps is under the same coordinate system under the position; and the vertex poses of the sub-maps are in the same coordinate system, and the mobile robot judges the adjacency relation of the vertexes of the sub-maps.
In step S3, a first candidate vertex set and a second candidate vertex set are determined according to the adjacency relation between two adjacent sub-map vertices.
In this embodiment, the first candidate vertex set includes a vertex at an adjacent position of the first sub-map acquisition track and the second sub-map acquisition track, and a vertex at a preset range of a distance between track points at the adjacent position; the second alternative vertex set comprises a vertex at the position where the second sub-map acquisition track is adjacent to the first sub-map acquisition track and a vertex at the position where the distance of the track point at the position where the second sub-map acquisition track is adjacent is within a preset range. In one embodiment, the mobile robot sorts the vertex poses of the sub-maps according to the vertex information under the ECEF coordinate system; then, calculating a first distance according to the vertex positions among different sub-maps in the sorted vertex information; and when the first distance is not larger than a first threshold value, determining the alternative vertex sets of the two adjacent sub-maps, wherein the first threshold value is a preset empirical value.
When the alternative vertex set is selected, Euclidean distance can be used as a distinguishing condition, and a KD tree is used for performing rapid processing, wherein a first threshold value can be 3 meters, namely the vertex poses of adjacent sub-maps, and all vertexes within the range of 3 meters are called as the selected point set of the sub-map.
In step S4, a common candidate region of the first candidate vertex set and the second candidate vertex set is calculated, and the first common vertex set and the second common vertex set are selected based on the common candidate region. Wherein the first common set of vertices comprises a first set of candidate vertices within a common candidate region; the second common set of vertices comprises a second set of candidate vertices within a common candidate region;
in one embodiment, the mobile robot calculates a second distance for the set of candidate vertices; when the second distance is not larger than a second threshold value, determining a common candidate area of the adjacent sub-maps; and the second distance considers the position information, the direction information, the current view information, the serial number index and the like of each vertex in the sub map, wherein the second threshold is a preset empirical value.
In step S5, calculating a first similarity between each vertex in the first common vertex set and each vertex in the second common vertex set; and determining a first vertex pair set with the first similarity larger than a preset first similarity threshold.
In one embodiment, firstly, the mobile robot acquires laser point cloud data of each vertex in a first sub-map vertex set according to a public candidate area; acquiring laser point cloud data of each vertex in a second sub-map vertex set;
then, dividing the data in the range of L meters into sector areas with intervals of a degrees by the mobile robot by taking the laser sensor as an origin for each laser point cloud data; counting the characteristic distribution of the point cloud from near to far at certain intervals for each sector area;
and finally, the mobile robot calculates the first similarity of the vertexes according to the characteristic distribution condition of each laser point cloud data, compares the calculated first similarity of the vertexes with a preset first similarity threshold value one by one, extracts the vertex pairs larger than the first similarity threshold value and forms a first vertex pair set.
In step S6, calculating a second similarity of each vertex pair in the first vertex pair set to obtain a second vertex pair set;
in one embodiment, the mobile robot acquires the vertex pair with the first similarity not greater than the third threshold in step S5, respectively takes the vertices adjacent to the vertex in each sub-map for data fusion, and calculates the second similarity of the vertex pair by using an icp algorithm;
then, the mobile robot acquires all second similarity vertex pairs not greater than a fourth threshold, namely the vertex pairs participating in graph optimization processing, wherein the third threshold and the fourth threshold are preset empirical values.
In step S7, the vertex set of the first sub-map and the vertex set of the second sub-map are spliced according to the pose information of the vertex pair in the set of the second vertex pair.
In one embodiment, first, the mobile robot obtains the vertex pair obtained in S6, fixes the vertex pose belonging to one of the sub-maps, and obtains the transformation relationship from the vertex of the other sub-map to the corresponding fixed vertex.
And then, the mobile robot constructs a pose constraint equation of a pose graph structure for all the vertex information in the pose data of the other sub-map, and adds the pose constraint equations of the corresponding vertices and the fixed vertices.
And then, the mobile robot solves the pose information of the vertex of the sub-map in a graph optimization mode and updates the vertex information of the sub-map.
And finally, splicing and fusing the optimized sub-map vertex information and the corresponding sub-map by the mobile robot.
And continuing to execute the steps S2 to S7 until all the sub-maps are spliced, and finally obtaining a fused complete map, thereby completing the splicing of a plurality of sub-maps and constructing a complete three-dimensional point cloud map, as shown in FIG. 2, wherein different pose data sub-maps before the splicing are shown, and the map c) is a spliced map formed by splicing the two pose data sub-maps of a) and b). As can be seen from FIG. 2, the algorithm of the invention can complete the splicing of a plurality of sub-maps and create an accurate three-dimensional environment map.
By applying the multi-map splicing method based on map optimization provided by the embodiment of the invention, splicing areas do not need to be marked artificially, and automatic splicing area detection and verification methods are adopted, so that splicing point pairs can be provided effectively and reliably; ghost images caused by rigid splicing of point cloud data are avoided, and the error accumulation phenomenon caused by rigid splicing is reduced; the scheme for automatically splicing a plurality of sub-maps is realized, the adaptability of the mobile robot to the environment is improved, and the use scene is widened.
It should be understood that the various steps in fig. 1 are shown in order as indicated by the arrows, but the steps are not necessarily performed in order as indicated by the arrows. The steps are not performed in the exact order shown and described, and may be performed in other orders, unless explicitly stated otherwise. Moreover, at least a portion of the steps in the above-described flowcharts may include multiple sub-steps or multiple stages, which are not necessarily performed at the same time, but may be performed at different times, and the order of performing the sub-steps or the stages is not necessarily sequential, but may be performed alternately or alternatingly with other steps or at least a portion of the sub-steps or stages of other steps.
In one embodiment, as shown in fig. 3, there is also provided a multi-map stitching apparatus, including:
an acquisition unit 101 configured to acquire a plurality of pose data sub-maps, each of which includes a number and vertex information associated with the number;
the analysis processing unit 102 is used for determining the adjacency relation of the vertexes of the multiple sub-maps according to the numbers and the vertex information; the first alternative vertex set comprises a vertex at the joint of the first sub map acquisition track and the second sub map acquisition track and a vertex of which the distance of the track point at the joint is within a preset range; the second alternative vertex set comprises a vertex at the position where the second sub-map acquisition track is adjacent to the first sub-map acquisition track and a vertex of which the distance between track points at the position where the second sub-map acquisition track is adjacent to the first sub-map acquisition track is within a preset range; the first candidate vertex set and the second candidate vertex set are selected according to the common candidate region, and the first common vertex set comprises the first candidate vertex set in the common candidate region; the second common set of vertices comprises a second set of candidate vertices within a common candidate region; the first similarity calculation module is further used for calculating first similarity of each vertex in the first public vertex set and each vertex in the second public vertex set; determining a first vertex pair set with a first similarity larger than a preset first similarity threshold; the vertex pair set is also used for calculating a second similarity of each vertex pair in the first vertex pair set to obtain a second vertex pair set; the first sub-map vertex set and the second sub-map vertex set are spliced according to the pose information of the vertex pairs in the second vertex pair set;
and the output unit 103 is used for outputting the map information spliced by the analysis processing unit.
In one embodiment, the analysis processing unit 102 is configured to further implement the following steps:
and processing the first data acquired by the laser sensor, the second data acquired by the IMU, the third data acquired by the wheel speed meter and the fourth data acquired by the GPS through a graph optimization data fusion algorithm to acquire vertex information of a plurality of sub-maps.
In one embodiment, the analysis processing unit 102 is configured to further implement the following steps:
obtaining first vertex positions at different times through Kalman filtering fusion of second data acquired by an IMU and third data acquired by a wheel speed meter;
the first vertex position is used as an initial value, and a second vertex position is obtained by a least square method in combination with first data of different time sequences acquired by a laser sensor;
combining fourth data acquired by the GPS to be a third vertex position;
and solving the pose constraint equation between different constructed vertexes by combining the first vertex position, the second vertex position and the third vertex position by a graph optimization-based method to obtain the position information of the corresponding vertex of the sub-map.
In one embodiment, the analysis processing unit 102 is configured to further implement the following steps:
according to the sum vertex information, carrying out unified map vertex coordinate system processing on the vertex information of the sub-maps;
and determining the adjacency relation of the vertexes of the two adjacent sub-maps according to the vertex information of the plurality of sub-maps processed by the unified map vertex coordinate system.
In one embodiment, the analysis processing unit 102 is configured to further implement the following steps:
and converting the GPS information contained in the corresponding vertex information into an earth geocentric coordinate system, and unifying a conversion equation so as to obtain the vertex information of different sub-maps and obtain the pose under the unified coordinate system.
In one embodiment, the analysis processing unit 102 is configured to further implement the following steps:
calculating a first similarity between each vertex in the first common vertex set and each vertex in the second common vertex set, specifically including:
acquiring laser point cloud data of each vertex in a first sub-map vertex set; acquiring laser point cloud data of each vertex in a second sub-map vertex set;
dividing data in an L meter range into sector areas with intervals of a degrees by taking a laser sensor as an origin for each laser point cloud data;
counting the characteristic distribution of the point cloud from near to far at certain intervals for each sector area;
and calculating the first similarity of the vertexes according to the characteristic distribution condition of each laser point cloud data, comparing the calculated first similarity of the vertexes with a preset first similarity threshold value one by one, extracting the vertex pairs larger than the first similarity threshold value, and forming a first vertex pair set.
In one embodiment, the analysis processing unit 102 is configured to further implement the following steps:
calculating a second similarity of each vertex pair in the first vertex pair set, which specifically includes:
and for each vertex pair, respectively taking the vertices adjacent to the positions of the vertices in the sub-maps for data fusion, and calculating the second similarity of the vertex pair by using an icp algorithm.
In one embodiment, the analysis processing unit 102 is configured to further implement the following steps:
fixing the vertex of one sub map in the second vertex pair set, constructing a pose graph relation for the vertex information data of the other sub map, adding a fixed edge according to the pose relation in the second vertex pair set, and obtaining new pose information of the sub map through graph optimization;
and fusing the optimized sub-map pose information to obtain spliced pose data.
In one embodiment, a computer device is also provided, which may be a PC
Personal Computer, and may be a terminal device such as a smartphone, a tablet Computer, or a portable Computer. The computer device includes at least a memory, a processor, a communication bus, and a network interface, wherein the processor of the computer device is configured to provide computing and control capabilities. The memory of the computer device comprises a nonvolatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operation of an operating system and computer programs in the non-volatile storage medium. The network interface of the computer device is used for communicating with an external terminal through a network connection. The computer program is executed by a processor to implement a method of identifying a metallographic structure. The display screen of the computer equipment can be a liquid crystal display screen or an electronic ink display screen, and the input device of the computer equipment can be a touch layer covered on the display screen, a key, a track ball or a touch pad arranged on the shell of the computer equipment, an external keyboard, a touch pad or a mouse and the like.
Those skilled in the art will appreciate that the architecture shown in fig. 4 is merely a block diagram of some of the structures associated with the disclosed aspects and is not intended to limit the computing devices to which the disclosed aspects apply, as particular computing devices may include more or less components than those shown, or may combine certain components, or have a different arrangement of components.
In one embodiment, a computer device is provided, comprising a memory and a processor, the memory having a computer program stored therein, the processor implementing the following steps when executing the computer program:
acquiring a plurality of pose data sub-maps, wherein each pose data sub-map comprises a number and vertex information associated with the number;
determining the adjacency relation of the vertexes of the multiple sub-maps according to the numbers and the vertex information;
determining a first alternative vertex set and a second alternative vertex set according to the adjacency relation of the vertexes of two adjacent sub-maps, wherein the first alternative vertex set comprises the vertex at the adjacent position of the acquisition track of the first sub-map and the acquisition track of the second sub-map and the vertex of the track point at the adjacent position within a preset range; the second alternative vertex set comprises a vertex at the position where the second sub-map acquisition track is adjacent to the first sub-map acquisition track and a vertex of which the distance between track points at the position where the second sub-map acquisition track is adjacent to the first sub-map acquisition track is within a preset range;
calculating a common candidate region of the first candidate vertex set and the second candidate vertex set, and selecting the first common vertex set and the second common vertex set according to the common candidate region, wherein the first common vertex set comprises a first candidate vertex set in the common candidate region; the second common set of vertices comprises a second set of candidate vertices within a common candidate region;
calculating a first similarity of each vertex in the first common vertex set and each vertex in the second common vertex set; determining a first vertex pair set with a first similarity larger than a preset first similarity threshold;
calculating a second similarity of each vertex pair in the first vertex pair set to obtain a second vertex pair set;
and splicing the vertex set of the first sub-map and the vertex set of the second sub-map according to the pose information of the vertex pair in the set of the second vertex pair.
In one embodiment, the processor, when executing the computer program, further performs the steps of:
and processing the first data acquired by the laser sensor, the second data acquired by the IMU, the third data acquired by the wheel speed meter and the fourth data acquired by the GPS through a graph optimization data fusion algorithm to acquire vertex information of a plurality of sub-maps.
In one embodiment, the processor, when executing the computer program, further performs the steps of: obtaining first vertex positions at different times through Kalman filtering fusion of second data acquired by an IMU and third data acquired by a wheel speed meter;
the first vertex position is used as an initial value, and a second vertex position is obtained by a least square method in combination with first data of different time sequences acquired by a laser sensor;
combining fourth data acquired by the GPS to be a third vertex position;
and solving the pose constraint equation between different constructed vertexes by combining the first vertex position, the second vertex position and the third vertex position by a graph optimization-based method to obtain the position information of the corresponding vertex of the sub-map.
In one embodiment, the processor, when executing the computer program, further performs the steps of:
according to the sum vertex information, carrying out unified map vertex coordinate system processing on the vertex information of the sub-maps;
and determining the adjacency relation of the vertexes of the two adjacent sub-maps according to the vertex information of the plurality of sub-maps processed by the unified map vertex coordinate system.
In one embodiment, the processor, when executing the computer program, further performs the steps of:
and converting the GPS information contained in the corresponding vertex information into an earth geocentric coordinate system, and unifying a conversion equation so as to obtain the vertex information of different sub-maps and obtain the pose under the unified coordinate system.
In one embodiment, the processor, when executing the computer program, further performs the steps of:
calculating a first similarity between each vertex in the first common vertex set and each vertex in the second common vertex set, specifically including:
acquiring laser point cloud data of each vertex in a first sub-map vertex set; acquiring laser point cloud data of each vertex in a second sub-map vertex set;
dividing data in an L meter range into sector areas with intervals of a degrees by taking a laser sensor as an origin for each laser point cloud data;
counting the characteristic distribution of the point cloud from near to far at certain intervals for each sector area;
and calculating the first similarity of the vertexes according to the characteristic distribution condition of each laser point cloud data, comparing the calculated first similarity of the vertexes with a preset first similarity threshold value one by one, extracting the vertex pairs larger than the first similarity threshold value, and forming a first vertex pair set.
In one embodiment, the processor, when executing the computer program, further performs the steps of:
calculating a second similarity of each vertex pair in the first vertex pair set, which specifically includes:
and for each vertex pair, respectively taking the vertices adjacent to the positions of the vertices in the sub-maps for data fusion, and calculating the second similarity of the vertex pair by using an icp algorithm.
In one embodiment, the processor, when executing the computer program, further performs the steps of:
fixing the vertex of one sub map in the second vertex pair set, constructing a pose graph relation for the vertex information data of the other sub map, adding a fixed edge according to the pose relation in the second vertex pair set, and obtaining new pose information of the sub map through graph optimization;
and fusing the optimized sub-map pose information to obtain spliced pose data.
In one embodiment, a computer-readable storage medium is provided, and its specific implementation is substantially the same as the implementation principle of the corresponding embodiments of the multi-map stitching method, apparatus and computer device described above, and will not be described herein in detail.
The embodiments in the present specification are all described in a progressive manner, and the same and similar parts among the embodiments can be referred to each other, and each embodiment focuses on the differences from the other embodiments. In particular, for the system embodiment, since it is substantially similar to the method embodiment, the description is simple, and for the relevant points, reference may be made to the partial description of the method embodiment.

Claims (11)

1. A multi-map splicing method is characterized by comprising the following steps:
acquiring a plurality of pose data sub-maps, wherein each pose data sub-map comprises a number and vertex information associated with the number;
determining the adjacency relation of the vertexes of the multiple sub-maps according to the numbers and the vertex information;
determining a first alternative vertex set and a second alternative vertex set according to the adjacency relation of two adjacent sub map vertices;
calculating a common candidate region of the first candidate vertex set and the second candidate vertex set, and selecting the first common vertex set and the second common vertex set according to the common candidate region;
calculating a first similarity of each vertex in the first common vertex set and each vertex in the second common vertex set; determining a first vertex pair set with a first similarity larger than a preset first similarity threshold;
calculating a second similarity of each vertex pair in the first vertex pair set to obtain a second vertex pair set;
and splicing the vertex set of the first sub-map and the vertex set of the second sub-map according to the pose information of the vertex pair in the set of the second vertex pair.
2. The multi-map stitching method according to claim 1, wherein the obtaining of the plurality of pose data sub-maps specifically comprises:
and processing the first data acquired by the laser sensor, the second data acquired by the IMU, the third data acquired by the wheel speed meter and the fourth data acquired by the GPS through a graph optimization data fusion algorithm to acquire vertex information of a plurality of sub-maps.
3. The method for multi-map stitching according to claim 2, wherein the obtaining of the vertex information of the plurality of sub-maps specifically comprises:
obtaining first vertex positions at different times through Kalman filtering fusion of second data acquired by an IMU and third data acquired by a wheel speed meter;
the first vertex position is used as an initial value, and a second vertex position is obtained by a least square method in combination with first data of different time sequences acquired by a laser sensor;
combining fourth data acquired by the GPS to be a third vertex position;
and solving the pose constraint equation between different constructed vertexes by combining the first vertex position, the second vertex position and the third vertex position by a graph optimization-based method to obtain the position information of the corresponding vertex of the sub-map.
4. The method for splicing multiple maps according to claim 1, wherein the determining the adjacency relation of the vertices of the multiple sub-maps according to the numbers and the vertex information specifically comprises:
according to the numbers and the vertex information, processing the vertex information of the multiple sub-maps by a unified map vertex coordinate system;
and determining the adjacency relation of the vertexes of the two adjacent sub-maps according to the vertex information of the plurality of sub-maps processed by the unified map vertex coordinate system.
5. The method for multi-map stitching according to claim 4, wherein the processing of the unified map vertex coordinate system specifically comprises:
and converting the GPS information contained in the corresponding vertex information into an earth geocentric coordinate system, and calculating to obtain a unified conversion equation so as to obtain the poses of the vertex information of different sub-maps in the unified coordinate system.
6. The method according to claim 1, wherein the calculating a first similarity between each vertex in the first common vertex set and each vertex in the second common vertex set specifically comprises:
acquiring laser point cloud data of each vertex in a first sub-map vertex set; acquiring laser point cloud data of each vertex in a second sub-map vertex set;
dividing data in an L meter range into sector areas with intervals of a degrees by taking a laser sensor as an origin for each laser point cloud data;
counting the characteristic distribution of the point cloud from near to far at certain intervals for each sector area;
and calculating the first similarity of the vertexes according to the characteristic distribution condition of each laser point cloud data.
7. The method according to claim 1, wherein the calculating the second similarity of each vertex pair in the first set of vertex pairs specifically comprises:
and for each vertex pair, respectively taking the vertices adjacent to the positions of the vertices in the sub-maps for data fusion, and calculating the second similarity of the vertex pair by using an icp algorithm.
8. The method for multi-map stitching according to claim 1, wherein the stitching of the first sub-map vertex set and the second sub-map vertex set specifically comprises:
fixing the vertex of one sub map in the set by the second vertex, constructing a pose graph relation for the vertex information data of the other sub map, adding a fixed edge according to the pose relation in the second vertex pair, and obtaining new pose information of the sub map through graph optimization;
and fusing the optimized sub-map pose information to obtain spliced pose data.
9. A multi-map stitching device, comprising:
an acquisition unit configured to acquire a plurality of pose data sub-maps, each of the pose data sub-maps including a number and vertex information associated with the number;
the analysis processing unit is used for determining the adjacency relation of the vertexes of the multiple sub-maps according to the serial numbers and the vertex information; the method is also used for determining a first alternative vertex set and a second alternative vertex set according to the adjacency relation of the vertexes of two adjacent sub-maps; the first candidate vertex set and the second candidate vertex set are selected according to the common candidate area; the first similarity calculation module is further used for calculating first similarity of each vertex in the first public vertex set and each vertex in the second public vertex set; determining a first vertex pair set with a first similarity larger than a preset first similarity threshold; the vertex pair set is also used for calculating a second similarity of each vertex pair in the first vertex pair set to obtain a second vertex pair set; the first sub-map vertex set and the second sub-map vertex set are spliced according to the pose information of the vertex pairs in the second vertex pair set;
and the output unit is used for outputting the map information spliced by the analysis processing unit.
10. A computer device comprising a memory and a processor, the memory storing a computer program, wherein the processor implements the steps of the method of any one of claims 1 to 8 when executing the computer program.
11. A computer-readable storage medium, on which a computer program is stored, which, when being executed by a processor, carries out the steps of the method of any one of claims 1 to 8.
CN202110364583.6A 2021-04-06 2021-04-06 Multi-map splicing method and device, computer equipment and storage medium Pending CN113012295A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110364583.6A CN113012295A (en) 2021-04-06 2021-04-06 Multi-map splicing method and device, computer equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110364583.6A CN113012295A (en) 2021-04-06 2021-04-06 Multi-map splicing method and device, computer equipment and storage medium

Publications (1)

Publication Number Publication Date
CN113012295A true CN113012295A (en) 2021-06-22

Family

ID=76388061

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110364583.6A Pending CN113012295A (en) 2021-04-06 2021-04-06 Multi-map splicing method and device, computer equipment and storage medium

Country Status (1)

Country Link
CN (1) CN113012295A (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190066328A1 (en) * 2017-08-22 2019-02-28 Here Global B.V. Method, apparatus, and system for a vertex-based evaluation of polygon similarity
CN110634104A (en) * 2019-09-05 2019-12-31 北京智行者科技有限公司 Multi-map splicing method and device
CN110749901A (en) * 2019-10-12 2020-02-04 劢微机器人科技(深圳)有限公司 Autonomous mobile robot, map splicing method and device thereof, and readable storage medium

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190066328A1 (en) * 2017-08-22 2019-02-28 Here Global B.V. Method, apparatus, and system for a vertex-based evaluation of polygon similarity
CN110634104A (en) * 2019-09-05 2019-12-31 北京智行者科技有限公司 Multi-map splicing method and device
CN110749901A (en) * 2019-10-12 2020-02-04 劢微机器人科技(深圳)有限公司 Autonomous mobile robot, map splicing method and device thereof, and readable storage medium

Similar Documents

Publication Publication Date Title
CN111174799B (en) Map construction method and device, computer readable medium and terminal equipment
CN108318043A (en) Method, apparatus for updating electronic map and computer readable storage medium
CN102867057B (en) Virtual wizard establishment method based on visual positioning
CN111028358B (en) Indoor environment augmented reality display method and device and terminal equipment
CN113377888B (en) Method for training object detection model and detection object
EP3274964B1 (en) Automatic connection of images using visual features
CN113048980B (en) Pose optimization method and device, electronic equipment and storage medium
CN110388919B (en) Three-dimensional model positioning method based on feature map and inertial measurement in augmented reality
CN110223351B (en) Depth camera positioning method based on convolutional neural network
CN111735439A (en) Map construction method, map construction device and computer-readable storage medium
Blut et al. Three-dimensional CityGML building models in mobile augmented reality: a smartphone-based pose tracking system
US20220301222A1 (en) Indoor positioning system and indoor positioning method
CN111080682A (en) Point cloud data registration method and device
CN111459269A (en) Augmented reality display method, system and computer readable storage medium
Herath et al. Fusion-dhl: Wifi, imu, and floorplan fusion for dense history of locations in indoor environments
de Paula Veronese et al. Evaluating the limits of a LiDAR for an autonomous driving localization
KR20220025028A (en) Method and device for building beacon map based on visual beacon
González-Fraga et al. Accurate generation of the 3d map of environment with a rgb-d camera
CN113932796A (en) High-precision map lane line generation method and device and electronic equipment
Kawanishi et al. Parallel line-based structure from motion by using omnidirectional camera in textureless scene
CN117132649A (en) Ship video positioning method and device for artificial intelligent Beidou satellite navigation fusion
CN111696147A (en) Depth estimation method based on improved YOLOv3 model
CN116642490A (en) Visual positioning navigation method based on hybrid map, robot and storage medium
Bousaid et al. Perspective distortion modeling for image measurements
CN113012295A (en) Multi-map splicing method and device, computer equipment and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20210622