CN110853008A - SLAM map quality assessment method, device and computer readable storage medium - Google Patents

SLAM map quality assessment method, device and computer readable storage medium Download PDF

Info

Publication number
CN110853008A
CN110853008A CN201911092074.1A CN201911092074A CN110853008A CN 110853008 A CN110853008 A CN 110853008A CN 201911092074 A CN201911092074 A CN 201911092074A CN 110853008 A CN110853008 A CN 110853008A
Authority
CN
China
Prior art keywords
slam map
point set
target
slope
quality
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.)
Granted
Application number
CN201911092074.1A
Other languages
Chinese (zh)
Other versions
CN110853008B (en
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.)
Shenzhen Skyworth Digital Technology Co Ltd
Original Assignee
Shenzhen Skyworth Digital 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 Shenzhen Skyworth Digital Technology Co Ltd filed Critical Shenzhen Skyworth Digital Technology Co Ltd
Priority to CN201911092074.1A priority Critical patent/CN110853008B/en
Publication of CN110853008A publication Critical patent/CN110853008A/en
Application granted granted Critical
Publication of CN110853008B publication Critical patent/CN110853008B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3407Route searching; Route guidance specially adapted for specific applications
    • G01C21/343Calculating itineraries, i.e. routes leading from a starting point to a series of categorical destinations using a global route restraint, round trips, touristic trips
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • G06T7/62Analysis of geometric attributes of area, perimeter, diameter or volume

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Quality & Reliability (AREA)
  • Automation & Control Theory (AREA)
  • Geometry (AREA)
  • Image Analysis (AREA)

Abstract

The invention discloses a SLAM map quality assessment method, a device and a computer readable storage medium. The SLAM map quality assessment method comprises the following steps: acquiring a newly-built SLAM map and a benchmarking SLAM map, and performing rotation correction on the newly-built SLAM map to obtain a corrected SLAM map; acquiring a first target cross point set in the correction SLAM map, and acquiring a second target cross point set in the benchmarking SLAM map; and calculating to obtain a quality contrast weight value and a difference coefficient between the corrected SLAM map and the benchmarking SLAM map based on the first target intersection set and the second target intersection set, and calculating to obtain a quality matching value based on the quality contrast weight value and the difference coefficient. The invention can realize the intelligent quantitative evaluation of the SLAM map quality, thereby saving the quality auditing time of a newly-built SLAM map, improving the auditing efficiency and simultaneously improving the accuracy of the quality auditing of the SLAM map.

Description

