Discrete point smoothing-based welt path generation method and device, equipment and storage medium

Through the edge path generation method based on discrete point smoothing, the target trajectory is generated using grid maps and optimization algorithms, the problem of inability to effectively edge in the existing technology is solved, and efficient edge movement and stability improvement in complex environments is achieved.

CN119739154AActive Publication Date: 2025-04-01SHENZHEN YUETONG TECHNOLOGY CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202411716484.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-27
Publication Date
2025-04-01
Estimated Expiration
2044-11-27

AI Technical Summary

Technical Problem

The existing household sweeping robot embedding solution cannot effectively cover the concave and convexity of the side walls. It is suitable for straight walls and circular robots, and cannot be embed along arc walls. The parameter adjustment is complex, which affects the convenience of actual application.

Method used

Through the edge path generation method based on discrete point smoothing, the edge raster is obtained using the raster map, combined with the starting point, cost function and constraint terms, the target trajectory is optimized, and the motion trajectory is established through the five-degree polynomial to solve the problem of straight lines and curved lines, ensuring that the robot does not collide when moving along the edge curve.

Benefits of technology

It realizes efficient grip movement in curved walls and complex environments, improves the stability of grip movement, simplifies parameter adjustment, is suitable for robots of various shapes, and enhances the convenience and stability of application.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119739154A_ABST
    Figure CN119739154A_ABST
Patent Text Reader

Abstract

The invention discloses a welt path generation method and device based on discrete point smoothing, equipment and a storage medium, and relates to the technical field of path planning, and the method comprises the steps: obtaining a plurality of edge grids according to a grid map; a plurality of optimization points are obtained according to the center point, the starting point, the cost function and the constraint term of each edge grid, and the starting point is the center point of the moving object; obtaining a target trajectory according to each optimization point; according to the target trajectory and the starting point, a motion trajectory is obtained, the obstacle plane is fitted by solving the cost function with constraints, the straight line and curve road edge problems can be solved at the same time, the fitted curve is outside the road edge, and it is guaranteed that a moving object does not collide when following the edge curve; and a polynomial curve is used as a smooth path for entering and exiting from the welt, so that the moving object moves smoothly and is easy to debug.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of path planning technology, and in particular to a method, device, equipment and storage medium for generating an edge-fitting path based on discrete point smoothing. Background Art

[0002] Currently, the commonly used edge-adjacent solutions for household sweeping robots usually use a top-mounted laser radar to obtain a laser point cloud, and then perform segmented straight-line fitting to identify the wall. At the same time, a single-point edge-adjacent sensor is placed on the side to control the distance, or multiple sensors are used to collect data, and fixed edge-adjacent actions are performed according to the location of obstacles on the front and sides.

[0003] Due to the problems of sensor height and collection range, the above two solutions cannot cover the unevenness of the side walls with the real-time collected sensor data. They are not suitable for taller robots and only work well for straighter walls. They cannot be attached along curved walls and are only suitable for round robots. They are not suitable for square robots. In addition, the above two solutions require many steps and parameters to be adjusted, which is inconvenient in practical applications.

[0004] Therefore, how to improve the stability of edge movement is a problem that needs to be solved urgently.

[0005] The above contents are only used to assist in understanding the technical solution of the present application and do not constitute an admission that the above contents are prior art. Summary of the invention

[0006] The main purpose of this application is to provide a method, device, equipment and storage medium for generating an edge path based on discrete point smoothing, aiming to solve the technical problem of how to improve the stability of edge movement.

[0007] To achieve the above purpose, the present application proposes a method for generating an edge path based on discrete point smoothing, the method comprising:

[0008] According to the grid map, multiple edge grids are obtained;

[0009] According to the center point of each edge grid, the starting point, the cost function and the constraint item, a plurality of optimization points are obtained, wherein the starting point is the center point of the moving object;

[0010] According to each of the optimization points, a target trajectory is obtained;

[0011] A motion trajectory is obtained according to the target trajectory and the starting point.

[0012] In one embodiment, the step of obtaining a plurality of edge grids according to the grid map includes:

[0013] Acquire a grid map, and select a grid based on the grid map, wherein the grid map includes a grid marked as an obstacle;

[0014] If there is at least one unmarked grid among the first fixed number of adjacent grids of the grid, and the grid is detected to be located to the right of the starting point, then the grid is an edge grid;

[0015] or,

[0016] If more than a second fixed number of grids among a first fixed number of adjacent grids of the grid are edge grids, and the grids are detected to be located to the right of the starting point, the grid is an edge grid.

[0017] In one embodiment, before obtaining a plurality of optimization points according to the edge grid center points, the starting points, the cost functions and the constraint items, the method further includes:

