Mobile robot autonomous navigation method based on pedestrian trajectory prediction obstacle avoidance

By fusing multimodal perception data and using an LSTM+GAN trajectory prediction network, combined with 3D LiDAR and camera data, the robot achieves efficient obstacle avoidance in complex dynamic environments, solving the problems of low navigation efficiency and poor accuracy in existing technologies, and enhancing the robot's adaptability and flexibility.

CN120996307APending Publication Date: 2025-11-21CHINA YANGTZE POWER
View PDF 0 Cites 3 Cited by

Patent Information

Application Number
CN202511003529.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-07-21
Publication Date
2025-11-21

AI Technical Summary

Technical Problem

Existing autonomous navigation methods for robots are inefficient and inaccurate in complex and dynamic environments, making it difficult to achieve efficient obstacle avoidance. This is especially true in environments such as logistics and warehousing, where the presence of pedestrians and dynamic obstacles poses a greater challenge to robot navigation.

Method used

By fusing multimodal perception data, a progressive trajectory prediction network is constructed using LSTM and GAN to generate short-term dynamic features and diverse endpoints. Combined with knowledge distillation, a complete trajectory is generated, and a hierarchical navigation strategy is designed. By combining 3D LiDAR and camera data, accurate prediction and efficient obstacle avoidance of dynamic obstacles are achieved.

Benefits of technology

It significantly improves the robot's obstacle avoidance ability and navigation efficiency in complex environments, reduces unnecessary detours and waiting, and enhances its adaptability and flexibility in scenarios such as logistics and warehousing.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120996307A_ABST
    Figure CN120996307A_ABST
Patent Text Reader

Abstract

The invention provides a mobile robot autonomous navigation method based on pedestrian trajectory prediction obstacle avoidance, which comprises the following steps: firstly, initializing a robot H, and acquiring 3D laser radar information, camera information, local map data and pose information of the robot H; secondly, according to the position information of the robot H, the multi-modal fusion information and the local map data, the dynamic obstacle state and the static obstacle position are obtained, the types of obstacles are distinguished, and passable areas are divided; next, a prediction trajectory is generated by using a progressive learning trajectory prediction network of LSTM + GAN, sub-target points are generated in a passable area in combination with an RRT algorithm, an optimal sub-target point is selected through an evaluation function, and global path planning is performed by using BIRRT; and finally, inputting the predicted trajectory into a DWA algorithm to realize local path planning and real-time obstacle avoidance of the robot. The obstacle avoidance capability and navigation efficiency of the robot are remarkably improved, the detouring distance and time are reduced, and the adaptability and flexibility of the robot in logistics storage and other scenes are enhanced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of mobile robot navigation in dynamic and complex environments, and specifically to a robot autonomous navigation method based on pedestrian trajectory prediction and obstacle avoidance. Background Technology

[0002] With the rapid development of robotics technology, autonomous robot navigation has been widely applied in logistics warehousing, service robots, and other fields. However, existing autonomous robot navigation methods often struggle to achieve efficient and accurate navigation in complex dynamic environments. This is especially true in logistics warehousing environments, where the presence of pedestrians and dynamic obstacles poses a greater challenge to robot navigation. Existing mobile robot obstacle avoidance algorithms (such as dynamic window methods and artificial potential field methods) perform well in static obstacle scenarios, but are prone to getting trapped in local optima or exhibiting low obstacle avoidance efficiency in dynamic environments. Traditional methods typically rely solely on the current obstacle position information, lacking the ability to predict the future movement trends of dynamic obstacles such as pedestrians. Furthermore, insufficient multimodal perception data fusion and poor coordination between global planning and local obstacle avoidance also limit the robot's adaptability in complex scenarios. In some cases, robots cannot traverse certain obstacles, forcing them to detour, which further increases the complexity and difficulty of navigation. Summary of the Invention

[0003] The purpose of this invention is to provide a robot autonomous navigation method based on pedestrian trajectory prediction and obstacle avoidance, addressing the problems of low navigation efficiency and poor accuracy of robots in complex dynamic environments in existing technologies. This invention extracts dynamic obstacle features through multimodal perception data fusion, constructs a progressive trajectory prediction network using LSTM and GAN, generates short-term dynamic features and diverse endpoints, and finally combines knowledge distillation to generate a complete trajectory. Simultaneously, based on a hierarchical navigation strategy, the predicted trajectory is input into an improved DWA algorithm, fusing 3D LiDAR and camera data to propose a progressive trajectory prediction framework. A hierarchical navigation strategy and a method for determining traversable obstacles are designed, achieving accurate prediction and efficient obstacle avoidance of dynamic obstacles, improving navigation efficiency, and enabling real-time obstacle avoidance in dynamic environments. Furthermore, the designed method for determining traversable obstacles reduces unnecessary detours and waiting times for the robot, saving time and energy, and improving its adaptability and flexibility in complex environments.

[0004] To achieve the above-mentioned technical features, the objective of this invention is as follows: A mobile robot autonomous navigation method based on pedestrian trajectory prediction and obstacle avoidance, comprising the following steps:

[0005] S1: Initialize robot H, and acquire its own 3D LiDAR information, camera information, local map data and pose information;

[0006] S2: Obtain the dynamic obstacle status and static obstacle location through the robot H's position information, multimodal fusion information and local map data, distinguish obstacle categories, and delineate passable areas;

[0007] S3: Use an LSTM+GAN progressively learned trajectory prediction network to generate predicted trajectories;

[0008] S4: Use RRT to generate sub-target points in the passable area, combine the sub-target point evaluation function to select the optimal sub-target point, and use BIRRT to perform global path planning between the robot's current position and the sub-target point;

[0009] S5: Input the predicted trajectory into the DWA algorithm to perform local path planning for the robot and achieve real-time obstacle avoidance;

[0010] S6: After robot H successfully navigates to the sub-target point, it continues with step S2 to select and navigate the sub-target point, repeating the autonomous navigation algorithm from S3 to S5 until the target point is reached.

[0011] Preferably, in step S1, the X coordinate of the global coordinate system global The axis points due east, Y global The axis points due north, Z global The axis is perpendicular to the ground and points upwards. The coordinates of any point P are represented as (x...). global ,y global ,z global ); X of the robot coordinate system robot The axis points in the direction the robot is moving, Y. robot The axis points to the left side of the robot, Z. robot The axis is perpendicular to the vehicle body and points upwards; the coordinates of any point P are represented as (x...). robot ,y robot ,z robot );

[0012] The robot H adopts a four-wheel differential drive structure. The origin of the vehicle coordinate system is located at the geometric center, and the inertial coordinate system is the global coordinate system. Its pose information includes the position coordinate information S = (x... start ,y start ) and the robot H's forward direction X robot With global coordinate system X global The included angle information θ.

[0013] Preferably, the pose vector of the robot H is:

[0014]