SLAM map quality assessment method, device and computer readable storage medium
Technical Field
The invention relates to the technical field of intelligent navigation, in particular to a method and a device for evaluating the quality of an SLAM map and a computer readable storage medium.
Background
AGV (automated Guided vehicle), also called as a carrier robot, is an important link in modern intelligent logistics systems, realizes automatic loading and unloading and carrying of goods through AGV cooperation with various mechanical arms, can thoroughly liberate the manpower from the carrying link, reduces the staff's demand of enterprise, reduces the human cost.
The AGV needs to perform autonomous navigation in an unknown environment, perform real-time positioning by using the created SLAM map and the current position, and simultaneously perform Mapping based on positioning by using data of its own sensor, which is the instant positioning of the robot and SLAM map construction (SLAM). Because the SLAM system strictly depends on the SLAM map to operate, and the positioning accuracy and the destination point navigation of the AGV body depend on the mapping quality, updating the SLAM map is a strict matter based on the existing SLAM mapping application. At present, a manual operation and maintenance team is often used for on-site or remote support, and a SLAM map is updated irregularly or periodically to achieve the operation accuracy of the AGV body. However, since the operating scene of the AGV body is generally large and there are many service anchor points (usually hundreds) in the SLAM map, the new SLAM map is audited in a manual auditing manner, which has the problems of long auditing time and low efficiency. Therefore, an intelligent evaluation method for the quality of the SLAM map is needed to save the auditing time of the quality of the SLAM map, improve the auditing efficiency and improve the accuracy of the quality auditing of the SLAM map.
Disclosure of Invention
The invention mainly aims to provide a method and a device for evaluating the quality of an SLAM map and a computer readable storage medium, aiming at realizing the intelligent quantitative evaluation of the quality of the SLAM map, so that the quality checking time of a newly-built SLAM map can be saved, the checking efficiency is improved, and the accuracy of the quality checking of the SLAM map is improved.
In order to achieve the above object, the present invention provides a SLAM map quality assessment method, including:
acquiring a newly-built SLAM map and a benchmarking SLAM map, and performing rotary correction on the newly-built SLAM map to obtain a corrected SLAM map;
acquiring a first target cross point set in the correction SLAM map, and acquiring a second target cross point set in the benchmarking SLAM map;
and calculating a mass comparison weight value and a difference coefficient between the correction SLAM map and the benchmarking SLAM map based on the first target intersection point set and the second target intersection point set, and calculating a mass matching value based on the mass comparison weight value and the difference coefficient.
Optionally, the step of performing rotation correction on the new SLAM map to obtain a corrected SLAM map includes:
dividing the newly-built SLAM map according to a first preset parameter to obtain a plurality of corresponding first divided areas;
searching pixel points of continuous edges in each first partition area respectively to obtain a first pixel point set, and traversing each first pixel point in the first pixel point set to obtain the geometric area and slope information of the continuous edges in each first partition area;
screening the first divided area based on the geometric area, the slope information and a first preset threshold range to obtain a first target divided area;
acquiring a slope in slope information corresponding to the first target division region, clustering the slope to obtain a first clustering result, and determining a rotation angle according to the first clustering result;
and performing rotation correction on the newly built SLAM map according to the rotation angle and the preset rotation direction by taking a preset coordinate origin as a rotation circle center to obtain a corrected SLAM map.
Optionally, the step of determining a rotation angle according to the first clustering result includes:
acquiring a slope set of a first preset rank according to the first clustering result, and calculating a slope average value of each slope set;
judging whether a vertical combination exists according to the slope average value of each slope set;
if the vertical combination exists, obtaining a slope average value corresponding to the vertical combination, recording the slope average value as a first slope average value, and determining the maximum value in the angles corresponding to the first slope average value as a rotation angle;
and if the vertical combination does not exist, acquiring a slope average value corresponding to the slope set of the first rank in the first clustering result, recording the slope average value as a second slope average value, and determining the angle corresponding to the second slope as the rotation angle.
Optionally, the step of acquiring the first target intersection point set in the revised SLAM map includes:
dividing the corrected SLAM map according to a second preset parameter to obtain a plurality of corresponding second divided areas;
searching pixel points of continuous edges in each second divided area respectively to obtain a second pixel point set, and acquiring coordinates of each second pixel point in the second pixel point set;
clustering the coordinates of second pixel points in each second divided region respectively to obtain a second clustering result;
and acquiring a first cross point set in the corrected SLAM map and coordinates of each first cross point in the first cross point set according to the second clustering result, and screening the first cross point set according to the coordinates of the first cross points and a second preset threshold range to obtain a first target cross point set.
Optionally, the step of acquiring the second target intersection point set in the benchmarking SLAM map includes:
dividing the benchmarking SLAM map according to the second preset parameters to obtain a plurality of corresponding third divided areas;
searching pixel points of continuous edges in each third divided area respectively to obtain a third pixel point set, and acquiring coordinates of each third pixel point in the third pixel point set;
clustering the coordinates of each third pixel point in each third divided area respectively to obtain a third clustering result;
and acquiring a second intersection point set in the benchmarking SLAM map and coordinates of each second intersection point in the second intersection point set according to the third clustering result, and screening the second intersection point set according to the coordinates of the second intersection points and the second preset threshold range to obtain a second target intersection point set.
Optionally, the step of calculating a quality contrast weight value and a difference coefficient between the modified SLAM map and the benchmarking SLAM map based on the first target intersection set and the second target intersection set includes:
comparing the first target cross point set with the second target cross point set to obtain a loss cross point;
calculating a loss area based on the loss intersection and the first target intersection set, calculating a first area corresponding to the corrected SLAM map based on the first target intersection set, and calculating to obtain a mass comparison weight value according to the loss area and the first area;
and calculating a second area corresponding to the benchmarking SLAM map based on the second target cross point set, and calculating to obtain a difference coefficient according to the second area and the first area.
Optionally, before the step of acquiring the first target intersection point set in the modified SLAM map and the step of acquiring the second target intersection point set in the benchmarking SLAM map, the SLAM map quality assessment method further includes:
performing feature matching on the corrected SLAM map and the benchmarking SLAM map to obtain an image matching value between the corrected SLAM map and the benchmarking SLAM map;
judging whether the image matching value is greater than or equal to a preset threshold value or not;
if the image matching value is greater than or equal to a preset threshold value, executing the following steps: acquiring a first target cross point set in the correction SLAM map, and acquiring a second target cross point set in the calibration SLAM map;
and if the image matching value is smaller than a preset threshold value, generating corresponding first error prompt information.
Optionally, before the step of calculating a quality matching value based on the quality contrast weight value and the difference coefficient, the SLAM map quality assessment method further includes:
detecting whether the quality comparison weight value is within a third preset threshold range, and detecting whether the difference coefficient is within a fourth preset threshold range;
if the quality contrast weighted value is within a third preset threshold range and the difference coefficient is within a fourth preset threshold range, executing the following steps: calculating a mass matching value based on the mass comparison weight value and the difference coefficient;
and if the quality contrast weight value is not within a third preset threshold range and/or the difference coefficient is not within a fourth preset threshold range, generating corresponding second error prompt information.
Further, to achieve the above object, the present invention also provides a SLAM map quality assessment apparatus including: a memory, a processor and a SLAM map quality assessment program stored on the memory and executable on the processor, the SLAM map quality assessment program when executed by the processor implementing the steps of the SLAM map quality assessment method as described above.
Further, to achieve the above object, the present invention also provides a computer-readable storage medium having stored thereon a SLAM map quality evaluation program which, when executed by a processor, implements the steps of the SLAM map quality evaluation method as described above.
The invention provides a method and a device for evaluating the quality of an SLAM map and a computer readable storage medium, wherein the method comprises the steps of acquiring a newly-built SLAM map and a benchmarking SLAM map, and rotationally correcting the newly-built SLAM map so as to obtain a corrected SLAM map; then acquiring a first target cross point set in the correction SLAM map, and acquiring a second target cross point set in the benchmarking SLAM map; and then calculating to obtain a quality contrast weight value and a difference coefficient between the correction SLAM map and the benchmarking SLAM map based on the first target cross point set and the second target cross point set, and finally calculating to obtain a quality matching value based on the quality contrast weight value and the difference coefficient. By the mode, the quality of the SLAM map can be intelligently and quantitatively evaluated, a worker can directly judge the quality of the newly-built SLAM map according to the quality matching value without manually auditing and evaluating the newly-built SLAM map, so that the quality auditing time of the newly-built SLAM map can be saved, the auditing efficiency is improved, and meanwhile, compared with the prior art, the problem that the auditing result is poor in accuracy due to human errors can be avoided, namely, the quality auditing accuracy of the SLAM map can be improved.
Drawings
Fig. 1 is a schematic structural diagram of a SLAM map quality assessment apparatus in a hardware operating environment according to an embodiment of the present invention;
FIG. 2 is a schematic flow chart of a SLAM map quality assessment method according to a first embodiment of the present invention;
FIG. 3 is a schematic diagram of a benchmarking SLAM map to which the SLAM map quality assessment method of the present invention relates;
FIG. 4 is a schematic diagram of a newly created SLAM map to which the SLAM map quality assessment method of the present invention relates;
fig. 5 is a schematic diagram of a modified SLAM map to which the SLAM map quality assessment method of the present invention relates;
fig. 6 is a flowchart illustrating a SLAM map quality assessment method according to a fifth embodiment of the present invention.
The implementation, functional features and advantages of the objects of the present invention will be further described with reference to the accompanying drawings.
Detailed Description
It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
Referring to fig. 1, fig. 1 is a schematic structural diagram of a SLAM map quality assessment apparatus in a hardware operating environment according to an embodiment of the present invention.
As shown in fig. 1, the SLAM map quality evaluating apparatus may include: a processor 1001, such as a CPU (central processing Unit), a communication bus 1002, a user interface 1003, a network interface 1004, and a memory 1005. Wherein a communication bus 1002 is used to enable connective communication between these components. The user interface 1003 may include a Display screen (Display), an input unit such as a Keyboard (Keyboard), and the optional user interface 1003 may also include a standard wired interface, a wireless interface. The network interface 1004 may optionally include a standard wired interface, a Wireless interface (e.g., a Wi-Fi interface, Wireless-Fidelity, Wi-Fi interface). The memory 1005 may be a high-speed RAM memory or a non-volatile memory (e.g., a magnetic disk memory). The memory 1005 may alternatively be a storage device separate from the processor 1001.
Those skilled in the art will appreciate that the SLAM map quality assessment apparatus configuration shown in fig. 1 does not constitute a limitation of the SLAM map quality assessment apparatus, and may include more or fewer components than those shown, or some components in combination, or a different arrangement of components.
As shown in fig. 1, a memory 1005, which is a kind of computer storage medium, may include therein an operating system, a network communication module, a user interface module, and a SLAM map quality assessment program.
In the SLAM map quality evaluation device shown in fig. 1, the network interface 1004 is mainly used for connecting a background server and performing data communication with the background server; the user interface 1003 is mainly used for connecting a client and performing data communication with the client; and the processor 1001 may be used to invoke the SLAM map quality assessment program stored in the memory 1005.
In this embodiment, the SLAM map quality evaluation device includes: a memory 1005, a processor 1001, and a SLAM map quality assessment program stored on the memory 1005 and executable on the processor 1001, wherein the processor 1001, when calling the SLAM map quality assessment program stored in the memory 1005, performs the following operations:
acquiring a newly-built SLAM map and a benchmarking SLAM map, and performing rotary correction on the newly-built SLAM map to obtain a corrected SLAM map;
acquiring a first target cross point set in the correction SLAM map, and acquiring a second target cross point set in the benchmarking SLAM map;
and calculating a mass comparison weight value and a difference coefficient between the correction SLAM map and the benchmarking SLAM map based on the first target intersection point set and the second target intersection point set, and calculating a mass matching value based on the mass comparison weight value and the difference coefficient.
Further, the processor 1001 may call the SLAM map quality assessment program stored in the memory 1005, and also perform the following operations:
dividing the newly-built SLAM map according to a first preset parameter to obtain a plurality of corresponding first divided areas;
searching pixel points of continuous edges in each first partition area respectively to obtain a first pixel point set, and traversing each first pixel point in the first pixel point set to obtain the geometric area and slope information of the continuous edges in each first partition area;
screening the first divided area based on the geometric area, the slope information and a first preset threshold range to obtain a first target divided area;
acquiring a slope in slope information corresponding to the first target division region, clustering the slope to obtain a first clustering result, and determining a rotation angle according to the first clustering result;
and performing rotation correction on the newly built SLAM map according to the rotation angle and the preset rotation direction by taking a preset coordinate origin as a rotation circle center to obtain a corrected SLAM map.
Further, the processor 1001 may call the SLAM map quality assessment program stored in the memory 1005, and also perform the following operations:
acquiring a slope set of a first preset rank according to the first clustering result, and calculating a slope average value of each slope set;
judging whether a vertical combination exists according to the slope average value of each slope set;
if the vertical combination exists, obtaining a slope average value corresponding to the vertical combination, recording the slope average value as a first slope average value, and determining the maximum value in the angles corresponding to the first slope average value as a rotation angle;
and if the vertical combination does not exist, acquiring a slope average value corresponding to the slope set of the first rank in the first clustering result, recording the slope average value as a second slope average value, and determining the angle corresponding to the second slope as the rotation angle.
Further, the processor 1001 may call the SLAM map quality assessment program stored in the memory 1005, and also perform the following operations:
dividing the corrected SLAM map according to a second preset parameter to obtain a plurality of corresponding second divided areas;
searching pixel points of continuous edges in each second divided area respectively to obtain a second pixel point set, and acquiring coordinates of each second pixel point in the second pixel point set;
clustering the coordinates of second pixel points in each second divided region respectively to obtain a second clustering result;
and acquiring a first cross point set in the corrected SLAM map and coordinates of each first cross point in the first cross point set according to the second clustering result, and screening the first cross point set according to the coordinates of the first cross points and a second preset threshold range to obtain a first target cross point set.
Further, the processor 1001 may call the SLAM map quality assessment program stored in the memory 1005, and also perform the following operations:
dividing the benchmarking SLAM map according to the second preset parameters to obtain a plurality of corresponding third divided areas;
searching pixel points of continuous edges in each third divided area respectively to obtain a third pixel point set, and acquiring coordinates of each third pixel point in the third pixel point set;
clustering the coordinates of each third pixel point in each third divided area respectively to obtain a third clustering result;
and acquiring a second intersection point set in the benchmarking SLAM map and coordinates of each second intersection point in the second intersection point set according to the third clustering result, and screening the second intersection point set according to the coordinates of the second intersection points and the second preset threshold range to obtain a second target intersection point set.
Further, the processor 1001 may call the SLAM map quality assessment program stored in the memory 1005, and also perform the following operations:
comparing the first target cross point set with the second target cross point set to obtain a loss cross point;
calculating a loss area based on the loss intersection and the first target intersection set, calculating a first area corresponding to the corrected SLAM map based on the first target intersection set, and calculating to obtain a mass comparison weight value according to the loss area and the first area;
and calculating a second area corresponding to the benchmarking SLAM map based on the second target cross point set, and calculating to obtain a difference coefficient according to the second area and the first area.
Further, the processor 1001 may call the SLAM map quality assessment program stored in the memory 1005, and also perform the following operations:
performing feature matching on the corrected SLAM map and the benchmarking SLAM map to obtain an image matching value between the corrected SLAM map and the benchmarking SLAM map;
judging whether the image matching value is greater than or equal to a preset threshold value or not;
if the image matching value is greater than or equal to a preset threshold value, executing the following steps: acquiring a first target cross point set in the correction SLAM map, and acquiring a second target cross point set in the calibration SLAM map;
and if the image matching value is smaller than a preset threshold value, generating corresponding first error prompt information.
Further, the processor 1001 may call the SLAM map quality assessment program stored in the memory 1005, and also perform the following operations:
detecting whether the quality comparison weight value is within a third preset threshold range, and detecting whether the difference coefficient is within a fourth preset threshold range;
if the quality contrast weighted value is within a third preset threshold range and the difference coefficient is within a fourth preset threshold range, executing the following steps: calculating a mass matching value based on the mass comparison weight value and the difference coefficient;
and if the quality contrast weight value is not within a third preset threshold range and/or the difference coefficient is not within a fourth preset threshold range, generating corresponding second error prompt information.
Based on the hardware structure, the invention provides various embodiments of the SLAM map quality assessment method.
The invention provides a SLAM map quality assessment method.
Referring to fig. 2, fig. 2 is a flowchart illustrating a first embodiment of the SLAM map quality assessment method according to the present invention.
In this embodiment, the SLAM map quality assessment method includes:
step S10, acquiring a new SLAM map and a benchmarking SLAM map, and performing rotation correction on the new SLAM map to obtain a corrected SLAM map;
in this embodiment, a newly-built SLAM map and a benchmarking SLAM map are obtained first, wherein the newly-built SLAM map may be manually built, and is obtained by manually controlling an AGV body to build a map roughly along an ABCD four-point path in fig. 3 with a fixed pose as a starting point (e.g., 3.1 in fig. 3); or starting a multi-point navigation program of the AGV body to enable the AGV body to reach a position (position and posture) of a specified starting point (such as 3.1 in FIG. 3), then starting a mapping program, setting the starting point as a mapping coordinate origin, sequentially traversing four points of the ABCD, and automatically mapping. Correspondingly, the benchmarking SLAM map is the currently used SLAM map, as shown in FIG. 3, 1.1-1.4 represent walls and columns; 2.1-2.4 represent SLAM map edges; 3.1-3.4 represent map traversal points.
After the new SLAM map and the benchmarking SLAM map are acquired, because the SLAM (simultaneous localization and Mapping, immediate localization and SLAM map construction) map construction is based on the starting point posture as a reference, the whole angle deviation of the SLAM map may be caused by the small deviation of the starting point posture, therefore, after the new SLAM map is acquired, the new SLAM map needs to be rotated and corrected first, so that the corrected SLAM map is acquired. Specifically, the newly-built SLAM map is divided according to a first preset parameter, so that a plurality of corresponding first divided areas are obtained; then, searching pixel points of the continuous edge in each first partition area respectively, marking the pixel points as a first pixel point set, and traversing each first pixel point in the first pixel point set to obtain the geometric area and the slope information of the continuous edge in each first partition area; and screening the first partitioned area based on the geometric area, the slope information and a first preset threshold range to obtain a first target partitioned area, further obtaining the slope in the corresponding slope information in the first target partitioned area, clustering the slope to obtain a first clustering result, determining a rotation angle according to the first clustering result, and finally, performing rotation correction on the newly-built SLAM map according to the rotation angle and a preset rotation direction by taking a preset coordinate origin as a rotation circle center to obtain a corrected SLAM map. Specific implementation can be referred to the second embodiment described below.
Step S20, acquiring a first target cross point set in the correction SLAM map, and acquiring a second target cross point set in the benchmarking SLAM map;
after the rotation correction is performed to obtain the corrected SLAM map, a first target intersection point set (namely, a set of peripheral intersection points in the corrected SLAM map) in the corrected SLAM map is obtained, and a second target intersection point set (namely, a set of peripheral intersection points in the corrected SLAM map) in the target SLAM map is obtained by the same method. The following describes an example of correcting the acquisition of the first target intersection set in the SLAM map for the acquisition of the target intersection set. Dividing the corrected SLAM map according to a second preset parameter to obtain a plurality of corresponding second divided areas; then, searching pixel points of continuous edges in each second divided area respectively to obtain a second pixel point set, and acquiring coordinates of each second pixel point in the second pixel point set; and clustering the coordinates of each second pixel point in the second divided area to obtain a second clustering result, acquiring and correcting the first intersection point set in the SLAM map and the coordinates of each first intersection point in the first intersection point set according to the second clustering result, and screening from the first intersection point set to obtain a first target intersection point set according to the coordinates of the first intersection points and a second preset threshold range. Specific implementation can be referred to the third embodiment described below.
Step S30, calculating a mass contrast weight value and a difference coefficient between the corrected SLAM map and the targeting SLAM map based on the first target intersection set and the second target intersection set, and calculating a mass matching value based on the mass contrast weight value and the difference coefficient.
And finally, calculating a quality contrast weight value (marked as K) and a difference coefficient (marked as S) between the corrected SLAM map and the benchmarking SLAM map based on the first target intersection set and the second target intersection set, wherein the quality contrast weight value K is obtained by the following steps: comparing the first target cross point set with the second target cross point set to obtain a loss cross point; then, a loss area is calculated based on the loss intersection and a first target intersection in the first target intersection set, a first area corresponding to the modified SLAM map is calculated based on the first target intersection in the first target intersection set (denoted as S1), and a mass contrast weight value is calculated from the loss area and the first area. Wherein the mass contrast weight K is the loss area/first area. The obtaining process of the difference coefficient S is as follows: a second area corresponding to the target SLAM map is calculated based on a second target intersection in the second set of target intersections, wherein the second area refers to an area of a polygon formed by the second target intersections in the second set of target intersections. After the second area is obtained (denoted as S2), a difference coefficient S is calculated from the second area S2 and the first area S1, and accordingly, S ═ S2-S1 |/S2. After the mass contrast weight value K and the difference coefficient S are calculated, a mass matching value V is calculated based on the mass contrast weight value K and the difference coefficient S. Specifically, V ═ 1-K ═ 1-S.
The embodiment of the invention provides a SLAM map quality evaluation method, which comprises the steps of obtaining a newly-built SLAM map and a benchmarking SLAM map, and performing rotation correction on the newly-built SLAM map so as to obtain a corrected SLAM map; then acquiring a first target cross point set in the correction SLAM map, and acquiring a second target cross point set in the benchmarking SLAM map; and then calculating to obtain a quality contrast weight value and a difference coefficient between the corrected SLAM map and the benchmarking SLAM map based on the first target cross point set and the second target cross point set, and finally calculating to obtain a quality matching value based on the quality contrast weight value and the difference coefficient. By the mode, the quality of the SLAM map can be intelligently and quantitatively evaluated, a worker can directly judge the quality of the newly-built SLAM map according to the quality matching value without manually checking and evaluating the newly-built SLAM map, so that the quality checking time of the newly-built SLAM map can be saved, the checking efficiency is improved, and meanwhile, compared with the prior art, the problem that the accuracy of the checking result is poor due to human errors can be avoided, namely, the accuracy of the quality checking of the SLAM map can be improved.
Further, based on the above-described first embodiment, a second embodiment of the SLAM map quality evaluation method of the present invention is proposed. In the present embodiment, step S10 includes:
step a1, dividing the newly-built SLAM map according to a first preset parameter to obtain a plurality of corresponding first divided areas;
in this embodiment, since the SLAM map construction is based on the starting point posture as a reference, the whole angle deviation of the SLAM map may be caused by a slight deviation of the starting point posture, and therefore, after the new SLAM map is acquired, the rotation correction of the new SLAM map is required. Specifically, the newly-built SLAM map is divided according to a first preset parameter to obtain a plurality of corresponding first divided areas, where the first preset parameter may be 100pix × 100pix, and since the accuracy of the SLAM map scanned by the radar is generally in a range of 1 pix about 5cm × 5cm, the corresponding first divided area is equivalent to 5m of an actual SLAM map, of course, the first preset parameter may be preset according to an actual situation, and is not limited herein. For example a drawingIn 4, a first divided region S obtained by partial division is shown1
A2, searching pixel points of continuous edges in each first partition area respectively to obtain a first pixel point set, and traversing each first pixel point in the first pixel point set to obtain the geometric area and the slope information of the continuous edges in each first partition area;
then, searching pixel points of continuous edges (such as L in fig. 4) in each first partition area respectively to obtain a first pixel point set, traversing each first pixel point in the first pixel point set, and accumulating the area of each first pixel point to obtain the geometric area of the continuous edges in each first partition area; and simultaneously obtaining the slope information of the continuous edges in each first partition area through a trend function. It should be noted that, if the pixel points in the first partition area can form a straight line, the obtained slope information is the slope of the straight line; if the pixel points in the first divided region form a broken line, the obtained slope information is 'no slope'. For example, the first pixel in the first pixel set in the first divided region at (B) in fig. 4 forms a broken line, and the corresponding slope information is the absence of slope. For the searching of the pixel points, because the newly-built SLAM map is usually a processed gray scale map and only includes the pixel points with the pixel values of 0 and 1, wherein the pixel point with the pixel value of 0 represents the background of the SLAM map, and the pixel point with the pixel value of 1 represents the edge point (such as the wall, the pillar edge, and the like), when the pixel points with continuous edges are searched, the pixel point with the pixel value of 1 can be obtained by traversing the pixel values of the pixel points.
Furthermore, it should be noted that "first" in the first pixel point set is only for convenience of distinguishing from the pixel points involved later, i.e. for descriptive purposes only, and is not to be understood as indicating or implying its relative importance or implicitly indicating the number of indicated technical features.
A3, screening the first divided area based on the geometric area, the slope information and a first preset threshold range to obtain a first target divided area;
after the geometric area and the slope information of the continuous edges in each first divided area are obtained, the first divided areas are screened based on the geometric area, the slope information and a first preset threshold range, and a first target divided area is obtained. Specifically, the first target segment region is obtained by screening a continuous edge whose geometric area is within a first predetermined threshold range, where the first predetermined threshold range may be set to 10 to 15pix (inclusive), and the slope information is a slope. For example, in fig. 4 (a), the geometric area of the continuous edge in the first divided region is not within the first preset threshold range but is screened, i.e., the first divided region is not within the first target divided region.
A4, acquiring the slope of the slope information corresponding to the first target division region, clustering the slope to obtain a first clustering result, and determining the rotation angle according to the first clustering result;
and acquiring the slope in the slope information corresponding to the first target division region, clustering the slope to obtain a first clustering result, and determining the rotation angle according to the first clustering result. Wherein the step of determining the rotation angle according to the first clustering result comprises:
a41, acquiring slope sets of a first preset rank according to the first clustering result, and calculating the slope average value of each slope set;
and after acquiring the slope corresponding to each linear equation and clustering, acquiring a slope set of a first preset rank according to a first clustering result, and calculating the slope average value of each slope set. The first preset ranking can be set as the top 4, and if no 4 types are clustered, the slope set of the top 4 is the slope set obtained by all clustering.
Step a42, judging whether a vertical combination exists according to the slope average value of each slope set;
step a43, if a vertical combination exists, obtaining a slope average value corresponding to the vertical combination, recording the slope average value as a first slope average value, and determining the maximum value in the angles corresponding to the first slope average value as a rotation angle;
step a44, if there is no vertical combination, obtaining the slope average value corresponding to the slope set of the first rank in the first clustering result, recording as the second slope average value, and determining the angle corresponding to the second slope as the rotation angle.
After the slope average value of each slope set is obtained through calculation, whether vertical combination exists or not is judged according to the slope average value of each slope set, namely whether the product of the two slope average values is-1 or is close to-1 (within a certain range) or not is detected. If the vertical combination exists, obtaining slope average values corresponding to the vertical combination, and recording the slope average values as first slope average values, wherein the first slope average values comprise 2 values, and the corresponding angles also have 2 values, and then determining the maximum value of the angles corresponding to the first slope average values as the rotation angle. If the vertical combination does not exist, obtaining an average value of the slopes corresponding to the slope set of the first rank in the first clustering result, and recording the average value as a second average value of the slopes.
And a5, taking a preset coordinate origin as a rotation circle center, and performing rotation correction on the newly-built SLAM map according to the rotation angle and a preset rotation direction to obtain a corrected SLAM map.
And after the rotation angle is determined, performing rotation correction on the newly built SLAM map according to the rotation angle and the preset rotation direction by taking the preset coordinate origin as the rotation circle center to obtain a corrected SLAM map. For example, the new SLAM map is obtained by starting the mapping program with 3.1 (i.e., point a) in the peer SLAM map of fig. 3 as a starting point and traversing B, C, D, and then the new SLAM map of fig. 4 is rotationally corrected with the point a as a center of rotation according to the rotation angle and the preset rotation direction determined above, so as to obtain a corrected SLAM map (as shown in fig. 5). The preset rotating direction can be clockwise or counterclockwise, and is set according to actual conditions.
By the mode, the rotation angle of the newly-built SLAM map required to be rotationally corrected can be determined, the newly-built SLAM map is rotationally corrected, the corrected SLAM map is obtained, quality matching comparison between the corrected SLAM map and the target SLAM map is conveniently carried out subsequently, the quality matching value between the corrected SLAM map and the target SLAM map is obtained, and the accuracy of quality evaluation of the SLAM map is improved.
Further, based on the above-described first embodiment, a third embodiment of the SLAM map quality evaluation method of the present invention is proposed. In this embodiment, the step of "acquiring the first target intersection point set in the modified SLAM map" includes:
b1, dividing the corrected SLAM map according to a second preset parameter to obtain a plurality of corresponding second divided areas;
in this embodiment, the modified SLAM map is first divided according to a second preset parameter, so as to obtain a plurality of corresponding second divided regions, where the second preset parameter may be 40pix × 40pix, and the corresponding second divided regions correspond to 2m × 2m of the actual SLAM map, and of course, the second preset parameter may be preset according to actual situations, and is not used to limit the present invention. For example, in fig. 5, a second divided region S obtained by partial division is shown2
B2, searching pixel points of continuous edges in each second divided area respectively to obtain a second pixel point set, and acquiring coordinates of each second pixel point in the second pixel point set;
then, the pixel points of the continuous edge are searched in each second divided region, respectively, to obtain a second pixel point set, and the coordinates of each second pixel point in the second pixel point set are obtained, where the searching method of the second pixel point set is the same as the searching method of the first pixel point set, and reference may be made to the second embodiment. Similarly, the term "second" in the second set of pixels is merely used for convenience to distinguish from the first set of pixels mentioned above, i.e., for descriptive purposes only, and has no other essential meaning.
B3, clustering the coordinates of the second pixel points in the second divided areas respectively to obtain a second clustering result;
step b4, obtaining the first intersection point set in the modified SLAM map and the coordinates of each first intersection point in the first intersection point set according to the second clustering result, and obtaining a first target intersection point set by screening from the first intersection point set according to the coordinates of the first intersection point and a second preset threshold range.
After the coordinates of the second pixel points in the second pixel point set are obtained, the coordinates of the second pixel points in the second divided areas are clustered respectively to obtain a second clustering result, and then the coordinates of the first cross point set and the first cross points in the first cross point set in the modified SLAM map are obtained according to the second clustering result. Specifically, coordinate sets of 2 top ranked coordinates in each second divided region in the second clustering result are obtained, the total number of pixel points in the corresponding second divided region is counted, then x coordinates and y coordinates (indicating that two edges which are vertical and horizontal intersected exist in the second divided region) which are more than 90% of the total number of the pixel points in the corresponding second divided region are respectively taken out from the 2 coordinate sets, and then the average value x of the x coordinates is respectively calculated according to the 2 coordinate setsaveAnd the average y of the y coordinatesaveI.e. obtaining the coordinates (x) of the intersection points in the second divided areaave,yave). For example, as shown in fig. 5, the intersection satisfying the condition in each of the second divided regions, i.e., the first intersection (P shown in fig. 5) can be obtained according to the above-described method11) Wherein a first target intersection in the first set of target intersections belongs to the first intersection.
After the first cross point set and the coordinates of each first cross point in the first cross point set are obtained, the first target cross point set is obtained through screening from the first cross point set according to the coordinates of the first cross points and a second preset threshold range. Specifically, the maximum value x in the x coordinate may be obtained from the coordinates of the first intersection pointmaxAnd the minimum value xminMaximum value y in y coordinatemaxAnd the minimum value yminThen, according to a second preset threshold range, determining a corresponding x coordinate range and y coordinate range, and screening the first intersection points to obtain intersection points with x coordinates and y coordinates both within the x coordinate range and the y coordinate range, which are the first target intersection points (P shown in fig. 5)12) All the first target intersections constitute first target intersectionsAnd (5) point collection. Wherein the second preset threshold range includes a preset x coordinate threshold range and a preset y coordinate threshold range, for example, the preset x coordinate threshold range is within 1, the preset y coordinate threshold range is within 2, and the corresponding x coordinate range [ x coordinate ] can be determinedmin-1,xmin+1]、[xmax-1,xmax+1]Y coordinate range of [ ymin-1, ymin+1]、[ymax-1,ymax+1]。
Correspondingly, the step of acquiring the second target cross point set in the benchmarking SLAM map comprises the following steps:
b5, dividing the benchmarking SLAM map according to the second preset parameters to obtain a plurality of corresponding third divided areas;
b6, searching pixel points of continuous edges in each third divided area respectively to obtain a third pixel point set, and acquiring coordinates of each third pixel point in the third pixel point set;
b7, clustering the coordinates of each third pixel point in each third divided area respectively to obtain a third clustering result;
step b8, obtaining a second intersection point set in the benchmarking SLAM map and coordinates of each second intersection point in the second intersection point set according to the third clustering result, and obtaining a second target intersection point set through screening from the second intersection point set according to the coordinates of the second intersection points and the second preset threshold range.
Correspondingly, a second target cross point set in the target SLAM map is obtained by the same method, namely, the target SLAM map is divided according to a second preset parameter to obtain a plurality of corresponding third divided areas; searching pixel points of continuous edges in each third divided area respectively to obtain a third pixel point set, and acquiring coordinates of each third pixel point in the third pixel point set; and then, clustering the coordinates of each third pixel point in each third partition area respectively to obtain a third clustering result, further obtaining a second cross point set in the benchmarking SLAM map and the coordinates of each second cross point in the second cross point set according to the third clustering result, and screening from the second cross points to obtain a second target cross point set according to the coordinates of the second cross points and a second preset threshold range. The specific implementation process is similar to the above-described acquisition process of correcting the first target intersection point set in the SLAM map, and reference may be made to the above-described embodiment.
Further, based on the above-described first embodiment, a fourth embodiment of the SLAM map quality evaluation method of the present invention is proposed. In this embodiment, the step of "calculating a mass contrast weight value and a difference coefficient between the modified SLAM map and the benchmarking SLAM map based on the first target intersection set and the second target intersection set" includes:
step c1, comparing the first target cross point set with the second target cross point set to obtain a loss cross point;
in this embodiment, after a first target intersection point set in the modified SLAM map is acquired and a second target intersection point set in the benchmarking SLAM map is acquired, the first target intersection point set and the second target intersection point set are compared to obtain a loss intersection point. Specifically, whether a point within a preset range from a second target intersection point in a second target intersection point set exists is searched for in a first target intersection point set of the modified SLAM map, and then a loss intersection point is determined according to a search result and the second target intersection point set. For example, when the number of second target intersections in the second target intersection set in the peer SLAM map includes 4, only 3 intersections corresponding to the second target intersection set are found in the first target intersection set in the modified SLAM map, and one intersection is missing.
Step c2, calculating a loss area based on the loss intersection and the first target intersection set, calculating a first area corresponding to the modified SLAM map based on the first target intersection set, and calculating a mass contrast weight value according to the loss area and the first area;
then, a loss area is calculated based on the loss intersection and a first target intersection in the first target intersection set, a first area corresponding to the modified SLAM map is calculated based on the first target intersection in the first target intersection set (denoted as S1), and a mass contrast weight value is calculated from the loss area and the first area. Wherein the mass contrast weight K is the loss area/first area.
When the first target cross point set is compared with the second target cross point set, and the number of the corresponding cross points between the first target cross point set and the second target cross point set is found to be more than 3, the first area is calculated according to the polygonal area formed by the first target cross points in the first target cross point set, and the lost area is calculated according to the difference value between the polygonal area formed by the first target cross points in the first target cross point set and the polygonal area formed by the first target cross points in the first target cross point set. The area of the polygon may be calculated by dividing the polygon formed by the intersection points into triangles and calculating the sum of the areas of the respective triangles.
It should be noted that, when the first target intersection point set is compared with the second target intersection point set, and the number of the corresponding intersection points between the first target intersection point set and the second target intersection point set is found to be 3, the first area is calculated according to the maximum rectangular area formed by the 3 intersection points, and the loss area is calculated according to the difference between the maximum rectangular area formed by the 3 intersection points and the triangular area formed by the 3 intersection points. For example, when only 3 intersections are found, that is, when the number of corresponding intersections between the first target intersection set and the second target intersection set is 3, the loss area is calculated as the difference between the maximum rectangular area formed by the 3 intersections and the triangular area formed by the 3 intersections. The first area is the largest rectangular area formed by 3 intersections.
And when the first target cross point set is compared with the second target cross point set and the number of the corresponding cross points between the first target cross point set and the second target cross point set is found to be less than 3, returning corresponding error prompt information.
Step c3, calculating a second area corresponding to the benchmarking SLAM map based on the second target cross point set, and calculating a difference coefficient according to the second area and the first area.
Then, a second area corresponding to the benchmarking SLAM map is calculated based on a second set of target intersections, where the second area is the area of a polygon formed by second target intersections in the second set of target intersections. After the second area (denoted as S2) is obtained, a difference coefficient S is calculated from the second area S2 and the first area S1, and accordingly, S ═ S2-S1 |/S2.
Further, based on the above embodiments, a fifth embodiment of the SLAM map quality evaluation method of the present invention is proposed. In this embodiment, referring to fig. 6, before step S20, the SLAM map quality assessment method further includes:
step S40, performing feature matching on the correction SLAM map and the benchmarking SLAM map to obtain an image matching value between the correction SLAM map and the benchmarking SLAM map;
step S50, determining whether the image matching value is greater than or equal to a preset threshold;
if the image matching value is greater than or equal to the preset threshold, executing step S20: acquiring a first target cross point set in the correction SLAM map, and acquiring a second target cross point set in the calibration SLAM map;
if the image matching value is smaller than the preset threshold, executing step S60: and generating corresponding first error prompt information.
In this embodiment, after the new SLAM map is rotated and corrected to obtain the corrected SLAM map, the corrected SLAM map and the target SLAM map may be compared by image matching to verify whether the angle and the rough contour edge of the rotated corrected SLAM map substantially match the target SLAM map, that is, to preliminarily detect the quality of the new SLAM map.
Specifically, the feature matching is performed on the corrected SLAM map and the target SLAM map to obtain an image matching value between the corrected SLAM map and the target SLAM map, wherein the feature matching process may use a general OpenCV (open source computer vision Library) feature matching algorithm, for example, a kNN (K-Nearest Neighbor) algorithm, a Brute-Force (violence) matching algorithm, a FLANN (Fast approximation Neighbor Search function Library) algorithm, and the specific feature matching process and the image matching value obtaining process are similar to those of the prior art and are not described herein again. Then, it is determined whether the image matching value is greater than or equal to a preset threshold, where the preset threshold may be set to 90% -99% (including an end point), preferably to 95%, and may also be set in advance according to actual needs.
If the image matching value is judged to be larger than or equal to the preset threshold value, the quality of the newly-built SLAM map is preliminarily judged to be within the acceptable range, at this time, the subsequent steps can be continuously executed, namely a first target cross point set in the corrected SLAM map is obtained, a second target cross point set in the benchmarking SLAM map is obtained, a quality comparison weight value and a difference coefficient between the corrected SLAM map and the benchmarking SLAM map are obtained through calculation based on the first target cross point set and the second target cross point set, a quality matching value is obtained through calculation based on the quality comparison weight value and the difference coefficient, and the specific execution process can refer to the corresponding embodiment.
If the image matching value is smaller than the preset threshold value, the approximate matching degree of the corrected SLAM map and the comparative SLAM map is not achieved, the quality of the newly-built SLAM map is preliminarily judged to be out of the acceptable range, at the moment, the subsequent steps do not need to be executed, corresponding first error prompt information is directly generated and displayed or sent to the corresponding preset working end to inform corresponding workers, and the quality of the newly-built SLAM map is out of the acceptable range through the preliminary matching judgment.
Through the method, whether the angle and the rough outline edge of the corrected SLAM map obtained through rotation are roughly matched with the calibration SLAM map or not can be preliminarily verified, namely whether the quality of the newly-built SLAM map is within an acceptable range or not is preliminarily judged, when the quality is not within the acceptable range, error prompt is timely carried out, and the subsequent quality evaluation process is stopped, so that invalid calculation processing is prevented from occupying server resources.
Further, based on the above embodiments, a sixth embodiment of the SLAM map quality evaluation method of the present invention is proposed. In this embodiment, before the step "calculating a quality matching value based on the quality contrast weight value and the difference coefficient", the SLAM map quality assessment method further includes:
step A, detecting whether the quality contrast weight value is within a third preset threshold range, and detecting whether the difference coefficient is within a fourth preset threshold range;
if the quality contrast weighted value is within a third preset threshold range and the difference coefficient is within a fourth preset threshold range, executing the following steps: calculating a mass matching value based on the mass comparison weight value and the difference coefficient;
if the mass contrast weight value is not within a third preset threshold range and/or the difference coefficient is not within a fourth preset threshold range, executing step B: and generating corresponding second error prompt information.
In this embodiment, after the mass contrast weight value and the difference coefficient between the modified SLAM map and the calibration SLAM map are calculated, it may be detected whether the mass contrast weight value and the difference coefficient are both within the corresponding preset threshold range to determine whether it is necessary to continue the subsequent evaluation process.
Specifically, whether the mass comparison weight value K is within a third preset threshold range or not is detected, and whether the difference coefficient S is within a fourth preset threshold range or not is detected, wherein the third preset threshold range may be set to K less than or equal to 5%, and the fourth preset threshold range may be set to S less than or equal to 5%.
If the quality contrast weight value K is detected to be within the third preset threshold range and the difference coefficient S is detected to be within the fourth preset threshold range, the two parameters K and S both meet the corresponding requirements, and at the moment, the following steps are continuously executed: and calculating to obtain a mass matching value based on the mass comparison weight value and the difference coefficient. The specific implementation can refer to the fourth embodiment described above.
If the quality comparison weight value K is not in the third preset threshold range and/or the difference coefficient S is not in the fourth preset threshold range, namely at least one parameter does not meet the corresponding requirement, at the moment, the subsequent steps are not required to be executed, corresponding second error prompt information is directly generated and displayed or sent to the corresponding preset working end to inform corresponding workers that the related quality evaluation parameters (the quality comparison weight value K and/or the difference coefficient S) do not meet the requirement when the quality comparison weight value K is not in the corresponding preset threshold range.
It should be noted that, in specific implementation, the calculation of the quality comparison weight value K and the difference coefficient S generally has a sequence, and when a certain quality evaluation parameter is obtained by calculation, whether the certain quality evaluation parameter is within a corresponding preset threshold range may be detected, and then whether another quality evaluation parameter is calculated or not is determined according to a determination result, and a subsequent process is executed. For example, when the mass comparison weight value K is obtained by calculation, if it is detected that the mass comparison weight value K is not within the third preset threshold range, the difference coefficient S does not need to be calculated, and an error prompt is timely performed to avoid that subsequent invalid calculation processing occupies server resources.
By the method, whether the subsequent evaluation process is necessary to be continuously executed or not can be determined by detecting whether the quality comparison weighted value K and the difference coefficient S are both in the corresponding preset threshold range or not, if any one of the quality comparison weighted value K and the difference coefficient S is not in the corresponding preset threshold range, an error prompt is timely carried out, the subsequent quality evaluation process is stopped, and therefore the server resources are prevented from being occupied by invalid calculation processing.
The present invention also provides a computer-readable storage medium having stored thereon a SLAM map quality assessment program which, when executed by a processor, implements the steps of the SLAM map quality assessment method according to any of the above embodiments.
The specific embodiment of the computer-readable storage medium of the present invention is substantially the same as the embodiments of the aforementioned SLAM map quality assessment method, and will not be described herein again.
It should be noted that, in this document, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or system that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or system. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other like elements in a process, method, article, or system that comprises the element.
The above-mentioned serial numbers of the embodiments of the present invention are merely for description and do not represent the merits of the embodiments.
Through the above description of the embodiments, those skilled in the art will clearly understand that the method of the above embodiments can be implemented by software plus a necessary general hardware platform, and certainly can also be implemented by hardware, but in many cases, the former is a better embodiment. Based on such understanding, the technical solution of the present invention may be embodied in the form of a software product, which is stored in a storage medium (e.g., ROM/RAM, magnetic disk, optical disk) as described above and includes instructions for enabling a terminal device (e.g., a mobile phone, a computer, a server, an air conditioner, or a network device) to execute the method according to the embodiments of the present invention.
The above description is only a preferred embodiment of the present invention, and not intended to limit the scope of the present invention, and all modifications of equivalent structures and equivalent processes, which are made by the contents of the present specification and drawings, or used directly or indirectly in other related fields, are included in the scope of the present invention.