[0018] Based on each of the edge grids, obtaining a center point of each of the edge grids;

[0019] Traversing the angle formed by the starting point and the center point of each edge grid;

[0020] If the change value between the angles is less than a preset threshold, the center point of the edge grid is deleted.

[0021] In one embodiment, the plurality of optimization points are obtained according to the edge grid center point, the starting point, the cost function and the constraint item, including:

[0022] Select an edge grid center point as the first operation point;

[0023] Obtaining a first cost term according to a vector change of the edge grid center point adjacent to the first operating point;

[0024] Obtaining a second cost term according to the distance between the starting point and the center point of the edge grid;

[0025] Establishing a cost function according to the first cost item, the second cost item, the first weight coefficient and the second weight coefficient;

[0026] Establishing a line segment from the starting point to the first operating point, and using the line segment as a constraint item of the cost function;

[0027] Calculate the total cost based on the constraint item and the cost function, and select the coordinates corresponding to the minimum total cost as the coordinates of the optimization point;

[0028] The above steps are performed on each edge grid center point in sequence to obtain a plurality of optimization points.

[0029] In one embodiment, obtaining a target trajectory according to each of the optimization points includes:

[0030] Selecting one of the optimization points as a second operating point;

[0031] Obtaining a direction line segment between the second operating point and a next adjacent optimization point of the second operating point;

[0032] Based on the direction perpendicular to the direction line segment, obtaining the target point by moving the second operating point toward the starting point by a fixed distance;

[0033] Traversing each of the optimization points, executing the above steps, and obtaining a plurality of target points;

[0034] A target trajectory is obtained based on each of the target points.

[0035] In one embodiment, obtaining a motion trajectory according to the target trajectory and the starting point includes:

[0036] Based on the distance from the starting point to the target trajectory, selecting a target point from the target trajectory as a target end point;

[0037] Establishing a quintic polynomial from the starting point to the target end point;

[0038] According to the fifth-order polynomial, a motion trajectory is obtained;

[0039] or,

[0040] If the preset range centered at the starting point coincides with the target trajectory, the target trajectory is used as the motion trajectory.

[0041] In one embodiment, the method comprises:

[0042] Get the preset planning period;

[0043] The motion trajectory is updated according to the preset planning period.

[0044] In addition, to achieve the above purpose, the present application also proposes a device for generating an edge path based on discrete point smoothing, and the device for generating an edge path based on discrete point smoothing includes:

[0045] An acquisition module, used for acquiring a plurality of edge grids according to a grid map;

[0046] An optimization module, used to obtain multiple optimization points according to the center point of each edge grid, the starting point, the cost function and the constraint item, wherein the starting point is the center point of the moving object;

[0047] An adjustment module, used for obtaining a target trajectory according to each of the optimization points;

[0048] The output module is used to obtain a motion trajectory according to the target trajectory and the starting point.

[0049] In addition, to achieve the above-mentioned purpose, the present application also proposes a device for generating a edging path based on discrete point smoothing, the device comprising: a memory, a processor, and a computer program stored on the memory and executable on the processor, the computer program being configured to implement the steps of the method for generating a edging path based on discrete point smoothing as described above.

[0050] In addition, to achieve the above-mentioned purpose, the present application also proposes a storage medium, which is a computer-readable storage medium, and a computer program is stored on the storage medium. When the computer program is executed by the processor, the steps of the method for generating an edge path based on discrete point smoothing as described above are implemented.

[0051] In addition, to achieve the above-mentioned purpose, the present application also provides a computer program product, which includes a computer program. When the computer program is executed by a processor, the steps of the method for generating an edge path based on discrete point smoothing as described above are implemented.

[0052] The present application obtains multiple edge grids based on the grid map; obtains multiple optimization points based on the center point, starting point, cost function and constraint items of each edge grid, wherein the starting point is the center point of the moving object; obtains the target trajectory based on each optimization point; obtains the motion trajectory based on the target trajectory and the starting point. The present application can solve the straight and curved roadside problems at the same time by solving the constraint-based cost function to fit the obstacle plane, and the fitted curve is outside the roadside to ensure that the moving object will not collide when following the edge curve; the polynomial curve is used as a smooth path for entering and exiting the edge, so that the moving object moves smoothly and is easy to debug. BRIEF DESCRIPTION OF THE DRAWINGS

[0053] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and, together with the description, serve to explain the principles of the present application.

[0054] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, for ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.

[0055] Figure 1 A flowchart diagram of Embodiment 1 of the method for generating an edge path based on discrete point smoothing provided in the present application;

[0056] Figure 2 The grid map involved in the method for generating an edge path based on discrete point smoothing in the embodiment of the present application;

[0057] Figure 3 The optimized path analysis diagram involved in the edge-adjacent path generation method based on discrete point smoothing in the embodiment of the present application;

