KR20230051035A - Radar와 lidar 융합을 사용한 대상체 검출 - Google Patents

Radar와 lidar 융합을 사용한 대상체 검출 Download PDF

Info

Publication number
KR20230051035A
KR20230051035A KR1020220005141A KR20220005141A KR20230051035A KR 20230051035 A KR20230051035 A KR 20230051035A KR 1020220005141 A KR1020220005141 A KR 1020220005141A KR 20220005141 A KR20220005141 A KR 20220005141A KR 20230051035 A KR20230051035 A KR 20230051035A
Authority
KR
South Korea
Prior art keywords
clusters
lidar
radar
point cloud
generating
Prior art date
Application number
KR1020220005141A
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 KR20230051035A publication Critical patent/KR20230051035A/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/86Combinations of lidar systems with systems other than lidar, radar or sonar, e.g. with direction finders
    • 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
    • G01S13/06Systems determining position data of a target
    • G01S13/42Simultaneous measurement of distance and other co-ordinates
    • 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
    • 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
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • 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/86Combinations of radar systems with non-radar systems, e.g. sonar, direction finder
    • 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/86Combinations of radar systems with non-radar systems, e.g. sonar, direction finder
    • G01S13/865Combination of radar systems with lidar 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
    • 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
    • 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
    • G01S17/06Systems determining position data of a target
    • G01S17/42Simultaneous measurement of distance and other co-ordinates
    • 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
    • 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/41Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S13/00 using analysis of echo signal for target characterisation; Target signature; Target cross-section
    • 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/41Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S13/00 using analysis of echo signal for target characterisation; Target signature; Target cross-section
    • G01S7/411Identification of targets based on measurements of radar reflectivity
    • G01S7/412Identification of targets based on measurements of radar reflectivity based on a comparison between measured values and known or stored values
    • 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/41Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S13/00 using analysis of echo signal for target characterisation; Target signature; Target cross-section
    • G01S7/417Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S13/00 using analysis of echo signal for target characterisation; Target signature; Target cross-section involving the use of neural networks
    • 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
    • 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/4808Evaluating distance, position or velocity data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/25Fusion techniques
    • G06F18/253Fusion techniques of extracted features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/162Segmentation; Edge detection involving graph-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • 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/0002Automatic control, details of type of controller or control system architecture
    • B60W2050/0004In digital systems, e.g. discrete-time systems involving sampling
    • B60W2050/0005Processor details or data handling, e.g. memory registers or chip architecture
    • 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
    • B60W2420/00Indexing codes relating to the type of sensors based on the principle of their operation
    • B60W2420/40Photo, light or radio wave sensitive means, e.g. infrared sensors
    • B60W2420/408Radar; Laser, e.g. lidar
    • B60W2420/52
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Electromagnetism (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Automation & Control Theory (AREA)
  • Medical Informatics (AREA)
  • Mechanical Engineering (AREA)
  • Computing Systems (AREA)
  • Transportation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Traffic Control Systems (AREA)
  • Radar Systems Or Details Thereof (AREA)

Abstract

레이더와 라이다 융합을 사용하는 대상체 검출 방법들이 제공되며, 이 방법은 레이더와 라이다에 대한 포인트 클라우드 클러스터들을 제각기 결합시키는 클러스터들을 생성하는 단계를 포함할 수 있으며, 이로부터 딥 러닝 모델을 사용하여 융합된 특징들이 결정된다. 시스템들 및 컴퓨터 프로그램 제품들이 또한 제공된다.

Description

RADAR와 LIDAR 융합을 사용한 대상체 검출{OBJECT DETECTION USING RADAR AND LIDAR FUSION}
LiDAR(Light Detection and Ranging)는 방출기에 의해 방출되고, 대상체에 의해 반사되며, 검출기에 의해 검출되는 광으로부터 정보를 결정한다. 유사하게, RADAR(Radio Detection and Ranging)는 방출기에 의해 방출되고 대상체에 의해 반사되는 전파들로부터 대상체 정보를 결정한다. 정보는, 대상체까지의 거리(range), 대상체의 속도 등과 같은, 대상체와 연관된 데이터를 포함한다. 검출기는 대상체에 의해 반사되는 광을 수신하는 광검출기(photodetector)이다. 검출기는 솔리드 스테이트 광검출기, 광전자 증배관(photomultiplier) 또는 이들의 임의의 조합들일 수 있다.
도 1은 자율 주행 시스템(autonomous system)의 하나 이상의 컴포넌트를 포함하는 차량이 구현될 수 있는 예시적인 환경이다.
도 2는 자율 주행 시스템을 포함하는 차량의 하나 이상의 시스템의 다이어그램이다.
도 3은 도 1 및 도 2의 하나 이상의 디바이스 및/또는 하나 이상의 시스템의 컴포넌트들의 다이어그램이다.
도 4a는 자율 주행 시스템의 특정 컴포넌트들의 다이어그램이다.
도 4b는 신경 네트워크의 구현의 다이어그램이다.
도 4c 및 도 4d는 콘볼루션 신경 네트워크(convolutional neural network, CNN)의 예시적인 작동을 예시하는 다이어그램이다.
도 5는 RADAR(Radio Detection and Ranging)와 LiDAR(Light Detection and Ranging) 융합을 사용한 대상체 검출 프로세스의 구현의 다이어그램이다.
도 6aa 및 도 6ab는 대상체 검출을 위한 RADAR와 LiDAR 융합 네트워크를 집합적으로 나타내는 다이어그램들이다.
도 6b는 LiDAR와 RADAR 클러스터들에 대한 예시적인 워크플로 휴리스틱 기반 연관을 나타내는 블록 다이어그램이다.
도 6c는 장면에서의 LiDAR와 RADAR 클러스터들의 연관의 예를 나타내는 다이어그램이다.
도 7은 RADAR와 LiDAR 융합을 사용한 대상체 검출 프로세스의 플로차트이다.
이하의 설명에서는, 설명 목적으로 본 개시에 대한 완전한 이해를 제공하기 위해 다수의 특정 세부 사항들이 제시된다. 그렇지만, 본 개시에 의해 기술되는 실시예들이 이러한 특정 세부 사항들이 없더라도 실시될 수 있음이 명백할 것이다. 일부 경우에, 본 개시의 양태들을 불필요하게 모호하게 하는 것을 피하기 위해 잘 알려진 구조들 및 디바이스들은 블록 다이어그램 형태로 예시되어 있다.
시스템들, 디바이스들, 모듈들, 명령어 블록들, 데이터 요소들 등을 나타내는 것들과 같은, 개략적인 요소들의 특정 배열들 또는 순서들이 설명의 편의를 위해 도면들에 예시되어 있다. 그렇지만, 본 기술 분야의 통상의 기술자라면 도면들에서의 개략적인 요소들의 특정 순서 또는 배열이, 그러한 것으로 명시적으로 기술되지 않는 한, 프로세스들의 특정 프로세싱 순서 또는 시퀀스, 또는 프로세스들의 분리가 필요하다는 것을 암시하는 것으로 의미되지 않음을 이해할 것이다. 게다가, 도면에 개략적인 요소를 포함시키는 것은, 그러한 것으로 명시적으로 기술되지 않는 한 일부 실시예들에서, 그러한 요소가 모든 실시예들에서 필요하다는 것 또는 그러한 요소에 의해 표현되는 특징들이 다른 요소들에 포함되지 않을 수 있거나 다른 요소들과 결합되지 않을 수 있다는 것을 암시하는 것으로 의미되지 않는다.
게다가, 2 개 이상의 다른 개략적인 요소 사이의 연결, 관계 또는 연관을 예시하기 위해 실선 또는 파선 또는 화살표와 같은 연결 요소들이 도면들에서 사용되는 경우에, 임의의 그러한 연결 요소들의 부재는 연결, 관계 또는 연관이 존재할 수 없음을 암시하는 것으로 의미되지 않는다. 환언하면, 본 개시를 모호하게 하지 않기 위해 요소들 사이의 일부 연결들, 관계들 또는 연관들이 도면들에 예시되어 있지 않다. 추가적으로, 예시의 편의를 위해, 요소들 사이의 다수의 연결들, 관계들 또는 연관들을 나타내기 위해 단일의 연결 요소가 사용될 수 있다. 예를 들어, 연결 요소가 신호들, 데이터 또는 명령어들(예를 들면, "소프트웨어 명령어들")의 통신을 나타내는 경우에, 본 기술 분야의 통상의 기술자라면 그러한 요소가, 통신을 수행하기 위해 필요하게 될 수 있는, 하나 또는 다수의 신호 경로(예를 들면, 버스)를 나타낼 수 있다는 것을 이해할 것이다.
제1, 제2, 제3 등의 용어들이 다양한 컴포넌트들을 기술하는 데 사용되지만, 이러한 요소들이 이러한 용어들에 의해 제한되어서는 안된다. 제1, 제2, 제3 등의 용어들은 하나의 요소를 다른 요소와 구별하는 데만 사용된다. 예를 들어, 기술된 실시예들의 범위를 벗어나지 않으면서, 제1 접촉은 제2 접촉이라고 지칭될 수 있고, 유사하게 제2 접촉은 제1 접촉이라고 지칭될 수 있다. 제1 접촉과 제2 접촉은 둘 모두 접촉이지만, 동일한 접촉은 아니다.
본원에서의 다양한 기술된 실시예들에 대한 설명에서 사용되는 전문용어는 특정 실시예들을 기술하기 위해서만 포함되어 있으며, 제한하는 것으로 의도되지 않는다. 다양한 기술된 실시예들에 대한 설명 및 첨부된 청구항들에서 사용되는 바와 같이, 단수 형태들("a", "an" 및 "the")은 복수 형태들도 포함하는 것으로 의도되고, 문맥이 달리 명확히 나타내지 않는 한, "하나 이상" 또는 "적어도 하나"와 상호 교환 가능하게 사용될 수 있다. "및/또는"이라는 용어가, 본원에서 사용되는 바와 같이, 연관된 열거된 항목들 중 하나 이상의 항목의 임의의 및 모든 가능한 조합들을 지칭하고 포괄한다는 것이 또한 이해될 것이다. "포함한다(includes)", 포함하는(including), 포함한다(comprises)" 및/또는 "포함하는(comprising)"이라는 용어들이, 본 설명에서 사용될 때, 언급된 특징들, 정수들, 단계들, 동작들, 요소들, 및/또는 컴포넌트들의 존재를 명시하지만, 하나 이상의 다른 특징, 정수, 단계, 동작, 요소, 컴포넌트, 및/또는 이들의 그룹들의 존재 또는 추가를 배제하지 않는다는 것이 추가로 이해될 것이다.
본원에서 사용되는 바와 같이, "통신" 및 "통신하다"라는 용어들은 정보(또는, 예를 들어, 데이터, 신호들, 메시지들, 명령어들, 커맨드들 등에 의해 표현되는 정보)의 수신, 접수, 송신, 전달, 제공 등 중 적어도 하나를 지칭한다. 하나의 유닛(예를 들면, 디바이스, 시스템, 디바이스 또는 시스템의 컴포넌트, 이들의 조합들 등)이 다른 유닛과 통신한다는 것은 하나의 유닛이 직접 또는 간접적으로 다른 유닛으로부터 정보를 수신하고/하거나 다른 유닛으로 정보를 전송(예를 들면, 송신)할 수 있음을 의미한다. 이것은 본질적으로 유선 및/또는 무선인 직접 또는 간접 연결을 지칭할 수 있다. 추가적으로, 송신되는 정보가 제1 유닛과 제2 유닛 사이에서 수정, 프로세싱, 중계 및/또는 라우팅될 수 있을지라도 2 개의 유닛은 서로 통신하고 있을 수 있다. 예를 들어, 제1 유닛이 정보를 수동적으로 수신하고 정보를 제2 유닛으로 능동적으로 송신하지 않을지라도 제1 유닛은 제2 유닛과 통신하고 있을 수 있다. 다른 예로서, 적어도 하나의 중간 유닛(예를 들면, 제1 유닛과 제2 유닛 사이에 위치하는 제3 유닛)이 제1 유닛으로부터 수신되는 정보를 프로세싱하고 프로세싱된 정보를 제2 유닛으로 송신하는 경우 제1 유닛은 제2 유닛과 통신하고 있을 수 있다. 일부 실시예들에서, 메시지는 데이터를 포함하는 네트워크 패킷(예를 들면, 데이터 패킷 등)을 지칭할 수 있다.
본원에서 사용되는 바와 같이, "~ 경우"라는 용어는, 선택적으로, 문맥에 따라 "~할 때", 또는 "~시에" 또는 "~라고 결정하는 것에 응답하여", "~을 검출하는 것에 응답하여" 등을 의미하는 것으로 해석된다. 유사하게, 문구 "~라고 결정되는 경우" 또는 "[언급된 조건 또는 이벤트]가 검출되는 경우"는, 선택적으로, 문맥에 따라, "~라고 결정할 시에", "~라고 결정하는 것에 응답하여", "[언급된 조건 또는 이벤트]를 검출할 시에", "[언급된 조건 또는 이벤트]를 검출하는 것에 응답하여" 등을 의미하는 것으로 해석된다. 또한, 본원에서 사용되는 바와 같이, "갖는다"(has, have), "갖는(having)" 등의 용어들은 개방형(open-ended) 용어들인 것으로 의도된다. 게다가, 문구 "~에 기초하여"는, 달리 명시적으로 언급되지 않는 한, "~에 적어도 부분적으로 기초하여"를 의미하는 것으로 의도된다.
그 예가 첨부 도면들에 예시되어 있는 실시예들에 대해 이제 상세하게 언급될 것이다. 이하의 상세한 설명에서, 다양한 기술된 실시예들에 대한 완전한 이해를 제공하기 위해 수많은 특정 세부 사항들이 기재된다. 그렇지만, 다양한 기술된 실시예들이 이러한 특정 세부 사항들이 없더라도 실시될 수 있다는 것이 본 기술 분야의 통상의 기술자에게 명백할 것이다. 다른 경우에, 실시예들의 양태들을 불필요하게 모호하게 하지 않기 위해 잘 알려진 방법들, 절차들, 컴포넌트들, 회로들, 및 네트워크들은 상세하게 기술되지 않았다.
일반적 개관
일부 양태들 및/또는 실시예들에서, 본원에 기술된 시스템들, 방법들, 및 컴퓨터 프로그램 제품들은, 예를 들어, RADAR와 LiDAR 융합을 사용한 대상체 검출을 위한 시스템을 포함하고/하거나 구현한다. 일부 실시예들에서, RADAR 또는 레이더(radar)(Radio Detection and Ranging) 검출들은 레이더 검출들(예를 들면, 신뢰할 수 있는 장거리 검출들, 정확한 반경 방향 속도 출력)에 의해 제공되는 상호 보완적인 정보를 활용하기 위해 LiDAR 또는 라이다(lidar)(Light Detection and Ranging) 대상체 검출들을 위한 지오메트리 프레임워크(geometry framework)에 융합된다. 라이다 및 레이더 포인트들에 대한 클러스터들이 생성되고, 특징들이 클러스터들로부터 개별적으로 추출되고 학습 네트워크를 사용하여 함께 융합된다. 일 실시예에서, 레이더 또는 라이다로부터의 클러스터가 연관이 없는 경우, 라이다 및 레이더 센서들 둘 모두로부터의 제안들이 재현율(recall)을 개선시키는 데 사용되도록, 학습 네트워크의 아키텍처를 변경하지 않으면서 기본 값들을 갖는 포인트가 학습 네트워크의 라이다 또는 레이더 분기에 추가된다. 정밀도와 재현율은 검출/인식 패턴 인식 시스템에 대한 통상적으로 사용되는 메트릭들이다. 재현율은, 예를 들어, 다음 방정식을 사용하는 모든 실측 자료(ground truth) 대상체들의 성공적인 검출률(재현율 = 1 - 누락 검출률)이다: 재현율 = 진양성(true positive) / (진양성 + 위음성(false negative)). 정밀도는, 예를 들어, 다음 방정식을 사용하는 모든 검출들 중 올바른 검출들의 백분율이다: 정밀도 = 진양성 / (진양성 + 위양성(false positive)). 일 예에서, 재현율은 존재하는 100 개의 실제 대상체 중 60 개의 실제 대상체를 검출하는 것에 대응하는 60% 예측률(prediction rate)과 같은, 예측률을 지칭한다. 일 실시예에서, 연관은 휴리스틱 방식으로 행해진다. 클러스터의 무게 중심(centroid), 대상체의 헤딩 및 속력은 라이다와 레이더 클러스터들을 매칭시키는 데 사용된다.
본원에 기술된 시스템들, 방법들 및 컴퓨터 프로그램 제품들의 구현에 의해, 레이더와 라이다 융합을 사용하는 대상체 검출을 위한 기술들이 설명된다. 예를 들어, 상호 보완적인 레이더와 라이다 데이터는 대상체 검출 및 속도 추정을 개선시키기 위해 완전히 활용된다. 레이더는 날씨에 보다 강건하고 조명 조건들에 덜 민감하며, 따라서 야간 운전에 대한 우수한 해결책을 제공하지만, 야간 운전으로 제한되지 않는다.
본원에 기술된 시스템들, 방법들 및 컴퓨터 프로그램 제품들의 구현은 라이다 측정치들이, 특히 먼 거리에서, 너무 희박하고 따라서 라이다 전용 기반 방법들이 제한된 검출 거리(detection range)와 원거리에서의 열악한 분류를 갖는 것을 초래하는 문제들을 해결할 수 있다. 클러터(clutter) 및 다중 경로들로부터의 잡음이 많은 리턴들로 인해 레이더만을 사용하는 것도 어렵다. 본원에 개시된 해결책들은 레이더를 지오메트리 기반 라이다 대상체 검출 프레임워크에 융합시키는 것을 포함한다. 지오메트리 기반 라이다 대상체 검출 프레임워크에 레이더를 융합시키는 것은, 매우 먼 거리(예를 들면, 최대 200 미터)까지의 안정적인 검출들 및 정확한 반경 방향 속도 출력을 포함한, 레이더로부터의 상호 보완적인 정보를 활용한다.
자율 주행 차량들이 도로 상을 안전하게 운전하기 위해서는, 대상체들의 검출 거리를 증가시키고 분류 정확도를 향상시키는 것이 바람직하다. 더욱이, 대상체들의 속도를 정확하게 추정하는 것이 또한 자율 주행 차량이 그의 환경과 상호작용하는 데 유익하다. 라이다와 레이더를 융합시키는 것은 향상된 검출 거리, 보다 높은 분류 정확도, 및 속도 추정을 갖는 개선된 해결책을 제공할 수 있다.
지오메트리 기반 방법들을 사용하여 생성되는 라이다 클러스터들과 레이더 클러스터 제안들(예를 들면, 후보 대상체 클러스터들)이 결합될 수 있다. 이 예에서, 후보 클러스터들은: 1) 나중에 실제 클러스터들인 것으로 결정되는 클러스터들, 및 2) 전혀 클러스터들이 아닌 것으로 결정되는 클러스터들을 포함할 수 있다. 레이더 클러스터 제안들의 경우, 앵커 상자들이 상이한 방식들로, 예를 들어, 미리 정의된 앵커 상자들을 사용하는 것에 의해 또는 라이다 클러스터들의 크기로부터 학습하는 것에 의해 생성될 수 있다. 예를 들어, 앵커 상자는 라이다 클러스터 내의 포인트들의 클라우드 주위에(예를 들면, 포인트들의 반경에 기초하여) 2차원(2D) 피팅되는 것으로 결정될 수 있다. 일부 실시예들에서, 일단 레이더 클러스터와 라이다 클러스터가 결합되면, 각각의 클러스터는 쌍을 이룬 클러스터의 차원들을 사용하여 확장될 수 있다. 예를 들어, 연관된 라이다 클러스터와 레이더 클러스터가 주어지면, 라이다 클러스터의 반경의 1.x(예를 들면, 1.2)배 이내의 레이더 포인트들이 원래 레이더 클러스터의 기존의 포인트들에 더하여 추가될 수 있다. 예를 들어, 라이다 클러스터의 반경에 사용되는 거리는 클러스터 중심으로부터 클러스터 중심에서 가장 먼 라이다 포인트까지로 계산될 수 있다. 라이다와 레이더 클러스터들이 전체 대상체 차원(full object dimension)을 커버하지 않을 수 있지만, 양쪽 클러스터들의 차원들을 결합시키는 것에 의해, 그들의 클러스터 분할 단계 동안 누락되었던 일부 누락된 포인트들이 각각의 클러스터로부터 복구될 수 있다. 보다 긴 검출 거리를 위해 레이더 데이터를 활용하기 위해 라이다 클러스터들에 대해 라이다 클러스터들과 레이더 클러스터 제안들의 연관이 수행될 수 있다. 앵커 상자가 또한, 예를 들어, 수평 또는 차량의 가시선을 기준으로 배향(또는 도 단위의 각도)을 그에 할당하였다. 일 실시예에서, 레이더 제안들과 라이다 클러스터들은 규칙 기반 방법에 의해 또는 학습 가능한 네트워크를 통해 연관될 수 있다. 일단 라이다 클러스터와 레이더 클러스터 간의 정렬(또는 연관)이 완료되면, 3중 헤드 딥 신경 네트워크(triple-head deep neural network)는 클러스터 분류 점수들, 3차원(3D) 상자 예측, 및 속도 추정을 출력할 수 있다.
이제 도 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) 중 적어도 하나와 상호연결한다.
차량들(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) 내의 대응하는 위치들과 연관되어 있다.
루트들(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)을 갖는 적어도 하나의 상위 레벨 행동 시퀀스를 따른 복수의 정확한 상태 시퀀스들을 포함하며, 여기서 제한된 구간 상태 시퀀스들의 연속적인 반복들의 조합은 누적되어 복수의 궤적들에 대응하며 이 복수의 궤적들은 집합적으로 최종 목표 상태 또는 영역에서 종료하는 상위 레벨 루트를 형성한다.
영역(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)과 통신하도록 구성된다.
네트워크(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)은 차량의 수명 동안 그러한 컴포넌트들 및/또는 소프트웨어를 유지 관리(예를 들면, 업데이트 및/또는 교체)한다.
플릿 관리 시스템(116)은 차량들(102), V2I 디바이스(110), 원격 AV 시스템(114), 및/또는 V2I 인프라스트럭처 시스템(118)과 통신하도록 구성된 적어도 하나의 디바이스를 포함한다. 일 예에서, 플릿 관리 시스템(116)은 서버, 서버들의 그룹, 및/또는 다른 유사한 디바이스들을 포함한다. 일부 실시예들에서, 플릿 관리 시스템(116)은 라이드 셰어링(ridesharing) 회사(예를 들면, 다수의 차량들(예를 들면, 자율 주행 시스템들을 포함하는 차량들 및/또는 자율 주행 시스템들을 포함하지 않는 차량들)의 작동을 제어하는 조직 등)와 연관된다.
일부 실시예들에서, V2I 시스템(118)은 네트워크(112)를 통해 차량들(102), V2I 디바이스(110), 원격 AV 시스템(114), 및/또는 플릿 관리 시스템(116)과 통신하도록 구성된 적어도 하나의 디바이스를 포함한다. 일부 예들에서, V2I 시스템(118)은 네트워크(112)와 상이한 연결을 통해 V2I 디바이스(110)와 통신하도록 구성된다. 일부 실시예들에서, V2I 시스템(118)은 서버, 서버들의 그룹, 및/또는 다른 유사한 디바이스들을 포함한다. 일부 실시예들에서, V2I 시스템(118)은 지자체 또는 사설 기관(예를 들면, V2I 디바이스(110) 등을 유지 관리하는 사설 기관)과 연관된다.
도 1에 예시된 요소들의 수 및 배열은 예로서 제공된다. 도 1에 예시된 것보다, 추가적인 요소들, 더 적은 요소들, 상이한 요소들 및/또는 상이하게 배열된 요소들이 있을 수 있다. 추가적으로 또는 대안적으로, 환경(100)의 적어도 하나의 요소는 도 1의 적어도 하나의 상이한 요소에 의해 수행되는 것으로 기술된 하나 이상의 기능을 수행할 수 있다. 추가적으로 또는 대안적으로, 환경(100)의 적어도 하나의 요소 세트는 환경(100)의 적어도 하나의 상이한 요소 세트에 의해 수행되는 것으로 기술된 하나 이상의 기능을 수행할 수 있다.
이제 도 2를 참조하면, 차량(200)은 자율 주행 시스템(202), 파워트레인 제어 시스템(204), 조향 제어 시스템(206), 및 브레이크 시스템(208)을 포함한다. 일부 실시예들에서, 차량(200)은 차량(102)(도 1 참조)과 동일하거나 유사하다. 일부 실시예들에서, 차량(102)은 자율 주행 능력을 갖는다(예를 들면, 완전 자율 주행 차량들(예를 들면, 인간 개입에 의존하지 않는 차량들), 고도 자율 주행 차량들(예를 들면, 특정 상황들에서 인간 개입에 의존하지 않는 차량들) 등을, 제한 없이, 포함한, 차량(200)이 인간 개입 없이 부분적으로 또는 완전히 작동될 수 있게 하는 적어도 하나의 기능, 특징, 디바이스 등을 구현한다). 완전 자율 주행 차량들 및 고도 자율 주행 차량들에 대한 상세한 설명에 대해서는, 그 전체가 참고로 포함되는, SAE 국제 표준 J3016: 온로드 자동차 자동 운전 시스템에 관한 용어의 분류 및 정의(SAE International's standard J3016: Taxonomy and Definitions for Terms Related to On-Road Motor Vehicle Automated Driving Systems)가 참조될 수 있다. 일부 실시예들에서, 차량(200)은 자율 주행 플릿 관리자 및/또는 라이드 셰어링 회사와 연관된다.
자율 주행 시스템(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)는 하나 이상의 이미지와 연관된 교통 신호등 데이터(TLD)를 생성한다. 일부 예들에서, 카메라(202a)는 한 포맷(예를 들면, RAW, JPEG, PNG 등)을 포함하는 하나 이상의 이미지와 연관된 TLD 데이터를 생성한다. 일부 실시예들에서, TLD 데이터를 생성하는 카메라(202a)는, 카메라(202a)가 가능한 한 많은 물리적 대상체들에 관한 이미지들을 생성하기 위해 넓은 시야를 갖는 하나 이상의 카메라(예를 들면, 광각 렌즈, 어안 렌즈, 대략 120도 이상의 시야각을 갖는 렌즈 등)를 포함할 수 있다는 점에서, 카메라들을 포함하는 본원에 기술된 다른 시스템들과 상이하다.
LiDAR 센서들(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)의 시야 내의 물리적 대상체들의 경계들을 결정하는 데 사용된다.
레이더 센서들(202c)은 버스(예를 들면, 도 3의 버스(302)와 동일하거나 유사한 버스)를 통해 통신 디바이스(202e), 자율 주행 차량 컴퓨터(202f) 및/또는 안전 제어기(202g)와 통신하도록 구성된 적어도 하나의 디바이스를 포함한다. 레이더 센서들(202c)은 전파들을 (펄스형으로 또는 연속적으로) 송신하도록 구성된 시스템을 포함한다. 레이더 센서들(202c)에 의해 송신되는 전파들은 미리 결정된 스펙트럼 내에 있는 전파들을 포함한다. 일부 실시예들에서, 작동 동안, 레이더 센서들(202c)에 의해 송신되는 전파들은 물리적 대상체와 조우하고 레이더 센서들(202c)로 다시 반사된다. 일부 실시예들에서, 레이더 센서들(202c)에 의해 송신되는 전파들이 일부 대상체들에 의해 반사되지 않는다. 일부 실시예들에서, 레이더 센서들(202c)과 연관된 적어도 하나의 데이터 프로세싱 시스템은 레이더 센서들(202c)의 시야에 포함된 대상체들을 나타내는 신호들을 생성한다. 예를 들어, 레이더 센서(202c)와 연관된 적어도 하나의 데이터 프로세싱 시스템은 물리적 대상체의 경계들, 물리적 대상체의 표면들(예를 들면, 표면들의 토폴로지) 등을 나타내는 이미지를 생성한다. 일부 예들에서, 이미지는 레이더 센서들(202c)의 시야 내의 물리적 대상체들의 경계들을 결정하는 데 사용된다.
마이크로폰들(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)의 적어도 하나의 상이한 디바이스(예를 들면, 방향 지시등, 헤드라이트, 도어록, 윈도실드 와이퍼 등)를 작동시키기 위한 제어 신호들을 생성 및/또는 송신하도록 구성된다.
파워트레인 제어 시스템(204)은 DBW 시스템(202h)과 통신하도록 구성된 적어도 하나의 디바이스를 포함한다. 일부 예들에서, 파워트레인 제어 시스템(204)은 적어도 하나의 제어기, 액추에이터 등을 포함한다. 일부 실시예들에서, 파워트레인 제어 시스템(204)은 DBW 시스템(202h)으로부터 제어 신호들을 수신하고, 파워트레인 제어 시스템(204)은 차량(200)이 전진하는 것을 시작하게 하고, 전진하는 것을 중지하게 하며, 후진하는 것을 시작하게 하고, 후진하는 것을 중지하게 하며, 한 방향으로 가속하게 하고, 한 방향으로 감속하게 하며, 좌회전을 수행하게 하고, 우회전을 수행하게 하는 등을 한다. 일 예에서, 파워트레인 제어 시스템(204)은 차량의 모터에 제공되는 에너지(예를 들면, 연료, 전기 등)가 증가하게 하거나, 동일하게 유지되게 하거나, 또는 감소하게 하여, 이에 의해 차량(200)의 적어도 하나의 바퀴가 회전하거나 회전하지 않게 한다.
조향 제어 시스템(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), 휠 속력 센서, 휠 브레이크 압력 센서, 휠 토크 센서, 엔진 토크 센서, 조향각 센서 등과 같은 플랫폼 센서들을 포함한다.
이제 도 3을 참조하면, 디바이스(300)의 개략 다이어그램이 예시되어 있다. 예시된 바와 같이, 디바이스(300)는 프로세서(304), 메모리(306), 저장 컴포넌트(308), 입력 인터페이스(310), 출력 인터페이스(312), 통신 인터페이스(314), 및 버스(302)를 포함한다. 일부 실시예들에서, 디바이스(300)는 차량들(102)의 적어도 하나의 디바이스(예를 들면, 차량들(102)의 시스템의 적어도 하나의 디바이스), 및/또는 네트워크(112)의 하나 이상의 디바이스(예를 들면, 네트워크(112)의 시스템의 하나 이상의 디바이스)에 대응한다. 일부 실시예들에서, 차량들(102)의 하나 이상의 디바이스(예를 들면, 차량들(102)의 시스템의 하나 이상의 디바이스), 및/또는 네트워크(112)의 하나 이상의 디바이스(예를 들면, 네트워크(112)의 시스템의 하나 이상의 디바이스)는 적어도 하나의 디바이스(300) 및/또는 디바이스(300)의 적어도 하나의 컴포넌트를 포함한다. 도 3에 도시된 바와 같이, 디바이스(300)는 버스(302), 프로세서(304), 메모리(306), 저장 컴포넌트(308), 입력 인터페이스(310), 출력 인터페이스(312), 및 통신 인터페이스(314)를 포함한다.
버스(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 및/또는 다른 유형의 컴퓨터 판독 가능 매체를, 대응하는 드라이브와 함께, 포함한다.
입력 인터페이스(310)는 디바이스(300)가, 예컨대, 사용자 입력(예를 들면, 터치스크린 디스플레이, 키보드, 키패드, 마우스, 버튼, 스위치, 마이크로폰, 카메라 등)을 통해, 정보를 수신할 수 있게 하는 컴포넌트를 포함한다. 추가적으로 또는 대안적으로, 일부 실시예들에서, 입력 인터페이스(310)는 정보를 감지하는 센서(예를 들면, GPS(global positioning system) 수신기, 가속도계, 자이로스코프, 액추에이터 등)를 포함한다. 출력 인터페이스(312)는 디바이스(300)로부터의 출력 정보를 제공하는 컴포넌트(예를 들면, 디스플레이, 스피커, 하나 이상의 발광 다이오드(LED) 등)를 포함한다.
일부 실시예들에서, 통신 인터페이스(314)는 디바이스(300)가 유선 연결, 무선 연결, 또는 유선 연결과 무선 연결의 조합을 통해 다른 디바이스들과 통신할 수 있게 하는 트랜시버 유사 컴포넌트(예를 들면, 트랜시버, 개별 수신기 및 송신기 등)를 포함한다. 일부 예들에서, 통신 인터페이스(314)는 디바이스(300)가 다른 디바이스로부터 정보를 수신하고/하거나 다른 디바이스에 정보를 제공할 수 있게 한다. 일부 예들에서, 통신 인터페이스(314)는 이더넷 인터페이스, 광학 인터페이스, 동축 인터페이스, 적외선 인터페이스, RF(radio frequency) 인터페이스, USB(universal serial bus) 인터페이스, Wi-Fi® 인터페이스, 셀룰러 네트워크 인터페이스 등을 포함한다.
일부 실시예들에서, 디바이스(300)는 본원에 기술된 하나 이상의 프로세스를 수행한다. 디바이스(300)는 프로세서(304)가, 메모리(305) 및/또는 저장 컴포넌트(308)와 같은, 컴퓨터 판독 가능 매체에 의해 저장된 소프트웨어 명령어들을 실행하는 것에 기초하여 이러한 프로세스들을 수행한다. 컴퓨터 판독 가능 매체(예를 들면, 비일시적 컴퓨터 판독 가능 매체)는 본원에서 비일시적 메모리 디바이스로서 정의된다. 비일시적 메모리 디바이스는 단일의 물리 저장 디바이스 내부에 위치한 메모리 공간 또는 다수의 물리 저장 디바이스들에 걸쳐 분산된 메모리 공간을 포함한다.
일부 실시예들에서, 소프트웨어 명령어들은 통신 인터페이스(314)를 통해 다른 컴퓨터 판독 가능 매체로부터 또는 다른 디바이스로부터 메모리(306) 및/또는 저장 컴포넌트(308)로 판독된다. 실행될 때, 메모리(306) 및/또는 저장 컴포넌트(308)에 저장된 소프트웨어 명령어들은 프로세서(304)로 하여금 본원에 기술된 하나 이상의 프로세스를 수행하게 한다. 추가적으로 또는 대안적으로, 고정 배선(hardwired) 회로는 본원에 기술된 하나 이상의 프로세스를 수행하기 위해 소프트웨어 명령어들 대신에 또는 소프트웨어 명령어들과 함께 사용된다. 따라서, 본원에 기술된 실시예들은, 달리 명시적으로 언급되지 않는 한, 하드웨어 회로와 소프트웨어의 임의의 특정 조합으로 제한되지 않는다.
메모리(306) 및/또는 저장 컴포넌트(308)는 데이터 스토리지 또는 적어도 하나의 데이터 구조(예를 들면, 데이터베이스 등)를 포함한다. 디바이스(300)는 데이터 스토리지 또는 메모리(306) 또는 저장 컴포넌트(308) 내의 적어도 하나의 데이터 구조로부터 정보를 수신하는 것, 그에 정보를 저장하는 것, 그에게로 정보를 통신하는 것, 또는 그에 저장된 정보를 검색하는 것을 할 수 있다. 일부 예들에서, 정보는 네트워크 데이터, 입력 데이터, 출력 데이터, 또는 이들의 임의의 조합을 포함한다.
일부 실시예들에서, 디바이스(300)는 메모리(306)에 그리고/또는 다른 디바이스(예를 들면, 디바이스(300)와 동일하거나 유사한 다른 디바이스)의 메모리에 저장된 소프트웨어 명령어들을 실행하도록 구성된다. 본원에서 사용되는 바와 같이, "모듈"이라는 용어는, 프로세서(304)에 의해 그리고/또는 다른 디바이스(예를 들면, 디바이스(300)와 동일하거나 유사한 다른 디바이스)의 프로세서에 의해 실행될 때, 디바이스(300)(예를 들면, 디바이스(300)의 적어도 하나의 컴포넌트)로 하여금 본원에 기술된 하나 이상의 프로세스를 수행하게 하는 메모리(306)에 그리고/또는 다른 디바이스의 메모리에 저장된 적어도 하나의 명령어를 지칭한다. 일부 실시예들에서, 모듈은 소프트웨어, 펌웨어, 하드웨어 등으로 구현된다.
도 3에 예시된 컴포넌트들의 수 및 배열은 예로서 제공된다. 일부 실시예들에서, 디바이스(300)는 도 3에 예시된 것보다, 추가적인 컴포넌트들, 더 적은 컴포넌트들, 상이한 컴포넌트들, 또는 상이하게 배열된 컴포넌트들을 포함할 수 있다. 추가적으로 또는 대안적으로, 디바이스(300)의 컴포넌트 세트(예를 들면, 하나 이상의 컴포넌트)는 디바이스(300)의 다른 컴포넌트 또는 다른 컴포넌트 세트에 의해 수행되는 것으로 기술된 하나 이상의 기능을 수행할 수 있다.
이제 도 4a를 참조하면, 자율 주행 차량 컴퓨터(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 시스템 등)과 통신하도록 구성된다는 것이 또한 이해될 것이다.
일부 실시예들에서, 인지 시스템(402)은 환경에서의 적어도 하나의 물리적 대상체와 연관된 데이터(예를 들면, 적어도 하나의 물리적 대상체를 검출하기 위해 인지 시스템(402)에 의해 사용되는 데이터)를 수신하고 적어도 하나의 물리적 대상체를 분류한다. 일부 예들에서, 인지 시스템(402)은 적어도 하나의 카메라(예를 들면, 카메라들(202a))에 의해 캡처되는 이미지 데이터를 수신하고, 이미지는 적어도 하나의 카메라의 시야 내의 하나 이상의 물리적 대상체와 연관되어 있다(예를 들면, 이를 표현한다). 그러한 예에서, 인지 시스템(402)은 물리적 대상체들(예를 들면, 자전거들, 차량들, 교통 표지판들, 보행자들 등)의 하나 이상의 그룹화에 기초하여 적어도 하나의 물리적 대상체를 분류한다. 일부 실시예들에서, 인지 시스템(402)이 물리적 대상체들을 분류하는 것에 기초하여 인지 시스템(402)은 물리적 대상체들의 분류와 연관된 데이터를 계획 시스템(404)으로 송신한다.
일부 실시예들에서, 계획 시스템(404)은 목적지와 연관된 데이터를 수신하고 차량(예를 들면, 차량들(102))이 목적지를 향해 주행할 수 있는 적어도 하나의 루트(예를 들면, 루트들(106))와 연관된 데이터를 생성한다. 일부 실시예들에서, 계획 시스템(404)은 인지 시스템(402)으로부터의 데이터(예를 들면, 위에서 기술된, 물리적 대상체들의 분류와 연관된 데이터)를 주기적으로 또는 연속적으로 수신하고, 계획 시스템(404)은 인지 시스템(402)에 의해 생성되는 데이터에 기초하여 적어도 하나의 궤적을 업데이트하거나 적어도 하나의 상이한 궤적을 생성한다. 일부 실시예들에서, 계획 시스템(404)은 측위 시스템(406)으로부터 차량(예를 들면, 차량들(102))의 업데이트된 위치와 연관된 데이터를 수신하고, 계획 시스템(404)은 측위 시스템(406)에 의해 생성되는 데이터에 기초하여 적어도 하나의 궤적을 업데이트하거나 적어도 하나의 상이한 궤적을 생성한다.
일부 실시예들에서, 측위 시스템(406)은 한 영역에서의 차량(예를 들면, 차량들(102))의 한 위치와 연관된(예를 들면, 이를 나타내는) 데이터를 수신한다. 일부 예들에서, 측위 시스템(406)은 적어도 하나의 LiDAR 센서(예를 들면, LiDAR 센서들(202b))에 의해 생성되는 적어도 하나의 포인트 클라우드와 연관된 LiDAR 데이터를 수신한다. 특정 예들에서, 측위 시스템(406)은 다수의 LiDAR 센서들로부터의 적어도 하나의 포인트 클라우드와 연관된 데이터를 수신하고 측위 시스템(406)은 포인트 클라우드들 각각에 기초하여 결합된 포인트 클라우드를 생성한다. 이러한 예들에서, 측위 시스템(406)은 적어도 하나의 포인트 클라우드 또는 결합된 포인트 클라우드를 데이터베이스(410)에 저장되어 있는 해당 영역의 2D 및/또는 3D 맵과 비교한다. 측위 시스템(406)이 적어도 하나의 포인트 클라우드 또는 결합된 포인트 클라우드를 맵과 비교하는 것에 기초하여 측위 시스템(406)은 이어서 해당 영역에서의 차량의 위치를 결정한다. 일부 실시예들에서, 맵은 차량의 운행 이전에 생성되는 해당 영역의 결합된 포인트 클라우드를 포함한다. 일부 실시예들에서, 맵은, 제한 없이, 도로 기하학적 특성들의 고정밀 맵, 도로 네트워크 연결 특성들을 기술하는 맵, 도로 물리적 특성들(예컨대, 교통 속력, 교통량, 차량 교통 차선과 자전거 타는 사람 교통 차선의 수, 차선 폭, 차선 교통 방향, 또는 차선 마커 유형 및 위치, 또는 이들의 조합)을 기술하는 맵, 및 도로 특징물, 예컨대, 횡단보도, 교통 표지판 또는 다양한 유형의 다른 주행 신호들의 공간적 위치들을 기술하는 맵을 포함한다. 일부 실시예들에서, 맵은 인지 시스템에 의해 수신되는 데이터에 기초하여 실시간으로 생성된다.
다른 예에서, 측위 시스템(406)은 GPS(global positioning system) 수신기에 의해 생성되는 GNSS(Global Navigation Satellite System) 데이터를 수신한다. 일부 예들에서, 측위 시스템(406)은 해당 영역 내에서의 차량의 위치와 연관된 GNSS 데이터를 수신하고 측위 시스템(406)은 해당 영역 내에서의 차량의 위도 및 경도를 결정한다. 그러한 예에서, 측위 시스템(406)은 차량의 위도 및 경도에 기초하여 해당 영역에서의 차량의 위치를 결정한다. 일부 실시예들에서, 측위 시스템(406)은 차량의 위치와 연관된 데이터를 생성한다. 일부 예들에서, 측위 시스템(406)이 차량의 위치를 결정하는 것에 기초하여 측위 시스템(406)은 차량의 위치와 연관된 데이터를 생성한다. 그러한 예에서, 차량의 위치와 연관된 데이터는 차량의 위치에 대응하는 하나 이상의 시맨틱 속성과 연관된 데이터를 포함한다.
일부 실시예들에서, 제어 시스템(408)은 계획 시스템(404)으로부터 적어도 하나의 궤적과 연관된 데이터를 수신하고 제어 시스템(408)은 차량의 작동을 제어한다. 일부 예들에서, 제어 시스템(408)은 계획 시스템(404)으로부터 적어도 하나의 궤적과 연관된 데이터를 수신하고, 제어 시스템(408)은 파워트레인 제어 시스템(예를 들면, DBW 시스템(202h), 파워트레인 제어 시스템(204) 등), 조향 제어 시스템(예를 들면, 조향 제어 시스템(206)) 및/또는 브레이크 시스템(예를 들면, 브레이크 시스템(208))이 작동하게 하는 제어 신호들을 생성하여 송신하는 것에 의해 차량의 작동을 제어한다. 궤적이 좌회전을 포함하는 예에서, 제어 시스템(408)은 조향 제어 시스템(206)으로 하여금 차량(200)의 조향각을 조정하게 함으로써 차량(200)이 좌회전하게 하는 제어 신호를 송신한다. 추가적으로 또는 대안적으로, 제어 시스템(408)은 차량(200)의 다른 디바이스들(예를 들면, 헤드라이트, 방향 지시등, 도어록, 윈도실드 와이퍼 등)로 하여금 상태들을 변경하게 하는 제어 신호들을 생성하여 송신한다.
일부 실시예들에서, 인지 시스템(402), 계획 시스템(404), 측위 시스템(406), 및/또는 제어 시스템(408)은 적어도 하나의 머신 러닝 모델(예를 들면, 적어도 하나의 다층 퍼셉트론(MLP), 적어도 하나의 콘볼루션 신경 네트워크(CNN), 적어도 하나의 순환 신경 네트워크(RNN), 적어도 하나의 오토인코더, 적어도 하나의 트랜스포머(transformer) 등)을 구현한다. 일부 예들에서, 인지 시스템(402), 계획 시스템(404), 측위 시스템(406), 및/또는 제어 시스템(408)은 단독으로 또는 위에서 언급된 시스템들 중 하나 이상과 조합하여 적어도 하나의 머신 러닝 모델을 구현한다. 일부 예에서, 인지 시스템(402), 계획 시스템(404), 측위 시스템(406), 및/또는 제어 시스템(408)은 파이프라인(예를 들면, 환경에 위치한 하나 이상의 대상체를 식별하기 위한 파이프라인 등)의 일부로서 적어도 하나의 머신 러닝 모델을 구현한다. 머신 러닝 모델의 구현의 예는 도 4b 내지 도 4d와 관련하여 아래에 포함된다.
데이터베이스(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 센서의 시야에 포함된 대상체들을 나타내는 이미지와 연관된 데이터를 생성하게 할 수 있다.
일부 실시예들에서, 데이터베이스(410)는 복수의 디바이스들에 걸쳐 구현될 수 있다. 일부 예들에서, 데이터베이스(410)는 차량(예를 들면, 차량들(102) 및/또는 차량(200)과 동일하거나 유사한 차량), 자율 주행 차량 시스템(예를 들면, 원격 AV 시스템(114)과 동일하거나 유사한 자율 주행 차량 시스템), 플릿 관리 시스템(예를 들면, 도 1의 플릿 관리 시스템(116)과 동일하거나 유사한 플릿 관리 시스템), V2I 시스템(예를 들면, 도 1의 V2I 시스템(118)과 동일하거나 유사한 V2I 시스템) 등에 포함될 수 있다.
이제 도 4b를 참조하면, 머신 러닝 모델의 구현의 다이어그램이 예시되어 있다. 보다 구체적으로, 콘볼루션 신경 네트워크(convolutional neural network, CNN)(420)의 구현의 다이어그램이 예시되어 있다. 예시를 위해, CNN(420)에 대한 이하의 설명은 인지 시스템(402)에 의한 CNN(420)의 구현과 관련하여 이루어질 것이다. 그렇지만, 일부 예들에서 CNN(420)(예를 들면, CNN(420)의 하나 이상의 컴포넌트)이, 계획 시스템(404), 측위 시스템(406), 및/또는 제어 시스템(408)과 같은, 인지 시스템(402)과 상이하거나 그 이외의 다른 시스템들에 의해 구현된다는 것이 이해될 것이다. CNN(420)이 본원에 기술된 바와 같은 특정 특징부들을 포함하지만, 이러한 특징부들은 예시 목적으로 제공되며 본 개시를 제한하는 것으로 의도되지 않는다.
CNN(420)은 제1 콘볼루션 계층(422), 제2 콘볼루션 계층(424), 및 콘볼루션 계층(426)을 포함하는 복수의 콘볼루션 계층들을 포함한다. 일부 실시예들에서, CNN(420)은 서브샘플링 계층(428)(때때로 풀링 계층(pooling layer)이라고 지칭됨)을 포함한다. 일부 실시예들에서, 서브샘플링 계층(428) 및/또는 다른 서브샘플링 계층들은 업스트림 시스템의 차원보다 작은 차원(즉, 노드들의 양)을 갖는다. 서브샘플링 계층(428)이 업스트림 계층의 차원보다 작은 차원을 갖는 것에 의해, CNN(420)은 초기 입력 및/또는 업스트림 계층의 출력과 연관된 데이터의 양을 통합(consolidate)하여 이에 의해 CNN(420)이 다운스트림 콘볼루션 연산들을 수행하는 데 필요한 계산들의 양을 감소시킨다. 추가적으로 또는 대안적으로, (도 4c 및 도 4d와 관련하여 아래에서 기술되는 바와 같이) 서브샘플링 계층(428)이 적어도 하나의 서브샘플링 함수와 연관되는(예를 들면, 이를 수행하도록 구성되는) 것에 의해, CNN(420)은 초기 입력과 연관된 데이터의 양을 통합한다.
인지 시스템(402)이 제1 콘볼루션 계층(422), 제2 콘볼루션 계층(424), 및 콘볼루션 계층(426) 각각과 연관된 각자의 입력들 및/또는 출력들을 제공하여 각자의 출력들을 생성하는 것에 기초하여 인지 시스템(402)은 콘볼루션 연산들을 수행한다. 일부 예들에서, 인지 시스템(402)이 제1 콘볼루션 계층(422), 제2 콘볼루션 계층(424), 및 콘볼루션 계층(426)에 대한 입력으로서 데이터를 제공하는 것에 기초하여 인지 시스템(402)은 CNN(420)을 구현한다. 그러한 예에서, 인지 시스템(402)이 하나 이상의 상이한 시스템(예를 들면, 차량(102)과 동일하거나 유사한 차량의 하나 이상의 시스템), 원격 AV 시스템(114)과 동일하거나 유사한 원격 AV 시스템, 플릿 관리 시스템(116)과 동일하거나 유사한 플릿 관리 시스템, V2I 시스템(118)과 동일하거나 유사한 V2I 시스템 등으로부터 데이터를 수신하는 것에 기초하여, 인지 시스템(402)은 제1 콘볼루션 계층(422), 제2 콘볼루션 계층(424), 및 콘볼루션 계층(426)에 대한 입력으로서 데이터를 제공한다. 콘볼루션 연산들에 대한 상세한 설명은 도 4c와 관련하여 아래에 포함된다.
일부 실시예들에서, 인지 시스템(402)은 입력(초기 입력이라고 지칭됨)과 연관된 데이터를 제1 콘볼루션 계층(422)에 제공하고, 인지 시스템(402)은 제1 콘볼루션 계층(422)을 사용하여 출력과 연관된 데이터를 생성한다. 일부 실시예들에서, 인지 시스템(402)은 상이한 콘볼루션 계층에 대한 입력으로서 콘볼루션 계층에 의해 생성되는 출력을 제공한다. 예를 들어, 인지 시스템(402)은 서브샘플링 계층(428), 제2 콘볼루션 계층(424), 및/또는 콘볼루션 계층(426)에 대한 입력으로서 제1 콘볼루션 계층(422)의 출력을 제공한다. 그러한 예에서, 제1 콘볼루션 계층(422)은 업스트림 계층이라고 지칭되고, 서브샘플링 계층(428), 제2 콘볼루션 계층(424) 및/또는 콘볼루션 계층(426)은 다운스트림 계층들이라고 지칭된다. 유사하게, 일부 실시예들에서, 인지 시스템(402)은 서브샘플링 계층(428)의 출력을 제2 콘볼루션 계층(424) 및/또는 콘볼루션 계층(426)에 제공하고, 이 예에서, 서브샘플링 계층(428)은 업스트림 계층이라고 지칭될 것이며, 제2 콘볼루션 계층(424) 및/또는 콘볼루션 계층(426)은 다운스트림 계층들이라고 지칭될 것이다.
일부 실시예들에서, 인지 시스템(402)이 CNN(420)에 입력을 제공하기 전에 인지 시스템(402)은 CNN(420)에 제공되는 입력과 연관된 데이터를 프로세싱한다. 예를 들어, 인지 시스템(402)이 센서 데이터(예를 들면, 이미지 데이터, LiDAR 데이터, 레이더 데이터 등)를 정규화하는 것에 기초하여, 인지 시스템(402)은 CNN(420)에 제공되는 입력과 연관된 데이터를 프로세싱한다.
일부 실시예들에서, 인지 시스템(402)이 각각의 콘볼루션 계층과 연관된 콘볼루션 연산들을 수행하는 것에 기초하여, CNN(420)은 출력을 생성한다. 일부 예들에서, 인지 시스템(402)이 각각의 콘볼루션 계층과 연관된 콘볼루션 연산들을 수행하는 것 및 초기 데이터에 기초하여, CNN(420)은 출력을 생성한다. 일부 실시예들에서, 인지 시스템(402)은 출력을 생성하고 출력을 완전 연결 계층(430)에 제공한다. 일부 예들에서, 인지 시스템(402)은 콘볼루션 계층(426)의 출력을 완전 연결 계층(430)에 제공하고, 여기서 완전 연결 계층(430)은 F1, F2... FN이라고 지칭되는 복수의 특징 값들과 연관된 데이터를 포함한다. 이 예에서, 콘볼루션 계층(426)의 출력은 예측을 나타내는 복수의 출력 특징 값들과 연관된 데이터를 포함한다.
일부 실시예들에서, 인지 시스템(402)이 복수의 예측들 중에서 정확한 예측일 가능성이 가장 높은 것과 연관된 특징 값을 식별하는 것에 기초하여, 인지 시스템(402)은 복수의 예측들 중에서 예측을 식별한다. 예를 들어, 완전 연결 계층(430)이 특징 값들 F1, F2, ... FN을 포함하고, F1이 가장 큰 특징 값인 경우에, 인지 시스템(402)은 F1과 연관된 예측을 복수의 예측들 중에서 정확한 예측인 것으로 식별한다. 일부 실시예들에서, 인지 시스템(402)은 예측을 생성하도록 CNN(420)을 트레이닝시킨다. 일부 예들에서, 인지 시스템(402)이 예측과 연관된 트레이닝 데이터를 CNN(420)에 제공하는 것에 기초하여, 인지 시스템(402)은 예측을 생성하도록 CNN(420)을 트레이닝시킨다.
이제 도 4c 및 도 4d를 참조하면, 인지 시스템(402)에 의한 CNN(440)의 예시적인 작동의 다이어그램이 예시되어 있다. 일부 실시예들에서, CNN(440)(예를 들면, CNN(440)의 하나 이상의 컴포넌트)은 CNN(420)(예를 들면, CNN(420)의 하나 이상의 컴포넌트)(도 4b 참조)과 동일하거나 유사하다.
단계(450)에서, 인지 시스템(402)은 CNN(440)에 대한 입력으로서 이미지와 연관된 데이터를 제공한다(단계(450)). 예를 들어, 예시된 바와 같이, 인지 시스템(402)은 이미지와 연관된 데이터를 CNN(440)에 제공하고, 여기서 이미지는 2D 어레이에 저장되는 값들로서 표현되는 그레이스케일 이미지이다. 일부 실시예들에서, 이미지와 연관된 데이터는 컬러 이미지와 연관된 데이터를 포함할 수 있고, 컬러 이미지는 3D 어레이에 저장되는 값들로서 표현된다. 추가적으로 또는 대안적으로, 이미지와 연관된 데이터는 적외선 이미지, 레이더 이미지 등과 연관된 데이터를 포함할 수 있다.
단계(455)에서, CNN(440)은 제1 콘볼루션 함수를 수행한다. 예를 들어, CNN(440)이 이미지를 나타내는 값들을 제1 콘볼루션 계층(442)에 포함된 하나 이상의 뉴런(명시적으로 예시되지 않음)에 대한 입력으로서 제공하는 것에 기초하여, CNN(440)은 제1 콘볼루션 함수를 수행한다. 이 예에서, 이미지를 나타내는 값들은 이미지의 한 영역(때때로 수용 영역(receptive field)이라고 지칭됨)을 나타내는 값들에 대응할 수 있다. 일부 실시예들에서, 각각의 뉴런은 필터(명시적으로 예시되지 않음)와 연관된다. 필터(때때로 커널이라고 지칭됨)는 크기가 뉴런에 대한 입력으로서 제공되는 값들에 대응하는 값들의 어레이로서 표현될 수 있다. 일 예에서, 필터는 에지들(예를 들면, 수평 라인들, 수직 라인들, 직선 라인들 등)을 식별하도록 구성될 수 있다. 연속적인 콘볼루션 계층들에서, 뉴런들과 연관된 필터들은 연속적으로 보다 복잡한 패턴들(예를 들면, 호, 대상체 등)을 식별하도록 구성될 수 있다.
일부 실시예들에서, CNN(440)이 제1 콘볼루션 계층(442)에 포함된 하나 이상의 뉴런 각각에 대한 입력으로서 제공되는 값들을 하나 이상의 뉴런 각각에 대응하는 필터의 값들과 곱하는 것에 기초하여, CNN(440)은 제1 콘볼루션 함수를 수행한다. 예를 들어, CNN(440)은 제1 콘볼루션 계층(442)에 포함된 하나 이상의 뉴런 각각에 대한 입력으로서 제공되는 값들을 하나 이상의 뉴런 각각에 대응하는 필터의 값들과 곱하여 단일 값 또는 값들의 어레이를 출력으로서 생성할 수 있다. 일부 실시예들에서, 제1 콘볼루션 계층(442)의 뉴런들의 집합적 출력은 콘볼루션된 출력(convolved output)이라고 지칭된다. 일부 실시예들에서, 각각의 뉴런이 동일한 필터를 갖는 경우에, 콘볼루션된 출력은 특징 맵(feature map)이라고 지칭된다.
일부 실시예들에서, CNN(440)은 제1 콘볼루션 계층(442)의 각각의 뉴런의 출력들을 다운스트림 계층의 뉴런들에 제공한다. 명료함을 위해, 업스트림 계층은 데이터를 상이한 계층(다운스트림 계층이라고 지칭됨)으로 송신하는 계층일 수 있다. 예를 들어, CNN(440)은 제1 콘볼루션 계층(442)의 각각의 뉴런의 출력들을 서브샘플링 계층의 대응하는 뉴런들에 제공할 수 있다. 일 예에서, CNN(440)은 제1 콘볼루션 계층(442)의 각각의 뉴런의 출력들을 제1 서브샘플링 계층(444)의 대응하는 뉴런들에 제공한다. 일부 실시예들에서, CNN(440)은 다운스트림 계층의 각각의 뉴런에 제공되는 모든 값들의 집계들에 바이어스 값을 가산한다. 예를 들어, CNN(440)은 제1 서브샘플링 계층(444)의 각각의 뉴런에 제공되는 모든 값들의 집계들에 바이어스 값을 가산한다. 그러한 예에서, 각각의 뉴런에 제공되는 모든 값들의 집계들 및 제1 서브샘플링 계층(444)의 각각의 뉴런과 연관된 활성화 함수에 기초하여, CNN(440)은 제1 서브샘플링 계층(444)의 각각의 뉴런에 제공할 최종 값을 결정한다.
단계(460)에서, CNN(440)은 제1 서브샘플링 함수를 수행한다. 예를 들어, CNN(440)이 제1 콘볼루션 계층(442)에 의해 출력되는 값들을 제1 서브샘플링 계층(444)의 대응하는 뉴런들에 제공하는 것에 기초하여, CNN(440)은 제1 서브샘플링 함수를 수행할 수 있다. 일부 실시예들에서, CNN(440)은 집계 함수에 기초하여 제1 서브샘플링 함수를 수행한다. 일 예에서, CNN(440)이 주어진 뉴런에 제공되는 값들 중에서 최대 입력을 결정하는 것(맥스 풀링 함수(max pooling function)라고 지칭됨)에 기초하여, CNN(440)은 제1 서브샘플링 함수를 수행한다. 다른 예에서, CNN(440)이 주어진 뉴런에 제공되는 값들 중에서 평균 입력을 결정하는 것(평균 풀링 함수(average pooling function)라고 지칭됨)에 기초하여, CNN(440)은 제1 서브샘플링 함수를 수행한다. 일부 실시예들에서, CNN(440)이 제1 서브샘플링 계층(444)의 각각의 뉴런에 값들을 제공하는 것에 기초하여, CNN(440)은 출력을 생성하며, 이 출력은 때때로 서브샘플링된 콘볼루션된 출력(subsampled convolved output)이라고 지칭된다.
단계(465)에서, CNN(440)은 제2 콘볼루션 함수를 수행한다. 일부 실시예들에서, CNN(440)은 위에서 기술된, CNN(440)이 제1 콘볼루션 함수를 수행한 방식과 유사한 방식으로 제2 콘볼루션 함수를 수행한다. 일부 실시예들에서, CNN(440)이 제1 서브샘플링 계층(444)에 의해 출력되는 값들을 제2 콘볼루션 계층(446)에 포함된 하나 이상의 뉴런(명시적으로 예시되지 않음)에 대한 입력으로서 제공하는 것에 기초하여, CNN(440)은 제2 콘볼루션 함수를 수행한다. 일부 실시예들에서, 위에서 기술된 바와 같이, 제2 콘볼루션 계층(446)의 각각의 뉴런은 필터와 연관된다. 위에서 기술된 바와 같이, 제2 콘볼루션 계층(446)과 연관된 필터(들)는 제1 콘볼루션 계층(442)과 연관된 필터보다 복잡한 패턴들을 식별하도록 구성될 수 있다.
일부 실시예들에서, CNN(440)이 제2 콘볼루션 계층(446)에 포함된 하나 이상의 뉴런 각각에 대한 입력으로서 제공되는 값들을 하나 이상의 뉴런 각각에 대응하는 필터의 값들과 곱하는 것에 기초하여, CNN(440)은 제2 콘볼루션 함수를 수행한다. 예를 들어, CNN(440)은 제2 콘볼루션 계층(446)에 포함된 하나 이상의 뉴런 각각에 대한 입력으로서 제공되는 값들을 하나 이상의 뉴런 각각에 대응하는 필터의 값들과 곱하여 단일 값 또는 값들의 어레이를 출력으로서 생성할 수 있다.
일부 실시예들에서, CNN(440)은 제2 콘볼루션 계층(446)의 각각의 뉴런의 출력들을 다운스트림 계층의 뉴런들에 제공한다. 예를 들어, CNN(440)은 제1 콘볼루션 계층(442)의 각각의 뉴런의 출력들을 서브샘플링 계층의 대응하는 뉴런들에 제공할 수 있다. 일 예에서, CNN(440)은 제1 콘볼루션 계층(442)의 각각의 뉴런의 출력들을 제2 서브샘플링 계층(448)의 대응하는 뉴런들에 제공한다. 일부 실시예들에서, CNN(440)은 다운스트림 계층의 각각의 뉴런에 제공되는 모든 값들의 집계들에 바이어스 값을 가산한다. 예를 들어, CNN(440)은 제2 서브샘플링 계층(448)의 각각의 뉴런에 제공되는 모든 값들의 집계들에 바이어스 값을 가산한다. 그러한 예에서, 각각의 뉴런에 제공되는 모든 값들의 집계들 및 제2 서브샘플링 계층(448)의 각각의 뉴런과 연관된 활성화 함수에 기초하여, CNN(440)은 제2 서브샘플링 계층(448)의 각각의 뉴런에 제공할 최종 값을 결정한다.
단계(470)에서, CNN(440)은 제2 서브샘플링 함수를 수행한다. 예를 들어, CNN(440)이 제2 콘볼루션 계층(446)에 의해 출력되는 값들을 제2 서브샘플링 계층(448)의 대응하는 뉴런들에 제공하는 것에 기초하여, CNN(440)은 제2 서브샘플링 함수를 수행할 수 있다. 일부 실시예들에서, CNN(440)이 집계 함수를 사용하는 것에 기초하여, CNN(440)은 제2 서브샘플링 함수를 수행한다. 일 예에서, 위에서 기술된 바와 같이, CNN(440)이 주어진 뉴런에 제공되는 값들 중에서 최대 입력 또는 평균 입력을 결정하는 것에 기초하여, CNN(440)은 제1 서브샘플링 함수를 수행한다. 일부 실시예들에서, CNN(440)이 제2 서브샘플링 계층(448)의 각각의 뉴런에 값들을 제공하는 것에 기초하여, CNN(440)은 출력을 생성한다.
단계(475)에서, CNN(440)은 제2 서브샘플링 계층(448)의 각각의 뉴런의 출력을 완전 연결 계층들(449)에 제공한다. 예를 들어, CNN(440)은 제2 서브샘플링 계층(448)의 각각의 뉴런의 출력을 완전 연결 계층들(449)에 제공하여 완전 연결 계층들(449)로 하여금 출력을 생성하게 한다. 일부 실시예들에서, 완전 연결 계층들(449)은 예측(때때로 분류라고 지칭됨)과 연관된 출력을 생성하도록 구성된다. 예측은 CNN(440)에 대한 입력으로서 제공되는 이미지에 포함된 대상체가 대상체, 대상체 세트 등을 포함한다는 표시를 포함할 수 있다. 일부 실시예들에서, 인지 시스템(402)은, 본원에 기술된 바와 같이, 하나 이상의 동작을 수행하고/하거나 예측과 연관된 데이터를 상이한 시스템에 제공한다.
이제 도 5를 참조하면, RADAR와 LiDAR 융합을 사용하는 대상체 검출을 위한 프로세스의 구현(500)의 다이어그램이 예시되어 있다. 일부 실시예들에서, 구현(500)은 라이다 클러스터들을 생성하기 위해 라이다 클러스터링(503)에 의해 프로세싱되는 라이다 포인트 클라우드들(501)의 다중 스위프(multi-sweep)를 포함한다. 레이더 포인트 클라우드들(502)의 다중 스위프는 레이더 클러스터링(504)에서 사용된다. 라이다 클러스터들과 레이더 클러스터들은 연관된 LiDAR와 RADAR 클러스터들을 생성하는 데 사용되는 연관(505)에 의해 매칭된다. 이어서 이러한 LiDAR 및 RADAR 클러스터들은 대상체 분류, 3D 상자 및 속도(508)를 예측하기 위해 LiDAR RADAR 융합 네트워크(LiDAR RADAR Fusion Net)(506)의 입력으로서 사용된다. 연관(505)에서, LiDAR 클러스터들과 RADAR 클러스터들은 헝가리안 알고리즘(Hungarian algorithm)과 같은 고전적인 데이터 연관 알고리즘들에 의해 연관되며, 클러스터 간 비용(cluster-to-cluster cost)(비유사도(dissimilarity))은 중심 거리, 헤딩 각도 차이 및 속도 차이의 가중 합으로부터 계산된다. 연관된 라이다와 레이더 클러스터들은 이어서 LiDAR와 RADAR로부터의 융합 특징들을 학습하기 위해 LiDAR RADAR 융합 네트워크(506)에 공급되고, 이어서 대상체 라벨, 상자 및 속도(507)를 예측하는 데 사용된다. 쌍을 이룬 LiDAR 클러스터 또는 RADAR 클러스터가 데이터 연관으로부터 누락된 경우에, 즉, 매칭되지 않은 LiDAR 또는 RADAR 클러스터가 있는 경우에, 일정한 포인트 값들을 갖는 더미 쌍 클러스터가 사용된다. 그러한 처리를 통해, 융합 네트워크는 모든 연관 결과들을 처리할 수 있다. LiDAR RADAR 융합 네트워크(506)는, 도 6aa 및 도 6ab를 참조하여 기술된 바와 같이, 마지막 출력 계층(요소들(610, 619, 620))까지의 LiDAR 및 RADAR 융합 네트워크를 나타낸다. 일부 실시예들에서, 시스템(500)은 시스템(402)과 동일하거나 유사하다.
이제 도 6aa 및 도 6ab를 참조하면, 대상체 검출을 위한 RADAR와 LiDAR 융합 네트워크를 나타내는 다이어그램이 예시되어 있다. 예를 들어, 도 6aa 및 도 6ab는 융합된 레이더와 라이다 데이터를 사용하여 라벨들, 경계 상자들 및 속도를 예측하기 위한 딥 러닝 네트워크(600)를 집합적으로 예시한다. 딥 러닝 네트워크(600)는, 예를 들어, 라이다/레이더 클러스터 연관 모듈(621)에 의해 쌍으로서 매칭되는 라이다 클러스터와 레이더 클러스터로부터의 특징들을 결정하는 데 사용될 수 있다. 일부 실시예들에서, 라이다/레이더 클러스터 매칭은 라이다와 레이더 클러스터들의 무게 중심들을 매칭시키는 것에 기초할 수 있다. 매칭된 라이다와 레이더 클러스터 쌍의 생성은 딥 러닝 네트워크(600)의 상단 부분에 의해 나타내어진, 라이다 관련 파이프라인(627)에 라이다 클러스터 입력(629)을 제공한다. 또한, 레이더 클러스터 입력(630)은 딥 러닝 네트워크(600)의 하단 부분에 의해 나타내어진, 레이더 관련 파이프라인(628)에 제공된다. 라이다 클러스터는 존재하지만 매칭된 레이더 클러스터가 존재하지 않는 상황들에서, 존재하지 않는 레이더 클러스터에 대한 제로 패딩(zero-padding) 또는 어떤 다른 플레이스홀더(placeholder)가 딥 러닝 네트워크(600) 전체에 걸쳐 사용될 수 있다. 종래의 시스템들에는 없지만 본 개시의 중요한 부분들인 라이다/레이더 융합의 양태들은, 나중에 보다 상세히 기술되는, 라이다/레이더 융합 요소들(622 및 625)에 의해 주석이 달린다.
라이다 클러스터(601)에서, M 개의 라이다 데이터 포인트 각각은 기준 프레임(reference frame)에서의 그의 위치(예를 들면, 데카르트 기준 프레임에서의 x,y,z 위치) 및 강도를 포함하지만 이에 제한되지 않는다. 각각의 포인트에 대해, x,y,z 및 강도가 사용된다. x와 y는 클러스터 중심 x,y를 감산하는 것에 의해 정규화될 수 있다. 이것은, 예를 들어, 조감도에서 필라 중심(pillar center)에 의해 포인트들의 x,y를 정규화하는 POINTPILLAR와 유사한 효과를 갖는다. 일 실시예에서, 클러스터들(601)은 Mx64 특징들(603)를 생성하기 위해 3 개의 완전 연결 계층(602)(특히 각각의 계층에 대한 32, 64 및 64 출력 특징들)에 의해 프로세싱된다. 그렇지만, 임의의 수의 콘볼루션 계층들 및 특징들이 사용될 수 있다. 블록(604)(예를 들면, 맥스 풀링(max pooling))은 특징들(603 및 613)에 기초하여 Mx192 융합된 특징들(605)을 생성하는 데 사용된다. 라이다 클러스터의 원시 포인트들은 먼저 라이다 특징들을 학습하기 위해 라이다 관련 파이프라인(627)에 공급되고, 원시 레이더 데이터는 레이더 특징들을 학습하기 위해 레이더 관련 파이프라인(628)에 공급된다. 융합은 네트워크의 특징 계층들(604, 605, 614 및 615)에서 발생한다. 604에서, 64-d 특징들을 갖는 각각의 라이다 포인트에 대해, 맥스 풀링 이후의 64-d 라이다 클러스터 전역적 특징들과, 64-d 레이더 클러스터 전역적 특징들이 각각의 라이다 포인트에 대한 새로운 특징 벡터로서 연결(concatenate)된다. 유사하게, 각각의 레이더 포인트의 64d 특징들에 더하여, 64-d 라이다 클러스터 전역적 특징들과 64-d 레이더 클러스터 전역적 특징들이 새로운 레이더 포인트 특징으로서 연결된다.
레이더 클러스터(611)에서, N 개의 레이더 포인트 각각은, 거리(range), 방위(bearing), 거리 변화율(range rate) 및 진폭을 포함하지만 이에 제한되지 않는, 레이더 정보를 포함한다. 클러스터들(611)은 Nx64 특징들(613)를 생성하기 위해 3 개의 완전 연결 계층(612)(특히 각각의 계층에 대한 32, 64 및 64 출력 특징들)에 의해 프로세싱된다. 그렇지만, 임의의 수의 콘볼루션 계층들 및 특징들이 사용될 수 있다. 블록(614)(예를 들면, 맥스 풀링)은 특징들(613 및 603)에 기초하여 Nx192 융합된 특징들(615)을 생성하는 데 사용된다.
딥 러닝 네트워크(600)의 라이다/레이더 융합 세그먼트(622)는 특징들(603 및 613)이 생성된 후에 딥 러닝 네트워크(600)에 초기 라이다/레이더 융합 포인트를 제공한다. 라이다/레이더 융합 세그먼트(622)에서, 라이다 관련 파이프라인(627)으로부터의 라이다 데이터는 레이더 관련 파이프라인(628)으로부터의 레이더 데이터와 결합된다. 또한, 레이더 관련 파이프라인(628)으로부터의 레이더 데이터는 라이다 관련 파이프라인(627)으로부터의 라이다 데이터와 결합된다. 각자의 파이프라인들(627 및 628)은 결합된 데이터로 업데이트된다. 데이터의 결합은 블록들(604 및 614)(예를 들면, 맥스 풀링)을 빠져나가는 라인들에 의해 표현되며, 각자의 파이프라인들(627 및 628)의 Mx192 융합된 특징들(605) 및 Nx192 융합된 특징들(615)에 입력들을 제공한다. 이것은, 교환되고 다른 유형(예를 들면, 레이더 또는 라이다)과 결합되는 라이다/레이더 특징들의 공유 또는 융합을 가능하게 하도록 포인트 네트워크가 커스터마이즈되는, 특징 융합을 결과한다. 일 예로서, N 개의 64-d LiDAR 특징들(613) 각각은 (맥스 풀링(604) 이후) 64-d 전역적 RADAR 특징들 및 (맥스 풀링(614) 이후) 64-d 전역적 LiDAR 특징들에 추가되어, N 개의 192-d LiDAR 특징들(615)을 결과한다. 마찬가지로, M 개의 64-d RADAR 특징들(603)은 융합 이후에 M 개의 192-d RADAR 특징들에 추가될 것이다. 이러한 결합은 (라이다 및 레이더 관련) Mx192 융합된 특징들(605) 및 (라이다 및 레이더 관련) Nx192 융합된 특징들(615)을 생성한다. 여기서, 64 개의 라이다 특징 + 64 개의 레이더 특징 + 64 개의 글로벌 특징 = 192 개의 총 특징. 딥 러닝 네트워크(600)의 라이다와 레이더 부분들은 완전 연결 네트워크, 구체적으로 Mx192 융합된 특징들(605) 및 Nx192 융합된 특징들(615)로부터 생성되는 2 개의 완전 연결 계층(제각기, 192 및 256 출력 특징들)(606)을 공유한다. 완전 연결 계층들(606)은, 제각기, 라이다 및 레이더에 대한 Mx256 융합된 특징들(607) 및 Nx256 융합된 특징들(616)을 생성하는 데 사용된다.
특징 공유(625)에서, Mx256 융합된 특징들(607) 및 Nx256 융합된 특징들(616) 둘 모두는 라이다 검출(lidar-detected) 특징들 및 레이더 검출(radar-detected) 특징들을 포함한다. 블록들(608 및 617)(예를 들면, 맥스 풀링 블록들)은 융합된 클러스터 레벨 정보(618)(예를 들면, 속도, 도로까지의 거리 등)를 생성하는 데 사용된다. Mx256 융합된 특징들(607), Nx256 융합된 특징들(616), 및 클러스터 레벨 정보(631)(예를 들면, 속도 및 도로까지의 거리를 포함함)는, 618에서, 융합된 클러스터 특징들에 결합되고, 완전 연결 계층들(256 및 k 출력 특징들)(609)에 공급된다. 609에서의 마지막 완전 연결 계층에서의 출력 k 특징들은 라벨들(610), 상자들(620) 및 속도들(619)을 생성하는 데 사용된다. k의 값은 이 경우에 610, 619 및 620 출력들을 생성하는 데 필요한 최종 차원이다. 610, 619 및 620 출력들은 위치, 차원 및 라벨을 포함한다. 주어진 라벨은 대상체가, 예를 들어, 보행자임을 식별해 줄 수 있다. 라벨은 신뢰도 점수, 예를 들어, 대상체가 보행자라는 80% 신뢰도가 있음을 나타내는 80%를 더 포함할 수 있다. 614부터 615까지, 각각의 레이더 포인트 특징은 레이더 클러스터 구조 정보를 인코딩하기 위해 레이더 클러스터 레벨 특징(맥스 풀링 계층 이후의 64-d)으로 보강될 수 있다. 게다가, 604로부터의 각각의 라이다 클러스터 레벨 특징이 또한 라이다 클러스터 기반 구조 정보를 인코딩하기 위해 각각의 레이더 포인트 특징에 보강된다. 이 융합된 192-d 특징은, 포인트 레벨 및 클러스터 레벨 정보 둘 모두와 함께, 라이다 및 레이더로부터의 상호 보완적인 정보를 가질 것이다. 도 6ab에서, k는 대상체 클래스들의 수 * (라벨 + 상자 + 속도)의 차원에 의존하는 변화하는 차원이며, k는 응용 세부 사항들에 따라 구성 가능하다.
일부 실시예들에서, 구현(600)은 구현(500)을 포함한다. 일부 실시예들에서, 시스템(600)은 시스템(202)과 동일하거나 유사하다.
도 6b는 휴리스틱 기반 연관을 사용하여 대상체들을 식별하기 위한 예시적인 워크플로(650)를 나타내는 블록 다이어그램이다. LiDAR 클러스터들(652)의 리스트 및 RADAR 클러스터들(654)의 리스트가 주어지면, 무게 중심 거리, 헤딩 차이 및 속도 차이(656)의 가중된 점수가 데이터 연관에 대한 비용/비유사도로서 사용될 수 있다. 헝가리안 알고리즘과 같은 임의의 고전적인 데이터 연관 알고리즘들이 LiDAR 클러스터들(652)과 RADAR 클러스터들(654)의 연관을 위해 채택될 수 있다. 연관의 결과는 매칭되지 않은 라이다 클러스터들(658), 매칭된 라이다/레이더 쌍들(660) 및 매칭되지 않은 레이더 클러스터들(662)을 포함한다.
도 6c는 장면(680)에서의 LiDAR와 RADAR 클러스터들의 연관의 예를 나타내는 다이어그램이다. 장면(680)은, 예를 들어, 워크플로(650)를 사용하여 식별될 수 있는 5 개의 대상체를 포함한다. L 접두사는 LiDAR에 의해 검출된 대상체들을 나타내고, R 접두사는 RADAR에 의해 검출된 대상체들을 나타낸다. 연관 이후에, <L1, R1> 및 <L2, R2>는 2 개의 대상체를 나타내는 2 개의 매칭된 쌍(682 및 684)이다. L3은 대상체(686)를 나타내는 매칭되지 않은 LiDAR 클러스터이다. R4와 R5는 2 개의 대상체(688 및 690)를 나타내는 2 개의 매칭되지 않은 RADAR 클러스터이다.
이제 도 7을 참조하면, RADAR와 LiDAR 융합을 사용하는 대상체 검출을 위한 프로세스(700)의 플로차트가 예시되어 있다. 일부 실시예들에서, 대상체 검출은 레이더로부터의 클러스터들과 라이다로부터의 클러스터들의 연관에 기초하여 생성되는 클러스터들을 생성하고 라벨링하는 것을 포함한다. 일부 실시예들에서, 프로세스(700)와 관련하여 기술된 단계들 중 하나 이상은 인지 시스템(402)에 의해(예를 들면, 인지 시스템(402)의 하나 이상의 시스템(또는 이들의 서브시스템들)에 의해) (예를 들면, 전체적으로, 부분적으로 등) 수행된다. 추가적으로 또는 대안적으로, 일부 실시예들에서, 프로세스(700)와 관련하여 기술된 하나 이상의 단계는, 디바이스(300)와 같은, 인지 시스템(402)으로부터 분리되거나 이를 포함하는 다른 디바이스 또는 디바이스 그룹에 의해 (예를 들면, 전체적으로, 부분적으로 등) 수행된다. 블록들(710 및 712)은 라이다 및 레이더 클러스터 분할 파이프라인들이다. GRAPHSEG 또는 DBSCAN 방법들과 같은, 고전적인 포인트 클라우드 분할 방법들이 사용될 수 있다. 단계(714)는 라이다와 레이더 클러스터 연관을 제공하며, 여기서 헝가리안 알고리즘과 같은 데이터 연관 알고리즘은 무게 중심, 속도 및 헤딩 각도를 사용하여 라이다와 레이더 클러스터들을 연관시키는 데 사용될 수 있다. 716에서, 종래의 시스템에 의해 제공하지 않는 능력들을 사용하여, 라이다와 레이더 융합 네트워크가 대상체 라벨, 경계 상자 및 속도를 보다 잘 예측하기 위해 라이다 클러스터와 레이더 클러스터 특징들을 융합시키는 데 사용된다. 상호 보완적인 라이다와 레이더 특징들은 개선된 원거리 검출 성능을 가능하게 할 수 있다.
702에서, 환경에서 작동하는 차량(예를 들면, AV(200))의 라이다 센서(예를 들면, 라이다 센서(202b))에 의해 캡처되는 제1 포인트 클라우드가 적어도 하나의 프로세서(예를 들면, 프로세서(304))에 의해 획득된다. 일부 실시예들에서, 제1 포인트 클라우드는 라이다 센서에 의한 환경의 다수의 스캔들로부터 축적된다. 일부 실시예들에서, 라이다 센서들(202b)과 연관된 적어도 하나의 데이터 프로세싱 시스템은 라이다 센서들(202b)의 스캐닝 시야에 포함된 대상체들을 나타내는 깊이 데이터(예를 들면, 포인트 클라우드, 결합된 포인트 클라우드(combined point cloud) 등)를 생성한다. 일부 예들에서, 라이다 센서(202b)와 연관된 적어도 하나의 데이터 프로세싱 시스템은 물리적 대상체의 경계들, 물리적 대상체의 표면들(예를 들면, 표면들의 토폴로지) 등을 나타내는 3D 데이터를 생성한다. 그러한 예에서, 3D 데이터는 라이다 센서들(202b)의 시야 내의 물리적 대상체들의 경계들을 결정하는 데 사용된다.
704에서, 차량(예를 들면, 차량(200))의 레이더 센서(예를 들면, 레이더 센서(202c))에 의해 캡처되는 제2 포인트 클라우드가 적어도 하나의 프로세서(예를 들면, 프로세서(304))에 의해 획득된다. 일부 실시예들에서, 제2 포인트 클라우드는 레이더 센서에 의한 환경의 다수의 스캔들로부터 축적된다. 일부 실시예들에서, 레이더 센서(202c)와 연관된 적어도 하나의 데이터 프로세싱 시스템은 물리적 대상체의 경계들, 물리적 대상체의 표면들(예를 들면, 표면들의 토폴로지) 등을 나타내는 3D 데이터를 생성한다. 일부 예들에서, 이미지는 레이더 센서들(202c)의 시야 내의 물리적 대상체들의 경계들을 결정하는 데 사용된다.
706에서, 제1 포인트 클라우드는 적어도 하나의 프로세서를 사용하여 차량 중심 기준 프레임(vehicle-centric reference frame)으로 변환된다. 예를 들어, 라이다 및/또는 프로세서(예를 들면, 프로세서(304))는 라이다의 FOV에 있는 대상체들(예를 들면, 대상체들(104a 내지 104n))의 제1 포인트 클라우드를 차량(200)에 중심을 둔 프레임으로 변환할 수 있다. 이 예에서, 중심을 둔다는 것은 차량(200)이 제1 포인트 클라우드의 정확한 중심에 있는 포인트에 의해 표현된다는 것을 의미하는 것이 아니라, 오히려 제1 포인트 클라우드 내의 포인트들이 차량(200)을 기준으로 하는 위치들을 갖는다는 것을 의미한다.
708에서, 제2 포인트 클라우드는 적어도 하나의 프로세서를 사용하여 차량 중심 기준 프레임으로 변환된다. 예를 들어, 레이더 센서 및/또는 프로세서(예를 들면, 프로세서(304))는 레이더의 FOV에 있는 대상체들(예를 들면, 대상체들(104a 내지 104n))의 제2 포인트 클라우드를 차량(200)에 중심을 둔 프레임으로 변환할 수 있다. 이 예에서도, 중심을 둔다는 것은 차량(200)이 제2 포인트 클라우드의 정확한 중심에 있는 포인트에 의해 표현된다는 것을 의미하는 것이 아니라, 오히려 제2 포인트 클라우드 내의 포인트들이 차량(200)을 기준으로 하는 위치들을 갖는다는 것을 의미한다.
710에서, 적어도 하나의 프로세서를 사용하여 제1 포인트 클라우드에서 포인트들의 제1 클러스터 세트가 생성된다. 예를 들어, 적어도 하나의 프로세서는 대상체들(예를 들면, 대상체들(104a 내지 104n)의 세트로부터의 특정 대상체들)의 제1 포인트 클라우드에 대한 클러스터링된 포인트 그룹을 형성할 수 있다. 일 실시예에서, 제1 포인트 클라우드 내의 제1 포인트 세트는, 예를 들어, 라이다 센서에 의한 환경의 다수의 스캔들로부터 축적된다. 일부 실시예들에서, 포인트들의 제1 클러스터 세트의 생성은 지오메트리 기반 라이다 대상체 검출(예를 들면, GRAPHSEG)을 사용한다.
712에서, 적어도 하나의 프로세서를 사용하여 제2 포인트 클라우드에서 포인트들의 제2 클러스터 세트가 생성된다. 예를 들어, 적어도 하나의 프로세서는 대상체들(예를 들면, 대상체들(104a 내지 104n)의 세트로부터의 특정 대상체들)의 제2 포인트 클라우드에 대한 클러스터링된 포인트 그룹을 형성할 수 있다. 일 실시예에서, 제2 포인트 클라우드 내의 제1 포인트 세트는, 예를 들어, 레이더 센서에 의한 환경의 다수의 스캔들로부터 축적된다. 일부 실시예들에서, 제2 클러스터 세트의 생성은 클러스터링 알고리즘(예를 들면, DBSCAN(Density-Based Spatial Clustering of Applications with Noise))을 사용한다.
714에서, 적어도 하나의 프로세서를 사용하여 제1 클러스터 세트와 제2 클러스터 세트의 연관에 기초하여 제3 클러스터 세트가 생성된다. 예를 들어, 제3 클러스터 세트는 (예를 들어, 단계들(710 및 712)로부터) 레이더로부터의 제1 클러스터 세트와 라이다로부터의 제2 클러스터 세트의 연관에 기초하여 생성된다. 이어서 융합된 LiDAR/RADAR 생성 특징들을 생성하기 위해 네트워크 내의 LiDAR 분기와 RADAR 분기 각각으로부터 획득되는 제3 클러스터 세트에 대한 특징들이 특징 레벨에서 결합된다.
716에서, 적어도 하나의 프로세서를 사용하여 머신 러닝 모델(예를 들면, 딥 러닝 네트워크(600))에 기초하여 제3 클러스터 세트 내의 적어도 하나의 클러스터에 있는 적어도 하나의 대상체에 대한 적어도 하나의 라벨이 생성된다. 일 예로서, 생성되는 라벨은 제3 클러스터 세트에 의해 표현되는 대상체 유형을 나타낼 수 있다.
일부 실시예들에서, 프로세스(700)는 앵커 상자들의 생성을 더 포함한다. 일부 실시예들에서, 제1 클러스터 세트에 대한 제1 앵커 상자 세트가 생성된다. 제2 클러스터 세트에 대한 제2 앵커 상자 세트가 생성된다. 제3 앵커 상자 세트는 제1 앵커 상자 세트와 제2 앵커 상자 세트 내의 포인트들의 연관에 기초하여 생성된다. 머신 러닝 모델(예를 들면, 딥 러닝 네트워크(600))에 기초하여 제3 앵커 상자 세트 내의 적어도 하나의 앵커 상자에 대한 적어도 하나의 라벨이 생성된다. 라벨링은 물리적 대상체들(예를 들면, 자전거들, 차량들, 교통 표지판들, 보행자들 등)의 하나 이상의 그룹화에 기초하여 적어도 하나의 물리적 대상체를 분류하는 것을 포함할 수 있다.
일부 실시예들에서, 프로세스(700)는 융합으로부터의 대상체 검출의 사용을 더 포함한다. 예를 들어, 차량의 제어 회로를 사용하여, 차량은 포인트들의 제3 클러스터 세트의 적어도 하나의 앵커 상자 내의 적어도 하나의 대상체에 기초하는 궤적을 횡단하도록 작동된다. 예를 들어, 궤적은 대상체(예를 들면, 주차된 자동차 또는 보행자)를 지나 안전하게 운행하기 위해 차량(200)이 취해야 하는 시간의 함수로서의 경로이다.
일부 실시예들에서, 프로세스(700)는 다수의의 센서 스캔들의 사용을 더 포함한다. 예를 들어, 제1 포인트 클라우드와 제2 포인트 클라우드는, 제각기, 라이다 센서와 레이더 센서에 의한 환경의 다수의 스캔들로부터 축적될 수 있다. 다수의 스캔들의 결과는, 예를 들어, 단일 스캔보다 정확한 포인트 클라우드들을 생성하는 것이다. 예를 들어, 다수의 스캔들은, 움직이는 보행자 또는 통행 중인 다른 차량과 같은, 대상체의 움직임을 고려할 수 있다. 현재 라이다 스위프의 타임스탬프에서, 최신 레이더 스위프, 및 과거 M 개의 라이다 스위프들 및 N 개의 레이더 스위프들(통상적으로 M, N은 2 개 내지 10 개의 스위프)은 포즈들을 사용하여 차량의 모션을 보상하는 것에 의해 현재 타임스탬프로 변환된다. 모든 과거 라이다 및 레이더 포인트들은 현재 라이다 스위프 좌표들로 변환된다. 라이다 클러스터들은 모든 라이다 스위프들로부터의 병합된 라이다 포인트 클라우드로부터 분할되고, 레이더 클러스터들은 모든 레이더 스위프들로부터의 병합된 레이더 포인트 클라우드로부터 분할된다.
일부 실시예들에서, 제3 클러스터와 같은, 클러스터 포인트들을 연관시키는 것은 규칙들에 기초한다. 일부 예들에서, 제1 클러스터 세트 및 제2 클러스터 세트는, 예를 들어, 클러스터들의 무게 중심들 사이의 거리, 클러스터들의 헤딩들 및 속도들의 비교 등에 기초하여 클러스터링의 레벨을 지정하는 적어도 하나의 규칙에 기초하여 연관된다. 클러스터 속도와 헤딩 각도는 클러스터로부터 계산될 수 있다. 이전에 기술된 바와 같이, 각각의 클러스터는 다수의 스위프들로부터의 포인트들을 포함한다. 헤딩 및 속도는 무게 중심 변위 및 클러스터 내의 상이한 타임스탬프들로부터의 포인트들 사이의 시간 차이로부터 계산할 수 있다. 각각의 클러스터에 대한 무게 중심, 헤딩 및 속도가 주어지면, 2 개의 클러스터의 유사도를 결정하기 위해 이들 사이의 중심 거리, 헤딩 각도 및 속도 차이가 계산될 수 있다. 이러한 엔터티들의 가중된 점수들은 데이터 연관에 대한 비용/유사도로서 사용할 수 있다.
일부 실시예들에서, 프로세스(700)는 라이다 클러스터 알고리즘들의 사용을 더 포함한다. 예를 들어, 제1 포인트 클라우드에서 포인트들의 제1 클러스터 세트를 생성하는 것은 (예를 들면, GRAPHSEG 또는 GRAPHCUT 알고리즘들을 사용하여) 제1 포인트 클라우드에 그래프 컷 기반 분할(graph cut based segmentation)을 적용하는 것을 포함할 수 있다.
일부 실시예들에서, 프로세스(700)는 레이더 포인트들에 대한 경계 상자들(b-상자들)을 결정하기 위해 라이다 클러스터 크기들을 사용하는 것을 더 포함한다. 예를 들어, 제1 포인트 클러스터의 크기는 제2 포인트 클러스터에 대한 앵커 상자 크기를 결정하는 데 사용될 수 있다. 일부 실시예들에서, 프로세스(700)는 라이다 클러스터 크기를 결정하기 위해 레이더 포인트들에 대한 b-상자들을 사용하는 것을 더 포함한다. 일단 라이다 클러스터와 레이더 클러스터가 연관되면, 라이다 클러스터 반경이 (예를 들면, 1.2배만큼) 확장될 수 있다. 이 영역 내의 레이더 포인트들은 연관된 라이다 클러스터 포인트들에 더하여 추가될 수 있으며, 그 반대의 경우도 마찬가지이다. 이러한 방식으로, 원래 라이다 클러스터와 레이더 클러스터로부터의 일부 누락된 포인트들이 복구될 수 있다. 클러스터 크기는 경계 상자의 가장 긴 치수를 결정하는 것을 목표로 하지 않으며, 오히려 경계 상자 치수(중심, 폭, 길이 및 각도)는 도 6에서의 라이다 레이더 융합 네트워크에 의해 예측될 수 있다.
일부 실시예들에서, 프로세스(700)는 클러스터들 간의 연관들이 발견되지 않는 경우를 처리하기 위한 기술들을 더 포함한다. 예를 들어, 제1 및 제2 클러스터들 중 일부에 연관된 포인트가 없는 것으로 결정되는 경우, 기본 값들을 갖는 적어도 하나의 포인트가 제1 또는 제2 클러스터 세트에 추가될 수 있다.
일부 실시예들에서, 포인트 데코레이션(decoration)(또는 주석 달기(annotation))이 발생할 수 있다. 예를 들어, 제1 클러스터 내의 각각의 포인트는 (포인트 클라우드 기준 프레임에서의) 위치 좌표들, 강도 값 및 다수의 스위프들 사이의 상대 시간 정보와 연관될 수 있다. 제2 클러스터 내의 각각의 포인트는 거리, 방위, 거리 변화율, 진폭, 및 다수의 스위프들 사이의 상대 시간 정보와 연관될 수 있다.
전술한 설명에서, 본 개시의 양태들 및 실시예들은 구현마다 달라질 수 있는 다수의 특정 세부 사항들을 참조하여 기술되었다. 그에 따라, 설명 및 도면들은 제한적인 의미가 아니라 예시적인 의미로 간주되어야 한다. 본 발명의 범위의 유일한 독점적인 지표, 및 출원인들이 본 발명의 범위이도록 의도한 것은, 본 출원에서 특정 형태로 나오는 일련의 청구항들의 문언적 등가 범위이며, 임의의 후속 보정을 포함한다. 그러한 청구항들에 포함된 용어들에 대한 본원에서 명시적으로 기재된 임의의 정의들은 청구항들에서 사용되는 그러한 용어들의 의미를 결정한다. 추가적으로, 전술한 설명 및 이하의 청구항들에서 "더 포함하는"이라는 용어가 사용될 때, 이 문구에 뒤따르는 것은 추가적인 단계 또는 엔티티, 또는 이전에 언급된 단계 또는 엔티티의 서브단계/서브엔티티일 수 있다.

Claims (20)

  1. 방법으로서,
    적어도 하나의 프로세서로, 환경에서 작동하는 차량의 LiDAR(light detection and ranging) 센서에 의해 캡처되는 제1 포인트 클라우드를 획득하는 단계;
    상기 적어도 하나의 프로세서로, 상기 차량의 RADAR(radio detection and ranging) 센서에 의해 캡처되는 제2 포인트 클라우드를 획득하는 단계;
    상기 적어도 하나의 프로세서로, 상기 제1 포인트 클라우드를 차량 중심 기준 프레임으로 변환하는 단계;
    상기 적어도 하나의 프로세서로, 상기 제2 포인트 클라우드를 상기 차량 중심 기준 프레임으로 변환하는 단계;
    상기 적어도 하나의 프로세서로, 상기 제1 포인트 클라우드에서 포인트들의 제1 클러스터 세트를 생성하는 단계;
    상기 적어도 하나의 프로세서로, 상기 제2 포인트 클라우드에서 포인트들의 제2 클러스터 세트를 생성하는 단계;
    상기 적어도 하나의 프로세서로, 상기 제1 클러스터 세트 내의 포인트들과 상기 제2 클러스터 세트 내의 포인트들의 연관에 기초하여 제3 클러스터 세트를 생성하는 단계 - 상기 제3 클러스터 세트를 생성하는 단계는 네트워크 내의 LiDAR 분기와 RADAR 분기 각각으로부터 획득되는 특징들을 사용하여 융합된 LiDAR/RADAR 생성 특징들을 생성하기 위해 특징 레벨에서 특징들을 결합시키는 단계를 포함함 -; 및
    상기 적어도 하나의 프로세서로, 상기 융합된 LiDAR/RADAR 생성 특징들을 사용하여, 머신 러닝 모델에 기초하여 상기 제3 클러스터 세트 내의 각각의 클러스터에 대한 대상체 라벨, 경계 상자 및 속도를 생성하는 단계
    를 포함하는, 방법.
  2. 제1항에 있어서,
    상기 제1 클러스터 세트에 대한 제1 앵커 상자 세트를 생성하는 단계;
    상기 제2 클러스터 세트에 대한 제2 앵커 상자 세트를 생성하는 단계;
    상기 제1 앵커 상자 세트와 상기 제2 앵커 상자 세트에서 상기 제1 클러스터 세트와 상기 제2 클러스터 세트의 연관을 생성하는 단계; 및
    머신 러닝 모델에 기초하여 제3 앵커 상자 세트 내의 각각의 앵커 상자에 대한 대상체 라벨, 경계 상자 및 속도를 생성하는 단계
    를 더 포함하는, 방법.
  3. 제1항에 있어서,
    상기 제1 포인트 클라우드와 상기 제2 포인트 클라우드는, 제각기, 상기 LiDAR 센서와 상기 RADAR 센서에 의한 상기 환경의 다수의 스캔들로부터 축적되는 것인, 방법.
  4. 제1항에 있어서,
    상기 제1 클러스터 세트와 상기 제2 클러스터 세트는 클러스터들의 무게 중심들, 상기 클러스터들의 헤딩들 및 속도들 사이의 거리를 적어도 포함하는 휴리스틱 특징들에 기초하여 연관되는 것인, 방법.
  5. 제1항에 있어서,
    대상체 검출을 위한 교차 모달리티 특징들을 학습하기 위해 상호 보완적인 라이다 포인트들과 레이더 포인트들을 결합시키는 융합 딥 러닝 네트워크를 생성하는 단계
    를 더 포함하는, 방법.
  6. 제1항에 있어서,
    상기 제1 포인트 클라우드에서 포인트들의 제1 클러스터 세트를 생성하는 단계는:
    상기 제1 포인트 클라우드에 그래프 컷 기반 분할을 적용하는 단계
    를 포함하는 것인, 방법.
  7. 제1항에 있어서,
    상기 제1 클러스터 세트의 크기는 상기 포인트들의 제2 클러스터 세트에 대한 앵커 상자 크기를 결정하는 데 사용되는 것인, 방법.
  8. 제1항에 있어서,
    상기 제1 클러스터 세트 또는 상기 제2 클러스터 세트 중 일부 사이에 연관된 클러스터가 없다고 결정하는 단계; 및
    기본 값들을 갖는 적어도 하나의 포인트를 갖는 연관된 더미 클러스터를 추가하는 단계
    를 더 포함하는, 방법.
  9. 제1항에 있어서,
    상기 제1 클러스터 세트 내의 각각의 포인트는 포인트 클라우드 기준 프레임에서의 위치 좌표들 및 강도 값, 및 다수의 스위프들 사이의 상대 시간 정보와 연관되고,
    상기 제2 클러스터 세트 내의 각각의 포인트는 거리, 방위, 거리 변화율 및 진폭, 및 다수의 스위프들 사이의 상대 시간 정보와 연관되는 것인, 방법.
  10. 시스템으로서,
    적어도 하나의 프로세서; 및
    상기 적어도 하나의 프로세서에 의해 실행될 때, 상기 적어도 하나의 프로세서로 하여금 동작들을 수행하게 하는 명령어들을 저장하는 메모리
    를 포함하며, 상기 동작들은:
    적어도 하나의 프로세서로, 환경에서 작동하는 차량의 LiDAR(light detection and ranging) 센서에 의해 캡처되는 제1 포인트 클라우드를 획득하는 동작;
    상기 적어도 하나의 프로세서로, 상기 차량의 RADAR(radio detection and ranging) 센서에 의해 캡처되는 제2 포인트 클라우드를 획득하는 동작;
    상기 적어도 하나의 프로세서로, 상기 제1 포인트 클라우드를 차량 중심 기준 프레임으로 변환하는 동작;
    상기 적어도 하나의 프로세서로, 상기 제2 포인트 클라우드를 상기 차량 중심 기준 프레임으로 변환하는 동작;
    상기 적어도 하나의 프로세서로, 상기 제1 포인트 클라우드에서 포인트들의 제1 클러스터 세트를 생성하는 동작;
    상기 적어도 하나의 프로세서로, 상기 제2 포인트 클라우드에서 포인트들의 제2 클러스터 세트를 생성하는 동작;
    상기 적어도 하나의 프로세서로, 상기 제1 클러스터 세트 내의 포인트들과 상기 제2 클러스터 세트 내의 포인트들의 연관에 기초하여 제3 클러스터 세트를 생성하는 동작 - 상기 제3 클러스터 세트를 생성하는 동작은 네트워크 내의 LiDAR 분기와 RADAR 분기 각각으로부터 획득되는 특징들을 사용하여 융합된 LiDAR/RADAR 생성 특징들을 생성하기 위해 특징 레벨에서 특징들을 결합시키는 동작을 포함함 -; 및
    상기 적어도 하나의 프로세서로, 상기 융합된 LiDAR/RADAR 생성 특징들을 사용하여, 머신 러닝 모델에 기초하여 상기 제3 클러스터 세트 내의 각각의 클러스터에 대한 대상체 라벨, 경계 상자 및 속도를 생성하는 동작
    을 포함하는 것인, 시스템.
  11. 하나 이상의 프로세서에 의해 실행될 때, 상기 하나 이상의 프로세서로 하여금 동작들을 수행하게 하는 명령어들을 저장하고 있는 비일시적 컴퓨터 판독 가능 저장 매체로서, 상기 동작들은:
    상기 하나 이상의 프로세서로, 환경에서 작동하는 차량의 LiDAR(light detection and ranging) 센서에 의해 캡처되는 제1 포인트 클라우드를 획득하는 동작;
    상기 하나 이상의 프로세서로, 상기 차량의 RADAR(radio detection and ranging) 센서에 의해 캡처되는 제2 포인트 클라우드를 획득하는 동작;
    상기 하나 이상의 프로세서로, 상기 제1 포인트 클라우드를 차량 중심 기준 프레임으로 변환하는 동작;
    상기 하나 이상의 프로세서로, 상기 제2 포인트 클라우드를 상기 차량 중심 기준 프레임으로 변환하는 동작;
    상기 하나 이상의 프로세서로, 상기 제1 포인트 클라우드에서 포인트들의 제1 클러스터 세트를 생성하는 동작;
    상기 하나 이상의 프로세서로, 상기 제2 포인트 클라우드에서 포인트들의 제2 클러스터 세트를 생성하는 동작;
    상기 하나 이상의 프로세서로, 상기 제1 클러스터 세트 내의 포인트들과 상기 제2 클러스터 세트 내의 포인트들의 연관에 기초하여 제3 클러스터 세트를 생성하는 동작 - 상기 제3 클러스터 세트를 생성하는 동작은 네트워크 내의 LiDAR 분기와 RADAR 분기 각각으로부터 획득되는 특징들을 사용하여 융합된 LiDAR/RADAR 생성 특징들을 생성하기 위해 특징 레벨에서 특징들을 결합시키는 동작을 포함함 -; 및
    상기 하나 이상의 프로세서로, 상기 융합된 LiDAR/RADAR 생성 특징들을 사용하여, 머신 러닝 모델에 기초하여 상기 제3 클러스터 세트 내의 각각의 클러스터에 대한 대상체 라벨, 경계 상자 및 속도를 생성하는 동작
    을 포함하는 것인, 비일시적 컴퓨터 판독 가능 저장 매체.
  12. 제10항에 있어서,
    상기 동작들은:
    상기 제1 클러스터 세트에 대한 제1 앵커 상자 세트를 생성하는 동작;
    상기 제2 클러스터 세트에 대한 제2 앵커 상자 세트를 생성하는 동작;
    상기 제1 앵커 상자 세트와 상기 제2 앵커 상자 세트에서 상기 제1 클러스터 세트와 상기 제2 클러스터 세트의 연관을 생성하는 동작; 및
    머신 러닝 모델에 기초하여 제3 앵커 상자 세트 내의 각각의 앵커 상자에 대한 대상체 라벨, 경계 상자 및 속도를 생성하는 동작
    을 더 포함하는 것인, 시스템.
  13. 제10항에 있어서,
    상기 제1 포인트 클라우드와 상기 제2 포인트 클라우드는, 제각기, 상기 LiDAR 센서와 상기 RADAR 센서에 의한 상기 환경의 다수의 스캔들로부터 축적되는 것인, 시스템.
  14. 제10항에 있어서,
    상기 제1 클러스터 세트와 상기 제2 클러스터 세트는 클러스터들의 무게 중심들, 상기 클러스터들의 헤딩들 및 속도들 사이의 거리를 적어도 포함하는 휴리스틱 특징들에 기초하여 연관되는 것인, 시스템.
  15. 제10항에 있어서,
    상기 동작들은 대상체 검출을 위한 교차 모달리티 특징들을 학습하기 위해 상호 보완적인 라이다 포인트들과 레이더 포인트들을 결합시키는 융합 딥 러닝 네트워크를 생성하는 동작을 더 포함하는 것인, 시스템.
  16. 제10항에 있어서,
    상기 제1 포인트 클라우드에서 포인트들의 제1 클러스터 세트를 생성하는 동작은:
    상기 제1 포인트 클라우드에 그래프 컷 기반 분할을 적용하는 동작
    을 포함하는 것인, 시스템.
  17. 제11항에 있어서,
    상기 동작들은:
    상기 제1 클러스터 세트에 대한 제1 앵커 상자 세트를 생성하는 동작;
    상기 제2 클러스터 세트에 대한 제2 앵커 상자 세트를 생성하는 동작;
    상기 제1 앵커 상자 세트와 상기 제2 앵커 상자 세트에서 상기 제1 클러스터 세트와 상기 제2 클러스터 세트의 연관을 생성하는 동작; 및
    머신 러닝 모델에 기초하여 제3 앵커 상자 세트 내의 각각의 앵커 상자에 대한 대상체 라벨, 경계 상자 및 속도를 생성하는 동작
    을 더 포함하는 것인, 비일시적 컴퓨터 판독 가능 저장 매체.
  18. 제11항에 있어서,
    상기 제1 포인트 클라우드와 상기 제2 포인트 클라우드는, 제각기, 상기 LiDAR 센서와 상기 RADAR 센서에 의한 상기 환경의 다수의 스캔들로부터 축적되는 것인, 비일시적 컴퓨터 판독 가능 저장 매체.
  19. 제11항에 있어서,
    상기 제1 클러스터 세트와 상기 제2 클러스터 세트는 클러스터들의 무게 중심들, 상기 클러스터들의 헤딩들 및 속도들 사이의 거리를 적어도 포함하는 휴리스틱 특징들에 기초하여 연관되는 것인, 비일시적 컴퓨터 판독 가능 저장 매체.
  20. 제11항에 있어서,
    상기 동작들은:
    대상체 검출을 위한 교차 모달리티 특징들을 학습하기 위해 상호 보완적인 라이다 포인트들과 레이더 포인트들을 결합시키는 융합 딥 러닝 네트워크를 생성하는 동작
    을 더 포함하는 것인, 비일시적 컴퓨터 판독 가능 저장 매체.
KR1020220005141A 2021-10-07 2022-01-13 Radar와 lidar 융합을 사용한 대상체 검출 KR20230051035A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/496,495 US20230109909A1 (en) 2021-10-07 2021-10-07 Object detection using radar and lidar fusion
US17/496,495 2021-10-07

Publications (1)

Publication Number Publication Date
KR20230051035A true KR20230051035A (ko) 2023-04-17

Family

ID=80685104

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220005141A KR20230051035A (ko) 2021-10-07 2022-01-13 Radar와 lidar 융합을 사용한 대상체 검출

Country Status (5)

Country Link
US (1) US20230109909A1 (ko)
KR (1) KR20230051035A (ko)
CN (1) CN115951326A (ko)
DE (1) DE102022100413A1 (ko)
GB (1) GB2611588A (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230213354A1 (en) * 2022-01-06 2023-07-06 Toyota Motor Engineering & Manufacturing North America, Inc. Systems and methods of cooperative depth completion with sensor data sharing
CN117849760B (zh) * 2024-03-07 2024-05-14 云南云金地科技有限公司 一种激光雷达点云数据处理方法

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8589119B2 (en) * 2011-01-31 2013-11-19 Raytheon Company System and method for distributed processing
KR101534927B1 (ko) * 2013-10-08 2015-07-07 현대자동차주식회사 차량 인지 장치 및 방법
KR101795432B1 (ko) * 2016-02-26 2017-11-10 현대자동차주식회사 차량 및 차량의 제어방법
US11170215B1 (en) * 2016-04-28 2021-11-09 Reality Analytics, Inc. System and method for discriminating and demarcating targets of interest in a physical scene
JP2020502685A (ja) * 2016-12-20 2020-01-23 トヨタ・モーター・ヨーロッパToyota Motor Europe パッシブ光学センサの画像データを増大させるための電子デバイス、システムおよび方法
US10602242B2 (en) * 2017-06-14 2020-03-24 GM Global Technology Operations LLC Apparatus, method and system for multi-mode fusion processing of data of multiple different formats sensed from heterogeneous devices
US11194842B2 (en) * 2018-01-18 2021-12-07 Samsung Electronics Company, Ltd. Methods and systems for interacting with mobile device
EP3525000B1 (en) * 2018-02-09 2021-07-21 Bayerische Motoren Werke Aktiengesellschaft Methods and apparatuses for object detection in a scene based on lidar data and radar data of the scene
WO2020037492A1 (en) * 2018-08-21 2020-02-27 SZ DJI Technology Co., Ltd. Distance measuring method and device
JP2020154568A (ja) * 2019-03-19 2020-09-24 株式会社日立製作所 データ通信に基づいて意思決定を行うシステム
US20220214444A1 (en) * 2019-06-14 2022-07-07 Kpit Technologies Limited Lidar and radar based tracking and mapping system and method thereof
US11055540B2 (en) * 2019-06-28 2021-07-06 Baidu Usa Llc Method for determining anchor boxes for training neural network object detection models for autonomous driving
US20230005237A1 (en) * 2019-12-06 2023-01-05 NEC Cporportation Parameter determination apparatus, parameter determination method, and non-transitory computer readable medium
US20230111810A1 (en) * 2020-03-20 2023-04-13 Lg Electronics Inc. Method and device for managing cluster
US20210327280A1 (en) * 2020-04-21 2021-10-21 Qualcomm Incorporated Cluster-based approach to positioning of vehicles in vehicle platooning or autonomous trucking
US11605228B2 (en) * 2020-06-26 2023-03-14 Nxp Usa, Inc. System and method for sensor fusion system having distributed convolutional neural network
EP4196908A1 (en) * 2020-10-02 2023-06-21 L'oreal Systems and methods for acne counting, localization and visualization
US20220178718A1 (en) * 2020-12-04 2022-06-09 Mitsubishi Electric Automotive America, Inc. Sensor fusion for dynamic mapping
US11734883B2 (en) * 2021-04-14 2023-08-22 Lineage Logistics, LLC Generating mappings of physical spaces from point cloud data
CN113139607B (zh) * 2021-04-27 2023-12-19 苏州挚途科技有限公司 障碍物检测方法和装置
US20220357441A1 (en) * 2021-05-10 2022-11-10 Qualcomm Incorporated Radar and camera data fusion

Also Published As

Publication number Publication date
CN115951326A (zh) 2023-04-11
US20230109909A1 (en) 2023-04-13
DE102022100413A1 (de) 2023-04-13
GB2611588A (en) 2023-04-12

Similar Documents

Publication Publication Date Title
KR102628736B1 (ko) 딥 러닝 기반 카메라 교정
KR102595886B1 (ko) 매핑에서의 향상된 시맨틱 라벨링을 위한 멀티 모달 분할 네트워크
KR20230051035A (ko) Radar와 lidar 융합을 사용한 대상체 검출
KR20220151098A (ko) 융합된 이미지를 사용한 엔드 투 엔드 시스템 트레이닝
KR20230023530A (ko) 신뢰할 수 없는 맵 주석 입력들을 사용하는 센서 데이터의 시맨틱 주석 달기
KR20230120974A (ko) 레이더를 사용하여 로컬화 및 차선 검출을 위한 연석 기반의 특징 추출
KR20230037002A (ko) 머신 러닝 기반의 포인트 클라우드 정렬 분류
KR20230108672A (ko) 규칙집 궤적 생성을 위한 그래프 탐색
WO2023086170A1 (en) Unsupervised domain adaptation for lidar segmentation via enhanced pseudo-labeling techniques
KR20230042430A (ko) 자율 주행 차량에 대한 안전이 중요한 시나리오의 식별을 위한 학습
KR20230028703A (ko) 대상체 시퀀스를 사용한 대상체 이동성 파라미터들의 결정
KR102631148B1 (ko) 센서 데이터를 사용하여 자동으로 교통 신호 검출
US11675362B1 (en) Methods and systems for agent prioritization
US20240127579A1 (en) Identifying new classes of objects in environments of vehicles
US20230152465A1 (en) UNSUPERVISED DOMAIN ADAPTATION FOR LiDAR SEGMENTATION VIA ENHANCED PSEUDO-LABELING TECHNIQUES
US20240078790A1 (en) Enriching later-in-time feature maps using earlier-in-time feature maps
US20230227032A1 (en) Vehicle Dynamics Classification for Collision and Loss of Control Detection
US20230237813A1 (en) Semantic annotation of sensor data with overlapping physical features
KR20230020934A (ko) 효율적인 차량 크기 추정을 위한 시스템 및 방법
WO2024086056A1 (en) Identifying new classes of objects in environments of vehicles
KR20230167694A (ko) Lidar 스캔들로부터 자동 차선 마킹 추출 및 분류
KR20230110145A (ko) 아이트래커 디바이스 및 라이다 포인트 클라이드 데이터를 사용하는 목표 결정
KR20230140517A (ko) 차량 루트 상의 대상체 횡단의 예측 및 제어
WO2024035575A1 (en) Discriminator network for detecting out of operational design domain scenarios
WO2024030384A1 (en) Object orientation determination from map and group parameters