A dynamic perception path planning method for mobile robots in unknown environments
By dynamically adjusting map update and obstacle avoidance parameters, combining obstacle density and activity calculations, and employing incremental map updates and topology optimization, dynamic candidate points are identified and future trajectory predictions are made. This solves the computational complexity and real-time issues of path planning for mobile robots in unknown dynamic environments, achieving efficient and accurate path planning.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-10-10
- Publication Date
- 2026-04-10
AI Technical Summary
Mobile robots face challenges such as uncertainty in obstacle movement trajectories, limited computing resources, inefficient map updates, and insufficient obstacle modeling accuracy in unknown dynamic environments, resulting in high computational complexity, poor real-time performance, and low accuracy in path planning calculations.
The system calculates environmental complexity based on obstacle density and dynamic obstacle activity, dynamically adjusts map update partition thresholds and obstacle avoidance judgment parameters, adopts incremental map updates and topology optimization, identifies dynamic candidate points through ray casting and scanning point annotation, performs clustering and future trajectory prediction, and combines hierarchical obstacle avoidance strategies and local replanning to achieve adaptive path planning.
It improves the autonomous navigation performance of mobile robots in dynamic environments, reduces computing resource consumption, improves the accuracy and real-time performance of path planning, realizes the transformation from passive response to active prediction, and enhances the system's adaptability and robustness.
Smart Images