[0058] Figure 4 Target trajectory analysis diagram involved in the method for generating an edge path based on discrete point smoothing in an embodiment of the present application;

[0059] Figure 5 The motion trajectory analysis diagram involved in the method for generating an edge path based on discrete point smoothing in the embodiment of the present application;

[0060] Figure 6 A schematic diagram of a simplified flow chart of a method for generating an edge path based on discrete point smoothing provided in Example 1 of the present application;

[0061] Figure 7 This is a schematic diagram of the module structure of a device for generating an edge path based on discrete point smoothing according to an embodiment of the present application;

[0062] Figure 8 Schematic diagram of the device structure of the hardware operating environment involved in the method for generating an edge path based on discrete point smoothing in an embodiment of the present application.

[0063] The purpose, features and advantages of this application will be further described in conjunction with the embodiments and with reference to the accompanying drawings. DETAILED DESCRIPTION

[0064] It should be understood that the specific embodiments described herein are only used to explain the technical solutions of the present application and are not used to limit the present application.

[0065] In order to better understand the technical solution of the present application, a detailed description will be given below in conjunction with the accompanying drawings and specific implementation methods.

[0066] The main solution of the embodiment of the present application is: according to the grid map, multiple edge grids are obtained; according to the center point, starting point, cost function and constraint item of each edge grid, multiple optimization points are obtained, wherein the starting point is the center point of the moving object; according to each optimization point, a target trajectory is obtained; according to the target trajectory and the starting point, a motion trajectory is obtained.

[0067] At present, the commonly used household sweeping robot edge-adhering solution usually uses the top laser radar to obtain the laser point cloud, and then performs segmented straight line fitting to identify the wall. At the same time, a single-point edge-adhering sensor is placed on the side to control the distance, or multiple sensors are used to collect data, and fixed edge-adhering actions are performed according to the location of obstacles on the front and sides. Due to the problems of sensor height and collection range, the real-time collected sensor data cannot cover the unevenness of the side wall. The above two solutions are not suitable for taller robots. They are only effective for straighter walls. They cannot be attached to curved walls. They are only suitable for round robots, not square robots. In addition, there are many steps and parameters that need to be adjusted, which is inconvenient in practical applications.

[0068] The present application provides a solution, which is to obtain multiple edge grids according to the grid map; obtain multiple optimization points according to the center point, starting point, cost function and constraint items of each edge grid, wherein the starting point is the center point of the moving object; obtain the target trajectory according to each optimization point; obtain the motion trajectory according to the target trajectory and the starting point. The present application can solve the straight and curved roadside problems at the same time by fitting the obstacle plane by solving the constrained quadratic programming problem, and the fitted curve is outside the roadside to ensure that the moving object will not collide when following the edge curve; use the polynomial curve as a smooth path for entering and exiting the edge, so that the moving object moves smoothly and is easy to debug.

[0069] It should be noted that the execution subject of this embodiment may be a computing service device with data processing, network communication and program running functions, such as a tablet computer, a personal computer, a mobile phone, etc., or an electronic device capable of realizing the above functions, a household robot, etc. The following takes a household robot as an example to illustrate this embodiment and the following embodiments.

[0070] Based on this, the embodiment of the present application provides a method for generating an edge path based on discrete point smoothing, referring to Figure 1 , Figure 1 This is a flow chart of the first embodiment of the method for generating an edge path based on discrete point smoothing of the present application.

[0071] In this embodiment, the method for generating an edge path based on discrete point smoothing includes steps S10 to S40:

[0072] Step S10, obtaining a plurality of edge grids according to the grid map;

[0073] It should be noted that a raster map is a type of map that represents geographic spatial data in a grid format. In this type of map, the entire map area is divided into many small square units, each of which is called a "grid". Each grid contains specific numerical or categorical information that can represent different geographic features, such as terrain height, vegetation type, land use, etc. Figure 2 ,In this application, the grid in the red area represents an obstacle (wall), and the edge grid can be the green part in the figure, representing the edge of the obstacle.

[0074] It is understandable that by storing obstacle information through a grid map, the problem of not being able to perceive the obstacle in real time due to irregular edges of the obstacle is avoided.

[0075] In a feasible implementation, step S10 may include obtaining a grid map, selecting a grid based on the grid map, wherein the grid map includes a grid marked as an obstacle; if there is at least one unmarked grid among a first fixed number of adjacent grids of the grid, and the grid is detected to be located to the right of a starting point, then the grid is an edge grid; if more than a second fixed number of grids among a first fixed number of adjacent grids of the grid are edge grids, and the grid is detected to be located to the right of a starting point, then the grid is an edge grid.