[0015] The coordinates of the target point G in the global coordinate system are G = (x goal ,y goalThe relative distance between the target point G and the robot's initial position:

[0016]

[0017] The relative angle of target point G with respect to the robot's initial position:

[0018] φ rel =arctan2(y goal -y start ,x goal -x start )-θ.

[0019] Preferably, the 3D LiDAR data of robot H in step S1 includes the detection distance d. p Azimuth α p Z-shaped robot robot The rotation angle and pitch angle of the axis ∈ p Immediately wrapping robot Y robot The rotation angle of the axis determines the polar coordinates (d) of the radar observation point. p ,α p ,∈ p Coordinates in the global coordinate system:

[0020]

[0021] Based on 3D LiDAR information, robot H constructs a local map M.

[0022] Preferably, step S2 specifically comprises the following steps:

[0023] S21: Dynamic obstacles are segmented through multi-frame point cloud difference analysis and clustering algorithms. Input continuous multi-frame LiDAR point cloud data with a time interval of Δt. First, the nearest neighbor search KD-Tree is used to find the corresponding points between the point clouds of the k-th frame and the (k+1)-th frame. Calculate displacement ΔP i :

[0024]

[0025] in, Let i be the coordinates of the i-th point in the k-th frame. Let d be the coordinates of the j-th point in the (k+1)-th frame. th Distance threshold;

[0026] Then the displacement vector ΔP i The three-dimensional coordinates are as follows:

[0027]

[0028] Then, based on the time interval Δt, calculate the velocity vector, whose three-dimensional coordinates are as follows:

[0029]

[0030] Set speed threshold v th , with a speed greater than v th Points with speeds less than v are marked as dynamic points. th Points are labeled as static points; dynamic points are clustered to segment different dynamic obstacles, and the center coordinates, size, and motion state of the dynamic obstacles are obtained; the improved clustering algorithm DBSCAN is used to segment different static obstacles, and the center coordinates, size, and stationary state of the static obstacles are obtained; the parameters of DBSCAN are adaptively adjusted according to the data characteristics, including the neighborhood radius ε=α·median(d nearest ), where α is an adjustment coefficient, d nearest It is the median of the nearest neighbor distance; the minimum number of points β = 0.1; divide the point cloud into multiple clusters C1, C2, ..., C n Each cluster represents a potential static object. Temporal consistency filtering is used to remove clusters that do not appear in three consecutive frames. The specific formula is as follows:

[0031]

[0032] in, It is an indicator function that takes the value 1 when a certain cluster exists in time frame t, and 0 otherwise;

[0033] S22: Use a camera to capture images containing various obstacles under different environments and conditions. Label the collected images, marking the category and location of each obstacle in the image. After training a MobileNetV3 model, use it to identify obstacle categories. If the image size is H×W and the number of categories is C, then the semantic label map is an H×W matrix L, where each element L... i,j It is an integer ranging from 0 to C-1, representing the semantic label of the pixel located in the i-th row and j-th column;

[0034] S23: Project the LiDAR point cloud onto the camera coordinate system, and match the camera semantic labels with the LiDAR clustering results. (LiDAR coordinate system X) lidar Y represents the forward direction of the lidar. lidar Z represents the left side of the lidar. lidar The direction above the lidar, each point cloud P in the lidar coordinate system lidar (x lidar ,y lidar ,z lidar Camera coordinate system X camY represents the direction to the right of the camera. cam Z is the direction below the camera. cam For the camera's forward direction, each pixel (u,v) in the camera coordinate system is used to obtain the extrinsic parameter matrix T between the LiDAR and the camera through extrinsic parameter calibration. idar2cam The rotation matrix R and translation vector t are included, as shown in the following equation:

[0035] P cam =R·P lidar +t;

[0036] The LiDAR point cloud is projected onto the camera image plane to obtain the pixel coordinates (u,v) of each point. The projection formula is as follows:

[0037]

[0038] Among them, (f x ,f y (c) represents the camera's focal length. x ,c y (x) represents the coordinates of the image center point, z cam It is point P cam The depth value;

[0039] Semantic labels are obtained from the semantic segmentation results based on pixel coordinates (u,v), and then assigned to the corresponding LiDAR clusters. The semantic label assignment formula is as follows:

[0040] Label(C i ) = Mode({Label(P j )∣P j ∈C i});

[0041] Among them, C i It is the i-th lidar cluster, P j It is cluster C i The point in the middle, Label(P) j () is point P j The semantic tags are defined by Mode(·), which is a mode operation that selects the semantic tags that appear most frequently.

[0042] S24: Assign a tracking target ID to the dynamic obstacle; for each detected dynamic obstacle Oj, assign a unique tracking ID. j To ensure the consistency of tracking timing, different tracking strategies are used to track dynamic obstacles. Pedestrians and AGVs employ different tracking strategies, and the allocation formula is as follows:

[0043]

[0044] in, It is a dynamic obstacle O j The current position coordinates, It is a dynamic obstacle O j Given the velocity vector at the current moment, UniqueHash(·) is a hash function that generates a unique identifier based on the obstacle's position and velocity information;

[0045] S25: Identify traversable obstacles; when the camera identifies a static obstacle as a shelf or stacked boxes, if the lighting is good, the traversable area contour is identified through image edge detection. If the lighting is insufficient, the contour is extracted using the neighboring point relationship method of the point cloud. Once it is determined that the obstacle is passable, the detected traversable gap region R is... gap Add to the passable area;

[0046] S26: Mark the area where the dynamic obstacle is located as a temporarily impassable area; each dynamic obstacle ID j The temporarily impassable area is defined as a circular region, expressed mathematically as:

[0047]

[0048] Where p is a point in two-dimensional space, p j (t) is the obstacle ID at time t. j Position, r j v is the static radius of the obstacle. j (t) is the real-time velocity of the obstacle at time t, and α is a safety factor. It is a two-dimensional Euclidean space, that is, a planar space composed of all two-dimensional coordinate points, used to describe the planar environment in which the robot navigates;

[0049] Based on the Kalman filter prediction results, this circular region is dynamically updated to reflect the future position of the obstacle. The updated region is represented as follows:

[0050]

[0051] in, It is the predicted position of the obstacle at time t+Δt. It is the predicted velocity of the obstacle at time t+Δt;

[0052] Static obstacles are formed by each static cluster C. i Generate a convex hull region:

[0053]

[0054] ConvexHull(·) is a function for calculating the convex hull, which is to find the smallest convex polygon that can contain all points in a given set of points. This convex polygon is the convex hull of the set of points and is used to characterize the contour region of a static obstacle.

[0055] Define the globally passable area as the region within the lidar point cloud coverage, excluding all static obstacles:

[0056]

[0057] in, It is a two-dimensional Euclidean space. It is the area occupied by the i-th static obstacle, ∪ i It is the union operation of sets, used to define the regions occupied by each of the static obstacles. Merge them into a single set of static obstacle regions;

[0058] Temporarily impassable areas due to dynamic obstacles are removed from the static passable area, and traversable obstacle areas are added to obtain the real-time passable area:

[0059]

[0060] in, R is the area occupied by the j-th dynamic obstacle at time t. gap It is a gap area that can pass through obstacles, ∪ j It is the union operation of sets.

[0061] Preferably, step S3 specifically comprises the following steps:

[0062] S31: In the first stage, LSTM is used for short-term dynamic prediction, and historical trajectories are input. Output hidden state h LSTM The loss function formula is as follows:

[0063]

[0064] Among them, T h It is the final moment in the trajectory of history. This represents the trajectory point predicted by the LSTM network at time t+1, and this is the model's estimate of the position at the next time step. It is the actual trajectory point at time t+1, that is, the position actually observed at that time. It is the summation symbol, representing the summation from t=1 to t=T. h The sum of all items;

[0065] S32: In the second stage, GAN is used for long-term endpoint prediction, and Spast +h LSTM Input generator, output K candidate endpoints The true endpoint E GT Input a discriminator and output a reasonableness score;

[0066] The formula for the adversarial loss function is as follows:

[0067]

[0068] Among them, E GT These are the actual endpoint coordinates. The predicted candidate endpoints are the outputs of the generator, and D(·) represents the output function of the discriminator. It is the mathematical expectation, calculated by averaging the values ​​of the random variable within the parentheses;

[0069] The diversity loss function encourages the generator to output diverse candidate endpoints, avoiding the generation results from falling into a single modality. Its formula is as follows:

[0070]

[0071] in, It is the averaging coefficient, which averages the losses of all candidate endpoints, ∑ i≠j It is a summation symbol, indicating that all candidate endpoint pairs satisfying i≠j are summed. Let σ represent the square of the L2 norm of the i-th and j-th candidate endpoints, where σ is the bandwidth parameter, taken as 2.0;

[0072] The endpoint error loss function ensures that among the generated candidate endpoints, at least one endpoint is sufficiently close to the true endpoint EGT, and its formula is as follows:

[0073]

[0074] in, It is the k-th candidate endpoint generated by the generator. With the true endpoint E GT The Euclidean distance between them;

[0075] Total loss:

[0076] L total =L adv +0.5L diversity +1.0L dest_error ;

[0078] Preferably, step S3 further includes:

[0079] S33: Perform knowledge distillation on the models of the first and second stages, constraining the intermediate features of stage three to align with the LSTM hidden states of stage one, and constraining the endpoint distribution of stage three to be consistent with the GAN output of stage two. This is achieved using feature alignment loss and endpoint distribution alignment loss, respectively. Finally, input...

[0080] In the third stage, the final hidden state h of the LSTM model from the first stage is used. LSTM and cell state C LSTM Perform initialization:

[0081] h0 = h LsTM C0 = C LSTM ;

[0082] The input sequence includes historical trajectories. Best finish line and learnable hints embedding z prompt The concatenated input sequence is:

[0083]

[0084] X input The input is fed into an LSTM trajectory generator, and the hidden state h is calculated step by step. t and cell loading C t :

[0085] h t C t =LSTM(X) input [t],h t-1 C t-1 );

[0086] For each time step t, the output of the LSTM model is:

[0087] y t =W y ·h t +b y ;

[0088] Among them, y t It is the predicted trajectory point, W y and b y These are learnable parameters;

[0089] Generate trajectory points for the next N frames:

[0090]

[0091] The reconstruction loss function is:

[0092]

[0093] in, It is the averaging coefficient. It is the summation symbol, indicating the summation from t=T h +1 to t=T h The losses at all future moments of +N are summed up. It is the predicted trajectory point y t and the actual trajectory points The square of the Euclidean distance between them;

[0094] The total loss function is:

[0095] L total =L recon +λ1L kd_feat +λ2L kd_dest ;

[0096] Among them, L kd_feat For feature alignment loss, L kd_dest The endpoint distribution alignment loss is defined by λ1 and λ2, which are loss weight coefficients.

[0097] Preferably, step S4 specifically includes:

[0098] S41: Use the RRT* algorithm to sample M candidate sub-target points {p} in the passable area. sg,1 ,p sg,2 ,…p sg,M}, for each p sg,i Call the estimation and prediction network to calculate C risk (p sg,i ), calculate each p sg,i Total cost C total (p sg,i ), Optimal target point selection:

[0099]

[0100] C total (p sg,i )=w1·C risk (p sg,i )+w2·C density (p sg,i )+w3·C distance (p sg,i )+w4·C angle (p sg,i )+w5·C smooth (p sg,i );

[0101] Where, p sg,i These are candidate target points, w1 to w5 are weight coefficients, and C risk(p sg,i ) is a dynamic risk assessment item, C density (p sg,i ) is the obstacle density term, C distance (p sg,i ) is the distance term, C angle (p sg,i ) is the direction angle term, C smooth (p sg,i ) is the path smoothing term;

[0102] For each dynamic obstacle O i The set of trajectories for its future N frames is generated using LSTM+GAN:

[0103]

[0104] Calculate p sg Within the time window [t0,t] o The probability that the space within +Δt] is covered by the trajectory:

