Edge bonding path generation method and device based on discrete point smoothing, equipment and storage medium

By optimizing the center point of the edge grid in the grid map and using a cost function and polynomial curve to generate the edge-fitting path, the stability problem of the robot vacuum cleaner fitting along curved walls is solved, achieving a smooth movement trajectory and simplified parameter adjustment.

CN119739154BActive Publication Date: 2025-11-11SHENZHEN YUETONG TECHNOLOGY CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

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

AI Technical Summary

Technical Problem

Existing solutions for household robot vacuums that follow edges cannot effectively cover uneven surfaces on the sides of walls, especially for high or curved walls, and parameter adjustments are complex.

Method used

Edge grids are obtained based on a grid map. Points are optimized through a cost function and constraint terms to generate a target trajectory and fit the obstacle plane. A polynomial curve is used as a smooth path to ensure that the robot does not collide when moving along the edge.

Benefits of technology

It simultaneously addresses the edges of straight and curved paths, ensuring the stability and smoothness of the robot's movement along the edges and simplifying the parameter debugging process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119739154B_ABST
    Figure CN119739154B_ABST
Patent Text Reader

Abstract

This application discloses a method, apparatus, device, and storage medium for generating edge-fitting paths based on discrete point smoothing, relating to the field of path planning technology. The method includes: obtaining multiple edge grids based on a grid map; obtaining multiple optimized points based on the center point, starting point, cost function, and constraint terms of each edge grid, wherein the starting point is the center point of the moving object; obtaining a target trajectory based on each optimized point; and obtaining a motion trajectory based on the target trajectory and the starting point. This application solves the problem of straight and curved edges simultaneously by fitting an obstacle plane with a constrained cost function, and the fitted curve is outside the edge, 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 edge-fitting makes the movement of the moving object smooth and easy to debug.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of path planning technology, and in particular to a method, apparatus, device and storage medium for generating edge-fitting paths based on discrete point smoothing. Background Technology

[0002] Currently, common edge-following solutions for household robotic vacuum cleaners typically use a top-mounted LiDAR to acquire laser point clouds, then segment them to fit straight lines to identify the wall surface. At the same time, a single-point edge-following sensor is placed on the side to control the distance, or multiple sensors are used to collect data and perform fixed edge-following actions based on the position of obstacles on the front and sides.

[0003] Due to limitations in sensor height and acquisition range, the two solutions described above cannot cover the unevenness of side walls with real-time sensor data. They are not suitable for taller robots, only work well on relatively straight walls, cannot adhere to curved walls, are only suitable for round robots, and are not applicable to square robots. Furthermore, they require numerous adjustments to steps and parameters, which is inconvenient in practical applications.

[0004] Therefore, improving the stability of edge-mounted movement is an urgent problem to be solved.

[0005] The above content is only used to help understand the technical solution of this application and does not represent an admission that the above content is prior art. Summary of the Invention

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

[0007] To achieve the above objectives, this application proposes a method for generating edge-fitting paths based on discrete point smoothing, the method comprising:

[0008] Based on the raster map, obtain multiple edge grid cells;

[0009] Based on the center point, starting point, cost function, and constraint terms of each edge grid, multiple optimization points are obtained, wherein the starting point is the center point of the moving object;

[0010] Based on the optimization points mentioned above, the target trajectory is obtained;

[0011] The motion trajectory is obtained based on the target trajectory and the starting point.

[0012] In one embodiment, obtaining multiple edge grids based on the grid map includes:

[0013] Obtain a grid map, and select a grid cell based on the grid map, wherein the grid map contains grid cells marked as obstacles;

[0014] If at least one of the first fixed number of adjacent grids of the grid is unmarked, and the grid is detected to be 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 the first fixed number of adjacent grid cells of the grid are edge grid cells, and the grid cell is detected to be located to the right of the starting point, then the grid cell is an edge grid cell.

[0017] In one embodiment, before obtaining multiple optimized points based on the center point, starting point, cost function, and constraint terms of each edge grid, the method further includes:

[0018] Based on each of the edge grids, the center point of each of the edge grids is obtained;

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

[0020] If the change in the included angle is less than a preset threshold, then the center point of the edge grid is deleted.

