Method for three-dimensional visualization of weather radar data based on adaptive linear octree
By constructing an adaptive linear octree sparse voxel grid and block structure, the storage and computation bottleneck problem in the 3D visualization of Doppler radar data is solved, achieving efficient memory utilization and dynamic data updates.
Patent Information
- Application Number
- CN202510508243.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-22
- Publication Date
- 2026-01-23
- Estimated Expiration
- 2045-04-22
AI Technical Summary
Existing technologies face storage and computational bottlenecks in 3D visualization of Doppler radar data. Traditional uniform grids require storing all 3D data, and sparse regions have high memory consumption, making them unsuitable for the extreme sparsity of radar data. Furthermore, existing index structures, which run on CPUs, are not suitable for dynamic radar data updates.
An adaptive linear octree-based method is used to construct a sparse voxel mesh, remove invalid data regions, build an adaptive depth voxel octree, create block structures in the leaf nodes, compress them into a linear structure, and combine them with a dynamic ray casting method for volume rendering.
Significantly reduces memory usage, improves storage efficiency, lowers memory overhead, enhances query efficiency, reduces data build time, and adapts to the sparsity and dynamic updates of radar data.
Smart Images

Figure CN120635296B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The application belongs to the technical field of meteorological radar data processing, and particularly relates to a meteorological radar data three-dimensional visualization method based on an adaptive linear octree. BACKGROUND
[0002] As a core means for detecting mesoscale and small-scale convective weather, the three-dimensional visualization technology of Doppler radar is crucial for meteorological analysis and prediction by intuitively displaying the spatial distribution and internal structure of radar echo data. Currently, the volume rendering method based on the Ray Cast algorithm is widely used for three-dimensional visualization of radar data, but is limited by the following characteristics of Doppler radar data:
[0003] Irregular spatial distribution: targets within the detection range are scattered and irregular in shape, with high data sparsity;
[0004] Dynamic and local: radar scanning updates dynamically in a fan-shaped area, requiring frequent local data reconstruction;
[0005] Storage and computing bottleneck: traditional uniform voxel grid needs to store all three-dimensional data, resulting in memory waste, and fixed resolution is difficult to adapt to changes in data density.
[0006] Existing technologies attempt to optimize storage and computing efficiency through spatial indexing structures, but still have significant defects:
[0007] Linear octrees are used to store volume data, but octree encoding methods are complex, and the entire volume data is used as the root node to construct the octree, making the octree deep and the query cost high, resulting in low query efficiency.
[0008] The B+ tree-based unbounded sparse voxel data structure can adapt to the tree structure according to the voxel data, using a shallow wide node tree to replace the traditional deep narrow node tree, which has a significant effect on sparse data compression and random voxel access, but this data structure only supports CPU and requires additional storage to support dynamic data updates, and is not suitable for static radar volume scanning data.
[0009] Existing technologies have noticed the irregularity of radar volume scanning data distribution and proposed using 3D Tiles to implement a level of detail (LOD) data structure for radar volume scanning data, selecting the appropriate level for rendering according to the position relationship between the viewport and the volume data. Although this improves algorithm performance when rendering large-scale radar data, it uses a whole uniform Tile division method without considering local data characteristics. Moreover, the data structure description of radar data distribution is complex and occupies a large storage space. SUMMARY
[0010] The present application aims at the above-mentioned deficiencies in the prior art, and provides a weather radar data three-dimensional visualization method based on adaptive linear octree, so as to solve the problem that the traditional uniform grid needs to store all three-dimensional data, the memory occupation rate in the sparse area is large, and the extreme sparseness of the radar data cannot be adapted.
[0011] To achieve the above-mentioned purpose, the technical scheme adopted by the present application is:
[0012] A weather radar data three-dimensional visualization method based on adaptive linear octree, comprising the following steps:
[0013] S1, constructing a sparse voxel grid according to the spatial distribution characteristics of the radar volume scanning data;
[0014] S2, constructing a voxel octree with adaptive depth in each valid unit in the sparse voxel grid;
[0015] S3, creating a block structure and interpolating for each leaf node in each voxel octree;
[0016] S4, compressing the sparse voxel grid and the voxel octree into a linear structure;
[0017] S5, using a dynamic ray casting method to perform volume rendering on the radar volume scanning data compressed into a linear structure.
[0018] Further, in S1, the sparse voxel grid is constructed, comprising:
[0019] According to the spatial distribution characteristics of the radar volume scanning data, the three-dimensional space is divided into sparse voxel grid units, whether the cells contain valid data is determined by sampling the points in the sparse voxel grid cells, and the blank area without echo data is removed.
[0020] Further, S2 specifically comprises the following steps:
[0021] S21, creating a low-resolution grid according to the radar detection range, wherein the bounding box corresponding to each grid unit in the grid is a regular hexahedron;
[0022] S22, traversing each sampling point in the radar volume scanning data, converting the sampling point from polar coordinates to Cartesian coordinates, and adding the data point to the corresponding grid unit list according to the Cartesian coordinates;
[0023] S23, traversing each grid unit, taking the grid unit as the root node of the octree, and starting to construct the voxel octree: if the current root node meets the subdivision condition, it is divided into eight child nodes, and the data points contained in the root node are added to the corresponding child nodes, and the construction of the subtree is recursively performed; if the subdivision condition is not met, the current root node is marked as a leaf node.
[0024] Furthermore, in S23, the subdivision conditions are: the variance of the reflectance data within the root node is less than a preset threshold, and the current octree depth is less than the preset maximum depth of the octree.
[0025] Furthermore, S3 specifically includes:
[0026] In each octagonal leaf node, a 4×4×4 block structure is constructed. Based on this block structure, trilinear interpolation is used to calculate the reflectance data in each leaf node.
[0027] Furthermore, trilinear interpolation is used to calculate the reflectance data in each leaf node, including:
[0028] The corresponding polar coordinates are calculated based on the Cartesian coordinates of the points to be interpolated in the leaf nodes:
[0029]
[0030] In the formula, θ, r represents the elevation angle, azimuth angle, and radial distance of the polar coordinates of the point to be interpolated, respectively; x, y, and z represent the Cartesian coordinates of the point to be interpolated, respectively.
[0031] The elevation angle θ between two adjacent cone surfaces is obtained by querying the polar coordinates of the point to be interpolated. i and θ i+1 Ze was obtained by interpolation in the two conical surfaces. i and Ze i+1 Then, at this time, the polar coordinates of the point to be interpolated... The fundamental reflectance at this location is:
[0032]
[0033] In the formula, Ze is the basic reflectivity value obtained by interpolation at the target elevation angle θ; i and Ze i+1 For two elevation layers θ adjacent to the target point in the elevation dimension i and θ i+1 The basic reflectance value at that location;
[0034] Based on the azimuth angle of the polar coordinates of the point to be interpolated The query retrieves the azimuth angles of the two adjacent radial directions within the cone surface. and And interpolation to obtain Ze i,j and Ze i,j+1 At this point, the polar coordinates of the point to be interpolated The fundamental reflectance at this location is:
[0035]
[0036] In the formula, Ze i For the elevation angle θ i Within the layer, target azimuth angle The basic reflectance value obtained by interpolation; Ze i,j and Ze i,j+1 For the elevation angle θ i In the layer, relative to the target azimuth angle two adjacent azimuth angles and The basic reflectance value at that location;
[0037] Based on the radial distance r of the polar coordinates of the point to be interpolated, the two adjacent radial distance sampling points r are obtained. k and r k+1 And interpolate to Ze i,j,k and Ze i,j,k+1 At this point, the polar coordinates of the point to be interpolated The fundamental reflectance at this location is:
[0038]
[0039] In the formula, Ze i,j For the elevation angle θ i Layer and azimuth The basic reflectivity value obtained by interpolation at a radial distance r from the target; Ze i,j,k and Ze i,j,k+1 For the elevation angle θ i Layer, azimuth At that point, the two distances r adjacent to the radial distance r of the target k and r k+1 The basic reflectivity value at that location.
[0040] Furthermore, in S4, each node of the octree is encoded using 32 bits, with the highest bit used to identify whether the node is a leaf node. If the node is a leaf node, the remaining 31 bits are used as an integer to store the index of the block structure; otherwise, it represents the index of the first child node. Specifically, before generating and compressing the octree, a depth-first traversal is used to compress the octree, including:
[0041] Maintain an index of the encoded node position and assign this index to the octree node for storage. When traversing a node, if the node is a leaf node, set the corresponding encoded array value of the node to the Block index; otherwise, take the first child node of the node and set the corresponding encoded array value of the node to the index value of the first child node. Then, enqueue eight child nodes in sequence.
[0042] Furthermore, S4 specifically includes:
[0043] During voxel octree encoding compression, the sparse voxel grid is compressed to the head of the encoding array. If the data in the current grid cell is valid, the encoded value points to the root node of the octree; otherwise, it is set to a fixed value to indicate invalid data. For special cases with single-level tree depth, the storage structure is optimized so that the cell index directly points to the block structure.
[0044] Furthermore, in S5, the dynamic ray travel step length in the dynamic ray casting method is:
[0045]
[0046] In the formula, Δt' is the dynamic ray step length; Δt is the original fixed ray step length; d is the current node depth; r is the scaling factor; and g is the relaxation coefficient.
[0047] The three-dimensional visualization method for meteorological radar data based on adaptive linear octree provided by this invention has the following beneficial effects:
[0048] The data structure used in this invention records only the region containing valid echo data, thereby greatly improving storage efficiency. Compared with the traditional uniform grid storage scheme, the data structure proposed in this invention significantly reduces memory usage and avoids resource waste. Furthermore, it can adapt the depth of the voxel octree according to the distribution frequency of volume scan data, thereby achieving adaptive grid resolution.
[0049] The method employed in this invention uses significantly less memory at all resolutions than the traditional uniform voxel grid (which occupies 512 MB of memory), reducing memory usage by approximately 53%. When processing large-scale radar volume scan datasets, it effectively reduces memory burden. Because this invention skips most blank data areas during data interpolation, the data structure construction speed is faster than with the uniform grid, resulting in an average time reduction of 38%. Attached Figure Description
[0050] Figure 1 This is a flowchart of a three-dimensional visualization method for meteorological radar data based on an adaptive linear octree, according to an embodiment of the present invention.
[0051] Figure 2 This is a sparse voxel mesh according to an embodiment of the present invention.
[0052] Figure 3 This is a linear octree encoding according to an embodiment of the present invention.
[0053] Figure 4 The optimized linear data structure for embodiments of the present invention
[0054] Figure 5 This refers to the dynamic light step size in an embodiment of the present invention. Detailed Implementation
[0055] The specific embodiments of the present invention are described below to enable those skilled in the art to understand the present invention. However, it should be understood that the present invention is not limited to the scope of the specific embodiments. For those skilled in the art, various changes are obvious as long as they are within the spirit and scope of the present invention as defined and determined by the appended claims. All inventions utilizing the concept of the present invention are protected.
[0056] Example 1
[0057] This embodiment presents a 3D visualization method for weather radar data based on an adaptive linear octree. The method constructs a sparse voxel grid across the entire radar volume scan data area, removes blank data regions, then constructs a voxel octree for each valid voxel cell, and finally compresses the voxel grid and octree into a linear structure to complete the volume rendering. This embodiment solves the problems of traditional uniform grids requiring storage of all 3D data, high memory consumption in sparse regions, and inability to adapt to the extreme sparsity of radar data, thereby optimizing query efficiency and reducing memory overhead. (Reference) Figure 1 Specifically, it includes the following:
[0058] Step S1: Construct a sparse voxel grid based on the spatial distribution characteristics of the radar volume scan data;
[0059] Based on the spatial distribution characteristics of radar volume scanning data, this embodiment first divides the three-dimensional space into sparse voxel grid cells and removes blank areas without echo data.
[0060] refer to Figure 2 Specifically, in the process of constructing a low-resolution uniform grid, the point within the sampled cell is used to determine whether the cell contains valid data. In step S2, when constructing the voxel octree, invalid cells are skipped to save memory.
[0061] Step S2: Construct an adaptive depth voxel octree in each effective cell of the sparse voxel mesh, referring to... Figure 2 Specifically, it includes the following steps:
[0062] Step S21: Based on the radar detection range, create a low-resolution grid, ensuring that the bounding box corresponding to each grid cell is a regular hexahedron;
[0063] Step S22: Traverse each sampling point in the radar volume scan data, convert it from polar coordinates to Cartesian coordinates, and add the data points to the corresponding grid cell list according to the Cartesian coordinates.
[0064] Step S23: Traverse each grid cell, treating it as the root node of an octree, and begin constructing the voxel octree:
[0065] Specifically, if the current node meets the conditions for further subdivision, it is divided into eight smaller child nodes, and the data points contained in the current node are added to the corresponding child nodes, and the subtree is constructed recursively.
[0066] If the subdivision criteria are not met, the current node is marked as a leaf node.
[0067] In step S23, the subdivision conditions are as follows:
[0068] The system uses whether the variance of the reflectance data within a node is less than a preset threshold, and whether the current octree depth is less than the preset maximum depth of the octree, as the basis for determining the subdivision conditions. This enables the system to adaptively adjust the depth of the voxel octree based on the reflectance data within the space.
[0069] It should be noted that a voxel refers to the basic unit of three-dimensional space stored in an octree, hence the name voxel octree. The term voxel octree emphasizes its use in voxel representation. Structurally, it is no different from an octree, because an octree itself represents a three-dimensional tree-like data structure that divides a regular hexahedron into eight smaller regular hexahedrons. In addition, for a linear octree, "linear" means that the octree's storage structure is linear, not a traditional pointer-linked tree structure.
[0070] Step S3: Create a block structure and interpolate for each leaf node in the octree;
[0071] After the voxel octree is constructed, the next step is to calculate the reflectance data in each leaf node. A simple method to calculate the reflectance data in each leaf node is to apply trilinear interpolation based on the center point of the leaf node's bounding box. During rendering, the octree is traversed until the corresponding leaf node is reached, and the reflectance value at the center of the leaf node is used for rendering. This method is essentially equivalent to nearest-neighbor interpolation, and its rendering results often exhibit a noticeable blocky structure. To implement trilinear interpolation within the leaf nodes and thus improve rendering quality, an improved approach is to store the reflectance data of the eight vertices of the bounding box in each leaf node. During rendering, linear interpolation is performed using the reflectance data of these eight vertices. While this method significantly improves the rendering effect, it also leads to a large amount of data redundancy.
[0072] To address this issue, this embodiment constructs a 4×4×4 three-dimensional texture (called a block) in each octagonal leaf node for interpolation. Typically, each block has only eight vertices and some redundant data on the edges, significantly reducing wasted storage space.
[0073] For the trilinear interpolation calculation of the radar's basic reflectivity, first at different elevation angles (θ)... i and θ i+1 Interpolate between () to obtain Ze. Then, within the same elevation layer, for different azimuth angles () and Interpolation yields Ze i Finally, at the same elevation and azimuth angles, for different radial distances (r)... k and r k+1 Interpolation yields Ze i,j Specifically, it includes the following:
[0074] The corresponding polar coordinates are calculated based on the Cartesian coordinates of the points to be interpolated in the leaf nodes:
[0075]
[0076] In the formula, θ, r represents the elevation angle, azimuth angle, and radial distance of the polar coordinates of the point to be interpolated, respectively; x, y, and z represent the Cartesian coordinates of the point to be interpolated, respectively.
[0077] The elevation angle θ between two adjacent cone surfaces is obtained by querying the polar coordinates of the point to be interpolated. i and θ i+1 Ze was obtained by interpolation in the two conical surfaces. i and Ze i+1 Then, at this time, the polar coordinates of the point to be interpolated... The fundamental reflectance at this location is:
[0078]
[0079] In the formula, Ze is the basic reflectivity value obtained by interpolation at the target elevation angle θ; i and Ze i+1 For two elevation layers θ adjacent to the target point in the elevation dimension i and θ i+1 The basic reflectivity value at that location.
[0080] Based on the azimuth angle of the polar coordinates of the point to be interpolated The query retrieves the azimuth angles of the two adjacent radial directions within the cone surface. and And interpolation to obtain Ze i,j and Ze i,j+1At this point, the polar coordinates of the point to be interpolated The fundamental reflectance at this location is:
[0081]
[0082] In the formula, Ze i For the elevation angle θ i Within the layer, target azimuth angle The basic reflectance value obtained by interpolation; Ze i,j and Ze i,j+1 For the elevation angle θ i In the layer, relative to the target azimuth angle two adjacent azimuth angles and The basic reflectivity value at that location.
[0083] Based on the radial distance r of the polar coordinates of the point to be interpolated, the two adjacent radial distance sampling points r are obtained. k and r k+1 And interpolate to Ze i,j,k and Ze i,j,k+1 At this point, the polar coordinates of the point to be interpolated The fundamental reflectance at this location is:
[0084]
[0085] In the formula, Ze i,j For the elevation angle θ i Layer and azimuth The basic reflectivity value obtained by interpolation at a radial distance r from the target; Ze i,j,k and Ze i,j,k+1 For the elevation angle θ i Layer, azimuth At that point, the two distances r adjacent to the radial distance r of the target k and r k+1 The basic reflectivity value at that location.
[0086] Step S4: Compress the sparse voxel mesh and voxel octree into a linear structure;
[0087] refer to Figure 3 In this embodiment, a linear octree is used for data compression;
[0088] Specifically, the octree node in this embodiment has two states: one is to store block structure information as a leaf node, and the other is to be further divided into 8 child nodes, which conforms to the characteristics of a complete octree.
[0089] In this embodiment, each node of the octree is encoded using 32 bits, with the highest bit used to identify whether the node is a leaf node. If the node is a leaf node, the remaining 31 bits are used as an integer to store the index of the block structure; otherwise, they represent the index of the first child node.
[0090] refer to Figure 4 The generation and compression steps of the octree need to be performed in advance, and the compression is performed in a depth-first traversal order. During traversal, an index of the encoded node position is maintained and the index is assigned to the octree node for storage. When traversing a certain node, if the node is a leaf node, the encoded array value corresponding to the node is set as the Block index; otherwise, the first child node of the node is taken and the encoded array value corresponding to the node is set as the index value of the first child node. Then, eight child nodes are enqueued in sequence.
[0091] During voxel octree encoding compression, the sparse voxel grid is compressed along with the data at the beginning of the encoding array. If the data in the current grid cell is valid, the encoded value points to the root node of the octree; otherwise, it is set to a fixed value to indicate invalid data. For the special case of single-level tree depth (where the grid cell index points to the root node, and the root node is a leaf node pointing to a block), the storage structure is optimized so that the cell index directly points to the block, in order to further reduce memory waste and improve GPU memory access efficiency.
[0092] In this embodiment, "uniform" in "uniform voxel mesh" means that the mesh is divided in a uniform manner, not an irregular division. However, "sparse" refers to the result of removing invalid meshes that do not contain valid data from the uniform mesh after division. These are two properties of voxel meshes.
[0093] Step S5: Use the dynamic ray projection method to perform volume rendering on the meteorological radar volume scan data compressed to a linear structure;
[0094] Traditional ray casting algorithms suffer from significant problems when sampling this data structure using a fixed step size. With a longer step size, rays may traverse too many leaf nodes at deeper levels in a single sampling, resulting in insufficient sampling frequency and loss of detail during volume rendering. Conversely, with a shorter step size, high-frequency sampling of shallower leaf nodes, due to their lower resolution, not only fails to improve rendering quality but also significantly reduces algorithm efficiency. Therefore, traditional fixed-step methods are ill-suited to the characteristics of voxel octree structures, necessitating the use of dynamic ray step sizes for volume rendering. (Refer to...) Figure 5 The dynamic light beam travels as follows:
[0095]
[0096] In the formula, Δt' is the dynamic ray step size; Δt is the original fixed ray step size; d is the current node depth; r is the scaling factor, which is adjusted by the user to control the sampling density; g is the relaxation coefficient. The larger the value of g, the less obvious the dynamic ray stepping effect, approaching fixed step size sampling. This embodiment effectively avoids node jumping by using dynamic ray stepping.
[0097] This invention reduces memory overhead by introducing a sparse mesh. The radar volume scan data encoded by octrees can adaptively adjust tree depth and resolution based on accuracy, solving the dynamic resolution problem. To overcome the problems encountered by directly partitioning the octree, a nested octree approach is adopted within the mesh. Addressing the limitations of using pointers to index child nodes in typical octree structures, which leads to significant memory consumption, a linear octree is used for data compression. During leaf node sampling, to improve rendering effects and prevent excessive data redundancy, a 4×4×4 3D texture (called a block structure) is constructed in each octree leaf node for interpolation. Typically, only eight vertices and some edge data in each block have redundancy, significantly reducing storage space waste.
[0098] Although specific embodiments of the invention have been described in detail with reference to the accompanying drawings, this should not be construed as limiting the scope of protection of this patent. Various modifications and variations that can be made by a person skilled in the art without inventive effort within the scope described in the claims still fall within the scope of protection of this patent.
Claims
1. A method for three-dimensional visualization of meteorological radar data based on an adaptive linear octree, characterized in that, Includes the following steps: S1. Construct a sparse voxel grid based on the spatial distribution characteristics of radar volume scan data; S2. Construct an adaptive-depth voxel octree in each effective cell of the sparse voxel mesh; S2 specifically includes the following steps: S21. Based on the radar detection range, create a low-resolution grid, in which the bounding box corresponding to each grid cell is a regular hexahedron; S22. Traverse each sampling point in the radar volume scan data, convert the sampling point from polar coordinates to Cartesian coordinates, and add the data point to the corresponding grid cell list according to the Cartesian coordinates. S23. Traverse each grid cell, take the grid cell as the root node of the octree, and start building the voxel octree: if the current root node meets the subdivision condition, divide it into eight child nodes, and add the data points contained in the root node to the corresponding child nodes, and recursively build the subtree; if the subdivision condition is not met, mark the current root node as a leaf node. In S23, the subdivision conditions are: the variance of the reflectance data in the root node is less than the preset threshold, and the current octree depth is less than the preset maximum depth of the octree. S3. Create a block structure for the leaf nodes in each voxel octree and interpolate it; S4. Compress the sparse voxel mesh and voxel octree into a linear structure; S5. The dynamic ray projection method is used to perform volume rendering on the radar volume scan data compressed to a linear structure.
2. The method for three-dimensional visualization of meteorological radar data based on adaptive linear octree according to claim 1, characterized in that, In S1, the construction of a sparse voxel mesh includes: Based on the spatial distribution characteristics of radar volume scan data, the three-dimensional space is divided into sparse voxel grid cells. By sampling the points in the sparse voxel grid cells, it is determined whether the cells contain valid data, and then blank areas without echo data are removed.
3. The method for three-dimensional visualization of meteorological radar data based on adaptive linear octree according to claim 1, characterized in that, S3 specifically includes: In each octagonal leaf node, a 4×4×4 block structure is constructed. Based on this block structure, trilinear interpolation is used to calculate the reflectance data in each leaf node.
4. The method for three-dimensional visualization of meteorological radar data based on adaptive linear octree according to claim 3, characterized in that, The reflectance data in each leaf node is calculated using trilinear interpolation, including: The corresponding polar coordinates are calculated based on the Cartesian coordinates of the points to be interpolated in the leaf nodes: In the formula, These represent the elevation angle, azimuth angle, and radial distance of the polar coordinates of the point to be interpolated, respectively. These are the Cartesian coordinates of the points to be interpolated; Based on the elevation angle of the polar coordinates of the point to be interpolated The query retrieves the elevation angle of two adjacent cone surfaces. and Interpolation values were obtained in the two conical surfaces respectively. and Then, at this time, the polar coordinates of the point to be interpolated... The fundamental reflectance at this location is: In the formula, Target elevation angle The basic reflectance value obtained by interpolation; and For two elevation layers adjacent to the target point in the elevation dimension and The basic reflectance value at that location; Based on the azimuth angle of the polar coordinates of the point to be interpolated The query retrieves the azimuth angles of the two adjacent radial directions within the cone surface. and and interpolation to get and At this point, the polar coordinates of the point to be interpolated The fundamental reflectance at this location is: In the formula, For the elevation angle Within the layer, target azimuth angle The basic reflectance value obtained by interpolation; and For the elevation angle In the layer, relative to the target azimuth angle Two adjacent azimuth angles and The basic reflectance value at that location; Based on the radial distance of the polar coordinates of the point to be interpolated The query retrieves the radial distance sampling points that are adjacent to it. and And interpolate to get and At this point, the polar coordinates of the point to be interpolated The fundamental reflectance at this location is: In the formula, For the elevation angle Layer and azimuth At the target radial distance The basic reflectance value obtained by interpolation; and For the elevation angle Layer, azimuth Location, radial distance from the target two adjacent distances and The basic reflectivity value at that location.
5. The method for three-dimensional visualization of meteorological radar data based on adaptive linear octree according to claim 1, characterized in that, In step S4, each node of the octree is encoded using 32 bits, with the highest bit used to identify whether the node is a leaf node. If the node is a leaf node, the remaining 31 bits are used as an integer to store the index of the block structure; otherwise, they represent the index of the first child node. Specifically, before generating and compressing the octree, a depth-first traversal is used to compress the octree, including: Maintain an index of the encoded node position and assign this index to the octree node for storage. When traversing a node, if the node is a leaf node, set the corresponding encoded array value of the node to the Block index; otherwise, take the first child node of the node and set the corresponding encoded array value of the node to the index value of the first child node. Then, enqueue eight child nodes in sequence.
6. The method for three-dimensional visualization of meteorological radar data based on adaptive linear octree according to claim 1, characterized in that, S4 specifically includes: During voxel octree encoding compression, the sparse voxel grid is compressed to the head of the encoding array. If the data in the current grid cell is valid, the encoded value points to the root node of the octree; otherwise, it is set to a fixed value to indicate invalid data. For special cases with single-level tree depth, the storage structure is optimized so that the cell index directly points to the block structure.
7. The method for three-dimensional visualization of meteorological radar data based on adaptive linear octree according to claim 1, characterized in that, In S5, the dynamic ray travel step length in the dynamic ray casting method is: In the formula, To allow dynamic light to travel and grow; The original, fixed light rays travel longer; The current node depth is, This is the scaling factor; is the relaxation coefficient.
Citation Information
Patent Citations
Laser radar dense measurement method based on imagination calculation enhancement
CN116934828A
Dynamic water body generation method and system based on 3D Gaussian splash
CN119478255A