[0076] It should be noted that the obstacle may be a wall, furniture or the like; the first fixed number may be a certain number; the starting point may be the center of the moving object; and the moving object may be a household robot.

[0077] For example, when there are 8 grids centered on the selected grid and one of the 8 grids is not marked as an obstacle, the selected grid is an edge grid. Alternatively, when there are 8 grids centered on the selected grid and more than two of the 8 grids are edge grids, the selected grid is an edge grid.

[0078] The above are only two feasible implementations of step S10 provided in this embodiment, and this embodiment does not specifically limit the specific implementation of step S10.

[0079] Step S20, obtaining a plurality of optimization points according to the center point of each edge grid, the starting point, the cost function and the constraint item, wherein the starting point is the center point of the moving object;

[0080] It should be noted that the cost function can be a function used to optimize the center point of the edge grid, the constraint term can be a set of feasible solutions that define the cost function, that is, a solution that satisfies all constraints, and the optimization point can be.

[0081] In a feasible implementation, step S20 may include steps A21 to A27:

[0082] Step A21, selecting a center point of an edge grid as a first operation point;

[0083] It should be noted that the first operating point may be the coordinates of the center point of the grid that needs to be optimized.

[0084] Step A22, obtaining a first cost term according to a vector change of the edge grid center point adjacent to the first operating point;

[0085] It should be noted that the edge grid center points adjacent to the first operation point can be the first two operation points of the current first operation point. The first cost item is the smoothness cost, which represents the overall smoothness of the path. Based on the three operation points, the difference between the vectors of adjacent points is used as the optimization cost.

[0086] For example, Figure 3 , where p n Represents the coordinates of the center point of the nth grid, x n and n Its coordinate value is Represents the smoothness cost, which means the modulus of the change in the vector formed between the three points of the optimization result.

[0087] Step A23, obtaining a second cost term according to the distance between the starting point and the center point of the edge grid;

[0088] It should be noted that the second cost term may be obtained based on the distance between the starting point and the center point of the edge grid.

[0089] For example, in order to ensure that the optimization result is still close to the original curb and does not change too much, the cost term 2 is set to the distance from the original point to ensure that the optimized point is still close to the original curb. Represents the distance between the optimized coordinates and the original corresponding points.

[0090] Step A24, establishing a cost function according to the first cost item, the second cost item, the first weight coefficient and the second weight coefficient;

[0091] For example, Represents the optimal value after solution. There are n+1 points in total. Then the cost term is expressed as:

[0092]

[0093] Where: J represents the total cost, w 1 、w 2Represents the weight coefficient. The solution goal is to make J as small as possible.

[0094] Step A25, establishing a line segment from the starting point to the first operating point, and using the line segment as a constraint item of the cost function;

[0095] For example, Figure 3 As shown in the figure, when solving, the optimization point needs to be outside the obstacle to avoid collision, so the point needs to be constrained on the line segment from the center of the robot to the starting point. The line segment used as the constraint item is a n To express:

[0096]

[0097] Step A26, calculating the total cost based on the constraint item and the cost function, and selecting the coordinates corresponding to the minimum total cost as the coordinates of the optimization point;

[0098] Step A27, executing the above steps on each edge grid center point in turn to obtain a plurality of the optimization points.

[0099] For example, Figure 4 As shown, the optimization point is Figure 4 Medium blue dot.

[0100] It can be understood that by solving the optimization problem, that is, solving the cost function with constraints and taking the minimum cost as the solution goal, it can help identify the best way to plan the route, thereby improving the mobility efficiency.

[0101] The above are only two feasible implementations of step S20 provided in this embodiment, and this embodiment does not specifically limit the specific implementation of step S20.

[0102] Step S30, obtaining a target trajectory according to each of the optimization points;

[0103] It should be noted that the target trajectory can be obtained based on a line composed of optimization points.

[0104] In a feasible implementation, step S30 may include selecting one of the optimization points as the second operating point; obtaining a direction line segment between the second operating point and the next adjacent optimization point of the second operating point; obtaining a target point by moving the second operating point toward the starting point by a fixed distance based on a direction perpendicular to the direction line segment; traversing each of the optimization points, executing the above steps, and obtaining a plurality of target points; and obtaining a target trajectory based on each of the target points.

[0105] It should be noted that the direction line segment may be a line segment connecting the second operating point and the next adjacent optimization point.

[0106] After obtaining the optimized points after the solution, point the direction of each point (second operating point) to the next adjacent point, connect the two points to obtain the direction line segment, and then translate each point to the center of the robot by half the robot width (fixed distance) in a direction perpendicular to the direction line segment to obtain the target trajectory of the robot movement, such as Figure 4 , the target trajectory is the trajectory composed of green points.