[0105]

[0106] Where, r safe It is the robot's safe radius, dist(p) sg ,τ i,k (t) represents point p. sg With trajectory τ i,k The distance between positions at time t It is an indicator function; it is 1 when the condition is met and 0 otherwise.

[0107] Then dynamic risk assessment item C risk (p sg The formula is as follows:

[0108]

[0109] Where N is the total number of dynamic obstacles, It is an obstacle O i The faster the speed, the higher the risk;

[0110] With p as the center, the statistical radius R density Number of lidar points N points ;

[0111] Then the obstacle density term C density (p sg The formula is as follows:

[0112]

[0113] Where, ρ max It is the maximum permissible density;

[0114] Then the distance term:

[0115]

[0116] Among them, D max It is the maximum possible distance in the scene;

[0117] Direction Angle Term C angle (p sg The formula is as follows:

[0118]

[0119] Where H is the robot's current position and θ is the global target direction. and sub-target direction The angle between H and p is connected using a B-spline curve. sg Calculate the mean curvature k avg ;

[0120] Then the path smoothing term C smooth (p sg )as follows:

[0121]

[0122] Among them, κ avg It is the mean curvature, κ max It is the robot's maximum permissible curvature;

[0123] S42: Select the optimal sub-target point from the candidate sub-target points and use the BIRRT algorithm to perform global path planning from the robot's current position to the sub-target.

[0124] Preferably, step S5 specifically includes:

[0125] S51: Input the robot's current state, including its current position H = (x, y) and current velocity v. current ω current Environmental information, dynamic obstacle prediction trajectory, and sub-target point p sg =(x sg ,y sg Output candidate velocity pairs (v, ω) that satisfy the constraints in the velocity space:

[0126]

[0127] Among them, v min It is the minimum linear velocity allowed for the robot, v max ω is the maximum linear velocity allowed for the robot. min It is the minimum angular velocity allowed for the robot, ω maxIt is the maximum angular velocity allowed for the robot;

[0128] For each candidate velocity pair (v, ω), predict the trajectory for the next 12 frames:

[0129] τ robot (v,ω)=H 1 H 2 ,…,H t ,…,H 12 ;

[0130] Among them, H t The predicted position of the robot in frame t when it moves at velocity (v,ω) is calculated recursively from the kinematic model.

[0131] Calculate the collision risk between the robot's trajectory and the trajectory of dynamic obstacles:

[0132]

[0133] Where σ is the risk diffusion coefficient, It is a dynamic obstacle O j At the predicted location at time t, J represents the total number of dynamic obstacles;

[0134] Preferably, the improved prediction function is designed as follows:

[0135] G( v,ω )=α·Heading(v,ω)+β·Clearance(ν,ω)+γ·Velocity(ν,ω)+∈·Risk(v,ω);

[0136] Among them, Heading towards the target: Heading(v,ω)=cosθ;

[0137] Obstacle distance:

[0138] Velocity: Velocity(v,ω)=v;

[0139] Predicted trajectory risks:

[0140] For each candidate velocity pair (v,ω), calculate G(v,ω) and select the optimal velocity (v). best ,ω best ), and implement obstacle avoidance.

[0141] The present invention has the following beneficial effects:

[0142] This invention relates to a robot autonomous navigation method based on pedestrian trajectory prediction and obstacle avoidance. First, robot H is initialized, acquiring its 3D LiDAR information, camera information, local map data, and pose information. Second, using robot H's position information, multimodal fusion information, and local map data, dynamic obstacle states and static obstacle positions are obtained, obstacle categories are distinguished, and passable areas are delineated. Next, a progressive learning trajectory prediction network using LSTM+GAN is used to generate a predicted trajectory, and a sub-target point is generated within the passable area using the RRT algorithm. The optimal sub-target point is selected through an evaluation function, and global path planning is performed using BIRRT. Finally, the predicted trajectory is input into the DWA algorithm to achieve local path planning and real-time obstacle avoidance for the robot. This patent solves the problem of autonomous robot navigation in complex dynamic environments. Through multimodal perception, trajectory prediction, and hierarchical path planning, it significantly improves the robot's obstacle avoidance capability and navigation efficiency, reduces detour distance and time, and enhances its adaptability and flexibility in scenarios such as logistics and warehousing. Attached Figure Description

[0143] The present invention will be further described below with reference to the accompanying drawings and embodiments.

[0144] Figure 1 This is a flowchart of the robot autonomous navigation method based on pedestrian trajectory prediction and obstacle avoidance according to the present invention.

[0145] Figure 2 This is a schematic diagram of the LSTM+GAN progressive learning trajectory prediction network provided by the present invention.

[0146] Figure 3 This is a schematic diagram illustrating how the robot, as provided in this invention, divides a passable area and generates secondary target points.

[0147] Figure 4 This is a schematic diagram of robot local path planning and obstacle avoidance provided by the present invention. Detailed Implementation

[0148] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0149] Example 1:

[0150] See Figure 1-2 An autonomous navigation method for mobile robots based on pedestrian trajectory prediction and obstacle avoidance includes the following steps:

[0151] S1: Initialize robot H, and acquire its own 3D LiDAR information, camera information, local map data and pose information;

[0152] Wherein, the X of the global coordinate system global The axis points due east, Y global The axis points due north, Z global The axis is perpendicular to the ground and points upwards. The coordinates of any point P are represented as (x...). global ,y global ,z global ); X of the robot coordinate system robot The axis points in the direction the robot is moving, Y. robot The axis points to the left side of the robot, Z. robot The axis is perpendicular to the vehicle body and points upwards; the coordinates of any point P are represented as (x...). robot ,y robot ,z robot );