[0021] In one embodiment, the process of obtaining multiple optimization points based on the center point, starting point, cost function, and constraint terms of each edge grid includes:

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

[0023] The first cost term is obtained based on the vector change of the center point of the edge grid adjacent to the first operation point;

[0024] The second cost term is obtained based on the distance between the starting point and the center point of the edge grid;

[0025] A cost function is established based on the first cost term, the second cost term, the first weighting coefficient, and the second weighting coefficient.

[0026] Establish a line segment from the starting point to the first operation point, and use the line segment as a constraint term of the cost function;

[0027] Calculate the total cost based on the constraints 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 sequentially on the center points of each edge grid to obtain multiple optimized points.

[0029] In one embodiment, obtaining the target trajectory based on each of the optimization points includes:

[0030] Select one of the optimization points as the second operation point;

[0031] Obtain the direction line segment between the second operation point and the next adjacent optimization point of the second operation point;

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

[0033] By traversing each of the optimization points and performing the above steps, multiple target points are obtained;

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

[0035] In one embodiment, obtaining the motion trajectory based on the target trajectory and the starting point includes:

[0036] Based on the distance from the starting point to the target trajectory, a target point is selected from the target trajectory as the target endpoint;

[0037] Establish a fifth-degree polynomial from the starting point to the target endpoint;

[0038] The motion trajectory is obtained based on the fifth-order polynomial.

[0039] or,

[0040] If a preset range centered on the starting point coincides with the target trajectory, then the target trajectory is taken as the motion trajectory.

[0041] In one embodiment, the method includes:

[0042] Obtain the preset planning period;

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

[0044] Furthermore, to achieve the above objectives, this application also proposes an edge-fitting path generation device based on discrete point smoothing, the edge-fitting path generation device based on discrete point smoothing comprising:

[0045] The acquisition module is used to acquire multiple edge grid cells based on the grid map;

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

[0047] The adjustment module is used to obtain the target trajectory based on each of the optimization points.

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

[0049] Furthermore, to achieve the above objectives, this application also proposes an edge-fitting path generation device based on discrete point smoothing, the device comprising: a memory, a processor, and a computer program stored in the memory and executable on the processor, the computer program being configured to implement the steps of the edge-fitting path generation method based on discrete point smoothing as described above.

[0050] In addition, to achieve the above objectives, this application also proposes a storage medium, which is a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, it implements the steps of the edge-fitting path generation method based on discrete point smoothing as described above.

[0051] In addition, to achieve the above objectives, this application also provides a computer program product, which includes a computer program that, when executed by a processor, implements the steps of the edge-fitting path generation method based on discrete point smoothing as described above.

[0052] This application obtains multiple edge grids based on a grid map; based on the center point, starting point, cost function, and constraint terms of each edge grid, multiple optimization points are obtained, wherein the starting point is the center point of the moving object; based on each optimization point, a target trajectory is obtained; and based on the target trajectory and the starting point, a motion trajectory is obtained. This application solves both straight-line and curved-edge problems simultaneously by fitting an obstacle plane with a constrained cost function, and the fitted curve is outside the edge, 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's movement smooth and easy to debug. Attached Figure Description

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

[0054] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, for those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0055] Figure 1 This is a flowchart illustrating an embodiment of the edge-fitting path generation method based on discrete point smoothing in this application.

[0056] Figure 2 The raster map involved in the edge-fitting path generation method based on discrete point smoothing in the embodiments of this application;

[0057] Figure 3 The optimized path analysis graph involved in the edge-fitting path generation method based on discrete point smoothing in the embodiments of this application;

[0058] Figure 4 The target trajectory analysis diagram involved in the edge-fitting path generation method based on discrete point smoothing in the embodiments of this application;

[0059] Figure 5 The motion trajectory analysis diagram involved in the edge-fitting path generation method based on discrete point smoothing in the embodiments of this application;

[0060] Figure 6 A simplified flowchart illustrating the edge-fitting path generation method based on discrete point smoothing provided in Embodiment 1 of this application;

[0061] Figure 7 This is a schematic diagram of the module structure of the edge-fitting path generation device based on discrete point smoothing in an embodiment of this application;

[0062] Figure 8 This is a schematic diagram of the device structure of the hardware operating environment involved in the edge-fitting path generation method based on discrete point smoothing in the embodiments of this application.

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