[0107] It can be understood that through translation optimization, the path can be made smoother, the turning points can be reduced, sudden turns can be avoided, and it is beneficial to stabilize the motion control of the robot.

[0108] The above is only a feasible implementation of step S30 provided in this embodiment, and this embodiment does not specifically limit the specific implementation of step S30.

[0109] Step S40, obtaining a motion trajectory according to the target trajectory and the starting point.

[0110] It should be noted that the motion trajectory is the movement trajectory of the moving object.

[0111] In a feasible implementation, step S40 may include selecting a target point from the target trajectory as the target endpoint based on the distance from the starting point to the target trajectory; establishing a quintic polynomial from the starting point to the target endpoint; obtaining a motion trajectory according to the quintic polynomial; or, if a preset range centered on the starting point coincides with the target trajectory, taking the target trajectory as the motion trajectory.

[0112] like Figure 5 As shown, the starting point is the center point of the moving object. Taking the moving object as a robot as an example, first determine whether there is an overlapping part between the robot and the target trajectory, that is, when the preset range centered on the starting point coincides with the target trajectory, the target trajectory is used as the motion trajectory. If there is no overlapping part between the robot and the target trajectory, a point is selected from the target trajectory as the target end point based on the distance from the robot to the target trajectory. For example, when the distance from the robot to the target trajectory is proportional to the distance from the starting point to the target end point, a quintic polynomial between the starting point and the target end point is established. Figure 5 The red curve in the middle is the curve represented by the quintic polynomial, which is used as the motion trajectory.

[0113] It can be understood that by defining the boundary conditions of the trajectory, the quintic polynomial can accurately control the position, velocity, and acceleration of the starting and ending points, which helps the robot achieve precise motion control and improve safety and efficiency.

[0114] This embodiment provides a method for generating a smooth edge path based on discrete points. According to a grid map, multiple edge grids are obtained; according to the center point, starting point, cost function and constraint items of each edge grid, multiple optimization points are obtained, wherein the starting point is the center point of the moving object; according to each optimization point, a target trajectory is obtained; according to the target trajectory and the starting point, a motion trajectory is obtained. This application can solve the straight and curved roadside problems at the same time by fitting the obstacle plane by solving a constrained quadratic programming problem, and the fitted curve is outside the roadside to ensure that the moving object will not collide when following the edge curve; a polynomial curve is used as a smooth path for entering and exiting the edge, so that the moving object moves smoothly and is easy to debug.

[0115] For example, to help understand the implementation process of the method for generating an edge path based on discrete point smoothing obtained by combining this embodiment with the above-mentioned embodiment 1, please refer to Figure 6 , Figure 6 A brief flowchart of a method for generating an edge path based on discrete point smoothing is provided, specifically:

[0116] First, obtain the historical memory grid map. The grid map contains grids marked as obstacles. Select a grid, determine whether this grid is an edge grid, and detect whether this edge grid is on the right side of the robot. Then, establish an optimization problem based on the center point of the edge grid (the optimization problem includes cost function and constraints) and solve the optimization problem. Specifically, the center points of other edge grids adjacent to the center point of the edge grid can be the first two operating points of the current center point of the edge grid, indicating the overall smoothness of the path. Based on the three operating points, the vector difference of the adjacent points is used as the smoothness cost. In order to ensure that the optimization result can still be close to the original curb and not change too much, the second cost term is set to the distance from the target point to the center point of the robot to ensure that the optimized point is still close to the original curb, representing the distance from the optimized coordinate to the original corresponding point. The solution goal is to minimize the total cost. The solution is used as the optimization point, and the optimization point is translated to the center of the robot for a distance. The motion path from the target point to the target end point is established according to the fifth-order polynomial, and then the robot moves according to the motion trajectory. The present application can solve the problem of straight and curved curbs at the same time, and the fitted curve is outside the curb, ensuring that the moving object will not collide when following the edge curve; using a polynomial curve as a smooth path for entering and exiting the edge makes the moving object move smoothly, which is friendly to the shape of the moving object and can be used for moving objects of any shape. In the process of solving the edge path, a constrained cost function is constructed, which has a simple form and is therefore easy to debug and has high solving efficiency.

[0117] It should be noted that the above examples are only used to understand the present application and do not constitute a limitation on the method for generating an edge path based on discrete point smoothing in the present application. More simple transformations based on this technical concept are all within the scope of protection of the present application.

[0118] This application also provides a device for generating an edge path based on discrete point smoothing, please refer to Figure 7 , the device for generating an edge path based on discrete point smoothing comprises:

[0119] An acquisition module 10 is used to acquire a plurality of edge grids according to a grid map;

[0120] An optimization module 20, configured to obtain a plurality of optimization points according to the center points of the edge grids, the starting point, the cost function and the constraint items, wherein the starting point is the center point of the moving object;