Figure CN121028785B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of intelligent mobile robot path planning, in particular to a mobile robot dynamic perception path planning method in unknown environment. BACKGROUND
[0002] With the wide application of intelligent mobile robots in warehouse logistics, disaster rescue, intelligent inspection, unmanned driving and other fields, its autonomous path planning capability has become one of the core technologies. In static environment, there are mature solutions to path planning problems, and common methods include FARPlanner based on visibility graph, skeleton graph, grid graph, A*, D*Lite and other methods.
[0003] However, in practical application, mobile robots still face many challenges in path planning and autonomous navigation. Firstly, the working environment is dynamic, and the motion trajectories of pedestrians, vehicles and handling equipment and other obstacles often have uncertainty. The existing methods are mostly based on the current position of the obstacle for obstacle avoidance, lack of prediction of its future trend, and are prone to frequent re-planning, increasing the risk of collision and reducing the work efficiency. Secondly, limited by computing resources, mobile robots need to process multi-source sensor data while ensuring the real-time of autonomous navigation and control. Traditional global re-planning methods have large computational overhead and high delay, and are difficult to meet the real-time demand in dynamic and complex environment. Thirdly, the map updating mechanism is generally inefficient, and the full update strategy is often used, which causes large memory occupation, increased processing overhead and update lag in large-scale or frequently changing environment, making it difficult to reflect the environmental changes in time. Fourthly, the obstacle modeling precision is insufficient, and the existence of redundant geometric features increases the computational complexity, and may even cause the misjudgment of the passing space, thereby affecting the accuracy and executability of path planning. SUMMARY
[0004] The present application provides a mobile robot dynamic perception path planning method in unknown environment, aiming to improve the autonomous navigation performance of mobile robots in dynamic and complex environment, and realizes hierarchical obstacle avoidance and accurate re-planning based on adaptive map updating and dynamic target prediction according to environmental complexity.
[0005] To achieve the above purpose, the present application provides the following technical scheme:
[0006] A mobile robot dynamic perception path planning method in unknown environment, comprising:
[0007] S100: calculating the environmental complexity based on the obstacle density and the dynamic obstacle activity, and dynamically adjusting the subsequent map updating partition threshold and perception obstacle avoidance judgment parameters according to the environmental complexity;
[0008] S200: divide the perception area into near, middle and far sub-areas based on the mobile robot, implement incremental map updating for each sub-area based on point cloud similarity, and only update the area with similarity lower than the corresponding threshold;
[0009] S300: extract the contour of the obstacle point cloud in the updated area and implement topology optimization, and generate a simplified obstacle representation by merging adjacent contours and removing redundant geometric features;
[0010] S400: based on the simplified obstacle representation, identify dynamic candidate points through ray projection and double labeling of scanning points, and cluster and predict future trajectories for the candidate points;
[0011] S500: collision time prediction according to the predicted trajectory and selection of the corresponding hierarchical obstacle avoidance strategy, and triggering global replanning when the number of local replanning reaches the threshold determined by the environmental complexity.
[0012] As a preferred technical solution of the present application, the calculation of environmental complexity specifically includes:
[0013] Obtain the motion state information of the mobile robot itself and the position and velocity information of the surrounding obstacles;
[0014] Calculate the obstacle density in the local and global ranges respectively;
[0015] Obtain the obstacle density factor by weighted average of local and global obstacle densities;
[0016] Calculate the dynamic activity factor based on the dynamic obstacle velocity and the distance from the mobile robot;
[0017] Combine the obstacle density factor and the dynamic activity factor to obtain the environmental complexity.
[0018] As a preferred technical solution of the present application, the dynamic adjustment of the subsequent map updating partition threshold and the perception obstacle avoidance determination parameter specifically includes:
[0019] Adjust the distance partition threshold of map updating by combining the environmental complexity and the speed of the mobile robot;
[0020] Determine the inflation distance and geometric feature determination standard of contour optimization according to the environmental complexity and the geometric size of the mobile robot;
[0021] Adjust the speed hierarchical determination standard of the obstacle avoidance strategy based on the environmental complexity and the relative motion state of the obstacle;
[0022] Set the trigger condition and execution limit of local replanning according to the environmental complexity.
[0023] As a preferred technical solution of the present application, the incremental map updating specifically comprises:
[0024] Calculate the distance of each point cloud on the map to the mobile robot and the vertical distance to the planned path;
[0025] Divide the point cloud into a near region if the distance to the mobile robot is less than a near distance threshold, a middle region if the distance is between the near distance threshold and a middle distance threshold and the vertical distance to the planned path is less than a lateral distance threshold, and a far region otherwise;
[0026] Calculate the intersection and union of the current time point cloud and the last update time point cloud in each region respectively, and obtain the similarity of each region through the ratio of the intersection and the union;
[0027] Compare the similarity of each region with the corresponding similarity threshold, and mark the region with a similarity lower than the threshold as a region that needs to be updated;
[0028] Divide the region that needs to be updated into front, side and rear three priorities according to the direction of the mobile robot, and perform the point cloud data updating operation on the marked region in turn.
[0029] As a preferred technical solution of the present application, the extraction of the contour and the implementation of the topological optimization specifically comprise:
[0030] Perform a boundary extraction algorithm on the obstacle point cloud in the updated region to obtain an initial contour point set, and dilate each contour outward by a preset dilation distance;
[0031] Iterate through all the dilated contours, detect the contours that intersect with each other, insert virtual vertices after the intersection, and merge them into a single contour;
[0032] Iterate through each vertex of the merged contour, calculate the included angle and the edge length of the adjacent two edges, and mark the vertex as a feature angle for protection if the included angle is less than an acute angle threshold or greater than an obtuse angle threshold and the edge length of the two edges is greater than a feature edge length threshold;
[0033] Remove the vertex that is not protected by the feature angle and whose included angle is less than the acute angle threshold or greater than the obtuse angle threshold, remove the edge whose length is less than a minimum edge length threshold and is not protected by the feature angle, and replace the original two end points with the midpoint of the edge;
[0034] Perform self-intersection detection on the optimized contour, and if there is an intersection, back to the contour before optimization as the final result.
[0035] As a preferred technical solution of the present application, the identification of the dynamic candidate point specifically comprises:
[0036] Project a ray from the position of the mobile robot to the laser radar scanning point, and mark the grid cells passing through the ray path as RAY;
[0037] Mark the grid cell corresponding to the obstacle point scanned by the laser radar as SCAN;
[0038] Detect the grid cell with both RAY mark and SCAN mark, and identify the corresponding obstacle point as a dynamic candidate point.
[0039] As a preferred technical solution of the present application, the clustering of the candidate points and the future trajectory prediction specifically include:
[0040] Based on the neighborhood radius, the dynamic candidate points with similar distances are clustered and the centroid is calculated, and the dynamic obstacle tracking is realized by matching the centroid through the Euclidean distance between consecutive frames;
[0041] A multi-target Kalman filter is used to predict the future trajectory of the tracked dynamic obstacle.
[0042] As a preferred technical solution of the present application, the collision time prediction according to the predicted trajectory and the selection of the corresponding hierarchical obstacle avoidance strategy specifically include:
[0043] The relative motion state between the mobile robot and the dynamic obstacle is calculated to predict the collision time;
[0044] When the predicted collision time is less than the emergency avoidance time threshold, the emergency avoidance strategy is selected, and when the predicted collision time is greater than the emergency avoidance time threshold, the relative speed is selected among the deceleration obstacle avoidance strategy, the waiting obstacle avoidance strategy and the path re-planning obstacle avoidance strategy.
[0045] As a preferred technical solution of the present application, the global re-planning specifically includes:
[0046] Detect the invalid path segment in the current path and record the consecutive execution times of local re-planning and the total execution times in the preset time window;
[0047] When the consecutive execution times or the total execution times exceed the corresponding threshold determined by the environmental complexity, the global re-planning is triggered;
[0048] Otherwise, the start node and the end node of the invalid path segment are determined, the local A* algorithm is executed to generate a repair path segment, the repair path segment is spliced with the original path, and the connection point is subjected to Bezier curve smoothing processing.
[0049] The present application has the following advantages:
[0050] 1. The application constructs an environmental complexity quantification model based on obstacle density factor and dynamic activity factor, and uses it to drive the parameter self-adaptive adjustment of the whole system. This innovative mechanism can calculate and dynamically adjust key parameters such as map update partition threshold, contour optimization inflation distance, obstacle avoidance strategy speed determination standard and re-planning trigger condition according to environmental complexity, realizing the fundamental change from passive response to active pre-adaptation. Compared with the traditional fixed parameter method, the application solves the technical problem that a single parameter configuration cannot adapt to changing environments, and constructs a truly intelligent parameter optimization system.
[0051] 2. The application uses the dynamic obstacle recognition algorithm of ray projection and scanning point double labeling, based on the logical principle that "static obstacles should not exist in the free space of rays", to accurately distinguish static and dynamic targets. On this basis, a collision time prediction model is established, the future collision risk is calculated according to the relative motion state, and a four-level predictive obstacle avoidance strategy of emergency avoidance, speed reduction avoidance, waiting avoidance and path re-planning is constructed. This system realizes the technological leap from passive obstacle avoidance to active prediction, and solves the fundamental defects of traditional methods that cannot accurately identify dynamic targets and lack of forward-looking decision-making.
[0052] 3. The application innovatively proposes a three-level region division incremental update mechanism based on point cloud similarity, realizes selective map update through Jaccard similarity calculation, and constructs a lightweight environment representation with the help of topological optimization feature angle protection and geometric simplification algorithm. At the same time, the application innovatively designs a rapid re-planning algorithm for failed path segment detection and local A* repair, and intelligently triggers global re-planning when the re-planning frequency exceeds the environmental complexity threshold, forming a multi-level and adaptive path repair system. This collaborative architecture fundamentally overturns the inefficient mode of traditional global reconstruction, realizes the precise allocation of computing resources and the overall leap of system performance. BRIEF DESCRIPTION OF DRAWINGS
[0053] The accompanying drawings are included to provide a further understanding of the application, and constitute a part of the specification, together with the embodiments of the application, to explain the application, and do not constitute a limitation on the application. In the drawings:
[0054] Figure 1 is the overall flowchart of the dynamic perception path planning method for mobile robots in unknown environments according to the application;
[0055] Figure 2 is the system overall architecture diagram of the dynamic perception path planning method for mobile robots in unknown environments according to the application;
[0056] Figure 3 is the incremental map update flowchart in the dynamic perception path planning method for mobile robots in unknown environments according to the application;
[0057] Figure 4 This is a flowchart of obstacle contour optimization in a dynamic perception path planning method for mobile robots in an unknown environment according to the present invention.
[0058] Figure 5 This is a comparison image of obstacle contour optimization before and after in the dynamic perception path planning method for mobile robots in unknown environments according to the present invention;
[0059] Figure 6 This is a flowchart of the dynamic obstacle detection process in the dynamic perception path planning method for mobile robots in an unknown environment according to the present invention.
[0060] Figure 7 This is a schematic diagram of the deceleration and avoidance strategy in the dynamic perception path planning method for mobile robots in an unknown environment according to the present invention.
[0061] Figure 8 This is a schematic diagram of the waiting and avoidance strategy in the dynamic perception path planning method for mobile robots in an unknown environment according to the present invention;
[0062] Figure 9 This is a schematic diagram of the path replanning and avoidance strategy in the dynamic perception path planning method for mobile robots in an unknown environment according to the present invention.
[0063] Figure 10 This is a flowchart of the fast replanning algorithm in the dynamic perception path planning method for mobile robots in an unknown environment according to the present invention;
[0064] Figure 11 This is a test comparison chart of the traditional FARPlanner method and the dynamic perception path planning method for mobile robots in unknown environments proposed in this invention. Detailed Implementation
[0065] The preferred embodiments of the present invention will be described below with reference to the accompanying drawings. It should be understood that the preferred embodiments described herein are for illustration and explanation only and are not intended to limit the present invention.
[0066] Example 1: As Figure 1 As shown, the present invention provides a dynamic perception path planning method for a mobile robot in an unknown environment, comprising:
[0067] S100: Calculate the environmental complexity based on obstacle density and dynamic obstacle activity, and dynamically adjust the subsequent map update partition threshold and perception obstacle avoidance judgment parameters according to the environmental complexity.
[0068] Furthermore, the computational environment complexity specifically includes:
[0069] Acquire information about the mobile robot's own motion state and the position and velocity of surrounding obstacles;
[0070] respectively calculate the obstacle density in the local range and the global range;
[0071] obtain the obstacle density factor by weighted average of the local obstacle density and the global obstacle density;
[0072] calculate the dynamic activity factor based on the dynamic obstacle velocity and the distance from the mobile robot;
[0073] combine the obstacle density factor and the dynamic activity factor to obtain the environment complexity.
[0074] Specifically, the position of the mobile robot itself is obtained by sensors , t is time, , are the x-axis, y-axis, z-axis coordinates of the mobile robot respectively, and T represents matrix transpose;
[0075] the velocity of the mobile robot itself , are the x-axis, y-axis, z-axis direction velocities of the mobile robot respectively;
[0076] the acceleration of the mobile robot itself , are the x-axis, y-axis, z-axis direction accelerations of the mobile robot respectively;
[0077] the position of the obstacle , are the x-axis, y-axis, z-axis coordinates of the obstacle respectively;
[0078] the velocity of the obstacle , are the x-axis, y-axis, z-axis direction velocities of the obstacle respectively.
[0079] First, the mobile robot velocity influence factor is calculated:
[0080] ;
[0081] wherein, is the mobile robot velocity influence factor, is the current velocity of the mobile robot, is the velocity influence coefficient, which is preferably 0.2 according to experimental verification.
[0082] Next, the local and global obstacle densities are calculated respectively. With the mobile robot as the center, the environment complexity detection radius R is set to 10 meters. The local obstacle density is the ratio of the number of obstacles within the radius R to the area of the region with detection radius R, and the global obstacle density N (R) : the number of static obstacles within a radius of 2R N (R) : the number of static obstacles within a radius of 2R
[0083] ;
[0084] N (R) : the number of static obstacles within a radius of 2R N (R) : the local static obstacle density N (R) : the number of static obstacles within a radius of 2R N (R) : the global static obstacle density N (R) : the number of static obstacles within a radius of 2R
[0085] The obstacle density factor is calculated based on the local and global static obstacle density, using a weighted average approach, where the local density weight is 0.7, and the expected maximum obstacle density N (R) : the number of static obstacles within a radius of 2R
[0086] ;
[0087] N (R) : the number of static obstacles within a radius of 2R N (R) : the obstacle density factor, reflecting the density of static obstacles in the environment N (R) : the local static obstacle density, the distribution density of obstacles within a radius of R N (R) : the global static obstacle density, the distribution density of obstacles within a radius of 2R N (R) : the expected maximum obstacle density, determined according to the statistical distribution of obstacles in typical application environments.
[0088] The dynamic activity factor is calculated by statistically analyzing the speed information of all dynamic obstacles within a radius of R, and the closer the dynamic obstacle, the greater its contribution to activity:
[0089] ;
[0090] N (R) : the number of static obstacles within a radius of 2R N (R) : the dynamic activity factor, reflecting the activity level of dynamic obstacles in the environment N (R) : the total number of dynamic obstacles within the detection range N (R) : the speed vector of the i-th dynamic obstacle N (R) : the Euclidean distance between the i-th dynamic obstacle and the mobile robot; R: environmental complexity detection radius, set to 10 meters.
[0091] The final environmental complexity is obtained by equal-weight combination of the obstacle density factor and the dynamic activity factor:
[0092] ;
[0093] N (R) : the number of static obstacles within a radius of 2R N (R) : the environmental complexity, comprehensively evaluating the complexity of the environment is an obstacle density factor; is a dynamic activity factor.
[0094] Further, the dynamic adjustment of the subsequent map update partition threshold and the perception obstacle avoidance determination parameter specifically includes:
[0095] combining the environmental complexity and the mobile robot speed to adjust the distance partition threshold of the map update;
[0096] determining the inflation distance of the contour optimization and the geometric feature determination criterion according to the environmental complexity and the geometric size of the mobile robot;
[0097] adjusting the speed classification determination criterion of the obstacle avoidance strategy based on the environmental complexity and the relative motion state of the obstacle;
[0098] setting the trigger condition and the execution number limit of the local re-planning according to the environmental complexity.
[0099] Specifically, based on the calculated environmental complexity , the system adaptively adjusts the key parameters of subsequent modules.
[0100] The basic distance threshold is determined according to the perception ability and the calculation resource limit of the mobile robot. The map update basic near distance is set to a range that can achieve high-frequency update, and the map update basic middle distance is set to an effective range of medium-frequency update, and the path side basic distance threshold is determined based on the motion trajectory width of the mobile robot:
[0101] ;
[0102] wherein, is the adjusted near distance radius threshold; is the map update basic near distance, and the reference value is a range that can achieve high-frequency update; is the adjusted middle distance radius threshold; is the map update basic middle distance, and the reference value is an effective range of medium-frequency update; is the adjusted path side distance threshold; is the path side basic distance threshold, which is determined based on the motion trajectory width of the mobile robot; is a mobile robot speed influence factor.
[0103] The inflation threshold is determined in combination with the physical size and safety requirements of the robot, wherein is the circumscribed circle radius of the mobile robot; C is the environmental complexity; is the minimum safety distance set based on safety standards; is the expansion coefficient, which is determined according to the uncertainty of the obstacle boundary and the accuracy of the sensor, and is preferably 1.1:
[0104] ;
[0105] The limit angle threshold is determined based on the need for geometric shape recognition. Too small acute angle and too large obtuse angle are usually noise or unimportant geometric features. The minimum edge length threshold is determined according to the accuracy of the laser radar and the size of the mobile robot:
[0106] ;
[0107] ;
[0108] ;
[0109] wherein, is the adjusted limit acute angle threshold value for identifying the acute angle that needs to be processed in the contour optimization; is the basic limit acute angle, which is set according to the statistical geometry of typical obstacles; is the adjusted limit obtuse angle threshold value; is the basic limit obtuse angle, which is set according to the statistical geometry of typical obstacles; C is the environmental complexity; is the limit acute angle coefficient, and the preferred value is 1.2; is the limit obtuse angle coefficient, and the preferred value is 0.8; is the adjusted limit minimum edge length threshold value for identifying the limit short edge that needs to be processed in the contour optimization; is the basic limit minimum edge length, which is determined according to the measurement accuracy of the laser radar and the minimum obstacle size that can be effectively perceived by the mobile robot; is the limit minimum edge length coefficient, which is determined according to the adjustment need of the edge length screening strictness according to the environmental complexity, and is preferably 1.1; is the reverse adjustment coefficient. The more complex the environment, the more strict the acute angle threshold.
[0110] The feature edge length threshold is adjusted in combination with the contour vertex angle to ensure that important geometric features are protected:
[0111] ;
[0112] wherein, is the feature edge length threshold; is the basic feature edge length, which is determined according to the typical size of the important geometric features that need to be protected; and the contour vertex angle It is obtained by calculating the angle between two adjacent edges, specifically: the angle between the vector from the previous vertex to the current vertex and the vector from the current vertex to the next vertex; feature protection coefficient. The importance of the feature is determined by the degree to which the angle affects its position; the closer the angle is to a right angle (…). The closer the value is to 0, the less important the feature becomes; a value of 1.2 is preferred. For environmental complexity.
[0113] The basic speed determination threshold is determined based on the mobile robot's mobility and the speed distribution of typical dynamic obstacles. Basic speed determination includes low-speed... The threshold value is set to distinguish between slowly moving and medium-moving obstacles, with high speed being the basic criterion. Set the speed threshold for when local path replanning is required:
[0114] ;
[0115] ;
[0116] ;
[0117] in, The relative speed between the obstacle and the mobile robot; The speed of the mobile robot itself; The speed of the obstacle; To determine the low-speed threshold; To determine the high-speed threshold; Based on the determination of low speed; Based on the determination of high speed; This is the low-speed determination coefficient; The high-speed determination coefficient; For environmental complexity.
[0118] Maximum number of consecutive replanning steps for basic local replanning The determination should be based on the system's computing power and real-time requirements, avoiding the waste of computing resources caused by excessive replanning:
[0119] ;
[0120] ;
[0121] in, The threshold for the maximum number of consecutive local replanning iterations; The maximum number of consecutive replanning iterations based on the system's computing power and real-time requirements is determined. This is the threshold for the maximum number of local replanning iterations. For environmental complexity.
[0122] Through the above parameter adaptive adjustment mechanism, the system can automatically optimize the working parameters of each module according to the dynamic changes of the environment, avoiding the limitations of relying on manual experience parameter adjustment in traditional methods, and significantly improving the adaptability and robustness of the algorithm in different complexity environments.
[0123] S200: dividing the perception area into near, middle and far sub-areas with the mobile robot as the center, and implementing incremental map updating for each sub-area based on point cloud similarity, and only updating the areas with similarity lower than the corresponding threshold;
[0124] Further, the incremental map updating specifically includes:
[0125] calculating the distance of each point cloud on the map to the mobile robot and the vertical distance to the planned path;
[0126] dividing the near area according to the point cloud distance to the mobile robot being less than the near distance threshold, dividing the middle area according to the distance being between the near distance threshold and the middle distance threshold and the vertical distance to the planned path being less than the lateral distance threshold, and dividing the rest as the far area;
[0127] calculating the intersection and union of the current time point cloud and the last update time point cloud of each area respectively, and obtaining the similarity of each area through the ratio of the intersection and the union;
[0128] comparing the similarity of each area with the corresponding similarity threshold, and marking the area with similarity lower than the threshold as the area needing to be updated;
[0129] dividing the area needing to be updated into front, side and rear three priorities according to the direction of the mobile robot, and sequentially performing point cloud data updating operation on the marked area.
[0130] Specifically, the incremental map updating mechanism is adopted to avoid the calculation overhead of traditional global map reconstruction, and only the areas with significant changes are selectively updated, as shown in the flow of Figure 3 .
[0131] First, the current position of the mobile robot is taken as the center, and the perception area is divided into three sub-areas according to the distance threshold dynamically adjusted in S100. First, the Euclidean distance of each point cloud on the map to the mobile robot and the vertical distance to the planned path are calculated:
[0132] ;
[0133] ;
[0134] wherein, is the Euclidean distance of the point cloud to the mobile robot; is the position vector of the point cloud on the map, containing x, y, z coordinates; is the position vector of the mobile robot itself; is the vertical distance from the point cloud to the planned path; is the position of the point cloud on the map; is the position of the mobile robot itself; is the start point of the path segment on the map; is the end point of the path segment on the map; is the vector from point to point ; is the vector from point to point ; is the vector module length from point to point ; is the dot product of two vectors.
[0135] Based on the calculated distance information, the region is divided according to the following conditions:
[0136] Short-distance region selection condition:
[0137] Medium-distance region selection condition:
[0138] Long-distance region selection condition:
[0139] wherein, is the short-distance radius, is the medium-distance radius, is the path-side distance threshold; this division method ensures the focus on the vicinity of the current position of the mobile robot and the surrounding of the planned path.
[0140] The Jaccard similarity between the current time point cloud data and the last update record point cloud data is calculated for each sub-region respectively. The Jaccard similarity is defined by the ratio of the intersection and union of two point cloud sets:
[0141] ;
[0142] wherein A is the current time point cloud data set, B is the last update time recorded point cloud data set; is the Jaccard similarity coefficient.
[0143] Different regions use different similarity thresholds, which are determined based on the difference in distance sensitivity to updates. The near region, which is most directly affected by path planning, uses the highest similarity threshold of 0.8; the middle region uses a moderate similarity threshold of 0.7; and the far region, which has a relatively small impact, uses a lower similarity threshold of 0.5:
[0144] ;
[0145] wherein, is the similarity threshold.
[0146] Compare the Jaccard similarity calculated for each region with the corresponding threshold. Regions with a similarity lower than the threshold are marked as needing to be updated. This determination ensures that only regions that have undergone significant changes will trigger an update operation.
[0147] To further optimize the allocation of computing resources, the system prioritizes the regions that need to be updated based on the moving robot's direction of motion. By calculating the relative angle difference between the target direction and the current orientation :
[0148] ;
[0149] wherein, is the relative angle difference between the target direction and the current orientation; is the y, x coordinate components of the target point; is the y, x components of the robot's current orientation vector; is the absolute angle of the direction from the mobile robot's position to the target point; is the absolute angle of the mobile robot's current orientation vector.
[0150] Based on the angle difference, the regions that need to be updated are divided into three priorities:
[0151] Priority 1 (front region):
[0152] Priority 2 (side region):
[0153] Priority 3 (rear region):
[0154] The system executes the point cloud data update operation on the marked regions in order of priority from high to low, ensuring that the front region is updated first.
[0155] When the system detects that the global path re-planning fails, it will trigger a forced global update mechanism to refresh the entire map. At the same time, the system records the timestamp of the last global update, enabling timed global updates to ensure the overall consistency of the map.
[0156] By the incremental map updating mechanism described above, the system significantly reduces the computational overhead and storage burden while maintaining the accuracy of the map, especially suitable for real-time navigation applications in large-scale dynamic environments. Compared with the traditional global reconstruction method, this method can reduce the calculation time of map updating by more than 60%, while maintaining the timeliness and accuracy of the map information.
[0157] S300: Extracting contours and implementing topological optimization on the obstacle point cloud in the update area, generating a simplified obstacle representation by merging adjacent contours and removing redundant geometric features;
[0158] Further, the contour extraction and topological optimization specifically includes:
[0159] Performing a boundary extraction algorithm on the obstacle point cloud in the update area to obtain an initial contour point set, and expanding each contour outward by a preset inflation distance;
[0160] Traverse all the inflated contours, detect the intersecting contours and insert virtual vertices before merging them into a single contour;
[0161] Traverse each vertex of the merged contour, calculate the included angle and edge length of the adjacent two sides, and mark the vertex as a feature angle if the included angle is less than the acute angle threshold or greater than the obtuse angle threshold and the edge length of the two sides is greater than the feature edge length threshold;
[0162] Remove the vertices that are not protected by the feature angle and have an included angle less than the acute angle threshold or greater than the obtuse angle threshold, and remove the edges that are not protected by the feature angle and have an edge length less than the minimum edge length threshold, and replace the original two end points with the midpoint of the edge;
[0163] Perform self-intersection detection on the optimized contour, and if there is intersection, back to the contour before optimization as the final result.
[0164] Specifically, as shown in Figure 4 Contour extraction and topological structure optimization are performed on the obstacle point cloud in the update area to generate a simplified and accurate obstacle geometric representation, thereby improving the computational efficiency of subsequent path planning.
[0165] First, perform a boundary extraction algorithm on the obstacle point cloud in the update area, and use the convex hull algorithm or Alpha-shapes algorithm to obtain an initial contour point set. To ensure the safe passage of mobile robots, expand each contour outward by the inflation distance calculated in S100 :
[0166] ;
[0167] Where, is the position of the inflated contour point; is the original contour point; is the outward normal vector of the contour at the point; is the inflation distance. The inflation operation ensures that the mobile robot maintains a sufficient safety distance from the obstacles.
[0168] All the inflated contours are traversed to detect contour pairs that intersect each other or have a distance less than the safety passing width. Contour intersection detection is achieved by computing the intersection relationship of contour boundary line segments, and each line segment intersection is judged by the line segment intersection algorithm. When a contour intersection is detected, a virtual vertex is inserted at the intersection point, and then the intersecting contour points are combined into a single continuous contour, while the original separate contours are removed. This process ensures that adjacent obstacles are correctly identified as a continuous area that cannot be passed through.
[0169] Before contour simplification, the system first identifies and protects important geometric feature angles. Traverse each vertex of the merged contour, and calculate the included angle and edge length of the adjacent two edges:
[0170]
[0171] wherein, is the vector from the previous vertex to the current vertex in the contour; is the vector from the current vertex to the next vertex in the contour; is the position vector of the previous vertex; is the position vector of the current vertex; is the position vector of the next vertex; is the cosine value of the angle corresponding to the current vertex; is the edge length from the previous vertex to the current vertex; is the edge length from the current vertex to the next vertex.
[0172] The judgment condition for feature angle protection is:
[0173]
[0174] wherein, is the cosine value of the limit acute angle threshold; is the cosine value of the limit obtuse angle threshold; is the feature edge length threshold; and are the limit acute angle and limit obtuse angle thresholds calculated in S100, respectively; is the edge length from the current vertex to the next vertex; the vertex that meets the condition is marked as a feature angle and is protected in the subsequent optimization process;
[0175] Traverse each contour, remove the limit sharp angle and limit obtuse angle in its contour without feature protection, while removing the vertex, it will be determined in advance whether the contour contains 3 and above vertex number, if the contour vertex number is 3, it will exit optimization in time to prevent the disappearance of the contour, the angle optimization judgment is as follows:
[0176] ;
[0177] Wherein, is the cosine value of the angle corresponding to the current vertex; is the limit sharp angle threshold; is the limit obtuse angle threshold. The vertex that meets the condition and is not protected will be removed, so as to eliminate unreasonable sharp angle and obtuse angle.
[0178] Traverse each contour, remove the limit sharp angle and limit obtuse angle in its contour without feature protection, if the limit short edge is found, the midpoint will be extracted as a new vertex and the two endpoints corresponding to the edge will be removed. At the same time, when removing the edge, it will be determined in advance whether the contour contains 3 and above vertex number, if the contour vertex number is 3, it will exit optimization in time to prevent the disappearance of the contour, the limit short edge elimination judgment is as follows:
[0179] ;
[0180] Wherein, is the edge length from the last vertex to the current vertex; limit minimum edge length threshold.
[0181] When performing vertex removal and edge merging operation, the system continuously monitors the number of vertices of the contour. When the number of vertices of the contour is reduced to 3, the optimization operation is immediately stopped to prevent the complete disappearance of the contour structure and ensure that the basic geometric shape of the obstacle is retained.
[0182] After optimization, the system performs self-intersection detection on the generated contour. Two-dimensional cross product method is used to detect whether any two edges in the contour intersect:
[0183] ;
[0184] Wherein, is the starting point; is the end point; is the third point to be judged.
[0185] Self-intersection judgment is as follows:
[0186] ;
[0187] Wherein, , are the starting point and end point of one line segment; , is the starting point and the ending point of another line segment.
[0188] When the self-intersection of the contour is detected, it is determined that the optimization fails, and the system reverts to the contour before optimization as the final result to ensure the correctness of the geometric representation.
[0189] Through the above topological optimization process, the system can convert the original dense obstacle point cloud into a structured simplified contour representation. As shown in Figure 5 the number of optimized contour vertices is greatly reduced, significantly improving the computational efficiency of the path search algorithm, while maintaining the key geometric features of the obstacle boundary, ensuring the safety and feasibility of the path planning result.
[0190] S400: Based on the simplified obstacle representation, identify dynamic candidate points through ray projection and double labeling of scan points, and cluster and predict future trajectories of the candidate points;
[0191] Further, the identification of dynamic candidate points specifically includes:
[0192] Project a ray from the mobile robot position to the laser radar scan point, and mark the grid cells passed on the ray path as RAY;
[0193] Mark the grid cells corresponding to the obstacle points scanned by the laser radar as SCAN;
[0194] Detect the grid cells with both RAY and SCAN labels, and identify the corresponding obstacle points as dynamic candidate points.
[0195] Further, the clustering and future trajectory prediction of the candidate points specifically includes:
[0196] Based on the neighborhood radius, cluster the dynamic candidate points with similar distances and calculate the centroid, and through the Euclidean distance matching of the centroid between consecutive frames, realize dynamic obstacle tracking;
[0197] A multi-target Kalman filter is used to predict the future trajectory of the tracked dynamic obstacle.
[0198] Specifically, as Figure 6As shown, first the system uses a grid representation of the environment and marks different types of cells by bit operations. Specifically, rays are cast from the mobile robot position to the laser scan points, and the grid cells that the rays pass through are marked as RAY (representing free space); at the same time, the grid cells that correspond to the obstacle points scanned by the laser are marked as SCAN (representing obstacle space). The system identifies the corresponding obstacle points as dynamic candidates by detecting grid cells that have both RAY and SCAN marks, and this dual marking mechanism effectively distinguishes static and dynamic obstacles. The principle of this dual marking mechanism is that static obstacles should not appear in the free space of the ray path, and the cells that have both RAY and SCAN marks indicate that the obstacle at this location has motion characteristics, and is thus identified as a dynamic candidate point.
[0199] After finding the dynamic obstacle point cloud, points that are close enough are aggregated together by Euclidean clustering segmentation. At the same time, by creating a KD tree search structure, multi-dimensional space search is quickly performed, improving the efficiency of point cloud search.
[0200] The neighborhood is defined as follows: wherein is the neighborhood radius, preferably is set to 0.4 meters; is the set of all dynamic points; is the set of all points whose distance is not more than ; is the point within the neighborhood; is the center point.
[0201] The centroid of the dynamic obstacle is calculated by calculating the average of the coordinates of all points in the cluster:
[0202] ;
[0203] wherein is the centroid vector, is the number of points in the cluster, is the i-th point in the cluster. The centroid calculation provides key information for the subsequent dynamic obstacle detection and tracking module.
[0204] Between consecutive frames, nearest neighbor data association is used with the Euclidean distance as the matching cost, and when the distance between the centroids of two consecutive frames is less than a threshold, it is judged as the same target, and a robust update is combined with the continuous detection count, thereby realizing stable locking of the dynamic obstacle.
[0205] The dynamic obstacle is input into a multi-target Kalman filter to predict its running trajectory. The system uses a 9-dimensional state vector containing position, velocity and acceleration information. For the 9-dimensional state vector at time instant t; x, y, z axis position coordinates; x, y, z axis velocity components; x, y, z axis acceleration components.
[0206] The state prediction is calculated as follows:
[0207]
[0208]
[0209] where, is the predicted value at time instant t; is the optimal estimate at time instant t-1; is the sensor obtained input at time instant t; B is the control matrix; F is the state matrix; is the covariance matrix of the current predicted value; is the covariance matrix of the optimal estimate at time instant t-1; where the state matrix F is constructed based on the kinematic model:
[0210]
[0211] Process noise covariance where the process noise standard deviation is determined based on the uncertainty of the dynamic obstacle motion.
[0212] The Kalman filter update calculation includes:
[0213]
[0214] where, is the information covariance at time instant t; is the measurement matrix, the measurement matrix is set according to the measurement characteristics of the lidar; is the Kalman gain at time instant t; is the covariance matrix of the optimal estimate at time instant t; is the optimal estimate at time instant t; R is the observation noise covariance matrix; is the observation noise standard deviation; is the measurement value of the sensor input at time instant t; is the predicted value at time instant t; is the covariance matrix of the current predicted value.
[0215] The state update calculation realizes the trajectory prediction:
[0216]
[0217] in, for The position vector at time , For the predicted data interval, for The subsequent position prediction vector, for The data vector at each moment, t is The subsequent velocity prediction vector, for The acceleration vector at any given time. The system can predict the trajectory of dynamic obstacles within a future time window, providing forward-looking information for collision detection and obstacle avoidance strategy selection.
[0218] S500: Based on the predicted trajectory, it predicts the collision time and selects the corresponding graded obstacle avoidance strategy. When the number of local replanning attempts reaches a threshold determined by the environmental complexity, it triggers global replanning.
[0219] Furthermore, the step of predicting collision time based on the predicted trajectory and selecting an appropriate graded obstacle avoidance strategy specifically includes:
[0220] Calculate the estimated collision time based on the relative motion state of the mobile robot and dynamic obstacles;
[0221] When the estimated collision time is less than the emergency avoidance time threshold, the emergency avoidance strategy is selected. When the estimated collision time is greater than the emergency avoidance time threshold, the obstacle avoidance strategy is selected from deceleration, waiting, and path replanning based on the relative speed.
[0222] Specifically, the system calculates the relative motion state of the future trajectory of the dynamic obstacle and the motion trajectory of the mobile robot to predict the collision time.
[0223] The expression for the relative motion state is as follows:
[0224] ;
[0225] in for The relative position of dynamic obstacles to the mobile robot in real time. for The relative speed between dynamic obstacles and the moving robot at all times. for The relative acceleration between the dynamic obstacle and the moving robot at any given moment. For mobile robots Location data at any given time For dynamic obstacles Location data at any given time For mobile robots speed data at time t, is a dynamic obstacle speed data at time t, is a dynamic obstacle acceleration data at time t.
[0226] The collision determination is achieved by solving the following equation:
[0227] ;
[0228] When , it is determined that a collision will occur, where is the collision safety distance, determined according to the geometric size of the mobile robot and the safety margin.
[0229] The collision detection function is:
[0230] ;
[0231] where, is the collision detection function, a quartic polynomial; is the square of the relative acceleration vector length; is the dot product of the relative acceleration and the relative velocity; is the square of the relative velocity vector length; is the dot product of the relative acceleration and the relative position; is the dot product of the relative position and the relative velocity; is the square of the relative position vector length; is the collision safety distance threshold.
[0232] If has a positive solution, it indicates that the mobile robot will collide with the dynamic obstacle at , where is the minimum positive solution of , i.e., the predicted collision time.
[0233] According to the results of collision detection, the system selects the corresponding avoidance strategy, mainly including the emergency avoidance strategy and the ordinary avoidance strategy.
[0234] When the predicted collision time is less than the time threshold, the emergency avoidance strategy is selected, and the avoidance logic of the strategy is to ignore the target point direction and only select the path to avoid the obstacle. When is greater than the time threshold, the ordinary avoidance strategy is selected. The ordinary avoidance strategy is divided into three strategies according to the relative speed of the obstacle and the mobile robot:
[0235] Speed reduction obstacle avoidance strategy: such as Figure 7As shown, when the relative speed is less than the low-speed threshold, When the obstacle avoidance strategy is selected, the avoidance logic of the strategy is to add a deceleration zone between the predicted position of the obstacle and the mobile robot. When the mobile robot runs into the zone, it will decelerate.
[0236] Waiting obstacle avoidance strategy: such as Figure 8 As shown, when the relative speed is at the low-speed threshold... With the determination of high speed threshold When the obstacle avoidance strategy is selected, the avoidance logic is to add a waiting point between the predicted obstacle position and the mobile robot. When the mobile robot reaches this point, it will stop moving and wait. ;
[0237] Path replanning obstacle avoidance strategies: such as Figure 9 As shown, when the relative speed is greater than the high-speed threshold... When choosing a path replanning obstacle avoidance strategy, the avoidance logic of the strategy is to set virtual obstacles on the path based on the prediction of the dynamic obstacle trajectory and perform local A* replanning to bypass the dynamic obstacles.
[0238] The speed determination threshold is dynamically adjusted based on the environmental complexity in S100:
[0239] ;
[0240] ;
[0241] in Based on determining low speed, Based on determining high speed, This is the low-speed determination coefficient. This is the high-speed determination coefficient. For environmental complexity.
[0242] Furthermore, the global replanning specifically includes:
[0243] Detect failed path segments in the current path and record the number of consecutive executions of local replanning and the total number of executions within a preset time window;
[0244] A global replanning is triggered when the number of consecutive executions or the total number of executions exceeds the corresponding threshold determined by the environment complexity.
[0245] Otherwise, determine the start and end nodes of the failed path segment, execute the local A* algorithm to generate a repair path segment, concatenate the repair path segment with the original path, and perform Bézier curve smoothing on the connection points.
[0246] Specifically, the system detects the failed path segment in the current path, and records the number of consecutive local re-planning and the total number of execution within the preset time window. The failure detection is carried out from three aspects: whether it conflicts with the trajectory of dynamic obstacles, whether the path is blocked by static obstacles, and whether the start and end points of the path segment are connected and reachable.
[0247] The trigger condition of global re-planning is based on the threshold value determined according to the environmental complexity: when the number of local consecutive re-planning is greater than the maximum number of local consecutive re-planning threshold or in a short time The number of local re-planning is greater than the maximum number of local re-planning threshold , it is considered that the local fast path re-planning mechanism has fallen into a dead loop, and global path re-planning is forced to be carried out.
[0248] The threshold value is dynamically adjusted according to the environmental complexity, which is the same as the S100 step:
[0249] ;
[0250] ;
[0251] Wherein is the maximum number of local consecutive re-planning threshold, is the basic maximum number of local consecutive re-planning, is the maximum number of local re-planning threshold, is the environmental complexity.
[0252] If the requirement for forced global path re-planning is not reached, the local fast path re-planning mechanism is entered, as shown in Figure 10 . First, determine the start and end nodes of the failed segment, and search the cache path set for whether there is a path that meets the conditions. If there is no path in the cache that meets the conditions, local A* re-planning is carried out to generate a new local path.
[0253] The local A* re-planning decision formula is as follows:
[0254] ;
[0255] Wherein, is the comprehensive priority of the th node; is the th node; is the start point of the failed path; is the end point of the failed path; is the node index.
[0256] For the newly generated path segment sequence , the prefix path sequence and suffix path sequence sequentially spliced to form a new path sequence , and the connection point is smoothed. If the connection point mutation occurs, the connection point is smoothed to form a complete new path, and the smoothing expression is as follows:
[0257] ;
[0258] wherein, is the direction vector of the path segment before the connection point, is the direction vector of the path segment after the path point, is the connection point, is the prefix point of the connection point, is the suffix point of the connection point, is the included angle between the two direction vectors.
[0259] If the detected is greater than , it is considered that the connection point is unbalanced and needs to be smoothed. The Bezier control point is calculated based on the adjacent four path points of the connection point, the cubic Bezier module is entered, the smooth curve is generated, and the original line segment is replaced. The angle threshold is selected based on the kinematic constraints of the mobile robot and the smoothness requirements of the path execution, to ensure that the generated path has good continuity and executability.
[0260] Through the above steps, the system not only realizes the path generation based on the geometric shortest distance, but also realizes the "prospective" path obstacle avoidance strategy by fusing the dynamic target behavior prediction. Moreover, the system can realize the rapid replacement and structure repair of the local fault segment of the path without relying on full graph re-planning, greatly shortens the response delay of the navigation system, and improves the automated response capability in emergency.
[0261] Example 2
[0262] In order to verify the effect of the application in practical application, a simulation scene of warehouse logistics environment is constructed for testing. The environment includes static shelf obstacles and multiple dynamic forklift vehicles, and the mobile robot needs to navigate from the starting point to the target point to complete the goods distribution task.
[0263] The test environment is a warehouse area of 20m x 15m, including 15 static shelf obstacles and 3 dynamic forklift vehicles. The mobile robot is configured with a radius of 0.6m, a safety margin of 0.1m, a laser radar scanning frequency of 10Hz, and a detection range of 15m.
[0264] When the mobile robot enters the dense shelf area, the system detects that the local obstacle density , and the global obstacle density , dynamic obstacle activity factor , calculate the environment complexity . The system automatically adjusts parameters according to this complexity: the map update near radius is adjusted from the base value of 2m to 2.6m, the inflation threshold of contour optimization is adjusted from 0.77m to 0.88m, and the dynamic obstacle low speed determination threshold is adjusted from 0.5m / s to 0.36m / s. This adaptive adjustment improves the perception sensitivity and safety margin of the system in complex environments.
[0265] During navigation, when a forklift suddenly enters 3m in front of the mobile robot, the incremental update mechanism of the invention only updates the near area with a priority of 1 in front, and the update area is only . Through Jaccard similarity calculation, the similarity of this area decreases from 0.95 to 0.72, which is lower than the near area threshold 0.8, triggering local update.
[0266] The original point cloud data has a large number of redundant vertices at the corner of the shelf, and the contour optimization module first performs inflation and merging, merging adjacent contours with a distance less than 0.88m into a single area. Then feature angle protection is performed, identifying 8 important corner feature points. In the angle optimization stage, acute angle vertices less than 30° and obtuse angle vertices greater than 150° are removed. In the edge length optimization stage, extremely short edges with a length less than 0.055m are removed, and finally a simplified obstacle contour representation is generated.
[0267] When a forklift with a speed of 1.8m / s is detected moving towards the mobile robot, the ray projection algorithm successfully identifies the dynamic target, and the Euclidean clustering aggregates the related point cloud and calculates the centroid coordinates. The multi-target Kalman filter predicts the movement trajectory of the forklift in the next 2.5 seconds, and the collision detection calculation shows that the predicted collision time seconds. Since is greater than the emergency avoidance threshold of 1.5 seconds, and the relative speed of 2.1m / s is greater than the high speed determination threshold of 1.44m / s, the system selects the path re-planning obstacle avoidance strategy, sets a virtual obstacle on the predicted trajectory, and generates a detour path through local A* algorithm, successfully avoiding the dynamic obstacle.
[0268] During navigation, when the original planned path is blocked by a newly appeared temporary obstacle, the failure detection module quickly identifies a failure path segment with a length of 3.2m. The system uses a local rapid re-planning mechanism to construct a local navigation subgraph between the start and end points of the failure segment, and generates an alternative path segment through the local A* algorithm. After splicing the new path segment with the original path, the angle mutation detection at the connection point finds that the included angle is greater than the threshold of 60°, triggering the Bezier curve smoothing process to ensure the continuity and executability of the path.
[0269] The method of the application is compared with the traditional FARPlanner method in the same environment, and the traditional FARPlanner method adopts global map reconstruction, static obstacle modeling and obstacle avoidance strategy based on the current position. The comparison results are as follows:
[0270] Table Comparison table of test effect
[0271]
[0272] As Figure 11 shown in the comparison test results, the traditional FARPlanner method (left path in the figure) adopts global re-planning strategy when encountering dynamic obstacles, resulting in frequent path changes and large calculation delay; and the enhanced path planning algorithm of the application (right path in the figure) sets virtual obstacles at the predicted position of dynamic obstacles through local rapid re-planning mechanism, realizing more smooth and efficient path adjustment. As can be obviously observed in the figure, the path generated by the method of the application is smoother, the obstacle avoidance response is more timely, and the overall navigation efficiency is significantly improved.
[0273] The test results show that the application effectively avoids the problem of path misentry into narrow channels that is prone to occur in the traditional method, significantly reduces the probability of frequent triggering of path re-planning due to interference of dynamic obstacles, ensures the rationality and robustness of the path, and realizes overall optimization of calculation efficiency and resource utilization, which has significant engineering application value.
[0274] Finally, it should be noted that: the above only describes the preferred embodiments of the application and is not used to limit the application, although the application has been described in detail with reference to the foregoing embodiments, those skilled in the art can still modify the technical solutions recorded in the foregoing embodiments, or make equivalent replacement for part of the technical features. Any modification, equivalent replacement, improvement, etc. within the spirit and principles of the application shall be included in the protection scope of the application.
Claims
1. A dynamic perception path planning method for a mobile robot in an unknown environment, characterized in that, The method comprises the following steps: S100: calculating the environment complexity based on the obstacle density and the dynamic obstacle activity, and dynamically adjusting the subsequent map update partition threshold and the perception obstacle avoidance determination parameter according to the environment complexity; S200: dividing the perception area into near, middle and far sub-areas with the mobile robot as the center, and performing incremental map updating on each sub-area based on the point cloud similarity, and only updating the area with a similarity lower than the corresponding threshold; S300: extracting the contour of the obstacle point cloud in the updated area and performing topological optimization, and generating a simplified obstacle representation by merging adjacent contours and removing redundant geometric features; S400: identifying dynamic candidate points by ray projection and double labeling of scanning points based on the simplified obstacle representation, and clustering and predicting future trajectories of the candidate points; S500: predicting the collision time according to the predicted trajectory and selecting the corresponding hierarchical obstacle avoidance strategy, and triggering global replanning when the number of local replanning reaches the threshold determined by the environment complexity; The incremental map updating specifically comprises: calculating the distance of each point cloud on the map to the mobile robot and the vertical distance to the planned path; dividing the point cloud into near, middle and far areas according to the distance to the mobile robot, the distance between the near distance threshold and the middle distance threshold, and the vertical distance to the planned path less than the lateral distance threshold; calculating the intersection and union of the current time point cloud and the last update time point cloud of each area respectively, and obtaining the similarity of each area through the ratio of the intersection and the union; comparing the similarity of each area with the corresponding similarity threshold, and marking the area with a similarity lower than the threshold as an area that needs to be updated; dividing the area that needs to be updated into front, side and rear three priorities according to the direction of the mobile robot, and sequentially performing point cloud data updating operation on the marked area; The extraction of the contour and the topological optimization specifically comprises: performing a boundary extraction algorithm on the obstacle point cloud in the updated area to obtain an initial contour point set, and expanding each contour outward by a preset inflation distance; traversing all the inflated contours, detecting the intersecting contours and merging them into a single contour after inserting virtual vertices; traversing each vertex of the merged contour, calculating the included angle and edge length of the adjacent two edges, and marking the vertex as a feature angle for protection if the included angle is less than the acute angle threshold or greater than the obtuse angle threshold and the edge length of the two edges is greater than the feature edge length threshold; removing the vertices not protected by the feature angle and having an included angle less than the acute angle threshold or greater than the obtuse angle threshold, and removing the edges not protected by the feature angle and having an edge length less than the minimum edge length threshold, and replacing the original two end points with the midpoint of the edge; performing self-intersection detection on the optimized contour, and returning to the contour before optimization as the final result if there is intersection; The identification of dynamic candidate points specifically comprises: projecting a ray from the mobile robot position to the laser radar scanning point, and marking the grid cells passing through the ray path as RAY; marking the grid cells corresponding to the obstacle points scanned by the laser radar as SCAN; detecting the grid cells with both RAY and SCAN marks, and identifying the corresponding obstacle points as dynamic candidate points.
2. The dynamic perception path planning method for mobile robots in unknown environments according to claim 1, wherein, The calculation of the environment complexity specifically comprises: Obtain the motion state information of the mobile robot and the position and velocity information of the surrounding obstacles; Calculate the local obstacle density and the global obstacle density respectively; Obtain the obstacle density factor by weighted average of the local obstacle density and the global obstacle density; Calculate the dynamic activity factor based on the dynamic obstacle velocity and the distance from the mobile robot; Combine the obstacle density factor and the dynamic activity factor to obtain the environment complexity.
3. The method of claim 1, wherein, The dynamic adjustment of the subsequent map update partition threshold and the perception obstacle avoidance determination parameter specifically includes: Adjust the distance partition threshold of the map update by combining the environment complexity and the speed of the mobile robot; Determine the inflation distance of the contour optimization and the geometric feature determination standard according to the environment complexity and the geometric size of the mobile robot; Adjust the speed classification determination standard of the obstacle avoidance strategy based on the environment complexity and the relative motion state of the obstacle; Set the trigger condition and the execution limit of the local re-planning according to the environment complexity.
4. The method of claim 1, wherein, The clustering of the candidate points and the future trajectory prediction specifically include: Cluster the dynamic candidate points with similar distances based on the neighborhood radius, calculate the centroid, and match the centroid by Euclidean distance between consecutive frames to realize dynamic obstacle tracking; Use a multi-target Kalman filter to predict the future trajectory of the tracked dynamic obstacle.
5. The method of claim 1, wherein, The collision time prediction and the selection of the corresponding hierarchical obstacle avoidance strategy based on the predicted trajectory specifically include: Calculate the predicted collision time based on the relative motion state of the mobile robot and the dynamic obstacle; When the predicted collision time is less than the emergency avoidance time threshold, select the emergency avoidance strategy; when the predicted collision time is greater than the emergency avoidance time threshold, select among the deceleration avoidance strategy, the waiting avoidance strategy and the path re-planning avoidance strategy according to the relative velocity.
6. The method of claim 1, wherein, The global re-planning specifically includes: Detect the failed path segment in the current path and record the continuous execution times of the local re-planning and the total execution times in the preset time window; Trigger the global re-planning when the continuous execution times or the total execution times exceed the corresponding threshold determined by the environment complexity; Otherwise, determine the start node and the end node of the failed path segment, execute the local A* algorithm to generate the repair path segment, splice the repair path segment with the original path and perform the Bezier curve smoothing processing on the connection point.
Citation Information
Patent Citations
Robot path planning method and device, terminal equipment and storage medium
CN111813101A
Dynamic object removing method based on light projection method and related device
CN117607897A
Path planning method and system for mobile robot
CN120538487A