[0064] It should be understood that the specific embodiments described herein are merely illustrative of the technical solutions of this application and are not intended to limit this application.

[0065] To better understand the technical solution of this application, a detailed description will be provided below in conjunction with the accompanying drawings and specific implementation methods.

[0066] The main solution of this application embodiment is as follows: obtain multiple edge grids according to the grid map; obtain multiple optimization points according to the center point, starting point, cost function and constraint terms 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; and obtain the motion trajectory according to the target trajectory and the starting point.

[0067] Currently, common edge-following solutions for household robotic vacuum cleaners typically use a top-mounted LiDAR to acquire laser point clouds, then segment them to fit straight lines and identify the wall surface. A single-point edge-following sensor is placed on the side to control the distance, or multiple sensors are used to collect data and perform fixed edge-following actions based on the position of obstacles on the front and sides. However, both of these solutions suffer from limitations in sensor height and acquisition range. The real-time sensor data cannot cover the unevenness of the side walls, making them unsuitable for taller robots. They only work well on relatively straight walls and cannot follow curved walls. They are only suitable for circular robots and not square robots. Furthermore, they require numerous adjustments to steps and parameters, leading to inconvenience in practical applications.

[0068] This application provides a solution that obtains multiple edge grids based on a grid map; obtains multiple optimization points based on the center point, starting point, cost function, and constraint terms of each edge grid, wherein the starting point is the center point of the moving object; obtains a target trajectory based on each optimization point; and obtains a motion trajectory based on the target trajectory and the starting point. This application solves a constrained quadratic programming problem to fit an obstacle plane, simultaneously addressing both straight-line and curved-edge problems. Furthermore, the fitted curve lies outside the edge, ensuring the moving object does 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's movement smooth and easy to debug.

[0069] It should be noted that the executing entity in this embodiment can be a computing service device with data processing, network communication, and program execution functions, such as a tablet computer, personal computer, or mobile phone, or an electronic device or home robot capable of performing the above functions. The following description uses a home robot as an example to illustrate this embodiment and the subsequent embodiments.

[0070] Based on this, embodiments of this application provide a method for generating edge-fitting paths based on discrete point smoothing, referring to... Figure 1 , Figure 1 This is a flowchart illustrating the first embodiment of the edge-fitting path generation method based on discrete point smoothing in this application.

[0071] In this embodiment, the edge-fitting path generation method based on discrete point smoothing includes steps S10~S40:

[0072] Step S10: Obtain multiple edge grids based on the grid map;

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

[0074] Understandably, storing obstacle information through a grid map avoids the problem of not being able to perceive obstacles in real time due to irregular edges.

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

[0076] It should be noted that obstacles can be walls, furniture, etc.; the first fixed number can be a specific number; the starting point can be the center of the moving object, which can be a home robot.

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

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

[0079] Step S20: Based on the center point, starting point, cost function, and constraint terms of each edge grid, multiple optimization points are obtained, 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, solutions that satisfy all constraints, and the optimization point can be...

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

[0082] Step A21: Select a center point of an edge grid as the first operation point;

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

[0084] Step A22: Obtain the first cost term based on the vector change of the center point of the edge grid adjacent to the first operation point;

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

[0086] For example, such as Figure 3 ,in Representing the The coordinates of the center point of each grid cell and Its coordinates, Represents the smoothness cost, which means the magnitude of the change in the vector formed by the pairwise relationships between the three points in the optimization result.

[0087] Step A23: Obtain the second cost term based on the distance between the starting point and the center point of the edge grid;

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

[0089] For example, to ensure that the optimized result still closely approximates the original curb and does not change too much, cost term 2 is set to the distance from the original point. This ensures that the optimized point remains close to the original curb. This represents the distance between the optimized coordinates and the original corresponding point.

[0090] Step A24: Establish a cost function based on the first cost term, the second cost term, the first weighting coefficient, and the second weighting coefficient;

[0091] For example, with This represents the optimal value after solving, and there are a total of If there are 1 point, then the cost term is expressed as:

[0092]

[0093] in: Represents the total cost, , Represents the weighting coefficients. The objective is to solve for... The smaller the better.

[0094] Step A25: Establish a line segment from the starting point to the first operation point, and use the line segment as a constraint term of the cost function;

