Point cloud data processing method and device of unmanned vehicle and unmanned vehicle
By determining the unupdated and updated grids in point cloud data in unmanned vehicles and storing them, the problem of large and time-consuming point cloud data storage resources in unmanned driving is solved, and the real-time and Processing efficiency.
Patent Information
- Application Number
- CN202411323663.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-23
- Publication Date
- 2024-12-31
- Estimated Expiration
- 2044-09-23
AI Technical Summary
In unmanned driving, point cloud data storage resources are large and take a long time, which affects the real-time performance of the system.
By obtaining the current frame and previous frame point cloud data during the unmanned vehicle movement, we determine the raster that has not been updated and updated in the raster diagram, and use preset rules to map the unupdated raster index to the historical index. The updated raster data does not reopen storage space, and the updated raster data allocates new storage locations to achieve efficient storage and processing of data.
It reduces the resource usage and time-consuming of the computing platform, improves the real-time nature of the system, avoids full replication or mobile operations, and improves the processing efficiency of point cloud data.
Smart Images

Figure CN119226572A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of unmanned driving technology, and in particular to a point cloud data processing method and device for an unmanned vehicle, and an unmanned vehicle. Background Art
[0002] In unmanned driving, lidar point cloud processing is a very important task. Usually, the collected point cloud data is stored through grids. For example, each time a frame of point cloud data is collected, new storage space needs to be opened up for the newly collected current frame of point cloud data. Even if there is a large amount of duplicate data between the current frame of point cloud data and the previous frame of point cloud data, the point cloud data will be restored by full copying or full movement. It can be seen that to achieve the accumulation of multi-frame point cloud data status, or the direct processing of multi-frame point cloud data, it involves a large amount of data copying or moving operations, which not only takes up a lot of computing platform resources, but also affects the real-time performance of the system because it is too time-consuming. Summary of the invention
[0003] The disclosed embodiments provide a method and device for processing point cloud data of an unmanned vehicle, and an unmanned vehicle, so as to solve the problem that the existing point cloud data occupies a large amount of storage resources and is time-consuming.
[0004] Based on the above problems, in the first aspect, a point cloud data processing method for an unmanned vehicle is provided, comprising: Acquire the current frame point cloud data collected during the movement of the unmanned vehicle and the previous frame point cloud data of the current frame point cloud data; Determine that the second grid map corresponding to the current frame point cloud data includes a first grid whose grid data has not been updated and a second grid whose grid data has been updated in the first grid map corresponding to the previous frame point cloud data; The grid data of the second grid map is stored and processed according to a preset rule, wherein the preset rule includes: For the first grid: mapping a first grid index of the first grid in the second grid map to a historical grid index of the first grid in the first grid map, wherein a mapping relationship is pre-established between the historical grid index and a first target storage location, and the first target storage location stores grid data corresponding to the first grid; For the second grid: determine a second grid index corresponding to the second grid in the second grid map, allocate a second target storage location for the raster data corresponding to the second grid, map the second grid index to the second target storage location, and store the raster data corresponding to the second grid in the second target storage location.
[0005] In combination with the first aspect, in a possible implementation, the determination of the first grid whose grid data has not been updated and the second grid whose grid data has been updated in the second grid map corresponding to the current frame point cloud data compared to the first grid map corresponding to the previous frame point cloud data includes: determining the number and direction of movement of the grids that have moved in the current frame point cloud data compared to the previous frame point cloud data based on the motion change data of the unmanned vehicle from the previous moment to the current moment; and determining the first grid and the second grid based on the number and direction of movement of the grids that have moved.
[0006] In combination with the first aspect, in a possible implementation, the first grid index of the first grid in the second grid map is determined in the following manner: the first grid index of the first grid in the second grid map is determined according to the number of grids that move and the direction of movement.
[0007] In combination with the first aspect, in a possible implementation, determining the second grid index corresponding to the second grid in the second grid map includes: determining a grid index in the second grid map that is not occupied by the first grid index as the second grid index.
[0008] In combination with the first aspect, in a possible implementation, allocating a second target storage location for the raster data corresponding to the second raster includes: determining a historical storage location corresponding to the address in the first raster map corresponding to the second raster index as the second target storage location.
[0009] In combination with the first aspect, in a possible implementation, there are multiple raster indexes not occupied by the first raster index, and the multiple raster indexes have a first order, and determining the raster index in the second raster map not occupied by the first raster index as the second raster index includes: determining a second order of a second raster whose raster data is updated; maintaining the second order, and allocating the multiple raster indexes according to the first order.
[0010] In combination with the first aspect, in a possible implementation, the raster index not occupied by the first raster index corresponds to at least one raster area, and determining the raster index in the second raster map not occupied by the first raster index as the second raster index includes: taking the center formed by the digitized processing area corresponding to the first raster map and the digitized processing area corresponding to the second raster map as the center point, assigning to the second raster the raster index corresponding to the target raster area that is symmetrical with the center of the area where the raster data is updated.
[0011] In combination with the first aspect, in a possible implementation, the method further includes: obtaining a read bias function, wherein the read bias function is related to the number of grids that have moved in the current frame point cloud data compared to the previous frame point cloud data and the direction of movement; using the read bias function to determine a data reading order, and jointly reading the data stored in the first target storage location and the second target storage location according to the data reading order.
[0012] In a second aspect, a point cloud data processing device for an unmanned vehicle is provided, comprising: An acquisition module, used to acquire the current frame point cloud data collected during the movement of the unmanned vehicle and the previous frame point cloud data of the current frame point cloud data; A determination module, used to determine that the second grid map corresponding to the current frame point cloud data includes a first grid whose grid data has not been updated and a second grid whose grid data has been updated in the first grid map corresponding to the previous frame point cloud data; A storage module is used to store and process the raster data of the second raster map according to preset rules, wherein the preset rules include: for the first raster: mapping the first raster index of the first raster in the second raster map to the historical raster index of the first raster in the first raster map, wherein a mapping relationship is pre-established between the historical raster index and a first target storage location, and the first target storage location stores the raster data corresponding to the first raster; for the second raster: determining the second raster index corresponding to the second raster in the second raster map, and allocating a second target storage location to the raster data corresponding to the second raster, mapping the second raster index to the second target storage location, and storing the raster data corresponding to the second raster in the second target storage location.
[0013] In a third aspect, an unmanned vehicle is provided, comprising: a point cloud data processing device for an unmanned vehicle as described in the second aspect.
[0014] The beneficial effects of the embodiments of the present disclosure include: The present disclosure provides a method and device for processing point cloud data of an unmanned vehicle, and an unmanned vehicle, comprising: obtaining current frame point cloud data collected during the movement of the unmanned vehicle and a previous frame point cloud data of the current frame point cloud data; determining a first grid whose raster data has not been updated and a second grid whose raster data has been updated in a second grid map corresponding to the current frame point cloud data compared to a first grid map corresponding to the previous frame point cloud data; storing and processing the raster data of the second grid map according to a preset rule, wherein the preset rule comprises: for the first grid: mapping a first raster index of the first grid in the second raster map to a historical raster index of the first grid in the first raster map, wherein a mapping relationship is pre-established between the historical raster index and a first target storage location, and the first target storage location stores raster data corresponding to the first raster; for the second grid: determining a second raster index corresponding to the second raster in the second raster map, allocating a second target storage location to the raster data corresponding to the second raster, mapping the second raster index to the second target storage location, and storing the raster data corresponding to the second raster in the second target storage location. The point cloud data processing method of the unmanned vehicle provided by the embodiment of the present disclosure compares the second grid map corresponding to the current frame point cloud data collected during the movement of the unmanned vehicle with the first grid map corresponding to the previous frame point cloud data, and determines the first grid that has not been updated in the second grid map compared with the first grid map and the second grid that has been updated. For the first grid that has not been updated, the first grid index of the first grid in the second grid map can be mapped to the historical grid index of the first grid in the first grid map. It can be seen that for the first grid whose raster data has not been updated, there is no need to open up new storage space, nor is there any need to copy or move the duplicate raster data in full. Instead, the first grid index of the first grid in the new grid map (i.e., the second raster map) is mapped to the historical raster index of the first grid in the first raster map. The raster data stored in the first grid can be found through the first raster index. Compared with the related art, the resource occupancy of the computing platform is small, the time consumption is small, and the real-time performance of the system is not affected. BRIEF DESCRIPTION OF THE DRAWINGS
[0015] Figure 1 A flowchart of a point cloud data processing method for an unmanned vehicle provided in an embodiment of the present disclosure; Figure 2 One of the schematic diagrams of a two-dimensional grid image corresponding to two adjacent frames of point cloud data provided by an embodiment of the present disclosure; Figure 3 A second schematic diagram of a two-dimensional grid image corresponding to two adjacent frames of point cloud data provided in an embodiment of the present disclosure; Figure 4 A schematic diagram of a digital processing area corresponding to a grid image and a second grid image provided in an embodiment of the present disclosure; Figure 5A schematic diagram of the structure of a point cloud data processing device for an unmanned vehicle provided in an embodiment of the present disclosure. DETAILED DESCRIPTION
[0016] The embodiments of the present disclosure provide a method and device for processing point cloud data of an unmanned vehicle, and an unmanned vehicle. The preferred embodiments of the present disclosure are described below in conjunction with the drawings of the specification. It should be understood that the preferred embodiments described herein are only used to illustrate and explain the present disclosure, and are not used to limit the present disclosure. In addition, the embodiments in the present application and the features in the embodiments can be combined with each other if there is no conflict.
[0017] The present disclosure provides a method for processing point cloud data of an unmanned vehicle. Figure 1 As shown, including: S101, obtaining the current frame point cloud data and the previous frame point cloud data of the current frame point cloud data collected during the movement of the unmanned vehicle; S102, determining that the second grid map corresponding to the current frame point cloud data includes a first grid whose grid data has not been updated and a second grid whose grid data has been updated in the first grid map corresponding to the previous frame point cloud data; S103, storing and processing the grid data of the second grid image according to preset rules, wherein the preset rules include: For the first grid: mapping the first grid index of the first grid in the second grid map to the historical grid index of the first grid in the first grid map, wherein a mapping relationship is pre-established between the historical grid index and the first target storage location, and the first target storage location stores grid data corresponding to the first grid; For the second grid: determine a second grid index corresponding to the second grid in the second grid map, allocate a second target storage location for the grid data corresponding to the second grid, map the second grid index to the second target storage location, and store the grid data corresponding to the second grid in the second target storage location.
[0018] In the disclosed embodiment, the unmanned vehicle can collect point cloud data in real time during the movement, and store the collected point cloud data in real time, for example, it can be stored through a grid map (including a two-dimensional grid map and a multi-dimensional grid map, which is not limited here). In the disclosed embodiment, a second grid map can be generated for the current frame point cloud data, and the second grid map is compared with the first grid map corresponding to the previous frame point cloud data to determine the first grid whose grid data has not been updated and the second grid whose grid data has been updated in the two grid maps. For the first grid, it means that its grid data has not changed from the previous frame to the current frame. In order to save the resources of the computing platform, in the disclosed embodiment, the storage space for the grid data of the first grid is not newly opened, nor is it fully copied or moved, but the corresponding grid indexes in the first grid map and the second grid map are mapped, that is, the first grid index is mapped to the historical grid index. Since the historical grid index has a mapping relationship with the first target storage location for storing the raster data, the raster data corresponding to the first grid can be found through the first raster index.
[0019] For the second grid, since the grid data corresponding to the second grid is updated, a second target storage location can be allocated for the updated grid data corresponding to the second grid, and by establishing a mapping relationship between the second grid index and the second target storage location, the grid data corresponding to the second grid can be found through the second grid index. The second target storage location allocated for the updated grid data corresponding to the second grid can open up new storage space for the second grid, or can overwrite historical grid data. This can be determined according to actual needs during implementation and is not limited here.
[0020] Furthermore, the point cloud data processing method for an unmanned vehicle provided in the present disclosure can be implemented by the unmanned vehicle, or can be implemented by a cloud platform after receiving point cloud data collected by the unmanned vehicle in real time.
[0021] In another embodiment provided by the present disclosure, the above step S102 "determining the first grid whose grid data has not been updated and the second grid whose grid data has been updated in the second grid map corresponding to the current frame point cloud data compared to the first grid map corresponding to the previous frame point cloud data" can be implemented as follows: Step 1: According to the motion change data of the unmanned vehicle from the previous moment to the current moment, determine the number of grids and the direction of movement of the current frame point cloud data compared with the previous frame point cloud data; Step 2: Determine the first grid and the second grid according to the number of grids that move and the direction of movement.
[0022] In the disclosed embodiment, since the unmanned vehicle collects point cloud data during the movement, the point cloud data collected by the unmanned vehicle from the previous moment to the current moment is changing, and the point cloud data collected at each moment can be stored through the corresponding grid map. According to the motion change data of the unmanned vehicle (i.e., positioning data, usually including movement distance and direction), the number of grids and the direction of movement in the grid maps collected at different moments will change. If the calculation cycle is relatively short (for example: 100ms), the grid maps corresponding to the two adjacent moments will contain more repetitions, that is, although the index of the grid in the corresponding grid map has changed in the two previous and next grid maps, the corresponding stored grid data has not changed, and the first grid and the second grid can be determined by determining the number of grids that have moved and the direction of movement.
[0023] Figure 2 A schematic diagram of a two-dimensional grid map corresponding to two adjacent frames of point cloud data provided in an embodiment of the present disclosure. To facilitate understanding of the disclosed solution, taking a two-dimensional grid map as an example, 201 is the first grid map constructed for the previous frame of point cloud data, and 202 is the second grid map constructed for the current frame of point cloud data. Assuming that 201 and 202 are both 4×4 two-dimensional grid maps, and the direction of movement of the unmanned vehicle is the x direction, it can be seen that compared with the first grid map 201, the direction of grid movement in the second grid map 202 is consistent with the direction of movement of the unmanned vehicle, and according to the distance moved by the unmanned vehicle, the number of grids that move is two. It can be seen that compared with the first grid map 201, the oblique line portion of the second grid map 202 is repeated grid data, that is, the first grid that has not been updated, and the grid data in the second grid map 202 except the oblique line portion is the second grid that has been updated. Since each grid map has an independent grid index, it can be seen that for the first grid marked with a slash that has not been updated, the grid data stored therein has not changed, but the grid indexes in the first grid map 201 and the second grid map 202 have changed.
[0024] In another embodiment provided by the present disclosure, the first grid index of the first grid in the second grid map is determined in the following manner: According to the number of moved grids and the moving direction, a first grid index of the first grid in the second grid map is determined.
[0025] Figure 3 A schematic diagram of a two-dimensional grid image corresponding to two adjacent frames of point cloud data provided in an embodiment of the present disclosure. Continuing to take the first grid image 201 and the second grid image 202 as an example, for ease of understanding, Figure 3 In the example, the grid index in the two-dimensional grid image is represented by a two-dimensional index (i.e., the index of the x dimension and the index of the y dimension). This is just an example and does not limit the representation method of the grid index. Figure 3As shown in the figure, the normal font represents the grid index of each grid in the first grid map, and the italic font represents the grid index of each grid in the second grid map. It can be seen that when both grid maps have independent grid indexes, for the first grid that has not been updated (such as Figure 3 The two middle columns of grids) do not change the grid data stored therein, but the grid indexes in the first grid map 201 and the second grid map 202 change (i.e., 20-> 00 , 30-> 10 , 21-> 01 ,31-> 11 , 22-> 02 ,32-> 12 , 23-> 03 , 33-> 13 ). In order to save system resources, the first raster data may not be fully copied or moved, but the corresponding first raster index in the second raster map 202 may be mapped to the historical raster index of the first raster in the first raster map 201, so that the first raster index points to the real storage location of the raster data.
[0026] During implementation, the first grid index of the first grid in the second grid map can be determined according to the number of grids that move and the direction of movement. 00 For example, since the direction of movement of the unmanned vehicle is the positive x direction, and according to the moving distance, it is determined that the number of grids that change in the positive x direction of the grid map is 2 grids, then the direction of grid movement in the second grid map 202 is the positive x direction compared to the first grid map 201. For the grid index in the second grid map, the x-dimensional index changes, and the direction of change is the positive x direction. Then the new x-dimensional index index_new is the original index minus the number of moved grids, and it is determined that the number of changed grids is 2, then index_new=index-2, that is, the grid with a grid index of 20 in the first grid map 201 needs to reduce its x-dimensional index by 2 in the second grid map 202, while the y-dimensional index remains unchanged. Then the grid index in the second grid map 202 is 00 , realizing the index mapping of the first grid in the first grid map 201 and the second grid map 202.
[0027] In another embodiment provided by the present disclosure, in the above step S103, “determining the second grid index corresponding to the second grid in the second grid map” can be implemented as follows: The grid index in the second grid map that is not occupied by the first grid index is determined as the second grid index.
[0028] In the disclosed embodiment, since the first grid is a grid that has not been updated, in order to save storage space, it is necessary to map the first grid index of the first grid in the second grid map to the historical grid index of the first grid in the first grid map, so that the first grid index and the corresponding historical grid index in the first grid map can both point to the actual storage location of the corresponding grid data. It can be seen that for the first grid whose grid data has not been updated, part of the grid index (i.e., the first grid index) in the second grid map is occupied, and a mapping relationship has been established with the corresponding historical grid index in the first grid map. Then, the grid in the second grid map that is not occupied by the first grid can be allocated to the second grid whose grid data has been updated. Since the grid data in the second grid is updated, whether to map with the grid other than the first grid in the first grid map can be determined according to actual needs, and it is not limited here. Therefore, according to actual needs, according to preset rules, the grid index in the second grid map that is not occupied by the first grid index is allocated to the second grid, and the second grid index corresponding to the second grid in the second grid map is determined.
[0029] by Figure 3 Taking the two-dimensional grid in as an example, the grid indexes in the second grid map that are not occupied by the first grid index ( 23、33、22、32、21、31、20、30 ) are assigned to the second grid according to the preset method.
[0030] In another embodiment provided by the present disclosure, the “allocating a second target storage location for the grid data corresponding to the second grid” in the above step S103 can be implemented as the following steps: A historical storage location corresponding to the address in the first grid map corresponding to the second grid index is determined as the second target storage location.
[0031] In the disclosed embodiment, when the calculation cycle is small (for example, 100ms), the proportion of repeated data in the grid map corresponding to two adjacent frames of point cloud data is high, that is, the first grid accounts for a high proportion in the second grid map, and using the point cloud data of the next frame to cover part of the historical data of the previous frame will not have much impact on the acquisition of point cloud data. Therefore, for the second grid, although the grid data has been updated, since the second grid accounts for a small proportion in the second grid map, it is not necessary to re-open the storage space for the second grid, but continue to reuse the storage space of the grid data corresponding to the previous grid map. In other words, the addresses of the grids other than the first grid in the first grid map can be respectively corresponded to the second grid, and the historical storage position corresponding to the corresponding address is determined as the second target storage position of the grid data corresponding to the second grid. The grid data corresponding to the second grid is stored in the corresponding second target storage position, and the previous grid data is overwritten. In this way, the storage space corresponding to the entire grid map does not need to be re-opened, which further saves storage space and resources.
[0032] Continue with Figure 3 For example, the grid addresses other than the first grid in the first grid map include the addresses of grids with grid indexes of 03, 13, 02, 12, 01, 11, 00 and 10 respectively. According to the preset rule, the second grid index ( 23、 33、22、32、21、31、20、30 ) are mapped to the above grid addresses respectively, and the historical storage location corresponding to the mapped grid address is used as the storage location of the corresponding second grid. Assume that the corresponding relationship established is 23 Corresponding to 03, 23 The storage location corresponding to the updated raster data is the storage location of the raster data corresponding to 03.
[0033] In another embodiment provided by the present disclosure, there are multiple grid indexes not occupied by the first grid index, and the multiple grid indexes have a first order. The above step of "determining the grid index not occupied by the first grid index in the second grid map as the second grid index" can be implemented as the following steps: Step 1, determining the second order of the second grid whose grid data is updated; Step 2: Keep the second order and allocate multiple grid indexes according to the first order.
[0034] In the disclosed embodiment, the raster indexes in the raster map have a certain order, and the raster data in the raster map can be read according to the order. The point cloud data collected by the unmanned vehicle also has a certain order, and the scene detected by the laser radar can be restored according to the order. Then, in the case where there are multiple raster indexes in the second raster map that are not occupied by the first raster index, the multiple raster indexes have a first order, and the raster data corresponding to the second raster whose raster data is updated has a second order. In order to make the scene detected by the laser radar determined by the raster data accurate, the second order needs to be maintained. Since the raster data needs to be read according to the order of the raster index (i.e., the first order) after the raster data is stored, the first order for reading the raster data needs to have a corresponding relationship with the second order when the raster data represents the scene, ensuring that the raster data read according to the first order can determine the detected scene according to the second order.
[0035] by Figure 3 For example, assuming that the grid data corresponding to the updated second grid represents a tree, and the crown grid in the second grid stores the crown point cloud data of the tree, and the trunk grid in the second grid stores the trunk point cloud data of the tree. The crown grid and the trunk grid are parsed in the second order to get the tree with the crown on top and the trunk on the bottom. Assume that the grid index 23 and 33 The reading order (i.e. the first order) is first23 back 33 The first order, then, you can assign grid indexes to the crown grid and trunk grid according to the first order while maintaining the second order, for example: assign the grid index 23 Assigned to the canopy raster, index the raster 33 Assigned to the tree trunk grid.
[0036] In another embodiment provided by the present disclosure, the grid index not occupied by the first grid index corresponds to at least one grid area, and the above step of "determining the grid index not occupied by the first grid index in the second grid map as the second grid index" can be implemented as the following steps: Taking the center formed by the digitized processing area corresponding to the first grid map and the digitized processing area corresponding to the second grid map as the center point, the grid index corresponding to the target grid area symmetrical to the center of the area where the grid data is updated is allocated to the second grid.
[0037] In the disclosed embodiment, when processing the first raster image, the processing area corresponding to the first raster image is used as the digital processing area corresponding to the first raster image, and when processing the second raster image, the processing area corresponding to the second raster image is used as the digital processing area corresponding to the second raster image. The two digital processing areas may overlap, that is, overlap at the first grid. In order to facilitate the allocation of the grid area other than the first grid in the first raster image to the second grid, the corresponding allocation can be performed in a centrally symmetrical manner. That is, the center of the entire area of the digital processing area corresponding to the first raster image and the second raster image is determined as the center point, and based on the center point, a symmetrical area is determined for the area constituted by the second grid from the digital processing area corresponding to the first raster image as the target raster area, and the grid index corresponding to the target raster area in the first raster image is allocated to the second raster.
[0038] Figure 4 A schematic diagram of a digital processing area corresponding to the first grid image and the second grid image provided in the embodiment of the present disclosure. Figure 4As shown, the first raster image 401 is a two-dimensional raster image corresponding to the previous frame of point cloud data, and the second raster image 402 is a two-dimensional raster image corresponding to the current frame of point cloud data collected after the unmanned vehicle moves a certain distance to the lower right. The center of the area formed by the digital processing area corresponding to the first raster image 401 and the digital processing area corresponding to the second raster image 402 is o, and the grayscale marked part represents the processing area corresponding to the first grid. The area not marked in gray in the second raster image 402 is the area where the raster data is updated (i.e., the processing area corresponding to the second grid). With o as the center point, a target grid area symmetrical to the update area can be determined in the digital processing area corresponding to the first raster image 401, so that the grid index corresponding to the target grid area is assigned to the second grid. For example, with o as the center, the first partial update area a' in the second raster image 402 determines that the symmetrical area in the first raster image 401 is the first target raster area a, and the raster index in the first target raster area a can be assigned to the first partial update area a'; the second partial update area b' in the second raster image 402 determines that the symmetrical area in the first raster image 401 is the second target raster area b, and the raster index in the second target raster area b can be assigned to the second partial update area b'; similarly, the third partial update area c' in the second raster image 402 determines that the symmetrical area in the first raster image 401 is the third target raster area c, and the raster index in the third target raster area c can be assigned to the third partial update area c'.
[0039] Continue with Figure 3 For example, based on the center point formed by the digital processing area corresponding to the first raster image 201 and the digital processing area corresponding to the second raster image 202, the area with 03, 13, 02, 12, 01, 11, 00 and 10 as the grid index is 23、33、22、32、21、31、20、30 The symmetrical area of the update area of the raster index, that is, the area with raster indexes of 03, 13, 02, 12, 01, 11, 00 and 10 is the target raster area of the above update area, then the raster indexes of 03, 13, 02, 12, 01, 11, 00 and 10 can be allocated to the above update area. When allocating raster indexes, according to the preset allocation rules, in a possible implementation, according to the direction and amount of raster movement, the index value change in the corresponding dimension is calculated for each index in the first raster map. For index 03, the corresponding change is -23, and for index 13, the corresponding change is -13. The raster map has 4 grids in the x dimension, then -2+4=2 can be used to convert -23 to 23, and -1+4=3 can be used to convert -13 to 33, so that the index 03 and the second grid in the x dimension are equal. 23 Correspondingly, the grid 03 in the first grid map is assigned to the grid 03 in the second grid map. 23Similarly, assign the grid 13 in the first grid map to the grid 13 in the second grid map. 33 .
[0040] In another embodiment provided by the present disclosure, the above method further includes the following steps: Step 1: Obtain a read bias function, wherein the read bias function is related to the number of grids and the direction of movement of the current frame point cloud data compared to the previous frame point cloud data; Step 2: using the read bias function to determine the data reading order, and jointly reading the data stored in the first target storage location and the second target storage location according to the data reading order.
[0041] In the embodiment of the present disclosure, in order to ensure that the point cloud data stored in the grid map can be correctly read, a read bias function can be set, and the read bias function is set based on the number of grids and the direction of movement of the previous frame point cloud data compared to the previous frame point cloud data. As mentioned above, in the embodiment of the present disclosure, the first grid whose grid data has not changed and the second grid whose grid data has changed are determined based on the number of grids and the direction of movement of the current frame point cloud data compared to the previous frame point cloud data. For the first raster, in order to save system resources, when storing raster data, it is not necessary to re-apply for storage area, but to map the first raster index of the first raster in the second raster map, so that the first raster index in the second raster map points to the storage location of the corresponding raster data; and for the second raster, new storage space can be applied for according to actual needs or the storage location of the raster data corresponding to the raster other than the first raster in the first raster map can be reused. Regardless of the method used, when reading the raster data stored in the second raster map, the first target storage location of the first raster and the second target storage location of the second raster should be combined to correctly parse the point cloud data stored in the second raster map. This requires knowing the mapping rules of each raster index in the second raster map, and reading the raster data according to the mapping rules can correctly parse the point cloud data stored in the second raster map. The read bias function reflects the mapping rule of each raster index in the second raster map, that is, by reading the bias function, the reading order of each raster data in the entire second raster map can be determined, and the data stored in the first target storage position corresponding to the first raster and the second target storage position corresponding to the second raster can be jointly read.
[0042] Based on the same disclosed concept, the disclosed embodiments also provide a point cloud data processing device for an unmanned vehicle and an unmanned vehicle. Since the principles of the problems solved by these devices and the unmanned vehicle are similar to those of the aforementioned point cloud data processing method for an unmanned vehicle, the implementation of the device and the unmanned vehicle can refer to the implementation of the aforementioned method, and the repeated parts will not be repeated.
[0043] The present disclosure provides a point cloud data processing device for an unmanned vehicle, such as Figure 5 As shown, it includes the following modules: An acquisition module 501 is used to acquire the current frame point cloud data collected during the movement of the unmanned vehicle and the previous frame point cloud data of the current frame point cloud data; A determination module 502 is used to determine whether the second grid map corresponding to the current frame point cloud data has a first grid whose grid data has not been updated and a second grid whose grid data has been updated in the first grid map corresponding to the previous frame point cloud data; The storage module 503 is used to store and process the raster data of the second raster map according to preset rules, wherein the preset rules include: for the first raster: mapping the first raster index of the first raster in the second raster map to the historical raster index of the first raster in the first raster map, wherein a mapping relationship is pre-established between the historical raster index and a first target storage location, and the first target storage location stores the raster data corresponding to the first raster; for the second raster: determining the second raster index corresponding to the second raster in the second raster map, and allocating a second target storage location to the raster data corresponding to the second raster, mapping the second raster index to the second target storage location, and storing the raster data corresponding to the second raster in the second target storage location.
[0044] In another embodiment provided by the present disclosure, a determination module 502 is used to determine the number of grids that have moved and the direction of movement of the current frame point cloud data compared to the previous frame point cloud data based on the motion change data of the unmanned vehicle from the previous moment to the current moment; and determine the first grid and the second grid based on the number of grids that have moved and the direction of movement.
[0045] In another embodiment provided by the present disclosure, the storage module 503 is used to determine the first grid index of the first grid in the second grid map in the following manner: determine the first grid index of the first grid in the second grid map according to the number of grids that move and the direction of movement.
[0046] In another embodiment provided by the present disclosure, the storage module 503 is used to determine the grid index in the second grid map that is not occupied by the first grid index as the second grid index.
[0047] In another embodiment provided by the present disclosure, the storage module 503 is used to determine a historical storage location corresponding to an address in the first grid map corresponding to the second grid index as the second target storage location.
[0048] In another embodiment provided by the present disclosure, the storage module 503 is used to determine a second order of a second grid whose raster data is updated; maintain the second order, and allocate the multiple raster indexes according to the first order; the raster indexes not occupied by the first raster index are multiple, and the multiple raster indexes have the first order.
[0049] In another embodiment provided by the present disclosure, the storage module 503 is used to assign a raster index corresponding to a target raster area symmetrical to the center of the area where the raster data is updated to the second raster, with the center formed by the digitized processing area corresponding to the first raster image and the digitized processing area corresponding to the second raster image as the center point; the raster index not occupied by the first raster index corresponds to at least one raster area.
[0050] In another embodiment provided in the present disclosure, the above-mentioned device also includes: a reading module; the reading module is used to obtain a reading bias function, wherein the reading bias function is related to the number of grids and the direction of movement that have moved in the current frame point cloud data compared to the previous frame point cloud data; using the reading bias function, the data reading order is determined, and the data stored in the first target storage location and the second target storage location are jointly read according to the data reading order.
[0051] An embodiment of the present disclosure further provides an unmanned vehicle, comprising: a point cloud data processing device for an unmanned vehicle provided by any of the above embodiments.
[0052] Through the description of the above implementation methods, those skilled in the art can clearly understand that the embodiments of the present disclosure can be implemented by hardware, or by means of software plus a necessary general hardware platform. Based on such an understanding, the technical solution of the embodiments of the present disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, a USB flash drive, a mobile hard disk, etc.), including a number of instructions for enabling a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the methods described in each embodiment of the present disclosure.
[0053] Those skilled in the art can understand that the drawings are only schematic diagrams of a preferred embodiment, and the modules or processes in the drawings are not necessarily required for implementing the present disclosure.
[0054] Those skilled in the art can understand that the modules in the device in the embodiment can be distributed in the device in the embodiment according to the description of the embodiment, or can be changed accordingly and located in one or more devices different from the present embodiment. The modules in the above embodiment can be combined into one module, or can be further divided into multiple sub-modules.
[0055] The serial numbers of the above-mentioned embodiments of the present disclosure are only for description and do not represent the advantages or disadvantages of the embodiments.
[0056] Obviously, those skilled in the art can make various changes and modifications to the present disclosure without departing from the spirit and scope of the present disclosure. Thus, if these modifications and variations of the present disclosure fall within the scope of the claims of the present disclosure and their equivalents, the present disclosure is also intended to include these modifications and variations.
Claims
1. A point cloud data processing method for an unmanned vehicle, characterized in that: include: Acquire the current frame point cloud data collected during the movement of the unmanned vehicle and the previous frame point cloud data of the current frame point cloud data; Determine that the second grid map corresponding to the current frame point cloud data includes a first grid whose grid data has not been updated and a second grid whose grid data has been updated in the first grid map corresponding to the previous frame point cloud data; The grid data of the second grid map is stored and processed according to a preset rule, wherein the preset rule includes: For the first grid: mapping a first grid index of the first grid in the second grid map to a historical grid index of the first grid in the first grid map, wherein a mapping relationship is pre-established between the historical grid index and a first target storage location, and the first target storage location stores grid data corresponding to the first grid; For the second grid: determine a second grid index corresponding to the second grid in the second grid map, allocate a second target storage location for the raster data corresponding to the second grid, map the second grid index to the second target storage location, and store the raster data corresponding to the second grid in the second target storage location.
2. The method according to claim 1, characterized in that The step of determining that the second grid map corresponding to the current frame of point cloud data includes a first grid whose grid data has not been updated and a second grid whose grid data has been updated in the first grid map corresponding to the previous frame of point cloud data, comprises: According to the movement change data of the unmanned vehicle from the previous moment to the current moment, determining the number of grids and the movement direction of the current frame point cloud data compared with the previous frame point cloud data; The first grid and the second grid are determined according to the number of grids that move and the direction of movement.
3. The method according to claim 2, characterized in that The first raster index of the first raster in the second raster map is determined by: According to the number and movement direction of the moved grids, a first grid index of the first grid in the second grid map is determined.
4. The method according to claim 3, characterized in that The determining a second grid index corresponding to the second grid in the second grid map includes: A grid index in the second grid map that is not occupied by the first grid index is determined as the second grid index.
5. The method according to any one of claims 1 to 4, characterized in that The allocating a second target storage location for the grid data corresponding to the second grid includes: A historical storage location corresponding to the address in the first grid map corresponding to the second grid index is determined as the second target storage location.
6. The method according to claim 4, characterized in that There are a plurality of grid indexes not occupied by the first grid index, and the plurality of grid indexes have a first order, and determining the grid indexes in the second grid map not occupied by the first grid index as the second grid index comprises: Determine the second order of the second grid where the grid data is updated; The second order is maintained, and the plurality of grid indexes are allocated according to the first order.
7. The method according to claim 4 or 6, characterized in that The grid index not occupied by the first grid index corresponds to at least one grid area, and determining the grid index not occupied by the first grid index in the second grid map as the second grid index includes: Taking the center formed by the digitized processing area corresponding to the first raster map and the digitized processing area corresponding to the second raster map as the center point, the raster index corresponding to the target raster area symmetrical to the center of the area where the raster data is updated is allocated to the second raster.
8. The method according to claim 1, characterized in that The method further comprises: Obtaining a read bias function, wherein the read bias function is related to the number of grids and the direction of movement of the current frame point cloud data compared to the previous frame point cloud data; The data reading order is determined by using the read bias function, and the data stored in the first target storage location and the second target storage location are jointly read according to the data reading order.
9. A point cloud data processing device for an unmanned vehicle, characterized in that: include: An acquisition module, used to acquire the current frame point cloud data collected during the movement of the unmanned vehicle and the previous frame point cloud data of the current frame point cloud data; A determination module, used to determine that the second grid map corresponding to the current frame point cloud data includes a first grid whose grid data has not been updated and a second grid whose grid data has been updated in the first grid map corresponding to the previous frame point cloud data; A storage module is used to store and process the raster data of the second raster map according to preset rules, wherein the preset rules include: for the first raster: mapping the first raster index of the first raster in the second raster map to the historical raster index of the first raster in the first raster map, wherein a mapping relationship is pre-established between the historical raster index and a first target storage location, and the first target storage location stores the raster data corresponding to the first raster; for the second raster: determining the second raster index corresponding to the second raster in the second raster map, and allocating a second target storage location to the raster data corresponding to the second raster, mapping the second raster index to the second target storage location, and storing the raster data corresponding to the second raster in the second target storage location.
10. An unmanned vehicle, characterized in that: include: A point cloud data processing device for an unmanned vehicle as described in claim 9.
Citation Information
Patent Citations
Method and system for implementing repeated data deletion
CN101882141A
Map data storage method based on space exploration technology
CN102855322A
Data processing method, data format and equipment
CN103049391A
Three-dimensional point cloud compression storage method and system based on spatial-temporal data fusion
CN108009979A
Incremental drawing method and device, electronic equipment and readable storage medium
CN111506586A