EP4111288A1 - Perpendicular cut-in training - Google Patents
Perpendicular cut-in trainingInfo
- Publication number
- EP4111288A1 EP4111288A1 EP21759759.0A EP21759759A EP4111288A1 EP 4111288 A1 EP4111288 A1 EP 4111288A1 EP 21759759 A EP21759759 A EP 21759759A EP 4111288 A1 EP4111288 A1 EP 4111288A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- vehicle
- indication
- enter
- recites
- determining
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W60/00—Drive control systems specially adapted for autonomous road vehicles
- B60W60/001—Planning or execution of driving tasks
- B60W60/0015—Planning or execution of driving tasks specially adapted for safety
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W30/00—Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
- B60W30/08—Active safety systems predicting or avoiding probable or impending collision or attempting to minimise its consequences
- B60W30/09—Taking automatic action to avoid collision, e.g. braking and steering
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W30/00—Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
- B60W30/18—Propelling the vehicle
- B60W30/18009—Propelling the vehicle related to particular drive situations
- B60W30/18154—Approaching an intersection
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W30/00—Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
- B60W30/18—Propelling the vehicle
- B60W30/18009—Propelling the vehicle related to particular drive situations
- B60W30/18159—Traversing an intersection
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W60/00—Drive control systems specially adapted for autonomous road vehicles
- B60W60/001—Planning or execution of driving tasks
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W60/00—Drive control systems specially adapted for autonomous road vehicles
- B60W60/001—Planning or execution of driving tasks
- B60W60/0027—Planning or execution of driving tasks using trajectory prediction for other traffic participants
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/58—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/58—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
- G06V20/584—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads of vehicle lights or traffic lights
-
- G—PHYSICS
- G08—SIGNALLING
- G08G—TRAFFIC CONTROL SYSTEMS
- G08G1/00—Traffic control systems for road vehicles
- G08G1/16—Anti-collision systems
- G08G1/166—Anti-collision systems for active traffic, e.g. moving vehicles, pedestrians, bikes
-
- G—PHYSICS
- G08—SIGNALLING
- G08G—TRAFFIC CONTROL SYSTEMS
- G08G1/00—Traffic control systems for road vehicles
- G08G1/16—Anti-collision systems
- G08G1/167—Driving aids for lane monitoring, lane changing, e.g. blind spot detection
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W2554/00—Input parameters relating to objects
- B60W2554/40—Dynamic objects, e.g. animals, windblown objects
- B60W2554/404—Characteristics
- B60W2554/4045—Intention, e.g. lane change or imminent movement
Definitions
- prediction systems utilize information associated with objects in an environment to infer future actions of the objects, such as trajectories. Such information can then be used to determine how to control a vehicle, for example, in the environment.
- FIG. 1 illustrates an example environment for predicting whether a vehicle is going to enter a lane region in front of another vehicle, as described herein.
- FIG. 2 illustrates another example environment for predicting whether a vehicle is going to enter a lane region in front of another vehicle, as described herein.
- FIG. 3 illustrates another example environment for predicting whether a vehicle is going to enter a lane region in front of another vehicle, as described herein.
- FIG. 4 illustrates another example environment for predicting whether a vehicle is going to enter a lane region in front of another vehicle, as described herein.
- FIG. 5 illustrates another example environment for predicting whether a vehicle is going to enter a lane region in front of another vehicle, as described herein.
- FIG. 6 is a block diagram illustrating an example system for performing techniques, as described herein.
- FIG. 7 illustrates an example process for training a model for predicting whether a vehicle is going to enter a lane region in front of another vehicle, as described herein.
- FIG. 8 illustrates an example process for predicting whether a vehicle is going to enter a lane region in front of another vehicle, and controlling the other vehicle based on such a prediction, as described herein.
- a model can be trained using machine learning to predict when a vehicle that is proximate and substantially perpendicular to another vehicle, such as an autonomous vehicle, is going to enter a lane region in front of the autonomous vehicle (e.g., “cut-in”), such as by pulling out of a driveway, pulling out of a perpendicular parking spot, making a U-turn, or the like.
- the model can be trained based on training data previously collected by one or more vehicles in an environment.
- the model can be provided to an autonomous vehicle, and can be utilized by computing device(s) onboard the autonomous vehicle to predict how objects (e.g., other vehicles) proximate and substantially perpendicular to the autonomous vehicle are likely to behave.
- computing device(s) onboard the autonomous vehicle can leverage the model to predict when a vehicle that is proximate and substantially perpendicular to the autonomous vehicle is going to enter a lane region in front of the autonomous vehicle (e.g., “cut-in”), such as by pulling out of a driveway, pulling out of a perpendicular parking spot, making a U-turn, or the like.
- cut-in a vehicle that is proximate and substantially perpendicular to the autonomous vehicle is going to enter a lane region in front of the autonomous vehicle
- agents other vehicles performing these maneuvers
- the computing device(s) onboard the autonomous vehicle can utilize such predictions to determine how to navigate the autonomous vehicle in the environment. That is, the computing device(s) onboard the autonomous vehicle can adapt driving operations based on predictions output by the model.
- the autonomous vehicle can utilize the model to (i) predict when a vehicle proximate and substantially perpendicular to the autonomous vehicle is going to cut-in and (ii) determine a trajectory to navigate the autonomous vehicle to accommodate the other vehicle (e.g., cause the autonomous vehicle to decelerate thereby increasing a follow distance between the vehicle and another vehicle, cause the autonomous vehicle to yield to the other vehicle and/or stop, cause the autonomous vehicle to perform a lane change operation, cause the autonomous vehicle to safely maneuver around another vehicle, and/or cause the autonomous vehicle to perform any other combination of maneuvers the autonomous vehicle is capable of performing).
- a trajectory to navigate the autonomous vehicle to accommodate the other vehicle e.g., cause the autonomous vehicle to decelerate thereby increasing a follow distance between the vehicle and another vehicle, cause the autonomous vehicle to yield to the other vehicle and/or stop, cause the autonomous vehicle to perform a lane change operation, cause the autonomous vehicle to safely maneuver around another vehicle, and/or cause the autonomous vehicle to perform any other combination of maneuvers the autonomous vehicle is capable of performing.
- Techniques described herein are directed to framing a model, for example, using machine learning, to enable a vehicle, such as an autonomous vehicle, to predict the behavior of objects in its environment.
- Techniques described herein can utilize noisy sensor data, and more particularly, noisy prediction data (e.g., processed sensor data) to predict the behavior of objects in an environment associated with a vehicle more accurately than with existing prediction techniques.
- noisy prediction data e.g., processed sensor data
- Such vehicles may not be following a road network and/or following the rules of the road for which the autonomous vehicle is trained to perceive and understand.
- existing prediction techniques may be insufficient for detecting and safely maneuvering around such vehicles.
- techniques described herein provide a technological improvement over existing prediction technology.
- techniques described herein can reduce false positives and improve safety outcomes.
- the techniques described herein can be implemented in a number of ways. Example implementations are provided below with reference to the following figures. Example implementations are discussed in the context of autonomous vehicles; however, the methods, apparatuses, and components described herein can be applied to a variety of components (e.g., a sensor component or a robotic platform), and are not limited to autonomous vehicles.
- the techniques described herein may be utilized in driver-controlled vehicles in which such a component may provide an indication to a driver of the vehicle of whether it is safe to perform various maneuvers.
- the techniques can be utilized in an aviation or nautical context, or in any component involving objects or entities that may be associated with behavior that is unknown to the component.
- the techniques can be utilized in contexts outside of autonomous vehicles and/or perception components.
- the techniques described herein can be used with real data (e.g., captured using sensor(s)), simulated data (e.g., generated by a simulator), or any combination of the two.
- FIG. 1 illustrates an example environment 100 for predicting whether a vehicle is going to enter a lane region in front of another vehicle, as described herein.
- a vehicle 102 can be positioned in a driving lane 104 of a driving surface 106.
- the vehicle 102 can be an autonomous vehicle configured to operate according to a Level 5 classification issued by the U.S. National Highway Traffic Safety Administration which describes a vehicle capable of performing all safety -critical functions for the entire trip with the driver (or occupant) not being expected to control the vehicle at any time.
- a Level 5 classification issued by the U.S. National Highway Traffic Safety Administration which describes a vehicle capable of performing all safety -critical functions for the entire trip with the driver (or occupant) not being expected to control the vehicle at any time.
- the vehicle 102 can be configured to control all functions from start to stop, including all parking functions, it can be unoccupied.
- the components and methods described herein can be incorporated into any ground-borne, airborne, or waterborne vehicle, including those ranging from vehicles that need to be manually controlled by a driver at all times, to those that are partially or fully autonomously controlled. That is, in the illustrated example, the vehicle 102 is an autonomous vehicle; however, the vehicle 102 could be any other type of vehicle.
- the driving lane 104 can be associated with a lane region and the driving surface 106 can be associated with a road.
- another vehicle 108 can be detected within the environment 100.
- the other vehicle 108 can be proximate to the vehicle 102 such that the other vehicle 108 is within a threshold distance of the vehicle 102.
- the other vehicle 108 can be associated with a direction of travel that is different from the vehicle 102. The direction of travel of the vehicle 102 is illustrated by the arrow at the end of the trajectory 110 along which the vehicle 102 is travelling.
- the other vehicle 108 can be associated with a direction of travel that is opposite the direction of trav el of the vehicle 102.
- a direction of trav el can be different from another direction of trav el by being offset from the other direction of trav el by more than a threshold.
- the other vehicle 108 can be positioned at an angle to the vehicle 102.
- the angle can be within a designated offset of 90 degrees such that the other vehicle 108 is substantially perpendicular to the vehicle 102. That is, for the purpose of this discussion, a vehicle is “substantially perpendicular” to another vehicle if an angle between the two vehicles is within a designated offset of 90 degrees.
- the designated offset can be 50 degrees such that the vehicle 102 and the other vehicle 108 (or any two vehicles) can be “substantially perpendicular” so long as the angle between the two is between 40 degrees and 140 degrees.
- the designated offset can be learned using machine learning techniques described herein.
- the designated offset can be set manually, can be based on map data (e.g., may be dependent on location), and the like.
- the other vehicle 108 is positioned substantially perpendicular to the vehicle 102.
- the other vehicle 108 can be pulling out of a parking spot (e.g., a substantially perpendicular parking spot) or parking lot, an alley, a driveway, or any other location that is substantially perpendicular to the vehicle 102.
- a parking spot or parking lot, alley, driveway, etc. can be annotated in a map associated with the environment 100.
- such a parking spot or parking lot, alley, driveway, etc. may not be annotated in the map.
- the vehicle 102 can include one or more computing devices, which can be onboard the vehicle 102.
- the computing device(s) can include components for controlling the vehicle 102.
- a perception component can perform object detection, segmentation, and/or classification based at least in part on sensor data received from sensor component(s) of the vehicle 102.
- a prediction component can receive sensor data from the sensor component(s), map data associated with a map (e.g., of the environment 100), and/or perception data output from the perception component (e.g., processed sensor data), and can output predictions associated with one or more objects within the environment 100 of the vehicle 102.
- a planning component can determine outputs to use to control the vehicle 102 based at least in part on sensor data received from the sensor component(s), map data, and/or any determinations made by the other components of the vehicle 102. Additional details associated with such computing device(s) and associated components are described below with reference to FIG. 6.
- the vehicle 102 can be associated with one or more sensor components.
- the sensor component(s) can include lidar sensors, radar sensors, ultrasonic transducers, sonar sensors, location sensors (e.g., global positioning component (GPS), compass, etc.), inertial sensors (e.g., inertial measurement units, accelerometers, magnetometers, gyroscopes, etc.), cameras (e.g., RGB, IR, intensity, depth, etc.), wheel encoders, microphones, environment sensors (e.g., temperature sensors, humidity sensors, light sensors, pressure sensors, etc.), time of flight (ToF) sensors, etc.
- GPS global positioning component
- compass compass
- inertial sensors e.g., inertial measurement units, accelerometers, magnetometers, gyroscopes, etc.
- cameras e.g., RGB, IR, intensity, depth, etc.
- wheel encoders e.g., microphones, environment sensors (e.g., temperature
- Such sensor data can include, but is not limited to, lidar data, radar data, ultrasonic transducer data, sonar data, location data (e.g., global positioning component (GPS), compass, etc.), inertial data (e.g., inertial measurement units data, accelerometer data, magnetometer data, gyroscope data, etc.), camera data (e.g., RGB data, IR data, intensity data, depth data, etc.), wheel encoder data, microphone data, environment sensor data (e.g., temperature sensor data, humidity sensor data, light sensor data, pressure sensor data, etc.), ToF sensor data, etc.
- lidar data e.g., lidar data, radar data, ultrasonic transducer data, sonar data, location data (e.g., global positioning component (GPS), compass, etc.), inertial data (e.g., inertial measurement units data, accelerometer data, magnetometer data, gyroscope data, etc.), camera data (e.g., RGB data
- the perception component can detect the other vehicle 108 and the prediction component can predict whether the other vehicle 108 is going to enter the lane region of the driving lane 104 in front of the vehicle 102.
- the prediction component can leverage a model, trained by machine learning mechanism (s), to output a prediction indicating whether the other vehicle 108 is going to enter the lane region of the driving lane 104 in front of the vehicle 102.
- the prediction component can analyze feature(s) (also referred to as attributes, characteristics, parameters, data, and the like) associated with the environment 100 to determine whether the other vehicle 108 is likely to enter the lane region of the driving lane 104.
- Suchfeature(s), which can be associated with characteristic(s) of the environment 100, can include annotations in a map associated with the environment 100 indicating that the other vehicle 108 is located in a parking spot (e.g., a substantially perpendicular parking spot) or parking lot, an alley, a driveway, etc.
- a parking spot e.g., a substantially perpendicular parking spot
- parking lot e.g., a substantially perpendicular parking spot
- an alley e.g., a substantially perpendicular parking spot
- the prediction component can analyze feature(s) associated with the other vehicle 108 to determine whether the other vehicle 108 is likely to enter the lane region of the driving lane 104.
- feature(s) which can be associated with characteristic(s) of the other vehicle 108, can include, but are not limited to, a position of the other vehicle 108 relative to the vehicle 102 (e.g., direction of travel, angular offset, etc.), an instantaneous velocity of the other vehicle 108, an indication of whether a driver is in the other vehicle 108, an indication of a direction the driver is looking (e.g., head position of the driver), an indication of whether a door associated with the other vehicle 108 is open or closed, an indication of whether an engine of the other vehicle 108 is in a running state or off state, a wheel angle associated with wheel(s) of the other vehicle 108 (additional details for determining such are described in U.S.
- the other vehicle 108 will enter the lane region of the driving lane 104 in front of the vehicle 102 (e.g., as it performs a right turn into traffic). That is, if the other vehicle 108 follows the trajectory 112 associated therewith, the other vehicle 108 will perform a cut-in, such that the planning component associated with the vehicle 102 may modify its trajectory 110 to maneuver the vehicle 102 in view of the other vehicle 202.
- the planning component can cause the vehicle 102 to decelerate such to increase a follow distance between the vehicle 102 and the other vehicle 108, cause the vehicle 102 to decelerate and yield to the other vehicle 108 and/or stop, cause the vehicle 102 to perform a lane change, cause the vehicle 102 to safely maneuver around the other vehicle 108, and/or cause the vehicle 102 to perform any other combination of maneuvers that the vehicle 102 is capable of performing.
- FIG. 2 illustrates another example environment 200 for predicting whether a vehicle is going to enter a lane region in front of another vehicle, as described herein.
- the example environment 200 includes the vehicle 102, which can be positioned in the driving lane 104 of the driving surface 106.
- the driving lane 104 can be associated with a lane region and the driving surface 106 can be associated with a road, as described above with reference to FIG. 1.
- another vehicle 202 can be detected within the environment 200.
- the other vehicle 202 can be proximate to the vehicle 102 such that the other vehicle 202 is within a threshold distance of the vehicle 102. Further, in some examples, the other vehicle 202 can be associated with a direction of travel that is different from the vehicle 102.
- the direction of travel of the vehicle 102 is illustrated by the arrow at the end of the trajectory 110 along which the vehicle 102 is travelling.
- the other vehicle 202 can be associated with a direction of travel that is opposite the direction of travel of the vehicle 102.
- the other vehicle 202 can be positioned at an angle to the vehicle 102. In at least one example, the angle can be within a designated offset of 90 degrees such that the other vehicle 202 is substantially perpendicular to the vehicle 102.
- the other vehicle 202 is positioned substantially perpendicular to the vehicle 102.
- the other vehicle 108 can be pulling out of a parking spot (e.g., a substantially perpendicular parking spot) or parking lot, an alley, a driveway, or any other location that is substantially perpendicular to the vehicle 102.
- a parking spot or parking lot, alley, driveway, etc. can be annotated in a map associated with the environment 200.
- such a parking spot or parking lot, alley, driveway, etc. may not be annotated in the map.
- the perception component can detect the other vehicle 202 and the prediction component can output a prediction indicating whether the other vehicle 202 is going to enter the lane region of the driving lane 104 in front of the vehicle 102.
- the prediction component can leverage a model, trained by machine learning mechanism(s), to predict whether the other vehicle 202 is going to enter the lane region of the driving lane 104 in front of the vehicle 102.
- the prediction component can analyze feature(s) associated with the environment 200 and/or the other vehicle 202 to determine whether the other vehicle 202 is likely to enter the lane region of the driving lane 104, as described above.
- the other vehicle 202 will enter the lane region of the driving lane 104 in front of the vehicle 102 (e.g., as it performs a left turn into traffic). That is, if the other vehicle 202 follows the trajectory 204 associated therewith, the other vehicle 202 will perform a cut-in, such that the planning component associated with the vehicle 102 may modify its trajectory 110 to maneuver the vehicle 102 in view of the other vehicle 202.
- the planning component can cause the vehicle 102 to decelerate such to increase a follow distance between the vehicle 102 and the other vehicle 202, cause the vehicle 102 to decelerate to yield to the other vehicle 202 and/or stop, and/or cause the vehicle 102 to perform any other combination of maneuvers the vehicle 102 is capable of performing.
- FIGS. 1 and 2 illustrate examples of techniques described herein whereby the other vehicle 108 and 202, respectively, are pulling out of an alley, parking spot (e.g., substantially perpendicular parking spot) or parking lot, driveway, or other location that is substantially perpendicular to the vehicle 102 and/or the driving surface 106.
- the other vehicle 108 is positioned in an alley, parking spot (e.g., substantially perpendicular parking spot) or parking lot, driveway, or other location that is on a same side of the driving surface 106 as the vehicle 102.
- the other vehicle 108 is positioned substantially perpendicular to, and on a same side of the driving surface 106 as, the driving lane 104 in which the vehicle 102 is positioned.
- the other vehicle 202 is positioned in an alley, parking spot (e.g., substantially perpendicular parking spot) or parking lot, driveway, or other location that is on an opposite side of the driving surface 106 as the vehicle 102. That is, the other vehicle 108 is positioned substantially perpendicular to, and on an opposite side of the driving surface 106 as, the driving lane 104 in which the vehicle 102 is positioned.
- the other vehicle 108 or 202 can be positioned in front of the vehicle 102 and positioned substantially parallel (e.g., in a same direction as) the vehicle 102. In such examples, the other vehicle 108 or 202 can perform a left or right turn across the driving lane 104.
- the vehicle 102 can leverage featme(s) as described above to predict such a maneuver and the planning component can determine how to control the vehicle 102 accordingly.
- FIG. 3 illustrates another example environment 300 for predicting whether a vehicle is going to enter a lane region in front of another vehicle, as described herein.
- the example environment 300 includes the vehicle 102, which can be positioned in the driving lane 104 of the driving surface 106.
- the driving lane 104 can be associated with a lane region and the driving surface 106 can be associated with a road, as described above with reference to FIG. 1.
- another vehicle 302 can be detected within the environment 300.
- the other vehicle 302 can be proximate to the vehicle 102 such that the other vehicle 302 is within a threshold distance of the vehicle 102. Further, in some examples, the other vehicle 302 can be associated with a direction of travel that is different from the vehicle 102.
- the direction of travel of the vehicle 102 is illustrated by the arrow at the end of the trajectory 110 along which the vehicle 102 is travelling.
- the other vehicle 302 can be associated with a direction of travel that is opposite the direction of travel of the vehicle 102 (e.g., as illustrated in FIG. 3).
- the other vehicle 302 can be positioned at an angle to the vehicle 102.
- the perception component can detect the other vehicle 302 and the prediction component can predict whether the other vehicle 302 is going to enter the lane region of the driving lane 104 in front of the vehicle 102.
- the prediction component can leverage a model, trained by machine learning mechanism (s), to output a prediction indicating whether the other vehicle 302 is going to enter the lane region of the driving lane 104 in front of the vehicle 102.
- the prediction component can analyze feature(s) associated with the environment 300 and/or the other vehicle 302 to determine whether the other vehicle 302 is likely to enter the lane region of the driving lane 104, as described above.
- the other vehicle 302 will enter the lane region of the driving lane 104 in front of the vehicle 102 (e.g., as it performs a U-turn). That is, if the other vehicle 302 follows the trajectory 304 associated therewith, the other vehicle 302 will perform a cut-in, such that the planning component associated with the vehicle 102 may modify its trajectory 110 to maneuver the vehicle 102 in view of the other vehicle 302.
- the planning component can cause the vehicle 102 to decelerate such to increase a follow distance between the vehicle 102 and the other vehicle 302, cause the vehicle 102 to decelerate to yield to the other vehicle 302 and/or stop, and/or cause the vehicle 102 to perform any other combination of maneuvers the vehicle 102 is capable of performing.
- FIG. 3 illustrates the other vehicle 302 performing a u-tum
- the other vehicle 302 may perform a turn across the driving lane 104 (e.g., into a driveway, street, alley, or the like).
- the vehicle 102 can leverage the same feature(s) to determine whether the other vehicle 302 is likely to enter the lane region of the driving lane 104 in front of the vehicle 102 and the planning component can determine how to control the vehicle 102 accordingly.
- FIG. 4 illustrates another example environment 400 for predicting whether a vehicle is going to enter a lane region in front of another vehicle, as described herein.
- the example environment 400 includes the vehicle 102, which can be positioned in the driving lane 104 of the driving surface 106.
- the driving lane 104 can be associated with a lane region and the driving surface 106 can be associated with a road, as described above with reference to FIG. 1.
- another vehicle 402 can be detected within the environment 400.
- the other vehicle 402 can be proximate to the vehicle 102 such that the other vehicle 402 is within a threshold distance of the vehicle 102. Further, in some examples, the other vehicle 402 can be associated with a direction of travel that is different from the vehicle 102.
- the direction of travel of the vehicle 102 is illustrated by the arrow at the end of the trajectory 110 along which the vehicle 102 is travelling.
- the other vehicle 402 can be associated with a direction of travel that is opposite the direction of travel of the vehicle 102 (e.g., as illustrated in FIG. 4).
- the other vehicle 402 can be positioned at an angle to the vehicle 102.
- the perception component can detect the other vehicle 402 and the prediction component can predict whether the other vehicle 402 is going to enter the lane region of the driving lane 104 in front of the vehicle 102.
- the prediction component can leverage a model, trained by machine learning mechanism(s), to output a prediction indicating whether the other vehicle 402 is going to enter the lane region of the driving lane 104 in front of the vehicle 102.
- the prediction component can analyze feature(s) associated with the environment 400 and/or the other vehicle 402 to determine whether the other vehicle 402 is likely to enter the lane region of the driving lane 104, as described above.
- the other vehicle 402 will enter the lane region of the driving lane 104 in front of the vehicle 102 (e.g., as it performs a three-point turn, or any N-point turn). That is, if the other vehicle 402 follows the trajectory 404 associated therewith, the other vehicle 402 will perform a cut-in, such that the planning component associated with the vehicle 102 may modify its trajectory 110 to maneuver the vehicle 102 in view of the other vehicle 402.
- the planning component can cause the vehicle 102 to decelerate such to increase a follow distance between the vehicle 102 and the other vehicle 402, cause the vehicle 102 to decelerate to yield to the other vehicle 402 and/or stop, and or cause the vehicle 102 to perform any other combination of maneuvers the vehicle 102 is capable of performing.
- FIG. 5 illustrates another example environment 500 for predicting whether a vehicle is going to enter a lane region in front of another vehicle, as described herein.
- the example environment 500 includes the vehicle 102, which can be positioned in the driving lane 104 of the driving surface 106.
- the driving lane 104 can be associated with a lane region and the driving surface 106 can be associated with a road, as described above with reference to FIG. 1.
- another vehicle 502 can be detected within the environment 500.
- the other vehicle 502 can be proximate to the vehicle 102 such that the other vehicle 502 is within a threshold distance of the vehicle 102. Further, in some examples, the other vehicle 502 can be associated with a direction of travel that is different from the vehicle 102.
- the direction of travel of the vehicle 102 is illustrated by the arrow at the end of the trajectory 110 along which the vehicle 102 is travelling.
- the other vehicle 502 can be associated with a direction of travel that is opposite the direction of travel of the vehicle 102.
- the other vehicle 502 can be positioned at an angle to the vehicle 102. As illustrated in FIG. 5, the other vehicle 502 can be substantially perpendicular to the vehicle 102.
- the perception component can detect the other vehicle 502 and the prediction component can predict whether the other vehicle 502 is going to enter the lane region of the driving lane 104 in front of the vehicle 102.
- the prediction component can leverage a model, trained by machine learning mechanism (s), to output a prediction indicating whether the other vehicle 502 is going to enter the lane region of the driving lane 104 in front of the vehicle 102.
- the prediction component can analyze featme(s) associated with the environment 500 and/or the other vehicle 502 to determine whether the other vehicle 502 is likely to enter the lane region of the driving lane 104, as described above.
- the other vehicle 502 will enter the lane region of the driving lane 104 in front of the vehicle 102 (e.g., as it reverses from its current position and proceeds in the same direction of travel as the vehicle 102). That is, if the other vehicle 502 follows the trajectory 504 associated therewith, the other vehicle 502 will perform a cut-in, such that the planning component associated with the vehicle 102 may modify its trajectory 110 to maneuver the vehicle 102 in view of the other vehicle 502.
- the planning component can cause the vehicle 102 to decelerate such to increase a follow distance between the vehicle 102 and the other vehicle 502, cause the vehicle 102 to change lanes, cause the vehicle 102 to decelerate to yield to the other vehicle 502 and/or stop, cause the vehicle 102 to safely maneuver around the other vehicle 502, and/or cause the vehicle 102 to perform any other combination of maneuvers the vehicle 102 is capable of performing.
- FIG. 5 illustrates the other vehicle 502 reversing out of a driveway, parking spot, alley, or the like on a same side of the driving surface 106 as the vehicle 102
- techniques described herein are also applicable for another vehicle 502 that is reversing out of a driveway, parking spot, alley, or the like on an opposite side of the driving surface 106 as the vehicle 102.
- FIGS. 1-5 illustrate various examples of other vehicles that are proximate to the vehicle 102 that are entering a lane region of the driving lane 104 in front of the vehicle 102 or are otherwise performing a “cut-in maneuver,” as described herein. Such examples include left turns, right turns, U-turns, three-point turns, and the like. Additional or alternative examples are within the scope of this disclosure. For instance, techniques described herein can be used for determining how to control the vehicle 102 when another vehicle performs a K-turn, any N- point turn, or the like, or another vehicle turning into or out of traffic. That is, techniques described herein are not limited to the examples described in FIGS.
- 1-5 can be applicable to any example where another vehicle that is proximate to and associated with a same or different direction of travel than the vehicle 102 enters — or is predicted to enter — a lane region of the driving lane 104 in front of the vehicle 102. Furthermore, techniques described herein are applicable to scenarios where another vehicle is entering a lane region from a position on-road (e.g., on the driving surface 106) or off-road (e.g., not on the driving surface 106).
- a position on-road e.g., on the driving surface 106
- off-road e.g., not on the driving surface 106
- FIG. 6 is a block diagram illustrating an example system 600 for performing techniques, as described herein.
- a vehicle 602 can include one or more vehicle computing devices 604, one or more sensor components 606, one or more emitters 608, one or more communication connections 610, at least one direct connection 612, and one or more drive systems 614.
- a vehicle 602 can correspond to the vehicle 102 described above with reference to FIG. 1.
- the vehicle 602 is an autonomous vehicle; however, the vehicle 602 could be any other type of vehicle.
- the example system 600 can include a plurality of vehicles, which, in some examples, can comprise a fleet of vehicles.
- the vehicle computing device(s) 604 can include processor(s) 616 and memory 618 communicatively coupled with the processor(s) 616.
- the memory 618 of the vehicle computing device(s) 604 stores a localization component 620, a perception component 622, a prediction component 624, a planning component 626, and one or more system controllers 628.
- the memory 618 can include a storage 630, which can store map(s), model(s), previous outputs, etc.
- a map can be any number of data structures that are capable of providing information about an environment, such as, but not limited to, topologies (such as junctions, lanes, merging zones, etc.), streets, mountain ranges, roads, terrain, and the environment in general. Maps can be associated with real environments or simulated environments. Model(s) can include machine-trained models, as described below.
- the storage 630 can store previous outputs.
- the localization component 620 can determine a pose (position and orientation) of the vehicle 602 in relation to a local and/or global map based at least in part on sensor data received from the sensor component(s) 606 and/or map data associated with a map (e.g., of the map(s)).
- the localization component 620 can include, or be associated with, a calibration component that is capable of performing operations for calibrating (determining various intrinsic and extrinsic parameters associated with any one or more of the sensor component(s) 606), localizing, and mapping substantially simultaneously.
- the perception component 622 can perform object detection, segmentation, and/or classification based at least in part on sensor data received from the sensor component(s) 606.
- the perception component 622 can receive raw sensor data (e.g., from the sensor component(s) 606).
- the perception component 622 can receive sensor data and can utilize one or more processing algorithms to perform object detection, segmentation, and/or classification with respect to object(s) identified in the sensor data.
- the perception component 622 can associate a bounding region (or otherwise an instance segmentation) with an identified object and can associate a confidence score associated with a classification of the identified object with the identified object.
- objects, when rendered via a display can be colored based on their perceived class.
- the prediction component 624 can receive sensor data from the sensor component(s) 606, map data associated with a map (e.g., of the map(s) which can be in storage 630), and/or perception data output from the perception component 622 (e.g., processed sensor data), and can output predictions associated with one or more objects within the environment of the vehicle 602.
- the planning component 626 can determine outputs, to use to control the vehicle 602 based at least in part on sensor data received from the sensor component(s) 606, map data, and/or any determinations made by the other components of the vehicle 602.
- the localization component 620, the perception component 622, the prediction component 624, and/or the planning component 626 can process sensor data, as described above, and can send their respective outputs over network(s) 632, to computing device(s) 634.
- the localization component 620, the perception component 622, the prediction component 624, and/or the planning component 626 can send their respective outputs to the computing device(s) 634 at a particular frequency, after a lapse of a predetermined period of time, in near real-time, etc.
- the vehicle computing device(s) 604 can include one or more system controllers 628, which can be configured to control steering, propulsion, braking, safety, emitters, communication, and other systems of the vehicle 602. These system controller(s) 628 can communicate with and/or control corresponding systems of the drive system(s) 614 and/or other systems of the vehicle 602.
- the sensor component(s) 606 can include lidar sensors, radar sensors, ultrasonic transducers, sonar sensors, location sensors (e.g., GPS, compass, etc.), inertial sensors (e.g., inertial measurement units, accelerometers, magnetometers, gyroscopes, etc.), cameras (e.g., RGB, IR, intensity, depth, etc.), wheel encoders, audio sensors, environment sensors (e.g., temperature sensors, humidity sensors, light sensors, pressure sensors, etc.), ToF sensors, etc.
- the sensor component(s) 606 can provide input to the vehicle computing device(s) 604.
- the sensor component(s) 606 can preprocess at least some of the sensor data prior to sending the sensor data to the vehicle computing device(s) 604. In at least one example, the sensor component(s) 606 can send sensor data, via the network(s) 632, to the computing device(s) 634 at a particular frequency, after a lapse of a predetermined period of time, in near real-time, etc.
- the vehicle 602 can also include one or more emitters 608 for emitting light and/or sound, as described above.
- the emitter(s) 608 in this example include interior audio and visual emitters to communicate with passengers of the vehicle 602.
- interior emitters can include speakers, lights, signs, display screens, touch screens, haptic emitters (e.g., vibration and/or force feedback), mechanical actuators (e.g., seatbelt tensioners, seat positioners, headrest positioners, etc.), and the like.
- the emitter(s) 608 in this example also include exterior emitters.
- the exterior emitters in this example include light emitters (e.g., indicator lights, signs, light arrays, etc.) to visually communicate with pedestrians, other drivers, other nearby vehicles, etc., one or more audio emitters (e.g., speakers, speaker arrays, horns, etc.) to audibly communicate with pedestrians, other drivers, other nearby vehicles, etc., etc.
- the emitter(s) 608 can be positioned at various locations about the exterior and/or interior of the vehicle 602.
- the vehicle 602 can also include communication connection(s) 610 that enable communication between the vehicle 602 and other local or remote computing device(s).
- the communication connection(s) 610 can facilitate communication with other local computing device(s) on the vehicle 602 and/or the drive system(s) 614.
- the communication connection(s) 610 can allow the vehicle to communicate with other nearby computing device(s) (e.g., other nearby vehicles, traffic signals, etc.).
- the communications connection(s) 610 also enable the vehicle 602 to communicate with a remote teleoperations computing device or other remote services.
- the communications connection(s) 610 can include physical and/or logical interfaces for connecting the vehicle computing device(s) 604 to another computing device or a network, such as network(s) 632.
- the communications connection(s) 610 can enable Wi-Fi-based communication such as via frequencies defined by the IEEE 802.11 standards, short range wireless frequencies such as BLUETOOTH ® , or any suitable wired or wireless communications protocol that enables the respective computing device to interface with the other computing device(s).
- the direct connection 612 can directly connect the drive system(s) 614 and other systems of the vehicle 602.
- the vehicle 602 can include drive system(s) 614.
- the vehicle 602 can have a single drive system 614.
- individual drive systems 614 can be positioned on opposite ends of the vehicle 602 (e.g., the front and the rear, etc.).
- the drive system(s) 614 can include sensor component(s) to detect conditions of the drive system(s) 614 and/or the surroundings of the vehicle 602.
- the sensor component(s) can include wheel encoder(s) (e.g., rotary encoders) to sense rotation of the wheels of the drive system, inertial sensors (e.g., inertial measurement units, accelerometers, gyroscopes, magnetometers, etc.) to measure position and acceleration of the drive system, cameras or other image sensors, ultrasonic sensors to acoustically detect objects in the surroundings of the drive system, lidar sensors, radar sensors, etc.
- Some sensors, such as the wheel encoder(s) can be unique to the drive system(s) 614.
- the sensor component(s) on the drive system(s) 614 can overlap or supplement corresponding systems of the vehicle 602 (e.g., sensor component(s) 606).
- the drive system(s) 614 can include many of the vehicle systems, including a high voltage battery, a motor to propel the vehicle 602, an inverter to convert direct current from the battery into alternating current for use by other vehicle systems, a steering system including a steering motor and steering rack (which can be electric), a braking system including hydraulic or electric actuators, a suspension system including hydraulic and/or pneumatic components, a stability control system for distributing brake forces to mitigate loss of traction and maintain control, an HVAC system, lighting (e.g., lighting such as head/tail lights to illuminate an exterior surrounding of the vehicle), and one or more other systems (e.g., cooling system, safety systems, onboard charging system, other electrical components such as a DC/DC converter, a high voltage junction, a high voltage cable, charging system, charge port, etc.) ⁇ Additionally, the drive system(s) 614 can include a drive system controller which can receive and preprocess data from the sensor component(s) and to control operation of the various vehicle systems.
- a drive system controller which can receive and pre
- the drive system controller can include processor(s) and memory communicatively coupled with the processor(s).
- the memory can store one or more components to perform various functionalities of the drive system(s) 614.
- the drive system(s) 614 also include communication connection(s) that enable communication by the respective drive system with other local or remote computing device(s).
- the vehicle computing device(s) 604, sensor component(s) 606, emitter(s) 608, and the communication connection(s) 610 are shown onboard the vehicle 602. However, in some examples, the vehicle computing device(s) 604, sensor component(s) 606, emitter(s) 608, and the communication connection(s) 610 can be implemented outside of an actual vehicle (i.e., not onboard the vehicle 602).
- the vehicle 602 can send sensor data to the computing device(s) 634, via the network(s) 632.
- the vehicle 602 can send raw sensor data to the computing device(s) 634.
- the vehicle 602 can send processed sensor data and/or representations of sensor data to the computing device(s) 634 (e.g., data output from the localization component 620, the perception component 622, the prediction component 624, and/or the planning component 626).
- the vehicle 602 can send sensor data to the computing device(s) 634 at a particular frequency, after a lapse of a predetermined period of time, in near real-time, etc.
- the computing device(s) 634 can receive the sensor data (raw or processed) from the vehicle 602 and/or other data collection devices, as well as data from one or more third party sources and/or systems.
- the computing device(s) 634 can include processor(s) 636 and memory 638 communicatively coupled with the processor(s) 636.
- the memory 638 of the computing device(s) 634 stores a training component 640, which can include an annotation component 642, a map(s) storage 644 (e.g., storing one or more maps), a training data storage 646 (e.g., storing training data accessible to the training component 640), and a model(s) storage 648 (e.g., models output by the training component 640).
- a training component 640 can include an annotation component 642, a map(s) storage 644 (e.g., storing one or more maps), a training data storage 646 (e.g., storing training data accessible to the training component 640), and a model(s) storage 648 (e.g., models output by the training component 640).
- one or more of the systems and/or storage repositories can be associated with the vehicle 602 or other computing device(s) associated with the system 600 instead of, or in addition to, being associated with the memory 638 of the computing device(s) 634.
- the training component 640 can train model(s), which can be used for various operations as described herein. That is, the training component 640 can train model(s) that can be used for predicting whether a first vehicle is going to enter a driving lane in front of another vehicle (e.g., the vehicle 602).
- the annotation component 642 can receive or otherwise determine annotated data based at least in part on sensor data and/or log data associated with the sensor data received from one or more vehicles, as described below. Details associated with training the model(s), as used herein, are described below with reference to FIG. 7.
- the resulting model(s) can be stored in the model(s) storage 648 and/or the storage 630 on the vehicle 602 and can be accessed in near real-time by one or more components of the vehicle computing device(s) 604.
- the processor(s) 616 of the vehicle 602 and the processor(s) 636 of the computing device(s) 634 can be any suitable processor capable of executing instructions to process data and perform operations as described herein.
- the processor(s) 616 and 636 can comprise one or more Central Processing Units (CPUs), Graphics Processing Units (GPUs), or any other device or portion of a device that processes electronic data to transform that electronic data into other electronic data that can be stored in registers and/or memory.
- integrated circuits e.g., ASICs, etc.
- gate arrays e.g., FPGAs, etc.
- other hardware devices can also be considered processors in so far as they are configured to implement encoded instructions.
- Memory 618 and 638 are examples of non-transitory computer-readable media. Memory 618 and 638 can store an operating system and one or more software applications, instructions, programs, and/or data to implement the methods described herein and the functions attributed to the various systems. In various implementations, the memory can be implemented using any suitable memory technology, such as static random receive memory (SRAM), synchronous dynamic RAM (SDRAM), nonvolatile/Flash-type memory, or any other type of memory capable of storing information.
- SRAM static random receive memory
- SDRAM synchronous dynamic RAM
- Flash-type memory any other type of memory capable of storing information.
- the architectures, systems, and individual elements described herein can include many other logical, programmatic, and physical components, of which those shown in the accompanying figures are merely examples that are related to the discussion herein.
- components of the vehicle 602 can be associated with the computing device(s) 634 and/or the components of the computing device(s) 634 can be associated with the vehicle 602. That is, the vehicle 602 can perform one or more of the functions associated with the computing device(s) 634, and vice versa.
- FIGS. 7 and 8 are flowcharts showing example processes involving techniques as described herein.
- the processes illustrated in FIGS. 7 and 8 are described with reference to the system 600 shown in FIG. 6 for convenience and ease of understanding. However, the processes illustrated in FIGS. 7 and 8 are not limited to being performed using the system 600. Moreover, the system 600 described herein is not limited to performing the processes illustrated in FIGS. 7 and 8.
- the processes 700 and 800 are illustrated as collections of blocks in logical flow graphs, which represent sequences of operations that can be implemented in hardware, software, or a combination thereof.
- the blocks represent computer-executable instructions stored on one or more computer-readable storage media that, when executed by processor(s), perform the recited operations.
- computer-executable instructions include routines, programs, objects, components, data structures, and the like that perform particular functions or implement particular abstract data types.
- the order in which the operations are described is not intended to be construed as a limitation, and any number of the described blocks can be combined in any order and/or in parallel to implement the processes. In some embodiments, one or more blocks of the process can be omitted entirely.
- FIG. 7 illustrates an example process 700 for training a model for predicting whether a vehicle is going to enter a lane region in front of another vehicle (e.g., perform a cut-in maneuver), as described herein.
- Block 702 illustrates receiving sensor data and/or log data associated with the sensor data.
- individual vehicles such as the vehicle 602 can include sensor component(s) 606.
- the sensor component(s) 606 can include lidar sensors, radar sensors, ultrasonic transducers, sonar sensors, location sensors (e.g., GPS, compass, etc.), inertial sensors (e.g., inertial measurement units, accelerometers, magnetometers, gyroscopes, etc.), cameras (e.g., RGB, IR, intensity, depth, etc.), wheel encoders, audio sensors, environment sensors (e.g., temperature sensors, humidity sensors, light sensors, pressure sensors, etc.), ToF sensors, etc.
- lidar sensors e.g., radar sensors, ultrasonic transducers, sonar sensors, location sensors (e.g., GPS, compass, etc.), inertial sensors (e.g., inertial measurement units, accelerometers, magnetometers, gyroscopes, etc.), cameras
- the sensor component(s) 606 can provide input to the vehicle computing device(s) 604.
- the sensor component(s) 606 can preprocess at least some of the sensor data prior to sending the sensor data to the vehicle computing device(s) 604.
- the sensor component(s) 606 can send sensor data, via the network(s) 632, to the computing device(s) 634 at a particular frequency, after a lapse of a predetermined period of time, in near real-time, etc.
- a plurality of vehicles can send sensor data, via the network(s) 632, to the computing device(s) 634.
- sensor data can be associated with driving logs (i.e., “log data”), which can indicate how individual vehicles of the plurality of vehicles moved within respective environments over time. That is, such driving logs can be historical driving logs indicating the movement of individual vehicles of the plurality of vehicles over time.
- driving logs can comprise sensor data — which can include output(s) of individual sensor(s) at a particular instance of time — that is received over time.
- such driving logs can comprise outputs based on the sensor data (e.g., processed sensor data) associated with a period of time. That is, in some examples, log data can include raw sensor data received from the sensor component(s) 606, as well as one or more downstream outputs (e.g., perception outputs, prediction outputs, planner outputs, control outputs, and the like) for individual messages dining a drive mission of a vehicle, such as the vehicle 602.
- sensor data e.g., processed sensor data
- log data can include raw sensor data received from the sensor component(s) 606, as well as one or more downstream outputs (e.g., perception outputs, prediction outputs, planner outputs, control outputs, and the like) for individual messages dining a drive mission of a vehicle, such as the vehicle 602.
- the training component 640 of the computing device(s) 634 can receive sensor data and/or associated driving logs from the plurality of vehicles.
- Block 704 illustrates mining the sensor data and/or the log data to detect events associated with cut-in maneuvers (e.g., any one or more of the maneuvers described in detail herein (whether or not the cut-in maneuver is relative to a second vehicle)), wherein the detected events are annotated in the sensor data and/or log data to generate annotated data.
- cut-in maneuvers e.g., any one or more of the maneuvers described in detail herein (whether or not the cut-in maneuver is relative to a second vehicle
- the training component 640 can mine (e.g., analyze) the sensor data and/or the log data to detect when a vehicle performs a cut-in maneuver (e.g., which can be associated with a left turn (e.g., from a parking spot (e.g., substantially perpendicular parking spot) or parking lot, an alley, a driveway, or the like), a right turn (e.g., from a parking spot (e.g., substantially perpendicular parking spot) or parking lot, an alley, a driveway, or the like), a U-turn, a K-turn, an N-point turn, or the like).
- a cut-in maneuver e.g., which can be associated with a left turn (e.g., from a parking spot (e.g., substantially perpendicular parking spot) or parking lot, an alley, a driveway, or the like), a right turn (e.g., from a parking spot (e.g., substantially perpendicular parking spot)
- the training component 640 can analyze the sensor data and/or the log data to detect when a vehicle is misaligned with a driving surface, for instance, when the vehicle is substantially perpendicular to a driving surface, and subsequently becomes aligned with, or substantially parallel to, the driving surface.
- the annotation component 642 can automatically annotate the sensor data and/or the log data to indicate the occurrence of cut-in maneuvers.
- the annotation component 642 can determine a period of time associated with a cut-in maneuver. That is, the annotation component 642 can access sensor data and/or log data leading up to a detected event (e.g., associated with a cut-in maneuver), and can determine when the detected event started and ended. For a moving vehicle (e.g., a vehicle making a u-turn, k-point turn, n-point turn, etc.), the annotation component 642 can backout (e.g., in the log data) to a first time that the vehicle starts to diverge from a driving lane to determine a start time associated with the event.
- a moving vehicle e.g., a vehicle making a u-turn, k-point turn, n-point turn, etc.
- the annotation component 642 can backout (e.g., in the log data) to a first time that the vehicle starts to diverge from a driving lane to determine a start time associated with the event.
- the annotation component 642 can determine that a position of the vehicle changes from being substantially parallel to a centerline of a driving surface (e.g., a road, a lane, etc.) to being within a designated offset of 90 degrees of the centerline (e.g., substantially perpendicular to the centerline) and can determine the start time associated with the event accordingly.
- a stopped vehicle e.g., parked, idling in a driveway or alley, etc.
- the annotation component 642 can utilize changes in velocity to determine when the vehicle starts to perform a cut-in maneuver.
- the annotation component 642 can determine a first time when the vehicle moves from a zero velocity to a non-zero velocity to determine a start time associated with the event.
- the end time can correspond to when the event occurs.
- Block 706 illustrates generating training data.
- the training component 640 can access sensor data and/or log data leading up to a detected event (e.g., associated with a cut-in maneuver), and can generate multi-channel image(s) associated with such sensor data and/or log data.
- the annotation component 642 can determine when the event associated with the cut-in maneuver started and ended, as described above, and can access sensor data and/or log data from the start time to just prior to the occurrence of the event. For instance, the training component 640 can access 1-10 seconds of sensor data and/or log data prior to a detected event, which can be used to generate multi-channel image(s) representing the state of the environment and/or the vehicle prior to the occurrence of the detected event.
- the sensor data and/or log data can be encoded into a multi-channel image or images.
- Each channel can correspond to a feature which for a vehicle that is detected as performing a cut-in maneuver, can include, but is not limited to, annotations in map(s) associated with environment(s) indicating parking spot(s) (e.g., substantially perpendicular parking spot(s)) or parking lot(s), alley(s), driveway(s), and the like), positions of a vehicle (e.g., direction of travel, angular offset from another vehicle, etc.), an instantaneous velocity of the vehicle, an indication of whether a driver is in the vehicle, an indication of a direction that the driver is looking (e.g., head direction of the driver), an indication of whether a door associated with the vehicle is open or closed, an indication of whether an engine of the vehicle is in a running state or off state, a wheel angle associated with wheel(s) of the vehicle, an indication of whether a brake light of the vehicle is illuminate
- each channel can be associated with a top-down view of the environment. That is, a channel can represent sensor output or information based on a sensor output that is modeled in a top-down representation.
- the channel(s) can then be input into a model, such as a multi-layer model, a convolutional neural network, or the like. Additional details associated with top-down convolutional neural networks are described in U.S. Patent Application No. 16/420,050, which was filed on May 22, 2019, and U.S. Patent Application No. 16/504,147, which was filed on July 5, 2019, the entire contents of both of which are incorporated by reference herein.
- any number of multi-channel images (which may represent a series of time prior to the most recent time step) and/or any other data structure are contemplated.
- the training data, and associated sensor data and/or log data can be referred to as ground truth.
- Block 708 illustrates inputting the training data into a model to determine an output associated with an indication whether a vehicle is likely to perform a cut-in maneuver.
- the training data can be analyzed by the training component 640 using a machine learning mechanism.
- a model can be trained using a neural network (e.g., a convolutional neural network, etc.) and the training data.
- the training data can be input into a model (e.g., a top-down convolutional neural network, etc.) to determine an output associated with a prediction of whether a vehicle will enter a lane in front of another vehicle or otherwise perform a maneuver described herein as a “cut-in maneuver.”
- a “prediction” can be a detection of a cut-in maneuver, a prediction of a future lane or position in the environment, or something in between.
- the output can be a binary indicator (e.g., “yes” or “no”), indicating whether the vehicle is going to enter the driving lane of the other vehicle in front of the other vehicle or not.
- the output can be associated with a confidence score.
- the output can be a percentage or other metric indicating a certainty of whether a vehicle is going to enter the driving lane of another vehicle in front of the other vehicle.
- the output can be associated with a predicted lane or position in the environment.
- Block 710 illustrates determining a difference between the output and an expected output associated with the training data.
- the resulting model can determine an output associated with a prediction whether a vehicle will enter a lane in front of another vehicle or otherwise perform a cut-in maneuver, as described herein.
- the training component 640 can compare the output with an expected output associated with the training data, which can be based at least in part on the annotated data, to determine a difference.
- the training component 640 can modify one or more parameters of the model based at least in part on the difference (e.g., via gradient descent, back-propagation, and the like).
- Block 712 illustrates determining whether the difference is greater than or equal to a threshold.
- the training component 640 can determine whether the difference is greater than or equal to a threshold. If the difference is greater than or equal to the threshold, the training component 640 can modify a parameter of the model, as illustrated in block 714, and the process 700 can return to block 702. If the difference is less than the threshold, the training component 640 can transmit the model to the model(s) storage 648 and/or storage on a vehicle, such as the storage 630 on the vehicle 602. In some examples, and as illustrated in block 716, the model can be transmitted to a vehicle, such as the vehicle 602, that can be configured to be controlled by output(s) of the model. In such an example, the resulting model can be stored in the storage 630 on the vehicle 602 and can be accessed in near real-time by one or more components of the vehicle computing device(s) 604, as described below with reference to FIG. 8.
- the training component 640 can train model(s) using machine learning techniques.
- Block 708 makes reference to one or more neural networks that can be used to train the model.
- Additional or alternative machine learning algorithms can be used for training the model.
- Such machine learning algorithms can include, but are not limited to, regression algorithms (e.g., ordinary least squares regression (OLSR), linear regression, logistic regression, stepwise regression, multivariate adaptive regression splines (MARS), locally estimated scatterplot smoothing (LOESS)), example-based algorithms (e.g., ridge regression, least absolute shrinkage and selection operator (LASSO), elastic net, least-angle regression (LARS)), decisions tree algorithms (e.g., classification and regression tree (CART), iterative dichotomiser 3 (ID3), Chi-squared automatic interaction detection (CHAID), decision stump, conditional decision trees), Bayesian algorithms (e.g., naive Bayes, Gaussian naive Bayes, multinomial naive Bayes, average one-
- FIG. 8 illustrates an example process 800 for predicting whether a vehicle is going to enter a lane region in front of another vehicle, and controlling the other vehicle based on such a prediction, as described herein.
- Block 802 illustrates receiving sensor data associated with an environment of a vehicle.
- individual vehicles such as the vehicle 602 can include sensor component(s) 606.
- the sensor component(s) 606 can include lidar sensors, radar sensors, ultrasonic transducers, sonar sensors, location sensors (e.g., GPS, compass, etc.), inertial sensors (e.g., inertial measurement units, accelerometers, magnetometers, gyroscopes, etc.), cameras (e.g., RGB, IR, intensity, depth, etc.), wheel encoders, audio sensors, environment sensors (e.g., temperature sensors, humidity sensors, light sensors, pressure sensors, etc.), ToF sensors, etc.
- the sensor component(s) 606 can provide input to the vehicle computing device(s) 604.
- Block 804 illustrates determining whether another vehicle is detected proximate to the vehicle.
- the vehicle 602 can include one or more components associated with the vehicle computing device(s) 604 onboard the vehicle 602.
- the localization component 620 can determine a pose (position and orientation) of the vehicle 602 in relation to a local and/or global map based at least in part on sensor data received from the sensor component(s) 606 and/or map data associated with a map (e.g., of the map(s)).
- the localization component 620 can include, or be associated with, a calibration component that is capable of performing operations for calibrating (determining various intrinsic and extrinsic parameters associated with any one or more of the sensor component(s) 606), localizing, and mapping substantially simultaneously.
- the perception component 622 can perform object detection, segmentation, and/or classification based at least in part on sensor data received from the sensor component(s) 606.
- the perception component 622 can receive raw sensor data (e.g., from the sensor component(s) 606).
- the perception component 622 can receive sensor data and can utilize one or more processing algorithms to perform object detection, segmentation, and/or classification with respect to object(s) identified in the sensor data.
- the perception component 622 can associate a bounding region (or otherwise an instance segmentation) with an identified object and can associate a confidence score associated with a classification of the identified object with the identified object.
- objects, when rendered via a display can be colored based on their perceived class.
- the prediction component 624 can analyze localization data (e.g., output from the localization component 620) and perception data (e.g., output from the perception component 622) to determine whether the perception data indicates that another vehicle is within a threshold distance of the vehicle 602. That is, the prediction component 624 can determine whether another vehicle is proximate the vehicle 602. If no vehicle is determined to be proximate the vehicle 602, the process 800 can return to block 802. If another vehicle is determined to be proximate the vehicle 602, the prediction component 624 can determine an output indicate whether the other vehicle is predicted to enter a lane in front of the vehicle 602, as described below.
- localization data e.g., output from the localization component 620
- perception data e.g., output from the perception component 622
- Block 806 illustrates determining whether the other vehicle is predicted to perform a cut-in maneuver.
- the prediction component 624 can use the model, trained via machine learning techniques described above with reference to FIG. 7, to output a prediction indicating whether the other vehicle is going to enter the driving lane of the vehicle 602 in front of the vehicle 602, or otherwise perform a cut-in maneuver. That is, the prediction component 624 can use a model to generate a prediction regarding whether the other vehicle is likely to perform a cut-in maneuver (e.g., enter a driving lane in front of the vehicle 602).
- the prediction component 624 can convert the sensor data (e.g., received in block 802) into a top-down representation of the environment. For example, the prediction component 624 can generate multi-channel image(s) associated with such sensor data.
- each channel can correspond to a feature which can include, but is not limited to, annotations in map(s) associated with the environment indicating parking spot(s) (e.g., substantially perpendicular parking spot(s)) or parking lot(s), alley(s), driveway(s), and the like), positions of the vehicle and/or the other vehicle (e.g., direction of travel, angular offset from another vehicle, etc.), an instantaneous velocity of the other vehicle, an indication of whether a driver is in the other vehicle, an indication of a direction that the driver is looking (e.g., head direction of the driver), an indication of whether a door associated with the other vehicle is open or closed, an indication of whether an engine of the other vehicle is in a running state or off state, a wheel angle associated with wheel(s) of the other vehicle, an indication of whether a brake light of the other vehicle is illuminated, an indication of whether a headlight of the other vehicle is illuminated, an indication of whether a reverse light of the other vehicle is illuminated, an
- each channel can be associated with a top-down view of the environment. That is, a channel can represent sensor output or information based on a sensor output that is modeled in a top-down representation. As above, multiple multi channel images representing a period of time preceding a most recent time step (or any other data structure) are contemplated.
- the model can be trained to analyze one or more features (also referred to as attributes, characteristics, parameters, data, and the like) associated with the environment within which the sensor data is associated and/or the other vehicle to output a prediction with respect to whether the other vehicle is going to enter the driving lane of the vehicle 602 in front of the vehicle 602.
- the prediction component 624 can receive an output (e.g., from the respective model) that indicates a likelihood that the other vehicle is going to enter the driving lane of the vehicle 602 in front of the vehicle 602.
- the output can be a binary indicator (e.g., “yes” or “no”), indicating whether the other vehicle is going to enter the driving lane of the vehicle 602 in front of the vehicle 602 or not.
- the output can be a percentage or other metric indicating a certainty of whether the other vehicle is going to enter the driving lane of the vehicle 602 in front of the vehicle 602.
- the prediction component 624 can compare the output percentage or other metric to a threshold and, if the output percentage or other metric is greater than or equal to the threshold, the prediction component 624 can determine that the other vehicle is predicted to enter into the driving lane of the vehicle 602 in front of the vehicle. If the output percentage or other metric is less than the threshold, the prediction component 624 can determine that the other vehicle is predicted to enter into the driving lane of the vehicle 602 in front of the vehicle
- the planning component 626 associated with the vehicle 602 can receive an indication of such.
- the planning component 626 can determine a first instruction for controlling the vehicle 602 in view of the other vehicle, as illustrated in block 808, and can cause the vehicle 602 to be controlled based at least in part on the first instruction, as illustrated in block 810. That is, as described above, the planning component 626 can utilize the output of the model to determine how to navigate the vehicle 602 in its environment.
- the planning component 626 can generate one or more trajectories that can be used by other components associated with the vehicle 602 to adapt driving operations based on predictions output by the model.
- such trajectory(s) can be modifications of previous trajectory (s).
- such trajectory(s) can be new trajectory (s) based on the first instruction.
- the planning component 626 can determine a trajectory to navigate the vehicle 602 to accommodate the other vehicle, for example, by causing the vehicle 602 to decelerate thereby increasing a follow distance between the vehicle 602 and another vehicle, causing the vehicle 602 to decelerate to yield to the other vehicle and/or stop, causing the vehicle 602 to perform a lane change, causing the vehicle 602 to safely maneuver around the other vehicle, and/or any other combination of maneuvers the vehicle 602 is capable of performing, etc.
- the output can be used by the prediction component 624 to predict how the other vehicle is likely to maneuver and the prediction component 624 can output a trajectory representative of such a prediction.
- the predicted trajectory associated with the other vehicle can be provided to the planning component 626 for the planning component to determine the trajectory for navigating the vehicle 602.
- the planning component 626 associated with the vehicle 602 can receive an indication of such.
- the planning component 626 can determine a second instruction for controlling the vehicle 602, as illustrated in block 812, and can cause the vehicle 602 to be controlled based at least in part on the second instruction, as illustrated in block 814.
- the planning component 626 can plan a trajectory that otherwise controls the vehicle 602 to travel within the environment (which may or may not take the other car into consideration).
- a trajectory can be the same trajectory as previously determined (e.g., prior to determining that the other vehicle is not predicted to perform a cut-in maneuver).
- the trajectory can be a new trajectory based on the second instruction.
- FIGS. 1 -5 illustrate various examples of other vehicles that are proximate to a vehicle, such as the vehicle 602, that are entering a lane region of the driving lane in front of the vehicle 602 or are otherwise performing a “cut-in maneuver,” as described herein.
- Such examples include left turns, right turns, U-turns, three- point turns, and the like.
- additional or alternative examples are within the scope of this disclosure (e.g., K-turns, any N-point turn, etc.).
- the process 800 can be applicable to any example where another vehicle that is proximate to and associated with a same or different direction of travel than the vehicle 602 enters — or is predicted to enter — a lane region of the driving lane in front of the vehicle.
- a method comprising: receiving log data associated with vehicles in an environment; detecting an event in the log data, wherein an event corresponds to a cut-in maneuver performed by a vehicle; determining a period of time associated with the event; accessing a portion of the log data that corresponds to the period of time; generating training data based at least in part on converting the portion of the log data that corresponds to the period of time into a top-down representation of the environment; inputting the training data into a model; determining, by the model, an output comprising an indication that another vehicle is likely to perform another cut-in maneuver; determining a difference between the output and an expected output associated with the training data; altering one or more parameters of the model based on the difference; and transmitting the model to an autonomous vehicle configured to be controlled by another output of the model.
- the log data comprises raw sensor data and a downstream output determined based at least in part on the raw sensor data, wherein the downstream output comprises perception data, prediction data, or planner data.
- a system comprising: one or more processors; and one or more non-transitory computer-readable media storing instructions, that when executed by the one or more processors, cause the system to perform operations comprising: receiving log data associated with vehicles in an environment; detecting an event in the log data, wherein an event corresponds to a cut-in maneuver performed by a vehicle; generating training data based at least in part on converting a portion of the log data that corresponds to the event into a top-down representation of the environment; inputting the training data into a model; and transmitting the model to an autonomous vehicle configured to be controlled by another output of the model.
- the top-down representation comprises a multi channel image, wherein each channel corresponds to at least one of: a position of the vehicle relative to a centerline of a driving surface; an instantaneous velocity of the vehicle; an indication of whether a driver is in the vehicle; an indication of whether a door associated with the vehicle is open or closed; an indication of whether an engine of the vehicle is in a running state or off state; an indication of whether a brake light of the vehicle is illuminated; an indication of whether a headlight of the vehicle is illuminated; an indication of whether a reverse light of the vehicle is illuminated; or an indication of whether a blinker of the vehicle is illuminated.
- L L.
- the cut-in maneuver comprises any one of: a left turn from an alley, a parking spot, or a driveway; a right turn from an alley, a parking spot, or a driveway; a u- tum; an n-point turn; a k-turn; or a backward reverse into a driving lane.
- One or more non-transitory computer-readable media storing instructions, that when executed by one or more processors, cause the one or more processors to perform operations comprising: receiving log data associated with vehicles in an environment; detecting an event in the log data, wherein an event corresponds to a cut-in maneuver performed by a vehicle; generating training data based at least in part on converting a portion of the log data that corresponds to the event into a top-down representation of the environment; and inputting the training data into a model, wherein the model is trained to output an indication of whether another vehicle is likely to perform another cut-in maneuver.
- R The one or more non-transitory computer-readable media as any of paragraphs M-Q recites, wherein the model comprises a convolutional neural network.
- the top-down representation comprises a multi-channel image, wherein each channel corresponds to at least one of: a position of the vehicle relative to a centerline of a driving surface; an instantaneous velocity of the vehicle; an indication of whether a driver is in the vehicle; an indication of whether a door associated with the vehicle is open or closed; an indication of whether an engine of the vehicle is in a running state or off state; an indication of whether a brake light of the vehicle is illuminated; an indication of whether a headlight of the vehicle is illuminated; an indication of whether a reverse light of the vehicle is illuminated; or an indication of whether a blinker of the vehicle is illuminated.
- T The one or more non-transitory computer-readable media as any of paragraphs M-S recites, wherein the cut-in maneuver comprises any one of: a left turn from an alley, a parking spot, or a driveway; a right turn from an alley, a parking spot, or a driveway; a u-turn; an n-point turn; a k-tum; or a backward reverse into a driving lane.
- the cut-in maneuver comprises any one of: a left turn from an alley, a parking spot, or a driveway; a right turn from an alley, a parking spot, or a driveway; a u-turn; an n-point turn; a k-tum; or a backward reverse into a driving lane.
- a method comprising: receiving sensor data associated with an environment of a first vehicle; detecting, based at least in part on the sensor data, a second vehicle proximate the first vehicle, wherein the second vehicle is substantially perpendicular to the first vehicle; determining, based at least in part on the sensor data, an attribute associated with the environment or the second vehicle that is indicative of whether the second vehicle is going to enter a lane region in front of the first vehicle; determining, based at least in part on the attribute, an indication whether the second vehicle will enter the lane region in front of the first vehicle; and determining an instruction for controlling the first vehicle based at least in part on the indication.
- the attribute comprises at least one of: a position of the second vehicle relative to the first vehicle; an instantaneous velocity of the second vehicle; an indication of whether a driver is in the second vehicle; an indication of whether a door associated with the second vehicle is open or closed; an indication of whether an engine of the second vehicle is in a running state or off state; an indication of whether a brake light of the second vehicle is illuminated; an indication of whether a headlight of the second vehicle is illuminated; an indication of whether a reverse light of the second vehicle is illuminated; or an indication of whether a blinker of the second vehicle is illuminated.
- a system comprising: one or more processors; and one or more non-transitory computer-readable media storing instructions, that when executed by the one or more processors, cause the system to perform operations comprising: receiving sensor data associated with an environment of a first vehicle; determining, based at least in part on the sensor data, that a second vehicle proximate the first vehicle is predicted to enter a lane region in front of the first vehicle; and determining an instruction for controlling the first vehicle based at least in part on determining that the second vehicle proximate the first vehicle is predicted to enter the lane region in front of the first vehicle.
- the one or more attributes comprise at least one of: a position of the second vehicle relative to the first vehicle; an instantaneous velocity of the second vehicle; an indication of whether a driver is in the second vehicle; an indication of whether a door associated with the second vehicle is open or closed; an indication of whether an engine of the second vehicle is in a running state or off state; an indication of whether a brake light of the second vehicle is illuminated; an indication of whether a headlight of the second vehicle is illuminated; an indication of whether a reverse light of the second vehicle is illuminated; or an indication of whether a blinker of the second vehicle is illuminated.
- AD The system as any of paragraphs AA-AC recites, wherein the first vehicle and the second vehicle are positioned at an angle between a designated offset from 90 degrees.
- determining an instruction for controlling the first vehicle is based at least in part on an output from a machine-trained model, wherein the output comprises a binary indication whether the second vehicle will enter the lane region in front of the first vehicle or a percentage indicating a certainty associated with whether the second vehicle will enter the lane region in front of the first vehicle.
- AH One or more non-transitory computer-readable media storing instructions, that when executed by one or more processors, cause the one or more processors to perform operations comprising: receiving sensor data associated with an environment of a first vehicle; converting the sensor data into a top-down representation of the environment; inputting the top-down representation into a machine-trained model; determining, based at least in part on inputting the top-down representation into the machine-trained model, that a second vehicle proximate the first vehicle is predicted to enter a lane region in front of the first vehicle; and determining an instruction for controlling the first vehicle based at least in part on determining that the second vehicle proximate the first vehicle is predicted to enter the lane region in front of the first vehicle.
- AI The one or more non-transitory computer-readable media as paragraph AH recites, wherein determining that the second vehicle proximate the first vehicle is predicted to enter the lane region in front of the first vehicle is based at least in part on at least one attribute, wherein the attribute comprises: an instantaneous velocity of the second vehicle; an indication of whether a driver is in the second vehicle and, if the driver is in the second vehicle, an indication of a head direction of the driver; an indication of whether an engine of the second vehicle is in a running state or an off state; a wheel angle associated with a wheel of the second vehicle; or an indication of whether at least one of a brake light, a headlight, a reverse light, or a blinker of the second vehicle is illuminated.
- the attribute comprises: an instantaneous velocity of the second vehicle; an indication of whether a driver is in the second vehicle and, if the driver is in the second vehicle, an indication of a head direction of the driver; an indication of whether an engine of the second vehicle is in a running
- AK The one or more non-transitory computer-readable media as any of paragraphs AH-AJ recites, wherein the second vehicle and the first vehicle are positioned at an angle within a designated offset of 90 degrees.
- AL The one or more non-transitory computer-readable media as any of paragraphs AH-AK recites wherein the second vehicle is positioned in either (i) a parking spot or a driveway on a same side of a road as the first vehicle or (ii) a parking spot or a driveway on an opposite side of a road as the first vehicle.
- AM The one or more non-transitory computer-readable media as any of paragraphs AH-AJ recites, wherein the second vehicle is positioned in either (i) a parking spot or a driveway on a same side of a road as the first vehicle or (ii) a parking spot or a driveway on an opposite side of a road as the first vehicle.
- AN The one or more non-transitory computer-readable media as any of paragraphs AH- AM recites, wherein the instruction causes the first vehicle to at least one of decelerate or perform a lane change operation.
- the example clauses described above are described with respect to one particular implementation, it should be understood that, in the context of this document, the content of the example clauses can also be implemented via a method, device, system, a computer-readable medium, and/or another implementation. Additionally, any of examples A-AN may be implemented alone or in combination with any other one or more of the examples A-AN.
Landscapes
- Engineering & Computer Science (AREA)
- Mechanical Engineering (AREA)
- Automation & Control Theory (AREA)
- Transportation (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Traffic Control Systems (AREA)
- Control Of Driving Devices And Active Controlling Of Vehicle (AREA)
- Regulating Braking Force (AREA)
- Radar Systems Or Details Thereof (AREA)
Abstract
Description
Claims
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US16/803,705 US20210269065A1 (en) | 2020-02-27 | 2020-02-27 | Perpendicular cut-in detection |
| US16/803,644 US11385642B2 (en) | 2020-02-27 | 2020-02-27 | Perpendicular cut-in training |
| PCT/US2021/018341 WO2021173395A1 (en) | 2020-02-27 | 2021-02-17 | Perpendicular cut-in training |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| EP4111288A1 true EP4111288A1 (en) | 2023-01-04 |
| EP4111288A4 EP4111288A4 (en) | 2024-03-20 |
Family
ID=77491425
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| EP21759759.0A Pending EP4111288A4 (en) | 2020-02-27 | 2021-02-17 | Perpendicular cut-in training |
Country Status (4)
| Country | Link |
|---|---|
| EP (1) | EP4111288A4 (en) |
| JP (1) | JP7662656B2 (en) |
| CN (1) | CN115190987A (en) |
| WO (1) | WO2021173395A1 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP4653280A1 (en) * | 2024-05-23 | 2025-11-26 | Volvo Car Corporation | Method for determining a likelihood that a target vehicle is planning to perform a u-turn, method for controlling an egovehicle, method for controlling an observer vehicle, data processing apparatus, computer program, computer-readable storage medium, and system |
Family Cites Families (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2017224075A (en) | 2016-06-14 | 2017-12-21 | 富士通テン株式会社 | Device, method and system for supporting take-out of vehicle |
| CN110462544A (en) | 2017-03-20 | 2019-11-15 | 御眼视觉技术有限公司 | Trajectory selection for autonomous vehicles |
| US10503172B2 (en) * | 2017-10-18 | 2019-12-10 | Luminar Technologies, Inc. | Controlling an autonomous vehicle based on independent driving decisions |
| US11042163B2 (en) * | 2018-01-07 | 2021-06-22 | Nvidia Corporation | Guiding vehicles through vehicle maneuvers using machine learning models |
| JP7206048B2 (en) | 2018-03-05 | 2023-01-17 | 日産自動車株式会社 | Driving characteristic estimation method and driving characteristic estimation device |
| JP7098366B2 (en) * | 2018-03-15 | 2022-07-11 | 本田技研工業株式会社 | Vehicle control devices, vehicle control methods, and programs |
| JP7030573B2 (en) | 2018-03-15 | 2022-03-07 | 本田技研工業株式会社 | Vehicle control devices, vehicle control methods, and programs |
| US11370423B2 (en) * | 2018-06-15 | 2022-06-28 | Uatc, Llc | Multi-task machine-learned models for object intention determination in autonomous driving |
| DE102018005261A1 (en) * | 2018-07-02 | 2020-01-02 | Daimler Ag | Method and assistance system for operating an autonomous driving operation and vehicle |
| US11604944B2 (en) * | 2018-07-17 | 2023-03-14 | Nvidia Corporation | Regression-based line detection for autonomous driving machines |
-
2021
- 2021-02-17 WO PCT/US2021/018341 patent/WO2021173395A1/en not_active Ceased
- 2021-02-17 CN CN202180017479.8A patent/CN115190987A/en active Pending
- 2021-02-17 JP JP2022551550A patent/JP7662656B2/en active Active
- 2021-02-17 EP EP21759759.0A patent/EP4111288A4/en active Pending
Also Published As
| Publication number | Publication date |
|---|---|
| EP4111288A4 (en) | 2024-03-20 |
| JP2023514870A (en) | 2023-04-11 |
| JP7662656B2 (en) | 2025-04-15 |
| WO2021173395A1 (en) | 2021-09-02 |
| CN115190987A (en) | 2022-10-14 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US12055935B2 (en) | Perpendicular cut-in training | |
| US12505739B2 (en) | Emergency vehicle detection and response | |
| US20210269065A1 (en) | Perpendicular cut-in detection | |
| US10981567B2 (en) | Feature-based prediction | |
| CN112789481B (en) | Trajectory prediction for top-down scenarios | |
| US12024170B2 (en) | Lane change gap finder | |
| US11353874B2 (en) | Lane handling for merge prior to turn | |
| US20230036371A1 (en) | Lane classification for improved vehicle handling | |
| US20240208546A1 (en) | Predictive models for autonomous vehicles based on object interactions | |
| US11462041B2 (en) | Pedestrians with objects | |
| US12269462B1 (en) | Spatial prediction | |
| US11789155B2 (en) | Pedestrian object detection training | |
| WO2024118765A1 (en) | Vehicle trajectory tree search for off-route driving maneuvers | |
| US11590969B1 (en) | Event detection based on vehicle data | |
| JP2022544835A (en) | Lane handling for merging before turning | |
| JP7662656B2 (en) | Right angle interrupt training | |
| JP2023522844A (en) | Remote control for collaborative vehicle guidance | |
| EP4081875B1 (en) | Pedestrians with objects | |
| US12617413B1 (en) | Contrastive training of object trajectory encoders and text encoders | |
| CN120021427A (en) | Stopping maneuvers for autonomous vehicles |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE |
|
| PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE |
|
| 17P | Request for examination filed |
Effective date: 20220723 |
|
| AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
| DAV | Request for validation of the european patent (deleted) | ||
| DAX | Request for extension of the european patent (deleted) | ||
| REG | Reference to a national code |
Ref country code: DE Ref legal event code: R079 Free format text: PREVIOUS MAIN CLASS: G05D0001020000 Ipc: G08G0001160000 |
|
| A4 | Supplementary search report drawn up and despatched |
Effective date: 20240221 |
|
| RIC1 | Information provided on ipc code assigned before grant |
Ipc: B60W 60/00 20200101ALI20240215BHEP Ipc: G08G 1/16 20060101AFI20240215BHEP |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: EXAMINATION IS IN PROGRESS |
|
| 17Q | First examination report despatched |
Effective date: 20250728 |