[0095] For example, such as Figure 3 As shown, during the solution process, the optimization point needs to avoid collisions outside the obstacle. Therefore, the point needs to be constrained to the line segment from the robot's center to the starting point. This line segment is used as a constraint term. To indicate:

[0096]

[0097] Step A26: Calculate the total cost based on the constraint terms and the cost function, and select the coordinates corresponding to the minimum total cost as the coordinates of the optimization point;

[0098] Step A27: Perform the above steps sequentially on each of the edge grid center points to obtain multiple optimized points.

[0099] For example, such as Figure 4 As shown, the optimization points are Figure 4 The blue dot.

[0100] Understandably, by solving optimization problems, that is, solving cost functions with constraints, with the goal of minimizing cost, we can help identify the best way to plan routes, thereby improving travel efficiency.

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

[0102] Step S30: Obtain the target trajectory based on each of the optimization points;

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

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

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

[0106] After obtaining the optimized points, the direction of each point (the second operation point) is pointed to the next adjacent point. Connecting the two points yields a direction segment. Then, each point is translated towards the robot center by half the robot width (a fixed distance) in a direction perpendicular to the direction segment to obtain the target trajectory of the robot's motion, such as... Figure 4 The target trajectory is a trajectory composed of green dots.

[0107] Understandably, translation optimization can make the path smoother, reduce inflection points, avoid sudden turns, and help stabilize the robot's motion control.

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

[0109] Step S40: Obtain the motion trajectory based on 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 one 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 fifth-order polynomial from the starting point to the target endpoint; obtaining the motion trajectory according to the fifth-order polynomial; or, if a preset range centered on the starting point coincides with the target trajectory, then the target trajectory is taken as the motion trajectory.

[0112] like Figure 5 As shown, the starting point is the center point of the moving object. Taking a robot as an example, the process first determines whether the robot's trajectory overlaps with the target trajectory. If the preset range centered on the starting point overlaps with the target trajectory, the target trajectory is used as the motion trajectory. If the robot's trajectory does not overlap with the target trajectory, a point is selected from the target trajectory as the target endpoint 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 endpoint, a fifth-degree polynomial is established between the starting point and the target endpoint. Figure 5 The red curve in the middle represents the curve of the fifth-degree polynomial, and this curve is used as the trajectory of the motion.

[0113] Understandably, defining the boundary conditions of a trajectory using a fifth-order polynomial allows for precise control of the position, velocity, and acceleration of the starting and ending points. This helps robots achieve precise motion control, improving safety and efficiency.

[0114] This embodiment provides a method for generating edge-fitting paths based on discrete point smoothing. Multiple edge grids are obtained from a grid map; multiple optimized points are obtained based on the center point, starting point, cost function, and constraints of each edge grid, where the starting point is the center point of the moving object; a target trajectory is obtained based on each optimized point; and a motion trajectory is obtained based on the target trajectory and the starting point. This application solves a constrained quadratic programming problem to fit the obstacle plane, simultaneously addressing both straight and curved path edge problems. Furthermore, the fitted curve is outside the path edge, ensuring the moving object does not collide when following the edge curve. Using a polynomial curve as the smooth path for entering and exiting the edge-fitting path results in smooth movement of the moving object and facilitates debugging.

[0115] For example, to help understand the implementation process of the edge-fitting path generation method based on discrete point smoothing obtained in this embodiment combined with the above embodiment one, please refer to... Figure 6 , Figure 6 A simplified flowchart of a method for generating edge-fitting paths based on discrete point smoothing is provided, specifically:

[0116] First, a historical memory grid map is acquired, containing grids marked as obstacles. A grid is selected, and its edge grid is determined. It is then checked whether this edge grid is located to the right of the robot. An optimization problem (including a cost function and constraints) is established based on the center point of the edge grid. The optimization problem is solved. Specifically, the center points of other edge grids adjacent to the current edge grid's center point can be the two operation points preceding the current edge grid's center point, representing the overall smoothness of the path. Based on these three operation points, the difference in vectors between adjacent points is used as the smoothness cost. To ensure the optimized result remains close to the original path edge and doesn't change too much, a second cost term is set as the distance from the target point to the robot's center point. This ensures the optimized point remains close to the original path edge, representing the distance from the optimized coordinates to the original corresponding point. The objective is to minimize the total cost. The obtained solution is used as the optimization point, which is then translated a certain distance towards the robot's center. A motion path from the target point to the target endpoint is established using a fifth-order polynomial. The robot then moves according to this trajectory. This application can solve both straight and curved edge problems simultaneously, and the fitted curve is outside the edge, ensuring that the moving object will not collide when following the edge curve. It uses a polynomial curve as a smooth path for entering and exiting the edge, making the moving object move smoothly and is friendly to the shape of the moving object. It can be used for moving objects of any shape. In the process of solving the edge path, a constrained cost function is constructed. Its form is simple, so it is easy to debug and has high solution efficiency.

