Path processing method and device, equipment control method and device, equipment and medium
By determining the search area in the path planning and searching the target teaching path, the problem of unanticipated routes in the teaching path affecting the path planning is solved, and more general and efficient path processing is achieved.
Patent Information
- Application Number
- CN202411546777.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2024-10-22
- Filing Date
- 2024-10-31
- Publication Date
- 2025-02-11
- Estimated Expiration
- 2044-10-31
Smart Images

Figure CN119413196A_ABST
Abstract
Description
[0001] This disclosure claims priority to a Chinese patent application filed with the Chinese Patent Office on October 22, 2024, with application number 202411482140.7 and application name “Path processing method, device, removable device and storage medium”, the entire contents of which are incorporated by reference in this disclosure. Technical Field
[0002] The present disclosure relates to the field of computer technology, and more specifically, to a path processing method, a device control method, an apparatus, a device, and a medium. Background Art
[0003] When planning the path of movable devices such as vehicles and robots, in order to improve the accuracy of path planning, a teaching path can be used to assist in decision planning. Taking the path planning of a vehicle as an example, the teaching path can be the original driving path obtained by the driver in advance while driving the vehicle, and the teaching path is used as the teaching path. The path planning is assisted based on the teaching path to achieve high-level assisted driving functions such as memory parking and / or memory driving. However, in actual applications, the quality of the driver's teaching path is affected by various reasons, and there is a certain probability that unexpected routes such as S-shaped routes and reversing routes will appear, which will affect the effect of assisted path planning. Summary of the invention
[0004] In view of this, the embodiments of the present disclosure propose a new technical solution for path processing.
[0005] According to a first aspect of an embodiment of the present disclosure, a path processing method is provided, the method comprising:
[0006] According to an original teaching path of the movable device and environmental information corresponding to the original teaching path, a search area including the original teaching path is determined; wherein the original teaching path is a driving path of the movable device under manual operation, and the search area is an area that the movable device can drive through;
[0007] Based on a preset search target, a target teaching path that meets the search target is searched in the search area.
[0008] Optionally, determining a search area including the original teaching path according to the original teaching path of the movable device and environmental information corresponding to the original teaching path includes:
[0009] Determining a moving boundary corresponding to the original teaching path according to the environmental information of the original teaching path;
[0010] A search area including the original teaching path is determined according to the moving boundary and the original teaching path.
[0011] Optionally, the moving boundary includes a first side boundary point set located on a first side of the original teaching path and a second side boundary point set located on a second side of the original teaching path; and determining the search area including the original teaching path according to the moving boundary and the original teaching path includes:
[0012] Determine a set of candidate path points corresponding to the original teaching path; wherein the set of candidate path points includes a plurality of candidate path points, and a distance between two adjacent candidate path points in an extension direction of the original teaching path is within a preset distance range;
[0013] For a candidate path point in the candidate path point set, a candidate area corresponding to the candidate path point is determined according to a first side boundary point and a second side boundary point corresponding to the candidate path point, so as to obtain a plurality of candidate areas corresponding to the plurality of candidate path points; wherein the first side boundary point corresponding to the candidate path point is a boundary point in the first side boundary point set that is closest to the candidate path point, and the second side boundary point corresponding to the candidate path point is a boundary point in the second side boundary point set that is closest to the candidate path point;
[0014] A set of the multiple candidate areas is used as the search area.
[0015] Optionally, determining the candidate area corresponding to the candidate path point according to the first side boundary point and the second side boundary point corresponding to the candidate path point includes:
[0016] A first region is formed with the middle position of a line segment formed by the first side boundary point and the second side boundary point as the center of a circle and the length of the line segment as the diameter, and the first region is used as the candidate region; or
[0017] A second area is formed with the candidate path point as the center and the specified length as the radius, and the second area is used as the candidate area; wherein the specified length is the minimum value between the preset radius and the minimum boundary distance, and the minimum boundary distance is the minimum distance between the candidate path point and the first side boundary point and the second side boundary point.
[0018] Optionally, determining a set of candidate path points corresponding to the original teaching path includes:
[0019] According to the intervals between adjacent original path points in the extension direction of the original teaching path, the original path points are added and / or deleted to obtain the candidate path point set, so that the distance between two adjacent candidate path points in the candidate path point set is within the preset distance range.
[0020] Optionally, based on a preset search target, searching in the search area for a target teaching path that meets the search target includes:
[0021] Taking the position points in the search area as nodes to be searched, and searching the nodes to be searched based on a preset path search algorithm to obtain a target teaching path that meets the search target;
[0022] In which, the preset path search algorithm includes a first cost function and / or a second cost function, the first cost function is used to determine the first cost from the node to be searched to the end point of the original taught path according to the index of the node to be searched and the number of candidate areas contained in the search area, the index of the node to be searched is the maximum value of the indexes of one or more candidate areas to which the node to be searched belongs, and the index of the candidate area is the index determined according to the order of the candidate path points in the candidate path point set; the second cost function is used to determine the second cost from the starting point of the original taught path to the node to be searched according to the distance and smoothness between the node to be searched and the current node, and the distance between the center position of the candidate area where the node to be searched is located and the node to be searched.
[0023] Optionally, the preset path search algorithm further includes kinematic parameters of the movable device, and the kinematic parameters are used to make the node to be searched closer to the end point relative to the current node.
[0024] Optionally, based on a preset search target, searching in the search area for a target teaching path that meets the search target includes:
[0025] Based on a preset path search algorithm, a plurality of target nodes on the shortest path from the starting point to the end point of the original teaching path are searched in the search area;
[0026] The multiple target nodes are smoothed based on a preset smoothing algorithm to obtain the target teaching path.
[0027] Optionally, the preset smoothing algorithm is a pure tracking control algorithm, and / or the preset path search algorithm is an A-star search algorithm.
[0028] According to a first aspect of an embodiment of the present disclosure, a device control method is provided, the method comprising:
[0029] determining a target teach path corresponding to the first movable device;
[0030] Controlling the first movable device to travel according to the target teaching path;
[0031] Among them, the target teaching path is a path searched in a search area containing an original teaching path based on a preset search target, the original teaching path is the driving path of the second movable device under manual operation, and the search area is an area that the second movable device can travel through, determined based on the original teaching path and environmental information corresponding to the original teaching path.
[0032] According to a third aspect of an embodiment of the present disclosure, a path processing device is provided, the path processing device comprising a memory and a processor, the memory being used to store computer instructions, the processor being used to call the computer instructions from the memory to execute a method as described in any one of the first aspects.
[0033] According to a fourth aspect of an embodiment of the present disclosure, a device control device is provided, comprising a memory and a processor, wherein the memory is used to store computer instructions, and the processor is used to call the computer instructions from the memory to execute a method as described in any one of the second aspects.
[0034] According to a fifth aspect of an embodiment of the present disclosure, a movable device is provided, wherein the movable device includes the path processing device as described in the third aspect, or the device control device as described in the fourth aspect.
[0035] According to a sixth aspect of an embodiment of the present disclosure, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the path processing method as described in any one of the first aspects, or the device control method as described in any one of the second aspects, is implemented.
[0036] Based on the path processing method provided by the embodiment of the present disclosure, according to the original teaching path of the movable device and the environmental information corresponding to the original teaching path, a search area containing the original teaching path is determined; based on the preset search target, a target teaching path that meets the search target is searched in the search area. The original teaching path is the driving path of the movable device under manual operation, and the search area is the area that the movable device can travel through. Thus, a new method for processing the teaching path is provided, which does not require setting rules and can adapt to various working conditions, thereby improving the versatility and processing efficiency of the teaching path processing.
[0037] Other features and advantages of the present disclosure will become apparent from the following detailed description of exemplary embodiments of the present disclosure with reference to the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS
[0038] The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate embodiments of the present disclosure and, together with the description, serve to explain the principles of the present disclosure.
[0039] Figure 1 The present invention is a schematic diagram of an intelligent network connection system to which the method provided by the embodiment of the present disclosure can be applied.
[0040] Figure 2 is based on Figure 1 The illustrated embodiment provides a schematic diagram of a movable device.
[0041] Figure 3 It is a flowchart of a path processing method provided by an embodiment of the present disclosure.
[0042] Figure 4 It is a schematic diagram of an original teaching path and moving boundary provided by an embodiment of the present disclosure.
[0043] Figure 5 It is a schematic diagram showing a search area provided by an embodiment of the present disclosure.
[0044] Figure 6 It is a schematic diagram of a path processing provided by an embodiment of the present disclosure.
[0045] Figure 7 It is a schematic diagram of another path processing provided by an embodiment of the present disclosure.
[0046] Figure 8 It is a flowchart of another path processing method provided by an embodiment of the present disclosure.
[0047] Fig. 9 It is a flowchart of a device control method provided by an embodiment of the present disclosure.
[0048] Fig.10 It is a structural diagram of a path processing device provided in an embodiment of the present disclosure.
[0049] Fig.11 It is a structural schematic diagram of a device control device provided in an embodiment of the present disclosure. DETAILED DESCRIPTION
[0050] Various exemplary embodiments of the present disclosure will now be described in detail with reference to the accompanying drawings. It should be noted that the relative arrangement of components and steps, numerical expressions and numerical values set forth in these embodiments do not limit the scope of the present disclosure unless otherwise specifically stated.
[0051] The following description of at least one exemplary embodiment is merely illustrative in nature and is in no way intended to limit the present disclosure, its application, or uses.
[0052] Technologies, methods, and equipment known to ordinary technicians in the relevant art may not be discussed in detail, but where appropriate, the above-mentioned technologies, methods, and equipment should be considered as part of the specification.
[0053] In all examples shown and discussed herein, any specific values should be interpreted as merely exemplary and not limiting. Therefore, other examples of the exemplary embodiments may have different values.
[0054] It should be noted that like reference numerals and letters refer to similar items in the following figures, and therefore, once an item is defined in one figure, it need not be further discussed in subsequent figures.
[0055] First, the application scenarios of the embodiments of the present disclosure are described.
[0056] Figure 1 1 is a schematic diagram of an intelligent network system 100 to which the method provided by the embodiment of the present disclosure can be applied. Figure 1 As shown, the intelligent network connection system 100 may include: a movable device 101, a server 102, and a user terminal 103.
[0057] In some examples, the movable device 101 can be a movable device such as a vehicle or a robot, for example, a vehicle with an automatic driving function, a robot that can move autonomously, etc. Among them, automatic driving is also called unmanned driving or intelligent driving. Vehicles with automatic driving functions can achieve driving tasks such as environmental perception, decision planning, and control execution. The level of automatic driving can refer to the automobile intelligence classification standard formulated by the Society of Automotive Engineers (SAE). For example, L0 is manual driving, L1 is assisted driving, L2 is partial automatic driving, L3 is conditional automatic driving, L4 is highly automatic driving, and L5 is fully automatic driving. The above classification method of automatic driving levels is only used as an example, and the embodiments of the present disclosure do not limit the classification standards and levels of automatic driving.
[0058] In some examples, the server 102 may be a single server or a distributed server cluster consisting of multiple servers, and its deployment method may include a local server or a cloud server. The server 102 may communicate with the mobile device 101 and / or the user terminal 103 based on a communication network, and provide various services for the mobile device 101 and / or the user terminal 103. For example, the server may receive the perception data sent by the mobile device, and provide the mobile device with services such as high-precision maps, data analysis, and decision-making planning. For another example, the server may receive query instructions or control instructions sent by the user terminal, and provide corresponding services to the user.
[0059] In some examples, the user terminal 103 may be any form of electronic device that provides services to users, such as a personal computer, a laptop, a smart tablet, a smart phone, a smart wearable device, etc. The user may interact with the mobile device or server through the human-computer interaction terminal configured by the mobile device 101, or may interact with the mobile device or server through the user terminal 103, for example, querying the status and / or parameters of the mobile device through the user terminal, or controlling the mobile device to perform set tasks and / or modify configuration parameters, etc.; wherein the user terminal runs an application based on the intelligent network connection system to achieve interaction with the mobile device or server, and the application may be a local application, a web application, a small program, etc., which is not limited here.
[0060] In some examples, the above application running on the user terminal can provide authentication or authorization services for the user, and the user who is successfully authenticated and granted the corresponding authority can query and / or control the removable device within the scope of the granted authority.
[0061] The mobile device 101, the server 102 and the user terminal 103 can communicate with each other through the communication link provided by the communication network 104. The communication network 104 may include one or more networks of any type, for example, the communication network 104 may include the Internet, a local area network (LAN), a wide area network (WAN), a virtual private network (VPN), a public switched telephone network (PSTN), a satellite communication network, Wi-Fi, 2G, 3G, 4G, 5G, 6G, NB-IoT, eMTC, infrared, Bluetooth, NFC and other networks providing communication, or a combination of the above multiple networks. The communication networks between the mobile device 101 and the server 102, between the user terminal 103 and the server 102, and between the user terminal 103 and the mobile device 101 may be the same or different.
[0062] It should be noted that Figure 1 The structure of the intelligent network connection system 100 shown in the figure is only illustrative. The intelligent network connection system in the embodiment of the present disclosure is not limited to the above structure, and may include more or fewer devices as needed, and may also combine or split the devices. For example, the intelligent network connection system may not include a user terminal and / or a server; for another example, the user terminal and the server may be deployed together.
[0063] Figure 2 is based on Figure 1 The embodiment shown is a schematic diagram of a mobile device 101. Figure 2As shown, the mobile device 101 may include a perception component 1011, a computing platform 1012, an execution component 1013, etc. The perception component 1011, the computing platform 1012, and the execution component 1013 may be connected via a bus or other means.
[0064] In some examples, the perception component 1011 can be used to collect information from the movable device itself or outside. The perception component 1011 may include at least one of a visual sensor unit, a radar, a positioning and navigation unit, an inertial measurement unit (IMU) or other sensing units, wherein the visual sensor unit may include one or more cameras, the radar may include at least one of a laser radar, a millimeter wave radar, an ultrasonic radar or other radars, and the positioning and navigation unit may include at least one of a GPS system, a Beidou system or other global positioning systems.
[0065] In some examples, the computing platform 1012 may include a device with computing capabilities, which is used to process the perception information collected by the perception component 1011 to obtain control information, and send corresponding control instructions to the execution component 1013, so that the execution component 1013 performs corresponding actions, thereby realizing control of the mobile device 101. For example, the computing platform 1012 can perform positioning and mapping (Simultaneous Localization and Mapping, SLAM), path planning, behavior decision-making and other behaviors on the mobile device, thereby realizing autonomous control of the mobile device. The computing platform 1012 may include at least one processor and at least one memory, and each processor may execute instructions stored in the memory alone or together to implement the method provided in the embodiment of the present disclosure. The processor in the embodiment of the present disclosure may include at least one of a central processing unit (CPU), a graphic processing unit (GPU), a field programmable gate array (FPGA), a system on chip (SOC), an application specific integrated circuit (ASIC), a microcontroller unit (MCU) or other processors. The memory can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk or optical disk. In addition to storing instructions, the memory can also store data, such as high-precision maps, path information, location, direction, speed and other data of movable devices. The data stored in the memory can be obtained and used by the processor.
[0066] In some examples, the computing platform of the mobile device can independently perform computing tasks, or can communicate with a server to complete computing tasks. For example, the computing platform of the mobile device can cooperate with the server to complete corresponding computing tasks.
[0067] The computing platform 1012 may be set in the mobile device 101, and part or all of the computing platform 1012 may also be set in a server corresponding to the mobile device. For example, some functions of the computing platform 1012 with higher real-time requirements are set in the mobile device, and other functions with lower real-time requirements are set in the server corresponding to the mobile device.
[0068] In some examples, the execution component 1013 is used to execute corresponding actions based on the control of the computing platform 1012, so that the movable device 101 completes the moving task. The execution component 1013 may include, for example, a power component, a brake component, a transmission component, a steering component, and the like.
[0069] It should be noted that Figure 2 The structure of the mobile device 101 shown in the figure is only illustrative. The mobile device in the embodiment of the present disclosure is not limited to the above structure, and may include more or fewer components as needed, and the device may be combined or split. For example, the mobile device may not include the above computing platform. For another example, the mobile device may also include a communication component, an interface component, a multimedia component, an input component, an output component, etc.
[0070] The disclosed embodiments can be applied to process the teaching path of a movable device to obtain a target teaching path. The target teaching path can be used to control the movable device, for example, path planning and / or positioning mapping can be performed for the movable device based on the processed target teaching path.
[0071] The original teaching path can usually be the driving path of the mobile device under manual operation. Since manual operation is affected by various objective factors, the original teaching path obtained in actual application has a certain probability of appearing unexpected routes such as S-shaped and reversing, and is not necessarily the shortest path. If it is not processed, it is difficult to meet the use requirements of path planning and / or positioning mapping and other functions.
[0072] In the related art, the original teaching path can be partially adjusted based on rules. For example, the processing rules can be pre-set to remove unexpected routes such as S-shaped and reverse routes in the original teaching path, so as to obtain a teaching path that meets the requirements of the rules. However, this method requires a large number of rules to be pre-set to process the original teaching path, and the ability boundary of the rules is limited, and the versatility is poor.
[0073] In response to the problems of the related technology, the embodiments of the present disclosure provide a new processing solution for the teaching path. The solution can determine the search area based on the original teaching path, and search for the target teaching path that meets the search target in the search area. Therefore, there is no need to set rules, and it can adapt to various working conditions, thereby improving the versatility and efficiency of the teaching path processing.
[0074] Figure 3 is a flow chart of a path processing method provided by an embodiment of the present disclosure. The path processing method can be Figure 1 The mobile device and / or server shown is executed. Figure 3As shown, the path processing method of this embodiment may include the following steps S310 to S320.
[0075] Step S310: determining a search area including the original teaching path according to the original teaching path of the movable device and the environmental information corresponding to the original teaching path.
[0076] The original teaching path may be a travel path of the movable device under manual operation. For example, if the movable device is a vehicle, the original teaching path may be an original travel path of the driver driving the vehicle.
[0077] The environmental information may include environmental information for determining an area through which the movable device can travel. For example, the environmental information may include surrounding environmental information measured by a sensor when the movable device is traveling based on the original teaching path, and / or surrounding environmental information of the original teaching path obtained based on high-definition map information. The surrounding environmental information may be environmental information in an area whose distance from the original teaching path is less than or equal to a preset maximum distance. In some examples, the environmental information may include at least one of road information, lane information, and obstacle information.
[0078] The search area may be an area that the movable device can travel through, that is, the search area is all or part of an area that the movable device can continuously travel through starting from any position on the original teaching path. The scope of the search area may be larger than the scope of the original teaching path to provide more path points to choose from.
[0079] For example, a target area that a movable device can travel through from any position on the original teaching path can be determined based on environmental information, and an area consisting of position points in the target area and whose distance from the original driving path is less than a preset maximum distance is used as a search area.
[0080] Step S320: Based on the preset search target, a target teaching path that meets the search target is searched in the search area.
[0081] The search target may include at least one of a path length target, a smoothness target, and a search algorithm. For example, the search target may include searching for the shortest path from the starting point to the end point of the original teaching path; for another example, the search target may include searching for the shortest path from the starting point to the end point that meets the smoothness requirement; for another example, the search target may include the preset path search algorithm used and the constraints of the preset path search algorithm.
[0082] It should be noted that the target teaching path can be the same as or different from the original teaching path. For example, if there are unexpected routes such as S-shaped, reversing, and circling in the original teaching path, the unexpected routes can be removed from the target teaching path obtained by searching the search target in the search area to obtain the shortest path from the starting point to the end point.
[0083] The above method provides a new method for processing the teaching path, which does not require setting rules and can adapt to various working conditions, thereby improving the versatility and efficiency of teaching path processing.
[0084] In some embodiments, the target teaching path can be used to assist in executing one or more functions such as path planning, positioning and mapping, memory parking, memory driving, etc. In this way, the performance of the corresponding function can be improved by optimizing the teaching path.
[0085] In some embodiments, the above step S310 can be performed during the process of generating the original teaching path, or after the original teaching path is generated. For example, in the process of manually operating the movable device to generate the original teaching path, the search area can be determined based on the currently acquired part of the original teaching path and the corresponding environmental information. For another example, after the movable device is manually operated to drive and generate the complete original teaching path and the environmental information corresponding to the original teaching path, the search area containing the original teaching path can be determined based on the original teaching path and the environmental information.
[0086] In some embodiments of the present disclosure, the above step S310 may include the following steps S3101 and S3102:
[0087] Step S3101: Determine a moving boundary corresponding to the original teaching path according to the environmental information of the original teaching path.
[0088] Among them, the moving boundary can be formed by a plurality of position points that the movable device can travel through from the original teaching path and are farthest from the original teaching path, that is, the moving boundary can be formed by a boundary point that is in the radial direction of the original teaching path and is closest to the original teaching path, and the boundary point can be a road boundary point, a lane boundary point, or a boundary point of a static obstacle. For example, the moving boundary can include a road boundary, a lane boundary, or a boundary formed by a static obstacle, and the moving boundary can be determined based on the road information, lane information, or static obstacle information in the environmental information, for example, the road boundary, lane boundary, or static obstacle boundary is obtained based on the image recognition algorithm. Optionally, the environmental information of the original teaching path may also include the moving boundary, so that the moving boundary can be directly obtained without re-identification.
[0089] In some embodiments, the search area may be all or part of the area enclosed by the moving boundary.
[0090] Figure 4 It is a schematic diagram of an original teaching path and moving boundary provided by an embodiment of the present disclosure. Figure 4 The scene involved is a parking lot scene, where P is a parking space, the solid line is the original teaching path 210, and the dotted lines are moving boundaries 221 and 222, and the two moving boundaries 221 and 222 are respectively located on both sides of the original teaching path.
[0091] Step S3102: Determine a search area including the original teaching path according to the moving boundary and the original teaching path.
[0092] In this way, it can be ensured that the search area determined based on the moving boundary and the original teaching path is an area through which the movable device can travel, and the target teaching path searched in the search area is a path through which the movable device can travel, thereby improving the accuracy of the teaching path processing.
[0093] In some embodiments, the distance between the moving boundary and the original teaching path can be set to be less than or equal to a preset maximum distance, and the preset maximum distance can be a distance pre-configured by the user; or, the preset maximum distance can also be determined according to the maximum detection distance that the sensor of the movable device can detect, for example, it can be equal to the maximum detection distance; or, the preset maximum distance can be determined according to the external dimension parameters of the movable device, and the external dimension parameters can be any one of the length, width, and wheelbase of the movable device. Taking the wheelbase as an example, the preset threshold value can be N times the wheelbase, and N is greater than or equal to 1. Optionally, N can be less than or equal to 5. In this way, by constraining the distance between the position point of the search area and the original teaching path by the preset threshold value, it is possible to avoid the search area being too large, reduce the amount of search calculations, and improve the search efficiency. For example, if there are no environmental factors that affect the travel of the movable device, such as road boundaries, lane boundaries, and boundaries formed by static obstacles within the preset maximum distance range of the original teaching path, then the distance between the determined moving boundary and the original teaching path is the preset maximum distance, which can avoid determining an excessively large moving boundary in an open scene, avoid the search area determined based on the moving boundary being too large, and improve the search efficiency and the efficiency of teaching path processing.
[0094] In some embodiments of the present disclosure, the above-mentioned moving boundary may include a first side boundary point set located on a first side of the original teaching path and a second side boundary point set located on a second side of the original teaching path, wherein the first side and the second side may be the left side and the right side of the extension direction of the original teaching path, respectively.
[0095] The above step S3102 may include the following steps S31021 to S31023:
[0096] Step S31021, determine a set of candidate path points corresponding to the original teaching path.
[0097] The candidate path point set includes a plurality of candidate path points, and the distance between two adjacent candidate path points in the extension direction of the original teaching path is within a preset distance range. The preset distance range may be any distance range pre-set by the user.
[0098] In some examples, the candidate path point can be represented by (x, y, theta), where x can represent the horizontal position of the candidate path point, usually a horizontal distance relative to the starting point; y can represent the vertical position of the candidate path point, usually a longitudinal distance relative to the starting point; theta can represent the orientation of the movable device at the candidate path point (x, y), usually expressed as an angle, which describes the moving direction of the movable device. This angle is usually relative to the true north direction or the positive x-axis direction of the coordinate system.
[0099] In some examples, the original path points of the original teaching path may be densified and / or de-densified to obtain the candidate path point set, so that the distance between two adjacent candidate path points is within a preset distance range. For example, the original path points may be added and / or deleted according to the intervals between adjacent original path points in the extension direction of the original teaching path to obtain the candidate path point set, so that the distance between two adjacent candidate path points in the candidate path point set is within the preset distance range.
[0100] In one implementation, the preset distance range may include a distance less than or equal to a maximum distance threshold. If the interval between two adjacent original path points is greater than the maximum distance threshold, a new path point may be inserted between the two adjacent original path points, and the inserted new path point is adjacent to the two original path points, respectively, so that the distance between two adjacent candidate path points in the candidate path point set meets the condition within the preset distance range. In this way, it is possible to avoid the accuracy of path processing being affected by the excessive interval between adjacent path points.
[0101] In another implementation, the preset distance range may include a distance greater than or equal to a minimum distance threshold, and if the interval between two adjacent original path points is less than the minimum distance threshold, one of the original path points may be deleted so that the distance between two adjacent candidate path points in the candidate path point set satisfies the condition within the preset distance range. In this way, the efficiency of path processing can be prevented from being affected by the small interval between adjacent path points.
[0102] In another implementation, the preset distance range may include less than or equal to a maximum distance threshold and greater than or equal to a minimum distance threshold, and the original path points may be added and / or deleted according to the preset distance range to obtain a set of candidate path points.
[0103] The above-mentioned minimum distance threshold and maximum distance threshold may be pre-set distance thresholds, and the minimum distance threshold is less than the maximum distance threshold. Optionally, the minimum distance threshold and / or the maximum distance threshold may be determined based on the external dimension parameters of the movable device, and the external dimension parameters may be the length or width of the movable device, and the external dimension parameters may also be the front and rear wheelbase of the movable device. For example, the maximum distance threshold may be set to the value of the external dimension parameters of the movable device; for another example, the maximum distance threshold may be set to C1 times the external dimension parameters of the movable device, and the maximum distance threshold may be set to C2 times the external dimension parameters of the movable device. Among them, C1 may be a value greater than or equal to 1, such as 1.1 or 1.5; C2 may be any value less than 1, such as 0.5 or 0.8.
[0104] Step S31022, for a candidate path point in the candidate path point set, determine the candidate area corresponding to the candidate path point based on the first side boundary point and the second side boundary point corresponding to the candidate path point, and obtain multiple candidate areas corresponding to the multiple candidate path points.
[0105] Among them, the first side boundary point corresponding to the candidate path point is the boundary point closest to the candidate path point in the first side boundary point set, and the second side boundary point corresponding to the candidate path point is the boundary point closest to the candidate path point in the second side boundary point set.
[0106] The specific implementation method of step S31022 includes any one of the following methods 1 or 2:
[0107] Method 1: Taking the middle position of the line segment formed by the first side boundary point and the second side boundary point as the center of the circle and the length of the line segment as the diameter, a first area is formed and the first area is used as the candidate area. The first area can also be called a first circular area or a first channel circle.
[0108] Method 2: With the candidate path point as the center and the specified length as the radius, a second area is formed, and the second area is used as the candidate area; wherein the specified length is the minimum value between the preset radius and the minimum boundary distance, and the minimum boundary distance is the minimum distance between the candidate path point and the first side boundary point and the second side boundary point. The second area may also be referred to as a second circular area or a second channel circle. Optionally, the implementation method of the preset radius can refer to the implementation method of the preset maximum distance in the aforementioned embodiment of the present disclosure, which will not be repeated here.
[0109] The above channel circle (first channel circle or second channel circle) can be represented by (x, y, radius, floor_index), where x can represent the horizontal position of the center of the channel circle, usually a horizontal distance relative to the starting point; y can represent the vertical position of the center of the channel circle, usually a vertical distance relative to the starting point; radius can represent the radius of the channel circle, and floor_index represents the floor, which defaults to 0. Floor_index is optional.
[0110] Step S31023: taking a set of multiple candidate areas as a search area.
[0111] Figure 5 It is a schematic diagram of a search area provided by an embodiment of the present disclosure. Figure 5 The scene involved is a parking lot scene, P is a parking space, and based on the original teaching path 210 and the moving boundaries 221 and 222 on both sides of the original teaching path, multiple channel circles can be determined, each of which is a candidate area corresponding to a candidate path point, and the collection of multiple candidate areas forms a search area. It should be noted that Figure 5 The channel circle shown can be generated based on the above-mentioned method 1 or method 2.
[0112] In this way, through the above steps S31021 to S31023, a search area including the original teaching path can be determined according to the moving boundary and the original teaching path, so as to search for a target teaching path that meets the search target in the search area.
[0113] In some embodiments, the above step S320 can be implemented in the following manner: taking the position points in the search area as the nodes to be searched, and searching the nodes to be searched based on a preset path search algorithm to obtain a target teaching path that meets the search target.
[0114] The preset path search algorithm may be a heuristic path search algorithm, such as an A-star search algorithm, a Dijkstra algorithm, a BFS (Breadth-First Search) search algorithm, and the like.
[0115] In some examples, the preset path search algorithm may include a first cost function and / or a second cost function, and the search target is achieved by the first cost function and / or the second cost function.
[0116] The first cost function may be used to determine a first cost from the node to be searched to the end point according to the index of the node to be searched and the number of candidate regions included in the search region.
[0117] Among them, the index of the node to be searched is the maximum value of the index of one or more candidate areas to which the node to be searched belongs, and the index of the candidate area is the index determined according to the order of the candidate path points in the candidate path point set. For example, the multiple candidate path points in the above candidate path point set may include the starting point and the end point of the original teaching path. Optionally, the index of each candidate path point can be determined according to the order of the multiple candidate path points in the candidate path point set. The order can be the order in the extension direction of the original teaching path, such as the extension order from the end point to the end point. The index of the starting point can be set to the minimum index (for example, 1), and the index of the candidate path points in the extension direction can be set to 2, 3, ..., N in sequence, where N is the index of the end point and is also the maximum index of the multiple candidate path points. Further, the index of each candidate path point can be used as the index of the candidate area corresponding to the candidate path point.
[0118] It should be noted that, since there are duplicate areas among multiple candidate areas, if the node to be searched belongs to only one candidate area, the index corresponding to the node to be searched is the index of the candidate area to which the node to be searched belongs. If the node to be searched belongs to multiple candidate areas, the index corresponding to the node to be searched is the maximum value among the indices of the multiple candidate areas to which the node to be searched belongs.
[0119] For example, the first cost function can be expressed by the following formula (1):
[0120] h cost =1-node index / max index (1)
[0121] Among them, h cost Indicates the first cost of the node to be searched, node index Indicates the index of the node to be searched, max index Indicates the number of candidate regions contained in the search area.
[0122] By using the first cost function, the first cost from the node to be searched to the end point can be determined. The first cost can also be called the heuristic cost. The closer the index of the candidate area where the node to be searched is to the total number of candidate areas, the smaller the first cost. The smaller the first cost of the node to be searched, the more priority the node to be searched has as the target node on the target teaching path. For example, in the search process, the data format of a "heap" can be used for processing. The nodes to be searched with larger first costs are ranked lower in the heap, and the nodes to be searched with smaller first costs are ranked higher in the heap. The nodes to be searched at higher positions will be preferentially selected as the target nodes on the target teaching path.
[0123] The first cost function can be used to determine the shortest path from the starting point to the end point of the original teaching path, reducing the impact of non-shortest paths caused by circling or reversing in the teaching path.
[0124] The second cost function can be used to determine the second cost from the starting point to the node to be searched based on the distance and smoothness between the node to be searched and the current node, and the distance between the center position of the candidate area where the node to be searched is located and the node to be searched.
[0125] For example, the second cost function can be expressed by the following formula (2):
[0126] g cost ( n )=dis cost +kappa cost +circle cost +g cost(n-1) (2)
[0127] Among them, g cost(n) Indicates the second cost of the node to be searched, dis cost Indicates the distance between the node to be searched and the current node (such as Euclidean distance), kappa cost Indicates the smoothness between the node to be searched and the current node, circle cost Indicates the distance between the center of the candidate region where the node to be searched is located and the node to be searched, g xost(n-1) Indicates the second cost of the current node.
[0128] In some embodiments, the preset path search algorithm may also include kinematic parameters of the movable device, which may be used to make the node to be searched closer to the end point relative to the current node, so that the node expansion during the search process can only expand forward.
[0129] For example, the kinematic parameters may include a maximum steering angle. By setting the maximum steering angle within a certain range, the node may be constrained to only extend forward.
[0130] The effects of the path processing method provided in the embodiment of the present disclosure are illustrated by two specific examples as follows:
[0131] Figure 6 It is a schematic diagram of a path processing provided by an embodiment of the present disclosure. Figure 6 The scene involved is a parking lot scene, P is a parking space, and based on the original teaching path 210 and the moving boundaries 221 and 222 on both sides corresponding to the original teaching path, multiple channel circles can be determined, each channel circle is a candidate area corresponding to a candidate path point, and the collection of multiple candidate areas forms a search area.
[0132] In this embodiment, there are multiple reversing points in the original teaching path. The second type of channel circle corresponding to the candidate path points of the reversing points is represented by a dotted circle, and the first type of channel circle corresponding to the candidate path points of the non-reversing points is represented by a solid circle. The search area includes the first type of channel circle represented by the solid circle and the second type of channel circle represented by the dotted circle. Using the path processing method provided by the embodiment of the present disclosure, no matter how many times the reversing points are added, multiple channel circles are added within a range. Since there will be overlaps between the channel circles, the traversable space (search area) represented by them does not essentially increase or decrease. The search is performed within the search area. As long as the search area does not change significantly, the search results are consistent. Therefore, no matter how many times the reversing is added, using the path processing method of the aforementioned embodiment of the present disclosure, based on Figure 6 The original teaching path and moving boundary shown can generate a target teaching path formed by the target node, and can search out a forward path, thereby filtering out the reversing path through path search. It should be noted that the first type of channel circle and the second type of channel circle are for the convenience of description, and there is no need to distinguish the types in the step of determining the candidate area (such as the channel circle) corresponding to the candidate path point.
[0133] Figure 7 It is a schematic diagram of a path processing provided by an embodiment of the present disclosure. Figure 7 The scenario involved is a parking lot scenario, P is a parking space, and based on the original teaching path and the moving boundary corresponding to the original teaching path, multiple channel circles can be determined, each channel circle is a candidate area corresponding to a candidate path point, and the collection of multiple candidate areas forms a search area.
[0134] In this embodiment, the original teaching path circles in a specific area (three circles in the figure), and there are multiple candidate path points and their corresponding candidate areas (channel circles) in the circle area. Different channel circles will have repeated areas. In this way, different nodes to be searched will correspond to multiple channel circles.
[0135] Based on the above-mentioned first cost function, the first cost of the node to be searched in each channel circle can be determined according to the index of the node to be searched, that is, the maximum value of the index of one or more candidate areas to which the node to be searched belongs. When the current node is the node J1 in the graph, the next node of the current node can be searched in the first channel circle Z1 and the second channel circle Z2, wherein the first channel circle Z1 is a first type of channel circle, which is represented by a solid circle in the figure, and the second channel circle Z2 is a second type of channel circle, which is represented by a dotted circle in the figure. Since the first channel circle Z1 is closer to the end point, the index of the first channel circle Z1 is greater than the index of the second channel circle Z2. After calculating the first cost based on the first cost function, the first cost of the nodes in the first channel circle Z1 is less than the first cost of the nodes in the second channel circle Z2. Therefore, the nodes in the first channel circle Z1 will be prioritized as the next target node of the current node. In this way, the second type of channel circle represented by the dotted circle formed by the circle can be skipped, and the next target node can be searched from the first channel circle Z1 in the first type of channel circle represented by the solid circle extending toward the end point, and the end point is finally found, thereby achieving the purpose of generating the shortest path. It should be noted that the above-mentioned first type of channel circle and second type of channel circle are for the convenience of description, and there is no need to distinguish between types in the step of determining the candidate area (such as the channel circle) corresponding to the candidate path point.
[0136] In some embodiments of the present disclosure, the above-mentioned path processing related information can be displayed through an interface, and the related information can include at least one of the above-mentioned original teaching path, moving boundary, candidate path point, candidate area, search area, target teaching path, and target node. For example, the above-mentioned related information can be displayed through the interface of the vehicle display, mobile phone APP or computer client. The displayed interface can be as follows: Figures 4 to 7 In this way, it is convenient for users to intuitively observe the relevant information of path processing.
[0137] Figure 8 FIG. 1 is a flow chart of another path processing method provided by an embodiment of the present disclosure. Figure 8 As shown, the path processing method of this embodiment may include the following steps S810 to S830.
[0138] Step S810: determining a search area including the original teaching path according to the original teaching path of the movable device and the environmental information corresponding to the original teaching path.
[0139] In some embodiments, step S810 may include the following steps S811 to S814:
[0140] Step S811, performing densification and / or dedensification operations on the original path points of the original teaching path to obtain a set of candidate path points, so that the distance between two adjacent candidate path points is within a preset distance range.
[0141] Step S812, traverse each candidate path point in the candidate path point set, and extract a first side boundary point and a second side boundary point corresponding to the candidate path point from the moving boundary determined based on the environmental information.
[0142] The moving boundary determined based on the environmental information may include a first side boundary point set located on the first side of the original teaching path and a second side boundary point set located on the second side of the original teaching path, and the first side and the second side may be the left side and the right side of the extension direction of the original teaching path, respectively. The first side boundary point corresponding to the candidate path point is the boundary point in the first side boundary point set that is closest to the candidate path point, and the second side boundary point corresponding to the candidate path point is the boundary point in the second side boundary point set that is closest to the candidate path point.
[0143] Step S813, for each candidate path point in the candidate path point set, determine the candidate area corresponding to the candidate path point according to the first side boundary point and the second side boundary point corresponding to the candidate path point, and obtain multiple candidate areas corresponding to the multiple candidate path points.
[0144] For example, based on the first side boundary point and the second side boundary point corresponding to each candidate path point, the candidate path point is moved to the middle position of the two boundary points as the center of the channel circle, and the channel circle is generated as the candidate area.
[0145] Step S814: taking a set of multiple candidate areas as a search area.
[0146] The candidate area may be a channel circle, and the search area may be a channel circle set.
[0147] In some embodiments, the specific implementation of step S810 may also refer to the description of step S310 in the aforementioned embodiment of the present disclosure, which will not be repeated here.
[0148] Step S820: Search in the search area based on a preset path search algorithm to obtain multiple target nodes on the shortest path from the starting point to the end point of the original teaching path.
[0149] In some embodiments, the preset path search algorithm may include an A-star search algorithm or other heuristic search algorithms. The specific implementation of searching for the target node based on the preset path search algorithm can refer to the description of searching for the target node of the target teaching path in the previous embodiment of the present disclosure, which will not be repeated here.
[0150] Step S830, smoothing the multiple target nodes based on a preset smoothing algorithm to obtain a target teaching path.
[0151] It should be noted that step S830 is an optional step, and the target teaching path can be obtained directly based on multiple target nodes without smoothing.
[0152] In some embodiments, the preset smoothing algorithm may include a pure tracking control algorithm, a polynomial interpolation smoothing algorithm, a curve fitting algorithm or other smoothing algorithms.
[0153] Taking the pure tracking control algorithm as an example, according to the simple geometric bicycle model based on the Ackerman steering vehicle, the front wheel angle of the pure tracking algorithm can be obtained. According to the front wheel angle, the kinematic model of the movable device is used to calculate the next state of the movable device to update the position of the next target node, but the updated position of the target node is still within the search area, thereby achieving the purpose of simple smoothness.
[0154] In this way, through the above steps S810 to S830, a target teaching path that meets the search target can be obtained in the search area through a preset path search algorithm and a preset smoothing algorithm, thereby improving the accuracy of the teaching path.
[0155] Fig. 9 is a flow chart of a device control method provided by an embodiment of the present disclosure. The device control method can be Figure 1 The mobile device and / or server shown is executed. Fig. 9 As shown, the path processing method of this embodiment may include:
[0156] Step S910, determining a target teaching path corresponding to the first movable device.
[0157] Step S920: Control the first movable device to travel according to the target teaching path.
[0158] Among them, the target teaching path can be a path obtained by searching in a search area containing an original teaching path based on a preset search target, the original teaching path is the driving path of the second movable device under manual operation, and the search area is an area that the second movable device can travel through, determined based on the original teaching path and environmental information corresponding to the original teaching path.
[0159] The first movable device and the second movable device may be the same or different. In some examples, the second movable device may be a movable device specifically used for data collection (such as a data collection vehicle), and the first movable device is a movable device actually used by the user (such as an autonomous driving vehicle used by the user). In other examples, both the first movable device and the second movable device may be movable devices actually used by the user (such as an autonomous driving vehicle used by the user).
[0160] The method for acquiring the target teaching path in this embodiment can refer to the description in the previous embodiments of the present disclosure, and will not be repeated here.
[0161] In this way, since the target teaching path is optimized relative to the original teaching path, the control accuracy can be improved by controlling the driving of the first movable device based on the target teaching path.
[0162] In some examples, there may be only one target teaching path corresponding to the first movable device. For example, if the first movable device is fixed and moves in a certain area, only one target teaching path may be set, and the first movable device may be controlled to travel according to the target teaching path.
[0163] In other examples, there may be multiple target teaching paths corresponding to the first movable device, and different target teaching paths correspond to different positions and / or areas, so that the target teaching path corresponding to the position of the first movable device can be determined.
[0164] For example, the first movable device is located in a specific parking lot. A target teaching path corresponding to the specific parking lot can be determined, path planning can be performed according to the target teaching path, and the first movable device can be controlled to perform automatic parking and / or automatic car pickup, thereby realizing a memory parking function.
[0165] For another example, the first movable device is expected to travel from a first location to a second location. A target teaching path from the first location to the second location can be determined, path planning can be performed based on the target teaching path, and the first movable device can be controlled to travel from the first location to the second location, thereby realizing a memory driving function.
[0166] Fig.10 Schematic diagram of a path processing device provided by an embodiment of the present disclosure. Fig.10As shown, the path processing device 1000 may include a memory 1010 and a processor 1020. The memory 1010 may be used to store computer instructions, and the processor 1020 may be used to call computer instructions from the memory 1010 to execute all or part of the steps of any path processing method in the aforementioned embodiments of the present disclosure. It should be noted that the processor 1020 may include one or more processors to execute instructions, and the memory 1010 may also include one or more memories to store computer instructions.
[0167] Fig.11 Schematic diagram of a device control device provided by an embodiment of the present disclosure. Fig.11 As shown, the device control apparatus 1100 may include a memory 1111 and a processor 1120. The memory 1111 may be used to store computer instructions, and the processor 1120 may be used to call computer instructions from the memory 1111 to execute all or part of the steps of any device control method in the aforementioned embodiments of the present disclosure. It should be noted that the processor 1120 may include one or more processors to execute instructions, and the memory 1111 may also include one or more memories to store computer instructions.
[0168] An embodiment of the present disclosure further provides a movable device, which includes the path processing device or the device control device provided in the above embodiment.
[0169] The movable device may be a movable device such as a vehicle, a robot, etc. For example, the movable device may be a vehicle with auxiliary driving functions such as memory parking and / or memory driving; for another example, the movable device may be a device such as a robot that can move autonomously.
[0170] The embodiments of the present disclosure also provide a computer-readable storage medium on which a computer program is stored. When the computer program is executed by a processor, any method in the aforementioned embodiments of the present disclosure is implemented. Optionally, the computer-readable storage medium may be a non-transitory storage medium, but is not limited thereto, and may also be a transient storage medium.
[0171] The embodiments of the present disclosure further provide a computer program product, which may include a computer program. When the computer program is executed by a processor, any method in the aforementioned embodiments of the present disclosure may be implemented.
[0172] The present disclosure may be a system, a method and / or a computer program product. The computer program product may include a computer-readable storage medium carrying computer-readable program instructions for causing a processor to implement any method in the foregoing embodiments of the present disclosure.
[0173] A computer-readable storage medium may be a tangible device that can hold and store instructions used by an instruction execution device. A computer-readable storage medium may be, for example, but not limited to, an electrical storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. More specific examples of computer-readable storage media (a non-exhaustive list) include: 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), a static random access memory (SRAM), a portable compact disk read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanical encoding device, such as a punch card or a raised structure in a groove on which instructions are stored, and any suitable combination of the foregoing. As used herein, a computer-readable storage medium is not to be interpreted as a transient signal per se, such as a radio wave or other freely propagating electromagnetic wave, an electromagnetic wave propagating through a waveguide or other transmission medium (e.g., a light pulse through a fiber optic cable), or an electrical signal transmitted through a wire.
[0174] The computer-readable program instructions described herein can be downloaded from a computer-readable storage medium to each computing / processing device, or downloaded to an external computer or external storage device via a network, such as the Internet, a local area network, a wide area network, and / or a wireless network. The network can include copper transmission cables, optical fiber transmissions, wireless transmissions, routers, firewalls, switches, gateway computers, and / or edge servers. The network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in the computer-readable storage medium in each computing / processing device.
[0175] The computer program instructions for performing the operation of the present disclosure may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-related instructions, microcode, firmware instructions, state setting data, or source code or object code written in any combination of one or more programming languages, which may include object-oriented programming languages, such as Smalltalk, C++, etc., and conventional procedural programming languages, such as "C" language or similar programming languages. Computer-readable program instructions may be executed entirely on a user's computer, partially on a user's computer, as an independent software package, partially on a user's computer, partially on a remote computer, or completely on a remote computer or server. In the case of a remote computer, the remote computer may 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 may be connected to an external computer (e.g., using an Internet service provider to connect via the Internet). In some embodiments, an electronic circuit, such as a programmable logic circuit, a field programmable gate array (FPGA), or a programmable logic array (PLA), may be personalized by utilizing the state information of the computer-readable program instructions, and the electronic circuit may execute the computer-readable program instructions, thereby realizing various aspects of the present disclosure.
[0176] Various aspects of the present disclosure are described herein with reference to the flowcharts and / or block diagrams of the methods, devices (systems) and computer program products according to the embodiments of the present disclosure. It should be understood that each box in the flowchart and / or block diagram and the combination of each box in the flowchart and / or block diagram can be implemented by computer-readable program instructions.
[0177] These computer-readable program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so as to produce a machine, so that when these instructions are executed by the processor of the computer or other programmable data processing device, a device for implementing the functions / actions specified in one or more boxes in the flowchart and / or block diagram is generated. These computer-readable program instructions can also be stored in a computer-readable storage medium, and these instructions make the computer, programmable data processing device, and / or other equipment work in a specific manner, so that the computer-readable medium storing the instructions includes a manufactured product, which includes instructions for implementing various aspects of the functions / actions specified in one or more boxes in the flowchart and / or block diagram.
[0178] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device so that a series of operating steps are performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to implement the functions / actions specified in one or more boxes in the flowchart and / or block diagram.
[0179] The flowcharts and block diagrams in the accompanying drawings show the possible architecture, functions and operations of the systems, methods and computer program products according to multiple embodiments of the present disclosure. In this regard, each box in the flowchart or block diagram can represent a module, a program segment or a part of an instruction, and the module, a program segment or a part of an instruction contains one or more executable instructions for implementing the specified logical function. In some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two consecutive boxes 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 box in the block diagram and / or flowchart, and the combination of boxes in the block diagram and / or flowchart can be implemented with a dedicated hardware-based system that performs a specified function or action, or can be implemented with a combination of dedicated hardware and computer instructions. It should be noted that implementation by hardware, implementation by software, and implementation by a combination of software and hardware are all equivalent.
[0180] The embodiments of the present disclosure have been described above, and the above description is exemplary, not exhaustive, and is not limited to the disclosed embodiments. Many modifications and changes will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments. The choice of terms used herein is intended to best explain the principles of the embodiments, practical applications, or technical improvements to the technology in the market, or to enable other persons of ordinary skill in the art to understand the embodiments disclosed herein. The scope of the present disclosure is defined by the appended claims.
Claims
1. A path processing method, characterized in that: The method comprises: According to an original teaching path of the movable device and environmental information corresponding to the original teaching path, a search area including the original teaching path is determined; wherein the original teaching path is a driving path of the movable device under manual operation, and the search area is an area that the movable device can drive through; Based on a preset search target, a target teaching path that meets the search target is searched in the search area.
2. The method according to claim 1, characterized in that The step of determining a search area including the original teaching path according to the original teaching path of the movable device and the environmental information corresponding to the original teaching path includes: Determining a moving boundary corresponding to the original teaching path according to the environmental information of the original teaching path; A search area including the original teaching path is determined according to the moving boundary and the original teaching path.
3. The method according to claim 2, characterized in that The moving boundary includes a first side boundary point set located at a first side of the original teaching path and a second side boundary point set located at a second side of the original teaching path; The step of determining a search area including the original teaching path according to the moving boundary and the original teaching path comprises: Determine a set of candidate path points corresponding to the original teaching path; wherein the set of candidate path points includes a plurality of candidate path points, and a distance between two adjacent candidate path points in an extension direction of the original teaching path is within a preset distance range; For a candidate path point in the candidate path point set, a candidate area corresponding to the candidate path point is determined according to a first side boundary point and a second side boundary point corresponding to the candidate path point, so as to obtain a plurality of candidate areas corresponding to the plurality of candidate path points; wherein the first side boundary point corresponding to the candidate path point is a boundary point in the first side boundary point set that is closest to the candidate path point, and the second side boundary point corresponding to the candidate path point is a boundary point in the second side boundary point set that is closest to the candidate path point; A set of the multiple candidate areas is used as the search area.
4. The method according to claim 3, characterized in that The determining, according to the first side boundary point and the second side boundary point corresponding to the candidate path point, a candidate area corresponding to the candidate path point comprises: A first region is formed with the middle position of a line segment formed by the first side boundary point and the second side boundary point as the center of a circle and the length of the line segment as the diameter, and the first region is used as the candidate region; or A second area is formed with the candidate path point as the center and the specified length as the radius, and the second area is used as the candidate area; wherein the specified length is the minimum value between the preset radius and the minimum boundary distance, and the minimum boundary distance is the minimum distance between the candidate path point and the first side boundary point and the second side boundary point.
5. The method according to claim 3, characterized in that: The determining of a set of candidate path points corresponding to the original teaching path includes: According to the intervals between adjacent original path points in the extension direction of the original teaching path, the original path points are added and / or deleted to obtain the candidate path point set, so that the distance between two adjacent candidate path points in the candidate path point set is within the preset distance range.
6. The method according to claim 3, characterized in that The step of searching in the search area based on a preset search target to obtain a target teaching path that meets the search target includes: Taking the position points in the search area as nodes to be searched, and searching the nodes to be searched based on a preset path search algorithm to obtain a target teaching path that meets the search target; In which, the preset path search algorithm includes a first cost function and / or a second cost function, the first cost function is used to determine the first cost from the node to be searched to the end point of the original taught path according to the index of the node to be searched and the number of candidate areas contained in the search area, the index of the node to be searched is the maximum value of the indexes of one or more candidate areas to which the node to be searched belongs, and the index of the candidate area is the index determined according to the order of the candidate path points in the candidate path point set; the second cost function is used to determine the second cost from the starting point of the original taught path to the node to be searched according to the distance and smoothness between the node to be searched and the current node, and the distance between the center position of the candidate area where the node to be searched is located and the node to be searched.
7. The method according to claim 6, characterized in that The preset path search algorithm also includes kinematic parameters of the movable device, and the kinematic parameters are used to make the node to be searched closer to the end point relative to the current node.
8. The method according to any one of claims 1 to 7, characterized in that The step of searching in the search area based on a preset search target to obtain a target teaching path that meets the search target includes: Based on a preset path search algorithm, a plurality of target nodes on the shortest path from the starting point to the end point of the original teaching path are searched in the search area; The multiple target nodes are smoothed based on a preset smoothing algorithm to obtain the target teaching path.
9. The method according to claim 8, characterized in that The preset smoothing algorithm is a pure tracking control algorithm, and / or the preset path search algorithm is an A-star search algorithm.
10. A device control method, characterized in that: The method comprises: determining a target teach path corresponding to the first movable device; Controlling the first movable device to travel according to the target teaching path; Among them, the target teaching path is a path searched in a search area containing an original teaching path based on a preset search target, the original teaching path is the driving path of the second movable device under manual operation, and the search area is an area that the second movable device can travel through, determined based on the original teaching path and environmental information corresponding to the original teaching path.
11. A path processing device, characterized in that: The path processing device comprises a memory and a processor, wherein the memory is used to store computer instructions, and the processor is used to call the computer instructions from the memory to execute the path processing method according to any one of claims 1 to 9.
12. A device control device, characterized in that: The device control apparatus comprises a memory and a processor, wherein the memory is used to store computer instructions, and the processor is used to call the computer instructions from the memory to execute the device control method as claimed in claim 10.
13. A movable device, characterized in that: The movable device comprises: the path processing device as claimed in claim 11, or the device control device as claimed in claim 12.
14. A computer-readable storage medium, characterized in that: A computer program is stored thereon, and when the computer program is executed by a processor, the computer program implements: the path processing method according to any one of claims 1 to 9, or the device control method according to claim 10.
Citation Information
Patent Citations
Map information construction method and device in teaching process
CN113551679A
Parking method for unmanned mining vehicle in long and narrow area
CN115071686A
Tractor path teaching method and tractor navigation method based on path teaching
CN116069016A
Parking path optimization method and device, vehicle and storage medium
CN116373848A
Method for determining lane course for vehicle, involves determining resultant respective path includes traffic lane boundary depending on predetermined allocation map which represents predetermined area around vehicle
DE102013201941A1