KR20230112516A - 차량에 장착된 이미지 센서의 성능 검증 - Google Patents

차량에 장착된 이미지 센서의 성능 검증 Download PDF

Info

Publication number
KR20230112516A
KR20230112516A KR1020220038394A KR20220038394A KR20230112516A KR 20230112516 A KR20230112516 A KR 20230112516A KR 1020220038394 A KR1020220038394 A KR 1020220038394A KR 20220038394 A KR20220038394 A KR 20220038394A KR 20230112516 A KR20230112516 A KR 20230112516A
Authority
KR
South Korea
Prior art keywords
image sensor
collimator
data
sensor
vehicle
Prior art date
Application number
KR1020220038394A
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 KR20230112516A publication Critical patent/KR20230112516A/ko

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0234Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using optical markers or beacons
    • G05D1/0236Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using optical markers or beacons in combination with a laser
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N17/00Diagnosis, testing or measuring for television systems or their details
    • H04N17/002Diagnosis, testing or measuring for television systems or their details for television cameras
    • 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/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • B60W50/0205Diagnosing or detecting failures; Failure detection models
    • 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
    • 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/86Combinations of radar systems with non-radar systems, e.g. sonar, direction finder
    • G01S13/867Combination of radar systems with cameras
    • 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
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/30Collimators
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/62Optical apparatus specially adapted for adjusting optical elements during the assembly of optical systems
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0214Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with safety or protection criteria, e.g. avoiding hazardous areas
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0221Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0223Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving speed control of the vehicle
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0238Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
    • G05D1/024Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors in combination with a laser
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0242Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using non-visible light signals, e.g. IR or UV signals
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • G05D1/0251Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means extracting 3D information from a plurality of images taken from different locations, e.g. stereo vision
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0255Control of position or course in two dimensions specially adapted to land vehicles using acoustic signals, e.g. ultra-sonic singals
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0257Control of position or course in two dimensions specially adapted to land vehicles using a radar
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0276Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0276Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
    • G05D1/0278Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle using satellite positioning signals, e.g. GPS
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0276Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
    • G05D1/028Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle using a RF signal
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0287Control of position or course in two dimensions specially adapted to land vehicles involving a plurality of land vehicles, e.g. fleet or convoy travelling
    • G05D1/0291Fleet control
    • G05D1/0293Convoy travelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0004Industrial image inspection
    • G06T7/001Industrial image inspection using an image reference approach
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/80Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N17/00Diagnosis, testing or measuring for television systems or their details
    • H04N17/004Diagnosis, testing or measuring for television systems or their details for digital television systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/50Constructional details
    • H04N23/55Optical parts specially adapted for electronic image sensors; Mounting thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/57Mechanical or electrical details of cameras or camera modules specially adapted for being embedded in other devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R1/00Optical viewing arrangements; Real-time viewing arrangements for drivers or passengers using optical image capturing systems, e.g. cameras or video systems specially adapted for use in or on vehicles
    • B60R1/20Real-time viewing arrangements for drivers or passengers using optical image capturing systems, e.g. cameras or video systems specially adapted for use in or on vehicles
    • B60R1/22Real-time viewing arrangements for drivers or passengers using optical image capturing systems, e.g. cameras or video systems specially adapted for use in or on vehicles for viewing an area outside the vehicle, e.g. the exterior of 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
    • 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/403Image sensing, e.g. optical camera
    • 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/30244Camera pose
    • 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)
  • Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Optics & Photonics (AREA)
  • Electromagnetism (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Mechanical Engineering (AREA)
  • Transportation (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Acoustics & Sound (AREA)
  • Traffic Control Systems (AREA)

Abstract

차량에 장착된 이미지 센서의 성능을 검증하기 위한 방법이 제공되며, 이 방법은 콜리메이터와 차량에 장착된 이미지 센서의 정렬을 야기하는 단계, 콜리메이터와 이미지 센서의 정렬을 야기하는 것에 적어도 부분적으로 기초하여 이미지 센서와 연관된 센서 데이터를 수신하는 단계, 센서 데이터가 이미지 센서와 연관된 성능 사양을 충족시키지 않는다고 결정하는 단계, 센서 데이터가 이미지 센서와 연관된 성능 사양을 충족시키지 않는다고 결정하는 것에 적어도 부분적으로 기초하여 이미지 센서와 연관된 이미지 센서 경보를 결정하는 단계, 및 이미지 센서 경보를 라우팅하는 단계를 포함한다.

Description

차량에 장착된 이미지 센서의 성능 검증{PERFORMANCE VERIFICATION OF AN IMAGE SENSOR MOUNTED TO A VEHICLE}
자가 운전 차량(self-driving vehicle)은 전형적으로 그 주위의 구역을 인지하기 위해 센서 데이터를 사용한다. 자가 운전 차량에 의해 수신되는 센서 데이터가 정확하다는 것을 보장하기가 어렵고 복잡할 수 있다.
도 1은 자율 주행 시스템(autonomous system)의 하나 이상의 컴포넌트를 포함하는 차량이 구현될 수 있는 예시적인 환경이다.
도 2는 자율 주행 시스템을 포함하는 차량의 하나 이상의 시스템의 다이어그램이다.
도 3은 도 1 및 도 2의 하나 이상의 디바이스 및/또는 하나 이상의 시스템의 컴포넌트들의 다이어그램이다.
도 4는 자율 주행 시스템의 특정 컴포넌트들의 다이어그램이다.
도 5는 신호 프로세싱 시스템의 예를 예시하는 블록 다이어그램이다.
도 6은 복수의 콜리메이터들을 포함하는 예시적인 프레임을 도시하는 다이어그램이다.
도 7은 하나 이상의센서를 포함하는 차량 및 복수의 콜리메이터들을 포함하는 프레임이 구현될 수 있는 예시적인 환경이다.
도 8은 관심 영역 및 콜리메이팅된 광을 포함하는 예시적인 센서 데이터를 예시하는 예시적인 환경이다.
도 9는 콜리메이터와 이미지 센서의 정렬에 기초하여 이미지 센서 경보를 결정하기 위해 하나 이상의 프로세서에 의해 구현되는 루틴의 예를 예시하는 흐름 다이어그램이다.
이하의 설명에서는, 설명 목적으로 본 개시에 대한 완전한 이해를 제공하기 위해 다수의 특정 세부 사항들이 제시된다. 그렇지만, 본 개시에 의해 기술되는 실시예들이 이러한 특정 세부 사항들이 없더라도 실시될 수 있다는 것이 명백할 것이다. 일부 경우에, 본 개시의 양태들을 불필요하게 모호하게 하는 것을 피하기 위해 잘 알려진 구조들 및 디바이스들은 블록 다이어그램 형태로 예시되어 있다.
시스템들, 디바이스들, 모듈들, 명령어 블록들, 데이터 요소들 등을 나타내는 것들과 같은, 개략적인 요소들의 특정 배열들 또는 순서들이 설명의 편의를 위해 도면들에 예시되어 있다. 그렇지만, 본 기술 분야의 통상의 기술자라면 도면들에서의 개략적인 요소들의 특정 순서 또는 배열이, 그러한 것으로 명시적으로 기술되지 않는 한, 프로세스들의 특정 프로세싱 순서 또는 시퀀스, 또는 프로세스들의 분리가 필요하다는 것을 암시하는 것으로 의미되지 않는다는 것을 이해할 것이다. 게다가, 도면에 개략적인 요소를 포함시키는 것은, 그러한 것으로 명시적으로 기술되지 않는 한, 모든 실시예들에서 그러한 요소가 필요하다는 것 또는 일부 실시예들에서 그러한 요소에 의해 표현되는 특징들이 다른 요소들에 포함되지 않거나 다른 요소들과 결합되지 않을 수 있다는 것을 암시하는 것으로 의미되지 않는다.
게다가, 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) 용어들인 것으로 의도된다. 게다가, 문구 "~에 기초하여"는, 달리 명시적으로 언급되지 않는 한, "~에 적어도 부분적으로 기초하여"를 의미하는 것으로 의도된다.
그 예들이 첨부 도면들에 예시되어 있는 실시예들에 대해 이제 상세하게 언급될 것이다. 이하의 상세한 설명에서, 다양한 기술된 실시예들에 대한 완전한 이해를 제공하기 위해 수많은 특정 세부 사항들이 기재된다. 그렇지만, 다양한 기술된 실시예들이 이러한 특정 세부 사항들이 없더라도 실시될 수 있다는 것이 본 기술 분야의 통상의 기술자에게 명백할 것이다. 다른 경우에, 실시예들의 양태들을 불필요하게 모호하게 하지 않기 위해 잘 알려진 방법들, 절차들, 컴포넌트들, 회로들, 및 네트워크들은 상세하게 기술되지 않았다.
일반적 개관
일부 양태들 및/또는 실시예들에서, 본원에 기술된 시스템들, 방법들 및 컴퓨터 프로그램 제품들은 콜리메이터와 차량에 장착된 이미지 센서의 정렬을 야기하고, 이미지 센서와 연관된 센서 데이터를 수신하며, 센서 데이터가 성능 임계치를 충족시키지 않는다고 결정하고, 이미지 센서 경보를 결정하며, 이미지 센서 경보를 라우팅하는 신호 프로세싱 시스템을 포함하고/하거나 구현한다. 신호 프로세싱 시스템은 센서 데이터에 기초하여 이미지 센서를 테스트하기 위해 센서 데이터를 수신할 수 있다. 게다가, 신호 프로세싱 시스템은 차량으로부터 이미지 센서들을 탈거(dismount)하지 않으면서 차량과 연관된 이미지 센서들을 테스트할 수 있다. 신호 프로세싱 시스템은 이미지 센서들을 복수의 콜리메이터들과 정렬시키고 이미지 센서들과 복수의 콜리메이터들의 정렬에 기초하여 이미지 센서들로부터 센서 데이터를 수신할 수 있다. 게다가, 신호 프로세싱 시스템은 성능 사양들(예를 들면, 성능 임계치들)과의 편차들을 식별하기 위해 센서 데이터를 사용할 수 있다. 비제한적인 예로서, 신호 프로세싱 시스템은 콜리메이터와 차량에 장착된 이미지 센서의 정렬을 야기하고, 이미지 센서와 연관된 센서 데이터를 수신하며, 센서 데이터가 성능 사양을 충족시키지 않는다고 결정하고, 이미지 센서 경보를 결정하며, 이미지 센서 경보를 라우팅한다.
본원에 기술된 시스템들, 방법들 및 컴퓨터 프로그램 제품들의 구현에 의해, 시스템은 차량으로부터 이미지 센서들을 탈거하지 않으면서 차량에 장착된 이미지 센서들의 성능을 검증할 수 있다. 예를 들어, 이 시스템은 차량의 이미지 센서들을 다양한 콜리메이터들(예를 들면, 콜리메이터들의 프레임)과 정렬시킬 수 있고, 이미지 센서들과 콜리메이터들의 정렬에 기초하여 센서 데이터를 수신할 수 있다. 게다가, 이 시스템은 이미지 센서들 각각에 대한 성능 사양들과의 편차들을 식별하기 위해 센서 데이터를 활용할 수 있다. 예를 들어, 이 시스템은 광학적 성능 및/또는 내부 교정(intrinsic calibration)이 성능 사양들로부터 벗어났는지 여부를 결정할 수 있다. 따라서, 이 시스템은 차량으로부터 이미지 센서들을 탈거(예를 들면, 제거)하지 않으면서 이미지 센서들의 성능을 더 효율적으로 검증할 수 있다. 게다가, 이 시스템은 (예를 들면, 차량으로부터 이미지 센서들을 탈거하는 것으로 인한) 차량에 상대적인 각각의 이미지 센서의 배치의 외부 재교정(extrinsic recalibration) 없이 이미지 센서들의 성능을 검증할 수 있다. 이미지 센서를 탈거하지 않으면서 이미지 센서의 성능을 검증하는 것은 검증 프로세스의 효율성을 증가시킬 수 있는데, 그 이유는 특정 이미지 센서들이 성능 사양들을 충족시키는 것으로 식별될 수 있고 차량으로부터 탈거하도록 지정되지 않을 수 있기 때문이다. 게다가, 추가적인 이미지 센서들이 성능 사양들을 충족시키지 않는 것을 식별하는 것에 기초하여, 추가적인 이미지 센서들이 재교정을 위해 탈거하도록 지정될 수 있다. 일부 경우에, 이 시스템은 이미지 센서들의 성능의 검증에 기초하여 이미지 센서들의 파라미터들을 업데이트할 수 있다. 그러한 효율적인 성능 검증은 이미지 센서들의 테스트 및 재교정의 품질 및 효율성을 개선시킬 수 있다.
이제 도 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)은 간선 도로(highway), 주간 간선 도로(interstate highway), 공원 도로, 도시 거리 등과 같은 적어도 하나의 명명된 주요 도로(thoroughfare)(본원에서 "도로"라고 지칭됨)를 포함한다. 추가적으로 또는 대안적으로, 일부 예들에서, 구역(108)은 진입로(driveway), 주차장의 섹션, 공터 및/또는 미개발 부지의 섹션, 비포장 경로 등과 같은 적어도 하나의 명명되지 않은 도로를 포함한다. 일부 실시예들에서, 도로는 적어도 하나의 차선(예를 들면, 차량들(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)은 자율 주행 시스템, 자율 주행 차량 컴퓨터(autonomous vehicle compute), 자율 주행 차량 컴퓨터에 의해 구현되는 소프트웨어 등을 포함한, 차량의 컴포넌트들의 일부 또는 전부의 설치에 관여된다. 일부 실시예들에서, 원격 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)은 본원에 기술되는 환경(100)과 연관된 데이터를 생성하기 위해 자율 주행 시스템(202)에 포함된 하나 이상의 디바이스를 사용한다. 자율 주행 시스템(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)는 하나 이상의 이미지와 연관된 교통 신호등 데이터를 생성한다. 일부 예들에서, 카메라(202a)는 한 포맷(예를 들면, RAW, JPEG, PNG 등)을 포함하는 하나 이상의 이미지와 연관된 TLD 데이터를 생성한다. 일부 실시예들에서, TLD 데이터를 생성하는 카메라(202a)는, 카메라(202a)가 가능한 한 많은 물리적 대상체들에 관한 이미지들을 생성하기 위해 넓은 시야(예를 들면, 광각 렌즈, 어안 렌즈, 대략 120도 이상의 시야각을 갖는 렌즈 등)를 갖는 하나 이상의 카메라를 포함할 수 있다는 점에서, 카메라들을 포함하는 본원에 기술된 다른 시스템들과 상이하다.
LiDAR(Laser Detection and Ranging) 센서들(202b)은 버스(예를 들면, 도 3의 버스(302)와 동일하거나 유사한 버스)를 통해 통신 디바이스(202e), 자율 주행 차량 컴퓨터(202f), 및/또는 안전 제어기(202g)와 통신하도록 구성된 적어도 하나의 디바이스를 포함한다. LiDAR 센서들(202b)은 광 방출기(예를 들면, 레이저 송신기)로부터 광을 송신하도록 구성된 시스템을 포함한다. LiDAR 센서들(202b)에 의해 방출되는 광은 가시 스펙트럼 밖에 있는 광(예를 들면, 적외선 광 등)을 포함한다. 일부 실시예들에서, 작동 동안, LiDAR 센서들(202b)에 의해 방출되는 광은 물리적 대상체(예를 들면, 차량)와 조우하고 LiDAR 센서들(202b)로 다시 반사된다. 일부 실시예들에서, LiDAR 센서들(202b)에 의해 방출되는 광은 광이 조우하는 물리적 대상체들을 투과하지 않는다. LiDAR 센서들(202b)은 광 방출기로부터 방출된 광이 물리적 대상체와 조우한 후에 그 광을 검출하는 적어도 하나의 광 검출기를 또한 포함한다. 일부 실시예들에서, LiDAR 센서들(202b)과 연관된 적어도 하나의 데이터 프로세싱 시스템은 LiDAR 센서들(202b)의 시야에 포함된 대상체들을 나타내는 이미지(예를 들면, 포인트 클라우드, 결합된 포인트 클라우드(combined point cloud) 등)를 생성한다. 일부 예들에서, LiDAR 센서(202b)와 연관된 적어도 하나의 데이터 프로세싱 시스템은 물리적 대상체의 경계들, 물리적 대상체의 표면들(예를 들면, 표면들의 토폴로지) 등을 나타내는 이미지를 생성한다. 그러한 예에서, 이미지는 LiDAR 센서들(202b)의 시야 내의 물리적 대상체들의 경계들을 결정하는 데 사용된다.
레이더(radar, Radio Detection and Ranging) 센서들(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)의 다른 컴포넌트 또는 다른 컴포넌트 세트에 의해 수행되는 것으로 기술되는 하나 이상의 기능을 수행할 수 있다.
이제 도 4를 참조하면, 자율 주행 차량 컴퓨터(400)(때때로 "AV 스택"이라고 지칭됨)의 예시적인 블록 다이어그램이 예시되어 있다. 예시된 바와 같이, 자율 주행 차량 컴퓨터(400)는 인지 시스템(402)(때때로 인지 모듈이라고 지칭됨), 계획 시스템(404)(때때로 계획 모듈이라고 지칭됨), 로컬화 시스템(406)(때때로 로컬화 모듈이라고 지칭됨), 제어 시스템(408)(때때로 제어 모듈이라고 지칭됨), 및 데이터베이스(410)를 포함한다. 일부 실시예들에서, 인지 시스템(402), 계획 시스템(404), 로컬화 시스템(406), 제어 시스템(408), 및 데이터베이스(410)는 차량의 자율 주행 운행 시스템(예를 들면, 차량(200)의 자율 주행 차량 컴퓨터(202f))에 포함되고/되거나 구현된다. 추가적으로 또는 대안적으로, 일부 실시예들에서, 인지 시스템(402), 계획 시스템(404), 로컬화 시스템(406), 제어 시스템(408), 및 데이터베이스(410)는 하나 이상의 독립형 시스템(예를 들면, 자율 주행 차량 컴퓨터(400) 등과 동일하거나 유사한 하나 이상의 시스템)에 포함된다. 일부 예들에서, 인지 시스템(402), 계획 시스템(404), 로컬화 시스템(406), 제어 시스템(408), 및 데이터베이스(410)는 본원에 기술된 바와 같이 차량 및/또는 적어도 하나의 원격 시스템에 위치하는 하나 이상의 독립형 시스템에 포함된다. 일부 실시예들에서, 자율 주행 차량 컴퓨터(400)에 포함된 시스템들 중 임의의 것 및/또는 모두는 소프트웨어(예를 들면, 메모리에 저장된 소프트웨어 명령어들), 컴퓨터 하드웨어(예를 들면, 마이크로프로세서들, 마이크로컨트롤러들, ASIC들(application-specific integrated circuits), FPGA들(Field Programmable Gate Arrays) 등), 또는 컴퓨터 소프트웨어와 컴퓨터 하드웨어의 조합들로 구현된다. 일부 실시예들에서, 자율 주행 차량 컴퓨터(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)에 저장된 해당 구역의 2차원(2D) 및/또는 3차원(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)은 파이프라인(예를 들면, 환경에 위치한 하나 이상의 대상체를 식별하기 위한 파이프라인 등)의 일부로서 적어도 하나의 머신 러닝 모델을 구현한다.
데이터베이스(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 시스템) 등에 포함될 수 있다.
차량의 이미지 센서들의 성능 검증
차량(예를 들면, 자율 주행 차량)이 구역을 통해 이동할 때, 차량은 해당 구역 내에서 다수의 상이한 대상체들과 조우할 수 있다. 대상체들을 식별하기 위해, 차량은 적어도 하나의 센서와 관련된 센서 데이터를 캡처할 수 있다. 센서들은 레이더 센서들, 라이다 센서들, 카메라들 등 중 임의의 것 또는 이들의 임의의 조합을 포함할 수 있다. 차량은 차량의 환경과 연관된 환경 데이터를 획득하기 위해 캡처된 센서 데이터를 프로세싱할 수 있다. 환경 데이터에 기초하여, 차량은 센서 데이터에 의해 캡처되는 환경 및 환경 내의 잠재적 장애물들을 어떻게 운행할지를 결정할 수 있다. 게다가, 차량은 그 결정에 기초하여 환경을 운행할 수 있다. 예를 들어, 차량은 환경 데이터에 기초한 운행을 보조하기 위한 내비게이션 시스템을 포함할 수 있다.
수신된 이미지 데이터의 정확도를 결정하기 위해 이미지 센서들 각각이 교정되도록 보장하는 것이 중요할 수 있다. 게다가, 이미지 센서들 각각이 차량 및/또는 차량의 하나 이상의 컴포넌트를 기준으로 외부적으로 교정될 수 있고 내부적으로 교정될 수 있다. 이미지 센서들의 외부 교정은 차량의 배치, 추가적인 이미지 센서들의 배치, 또는 차량의 임의의 다른 컴포넌트의 배치를 기준으로 이미지 센서들 각각의 배치를 교정하는 것을 포함할 수 있다. 이미지 센서들은 이미지 센서들의 외부 교정에 기초하여 차량에 장착될 수 있다. 이미지 센서들의 내부 교정은 센서 데이터를 생성하기 위해 이미지 센서에 의해 사용되는 이미지 센서의 하나 이상의 파라미터를 교정하는 것을 포함할 수 있다. 예를 들어, 이미지 센서의 파라미터들은 초점 거리, 이미지 센서 포맷, 주점(principal point) 또는 스큐(skew)를 포함할 수 있다. 이미지 센서들은 외부 교정 및 내부 교정에 기초하여 차량에 장착될 수 있다(예를 들면, 이미지 센서들은 차량에 장착될 때 초기 외부 교정 및 초기 내부 교정을 가질 수 있다). 차량은 수신된 센서 데이터에 기초하여 차량의 환경에 있는 대상체들을 식별하기 위해 각각의 이미지 센서의 초기 외부 교정 및 초기 내부 교정을 사용할 수 있다.
차량의 작동 동안, 이미지 센서들의 성능(예를 들면, 최적의 성능)이 저하될 수 있다. 예를 들어, 광학적 성능이 특정 성능 사양으로부터 저하될 수 있다. 게다가, 이미지 센서의 하나 이상의 파라미터를 추가로 교정하는 것이 바람직할 수 있다. 이미지 센서들의 성능의 저하는 승객들에 대한 차량의 안전성을 감소시킬 수 있는데, 그 이유는 시스템이 이미지의 대상체들 또는 특징물들(예를 들면, 이미지 센서에 상대적인 다른 차량의 위치)을 정확하게 식별하지 못할 수 있기 때문이다. 예를 들어, 이미지 센서의 성능이 저하될 수 있고, 이미지 센서에 의해 생성되는 이미지들이 점점 과다 노출되거나 과소 노출될 수 있어, 이에 의해 인지 시스템이 이미지들에서 대상체들을 검출하는 것을 어렵게 만들 수 있다. 이것은 또한 부적절한 사용자 경험으로 이어질 수 있는데, 그 이유는 인지 시스템이 이미지의 특정 대상체들 또는 특징물들을 식별하지 못할 수 있기 때문이다. 일부 경우에, 이미지 센서들을 차량으로부터 탈거하고 각각의 이미지 센서를 개별적으로 교정하는 것에 의해 이미지 센서들이 재교정될 수 있다. 그렇지만, 교정을 위한 이미지 센서들의 그러한 탈거는 비용이 많이 들고 시간이 많이 걸릴 수 있다. 게다가, 일부 경우에, 이미지 센서들의 탈거는 각각의 사용자에 대해 적절하지 않을 수 있다. 이것은 부적절한 사용자 경험으로 이어질 수 있는데, 그 이유는 시스템이 차량으로부터 각각 탈거되는 이미지 센서들을 재교정하는 것으로 제한될 수 있기 때문이다.
이러한 문제들을 해결하기 위해, 신호 프로세싱 시스템은 차량으로부터 이미지 센서들을 탈거하지 않으면서 이미지 센서들의 성능을 검증하기 위해 하나 이상의 콜리메이터(예를 들면, 프레임에 정렬된 콜리메이터들)를 사용할 수 있다. 하나 이상의 콜리메이터를 이미지 센서들과 정렬시키는 것에 의해, 신호 프로세싱 시스템은 이미지 센서들을 탈거하지 않으면서 이미지 센서들로부터 센서 데이터를 획득하고 이미지 센서들의 성능을 검증할 수 있다. 일부 경우에, 신호 프로세싱 시스템은 이미지 센서들의 광학적 성능 및/또는 내부 교정을 검증할 수 있다.
본원에 기술된 바와 같이, 신호 프로세싱 시스템은 하나 이상의 콜리메이터와 차량에 장착된 하나 이상의 이미지 센서의 정렬을 야기할 수 있다. 일부 경우에, 신호 프로세싱 시스템은 로봇(예를 들면, 로봇 암)으로 하여금 하나 이상의 콜리메이터를 하나 이상의 이미지 센서와 정렬시키게 할 수 있다. 예를 들어, 신호 프로세싱 시스템은 차량의 위치에 기초하여 콜리메이터들(예를 들면, 프레임에 정렬된 콜리메이터들)을 특정 위치로 이동시키도록 로봇에 지시할 수 있다. 일부 실시예들에서, 하나 이상의 콜리메이터와 하나 이상의 이미지 센서의 정렬은 차량의 제조사, 차량의 모델, 차량의 연식, 차량의 유형, 차량에 대한 임의의 수정들, 차량에 장착된 이미지 센서들의 수 및/또는 유형, 또는 차량과 연관된 임의의 다른 데이터에 기초하여 맞춤화될 수 있다. 예를 들어, 신호 프로세싱 시스템은 하나 이상의 콜리메이터를 픽업 트럭에 대한 특정 위치 및 세단에 대한 상이한 위치로 이동시키도록 로봇에 지시할 수 있다.
게다가, 신호 프로세싱 시스템은 하나 이상의 콜리메이터를 하나 이상의 이미지 센서와 정렬시키는 것에 기초하여 이미지 센서들과 연관된 센서 데이터를 획득할 수 있다. 센서 데이터는 차량 외부의 하나 이상의 이미지와 연관된 이미지 데이터(예를 들면, 라이다 센서와 연관된 라이다 데이터, 레이더 센서와 관련된 레이더 데이터, 카메라 이미지와 연관된 카메라 이미지 데이터)를 포함할 수 있지만 이에 제한되지 않는다.
획득된 센서 데이터에 기초하여, 신호 프로세싱 시스템은 센서 데이터가 성능 사양을 충족시키는지 여부를 결정할 수 있다. 일부 경우에, 신호 프로세싱 시스템은 하나 이상의 이미지 센서의 성능을 식별하기 위해 센서 데이터를 프로세싱할 수 있다. 예를 들어, 신호 프로세싱 시스템은 하나 이상의 이미지 센서의 광학적 성능 및/또는 이미지 센서에 대한 업데이트된 파라미터들을 식별하기 위해 센서 데이터를 프로세싱할 수 있다. 게다가, 신호 프로세싱 시스템은 하나 이상의 이미지 센서의 성능을 식별해 주는 값을 성능 사양(예를 들면, 성능 임계치)과 비교할 수 있다. 일부 경우에, 성능 사양은 이미지 센서에 대한 광학적 성능 사양 및/또는 원래 파라미터들을 포함할 수 있다.
게다가, 신호 프로세싱 시스템은 하나 이상의 이미지 센서의 성능을 성능 사양과 비교하는 것에 기초하여 이미지 센서 경보를 결정할 수 있다. 일부 경우에, 신호 프로세싱 시스템은 경보 매핑 데이터를 사용하여 이미지 센서 경보를 결정할 수 있다. 일부 실시예들에서, 하나 이상의 이미지 센서의 성능에 대한 상이한 값들이 경보 매핑 데이터를 사용하여 상이한 이미지 센서 경보들에 매핑될 수 있다. 예를 들어, 성능 사양과 50%만큼 차이가 나는 제1 성능 값과 성능 사양과 80%만큼 차이가 나는 제2 성능 값이 상이한 이미지 센서 경보들에 매핑될 수 있다. 그에 따라, 하나 이상의 센서의 성능 및 성능 사양에 기초하여, 신호 프로세싱 시스템은 이미지 센서 경보를 식별할 수 있다.
신호 프로세싱 시스템은 이미지 센서 경보의 유형에 기초하여 이미지 센서 경보를 라우팅할 수 있다. 일부 경우에, 신호 프로세싱 시스템은 이미지 센서 경보를 컴퓨팅 디바이스로 라우팅할 수 있고, 이미지 센서 경보는 특정 이미지 센서가 추가의 테스트 및/또는 재교정을 위해 차량으로부터 탈거되어야 한다는 것을 식별해 줄 수 있다. 게다가, 신호 프로세싱 시스템은 이미지 센서 경보를 컴퓨팅 디바이스로 라우팅할 수 있고, 이미지 센서 경보는 특정 이미지 센서의 파라미터들이 업데이트되어야 한다는 것을 식별해 줄 수 있다. 일부 실시예들에서, 이미지 센서 경보를 라우팅하는 것에 의해, 신호 프로세싱 시스템은 추가의 테스트를 위해 특정 이미지 센서를 라우팅할 수 있고/있거나 이미지 센서의 파라미터들을 업데이트할 수 있다.
도 5는 신호 프로세싱 환경(500)의 예를 예시하는 블록 다이어그램이다. 예시된 예에서, 신호 프로세싱 환경(500)은 센서(504), 컴퓨팅 디바이스(510), 및 컴퓨팅 디바이스(514)와 통신 가능하게 결합된 신호 프로세싱 시스템(502)을 포함한다. 일부 경우에, 신호 프로세싱 환경(500) 및/또는 신호 프로세싱 시스템(502)은, 적어도 도 4를 참조하여 본원에 기술된, 인지 시스템(402)의 적어도 일부를 형성할 수 있다. 신호 프로세싱 시스템(502)은 센서(504)와 연관된 센서 데이터(506)를 수신할 수 있고, 센서 데이터(506)와 연관된 성능 데이터를 식별하기 위해 센서 데이터(506)를 사용할 수 있다. 게다가, 신호 프로세싱 시스템(502)은 차량 경보와 연관된 경보 데이터를 결정할 수 있다. 일부 경우에, 신호 프로세싱 시스템(502)은 들어오는 센서 데이터(506)에 기초하여 어느 이미지 센서 경보들을 활성화시킬지를 결정하기 위해 경보 데이터에 대한 센서 데이터(및/또는 성능 데이터)의 매핑과 연관된 경보 매핑 데이터를 사용할 수 있다.
신호 프로세싱 시스템(502)(또는 다른 컴퓨팅 시스템)은 도 5에 도시되지 않은 하나 이상의 콜리메이터와 센서(504)의 정렬을 야기할 수 있다. 아래에서 논의될 것인 바와 같이, 신호 프로세싱 시스템(502)은 다수의 콜리메이터들과 다수의 이미지 센서들의 정렬을 야기할 수 있다. 일부 경우에, 신호 프로세싱 시스템(502)은 경사진 에지를 식별해 주는 센서 데이터(506)에 기초하여 하나 이상의 콜리메이터가 센서(504)와 정렬되는지 여부를 결정할 수 있다. 신호 프로세싱 시스템(502)은 하나 이상의 콜리메이터의 축을 센서(504)의 축과 정렬시키는 것에 의해 하나 이상의 콜리메이터와 센서(504)의 정렬을 야기할 수 있다.
하나 이상의 콜리메이터와 센서(504)의 정렬에 기초하여, 센서(504)는 센서 데이터(506)를 생성하고 센서 데이터(506)를 신호 프로세싱 시스템(502)으로 통신한다. 일부 경우에, 신호 프로세싱 시스템(502)은 하나 이상의 콜리메이터와 센서(504)의 정렬에 기초하여 센서(504)로 하여금 센서 데이터(506)를 생성하게 할 수 있다. 센서(504)는, 도 2를 참조하여 위에서 기술된 것과 유사한, 카메라(202a), LiDAR 센서(202b), 레이더 센서(202c) 등 중 임의의 것 또는 이들의 임의의 조합을 포함할 수 있다. 일부 실시예들에서, 센서(504)는 센서 데이터(506)를 신호 프로세싱 시스템(502)에 각각 제공할 수 있는 복수의 센서들(예를 들면, 복수의 상이한 센서들)을 포함할 수 있다. 유사하게, 센서 데이터(506)는, 카메라 이미지와 연관된 카메라 데이터, 레이더 이미지와 연관된 레이더 데이터, 및/또는 포인트 클라우드와 연관된 LiDAR 데이터 등과 같은, 상이한 유형들의 센서 데이터를 포함할 수 있다. 게다가, 센서 데이터(506)는 차량 외부의 환경과 연관된 센서 데이터를 포함할 수 있다. 센서(504)는 하나 이상의 센서 신호 프로세싱 설정(예를 들면, 화이트 밸런스, 이득, 색조, 노출, 색상 균형, 채도 등)에 기초하여 센서 데이터(506)를 생성할 수 있다. 예를 들어, 하나 이상의 센서 신호 프로세싱 설정은 센서 데이터를 검출하기 위한 시간 기간을 식별해 줄 수 있다. 센서 데이터(506)는 스트리밍 센서 데이터(streaming sensor data) 및/또는 배치 센서 데이터(batch sensor data)를 포함할 수 있다.
센서(504)는 내부 파라미터들 및 외부 파라미터들에 기초하여 센서 데이터(506)를 생성한다. 내부 파라미터들은 센서(504)와 연관된 스케일 인자, 초점 거리, 주점(예를 들면, 센서 중심), 스큐, 기하학적 왜곡 등 중 임의의 것 또는 이들의 임의의 조합을 포함할 수 있고, 외부 파라미터들은 센서(504)와 연관된 회전, 병진 등을 포함할 수 있다. 센서(504)는 3차원 월드 포인트들로부터의 센서 데이터를 2차원 이미지 평면에 매핑하기 위해 내부 파라미터들을 활용할 수 있다.
신호 프로세서(508)(또는 다른 컴퓨팅 시스템)는 센서 데이터(506)를 생성하기 위한 제1 내부 파라미터 세트를 식별하기 위해 센서(504)를 교정할 수 있다. 센서(504)는 일련의 이미지들에 기초하여 교정될 수 있다. 예를 들어, 센서(504)는 제1 내부 파라미터 세트를 식별하기 위해 2차원 센서 교정(예를 들면, 특정 2차원 패턴을 사용함), 3차원 센서 교정, 또는 자체 교정을 사용하여 교정될 수 있다. 센서(504)의 교정에 기초하여, 센서(504)는 제1 내부 파라미터 세트를 식별할 수 있고, 제1 내부 파라미터 세트에 기초하여 센서 데이터(506)를 생성할 수 있다.
예시된 예에서, 신호 프로세싱 시스템(502)은 센서 데이터(506)를 수신하는 신호 프로세서(508)를 포함하지만, 신호 프로세싱 시스템(502)이 더 적은, 더 많은, 또는 상이한 컴포넌트들을 포함할 수 있다는 것이 이해될 것이다. 신호 프로세서(508)는 성능 데이터를 생성하기 위해 센서 데이터(506)를 프로세싱할 수 있다. 일부 경우에, 신호 프로세서(508)는 센서 데이터(506) 및 센서(504)와 연관된 광학적 성능 데이터(예를 들면, 광학적 잠재 성능(optical performance potential)의 측정치)를 식별하기 위해 센서 데이터(506)를 프로세싱할 수 있다. 예를 들어, 신호 프로세서(508)는 변조 전달 함수(modulation transfer function, "MTF")를 식별하기 위해 센서 데이터(506)를 프로세싱할 수 있다. 광학적 성능 데이터는 센서(504)의 렌즈의 콘트라스트 및/또는 분해능을 식별해 줄 수 있다.
MTF를 식별하기 위해, 신호 프로세서(508)는 센서(504)로부터 콜리메이팅된 광 빔을 식별해 주는 센서 데이터(506)를 수신할 수 있다. 신호 프로세서(508)는 센서 데이터(506)로부터 라인 확산 함수(line spread function)를 식별하고 라인 확산 함수에 푸리에 변환을 적용하여 MTF를 획득할 수 있다.
일부 경우에, 신호 프로세서(508)는 제2 내부 파라미터 세트를 식별하기 위해 센서 데이터(506)를 프로세싱할 수 있다. 제2 내부 파라미터 세트는 센서(504)와 연관된 스케일 인자, 초점 거리, 주점(예를 들면, 센서 중심), 스큐, 기하학적 왜곡 등 중 임의의 것 또는 이들의 임의의 조합을 포함할 수 있다. 제2 내부 파라미터 세트는 제1 내부 파라미터 세트의 임의의 내부 파라미터에 대한 수정을 포함할 수 있다. 예를 들어, 제1 내부 파라미터 세트는 스케일 인자를 포함할 수 있고, 제2 내부 파라미터 세트는 수정된 스케일 인자를 포함할 수 있다. 신호 프로세서(508)는 센서 데이터(506)를 생성하기 위한 제2 내부 파라미터 세트를 식별하기 위해 센서(504)를 재교정하기 위해 센서 데이터(506)를 프로세싱할 수 있다. 예를 들어, 신호 프로세서(508)는 제2 내부 파라미터 세트를 식별하기 위해 센서 데이터(506)를 사용하여 센서(504)를 재교정할 수 있다. 그에 따라, 신호 프로세서(508)는 센서 데이터(506)를 사용하여 성능 데이터(예를 들면, 광학적 성능 데이터, 제2 내부 파라미터 세트 등)를 생성할 수 있다.
신호 프로세서(508)는 또한 센서(504)의 하나 이상의 성능 사양과 연관된 성능 사양 데이터(512)를 수신할 수 있다. 신호 프로세서(508)는 컴퓨팅 디바이스(510) 및/또는 데이터 저장소로부터 성능 사양 데이터(512)를 수신할 수 있다. 일부 경우에, 신호 프로세서(508)는 (예를 들면, 이미지 센서의 유형에 기초하여) 이미지 센서와 연관된 성능 사양 데이터(512)의 서브세트를 식별하기 위해 성능 사양 데이터(512)를 파싱할 수 있다. 성능 사양 데이터(512)는 이미지 센서와 연관된 미리 결정된 성능 사양들을 포함할 수 있다. 예를 들어, 성능 사양 데이터(512)는 이미지 센서에 대한 미리 결정된 광학적 성능 사양을 포함할 수 있다. 일부 경우에, 성능 사양 데이터(512)는 제1 내부 파라미터 세트를 포함할 수 있다. 게다가, 성능 사양 데이터(512)는 센서(504)의 하나 이상의 사양을 식별해 주는 복수의 값들(예를 들면, 임계치들, 범위들 등)을 포함할 수 있다.
게다가, 신호 프로세서(508)는 성능 데이터를 성능 사양 데이터(512)와 비교할 수 있다. 일부 경우에, 신호 프로세서(508)는 광학적 성능 데이터를 광학적 성능 사양과 비교할 수 있고/있거나 제1 내부 파라미터 세트를 제2 내부 파라미터 세트와 비교할 수 있다. 성능 데이터를 성능 사양 데이터(512)와 비교하는 것에 기초하여, 신호 프로세서(508)는 성능 데이터가 성능 사양 데이터(512)를 충족시키는지 여부를 결정할 수 있다. 예를 들어, 신호 프로세서(508)는 성능 데이터의 값들이 성능 사양 데이터(512)의 값들과 매칭하는지 여부를 결정할 수 있다. 일부 실시예들에서, 신호 프로세서(508)는 성능 데이터의 값들이 (예를 들면, 성능 사양 데이터(512)가 최솟값을 포함하는 경우) 성능 사양 데이터(512)의 값보다 크고/크거나 (예를 들면, 성능 사양 데이터가 최댓값을 포함하는 경우) 성능 사양 데이터(512)의 값보다 작은지 여부를 결정할 수 있다. 그에 따라, 신호 프로세서(508)는 성능 데이터가 성능 사양 데이터(512)를 충족시키는지(예를 들면, 성능 사양 데이터(512)의 값과 매칭하는지, 성능 사양 데이터(512)의 임계치 또는 범위를 충족시키는지 등) 여부를 결정할 수 있다.
성능 데이터를 성능 사양 데이터(512)와 비교하는 것에 기초하여, 신호 프로세서(508)는 성능 데이터와 성능 사양 데이터(512) 사이의 차이를 식별할 수 있다. 일부 경우에, 신호 프로세서(508)는 성능 데이터와 성능 사양 데이터(512) 사이의 차이의 양(예를 들면, 성능 데이터와 성능 사양 데이터(512)가 차이가 나는 정량화 가능한 양)을 식별할 수 있다.
신호 프로세서(508)는 경보 매핑 데이터를 더 획득할 수 있다. 예를 들어, 신호 프로세서(508)는 컴퓨팅 디바이스(예를 들면, 사용자 컴퓨팅 디바이스) 및/또는 데이터 저장소로부터 경보 매핑 데이터를 획득할 수 있다. 예를 들어, 사용자 컴퓨팅 디바이스는 경보 매핑 데이터를 생성하고 경보 매핑 데이터를 신호 프로세서(508)에 제공할 수 있다. 일부 실시예들에서, 경보 매핑 데이터는 사용자별 및/또는 이미지 센서별 경보 매핑 데이터일 수 있다. 경보 매핑 데이터는 복수의 매핑들을 포함할 수 있다. 경보 매핑 데이터는 제1 경보 매핑 데이터 및 제2 경보 매핑 데이터를 포함할 수 있다. 제1 경보 매핑 데이터의 각각의 매핑은 특정 이미지 센서 경보에 매핑되는 성능 데이터와 성능 사양 데이터(512) 사이의 차이를 식별해 줄 수 있다. 제2 경보 매핑 데이터의 각각의 매핑은 특정 경보 데이터에 매핑되는 특정 이미지 센서 경보를 식별해 줄 수 있다. 일부 경우에, 경보 매핑 데이터의 각각의 매핑은 특정 경보 데이터에 매핑되는 성능 데이터와 성능 사양 데이터(512) 사이의 차이를 식별해 줄 수 있다.
경보 매핑 데이터를 사용하여 경보 데이터를 식별하는 것에 기초하여, 신호 프로세서(508)는 사용자가 이미지 센서 경보를 통지받아야 한다고 결정할 수 있다. 일부 경우에, 신호 프로세서(508)는 컴퓨팅 디바이스(514)에 출력할 경보 데이터를 결정하기 위해 경보 데이터에 대한 성능 데이터와 성능 사양 데이터 간의 차이의 매핑과 연관된 경보 매핑 데이터를 사용할 수 있다. 그에 따라, 신호 프로세서(508)는 경보 데이터를 컴퓨팅 디바이스(514)에 제공할 수 있다.
경보 데이터는 센서(504)의 추가의 교정 및/또는 테스트를 수행하라는 사용자에 대한 권고(예를 들면, 지시)를 포함할 수 있다. 예를 들어, 경보 데이터는 센서(504)의 수동 교정을 수행하라는 사용자에 대한 권고를 포함할 수 있다. 게다가, 신호 프로세서(508)는 센서(504)가 추가적인 교정을 위해 라우팅되게 할 수 있다. 예를 들어, 신호 프로세서(508)는 로봇을 활성화시키기 위해 경보 데이터를 로봇으로 전송할 수 있다. 신호 프로세서(508)는 로봇으로 하여금 추가적인 교정을 위한 센서(504)를 이송시키게 하기 위해 로봇을 활성화시킬 수 있다. 일부 경우에, 경보 데이터는 센서(504)에 대해 수행될 추가의 교정의 유형을 식별해 줄 수 있다.
일부 경우에, 신호 프로세서(508)는 경보 데이터를 컴퓨팅 디바이스(514)로 전송하는 것에 기초하여 컴퓨팅 디바이스(514)로 하여금 센서(504)의 내부 파라미터들을 교체하게 할 수 있다. 게다가, 경보 데이터를 수신하는 것에 응답하여, 컴퓨팅 디바이스는 제1 내부 파라미터 세트를 제2 내부 파라미터 세트로 자동으로 교체할 수 있다.
콜리메이터들의 예시적인 프레임
도 6은 복수의 콜리메이터들을 포함하는 예시적인 프레임을 예시하는 다이어그램(600)이다. 예를 들어, 다이어그램(600)은 프레임(602)(예를 들면, 리그(rig), 지지체, 고정구 등)에 각각 부착되는 복수의 콜리메이터들을 포함한다. 복수의 콜리메이터들 각각은 프레임(602) 상의 특정 위치에 매핑될 수 있다. 게다가, 복수의 콜리메이터들 각각은 매핑에 기초하여 프레임(602)에 부착될 수 있다. 도 6의 예에서, 복수의 콜리메이터들은 프레임(602)에 각각 부착되는 제1 콜리메이터(604A), 제2 콜리메이터(604B), 제3 콜리메이터(604C), 제4 콜리메이터(604D), 제5 콜리메이터(604E), 및 제6 콜리메이터(604F)를 포함한다. 복수의 콜리메이터들이 더 많은, 더 적은, 또는 상이한 콜리메이터들을 포함할 수 있다는 것이 이해될 것이다.
복수의 콜리메이터들 각각은 광 빔을 수신하고 콜리메이팅된 광 빔을 생성할 수 있다. 예를 들어, 복수의 콜리메이터들 각각은 광원으로부터 광 빔을 수신하고 콜리메이팅된 광 빔을 생성할 수 있다. 일부 실시예들에서, 복수의 콜리메이터들 중 하나 이상은 광 빔을 생성하기 위해 연관된 광원을 포함할 수 있다. 게다가, 복수의 콜리메이터들 각각은 광 빔으로부터 콜리메이팅된 광 빔을 생성하기 위해 곡면 미러, 렌즈 등을 포함할 수 있다.
일부 경우에, 복수의 콜리메이터들 중 하나 이상이 레이저(예를 들면, 고체 레이저)와 회절 광학 요소 사이에 배열될 수 있다. 게다가, 레이저, 특정 콜리메이터, 및 회절 광학 요소의 광학 축들이 특정 광학 경로를 따라 상호 정렬될 수 있다. 레이저는 광 빔(예를 들면, 레이저 빔)을 특정 콜리메이터에 출력할 수 있다. 일부 실시예들에서, 레이저는 파이버 레이저일 수 있다. 예를 들어, 광섬유 케이블은 레이저의 증폭 매질(예를 들면, 능동 이득 매질)일 수 있다. 하나 이상의 레이저 다이오드는 광섬유 케이블로 하여금 레이저에 의해 출력될 수 있는 증폭된 광 빔을 생성하게 하기 위해 광섬유 케이블에 광을 제공할 수 있다. 게다가, 콜리메이터는 증폭된 광 빔을 수신하여 콜리메이팅된 광 빔을 생성하는 광섬유 콜리메이터일 수 있다. 일부 경우에, 레이저는 빔 확장 렌즈를 통해 광 빔을 출력할 수 있다. 빔 확장 렌즈는 광 빔을 확장시키고 확장된 광 빔을 특정 콜리메이터에 제공할 수 있다. 다른 경우에, 특정 콜리메이터는 빔 확장 콜리메이터일 수 있고, 확장된 광 빔을 제공하기 위해 레이저에 의해 출력되는 광 빔을 확장시킬 수 있다. 게다가, 특정 콜리메이터는 레이저에 의해 제공되는 광 빔(또는 빔 확장 렌즈에 의해 제공되는 확장된 광 빔)에 기초하여 콜리메이팅된 광 빔을 출력할 수 있다.
회절 광학 요소는 특정 콜리메이터로부터 콜리메이팅된 광 빔을 수신할 수 있다. 게다가, 회절 광학 요소는 콜리메이팅된 빔을 회절 광학 요소의 제1 표면의 다양한 애퍼처들을 통과시키는 것에 의해 콜리메이팅된 광 빔을 다수의 광 빔들로 분할할 수 있다. 회절 광학 요소는 다수의 광 빔들을 센서(예를 들면, 센서(504))의 렌즈에 제공하기 위해 회절 광학 요소의 제2 표면의 다양한 리지들을 통해 다수의 광 빔들을 출력할 수 있다. 위에서 논의된 바와 같이, 센서의 성능은 다수의 광 빔들을 사용하여 검증될 수 있다. 예를 들어, 다수의 광 빔들은 적어도 하나의 내부 파라미터(예를 들면, 센서와 연관된 스케일 인자, 초점 거리, 주점(예를 들면, 센서 중심), 스큐, 기하학적 왜곡 등) 또는 센서의 광학적 성능의 계산을 가능하게 할 수 있다.
회절 광학 요소는 다수의 광 빔들을 생성하도록 설계될 수 있다. 예를 들어, 회절 광학 요소의 격자 각도는 1차 광 빔이 분할될 광 빔들의 원하는 수에 기초하여 미리 결정될 수 있다. 게다가, 회절 광학 요소는 센서의 시야 및/또는 분해능에 기초하여 설계될 수 있다. 예를 들어, 30도의 시야 및 2도의 분해능을 갖는 센서의 경우, 회절 광학 요소는 30도의 시야 중 각각의 2도 분해능 간격을 커버하기 위해 1차 광 빔을 15 개의 광 빔으로 분할할 수 있다. 일부 경우에, 1차 광 빔의 크기 및/또는 1차 광 빔이 회절 광학 요소에 의해 분할되는 다수의 광 빔들의 크기는 회절 광학 요소의 단면적에 기초하여, 예컨대, 회절 광학 요소의 측면의 최대 양의 단면적을 활용하도록 애퍼처들을 크기 조정하는 것에 의해, 정의될 수 있다.
도 6의 예에서, 제1 콜리메이터(604A)는 제1 위치에서 프레임(602)에 부착되고, 제2 콜리메이터(604B)는 제2 위치에서 프레임(602)에 부착되며, 제3 콜리메이터(604C)는 제3 위치에서 프레임(602)에 부착되고, 제4 콜리메이터(604D)는 제4 위치에서 프레임(602)에 부착되고, 제5 콜리메이터(604E)는 제5 위치에서 프레임(602)에 부착되며, 제6 콜리메이터(604F)는 제6 위치에서 프레임(602)에 부착된다. 복수의 콜리메이터들 각각이 더 많은, 더 적은, 또는 상이한 위치들에서 프레임에 부착될 수 있다는 것이 이해될 것이다.
프레임(602)에 상대적인 복수의 콜리메이터들 각각의 배치는 특정 차량 유형(예를 들면, 차량의 특성들, 차량의 특징들 등) 및/또는 차량과 연관된 센서 세트의 특정 구성에 기초할 수 있다. 각각의 차량이 상이한 특성들(예를 들면, 높이, 폭 등) 및/또는 특징들(예를 들면, 수하물 랙, 상이한 센서들 등)을 가질 수 있고 차량의 센서들이 상이한 구성들(예를 들면, 다수의 센서들이 전방 방향으로 배치됨)을 가질 수 있기 때문에, 각각의 차량에 대한 프레임(602) 및/또는 프레임(602)에 상대적인 복수의 콜리메이터들의 배치가 상이할 수 있다. 그에 따라, 프레임(602) 및 복수의 콜리메이터들은 차량 유형 및/또는 이미지 센서들의 구성에 기초하여 특정 특성들을 공유하는 차량들의 서브세트에 대응할 수 있다. 게다가, 제1 구성으로 구성된 센서들을 갖는 제1 차량 및 제2 구성으로 구성된 센서들을 갖는 제2 차량은, 상이한 위치들에 부착된 상이한 콜리메이터들을 각각 갖는, 상이한 프레임들에 대응할 수 있고/있거나 이들을 활용할 수 있다.
게다가, 복수의 콜리메이터들 각각은 복수의 센서들의 수 및/또는 차량에 상대적인 복수의 센서들의 배치에 기초하여 프레임(602)에 상대적으로 배치될 수 있다. 예를 들어, 차량이 성능 검증을 위한 6 개의 센서를 포함할 수 있다. 게다가, 제1 콜리메이터(604A)는 제1 센서의 위치에 상대적인 제1 위치에서 프레임(602)에 부착될 수 있고, 제2 콜리메이터(604B)는 제2 센서의 위치에 상대적인 제2 위치에서 프레임(602)에 부착될 수 있으며, 제3 콜리메이터(604C)는 제3 센서의 위치에 상대적인 제3 위치에서 프레임(602)에 부착될 수 있고, 제4 콜리메이터(604D)는 제4 센서의 위치에 상대적인 제4 위치에서 프레임(602)에 부착될 수 있으며, 제5 콜리메이터(604E)는 제5 센서의 위치에 상대적인 제5 위치에서 프레임(602)에 부착될 수 있고, 제6 콜리메이터(604F)는 제6 센서의 위치에 상대적인 제6 위치에서 프레임(602)에 부착될 수 있다.
게다가, 시스템은 차량 유형 및/또는 차량과 연관된 센서 세트의 특정 구성을 분석하고 복수의 콜리메이터들 각각에 대한 배치 데이터를 결정할 수 있다. 예를 들어, 이 시스템은 특정 차량 유형 및/또는 차량과 연관된 센서 세트의 특정 구성과 연관된 배치 데이터를 결정할 수 있다. 게다가, 이 시스템은 배치 데이터와 연관된 프레임(602)을 식별할 수 있다.
일부 경우에, 시스템은 차량 유형 및/또는 차량과 연관된 센서 세트의 특정 구성에 기초하여 복수의 콜리메이터들 각각의 배치를 매핑할 수 있다. 예를 들어, 이 시스템은 차량 유형, 차량과 연관된 센서 세트의 구성 등을 식별해 주는 차량과 연관된 데이터를 수신할 수 있다. 수신된 데이터에 기초하여, 이 시스템은 프레임(602)에 상대적인 복수의 콜리메이터들 각각에 대한 위치를 식별해 주는 배치 데이터를 생성할 수 있다. 일부 경우에, 이 시스템은 배치 데이터를 프레임(602)의 설계와 연관된 별도의 시스템에 제공할 수 있다. 배치 데이터에 기초하여, 복수의 콜리메이터들 각각이 프레임(602)에 부착될 수 있다. 예를 들어, 이 시스템은 로봇으로 하여금 배치 데이터에 기초하여 복수의 콜리메이터들 각각을 프레임(602)에 부착하게 하고/하거나 배치 데이터에 기초하여 콜리메이터들의 위치 및 배향을 자동으로 조정하게 할 수 있다.
일부 경우에, 배치 데이터는 특정 사용자 그룹, 특정 사용자 등에 대해 맞춤화될 수 있다. 예를 들어, 이 시스템은 사용자와 연관된 데이터(예를 들면, 사용자 위치, 사용자 그룹화, 사용자 프로필)를 식별하고 사용자와 연관된 배치 데이터를 식별할 수 있다. 일부 실시예들에서, 사용자는, 사용자 컴퓨팅 디바이스를 통해, 복수의 콜리메이터들을 프레임(602)에 부착하기 위한 배치 데이터를 정의할 수 있다.
일부 경우에, 복수의 콜리메이터들이 프레임(602)에 부착되지 않을 수 있다. 게다가, 복수의 콜리메이터들 각각이 차량의 센서와 상호작용하도록 개별적으로 배치될 수 있다. 배치 데이터는 차량, 차량의 특정 센서, 또는 임의의 다른 기준점들에 상대적인 복수의 콜리메이터들 각각의 위치를 정의할 수 있다. 신호 프로세싱 시스템은 차량에 장착된 다수의 이미지 센서들을 동시에 교정하기 위해 배치 데이터를 사용할 수 있다.
콜리메이터들의 프레임을 조정하기 위한 로봇
도 7은 하나 이상의 콜리메이터(716)의 프레임(708)을 사용하여 성능이 검증될 수 있는 하나 이상의 센서(704)를 포함하는 차량(702) 외부의 예시적인 환경(700)을 예시한다. 차량(702)은 차량의 환경에 있는 대상체들을 식별하기 위해 센서 데이터를 생성하기 위한 하나 이상의 센서(704)를 포함할 수 있다. 게다가, 신호 프로세싱 시스템은 프레임(708) 상의 하나 이상의 콜리메이터(716)를 사용하여 하나 이상의 센서(704)의 성능을 검증할 수 있다. 예를 들어, 하나 이상의 콜리메이터(716)는 콜리메이팅된 광 빔들을 생성할 수 있고, 하나 이상의 센서(704)는 콜리메이팅된 광 빔들에 기초하여 센서 데이터를 생성할 수 있다. 게다가, 신호 프로세싱 시스템은 센서 데이터를 수신하고 하나 이상의 센서(704)의 성능을 검증할 수 있다.
도 7의 예시된 예에서, 환경(700)은 차량의 외부의 일 부분을 포함한다. 예시된 예에서, 차량(702)은 차량(702)의 지붕에 하나 이상의 이미지 센서를 위한 인클로저를 포함한다. 그렇지만, 차량(702)이 다양한 방식들로 구성될 수 있다는 것이 이해될 것이다. 예를 들어, 차량(702)은 이미지 센서들을 위한 다수의 인클로저들을 포함할 수 있고/있거나 차량에 상대적인 상이한 위치들에 위치한 이미지 센서들을 포함할 수 있다(예를 들면, 차량(702)은 차량 측면에 있는 센서들의 제1 인클로저 및 차량의 지붕에 있는 센서들의 제2 인클로저를 포함할 수 있다). 하나 이상의 센서를 위한 인클로저(들)는 차량(702)과 분리될 수 있거나(예를 들면, 차량에 대한 부착물일 수 있거나) 차량(702)에 통합될 수 있다(예를 들면, 인클로저가 차량의 도어 패널, 림 등일 수 있고 센서는 차량(702) 내에 내장될 수 있다).
예시된 환경(700)은 콜리메이터들(716)이 부착된 프레임(708)을 더 포함한다. 프레임(708)이 프레임(708)에 상대적인 상이한 위치들에 부착된 하나 이상의 콜리메이터(716)를 포함할 수 있다는 것이 이해될 것이다. 프레임(708)은 추가적인 프레임(710)을 포함할 수 있다(예를 들면, 그에 부착되거나 고착되거나 할 수 있다). 일부 실시예들에서, 프레임(708) 및 추가적인 프레임(710)은 단일 프레임에 대응할 수 있다.
예시된 환경(700)은 로봇(712)을 포함한다. 예를 들어, 로봇(712)은 임의의 다축 로봇(예를 들면, Fanuc M-710iC/50 로봇)일 수 있다. 로봇(712)은 로봇 암(714)을 포함할 수 있다. 예를 들어, 로봇(712)은 n 자유도를 갖는 유연한 로봇 암(714)을 포함할 수 있으며, 여기서 n은 임의의 수일 수 있다(예를 들면, 유연한 로봇 암(714)은 12 자유도를 가질 수 있다). 로봇 암(714)은 예시된 환경(700) 내에서 조종 가능할 수 있다. 임의의 유형의 로봇(712)이 사용될 수 있다는 것이 이해될 것이다. 예를 들어, 로봇(712)은 더 많은, 더 적은, 또는 상이한 컴포넌트들을 포함할 수 있다(예를 들면, 로봇(712)은 다수의 로봇 암들을 포함할 수 있다).
신호 프로세싱 시스템은 예시된 환경(700) 내에서의 차량(702)의 존재를 식별할 수 있다. 예를 들어, 신호 프로세싱 시스템은 환경 내에서의 차량(702)의 존재를 식별해 주는 하나 이상의 센서(예를 들면, 압력 센서, 모션 센서 등)로부터의 차량 데이터를 수신할 수 있다. 게다가, 신호 프로세싱 시스템은 차량(702)의 유형 및/또는 차량(702)과 연관된 센서들(704)의 구성을 식별할 수 있다. 예를 들어, 신호 프로세싱 시스템은 차량 데이터에 기초하여 차량(702)의 유형 및/또는 센서들(704)의 구성을 식별할 수 있다. 일부 실시예들에서, 신호 프로세싱 시스템은 차량(702)의 존재, 차량(702)의 유형, 및/또는 센서들(704)의 구성을 식별해 주는 (예를 들면, 사용자 컴퓨팅 디바이스로부터의) 입력을 수신할 수 있다.
차량(702)의 존재, 차량(702)의 유형, 및/또는 센서들(704)의 구성을 식별하는 것에 기초하여, 신호 프로세싱 시스템은 차량 및/또는 차량과 연관된 하나 이상의 센서와 연관된 특정 배치 데이터를 식별할 수 있다. 배치 데이터는 프레임(708)에 상대적인 하나 이상의 콜리메이터(716) 각각의 특정 위치를 식별해 줄 수 있다. 신호 프로세싱 시스템은 차량(702)의 하나 이상의 센서(704) 각각의 광학 축과 프레임(708)의 하나 이상의 콜리메이터(716) 중 대응하는 콜리메이터의 광학 축의 정렬을 야기하기 위해 배치 데이터를 추가로 식별할 수 있다.
게다가, 신호 프로세싱 시스템은, 배치 데이터에 응답하여, 하나 이상의 콜리메이터(716) 각각이 배치 데이터에 기초하여 프레임(708)에 부착되게 할 수 있다. 일부 경우에, 배치 데이터는 하나 이상의 콜리메이터(716)의 특정 프레임(708)(예를 들면, 사전 조립된 콜리메이터들의 프레임)을 식별해 줄 수 있다. 배치 데이터에 기초하여, 신호 프로세싱 시스템은 하나 이상의 콜리메이터(716)의 프레임(708)을 식별할 수 있다. 게다가, 신호 프로세싱 시스템은 지시들을 로봇(712)에 제공할 수 있다. 지시들은 로봇(712)으로 하여금 (예를 들면, 로봇 암(714)을 사용하여) 프레임(708)을 획득하게 할 수 있다.
프레임(708)을 획득하기 위해, 로봇(712)은 추가적인 프레임(710)을 식별하고 추가적인 프레임(710)을 활용하여 프레임(708)을 획득할 수 있다. 예를 들어, 추가적인 프레임(710)은 로봇(712)의 로봇 암(714)이 추가적인 프레임(710)과 상호작용하여 프레임(708)을 획득할 수 있게 하는 플랫폼을 포함할 수 있다. 일부 실시예들에서, 로봇(712)은 추가적인 프레임(710)을 획득하지 않으면서 프레임(708)을 직접적으로 획득할 수 있다. 예를 들어, 로봇 암(714)은 프레임(708)과 직접적으로 상호작용하는 것에 의해 프레임(708)을 획득하고 이동시킬 수 있다. 다른 실시예들에서, 프레임(708)과 추가적인 프레임(710)이 부착될 수 있고, 로봇(712)은 프레임(708) 및 추가적인 프레임(710)을 동시에 획득할 수 있다.
게다가, 차량(702)의 존재, 차량(702)의 유형, 및/또는 센서들(704)의 구성을 식별하는 것에 기초하여, 신호 프로세싱 시스템은 차량(702)과 연관된 정렬 데이터를 식별하고 프레임(708)을 차량(702)과 어떻게 정렬시킬지를 식별할 수 있다. 정렬 데이터는 하나 이상의 콜리메이터(716)의 배치 데이터 및/또는 하나 이상의 센서(704)의 배치 데이터에 기초할 수 있다. 정렬 데이터는 프레임(708)을 차량(702)과 정렬시키기 위한 차량(702)에 상대적인 프레임(708)의 위치를 식별해 줄 수 있다. 도 7에 보이는 바와 같이, 차량(702)은 기준 위치(706)를 포함한다. 정렬 데이터는 기준 위치(706)에 상대적인 위치를 식별해 줄 수 있다. 게다가, 신호 프로세싱 시스템은 기준 위치(706)를 식별할 수 있고, 기준 위치(706)에 상대적인 프레임(708)의 위치를 식별하기 위해 정렬 데이터를 사용할 수 있다. 프레임(708)의 위치를 식별하는 것에 기초하여, 신호 프로세싱 시스템은 추가의 지시들을 로봇(712)에 제공할 수 있다. 추가의 지시들은 로봇(712)으로 하여금 (예를 들면, 로봇 암(714)을 사용하여) 프레임(708)을 특정 위치로 이동시키게 할 수 있다. 그에 따라, 로봇(712)은 프레임을 특정 위치로 이동시키는 것에 기초하여 하나 이상의 센서(704)와 하나 이상의 콜리메이터(716)의 정렬을 야기할 수 있다.
일부 경우에, 로봇(712)이 프레임(708)을 배치하지 않을 수 있다. 그 대신에, 프레임(708)이 특정 차량에 대한 특정 위치에 사전 배치될 수 있다. 예를 들어, 차량은 차량(702)의 하나 이상의 센서(704)의 성능을 검증하기 위해 프레임(708)의 하나 이상의 콜리메이터(716)와 상호작용하도록 사전 배치된 프레임(708)에 따라 운전될 수 있다.
일부 경우에, 차량(702)은 하나 이상의 고정구(718)를 포함할 수 있다. 로봇(712)은 프레임(708)을 하나 이상의 고정구(718)에 부착하는 것에 의해 하나 이상의 센서(704)와 하나 이상의 콜리메이터(716)의 정렬을 야기할 수 있다.
하나 이상의 센서(704)를 하나 이상의 콜리메이터(716)와 정렬시키는 것에 기초하여, 신호 프로세싱 시스템은 하나 이상의 센서(704)로부터 센서 데이터를 수신할 수 있다. 위에서 논의된 바와 같이, 신호 프로세싱 시스템은 하나 이상의 센서(704) 각각의 성능을 검증하기 위해 센서 데이터를 사용할 수 있다.
하나 이상의 콜리메이터(716)의 작동 동안, 프레임(708)에 상대적인 하나 이상의 콜리메이터(716)의 배치가 열화될 수 있다. 예를 들어, 하나 이상의 콜리메이터(716)의 배치가 크리프(creep), 진동, 팽창, 수축 등으로 인해 열화될 수 있다. 하나 이상의 콜리메이터(716)의 배치가 원래의 배치 데이터에 비해 열화되었는지 여부를 식별하기 위해, 신호 프로세싱 시스템은 하나 이상의 센서(704)로부터 센서 데이터를 수신할 수 있다. 게다가, 신호 프로세싱 시스템은 센서 데이터를 획득하고 하나 이상의 센서(704) 각각에 대한 MTF를 식별할 수 있다. MTF는 경사진 에지를 식별해 줄 수 있다. 예를 들어, 경사진 에지는 센서 데이터의 제1 부분과 센서 데이터의 제2 부분 사이의 콘트라스트 차이를 식별해 줄 수 있다.
게다가, 하나 이상의 센서(704)의 각각의 센서는 특정 관심 영역과 연관될 수 있다. 관심 영역은 센서의 연속적인 픽셀 세트를 포함할 수 있으며 임의의 형상일 수 있다. 특정 센서의 관심 영역은 특정 센서의 배치(예를 들면, 배향, 위치 등)에 기초할 수 있다. 하나 이상의 센서(704) 각각은 하나 이상의 관심 영역을 가질 수 있다. 예를 들어, 특정 센서(704)는 센서의 중앙에 관심 영역을 가질 수 있다. 센서(704)는 관심 영역 식별 특정 센서 데이터(예를 들면, 캡처된 센서 데이터의 중앙)에 기초하여 해당 관심 영역을 관심 영역으로서 지정할 수 있다. 다른 예로서, 관심 영역은 센서의 코너 부분, 측면 부분(좌측 또는 우측), 상부/하부 부분 등을 포함할 수 있다.
도 8을 참조하면, 도 8은 관심 영역 및 콜리메이팅된 광을 포함하는 예시적인 센서 데이터를 예시하는 예시적인 환경(800)을 예시한다. 예시된 예에서, 신호 프로세싱 시스템(502)은 하나 이상의 센서로부터 제1 센서 데이터(802) 및 제2 센서 데이터(804)를 수신한다. 신호 프로세싱 시스템(502)은 수신된 센서 데이터에서 특정 관심 영역을 식별하기 위해 관심 영역 파인더(region of interest finder)를 구현할 수 있다. 예시된 예에서, 신호 프로세싱 시스템(502)은 제1 센서 데이터(802) 내의 제1 관심 영역(803A) 및 제2 센서 데이터(804) 내의 제2 관심 영역(803B)을 식별한다. 신호 프로세싱 시스템(502)은 수신된 센서 데이터 내에서 콜리메이팅된 광을 식별할 수 있다. 예시된 예에서, 신호 프로세싱 시스템(602)은 제1 센서 데이터(802) 내의 제1 콜리메이팅된 광(805A) 및 제2 센서 데이터(804) 내의 제2 콜리메이팅된 광(805B)을 식별한다. 신호 프로세싱 시스템(602)은 제1 콜리메이팅된 광(805A)과 제1 관심 영역(803A)을 비교하고 제2 콜리메이팅된 광(805B)과 제2 관심 영역(803B)을 비교하여 각각의 관심 영역이 콜리메이팅된 광의 일 부분(예를 들면, 콜리메이팅된 광의 에지)를 포함하는지 여부를 결정한다. 예시된 예에서, 신호 프로세싱 시스템(602)은 제1 관심 영역(803A)이 제1 콜리메이팅된 광(805A)의 에지를 포함하고 제2 관심 영역(803B)이 제2 콜리메이팅된 광(805B)의 에지를 포함하지 않는다고 결정할 수 있다.
도 7로 돌아가서, 하나 이상의 센서(704) 각각의 관심 영역에 기초하여, 신호 프로세싱 시스템은 MTF에 의해 식별되는 경사진 에지가 관심 영역에 위치하는지 여부를 결정할 수 있다. 예를 들어, 신호 프로세싱 시스템은 경사진 에지가 관심 영역의 특정 범위 내에 있는지 여부를 검증할 수 있다. 신호 프로세싱 시스템이 특정 센서에 대한 관심 영역에서 경사진 에지를 식별하는 경우, 신호 프로세싱 시스템은 센서 및 대응하는 콜리메이터가 올바르게 정렬되어 있다고 결정할 수 있다. 신호 프로세싱 시스템이 특정 센서에 대한 관심 영역에서 경사진 에지를 식별하지 않는 경우, 신호 프로세싱 시스템은 센서 및 대응하는 콜리메이터가 올바르게 정렬되어 있지 않다고 결정할 수 있다. 따라서, 신호 프로세싱 시스템은 하나 이상의 콜리메이터(716)의 제1 서브세트와 정확하게 정렬된 하나 이상의 센서(704)의 제1 서브세트 및 하나 이상의 콜리메이터(716)의 제2 서브세트와 정확하게 정렬되지 않은 하나 이상의 센서(704)의 제2 서브세트를 결정할 수 있다.
하나 이상의 콜리메이터(716)의 제1 서브세트와 정확하게 정렬된 하나 이상의 센서(704)의 제1 서브세트를 결정하는 것에 기초하여, 신호 프로세싱 시스템은 프레임(708)의 정렬을 사용하여 하나 이상의 센서(704)의 제1 서브세트의 각각의 센서의 성능을 검증할 수 있다. 신호 프로세싱 시스템은 하나 이상의 센서(704) 중 임의의 수의 센서를 하나 이상의 콜리메이터(716) 중 임의의 수의 콜리메이터와, 동시에, 정렬시키고 하나 이상의 센서(704) 각각의 성능을, 동시에 또는 동시적으로, 검증할 수 있다. 예를 들어, 신호 프로세싱 시스템은 다수의 센서들을 동시에 교정할 수 있다. 일부 경우에, 신호 프로세싱 시스템은 첫 번째로 다수의 센서들의 제1 세트를 동시에 교정하고 두 번째로 다수의 센서들의 제2 세트를 동시에 교정할 수 있다.
일부 경우에, 신호 프로세싱 시스템은 하나 이상의 콜리메이터(716)의 제2 서브세트와 정확하게 정렬되지 않은 하나 이상의 센서(704)의 제2 서브세트의 성능을 검증하기 위해 프레임(708)의 정렬을 사용하지 않을 수 있다. 하나 이상의 센서(704)의 제1 서브세트의 각각의 센서의 성능을 검증한 후에, 신호 프로세싱 시스템은 로봇(712)으로 하여금 하나 이상의 센서(704)의 제2 서브세트의 각각의 센서에 대한 관심 영역들 내의 경사진 에지들을 정렬시키도록 프레임(708)을 재정렬시키게 하는 지시들을 로봇(712)에 제공할 수 있다. 프레임(708)을 재정렬시키는 것에 기초하여, 신호 프로세싱 시스템은 센서 데이터를 수신하고, MTF에 의해 식별되는 경사진 에지가 하나 이상의 센서(704)의 제2 서브세트의 임의의 센서에 대한 관심 영역에 위치하는지 여부를 결정할 수 있다.
신호 프로세싱 시스템이 하나 이상의 센서(704)의 제2 서브세트의 임의의 센서에 대한 관심 영역에 경사진 에지가 위치한다고 결정하는 경우, 신호 프로세싱 시스템은 특정 센서(들)의 성능을 검증할 수 있다. 게다가, 신호 프로세싱 시스템이 하나 이상의 센서(704) 각각의 성능을 검증할 수 있도록 신호 프로세싱 시스템은 프레임(708)을 재정렬시킬 수 있다. 신호 프로세싱 시스템이 하나 이상의 센서(704) 각각의 성능을 검증하기 위해 프레임(708)을 임의의 횟수만큼 재정렬시킬 수 있다는 것이 이해될 것이다.
하나 이상의 센서(704) 중 특정 센서에 대해 프레임(708)을 재정렬시키는 것에 기초하여, 신호 프로세싱 시스템은 프레임(708)의 정렬의 변화(shift)를 식별할 수 있다. 프레임(708)의 정렬의 변화를 식별하는 것에 기초하여, 신호 프로세싱 시스템은 프레임(708)의 정렬을 보정하기 위해 프레임(708)의 조정을 야기할 수 있다. 게다가, 신호 프로세싱 시스템은 프레임(708)의 정렬의 변화를 식별하는 것에 기초하여 업데이트된 지시들을 로봇(712)에 제공하는 것에 의해 로봇(712)을 조정할 수 있다. 일부 경우에, 프레임(708)의 정렬의 변화를 식별하는 것에 기초하여, 신호 프로세싱 시스템은 프레임(708)에 부착된 하나 이상의 콜리메이터(716) 중 특정 콜리메이터의 재배치를 야기할 수 있다.
일부 경우에, 신호 프로세싱 시스템은 정렬의 변화를 데이터 저장소에 저장하고/하거나 추가의 분석을 위해 정렬의 변화를 컴퓨팅 디바이스(예를 들면, 사용자 컴퓨팅 디바이스)로 라우팅할 수 있다. 게다가, 신호 프로세싱 시스템은 정렬의 변화를 차량(702) 및/또는 특정 센서에 링크시킬 수 있다. 일부 경우에, 신호 프로세싱 시스템은 정렬의 변화를 차량(702)의 유형, 하나 이상의 센서(704)의 구성 등에 링크시킬 수 있다. 정렬의 변화를 차량(702) 및/또는 특정 센서에 링크시키는 것에 기초하여, 신호 프로세싱 시스템은 차량(702)의 하나 이상의 센서(704)의 성능을 검증하기 위해 및/또는 하나 이상의 추가적인 차량과 연관된 하나 이상의 추가적인 센서의 성능을 검증하기 위해 정렬의 변화를 활용할 수 있다.
신호 프로세서의 예시적인 흐름 다이어그램
도 9는 하나 이상의 프로세서(예를 들면, 신호 프로세싱 시스템(502)의 하나 이상의 프로세서)에 의해 구현되는 루틴(900)의 예를 예시하는 흐름 다이어그램이다. 도 9에 예시된 흐름 다이어그램은 예시 목적으로만 제공된다. 도 9에 예시된 루틴의 단계들 중 하나 이상이 제거될 수 있다는 것 또는 단계들의 순서가 변경될 수 있다는 것이 이해될 것이다. 게다가, 명확한 예를 예시하기 위해, 하나 이상의 특정 시스템 컴포넌트가 데이터 흐름 스테이지들 각각 동안 다양한 동작들을 수행하는 맥락에서 기술된다. 그렇지만, 시스템 컴포넌트들에 걸친 프로세싱 단계들의 다른 시스템 배열들 및 분포들이 사용될 수 있다.
블록(902)에서, 신호 프로세싱 시스템(502)은 콜리메이터와 차량에 장착된 이미지 센서의 정렬을 야기한다. 이미지 센서는 초점 거리 및/또는 시야에 기초하여 차량에 장착될 수 있다. 일부 경우에, 신호 프로세싱 시스템(502)은 다수의 콜리메이터들과 차량에 장착된 다수의 이미지 센서들의 정렬을 야기할 수 있다. 예를 들어, 신호 프로세싱 시스템(502)은 제1 콜리메이터와 차량에 장착된 제1 이미지 센서의 정렬 및 제2 콜리메이터와 차량에 장착된 제2 이미지 센서의 정렬을 야기할 수 있다. 일부 실시예들에서, 콜리메이터는 광 빔(예를 들면, 고체 레이저로부터의 레이저 빔)을 콜리메이팅하는 광섬유 콜리메이터일 수 있다.
일부 경우에, 콜리메이터는 프레임(예를 들면, 콜리메이터들의 프레임)에 부착(예를 들면, 결합)될 수 있다. 게다가, 신호 프로세싱 시스템(502)은, 콜리메이터와 이미지 센서의 정렬을 야기하기 위해, 프레임과 차량의 정렬을 야기할 수 있다.
콜리메이터와 이미지 센서의 정렬을 야기하기 위해, 신호 프로세싱 시스템은 지시들을 로봇으로 전송할 수 있다. 지시들에 기초하여, 로봇은 프레임을 차량과 정렬시키는 것에 의해 콜리메이터와 이미지 센서의 정렬을 야기할 수 있다. 일부 경우에, 로봇은 차량과 연관된 기준 위치에 기초하여 프레임을 차량과 정렬시킬 수 있다.
게다가, 콜리메이터와 이미지 센서의 정렬에 기초하여, 신호 프로세싱 시스템(502)은 조명 디바이스와 연관된 광의 디스플레이를 야기할 수 있다. 콜리메이터는 광(예를 들면, 광 빔)을 캡처할 수 있다. 게다가, 콜리메이터는 광을 캡처하는 것에 기초하여 콜리메이팅된 광(예를 들면, 콜리메이팅된 광 빔)을 생성할 수 있다.
일부 경우에, 신호 프로세싱 시스템(502)은 콜리메이터의 콜리메이터 구성을 식별할 수 있다. 콜리메이터 구성은 콜리메이터와 연관된 임의의 파라미터들 또는 설정들을 포함할 수 있다. 예를 들어, 콜리메이터 구성은 콜리메이터의 위치(예를 들면, 차량에 상대적인 콜리메이터의 위치, 프레임에 상대적인 콜리메이터이 위치 등), 콜리메이터의 배향, 콜리메이터의 전력 사용량, 콜리메이터의 주파수, 콜리메이터의 길이, 또는 콜리메이터의 유형을 포함할 수 있지만, 이에 제한되지 않는다. 콜리메이터 구성은 이미지 센서의 이미지 센서 유형, 이미지 센서의 이미지 센서 배향, 이미지 센서의 이미지 센서 구성, 및/또는 차량의 차량 유형에 기초할 수 있다. 예를 들어, 신호 프로세싱 시스템(502)은 이미지 센서의 이미지 센서 유형, 이미지 센서의 이미지 센서 배향, 이미지 센서의 이미지 센서 구성, 및/또는 차량의 차량 유형과 연관된 특정 콜리메이터 구성을 식별할 수 있다. 예를 들어, 신호 프로세싱 시스템(502)은 특정 이미지 센서 유형에 대한 50 밀리미터 콜리메이터 및 상이한 이미지 센서 유형에 대한 100 밀리미터 콜리메이터를 식별할 수 있다. 신호 프로세싱 시스템(502)은 콜리메이터 구성에 기초하여 콜리메이터와 이미지 센서의 정렬을 야기할 수 있다. 예를 들어, 신호 프로세싱 시스템(502)은 50 밀리미터 콜리메이터를 이미지 센서로부터 특정 거리(예를 들면, 2 피트)에 정렬시키고 100 밀리미터 콜리메이터를 이미지 센서로부터 추가의 거리(예를 들면, 3 피트)에 정렬시킬 수 있다. 일부 경우에, 신호 프로세싱 시스템(502)은 이미지 센서와 연관된 센서 데이터를 수신하고 센서 데이터에 기초하여 콜리메이터의 콜리메이터 구성을 검증할 수 있다.
일부 경우에, 신호 프로세싱 시스템(502)은 복수의 콜리메이터 구성들 및 복수의 이미지 센서 구성들을 식별할 수 있다. 게다가, 신호 프로세싱 시스템(502)은 특정 이미지 센서 구성을 특정 콜리메이터 구성에 링크시키는 복수의 매핑들을 생성할 수 있다. 복수의 매핑들은 콜리메이터의 콜리메이터 구성에 대한 이미지 센서의 이미지 센서 구성의 매핑을 포함할 수 있다. 게다가, 신호 프로세싱 시스템(502)은 이미지 센서 구성 및 콜리메이터 구성에 기초하여 콜리메이터와 이미지 센서의 정렬을 야기할 수 있다.
블록(904)에서, 신호 프로세싱 시스템(502)은 콜리메이터와 이미지 센서의 정렬을 야기하는 것에 적어도 부분적으로 기초하여 적어도 하나의 이미지 센서와 연관된 센서 데이터를 수신한다. 예를 들어, 신호 프로세싱 시스템(502)은 콜리메이터가 이미지 센서와 정렬되어 있다고 결정할 수 있다. 신호 프로세싱 시스템(502)은 콜리메이터가 콜리메이팅된 광을 이미지 센서에 제공하도록 콜리메이터 및 이미지 센서를 활성화시킬 수 있다. 콜리메이팅된 광을 수신하는 것에 기초하여, 이미지 센서는 센서 데이터를 생성하고 센서 데이터를 신호 프로세싱 시스템(502)에 제공할 수 있다. 센서 데이터는 추가로 차량과 연관되고 차량의 외부 환경을 감지하는 이미지 센서들로부터의 이미지 데이터에 대응할 수 있다. 예를 들어, 본원에 기술된 바와 같이, 센서 데이터는 카메라와 연관된 카메라 데이터, 라이다 디바이스와 연관된 라이다 데이터, 및/또는 레이더 디바이스와 연관된 레이더 데이터를 포함할 수 있다. 일부 그러한 경우에, 신호 프로세싱 시스템(502)은 카메라 이미지 센서, 라이다 센서, 레이더 센서 등으로부터 센서 데이터를 수신할 수 있다. 일부 경우에, 신호 프로세싱 시스템(502)은 콜리메이터로부터의 콜리메이팅된 광에 기초한 센서 데이터를 수신할 수 있다. 신호 프로세싱 시스템(502)은 이미지 센서의 성능과 연관된 성능 데이터(예를 들면, 광학적 성능 데이터)를 생성하기 위해 센서 데이터를 프로세싱할 수 있다. 예를 들어, 신호 프로세싱 시스템(502)은 이미지 센서의 성능을 식별해 주는 성능 데이터를 생성할 수 있다. 일부 경우에, 성능 데이터는 변조 전달 함수 데이터, 광학 전달 함수 데이터, 위상 전달 함수 데이터 등을 포함할 수 있다.
일부 경우에, 성능 데이터는 이미지 센서의 교정과 연관된 교정 데이터(예를 들면, 제1 내부 파라미터 세트)를 포함할 수 있다. 예를 들어, 교정 데이터는 이미지 센서와 연관된 스케일 인자, 초점 거리, 주점(예를 들면, 센서 중심), 스큐, 기하학적 왜곡 등과 같은 내부 파라미터들을 포함할 수 있다. 이미지 센서는 내부 파라미터들에 기초하여 센서 데이터를 생성할 수 있다. 신호 프로세싱 시스템(502)은 이미지 센서와 연관된 교정 데이터를 생성하기 위해 수신된 센서 데이터를 사용하여 이미지 센서를 교정할 수 있다. 예를 들어, 신호 프로세싱 시스템(502)은 라이다 이미지 센서의 주점을 교정하기 위해 캡처된 라이다 데이터를 사용할 수 있다. 라이다 이미지 센서는 라이다 이미지 센서의 교정된 주점에 기초하여 추가적인 라이다 데이터를 캡처할 수 있다.
일부 경우에, 신호 프로세싱 시스템(502)은 센서 데이터에 기초하여 콜리메이터와 이미지 센서의 정렬을 검증할 수 있다. 특정 경우에, 정렬을 검증하기 위해, 신호 프로세싱 시스템(502)은 센서 데이터에 기초하여 이미지 센서에 대한 제1 관심 영역(예를 들면, 이미지 센서의 중심)을 결정할 수 있다. 예를 들어, 신호 프로세싱 시스템(502)은 콜리메이팅된 광을 수신할 것으로 예상되는 이미지 센서의 일 부분(예를 들면, 관심 영역)을 식별할 수 있다. 일부 경우에, 신호 프로세싱 시스템(502)은 제1 관심 영역이 경사진 에지(예를 들면, 마이터 에지(miter edge))를 포함하지 않는다고 결정할 수 있다. 제1 관심 영역이 경사진 에지를 포함하지 않는다고 결정하는 것에 기초하여, 신호 프로세싱 시스템(502)은 콜리메이터, 프레임, 로봇 등의 조정을 야기할 수 있다. 예를 들어, 신호 프로세싱 시스템(502)이 관심 영역에서 경사진 에지를 검출하지 않는 경우, 신호 프로세싱 시스템(502)은 콜리메이터의 위치 또는 배향을 조정하기 위해 로봇으로 하여금 프레임, 로봇 또는 콜리메이터를 이동시키게 할 수 있다.
콜리메이터, 프레임 및/또는 로봇의 조정 이후에, 신호 프로세싱 시스템(502)은 이미지 센서와 연관된 업데이트된 센서 데이터를 수신할 수 있다. 신호 프로세싱 시스템(502)은 추가로 업데이트된 센서 데이터에 기초하여 이미지 센서에 대한 제2 관심 영역을 결정할 수 있다. 예를 들어, 신호 프로세싱 시스템(502)은 업데이트된 센서 데이터를 수신하고 업데이트된 센서 데이터에 기초하여 이미지 센서에 대한 업데이트된 관심 영역(예를 들면, 이미지 센서의 중심)을 식별할 수 있다. 신호 프로세싱 시스템(502)은 제2 관심 영역이 경사진 에지를 포함한다고 결정하는 것에 기초하여 콜리메이터와 이미지 센서의 정렬을 검증할 수 있다. 예를 들어, 신호 프로세싱 시스템(502)은 콜리메이팅된 광을 수신할 것으로 예상되는 이미지 센서의 일 부분(예를 들면, 관심 영역)을 식별하고 콜리메이팅된 광의 경사진 에지가 관심 영역에 있다는 것을 확인할 수 있다.
블록(906)에서, 신호 프로세싱 시스템(502)은 센서 데이터가 성능 사양(예를 들면, 성능 임계치)을 충족시키지 않는다고 결정한다. 성능 사양은 이미지 센서와 연관되어 있을 수 있다. 예를 들어, 성능 사양은 이미지 센서의 상이한 파라미터들에 대한 예상된 값들을 나타낼 수 있다. 일부 경우에, 신호 프로세싱 시스템(502)은 성능 사양이 이미지 센서와 연관되어 있다는 것을 식별해 주는 성능 사양을 컴퓨팅 디바이스로부터 수신할 수 있다. 예를 들어, 사용자는, 사용자 컴퓨팅 디바이스를 통해, 이미지 센서와 연관된 성능 사양을 나타낼 수 있다. 성능 사양이 이미지 센서와 연관되어 있다고 결정하는 것에 기초하여, 신호 프로세싱 시스템(502)은 센서 데이터가 성능 사양을 충족시키지 않는다고 결정할 수 있다. 예를 들어, 신호 프로세싱 시스템(502)은 성능 사양을 식별하고 센서 데이터를 성능 사양과 비교하며 센서 데이터가 성능 사양에 의해 제공되는 값들보다 더 작은, 더 큰, 또는 그 범위를 벗어난 값들을 포함한다고 결정할 수 있다.
일부 경우에, 센서 데이터를 성능 사양과 비교하기 위해, 신호 프로세싱 시스템(502)은 센서 데이터에 기초한 광학적 성능 데이터를 광학적 성능 데이터 사양(예를 들면, 광학적 성능 데이터 사양, 변조 전달 함수 데이터 사양, 등)과 비교할 수 있다. 예를 들어, 신호 프로세싱 시스템(502)은 광학적 성능 데이터가 광학적 성능 데이터 사양을 충족시키는지(예를 들면, 그와 매칭하는지, 그 미만인지, 그 초과인지, 그의 특정 범위 내에 있는지 등) 여부를 검증할 수 있다. 광학적 성능 데이터와 광학적 성능 데이터 사양의 비교에 기초하여, 신호 프로세싱 시스템(502)은 센서 데이터가 성능 사양을 충족시키지 않는다고 결정할 수 있다.
일부 경우에, 신호 프로세싱 시스템(502)은 센서 데이터에 기초한 교정 데이터(예를 들면, 스케일 인자, 초점 거리, 주점(예를 들면, 센서 중심), 스큐, 기하학적 왜곡 등과 같은 이미지 센서와 연관된 내부 파라미터들)를 교정 데이터 사양(예를 들면, 제2 내부 파라미터 세트)과 비교할 수 있다. 예를 들어, 신호 프로세싱 시스템(502)은 교정 데이터를 교정 데이터 사양과 비교하는 것에 의해 교정 데이터가 교정 데이터 사양을 충족시키는지(예를 들면, 그와 매칭하는지, 그 미만인지, 그 초과인지, 그의 특정 범위 내에 있는지 등) 여부를 검증할 수 있다. 특정 경우에, 교정 데이터와 교정 데이터 임계치를 비교하기 위해, 신호 프로세싱 시스템(502)은 광선 각도(ray angle) 비교 및/또는 재투사 오차(reprojection error) 비교를 수행할 수 있다. 교정 데이터와 교정 데이터 사양의 비교에 기초하여, 신호 프로세싱 시스템(502)은 센서 데이터가 성능 사양을 충족시키지 않는다고 결정할 수 있다.
블록(908)에서, 신호 프로세싱 시스템(502)은 센서 데이터가 성능 사양을 충족시키지 않는다고 결정하는 것에 적어도 부분적으로 기초하여 이미지 센서와 연관된 이미지 센서 경보를 결정한다. 예를 들어, 신호 프로세싱 시스템(502)은 센서 데이터가 성능 임계치를 충족시키지 않는다고 결정하는 것에 기초하여(예를 들면, 성능 데이터와 성능 사양을 비교하는 것에 기초하여) 이미지 센서 경보를 생성할 수 있다. 일부 경우에, 이미지 센서 경보는 이미지 센서의 광학적 성능의 척도(measure) 및/또는 이미지 센서의 내부 교정(intrinsic calibration)의 척도를 식별해 줄 수 있다. 예를 들어, 이미지 센서 경보는 이미지 센서의 광학적 성능 및/또는 내부 교정과 성능 사양 간의 차이를 식별해 줄 수 있다.
일부 경우에, 신호 프로세싱 시스템(502)은 이미지 센서 경보에 기초하여 이미지 센서의 내부 파라미터들을 업데이트할 수 있다. 예를 들어, 신호 프로세싱 시스템(502)은 제3 내부 파라미터 세트(예를 들면, 제1 내부 파라미터 세트, 제2 내부 파라미터 세트, 별도의 내부 파라미터 세트)를 식별할 수 있다. 일부 경우에, 신호 프로세싱 시스템(502)은 업데이트된 내부 파라미터들을 이미지 센서에 대한 권장된 내부 파라미터들로서 (예를 들면, 사용자에게) 제공할 수 있다. 예를 들어, 신호 프로세싱 시스템(502)은 업데이트된 내부 파라미터들을 사용자 컴퓨팅 디바이스 상에 디스플레이하는 것을 야기할 수 있고, 업데이트된 내부 파라미터들이 이미지 센서에 대해 권장된다는 것을 나타낼 수 있다.
블록(910)에서, 신호 프로세싱 시스템(502)은 이미지 센서 경보를 라우팅한다. 게다가, 신호 프로세싱 시스템(502)은 이미지 센서 경보를 데이터 저장소 및/또는 컴퓨팅 디바이스(예를 들면, 사용자 컴퓨팅 디바이스)로 라우팅할 수 있다. 일부 경우에, 신호 프로세싱 시스템(502)은 이미지 센서 경보에 기초하여 추가적인 테스트를 위해 이미지 센서를 라우팅할 수 있다. 예를 들어, 신호 프로세싱 시스템(502)은 이미지 센서 경보를 로봇 디바이스로 라우팅할 수 있다. 게다가, 이미지 센서 경보는 로봇 디바이스로 하여금 이미지 센서를 획득하게 하고 추가적인 테스트를 위해 이미지 센서를 이송시키게 할 수 있다.
일부 경우에, 이미지 센서 경보를 라우팅하는 것에 기초하여, 신호 프로세싱 시스템(502)(또는 별도의 컴퓨팅 시스템)은 제3 내부 파라미터 세트에 기초하여 이미지 센서를 업데이트할 수 있다. 게다가, 이미지 센서는 제3 내부 파라미터 세트에 기초하여 추가적인 센서 데이터를 생성할 수 있다.
일부 경우에, 신호 프로세싱 시스템(502)은 콜리메이터가 제1 위치로부터 제2 위치로 이동했다고 결정할 수 있다. 콜리메이터가 이동했다고 결정하는 것에 기초하여, 신호 프로세싱 시스템(502)은 보정 인자를 식별할 수 있다. 게다가, 신호 프로세싱 시스템(502)은 콜리메이터와 이미지 센서의 정렬을 야기하는 로봇에 보정 인자를 적용할 수 있다. 로봇에 보정 인자를 적용하는 것에 기초하여, 로봇은 콜리메이터와 이미지 센서의 정렬을 조정할 수 있다. 일부 실시예들에서, 로봇에 보정 인자를 적용하는 것에 기초하여, 로봇은 보정 인자에 기초하여 제2 차량과 연관된 제2 이미지 센서와 제2 콜리메이터의 정렬을 야기할 수 있다.
루틴(900)이 상이한 이미지 센서들 및/또는 상이한 센서 데이터를 사용하여 여러 번 반복될 수 있다는 것이 이해될 것이다. 일부 경우에, 신호 프로세싱 시스템(502)은 다수의 이미지 센서들로부터 수신되는 다수의 센서 데이터 세트들에 대해 루틴(900)을 반복적으로 반복할 수 있다. 특정 경우에, 신호 프로세싱 시스템(502)은 차량의 다수의 이미지 센서들을 동시에 교정하기 위해 루틴(900)을 사용한다. 일부 경우에, 신호 프로세싱 시스템(502)은 차량의 이미지 센서들의 제1 세트를 동시에 교정하고, 하나 이상의 콜리메이터의 위치 및/또는 배향을 조정하며, 차량의 하나 이상의 이미지 센서의 제2 세트를 동시에 교정하기 위해 루틴(900)을 사용한다. 특정 경우에, 신호 프로세싱 시스템(502)은 차량의 이미지 센서들의 일부 또는 전부가 교정되거나 추가의 수정을 위해 식별될 때까지(예를 들면, 관련 이미지 센서 경보가 생성되고 라우팅될 때까지) 이 프로세스를 반복할 수 있다.
전술한 설명에서, 본 개시의 양태들 및 실시예들은 구현마다 달라질 수 있는 다수의 특정 세부 사항들을 참조하여 기술되었다. 그에 따라, 설명 및 도면들은 제한적인 의미가 아니라 예시적인 의미로 간주되어야 한다. 본 발명의 범위의 유일한 독점적인 지표, 및 출원인들이 본 발명의 범위이도록 의도한 것은, 본 출원에서 특정 형태로 나오는 일련의 청구항들의 문언적 등가 범위이며, 임의의 후속 교정을 포함한다. 그러한 청구항들에 포함된 용어들에 대한 본원에서 명시적으로 기재된 임의의 정의들은 청구항들에서 사용되는 그러한 용어들의 의미를 결정한다. 추가적으로, 전술한 설명 및 이하의 청구항들에서 "더 포함하는"이라는 용어가 사용될 때, 이 문구에 뒤따르는 것은 추가적인 단계 또는 엔티티, 또는 이전에 언급된 단계 또는 엔티티의 서브단계/서브엔티티일 수 있다.