[0117] It should be noted that the above examples are only for understanding this application and do not constitute a limitation on the edge-fitting path generation method based on discrete point smoothing in this application. Any simple transformations based on this technical concept are within the protection scope of this application.

[0118] This application also provides a device for generating edge-fitting paths based on discrete point smoothing; please refer to [reference needed]. Figure 7 The edge-fitting path generation device based on discrete point smoothing includes:

[0119] The acquisition module 10 is used to acquire multiple edge grids based on the grid map;

[0120] The optimization module 20 is used to obtain multiple optimization points based on the center point, starting point, cost function, and constraint terms of each edge grid, wherein the starting point is the center point of the moving object;

[0121] The adjustment module 30 is used to obtain the target trajectory based on each of the optimization points;

[0122] Output module 40 is used to obtain the motion trajectory based on the target trajectory and the starting point.

[0123] The discrete-point smoothing edge-fitting path generation device provided in this application employs the discrete-point smoothing edge-fitting path generation method described in the above embodiments, and can solve the technical problem of discrete-point smoothing edge-fitting path generation. Compared with the prior art, the beneficial effects of the discrete-point smoothing edge-fitting path generation device provided in this application are the same as those of the discrete-point smoothing edge-fitting path generation method provided in the above embodiments, and other technical features in the discrete-point smoothing edge-fitting path generation device are the same as those disclosed in the methods of the above embodiments, and will not be repeated here.

[0124] The acquisition module 10 is further configured to acquire a grid map, select a grid based on the grid map, wherein the grid map contains grids marked as obstacles; if at least one of the first fixed number of adjacent grids of the grid is unmarked, 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 the first fixed number of adjacent grids of the grid are edge grids, and the grid is detected to be located to the right of the starting point, then the grid is an edge grid.

[0125] The adjustment module 30 is further configured 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; and delete the center point of the edge grid if the change value between the angles is less than a preset threshold.

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

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

[0128] The output module 40 is further configured to select a target point as the target endpoint from the target trajectory based on the distance from the starting point to the target trajectory; establish a fifth-order polynomial from the starting point to the target endpoint; obtain the motion trajectory according to the fifth-order polynomial; or, if a preset range centered on the starting point coincides with the target trajectory, then the target trajectory is used as the motion trajectory.

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

[0130] This application provides a discrete point smoothing-based edge path generation device, which 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 to enable the at least one processor to execute the discrete point smoothing-based edge path generation method in Embodiment 1 above.

[0131] The following is for reference. Figure 8This document illustrates a structural schematic diagram of a discrete-point smoothing edge-attaching path generation device suitable for implementing embodiments of this application. The discrete-point smoothing edge-attaching path generation device in this application can include, but is not limited to, mobile terminals such as mobile phones, laptops, digital broadcast receivers, PDAs (Personal Digital Assistants), PADs (Portable Application Description), PMPs (Portable Media Players), and in-vehicle terminals (e.g., in-vehicle navigation terminals), as well as fixed terminals such as digital TVs and desktop computers. Figure 8 The edge-fitting path generation device based on discrete point smoothing shown is merely an example and should not impose any limitations on the functionality and scope of use of the embodiments of this application.

