KR20230140517A - Predicting and controlling object crossings on vehicle routes - Google Patents
Predicting and controlling object crossings on vehicle routes Download PDFInfo
- Publication number
- KR20230140517A KR20230140517A KR1020230037368A KR20230037368A KR20230140517A KR 20230140517 A KR20230140517 A KR 20230140517A KR 1020230037368 A KR1020230037368 A KR 1020230037368A KR 20230037368 A KR20230037368 A KR 20230037368A KR 20230140517 A KR20230140517 A KR 20230140517A
- Authority
- KR
- South Korea
- Prior art keywords
- vehicle
- processor
- future position
- trajectory
- determining
- Prior art date
Links
- 238000000034 method Methods 0.000 claims abstract description 41
- 238000012549 training Methods 0.000 claims abstract description 9
- 230000004044 response Effects 0.000 claims description 10
- 238000003384 imaging method Methods 0.000 claims description 5
- 230000008859 change Effects 0.000 claims description 3
- 238000004590 computer program Methods 0.000 abstract description 3
- 238000004891 communication Methods 0.000 description 26
- 230000004807 localization Effects 0.000 description 25
- 238000007726 management method Methods 0.000 description 23
- 230000008569 process Effects 0.000 description 22
- 238000013439 planning Methods 0.000 description 19
- 230000001149 cognitive effect Effects 0.000 description 16
- 238000010801 machine learning Methods 0.000 description 11
- 238000012545 processing Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000001413 cellular effect Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 230000005236 sound signal Effects 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 239000003550 marker Substances 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 239000013598 vector Substances 0.000 description 2
- 206010048669 Terminal state Diseases 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 239000000446 fuel Substances 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000001172 regenerating effect Effects 0.000 description 1
- 230000004043 responsiveness Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
- 238000001429 visible spectrum Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
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/0027—Planning or execution of driving tasks using trajectory prediction for other traffic participants
-
- 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/095—Predicting travel path or likelihood of collision
-
- 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
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W50/0097—Predicting future conditions
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B17/00—Systems involving the use of models or simulators of said systems
- G05B17/02—Systems involving the use of models or simulators of said systems electric
-
- 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/095—Predicting travel path or likelihood of collision
- B60W30/0956—Predicting travel path or likelihood of collision the prediction being responsive to traffic or environmental parameters
-
- 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/10—Path keeping
-
- 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/14—Adaptive cruise control
- B60W30/143—Speed control
-
- 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
- B60W40/00—Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
- B60W40/02—Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to ambient conditions
-
- 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
- B60W40/00—Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
- B60W40/10—Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to vehicle motion
- B60W40/105—Speed
-
- 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
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/0265—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- 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
-
- 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
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W2050/0001—Details of the control system
- B60W2050/0002—Automatic control, details of type of controller or control system architecture
- B60W2050/0004—In digital systems, e.g. discrete-time systems involving sampling
- B60W2050/0005—Processor details or data handling, e.g. memory registers or chip architecture
-
- 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
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W2050/0001—Details of the control system
- B60W2050/0019—Control system elements or transfer functions
- B60W2050/0028—Mathematical models, e.g. for simulation
-
- 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
- B60W2420/00—Indexing codes relating to the type of sensors based on the principle of their operation
- B60W2420/40—Photo, light or radio wave sensitive means, e.g. infrared sensors
- B60W2420/403—Image sensing, e.g. optical camera
-
- 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
- B60W2420/00—Indexing codes relating to the type of sensors based on the principle of their operation
- B60W2420/40—Photo, light or radio wave sensitive means, e.g. infrared sensors
- B60W2420/408—Radar; Laser, e.g. lidar
-
- 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
-
- 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/4041—Position
-
- 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
- B60W2556/00—Input parameters relating to data
- B60W2556/45—External transmission of data to or from the vehicle
- B60W2556/50—External transmission of data to or from the vehicle of positioning data, e.g. GPS [Global Positioning System] data
-
- 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
- B60W2710/00—Output or target parameters relating to a particular sub-units
- B60W2710/20—Steering systems
- B60W2710/207—Steering angle of wheels
-
- 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
- B60W2720/00—Output or target parameters relating to overall vehicle dynamics
- B60W2720/10—Longitudinal speed
-
- 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
- B60W2720/00—Output or target parameters relating to overall vehicle dynamics
- B60W2720/24—Direction of travel
Landscapes
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Transportation (AREA)
- Mechanical Engineering (AREA)
- Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Traffic Control Systems (AREA)
- Control Of Driving Devices And Active Controlling Of Vehicle (AREA)
Abstract
차량 횡단 및 양보를 예측하기 위한 방법, 시스템 및 컴퓨터 프로그램 제품이 제공되며, 이는 차량 주변의 대상체를 나타내는 센서 정보를 수신하는 것을 포함할 수 있다. 일부 방법은 또한, 차량의 적어도 제1 궤적에 기초하여 차량의 미래 포지션을 결정하고, 대상체의 제2 궤적에 기초하여 대상체의 미래 포지션을 결정하고, 차량의 미래 포지션 및 대상체의 미래 포지션에 기초하여 차량 제어를 결정하는 것을 포함한다. 방법은 또한, 차량 제어, 차량의 제1 궤적, 및 대상체의 제2 궤적을 사용하여 모델을 트레이닝하는 것을 포함한다. Methods, systems and computer program products are provided for predicting vehicle crossing and yielding, which may include receiving sensor information indicative of objects around the vehicle. Some methods may also determine a future position of the vehicle based on at least a first trajectory of the vehicle, determine a future position of the object based on a second trajectory of the object, and determine a future position of the object based on the future position of the vehicle and the future position of the object. Includes determining vehicle control. The method also includes training a model using vehicle control, a first trajectory of the vehicle, and a second trajectory of the object.
Description
자율 주행 차량(autonomous vehicle)은 사람의 입력 없이 자신의 환경을 감지하고 주행할 수 있는 차량이다. 자율 주행 차량은, 주변 환경을 인식하고 자율 주행 차량에 주변 환경을 나타내는 데이터를 제공하는 여러 유형의 센서가 탑재되어 있다. 자율 주행 차량은 머신 러닝 모델을 사용하여 데이터를 처리하거나 계산하고, 자율 주행 차량의 환경에 있는 다른 행동자가 자율 주행 차량의 루트를 횡단하는지(cross) 여부에 대한 예측을 포함할 수 있는 계산 결과에 기초하여 이동 결정을 한다. An autonomous vehicle is a vehicle that can sense its environment and drive without human input. Self-driving vehicles are equipped with several types of sensors that recognize their surroundings and provide data representing the surrounding environment to the self-driving vehicle. Autonomous vehicles use machine learning models to process or compute data, and the results of those computations may include predictions about whether other actors in the autonomous vehicle's environment will cross the autonomous vehicle's route. Make movement decisions based on
도 1은 자율 주행 시스템(autonomous system)의 하나 이상의 컴포넌트를 포함하는 차량이 구현될 수 있는 예시적인 환경이다.
도 2는 자율 주행 시스템을 포함하는 차량의 하나 이상의 시스템의 다이어그램이다.
도 3은 도 1 및 도 2의 하나 이상의 디바이스 및/또는 하나 이상의 시스템의 컴포넌트들의 다이어그램이다.
도 4는 자율 주행 시스템의 특정 컴포넌트들의 다이어그램이다.
도 5는 차량 루트의 대상체 횡단을 예측 및 제어하기 위한 프로세스의 예의 다이어그램이다.
도 6은 차량 루트의 대상체 횡단을 예측 및 제어하기 위한 프로세스의 예의 흐름도이다.1 is an example environment in which a vehicle including one or more components of an autonomous system may be implemented.
2 is a diagram of one or more systems of a vehicle including an autonomous driving system.
Figure 3 is a diagram of components of one or more devices and/or one or more systems of Figures 1 and 2;
4 is a diagram of specific components of an autonomous driving system.
5 is a diagram of an example of a process for predicting and controlling object crossing of a vehicle route.
6 is a flow diagram of an example of a process for predicting and controlling object crossing of a vehicle route.
이하의 설명에서는, 설명 목적으로 본 개시에 대한 완전한 이해를 제공하기 위해 다수의 특정 세부 사항들이 기재된다. 그렇지만, 본 개시에 의해 기술되는 실시예들이 이러한 특정 세부 사항들이 없더라도 실시될 수 있음이 명백할 것이다. 일부 경우에, 본 개시의 양태들을 불필요하게 모호하게 하는 것을 피하기 위해 잘 알려진 구조들 및 디바이스들은 블록 다이어그램 형태로 예시되어 있다.In the following description, for purposes of explanation, numerous specific details are set forth to provide a thorough understanding of the disclosure. However, it will be clear that the embodiments described by this disclosure may be practiced without these specific details. In some cases, well-known structures and devices are illustrated in block diagram form to avoid unnecessarily obscuring aspects of the disclosure.
시스템들, 디바이스들, 모듈들, 명령어 블록들, 데이터 요소들 등을 나타내는 것들과 같은, 개략적인 요소들의 특정 배열들 또는 순서들이 설명의 편의를 위해 도면들에 예시되어 있다. 그렇지만, 본 기술 분야의 통상의 기술자라면 도면들에서의 개략적인 요소들의 특정 순서 또는 배열이, 그러한 것으로 명시적으로 기술되지 않는 한, 프로세스들의 특정 프로세싱 순서 또는 시퀀스, 또는 프로세스들의 분리가 필요하다는 것을 암시하는 것으로 의미되지 않음을 이해할 것이다. 게다가, 도면에 개략적인 요소를 포함시키는 것은, 그러한 것으로 명시적으로 기술되지 않는 한 일부 실시예들에서, 그러한 요소가 모든 실시예들에서 필요하다는 것 또는 그러한 요소에 의해 표현되는 특징들이 다른 요소들에 포함되지 않을 수 있거나 다른 요소들과 결합되지 않을 수 있다는 것을 암시하는 것으로 의미되지 않는다.Specific arrangements or orders of schematic elements, such as those representing systems, devices, modules, instruction blocks, data elements, etc., are illustrated in the drawings for ease of explanation. However, one of ordinary skill in the art will recognize that a specific order or arrangement of elements schematically in the drawings requires a specific processing order or sequence of processes, or separation of processes, unless explicitly stated as such. It will be understood that it is not meant to be implied. Moreover, the inclusion of a schematic element in the drawings indicates that in some embodiments, unless explicitly stated as such, such element is required in all embodiments or that the features represented by such element are different from other elements. It is not meant to imply that it may not be included in or may not be combined with other elements.
게다가, 2 개 이상의 다른 개략적인 요소 사이의 연결, 관계 또는 연관을 예시하기 위해 실선 또는 파선 또는 화살표와 같은 연결 요소들이 도면들에서 사용되는 경우에, 임의의 그러한 연결 요소들의 부재는 연결, 관계 또는 연관이 존재할 수 없음을 암시하는 것으로 의미되지 않는다. 환언하면, 본 개시를 모호하게 하지 않기 위해 요소들 사이의 일부 연결들, 관계들 또는 연관들이 도면들에 예시되어 있지 않다. 추가적으로, 예시의 편의를 위해, 요소들 사이의 다수의 연결들, 관계들 또는 연관들을 나타내기 위해 단일의 연결 요소가 사용될 수 있다. 예를 들어, 연결 요소가 신호들, 데이터 또는 명령어들(예를 들면, "소프트웨어 명령어들")의 통신을 나타내는 경우에, 본 기술 분야의 통상의 기술자라면 그러한 요소가, 통신을 수행하기 위해 필요하게 될 수 있는, 하나 또는 다수의 신호 경로(예를 들면, 버스)를 나타낼 수 있다는 것을 이해할 것이다.Moreover, where connecting elements such as solid or broken lines or arrows are used in the drawings to illustrate a connection, relationship or association between two or more other schematic elements, the absence of any such connecting elements indicates a connection, relationship or association between two or more other schematic elements. It is not meant to imply that a connection cannot exist. In other words, some connections, relationships or associations between elements are not illustrated in the drawings in order not to obscure the present disclosure. Additionally, for ease of illustration, a single connected element may be used to indicate multiple connections, relationships, or associations between elements. For example, if a connecting element represents the communication of signals, data, or instructions (e.g., “software instructions”), one of ordinary skill in the art would recognize that such element is necessary to effectuate the communication. It will be appreciated that it may represent one or multiple signal paths (e.g., buses) that may be routed.
제1, 제2, 제3 등의 용어들이 다양한 컴포넌트들을 기술하는 데 사용되지만, 이러한 요소들이 이러한 용어들에 의해 제한되어서는 안된다. 제1, 제2, 제3 등의 용어들은 하나의 요소를 다른 요소와 구별하는 데만 사용된다. 예를 들어, 기술된 실시예들의 범위를 벗어나지 않으면서, 제1 접촉은 제2 접촉이라고 지칭될 수 있고, 유사하게 제2 접촉은 제1 접촉이라고 지칭될 수 있다. 제1 접촉과 제2 접촉 둘 모두가 접촉이지만, 동일한 접촉은 아니다.Although terms such as first, second, third, etc. are used to describe various components, these elements should not be limited by these terms. Terms such as first, second, third, etc. are used only to distinguish one element from another. For example, without departing from the scope of the described embodiments, a first contact may be referred to as a second contact, and similarly the second contact may be referred to as a first contact. Although both the first contact and the second contact are contacts, they are not the same contact.
본원에서의 다양한 기술된 실시예들에 대한 설명에서 사용되는 전문용어는 특정 실시예들을 기술하기 위해서만 포함되어 있으며, 제한하는 것으로 의도되지 않는다. 다양한 기술된 실시예들에 대한 설명 및 첨부된 청구항들에서 사용되는 바와 같이, 단수 형태들("a", "an" 및 "the")은 복수 형태들도 포함하는 것으로 의도되고, 문맥이 달리 명확히 나타내지 않는 한, "하나 이상" 또는 "적어도 하나"와 상호 교환 가능하게 사용될 수 있다. "및/또는"이라는 용어가, 본원에서 사용되는 바와 같이, 연관된 열거된 항목들 중 하나 이상의 항목의 일부 및 모든 가능한 조합을 지칭하고 포함한다는 것이 또한 이해될 것이다. "포함한다(includes)", 포함하는(including), 포함한다(comprises)" 및/또는 "포함하는(comprising)"이라는 용어들이, 본 설명에서 사용될 때, 언급된 특징들, 정수들, 단계들, 동작들, 요소들, 및/또는 컴포넌트들의 존재를 명시하지만, 하나 이상의 다른 특징, 정수, 단계, 동작, 요소, 컴포넌트, 및/또는 이들의 그룹의 존재 또는 추가를 배제하지 않는다는 것이 추가로 이해될 것이다.Terminology used in the description of the various described embodiments herein is included only to describe the specific embodiments and is not intended to be limiting. As used in the description of the various described embodiments and the appended claims, the singular forms “a”, “an”, and “the” are intended to include the plural forms as well, and the context may vary. Unless explicitly stated, it may be used interchangeably with “one or more” or “at least one.” It will also be understood that the term “and/or”, as used herein, refers to and includes any and all possible combinations of one or more of the associated listed items. When the terms “includes,” including, “comprises,” and/or “comprising” are used in this description, they refer to the features, integers, or steps referred to. , it is further understood that it specifies the presence of operations, elements, and/or components, but does not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof. It will be.
본원에서 사용되는 바와 같이, "통신" 및 "통신하다"라는 용어들은 정보(또는, 예를 들어, 데이터, 신호들, 메시지들, 명령어들, 커맨드들 등에 의해 표현되는 정보)의 수신, 접수, 송신, 전달, 제공 등 중 적어도 하나를 지칭한다. 하나의 유닛(예를 들면, 디바이스, 시스템, 디바이스 또는 시스템의 컴포넌트, 이들의 조합들 등)이 다른 유닛과 통신한다는 것은 하나의 유닛이 직접 또는 간접적으로 다른 유닛으로부터 정보를 수신하고/하거나 다른 유닛으로 정보를 전송(예를 들면, 송신)할 수 있음을 의미한다. 이것은 본질적으로 유선 및/또는 무선인 직접 또는 간접 연결을 지칭할 수 있다. 추가적으로, 송신되는 정보가 제1 유닛과 제2 유닛 사이에서 수정, 프로세싱, 중계 및/또는 라우팅될 수 있을지라도 2 개의 유닛은 서로 통신하고 있을 수 있다. 예를 들어, 제1 유닛이 정보를 수동적으로 수신하고 정보를 제2 유닛으로 능동적으로 송신하지 않을지라도 제1 유닛은 제2 유닛과 통신하고 있을 수 있다. 다른 예로서, 적어도 하나의 중간 유닛(예를 들면, 제1 유닛과 제2 유닛 사이에 위치하는 제3 유닛)이 제1 유닛으로부터 수신되는 정보를 프로세싱하고 프로세싱된 정보를 제2 유닛으로 송신하는 경우 제1 유닛은 제2 유닛과 통신하고 있을 수 있다. 일부 실시예들에서, 메시지는 데이터를 포함하는 네트워크 패킷(예를 들면, 데이터 패킷 등)을 지칭할 수 있다. As used herein, the terms “communication” and “communicate” refer to receiving, receiving, or receiving information (or information, e.g., expressed by data, signals, messages, instructions, commands, etc.). Refers to at least one of transmission, delivery, provision, etc. For one unit (e.g., a device, system, component of a device or system, combinations thereof, etc.) to communicate with another unit means that one unit directly or indirectly receives information from the other unit and/or communicates with the other unit. This means that information can be transmitted (e.g., transmitted). This may refer to a direct or indirect connection that is wired and/or wireless in nature. Additionally, the two units may be in communication with each other although information being transmitted may be modified, processed, relayed and/or routed between the first unit and the second unit. For example, a first unit may be in communication with a second unit even though the first unit is passively receiving information and not actively transmitting information to the second unit. As another example, at least one intermediate unit (e.g., a third unit located between the first unit and the second unit) processes information received from the first unit and transmits the processed information to the second unit. In this case, the first unit may be communicating with the second unit. In some embodiments, a message may refer to a network packet containing data (eg, a data packet, etc.).
본원에서 사용되는 바와 같이, "~ 경우"라는 용어는, 선택적으로, 문맥에 따라 "~할 때", 또는 "~시에" 또는 "~라고 결정하는 것에 응답하여", "~을 검출하는 것에 응답하여" 등을 의미하는 것으로 해석된다. 유사하게, 문구 "~라고 결정되는 경우" 또는 "[언급된 조건 또는 이벤트]가 검출되는 경우"는, 선택적으로, 문맥에 따라, "~라고 결정할 시에", "~라고 결정하는 것에 응답하여", "[언급된 조건 또는 이벤트]를 검출할 시에", "[언급된 조건 또는 이벤트]를 검출하는 것에 응답하여" 등을 의미하는 것으로 해석된다. 또한, 본원에서 사용되는 바와 같이, "갖는다"(has, have), "갖는(having)" 등의 용어들은 개방형(open-ended) 용어들인 것으로 의도된다. 게다가, 문구 "~에 기초하여"는, 달리 명시적으로 언급되지 않는 한, "~에 적어도 부분적으로 기초하여"를 의미하는 것으로 의도된다.As used herein, the term “if” means, optionally, “when” or “when” or “in response to determining that” or “in response to detecting that,” depending on the context. It is interpreted to mean “in response.” Similarly, the phrases “if it is determined that” or “if [the stated condition or event] is detected” can, optionally, depending on the context, mean “upon determining that”, “in response to determining that ", "upon detecting the [mentioned condition or event]", "in response to detecting the [mentioned condition or event]", etc. Additionally, as used herein, the terms “has,” “have,” and the like are intended to be open-ended terms. Moreover, the phrase “based on” is intended to mean “based at least in part on,” unless explicitly stated otherwise.
그 예가 첨부 도면에 예시된 실시예가 이제 상세하게 언급될 것이다. 이하의 상세한 설명에서, 다양한 기술된 실시예에 대한 완전한 이해를 제공하기 위해 많은 특정 세부 사항이 기재된다. 그렇지만, 다양한 기술된 실시예들이 이러한 특정 세부 사항들이 없더라도 실시될 수 있다는 것이 본 기술 분야의 통상의 기술자에게 명백할 것이다. 다른 경우에, 실시예의 양태를 불필요하게 모호하게 하지 않기 위해 공지된 방법, 절차, 컴포넌트, 회로, 및 네트워크는 상세히 기술되지 않았다. Embodiments, examples of which are illustrated in the accompanying drawings, will now be referred to in detail. In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the various described embodiments. However, it will be apparent to one skilled in the art that the various described embodiments may be practiced without these specific details. In other instances, well-known methods, procedures, components, circuits, and networks have not been described in detail so as not to unnecessarily obscure aspects of the embodiments.
일반적 개관general overview
일부 양태 및/또는 실시예에서, 본원에 기술된 시스템, 방법, 및 컴퓨터 프로그램 제품은 차량 루트의 대상체 횡단(object crossing)을 예측 및 제어하는 것을 포함하고/하거나 구현한다. 일부 실시예에서, 차량(예컨대, 자율 주행 차량)은 대상체가 차량의 루트를 횡단하는지 또는 차량에 양보하는지 여부를 예측하거나 결정하고, 대상체 및 차량의 궤적에 기초하여 차량의 이동을 유지하거나 조정하기 위한 차량 제어를 결정하고, 궤적 및 차량 제어에 기초하여 모델(예컨대, 머신 러닝 모델)을 트레이닝한다. 예를 들어, 차량의 주변 환경에서 검출되는 대상체가 차량 앞에서 횡단할 것인지 또는 차량에 양보할 것인지 여부에 대한 정보가 차량에 제공된다. 이 정보는 차량에 대하여 그리고 대상체에 대하여 궤적 및 관련 타임스탬프 정보를 결정하는 것에 기초한다. 횡단 또는 양보의 결정은 거짓 긍정(false positive)을 검출하여 이러한 결과를 걸러내고 대상체 이동 검출의 정확도를 개선하여 그에 따라 모델을 트레이닝하는 것을 포함한다. In some aspects and/or embodiments, the systems, methods, and computer program products described herein include and/or implement predicting and controlling object crossing of a vehicle route. In some embodiments, a vehicle (e.g., an autonomous vehicle) can predict or determine whether an object will traverse the vehicle's route or yield to the vehicle, and maintain or adjust the movement of the vehicle based on the trajectory of the object and the vehicle. Determine vehicle control for, and train a model (e.g., machine learning model) based on the trajectory and vehicle control. For example, information is provided to the vehicle about whether an object detected in the vehicle's surrounding environment will cross in front of the vehicle or yield to the vehicle. This information is based on determining trajectory and associated timestamp information for the vehicle and for the object. The decision to traverse or yield involves detecting false positives, filtering out these results and improving the accuracy of object movement detection and training the model accordingly.
예를 들어, 차량의 센서는 대상체의 존재를 검출하며, 그 뿐만 아니라 차량이 주어진 시간대 또는 지속시간 동안 대상체의 궤적을 예측하는 데 사용할 수 있는 대상체의 이동 데이터도 검출한다. 차량은 또한, 동일한 지속시간 동안 자체 궤적을 결정하고, 대상체가 차량의 루트를 횡단하는지 또는 차량에 양보하는지 여부를 예측한다. 대상체 및 차량의 미래 포지션(position)이 교차하고 대상체가 차량보다 먼저 교차로를 통과할 때 대상체는 차량의 루트를 횡단한다. 대상체 및 차량의 미래 포지션이 교차하고 차량이 대상체보다 먼저 교차로를 통과할 때 대상체가 차량에 양보한다고 한다.For example, a vehicle's sensors detect the presence of an object, as well as movement data of the object that the vehicle can use to predict the object's trajectory for a given time period or duration. The vehicle also determines its own trajectory for the same duration and predicts whether the object will cross the vehicle's route or yield to the vehicle. When the future positions of the object and the vehicle intersect and the object passes the intersection before the vehicle, the object traverses the vehicle's route. When the future positions of an object and a vehicle intersect and the vehicle passes the intersection before the object, the object is said to give way to the vehicle.
일부 실시예에서, 차량은 대상체 및 차량의 실제 또는 "실측(ground truth)" 궤적을 결정하고 이들 궤적을 각자의 예측된 궤적과 비교하여 임의의 거짓 긍정 또는 거짓 부정(false negative) 대상체 횡단을 식별한다. 거짓 긍정 대상체 횡단은, 대상체 및 차량의 예측된 궤적은 대상체가 차량의 루트를 횡단함을 나타내지만 대상체 및 차량의 실측 궤적은 그 반대를 나타내는 시나리오를 지칭하고, 거짓 부정 대상체 횡단은, 예측된 궤적은 대상체가 차량의 루트를 횡단하지 않음을 나타내지만 실측 궤적은 대상체가 차량의 루트를 횡단한다고 나타내는 시나리오를 지칭한다. 식별된 거짓 긍정 횡단 및 거짓 부정 횡단이 있는 예측된 궤적은 필터링되고, 대상체 및/또는 차량 궤적 그리고 대상체가 차량을 횡단하는지 또는 차량에 양보하는지 여부에 대하여 개선된 예측을 행하기 위해 예측 및/또는 실측 궤적을 사용하여 모델(예컨대, 머신 러닝 모델)이 트레이닝된다. In some embodiments, the vehicle determines actual or “ground truth” trajectories of objects and vehicles and compares these trajectories to their respective predicted trajectories to identify any false positive or false negative object crossings. do. A false positive object crossing refers to a scenario where the predicted trajectories of the object and vehicle indicate that the object traverses the route of the vehicle, but the ground truth trajectories of the object and vehicle indicate the opposite, and a false negative object crossing refers to a scenario where the predicted trajectory of the object and vehicle indicates the opposite. refers to a scenario where indicates that the object does not traverse the vehicle's route, while the ground truth trajectory indicates that the object does traverse the vehicle's route. Predicted trajectories with identified false positive crossings and false negative crossings are filtered and predicted and/or used to make improved predictions regarding object and/or vehicle trajectories and whether the object crosses or yields to vehicles. A model (e.g., a machine learning model) is trained using the ground truth trajectories.
일부 실시예에서, 차량은 차량 및 대상체의 예측된 궤적에 기초하여 차량의 이동을 제어하기 위한 차량 제어를 결정한다. 차량 제어는 (예컨대, 충돌을 피하기 위해, 즉, 대상체와 동시에 또는 실질적으로 동시에 교차로 위치에 도달하는 것을 피하기 위해) 차량의 속도를 변경하거나 유지하는 것을 포함하지만, 이에 한정되는 것은 아니다. 그 다음, 대상체 및/또는 차량 궤적 그리고 대상체가 차량을 횡단하는지 또는 차량에 양보하는지 여부에 대하여 개선된 예측을 행하기 위해 대상체 및/또는 차량의 예측된 궤적 및 차량 제어로 모델이 트레이닝된다. In some embodiments, the vehicle determines vehicle controls to control movement of the vehicle based on predicted trajectories of the vehicle and the object. Vehicle control includes, but is not limited to, changing or maintaining the speed of the vehicle (eg, to avoid a collision, i.e., to avoid reaching an intersection location at or substantially the same time as the object). A model is then trained with the predicted trajectories of the object and/or vehicle and vehicle control to make improved predictions about the object and/or vehicle trajectory and whether the object crosses or yields to the vehicle.
본원에 기술된 시스템, 방법 및 컴퓨터 프로그램 제품의 구현에 의해, 차량 루트의 대상체 횡단을 예측 및 제어하는 기술은 대상체가 차량의 루트를 횡단할 가능성에 대한 차량 응답성의 보다 정확한 결정을 가능하게 하기 위해 차량 및 대상체의 궤적 및 타임스탬프 정보를 사용한다. 타임스탬프 정보를 추가로 고려하는 것은, 대상체가 차량의 루트를 횡단하는지 여부를 결정하는 데에, 그 뿐만 아니라 거짓 긍정 대상체 횡단을 결정하는 데에도 도움이 된다. 이러한 결정은 차량은 자신의 방향(예컨대, 조향각, 차선 등), 속력 등을 조정할 수 있게 함으로써, 차량 및 대상체 안전을 향상시킨다. By implementing the systems, methods and computer program products described herein, techniques for predicting and controlling an object's crossing of a vehicle's route are provided to enable more accurate determination of vehicle responsiveness to the likelihood that an object will cross the vehicle's route. Uses trajectory and timestamp information of vehicles and objects. Additional consideration of timestamp information is helpful in determining whether an object traverses the vehicle's route, as well as in determining false positive object crossings. These decisions improve vehicle and object safety by allowing the vehicle to adjust its direction (eg, steering angle, lane, etc.), speed, etc.
이제 도 1을 참조하면, 자율 주행 시스템들을 포함하는 차량들은 물론 그렇지 않은 차량들이 작동되는 예시적인 환경(100)이 예시되어 있다. 예시된 바와 같이, 환경(100)은 차량들(102a 내지 102n), 대상체들(104a 내지 104n), 루트들(106a 내지 106n), 영역(108), 차량 대 인프라스트럭처(vehicle-to-infrastructure, V2I) 디바이스(110), 네트워크(112), 원격 자율 주행 차량(AV) 시스템(114), 플릿 관리 시스템(fleet management system)(116), 및 V2I 시스템(118)을 포함한다. 차량들(102a 내지 102n), 차량 대 인프라스트럭처(V2I) 디바이스(110), 네트워크(112), 자율 주행 차량(AV) 시스템(114), 플릿 관리 시스템(116), 및 V2I 시스템(118)은 유선 연결들, 무선 연결들, 또는 유선 또는 무선 연결들의 조합을 통해 상호연결한다(예를 들면, 통신 등을 위해 연결을 확립한다). 일부 실시예들에서, 대상체들(104a 내지 104n)은 유선 연결들, 무선 연결들 또는 유선 또는 무선 연결들의 조합을 통해 차량들(102a 내지 102n), 차량 대 인프라스트럭처(V2I) 디바이스(110), 네트워크(112), 자율 주행 차량(AV) 시스템(114), 플릿 관리 시스템(116), 및 V2I 시스템(118) 중 적어도 하나와 상호연결한다.Referring now to FIG. 1 , an example environment 100 is illustrated in which vehicles including autonomous driving systems as well as vehicles without autonomous driving systems operate. As illustrated, environment 100 includes
차량들(102a 내지 102n)(개별적으로 차량(102)이라고 지칭되고 집합적으로 차량들(102)이라고 지칭됨)은 상품 및/또는 사람을 운송하도록 구성된 적어도 하나의 디바이스를 포함한다. 일부 실시예들에서, 차량들(102)은 네트워크(112)를 통해 V2I 디바이스(110), 원격 AV 시스템(114), 플릿 관리 시스템(116), 및/또는 V2I 시스템(118)과 통신하도록 구성된다. 일부 실시예들에서, 차량들(102)은 자동차들, 버스들, 트럭들, 기차들 등을 포함한다. 일부 실시예들에서, 차량들(102)은 본원에 기술된 차량들(200)(도 2 참조)과 동일하거나 유사하다. 일부 실시예들에서, 일단의 차량들(200) 중의 차량(200)은 자율 주행 플릿 관리자와 연관된다. 일부 실시예들에서, 차량들(102)은, 본원에 기술된 바와 같이, 각자의 루트들(106a 내지 106n)(개별적으로 루트(106)라고 지칭되고 집합적으로 루트들(106)이라고 지칭됨)을 따라 주행한다. 일부 실시예들에서, 하나 이상의 차량(102)은 자율 주행 시스템(예를 들면, 자율 주행 시스템(202)과 동일하거나 유사한 자율 주행 시스템)을 포함한다.
대상체들(104a 내지 104n)(개별적으로 대상체(104)라고 지칭되고 집합적으로 대상체들(104)이라고 지칭됨)은, 예를 들어, 적어도 하나의 차량, 적어도 하나의 보행자, 적어도 하나의 자전거 타는 사람, 적어도 하나의 구조물(예를 들면, 건물, 표지판, 소화전(fire hydrant) 등) 등을 포함한다. 각각의 대상체(104)는 정지해 있거나(예를 들면, 일정 시간 기간 동안 고정 위치에 위치하거나) 이동하고 있다(예를 들면, 속도를 가지며 적어도 하나의 궤적과 연관되어 있다). 일부 실시예들에서, 대상체들(104)은 영역(108) 내의 대응하는 위치들과 연관되어 있다.Objects 104a - 104n (individually referred to as object 104 and collectively referred to as objects 104 ) may be, for example, at least one vehicle, at least one pedestrian, at least one cyclist. Includes people, at least one structure (e.g., building, sign, fire hydrant, etc.). Each object 104 may be stationary (e.g., located at a fixed position for a period of time) or moving (e.g., has a velocity and is associated with at least one trajectory). In some embodiments, objects 104 are associated with corresponding locations within
루트들(106a 내지 106n)(개별적으로 루트(106)라고 지칭되고 집합적으로 루트들(106)이라고 지칭됨)은 각각 AV가 운행할 수 있는 상태들을 연결하는 행동들의 시퀀스(궤적이라고도 함)와 연관된다(예를 들면, 이를 규정한다). 각각의 루트(106)는 초기 상태(예를 들면, 제1 시공간적 위치, 속도 등에 대응하는 상태) 및 최종 목표 상태(예를 들면, 제1 시공간적 위치와 상이한 제2 시공간적 위치에 대응하는 상태) 또는 목표 영역(예를 들면, 허용 가능한 상태들(예를 들면, 종료 상태들(terminal states))의 부분 공간(subspace))에서 시작된다. 일부 실시예들에서, 제1 상태는 개인 또는 개인들이 AV에 의해 픽업(pick-up)되어야 하는 위치를 포함하고 제2 상태 또는 영역은 AV에 의해 픽업된 개인 또는 개인들이 하차(drop-off)해야 하는 위치 또는 위치들을 포함한다. 일부 실시예들에서, 루트들(106)은 복수의 허용 가능한 상태 시퀀스들(예를 들면, 복수의 시공간적 위치 시퀀스들)을 포함하며, 복수의 상태 시퀀스들은 복수의 궤적들과 연관된다(예를 들면, 이를 정의한다). 일 예에서, 루트들(106)은, 도로 교차로들에서의 회전 방향들을 지시하는 일련의 연결된 도로들과 같은, 상위 레벨 행동들 또는 부정확한 상태 위치들만을 포함한다. 추가적으로 또는 대안적으로, 루트들(106)은, 예를 들어, 특정 목표 차선들 또는 차선 영역들 내에서의 정확한 위치들 및 해당 위치들에서의 목표 속력과 같은, 보다 정확한 행동들 또는 상태들을 포함할 수 있다. 일 예에서, 루트들(106)은 중간 목표들에 도달하기 위해 제한된 룩어헤드 호라이즌(lookahead horizon)을 갖는 적어도 하나의 상위 레벨 행동 시퀀스를 따른 복수의 정확한 상태 시퀀스들을 포함하며, 여기서 제한된 호라이즌 상태 시퀀스들의 연속적인 반복들의 조합은 누적되어 복수의 궤적들에 대응하며 이 복수의 궤적들은 집합적으로 최종 목표 상태 또는 영역에서 종료하는 상위 레벨 루트를 형성한다.Routes 106a through 106n (individually referred to as route 106 and collectively as routes 106) each represent a sequence of actions (also referred to as a trajectory) connecting the states in which the AV can travel. Associated with (e.g., defining). Each route 106 has an initial state (e.g., a state corresponding to a first spatiotemporal position, speed, etc.) and a final target state (e.g., a state corresponding to a second spatiotemporal position different from the first spatiotemporal position) or It starts from a target region (e.g., a subspace of allowable states (e.g., terminal states)). In some embodiments, the first state includes a location where the individual or individuals must be picked up by the AV and the second state or area includes a location where the individual or individuals picked up by the AV drop-off. Includes the location or locations that need to be done. In some embodiments, routes 106 include a plurality of allowable state sequences (e.g., a plurality of spatiotemporal position sequences), and the plurality of state sequences are associated with a plurality of trajectories (e.g., For example, define this). In one example, routes 106 include only high-level actions or imprecise state locations, such as a series of connected roads indicating turns at road intersections. Additionally or alternatively, routes 106 may include more precise actions or states, such as, for example, precise locations within specific target lanes or lane areas and target speeds at those locations. can do. In one example, routes 106 include a plurality of precise state sequences along at least one high-level action sequence with a bounded lookahead horizon to reach intermediate goals, wherein the bounded horizon state sequence The combination of successive iterations of these cumulatively corresponds to a plurality of trajectories, which collectively form a higher-level route that ends in the final target state or region.
영역(108)은 차량들(102)이 운행할 수 있는 물리적 영역(예를 들면, 지리적 영역)을 포함한다. 일 예에서, 영역(108)은 적어도 하나의 주(state)(예를 들면, 국가, 지방, 국가에 포함된 복수의 주들의 개개의 주 등), 주의 적어도 하나의 부분, 적어도 하나의 도시, 도시의 적어도 하나의 부분 등을 포함한다. 일부 실시예들에서, 영역(108)은 간선 도로, 주간 간선 도로, 공원 도로, 도시 거리 등과 같은 적어도 하나의 명명된 주요 도로(thoroughfare)(본원에서 "도로"라고 지칭됨)를 포함한다. 추가적으로 또는 대안적으로, 일부 예들에서, 영역(108)은 진입로, 주차장의 섹션, 공터 및/또는 미개발 부지의 섹션, 비포장 경로 등과 같은 적어도 하나의 명명되지 않은 도로를 포함한다. 일부 실시예들에서, 도로는 적어도 하나의 차선(예를 들면, 차량(102)에 의해 횡단될 수 있는 도로의 일 부분)을 포함한다. 일 예에서, 도로는 적어도 하나의 차선 마킹과 연관된(예를 들면, 이에 기초하여 식별되는) 적어도 하나의 차선을 포함한다.
차량 대 인프라스트럭처(V2I) 디바이스(110)(때때로 차량 대 인프라스트럭처(V2X) 디바이스라고 지칭됨)는 차량들(102) 및/또는 V2I 인프라스트럭처 시스템(118)과 통신하도록 구성된 적어도 하나의 디바이스를 포함한다. 일부 실시예들에서, V2I 디바이스(110)는 네트워크(112)를 통해 차량들(102), 원격 AV 시스템(114), 플릿 관리 시스템(116), 및/또는 V2I 시스템(118)과 통신하도록 구성된다. 일부 실시예들에서, V2I 디바이스(110)는 RFID(radio frequency identification) 디바이스, 사이니지(signage), 카메라(예를 들면, 2차원(2D) 및/또는 3차원(3D) 카메라), 차선 마커, 가로등, 주차 미터기 등을 포함한다. 일부 실시예들에서, V2I 디바이스(110)는 차량들(102)과 직접 통신하도록 구성된다. 추가적으로 또는 대안적으로, 일부 실시예들에서, V2I 디바이스(110)는 V2I 시스템(118)을 통해 차량들(102), 원격 AV 시스템(114), 및/또는 플릿 관리 시스템(116)과 통신하도록 구성된다. 일부 실시예들에서, V2I 디바이스(110)는 네트워크(112)를 통해 V2I 시스템(118)과 통신하도록 구성된다. Vehicle-to-Infrastructure (V2I) device 110 (sometimes referred to as a Vehicle-to-Infrastructure (V2X) device) includes at least one device configured to communicate with vehicles 102 and/or V2I infrastructure system 118. Includes. In some embodiments,
네트워크(112)는 하나 이상의 유선 및/또는 무선 네트워크를 포함한다. 일 예에서, 네트워크(112)는 셀룰러 네트워크(예를 들면, LTE(long term evolution) 네트워크, 3G(third generation) 네트워크, 4G(fourth generation) 네트워크, 5G(fifth generation) 네트워크, CDMA( code division multiple access) 네트워크 등), PLMN(public land mobile network), LAN(local area network), WAN(wide area network), MAN(metropolitan area network), 전화 네트워크(예를 들면, PSTN(public switched telephone network)), 사설 네트워크, 애드혹 네트워크, 인트라넷, 인터넷, 광섬유 기반 네트워크, 클라우드 컴퓨팅 네트워크 등, 이러한 네트워크들의 일부 또는 전부의 조합 등을 포함한다.
원격 AV 시스템(114)은 네트워크(112)를 통해 차량들(102), V2I 디바이스(110), 네트워크(112), 원격 AV 시스템(114), 플릿 관리 시스템(116), 및/또는 V2I 시스템(118)과 통신하도록 구성된 적어도 하나의 디바이스를 포함한다. 일 예에서, 원격 AV 시스템(114)은 서버, 서버들의 그룹, 및/또는 다른 유사한 디바이스들을 포함한다. 일부 실시예들에서, 원격 AV 시스템(114)은 플릿 관리 시스템(116)과 동일 위치에 배치된다(co-located). 일부 실시예들에서, 원격 AV 시스템(114)은 자율 주행 시스템, 자율 주행 차량 컴퓨터, 자율 주행 차량 컴퓨터에 의해 구현되는 소프트웨어 등을 포함한, 차량의 컴포넌트들 중 일부 또는 전부의 설치에 관여된다. 일부 실시예들에서, 원격 AV 시스템(114)은 차량의 수명 동안 그러한 컴포넌트들 및/또는 소프트웨어를 유지 관리(예를 들면, 업데이트 및/또는 교체)한다.Remote AV system 114 may be connected to vehicles 102,
플릿 관리 시스템(116)은 차량들(102), V2I 디바이스(110), 원격 AV 시스템(114), 및/또는 V2I 인프라스트럭처 시스템(118)과 통신하도록 구성된 적어도 하나의 디바이스를 포함한다. 일 예에서, 플릿 관리 시스템(116)은 서버, 서버들의 그룹, 및/또는 다른 유사한 디바이스들을 포함한다. 일부 실시예들에서, 플릿 관리 시스템(116)은 라이드 셰어링(ridesharing) 회사(예를 들면, 다수의 차량들(예를 들면, 자율 주행 시스템들을 포함하는 차량들 및/또는 자율 주행 시스템들을 포함하지 않는 차량들)의 작동을 제어하는 조직 등)와 연관된다.Fleet management system 116 includes at least one device configured to communicate with vehicles 102, a
일부 실시예들에서, V2I 시스템(118)은 네트워크(112)를 통해 차량들(102), V2I 디바이스(110), 원격 AV 시스템(114), 및/또는 플릿 관리 시스템(116)과 통신하도록 구성된 적어도 하나의 디바이스를 포함한다. 일부 예들에서, V2I 시스템(118)은 네트워크(112)와 상이한 연결을 통해 V2I 디바이스(110)와 통신하도록 구성된다. 일부 실시예들에서, V2I 시스템(118)은 서버, 서버들의 그룹, 및/또는 다른 유사한 디바이스들을 포함한다. 일부 실시예들에서, V2I 시스템(118)은 지자체 또는 사설 기관(예를 들면, V2I 디바이스(110) 등을 유지 관리하는 사설 기관)과 연관된다.In some embodiments, V2I system 118 is configured to communicate with vehicles 102,
도 1에 예시된 요소들의 수 및 배열은 예로서 제공된다. 도 1에 예시된 것보다, 추가적인 요소들, 더 적은 요소들, 상이한 요소들 및/또는 상이하게 배열된 요소들이 있을 수 있다. 추가적으로 또는 대안적으로, 환경(100)의 적어도 하나의 요소는 도 1의 적어도 하나의 상이한 요소에 의해 수행되는 것으로 기술된 하나 이상의 기능을 수행할 수 있다. 추가적으로 또는 대안적으로, 환경(100)의 적어도 하나의 요소 세트는 환경(100)의 적어도 하나의 상이한 요소 세트에 의해 수행되는 것으로 기술된 하나 이상의 기능을 수행할 수 있다.The number and arrangement of elements illustrated in Figure 1 are provided by way of example. There may be additional elements, fewer elements, different elements, and/or differently arranged elements than illustrated in FIG. 1 . Additionally or alternatively, at least one element of environment 100 may perform one or more functions described as being performed by at least one different element of FIG. 1 . Additionally or alternatively, at least one set of elements of environment 100 may perform one or more functions described as being performed by at least one different set of elements of environment 100.
이제 도 2를 참조하면, 차량(200)은 자율 주행 시스템(202), 파워트레인 제어 시스템(204), 조향 제어 시스템(206), 및 브레이크 시스템(208)을 포함한다. 일부 실시예들에서, 차량(200)은 차량(102)(도 1 참조)과 동일하거나 유사하다. 일부 실시예들에서, 차량(102)은 자율 주행 능력을 갖는다(예를 들면, 완전 자율 주행 차량들(예를 들면, 인간 개입에 의존하지 않는 차량들), 고도 자율 주행 차량들(예를 들면, 특정 상황들에서 인간 개입에 의존하지 않는 차량들) 등을, 제한 없이, 포함한, 차량(200)이 인간 개입 없이 부분적으로 또는 완전히 작동될 수 있게 하는 적어도 하나의 기능, 특징, 디바이스 등을 구현한다). 완전 자율 주행 차량들 및 고도 자율 주행 차량들에 대한 상세한 설명에 대해서는, 그 전체가 참고로 포함되는, SAE International's standard J3016: Taxonomy and Definitions for Terms Related to On-Road Motor Vehicle Automated Driving Systems를 참조할 수 있다. 일부 실시예들에서, 차량(200)은 자율 주행 플릿 관리자 및/또는 라이드 셰어링 회사와 연관된다. Referring now to FIG. 2 , vehicle 200 includes an
자율 주행 시스템(202)은 카메라들(202a), LiDAR 센서들(202b), 레이더 센서들(202c), 및 마이크로폰들(202d)과 같은 하나 이상의 디바이스들을 포함하는 센서 스위트(sensor suite)를 포함한다. 일부 실시예들에서, 자율 주행 시스템(202)은 보다 많거나 보다 적은 디바이스들 및/또는 상이한 디바이스들(예를 들면, 초음파 센서들, 관성 센서들, GPS 수신기들(아래에서 논의됨), 차량(200)이 주행한 거리의 표시와 연관된 데이터를 생성하는 주행 거리 측정 센서들 등)을 포함할 수 있다. 일부 실시예들에서, 자율 주행 시스템(202)은 자율 주행 시스템(202)에 포함된 하나 이상의 디바이스를 사용하여 본원에서 기술되는 환경(100)과 연관된 데이터를 생성한다. 자율 주행 시스템(202)의 하나 이상의 디바이스에 의해 생성되는 데이터는 차량(200)이 위치하는 환경(예를 들면, 환경(100))을 관측하기 위해 본원에 기술된 하나 이상의 시스템에 의해 사용될 수 있다. 일부 실시예들에서, 자율 주행 시스템(202)은 통신 디바이스(202e), 자율 주행 차량 컴퓨터(202f), 및 드라이브 바이 와이어(drive-by-wire, DBW) 시스템(202h)을 포함한다.
카메라들(202a)은 버스(예를 들면, 도 3의 버스(302)와 동일하거나 유사한 버스)를 통해 통신 디바이스(202e), 자율 주행 차량 컴퓨터(202f) 및/또는 안전 제어기(202g)와 통신하도록 구성된 적어도 하나의 디바이스를 포함한다. 카메라들(202a)은 물리적 대상체들(예를 들면, 자동차들, 버스들, 연석들, 사람들 등)을 포함하는 이미지들을 캡처하기 위한 적어도 하나의 카메라(예를 들면, CCD(charge-coupled device)와 같은 광 센서를 사용하는 디지털 카메라, 열 카메라, 적외선(IR) 카메라, 이벤트 카메라 등)를 포함한다. 일부 실시예들에서, 카메라(202a)는 카메라 데이터를 출력으로서 생성한다. 일부 예들에서, 카메라(202a)는 이미지와 연관된 이미지 데이터를 포함하는 카메라 데이터를 생성한다. 이 예에서, 이미지 데이터는 이미지에 대응하는 적어도 하나의 파라미터(예를 들면, 노출, 밝기 등과 같은 이미지 특성들, 이미지 타임스탬프 등)를 명시할 수 있다. 그러한 예에서, 이미지는 한 형식(예를 들면, RAW, JPEG, PNG 등)으로 되어 있을 수 있다. 일부 실시예들에서, 카메라(202a)는 입체시(stereopsis)(스테레오 비전(stereo vision))를 위해 이미지들을 캡처하도록 차량 상에 구성된(예를 들면, 차량 상에 위치된) 복수의 독립적인 카메라들을 포함한다. 일부 예들에서, 카메라(202a)는 복수의 카메라들을 포함하고, 이 복수의 카메라들은 이미지 데이터를 생성하고 이미지 데이터를 자율 주행 차량 컴퓨터(202f) 및/또는 플릿 관리 시스템(예를 들면, 도 1의 플릿 관리 시스템(116)과 동일하거나 유사한 플릿 관리 시스템)으로 송신한다. 그러한 예에서, 자율 주행 차량 컴퓨터(202f)는 적어도 2 개의 카메라로부터의 이미지 데이터에 기초하여 복수의 카메라들 중 적어도 2 개의 카메라의 시야 내의 하나 이상의 대상체까지의 깊이를 결정한다. 일부 실시예들에서, 카메라들(202a)은 카메라들(202a)로부터 일정 거리(예를 들면, 최대 100 미터, 최대 1 킬로미터 등) 내의 대상체들의 이미지들을 캡처하도록 구성된다. 그에 따라, 카메라들(202a)은 카메라들(202a)로부터 하나 이상의 거리에 있는 대상체들을 인지하도록 최적화된 센서들 및 렌즈들과 같은 특징부들을 포함한다.
일 실시예에서, 카메라(202a)는 시각적 내비게이션 정보를 제공하는 하나 이상의 교통 신호등, 거리 표지판 및/또는 다른 물리적 대상체와 연관된 하나 이상의 이미지를 캡처하도록 구성된 적어도 하나의 카메라를 포함한다. 일부 예들에서, 카메라(202a)는 한 형식(예를 들면, RAW, JPEG, PNG 등)을 포함하는 하나 이상의 이미지와 연관된 TLD 데이터를 생성한다. 일부 실시예들에서, TLD 데이터를 생성하는 카메라(202a)는, 카메라(202a)가 가능한 한 많은 물리적 대상체들에 관한 이미지들을 생성하기 위해 넓은 시야를 갖는 하나 이상의 카메라(예를 들면, 광각 렌즈, 어안 렌즈, 대략 120도 이상의 시야각을 갖는 렌즈 등)를 포함할 수 있다는 점에서, 카메라들을 포함하는 본원에 기술된 다른 시스템들과 상이하다.In one embodiment,
LiDAR(Laser Detection and Ranging) 센서들(202b)은 버스(예를 들면, 도 3의 버스(302)와 동일하거나 유사한 버스)를 통해 통신 디바이스(202e), 자율 주행 차량 컴퓨터(202f), 및/또는 안전 제어기(202g)와 통신하도록 구성된 적어도 하나의 디바이스를 포함한다. LiDAR 센서들(202b)은 광 방출기(예를 들면, 레이저 송신기)로부터 광을 송신하도록 구성된 시스템을 포함한다. LiDAR 센서들(202b)에 의해 방출되는 광은 가시 스펙트럼 밖에 있는 광(예를 들면, 적외선 광 등)을 포함한다. 일부 실시예들에서, 작동 동안, LiDAR 센서들(202b)에 의해 방출되는 광은 물리적 대상체(예를 들면, 차량)와 조우하고 LiDAR 센서들(202b)로 다시 반사된다. 일부 실시예들에서, LiDAR 센서들(202b)에 의해 방출되는 광은 광이 조우하는 물리적 대상체들을 투과하지 않는다. LiDAR 센서들(202b)은 광 방출기로부터 방출된 광이 물리적 대상체와 조우한 후에 그 광을 검출하는 적어도 하나의 광 검출기를 또한 포함한다. 일부 실시예들에서, LiDAR 센서들(202b)과 연관된 적어도 하나의 데이터 프로세싱 시스템은 LiDAR 센서들(202b)의 시야에 포함된 대상체들을 나타내는 이미지(예를 들면, 포인트 클라우드, 결합된 포인트 클라우드(combined point cloud) 등)를 생성한다. 일부 예들에서, LiDAR 센서(202b)와 연관된 적어도 하나의 데이터 프로세싱 시스템은 물리적 대상체의 경계들, 물리적 대상체의 표면들(예를 들면, 표면들의 토폴로지) 등을 나타내는 이미지를 생성한다. 그러한 예에서, 이미지는 LiDAR 센서들(202b)의 시야 내의 물리적 대상체들의 경계들을 결정하는 데 사용된다.Laser Detection and Ranging (LiDAR) sensors 202b are connected to the
레이더(radar; Radio Detection and Ranging) 센서들(202c)은 버스(예를 들면, 도 3의 버스(302)와 동일하거나 유사한 버스)를 통해 통신 디바이스(202e), 자율 주행 차량 컴퓨터(202f), 및/또는 안전 제어기(202g)와 통신하도록 구성된 적어도 하나의 디바이스를 포함한다. 레이더 센서들(202c)은 전파들을 (펄스형으로 또는 연속적으로) 송신하도록 구성된 시스템을 포함한다. 레이더 센서들(202c)에 의해 송신되는 전파들은 미리 결정된 스펙트럼 내에 있는 전파들을 포함한다. 일부 실시예들에서, 작동 동안, 레이더 센서들(202c)에 의해 송신되는 전파들은 물리적 대상체와 조우하고 레이더 센서들(202c)로 다시 반사된다. 일부 실시예들에서, 레이더 센서들(202c)에 의해 전송되는 전파들이 일부 대상체들에 의해 반사되지 않는다. 일부 실시예들에서, 레이더 센서들(202c)과 연관된 적어도 하나의 데이터 프로세싱 시스템은 레이더 센서들(202c)의 시야에 포함된 대상체들을 나타내는 신호들을 생성한다. 예를 들어, 레이더 센서(202c)와 연관된 적어도 하나의 데이터 프로세싱 시스템은 물리적 대상체의 경계들, 물리적 대상체의 표면들(예를 들면, 표면들의 토폴로지) 등을 나타내는 이미지를 생성한다. 일부 예들에서, 이미지는 레이더 센서들(202c)의 시야 내의 물리적 대상체들의 경계들을 결정하는 데 사용된다. Radar (Radio Detection and Ranging) sensors 202c are connected to
마이크로폰들(202d)은 버스(예를 들면, 도 3의 버스(302)와 동일하거나 유사한 버스)를 통해 통신 디바이스(202e), 자율 주행 차량 컴퓨터(202f) 및/또는 안전 제어기(202g)와 통신하도록 구성된 적어도 하나의 디바이스를 포함한다. 마이크로폰들(202d)은 오디오 신호들을 캡처하고 오디오 신호들과 연관된(예를 들면, 이를 나타내는) 데이터를 생성하는 하나 이상의 마이크로폰(예를 들면, 어레이 마이크로폰, 외부 마이크로폰 등)을 포함한다. 일부 예들에서, 마이크로폰들(202d)은 트랜스듀서 디바이스들 및/또는 유사 디바이스들을 포함한다. 일부 실시예들에서, 본원에 기술된 하나 이상의 시스템은 마이크로폰들(202d)에 의해 생성되는 데이터를 수신하고 데이터와 연관된 오디오 신호들에 기초하여 차량(200)에 상대적인 대상체의 위치(예를 들면, 거리 등)를 결정할 수 있다.
통신 디바이스(202e)는 카메라들(202a), LiDAR 센서들(202b), 레이더 센서들(202c), 마이크로폰들(202d), 자율 주행 차량 컴퓨터(202f), 안전 제어기(202g), 및/또는 DBW 시스템(202h)과 통신하도록 구성된 적어도 하나의 디바이스를 포함한다. 예를 들어, 통신 디바이스(202e)는 도 3의 통신 인터페이스(314)와 동일하거나 유사한 디바이스를 포함할 수 있다. 일부 실시예들에서, 통신 디바이스(202e)는 차량 대 차량(vehicle-to-vehicle, V2V) 통신 디바이스(예를 들면, 차량들 간의 데이터의 무선 통신을 가능하게 하는 디바이스)를 포함한다.
자율 주행 차량 컴퓨터(202f)는 카메라들(202a), LiDAR 센서들(202b), 레이더 센서들(202c), 마이크로폰들(202d), 통신 디바이스(202e), 안전 제어기(202g), 및/또는 DBW 시스템(202h)과 통신하도록 구성된 적어도 하나의 디바이스를 포함한다. 일부 예들에서, 자율 주행 차량 컴퓨터(202f)는 클라이언트 디바이스, 모바일 디바이스(예를 들면, 셀룰러 전화, 태블릿 등), 서버(예를 들면, 하나 이상의 중앙 프로세싱 유닛, 그래픽 프로세싱 유닛 등을 포함하는 컴퓨팅 디바이스) 등과 같은 디바이스를 포함한다. 일부 실시예들에서, 자율 주행 차량 컴퓨터(202f)는 본원에 기술된 자율 주행 차량 컴퓨터(400)와 동일하거나 유사하다. 추가적으로 또는 대안적으로, 일부 실시예들에서, 자율 주행 차량 컴퓨터(202f)는 자율 주행 차량 시스템(예를 들면, 도 1의 원격 AV 시스템(114)과 동일하거나 유사한 자율 주행 차량 시스템), 플릿 관리 시스템(예를 들면, 도 1의 플릿 관리 시스템(116)과 동일하거나 유사한 플릿 관리 시스템), V2I 디바이스(예를 들면, 도 1의 V2I 디바이스(110)와 동일하거나 유사한 V2I 디바이스), 및/또는 V2I 시스템(예를 들면, 도 1의 V2I 시스템(118)과 동일하거나 유사한 V2I 시스템)과 통신하도록 구성된다.
안전 제어기(202g)는 카메라들(202a), LiDAR 센서들(202b), 레이더 센서들(202c), 마이크로폰들(202d), 통신 디바이스(202e), 자율 주행 차량 컴퓨터(202f), 및/또는 DBW 시스템(202h)과 통신하도록 구성된 적어도 하나의 디바이스를 포함한다. 일부 예들에서, 안전 제어기(202g)는 차량(200)의 하나 이상의 디바이스(예를 들면, 파워트레인 제어 시스템(204), 조향 제어 시스템(206), 브레이크 시스템(208) 등)를 작동시키기 위한 제어 신호들을 생성 및/또는 송신하도록 구성된 하나 이상의 제어기(전기 제어기, 전기기계 제어기 등)를 포함한다. 일부 실시예들에서, 안전 제어기(202g)는 자율 주행 차량 컴퓨터(202f)에 의해 생성 및/또는 송신되는 제어 신호들보다 우선하는(예를 들면, 이를 무시하는) 제어 신호들을 생성하도록 구성된다.
DBW 시스템(202h)은 통신 디바이스(202e) 및/또는 자율 주행 차량 컴퓨터(202f)와 통신하도록 구성된 적어도 하나의 디바이스를 포함한다. 일부 예들에서, DBW 시스템(202h)은 차량(200)의 하나 이상의 디바이스(예를 들면, 파워트레인 제어 시스템(204), 조향 제어 시스템(206), 브레이크 시스템(208) 등)를 작동시키기 위한 제어 신호들을 생성 및/또는 송신하도록 구성된 하나 이상의 제어기(예를 들면, 전기 제어기, 전기기계 제어기 등)를 포함한다. 추가적으로 또는 대안적으로, DBW 시스템(202h)의 하나 이상의 제어기는 차량(200)의 적어도 하나의 상이한 디바이스(예를 들면, 방향 지시등, 헤드라이트, 도어록, 윈도실드 와이퍼 등)를 작동시키기 위한 제어 신호들을 생성 및/또는 송신하도록 구성된다.DBW system 202h includes at least one device configured to communicate with
파워트레인 제어 시스템(204)은 DBW 시스템(202h)과 통신하도록 구성된 적어도 하나의 디바이스를 포함한다. 일부 예들에서, 파워트레인 제어 시스템(204)은 적어도 하나의 제어기, 액추에이터 등을 포함한다. 일부 실시예들에서, 파워트레인 제어 시스템(204)은 DBW 시스템(202h)으로부터 제어 신호들을 수신하고, 파워트레인 제어 시스템(204)은 차량(200)이 전진하는 것을 시작하게 하고, 전진하는 것을 중지하게 하며, 후진하는 것을 시작하게 하고, 후진하는 것을 중지하게 하며, 한 방향으로 가속하게 하고, 한 방향으로 감속하게 하며, 좌회전을 수행하게 하고, 우회전을 수행하게 하는 등을 한다. 일 예에서, 파워트레인 제어 시스템(204)은 차량의 모터에 제공되는 에너지(예를 들면, 연료, 전기 등)가 증가하게 하거나, 동일하게 유지되게 하거나, 또는 감소하게 하여, 이에 의해 차량(200)의 적어도 하나의 바퀴가 회전하거나 회전하지 않게 한다. Powertrain control system 204 includes at least one device configured to communicate with DBW system 202h. In some examples, powertrain control system 204 includes at least one controller, actuator, etc. In some embodiments, powertrain control system 204 receives control signals from DBW system 202h, and powertrain control system 204 causes vehicle 200 to start moving forward and stop moving forward. start moving backwards, stop moving backwards, accelerate in one direction, decelerate in one direction, make a left turn, make a right turn, etc. In one example, the powertrain control system 204 causes the energy (e.g., fuel, electricity, etc.) provided to the vehicle's motor to increase, remain the same, or decrease, thereby causing the vehicle 200 ) at least one wheel rotates or does not rotate.
조향 제어 시스템(206)은 차량(200)의 하나 이상의 바퀴를 회전시키도록 구성된 적어도 하나의 디바이스를 포함한다. 일부 예들에서, 조향 제어 시스템(206)은 적어도 하나의 제어기, 액추에이터 등을 포함한다. 일부 실시예들에서, 조향 제어 시스템(206)은 차량(200)이 좌측 또는 우측으로 방향 전환하게 하기 위해 차량(200)의 전방 2 개의 바퀴 및/또는 후방 2 개의 바퀴가 좌측 또는 우측으로 회전하게 한다.
브레이크 시스템(208)은 차량(200)이 속력을 감소시키게 하고/하거나 정지해 있는 채로 유지하게 하기 위해 하나 이상의 브레이크를 작동시키도록 구성된 적어도 하나의 디바이스를 포함한다. 일부 예들에서, 브레이크 시스템(208)은 차량(200)의 대응하는 로터(rotor)에서 차량(200)의 하나 이상의 바퀴들과 연관된 하나 이상의 캘리퍼(caliper)가 닫히게 하도록 구성되는 적어도 하나의 제어기 및/또는 액추에이터를 포함한다. 추가적으로 또는 대안적으로, 일부 예들에서, 브레이크 시스템(208)은 자동 긴급 제동(automatic emergency braking, AEB) 시스템, 회생 제동 시스템 등을 포함한다.
일부 실시예들에서, 차량(200)은 차량(200)의 상태 또는 조건의 속성들을 측정 또는 추론하는 적어도 하나의 플랫폼 센서(명시적으로 예시되지 않음)를 포함한다. 일부 예들에서, 차량(200)은 GPS(global positioning system) 수신기, IMU(inertial measurement unit), 휠 속력 센서, 휠 브레이크 압력 센서, 휠 토크 센서, 엔진 토크 센서, 조향각 센서 등과 같은 플랫폼 센서들을 포함한다. In some embodiments, vehicle 200 includes at least one platform sensor (not explicitly illustrated) that measures or infers attributes of a state or condition of vehicle 200. In some examples, vehicle 200 includes platform sensors such as a global positioning system (GPS) receiver, inertial measurement unit (IMU), wheel speed sensor, wheel brake pressure sensor, wheel torque sensor, engine torque sensor, steering angle sensor, etc. .
이제 도 3을 참조하면, 디바이스(300)의 개략 다이어그램이 예시되어 있다. 예시된 바와 같이, 디바이스(300)는 프로세서(304), 메모리(306), 저장 컴포넌트(308), 입력 인터페이스(310), 출력 인터페이스(312), 통신 인터페이스(314), 및 버스(302)를 포함한다. 일부 실시예들에서, 디바이스(300)는 차량들(102)의 적어도 하나의 디바이스(예를 들면, 자율 주행 시스템(202)과 같은, 하지만 이에 한정되는 것은 아닌, 차량들(102)의 시스템의 적어도 하나의 디바이스), 및/또는 네트워크(112)의 하나 이상의 디바이스(예를 들면, 네트워크(112)의 시스템의 하나 이상의 디바이스)에 대응한다. 예를 들어, 일부 실시예들에서, 차량들(102)의 하나 이상의 디바이스(예를 들면, 자율 주행 시스템(202)과 같은, 하지만 이에 한정되는 것은 아닌, 차량들(102)의 시스템의 하나 이상의 디바이스), 및/또는 네트워크(112)의 하나 이상의 디바이스(예를 들면, 네트워크(112)의 시스템의 하나 이상의 디바이스)는 적어도 하나의 디바이스(300) 및/또는 디바이스(300)의 적어도 하나의 컴포넌트를 포함한다. Referring now to Figure 3, a schematic diagram of
버스(302)는 디바이스(300)의 컴포넌트들 간의 통신을 가능하게 하는 컴포넌트를 포함한다. 일부 실시예들에서, 프로세서(304)는 하드웨어, 소프트웨어, 또는 하드웨어와 소프트웨어의 조합으로 구현된다. 일부 예들에서, 프로세서(304)는 적어도 하나의 기능을 수행하도록 프로그래밍될 수 있는, 프로세서(예를 들면, 중앙 프로세싱 유닛(CPU), 그래픽 프로세싱 유닛(GPU), 가속 프로세싱 유닛(APU) 등), 마이크로폰, 디지털 신호 프로세서(DSP), 및/또는 임의의 프로세싱 컴포넌트(예를 들면, FPGA(field-programmable gate array), ASIC(application specific integrated circuit) 등)를 포함한다. 메모리(306)는 프로세서(304)가 사용할 데이터 및/또는 명령어들을 저장하는, 랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM), 및/또는 다른 유형의 동적 및/또는 정적 저장 디바이스(예를 들면, 플래시 메모리, 자기 메모리, 광학 메모리 등)를 포함한다.
저장 컴포넌트(308)는 디바이스(300)의 작동 및 사용에 관련된 데이터 및/또는 소프트웨어를 저장한다. 일부 예들에서, 저장 컴포넌트(308)는 하드 디스크(예를 들면, 자기 디스크, 광학 디스크, 광자기 디스크, 솔리드 스테이트 디스크 등), CD(compact disc), DVD(digital versatile disc), 플로피 디스크, 카트리지, 자기 테이프, CD-ROM, RAM, PROM, EPROM, FLASH-EPROM, NV-RAM 및/또는 다른 유형의 컴퓨터 판독 가능 매체를, 대응하는 드라이브와 함께, 포함한다.Storage component 308 stores data and/or software related to the operation and use of
입력 인터페이스(310)는 디바이스(300)가, 예컨대, 사용자 입력(예를 들면, 터치스크린 디스플레이, 키보드, 키패드, 마우스, 버튼, 스위치, 마이크로폰, 카메라 등)을 통해, 정보를 수신할 수 있게 하는 컴포넌트를 포함한다. 추가적으로 또는 대안적으로, 일부 실시예들에서, 입력 인터페이스(310)는 정보를 감지하는 센서(예를 들면, GPS(global positioning system) 수신기, 가속도계, 자이로스코프, 액추에이터 등)를 포함한다. 출력 인터페이스(312)는 디바이스(300)로부터의 출력 정보를 제공하는 컴포넌트(예를 들면, 디스플레이, 스피커, 하나 이상의 발광 다이오드(LED) 등)를 포함한다.Input interface 310 allows
일부 실시예들에서, 통신 인터페이스(314)는 디바이스(300)가 유선 연결, 무선 연결, 또는 유선 연결과 무선 연결의 조합을 통해 다른 디바이스들과 통신할 수 있게 하는 트랜시버 유사 컴포넌트(예를 들면, 트랜시버, 개별 수신기 및 송신기 등)를 포함한다. 일부 예들에서, 통신 인터페이스(314)는 디바이스(300)가 다른 디바이스로부터 정보를 수신하고/하거나 다른 디바이스에 정보를 제공할 수 있게 한다. 일부 예들에서, 통신 인터페이스(314)는 이더넷 인터페이스, 광학 인터페이스, 동축 인터페이스, 적외선 인터페이스, RF(radio frequency) 인터페이스, USB(universal serial bus) 인터페이스, Wi-Fi® 인터페이스, 셀룰러 네트워크 인터페이스 등을 포함한다. In some embodiments, communication interface 314 is a transceiver-like component that allows
일부 실시예들에서, 디바이스(300)는 본원에 기술된 하나 이상의 프로세스를 수행한다. 디바이스(300)는 프로세서(304)가, 메모리(306) 및/또는 저장 컴포넌트(308)와 같은, 컴퓨터 판독 가능 매체에 의해 저장된 소프트웨어 명령어들을 실행하는 것에 기초하여 이러한 프로세스들을 수행한다. 컴퓨터 판독 가능 매체(예를 들면, 비일시적 컴퓨터 판독 가능 매체)는 본원에서 비일시적 메모리 디바이스로서 정의된다. 비일시적 메모리 디바이스는 단일의 물리 저장 디바이스 내부에 위치한 메모리 공간 또는 다수의 물리 저장 디바이스들에 걸쳐 분산된 메모리 공간을 포함한다.In some embodiments,
일부 실시예들에서, 소프트웨어 명령어들은 통신 인터페이스(314)를 통해 다른 컴퓨터 판독 가능 매체로부터 또는 다른 디바이스로부터 메모리(306) 및/또는 저장 컴포넌트(308)로 판독된다. 실행될 때, 메모리(306) 및/또는 저장 컴포넌트(308)에 저장된 소프트웨어 명령어들은 프로세서(304)로 하여금 본원에 기술된 하나 이상의 프로세스를 수행하게 한다. 추가적으로 또는 대안적으로, 고정 배선(hardwired) 회로는 본원에 기술된 하나 이상의 프로세스를 수행하기 위해 소프트웨어 명령어들 대신에 또는 소프트웨어 명령어들과 결합하여 사용된다. 따라서, 본원에 기술된 실시예들은, 달리 명시적으로 언급되지 않는 한, 하드웨어 회로와 소프트웨어의 임의의 특정 조합으로 제한되지 않는다.In some embodiments, software instructions are read into
메모리(306) 및/또는 저장 컴포넌트(308)는 데이터 스토리지 또는 적어도 하나의 데이터 구조(예를 들면, 데이터베이스 등)를 포함한다. 디바이스(300)는 데이터 스토리지 또는 메모리(306) 또는 저장 컴포넌트(308) 내의 적어도 하나의 데이터 구조로부터 정보를 수신하는 것, 그에 정보를 저장하는 것, 그에게로 정보를 통신하는 것, 또는 그에 저장된 정보를 검색하는 것을 할 수 있다. 일부 예들에서, 정보는 네트워크 데이터, 입력 데이터, 출력 데이터, 또는 이들의 임의의 조합을 포함한다.
일부 실시예들에서, 디바이스(300)는 메모리(306)에 그리고/또는 다른 디바이스(예를 들면, 디바이스(300)와 동일하거나 유사한 다른 디바이스)의 메모리에 저장된 소프트웨어 명령어들을 실행하도록 구성된다. 본원에서 사용되는 바와 같이, "모듈"이라는 용어는, 프로세서(304)에 의해 그리고/또는 다른 디바이스(예를 들면, 디바이스(300)와 동일하거나 유사한 다른 디바이스)의 프로세서에 의해 실행될 때, 디바이스(300)(예를 들면, 디바이스(300)의 적어도 하나의 컴포넌트)로 하여금 본원에 기술된 하나 이상의 프로세스를 수행하게 하는 메모리(306)에 그리고/또는 다른 디바이스의 메모리에 저장된 적어도 하나의 명령어를 지칭한다. 일부 실시예들에서, 모듈은 소프트웨어, 펌웨어, 하드웨어 등으로 구현된다. In some embodiments,
도 3에 예시된 컴포넌트들의 수 및 배열은 예로서 제공된다. 일부 실시예들에서, 디바이스(300)는 도 3에 예시된 것보다, 추가적인 컴포넌트들, 더 적은 컴포넌트들, 상이한 컴포넌트들, 또는 상이하게 배열된 컴포넌트들을 포함할 수 있다. 추가적으로 또는 대안적으로, 디바이스(300)의 컴포넌트 세트(예를 들면, 하나 이상의 컴포넌트)는 디바이스(300)의 다른 컴포넌트 또는 다른 컴포넌트 세트에 의해 수행되는 것으로 기술된 하나 이상의 기능을 수행할 수 있다.The number and arrangement of components illustrated in Figure 3 are provided as examples. In some embodiments,
이제 도 4를 참조하면, 자율 주행 차량 컴퓨터(400)(때때로 "AV 스택"이라고 지칭됨)의 예시적인 블록 다이어그램이 예시되어 있다. 예시된 바와 같이, 자율 주행 차량 컴퓨터(400)는 인지 시스템(402)(때때로 인지 모듈이라고 지칭됨), 계획 시스템(404)(때때로 계획 모듈이라고 지칭됨), 로컬화 시스템(406)(때때로 로컬화 모듈이라고 지칭됨), 제어 시스템(408)(때때로 제어 모듈이라고 지칭됨) 및 데이터베이스(410)를 포함한다. 일부 실시예들에서, 인지 시스템(402), 계획 시스템(404), 로컬화 시스템(406), 제어 시스템(408) 및 데이터베이스(410)는 차량의 자율 주행 운행 시스템(예를 들면, 차량(200)의 자율 주행 차량 컴퓨터(202f))에 포함 및 구현된다. 추가적으로 또는 대안적으로, 일부 실시예들에서, 인지 시스템(402), 계획 시스템(404), 로컬화 시스템(406), 제어 시스템(408), 및 데이터베이스(410)는 하나 이상의 독립형 시스템(예를 들면, 자율 주행 차량 컴퓨터(400) 등과 동일하거나 유사한 하나 이상의 시스템)에 포함된다. 일부 예들에서, 인지 시스템(402), 계획 시스템(404), 로컬화 시스템(406), 제어 시스템(408), 및 데이터베이스(410)는 본원에 기술된 바와 같이 차량 및/또는 적어도 하나의 원격 시스템에 위치하는 하나 이상의 독립형 시스템에 포함된다. 일부 실시예들에서, 자율 주행 차량 컴퓨터(400)에 포함된 시스템들 중 일부 및/또는 전부는 소프트웨어(예를 들면, 메모리에 저장된 소프트웨어 명령어들), 컴퓨터 하드웨어(예를 들면, 마이크로프로세서, 마이크로컨트롤러, ASIC(application-specific integrated circuit), FPGA(Field Programmable Gate Array) 등), 또는 컴퓨터 소프트웨어와 컴퓨터 하드웨어의 조합으로 구현된다. 일부 실시예들에서, 자율 주행 차량 컴퓨터(400)가 원격 시스템(예를 들면, 원격 AV 시스템(114)과 동일하거나 유사한 자율 주행 차량 시스템, 플릿 관리 시스템(116)과 동일하거나 유사한 플릿 관리 시스템, V2I 시스템(118)과 동일하거나 유사한 V2I 시스템 등)과 통신하도록 구성된다는 것이 또한 이해될 것이다.Referring now to Figure 4, an example block diagram of autonomous vehicle computer 400 (sometimes referred to as the “AV stack”) is illustrated. As illustrated, autonomous vehicle computer 400 includes a cognitive system 402 (sometimes referred to as a cognitive module), a planning system 404 (sometimes referred to as a planning module), and a localization system 406 (sometimes referred to as a localization module). (sometimes referred to as a control module), a control system 408 (sometimes referred to as a control module), and a database 410. In some embodiments, the
일부 실시예들에서, 인지 시스템(402)은 환경에서의 적어도 하나의 물리적 대상체와 연관된 데이터(예를 들면, 적어도 하나의 물리적 대상체를 검출하기 위해 인지 시스템(402)에 의해 사용되는 데이터)를 수신하고 적어도 하나의 물리적 대상체를 분류한다. 일부 예들에서, 인지 시스템(402)은 적어도 하나의 카메라(예를 들면, 카메라들(202a))에 의해 캡처되는 이미지 데이터를 수신하고, 이미지는 적어도 하나의 카메라의 시야 내의 하나 이상의 물리적 대상체와 연관되어 있다(예를 들면, 이를 표현한다). 그러한 예에서, 인지 시스템(402)은 물리적 대상체들(예를 들면, 자전거들, 차량들, 교통 표지판들, 보행자들 등)의 하나 이상의 그룹화에 기초하여 적어도 하나의 물리적 대상체를 분류한다. 일부 실시예들에서, 인지 시스템(402)이 물리적 대상체들을 분류하는 것에 기초하여 인지 시스템(402)은 물리적 대상체들의 분류와 연관된 데이터를 계획 시스템(404)으로 송신한다. In some embodiments,
일부 실시예들에서, 계획 시스템(404)은 목적지와 연관된 데이터를 수신하고 차량(예를 들면, 차량들(102))이 목적지를 향해 주행할 수 있는 적어도 하나의 루트(예를 들면, 루트들(106))와 연관된 데이터를 생성한다. 일부 실시예들에서, 계획 시스템(404)은 인지 시스템(402)으로부터의 데이터(예를 들면, 위에서 기술된, 물리적 대상체들의 분류와 연관된 데이터)를 주기적으로 또는 연속적으로 수신하고, 계획 시스템(404)은 인지 시스템(402)에 의해 생성되는 데이터에 기초하여 적어도 하나의 궤적을 업데이트하거나 적어도 하나의 상이한 궤적을 생성한다. 일부 실시예들에서, 계획 시스템(404)은 로컬화 시스템(406)으로부터 차량(예를 들면, 차량들(102))의 업데이트된 위치와 연관된 데이터를 수신하고, 계획 시스템(404)은 로컬화 시스템(406)에 의해 생성되는 데이터에 기초하여 적어도 하나의 궤적을 업데이트하거나 적어도 하나의 상이한 궤적을 생성한다. In some embodiments, planning system 404 receives data associated with a destination and determines at least one route (e.g., routes) along which a vehicle (e.g., vehicles 102) can travel toward the destination. (106)) and generate data associated with it. In some embodiments, planning system 404 periodically or continuously receives data from cognitive system 402 (e.g., data associated with classification of physical objects, as described above), and planning system 404 ) updates at least one trajectory or creates at least one different trajectory based on data generated by the
일부 실시예들에서, 로컬화 시스템(406)은 한 영역에서의 차량(예를 들면, 차량들(102))의 한 위치와 연관된(예를 들면, 이를 나타내는) 데이터를 수신한다. 일부 예들에서, 로컬화 시스템(406)은 적어도 하나의 LiDAR 센서(예를 들면, LiDAR 센서들(202b))에 의해 생성되는 적어도 하나의 포인트 클라우드와 연관된 LiDAR 데이터를 수신한다. 특정 예들에서, 로컬화 시스템(406)은 다수의 LiDAR 센서들로부터의 적어도 하나의 포인트 클라우드와 연관된 데이터를 수신하고 로컬화 시스템(406)은 포인트 클라우드들 각각에 기초하여 결합된 포인트 클라우드를 생성한다. 이러한 예들에서, 로컬화 시스템(406)은 적어도 하나의 포인트 클라우드 또는 결합된 포인트 클라우드를 데이터베이스(410)에 저장되어 있는 해당 영역의 2차원(2D) 및/또는 3차원(3D) 맵과 비교한다. 로컬화 시스템(406)이 적어도 하나의 포인트 클라우드 또는 결합된 포인트 클라우드를 맵과 비교하는 것에 기초하여 로컬화 시스템(406)은 이어서 해당 영역에서의 차량의 위치를 결정한다. 일부 실시예들에서, 맵은 차량의 운행 이전에 생성되는 해당 영역의 결합된 포인트 클라우드를 포함한다. 일부 실시예들에서, 맵은, 제한 없이, 도로 기하학적 특성들의 고정밀 맵, 도로 네트워크 연결 특성들을 기술하는 맵, 도로 물리적 특성들(예컨대, 교통 속력, 교통량, 차량 교통 차선과 자전거 타는 사람 교통 차선의 수, 차선 폭, 차선 교통 방향, 또는 차선 마커 유형 및 위치, 또는 이들의 조합)을 기술하는 맵, 및 도로 특징부, 예컨대, 횡단보도, 교통 표지판 또는 다양한 유형의 다른 주행 신호들의 공간적 위치들을 기술하는 맵을 포함한다. 일부 실시예들에서, 맵은 인지 시스템에 의해 수신되는 데이터에 기초하여 실시간으로 생성된다.In some embodiments,
다른 예에서, 로컬화 시스템(406)은 GPS(global positioning system) 수신기에 의해 생성되는 GNSS(Global Navigation Satellite System) 데이터를 수신한다. 일부 예들에서, 로컬화 시스템(406)은 해당 영역 내에서의 차량의 위치와 연관된 GNSS 데이터를 수신하고 로컬화 시스템(406)은 해당 영역 내에서의 차량의 위도 및 경도를 결정한다. 그러한 예에서, 로컬화 시스템(406)은 차량의 위도 및 경도에 기초하여 해당 영역에서의 차량의 위치를 결정한다. 일부 실시예들에서, 로컬화 시스템(406)은 차량의 위치와 연관된 데이터를 생성한다. 일부 예들에서, 로컬화 시스템(406)이 차량의 위치를 결정하는 것에 기초하여 로컬화 시스템(406)은 차량의 위치와 연관된 데이터를 생성한다. 그러한 예에서, 차량의 위치와 연관된 데이터는 차량의 위치에 대응하는 하나 이상의 시맨틱 특성과 연관된 데이터를 포함한다. In another example,
일부 실시예들에서, 제어 시스템(408)은 계획 시스템(404)으로부터 적어도 하나의 궤적과 연관된 데이터를 수신하고 제어 시스템(408)은 차량의 작동을 제어한다. 일부 예들에서, 제어 시스템(408)은 계획 시스템(404)으로부터 적어도 하나의 궤적과 연관된 데이터를 수신하고, 제어 시스템(408)은 파워트레인 제어 시스템(예를 들면, DBW 시스템(202h), 파워트레인 제어 시스템(204) 등), 조향 제어 시스템(예를 들면, 조향 제어 시스템(206)) 및/또는 브레이크 시스템(예를 들면, 브레이크 시스템(208))이 작동하게 하는 제어 신호들을 생성하여 송신하는 것에 의해 차량의 작동을 제어한다. 궤적이 좌회전을 포함하는 예에서, 제어 시스템(408)은 조향 제어 시스템(206)으로 하여금 차량(200)의 조향각을 조정하게 함으로써 차량(200)이 좌회전하게 하는 제어 신호를 송신한다. 추가적으로 또는 대안적으로, 제어 시스템(408)은 차량(200)의 다른 디바이스들(예를 들면, 헤드라이트, 방향 지시등, 도어록, 윈도실드 와이퍼 등)로 하여금 상태들을 변경하게 하는 제어 신호들을 생성하여 송신한다.In some embodiments,
일부 실시예들에서, 인지 시스템(402), 계획 시스템(404), 로컬화 시스템(406), 및/또는 제어 시스템(408)은 적어도 하나의 머신 러닝 모델(예를 들면, 적어도 하나의 다층 퍼셉트론(MLP), 적어도 하나의 콘볼루션 신경 네트워크(CNN), 적어도 하나의 순환 신경 네트워크(RNN), 적어도 하나의 오토인코더, 적어도 하나의 트랜스포머(transformer) 등)을 구현한다. 일부 예들에서, 인지 시스템(402), 계획 시스템(404), 로컬화 시스템(406), 및/또는 제어 시스템(408)은 단독으로 또는 위에서 언급된 시스템들 중 하나 이상과 조합하여 적어도 하나의 머신 러닝 모델을 구현한다. 일부 예에서, 인지 시스템(402), 계획 시스템(404), 로컬화 시스템(406), 및/또는 제어 시스템(408)은 파이프라인(예를 들면, 환경에 위치한 하나 이상의 대상체를 식별하기 위한 파이프라인 등)의 일부로서 적어도 하나의 머신 러닝 모델을 구현한다. In some embodiments,
데이터베이스(410)는 인지 시스템(402), 계획 시스템(404), 로컬화 시스템(406) 및/또는 제어 시스템(408)으로 송신되며, 이들로부터 수신되고/되거나 이들에 의해 업데이트되는 데이터를 저장한다. 일부 예들에서, 데이터베이스(410)는 작동에 관련된 데이터 및/또는 소프트웨어를 저장하고 자율 주행 차량 컴퓨터(400)의 적어도 하나의 시스템을 사용하는 저장 컴포넌트(예를 들면, 도 3의 저장 컴포넌트(308)와 동일하거나 유사한 저장 컴포넌트)를 포함한다. 일부 실시예들에서, 데이터베이스(410)는 적어도 하나의 영역의 2D 및/또는 3D 맵과 연관된 데이터를 저장한다. 일부 예들에서, 데이터베이스(410)는 도시의 일 부분, 다수의 도시들의 다수의 부분들, 다수의 도시들, 카운티, 주, 국가(State)(예를 들면, 나라(country)) 등의 2D 및/또는 3D 맵과 연관된 데이터를 저장한다. 그러한 예에서, 차량(예를 들면, 차량들(102) 및/또는 차량(200)과 동일하거나 유사한 차량)은 하나 이상의 운전 가능한 영역(예를 들면, 단일 차선 도로, 다중 차선 도로, 간선도로, 시골 길(back road), 오프로드 트레일 등)을 따라 운전할 수 있고, 적어도 하나의 LiDAR 센서(예를 들면, LiDAR 센서들(202b)과 동일하거나 유사한 LiDAR 센서)로 하여금 적어도 하나의 LiDAR 센서의 시야에 포함된 대상체들을 나타내는 이미지와 연관된 데이터를 생성하게 할 수 있다. Database 410 stores data transmitted to, received from, and/or updated by
일부 실시예들에서, 데이터베이스(410)는 복수의 디바이스들에 걸쳐 구현될 수 있다. 일부 예들에서, 데이터베이스(410)는 차량(예를 들면, 차량들(102) 및/또는 차량(200)과 동일하거나 유사한 차량), 자율 주행 차량 시스템(예를 들면, 원격 AV 시스템(114)과 동일하거나 유사한 자율 주행 차량 시스템), 플릿 관리 시스템(예를 들면, 도 1의 플릿 관리 시스템(116)과 동일하거나 유사한 플릿 관리 시스템), V2I 시스템(예를 들면, 도 1의 V2I 시스템(118)과 동일하거나 유사한 V2I 시스템) 등에 포함될 수 있다. In some embodiments, database 410 may be implemented across multiple devices. In some examples, database 410 may be configured to include vehicles (e.g., vehicles identical or similar to vehicles 102 and/or vehicles 200), autonomous vehicle systems (e.g., remote AV systems 114 and the same or similar autonomous vehicle system), a fleet management system (e.g., the same or similar fleet management system as the fleet management system 116 of FIG. 1), a V2I system (e.g., the V2I system 118 of FIG. 1) may be included in the same or similar V2I system), etc.
이제 도 5를 참조하면, 차량 루트 상의 대상체 횡단을 예측 및 제어하기 위한 프로세스의 구현(500)의 다이어그램이 예시되어 있다. 일부 구현에서, 구현(500)은 자율 주행 차량 컴퓨터(504)를 포함한 차량(502) 및 차량(506)을 포함한다. 일부 실시예에서, 차량(502)은 차량(102a-102n) 또는 차량(200)과 동일하거나 유사하고, 자율 주행 차량 컴퓨터(504)는 자율 주행 차량 컴퓨터(202f, 400)와 동일하거나 유사하고, 대상체(506)는 대상체(104a-104n)와 동일하거나 유사하다. Referring now to Figure 5, a diagram of an
일부 실시예에서, 차량(502)은 차량(502)을 둘러싼 환경에 대한 센서 정보를 차량이 수집할 수 있도록 해주는 센서 스위트를 갖는다. 예를 들어, 차량(502)은 차량(502)을 둘러싸고 있는 대상체(506)에 대한 센서 정보를 수집하는 이미징 디바이스(예컨대, 카메라), LiDAR 센서, 레이더 센서, 마이크로폰, GPS 등과 같은 디바이스를 포함할 수 있지만, 이에 한정되는 것은 아니다. 센서 정보는 차량(502) 상의 이미징 디바이스 및/또는 LiDAR 센서에 의해 각각 캡처되는 대상체(506) 및 주변 환경의 캡처된 이미지 및/또는 포인트 클라우드 이미지를 포함할 수 있다. 센서 정보의 다른 예는 대상체(506)를 향해 레이더 센서에 의해 전송된 전파에 응답하여 레이더 센서에 의해 생성되는 대상체(506)를 표현하는 레이더 신호를 포함한다. 대상체는 차량, 보행자, 자전거 타는 사람 등일 수 있다. In some embodiments,
일부 실시예에서, 차량(502)의 AV 컴퓨터(504)는 차량(502)의 센서 스위트로부터 수신된 센서 정보에 기초하여 차량(502)의 궤적(예컨대, 대안으로서 루트로 지칭됨)(512) 및 대상체(506)의 궤적(514)을 예측한다(예컨대, 내부의 ML 모델을 사용함). 일부 경우에, AV 컴퓨터(504)는 미리 결정된 시간대(time horizon) 동안 궤적(512) 및 궤적(514)을 예측하며, 미리 결정된 시간대는 약 2초 내지 약 16초, 약 4초 내지 약 12초, 약 6초 내지 약 10초, 약 8 초 범위(그 사이의 값 및 하위 범위를 포함함)일 수 있고, AV 컴퓨터(504)는 미리 결정된 시간대와 적어도 실질적으로 동일한 기간으로 주기적으로 계속해서 그리 한다. 예를 들어, 미리 결정된 시간대가 약 8초인 경우, AV 컴퓨터(504)는 8초 동안 궤적(512) 및 궤적(514)을 예측하고, 8초마다 궤적(512) 및 궤적(514)을 계속해서 업데이트하거나 예측한다.In some embodiments,
일부 실시예에서, 궤적(512) 및 궤적(514)은 차량(502) 및 대상체(506)의 속도 벡터를 포함하며, 속도 벡터는 시작 시공간 위치 P1a(508a) 및 시작 시공간 위치 P2a(510a)로부터 각각 차량(502) 및 대상체(506)의 이동의 속력 및 방향(예컨대, 헤딩 각도)을 나타낸다. 시공간 위치는 차량(502) 또는 대상체(506)의 포지션을 포함하고, 일부 경우에는 이 포지션에서 그의 타임스탬프를 포함한다. 궤적(512) 및 궤적(514)에 적어도 부분적으로 기초하여, AV 컴퓨터(504)는 각각 차량(502) 및 대상체(506)의 미래 시공간 위치를 결정할 수 있다. 예를 들어, AV 컴퓨터(504)는 궤적(512) 및 궤적(514)에 적어도 부분적으로 기초하여 각자의 궤적 또는 루트가 교차할 때 차량(502) 및 대상체(506)의 미래 포지션 및 그의 타임스탬프를 계산할 수 있다. 도 5를 참조하면, AV 컴퓨터(504)는 궤적(512)과 궤적(514)이 교차할 때 차량(502) 및 대상체(506)의 미래 시공간 위치 P1b(508b) 및 P2b(510b)를 각각 결정할 수 있다. In some embodiments,
각각 궤적(512) 및 궤적(514)을 따른 차량(502) 및 대상체(506)의 시공간 위치의 포지션 뿐만 아니라, 궤적(512)과 궤적(514)의 교차점의 위치도 차량(502) 및 대상체(506)의 물리적 치수(예컨대, 길이, 폭 등)에 의존할 수 있다. 일부 경우에, 예를 들어 교차점을 통과하는 차량(502)과 대상체(506) 사이의 시간 차이가 클 때, AV 컴퓨터(504)(예컨대, 그 안에서 실행되는 머신 러닝 모델)는 차량(502) 및 대상체(506)를 포인트 개체로서 모델링할 수 있고, 그리하여 포인트의 포지션은 각각 궤적(512) 및 궤적(514)을 따른 차량(502) 및 대상체(506)의 시공간 위치를 나타낼 수 있다. 다른 예로서, 특히 차량(502)과 대상체(506)가 짧은 기간 내에 교차점을 통과할 때, AV 컴퓨터(504)는 차량(502) 및 대상체(506)를 2차원(예컨대, 정사각형, 직사각형 등) 또는 3차원 개체로서 모델링할 수 있다. 그러면 AV 컴퓨터(504)는 2D 또는 3D 개체의 임의의 포인트(예를 들어, 앞, 중간, 뒤 등)를 차량(502) 및 대상체(506)의 시공간 위치의 포지션으로서 사용할 수 있다. 예를 들어, AV 컴퓨터(504)는, 차량(502)을 나타내는 2D 또는 3D 개체의 맨 앞 포인트를 차량(502)의 시공간 위치의 포지션으로서 사용하고, 대상체(506)를 나타내는 2D 또는 3D 개체의 맨 뒤 포인트를 대상체(506)의 시공간 위치의 포지션으로서 사용할 수 있다. 이러한 경우에, AV 컴퓨터(504)는 맨 뒤 포인트가 교차점에 도달하기 전에 맨 앞 포인트가 궤적(512)과 궤적(514)의 교차점을 통과할 때 대상체(506)가 차량(502)을 횡단했다고(예컨대, 충돌 없이) 결정할 수 있다. Not only the positions of the space-time positions of the
일부 실시예에서, AV 컴퓨터(504)는 궤적(512)과 궤적(514)이 교차할 때 차량(502) 및 대상체(506)의 시공간 위치를 결정하고 비교함으로써 대상체(506)가 차량(502)을 횡단하는지 여부를 결정한다. 위에 언급된 바와 같이, AV 컴퓨터(504)는 궤적(512)에 기초하여 차량(502)의 시공간 위치 P1b(508b)를 그리고 궤적(514)에 기초하여 대상체(506)의 시공간 위치 P2b(510b)를 결정하며, 시공간 위치 P1b(508b) 및 P2b(510b)는 궤적(512)과 궤적(514)이 교차할 때 차량(502) 및 대상체(506)의 예측된 시공간 위치이다. 그러면, AV 컴퓨터(504)는, 궤적(512)과 궤적(514)의 교차점에 차량(502)의 도달보다 먼저 대상체(506)가 동일한 교차점을 통과한 경우, 그리고 시공간 위치 P1b(508b) 및 P2b(510b)와 연관된 포지션 및 타임스탬프 사이의 차이가 각자의 임계값을 충족시키는 경우, 대상체(506)가 차량(502)을 횡단했다고 결정한다. In some embodiments,
예를 들어, AV 컴퓨터(504)는, 교차점 P1b(508b)에 차량(502)의 도달보다 먼저 대상체(506)가 동일한 교차점을 통과했다고 결정한다. 또한, AV 컴퓨터(504)는 시공간 위치 P1b(508b) 및 P2b(510b)와 연관된 포지션 사이의 거리 차이가 거리 임계값을 충족시킨다고(예컨대, 거리 임계값 미만임) 결정한다. 또한, AV 컴퓨터(504)는 또한 시공간 위치 P1b(508b) 및 P2b(510b)와 연관된 타임스탬프 사이의 시간 차이가 시간 임계값을 충족시킨다고(예컨대, 시간 임계값 미만임) 결정한다. AV 컴퓨터(504)는, 거리 차이와 시간 차이 둘 다 각자의 임계값을 충족시킨 경우(예컨대, 거리 차이 및 시간 차이가 각각 거리 임계값 및 시간 임계값 미만임) 대상체(506)가 차량(502)을 횡단했다고 결정하고, 궤적(512)과 궤적(514)의 교차점에 차량(502)의 도달 전에 먼저 대상체(506)가 동일한 교차점을 통과했다고 결정한다. 거리 차이 및 시간 차이가 각자의 임계값 미만이라는 조건은, 대상체(506)가 통과한 오랜 시간(예컨대, 임계 시간보다 긴) 후에 차량(502)이 교차점을 통과하는 시나리오를 AV 컴퓨터(504)가 걸러낼 수 있게 한다. For example, the
일부 실시예에서, 거리 차이 및 시간 차이가 각자의 임계값을 충족시키지 않았을 수 있고(예컨대, 거리 차이 및 시간 차이는 각각 거리 임계값 및 시간 임계값보다 클 수 있음), AV 컴퓨터(504)는 교차점이 횡단보도의 일부이거나 적어도 실질적으로 횡단보도에 가까운 경우 여전히 대상체(506)를 차량(502)을 횡단한 것으로서 간주할 수 있다. 예를 들어, 횡단보도에 정지한 차량(502)은 대상체(506)가 횡단보도를 건넌 이후 시간 임계값보다 긴 시간이 경과한 후에 다시 움직이기 시작할 수 있다(예컨대, 그리고 차량(502)과 같이). 또다른 예로서, 대상체(506)는 대상체(506)가 횡단보도를 건넌 이후 거리 임계값보다 긴 거리를 이동했을 수 있다(예컨대, 그리고 차량(502)과 같이). 이러한 경우에, 거리 차이 및/또는 시간 차이가 각자의 임계값보다 크더라도, AV 컴퓨터(504)는 이 횡단을 유효 횡단으로서 간주할 수 있다(예컨대, AV 컴퓨터(504)는 횡단보도와 연관된 거리 임계값 및/또는 시간 임계값을 더 높게 설정할 수 있으며, 그리하여 횡단보도에 정지한 차량을 횡단하는 대부분 또는 모든 대상체는 유효 횡단을 수행한 것으로서 간주됨). In some embodiments, the distance difference and time difference may not have met their respective thresholds (e.g., the distance difference and time difference may be greater than the distance threshold and time threshold, respectively), and
일부 실시예에서, AV 컴퓨터(504)는, 궤적(512)과 궤적(514)이 교차하지 않았거나, 궤적(512)과 궤적(514)의 교차점에 차량(502)의 도달 전에 먼저 대상체(506)가 동일한 교차점을 통과하지 않았거나, 그리고/또는 거리 차이와 시간 차이 중 하나 또는 둘 다가 각자의 임계값을 충족시키지 못하는 경우, 대상체(506)가 차량(502)을 횡단하지 않았다고 결정한다. In some embodiments,
일부 실시예에서, AV 컴퓨터(504)는, 예측된 궤적(512 및 514)을 차량(502) 및 대상체(506)의 각자의 "실측" 궤적과 비교함으로써, 대상체(506)가 차량(502)을 횡단했거나 횡단하지 않았다는 결정이 각각 거짓 긍정인지 또는 거짓 부정인지 여부를 확립할 수 있다. 거짓 긍정 대상체 횡단은, 예를 들어 위에 설명된 바와 같이, 예측된 궤적(512 및 514)은 대상체(506)가 차량(502)을 횡단함을 나타내지만, 차량(502) 및 대상체(506)의 실측 궤적은 대상체(506)가 차량(502)을 횡단하지 않음을 나타낼 때를 지칭한다. 거짓 부정 대상체 횡단은, 예측된 궤적(512 및 514)은 대상체(506)가 차량(502)을 횡단하지 않음을 나타내지만, 차량(502) 및 대상체(506)의 실측 궤적은 대상체(506)가 차량(502)을 횡단함을 나타낼 때를 지칭한다. In some embodiments,
일부 실시예에서, 위에 설명된 바와 같이, AV 컴퓨터(504)는 거짓 긍정 및/또는 거짓 부정 대상체 횡단과 연관되어 있는 궤적(512) 및 궤적(514)의 예측을 식별하고, 차량(502) 및 대상체(506)에 대한 궤적 예측 세트로부터 이들 "거짓 대상체 횡단" 예측을 걸러낸다. AV 컴퓨터(504)는, 차량(502) 및 대상체(506)에 대한 궤적(예컨대, 궤적(512) 및 궤적(514))을 예측하는 머신 러닝 모델을 트레이닝하기 위해, "거짓 대상체 횡단" 예측과 연관된 걸러진 궤적 세트 및/또는 예측된 궤적의 나머지를 사용할 수 있다. 예를 들어, AV 컴퓨터(504)는 대상체(506)가 차량(502)을 횡단할 확률을 예측하기 위해 머신 러닝 모델을 트레이닝할 수 있다. 다른 예로서, AV 컴퓨터(504)는 예측된 차량 및 대상체 궤적이 거짓 긍정 또는 거짓 부정 대상체 횡단과 연관될 확률을 계산하기 위해 머신 러닝 모델을 트레이닝할 수 있다. In some embodiments, as described above,
일부 실시예에서, AV 컴퓨터(504)는 예측된 궤적(512) 및/또는 예측된 궤적(514)에 기초하여 차량(502)의 이동 또는 움직임을 제어하기 위한 차량 제어를 결정한다. 차량 제어의 예는, 차량(502)의 속력 변경(예컨대, 속력 증가 또는 감소), 차량(502)의 속력 유지, 차량(502)의 이동 방향 변경, 차량(502)의 방향 유지 등을 포함하지만, 이에 한정되는 것은 아니다. 예를 들어, 위에 설명된 바와 같이, AV 컴퓨터(504)는 차량(502)의 궤적(512) 및 대상체(506)의 궤적(514)을 예측하고, 대상체(506)가 차량(502)을 횡단할 것이라고 결정할 수 있다. 이러한 경우에, AV 컴퓨터(504)는 예측된 궤적(512, 514)(예컨대, 그리고 예측에 기초하여 예를 들어 대상체(506)가 차량(502)을 횡단한다는 결정)에 기초하여 차량(502)의 이동을 제어하기 위한 차량 제어를 결정할 수 있다. 예를 들어, 차량 제어는 차량(502)이 대상체(506)의 궤적(518)을 횡단하는 궤적(516)을 갖도록 차량(502)의 이동 방향 및 속력을 변경하는 것을 포함할 수 있다. 즉, AV 컴퓨터(504)는, 차량(502)이 궤적(516 및 518)의 교차점(예컨대, 대상체(506)의 시공간 위치 P2c(510c)에 대응함)을 통과한 후 시공간 위치 P1c(508c)에 있을 때 차량(502)의 궤적(516)이 대상체(506)의 시공간 위치 P2c(510c)에서 대상체(506)의 궤적(518)과 교차하도록, 차량(502)의 이동을 제어하기 위해 구성되는 차량 제어를 결정한다. In some embodiments,
일부 실시예에서, 차량 컴퓨터(504)는, 차량 제어, 차량(502)의 예측된 궤적(512), 대상체(506)의 예측된 궤적(514), 차량 제어의 결과인 차량(502)의 실제 궤적(516), 및/또는 대상체(506)의 실제 궤적(518)에 기초하여 내부에서 구현되는 머신 러닝 모델을 트레이닝한다. 예를 들어, 머신 러닝 모델은 차량(502) 및/또는 대상체(506)의 궤적에 대해 예측하거나 개선된 예측을 행하도록 트레이닝될 수 있다. 또한, 다른 예로서, 머신 러닝 모델은, 대상체(506)가 차량(502)을 횡단할 가능성, 즉 차량(502) 및 대상체(506)의 궤적의 교차점에 차량(502)이 도달하기 전에 대상체(506)의 궤적이 교차점을 횡단할 가능성을 예측하거나 그에 대한 예측을 개선하기 위해 트레이닝될 수 있다. In some embodiments,
이제 도 6을 참조하면, 차량 횡단 및 양보를 예측하기 위한 프로세스(600)의 흐름도가 예시되어 있다. 일부 실시예에서, 프로세스(600)와 관련하여 기재된 하나 이상의 단계는 자율 주행 차량 컴퓨터(400)의 계획 시스템(404)에 의해 수행된다(예컨대, 완전히, 부분적으로 등). 추가적으로 또는 대안적으로, 일부 실시예에서 프로세스(600)와 관련하여 기재된 하나 이상의 단계는 자율 주행 차량 컴퓨터(400)의 제어 시스템(408)과 같은 계획 시스템(404)으로부터 분리되거나 이를 포함하는 또다른 디바이스 또는 디바이스 그룹에 의해 수행된다(예컨대, 완전히, 부분적으로 등).Referring now to Figure 6, a flow diagram of a
블록 602에서, 차량 주변의 적어도 하나의 대상체를 나타내는 센서 정보가 수신된다. 예를 들어, 센서 정보는 레이더 센서, 이미징 디바이스, GPS(Global Positioning System) 및 LiDAR 센서 중 적어도 하나로부터 캡처된다. At
블록 604에서, 차량의 적어도 제1 궤적에 기초하여 차량의 미래 포지션이 결정된다.At
블록 606에서, 적어도 하나의 대상체의 제2 궤적에 기초하여 적어도 하나의대상체의 미래 포지션이 결정된다. At
블록 608에서, 차량의 미래 포지션 및 적어도 하나의 대상체의 미래 포지션에 기초하여 차량 제어가 결정된다. At
블록 610에서, 차량 제어, 차량의 제1 궤적, 및 적어도 하나의 대상체의 제2 궤적을 사용하여 적어도 하나의 모델이 트레이닝된다. At
프로세스(600)의 일부 실시예에서, 차량의 미래 포지션과 연관된 제1 타임스탬프가 결정된다. 또한, 적어도 하나의 대상체의 미래 포지션과 연관된 제2 타임스탬프가 결정된다. 또한, 차량의 미래 포지션과 적어도 하나의 대상체의 미래 포지션 사이의 제1 차이가 결정된다. 또한, 제1 타임스탬프와 제2 타임스탬프 사이의 제2 차이가 결정된다. 또한, 차량 제어는 제1 차이 및 제2 차이가 각자의 임계값을 충족시키는지 여부에 적어도 기초하여 결정된다. In some embodiments of
프로세스(600)의 일부 실시예에서, 차량의 미래 포지션 및 적어도 하나의 대상체의 미래 포지션은 차량 및/또는 적어도 하나의 대상체의 하나 이상의 치수에 추가적으로 기초한다.In some embodiments of
프로세스(600)의 일부 실시예에서, 차량을 동작시키기 위해 트레이닝된 모델에 기초하여 차량 제어와 관련된 제어 신호가 생성된다. In some embodiments of
프로세스(600)의 일부 실시예에서, 차량 제어는 속력 변경, 조향각 변경, 차량의 현재 속력 유지 및 차량의 현재 방향 유지 중 적어도 하나이다.In some embodiments of
프로세스(600)의 일부 실시예에서, 차량의 미래 포지션 및 적어도 하나의 대상체의 미래 포지션은 차량의 미래 포지션과 적어도 하나의 대상체의 미래 포지션이 교차하는지 여부를 결정함으로써 결정된다. 또한, 차량의 미래 포지션과 대상체의 미래 포지션이 교차한다고 결정하는 것에 응답하여, 차량 제어는 속력 변경 또는 조향각 변경으로서 선택되고, 제어 신호는 선택된 차량 제어에 기초하여 차량을 동작시키도록 생성된다. 또한, 차량의 미래 포지션과 대상체의 미래 포지션이 교차하지 않는다고 결정하는 것에 응답하여, 차량 제어는 현재 차량 상태 유지로서 선택되고, 제어 신호는 선택된 차량 제어에 기초하여 차량을 동작시키도록 생성된다. In some embodiments of
프로세스(600)의 일부 실시예에서, 적어도 하나의 모델은 차량의 제1 궤적 및 적어도 하나의 대상체의 제2 궤적을 연속적으로 결정함으로써 트레이닝된다. 예를 들어, 차량의 제1 궤적 및 적어도 하나의 대상체의 제2 궤적은 약 8초마다 연속적으로 결정된다.In some embodiments of
전술한 설명에서, 본 개시의 양태들 및 실시예들은 구현마다 달라질 수 있는 다수의 특정 세부 사항들을 참조하여 기술되었다. 그에 따라, 설명 및 도면들은 제한적인 의미가 아니라 예시적인 의미로 간주되어야 한다. 본 발명의 범위의 유일한 독점적인 지표, 및 출원인이 본 발명의 범위이도록 의도한 것은, 본 출원에서 특정 형태로 나오는 일련의 청구항의 문언적 등가 범위이며, 임의의 후속 보정을 포함한다. 그러한 청구항에 포함된 용어에 대한 본원에서 명시적으로 기재된 임의의 정의는 청구항에서 사용되는 그러한 용어의 의미를 결정한다. 추가적으로, 전술한 설명 및 이하의 청구항에서 "추가로 포함하는"이라는 용어가 사용될 때, 이 문구에 뒤따르는 것은 추가적인 단계 또는 엔티티, 또는 이전에 언급된 단계 또는 엔티티의 서브-단계/서브-엔티티일 수 있다.In the foregoing description, aspects and embodiments of the disclosure have been described with reference to numerous specific details that may vary from implementation to implementation. Accordingly, the description and drawings are to be regarded in an illustrative rather than a restrictive sense. The only exclusive indicator of the scope of the invention, and what the applicant intends to be the scope of the invention, is the literal equivalent range of the series of claims appearing in the particular form in this application, including any subsequent amendments. Any definitions expressly recited herein for terms contained in such claims determine the meaning of such terms when used in the claims. Additionally, when the term "further comprising" is used in the foregoing description and the claims below, what follows this phrase may be an additional step or entity, or a sub-step/sub-entity of a previously mentioned step or entity. You can.
Claims (20)
적어도 하나의 프로세서를 사용하여, 차량 주변의 적어도 하나의 대상체를 나타내는 센서 정보를 수신하는 단계;
상기 적어도 하나의 프로세서를 사용하여, 상기 차량의 적어도 제1 궤적에 기초하여 상기 차량의 미래 포지션을 결정하는 단계;
상기 적어도 하나의 프로세서를 사용하여, 상기 적어도 하나의 대상체의 제2 궤적에 기초하여 상기 적어도 하나의 대상체의 미래 포지션을 결정하는 단계;
상기 적어도 하나의 프로세서를 사용하여, 상기 차량의 미래 포지션 및 상기 적어도 하나의 대상체의 미래 포지션에 기초하여 차량 제어를 결정하는 단계; 및
상기 적어도 하나의 프로세서를 사용하여, 상기 차량 제어, 상기 차량의 제1 궤적, 및 상기 적어도 하나의 대상체의 제2 궤적을 사용하여 적어도 하나의 모델을 트레이닝하는 단계
를 포함하는, 방법. In the method,
Using at least one processor, receiving sensor information representing at least one object around the vehicle;
determining, using the at least one processor, a future position of the vehicle based on at least a first trajectory of the vehicle;
determining, using the at least one processor, a future position of the at least one object based on a second trajectory of the at least one object;
determining vehicle control based on a future position of the vehicle and a future position of the at least one object, using the at least one processor; and
Using the at least one processor, training at least one model using the vehicle control, a first trajectory of the vehicle, and a second trajectory of the at least one object.
Method, including.
상기 적어도 하나의 프로세서를 사용하여, 상기 차량의 미래 포지션과 연관된 제1 타임스탬프를 결정하는 단계;
상기 적어도 하나의 프로세서를 사용하여, 상기 적어도 하나의 대상체의 미래 포지션과 연관된 제2 타임스탬프를 결정하는 단계;
상기 적어도 하나의 프로세서를 사용하여, 상기 차량의 미래 포지션과 상기 적어도 하나의 대상체의 미래 포지션 사이의 제1 차이를 결정하는 단계;
상기 적어도 하나의 프로세서를 사용하여, 상기 제1 타임스탬프와 상기 제2 타임스탬프 사이의 제2 차이를 결정하는 단계; 및
상기 제1 차이 및 상기 제2 차이가 각자의 임계값을 충족시키는지 여부에 적어도 기초하여 상기 차량 제어를 결정하는 단계
를 더 포함하는, 방법. In claim 1,
determining, using the at least one processor, a first timestamp associated with a future position of the vehicle;
determining, using the at least one processor, a second timestamp associated with a future position of the at least one object;
determining, using the at least one processor, a first difference between a future position of the vehicle and a future position of the at least one object;
determining, using the at least one processor, a second difference between the first timestamp and the second timestamp; and
determining the vehicle control based at least on whether the first difference and the second difference meet their respective thresholds.
A method further comprising:
상기 차량의 미래 포지션 및 상기 적어도 하나의 대상체의 미래 포지션은, 상기 차량 및 상기 적어도 하나의 대상체 중 적어도 하나의, 하나 이상의 치수에 추가적으로 기초하는 것인, 방법. In claim 1 or claim 2,
The method wherein the future position of the vehicle and the future position of the at least one object are additionally based on one or more dimensions of at least one of the vehicle and the at least one object.
상기 적어도 하나의 프로세서를 사용하여, 상기 차량을 동작시키기 위해 상기 트레이닝된 모델에 기초하여 상기 차량 제어와 관련된 제어 신호를 생성하는 단계
를 더 포함하는, 방법. In claim 1 or claim 2,
Using the at least one processor, generating control signals related to controlling the vehicle based on the trained model to operate the vehicle.
A method further comprising:
상기 차량 제어는 속력 변경, 조향각 변경, 상기 차량의 현재 속력 유지, 및 상기 차량의 현재 방향 유지 중 적어도 하나인 것인, 방법. In claim 1 or claim 2,
The method wherein the vehicle control is at least one of changing speed, changing steering angle, maintaining the current speed of the vehicle, and maintaining the current direction of the vehicle.
상기 차량의 미래 포지션 및 상기 적어도 하나의 대상체의 미래 포지션을 결정하는 단계는:
상기 적어도 하나의 프로세서를 사용하여, 상기 차량의 미래 포지션과 상기 적어도 하나의 대상체의 미래 포지션이 교차하는지(intersect) 여부를 결정하는 단계를 더 포함하는 것인, 방법. In claim 1 or claim 2,
Determining the future position of the vehicle and the future position of the at least one object includes:
The method further comprising determining, using the at least one processor, whether the future position of the vehicle and the future position of the at least one object intersect.
상기 차량의 미래 포지션과 상기 대상체의 미래 포지션이 교차한다고 결정하는 것에 응답하여, 상기 적어도 하나의 프로세서를 사용하여, 상기 차량 제어를 속력 변경 또는 조향각 변경으로서 선택하는 단계; 및
상기 적어도 하나의 프로세서를 사용하여, 상기 차량을 동작시키기 위해 상기 선택된 차량 제어에 기초하여 상기 제어 신호를 생성하는 단계
를 더 포함하는, 방법. In claim 6,
In response to determining that the future position of the vehicle intersects the future position of the object, using the at least one processor, selecting control of the vehicle as a speed change or a steering angle change; and
Using the at least one processor, generating the control signal based on the selected vehicle control to operate the vehicle.
A method further comprising:
상기 차량의 미래 포지션과 상기 대상체의 미래 포지션이 교차하지 않는다고 결정하는 것에 응답하여, 상기 적어도 하나의 프로세서를 사용하여, 상기 차량 제어를 현재 차량 상태 유지로서 선택하는 단계; 및
상기 적어도 하나의 프로세서를 사용하여, 상기 차량을 동작시키기 위해 상기 선택된 차량 제어에 기초하여 상기 제어 신호를 생성하는 단계
를 더 포함하는, 방법. In claim 6,
In response to determining that the future position of the vehicle and the future position of the object do not intersect, using the at least one processor, selecting control of the vehicle as maintaining a current vehicle state; and
Using the at least one processor, generating the control signal based on the selected vehicle control to operate the vehicle.
A method further comprising:
상기 적어도 하나의 모델을 트레이닝하는 단계는:
상기 적어도 하나의 프로세서를 사용하여, 상기 차량의 제1 궤적 및 상기 적어도 하나의 대상체의 제2 궤적을 연속적으로 결정함으로써 상기 적어도 하나의 모델을 트레이닝하는 단계를 포함하는 것인, 방법. In claim 1 or claim 2,
The steps of training the at least one model are:
and training the at least one model by successively determining, using the at least one processor, a first trajectory of the vehicle and a second trajectory of the at least one object.
상기 차량의 제1 궤적 및 상기 적어도 하나의 대상체의 제2 궤적은 약 8초마다 연속적으로 결정되는 것인, 방법. In claim 9,
The method of claim 1, wherein the first trajectory of the vehicle and the second trajectory of the at least one object are continuously determined approximately every 8 seconds.
상기 센서 정보는 레이더(radar) 센서, 이미징 디바이스, GPS(global positioning system), 및 LiDAR 센서 중 적어도 하나로부터 캡처되는 것인, 방법. In claim 1 or claim 2,
The method of claim 1, wherein the sensor information is captured from at least one of a radar sensor, an imaging device, a global positioning system (GPS), and a LiDAR sensor.
명령어들을 저장한 적어도 하나의 비일시적 저장 매체; 및
상기 적어도 하나의 비일시적 저장 매체에 연결된 적어도 하나의 프로세서
를 포함하고,
상기 적어도 하나의 프로세서는, 상기 시스템으로 하여금:
적어도 하나의 프로세서를 사용하여, 차량 주변의 적어도 하나의 대상체를 나타내는 센서 정보를 수신하는 동작;
상기 적어도 하나의 프로세서를 사용하여, 상기 차량의 적어도 제1 궤적에 기초하여 상기 차량의 미래 포지션을 결정하는 동작;
상기 적어도 하나의 프로세서를 사용하여, 상기 적어도 하나의 대상체의 제2 궤적에 기초하여 상기 적어도 하나의 대상체의 미래 포지션을 결정하는 동작;
상기 적어도 하나의 프로세서를 사용하여, 상기 차량의 미래 포지션 및 상기 적어도 하나의 대상체의 미래 포지션에 기초하여 차량 제어를 결정하는 동작; 및
상기 적어도 하나의 프로세서를 사용하여, 상기 차량 제어, 상기 차량의 제1 궤적, 및 상기 적어도 하나의 대상체의 제2 궤적을 사용하여 적어도 하나의 모델을 트레이닝하는 동작
을 포함한 동작들을 수행하게 하기 위해 상기 적어도 하나의 비일시적 저장 매체로부터 상기 명령어들을 읽어들이도록 구성되는 것인, 시스템. In the system,
at least one non-transitory storage medium storing instructions; and
At least one processor coupled to the at least one non-transitory storage medium
Including,
The at least one processor causes the system to:
Receiving sensor information indicating at least one object around the vehicle, using at least one processor;
determining, using the at least one processor, a future position of the vehicle based on at least a first trajectory of the vehicle;
determining a future position of the at least one object based on a second trajectory of the at least one object, using the at least one processor;
determining vehicle control based on a future position of the vehicle and a future position of the at least one object, using the at least one processor; and
Using the at least one processor, training at least one model using the vehicle control, a first trajectory of the vehicle, and a second trajectory of the at least one object.
The system is configured to read the instructions from the at least one non-transitory storage medium to perform operations including.
상기 동작들은:
상기 적어도 하나의 프로세서를 사용하여, 상기 차량의 미래 포지션과 연관된 제1 타임스탬프를 결정하는 동작;
상기 적어도 하나의 프로세서를 사용하여, 상기 적어도 하나의 대상체의 미래 포지션과 연관된 제2 타임스탬프를 결정하는 동작;
상기 적어도 하나의 프로세서를 사용하여, 상기 차량의 미래 포지션과 상기 적어도 하나의 대상체의 미래 포지션 사이의 제1 차이를 결정하는 동작;
상기 적어도 하나의 프로세서를 사용하여, 상기 제1 타임스탬프와 상기 제2 타임스탬프 사이의 제2 차이를 결정하는 동작; 및
상기 제1 차이 및 상기 제2 차이가 각자의 임계값을 충족시키는지 여부에 적어도 기초하여 상기 차량 제어를 결정하는 동작
을 더 포함하는 것인, 시스템. In claim 12,
The above operations are:
determining, using the at least one processor, a first timestamp associated with a future position of the vehicle;
determining, using the at least one processor, a second timestamp associated with a future position of the at least one object;
determining, using the at least one processor, a first difference between a future position of the vehicle and a future position of the at least one object;
determining, using the at least one processor, a second difference between the first timestamp and the second timestamp; and
determining the vehicle control based at least on whether the first difference and the second difference meet their respective thresholds.
A system further comprising:
상기 차량의 미래 포지션 및 상기 적어도 하나의 대상체의 미래 포지션은, 상기 차량 및 상기 적어도 하나의 대상체 중 적어도 하나의, 하나 이상의 치수에 추가적으로 기초하는 것인, 시스템. In claim 12 or claim 13,
The system, wherein the future position of the vehicle and the future position of the at least one object are additionally based on one or more dimensions of at least one of the vehicle and the at least one object.
상기 동작들은:
상기 적어도 하나의 프로세서를 사용하여, 상기 차량을 동작시키기 위해 상기 트레이닝된 모델에 기초하여 상기 차량 제어와 관련된 제어 신호를 생성하는 동작을 더 포함하는 것인, 시스템. In claim 12 or claim 13,
The above operations are:
The system further comprising generating, using the at least one processor, a control signal related to controlling the vehicle based on the trained model to operate the vehicle.
상기 차량 제어는 속력 변경, 조향각 변경, 상기 차량의 현재 속력 유지, 및 상기 차량의 현재 방향 유지 중 적어도 하나인 것인, 시스템. In claim 12 or claim 13,
The system, wherein the vehicle control is at least one of changing speed, changing steering angle, maintaining the current speed of the vehicle, and maintaining the current direction of the vehicle.
상기 차량의 미래 포지션 및 상기 적어도 하나의 대상체의 미래 포지션을 결정하는 동작은:
상기 적어도 하나의 프로세서를 사용하여, 상기 차량의 미래 포지션과 상기 적어도 하나의 대상체의 미래 포지션이 교차하는지 여부를 결정하는 동작
을 더 포함하는 것인, 시스템. In claim 12 or claim 13,
The operation of determining the future position of the vehicle and the future position of the at least one object is:
Using the at least one processor, determining whether a future position of the vehicle intersects a future position of the at least one object.
A system further comprising:
상기 적어도 하나의 모델을 트레이닝하는 동작은:
상기 적어도 하나의 프로세서를 사용하여, 상기 차량의 제1 궤적 및 상기 적어도 하나의 대상체의 제2 궤적을 연속적으로 결정함으로써 상기 적어도 하나의 모델을 트레이닝하는 동작을 포함하는 것인, 시스템. In claim 12 or claim 13,
The operation of training the at least one model is:
and training the at least one model by successively determining, using the at least one processor, a first trajectory of the vehicle and a second trajectory of the at least one object.
상기 기계 판독가능한 명령어들은:
적어도 하나의 프로세서를 사용하여, 차량 주변의 적어도 하나의 대상체를 나타내는 센서 정보를 수신하는 동작;
상기 적어도 하나의 프로세서를 사용하여, 상기 차량의 적어도 제1 궤적에 기초하여 상기 차량의 미래 포지션을 결정하는 동작;
상기 적어도 하나의 프로세서를 사용하여, 상기 적어도 하나의 대상체의 제2 궤적에 기초하여 상기 적어도 하나의 대상체의 미래 포지션을 결정하는 동작;
상기 적어도 하나의 프로세서를 사용하여, 상기 차량의 미래 포지션 및 상기 적어도 하나의 대상체의 미래 포지션에 기초하여 차량 제어를 결정하는 동작; 및
상기 적어도 하나의 프로세서를 사용하여, 상기 차량 제어, 상기 차량의 제1 궤적, 및 상기 적어도 하나의 대상체의 제2 궤적을 사용하여 적어도 하나의 모델을 트레이닝하는 동작
을 포함한 동작들을 수행시키도록 실행가능한 것인, 비일시적 기계 판독가능한 매체.A non-transitory machine-readable medium storing machine-readable instructions, comprising:
The machine readable instructions are:
Receiving sensor information indicating at least one object around the vehicle, using at least one processor;
determining, using the at least one processor, a future position of the vehicle based on at least a first trajectory of the vehicle;
determining a future position of the at least one object based on a second trajectory of the at least one object, using the at least one processor;
determining vehicle control based on a future position of the vehicle and a future position of the at least one object, using the at least one processor; and
Using the at least one processor, training at least one model using the vehicle control, a first trajectory of the vehicle, and a second trajectory of the at least one object.
A non-transitory machine-readable medium executable to perform operations including.
상기 센서 정보는 레이더 센서, 이미징 디바이스, GPS, 및 LiDAR 센서 중 적어도 하나로부터 캡처되는 것인, 비일시적 기계 판독가능한 매체. In claim 19,
wherein the sensor information is captured from at least one of a radar sensor, an imaging device, a GPS, and a LiDAR sensor.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/705,035 | 2022-03-25 | ||
US17/705,035 US20230303124A1 (en) | 2022-03-25 | 2022-03-25 | Predicting and controlling object crossings on vehicle routes |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20230140517A true KR20230140517A (en) | 2023-10-06 |
Family
ID=86228004
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020230037368A KR20230140517A (en) | 2022-03-25 | 2023-03-22 | Predicting and controlling object crossings on vehicle routes |
Country Status (5)
Country | Link |
---|---|
US (1) | US20230303124A1 (en) |
KR (1) | KR20230140517A (en) |
CN (1) | CN116803807A (en) |
DE (1) | DE102023107247A1 (en) |
GB (1) | GB2617911A (en) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9248834B1 (en) * | 2014-10-02 | 2016-02-02 | Google Inc. | Predicting trajectories of objects based on contextual information |
US11126179B2 (en) * | 2019-02-21 | 2021-09-21 | Zoox, Inc. | Motion prediction based on appearance |
WO2021225822A1 (en) * | 2020-05-08 | 2021-11-11 | Zoox, Inc. | Trajectory classification |
US11708093B2 (en) * | 2020-05-08 | 2023-07-25 | Zoox, Inc. | Trajectories with intent |
-
2022
- 2022-03-25 US US17/705,035 patent/US20230303124A1/en active Pending
-
2023
- 2023-03-22 KR KR1020230037368A patent/KR20230140517A/en unknown
- 2023-03-22 DE DE102023107247.1A patent/DE102023107247A1/en active Pending
- 2023-03-24 GB GB2304342.5A patent/GB2617911A/en active Pending
- 2023-03-24 CN CN202310298168.4A patent/CN116803807A/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20230303124A1 (en) | 2023-09-28 |
DE102023107247A1 (en) | 2023-09-28 |
GB2617911A (en) | 2023-10-25 |
CN116803807A (en) | 2023-09-26 |
GB202304342D0 (en) | 2023-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20230092673A (en) | Multi-modal segmentation network for enhanced semantic labeling in mapping | |
KR20230098557A (en) | Vehicle location using combined inputs of redundant localization pipelines | |
KR20230144954A (en) | Tracker position updates for vehicle trajectory generation | |
KR20230051035A (en) | Object detection using radar and lidar fusion | |
GB2611119A (en) | Learning to identify safety-critical scenarios for an autonomous vehicle | |
US20230303124A1 (en) | Predicting and controlling object crossings on vehicle routes | |
US11675362B1 (en) | Methods and systems for agent prioritization | |
US20240123996A1 (en) | Methods and systems for traffic light labelling via motion inference | |
US20230298198A1 (en) | Light-based object localization | |
US20230373529A1 (en) | Safety filter for machine learning planners | |
US20240125608A1 (en) | Graph exploration forward search | |
US11676399B1 (en) | Object tracking | |
US20240126254A1 (en) | Path selection for remote vehicle assistance | |
US20230227032A1 (en) | Vehicle Dynamics Classification for Collision and Loss of Control Detection | |
US20230209253A1 (en) | Autonomous vehicle with microphone safety | |
US20230150544A1 (en) | Generating notifications indicative of unanticipated actions | |
US20240038065A1 (en) | Managing traffic light detections | |
US20240051568A1 (en) | Discriminator network for detecting out of operational design domain scenarios | |
US20230169780A1 (en) | Automatically detecting traffic signals using sensor data | |
WO2024081214A1 (en) | Graph exploration forward search | |
WO2024081593A1 (en) | Methods and systems for traffic light labelling via motion inference | |
WO2024081191A1 (en) | Path selection for remote vehicle assistance | |
KR20230070998A (en) | Vehicle control time delay compensation | |
WO2023133218A1 (en) | Proactive transceiver and carrier automated arbitration | |
WO2023177920A1 (en) | Agent importance prediction for autonomous driving |