CN118053153A - Point cloud data identification method and device, storage medium and electronic equipment - Google Patents
Point cloud data identification method and device, storage medium and electronic equipment Download PDFInfo
- Publication number
- CN118053153A CN118053153A CN202410457520.9A CN202410457520A CN118053153A CN 118053153 A CN118053153 A CN 118053153A CN 202410457520 A CN202410457520 A CN 202410457520A CN 118053153 A CN118053153 A CN 118053153A
- Authority
- CN
- China
- Prior art keywords
- point cloud
- cloud data
- historical
- feature matrix
- target
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 60
- 239000011159 matrix material Substances 0.000 claims abstract description 182
- 238000004590 computer program Methods 0.000 claims description 14
- 230000004888 barrier function Effects 0.000 claims description 7
- 238000012216 screening Methods 0.000 claims description 6
- 238000010276 construction Methods 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 11
- 230000006872 improvement Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 230000007613 environmental effect Effects 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 230000011218 segmentation Effects 0.000 description 4
- 238000001514 detection method Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 238000003064 k means clustering Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 229920001296 polysiloxane Polymers 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000010979 ruby Substances 0.000 description 1
- 229910001750 ruby Inorganic materials 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Landscapes
- Image Analysis (AREA)
Abstract
The specification discloses a method and a device for identifying point cloud data, a storage medium and electronic equipment. The identification method of the point cloud data comprises the following steps: the method comprises the steps of obtaining point cloud data to be identified, collected by unmanned equipment, projecting each three-dimensional point cloud point contained in the point cloud data to be identified onto a specified two-dimensional plane, and constructing a feature matrix corresponding to the point cloud data to be identified according to the three-dimensional point cloud points projected into each sector grid area to serve as a target feature matrix, so that whether a place corresponding to the point cloud data to be identified is an identification result of a historical access place or not can be determined according to the similarity between the target feature matrix and the historical feature matrix corresponding to the historical point cloud data, and the identification efficiency of the point cloud data is improved.
Description
Technical Field
The present disclosure relates to the field of computer vision, and in particular, to a method and apparatus for identifying point cloud data, a storage medium, and an electronic device.
Background
The location recognition technology is an important technology in the autonomous navigation field, and mainly refers to that unmanned equipment (such as an unmanned vehicle, an unmanned plane and the like) senses surrounding environment by using a carried sensor, and judges whether the current location of the unmanned equipment is accessed or not by using sensing information, so that the positioning function of the unmanned equipment can be realized based on a judging result, or a closed loop detection function in a map building (SLAM) system and the like can be realized based on the judging result.
In general, since a lidar is used as an environment sensing sensor with high detection accuracy, wide detection range and strong illumination robustness, point cloud data collected by the lidar is widely applied to location recognition of unmanned equipment. At present, when point cloud data collected based on a laser radar are used for identifying a place, key points contained in different point cloud data are generally in one-to-one correspondence, so that the similarity degree of the point cloud data of the place where the unmanned equipment is currently located and the point cloud data collected in history is judged according to the consistency of field information around the mutually matched key points, and whether the place where the unmanned equipment is currently located is accessed or not is further determined. However, since the method needs to extract a large number of key points and needs to establish a one-to-one correspondence relationship between the key points, the time complexity of determining the similarity degree between the point cloud data of the current location and the point cloud data collected in a history is high, so that the real-time performance of location identification is poor.
Therefore, how to improve the real-time performance of location recognition is a problem to be solved.
Disclosure of Invention
The present disclosure provides a method, an apparatus, a storage medium, and an electronic device for identifying point cloud data, so as to partially solve the foregoing problems in the prior art.
The technical scheme adopted in the specification is as follows:
the specification provides a method for identifying point cloud data, which comprises the following steps:
Acquiring point cloud data to be identified, which are acquired by unmanned equipment;
projecting each three-dimensional point cloud point contained in the point cloud data to be identified onto a specified two-dimensional plane, wherein the specified two-dimensional plane contains a plurality of sector grid areas which are divided according to the distance from an origin and the azimuth angle;
constructing a feature matrix corresponding to the point cloud data to be identified according to the three-dimensional point cloud points projected into each sector grid area, and taking the feature matrix as a target feature matrix, wherein each sector grid area corresponds to one element in the target feature matrix, and for each sector grid area, the element value of the element corresponding to the target feature matrix in the sector grid area is determined according to the vertical height distance between each three-dimensional point cloud point projected into the sector grid area and the appointed two-dimensional plane;
and determining whether the point corresponding to the point cloud data to be identified is an identification result of a historical access point according to the similarity between the target feature matrix and the historical feature matrix corresponding to the historical point cloud data, and executing the task according to the identification result.
Optionally, constructing a feature matrix corresponding to the point cloud data to be identified according to the three-dimensional point cloud points projected into each sector grid area, which specifically includes:
Determining a sector grid area projected by the three-dimensional point cloud points according to coordinate values of the three-dimensional point cloud points corresponding to coordinates of two dimensions on a specified two-dimensional plane aiming at each three-dimensional point cloud point contained in the point cloud data to be identified;
and constructing a feature matrix corresponding to the point cloud data to be identified according to the three-dimensional point cloud points projected into each sector grid area.
Optionally, according to the similarity between the target feature matrix and the historical feature matrix corresponding to the historical point cloud data, determining whether the location corresponding to the point cloud data to be identified is an identification result of the historical access location specifically includes:
The element value of each column of elements contained in the target feature matrix is used as the feature representation of each sector;
For each preset clustering center, determining the number of sector characteristic representations matched with the clustering center according to the similarity between each sector characteristic representation and the center characteristic representation of the preset clustering center;
Determining a cluster feature representation corresponding to the target feature matrix according to the number of the sector feature representations matched with each cluster center, wherein the dimension value of each dimension in the cluster feature representation is the number of the sector feature representations matched with each cluster center;
and determining whether the location corresponding to the point cloud data to be identified is an identification result of the historical access location according to the similarity between the target cluster feature representation and each historical cluster feature representation which is determined in advance according to the historical feature matrix of each historical point cloud data.
Optionally, determining whether the location corresponding to the point cloud data to be identified is an identification result of a historical access location according to the similarity between the target cluster feature representation and each historical cluster feature representation determined in advance according to a historical feature matrix of each historical point cloud data specifically includes:
According to the similarity between the target cluster feature representation and each history cluster feature representation which is determined in advance according to the history feature matrix of each history point cloud data, determining at least part of the history point cloud data as candidate history point cloud data;
And for each candidate historical point cloud data, determining whether the point corresponding to the point cloud data to be identified is an identification result of the historical access point according to the similarity between the target feature matrix and the historical feature matrix corresponding to the candidate historical point cloud data.
Optionally, the historical cluster feature representations are determined in advance according to a historical feature matrix of the historical point cloud data and are stored through a K-dimensional Tree KD-Tree, wherein each historical cluster feature representation is used as a value stored in one node of the K-dimensional Tree;
according to the similarity between the target cluster feature representation and each history cluster feature representation which is determined in advance according to the history feature matrix of each history point cloud data, determining at least part of history point cloud data as candidate history point cloud data, wherein the method specifically comprises the following steps:
Traversing the K-dimensional tree to inquire out at least partial historical clustering characteristic representations with the similarity higher than a preset threshold value from historical clustering characteristic representations stored in each node of the K-dimensional tree, and taking the at least partial historical clustering characteristic representations with the similarity higher than the preset threshold value as candidate historical clustering characteristic representations;
and using the history point cloud data corresponding to the candidate history clustering feature representation as candidate history point cloud data.
Optionally, according to the similarity between the target feature matrix and the historical feature matrix corresponding to the historical point cloud data, determining whether the location corresponding to the point cloud data to be identified is an identification result of the historical access location specifically includes:
determining, for an element contained in the target feature matrix, a difference value between an element value of the element and an element value of the element corresponding to the element in a history feature matrix corresponding to history point cloud data;
And determining the similarity between the target feature matrix and the historical feature matrix corresponding to the historical point cloud data according to the difference values, and determining whether the point corresponding to the point cloud data to be identified is an identification result of the historical access point according to the similarity between the target feature matrix and the historical feature matrix corresponding to the historical point cloud data.
Optionally, according to the similarity between the target feature matrix and the historical feature matrix corresponding to the historical point cloud data, determining whether the location corresponding to the point cloud data to be identified is an identification result of the historical access location specifically includes:
Determining whether a judgment result of obstacle shielding exists in a sector grid area corresponding to each column element according to the deviation between the element value of the column element and the element value of each element matched with the column element in the historical feature matrix corresponding to the historical point cloud data aiming at each column element contained in the target feature matrix;
According to the judging result, screening out elements which are not blocked by the barrier from the column of elements to serve as first target elements, and screening out elements which are not blocked by the barrier from elements matched with the column of elements in the history feature matrix to serve as second target elements;
And determining whether the location corresponding to the point cloud data to be identified is an identification result of the historical access location according to the similarity between each first target element and each second target element.
Optionally, according to a deviation between an element value of the column element and an element value of each element matched with the column element in a history feature matrix corresponding to the history point cloud data, determining whether a judgment result of shielding an obstacle exists in a fan-shaped grid area corresponding to the column element specifically includes:
Determining an element with a corresponding element value which is not 0 and the maximum row coordinate in the target feature matrix in the column element as a third target element;
Determining each element matched with the column of elements from a history feature matrix corresponding to the history point cloud data to serve as each candidate element, and determining an element with a corresponding element value which is not 0 and the maximum row coordinate in the target feature matrix from each candidate element to serve as a fourth target element;
And determining whether a judgment result of obstacle shielding exists in the sector grid area corresponding to the column element according to the difference value between the row coordinate corresponding to the third target element and the row coordinate corresponding to the fourth target element.
The specification provides a point cloud data identification device, which comprises:
The acquisition module is used for acquiring point cloud data to be identified, which are acquired by the unmanned equipment;
The projection module is used for projecting each three-dimensional point cloud point contained in the point cloud data to be identified onto a specified two-dimensional plane, wherein the specified two-dimensional plane comprises a plurality of sector grid areas divided according to the distance from an origin and the azimuth angle;
The construction module is used for constructing a feature matrix corresponding to the point cloud data to be identified according to the three-dimensional point cloud points projected into each fan-shaped grid area, and taking the feature matrix as a target feature matrix, wherein each fan-shaped grid area corresponds to one element in the target feature matrix, and for each fan-shaped grid area, the element value of the element corresponding to the target feature matrix in the fan-shaped grid area is determined according to the vertical height distance between each three-dimensional point cloud point projected into the fan-shaped grid area and the appointed two-dimensional plane;
and the execution module is used for determining whether the point corresponding to the point cloud data to be identified is an identification result of the historical access point according to the similarity between the target feature matrix and the historical feature matrix corresponding to the historical point cloud data, and executing the task according to the identification result.
The above-mentioned at least one technical scheme that this specification adopted can reach following beneficial effect:
In the method for identifying point cloud data provided in the present specification, point cloud data to be identified acquired by an unmanned device is obtained, each three-dimensional point cloud point included in the point cloud data to be identified is projected onto a specified two-dimensional plane, the specified two-dimensional plane includes a plurality of sector grid areas divided according to a distance from an origin and an azimuth angle, a feature matrix corresponding to the point cloud data to be identified is constructed according to the three-dimensional point cloud points projected into each sector grid area, and is used as a target feature matrix, wherein each sector grid area corresponds to one element in the target feature matrix, for each sector grid area, an element value of an element corresponding to the sector grid area is determined according to a vertical height distance between each three-dimensional point cloud point projected into the sector grid area and the specified two-dimensional plane, whether a point corresponding to the point cloud data to be identified is an identification result of a historical access point or not is determined according to a similarity between the target feature matrix and the historical feature matrix corresponding to the historical point cloud data, and task execution is performed according to the identification result.
According to the method, the environmental information of the current location of the unmanned equipment contained in the point cloud data to be identified can be globally represented by the target feature matrix corresponding to the point cloud data to be identified, so that the server can determine whether the current location of the unmanned equipment is a historical access location or not by determining the similarity between the target feature matrix and the predetermined historical feature matrix corresponding to each piece of historical point cloud data, and further the identification efficiency of the point cloud data can be improved.
Drawings
The accompanying drawings, which are included to provide a further understanding of the specification, illustrate and explain the exemplary embodiments of the present specification and their description, are not intended to limit the specification unduly. In the drawings:
Fig. 1 is a flow chart of a method for identifying point cloud data provided in the present specification;
FIG. 2 is a schematic view of a fan-shaped grid region provided in the present specification;
FIG. 3 is a schematic illustration of a designated two-dimensional plane under obstruction provided in the present specification;
fig. 4 is a schematic diagram of an identification device for point cloud data provided in the present specification;
fig. 5 is a schematic diagram of an electronic device corresponding to fig. 1 provided in the present specification.
Detailed Description
For the purposes of making the objects, technical solutions and advantages of the present specification more apparent, the technical solutions of the present specification will be clearly and completely described below with reference to specific embodiments of the present specification and corresponding drawings. It will be apparent that the described embodiments are only some, but not all, of the embodiments of the present specification. All other embodiments, which can be made by one of ordinary skill in the art without undue burden from the present disclosure, are intended to be within the scope of the present disclosure.
The following describes in detail the technical solutions provided by the embodiments of the present specification with reference to the accompanying drawings.
Fig. 1 is a flow chart of a method for identifying point cloud data provided in the present specification, which includes the following steps:
s101: and acquiring point cloud data to be identified, which are acquired by the unmanned equipment.
In the description, in the driving process of the unmanned equipment, point cloud data corresponding to the environment of the place where the unmanned equipment is currently located can be collected through a laser radar sensor installed on the unmanned equipment and used as point cloud data to be identified, and then the point cloud data to be identified can be analyzed to determine whether the place where the unmanned equipment is currently located is a place where history is accessed, and further task execution can be performed according to an analysis result.
The tasks mentioned above may be determined according to actual requirements, for example: and determining the current position information of the unmanned equipment according to the analysis result, and executing tasks such as navigation and the like according to the current position information of the unmanned equipment.
For another example: and judging whether to add the point cloud data of the current position acquired by the unmanned equipment to the point cloud map of the target area to be drawn according to the result of whether the current position of the unmanned equipment is the position visited by the history, so as to execute the map construction task of the target area.
In this specification, an execution body for implementing the identification method of point cloud data may refer to, for example: unmanned equipment such as an unmanned vehicle and an unmanned plane can also refer to designated equipment such as a server arranged on a service platform, and for convenience of description, the identification method of the point cloud data provided in the specification is described below by taking the server as an execution main body.
When the execution subject of the method for realizing the point cloud data is the specified device, the specified device can receive the point cloud data sent by the unmanned device as the point cloud data to be recognized, analyze the point cloud data to be recognized to obtain an analysis result of whether the current place where the unmanned device is located is a place which is accessed by the history, and further execute the task according to the analysis result.
S102: and projecting each three-dimensional point cloud point contained in the point cloud data to be identified onto a specified two-dimensional plane, wherein the specified two-dimensional plane contains a plurality of sector grid areas which are divided according to the distance from an origin and the azimuth angle.
S103: and constructing a feature matrix corresponding to the point cloud data to be identified according to the three-dimensional point cloud points projected into each sector grid area, and taking the feature matrix as a target feature matrix, wherein each sector grid area corresponds to one element in the target feature matrix, and for each sector grid area, the element value of the element corresponding to the target feature matrix in the sector grid area is determined according to the vertical height distance between each three-dimensional point cloud point projected into the sector grid area and the appointed two-dimensional plane.
In this specification, in order to reduce complexity of data processing on complex point cloud data and reduce memory required for data processing on complex point cloud data, after obtaining point cloud data to be identified sent by an unmanned device, a server may project each three-dimensional point cloud point included in the point cloud data to be identified onto a specified two-dimensional plane, so as to determine a feature matrix corresponding to the point cloud data to be identified, as a target feature matrix, and further determine whether there is historical point cloud data similar to the point cloud data to be identified according to the target feature matrix corresponding to the point cloud data to be identified and the historical feature matrix corresponding to each historical point cloud data, so as to determine whether a location corresponding to the point cloud data to be identified is an identification result of a historical access location.
The specified two-dimensional plane may be determined according to actual requirements, for example: an XY plane composed of an X axis (coordinate axis in the horizontal direction, i.e., coordinate axis along the left-to-right direction) and a Y axis (coordinate axis perpendicular to the X axis), further for example: a plane consisting of the X-axis and the Z-axis, etc.
The above-mentioned designated two-dimensional plane contains a plurality of sector-shaped grid areas divided by the distance from the origin and azimuth angle, as shown in fig. 2.
Fig. 2 is a schematic view of a fan-shaped grid region provided in the present specification.
As can be seen in conjunction with fig. 2, the specified two-dimensional plane may be oriented at different azimuth angles (e.g.:~/>,…,~/> ) Divided into sectors, each sector may be separated by a distance from the origin (which may be the center of gravity of the drone) (e.g.: 0-10, 10-20, …) into different sector-shaped grid areas.
Further, the server may determine, for each three-dimensional point cloud point included in the point cloud data to be identified, a sector grid area projected by the three-dimensional point cloud point according to coordinate values of coordinates of the three-dimensional point cloud point corresponding to two dimensions on the specified two-dimensional plane, and specifically may refer to the following formula:
in the above-mentioned formula(s), For the determined row index (i.e. which grid is the distance from the origin)/>, of the sector grid regionFor the column index (i.e. the grid belonging to the angular range of azimuth) of the determined sector-shaped grid region/>For a preset number of division rings (i.e. dividing several layers altogether by distance from origin)/>For the preset number of divided sector areas,/>And x is the abscissa of the three-dimensional point cloud point, and y is the ordinate of the three-dimensional point cloud point.
From the above, it can be seen that, by the above method, each three-dimensional point cloud point included in the point cloud data to be identified can be divided into each sector-shaped grid region, and then, a feature matrix corresponding to the point cloud data to be identified can be constructed according to the three-dimensional point cloud points projected into each sector-shaped grid region, where each sector-shaped grid region in the feature matrix corresponding to the point cloud data to be identified corresponds to an element in the target feature matrix, and for each sector-shaped grid region, the element value of the element corresponding to the target feature matrix in the sector-shaped grid region is determined according to the vertical height distance between each three-dimensional point cloud point projected into the sector-shaped grid region and the specified two-dimensional plane.
For example: if in a specified two-dimensional plane, according to eachDividing a specified two-dimensional plane into 12 sector areas, and dividing each sector area into 10 sector grid areas according to the difference of the distance from an origin, namely dividing the specified two-dimensional plane into 120 sector grid areas according to the difference of the distance from the origin and the azimuth, and constructing a 10-row and 12-column feature matrix according to the sector grid areas contained in the specified two-dimensional plane, wherein the element value of each element in the feature matrix is the maximum value of the vertical height distance between each three-dimensional point cloud point contained in the sector grid area corresponding to the element and the specified two-dimensional plane, and if the three-dimensional point cloud point is not projected into the sector grid area corresponding to the element, the element value corresponding to the element is 0.
S104: and determining whether the point corresponding to the point cloud data to be identified is an identification result of a historical access point according to the similarity between the target feature matrix and the historical feature matrix corresponding to the historical point cloud data, and executing the task according to the identification result.
From the above, it can be seen that, the server may globally characterize the environmental information of the current location of the unmanned device included in the point cloud data to be identified through the constructed target feature matrix corresponding to the point cloud data to be identified, so the server may determine whether the current location of the unmanned device is a historical access location (i.e. a location that has been visited in the history) by determining the similarity between the target feature matrix and the predetermined historical feature matrix corresponding to each historical point cloud data, and further may perform task execution according to the recognition result of whether the current location of the unmanned device is the historical access location.
In an actual application scenario, in order to further improve the identification efficiency of the point cloud data, the server may further use element values of each column of elements included in the target feature matrix as each sector feature representation, determine, for each preset cluster center, the number of sector feature representations matched with the cluster center according to the similarity between each sector feature representation and a predetermined center feature representation of the cluster center, and further determine, as the target cluster feature representation, the cluster feature representation corresponding to the target feature matrix according to the number of sector feature representations matched with each cluster center.
The clustering centers may be determined by clustering all sector feature representations corresponding to the cloud data of each history point through a K-Means clustering algorithm (K-Means).
In the above-described cluster feature representation, the dimension value of each dimension is the number of sector feature representations that match each cluster center.
Specifically, when determining the cluster feature representation corresponding to the point cloud data to be identified, the server may determine, for each sector feature representation of the target feature matrix corresponding to the point cloud data to be identified, a similarity between the sector feature representation and the cluster feature representation corresponding to each cluster center, so as to determine, from among the cluster centers, a cluster center with the highest similarity between the cluster feature representation and the sector feature representation, as a cluster center matched with the sector feature representation, and further may obtain, according to the number of the sector feature representations matched by each cluster center, the cluster feature representation corresponding to the point cloud data to be identified.
It should be noted that, the method for determining the cluster feature representation corresponding to the target feature matrix of the point cloud data to be identified by the server may also be similar to the above method for determining the cluster feature representation corresponding to the target feature matrix by using the Fisher Vector algorithm, and the process for determining the cluster feature representation corresponding to the target feature matrix by using the Fisher Vector algorithm by the server is not described in detail herein.
Further, the server may determine, according to the similarity between the target cluster feature representation and each history cluster feature representation determined in advance according to the history feature matrix of each history point cloud data, whether the location corresponding to the point cloud data to be identified is an identification result of the history access location.
From the above, it can be seen that the target cluster feature representation is a feature representation obtained by performing feature compression based on each sector feature representation corresponding to the point cloud data to be identified, and by determining the similarity between the target cluster feature representation and each history cluster feature representation determined in advance according to the history feature matrix of each history point cloud data, it is determined whether the location corresponding to the point cloud data to be identified is the identification result of the history access location, so that the identification efficiency of the point cloud data can be effectively improved.
However, due to the unavoidable loss of feature information in the feature compression process, the accuracy of the recognition result of determining whether the location corresponding to the point cloud data to be recognized is a historical access location is low directly according to the similarity between the target cluster feature representation and each historical cluster feature representation determined in advance according to the historical feature matrix of each historical point cloud data.
Therefore, the server can also use the historical point cloud data corresponding to the historical cluster feature representation, which has the similarity higher than the preset similarity threshold value, in the historical cluster feature representations as candidate historical point cloud data, and further can determine whether the point corresponding to the point cloud data to be identified is the identification result of the historical access point according to the similarity between the target feature matrix corresponding to the point cloud data to be identified and the historical feature matrix corresponding to the historical point cloud data for each candidate historical point cloud data.
It should be noted that, in order to improve the efficiency of determining each candidate historical point cloud data from each historical point cloud data by the server, the server may further store the historical cluster feature representation corresponding to each historical point cloud data through a K-dimensional Tree KD-Tree after determining the historical cluster feature representation corresponding to each historical point cloud data in advance, where each historical cluster feature representation is used as a value stored in one node of the K-dimensional Tree.
Further, after determining the target cluster feature representation corresponding to the target feature matrix, the server may traverse the K-dimensional tree to query at least part of the history cluster feature representations with the similarity higher than the preset threshold value from the history cluster feature representations stored in each node of the K-dimensional tree, so as to serve as candidate history cluster feature representations, and further may use history point cloud data corresponding to the candidate history cluster feature representations as candidate history point cloud data.
It should be noted that, when storing each history cluster feature representation corresponding to each history point cloud data through the K-dimensional tree, each history cluster feature representation may be stored into different nodes according to different segmentation dimensions, where the segmentation dimensions may be set according to actual requirements, for example: if the historical cluster feature representation includes features of three dimensions (x, y, z), when constructing the K-dimensional tree, three dimensions of x, y and z are possible for the segmentation dimension, and for convenience of understanding, a method for constructing the K-dimensional tree will be described in detail by taking the segmentation dimension as x as an example.
Specifically, the server may store, from among the history cluster feature representations, a history cluster feature representation in which a feature value in an x dimension included in each history cluster feature representation is a median of each feature value in the x dimension included in each history cluster feature representation, in a root node of the K-dimensional tree, and further may determine, for a first history cluster feature representation, whether the feature value in the x dimension included in the history cluster feature representation is greater than the feature value in the x dimension of the history cluster feature representation stored in the root node, and if not, may store the history cluster feature representation as a left child node of the root node.
Further, the server may determine, for the second history cluster feature representation, whether a feature value in an x dimension included in the history cluster feature representation is greater than a feature value in an x dimension of the history cluster feature representation stored in the root node, if so, determine whether the feature value in the x dimension included in the history cluster feature representation is greater than a feature value in an x dimension of the history cluster feature representation stored in a left child node of the root node, if the feature value in the x dimension included in the history cluster feature representation is greater than a feature value in an x dimension of the history cluster feature representation stored in the left child node of the root node, store the history cluster feature representation as a left child node of the root node, and if the feature value in the x dimension included in the history cluster feature representation is less than a feature value in an x dimension of the history cluster feature representation stored in the left child node of the root node, store the history cluster feature representation as a right child node of the left child node of the root node.
Similarly, if not, it may be determined whether the feature value in the x-dimension included in the history cluster feature representation is greater than the feature value in the x-dimension of the history cluster feature representation stored in the right child node of the root node, if the feature value in the x-dimension included in the history cluster feature representation is greater than the feature value in the x-dimension of the history cluster feature representation stored in the right child node of the root node, the history cluster feature representation may be stored as the left child node of the right child node of the root node, and if the feature value in the x-dimension included in the history cluster feature representation is less than the feature value in the x-dimension of the history cluster feature representation stored in the right child node of the root node, the history cluster feature representation may be stored as the right child node of the root node, and so on until all the history cluster feature representations are stored.
From the above, it can be seen that the server may segment each history clustering feature representation in the feature space through the K-dimensional tree, so that the number of the history clustering feature representations that need to be compared when searching from the K-dimensional tree may be effectively reduced, and further the efficiency of the server in determining each candidate history clustering feature representation from each history clustering feature representation may be improved.
Further, the method for determining whether the location corresponding to the point cloud data to be identified is the identification result of the historical access location by the server according to the similarity between the target feature matrix and the historical feature matrix corresponding to the historical point cloud data may be to determine, for the element contained in the target feature matrix, a difference between the element value of the element and the element value of the element corresponding to the element in the historical feature matrix corresponding to the historical point cloud data, and according to each difference, determine the similarity between the target feature matrix and the historical feature matrix corresponding to the historical point cloud data, and specifically may refer to the following formula:
in the above-mentioned formula(s), For the similarity between the target feature matrix and the history feature matrix corresponding to the history point cloud data,/>Is the average of the differences.
Further, the server may determine, according to the similarity between the target feature matrix and the historical feature matrix corresponding to the historical point cloud data, whether the location corresponding to the point cloud data to be identified is an identification result of the historical access location.
It should be noted that, the server may determine, according to the point cloud data collected by the unmanned device, whether the current location of the unmanned device is a location visited in the history, but in the actual application scenario, the environmental information of each location is not fixed (for example, a running vehicle and a pedestrian, a temporary increased roadblock, etc.), so that during the period from when the unmanned device first visits a certain location until it visits again, the environmental information of the location may change to some extent, so that the unmanned device cannot effectively identify that the current location is the history visit location through the method when it visits again.
Based on this, the server may further determine, for each column element included in the target feature matrix, a determination result of whether there is obstacle shielding in the fan-shaped grid area corresponding to the column element according to a deviation between an element value of the column element and an element value of each element matched with the column element in the history feature matrix corresponding to the history point cloud data.
Specifically, the server may determine, as the third target element, an element having a value of the corresponding element of the column element that is not 0 and a row coordinate of the target feature matrix that is the largest, determine, as each candidate element (i.e., each element having the same row coordinate and column coordinate as the column element that corresponds to the history feature matrix) each element that is matched with the column element from the history feature matrix corresponding to the history point cloud data, and determine, as the fourth target element, an element having a value of the corresponding element that is not 0 and a row coordinate of the target feature matrix that is the largest from each candidate element, and further determine, according to a difference between the row coordinate corresponding to the third target element and the row coordinate corresponding to the fourth target element, whether or not there is a barrier in the sector grid area corresponding to the column element, as shown in fig. 3.
Fig. 3 is a schematic diagram of a designated two-dimensional plane under the obstruction provided in the present specification.
As seen from fig. 3, if an obstacle exists in any sector area of the specified two-dimensional plane, due to the natural reflection phenomenon of light and the action of the accurate measurement and capture capability of the specially designed lidar system, the laser light of the lidar sensor returns after contacting the obstacle, so that the sector area behind the sector area where the obstacle exists does not include three-dimensional point cloud points, that is, the element value of the element corresponding to the sector area in the target feature matrix is 0, so that the third target element is the sector area where the corresponding obstacle exists (if no obstacle shielding exists, the third target element is the sector area farthest from the origin), and similarly, the fourth target element is the sector area where the obstacle exists in the corresponding history point cloud data.
Further, the server may determine whether the difference between the row coordinate corresponding to the third target element and the row coordinate corresponding to the fourth target element is 0, and if not, may determine that there is no obstacle shielding in the sector grid area corresponding to the column element, where the server may use all elements included in the column element as the first target element, and may use each candidate element as the second target element.
If the difference between the row coordinates corresponding to the third target element and the row coordinates corresponding to the fourth target element is greater than 0 and less than the preset difference threshold, it may be determined that a fan-shaped grid area corresponding to the column element or each candidate element corresponding to the column element has a small-range obstacle shielding, and at this time, the server may use, as a base target element, an element with the smallest row coordinates corresponding to the third target element and the fourth target element, and use, as each first target element, each element with the row coordinates corresponding to the first target element smaller than the row coordinates corresponding to the base target element (i.e., an element with the fan-shaped grid area corresponding to the fan-shaped grid area before the third target element), and may use, as each second target element, each candidate element corresponding to each first target element.
If the difference between the row coordinates corresponding to the third target element and the row coordinates corresponding to the fourth target element is greater than a preset difference threshold, it may be determined that a sector grid area corresponding to the column element or a large-range obstacle shielding exists in each candidate element corresponding to the column element, and at this time, it is determined that the first target element does not exist in the column element, and the second target element does not exist in each candidate element corresponding to the column element.
Further, the server may determine, according to the similarity between each first target element and each second target element, whether the location corresponding to the point cloud data to be identified is an identification result of the historical access location.
Specifically, if the ratio between the total number of the first target elements and the total number of all elements contained in the target feature matrix is smaller than a preset ratio threshold, determining that the location corresponding to the point cloud data to be identified is not the historical access location.
If the ratio between the total number of the first target elements and the total number of all the elements contained in the target feature matrix is greater than the preset ratio threshold, the similarity between the target feature matrix and the history feature matrix corresponding to the history point cloud data may be determined for each first target element according to the difference between the element value of the first target element and the element value of the second target element corresponding to the first target element.
From the above, it can be seen that, the server may globally characterize the environmental information of the current location of the unmanned device included in the point cloud data to be identified through the target feature matrix corresponding to the point cloud data to be identified, so the server may determine whether the current location of the unmanned device is a historical access location by determining the similarity between the target feature matrix and the predetermined historical feature matrix corresponding to each historical point cloud data, thereby improving the identification efficiency of the point cloud data.
The above is a method for identifying point cloud data according to one or more embodiments of the present disclosure, and based on the same concept, the present disclosure further provides a corresponding device for identifying point cloud data, as shown in fig. 4.
Fig. 4 is a schematic diagram of an identification device for point cloud data provided in the present specification, including:
An acquisition module 401, configured to acquire point cloud data to be identified acquired by an unmanned device;
the projection module 402 is configured to project each three-dimensional point cloud point included in the point cloud data to be identified onto a specified two-dimensional plane, where the specified two-dimensional plane includes a plurality of sector grid areas divided according to a distance from an origin and an azimuth;
A construction module 403, configured to construct, as a target feature matrix, a feature matrix corresponding to the point cloud data to be identified according to three-dimensional point cloud points projected into each sector-shaped grid area, where each sector-shaped grid area corresponds to an element in the target feature matrix, and for each sector-shaped grid area, an element value of an element corresponding to the sector-shaped grid area in the target feature matrix is determined according to a vertical height distance between each three-dimensional point cloud point projected into the sector-shaped grid area and the specified two-dimensional plane;
And the execution module 404 is configured to determine, according to the similarity between the target feature matrix and the historical feature matrix corresponding to the historical point cloud data, whether the location corresponding to the point cloud data to be identified is an identification result of the historical access location, and execute the task according to the identification result.
Optionally, the construction module 403 is specifically configured to determine, for each three-dimensional point cloud point included in the point cloud data to be identified, a fan-shaped grid area projected by the three-dimensional point cloud point according to coordinate values of the three-dimensional point cloud point corresponding to coordinates of two dimensions on a specified two-dimensional plane; and constructing a feature matrix corresponding to the point cloud data to be identified according to the three-dimensional point cloud points projected into each sector grid area.
Optionally, the executing module 404 is specifically configured to use an element value of each column of elements included in the target feature matrix as each sector feature representation; for each preset clustering center, determining the number of sector characteristic representations matched with the clustering center according to the similarity between each sector characteristic representation and the center characteristic representation of the preset clustering center; determining a cluster feature representation corresponding to the target feature matrix according to the number of the sector feature representations matched with each cluster center, wherein the dimension value of each dimension in the cluster feature representation is the number of the sector feature representations matched with each cluster center; and determining whether the location corresponding to the point cloud data to be identified is an identification result of the historical access location according to the similarity between the target cluster feature representation and each historical cluster feature representation which is determined in advance according to the historical feature matrix of each historical point cloud data.
Optionally, the executing module 404 is specifically configured to determine at least part of the historical point cloud data as candidate historical point cloud data according to the similarity between the target cluster feature representation and each historical cluster feature representation determined in advance according to the historical feature matrix of each historical point cloud data; and for each candidate historical point cloud data, determining whether the point corresponding to the point cloud data to be identified is an identification result of the historical access point according to the similarity between the target feature matrix and the historical feature matrix corresponding to the candidate historical point cloud data.
Optionally, the historical cluster feature representations are determined in advance according to a historical feature matrix of the historical point cloud data and are stored through a K-dimensional Tree KD-Tree, wherein each historical cluster feature representation is used as a value stored in one node of the K-dimensional Tree;
The executing module 404 is specifically configured to traverse the K-dimensional tree, so as to query, from the historical cluster feature representations stored in each node of the K-dimensional tree, at least a part of the historical cluster feature representations with similarity with the target cluster feature representation being higher than a preset threshold, as candidate historical cluster feature representations; and using the history point cloud data corresponding to the candidate history clustering feature representation as candidate history point cloud data.
Optionally, the executing module 404 is specifically configured to determine, for an element included in the target feature matrix, a difference between an element value of the element and an element value of the element corresponding to the element in a history feature matrix corresponding to the history point cloud data; and determining the similarity between the target feature matrix and the historical feature matrix corresponding to the historical point cloud data according to the difference values, and determining whether the point corresponding to the point cloud data to be identified is an identification result of the historical access point according to the similarity between the target feature matrix and the historical feature matrix corresponding to the historical point cloud data.
Optionally, the executing module 404 is specifically configured to determine, for each column of elements included in the target feature matrix, whether a judgment result of shielding of an obstacle exists in a fan-shaped grid area corresponding to the column of elements according to a deviation between an element value of the column of elements and an element value of each element matched with the column of elements in a history feature matrix corresponding to the history point cloud data; according to the judging result, screening out elements which are not blocked by the barrier from the column of elements to serve as first target elements, and screening out elements which are not blocked by the barrier from elements matched with the column of elements in the history feature matrix to serve as second target elements; and determining whether the location corresponding to the point cloud data to be identified is an identification result of the historical access location according to the similarity between each first target element and each second target element.
Optionally, the executing module 404 is specifically configured to determine, as the third target element, an element with a corresponding element value of the column element that is not 0 and a row coordinate in the target feature matrix is the largest; determining each element matched with the column of elements from a history feature matrix corresponding to the history point cloud data to serve as each candidate element, and determining an element with a corresponding element value which is not 0 and the maximum row coordinate in the target feature matrix from each candidate element to serve as a fourth target element; and determining whether a judgment result of obstacle shielding exists in the sector grid area corresponding to the column element according to the difference value between the row coordinate corresponding to the third target element and the row coordinate corresponding to the fourth target element.
The present specification also provides a computer-readable storage medium storing a computer program operable to perform a method of identifying point cloud data as provided in fig. 1 above.
The present specification also provides a schematic structural diagram of an electronic device corresponding to fig. 1 shown in fig. 5. At the hardware level, the electronic device includes a processor, an internal bus, a network interface, a memory, and a non-volatile storage, as illustrated in fig. 5, although other hardware required by other services may be included. The processor reads the corresponding computer program from the nonvolatile memory into the memory and then runs the computer program to realize the identification method of the point cloud data in the figure 1. Of course, other implementations, such as logic devices or combinations of hardware and software, are not excluded from the present description, that is, the execution subject of the following processing flows is not limited to each logic unit, but may be hardware or logic devices.
Improvements to one technology can clearly distinguish between improvements in hardware (e.g., improvements to circuit structures such as diodes, transistors, switches, etc.) and software (improvements to the process flow). However, with the development of technology, many improvements of the current method flows can be regarded as direct improvements of hardware circuit structures. Designers almost always obtain corresponding hardware circuit structures by programming improved method flows into hardware circuits. Therefore, an improvement of a method flow cannot be said to be realized by a hardware entity module. For example, a programmable logic device (Programmable Logic Device, PLD) (e.g., field programmable gate array (Field Programmable GATE ARRAY, FPGA)) is an integrated circuit whose logic functions are determined by user programming of the device. A designer programs to "integrate" a digital system onto a PLD without requiring the chip manufacturer to design and fabricate application-specific integrated circuit chips. Moreover, nowadays, instead of manually manufacturing integrated circuit chips, such programming is mostly implemented with "logic compiler (logic compiler)" software, which is similar to the software compiler used in program development and writing, and the original code before being compiled is also written in a specific programming language, which is called hardware description language (Hardware Description Language, HDL), but HDL is not just one, but a plurality of kinds, such as ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware Description Language)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(Ruby Hardware Description Language), and VHDL (Very-High-SPEED INTEGRATED Circuit Hardware Description Language) and Verilog are currently most commonly used. It will also be apparent to those skilled in the art that a hardware circuit implementing the logic method flow can be readily obtained by merely slightly programming the method flow into an integrated circuit using several of the hardware description languages described above.
The controller may be implemented in any suitable manner, for example, the controller may take the form of, for example, a microprocessor or processor and a computer readable medium storing computer readable program code (e.g., software or firmware) executable by the (micro) processor, logic gates, switches, application SPECIFIC INTEGRATED Circuits (ASICs), programmable logic controllers, and embedded microcontrollers, examples of controllers include, but are not limited to, the following microcontrollers: ARC 625D, atmel AT91SAM, microchip PIC18F26K20, and Silicone Labs C8051F320, the memory controller may also be implemented as part of the control logic of the memory. Those skilled in the art will also appreciate that, in addition to implementing the controller in a pure computer readable program code, it is well possible to implement the same functionality by logically programming the method steps such that the controller is in the form of logic gates, switches, application specific integrated circuits, programmable logic controllers, embedded microcontrollers, etc. Such a controller may thus be regarded as a kind of hardware component, and means for performing various functions included therein may also be regarded as structures within the hardware component. Or even means for achieving the various functions may be regarded as either software modules implementing the methods or structures within hardware components.
The system, apparatus, module or unit set forth in the above embodiments may be implemented in particular by a computer chip or entity, or by a product having a certain function. One typical implementation is a computer. In particular, the computer may be, for example, a personal computer, a laptop computer, a cellular telephone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or a combination of any of these devices.
For convenience of description, the above devices are described as being functionally divided into various units, respectively. Of course, the functions of each element may be implemented in one or more software and/or hardware elements when implemented in the present specification.
It will be appreciated by those skilled in the art that embodiments of the present description may be provided as a method, system, or computer program product. Accordingly, the present specification may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present description can take the form of a computer program product on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) having computer-usable program code embodied therein.
The present description is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the specification. It will be understood that each flow and/or block of the flowchart illustrations and/or block diagrams, and combinations of flows and/or blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
In one typical configuration, a computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
The memory may include volatile memory in a computer-readable medium, random Access Memory (RAM) and/or nonvolatile memory, such as Read Only Memory (ROM) or flash memory (flash RAM). Memory is an example of computer-readable media.
Computer readable media, including both non-transitory and non-transitory, removable and non-removable media, may implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, or other data. Examples of storage media for a computer include, but are not limited to, phase change memory (PRAM), static Random Access Memory (SRAM), dynamic Random Access Memory (DRAM), other types of Random Access Memory (RAM), read Only Memory (ROM), electrically Erasable Programmable Read Only Memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), digital Versatile Discs (DVD) or other optical storage, magnetic cassettes, magnetic tape disk storage or other magnetic storage devices, or any other non-transmission medium, which can be used to store information that can be accessed by a computing device. Computer-readable media, as defined herein, does not include transitory computer-readable media (transmission media), such as modulated data signals and carrier waves.
It should also be noted that the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, method, article or apparatus that comprises the element.
It will be appreciated by those skilled in the art that embodiments of the present description may be provided as a method, system, or computer program product. Accordingly, the present specification may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present description can take the form of a computer program product on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) having computer-usable program code embodied therein.
The description may be described in the general context of computer-executable instructions, such as program modules, being executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. The specification may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote computer storage media including memory storage devices.
In this specification, each embodiment is described in a progressive manner, and identical and similar parts of each embodiment are all referred to each other, and each embodiment mainly describes differences from other embodiments. In particular, for system embodiments, since they are substantially similar to method embodiments, the description is relatively simple, as relevant to see a section of the description of method embodiments.
The foregoing is merely exemplary of the present disclosure and is not intended to limit the disclosure. Various modifications and alterations to this specification will become apparent to those skilled in the art. Any modifications, equivalent substitutions, improvements, or the like, which are within the spirit and principles of the present description, are intended to be included within the scope of the claims of the present description.
Claims (11)
1. The method for identifying the point cloud data is characterized by comprising the following steps of:
Acquiring point cloud data to be identified, which are acquired by unmanned equipment;
projecting each three-dimensional point cloud point contained in the point cloud data to be identified onto a specified two-dimensional plane, wherein the specified two-dimensional plane contains a plurality of sector grid areas which are divided according to the distance from an origin and the azimuth angle;
constructing a feature matrix corresponding to the point cloud data to be identified according to the three-dimensional point cloud points projected into each sector grid area, and taking the feature matrix as a target feature matrix, wherein each sector grid area corresponds to one element in the target feature matrix, and for each sector grid area, the element value of the element corresponding to the target feature matrix in the sector grid area is determined according to the vertical height distance between each three-dimensional point cloud point projected into the sector grid area and the appointed two-dimensional plane;
and determining whether the point corresponding to the point cloud data to be identified is an identification result of a historical access point according to the similarity between the target feature matrix and the historical feature matrix corresponding to the historical point cloud data, and executing the task according to the identification result.
2. The method of claim 1, wherein constructing the feature matrix corresponding to the point cloud data to be identified according to the three-dimensional point cloud points projected into each sector-shaped grid area specifically comprises:
Determining a sector grid area projected by the three-dimensional point cloud points according to coordinate values of the three-dimensional point cloud points corresponding to coordinates of two dimensions on a specified two-dimensional plane aiming at each three-dimensional point cloud point contained in the point cloud data to be identified;
and constructing a feature matrix corresponding to the point cloud data to be identified according to the three-dimensional point cloud points projected into each sector grid area.
3. The method of claim 1, wherein determining whether the location corresponding to the point cloud data to be identified is a result of identifying a historical access location according to a similarity between the target feature matrix and a historical feature matrix corresponding to the historical point cloud data, specifically comprises:
The element value of each column of elements contained in the target feature matrix is used as the feature representation of each sector;
For each preset clustering center, determining the number of sector characteristic representations matched with the clustering center according to the similarity between each sector characteristic representation and the center characteristic representation of the preset clustering center;
Determining a cluster feature representation corresponding to the target feature matrix according to the number of the sector feature representations matched with each cluster center, wherein the dimension value of each dimension in the cluster feature representation is the number of the sector feature representations matched with each cluster center;
and determining whether the location corresponding to the point cloud data to be identified is an identification result of the historical access location according to the similarity between the target cluster feature representation and each historical cluster feature representation which is determined in advance according to the historical feature matrix of each historical point cloud data.
4. The method of claim 3, wherein determining whether the location corresponding to the point cloud data to be identified is an identification result of a historical access location according to the similarity between the target cluster feature representation and each historical cluster feature representation determined in advance according to a historical feature matrix of each historical point cloud data, specifically comprises:
According to the similarity between the target cluster feature representation and each history cluster feature representation which is determined in advance according to the history feature matrix of each history point cloud data, determining at least part of the history point cloud data as candidate history point cloud data;
And for each candidate historical point cloud data, determining whether the point corresponding to the point cloud data to be identified is an identification result of the historical access point according to the similarity between the target feature matrix and the historical feature matrix corresponding to the candidate historical point cloud data.
5. The method of claim 4, wherein the historical cluster feature representations are determined in advance from a historical feature matrix of the historical point cloud data and stored by a K-dimensional Tree KD-Tree, wherein each historical cluster feature representation is a value stored in one node of the K-dimensional Tree;
according to the similarity between the target cluster feature representation and each history cluster feature representation which is determined in advance according to the history feature matrix of each history point cloud data, determining at least part of history point cloud data as candidate history point cloud data, wherein the method specifically comprises the following steps:
Traversing the K-dimensional tree to inquire out at least partial historical clustering characteristic representations with the similarity higher than a preset threshold value from historical clustering characteristic representations stored in each node of the K-dimensional tree, and taking the at least partial historical clustering characteristic representations with the similarity higher than the preset threshold value as candidate historical clustering characteristic representations;
and using the history point cloud data corresponding to the candidate history clustering feature representation as candidate history point cloud data.
6. The method of claim 1, wherein determining whether the location corresponding to the point cloud data to be identified is a result of identifying a historical access location according to a similarity between the target feature matrix and a historical feature matrix corresponding to the historical point cloud data, specifically comprises:
determining, for an element contained in the target feature matrix, a difference value between an element value of the element and an element value of the element corresponding to the element in a history feature matrix corresponding to history point cloud data;
And determining the similarity between the target feature matrix and the historical feature matrix corresponding to the historical point cloud data according to the difference values, and determining whether the point corresponding to the point cloud data to be identified is an identification result of the historical access point according to the similarity between the target feature matrix and the historical feature matrix corresponding to the historical point cloud data.
7. The method of claim 1, wherein determining whether the location corresponding to the point cloud data to be identified is a result of identifying a historical access location according to a similarity between the target feature matrix and a historical feature matrix corresponding to the historical point cloud data, specifically comprises:
Determining whether a judgment result of obstacle shielding exists in a sector grid area corresponding to each column element according to the deviation between the element value of the column element and the element value of each element matched with the column element in the historical feature matrix corresponding to the historical point cloud data aiming at each column element contained in the target feature matrix;
According to the judging result, screening out elements which are not blocked by the barrier from the column of elements to serve as first target elements, and screening out elements which are not blocked by the barrier from elements matched with the column of elements in the history feature matrix to serve as second target elements;
And determining whether the location corresponding to the point cloud data to be identified is an identification result of the historical access location according to the similarity between each first target element and each second target element.
8. The method of claim 7, wherein determining whether the fan-shaped grid area corresponding to the column element has a result of determining whether the fan-shaped grid area corresponding to the column element is blocked by an obstacle according to a deviation between the element value of the column element and the element value of each element matched with the column element in the history feature matrix corresponding to the history point cloud data, specifically comprises:
Determining an element with a corresponding element value which is not 0 and the maximum row coordinate in the target feature matrix in the column element as a third target element;
Determining each element matched with the column of elements from a history feature matrix corresponding to the history point cloud data to serve as each candidate element, and determining an element with a corresponding element value which is not 0 and the maximum row coordinate in the target feature matrix from each candidate element to serve as a fourth target element;
And determining whether a judgment result of obstacle shielding exists in the sector grid area corresponding to the column element according to the difference value between the row coordinate corresponding to the third target element and the row coordinate corresponding to the fourth target element.
9. An identification device for point cloud data, comprising:
The acquisition module is used for acquiring point cloud data to be identified, which are acquired by the unmanned equipment;
The projection module is used for projecting each three-dimensional point cloud point contained in the point cloud data to be identified onto a specified two-dimensional plane, wherein the specified two-dimensional plane comprises a plurality of sector grid areas divided according to the distance from an origin and the azimuth angle;
The construction module is used for constructing a feature matrix corresponding to the point cloud data to be identified according to the three-dimensional point cloud points projected into each fan-shaped grid area, and taking the feature matrix as a target feature matrix, wherein each fan-shaped grid area corresponds to one element in the target feature matrix, and for each fan-shaped grid area, the element value of the element corresponding to the target feature matrix in the fan-shaped grid area is determined according to the vertical height distance between each three-dimensional point cloud point projected into the fan-shaped grid area and the appointed two-dimensional plane;
and the execution module is used for determining whether the point corresponding to the point cloud data to be identified is an identification result of the historical access point according to the similarity between the target feature matrix and the historical feature matrix corresponding to the historical point cloud data, and executing the task according to the identification result.
10. A computer readable storage medium, characterized in that the storage medium stores a computer program which, when executed by a processor, implements the method of any of the preceding claims 1-8.
11. An electronic device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, characterized in that the processor implements the method of any of the preceding claims 1-8 when executing the program.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410457520.9A CN118053153B (en) | 2024-04-16 | 2024-04-16 | Point cloud data identification method and device, storage medium and electronic equipment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410457520.9A CN118053153B (en) | 2024-04-16 | 2024-04-16 | Point cloud data identification method and device, storage medium and electronic equipment |
Publications (2)
Publication Number | Publication Date |
---|---|
CN118053153A true CN118053153A (en) | 2024-05-17 |
CN118053153B CN118053153B (en) | 2024-07-05 |
Family
ID=91047006
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410457520.9A Active CN118053153B (en) | 2024-04-16 | 2024-04-16 | Point cloud data identification method and device, storage medium and electronic equipment |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118053153B (en) |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109255302A (en) * | 2018-08-15 | 2019-01-22 | 广州极飞科技有限公司 | Object recognition methods and terminal, mobile device control method and terminal |
CN112130165A (en) * | 2020-09-15 | 2020-12-25 | 北京三快在线科技有限公司 | Positioning method, positioning device, positioning medium and unmanned equipment |
CN112767545A (en) * | 2021-01-19 | 2021-05-07 | 西人马帝言(北京)科技有限公司 | Point cloud map construction method, device, equipment and computer storage medium |
CN113985435A (en) * | 2021-10-13 | 2022-01-28 | 上海师范大学 | Mapping method and system fusing multiple laser radars |
CN114202684A (en) * | 2021-11-29 | 2022-03-18 | 哈尔滨工程大学 | Point cloud data projection method, system and device suitable for water surface environment |
CN114359204A (en) * | 2021-12-29 | 2022-04-15 | 广州极飞科技股份有限公司 | Point cloud hole detection method and device and electronic equipment |
WO2022099530A1 (en) * | 2020-11-12 | 2022-05-19 | 深圳元戎启行科技有限公司 | Motion segmentation method and apparatus for point cloud data, computer device and storage medium |
CN114581619A (en) * | 2022-02-25 | 2022-06-03 | 浙江工业大学 | Coal bunker modeling method based on three-dimensional positioning and two-dimensional mapping |
CN115047487A (en) * | 2022-03-11 | 2022-09-13 | 武汉科技大学 | Loop detection method and device based on point cloud intensity and height information |
CN115407323A (en) * | 2022-08-31 | 2022-11-29 | 森思泰克河北科技有限公司 | Method and device for determining material pile point cloud, computer equipment and storage medium |
CN115962773A (en) * | 2022-12-27 | 2023-04-14 | 西安理工大学 | Method, device and equipment for synchronous positioning and map construction of mobile robot |
CN116740361A (en) * | 2023-08-11 | 2023-09-12 | 之江实验室 | Point cloud segmentation method and device, storage medium and electronic equipment |
CN116958266A (en) * | 2023-09-19 | 2023-10-27 | 苏州元脑智能科技有限公司 | Closed loop detection method, device, communication equipment and storage medium |
CN117826778A (en) * | 2022-09-26 | 2024-04-05 | 北京智行者科技股份有限公司 | Obstacle removing method, device, apparatus, storage medium, and program product |
US20240119563A1 (en) * | 2022-10-05 | 2024-04-11 | International Business Machines Corporation | Detecting a closed ring in a 3d point cloud via cycle basis |
-
2024
- 2024-04-16 CN CN202410457520.9A patent/CN118053153B/en active Active
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109255302A (en) * | 2018-08-15 | 2019-01-22 | 广州极飞科技有限公司 | Object recognition methods and terminal, mobile device control method and terminal |
CN112130165A (en) * | 2020-09-15 | 2020-12-25 | 北京三快在线科技有限公司 | Positioning method, positioning device, positioning medium and unmanned equipment |
WO2022099530A1 (en) * | 2020-11-12 | 2022-05-19 | 深圳元戎启行科技有限公司 | Motion segmentation method and apparatus for point cloud data, computer device and storage medium |
CN112767545A (en) * | 2021-01-19 | 2021-05-07 | 西人马帝言(北京)科技有限公司 | Point cloud map construction method, device, equipment and computer storage medium |
CN113985435A (en) * | 2021-10-13 | 2022-01-28 | 上海师范大学 | Mapping method and system fusing multiple laser radars |
CN114202684A (en) * | 2021-11-29 | 2022-03-18 | 哈尔滨工程大学 | Point cloud data projection method, system and device suitable for water surface environment |
CN114359204A (en) * | 2021-12-29 | 2022-04-15 | 广州极飞科技股份有限公司 | Point cloud hole detection method and device and electronic equipment |
CN114581619A (en) * | 2022-02-25 | 2022-06-03 | 浙江工业大学 | Coal bunker modeling method based on three-dimensional positioning and two-dimensional mapping |
CN115047487A (en) * | 2022-03-11 | 2022-09-13 | 武汉科技大学 | Loop detection method and device based on point cloud intensity and height information |
CN115407323A (en) * | 2022-08-31 | 2022-11-29 | 森思泰克河北科技有限公司 | Method and device for determining material pile point cloud, computer equipment and storage medium |
CN117826778A (en) * | 2022-09-26 | 2024-04-05 | 北京智行者科技股份有限公司 | Obstacle removing method, device, apparatus, storage medium, and program product |
US20240119563A1 (en) * | 2022-10-05 | 2024-04-11 | International Business Machines Corporation | Detecting a closed ring in a 3d point cloud via cycle basis |
CN115962773A (en) * | 2022-12-27 | 2023-04-14 | 西安理工大学 | Method, device and equipment for synchronous positioning and map construction of mobile robot |
CN116740361A (en) * | 2023-08-11 | 2023-09-12 | 之江实验室 | Point cloud segmentation method and device, storage medium and electronic equipment |
CN116958266A (en) * | 2023-09-19 | 2023-10-27 | 苏州元脑智能科技有限公司 | Closed loop detection method, device, communication equipment and storage medium |
Non-Patent Citations (3)
Title |
---|
GISEOP KIM: "Scan Context: Egocentric Spatial Descriptor for Place Recognition within 3D Point Cloud Map", 2018 IEEE/RSJ INTERNATIONAL CONFERENCE ON INTELLIGENT ROBOTS AND SYSTEMS (IROS), 31 December 2018 (2018-12-31) * |
张志佳;魏信;周自强;李嘉兴;王婷婷;: "一种基于八邻域深度差的点云边缘提取算法", 仪器仪表学报, no. 08, 15 August 2017 (2017-08-15) * |
敢敢WINGS: "Scan Context回环检测解读和使用 - 古月居", 古月居, 2 May 2022 (2022-05-02) * |
Also Published As
Publication number | Publication date |
---|---|
CN118053153B (en) | 2024-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111508258B (en) | Positioning method and device | |
CN111882611B (en) | Map construction method and device | |
CN111288971B (en) | Visual positioning method and device | |
CN116740361B (en) | Point cloud segmentation method and device, storage medium and electronic equipment | |
CN112284394A (en) | Map construction and visual positioning method and device | |
CN111797906B (en) | Method and device for positioning based on vision and inertial mileage | |
CN111062372B (en) | Method and device for predicting obstacle track | |
CN114295119B (en) | Map construction method and device | |
CN115600157B (en) | Data processing method and device, storage medium and electronic equipment | |
CN113674424B (en) | Method and device for drawing electronic map | |
CN114283148A (en) | Road element extraction method and device, storage medium and electronic equipment | |
CN115880685B (en) | Three-dimensional target detection method and system based on volntet model | |
CN112462403A (en) | Positioning method, positioning device, storage medium and electronic equipment | |
CN118053153B (en) | Point cloud data identification method and device, storage medium and electronic equipment | |
CN116385999A (en) | Parking space identification method, device and equipment | |
CN112734851B (en) | Pose determination method and device | |
CN114299147A (en) | Positioning method, positioning device, storage medium and electronic equipment | |
CN112712561A (en) | Picture construction method and device, storage medium and electronic equipment | |
CN115861560B (en) | Method and device for constructing map, storage medium and electronic equipment | |
CN114322987B (en) | Method and device for constructing high-precision map | |
CN116740114B (en) | Object boundary fitting method and device based on convex hull detection | |
CN116721118B (en) | Point cloud-based selection method and device for safe landing points of aircraft | |
CN116993931A (en) | Map construction method and device | |
CN112393723B (en) | Positioning method, positioning device, medium and unmanned equipment | |
CN116740197B (en) | External parameter calibration method and device, storage medium and electronic equipment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |