Vehicle identification method and device, electronic equipment and computer readable storage medium
By eliminating curvature outliers and calculating high-dimensional feature values using a 3D point cloud image recognition method, the problem of low vehicle recognition accuracy in existing technologies is solved, achieving higher recognition accuracy.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- CHINA MOBILE (SUZHOU) SOFTWARE TECH CO LTD
- Filing Date
- 2022-01-04
- Publication Date
- 2026-05-19
AI Technical Summary
Existing vehicle recognition methods based on single two-dimensional images cannot display depth information and three-dimensional spatial location. Methods based on multi-directional two-dimensional images are computationally complex and have low accuracy, resulting in low vehicle recognition accuracy.
By using a 3D point cloud image recognition method, high-dimensional feature values are calculated after removing curvature outliers, and then input into a pre-trained vehicle recognition model for recognition.
It improves the accuracy of vehicle recognition, reduces the interference of curvature outliers on the recognition results, and generates more accurate recognition results.
Smart Images

Figure CN116263504B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of lidar technology, specifically to a vehicle identification method, device, electronic device, and computer-readable storage medium. Background Technology
[0002] With the continuous growth of vehicle ownership, the traffic pressure faced by urban development is also increasing. Intelligent vehicle identification on roads, and statistical analysis of the identified vehicles, provides valuable insights for urban road construction, traffic light design, and parking lot planning.
[0003] In related technologies, vehicle recognition on roads mainly includes target recognition statistical methods based on single two-dimensional images and target recognition statistical methods based on three-dimensional reconstruction of multi-directional two-dimensional images. However, in implementing the embodiments of this invention, the inventors discovered that: target recognition statistical methods based on single two-dimensional images cannot intuitively display the depth information, pose information, and position information of objects in three-dimensional space, resulting in low vehicle recognition accuracy; while target recognition statistical methods based on three-dimensional reconstruction of multi-directional two-dimensional images require cumbersome spatial coordinate calculations to obtain scene spatial information, and the accuracy of the calculation cannot be guaranteed during the calculation process, which also results in low vehicle recognition accuracy. Summary of the Invention
[0004] In view of the above problems, embodiments of the present invention provide a vehicle identification method, device, electronic device, and computer-readable storage medium to solve the problem of low accuracy in vehicle identification in the prior art.
[0005] According to one aspect of the present invention, a vehicle identification method is provided, the method comprising:
[0006] Based on the 3D point cloud image of the target scene, determine the entities to be identified in the target scene;
[0007] Curvature outliers in the point cloud corresponding to the entity to be identified are removed to generate a target point cloud after removing curvature outliers.
[0008] Calculate the high-dimensional feature value of the entity to be identified based on the target point cloud;
[0009] The high-dimensional feature values of the entity to be identified are input into a pre-trained vehicle recognition model to generate the recognition result of the entity to be identified.
[0010] In one alternative approach, removing curvature outliers from the point cloud corresponding to the entity to be identified to generate a target point cloud after removing curvature outliers includes:
[0011] Calculate the curvature of each point cloud data point in the point cloud set corresponding to the entity to be identified;
[0012] The point cloud set corresponding to the entity to be identified is divided into multiple point cloud clusters, wherein each point cloud cluster includes a reference point cloud data point and multiple non-reference point cloud data points within a radius of the reference point cloud data point as the center and a preset Euclidean distance threshold.
[0013] Determine the curvature difference between each non-reference point cloud data point in the point cloud cluster and the reference point cloud data point, and remove the non-reference point cloud data points corresponding to curvature differences that are greater than a preset curvature difference threshold from the corresponding point cloud cluster.
[0014] Count the number of point cloud data points contained in each point cloud cluster, and identify the point cloud clusters with a number of point cloud data points greater than a preset threshold as target point cloud clusters;
[0015] The target point cloud clusters are merged to generate a target point cloud set.
[0016] In one alternative approach, calculating the high-dimensional feature value of the entity to be identified based on the target point cloud includes:
[0017] Establish a local spatial coordinate system corresponding to the target point cloud data points in the target point cloud based on the centroid of the target point cloud set, wherein the target point cloud data points are any point cloud data points in the target point cloud set;
[0018] The nutation angle of the target point cloud data point is determined as the first spatial angle feature value, the precession angle of the target point cloud data point is determined as the second spatial angle feature value, and the rotation angle of the target point cloud data point is determined as the third spatial angle feature value.
[0019] The vector from the viewpoint to the centroid is determined as the first vector, and the angle between the first vector and the normal vector of the target point cloud data point on the target point cloud surface is determined as the fourth spatial angle feature value.
[0020] The high-dimensional feature value of the entity to be identified is calculated based on the first spatial angle feature value, the second spatial angle feature value, the third spatial angle feature value, and the fourth spatial angle feature value.
[0021] In an alternative approach, the method further includes:
[0022] The normal vector of the centroid on the target point convergent surface is determined as the second vector, and the line containing the second vector is determined as the first coordinate axis of the local spatial coordinate system;
[0023] The vector pointing from the centroid to the target point cloud data point is determined as the third vector. The target plane is determined using the third vector and the second vector. The vector passing through the centroid and perpendicular to the target plane is determined as the fourth vector. The line containing the fourth vector is determined as the second coordinate axis of the spatial local coordinate system.
[0024] The third coordinate axis of the local spatial coordinate system is determined based on the first and second coordinate axes.
[0025] In one alternative approach, calculating the curvature of each point cloud data point in the point cloud set corresponding to the entity to be identified includes:
[0026] A covariance matrix is generated using each point cloud data point in the point cloud set corresponding to the entity to be identified and multiple nearest neighbors of the corresponding point cloud data point.
[0027] Determine the eigenvalues of the covariance matrix;
[0028] The curvature of the corresponding point cloud data points is determined based on the eigenvalues of the covariance matrix.
[0029] In an alternative approach, the method further includes:
[0030] Acquire 3D laser point cloud data containing vehicles, and extract the high-dimensional feature value set of vehicles as training positive samples;
[0031] Acquire 3D laser point cloud data containing non-vehicles, and extract the high-dimensional feature set of non-vehicles as training negative samples;
[0032] The vehicle recognition model to be trained is supervised using the training positive samples and the training negative samples to generate the pre-trained vehicle recognition model.
[0033] In an alternative approach, before determining the entity to be identified in the target scene based on the 3D point cloud image of the target scene, the method further includes:
[0034] Obtain the prior point cloud information of the target scene;
[0035] Static background point cloud data in the 3D point cloud image is removed based on the prior point cloud information.
[0036] According to another aspect of the present invention, a vehicle identification device is provided, the device comprising:
[0037] The determination module is used to determine the entities to be identified in the target scene based on the three-dimensional point cloud image of the target scene;
[0038] The first generation module is used to remove curvature outliers from the point cloud set corresponding to the entity to be identified, so as to generate a target point cloud set after removing curvature outliers.
[0039] The calculation module is used to calculate the high-dimensional feature values of the entity to be identified based on the target point set;
[0040] The second generation module is used to input the high-dimensional feature values of the entity to be identified into the pre-trained vehicle recognition model to generate the recognition result of the entity to be identified.
[0041] According to another aspect of the present invention, an electronic device is provided, including: a processor, a memory, a communication interface, and a communication bus, wherein the processor, the memory, and the communication interface communicate with each other through the communication bus;
[0042] The memory is used to store at least one executable instruction that causes the processor to perform the operations of the vehicle identification method described above.
[0043] According to another aspect of the present invention, a computer-readable storage medium is provided, the storage medium storing at least one executable instruction, which, when executed on an electronic device, causes the electronic device to perform the operation of the vehicle identification method described above.
[0044] In this embodiment of the invention, the 3D LiDAR inevitably experiences jitter during scanning and imaging, which can lead to the inclusion of curvature outliers in the point cloud of the target scene. These curvature outliers interfere with the extraction of high-dimensional features of the target entity, resulting in inaccurate identification. Before extracting high-dimensional features from the target entity, curvature outliers in the point cloud corresponding to the target entity are pre-removed, and a target point cloud is generated after removing outliers. High-dimensional feature values of the target entity are then calculated based on this target point cloud, allowing the calculated high-dimensional feature values to more accurately reflect the characteristics of the target entity. After inputting these high-dimensional feature values into a pre-trained vehicle recognition model, a more accurate identification result can be generated. It can be seen that this embodiment of the invention improves the accuracy of vehicle recognition.
[0045] The above description is merely an overview of the technical solutions of the embodiments of the present invention. In order to better understand the technical means of the embodiments of the present invention and to implement them in accordance with the contents of the specification, and to make the above and other objects, features and advantages of the embodiments of the present invention more apparent and understandable, specific embodiments of the present invention are described below. Attached Figure Description
[0046] The accompanying drawings are for illustrative purposes only and are not intended to limit the invention. Furthermore, the same reference numerals denote the same parts throughout the drawings. In the drawings:
[0047] Figure 1 A flowchart illustrating the vehicle identification method provided in an embodiment of the present invention is shown;
[0048] Figure 2 This diagram illustrates a three-dimensional lidar scanning method provided in an embodiment of the present invention.
[0049] Figure 3 A schematic diagram of the vehicle identification device provided in an embodiment of the present invention is shown;
[0050] Figure 4 A schematic diagram of the structure of an electronic device provided in an embodiment of the present invention is shown. Detailed Implementation
[0051] Exemplary embodiments of the invention will now be described in more detail with reference to the accompanying drawings. While exemplary embodiments of the invention are shown in the drawings, it should be understood that the invention can be implemented in various forms and should not be limited to the embodiments set forth herein.
[0052] Figure 1 A flowchart of a vehicle identification method according to an embodiment of the present invention is shown, the method being executed by an electronic device. The memory of the electronic device is used to store at least one executable instruction that causes the processor of the electronic device to perform the operation of the vehicle identification method described above.
[0053] like Figure 1 As shown, the method includes the following steps:
[0054] Step 110: Based on the 3D point cloud image of the target scene, determine the entities to be identified in the target scene.
[0055] The target scene is one that includes vehicles, such as a city road or parking lot. Furthermore, a 3D LiDAR can be pre-installed at a suitable location within the target scene. The 3D LiDAR then performs continuous rotating scans of the target scene to obtain a 3D point cloud image of the target scene.
[0056] Figure 2 A schematic diagram of a three-dimensional lidar scan provided in an embodiment of the present invention is shown. Figure 2As shown, the 3D LiDAR 2 is mounted on a rotating platform 1, which in turn is mounted on a support frame 3 and can rotate around the support frame 3. The 3D LiDAR 2 can emit high-frequency signals towards the target scene 4 to generate a 3D point cloud. Through the cooperation of the rotating platform 1 and the 3D LiDAR 2, a 3D point cloud image of the target scene 4 can be acquired. The 3D LiDAR 2 can perform non-contact, continuous scanning of various scenes, thereby directly obtaining the 3D image information of the target scene, i.e., the 3D LiDAR point cloud information. Furthermore, by using the 3D LiDAR to acquire the 3D point cloud image of the target scene, there is no need for cumbersome spatial calculations and 3D reconstruction. Through continuous ranging by the LiDAR sensor, the spatial image information of the target scene can be acquired with high precision and high efficiency.
[0057] In a target scene, there are often multiple entities to be identified. To distinguish these entities, the 3D point cloud image of the target scene can be used to determine their identities. For example, Euclidean clustering can be performed on the 3D point cloud image to segment and identify the multiple entities. Furthermore, the background of the target scene may interfere with the identification of the entities, necessitating the removal of static background point cloud data from the 3D point cloud image. Before identifying the entities in the target scene based on the 3D point cloud image, prior point cloud information can be obtained, and then static background point cloud data can be removed from the 3D point cloud image based on this prior information. For example, static background point cloud data can be removed from the 3D point cloud image based on the ordered nature of the point cloud data.
[0058] Step 120: Remove curvature outliers from the point cloud set corresponding to the entity to be identified, so as to generate a target point cloud set after removing curvature outliers.
[0059] During the scanning and imaging process, 3D LiDAR inevitably experiences jitter, resulting in curvature outliers in the point cloud corresponding to the entity to be identified. Furthermore, when the entity is occluded or damaged, curvature outliers will also appear at the edges of the occlusion or damage. The presence of curvature outliers severely interferes with the identification process. Removing these outliers from the point cloud corresponding to the entity can improve the accuracy of entity identification.
[0060] In an optional manner, when removing the curvature outliers in the point cloud set corresponding to the entity to be recognized to generate a target point cloud set after removing the curvature outliers, first calculate the curvature of each point cloud data point in the point cloud set corresponding to the entity to be recognized, and divide the point cloud set corresponding to the entity to be recognized into multiple point cloud clusters. Each point cloud cluster includes a reference point cloud data point and multiple non-reference point cloud data points within a radius range centered on the reference point cloud data point and with a preset Euclidean distance threshold; determine the curvature difference between each non-reference point cloud data point and the reference point cloud data point in the point cloud cluster, and remove the non-reference point cloud data points corresponding to the curvature differences greater than the preset curvature difference threshold from the corresponding point cloud cluster; count the number of point cloud data points contained in each point cloud cluster, determine the point cloud clusters with the number of point cloud data points greater than the preset number threshold as target point cloud clusters, and merge the target point cloud clusters to generate a target point cloud set.
[0061] Further, when calculating the curvature of each point cloud data point in the point cloud set corresponding to the entity to be recognized, first generate a covariance matrix using each point cloud data point in the point cloud set corresponding to the entity to be recognized and multiple neighboring points of the corresponding point cloud data point; then determine the eigenvalues of the covariance matrix, and finally determine the curvature of the corresponding point cloud data point according to the eigenvalues of the covariance matrix. For example, first traverse the point cloud set corresponding to the entity to be recognized. When calculating the curvature n of any point cloud data point p in the point cloud set p at that time, use point p and n neighboring points (p1 to p n ) of point p to calculate the covariance matrix C, and determine the eigenvalues n0, n1, and n2 of the covariance matrix C, where n0 < n1 < n2. The calculation method of the covariance matrix is shown in the following formula.
[0062]
[0063] where p0 is the three-dimensional centroid of the n neighboring points of point p. The curvature n of point p p can be calculated by the following formula.
[0064]
[0065] where, when dividing the point cloud set corresponding to the entity to be recognized into multiple point cloud clusters, randomly select a certain point p k as the initial iteration point of the point cloud cluster S k , traverse the point cloud set to search for points within a radius range centered on p k with a preset Euclidean distance threshold r. The point cloud data point p k is the reference point cloud data point of the point cloud cluster S k , and the points within a radius range centered on p k with a preset Euclidean distance threshold r are the non-reference point cloud data points of the point cloud cluster S k . Further, retain the point cloud cluster Sk Non-reference point cloud data points whose curvature difference from the reference point cloud data points is not greater than a preset curvature difference threshold are removed from the point cloud cluster S. k Non-reference point cloud data points whose curvature difference from the reference point cloud data points is greater than a preset curvature difference threshold. In point cloud cluster S... k After the iteration is completed, in point cloud cluster S k In addition, a new initial iteration point is selected to generate the next point cloud cluster, until the point cloud set corresponding to the entity to be identified is divided into mutually independent point cloud cluster sets. Point cloud clusters with no more than a preset threshold number of point cloud data points are removed, and the remaining point cloud clusters are merged into the target point cloud set.
[0066] Step 130: Calculate the high-dimensional feature value of the entity to be identified based on the target point cloud.
[0067] In this embodiment of the invention, the entity to be identified is identified using high-dimensional feature values. Compared with low-dimensional feature values, high-dimensional feature values offer richer representations, stronger expressive power, higher reliability and discriminative power, and greater scalability for identifying entities based on high-dimensional feature values. When calculating the high-dimensional feature value of the entity to be identified based on the target point cloud set, firstly, a local spatial coordinate system corresponding to the target point cloud data points in the target point cloud set is established based on the centroid of the target point cloud set, where each target point cloud data point is any point cloud data point in the target point cloud set; then, the nutation angle of the target point cloud data point is determined as the first spatial angle feature value, the precession angle of the target point cloud data point is determined as the second spatial angle feature value, and the rotation angle of the target point cloud data point is determined as the third spatial angle feature value; the vector from the viewpoint to the centroid is determined as the first vector, and the angle between the first vector and the normal vector of the target point cloud data point on the surface of the target point cloud set is determined as the fourth spatial angle feature value; the high-dimensional feature value of the entity to be identified is calculated based on the first, second, third, and fourth spatial angle feature values.
[0068] Furthermore, when establishing a local spatial coordinate system corresponding to the target point cloud data points in the target point cloud based on the centroid of the target point cloud, the normal vector of the centroid on the surface of the target point cloud can be determined as the second vector, and the line containing the second vector can be determined as the first coordinate axis of the local spatial coordinate system; the vector pointing from the centroid to the target point cloud data points can be determined as the third vector, and the target plane can be determined using the third vector and the second vector; the vector passing through the centroid and perpendicular to the target plane can be determined as the fourth vector, and the line containing the fourth vector can be determined as the second coordinate axis of the local spatial coordinate system; the third coordinate axis of the local spatial coordinate system can be determined based on the first and second coordinate axes. For example, if the centroid of the target point cloud m is z, and the j-th point of the point cloud is denoted as p... j p jThe unit normal vector of the surface of the target point set m is denoted as... The established local coordinate system can be based on the centroid z as the origin, and the normal vector of the centroid z on the surface at the target point can be calculated. The u-axis, serving as the local coordinate system in space, points the centroid z towards p. j vector Determined as the third vector, using The target plane is determined by the u-axis and the line containing the vector passing through the centroid z and perpendicular to the target plane. The v-axis of the local spatial coordinate system can be determined based on the u-axis and the v-axis.
[0069] Furthermore, utilizing p j The normal vector of a point and the vector The angle values between the coordinates and the various directions of the local spatial coordinate system can be used to obtain the first spatial angular characteristic value α, the second spatial angular characteristic value φ, and the third spatial angular characteristic value θ.
[0070]
[0071] The fourth spatial angular feature value is calculated by using the set of points consisting of the viewpoint and all points on the surface of the entity to be identified as the calculation unit.
[0072] For example, p1 to p7 represent the point cloud data points in the target point cloud set, V p Let z represent the viewpoint, be the centroid of the cluster of target points, and z and V represent the viewpoint. p The vector between them is For each p j By calculating the angle between the normal vector and the vector at a given point, the fourth spatial angle eigenvalue can be obtained. The fourth spatial angle eigenvalue calculates the centroid and the remaining point as a whole. Compared to the distance eigenvalue, it exhibits rotational invariance, and for the same object with different scanning angles and distances, the fourth spatial angle eigenvalue shows less fluctuation.
[0073] When calculating the high-dimensional feature values of the entity to be identified based on the first, second, third, and fourth spatial angular feature values, these feature values can be statistically analyzed using multiple histograms to obtain the high-dimensional feature values. For example, statistically analyzing the four spatial angular feature values using 45 histograms can yield 180-dimensional feature values.
[0074] The algorithm for calculating the high-dimensional feature values of the entity to be identified in this invention embodiment is the IVFH (Improved Vector Field Histogram) algorithm. Compared with the traditional VFH (Vector Field Histogram) algorithm, the IVFH algorithm performs curvature outlier removal and eliminates the calculation of distance feature values. Distance feature values are significantly affected by the angle of the object scanned by the radar and the distance between the radar and the entity to be identified, resulting in considerable fluctuations. The spatial angle feature values in this invention embodiment possess rotation and translation invariance, making them more robust when calculating the high-dimensional feature values of the entity to be identified.
[0075] Step 140: Input the high-dimensional feature value of the entity to be identified into the pre-trained vehicle recognition model to generate the recognition result of the entity to be identified.
[0076] The entity to be identified can include vehicles and non-vehicles. Vehicles can include trucks, cars, and buses, while non-vehicles can include people, bicycles, and pet dogs. The high-dimensional feature values of the entity to be identified are input into a pre-trained vehicle recognition model, which then outputs a recognition result indicating whether the entity is a vehicle or not. Further, before inputting the high-dimensional feature values of the entity to be identified into the pre-trained vehicle recognition model to generate the recognition result, the model can be trained to generate a pre-trained vehicle recognition model. During training, 3D laser point cloud data containing vehicles can be acquired, and the high-dimensional feature value set of vehicles can be extracted as positive training samples; conversely, 3D laser point cloud data containing non-vehicles can be acquired, and the high-dimensional feature value set of non-vehicles can be extracted as negative training samples. Supervised training is then performed using the positive and negative training samples to generate the pre-trained vehicle recognition model. Further, if the recognition result of the entity to be identified is a vehicle, the centroid coordinates of the vehicle can be calculated, and all vehicles in the target scene can be labeled and their numbers counted.
[0077] In this embodiment of the invention, the 3D LiDAR inevitably experiences jitter during scanning and imaging, which can lead to the inclusion of curvature outliers in the point cloud of the target scene. These curvature outliers interfere with the extraction of high-dimensional features of the target entity, resulting in inaccurate identification. Before extracting high-dimensional features from the target entity, curvature outliers in the point cloud corresponding to the target entity are pre-removed, and a target point cloud is generated after removing outliers. High-dimensional feature values of the target entity are then calculated based on this target point cloud, allowing the calculated high-dimensional feature values to more accurately reflect the characteristics of the target entity. After inputting these high-dimensional feature values into a pre-trained vehicle recognition model, a more accurate identification result can be generated. It can be seen that this embodiment of the invention improves the accuracy of vehicle recognition.
[0078] Figure 3 A schematic diagram of the vehicle identification device according to an embodiment of the present invention is shown. Figure 3 As shown, the device 300 includes: a determination module 310, a first generation module 320, a calculation module 330, and a second generation module 340.
[0079] The determination module 310 is used to determine the entity to be identified in the target scene based on the three-dimensional point cloud image of the target scene; the first generation module 320 is used to remove curvature outliers in the point cloud set corresponding to the entity to be identified, so as to generate a target point cloud set after removing curvature outliers; the calculation module 330 is used to calculate the high-dimensional feature value of the entity to be identified based on the target point cloud set; and the second generation module 340 is used to input the high-dimensional feature value of the entity to be identified into a pre-trained vehicle recognition model to generate the recognition result of the entity to be identified.
[0080] In one alternative approach, the first generation module 320 is used for:
[0081] Calculate the curvature of each point cloud data point in the point cloud set corresponding to the entity to be identified;
[0082] The point cloud set corresponding to the entity to be identified is divided into multiple point cloud clusters, wherein each point cloud cluster includes a reference point cloud data point and multiple non-reference point cloud data points within a radius of the reference point cloud data point as the center and a preset Euclidean distance threshold.
[0083] Determine the curvature difference between each non-reference point cloud data point in the point cloud cluster and the reference point cloud data point, and remove the non-reference point cloud data points corresponding to curvature differences that are greater than a preset curvature difference threshold from the corresponding point cloud cluster.
[0084] Count the number of point cloud data points contained in each point cloud cluster, and identify the point cloud clusters with a number of point cloud data points greater than a preset threshold as target point cloud clusters;
[0085] The target point cloud clusters are merged to generate a target point cloud set.
[0086] In one alternative embodiment, the computing module 330 is used for:
[0087] Establish a local spatial coordinate system corresponding to the target point cloud data points in the target point cloud based on the centroid of the target point cloud set, wherein the target point cloud data points are any point cloud data points in the target point cloud set;
[0088] The nutation angle of the target point cloud data point is determined as the first spatial angle feature value, the precession angle of the target point cloud data point is determined as the second spatial angle feature value, and the rotation angle of the target point cloud data point is determined as the third spatial angle feature value.
[0089] The vector from the viewpoint to the centroid is determined as the first vector, and the angle between the first vector and the normal vector of the target point cloud data point on the target point cloud surface is determined as the fourth spatial angle feature value.
[0090] The high-dimensional feature value of the entity to be identified is calculated based on the first spatial angle feature value, the second spatial angle feature value, the third spatial angle feature value, and the fourth spatial angle feature value.
[0091] In one alternative embodiment, the computing module 330 is used for:
[0092] The normal vector of the centroid on the target point convergent surface is determined as the second vector, and the line containing the second vector is determined as the first coordinate axis of the local spatial coordinate system;
[0093] The vector pointing from the centroid to the target point cloud data point is determined as the third vector. The target plane is determined using the third vector and the second vector. The vector passing through the centroid and perpendicular to the target plane is determined as the fourth vector. The line containing the fourth vector is determined as the second coordinate axis of the spatial local coordinate system.
[0094] The third coordinate axis of the local spatial coordinate system is determined based on the first and second coordinate axes.
[0095] In one alternative approach, the first generation module 320 is used for:
[0096] A covariance matrix is generated using each point cloud data point in the point cloud set corresponding to the entity to be identified and multiple nearest neighbors of the corresponding point cloud data point.
[0097] Determine the eigenvalues of the covariance matrix;
[0098] The curvature of the corresponding point cloud data points is determined based on the eigenvalues of the covariance matrix.
[0099] In one alternative approach, the second generation module 340 is used for:
[0100] Acquire 3D laser point cloud data containing vehicles, and extract the high-dimensional feature value set of vehicles as training positive samples;
[0101] Acquire 3D laser point cloud data containing non-vehicles, and extract the high-dimensional feature set of non-vehicles as training negative samples;
[0102] The vehicle recognition model to be trained is supervised using the training positive samples and the training negative samples to generate the pre-trained vehicle recognition model.
[0103] In an alternative embodiment, the device 300 further includes a rejection module for:
[0104] Before the determining module 310 determines the entity to be identified in the target scene based on the three-dimensional point cloud image of the target scene, the prior point cloud information of the target scene is obtained.
[0105] Static background point cloud data in the 3D point cloud image is removed based on the prior point cloud information.
[0106] In this embodiment of the invention, the 3D LiDAR inevitably experiences jitter during scanning and imaging, which can lead to the inclusion of curvature outliers in the point cloud of the target scene. These curvature outliers interfere with the extraction of high-dimensional features of the target entity, resulting in inaccurate identification. Before extracting high-dimensional features from the target entity, curvature outliers in the point cloud corresponding to the target entity are pre-removed, and a target point cloud is generated after removing outliers. High-dimensional feature values of the target entity are then calculated based on this target point cloud, allowing the calculated high-dimensional feature values to more accurately reflect the characteristics of the target entity. After inputting these high-dimensional feature values into a pre-trained vehicle recognition model, a more accurate identification result can be generated. It can be seen that this embodiment of the invention improves the accuracy of vehicle recognition.
[0107] Figure 4 The diagram shows a schematic of the electronic device structure according to an embodiment of the present invention. The specific embodiments of the present invention do not limit the specific implementation of the electronic device.
[0108] like Figure 4 As shown, the electronic device may include: a processor 402, a communications interface 404, a memory 406, and a communications bus 408.
[0109] The processor 402, communication interface 404, and memory 406 communicate with each other via communication bus 408. Communication interface 404 is used to communicate with other network elements such as clients or other servers. The processor 402 executes program 410, specifically performing the relevant steps described above in the vehicle identification method embodiment.
[0110] Specifically, program 410 may include program code, which includes computer-executable instructions.
[0111] Processor 402 may be a central processing unit (CPU), an application-specific integrated circuit (ASIC), or one or more integrated circuits configured to implement embodiments of the present invention. The electronic device includes one or more processors, which may be processors of the same type, such as one or more CPUs; or they may be processors of different types, such as one or more CPUs and one or more ASICs.
[0112] Memory 406 is used to store program 410. Memory 406 may include high-speed RAM memory, and may also include non-volatile memory, such as at least one disk storage device.
[0113] Specifically, program 410 can be called by processor 402 to cause the electronic device to perform the following operations:
[0114] Based on the 3D point cloud image of the target scene, determine the entities to be identified in the target scene;
[0115] Curvature outliers in the point cloud corresponding to the entity to be identified are removed to generate a target point cloud after removing curvature outliers.
[0116] Calculate the high-dimensional feature value of the entity to be identified based on the target point cloud;
[0117] The high-dimensional feature values of the entity to be identified are input into a pre-trained vehicle recognition model to generate the recognition result of the entity to be identified.
[0118] In an alternative manner, the program 410 is invoked by the processor 402 to cause the electronic device to perform the following operations:
[0119] Calculate the curvature of each point cloud data point in the point cloud set corresponding to the entity to be identified;
[0120] The point cloud set corresponding to the entity to be identified is divided into multiple point cloud clusters, wherein each point cloud cluster includes a reference point cloud data point and multiple non-reference point cloud data points within a radius of the reference point cloud data point as the center and a preset Euclidean distance threshold.
[0121] Determine the curvature difference between each non-reference point cloud data point in the point cloud cluster and the reference point cloud data point, and remove the non-reference point cloud data points corresponding to curvature differences that are greater than a preset curvature difference threshold from the corresponding point cloud cluster.
[0122] Count the number of point cloud data points contained in each point cloud cluster, and identify the point cloud clusters with a number of point cloud data points greater than a preset threshold as target point cloud clusters;
[0123] The target point cloud clusters are merged to generate a target point cloud set.
[0124] In an alternative manner, the program 410 is invoked by the processor 402 to cause the electronic device to perform the following operations:
[0125] Establish a local spatial coordinate system corresponding to the target point cloud data points in the target point cloud based on the centroid of the target point cloud set, wherein the target point cloud data points are any point cloud data points in the target point cloud set;
[0126] The nutation angle of the target point cloud data point is determined as the first spatial angle feature value, the precession angle of the target point cloud data point is determined as the second spatial angle feature value, and the rotation angle of the target point cloud data point is determined as the third spatial angle feature value.
[0127] The vector from the viewpoint to the centroid is determined as the first vector, and the angle between the first vector and the normal vector of the target point cloud data point on the target point cloud surface is determined as the fourth spatial angle feature value.
[0128] The high-dimensional feature value of the entity to be identified is calculated based on the first spatial angle feature value, the second spatial angle feature value, the third spatial angle feature value, and the fourth spatial angle feature value.
[0129] In an alternative manner, the program 410 is invoked by the processor 402 to cause the electronic device to perform the following operations:
[0130] The normal vector of the centroid on the target point convergent surface is determined as the second vector, and the line containing the second vector is determined as the first coordinate axis of the local spatial coordinate system;
[0131] The vector pointing from the centroid to the target point cloud data point is determined as the third vector. The target plane is determined using the third vector and the second vector. The vector passing through the centroid and perpendicular to the target plane is determined as the fourth vector. The line containing the fourth vector is determined as the second coordinate axis of the spatial local coordinate system.
[0132] The third coordinate axis of the local spatial coordinate system is determined based on the first and second coordinate axes.
[0133] In an alternative manner, the program 410 is invoked by the processor 402 to cause the electronic device to perform the following operations:
[0134] A covariance matrix is generated using each point cloud data point in the point cloud set corresponding to the entity to be identified and multiple nearest neighbors of the corresponding point cloud data point.
[0135] Determine the eigenvalues of the covariance matrix;
[0136] The curvature of the corresponding point cloud data points is determined based on the eigenvalues of the covariance matrix.
[0137] In an alternative manner, the program 410 is invoked by the processor 402 to cause the electronic device to perform the following operations:
[0138] Acquire 3D laser point cloud data containing vehicles, and extract the high-dimensional feature value set of vehicles as training positive samples;
[0139] Acquire 3D laser point cloud data containing non-vehicles, and extract the high-dimensional feature set of non-vehicles as training negative samples;
[0140] The vehicle recognition model to be trained is supervised using the training positive samples and the training negative samples to generate the pre-trained vehicle recognition model.
[0141] In an alternative manner, the program 410 is invoked by the processor 402 to cause the electronic device to perform the following operations:
[0142] Before determining the entity to be identified in the target scene based on the 3D point cloud image of the target scene, prior point cloud information of the target scene is obtained;
[0143] Static background point cloud data in the 3D point cloud image is removed based on the prior point cloud information.
[0144] In this embodiment of the invention, the 3D LiDAR inevitably experiences jitter during scanning and imaging, which can lead to the inclusion of curvature outliers in the point cloud of the target scene. These curvature outliers interfere with the extraction of high-dimensional features of the target entity, resulting in inaccurate identification. Before extracting high-dimensional features from the target entity, curvature outliers in the point cloud corresponding to the target entity are pre-removed, and a target point cloud is generated after removing outliers. High-dimensional feature values of the target entity are then calculated based on this target point cloud, allowing the calculated high-dimensional feature values to more accurately reflect the characteristics of the target entity. After inputting these high-dimensional feature values into a pre-trained vehicle recognition model, a more accurate identification result can be generated. It can be seen that this embodiment of the invention improves the accuracy of vehicle recognition.
[0145] This invention provides a computer-readable storage medium storing at least one executable instruction that, when executed on an electronic device, causes the electronic device to perform the vehicle identification method in any of the above method embodiments.
[0146] This invention provides a vehicle identification device for performing the above-described vehicle identification method.
[0147] This invention provides a computer program that can be called by a processor to cause an electronic device to execute the vehicle identification method in any of the above method embodiments.
[0148] This invention provides a computer program product, which includes a computer program stored on a computer-readable storage medium. The computer program includes program instructions that, when executed on a computer, cause the computer to perform the vehicle identification method in any of the above method embodiments.
[0149] The algorithms or displays provided herein are not inherently related to any particular computer, virtual system, or other device. Various general-purpose systems can also be used in conjunction with the teachings herein. The required structure for constructing such systems is apparent from the above description. Furthermore, the embodiments of the present invention are not directed to any particular programming language. It should be understood that the content of the invention described herein can be implemented using various programming languages, and the above description of specific languages is for the purpose of disclosing the best mode of implementation of the invention.
[0150] Numerous specific details are set forth in the specification provided herein. However, it will be understood that embodiments of the invention may be practiced without these specific details. In some instances, well-known methods, structures, and techniques have not been shown in detail so as not to obscure the understanding of this specification.
[0151] Similarly, it should be understood that, in order to streamline the invention and aid in understanding one or more of the various aspects of the invention, features of the embodiments of the invention are sometimes grouped together in a single embodiment, figure, or description thereof in the above description of exemplary embodiments of the invention. However, this disclosure should not be construed as reflecting an intention that the claimed invention requires more features than are expressly recited in each claim.
[0152] Those skilled in the art will understand that modules in the device of the embodiments can be adaptively changed and placed in one or more devices different from that embodiment. Modules, units, or components in the embodiments can be combined into a single module, unit, or component, and can be divided into multiple sub-modules, sub-units, or sub-components. Except where at least some of such features and / or processes or units are mutually exclusive, any combination can be used to combine all features disclosed in this specification (including the accompanying claims, abstract, and drawings) and all processes or units of any method or device so disclosed. Unless expressly stated otherwise, each feature disclosed in this specification (including the accompanying claims, abstract, and drawings) may be replaced by an alternative feature that serves the same, equivalent, or similar purpose.
[0153] It should be noted that the above embodiments are illustrative of the invention and not restrictive, and that those skilled in the art can devise alternative embodiments without departing from the scope of the appended claims. In the claims, any reference signs placed between parentheses should not be construed as limiting the claims. The word "comprising" does not exclude the presence of elements or steps not listed in the claims. The word "a" or "an" preceding an element does not exclude the presence of a plurality of such elements. The invention can be implemented by means of hardware comprising several different elements and by means of a suitably programmed computer. In the unit claims enumerating several means, several of these means may be embodied by the same item of hardware. The use of the words first, second, and third, etc., does not indicate any order. These words can be interpreted as names. The steps in the above embodiments, unless otherwise specified, should not be construed as limiting the order of execution.
Claims
1. A vehicle identification method, characterized in that, The method includes: Based on the 3D point cloud image of the target scene, determine the entities to be identified in the target scene; Curvature outliers in the point cloud set corresponding to the entity to be identified are removed to generate a target point cloud set after removing curvature outliers. Specifically, the curvature of each point cloud data point in the point cloud set corresponding to the entity to be identified is calculated. The point cloud set corresponding to the entity to be identified is divided into multiple point cloud clusters, where each point cloud cluster includes a reference point cloud data point and multiple non-reference point cloud data points within a radius of a preset Euclidean distance threshold centered on the reference point cloud data point. The curvature difference between each non-reference point cloud data point in the point cloud cluster and the reference point cloud data point is determined, and non-reference point cloud data points with curvature differences greater than a preset curvature difference threshold are removed from the corresponding point cloud cluster. The number of point cloud data points contained in each point cloud cluster is counted, and point cloud clusters with a number of point cloud data points greater than a preset number threshold are determined as target point cloud clusters. The target point cloud clusters are merged to generate a target point cloud set. Calculate the high-dimensional feature value of the entity to be identified based on the target point cloud; The high-dimensional feature values of the entity to be identified are input into a pre-trained vehicle recognition model to generate the recognition result of the entity to be identified.
2. The method according to claim 1, characterized in that, The step of calculating the high-dimensional feature value of the entity to be identified based on the target point cloud includes: Establish a local spatial coordinate system corresponding to the target point cloud data points in the target point cloud based on the centroid of the target point cloud set, wherein the target point cloud data points are any point cloud data points in the target point cloud set; The nutation angle of the target point cloud data point is determined as the first spatial angle feature value, the precession angle of the target point cloud data point is determined as the second spatial angle feature value, and the rotation angle of the target point cloud data point is determined as the third spatial angle feature value. The vector from the viewpoint to the centroid is determined as the first vector, and the angle between the first vector and the normal vector of the target point cloud data point on the target point cloud surface is determined as the fourth spatial angle feature value. The high-dimensional feature value of the entity to be identified is calculated based on the first spatial angle feature value, the second spatial angle feature value, the third spatial angle feature value, and the fourth spatial angle feature value.
3. The method according to claim 2, characterized in that, The method further includes: The normal vector of the centroid on the target point convergent surface is determined as the second vector, and the line containing the second vector is determined as the first coordinate axis of the local spatial coordinate system; The vector pointing from the centroid to the target point cloud data point is determined as the third vector. The target plane is determined using the third vector and the second vector. The vector passing through the centroid and perpendicular to the target plane is determined as the fourth vector. The line containing the fourth vector is determined as the second coordinate axis of the spatial local coordinate system. The third coordinate axis of the local spatial coordinate system is determined based on the first and second coordinate axes.
4. The method according to claim 1, characterized in that, The calculation of the curvature of each point cloud data point in the point cloud set corresponding to the entity to be identified includes: A covariance matrix is generated using each point cloud data point in the point cloud set corresponding to the entity to be identified and multiple nearest neighbors of the corresponding point cloud data point. Determine the eigenvalues of the covariance matrix; The curvature of the corresponding point cloud data points is determined based on the eigenvalues of the covariance matrix.
5. The method according to claim 1, characterized in that, The method further includes: Acquire 3D laser point cloud data containing vehicles, and extract the high-dimensional feature value set of vehicles as training positive samples; Acquire 3D laser point cloud data containing non-vehicles, and extract the high-dimensional feature set of non-vehicles as training negative samples; The vehicle recognition model to be trained is supervised using the training positive samples and the training negative samples to generate the pre-trained vehicle recognition model.
6. The method according to claim 1, characterized in that, Before determining the entity to be identified in the target scene based on the 3D point cloud image of the target scene, the method further includes: Obtain the prior point cloud information of the target scene; Static background point cloud data in the 3D point cloud image is removed based on the prior point cloud information.
7. A vehicle identification device, characterized in that, The device includes: The determination module is used to determine the entities to be identified in the target scene based on the three-dimensional point cloud image of the target scene; The first generation module is used to remove curvature outliers from the point cloud set corresponding to the entity to be identified, so as to generate a target point cloud set after removing curvature outliers; wherein, the curvature of each point cloud data point in the point cloud set corresponding to the entity to be identified is calculated; the point cloud set corresponding to the entity to be identified is divided into multiple point cloud clusters, wherein each point cloud cluster includes a reference point cloud data point and multiple non-reference point cloud data points within a radius of a circle centered on the reference point cloud data point and a preset Euclidean distance threshold is used; the curvature difference between each non-reference point cloud data point in the point cloud cluster and the reference point cloud data point is determined, and the non-reference point cloud data points corresponding to curvature differences greater than a preset curvature difference threshold are removed from the corresponding point cloud clusters; the number of point cloud data points contained in each point cloud cluster is counted, and the point cloud clusters with a number of point cloud data points greater than a preset number threshold are determined as target point cloud clusters; the target point cloud clusters are merged to generate a target point cloud set; The calculation module is used to calculate the high-dimensional feature values of the entity to be identified based on the target point set; The second generation module is used to input the high-dimensional feature values of the entity to be identified into the pre-trained vehicle recognition model to generate the recognition result of the entity to be identified.
8. An electronic device, characterized in that, include: The processor, memory, communication interface, and communication bus are provided, wherein the processor, memory, and communication interface communicate with each other via the communication bus. The memory is used to store at least one executable instruction that causes the processor to perform the operation of the vehicle identification method as described in any one of claims 1-6.
9. A computer-readable storage medium, characterized in that, The storage medium stores at least one executable instruction, which, when executed on an electronic device, causes the electronic device to perform the operation of the vehicle identification method as described in any one of claims 1-6.