[0121] An adjustment module 30, used to obtain a target trajectory according to each of the optimization points;

[0122] The output module 40 is used to obtain a motion trajectory according to the target trajectory and the starting point.

[0123] The device for generating a border path based on discrete point smoothing provided by the present application adopts the method for generating a border path based on discrete point smoothing in the above embodiment, and can solve the technical problem of generating a border path based on discrete point smoothing. Compared with the prior art, the beneficial effects of the device for generating a border path based on discrete point smoothing provided by the present application are the same as the beneficial effects of the method for generating a border path based on discrete point smoothing provided by the above embodiment, and other technical features of the device for generating a border path based on discrete point smoothing are the same as the features disclosed in the above embodiment method, and are not described in detail here.

[0124] The acquisition module 10 is further used to acquire a grid map, select a grid based on the grid map, wherein the grid map includes grids marked as obstacles; if there is at least one unmarked grid among a first fixed number of adjacent grids of the grid, and the grid is detected to be located to the right of a starting point, then the grid is an edge grid; or, if more than a second fixed number of grids among a first fixed number of adjacent grids of the grid are edge grids, and the grid is detected to be located to the right of a starting point, then the grid is an edge grid.

[0125] The adjustment module 30 is also used to obtain the center point of each edge grid based on each edge grid; traverse the angle formed by the starting point and the center point of each edge grid; if the change value between the angles is less than a preset threshold, delete the center point of the edge grid.

[0126] The optimization module 20 is also used to select an edge grid center point as the first operating point; obtain a first cost item based on the vector change of the edge grid center point adjacent to the first operating point; obtain a second cost item based on the distance between the starting point and the edge grid center point; establish a cost function based on the first cost item, the second cost item, the first weight coefficient and the second weight coefficient; establish a line segment from the starting point to the first operating point, and use the line segment as a constraint item of the cost function; calculate the total cost based on the constraint item and the cost function, and select the coordinates corresponding to the minimum total cost as the coordinates of the optimization point; and perform the above steps on each edge grid center point in turn to obtain multiple optimization points.

[0127] The adjustment module 30 is also used to select one of the optimization points as the second operating point; obtain the direction line segment between the second operating point and the next adjacent optimization point of the second operating point; based on the direction perpendicular to the direction line segment, obtain the target point by moving the second operating point toward the starting point by a fixed distance; traverse each of the optimization points, execute the above steps, and obtain multiple target points; obtain the target trajectory based on each of the target points.

[0128] The output module 40 is also used to select a target point from the target trajectory as a target end point based on the distance from the starting point to the target trajectory; establish a quintic polynomial from the starting point to the target end point; obtain a motion trajectory according to the quintic polynomial; or, if a preset range centered on the starting point coincides with the target trajectory, use the target trajectory as the motion trajectory.

[0129] The acquisition module 10 is further used to acquire a preset planning period; and update the motion trajectory according to the preset planning period.

[0130] The present application provides a device for generating a border path based on discrete point smoothing, and the device for generating a border path based on discrete point smoothing includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute the method for generating a border path based on discrete point smoothing in the above-mentioned embodiment one.

[0131] Reference below Figure 8, which shows a schematic diagram of the structure of a device for generating a smoothed edge path based on discrete points suitable for implementing the embodiment of the present application. The device for generating a smoothed edge path based on discrete points in the embodiment of the present application may include but is not limited to mobile terminals such as mobile phones, laptop computers, digital broadcast receivers, PDAs (Personal Digital Assistants), PADs (Portable Application Descriptions), PMPs (Portable Media Players), vehicle-mounted terminals (such as vehicle-mounted navigation terminals), etc., and fixed terminals such as digital TVs, desktop computers, etc. Figure 8 The illustrated device for generating an edge path based on discrete point smoothing is merely an example and should not bring any limitation to the functions and scope of use of the embodiments of the present application.

[0132] like Figure 8 As shown, the device for generating a smoothed edge path based on discrete points may include a processing device 1001 (e.g., a central processing unit, a graphics processor, etc.), which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM: Read Only Memory) 1002 or a program loaded from a storage device 1003 to a random access memory (RAM: Random Access Memory) 1004. Various programs and data required for the operation of the device for generating a smoothed edge path based on discrete points are also stored in RAM1004. The processing device 1001, ROM1002, and RAM1004 are connected to each other via a bus 1005. An input / output (I / O) interface 1006 is also connected to the bus. Typically, the following systems can be connected to the I / O interface 1006: input devices 1007 including, for example, a touch screen, a touchpad, a keyboard, a mouse, an image sensor, a microphone, an accelerometer, a gyroscope, etc.; output devices 1008 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; storage devices 1003 including, for example, a magnetic tape, a hard disk, etc.; and communication devices 1009. The communication device 1009 can allow the discrete point smoothing-based edge path generation device to communicate with other devices wirelessly or by wire to exchange data. Although the discrete point smoothing-based edge path generation device with various systems is shown in the figure, it should be understood that it is not required to implement or have all the systems shown. More or fewer systems may be implemented or have instead.