Claims (20)

  1. 방법에 있어서,
    콜리메이터와, 차량에 장착된 이미지 센서의 정렬을 야기하는 단계;
    적어도 하나의 프로세서를 사용하여, 상기 콜리메이터와 상기 이미지 센서의 상기 정렬을 야기하는 것에 적어도 부분적으로 기초하여 상기 이미지 센서와 연관된 센서 데이터를 수신하는 단계;
    상기 센서 데이터가 상기 이미지 센서와 연관된 성능 임계치(performance threshold)를 충족시키지 않는다고 결정하는 단계;
    상기 센서 데이터가 상기 이미지 센서와 연관된 상기 성능 임계치를 충족시키지 않는다고 결정하는 것에 적어도 부분적으로 기초하여 상기 이미지 센서와 연관된 이미지 센서 경보를 결정하는 단계; 및
    상기 이미지 센서 경보를 라우팅하는 단계
    를 포함하는, 방법.
  2. 제1항에 있어서, 상기 센서 데이터가 상기 성능 임계치를 충족시키지 않는다고 결정하는 단계는:
    상기 센서 데이터에 적어도 부분적으로 기초하여 상기 이미지 센서와 연관된 제1 변조 전달 함수 데이터를 결정하는 단계;
    상기 제1 변조 전달 함수 데이터를 변조 전달 함수 데이터 임계치와 비교하는 단계; 및
    상기 제1 변조 전달 함수 데이터를 상기 변조 전달 함수 데이터 임계치와 비교하는 것에 적어도 부분적으로 기초하여 상기 센서 데이터가 상기 성능 임계치를 충족시키지 않는다고 결정하는 단계를 포함하며, 상기 이미지 센서는 상기 이미지 센서 경보에 적어도 부분적으로 기초하여 추가적인 테스트를 위해 라우팅되는 것인, 방법.
  3. 제1항 또는 제2항에 있어서, 상기 이미지 센서 경보는 상기 이미지 센서의 광학적 성능의 척도(measure) 또는 상기 이미지 센서의 내부 교정(intrinsic calibration)의 척도 중 적어도 하나를 포함하는 것인, 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서, 상기 성능 임계치는 교정 데이터 임계치를 포함하고, 상기 이미지 센서 경보를 결정하는 단계는:
    상기 이미지 센서와 연관된 교정 데이터를 생성하기 위해 상기 센서 데이터에 적어도 부분적으로 기초하여 상기 이미지 센서를 교정하는 단계;
    상기 교정 데이터를 상기 교정 데이터 임계치와 비교하는 단계; 및
    상기 교정 데이터를 상기 교정 데이터 임계치와 비교하는 것에 적어도 부분적으로 기초하여 상기 이미지 센서 경보를 생성하는 단계를 포함하는 것인, 방법.
  5. 제4항에 있어서, 상기 교정 데이터를 상기 교정 데이터 임계치와 비교하는 단계는 광선 각도 비교 또는 재투사 오차 비교 중 적어도 하나를 포함하는 것인, 방법.
  6. 제4항 또는 제5항에 있어서, 상기 교정 데이터는 상기 이미지 센서와 연관된 제1 내부 파라미터 세트를 포함하고, 상기 센서 데이터는 상기 제1 내부 파라미터 세트에 적어도 부분적으로 기초하며, 상기 교정 데이터 임계치는 제2 내부 파라미터 세트를 포함하고, 상기 방법은, 상기 이미지 센서 경보에 적어도 부분적으로 기초하여 제3 내부 파라미터 세트를 식별하는 단계를 더 포함하며, 상기 제3 내부 파라미터 세트는 상기 제1 내부 파라미터 세트 또는 상기 제2 내부 파라미터 세트를 포함하는 것인, 방법.
  7. 제6항에 있어서, 상기 센서 데이터는 제1 센서 데이터이고, 상기 방법은:
    상기 제3 내부 파라미터 세트에 적어도 부분적으로 기초하여 상기 이미지 센서를 업데이트하는 단계; 및
    적어도 하나의 프로세서를 사용하여, 상기 제3 내부 파라미터 세트에 적어도 부분적으로 기초하여 상기 이미지 센서와 연관된 제2 센서 데이터를 수신하는 단계
    를 더 포함하는 것인, 방법.
  8. 제1항 내지 제7항 중 어느 한 항에 있어서, 상기 이미지 센서는 제1 이미지 센서이고, 상기 콜리메이터는 제1 콜리메이터이며, 상기 방법은 제2 콜리메이터와 상기 차량에 장착된 제2 이미지 센서의 정렬을 야기하는 단계를 더 포함하며, 상기 제1 콜리메이터와 상기 제2 콜리메이터는 프레임에 장착되는 것인, 방법.
  9. 제1항 내지 제8항 중 어느 한 항에 있어서,
    조명 디바이스와 연관된 광을 디스플레이하는 것을 야기하는 단계;
    상기 콜리메이터에 의해, 상기 광을 캡처하는 단계; 및
    상기 광을 캡처하는 것에 적어도 부분적으로 기초하여 콜리메이팅된 광을 생성하는 단계
    를 더 포함하며, 상기 센서 데이터를 수신하는 단계는 상기 콜리메이팅된 광에 적어도 부분적으로 기초하는 것인, 방법.
  10. 제1항 내지 제9항 중 어느 한 항에 있어서, 로봇은 상기 차량과 연관된 기준 위치에 적어도 부분적으로 기초하여 프레임을 상기 차량과 정렬시키는 것에 의해 상기 콜리메이터와 상기 이미지 센서의 상기 정렬을 야기하고, 상기 콜리메이터는 상기 프레임에 결합되는 것인, 방법.
  11. 제1항 내지 제10항 중 어느 한 항에 있어서, 상기 이미지 센서는 초점 거리 또는 시야에 적어도 부분적으로 기초하여 상기 차량에 장착되는 것인, 방법.
  12. 제1항 내지 제11항 중 어느 한 항에 있어서, 상기 콜리메이터와 상기 이미지 센서의 정렬을 야기하는 단계는:
    상기 센서 데이터에 적어도 부분적으로 기초하여 상기 이미지 센서에 대한 제1 관심 영역을 결정하는 단계;
    상기 제1 관심 영역이 마이터 에지(miter edge)를 포함하지 않는다고 결정하는 단계;
    상기 제1 관심 영역이 상기 마이터 에지를 포함하지 않는다고 결정하는 것에 적어도 부분적으로 기초하여 상기 콜리메이터의 조정을 야기하는 단계;
    적어도 하나의 프로세서를 사용하여, 상기 콜리메이터의 상기 조정을 야기하는 것에 적어도 부분적으로 기초하여 상기 이미지 센서와 연관된 업데이트된 센서 데이터를 수신하는 단계;
    상기 업데이트된 센서 데이터에 적어도 부분적으로 기초하여 상기 이미지 센서에 대한 제2 관심 영역을 결정하는 단계; 및
    상기 제2 관심 영역이 상기 마이터 에지를 포함한다고 결정하는 단계를 포함하는 것인, 방법.
  13. 제1항 내지 제12항 중 어느 한 항에 있어서, 로봇이 상기 콜리메이터와 상기 이미지 센서의 정렬을 야기하고, 상기 방법은:
    상기 콜리메이터가 제1 위치로부터 제2 위치로 이동(shift)했다고 결정하는 단계;
    상기 콜리메이터가 제1 위치로부터 제2 위치로 이동했다고 결정하는 것에 적어도 부분적으로 기초하여 보정 인자를 식별하는 단계; 및
    상기 보정 인자를 상기 로봇에 적용하는 단계
    를 더 포함하며, 상기 보정 인자는 상기 로봇으로 하여금 상기 콜리메이터와 상기 이미지 센서의 상기 정렬을 조정하게 하는 것인, 방법.
  14. 제13항에 있어서, 상기 차량은 제1 차량이고, 상기 이미지 센서는 제1 이미지 센서이며, 상기 콜리메이터는 제1 콜리메이터이고, 상기 방법은 상기 보정 인자에 적어도 부분적으로 기초하여 제2 차량과 연관된 제2 이미지 센서와 제2 콜리메이터의 정렬을 야기하는 단계를 더 포함하는 것인, 방법.
  15. 제1항 내지 제14항 중 어느 한 항에 있어서, 상기 센서 데이터는 제1 센서 데이터이고, 상기 콜리메이터와 상기 이미지 센서의 정렬을 야기하는 단계는:
    상기 이미지 센서와 상기 콜리메이터의 상기 정렬에 적어도 부분적으로 기초하여 상기 콜리메이터의 콜리메이터 구성(configuration)을 식별하는 단계;
    적어도 하나의 프로세서를 사용하여, 상기 이미지 센서와 연관된 제2 센서 데이터를 수신하는 단계; 및
    상기 제2 센서 데이터에 적어도 부분적으로 기초하여 상기 콜리메이터의 상기 콜리메이터 구성을 검증하는 단계를 포함하는 것인, 방법.
  16. 제1항 내지 제15항 중 어느 한 항에 있어서, 상기 콜리메이터와 상기 이미지 센서의 정렬을 야기하는 단계는:
    상기 이미지 센서의 이미지 센서 유형, 상기 이미지 센서의 이미지 센서 배향, 상기 이미지 센서의 이미지 센서 구성, 또는 상기 차량의 차량 유형 중 적어도 하나를 식별하는 단계;
    상기 이미지 센서의 상기 이미지 센서 유형, 상기 이미지 센서의 상기 이미지 센서 배향, 상기 이미지 센서의 상기 이미지 센서 구성, 또는 상기 차량의 상기 차량 유형 중 상기 적어도 하나에 적어도 부분적으로 기초하여 상기 콜리메이터의 콜리메이터 구성을 식별하는 단계; 및
    상기 콜리메이터의 상기 콜리메이터 구성에 적어도 부분적으로 기초하여 상기 콜리메이터와 상기 이미지 센서의 정렬을 야기하는 단계를 포함하는 것인, 방법.
  17. 제1항 내지 제16항 중 어느 한 항에 있어서,
    복수의 이미지 센서 구성들을 식별하는 단계;
    복수의 콜리메이터 구성들을 식별하는 단계; 및
    복수의 매핑들을 생성하는 단계
    를 더 포함하며, 상기 복수의 매핑들의 각각의 매핑은 상기 복수의 이미지 센서 구성들 중 특정 이미지 센서 구성을 상기 복수의 콜리메이터 구성들 중 특정 콜리메이터 구성에 매핑하고, 상기 복수의 매핑들은 상기 복수의 콜리메이터 구성들 중 한 콜리메이터 구성에 대한 상기 복수의 이미지 센서 구성들 중 한 이미지 센서 구성의 매핑을 포함하며, 상기 콜리메이터와 상기 이미지 센서의 정렬을 야기하는 단계는 상기 이미지 센서 구성 및 상기 콜리메이터 구성에 적어도 부분적으로 기초하는 것인, 방법.
  18. 제1항 내지 제17항 중 어느 한 항에 있어서, 상기 콜리메이터는 광섬유 콜리메이터이고, 상기 광섬유 콜리메이터는 고체 레이저로부터의 레이저 빔을 콜리메이팅하는 것인, 방법.
  19. 시스템에 있어서,
    적어도 하나의 프로세서, 및
    명령어들을 저장하는 적어도 하나의 비일시적 저장 매체
    를 포함하며, 상기 명령어들은, 상기 적어도 하나의 프로세서에 의해 실행될 때, 상기 적어도 하나의 프로세서로 하여금:
    콜리메이터와, 차량에 장착된 이미지 센서의 정렬을 야기하게 하고;
    상기 콜리메이터와 상기 이미지 센서의 상기 정렬을 야기하는 것에 적어도 부분적으로 기초하여 상기 이미지 센서와 연관된 센서 데이터를 수신하게 하며;
    상기 센서 데이터가 상기 이미지 센서와 연관된 성능 임계치를 충족시키지 않는다고 결정하게 하고;
    상기 센서 데이터가 상기 이미지 센서와 연관된 상기 성능 임계치를 충족시키지 않는다고 결정하는 것에 적어도 부분적으로 기초하여 상기 이미지 센서와 연관된 이미지 센서 경보를 결정하게 하며;
    상기 이미지 센서 경보를 라우팅하게 하는 것인, 시스템.
  20. 명령어들을 저장하는 적어도 하나의 비일시적 저장 매체에 있어서, 상기 명령어들은, 프로세서를 포함하는 컴퓨팅 시스템에 의해 실행될 때, 상기 컴퓨팅 시스템으로 하여금:
    콜리메이터와, 차량에 장착된 이미지 센서의 정렬을 야기하게 하고;
    상기 콜리메이터와 상기 이미지 센서의 상기 정렬을 야기하는 것에 적어도 부분적으로 기초하여 상기 이미지 센서와 연관된 센서 데이터를 수신하게 하며;
    상기 센서 데이터가 상기 이미지 센서와 연관된 성능 임계치를 충족시키지 않는다고 결정하게 하고;
    상기 센서 데이터가 상기 이미지 센서와 연관된 상기 성능 임계치를 충족시키지 않는다고 결정하는 것에 적어도 부분적으로 기초하여 상기 이미지 센서와 연관된 이미지 센서 경보를 결정하게 하며;
    상기 이미지 센서 경보를 라우팅하게 하는 것인, 적어도 하나의 비일시적 저장 매체.
