Optimization Method, Device and Storage Medium for Visibility of Ground Target Voxels by a Camera
By optimizing the termination conditions of the Ray-Casting algorithm, a finer-grained ground target voxel is constructed, which solves the misjudgment problem in the camera visibility calculation of ground target voxels and improves the accuracy of ground target recognition of ground targets by 3D Occupancy network.
Patent Information
- Application Number
- CN202411759644.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-03
- Publication Date
- 2025-07-22
- Estimated Expiration
- 2044-12-03
AI Technical Summary
When calculating the visibility of ground target voxel cameras, the prior art fails to fully consider the flat features of point cloud distribution, resulting in misjudging that rays pass through ground target voxels as observed, affecting the 3D Occupancy truth value generation and ground area recognition effect.
By calculating the category labels of ground target voxels and the center of gravity position of point clouds, the termination conditions of the Ray-Casting algorithm are optimized to build a finer-grained ground target voxel, accurately labeling the voxels as ‘observed’ or ‘unobserved’, and ignoring the ‘unobserved’ voxels.
The number of 'unobserved' ground target voxels is reduced, the recognition effect of 3D Occupancy network on ground targets is improved, and the recognition accuracy of ground areas is improved.
Smart Images

Figure CN119693526B_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of autonomous driving, and particularly relates to an optimization method, device, and storage medium for the visibility of ground target voxels in a 3D Occupancy ground truth system. Background Art
[0002] The 3D Occupancy technology is a key technology in the autonomous driving perception system. Different from traditional 3D object detection, the 3D Occupancy model is used to predict each voxel in 3D space. To empower the training of the 3D Occupancy model, a ground truth system is required to label each voxel in 3D space and divide each voxel into different categories such as pedestrians, motor vehicles, and the ground. Camera visibility is a part of the 3D Occupancy ground truth system, and calculating the camera visibility of each voxel in the ego-vehicle coordinate system provides a reference for generating the final voxel labels.
[0003] In the prior art, the calculation process of the camera visibility of voxels specifically includes the following steps:
[0004] (1) According to the LiDAR (Light Detection and Ranging) visibility, calculate the occupancy state of each voxel in 3D space. If there is a point cloud target in the voxel, the voxel is in an occupied state;
[0005] (2) Generate a virtual point for each pixel in the image;
[0006] (3) Transform the virtual point and the camera origin coordinates to the ego-vehicle coordinate system;
[0007] (4) In the ego-vehicle coordinate system, for each virtual point, connect the camera origin and the virtual point to form a ray, and then according to the Ray-Casting algorithm, traverse the voxels passed by the ray:
[0008] (4.1) Along each ray, traverse the voxels until the first occupied voxel is encountered, then terminate the traversal and exit the Ray-Casting function. Mark the current occupied voxel as "observed", and mark the voxels passed by the ray before the occupied voxel as "empty";
[0009] (4.2) Mark the voxels not passed by any ray as "unobserved". "Unobserved" includes the voxels that the ray has not traversed after the function exits early after identifying the "observed" voxel in (4.1).
[0010] (5) The ground truth system processes the voxels marked as "observed" and "empty" in the next step, and ignores the "unobserved" voxels.
[0011] However, due to the particularity of ground targets, the point cloud is flat within the corresponding voxel. The prior art fails to fully consider this situation. As a result, in the Ray-Casting algorithm, there will be a situation where the occupied ground voxels through which the ray passes are inaccurately set to "observed", leading to the "unobserved" state of all subsequent ground targets, affecting the generation of 3D Occupancy ground truth, and further affecting the network's recognition effect on the ground area. Summary of the Invention
[0012] To solve the above technical problems, the present invention proposes an optimization method, device, and storage medium for the visibility of ground target voxels to the camera.
[0013] To achieve the above object, the technical solution of the present invention is as follows:
[0014] In the first aspect, the present invention discloses an optimization method for the visibility of ground target voxels to the camera, including:
[0015] Step S1: Calculate the occupancy state of each voxel in 3D space according to LiDAR visibility. If the voxel contains a point cloud target, the voxel is in an occupied state;
[0016] Step S2: Calculate the class label and the centroid position of the point cloud for each voxel according to the point cloud distribution. The class label is: ground target or non-ground target;
[0017] Step S3: Generate a virtual point for each pixel in the image;
[0018] Step S4: Transform the coordinates of each virtual point and the camera origin to the ego-vehicle coordinate system;
[0019] Step S5: In the ego-vehicle coordinate system, connect each virtual point to the camera origin to form a ray. Use the Ray-Casting algorithm to traverse the voxels through which the ray passes, and mark them as "observed", "empty", or "unobserved" based on the occupancy state, class label, and centroid position of each voxel;
[0020] Step S6: Perform the next processing on the voxels marked as "observed" and "empty", and ignore the "unobserved" voxels.
[0021] Based on the above technical solution, the following improvements can be made:
[0022] As a preferred solution, Step S2 includes:
[0023] Step S2.1: Calculate the voxel corresponding to each point according to the coordinates of each point in the point cloud, and obtain the correspondence between each point in the point cloud and each voxel;
[0024] Step S2.2: Obtain the coordinates and categories of all points corresponding to each voxel, and calculate the centroid position and category label of the point cloud of each voxel.
[0025] As a preferred solution, step S2.2 includes:
[0026] Obtain the coordinates of all points corresponding to each voxel;
[0027] Calculate the average value of the coordinates of all points of each voxel, and use this average value as the centroid position of the point cloud of this voxel;
[0028] Count the categories of all points of each voxel, and use the category with the largest number of points as the category of this voxel.
[0029] As a preferred solution, step S5 includes:
[0030] Step S5.1: In the vehicle coordinate system, connect each virtual point to the camera origin to form a number of rays;
[0031] Step S5.2: Use the Ray-Casting algorithm to sequentially traverse the voxels passed through by each ray along each ray until the first occupied voxel is encountered, and the occupied voxel is a voxel in the occupied state;
[0032] Step S5.3: Judge the category label of the occupied voxel;
[0033] If the category label of the occupied voxel is a ground target, then use the plane where the centroid position of the point cloud of the original occupied voxel is located as the upper plane, and jointly form a new voxel with the bottom plane of the original occupied voxel,
[0034] Further judge whether the ray passes through the new voxel;
[0035] If it passes through the new voxel, then mark the original occupied voxel as "observed", and mark the voxels passed through by the ray before the original occupied voxel as "empty", terminate the traversal, and exit the Ray-Casting function;
[0036] If it does not pass through the new voxel, then mark the original occupied voxel as "empty", and continue to traverse to find the next occupied voxel, and repeat step S5.3;
[0037] If the category label of the occupied voxel is a non-ground target, then mark the original occupied voxel as "observed", and mark the voxels passed through by the ray before the original occupied voxel as "empty", terminate the traversal, and exit the Ray-Casting function.
[0038] In a second aspect, the present invention discloses an optimization device for the visibility of ground target voxels by a camera, including:
[0039] Occupancy state calculation module, which is used to calculate the occupancy state of each voxel in 3D space according to LiDAR visibility. If a voxel contains a point cloud target, then the voxel is in the occupied state;
[0040] Point cloud calculation module, which is used to calculate the class label and the centroid position of the point cloud of each voxel according to the point cloud distribution. The class label is: ground target or non-ground target;
[0041] Virtual point generation module, which is used to generate a virtual point for each pixel in the image;
[0042] Coordinate transformation module, which is used to transform the coordinates of each virtual point and the camera origin to the ego-vehicle coordinate system;
[0043] Marking module, which is used to connect each virtual point with the camera origin in the ego-vehicle coordinate system to form a ray. Using the Ray-Casting algorithm, traverse the voxels passed through by the ray, and based on the occupancy state, class label, and centroid position of the point cloud of each voxel, mark it as "observed", "empty", or "unobserved";
[0044] Processing module, which is used to perform the next processing on the voxels marked as "observed" and "empty", and ignore the "unobserved" voxels.
[0045] As a preferred solution, the point cloud calculation module includes:
[0046] The first calculation unit, which is used to calculate the voxel corresponding to each point in the point cloud according to the coordinates of each point in the point cloud, and obtain the correspondence between each point in the point cloud and each voxel;
[0047] The second calculation unit, which is used to obtain the coordinates and classes of all points corresponding to each voxel, and calculate the centroid position and class label of the point cloud of each voxel.
[0048] As a preferred solution, the second calculation unit includes:
[0049] The obtaining unit, which is used to obtain the coordinates of all points corresponding to each voxel;
[0050] The point cloud centroid position calculation unit, which is used to calculate the average value of the coordinates of all points of each voxel, and use this average value as the centroid position of the point cloud of this voxel;
[0051] The voxel class calculation unit, which is used to count the classes of all points of each voxel, and use the class with the largest number of points as the class of this voxel.
[0052] As a preferred solution, the marking module includes:
[0053] The ray formation unit, which is used to connect each virtual point with the camera origin in the ego-vehicle coordinate system to form several rays;
[0054] A traversal unit, which is used to traverse the voxels passed through by each ray in turn along each ray by using the Ray-Casting algorithm until the first occupied voxel is encountered, and the occupied voxel is a voxel in the occupied state;
[0055] A judgment unit, which is used to judge the class label of the occupied voxel;
[0056] If the class label of the occupied voxel is a ground target, then execute the method in the ground target processing unit;
[0057] If the class label of the occupied voxel is a non-ground target, then execute the method in the non-ground target processing unit;
[0058] A ground target processing unit, which is used to use the plane where the centroid position of the point cloud of the original occupied voxel is located as the upper plane, and jointly form a new voxel with the bottom plane of the original occupied voxel,
[0059] Further judge whether the ray passes through the new voxel;
[0060] If it passes through the new voxel, then mark the original occupied voxel as "observed", mark the voxels passed through by the ray before the original occupied voxel as "empty", terminate the traversal, and exit the Ray-Casting function;
[0061] If it does not pass through the new voxel, then mark the original occupied voxel as "empty", and continue to traverse to find the next occupied voxel, and repeat the method in the judgment unit;
[0062] A non-ground target processing unit, which is used to mark the original occupied voxel as "observed", and mark the voxels passed through by the ray before the original occupied voxel as "empty", terminate the traversal, and exit the Ray-Casting function.
[0063] In a third aspect, the present invention also discloses a storage medium, which stores one or more computer-readable programs, and the one or more programs include instructions, and the instructions are adapted to be loaded and executed by the memory to perform any one of the above-mentioned optimization methods for the visibility of ground target voxels in the camera.
[0064] The present invention discloses an optimization method, device and storage medium for the visibility of ground target voxels in the camera, and has the following beneficial effects:
[0065] The present invention fully considers the actual distribution characteristics of ground target voxels, constructs finer-grained ground target voxels, more accurately gives the state of target voxels, reduces the number of "unobserved" ground target voxels, and improves the recognition effect of the 3D Occupancy network on ground targets. Description of the Drawings
[0066] To more clearly illustrate the technical solutions of the embodiments of the present invention, the following will briefly introduce the accompanying drawings required for the embodiments. It should be understood that the following drawings only show some embodiments of the present invention and should not be regarded as limiting the scope. For those of ordinary skill in the art, without creative efforts, other related drawings can also be obtained based on these drawings.
[0067] Figure 1 It is a flowchart of the optimization method provided by the embodiments of the present invention.
[0068] Figure 2 It is a schematic diagram of a ray and a new voxel provided by the embodiments of the present invention.
[0069] Figure 3 (a) The ground truth label of the target voxel before optimization provided by the embodiments of the present invention;
[0070] Figure 3 (b) The ground truth label of the target voxel after optimization provided by the embodiments of the present invention. Detailed implementation manners
[0071] The following will detail the preferred implementation manners of the present invention with reference to the accompanying drawings.
[0072] The following will clearly and completely describe the technical solutions in the embodiments of the present invention with reference to the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, rather than all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative efforts belong to the scope of protection of the present invention.
[0073] The expression of "including" an element is an "open" expression. This "open" expression only means that there are corresponding components or steps, and should not be construed as excluding additional components or steps.
[0074] In order to achieve the purpose of the present invention, in some embodiments of an optimization method, device and storage medium for the visibility of ground target voxels in a camera, as Figure 1 shown, the optimization method includes:
[0075] Step S1: According to the LiDAR visibility, calculate the occupancy state of each voxel in the 3D space. If the voxel contains a point cloud target, the voxel is in the occupied state;
[0076] Step S2: According to the point cloud distribution, calculate the class label and the point cloud centroid position of each voxel. The class label is: ground target or non-ground target;
[0077] Step S3: Generate a virtual point for each pixel in the image;
[0078] Step S4: Transform the coordinates of each virtual point and the camera origin to the ego-vehicle coordinate system;
[0079] Step S5: In the ego-vehicle coordinate system, connect each virtual point to the camera origin to form rays. Use the Ray-Casting algorithm to traverse the voxels crossed by the rays, and based on the occupancy status, class label, and centroid position of the point cloud of each voxel, mark it as "observed", "empty", or "unobserved";
[0080] Step S6: Perform the next processing on the voxels marked as "observed" and "empty", and ignore the "unobserved" voxels.
[0081] To further optimize the implementation effect of the present invention, in some other embodiments, the remaining characteristic technologies are the same, and the difference lies in that Step S2 includes:
[0082] Step S2.1: According to the coordinates of each point in the point cloud, calculate the voxel corresponding to the point, and obtain the correspondence between each point in the point cloud and each voxel (that is: which voxel each point corresponds to, and which points each voxel contains);
[0083] Step S2.2: Obtain the coordinates and classes of all points corresponding to each voxel, and calculate the centroid position and class label of the point cloud of each voxel.
[0084] Further, Step S2.2 includes:
[0085] Obtain the coordinates of all points corresponding to each voxel;
[0086] Calculate the average value of the coordinates of all points of each voxel, and use this average value as the centroid position of the point cloud of the voxel;
[0087] Count the classes of all points of each voxel, and use the class with the largest number of points as the class of the voxel.
[0088] To further optimize the implementation effect of the present invention, in some other embodiments, the remaining characteristic technologies are the same, and the difference lies in that Step S5 includes:
[0089] Step S5.1: In the ego-vehicle coordinate system, connect each virtual point to the camera origin to form several rays;
[0090] Step S5.2: Use the Ray-Casting algorithm to sequentially traverse the voxels crossed by each ray along the ray until the first occupied voxel is encountered, where the occupied voxel is a voxel with an occupied status;
[0091] Step S5.3: Judge the class label of the occupied voxel;
[0092] If the class label of the occupied voxel is a ground target, then the plane where the center of gravity of the point cloud of the original occupied voxel is located is used as the upper plane, and together with the bottom plane of the original occupied voxel, a new voxel is formed.
[0093] Further determine whether the ray passes through the new voxel;
[0094] If it passes through the new voxel, mark the original occupied voxel as "observed", and mark the voxels previously passed by the ray in the original occupied voxel as "empty", terminate the traversal, and exit the Ray - Casting function;
[0095] If it does not pass through the new voxel, mark the original occupied voxel as "empty", and continue to traverse to find the next occupied voxel, repeating step S5.3;
[0096] If the class label of the occupied voxel is a non - ground target, then mark the original occupied voxel as "observed", and mark the voxels previously passed by the ray in the original occupied voxel as "empty", terminate the traversal, and exit the Ray - Casting function.
[0097] The present invention optimizes the camera visibility of ground - target voxels by modifying the termination condition of the Ray - Casting function, reducing the number of "unobserved" ground - target voxels.
[0098] As Figure 2 shown, in the figure, offset is the center of gravity position of the point cloud of the ground - target voxel, and the offset plane and the bottom plane of the original occupied voxel form a new fine - grained voxel. If the red ray passes through the new voxel, the Ray - Casting algorithm terminates early, and the subsequent voxels are "unobserved". If the blue ray does not pass through the new voxel, the Ray - Casting algorithm continues to traverse downwards until the termination condition is met.
[0099] After experimental comparison, as Figure 3 (a), Figure 3 (b) shown, it can be seen that after optimizing the camera visibility of ground - target voxels, the true - value information of ground - target voxels is more accurate and complete, thus contributing to the recognition effect of the model on the ground area.
[0100] In addition, the embodiment of the present invention discloses an optimization device for the camera visibility of ground - target voxels, including:
[0101] An occupancy - state calculation module, configured to calculate the occupancy state of each voxel in the 3D space according to the LiDAR visibility. If there is a point - cloud target in the voxel, the voxel is in an occupied state;
[0102] A point - cloud calculation module, configured to calculate the class label and the center - of - gravity position of the point cloud of each voxel according to the point - cloud distribution. The class label is: ground target or non - ground target;
[0103] A virtual point generation module for generating a virtual point for each pixel in an image;
[0104] A coordinate transformation module for transforming the coordinates of each virtual point and the camera origin to the ego-vehicle coordinate system;
[0105] A marking module for connecting each virtual point with the camera origin in the ego-vehicle coordinate system to form a ray, using the Ray-Casting algorithm to traverse the voxels passed through by the ray, and marking it as "observed", "empty" or "unobserved" based on the occupancy state, class label, and point cloud centroid position of each voxel;
[0106] A processing module for further processing the voxels marked as "observed" and "empty", and ignoring the "unobserved" voxels.
[0107] To further optimize the implementation effect of the present invention, in some other embodiments, the remaining characteristic technologies are the same, the difference is that the point cloud calculation module includes:
[0108] A first calculation unit for calculating the voxel corresponding to each point according to the coordinates of each point in the point cloud, and obtaining the correspondence between each point in the point cloud and each voxel;
[0109] A second calculation unit for obtaining the coordinates and classes of all points corresponding to each voxel, and calculating the point cloud centroid position and class label of each voxel.
[0110] Further, the second calculation unit includes:
[0111] An obtaining unit for obtaining the coordinates of all points corresponding to each voxel;
[0112] A point cloud centroid position calculation unit for calculating the average value of the coordinates of all points of each voxel, and using this average value as the point cloud centroid position of the voxel;
[0113] A voxel class calculation unit for counting the classes of all points of each voxel, and using the class with the largest number of points as the class of the voxel.
[0114] To further optimize the implementation effect of the present invention, in some other embodiments, the remaining characteristic technologies are the same, the difference is that the marking module includes:
[0115] A ray formation unit for connecting each virtual point with the camera origin in the ego-vehicle coordinate system to form a number of rays;
[0116] A traversing unit for using the Ray-Casting algorithm to sequentially traverse the voxels passed through by each ray along each ray until the first occupied voxel is encountered, and the occupied voxel is a voxel with an occupied state;
[0117] A judgment unit for judging the class label of the occupied voxel;
[0118] If the class label of the occupied voxel is a ground target, then execute the method in the ground target processing unit;
[0119] If the class label of the occupied voxel is a non-ground target, then execute the method in the non-ground target processing unit;
[0120] A ground target processing unit for using the plane where the center of gravity position of the point cloud of the original occupied voxel is located as the upper plane, and jointly forming a new voxel with the bottom plane of the original occupied voxel,
[0121] Further judge whether the ray passes through the new voxel;
[0122] If it passes through the new voxel, mark the original occupied voxel as "observed", mark the voxels previously passed by the ray of the original occupied voxel as "empty", terminate the traversal, and exit the Ray-Casting function;
[0123] If it does not pass through the new voxel, mark the original occupied voxel as "empty", and continue to traverse to find the next occupied voxel, and repeat the method in the judgment unit;
[0124] A non-ground target processing unit for marking the original occupied voxel as "observed", and marking the voxels previously passed by the ray of the original occupied voxel as "empty", terminating the traversal, and exiting the Ray-Casting function.
[0125] In this embodiment, the specific content of the optimization device for the camera visibility of the ground target voxel is similar to the content of the optimization method for the camera visibility of the ground target voxel disclosed in the above embodiment, and will not be elaborated here.
[0126] It should be noted that the present invention can be applied in the OCC ground truth system.
[0127] In addition, the embodiment of the present invention also discloses a storage medium, and the storage medium stores one or more computer-readable programs, and one or more programs include instructions, and the instructions are adapted to be loaded and executed by the memory to execute the optimization method for the camera visibility of the ground target voxel disclosed in any one of the above embodiments.
[0128] The present invention discloses an optimization method, device and storage medium for the camera visibility of the ground target voxel, and has the following beneficial effects:
[0129] The present invention fully considers the actual distribution characteristics of the ground target voxels, constructs finer-grained ground target voxels, more accurately gives the state of the target voxels, reduces the number of "unobserved" ground target voxels, and improves the recognition effect of the 3D Occupancy network on the ground target.
[0130] It should be understood that the various techniques described herein can be implemented in combination with hardware or software, or a combination thereof. Thus, the methods and apparatuses of the present invention, or certain aspects or portions of the methods and apparatuses of the present invention, may take the form of program code (i.e., instructions) embedded in a tangible medium, such as a floppy disk, CD-ROM, hard disk drive, or any other machine-readable storage medium, wherein when the program is loaded into and executed by a machine such as a computer, the machine becomes an apparatus for practicing the present invention.
[0131] The foregoing has shown and described the basic principles, main features and advantages of the present invention. Those skilled in the art should understand that the present invention is not limited by the above embodiments, and what is described in the above embodiments and the specification is only to illustrate the principle of the present invention. Without departing from the spirit and scope of the present invention, the present invention will also have various changes and improvements, and these changes and improvements fall within the scope of the present invention as claimed. The scope of the present invention as claimed is defined by the appended claims and their equivalents.
Claims
1. Optimization method for visibility of ground target voxel cameras, characterized in that, Including: Step S1: Calculate the occupancy status of each voxel in 3D space according to LiDAR visibility. If the voxel contains a point cloud target, then the voxel is in an occupied state; Step S2: Calculate the class label and the centroid position of the point cloud for each voxel according to the point cloud distribution. The class label is: ground target or non-ground target; Step S3: Generate a virtual point for each pixel in the image; Step S4: Transform the coordinates of each virtual point and the camera origin to the ego-vehicle coordinate system; Step S5: In the ego-vehicle coordinate system, connect each virtual point to the camera origin to form a ray. Use the Ray-Casting algorithm to traverse the voxels through which the ray passes, and based on the occupancy status, class label, and centroid position of the point cloud of each voxel, mark it as "observed", "empty", or "unobserved"; Step S6: Perform the next processing on the voxels marked as "observed" and "empty", and ignore the "unobserved" voxels; The said Step S5 includes: Step S5.1: In the ego-vehicle coordinate system, connect each virtual point to the camera origin to form several rays; Step S5.2: Use the Ray-Casting algorithm to sequentially traverse the voxels through which each ray passes along each ray until the first occupied voxel is encountered. The occupied voxel is a voxel in an occupied state; Step S5.3: Judge the class label of the occupied voxel; If the class label of the occupied voxel is a ground target, then use the plane where the centroid position of the point cloud of the original occupied voxel is located as the upper plane, and jointly form a new voxel with the bottom plane of the original occupied voxel, Further judge whether the ray passes through the new voxel; If it passes through the new voxel, then mark the original occupied voxel as "observed", and mark the voxels through which the ray passed before the original occupied voxel as "empty", terminate the traversal, and exit the Ray-Casting function; If it does not pass through the new voxel, then mark the original occupied voxel as "empty", and continue to traverse to find the next occupied voxel, and repeat Step S5.3; If the class label of the occupied voxel is a non-ground target, then mark the original occupied voxel as "observed", and mark the voxels through which the ray passed before the original occupied voxel as "empty", terminate the traversal, and exit the Ray-Casting function.
2. The optimization method according to claim 1, characterized in that The said Step S2 includes: Step S2.1: Calculate the voxel corresponding to each point in the point cloud according to the coordinates of each point in the point cloud, and obtain the corresponding relationship between each point in the point cloud and each voxel; Step S2.2: Obtain the coordinates and classes of all points corresponding to each voxel, and calculate the centroid position and class label of the point cloud of each voxel.
3. The optimization method according to claim 2, wherein The said Step S2.2 includes: Obtain the coordinates of all points corresponding to each voxel; Calculate the average value of the coordinates of all points of each voxel, and use this average value as the centroid position of the point cloud of this voxel; Count the classes of all points of each voxel, and use the class with the largest number of points as the class of this voxel.
4. Optimization device for the visibility of ground target voxels by a camera, characterized in that, Including: An occupancy status calculation module, used to calculate the occupancy status of each voxel in 3D space according to LiDAR visibility. If the voxel contains a point cloud target, then the voxel is in an occupied state; A point cloud computing module, which is used to calculate the class label of each voxel and the position of the center of gravity of the point cloud according to the distribution of the point cloud. The class label is: ground target or non-ground target; A virtual point generation module, which is used to generate a virtual point for each pixel in the image; A coordinate transformation module, which is used to transform the coordinates of each virtual point and the camera origin to the ego-vehicle coordinate system; A marking module, which is used to connect each virtual point with the camera origin in the ego-vehicle coordinate system to form a ray. Using the Ray-Casting algorithm, traverse the voxels passed through by the ray, and based on the occupancy state, class label, and position of the center of gravity of the point cloud of each voxel, mark it as "observed", "empty", or "unobserved"; A processing module, which is used to perform the next processing on the voxels marked as "observed" and "empty", and ignore the "unobserved" voxels; The marking module includes: A ray formation unit, which is used to connect each virtual point with the camera origin in the ego-vehicle coordinate system to form a number of rays; A traversal unit, which is used to use the Ray-Casting algorithm to sequentially traverse the voxels passed through by each ray along each ray until the first occupied voxel is encountered. The occupied voxel is a voxel with an occupied state; A judgment unit, which is used to judge the class label of the occupied voxel; If the class label of the occupied voxel is a ground target, then execute the method in the ground target processing unit; If the class label of the occupied voxel is a non-ground target, then execute the method in the non-ground target processing unit; A ground target processing unit, which is used to use the plane where the position of the center of gravity of the point cloud of the original occupied voxel is located as the upper plane, and jointly form a new voxel with the bottom plane of the original occupied voxel, Further judge whether the ray passes through the new voxel; If it passes through the new voxel, then mark the original occupied voxel as "observed", and mark the voxels passed through by the ray before the original occupied voxel as "empty", terminate the traversal, and exit the Ray-Casting function; If it does not pass through the new voxel, then mark the original occupied voxel as "empty", and continue to traverse to find the next occupied voxel, and repeat the method in the judgment unit; A non-ground target processing unit, which is used to mark the original occupied voxel as "observed", and mark the voxels passed through by the ray before the original occupied voxel as "empty", terminate the traversal, and exit the Ray-Casting function.
5. The optimized device according to claim 4, characterized in that, The point cloud computing module includes: A first calculation unit, which is used to calculate the voxel corresponding to each point in the point cloud according to the coordinates of each point in the point cloud, and obtain the correspondence between each point in the point cloud and each voxel; A second calculation unit, which is used to obtain the coordinates and classes of all points corresponding to each voxel, and calculate the position of the center of gravity of the point cloud and the class label of each voxel.
6. The optimized device according to claim 5, characterized in that, The second calculation unit includes: An obtaining unit, which is used to obtain the coordinates of all points corresponding to each voxel; A point cloud center of gravity position calculation unit, which is used to calculate the average value of the coordinates of all points of each voxel, and use this average value as the position of the center of gravity of the point cloud of this voxel; A voxel class calculation unit, which is used to count the classes of all points of each voxel, and use the class with the largest number of points as the class of this voxel.
7. Storage medium, characterized in that The storage medium stores one or more computer-readable programs, and the one or more programs include instructions that are adapted to be loaded by the memory and execute the method for optimizing the visibility of a ground target voxel camera according to any one of claims 1-3 above.
Citation Information
Patent Citations
Laser radar 3D point cloud ground detection method
CN114488190A
Semantic segmentation method for aircraft point cloud based on voxelization and three views
US20230325978A1