Claims (10)

1. A SLAM map quality assessment method, characterized by comprising the steps of:
acquiring a newly-built SLAM map and a benchmarking SLAM map, and performing rotation correction on the newly-built SLAM map to obtain a corrected SLAM map;
acquiring a first target cross point set in the correction SLAM map, and acquiring a second target cross point set in the benchmarking SLAM map;
and calculating a quality contrast weight value and a difference coefficient between the correction SLAM map and the benchmarking SLAM map based on the first target intersection set and the second target intersection set, and calculating a quality matching value based on the quality contrast weight value and the difference coefficient.
2. The method for quality assessment of a SLAM map of claim 1, wherein said step of performing a rotation correction on said newly created SLAM map to obtain a corrected SLAM map comprises:
dividing the newly-built SLAM map according to a first preset parameter to obtain a plurality of corresponding first divided areas;
searching pixel points of continuous edges in each first partition area respectively to obtain a first pixel point set, and traversing each first pixel point in the first pixel point set to obtain the geometric area and slope information of the continuous edges in each first partition area;
screening the first divided area based on the geometric area, the slope information and a first preset threshold range to obtain a first target divided area;
acquiring a slope in slope information corresponding to the first target division region, clustering the slope to obtain a first clustering result, and determining a rotation angle according to the first clustering result;
and performing rotation correction on the newly-built SLAM map according to the rotation angle and the preset rotation direction by taking a preset coordinate origin as a rotation circle center to obtain a corrected SLAM map.
3. The SLAM map quality assessment method of claim 2, wherein the step of determining a rotation angle from the first clustering result comprises:
acquiring slope sets of a first preset rank according to the first clustering result, and calculating a slope average value of each slope set;
judging whether a vertical combination exists according to the slope average value of each slope set;
if the vertical combination exists, obtaining a slope average value corresponding to the vertical combination, recording the slope average value as a first slope average value, and determining the maximum value in the angle corresponding to the first slope average value as a rotation angle;
and if the vertical combination does not exist, acquiring a slope average value corresponding to the slope set of the first rank in the first clustering result, recording the slope average value as a second slope average value, and determining that the angle corresponding to the second slope is the rotation angle.
4. The method for SLAM map quality assessment of claim 1, wherein the step of obtaining a first set of target intersection points in the modified SLAM map comprises:
dividing the corrected SLAM map according to a second preset parameter to obtain a plurality of corresponding second divided areas;
searching pixel points of continuous edges in each second divided area respectively to obtain a second pixel point set, and acquiring coordinates of each second pixel point in the second pixel point set;
clustering the coordinates of second pixel points in each second divided region respectively to obtain a second clustering result;
and acquiring a first cross point set in the corrected SLAM map and coordinates of each first cross point in the first cross point set according to the second clustering result, and screening the first cross point set to obtain a first target cross point set according to the coordinates of the first cross points and a second preset threshold range.
5. The method of SLAM map quality assessment according to claim 4, wherein the step of obtaining a second set of target intersection points in the benchmarking SLAM map comprises:
dividing the benchmarking SLAM map according to the second preset parameters to obtain a plurality of corresponding third divided areas;
searching pixel points of continuous edges in each third divided area respectively to obtain a third pixel point set, and acquiring coordinates of each third pixel point in the third pixel point set;
clustering the coordinates of each third pixel point in each third divided area respectively to obtain a third clustering result;
and acquiring a second intersection point set in the benchmarking SLAM map and coordinates of each second intersection point in the second intersection point set according to the third clustering result, and screening the second intersection point set to obtain a second target intersection point set according to the coordinates of the second intersection points and the second preset threshold range.
6. The method of SLAM map quality assessment of claim 1, wherein said step of calculating a quality contrast weight value and a difference coefficient between said modified SLAM map and said benchmarking SLAM map based on said first set of target intersections and said second set of target intersections comprises:
comparing the first target cross point set with the second target cross point set to obtain a loss cross point;
calculating a loss area based on the loss intersection and the first target intersection set, calculating a first area corresponding to the corrected SLAM map based on the first target intersection set, and calculating to obtain a mass comparison weight value according to the loss area and the first area;
and calculating a second area corresponding to the benchmarking SLAM map based on the second target cross point set, and calculating to obtain a difference coefficient according to the second area and the first area.
7. The SLAM map quality assessment method of any one of claims 1 to 6, wherein prior to the steps of obtaining a first set of target intersection points in the modified SLAM map and obtaining a second set of target intersection points in the benchmarking SLAM map, the SLAM map quality assessment method further comprises:
performing feature matching on the corrected SLAM map and the benchmarking SLAM map to obtain an image matching value between the corrected SLAM map and the benchmarking SLAM map;
judging whether the image matching value is greater than or equal to a preset threshold value or not;
if the image matching value is greater than or equal to a preset threshold value, executing the following steps: acquiring a first target cross point set in the correction SLAM map, and acquiring a second target cross point set in the benchmarking SLAM map;
and if the image matching value is smaller than a preset threshold value, generating corresponding first error prompt information.
8. The method of any of claims 1 to 6, wherein prior to the step of calculating a quality match value based on the quality contrast weight value and the difference coefficient, the method further comprises:
detecting whether the quality comparison weight value is within a third preset threshold range, and detecting whether the difference coefficient is within a fourth preset threshold range;
if the quality contrast weight value is within a third preset threshold range and the difference coefficient is within a fourth preset threshold range, executing the following steps: calculating to obtain a mass matching value based on the mass comparison weight value and the difference coefficient;
and if the quality contrast weight value is not within a third preset threshold range and/or the difference coefficient is not within a fourth preset threshold range, generating corresponding second error prompt information.
9. A SLAM map quality assessment apparatus, characterized in that it comprises: memory, a processor and a SLAM map quality assessment program stored on the memory and executable on the processor, which when executed by the processor implements the steps of the SLAM map quality assessment method according to any of claims 1 to 8.
10. A computer-readable storage medium, characterized in that the computer-readable storage medium has stored thereon a SLAM map quality assessment program which, when executed by a processor, implements the steps of the SLAM map quality assessment method according to any one of claims 1 to 8.
CN201911092074.1A 2019-11-07 2019-11-07 SLAM map quality assessment method, device and computer readable storage medium Active CN110853008B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911092074.1A CN110853008B (en) 2019-11-07 2019-11-07 SLAM map quality assessment method, device and computer readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911092074.1A CN110853008B (en) 2019-11-07 2019-11-07 SLAM map quality assessment method, device and computer readable storage medium