[0153] Robot H employs a four-wheel differential drive structure. The origin of the vehicle coordinate system is located at the geometric center, and the inertial coordinate system is the global coordinate system. Its pose information includes the position coordinate information S = (x... start ,y start ) and the robot H's forward direction X robot With global coordinate system X global The included angle information θ.

[0154] Preferably, the pose vector of the robot H is:

[0155]

[0156] The coordinates of the target point G in the global coordinate system are G = (x goal ,y goal The relative distance between the target point G and the robot's initial position:

[0157]

[0158] The relative angle of target point G with respect to the robot's initial position:

[0159] φ rel =arctan2(y goal -y start ,x goal -x start )-θ.

[0160] The 3D LiDAR data for robot H includes the detection range d. p Azimuth α p Z-shaped robot robot The rotation angle and pitch angle of the axis ∈ pImmediately wrapping robot Y robot The rotation angle of the axis determines the polar coordinates (d) of the radar observation point. p ,α p ,∈ p Coordinates in the global coordinate system:

[0161]

[0162] Based on 3D LiDAR information, robot H constructs a local map M.

[0163] S2: See also Figure 3 By using the location information of robot H, multimodal fusion information, and local map data, the dynamic obstacle status and static obstacle location are obtained, obstacle categories are distinguished, and passable areas are delineated.

[0164] The specific steps are as follows:

[0165] S21: Dynamic obstacles are segmented through multi-frame point cloud difference analysis and clustering algorithms. Inputting continuous multi-frame LiDAR point cloud data with a time interval of Δt, the nearest neighbor search (KD-Tree) is first used to find corresponding point pairs between the k-th and (k+1)-th frame point clouds. Calculate the displacement vector ΔP i :

[0166]

[0167] in, Let i be the coordinates of the i-th point in the k-th frame. Let d be the coordinates of the j-th point in the (k+1)-th frame. th Distance threshold;

[0168] KD-Tree (short for k-dimensional tree) is a tree-shaped data structure that stores instance points in k-dimensional space for fast retrieval. It is mainly used for searching key data in multi-dimensional space (such as range search and nearest neighbor search).

[0169] Then the displacement vector ΔP i The three-dimensional coordinates are as follows:

[0170]

[0171] Then, based on the time interval Δt, calculate the velocity vector, whose three-dimensional coordinates are as follows:

[0172]

[0173] Set speed threshold v th , with a speed greater than v th Points with speeds less than v are marked as dynamic points.th Points are labeled as static points; dynamic points are clustered to segment different dynamic obstacles, and the center coordinates, size, and motion state of the dynamic obstacles are obtained; the improved clustering algorithm DBSCAN is used to segment different static obstacles, and the center coordinates, size, and stationary state of the static obstacles are obtained; the parameters of DBSCAN are adaptively adjusted according to the data characteristics, including the neighborhood radius ε=α·median(d nearest ), where α is an adjustment coefficient, d nearest It is the median of the nearest neighbor distance; the minimum number of points β = 0.1; the point cloud is divided into multiple clusters C1, C2, ..., Cn, each cluster representing a potential static object; temporal consistency filtering is used to remove clusters that do not appear in 3 consecutive frames, the specific formula is:

[0174]

[0175] in, It is an indicator function that takes the value 1 when a certain cluster exists in time frame t, and 0 otherwise;

[0176] DBSCAN (Density-Based Spatial Clustering of Applications with Noise) is a representative density-based clustering algorithm. Unlike partitioning and hierarchical clustering methods, it defines a cluster as the largest set of density-connected points, enabling it to divide regions with sufficiently high density into clusters and discover clusters of arbitrary shapes in noisy spatial databases.

[0177] S22: Use a camera to capture images containing various obstacles under different environments and conditions. Label the collected images, marking the category and location of each obstacle in the image. After training a MobileNetV3 (lightweight) model, use it to identify obstacle categories. The image size is H×W, and the number of categories is C (including pedestrians, shelves, AGVs, etc.). The semantic label map is an H×W matrix L, where each element L... i,j It is an integer ranging from 0 to C-1, representing the semantic label of the pixel located in the i-th row and j-th column;

[0178] S23: Project the LiDAR point cloud onto the camera coordinate system, and match the camera semantic labels with the LiDAR clustering results. (LiDAR coordinate system X) lidar Y represents the forward direction of the lidar. lidar Z represents the left side of the lidar. lidar The direction above the lidar, each point cloud P in the lidar coordinate system lidar (x lidar ,y lidar,z lidar Camera coordinate system X cam Y represents the direction to the right of the camera. cam Z is the direction below the camera. cam For the camera's forward direction, each pixel (u,v) in the camera coordinate system is used to obtain the extrinsic parameter matrix T between the LiDAR and the camera through extrinsic parameter calibration. idar2cam The rotation matrix R and translation vector t are included, as shown in the following equation:

[0179] P cam =R·P lidar +t;

[0180] The LiDAR point cloud is projected onto the camera image plane to obtain the pixel coordinates (u,v) of each point. The projection formula is as follows:

[0181]

[0182] Among them, (f x ,f y (c) represents the camera's focal length. x ,c y (x) represents the coordinates of the image center point, z cam It is point P cam The depth value;

[0183] Semantic labels are obtained from the semantic segmentation results based on pixel coordinates (u,v), and then assigned to the corresponding LiDAR clusters. The semantic label assignment formula is as follows:

[0184] Label(C i ) = Mode({Label(P j )∣P j ∈C i});

[0185] Among them, C i It is the i-th lidar cluster, P j It is cluster C i The point in the middle, Label(P) j () is point P j The semantic tags are defined by Mode(·), which is a mode operation that selects the semantic tags that appear most frequently.

[0186] S24: Assign a tracking target ID to the dynamic obstacle; for each detected dynamic obstacle Oj, assign a unique tracking ID. j To ensure the consistency of tracking timing, different tracking strategies are used to track dynamic obstacles. Pedestrians and AGVs employ different tracking strategies, and the allocation formula is as follows:

[0187]

[0188] in, It is a dynamic obstacle O j The current position coordinates, It is a dynamic obstacle O j Given the velocity vector at the current moment, UniqueHash(·) is a hash function that generates a unique identifier based on the obstacle's position and velocity information;

[0189] S25: Identify traversable obstacles; when the camera identifies a static obstacle as a shelf or stacked boxes, if the lighting is good, the traversable area contour is identified through image edge detection. If the lighting is insufficient, the contour is extracted using the neighboring point relationship method of the point cloud. Once it is determined that the obstacle is passable, the detected traversable gap region R is... gap Add to the passable area;

[0190] S26: Mark the area where the dynamic obstacle is located as a temporarily impassable area; each dynamic obstacle ID j The temporarily impassable area is defined as a circular region, expressed mathematically as:

[0191]

[0192] Where p is a point in two-dimensional space, p j (t) represents the position of obstacle IDj at time t, r j v is the static radius of the obstacle. j (t) is the real-time velocity of the obstacle at time t, and α is a safety factor. It is a two-dimensional Euclidean space, that is, a planar space composed of all two-dimensional coordinate points, used to describe the planar environment in which the robot navigates;

[0193] Based on the Kalman filter prediction results, this circular region is dynamically updated to reflect the future position of the obstacle. The updated region is represented as follows:

[0194]

[0195] in, It is the predicted position of the obstacle at time t+Δt. It is the predicted velocity of the obstacle at time t+Δt;

[0196] Static obstacles are formed by each static cluster C. i Generate a convex hull region:

[0197]

[0198] ConvexHull(·) is a function for calculating the convex hull, which is to find the smallest convex polygon that can contain all points in a given set of points. This convex polygon is the convex hull of the set of points and is used to characterize the contour region of a static obstacle.

[0199] Define the globally passable area as the region within the lidar point cloud coverage, excluding all static obstacles:

[0200]

[0201] in, It is a two-dimensional Euclidean space. It is the area occupied by the i-th static obstacle, ∪ i It is the union operation of sets, used to define the regions occupied by each of the static obstacles. Merge them into a single set of static obstacle regions;

[0202] Temporarily impassable areas due to dynamic obstacles are removed from the static passable area, and traversable obstacle areas are added to obtain the real-time passable area:

[0203]

[0204] in, R is the area occupied by the j-th dynamic obstacle at time t. gap It is a gap area that can pass through obstacles, ∪ j It is the union operation of sets.

[0205] S3: Generate predicted trajectories using a progressively learned trajectory prediction network with LSTM+GAN. Please refer to [link / reference]. Figure 2 .

[0206] The specific steps are as follows:

[0207] S31: In the first stage, LSTM is used for short-term dynamic prediction, and historical trajectories are input. Output hidden state h LSTM The loss function formula is as follows:

[0208]

[0209] Among them, T h It is the final moment in the trajectory of history. This represents the trajectory point predicted by the LSTM network at time t+1, and this is the model's estimate of the position at the next time step. It is the actual trajectory point at time t+1, that is, the position actually observed at that time. It is the summation symbol, representing the summation from t=1 to t=T.h The sum of all items;

[0210] Among them, LSTM stands for Long Short-Term Memory, which is a type of recurrent neural network designed specifically to address the long-term dependency problem inherent in general RNNs (Recurrent Neural Networks). All RNNs have a chain-like form of repeating neural network modules.

[0211] GAN stands for Generative Adversarial Network, which consists of a generative model G and a discriminative model D.

[0212] S32: In the second stage, GAN is used for long-term endpoint prediction, and S past +h LSTM Input generator, output K candidate endpoints The true endpoint E GT Input a discriminator and output a reasonableness score;

[0213] The formula for the adversarial loss function is as follows:

[0214]

[0215] Among them, E GT These are the actual endpoint coordinates. The predicted candidate endpoints are the outputs of the generator, and D(·) represents the output function of the discriminator. It is the mathematical expectation, calculated by averaging the values ​​of the random variable within the parentheses;

[0216] The diversity loss function encourages the generator to output diverse candidate endpoints, avoiding the generation results from falling into a single modality. Its formula is as follows:

[0217]

[0218] in, It is the averaging coefficient, which averages the losses of all candidate endpoints, ∑ i≠j It is a summation symbol, indicating that all candidate endpoint pairs satisfying i≠j are summed. Let σ represent the square of the L2 norm of the i-th and j-th candidate endpoints, where σ is the bandwidth parameter, taken as 2.0;

[0219] The endpoint error loss function ensures that among the generated candidate endpoints, at least one endpoint is sufficiently close to the true endpoint EGT, and its formula is as follows:

[0220]

[0221] in, It is the k-th candidate endpoint generated by the generator. With the true endpoint EGT The Euclidean distance between them;

[0222] Total loss:

[0223] L total =L adv +0.5L diversity +1.0L dest_error ;

[0224] S33: Perform knowledge distillation on the models of the first and second stages, constraining the intermediate features of stage three to align with the LSTM hidden states of stage one, and constraining the endpoint distribution of stage three to be consistent with the GAN output of stage two. This is achieved using feature alignment loss and endpoint distribution alignment loss, respectively. Finally, input...

[0225] In the third stage, the final hidden state h of the LSTM model from the first stage is used. LSTM and cell state C LSTM Perform initialization:

[0226] h0 = h LSTM C0 = C LSTM ;

[0227] The input sequence includes historical trajectories. Best finish line and learnable hints embedding z prompt The concatenated input sequence is:

[0228]

[0229] X input The input is fed into an LSTM trajectory generator, and the hidden state h is calculated step by step. t and cell loading C t :

[0230] h t C t =LSTM(x input [t],h t-1 C t-1 );

[0231] For each time step t, the output of the LSTM model is:

[0232] y t =W y ·h t +b y ;

[0233] Among them, y t =(x t ,yt ) is the predicted trajectory point, W y and b y These are learnable parameters;

[0234] Generate trajectory points for the next N frames:

[0235]

[0236] The reconstruction loss function is:

[0237]

[0238] in, It is the averaging coefficient. It is the summation symbol, indicating the summation from t=T h +1 to t=T h The losses at all future moments of +N are summed up. It is the predicted trajectory point y t and the actual trajectory points The square of the Euclidean distance between them;

[0239] The total loss function is:

[0240] L total =L recon +λ1L kd_feat +λ2L kd_dest ;

[0241] Among them, L kd_feat For feature alignment loss, L kd_dest The endpoint distribution alignment loss is defined by λ1 and λ2, which are loss weight coefficients.

[0242] S4: See also Figure 3 The robot uses RRT to generate sub-target points in the passable area, combines the sub-target point evaluation function to select the optimal sub-target point, and uses BIRRT to perform global path planning from the robot's current position to the sub-target point.

[0243] Among them, the RRT algorithm is an algorithm that randomly samples the state space. By performing collision detection on the sampled points, it avoids the large amount of computation caused by precise modeling of the space and can effectively solve the path planning problem in high-dimensional space and with complex constraints.

[0244] BIRRT (Bidirectional Fast Exploratory Random Tree) is an optimization algorithm for path planning that accelerates the search process by simultaneously constructing two random trees from the start and end points, making it particularly suitable for high-dimensional spaces and complex constrained environments.

[0245] Specifically, it includes:

[0246] S41: Use the RRT* algorithm to sample M candidate sub-target points {p} in the passable area. sg,1 ,p sg,2 ,…p sg,M}, for each p sg,i Call the estimation and prediction network to calculate C risk (p sg,i ), calculate each p sg,i Total cost C total (p sg,i ), Optimal target point selection:

[0247]

[0248] C total (p sg,i )=w1·C risk (p sg,i )+w2·C density (p sg,i )+w3·C distance (p sg,i )+w4·C angle (p sg,i )+w5·C smooth (p sg,i );

[0249] Where, p sg,i These are candidate target points, w1 to w5 are weight coefficients, and C risk (p sg,i ) is a dynamic risk assessment item, C density (p sg,i ) is the obstacle density term, C distance (p sg,i ) is the distance term, C angle (p sg,i ) is the direction angle term, C smooth (p sg,i ) is the path smoothing term;

[0250] Among them, the RRT* algorithm introduces asymptotic optimality on the basis of the RRT algorithm;

[0251] For each dynamic obstacle O i The set of trajectories for its future N frames is generated using LSTM+GAN:

[0252]

[0253] Calculate p sg The probability of being covered by the trajectory within the time window [t0, t0+Δt]:

[0254]

[0255] Where, r safe It is the robot's safe radius, dist(p) sg ,τ i,k (t) represents point p. sg With trajectory τ i,k The distance between positions at time t It is an indicator function; it is 1 when the condition is met and 0 otherwise.

[0256] Then the obstacle density term C density (p sg The formula is as follows:

[0257]

[0258] Where N is the total number of dynamic obstacles, It is an obstacle O i The faster the speed, the higher the risk;

[0259] With p as the center, the statistical radius R density The number of lidar points N within (e.g., 2m) points ;

[0260] Then the obstacle density term C density (p sg The formula is as follows:

[0261]

[0262] Where, ρ max It is the maximum permissible density;

[0263] Then the distance term:

[0264]

[0265] Among them, D max It is the maximum possible distance in the scene;

[0266] Direction Angle Term C angle (p sg The formula is as follows:

[0267]

[0268] Where H is the robot's current position and θ is the global target direction. and sub-target direction The angle between H and p is connected using a B-spline curve. sg Calculate the mean curvature κ avg ;

[0269] Then the path smoothing term C smooth (psg )as follows:

[0270]

[0271] Where, k avg It is the mean curvature, k max It is the robot's maximum permissible curvature;

[0272] S42: Select the optimal sub-target point from the candidate sub-target points and use the BIRRT algorithm to perform global path planning from the robot's current position to the sub-target.

[0273] S5: See also Figure 4 The predicted trajectory is input into the DWA algorithm to perform local path planning for the robot, thereby achieving real-time obstacle avoidance.

[0274] Specifically, it includes:

[0275] S51: Input the robot's current state, including its current position H = (x, y) and current velocity v. current ω current Environmental information, dynamic obstacle prediction trajectory, and sub-target point p sg =(x sg ,y sg Output candidate velocity pairs (v, ω) that satisfy the constraints in the velocity space:

[0276]

[0277] Among them, v min It is the minimum linear velocity allowed for the robot, v max ω is the maximum linear velocity allowed for the robot. min It is the minimum angular velocity allowed for the robot, ω max It is the maximum angular velocity allowed for the robot;

[0278] For each candidate velocity pair (v, ω), predict the trajectory for the next 12 frames:

[0279] τ robot (v,ω)=H 1 H 2 ,…,H t ,…,H 12 ;

[0280] Among them, H t The predicted position of the robot in frame t when it moves at velocity (v,ω) is calculated recursively from the kinematic model.

[0281] Calculate the collision risk between the robot's trajectory and the trajectory of dynamic obstacles:

[0282]

[0283] Where σ is the risk diffusion coefficient, It is a dynamic obstacle O j At the predicted location at time t, J represents the total number of dynamic obstacles;

[0284] The improved prediction function design is as follows:

[0285] G( v,ω )=α·Heading(v,ω)+β·Clearance(ν,ω)+γ·Velocity(ν,ω)+∈·Risk(ν,ω);

[0286] Among them, Heading towards the target: Heading(v,ω)=cosθ;

[0287] Obstacle distance:

[0288] Velocity: Velocity(v,ω)=v;

[0289] Predicted trajectory risks:

[0290] For each candidate velocity pair (v,ω), calculate G(v,ω) and select the optimal velocity (v). best ,ω best ), and implement obstacle avoidance.

[0291] S6: After robot H successfully navigates to the sub-target point, it continues with step S2 to select and navigate the sub-target point, repeating the autonomous navigation algorithm from S3 to S5 until the target point is reached.

[0292] Although embodiments of the invention have been shown and described, it will be understood by those skilled in the art that various changes, modifications, substitutions and variations can be made to these embodiments without departing from the principles and spirit of the invention, the scope of which is defined by the appended claims and their equivalents.

Claims

1. A mobile robot autonomous navigation method based on pedestrian trajectory prediction and obstacle avoidance, characterized in that, Includes the following steps: S1: Initialize robot H, and acquire its own 3D LiDAR information, camera information, local map data and pose information; S2: Obtain the dynamic obstacle status and static obstacle location through the robot H's position information, multimodal fusion information and local map data, distinguish obstacle categories, and delineate passable areas; S3: Use an LSTM+GAN progressively learned trajectory prediction network to generate predicted trajectories; S4: Use RRT to generate sub-target points in the passable area, combine the sub-target point evaluation function to select the optimal sub-target point, and use BIRRT to perform global path planning between the robot's current position and the sub-target point; S5: Input the predicted trajectory into the DWA algorithm to perform local path planning for the robot and achieve real-time obstacle avoidance; S6: After robot H successfully navigates to the sub-target point, it continues with step S2 to select and navigate the sub-target point, repeating the autonomous navigation algorithm from S3 to S5 until the target point is reached.

2. The autonomous navigation method for mobile robots based on pedestrian trajectory prediction and obstacle avoidance according to claim 1, characterized in that, In step S1, the X coordinate of the global coordinate system global The axis points due east, Y global The axis points due north, Z global The axis is perpendicular to the ground and points upwards. The coordinates of any point P are represented as (x...). global ,y global ,z global ); X of the robot coordinate system robot The axis points in the direction the robot is moving, Y. robot The axis points to the left side of the robot, Z. robot The axis is perpendicular to the vehicle body and points upwards; the coordinates of any point P are represented as (x...). robot ,y robot ,z robot ); The robot H adopts a four-wheel differential drive structure. The origin of the vehicle coordinate system is located at the geometric center, and the inertial coordinate system is the global coordinate system. Its pose information includes the position coordinate information S = (x... start ,y start ) and the robot H's forward direction X robot With global coordinate system X global The included angle information θ.

3. The autonomous navigation method for mobile robots based on pedestrian trajectory prediction and obstacle avoidance according to claim 2, characterized in that, The pose vector of the robot H: The coordinates of the target point G in the global coordinate system are G = (x goal ,y goal The relative distance between the target point G and the robot's initial position: The relative angle of target point G with respect to the robot's initial position: φ rel =arctan2(y goal -y start ,x goal -x start )-θ。 4. The autonomous navigation method for mobile robots based on pedestrian trajectory prediction and obstacle avoidance according to claim 3, characterized in that, The 3D LiDAR data of robot H in step S1 includes the detection distance d. p Azimuth α p Z-shaped robot robot The rotation angle and pitch angle of the axis ∈ p Immediately wrapping robot Y robot The rotation angle of the axis determines the polar coordinates (d) of the radar observation point. p ,α p ,∈ p Coordinates in the global coordinate system: Based on 3D LiDAR information, robot H constructs a local map M.

5. The autonomous navigation method for mobile robots based on pedestrian trajectory prediction and obstacle avoidance according to claim 4, characterized in that, The specific steps of step S2 are as follows: S21: Dynamic obstacles are segmented through multi-frame point cloud difference analysis and clustering algorithms. Input continuous multi-frame LiDAR point cloud data with a time interval of Δt. First, the nearest neighbor search KD-Tree is used to find the corresponding points between the point clouds of the k-th frame and the (k+1)-th frame. Calculate displacement ΔP i : in, Let i be the coordinates of the i-th point in the k-th frame. Let d be the coordinates of the j-th point in the (k+1)-th frame. th Distance threshold; Then the displacement vector ΔP i The three-dimensional coordinates are as follows: Then, based on the time interval Δt, calculate the velocity vector, whose three-dimensional coordinates are as follows: Set speed threshold v th , with a speed greater than v th Points with speeds less than v are marked as dynamic points. th Points are labeled as static points; dynamic points are clustered to segment different dynamic obstacles, and the center coordinates, size, and motion state of the dynamic obstacles are obtained; the improved clustering algorithm DBSCAN is used to segment different static obstacles, and the center coordinates, size, and stationary state of the static obstacles are obtained; the parameters of DBSCAN are adaptively adjusted according to the data characteristics, including the neighborhood radius ε=α·median(d nearest ), where α is an adjustment coefficient, d nearest It is the median of the nearest neighbor distance; the minimum number of points β = 0.1; divide the point cloud into multiple clusters C1, C2, ..., C n Each cluster represents a potential static object. Temporal consistency filtering is used to remove clusters that do not appear in three consecutive frames. The specific formula is as follows: in, It is an indicator function that takes the value 1 when a certain cluster exists in time frame t, and 0 otherwise; S22: Use a camera to capture images containing various obstacles under different environments and conditions. Label the collected images, marking the category and location of each obstacle in the image. After training a MobileNetV3 model, use it to identify obstacle categories. If the image size is H×W and the number of categories is C, then the semantic label map is an H×W matrix L, where each element L... i,j It is an integer ranging from 0 to C-1, representing the semantic label of the pixel located in the i-th row and j-th column; S23: Project the LiDAR point cloud onto the camera coordinate system, and match the camera semantic labels with the LiDAR clustering results. (LiDAR coordinate system X) lidar Y represents the forward direction of the lidar. lidar Z represents the left side of the lidar. lidar The direction above the lidar, each point cloud P in the lidar coordinate system lidar (x lidar ,y lidar ,z lidar Camera coordinate system X cam Y represents the direction to the right of the camera. cam Z is the direction below the camera. cam For the camera's forward direction, each pixel (u,v) in the camera coordinate system is used to obtain the extrinsic parameter matrix T between the LiDAR and the camera through extrinsic parameter calibration. idar2cam The rotation matrix R and translation vector t are included, as shown in the following equation: P cam =R·P lidar +t; The LiDAR point cloud is projected onto the camera image plane to obtain the pixel coordinates (u,v) of each point. The projection formula is as follows: Among them, (f x ,f y (c) represents the camera's focal length. x ,c y (x) represents the coordinates of the image center point, z cam It is point P cam The depth value; Semantic labels are obtained from the semantic segmentation results based on pixel coordinates (u,v), and then assigned to the corresponding LiDAR clusters. The semantic label assignment formula is as follows: Label(C i )=Mode({Label(P j )∣P j ∈C i }); Among them, C i It is the i-th lidar cluster, P j It is cluster C i The point in the middle, Label(P) j () is point P j The semantic tags are defined by Mode(·), which is a mode operation that selects the semantic tags that appear most frequently. S24: Assign a tracking target ID to the dynamic obstacle; for each detected dynamic obstacle Oj, assign a unique tracking ID. j To ensure the consistency of tracking timing, different tracking strategies are used to track dynamic obstacles. Pedestrians and AGVs employ different tracking strategies, and the allocation formula is as follows: in, It is a dynamic obstacle O j The current position coordinates, It is a dynamic obstacle O j Given the velocity vector at the current moment, UniqueHash(·) is a hash function that generates a unique identifier based on the obstacle's position and velocity information; S25: Identify traversable obstacles; when the camera identifies a static obstacle as a shelf or stacked boxes, if the lighting is good, the traversable area contour is identified through image edge detection. If the lighting is insufficient, the contour is extracted using the neighboring point relationship method of the point cloud. Once it is determined that the obstacle is passable, the detected traversable gap region R is... gap Add to the passable area; S26: Mark the area where the dynamic obstacle is located as a temporarily impassable area; each dynamic obstacle ID j The temporarily impassable area is defined as a circular region, expressed mathematically as: Where p is a point in two-dimensional space, p j (t) is the obstacle ID at time t. j Position, r j v is the static radius of the obstacle. j (t) is the real-time velocity of the obstacle at time t, and α is a safety factor. It is a two-dimensional Euclidean space, that is, a planar space composed of all two-dimensional coordinate points, used to describe the planar environment in which the robot navigates; Based on the Kalman filter prediction results, this circular region is dynamically updated to reflect the future position of the obstacle. The updated region is represented as follows: in, It is the predicted position of the obstacle at time t+Δt. It is the predicted velocity of the obstacle at time t+Δt; Static obstacles are formed by each static cluster C. i Generate a convex hull region: ConvexHull(·) is a function for calculating the convex hull, which is to find the smallest convex polygon that can contain all points in a given set of points. This convex polygon is the convex hull of the set of points and is used to characterize the contour region of a static obstacle. Define the globally passable area as the region within the lidar point cloud coverage, excluding all static obstacles: in, It is a two-dimensional Euclidean space. U is the region occupied by the i-th static obstacle. i It is the union operation of sets, used to define the regions occupied by each of the static obstacles. Merge them into a single set of static obstacle regions; Temporarily impassable areas due to dynamic obstacles are removed from the static passable area, and traversable obstacle areas are added to obtain the real-time passable area: in, R is the area occupied by the j-th dynamic obstacle at time t. gap It is a gap area that can pass through obstacles, U j It is the union operation of sets.

6. The autonomous navigation method for mobile robots based on pedestrian trajectory prediction and obstacle avoidance according to claim 5, characterized in that, The specific steps of step S3 are as follows: S31: In the first stage, LSTM is used for short-term dynamic prediction, and historical trajectories are input. Output hidden state h LSTM The loss function formula is as follows: Among them, T h It is the final moment in the trajectory of history. is the trajectory point predicted by the LSTM network at time t+1, and is the model's estimate of the position at the next time step. It is the actual trajectory point at time t+1, that is, the position actually observed at that time. It is the summation symbol, representing the summation from t=1 to t=T. h The sum of all items; S32: In the second stage, GAN is used for long-term endpoint prediction, and S past +h LSTM Input generator, output K candidate endpoints The true endpoint E GT Input a discriminator and output a reasonableness score; The formula for the adversarial loss function is as follows: Among them, E GT These are the actual endpoint coordinates. The generator outputs predicted candidate endpoints, and D(·) represents the discriminator's output function. It is the mathematical expectation, calculated by averaging the values ​​of the random variable within the parentheses; The diversity loss function encourages the generator to output diverse candidate endpoints, avoiding the generation results from falling into a single modality. Its formula is as follows: in, It is the averaging coefficient, which averages the losses of all candidate endpoints, ∑ i≠j It is a summation symbol, indicating that all candidate endpoint pairs satisfying i≠j are summed. Let σ represent the square of the L2 norm of the i-th and j-th candidate endpoints, where σ is the bandwidth parameter, taken as 2.0; The endpoint error loss function ensures that among the generated candidate endpoints, at least one endpoint is sufficiently close to the true endpoint EGT, and its formula is as follows: in, It is the k-th candidate endpoint generated by the generator. With the true endpoint E GT The Euclidean distance between them; Total loss: L total =L dsva +0.5L diversity +1.0L dest_error ;。 7. The autonomous navigation method for mobile robots based on pedestrian trajectory prediction and obstacle avoidance according to claim 6, characterized in that, Step S3 further includes: S33: Perform knowledge distillation on the models of the first and second stages, constraining the intermediate features of stage three to align with the LSTM hidden states of stage one, and constraining the endpoint distribution of stage three to be consistent with the GAN output of stage two. This is achieved using feature alignment loss and endpoint distribution alignment loss, respectively. Finally, input... In the third stage, the final hidden state h of the LSTM model from the first stage is used. LSTM and cell state C LSTM Perform initialization: h0=h LSTM ,C0=C L1TM ; The input sequence includes historical trajectories {(x1,y1),(x2,y2),…,(x... Th ,y Th )}、Best finish line and learnable hints embedding z prompt The concatenated input sequence is: X input The input is fed into an LSTM trajectory generator, and the hidden state h is calculated step by step. t and cell loading C t : h t ,C t =LSTM(X i1p11 [t],h 111 ,C t-1 ); For each time step t, the output of the LSTM model is: y1 = W1·h1 + b1; Where y1 is the predicted trajectory point, W y and b y These are learnable parameters; Generate trajectory points for the next N frames: {(x 1111 ,and 1111 ),(x Th+2 ,and Th+2 ),…,(x Th+N ,and Th+N )}; The reconstruction loss function is: in, It is the averaging coefficient. It is the summation symbol, indicating the summation from t=T h +1 to t=T h The losses at all future moments of +N are summed up. It is the predicted trajectory point y t and the actual trajectory points The square of the Euclidean distance between them; The total loss function is: L total =L recon +λ1L kd_feat +λ2L kd_dest ; Among them, L kd_feat For feature alignment loss, L kd_dest The endpoint distribution alignment loss is defined by λ1 and λ2, which are loss weight coefficients.

8. The autonomous navigation method for mobile robots based on pedestrian trajectory prediction and obstacle avoidance according to claim 7, characterized in that, Step S4 specifically includes: S41: Use the RRT* algorithm to sample M candidate sub-target points {p} in the passable area. sg,1 ,p sg,2 ,…p sg,M }, for each p sg,i Call the estimation and prediction network to calculate C risk (p sg,i ), calculate each p sg,i Total cost C total (p sg,i ), Optimal target point selection: C total (p sg,i )=w1·C risk (p sg,i )+w2·C density (p sg,i )+w3·C distance (p sg,i )+w4·C angle (p sg,i )+w5·C smooth (p sg,i ); Where, p sg,i These are candidate target points, w1 to w5 are weight coefficients, and C risk (p sg,i ) is a dynamic risk assessment item, C density (p sg,i ) is the obstacle density term, C distance (p sg,i ) is the distance term, C angle (p sg,i ) is the direction angle term, C smooth (p sg,i ) is the path smoothing term; For each dynamic obstacle O i The set of trajectories for its future N frames is generated using LSTM+GAN: Calculate p sg The probability of being covered by the trajectory within the time window [t0, t0+Δt]: Where, r safe It is the robot's safe radius, dist(p) sg ,τ i,k (t) represents point p. sg With trajectory τ i,k The distance between positions at time t It is an indicator function, which is 1 when the condition is met and 0 otherwise; Then dynamic risk assessment item C risk (p sg The formula is as follows: Where N is the total number of dynamic obstacles, v Oi It is an obstacle O i The faster the speed, the higher the risk; With p as the center, the statistical radius R density Number of lidar points N points ; Then the obstacle density term C density (p sg The formula is as follows: Where, ρ max It is the maximum permissible density; Then the distance term: Among them, D max It is the maximum possible distance in the scene; Direction Angle Term C angle (p sg The formula is as follows: Where H is the robot's current position and θ is the global target direction. and sub-target direction The angle between H and p is connected using a B-spline curve. sg Calculate the mean curvature κ avg ; Then the path smoothing term C smooth (p sg )as follows: Among them, κ avg It is the mean curvature, κ max It is the robot's maximum permissible curvature; S42: Select the optimal sub-target point from the candidate sub-target points and use the BIRRT algorithm to perform global path planning from the robot's current position to the sub-target.

9. The autonomous navigation method for mobile robots based on pedestrian trajectory prediction and obstacle avoidance according to claim 7, characterized in that, Step S5 specifically includes: S51: Input the robot's current state, including its current position H = (x, y) and current velocity v. current ω current Environmental information, dynamic obstacle prediction trajectory, and sub-target point p sg =(x sg ,y sg Output candidate velocity pairs (v, ω) that satisfy the constraints in the velocity space: Among them, v min It is the minimum linear velocity allowed for the robot, v max ω is the maximum linear velocity allowed for the robot. min It is the minimum angular velocity allowed for the robot, ω max It is the maximum angular velocity allowed for the robot; For each candidate velocity pair (v, ω), predict the trajectory for the next 12 frames: τ robot (v,ω)=H 1 ,H 2 ,…,H t ,…,H 12 ; Among them, H t The predicted position of the robot in frame t when it moves at velocity (v,ω) is calculated recursively from the kinematic model. Calculate the collision risk between the robot's trajectory and the trajectory of dynamic obstacles: Where σ is the risk diffusion coefficient, It is a dynamic obstacle O j At the predicted location at time t, J represents the total number of dynamic obstacles.

10. The autonomous navigation method for mobile robots based on pedestrian trajectory prediction and obstacle avoidance according to claim 9, characterized in that, The improved prediction function design is as follows: G( v,ω )=α·Heading(ν,ω)+β·Clearance(v,ω)+γ·Velocity(ν,ω)+∈· Risk(v,ω); Among them, Heading towards the target: Heading(v,ω)=cosθ; Obstacle distance: Velocity: Velocity(v,ω)=v; Predicted trajectory risks: For each candidate velocity pair (v,ω), calculate G(v,ω) and select the optimal velocity (v). best ,ω best ), and implement obstacle avoidance.

Citation Information

Cited By

  • Dynamic test system based on heat dissipation performance of radiator

    CN121595241A

  • Robot optimal path planning method based on 3D environment semantics and dynamic obstacle avoidance

    CN122062704A

  • Mobile robot local path planning method and system based on task constraint

    CN122217330A