[0133] In particular, according to the embodiments disclosed in the present application, the process described above with reference to the flowchart can be implemented as a computer software program. For example, the embodiments disclosed in the present application include a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program includes a program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network through a communication device, or installed from a storage device 1003, or installed from a ROM 1002. When the computer program is executed by the processing device 1001, the above-mentioned functions defined in the method of the embodiment disclosed in the present application are executed.

[0134] The device for generating a border path based on discrete point smoothing provided by the present application adopts the method for generating a border path based on discrete point smoothing in the above embodiment, and can solve the technical problem of generating a border path based on discrete point smoothing. Compared with the prior art, the beneficial effects of the device for generating a border path based on discrete point smoothing provided by the present application are the same as the beneficial effects of the method for generating a border path based on discrete point smoothing provided by the above embodiment, and other technical features in the device for generating a border path based on discrete point smoothing are the same as the features disclosed in the method of the previous embodiment, and will not be repeated here.

[0135] It should be understood that the various parts disclosed in this application can be implemented by hardware, software, firmware or a combination thereof. In the description of the above embodiments, specific features, structures, materials or characteristics can be combined in any one or more embodiments or examples in a suitable manner.

[0136] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art who is familiar with the present technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.

[0137] The present application provides a computer-readable storage medium having computer-readable program instructions (ie, computer programs) stored thereon, and the computer-readable program instructions are used to execute the method for generating an edge-fitting path based on discrete point smoothing in the above-mentioned embodiment.

[0138] The computer-readable storage medium provided in the present application may be, for example, a USB flash drive, but is not limited to electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, systems or devices, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In this embodiment, the computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in combination with an instruction execution system, system or device. The program code contained on the computer-readable storage medium may be transmitted using any appropriate medium, including but not limited to: wires, optical cables, RF (Radio Frequency), etc., or any suitable combination of the above.

[0139] The computer-readable storage medium may be included in the device for generating a smoothed edge path based on discrete points; or may exist independently without being assembled into the device for generating a smoothed edge path based on discrete points.

[0140] The computer-readable storage medium carries one or more programs. When the one or more programs are executed by a device for generating a path along a boundary based on discrete point smoothing, the device for generating a path along a boundary based on discrete point smoothing: obtains multiple edge grids according to a grid map; obtains multiple optimization points according to the center point, starting point, cost function and constraint items of each edge grid, wherein the starting point is the center point of the moving object; obtains a target trajectory according to each optimization point; and obtains a motion trajectory according to the target trajectory and the starting point.

[0141] Computer program code for performing the operations of the present application may be written in one or more programming languages ​​or a combination thereof, including object-oriented programming languages ​​such as Java, Smalltalk, C++, and conventional procedural programming languages ​​such as "C" or similar programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as a separate software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., via the Internet using an Internet service provider).

[0142] The flow chart and block diagram in the accompanying drawings illustrate the possible architecture, function and operation of the system, method and computer program product according to various embodiments of the present application. In this regard, each square box in the flow chart or block diagram can represent a module, a program segment or a part of a code, and the module, the program segment or a part of the code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two square boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0143] The modules involved in the embodiments described in this application may be implemented by software or hardware, wherein the name of the module does not constitute a limitation on the unit itself in some cases.

[0144] The readable storage medium provided in the present application is a computer-readable storage medium, which stores computer-readable program instructions (i.e., computer programs) for executing the above-mentioned method for generating a smoothed edge path based on discrete points, and can solve the technical problem of generating a smoothed edge path based on discrete points. Compared with the prior art, the beneficial effects of the computer-readable storage medium provided in the present application are the same as the beneficial effects of the method for generating a smoothed edge path based on discrete points provided in the above-mentioned embodiment, and will not be described in detail here.

[0145] The present application also provides a computer program product, including a computer program, which implements the steps of the above-mentioned method for generating an edge path based on discrete point smoothing when executed by a processor.

[0146] The computer program product provided by the present application can solve the technical problem of edge path generation based on discrete point smoothing. Compared with the prior art, the beneficial effects of the computer program product provided by the present application are the same as the beneficial effects of the edge path generation method based on discrete point smoothing provided by the above embodiment, which will not be repeated here.

[0147] The above descriptions are only some embodiments of the present application, and are not intended to limit the patent scope of the present application. All equivalent structural changes made using the contents of the present application specification and drawings under the technical concept of the present application, or direct / indirect applications in other related technical fields are included in the patent protection scope of the present application.