Publications (2)

Publication Number Publication Date
CN110853008A true CN110853008A (en) 2020-02-28
CN110853008B CN110853008B (en) 2022-10-14

Family

ID=69601243

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911092074.1A Active CN110853008B (en) 2019-11-07 2019-11-07 SLAM map quality assessment method, device and computer readable storage medium

Country Status (1)

Country Link
CN (1) CN110853008B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022078301A1 (en) * 2020-10-12 2022-04-21 广州小鹏自动驾驶科技有限公司 Data processing method and apparatus
CN117292394A (en) * 2023-09-27 2023-12-26 自然资源部地图技术审查中心 Map auditing method and device

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106355197A (en) * 2016-08-24 2017-01-25 广东宝乐机器人股份有限公司 Navigation image matching filtering method based on K-means clustering algorithm
CN110246112A (en) * 2019-01-21 2019-09-17 厦门大学 Three-dimensional point cloud quality evaluating method in the room laser scanning SLAM based on deep learning

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106355197A (en) * 2016-08-24 2017-01-25 广东宝乐机器人股份有限公司 Navigation image matching filtering method based on K-means clustering algorithm
CN110246112A (en) * 2019-01-21 2019-09-17 厦门大学 Three-dimensional point cloud quality evaluating method in the room laser scanning SLAM based on deep learning

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
S¨OREN SCHWERTFEGER 等: "Using a Fiducial Map Metric for Assessing Map Quality in the context of RoboCup Rescue", 《IEEE》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022078301A1 (en) * 2020-10-12 2022-04-21 广州小鹏自动驾驶科技有限公司 Data processing method and apparatus
CN117292394A (en) * 2023-09-27 2023-12-26 自然资源部地图技术审查中心 Map auditing method and device
CN117292394B (en) * 2023-09-27 2024-04-30 自然资源部地图技术审查中心 Map auditing method and device

