WO2022143713A1 - 一种v-slam地图校验方法、装置及设备 - Google Patents
一种v-slam地图校验方法、装置及设备 Download PDFInfo
- Publication number
- WO2022143713A1 WO2022143713A1 PCT/CN2021/142280 CN2021142280W WO2022143713A1 WO 2022143713 A1 WO2022143713 A1 WO 2022143713A1 CN 2021142280 W CN2021142280 W CN 2021142280W WO 2022143713 A1 WO2022143713 A1 WO 2022143713A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- map node
- map
- image feature
- positioning data
- score
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 141
- 238000012795 verification Methods 0.000 title claims abstract description 96
- 238000011156 evaluation Methods 0.000 claims abstract description 138
- 230000001502 supplementing effect Effects 0.000 claims abstract description 9
- 238000004458 analytical method Methods 0.000 claims description 79
- 238000004422 calculation algorithm Methods 0.000 claims description 53
- 230000008569 process Effects 0.000 claims description 53
- 238000001514 detection method Methods 0.000 claims description 45
- 230000011218 segmentation Effects 0.000 claims description 40
- 239000000047 product Substances 0.000 claims description 31
- 238000004590 computer program Methods 0.000 claims description 14
- 230000033001 locomotion Effects 0.000 claims description 10
- 239000013589 supplement Substances 0.000 claims description 8
- 230000009469 supplementation Effects 0.000 claims description 8
- 238000012217 deletion Methods 0.000 claims description 7
- 230000037430 deletion Effects 0.000 claims description 7
- 238000013441 quality evaluation Methods 0.000 claims description 5
- 230000002093 peripheral effect Effects 0.000 claims description 4
- 238000011077 uniformity evaluation Methods 0.000 claims description 3
- 238000001303 quality assessment method Methods 0.000 claims description 2
- 238000004364 calculation method Methods 0.000 description 5
- 230000002159 abnormal effect Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000003190 augmentative effect Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000004807 localization Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000003709 image segmentation Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/20—Instruments for performing navigational calculations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
Definitions
- the present invention relates to the technical field of computer vision, in particular to a V-SLAM map verification method, device and equipment.
- V-SLAM Vision—Simultaneous Localization and Mapping, vision-based real-time localization and map construction
- V-SLAM is a solution that uses the camera configured by the robot to collect the scene image, and then locates and navigates the robot in real time by matching the scene image with the pre-generated V-SLAM map.
- a V-SLAM map consists of multiple map nodes, and a map node is the smallest data unit that constitutes a V-SLAM map.
- each map node corresponds to a set of image feature points. If there are wrong map nodes or map nodes with low accuracy in the V-SLAM map, it will cause abnormal positioning and navigation. Therefore, there is a need to provide a solution that can verify the accuracy of V-SLAM maps.
- the V-SLAM map is different from the general electronic map.
- each map node corresponds to geographic location information, so whether the content displayed on the electronic map is accurate can be checked based on the geographic location information corresponding to each map node.
- each map node in the V-SLAM map does not correspond to geographic location information, but only corresponds to a set of image feature points. Therefore, this scheme cannot be used to verify the accuracy of the V-SLAM map.
- the purpose of the embodiments of the present invention is to provide a V-SLAM map verification method, device and device, so as to provide a solution capable of verifying the accuracy of the V-SLAM map.
- an embodiment of the present invention provides a V-SLAM map verification method, including:
- the map node is deleted, and the first preset interval, the second preset interval and the third preset interval are consecutive and do not overlap.
- an embodiment of the present invention further provides a V-SLAM map verification device including: a first acquisition module, an evaluation module, a first determination module and a deletion module, and further includes: a supplementation module and/or a reconstruction module; in,
- the first acquisition module is used to acquire, for each map node in the V-SLAM map, the image feature point corresponding to the map node;
- an evaluation module configured to evaluate the image feature points to obtain an evaluation score; if the evaluation score is located in the first preset interval, trigger the first determination module; if the evaluation score is located in the second preset interval, then Trigger the supplementation module and/or the reconstruction module; if the evaluation score is located in the third preset interval, trigger the deletion module, the first preset interval, the second preset interval and the third preset interval are consecutive in sequence and do not overlap;
- a first determination module used to determine that the map node has passed the verification
- the supplementary module is used to supplement the map node
- the reconstruction module is used to reconstruct the map node
- the delete module is used to delete this map node.
- an embodiment of the present invention also provides an electronic device, including a processor and a memory;
- the processor is configured to implement any one of the above V-SLAM map verification methods when executing the program stored in the memory.
- FIG. 1 is a first schematic flowchart of a V-SLAM map verification method provided by an embodiment of the present invention
- FIG. 2 is a schematic diagram of various image segmentation methods provided by an embodiment of the present invention.
- FIG. 3 is a second schematic flowchart of a V-SLAM map verification method provided by an embodiment of the present invention.
- FIG. 4 is a third schematic flowchart of a V-SLAM map verification method provided by an embodiment of the present invention.
- FIG. 5 is a schematic structural diagram of a V-SLAM map verification device provided by an embodiment of the present invention.
- FIG. 6 is a schematic structural diagram of an electronic device according to an embodiment of the present invention.
- the embodiments of the present invention provide a V-SLAM map verification method, apparatus, electronic device, computer-readable storage medium, and computer program product.
- the method and apparatus can be applied to various electronic devices, including those capable of Mobile smart devices, such as robots, are not specifically limited.
- the V-SLAM map is composed of multiple map nodes.
- the map node is the smallest data unit that composes the V-SLAM map, or the landmarks in the V-SLAM map.
- Each map node corresponds to a location area in the real physical space.
- V-SLAM generally includes a map generation stage and a smart device positioning stage.
- the smart device may be a robot, an AGV (Automated Guided Vehicle), or other mobile smart devices.
- the smart device is able to navigate using V-SLAM maps.
- map generation stage for the location area corresponding to each map node, image acquisition is performed in the location area, and the collected images are analyzed to obtain a set of image feature points, and the set of image feature points corresponds to the map node. storage.
- the smart device positioning stage use the image collector configured in the smart device (such as the camera in the smart device) to collect the scene image, extract the feature points in the scene image, and compare the extracted feature points with the map in the V-SLAM map.
- the image feature points corresponding to the nodes are matched, and the positioning is performed based on the matching results.
- the embodiment of the present invention provides two V-SLAM map verification methods.
- the first V-SLAM map verification method can be applied to the map generation stage, or after the map generation stage, the second V-SLAM map verification method Can be applied to the positioning phase, for example, the trial navigation phase.
- the specific stages of application of the method mentioned here are merely illustrative, and do not limit the embodiments of the present invention.
- V-SLAM map verification method The first V-SLAM map verification method will be described in detail below.
- 1 is a first schematic flowchart of a V-SLAM map verification method provided by an embodiment of the present invention, including:
- a V-SLAM map consists of multiple map nodes, and a map node is the smallest data unit that constitutes a V-SLAM map.
- a map node is the smallest data unit that constitutes a V-SLAM map.
- image acquisition is performed at position 1, and the image collected at position 1 is analyzed to obtain a set of image feature points.
- Position 1 corresponds to a map node. It is stored corresponding to the map node; image collection is performed at position 2, and the image collected at position 2 is analyzed to obtain another set of image feature points.
- Position 2 corresponds to another map node, and the other set of image feature points is combined with The other map node corresponds to storage.
- each map node corresponds to a set of image feature points. In this way, when verifying the V-SLAM map, the image feature points corresponding to each map node in the V-SLAM map can be directly obtained.
- the image feature points mentioned here can be expressed as a data set, each element in the set corresponds to an image feature point, and the value of the element can include the position information, feature value, etc. corresponding to the image feature point, and each element can represent It is in the form of a vector or a matrix, and the specific form is not limited.
- the image feature point may be a feature point extracted by an ORB (Oriented Fast and Rotated Brief, feature extraction and detection) algorithm, or it may be a feature point extracted by other algorithms.
- ORB Oriented Fast and Rotated Brief, feature extraction and detection
- the specific feature extraction algorithm does not Do limit.
- S102 may include: evaluating the distribution uniformity and/or quality of the image feature points to obtain an evaluation score.
- the following is an introduction to evaluating the uniformity of the distribution:
- the uniformity analysis algorithm may be used to calculate the distribution uniformity of the image feature points, and the specific algorithm is not limited.
- the image where the image feature points are located can be segmented by this segmentation method to obtain a plurality of segmented areas; The number of image feature points, the distribution uniformity score corresponding to this segmentation method is calculated; the distribution uniformity evaluation score is obtained by calculating the sum of the distribution uniformity scores corresponding to all segmentation methods.
- the segmentation methods may include: segmentation from the vertical direction, segmentation from the horizontal direction, segmentation in the 45-degree direction, segmentation in the 135-degree direction, and segmentation of the central area and the peripheral area.
- the image where the image feature points are located can be segmented by using this segmentation method to obtain two segmented areas.
- any division manner shown in FIG. 2 may be adopted, or other division manners may also be adopted, and the specific division manner is not limited.
- sd represents the evaluation score of distribution uniformity
- m represents the number of segmentation methods
- i represents the identification of the segmentation method
- Ni represents the case where the i-th segmentation method is used to segment the image where the image feature points are located.
- the number of image feature points in any one of the regions Indicates the average value of the number of image feature points in the two divided regions when the i-th segmentation method is used to segment the image where the image feature points are located. The smaller the sd value, the more uniform the distribution of image feature points.
- the two segmentations The average of the number of image feature points in the region is 700, the difference between the number of image feature points in segmentation region 1 and the average, and the absolute value of the difference between the number of image feature points in segmentation region 2 and the average are the same. is 20, therefore, Ni can be the number of image feature points in any one of the two divided regions.
- the sum of the distribution uniformity scores corresponding to all the division methods is calculated, and the value after the root of the sum of the scores is taken as the evaluation score of the distribution uniformity.
- the sum of the scores can be directly used as the evaluation score of the distribution uniformity.
- the above formula (1) is only for illustration, and does not limit the specific calculation method of the evaluation score of the distribution uniformity.
- corner detection algorithms can be used to evaluate the quality of image feature points, for example, FAST (Features From Accelerated Segment Test, features of accelerated segment test) algorithm, or Harris corner
- FAST Features From Accelerated Segment Test, features of accelerated segment test
- Harris corner The point detection algorithm, etc., the specific algorithm is not limited.
- different corner detection algorithms can be used to evaluate the quality of image feature points, and the quality scores of image feature points corresponding to each corner detection algorithm can be obtained; The quality score of the corresponding image feature points is obtained to obtain the evaluation score.
- the first quality score can be obtained by evaluating the quality of each image feature point by using the first corner detection algorithm
- the second quality score can be obtained by evaluating the quality of each image feature point by using the second corner detection algorithm
- the first quality score and the second quality score are used to obtain quality evaluation scores of image feature points.
- the average value of the first quality score and the second quality score may be used as the quality evaluation score of the image feature points.
- the first quality score and the second quality score may be weighted, and the weighted result may be used as the quality evaluation score of the image feature points.
- the first corner detection algorithm can be used to evaluate the quality of each image feature point to obtain the first score of each image feature point;
- the first score of the target is selected as the quality score of the image feature points corresponding to the first corner detection algorithm, which can be called the first quality score;
- the second corner detection algorithm is used to evaluate the quality of each image feature point. , obtain the second score of each image feature point; by sorting the second score, select the target second score from the second score, as the image feature point corresponding to the second corner detection algorithm
- the quality score which can be referred to as the second quality score.
- an evaluation score can be obtained according to the first score of the target and the second score of the target.
- the first score can be sorted from low to high, or the first score can be sorted from high to low; the second score can be sorted from low to high, or the second score can be sorted from low to high. Sort from high to low; the specific sorting situation is not limited.
- a first score near the middle position can be selected as the target first score; from the sorted second scores, a second score near the middle position can be selected as the target second score.
- the FAST algorithm to evaluate the quality of each image feature point, obtain the first score of each image feature point, sort the first score from high to low, and select the The first score of the 500th image feature point is used as the target first score.
- Use the Harris corner detection algorithm to evaluate the quality of each image feature point, get the second score of each image feature point, sort the second score from high to low, and select the 500th image feature point.
- Second score as the target second score.
- the image feature point ranked 500th in the first score and the image feature point ranked 500th in the second score may be different feature points, or may be the same feature point.
- the first score at the specified position may be selected as the target first score; from the sorted second scores, the second score at the specified position may be selected as the target second score .
- the selected specific position can be set according to actual needs, which is not limited here.
- the distribution uniformity of image feature points can be evaluated to obtain a distribution uniformity score
- the quality of image feature points can be evaluated to obtain a quality score.
- the average of the distribution uniformity score and the quality score can be used as the evaluation score of the image feature points.
- the distribution uniformity score and the quality score can also be weighted, and the weighted result can be used as the evaluation score of the image feature points.
- the distribution uniformity of the image feature points can be evaluated to obtain a distribution uniformity score;
- the first quality score can be obtained by evaluating the quality of each image feature point by using the first corner detection algorithm;
- the two-corner point detection algorithm evaluates the quality of each image feature point to obtain a second quality score; an evaluation score is obtained according to the distribution uniformity score, the first quality score and the second quality score.
- the average value of the distribution uniformity score, the first quality score and the second quality score can be used as the evaluation score of the image feature points.
- the distribution uniformity score, the first quality score and the second quality score may also be weighted, and the weighted result may be used as the evaluation score of the image feature points.
- the distribution uniformity score For example, if the above formula (1) is used to calculate the distribution uniformity score, the more uniform the distribution of image feature points, the lower the distribution uniformity score. If the FAST algorithm or Harris corner detection algorithm is used to evaluate the quality of each image feature point , the higher the quality of the image feature points, the higher the first quality score and the second quality score.
- the product of the distribution uniformity score and the first preset weight may be calculated as the first product; the first quality score and the second quality score and the second pre-set weight may be calculated.
- the product of the weights is set as the second product; the value obtained by subtracting the second product from the first product is calculated as the evaluation score.
- S represents the evaluation score
- ⁇ represents the first preset weight
- ⁇ represents the second preset weight
- Sd represents the distribution uniformity score
- Sf represents the first quality score
- Sd represents the second quality score.
- ⁇ and ⁇ can be set according to the actual situation, and the specific values are not limited.
- the product of the distribution uniformity score and the first preset weight may be calculated as the first product; the product of the first quality score, the second quality score and the second preset weight may be calculated , as the second product; the value obtained by subtracting the first product from the second product is calculated as the evaluation score.
- S represents the evaluation score
- ⁇ represents the first preset weight
- ⁇ represents the second preset weight
- Sd represents the distribution uniformity score
- Sf represents the first quality score
- Sd represents the second quality score.
- ⁇ and ⁇ can be set according to the actual situation, and the specific values are not limited.
- S103 Determine whether the evaluation score is located in the first predetermined interval, the second predetermined interval or the third predetermined interval.
- the first preset interval, the second preset interval and the third preset interval are consecutive in sequence and do not overlap. If it is located in the first preset interval, execute S104; if located in the second preset interval, execute S105; if located in the third preset interval, execute S106.
- the distribution uniformity and/or quality of the image feature points is evaluated to obtain an evaluation score; in this embodiment, the more uniform the distribution of the image feature points, the closer the corresponding evaluation score is to the first prediction.
- An interval is set, and the higher the quality, the closer the corresponding evaluation score is to the first preset interval.
- the first preset interval may be a numerical interval not greater than the first preset threshold
- the second preset interval may be a numerical interval greater than the first preset threshold and less than the second preset threshold
- the third preset interval It can be a numerical value range not less than the second preset threshold
- the first preset threshold is smaller than the second preset threshold.
- the evaluation score is not greater than the first preset threshold, it is determined that the map node has passed the verification; if the evaluation score is greater than the first preset threshold and smaller than the second preset threshold, The map node is supplemented or reconstructed; if the evaluation score is not less than the second preset threshold, the map node is deleted.
- S represents the evaluation score
- T1 represents the first preset threshold
- T2 represents the second preset threshold. If S ⁇ T1, it means that the map node has passed the verification. If S ⁇ T2, it means that the map node has not passed the verification, and the map node can be deleted. If T1 ⁇ S ⁇ T2, it means that the quality of the map node is poor, and the map node can be Map nodes are augmented or rebuilt.
- the first preset interval may be a numerical interval not less than the second preset threshold
- the second preset interval may be a numerical interval greater than the first preset threshold and less than the second preset threshold
- the third preset interval It may be a numerical value range not greater than the first preset threshold
- the first preset threshold is smaller than the second preset threshold.
- the evaluation score is not less than the second preset threshold, it is determined that the map node has passed the verification; if the evaluation score is greater than the first preset threshold and less than the second preset If the evaluation score is not greater than the first preset threshold, the map node is deleted.
- S represents the evaluation score
- T1 represents the first preset threshold
- T2 represents the second preset threshold. If S ⁇ T2, it means that the map node has passed the verification. If S ⁇ T1, it means that the map node has not passed the verification, and the map node can be deleted. If T1 ⁇ S ⁇ T2, it means that the quality of the map node is poor, and the map node can be Map nodes are augmented or rebuilt.
- the corresponding verification pass conditions can be set according to the actual situation.
- the idea of setting the verification pass conditions can be summarized as: the higher the quality of the image feature points, the better the image
- the specific verification conditions are not limited.
- the supplementation can be as follows: setting supplementary nodes near the map node, performing image acquisition in the location area corresponding to the supplementary node, analyzing the collected images to obtain a set of image feature points, and combining the set of image feature points with the supplementary node.
- Node corresponds to storage.
- supplementing the map node may include: determining supplementary map nodes around the map node according to a first preset rule; instructing the smart device to perform image acquisition in a location area corresponding to the supplementary map node, The image collected by the intelligent device is analyzed to obtain image feature points, which are used as first image feature points; the first image feature points and the supplementary map nodes are stored in the V-SLAM map correspondingly.
- the first preset rule may be: determining the supplementary map node at each 20CM before and after the map node.
- the supplementary map node may be determined at the left and right 10CM of the map node, and the specific orientation of the supplementary node and the distance from the original map node are not limited.
- the reconstruction may be: re-acquiring the image in the location area corresponding to the map node, analyzing the collected image to obtain a set of image feature points, and replacing the original image feature point of the map node with the set of image feature points.
- reconstructing the map node includes: determining a reconstructed map node around the map node according to a second preset rule; instructing the smart device to perform image acquisition in the location area corresponding to the reconstructed map node,
- the image collected by the intelligent device is analyzed to obtain image feature points, which are used as second image feature points; the second image feature points and the reconstructed map nodes are stored in the V-SLAM map correspondingly, and the second image feature points are deleted.
- the map node and its corresponding image feature points are stored in the V-SLAM map.
- the second preset rule may be: determining the reconstructed map node at each 20CM before and after the map node.
- the reconstructed map node may also be determined at the left and right 10CM of the map node, and the specific orientation of the reconstructed node and the distance from the original map node are not limited.
- the second preset rule and the first preset rule may be the same or different.
- the second preset interval may be subdivided into a first subinterval and a second subinterval, and if the evaluation score is located in the first subinterval in the second preset interval, the The map node is supplemented; if the evaluation score is located in the second sub-interval in the second preset interval, the map node is reconstructed, and the first sub-interval and the second sub-interval are consecutive and consecutive. Without overlapping, the first sub-interval is closer to the first interval, and the second sub-interval is closer to the third interval.
- FIG. 3 is a second schematic flowchart of the V-SLAM map verification method provided by the embodiment of the present invention, including:
- S301 Obtain a verified V-SLAM map, where the map nodes in the verified V-SLAM map are: at least one of the verified map nodes, the supplemented map nodes, and the reconstructed map nodes kind.
- the verified V-SLAM map obtained in S301 may be a V-SLAM map obtained after verification by applying the embodiment shown in FIG. 1 above.
- the map nodes in the verified V-SLAM map may be at least one of a verified map node, a supplemented map node, and a reconstructed map node.
- S302 Generate a moving path of the smart device, where the moving path includes each map node in the verified V-SLAM map.
- the smart device can be a robot, an AGV (Automated Guided Vehicle), or other smart devices that can move.
- the electronic device that executes the embodiment shown in FIG. 3 may be a background processing device that is communicatively connected to the smart device, and the specific device type is not limited.
- the electronic device implementing the embodiment shown in FIG. 3 will be referred to as the electronic device.
- the electronic device may instruct the smart device to move along the moving path according to a fixed linear velocity and an angular velocity.
- the electronic device may first generate a movement path traversing all map nodes, wherein all map nodes are all map nodes in the verified V-SLAM map. Then instruct the smart device to move along the moving path at a fixed linear velocity and angular velocity.
- the trial run phase can be made smoother, and the obtained trial run data is more suitable for V-SLAM map verification.
- the first positioning data and the second positioning data in the subsequent content are included.
- S303 Instruct the smart device to move along the moving path, and acquire first positioning data corresponding to each map node calculated by the smart device based on the verified V-SLAM map during the moving process.
- the first positioning data corresponding to a map node is: the first positioning data when the smart device is located in a location area corresponding to the map node.
- the electronic device instructs the smart device to move along the moving path, and the smart device can use the verified V-SLAM map for navigation during the movement.
- the first positioning data may be the positioning data during the navigation process of the smart device using the verified V-SLAM map.
- each map node of the verified V-SLAM map is verified based on the positioning data in the navigation process.
- the smart device can use the V-SLAM map to conduct a navigation test run, and based on the positioning data during the test run, each map node of the verified V-SLAM map can be verified again.
- the verification process of each map node in the verified V-SLAM map is similar, and the following steps are all described for one map node.
- Each map node corresponds to a location area in real physical space.
- the positioning data calculated based on the verified V-SLAM map can be obtained.
- the positioning data calculated based on the verified V-SLAM map is referred to as the first positioning data.
- the image collector configured in the smart device can be used to collect scene images.
- the image capture can be performed by a camera configured in the smart device, and the specific image capture device is not limited. Extract the feature points in the scene image, match the extracted feature points with the feature points corresponding to the map nodes in the verified V-SLAM map, and perform positioning based on the matching results.
- the collected scene images can be video frame images, and the feature points in each frame image can be extracted separately, and the extracted feature points can be matched with the feature points corresponding to the map nodes in the verified V-SLAM map. , so that each frame of image corresponds to a positioning result.
- the first positioning data corresponding to one map node includes: the positioning result corresponding to each frame of image, or may also include the confidence level of the positioning result; and the each frame of image is: moving the smart device to the corresponding map node
- the image collector configured in the smart device performs image acquisition for the location area corresponding to the one map node.
- the first positioning data corresponding to a map node includes: a positioning result corresponding to each frame of image and a confidence level of the positioning result; and each frame of image is: the smart device moves to the corresponding map node.
- the image collector configured in the smart device performs image acquisition for the location area corresponding to the one map node.
- in S304 in the first positioning data corresponding to the map node, count the number of frames of images whose positioning result confidence is greater than the fourth preset threshold, as the number of valid frames; determine whether the number of valid frames is not greater than the first preset frame number threshold, obtain the first judgment result as the accuracy analysis result of the first positioning data; or, determine the image collected during the entire process that the smart device passes through the location area corresponding to the map node The total number of frames; calculate the ratio of the effective number of frames to the total number of frames, as the first ratio; determine whether the first ratio is greater than the first preset ratio threshold, and obtain a second judgment result, as the first ratio The results of the accuracy analysis of the positioning data.
- the confidence threshold that is, the fourth preset threshold, may be set according to the actual situation, and the specific value is not limited. If the confidence level is greater than the fourth preset threshold, it means that the positioning result is available, and if the confidence level is not greater than the fourth preset threshold, it means that the positioning result is unavailable.
- the number of frames of images with a confidence level of the positioning result greater than the fourth preset threshold can be counted as the number of valid frames; it is judged whether the number of valid frames is greater than the preset threshold of the number of frames, and the judgment result is used as the number of valid frames.
- the accuracy analysis result of the first positioning data can be determined.
- the number of frames of images with a confidence level of the positioning result greater than the fourth preset threshold can also be counted as the number of valid frames; the images collected during the entire process of the smart device passing through the location area corresponding to the map node can be determined.
- the total number of frames calculate the ratio of the effective number of frames to the total number of frames; determine whether the ratio is greater than the preset ratio threshold, and use the determination result as the accuracy analysis result of the first positioning data.
- the first positioning data corresponding to a map node includes: a positioning result corresponding to each frame of image; and each frame of image is: the smart device moves to a location area corresponding to the one map node when the image collector configured in the smart device collects the image for the location area corresponding to the one map node.
- the number of used frames can be obtained by counting the usage of the positioning result corresponding to each frame of image by the intelligent device;
- the smart device can obtain two positioning results, one is the positioning result based on the verified V-SLAM map, and the other is the positioning result based on the sensor configured by itself.
- the smart device can judge whether the positioning result based on the verified V-SLAM map is accurate. If it is accurate, the positioning result based on the verified V-SLAM map is used. The positioning result obtained by the sensor.
- the smart device it is possible to count the positioning results corresponding to how many frames of images the smart device has used, that is, to count the usage of the positioning results corresponding to each frame of images by the smart device to obtain the number of used frames. In one case, it is determined whether the used frame number is greater than a preset frame number threshold, and the determination result is used as the accuracy analysis result of the first positioning data. Or, in another case, it is also possible to determine the total number of image frames collected by the smart device in the whole process of passing through the location area corresponding to the map node; calculate the ratio of the number of used frames to the total number of frames; determine whether the ratio is greater than A ratio threshold is preset, and the judgment result is used as the accuracy analysis result of the first positioning data.
- the second positioning data corresponding to each map node calculated by the smart device based on the sensors configured by the smart device during the moving process may also be obtained.
- the second positioning data corresponding to a map node is: the second positioning data when the smart device is located in the location area corresponding to the map node.
- the positioning data calculated by the smart device based on the verified V-SLAM map is called the first positioning data
- the positioning data calculated by the smart device based on the sensors configured by itself is called the second positioning data.
- the positional deviation between the first positioning data corresponding to the map node and the second positioning data corresponding to the map node may be determined as the accuracy analysis result of the first positioning data.
- the smart device can obtain two positioning results, one is the positioning result obtained based on the verified V-SLAM map, and the other is the positioning result obtained based on the sensor configured by itself.
- the two positioning results may be compared, that is, the position deviation of the two may be determined, and the position deviation may be used as the accuracy analysis result of the first positioning data.
- the smart device can be judged first whether the smart device goes straight through the map node; if not, then the determining of the position between the first positioning data corresponding to the map node and the second positioning data corresponding to the map node is performed.
- the deviation is a step of the accuracy analysis result of the first positioning data.
- the smart device goes straight through the map node, calculating the travel angle of the smart device during the entire process of passing through the location area corresponding to the map node according to the positioning result; and determining whether the travel angle satisfies the preset angle condition; If it is not satisfied, it is determined that the map node check fails; if it is satisfied, the determination of the positional deviation between the first positioning data corresponding to the map node and the second positioning data corresponding to the map node is performed as the first Steps to analyze the results for the accuracy of the positioning data.
- the smart device can be determined whether the smart device goes straight through the map node according to the movement track of the smart device.
- the acquisition method of the motion trajectory of the smart device is not limited. If it does not pass straight, the above-mentioned embodiment is executed, that is, the position deviation between the first positioning data and the second positioning data is directly determined, and the position deviation is used as the accuracy analysis result of the first positioning data.
- the straight travel angle of the smart device in the entire process of passing through the location area corresponding to the map node is calculated.
- the straight-line angle deviation and/or variance of the smart device during the entire process of passing through the location area corresponding to the map node may be calculated.
- a coordinate system can be preset, and the driving angle of the smart device in this coordinate system can be calculated based on the verified V-SLAM map.
- Each frame of image corresponds to a driving angle, and the average value of the driving angle corresponding to all frame images can be calculated during the entire process of the smart device passing through the location area corresponding to the map node.
- the difference between the travel angle corresponding to the frame of image and the average value of the travel angle is the straight travel angle deviation.
- a variance calculation is performed between the travel angle corresponding to the frame image and the average value of the travel angle, that is, the variance of the straight travel angle is obtained. Alternatively, you can replace the variance here with the standard deviation.
- the calculation deviation threshold and the variance threshold can be set to determine whether the deviation of the straight angle is greater than the deviation threshold, and whether the deviation of the straight angle is greater than the variance threshold, if both are not greater than the threshold. , and then execute the above embodiment to determine the position deviation between the first positioning data and the second positioning data, and use the position deviation as the accuracy analysis result of the first positioning data, otherwise, it is determined that the map node verification fails.
- any one of the above-mentioned implementations may be adopted, or any combination of the above-mentioned implementations may be performed in a logical case.
- the specific combination and The execution order is not limited.
- the number of used frames is obtained by counting the positioning results corresponding to how many frames of images the smart device has used. It is judged whether the number of used frames is greater than the preset frame number threshold, and the judgment result is used as the accuracy analysis result of the first positioning data. In this case, it may be determined that the map node has passed the verification when the number of used frames is greater than the preset number of frames threshold.
- the position deviation between the first positioning data and the second positioning data is determined as the analysis result of the first positioning data.
- the position deviation may be less than a preset value. In the case of the threshold, it is determined that the map node passes the verification.
- the map node can be deleted, and the map node can also be supplemented or rebuilt.
- the supplementation can be as follows: setting supplementary nodes near the map node, performing image acquisition in the location area corresponding to the supplementary node, analyzing the collected images to obtain a set of image feature points, and combining the set of image feature points with the supplementary node.
- Node corresponds to storage.
- the reconstruction may be: re-acquiring the image in the location area corresponding to the map node, analyzing the collected image to obtain a set of image feature points, and replacing the original image feature point of the map node with the set of image feature points.
- a verified V-SLAM map is obtained, and the map nodes in the verified V-SLAM map are: a verified map node, a supplemented map node, a reconstructed map node, and a At least one of the map nodes; generate a moving path of the smart device, and the moving path includes each map node in the verified V-SLAM map; instruct the smart device to move along the moving path, and obtain the information based on the base of the smart device during the movement.
- the first positioning data corresponding to each map node obtained by the verified V-SLAM map calculation; the first positioning data corresponding to one map node is: the first positioning data when the smart device is located in the location area corresponding to the map node; For each map node in the verified V-SLAM map, the accuracy of the first positioning data corresponding to the map node is analyzed to obtain an analysis result; the verification result of the map node is determined based on the analysis result. It can be seen that in this solution, the accuracy of the V-SLAM map is verified according to the positioning data corresponding to the map nodes. In addition, this scheme performs secondary verification on the verified V-SLAM map, which further improves the accuracy of verification.
- the first positioning data corresponding to one map node includes: a positioning result corresponding to each frame of image and a confidence level of the positioning result; and each frame of image is: when the smart device moves to the location area corresponding to the one map node, the The image collector configured in the smart device collects the image for the location area corresponding to the one map node.
- the second positioning data corresponding to each map node calculated by the smart device based on the sensors configured by itself during the moving process is: the second positioning data corresponding to a map node is: the smart device is located in the map node corresponding to the second positioning data.
- the second positioning data for the location area is:
- S304 may include the following steps:
- the number of used frames is obtained by counting the usage of the positioning result corresponding to each frame of image by the smart device;
- S305 includes: judging whether the position deviation is greater than a seventh preset threshold; if not, determining that the map node passes the verification.
- S401 Acquire first positioning data corresponding to a map node, where the first positioning data includes: a positioning result corresponding to each frame of image and a confidence level of the positioning result; and each frame of image is: moving the smart device to a position corresponding to the map node
- the image collector configured in the smart device collects the image for the location area corresponding to the map node.
- S402 Count the number of frames of images whose confidence level of the positioning result is greater than the fourth preset threshold, and use the number of valid frames as the number of valid frames to determine whether the number of valid frames is greater than P1.
- S403 Obtain the number of used frames by counting the usage of the positioning result corresponding to each frame of the image by the smart device; determine whether the number of used frames is greater than P2, if it is greater, execute S404, if not, execute S407.
- S404 Determine whether the smart device goes straight through the map node; if yes, go to S405, and if not, go to S406.
- S405 Calculate the straight-line angle deviation and variance of the smart device in the entire process of passing through the location area corresponding to the map node; determine whether the straight-line angle deviation is greater than P3, and whether the straight-line angle variance is greater than P4; if both are not greater than, go to S406, otherwise go to S407 .
- S406 Determine the position deviation between the positioning result calculated by the smart device based on the verified V-SLAM map and the positioning result calculated by the smart device based on the sensor configured by itself, and determine whether the position deviation is greater than P5, and if greater, Go to S407, and if not greater than, go to S408.
- the combination scheme of the two V-SLAM map verification methods may include: in the map generation stage or after the map generation stage, using the first V-SLAM map verification method to verify the V-SLAM map , delete the map nodes that have not passed the verification, and supplement or rebuild the map nodes with poor quality; then use the second V-SLAM map verification method to verify the V-SLAM map in the positioning stage, and delete the failed verification. Map nodes that have been tested are supplemented or reconstructed with poor quality map nodes.
- the actual operation of the navigation solution depends on the accuracy of the V-SLAM map. If there are abnormal map nodes in the V-SLAM map, such as wrong map nodes, poor quality map nodes, etc. , there will be some positioning anomalies during the navigation process, such as inability to locate, inaccurate positioning, etc. And because there are many coupling factors in the navigation process, it is also difficult to confirm the problem and check the cause of the abnormal positioning.
- the accuracy of the V-SLAM map can be checked before the AGV uses the V-SLAM map in batches, so as to facilitate the subsequent timely repair of the map nodes that have not passed the verification.
- SLAM can reduce the occurrence of abnormal positioning.
- it can improve the performance indicators of the V-SLAM navigation system and improve the product competitiveness of the V-SLAM navigation system. It helps to confirm the problem and check the cause of the positioning anomaly. Compared with the existing solution, it reduces the resources consumed in the problem confirmation and cause investigation.
- the embodiments of the present invention further provide a V-SLAM map verification device, comprising: a first acquisition module, an evaluation module, a first determination module and a deletion module, and further comprising: a supplementary module and/ or rebuild the module.
- the device includes:
- the first acquisition module 501 is used to acquire, for each map node in the V-SLAM map, the image feature point corresponding to the map node;
- An evaluation module 502 configured to evaluate the image feature points to obtain an evaluation score; if the evaluation score is located in a first preset interval, trigger a first determination module; if the evaluation score is located in a second preset interval, Then trigger the supplementation module and/or the reconstruction module; if the evaluation score is located in the third preset interval, then trigger the deletion module, and the first preset interval, the second preset interval and the third preset interval are consecutive in sequence and do not overlap;
- the first determination module 503 is used to determine that the map node has passed the verification
- a supplementing module 504 used for supplementing the map node
- a reconstruction module 505, configured to reconstruct the map node
- a deletion module 506 is used to delete the map node.
- the evaluation module 502 is specifically used for:
- the evaluation module 502 includes:
- a uniformity evaluation sub-module (not shown in FIG. 5 ) is used to perform regional segmentation on the image where the image feature points are located by using this segmentation method for each preset segmentation method to obtain a plurality of segmentation areas; According to the number of image feature points in each segmented area, the distribution uniformity score corresponding to this segmentation mode is calculated; the evaluation score is obtained by calculating the sum of the distribution uniformity scores corresponding to all segmentation modes.
- the plurality of divided areas are two divided areas; the division manner includes any one or more of the following: division from a vertical direction, division from a horizontal direction, division in a 45-degree direction, 135-degree direction is divided, and the central area and the peripheral area are divided.
- the evaluation module 502 includes:
- the quality evaluation sub-module (not shown in Figure 5) is used to evaluate the quality of the image feature points by using different corner detection algorithms respectively, and obtain the quality scores of the image feature points corresponding to each corner detection algorithm; The quality scores of the image feature points corresponding to each corner detection algorithm described above are obtained, and the evaluation scores are obtained.
- the quality assessment sub-module is specifically used for:
- the quality of each image feature point is evaluated, and the first score of each image feature point is obtained; by sorting the first scores, the target first score is selected from the first scores , as the quality score of the image feature points corresponding to the first corner detection algorithm;
- the quality of each image feature point is evaluated, and the second score of each image feature point is obtained; by sorting the second score, the target second score is selected from the second score , as the quality score of the image feature points corresponding to the second corner detection algorithm;
- An evaluation score is obtained based on the quality scores of the image feature points corresponding to each of the corner detection algorithms.
- the evaluation module 502 includes: a first evaluation sub-module, a second evaluation sub-module, a third evaluation sub-module and a fourth evaluation sub-module (not shown in FIG. 5 ), wherein,
- a first evaluation submodule configured to evaluate the distribution uniformity of the image feature points, and obtain a distribution uniformity score, the more uniform the image feature point distribution, the lower the distribution uniformity score;
- the second evaluation sub-module is configured to evaluate the quality of each image feature point by using the first corner detection algorithm to obtain a first quality score, and the higher the quality of the image feature point, the higher the first quality score;
- a third evaluation submodule configured to evaluate the quality of each image feature point by using the second corner detection algorithm to obtain a second quality score, and the higher the quality of the image feature point, the higher the second quality score;
- the fourth evaluation sub-module is used to calculate the product of the distribution uniformity score and the first preset weight as the first product; calculate the difference between the first quality score, the second quality score and the second preset weight.
- the product is taken as the second product; the value obtained by subtracting the second product from the first product is calculated as the evaluation score.
- the supplementing module 504 is specifically configured to supplement the map node if the evaluation score is located in the first sub-interval in the second preset interval;
- the reconstruction module 505 is specifically configured to reconstruct the map node for the map node if the evaluation score is located in the second sub-interval in the second preset interval, and the first sub-interval and the second sub-interval are consecutive and consecutive. Not overlapping, the first subinterval is closer to the first interval, and the second subinterval is closer to the third interval.
- the supplementation module 504 is further configured to determine supplementary map nodes around the map node according to the first preset rule; instruct the intelligent device to perform image acquisition in the location area corresponding to the supplementary map node, The image collected by the device is analyzed to obtain image feature points, which are used as first image feature points; the first image feature points and the supplementary map node are stored in the V-SLAM map correspondingly.
- the reconstruction module 505 is further configured to determine the reconstructed map node around the map node according to the second preset rule; instruct the smart device to perform image acquisition in the location area corresponding to the reconstructed map node, The image collected by the device is analyzed to obtain image feature points, which are used as second image feature points; the second image feature points and the reconstructed map nodes are stored in the V-SLAM map correspondingly, and the V-SLAM is deleted. The map node and its corresponding image feature points stored in the map.
- the apparatus further includes: a second acquisition module, a generation module, a third acquisition module, an analysis module, and a second determination module (not shown in FIG. 5 ), wherein,
- the second acquisition module is used to acquire the verified V-SLAM map, where the map nodes in the verified V-SLAM map are: the verified map node, the supplemented map node, and the reconstructed map at least one of the nodes;
- a generating module for generating a moving path of the smart device, the moving path includes each map node in the verified V-SLAM map;
- a third acquiring module configured to instruct the smart device to move along the moving path, and acquire the first map node corresponding to each map node calculated by the smart device based on the verified V-SLAM map during the moving process positioning data;
- the first positioning data corresponding to a map node is: the first positioning data when the smart device is located in the location area corresponding to the map node;
- an analysis module configured to perform an accuracy analysis on the first positioning data corresponding to the map node for each map node in the verified V-SLAM map to obtain an analysis result
- the second determination module is configured to determine the verification result of the map node based on the analysis result.
- the first positioning data corresponding to a map node includes: a positioning result corresponding to each frame of image and a confidence level of the positioning result; and each frame of image is: the smart device moves to the corresponding map node.
- the image collector configured in the smart device performs image acquisition for the location area corresponding to the one map node;
- the analysis module is specifically used for:
- the first positioning data corresponding to a map node includes: a positioning result corresponding to each frame of image; the each frame of image is: when the smart device moves to the location area corresponding to the one map node, the Obtained by the image collector configured in the smart device performing image collection on the location area corresponding to the one map node;
- the analysis module is also used for:
- the device further includes:
- the fourth acquisition module (not shown in FIG. 5 ) is used to acquire the second positioning data corresponding to each map node calculated by the smart device based on the sensors configured by itself in the moving process; the second positioning data corresponding to a map node
- the data is: the second positioning data when the smart device is located in the location area corresponding to the map node;
- the analysis module is also used for:
- the device further includes: a judgment module (not shown in FIG. 5 ), configured to judge whether the smart device goes straight through the map node; if not, execute the determining of the first positioning data corresponding to the map node and the map node.
- the position deviation between the second positioning data corresponding to the map node is used as the step of the accuracy analysis result of the first positioning data; if so, according to the positioning result, calculate the corresponding position of the intelligent device passing through the map node. determine whether the driving angle satisfies the preset angle condition; if not, it is determined that the map node verification has not passed;
- the position deviation between the positioning data and the second positioning data corresponding to the map node is used as the step of the accuracy analysis result of the first positioning data;
- the device further includes:
- the fifth acquisition module (not shown in FIG. 5 ) is used to acquire the second positioning data corresponding to each map node calculated by the smart device based on the sensors configured by itself in the moving process; the second positioning data corresponding to a map node
- the data is: the second positioning data when the smart device is located in the location area corresponding to the map node;
- the analysis module is also used for:
- the number of used frames is obtained by counting the usage of the positioning result corresponding to each frame of image by the smart device;
- the second determining module is specifically used for:
- the third acquiring module is further configured to: instruct the smart device to move along the moving path according to a fixed linear velocity and an angular velocity.
- the device further includes:
- the supplementary module (not shown in FIG. 5 ) is used to determine supplementary map nodes around the map node according to the first preset rule if the verification result of the map node fails to pass the verification; Perform image collection on the location area corresponding to the supplementary map node, and analyze the image collected by the intelligent device to obtain image feature points as the first image feature point; store the first image feature point corresponding to the supplementary map node into the V-SLAM map.
- the device further includes:
- a reconstruction module (not shown in FIG. 5 ), for if the verification result of the map node is that the verification fails, then determine the reconstruction map node around the map node according to the second preset rule;
- the second image feature point is stored in the V-SLAM map corresponding to the reconstructed map node, and the map node and its corresponding image feature point stored in the V-SLAM map are deleted.
- An embodiment of the present invention further provides an electronic device, as shown in FIG. 6, including a processor 601 and a memory 602,
- the processor 601 is configured to implement any one of the above V-SLAM map verification methods when executing the program stored in the memory 602 .
- the electronic device may be a computer, a server, or other device, or may be a robot, an AGV (Automated Guided Vehicle, automatic navigation vehicle), or other mobile smart devices, which are not specifically limited.
- AGV Automated Guided Vehicle, automatic navigation vehicle
- the memory mentioned in the above electronic device may include random access memory (Random Access Memory, RAM), and may also include non-volatile memory (Non-Volatile Memory, NVM), such as at least one disk memory.
- RAM Random Access Memory
- NVM non-Volatile Memory
- the memory may also be at least one storage device located away from the aforementioned processor.
- the above-mentioned processor can be a general-purpose processor, including a central processing unit (Central Processing Unit, CPU), a network processor (Network Processor, NP), etc.; it can also be a digital signal processor (Digital Signal Processing, DSP), dedicated integrated Circuit (Application Specific Integrated Circuit, ASIC), Field-Programmable Gate Array (Field-Programmable Gate Array, FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components.
- CPU Central Processing Unit
- NP Network Processor
- DSP Digital Signal Processing
- ASIC Application Specific Integrated Circuit
- FPGA Field-Programmable Gate Array
- FPGA Field-Programmable Gate Array
- a computer-readable storage medium is also provided, and a computer program is stored in the computer-readable storage medium, and when the computer program is executed by a processor, any one of the above V- SLAM map verification method.
- a computer program product including instructions, which, when running on a computer, enables the computer to execute any one of the above-mentioned V-SLAM map verification methods.
- the above-mentioned embodiments it may be implemented in whole or in part by software, hardware, firmware or any combination thereof.
- software it can be implemented in whole or in part in the form of a computer program product.
- the computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of the present invention are generated.
- the computer may be a general purpose computer, special purpose computer, computer network, or other programmable device.
- the computer instructions may be stored in or transmitted from one computer-readable storage medium to another computer-readable storage medium, for example, the computer instructions may be downloaded from a website site, computer, server, or data center Transmission to another website site, computer, server, or data center is by wire (eg, coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (eg, infrared, wireless, microwave, etc.).
- the computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device such as a server, a data center, or the like that includes an integration of one or more available media.
- the usable media may be magnetic media (eg, floppy disks, hard disks, magnetic tapes), optical media (eg, DVD), or semiconductor media (eg, Solid State Disk (SSD)), and the like.
Landscapes
- Engineering & Computer Science (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Automation & Control Theory (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Image Analysis (AREA)
Abstract
一种V-SLAM地图校验方法、装置及设备,方法包括:针对V-SLAM地图中的每个地图节点,获取地图节点对应的图像特征点(S101);对图像特征点进行评估,得到评估得分(S102);若评估得分位于第一预设区间,则确定地图节点校验通过(S104);若评估得分位于第二预设区间,则对地图节点进行增补或重建(S105);若评估得分位于第三预设区间,则删除地图节点(S106);第一预设区间、第二预设区间和第三预设区间依次连续且不重叠。本方案实现了根据地图节点对应的图像特征点,对V-SLAM地图的准确性进行校验。
Description
本申请要求于2020年12月31日提交中国专利局、申请号为202011628132.0发明名称为“一种V-SLAM地图校验方法、装置及设备”的中国专利申请,以及于2020年12月31日提交中国专利局、申请号为202011620255.X发明名称为“一种V-SLAM地图校验方法、装置及设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本发明涉及计算机视觉技术领域,特别是涉及一种V-SLAM地图校验方法、装置及设备。
V-SLAM(Vision—Simultaneous Localization and Mapping,基于视觉的即时定位与地图构建)可以用于对机器人、或者其他能够移动的智能设备进行定位、或者导航等等。V-SLAM为这样一种方案:利用机器人配置的摄像头采集场景图像,通过将该场景图像与预先生成的V-SLAM地图进行匹配,实时对机器人进行定位、导航等。
V-SLAM地图由多个地图节点组成,地图节点为组成V-SLAM地图的最小数据单元。V-SLAM地图中,每个地图节点对应一组图像特征点。如果V-SLAM地图中存在错误的地图节点或者准确性较低的地图节点,则会导致定位、导航等出现异常。因此,需要提供一种能够校验V-SLAM地图准确性的方案。
而V-SLAM地图不同于一般的电子地图。对于一般的电子地图来说,其中各地图节点均对应地理位置信息,因此可以基于各地图节点对应的地理位置信息,检验电子地图所显示的内容是否准确。但V-SLAM地图中的各地图节点并不对应地理位置信息,只是对应一组图像特征点,因此,不能采用这种方案来校验V-SLAM地图的准确性。
发明内容
本发明实施例的目的在于提供一种V-SLAM地图校验方法、装置及设备,以提供一种能够校验V-SLAM地图准确性的方案。
为达到上述目的,本发明实施例提供了一种V-SLAM地图校验方法,包括:
针对V-SLAM地图中的每个地图节点,获取该地图节点对应的图像特征点;
对所述图像特征点进行评估,得到评估得分;
若所述评估得分位于第一预设区间,则确定该地图节点校验通过;
若所述评估得分位于第二预设区间,则对该地图节点进行增补或重建;
若所述评估得分位于第三预设区间,则删除该地图节点,所述第一预设区间、所述第二预设区间和第三预设区间依次连续且不重叠。
为达到上述目的,本发明实施例还提供了一种V-SLAM地图校验装置包括:第一获取模块、评估模块、第一确定模块和删除模块,还包括:增补模块和/或重建模块;其中,
第一获取模块,用于针对V-SLAM地图中的每个地图节点,获取该地图节点对应的图像特征点;
评估模块,用于对所述图像特征点进行评估,得到评估得分;若所述评估得分位于第一预设区间,则触发第一确定模块;若所述评估得分位于第二预设区间,则触发增补模块和/或重建模块;若所述评估得分位于第三预设区间,则触发删除模块,所述第一预设区间、所述第二预设区间和第三预设区间依次连续且不重叠;
第一确定模块,用于确定该地图节点校验通过;
增补模块,用于对该地图节点进行增补;
重建模块,用于对该地图节点进行重建;
删除模块,用于删除该地图节点。
为达到上述目的,本发明实施例还提供了一种电子设备,包括处理器和存储器;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述任意一种V-SLAM地图校验方法。
应用本发明所示实施例,针对V-SLAM地图中的每个地图节点,获取该地图节点对应的图像特征点;对图像特征点进行评估,得到评估得分;若评估得分位于第一预设区间,则确定该地图节点校验通过;若评估得分位于第二预设区间,则对该地图节点进行增补或重建;若评估得分位于第三预设区间,则删除该地图节点,第一预设区间、第二预设区间和第三预设区间依次连续且不重叠;可见,本方案中,实现了根据地图节点对应的图像特征点,对V-SLAM地图的准确性进行校验。
为了更清楚地说明本发明实施例和现有技术的技术方案,下面对实施例和现有技术中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,本领域普通技术人员来讲还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的V-SLAM地图校验方法的第一种流程示意图;
图2为本发明实施例提供的多种图像分割方式示意图;
图3为本发明实施例提供的V-SLAM地图校验方法的第二种流程示意图;
图4为本发明实施例提供的V-SLAM地图校验方法的第三种流程示意图;
图5为本发明实施例提供的一种V-SLAM地图校验装置的结构示意图;
图6为本发明实施例提供的一种电子设备的结构示意图。
为使本发明的目的、技术方案、及优点更加清楚明白,以下参照附图并举实施例,对本发明进一步详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。本领域普通技术人员基于本发明中的实施例所获得的所有其他实施例,都属于本发明保护的范围。
为了达到上述目的,本发明实施例提供了一种V-SLAM地图校验方法、装置、电子设备、计算机可读存储介质以及计算机程序产品,该方法及装置可以应用于各种电子设备,包括能够移动的智能设备,如机器人等,具体不做限定。
V-SLAM地图由多个地图节点组成,地图节点为组成V-SLAM地图的最小数据单元,或者为V-SLAM地图中的路标点,每个地图节点对应真实物理空间中的一个位置区域。V-SLAM一般包括地图生成阶段和智能设备定位阶段。该智能设备可以是机器人、AGV(Automated Guided Vehicle,自动导航小车)、或者其他能够移动的智能设备。该智能设备能够利用V-SLAM地图进行导航。
地图生成阶段中,针对每个地图节点对应的位置区域,在该位置区域中进行图像采集,对采集的图像进行分析得到一组图像特征点,将该组图像特征点与该地图节点对应存储。
智能设备定位阶段中,利用智能设备中配置的图像采集器(如智能设备中的摄像头)采集场景图像,提取将该场景图像中的特征点,将提取到的特征点与V-SLAM地图中地图节点对应的图像特征点进行匹配,基于匹配结果进行定位。
本发明实施例提供两种V-SLAM地图校验方法,第一种V-SLAM地图校验方法可以应用于地图生成阶段,或者应用于地图生成阶段之后,第二种V-SLAM地图校验方法可以应用于定位阶段,例如,试导航阶段。这里所说的该方法应用的具体阶段仅为举例说明,并不对本发明实施例构成限定。
下面首先对该第一种V-SLAM地图校验方法进行详细说明。图1为本发明实施例提供的V-SLAM地图校验方法的第一种流程示意图,包括:
S101:针对V-SLAM地图中的每个地图节点,获取该地图节点对应的图像特征点。
V-SLAM地图由多个地图节点组成,地图节点为组成V-SLAM地图的最小数据单元。举例来说,生成V-SLAM地图的过程中,在位置1进行图像采集,对位置1采集的图像进行分析得到一组图像特征点,位置1对应一个地图节点,将该组图像特征点与该地图节点对应存储;在位置2进行图像采集,对位置2采集的图像进行分析,得到另一组图像特征点,位置2对应另一个地图节点,将该另一组图像特征点与该另一个地图节点对应存储。V-SLAM地图中,每个地图节点对应一组图像特征点。这样,在对V-SLAM地图进行校验时,可以直接获取该V-SLAM地图中每个地图节点对应的图像特征点。
这里所说的图像特征点可以表达为一个数据集合,集合中的每个元素分别对应一个图像特征点,元素的值可以包括图像特征点对应的位置信息、特征值等等,每个元素可以表示为向量或者为矩阵的形式,具体形式不做限定。
一种情况下,该图像特征点可以为利用ORB(Oriented Fast and Rotated Brief,特征提取和检测)算法提取出的特征点,或者也可以为利用其他算法提取出的特征点,具体特征提取算法不做限定。
对V-SLAM地图中每个地图节点的校验过程相似,以下步骤中均针对一个地图节点进行说明。
S102:对图像特征点进行评估,得到评估得分。
举例来说,S102可以包括:评估图像特征点的分布均匀性和/或质量,得到评估得分。下面先对评估分布均匀性进行介绍:
一种情况下,可以利用均匀性分析算法计算图像特征点的分布均匀性,具体的算法不做限定。一种实施方式中,可以针对预先设定的每种分割方式,利用该种分割方式对所述图像特征点所在的图像进行区域分割,得到多个分割区域;根据每个所述分割区域中的图像特征点数量,计算该种分割方式对应的分布均匀性评分;通过计算全部分割方式对应的分布均匀性评分之和,得到分布均匀性的评估得分。
举例来说,参考图2所示,分割方式可以包括:从竖直方向进行分割、从水平方向进行分割、45度方向进行分割、135度方向进行分割、将中心区域与外围区域分割等方式。可以针对每种分割方式,利用该种分割方式对图像特征点所在的图像进行区域分割,得到两个分割区域。本实施方式中,可以采用图2所示的任意分割方式,或者也可以采用其他分割方式,具体分割方式不做限定。
举例来说,如果对图像特征点所在的图像进行区域分割,得到两个分割区域,则可以采用如下算式1计算分布均匀性的评估得分:
其中,sd表示分布均匀性的评估得分,m表示分割方式的数量,i表示分割方式的标 识,Ni表示利用第i种分割方式对图像特征点所在的图像进行区域分割的情况下,两个分割区域中的任意一个区域中的图像特征点数量,
表示利用第i种分割方式对图像特征点所在的图像进行区域分割的情况下,两个分割区域中的图像特征点数量的均值。sd数值越小,表示图像特征点的分布越均匀。
假设利用第i种分割方式对图像特征点所在的图像进行区域分割的情况下,分割区域1中的图像特征点数量为680,分割区域2中的图像特征点数量为720,则这两个分割区域中的图像特征点数量的均值为700,分割区域1中的图像特征点数量与该均值的差值、与分割区域2中的图像特征点数量与该均值的差值的绝对值相同,都为20,因此,Ni可以为两个分割区域中的任意一个区域中的图像特征点数量。
上述算式(1)中,计算全部分割方式对应的分布均匀性评分之和,将该评分之和开根号之后的值作为分布均匀性的评估得分。或者,也可以直接将该评分之和作为分布均匀性的评估得分。上述算式(1)仅为举例说明,并不对分布均匀性的评估得分的具体计算方式构成限定。
下面对评估图像特征点的质量进行介绍:举例来说,可以利用角点检测算法评估图像特征点的质量,例如,FAST(Features From Accelerated Segment Test,加速段测试的特征)算法、或者Harris角点检测算法,等等,具体算法不做限定。
一种实施方式中,可以分别利用不同的角点检测算法,评估图像特征点的质量,得到每种角点检测算法分别对应的图像特征点的质量评分;基于所述每种角点检测算法分别对应的图像特征点的质量评分,得到评估得分。
例如,可以通过利用第一角点检测算法评估每个图像特征点的质量,得到第一质量评分;通过利用第二角点检测算法评估每个图像特征点的质量,得到第二质量评分;根据所述第一质量评分和所述第二质量评分,得到图像特征点的质量评估得分。
一种情况下,可以将第一质量评分与第二质量评分的均值作为图像特征点的质量评估得分。另一种情况下,可以将第一质量评分与第二质量评分进行加权,将加权结果作为图像特征点的质量评估得分。
一种实施方式中,可以利用第一角点检测算法,评估每个图像特征点的质量,得到每个图像特征点的第一评分;通过对所述第一评分进行排序,从所述第一评分中选择目标第一评分,作为所述第一角点检测算法对应的图像特征点的质量评分,可以称为第一质量评分;利用第二角点检测算法,评估每个图像特征点的质量,得到每个图像特征点的第二评分;通过对所述第二评分进行排序,从所述第二评分中选择目标第二评分,作为所述第二角点检测算法对应的图像特征点的质量评分,可以称为第二质量评分。然后便可以根据该目标第一评分和该目标第二评分,得到评估得分。
举例来说,可以按照第一评分由低到高进行排序,或者也可以按照第一评分由高到低进行排序;可以按照第二评分由低到高进行排序,或者也可以按照第二评分由高到低进行排序;具体排序情况不做限定。
可以从排序后的第一评分中,选择靠近中间位置的第一评分,作为目标第一评分;可以从排序后的第二评分中,选择靠近中间位置的第二评分,作为目标第二评分。
举例来说,假设存在1000个图像特征点,利用FAST算法评估每个图像特征点的质量,得到每个图像特征点的第一评分,将第一评分按照由高到低进行排序,选择排在第500位的图像特征点的第一评分,作为目标第一评分。利用Harris角点检测算法评估每个图像特征点的质量,得到每个图像特征点的第二评分,将第二评分按照由高到低进行排序,选择排在第500位的图像特征点的第二评分,作为目标第二评分。第一评分排在第500位的图像特征点与第二评分排在第500位的图像特征点可以为不同的特征点,或者也可以为相同的特征点。
或者,也可以从排序后的第一评分中,选择指定位置的第一评分,作为目标第一评分; 可以从排序后的第二评分中,选择指定位置的第二评分,作为目标第二评分。在排序后的评分中选择目标评分时,所选择的具体位置可以根据实际需求设定,这里不做限定。
下面对评估图像特征点的分布均匀性和质量进行介绍:举例来说,可以评估图像特征点的分布均匀性,得到分布均匀性评分;评估图像特征点的质量,得到质量评分。可以将分布均匀性评分与质量评分的均值作为图像特征点的评估得分。或者,也可以将分布均匀性评分与质量评分进行加权,将加权结果作为图像特征点的评估得分。
一种实施方式中,可以评估所述图像特征点的分布均匀性,得到分布均匀性评分;通过利用第一角点检测算法评估每个图像特征点的质量,得到第一质量评分;通过利用第二角点检测算法评估每个图像特征点的质量,得到第二质量评分;根据所述分布均匀性评分、所述第一质量评分和所述第二质量评分,得到评估得分。
举例来说,可以将分布均匀性评分、第一质量评分和第二质量评分的均值作为图像特征点的评估得分。或者,也可以将分布均匀性评分、第一质量评分和第二质量评分进行加权,将加权结果作为图像特征点的评估得分。
举例来说,如果采用上述算式(1)计算分布均匀性评分,则图像特征点分布越均匀,分布均匀性评分越低,如果采用FAST算法或Harris角点检测算法评估每个图像特征点的质量,则图像特征点的质量越高,第一质量评分和第二质量评分越高。
这种情况下,一种示例中,可以计算所述分布均匀性评分与第一预设权重的乘积,作为第一乘积;计算所述第一质量评分与所述第二质量评分以及第二预设权重的乘积,作为第二乘积;计算所述第一乘积减去所述第二乘积后得到的数值,作为评估得分。
这种示例中,可以采用如下算式(2)计算评估得分:
S=α×Sd-β×Sf×Sh (2)
其中,S表示评估得分,α表示第一预设权重,β表示第二预设权重,Sd表示分布均匀性评分,Sf表示第一质量评分,Sd表示第二质量评分。α和β可以根据实际情况设定,具体数值不做限定。
另一种示例中,可以计算所述分布均匀性评分与第一预设权重的乘积,作为第一乘积;计算所述第一质量评分与所述第二质量评分以及第二预设权重的乘积,作为第二乘积;计算所述第二乘积减去所述第一乘积后得到的数值,作为评估得分。
这种示例中,可以采用如下算式(3)计算评估得分:
S=β×Sf×Sh-α×Sd (3)
其中,S表示评估得分,α表示第一预设权重,β表示第二预设权重,Sd表示分布均匀性评分,Sf表示第一质量评分,Sd表示第二质量评分。α和β可以根据实际情况设定,具体数值不做限定。
S103:判断评估得分位于第一预设区间还是第二预设区间还是第三预设区间。所述第一预设区间、所述第二预设区间和第三预设区间依次连续且不重叠。若位于第一预设区间,则执行S104,若位于第二预设区间,则执行S105,若位于第三预设区间,则执行S106。
S104:确定该地图节点校验通过。
S105:对该地图节点进行增补或重建。
S106:删除该地图节点。
上述一种实施方式中,评估图像特征点的分布均匀性和/或质量,得到评估得分;这种实施方式中,所述图像特征点分布越均匀则对应的评估得分越接近所述第一预设区间,所述质量越高则对应的评估得分越接近所述第一预设区间。
上述一种示例中,评估得分:S=α×Sd-β×Sf×Sh,这种示例中,图像特征点的图像特征点分布越均匀,质量越高,则评估得分越低。这样,第一预设区间可以为不大于第一预设阈值的数值区间,第二预设区间可以为大于第一预设阈值、且小于第二预设阈值的数值区间,第三预设区间可以为不小于第二预设阈值的数值区间,第一预设阈值小于第二预设阈值。也就是说,本示例中,若所述评估得分不大于第一预设阈值,则确定该地图节点校验通过;若所述评估得分大于第一预设阈值、且小于第二预设阈值,则对该地图节点进行增补或重建;若所述评估得分不小于所述第二预设阈值,则删除该地图节点。
本示例中,可以参考如下算式(4)为评估得分划分三个区间:
其中,S表示评估得分,T1表示第一预设阈值,T2表示第二预设阈值。如果S≤T1,则表示地图节点通过校验,如果S≥T2,则表示地图节点未通过校验,可以删除该地图节点,如果T1<S<T2,表示地图节点质量较差,可以对该地图节点进行增补或重建。
上述另一种示例中,评估得分:S=β×Sf×Sh-α×Sd,这种示例中,图像特征点的图像特征点分布越均匀,质量越高,则评估得分越高。这样,第一预设区间可以为不小于第二预设阈值的数值区间,第二预设区间可以为大于第一预设阈值、且小于第二预设阈值的数值区间,第三预设区间可以为不大于第一预设阈值的数值区间,第一预设阈值小于第二预设阈值。也就是说,本示例中,若所述评估得分不小于所述第二预设阈值,则确定该地图节点校验通过;若所述评估得分大于第一预设阈值、且小于第二预设阈值,则对该地图节点进行增补或重建;若所述评估得分不大于第一预设阈值,则删除该地图节点。
本示例中,可以参考如下算式(5)为评估得分划分三个区间:
其中,S表示评估得分,T1表示第一预设阈值,T2表示第二预设阈值。如果S≥T2,则表示地图节点通过校验,如果S≤T1,则表示地图节点未通过校验,可以删除该地图节点,如果T1<S<T2,表示地图节点质量较差,可以对该地图节点进行增补或重建。
或者,其他示例中采用了不同的评估方式,这些示例中,可以根据实际情况设定相应的校验通过条件,设定校验通过条件的思路可以概括为:图像特征点的质量越高,图像特征点分布越均匀,图像特征点的图像特征点分布越均匀,越有利于后续定位阶段中特征点匹配的准确性,则越能够通过校验。具体的校验条件不做限定。
增补可以为:在该地图节点附近设定增补节点,在该增补节点对应的位置区域进行图像采集,对采集的图像进行分析得到一组图像特征点,将该组图像特征点与该增补节点对应存储。
一种实施方式中,对该地图节点进行增补,可以包括:按照第一预设规则在该地图节点的周围确定增补地图节点;指示智能设备在所述增补地图节点对应的位置区域进行图像采集,对所述智能设备采集的图像进行分析得到图像特征点,作为第一图像特征点;将所述第一图像特征点与所述增补地图节点对应存储至所述V-SLAM地图中。
举例来说,第一预设规则可以为:在该地图节点的前后各20CM处确定增补地图节点。或者也可以在该地图节点的左右10CM处确定增补地图节点,增补节点的具体方位及与原地图节点的距离不做限定。
重建可以为:在该地图节点对应的位置区域重新进行图像采集,对采集的图像进行分析得到一组图像特征点,将该组图像特征点替换该地图节点原有的图像特征点。
一种实施方式中,对该地图节点进行重建,包括:按照第二预设规则在该地图节点的周围确定重建地图节点;指示智能设备在所述重建地图节点对应的位置区域进行图像采集,对所述智能设备采集的图像进行分析得到图像特征点,作为第二图像特征点;将所述第二图像特征点与所述重建地图节点对应存储至所述V-SLAM地图中,并删除所述V-SLAM地图中存储的该地图节点及其对应的图像特征点。
举例来说,第二预设规则可以为:在该地图节点的前后各20CM处确定重建地图节点。或者也可以在该地图节点的左右10CM处确定重建地图节点,重建节点的具体方位及与原地图节点的距离不做限定。第二预设规则与第一预设规则可以相同,也可以不同。
或者,一种实施方式中,第二预设区间可以再细分为第一子区间和第二子区间,若所述评估得分位于所述第二预设区间中的第一子区间,则对该地图节点进行增补;若所述评估得分位于所述第二预设区间中的第二子区间,则对该地图节点进行重建地图节点,所述第一子区间和第二子区间依次连续且不重叠,所述第一子区间更接近所述第一区间,所述第二子区间更接近于所述第三区间。
可以理解,评估得分越接近第一区间,表示图像特征点的评估得分越理想,这种情况下,在保留原地图节点的基础上进行增补,而评估得分越接近第三区间,表示图像特征点的评估得分越不理想,这种情况下,在不保留原地图节点的基础上进行重建。
应用本发明实施例,针对V-SLAM地图中的每个地图节点,获取该地图节点对应的图像特征点;对图像特征点进行评估,得到评估得分;若评估得分位于第一预设区间,则确定该地图节点校验通过;若评估得分位于第二预设区间,则对该地图节点进行增补或重建;若评估得分位于第三预设区间,则删除该地图节点,第一预设区间、第二预设区间和第三预设区间依次连续且不重叠;可见,本方案中,实现了根据地图节点对应的图像特征点,对V-SLAM地图的准确性进行校验。
本发明实施例还提供另一种V-SLAM地图校验方法,图3为本发明实施例提供的V-SLAM地图校验方法的第二种流程示意图,包括:
S301:获取校验后的V-SLAM地图,所述校验后的V-SLAM地图中的地图节点为:校验通过的地图节点、增补后的地图节点、重建后的地图节点中的至少一种。
S301中获取的校验后的V-SLAM地图可以为应用上述图1所示实施例进行校验后得到的V-SLAM地图。该校验后的V-SLAM地图中的地图节点可以为校验通过的地图节点、增补后的地图节点、重建后的地图节点中的至少一种。
S302:生成智能设备的移动路径,所述移动路径中包括所述校验后的V-SLAM地图中的每个地图节点。
举例来说,该智能设备可以机器人、AGV(Automated Guided Vehicle,自动导航小车)、或者其他能够移动的智能设备。执行图3所示实施例的电子设备可以为与该智能设备通信连接的后台处理设备,具体设备类型不做限定。为了方便描述,以下内容中,将执行图3所示实施例的电子设备称为本电子设备。
一种实施方式中,本电子设备可以指示所述智能设备按照固定的线速度和角速度沿所述移动路径移动。本实施方式中,本电子设备可以先生成遍历所有地图节点的移动路径,其中,所有地图节点为校验后的V-SLAM地图中的所有地图节点。然后指示智能设备以固定的线速度和角速度沿所述移动路径移动,这样,可以使试跑阶段更顺畅,得到的试跑数据更适合用于进行V-SLAM地图校验,其中,试跑数据包括后续内容中的第一定位数据和第二定位数据。
S303:指示智能设备沿该移动路径移动,并获取移动过程中智能设备基于校验后的V-SLAM地图计算得到的每个地图节点对应的第一定位数据。一个地图节点对应的第一定位数据为:所述智能设备位于该地图节点对应的位置区域时的第一定位数据。
本电子设备指示智能设备沿该移动路径移动,移动过程中智能设备可以利用校验后的 V-SLAM地图进行导航。第一定位数据可以为智能设备利用校验后的V-SLAM地图进行导航过程中的定位数据。图3实施例中,基于该导航过程中的定位数据对校验后的V-SLAM地图的各地图节点再进行校验。举例来说,智能设备可以利用V-SLAM地图进行导航试跑,可以基于该试跑阶段的定位数据,对校验后的V-SLAM地图的各地图节点再进行校验。对校验后的V-SLAM地图中每个地图节点的校验过程相似,以下步骤中均针对一个地图节点进行说明。
每个地图节点对应真实物理空间中的一个位置区域。利用校验后的V-SLAM地图对智能设备进行导航的过程中,当智能设备移动至地图节点对应的位置区域时,可以获取到基于校验后的V-SLAM地图计算得到的定位数据。为了与后续内容中其他方式产生的定位数据相区分,将基于校验后的V-SLAM地图计算得到的定位数据称为第一定位数据。
利用校验后的V-SLAM地图对智能设备进行导航的过程中,可以利用智能设备中配置的图像采集器采集场景图像。举例来说,可以由智能设备中配置的摄像头进行图像采集,具体的图像采集器不做限定。提取该场景图像中的特征点,将提取到的特征点与校验后的V-SLAM地图中地图节点对应的特征点进行匹配,基于匹配结果进行定位。
举例来说,采集的场景图像可以为视频帧图像,可以分别提取每帧图像中的特征点,并将提取到的特征点与校验后的V-SLAM地图中地图节点对应的特征点进行匹配,这样每帧图像均对应一个定位结果。这样,一个地图节点对应的第一定位数据包括:每帧图像对应的定位结果,或者还可以包括定位结果置信度;所述每帧图像为:所述智能设备移动至所述一个地图节点对应的位置区域时,所述智能设备中配置的图像采集器针对所述一个地图节点对应的位置区域进行图像采集得到的。
S304:针对校验后的V-SLAM地图中的每个地图节点,对该地图节点对应的第一定位数据进行准确度分析,得到分析结果。
一种实施方式中,一个地图节点对应的第一定位数据包括:每帧图像对应的定位结果和定位结果置信度;所述每帧图像为:所述智能设备移动至所述一个地图节点对应的位置区域时,所述智能设备中配置的图像采集器针对所述一个地图节点对应的位置区域进行图像采集得到的。
这种实施方式中,S304中可以在该地图节点对应的第一定位数据中,统计定位结果置信度大于第四预设阈值的图像的帧数,作为有效帧数;判断所述有效帧数是否大于第一预设帧数阈值,得到第一判断结果,作为所述第一定位数据的准确性分析结果;或者,确定所述智能设备经过该地图节点对应的位置区域的整个过程中采集的图像总帧数;计算所述有效帧数与所述总帧数的比值,作为第一比值;判断所述第一比值是否大于第一预设比例阈值,得到第二判断结果,作为所述第一定位数据的准确性分析结果。
可以根据实际情况设定置信度阈值,也就是第四预设阈值,具体数值不做限定。如果置信度大于该第四预设阈值,表示定位结果可用,如果置信度不大于该第四预设阈值,表示定位结果不可用。
举例来说,一种情况下,可以统计定位结果置信度大于第四预设阈值的图像的帧数,作为有效帧数;判断该有效帧数是否大于预设帧数阈值,将该判断结果作为第一定位数据的准确性分析结果。或者,另一种情况下,也可以统计定位结果置信度大于第四预设阈值的图像的帧数,作为有效帧数;确定智能设备经过该地图节点对应的位置区域的整个过程中采集的图像总帧数;计算该有效帧数与该总帧数的比值;判断该比值是否大于预设比例阈值,将该判断结果作为第一定位数据的准确性分析结果。
或者,另一种实施方式中,一个地图节点对应的第一定位数据包括:每帧图像对应的定位结果;所述每帧图像为:所述智能设备移动至所述一个地图节点对应的位置区域时,所述智能设备中配置的图像采集器针对所述一个地图节点对应的位置区域进行图像采集得到的。
本实施方式中,S304中可以通过统计所述智能设备对每帧图像对应的定位结果的使用 情况,得到使用帧数;
判断所述使用帧数是否大于第二预设帧数阈值,得到第三判断结果,作为所述第一定位数据的准确性分析结果;或者,确定所述智能设备经过该地图节点对应的位置区域的整个过程中采集的图像总帧数;计算所述使用帧数与所述总帧数的比值,作为第二比值;判断所述第二比值是否大于第二预设比例阈值,得到第四判断结果,作为所述第一定位数据的准确性分析结果。
一些情况下,智能设备可以得到两种定位结果,一种为基于校验后的V-SLAM地图得到的定位结果,另一种为基于自身配置的传感器得到的定位结果。智能设备可以判断基于校验后的V-SLAM地图得到的定位结果是否准确,如果准确,则使用基于校验后的V-SLAM地图得到的定位结果,如果不准确,则使用基于智能设备自身配置的传感器得到的定位结果。
本实施方式中,可以统计智能设备使用了多少帧图像对应的定位结果,也就是统计智能设备对每帧图像对应的定位结果的使用情况,得到使用帧数。一种情况下,判断该使用帧数是否大于预设帧数阈值,将该判断结果作为第一定位数据的准确性分析结果。或者,另一种情况下,也可以确定智能设备经过该地图节点对应的位置区域的整个过程中采集的图像总帧数;计算该使用帧数与该总帧数的比值;判断该比值是否大于预设比例阈值,将该判断结果作为第一定位数据的准确性分析结果。
或者,另一种实施方式中,指示所述智能设备沿所述移动路径移动之后,还可以获取移动过程中所述智能设备基于自身配置的传感器计算得到的每个地图节点对应的第二定位数据;一个地图节点对应的第二定位数据为:所述智能设备位于该地图节点对应的位置区域时的第二定位数据。
为了区分描述,将智能设备基于校验后的V-SLAM地图计算得到的定位数据称为第一定位数据,将智能设备基于自身配置的传感器计算得到的定位数据称为第二定位数据。
S304中可以确定该地图节点对应的第一定位数据与该地图节点对应的第二定位数据之间的位置偏差,作为所述第一定位数据的准确性分析结果。
如上所述,一些情况下,智能设备可以得到两种定位结果,一种为基于校验后的V-SLAM地图得到的定位结果,另一种为基于自身配置的传感器得到的定位结果。本实施方式中,可以将这两种定位结果进行对比,也就是确定二者的位置偏差,将该位置偏差作为第一定位数据的准确性分析结果。
一种示例中,可以先判断所述智能设备是否直行通过该地图节点;如果否,再执行所述确定该地图节点对应的第一定位数据与该地图节点对应的第二定位数据之间的位置偏差,作为所述第一定位数据的准确性分析结果的步骤。
如果智能设备直行通过该地图节点,则根据所述定位结果,计算所述智能设备在经过该地图节点对应的位置区域的整个过程中的行驶角度;判断所述行驶角度是否满足预设角度条件;如果不满足,确定该地图节点校验未通过;如果满足,执行所述确定该地图节点对应的第一定位数据与该地图节点对应的第二定位数据之间的位置偏差,作为所述第一定位数据的准确性分析结果的步骤。
举例来说,可以根据智能设备的运动轨迹确定智能设备是否直行通过该地图节点。智能设备的运动轨迹的获取方式不做限定。如果不是直行通过,则执行上述实施方式,即直接确定第一定位数据与第二定位数据之间的位置偏差,将该位置偏差作为第一定位数据的准确性分析结果。
如果直行通过,则计算所述智能设备在经过该地图节点对应的位置区域的整个过程中的直行角度。一种实施方式中,可以计算智能设备在经过该地图节点对应的位置区域的整个过程中的直行角度偏差和/或方差。举例来说,可以预先设定一个坐标系,基于校验后的V-SLAM地图可以计算智能设备在该坐标系下的行驶角度。每帧图像均对应一个行驶角度, 可以计算智能设备在经过该地图节点对应的位置区域的整个过程中,全部帧图像对应的行驶角度均值。对于每帧图像来说,该帧图像对应的行驶角度与该行驶角度均值的差值,即为直行角度偏差。将该帧图像对应的行驶角度与该行驶角度均值进行方差运算,即得到直行角度方差。或者,也可以将这里的方差替换为标准差。
以计算直行角度偏差和方差为例来说,可以设定计算偏差阈值和方差阈值,判断该直行角度偏差是否大于该偏差阈值,以及该判断该直行角度方差是否大于该方差阈值,如果均不大于,再执行上述实施方式,确定第一定位数据与第二定位数据之间的位置偏差,将该位置偏差作为第一定位数据的准确性分析结果,否则,确定该地图节点校验未通过。
S304中对该地图节点对应的第一定位数据进行准确度分析,可以采用上述任意一种实施方式,或者也可以在合乎逻辑的情况下,对上述介绍的实施方式进行任意组合,具体组合情况以及执行顺序不做限定。
S305:基于该分析结果确定该地图节点的校验结果。
上述一种情况下,统计定位结果置信度大于第四预设阈值的图像的帧数,作为有效帧数;判断该有效帧数是否大于预设帧数阈值,将该判断结果作为第一定位数据的准确性分析结果。这种情况下,可以在该有效帧数大于预设帧数阈值的情况下,确定地图节点通过校验。
上述另一种情况下,统计定位结果置信度大于第四预设阈值的图像的帧数,作为有效帧数;确定智能设备经过该地图节点对应的位置区域的整个过程中采集的图像总帧数;计算该有效帧数与该总帧数的比值;判断该比值是否大于预设比例阈值,将该判断结果作为第一定位数据的准确性分析结果。这种情况下,可以在该比值大于预设比例阈值的情况下,确定地图节点通过校验。
上述一种情况下,统计智能设备使用了多少帧图像对应的定位结果,得到使用帧数。判断该使用帧数是否大于预设帧数阈值,将该判断结果作为第一定位数据的准确性分析结果。这种情况下,可以在该使用帧数大于预设帧数阈值的情况下,确定地图节点通过校验。
上述一种情况下,统计智能设备使用了多少帧图像对应的定位结果,得到使用帧数;以及确定智能设备经过该地图节点对应的位置区域的整个过程中采集的图像总帧数;计算该使用帧数与该总帧数的比值;判断该比值是否大于预设比例阈值,将该判断结果作为第一定位数据的准确性分析结果。这种情况下,可以在该比值大于预设比例阈值的情况下,确定地图节点通过校验。
上述一种实施方式中,确定所述第一定位数据与所述第二定位数据之间的位置偏差,作为第一定位数据的分析结果,这种实施方式中,可以在该位置偏差小于预设阈值的情况下,确定地图节点通过校验。
举例来说,如果地图节点校验未通过,可以删除该地图节点,也可以对该该地图节点进行增补或重建。增补可以为:在该地图节点附近设定增补节点,在该增补节点对应的位置区域进行图像采集,对采集的图像进行分析得到一组图像特征点,将该组图像特征点与该增补节点对应存储。重建可以为:在该地图节点对应的位置区域重新进行图像采集,对采集的图像进行分析得到一组图像特征点,将该组图像特征点替换该地图节点原有的图像特征点。
应用本发明图3所示实施例,获取校验后的V-SLAM地图,校验后的V-SLAM地图中的地图节点为:校验通过的地图节点、增补后的地图节点、重建后的地图节点中的至少一种;生成智能设备的移动路径,移动路径中包括校验后的V-SLAM地图中的每个地图节点;指示智能设备沿移动路径移动,并获取移动过程中智能设备基于校验后的V-SLAM地图计算得到的每个地图节点对应的第一定位数据;一个地图节点对应的第一定位数据为:智能设备位于该地图节点对应的位置区域时的第一定位数据;针对校验后的V-SLAM地图中的每个地图节点,对该地图节点对应的第一定位数据进行准确度分析,得到分析结果;基于分析结果确定该地图节点的校验结果。可见,本方案中,实现了根据地图节点对应的 定位数据,对V-SLAM地图的准确性进行校验。此外,本方案对校验后的V-SLAM地图进行二次校验,进一步提升了校验的准确性。
如上所述,可以在合乎逻辑的情况下,对上述介绍的实施方式进行任意组合,下面介绍一种具体的组合方式:
一个地图节点对应的第一定位数据包括:每帧图像对应的定位结果和定位结果置信度;所述每帧图像为:所述智能设备移动至所述一个地图节点对应的位置区域时,所述智能设备中配置的图像采集器针对所述一个地图节点对应的位置区域进行图像采集得到的。
此外,获取移动过程中所述智能设备基于自身配置的传感器计算得到的每个地图节点对应的第二定位数据;一个地图节点对应的第二定位数据为:所述智能设备位于该地图节点对应的位置区域时的第二定位数据。
对于校验后的V-SLAM地图中的每个地图节点来说,S304中可以包括如下步骤:
统计定位结果置信度大于第四预设阈值的图像的帧数,作为有效帧数;
判断所述有效帧数是否大于第五预设阈值;
如果大于所述第五预设阈值,通过统计所述智能设备对每帧图像对应的定位结果的使用情况,得到使用帧数;
判断所述使用帧数是否大于第六预设阈值;
如果大于所述第六预设阈值,判断所述智能设备是否直行通过该地图节点;
如果直行通过,根据所述定位结果,计算所述智能设备在经过该地图节点对应的位置区域的整个过程中的行驶角度;
判断所述行驶角度是否满足预设角度条件;
如果满足,确定该地图节点对应的第一定位数据与该地图节点对应的第二定位数据之间的位置偏差。
S305包括:判断所述位置偏差是否大于第七预设阈值;如果不大于,确定该地图节点通过校验。
本发明实施例中涉及到的各种阈值,均可以根据实际情况设定,具体数值均不做限定。
下面以校验后的V-SLAM地图中的任意一个地图节点为例,参考图4介绍利用上述组合方式对该地图节点的第一定位数据进行准确度分析的过程:
S401:获取地图节点对应的第一定位数据,第一定位数据包括:每帧图像对应的定位结果和定位结果置信度;所述每帧图像为:所述智能设备移动至该地图节点对应的位置区域时,所述智能设备中配置的图像采集器针对该地图节点对应的位置区域进行图像采集得到的。
S402:统计定位结果置信度大于第四预设阈值的图像的帧数,作为有效帧数,判断该有效帧数是否大于P1,如果大于,执行S403,如果不大于,执行S407。
S403:通过统计智能设备对每帧图像对应的定位结果的使用情况,得到使用帧数;判断该使用帧数是否大于P2,如果大于,执行S404,如果不大于,执行S407。
S404:判断智能设备是否直行通过地图节点;如果是,执行S405,如果否,执行S406。
S405:计算智能设备在经过地图节点对应的位置区域的整个过程中的直行角度偏差和方差;判断直行角度偏差是否大于P3,直行角度方差是否大于P4;如果均不大于,执行S406,否则执行S407。
S406:确定智能设备基于校验后的V-SLAM地图计算得到的定位结果与智能设备基于自身配置的传感器计算得到的定位结果之间的位置偏差,判断该位置偏差是否是否大于P5,如果大于,执行S407,如果不大于,执行S408。
S407:确定地图节点校验未通过。
S408:确定地图节点校验通过。
应用这种组合方式,对地图节点进行多维度的校验,校验结果的有效率更高。
将本发明图1所示实施例与图3所示实施例提供的两种V-SLAM地图校验方法结合使用,可以更有效地校验V-SLAM地图的准确性。举例来说,这两种V-SLAM地图校验方法的结合方案可以包括:在地图生成阶段,或者地图生成阶段之后,使用第一种V-SLAM地图校验方法对V-SLAM地图进行校验,删除未通过校验的地图节点,对质量较差的地图节点进行增补或重建;然后在定位阶段使用第二种V-SLAM地图校验方法对V-SLAM地图进行校验,删除未通过校验的地图节点,对质量较差的地图节点进行增补或重建。
对于V-SLAM导航系统来说,其实际运行中的导航解算依赖于V-SLAM地图的准确性,若V-SLAM地图中存在异常的地图节点,如错误地图节点、质量差的地图节点等,则导航过程中会出现一些定位异常,如无法定位、定位不准确等情况。并且由于导航过程中耦合的因素较多,对定位异常进行问题确认及原因排查也存在一定的难度。
应用本发明所示实施例,能够在AGV批量使用V-SLAM地图之前,对V-SLAM地图的准确性进行检验,以便于后续及时修复未通过校验的地图节点,这样,在AGV使用V-SLAM时,能够减少定位异常情况的出现,一方面可以提升V-SLAM导航系统的性能指标,提升V-SLAM导航系统的产品竞争力,另一方面,确定出未通过校验的地图节点,也有助于对定位异常进行问题确认及原因排查,相比于现有方案,减少了在问题确认及原因排查上耗费的资源。
与上述方法实施例相对应,本发明实施例还提供了一种V-SLAM地图校验装置,包括:第一获取模块、评估模块、第一确定模块和删除模块,还包括:增补模块和/或重建模块。参考图5所示,该装置包括:
第一获取模块501,用于针对V-SLAM地图中的每个地图节点,获取该地图节点对应的图像特征点;
评估模块502,用于对所述图像特征点进行评估,得到评估得分;若所述评估得分位于第一预设区间,则触发第一确定模块;若所述评估得分位于第二预设区间,则触发增补模块和/或重建模块;若所述评估得分位于第三预设区间,则触发删除模块,所述第一预设区间、所述第二预设区间和第三预设区间依次连续且不重叠;
第一确定模块503,用于确定该地图节点校验通过;
增补模块504,用于对该地图节点进行增补;
重建模块505,用于对该地图节点进行重建;
删除模块506,用于删除该地图节点。
一种实施方式中,评估模块502具体用于:
评估所述图像特征点的分布均匀性和/或质量,得到评估得分;其中,所述图像特征点分布越均匀则对应的评估得分越接近所述第一预设区间,所述质量越高则对应的评估得分越接近所述第一预设区间。
一种实施方式中,评估模块502包括:
均匀性评估子模块(图5中未示出),用于针对预先设定的每种分割方式,利用该种分割方式对所述图像特征点所在的图像进行区域分割,得到多个分割区域;根据每个所述 分割区域中的图像特征点数量,计算该种分割方式对应的分布均匀性评分;通过计算全部分割方式对应的分布均匀性评分之和,得到评估得分。
一种实施方式中,所述多个分割区域为两个分割区域;所述分割方式包括以下任意一种或多种:从竖直方向进行分割、从水平方向进行分割、45度方向进行分割、135度方向进行分割、将中心区域与外围区域分割。
一种实施方式中,评估模块502包括:
质量评估子模块(图5中未示出),用于分别利用不同的角点检测算法,评估图像特征点的质量,得到每种角点检测算法分别对应的图像特征点的质量评分;基于所述每种角点检测算法分别对应的图像特征点的质量评分,得到评估得分。
一种实施方式中,所述质量评估子模块,具体用于:
利用第一角点检测算法,评估每个图像特征点的质量,得到每个图像特征点的第一评分;通过对所述第一评分进行排序,从所述第一评分中选择目标第一评分,作为所述第一角点检测算法对应的图像特征点的质量评分;
利用第二角点检测算法,评估每个图像特征点的质量,得到每个图像特征点的第二评分;通过对所述第二评分进行排序,从所述第二评分中选择目标第二评分,作为所述第二角点检测算法对应的图像特征点的质量评分;
基于所述每种角点检测算法分别对应的图像特征点的质量评分,得到评估得分。
一种实施方式中,评估模块502包括:第一评估子模块、第二评估子模块、第三评估子模块和第四评估子模块(图5中未示出),其中,
第一评估子模块,用于评估所述图像特征点的分布均匀性,得到分布均匀性评分,所述图像特征点分布越均匀则所述分布均匀性评分越低;
第二评估子模块,用于通过利用第一角点检测算法评估每个图像特征点的质量,得到第一质量评分,所述图像特征点的质量越高则所述第一质量评分越高;
第三评估子模块,用于通过利用第二角点检测算法评估每个图像特征点的质量,得到第二质量评分,所述图像特征点的质量越高则所述第二质量评分越高;
第四评估子模块,用于计算所述分布均匀性评分与第一预设权重的乘积,作为第一乘积;计算所述第一质量评分与所述第二质量评分以及第二预设权重的乘积,作为第二乘积;计算所述第一乘积减去所述第二乘积后得到的数值,作为评估得分。
一种实施方式中,增补模块504具体用于若所述评估得分位于所述第二预设区间中的第一子区间,则对该地图节点进行增补;
重建模块505具体用于若所述评估得分位于所述第二预设区间中的第二子区间,则对该地图节点进行重建地图节点,所述第一子区间和第二子区间依次连续且不重叠,所述第一子区间更接近所述第一区间,所述第二子区间更接近于所述第三区间.
一种实施方式中,增补模块504还用于按照第一预设规则在该地图节点的周围确定增补地图节点;指示智能设备在所述增补地图节点对应的位置区域进行图像采集,对所述智能设备采集的图像进行分析得到图像特征点,作为第一图像特征点;将所述第一图像特征点与所述增补地图节点对应存储至所述V-SLAM地图中。
一种实施方式中,重建模块505还用于按照第二预设规则在该地图节点的周围确定重建地图节点;指示智能设备在所述重建地图节点对应的位置区域进行图像采集,对所述智能设备采集的图像进行分析得到图像特征点,作为第二图像特征点;将所述第二图像特征点与所述重建地图节点对应存储至所述V-SLAM地图中,并删除所述V-SLAM地图中存储的该地图节点及其对应的图像特征点。
一种实施方式中,所述装置还包括:第二获取模块、生成模块、第三获取模块、分析模块和第二确定模块(图5中未示出),其中,
第二获取模块,用于获取校验后的V-SLAM地图,所述校验后的V-SLAM地图中的地图节点为:校验通过的地图节点、增补后的地图节点、重建后的地图节点中的至少一种;
生成模块,用于生成智能设备的移动路径,所述移动路径中包括所述校验后的V-SLAM地图中的每个地图节点;
第三获取模块,用于指示所述智能设备沿所述移动路径移动,并获取移动过程中所述智能设备基于所述校验后的V-SLAM地图计算得到的每个地图节点对应的第一定位数据;一个地图节点对应的第一定位数据为:所述智能设备位于该地图节点对应的位置区域时的第一定位数据;
分析模块,用于针对所述校验后的V-SLAM地图中的每个地图节点,对该地图节点对应的第一定位数据进行准确度分析,得到分析结果;
第二确定模块,用于基于所述分析结果确定该地图节点的校验结果。
一种实施方式中,一个地图节点对应的第一定位数据包括:每帧图像对应的定位结果和定位结果置信度;所述每帧图像为:所述智能设备移动至所述一个地图节点对应的位置区域时,所述智能设备中配置的图像采集器针对所述一个地图节点对应的位置区域进行图像采集得到的;
所述分析模块,具体用于:
在该地图节点对应的第一定位数据中,统计定位结果置信度大于第四预设阈值的图像的帧数,作为有效帧数;
判断所述有效帧数是否大于第一预设帧数阈值,得到第一判断结果,作为所述第一定位数据的准确性分析结果;或者,确定所述智能设备经过该地图节点对应的位置区域的整个过程中采集的图像总帧数;计算所述有效帧数与所述总帧数的比值,作为第一比值;判断所述第一比值是否大于第一预设比例阈值,得到第二判断结果,作为所述第一定位数据的准确性分析结果。
一种实施方式中,一个地图节点对应的第一定位数据包括:每帧图像对应的定位结果;所述每帧图像为:所述智能设备移动至所述一个地图节点对应的位置区域时,所述智能设备中配置的图像采集器针对所述一个地图节点对应的位置区域进行图像采集得到的;
所述分析模块,还用于:
通过统计所述智能设备对每帧图像对应的定位结果的使用情况,得到使用帧数;
判断所述使用帧数是否大于第二预设帧数阈值,得到第三判断结果,作为所述第一定位数据的准确性分析结果;或者,确定所述智能设备经过该地图节点对应的位置区域的整个过程中采集的图像总帧数;计算所述使用帧数与所述总帧数的比值,作为第二比值;判断所述第二比值是否大于第二预设比例阈值,得到第四判断结果,作为所述第一定位数据的准确性分析结果。
一种实施方式中,所述装置还包括:
第四获取模块(图5中未示出),用于获取移动过程中所述智能设备基于自身配置的传感器计算得到的每个地图节点对应的第二定位数据;一个地图节点对应的第二定位数据为:所述智能设备位于该地图节点对应的位置区域时的第二定位数据;
所述分析模块,还用于:
确定该地图节点对应的第一定位数据与该地图节点对应的第二定位数据之间的位置偏差,作为所述第一定位数据的准确性分析结果;
所述装置还包括:判断模块(图5中未示出),用于判断所述智能设备是否直行通过该地图节点;如果否,则执行所述确定该地图节点对应的第一定位数据与该地图节点对应的第二定位数据之间的位置偏差,作为所述第一定位数据的准确性分析结果的步骤;如果是,则根据所述定位结果,计算所述智能设备在经过该地图节点对应的位置区域的整个过程中的行驶角度;判断所述行驶角度是否满足预设角度条件;如果不满足,确定该地图节点校验未通过;如果满足,执行所述确定该地图节点对应的第一定位数据与该地图节点对应的第二定位数据之间的位置偏差,作为所述第一定位数据的准确性分析结果的步骤;
一种实施方式中,所述装置还包括:
第五获取模块(图5中未示出),用于获取移动过程中所述智能设备基于自身配置的传感器计算得到的每个地图节点对应的第二定位数据;一个地图节点对应的第二定位数据为:所述智能设备位于该地图节点对应的位置区域时的第二定位数据;
所述分析模块,还用于:
统计定位结果置信度大于第四预设阈值的图像的帧数,作为有效帧数;
判断所述有效帧数是否大于第五预设阈值;
如果大于所述第五预设阈值,通过统计所述智能设备对每帧图像对应的定位结果的使用情况,得到使用帧数;
判断所述使用帧数是否大于第六预设阈值;
如果大于所述第六预设阈值,判断所述智能设备是否直行通过该地图节点;
如果直行通过,根据所述定位结果,计算所述智能设备在经过该地图节点对应的位置区域的整个过程中的行驶角度;
判断所述行驶角度是否满足预设角度条件;
如果满足,确定该地图节点对应的第一定位数据与该地图节点对应的第二定位数据之间的位置偏差;
所述第二确定模块,具体用于:
判断所述位置偏差是否大于第七预设阈值;
如果不大于,确定该地图节点通过校验;
所述第三获取模块,还用于:指示所述智能设备按照固定的线速度和角速度沿所述移动路径移动。
一种实施方式中,所述装置还包括:
增补模块(图5中未示出),用于若该地图节点的校验结果为未通过校验,则按照第一预设规则在该地图节点的周围确定增补地图节点;指示智能设备在所述增补地图节点对应的位置区域进行图像采集,对所述智能设备采集的图像进行分析得到图像特征点,作为第一图像特征点;将所述第一图像特征点与所述增补地图节点对应存储至所述V-SLAM地图中。
一种实施方式中,所述装置还包括:
重建模块(图5中未示出),用于若该地图节点的校验结果为未通过校验,则按照第二预设规则在该地图节点的周围确定重建地图节点;
指示智能设备在所述重建地图节点对应的位置区域进行图像采集,对所述智能设备采集的图像进行分析得到图像特征点,作为第二图像特征点;
将所述第二图像特征点与所述重建地图节点对应存储至所述V-SLAM地图中,并删除所述V-SLAM地图中存储的该地图节点及其对应的图像特征点。
应用本发明图5所示实施例,针对V-SLAM地图中的每个地图节点,获取该地图节点对应的图像特征点;对图像特征点进行评估,得到评估得分;若评估得分位于第一预设区间,则确定该地图节点校验通过;若评估得分位于第二预设区间,则对该地图节点进行增补或重建;若评估得分位于第三预设区间,则删除该地图节点,第一预设区间、第二预设区间和第三预设区间依次连续且不重叠;可见,本方案中,实现了根据地图节点对应的图像特征点,对V-SLAM地图的准确性进行校验。
本发明实施例还提供了一种电子设备,如图6所示,包括处理器601和存储器602,
存储器602,用于存放计算机程序;
处理器601,用于执行存储器602上所存放的程序时,实现上述任意一种V-SLAM地图校验方法。
该电子设备可以为计算机、服务器等设备,也可以为机器人、AGV(Automated Guided Vehicle,自动导航小车)、或者其他能够移动的智能设备,具体不做限定。
上述电子设备提到的存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital Signal Processing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一种V-SLAM地图校验方法。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任意一种V-SLAM地图校验方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在 包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例、设备实施例、计算机可读存储介质实施例、以及计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (24)
- 一种V-SLAM地图校验方法,包括:针对V-SLAM地图中的每个地图节点,获取该地图节点对应的图像特征点;对所述图像特征点进行评估,得到评估得分;若所述评估得分位于第一预设区间,则确定该地图节点校验通过;若所述评估得分位于第二预设区间,则对该地图节点进行增补或重建;若所述评估得分位于第三预设区间,则删除该地图节点,所述第一预设区间、所述第二预设区间和第三预设区间依次连续且不重叠。
- 根据权利要求1所述的方法,其中,所述对所述图像特征点进行评估,得到评估得分,包括:评估所述图像特征点的分布均匀性和/或质量,得到评估得分;其中,所述图像特征点分布越均匀则对应的评估得分越接近所述第一预设区间,所述质量越高则对应的评估得分越接近所述第一预设区间。
- 根据权利要求2所述的方法,其中,评估所述图像特征点的分布均匀性,得到评估得分,包括:针对预先设定的每种分割方式,利用该种分割方式对所述图像特征点所在的图像进行区域分割,得到多个分割区域;根据每个所述分割区域中的图像特征点数量,计算该种分割方式对应的分布均匀性评分;通过计算全部分割方式对应的分布均匀性评分之和,得到评估得分。
- 根据权利要求3所述的方法,其中,所述多个分割区域为两个分割区域;所述分割方式包括以下任意一种或多种:从竖直方向进行分割、从水平方向进行分割、45度方向进行分割、135度方向进行分割、将中心区域与外围区域分割。
- 根据权利要求2所述的方法,其中,评估所述图像特征点的质量,得到评估得分,包括:分别利用不同的角点检测算法,评估图像特征点的质量,得到每种角点检测算法分别对应的图像特征点的质量评分;基于所述每种角点检测算法分别对应的图像特征点的质量评分,得到评估得分。
- 根据权利要求5所述的方法,其中,所述分别利用不同的角点检测算法,评估图像特征点的质量,得到每种角点检测算法分别对应的图像特征点的质量评分,包括:利用第一角点检测算法,评估每个图像特征点的质量,得到每个图像特征点的第一评分;通过对所述第一评分进行排序,从所述第一评分中选择目标第一评分,作为所述第一角点检测算法对应的图像特征点的质量评分;利用第二角点检测算法,评估每个图像特征点的质量,得到每个图像特征点的第二评分;通过对所述第二评分进行排序,从所述第二评分中选择目标第二评分,作为所述第二角点检测算法对应的图像特征点的质量评分。
- 根据权利要求2所述的方法,其中,所述评估所述图像特征点的分布均匀性和/或质量,得到评估得分,包括:评估所述图像特征点的分布均匀性,得到分布均匀性评分,所述图像特征点分布越均匀则所述分布均匀性评分越低;通过利用第一角点检测算法评估每个图像特征点的质量,得到第一质量评分,所述图像特征点的质量越高则所述第一质量评分越高;通过利用第二角点检测算法评估每个图像特征点的质量,得到第二质量评分,所述图像特征点的质量越高则所述第二质量评分越高;计算所述分布均匀性评分与第一预设权重的乘积,作为第一乘积;计算所述第一质量评分与所述第二质量评分以及第二预设权重的乘积,作为第二乘积;计算所述第一乘积减去所述第二乘积后得到的数值,作为评估得分。
- 根据权利要求1所述的方法,其中,所述若所述评估得分位于第二预设区间,则对该地图节点进行增补或重建,包括:若所述评估得分位于所述第二预设区间中的第一子区间,则对该地图节点进行增补;若所述评估得分位于所述第二预设区间中的第二子区间,则对该地图节点进行重建地图节点,所述第一子区间和第二子区间依次连续且不重叠,所述第一子区间更接近所述第一区间,所述第二子区间更接近于所述第三区间。
- 根据权利要求1或8所述的方法,其中,对该地图节点进行增补,包括:按照第一预设规则在该地图节点的周围确定增补地图节点;指示智能设备在所述增补地图节点对应的位置区域进行图像采集,对所述智能设备采集的图像进行分析得到图像特征点,作为第一图像特征点;将所述第一图像特征点与所述增补地图节点对应存储至所述V-SLAM地图中;对该地图节点进行重建,包括:按照第二预设规则在该地图节点的周围确定重建地图节点;指示智能设备在所述重建地图节点对应的位置区域进行图像采集,对所述智能设备采集的图像进行分析得到图像特征点,作为第二图像特征点;将所述第二图像特征点与所述重建地图节点对应存储至所述V-SLAM地图中,并删除所述V-SLAM地图中存储的该地图节点及其对应的图像特征点。
- 根据权利要求1所述的方法,其中,所述方法还包括:获取校验后的V-SLAM地图,所述校验后的V-SLAM地图中的地图节点为:校验通过的地图节点、增补后的地图节点、重建后的地图节点中至少一种;生成智能设备的移动路径,所述移动路径中包括所述校验后的V-SLAM地图中的每个地图节点;指示所述智能设备沿所述移动路径移动,并获取移动过程中所述智能设备基于所述校验后的V-SLAM地图计算得到的每个地图节点对应的第一定位数据;一个地图节点对应的第一定位数据为:所述智能设备位于该地图节点对应的位置区域时的第一定位数据;针对所述校验后的V-SLAM地图中的每个地图节点,对该地图节点对应的第一定位数据进行准确度分析,得到分析结果;基于所述分析结果确定该地图节点的校验结果。
- 根据权利要求10所述的方法,其中,一个地图节点对应的第一定位数据包括:每帧图像对应的定位结果和定位结果置信度;所述每帧图像为:所述智能设备移动至所述一个地图节点对应的位置区域时,所述智能设备中配置的图像采集器针对所述一个地图节点对应的位置区域进行图像采集得到的;所述对该地图节点对应的第一定位数据进行准确度分析,得到分析结果,包括:在该地图节点对应的第一定位数据中,统计定位结果置信度大于第四预设阈值的图像的帧数,作为有效帧数;判断所述有效帧数是否大于第一预设帧数阈值,得到第一判断结果,作为所述第一定位数据的准确性分析结果;或者,确定所述智能设备经过该地图节点对应的位置区域的整个过程中采集的图像总帧数;计算所述有效帧数与所述总帧数的比值,作为第一比值;判断所述第一比值是否大于第一预设比例阈值,得到第二判断结果,作为所述第一定位数据的准确性分析结果。
- 根据权利要求10所述的方法,其中,一个地图节点对应的第一定位数据包括:每帧图像对应的定位结果;所述每帧图像为:所述智能设备移动至所述一个地图节点对应的位置区域时,所述智能设备中配置的图像采集器针对所述一个地图节点对应的位置区域进行图像采集得到的;所述对该地图节点对应的第一定位数据进行准确度分析,得到分析结果,包括:通过统计所述智能设备对每帧图像对应的定位结果的使用情况,得到使用帧数;判断所述使用帧数是否大于第二预设帧数阈值,得到第三判断结果,作为所述第一定位数据的准确性分析结果;或者,确定所述智能设备经过该地图节点对应的位置区域的整个过程中采集的图像总帧数;计算所述使用帧数与所述总帧数的比值,作为第二比值;判断所述第二比值是否大于第二预设比例阈值,得到第四判断结果,作为所述第一定位数据的准确性分析结果。
- 根据权利要求10所述的方法,其中,所述指示所述智能设备沿所述移动路径移动之后,还包括:获取移动过程中所述智能设备基于自身配置的传感器计算得到的每个地图节点对应的第二定位数据;一个地图节点对应的第二定位数据为:所述智能设备位于该地图节点对应的位置区域时的第二定位数据;所述对该地图节点对应的第一定位数据进行准确度分析,得到分析结果,包括:确定该地图节点对应的第一定位数据与该地图节点对应的第二定位数据之间的位置偏差,作为所述第一定位数据的准确性分析结果。
- 根据权利要求13所述的方法,其中,一个地图节点对应的第一定位数据包括:每帧图像对应的定位结果;所述每帧图像为:所述智能设备移动至所述一个地图节点对应的位置区域时,所述智能设备中配置的图像采集器针对所述一个地图节点对应的位置区域进行图像采集得到的;所述确定该地图节点对应的第一定位数据与该地图节点对应的第二定位数据之间的位置偏差,作为所述第一定位数据的准确性分析结果之前,还包括:判断所述智能设备是否直行通过该地图节点;如果否,则执行所述确定该地图节点对应的第一定位数据与该地图节点对应的第二定位数据之间的位置偏差,作为所述第一定位数据的准确性分析结果的步骤;如果是,则根据所述定位结果,计算所述智能设备在经过该地图节点对应的位置区域的整个过程中的行驶角度;判断所述行驶角度是否满足预设角度条件;如果不满足,确定该地图节点校验未通过;如果满足,执行所述确定该地图节点对应的第一定位数据与该地图节点对应的第二定位数据之间的位置偏差,作为所述第一定位数据的准确性分析结果的步骤。
- 根据权利要求10所述的方法,其中,一个地图节点对应的第一定位数据包括:每 帧图像对应的定位结果和定位结果置信度;所述每帧图像为:所述智能设备移动至所述一个地图节点对应的位置区域时,所述智能设备中配置的图像采集器针对所述一个地图节点对应的位置区域进行图像采集得到的;所述方法还包括:获取移动过程中所述智能设备基于自身配置的传感器计算得到的每个地图节点对应的第二定位数据;一个地图节点对应的第二定位数据为:所述智能设备位于该地图节点对应的位置区域时的第二定位数据;所述对该地图节点对应的第一定位数据进行准确度分析,得到分析结果,包括:统计定位结果置信度大于第四预设阈值的图像的帧数,作为有效帧数;判断所述有效帧数是否大于第五预设阈值;如果大于所述第五预设阈值,通过统计所述智能设备对每帧图像对应的定位结果的使用情况,得到使用帧数;判断所述使用帧数是否大于第六预设阈值;如果大于所述第六预设阈值,判断所述智能设备是否直行通过该地图节点;如果直行通过,根据所述定位结果,计算所述智能设备在经过该地图节点对应的位置区域的整个过程中的行驶角度;判断所述行驶角度是否满足预设角度条件;如果满足,确定该地图节点对应的第一定位数据与该地图节点对应的第二定位数据之间的位置偏差;所述基于所述分析结果确定该地图节点的校验结果,包括:判断所述位置偏差是否大于第七预设阈值;如果不大于,确定该地图节点通过校验。
- 根据权利要求10所述的方法,其中,所述指示所述智能设备沿所述移动路径移动,包括:指示所述智能设备按照固定的线速度和角速度沿所述移动路径移动。
- 根据权利要求10所述的方法,其中,所述基于所述分析结果确定该地图节点的校验结果之后,还包括:若该地图节点的校验结果为未通过校验,则按照第一预设规则在该地图节点的周围确定增补地图节点;指示智能设备在所述增补地图节点对应的位置区域进行图像采集,对所述智能设备采集的图像进行分析得到图像特征点,作为第一图像特征点;将所述第一图像特征点与所述增补地图节点对应存储至所述V-SLAM地图中。
- 根据权利要求10所述的方法,其中,所述基于所述分析结果确定该地图节点的校验结果之后,还包括:若该地图节点的校验结果为未通过校验,则按照第二预设规则在该地图节点的周围确定重建地图节点;指示智能设备在所述重建地图节点对应的位置区域进行图像采集,对所述智能设备采集的图像进行分析得到图像特征点,作为第二图像特征点;将所述第二图像特征点与所述重建地图节点对应存储至所述V-SLAM地图中,并删除 所述V-SLAM地图中存储的该地图节点及其对应的图像特征点。
- 一种V-SLAM地图校验装置,包括:第一获取模块、评估模块、第一确定模块和删除模块,还包括:增补模块和/或重建模块;其中,第一获取模块,用于针对V-SLAM地图中的每个地图节点,获取该地图节点对应的图像特征点;评估模块,用于对所述图像特征点进行评估,得到评估得分;若所述评估得分位于第一预设区间,则触发第一确定模块;若所述评估得分位于第二预设区间,则触发增补模块和/或重建模块;若所述评估得分位于第三预设区间,则触发删除模块,所述第一预设区间、所述第二预设区间和第三预设区间依次连续且不重叠;第一确定模块,用于确定该地图节点校验通过;增补模块,用于对该地图节点进行增补;重建模块,用于对该地图节点进行重建;删除模块,用于删除该地图节点。
- 根据权利要求19所述的装置,其中,所述评估模块,具体用于:评估所述图像特征点的分布均匀性和/或质量,得到评估得分;其中,所述图像特征点分布越均匀则对应的评估得分越接近所述第一预设区间,所述质量越高则对应的评估得分越接近所述第一预设区间;所述评估模块,包括:均匀性评估子模块,用于针对预先设定的每种分割方式,利用该种分割方式对所述图像特征点所在的图像进行区域分割,得到多个分割区域;根据每个所述分割区域中的图像特征点数量,计算该种分割方式对应的分布均匀性评分;通过计算全部分割方式对应的分布均匀性评分之和,得到评估得分;所述多个分割区域为两个分割区域;所述分割方式包括以下任意一种或多种:从竖直方向进行分割、从水平方向进行分割、45度方向进行分割、135度方向进行分割、将中心区域与外围区域分割;所述评估模块包括:质量评估子模块,用于分别利用不同的角点检测算法,评估图像特征点的质量,得到每种角点检测算法分别对应的图像特征点的质量评分;基于所述每种角点检测算法分别对应的图像特征点的质量评分,得到评估得分;所述质量评估子模块,具体用于:利用第一角点检测算法,评估每个图像特征点的质量,得到每个图像特征点的第一评分;通过对所述第一评分进行排序,从所述第一评分中选择目标第一评分,作为所述第一角点检测算法对应的图像特征点的质量评分;利用第二角点检测算法,评估每个图像特征点的质量,得到每个图像特征点的第二评分;通过对所述第二评分进行排序,从所述第二评分中选择目标第二评分,作为所述第二角点检测算法对应的图像特征点的质量评分;基于所述每种角点检测算法分别对应的图像特征点的质量评分,得到评估得分;所述评估模块包括:第一评估子模块,用于评估所述图像特征点的分布均匀性,得到分布均匀性评分,所述图像特征点分布越均匀则所述分布均匀性评分越低;第二评估子模块,用于通过利用第一角点检测算法评估每个图像特征点的质量,得到第一质量评分,所述图像特征点的质量越高则所述第一质量评分越高;第三评估子模块,用于通过利用第二角点检测算法评估每个图像特征点的质量,得到第二质量评分,所述图像特征点的质量越高则所述第二质量评分越高;第四评估子模块,用于计算所述分布均匀性评分与第一预设权重的乘积,作为第一乘积;计算所述第一质量评分与所述第二质量评分以及第二预设权重的乘积,作为第二乘积;计算所述第一乘积减去所述第二乘积后得到的数值,作为评估得分;所述增补模块,具体用于若所述评估得分位于所述第二预设区间中的第一子区间,则对该地图节点进行增补;所述重建模块,具体用于若所述评估得分位于所述第二预设区间中的第二子区间,则对该地图节点进行重建地图节点,所述第一子区间和第二子区间依次连续且不重叠,所述第一子区间更接近所述第一区间,所述第二子区间更接近于所述第三区间;所述增补模块,还用于按照第一预设规则在该地图节点的周围确定增补地图节点;指示智能设备在所述增补地图节点对应的位置区域进行图像采集,对所述智能设备采集的图像进行分析得到图像特征点,作为第一图像特征点;将所述第一图像特征点与所述增补地图节点对应存储至所述V-SLAM地图中;所述重建模块,还用于按照第二预设规则在该地图节点的周围确定重建地图节点;指示智能设备在所述重建地图节点对应的位置区域进行图像采集,对所述智能设备采集的图像进行分析得到图像特征点,作为第二图像特征点;将所述第二图像特征点与所述重建地图节点对应存储至所述V-SLAM地图中,并删除所述V-SLAM地图中存储的该地图节点及其对应的图像特征点。
- 根据权利要求19所述的装置,其中,所述装置还包括:第二获取模块,用于获取校验后的V-SLAM地图,所述校验后的V-SLAM地图中的地图节点为:校验通过的地图节点、增补后的地图节点、重建后的地图节点中的至少一种;生成模块,用于生成智能设备的移动路径,所述移动路径中包括所述校验后的V-SLAM地图中的每个地图节点;第三获取模块,用于指示所述智能设备沿所述移动路径移动,并获取移动过程中所述智能设备基于所述校验后的V-SLAM地图计算得到的每个地图节点对应的第一定位数据;一个地图节点对应的第一定位数据为:所述智能设备位于该地图节点对应的位置区域时的第一定位数据;分析模块,用于针对所述校验后的V-SLAM地图中的每个地图节点,对该地图节点对应的第一定位数据进行准确度分析,得到分析结果;第二确定模块,用于基于所述分析结果确定该地图节点的校验结果;其中,一个地图节点对应的第一定位数据包括:每帧图像对应的定位结果和定位结果置信度;所述每帧图像为:所述智能设备移动至所述一个地图节点对应的位置区域时,所述智能设备中配置的图像采集器针对所述一个地图节点对应的位置区域进行图像采集得到的;所述分析模块,具体用于:在该地图节点对应的第一定位数据中,统计定位结果置信度大于第四预设阈值的图像的帧数,作为有效帧数;判断所述有效帧数是否大于第一预设帧数阈值,得到第一判断结果,作为所述第一定位数据的准确性分析结果;或者,确定所述智能设备经过该地图节点对应的位置区域的整个过程中采集的图像总帧数;计算所述有效帧数与所述总帧数的比值,作为第一比值;判断所述第一比值是否大于第一预设比例阈值,得到第二判断结果,作为所述第一定位数据的准确性分析结果;所述分析模块,还用于:通过统计所述智能设备对每帧图像对应的定位结果的使用情况,得到使用帧数;判断所述使用帧数是否大于第二预设帧数阈值,得到第三判断结果,作为所述第一定位数据的准确性分析结果;或者,确定所述智能设备经过该地图节点对应的位置区域的整个过程中采集的图像总帧数;计算所述使用帧数与所述总帧数的比值,作为第二比值;判断所述第二比值是否大于第二预设比例阈值,得到第四判断结果,作为所述第一定位数据的准确性分析结果;所述装置还包括:第四获取模块,用于获取移动过程中所述智能设备基于自身配置的传感器计算得到的每个地图节点对应的第二定位数据;一个地图节点对应的第二定位数据为:所述智能设备位于该地图节点对应的位置区域时的第二定位数据;所述分析模块,还用于:确定该地图节点对应的第一定位数据与该地图节点对应的第二定位数据之间的位置偏差,作为所述第一定位数据的准确性分析结果;所述装置还包括:判断模块,用于判断所述智能设备是否直行通过该地图节点;如果否,则执行所述确定该地图节点对应的第一定位数据与该地图节点对应的第二定位数据之间的位置偏差,作为所述第一定位数据的准确性分析结果的步骤;如果是,则根据所述定位结果,计算所述智能设备在经过该地图节点对应的位置区域的整个过程中的行驶角度;判断所述行驶角度是否满足预设角度条件;如果不满足,确定该地图节点校验未通过;如果满足,执行所述确定该地图节点对应的第一定位数据与该地图节点对应的第二定位数据之间的位置偏差,作为所述第一定位数据的准确性分析结果的步骤;所述装置还包括:第五获取模块,用于获取移动过程中所述智能设备基于自身配置的传感器计算得到的每个地图节点对应的第二定位数据;一个地图节点对应的第二定位数据为:所述智能设备位于该地图节点对应的位置区域时的第二定位数据;所述分析模块,还用于:统计定位结果置信度大于第四预设阈值的图像的帧数,作为有效帧数;判断所述有效帧数是否大于第五预设阈值;如果大于所述第五预设阈值,通过统计所述智能设备对每帧图像对应的定位结果的使用情况,得到使用帧数;判断所述使用帧数是否大于第六预设阈值;如果大于所述第六预设阈值,判断所述智能设备是否直行通过该地图节点;如果直行通过,根据所述定位结果,计算所述智能设备在经过该地图节点对应的位置 区域的整个过程中的行驶角度;判断所述行驶角度是否满足预设角度条件;如果满足,确定该地图节点对应的第一定位数据与该地图节点对应的第二定位数据之间的位置偏差;所述第二确定模块,具体用于:判断所述位置偏差是否大于第七预设阈值;如果不大于,确定该地图节点通过校验;所述第三获取模块,还用于:指示所述智能设备按照固定的线速度和角速度沿所述移动路径移动;所述装置还包括:增补模块,用于若该地图节点的校验结果为未通过校验,则按照第一预设规则在该地图节点的周围确定增补地图节点;指示智能设备在所述增补地图节点对应的位置区域进行图像采集,对所述智能设备采集的图像进行分析得到图像特征点,作为第一图像特征点;将所述第一图像特征点与所述增补地图节点对应存储至所述V-SLAM地图中;重建模块,用于若该地图节点的校验结果为未通过校验,则按照第二预设规则在该地图节点的周围确定重建地图节点;指示智能设备在所述重建地图节点对应的位置区域进行图像采集,对所述智能设备采集的图像进行分析得到图像特征点,作为第二图像特征点;将所述第二图像特征点与所述重建地图节点对应存储至所述V-SLAM地图中,并删除所述V-SLAM地图中存储的该地图节点及其对应的图像特征点。
- 一种电子设备,包括处理器和存储器;存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序时,实现权利要求1-18任一所述的方法步骤。
- 一种计算机可读存储介质,所述存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-18任一所述的方法步骤。
- 一种包含指令的计算机程序产品,当其在计算机上运行时,使得所述计算机执行权利要求1-18任一项所述的方法。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011620255.X | 2020-12-31 | ||
CN202011628132.0 | 2020-12-31 | ||
CN202011628132.0A CN112783995B (zh) | 2020-12-31 | 2020-12-31 | 一种v-slam地图校验方法、装置及设备 |
CN202011620255.XA CN112833912B (zh) | 2020-12-31 | 2020-12-31 | 一种v-slam地图校验方法、装置及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022143713A1 true WO2022143713A1 (zh) | 2022-07-07 |
Family
ID=82260236
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2021/142280 WO2022143713A1 (zh) | 2020-12-31 | 2021-12-29 | 一种v-slam地图校验方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2022143713A1 (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107990899A (zh) * | 2017-11-22 | 2018-05-04 | 驭势科技(北京)有限公司 | 一种基于slam的定位方法和系统 |
CN109387204A (zh) * | 2018-09-26 | 2019-02-26 | 东北大学 | 面向室内动态环境的移动机器人同步定位与构图方法 |
CN109584302A (zh) * | 2018-11-27 | 2019-04-05 | 北京旷视科技有限公司 | 相机位姿优化方法、装置、电子设备和计算机可读介质 |
CN109661659A (zh) * | 2018-07-19 | 2019-04-19 | 驭势科技(北京)有限公司 | 视觉定位地图存储及加载方法、装置、系统及存储介质 |
WO2019122939A1 (en) * | 2017-12-21 | 2019-06-27 | University of Zagreb, Faculty of Electrical Engineering and Computing | Interactive computer-implemented method, graphical user interface and computer program product for building a high-accuracy environment map |
CN111681163A (zh) * | 2020-04-23 | 2020-09-18 | 北京三快在线科技有限公司 | 构建点云地图的方法、装置、电子设备和存储介质 |
CN112783995A (zh) * | 2020-12-31 | 2021-05-11 | 杭州海康机器人技术有限公司 | 一种v-slam地图校验方法、装置及设备 |
-
2021
- 2021-12-29 WO PCT/CN2021/142280 patent/WO2022143713A1/zh active Application Filing
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107990899A (zh) * | 2017-11-22 | 2018-05-04 | 驭势科技(北京)有限公司 | 一种基于slam的定位方法和系统 |
WO2019122939A1 (en) * | 2017-12-21 | 2019-06-27 | University of Zagreb, Faculty of Electrical Engineering and Computing | Interactive computer-implemented method, graphical user interface and computer program product for building a high-accuracy environment map |
CN109661659A (zh) * | 2018-07-19 | 2019-04-19 | 驭势科技(北京)有限公司 | 视觉定位地图存储及加载方法、装置、系统及存储介质 |
CN109387204A (zh) * | 2018-09-26 | 2019-02-26 | 东北大学 | 面向室内动态环境的移动机器人同步定位与构图方法 |
CN109584302A (zh) * | 2018-11-27 | 2019-04-05 | 北京旷视科技有限公司 | 相机位姿优化方法、装置、电子设备和计算机可读介质 |
CN111681163A (zh) * | 2020-04-23 | 2020-09-18 | 北京三快在线科技有限公司 | 构建点云地图的方法、装置、电子设备和存储介质 |
CN112783995A (zh) * | 2020-12-31 | 2021-05-11 | 杭州海康机器人技术有限公司 | 一种v-slam地图校验方法、装置及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109903312B (zh) | 一种基于视频多目标跟踪的足球球员跑动距离统计方法 | |
CN108416791B (zh) | 一种基于双目视觉的并联机构动平台位姿监测与跟踪方法 | |
KR102205096B1 (ko) | 거래 위험 검출 방법 및 장치 | |
CN109961106B (zh) | 轨迹分类模型的训练方法和装置、电子设备 | |
CN110400332A (zh) | 一种目标检测跟踪方法、装置及计算机设备 | |
CN107808123B (zh) | 图像可行域检测方法、电子设备、存储介质、检测系统 | |
CN113361354B (zh) | 轨道部件巡检方法、装置、计算机设备和存储介质 | |
CN112347817B (zh) | 一种视频目标检测与跟踪方法及装置 | |
CN111950440B (zh) | 一种识别与定位门的方法、装置及存储介质 | |
CN111238854B (zh) | 一种扫地机器人覆盖率的确定方法、装置、设备及介质 | |
CN110533654A (zh) | 零部件的异常检测方法及装置 | |
CN112132853B (zh) | 地面导向箭头的构建方法及其装置、电子设备及存储介质 | |
CN110851978A (zh) | 一种基于可见性的摄像机位置优化方法 | |
CN114219073A (zh) | 属性信息的确定方法、装置、存储介质及电子装置 | |
WO2022143713A1 (zh) | 一种v-slam地图校验方法、装置及设备 | |
CN111540202B (zh) | 一种相似卡口确定方法、装置、电子设备及可读存储介质 | |
CN112783995B (zh) | 一种v-slam地图校验方法、装置及设备 | |
CN112833912B (zh) | 一种v-slam地图校验方法、装置及设备 | |
CN112529836A (zh) | 高压线路缺陷检测方法、装置、存储介质及电子设备 | |
CN111951328A (zh) | 一种物体位置检测方法、装置、设备和存储介质 | |
CN106897735A (zh) | 一种快速移动目标的跟踪方法及装置 | |
CN115797310A (zh) | 一种光伏电站组串倾角的确定方法及电子设备 | |
CN116952277A (zh) | 一种基于人工智能和行为特征的潜在位置估算方法及系统 | |
CN110139312B (zh) | 确定高速公路用户的方法、装置、电子设备和存储介质 | |
CN111220173B (zh) | 一种poi的识别方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 21914447 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 21914447 Country of ref document: EP Kind code of ref document: A1 |