KR20200091936A - 고속 이미지 판독 및 프로세싱 - Google Patents

고속 이미지 판독 및 프로세싱 Download PDF

Info

Publication number
KR20200091936A
KR20200091936A KR1020207021039A KR20207021039A KR20200091936A KR 20200091936 A KR20200091936 A KR 20200091936A KR 1020207021039 A KR1020207021039 A KR 1020207021039A KR 20207021039 A KR20207021039 A KR 20207021039A KR 20200091936 A KR20200091936 A KR 20200091936A
Authority
KR
South Korea
Prior art keywords
vehicle
camera
sensor
images
image data
Prior art date
Application number
KR1020207021039A
Other languages
English (en)
Other versions
KR102408837B1 (ko
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 웨이모 엘엘씨
Priority to KR1020227019514A priority Critical patent/KR20220082118A/ko
Publication of KR20200091936A publication Critical patent/KR20200091936A/ko
Application granted granted Critical
Publication of KR102408837B1 publication Critical patent/KR102408837B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/765Interface circuits between an apparatus for recording and another apparatus
    • H04N5/77Interface circuits between an apparatus for recording and another apparatus between a recording apparatus and a television camera
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/90Arrangement of cameras or camera modules, e.g. multiple cameras in TV studios or sports stadiums
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R11/00Arrangements for holding or mounting articles, not otherwise provided for
    • B60R11/04Mounting of cameras operative during drive; Arrangement of controls thereof relative 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/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/45Cameras or camera modules comprising electronic image sensors; Control thereof for generating image signals from two or more image sensors being of different type or operating in different modes, e.g. with a CMOS sensor for moving images in combination with a charge-coupled device [CCD] for still images
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/698Control of cameras or camera modules for achieving an enlarged field of view, e.g. panoramic image capture
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/80Camera processing pipelines; Components thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/95Computational photography systems, e.g. light-field imaging systems
    • H04N23/951Computational photography systems, e.g. light-field imaging systems by using two or more images to influence resolution, frame rate or aspect ratio
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N25/00Circuitry of solid-state image sensors [SSIS]; Control thereof
    • H04N25/50Control of the SSIS exposure
    • H04N25/57Control of the dynamic range
    • H04N25/58Control of the dynamic range involving two or more exposures
    • H04N25/581Control of the dynamic range involving two or more exposures acquired simultaneously
    • H04N25/583Control of the dynamic range involving two or more exposures acquired simultaneously with different integration times
    • H04N5/2257
    • H04N5/247
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/907Television signal recording using static stores, e.g. storage tubes or semiconductor memories
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • H04N5/917Television signal processing therefor for bandwidth reduction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/12Systems in which the television signal is transmitted via one channel or a plurality of parallel channels, the bandwidth of each channel being less than the bandwidth of the television signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/804Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components
    • H04N9/8042Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components involving data reduction
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R11/00Arrangements for holding or mounting articles, not otherwise provided for
    • B60R2011/0001Arrangements for holding or mounting articles, not otherwise provided for characterised by position
    • B60R2011/0003Arrangements for holding or mounting articles, not otherwise provided for characterised by position inside the vehicle
    • B60R2011/0026Windows, e.g. windscreen
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R11/00Arrangements for holding or mounting articles, not otherwise provided for
    • B60R2011/0001Arrangements for holding or mounting articles, not otherwise provided for characterised by position
    • B60R2011/004Arrangements for holding or mounting articles, not otherwise provided for characterised by position outside the vehicle
    • 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)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mechanical Engineering (AREA)
  • Computing Systems (AREA)
  • Human Computer Interaction (AREA)
  • Electromagnetism (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Automation & Control Theory (AREA)
  • Traffic Control Systems (AREA)
  • Studio Devices (AREA)

Abstract

차량에 대한 광학 시스템은 복수의 카메라 센서들로 구성될 수도 있다. 각각의 카메라 센서는 각각의 시야의 각각의 이미지 데이터를 생성하도록 구성될 수도 있다. 광학 시스템은 복수의 카메라 센서들에 커플링되는 복수의 이미지 프로세싱 유닛들로 추가로 구성된다. 이미지 프로세싱 유닛들은 카메라 센서들에 의해 캡처된 이미지 데이터를 압축하도록 구성된다. 컴퓨팅 시스템은 압축된 이미지 데이터를 메모리에 저장하도록 구성된다. 컴퓨팅 시스템은 압축된 이미지 데이터에 기초하여 차량을 제어하도록 구성되는 차량 제어 프로세서로 추가로 구성된다. 광학 시스템 및 컴퓨팅 시스템은 데이터 버스에 의해 통신가능하게 커플링될 수 있다.

Description

고속 이미지 판독 및 프로세싱
관련 출원에 대한 상호 참조
본 출원은 2017년 12월 29일자로 출원된 미국 가특허 출원 제62/612,294호에 대한 우선권을 주장하고, 이 미국 가특허 출원의 전체 내용은 본 명세서에 참조로 포함된다.
차량은, 임의의 바퀴 달린, 전력공급되는 차량일 수 있고 승용차, 트럭, 모터사이클, 버스 등을 포함할 수도 있다. 차량들은 사람들 및 물품들의 수송뿐만 아니라, 많은 다른 용도들과 같은 다양한 태스크들에 이용될 수 있다.
일부 차량들은 부분적으로 또는 완전히 자율적일 수도 있다. 예를 들어, 차량이 자율 모드에 있을 때, 차량 동작의 구동 양태들의 일부 또는 전부가 자율 차량 시스템(즉, 자율 차량의 제어를 용이하게 하기 위해 개별적으로 또는 집합적으로 기능하는 임의의 하나 이상의 컴퓨터 시스템들)에 의해 핸들링될 수 있다. 그러한 경우들에서, 온보드에 그리고/또는 서버 네트워크에 위치되는 컴퓨팅 디바이스들은 드라이빙 루트의 계획, 차량의 양태들의 감지, 차량의 환경의 감지, 및 스티어링, 스로틀, 및 브레이크와 같은 구동 컴포넌트들의 제어와 같은 기능들을 수행하도록 동작가능할 수 있다. 따라서, 자율 차량들은 차량 동작의 다양한 양태들에서 인간 상호작용에 대한 필요성을 감소시키거나 또는 제거할 수도 있다.
일 양태에서, 본 출원은 장치를 설명한다. 장치는 광학 시스템을 포함한다. 광학 시스템은 복수의 카메라 센서들로 구성될 수도 있다. 각각의 카메라 센서는 각각의 카메라 센서의 시야(field of view)의 각각의 이미지 데이터를 생성하도록 구성될 수도 있다. 광학 시스템은 복수의 카메라 센서들에 커플링되는 복수의 이미지 프로세싱 유닛들로 추가로 구성된다. 이미지 프로세싱 유닛들은 카메라 센서들에 의해 캡처된 이미지 데이터를 압축하도록 구성된다. 장치는 컴퓨팅 시스템을 갖도록 추가로 구성된다. 컴퓨팅 시스템은 압축된 이미지 데이터를 저장하도록 구성되는 메모리로 구성된다. 컴퓨팅 시스템은 압축된 이미지 데이터에 기초하여 장치를 제어하도록 구성되는 차량 제어 프로세서로 추가로 구성된다. 광학 시스템과 컴퓨팅 시스템 사이에서 압축된 이미지 데이터를 통신하도록 구성되는 데이터 버스를 통해 장치의 광학 시스템과 컴퓨팅 시스템이 커플링된다.
다른 양태에서, 본 출원은 광학 시스템을 동작시키는 방법을 설명한다. 이 방법은, 각각의 카메라 센서 각각에 대한 이미지 데이터를 생성하기 위해 광학 시스템의 복수의 센서들에 광을 제공하는 단계를 포함한다. 이미지 데이터는 각각의 카메라 센서의 시야에 대응한다. 이 방법은, 복수의 카메라 센서들에 커플링되는 복수의 이미지 프로세싱 유닛들에 의해 이미지 데이터를 압축하는 단계를 더 포함한다. 부가적으로, 이 방법은, 복수의 이미지 프로세싱 유닛들로부터의 압축된 이미지 데이터를 컴퓨팅 시스템으로 통신하는 단계를 포함한다. 더욱 더, 이 방법은, 압축된 이미지 데이터를 컴퓨팅 시스템의 메모리에 저장하는 단계를 포함한다. 게다가, 이 방법은, 컴퓨팅 시스템의 차량 제어 프로세서에 의해 압축된 이미지 데이터에 기초하여 장치를 제어하는 단계를 포함한다.
또 다른 양태에서, 본 출원은 차량을 설명한다. 차량은 루프 장착 센서 유닛(roof-mounted sensor unit)을 포함한다. 루프 장착 센서 유닛은, 제1 복수의 카메라 센서들로 구성되는 제1 광학 시스템을 포함한다. 제1 복수의 카메라 센서들의 각각의 카메라 센서는 각각의 카메라 센서의 시야의 각각의 이미지 데이터를 생성한다. 루프 장착 센서 유닛은, 제1 복수의 카메라 센서들에 커플링되는 복수의 제1 이미지 프로세싱 유닛들을 또한 포함한다. 제1 이미지 프로세싱 유닛들은 카메라 센서들에 의해 캡처된 이미지 데이터를 압축하도록 구성된다. 차량은 또한 제2 카메라 유닛을 포함한다. 제2 카메라 유닛은, 제2 복수의 카메라 센서들로 구성되는 제2 광학 시스템을 포함한다. 제2 복수의 카메라 센서들의 각각의 카메라 센서는 각각의 카메라 센서의 시야의 각각의 이미지 데이터를 생성한다. 제2 카메라 유닛은, 제2 복수의 카메라 센서들에 커플링되는 복수의 제2 이미지 프로세싱 유닛들을 또한 포함한다. 제2 이미지 프로세싱 유닛들은 제2 카메라 유닛의 카메라 센서들에 의해 캡처된 이미지 데이터를 압축하도록 구성된다. 차량은, 루프 장착 센서 유닛의 외측에서 차량에 위치되는 컴퓨팅 시스템을 더 포함한다. 컴퓨팅 시스템은, 압축된 이미지 데이터를 저장하도록 구성되는 메모리를 포함한다. 컴퓨팅 시스템은, 압축된 이미지 데이터에 기초하여 차량을 동작시키도록 구성되는 제어 시스템을 또한 포함한다. 게다가, 차량은, 루프 장착 센서 유닛, 제2 카메라 유닛, 및 컴퓨팅 시스템 사이에서 압축된 이미지 데이터를 통신하도록 구성되는 데이터 버스를 포함한다.
전술한 요약은 단지 예시적인 것이고 어떠한 방식으로든 제한하려는 것으로 의도된 것이 아니다. 상술된 예시적인 양태들, 구현들, 및 피처들에 부가적으로, 도면들 및 다음의 상세한 설명을 참조하여 추가의 양태들, 구현들, 및 피처들이 명백해질 것이다.
도 1은 예시적인 구현에 따른, 차량을 예시하는 기능 블록도이다.
도 2는 예시적인 구현에 따른, 차량의 물리적 구성의 개념적 예시이다.
도 3a는 예시적인 구현에 따른, 자율 차량과 관련된 다양한 컴퓨팅 시스템들 사이의 무선 통신의 개념적 예시이다.
도 3b는 예시적인 광학 시스템의 예시적인 컴포넌트들을 묘사하는 단순화된 블록도를 도시한다.
도 3c는 예시적인 구현에 따른, 광학 시스템의 동작의 개념적 예시한다.
도 4a는 예시적인 구현에 따른, 이미지 센서들의 배열을 예시한다.
도 4b는 예시적인 구현에 따른, 플랫폼의 배열을 예시한다.
도 4c는 예시적인 구현에 따른, 이미지 센서들의 배열을 예시한다.
도 5는 예시적인 구현에 따른, 방법의 흐름도이다.
도 6은 예시적인 구현에 따른, 컴퓨터 프로그램의 개략도이다.
예시적인 방법들 및 시스템들이 본 명세서에서 설명된다. "예(example)", "예시적(exemplary)", 및 "예시적(illustrative)"이라는 단어들은 본 명세서에서 "예, 경우, 또는 예시로서 기능하는" 것을 의미하기 위해 사용된다는 것을 이해해야 한다. 본 명세서에서 "예", "예시적", 또는 "예시적"인 것으로서 설명되는 임의의 구현 또는 피처는 반드시 다른 구현들 또는 피처들보다 선호되거나 또는 유리한 것으로 해석될 필요는 없다. 본 명세서에서 설명되는 예시적인 구현들은 제한하려는 것으로 의도된 것이 아니다. 본 개시내용의 양태들은, 일반적으로 본 명세서에서 설명되고 도면들에 예시되는 바와 같이, 매우 다양한 상이한 구성들로 배열, 치환, 조합, 분리, 및 설계될 수 있고, 그 모두는 본 명세서에서 명시적으로 고려된다는 것이 쉽게 이해될 것이다. 부가적으로, 본 개시내용에서, 달리 특정되지 않는 한 그리고/또는 특정 문맥상 달리 명확히 기술되지 않는 한, 용어들 "a" 또는 "an"은 적어도 하나를 의미하고, 용어 "the"는 적어도 하나를 의미한다. 더욱 더, "인에이블된(enabled)"이라는 용어는 활성적 및/또는 기능적이어서, 반드시 턴 온시키기 위한 긍정 액션을 요구하지는 않는다는 것을 의미할 수도 있다. 유사하게, "디스에이블된(disabled)"이라는 용어는 비-활성적 및/또는 비-기능적이어서, 반드시 턴 오프시키기 위한 긍정 액션을 요구하지는 않는다는 것을 의미할 수도 있다.
게다가, 도면들에 도시된 특정 배열들은 제한하는 것으로서 간주되어서는 안 된다. 다른 구현들은 주어진 도면에 도시된 각각의 요소를 더 많이 또는 더 적게 포함할 수도 있다는 것이 이해되어야 한다. 추가로, 예시된 요소들 중 일부는 조합 또는 생략될 수도 있다. 더욱 더, 예시적인 구현은 도면들에 예시되지 않은 요소들을 포함할 수도 있다.
실제로, 자율 차량 시스템은 차량의 환경을 나타내는 데이터를 사용하여 객체들을 식별할 수도 있다. 그 후에, 차량 시스템은, 차량에게 특정 방식으로 작동하도록 명령하는 것과 같은, 다른 액션을 수행하는 것을 위한 기초로서 객체들의 식별을 사용할 수도 있다. 예를 들어, 객체가 정지 표지(stop sign)인 경우, 차량 시스템은 차량에게 정지 표지 전에 감속 및 정지하도록 명령할 수도 있거나, 또는 객체가 도로의 중앙의 보행자인 경우, 차량 시스템은 차량에게 보행자를 회피하도록 명령할 수도 있다.
일부 시나리오들에서, 차량은 복수의 광학 카메라들을 갖는 이미징 시스템을 사용하여 차량 주위의 환경을 이미징할 수도 있다. 환경의 이미징은 객체 식별 및/또는 내비게이션을 위해 사용될 수도 있다. 이미징 시스템은 상보성 금속-산화물-반도체(Complementary Metal-Oxide-Semiconductor)(CMOS) 이미지 센서와 같은 이미지 센서(즉, 광 센서 및/또는 카메라)를 각각이 갖는 많은 광학 카메라들을 사용할 수도 있다. 각각의 CMOS 센서는 유입되는 광을 샘플링하고 각각의 센서의 필드의 이미지 데이터를 생성하도록 구성될 수도 있다. 각각의 센서는 미리 결정된 레이트로 이미지들을 생성할 수도 있다. 예를 들어, 이미지 센서가 초당 30개 또는 60개의 이미지들로 이미지들을 캡처할 수도 있거나, 또는 이미지 캡처가 외부 센서 또는 이벤트에 의해 잠재적으로 반복적으로 트리거될 수도 있다. 복수의 캡처된 이미지들은 비디오를 형성할 수도 있다.
일부 예들에서, 차량은 복수의 카메라들을 포함할 수도 있다. 일 예에서, 차량은 19개의 카메라들을 포함할 수도 있다. 19-카메라 셋업에서, 카메라들 중 16개가 센서 돔에 장착될 수도 있는데, 이때 3개의 다른 카메라들이 메인 차량에 장착된다. 돔에 없는 3개의 카메라들은 전방에서 보이는 방향으로 구성될 수도 있다. 센서 돔에서의 16개의 카메라들은 8개의 카메라(즉, 센서) 쌍들로서 배열될 수도 있다. 8개의 센서 쌍들은 원형 링에 장착될 수도 있다. 일 예에서, 센서 쌍은 각각의 센서 쌍 사이에서 45도 분리로 장착될 수도 있지만, 다른 각도 분리들이 또한 사용될 수도 있다(일부 예들에서, 센서들은 센서의 시야의 중첩을 야기하는 각도 분리를 갖도록 구성될 수도 있다). 부가적으로, 일부 예들에서, 원형 링 및 부착된 카메라 유닛들은 원형으로 회전하도록 구성될 수도 있다. 원형 링이 회전할 때, 카메라들은 각각 차량의 풀(full) 360도 환경을 이미징하는 것이 가능할 수도 있다.
일부 예들에서, 각각의 카메라는 다른 카메라들과 동일한 이미지 레이트로 그리고 동일한 해상도로 이미지들을 캡처한다. 다른 예들에서, 카메라들은 상이한 레이트들 및 해상도들로 이미지들을 캡처할 수도 있다. 실제로, 3개의 전방에서 보이는 카메라들은, 카메라들의 링의 일부인 카메라들보다 더 높은 해상도로 그리고 더 높은 프레임 레이트로 이미지들을 캡처할 수도 있다.
일 예에서, 카메라 쌍을 구성하는 2개의 카메라들은, 유사한 시야를 갖도록 구성되지만 휘도 레벨들의 상이한 범위들에 대응하는 상이한 동적 범위들을 갖는 2개의 카메라들일 수도 있다. 상이한 동적 범위들을 가짐으로써, 하나의 카메라는 높은 세기의 광을 갖는 이미지들을 캡처하는(예를 들어, 센서에 광을 노출시키는) 데 더 효과적일 수도 있고, 다른 카메라는 낮은 세기의 광을 갖는 이미지들을 캡처하는 데 더 효과적일 수도 있다. 예를 들어, 밤에 승용차의 헤드라이트들과 같은 일부 객체들은 밝게 보일 수도 있고, 밤에 모두 흑색으로 입은 조깅하는 사람과 같은 다른 객체들은 흐릿하게 보일 수도 있다. 차량의 자율 동작의 경우, 다가오는 승용차의 라이트들과 조깅하는 사람 양측 모두를 이미징할 수 있는 것이 바람직할 수도 있다. 단일 카메라가 광 레벨들의 큰 차이들로 인해 양측 모두를 동시에 이미징하는 것이 불가능할 수도 있다. 그러나, 카메라 쌍은, 높은 광 레벨들(예컨대, 승용차의 헤드라이트들)을 이미징할 수 있는 제1 동적 범위를 갖는 제1 카메라, 및 낮은 광 레벨들(예컨대, 모두 흑색으로 입은 조깅하는 사람)을 이미징할 수 있는 제2 동적 범위를 갖는 제2 카메라를 포함할 수도 있다. 다른 예들이 또한 가능하다. 부가적으로, 본 출원의 카메라들은 2017년 12월 28일자로 출원된 미국 가특허 출원 제62/611,194호에 개시된 것들과 유사하거나 또는 동일할 수도 있고, 이 미국 가특허 출원의 전체 내용은 본 명세서에 참조로 포함된다.
19개의 카메라들 각각이 고정된 프레임 레이트로 이미지들을 캡처하고 있기 때문에, 시스템에 의해 캡처된 데이터의 양이 매우 클 수도 있다. 예를 들어, 캡처된 각각의 이미지가 10메가픽셀인 경우, 각각의 압축되지 않은 이미지는 대략 10메가바이트의 사이즈일 수도 있다(다른 예들에서는, 파일 사이즈가 이미지 해상도, 비트 심도, 압축 등과 같은 다양한 인자들에 따라 상이할 수도 있다). 각각이 10메가바이트 이미지를 초당 60회 캡처하는 19개의 카메라들이 있는 경우, 풀 카메라 시스템은 초당 약 11.5기가바이트의 이미지 데이터를 캡처하고 있을 수도 있다. 카메라 시스템에 의해 캡처된 데이터의 양은 차량의 다양한 프로세싱 컴포넌트들을 저장 및 라우팅하기에 실용적이지 않을 수도 있다. 그에 따라, 시스템은 이미징 시스템의 데이터 사용량을 감소시키기 위해 이미지 프로세싱 및/또는 압축을 사용할 수도 있다.
이미징 시스템의 데이터 사용량을 감소시키기 위해, 이미지 센서들은 이미지 프로세싱을 행하도록 구성되는 하나 이상의 전용 프로세서들에 커플링될 수도 있다. 이미지 프로세싱은 이미지 압축을 포함할 수도 있다. 추가로, 시스템의 연산 및 메모리 요구들을 감소시키기 위해, 추가 프로세싱을 위해 이미지 데이터가 라우팅되기 전에, 이미지 센서 근처에 위치되는 이미지 프로세서에 의해 이미지 데이터가 압축될 수도 있다.
본 개시된 프로세싱은 프로세싱의 컬러 감지에 의해 수행될 수도 있다. 프로세싱의 컬러 감지는 풀 가시 컬러 스펙트럼, 가시 컬러 스펙트럼의 서브세트, 및/또는 인간 가시 범위 외측에 있는 컬러 스펙트럼의 부분들(예를 들어, 적외선 및/또는 자외선)을 사용할 수도 있다. 많은 전통적인 이미지 프로세싱 시스템들은 단지 흑색 및 백색, 및/또는 좁은 컬러 공간(즉, 적색 필터와 같은 유색 필터를 갖는 이미지들에 대해 동작함)만을 사용하여 동작할 수도 있다. 프로세싱의 컬러 감지를 사용함으로써, 더 정확한 컬러 표현들이 객체 감지, 객체 검출, 및 이미지 데이터의 재구성을 위해 사용될 수도 있다.
일부 예들에서, 주어진 이미지 센서로부터의 미리 결정된 수의 연속 이미지들은 이미지들 중 단지 하나만을 유지하고 유지되지 않은 나머지 이미지들로부터 객체들의 모션과 관련된 데이터를 추출함으로써 압축될 수도 있다. 예를 들어, 6개의 연속 이미지들의 각각의 세트의 경우, 이미지들 중 하나가 세이브(save)될 수도 있고 나머지 5개의 이미지들은 단지 이들의 연관된 모션 데이터만이 세이브되게 될 수도 있다. 다른 예들에서, 이미지들의 미리 결정된 수는 6개와는 상이할 수도 있다. 일부 다른 예들에서, 시스템은 다양한 기준들에 기초하여 이미지들의 수를 동적으로 변경할 수도 있다.
또 다른 예에서, 시스템은 참조 이미지를 저장할 수도 있고, 다른 이미지들에 대한 참조 이미지에 대한 변화들을 포함하는 데이터만을 단지 저장할 수도 있다. 일부 예들에서, 미리 결정된 수의 이미지들 이후에, 또는 참조 이미지로부터의 임계 레벨의 변화 이후에 새로운 참조 이미지가 저장될 수도 있다. 예를 들어, 미리 결정된 수의 이미지들은 날씨 또는 환경 조건들에 기초하여 변경될 수도 있다. 다른 예들에서, 미리 결정된 수의 이미지들은 검출된 객체들의 수 및/또는 위치에 기초하여 변경될 수도 있다. 부가적으로, 이미지 프로세서는 세이브되는 이미지에 대해 일부 압축을 또한 수행하여, 시스템의 데이터 요건들을 추가로 감소시킬 수도 있다.
시스템 성능을 증가시키기 위해, 센서 쌍에서의 센서들에 의해 캡처된 이미지들을 동시에 또는 거의 동시에 프로세싱하는 것이 바람직할 수도 있다. 이미지들을 가능한 한 거의 동시에 프로세싱하기 위해, 센서 쌍의 각각의 센서에 의해 캡처된 이미지 및/또는 비디오를 상이한 각각의 이미지 프로세서로 라우팅하는 것이 바람직할 수도 있다. 그에 따라, 센서 쌍에 의해 캡처된 2개의 이미지들은 2개의 상이한 이미지 프로세서들에 의해 동시에 또는 거의 동시에 프로세싱될 수도 있다. 일부 예들에서, 이미지 프로세서는 이미지 센서들에 물리적으로 가까이 근접하여 위치될 수도 있다. 예를 들어, 차량의 센서 돔에 위치되는 4개의 이미지 프로세서들이 있을 수도 있다. 다른 예에서, 차량의 윈드실드(windshield) 아래에 위치되는 이미지 센서들과 공동 위치되는 이미지 프로세서가 있을 수도 있다. 이 예에서, 하나 또는 2개의 이미지 프로세서들이 전방에서 보이는 이미지 센서들 근처에 위치될 수도 있다.
실제로, 이미지 센서들과 이미지 프로세서들 사이의 전기 거리(electrical distance)(즉, 전기 트레이스들을 따라 측정된 바와 같은 거리)는 대략 수 인치일 수도 있다. 일 예에서, 제1 이미지 압축을 수행하는 이미지 프로세서들 및 이미지 센서들은 서로 6인치 내에 위치된다.
이미지 센서들과 이미지 프로세서들이 서로 근처에 위치되게 하면 많은 이익들이 있다. 하나의 이익은 시스템 레이턴시가 감소될 수도 있다는 것이다. 이미지 데이터는 차량 제어 시스템으로 통신되기 전에 센서 근처에서 빠르게 프로세싱 및/또는 압축될 수도 있다. 이것은 차량 제어 시스템이 데이터를 취득하기 위해 오래 기다릴 필요가 없게 할 수도 있다. 두 번째로, 이미지 센서들과 이미지 프로세서들이 서로 근처에 위치되게 함으로써, 데이터가 차량의 데이터 버스를 통해 더 효과적으로 통신될 수도 있다.
이미지 프로세서들은 차량의 데이터 버스에 커플링될 수도 있다. 데이터 버스는 프로세싱된 이미지 데이터를 차량의 다른 컴퓨팅 시스템으로 통신할 수도 있다. 예를 들어, 이미지 데이터는 자율 차량의 동작을 제어하도록 구성되는 프로세싱 시스템에 의해 사용될 수도 있다. 데이터 버스는 광학, 동축, 및 또는 연선(twisted pair) 통신 경로를 통해 동작할 수도 있다. 데이터 버스의 대역폭은 프로세싱된 이미지 데이터를 부가적인 통신을 위한 얼마간의 오버헤드로 통신하기에 충분할 수도 있다. 그러나, 이미지 데이터가 프로세싱되지 않은 경우, 데이터 버스는, 모든 캡처된 이미지 데이터를 통신하기에 충분한 대역폭을 갖지 않을 수도 있다. 그에 따라, 본 시스템은 전통적인 이미지 프로세싱 시스템의 프로세싱 및 데이터 이동 요건들 없이도 고품질 카메라 시스템에 의해 캡처된 정보를 이용하는 것이 가능할 수도 있다.
본 시스템은 종래의 차량 카메라 시스템들보다 더 높은 해상도를 갖는 하나 이상의 카메라들로 동작할 수도 있다. 더 높은 카메라 해상도를 갖는 것으로 인해, 일부 예들에서 본 시스템은 본 개시된 시스템이 생성할 수도 있는 더 높은 해상도 이미지들에서 나타날 수도 있는 일부 바람직하지 않은 영향들을 상쇄시키기 위해 일부 신호 프로세싱을 포함시키는 것이 바람직할 수도 있다. 일부 예들에서, 본 시스템은 시선 지터(line of sight jitter) 및/또는 픽셀 스미어(pixel smear) 분석을 측정할 수도 있다. 측정치들은 픽셀 왜곡당 밀리라디안의 관점에서 계산될 수도 있다. 이들 왜곡들의 분석은 바람직하지 않은 영향들을 상쇄 또는 완화시키기 위한 프로세싱을 가능하게 할 수도 있다. 부가적으로, 시스템은 카메라 플랫폼의 흔들림 또는 진동에 인해 야기될 수도 있는 일부 이미지 블러를 경험할 수도 있다. 블러 감소 및/또는 이미지 안정화 기법들이 사용되어 블러를 최소화할 수도 있다. 본 카메라 시스템들은 일반적으로 종래의 차량 카메라 시스템들보다 더 높은 해상도이기 때문에, 많은 전통적인 시스템들이 이들 잠재적인 부정적 영향들을 상쇄시킬 필요가 없었는데, 이는 카메라 해상도들이 너무 낮아서 그 영향들을 인지할 수 없을 수도 있기 때문이다.
부가적으로, 본 개시된 카메라 시스템은 다양한 해상도의 다수의 카메라들을 사용할 수도 있다. 일 예에서, 이전에 논의된 카메라 쌍들(즉, 센서 쌍)은 제1 해상도 및 제1 시야각 폭을 가질 수도 있다. 시스템은, 차량의 윈드실드 아래에, 예컨대, 전방에서 보이는 방향으로, 백미러(rear-view mirror)의 위치 후방에 장착되는 적어도 하나의 카메라를 또한 포함할 수도 있다. 일부 예들에서, 백미러 후방에 위치된 카메라들은, 제1 해상도 및 제1 시야각 폭을 갖는 카메라 쌍을 포함할 수도 있다. 윈드실드 후방에 위치된 카메라들은, 제1 해상도보다 더 큰 해상도 및 제1 시야각 폭보다 더 큰 시야각 폭을 갖는 제3 카메라를 포함할 수도 있다. 일부 예들에서, 윈드실드 후방에는 고해상도 광각 뷰 카메라만이 단지 있을 수도 있다. 다른 예들이 또한 가능하다.
윈드실드 후방에 고해상도 광각 뷰 카메라를 갖는 이 카메라 시스템은 전체로서 카메라 시스템의 동적 범위를 갖는 제3 자유도를 가능하게 할 수도 있다. 부가적으로, 윈드실드 후방에 고해상도 광각 뷰 카메라를 도입하면 각도 분리된 카메라 센서들에 의해 형성된 접합부(seam)의 구역을 이미징하는 능력을 갖는 것과 같은 다른 이익들을 또한 제공한다. 부가적으로, 고해상도 광각 뷰 카메라는 원거리에서 정지 표지를 볼 수 있는 긴 초점 길이 렌즈들을 이용하여 그리고/또는 상당히 멀리 떨어진 채로 연속 검출 능력을 가능하게 한다. 이 동일한 카메라 센서는 시야 및 표지의 방대한 사이즈로 인해 정지 표지를 이미징하기 어려울 수도 있다. 카메라들을 상이한 사양들(예를 들어, 해상도 및 각도 시야) 및 위치들(장착 위치들 및 시야)과 조합함으로써 시스템은 종래의 시스템들보다 더 많은 이익들을 제공할 수도 있다.
본 개시내용의 범주 내의 예시적인 시스템들이 이제 보다 상세히 설명될 것이다. 예시적인 시스템은 자동차로 구현될 수도 있거나 또는 자동차의 형태를 취할 수도 있다. 그러나, 예시적인 시스템은 또한 승용차들, 트럭들, 모터사이클들, 버스들, 보트들, 비행기들, 헬리콥터들, 잔디 깎는 기계(lawn mower)들, 흙 파는 기계(earth mover)들, 보트들, 설상차(snowmobile)들, 항공기, 레저용 차량들, 놀이 공원 차량들, 농기구, 건설 장비, 트램(tram)들, 골프 카트들, 기차들, 트롤리(trolley)들, 및 로봇 디바이스들과 같은 다른 차량들로 구현될 수도 있거나 또는 다른 차량들의 형태를 취할 수도 있다. 다른 차량들이 또한 가능하다.
이제 도면들을 참조하면, 도 1은 자율 모드에서 완전히 또는 부분적으로 동작하도록 구성될 수도 있는 예시적인 차량(100)을 예시하는 기능 블록도이다. 더 구체적으로는, 차량(100)은 컴퓨팅 시스템으로부터 제어 명령어들을 수신하는 것을 통해 인간 상호작용 없이 자율 모드에서 동작할 수도 있다. 자율 모드에서의 동작의 일부로서, 차량(100)은 센서들을 사용하여 주변 환경의 객체들을 검출하고 가능하다면 식별하여 안전한 내비게이션을 가능하게 할 수도 있다. 일부 구현들에서, 차량(100)은, 운전자가 차량(100)의 동작들을 제어하는 것을 가능하게 하는 서브시스템들을 또한 포함할 수도 있다.
도 1에 도시된 바와 같이, 차량(100)은 추진 시스템(102), 센서 시스템(104), 제어 시스템(106), 하나 이상의 주변기기들(108), 전원(110), 컴퓨터 시스템(112), 데이터 스토리지(114), 및 사용자 인터페이스(116)와 같은 다양한 서브시스템들을 포함할 수도 있다. 다른 예들에서, 차량(100)은, 다수의 요소들을 각각 포함할 수 있는 보다 많은 또는 보다 적은 서브시스템들을 포함할 수도 있다. 차량(100)의 서브시스템들 및 컴포넌트들은 다양한 방식들로 상호연결될 수도 있다. 부가적으로, 본 명세서에서 설명되는 차량(100)의 기능들은 부가적인 기능적 또는 물리적 컴포넌트들로 분할될 수 있거나, 또는 구현들 내에서 보다 적은 기능적 또는 물리적 컴포넌트들로 조합될 수 있다.
추진 시스템(102)은, 차량(100)에 대해 전력공급 모션을 제공하도록 동작가능한 하나 이상의 컴포넌트들을 포함할 수도 있고, 다른 가능한 컴포넌트들 중에서도, 엔진/모터(118), 에너지 소스(119), 트랜스미션(120), 및 휠들/타이어들(121)을 포함할 수 있다. 예를 들어, 엔진/모터(118)는 에너지 소스(119)를 기계적 에너지로 변환하도록 구성될 수도 있고, 다른 가능한 옵션들 중에서도, 내연 엔진(internal combustion engine), 전기 모터, 스팀 엔진, 또는 스털링 엔진(Stirling engine) 중 하나 또는 이들의 조합에 대응할 수 있다. 예를 들어, 일부 구현들에서, 추진 시스템(102)은, 가솔린 엔진 및 전기 모터와 같은 다수의 타입들의 엔진들 및/또는 모터들을 포함할 수도 있다.
에너지 소스(119)는, 전체적으로 또는 부분적으로, 차량(100)의 하나 이상의 시스템들(예를 들어, 엔진/모터(118))에 전력공급할 수도 있는 에너지의 소스를 나타낸다. 예를 들어, 에너지 소스(119)는 가솔린, 디젤, 다른 석유 기반 연료들, 프로판, 다른 압축 가스 기반 연료들, 에탄올, 태양 패널들, 배터리들, 및/또는 전기 전력의 다른 소스들에 대응할 수 있다. 일부 구현들에서, 에너지 소스(119)는 연료 탱크들, 배터리들, 커패시터들, 및/또는 플라이휠(flywheel)들의 조합을 포함할 수도 있다.
트랜스미션(120)은 엔진/모터(118)로부터의 기계적 동력을 휠들/타이어들(121) 및/또는 차량(100)의 다른 가능한 시스템들에 송신할 수도 있다. 이와 같이, 트랜스미션(120)은, 다른 가능한 컴포넌트들 중에서도, 기어박스, 클러치, 차동기(differential), 및 드라이브 샤프트를 포함할 수도 있다. 드라이브 샤프트는, 하나 이상의 휠들/타이어들(121)에 연결되는 차축을 포함할 수도 있다.
차량(100)의 휠들/타이어들(121)은 예시적인 구현들 내에서 다양한 구성들을 가질 수도 있다. 예를 들어, 차량(100)은, 다른 가능한 구성들 중에서도, 외발 자전거, 두발 자전거/모터사이클, 세발 자전거, 또는 승용차/트럭 4-휠 포맷으로 존재할 수도 있다. 이와 같이, 휠들/타이어들(121)은 다양한 방식들로 차량(100)에 연결될 수도 있고 금속 및 고무와 같은 상이한 재료들로 존재할 수 있다.
센서 시스템(104)은, 다른 가능한 센서들 중에서도, 글로벌 포지셔닝 시스템(Global Positioning System)(GPS)(122), 관성 측정 유닛(inertial measurement unit)(IMU)(124), 레이더(126), 레이저 거리 측정기(laser rangefinder)/LIDAR(128), 카메라(130), 스티어링 센서(123), 및 스로틀/브레이크 센서(125)와 같은 다양한 타입들의 센서들을 포함할 수 있다. 일부 구현들에서, 센서 시스템(104)은, 차량(100)의 내부 시스템들(예를 들어, O2 모니터, 연료 게이지, 엔진 오일 온도, 브레이크 마모)을 모니터링하도록 구성되는 센서들을 또한 포함할 수도 있다.
GPS(122)는, 지구에 대한 차량(100)의 포지션에 관한 정보를 제공하도록 동작가능한 트랜시버를 포함할 수도 있다. IMU(124)는 하나 이상의 가속도계들 및/또는 자이로스코프들을 사용하는 구성을 가질 수도 있고, 관성 가속도에 기초하여 차량(100)의 포지션 및 배향 변화들을 감지할 수도 있다. 예를 들어, IMU(124)는 차량(100)이 정지되거나 또는 움직이는 동안 차량(100)의 피치(pitch) 및 요(yaw)를 검출할 수도 있다.
레이더(126)는, 차량(100)의 로컬 환경 내에서, 객체들의 속력 및 가는 방향(heading)을 포함하여, 객체들을 감지하기 위해 라디오 신호들을 사용하도록 구성되는 하나 이상의 시스템들을 나타낼 수도 있다. 이와 같이, 레이더(126)는, 라디오 신호들을 송신 및 수신하도록 구성되는 안테나들을 포함할 수도 있다. 일부 구현들에서, 레이더(126)는, 차량(100)의 주변 환경의 측정치들을 획득하도록 구성되는 장착가능 레이더 시스템에 대응할 수도 있다.
레이저 거리 측정기/LIDAR(128)는, 다른 시스템 컴포넌트들 중에서도, 하나 이상의 레이저 소스들, 레이저 스캐너, 및 하나 이상의 검출기들을 포함할 수도 있고, (예를 들어, 헤테로다인 검출을 사용하는) 간섭성 모드에서 또는 비간섭성 검출 모드에서 동작할 수도 있다. 카메라(130)는, 차량(100)의 환경의 이미지들을 캡처하도록 구성되는 하나 이상의 디바이스들(예를 들어, 스틸 카메라 또는 비디오 카메라)을 포함할 수도 있다. 카메라(130)는, 차량 전체에 걸쳐 포지셔닝되는 다수의 카메라 유닛들을 포함할 수도 있다. 카메라(130)는, 차량의 상부 돔에 포지셔닝되는 카메라 유닛들 및/또는, 윈드실드 근처에 장착된 카메라들과 같은, 차량의 보디 내에 위치되는 카메라 유닛들을 포함할 수도 있다.
스티어링 센서(123)는, 스티어링 휠의 각도를 측정하는 것 또는 스티어링 휠의 각도를 대표하는 전기 신호를 측정하는 것을 수반할 수도 있는, 차량(100)의 스티어링 각도를 감지할 수도 있다. 일부 구현들에서, 스티어링 센서(123)는, 차량(100)의 전방 축에 대한 휠들의 각도를 검출하는 것과 같이, 차량(100)의 휠들의 각도를 측정할 수도 있다. 스티어링 센서(123)는 스티어링 휠의 각도, 스티어링 휠의 각도를 나타내는 전기 신호, 및 차량(100)의 휠들의 각도의 조합(또는 서브세트)을 측정하도록 또한 구성될 수도 있다.
스로틀/브레이크 센서(125)는 차량(100)의 스로틀 포지션 또는 브레이크 포지션 중 어느 하나의 포지션을 검출할 수도 있다. 예를 들어, 스로틀/브레이크 센서(125)는 가스 페달(스로틀) 및 브레이크 페달 양측 모두의 각도를 측정할 수도 있거나, 또는, 예를 들어, 가스 페달(스로틀)의 각도 및/또는 브레이크 페달의 각도를 나타낼 수 있는 전기 신호를 측정할 수도 있다. 스로틀/브레이크 센서(125)는, 엔진/모터(118)에 에너지 소스(119)의 변조를 제공하는 물리적 메커니즘(예를 들어, 버터플라이 밸브 또는 기화기(carburetor))의 일부를 포함할 수도 있는, 차량(100)의 스로틀 보디의 각도를 또한 측정할 수도 있다. 부가적으로, 스로틀/브레이크 센서(125)는 차량(100)의 로터 상의 하나 이상의 브레이크 패드들의 압력 또는 가스 페달(스로틀) 및 브레이크 페달의 각도, 가스 페달(스로틀) 및 브레이크 페달의 각도를 나타내는 전기 신호, 스로틀 보디의 각도, 및 적어도 하나의 브레이크 패드가 차량(100)의 로터에 가하고 있는 압력의 조합(또는 서브세트)을 측정할 수도 있다. 다른 구현들에서, 스로틀/브레이크 센서(125)는, 스로틀 또는 브레이크 페달과 같은, 차량의 페달에 가해지는 압력을 측정하도록 구성될 수도 있다.
제어 시스템(106)은, 스티어링 유닛(132), 스로틀(134), 브레이크 유닛(136), 센서 융합 알고리즘(138), 컴퓨터 비전 시스템(140), 내비게이션/경로지정 시스템(142), 및 장애물 회피 시스템(144)과 같은, 차량(100)을 내비게이팅하는 것을 보조하도록 구성되는 컴포넌트들을 포함할 수도 있다. 더 구체적으로는, 스티어링 유닛(132)은 차량(100)의 가는 방향을 조정하도록 동작가능할 수도 있고, 스로틀(134)은 엔진/모터(118)의 동작 속력을 제어하여 차량(100)의 가속도를 제어할 수도 있다. 브레이크 유닛(136)은 차량(100)을 감속시킬 수도 있는데, 이는 마찰을 사용하여 휠들/타이어들(121)을 감속시키는 것을 수반할 수도 있다. 일부 구현들에서, 브레이크 유닛(136)은 휠들/타이어들(121)의 운동 에너지를 차량(100)의 시스템 또는 시스템들에 의한 후속 사용을 위해 전류로 변환할 수도 있다.
센서 융합 알고리즘(138)은 칼만 필터(Kalman filter), 베이지안 네트워크(Bayesian network), 또는 센서 시스템(104)으로부터의 데이터를 프로세싱할 수 있는 다른 알고리즘들을 포함할 수도 있다. 일부 구현들에서, 센서 융합 알고리즘(138)은, 개별 객체들 및/또는 피처들의 평가들, 특정 상황의 평가들, 및/또는 주어진 상황 내의 잠재적인 영향들의 평가들과 같은, 유입되는 센서 데이터에 기초하는 평가들을 제공할 수도 있다.
컴퓨터 비전 시스템(140)은, 객체들, 환경 객체들(예를 들어, 정지 신호등들, 차도 경계들 등), 및 장애물들을 결정하기 위한 노력으로 이미지들을 프로세싱 및 분석하도록 동작가능한 하드웨어 및 소프트웨어를 포함할 수도 있다. 이와 같이, 컴퓨터 비전 시스템(140)은, 예를 들어, 객체들을 인식하는 것, 환경을 매핑시키는 것, 객체들을 추적하는 것, 객체들의 속력을 추정하는 것 등을 위해, 객체 인식, SFM(Structure From Motion), 비디오 추적, 및 컴퓨터 비전에 사용되는 다른 알고리즘들을 사용할 수도 있다.
내비게이션/경로지정 시스템(142)은 차량(100)에 대한 드라이빙 경로를 결정할 수도 있는데, 이는 동작 동안 내비게이션을 동적으로 조정하는 것을 수반할 수도 있다. 이와 같이, 내비게이션/경로지정 시스템(142)은 차량(100)을 내비게이팅하기 위해, 다른 소스들 중에서도, 센서 융합 알고리즘(138), GPS(122), 및 맵들로부터의 데이터를 사용할 수도 있다. 장애물 회피 시스템(144)은 센서 데이터에 기초하여 잠재적인 장애물들을 평가할 수도 있고, 차량(100)의 시스템들로 하여금 잠재적인 장애물들을 회피하게 하거나 또는 그렇지 않으면 이들과 협상하게 할 수도 있다.
도 1에 도시된 바와 같이, 차량(100)은 무선 통신 시스템(146), 터치스크린(148), 마이크로폰(150), 및/또는 스피커(152)와 같은 주변기기들(108)을 또한 포함할 수도 있다. 주변기기들(108)은 사용자가 사용자 인터페이스(116)와 상호작용하기 위한 컨트롤(control)들 또는 다른 요소들을 제공할 수도 있다. 예를 들어, 터치스크린(148)은 차량(100)의 사용자들에게 정보를 제공할 수도 있다. 사용자 인터페이스(116)는 터치스크린(148)을 통해 사용자로부터의 입력을 또한 수용할 수도 있다. 주변기기들(108)은 차량(100)이 다른 차량 디바이스들과 같은 디바이스들과 통신하는 것을 또한 가능하게 할 수도 있다.
무선 통신 시스템(146)은 직접적으로 또는 통신 네트워크를 통해 하나 이상의 디바이스들과 무선으로 통신할 수도 있다. 예를 들어, 무선 통신 시스템(146)은 3G 셀룰러 통신, 예컨대 CDMA, EVDO, GSM/GPRS, 또는 4G 셀룰러 통신, 예컨대 WiMAX 또는 LTE를 사용할 수 있다. 대안적으로, 무선 통신 시스템(146)은 WiFi 또는 다른 가능한 커넥션들을 사용하여 무선 로컬 영역 네트워크(WLAN)와 통신할 수도 있다. 무선 통신 시스템(146)은 또한, 예를 들어, 적외선 링크, 블루투스, 또는 지그비(ZigBee)를 사용하여 디바이스와 직접적으로 통신할 수도 있다. 다양한 차량 통신 시스템들과 같은 다른 무선 프로토콜들이 본 개시내용의 맥락 내에서 가능하다. 예를 들어, 무선 통신 시스템(146)은, 차량들 및/또는 노변 스테이션(roadside station)들 사이의 공중 및/또는 사설 데이터 통신들을 포함할 수 있는 하나 이상의 전용 단거리 통신(dedicated short-range communications)(DSRC) 디바이스들을 포함할 수도 있다.
차량(100)은, 컴포넌트들에 전력공급하기 위한 전원(110)을 포함할 수도 있다. 전원(110)은 일부 구현들에서 재충전가능 리튬 이온 또는 납산 배터리를 포함할 수도 있다. 예를 들어, 전원(110)은, 전기 전력을 제공하도록 구성되는 하나 이상의 배터리들을 포함할 수도 있다. 차량(100)은 또한 다른 타입들의 전원들을 사용할 수도 있다. 예시적인 구현에서, 전원(110) 및 에너지 소스(119)는 단일 에너지 소스로 통합될 수도 있다.
차량(100)은, 본 명세서에서 설명되는 동작들과 같은 동작들을 수행하기 위한 컴퓨터 시스템(112)을 또한 포함할 수도 있다. 이와 같이, 컴퓨터 시스템(112)은, 데이터 스토리지(114)와 같은 비일시적 컴퓨터 판독가능 매체에 저장되는 명령어들(115)을 실행하도록 동작가능한 적어도 하나의 프로세서(113)(적어도 하나의 마이크로프로세서를 포함할 수 있음)를 포함할 수도 있다. 일부 구현들에서, 컴퓨터 시스템(112)은, 분산된 방식으로 차량(100)의 개별 컴포넌트들 또는 서브시스템들을 제어하도록 기능할 수도 있는 복수의 컴퓨팅 디바이스들을 나타낼 수도 있다.
일부 구현들에서, 데이터 스토리지(114)는, 도 1과 관련하여 상술된 것들을 포함하는, 차량(100)의 다양한 기능들을 실행하기 위해 프로세서(113)에 의해 실행가능한 명령어들(115)(예를 들어, 프로그램 로직)을 포함할 수도 있다. 데이터 스토리지(114)는, 추진 시스템(102), 센서 시스템(104), 제어 시스템(106), 및 주변기기들(108) 중 하나 이상으로 데이터를 송신하거나, 이들로부터 데이터를 수신하거나, 이들과 상호작용하거나, 그리고/또는 이들을 제어하기 위한 명령어들을 포함하는, 부가적인 명령어들을 또한 포함할 수도 있다.
명령어들(115)에 부가적으로, 데이터 스토리지(114)는, 다른 정보 중에서도, 차도 맵들, 경로 정보와 같은 데이터를 저장할 수도 있다. 그러한 정보는 자율, 반자율, 및/또는 수동 모드들에서 차량(100)의 동작 동안 차량(100) 및 컴퓨터 시스템(112)에 의해 사용될 수도 있다.
차량(100)은, 차량(100)의 사용자에게 정보를 제공하거나 또는 그 사용자로부터 입력을 수신하기 위한 사용자 인터페이스(116)를 포함할 수도 있다. 사용자 인터페이스(116)는 터치스크린(148) 상에 디스플레이될 수 있는 인터랙티브 이미지들의 콘텐츠 및/또는 레이아웃을 제어하거나 또는 이들의 제어를 가능하게 할 수도 있다. 추가로, 사용자 인터페이스(116)는, 무선 통신 시스템(146), 터치스크린(148), 마이크로폰(150), 및 스피커(152)와 같은, 주변기기들(108)의 세트 내의 하나 이상의 입/출력 디바이스들을 포함할 수 있다.
컴퓨터 시스템(112)은 사용자 인터페이스(116)로부터뿐만 아니라 다양한 서브시스템들(예를 들어, 추진 시스템(102), 센서 시스템(104), 및 제어 시스템(106))로부터 수신되는 입력들에 기초하여 차량(100)의 기능을 제어할 수도 있다. 예를 들어, 컴퓨터 시스템(112)은 추진 시스템(102) 및 제어 시스템(106)에 의해 생성되는 출력을 추정하기 위해 센서 시스템(104)으로부터의 입력을 이용할 수도 있다. 구현에 따라, 컴퓨터 시스템(112)은 차량(100) 및 그의 서브시스템들의 많은 양태들을 모니터링하도록 동작가능할 수 있다. 일부 구현들에서, 컴퓨터 시스템(112)은 센서 시스템(104)으로부터 수신되는 신호들에 기초하여 차량(100)의 일부 또는 모든 기능들을 디스에이블시킬 수도 있다.
차량(100)의 컴포넌트들은 이들의 각각의 시스템들 내의 또는 외측의 다른 컴포넌트들과 상호연결된 방식으로 작동하도록 구성될 수 있다. 예를 들어, 예시적인 구현에서, 카메라(130)는 자율 모드에서 동작하는 차량(100)의 환경의 상태에 관한 정보를 나타낼 수 있는 복수의 이미지들을 캡처할 수 있다. 환경의 상태는, 차량이 동작하고 있는 도로의 파라미터들을 포함할 수 있다. 예를 들어, 컴퓨터 비전 시스템(140)은 차도의 복수의 이미지들에 기초하여 기울기(등급) 또는 다른 피처들을 인식하는 것이 가능할 수도 있다. 부가적으로, GPS(122)와 컴퓨터 비전 시스템(140)에 의해 인식되는 피처들의 조합은 특정 도로 파라미터들을 결정하기 위해 데이터 스토리지(114)에 저장되는 맵 데이터와 함께 사용될 수도 있다. 추가로, 레이더 유닛(126)은 차량의 주변들에 관한 정보를 또한 제공할 수도 있다.
다시 말해, 다양한 센서들(입력-표시 및 출력-표시 센서들로 지칭될 수 있음) 및 컴퓨터 시스템(112)의 조합은 차량의 주변들의 표시 또는 차량을 제어하기 위해 제공되는 입력의 표시를 제공하도록 상호작용할 수 있다.
일부 구현들에서, 컴퓨터 시스템(112)은 라디오 시스템 이외의 시스템들에 의해 제공되는 데이터에 기초하여 다양한 객체들에 관한 결정을 행할 수도 있다. 예를 들어, 차량(100)은, 차량의 시야에서의 객체들을 감지하도록 구성되는 레이저들 또는 다른 광학 센서들을 가질 수도 있다. 컴퓨터 시스템(112)은 차량의 시야에서의 객체들에 관한 정보를 결정하기 위해 다양한 센서들로부터의 출력들을 사용할 수도 있고, 다양한 객체들에 대한 거리 및 방향 정보를 결정할 수도 있다. 컴퓨터 시스템(112)은 다양한 센서들로부터의 출력들에 기초하여 객체들이 바람직한지 또는 바람직하지 않은지 여부를 또한 결정할 수도 있다.
도 1은, 차량(100)에 통합되는 것으로, 차량(100)의 다양한 컴포넌트들, 즉, 무선 통신 시스템(146), 컴퓨터 시스템(112), 데이터 스토리지(114), 및 사용자 인터페이스(116)를 도시하지만, 이들 컴포넌트들 중 하나 이상은 차량(100)과는 별개로 장착 또는 연관될 수 있다. 예를 들어, 데이터 스토리지(114)는, 부분적으로 또는 전체적으로, 차량(100)으로부터 분리되어 존재할 수 있다. 따라서, 차량(100)은 별개로 또는 함께 위치될 수도 있는 디바이스 요소들의 형태로 제공될 수 있다. 차량(100)을 구성하는 디바이스 요소들은 유선 및/또는 무선 방식으로 함께 통신가능하게 커플링될 수 있다.
도 2는, 도 1을 참조하여 설명되는 차량(100)의 하나의 가능한 물리적 구성을 나타낼 수도 있는, 차량(200)의 예시적인 물리적 구성을 묘사한다. 구현에 따라, 차량(200)은, 다른 가능한 컴포넌트들 중에서도, 센서 유닛(202), 무선 통신 시스템(204), 라디오 유닛(206), 디플렉터(deflector)들(208), 및 카메라(210)를 포함할 수도 있다. 예를 들어, 차량(200)은 도 1에 설명된 컴포넌트들의 요소들의 일부 또는 전부를 포함할 수도 있다. 차량(200)은 도 2에 승용차로서 묘사되어 있지만, 차량(200)은, 다른 가능한 예들 중에서도, 트럭, 밴, 세미-트레일러 트럭, 모터사이클, 골프 카트, 노상외주행차량(off-road vehicle), 또는 농장 차량과 같은, 예들 내의 다른 구성들을 가질 수 있다.
센서 유닛(202)은, 차량(200)의 주변 환경의 정보를 캡처하도록 구성되는 하나 이상의 센서들을 포함할 수도 있다. 예를 들어, 센서 유닛(202)은, 다른 가능한 타입들의 센서들 중에서도, 카메라들, 레이더들, LIDAR들, 거리 측정기들, 라디오 디바이스들(예를 들어, 블루투스 및/또는 802.11), 및 음향 센서들의 임의의 조합을 포함할 수도 있다. 일부 구현들에서, 센서 유닛(202)은, 센서 유닛(202)에서의 센서들의 배향을 조정하도록 동작가능한 하나 이상의 이동가능 마운트들을 포함할 수도 있다. 예를 들어, 이동가능 마운트는, 차량(200) 주위의 각각의 방향으로부터 정보를 획득하도록 센서들을 스캐닝할 수 있는 회전 플랫폼을 포함할 수도 있다. 센서 유닛(202)의 이동가능 마운트는 각도들 및/또는 방위각들의 특정 범위 내에서 스캐닝 방식으로 또한 이동가능할 수도 있다.
일부 구현들에서, 센서 유닛(202)은, 센서 유닛(202)이 승용차의 루프의 정상에 장착되는 것을 가능하게 하는 기계적 구조체들을 포함할 수도 있다. 부가적으로, 다른 장착 위치들이 예들 내에서 가능하다.
무선 통신 시스템(204)은 도 2에 묘사된 바와 같은 차량(200)에 대한 위치를 가질 수도 있지만, 구현들 내에서 상이한 위치들을 또한 가질 수 있다. 무선 통신 시스템(200)은, 다른 외부 또는 내부 디바이스들과 통신할 수도 있는 하나 이상의 수신기들 및 하나 이상의 무선 송신기들을 포함할 수도 있다. 예를 들어, 무선 통신 시스템(204)은, 다른 가능한 엔티티들 중에서도, 사용자의 디바이스, 다른 차량들, 및 차도 요소들(예를 들어, 표지들, 교통 신호등(traffic signal)들)과 통신하기 위한 하나 이상의 트랜시버들을 포함할 수도 있다. 이와 같이, 차량(200)은, 통신들, 예컨대 전용 단거리 통신(DSRC), 라디오 주파수 식별(radio frequency identification)(RFID), 및 지능형 수송 시스템들을 향해 지향되는 다른 제안된 통신 표준들을 용이하게 하기 위한 하나 이상의 차량 통신 시스템들을 포함할 수도 있다.
카메라(210)는, 차량(200)의 전방 윈드실드 상의 위치와 같은, 차량(200)에 대한 다양한 포지션들을 가질 수도 있다. 이와 같이, 카메라(210)는 차량(200)의 환경의 이미지들을 캡처할 수도 있다. 도 2에 예시된 바와 같이, 카메라(210)는 차량(200)에 대해 전방에서 보이는 뷰로부터 이미지들을 캡처할 수도 있지만, 카메라(210)의 다른 장착 위치들(이동가능 마운트들을 포함함) 및 뷰잉 각도들이 구현들 내에서 가능하다. 일부 예들에서, 카메라(210)는 하나 이상의 가시광 카메라들에 대응할 수도 있다. 대안적으로 또는 부가적으로, 카메라(210)는 적외선 감지 능력들을 포함할 수도 있다. 카메라(210)는, 조정가능한 시야를 제공할 수도 있는 옵틱(optic)들을 또한 포함할 수도 있다.
도 3a는 예시적인 구현에 따른, 자율 차량과 관련된 다양한 컴퓨팅 시스템들 사이의 무선 통신의 개념적 예시이다. 특히, 무선 통신은 네트워크(304)를 통해 원격 컴퓨팅 시스템(302)과 차량(200) 사이에서 발생할 수도 있다. 무선 통신은 또한 서버 컴퓨팅 시스템(306)과 원격 컴퓨팅 시스템(302) 사이에서, 그리고 서버 컴퓨팅 시스템(306)과 차량(200) 사이에서 발생할 수도 있다.
차량(200)은 위치들 사이에서 승객들 또는 객체들을 수송하는 것이 가능한 다양한 타입들의 차량들에 대응할 수 있고, 상기에 논의된 차량들 중 임의의 하나 이상의 차량의 형태를 취할 수도 있다. 일부 경우들에서, 차량(200)은 센서 측정치들을 사용하여 제어 시스템이 목적지들 사이에서 차량(200)을 안전하게 내비게이팅하는 것을 가능하게 하는 자율 모드에서 동작할 수도 있다. 자율 모드에서 동작할 때, 차량(200)은 승객들의 유무에 관계없이 내비게이팅할 수도 있다. 그 결과, 차량(200)은 원하는 목적지들 사이에서 승객들을 픽업하고 하차시킬 수도 있다.
원격 컴퓨팅 시스템(302)은, 본 명세서에서 설명된 것들을 포함하지만 이에 제한되지 않는, 원격 보조 기법들과 관련된 임의의 타입의 디바이스를 나타낼 수도 있다. 예들 내에서, 원격 컴퓨팅 시스템(302)은, (i) 차량(200)과 관련된 정보를 수신하고, (ii) 인간 오퍼레이터가 차례로 정보를 인지하게 하고 정보와 관련된 응답을 입력할 수 있게 하는 인터페이스를 제공하고, (iii) 응답을 차량(200)에 또는 다른 디바이스들에 송신하도록 구성되는 임의의 타입의 디바이스를 나타낼 수도 있다. 원격 컴퓨팅 시스템(302)은 워크스테이션, 데스크톱 컴퓨터, 랩톱, 태블릿, 모바일 폰(예를 들어, 스마트 폰), 및/또는 서버와 같은 다양한 형태들을 취할 수도 있다. 일부 예들에서, 원격 컴퓨팅 시스템(302)은, 네트워크 구성에서 함께 동작하는 다수의 컴퓨팅 디바이스들을 포함할 수도 있다.
원격 컴퓨팅 시스템(302)은, 차량(200)의 서브시스템들 및 컴포넌트들과 유사한 또는 동일한 하나 이상의 서브시스템들 및 컴포넌트들을 포함할 수도 있다. 최소한, 원격 컴퓨팅 시스템(302)은, 본 명세서에서 설명되는 다양한 동작들을 수행하도록 구성되는 프로세서를 포함할 수도 있다. 일부 구현들에서, 원격 컴퓨팅 시스템(302)은, 터치스크린 및 스피커와 같은 입/출력 디바이스들을 포함하는 사용자 인터페이스를 또한 포함할 수도 있다. 다른 예들이 또한 가능하다.
네트워크(304)는, 원격 컴퓨팅 시스템(302)과 차량(200) 사이의 무선 통신을 가능하게 하는 인프라스트럭처를 나타낸다. 네트워크(304)는 또한 서버 컴퓨팅 시스템(306)과 원격 컴퓨팅 시스템(302) 사이, 그리고 서버 컴퓨팅 시스템(306)과 차량(200) 사이의 무선 통신을 가능하게 한다.
원격 컴퓨팅 시스템(302)의 포지션은 예들 내에서 변할 수 있다. 예를 들어, 원격 컴퓨팅 시스템(302)은, 네트워크(304)를 통한 무선 통신을 갖는 차량(200)으로부터의 원격 포지션을 가질 수도 있다. 다른 예에서, 원격 컴퓨팅 시스템(302)은, 차량(200)과 분리되어 있지만 인간 오퍼레이터가 차량(200)의 승객 또는 운전자가 있는 동안 상호작용할 수 있게 하는 차량(200) 내의 컴퓨팅 디바이스에 대응할 수도 있다. 일부 예들에서, 원격 컴퓨팅 시스템(302)은, 차량(200)의 승객에 의해 동작가능한 터치스크린을 갖는 컴퓨팅 디바이스일 수도 있다.
일부 구현들에서, 원격 컴퓨팅 시스템(302)에 의해 수행되는 본 명세서에서 설명되는 동작들은 차량(200)에 의해(즉, 차량(200)의 임의의 시스템(들) 또는 서브시스템(들)에 의해) 부가적으로 또는 대안적으로 수행될 수도 있다. 다시 말해, 차량(200)은 차량의 운전자 또는 승객이 상호작용할 수 있게 하는 원격 보조 메커니즘을 제공하도록 구성될 수도 있다.
서버 컴퓨팅 시스템(306)은 네트워크(304)를 통해 원격 컴퓨팅 시스템(302) 및 차량(200)과 무선으로(또는 어쩌면 원격 컴퓨팅 시스템(302) 및/또는 차량(200)과 직접적으로) 통신하도록 구성될 수도 있다. 서버 컴퓨팅 시스템(306)은, 차량(200) 및 그의 원격 보조에 관한 정보를 수신, 저장, 결정, 및/또는 전송하도록 구성되는 임의의 컴퓨팅 디바이스를 나타낼 수도 있다. 이와 같이, 서버 컴퓨팅 시스템(306)은 원격 컴퓨팅 시스템(302) 및/또는 차량(200)에 의해 수행되는 것으로 본 명세서에서 설명되는 임의의 동작(들), 또는 그러한 동작(들)의 부분들을 수행하도록 구성될 수도 있다. 원격 보조와 관련된 무선 통신의 일부 구현들은 서버 컴퓨팅 시스템(306)을 이용할 수도 있지만, 다른 구현들은 그렇지 않을 수도 있다.
서버 컴퓨팅 시스템(306)은, 원격 컴퓨팅 시스템(302) 및/또는 차량(200)의 서브시스템들 및 컴포넌트들과 유사한 또는 동일한 하나 이상의 서브시스템들 및 컴포넌트들, 예컨대 본 명세서에서 설명되는 다양한 동작들을 수행하도록 구성되는 프로세서, 및 원격 컴퓨팅 시스템(302) 및 차량(200)으로부터 정보를 수신하고 정보를 이들에게 제공하기 위한 무선 통신 인터페이스를 포함할 수도 있다.
상술된 다양한 시스템들은 다양한 동작들을 수행할 수도 있다. 이들 동작들 및 관련 피처들이 이제 설명될 것이다.
상기 논의에 따라, 컴퓨팅 시스템(예를 들어, 원격 컴퓨팅 시스템(302), 또는 어쩌면 서버 컴퓨팅 시스템(306), 또는 차량(200)에 로컬인 컴퓨팅 시스템)은 자율 차량의 환경의 이미지들을 캡처하기 위해 카메라를 사용하도록 동작할 수도 있다. 일반적으로, 적어도 하나의 컴퓨팅 시스템은 이미지들을 분석하고 가능하다면 자율 차량을 제어하는 것이 가능할 것이다.
일부 구현들에서, 자율 동작을 용이하게 하기 위해, 차량(예를 들어, 차량(200))은 다양한 방식들로 차량이 동작하는 환경에서 객체들을 나타내는 데이터(본 명세서에서는 "환경 데이터"라고도 또한 지칭됨)를 수신할 수도 있다. 차량 상의 센서 시스템은 환경의 객체들을 나타내는 환경 데이터를 제공할 수도 있다. 예를 들어, 차량은, 카메라, 레이더 유닛, 레이저 거리 측정기, 마이크로폰, 라디오 유닛, 및 다른 센서들을 포함하여, 다양한 센서들을 가질 수도 있다. 이들 센서들 각각은 각각의 센서 각각이 수신하는 정보에 관한 환경 데이터를 차량에서의 프로세서로 통신할 수도 있다.
일 예에서, 카메라는 스틸 이미지들 및/또는 비디오를 캡처하도록 구성될 수도 있다. 일부 구현들에서, 차량은, 상이한 배향들로 포지셔닝되는 하나 초과의 카메라를 가질 수도 있다. 또한, 일부 구현들에서, 카메라는 상이한 방향들로 이미지들 및/또는 비디오를 캡처하도록 이동하는 것이 가능할 수도 있다. 카메라는 차량의 프로세싱 시스템에 의한 추후의 프로세싱을 위해 캡처된 이미지들 및 비디오를 메모리에 저장하도록 구성될 수도 있다. 캡처된 이미지들 및/또는 비디오는 환경 데이터일 수도 있다. 추가로, 카메라는 본 명세서에서 설명되는 바와 같은 이미지 센서를 포함할 수도 있다.
다른 예에서, 레이더 유닛은 차량 근처의 다양한 객체들에 의해 반사될 전자기 신호를 송신한 후에, 객체들에서 반사되는 전자기 신호들을 캡처하도록 구성될 수도 있다. 캡처된 반사된 전자기 신호들은 레이더 시스템(또는 프로세싱 시스템)이 전자기 신호를 반사한 객체들에 관한 다양한 결정들을 행하는 것을 가능하게 할 수도 있다. 예를 들어, 다양한 반사 객체들에 대한 거리 및 포지션이 결정될 수도 있다. 일부 구현들에서, 차량은 상이한 배향들의 하나 초과의 레이더를 가질 수도 있다. 레이더 시스템은 차량의 프로세싱 시스템에 의한 추후의 프로세싱을 위해 캡처된 정보를 메모리에 저장하도록 구성될 수도 있다. 레이더 시스템에 의해 캡처된 정보는 환경 데이터일 수도 있다.
다른 예에서, 레이저 거리 측정기는 차량 근처의 타깃 객체들에 의해 반사될 전자기 신호(예를 들어, 가스 또는 다이오드 레이저, 또는 다른 가능한 광원으로부터의 것과 같은 광)를 송신하도록 구성될 수도 있다. 레이저 거리 측정기는 반사된 전자기(예를 들어, 레이저) 신호들을 캡처하는 것이 가능할 수도 있다. 캡처된 반사된 전자기 신호들은 거리 측정 시스템(또는 프로세싱 시스템)이 다양한 객체들에 대한 범위를 결정하는 것을 가능하게 할 수도 있다. 거리 측정 시스템은 또한 타깃 객체들의 속도 또는 속력을 결정하고 그것을 환경 데이터로서 저장하는 것이 가능할 수도 있다.
부가적으로, 일 예에서, 마이크로폰은 차량을 둘러싸는 환경의 오디오를 캡처하도록 구성될 수도 있다. 마이크로폰에 의해 캡처된 사운드들은 긴급 차량 사이렌들 및 다른 차량들의 사운드들을 포함할 수도 있다. 예를 들어, 마이크로폰은 긴급 차량의 사이렌의 사운드를 캡처할 수도 있다. 프로세싱 시스템은 캡처된 오디오 신호가 긴급 차량을 나타낸다는 것을 식별하는 것이 가능할 수도 있다. 다른 예에서, 마이크로폰은, 모터사이클로부터의 것과 같은, 다른 차량의 배기 사운드를 캡처할 수도 있다. 프로세싱 시스템은 캡처된 오디오 신호가 모터사이클을 나타낸다는 것을 식별하는 것이 가능할 수도 있다. 마이크로폰에 의해 캡처된 데이터는 환경 데이터의 일 부분을 형성할 수도 있다.
또 다른 예에서, 라디오 유닛은 블루투스 신호, 802.11 신호, 및/또는 다른 라디오 기술 신호의 형태를 취할 수도 있는 전자기 신호를 송신하도록 구성될 수도 있다. 제1 전자기 방사 신호는 라디오 유닛에 위치되는 하나 이상의 안테나들을 통해 송신될 수도 있다. 추가로, 제1 전자기 방사 신호는 많은 상이한 라디오 시그널링 모드들 중 하나로 송신될 수도 있다. 그러나, 일부 구현들에서, 자율 차량 근처에 위치되는 디바이스들로부터의 응답을 요청하는 시그널링 모드로 제1 전자기 방사 신호를 송신하는 것이 바람직하다. 프로세싱 시스템은 라디오 유닛으로 다시 통신되는 응답들에 기초하여 주변 디바이스들을 검출하고 이 통신된 정보를 환경 데이터의 일 부분으로서 사용하는 것이 가능할 수도 있다.
일부 구현들에서, 프로세싱 시스템은 차량의 환경의 추가의 결정들을 행하기 위해 다양한 센서들로부터의 정보를 조합하는 것이 가능할 수도 있다. 예를 들어, 프로세싱 시스템은 다른 차량 또는 보행자가 자율 차량의 전방에 있는지를 결정하기 위해 레이더 정보와 캡처된 이미지 양측 모두로부터의 데이터를 조합할 수도 있다. 다른 구현들에서, 환경에 관한 결정들을 행하기 위해 프로세싱 시스템에 의해 센서 데이터의 다른 조합들이 사용될 수도 있다.
자율 모드에서 동작하는 동안, 차량은 인간의 입력이 거의 내지 전혀 없이 그것의 동작을 제어할 수도 있다. 예를 들어, 인간 오퍼레이터는 차량에 주소를 입력할 수도 있고, 그 후에 차량은 인간으로부터의 추가 입력 없이(예를 들어, 인간이 브레이크/가스 페달들을 스티어링 또는 터치할 필요가 없다) 특정된 목적지로 드라이빙하는 것이 가능할 수도 있다. 추가로, 차량이 자율적으로 동작하고 있는 동안, 센서 시스템은 환경 데이터를 수신하고 있을 수도 있다. 차량의 프로세싱 시스템은 다양한 센서들로부터 수신된 환경 데이터에 기초하여 차량의 제어를 변경할 수도 있다. 일부 예들에서, 차량은 다양한 센서들로부터의 환경 데이터에 응답하여 차량의 속도를 변경할 수도 있다. 차량은 장애물들을 회피하는 것, 교통 법규들을 준수하는 것 등을 위해 속도를 변화시킬 수도 있다. 차량에서의 프로세싱 시스템이 차량 근처의 객체들을 식별할 때, 차량은 속도를 변화시키는 것, 또는 다른 방식으로 이동을 변경하는 것이 가능할 수도 있다.
차량이 객체를 검출하지만 객체의 검출에 있어서 고도로 확신하지 못할 때, 차량은 (i) 객체가 실제로 환경에 존재하는지 여부(예를 들어, 실제로 정지 표지가 있는지 또는 실제로 어떠한 정지 표지도 존재하지 않는지)를 확인하는 것, (ii) 차량의 객체 식별이 올바른지 여부를 확인하는 것, (iii) 식별이 올바르지 않은 경우 식별을 정정하는 것 및/또는 (iv) 자율 차량에 대한 보충 명령어를 제공(또는 현재 명령어를 수정)하는 것과 같은 하나 이상의 원격 보조 태스크들을 수행하도록 인간 오퍼레이터(또는 더 강력한 컴퓨터)에게 요청할 수 있다. 원격 보조 태스크들은, 인간 오퍼레이터가 차량의 동작을 제어(예를 들어, 인간 오퍼레이터가 객체가 정지 표지라고 결정한 경우 정지 표지에서 정지하도록 차량에게 명령)하기 위한 명령어를 제공하는 것을 또한 포함할 수도 있지만, 일부 시나리오들에서는, 차량 자체가 객체의 식별과 관련된 인간 오퍼레이터의 피드백에 기초하여 그 자신의 동작을 제어할 수도 있다.
차량은 환경 데이터의 소스에 따라 다양한 방식으로 환경의 객체들을 검출할 수도 있다. 일부 구현들에서, 환경 데이터는 카메라로부터 발생되고 이미지 또는 비디오 데이터일 수도 있다. 다른 구현들에서, 환경 데이터는 LIDAR 유닛으로부터 발생될 수도 있다. 차량은 이미지 또는 비디오 데이터에서 객체들을 식별하기 위해 캡처된 이미지 또는 비디오 데이터를 분석할 수도 있다. 방법들 및 장치들은 환경의 객체들의 존재에 대해 이미지 및/또는 비디오 데이터를 모니터링하도록 구성될 수도 있다. 다른 구현들에서, 환경 데이터는 레이더, 오디오, 또는 다른 데이터일 수도 있다. 차량은 레이더, 오디오, 또는 다른 데이터에 기초하여 환경의 객체들을 식별하도록 구성될 수도 있다.
일부 구현들에서, 차량이 객체들을 검출하는 데 사용하는 기법들은 알려진 데이터의 세트에 기초할 수도 있다. 예를 들어, 환경 객체들과 관련된 데이터는 차량에 위치되는 메모리에 저장될 수도 있다. 차량은 수신된 데이터를 저장된 데이터와 비교하여 객체들을 결정할 수도 있다. 다른 구현들에서, 차량은 데이터의 콘텍스트(context)에 기초하여 객체들을 결정하도록 구성될 수도 있다. 예를 들어, 건설과 관련된 거리 표지들은 일반적으로 오렌지색 컬러를 가질 수도 있다. 이에 따라, 차량은, 오렌지색이고 건설 관련 거리 표지들로서 차도변 근처에 위치되는 객체들을 검출하도록 구성될 수도 있다. 부가적으로, 차량의 프로세싱 시스템이 캡처된 데이터에서 객체들을 검출할 때, 그것은 또한 각각의 객체에 대한 신뢰도를 계산할 수도 있다.
추가로, 차량은 또한 신뢰도 임계치를 가질 수도 있다. 신뢰도 임계치는 검출되는 객체의 타입에 따라 달라질 수도 있다. 예를 들어, 다른 차량에 대한 브레이크 등(brake light)들과 같은, 차량으로부터의 빠른 응답 액션을 요구할 수도 있는 객체에 대해서는 신뢰도 임계치가 보다 낮을 수도 있다. 그러나, 다른 구현들에서, 신뢰도 임계치는 모든 검출된 객체들에 대해 동일할 수도 있다. 검출된 객체와 연관된 신뢰도가 신뢰도 임계치보다 더 클 때, 차량은 객체가 올바르게 인식되었다고 가정하고, 이에 응답하여 그 가정에 기초하여 차량의 제어를 조정할 수도 있다.
검출된 객체와 연관된 신뢰도가 신뢰도 임계치보다 더 작을 때, 차량이 취하는 액션들은 달라질 수도 있다. 일부 구현들에서, 차량은 낮은 신뢰도 레벨에도 불구하고 검출된 객체가 존재하는 것처럼 반응할 수도 있다. 다른 구현들에서, 차량은 검출된 객체가 존재하지 않는 것처럼 반응할 수도 있다.
차량이 환경의 객체를 검출할 때, 그것은 특정 검출된 객체와 연관된 신뢰도를 또한 계산할 수도 있다. 신뢰도는 구현에 따라 다양한 방식들로 계산될 수도 있다. 일 예에서, 환경의 객체들을 검출할 때, 차량은, 환경 데이터를, 알려진 객체들과 관련된 미리 결정된 데이터와 비교할 수도 있다. 환경 데이터와 미리 결정된 데이터 사이의 매치가 가까울수록, 신뢰도가 높아진다. 다른 구현들에서, 차량은 환경 데이터의 수학적 분석을 사용하여, 객체들과 연관된 신뢰도를 결정할 수도 있다.
객체가 임계치 미만인 검출 신뢰도를 갖는다는 결정에 응답하여, 차량은 객체의 식별에 대한 원격 보조에 대한 요청을 원격 컴퓨팅 시스템으로 송신할 수도 있다.
일부 구현들에서, 객체가 신뢰도 임계치 미만의 신뢰도를 갖는 것으로 검출될 때, 객체는 예비 식별이 주어질 수도 있고, 차량은 예비 식별에 응답하여 차량의 동작을 조정하도록 구성될 수도 있다. 그러한 동작 조정은, 다른 가능한 조정들 중에서도, 차량을 정지시키는 것, 차량을 인간 제어 모드로 스위칭하는 것, 차량의 속도(예를 들어, 속력 및/또는 방향)를 변화시키는 것의 형태를 취할 수도 있다.
다른 구현들에서, 차량이 임계치를 충족 또는 초과하는 신뢰도를 갖는 객체를 검출하더라도, 차량은 검출된 객체에 따라 동작할(예를 들어, 객체가 정지 표지로서 높은 신뢰도로 식별되는 경우 정지하게 될) 수도 있지만, 차량이 검출된 객체에 따라 동작할 때와 동시에(또는 그로부터 추후의 시간에) 원격 보조를 요청하도록 구성될 수도 있다.
도 3b는 예시적인 광학 시스템(340)의 예시적인 컴포넌트들을 묘사하는 단순화된 블록도를 도시한다. 이 예시적인 광학 시스템(340)은 본 명세서에서 설명되는 바와 같은 자율 차량의 광학 시스템에 대응할 수 있다. 일부 예들에서, 차량은 하나 초과의 광학 시스템(340)을 포함할 수도 있다. 예를 들어, 차량은, 센서 돔에서 차량의 상부에 장착되는 하나의 광학 시스템, 및 차량의 윈드실드 후방에 위치되는 다른 광학 시스템을 포함할 수도 있다. 다른 예들에서, 다양한 광학 시스템은 차량 전체에 걸친 다양한 상이한 포지션들에 위치될 수도 있다.
광학 시스템(340)은 하나 이상의 이미지 센서들(350), 하나 이상의 이미지 프로세서들(352), 및 메모리(354)를 포함할 수도 있다. 원하는 구성에 따라, 이미지 프로세서(들)(352)는, 마이크로프로세서(μP), 마이크로제어기(μC), 디지털 신호 프로세서(DSP), 그래픽 프로세싱 유닛(GPU), 시스템 온 칩(system on a chip)(SOC), 또는 이들의 임의의 조합을 포함하지만 이에 제한되지 않는 임의의 타입의 프로세서일 수 있다. SOC는 전통적인 마이크로프로세서, GPU, 비디오 인코더/디코더, 및 다른 컴퓨팅 컴포넌트들을 조합할 수도 있다. 게다가, 메모리(354)는, (RAM과 같은) 휘발성 메모리, (ROM, 플래시 메모리 등과 같은) 비휘발성 메모리 또는 이들의 임의의 조합을 포함하지만 이에 제한되지 않는, 현재 알려져 있거나 또는 추후에 개발될 임의의 타입의 메모리로 될 수 있다. 일부 예들에서, 메모리(354)는, 이미지 데이터를 일시적으로 저장하기 위한 메모리 캐시일 수도 있다. 일부 예들에서, 메모리(354)는 이미지 프로세서(352)를 형성하는 SOC의 일 부분으로서 통합될 수도 있다.
예시적인 실시예에서, 광학 시스템(340)은, 이미지 프로세서(들)(352)를 외부 컴퓨팅 디바이스(358)와 통신가능하게 커플링하는 시스템 버스(356)를 포함할 수도 있다. 외부 컴퓨팅 디바이스(358)는 차량 제어 프로세서(360), 메모리(362), 통신 시스템(364), 및 다른 컴포넌트들을 포함할 수도 있다. 부가적으로, 외부 컴퓨팅 디바이스(358)는 차량 자체에 위치될 수도 있지만, 광학 시스템(340)과는 별개의 시스템으로서 위치될 수도 있다. 통신 시스템(364)은 차량과 원격 컴퓨터 서버 사이에서 데이터를 통신하도록 구성된다. 부가적으로, 외부 컴퓨팅 디바이스(358)는 이미지들의 보다 긴 기간의 저장 및/또는 프로세싱을 위해 사용될 수도 있다. 외부 컴퓨팅 디바이스(358)는 광학 시스템(340)의 메모리(354)보다 더 큰 메모리로 구성될 수도 있다. 예를 들어, 외부 컴퓨팅 디바이스(358)에서의 이미지 데이터는 자율 차량의 내비게이션 시스템(예를 들어, 내비게이션 프로세서)에 의해 사용될 수도 있다.
예시적인 광학 시스템(340)은 복수의 이미지 센서들(350)을 포함한다. 일 예에서, 광학 시스템(340)은, 이미지 센서들(350)로서의 16개의 이미지 센서들 및 4개의 이미지 프로세서들(352)을 포함할 수도 있다. 이미지 센서들(350)은 루프 장착 센서 돔에 장착될 수도 있다. 16개의 이미지 센서들은 8개의 센서 쌍들로서 배열될 수도 있다. 센서 쌍들은 각각의 센서 쌍이 인접한 센서 쌍들로부터 45도로 장착된 카메라 링 상에 장착될 수도 있다. 일부 예들에서, 센서 유닛의 동작 동안, 센서 링은 회전하도록 구성될 수도 있다.
이미지 센서들(350)은 본 명세서에서 설명되는 바와 같은 이미지 프로세서들(352)에 커플링될 수도 있다. 각각의 센서 쌍 중에서, 각각의 센서는 상이한 이미지 프로세서(352)에 커플링될 수도 있다. 각각의 센서를 상이한 이미지 프로세서에 커플링함으로써, 각각의 센서 쌍에 의해 캡처된 이미지들이 동시에(또는 거의 동시에) 프로세싱될 수도 있다. 일부 예들에서, 이미지 센서들(350)은 모든 이미지 프로세서들(352)에 커플링될 수도 있다. 이미지 센서로부터 각각의 이미지 프로세서로의 이미지들의 라우팅은 독점적으로 물리적 커넥션에 의해서만이 아니라 소프트웨어에 의해 제어될 수도 있다. 일부 예들에서, 이미지 센서들(350)과 이미지 프로세서들(352) 양측 모두는 차량의 센서 돔에 위치될 수도 있다. 일부 부가적인 예들에서, 이미지 센서들(350)은 이미지 프로세서들(352) 근처에 위치될 수도 있다. 예를 들어, 이미지 센서들(350)과 이미지 프로세서들(352) 사이의 전기 거리(즉, 전기 트레이스들을 따라 측정된 바와 같은 거리)는 대략 수 인치일 수도 있다. 일 예에서, 제1 이미지 압축을 수행하는 이미지 프로세서들(352) 및 이미지 센서들(350)은 서로 6인치 내에 위치된다.
예시적인 실시예에 따르면, 광학 시스템(340)은, 도 5와 관련하여 설명되는 다양한 기능들을 포함하지만 이에 제한되지 않는 본 명세서에서 설명되는 다양한 기능들을 용이하게 하도록 이미지 프로세서(352)에 의해 실행가능하고 메모리(354)에(그리고/또는 가능하다면 다른 데이터 저장 매체에) 저장되는 프로그램 명령어들(360)을 포함할 수도 있다. 예를 들어, 이미지 및/또는 비디오 압축 알고리즘들이 메모리 (354)에 저장되고 이미지 프로세서(352)에 의해 실행될 수도 있다. 광학 시스템(340)의 다양한 컴포넌트들이 분산된 컴포넌트들로서 도시되어 있지만, 그러한 컴포넌트들 중 임의의 것이 컴퓨팅 시스템의 원하는 구성에 따라 물리적으로 통합 및/또는 분산될 수도 있다는 것이 이해되어야 한다.
도 3c는 카메라 쌍으로 배열되는 2개의 카메라들(382A 및 382B) 및 2개의 이미지 프로세서들(384A 및 384B)을 갖는 광학 시스템의 동작의 개념적 예시이다. 이 예에서, 2개의 카메라들(382A 및 382B)은 동일한 시야(예를 들어, 공통 시야(386))를 갖는다. 다른 예들에서, 2개의 카메라들(382A 및 382B)은, 유사하지만 동일하지 않은 시야들(예를 들어, 중첩된 시야들)을 가질 수도 있다. 또 다른 예들에서, 2개의 카메라들(382A 및 382B)은 완전히 상이한(예를 들어, 중첩되지 않는) 시야들을 가질 수도 있다. 이전에 논의된 바와 같이, 2개의 이미지 프로세서들(384A 및 384B)은 센서 쌍에 의해 캡처된 2개의 이미지들을 동시에 또는 거의 동시에 프로세싱하도록 구성될 수도 있다. 2개의 센서들에 의해 생성된 이미지들을 2개의 상이한 프로세서들로 라우팅함으로써, 이미지들이 병렬로 프로세싱될 수도 있다. 이미지들이 단일 프로세서로 라우팅되었다면, 이미지들은 직렬로(즉, 순차적으로) 프로세싱되었을 수도 있다.
일부 예들에서, 2개의 카메라들(382A 및 382B)은 상이한 노출들로 구성될 수도 있다. 2개의 카메라들 중 하나는 많은 양의 광으로 동작하도록 구성될 수도 있고 다른 카메라는 낮은 레벨들의 광으로 동작하도록 구성될 수도 있다. 2개의 카메라들이 장면의 이미지를 취득할 때(예를 들어, 유사한 시야의 이미지들을 취득할 때), 밤에 승용차의 헤드라이트들과 같은 일부 객체들이 밝게 보일 수도 있고, 밤에 모두 흑색으로 입은 조깅하는 사람과 같은 다른 객체들이 흐릿하게 보일 수도 있다. 차량의 자율 동작의 경우, 다가오는 승용차의 라이트들과 조깅하는 사람 양측 모두를 이미징할 수 있는 것이 바람직할 수도 있다. 단일 카메라가 광 레벨들의 큰 차이들로 인해 양측 모두를 이미징하는 것이 불가능할 수도 있다. 그러나, 카메라 쌍은, 높은 광 레벨들(예컨대, 승용차의 헤드라이트들)을 이미징할 수 있는 제1 동적 범위를 갖는 제1 카메라, 및 낮은 광 레벨들(예컨대, 모두 흑색으로 입은 조깅하는 사람)을 이미징할 수 있는 제2 동적 범위를 갖는 제2 카메라를 포함할 수도 있다. 다른 예들이 또한 가능하다.
도 4a는 차량(402)의 이미지 센서들의 배열을 예시한다. 이전에 논의된 바와 같이, 루프 장착 센서 유닛(404)은, 인접한 센서 쌍으로부터 45도 분리되어 장착되는 8개의 센서 쌍들의 카메라들을 포함할 수도 있다. 추가로, 센서 쌍들은 회전 플랫폼 및/또는 짐벌 플랫폼 상에 장착될 수도 있다. 도 4a는 차량(402) 및 8개의 센서 쌍들 각각에 대한 연관된 시야들(406)을 도시한다. 도 4a에 도시된 바와 같이, 각각의 센서 쌍은 대략 45도의 시야를 가질 수도 있다. 그에 따라, 8개의 센서 쌍들의 풀 세트는 차량 주위의 풀 360도 구역을 이미징하는 것이 가능할 수도 있다. 일부 예들에서, 센서 쌍들은, 45도보다 더 넓은 시야를 가질 수도 있다. 센서들이 더 넓은 시야를 갖는 경우, 센서들에 의해 이미징된 구역들이 중첩될 수도 있다. 센서들의 시야들이 중첩되는 예들에서, 도 4a의 시야들(406)로서 도시된 라인들은 시야들의 중첩 부분의 중심의 근사치일 수도 있다.
도 4b는 인접한 센서에 대해 45도로 장착되는 8개의 센서 쌍들(424A 내지 424H)을 갖는 링(422)의 배열을 예시한다. 센서 링은 차량의 루프 장착 센서 유닛에 위치될 수도 있다.
도 4c는 이미지 센서들의 배열을 예시한다. 도 4c의 차량(442)은, 윈드실드 후방에, 예를 들어 차량(442)의 백미러 근처(예컨대, 차량의 이동 방향을 향하는, 윈드실드의 상부에서의 중심 위치)에 장착되는 센서 유닛(444)을 가질 수도 있다. 예시적인 이미지 센서(444)는, 차량(442)으로부터의 전방에서 보이는 뷰를 이미징하도록 구성되는 3개의 이미지 센서들을 포함할 수도 있다. 센서 유닛(444)의 3개의 전방에서 보이는 센서들은, 도 4c의 파선들로 표시된 바와 같은 연관된 시야들(446)을 가질 수도 있다. 도 4a와 관련하여 논의된 바와 유사하게, 센서들은 중첩되는 시야들을 가질 수도 있고, 도 4c의 시야들(446)로서 도시된 라인들은 시야들의 중첩 부분의 중심의 근사치일 수도 있다.
일부 예들에서, 차량은 도 4a, 도 4b, 및 도 4c의 센서들 양측 모두를 포함할 수도 있다. 그에 따라, 이 예시적인 차량의 센서들의 전체 시야는 도 4a, 도 4b, 및 도 4c에 걸쳐 도시된 것들일 것이다.
이전에 논의된 바와 같이, 다른 예에서, 백미러 후방에 위치된 이미지 센서(444)의 카메라들은, 제1 해상도 및 제1 시야각 폭을 갖는 카메라 쌍을 포함할 수도 있다. 윈드실드 후방에 위치된 카메라들은, 제1 해상도보다 더 큰 해상도 및 제1 시야각 폭보다 더 큰 시야각 폭을 갖는 제3 카메라를 포함할 수도 있다. 예를 들어, 시야(446)의 좁은 시야는 카메라 쌍에 대한 것일 수도 있고, 시야(446)의 넓은 시야는 고해상도 카메라에 대한 것일 수도 있다. 일부 예들에서, 윈드실드 후방에는 고해상도 광각 뷰 카메라만이 단지 있을 수도 있다.
도 5는 예시적인 구현에 따른, 방법(500)의 흐름도이다. 방법(500)은, 블록들 502 내지 510 중 하나 이상에 의해 묘사된 바와 같은, 하나 이상의 동작들을 포함할 수도 있는 예시적인 방법을 나타내고, 이들 각각은, 다른 가능한 시스템들 중에서도, 도 1 내지 도 4b에 도시된 시스템들 중 임의의 것에 의해 수행될 수도 있다. 예시적인 구현에서, 외부 컴퓨팅 디바이스(358)와 연계된 광학 시스템(350)과 같은 컴퓨팅 시스템은 예시된 동작들을 수행하지만, 다른 구현들에서는, 하나 이상의 다른 시스템들(예를 들어, 서버 컴퓨팅 시스템(306))이 동작들의 일부 또는 전부를 수행할 수 있다.
본 기술분야의 통상의 기술자는 본 명세서에서 설명되는 흐름도들이 본 개시내용의 특정 구현들의 기능성 및 동작들을 예시한다는 것을 이해할 것이다. 이와 관련하여, 흐름도들의 각각의 블록은, 프로세스들에서 특정 논리 기능들 또는 단계들을 구현하기 위해 하나 이상의 프로세서들에 의해 실행가능한 하나 이상의 명령어들을 포함하는, 모듈, 세그먼트, 또는 프로그램 코드의 일 부분을 나타낼 수도 있다. 프로그램 코드는, 예를 들어, 디스크 또는 하드 드라이브를 포함하는 저장 디바이스와 같은, 임의의 타입의 컴퓨터 판독가능 매체 상에 저장될 수도 있다. 일부 예들에서, 프로그램 코드의 일 부분은 이전에 설명된 바와 같은 SOC에 저장될 수도 있다.
부가적으로, 각각의 블록은 프로세스들에서 특정 논리 기능들을 수행하도록 배선되는 회로부를 나타낼 수도 있다. 대안적인 구현들은 본 출원의 예시적인 구현들의 범주 내에 포함되는데, 여기서 기능들은, 본 기술분야의 통상의 기술자에 의해 이해되는 바와 같이, 수반된 기능성에 따라, 실질적으로 동시에 또는 역순으로를 포함하여, 도시된 또는 논의된 순서 이외의 순서로 실행될 수도 있다. 예들 내에서, 임의의 시스템은 다른 시스템으로 하여금 후술되는 동작들(또는 동작들의 부분들) 중 하나 이상을 수행하게 할 수도 있다.
상기 논의에 따라, 컴퓨팅 시스템(예를 들어, 광학 시스템(350), 외부 컴퓨팅 디바이스(358), 원격 컴퓨팅 시스템(302), 또는 서버 컴퓨팅 시스템(306))은 방법(500)에 의해 도시된 바와 같이 동작할 수도 있다. 도 5에 도시된 바와 같이, 블록 502에서, 시스템은 각각의 카메라 센서 각각에 대한 이미지 데이터를 생성하기 위해 광학 시스템의 복수의 센서들에 광을 제공함으로써 동작한다. 이미지 데이터는 각각의 카메라 센서의 시야에 대응한다.
이전에 논의된 바와 같이, 차량은, 광을 수신하도록 구성되는 복수의 센서들을 가질 수도 있다. 일부 예들에서, 차량은 19개의 카메라 센서들을 포함할 수도 있다. 센서들은, 상부 장착 센서 유닛에 위치되는 카메라 유닛의 8개의 카메라 쌍들을 형성하는 16개의 센서들, 및 차량의 윈드실드 후방에 위치되는 카메라 유닛을 형성하는 3개의 센서들로 배열될 수도 있다. 카메라 쌍들은, 각각이 상이한 노출을 갖는 2개의 카메라들로 구성될 수도 있다. 상이한 노출들을 갖는 2개의 카메라들을 가짐으로써, 카메라들은 시야의 밝은 영역과 어두운 영역 양측 모두를 더 정확하게 이미징하는 것이 가능할 수도 있다. 카메라 센서들의 다른 가능한 배열들이 또한 가능하다.
차량의 동작 동안, 각각의 센서는 각각의 센서의 시야로부터 광을 수신할 수도 있다. 센서들은 미리 결정된 레이트로 이미지들을 캡처할 수도 있다. 예를 들어, 이미지 센서가 초당 30개 또는 60개의 이미지들로 이미지들을 캡처할 수도 있거나, 또는 이미지 캡처가 외부 센서 또는 이벤트에 의해 잠재적으로 반복적으로 트리거될 수도 있다. 복수의 캡처된 이미지들은 비디오를 형성할 수도 있다.
블록 504에서, 시스템은 복수의 카메라 센서들에 커플링되는 복수의 이미지 프로세싱 유닛들에 의해 이미지 데이터를 압축함으로써 동작한다. 이전에 논의된 바와 같이, 19개의 카메라들 각각이 고정된 프레임 레이트로 이미지들을 캡처하고 있기 때문에, 시스템에 의해 캡처된 데이터의 양이 매우 클 수도 있다. 하나의 예시적인 예에서, 캡처된 각각의 이미지가 10메가픽셀인 경우, 각각의 압축되지 않은 이미지는 대략 10메가바이트 사이즈이다. 각각이 10메가바이트 이미지를 초당 60회 캡처하는 19개의 카메라들이 있는 경우, 풀 카메라 시스템은 초당 약 11.5기가바이트의 이미지 데이터를 캡처하고 있을 수도 있다. 이미지 해상도, 비트 심도, 압축 등과 같은, 이미지 캡처 시스템의 파라미터들에 따라, 이미지의 사이즈가 달라질 수도 있다. 일부 예들에서, 이미지 파일은 10메가바이트보다 훨씬 더 클 수도 있다. 카메라 시스템에 의해 캡처된 데이터의 양은 차량의 다양한 프로세싱 컴포넌트들을 저장 및 라우팅하기에 실용적이지 않을 수도 있다. 그에 따라, 시스템은 이미징 시스템의 데이터 사용량을 감소시키기 위해 일부 이미지 프로세싱 및/또는 압축을 포함할 수도 있다.
이미징 시스템의 데이터 사용량을 감소시키기 위해, 이미지 센서들은 이미지 프로세싱을 행하도록 구성되는 프로세서에 커플링될 수도 있다. 이미지 프로세싱은 이미지 압축을 포함할 수도 있다. 많은 양의 데이터 때문에, 데이터의 저장, 프로세싱, 및 이동이 연산 및 메모리 집약적일 수도 있다. 시스템의 연산 및 메모리 요구들을 감소시키기 위해, 추가 프로세싱을 위해 이미지 데이터가 라우팅되기 전에, 이미지 센서 근처에 위치되는 이미지 프로세서에 의해 이미지 데이터가 압축될 수도 있다.
일부 예들에서, 이미지 프로세싱은, 각각의 이미지 센서에 대해, 카메라에 의해 캡처된 미리 결정된 수의 이미지들 중 하나를 저장하는 것을 포함할 수도 있다. 저장되지 않은 나머지 이미지들의 경우, 이미지 프로세서는 이미지들을 드롭시키고 이미지 내의 객체들의 모션과 관련된 데이터만을 단지 저장할 수도 있다. 실제로, 이미지들의 미리 결정된 수는 6개일 수도 있고, 따라서 6개의 이미지들 중 하나가 세이브될 수도 있고 나머지 5개의 이미지들은 단지 이들의 연관된 모션 데이터만이 세이브되게 될 수도 있다. 부가적으로, 이미지 프로세서는 세이브되는 이미지에 대해 일부 압축을 또한 수행하여, 시스템의 데이터 요건들을 추가로 감소시킬 수도 있다.
그에 따라, 압축 후에, 미리 결정된 레이트와 동일한 인자만큼 저장된 이미지들의 수의 감소가 있다. 저장되지 않은 이미지들의 경우, 이미지에서 검출된 객체들의 모션 데이터가 저장된다. 추가로, 저장되는 이미지가 또한 압축될 수도 있다. 일부 예들에서, 이미지는 압축된 이미지에서 객체들의 검출을 가능하게 하는 방식으로 압축될 수도 있다.
시스템 성능을 증가시키기 위해, 센서 쌍에 의해 수신된 이미지들을 동시에 또는 거의 동시에 프로세싱하는 것이 바람직할 수도 있다. 이미지들을 가능한 한 거의 동시에 프로세싱하기 위해, 센서 쌍의 각각의 센서에 의해 캡처된 이미지를 상이한 각각의 이미지 프로세서로 라우팅하는 것이 바람직할 수도 있다. 그에 따라, 센서 쌍에 의해 캡처된 2개의 이미지들은 2개의 상이한 이미지 프로세서들에 의해 동시에 또는 거의 동시에 프로세싱될 수도 있다. 일부 예들에서, 이미지 프로세서는 이미지 센서들에 물리적으로 가까이 근접하여 위치될 수도 있다. 예를 들어, 차량의 센서 돔에 위치되는 4개의 이미지 프로세서들이 있을 수도 있다. 부가적으로, 하나 또는 2개의 이미지 프로세서들이 전방에서 보이는 이미지 센서들 근처에 위치될 수도 있다.
블록 506에서, 시스템은 복수의 이미지 프로세싱 유닛들로부터의 압축된 이미지 데이터를 컴퓨팅 시스템으로 통신함으로써 동작한다. 이미지 프로세서들은 차량의 데이터 버스에 커플링될 수도 있다. 데이터 버스는 프로세싱된 이미지 데이터를 차량의 다른 컴퓨팅 시스템으로 통신할 수도 있다. 예를 들어, 이미지 데이터는 자율 차량의 동작을 제어하도록 구성되는 프로세싱 시스템에 의해 사용될 수도 있다. 데이터 버스는 광학, 동축, 및 또는 연선 통신 경로를 통해 동작할 수도 있다. 데이터 버스의 대역폭은 프로세싱된 이미지 데이터를 부가적인 통신을 위한 얼마간의 오버헤드로 통신하기에 충분할 수도 있다. 그러나, 이미지 데이터가 프로세싱되지 않은 경우, 데이터 버스는, 모든 캡처된 이미지 데이터를 통신하기에 충분한 대역폭을 갖지 않을 수도 있다. 그에 따라, 본 시스템은 전통적인 이미지 프로세싱 시스템의 프로세싱 및 데이터 이동 요건들 없이도 고품질 카메라 시스템에 의해 캡처된 정보를 이용하는 것이 가능할 수도 있다.
데이터 버스는 차량 전체에 걸쳐 위치되는 다양한 광학 시스템들(이미지 프로세서들을 포함함)을 부가적인 컴퓨팅 시스템에 연결한다. 부가적인 컴퓨팅 시스템은 데이터 스토리지 및 차량 제어 시스템 양측 모두를 포함할 수도 있다. 따라서, 데이터 버스는, 이미지 데이터가 캡처되고 프로세싱되는 광학 시스템들로부터, 자율 제어와 같은 자율 차량 기능들을 제어하는 것이 가능할 수도 있는 컴퓨팅 시스템으로 압축된 이미지 데이터를 이동시키도록 기능한다.
블록 508에서, 시스템은 압축된 이미지 데이터를 컴퓨팅 시스템의 메모리에 저장함으로써 동작한다. 이미지 데이터는 블록 504에서 생성된 압축 포맷으로 저장될 수도 있다. 메모리는, 광학 시스템(들)과 직접 위치되지 않는 차량의 컴퓨팅 시스템 내의 메모리일 수도 있다. 일부 부가적인 예들에서, 데이터 저장을 위해 사용되는 원격 컴퓨터 시스템에 위치되는 메모리가 있을 수도 있다. 메모리가 원격 컴퓨터 시스템에 위치되는 예들에서, 차량의 컴퓨팅 유닛은, 이미지 데이터가 원격 컴퓨팅 시스템에 무선으로 통신되게 하는 데이터 커넥션을 가질 수도 있다.
블록 510에서, 시스템은 컴퓨팅 시스템의 차량 제어 프로세서에 의해 압축된 이미지 데이터에 기초하여 장치를 제어함으로써 동작한다. 일부 예들에서, 이미지 데이터는 자율 차량에 의한 실행을 위한 차량 명령어를 결정하기 위해 차량 제어 시스템에 의해 사용될 수도 있다. 예를 들어, 차량은 자율 모드에서 동작하고 있고, 이미지에서 캡처된 객체 또는 정보에 기초하여 그것의 동작을 변경할 수도 있다. 일부 예들에서, 이미지 데이터는 차량 제어 명령어를 결정하기 위해 원격 컴퓨팅 시스템과 같은 상이한 제어 시스템과 관련될 수도 있다. 자율 차량은 원격 컴퓨팅 시스템으로부터 명령어를 수신하고 이에 응답하여 그것의 자율 동작을 변경할 수도 있다.
장치는 컴퓨팅 시스템이 캡처된 이미지 데이터의 객체 및/또는 피처들을 인식하는 것에 기초하여 제어될 수도 있다. 컴퓨팅 시스템은 장애물들을 인식하고 이들을 회피할 수도 있다. 컴퓨팅 시스템은 차량의 안전한 자율 동작을 가능하게 하기 위해 차도 마킹들 및/또는 교통 제어 신호들을 또한 인식할 수도 있다. 컴퓨팅 시스템은 다양한 다른 방식들로 장치를 또한 제어할 수도 있다.
도 6은 예시적인 구현에 따른, 컴퓨터 프로그램의 개략도이다. 일부 구현들에서, 개시된 방법들은 머신 판독가능 포맷으로 비일시적 컴퓨터 판독가능 저장 매체들 상에서, 또는 다른 비일시적 매체들 또는 제조 물품들 상에서 인코딩되는 컴퓨터 프로그램 명령어들로서 구현될 수도 있다.
예시적인 구현에서, 컴퓨터 프로그램 제품(600)이 신호 베어링 매체(602)를 사용하여 제공되는데, 이 신호 베어링 매체(602)는, 하나 이상의 프로세서들에 의해 실행될 때, 도 1 내지 도 5와 관련하여 상술된 기능성 또는 그 기능성의 부분들을 제공할 수도 있는 하나 이상의 프로그래밍 명령어들(604)을 포함할 수도 있다. 일부 예들에서, 신호 베어링 매체(602)는 하드 디스크 드라이브, CD, DVD, 디지털 테이프, 메모리, 원격으로 (예를 들어, 클라우드 상에) 저장하기 위한 컴포넌트들 등과 같은(그러나 이에 제한되지 않음) 비일시적 컴퓨터 판독가능 매체(606)를 포괄할 수도 있다. 일부 구현들에서, 신호 베어링 매체(602)는 메모리, 판독/기입(R/W) CD들, R/W DVD들 등과 같은(그러나 이에 제한되지 않음) 컴퓨터 기록가능 매체(608)를 포괄할 수도 있다. 일부 구현들에서, 신호 베어링 매체(602)는 디지털 및/또는 아날로그 통신 매체(예를 들어, 광섬유 케이블, 도파관, 유선 통신 링크, 무선 통신 링크 등)와 같은(그러나 이에 제한되지 않음) 통신 매체(610)를 포괄할 수도 있다. 유사하게, 신호 베어링 매체(602)는 원격 스토리지(예를 들어, 클라우드)에 대응할 수도 있다. 컴퓨팅 시스템은, 정보를 전송 또는 수신하는 것을 포함하여, 정보를 클라우드와 공유할 수도 있다. 예를 들어, 컴퓨팅 시스템은 센서들 또는 다른 엔티티로부터 획득되는 정보를 증대시키기 위해 클라우드로부터 부가적인 정보를 수신할 수도 있다. 따라서, 예를 들어, 신호 베어링 매체(602)는 통신 매체(610)의 무선 형태에 의해 전달될 수도 있다.
하나 이상의 프로그래밍 명령어들(604)은, 예를 들어, 컴퓨터 실행가능 그리고/또는 로직 구현 명령어들일 수도 있다. 일부 예들에서, 도 1의 컴퓨터 시스템(112) 또는 도 3a의 원격 컴퓨팅 시스템(302) 그리고 어쩌면 서버 컴퓨팅 시스템(306) 또는 도 3b의 프로세서들 중 하나와 같은 컴퓨팅 디바이스는 컴퓨터 판독가능 매체(606), 컴퓨터 기록가능 매체(608), 및/또는 통신 매체(610) 중 하나 이상에 의해 컴퓨터 시스템(112)에 전달되는 프로그래밍 명령어들(604)에 응답하여 다양한 동작들, 기능들, 또는 액션들을 제공하도록 구성될 수도 있다.
비일시적 컴퓨터 판독가능 매체는, 서로 원격으로 위치될 수 있는 다수의 데이터 저장 요소들 및/또는 클라우드 중에서 (예를 들어, 원격으로) 또한 분산될 수 있다. 저장된 명령어들의 일부 또는 전부를 실행하는 컴퓨팅 디바이스는 도 2에 예시된 차량(200)과 같은 차량일 수 있다. 대안적으로, 저장된 명령어들의 일부 또는 전부를 실행하는 컴퓨팅 디바이스는 서버와 같은 다른 컴퓨팅 디바이스일 수 있다.
상기의 상세한 설명은 첨부 도면들을 참조하여 개시된 시스템들, 디바이스들, 및 방법들의 다양한 피처들 및 동작들을 설명한다. 다양한 양태들 및 실시예들이 본 명세서에 개시되었지만, 다른 양태들 및 실시예들이 명백해질 것이다. 본 명세서에 개시된 다양한 양태들 및 실시예들은 예시의 목적들을 위한 것이고 제한하려는 것으로 의도된 것이 아니며, 진정한 범주는 다음의 청구범위에 의해 나타내어진다.

Claims (20)

  1. 장치로서,
    광학 시스템 - 상기 광학 시스템은:
    복수의 카메라 센서들 - 각각의 카메라 센서는 각각의 카메라 센서의 각각의 시야(field of view)의 각각의 이미지 데이터를 생성함 -;
    상기 복수의 카메라 센서들에 커플링되는 복수의 이미지 프로세싱 유닛들 - 상기 이미지 프로세싱 유닛들은 상기 카메라 센서들에 의해 캡처된 이미지 데이터를 압축하도록 구성되고, 상기 이미지 프로세싱 유닛들은 상기 카메라 센서들의 6인치의 전기 거리(electrical distance) 내에 위치됨 -
    로 구성됨 -; 및
    컴퓨팅 시스템 - 상기 컴퓨팅 시스템은:
    상기 압축된 이미지 데이터를 저장하도록 구성되는 메모리;
    상기 압축된 이미지 데이터에 기초하여 차량을 제어하도록 구성되는 차량 제어 프로세서
    로 구성됨 -,
    상기 광학 시스템과 상기 컴퓨팅 시스템 사이에서 상기 압축된 이미지 데이터를 통신하도록 구성되는 데이터 버스
    를 포함하는, 장치.
  2. 제1항에 있어서,
    상기 데이터 버스는, 상기 압축된 이미지 데이터의 대역폭 이상인 대역폭을 가지며, 상기 데이터 버스의 대역폭은, 프로세싱되지 않은 이미지 데이터의 상기 송신을 위한 대역폭 미만인, 장치.
  3. 제2항에 있어서,
    상기 복수의 카메라 센서들은, 8개의 센서 쌍들로 배열되는 카메라 센서들을 포함하고, 상기 8개의 센서 쌍들은 원형 링으로 배열되는, 장치.
  4. 제3항에 있어서,
    상기 원형 링은 회전하도록 구성되는, 장치.
  5. 제2항에 있어서,
    센서 쌍의 각각의 카메라 센서는 상기 센서 쌍의 다른 카메라 센서와는 상이한 이미지 프로세싱 유닛에 커플링되는, 장치.
  6. 제1항에 있어서,
    상기 이미지 프로세싱 유닛은 복수의 이미지들에서 하나 이상의 이미지들의 제1 세트를 유지하고 상기 복수의 이미지들에서 하나 이상의 이미지들의 제2 세트와 연관된 모션 데이터를 추출함으로써 상기 복수의 이미지들을 압축하도록 구성되는, 장치.
  7. 제1항에 있어서,
    상기 광학 시스템은 상기 차량의 센서 돔에 장착되는, 장치.
  8. 제1항에 있어서,
    상기 광학 시스템은 상기 차량의 윈드실드(windshield) 후방에 장착되는, 장치.
  9. 방법으로서,
    각각의 카메라 센서 각각에 대한 각각의 시야에 대응하는 이미지 데이터를 생성하기 위해 광학 시스템의 복수의 카메라 센서들에 광을 제공하는 단계;
    상기 복수의 카메라 센서들에 커플링되는 복수의 이미지 프로세싱 유닛들에 의해 상기 이미지 데이터를 압축하는 단계 - 상기 이미지 프로세싱 유닛들은 상기 카메라 센서들의 6인치의 전기 거리 내에 위치됨 -;
    상기 복수의 이미지 프로세싱 유닛들로부터의 상기 압축된 이미지 데이터를 컴퓨팅 시스템으로 통신하는 단계;
    상기 압축된 이미지 데이터를 상기 컴퓨팅 시스템의 메모리에 저장하는 단계; 및
    상기 컴퓨팅 시스템의 차량 제어 프로세서에 의해 상기 압축된 이미지 데이터에 기초하여 차량을 제어하는 단계
    를 포함하는, 방법.
  10. 제9항에 있어서,
    2개의 카메라 센서들을 포함하는 센서 쌍에 의해 2개의 이미지들을 캡처하는 단계를 더 포함하는, 방법.
  11. 제10항에 있어서,
    상기 센서 쌍의 각각의 카메라 각각에 의해 캡처된 이미지들은 상이한 이미지 프로세싱 유닛들로 통신되고, 상기 복수의 이미지 프로세싱 유닛들에 의해 상기 이미지 데이터를 압축하는 단계는, 상이한 각각의 이미지 프로세싱 유닛이 상기 센서 쌍의 각각의 카메라 센서로부터의 이미지 데이터를 압축하는 단계를 포함하는, 방법.
  12. 제11항에 있어서,
    상기 상이한 이미지 프로세싱 유닛들은 상기 센서 쌍으로부터 수신된 이미지들을 동시에 또는 거의 동시에 프로세싱하도록 구성되는, 방법.
  13. 제8항에 있어서,
    상기 이미지 데이터를 압축하는 단계는, 상기 복수의 이미지들에서 하나 이상의 이미지들의 제1 세트를 유지하고 상기 복수의 이미지들에서 하나 이상의 이미지들의 제2 세트와 연관된 모션 데이터를 추출하는 단계를 포함하는, 방법.
  14. 제8항에 있어서,
    상기 이미지 데이터를 압축하는 단계는, 제1 이미지를 참조 이미지로서 저장하고 후속 이미지들에 대한 상기 참조 이미지에 대한 변화들과 관련된 데이터를 저장하는 단계, 및 임계치가 충족된 후에 새로운 참조 이미지를 저장하는 단계를 포함하는, 방법.
  15. 차량으로서,
    루프 장착 센서 유닛(roof-mounted sensor unit) - 상기 루프 장착 센서 유닛은:
    제1 복수의 카메라 센서들로 구성되는 제1 광학 시스템 - 상기 제1 복수의 카메라 센서들의 각각의 카메라 센서는 각각의 카메라 센서의 각각의 시야의 각각의 이미지 데이터를 생성함 -,
    상기 제1 복수의 카메라 센서들에 커플링되는 복수의 제1 이미지 프로세싱 유닛들 - 상기 제1 이미지 프로세싱 유닛들은 상기 제1 복수의 카메라 센서들에 의해 캡처된 이미지 데이터를 압축하도록 구성됨 -
    을 포함함 -,
    제2 카메라 유닛 - 상기 제2 카메라 유닛은:
    제2 복수의 카메라 센서들로 구성되는 제2 광학 시스템 - 상기 제2 복수의 카메라 센서들의 각각의 카메라 센서는 각각의 카메라 센서의 각각의 시야의 각각의 이미지 데이터를 생성함 -,
    상기 제2 복수의 카메라 센서들에 커플링되는 복수의 제2 이미지 프로세싱 유닛들 - 상기 제2 이미지 프로세싱 유닛들은 상기 제2 복수의 카메라 센서들에 의해 캡처된 이미지 데이터를 압축하도록 구성됨 -
    을 포함함 -,
    상기 루프 장착 센서 유닛의 외측에서 상기 차량에 위치되는 컴퓨팅 시스템 - 상기 컴퓨팅 시스템은:
    상기 압축된 이미지 데이터를 저장하도록 구성되는 메모리;
    상기 압축된 이미지 데이터에 기초하여 상기 차량을 제어하도록 구성되는 제어 시스템
    을 포함함 -; 및
    상기 루프 장착 센서 유닛, 상기 제2 카메라 유닛, 및 상기 컴퓨팅 시스템 사이에서 상기 압축된 이미지 데이터를 통신하도록 구성되는 데이터 버스
    를 포함하는, 차량.
  16. 제15항에 있어서,
    상기 제1 복수의 카메라 센서들은, 8개의 센서 쌍들로 배열되는 카메라 센서들을 포함하고, 상기 8개의 센서 쌍들은 원형 링으로 배열되는, 차량.
  17. 제16항에 있어서,
    상기 원형 링은 회전하도록 구성되는, 차량.
  18. 제16항에 있어서,
    각각의 센서 쌍은, 휘도 레벨들의 제1 범위에 대응하는 제1 동적 범위로 장면을 이미징하도록 구성되는 제1 카메라 센서, 및 휘도 레벨들의 제2 범위에 대응하는 제2 동적 범위로 상기 장면을 이미징하도록 구성되는 제2 카메라 센서를 포함하고, 휘도 레벨들의 상기 제2 범위는, 휘도 레벨들의 상기 제1 범위보다 더 높은 휘도 레벨들을 포함하는, 차량.
  19. 제16항에 있어서,
    센서 쌍의 각각의 카메라 센서는 상기 센서 쌍의 다른 카메라 센서와는 상이한 이미지 프로세싱 유닛에 커플링되는, 차량.
  20. 제15항에 있어서,
    상기 이미지 프로세싱 유닛들은 상기 복수의 이미지들에서 하나 이상의 이미지들의 제1 세트를 유지하고 상기 복수의 이미지들에서 하나 이상의 이미지들의 제2 세트와 연관된 모션 데이터를 추출함으로써 이미지들을 압축하도록 구성되는, 차량.
KR1020207021039A 2017-12-29 2018-12-11 고속 이미지 판독 및 프로세싱 KR102408837B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020227019514A KR20220082118A (ko) 2017-12-29 2018-12-11 고속 이미지 판독 및 프로세싱

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201762612294P 2017-12-29 2017-12-29
US62/612,294 2017-12-29
US16/214,589 US20190208136A1 (en) 2017-12-29 2018-12-10 High-speed image readout and processing
US16/214,589 2018-12-10
PCT/US2018/064972 WO2019133246A1 (en) 2017-12-29 2018-12-11 High-speed image readout and processing

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020227019514A Division KR20220082118A (ko) 2017-12-29 2018-12-11 고속 이미지 판독 및 프로세싱

Publications (2)

Publication Number Publication Date
KR20200091936A true KR20200091936A (ko) 2020-07-31
KR102408837B1 KR102408837B1 (ko) 2022-06-14

Family

ID=67060101

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020207021039A KR102408837B1 (ko) 2017-12-29 2018-12-11 고속 이미지 판독 및 프로세싱
KR1020227019514A KR20220082118A (ko) 2017-12-29 2018-12-11 고속 이미지 판독 및 프로세싱

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020227019514A KR20220082118A (ko) 2017-12-29 2018-12-11 고속 이미지 판독 및 프로세싱

Country Status (10)

Country Link
US (2) US20190208136A1 (ko)
EP (1) EP3732877A4 (ko)
JP (1) JP7080977B2 (ko)
KR (2) KR102408837B1 (ko)
CN (1) CN111527745B (ko)
AU (2) AU2018395869B2 (ko)
CA (1) CA3086809C (ko)
IL (1) IL275545A (ko)
SG (1) SG11202005906UA (ko)
WO (1) WO2019133246A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022019703A1 (ko) 2020-07-23 2022-01-27 주식회사 엘지에너지솔루션 배터리를 진단하기 위한 장치 및 그 방법
KR102465191B1 (ko) * 2021-11-17 2022-11-09 주식회사 에스씨 선박의 입항 및 접안을 어시스트하는 어라운드뷰 시스템

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7156195B2 (ja) * 2019-07-17 2022-10-19 トヨタ自動車株式会社 物体認識装置
US11787288B2 (en) * 2019-07-24 2023-10-17 Harman International Industries, Incorporated Systems and methods for user interfaces in a vehicular environment
US11022972B2 (en) * 2019-07-31 2021-06-01 Bell Textron Inc. Navigation system with camera assist
US20220179066A1 (en) * 2020-10-04 2022-06-09 Digital Direct Ir, Inc. Connecting external mounted imaging and sensor devices to electrical system of a vehicle
US11880902B2 (en) * 2020-12-30 2024-01-23 Waymo Llc Systems, apparatus, and methods for enhanced image capture
EP4308430A1 (en) * 2021-03-17 2024-01-24 Argo AI, LLC Remote guidance for autonomous vehicles
US11898332B1 (en) * 2022-08-22 2024-02-13 Caterpillar Inc. Adjusting camera bandwidth based on machine operation
US20240106987A1 (en) * 2022-09-20 2024-03-28 Waymo Llc Multi-Sensor Assembly with Improved Backward View of a Vehicle

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1273180B1 (en) * 2000-03-24 2006-02-22 Reality Commerce Corporation Method and apparatus for parallel multi-viewpoint video capturing and compression
US20100118982A1 (en) * 2008-10-24 2010-05-13 Chanchal Chatterjee Method and apparatus for transrating compressed digital video
US20120287232A1 (en) * 2011-05-10 2012-11-15 Harman Becker Automotive Systems Gmbh Surround View System Camera Automatic Calibration
US20150348388A1 (en) * 2014-05-28 2015-12-03 Seth Teller Protecting roadside personnel from vehicle impacts

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3269056B2 (ja) * 2000-07-04 2002-03-25 松下電器産業株式会社 監視システム
JP3297040B1 (ja) * 2001-04-24 2002-07-02 松下電器産業株式会社 車載カメラの画像合成表示方法及びその装置
DE102004061998A1 (de) * 2004-12-23 2006-07-06 Robert Bosch Gmbh Stereokamera für ein Kraftfahrzeug
DE102006014504B3 (de) * 2006-03-23 2007-11-08 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Bilderfassungssystem für Kraft- und Schienenfahrzeuge sowie Verfahren zur elektronischen Bilderfassung
US20070242141A1 (en) * 2006-04-14 2007-10-18 Sony Corporation And Sony Electronics Inc. Adjustable neutral density filter system for dynamic range compression from scene to imaging sensor
US8471906B2 (en) * 2006-11-24 2013-06-25 Trex Enterprises Corp Miniature celestial direction detection system
CN101266132B (zh) * 2008-04-30 2011-08-10 西安工业大学 基于mpfg运动矢量的行车障碍检测方法
JP2010154478A (ja) * 2008-12-26 2010-07-08 Fujifilm Corp 複眼撮像装置及びその合成画像生成方法
DE102009016580A1 (de) * 2009-04-06 2010-10-07 Hella Kgaa Hueck & Co. Datenverarbeitungssystem und Verfahren zum Bereitstellen mindestens einer Fahrerassistenzfunktion
CN103999458A (zh) * 2011-12-16 2014-08-20 索尼公司 图像捕获设备
EP2629506A1 (en) * 2012-02-15 2013-08-21 Harman Becker Automotive Systems GmbH Two-step brightness adjustment in around-view systems
WO2014019602A1 (en) * 2012-07-30 2014-02-06 Bayerische Motoren Werke Aktiengesellschaft Method and system for optimizing image processing in driver assistance systems
JP2014081831A (ja) * 2012-10-17 2014-05-08 Denso Corp 画像情報を用いた車両用運転支援システム
US9769365B1 (en) * 2013-02-15 2017-09-19 Red.Com, Inc. Dense field imaging
KR101439013B1 (ko) * 2013-03-19 2014-09-05 현대자동차주식회사 스테레오 영상 처리 장치 및 방법
US9164511B1 (en) 2013-04-17 2015-10-20 Google Inc. Use of detected objects for image processing
US9145139B2 (en) * 2013-06-24 2015-09-29 Google Inc. Use of environmental information to aid image processing for autonomous vehicles
US10284880B2 (en) * 2014-03-07 2019-05-07 Eagle Eye Networks Inc Adaptive security camera image compression method of operation
KR101579098B1 (ko) * 2014-05-23 2015-12-21 엘지전자 주식회사 스테레오 카메라, 이를 구비한 차량 운전 보조 장치, 및 차량
CA2902675C (en) * 2014-08-29 2021-07-27 Farnoud Kazemzadeh Imaging system and method for concurrent multiview multispectral polarimetric light-field high dynamic range imaging
US9369689B1 (en) * 2015-02-24 2016-06-14 HypeVR Lidar stereo fusion live action 3D model video reconstruction for six degrees of freedom 360° volumetric virtual reality video
US9625582B2 (en) * 2015-03-25 2017-04-18 Google Inc. Vehicle with multiple light detection and ranging devices (LIDARs)
CN107637060B (zh) * 2015-05-27 2020-09-29 谷歌有限责任公司 相机装备和立体图像捕获
JP5948465B1 (ja) * 2015-06-04 2016-07-06 株式会社ファンクリエイト 映像処理システム及び映像処理方法
US9979907B2 (en) * 2015-09-18 2018-05-22 Sony Corporation Multi-layered high-dynamic range sensor
US9686478B2 (en) * 2015-11-19 2017-06-20 Google Inc. Generating high-dynamic range images using multiple filters
JP7052174B2 (ja) * 2016-01-05 2022-04-12 モービルアイ ビジョン テクノロジーズ リミテッド 将来経路を推定するシステム及び方法
US10565072B2 (en) * 2016-02-24 2020-02-18 Sony Corporation Signal processing device, signal processing method, and program
US9535423B1 (en) * 2016-03-29 2017-01-03 Adasworks Kft. Autonomous vehicle with improved visual detection ability
FR3050596B1 (fr) * 2016-04-26 2018-04-20 New Imaging Technologies Systeme imageur a deux capteurs
WO2018106970A1 (en) * 2016-12-09 2018-06-14 Formfactor, Inc. Led light source probe card technology for testing cmos image scan devices

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1273180B1 (en) * 2000-03-24 2006-02-22 Reality Commerce Corporation Method and apparatus for parallel multi-viewpoint video capturing and compression
US20100118982A1 (en) * 2008-10-24 2010-05-13 Chanchal Chatterjee Method and apparatus for transrating compressed digital video
US20120287232A1 (en) * 2011-05-10 2012-11-15 Harman Becker Automotive Systems Gmbh Surround View System Camera Automatic Calibration
US20150348388A1 (en) * 2014-05-28 2015-12-03 Seth Teller Protecting roadside personnel from vehicle impacts

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022019703A1 (ko) 2020-07-23 2022-01-27 주식회사 엘지에너지솔루션 배터리를 진단하기 위한 장치 및 그 방법
KR102465191B1 (ko) * 2021-11-17 2022-11-09 주식회사 에스씨 선박의 입항 및 접안을 어시스트하는 어라운드뷰 시스템

Also Published As

Publication number Publication date
KR20220082118A (ko) 2022-06-16
CA3086809A1 (en) 2019-07-04
AU2018395869A1 (en) 2020-07-16
IL275545A (en) 2020-08-31
CA3086809C (en) 2022-11-08
SG11202005906UA (en) 2020-07-29
CN111527745B (zh) 2023-06-16
WO2019133246A1 (en) 2019-07-04
KR102408837B1 (ko) 2022-06-14
US20190208136A1 (en) 2019-07-04
EP3732877A1 (en) 2020-11-04
AU2018395869B2 (en) 2021-09-09
AU2021282441B2 (en) 2023-02-09
AU2021282441A1 (en) 2021-12-23
US20210368109A1 (en) 2021-11-25
CN111527745A (zh) 2020-08-11
JP7080977B2 (ja) 2022-06-06
EP3732877A4 (en) 2021-10-06
JP2021509237A (ja) 2021-03-18

Similar Documents

Publication Publication Date Title
KR102408837B1 (ko) 고속 이미지 판독 및 프로세싱
US11653108B2 (en) Adjustable vertical field of view
IL275174B1 (en) Methods and systems for solar-aware vehicle routing
US10558873B2 (en) Methods and systems for controlling extent of light encountered by an image capture device of a self-driving vehicle
US20180113210A1 (en) Mountable Radar System
US11706507B2 (en) Systems, apparatus, and methods for generating enhanced images
US20240135551A1 (en) Systems, Apparatus, and Methods for Retrieving Image Data of Image Frames
US20240106987A1 (en) Multi-Sensor Assembly with Improved Backward View of a Vehicle
US12003894B1 (en) Systems, methods, and apparatus for event detection

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
A107 Divisional application of patent
GRNT Written decision to grant