Method, apparatus, device and storage medium for trajectory generation
Patent Information
- Application Number
- CN202510572686.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-30
- Publication Date
- 2026-10-30
AI Technical Summary
然而,现有方法在处理复杂动态环境时仍面临诸多挑战
[0010]应当理解,本内容部分中所描述的内容并非旨在限定本公开的实施例的关键特征或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的描述而变得容易理解。
Smart Images

Figure CN123015593A_ABST
Abstract
Description
Technical Field
[0001] The exemplary embodiments disclosed herein generally relate to the field of computer technology, and more specifically, to methods, apparatus, devices, and storage media for trajectory generation. Background Technology
[0002] Trajectory prediction technology primarily involves reasonably inferring the motion trends of surrounding dynamic objects in complex environments to assist in path planning decisions for movable target objects. Trajectory prediction typically relies on key technologies such as environmental perception, historical motion data analysis, and prediction of future scene information. With the improvement of perception and learning capabilities, especially the rise of the end-to-end modeling paradigm, data-driven trajectory generation methods have gradually become mainstream. However, existing methods still face many challenges when dealing with complex dynamic environments. There is an urgent need to explore a trajectory generation method that can improve trajectory safety and reasonableness within an end-to-end framework. Summary of the Invention
[0003] In a first aspect of this disclosure, a method for trajectory generation is provided. The method includes: generating a predicted trajectory for a movable target object using a trajectory generation model, based at least on at least one of state information and task information of the target object, wherein the state information indicates at least one of velocity, position, and orientation of the target object, and the task information indicates constraint information related to generating the predicted trajectory; determining obstacle proximity for the predicted trajectory, wherein obstacle proximity represents the degree of proximity between the predicted trajectory and obstacles in the scene; and updating the trajectory generation model based at least on the obstacle proximity.
[0004] In a second aspect of this disclosure, a method for trajectory generation is provided. The method includes: acquiring at least one predicted trajectory for a movable target object, the target object being in a scene; determining at least one obstacle proximity degree corresponding to each of the at least one predicted trajectory, the obstacle proximity degree representing the degree of proximity between the corresponding predicted trajectory and an obstacle in the scene where the target object is located; and determining a target trajectory for the target object based on the at least one obstacle proximity degree and the at least one predicted trajectory.
[0005] In a third aspect of this disclosure, an apparatus for trajectory generation is provided. The apparatus includes: a predicted trajectory generation module configured to generate a predicted trajectory for a target object using a trajectory generation model, based at least on at least one of state information and task information of a movable target object, wherein the state information indicates at least one of velocity, position, and orientation of the target object, and the task information indicates constraint information related to generating the predicted trajectory; an obstacle proximity determination module configured to determine an obstacle proximity for the predicted trajectory, the obstacle proximity representing the degree of proximity between the predicted trajectory and obstacles in the scene; and an update module configured to update the trajectory generation model based at least on the obstacle proximity.
[0006] In a fourth aspect of this disclosure, an apparatus for trajectory generation is provided. The apparatus includes: a predicted trajectory acquisition module configured to acquire at least one predicted trajectory for a movable target object located in a scene; an obstacle proximity determination module configured to determine at least one obstacle proximity degree corresponding to each of the at least one predicted trajectory, wherein the obstacle proximity degree in the at least one obstacle proximity degree represents the degree of proximity between the corresponding predicted trajectory and an obstacle in the scene where the target object is located; and a target trajectory determination module configured to determine a target trajectory for the target object based on the at least one obstacle proximity degree and the at least one predicted trajectory.
[0007] In a fifth aspect of this disclosure, an electronic device is provided. The device includes at least one processor; and at least one memory coupled to the at least one processor and storing instructions for execution by the at least one processor. When executed by the at least one processor, the instructions cause the device to perform the methods of the first or second aspect.
[0008] In a sixth aspect of this disclosure, a computer-readable storage medium is provided. The computer-readable storage medium stores a computer program that can be executed by a processor to implement the methods of the first or second aspect.
[0009] In a seventh aspect of this disclosure, a computer program product is provided. The computer program product includes computer-executable instructions that, when executed by a processor, implement the method according to a first or second aspect of this disclosure.
[0010] It should be understood that the content described in this content section is not intended to limit the key or essential features of the embodiments of this disclosure, nor is it intended to restrict the scope of this disclosure. Other features of this disclosure will become readily apparent from the following description. Attached Figure Description
[0011] The above and other features, advantages, and aspects of the embodiments of this disclosure will become more apparent from the accompanying drawings and the following detailed description. In the drawings, the same or similar reference numerals denote the same or similar elements, wherein:
[0012] Figure 1 A schematic diagram of an example environment in which embodiments of the present disclosure can be implemented is shown;
[0013] Figure 2 A schematic diagram of the architecture of a trajectory generation model according to some embodiments of the present disclosure is shown;
[0014] Figure 3A A schematic diagram of the Euclidean distance field according to some embodiments of the present disclosure is shown;
[0015] Figure 3B A schematic diagram of a masked Euclidean distance field according to some embodiments of the present disclosure is shown;
[0016] Figure 4 A flowchart of a process for trajectory generation according to some embodiments of the present disclosure is shown;
[0017] Figure 5 A flowchart of another trajectory generation process according to some embodiments of the present disclosure is shown.
[0018] Figure 6 A schematic structural block diagram of an apparatus for trajectory generation according to some embodiments of the present disclosure is shown;
[0019] Figure 7 A schematic structural block diagram of another apparatus for trajectory generation according to some embodiments of the present disclosure is shown;
[0020] Figure 8 A block diagram of an electronic device in which one or more embodiments of the present disclosure may be implemented is shown. Detailed Implementation
[0021] Embodiments of this disclosure will now be described in more detail with reference to the accompanying drawings. While some embodiments of this disclosure are shown in the drawings, it should be understood that this disclosure can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided to provide a more thorough and complete understanding of this disclosure. It should be understood that the accompanying drawings and embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of protection of this disclosure.
[0022] In the description of embodiments of this disclosure, the term "comprising" and similar terms should be understood as open-ended inclusion, i.e., "including but not limited to". The term "based on" should be understood as "at least partially based on". The term "one embodiment" or "the embodiment" should be understood as "at least one embodiment". The term "some embodiments" should be understood as "at least some embodiments". Other explicit and implicit definitions may also be included below.
[0023] As used in this paper, the term "model" refers to a system that learns the relationship between inputs and outputs from training data, enabling it to generate corresponding outputs for a given input after training. Model generation can be based on machine learning techniques. Deep learning is a machine learning algorithm that uses multiple layers of processing units to process inputs and provide corresponding outputs. In this paper, "model" may also be referred to as a "machine learning model," "machine learning network," "neural network," or simply "network," and these terms are used interchangeably.
[0024] In this document, unless explicitly stated otherwise, performing a step in response to A does not mean that the step is performed immediately after A, but may include one or more intermediate steps.
[0025] It is understood that the data involved in this technical solution (including but not limited to the data itself, the acquisition or use of the data) shall comply with the requirements of relevant laws, regulations and related provisions.
[0026] It is understood that before using the technical solutions disclosed in the various embodiments of this disclosure, users should be informed of the types, scope of use, and usage scenarios of the personal information involved in this disclosure through appropriate means in accordance with relevant laws and regulations, and user authorization should be obtained.
[0027] For example, in response to receiving a user's active request, a prompt message is sent to the user to clearly inform the user that the requested operation will require the acquisition and use of the user's personal information, thereby enabling the user to choose whether to provide personal information to the software or hardware such as electronic devices, applications, servers or storage media that perform the operation of the technical solution disclosed herein, based on the prompt message.
[0028] As an optional but non-restrictive implementation, in response to a user's active request, a prompt message can be sent to the user, such as a pop-up window, where the prompt message can be presented in text format. Furthermore, the pop-up window can also include a selection control allowing the user to choose "agree" or "disagree" to provide personal information to the electronic device.
[0029] It is understood that the above notification and user authorization process are merely illustrative and do not constitute a limitation on the implementation of this disclosure. Other methods that comply with relevant laws and regulations may also be applied to the implementation of this disclosure.
[0030] Figure 1 A schematic diagram of an example environment in which embodiments of the present disclosure can be implemented is shown. References Figure 1 One or more movable objects, such as a first robot 110-1, a second robot 110-2, and a third robot 110-3, are deployed in environment 100. First robot 110-1, second robot 110-2, and third robot 110-3 can also be collectively or individually referred to as robot 110. Each robot 110 may be equipped with control devices to control its operation. For example, ... Figure 1 As shown, control devices 120-1, 120-2, and 120-3 are respectively deployed at the first robot 110-1, the second robot 110-2, and the third robot 110-3, which may also be collectively referred to as control device 120 or individually. In some embodiments, only one robot may be deployed in the environment 100, and only the movement path of this one robot needs to be planned. In some embodiments, multiple robots may be deployed in the environment 100. In this case, path planning can be performed simultaneously for multiple robots in the environment 100, or path planning can be performed only for any one robot in the environment 100.
[0031] In embodiments of this disclosure, robot 110 can be used for various suitable purposes, such as a transport robot for delivering goods, and control device 120 can be used to plan the movement path of robot 110. Robot 110 can, for example, perform parcel delivery services or warehouse management services. As an example, robot 110 can operate in indoor environments, such as warehouse environments.
[0032] exist Figure 1 In environment 100, control device 120 can be any type of microcontroller, programmable logic controller, industrial computer, single-board computer, field-programmable gate array, digital signal processor, multi-core processor, or any combination thereof, including accessories and peripherals of these devices or any combination thereof. In some embodiments, control device 120 can control robot 110 based on control commands it generates.
[0033] In some embodiments, the operation of robot 110 can be controlled via server 130. Server 130 can receive relevant data for various tasks and remotely control the operation of robot 110. Control device 120 collects data from robot 110 and communicates with server 130 via network 140 to send the data to server 130. Server 130 determines control commands for the robot based on the acquired data and sends the control commands to control device 120. Control device 120 controls robot 110 based on the received control commands. Server 130 can be various types of computing systems / servers capable of providing computing power, including but not limited to mainframes, edge computing nodes, computing devices in cloud environments, etc.
[0034] In some embodiments, robot 110 can connect to and communicate with server 130 via network 140. Robot 110 can send relevant data on various tasks performed by robot 110 to server 130 in real time.
[0035] It should be understood that the structure and function of the various elements in environment 100 are described for illustrative purposes only and do not imply any limitation on the scope of this disclosure. Furthermore, although in Figure 1 The illustration shows a robot, but embodiments of this disclosure can also be applied to other types of movable objects.
[0036] As briefly mentioned earlier, with the widespread application of autonomous mobile systems in fields such as industrial manufacturing, autonomous driving, and robotics, how to achieve safe and efficient path planning and trajectory prediction in complex environments has become one of the important research directions for mobile intelligent systems. The core objective of trajectory prediction is to generate a feasible and reasonable motion path for the moving body based on perceived environmental information and given task objectives.
[0037] Traditional trajectory planning methods typically employ a modular, phased approach. For example, an explicit environmental map is first constructed using a perception module, and then downstream modules perform path search and trajectory planning on this map. While this approach has a clear structure, it also presents several challenges. For instance, there is an explicit interface between perception and planning, leading to information transfer bottlenecks between multiple modules. The perception layer may lose some semantic or geometric details from the original image, affecting the accuracy of trajectory prediction. Furthermore, redundant processing and error accumulation between modules increase the overall system complexity and maintenance costs, and it struggles to quickly respond to sudden changes in dynamic scenarios.
[0038] To alleviate the aforementioned problems, a more compact trajectory planning method, namely an end-to-end architecture trajectory planning method, is proposed. This method attempts to output a complete feasible trajectory directly from the original perceptual input (such as camera images and laser data) and combined with other information through a unified model. The end-to-end method has significant advantages in simplifying the system structure and improving model synergy, and demonstrates strong performance in various scenarios. However, due to the lack of an intermediate explicit map and collision detection module, the model cannot accurately identify the relationship between the predicted trajectory and obstacles, thus increasing the risk of trajectory collisions. Especially in environments with dense obstacles, narrow passages, or scenarios requiring complex avoidance strategies, this deficiency limits the reliability of the end-to-end method.
[0039] In view of the above, according to embodiments of this disclosure, an improved scheme for trajectory generation is proposed to at least partially solve one or more of the above-mentioned problems. In this scheme, a predicted trajectory for a target object is first generated using a trajectory generation model, based at least on at least one of the state information and task information of the movable target object. The state information indicates at least one of the velocity, position, and orientation of the target object, and the task information indicates constraint information related to the generation of the predicted trajectory. Further, obstacle proximity for the predicted trajectory is determined, where obstacle proximity represents the degree of proximity between the predicted trajectory and obstacles in the scene. Finally, the trajectory generation model is updated based at least on the obstacle proximity.
[0040] Therefore, in the embodiments of this disclosure, by introducing obstacle proximity as a means of perceiving and utilizing spatial constraints, a low-collision-rate and highly controllable optimization strategy is provided for end-to-end trajectory planning. In this way, while maintaining the advantages of end-to-end trajectory planning, an effective modeling mechanism for scene structure is introduced, improving the spatial feasibility, safety, and target consistency of trajectory generation.
[0041] Some exemplary embodiments of this disclosure will now be described in detail with reference to the accompanying drawings.
[0042] Figure 2 A schematic diagram of the architecture 200 of a trajectory generation model according to some embodiments of the present disclosure is shown. The following will primarily refer to... Figure 1 The example environment described herein is for illustrative purposes only and is not intended to limit the scope of the invention. Embodiments of this disclosure can also be applied to other types of environments. Furthermore, architecture 200 will be described relative to server 130, but this is merely exemplary. Architecture 200 may be implemented on a remote server of the target object (e.g., server 130), or on the target object's own control device (e.g., control device 120), or may be implemented collaboratively by the remote server and the control device.
[0043] like Figure 2 As shown, server 130 can utilize trajectory generation model 212 to generate a predicted trajectory 205 for a target object. In some embodiments, the predicted trajectory 205 can be generated based on at least one of the state information and task information of the movable target object. In embodiments of this disclosure, the target object can include various suitable types of movable objects, such as including but not limited to autonomous driving systems (e.g., autonomous vehicles), drones, robots, etc. Such objects are capable of autonomously moving toward a set target in their environment. For example, the target object can be one or more of the first robot 110-1, the second robot 110-2, and the third robot 110-3 described above (collectively or individually referred to as robot 110). Furthermore, for safe and efficient movement, it is necessary to perceive the environment in which the target object is located. Based on the perception results, the next action of the target object can be determined (e.g., determining the direction of travel, planning a reasonable path, etc.).
[0044] In some embodiments, the state information indicates at least one of the target object's current velocity, position, and orientation. The task information indicates constraint information related to generating the predicted trajectory. The trajectory generation model 212 can combine the target object's state information 203 and task information 204 to improve the reasonableness of the generated trajectory.
[0045] The target object's state information 203 is used to describe its current motion state, and may typically include, but is not limited to, the following: the target object's spatial position in the current coordinate system, used to determine its starting point or the context of its current environment; the target object's movement trend, which helps the trajectory prediction model infer its reasonable direction of motion and rate changes; and the target object's forward direction or orientation angle, etc.
[0046] The task information 204 of the target object is used to describe the external objectives or constraints that the current trajectory prediction needs to meet. Examples of task information 204 may include, but are not limited to: target point location, used to guide the trajectory generation in a specific direction; task type, such as "driving to the side of the road", "avoiding pedestrians", "going to a designated area", etc., used to adjust the trajectory generation strategy; path preferences or constraints, such as "avoiding congested areas as much as possible" "prioritizing the right side", etc., used to generate a trajectory that better meets actual needs.
[0047] Continue to refer to Figure 2 Alternatively or additionally, the trajectory generation model 212 may generate a predicted trajectory 205 of the target object based on at least one of the state information 203, task information 204, and image features 202.
[0048] In some embodiments, the scene in which the target object is located can refer to the surrounding environment experienced by the target object within a certain time range, which may include static objects, dynamic objects, etc. Static objects may include, for example, roads, obstacles, buildings, shelves, and other objects that remain still over a relatively long period of time. Dynamic objects may include, for example, people, animals, other movable objects, and other objects that may move in real time.
[0049] During the movement of the target object, information about its surrounding environment can be acquired using image acquisition devices (e.g., cameras, vision sensors) to further construct 3D understanding or trajectory planning. Such image acquisition devices can be placed in the surrounding environment or on the target object. For example, server 130 can acquire multiple images 201 from one or more perspectives captured by a multi-camera system deployed on the target object. These images can be acquired from multiple angles such as forward view, side view, and surround view, covering environmental information surrounding the target object.
[0050] In some embodiments, to support the trajectory generation model's perception of the scene, it is necessary to extract image representations, also known as image features 202, from the acquired images that can express the semantics and spatial features of the scene. Server 130 can determine the image features 202 of the scene based on multiple images 201 acquired for the scene where the movable target object is located. Multiple images 201 are acquired based on the scene where the movable target object is located to obtain visual information related to the current environment. These images typically cover the area in front of, to the sides of, or around the target object, and can reflect the spatial structure of the environment, passageways, and other content.
[0051] In some embodiments, image features 202 can be determined based on multiple images 201 using a pre-trained image encoder 211. The server 110 can input multiple images 201 into the pre-trained image encoder 211. The encoder 211 can be a convolutional neural network, a transformer structure, a learning model incorporating multimodal perception, or any other image encoder structure that performs well in visual tasks. The task of the encoder 211 is to compress and represent the visual information (such as scene semantics, spatial geometry, etc.) contained in the images 201, extracting a set of intermediate image features 202 with high-level abstraction capabilities.
[0052] After determining the image features 202, the trajectory generation model 212 can generate a predicted trajectory 205 for the target object, based at least on the image features 202. The image features 202, as one of the main inputs to the trajectory generation model, provide semantic and spatial structural information about the environment in which the target object is located. The image features 202 help the model perceive key elements such as obstacle distribution, passable areas, and road boundaries, thereby generating a spatially plausible predicted trajectory 205. In some embodiments, the trajectory generation model 212 can perform trajectory prediction solely based on image features without relying on other inputs.
[0053] In embodiments of this disclosure, the trajectory generation model 212 can adopt any structural form suitable for trajectory modeling or trajectory generation tasks. For example, it can be a recurrent neural network, an encoder-decoder structure, a Transformer-based sequence modeling network, a diffusion model, a flow matching model, or a combination of the above structures.
[0054] Continue to refer to Figure 2 After generating the predicted trajectory 205 of the target object, the server 130 can determine the obstacle proximity 207 for the predicted trajectory 205. The obstacle proximity 207 represents the degree of proximity between the predicted trajectory and obstacles in the scene.
[0055] In some embodiments, obstacle proximity can be determined based on an obstacle map indicating the distribution of obstacles in the scene. (Continue to refer to...) Figure 2 Server 130 can acquire an obstacle map 206 indicating the distribution of obstacles in the scene. The end-to-end trajectory generation model can directly generate predicted trajectories from pure visual images, offering higher processing efficiency and lower system complexity. However, due to the lack of intermediate semantic construction, pure visual features struggle to explicitly represent "where obstacles are," resulting in weak interpretability. Furthermore, because the trajectory generation process driven by pure visual features lacks explicit collision constraints, the model is prone to generating trajectories that traverse obstacles. To reduce the collision probability of generated trajectories while retaining the advantages of the end-to-end architecture, an obstacle map can be introduced. This map can serve as an intermediate representation of the environmental structure, providing explicit information about the spatial structure of obstacles, thereby improving the safety and accuracy of the model's generated trajectories.
[0056] The obstacle map 206, also known as an obstacle occupancy map, is a gridded representation of whether various spatial locations in an environment are occupied by obstacles. It typically exists as a two-dimensional grid map, with each cell recording a value indicating whether that location is occupied by an obstacle, or the probability of that occupancy. An obstacle refers to an environmental entity or area that may obstruct, interfere with, or pose a collision risk to the normal path of a moving object. Obstacles can be static or dynamic. The types of obstacles are not limited to walls, building structures, vehicles, equipment, pedestrians, shelves, boxes, etc., but can also include ground features such as elevation differences, potholes, or other obstacle areas that may affect passage.
[0057] In some embodiments, obstacle map 206 may be an auxiliary output or intermediate product of feature extraction by image encoder 211, thereby not interrupting the data flow of the end-to-end generation method. Alternatively or additionally, obstacle map 206 may originate from any other perception module or pre-built scene features that provide spatial distribution information of obstacles in the scene. By introducing obstacle map 206 as additional supervision information during the training phase, the architecture can retain the efficiency of end-to-end learning while training the model to avoid generating trajectories that cross obstacles, thereby improving the rationality and robustness of trajectory generation.
[0058] To improve the spatial feasibility and obstacle avoidance capabilities of trajectory generation, an obstacle map 206, established based on the spatial distribution of obstacles, can be used to further calculate the proximity index between the predicted trajectory 205 and surrounding obstacles, namely, obstacle proximity 207. Obstacle proximity 207 refers to the degree to which each trajectory point in the predicted trajectory 205 is within the influence range of obstacles. In a broader sense, obstacle proximity 207 not only indicates whether trajectory points directly overlap with obstacle areas, but also represents the degree of risk associated with their spatial proximity to obstacles. Therefore, obstacle proximity 207 can be used to reflect the spatial safety of the trajectory.
[0059] In some embodiments, obstacle proximity 207 can be modeled and quantified in various ways. For example, it can be achieved by calculating the spatial relationship between each point in the scene and the obstacle boundary based on the obstacle map 206, forming a continuous spatial distance representation. The smaller the distance, the closer the predicted trajectory is to the obstacle, and the higher the potential collision risk. Therefore, a higher penalty value can be assigned during training. Conversely, the larger the distance, the safer the trajectory, and the model can prioritize learning such results.
[0060] In some embodiments, server 130 may determine a reference distance between each first trajectory point in at least one of a plurality of trajectory points and an obstacle in the scene, based on obstacle map 206. This reference distance can be used to measure the spatial proximity between the trajectory point and the obstacle, and thus to comprehensively evaluate the obstacle proximity 207 of the predicted trajectory 205. For example, server 130 may obtain the obstacle proximity 207 of the predicted trajectory 205 based on the reference distances determined for each of the at least one first trajectory point.
[0061] In some embodiments, server 130 can determine the nearest obstacle to the first trajectory point in the scene from obstacle map 206. Based on the location of the nearest obstacle in the obstacle map, the distance between the first trajectory point and the nearest obstacle is calculated as a reference distance. Subsequently, server 130 can statistically obtain the overall obstacle proximity 207 of the predicted trajectory 205 based on the reference distances determined for each of the aforementioned first trajectory points. This proximity can take various forms, such as a weighted average or summation of the reference distances of each trajectory point, to reflect the overall spatial proximity of the predicted trajectory 205 to obstacles. This obstacle proximity 207 can reflect the overall obstacle avoidance level of the predicted trajectory 205, and thus can serve as part of the supervision signal during the training process of trajectory generation model 212, guiding the model to generate trajectories that better meet obstacle avoidance requirements during the training phase, thereby effectively reducing the risk of trajectory collisions.
[0062] In some embodiments, server 130 can construct an Euclidean Signed Distance Field (ESDF) for the scene based on obstacle map 206. The Euclidean distance field can be used to evaluate the spatial plausibility of the predicted trajectory 205. For example, server 130 can calculate the Euclidean distance from each location point in the scene's non-obstacle region to the nearest obstacle based on obstacle map 206. This calculation process can be implemented using image distance transformation algorithms, spatial search, or propagation algorithms, thereby generating a continuous numerical field image or matrix with the same size as the original occupancy map.
[0063] As an example, Figure 3A A schematic diagram of a Euclidean distance field 310 according to some embodiments of the present disclosure is shown. For example... Figure 3A As shown, in this Euclidean distance field 310, the value of each point represents its straight-line distance to the nearest obstacle boundary. These distance values can be visualized using color gradients; larger values appear brighter in the image, indicating a more open location, while smaller values appear darker, indicating a point close to an obstacle and a higher risk.
[0064] In some embodiments, server 130 may update the trajectory generation model based at least on the obstacle proximity. For example, server 130 may use the value of each predicted point in the Euclidean distance field 310 in the predicted trajectory 205 as the reference distance for that trajectory point. The overall obstacle proximity 207 of the predicted trajectory 205 is determined based on the reference distance of each trajectory point. Further, server 130 may use the obstacle proximity 207 as an obstacle avoidance index in the calculation of loss function 213, thereby guiding trajectory generation model 212 to generate a predicted trajectory 205 that is far from obstacles, improving the physical feasibility and safety of the predicted trajectory.
[0065] In some embodiments, the scene in which the target object is located may contain multiple areas that are far from obstacles and have a low risk of collision. For example, refer to Figure 3A In the Euclidean distance field 310, there are two relatively empty regions 311 and 312, with the left region 311 being more empty.
[0066] In this scenario, the trajectory generation model 212, when calculating gradients, might be more inclined to shift the predicted trajectory towards region 311. However, based on ground truth reference trajectories (e.g., expert trajectories or historical trajectories), the target object should ideally traverse region 312 on the right. This choice might be determined by a combination of factors, including higher-level task objectives (e.g., navigation path planning), road traffic rules, and lane feasibility. Calculating the obstacle proximity 207 of the overall trajectory solely based on the Euclidean distance between each trajectory point and obstacle in the predicted trajectory could lead to bias in the trajectory generation model. In this case, the target object might be guided to an area that, while open, is unreasonable or undesirable, deviating from the actual movement strategy in the real-world scenario.
[0067] To prevent the trajectory generation model from deviating from the intended path solely based on obstacle distance, a masking mechanism can be introduced during training to explicitly restrict which areas should be considered as the reasonable trajectory range. For example, server 130 can determine the effective trajectory range for the target object in the scene based on a reference trajectory for the target object. Furthermore, server 130 identifies at least one first trajectory point among multiple trajectory points that fall within the effective trajectory range.
[0068] As an example, server 130 determines a spatial region surrounding the reference trajectory in the scene, based on the reference trajectory for the target object, as the effective trajectory range for the predicted trajectory. This effective range can be obtained by buffering the reference trajectory by a certain width. In the predicted trajectory, trajectory points falling within the effective trajectory range are determined as the first trajectory points participating in the loss calculation. The reference distances between these first trajectory points and obstacles in the scene are used to calculate the overall obstacle proximity 207 of the predicted trajectory 205. Second trajectory points falling outside the effective range are not included in the calculation of this loss term.
[0069] As an example, Figure 3B A schematic diagram of a masked Euclidean distance field 320 according to some embodiments of the present disclosure is shown. Figure 3B As shown, the Euclidean distance field 320 is the result of masking the original Euclidean distance field 310 with reference trajectory. In this way, the trained trajectory generation model can be guaranteed to maintain obstacle avoidance capability while being closer to the task instructions or movement strategy.
[0070] In some embodiments, when determining obstacle proximity 207, for at least one second trajectory point included in the predicted trajectory 205 that is outside the effective trajectory range, server 130 may determine at least one negative feedback value corresponding to each of the at least one second trajectory point. The negative feedback value is used to penalize the predicted trajectory point for deviating from a reference area. Alternatively or additionally, the negative feedback value may be a predetermined value or calculated based on the distance between the trajectory point and the reference trajectory range. Further, server 130 may obtain obstacle proximity based on the reference distance determined for each of the at least one first trajectory point and the at least one negative feedback value.
[0071] Continue to refer to Figure 2 Server 130 can determine the first loss term of loss function 213 based on obstacle proximity 207. As an example, the first loss term can be expressed by the following formula:
[0072]
[0073] Where (x,y)∈τ (1) The first trajectory point is defined as having two-dimensional position coordinates within the effective trajectory range, and ESDF(x,y) represents the reference distance corresponding to the first trajectory point. The obstacle proximity 207 can be the sum of the reference distances corresponding to each of the first trajectory points in the predicted trajectory 205.
[0074] As another example, the first loss term can also be expressed by the following formula:
[0075]
[0076] Where (x,y)∈τ (1) Let be the two-dimensional position coordinates of the first trajectory point within the effective trajectory range, and ESDF(x,y) be the reference distance corresponding to the first trajectory point. (x,y)∈τ (2) f represents the two-dimensional position coordinates of a second trajectory point outside the effective trajectory range. penalty (x, y) represents the negative feedback value corresponding to the second trajectory point. The obstacle proximity 207 can be determined based on the reference distances corresponding to each first trajectory point in the predicted trajectory 205 and the negative feedback values corresponding to each second trajectory point. Using this loss function, the model can be encouraged to generate trajectory points far from obstacles, while the model is penalized for falling trajectory points outside the effective trajectory range.
[0077] During training, the loss function 213 is the objective function to be minimized, while the obstacle proximity 207 represents the average proximity between each point in the predicted trajectory and the obstacle. A larger value indicates that the trajectory is further away from the obstacle and is safer. Therefore, the first loss term can be determined by negatively summing the reference distances corresponding to each first trajectory point in the predicted trajectory 205. Training the trajectory prediction model 212 based on the first loss term can improve the safety and obstacle avoidance capabilities of the trajectory.
[0078] Continue to refer to Figure 2 Server 130 can determine a second loss term for loss function 213 based on the difference between predicted trajectory 205 and reference trajectory 208. The second loss term can be used to optimize the proximity of the trajectory to the reference path, making the trajectory generated by the model more consistent with the expected behavior pattern. It can be any suitable form such as mean squared error.
[0079] Furthermore, server 130 can update trajectory prediction model 212 based on the first and second loss terms of loss function 213. Server 130 can weight and combine these two types of loss terms according to preset weights to form the final loss function 213. Based on this loss function 213, server 130 can perform gradient calculation and backpropagation to update the parameters of trajectory prediction model 212. By simultaneously optimizing obstacle proximity loss and reference trajectory deviation loss, it is possible to improve the consistency with the task objective or expert strategy while ensuring the feasibility of the trajectory space, thereby achieving a safe, reasonable, and task-oriented trajectory prediction effect.
[0080] As can be more clearly understood from the description of the various embodiments of this disclosure, a constraint mechanism based on scene structure information is introduced into the end-to-end trajectory generation architecture. By determining the obstacle proximity of the predicted trajectory and using this proximity as one of the optimization objectives during training, the model not only focuses on achieving the objective but also explicitly considers the spatial safety of the trajectory when generating it, reducing the collision probability of the generated predicted trajectory. Furthermore, by combining a reference trajectory to determine a reasonable trajectory generation range and guiding the model to focus on the spatial rationality of the path based on this range, the risk of the model deviating from the task objective due to pursuing open areas is effectively avoided.
[0081] In some implementations, besides updating the user trajectory generation model itself, obstacle proximity can also be used to filter, sort, or correct multiple candidate trajectories during the predicted trajectory generation stage. This improves the spatial feasibility and safety of the final selected trajectory. In other words, obstacle proximity can serve not only as an optimization metric during training but also as a decision-making basis during the inference stage, used to select a more reasonable path from multiple predicted trajectories or to adjust a single trajectory to avoid high-risk areas. This mechanism has good versatility, can flexibly adapt to different trajectory generation methods, and provides an effective means to improve system robustness and task completion efficiency in practical deployments.
[0082] Figure 4 A flowchart of a process 400 for trajectory generation according to some embodiments of the present disclosure is shown. Process 400 may be executed by a remote server of the target object (e.g., server 130), or by a control device of the target object itself (e.g., control device 120), or may be performed collaboratively by the remote server and the control device. Reference is made below. Figure 1 Describe the process 400.
[0083] In box 410, server 130 acquires at least one predicted trajectory for a movable target object. The target object is located in the scene. For example, server 130 may acquire multiple predicted trajectories for the movable target object. The predicted trajectory can be obtained in various ways. For example, the predicted trajectory can be generated by the aforementioned trajectory generation model, or it can come from other trajectory generation algorithms, rule paths, or simulation paths, and this disclosure does not limit this.
[0084] In box 420, server 130 determines at least one obstacle proximity for each of at least one predicted trajectory. The obstacle proximity in the at least one obstacle proximity represents the degree of proximity between the corresponding predicted trajectory and an obstacle in the scene where the target object is located. For each predicted trajectory, server 130 can determine its corresponding obstacle proximity. Obstacle proximity reflects the spatial proximity between the trajectory and obstacles and is one of the key indicators for evaluating trajectory feasibility and safety.
[0085] In practical applications, different predicted trajectories may have similar task orientation, but their spatial distribution and distance relationship with obstacles can vary significantly. Some trajectories may be closer to obstacle boundaries or cross potentially dangerous areas. Failure to identify such trajectories may lead to collisions or safety hazards during path execution. Therefore, by introducing the obstacle proximity metric, we can quantitatively evaluate the obstacle avoidance performance of different trajectories, providing a clear basis for subsequent trajectory selection or correction.
[0086] Continue to refer to Figure 4 In box 430, server 130 determines a target trajectory for a target object based on at least one obstacle proximity and at least one predicted trajectory. For example, server 130 can filter or judge among all candidate trajectories based on the obstacle proximity information of each predicted trajectory to determine the final target trajectory used to control the movement of the target object. Exemplarily, the trajectory with the highest obstacle proximity (i.e., the trajectory farthest from the obstacle) can be selected as the target trajectory.
[0087] Alternatively or additionally, for a given predicted trajectory in at least one predicted trajectory, server 130 can modify the given predicted trajectory as a target trajectory based on the obstacle proximity corresponding to the given predicted trajectory. For example, server 130 can adjust the positions of some points in the trajectory that are close to the obstacle, thereby increasing the average distance between the modified trajectory and the obstacle, thus improving the overall obstacle proximity of the trajectory. The modification method may include translation, local offset, or resampling trajectory points in a Euclidean distance field, etc.
[0088] In some embodiments, at least one obstacle proximity can be determined based on an obstacle map indicating the distribution of obstacles in the scene. For example, for each first trajectory point in at least one of a plurality of trajectory points in a first trajectory, server 130 can determine a reference distance between the first trajectory point and an obstacle in the scene based on the obstacle map. This reference distance can be used to represent the spatial proximity of the trajectory point to the obstacle, thereby enabling a quantitative assessment of the trajectory in the spatial safety dimension. This facilitates subsequent trajectories to be filtered or corrected. Then, server 130 can obtain the obstacle proximity corresponding to a given predicted trajectory, at least based on the reference distances determined for at least one first trajectory point.
[0089] In some embodiments, server 130 can determine the nearest obstacle to the first trajectory point in the scene from the obstacle map. Further, in some embodiments, server 130 can calculate the distance between the first trajectory point and the nearest obstacle based on the location of the nearest obstacle in the obstacle map, using this distance as a reference distance. For example, the reference distances corresponding to multiple trajectory points can be aggregated (e.g., by averaging, weighting, or taking the minimum value) to form an overall spatial proximity evaluation index. In this way, even with high trajectory granularity, the overall risk level between the trajectory and the obstacle can be summarized, thereby supporting subsequent path selection or dynamic adjustment. This processing logic is similar to the obstacle proximity loss calculation method based on Euclidean distance field used in the aforementioned process; refer to the description of the construction method of obstacle proximity 207 above.
[0090] To confine trajectory evaluation to a spatial region that better aligns with the task direction or behavioral intent, and to prevent the model from generating trajectories that deviate from the task direction solely for obstacle avoidance, server 130 can determine the effective trajectory range for the target object within the scene based on a reference trajectory for that object. Then, server 130 can identify at least one first trajectory point from among multiple trajectory points that fall within the effective trajectory range.
[0091] In some embodiments, server 130 may, in response to determining that a plurality of trajectory points include at least one second trajectory point located outside the effective trajectory range, determine at least one negative feedback value corresponding to each of the at least one second trajectory point. Further, based on the reference distances determined for each of the at least one first trajectory point and the at least one negative feedback value, the obstacle proximity corresponding to a given predicted trajectory is obtained. In this way, a joint measurement of trajectory spatial feasibility and task rationality can be achieved, thereby improving the overall quality of the target trajectory.
[0092] In the embodiments of this disclosure, the spatial safety of the predicted trajectory can be effectively improved by introducing obstacle proximity to determine the target trajectory. Even when the trajectory generation model lacks strong obstacle avoidance capabilities or multiple candidate paths exist, a better path can be selected through proximity judgment. This method is applicable to various application scenarios such as dynamic path selection, unconventional obstacle avoidance judgment, and multi-strategy fusion, and has good versatility and engineering deployability.
[0093] Figure 5 A flowchart of another process 500 for trajectory generation according to some embodiments of the present disclosure is shown. Process 500 may be executed by a remote server of the target object (e.g., server 130), or by a control device of the target object itself (e.g., control device 120), or may be performed collaboratively by the remote server and the control device. Reference is made below. Figure 1 Describe the process 500.
[0094] In box 510, server 130 uses a trajectory generation model to generate a predicted trajectory for the target object, based on at least one of the state information and task information of the movable target object. The state information indicates at least one of the velocity, position, and orientation of the target object, and the task information indicates constraint information related to generating the predicted trajectory.
[0095] In box 520, server 130 determines obstacle proximity for the predicted trajectory, which represents how close the predicted trajectory is to obstacles in the scene.
[0096] In box 530, server 130 updates the trajectory generation model based at least on obstacle proximity.
[0097] In some embodiments, obstacle proximity is determined based on an obstacle map indicating the distribution of obstacles in the scene.
[0098] In some embodiments, the predicted trajectory includes a plurality of trajectory points, and determining the obstacle proximity for the predicted trajectory includes: for each of at least one of the plurality of trajectory points, determining a reference distance between the first trajectory point and an obstacle in the scene based on an obstacle map; and obtaining the obstacle proximity for the predicted trajectory based at least on the reference distances determined for at least one of the first trajectory points.
[0099] In some embodiments, determining the reference distance between the first trajectory point and an obstacle in the scene includes: determining the obstacle closest to the first trajectory point in the scene from an obstacle map; and calculating the distance between the first trajectory point and the nearest obstacle as a reference distance based on the position of the nearest obstacle in the obstacle map.
[0100] In some embodiments, process 500 further includes: determining an effective trajectory range for the target object in the scene based on a reference trajectory for the target object; and determining at least one first trajectory point among a plurality of trajectory points that is within the effective trajectory range.
[0101] In some embodiments, obtaining the obstacle proximity of the predicted trajectory includes: in response to determining that a plurality of trajectory points include at least one second trajectory point located outside the effective trajectory range, determining at least one negative feedback value corresponding to the at least one second trajectory point; and obtaining the obstacle proximity based on reference distances determined for at least one first trajectory point and at least one negative feedback value.
[0102] In some embodiments, updating the trajectory prediction model includes: determining a first loss term based on obstacle proximity; determining a second loss term based on the difference between the predicted trajectory and the reference trajectory; and updating the trajectory prediction model based on the first loss term and the second loss term.
[0103] In some embodiments, generating a predicted trajectory of a target object includes: determining image features of the scene based on multiple images acquired for the scene in which the target object is located; and generating a predicted trajectory of the target object using a trajectory generation model based on state information, task information, and image features.
[0104] In some embodiments, the multiple images include images of a scene captured from multiple angles.
[0105] Embodiments of this disclosure also provide corresponding apparatus for implementing the above methods or processes. Figure 6 A schematic structural block diagram of an apparatus 600 for trajectory generation according to some embodiments of the present disclosure is shown. The apparatus 600 may be implemented as or included in server 130. Various modules / components in the apparatus 600 may be implemented by hardware, software, firmware, or any combination thereof.
[0106] refer to Figure 6 As shown, the device 600 includes a predicted trajectory generation module 610, configured to generate a predicted trajectory for a target object using a trajectory generation model, based at least on at least one of state information and task information of the movable target object, wherein the state information indicates at least one of the target object's velocity, position, and direction, and the task information indicates constraint information related to the generation of the predicted trajectory; an obstacle proximity determination module 620, configured to determine the obstacle proximity for the predicted trajectory, wherein the obstacle proximity represents the degree of proximity between the predicted trajectory and obstacles in the scene; and an update module 630, configured to update the trajectory generation model based at least on the obstacle proximity.
[0107] In some embodiments, obstacle proximity is determined based on an obstacle map that indicates the distribution of obstacles in the scene.
[0108] In some embodiments, the predicted trajectory includes a plurality of trajectory points, and the obstacle proximity determination module 630 is further configured to determine, for each of at least one of the plurality of trajectory points, a reference distance between the first trajectory point and an obstacle in the scene based on an obstacle map; and to obtain the obstacle proximity of the predicted trajectory based at least on the reference distances determined for at least one of the first trajectory points.
[0109] In some embodiments, the obstacle proximity determination module 630 is further configured to determine, from the obstacle map, the obstacle closest to the first trajectory point in the scene; and to calculate, based on the position of the nearest obstacle in the obstacle map, the distance between the first trajectory point and the nearest obstacle as a reference distance.
[0110] In some embodiments, the obstacle proximity determination module 630 is further configured to determine the effective trajectory range for the target object in the scene based on a reference trajectory for the target object; and to determine at least one first trajectory point among a plurality of trajectory points that is within the effective trajectory range.
[0111] In some embodiments, the obstacle proximity determination module 630 is further configured to, in response to determining that a plurality of trajectory points include at least one second trajectory point located outside the effective trajectory range, determine at least one negative feedback value corresponding to the at least one second trajectory point respectively; and obtain obstacle proximity based on the reference distance determined for the at least one first trajectory point and the at least one negative feedback value respectively.
[0112] In some embodiments, the update module 640 is further configured to determine a first loss term based on obstacle proximity; determine a second loss term based on the difference between the predicted trajectory and the reference trajectory; and update the trajectory prediction model based on the first loss term and the second loss term.
[0113] In some embodiments, the update module 640 is further configured to determine image features of the scene based on multiple images acquired for the scene in which the target object is located; and to generate a predicted trajectory of the target object using a trajectory generation model based on the target object's state information, task information, and image features.
[0114] In some embodiments, the multiple images include images of a scene captured from multiple angles.
[0115] Figure 7A schematic structural block diagram of another trajectory generation apparatus 700 according to some embodiments of the present disclosure is shown. Apparatus 700 may be implemented as or included in server 130. Various modules / components in apparatus 700 may be implemented by hardware, software, firmware, or any combination thereof.
[0116] refer to Figure 7 As shown, the device 700 includes a predicted trajectory acquisition module 710, configured to acquire at least one predicted trajectory for a movable target object in a scene; an obstacle proximity determination module 720, configured to determine at least one obstacle proximity corresponding to each of the at least one predicted trajectory, wherein the obstacle proximity in the at least one obstacle proximity represents the degree of proximity between the corresponding predicted trajectory and an obstacle in the scene where the target object is located; and a target trajectory determination module 730, configured to determine a target trajectory for the target object based on the at least one obstacle proximity and the at least one predicted trajectory.
[0117] In some embodiments, at least one predicted trajectory includes multiple predicted trajectories, and the target trajectory determination module 730 is further configured to select a target trajectory from the multiple predicted trajectories based on the corresponding obstacle proximity of the multiple predicted trajectories.
[0118] In some embodiments, the target trajectory determination module 730 is further configured to, for a given predicted trajectory in at least one predicted trajectory, modify the given predicted trajectory as the target trajectory based on the obstacle proximity corresponding to the given predicted trajectory.
[0119] In some embodiments, at least one obstacle proximity is determined based on an obstacle map indicating the distribution of obstacles in the scene.
[0120] In some embodiments, a given predicted trajectory in at least one predicted trajectory includes a plurality of trajectory points, and the obstacle proximity determination module 720 is further configured to determine, for each first trajectory point in at least one first trajectory among the plurality of trajectory points, a reference distance between the first trajectory point and an obstacle in the scene based on an obstacle map; and to obtain an obstacle proximity corresponding to the given predicted trajectory based at least on the reference distances determined for at least one first trajectory point.
[0121] In some embodiments, the obstacle proximity determination module 720 is further configured to determine, from the obstacle map, the obstacle closest to the first trajectory point in the scene; and to calculate, based on the position of the nearest obstacle in the obstacle map, the distance between the first trajectory point and the nearest obstacle as a reference distance.
[0122] In some embodiments, the obstacle proximity determination module 720 is further configured to determine the effective trajectory range for the target object in the scene based on a reference trajectory for the target object; and to determine at least one first trajectory point among a plurality of trajectory points that is within the effective trajectory range.
[0123] In some embodiments, the obstacle proximity determination module 720 is further configured to, in response to determining that a plurality of trajectory points include at least one second trajectory point located outside the effective trajectory range, determine at least one negative feedback value corresponding to at least one second trajectory point respectively; and obtain the obstacle proximity corresponding to a given predicted trajectory based on the reference distance determined for at least one first trajectory point and the at least one negative feedback value respectively.
[0124] Figure 8 A block diagram is shown of an electronic device 800 in which one or more embodiments of the present disclosure may be implemented. The electronic device 800 may, for example, be used to implement... Figure 1 The control device 120 shown. It should be understood that, Figure 8 The electronic device 800 shown is merely exemplary and should not be construed as limiting the functionality and scope of the embodiments described herein.
[0125] refer to Figure 8 The electronic device 800 is in the form of a general-purpose electronic device. Components of the electronic device 800 may include, but are not limited to, one or more processors or processing units 810, memory 820, storage devices 830, one or more communication units 840, one or more input devices 850, and one or more output devices 860. The processing unit 810 may be a physical or virtual processor and is capable of performing various processes according to programs stored in the memory 820. In a multiprocessor system, multiple processing units execute computer-executable instructions in parallel to improve the parallel processing capability of the electronic device 800.
[0126] Electronic device 800 typically includes multiple computer storage media. Such media can be any available media accessible to electronic device 800, including but not limited to volatile and non-volatile media, removable and non-removable media. Memory 820 can be volatile memory (e.g., registers, cache, random access memory (RAM)), non-volatile memory (e.g., read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory), or some combination thereof. Storage device 830 can be removable or non-removable media and can include machine-readable media, such as flash drives, disks, or any other media capable of storing information and / or data and accessible within electronic device 800.
[0127] Electronic device 800 may further include additional removable / non-removable, volatile / non-volatile storage media. Although not explicitly stated... Figure 8 As shown, disk drives for reading from or writing to removable, non-volatile disks (e.g., "floppy disks") and optical disk drives for reading from or writing to removable, non-volatile optical disks can be provided. In these cases, each drive can be connected to a bus (not shown) via one or more data media interfaces. Memory 820 may include computer program product 825 having one or more program modules configured to perform various methods or actions of various embodiments of this disclosure.
[0128] The communication unit 840 enables communication with other electronic devices via a communication medium. Additionally, the functionality of the components of the electronic device 800 can be implemented using a single computing cluster or multiple computing machines capable of communicating via communication connections. Therefore, the electronic device 800 can operate in a networked environment using logical connections to one or more other servers, network personal computers (PCs), or another network node.
[0129] Input device 860 can be one or more input devices, such as a mouse, keyboard, trackball, etc. Output device 860 can be one or more output devices, such as a monitor, speaker, printer, etc. Electronic device 800 can also communicate with one or more external devices (not shown) via communication unit 840 as needed. These external devices include storage devices, display devices, etc., and can communicate with one or more devices that enable user interaction with electronic device 800, or with any device that enables electronic device 800 to communicate with one or more other electronic devices (e.g., network card, modem, etc.). Such communication can be performed via input / output (I / O) interface (not shown).
[0130] According to an exemplary implementation of this disclosure, a computer-readable storage medium is provided that stores computer-executable instructions thereon, wherein the computer-executable instructions are executed by a processor to implement the methods described above. According to an exemplary implementation of this disclosure, a computer program product is also provided, which is tangibly stored on a non-transitory computer-readable medium and includes computer-executable instructions, which are executed by a processor to implement the methods described above.
[0131] Various aspects of this disclosure are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatuses, devices, and computer program products implemented according to this disclosure. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer-readable program instructions.
[0132] These computer-readable program instructions can be provided to a processing unit of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that, when executed by the processing unit of the computer or other programmable data processing apparatus, they create means for implementing the functions / actions specified in one or more blocks of the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium that causes a computer, programmable data processing apparatus, and / or other device to operate in a particular manner. Thus, the computer-readable medium storing the instructions comprises an article of manufacture that includes instructions for implementing aspects of the functions / actions specified in one or more blocks of the flowchart and / or block diagram.
[0133] Computer-readable program instructions can be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions that execute on the computer, other programmable data processing apparatus, or other device to perform the functions / actions specified in one or more boxes of a flowchart and / or block diagram.
[0134] 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 disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of an instruction, which contains one or more executable instructions for implementing the specified logical function. 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 consecutive 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, may be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions.
[0135] Various implementations of this disclosure have been described above. The foregoing description is exemplary and not exhaustive, nor is it limited to the disclosed implementations. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the described implementations. The terminology used herein is determined to best explain the principles, practical applications, or improvements to technology in the market, or to enable others skilled in the art to understand the various implementations disclosed herein.
Claims
1. A method for trajectory generation, comprising: Using a trajectory generation model, a predicted trajectory for the target object is generated based on at least one of the state information and task information of the movable target object. The state information indicates at least one of the velocity, position, and direction of the target object, and the task information indicates constraint information related to the generated predicted trajectory. Determine the obstacle proximity for the predicted trajectory, whereby the obstacle proximity represents the degree of proximity between the predicted trajectory and obstacles in the scene. as well as The trajectory generation model is updated based at least on the proximity to the obstacle.
2. The method of claim 1, wherein the obstacle proximity is determined based on an obstacle map indicating the distribution of obstacles in the scene.
3. The method of claim 2, wherein the predicted trajectory comprises a plurality of trajectory points, and determining the obstacle proximity for the predicted trajectory comprises: For each of at least one first trajectory point among the plurality of trajectory points, a reference distance between the first trajectory point and an obstacle in the scene is determined based on the obstacle map; as well as The obstacle proximity of the predicted trajectory is obtained based at least on the reference distances determined for each of the at least one first trajectory point.
4. The method of claim 3, wherein determining the reference distance between the first trajectory point and the obstacle in the scene comprises: From the obstacle map, determine the obstacle in the scene that is closest to the first trajectory point; as well as Based on the location of the nearest obstacle in the obstacle map, the distance between the first trajectory point and the nearest obstacle is calculated and used as the reference distance.
5. The method according to claim 3, further comprising: Based on the reference trajectory for the target object, determine the effective trajectory range for the target object in the scene; as well as The trajectory point that is located within the effective trajectory range among the plurality of trajectory points is determined as at least one first trajectory point.
6. The method of claim 5, wherein obtaining the obstacle proximity of the predicted trajectory comprises: In response to determining that the plurality of trajectory points include at least one second trajectory point located outside the effective trajectory range, at least one negative feedback value corresponding to the at least one second trajectory point is determined respectively; as well as The obstacle proximity is obtained based on the reference distance determined for each of the at least one first trajectory point and the at least one negative feedback value.
7. The method of claim 1, wherein updating the trajectory prediction model comprises: The first loss term is determined based on the proximity to the obstacle; Based on the difference between the predicted trajectory and the reference trajectory, a second loss term is determined; as well as The trajectory prediction model is updated based on the first loss term and the second loss term.
8. The method of claim 1, wherein generating the predicted trajectory of the target object comprises: Based on multiple images collected for the scene in which the target object is located, the image features of the scene are determined; as well as Based on at least one of the state information and task information, and the image features, the trajectory generation model is used to generate a predicted trajectory of the target object.
9. The method of claim 8, wherein the plurality of images comprises images of the scene acquired from multiple angles.
10. A method for trajectory generation, comprising: Obtain at least one predicted trajectory for a movable target object, which is located in the scene; Determine the proximity of at least one obstacle to the at least one predicted trajectory, wherein the proximity of the at least one obstacle represents the degree of proximity between the corresponding predicted trajectory and an obstacle in the scene where the target object is located; as well as A target trajectory for the target object is determined based on at least one obstacle proximity and the at least one predicted trajectory.
11. The method of claim 10, wherein the at least one predicted trajectory comprises a plurality of predicted trajectories, and determining the target trajectory for the target object comprises: The target trajectory is selected from the multiple predicted trajectories based on the corresponding obstacle proximity.
12. The method of claim 10, wherein determining the target trajectory for the target object comprises: For a given predicted trajectory among the at least one predicted trajectory, the given predicted trajectory is modified as the target trajectory based on the obstacle proximity corresponding to the given predicted trajectory.
13. The method of claim 10, wherein the proximity of the at least one obstacle is determined based on an obstacle map indicating the distribution of obstacles in the scene.
14. The method of claim 13, wherein a given predicted trajectory in the at least one predicted trajectory comprises a plurality of trajectory points, and the obstacle proximity corresponding to the given predicted trajectory is determined by: For each first trajectory point in at least one of the plurality of trajectory points, a reference distance between the first trajectory point and an obstacle in the scene is determined based on the obstacle map; and The obstacle proximity corresponding to the given predicted trajectory is obtained based at least on the reference distance determined for each of the at least one first trajectory point.
15. The method of claim 14, wherein determining the reference distance between the first trajectory point and an obstacle in the scene comprises: From the obstacle map, determine the obstacle in the scene that is closest to the first trajectory point; as well as Based on the location of the nearest obstacle in the obstacle map, the distance between the first trajectory point and the nearest obstacle is calculated and used as the reference distance.
16. The method of claim 14, further comprising: Based on the reference trajectory for the target object, determine the effective trajectory range for the target object in the scene; as well as The trajectory point that is located within the effective trajectory range among the plurality of trajectory points is determined as at least one first trajectory point.
17. The method of claim 16, wherein obtaining the obstacle proximity corresponding to the given predicted trajectory comprises: In response to determining that the plurality of trajectory points include at least one second trajectory point located outside the effective trajectory range, at least one negative feedback value corresponding to the at least one second trajectory point is determined respectively; as well as Based on the reference distance determined for each of the at least one first trajectory point and the at least one negative feedback value, the obstacle proximity corresponding to the given predicted trajectory is obtained.
18. An apparatus for trajectory generation, comprising: The predicted trajectory generation module is configured to use a trajectory generation model to generate a predicted trajectory for the target object based on at least one of the state information and task information of the movable target object, wherein the state information indicates at least one of the velocity, position, and direction of the target object, and the task information indicates constraint information related to the generation of the predicted trajectory. An obstacle proximity determination module is configured to determine the obstacle proximity for the predicted trajectory, wherein the obstacle proximity represents the degree of proximity between the predicted trajectory and obstacles in the scene. as well as The update module is configured to update the trajectory generation model based at least on the obstacle proximity.
19. An apparatus for trajectory generation, comprising: The predicted trajectory acquisition module is configured to acquire at least one predicted trajectory for a movable target object in the scene; An obstacle proximity determination module is configured to determine at least one obstacle proximity corresponding to the at least one predicted trajectory, wherein the obstacle proximity in the at least one obstacle proximity represents the degree of proximity between the corresponding predicted trajectory and an obstacle in the scene where the target object is located; as well as The target trajectory determination module is configured to determine a target trajectory for the target object based on at least one obstacle proximity and the at least one predicted trajectory.
20. An electronic device, comprising: At least one processing unit; as well as At least one memory, coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit, the instructions causing the electronic device to perform the method according to any one of claims 1 to 9 or 10 to 17 when executed by the at least one processing unit.
21. A computer-readable storage medium having a computer program stored thereon, the computer program being executable by a processor to implement the method according to any one of claims 1 to 9 or 10 to 17.
22. A computer program product comprising computer-executable instructions, wherein the computer-executable instructions, when executed by a processor, implement the method according to any one of claims 1 to 9 or 10 to 17.
