A Method and System for Optimizing LiDAR Odometry Based on Resource Utilization Costs
By introducing a resource occupancy cost model and parallel processing of multiple algorithms, the problems of insufficient accuracy and resource management of lidar odometry in complex environments are solved, and efficient positioning and stable operation under different constraints are achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- QILU UNIVERSITY OF TECHNOLOGY (SHANDONG ACADEMY OF SCIENCES)
- Filing Date
- 2026-03-16
- Publication Date
- 2026-05-26
AI Technical Summary
Existing lidar odometry methods suffer from decreased accuracy and robustness in feature-sparse environments, high computational overhead, and insufficient resource management capabilities, leading to positioning failures and system lag, making them unsuitable for complex scenarios.
By introducing a resource occupancy cost model, and through parallel processing of multiple algorithms and resource monitoring, the algorithm strategy is dynamically adjusted to optimize pose estimation in order to balance accuracy and resource consumption, thus forming a resource-adaptive lidar odometry system.
It improves positioning success rate and trajectory accuracy in complex scenarios, avoids positioning failure caused by computational overload, and achieves efficient resource utilization and system stability.
Smart Images

Figure CN121858304B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of lidar odometer technology, and particularly relates to a lidar odometer optimization method and system based on resource occupancy cost. Background Technology
[0002] As a core positioning technology for autonomous systems such as robots and self-driving vehicles, the performance of lidar odometry directly affects the reliability and accuracy of the system.
[0003] Currently, among mainstream laser odometry methods, a single algorithm is difficult to adapt to all scenarios. In feature-sparse environments such as corridors and open areas, its accuracy and robustness drop sharply, leading to matching failures or trajectory drift. While direct point cloud registration methods have some adaptability to feature-sparse environments, they have high computational costs and are difficult to run in real time on resource-constrained platforms. Furthermore, most existing odometry designs prioritize accuracy, neglecting the real-time resource usage of CPUs and memory. When the system load is high, highly complex algorithms may lead to increased processing latency or even system lag, thus affecting the real-time performance and stability of positioning. In addition, the widespread adoption of solid-state LiDAR has brought new challenges, such as severe motion distortion, small field of view, and sparse point clouds, further exacerbating the performance degradation of traditional algorithms. Summary of the Invention
[0004] To address the aforementioned problems, this invention proposes an optimization method and system for lidar odometers based on resource occupancy cost. By introducing a resource occupancy cost model, this invention takes resource efficiency as one of the core optimization objectives, enabling the odometer to dynamically adjust its algorithm strategy according to the current system load. This pursues high accuracy when resources are abundant and ensures smooth system operation when resources are limited, effectively avoiding positioning failure caused by computational overload.
[0005] To achieve the above objectives, the present invention is implemented through the following technical solution:
[0006] In a first aspect, the present invention provides a lidar odometry optimization method based on resource occupancy cost, comprising:
[0007] Acquire raw point cloud data from the LiDAR, as well as CPU utilization, memory utilization, and cache hit rate;
[0008] Based on the original point cloud data, as well as the preset geometric feature algorithm, general feature algorithm and direct registration algorithm, the corresponding candidate poses and feature matching errors are obtained respectively.
[0009] Based on CPU utilization, memory utilization, cache hit rate, and a preset resource utilization factor cost model, the total resource utilization factor cost is obtained.
[0010] Based on the costs of candidate poses, feature matching errors, and total resource occupancy, the optimal pose estimate is determined with the goal of minimizing the total cost.
[0011] Furthermore, the geometric feature algorithm employs LOAM to extract line and surface features for smoothness.
[0012] Furthermore, the smoothness is:
[0013] ;
[0014] in, For the first point cloud frame One point; Point cloud frames The norm; For the neighborhood point set; This represents the number of neighboring points.
[0015] Furthermore, the general feature algorithm introduces ORB general image features for feature-sparse environments; by projecting the point cloud onto the virtual camera image plane to form a grayscale image, ORB features are then extracted.
[0016] Furthermore, the direct registration algorithm employs the generalized iterative nearest-point algorithm, which estimates the pose by optimizing the probability distribution matching degree between point clouds.
[0017] Furthermore, the objective function of the direct registration algorithm is:
[0018] ;
[0019] in, Let be the transformation matrix to be found. and For corresponding point pairs; It is the covariance matrix; This represents the total number of points in the point cloud frame.
[0020] Furthermore, the total resource utilization cost is equal to the sum of the CPU utilization cost, memory utilization cost, and cache hit rate cost; the CPU utilization cost... Memory usage cost And cache hit rate cost They are respectively:
[0021] ;
[0022] ;
[0023] ;
[0024] in, This represents the current CPU utilization rate. The maximum allowed occupancy rate is set; The amount of memory used; Total memory; For cache hit rate; , and These are the weighting coefficients.
[0025] Furthermore, minimize the total cost for:
[0026] ;
[0027] in, It is the optimal pose estimate to be found; It represents the total number of algorithms; It is the first Precision weights of each algorithm; It is a balancing factor between accuracy and resource cost; This is the cost of the total resource utilization rate.
[0028] Furthermore, when resources are scarce, optimization is achieved by adjusting the balance factor between accuracy and resource cost. for:
[0029] ;
[0030] in, This is a cost factor related to total resource utilization. The biggest cost is the resource utilization rate factor. It represents the minimum cost in terms of resource utilization; when system resources are abundant, Increase and optimize bias accuracy; when resources are scarce, Reduce and optimize resource conservation.
[0031] Secondly, the present invention also provides a lidar odometry optimization system based on resource occupancy cost, comprising:
[0032] The data acquisition module is configured to acquire raw point cloud data from the LiDAR, as well as CPU utilization, memory utilization, and cache hit rate.
[0033] The candidate pose determination module is configured to: obtain the corresponding candidate pose and feature matching error based on the original point cloud data and the preset geometric feature algorithm, general feature algorithm and direct registration algorithm, respectively;
[0034] The resource utilization factor cost determination module is configured to: obtain the total resource utilization factor cost based on CPU utilization, memory utilization, cache hit rate, and a preset resource utilization factor cost model;
[0035] The pose optimization module is configured to determine the optimal pose estimate based on the cost of candidate poses, feature matching errors, and total resource occupancy, with the goal of minimizing the total cost.
[0036] Thirdly, the present invention also provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of the lidar odometry optimization method based on resource occupancy cost described in the first aspect.
[0037] Fourthly, the present invention also provides an electronic device, including a memory, a processor, and a computer program stored in the memory and capable of running on the processor, wherein the processor executes the program to implement the steps of the lidar odometry optimization method based on resource occupancy cost described in the first aspect.
[0038] Fifthly, the present invention also provides a computer program product, the computer program product comprising a computer program, which, when executed by a processor, implements the steps of the lidar odometry optimization method based on resource occupancy cost described in the first aspect.
[0039] Compared with the prior art, the beneficial effects of the present invention are as follows:
[0040] 1. This invention first obtains candidate poses and feature matching errors based on raw point cloud data and preset geometric feature algorithms, general feature algorithms, and direct registration algorithms. Then, based on CPU utilization, memory utilization, cache hit rate, and a preset resource utilization factor cost model, the total resource utilization factor cost is obtained. Finally, based on the candidate poses, feature matching errors, and total resource utilization factor cost, the optimal pose estimation is determined with the minimum total cost as the optimization objective. By introducing a resource utilization factor cost model, resource efficiency is taken as one of the core optimization objectives, enabling the odometry to dynamically adjust its algorithm strategy according to the current system load. This pursues high accuracy when resources are abundant and ensures smooth system operation when resources are limited, effectively avoiding positioning failures caused by computational overload.
[0041] 2. This invention integrates multiple complementary algorithms. Whether in a feature-rich structured environment or a feature-sparse unstructured environment, the most suitable solution can be selected or fused from the method pool. This fundamentally solves the problem of a single algorithm being sensitive to environmental changes and significantly improves the positioning success rate and trajectory accuracy in complex scenarios.
[0042] 3. This invention breaks away from the traditional design paradigm of odometers that prioritizes accuracy while neglecting overhead or reduces performance to maintain efficiency. By incorporating both accuracy and resources into the optimization framework through mathematical modeling, Pareto optimality is achieved under different constraints, making the overall system performance more balanced and practical. Attached Figure Description
[0043] The accompanying drawings, which form part of this embodiment, are used to provide a further understanding of this embodiment. The illustrative embodiments and their descriptions are used to explain this embodiment and do not constitute an improper limitation of this embodiment.
[0044] Figure 1 This is a flowchart of the hierarchical optimization process in Embodiment 1 of the present invention;
[0045] Figure 2 This is a three-dimensional lidar point cloud map of Embodiment 1 of the present invention. Detailed Implementation
[0046] The present invention will be further described below with reference to the accompanying drawings and embodiments.
[0047] It should be noted that the following detailed descriptions are exemplary and intended to provide further explanation of this application. Unless otherwise specified, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application pertains.
[0048] LiDAR odometry is a technology that uses continuously acquired 3D point cloud data from LiDAR sensors to estimate the motion trajectory and pose (position and orientation) of a mobile platform (such as an autonomous vehicle or robot) by analyzing changes in environmental features.
[0049] Example 1:
[0050] LiDAR odometry is a core positioning technology for autonomous systems such as robots and self-driving vehicles, and its performance directly affects the reliability and accuracy of the system. Currently, mainstream LiDAR odometry methods are mainly divided into two categories: one is based on geometric features (such as the LOAM (Lidar Odometry and Mapping) series), which extracts and matches features such as lines and surfaces in the environment to calculate pose transformation; the other is based on direct point cloud registration (such as NDT and G-ICP), which estimates motion by optimizing the overall alignment between point clouds. However, these methods still have significant limitations in practical applications. First, a single algorithm cannot adapt to all scenarios: in feature-rich structured environments, geometric feature-based methods are usually more efficient, but in feature-sparse scenarios (such as corridors or open areas), their accuracy and robustness drop sharply, leading to matching failures or trajectory drift. Conversely, while direct point cloud registration methods have some adaptability to feature-sparse environments, they have high computational costs and are difficult to run in real time on resource-constrained platforms. Secondly, existing methods generally lack the ability to dynamically manage computing resources: most LiDAR odometry designs prioritize accuracy, neglecting the real-time usage of resources such as the central processing unit and memory. Under high system load, highly complex algorithms can lead to increased processing latency or even system lag, affecting the real-time performance and stability of positioning. Furthermore, the widespread adoption of solid-state LiDAR has brought new challenges, such as severe motion distortion, small field of view, and sparse point clouds, further exacerbating the performance degradation of traditional algorithms. In summary, current mainstream LiDAR odometry methods cannot adapt to environmental changes or intelligently balance positioning accuracy with resource consumption.
[0051] To address the aforementioned issues, this embodiment provides a LiDAR odometry optimization method based on resource occupancy cost. It integrates an advanced system combining dynamic algorithm selection and resource adaptive optimization. The core system architecture comprises three layers: First, the method pool layer integrates various feature extraction and matching algorithms (such as the LOAM derivative algorithm based on geometric features, a general feature algorithm adapted to sparse environments, and high-precision but time-consuming direct registration algorithms like G-ICP), forming a parallel-executable algorithm resource library to address the challenges of different environmental scenarios. Second, the resource monitoring and cost quantification layer tracks system resource indicators in real time (such as CPU occupancy, memory usage, and cache hit rate), and transforms resource consumption into optimizable cost terms through an established resource occupancy cost model, providing a basis for decision-making. Finally, the hierarchical optimization decision layer acts as the brain, dynamically adjusting the balance factor based on real-time resource status during the fusion optimization phase. It constructs an overall objective function that simultaneously considers pose estimation accuracy and resource consumption cost, derives the optimal pose through optimization, and forms a feedback loop from resource status to method pool configuration, achieving an intelligent trade-off between accuracy and efficiency. The entire architecture, through the diversity of method pools, the quantitative evaluation of resource costs, and the hierarchical optimization decision-making mechanism, jointly ensures the high adaptability, high accuracy, and low resource consumption of LiDAR odometry in complex scenarios.
[0052] like Figure 1 As shown, the lidar odometry optimization method based on resource occupancy cost in this embodiment includes:
[0053] S1. Data Acquisition and Preprocessing:
[0054] The raw point cloud acquired by the lidar is first downsampled using voxel filtering, and motion distortion is removed using IMU data. The preprocessed point cloud is then sent to the method execution layer.
[0055] S2, Method Execution Layer (Parallel Processing of Method Pool):
[0056] Multiple algorithm modules in the method pool process the received point cloud data in parallel. Each module runs independently and generates its own pose estimation result. (in, Indicates the first (a number of algorithms) and their corresponding accuracy evaluation metrics (such as feature matching error) ).
[0057] Optionally, the method pool, as one of the core components of the system and methods, is a callable library integrating multiple feature extraction and matching algorithms. The method pool is designed to address challenges in different environments, ensuring that suitable algorithms are always available. The method pool mainly includes the following algorithm modules:
[0058] S2.1, Geometric Feature Algorithm:
[0059] It inherits and optimizes the feature extraction strategy of LOAM (Lidar Odometry and Mapping), including smoothness-based line and surface feature extraction. Given a point cloud frame... , (Representing the number of points and their positions in space), that is... The point cloud matrix of this frame is represented as:
[0060] ;
[0061] The formula for calculating smoothness is:
[0062] ;
[0063] in, For the first point cloud frame A point, defined as , represents the three-dimensional spatial position of a point in the lidar coordinate system, where, , and These are the coordinates of the points in the point cloud within the coordinate system of the lidar itself. The coordinates are defined according to the right-hand rule, with the X-axis pointing to the right as the positive direction, the Y-axis pointing forward as the positive direction, and the Z-axis pointing upward as the positive direction. The total number of points in the point cloud frame; The definition point is used for summation; Point cloud frames norm, ; For the neighborhood point set; This represents the number of neighborhood points. Points with high smoothness are classified as line features, while points with low smoothness are classified as surface features. This module is suitable for structured environments (such as indoors or streets).
[0064] ;
[0065] in, The core of the function is to find the input parameter or index position that makes the target function or array achieve the minimum value, rather than the minimum value itself; and This represents the number of successfully matched edge points and planar points in the current frame. The transformed point to its matching edge line vertical distance, Determined by the two closest points on the local map; The transformed point To its matching planar piece vertical distance, The plane equation, defined by the three closest points on the local map, is used to iteratively solve for the equation that minimizes the total residual using nonlinear optimization methods such as the Gauss-Newton method or the Levenberg-Marquardt method (LM method). .
[0066] After pose estimation is completed, the average residual of all valid matches is calculated as the confidence level of this estimation:
[0067] ;
[0068] in, The matching error is the mean squared error (MSE). The smaller the value, the better the current frame is aligned with the local map, and the higher the accuracy of the pose estimation.
[0069] S2.2, General Feature Algorithm:
[0070] For environments with sparse features, general image features such as ORB (Oriented Fast and Rotated Brief) are introduced. A grayscale image is generated by projecting the point cloud onto the virtual camera image plane, followed by extracting ORB features and calculating the BRIEF descriptor. This module effectively enhances feature availability in unstructured environments (such as parks and wilderness).
[0071] Findably, the RANSAC (Random Sample Consensus) algorithm is used for pose estimation, which optimizes the final pose by solving a PnP problem. .
[0072] Using the interior point ratio as an accuracy indicator:
[0073] .
[0074] S2.3, Direct Registration Algorithm:
[0075] Optionally, algorithms such as integrated G-ICP (Generalized Iterative Closest Point) can be used to estimate pose by optimizing the probability distribution matching between point clouds.
[0076] Candidate pose for The matching error is solved iteratively using a general minimization function. for:
[0077] ;
[0078] in, The number of points that were successfully found.
[0079] Its objective function is:
[0080] ;
[0081] in, Let be the transformation matrix to be found. and For corresponding point pairs; It is the covariance matrix; The total number of points in the point cloud frame (compared to the total number of points in the previous point cloud frame). (Same as above). This module has high accuracy but requires a large amount of computation, making it an alternative solution for resource-intensive scenarios.
[0082] Each algorithm in the method pool is encapsulated as an independent module and equipped with a real-time resource monitoring interface, providing a foundation for dynamic selection at the upper layer.
[0083] S3. Calculation of the cost of resource utilization rate:
[0084] The resource monitoring layer tracks system metrics such as CPU utilization and memory utilization in real time. This data is fed into the resource utilization factor cost model to calculate the real-time resource utilization factor cost. The resource utilization factor cost model quantifies the degree of computational resource consumption by different algorithms, and its output is one of the key bases for decision-making in the fusion optimization layer.
[0085] Optionally, the resource utilization factor cost model quantifies the consumption of computational resources into an optimizable cost term, making resource efficiency an explicit optimization objective in pose estimation. This model primarily considers three key indicators: CPU utilization, memory utilization, and cache hit rate.
[0086] S3.1, CPU utilization cost Measuring the processor resource consumption of an algorithm; CPU utilization cost. The calculation formula is:
[0087] ;
[0088] in, The current CPU utilization rate of the algorithm; The maximum allowable occupancy rate set for the system; This is the weighting factor (usually set to 1.0). The cost increases quadratically with occupancy, designed to penalize algorithms with high load.
[0089] S3.2, Memory Usage Cost Evaluate the algorithm's memory resource usage; the cost of memory utilization. The calculation formula is:
[0090] ;
[0091] in, The amount of memory used by the algorithm; Total system memory; This is the weighting factor (usually set to 0.5).
[0092] S3.3, Cache Hit Rate Cost Reflecting algorithm execution efficiency, a low hit rate means more latency; cache hit rate costs. The calculation formula is:
[0093] ;
[0094] in, For cache hit rate; This is the weighting factor (usually set to 0.3).
[0095] S3.4, Total Resource Utilization Rate Factor Cost It is the weighted sum of the above three items:
[0096] ;
[0097] Total resource utilization rate factor cost The smaller the value, the higher the resource efficiency of the algorithm.
[0098] S4, Fusion Optimization Layer (Dynamic Weighted Decision):
[0099] This layer is the core of the hierarchical optimization. It receives pose estimates and accuracy metrics from all algorithm modules, while also obtaining real-time system resource data from the resource monitoring layer. The optimization objective is to minimize the total cost. function:
[0100] ;
[0101] in, It is the optimal pose estimate to be found; This represents the total number of algorithms; in this embodiment, the number of algorithms is selected as 3. It is the first The accuracy weights of each algorithm (the smaller the error, the higher the weight; the accuracy index of each algorithm has a ready-made formula for calculation). It is a balancing factor between accuracy and resource cost. The formula is defined as follows: That is, the balance factor Dynamically adjusted based on system resource status: When system resources are sufficient (total resource utilization is less than a preset percentage). Approaching 1, optimizing biased precision; when resources are scarce, Reducing and optimizing the output focuses more on resource conservation, resulting in the final optimized pose. The biggest cost is the resource utilization rate factor. It represents the minimum cost in terms of resource utilization, and is output by system statistics. The total resource cost is a factor of total resource utilization, and the total resource cost varies with different processing tasks.
[0102] Optional, minimize the cost function The optimal pose is obtained by using classical minimization methods such as the Gauss-Newton method, gradient descent method, or constrained optimization method. , = 2
[0103] Based on different total resource utilization rates, and taking into account different precision indicators (Algorithm 3 has a high accuracy index, so its weight increases as resources become more abundant.) As shown in Table 1, different weights are designed to make the amount of data processed for each frame of point cloud inconsistent. It should be noted that the weights are also the downsampling ratios. For example, for a point cloud map with 100,000 points, if the current total resource utilization rate is 57%, then the three weights would be 0.1, 0.3, and 0.6 respectively. 10,000 points would be uniformly sampled using Algorithm 1 to estimate candidate pose 1, 30,000 points would be uniformly sampled using Algorithm 2 to estimate candidate pose 2, and 60,000 points would be uniformly sampled using Algorithm 3 to estimate candidate pose 3. After obtaining the candidate poses, the total cost is minimized and then fused to obtain the optimal pose.
[0104] Table 1 Total resource utilization rate under different weights
[0105]
[0106] The downsampling method described in Table 1 can reduce the amount of computation. Otherwise, each time 100,000 points of a point cloud map are processed by three different algorithms and then merged and optimized, the amount of data processed each time is the same, and 300,000 points need to be processed each time, which consumes a lot of resources.
[0107] S5. Resource Monitoring and Feedback Adjustment:
[0108] The resource monitoring layer continuously tracks system resource metrics (CPU, memory, and cache). This data is not only used for computation... It is also used for dynamic management of the method pool. For example, when system resources are extremely scarce, the optimization layer can pause the algorithm module with the highest computational cost in the method pool to ensure the real-time performance of the system. This feedback mechanism achieves a dynamic balance between resource consumption and positioning accuracy.
[0109] This embodiment exhibits significant resource adaptability. By introducing a resource occupancy rate factor cost model, resource efficiency is taken as one of the core optimization objectives, enabling the odometer to dynamically adjust its algorithm strategy based on the current system load. It pursues high accuracy when resources are abundant and ensures smooth system operation when resources are limited, effectively avoiding positioning failures caused by computational overload. It is particularly suitable for embedded platforms such as drones and mobile robots.
[0110] This embodiment has strong environmental adaptability and robustness. The method pool design integrates a variety of complementary algorithms. Whether in a feature-rich structured environment or a feature-sparse unstructured environment, the system can always select or fuse the most suitable solution from the method pool, fundamentally solving the problem of a single algorithm being sensitive to environmental changes, and significantly improving the positioning success rate and trajectory accuracy in complex scenarios.
[0111] This embodiment achieves an intelligent balance between accuracy and efficiency, employing a hierarchical optimization architecture and a dynamic weighted decision-making mechanism. It breaks away from the traditional design paradigm of odometers that prioritizes accuracy at the expense of overhead or sacrifices performance for efficiency. By incorporating both accuracy and resources into the optimization framework through mathematical modeling, Pareto optimality is achieved under different constraints, resulting in a more balanced and practical overall system performance.
[0112] This embodiment exhibits excellent scalability. The method pool is an open architecture, allowing new feature extraction or point cloud registration algorithms to be easily integrated into the pool as modules, continuously absorbing new advancements in algorithm research and maintaining technological vitality. Furthermore, the weight parameters of the resource cost model can be configured according to specific platforms, enhancing the method's universality.
[0113] In one specific embodiment, a LiDAR odometry system was deployed on a mobile robot equipped with an Intel i7-12700H processor and 16GB of RAM. The robot was equipped with a Livox Mid-40 solid-state LiDAR and a BMI160 IMU module. The system ran on Ubuntu 22.04 and ROS2 Humble. The system operation flow is as follows:
[0114] Initialization: After startup, the system loads all algorithm modules in the method pool (geometric feature extraction, ORB general feature extraction, G-ICP registration) and initializes the resource monitor.
[0115] Data processing: The Livox radar generates point clouds at a frequency of 10 Hz. Each frame of point cloud is first downsampled by voxel filtering (voxel size is 0.1 m), and then motion distortion is removed using IMU pre-integrated data.
[0116] Parallel computation: The preprocessed point cloud is simultaneously sent to three algorithm modules in the method pool. The geometric feature module extracts line and surface features and performs matching; the general feature module projects the point cloud into a grayscale image and matches it with ORB features; the G-ICP module directly performs point cloud registration. Each module outputs its own pose estimation results. and internal matching error .
[0117] Fusion Optimization: The fusion optimization layer calculates the balance factor based on real-time data reported by the resource monitor (current CPU utilization is 65%, memory utilization is 70%). =0.7 (Resources are slightly strained, but accuracy is still a priority). Then, solve the total cost function. To minimize the total cost function, we obtain the optimal pose estimate. .
[0118] Feedback and Adjustment: During the processing of the next frame, the resource monitor detected that the CPU utilization rate had risen to 85%, and the system automatically adjusted... The value was adjusted to 0.5, with the optimization strategy prioritizing resource conservation. Simultaneously, the computationally most demanding G-ICP module was paused, and only geometric and general feature modules were used for pose estimation to ensure system real-time performance.
[0119] Tests were conducted in a mixed scene comprising corridors (sparse features) and offices (rich features). Results show that, compared to the traditional LOAM method, this embodiment reduces the absolute trajectory error (ATE) by approximately 40% in the corridor region, while reducing the keyframe processing time by an average of 25% in the office region. Throughout the process, the system CPU utilization remained stable below 85%, with no stuttering or crashes observed, demonstrating its excellent resource management capabilities and environmental adaptability. Figure 2 As shown, the comparison between the trajectory estimated by this embodiment and the actual trajectory is presented in the test scenario, demonstrating that it maintains high accuracy in different regions.
[0120] This embodiment addresses the problems of low resource utilization efficiency and poor adaptability of existing laser odometry in complex environments by introducing a method pool mechanism and a resource occupancy factor cost model. The method pool integrates multiple feature extraction and matching algorithms, forming a dynamically callable algorithm resource library; the resource occupancy factor cost model quantifies the impact of different algorithm combinations on computational resource consumption in real time. Through a hierarchical optimization architecture, the system first performs parallel processing of multiple algorithms at the bottom layer to generate candidate pose estimates; at the optimization layer, it performs a weighted evaluation by fusing resource occupancy cost and accuracy indicators to dynamically select the optimal algorithm combination; at the decision layer, it makes global adjustments based on the system resource status. This invention achieves a balance between accuracy and resource efficiency, significantly improving the practicality and stability of odometry on resource-constrained platforms (such as embedded systems and UAVs), while reducing overall power consumption through adaptive optimization.
[0121] Example 2:
[0122] This embodiment provides a lidar odometry optimization system based on resource occupancy cost, including:
[0123] The data acquisition module is configured to acquire raw point cloud data from the LiDAR, as well as CPU utilization, memory utilization, and cache hit rate.
[0124] The candidate pose determination module is configured to: obtain the corresponding candidate pose and feature matching error based on the original point cloud data and the preset geometric feature algorithm, general feature algorithm and direct registration algorithm, respectively;
[0125] The resource utilization factor cost determination module is configured to: obtain the total resource utilization factor cost based on CPU utilization, memory utilization, cache hit rate, and a preset resource utilization factor cost model;
[0126] The pose optimization module is configured to determine the optimal pose estimate based on the cost of candidate poses, feature matching errors, and total resource occupancy, with the goal of minimizing the total cost.
[0127] The working method of the system is the same as the LiDAR odometry optimization method based on resource occupancy cost in Example 1, and will not be repeated here.
[0128] Example 3:
[0129] This embodiment provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the steps of the lidar odometry optimization method based on resource occupancy cost described in Embodiment 1.
[0130] Example 4:
[0131] This embodiment provides an electronic device, including a memory, a processor, and a computer program stored in the memory and capable of running on the processor. When the processor executes the program, it implements the steps of the lidar odometry optimization method based on resource occupancy cost described in Embodiment 1.
[0132] Example 5:
[0133] This embodiment provides a computer program product, which includes a computer program. When the computer program is executed by a processor, it implements the steps of the lidar odometry optimization method based on resource occupancy cost described in Embodiment 1.
[0134] The above description is merely a preferred embodiment of this practice and is not intended to limit the scope of this practice. Various modifications and variations can be made to this practice by those skilled in the art. Any modifications, equivalent substitutions, or improvements made within the spirit and principles of this practice should be included within the protection scope of this practice.
Claims
1. A method for optimizing lidar odometry based on resource occupancy costs, characterized in that, include: Acquire raw point cloud data from the LiDAR, as well as CPU utilization, memory utilization, and cache hit rate; Based on the original point cloud data, as well as the preset geometric feature algorithm, general feature algorithm and direct registration algorithm, the corresponding candidate poses and feature matching errors are obtained respectively. Based on CPU utilization, memory utilization, cache hit rate, and a preset resource utilization factor cost model, the total resource utilization factor cost is obtained. Based on the costs of candidate poses, feature matching errors, and total resource occupancy, the optimal pose estimate is determined with the goal of minimizing the total cost. The total resource utilization cost is equal to the sum of the CPU utilization cost, memory utilization cost, and cache hit rate cost; the CPU utilization cost Memory usage cost And cache hit rate cost They are respectively: ; ; ; in, This represents the current CPU utilization rate. The maximum allowed occupancy rate is set; The amount of memory used; Total memory; For cache hit rate; , and These are the weighting coefficients; Minimize total cost for: ; in, It is the optimal pose estimate to be found; It represents the total number of algorithms; It is the first Precision weights of each algorithm; It is a balancing factor between accuracy and resource cost; This is the cost of the total resource utilization rate.
2. The lidar odometry optimization method based on resource occupancy cost as described in claim 1, characterized in that, The geometric feature algorithm uses LOAM to extract line and surface features for smoothness.
3. The lidar odometry optimization method based on resource occupancy cost as described in claim 2, characterized in that, The smoothness is: ; in, For the first point cloud frame One point; Point cloud frames The norm; For the neighborhood point set; This represents the number of neighboring points.
4. The lidar odometry optimization method based on resource occupancy cost as described in claim 1, characterized in that, The general feature algorithm is designed for feature-sparse environments by introducing ORB general image features; it forms a grayscale image by projecting point clouds onto a virtual camera image plane, and then extracts ORB features.
5. The lidar odometry optimization method based on resource occupancy cost as described in claim 1, characterized in that, The direct registration algorithm employs the generalized iterative nearest point algorithm, which estimates pose by optimizing the probability distribution matching degree between point clouds.
6. The lidar odometry optimization method based on resource occupancy cost as described in claim 5, characterized in that, The objective function of the direct registration algorithm is: ; in, Let be the transformation matrix to be found. and For corresponding point pairs; It is the covariance matrix; This represents the total number of points in the point cloud frame.
7. The lidar odometry optimization method based on resource occupancy cost as described in claim 1, characterized in that, When resources are scarce, optimization is achieved by adjusting the balance factor between accuracy and resource cost. for: ; in, This is a cost factor related to total resource utilization. The biggest cost is the resource utilization rate factor. It represents the minimum cost in terms of resource utilization; when system resources are abundant, Increase and optimize bias accuracy; when resources are scarce, Reduce and optimize resource conservation.
8. A lidar odometry optimization system based on resource occupancy cost, characterized in that, include: The data acquisition module is configured to acquire raw point cloud data from the LiDAR, as well as CPU utilization, memory utilization, and cache hit rate. The candidate pose determination module is configured to: obtain the corresponding candidate pose and feature matching error based on the original point cloud data and the preset geometric feature algorithm, general feature algorithm and direct registration algorithm, respectively; The resource utilization factor cost determination module is configured to: obtain the total resource utilization factor cost based on CPU utilization, memory utilization, cache hit rate, and a preset resource utilization factor cost model; The pose optimization module is configured to determine the optimal pose estimate based on the cost of candidate poses, feature matching errors, and total resource occupancy, with the goal of minimizing the total cost. The total resource utilization cost is equal to the sum of the CPU utilization cost, memory utilization cost, and cache hit rate cost; the CPU utilization cost Memory usage cost And cache hit rate cost They are respectively: ; ; ; in, This represents the current CPU utilization rate. The maximum allowed occupancy rate is set; The amount of memory used; Total memory; For cache hit rate; , and These are the weighting coefficients; Minimize total cost for: ; in, It is the optimal pose estimate to be found; It represents the total number of algorithms; It is the first Precision weights of each algorithm; It is a balancing factor between accuracy and resource cost; This is the cost of the total resource utilization rate.