Method, device, and computer-readable storage medium for autonomous driving
By converting vehicle intention prediction into a target-exit matching problem, and using multi-layer perceptron and recurrent neural network, the problem of difficult vehicle intention prediction in urban intersection scenarios is solved, and efficient and accurate intention prediction is achieved in complex intersection scenarios.
Patent Information
- Application Number
- CN202010987392.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-09-18
- Publication Date
- 2025-09-05
- Estimated Expiration
- 2040-09-18
AI Technical Summary
In urban traffic intersection scenarios, vehicle behaviors vary greatly, and existing technologies find it difficult to accurately predict vehicle intentions. Especially in complex and changeable intersection scenarios, simple semantic-level intentions are difficult to describe the behavior of target vehicles.
Vehicle intention prediction is abstracted into a target-exit matching problem. By obtaining multiple sets of exit features and vehicle features, a multi-layer perceptron and recurrent neural network are used to determine the degree of matching, and a coordinate system based on the exit is established to adapt to various intersection scenarios.
It improves the accuracy and generalization performance of vehicle intention prediction, can adapt to complex and changing intersection scenarios, reduce computational complexity, improve real-time performance and computational efficiency, and meet the needs of autonomous driving.
Smart Images

Figure CN114283396B_ABST
Abstract
Description
Technical Field
[0001] Embodiments of the present disclosure generally relate to autonomous driving, and more particularly to methods, apparatuses, electronic devices, autonomous driving vehicles, and computer-readable storage media for autonomous driving. Background Art
[0002] In autonomous driving, vehicle intention prediction involves predicting the target vehicle's intended behavior based on its current and historical target states. For example, in a forward-moving road scenario, vehicle intentions might include lane keeping, left or right lane changes, while at an intersection, vehicle intentions might include going straight, turning left or right, and making a U-turn. Real-time, accurate, and reliable vehicle intention prediction helps the vehicle anticipate traffic conditions ahead, establish the traffic situation around it, assess the importance of surrounding vehicles, and identify key targets for interaction. This allows the vehicle to plan its route in advance and safely navigate complex intersections.
[0003] In urban traffic intersection scenarios, due to the complex and changeable road structure and the lack of clear physical lane line constraints, vehicle behavior differences are more obvious and more difficult to predict; due to the large differences in the structures of different intersections, simple semantic-level intentions such as going straight, turning left, turning right, and U-turn are difficult to accurately describe the behavioral intentions of the target vehicle. Summary of the Invention
[0004] The embodiments of the present disclosure may provide an autonomous driving solution that at least partially solves the technical problems in traditional solutions.
[0005] In a first aspect of the present disclosure, a method for autonomous driving is provided. The method includes: obtaining multiple sets of exit features for multiple candidate exits associated with a vehicle, establishing multiple coordinate systems based on each candidate exit, each candidate exit being a portion of a road associated with a drivable route of the vehicle; determining multiple sets of vehicle features relative to the multiple candidate exits, each set of vehicle features including at least a motion state of the vehicle relative to a corresponding candidate exit from the multiple candidate exits; and determining a degree of match or a probability of match between the vehicle and the multiple candidate exits based on the multiple sets of exit features and the multiple sets of vehicle features, and determining an exit from the multiple candidate exits that matches the vehicle's route, wherein the vehicle features are determined based on the candidate exits.
[0006] Conventional approaches use vehicles as a reference to divide road areas, making it difficult to adapt to the large number of exits in intersections and the diverse nature of intersection scenarios. This approach abstracts high-level target intent prediction into the problem of matching targets with exits. This approach eliminates the need to divide intersections into sectors, adapts to a variety of intersection scenarios, and exhibits good generalization performance. Furthermore, when the target intent is unclear, multiple intents are output, addressing multimodality.
[0007] In some embodiments, each set of vehicle features includes a motion state of the vehicle relative to the candidate exit in a Cartesian coordinate system.
[0008] In some embodiments, the exit features of the candidate exit include: the size, drivable direction, and boundary of the candidate exit.
[0009] In some embodiments, each set of vehicle characteristics includes: the vehicle's coordinates, the distance between the vehicle and the origin of the Cartesian coordinate system, the vehicle's orientation, the rate of change of the vehicle's coordinates, the rate of change of the distance between the vehicle and the origin, and the rate of change of the vehicle's orientation. Establishing a coordinate system with the exit as a reference can facilitate representation of vehicle characteristics.
[0010] In some embodiments, each set of vehicle features further includes the vehicle's motion state in a curved coordinate system with a reference lane as one coordinate axis, wherein the lane closest to the vehicle among the lanes connected to the corresponding candidate exit is selected as the reference lane. When considering lanes, the vehicle's motion state relative to the lanes can be conveniently represented using a curved coordinate system with the exit as a reference.
[0011] In some embodiments, the motion state of the vehicle in the curved coordinate system includes: the coordinates of the vehicle, the angular difference between the orientation of the vehicle and the reference driving direction, the rate of change of the coordinates of the vehicle, and the rate of change of the angular difference, where the reference driving direction is the driving direction of the lane line at the projection point of the vehicle to the reference lane line.
[0012] In some embodiments, the method further includes: determining a feature representation of each of the multiple groups of exit features using a first multilayer perceptron; determining a feature representation of each of the multiple groups of vehicle features using a second multilayer perceptron and a recurrent neural network; and wherein determining the exit further includes: determining the exit based on the feature representation of each of the multiple groups of exit features and the feature representation of each of the multiple groups of vehicle features. By using a multilayer perceptron and a recurrent neural network, the use of a convolutional neural network can be avoided, thereby saving system computing resources.
[0013] In some embodiments, determining the exit includes: determining, using a third multilayer perceptron, a matching coefficient between each of the plurality of exit feature sets and a corresponding vehicle feature in the plurality of vehicle feature sets; and determining the exit based on the matching coefficient. By using a multilayer perceptron and a recurrent neural network, convolutional neural networks can be avoided, thereby improving system computational performance.
[0014] In some embodiments, determining the exit based on the matching coefficient includes: obtaining a historical matching coefficient related to the vehicle's historical location, the historical matching coefficient being the matching coefficient between each set of exit features in the plurality of sets of exit features and a corresponding vehicle feature in the plurality of sets of vehicle features when the vehicle was at the historical location; calculating an updated matching coefficient based on the historical matching coefficient and the determined matching coefficient; and determining the exit based on the updated matching coefficient. By calculating the historical fusion probability, the impact of vehicle state changes can be further considered, thereby improving prediction accuracy.
[0015] In some embodiments, the plurality of candidate exits are exits of an intersection area. The technical solution disclosed herein is particularly suitable for complex and changeable intersection scenarios.
[0016] In a second aspect of the present disclosure, a device for autonomous driving is provided. The device includes: a first acquisition module configured to acquire multiple sets of exit features for multiple candidate exits associated with a vehicle, establishing multiple coordinate systems based on each candidate exit, each candidate exit being a portion of a road associated with a drivable route of the vehicle; a first determination module configured to determine multiple sets of vehicle features of the vehicle relative to the multiple candidate exits, each set of vehicle features including at least a motion state of the vehicle relative to a corresponding candidate exit in the multiple candidate exits; and a second determination module configured to determine a degree of match or a probability of match between the vehicle and the multiple candidate exits based on the multiple sets of exit features and the multiple sets of vehicle features, and determine an exit from the multiple candidate exits that matches the vehicle's driving route; the vehicle features are determined based on the candidate exits.
[0017] In a third aspect of the present disclosure, an electronic device is provided, comprising: one or more processors; and a memory for storing one or more programs, wherein when the one or more programs are executed by the one or more processors, the electronic device implements the method according to the first aspect.
[0018] In a fourth aspect of the present disclosure, an autonomous driving vehicle is provided, wherein the autonomous driving vehicle comprises the electronic device according to the second aspect of the present disclosure.
[0019] In a fifth aspect of the present disclosure, a computer-readable storage medium is provided, on which a computer program is stored. When the program is executed by a processor, the method according to the first aspect of the present disclosure is implemented.
[0020] This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the detailed description. This summary is not intended to identify key features or essential features of the disclosure, nor is it intended to limit the scope of the disclosure. BRIEF DESCRIPTION OF THE DRAWINGS
[0021] The above and other objects, features and advantages of the present disclosure will become more apparent through a more detailed description of exemplary embodiments of the present disclosure with reference to the accompanying drawings, wherein like reference numerals generally represent like components throughout the exemplary embodiments of the present disclosure.
[0022] Figure 1 A block diagram illustrating an environment in which embodiments of the present disclosure can be implemented;
[0023] Figure 2 shows a block diagram of an intent prediction system according to some embodiments of the present disclosure;
[0024] Figure 3 shows a block diagram of an intent prediction system according to some embodiments of the present disclosure;
[0025] Figure 4 shows a schematic diagram of a curvilinear coordinate system according to some embodiments of the present disclosure;
[0026] Figure 5 shows a block diagram of an intent prediction system according to some embodiments of the present disclosure;
[0027] Figure 6 A flowchart of a method for autonomous driving according to some embodiments of the present disclosure is shown;
[0028] Figure 7 A block diagram illustrating an apparatus for autonomous driving according to some embodiments of the present disclosure is shown; and
[0029] Figure 8 A block diagram of an electronic device capable of implementing embodiments of the present disclosure is shown. DETAILED DESCRIPTION
[0030] The following describes embodiments of the present disclosure in more detail with reference to the accompanying drawings. Although certain embodiments of the present disclosure are shown in the accompanying drawings, it should be understood that the present disclosure can be implemented in various forms and should not be construed as limited to the embodiments described herein. Rather, these embodiments are provided to provide a more thorough and complete understanding of the present disclosure. It should be understood that the drawings and embodiments of the present disclosure are for illustrative purposes only and are not intended to limit the scope of protection of the present disclosure.
[0031] As used herein, the term "including" and its variations represent open inclusion, i.e., "including but not limited to." Unless otherwise stated, the term "or" means "and / or." The term "based on" means "based at least in part on." The terms "an example embodiment" and "an embodiment" mean "at least one example embodiment." The term "another embodiment" means "at least one additional embodiment." The terms "first," "second," etc. may refer to different or the same objects. Other explicit and implicit definitions may also be included below.
[0032] As used herein, a "vehicle" refers to any type of movable vehicle capable of carrying people and / or objects, including but not limited to cars, sedans, trucks, buses, electric vehicles, and the like. As used herein, "autonomous driving" refers to a vehicle with a certain level of autonomous driving capability, including assisted driving, intelligent driving, and unmanned driving. The following description and illustration will be made in conjunction with intelligent driving, but it should be understood that the embodiments of the present disclosure may also be applied to any other suitable driving scenarios and driving functions, such as assisted driving and adaptive cruise control.
[0033] Figure 1 A block diagram of an example environment 100 in which embodiments of the present disclosure can be implemented is shown. It should be understood that the example environment 100 is described for exemplary purposes only and does not imply any limitation on the scope of the present disclosure. The present disclosure can be implemented in different environments. The example environment 100 can be applied to scenarios such as intelligent driving, autonomous driving, assisted driving, and unmanned driving. The example environment 100 shows an intersection scenario, where an intersection is an intersection area of two or more roads. In an intersection scenario, multiple exits are typically included, especially when considering lane lines and even virtual lane lines. For example, a road at an intersection may have multiple virtual lane lines, corresponding to multiple exits.
[0034] like Figure 1As shown, vehicle 101 (also called the "ego vehicle") is traveling on a road, and vehicle 102 (also called the "target vehicle" or "other vehicle") is also traveling on the same road. Own vehicle 101 can be an autonomous vehicle, while other vehicle 102 can be either autonomous or non-autonomous. Own vehicle 101 and other vehicle 102 may be traveling in the same or different lanes. While ego vehicle 101 is driving, ego vehicle 101 can determine the intention of other vehicle 102 at an intersection, for example, which exit at the intersection other vehicle 102 will take. For example, exits 103, 104, 105, or 106 are all on the drivable route of other vehicle 102 and are also called candidate exits for other vehicle 102. Exits can not only indicate the road but also include other map elements such as lane markings. Based on the intention of other vehicle 102, ego vehicle 101 can better plan its route. For example, ego vehicle 101 may plan to exit at exit 103. If it is determined that the intention of the other car 102 is exit 103, then the own car 101 may not need to slow down. However, if it is determined that the intention of the other car 102 is exit 104, then the own car 101 may need to slow down to prevent the other car 102 from colliding.
[0035] To determine the intention of the other vehicle 102, the vehicle 101 may be equipped with a perception system to perceive the environment around the vehicle 101 and output environmental information about the vehicle 101. For example, the perception system can identify lane markings, drivable areas of the road, vehicles, pedestrians, traffic signs, and other objects around the vehicle 101 in real time. The perception system may include various sensors, such as cameras, lidar, millimeter-wave radar, and ultrasonic radar.
[0036] Autonomous vehicle 101 can combine environmental information acquired by its perception system with a map and map each target in the environmental information onto the map. For example, the map can be a conventional electronic map or a high-precision map (also known as a lane-level map). High-precision maps are accurate to the centimeter level. In areas without actual lane markings, such as intersections, auxiliary lines (i.e., virtual lanes) are added to help constrain the autonomous vehicle's movement. High-level autonomous driving systems can use high-precision maps as an auxiliary tool or prior information to help autonomous vehicles better predict the behavior and intentions of other target vehicles.
[0037] Vehicle 101 can determine target-related information from its perception system and map, such as its location, speed, and direction. Based on this target-related information, vehicle 101 can determine the target's intention, for example, which exit the target will take. Intention prediction can help vehicle 101 anticipate the intentions of surrounding vehicles (e.g., other vehicle 102). This facilitates planning and control of emergency safety measures in dangerous scenarios to ensure vehicle safety and avoid collisions.
[0038] The actual road environment, especially the intersection scene, is usually complex and may be Figure 1 The road environment shown is more complex. Conventional common modes such as going straight, turning left, turning right and turning around are difficult to accurately describe the target vehicle's movement intention in such a complex scene. The embodiment of the present disclosure can solve the problem of difficult to predict movement intention in such a complex scene. Figure 2-Figure 5 The embodiments of the present disclosure are described in detail.
[0039] Figure 2 FIG2 shows a block diagram of an intention prediction system 200 according to some embodiments of the present disclosure. Figure 1 The example environment is used to introduce Figure 2 Intention prediction system 200 is shown. For example, intention prediction system 200 can be implemented on vehicle 101, collecting data through sensors on vehicle 101 and performing calculations based on the collected data to predict intention. Alternatively, intention prediction system 200 can also collect data through sensors on vehicle 101 and transmit the collected data to the cloud. The cloud performs calculations based on the data received from vehicle 101 to predict intention and transmits the intention prediction results back to vehicle 101.
[0040] like Figure 2 As shown, the intention prediction system 200 includes a feature extractor 202, which can be used to extract features related to exits and vehicles. For convenience, the features related to exits are referred to as exit features, and the features related to vehicles are referred to as vehicle features.
[0041] Still combined Figure 1 , which illustrates a Cartesian coordinate system corresponding to a candidate exit 105. In this example Cartesian coordinate system, O is the origin, the drivable direction is the x-axis, and the direction perpendicular to the x-axis is the y-axis. It should be understood that this Cartesian coordinate system is provided merely as an example, and the origin may also be set at any other suitable location on the candidate exit 105, for example, by translating O forward a certain distance along the drivable direction. The feature extractor 202 may extract a set of exit features for the candidate exit 105 in this Cartesian coordinate system. The candidate exit features may include the size, drivable direction, and / or boundaries of the candidate exit 105. For example, the size of the candidate exit 105 may include the width of the candidate exit 105, the drivable direction of the candidate exit 105 may be the x-axis, and the boundaries of the candidate exit 105 may include the boundary positions or coordinates on both sides of the candidate exit. Similar Cartesian coordinate systems may be defined for the other candidate exits 103, 104, and 106, respectively, so that the feature extractor 202 can extract the corresponding candidate exit features.
[0042] In some embodiments, vehicle characteristics can also be represented based on the candidate exits. For example, the other car 102 has a set of vehicle characteristics relative to one candidate exit, and has multiple sets of vehicle characteristics relative to multiple candidate exits. Each set of vehicle characteristics may include at least the motion state of the other car 102 relative to the corresponding candidate exit. For example, for the candidate exit 105, the vehicle characteristics of the other car 102 may include at least the motion state of the other car 102 relative to the candidate exit 105, for example, the driving direction of the other car 102 relative to the drivable direction of the candidate exit 105. The motion state of the other car 102 can be represented in a Cartesian coordinate system with the corresponding candidate exit as the origin, thereby indicating the motion state of the other car 102 relative to the corresponding candidate exit. For example, each set of vehicle characteristics of the other car 102 may include the coordinates of the other car 102, the distance between the other car 102 and the origin, the orientation of the other car 102, the rate of change of the coordinates of the other car 102, the rate of change of the distance between the other car 102 and the origin, and / or the rate of change of the orientation of the other car 102. Combined Figure 1 The Cartesian coordinate system of the candidate exit 105, a set of vehicle characteristics of the other vehicle 102 relative to the candidate exit 105 may include the coordinates of the other vehicle 102, the distance between the other vehicle 102 and the origin O, the orientation of the other vehicle 102, the rate of change of the coordinates of the other vehicle 102, the rate of change of the distance between the other vehicle 102 and the origin O and / or the rate of change of the orientation of the other vehicle 102.
[0043] In some embodiments, each set of vehicle features may also include the motion state of the other vehicle 102 in a curved coordinate system with the end point of the reference lane line as the origin and the reference lane line as one of the coordinate axes, wherein the lane line closest to the vehicle is selected from the lane lines connected to the corresponding candidate exits as the reference lane line. The above-mentioned curved coordinate system is also called a Frenet coordinate system, wherein the direction along the reference line is called the longitudinal direction S, and the normal direction of the reference lane line is called the lateral direction D. Based on the position of the reference lane line, the longitudinal distance and the lateral distance can be used to describe any position, and it is convenient to calculate the longitudinal and lateral speeds, accelerations, jerk, etc. For example, the reference lane line can include a physical lane line or a virtual lane line.
[0044] In some embodiments, the motion state of the other vehicle 102 in the above-mentioned curved coordinate system may include the coordinates of the other vehicle 102, the angle difference between the orientation of the other vehicle 102 and the reference driving direction, the rate of change of the coordinates of the other vehicle 102, and the rate of change of the angle difference, where the reference driving direction is the driving direction of the lane line at the projection point of the other vehicle 102 to the reference lane line.
[0045] By determining vehicle characteristics based on exits, intention prediction system 200 can predict which exit the intersection area the target vehicle will use, or the probability of using each exit. In this way, the high-level intention prediction problem of the target vehicle can be transformed into a problem of matching vehicle state with map elements (i.e., exits).
[0046] After extracting vehicle features and exit features, feature extractor 202 can provide them to vehicle feature learning network 204 and exit feature learning network 206, respectively. Vehicle feature learning network 204 can obtain the vehicle features from feature extractor 202 to determine a feature representation of the vehicle features, such as a vector representation of the vehicle features. For example, vehicle feature learning network 204 can be implemented using a neural network. Because the vehicle's motion state is dynamic, vehicle feature learning network 204 can be implemented using a recurrent neural network (RNN) combined with a multilayer perceptron (MLP) to track the vehicle's state. An RNN has internal memory that records its hidden state and performs the same function for each input data point. The current input includes the output from the previous time point. After calculating the output, the output is copied and sent back to the RNN. In other words, the RNN considers the current input and the output learned from the previous input and updates its hidden state at each time point. Examples of RNNs include the Gated Recurrent Unit (GRU) and the Long Short-Term Memory (LSTM). An MLP is a fully connected neural network that can implement nonlinear functions. An MLP consists of an input layer, an output layer, and at least one hidden layer connecting the input and output layers.
[0047] The export feature learning network 206 can obtain export features from the feature extractor 202 to determine feature representations of the export features, such as vehicle features represented by vectors. For example, the export feature learning network 206 can be implemented by a neural network, such as a multi-layer perceptron (MLP).
[0048] Vehicle feature learning network 204 and exit feature learning network 206 can provide feature representations of vehicle features and exit features, respectively, to metric learning network 208. Metric learning, also known as similarity learning, is used to learn or construct metrics or similarities between different objects. Metric learning network 208 can obtain feature representations of vehicle features from vehicle feature learning network 204 and feature representations of exit features from exit feature learning network 206. Based on the feature representations of vehicle features and exit features, metric learning network 208 can determine the degree of match or probability of match between the other vehicle 102 and the exit. Metric learning network 208 can be implemented using various neural networks, such as a multilayer perceptron (MLP).
[0049] The metric learning network 208 can provide the degree of matching or the probability of matching to the intention tracker 210. The intention tracker 210 can track based on the degree of matching or the probability of matching at different times to determine the intention of the other vehicle 102, such as the exit of the intersection. The vehicle intention can be tracked in the time domain using a sliding window method. For example, the fusion probability (e.g., weighted average) at the current moment can be calculated based on the state probability within a certain window length. In some embodiments, the intention tracker 210 can output the exit with the highest probability as the final output result. In other embodiments, the intention tracker 210 can output multiple exits with higher probabilities as the final output result. For example, when the probabilities of multiple exits with higher probabilities are relatively close, it may be difficult to determine which exit is the intention of the target vehicle. In this case, multiple output results can be output to prevent misjudgment.
[0050] Intention prediction system 200, target vehicle features relative to map elements (i.e., exits) are extracted. These features consist of two components: the vehicle's motion relative to the exit in a Cartesian coordinate system (i.e., vehicle position, orientation, and position and orientation changes between frames), and the vehicle's motion relative to the exit lane in a curvilinear coordinate system. The second component is exit features, including each exit's width, drivable direction, and the exit's boundary points. Representation vectors for the target vehicle and exit are obtained using a vehicle feature learning network and an exit feature learning network, respectively. A metric learning network is then used to calculate the matching probability between the vehicle representation vectors. The matching probabilities for different exits are normalized, and the target intention probability is tracked using a sliding window weighted average.
[0051] The intention prediction system 200 abstracts the prediction of high-order target intentions into a target-exit matching problem. This approach can adapt to various intersection scenarios and has good generalization performance. When the target intention is not obvious, for example, the probability corresponding to the intention with the highest probability is still low and close to the probability corresponding to the intention with the second highest probability. In this case, multiple intentions can be output, thereby solving the multimodal problem. In addition, since the intention prediction system does not need to use CNN to extract features from rasterized images, only simple MLP and RNN networks are required, which can reduce the complexity of the model, improve computational efficiency, real-time and timeliness, so that it can respond in a timely manner and be more suitable for autonomous driving scenarios.
[0052] Figure 3 Schematic diagram of an intention prediction system 300 according to some embodiments of the present disclosure is shown. Figure 3 As shown, the vehicle features extracted at time t-1 are represented as vehicle feature vectors and , and the vehicle features extracted at time t are represented as vehicle feature vector and , where i represents the exit number, and the vehicle feature vector Indicates the vehicle relative to the exit i The characteristics of the vehicle, and the vehicle feature vector Indicates the relative exit of the vehicle i In addition, the extracted exit features are represented as exit feature vectors In the context of the present disclosure, subscripts indicating time may be omitted for convenience without causing confusion.
[0053] In some embodiments, the vehicle feature vector Indicates the vehicle's relative position to the exit in the exit coordinate system i For example, you can i Origin, exit i The vehicle feature vector is extracted from a Cartesian coordinate system or a reference coordinate system with the driving direction as a coordinate axis (such as the x-axis). For example, the vehicle feature vector The position of the vehicle in this reference coordinate system may be included , the distance between the vehicle and the origin , the direction of the vehicle , and the vehicle's location The rate of change of the vehicle and the distance between the origin The rate of change of the vehicle's direction The rate of change of these feature quantities can be represented by the change of the above feature quantities relative to the previous moment. For example, the position of the vehicle The rate of change of the vehicle's position can be determined by The change from the previous moment is expressed as It should be understood that the vehicle feature vector More or fewer features may be included.
[0054] In some embodiments, the vehicle feature vector Indicates the vehicle's relative exit in the reference lane line coordinate system i For example, you can i The lane line closest to the vehicle is selected from the connected lane lines as the reference lane line, thereby establishing a curved coordinate system with the end point of the reference lane line as the origin and the reference lane line as a coordinate axis (for example, the vertical axis), such as Figure 4 The reference lane line includes the lane line end point 401, the lane line start point 407, and the lane line sampling points 402-406. Point P represents the position of the target vehicle, and its projection point on the reference lane line is R, that is, the target point P The projection point corresponding to the minimum projection distance to the lane line. In this curved coordinate system, the coordinates of the vehicle, the angular difference between the vehicle's orientation and the reference driving direction, the rate of change of the vehicle's coordinates, and the rate of change of the angular difference are calculated, where the reference driving direction is the driving direction of the lane line at the projection point of the vehicle to the reference lane line. The rate of change of these feature quantities can be represented by the change of the above feature quantities relative to the previous moment. For example, the rate of change of the vehicle's coordinates can be represented by the change of the vehicle's coordinates relative to the previous moment. Although the vehicle feature vector is given here It should be understood that the vehicle feature vector More or fewer features may be included.
[0055] like Figure 4 As shown in Figure 2, taking the lane line as the longitudinal axis as an example, in this curved coordinate system, the position of the target point P can be expressed by formulas (1) and (2):
[0056]
[0057] Where x represents the x coordinate of the target point P, y represents the y coordinate of the target point P, is the lane line segment length, ; is the distance between the end point of the previous line segment and the target projection point, that is, the distance between lane line 405 and R; is the vector length. It should be understood that the "lane lines" mentioned here can include both physical lane lines and virtual lane lines. In some embodiments, if the map does not support virtual lane lines, the "lane lines" mentioned here may also include only physical lane lines.
[0058] like Figure 3 As shown, at time t-1, the vehicle feature vector The input is fed into a multi-layer perceptron (MLP) 302. The multi-layer perceptron is a fully connected neural network that includes an input layer, an output layer, and at least one hidden layer connecting the input layer and the output layer. For example, the MLP 302 may have one hidden layer to improve computational efficiency. The output of the multi-layer perceptron 302 is fed into a recurrent neural network (RNN) 303. In addition, at time t-1, the vehicle feature vector The input is provided to a multilayer perceptron (MLP) 304, and the output of the multilayer perceptron 304 is provided to a recurrent neural network 305. For example, the MLP 304 can have one hidden layer to improve computational efficiency. For example, RNNs 303 and 305 can be implemented using recurrent neural network units such as a gated recurrent unit (GRU) or a long short-term memory unit (LSTM).
[0059] The recurrent neural network has an internal memory that records its hidden state and performs the same function for each input data, and the input at the current moment depends on the output at the previous moment. After the output is calculated, the output is copied and sent back to the recurrent neural network. In other words, the recurrent neural network considers the input at the current moment and the output learned from the input at the previous moment, and updates its hidden state at each moment. It should be understood that Figure 3 The recurrent neural network is shown in an expanded form, that is, RNN 303 and RNN 313 are the same RNN at different times, and RNN 305 and RNN 315 are also the same RNN at different times. In other words, Figure 3 The feature learning network layer of includes only two RNNs. Accordingly, MLP 302 and 312 represent the same MLP, MLP 304 and 314 represent the same MLP, and matching functions 306 and 316 also represent the same matching function.
[0060] At time t-1, RNN 303 receives the input at time t-1 from MLP 302 and obtains the output of RNN 303 at time t-2 as another input at time t-1. For clarity, Figure 3 It is not shown that RNN 303 receives the output of the RNN at time t-2 as input. Through calculation, RNN 303 can update its hidden state and provide the output at time t-1 as input to the RNN at time t+1. For example, at time t-1, the hidden state of RNN 303 is represented by the vector , and the output of RNN 303 at time t-1 can be provided as input to the RNN at time t, that is, RNN 313.
[0061] At time t-1, RNN 305 receives the input at time t-1 from MLP 304 and obtains the output of RNN 305 at time t-2 as another input at time t-1. For clarity, Figure 3 It is not shown that RNN 305 receives the output of RNN at time t-2 as input. Through calculation, RNN 305 can update its hidden state and provide the output at time t. For example, at time t-1, the hidden state of RNN 305 is represented by the vector , and the output of RNN 305 at time t-1 can be provided as input to the RNN at time t, that is, RNN 315. At time t-1, the representation vector and Splice together to get the final representation vector .
[0062] like Figure 3 As shown, at time t, RNN 313 receives the input at time t from MLP 312 and obtains the output of RNN 303 at time t-1 as another input at time t. Through calculation, RNN 313 can update its hidden state and can provide the output at time t to be provided as input to the RNN at time t+1 (not shown). For clarity, Figure 3 It is not shown that the output of RNN313 is provided to the RNN at time t+1 as the input of the RNN at time t+1. For example, at time t, the hidden state of RNN 313 is represented by the vector , and the output of the RNN 313 at time t can be provided as input to the RNN at time t+1 (not shown).
[0063] At time t, RNN 315 receives the input at time t from MLP 314 and obtains the output of RNN 305 at time t-1 as another input at time t. Through calculation, RNN 315 can update its hidden state and can provide the output at time t to be provided as input to the RNN at time t+1 (not shown). For clarity, Figure 3 It is not shown that the output of RNN 315 is provided to the RNN at time t+1 as the input of the RNN at time t+1. For example, the hidden state of RNN 315 at time t is represented by the vector , and the output of RNN 305 at time t can be provided as input to the RNN at time t+1 (not shown). At time t, the vector representing and Splice together to obtain the final representation vector .
[0064] Return now Figure 3 , export i characteristics Can include exports i Width ,exit i Direction of travel , the boundary points on both sides of the exit 、 .like Figure 3 As shown, the export feature vector is provided to the multilayer perceptron 301, which maps the output feature vector to the output representation vector .
[0065] At time t-1, the exit represents the vector and vehicle representation vector Provided to the matching function 306, the matching function 306 calculates the vehicle representation vector With export representation vector The degree of matching between them can be expressed by similarity or matching probability. For example, the vehicle representation vector With export representation vector can be spliced together and provided to the matching function 306, which can determine the matching probability based on the spliced representation vector Then, the matching probabilities can be normalized using an activation function to obtain relative probabilities between different exits, i.e., probabilities of different intentions. For example, the activation function can be a softmax activation function. For example, the matching function 306 can include one or more multi-layer perceptrons.
[0066] At time t, the exit represents the vector and vehicle representation vector Provided to the matching function 316, the matching function 316 calculates the vehicle representation vector With export representation vector The degree of matching between them can be expressed by similarity or matching probability. For example, the vehicle representation vector With export representation vector can be spliced together and provided to the matching function 316, which can determine the matching probability based on the spliced representation vectors Then, the matching probabilities can be normalized using an activation function to obtain relative probabilities between different exits, i.e., probabilities of different intentions. For example, the activation function can be a softmax activation function. For example, the matching function 316 can include one or more multi-layer perceptrons.
[0067] In some embodiments, the target vehicle's intention can be tracked in the time domain using a sliding window approach. For example, the current fusion probability (weighted average) can be calculated based on the state probability within a certain window length, as shown in Formula (3):
[0068]
[0069] in for The weight corresponding to the probability of the moment, M is the window length. The weight can be average weighted or exponentially decreasing weighted. K is the total number of intersection exits where the target vehicle is located. By calculating the fusion probability, the impact of vehicle state changes can be further considered.
[0070] The following describes a specific embodiment of the intent prediction system 300. It should be understood that this embodiment is provided by way of example only. For example, MLPs 302 and 304 (i.e., MLPs 312 and 314) in the vehicle feature learning network layer can be single-layer MLPs, i.e., comprising only one hidden layer. A single-layer MLP can achieve feature fusion and association with low computational overhead. This single-layer MLP has a hidden unit dimension of 64 and a rectified linear unit (ReLU) activation function. It should be understood that any other suitable hidden unit dimension and activation function may also be used.
[0071] The RNNs 303 and 305 (ie, RNNs 313 and 315 ) in the vehicle feature learning network may be implemented by GRU, where the hidden unit dimension is 128. It should be understood that any other suitable RNN, such as LSTM, may also be used, and any other suitable hidden unit dimension may also be used.
[0072] The MLP 301 in the output feature learning network can be implemented as a single-layer MLP, i.e., comprising only one hidden layer. The single-layer MLP has a hidden unit dimension of 16 and an activation function of ReLU. It should be understood that any other suitable hidden unit dimension and activation function may also be used.
[0073] The metric learning network can be implemented as a three-layer MLP, where the first layer has a hidden unit dimension of 128 and a ReLU activation function; the second layer has a hidden unit dimension of 64 and a ReLU activation function; and the third layer has a hidden unit dimension of 1. The outputs of the three-layer MLP are normalized using a normalization function (e.g., a softmax function) to obtain normalized target intent probabilities. It should be understood that any other suitable MLP, hidden unit dimension, and normalization function may also be used.
[0074] After the target intention probability passes through a classifier (e.g., a sigmoid function), the absolute matching probability of the vehicle and each exit is obtained. It should be understood that in addition to the sigmoid function, any other suitable classifier can also be used.
[0075] During the training process, weighted binary cross entropy or multi-classification cross entropy can be used as the loss function. It should be understood that any other suitable loss function can be used as an alternative. In a specific embodiment, the batch size of the training data is 128, the initial learning rate is 0.001, the learning rate can be changed in an exponentially decreasing form, the decay step size is set to 10 rounds, the total number of training rounds is 100 rounds, and one training round refers to traversing all the training data once. It should be understood that any other suitable training parameters can also be used as an alternative.
[0076] In such Figure 3 In the illustrated intention prediction system 300, there's no need to use a CNN to extract features from high-dimensional rasterized images. This reduces model complexity and improves computational efficiency, real-time performance, and timeliness, enabling timely responses and making it more suitable for autonomous driving scenarios. Furthermore, intention prediction system 300 uses the exit as a reference or benchmark to represent the state of the target vehicle, eliminating the need to divide intersections into sectors. This allows for adaptation to various intersection scenarios and demonstrates excellent generalization performance.
[0077] Figure 5 FIG2 shows a schematic diagram of an intention prediction system 500 according to some embodiments of the present disclosure. Figure 3 Unlike the intention prediction system 300 in the embodiment, the intention prediction system 500 does not extract the vehicle feature vector , only the vehicle feature vector is extracted The vehicle feature vector is extracted in the intention prediction system 500 and the export feature vector .
[0078] In some embodiments, the vehicle feature vector Indicates the vehicle's relative position to the exit in the exit coordinate system i For example, you can i Origin, exit i The vehicle feature vector is extracted from a Cartesian coordinate system or a reference coordinate system with the driving direction as a coordinate axis (such as the x-axis). For example, the vehicle feature vector The position of the vehicle in this reference coordinate system may be included , the distance between the vehicle and the origin , the direction of the vehicle , and the vehicle's location The rate of change of the vehicle and the distance between the origin The rate of change of the vehicle's direction The rate of change of these feature quantities can be represented by the change of the above feature quantities relative to the previous moment. For example, the position of the vehicle The rate of change of the vehicle's position can be determined by The change from the previous moment is expressed as It should be understood that the vehicle feature vector More or fewer features may be included.
[0079] In some embodiments, the export feature vector Can include exports i Width ,exit i Direction of travel , the boundary points on both sides of the exit 、 .
[0080] like Figure 5 As shown, at time t-1, the vehicle feature vector The input is provided to a multi-layer perceptron (MLP) 502. For example, the MLP 502 may have one hidden layer to improve computational efficiency. The output of the multi-layer perceptron 502 is provided to a recurrent neural network (RNN) 503. For example, the RNN 503 may be implemented by a recurrent neural network unit such as a gated recurrent unit (GRU) or a long short-term memory unit (LSTM). It should be understood that Figure 5 The recurrent neural network is shown in an expanded form, that is, RNN503 and RNN513 are the same RNN at different times. In other words, Figure 5 The feature learning network layer of
[15] only includes one RNN.
[0081] At time t-1, RNN503 receives the input at time t-1 from MLP 502 and obtains the output of RNN503 at time t-2 as another input at time t-1. For clarity, Figure 5 It is not shown that RNN503 receives the output of the RNN at time t-2 as input. Through calculation, RNN503 can update its hidden state and provide the output at time t-1 as input to the RNN at time t+1. For example, at time t-1, the hidden state of RNN503 is represented by the vector , and the output of RNN503 at time t-1 can be provided as input to the RNN at time t, that is, RNN513.
[0082] like Figure 5As shown, at time t, RNN513 receives the input at time t from MLP 512 and obtains the output of RNN503 at time t-1 as another input at time t. Through calculation, RNN513 can update its hidden state and can provide the output at time t to be provided as input to the RNN at time t+1 (not shown). For clarity, Figure 5 It is not shown that the output of RNN513 is provided to the RNN at time t+1 as the input of the RNN at time t+1. For example, at time t, the hidden state of RNN513 is represented by the vector , and the output of RNN513 at time t can be provided as input to the RNN at time t+1 (not shown).
[0083] like Figure 5 As shown, the export feature vector is provided to the multilayer perceptron 501, which outputs the feature vector Mapped to export representation vector .
[0084] At time t-1, the exit represents the vector and vehicle representation vector Provided to the matching function 506, the matching function 506 calculates the vehicle representation vector With export representation vector The degree of matching between them can be expressed by similarity or matching probability. For example, the vehicle representation vector With export representation vector can be spliced together and provided to the matching function 506, which can determine the matching probability based on the spliced representation vector Then, the matching probabilities can be normalized using an activation function to obtain relative probabilities between different exits, i.e., probabilities of different intentions. For example, the activation function can be a softmax activation function. For example, the matching function 506 can include one or more multi-layer perceptrons.
[0085] At time t, the exit represents the vector and vehicle representation vector Provided to the matching function 516, the matching function 516 calculates the vehicle representation vector With export representation vector The degree of matching between them can be expressed by similarity or matching probability. For example, the vehicle representation vector With export representation vector can be spliced together and provided to the matching function 516, which can determine the matching probability based on the spliced representation vector Then, the matching probabilities can be normalized using an activation function to obtain relative probabilities between different exits, i.e., probabilities of different intentions. For example, the activation function can be a softmax activation function. For example, the matching function 516 can include one or more multi-layer perceptrons.
[0086] In some embodiments, the target vehicle's intention can be tracked in the time domain using a sliding window approach. For example, the current fusion probability (weighted average) can be calculated based on the state probability within a certain window length, as shown in Formula (4).
[0087]
[0088] in for The weight corresponding to the probability of the moment, M is the window length. The weight can be average weighted or exponentially decreasing weighted. K is the total number of exits at the intersection where the target vehicle is located.
[0089] The following describes a specific embodiment of the intent prediction system 500. It should be understood that this embodiment is provided by way of example only. For example, the MLP 502 (i.e., MLP 512) in the vehicle feature learning network layer can be a single-layer MLP, comprising only one hidden layer. A single-layer MLP can achieve feature fusion and association with low computational overhead. The single-layer MLP has a hidden unit dimension of 64 and a rectified linear unit (ReLU) activation function. It should be understood that any other suitable hidden unit dimension and activation function may also be used.
[0090] The RNN 503 (ie, RNN 513 ) in the vehicle feature learning network may be implemented by a GRU, where the hidden unit dimension is 128. It should be understood that any other suitable RNN, such as an LSTM, may also be used, and any other suitable hidden unit dimension may also be used.
[0091] The MLP 501 in the output feature learning network can be implemented as a single-layer MLP, i.e., comprising only one hidden layer. The single-layer MLP has a hidden unit dimension of 16 and an activation function of ReLU. It should be understood that any other suitable hidden unit dimension and activation function may also be used.
[0092] The metric learning network can be implemented as a three-layer MLP, where the first layer has a hidden unit dimension of 128 and a ReLU activation function; the second layer has a hidden unit dimension of 64 and a ReLU activation function; and the third layer has a hidden unit dimension of 1. The outputs of the three-layer MLP are normalized using a normalization function (e.g., a softmax function) to obtain normalized target intent probabilities. It should be understood that any other suitable MLP, hidden unit dimension, and normalization function may also be used.
[0093] After the target intention probability passes through a classifier (e.g., a sigmoid function), the absolute matching probability of the vehicle and each exit is obtained. It should be understood that in addition to the sigmoid function, any other suitable classifier can also be used.
[0094] During the training process, weighted binary cross entropy or multi-classification cross entropy can be used as the loss function. It should be understood that any other suitable loss function can be used as an alternative. In a specific embodiment, the batch size of the training data is 128, the initial learning rate is 0.001, the learning rate can be changed in an exponentially decreasing form, the decay step size is set to 10 rounds, the total number of training rounds is 100 rounds, and one training round refers to traversing all the training data once. It should be understood that any other suitable training parameters can also be used as an alternative.
[0095] In such Figure 5 In the intention prediction system 500 shown, there is no need to use CNN to extract features from high-dimensional rasterized images, which can reduce model complexity, improve computational efficiency, real-time performance, and timeliness, thereby enabling timely responses and being more suitable for autonomous driving scenarios. In addition, the intention prediction system 500 uses the exit as a reference or benchmark to represent the state of the target vehicle, so there is no need to divide the intersection into fan-shaped areas, thereby being able to adapt to various intersection scenarios and having good generalization performance. Compared with the intention prediction system 300, since the vehicle feature vector related to the lane line is not used, the vehicle feature vector related to the lane line is not used. , the intention prediction system 500 does not require a high-precision map, and thus can still achieve good performance when the virtual lane lines are missing or inaccurate.
[0096] Figure 6 FIG2 is a flow chart of a method 600 for autonomous driving according to some embodiments of the present disclosure. The method 600 may be executed in the vehicle 101 or partially in the vehicle 101 and partially in the cloud.
[0097] At block 602 , a plurality of sets of exit features for a plurality of candidate exits associated with a vehicle (eg, the other vehicle 102 , also referred to as a target vehicle) are obtained, each candidate exit being a portion of a road associated with a drivable route of the vehicle.
[0098] At block 604 , a plurality of sets of vehicle characteristics of the vehicle relative to a plurality of candidate exits are determined, each set of vehicle characteristics including at least a motion state of the vehicle relative to a corresponding candidate exit of the plurality of candidate exits.
[0099] At block 606 , an exit matching the vehicle's travel route is determined from among a plurality of candidate exits based on the plurality of sets of exit characteristics and the plurality of sets of vehicle characteristics.
[0100] In some embodiments, each set of exit features includes: a motion state of the vehicle relative to the candidate exit in a Cartesian coordinate system with the corresponding candidate exit as the origin, wherein the Cartesian coordinate system has a road driving direction at the corresponding candidate exit as a coordinate axis direction.
[0101] In some embodiments, the exit feature of the corresponding candidate exit includes at least one of the following: a size, a drivable direction, and a boundary of the corresponding candidate exit.
[0102] In some embodiments, each set of vehicle features includes at least one of the following: vehicle coordinates, distance between the vehicle and an origin, vehicle orientation, rate of change of vehicle coordinates, rate of change of distance between the vehicle and an origin, and rate of change of vehicle orientation.
[0103] In some embodiments, each set of vehicle features also includes: the movement state of the vehicle in a curved coordinate system with the end point of the reference lane line as the origin and the reference lane line as a coordinate axis, wherein the lane line closest to the vehicle is selected from the lane lines connected to the corresponding candidate exits as the reference lane line.
[0104] In some embodiments, the motion state of the vehicle in the curved coordinate system includes at least one of the following: the coordinates of the vehicle, the angular difference between the vehicle's orientation and a reference driving direction, the rate of change of the vehicle's coordinates, and the rate of change of the angular difference, where the reference driving direction is the driving direction of the lane line at the projection point of the vehicle to the reference lane line.
[0105] Additionally, in some embodiments, the feature representation of each group of export features in the multiple groups of export features can be determined by a first multi-layer perceptron, and the feature representation of each group of vehicle features in the multiple groups of vehicle features can be determined by a second multi-layer perceptron and a recurrent neural network.
[0106] For example, an exit can be determined based on a feature representation of each exit feature in the multiple sets of exit features and a feature representation of each vehicle feature in the multiple sets of vehicle features. Alternatively, in some embodiments, a third multi-layer perceptron can be used to determine a matching coefficient between each exit feature in the multiple sets of exit features and a corresponding vehicle feature in the multiple sets of vehicle features, and the exit can be determined based on this matching coefficient.
[0107] In some embodiments, determining an exit based on a matching coefficient includes: obtaining a historical matching coefficient related to a historical position of the vehicle, the historical matching coefficient being a matching coefficient between each set of exit features in a plurality of sets of exit features and a corresponding vehicle feature in a plurality of sets of vehicle features when the vehicle was at the historical position; calculating an updated matching coefficient based on the historical matching coefficient and the determined matching coefficient; and determining an exit based on the updated matching coefficient.
[0108] Figure 7FIG2 shows a block diagram of an apparatus 700 for autonomous driving according to some embodiments of the present disclosure. The apparatus 700 may be implemented in the vehicle 101 or partially in the vehicle 101 and partially in the cloud.
[0109] like Figure 7 As shown, the apparatus 700 includes a first acquisition module 702 configured to acquire a plurality of groups of exit features of a plurality of candidate exits associated with a vehicle, each candidate exit being a portion of a road associated with a drivable route of the vehicle.
[0110] The apparatus 700 further includes a first determining module 704 configured to determine a plurality of sets of vehicle characteristics relative to a plurality of candidate exits, each set of vehicle characteristics including at least a motion state of the vehicle relative to a corresponding candidate exit among the plurality of candidate exits.
[0111] The apparatus 700 further includes a second determining module 706 configured to determine an exit matching the vehicle's driving route from a plurality of candidate exits based on the plurality of sets of exit features and the plurality of sets of vehicle features.
[0112] In some embodiments, each set of exit features includes: a motion state of the vehicle relative to the candidate exit in a Cartesian coordinate system.
[0113] In some embodiments, the exit feature of the corresponding candidate exit includes at least one of the following: a size, a drivable direction, and a boundary of the corresponding candidate exit.
[0114] In some embodiments, each set of vehicle characteristics includes at least one of the following: the coordinates of the vehicle, the distance between the vehicle and the origin of the Cartesian coordinate system, the orientation of the vehicle, the rate of change of the coordinates of the vehicle, the rate of change of the distance between the vehicle and the origin, and the rate of change of the orientation of the vehicle.
[0115] In some embodiments, each set of vehicle features also includes: the movement state of the vehicle in a curved coordinate system with the end point of the reference lane line as the origin and the reference lane line as a coordinate axis, wherein the lane line closest to the vehicle is selected from the lane lines connected to the corresponding candidate exits as the reference lane line.
[0116] In some embodiments, the motion state of the vehicle in the curved coordinate system includes at least one of the following: the coordinates of the vehicle, the angular difference between the vehicle's orientation and the reference driving direction, the rate of change of the vehicle's coordinates, and the rate of change of the angular difference, where the reference driving direction is the driving direction of the lane line at the projection point of the vehicle to the reference lane line.
[0117] In some embodiments, the device 700 also includes a third determination module, configured to determine the feature representation of each group of exit features in multiple groups of exit features through a first multi-layer perceptron; a fourth determination module, configured to determine the feature representation of each group of vehicle features in multiple groups of vehicle features through a second multi-layer perceptron and a recurrent neural network; and wherein the second determination module 706 is configured to: determine the exit based on the feature representation of each group of exit features in the multiple groups of exit features and the feature representation of each group of vehicle features in the multiple groups of vehicle features.
[0118] In some embodiments, the second determination module 706 includes: a fifth determination module, configured to determine the matching coefficient between each set of exit features in the multiple sets of exit features and the corresponding vehicle features in the multiple sets of vehicle features through a third multi-layer perceptron; and a sixth determination module, configured to determine the exit based on the matching coefficient.
[0119] In some embodiments, the sixth determination module includes: a second acquisition module, configured to acquire a historical matching coefficient related to the historical position of the vehicle, the historical matching coefficient being a matching coefficient between each set of exit features in a plurality of sets of exit features and a corresponding vehicle feature in a plurality of sets of vehicle features when the vehicle is at the historical position; a calculation module, configured to calculate an updated matching coefficient based on the historical matching coefficient and the determined matching coefficient; and a seventh determination module, configured to determine the exit based on the updated matching coefficient.
[0120] Figure 8 FIG. 8 is a schematic block diagram of an electronic device 800 that can be used to implement an embodiment of the present disclosure. The device 800 can be used to implement Figure 7 As shown in the figure, device 800 includes a central processing unit (CPU) 801, which can perform various appropriate actions and processes according to computer program instructions stored in a read-only memory (ROM) 802 or loaded from a storage unit 808 into a random access memory (RAM) 803. RAM 803 may also store various programs and data required for the operation of device 800. CPU 801, ROM 802, and RAM 803 are interconnected via a bus 804. An input / output (I / O) interface 805 is also connected to bus 804.
[0121] Various components in device 800 are connected to I / O interface 805, including an input unit 806, such as a keyboard, mouse, etc.; an output unit 807, such as various types of displays, speakers, etc.; a storage unit 808, such as a magnetic disk, optical disk, etc.; and a communication unit 809, such as a network card, modem, wireless communication transceiver, etc. The communication unit 809 allows device 800 to exchange information / data with other devices via a computer network such as the Internet and / or various telecommunication networks.
[0122] The various processes and procedures described above, such as method 600, may be executed by processing unit 801. For example, in some embodiments, method 600 may be implemented as a computer software program tangibly embodied in a machine-readable medium, such as storage unit 808. In some embodiments, part or all of the computer program may be loaded and / or installed onto device 800 via ROM 802 and / or communication unit 809. When the computer program is loaded into RAM 803 and executed by CPU 801, one or more steps of method 600 described above may be performed. Alternatively, in other embodiments, CPU 801 may be configured to execute method 600 in any other suitable manner (e.g., via firmware).
[0123] The present disclosure may be a method, an apparatus, a system and / or a computer program product. The computer program product may include a computer-readable storage medium carrying computer-readable program instructions for executing various aspects of the present disclosure.
[0124] A computer-readable storage medium can be a tangible device that can hold and store instructions for use by an instruction execution device. A computer-readable storage medium can 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 thereof. More specific examples (a non-exhaustive list) of computer-readable storage media include: a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static random access memory (SRAM), a portable compact disc 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 raised-in-groove structure on which instructions are stored, and any suitable combination thereof. As used herein, a computer-readable storage medium is not to be construed 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 an electrical wire.
[0125] 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, fiber optic transmission, wireless transmission, 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 to be stored in the computer-readable storage medium in each computing / processing device.
[0126] The computer program instructions for performing the operations of the present disclosure may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages such as Smalltalk, C++, and conventional procedural programming languages such as "C" or similar programming languages. The computer-readable program instructions may be executed entirely on the user's computer, partially on the user's computer, as a stand-alone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer 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., via the Internet using an Internet service provider). In some embodiments, the state information of the computer-readable program instructions is used to personalize an electronic circuit, such as a programmable logic circuit, a field programmable gate array (FPGA), or a programmable logic array (PLA), so that the electronic circuit can execute the computer-readable program instructions, thereby implementing various aspects of the present disclosure.
[0127] Various aspects of the present disclosure are described herein with reference to flowcharts and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the present disclosure. It should be understood that each block of the flowcharts and / or block diagrams, and combinations of blocks in the flowcharts and / or block diagrams, can be implemented by computer-readable program instructions.
[0128] 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 device, thereby producing a machine, such that when these instructions are executed by the processing unit of the computer or other programmable data processing device, a device is generated that implements the functions / actions specified in one or more blocks in the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium, where these instructions cause the computer, programmable data processing device, and / or other device to operate in a specific manner. Thus, the computer-readable medium storing the instructions comprises an article of manufacture that includes instructions for implementing various aspects of the functions / actions specified in one or more blocks in the flowchart and / or block diagram.
[0129] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device, so that a series of operational 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.
[0130] The flow charts 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 flow chart or block diagram can represent a part of a module, program segment or instruction, and the part of the module, program segment or instruction contains one or more executable instructions for realizing the prescribed logical function. In some alternative implementations, the functions marked in the box can also occur in a sequence different from that 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 flow chart, and the combination of the boxes in the block diagram and / or flow chart can be implemented by a dedicated hardware-based system that performs the prescribed function or action, or can be implemented by a combination of dedicated hardware and computer instructions.
[0131] The embodiments of the present disclosure have been described above. The above description is illustrative and not exhaustive, and is not limited to the disclosed embodiments. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the described embodiments. The terminology used herein is selected to best explain the principles of the embodiments, practical applications, or improvements to the technology in the market, or to enable other persons skilled in the art to understand the embodiments disclosed herein.
Claims
1. A method for autonomous driving, comprising: Acquiring multiple sets of exit features for multiple candidate exits associated with the vehicle, and establishing multiple coordinate systems based on each candidate exit, each candidate exit being a portion of a road associated with a drivable route of the vehicle; determining a plurality of sets of vehicle characteristics of the vehicle relative to the plurality of candidate exits, each set of vehicle characteristics including at least a motion state of the vehicle relative to a corresponding candidate exit of the plurality of candidate exits; as well as Based on the multiple sets of exit features and the multiple sets of vehicle features, the degree of match or the probability of match between the vehicle and the multiple candidate exits is determined, and an exit that matches the vehicle's travel route is determined from the multiple candidate exits; the vehicle features are determined based on the candidate exits. 2 . The method according to claim 1 , wherein each set of vehicle features comprises a motion state of the vehicle relative to the candidate exit in a Cartesian coordinate system.
3. The method according to claim 2, wherein the exit features of the candidate exit include: The size, drivable direction, and boundary of the candidate exit.
4. The method of claim 2, wherein each set of vehicle characteristics comprises: The coordinates of the vehicle, the distance between the vehicle and the origin of the Cartesian coordinate system, the orientation of the vehicle, the rate of change of the coordinates of the vehicle, the rate of change of the distance between the vehicle and the origin, and the rate of change of the orientation of the vehicle.
5. The method of claim 1 , wherein each set of vehicle characteristics further comprises: The motion state of the vehicle in a curved coordinate system with a reference lane line as a coordinate axis, wherein the lane line closest to the vehicle is selected from the lane lines connected to the corresponding candidate exits as the reference lane line.
6. The method according to claim 5, wherein the motion state of the vehicle in the curvilinear coordinate system comprises: The coordinates of the vehicle, the angular difference between the vehicle's orientation and a reference driving direction, the rate of change of the vehicle's coordinates, and the rate of change of the angular difference, wherein the reference driving direction is the driving direction of the lane line at the projection point of the vehicle to the reference lane line.
7. The method according to claim 1, further comprising: Determining a feature representation of each set of export features in the multiple sets of export features by a first multi-layer perceptron; determining a feature representation of each set of vehicle features in the plurality of sets of vehicle features by using a second multi-layer perceptron and a recurrent neural network; as well as Wherein determining the export comprises: The exit is determined based on a feature representation of each of the plurality of sets of exit features and a feature representation of each of the plurality of sets of vehicle features.
8. The method of claim 1 , wherein determining the exit comprises: determining, by a third multi-layer perceptron, a matching coefficient between each set of exit features in the plurality of sets of exit features and a corresponding vehicle feature in the plurality of sets of vehicle features; as well as The outlet is determined based on the matching coefficient.
9. The method of claim 8, wherein determining the outlet based on the matching coefficient comprises: Obtaining a historical matching coefficient related to a historical position of the vehicle, the historical matching coefficient being a matching coefficient between each set of exit features in the plurality of sets of exit features and a corresponding vehicle feature in the plurality of sets of vehicle features when the vehicle was at the historical position; Calculating an updated matching coefficient based on the historical matching coefficient and the determined matching coefficient; as well as The exit is determined based on the updated matching coefficient. 10 . The method according to claim 1 , wherein the plurality of candidate exits are exits of an intersection area.
11. A device for autonomous driving, comprising: a first acquisition module configured to acquire multiple sets of exit features of multiple candidate exits associated with the vehicle, and establish multiple coordinate systems based on each candidate exit, each candidate exit being a portion of a road associated with a drivable route of the vehicle; A first determination module is configured to determine a plurality of sets of vehicle characteristics of the vehicle relative to the plurality of candidate exits, each set of vehicle characteristics including at least a motion state of the vehicle relative to a corresponding candidate exit among the plurality of candidate exits; as well as The second determination module is configured to determine the degree of matching or the probability of matching between the vehicle and the multiple candidate exits based on the multiple groups of exit features and the multiple groups of vehicle features, and determine an exit that matches the vehicle's travel route from the multiple candidate exits; the vehicle features are determined based on the candidate exits.
12. An electronic device, comprising: one or more processors; as well as The memory is used to store one or more programs, and when the one or more programs are executed by the one or more processors, the electronic device implements the method according to any one of claims 1 to 10.
13. An autonomous driving vehicle comprising the electronic device according to claim 12.
14. A computer-readable storage medium having a computer program stored thereon, wherein when the program is executed by a processor, the method according to any one of claims 1 to 10 is implemented.
Citation Information
Patent Citations
Vehicle lane changing intention prediction method based on time-series convolutional network
CN110843789A
Automatic driving vehicle passing judgment method and related equipment
CN111422204A
Trajectory prediction method and device
CN113879295A