[0132] like Figure 8 As shown, the discrete-point smoothing edge-path generation device may include a processing unit 1001 (e.g., a central processing unit, a graphics processing unit, etc.), which can perform various appropriate actions and processes according to a program stored in read-only memory (ROM) 1002 or a program loaded from storage device 1003 into random access memory (RAM) 1004. The RAM 1004 also stores various programs and data required for the operation of the discrete-point smoothing edge-path generation device. The processing unit 1001, ROM 1002, and RAM 1004 are interconnected 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 I / O interface 1006: input devices 1007 including, for example, touchscreens, touchpads, keyboards, mice, image sensors, microphones, accelerometers, gyroscopes, etc.; output devices 1008 including, for example, liquid crystal displays (LCDs), speakers, vibrators, etc.; storage devices 1003 including, for example, magnetic tapes, hard disks, etc.; and communication devices 1009. Communication device 1009 allows the discrete-point smoothing edge-path generation device to exchange data with other devices wirelessly or via wired communication. Although the figure shows discrete-point smoothing edge-path generation devices with various systems, it should be understood that it is not required to implement or possess all the systems shown. More or fewer systems can be implemented alternatively.

[0133] Specifically, according to the embodiments disclosed in this application, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments disclosed in this application include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via a communication device, or installed from storage device 1003, or installed from ROM 1002. When the computer program is executed by processing device 1001, it performs the functions defined in the methods of the embodiments disclosed in this application.

[0134] The discrete-point smoothing edge-fitting path generation device provided in this application employs the discrete-point smoothing edge-fitting path generation method described in the above embodiments, and can solve the technical problem of discrete-point smoothing edge-fitting path generation. Compared with the prior art, the beneficial effects of the discrete-point smoothing edge-fitting path generation device provided in this application are the same as those of the discrete-point smoothing edge-fitting path generation method provided in the above embodiments, and other technical features in this discrete-point smoothing edge-fitting path generation device are the same as those disclosed in the previous embodiment method, and will not be repeated here.

[0135] It should be understood that the various parts disclosed in this application can be implemented using 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 suitable manner in one or more embodiments or examples.

[0136] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

[0137] This application provides a computer-readable storage medium having computer-readable program instructions (i.e., a computer program) stored thereon, the computer-readable program instructions being used to execute the edge-fitting path generation method based on discrete point smoothing in the above embodiments.

[0138] The computer-readable storage medium provided in this application may be, for example, a USB flash drive, but is not limited to, electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices, or any combination thereof. More specific examples of computer-readable storage media may include, but are not limited to: electrical connections having one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof. 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 conjunction with an instruction execution system, system, or device. The program code contained on the computer-readable storage medium may be transmitted using any suitable medium, including but not limited to: wires, optical cables, RF (Radio Frequency), etc., or any suitable combination thereof.

[0139] The aforementioned computer-readable storage medium may be included in a discrete-point smoothing edge-attaching path generation device; or it may exist independently and not assembled into a discrete-point smoothing edge-attaching path generation device.

[0140] The aforementioned computer-readable storage medium carries one or more programs that, when executed by a discrete-point smoothing edge-path generation device, cause the discrete-point smoothing edge-path generation device to: acquire multiple edge grids based on a grid map; obtain multiple optimized points based on the center point, starting point, cost function, and constraint terms of each edge grid, wherein the starting point is the center point of the moving object; obtain a target trajectory based on each optimized point; and obtain a motion trajectory based on the target trajectory and the starting point.

[0141] Computer program code for performing the operations of this application can be written in one or more programming languages ​​or a combination thereof, including object-oriented programming languages ​​such as Java, Smalltalk, and C++, and conventional procedural programming languages ​​such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a Local Area Network (LAN) or a Wide Area Network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).

[0142] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this application. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.

[0143] The modules described in the embodiments of this application can be implemented in software or hardware. The names of the modules do not necessarily limit the functionality of the unit itself.

[0144] The readable storage medium provided in this application is a computer-readable storage medium that stores computer-readable program instructions (i.e., a computer program) for executing the above-described method for generating edge-fitting paths based on discrete point smoothing, thereby solving the technical problem of edge-fitting path generation based on discrete point smoothing. Compared with the prior art, the beneficial effects of the computer-readable storage medium provided in this application are the same as those of the edge-fitting path generation method based on discrete point smoothing provided in the above embodiments, and will not be repeated here.

[0145] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the steps of the above-described method for generating edge-fitting paths based on discrete point smoothing.

[0146] The computer program product provided in this application can solve the technical problem of edge-fitting path generation based on discrete point smoothing. Compared with the prior art, the beneficial effects of the computer program product provided in this application are the same as those of the edge-fitting path generation method based on discrete point smoothing provided in the above embodiments, and will not be repeated here.