Claims

1. A method for generating an edge path based on discrete point smoothing, characterized in that: The method includes: According to the grid map, multiple edge grids are obtained; According to the center point of each edge grid, the starting point, the cost function and the constraint item, a plurality of optimization points are obtained, wherein the starting point is the center point of the moving object; According to each of the optimization points, a target trajectory is obtained; A motion trajectory is obtained according to the target trajectory and the starting point.

2. The method according to claim 1, characterized in that The step of obtaining a plurality of edge grids according to the grid map includes: Acquire a grid map, and select a grid based on the grid map, wherein the grid map includes a grid marked as an obstacle; If there is at least one unmarked grid among the first fixed number of adjacent grids of the grid, and the grid is detected to be located to the right of the starting point, then the grid is an edge grid; or, If more than a second fixed number of grids among a first fixed number of adjacent grids of the grid are edge grids, and the grids are detected to be located to the right of the starting point, the grid is an edge grid.

3. The method according to claim 1, characterized in that Before obtaining a plurality of optimization points according to the edge grid center points, the starting points, the cost functions and the constraint items, the method further includes: Based on each of the edge grids, obtaining a center point of each of the edge grids; Traversing the angle formed by the starting point and the center point of each edge grid; If the change value between the angles is less than a preset threshold, the center point of the edge grid is deleted.

4. The method according to claim 1, characterized in that According to the edge grid center point, the starting point, the cost function and the constraint item, a plurality of optimization points are obtained, including: Select an edge grid center point as the first operation point; Obtaining a first cost term according to a vector change of the edge grid center point adjacent to the first operating point; Obtaining a second cost term according to the distance between the starting point and the center point of the edge grid; Establishing a cost function according to the first cost item, the second cost item, the first weight coefficient and the second weight coefficient; Establishing a line segment from the starting point to the first operating point, and using the line segment as a constraint item of the cost function; Calculate the total cost based on the constraint item and the cost function, and select the coordinates corresponding to the minimum total cost as the coordinates of the optimization point; The above steps are performed on each edge grid center point in sequence to obtain a plurality of optimization points.

5. The method according to claim 1, characterized in that The step of obtaining a target trajectory according to each of the optimization points comprises: Selecting one of the optimization points as a second operating point; Obtaining a direction line segment between the second operating point and a next adjacent optimization point of the second operating point; Based on the direction perpendicular to the direction line segment, obtaining the target point by moving the second operating point toward the starting point by a fixed distance; Traversing each of the optimization points, executing the above steps, and obtaining a plurality of target points; A target trajectory is obtained based on each of the target points.

6. The method according to claim 1, characterized in that The step of obtaining a motion trajectory according to the target trajectory and the starting point includes: Based on the distance from the starting point to the target trajectory, selecting a target point from the target trajectory as a target end point; Establishing a quintic polynomial from the starting point to the target end point; According to the fifth-order polynomial, a motion trajectory is obtained; or, If the preset range centered at the starting point coincides with the target trajectory, the target trajectory is used as the motion trajectory.

7. The method according to any one of claims 1 to 6, characterized in that: The method comprises: Get the preset planning period; The motion trajectory is updated according to the preset planning period.

8. A device for generating an edge path based on discrete point smoothing, characterized in that: The device comprises: An acquisition module, used for acquiring a plurality of edge grids according to a grid map; An optimization module, used to obtain multiple optimization points according to the center point of each edge grid, the starting point, the cost function and the constraint item, wherein the starting point is the center point of the moving object; An adjustment module, used for obtaining a target trajectory according to each of the optimization points; The output module is used to obtain a motion trajectory according to the target trajectory and the starting point.

9. A device for generating an edge path based on discrete point smoothing, characterized in that: The device comprises: a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the computer program is configured to implement the steps of the method for generating an edge path based on discrete point smoothing according to any one of claims 1 to 7.

10. A storage medium, characterized in that: The storage medium is a computer-readable storage medium, and a computer program is stored on the storage medium. When the computer program is executed by a processor, the steps of the method for generating an edge path based on discrete point smoothing as described in any one of claims 1 to 7 are implemented.

Citation Information

Patent Citations

  • Edge path planning method based on semantic cost map

    CN116243708A

  • Region boundary trajectory determination method, autonomous advancing device and storage medium

    CN116540716A

  • Track planning method and device, unmanned vehicle and storage medium

    CN116540745A

  • Full-coverage path planning method and device, computer equipment, cleaning equipment and storage medium

    CN116700234A

  • Edgewise Path Selection Method for Robot Obstacle Crossing, Chip, and Robot

    US20230114211A1