KR1020220038394A 2022-01-20 2022-03-28 차량에 장착된 이미지 센서의 성능 검증 KR20230112516A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/580,021 2022-01-20
US17/580,021 US20230231989A1 (en) 2022-01-20 2022-01-20 Performance verification of an image sensor mounted to a vehicle

Publications (1)

Publication Number Publication Date
KR20230112516A true KR20230112516A (ko) 2023-07-27

Family

ID=81449396

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220038394A KR20230112516A (ko) 2022-01-20 2022-03-28 차량에 장착된 이미지 센서의 성능 검증

Country Status (5)

Country Link
US (1) US20230231989A1 (ko)
KR (1) KR20230112516A (ko)
CN (1) CN116520820A (ko)
DE (1) DE102022106460A1 (ko)
GB (1) GB2614930A (ko)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10460473B1 (en) * 2018-12-14 2019-10-29 Zoox, Inc. Camera calibration system
US11423573B2 (en) * 2020-01-22 2022-08-23 Uatc, Llc System and methods for calibrating cameras with a fixed focal point

Also Published As

Publication number Publication date
US20230231989A1 (en) 2023-07-20
DE102022106460A1 (de) 2023-07-20
CN116520820A (zh) 2023-08-01
GB202204133D0 (en) 2022-05-11
GB2614930A (en) 2023-07-26

