KR20230020931A - 센서 대상체 검출 모니터링 - Google Patents

센서 대상체 검출 모니터링 Download PDF

Info

Publication number
KR20230020931A
KR20230020931A KR1020220097427A KR20220097427A KR20230020931A KR 20230020931 A KR20230020931 A KR 20230020931A KR 1020220097427 A KR1020220097427 A KR 1020220097427A KR 20220097427 A KR20220097427 A KR 20220097427A KR 20230020931 A KR20230020931 A KR 20230020931A
Authority
KR
South Korea
Prior art keywords
point
occupancy
points
occupancy value
detected
Prior art date
Application number
KR1020220097427A
Other languages
English (en)
Inventor
지옹 양
요우 홍 엥
제임스 구오 밍 푸
판 유
Original Assignee
모셔널 에이디 엘엘씨
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 모셔널 에이디 엘엘씨 filed Critical 모셔널 에이디 엘엘씨
Publication of KR20230020931A publication Critical patent/KR20230020931A/ko

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/93Lidar systems specially adapted for specific applications for anti-collision purposes
    • G01S17/931Lidar systems specially adapted for specific applications for anti-collision purposes of land vehicles
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S7/00Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
    • G01S7/02Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S13/00
    • G01S7/40Means for monitoring or calibrating
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Details 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/04Monitoring the functioning of the control system
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Estimation 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/02Estimation 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
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/02Systems using reflection of radio waves, e.g. primary radar systems; Analogous systems
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S15/00Systems using the reflection or reradiation of acoustic waves, e.g. sonar systems
    • G01S15/02Systems using the reflection or reradiation of acoustic waves, e.g. sonar systems using reflection of acoustic waves
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/02Systems using the reflection of electromagnetic waves other than radio waves
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/89Lidar systems specially adapted for specific applications for mapping or imaging
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S7/00Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
    • G01S7/48Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S17/00
    • G01S7/497Means for monitoring or calibrating
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S7/00Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
    • G01S7/52Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S15/00
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S7/00Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
    • G01S7/52Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S15/00
    • G01S7/52017Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S15/00 particularly adapted to short-range imaging
    • G01S7/5205Means for monitoring or calibrating
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Details 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/0001Details of the control system
    • B60W2050/0043Signal treatments, identification of variables or parameters, parameter estimation or state estimation
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Input parameters relating to objects
    • B60W2554/20Static objects
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Input parameters relating to objects
    • B60W2554/40Dynamic objects, e.g. animals, windblown objects
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/88Radar or analogous systems specially adapted for specific applications
    • G01S13/89Radar or analogous systems specially adapted for specific applications for mapping or imaging
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/88Radar or analogous systems specially adapted for specific applications
    • G01S13/93Radar or analogous systems specially adapted for specific applications for anti-collision purposes
    • G01S13/931Radar or analogous systems specially adapted for specific applications for anti-collision purposes of land vehicles
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S7/00Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
    • G01S7/48Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S17/00
    • G01S7/497Means for monitoring or calibrating
    • G01S2007/4975Means for monitoring or calibrating of sensor obstruction by, e.g. dirt- or ice-coating, e.g. by reflection measurement on front-screen
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S7/00Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
    • G01S7/02Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S13/00
    • G01S7/40Means for monitoring or calibrating
    • G01S7/4004Means for monitoring or calibrating of parts of a radar system
    • G01S7/4039Means for monitoring or calibrating of parts of a radar system of sensor or antenna obstruction, e.g. dirt- or ice-coating

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Physics & Mathematics (AREA)
  • Electromagnetism (AREA)
  • Automation & Control Theory (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Mathematical Physics (AREA)
  • Acoustics & Sound (AREA)
  • Traffic Control Systems (AREA)
  • Radar Systems Or Details Thereof (AREA)

Abstract

센서에서 대상체들의 검출을 모니터링하기 위한 시스템들 및 방법들이 설명된다. 이 시스템은 차량의 장면에 대응하는 장면 데이터에 기초하여 점유 어레이를 생성할 수 있다. 어레이는 차량의 환경 내의 위치를 나타내는 지점들 및 해당 위치에서 대상체가 검출되는지 여부를 나타내는 점유 값을 포함할 수 있다. 이 시스템은 어레이에서의 적어도 하나의 지점의 점유 값을 수정할 수 있고 어레이에서의 한 그룹의 지점들의 한 그룹의 점유 값들에 기초하여 적어도 하나의 정적 대상체 누락을 식별할 수 있다.

Description

센서 대상체 검출 모니터링{SENSOR OBJECT DETECTION MONITORING}
모든 우선권 출원들에 대한 참조에 의한 포함
해외 또는 국내 우선권 주장이 본 출원과 함께 제출된 출원 데이터 시트에서 확인되는 모든 출원들은 37 CFR 1.57에 따라 참조에 의해 포함되고 본 명세서의 일부가 된다.
도 1은 자율 주행 능력(autonomous capability)을 갖는 자율 주행 차량의 예를 도시한다.
도 2는 예시적인 "클라우드" 컴퓨팅 환경을 도시한다.
도 3은 컴퓨터 시스템을 도시한다.
도 4는 자율 주행 차량의 예시적인 아키텍처를 도시한다.
도 5는 인지 모듈에 의해 사용될 수 있는 입력들 및 출력들의 예를 도시한다.
도 6은 라이다(lidar) 시스템의 예를 도시한다.
도 7은 작동 중인 라이다 시스템을 도시한다.
도 8은 라이다 시스템의 작동을 추가적으로 상세히 도시한다.
도 9a 내지 도 9c는 라이다 시스템에 의해 생성되는 예시적인 센서 검출 데이터를 도시한다.
도 10은 라이다 시스템의 센서 폐색들을 식별하기 위한 프로세스를 예시하는 플로차트를 도시한다.
도 11은 정적 대상체 누락(static object miss)을 검출하기 위한 루틴의 예를 예시하는 흐름 다이어그램이다.
이하의 설명에서는, 설명 목적으로, 개시된 기술들에 대한 완전한 이해를 제공하기 위해 다수의 특정 세부 사항들이 제시되어 있다. 그렇지만, 개시된 기술들이 이러한 특정 세부 사항들이 없더라도 실시될 수 있음이 명백할 것이다. 다른 경우에, 잘 알려진 구조들 및 디바이스들은 개시된 기술들을 불필요하게 모호하게 하는 것을 피하기 위해 블록 다이어그램 형태로 도시되어 있다.
도면들에서, 디바이스들, 모듈들, 명령어 블록들 및 데이터 요소들을 나타내는 것들과 같은, 개략적인 요소들의 특정 배열들 또는 순서들이 설명의 편의를 위해 도시되어 있다. 그렇지만, 본 기술 분야의 통상의 기술자라면, 도면들에서의 개략적인 요소들의 특정 순서 또는 배열이 특정 프로세싱 순서 또는 시퀀스, 또는 프로세스들의 분리가 요구됨을 암시하는 것으로 의미되지 않는다는 점을 이해할 것이다. 게다가, 도면에 개략적인 요소가 포함되는 것은, 그러한 요소가 모든 실시예들에서 요구됨을 암시하는 것으로 의미되지 않거나, 또는 그러한 요소에 의해 표현되는 특징들이 일부 실시예들에서 포함되지 않을 수 있거나 다른 요소들과 조합되지 않을 수 있음을 암시하는 것으로 의미되지 않는다.
게다가, 도면들에서, 2 개 이상의 다른 개략적인 요소 사이의 연결, 관계, 또는 연관을 예시하기 위해 실선들 또는 파선들 또는 화살표들과 같은 연결 요소들이 사용되는 경우에, 임의의 그러한 연결 요소들의 부재는 연결, 관계, 또는 연관이 존재하지 않을 수 있음을 암시하는 것으로 의미되지 않는다. 환언하면, 요소들 사이의 일부 연결들, 관계들, 또는 연관들은 본 개시내용을 모호하게 하지 않기 위해 도면들에 도시되어 있지 않다. 추가적으로, 예시의 편의를 위해, 요소들 사이의 다수의 연결들, 관계들 또는 연관들을 나타내기 위해 단일의 연결 요소가 사용된다. 예를 들어, 연결 요소가 신호들, 데이터, 또는 명령어들의 통신을 나타내는 경우에, 본 기술 분야의 통상의 기술자라면 그러한 요소가, 통신을 수행하기 위해 필요로 할 수 있는, 하나 또는 다수의 신호 경로(예를 들면, 버스)를 나타낸다는 것을 이해할 것이다.
예들이 첨부 도면들에 예시되어 있는 실시예들에 대해 이제 상세하게 언급될 것이다. 이하의 상세한 설명에서, 다양한 설명된 실시예들에 대한 완전한 이해를 제공하기 위해 수많은 특정 세부 사항들이 제시된다. 그렇지만, 다양한 설명된 실시예들이 이러한 특정 세부 사항들이 없더라도 실시될 수 있다는 것이 본 기술 분야의 통상의 기술자에게 명백할 것이다. 다른 경우에, 실시예들의 양태들을 불필요하게 모호하게 하지 않기 위해 잘 알려진 방법들, 절차들, 컴포넌트들, 회로들, 및 네트워크들은 상세히 설명되지 않았다.
각각이 서로 독립적으로 또는 다른 특징들과 임의의 조합으로 사용될 수 있는 여러 특징들이 이하에서 설명된다. 그렇지만, 임의의 개별 특징은 위에서 논의된 문제들 중 어떤 것도 해결할 수 없거나 위에서 논의된 문제들 중 하나만을 해결할 수 있다. 위에서 논의된 문제들 중 일부가 본 명세서에서 설명된 특징들 중 임의의 것에 의해 완전히 해결되지는 않을 수 있다. 비록 여러 표제들이 제공되어 있더라도, 특정 표제에 관련되지만 해당 표제를 갖는 섹션에서 발견되지는 않는 정보가 또한 본 설명의 다른 곳에서 발견될 수 있다. 실시예들이 이하의 개요에 따라 본 명세서에서 설명된다:
1. 일반적 개관
2. 하드웨어 개관
3. 자율 주행 차량 아키텍처
4. 자율 주행 차량 입력들
5. 센서 폐색 검출
6. 센서 폐색들을 검출하고 센서 폐색들의 검출에 기초하여 센서를 작동시키기 위한 예시적인 프로세스
일반적 개관
제대로 작동하는 이미징 센서들은 자율 주행 차량이 안전하게 운행하는 데 중요하다. 이미징 센서가 제대로 작동하지 않는 경우, 승객들의 위험 및 차량의 손상이 크게 증가할 수 있다. 그렇지만, 이미징 센서가 더 이상 제대로 작동하고 있지 않는 때를 시스템이 결정하는 것이 어려울 수 있다.
일부 이미징 센서들의 하나의 역할은 차량의 장면에서 대상체들을 검출하는 것이다. 이러한 이미징 센서들은 라이다 센서들, 레이더(radar) 센서, 소나 센서들 등, 또는 파 또는 빔을 방출하고 대상체들로부터의 반사를 사용하여 차량의 장면에서 대상체의 존재(및 위치)를 결정하는 다른 센서들을 포함할 수 있다. 일부 경우에, 이미지의 특정 픽셀들(또는 이미지에 대응하는 어레이에서의 지점들)은 대상체를 등록(register) 또는 검출하지 않을 수 있다(본 명세서에서 "대상체 누락(object miss)" 또는 "대상체 미검출(object undetection)"이라고도 지칭됨).
환경 또는 다른 일시적인 요인들로 인한 대상체 누락이 예상될 수 있지만, 비교적 짧은 시간 기간 내에 저절로 해결되지 않는 센서 오작동 또는 센서 폐색으로 인한 대상체 누락은 안전하지 않을 수 있고 차량 내의 승객들 및 차량 주변의 다른 사람들의 피해 위험을 증가시킬 수 있다. 이 문제를 해결하기 위해, 시스템은 들어오는 장면 데이터를 모니터링할 수 있고 상이한 지점들 또는 픽셀들에서의 대상체 누락들 또는 미검출들이 일시적인지(예를 들면, 환경, 다른 일시적인 요인들로 인한 것인지, 또는 상대적으로 짧은 지속 시간을 갖는지) 정적인지(예를 들면, 상대적으로 긴 지속 기간을 갖는지 및/또는 해결하기 위해 적극적인 조치들에 의존할 수 있는 어떤 다른 요인으로 인한 것인지)를 결정할 수 있다. 시스템은, 대상체 누락이 정적이라고 결정하는 경우, 문제를 개선하기 위해 하나 이상의 조치를 취할 수 있다. 정적 대상체 누락들을 모니터링 및 검출하는 것에 의해, 본 명세서에서 설명되는 시스템은 이미징 센서들 및 자율 주행 차량들의 작동을 향상시킬 수 있다. 구체적으로, 이 시스템은 자율 주행 차량의 안전성을 높일 수 있다. 더욱이, 정적 대상체 누락들을 검출하기 위한 본 명세서에서 설명되는 기술들은 적어도 사용되는 센서들의 특성, 분석되는 데이터, 및 자율 주행 차량이 자율 주행 차량의 환경을 인지하고 환경에 대한 자율 주행 차량의 인지에 기초하여 조치들을 취하기까지의 시간 제약들을 감안할 때 인간에 의해 수행될 수 없거나 적어도 실현 가능하게 수행될 수 없다.
하드웨어 개관
도 1은 자율 주행 능력을 갖는 자율 주행 차량(100)의 예를 도시한다.
본 명세서에서 사용되는 바와 같이, "자율 주행 능력"이라는 용어는, 완전 자율 주행 차량, 고도 자율 주행 차량, 및 조건부 자율 주행 차량을 제한 없이 포함하여, 실시간 인간 개입 없이 차량이 부분적으로 또는 완전하게 작동될 수 있게 하는 기능, 특징, 또는 설비를 지칭한다.
본 명세서에서 사용되는 바와 같이, 자율 주행 차량(AV)은 자율 주행 능력을 갖는 차량이다.
본 명세서에서 사용되는 바와 같이, "차량"은 상품 또는 사람의 운송 수단을 포함한다. 예를 들어, 자동차, 버스, 기차, 비행기, 드론, 트럭, 보트, 선박, 잠수함, 비행선 등. 무인 자동차는 차량의 예이다.
본 명세서에서 사용되는 바와 같이, "궤적"은 AV를 제1 시공간적 위치로부터 제2 시공간적 위치로 운행시키기 위한 경로 또는 루트를 지칭한다. 일 실시예에서, 제1 시공간적 위치는 초기 또는 시작 위치라고 지칭되고, 제2 시공간적 위치는 목적지, 최종 위치, 목표, 목표 위치, 또는 목표 장소라고 지칭된다. 일부 예들에서, 궤적은 하나 이상의 세그먼트(예를 들면, 도로 섹션들)로 구성되고, 각각의 세그먼트는 하나 이상의 블록(예를 들면, 차선 또는 교차로의 부분들)으로 구성된다. 일 실시예에서, 시공간적 위치들은 현실 세계 위치들에 대응한다. 예를 들어, 시공간적 위치들은 사람을 승차 또는 하차시키기 위한 또는 상품을 상차 또는 하차시키기 위한 승차(pick up) 또는 하차(drop-off) 위치들이다.
본 명세서에서 사용되는 바와 같이, "센서(들)"는 센서를 둘러싸는 환경에 관한 정보를 검출하는 하나 이상의 하드웨어 컴포넌트를 포함한다. 하드웨어 컴포넌트들 중 일부는 감지 컴포넌트들(예를 들면, 이미지 센서들, 생체 측정 센서들), 송신 및/또는 수신 컴포넌트들(예를 들면, 레이저 또는 무선 주파수 파 송신기들 및 수신기들), 아날로그 대 디지털 변환기들과 같은 전자 컴포넌트들, 데이터 저장 디바이스(예컨대, RAM 및/또는 비휘발성 저장소), 소프트웨어 또는 펌웨어 컴포넌트들, 및 ASIC(application-specific integrated circuit), 마이크로프로세서 및/또는 마이크로컨트롤러와 같은 데이터 프로세싱 컴포넌트들을 포함할 수 있다.
본 명세서에서 사용되는 바와 같이, "장면 묘사(scene description)"는 AV 차량 상의 하나 이상의 센서에 의해 검출되거나 AV 외부의 소스에 의해 제공되는 하나 이상의 분류된 또는 라벨링된 대상체를 포함하는 데이터 구조(예를 들면, 리스트) 또는 데이터 스트림이다.
본 명세서에서 사용되는 바와 같이, "도로"는 차량에 의해 횡단될 수 있는 물리적 영역이고, 명명된 주요 도로(예를 들면, 도시 거리, 주간 프리웨이(interstate freeway) 등)에 대응할 수 있거나, 명명되지 않은 주요 도로(예를 들면, 주택 또는 사무실 건물에서의 사유 도로(driveway), 주차장의 섹션, 공터의 섹션, 시골 지역에서의 비포장 경로 등)에 대응할 수 있다. 일부 차량들(예를 들면, 4륜 구동 픽업 트럭들, 스포츠 유틸리티 차량들 등)은 차량 주행에 특히 적합하지 않은 다양한 물리적 지역들을 횡단할 수 있기 때문에, "도로"는 임의의 지자체 또는 다른 정부 또는 행정처에 의해 주요 도로로서 공식적으로 규정되지 않은 물리적 지역일 수 있다.
본 명세서에서 사용되는 바와 같이, "차선"은 차량에 의해 횡단될 수 있는 도로의 일 부분이고, 차선 마킹들 사이의 공간의 대부분 또는 전부에 대응할 수 있거나, 차선 마킹들 사이의 공간의 단지 일부(예를 들면, 50% 미만)에 대응할 수 있다. 예를 들어, 멀리 이격된 차선 마킹들을 갖는 도로는 마킹들 사이에 2 개 이상의 차량을 수용할 수 있음으로써, 하나의 차량이 차선 마킹들을 횡단하지 않으면서 다른 차량을 추월할 수 있고, 따라서 차선 마킹들 사이의 공간보다 좁은 차선을 갖거나 차선 마킹들 사이에 2 개의 차선을 갖는 것으로 해석될 수 있다. 차선은 차선 마킹들의 부재 시에도 해석될 수 있다. 예를 들어, 차선은 환경의 물리적 특징물들, 예를 들면, 시골 지역에서의 주요 도로를 따라 있는 바위들 및 나무들에 기초하여 규정될 수 있다.
"하나 이상"은 하나의 요소에 의해 수행되는 기능, 하나 초과의 요소에 의해, 예를 들면, 분산 방식으로 수행되는 기능, 하나의 요소에 의해 수행되는 여러 기능들, 여러 요소들에 의해 수행되는 여러 기능들, 또는 이들의 임의의 조합을 포함한다.
제1, 제2 등의 용어들이, 일부 경우에, 다양한 요소들을 설명하기 위해 본 명세서에서 사용되지만, 이러한 요소들이 이러한 용어들에 의해 제한되지 않아야 한다는 것이 또한 이해될 것이다. 이러한 용어들은 하나의 요소를 다른 요소와 구별하는 데만 사용된다. 예를 들어, 다양한 설명된 실시예들의 범위를 벗어나지 않으면서, 제1 접촉은 제2 접촉이라고 지칭될 수 있고, 유사하게 제2 접촉은 제1 접촉이라고 지칭될 수 있다. 제1 접촉과 제2 접촉 양쪽 모두가 접촉이지만, 달리 명시되지 않는 한, 동일한 접촉은 아니다.
본 명세서에서 다양한 설명된 실시예들에 대한 설명에서 사용되는 전문용어는 단지 특정 실시예들을 설명하기 위한 것이며, 제한하는 것으로 의도되지 않는다. 다양한 설명된 실시예들에 대한 설명 및 첨부된 청구항들에서 사용되는 바와 같이, 단수 형태들(“한”, “어떤” 및 “그”)은, 문맥이 명확히 달리 나타내지 않는 한, 복수 형태들도 포함하는 것으로 의도된다. "및/또는"이라는 용어가, 본 명세서에서 사용되는 바와 같이, 연관된 열거된 항목들 중 하나 이상의 항목의 모든 가능한 조합들을 지칭하고 포괄한다는 것이 또한 이해될 것이다. 게다가, "포함한다(includes, comprises)" 및/또는 "포함하는(including, comprising)"이라는 용어들이, 본 설명에서 사용될 때, 언급된 특징들, 정수들, 단계들, 동작들, 요소들, 및/또는 컴포넌트들의 존재를 명시하지만, 하나 이상의 다른 특징, 정수, 단계, 동작, 요소, 컴포넌트, 및/또는 이들의 그룹의 존재 또는 추가를 배제하지 않는다는 것이 이해될 것이다.
본 명세서에서 사용되는 바와 같이, "~ 경우"라는 용어는, 선택적으로, 문맥에 따라 "~할 때", 또는 "~시에" 또는 "~라고 결정하는 것에 응답하여" 또는 "~을 검출하는 것에 응답하여"를 의미하는 것으로 해석된다. 마찬가지로, 문구 "~라고 결정되는 경우" 또는 "[언급된 조건 또는 이벤트]가 검출되는 경우"는, 선택적으로, 문맥에 따라, "~라고 결정할 시에" 또는 "~라고 결정하는 것에 응답하여" 또는 "[언급된 조건 또는 이벤트]를 검출할 시에" 또는 "[언급된 조건 또는 이벤트]를 검출하는 것에 응답하여"를 의미하는 것으로 해석된다.
본 명세서에서 사용되는 바와 같이, AV 시스템은 AV의 작동을 지원하는 하드웨어, 소프트웨어, 저장된 데이터, 및 실시간으로 생성되는 데이터의 어레이와 함께 AV를 지칭한다. 일 실시예에서, AV 시스템은 AV 내에 통합된다. 일 실시예에서, AV 시스템은 여러 위치들에 걸쳐 확산되어 있다. 예를 들어, AV 시스템의 소프트웨어 중 일부는 도 2와 관련하여 아래에서 설명되는 클라우드 컴퓨팅 환경(200)과 유사한 클라우드 컴퓨팅 환경에서 구현된다.
일반적으로, 본 문서는 완전 자율 주행 차량, 고도 자율 주행 차량, 및 조건부 자율 주행 차량, 예컨대, 제각기, 소위 레벨 5 차량, 레벨 4 차량 및 레벨 3 차량을 포함한 하나 이상의 자율 주행 능력을 갖는 임의의 차량에 적용 가능한 기술들을 설명한다(차량의 자율성의 레벨 분류에 대한 추가 세부 사항에 대해서는, 참조에 의해 그 전체가 포함되는, SAE 국제 표준 J3016: 온로드 자동차 자동 운전 시스템에 관한 용어의 분류 및 정의(Taxonomy and Definitions for Terms Related to On-128-172020-02-28 Road Motor Vehicle Automated Driving Systems) 참조). 본 문서에서 설명되는 기술들은 부분 자율 주행 차량 및 운전자 보조 차량, 예컨대, 소위 레벨 2 차량 및 레벨 1 차량에도 적용 가능하다(SAE 국제 표준 J3016: 온로드 자동차 자동 운전 시스템에 관한 용어의 분류 및 정의 참조). 일 실시예에서, 레벨 1, 레벨 2, 레벨 3, 레벨 4 및 레벨 5 차량 시스템들 중 하나 이상은 센서 입력들의 프로세싱에 기초하여 특정 작동 조건들 하에서 특정 차량 작동들(예를 들면, 조향, 제동, 및 맵 사용)을 자동화할 수 있다. 본 문서에서 설명되는 기술들은, 완전 자율 주행 차량으로부터 인간 운전 차량에 이르는, 임의의 레벨들에 있는 차량들에 혜택을 줄 수 있다.
도 1을 참조하면, AV 시스템(120)은, 대상체들(예를 들면, 자연 장애물들(191), 차량들(193), 보행자들(192), 자전거 타는 사람들, 및 다른 장애물들)을 피하고 도로 규칙들(예를 들면, 운영 규칙들 또는 운전 선호사항들)을 준수하면서, AV(100)를 궤적(198)을 따라 환경(190)을 통해 목적지(199)(때때로 최종 위치라고 지칭됨)까지 작동시킨다.
일 실시예에서, AV 시스템(120)은 컴퓨터 프로세서들(146)로부터 작동 커맨드들을 수신하고 이에 따라 작동하도록 설비된 디바이스들(101)을 포함한다. 일 실시예에서, 컴퓨팅 프로세서들(146)은 도 3을 참조하여 아래에서 설명되는 프로세서(304)와 유사하다. 디바이스들(101)의 예들은 조향 컨트롤(102), 브레이크들(103), 기어들, 액셀러레이터 페달 또는 다른 가속 제어 메커니즘들, 윈드실드 와이퍼들, 사이드 도어 록들, 윈도 컨트롤들, 및 방향 지시등들을 포함한다.
일 실시예에서, AV 시스템(120)은, AV의 위치, 선속도와 각속도 및 선가속도와 각가속도, 및 헤딩(heading)(예를 들면, AV(100)의 선단(leading end)의 배향)과 같은, AV(100)의 상태 또는 조건의 속성들을 측정 또는 추론하기 위한 센서들(121)을 포함한다. 센서들(121)의 예는 GPS, 차량 선가속도 및 각도 변화율(angular rate) 양쪽 모두를 측정하는 관성 측정 유닛들(IMU), 바퀴 슬립률(wheel slip ratio)을 측정 또는 추정하기 위한 바퀴 속력 센서들, 바퀴 브레이크 압력 또는 제동 토크 센서들, 엔진 토크 또는 바퀴 토크 센서들, 그리고 조향각 및 각도 변화율 센서들이다.
일 실시예에서, 센서들(121)은 AV의 환경의 속성들을 감지 또는 측정하기 위한 센서들을 또한 포함한다. 예를 들어, 가시 광, 적외선 또는 열(또는 양쪽 모두) 스펙트럼의 단안 또는 스테레오 비디오 카메라들(122), 라이다(123), 레이더, 초음파 센서들, 비행 시간(time-of-flight, TOF) 깊이 센서들, 속력 센서들, 온도 센서들, 습도 센서들, 및 강수 센서들.
일 실시예에서, AV 시스템(120)은 컴퓨터 프로세서들(146)과 연관된 머신 명령어들 또는 센서들(121)에 의해 수집되는 데이터를 저장하기 위한 데이터 저장 유닛(142) 및 메모리(144)를 포함한다. 일 실시예에서, 데이터 저장 유닛(142)은 도 3과 관련하여 아래에서 설명되는 ROM(308) 또는 저장 디바이스(310)와 유사하다. 일 실시예에서, 메모리(144)는 아래에서 설명되는 메인 메모리(306)와 유사하다. 일 실시예에서, 데이터 저장 유닛(142) 및 메모리(144)는 환경(190)에 관한 과거 정보, 실시간 정보, 및/또는 예측 정보를 저장한다. 일 실시예에서, 저장된 정보는 맵들, 운전 성능(driving performance), 교통 혼잡 업데이트들 또는 기상 조건들을 포함한다. 일 실시예에서, 환경(190)에 관련된 데이터는 원격에 위치한 데이터베이스(134)로부터 통신 채널을 통해 AV(100)로 송신된다.
일 실시예에서, AV 시스템(120)은, 위치, 선속도와 각속도, 선가속도와 각가속도, 및 AV(100)를 향한 선형 헤딩(linear heading)과 각도 헤딩(angular heading)과 같은, 다른 차량들의 상태들 및 조건들의 측정된 또는 추론된 속성들을 통신하기 위한 통신 디바이스들(140)을 포함한다. 이러한 디바이스들은 V2V(Vehicle-to-Vehicle) 및 V2I(Vehicle-to-Infrastructure) 통신 디바이스들 및 포인트 투 포인트(point-to-point) 또는 애드혹(ad hoc) 네트워크들을 통한 무선 통신을 위한 디바이스들 또는 양쪽 모두를 포함한다. 일 실시예에서, 통신 디바이스들(140)은 (무선 및 광학 통신을 포함하는) 전자기 스펙트럼 또는 다른 매체들(예를 들면, 공기 및 음향 매체들)을 통해 통신한다. V2V(Vehicle-to-Vehicle), V2I(Vehicle-to-Infrastructure) 통신(및 일부 실시예들에서, 하나 이상의 다른 유형의 통신)의 조합이 때때로 V2X(Vehicle-to-Everything) 통신이라고 지칭된다. V2X 통신은 전형적으로, 자율 주행 차량들과의 통신 및 자율 주행 차량들 간의 통신을 위한 하나 이상의 통신 표준을 준수한다.
일 실시예에서, 통신 디바이스들(140)은 통신 인터페이스들을 포함한다. 예를 들어, 유선, 무선, WiMAX, Wi-Fi, 블루투스, 위성, 셀룰러, 광학, 근거리(near field), 적외선, 또는 무선(radio) 인터페이스들. 통신 인터페이스들은 원격에 위치한 데이터베이스(134)로부터 AV 시스템(120)으로 데이터를 송신한다. 일 실시예에서, 원격에 위치한 데이터베이스(134)는 도 2에서 설명된 클라우드 컴퓨팅 환경(200)에 내장되어 있다. 통신 인터페이스들(140)은 센서들(121)로부터 수집되는 데이터 또는 AV(100)의 작동에 관련된 다른 데이터를 원격에 위치한 데이터베이스(134)로 송신한다. 일 실시예에서, 통신 인터페이스들(140)은 텔레오퍼레이션(teleoperation)에 관련되는 정보를 AV(100)로 송신한다. 일부 실시예들에서, AV(100)는 다른 원격(예를 들면, "클라우드") 서버들(136)과 통신한다.
일 실시예에서, 원격에 위치한 데이터베이스(134)는 또한 디지털 데이터를 저장 및 송신한다(예를 들면, 도로 및 거리 위치들과 같은 데이터를 저장함). 그러한 데이터는 AV(100) 상의 메모리(144)에 저장되거나, 원격에 위치한 데이터베이스(134)로부터 통신 채널을 통해 AV(100)로 송신된다.
일 실시예에서, 원격에 위치한 데이터베이스(134)는 유사한 하루 중 시간들에서 궤적(198)을 따라 이전에 주행했던 차량들의 운전 속성들(예를 들면, 속력 프로필 및 가속도 프로필)에 관한 과거 정보를 저장 및 송신한다. 일 구현에서, 그러한 데이터는 AV(100) 상의 메모리(144)에 저장될 수 있거나, 원격에 위치한 데이터베이스(134)로부터 통신 채널을 통해 AV(100)로 송신될 수 있다.
AV(100) 상에 위치하는 컴퓨팅 디바이스들(146)은 실시간 센서 데이터 및 사전 정보(prior information) 양쪽 모두에 기초하여 제어 행동들을 알고리즘적으로 생성하여, AV 시스템(120)이 자신의 자율 주행 운전 능력들을 실행할 수 있게 한다.
일 실시예에서, AV 시스템(120)은 AV(100)의 사용자(예를 들면, 탑승자 또는 원격 사용자)에게 정보 및 경고들을 제공하고 그로부터 입력을 수신하기 위한, 컴퓨팅 디바이스들(146)에 결합된 컴퓨터 주변기기들(132)을 포함한다. 일 실시예에서, 주변기기들(132)은 도 3을 참조하여 아래에서 논의되는 디스플레이(312), 입력 디바이스(314), 및 커서 컨트롤러(316)와 유사하다. 결합은 무선 또는 유선이다. 인터페이스 디바이스들 중 임의의 2 개 이상은 단일 디바이스에 통합될 수 있다.
도 2는 예시적인 "클라우드" 컴퓨팅 환경을 예시한다. 클라우드 컴퓨팅은 구성 가능한 컴퓨팅 리소스들(예를 들면, 네트워크들, 네트워크 대역폭, 서버들, 프로세싱, 메모리, 스토리지, 애플리케이션들, 가상 머신들, 및 서비스들)의 공유 풀에 대한 편리한 온 디맨드 네트워크 액세스를 가능하게 하기 위한 서비스 전달(service delivery)의 일 모델이다. 전형적인 클라우드 컴퓨팅 시스템들에서는, 하나 이상의 대규모 클라우드 데이터 센터가 클라우드에 의해 제공되는 서비스들을 전달하는 데 사용되는 머신들을 수용한다. 이제 도 2를 참조하면, 클라우드 컴퓨팅 환경(200)은 클라우드(202)를 통해 상호 연결되는 클라우드 데이터 센터들(204a, 204b, 및 204c)을 포함한다. 데이터 센터들(204a, 204b, 및 204c)은 클라우드 컴퓨팅 서비스들을 클라우드(202)에 연결된 컴퓨터 시스템들(206a, 206b, 206c, 206d, 206e, 및 206f)에 제공한다.
클라우드 컴퓨팅 환경(200)은 하나 이상의 클라우드 데이터 센터를 포함한다. 일반적으로, 클라우드 데이터 센터, 예를 들어, 도 2에 도시된 클라우드 데이터 센터(204a)는 클라우드, 예를 들어, 도 2에 도시된 클라우드(202) 또는 클라우드의 특정 부분을 구성하는 서버들의 물리적 배열을 지칭한다. 예를 들어, 서버들은 클라우드 데이터 센터에서 룸들, 그룹들, 로우들(rows), 및 랙들(racks)로 물리적으로 배열된다. 클라우드 데이터 센터는 하나 이상의 서버 룸을 포함하는 하나 이상의 구역(zone)을 갖는다. 각각의 룸은 하나 이상의 서버 로우를 가지며, 각각의 로우는 하나 이상의 랙을 포함한다. 각각의 랙은 하나 이상의 개별 서버 노드를 포함한다. 어떤 구현에서, 구역들, 룸들, 랙들, 및/또는 로우들 내의 서버들은, 전력 요구사항들, 에너지 요구사항들, 열적 요구사항들, 열 요구사항들, 및/또는 다른 요구사항들을 포함하는, 데이터 센터 설비의 물리적 인프라스트럭처 요구사항들에 기초하여 그룹들로 배열된다. 일 실시예에서, 서버 노드들은 도 3에서 설명되는 컴퓨터 시스템과 유사하다. 데이터 센터(204a)는 많은 랙들을 통해 분산된 많은 컴퓨팅 시스템들을 갖는다.
클라우드(202)는 클라우드 데이터 센터들(204a, 204b, 및 204c)을 상호 연결시키고 클라우드 컴퓨팅 서비스들에 대한 컴퓨팅 시스템들(206a 내지 206f)의 액세스를 용이하게 하는 것을 돕는 네트워크 및 네트워킹 리소스들(예를 들어, 네트워킹 장비, 노드들, 라우터들, 스위치들, 및 네트워킹 케이블들)과 함께 클라우드 데이터 센터들(204a, 204b, 및 204c)을 포함한다. 일 실시예에서, 네트워크는 지상 또는 위성 연결들을 사용하여 배포되는 유선 또는 무선 링크들을 사용하여 결합되는 하나 이상의 로컬 네트워크, 광역 네트워크, 또는 인터네트워크의 임의의 조합을 나타낸다. 네트워크를 통해 교환되는 데이터는, IP(Internet Protocol), MPLS(Multiprotocol Label Switching), ATM(Asynchronous Transfer Mode), 및 프레임 릴레이 등과 같은, 임의의 수의 네트워크 계층 프로토콜들을 사용하여 전송된다. 게다가, 네트워크가 다수의 서브 네트워크들의 조합을 나타내는 실시예들에서, 기저 서브 네트워크들(underlying sub-networks) 각각에서 상이한 네트워크 계층 프로토콜들이 사용된다. 일부 실시예들에서, 네트워크는, 공중 인터넷과 같은, 하나 이상의 상호 연결된 인터네트워크를 나타낸다.
컴퓨팅 시스템들(206a 내지 206f) 또는 클라우드 컴퓨팅 서비스 소비자들은 네트워크 링크들 및 네트워크 어댑터들을 통해 클라우드(202)에 연결된다. 일 실시예에서, 컴퓨팅 시스템들(206a 내지 206f)은 다양한 컴퓨팅 디바이스들, 예를 들어, 서버, 데스크톱, 랩톱, 태블릿, 스마트폰, IoT(Internet of Things) 디바이스, 자율 주행 차량(자동차, 드론, 셔틀, 기차, 버스 등을 포함함) 및 소비자 전자장치로서 구현된다. 일 실시예에서, 컴퓨팅 시스템들(206a 내지 206f)은 다른 시스템들 내에 또는 그 일부로서 구현된다.
도 3은 컴퓨터 시스템(300)을 예시한다. 일 구현에서, 컴퓨터 시스템(300)은 특수 목적 컴퓨팅 디바이스이다. 특수 목적 컴퓨팅 디바이스는 기술들을 수행하도록 고정 배선(hard-wired)되거나, 또는 기술들을 수행하도록 영속적으로 프로그래밍되어 있는 하나 이상의 ASIC(application-specific integrated circuit) 또는 FPGA(field programmable gate array)와 같은 디지털 전자 디바이스들을 포함하거나, 또는 펌웨어, 메모리, 다른 스토리지 또는 그 조합 내의 프로그램 명령어들에 따라 기술들을 수행하도록 프로그래밍되어 있는 하나 이상의 범용 하드웨어 프로세서를 포함할 수 있다. 그러한 특수 목적 컴퓨팅 디바이스들은 또한 기술들을 달성하기 위해 커스텀 고정 배선 로직, ASIC들, 또는 FPGA들과 커스텀 프로그래밍을 겸비할 수 있다. 다양한 실시예들에서, 특수 목적 컴퓨팅 디바이스들은 기술들을 구현하기 위한 고정 배선 및/또는 프로그램 로직을 포함하는 데스크톱 컴퓨터 시스템들, 휴대용 컴퓨터 시스템들, 핸드헬드 디바이스들, 네트워크 디바이스들, 또는 임의의 다른 디바이스이다.
일 실시예에서, 컴퓨터 시스템(300)은 정보를 통신하기 위한 버스(302) 또는 다른 통신 메커니즘, 및 정보를 프로세싱하기 위한, 버스(302)와 결합된 하드웨어 프로세서(304)를 포함한다. 하드웨어 프로세서(304)는, 예를 들어, 범용 마이크로프로세서이다. 컴퓨터 시스템(300)은 프로세서(304)에 의해 실행될 명령어들 및 정보를 저장하기 위한, 버스(302)에 결합된 메인 메모리(306), 예컨대, RAM(random access memory) 또는 다른 동적 저장 디바이스를 또한 포함한다. 일 구현에서, 메인 메모리(306)는 프로세서(304)에 의해 실행될 명령어들의 실행 동안 임시 변수들 또는 다른 중간 정보를 저장하는 데 사용된다. 그러한 명령어들은, 프로세서(304)에 의해 액세스 가능한 비일시적 저장 매체들에 저장되어 있을 때, 컴퓨터 시스템(300)을 명령어들에 지정된 동작들을 수행하도록 커스터마이징되는 특수 목적 머신으로 만든다.
일 실시예에서, 컴퓨터 시스템(300)은, 프로세서(304)에 대한 명령어들 및 정적 정보를 저장하기 위한, 버스(302)에 결합된 ROM(read only memory)(308) 또는 다른 정적 저장 디바이스를 더 포함한다. 정보 및 명령어들을 저장하기 위한, 자기 디스크, 광학 디스크, 솔리드 스테이트 드라이브, 또는 3차원 크로스 포인트 메모리와 같은, 저장 디바이스(310)가 제공되고 버스(302)에 결합된다.
일 실시예에서, 컴퓨터 시스템(300)은 정보를 컴퓨터 사용자에게 디스플레이하기 위한 CRT(cathode ray tube), LCD(liquid crystal display), 플라스마 디스플레이, LED(light emitting diode) 디스플레이, 또는 OLED(organic light emitting diode) 디스플레이와 같은 디스플레이(312)에 버스(302)를 통해 결합된다. 정보 및 커맨드 선택들을 프로세서(304)로 통신하기 위한 영숫자 및 다른 키들을 포함하는 입력 디바이스(314)가 버스(302)에 결합된다. 다른 유형의 사용자 입력 디바이스는 방향 정보 및 커맨드 선택들을 프로세서(304)에 통신하고 디스플레이(312) 상에서의 커서 움직임을 제어하기 위한, 마우스, 트랙볼, 터치식 디스플레이, 또는 커서 방향 키들과 같은, 커서 컨트롤러(316)이다. 이러한 입력 디바이스는 전형적으로, 디바이스가 평면에서의 위치들을 지정할 수 있게 하는 2 개의 축, 즉 제1 축(예를 들면, x 축) 및 제2 축(예를 들면, y 축)에서의 2 자유도를 갖는다.
일 실시예에 따르면, 본 명세서에서의 기술들은 프로세서(304)가 메인 메모리(306)에 포함된 하나 이상의 명령어의 하나 이상의 시퀀스를 실행하는 것에 응답하여 컴퓨터 시스템(300)에 의해 수행된다. 그러한 명령어들은, 저장 디바이스(310)와 같은, 다른 저장 매체로부터 메인 메모리(306) 내로 판독된다. 메인 메모리(306)에 포함된 명령어 시퀀스들의 실행은 프로세서(304)로 하여금 본 명세서에서 설명된 프로세스 단계들을 수행하게 한다. 대안적인 실시예들에서, 소프트웨어 명령어들 대신에 또는 소프트웨어 명령어들과 조합하여 고정 배선 회로가 사용된다.
"저장 매체"이라는 용어는, 본 명세서에서 사용되는 바와 같이, 머신으로 하여금 특정 방식으로 작동하게 하는 명령어들 및/또는 데이터를 저장하는 임의의 비일시적 매체를 지칭한다. 그러한 저장 매체는 비휘발성 매체 및/또는 휘발성 매체를 포함한다. 비휘발성 매체는, 예를 들어, 광학 디스크, 자기 디스크, 솔리드 스테이트 드라이브, 또는 3차원 크로스 포인트 메모리, 예컨대, 저장 디바이스(310)를 포함한다. 휘발성 매체는 동적 메모리, 예컨대, 메인 메모리(306)를 포함한다. 통상적인 형태의 저장 매체는, 예를 들어, 플로피 디스크, 플렉서블 디스크, 하드 디스크, 솔리드 스테이트 드라이브, 자기 테이프, 또는 임의의 다른 자기 데이터 저장 매체, CD-ROM, 임의의 다른 광학 데이터 저장 매체, 홀 패턴들을 갖는 임의의 물리적 매체, RAM, PROM, 및 EPROM, FLASH-EPROM, NV-RAM, 또는 임의의 다른 메모리 칩, 또는 카트리지를 포함한다.
저장 매체는 송신 매체와 별개이지만 송신 매체와 함께 사용될 수 있다. 송신 매체는 저장 매체들 사이에서 정보를 전달하는 데 참여한다. 예를 들어, 송신 매체는 버스(302)를 구성하는 전선들을 포함한, 동축 케이블, 구리 와이어 및 광섬유를 포함한다. 송신 매체는 또한, 전파(radio-wave) 및 적외선 데이터 통신 동안 생성되는 것과 같은, 음향파 또는 광파의 형태를 취할 수 있다.
일 실시예에서, 실행을 위해 하나 이상의 명령어의 하나 이상의 시퀀스를 프로세서(304)로 전달하는 데 다양한 형태의 매체가 관여된다. 예를 들어, 명령어들은 초기에 원격 컴퓨터의 자기 디스크 또는 솔리드 스테이트 드라이브에 보유된다. 원격 컴퓨터는 자신의 동적 메모리에 명령어들을 로드하고 모뎀을 사용하여 전화선을 통해 명령어들을 전송한다. 컴퓨터 시스템(300)에 로컬인 모뎀은 전화선을 통해 데이터를 수신하고 적외선 송신기를 사용하여 데이터를 적외선 신호로 변환한다. 적외선 검출기는 적외선 신호로 전달되는 데이터를 수신하고 적절한 회로는 데이터를 버스(302)에 배치한다. 버스(302)는 데이터를 메인 메모리(306)로 전달하고, 프로세서(304)는 메인 메모리((306))로부터 명령어들을 검색하여 실행한다. 메인 메모리(306)에 의해 수신되는 명령어들은 프로세서(304)에 의해 실행되기 전이나 실행된 후에 저장 디바이스(310)에 선택적으로 저장될 수 있다.
컴퓨터 시스템(300)은 버스(302)에 결합된 통신 인터페이스(318)를 또한 포함한다. 통신 인터페이스(318)는 로컬 네트워크(322)에 연결되는 네트워크 링크(320)에 대한 양방향 데이터 통신(two-way data communication) 결합을 제공한다. 예를 들어, 통신 인터페이스(318)는 ISDN(integrated service digital network) 카드, 케이블 모뎀, 위성 모뎀, 또는 대응하는 유형의 전화선에 대한 데이터 통신 연결을 제공하기 위한 모뎀이다. 다른 예로서, 통신 인터페이스(318)는 호환 가능한 LAN(local area network)에 대한 데이터 통신 연결을 제공하기 위한 LAN 카드이다. 일부 구현들에서, 무선 링크들이 또한 구현된다. 임의의 그러한 구현에서, 통신 인터페이스(318)는 다양한 유형들의 정보를 나타내는 디지털 데이터 스트림들을 전달하는 전기 신호들, 전자기 신호들, 또는 광학 신호들을 전송 및 수신한다.
네트워크 링크(320)는 전형적으로 하나 이상의 네트워크를 통해 다른 데이터 디바이스들로의 데이터 통신을 제공한다. 예를 들어, 네트워크 링크(320)는 로컬 네트워크(322)를 통해 호스트 컴퓨터(324)에 대한 연결 또는 ISP(Internet Service Provider)(326)에 의해 운영되는 클라우드 데이터 센터 또는 장비에 대한 연결을 제공한다. ISP(326)는 차례로 지금은 "인터넷(328)"이라고 통상적으로 지칭되는 월드 와이드 패킷 데이터 통신 네트워크(world-wide packet data communication network)를 통해 데이터 통신 서비스들을 제공한다. 로컬 네트워크(322) 및 인터넷(328) 양쪽 모두는 디지털 데이터 스트림들을 전달하는 전기 신호들, 전자기 신호들, 또는 광학 신호들을 사용한다. 컴퓨터 시스템(300)으로의 및 컴퓨터 시스템(300)으로부터의 디지털 데이터를 전달하는, 다양한 네트워크들을 통한 신호들 및 네트워크 링크(320) 상의 및 통신 인터페이스(318)를 통한 신호들은 송신 매체의 예시적인 형태들이다. 일 실시예에서, 네트워크(320)는 위에서 설명된 클라우드(202) 또는 클라우드(202)의 일부를 포함한다.
0컴퓨터 시스템(300)은 네트워크(들), 네트워크 링크(320), 및 통신 인터페이스(318)를 통해 메시지들을 전송하고, 프로그램 코드를 포함한, 데이터를 수신한다. 일 실시예에서, 컴퓨터 시스템(300)은 프로세싱하기 위한 코드를 수신한다. 수신된 코드는 수신될 때 프로세서(304)에 의해 실행되고/되거나, 나중의 실행을 위해 저장 디바이스(310) 또는 다른 비휘발성 스토리지에 저장된다.
자율 주행 차량 아키텍처
도 4는 자율 주행 차량(예를 들면, 도 1에 도시된 AV(100))에 대한 예시적인 아키텍처(400)를 도시한다. 아키텍처(400)는 인지 모듈(402)(때때로 인지 회로라고 지칭됨), 계획 모듈(404)(때때로 계획 회로라고 지칭됨), 제어 모듈(406)(때때로 제어 회로라고 지칭됨), 측위 모듈(408)(때때로 측위 회로라고 지칭됨), 및 데이터베이스 모듈(410)(때때로 데이터베이스 회로라고 지칭됨)을 포함한다. 각각의 모듈은 AV(100)의 작동에서 소정의 역할을 한다. 다함께, 모듈들(402, 404, 406, 408, 및 410)은 도 1에 도시된 AV 시스템(120)의 일부일 수 있다. 일부 실시예들에서, 모듈들(402, 404, 406, 408, 및 410) 중 임의의 모듈은 컴퓨터 소프트웨어(예를 들면, 컴퓨터 판독 가능 매체에 저장된 실행 가능 코드) 및 컴퓨터 하드웨어(예를 들면, 하나 이상의 마이크로프로세서, 마이크로컨트롤러, ASIC(application-specific integrated circuit))의 조합, 하드웨어 메모리 디바이스들, 다른 유형들의 집적 회로들, 다른 유형들의 컴퓨터 하드웨어, 또는 이러한 것들 중 일부 또는 전부의 조합이다.
사용 중에, 계획 모듈(404)은 목적지(412)를 나타내는 데이터를 수신하고, 목적지(412)에 도달(예를 들면, 도착)하기 위해 AV(100)에 의해 주행될 수 있는 궤적(414)(때때로 루트라고 지칭됨)을 나타내는 데이터를 결정한다. 계획 모듈(404)이 궤적(414)을 나타내는 데이터를 결정하기 위해, 계획 모듈(404)은 인지 모듈(402), 측위 모듈(408), 및 데이터베이스 모듈(410)로부터 데이터를 수신한다.
인지 모듈(402)은, 예를 들면, 도 1에도 도시된 바와 같이, 하나 이상의 센서(121)를 사용하여 인근의 물리적 대상체들을 식별한다. 대상체들은 분류되고(예를 들면, 보행자, 자전거, 자동차, 교통 표지판 등과 같은 유형들로 그룹화되고), 분류된 대상체들(416)을 포함하는 장면 묘사가 계획 모듈(404)에 제공된다.
계획 모듈(404)은 또한 AV 위치(418)를 나타내는 데이터를 측위 모듈(408)로부터 수신한다. 측위 모듈(408)은 위치를 계산하기 위해 센서들(121)로부터의 데이터 및 데이터베이스 모듈(410)로부터의 데이터(예를 들면, 지리적 데이터)를 사용하여 AV 위치를 결정한다. 예를 들어, 측위 모듈(408)은 GNSS(Global Navigation Satellite System) 센서로부터의 데이터 및 지리적 데이터를 사용하여 AV의 경도와 위도를 계산한다. 일 실시예에서, 측위 모듈(408)에 의해 사용되는 데이터는 도로 기하학적 속성의 고정밀 맵, 도로망 연결 속성을 기술하는 맵, 도로 물리적 속성(예컨대, 교통 속력, 교통량, 차량 교통 차선과 자전거 타는 사람 교통 차선의 수, 차선 폭, 차선 교통 방향, 또는 차선 마커 유형 및 위치, 또는 그 조합)을 설명하는 맵, 및 횡단보도, 교통 표지판 또는 다양한 유형들의 다른 주행 신호(travel signal)와 같은 도로 특징물의 공간적 위치를 설명하는 맵을 포함한다.
제어 모듈(406)은 궤적(414)을 나타내는 데이터 및 AV 위치(418)를 나타내는 데이터를 수신하고, AV(100)로 하여금 목적지(412)까지 궤적(414)을 주행하게 할 방식으로 AV의 제어 기능들(420a 내지 420c)(예를 들면, 조향, 스로틀링, 제동, 점화)을 작동시킨다. 예를 들어, 궤적(414)이 좌회전을 포함하는 경우, 제어 모듈(406)은, 조향 기능의 조향각이 AV(100)로 하여금 좌회전하게 하고 스로틀링 및 제동이 AV(100)로 하여금 이러한 회전이 이루어지기 전에 지나가는 보행자들 또는 차량들을 위해 일시정지 및 대기하게 하도록 하는 방식으로, 제어 기능들(420a 내지 420c)을 작동시킬 것이다.
자율 주행 차량 입력들
도 5는 인지 모듈(402)(도 4)에 의해 사용되는 입력들(502a 내지 502d)(예를 들면, 도 1에 도시된 센서들(121)) 및 출력들(504a 내지 504d)(예를 들면, 센서 데이터)의 예를 도시한다. 하나의 입력(502a)은 라이다(Light Detection and Ranging) 시스템(예를 들면, 도 1에 도시된 라이다(123))이다. 라이다는 그의 가시선에 있는 물리적 대상체들에 관한 데이터를 획득하기 위해 광(예를 들면, 적외선 광과 같은 광 버스트)을 사용하는 기술이다. 라이다 시스템은 출력(504a)으로서 라이다 데이터를 생성한다. 예를 들어, 라이다 데이터는 환경(190)의 표현을 구성하는 데 사용되는 3D 또는 2D 포인트들(포인트 클라우드들이라도 함)의 집합체이다.
다른 입력(502b)은 레이더 시스템이다. 레이더는 인근의 물리적 대상체들에 관한 데이터를 획득하기 위해 전파를 사용하는 기술이다. 레이더는 라이다 시스템의 가시선 내에 있지 않은 대상체들에 관한 데이터를 획득할 수 있다. 레이더 데이터(502b)은 출력(504b)으로서 레이더 데이터를 생성한다. 예를 들어, 레이더 데이터는 환경(190)의 표현을 구성하는 데 사용되는 하나 이상의 무선 주파수 전자기 신호이다.
다른 입력(502c)은 카메라 시스템이다. 카메라 시스템은 인근의 물리적 대상체들에 관한 정보를 획득하기 위해 하나 이상의 카메라(예를 들면, CCD(charge-coupled device)와 같은 광 센서를 사용하는 디지털 카메라들)를 사용한다. 카메라 시스템은 출력(504c)으로서 카메라 데이터를 생성한다. 카메라 데이터는 종종 이미지 데이터(예를 들면, RAW, JPEG, PNG 등과 같은 이미지 데이터 포맷의 데이터)의 형태를 취한다. 일부 예들에서, 카메라 시스템은, 카메라 시스템이 깊이를 인지하는 것을 가능하게 하는, 예를 들면, 입체시(stereopsis)(스테레오 비전)를 위한, 다수의 독립적인 카메라들을 갖는다. 비록 카메라 시스템에 의해 인지되는 대상체들이 여기서 "인근"으로 설명되지만, 이것은 AV를 기준으로 한 것이다. 사용 중에, 카메라 시스템은 멀리 있는, 예를 들면, AV 전방으로 최대 1 킬로미터 이상에 있는 대상체들을 "보도록" 구성될 수 있다. 그에 따라, 카메라 시스템은 멀리 떨어져 있는 대상체들을 인지하도록 최적화되어 있는 센서들 및 렌즈들과 같은 특징부들을 가질 수 있다.
다른 입력(502d)은 TLD(traffic light detection) 시스템이다. TLD 시스템은 하나 이상의 카메라를 사용하여, 시각적 운행 정보를 제공하는 교통 신호등들, 거리 표지판들, 및 다른 물리적 대상체들에 관한 정보를 획득한다. TLD 시스템은 출력(504d)으로서 TLD 데이터를 생성한다. TLD 데이터는 종종 이미지 데이터(예를 들면, RAW, JPEG, PNG 등과 같은 이미지 데이터 포맷의 데이터)의 형태를 취한다. TLD 시스템은, 시각적 운행 정보를 제공하는 가능한 한 많은 물리적 대상체들에 관한 정보를 획득하기 위해 TLD 시스템이 넓은 시야를 가진 카메라(예를 들면, 광각 렌즈 또는 어안 렌즈를 사용함)를 사용함으로써, AV(100)가 이러한 대상체들에 의해 제공되는 모든 관련 운행 정보에 액세스하도록 한다는 점에서, 카메라를 포함하는 시스템과 상이하다. 예를 들어, TLD 시스템의 시야각은 약 120도 이상일 수 있다.
일부 실시예들에서, 출력들(504a 내지 504d)은 센서 융합 기술을 사용하여 결합된다. 따라서, 개별 출력들(504a 내지 504d) 중 어느 하나가 AV(100)의 다른 시스템들에 제공되거나(예를 들면, 도 4에 도시된 계획 모듈(404)에 제공되거나), 결합된 출력이 동일한 유형의 단일 결합 출력 또는 다수의 결합 출력들의 형태(동일한 결합 기술을 사용하는 것 또는 동일한 출력들을 결합시키는 것 또는 양쪽 모두) 또는 상이한 유형들의 단일 결합 출력 또는 다수의 결합 출력들의 형태(예를 들면, 상이한 각자의 결합 기술들을 사용하는 것 또는 상이한 각자의 출력들을 결합시키는 것 또는 양쪽 모두) 중 어느 하나로 다른 시스템들에 제공될 수 있다. 일부 실시예들에서, 조기 융합(early fusion) 기술이 사용된다. 조기 융합 기술은 하나 이상의 데이터 프로세싱 단계가 결합된 출력에 적용되기 전에 출력들을 결합시키는 것을 특징으로 한다. 일부 실시예들에서, 늦은 융합(late fusion) 기술이 사용된다. 늦은 융합 기술은 하나 이상의 데이터 프로세싱 단계가 개별 출력들에 적용된 후에 출력들을 결합시키는 것을 특징으로 한다.
도 6은 라이다 시스템(602)(예를 들면, 도 5에 도시된 입력(502a))의 예를 도시한다. 라이다 시스템(602)은 광 방출기(606)(예를 들면, 레이저 송신기)로부터 광(604a 내지 604c)을 방출한다. 라이다 시스템에 의해 방출되는 광은 전형적으로 가시 스펙트럼에 있지 않으며; 예를 들어, 적외선 광이 종종 사용된다. 방출되는 광(604b)의 일부는 물리적 대상체(608)(예를 들면, 차량)와 조우하고, 라이다 시스템(602)으로 다시 반사된다. (라이다 시스템으로부터 방출되는 광은 전형적으로 물리적 대상체들, 예를 들면, 고체 형태의 물리적 대상체들을 관통하지 않는다). 라이다 시스템(602)은 또한 반사 광을 검출하는 하나 이상의 광 검출기(610)를 갖는다. 일 실시예에서, 라이다 시스템과 연관된 하나 이상의 데이터 프로세싱 시스템은 라이다 시스템의 시야(614)를 나타내는 이미지(612)를 생성한다. 이미지(612)는 물리적 대상체(608)의 경계들(616)을 나타내는 정보를 포함한다. 이러한 방식으로, 이미지(612)는 AV 인근의 하나 이상의 물리적 대상체의 경계들(616)을 결정하는 데 사용된다.
도 7은 작동 중인 라이다 시스템(602)을 도시한다. 이 도면에 도시된 시나리오에서, AV(100)는 이미지(702) 형태의 카메라 시스템 출력(504c) 및 라이다 데이터 포인트들(704) 형태의 라이다 시스템 출력(504a) 양쪽 모두를 수신한다. 사용 중에, AV(100)의 데이터 프로세싱 시스템들은 이미지(702)를 데이터 포인트들(704)과 비교한다. 상세하게는, 이미지(702)에서 식별되는 물리적 대상체(706)가 데이터 포인트들(704) 중에서도 식별된다. 이러한 방식으로, AV(100)는 데이터 포인트들(704)의 윤곽 및 밀도에 기초하여 물리적 대상체의 경계들을 인지한다.
도 8은 라이다 시스템(602)의 동작을 추가적으로 상세하게 도시한다. 위에서 설명된 바와 같이, AV(100)는 라이다 시스템(602)에 의해 검출되는 데이터 포인트들의 특성들에 기초하여 물리적 대상체의 경계를 검출한다. 도 8에 도시된 바와 같이, 지면(802)과 같은 평평한 대상체는 라이다 시스템(602)으로부터 방출되는 광(804a 내지 804d)을 일관된 방식으로 반사할 것이다. 달리 말하면, 라이다 시스템(602)이 일관된 간격을 사용하여 광을 방출하기 때문에, 지면(802)은 광을 동일한 일관된 간격으로 다시 라이다 시스템(602)으로 반사할 것이다. AV(100)가 지면(802) 위를 주행함에 따라, 라이다 시스템(602)은 도로를 방해하는 것이 아무 것도 없는 경우 다음 유효 지면 지점(806)에 의해 반사되는 광을 계속 검출할 것이다. 그렇지만, 대상체(808)가 도로를 방해하는 경우, 라이다 시스템(602)에 의해 방출되는 광(804e 및 804f)은 예상되는 일관된 방식과 부합하지 않는 방식으로 지점들(810a 및 810b)로부터 반사될 것이다. 이 정보로부터, AV(100)는 대상체(808)가 존재한다고 결정할 수 있다. 라이다를 참조하여 설명되었지만, 장애물들이 발생할 수 있고, 레이더, 카메라, 소나 등과 같은, 그러나 이에 제한되지는 않는, 상이한 기본 기술들을 사용하는 센서들에서 식별될 수 있음을 이해할 것이다.
라이다 센서 폐색 검출/정적 대상체 누락 검출
도 9a 내지 도 9c는 AV(100)의 라이다 센서에 의해 생성되는 센서 검출들을 나타낸다. 도 9a 내지 도 9c와 관련하여 라이다 센서가 언급되지만, 레이더, 카메라, 소나 등과 같은, 그러나 이에 제한되지는 않는, 다른 기술들에 대해 다른 유형들의 센서들이 사용될 수 있고 점유 맵들이 생성될 수 있음을 이해할 것이다.
도 9a는 라이다 센서의 360도 시야에 대한 센서 검출 데이터를 나타내는 초기 점유 맵을 도시한다. 초기 점유 맵은 라이다 센서(또는 언급된 다른 센서들)로부터 수신되는 장면 데이터에 기초하여 생성될 수 있다. 초기 점유 맵의 수평 차원은 센서 검출 데이터의 도달 방향(direction of arrival)의 각도 측정치(도(degrees), 라디안(radians), 밀(mils) 등)에 대응하는 방위각 또는 임의의 다른 x축 값을 나타낸다. 초기 점유 맵의 수직 차원은 라이다에 의해 방출되는 광이 라이다 센서로 다시 반사되는 높이에 대응하는 고도 또는 임의의 다른 y축 값을 나타낸다. 예를 들어, 라이다 센서는 30도 내지 -30도의 고도각들로부터의 반사 광을 수신하도록 구성될 수 있다. 하나의 특정 구성에서, 라이다 센서는 최대 15도 및 최저 -25도의 고도각들로부터의 광을 수신할 수 있다. 검은색으로 표시된 초기 점유 맵의 영역들은 센서 판독치들이 수신되었고 제1 기준 세트를 사용하여 유효한 것으로 결정되었던 공간 지점들을 포함하는 시야의 영역들을 나타낸다.
도 9b는 초기 점유 맵에 기초한 필터링된 점유 맵을 도시한다. 일부 경우에, 필터링된 점유 맵은 초기 점유 맵으로부터의 데이터에 제2 기준 세트를 적용하는 것에 의해 생성된다. 제2 기준 세트는 초기 점유 맵에 묘사된 원시 데이터를 정리하는 데 유용하며, 원시 데이터를 정리(예를 들면, 초기 점유 맵에서의 거짓 음성들 및/또는 거짓 양성들을 정정)하기 위한 시간적 기준들과 공간적 기준들 양쪽 모두를 포함할 수 있다.
도 9c는 폐색 맵을 도시한다. 특정 경우에, 폐색 맵은 필터링된 점유 맵에 묘사된 데이터에 제3 기준 세트를 적용하는 것에 의해 생성된다. 제3 기준 세트는 필터링된 점유 맵을 다수의 지점들로 구성된 영역들로 분할하고, 각각의 영역이 센서 폐색의 존재를 배제하기에 충분한 수의 센서 데이터 포인트들을 갖는지 여부를 결정한다. 예시된 예에서, 각각의 영역은 특정 방위각 또는 방위각 범위에 대한 전체 고도 범위를 점유한다. 그렇지만, 영역이, 원하는 대로, 상이한 형상들 및/또는 크기들을 갖도록 구성될 수 있음을 이해할 것이다. 전체 고도 범위를 고려하는 것은 센서 창 높이가 특히 작은 상황들에서 유용할 수 있는데 그 이유는 임의의 센서 폐색이 특정 고도의 모든 지점들은 아닐지라도 대부분의 지점들을 점유할 가능성이 많기 때문이다. 이것은 시스템이 약 -50도 내지 -95도 및 -110도 내지 -125도의 센서의 폐색들을 식별하도록 할 수 있다.
센서 폐색들을 검출하고 센서 폐색들의 검출에 기초하여 센서를 작동시키기 위한 예시적인 프로세스
도 10은 라이다 센서 폐색들을 검출하기 위한 예시적인 프로세스(1000)의 플로차트를 도시한다. 편의상, 프로세스(1000)는 하나 이상의 위치에 위치하는 하나 이상의 컴퓨터의 시스템에 의해 수행되는 것으로 설명될 것이다. 예를 들어, 본 명세서에 따라 적절하게 프로그래밍된, 도 2에 묘사된 컴퓨팅 시스템들 중 하나가 프로세스(1000)를 수행할 수 있다.
단계(1002)에서, 센서 검출 데이터가 시스템의 하나 이상의 프로세서에 수신된다. 센서 검출 데이터는 반사 신호들(return signals)의 범위 값들(range values), 진폭 및/또는 위상(또는 본 명세서에서 설명된 다른 기술)을 포함하는 라이다 반사 데이터 및/또는 레이더 반사 데이터로부터 형성되는 구조화되지 않은 3차원 포인트 클라우드의 형태를 취할 수 있다. 센서 검출 데이터는 AV(100)를 둘러싼 다수의 지점들을 나타낼 수 있고, 예를 들면, 방위각 및 고도, x-y 쌍들 및/또는 극좌표들과 같은, 다양한 좌표 시스템들로 정의될 수 있다.
단계(1004)에서, 센서 검출 데이터를 라이다 센서의 시야를 나타내는 2차원 맵, 어레이 또는 이미지 행렬로 조직화하는 것에 의해 초기 점유 맵이 생성될 수 있다. 예시적인 초기 점유 맵이 위에서 설명되고 도 9a에 묘사되어 있다. 점유 맵의 생성은 차량 주변의 지점들에 대한 제1 점유 값 세트를 결정(예를 들면, 할당)하는 것에 의해 수행될 수 있다. 일부 실시예들에서, 차량을 둘러싼 지점들 모두에 대해 결정이 내려지고, 다른 실시예들에서 차량을 둘러싼 지점들의 서브세트에 대해서만 결정이 내려진다. AV(100)의 위치 또는 다른 알려진 센서 폐색들로 인해 특정 지점이 데이터를 수신하지 않을 것으로 이미 예상될 때 결정이 스킵될 수 있다. 제1 점유 값 세트를 결정하는 것은 각자의 지점들에서 측정치(들)가 획득되었는지 여부를 결정하는 것을 포함한다. 이 결정은 일반적으로 제1 기준 세트에 기초하여 이루어진다. 예를 들어, 각자의 지점에서 수신되는 반사 신호는 검출 임계치 또는 신호 강도를 충족시킬 필요가 있을 수 있다. 반사 신호가 제1 기준 세트의 적어도 검출 임계치를 충족시킨다는 결정에 따라, 반사 신호에 대한 점유 값은 참으로 또는 제1 점유 값으로 설정된다. 반사 신호가 검출 임계치를 충족시키지 못한다는 결정에 따라, 반사 신호에 대한 점유 값은 거짓으로 또는 제2 점유 값으로 설정된다. 어느 경우든지, 이러한 이진 값은 각자의 지점과 연관된 모든 범위 정보를 대체한다. 특정 센서 검출 데이터 세트가 유효한 반사를 구성하기 위한 추가적인 요구 사항들을 제1 기준 세트가 포함할 수 있다는 점에 유의해야 한다.
단계(1006)에서, 필터링된 점유 맵이 초기 점유 맵에 기초하여 생성된다. 예시적인 필터링된 점유 맵이 도 9b에 묘사되어 있다. 필터링된 점유 맵은 초기 점유 맵의 각자의 지점들 각각이 제2 기준 세트를 충족시키는지 여부를 결정하는 것에 의해 초기 점유 맵으로부터 생성될 수 있다. 제2 기준 세트는 공간적 및/또는 시간적 기준들을 포함할 수 있다. 예시적인 공간적 기준들은 초기 점유 맵에서의 제2 점유 값(예를 들면, 거짓 또는 측정치 없음)을 갖는 지점이 제1 점유 값(예를 들면, 참 또는 측정치 검출됨)을 갖는 임계 수의 지점들로부터 임계 거리에 있는지 여부에 기초할 수 있다. 예를 들어, 각자의 지점이 제2 점유 값을 갖는 이웃 지점들을 거의 갖지 않거나 전혀 갖지 않는 경우에(예를 들면, 측정치가 없는 이웃 지점들을 거의 갖지 않거나 전혀 갖지 않는 경우), 제2 기준 세트의 공간적 기준들이 충족될 수 있고 각자의 지점은 제1 점유 값으로 재설정될 수 있다. 유사하게, 각자의 지점이 제1 점유 값을 갖지만 제2 점유 값을 갖는 지점들로 둘러싸인 경우에, 공간적 기준이 실패할 수 있고 점유 값은 제2 점유 값으로 재설정될 수 있다. 예시적인 시간적 기준들은 각자의 지점이 특정 시간 기간에 걸쳐 임계 수의 검출들을 갖는지 여부에 기초할 수 있다. 예를 들어, 각자의 지점이 검출들을 수신했을 때, 각자의 지점의 기록 이전 및/또는 이후의 시간의 80 또는 90% 이상은 제2 기준 세트의 시간적 기준들을 충족시키는 것으로 간주될 수 있으며, 이에 의해 제2 점유 값이 제1 점유 값으로 변경될 수 있게 한다. 더 보수적인 평가는 과거 M-1 개의 프레임 중 임의의 것이 각자의 지점에서 유효한 검출을 가졌을 지점에 제1 점유 값을 할당할 수 있다. 시간적 시간 범위들이 일반적으로 프레임 번호들과 관련하여 참조되며 각각의 프레임이 차지하는 시간의 양은 라이다 센서의 샘플링 주파수에 대응한다는 점에 유의해야 한다. 일부 실시예들에서, 라이다 센서는 초당 최대 150만 개의 데이터 포인트를 기록하도록 구성될 수 있지만; 이것은 전체 시야를 커버하며, 따라서 최신 라이다 시스템이 일반적으로 초당 5 내지 50 개의 프레임을 생성할 것임에 유의해야 한다.
각자의 지점이 제2 기준 세트를 충족시킨다는 결정에 따라, 그의 점유 값은 제1 점유 값으로 설정된다. 게다가, 각자의 지점이 제2 기준 세트를 충족시키지 못한다는 결정에 따라, 그의 점유 값은 제2 점유 값으로 설정된다. 각자의 지점이 시간적 기준들 및 공간적 기준들 양쪽 모두가 충족될 때에만 제2 기준 세트를 충족시키는 것으로 간주될 수 있음을 이해해야 한다. 대안적으로, 공간적 기준들 또는 시간적 기준들 중 한쪽만이 충족될 때 제2 기준 세트가 충족될 수 있도록 하는 가중 기준들이 또한 있을 수 있다. 예를 들어, 각자의 지점을 둘러싼 지점들 하나하나가 모두 제1 점유 값을 갖지만 시간의 약 50% 동안만 각자의 지점에 데이터가 수신되는 경우, 각자의 지점은 여전히 제1 점유 값을 할당받을 수 있다.
일부 실시예들에서, 제2 점유 값을 할당받은 초기 점유 맵으로부터의 지점들만이 제2 기준 세트를 사용하여 평가되고, 초기 점유 맵에서 제1 점유 값을 갖는 것으로 표시된 지점들은 필터링된 점유 맵으로 이월된다. 이 특정 실시예에서, 제2 기준 세트의 적용은 공간적 및 시간적 구멍 폐쇄(hole closing)라고 지칭될 수 있다. 이 작업은 시야의 단지 특히 작은 영역이 폐색되거나 해당 영역이 라이다 센서의 작동을 손상시킬 만큼 충분한 크기가 아님에도 불구하고 작동을 중지시킨 경우에 시스템이 폐색을 잘못 식별하는 것을 방지한다. 이 작업은 또한 분석 중인 현재 프레임 이전 및/또는 이후에 각자의 지점에 대해 적은 수의 데이터 프레임들만이 누락되는 경우에 잘못된 폐색 식별을 방지하는 데 도움이 된다. 일부 실시예들에서, 대상체가 라이다 센서에 의한 대상체의 검출을 어렵게 만들거나 심지어 불가능하게 만드는 속성들을 가질 때 AV(100) 근처의 대상체의 존재를 결정하는 것을 돕기 위해 제2 센서(예를 들면, 이미징 센서)가 사용될 수 있다. 이러한 상황에서, 누락된 센서 검출 데이터가 제2 센서에 의해 제공되는 센서 데이터를 사용하여 채워질 수 있다.
단계(1008)에서, 필터링된 점유 맵에 기초하여 폐색 맵이 생성된다. 폐색 맵은 필터링된 점유 맵에 표현된 지점들 중 적어도 일부에 제3 기준 세트를 적용하는 것에 의해 생성된다. 일부 실시예들에서, 제3 기준 세트는 필터링된 점유 맵의 특정 영역이 제1 점유 값을 갖는 것으로 표시된 임계 수(양) 또는 백분율의 지점들을 갖는지 여부를 결정한다. 영역들은, 직사각형, 원형 및/또는 타원형과 같은, 상이한 형상들 및 크기들을 가질 수 있다. 영역은, 방위각(예를 들면, 35도 또는 35 내지 40도와 같은 제1 차원 내의 범위)과 같은, 제1 차원 내에 속하는 모든 지점들을 포함할 수 있고, 임계치는, 예를 들면, 30%, 40%, 50%, 60%, 70%, 80%, 90% 또는 95%일 수 있다. 임계치가 충족되는 경우에, 영역 내의 모든 지점들은 제1 점유 값을 할당받을 수 있고, 임계값이 충족되지 않는 경우에, 미리 결정된 구역 내의 모든 지점들은 제2 점유 값을 할당받을 수 있다. 미리 결정된 구역에 대한 제2 점유 값의 할당은 해당 영역 내의 폐색으로서 보고될 수 있다. 보고된 폐색은 센서의 센서 창에 위치하는 고체 장애물로서 특징지어질 수 있다. 일부 실시예들에서, 필터링된 점유 맵 전체가 다수의 인접 영역들로 분할될 수 있다. 2 개 이상의 인접 영역이 제2 점유 값을 할당받은 경우에, 다수의 폐색된 영역들이 2 개 이상의 인접 영역을 포함하는 단일 폐색으로서 정의될 수 있다.
거짓 양성 센서 폐색들이 다수의 방식들로 억제할 수 있다. 일부 실시예들에서, 거짓 양성들을 추가로 억제하기 위해 지리적 맵 데이터가 사용될 수 있다. 이것은 라이다 센서에 의해 검출 가능할 수 없을 것 같은 알려진 유형들의 대상체들이 AV(100)에 매우 근접한 것으로 알려진 상황들에서 유용할 수 있다. 예를 들어, AV(100)가 큰 수역(body of water) 근처에서 운전하고 있을 때, 라이다 센서에 의해 방출된 광이 물에서 반사되어 다시 라이다 센서로 되돌아갈 가능성이 적기 때문에 센서 반사들(sensor returns)이 손실될 수 있다. 수역을 모니터링하고 있는 것으로 알려진 센서 시야의 일 부분이 센서 폐색 분석으로부터 제거될 수 있다. 유사하게, AV(100)가 하늘의 넓은 구역이 보이는 위치에서 운전하고 있을 때, 시야의 상부 부분들은 일반적으로 어떠한 유용한 신호 반사들(signal returns)도 수신하지 않을 것이다. 이러한 유형들의 상황들에서, 지리적 데이터는 이러한 알려진 대상체 유형들을 식별하고 폐색이 알려진 대상체 유형에 연계될 수 있는 폐색 표시들을 무시하는 데 도움이 될 수 있다. 하늘 예에서, 시야의 상부 부분이 분석으로부터 제거될 수 있다. 지리적 데이터는 센서 폐색들을 검출할 목적으로 어떤 고도에서 데이터 반사들(data returns)을 무시하기 시작해야 하는지를 시스템의 프로세서에 알릴 수 있다. 일부 실시예들에서, AV(100) 자체의 부분들이 라이다 센서 시야의 부분들을 폐색할 수 있다. 그러한 구성에서, AV(100)에 의해 야기되는 센서 폐색들은 무시되거나 폐색 분석에 반영될 수 있다. 실패한 센서 반사들의 다른 통상적인 원인들은 검은색 자동차들 및 젖은 도로들을 포함한다.
식별된 폐색들은 AV(100)에 의해 상이한 방식들로 사용될 수 있다. 시야의 많은 부분이 폐색되는 경우에, AV(100)는 자율 주행 작동들을 중단하거나 백업 센서들에 더 많이 의존하도록 구성될 수 있다. 그러한 경우에, AV(100)의 탑승자들은 청각적 또는 시각적 수단에 의해 폐색을 통지받을 것이다. 경미한 폐색들은 완전 자율 주행 작동을 저하시킬 수 있거나 AV(100)로 하여금 특정 상황들에서 더 보수적으로 작동하게 할 수 있다. 일부 실시예들에서, AV(100)는, 워터 제트(water jet), 센서 창 와이핑 메커니즘 또는 라이다 센서와 연관된 센서 창을 세정 또는 청소하기 위한 다른 수단과 같은, 라이다 센서 폐색 세정 또는 청소 시스템을 갖는다.
대상체 누락
본 명세서에서 설명된 바와 같이, 일시적인 대상체 누락들 또는 미검출들이, 임계 거리 내에 대상체가 없는 것(예를 들면, 센서의 일 부분이 하늘로 지향되어 있을 때와 같이, 빔 또는 파를 반사할 대상체가 없는 것), 파 또는 빔을 센서로 다시 반사하지 않는 대상체(예를 들면, 물), 신호 잡음 등과 같은, 그러나 이에 제한되지는 않는, 시나리오들 중 임의의 것 또는 시나리오들의 임의의 조합에 의해 야기될 수 있다. 일시적인 대상체 누락들 또는 미검출들은 상대적으로 짧은 시간 기간(예를 들면, 몇 초 또는 1분 미만)에 걸쳐 저절로 해결되거나 (예를 들면, 다른 것 또는 다른 사람에 의해 취해지는 적극적인 조치들 없이) 수동적으로 해결될 수 있다. 예를 들어, 일시적인 대상체 미검출이 장면이 빔 또는 파를 반사할 대상체를 갖지 않는 것(또는 대상체가 빔 또는 파를 센서로 다시 반사하지 않는 것)으로 인한 경우, 차량이 (빔 또는 파를 반사하는 대상체를 갖는) 상이한 장면으로 이동할 때 대상체 미검출이 해결될 것이다.
정적 대상체 누락들 또는 미검출들은 또한, 센서 폐색 또는 오작동과 같은, 그러나 이에 제한되지는 않는, 하나 이상의 시나리오에 의해 야기될 수 있다. 정적 대상체 누락들 또는 미검출들은 저절로 해결되지 않을 수 있고/있거나 해결되기 위해 다른 것 또는 다른 사람에 의해 취해지는 적극적인 조치들에 의존하지 않을 수 있다. 예를 들어, 정적 대상체 미검출이 센서 폐색으로 인한 경우, 센서가 청소되거나 정비될 때까지 미검출이 해결되지 않을 수 있다.
일시적인 대상체 누락들 또는 미검출들은 장면 또는 차량 위치에 기초하여 예상되고 저절로 해결되어야 하는 반면 정적 대상체 미검출들은 적극적인 조치들을 필요로 할 수 있다는 점을 감안할 때, 이 시스템은 대상체 미검출이 일시적인 대상체 미검출인지 정적 대상체 미검출인지를 결정할 수 있다. 대상체 미검출이 정적인 경우, 이 시스템은 경고를 보내거나 문제를 개선하기 위한 조치들을 취할 수 있는 반면, 미검출이 일시적인 경우, 이 시스템은 저절로 해결될 미검출 시간을 제공할 수 있다.
도 11은 정적 대상체 누락을 검출하기 위해 적어도 하나의 프로세서에 의해 구현되는 루틴(1100)의 예를 예시하는 흐름 다이어그램이다. 루틴(1100)은 예시 목적으로만 제공된다. 루틴(1100)의 단계들 중 하나 이상이 제거될 수 있다는 것 또는 단계들의 순서가 변경될 수 있다는 것이 이해될 것이다. 특정 경우에, 하나 이상의 단계가 동시에 또는 동시발생적으로 수행될 수 있다. 게다가, 명확한 예를 예시할 목적으로, 하나 이상의 특정 시스템 컴포넌트가 데이터 흐름 스테이지들 각각 동안 다양한 동작들을 수행하는 맥락에서 설명된다. 그렇지만, 시스템 컴포넌트들에 걸친 프로세싱 단계들의 다른 시스템 배열들 및 분포들이 사용될 수 있다.
블록(1102)에서, 프로세서가 장면 데이터를 수신한다. 장면 데이터는 차량(100) 및/또는 차량(100)의 장면(본 명세서에서 차량 장면이라고도 지칭됨) 내의 다른 대상체들에 관련된 데이터를 포함할 수 있다. 일부 경우에, 차량(100) 주위의 대상체들(비제한적인 예: 인지 모듈(402)에 의해 식별되는 대상체들) 및/또는 검출된 대상체 유형과 같은, 장면 데이터는 대상체가 특정 위치에서 검출되는지 여부를 나타낼 수 있다. 본 명세서에서 설명되는 바와 같이, 대상체들은 보행자들, 자전거들, 다른 차량들, 표지판들, 연석들, 건물들 등을 포함할 수 있지만 이에 제한되지 않는다. 비제한적인 예로서, 장면 데이터(502)는 차량 및/또는 장면 내의 대상체들의 위치, 배향, 속도, 가속도, 또는 다른 정보와 연관된 데이터(본 명세서에서 장면 상태 데이터 또는 상태 데이터라고도 지칭됨)를 포함할 수 있다.
장면 데이터는 인지 모듈(402)(또는 다른 소스)과 연관된 센서 제품군으로부터 획득될 수 있고, 카메라들, 라이다 센서들, 레이더 센서들, 소나 센서들, 및/또는 마이크로폰들과 같은 하나 이상의 디바이스를 포함하는 센서 제품군으로부터 획득되는 데이터, 또는 대상체들과의 통신(예를 들면, 다른 차량들과의 무선 통신) 등에 기초할 수 있다. 본 명세서에서 설명되는 바와 같이, 장면 데이터는 대상체들의 가속도, 속도, (차량(100)에 상대적인 또는 절대적인/지리적인) 위치, 배향/헤딩, 분류, 또는 크기 등 중 임의의 것 또는 이들의 임의의 조합을 포함할 수 있다.
특정 경우에, 장면 데이터는 차량 주위의 특정 지점에서 대상체가 식별되는지 여부를 나타낼 수 있다. 일부 경우에, 장면 데이터는 동일한 또는 상이한 고도들에서 차량 주위의 360도 뷰(또는 상이한 방위각)에 대응하는 데이터를 포함할 수 있다. 특정 경우에, 장면 데이터는 중심점으로부터 +/- 30도 고도에 대응하는 데이터를 포함할 수 있다. 일부 그러한 경우에, 중심점은 장면 데이터와 연관된 하나 이상의 센서(예를 들면, 장면 데이터를 생성했거나 장면 데이터를 도출하기 위해 사용되었던 센서들)의 고도에 대응할 수 있다. 특정 경우에, 센서는 센서에 상대적인 상이한 상하 고도들(up/down elevations)을 검출할 수 있다. 예를 들어, 센서는 위로 20도 및 아래로 -25도의 고도를 검출하도록 구성될 수 있다.
블록(1104)에서, 프로세서는 장면 데이터에 기초하여 점유 어레이를 생성한다. 일부 경우에, 점유 어레이는 상이한 행들 및 열들에 배열된 지점들을 포함할 수 있다. 그렇지만, 점유 어레이가 다양한 방식들로 배열될 수 있음을 이해할 것이다. 점유 어레이에서의 각각의 지점은 장면 내의 또는 차량 주위의 위치에 대응할 수 있다. 예를 들어, 장면 데이터가 30도 고도를 갖는 360도(또는 일부 다른 방위각)로부터의 데이터를 포함하는 경우, 어레이에서의 각각의 지점은 해당 장면 데이터 내의 어떤 지점에 대응할 수 있다.
일부 경우에, 점유 어레이의 행들이 상이한 고도들에 대응할 수 있다. 예를 들어, 특정 행(예를 들면, 중간 행)은 센서의 위치를 기준으로 0의 고도에 대응할 수 있다. 그렇지만, 임의의 행이 센서 및 어레이의 설정에 기초하여 센서를 기준으로 0의 고도를 갖도록 구성될 수 있음을 이해할 것이다. 특정 경우에, 점유 어레이의 상단 행 및 하단 행은 고도의 양극단(extremes)(예를 들면, 최소 고도 및 최대 고도)에 대응할 수 있다. 그렇지만, 상단 행 및 하단 행이 다양한 방식들로 구성될 수 있음을 이해할 것이다.
어레이의 열들은 중심점으로부터 상이한 방위각들에 대응할 수 있다. 예를 들어, 360 개의 열이 있고 장면 데이터가 360도의 방위각을 갖는 경우, 각각의 열은 360도 방위각의 1도에 대응할 수 있다(원하는 바에 따라 상이한 방위각 척도들 및/또는 상이한 수의 열들이 사용될 수 있다). 추가적인 열들이 있는 경우, 각각의 열은 360도 방위각의 더 작은 부분에 대응할 수 있거나, 열 수가 장면 데이터의 방위각보다 작은 경우, 열들은 방위각의 더 큰 부분에 대응할 수 있다.
어레이에서의 각각의 지점은 점유 값을 포함할 수 있다. 점유 값은 해당 지점에 대응하는 위치에서 대상체가 검출되었는지 여부를 나타낼 수 있다. 일부 경우에, 점유 값은 해당 지점에서 대상체가 검출되었는지 여부를 나타내는 이진 값(예를 들면, "대상체 검출됨" 또는 "대상체 누락")일 수 있다. 특정 경우에, 점유 값은 해당 지점에서 대상체가 검출되었을/검출되지 않았을 가능성 또는 확률을 나타낼 수 있다. 일부 경우에, 지점들 및/또는 점유 값은 센서에 상대적인 검출된 대상체의 위치를 추가로 나타낼 수 있다. 예를 들어, 지점 및/또는 점유 값은 센서에 상대적인 대상체의 x, y, z 좌표를 나타낼 수 있다.
본 명세서에서 설명된 바와 같이, 일부 경우에, 프로세서는 수신된 신호에 기초하여 점유 어레이에서의 지점들에 대한 점유 값을 결정할 수 있다. 예를 들어, 각각의 지점에 수신되는 반사 신호가 검출 임계치 또는 신호 강도 임계치를 충족시키는 경우, 프로세서는 해당 지점에 대한 점유 값을 "대상체 검출됨" 또는 "참"을 나타내도록 설정할 수 있다. 이것은 논리 1(logical one) 또는 어떤 다른 표시자의 형태일 수 있다. 반사 신호가 검출 임계치 또는 신호 강도 임계치를 충족시키지 못한다는 결정에 기초하여, 프로세서는 지점에 대한 점유 값을 "대상체 누락", "대상체 검출되지 않음" 또는 "거짓"을 나타내도록 설정할 수 있다. 이것은 논리 0(logical zero) 또는 어떤 다른 표시자의 형태일 수 있다. 어느 경우든지, 특정 경우에, 이러한 이진 값은 각자의 지점과 연관된 범위 정보를 대체할 수 있다. 특정 센서 검출 데이터 세트가 유효한 반사를 구성하기 위한 추가적인 요구 사항들을 제1 기준 세트가 포함할 수 있다는 점에 유의해야 한다.
블록(1106)에서, 프로세서는 하나 이상의 지점의 점유 값을 수정한다. 일부 경우에, 프로세서는 하나 이상의 지점의 점유 값을 대상체 누락의 표시로부터 "대상체 검출됨" 또는 "일시적인 대상체 누락"의 표시로 수정할 수 있다.
본 명세서에서 설명되는 바와 같이, 대상체 누락은 일시적이거나 정적일 수 있다. 정적 대상체 누락들을 식별하기 위해, 프로세서는 어레이에서의 대상체 누락들을 분석하고 특정 지점에 대한 대상체 누락이 일시적인 대상체 누락인지 정적 대상체 누락인지를 결정할 수 있다. 어레이의 지점들에서의 일시적인 대상체 누락들의 경우, 프로세서는 해당 지점에서 대상체들이 검출되었다는 것, 해당 지점에 대한 대상체 누락이 일시적인 대상체 누락이라는 것, 또는 해당 지점에서 대상체가 "검출된다/되었다"는 것을 나타내도록 점유 값을 수정할 수 있다.
일부 경우에, 프로세서는 차량의 결정된 위치 또는 차량과 연관된 위치 데이터에 기초하여 하나 이상의 지점의 점유 값을 수정한다. 본 명세서에서 설명되는 바와 같이, 차량의 위치는 측위 센서(예를 들면, GPS 등)와 같은, 그러나 이에 제한되지는 않는, 다양한 기술들 및/또는 센서들을 사용하는 것, 장면 데이터를 맵의 장면 데이터와 비교하는 것, 랜드마크들의 식별 등에 의해 결정될 수 있다.
차량의 결정된 위치에 기초하여, 프로세서는 특정 지점이 대상체를 검출하지 못할 가능성이 있는 차량 주위의 위치에 대응하는지 여부를 결정할 수 있다. 일부 경우에, 위치는 호수, 큰 강, 대양, 바다 등과 같은, 그러나 이에 제한되지는 않는, (큰) 수역의 위치에 대응할 수 있지만 이에 제한되지 않는다. 특정 경우에, 위치는 하늘 등에 대응할 수 있다.
결정된 위치 및 특정 지점이 파 또는 빔을 반사할 것으로 예상되지 않는 대상체의 위치에 대응한다는 결정에 기초하여, 프로세서는 특정 지점에 대한 점유 값을 "대상체 누락"으로부터 "일시적인 대상체 누락" 또는 "대상체 검출됨"으로 조정할 수 있다. 이러한 방식으로, 프로세서는 대상체 누락들을 갖는 지점들을 일시적인 대상체 누락들로서 식별하고/하거나 지점들을 정적 대상체 누락들을 잠재적으로 가질 것으로서 제거할 수 있다.
특정 경우에, 프로세서는 하나 이상의 지점의 시간적 데이터에 기초하여 하나 이상의 지점의 점유 값을 수정할 수 있다. 본 명세서에서 설명되는 바와 같이, 차량이 이동함에 따라, 센서는 (상이한 위치들에서) 상이한 장면들과 마주하게 된다. 일부 경우에, 어레이의 한 지점은 검출할 대상체가 없거나 비반사성 대상체가 위치하는 장면에서의 한 위치에 대응할 수 있다. 그렇지만, 그 지점이 대상체로부터의 반사가 없는 위치에 대응하는 시간들이 변할 것이다(예를 들면, 때로는 그 지점이 대상체 검출됨을 나타낼 것이고 때로는 그 지점이 대상체 누락을 나타낼 것이다). 그에 따라, 한 지점이 때로는 대상체를 검출하고 때로는 검출하지 않는 경우, 프로세서는 현재 대상체 누락이 일시적이며 정적이지 않다고 결정할 수 있다. 일부 경우에, 현재 대상체 누락이 일시적인지 정적인지 결정하기 위해, 프로세서는 그 지점의 시간적 데이터를 비교할 수 있다. 제1 시간에서, 그 지점의 점유 값이 대상체가 검출된다는 것을 나타내고, (제1 시간 이후의) 제2 시간에서, 동일한 지점에 대한 점유 값이 대상체 누락을 나타내는 경우, 프로세서는 대상체 누락이 일시적이라고 결정하고 제2 시간에서의 점유 값을 "대상체 검출됨" 또는 "일시적인 대상체 누락"을 나타내도록 조정할 수 있다.
특정 경우에, 프로세서는 점유 값을 수정할지 여부를 결정하기 위해 시간적 기준들인 시간 기간(또는 프레임 수)에 걸쳐 임계 수의 검출들을 사용할 수 있다. 일부 그러한 경우에, 그 지점에 대한 점유 값이 시간 기간(또는 프레임 수)에 걸쳐 임계 수의 검출들을 충족시키는 경우, 해당 시간 기간 동안의 임의의 시간(또는 프레임 수 내의 임의의 프레임)에 대한 해당 지점의 점유 값이 "대상체 검출됨"으로 설정될 수 있다. 이러한 방식으로, 프로세서는 대상체 누락들을 갖는 지점들을 일시적인 대상체 누락들로서 식별하고/하거나 지점들을 정적 대상체 누락들을 잠재적으로 가질 것으로서 제거할 수 있다.
일부 경우에, 프로세서는 어레이에서의 다른 지점들의 점유 값에 기초하여 하나 이상의 지점의 점유 값을 수정할 수 있다. 일부 그러한 경우에, 프로세서는 한 그룹의 지점들을 분석하고 지점들 중 일부 지점들의 값을 다른 지점들의 점유 값과 매칭하도록 조정할 수 있다. 일부 경우에, 한 그룹의 지점들은 다수의 행들 및/또는 열들에 걸쳐 있는 한 그룹의 연속적인 지점들일 수 있다. 일부 그러한 경우에, 분석되는 한 그룹의 지점들(및 수정되는 지점들)은 동일한 열 또는 행에 있을 수 있다. 특정 경우에, 분석되는 한 그룹의 지점들은 하나 이상의 전체 열 또는 행을 포함할 수 있다. 특정 경우에, 한 그룹의 지점들은 정사각형, 직사각형, 또는 다른 형상의 형상으로 되어 있을 수 있다. 예를 들어, 20x20 지점 영역 내에서, 17 개의 지점이 대상체가 검출된다는 것을 나타내는 점유 값을 포함하고 3 개의 지점이 대상체 누락들을 나타내는 경우, 프로세서는 대상체 누락들이 일시적일 가능성이 있다고(및/또는 대상체 누락이 잡음으로 인한 것이거나 센서 오작동 또는 폐색 이외의 다른 것으로 인한 것일 가능성이 있다고) 결정하고, 3 개의 지점의 점유 값을 "대상체 검출됨" 또는 "일시적인 대상체 누락"을 나타내도록 조정할 수 있다. 일부 경우에, 프로세서는 하나 이상의 기준을 사용하여 영역 내의 지점들의 서브세트의 점유 값을 "검출된 대상체 없음"으로부터 "대상체 검출됨"으로 변경할지 여부를 결정할 수 있다. 특정 경우에, 기준들은, 근접한 또는 인접한 지점들의 일부, 대부분, 또는 전부가 "대상체 검출됨"의 점유 값을 가지는 경우, 또는 영역 내의 일정 백분율의 지점들이 "대상체 검출됨"의 점유 값을 가지는 경우, 한 지점에 대한 점유 값이 변경될 수 있다는 것을 나타낼 수 있다.
특정 경우에, 한 그룹의 지점들의 대부분(또는 70% 또는 80% 또는 어떤 다른 임계치 초과)이 "대상체 누락"의 점유 값을 가지는 경우, 프로세서는 그룹 내의 다른 지점들의 점유 값을 "대상체 검출됨"으로부터 "대상체 누락"으로 조정할 수 있다. 일부 그러한 경우에, 분석되는 한 그룹의 지점들(및 수정되는 지점들)은 동일한 열 또는 행에 있을 수 있다. 특정 경우에, 분석되는 한 그룹의 지점들은 하나 이상의 전체 열 또는 행을 포함할 수 있다.
일부 경우에, 프로세서는 공간적 기준들을 사용하여 점유 값을 수정할 수 있다. 공간적 기준들은 점유 맵에서의 하나의 점유 값을 갖는 지점이 상이한 점유 값을 갖는 임계 수의 지점들로부터 임계 거리에 있는지 여부에 기초할 수 있다. 임계 거리는 접해 있는(contiguous) 또는 인접한 지점들, 또는 임계 수의 지점들 내의 지점일 수 있고, 임계 수는 특정 영역 또는 그룹 내의 임계 백분율의 지점들일 수 있다. 예를 들어, 특정 지점이 "대상체 누락"을 나타내는 이웃 지점들을 거의 또는 전혀 갖지 않는 경우에, 프로세서는 공간 기준들이 충족되고 특정 지점의 점유 값이 "대상체 검출됨" 등으로(또는 그 반대로) 수정될 수 있다고 결정할 수 있다.
특정 경우에, 프로세서는 전체 열(또는 행)을 분석하여 행에 있는 모든 지점들의 점유 값이 수정되어야 하는지 여부를 결정할 수 있다. 일부 그러한 경우에, 프로세서는 시간적 데이터, 차량의 위치 데이터 및/또는 더 작은 영역들에 기초하여 어레이에서의 지점들을 수정한 후에 전체 행을 분석할 수 있다. 도 9b 및 도 9c는 특정 열에 있는 지점들의 점유 값들을 수정하기 위한 프로세서에 의한 전체 열들의 분석의 예이다.
블록(1108)에서, 프로세서는 적어도 하나의 정적 대상체 누락을 식별한다. 본 명세서에서 설명되는 바와 같이, 정적 대상체 누락은 정적 대상체 누락을 야기하는 센서 폐색, 센서 오작동 또는 다른 요인을 나타낼 수 있고, 점유 어레이의 영역 내의 다수의 지점들의 점유 값에 기초할 수 있다.
일부 경우에, 프로세서는 일시적인 대상체 누락들에 대해 지점들을 분석하고/하거나 적어도 하나의 지점의 점유 값을 조정한 후에 정적 대상체 누락을 식별한다. 특정 경우에, 프로세서는 특정 영역에서의 한 그룹의 지점들(예를 들면, 하나 초과, 대부분, 임계 수 등)에 기초하여 정적 대상체 누락을 식별한다. 일부 경우에, 한 그룹의 지점들은 동일한 점유 값(예를 들면, "대상체 누락", 또는 "대상체 없음"이 임계 양 미만일 확률)을 공유할 수 있다. 특정 경우에, 한 그룹의 지점들은 동일한 열 또는 방위각에 있고/있거나 인접할 수 있다. 예를 들어, 프로세서는 동일한 열 또는 방위각에 있는 임계 수의 지점들이 "대상체 누락"의 점유 값을 포함하는 경우 정적 대상체 누락을 결정할 수 있다. 일부 경우에, 임계치는 열에 있는 지점들의 90%(또는 원하는 바에 따라 어떤 다른 임계 값)일 수 있다. 배향에 따라, 특정 경우에, 프로세서는 동일한 행 또는 고도에 있는 임계 수의 지점들이 대상체 누락을 나타내는 점유 값을 포함하는 경우 정적 대상체 누락을 결정할 수 있다.
루틴(1100)에서 더 적거나 더 많거나 상이한 블록들이 사용될 수 있다. 예를 들어, 일부 경우에, 프로세서는, 폐색의 검출에 기초하여, 센서가 청소되어야 한다는 것을 나타내거나, 센서 폐색이 있다는 경고를 개시하거나, 정적 대상체 누락(예를 들면, 센서 폐색 또는 오작동)이 검출된다는 경고를 사용자, 계획 모듈(또는 시스템), 또는 제어 모듈(또는 시스템)에 통신하거나, 프로세스를 개시하거나, 차량(100)으로 하여금 자율 주행 모드를 종료하게(예를 들면, 차량의 자율 주행 운전을 중지하게) 하고/하거나 이동하는 것을 멈추게 하고, 센서의 작동을 중지시키며, 상이한 센서들(이용 가능한 경우)로 전환하게 하고/하거나 센서의 데이터에 주어지는 신뢰의 정도를 감소시키게 하는 등을 할 수 있다.
일부 경우에, 프로세서는 정적 대상체 누락을 식별하기 전에 (일시적인 정적 누락들에 대해) 어레이의 지점들 모두를 연속적으로 또는 동시에 분석할 수 있다. 일부 그러한 경우에, 프로세서는 행 단위로 또는 열 단위로 지점들을 분석할 수 있다. 특정 경우에, 프로세서는 "대상체 누락"을 나타내는 지점들(만)을 연속적으로 또는 동시에 분석할 수 있다. 이러한 방식으로, 프로세서는 분석할 지점들의 수를 감소시키는 것에 의해 프로세싱 시간을 단축할 수 있다. 이것은 전력 소비를 절감하고 정적 대상체 누락 검출의 속도를 높일 수 있다.
추가적인 예들
본 명세서에서 설명된 방법들 및 작업들 모두는 컴퓨터 시스템에 의해 수행되고 완전히 자동화될 수 있다. 컴퓨터 시스템은, 일부 경우에, 설명된 기능들을 수행하기 위해 네트워크를 통해 통신하고 상호 연동하는 다수의 개별 컴퓨터들 또는 컴퓨팅 디바이스들(예를 들면, 물리적 서버들, 워크스테이션들, 스토리지 어레이들, 클라우드 컴퓨팅 리소스들 등)을 포함할 수 있다. 각각의 그러한 컴퓨팅 디바이스는 전형적으로 메모리 또는 다른 비일시적 컴퓨터 판독 가능 저장 매체 또는 디바이스(예를 들면, 솔리드 스테이트 저장 디바이스들, 디스크 드라이브들 등)에 저장된 프로그램 명령어들 또는 모듈들을 실행하는 프로세서(또는 다수의 프로세서들)를 포함한다. 본 명세서에 개시된 다양한 기능들은 그러한 프로그램 명령어들로 구체화될 수 있거나, 컴퓨터 시스템의 주문형 회로(application-specific circuitry)(예를 들면, ASIC들 또는 FPGA들)로 구현될 수 있다. 컴퓨터 시스템이 다수의 컴퓨팅 디바이스들을 포함하는 경우에, 이러한 디바이스들은 동일 위치에 배치될 수 있지만 반드시 그럴 필요는 없다. 개시된 방법들 및 작업들의 결과들은, 솔리드 스테이트 메모리 칩들 또는 자기 디스크들과 같은, 물리적 저장 디바이스들을 상이한 상태로 변환하는 것에 의해 지속적으로 저장될 수 있다. 일부 실시예들에서, 컴퓨터 시스템은 프로세싱 리소스들이 다수의 별개의 사업체들 또는 다른 사용자들에 의해 공유되는 클라우드 기반 컴퓨팅 시스템일 수 있다.
본 명세서에서 설명되거나 본 개시내용의 도면들에 예시된 프로세스들은 이벤트에 응답하여, 예컨대, 미리 결정된 또는 동적으로 결정된 스케줄에 따라, 사용자 또는 시스템 관리자에 의해 개시될 때 요구 시에, 또는 어떤 다른 이벤트에 응답하여 시작될 수 있다. 그러한 프로세스들이 개시될 때, 하나 이상의 비일시적 컴퓨터 판독 가능 매체(예를 들면, 하드 드라이브, 플래시 메모리, 이동식 매체 등)에 저장된 실행 가능 프로그램 명령어 세트는 서버 또는 다른 컴퓨팅 디바이스의 메모리(예를 들면, RAM)에 로딩될 수 있다. 실행 가능 명령어들은 이어서 컴퓨팅 디바이스의 하드웨어 기반 컴퓨터 프로세서에 의해 실행될 수 있다. 일부 실시예들에서, 그러한 프로세스들 또는 그의 부분들은 다수의 컴퓨팅 디바이스들 및/또는 다수의 프로세서들에서, 직렬로 또는 병렬로, 구현될 수 있다.
실시예에 따라, 본 명세서에서 설명된 프로세스들 또는 알고리즘들 중 임의의 것의 특정 행위들, 이벤트들, 또는 기능들은 상이한 시퀀스로 수행될 수 있거나, 추가, 병합, 또는 완전히 배제될 수 있다(예를 들면, 설명된 동작들 또는 이벤트들 모두가 알고리즘의 실시에 필요한 것은 아니다). 더욱이, 특정 실시예들에서, 동작들 또는 이벤트들은, 순차적으로가 아니라, 동시에, 예를 들면, 멀티스레드 프로세싱, 인터럽트 프로세싱, 또는 다수의 프로세서들 또는 프로세서 코어들을 통해 또는 다른 병렬 아키텍처들 상에서 수행될 수 있다.
본 명세서에서 개시된 실시예들과 관련하여 설명되는 다양한 예시적인 논리 블록들, 모듈들, 루틴들, 및 알고리즘 단계들은 전자 하드웨어(예를 들면, ASIC들 또는 FPGA 디바이스들), 컴퓨터 하드웨어 상에서 실행되는 컴퓨터 소프트웨어, 또는 이 둘의 조합들로서 구현될 수 있다. 더욱이, 본 명세서에서 개시된 실시예들과 관련하여 설명되는 다양한 예시적인 논리 블록들 및 모듈들은, 본 명세서에서 설명된 기능들을 수행하도록 설계된, 프로세서 디바이스, "DSP"(digital signal processor), "ASIC"(application specific integrated circuit), "FPGA"(field programmable gate array) 또는 다른 프로그래머블 로직 디바이스, 개별 게이트 또는 트랜지스터 로직, 개별 하드웨어 컴포넌트들, 또는 이들의 임의의 조합과 같은, 머신에 의해 구현되거나 수행될 수 있다. 프로세서 디바이스는 마이크로프로세서일 수 있지만, 대안으로, 프로세서 디바이스는 제어기, 마이크로컨트롤러, 또는 상태 머신, 이들의 조합들 등일 수 있다. 프로세서 디바이스는 컴퓨터 실행 가능 명령어들을 프로세싱하도록 구성된 전기 회로를 포함할 수 있다. 다른 실시예에서, 프로세서 디바이스는 컴퓨터 실행 가능 명령어들을 프로세싱하지 않고 논리 연산들을 수행하는 FPGA 또는 다른 프로그래밍 가능 디바이스를 포함한다. 프로세서 디바이스는 또한 컴퓨팅 디바이스들의 조합, 예를 들면, DSP와 마이크로프로세서의 조합, 복수의 마이크로프로세서들, DSP 코어와 결합된 하나 이상의 마이크로프로세서, 또는 임의의 다른 그러한 구성으로서 구현될 수 있다. 비록 본 명세서에서 주로 디지털 기술과 관련하여 설명되었지만, 프로세서 디바이스는 주로 아날로그 컴포넌트들을 또한 포함할 수 있다. 예를 들어, 본 명세서에서 설명된 렌더링 기술들의 일부 또는 전부는 아날로그 회로 또는 아날로그 및 디지털 혼합 회로로 구현될 수 있다. 컴퓨팅 환경은, 몇 가지 예를 들면, 마이크로프로세서에 기초한 컴퓨터 시스템, 메인프레임 컴퓨터, 디지털 신호 프로세서, 휴대용 컴퓨팅 디바이스, 디바이스 제어기, 또는 기기 내의 계산 엔진을 포함하지만 이들로 제한되지 않는, 임의의 유형의 컴퓨터 시스템을 포함할 수 있다.
본 명세서에서 개시된 실시예들과 관련하여 설명되는 방법, 프로세스, 루틴, 또는 알고리즘의 요소들은 하드웨어로 직접, 프로세서 디바이스에 의해 실행되는 소프트웨어 모듈로, 또는 이 둘의 조합으로 구체화될 수 있다. 소프트웨어 모듈은 RAM 메모리, 플래시 메모리, ROM 메모리, EPROM 메모리, EEPROM 메모리, 레지스터들, 하드 디스크, 이동식 디스크, CD-ROM, 또는 임의의 다른 형태의 비일시적 컴퓨터 판독 가능 저장 매체에 존재할 수 있다. 예시적인 저장 매체는, 프로세서 디바이스가 저장 매체로부터 정보를 판독하고 저장 매체에 정보를 기입할 수 있도록, 프로세서 디바이스에 결합될 수 있다. 대안으로, 저장 매체가 프로세서 디바이스에 통합될 수 있다. 프로세서 디바이스 및 저장 매체가 ASIC에 존재할 수 있다. ASIC은 사용자 단말에 존재할 수 있다. 대안으로, 프로세서 디바이스 및 저장 매체는 사용자 단말에 개별 컴포넌트들로서 존재할 수 있다.
전술한 설명에서, 실시예들은 구현마다 달라질 수 있는 다수의 특정 세부 사항들을 참조하여 설명되었다. 그에 따라, 상세한 설명 및 도면들은 제한적인 의미보다는 예시적인 의미로 간주되어야 한다. 청구항들의 범위의 유일한 독점적인 지표, 및 출원인들이 청구항들의 범위이도록 의도한 것은, 본 출원에서 특정 형태로 나오는 일련의 청구항들의 문언적 등가 범위이며, 임의의 후속 보정을 포함한다. 그러한 청구항들에 포함된 용어들에 대한 본 명세서에 명시적으로 기재된 임의의 정의들은 청구항들에서 사용되는 그러한 용어들의 의미를 결정한다. 추가적으로, 전술한 설명 및 이하의 청구항들에서 "더 포함하는"이라는 용어가 사용될 때, 이 문구에 뒤따르는 것은 추가적인 단계 또는 엔티티, 또는 이전에 언급된 단계 또는 엔티티의 서브단계/서브엔티티일 수 있다.

Claims (20)

  1. 방법으로서,
    센서에 의해 검출되는 신호들에 기초하여 차량의 환경과 연관된 장면 데이터를 수신하는 단계;
    상기 장면 데이터에 기초하여 점유 어레이를 생성하는 단계 - 상기 점유 어레이는:
    복수의 지점들 - 각각의 지점은 상기 환경 내의 위치를 나타냄 -, 및
    각각의 지점에 대한 점유 값 - 상기 복수의 지점들 중 특정 지점에 대한 점유 값은 상기 특정 지점에 대응하는 상기 환경 내의 특정 위치에서 대상체가 검출되는지 여부를 나타냄 - 을 포함함 -;
    상기 복수의 지점들 중 적어도 하나의 제1 지점의 점유 값을, 상기 차량의 결정된 위치, 상기 적어도 하나의 제1 지점과 연관된 시간적 데이터, 또는 지점들의 어레이의 적어도 하나의 제2 지점의 점유 값 중 적어도 하나에 기초하여, 수정하는 단계; 및
    상기 점유 어레이의 특정 영역 내의 상기 복수의 지점들 중 한 그룹의 지점들의 한 그룹의 점유 값들에 기초하여 적어도 정적 대상체 누락을 식별하는 단계 - 상기 한 그룹의 점유 값들은 상기 적어도 하나의 제1 지점의 점유 값을 포함함 -
    를 포함하는, 방법.
  2. 제1항에 있어서, 상기 점유 어레이의 각각의 열은 상기 차량 주위의 상이한 방위각을 나타내고, 상기 점유 어레이의 각각의 행은 상이한 각도 고도(angular elevation)를 나타내는 것인, 방법.
  3. 제1항 또는 제2항에 있어서, 상기 특정 영역 내의 상기 한 그룹의 지점들의 상기 한 그룹의 점유 값들에 기초하여 적어도 하나의 정적 대상체 누락을 식별하는 단계는, 상기 한 그룹의 점유 값들의 임계 양이 대상체가 검출되지 않는다는 것을 나타낸다고 결정하는 단계를 포함하는 것인, 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서, 상기 한 그룹의 지점들은 동일한 방위각에 대응하는 지점들을 포함하는 것인, 방법.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서, 상기 복수의 지점들 중 적어도 하나의 제1 지점의 점유 값을 수정하는 단계는, 상기 차량의 상기 결정된 위치에 기초하여 상기 복수의 지점들 중 적어도 하나의 제1 지점의 점유 값을 수정하는 단계를 포함하는 것인, 방법.
  6. 제5항에 있어서, 상기 차량의 상기 결정된 위치에 기초하여 상기 복수의 지점들 중 적어도 하나의 제1 지점의 점유 값을 수정하는 단계는, 상기 차량의 상기 결정된 위치와 상기 결정된 위치를 포함하는 맵의 비교에 기초하여 상기 차량의 환경 내의 수역(body of water)을 식별하는 단계; 상기 적어도 하나의 제1 지점이 상기 수역에 대응한다고 결정하는 단계; 및 상기 적어도 하나의 제1 지점을 대상체의 존재를 나타내도록 수정하는 단계를 포함하는 것인, 방법.
  7. 제1항 내지 제6항 중 어느 한 항에 있어서, 상기 복수의 지점들 중 적어도 하나의 제1 지점의 점유 값을 수정하는 단계는, 상기 적어도 하나의 제1 지점과 연관된 상기 시간적 데이터에 기초하여 상기 복수의 지점들 중 상기 적어도 하나의 제1 지점의 점유 값을 수정하는 단계를 포함하는 것인, 방법.
  8. 제7항에 있어서, 상기 적어도 하나의 제1 지점의 점유 값은 제1 시간에서의 제1 점유 값이고 대상체가 검출되지 않는다는 것을 나타내며, 상기 적어도 하나의 제1 지점과 연관된 상기 시간적 데이터에 기초하여 상기 적어도 하나의 제1 지점의 상기 제1 점유 값을 수정하는 단계는, 상기 제1 점유 값을 제2 시간에서의 상기 적어도 하나의 제1 지점의 제2 점유 값과 비교하는 단계 - 상기 제2 점유 값은 대상체가 검출된다는 것을 나타냄 -; 및 상기 제1 점유 값을 대상체가 검출된다는 것을 나타내도록 수정하는 단계를 포함하는 것인, 방법.
  9. 제1항 내지 제8항 중 어느 한 항에 있어서, 상기 적어도 하나의 제1 지점의 점유 값은 대상체가 검출되지 않는다는 것을 나타내고, 상기 적어도 하나의 제1 지점의 점유 값은 적어도 하나의 제2 지점의 점유 값에 기초하여 수정되며, 상기 적어도 하나의 제1 지점의 점유 값을 적어도 하나의 제2 지점의 점유 값에 기초하여 수정하는 단계는, 상기 적어도 하나의 제1 지점에 근접한 한 세트의 지점들에 대응하는 각각의 점유 값이 대상체가 검출된다는 것을 나타낸다고 결정하는 단계; 및 상기 적어도 하나의 제1 지점의 점유 값을 대상체가 검출된다는 것을 나타내도록 수정하는 단계를 포함하는 것인, 방법.
  10. 시스템으로서,
    컴퓨터 실행 가능 명령어들을 저장하는 데이터 저장소; 및
    상기 컴퓨터 실행 가능 명령어들을 실행하도록 구성된 프로세서
    를 포함하며, 상기 컴퓨터 실행 가능 명령어들의 실행은 상기 시스템으로 하여금:
    센서에 의해 검출되는 신호들에 기초하여 차량의 환경과 연관된 장면 데이터를 수신하게 하고;
    상기 장면 데이터에 기초하여 점유 어레이를 생성하게 하며 - 상기 점유 어레이는:
    복수의 지점들 - 각각의 지점은 상기 환경 내의 위치를 나타냄 -, 및
    각각의 지점에 대한 점유 값 - 상기 복수의 지점들 중 특정 지점에 대한 점유 값은 상기 특정 지점에 대응하는 상기 환경 내의 특정 위치에서 대상체가 검출되는지 여부를 나타냄 - 을 포함함 -;
    상기 복수의 지점들 중 적어도 하나의 제1 지점의 점유 값을, 상기 차량의 결정된 위치, 상기 적어도 하나의 제1 지점과 연관된 시간적 데이터, 또는 지점들의 어레이의 적어도 하나의 제2 지점의 점유 값 중 적어도 하나에 기초하여, 수정하게 하고;
    상기 점유 어레이의 특정 영역 내의 상기 복수의 지점들 중 한 그룹의 지점들의 한 그룹의 점유 값들에 기초하여 적어도 정적 대상체 누락을 식별하게 하며, 상기 한 그룹의 점유 값들은 상기 적어도 하나의 제1 지점의 점유 값을 포함한 것인, 시스템.
  11. 제10항에 있어서, 상기 복수의 지점들 중 적어도 하나의 제1 지점의 점유 값을 수정하기 위해, 상기 컴퓨터 실행 가능 명령어들의 실행은 상기 시스템으로 하여금 상기 차량의 상기 결정된 위치에 기초하여 상기 복수의 지점들 중 적어도 하나의 제1 지점의 점유 값을 수정하게 하는 것인, 시스템.
  12. 제11항에 있어서, 상기 차량의 상기 결정된 위치에 기초하여 상기 복수의 지점들 중 적어도 하나의 제1 지점의 점유 값을 수정하기 위해, 상기 컴퓨터 실행 가능 명령어들의 실행은, 상기 시스템으로 하여금, 상기 차량의 상기 결정된 위치와 상기 결정된 위치를 포함하는 맵의 비교에 기초하여 상기 차량의 환경 내의 수역을 식별하게 하고; 상기 적어도 하나의 제1 지점이 상기 수역에 대응한다고 결정하게 하며; 상기 적어도 하나의 제1 지점을 대상체의 존재를 나타내도록 수정하게 하는 것인, 시스템.
  13. 제10항 내지 제12항 중 어느 한 항에 있어서, 상기 복수의 지점들 중 적어도 하나의 제1 지점의 점유 값을 수정하기 위해, 상기 컴퓨터 실행 가능 명령어들의 실행은, 상기 시스템으로 하여금, 상기 적어도 하나의 제1 지점과 연관된 상기 시간적 데이터에 기초하여 상기 복수의 지점들 중 상기 적어도 하나의 제1 지점의 점유 값을 수정하게 하는 것인, 시스템.
  14. 제13항에 있어서, 상기 적어도 하나의 제1 지점의 점유 값은 제1 시간에서의 제1 점유 값이고 대상체가 검출되지 않는다는 것을 나타내며, 상기 적어도 하나의 제1 지점과 연관된 상기 시간적 데이터에 기초하여 상기 적어도 하나의 제1 지점의 상기 제1 점유 값을 수정하기 위해, 상기 컴퓨터 실행 가능 명령어들의 실행은, 상기 시스템으로 하여금, 상기 제1 점유 값을 제2 시간에서의 상기 적어도 하나의 제1 지점의 제2 점유 값과 비교하게 하고 - 상기 제2 점유 값은 대상체가 검출된다는 것을 나타냄 -; 상기 제1 점유 값을 대상체가 검출된다는 것을 나타내도록 수정하게 하는 것인, 시스템.
  15. 제10항 내지 제14항 중 어느 한 항에 있어서, 상기 적어도 하나의 제1 지점의 점유 값은 대상체가 검출되지 않는다는 것을 나타내고,
    상기 프로세서는 상기 적어도 하나의 제1 지점의 점유 값을 적어도 하나의 제2 지점의 점유 값에 기초하여 수정하도록 구성되며,
    상기 적어도 하나의 제1 지점의 점유 값을 적어도 하나의 제2 지점의 점유 값에 기초하여 수정하기 위해, 상기 컴퓨터 실행 가능 명령어들의 실행은, 상기 프로세서로 하여금, 상기 적어도 하나의 제1 지점에 근접한 한 세트의 지점들에 대응하는 각각의 점유 값이 대상체가 검출된다는 것을 나타낸다고 결정하게 하고; 상기 적어도 하나의 제1 지점의 점유 값을 대상체가 검출된다는 것을 나타내도록 수정하게 하는 것인, 시스템.
  16. 컴퓨터 실행 가능 명령어들을 포함하는 비일시적 컴퓨터 판독 가능 매체로서, 상기 컴퓨터 실행 가능 명령어들은, 컴퓨팅 시스템에 의해 실행될 때, 상기 컴퓨팅 시스템으로 하여금:
    센서에 의해 검출되는 신호들에 기초하여 차량의 환경과 연관된 장면 데이터를 수신하게 하고;
    상기 장면 데이터에 기초하여 점유 어레이를 생성하게 하며 - 상기 점유 어레이는:
    복수의 지점들 - 각각의 지점은 상기 환경 내의 위치를 나타냄 -, 및
    각각의 지점에 대한 점유 값 - 상기 복수의 지점들 중 특정 지점에 대한 점유 값은 상기 특정 지점에 대응하는 상기 환경 내의 특정 위치에서 대상체가 검출되는지 여부를 나타냄 - 을 포함함 -;
    상기 복수의 지점들 중 적어도 하나의 제1 지점의 점유 값을, 상기 차량의 결정된 위치, 상기 적어도 하나의 제1 지점과 연관된 시간적 데이터, 또는 지점들의 어레이의 적어도 하나의 제2 지점의 점유 값 중 적어도 하나에 기초하여, 수정하게 하고;
    상기 점유 어레이의 특정 영역 내의 상기 복수의 지점들 중 한 그룹의 지점들의 한 그룹의 점유 값들에 기초하여 적어도 정적 대상체 누락을 식별하게 하며, 상기 한 그룹의 점유 값들은 상기 적어도 하나의 제1 지점의 점유 값을 포함한 것인, 비일시적 컴퓨터 판독 가능 매체.
  17. 제16항에 있어서, 상기 특정 영역 내의 상기 한 그룹의 지점들의 상기 한 그룹의 점유 값들에 기초하여 적어도 하나의 정적 대상체 누락을 식별하기 위해, 상기 컴퓨터 실행 가능 명령어들의 실행은, 상기 시스템으로 하여금, 상기 한 그룹의 점유 값들의 임계 양이 대상체가 검출되지 않는다는 것을 나타낸다고 결정하게 하는 것인, 비일시적 컴퓨터 판독 가능 매체.
  18. 제16항 또는 제17항에 있어서, 상기 복수의 지점들 중 적어도 하나의 제1 지점의 점유 값을 수정하기 위해, 상기 컴퓨터 실행 가능 명령어들의 실행은, 상기 시스템으로 하여금, 상기 차량의 상기 결정된 위치에 기초하여 상기 복수의 지점들 중 적어도 하나의 제1 지점의 점유 값을 수정하게 하는 것인, 비일시적 컴퓨터 판독 가능 매체.
  19. 제16항 내지 제18항 중 어느 한 항에 있어서, 상기 복수의 지점들 중 상기 적어도 하나의 제1 지점의 점유 값을 수정하기 위해, 상기 컴퓨터 실행 가능 명령어들의 실행은, 상기 시스템으로 하여금, 상기 적어도 하나의 제1 지점과 연관된 상기 시간적 데이터에 기초하여 상기 복수의 지점들 중 상기 적어도 하나의 제1 지점의 점유 값을 수정하게 하는 것인, 비일시적 컴퓨터 판독 가능 매체.
  20. 제16항 내지 제19항 중 어느 한 항에 있어서, 상기 적어도 하나의 제1 지점의 점유 값은 대상체가 검출되지 않는다는 것을 나타내고,
    상기 컴퓨터 실행 가능 명령어들의 실행은, 상기 시스템으로 하여금, 상기 적어도 하나의 제1 지점의 점유 값을 적어도 하나의 제2 지점의 점유 값에 기초하여 수정하게 하고,
    상기 적어도 하나의 제1 지점의 점유 값을 적어도 하나의 제2 지점의 점유 값에 기초하여 수정하기 위해, 상기 컴퓨터 실행 가능 명령어들의 실행은, 상기 시스템으로 하여금, 상기 적어도 하나의 제1 지점에 근접한 한 세트의 지점들에 대응하는 각각의 점유 값이 대상체가 검출된다는 것을 나타낸다고 결정하게 하고 상기 적어도 하나의 제1 지점의 점유 값을 대상체가 검출된다는 것을 나타내도록 수정하게 하는 것인, 비일시적 컴퓨터 판독 가능 매체.
KR1020220097427A 2021-08-04 2022-08-04 센서 대상체 검출 모니터링 KR20230020931A (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US202163229204P 2021-08-04 2021-08-04
US63/229,204 2021-08-04
US17/654,375 2022-03-10
US17/654,375 US20230041716A1 (en) 2021-08-04 2022-03-10 Sensor object detection monitoring

Publications (1)

Publication Number Publication Date
KR20230020931A true KR20230020931A (ko) 2023-02-13

Family

ID=84540563

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220097427A KR20230020931A (ko) 2021-08-04 2022-08-04 센서 대상체 검출 모니터링

Country Status (5)

Country Link
US (1) US20230041716A1 (ko)
KR (1) KR20230020931A (ko)
CN (1) CN115703412A (ko)
DE (1) DE102022119203A1 (ko)
GB (1) GB2611407B (ko)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE112017008137T5 (de) * 2017-10-03 2020-07-02 Intel Corporation Kartieren einer rasterbelegung unter verwendung einer fehlerbereichsverteilung
EP3594719A1 (en) * 2018-07-13 2020-01-15 Commissariat à l'Energie Atomique et aux Energies Alternatives Environment sensing method and apparatus using a wide-angle distance sensor
DE102021112349A1 (de) * 2020-05-12 2021-11-18 Motional Ad Llc Fahrzeugbetrieb unter verwendung eines dynamischen belegungsrasters

Also Published As

Publication number Publication date
US20230041716A1 (en) 2023-02-09
GB202211115D0 (en) 2022-09-14
CN115703412A (zh) 2023-02-17
GB2611407B (en) 2024-02-07
DE102022119203A1 (de) 2023-02-09
GB2611407A (en) 2023-04-05

Similar Documents

Publication Publication Date Title
KR102593948B1 (ko) 주석 달기를 위한 데이터 샘플의 자동 선택
KR102652687B1 (ko) 센서 고장에 대한 자율 주행 차량 대응방안을 구현하기 위한 시스템 및 방법
KR102663570B1 (ko) 차량의 궤적을 계획 및 업데이트하기 위한 시스템 및 방법
KR102584053B1 (ko) 사이렌 신호의 검출과 분류 및 사이렌 신호 소스의 로컬화
KR102534562B1 (ko) 긴급 차량 검출 시스템 및 방법
CN111664854A (zh) 物体位置指示器系统和方法
KR20210077617A (ko) 융합된 카메라/LiDAR 데이터 포인트를 사용한 자동화된 대상체 주석 달기
KR102588954B1 (ko) Lidar 시맨틱 네트워크를 사용한 지평면 추정
US20200192368A1 (en) Methods for generating maps using hyper-graph data structures
US20220122363A1 (en) IDENTIFYING OBJECTS USING LiDAR
KR102549258B1 (ko) 이미지 시맨틱스 네트워크로부터의 단안 3d 대상체 검출
US11970183B2 (en) AV path planning with calibration information
KR102410182B1 (ko) 환경의 미리 정의된 특징부에 기초한 로컬화
US11999372B2 (en) Operation of an autonomous vehicle based on availability of navigational information
KR20220054743A (ko) 서브시스템 성능 평가를 위한 메트릭 역전파
KR20230004212A (ko) 대상체 검출을 위한 교차 모달리티 능동 학습
GB2611225A (en) Estimating speed profiles
KR20210149624A (ko) Lidar를 사용한 배경 특징부 식별
KR102518209B1 (ko) 고스트 포인트 필터링
US20210078580A1 (en) Vehicle route modification to improve vehicle location information
US20230169780A1 (en) Automatically detecting traffic signals using sensor data
KR20240005944A (ko) 박스 예측을 사용한 lidar 포인트 클라우드 세그먼트화 개선
KR20230082520A (ko) 운전가능한 도로 세그먼트들의 자동 주석 달기
KR20230020931A (ko) 센서 대상체 검출 모니터링
KR20220141206A (ko) 자율 주행 차량을 위한 적응형 포인트 클라우드 생성