Motion injury avoidance path planning method based on high-precision positioning
By using high-precision positioning and 3D path planning algorithms, safe routes are generated that avoid long downhill sections and extreme weather conditions, solving the problem of sports injury avoidance in existing technologies and improving the safety and health of outdoor sports.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- SHANDONG KAIWEN COLLEGE OF SCI & TECH
- Filing Date
- 2026-04-24
- Publication Date
- 2026-06-12
Smart Images

Figure CN122192359A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of high-precision positioning technology, and in particular to a motion damage avoidance path planning method based on high-precision positioning. Background Technology
[0002] The purpose of sports injury avoidance route planning is to provide outdoor athletes (such as runners, hikers, and trail runners) with a safe and customized navigation route that minimizes the risk of physical impairment in complex terrain or extreme weather conditions.
[0003] Existing technologies for route navigation in complex terrain or extreme weather conditions heavily rely on static two-dimensional road network topology for path optimization. These search rules tend to simply find the shortest or least time-consuming connecting path among known road network nodes. Because the operational space is limited to a two-dimensional plane and lacks real-time perception of high-frequency dynamic environmental physical states, conventional navigation frameworks struggle to characterize and effectively guide navigation in response to the true three-dimensional elevation changes of the terrain and real-time weather variations. When dealing with long downhill scenarios, this operational mode directly outputs a shortcut along a straight line down the slope, forcing the user to endure extremely high continuous centrifugal impact loads, easily leading to acute cartilage wear of the meniscus in the lower limbs or ligament sprains in the knee. In high-temperature and intense sunlight conditions, existing technologies can only rely on static global weather warnings sent from the backend, with limited effectiveness. Therefore, improvements are needed. Summary of the Invention
[0004] The purpose of this invention is to address the shortcomings of existing technologies by proposing a motion damage avoidance path planning method based on high-precision positioning.
[0005] To achieve the above objectives, the present invention adopts the following technical solution: a motion damage avoidance path planning method based on high-precision positioning, comprising the following steps:
[0006] Obtain the location start point, location end point, timestamp, and elevation map and latitude / longitude coordinates of the location area;
[0007] Elevation features are extracted from the elevation map using a gradient analysis algorithm.
[0008] Building polygons are extracted from the elevation map using a contour extraction algorithm;
[0009] Random sampling is performed in the three-dimensional search space, and the anisotropic connectivity cost between the positioning starting point and the random sampling point is calculated using the random expansion tree algorithm;
[0010] A set of return routes pointing to the positioning endpoint is generated based on the anisotropic connectivity cost and the elevation features.
[0011] Calculate the solar azimuth and solar altitude angle at the current moment based on the timestamp and the latitude and longitude coordinates;
[0012] Based on the current solar azimuth angle, the current solar altitude angle, and the building polygon, extract the dynamic shadow features and glare sections of the turnaround route set;
[0013] Based on the dynamic shadow features and the glare road segments, the set of return routes is optimized to obtain the target path.
[0014] Preferably, the steps to obtain the location start point, location end point, timestamp, and elevation map and latitude / longitude coordinates of the location area are as follows:
[0015] Receive a map retrieval request containing the location start point, location end point, and permission information;
[0016] After the permission information is verified, the original elevation data of the area corresponding to the positioning start point and the positioning end point is extracted from the cloud database.
[0017] The original elevation data of the region is divided into grids to obtain multiple elevation data blocks;
[0018] Spatial coordinate stitching is performed on the multiple elevation data blocks to generate a stitched map;
[0019] The missing data holes in the stitched map are filled using a bilinear interpolation algorithm to generate an elevation map of the location area.
[0020] Preferably, the steps for extracting elevation features from the elevation map using the gradient analysis algorithm are as follows:
[0021] Traverse each spatial grid point in the elevation map and extract the three-dimensional coordinates of each spatial grid point;
[0022] Based on the three-dimensional coordinates, adjacent grid points are determined in the elevation map. The least squares method is used to fit the surface of the adjacent grid points to obtain a local tangent plane.
[0023] Calculate the surface normal vector of the local tangent plane, and normalize the surface normal vector to obtain the standard normal vector;
[0024] Obtain the gravity direction vector, and calculate the slope angle of each spatial grid point based on the standard normal vector and the gravity direction vector, using the following formula: ,in Indicates the slope angle, Represents the standard normal vector. This represents the direction vector of gravity. This represents the dot product operation. This represents the magnitude of the standard normal vector. This represents the magnitude of the gravity direction vector. Represents the inverse cosine function;
[0025] Extract the height coordinates of each spatial grid point, and concatenate the height coordinates and the slope angle to generate a feature vector;
[0026] The elevation feature is obtained by integrating all the aforementioned feature vectors.
[0027] Preferably, the steps for extracting building polygons from the elevation map using a contour extraction algorithm are as follows:
[0028] Extract all data points from the elevation map, and use morphological opening operations to filter out the background of all data points, separating ground points from non-ground points;
[0029] The non-ground points with a distance difference less than the connectivity threshold are subjected to region growing and aggregation to obtain multiple building clusters;
[0030] Extract the boundary perimeter points of each of the multiple building clusters, and use the convex hull generation algorithm to calculate the envelope of the boundary perimeter points to generate a two-dimensional polygon;
[0031] Calculate the average elevation value of each building cluster, and use a stretching algorithm to stretch the two-dimensional polygon in three dimensions based on the average elevation value to generate a three-dimensional polygon bounding box;
[0032] Extract the normal parameters corresponding to each face of the three-dimensional polygon bounding box, and combine the normal parameters and the three-dimensional polygon bounding box to construct the building polygon.
[0033] Preferably, the step of calculating the anisotropic connectivity cost between the positioning starting point and the random sampling point using the random expanded tree algorithm specifically includes:
[0034] Using the positioning starting point as the root node of the random extended tree algorithm, random sampling points are generated in the three-dimensional search space corresponding to the elevation feature;
[0035] Obtain the expanded node set, calculate the Euclidean distance between each node in the expanded node set and the random sampling point, and select the node with the smallest Euclidean distance as a candidate parent node;
[0036] Extract the slope angle corresponding to the line segment connecting the candidate parent node and the random sampling point from the elevation feature;
[0037] Obtain the safe slope threshold, and calculate the anisotropic connectivity cost based on the Euclidean distance, penalty amplification factor, safe slope threshold, and slope angle, using the following formula: ,in This represents the cost of the anisotropic connection. Represents the Euclidean distance, This represents the penalty amplification factor. Indicates the slope angle, This represents the safe slope threshold. This represents the natural exponential function. This represents the function that takes the maximum value.
[0038] Preferably, the step of generating a set of return routes pointing to the positioning endpoint based on the anisotropic connectivity cost and the elevation features specifically includes:
[0039] Determine whether the cost of the anisotropic connection is greater than the cost-based circuit breaker threshold;
[0040] If the cost of the anisotropic connection is greater than the cost circuit breaker threshold, the connection edge between the candidate parent node and the random sampling point is discarded. In the elevation feature, a horizontal contour line region is extracted with the candidate parent node as the center. An alternative sampling point is regenerated in the horizontal contour line region. The alternative sampling point is connected to the candidate parent node to generate an updated tree node.
[0041] The path cost of adjacent nodes is recalculated within the neighborhood of the updated tree node, and rewiring is performed on the adjacent nodes with smaller path costs. The node sequence after rewiring is recorded.
[0042] Until the generated node enters the convergence range corresponding to the positioning endpoint, multiple connected branch paths from the positioning starting point to the positioning endpoint are extracted from the node sequence, and redundant bending nodes are removed from the connected branch paths. The multiple connected branch paths after the convergence process are used to generate the set of return routes.
[0043] Preferably, the steps for calculating the solar azimuth angle and solar altitude angle at the current time based on the timestamp and the latitude and longitude coordinates are as follows:
[0044] Extract the Gregorian date from the timestamp, calculate the accumulated day value based on the Gregorian date, and then calculate the solar declination angle at the current moment based on the accumulated day value;
[0045] Extract the local longitude and local latitude from the latitude and longitude coordinates;
[0046] Calculate the true solar time parameters based on the local longitude, and calculate the solar hour angle based on the true solar time parameters;
[0047] The solar altitude angle at the current moment is calculated based on the local latitude, the solar declination angle, and the solar hour angle, using the following formula: ,in This indicates the solar altitude angle at the current moment. Indicates the local latitude. This indicates the solar declination angle. Indicates the solar hour angle, Represents the arcsine function. Represents the sine function. Represents the cosine function;
[0048] Substituting the current solar altitude angle, the local latitude, and the solar declination angle into the astronomical azimuth formula, the solar azimuth angle at the current moment is obtained.
[0049] Preferably, the steps for extracting the dynamic shadow features and glare sections of the set of return routes are as follows:
[0050] Construct a light source direction vector based on the current solar azimuth angle and the current solar altitude angle;
[0051] Discretize and sample each route in the set of turnaround routes to obtain route sampling points;
[0052] A virtual test ray is emitted from the route sampling point in a direction opposite to the light source direction vector, and it is determined whether the virtual test ray geometrically intersects with the building polygon;
[0053] If the virtual test ray intersects geometrically with the building polygon, the corresponding route sampling point is marked as a dynamic shadow feature;
[0054] If the virtual test rays do not intersect geometrically, the route travel direction vector corresponding to the route sampling point is extracted, the angle between the route travel direction vector and the light source direction vector is calculated, and the route segment with the angle less than the visual blindness threshold is marked as a glare segment.
[0055] Preferably, the step of optimizing the set of return routes based on the dynamic shadow features and the glare road segments to obtain the target path is as follows:
[0056] Extract candidate routes from the set of turnaround routes, and divide the candidate routes into multiple evaluation segments;
[0057] The multiple assessment road segments are traversed. If an assessment road segment is not marked as the dynamic shadow feature, the environmental thermal radiation integral value is calculated based on the environmental parameters and the length of the assessment road segment.
[0058] Detect whether the evaluated road segment overlaps with the glare road segment; if they overlap, assign a visual blind spot penalty value.
[0059] Substituting the environmental thermal radiation integral value and the visual blind spot penalty value into the state transition cost function for cumulative summation, the overall evaluation cost of each alternative route is calculated using the following formula: ,in Indicates the first The cumulative state cost of each assessed road segment Indicates the first The cumulative state cost of each assessed road segment The thermal radiation cost is calculated based on the integral value of the environmental thermal radiation. The penalty value for the visual blind spot. Indices are positive integers;
[0060] Compare the overall evaluation costs of all candidate routes, and select the route with the lowest overall evaluation cost as the target path.
[0061] Compared with the prior art, the advantages and positive effects of the present invention are as follows:
[0062] This invention uses the timestamps of the starting and ending points of the positioning location, along with the elevation map and latitude / longitude coordinates of the positioning area, as basic data inputs. It extracts elevation features from the elevation map using a gradient analysis algorithm and extracts building polygons using a contour extraction algorithm, directly constructing a continuous spatial model with three-dimensional physical properties. Random sampling is performed in the three-dimensional search space, and the anisotropic connectivity cost between the starting point and the randomly sampled points is calculated using a random expansion tree algorithm. This transforms a single distance metric into a multi-dimensional spatial metric including terrain slope. Based on the anisotropic connectivity cost and elevation features, a set of return routes pointing to the positioning endpoint is generated, avoiding the high-intensity centrifugal contraction load generated by long-distance straight steep slopes and reducing the longitudinal physical impact on the athlete's knee joint. Furthermore, the solar azimuth and solar altitude angles at the current time are calculated based on the timestamps and latitude / longitude coordinates. Combined with the dynamic shadow features and glare sections extracted from the return route set using building polygons, this expands sports health protection from simple mechanical injuries to protection against secondary injuries induced by environmental physical factors. By integrating dynamic shadow characteristics and glare road sections, the path optimization of the turnaround route set is obtained to obtain the target path. This achieves a deep integration of spatial geometric hard constraints and dynamic environmental state transition equations. While maximizing the use of natural or artificial shelters to avoid high temperature exposure, it also avoids the blind spot caused by going downhill in strong sunlight, thus ensuring the safety of outdoor sports. Attached Figure Description
[0063] Figure 1 This is a schematic diagram of the steps of the present invention. Detailed Implementation
[0064] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the invention.
[0065] Please see Figure 1 This invention provides a technical solution: a motion injury avoidance path planning method based on high-precision positioning, comprising the following steps:
[0066] Obtain the location start point, location end point, timestamp, and elevation map and latitude / longitude coordinates of the location area;
[0067] Emptiness features are extracted from elevation maps using gradient analysis algorithms.
[0068] Building polygons are extracted from elevation maps using contour extraction algorithms;
[0069] Random sampling is performed in the three-dimensional search space, and the anisotropic connectivity cost between the localization starting point and the random sampling point is calculated using the random expansion tree algorithm.
[0070] A set of return routes pointing to the positioning endpoint is generated based on the anisotropic connection cost and elevation characteristics;
[0071] Calculate the solar azimuth and solar altitude angle at the current time based on the timestamp and latitude / longitude coordinates;
[0072] Based on the current solar azimuth angle, the current solar altitude angle, and the building polygon, extract the dynamic shadow features and glare sections of the turnaround route set;
[0073] The target path is obtained by optimizing the set of turnaround routes based on dynamic shadow characteristics and glare road sections.
[0074] In this embodiment, the steps of obtaining the location start point, location end point, timestamp, and elevation map and latitude / longitude coordinates of the location area are as follows: receiving a map retrieval request containing the location start point, location end point, and permission information; after verification based on the permission information, extracting the original elevation data of the corresponding location start point and location end point area from the cloud database; dividing the original elevation data of the area into grids to obtain multiple elevation data blocks; splicing the multiple elevation data blocks using spatial coordinates to generate a spliced map; and using a bilinear interpolation algorithm to fill in the missing data holes in the spliced map to generate an elevation map of the location area.
[0075] Specifically, it receives map retrieval requests containing the location start point, location end point, and permission information; parses the authentication token and request timestamp in the map retrieval request; compares the authentication token with the locally stored valid access control list; confirms successful permission verification; sends a spatial bounding box query command for the corresponding location start point and location end point to the cloud database via the network interface; downloads the original elevation data of the area within the spatial bounding box; reads the longitude, latitude, and elevation values of each data point in the original elevation data of the area; sets specific parameters for grid segmentation; divides the east-west span and north-south span into equidistant grid intervals; sets the basic grid side length value to 5 meters; transforms the longitude and latitude coordinates to a unified projected coordinate system; determines the number of grid rows and columns by performing rounding and division operations on the total width and total height in the projected coordinate system using the basic grid side length value; and finally, it converts the original elevation data of the area into the original elevation data of the region. The elevation data is mapped into the corresponding grid interval to obtain multiple elevation data blocks. The overlapping areas of the multiple elevation data blocks are aligned and deduplicated. All interconnected elevation data blocks are stitched together to generate a stitched map. The stitched map is traversed to find blank grid cells without any elevation values as missing data holes. For each missing data hole, the four nearest known elevation grid points (up, down, left, and right) are found. The elevation values of the four known elevation grid points are extracted. The planar Euclidean distance from the center point of the missing data hole to the center of these four known elevation grid points is calculated. Using the reciprocal of the distance as a weighting factor, the elevation values of the four known elevation grid points are multiplied by the sum of the corresponding weighting factors. The weighted average is calculated by dividing by the sum of the four weighting factors. The weighted average is then filled into the blank grid cell corresponding to the missing data hole to generate an elevation map of the located area.
[0076] In this embodiment, the steps for extracting elevation features from an elevation map using the gradient analysis algorithm are as follows: traversing each spatial grid point in the elevation map and extracting the three-dimensional coordinates of each spatial grid point; determining adjacent grid points in the elevation map based on the three-dimensional coordinates, and performing surface fitting on the adjacent grid points using the least squares method to obtain local tangent planes; calculating the surface normal vector of the local tangent plane and normalizing the surface normal vector to obtain the standard normal vector; obtaining the gravity direction vector, and calculating the slope angle of each spatial grid point based on the standard normal vector and the gravity direction vector, using the following formula: ,in Indicates the slope angle. Represents the standard normal vector. This represents the direction vector of gravity. This represents the dot product operation. This represents the magnitude of the standard normal vector. This represents the magnitude of the gravity direction vector. The function represents the inverse cosine function; the height coordinates of each spatial grid point are extracted, and the height coordinates and slope angle are concatenated to generate a feature vector; all feature vectors are integrated to construct the elevation feature.
[0077] Specifically, the process iterates through each spatial grid point in the elevation map, reads the 3D coordinates of each spatial grid point in the projected coordinate system, sets the search range of adjacent grid points to a 3x3 8-neighborhood matrix around the target point, extracts the 3D coordinates of all grid points falling within the 8-neighborhood matrix to determine adjacent grid points, constructs a local spatial surface model formed by each spatial grid point and its adjacent grid points, sets the objective function to the sum of squares of the elevation errors from all adjacent grid points to the surface to be fitted, calculates the partial derivatives of the coefficients in the objective function and sets the partial derivatives to 0, and solves the linear equation. The fitting coefficients are obtained, and a local tangent plane is constructed based on these coefficients. The surface normal vector of the local tangent plane is calculated, and the component values of the surface normal vector on the three coordinate axes are extracted. The square root of the sum of the squares of the three component values is calculated to obtain the vector magnitude. The three component values are divided by the vector magnitude for normalization to obtain the standard normal vector. Based on the Earth's gravity physical model, the gravity direction is preset to vertically downward, generating gravity direction vectors with coordinates of 0, 0, and -1 in three-dimensional space. The slope angle of each spatial grid point is calculated by combining the obtained standard normal vector and gravity direction vector, using the following formula: ,in Indicates the slope angle. Represents the standard normal vector. This represents the direction vector of gravity. This represents the dot product operation. This represents the magnitude of the standard normal vector. This represents the magnitude of the gravity direction vector. The inverse cosine function is used to extract the elevation values representing the absolute vertical height from the three-dimensional coordinates as the elevation coordinates of each spatial grid point. The elevation coordinates are placed at the beginning of the array and the slope angle is placed at the second position according to a fixed data structure order. The array is then spliced to generate a feature vector containing the spatial state. The feature vectors corresponding to all spatial grid points in the elevation map are summarized to construct the elevation features.
[0078] In this embodiment, the steps for extracting building polygons from an elevation map using a contour extraction algorithm are as follows: Extract all data points from the elevation map; perform background filtering on all data points using morphological opening operations to separate ground points from non-ground points; perform region growing and aggregation on non-ground points with distance differences less than a connectivity threshold to obtain multiple building clusters; extract the boundary points of each building cluster; perform envelope calculation on the boundary points using a convex hull generation algorithm to generate two-dimensional polygons; calculate the average elevation value of each building cluster; perform three-dimensional stretching on the two-dimensional polygons based on the average elevation value using a stretching algorithm to generate a three-dimensional polygon bounding box; extract the normal parameters corresponding to each face of the three-dimensional polygon bounding box; and combine the normal parameters and the three-dimensional polygon bounding box to construct the building polygons.
[0079] Specifically, all data points with accompanying 3D coordinates are extracted from the elevation map. A rectangular window with a side length of 10 meters is set as the structuring element for morphological opening operations. The rectangular window slides across the elevation matrix formed by all data points. At each sliding position, the lowest elevation value within the rectangular window's coverage area is found, and the original elevation value is replaced with the lowest elevation value to perform an erosion operation. The same rectangular window is then slid across the eroded matrix again to find the highest elevation value and replace it to perform a dilation operation. The result of the dilation operation is used as the estimated ground base model. The difference between the original elevation of all data points and the estimated ground base model elevation is calculated. Non-ground points with a difference greater than 1 meter and ground points with a difference less than 1 meter are separated. A connectivity threshold of 2 meters is set based on the standard building spacing. An unprocessed non-ground point is randomly selected as a seed point. The 3D Euclidean distance between the seed point and other non-ground points is calculated. Non-ground points with an Euclidean distance less than 2 meters are grouped into the same set and used as new seed points for further evaluation. This process is repeated after region growing. The aggregation operation divides connected non-ground points into multiple building clusters. It identifies the geometric feature point at the outermost convex position of each building cluster as the boundary perimeter point. A scan-line algorithm is used to find the bottommost and leftmost boundary perimeter point as the pole. Other boundary perimeter points are sorted in ascending order according to their polar angle relative to the pole. The sorted point set is traversed sequentially, and points that indicate a leftward turn are discarded. The remaining boundary perimeter points are connected, and an envelope calculation is performed to generate a 2D polygon. The elevation values of all points in each building cluster are summed and divided by the total number of points to calculate the average elevation value. The edges of the 2D polygon are stretched along a direction perpendicular to the plane of the 2D polygon, with the stretching height set to the calculated average elevation value. The top and bottom faces are closed to generate a 3D polygon bounding box. The plane equations corresponding to the top, bottom, and sides of the 3D polygon bounding box are extracted. Normal parameters are parsed from the plane equations. The normal parameters of the corresponding building and the 3D polygon bounding box are combined to construct the building polygon.
[0080] In this embodiment, the specific steps for calculating the anisotropic connection cost between the positioning starting point and the random sampling point using the random expansion tree algorithm are as follows: The positioning starting point is used as the root node of the random expansion tree algorithm, and random sampling points are generated in the three-dimensional search space corresponding to the elevation features; the expanded node set is obtained, and the Euclidean distance between each node in the expanded node set and the random sampling point is calculated; the node with the smallest Euclidean distance is selected as the candidate parent node; the slope angle corresponding to the line segment connecting the candidate parent node and the random sampling point is extracted from the elevation features; a safe slope threshold is obtained, and the anisotropic connection cost is calculated based on the Euclidean distance, the penalty amplification factor, the safe slope threshold, and the slope angle, using the following formula: ,in This represents the cost of anisotropic connectivity. Represents Euclidean distance. This represents the penalty amplification factor. Indicates the slope angle. Indicates the safe slope threshold. This represents the natural exponential function. This represents the function that takes the maximum value.
[0081] Specifically, the starting point is stored in the memory stack as the root node of the random expansion tree algorithm. The latitude and longitude boundary of the 3D search space is set as the circumscribed rectangle formed by extending 500 meters outward from the starting and ending points. Within the boundary of the 3D search space, a pseudo-random number generator generates random sampling points with latitude, longitude, and elevation information. The set of all currently recorded expanded nodes in the memory stack is obtained. The 3D linear Euclidean distance between each node in the expanded node set and the random sampling point is calculated one by one. The node with the smallest Euclidean distance is selected as the candidate parent node by comparing the distance values. The space connecting the candidate parent node and the random sampling point is retrieved from the elevation features. For all grid areas traversed by the line segment, the maximum slope angle corresponding to each point within that grid area is extracted. A safe slope threshold is set based on physical stress test data related to irreversible joint damage caused by human walking. By analyzing the maximum tolerance angle of healthy individuals during continuous downhill walking, a safe slope threshold of 15 degrees is set. The difference between the extracted slope angle and the set safe slope threshold is calculated to obtain the bias exceeding the safe range. A penalty amplification factor is preset to amplify the penalty effect. This penalty amplification factor is used to increase the connection cost exceeding the safe slope threshold. Anisotropic connection costs are calculated based on the Euclidean distance penalty amplification factor, the safe slope threshold, and the slope angle. The formula is: ,in This represents the cost of anisotropic connectivity. Represents Euclidean distance. This indicates the penalty amplification factor, specifically set to a value of 5. Indicates the slope angle. Indicates the safe slope threshold. This represents the natural exponential function. This represents the function that takes the maximum value. This represents the comparison reference constant.
[0082] In this embodiment, the steps for generating a set of return routes pointing to the positioning endpoint based on anisotropic connection cost and elevation features are as follows: First, determine whether the anisotropic connection cost is greater than the cost-breaking threshold. If the anisotropic connection cost is greater than the cost-breaking threshold, discard the connection edge between the candidate parent node and the random sampling point. Extract a horizontal contour line region centered on the candidate parent node in the elevation features, and regenerate alternative sampling points within the horizontal contour line region. Connect the alternative sampling points with the candidate parent node to generate an updated tree node. Recalculate the path cost of adjacent nodes within the neighborhood of the updated tree node, and perform rewiring operations on adjacent nodes with lower path costs. Record the node sequence after rewiring. Continue until the generated node enters the convergence range corresponding to the positioning endpoint. Backtrack from the node sequence to extract multiple connected branch paths from the positioning start point to the positioning endpoint, and remove redundant bending nodes from the connected branch paths. Converge the processed multiple connected branch paths to generate a set of return routes.
[0083] Specifically, a specific value for the cost-based circuit breaker threshold is set. Combining the standard maximum single-step movement distance of 20 meters and the maximum penalty index, the cost-based circuit breaker threshold is calculated to be 500. The currently calculated anisotropic connection cost is extracted and compared with the cost-based circuit breaker threshold. If the anisotropic connection cost is greater than the cost-based circuit breaker threshold of 500, the current connection route is deemed to have a maximum risk of physical damage, and the connection edge between the candidate parent node and the random sampling point is discarded. In the elevation features, a search is performed outward from the 3D coordinates of the candidate parent node, extracting areas with height differences within ±0.5 meters as horizontal contour lines. Within these horizontal contour lines, a uniform distribution function is used to regenerate alternative sampling points that meet the height restrictions. Parent-child connections are established between these alternative sampling points and the candidate parent node to generate updated tree nodes. A spherical space with a radius of 30 meters is set as the neighborhood, centered on the updated tree node. All adjacent nodes falling within this neighborhood are searched, and the cumulative connected distance from the starting point through the updated tree node to adjacent nodes and the sum of the slope penalties are extracted. As a new path cost, the new path cost is compared with the original path cost of the adjacent node. If the new path cost is smaller, the connection between the adjacent node and its original parent node is removed, and the parent node of the adjacent node is redirected to the updated tree node to perform a rewiring operation. The node relationship after rewiring is updated and recorded in the node sequence of the memory stack. The above search and expansion steps are executed repeatedly, and the straight-line distance between the newly generated node and the positioning endpoint is monitored until the straight-line distance is less than the set convergence range of 10 meters, at which point the generation of sampling points stops. The parent node is searched step by step from the end node where the positioning endpoint is located in the node sequence of the memory stack. Multiple connected branch paths up to the positioning starting point are extracted backtracking. The two line segments formed by every three adjacent nodes in the connected branch path are extracted in turn. The angle between the two line segments is calculated and it is determined whether the angle is greater than 170 degrees. If it is greater than 170 degrees, it is determined to be close to a straight line shape. The middle node is removed to eliminate redundant and bent nodes. The data of the multiple connected branch paths after smoothing are summarized and formatted to construct a set of return routes.
[0084] In this embodiment, the steps for calculating the solar azimuth and solar altitude angle at the current moment based on the timestamp and latitude / longitude coordinates are as follows: Extract the Gregorian calendar date from the timestamp, calculate the accumulated day value based on the Gregorian calendar date, and then calculate the solar declination angle at the current moment based on the accumulated day value; extract the local longitude and local latitude from the latitude / longitude coordinates; calculate the true solar time parameter based on the local longitude, and then calculate the solar hour angle based on the true solar time parameter; calculate the solar altitude angle at the current moment based on the local latitude, solar declination angle, and solar hour angle, using the following formula: ,in This indicates the solar altitude angle at the current moment. Indicates the local latitude. Indicates the solar declination angle. Indicates solar hour angle, Represents the arcsine function. Represents the sine function. This represents the cosine function; by substituting the current solar altitude angle, local latitude, and solar declination angle into the astronomical azimuth formula, the solar azimuth angle at the current moment is obtained.
[0085] Specifically, the accompanying high-precision timestamp format is parsed to separate the year, month, and specific number of days from the Gregorian calendar date. The leap year identifier is extracted, and the accumulated days are calculated by summing the days from January 1st of the current year to the current Gregorian calendar date. Based on the light deflection angle caused by the Earth's revolution around the sun, the solar declination angle is obtained by calculating the accumulated days using a preset constant. The angle is then distributed according to the 365-day revolution period. The sine transformation value obtained by subtracting the accumulated days corresponding to the vernal equinox from the accumulated days value yields the solar declination angle. Finally, the local longitude and latitude parameters are extracted from the coordinates. The system calculates the time zone difference by setting a 15-degree longitude interval corresponding to one hour. It then calculates the angular difference between the local longitude and the central longitude of the standard time zone, multiplies this angular difference by 4 minutes to convert it into a time deviation, and calculates the mean solar time by combining the current hour, minute, and second from the timestamp with the time deviation. Based on the mean time difference formula caused by the Earth's orbital eccentricity, it adds time compensation to obtain the true solar time parameter. This true solar time parameter is then converted into hourly angles with 12 noon as the 0-degree baseline. For every hourly deviation, it is converted to 15 degrees to obtain the solar hour angle. Finally, it reads the calculated local latitude solar declination angle and solar hour angle to calculate the current solar altitude angle using the following formula: ,in This indicates the solar altitude angle at the current moment. Indicates the local latitude. Indicates the solar declination angle. Indicates solar hour angle, Represents the arcsine function. Represents the sine function. This represents the cosine function. It substitutes the current solar altitude angle, local latitude, and solar declination angle into the astronomical azimuth angle calculation formula specified by spherical trigonometry, and uses the cosine theorem to calculate the deflection angle relative to due south or due north, outputting the current solar azimuth angle.
[0086] In this embodiment, the steps for extracting dynamic shadow features and glare segments from the set of return routes are as follows: A light source direction vector is constructed based on the current solar azimuth and solar altitude angles; each route in the set of return routes is discretized and sampled to obtain route sampling points; a virtual test ray is emitted from the route sampling points along a direction opposite to the light source direction vector, and it is determined whether the virtual test ray geometrically intersects with the building polygon; if the virtual test ray geometrically intersects with the building polygon, the corresponding route sampling point is marked as a dynamic shadow feature; if the virtual test ray does not geometrically intersect, the route travel direction vector corresponding to the route sampling point is extracted, the angle between the route travel direction vector and the light source direction vector is calculated, and route segments with an angle less than the visual blindness threshold are marked as glare segments.
[0087] Specifically, the calculated solar azimuth and solar altitude angles at the current moment are extracted. In a 3D Cartesian coordinate system, trigonometric functions are projected based on the elevation and azimuth angles to calculate the direction vector pointing to the light source. This direction vector is then normalized to construct a standard light source direction vector. Each 3D route trajectory in the set of return routes is extracted, with a spatial sampling step size of 1.5 meters. Every 1.5 meters along the route's direction of travel, a data point with 3D coordinates is extracted to obtain a route sampling point. Each route sampling point serves as a ray emission source. An infinitely extending 3D mathematical ray is constructed as a virtual test ray along the opposite direction of the constructed light source direction vector, simulating the direction of sunlight hitting the ground. A bounding box collision detection algorithm is then used to test the relationship between the virtual test ray and the surface boundaries of all extracted building polygons within the scene. Calculate the coordinates of the intersection point between the parametric equation of the virtual test ray and the plane equation of the building polygon. Determine if the intersection point is within the boundary of the building polygon. If a valid intersection is determined, a geometric intersection occurs. Confirm that the ray is blocked by the building and mark the corresponding route sampling point in the attribute matrix as a shadow cover state to form a dynamic shadow feature. If the virtual test ray does not geometrically intersect with any building polygon within the effective calculation distance, extract the spatial difference vector from the current route sampling point to the next route sampling point as the route travel direction vector. Calculate the dot product of the route travel direction vector and the light source direction vector and derive the spatial angle between them. Set the visual blindness threshold of instantaneous glare caused by strong light to 30 degrees. Record the route segments with an angle less than 30 degrees in the attribute matrix and merge all areas that meet the judgment conditions as glare road segments.
[0088] In this embodiment, the steps for optimizing the turnaround route set based on dynamic shadow features and glare road segments to obtain the target path are as follows: First, candidate routes are extracted from the turnaround route set and divided into multiple evaluation segments. Second, the multiple evaluation segments are traversed. If an evaluation segment is not marked as having dynamic shadow features, the environmental thermal radiation integral value is calculated based on environmental parameters and the length of the evaluation segment. Third, the overlap between the evaluation segment and the glare road segment is detected. If they overlap, a visual blind spot penalty value is assigned. Fourth, the environmental thermal radiation integral value and the visual blind spot penalty value are substituted into the state transition cost function for cumulative summation to calculate the overall evaluation cost of each candidate route. The formula is: ,in Indicates the first The cumulative state cost of each assessed road segment Indicates the first The cumulative state cost of each assessed road segment The cost of thermal radiation is calculated based on the integral value of environmental thermal radiation. This is the penalty value for visual blind spots. The index is a positive integer; compare the overall evaluation cost of all candidate routes and select the route with the lowest overall evaluation cost as the target path.
[0089] Specifically, multiple candidate routes are retrieved from the filtered and summarized set of turnaround routes. Following the trajectory of each candidate route, multiple evaluation segments are divided using the line connecting two adjacent trajectory turning points as a basic unit. A coordinate matching algorithm is used to compare the spatial coordinate range of each evaluation segment with the coverage area of the dynamic shadow feature, determining whether all coordinate points of the evaluation segment fall completely within the dynamic shadow feature. If an evaluation segment has areas exposed to direct sunlight, it is not marked as a dynamic shadow feature. Real-time ambient temperature and ultraviolet intensity transmitted from meteorological sensors are obtained, and the actual physical length of the evaluation segment in three-dimensional space is extracted. The actual physical length is then compared with the ambient temperature and ultraviolet intensity. Multiplying the ambient temperature and ultraviolet intensity coefficient, the integral value of environmental thermal radiation that the human body can withstand in the exposed area is calculated. Using a spatial overlap determination method, the latitude and longitude ranges of the two endpoints of the assessed road segment are checked to see if they overlap with the latitude and longitude recording ranges of the glare road segment. If overlap is determined, a base value for extremely high physical risk caused by a single glare interference is preset, and a fixed visual blind spot penalty value of 2000 is assigned. The integral value of environmental thermal radiation and the assigned visual blind spot penalty value are substituted into the state transition cost function set by dynamic programming. The cost is continuously accumulated and summed for each road segment along the path from the starting point to the end point to obtain the final accumulated overall evaluation cost for each alternative route. The formula is: ,in Indicates the current number The cumulative state cost at the end of each assessed road segment. Indicates the previous one, i.e., the first one. The cumulative state cost at the end of each assessed road segment. This represents the cost of thermal radiation calculated based on the integral value of environmental thermal radiation. Indicates the penalty value for visual blind spots. This represents a positive integer index that identifies the order of road segments during the recursive calculation process. After the cost accumulation of all candidate routes is completed, a sorting algorithm is used to compare the overall evaluation cost values of all candidate routes, and the specific route with the lowest overall evaluation cost value is extracted and output as the target path.
[0090] The above are merely preferred embodiments of the present invention and are not intended to limit the present invention in any other way. Any person skilled in the art may make changes or modifications to the above-disclosed technical content to create equivalent embodiments that can be applied to other fields. However, any simple modifications, equivalent changes, and modifications made to the above embodiments based on the technical essence of the present invention without departing from the scope of the present invention shall still fall within the protection scope of the present invention.
Claims
1. A motion injury avoidance path planning method based on high-precision positioning, characterized in that, Includes the following steps: Obtain the location start point, location end point, timestamp, and elevation map and latitude / longitude coordinates of the location area; Elevation features are extracted from the elevation map using a gradient analysis algorithm. Building polygons are extracted from the elevation map using a contour extraction algorithm; Random sampling is performed in the three-dimensional search space, and the anisotropic connectivity cost between the positioning starting point and the random sampling point is calculated using the random expansion tree algorithm; A set of return routes pointing to the positioning endpoint is generated based on the anisotropic connectivity cost and the elevation features. Calculate the solar azimuth and solar altitude angle at the current moment based on the timestamp and the latitude and longitude coordinates; Based on the current solar azimuth angle, the current solar altitude angle, and the building polygon, extract the dynamic shadow features and glare sections of the turnaround route set; Based on the dynamic shadow features and the glare road segments, the set of return routes is optimized to obtain the target path.
2. The motion injury avoidance path planning method based on high-precision positioning according to claim 1, characterized in that, The specific steps to obtain the location start point, location end point, timestamp, and elevation map and latitude / longitude coordinates of the location area are as follows: Receive a map retrieval request containing the location start point, location end point, and permission information; After the permission information is verified, the original elevation data of the area corresponding to the positioning start point and the positioning end point is extracted from the cloud database. The original elevation data of the region is divided into grids to obtain multiple elevation data blocks; Spatial coordinate stitching is performed on the multiple elevation data blocks to generate a stitched map; The missing data holes in the stitched map are filled using a bilinear interpolation algorithm to generate an elevation map of the location area.
3. The motion damage avoidance path planning method based on high-precision positioning according to claim 2, characterized in that, The specific steps for extracting elevation features from the elevation map using the gradient analysis algorithm are as follows: Traverse each spatial grid point in the elevation map and extract the three-dimensional coordinates of each spatial grid point; Based on the three-dimensional coordinates, adjacent grid points are determined in the elevation map. The least squares method is used to fit the surface of the adjacent grid points to obtain a local tangent plane. Calculate the surface normal vector of the local tangent plane, and normalize the surface normal vector to obtain the standard normal vector; Obtain the gravity direction vector, and calculate the slope angle of each spatial grid point based on the standard normal vector and the gravity direction vector, using the following formula: ,in Indicates the slope angle, Represents the standard normal vector. This represents the direction vector of gravity. This represents the dot product operation. This represents the magnitude of the standard normal vector. This represents the magnitude of the gravity direction vector. Represents the inverse cosine function; Extract the height coordinates of each spatial grid point, and concatenate the height coordinates and the slope angle to generate a feature vector; The elevation feature is obtained by integrating all the aforementioned feature vectors.
4. The motion damage avoidance path planning method based on high-precision positioning according to claim 1, characterized in that, The specific steps for extracting building polygons from the elevation map using the contour extraction algorithm are as follows: Extract all data points from the elevation map, and use morphological opening operations to filter out the background of all data points, separating ground points from non-ground points; The non-ground points with a distance difference less than the connectivity threshold are subjected to region growing and aggregation to obtain multiple building clusters; Extract the boundary perimeter points of each of the multiple building clusters, and use the convex hull generation algorithm to calculate the envelope of the boundary perimeter points to generate a two-dimensional polygon; Calculate the average elevation value of each building cluster, and use a stretching algorithm to stretch the two-dimensional polygon in three dimensions based on the average elevation value to generate a three-dimensional polygon bounding box; Extract the normal parameters corresponding to each face of the three-dimensional polygon bounding box, and combine the normal parameters and the three-dimensional polygon bounding box to construct the building polygon.
5. The motion injury avoidance path planning method based on high-precision positioning according to claim 3, characterized in that, The specific steps for calculating the anisotropic connectivity cost between the location starting point and the random sampling point using the random extended tree algorithm are as follows: Using the positioning starting point as the root node of the random extended tree algorithm, random sampling points are generated in the three-dimensional search space corresponding to the elevation feature; Obtain the expanded node set, calculate the Euclidean distance between each node in the expanded node set and the random sampling point, and select the node with the smallest Euclidean distance as a candidate parent node; Extract the slope angle corresponding to the line segment connecting the candidate parent node and the random sampling point from the elevation feature; Obtain the safe slope threshold, and calculate the anisotropic connectivity cost based on the Euclidean distance, penalty amplification factor, safe slope threshold, and slope angle, using the following formula: ,in This represents the cost of the anisotropic connection. Represents the Euclidean distance, This represents the penalty amplification factor. Indicates the slope angle, This represents the safe slope threshold. This represents the natural exponential function. This represents the function that takes the maximum value.
6. The motion damage avoidance path planning method based on high-precision positioning according to claim 5, characterized in that, The specific steps for generating a set of return routes pointing to the positioning endpoint based on the anisotropic connectivity cost and the elevation features are as follows: Determine whether the cost of the anisotropic connection is greater than the cost-based circuit breaker threshold; If the cost of the anisotropic connection is greater than the cost circuit breaker threshold, the connection edge between the candidate parent node and the random sampling point is discarded. In the elevation feature, a horizontal contour line region is extracted with the candidate parent node as the center. An alternative sampling point is regenerated in the horizontal contour line region. The alternative sampling point is connected to the candidate parent node to generate an updated tree node. The path cost of adjacent nodes is recalculated within the neighborhood of the updated tree node, and rewiring is performed on the adjacent nodes with smaller path costs. The node sequence after rewiring is recorded. Until the generated node enters the convergence range corresponding to the positioning endpoint, multiple connected branch paths from the positioning starting point to the positioning endpoint are extracted from the node sequence, and redundant bending nodes are removed from the connected branch paths. The multiple connected branch paths after the convergence process are used to generate the set of return routes.
7. The motion damage avoidance path planning method based on high-precision positioning according to claim 1, characterized in that, The specific steps for calculating the solar azimuth and solar altitude angle at the current moment based on the timestamp and latitude / longitude coordinates are as follows: Extract the Gregorian date from the timestamp, calculate the accumulated day value based on the Gregorian date, and then calculate the solar declination angle at the current moment based on the accumulated day value; Extract the local longitude and local latitude from the latitude and longitude coordinates; Calculate the true solar time parameters based on the local longitude, and calculate the solar hour angle based on the true solar time parameters; The solar altitude angle at the current moment is calculated based on the local latitude, the solar declination angle, and the solar hour angle, using the following formula: ,in This indicates the solar altitude angle at the current moment. Indicates the local latitude. This indicates the solar declination angle. Indicates the solar hour angle, Represents the arcsine function. Represents the sine function. Represents the cosine function; Substituting the current solar altitude angle, the local latitude, and the solar declination angle into the astronomical azimuth formula, the solar azimuth angle at the current moment is obtained.
8. The motion damage avoidance path planning method based on high-precision positioning according to claim 7, characterized in that, The specific steps for extracting the dynamic shadow features and glare sections of the set of return routes are as follows: Construct a light source direction vector based on the current solar azimuth angle and the current solar altitude angle; Discretize and sample each route in the set of turnaround routes to obtain route sampling points; A virtual test ray is emitted from the route sampling point in a direction opposite to the light source direction vector, and it is determined whether the virtual test ray geometrically intersects with the building polygon; If the virtual test ray intersects geometrically with the building polygon, the corresponding route sampling point is marked as a dynamic shadow feature; If the virtual test rays do not intersect geometrically, the route travel direction vector corresponding to the route sampling point is extracted, the angle between the route travel direction vector and the light source direction vector is calculated, and the route segment with the angle less than the visual blindness threshold is marked as a glare segment.
9. The motion damage avoidance path planning method based on high-precision positioning according to claim 8, characterized in that, The specific steps for optimizing the set of return routes based on the dynamic shadow features and the glare road segments to obtain the target path are as follows: Extract candidate routes from the set of turnaround routes, and divide the candidate routes into multiple evaluation segments; The multiple assessment road segments are traversed. If an assessment road segment is not marked as the dynamic shadow feature, the environmental thermal radiation integral value is calculated based on the environmental parameters and the length of the assessment road segment. Detect whether the evaluated road segment overlaps with the glare road segment; if they overlap, assign a visual blind spot penalty value. Substituting the environmental thermal radiation integral value and the visual blind spot penalty value into the state transition cost function for cumulative summation, the overall evaluation cost of each alternative route is calculated using the following formula: ,in Indicates the first The cumulative state cost of each assessed road segment Indicates the first The cumulative state cost of each assessed road segment The thermal radiation cost is calculated based on the integral value of the environmental thermal radiation. The penalty value for the visual blind spot. Indices are positive integers; Compare the overall evaluation costs of all candidate routes, and select the route with the lowest overall evaluation cost as the target path.