Similar Documents

Publication Publication Date Title
US12051224B2 (en) Systems and methods for camera alignment using pre-distorted targets
KR20230020934A (ko) 효율적인 차량 크기 추정을 위한 시스템 및 방법
KR102669539B1 (ko) 내부 교정을 사용한 광학 어셈블리의 능동 정렬
US20230252678A1 (en) Universal sensor performance and calibration target for multi-sensor imaging systems
US20220414930A1 (en) Geometric intrinsic camera calibration using diffractive optical element
GB2613035A (en) Systems and methods for measurement of optical vignetting
US20230231989A1 (en) Performance verification of an image sensor mounted to a vehicle
US20230262303A1 (en) Methods and systems for determination of boresight error in an optical system
US11887338B2 (en) Maintaining calibration of an IBIS camera
US20230147392A1 (en) Two-axis test fixture
US20230386083A1 (en) Component calibration using motion capture sensor data
US20230403471A1 (en) Multiple position rolling shutter imaging device
US20230296780A1 (en) Methods and systems for sensor operation
US20240070915A1 (en) Maintaining intrinsic calibration of cameras with in-body image stabilization systems
US20240129604A1 (en) Plenoptic sensor devices, systems, and methods
US20230075701A1 (en) Location based parameters for an image sensor
WO2024081330A1 (en) Rolling shutter compensation
WO2024182787A1 (en) Camera-to-lidar calibration and validation model
WO2024081246A1 (en) Aggregation of data representing geographical areas
WO2024081258A1 (en) Plenoptic sensor devices, systems, and methods

Legal Events

Date Code Title Description
E902 Notification of reason for refusal