Also Published As

Publication number Publication date
CN110853008B (en) 2022-10-14

Similar Documents

Publication Publication Date Title
CN110825832B (en) SLAM map updating method, device and computer readable storage medium
CN110853008B (en) SLAM map quality assessment method, device and computer readable storage medium
CN107976194B (en) Environment map adjusting method and device
US12066812B2 (en) Information processing method, information processing system, and program
CN114494453A (en) Automatic loading and unloading method and automatic loading and unloading system based on radar and camera
CN110070581B (en) Double-view positioning method, device and system
AU2024205074A1 (en) Systems and methods for lean ortho correction for computer models of structures
CN113269728B (en) Visual edge-tracking method, device, readable storage medium and program product
CN110619018A (en) Map overlay rarefying method, device, equipment and computer storage medium
CN117670886A (en) Display screen defect detection method, device, equipment and storage medium
CN116778458B (en) Parking space detection model construction method, parking space detection method, equipment and storage medium
CN113902828A (en) Construction method of indoor two-dimensional semantic map with corner as key feature
JP2021137953A (en) Information processing method, information processing system, and program
CN114814875A (en) Robot positioning and image building method and device, readable storage medium and robot
CN112571409B (en) Robot control method based on visual SLAM, robot and medium
CN114241082A (en) Real-time route position rendering optimization method, device, equipment and storage medium
CN112149441A (en) Two-dimensional code positioning control method based on reflector
CN118061205B (en) Mobile robot control method, device, equipment and storage medium
CN117906615B (en) Fusion positioning method and system of intelligent carrying equipment based on environment identification code
WO2023223887A1 (en) Information processing device, information processing method, display control device, display control method
CN117948960A (en) Map updating method, electronic device, storage medium, and computer program product
CN116222537A (en) Error key frame filtering method, device, terminal equipment and storage medium
CN117934342A (en) Method for quickly correcting and cutting standard scale grids
CN114839987A (en) Method, device and equipment for controlling movement of robot and storage medium
CN115980698A (en) Robot mapping method and device and computer readable 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
GR01 Patent grant
GR01 Patent grant