[0147] The above description is only a part of the embodiments of this application and does not limit the patent scope of this application. All equivalent structural transformations made under the technical concept of this application and using the contents of the specification and drawings of this application, or direct / indirect applications in other related technical fields, are included in the patent protection scope of this application.

Claims

1. A method for generating edge-fitting paths based on discrete point smoothing, characterized in that, The method includes: Based on the raster map, obtain multiple edge grid cells; Based on the center point, starting point, cost function, and constraint terms of each edge grid, multiple optimization points are obtained, wherein the starting point is the center point of the moving object; Based on the optimization points mentioned above, the target trajectory is obtained; The motion trajectory is obtained based on the target trajectory and the starting point; The process involves obtaining multiple optimization points based on the center point, starting point, cost function, and constraint terms of each edge grid, including: Select the center point of an edge grid as the first operation point; The first cost term is obtained based on the vector change of the center point of the edge grid adjacent to the first operation point; The second cost term is obtained based on the distance between the starting point and the center point of the edge grid; A cost function is established based on the first cost term, the second cost term, the first weighting coefficient, and the second weighting coefficient. Establish a line segment from the starting point to the first operation point, and use the line segment as a constraint term of the cost function; Calculate the total cost based on the constraints 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 sequentially on the center points of each edge grid to obtain multiple optimized points.

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

3. The method as described in claim 1, characterized in that, Before obtaining multiple optimization points based on the center point, starting point, cost function, and constraint terms of each edge grid, the process further includes: Based on each of the edge grids, the center point of each of the edge grids is obtained; Traverse the angle formed by the starting point and the center point of each edge grid; If the change in the included angle is less than a preset threshold, then the center point of the edge grid is deleted.

4. The method as described in claim 1, characterized in that, The step of obtaining the target trajectory based on each of the optimization points includes: Select one of the optimization points as the second operation point; Obtain the direction line segment between the second operation point and the next adjacent optimization point of the second operation point; Based on the direction perpendicular to the line segment, the target point is obtained by moving the second operation point a fixed distance toward the starting point; By traversing each of the optimization points and performing the above steps, multiple target points are obtained; The target trajectory is obtained based on each of the target points.

5. The method as described in claim 1, characterized in that, The step of obtaining the motion trajectory based on the target trajectory and the starting point includes: Based on the distance from the starting point to the target trajectory, a target point is selected from the target trajectory as the target endpoint; Establish a fifth-degree polynomial from the starting point to the target endpoint; The motion trajectory is obtained based on the fifth-order polynomial. or, If a preset range centered on the starting point coincides with the target trajectory, then the target trajectory is taken as the motion trajectory.

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

7. A device for generating edge-fitting paths based on discrete point smoothing, characterized in that, The device includes: The acquisition module is used to acquire multiple edge grid cells based on the grid map; The optimization module is used to obtain multiple optimization points based on the center point, starting point, cost function, and constraint terms of each edge grid, wherein the starting point is the center point of the moving object; The adjustment module is used to obtain the target trajectory based on each of the optimization points. The output module is used to obtain the motion trajectory based on the target trajectory and the starting point; The optimization module is further configured to: select a center point of an edge grid as a first operation point; obtain a first cost term based on the vector change of the center points of the edge grid adjacent to the first operation point; obtain a second cost term based on the distance between the starting point and the center point of the edge grid; establish a cost function based on the first cost term, the second cost term, the first weight coefficient, and the second weight coefficient; establish a line segment from the starting point to the first operation point, and use the line segment as a constraint term of the cost function; calculate the total cost based on the constraint term and the cost function, and select the coordinates corresponding to the minimum total cost as the coordinates of the optimization point; and sequentially perform the above steps on each of the edge grid center points to obtain multiple optimization points.

8. A device for generating edge-fitting paths based on discrete point smoothing, characterized in that, The device includes: a memory, a processor, and a computer program stored in the memory and executable on the processor, the computer program being configured to implement the steps of the edge-fitting path generation method based on discrete point smoothing as described in any one of claims 1 to 6.

9. 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, it implements the steps of the edge-fitting path generation method based on discrete point smoothing as described in any one of claims 1 to 6.

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