KR20230104298A - 비-강성 스테레오 비전 카메라 시스템 - Google Patents

비-강성 스테레오 비전 카메라 시스템 Download PDF

Info

Publication number
KR20230104298A
KR20230104298A KR1020237021904A KR20237021904A KR20230104298A KR 20230104298 A KR20230104298 A KR 20230104298A KR 1020237021904 A KR1020237021904 A KR 1020237021904A KR 20237021904 A KR20237021904 A KR 20237021904A KR 20230104298 A KR20230104298 A KR 20230104298A
Authority
KR
South Korea
Prior art keywords
camera
stereo
calibration
parameters
camera sensors
Prior art date
Application number
KR1020237021904A
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 KR20230104298A publication Critical patent/KR20230104298A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • H04N13/246Calibration of cameras
    • 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
    • G06T7/85Stereo camera calibration
    • 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
    • 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/31Real-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 providing stereoscopic vision
    • 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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W40/00Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
    • B60W40/02Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to ambient conditions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/579Depth or shape recovery from multiple images from motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/593Depth or shape recovery from multiple images from stereo images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/90Determination of colour characteristics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/97Determining parameters from multiple pictures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • G06V20/58Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
    • G06V20/582Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads of traffic signs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • H04N13/239Image signal generators using stereoscopic image cameras using two 2D image sensors having a relative position equal to or related to the interocular distance
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • H04N13/243Image signal generators using stereoscopic image cameras using three or more 2D image sensors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • H04N13/254Image signal generators using stereoscopic image cameras in combination with electromagnetic radiation sources for illuminating objects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/271Image signal generators wherein the generated image signals comprise depth maps or disparity maps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/282Image signal generators for generating image signals corresponding to three or more geometrical viewpoints, e.g. multi-view systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/296Synchronisation thereof; Control thereof
    • 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
    • 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/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image
    • G06T2207/10012Stereo images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N2013/0074Stereoscopic image analysis
    • H04N2013/0081Depth or disparity estimation from stereoscopic image signals

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mechanical Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Mathematical Physics (AREA)
  • Transportation (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Electromagnetism (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Measurement Of Optical Distance (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
  • Studio Devices (AREA)

Abstract

비-강성 조립체들에서 사용하기에 적합한 긴 기준선 및 긴 깊이 범위의 스테레오 비전 시스템이 제공되며, 여기서, 시스템의 2개 이상의 카메라 사이의 상대적 모션은 깊이 맵의 추정치들을 저하시키기 않는다. 스테레오 비전 시스템은, 카메라 위치들에 대한 빠른 섭동 및 느린 섭동 동안에도 카메라들로부터의 이미지들을 편위수정하기 위해 시간의 함수로서 카메라 파라미터들을 추적하는 프로세서를 포함할 수 있다. 시스템의 공장 교정이 필요하지 않고, 통상의 동작 동안의 수동 교정이 필요하지 않으며, 그에 따라, 시스템의 제조가 단순화된다.

Description

비-강성 스테레오 비전 카메라 시스템{NON-RIGID STEREO VISION CAMERA SYSTEM}
관련 출원들에 대한 상호 참조
본 출원은, "Untethered Stereo Vision Camera System"이라는 명칭으로 2020년 1월 22일자로 출원된 미국 가출원 제62/964,148호를 우선권으로 주장하며, 상기 가출원의 전체 내용들은 인용에 의해 본원에 포함된다.
본 발명의 기술은 스테레오 비전 시스템들에 관한 것이다. 특히, 본 기술은, 빠른 기계적 섭동 및 느린 기계적 섭동의 존재 하에서 개선된 동작을 위한 특성들을 갖는 스테레오 비전 시스템(예컨대, 스테레오 카메라 시스템), 및 시스템의 자동교정을 위한 방법들에 관한 것이다.
스테레오 카메라 시스템들은, 삼각측량 기법들에 의해 시야 내의 객체들에 관한 3차원 정보를 취득하기 위해 사용될 수 있다.
종래의 스테레오 카메라 시스템들은, 카메라의 위치를 서로에 대해 고정시키기 위해 강성 장착 부재들을 사용할 수 있다. 예컨대, US6392688B1은, 카메라들의 상대적 위치를 기계적으로 안정화시키기 위해 카메라들 및 그들의 연관된 CMOS 센서들 및 렌즈들의 직접 부착을 위한 강성 장착 부재로서 두꺼운 금속 판을 사용하는 것을 개시한다. 본 문서의 도 5에 도시된 판의 두께는 대략적으로 카메라들 사이의 거리의 1/5이고, 이는 그러한 구조를 매우 무겁게 만들며, 이는, 넓은 기준선 스테레오 카메라들을 갖는 시스템에서 사용하기에 적합하지 않을 수 있다. 예컨대, 카메라들 사이의 기준선이 1 m인 스테레오 카메라 시스템은 20 cm 두께의 금속 판을 필요로 할 것이며, 이는, 알루미늄(1 m x 0.2 m x 0.2 m)으로 만들어진 경우 중량이 108 kg일 것이다. "넓은 기준선" 및 "긴 기준선"이라는 용어들은 본원에서 상호교환가능하게 사용될 수 있다.
그러한 기존 스테레오 카메라 시스템들의 문제는, 개별 카메라 모듈들(때때로, 본원에서 "카메라 센서들" 또는 간단히 "카메라들"로 지칭됨)이 시간 경과에 따라 서로에 대해 편이되고/거나 회전할 수 있다는 것이며, 이는, 초기 교정 파라미터들이 시간 경과에 따라 부정확하게 되게 할 수 있다. 스테레오 카메라 시스템이 적절히 교정된 채로 유지되기 위해서는 스테레오 카메라 시스템의 카메라 모듈들의 시야들이 서로에 대해 움직이지 않는 것이 바람직하다. 일부 스테레오 카메라 시스템들의 경우, 단지 0.05 도만의 상대적 카메라 배향 회전이 시스템의 교정을 손상시킬 수 있다. 더욱이, 종래의 스테레오 카메라 시스템에서, 예컨대, 회로 보드들 및/또는 다른 카메라 구성요소들에 대한 렌즈 홀더들의 움직임에 대한 잠재성, 카메라 모듈들 사이의 상대적 지시(pointing)가 변할 잠재성, 그리고 또한, 회로 보드들과 프레임 자체의 위치들이 시간 경과에 따라 변할 잠재성이 존재한다. 종래의 스테레오 카메라 시스템의 구성요소들 사이의 다수의 인터페이스들은, 구성요소들 사이의 진동, 충격, 및 심지어 열 팽창이, 스테레오 카메라 시스템의 카메라들의 시야가 시간 경과에 따라 편이되는 것을 야기할 가능성이 있게 한다. 카메라 구성요소들의 상대적 움직임은 시스템의 초기 공장 교정을 무효화할 수 있으며, 이는, 시스템에 의해 획득된 스테레오 비전 데이터를 신뢰가능하지 않게 만들 수 있다.
그러한 교정 문제들은 종래 기술에서 다루어지지 않았거나 심지어 인식되지 않았는데, 그 이유는, 종래 기술의 스테레오 비전 시스템들이 전형적으로, 일반적으로 충격들 또는 진동들을 겪지 않는 실험실 시스템들이었거나 또는 일반적으로 고도로 정확한 교정이 중요한 것으로 간주되는 상황들이 아닌 짧은 범위 실내 로봇 공학과 같은 상황들에서 사용되었기 때문이다. 따라서, 종래의 시스템들이 짧은 기준선 길이들로 제한되었고 큰 기계적 보강재들을 활용했기 때문에, 교정이 손실되는 것에 대한 종래의 스테레오 비전 시스템들의 고유한 민감성은 해결되어야 할 특정 문제로서 인식되지 않았다.
종래의 자동 교정 방법들은 전형적으로, 2개의 범주, 즉, 희소 특징점(keypoint) 접근법들 및 소실점(vanishing point) 접근법들에 속한다. 특징점들은, 이미지들에서 쉽게 인식될 수 있는 관심 지점들, 이를테면, 모서리들 또는 가장자리들이고, 종종, 연관된 이미지 기술어(descriptor)들을 가질 수 있다. 예컨대, 데이비드 로우(David Lowe)에 의해 개발된 스케일 불변 피쳐 변환(scale invariant feature transform)(SIFT) 방법은, 특징점들을 찾고 병진들, 회전들, 및 스케일링 변환들에 대해 불변인 기술어를 제공하기 위한 알고리즘의 예이다. 소실점들은 무한한 거리에 있는 지점을 표현하기 위해 사용된다. 소실점들은 카메라 모듈 배향에 민감하지만 카메라 모듈들 사이의 상대적 병진에는 민감하지 않으며, 한 쌍의 스테레오 카메라 모듈들의 배향을 정렬하기 위해 사용될 수 있다.
미국 특허들 US8797387B2 및 US10097812B2는, 희소 특징점 접근법들을 사용하여 스테레오 비전 시스템들을 자동으로 교정하기 위한 방법들을 개시한다. 특허 US8797387B2의 방법은, 특징점들을 추출하고, 제1 및 제2 카메라들로부터의 이미지들 내의 특징점들을 매칭시키고, 수직 오류의 단일 값 분해 분석(single-value decomposition analysis)에 기반하여 카메라 교정을 결정한다. 특허 US10097812B2의 방법은 특허 US-8797387B2의 것과 유사하지만, 다수의 이미지 프레임들에 걸쳐 특징점들을 추적하고 3차원 제약을 적용하기 위해 모션 기반 구조(structure-from-motion) 기법을 사용한다. 희소 특징점 접근법들은, 특징점들이 제1 및 제2 카메라들로부터의 이미지들 사이에서 부정확하게 매칭될 때 실패할 수 있으며, 이는, 반복되는 구조들(예컨대, 말뚝 울타리들, 건물 창문들 등)이 있는 이미지 장면들에서 발생할 수 있다. 또한, 긴 기준선 및 긴 범위 동작에 대해 충분한 정확도를 갖는 카메라 파라미터들을 획득하기 위해 피쳐 지점들의 서브-픽셀 정확도가 요구될 수 있으며, 이는 종종, 평활하거나 둥근 피쳐들, 또는 약간 초점이 흐려진 또는 흐릿한 이미지들에 대해 가능하지 않다. 종래의 모션 기반 구조 계산들은 일반적으로 프레임마다 교정 오류들을 보상하기에 충분히 빠르지 않고, 그에 따라 전형적으로, 짧은 기준선 스테레오 비전 시스템들의 느린 섭동들에 적절하다. 희소 특징점 접근법들에 대한 또 다른 문제는 이미지의 희소 샘플링이며, 이는, 내재적(intrinsic) 또는 외재적(extrinsic) 카메라 파라미터들을 정확하게 결정하기에 충분한 정보를 제공하지 않는다. 예컨대, 전형적인 도로 장면들의 이미지들은, 하늘로부터 멀리 떨어진 그리고 텍스처가 없는 도로 표면으로부터 멀리 떨어진 이미지의 중심에서 대부분의 피쳐들이 클러스터링될 수 있고, 따라서, 샘플링은 일반적으로 이미지의 중심에서 발생한다. 이러한 클러스터링된 샘플링은, 스테레오 카메라들의 상대적 배향(외재적 카메라 파라미터)과 이미지의 가장자리들에서의 왜곡들에 민감한 훨씬 더 적은 렌즈 왜곡 계수들(내재적 카메라 파라미터)을 높은 정확도로 결정하기에 충분한 정보를 제공하지 않는다. 다시 말해서, 이러한 종래의 기법들은, 스테레오 비전 시스템의 적절한 교정에 중요할 수 있는 카메라 파라미터들을 보상하지 않는다.
일본 특허 JP2008-509619A는, 소실점을 탐색하고 피치(pitch) 및 요(yaw) 오류들을 보정함으로써 스테레오 비전 장비를 자동으로 교정하기 위한 방법을 개시한다. 이 방법은, 롤(roll) 오류들 또는 장비의 2개의 카메라 사이의 상대적 병진 벡터를 보정하지 않는다. 또한, 이 방법은 직선이고 신뢰가능한 도로 페인트 마킹을 요구하며, 이는, 이용가능하지 않을 수도 있거나 눈(snow)에 의해 가려지거나 마모 또는 태양 노출에 의해 퇴색될 수 있고, 그에 따라, 장비의 교정의 각도 정확도가 제한된다.
저자들 T. Hinzmann, T. Taubner, 및 R. Siegwart에 의한 "Flexible Stereo: Constrained, Non-rigid, Wide-baseline Stereo Vision for Fixed-Wing Aerial Platforms"라는 제목의 2018 학회 논문은, 모형 비행기의 날개들 상에 장착된 구성요소들을 사용한 스테레오 비전을 위한 방법을 개시한다. 날개들이 가요성이고 움직일 수 있기 때문에, 저자들은, 상대적 카메라 모션을 보상하기 위한 시스템을 개발했다. 시스템은, 카메라들의 가속도와 각속도를 측정하기 위해, 스테레오 카메라들에 직접 부착된 관성 측정 유닛(IMU)들의 사용을 요구한다. 이 시스템은 이어서, 확장된 칼만(Kalman) 필터를 사용하여 카메라들의 상대적 배향과 위치를 컴퓨팅한다. 이 시스템의 하나의 단점은, 시스템이 IMU 하드웨어를 요구하고 비디오 스트림 단독으로는 카메라 위치를 보정할 수 없다는 것이다. 다른 단점은, IMU들이, 빠른 섭동들을 보상하는 데 사용될 수 있지만 느린 섭동(예컨대, 카메라들의 위치들의 느린 드리프트)을 보상하는 데 사용될 수 없다는 것이며, 이는, 카메라들이 빈번하게(예컨대, 매일) 수동으로 교정될 필요가 있을 수 있다는 것을 의미한다.
위에 설명된 교정 문제들은, 카메라 모듈들 사이의 거리가, 예컨대, 대략적으로 20 cm보다 큰 긴 기준선 스테레오 비전 시스템들에서, 그리고 2개 이상의 카메라 모듈을 무거운 구조적 빔들 또는 장착 부재들과 연결하는 것이 가능하지 않은 시스템들에서 악화될 수 있다. 스타일링을 위해 그리고 최적의 관측상 유리한 지점에 대해, 때때로, 독립적인 카메라들을 비-강성인 구조들(예컨대, 가요성 구조) 상에 장착하는 것이 바람직하다. 예컨대, 차량의 헤드라이트들에, 차량의 방풍창(windshield)의 상부 모서리들에, 또는 차량의 측면-뷰 미러들 상에 한 쌍의 스테레오 카메라들을 장착하는 것이 유리할 것인데, 그 이유는, 그러한 위치들이 차량(예컨대, 자동차, 트럭, 버스 등)의 스테레오 비전 시스템에 대한 긴 기준선을 확립하는 데 편리할 것이기 때문이다. 그러나, 이러한 위치들은, 전형적인 차량의 15 년 수명은 말할 것도 없이 수 시간 또는 수 일 동안 교정을 유지하기에 충분히 강성이 아니다. 일부 경우들에서, 헤드라이트들, 방풍창의 상부 모서리들, 및 측면-뷰 미러들 사이에 강성의 기계적 지지 구조들을 부가하는 것은 현실적으로 가능하지 않을 수 있는데, 그 이유는, 이러한 지지 구조들에 대한 가장 짧은 경로가 각각, 엔진 블록에 의해 차단될 수 있고, 운전자의 시야를 차단할 수 있고, 운전자 그 자신에 의해 차단될 수 있기 때문이다. 또한, 지지 구조들이 부가될 수 있는 경우에도, 충분한 구조적 지지를 제공하는 데 요구되는 그러한 구조들의 두께 및 중량이 비실용적일 수 있다. 즉, 빔의 편향 변위가 빔의 길이의 세제곱으로서 스케일링되기 때문에, 빔이 더 길수록 빔은 빔에 가해지는 동일한 양의 힘에 대해 빔이 더 크게 변위될 수 있다. 예컨대, 동일한 말단 힘에 대해, 2 m 기준선 스테레오 비전 시스템은 20 cm 기준선 스테레오 비전 시스템보다 1000 배 더 변위될 것이다. 이러한 스케일링은, 상업적으로 이용가능한 스테레오 비전 시스템들이 물리적으로 20 cm 미만의 기준선들로 제한되게 하였다.
높은 진동 및 충격 환경들에서 동작할 수 있고, 비-강성 구조 상에 장착될 수 있고, 긴 기준선 및 긴 범위 스테레오 비전을 지원할 수 있고, 높은 정확도로 동작할 수 있는 스테레오 비전 시스템에 대한 필요성이 존재한다.
긴 기준선 및 비-강성 구조들에 적합한 자동 교정 기술은 다음과 같은 적어도 4개의 이유로 인해 본원에 개시된 기술 이전에는 달성되지 않았다: (1) 크기: 물리적 특성(physics)에 의해, 빔 변위들은 빔 길이의 세제곱으로서 증가하고(위의 논의 참조), 따라서, 상대적 카메라 변위들의 크기가 빔 길이에 따라 증가한다. 강성을 보장하고 카메라 변위들을 방지하기 위한 부가적인 구조적 지지부는 현실적으로 달성가능하지 않을 수 있다; (2) 대역폭: 자동교정 시스템의 교정 속도는, 느린 변동 및 빠른 변동 둘 모두를 처리하기 위해, 기준선 길이가 증가함에 따라 증가해야 한다. 필요한 컴퓨팅 속도를 달성하는 데 요구되는 프로세서 하드웨어는 비용이 많이 들 수 있고, 원치 않는 복잡성을 시스템에 부가할 수 있다; (3) 정확도: 긴 기준선 시스템들에 필요한 교정 정확도는 짧은 기준선 시스템들에 대한 것보다 훨씬 더 클 수 있는데, 그 이유는, 더 긴 거리들에서 표적들을 추정하기 위해 더 큰 각도 정확도들이 요구되기 때문이다; 및 (4) 완전성: 스테레오 카메라들의 자동 교정을 위한 종래의 기법들은 몇몇 카메라 파라미터들(예컨대, 스테레오 카메라들의 상대적 배향)을 보상할 수 있는 반면, 전체 교정은 모든 외재적 및 내재적 카메라 파라미터들을 보상하는 것을 요구할 것이다. 본원에 제시된 기술 이전에, 이러한 4개의 이유를 해결하는 시스템은 아직 달성되지 않았다.
본원에 설명되고 청구항들에서 청구되는 본 발명의 기술은, 어떠한 강성 장착 부재도 요구되지 않는 스테레오 비전 시스템에 관한 것이다. 비전은 복수의 비전 센서들(예컨대, 카메라 모듈들)을 통해 달성될 수 있다. 본 기술의 일부 양상들에서, 제1 및 제2 카메라 모듈들(예컨대, 카메라 센서들)은, 굽혀지거나, 편이되거나, 구부러지고/거나, 움직일 수 있는 구조들 상에 배치되거나 그에 부착될 수 있다. 본원의 다른 곳에서 언급되는 바와 같이, 카메라 센서, 카메라 모듈, 및 카메라라는 용어들은 상호교환가능하게 사용될 수 있다. 본 기술의 양상들에 따른 스테레오 카메라 시스템은, 예컨대, 온도 변화들로 인한 느린 재료 변형들로부터, 예컨대, 도로 또는 엔진 잡음으로 인한 빠른 진동 모션들까지의 모든 모션 주파수들에 걸쳐 정확한 깊이 맵들을 제공하기 위해, 제2 카메라에 대한 제1 카메라의 움직임에 대한 능동 추적 및 보상을 수행하도록 구성되는 프로세서로 구성될 수 있다. 카메라들의 강성 장착에 대한 어떠한 요건도 존재하지 않기 때문에, 본 기술의 양상들은, 주기적 수동 교정을 요구함이 없이 긴 범위 측정들에 대한 넓은 기준선 스테레오 구성들을 가능하게 할 수 있다.
본 기술의 양상에 따르면, 스테레오 비전 시스템이 제공된다. 스테레오 비전 시스템은: 제1 이미지의 제1 반사 에너지를 감지하고 제1 반사 에너지에 기반하여 제1 센서 신호들을 생성하도록 구성되는 제1 카메라 센서; 제2 이미지의 제2 반사 에너지를 감지하고 제2 반사 에너지에 기반하여 제2 센서 신호들을 생성하도록 구성되는 제2 카메라 센서; 제1 카메라 센서로부터 제1 센서 신호들을 그리고 제2 카메라 센서로부터 제2 센서 신호들을 수신하고, 제1 및 제2 센서 신호들로부터 3차원(3D) 데이터를 생성하도록 구성되는 적어도 하나의 프로세서로 구성될 수 있다. 적어도 하나의 프로세서는: 스테레오 교정 파라미터들을 활용하여 제1 및 제2 센서 신호들로부터 편위수정된(rectified) 스테레오 이미지들을 생성하고, 편위수정된 이미지들에 대해 스테레오 매칭을 수행하고, 제1 및 제2 카메라 센서들에 의해 획득된 복수의 스테레오 이미지들로부터의 데이터를 사용하여 자동 시스템 교정을 수행하도록 구성될 수 있다. 자동 시스템 교정은 비용 함수를 최소화하는 것에 기반할 수 있다. 이러한 양상의 일부 실시예들에서, 제1 반사 에너지 및/또는 제2 반사 에너지는, 적어도 하나의 전자 디바이스(예컨대, 헤드라이트(들), 가로등(들), 레이저(들) 등)로부터 비롯되는 광 에너지 또는 광자들로 구성될 수 있다. 이러한 양상의 일부 실시예들에서, 제1 반사 에너지 및/또는 제2 반사 에너지는, 태양 광 에너지 또는 태양으로부터 비롯되는 광자들로 구성될 수 있다. 이러한 양상의 일부 실시예들에서, 제1 반사 에너지 및/또는 제2 반사 에너지는, 태양 광 에너지 및 전자 디바이스로부터 비롯되는 광 에너지의 조합으로 구성될 수 있다.
본 기술의 다른 양상에 따르면, 이미지 내의 객체의 검출을 위한, 컴퓨터에 의해 구현되는(computer-implemented) 방법이 제공된다. 하나 이상의 프로세서(들)에 의해 수행될 수 있는 방법은: 컬러에 의해 객체 상의 연결된 성분 구역들을 식별하는 단계; 연결된 성분 구역들 각각의 종횡비를 결정하는 단계; 연결된 성분 구역들 사이의 거리를 결정하는 단계; 및 연결된 성분 구역들 사이의 거리 및 종횡비들에 기반하여 객체를 알려진 객체인 것으로 식별하는 단계로 구성될 수 있다. 알려진 객체의 존재, 위치, 및 크기 중 임의의 하나 또는 이들의 임의의 조합이 이미지로부터 결정될 수 있다.
본 기술의 또 다른 양상에 따르면, 스테레오 비전 시스템을 교정하기 위한, 컴퓨터에 의해 구현되는 교정 방법이 제공된다. 방법은, 하나 이상의 프로세서(들)에 의해 수행될 수 있다. 스테레오 비전 시스템은, 제1 이미지의 제1 반사 에너지를 감지하고 제1 반사 에너지에 기반하여 제1 센서 신호들을 생성하도록 구성되는 제1 카메라 센서, 및 제2 이미지의 제2 반사 에너지를 감지하고 제2 반사 에너지에 기반하여 제2 센서 신호들을 생성하도록 구성되는 제2 카메라 센서를 포함할 수 있다. 방법은: 제1 및 제2 센서 신호들로부터 스테레오 이미지들을 생성하는 단계; 편위수정된 스테레오 이미지들을 생성하기 위해, 스테레오 교정 파라미터들을 사용하여 스테레오 이미지들을 편위수정하는 단계; 편위수정된 스테레오 이미지들에 대해 스테레오 매칭을 수행하는 단계; 및 스테레오 매칭의 결과를 사용하여 자동 시스템 교정을 수행하는 단계로 구성될 수 있다. 자동 시스템 교정은 비용 함수를 최소화하는 것에 기반할 수 있다. 이러한 양상의 일부 실시예들에서, 제1 반사 에너지 및/또는 제2 반사 에너지는, 적어도 하나의 전자 디바이스(예컨대, 헤드라이트(들), 가로등(들), 레이저(들) 등)로부터 비롯되는 광 에너지 또는 광자들로 구성될 수 있다. 이러한 양상의 일부 실시예들에서, 제1 반사 에너지 및/또는 제2 반사 에너지는, 태양 광 에너지 또는 태양으로부터 비롯되는 광자들로 구성될 수 있다. 이러한 양상의 일부 실시예들에서, 제1 반사 에너지 및/또는 제2 반사 에너지는, 태양 광 에너지 및 전자 디바이스로부터 비롯되는 광 에너지의 조합으로 구성될 수 있다.
본 기술의 또 다른 양상에 따르면, 컴퓨터 실행가능 코드가 저장된 비-일시적인 컴퓨터 판독가능 매체가 제공되며, 컴퓨터 실행가능 코드는, 하나 이상의 프로세서(들)에 의해 실행될 때, 하나 이상의 프로세서(들)로 하여금, 제1 이미지의 제1 반사 에너지를 감지하고 제1 반사 에너지에 기반하여 제1 센서 신호들을 생성하도록 구성되는 제1 카메라 센서 및 제2 이미지의 제2 반사 에너지를 감지하고 제2 반사 에너지에 기반하여 제2 센서 신호들을 생성하도록 구성되는 제2 카메라 센서를 포함할 수 있는 스테레오 비전 시스템을 교정하게 할 수 있다. 방법은: 제1 및 제2 센서 신호들로부터 스테레오 이미지들을 생성하는 단계; 편위수정된 스테레오 이미지들을 생성하기 위해, 스테레오 교정 파라미터들을 사용하여 스테레오 이미지들을 편위수정하는 단계; 편위수정된 스테레오 이미지들에 대해 스테레오 매칭을 수행하는 단계; 및 스테레오 매칭의 결과를 사용하여 자동 시스템 교정을 수행하는 단계로 구성될 수 있다. 자동 시스템 교정은 비용 함수를 최소화하는 것에 기반할 수 있다. 이러한 양상의 일부 실시예들에서, 제1 반사 에너지 및/또는 제2 반사 에너지는, 적어도 하나의 전자 디바이스(예컨대, 헤드라이트(들), 가로등(들), 레이저(들) 등)로부터 비롯되는 광 에너지 또는 광자들로 구성될 수 있다. 이러한 양상의 일부 실시예들에서, 제1 반사 에너지 및/또는 제2 반사 에너지는, 태양 광 에너지 또는 태양으로부터 비롯되는 광자들로 구성될 수 있다. 이러한 양상의 일부 실시예들에서, 제1 반사 에너지 및/또는 제2 반사 에너지는, 태양 광 에너지 및 전자 디바이스로부터 비롯되는 광 에너지의 조합으로 구성될 수 있다.
도 1a 내지 도 1c는 본 기술의 일부 실시예들에 따른, 카메라들 사이에 크고 무거운 구조적 지지 재료를 사용하거나 요구함이 없이 카메라들을 자동차에 또는 자동차 상에 장착하기 위한 3개의 상이한 위치를 도시한다.
도 2a 내지 도 2c는 본 기술의 일부 실시예들에 따른, 도 1a 내지 도 1c의 자동차들의 반투명도 또는 부분 투명도를 각각 도시한다.
도 3a 내지 도 3f는 본 기술의 일부 실시예들에 따른, 다양한 위치들에서 자동차에 장착된 전방-관찰(forward-looking) 스테레오 비전 카메라 모듈들의 도면을 도시한다.
도 4는 본 기술의 일부 실시예들에 따른, 트럭 상에 장착된 전방-관찰 스테레오 비전 카메라 센서들의 도면을 도시한다.
도 5a 내지 도 5c는 본 기술의 일부 실시예들에 따른, 트럭의 측면-뷰 미러 상에 카메라 모듈들이 장착된 스테레오 비전 시스템의 측면-관찰 및 후면-관찰 카메라 모듈들의 사시도, 평면도, 및 전면 정면도를 도시한다.
도 6은 본 기술의 일부 실시예들에 따른, 신호등 상에 장착된 스테레오 비전 시스템의 카메라들의 개략도를 도시한다.
도 7은 본 기술의 일부 실시예들에 따른, 가로등 기둥 상에 장착된 스테레오 비전 시스템의 카메라들의 개략도를 도시한다.
도 8은 본 기술의 일부 실시예들에 따른, 건설 크레인 상에 장착된 스테레오 비전 시스템의 카메라의 개략도를 도시한다.
도 9는 본 기술의 일부 실시예들에 따른, 고정 날개 항공기 상에 장착된 스테레오 비전 시스템의 카메라들의 개략도를 도시한다.
도 10a 및 도 10b는 본 기술의 일부 실시예들에 따른, 오프로드 또는 전지형(all-terrain) 차량 상에 장착된 스테레오 비전 시스템의 카메라 배열들의 전면 사시도 및 후방 사시도를 각각 도시한다.
도 11은 본 기술의 일부 실시예들에 따른, 콤바인 수확기(combine harvester) 상에 장착된 2개의 스테레오 비전 시스템의 카메라들의 개략도를 도시한다.
도 12a, 도 12b, 및 도 12c는 본 기술의 일부 실시예들에 따른, 자동 지게차 상에 장착된 스테레오 비전 시스템의 카메라들의 측면 정면도, 전면 정면도, 및 평면도를 도시한다.
도 13은 본 기술의 일부 실시예들에 따른 스테레오 비전 시스템의 블록도를 도시한다.
도 14는 본 기술의 일부 실시예들에 따른, 도 13의 시스템의 처리 구성요소의 블록도를 도시한다.
도 15a는 본 기술의 일부 실시예들에서 활용되는 편위수정 알고리즘의 흐름도를 도시하고; 도 15b는 본 기술의 일부 실시예들에 따른, 알고리즘에 의해 수행되는 편위수정 절차의 기하학적 상세들을 도시한다.
도 16은 본 기술의 일부 실시예들에 따른, 도 14의 처리 구성요소의 자동교정 엔진의 블록도를 도시한다.
도 17a는 본 기술의 일부 실시예들에 따른, 도 16의 자동교정 엔진의 교정 엔진의 블록도를 도시한다.
도 17b는 본 기술의 일부 실시예들에 따른 빠른 최적화 방법의 흐름도를 도시한다.
도 17ca는 본 기술의 일부 실시예들에 따른 중간정도(medium) 최적화 방법의 흐름도를 도시한다.
도 17cb는 본 기술의 일부 실시예들에 따른, 도 17ca의 중간정도 최적화 방법의 각도-탐색 프로세스의 흐름도를 도시한다.
도 17da 내지 도 17dd는 본 기술의 일부 실시예들에 따른 느린 최적화 방법의 흐름도들을 도시한다.
도 18은 본 기술의 일부 실시예들에 따른, 도 16의 자동교정 엔진의 스테레오 이미지 안정화 엔진의 절차의 흐름도를 도시한다.
도 19a는 본 기술의 일부 실시예들에 따른, 도 16의 자동교정 엔진의 절대 범위 교정 엔진의 절차의 블록도를 도시하고 ― 절차는 음이 아닌 디스패리티(disparity) 제약을 가짐 ―; 도 19b는 본 기술의 일부 실시예들에 따른, 음의 디스패리티를 갖는 픽셀들의 수가 요의 함수로서 어떻게 변할 수 있는지를 도시하는 도표이다.
도 20a는 본 기술의 일부 실시예들에 따른, 도 16의 자동교정 엔진의 절대 범위 교정 엔진의 절차의 흐름도를 도시하고 ― 절차는 알려진 치수들을 갖는 객체에 대한 것임 ―; 도 20b는 본 기술의 일부 실시예들에 따른, 알려진 치수들을 갖는 객체의 이미징의 예를 도시한다.
도 21a는 본 기술의 일부 실시예들에 따른, 절차가 차량 주행 거리 측정(odometry)을 활용하는 도 16의 자동교정 엔진의 절대 범위 교정 엔진의 절차의 흐름도를 도시하고; 도 21b는 본 기술의 일부 실시예들에 따른, 디스패리티가 범위의 함수로서 어떻게 변할 수 있는지를 도시하는 도표이다.
도 22는 본 기술의 일부 실시예들에 따른, 도 16의 자동교정 엔진의 교정 관리자의 절차의 흐름도를 도시한다.
도 23은 본 기술의 일부 실시예들에 따른, 도 22의 교정 관리자의 시계열 입력도를 도시한다.
도 24는 본 기술의 일부 실시예들에 따른, 정지 표지판 검출기의 절차의 흐름도를 도시한다.
도 25는 본 기술의 일부 실시예들에 따른, 도 14의 처리 구성요소의 스테레오 대응 엔진의 절차를 예시하는 도면을 도시한다.
본 발명자들은, 심지어 진동의 존재 하에서도 그리고 심지어 시스템의 카메라들을 위한 장착 구조가 강성이 아닐 때(예컨대, 장착 구조가 외부 힘들로부터 쉽게 변형될 수 있음)에도 스테레오 비전 시스템이 높은 품질로 깊이 맵들을 생성하는 것을 가능하게 할 수 있는 이미지 처리 기법들을 개발하였다. 본 발명자들은, 빠른 섭동 및 느린 섭동 둘 모두를 보상할 수 있는 카메라 자동교정 방법이, 긴 기준선(본원에서 "넓은 기준선"으로 또한 지칭됨) 스테레오 비전 시스템들이 로봇들, 자동차들, 트럭들, 가로등 기둥들, 건설 크레인들, 항공기 등과 같은 동적 플랫폼들 상에서 사용되는 것을 가능하게 할 수 있다는 것을 인식하였다.
자동차들 및 트럭들과 같은 차량들에 대해, 심미적 설계를 위해, 제조를 위해, 그리고/또는 스테레오 비전 시스템의 센서들 또는 카메라들에 대한 최적의 유리한 지점들을 제공하기 위해 바람직하거나 심지어 이상적일 수 있는 장착 위치들이 존재하지만; 이러한 장착 위치들은, 종래의 스테레오 비전 시스템들에서 사용되는 카메라들의 엄격한 각도 공차를 지원하기에 충분한 강성 또는 안정성을 갖지 않을 수도 있다. 일부 종래의 스테레오 비전 시스템들에 대해 단지 0.05 도만큼 스테레오 카메라들의 상대적 지시 방향을 섭동하게 하는 것은 손상될 수 있는 깊이 맵들을 초래할 수 있는데, 그 이유는, 깊이 맵들이 신뢰가능하지 않은 범위 추정치들을 제공하기 때문이다.
도 1a 내지 도 1c는 본 기술의 일부 실시예들에 따른, 카메라들 사이에 크고 무거운 구조적 지지 재료를 사용하거나 요구함이 없이 카메라들을 차량에 또는 차량 상에 장착하기 위한 3개의 상이한 위치를 도시한다.
도 1a는, 시스템의 좌측 카메라(100) 및 우측 카메라(102)가 차량의 전면 방풍창의 최상부 부분에 장착될 수 있는, 본 기술의 일부 실시예들에 따른 스테레오 비전 시스템의 장착 구성을 도시한다. 이러한 위치는, 카메라들(100, 102)이 차량의 캐빈(cabin) 내부에 있고 따라서 먼지 및 비로부터 보호될 수 있기 때문에 바람직할 수 있다. 예컨대, 방풍창 와이퍼들이 사용되어, 잔해(예컨대, 비, 눈, 잎들 등)를 카메라들(100, 102)의 시야로부터 멀리 치울 수 있다. 일부 실시예들에서, 우측 카메라(100) 및 좌측 카메라(102)는 비대칭적으로 장착될 수 있고 차량의 방풍창 와이퍼들의 클리닝 구역 내에 있도록 배열될 수 있다. 일부 실시예들에서, 우측 카메라(100)와 좌측 카메라(102) 사이의 전형적인 기준선 폭은 대략적으로 80 cm일 수 있으며, 이는, 종래의 스테레오 비전 시스템들에 대해, 2개의 카메라(100, 102)를 연결하기 위해 비실용적으로 두껍고 무겁고 강성인 구조적 부재를 요구할 폭이다. 인식될 바와 같이, 그러한 구조적 부재는 인간 운전자의 시야를 가릴 수 있다. 50 cm보다 큰 기준선을 갖는 스테레오 카메라들을 갖는 종래의 자율 테스트 차량들은 전형적으로, 하루 동안 또는 때때로 더 오래 카메라 정렬을 유지하기에 충분한 강성을 제공하기 위해 45 mm x 45 mm 또는 90 mm x 90 mm 프로파일들을 갖는 부피가 큰 슬롯형 알루미늄 부재들을 사용한다.
도 1b는, 시스템의 좌측 카메라(104) 및 우측 카메라(106)가 차량의 루프 부분 상에 장착될 수 있는, 본 기술의 일부 실시예들에 따른 스테레오 비전 시스템의 장착 구성을 도시한다. 루프 부분은 높은 유리한 지점을 제공할 수 있으며, 이는, 비전 시스템이, 차량의 앞에 있는 객체들을 위에서 볼 수 있게 그리고 젖은 포장도로 및 도로 잔해가 튀거나 분무되는 것으로부터 멀리 있게 할 수 있다. 일부 실시예들에서, 카메라(104, 106)는, 카메라들(104, 106)을 안정화시키기 위해 가외의 구조적 재료를 사용함이 없이 루프 헤드라이너 상에 장착될 수 있다. 또한, 일부 실시예들에서, 카메라(104, 106)와 함께 사용되는 카메라 인클로저들은 하나 이상의 클리닝 디바이스(예컨대, 성에 및/또는 김서림을 제거하도록 구성되는 히터 요소들, 고체 잔해를 제거하도록 구성되는 액체용 및/또는 공기용 분무기 등)를 포함할 수 있다. 일부 실시예들에서, 좌측 카메라(104)와 우측 카메라(106) 사이의 전형적인 기준선 폭은 1.25 m일 수 있다. 일부 구현들에서, 차량의 루프 부분 상의 카메라 모듈들(104, 106)은 차량의 스타일링에 거의 또는 전혀 영향을 미치지 않을 수 있다. 예컨대, 일부 실시예들에서, 카메라들(104, 106)은 차량의 루프 랙과 일직선으로 매끄럽게 배치될 수 있다.
도 1c는, 시스템의 좌측 카메라(108) 및 우측 카메라(110)가 차량의 측면-뷰 미러들 상에 장착될 수 있는, 본 기술의 일부 실시예들에 따른 스테레오 비전 시스템의 장착 구성을 도시한다. 측면-뷰 미러들은 전방-관찰 스테레오 비전 시스템에 대해 전형적으로 2.1 m인 가장 넓은 기준선을 제공할 수 있지만, 도 1a 및 도 1b에 도시된 장착 구성들보다 더 많은 섭동들을 경험할 수 있다. 전형적인 차량들에 대해, 측면-뷰 미러들은 차량의 극단들에 있다. 전형적인 측면-뷰 미러들은 관절식 조인트에 장착되고, (예컨대, 바람, 도로 진동 등으로부터의) 외부 섭동들뿐만 아니라 내부 진동 소스들(예컨대, 차량의 엔진)에 민감한 가벼운 구조들이다. 측면-뷰 미러들 상에 장착된 카메라들은 일반적으로, 빠른 섭동들뿐만 아니라 느린 섭동들을 경험한다.
도 2a 내지 도 2c는 본 기술의 일부 실시예들에 따른, 도 1a 내지 도 1c의 차량들의 반투명도 또는 부분 투명도를 각각 도시한다. 일부 실시예들에서, 와이어들(200, 202, 204, 206, 208, 210)이 카메라들(100, 102, 104, 106, 108, 110)을 전자 제어 유닛들(212, 214, 216)에 연결할 수 있다. 와이어들(200, 202, 204, 206, 208, 210)은, 전자 제어 유닛들(212, 214, 216)에 데이터를 송신하고 카메라들(100, 102, 104, 106, 108, 110)에 전력을 공급하도록 구성될 수 있다.
도 3a 내지 도 12는, 움직이거나 굽혀질 수 있고, 진동들 및 충격들을 받을 수 있고, 수동으로 교정하는 것이 불편하거나 비용이 많이 들 수 있고/거나, 수동 교정 및 유지보수 없이 수년 동안 동작할 필요가 있을 수 있는 상이한 플랫폼들 상의 스테레오 비전 시스템들의 다양한 실시예들을 도시한다. 도 3a 내지 도 12에서, 시스템들의 카메라들이 플랫폼들 상에 장착된 것으로 도시될 수 있지만, 본 기술의 일부 실시예들에 따르면, 전자 제어 유닛들 및 배선은 그들이 플랫폼들의 섀시 내부에 또는 플랫폼들 그 자체 내부에 장착될 수 있기 때문에 도시되지 않을 수 있다.
도 3a 내지 도 3f는 본 기술의 일부 실시예들에 따른, 다양한 위치들에서 자동차에 또는 자동차 상에 장착된 전방-관찰 스테레오 비전 시스템에 대한 카메라 모듈들(C1, C2)을 도시한다. 이러한 위치들은 전형적으로, 자동차의 수명 동안 또는 심지어 예컨대 계절적 변화들 및/또는 야간으로부터 주간으로의 온도 변화들 동안 전형적인 자동차들이 경험하는 온도 범위들에 걸쳐서도 스테레오 비전 카메라들의 정렬을 보장하기 위한 광학적 강성을 제공하지 않는다. 도 3a는 측면-뷰 미러들 상에 장착된 카메라들(C1, C2)을 도시한다. 도 3b는 루프 상에 장착된 카메라들(C1, C2)을 도시한다. 도 3c는 자동차의 방풍창 유리 뒤에 장착된 카메라들(C1, C2)을 도시한다. 도 3d는 자동차의 그릴에 장착된 카메라들(C1, C2)을 도시한다. 도 3e는 자동차의 헤드라이트 하우징들에 장착된 카메라들(C1, C2)을 도시한다. 도 3f는 자동차의 안개등 하우징들에 장착된 카메라들(C1, C2)을 도시한다.
도 4는 본 기술의 일부 실시예들에 따른 전방-관찰 스테레오 비전 시스템의 카메라 모듈들(C1, C2)을 도시하며, 카메라 모듈들(C1, C2)은 트럭의 측면-뷰 미러들 상에 장착된다. 트럭은 좌측 측면-뷰 미러로부터 우측 측면-뷰 미러까지 대략적으로 3 m의 넓은 기준선 길이를 가질 수 있으며, 이는, 매우 긴 범위의 입체시를 가능하게 할 수 있다. 일부 실시예들에서, 카메라 모듈들(C1, C2)은 CMOS 센서들로 구성될 수 있다.
도 5a 내지 도 5c는 본 기술의 일부 실시예들에 따른, 측면-관찰 및 후면-관찰 스테레오 비전 시스템에 대한 배열을 도시하며, 카메라 모듈들(500, 502)은 도 5a에서 트럭의 우측 측면-뷰 미러 상에 장착된 것으로 도시된다. 도 5a는 등각도 또는 사시도이고, 도 5b는 상면도 또는 평면도이고, 도 5c는 트럭의 전면 정면도이다. 일부 실시예들에서, 중복(duplicate) 스테레오 비전 시스템이 또한, 트럭의 좌측부 상의 객체들을 감지하도록 트럭의 좌측 측면-뷰 미러 상에 장착될 수 있다. 중복 스테레오 비전 시스템은 불필요한 난잡함을 회피하기 위해 도면들에 도시되지 않는다. 스테레오 비전 시스템의 2개의 카메라 모듈(500, 502)은 수직으로 장착될 수 있고, 대략적으로 1 m만큼 이격될 수 있다. 인식될 바와 같이, 서로에 대해 임의의 각도로 배향된 카메라들로부터의 이미지들을 매칭시키기 위해 스테레오 매칭이 수행될 수 있다. 예컨대, 서로에 대해 수직으로 배열된 카메라들로부터의 이미지들의 스테레오 매칭은 이미지들의 픽셀들의 수평 라인들 또는 행들을 상관시킬 수 있고, 서로에 대해 수평으로 배열된 카메라들로부터의 이미지들의 스테레오 매칭은 이미지들의 픽셀들의 수직 라인들 또는 열들을 상관시킬 수 있는 등 그러한 식이다. 스테레오 비전 시스템의 깊이 범위는 시스템의 카메라들 사이의 거리에 비례할 수 있다. 도 5a 내지 도 5c에 도시된 시스템에 대해, 시스템은, 도 5b에 도시된 바와 같이 135 도의 수평 시야(504)를 가질 수 있고 도 5c에 도시된 바와 같이 90 도의 수직 시야(506)를 가질 수 있다. 인식될 바와 같이, 본 기술의 다른 실시예들에서, 예컨대, 상이한 카메라 렌즈들(예컨대, 표준 렌즈들, 상이한 유형들의 광각 렌즈들 등)을 통해 다른 시야들이 가능하다. 도 5a 내지 도 5c의 것과 같은 측면-관찰 및 후면-관찰 스테레오 비전 구성은, 보행자들을 감지하여 그에 따라 그들을 회피하고, 자전거를 타는 사람들을 감지하여 그에 따라 그들을 회피하고, 차량 차로 변경(cut through)들을 감지하는 데 특히 유용할 수 있다. 종래의 스테레오 비전 시스템들, 특히, 넓은 시야 시스템들은 전형적으로 매우 불량한 깊이 범위들을 갖는데, 그 이유는, 그러한 시스템들에서, 각각의 픽셀이 더 큰 각도 범위에 맵핑됨에 따라 각도들을 정확하게 추정하는 능력이 저하되기 때문이다. 인식될 바와 같이, 스테레오 비전 시스템의 깊이 범위 해상도는 시스템의 시야에 비례할 수 있다. 넓은 기준선 스테레오 비전 시스템에 대해, 시스템의 깊이 범위 해상도가 시스템의 스테레오 카메라들의 기준선 길이에 반비례할 수 있기 때문에, 넓은 시야 카메라들을 사용하는 것이 유리할 수 있다. 따라서, 본 기술의 실시예들은, 종래의 스테레오 이미징 시스템들에서의 단지 약 5 cm 내지 10 cm 기준선들과 비교하여 긴 스테레오 비전 기준선들(예컨대, 1 m 이상)을 가능하게 함으로써 객체들의 긴 범위의 서라운드-뷰 3차원("3D") 감지를 가능하게 할 수 있다.
도 6 본 기술의 일부 실시예들에 따른, 신호등 기둥(602) 상에 장착된 스테레오 비전 시스템의 2개의 카메라(600, 606)를 도시한다. 2개의 카메라(600, 606)는, 신호등 기둥(602)의 걸침대(boom)(602a)의 길이에 의해 제한되는 긴 기준선에 의해 분리될 수 있다. 일부 신호등 기둥들은 대략적으로 5 m의 스테레오 비전 기준선 길이들을 지원할 수 있으며, 이는, (예컨대, 300 m 초과의) 극도로 긴 범위의 깊이 추정을 허용할 수 있고, 이는, 신호등들(604)의 지능형 전환을 위해 교통 대기행렬 내의 차량들의 대기행렬 길이의 측정을 가능하게 할 수 있다. 인식될 바와 같이, 신호등 기둥들의 걸침대들은 (예컨대, 강풍들, 붐들에 매달린 객체들의 움직임, 인근의 대형 트럭들의 통과로부터의 도로 진동들 등으로) 굽혀질 수 있다. 카메라들(600, 606)이 그러한 굽혀짐을 경험할 수 있고, 그러한 굽혀짐은 카메라들(600, 606)을 유지하는 긴 기둥들(608)에 의해 확대될 수 있다. 그에 따라, 긴 기준선 길이는, 2개의 카메라(600, 606)가 신호등 기둥(602)의 전형적인 동작 환경에서 빠르게 오정렬되는 것을 야기할 수 있다.
도 7은 본 기술의 일부 실시예들에 따른, 가로등 기둥(700) 상에 장착된 스테레오 비전 시스템의 2개의 카메라(702, 704)를 도시한다. 2개의 카메라(702, 704)는 수직으로 장착될 수 있고, 관심 구역(예컨대, 보행자 횡단보도)을 보도록 약간 하향을 지시할 수 있다. 예컨대, 카메라(702)의 시야의 상부 가장자리(706)는 약 30 도 미만(예컨대, 20 도, 10 도, 5 도) 만큼 수평 라인으로부터 벗어날 수 있다. 2개의 카메라(702, 704) 사이의 기준선 거리는 수 미터 이상(예컨대, 3 m, 3.5 m, 4 m, 4.5 m 등)일 수 있다. 카메라들의 유사한 수직 구성은 표지판 기둥들, 전봇대/전신주 등 상에 장착될 수 있다.
도 8은 본 기술의 일부 실시예들에 따른, 건설 크레인(800) 상에 장착된 스테레오 비전 시스템의 카메라들(804, 806)을 도시한다. 카메라들(804, 806)은 트롤리(trolley)(802) 상에 장착될 수 있고, 예컨대, 페이로드(808) 및 페이로드(808) 인근의 그리고 그 밑의 주변 건설 환경을 모니터링하기 위한 하향 시야를 갖도록 배열될 수 있다. 전형적인 시야(810)는 약 90 도 내지 약 120 도일 수 있고, 크레인(800)의 걸침대에 평행하거나 거의 평행한 방향으로 연장될 수 있다. 카메라들(804, 806) 사이의 거리는, 요망되는 최소 깊이 범위 및 깊이 범위 해상도에 따라, 약 2 m 내지 5 m일 수 있다. 대략적으로 50 m의 걸침대 길이 및 대략적으로 200 m의 크레인 높이는, 특히 건설 충격들 및 진동들이 카메라들(804, 806) 사이의 상대적 위치를 일정하게 유지하기 어렵게 할 수 있을 때, 넓은 기준선의 긴 범위 스테레오 비전 시스템을 건설 크레인들의 환경을 모니터링하기 위한 매력적인 해결책으로 만들 수 있다.
도 9는 본 기술의 일부 실시예들에 따른, 고정 날개 항공기(900) 상에 장착된 스테레오 비전 시스템의 2개의 카메라(902, 904)를 도시한다. 항공기(900)는, 예컨대, 농약 살포기(crop duster), 무인 항공기(UAV), 쿼드-콥터 또는 헥사-콥터, 비행기 등일 수 있다. 일부 실시예들에서, 카메라들(902, 904)은, 항공기(900)의 날개의 아래측 상에 장착되고 지면 구역(906)을 보도록 하향을 지시할 수 있다. 일부 실시예들에서, 2개의 카메라(902, 904)는 전방 방향을 또는 후방 방향을 지시할 수 있다. 날개들이 항공기(900)의 동작 동안 굽혀지거나 움직일 수 있기 때문에, 카메라들(902, 904)은 서로에 대해 전후로 제자리에서 진동할 수 있고, 통상의 스테레오 비전 기법들을 사용하여 입체시가 가능하지 않을 수 있다.
도 10a 및 도 10b는 본 기술의 일부 실시예들에 따른, 오프-로드 차량(1000) 상에 장착된 스테레오 비전 시스템의 카메라 배열들의 전면 사시도 및 후방 사시도를 각각 도시한다. 스테레오 비전 시스템은, 4개의 스테레오 비전 카메라 쌍, 즉, 전면 스테레오 비전 카메라 쌍(1002), 좌측 스테레오 비전 카메라 쌍(1004), 후면 스테레오 비전 카메라 쌍(1006), 및 우측 스테레오 비전 카메라 쌍(1008)으로 구성된 서라운드-뷰 구성을 가질 수 있다. 4개의 스테레오 비전 카메라 쌍(1002, 1004, 106, 1008)은, 전면, 후면, 좌측, 및 우측 방향들 각각에서 하나씩, 적어도 90 도의 4개의 수평 시야를 제공할 수 있다. 인식될 바와 같이, 오프로드 차량들은 기복이 심한 지형 상에서 주행할 때 극단적인 양의 진동 및 충격에 직면하며, 이는, 종래의 스테레오 비전 카메라들이 빠르게 오정렬되는 것을 야기할 것이다. 오프로드 차량들의 예들은, 예컨대, 군용 차량들, 지프차들, 전지형 차량들, 덤프 트럭들, 채광 차량들, 및 자갈, 암석 지형, 조약돌들, 굴착 현장들 등과 같은 비포장 표면들 상에서 주행될 수 있는 임의의 유형의 차량을 포함한다. 오프로드 차량의 주변 환경에 관한 고해상도 3D 정보는, 암석들, 바위들, 나뭇가지들 등으로 가득 차 있을 수 있는 고르지 않은 표면들을 내비게이팅하는 데 중요할 수 있고, 따라서, 그러한 정보를 획득하기 위한 신뢰가능한 시스템은 매우 중요하다.
도 11은 본 기술의 일부 실시예들에 따른, 콤바인 수확기(1100) 상에 장착된 2개의 스테레오 비전 시스템을 도시한다. 전방-대면 스테레오 비전 시스템은 전방 카메라(1102) 및 전방 카메라(1104)를 포함할 수 있으며, 이들은, 예컨대, 수확기(1100)가 직면할 작물의 양을 미리 측정하기 위한 정보를 획득하여 수확기(1110)의 스로틀에 대한 정보에 근거한 제어를 가능하게 함에 따라 공급량(feed rate)을 최대화하는 데 사용될 수 있다. 전방 카메라들(1102, 1104)은, 예컨대, 수확기(1100)의 헤드라이너(1116) 상에 장착될 수 있다. 스파우트-장착(spout-mounted) 스테레오 비전 시스템은 스파우트 카메라(1108) 및 스파우트 카메라(1110)를 포함할 수 있으며, 이들은, 예컨대, 스파우트(1112)의 위치를 제어하고 수집 컨테이너 내의 물질의 양을 측정하기 위한 정보를 획득하는 데 사용될 수 있다. 수확기(1100)의 스파우트(1112) 및 헤드라이너(1116) 둘 모두는, 수확기(1100)가 농지, 식물들, 및 초목 위로 이동할 때 극단적인 양의 진동 및 충격을 경험할 수 있다. 또한, 인식될 바와 같이, 헤드라이너(1116) 및 스파우트(1112)는, 전면 카메라들(1102, 1104)의 상대적 움직임 및 스파우트 카메라들(1108, 1110)의 상대적 움직임이 회피될 수 있도록 "광학적으로 강성인" 구조들이 아닐 수 있다. 즉, 수확기(1100)의 전체 수명은 말할 것도 없이 농사 계절 동안 카메라들의 쌍들의 일정한 정렬을 유지하는 것이 가능하지 않을 수 있다. 즉, 수확기(1100)와 관련된 카메라-정렬 문제들은 또한 다른 농장 장비(예컨대, 트랙터들, 건초 포장기(hay baler)들, 토목(earth-mover) 차량들 등)에서의 문제들일 수 있다.
도 12a, 도 12b, 및 도 12c는 본 기술의 일부 실시예들에 따른, 자동 지게차(1200) 상에 장착된 전방-관찰 스테레오 비전 시스템의 카메라들(1202, 1204)의 좌측 정면도, 전면 정면도, 및 평면도를 도시한다. 일부 실시예들에서, 카메라들(1202, 1204)은, 예컨대, 135 도의 넓은 시야를 제공할 수 있고, 충돌 회피 및 객체 위치파악을 가능하게 할 수 있으며, 이들은, 조작자의 시야를 가릴 수 있는 큰 객체들을 이동시킬 때 바람직한 특징들이다. 폭이 1 m를 초과하는 넓은 기준선들이 전형적인 지게차 플랫폼들 상에서 가능하다. 지게차 시스템들은 전형적으로 약 30 m의 깊이 범위를 요구하며, 이는, 종래의 스테레오 비전 솔루션들의 능력들을 훨씬 넘어선다. 지게차들은 또한 동작 동안 극도로 높은 충격들을 받을 수 있으며, 이는, 지게차들과 함께 사용되는 임의의 스테레오 비전 시스템이 충격 내성 카메라들뿐만 아니라 그들의 교정을 유지할 수 있는 충격 내성 전자기기들(예컨대, 센서들)을 갖는 것이 필수적이지는 않더라도 매우 바람직하다. 충격 내성은, 지게차들뿐만 아니라, 예컨대, 창고들 및 공장들에서 사용되는 자동화된 이동 차량들(예컨대, 스마트 자동 운반 차량들)에 대해서도 바람직하다.
도 3a 내지 도 12에 관한 위의 논의들로부터 인식될 수 있는 바와 같이, 비-강성 플랫폼 상에 장착될 수 있고 느린 정렬 섭동들 및/또는 빠른 정렬 섭동들을 조정하도록 자동으로 교정될 수 있는 스테레오 비전 시스템들이 많은 상이한 상황들에 대해 바람직할 수 있다.
도 13은 본 기술의 일부 실시예들에 따른 스테레오 비전 시스템의 블록도를 도시한다. 처리 구성요소(1310)는, 전자 제어 유닛(예컨대, 전자 제어 유닛들(212, 214, 216)) 각각의 일부로서 포함될 수 있다. 스테레오 비전 시스템의 제1 카메라(1300)("카메라 1"로 또한 지칭됨) 및 제2 카메라(1302)("카메라 2"로 또한 지칭됨)는 미가공 이미지들(1304 및 1306)의 신호들 또는 데이터를 처리 구성요소(1310)에 송신할 수 있다. 일부 실시예들에서, 카메라들(1300, 1302)은, 흑백(monochrome) CMOS 카메라들, 컬러 CMOS 카메라들, 근적외선 카메라들, 단파 적외선 카메라들, 중간파 적외선 카메라들, 장파 적외선 카메라들 중 임의의 것일 수 있고, 미가공 이미지들(1304 및 1306)을 실시간으로 또는 거의 실시간으로 처리 구성요소(1310)에 제공할 수 있다. 일부 실시예들에서, 카메라들(1300, 1302)은 메모리를 가질 수 있고/거나 데이터 저장 디바이스와 연관될 수 있고, 카메라들(1300, 1302)은, 메모리 및/또는 데이터 저장 디바이스로부터 재현된 일련의 이미지들(예컨대, 일련의 미가공 이미지들(1304 및 1306))을 처리 구성요소(1310)에 제공할 수 있다. 일부 실시예들에서, 이미지들은 2차원(예컨대, 높이 및 폭)일 수 있다. 일부 실시예들에서, 이미지들은 3차원(예컨대, 높이 및 폭 및 컬러)일 수 있다. 처리 구성요소(1310)는, 명령 및 제어 라인(1312)을 통해 메인 시스템 제어기(1316)에 의해 명령받도록 구성될 수 있다. 인식될 바와 같이, 명령 및 제어 라인(1312)은 유선 통신 메커니즘(예컨대, 데이터 버스, 통신 라인)일 수 있거나, 관련 기술분야에 알려진 통신 기법들을 사용하는 무선 통신 메커니즘일 수 있다. 일부 실시예들에서, 메인 시스템 제어기(1318)는, 고-레벨 기능들(예컨대, 자동차들에 대한 자동 긴급 제동)을 조율하고 다양한 서브-시스템들(예컨대, 제동 시스템, 센서 시스템 등)과 통신하도록 구성되는 컴퓨터로 구성될 수 있다. 일부 실시예들에서, 명령 및 제어 라인(1312)을 통한 통신을 위해 공통 통신 프로토콜들(예컨대, 이더넷, CAN(제어기 영역 네트워크), I2C(집적 회로 간) 등)이 사용될 수 있다. 일부 실시예들에서, 처리 구성요소(1310)는, 명령 및 제어 라인(1312)을 통해 메인 시스템 제어기(1318)에 교정 상태(예컨대, 시스템 건전성(health) 상태, 정보 품질 상태 등)에 대해 보고할 수 있다. 일부 실시예들에서, 명령 및 제어 라인(1312)은, 처리 구성요소(1310)의 자동교정 및 스테레오 대응 설정들을 구성하는 데 사용될 수 있다. 명령 및 제어 라인(1312)은 또한, 처리 구성요소(1310) 내에서 입력 및 출력 데이터 스트림들 둘 모두를 시작, 정지, 및 기록하는 데 사용될 수 있다. 깊이 맵들(1308) 및 대응하는 신뢰도 맵(1314)이 미가공 이미지들(1304 및 1306)의 각각의 쌍에 대해 처리 구성요소(1310)로부터 출력될 수 있다. 일부 실시예들에서, 깊이 맵(1308)은 미가공 이미지(1304)와 동일한 폭 및 높이를 갖는 2차원 행렬일 수 있지만, 그 값은 표적(예컨대, 시야 내의 객체)까지의 범위(예컨대, 거리)를 표시한다. 깊이 맵(1308)은 RGB 이미지로서 보고 또는 출력될 수 있으며, 여기서, 각각의 24 비트 컬러 값은 표적까지의 범위이도록 인코딩될 수 있다. 예컨대, 깊이 맵(1308)의 값들이 mm(밀리미터)의 단위들인 경우, 0 내지 16,777.215 m(미터)의 거리들이 24 비트로 표현될 수 있다. 일부 실시예들에서, 신뢰도 맵(1314)은 미가공 이미지(1304)와 동일한 높이 및 폭을 갖는 2차원 행렬일 수 있고, 신뢰도 맵(1314)의 각각의 요소는 미가공 이미지(1304)의 각각의 픽셀의 깊이 추정치에 대한 신뢰도 값 또는 신뢰도 레벨을 표현할 수 있다. 일부 실시예들에서, 신뢰도 값은 0 내지 255의 8 비트의 부호 없는 값일 수 있으며, 여기서, 상대적으로 더 높은 값들은 대응하는 깊이 추정치에서 더 높은 레벨의 신뢰도를 표시할 수 있다. 일부 실시예들에서, 신뢰도 맵(1314)에 대해 8 비트 표현을 사용하는 것은, 신뢰도 맵(1314)이 그레이스케일 이미지로서 편리하게 디스플레이되는 것을 가능하게 할 수 있고, 또한, 신뢰도 맵(1314)에 대한 데이터가 흑백 비디오 데이터 스트림으로서 송신되는 것을 허용할 수 있다. 신뢰도 맵(1314)에 의해 제공되는 정보는, 주변 환경의 고-신뢰성 추정치들을 제공하기 위해 다양한 센서들(예컨대, 레이더, 라이다, 소나 등)로부터의 추정치들을 결합하도록 기능하는 센서 융합 처리 파이프라인들에 대해 중요할 수 있다.
본 기술의 일부 실시예들에 따르면, 야간 동작을 위한 광을 투영하기 위해 조명기(1316)가 사용될 수 있다. 조명기(1316)는, 하나 이상의 조명 요소(예컨대, 램프들, LED들 등)로 구성될 수 있다. 일부 실시예들에서, 스테레오 비전 시스템은 자동차 상에 제공될 수 있고, 조명기(1316)는 가시 또는 적외선 방사선을 방출할 수 있는 자동차의 헤드라이트들로 구성될 수 있다. 일부 실시예들에서, 조명기(1316)는, 가시 또는 적외선 방사선을 방출하도록 구성되는 외부 장착 램프들로 구성될 수 있다. 일부 실시예들에서, 조명기(1316)는, 제1 카메라 센서의 노출 간격 및 제2 카메라 센서의 노출 간격과 동기화하여 가시 또는 적외선 방사선을 방출하도록 구성될 수 있다. 변조된 파형을 이용하여, 피크 광출력(optical power)은 동일한 평균 광출력에 대해 더 높을 수 있고, 따라서, 카메라 센서들에 의해 레지스터링되는 광자들의 수는 평균 광출력에 민감할 수 있는 다가오는 운전자들 또는 보행자들을 눈부시게 함이 없이 증가할 수 있다. 일부 실시예들에서, 조명기(1316)는, 의사 랜덤 도트 패턴을 투영하도록 구성될 수 있는 수직 캐비티 표면 방출 레이저(VCSEL) 어레이로 구성될 수 있다. 랜덤화된 도트 패턴의 사용은 조명되는 장면에 텍스처를 부가할 수 있고, 이는, 정확한 깊이 맵들을 생성하는 스테레오 대응 엔진(1420)의 능력을 개선할 수 있다.
본 기술의 일부 실시예들에서, 도 13의 스테레오 비전 시스템은 3개-카메라 시스템으로 수정될 수 있다. 제1 카메라 및 제2 카메라는 짧은 범위 감지를 위한 스테레오 비전 시스템을 형성할 수 있고, 제1 카메라 및 제3 카메라는 긴 범위 감지를 위한 스테레오 비전 시스템을 형성할 수 있다. 제1 카메라와 제2 카메라 사이의 기준선 거리는 제1 카메라와 제3 카메라 사이의 기준선 거리보다 더 짧을 수 있다. 제1 및 제2 카메라들로 구성된 스테레오 비전 시스템은 더 낮은 최소 거리를 갖는 범위를 가질 수 있지만, 제1 및 제3 카메라들로 구성된 스테레오 비전 시스템과 비교하여 더 높은 범위 해상도를 가질 수 있다.
본 기술의 일부 실시예들에서, 도 13의 스테레오 비전 시스템은, 2개의 스테레오 비전 시스템, 즉, 제1 카메라 및 제2 카메라를 갖는 짧은 범위 시스템 및 제3 카메라 및 제4 카메라를 갖는 긴 범위 시스템으로 구성된 4개-카메라 시스템이도록 수정될 수 있다. 3개-카메라 시스템과 비교하여, 부가적인 (제4) 카메라는 부가적인 동작 자유도를 제공할 수 있고, 짧은 범위 시스템이 긴 범위 시스템과 상이한(예컨대, 더 넓은) 시야를 가질 수 있게 할 수 있다. 일부 실시예들에서, 제1 및 제2 카메라들은 제3 및 제4 카메라들보다 더 짧은 기준선 및 더 넓은 시야를 가질 수 있다.
본 기술의 일부 실시예들에서, 도 13의 스테레오 비전 시스템은, 스테레오 비전 시스템의 최소 거리보다 카메라들(1300, 1302)에 더 가까운 객체들을 측정하도록 구성될 수 있는 비행 시간(time-of-flight) 카메라를 포함하도록 수정될 수 있다.
도 14는 본 기술의 일부 실시예들에 따른 처리 구성요소(1310)의 블록도를 도시한다. 위에 논의된 바와 같이, 처리 구성요소(1310)는, 미가공 이미지들(1304 및 1306)을 깊이 맵들(1308) 및 신뢰도 맵들(1314)로 변환할 수 있다. 제1 카메라로부터의 미가공 이미지들(1304)은 편위수정 엔진(1416)에 의해 편위수정될 수 있다. 제2 카메라로부터의 미가공 이미지들(1306)은 편위수정 엔진(1418)에 의해 편위수정될 수 있다. 인식될 바와 같이, 컴퓨터 비전 기술에서, 편위수정은, 카메라 1 및 카메라 2로부터의 이미지들이 행-방향 정렬되도록 이미지들을 워핑(warp)하는 데 사용되는 변환 프로세스이다. 즉, 카메라 1로부터의 미가공 이미지(1304)로부터 생성된 편위수정된 이미지(1406) 내의 픽셀들의 행의 피쳐들이 카메라 2의 미가공 이미지(1306)로부터의 편위수정된 이미지(1408)의 매칭하는 피쳐들과 동일한 픽셀들의 행에 정렬된다. 픽셀들의 그러한 행 정렬은, 스테레오 대응 엔진(1420)이 더 빠르게 동작할 수 있게 할 수 있는데, 그 이유는, 그러한 행 정렬이, 대응하는 피쳐들에 대한 탐색이 행들 및 열들을 따른 2차원 탐색이 아니라 행들을 따른 1차원 탐색이 되는 것을 가능하게 하기 때문이다. 일부 실시예들에서, 편위수정 엔진들(1416 및 1418)은 맵핑 또는 워핑 동작을 결정하기 위해 카메라 파라미터들(1410 및 1412)을 각각 활용할 수 있다. 도 15a는 본 기술의 일부 실시예들의, 편위수정 엔진들(1416, 1418)에 의해 활용될 수 있는 편위수정 알고리즘의 흐름도를 도시한다. 도 15b는 본 기술의 일부 실시예들에 따른, 알고리즘에 의해 수행되는 편위수정 절차의 좌표계 및 기하학적 세부사항들을 도시한다.
본 기술의 일부 실시예들에 따르면, 카메라 파라미터들(1410, 1412)은, 2개의 카메라(1300, 1302)의 상대적 위치 및 배향을 설명할 수 있는 여섯(6)개의 외재적 카메라 파라미터, 및 각각의 카메라(1300, 1302)의 카메라 좌표계로부터 픽셀 좌표계로의 변환을 특성화할 수 있는 열여덟(18)개의 내재적 카메라 파라미터로 구성될 수 있다. 6개의 외재적 파라미터는, 상대적 롤, 상대적 피치, 상대적 요, 상대적 병진 x, 상대적 병진 y, 및 상대적 병진 z로 구성될 수 있다. 카메라들(1300, 1302) 둘 모두에 대한 18개의 내재적 카메라 파라미터는, 각각의 카메라(1300, 1302)에 대한, 초점 길이(Fx, Fy); 주점(principal point)(Cx, Cy); 방사상 렌즈 왜곡 계수들(K1, K2, 및 K3); 및 접선 렌즈 왜곡 계수들(P1 및 P2)로 구성될 수 있다. 이러한 카메라 파라미터들은 잘 알려져 있고, 수백 개의 컴퓨터 비전 알고리즘들을 포함하는 오픈 소스 라이브러리인 OpenCV(오픈 소스 컴퓨터 비전 라이브러리)에 의해 설명된다. 넓은 시야 렌즈 및/또는 어안 렌즈가 사용될 때, 하나 이상의 부가적인 더 고차의 렌즈 왜곡 파라미터가 사용될 필요가 있을 수 있다. 일부 실시예들에서, 카메라 파라미터들(1410, 1412)은 일정하지 않을 수 있지만, 카메라들(1300, 1302)에서의 실제 변경들을 추적하기 위해 시간의 함수로서 변할 수 있다. 일부 실시예들에서, 카메라 파라미터들(1410, 1412)은 모든 각각의 프레임에 대해 업데이트될 수 있다.
본 기술의 일부 실시예들에 따르면, 자동교정 엔진(1414)은, 카메라들(1300, 1302)의 스테레오 카메라 교정을 유지하는 방법을 구현하도록 구성될 수 있다. 일부 실시예들에서, 자동교정 엔진(1414)은, 현재 프레임의 미가공 이미지들(1304, 1306) 및 이전 프레임의 편위수정된 이미지들(1406, 1408)을 입력들로서 활용할 수 있다. 자동교정 엔진(1414)은 제1 카메라(1300)(카메라 1)에 대한 카메라 파라미터들(1410) 및 제2 카메라(1302)(카메라 2)에 대한 카메라 파라미터들(1412)을 출력할 수 있고, 제1 카메라(1300)에 대한 병진 파라미터들(1426) 및 제2 카메라(1302)에 대한 병진 파라미터들(1428)을 출력할 수 있다.
본 기술의 일부 실시예들에 따르면, 병진 엔진들(1422, 1424)은, 편위수정된 이미지들(1406, 1408)을 편이시켜 매우 빠른 섭동들을 보상하고 편위수정된 이미지들(1406, 1408)을 서로에 대해 안정화시키기 위한 변환 동작을 수행할 수 있다. 병진 동작은 픽셀 행 및/또는 픽셀 열에 의해 수행될 수 있으며, 이는, 아핀(affine) 변환 절차를 사용하여 빠르게 달성될 수 있다. 병진 파라미터들(1426, 1428)은 행 기반 및 열 기반 병진 오프셋들일 수 있다. 일부 실시예들에서, 컴퓨팅 시간을 감소시키기 위해, 병진 엔진들(1422, 1424) 중 하나는 드롭(예컨대, 미사용되거나 유휴상태이거나 부재함)될 수 있는 한편, 다른 하나는 병진 오프셋들을 (예컨대, 합으로서) 수신한다. 병진 엔진들(1422, 1424)에 의해 출력되는 이미지들(1430, 1432)은, 스테레오 대응 엔진(1420)에 공급될 수 있는 편위수정 및 안정화된 이미지들(1430, 1432)일 수 있다. 스테레오 대응 엔진(1420)은, 이미지들(1430, 1432)(예컨대, 이미지들(1430, 1432)은 좌측 및 우측 이미지들일 수 있음)의 매칭하는 픽셀들 사이의 디스패리티를 결정할 수 있고, 디스패리티 맵을 컴퓨팅할 수 있고, 디스패리티 맵으로부터 깊이 맵(1308)을 컴퓨팅 및 출력할 수 있고, 신뢰도 맵(1314)을 컴퓨팅 및 출력할 수 있다.
도 16은 본 기술의 일부 실시예들에 따른 자동교정 엔진(1414)의 블록도를 도시한다. 자동교정 엔진(1414),은 5개의 교정 엔진, 즉, 빠른 교정 엔진(1600), 중간정도 교정 엔진(1602), 느린 교정 엔진(1604), 절대 범위 교정 엔진(1606), 및 스테레오 이미지 안정화 엔진(1608)으로 구성될 수 있다. 일부 실시예들에서, 빠른 교정 엔진(1600), 중간정도 교정 엔진(1602), 및 느린 교정 엔진(1604)은, 느린 시간 스케일 내지 빠른 시간 스케일에 걸쳐 발생할 수 있는 카메라 파라미터 섭동들을 보상할 수 있고, 이러한 교정 엔진들(1600, 1602, 1604)에 의해 사용되는 방법들은 비용 함수를 최적화하는 것에 기반할 수 있다.
일부 실시예들에서, 절대 범위 교정 엔진(1606)은, 외재적 카메라 파라미터, 즉, 상대적 요를 조정함으로써 객체들에 대한 절대 범위를 교정할 수 있다. 일부 실시예들에서, 절대 범위 교정의 교정은, 에피폴라(epipolar) 기하학 제약들이 요의 변화들에 둔감할 수 있기 때문에, 잘 교정하기 위한 가장 중요하고 가장 어려운 파라미터들 중 하나일 수 있다. 일부 실시예들에서, 스테레오 이미지 안정화 엔진(1608)은 피치 및 요의 프레임 간 변동들을 추적하고 보상하는 데 사용될 수 있다. 카메라 파라미터들의 시계열 이력은 저장 디바이스(1622)에 저장될 수 있다. 현재 카메라 파라미터들(1620)은 교정 엔진들(1600, 1602, 1604, 1606, 1608)에 대한 시작점으로서 사용될 수 있다. 일부 실시예들에서, 교정 엔진들(1600, 1602, 1604, 1606, 1608)의 출력들(1610, 1612, 1614, 1616, 1626)은 교정 관리자(1624)에 의해 결합될 수 있고, 이 교정 관리자는, 이러한 정보를 사용하여, 제1 카메라 및 제2 카메라들(1300, 1302)에 대한 카메라 파라미터들(1410, 1412)의 최상의 추정치를 결정한다. 명령 및 제어 라인(1312)은, 수동 공장 교정, 제조 규격들, 또는 랜덤 추측(random guess)으로부터 비롯될 수 있는 카메라 파라미터들에 대한 값들을 초기화하는 데 사용될 수 있다. 아래에 논의되는 바와 같이, 절대 범위 교정 엔진(1606)은 상이한 실시예들을 갖는다. 일부 실시예들에서, 빠른 교정 엔진(1600)에 의해 수행되는 빠른 교정 절차, 중간정도 교정 엔진(1602)에 의해 수행되는 중간정도 교정 절차, 및 느린 교정 엔진(1604)에 의해 수행되는 느린 교정 절차 중 임의의 하나 또는 이들의 임의의 조합은, 하나 이상의 내재적 카메라 파라미터(들)를 교정하기 위한 내재적-파라미터 교정 절차를 포함할 수 있다. 예컨대, 각각의 카메라에 대해, 초점 길이, 주점, 적어도 하나의 방사상 렌즈 왜곡 계수, 및 적어도 하나의 접선 렌즈 왜곡 계수 중 임의의 하나 또는 이들의 임의의 조합은, 내재적-파라미터 교정 절차에 의해 교정될 수 있다. 일부 실시예들에서, 내재적-파라미터 교정 절차는, 제1 카메라 및 제2 카메라들(1300, 1302)에 관한 선험적 지식이 존재하는 경우, 예컨대, 드문 경우일 수 있는, 렌즈 장착 그 자체가 가요성인 것으로 알려져 있는 경우, 빠른 교정 엔진(1600) 및/또는 중간정도 교정 엔진(1602)에 의해 수행될 수 있다. 일부 실시예들에서, 내재적 카메라 파라미터들은, (1) 관통점(piercing point) 수평 위치(Cx) 및 초점 길이(Fx 및 Fy)에서의 작은 변화들이 요에 대한 변화들에 의해 1차로 보정될 수 있고, (2) 관통점 수직 위치(Cy)에서의 작은 변화들이 피치에 대한 변화들에 의해 1차로 보정될 수 있고, (3) 렌즈 형상이 일반적으로 변경불가능할 수 있으므로 렌즈 왜곡 계수들은 전형적으로 변하지 않을 수 있다는 다수의 이유들로 인해 빠른 시간 스케일 및/또는 중간정도 시간 스케일에 대해 교정될 필요가 없을 수 있다.
도 17a는 본 기술의 일부 실시예들에 따른, 빠른 교정 엔진(1600), 중간정도 교정 엔진(1602), 및 느린 교전 엔진(1604)의 블록도를 도시한다. 교정 엔진들(1600, 1602, 1604)은 동일한 블록도 구조를 가질 수 있지만, 상이한 최적화 방법들(1700, 1722, 1724)을 각각 활용할 수 있다. 일부 실시예들에서, 방법들(1700, 1722, 1724)의 기본 개념은, 방법들(1700, 1722, 1724) 각각에 대해, 최적의 또는 정확한 카메라 파라미터들이 대응하는 방법에 적절한 최소화된 비용 함수(1704)와 연관될 수 있다는 것이다. 예컨대, 24개의 카메라 파라미터(6개의 외재적 파라미터 및 18개의 내재적 파라미터)의 명목상의 경우에 대해, 파라미터들의 완전 탐색(brute-force search)은 파라미터당 100개의 값을 가정하여 비용 함수를 10024 회 평가하는 것을 요구할 수 있으며, 이는, 종래의 컴퓨터들을 사용하여 컴퓨팅하기 위해서는 지나치게 긴 시간이 걸린다(그것은, 종래의 컴퓨터들을 사용하면 우주의 나이보다 더 오래 걸릴 것임). 인식될 바와 같이, 실세계 설정에 대해 실용적이기 위해서는, 최적화 동작이 실시간으로 완료되어야 하고 섭동의 소스 또는 원인의 시간 스케일과 매칭하거나 더 빠른 시간 스케일로 구현되어야 한다. 따라서, 일부 실시예들에서, 탐색을 상이한 시간 스케일들로 분리함으로써 카메라 파라미터들이 효율적으로 탐색되는 것이 매우 바람직하다.
본 기술의 일부 실시예들에 따르면, 최적화 방법들(1700, 1722, 1724) 중 하나 이상은, 한정된 탐색 범위에 걸쳐 카메라 파라미터들의 서브세트에 대한 비용 함수(1704)를 반복적으로 평가할 수 있다. 일부 실시예들에서, 비용 함수(1704)의 평가의 속도를 높이기 위해, 최적화 방법들(1700, 1722, 1724) 중 하나 이상은, 제1 및 제2 카메라들(1300, 1302)로부터의 미가공 이미지들(1304, 1306)의 피라미드 레벨(1703)을 동적으로 조정할 수 있다. "피라미드"라는 용어는, 이미지들을 더 작은 이미지들로 다운샘플링하는 것을 지칭하는 것으로 널리 이해되는 통상의 컴퓨터 비전 용어이다. 비용 함수를 컴퓨팅하기 위한(즉, 최소 비용 함수를 결정하기 위한) 시간량은 처리되는 이미지의 크기에 비례할 수 있기 때문에, 절반 해상도(또는 피라미드 레벨 1)로 서브샘플링함으로써, 비용 함수를 컴퓨팅하기 위한 시간은 4배 만큼 감소될 수 있다. 개략적 파라미터 탐색들에 대해, 탐색의 속도를 높이기 위해 높은 피라미드 레벨들이 사용될 수 있다. 정밀 파라미터 탐색들에 대해, 향상된 정확도를 위해 낮은 피라미드 레벨들이 사용될 수 있다. 일부 실시예들에서, 최적화 방법들(1700, 1722, 1724)의 개개의 출력들(1610, 1612, 1614)은 대응하는 최적화 방법의 비용 함수(1704)를 최소화하는 카메라 파라미터들일 수 있다. 인식될 바와 같이, 비용 함수를 최소화하는 것은 또한 성능 지수를 최대화하는 것으로 간주될 수 있는데, 그 이유는, 그들이 등가의 접근법들로 간주될 수 있기 때문이다.
본 기술의 일부 실시예들에 따르면, 교정 건전성의 표시자가 명령 및 제어 라인(1312)을 통해 메인 시스템 제어기(1316)에 보고될 수 있다. 일부 실시예들에서, 교정 건전성은, 최적화된 카메라 파라미터들에 대응하는 (최소화된) 비용 함수(또는 최대화된 성능 지수)의 음인 것으로 간주될 수 있다.
본 기술의 일부 실시예들에 따르면, 비용 함수(1704)는, 미가공 이미지들(1304, 1306)의 크기를 감소시키도록 구성되는 피라미드 다운 블록(1701), 감소된 이미지들을 테스트 카메라 파라미터들(1702)에 따라 워핑 및 행-정렬하도록 구성되는 편위수정 블록(1706), 스테레오 블록 매칭 블록(1710), 및 유효 픽셀들의 수의 음수를 컴퓨팅하도록 구성되는 블록(1714)으로 구성될 수 있다. 일부 실시예들에서, 스테레오 블록 매칭 블록(1710)은, 다음의 파라미터들, 즉, 9 x 9의 픽셀-윈도우 크기, 정규화된 응답 전처리 필터(prefilter), 63의 전처리 필터 캡, 11의 전처리 필터 크기, 100의 스페클(speckle) 윈도우 크기, 64의 스페클 범위, 10의 텍스처 임계치, 10의 고유성 비, 및 0 내지 255의 디스패리티 탐색 범위를 포함할 수 있는 파라미터들을 갖는 OpenCV로부터의 스테레오 블록 매칭 알고리즘을 사용할 수 있다. 그러한 블록 매칭 알고리즘은, 많은 상이한 유형들의 프로세서들에 걸친 그의 빠른 실행을 위해 선택될 수 있다. 텍스처 임계치 및 고유성 비는, 잘못된 거리 추정치들의 수를 최소화하고 대응하는 픽셀들을 무효 픽셀들로 대체하기 위해 비교적 높게(예컨대, 10 - 50의 값) 설정될 수 있다. 일부 실시예들에서, 최적화 방법들(1700, 1722, 1724) 각각은, 스테레오 블록 매칭이 수행된 후의 무효 픽셀들의 수를 최소화하는 최적의 카메라 파라미터들을 찾을 수 있다.
도 17b는 본 기술의 일부 실시예들에 따른, 빠른 교정 엔진(1600)의 빠른 최적화 방법(1700)의 흐름도를 도시한다. 빠른 최적화 방법(1700)은 피치 및 롤 외재적 카메라 파라미터들을 조정할 수 있는데, 그 이유는, 이러한 파라미터들이 짧은 시간 스케일 왜곡들 대부분에 대한 원인일 수 있기 때문이다. 빠른 최적화 방법(1700)은, 최적화 방법들(1700, 1722, 1724) 중 가장 빈번한 업데이트들을 위해 사용될 수 있다. 빠른 최적화 방법(1700)은, 그것이 작은 범위에 걸쳐 비교적 적은 수(2개)의 카메라 파라미터를 탐색하기 때문에 빠른 것으로 간주될 수 있다.
빠른 최적화 방법(1700)의 단계(1726)에서, 선택된 그리드 지점들에서 비용들을 확인함으로써 카메라 파라미터들(1620)의 초기 추측에 대해 빠른 탐색이 수행된다. 일부 실시예들에서, 그리드 지점들은 전형적으로, 총 27개의 그리드 지점들에 대해, 카메라 파라미터들(1620)의 초기 추측에 관하여 -0.4 도 내지 0.4 도의 피치에서의 9개의 값 및 -0.2 도 내지 0.2 도의 롤에서의 3개의 값을 가질 수 있다. 비용 함수(1704)를 평가하는 것에 대해, 평가의 속도를 높이기 위해 1의 피라미드 레벨이 사용될 수 있다.
빠른 최적화 방법(1700)의 단계(1728)에서, 가장 낮은 비용(비용 함수(1704)의 최소치)에 대응하는 피치 및 롤이 그리드 지점들 중에서 선택될 수 있다.
빠른 최적화 방법(1700)의 단계(1730)에서, 비-선형 부등식 제약들을 갖는 미분 없는 최적화를 위한 COBYLA(선형 근사화들에 의한 제약된 최적화) 알고리즘이 단계(1728)에서 발견된 피치 및 롤, 카메라 파라미터들(1620)의 초기 추측의 다른 카메라 파라미터들, 및 피치 및 롤 둘 모두에서의 0.1 도의 경계들에 적용될 수 있다. 단계(1730)에서 사용된 비용 함수(1704)는 0의 피라미드 레벨을 가질 수 있다. 카메라 파라미터들(1620)은 COBYLA에 의해 발견된 가장 낮은 비용에 대응하는 피치 및 롤로 업데이트될 수 있고, 업데이트된 카메라 파라미터들(1610)이 빠른 최적화 방법(1700)에 대해 반환된다.
본 기술의 일부 실시예들에 따르면, COBYLA 알고리즘은, 지점들의 심플렉스(simplex)로 목적 함수 및 제약들의 연속적인 선형 근사화들을 구성할 수 있고, 각각의 단계에서, 신뢰 구역에서 이러한 근사화들을 최적화할 수 있다. 일부 실시예들에서, 피치에 대한 0.1 도 및 롤에 대한 0.1 도의 작은 탐색 범위에 걸쳐, 2개의 탐색 차원들, 즉, 스테레오 카메라들의 쌍의 상대적 피치 및 롤만이 존재하기 때문에, 최적화는 신속하게(예컨대, 인텔 코어(Intel Core) i7 CPU 프로세서 상에서 100 ms) 컴퓨팅될 수 있고, 필요한 경우, 20 FPS로 2개의 프레임마다 보상할 수 있다. 일부 실시예들에서, 탐색 범위는 주어진 플랫폼에 대한 예상 편위(excursion)들에 기반하여 증가 또는 감소될 수 있다. 예컨대, 자동차 상의 흡입 컵 장착들에 대해, 0.1 도면 충분히 큰 반면, 트레일 상에 얹혀진 산악 자전거 상의 느슨하게 장착된 카메라들에 대해, 0.2 도가 필요할 수 있다.
일부 실시예들에서, COBYLA 탐색 방법은, 또한 넬더-미드(Nelder-Mead) 심플렉스 탐색 방법, 브로이든-플레처-골드파-샨노(Broyden-Fletcher-Goldfar-Shanno)(BFGS) 방법, 파월(Powell)의 방법, 순차적 최소 제곱 프로그래밍(Sequential Least Squares Programming)(SLSQP) 방법, 또는 몬테 카를로(Monte Carlo) 방법들과 같은 다른 탐색 방법들로 대체될 수 있다는 것이 유의되어야 한다.
도 17ca는 본 기술의 일부 실시예들에 따른, 중간정도 교정 엔진(1602)의 중간정도 최적화 방법(1722)의 흐름도를 도시한다. 중간정도 최적화 방법(1722)은 빠른 최적화 방법(1700)보다 더 많은 파라미터들을 업데이트할 수 있지만, 빠른 최적화 방법(1700)보다 더 느리게 업데이트할 수 있다. 일부 실시예들에서, 중간정도 최적화 방법(1722)의 주요 목적은 병진 벡터를 찾은 다음 피치 및 롤을 최적화하는 것이다. 도 17cb는 본 기술의 일부 실시예들에 따른, 도 17ca의 중간정도 최적화 방법의 각도-탐색 프로세스의 흐름도를 도시한다.
중간정도 최적화 방법(1722)의 단계(1732)에서, 2개의 각도, 즉, ay 및 az에 의해 표현되는 병진 벡터 각도들에 걸쳐 그리드 탐색이 수행된다. 각도 ay는, xz 평면 상에서 측정된 x 축과 병진 벡터 사이의 각도일 수 있다. 각도 az는, yz 평면 상에서 측정된 x 축과 병진 벡터 사이의 각도일 수 있다. 예컨대, 탐색은, 카메라 파라미터들(1620)의 초기 병진 벡터를 중심으로 1 도 증분들로 -7 도로부터 7 도까지의 값들의 그리드(ay, az) 전부를 테스트할 수 있다. 각각의 병진 벡터에 대해, 단계(1732)는, 가장 낮은 비용을 산출하는 피치 및 롤 각도들의 최상의 투플(tuple)을 찾기 위해 각도-탐색 프로세스(1736)(도 17cb 참조)를 사용한다. 본 기술의 일부 실시예들에서, 각도-탐색 프로세스(1736)는, 탐색 프로세스를 개략적 각도 탐색(1738), 중간정도 각도 탐색(1740), 및 정밀 각도 탐색(1742)으로 나눌 수 있다.
개략적 각도 탐색(1738)은, 카메라 파라미터들(1620)에서 특정된 초기 피치, 요, 및 롤로부터 (0,0,0), (-1,-1,-1), (-1,-1,1), (-1,1,-1), (1,-1,-1), (1,1,-1), (1,-1,1), (-1,1,1), 및 (1,1,1) 도의 (피치, 요, 및 롤)에 중심을 둔 9개의 COBYLA 탐색을 적용할 수 있다. COBYLA 탐색은 빠른 평가를 위해 비용 함수(1704)와 함께 피라미드 레벨 3을 사용할 수 있고, 모든 각도들에 대한 탐색 경계들은 [-1,1] 도일 수 있다. 가장 낮은 비용에 대응하는 피치, 요, 및 롤은 중간정도 각도 탐색(1740)에 대한 시작점으로서 사용될 수 있다.
중간정도 각도 탐색(1740)은, 개략적 각도 탐색(1738)으로부터 반환된 피치, 요, 및 롤로부터 시작하는 COBYLA 탐색을 적용할 수 있다. 이러한 COBYLA 탐색은, 피치, 요, 및 롤에 대해 [-0.2, 0.2] 도의 각도 경계들을 가질 수 있고, 비용 함수(1704)에 대해 피라미드 레벨 3을 사용할 수 있다. 가장 낮은 비용에 대응하는 피치, 요, 및 롤은 정밀 각도 탐색(1742)에 대한 시작점으로서 사용될 수 있다.
정밀 각도 탐색(1742)은, 중간정도 각도 탐색(1740)으로부터 반환된 피치, 요, 및 롤로부터 시작하는 COBYLA 탐색을 적용할 수 있다. 이러한 COBYLA 탐색은, 피치, 요, 및 롤에 대해 [-0.1, 0.1] 도의 각도 경계들을 가질 수 있고, 비용 함수(1704)에 대해 피라미드 레벨 0을 사용할 수 있다. 가장 낮은 비용에 대응하는 피치, 요, 및 롤은 단계(1732)에 반환될 수 있다.
단계(1732)로부터의 ay, az, 피치, 요, 및 롤에 대한 최상의 추정치는, (ay, az)에 대한 COBYLA 최적화를 적용하는 것에 이어서 (피치, 요, 롤)에 대한 COBYLA 최적화를 적용하는 것이 후속될 수 있는 정밀 병진 벡터 및 각도 탐색(1734)에 대한 시작점으로서 사용될 수 있다. COBYLA 탐색들 둘 모두는, 최적화 파라미터들에 대한 민감도를 최대화하기 위해 비용 함수(1704)에 대해 피라미드 레벨 0을 사용할 수 있다. 2개의 COBYLA 탐색은, 비용 함수에서 개선이 거의 보이지 않을 때까지 반복될 수 있다. 초기 카메라 파라미터들(1620)은 ay, az, 피치, 요, 및 롤에 대한 최적의 값들로 업데이트될 수 있고, 이어서, 업데이트된 카메라 파라미터(1612)이 중간정도 최적화 방법(1722)으로부터 반환될 수 있다.
도 17da 내지 도 17dd(총괄적으로, "도 17d")는 본 기술의 일부 실시예들에 따른 느린 최적화 방법의(1724) 흐름도들을 도시한다. 일부 실시예들에서, 도 17d의 느린 최적화 방법(1724)은, 공장 교정에서 한 번, 그리고 이어서, (예컨대, 가속도계 또는 다른 센서가 큰 충격 이벤트를 보고한 후에) 메인 시스템 제어기(1316)에 의해 필요하다고 간주될 때, 느린 교정 엔진(1604)에 의해 수행될 수 있다. 느린 최적화 방법(1724)은 외재적 카메라 파라미터들 및 내재적 카메라 파라미터들을 최적화할 수 있다. 단계(1744)에서, [-10, 10] 도에 걸쳐 일정 샘플링 간격(예컨대, 0.2 도, 0.4 도, 0.7 도 등)으로 피치, 요, 및 롤 각도들에 대해 전역 그리드 탐색이 수행될 수 있다. 도 17d의 나머지 단계들(1746 내지 1796)은, COBYLA와 같은 국부 탐색 방법들을 카메라 파라미터들(1602)의 이전의 최상의 추정치에 적용할 수 있다. 위에 언급된 바와 같이, 내재적 카메라 파라미터들은, 초점 길이들(FX, FY), 관통 지점들(CX, CY), 및 렌즈 왜곡 계수들(K1, K2, K3, P1, P2)일 수 있다. 외부 카메라 파라미터들은, 피치, 요, 롤, 및 병진 벡터(TX, TY, TZ)일 수 있다. 일부 실시예들에서, 피치, 요, 및 롤의 최적화에 이어서, 단계(1746)로부터 단계(1748)로, 단계(1768)로부터 단계(1770)로, 단계(1772)로부터 단계(1774)로, 단계(1784)로부터 단계(1786)로, 그리고 단계(1788)로부터 단계(1790)로의 병진 벡터의 최적화가 후속될 수 있는데, 그 이유는, 상보적 파라미터들(예컨대, 피치 및 TX; 롤 및 TY; 요 및 TZ)이 이미지들(예컨대, 미가공 이미지들(1304, 1306))을 유사하게 워핑할 수 있기 때문이다.
도 18은 본 기술의 일부 실시예들에 따른, 자동교정 엔진(1414)의 스테레오 이미지 안정화 엔진(1608)에 대한 흐름도를 도시한다. 스테레오 이미지 안정화 엔진(1608)은, 카메라 1 및 카메라 2로부터 획득된 이미지들을 수평으로 그리고 수직으로 편이시키기 위한 양을 결정할 수 있으며, 이에 따라, 이러한 카메라들 사이의 상대적 변위가 최소화된다. 스테레오 이미지 안정화 엔진(1608)은, 가장 빠른 섭동들(예컨대, 엔진 잡음 및 도로 잡음)을 보상할 수 있고 모든 각각의 프레임을 업데이트할 수 있다. 지구에 대해 이미지를 안정화할 수 있는 종래의 단안 이미지 안정화와 달리, 스테레오 이미지 안정화 엔진(1608)은 2개의 이미지를 서로에 대해 안정화할 수 있다. 일부 실시예들에서, 스테레오 이미지 안정화 엔진(1608)은, 카메라 1로부터의 미가공 이미지들(1304)로부터 생성된 편위수정된 이미지들(1406) 및 카메라 2의 미가공 이미지들(1306)로부터 생성된 편위수정된 이미지들(1408)을 입력으로서 수신할 수 있다. 스테레오 이미지 안정화 엔진(1608)은, 카메라 1에 대한 병진 파라미터들(1426) 및 카메라 2에 대한 병진 파라미터들(1428)을 출력할 수 있다. 1800에서, 순방향 추적 프로세스는, 이전 프레임으로부터 현재 프레임으로의 좌측 및 우측 편위수정된 이미지들일 수 있는 편위수정된 이미지들(1406, 1408)에 대한 피라미드들로 반복적 루카스-카나데(Lucas-Kanade) 방법을 사용하여 희소 피쳐 세트에 대한 광학 흐름을 컴퓨팅할 수 있다. 1802에서, 역방향 추적 프로세스는, 현재 프레임의 지점들로부터 이전 프레임으로 역방향으로의 광학 흐름을 컴퓨팅할 수 있다. 1804에서, 프로세스는, 역방향 트랙들로부터 양호한 트랙들을 결정할 수 있다(예컨대, 양호한 트랙은, 1802에서의 역방향 추적 프로세스가 트랙의 이전 지점의 1 픽셀 내의 지점을 재투영할 때임). 1806에서, 프로세스는, 불량 트랙들을 드롭할 수 있다. 1808에서, 프로세스는, 나머지 양호한 지점들을 트랙들에 부가할 수 있다. 1810에서, 프로세스는, 병진 파라미터들의 추정치를 업데이트할 수 있다. 일부 실시예들에서, 카메라 1에 대한 병진 파라미터들(1426) 및 카메라 2에 대한 병진 파라미터들(1428)은, 카메라 1 및 카메라 2로부터의 이미지들의 행들 및 열들을 이전 프레임에 대해 편이시킬 양들일 수 있다. 일부 실시예들에서, 병진 파라미터들은, 평균으로부터 이상치들이 제거된, 프레임별 카메라 1 및 카메라 2로부터의 이미지들 사이의 평균 상대적 병진과 동일할 수 있다.
여러 프레임들 후에, 하나 이상의 트랙이 드롭될 수 있는데, 그 이유는, 특징점들이 스크린 밖으로(예컨대, 시야 밖으로) 이동할 수 있거나 가려질 수 있기 때문이다. 1812에서, 프로세스는, 새로운 트랙들을 생성하기 위해 새로운 특징점들을 찾을 수 있다. 예컨대, n개의 프레임마다 ― n은 전형적으로 5일 수 있음 ―, 스테레오 이미지 안정화 엔진(1608)은 편위수정된 이미지들(1406, 1408)에서 새로운 특징점들을 탐색할 수 있다. 특징점 검출기(도시되지 않음)는, 예컨대, 시-토마시(Shi-Tomasi) 모서리 검출기를 사용하여, 추적할 양호한 지점들을 찾을 수 있다. 1814에서, 프로세스는, 카메라 1과 카메라 2 사이의 임의의 상대적 모션을 제거하기 위해, 병진 파라미터들(1426, 1428)을 사용하여, 편위수정된 이미지들(1406, 1408)을 병진시킬 수 있다. 1816에서, 프로세스는, 블록 매칭 알고리즘을 사용하여, 편위수정된 이미지들(1406, 1408)로부터 디스패리티 맵을 컴퓨팅할 수 있다. 1818에서, 프로세스는, 카메라 1의 편위수정된 이미지(1406)에 대한 현재 추적된 특징점들을 무시할 수 있고, 1820에서, 프로세스는, 카메라 1의 편위수정된 이미지(1406)에서 추적할 양호한 피쳐들을 찾을 수 있다. 1822에서, 카메라 1의 편위수정된 이미지(1406)에 대해 발견된 각각의 특징점에 대해, 프로세스는, 1824, 1826, 1828, 1830에서의 프로세스들을 사용하여 카메라 2의 편위수정된 이미지(1408)에서 매칭하는 특징점을 찾을 수 있다. 1824에서, 위상 상관 함수에 대한 해닝(Hanning) 윈도우를 생성하기 위한 프로세스가 수행될 수 있다. OpenCV에서, 위상 상관은, 동일한 크기를 갖는 2개의 이미지의 유사성을 확인하기 위한 방법을 지칭한다. 위상 상관은 템플릿 매칭의 빠른 구현이다. 1826에서, 카메라 1과 카메라 2 사이의 매칭하는 특징점들을 찾기 위한 프로세스가 수행될 수 있다. 이미지들(1406 및 1408)이 편위수정되므로, 매칭하는 특징점들은 동일한 행을 따라 놓여 있다. 카메라 1 특징점 열 값들에 디스패리티 값들(1816)을 부가하는 것은, 카메라 2 특징점 열 값들에 대한 예상 위치를 산출한다. 1828에서, 매칭된 특징점들에 대한 위상 상관 함수를 컴퓨팅함으로써 1826의 매칭들을 검증하기 위한 프로세스가 수행될 수 있다. 위상 상관 함수는, 카메라 1과 카메라 2 사이의 매칭하는 특징점들의 쌍들에 중심을 둔 이미지 패치들(전형적으로 40 x 40 픽셀)에 걸쳐 컴퓨팅된다. 위상 상관 함수는, 보정된 좌표 편이 및 응답(전형적으로, 2개의 이미지 패치의 유사성을 표시하는 0과 1 사이의 값)을 반환한다. 1830에서, 매칭하는 특징점들을 기록하고, 1828로부터의 보정된 좌표 편이에 따라 특징점 좌표들을 보정하고, 위상 상관 응답이 임계 값(전형적으로, 0.3의 임계 값)보다 큰 경우 트랙 정보를 업데이트하기 위한 프로세스가 수행된다.
본 기술의 일부 실시예들에서, 절대 범위 교정 엔진(1606)은, 3개의 상이한 구현(1606a, 1606b, 및 1606c로 지칭됨)을 가질 수 있으며, 이들 중 임의의 것 또는 그 전부가 자동교정 엔진(1414)에 포함될 수 있다. 3개의 구현(1606a, 1606b, 및 1606c)은 상이한 절대 거리 기준들을 사용할 수 있는데, 즉, 구현(1606a)은 음이 아닌 디스패리티 제약을 사용할 수 있고(도 19a, 도 19b 참조), 구현(1606b)은 정지 표지판과 같은 알려진 객체를 사용할 수 있고(도 20a, 도 20b 참조), 구현(1606c)은 차량 주행 거리 측정을 사용할 수 있다(도 21a, 도 21b 참조). 일부 실시예들에서, 카메라들(1300, 1302) 사이의 상대적 요는 스테레오 비전 시스템의 절대 범위의 교정에 큰 영향을 미칠 수 있다. 절대 범위 교정 엔진(1606)은 요를 교정하는 데 사용될 수 있다.
도 19a는 본 기술의 일부 실시예들에 따른, 절대 범위 교정 엔진(1606)이 음이 아닌 디스패리티 제약을 갖는 구현(1606a)의 흐름도를 도시한다. 구현(1606a)은, 제1 및 제2 카메라들(1300, 1302)의 주 광선들이 교차하지 않는 요를 찾을 수 있다. 주 광선들이 카메라들 앞에서 교차할 때, 대응하는 디스패리티 값은 교차점보다 더 먼 범위들에서 음일 수 있다. 광선들이 교차하지 않을 때까지 요를 조정함으로써, 카메라들(1300, 1302)은 평행하게 될 수 있고, 디스패리티 맵(1712) 내의 음의 값들의 수가 최소 값으로 (때때로, 대폭) 감소할 수 있고, 정확한 절대 범위가 발견될 수 있다.
도 19b는 본 기술의 일부 실시예들에 따른, 디스패리티 맵(예컨대, 디스패리티 맵은 초기 카메라 파라미터들(1620)을 사용한 편위수정 후에 미가공 이미지들(1304, 1306)로부터 컴퓨팅되지만 다양한 요 값들을 가짐)에서 음의 디스패리티 값을 갖는 픽셀들의 수가 요의 함수로서 어떻게 변할 수 있는지를 도시하는 도표(1900)이다. 도표(1900)에서 대략적으로 1.8 도 미만의 요 값들에 대해, 음의 디스패리티 값들의 수가 크게 증가하며, 이는, 카메라들(1300, 1302)의 주 광선들이 긴 범위에서 그리고 이어서 점점 더 가까운 범위에서 교차하기 시작할 수 있다는 것을 표시한다. 1.65 도 미만의 요 값들에 대해, 음의 디스패리티 값들의 수는 감소한다. 이는, 이러한 분석에서 사용되는 블록 매칭기가 -32 픽셀까지의 디스패리티 값들만을 탐색할 수 있기 때문일 수 있다. -33 픽셀 이하의 디스패리티 값들을 갖는 임의의 픽셀은 계수되지 않을 수 있다. 1.85 도보다 큰 요 값들에 대해, 음의 값들을 갖는 픽셀들의 수는 작지만 영(zero)이 아니다. 이는, 잘못 매칭된 픽셀들이 때때로 음의 디스패리티 값들을 가질 수 있기 때문일 수 있다. 요망되는 요는, 도표(1900)가, 픽셀들의 수가 적고 일반적으로 일정한(도표(1900)에서, 요 > 1.85 도인) 구역으로부터 천이하는 천이 구역에 있고, 픽셀들의 수가 급속하게 증가하는 구역(예컨대, 상향 지시 화살표(1912)로 표시된 구역)을 포함한다. 도표(1900)는 또한, 픽셀들의 디스패리티 값들이 최소 디스패리티 한계보다 더 음일 수 있는 구역(예컨대, 하향 지시 화살표(1914)로 표시된 구역)을 도시한다. 도 19a에 도시된 구현(1606a)의 흐름도를 다시 참조하면, 1920에서, 디스패리티 맵이 컴퓨팅되는 요에 대한 초기 추측(1904)을 중심으로 -0.5 도(1902 참조)로부터 1.0 도(1906 참조)까지 개략적 탐색이 수행되고, 음의 디스패리티 값들의 수가 집계된다. 탐색은 0.1 도 단계들로 수행될 수 있다. 개략적 탐색의 결과는 16개의 값의 어레이일 수 있다. 도표(1900)는, 개략적 곡선에 대한 16개의 데이터포인트의 플롯의 예이다. 요에 대한 개략적 곡선의 미분이 컴퓨팅될 수 있다. 개략적 곡선의 미분은 변화들에 민감할 수 있고, 따라서, 개략적 곡선에서 천이들을 찾는 데 유용할 수 있다. 1922에서, 천이 구역(예컨대, 도표(1900)에서 1.65 도로부터 1.8 도까지의 구역)이 꼬리 잡음(1908)의 5 배보다 더 큼을 확실히 함으로써 개략적 탐색의 품질이 확인된다. 꼬리 잡음(1908)은 개략적 곡선의 미분의 마지막 5개의 지점의 표준 편차인 것으로 정의될 수 있다. 다시 말해서, 천이 구역은, 음의 디스패리티들의 수가 영이어야 하는 구역과 비교하여 음의 디스패리티 값들의 수에서의 상당한 변화를 가져야 한다. 다음으로, 1924에서, 가장 음의 기울기에 대응하는 요(예컨대, 도표(1900)에서 ~1.7 도의 요)를 중심으로 탐색함으로써 정밀 탐색 범위가 결정된다. 가장 큰 개략적 요 값으로부터 시작하여 더 낮은 개략적 요 값들을 탐색하는 상한은, 개략적 곡선의 미분이 꼬리 잡음의 -3 배보다 큰 값인 것으로 결정된다. 가장 음의 기울기에 대응하는 요로부터 시작하여 가장 큰 요로 증가하는 하한은, 개략적 곡선의 미분이 꼬리 잡음의 -3 배 미만인 값인 것으로 결정된다. 다음으로, 1926에서, 하한으로부터 상한까지 정밀 탐색 그리드가 생성되고, 정밀 탐색이 수행된다. 이러한 그리드는 전형적으로 21개의 지점을 가질 수 있다. 1928에서, 음의 디스패리티 픽셀들의 최소 수에 대응하는 요 값이 결정된다. 일부 실시예들에서, 곡선에서의 천이 지점이 이러한 방식으로 추정될 수 있다.
도 20a는 본 기술의 일부 실시예들에 따른, 절대 범위 교정 엔진(1606)이 알려진 치수들을 갖는 객체를 사용하는 구현(1606b)의 흐름도를 도시한다. 도 20b는 본 기술의 일부 실시예들에 따른, 알려진 치수들을 갖는 객체(2006)를 이미징하기 위한 이미징 광학계의 예를 예시한다. 일부 실시예들에서, 객체(2006)의 치수들이 알려져 있기 때문에 그리고 카메라들(1300, 1302)의 카메라 렌즈들의 초점 길이들이 알려져 있기 때문에, 객체(표적)(2006)까지의 범위 또는 거리가 수학식(2020)에 의해 결정될 수 있다. 더 구체적으로, 수학식(2020)에 따르면, 객체의 폭(W)(2012 참조) 대 객체까지의 범위(R)(2014 참조)의 비는, 카메라 렌즈(2008)의 초점 길이(F)(2016 참조) 대 카메라 센서(2010)(예컨대, CMOS 센서)에 의해 감지된 이미지의 폭(H)(2018 참조)의 비와 동일하다. 일부 실시예들에서, 알려진 객체는, 알려진 검출 기술(예컨대, 교통 표지판 인식 시스템, 번호판(license plate) 검출기, 객체 검출기 등)을 사용하여 자동화된 방식으로 인식될 수 있다. 일부 실시예들에서, 알려진 객체는, 경계 박스 및 알려진 객체까지의 거리의 수동 입력에 의해 수동으로 특정될 수 있다. 정지 표지판들을 검출하기 위한 객체 검출기의 예가 도 24에 도시된다.
도 20a에 도시된 구현(1606b)의 흐름도를 다시 참조하면, 2000에서, 절대 범위 교정 엔진(1600)이, 객체까지의 평균 거리가 알려진 거리와 동일한 요를 찾는다. 본 기술의 일부 실시예들에서, 평균 거리는 객체의 관심 구역에 걸쳐 컴퓨팅될 수 있다. 2002에서, 먼저, 초기 카메라 파라미터들(1620)의 요의 ±0.1 도로 간격을 초기화하고, 이어서, 관심 구역에 걸친 평균 깊이가 간격의 좌측 끝에서 양이고 간격의 우측 끝에서 음일 때까지 좌측 및 우측 끝들을 0.1 도씩 수정함으로써, 근 찾기(root finding) 알고리즘에 대한 양호한 시작 간격이 발견된다. 2004에서, 근 찾기 알고리즘이 실행된다. 일부 실시예들에서, 근 찾기 알고리즘은, 2002에서 발견된 탐색 간격이 요의 최상의 추정치를 결정하는 데 사용되는 브렌트(Brent)의 방법일 수 있다. 후속하여, 초기 카메라 파라미터들(1620)이 업데이트된 요 값(1616)과 함께 반환된다.
도 21a는 본 기술의 일부 실시예들에 따른, 절대 범위 교정 엔진(1606)이 차량 주행 거리 측정(1628)을 활용하는 구현(1606c)의 흐름도를 도시한다. 도 21b는 본 기술의 일부 실시예들에 따른, 디스패리티가 범위의 함수로서 어떻게 변할 수 있는지를 도시하는 도표(2108)이다. 주행 거리 측정(예컨대, 속도, 거리, 진로 방향(heading) 등)은 자동차-내("온-보드") 센서들로부터 이미 이용가능한 정보일 수 있고, 스테레오 비전 시스템의 요를 계산하는 것을 돕는 데 사용될 수 있다. 일부 실시예들에서, 주행 거리 측정은 온-보드 레이더 및/또는 라이다 시스템들로부터 이용가능할 수 있다. 구현(1606c)에서는, 2100에서, 스테레오 이미지 안정화 엔진(1608)으로부터의 각각의 트랙(1626)에 대해, 범위의 변화(ΔRODO)는, 시간 t1로부터 시간 t2까지의 주행 거리 측정 데이터로부터의 컴퓨터이다. 대응하는 범위의 변화(ΔR)는 스테레오 비전 시스템에 의해 측정되고, 잘못된 교정 때문에 ΔRODO와 매칭하지 않을 수 있다. 2102에서, 디스패리티 오프셋(doffset)이 d = fB/R에 의해 표현되는 함수를 사용하여 컴퓨팅되고, 여기서, f는 렌즈의 초점 길이이고, B는 제1 카메라(1300)와 제2 카메라(1302) 사이의 기준선 폭이며, 이에 따라, 보정된 범위(ΔR')는 ΔRODO와 동일하다. 정지상태 객체들의 트랙들은 doffset에 대해 동일하거나 유사한 값들을 제공할 수 있지만, 움직이는 객체들은 그렇지 않을 수 있다. 2104에서, doffset에 대한 이상치 값들이 제거되고 나머지 값들은 평균된다. 2104에서, 초기 요에 평균 디스패리티 오프셋을 카메라들의 초점 길이로 나눈 것을 더한 것과 동일하도록 요가 교정된다. 후속하여, 초기 카메라 파라미터들(1620)이 업데이트된 요 값(1616)과 함께 반환된다.
도 22는 본 기술의 일부 실시예들에 따른, 교정 관리자(1624)에 의해 수행되는 절차의 흐름도를 도시한다. 2200에서, 카메라 파라미터들이 초기화되고, 명령 및 제어 인터페이스(1312)는 교정 엔진들(1600, 1602, 1604, 1606, 1608)을 구성한다. 초기 카메라 파라미터들은, 청사진들, CAD 도면들, 제조업체의 데이터시트들 등으로부터 획득된 외재적 및 내재적 카메라 파라미터들일 수 있거나, 수동 교정 절차들로부터 획득될 수 있다. 2202에서, 교정 관리자(1624)는 교정 엔진들(1600, 1602, 1604, 1606, 1608)로부터의 출력들을 대기한다. 일단 카메라 파라미터의 추정치의 출력이 수신되면, 2204에서, 추정치가 추적 필터(예컨대, 칼만 필터)에서 사용되며, 추적 필터는, 시간 경과에 따른 일련의 측정치들을 사용하고 카메라 파라미터의 새로운 추정치를 생성하며, 이는, 단일 측정치 단독에 대한 추정치보다 더 정확할 수 있다. 이는, 복수의 카메라 파라미터들 각각에 대해 행해질 수 있다. 2206에서, 카메라 파라미터들에 대한 새로운 추정치들이 저장 디바이스(1622)에 저장될 수 있고, 카메라 1 및 카메라 2에 대한 업데이트된 카메라 파라미터들(1410, 1412)이 교정 관리자(1624)로부터 출력될 수 있다.
도 23은 본 기술의 일부 실시예들에 따른, 교정 관리자(1624)의 시계열 입력도를 도시한다. 상이한 프레임률들(예컨대, 10, 30, 또는 60 FPS)에 대응할 수 있는 상이한 프레임 번호들에 대한 시간 축이 도시된다. 상향 화살표들은 교정 관리자(1624)에 의한 교정 방법(1600, 1602, 1604, 1606, 1608)의 초기화 또는 시작을 표시하고, 하향 화살표들은 교정 방법의 완료를 표시하며, 여기서, 최적의 파라미터들이 교정 관리자(1624)에 반환된다. 도 23의 교정 방법들에 대한 실행 시간들은 일 실시예의 예이다.
도 24는 본 기술의 일부 실시예들에 따른, 절대 범위 교정에 사용될 수 있는 정지 표지판 검출기(2400)에 의해 수행될 수 있는 절차의 흐름도를 도시한다. 검출기(2400)에 대한 입력은 컬러 이미지(2402)일 수 있다. 예컨대, 검출기(2400)는, "STOP"이라는 문자들에서 적색의 연결된 성분들의 배열을 찾을 수 있다. 이러한 성분들은, 타원 내부의 적색 구역(예컨대, 문자 "O"의 2406), 특정 형상 내부의 적색 구역(예컨대, 문자 "P"의 2408), 및 적색 팔각형 구역(2404)을 포함할 수 있다. 연결된 성분들의 상대적 위치들 및 크기들은, 적은 컴퓨팅 리소스들로 빠르게 검출될 수 있는 고유의 시그니처를 제공할 수 있다.
도 25는 본 기술의 일부 실시예들에 따른, 스테레오 대응 엔진(1420)에 의해 수행되는 절차의 흐름도를 도시한다. 스테레오 대응 엔진(1420)에 대한 입력은 카메라 1 및 카메라 2로부터의 편위수정 및 안정화된 이미지들(1430, 1432)일 수 있다. 스테레오 대응 엔진(1420)은 깊이 맵들(1308) 및 신뢰도 맵들(1314)을 출력할 수 있다. 일부 실시예들에서, 편위수정 및 안정화된 이미지(1430)에서의 매칭 윈도우(2500)는 편위수정 및 안정화된 이미지(1432)에서의 대응하는 행(2502)과 비교될 수 있다. 각각의 픽셀에 대해, 결과적인 매칭 값(2506)은 매칭 윈도우와 대응하는 행(2502)을 따른 각각의 오프셋 사이의 절대 차이들의 합의 음의 값일 수 있다. 각각의 오프셋에 대한 매칭 값이 컴퓨팅될 수 있으며, 여기서, 최상의 매칭(2510)은 가장 높은 매칭 값에 대응할 수 있고, 두 번째 최상의 매칭(2512)은 두 번째 가장 높은 매칭 값에 대응할 수 있다. 주어진 픽셀에 대한 고유성 비는, 최상의 매칭(2510)을 두 번째 최상의 매칭(2512)으로 나눈 것으로서 결정되는 비일 수 있다. 더 높은 신뢰도는 더 높은 고유성 비에 대응한다. 깊이 맵(1308)은 최상의 매칭(2510)으로부터 도출될 수 있다. 신뢰도 맵은, 최상의 매칭(2510) 대 두 번째 최상의 매칭(2512)의 비로부터 도출될 수 있다.
본 기술의 일부 실시예들에 따르면, 처리 구성요소(1310)는 하드웨어(예컨대, 위에 설명된 절차들 및 방법들을 수행하도록 프로그래밍되는 컴퓨터 프로세서)로 구현될 수 있다. 본 기술의 일부 실시예들에 따르면, 처리 구성요소(1310)는, 비-일시적인 컴퓨터 판독가능 저장 매체 상에 또는 복수의 비-일시적인 컴퓨터 판독가능 저장 매체들 상에 저장될 수 있고 컴퓨터 프로세서에 의해 액세스 및 실행될 수 있는 소프트웨어(예컨대, 컴퓨터 실행가능 코드)로 구현될 수 있다. 본 기술의 일부 실시예들에 따르면, 처리 구성요소(1310)는 하드웨어와 소프트웨어의 조합으로 구현될 수 있다. 일부 실시예들에서, 처리 구성요소(1310)의 양상들은 하나 이상의 소프트웨어 모듈로서 구현될 수 있다. 예컨대, 처리 구성요소(1310)의 하나 이상의 엔진은, 비-일시적인 컴퓨터 판독가능 저장 매체 상에 저장된 소프트웨어 모듈(들)로서 구현될 수 있다.
본원에 설명된 기술에 따른 스테레오 이미징 시스템은 상이한 구성들로 구현될 수 있다. 예시적인 구성들은 다음과 같은 구성 (1) 내지 구성 (27)의 조합들을 포함한다:
(1) 스테레오 비전 시스템은, 제1 이미지의 제1 반사 에너지를 감지하고 제1 반사 에너지에 기반하여 제1 센서 신호들을 생성하도록 구성되는 제1 카메라 센서; 제2 이미지의 제2 반사 에너지를 감지하고 제2 반사 에너지에 기반하여 제2 센서 신호들을 생성하도록 구성되는 제2 카메라 센서; 제1 카메라 센서로부터 제1 센서 신호들을 그리고 제2 카메라 센서로부터 제2 센서 신호들을 수신하고, 제1 및 제2 센서 신호들로부터 3차원(3D) 데이터를 생성하도록 구성되는 적어도 하나의 프로세서를 포함하며, 적어도 하나의 프로세서는, 스테레오 교정 파라미터들을 활용하여 제1 및 제2 센서 신호들로부터 편위수정된 스테레오 이미지들을 생성하고, 편위수정된 이미지들에 대해 스테레오 매칭을 수행하고, 제1 및 제2 카메라 센서들에 의해 획득된 복수의 스테레오 이미지들로부터의 데이터를 사용하여 자동 시스템 교정을 수행하도록 구성되고, 자동 시스템 교정은 비용 함수를 최소화하는 것에 기반한다.
(2) 구성 (1)의 스테레오 비전 시스템에서, 자동 시스템 교정은, 다음 중 하나 또는 둘 모두를 수행하기 위해 제1 스테레오 교정 파라미터들을 생성하도록 구성되는 빠른 교정 절차로 구성된다:
제1 및 제2 이미지들 내의 피쳐들에 대응하는 이미지 지점(image point)들을 추적하는 것에 기반하여 고-주파수 섭동들을 보상하는 것, 및
각각의 카메라에 대해, 초점 길이, 주점, 적어도 하나의 방사상 렌즈 왜곡 계수, 및 적어도 하나의 접선 렌즈 왜곡 계수 중 임의의 하나 또는 이들의 임의의 조합을 교정하는 것.
(3) 구성 (1) 내지 구성 (2) 중 임의의 구성의 스테레오 비전 시스템에서, 자동 시스템 교정은, 다음 중 하나 또는 둘 모두를 수행하기 위해 제2 스테레오 교정 파라미터들을 생성하도록 구성되는 중간정도 교정 절차로 구성된다:
상대적 카메라 피치 및 상대적 카메라 롤의 함수로서 밀집 스테레오 블록 매칭에 대한 유효 픽셀들의 수를 최적화하는 것에 기반하여 중간-주파수 섭동들을 보상하는 것, 및
각각의 카메라에 대해, 초점 길이, 주점, 적어도 하나의 방사상 렌즈 왜곡 계수, 및 적어도 하나의 접선 렌즈 왜곡 계수 중 임의의 하나 또는 이들의 임의의 조합을 교정하는 것.
(4) 구성 (1) 내지 구성 (3) 중 임의의 구성의 스테레오 비전 시스템에서, 자동 시스템 교정은, 다음 중 하나 또는 둘 모두를 수행하기 위해 제3 스테레오 교정 파라미터들을 생성하도록 구성되는 느린 교정 절차로 구성된다:
상대적 카메라 피치, 상대적 카메라 롤, 상대적 카메라 요, 상대적 카메라 위치 중 임의의 하나 또는 이들의 임의의 조합의 함수로서 밀집 스테레오 블록 매칭에 대한 유효 픽셀들의 수를 최적화하는 것에 기반하여 저-주파수 섭동들을 보상하는 것, 및
각각의 카메라에 대해, 초점 길이, 주점, 적어도 하나의 방사상 렌즈 왜곡 계수, 및 적어도 하나의 접선 렌즈 왜곡 계수 중 임의의 하나 또는 이들의 임의의 조합을 교정하는 것.
(5) 구성 (1) 내지 구성 (4) 중 임의의 구성의 스테레오 비전 시스템에서, 자동 시스템 교정은, 음이 아닌 디스패리티 제약에 기반하여 상대적 카메라 요에 대한 스테레오 교정 파라미터를 생성하도록 구성되는 절대 범위 교정 절차로 구성된다.
(6) 구성 (1) 내지 구성 (5) 중 임의의 구성의 스테레오 비전 시스템에서, 자동 시스템 교정은, 복수의 스테레오 이미지들의 장면 내의 객체의 치수들 및 제1 및 제2 카메라 센서들의 초점 길이에 기반하여 상대적 카메라 요에 대한 스테레오 교정 파라미터를 생성하도록 구성되는 절대 범위 교정 절차로 구성된다.
(7) 구성 (6)의 스테레오 비전 시스템에서, 객체는 교통 표지판이다.
(8) 구성 (6)의 스테레오 비전 시스템에서, 객체는 번호판이다.
(9) 구성 (1) 내지 구성 (8) 중 임의의 구성의 스테레오 비전 시스템에서, 자동 시스템 교정은, 차량 주행 거리 측정에 기반하여 상대적 카메라 요에 대한 스테레오 교정 파라미터를 생성하도록 구성되는 절대 범위 교정 절차로 구성된다.
(10) 구성 (1) 내지 구성 (9) 중 임의의 구성의 스테레오 비전 시스템에서, 자동 시스템 교정은, 느린 교정 절차, 중간정도 교정 절차, 빠른 교정 절차, 및 절대 범위 교정 절차의 동작 스케줄을 관리하도록 구성되는 교정 관리 절차로 구성된다.
(11) 구성 (1) 내지 구성 (10) 중 임의의 구성의 스테레오 비전 시스템에서, 자동 시스템 교정은, 자동 시스템 교정의 정확도를 표시하는 교정 건전성 표시자로 구성된다.
(12) 구성 (1) 내지 구성 (11) 중 임의의 구성의 스테레오 비전 시스템에서, 스테레오 매칭은, 복수의 스테레오 이미지들의 각각의 픽셀에 대한 깊이 추정치 신뢰도 점수로 구성된다.
(13) 구성 (1) 내지 구성 (12) 중 임의의 구성의 스테레오 비전 시스템에서, 제1 및 제2 카메라 센서들은, 차량, 자동차, 트럭, 신호등, 가로등 기둥, 차량의 좌측 측면 및 우측 측면 뷰 미러들 각각, 차량의 루프 라인, 방풍창의 상부 좌측부 및 상부 우측부 각각, 및 좌측 및 우측 헤드 램프들 각각 중 임의의 것 상에 장착된다.
(14) 구성 (1) 내지 구성 (13) 중 임의의 구성의 스테레오 비전 시스템에서, 비용 함수는, 디스패리티 맵 내의 유효 픽셀들의 수에 기반한다.
(15) 구성 (1) 내지 구성 (14) 중 임의의 구성의 스테레오 비전 시스템에서, 비용 함수는, 내재적 카메라 파라미터들에 기반하여 최적화된다.
(16) 구성 (1) 내지 구성 (15) 중의 스테레오 비전 시스템에서, 비용 함수는, 외재적 카메라 파라미터들에 기반하여 최적화된다.
(17) 구성 (1) 내지 구성 (16) 중 임의의 구성의 스테레오 비전 시스템에서, 적어도 하나의 프로세서는, 교정 건전성 표시자를 제공하도록 구성된다.
(18) 구성 (1) 내지 구성 (17) 중 임의의 구성의 스테레오 비전 시스템은, 제1 및 제2 카메라 센서들의 최소 깊이 범위보다 더 가까운 범위 내의 객체들에 대한 3D 데이터를 제공하도록 구성되는 근접 범위 센서 시스템을 더 포함하며, 적어도 하나의 프로세서는, 제1 및 제2 센서 신호들로부터 생성된 3D 데이터를 근접 범위 센서 시스템에 의해 제공된 3D 데이터와 결합하도록 구성된다.
(19) 구성 (18)의 스테레오 비전 시스템에서, 근접 범위 센서 시스템은, 제1 및 제2 카메라 센서들보다 더 넓은 시야 및 더 짧은 기준선 거리를 갖는 한 쌍의 카메라 센서들로 구성된다.
(20) 구성 (18)의 스테레오 비전 시스템에서, 근접 범위 센서 시스템은 제3 카메라 센서로 구성되며, 제3 카메라 센서는, 제1 및 제2 카메라 센서들이 제1 및 제3 카메라 센서들보다 더 짧은 기준선 길이를 갖도록 제1 및 제2 카메라 센서들과 함께 삼안(trinocular) 스테레오 시스템을 형성한다.
(21) 구성 (18)의 스테레오 비전 시스템에서, 근접 범위 센서 시스템은 비행 시간 카메라로 구성된다.
(22) 구성 (1) 내지 구성 (21) 중 임의의 구성의 스테레오 비전 시스템은, 제1 및 제2 카메라 센서들의 시야를 향해 가시 또는 적외선 방사선을 방출하도록 구성되는 능동 조명 디바이스를 더 포함한다.
(23) 구성 (22)의 스테레오 비전 시스템에서, 능동 조명 디바이스는, 방사선을 방출하는 것과 방사선을 방출하지 않는 것 사이에서 교번하고, 제1 카메라 센서의 노출 간격 및 제2 카메라 센서의 노출 간격과 동기화하여 방사선을 방출하도록 구성된다.
(24) 구성 (22)의 스테레오 비전 시스템에서, 능동 조명 구성요소는, 수직 캐비티 표면 방출 레이저 어레이, 가시 스펙트럼 범위에서 방출하는 방사선 램프, 및 근적외선 스펙트럼 범위에서 방출하는 방사선 램프 중 임의의 하나 또는 이들의 임의의 조합으로 구성된다.
(25). 구성 (1) 내지 구성 (24) 중 임의의 구성의 스테레오 비전 시스템에서, 적어도 하나의 프로세서는, 제1 센서 신호로부터 그리고 제2 센서 신호로부터 모션 기반 구조 데이터를 컴퓨팅하고, 모션 기반 구조 데이터를 사용하여, 제1 및 제2 카메라 센서들의 최소 깊이 범위보다 더 가까운 객체들의 3D 위치들을 추정하도록 구성된다.
본원에 설명된 기술에 따른 객체의 검출을 위한 방법들은 다양한 프로세스들을 포함할 수 있다. 예시적인 방법들은 다음과 같은 프로세스 (26) 및 프로세스 (27)의 조합들을 포함한다:
(26) 이미지 내의 객체의 검출을 위한, 하나 이상의 프로세서에 의해 수행되는 컴퓨터에 의해 구현되는 방법으로서, 방법은, 컬러에 의해 객체 상의 연결된 성분 구역들을 식별하는 단계; 연결된 성분 구역들 각각의 종횡비를 결정하는 단계; 연결된 성분 구역들 사이의 거리를 결정하는 단계; 및 연결된 성분 구역들 사이의 거리 및 종횡비들에 기반하여 객체를 알려진 객체인 것으로 식별하는 단계를 포함하며, 알려진 객체의 존재, 위치, 및 크기가 이미지로부터 결정된다.
(27) 프로세스 (26)의 방법에서, 연결된 성분 구역들을 식별하는 단계는 컬러를 적색인 것으로 식별하고, 객체를 식별하는 단계는 객체를 정지 표지판인 것으로 식별한다.
본원에 설명된 기술에 따른 스테레오 비전 시스템을 교정하기 위한 방법들은 다양한 프로세스들을 포함할 수 있다. 예시적인 방법들은 다음과 같은 프로세스 (28) 내지 프로세스 (33)의 조합들을 포함한다:
(28) 스테레오 비전 시스템을 교정하기 위한, 하나 이상의 프로세서에 의해 수행되는 컴퓨터에 의해 구현되는 교정 방법으로서, 스테레오 비전 시스템은, 제1 이미지의 제1 반사 에너지를 감지하고 제1 반사 에너지에 기반하여 제1 센서 신호들을 생성하도록 구성되는 제1 카메라 센서, 및 제2 이미지의 제2 반사 에너지를 감지하고 제2 반사 에너지에 기반하여 제2 센서 신호들을 생성하도록 구성되는 제2 카메라 센서를 포함하고, 방법은, 제1 및 제2 센서 신호들로부터 스테레오 이미지들을 생성하는 단계; 편위수정된 스테레오 이미지들을 생성하기 위해, 스테레오 교정 파라미터들을 사용하여 스테레오 이미지들을 편위수정하는 단계; 편위수정된 스테레오 이미지들에 대해 스테레오 매칭을 수행하는 단계; 및 스테레오 매칭의 결과를 사용하여 자동 시스템 교정을 수행하는 단계를 포함하며, 자동 시스템 교정은 비용 함수를 최소화하는 것에 기반한다.
(29) 프로세스 (28)의 방법에서, 자동 시스템 교정은, 제1 및 제2 이미지들 내의 피쳐들에 대응하는 이미지 지점들을 추적하는 것에 기반하여 고-주파수 섭동들을 보상하기 위해 제1 스테레오 교정 파라미터들을 생성하도록 구성되는 빠른 교정 절차; 상대적 카메라 피치 및 상대적 카메라 롤의 함수로서 밀집 스테레오 블록 매칭에 대한 유효 픽셀들의 수를 최적화하는 것에 기반하여 중간-주파수 섭동들을 보상하기 위해 제2 스테레오 교정 파라미터들을 생성하도록 구성되는 중간정도 교정 절차; 및 상대적 카메라 피치, 상대적 카메라 롤, 상대적 카메라 요, 및 상대적 카메라 위치의 함수로서 밀집 스테레오 블록 매칭에 대한 유효 픽셀들의 수를 최적화하는 것에 기반하여 저-주파수 섭동들을 보상하기 위해 제3 스테레오 교정 파라미터들을 생성하도록 구성되는 느린 교정 절차 중 임의의 하나 또는 이들의 임의의 조합으로 구성된다.
(30) 프로세스 (28) 또는 프로세스 (29)의 방법에서, 자동 시스템 교정은, 음이 아닌 디스패리티 제약에 기반하여 상대적 카메라 요에 대한 스테레오 교정 파라미터를 생성하도록 구성되는 절대 범위 교정 절차로 구성된다.
(31) 프로세스 (28) 내지 프로세스 (30) 중 임의의 하나의 프로세스의 방법에서, 자동 시스템 교정은, 복수의 스테레오 이미지들의 장면 내의 객체의 치수들 및 제1 및 제2 카메라 센서들의 초점 길이에 기반하여 상대적 카메라 요에 대한 스테레오 교정 파라미터를 생성하도록 구성되는 절대 범위 교정 절차로 구성된다.
(32) 프로세스 (28) 내지 프로세스 (31) 중 임의의 하나의 프로세스의 방법에서, 자동 시스템 교정은, 차량 주행 거리 측정에 기반하여 상대적 카메라 요에 대한 스테레오 교정 파라미터를 생성하도록 구성되는 절대 범위 교정 절차로 구성된다.
(33) 프로세스 (28) 내지 프로세스 (32) 중 임의의 하나의 프로세스의 방법에서, 자동 시스템 교정은, 느린 교정 절차, 중간정도 교정 절차, 빠른 교정 절차, 및 절대 범위 교정 절차의 동작 스케줄을 관리하도록 구성되는 교정 관리 절차로 구성된다.
본원에 설명된 기술에 따른 스테레오 비전 시스템을 교정하기 위한 컴퓨터 실행가능 코드가 저장된 비-일시적인 컴퓨터 판독가능 매체가 상이한 구성들로 구현될 수 있다. 예시적인 구성들은 다음과 같은 구성 (34) 내지 구성 (39)의 조합들을 포함한다:
(34) 컴퓨터 실행가능 코드가 저장된 비-일시적인 컴퓨터 판독가능 매체로서, 컴퓨터 실행가능 코드는, 하나 이상의 프로세서에 의해 실행될 때, 하나 이상의 프로세서로 하여금 스테레오 비전 시스템을 교정하게 하고, 스테레오 비전 시스템은, 제1 이미지의 제1 반사 에너지를 감지하고 제1 반사 에너지에 기반하여 제1 센서 신호들을 생성하도록 구성되는 제1 카메라 센서, 및 제2 이미지의 제2 반사 에너지를 감지하고 제2 반사 에너지에 기반하여 제2 센서 신호들을 생성하도록 구성되는 제2 카메라 센서를 포함하고, 방법은, 제1 및 제2 센서 신호들로부터 스테레오 이미지들을 생성하는 단계; 편위수정된 스테레오 이미지들을 생성하기 위해, 스테레오 교정 파라미터들을 사용하여 스테레오 이미지들을 편위수정하는 단계; 편위수정된 스테레오 이미지들에 대해 스테레오 매칭을 수행하는 단계; 및 스테레오 매칭의 결과를 사용하여 자동 시스템 교정을 수행하는 단계로 구성되며, 자동 시스템 교정은 비용 함수를 최소화하는 것에 기반한다.
(35) 구성 (34)의 비-일시적인 컴퓨터 판독가능 매체에서, 자동 시스템 교정은, 제1 및 제2 이미지들 내의 피쳐들에 대응하는 이미지 지점들을 추적하는 것에 기반하여 고-주파수 섭동들을 보상하기 위해 제1 스테레오 교정 파라미터들을 생성하도록 구성되는 빠른 교정 절차; 상대적 카메라 피치 및 상대적 카메라 롤의 함수로서 밀집 스테레오 블록 매칭에 대한 유효 픽셀들의 수를 최적화하는 것에 기반하여 중간-주파수 섭동들을 보상하기 위해 제2 스테레오 교정 파라미터들을 생성하도록 구성되는 중간정도 교정 절차; 및 상대적 카메라 피치, 상대적 카메라 롤, 상대적 카메라 요, 및 상대적 카메라 위치의 함수로서 밀집 스테레오 블록 매칭에 대한 유효 픽셀들의 수를 최적화하는 것에 기반하여 저-주파수 섭동들을 보상하기 위해 제3 스테레오 교정 파라미터들을 생성하도록 구성되는 느린 교정 절차 중 임의의 하나 또는 이들의 임의의 조합으로 구성된다.
(36) 구성 (34) 내지 구성 (35) 중 임의의 구성의 비-일시적인 컴퓨터 판독가능 매체에서, 자동 시스템 교정은, 음이 아닌 디스패리티 제약에 기반하여 상대적 카메라 요에 대한 스테레오 교정 파라미터를 생성하도록 구성되는 절대 범위 교정 절차로 구성된다.
(37) 구성 (34) 내지 구성 (36) 중 임의의 하나의 구성의 비-일시적인 컴퓨터 판독가능 매체에서, 자동 시스템 교정은, 복수의 스테레오 이미지들의 장면 내의 객체의 치수들 및 제1 및 제2 카메라 센서들의 초점 길이에 기반하여 상대적 카메라 요에 대한 스테레오 교정 파라미터를 생성하도록 구성되는 절대 범위 교정 절차로 구성된다.
(38) 구성 (34) 내지 구성 (37) 중 임의의 하나의 구성의 비-일시적인 컴퓨터 판독가능 매체에서, 자동 시스템 교정은, 차량 주행 거리 측정에 기반하여 상대적 카메라 요에 대한 스테레오 교정 파라미터를 생성하도록 구성되는 절대 범위 교정 절차로 구성된다.
(39) 구성 (34) 내지 구성 (38) 중 임의의 하나의 구성의 비-일시적인 컴퓨터 판독가능 매체에서, 자동 시스템 교정은, 느린 교정 절차, 중간정도 교정 절차, 빠른 교정 절차, 및 절대 범위 교정 절차의 동작 스케줄을 관리하도록 구성되는 교정 관리 절차로 구성된다.
본원에 설명된 실시예들 및 예들은, 본 발명의 기술의 원리들, 방법들, 및 프로세스들 및 그의 실제 응용들을 예시함으로써 관련 기술분야의 통상의 기술자가 고려되는 특정 용도들에 적합한 바와 같은 다양한 수정들과 함께 다양한 실시예들에서 본 발명의 기술을 활용할 수 있게 하기 위해 선택되고 설명되었다는 것이 이해되어야 한다. 본 발명의 기술의 특정 실시예들이 설명되었다 하더라도, 그들이 총망라적인 것으로서 취해져서는 안 된다. 관련 기술분야의 통상의 기술자들에게 명백할 것이지만 본원에 구체적으로 설명되지 않은 다른 실시예들 및 변형들이 본 기술의 범위 내에 있다.
달리 언급되지 않는 한, "대략적으로" 및 "약"이라는 용어들은, 일부 실시예들에서는 표적 값의 ±20 % 이내, 일부 실시예들에서는 표적 값의 ±10 % 이내, 일부 실시예들에서는 표적 값의 ±5 % 이내, 그리고 또한 일부 실시예들에서는 표적 값의 ±2 % 이내를 의미하도록 사용된다. "대략적으로" 및 "약"이라는 용어들은 표적 값을 포함할 수 있다. "본질적으로"라는 용어는 표적 값의 ±3 % 이내를 의미하도록 사용된다.
본원에 설명된 기술은 방법으로서 구현될 수 있고, 그 중 적어도 일부 동작들이 설명되었다. 방법의 일부로서 수행되는 동작들은 임의의 적합한 방식으로 순서화될 수 있다. 따라서, 동작들이 설명된 것과 상이한 순서로 수행되는 실시예들이 구현될 수 있으며, 이는, 예시적인 실시예들에서 순차적인 동작들로서 설명된다 하더라도 일부 동작들을 동시에 수행하는 것을 포함할 수 있다. 부가적으로, 방법은, 일부 실시예들에서, 설명된 것들보다 더 많은 동작들을, 그리고 다른 실시예들에서, 설명된 것들보다 더 적은 동작들을 포함할 수 있다.
본 개시내용의 다양한 양상들은 단독으로, 조합하여, 또는 전술한 것에서 설명된 실시예들에서 구체적으로 논의되지 않은 다양한 배열들로 사용될 수 있으며, 따라서, 이들의 응용은 전술한 설명에 기재되거나 도면에 예시된 구성요소들의 세부사항들 및 배열로 제한되지 않는다. 예컨대, 일 실시예에서 설명된 양상들은 다른 실시예들에서 설명된 양상들과 임의의 방식으로 조합될 수 있다.
청구항 요소를 수정하기 위해 청구항들에서 "제1", "제2", "제3" 등과 같은 서수 용어들을 사용하는 것은 그 자체로서 방법의 동작들이 수행되는 시간적 순서, 또는 하나의 청구항 요소의 다른 청구항 요소에 대한 임의의 우선순위, 선행, 또는 순서를 함축하는 것이 아니라, 단지, 청구항 요소들을 구별하기 위해, 특정 명칭을 갖는 하나의 청구항 요소를 동일한 명칭을 갖는(그러나 서수 용어를 사용하는) 다른 요소와 구별하기 위한 라벨들로서 사용된다.
본원에 사용되는 어법 및 용어법은 설명의 목적을 위한 것이고, 제한적인 것으로 간주되지 않아야 한다. 본원에서 "구비", "포함, 또는 "가짐", "함유", "수반" 및 이들의 변형들의 사용은, 이후 열거되는 항목들 및 그들의 등가물들뿐만 아니라 부가적인 항목들을 포괄하는 것을 의미한다.
본 명세서 및 청구항들에서 본원에 사용되는 바와 같은 단수형 표현(국제 출원 명세서에서의 "a" 및 "an"의 부정관사들)은, 명확하게 다르게 표시되지 않는 한, "적어도 하나"를 의미하는 것으로 이해되어야 한다.
하나 이상의 요소의 목록과 관련하여 "적어도 하나"라는 문구의 임의의 사용은, 요소들의 목록 내의 요소들 중 임의의 하나 이상으로부터 선택되는 적어도 하나의 요소를 의미하지만, 요소들의 목록 내에 구체적으로 열거된 각각의 그리고 모든 각각의 요소 중 적어도 하나를 반드시 포함하지는 않고 요소들의 목록 내의 요소들의 임의의 조합들을 배제하지 않는 것으로 이해되어야 한다. 이러한 정의는 또한, "적어도 하나"라는 문구가 지칭하는 요소들의 목록 내에서 구체적으로 식별된 요소들 이외의 요소들이, 그러한 구체적으로 식별된 요소들과 관련되든 관련되지 않든 간에 임의적으로 존재할 수 있는 것을 허용한다.
2개의 값(예컨대, 거리들, 폭들 등)과 관련하여 "동등" 또는 "동일"이라는 문구의 임의의 사용은 2개의 값이 제조 공차 내에서 동일하다는 것을 의미한다. 그에 따라, 동등하거나 동일한 2개의 값은, 서로 ±5 %만큼 상이하다는 것을 의미할 수 있다.
본 명세서 및 청구항들에서 본원에 사용되는 바와 같은 "및/또는", "그리고/또는", 및 "~고/거나"라는 어구는, 그렇게 결합된 요소들 중 "어느 하나 또는 둘 모두", 즉, 일부 경우들에서 결합적으로 존재하고 다른 경우들에서는 택일적으로 존재하는 요소들을 의미하는 것으로 이해되어야 한다. "및/또는", "그리고/또는", 및 "~고/거나"로 열거되는 다수의 요소들은, 동일한 방식으로, 즉, 그렇게 결합된 요소들 중 "하나 이상"으로 해석되어야 한다. "및/또는", "그리고/또는", 및 "~고/거나"라는 절에 의해 구체적으로 식별된 요소들 이외의 다른 요소들이, 그러한 구체적으로 식별된 요소들과 관련되든 관련되지 않든 간에 임의적으로 존재할 수 있다. 그에 따라, 비-제한적인 예로서, "A 및/또는 B"에 대한 참조는, "포함"과 같은 제한을 두지 않는(open-ended) 언어와 함께 사용될 때, 일 실시예에서, A 단독(임의적으로 B 이외의 요소들을 포함함); 다른 실시예에서, B 단독(임의적으로 A 이외의 요소들을 포함함); 또 다른 실시예에서, A 및 B 둘 모두(임의적으로 다른 요소들을 포함함); 등을 지칭할 수 있다.
본 명세서 및 청구항들에서 본원에 사용되는 바와 같이, "또는"은 위에 정의된 바와 같은 "및/또는", "그리고/또는", 및 "~고/거나"와 동일한 의미를 갖는 것으로 이해되어야 한다. 예컨대, 목록에서 항목들을 분리할 때, "또는"이나 "및/또는", "그리고/또는", 및 "~고/거나"는 포괄적인 것으로, 즉, 다수의 요소들 또는 요소들의 목록 중 적어도 하나를 포함하지만 그 중 하나 초과를 또한 포함하고, 임의적으로는 부가적인 열거되지 않은 항목들을 포함하는 것으로 해석되어야 한다. "~중 하나만" 또는 "~중 정확히 하나", 또는 청구항들에서 사용될 때에서는 "~로 이루어진"과 같은 명확히 다르게 표시되는 용어들만이 다수의 요소들 또는 요소들의 목록 중 정확히 하나의 요소를 포함하는 것을 지칭할 것이다. 일반적으로, 본원에 사용되는 바와 같은 "또는"이라는 용어는, "어느 하나", "~중 하나", "~중 하나만", 또는 "~중 정확히 하나"와 같은 배타성을 갖는 용어들이 선행될 때, 배타적인 대안들(즉, "하나 또는 다른 것, 그러나 둘 모두는 아님")을 표시하는 것으로만 해석되어야 한다. "본질적으로 ~로 이루어진"이 청구항들에서 사용되는 경우, 특허법 분야에서 사용되는 바와 같은 그의 통상의 의미를 가질 것이다.
"실질적으로"라는 용어는, 본원에서 사용되는 경우, 일부 실시예들에서는 표적 값의 95 % 이내, 일부 실시예들에서는 표적 값의 98 % 이내, 일부 실시예들에서는 표적 값의 99 % 이내, 그리고 일부 실시예들에서는 표적 값의 99.5 % 이내를 의미하는 것으로 해석될 수 있다. 일부 실시예들에서, "실질적으로"라는 용어는 표적 값의 100 %와 동일할 수 있다.
또한, 위에 설명된 실시예들 중 일부는 하나 이상의 방법(들)으로서 구현될 수 있으며, 그 중 일부 예들이 제공되었다. 방법(들)의 일부로서 수행되는 동작들은 임의의 적합한 방식으로 순서화될 수 있다. 그에 따라서, 동작들이 본원에 예시되거나 설명된 것과 상이한 순서로 수행되는 실시예들이 구성될 수 있으며, 이는 예시적인 실시예들에서 순차적인 동작들로서 도시된다 하더라도 일부 동작들을 동시에 수행하는 것을 포함할 수 있다.
추가로, 본 발명의 장점들이 표시될 수 있지만, 본 발명의 모든 각각의 실시예가 모든 각각의 설명된 장점을 포함하는 것은 아니라는 것이 인식되어야 한다. 일부 실시예들은 본원에서 유리한 것으로 설명된 임의의 특징들을 구현하지 않을 수 있다. 그에 따라서, 전술한 설명 및 첨부된 도면들은 단지 예로서 이루어진다.
인용된 참조문헌들
US6392688B1;
US8797387B2;
US10097812B2;
JP2008-509619A; 및
Timo Hinzmann, Tim Taubner, 및 Roland Siegwart의 "Flexible Stereo: Constrained, Non-rigid, Wide-baseline Stereo Vision for Fixed-Wing Aerial Platforms" IEEE International Conference on Robotics and Automation (ICRA), Brisbane AU (2018).

Claims (30)

  1. 차량용 스테레오 비전 시스템으로서,
    적어도 2개의 카메라 센서와 통신하는 적어도 하나의 컴퓨터 프로세서를 포함하고, 상기 적어도 하나의 컴퓨터 프로세서는,
    상기 적어도 2개의 카메라 센서로부터 비디오 신호들을 실시간으로 또는 거의 실시간으로 수신하고 - 상기 적어도 2개의 카메라 센서 각각은 제1 장면의 반사된 에너지를 감지하고 상기 반사된 에너지에 기반하여 비디오 신호를 생성하도록 구성됨 -; 그리고,
    상기 비디오 신호들을 처리하여,
    상기 제1 장면에 대응하는 3차원(3D) 데이터를 생성하고, 그리고
    상기 적어도 2개의 카메라 센서로부터의 상기 비디오 신호들의 프레임들에 대해 프레임별로 상기 적어도 2개의 카메라 센서에 대한 카메라 파라미터들을 자동으로 업데이트함으로써 상기 적어도 2개의 카메라 센서를 교정하도록 구성되는, 차량용 스테레오 비전 시스템.
  2. 제1항에 있어서,
    상기 제1 장면의 제1 반사 에너지를 감지하고 상기 제1 반사 에너지에 기반하여 제1 비디오 신호를 생성하도록 구성되는 제1 카메라 센서; 및
    상기 제1 장면의 제2 반사 에너지를 감지하고 상기 제2 반사 에너지에 기반하여 제2 비디오 신호를 생성하도록 구성되는 제2 카메라 센서
    를 더 포함하고,
    상기 적어도 하나의 컴퓨터 프로세서는:
    스테레오 교정 파라미터들을 사용하여 상기 제1 및 제2 비디오 신호들로부터 편위수정된(rectified) 스테레오 이미지들을 생성하고,
    상기 편위수정된 스테레오 이미지들에 대해 스테레오 매칭을 수행하고,
    상기 편위수정된 스테레오 이미지들에 기반하여 디스패리티 맵(disparity map) 맵을 생성하고, 그리고
    비용 함수를 최적화하는 것에 기반하여 자동 시스템 교정을 수행함으로써 상기 제1 및 제2 카메라 센서들을 교정하도록 - 상기 자동 시스템 교정은 상기 제1 및 제2 카메라 센서들의 상대적 카메라 요(yaw)를 교정하기 위한 스테레오 교정 파라미터를 생성하도록 구성되는 절대 범위 교정 절차를 포함함 - 구성되는, 스테레오 비전 시스템.
  3. 제2항에 있어서,
    상기 절대 범위 교정 절차는 상기 차량의 차량 주행 거리 측정(odometry)에 기반하여 상기 스테레오 교정 파라미터를 생성하도록 구성되는, 스테레오 비전 시스템.
  4. 제2항에 있어서,
    상기 절대 범위 교정 절차는 음이 아닌 디스패리티 제약에 기반하여 상기 스테레오 교정 파라미터를 생성하도록 구성되는, 스테레오 비전 시스템.
  5. 제2항에 있어서,
    상기 절대 범위 교정 절차는 상기 편위수정된 스테레오 이미지들의 객체의 치수들 및 상기 제1 및 제2 카메라 센서들의 초점 길이에 기반하여 상기 스테레오 교정 파라미터를 생성하도록 구성되는, 스테레오 비전 시스템.
  6. 제2항에 있어서,
    상기 비용 함수는:
    상기 디스패리티 맵 내의 유효 픽셀들의 수에 기반하고,
    상기 제1 및 제2 카메라 센서들의 내재적(intrinsic) 카메라 파라미터들 및 외재적(extrinsic) 카메라 파라미터들에 기반하여 최적화되는, 스테레오 비전 시스템.
  7. 제2항에 있어서, 상기 자동 시스템 교정은,
    고-주파수 섭동들을 보상하기 위해 상기 제1 및 제2 카메라 센서들을 교정하기 위한 제1 스테레오 교정 파라미터들을 생성하는 빠른 교정 절차,
    중간-주파수 섭동들을 보상하기 위해 상기 제1 및 제2 카메라 센서들을 교정하기 위한 제2 스테레오 교정 파라미터들을 생성하는 중간정도(medium) 교정 절차, 및
    저-주파수 섭동들을 보상하기 위해 상기 제1 및 제2 카메라 센서들을 교정하기 위한 제3 스테레오 교정 파라미터들을 생성하는 느린 교정 절차
    를 포함하는, 스테레오 비전 시스템.
  8. 제7항에 있어서,
    상기 빠른 교정 절차는 상기 편위수정된 스테레오 이미지들에서의 피처들에 대응하는 이미지 지점(image point)들을 추적하는 것에 기반하고,
    상기 중간정도 교정 절차는 상대적 카메라 피치 및 상대적 카메라 롤의 함수로서 밀집 스테레오 블록 매칭을 위한 유효 픽셀들의 수를 최적화하는 것에 기반하고, 그리고
    상기 느린 교정 절차는, 상대적 카메라 피치, 상대적 카메라 롤, 상대적 카메라 요, 및 상대적 카메라 위치 중 임의의 하나 또는 임의의 조합의 함수로서 밀집 스테레오 블록 매칭을 위한 유효 픽셀들의 수를 최적화하는 것에 기반하는, 스트레오 비전 시스템.
  9. 제7항에 있어서,
    상기 자동 시스템 교정은, 상기 제1 및 제2 카메라 센서들 각각에 대해, 초점 길이, 주점(principal point), 적어도 하나의 방사상 렌즈 왜곡 계수, 및 적어도 하나의 접선 렌즈 왜곡 계수 중 임의의 하나 또는 임의의 조합을 교정하는, 스테레오 비전 시스템.
  10. 제2항에 있어서,
    제2 장면의 반사된 에너지를 감지하고 적어도 하나의 비디오 신호를 상기 적어도 하나의 컴퓨터 프로세서에 제공하도록 구성된 근접 범위 센서 시스템 - 상기 제2 장면은 상기 제1 및 제2 카메라 센서들의 최소 깊이 범위보다 더 가까운 범위를 포함함 -을 더 포함하고,
    상기 적어도 하나의 컴퓨터 프로세서는 상기 제1 및 제2 비디오 신호들로부터 생성된 상기 3D 데이터를 상기 근접 범위 센서 시스템에 의해 제공된 상기 적어도 하나의 비디오 신호로부터 생성된 3D 데이터와 결합하도록 구성되는, 스테레오 비전 시스템.
  11. 제10항에 있어서,
    상기 근접 범위 센서 시스템은 상기 제1 및 제2 카메라 센서들보다 더 넓은 시야 및 더 짧은 기준선 거리를 갖는 한 쌍의 카메라 센서를 포함하는, 스테레오 비전 시스템.
  12. 제10항에 있어서, 상기 근접 범위 센서 시스템은, 상기 제1 및 제3 카메라 센서들이 상기 제1 및 제2 카메라 센서들보다 더 짧은 기준선 길이를 갖도록, 상기 제1 및 제2 카메라 센서들과 함께 삼안(trinocular) 스테레오 시스템을 형성하는 제3 카메라 센서를 포함하는, 스테레오 비전 시스템.
  13. 적어도 2개의 카메라 센서를 포함하는 스테레오 비전 시스템을 교정하기 위한 하나 이상의 컴퓨터 프로세서에 의해 수행되는 컴퓨터에 의해 구현되는 교정 방법으로서,
    상기 적어도 2개의 카메라 센서로부터 비디오 신호들을 실시간으로 또는 거의 실시간으로 수신하는 단계 - 상기 적어도 2개의 카메라 센서 각각은 장면의 반사된 에너지를 감지하고 상기 반사된 에너지에 기반하여 비디오 신호를 생성하도록 구성됨 -; 및
    상기 비디오 신호들을 처리하여,
    상기 장면에 대응하는 3차원(3D) 데이터를 생성하고,
    상기 적어도 2개의 카메라 센서로부터의 상기 비디오 신호들의 프레임들에 대해 프레임별로 상기 적어도 2개의 카메라 센서에 대한 카메라 파라미터들을 자동으로 업데이트함으로써 상기 적어도 2개의 카메라 센서를 교정하는 단계
    를 포함하는, 방법.
  14. 제13항에 있어서,
    상기 적어도 2개의 카메라 센서는 상기 장면의 제1 반사 에너지를 감지하고 상기 제1 반사 에너지에 기반하여 제1 비디오 신호를 생성하도록 구성되는 제1 카메라 센서 및 상기 장면의 제2 반사 에너지를 감지하고 상기 제2 반사 에너지에 기반하여 제2 비디오 신호를 생성하도록 구성되는 제2 카메라 센서를 포함하고,
    상기 방법은:
    스테레오 교정 파라미터들을 사용하여 상기 제1 및 제2 비디오 신호들로부터 편위수정된(rectified) 스테레오 이미지들을 생성하는 단계;
    상기 편위수정된 스테레오 이미지들에 대해 스테레오 매칭을 수행하는 단계;
    상기 편위수정된 스테레오 이미지들에 기반하여 디스패리티 맵을 생성하는 단계; 및
    비용 함수를 최적화하는 것에 기반하여 자동 시스템 교정을 수행함으로써 상기 제1 및 제2 카메라 센서들을 교정하는 단계 - 상기 자동 시스템 교정을수행하는 것은 상기 제1 및 제2 카메라 센서들의 상대적 카메라 요를 교정하기 위한 스테레오 교정 파라미터를 생성하기 위한 절대 범위 교정 절차를 수행하는 것을 포함함 - 를 더 포함하는 방법.
  15. 제14항에 있어서,
    상기 절대 범위 교정 절차를 수행하는 것은 상기 차량의 차량 주행 거리 측정에 기반하여 상기 스테레오 교정 파라미터를 생성하는, 방법.
  16. 제14항에 있어서,
    상기 절대 범위 교정 절차를 수행하는 것은 음이 아닌 디스패리티 제약에 기반하여 상기 스테레오 교정 파라미터를 생성하는, 방법.
  17. 제14항에 있어서,
    상기 절대 범위 교정 절차를 수행하는 것은 상기 편위수정된 스테레오 이미지들의 객체의 치수들 및 상기 제1 및 제2 카메라 센서들의 초점 길이에 기반하여 상기 스테레오 교정 파라미터를 생성하는, 방법.
  18. 제14항에 있어서, 상기 비용 함수는:
    상기 디스패리티 맵 내의 유효 픽셀들의 수에 기반하고,
    상기 제1 및 제2 카메라 센서들의 내재적(intrinsic) 카메라 파라미터들 및 외재적(extrinsic) 카메라 파라미터들에 기반하여 최적화되는, 방법.
  19. 제14항에 있어서, 상기 자동 시스템 교정을 수행하는 것은,
    고-주파수 섭동들을 보상하기 위해 상기 제1 및 제2 카메라 센서들을 교정하기 위한 제1 스테레오 교정 파라미터들을 생성하는 빠른 교정 절차를 수행하는 것,
    중간-주파수 섭동들을 보상하기 위해 상기 제1 및 제2 카메라 센서들을 교정하기 위한 제2 스테레오 교정 파라미터들을 생성하는 중간정도 교정 절차를 수행하는 것, 및
    저-주파수 섭동들을 보상하기 위해 상기 제1 및 제2 카메라 센서들을 교정하기 위한 제3 스테레오 교정 파라미터들을 생성하는 느린 교정 절차를 수행하는 것
    을 포함하는, 방법.
  20. 제19항에 있어서,
    상기 빠른 교정 절차는 상기 편위수정된 스테레오 이미지들에서의 피처들에 대응하는 이미지 지점들을 추적하는 것에 기반하고,
    상기 중간정도 교정 절차는 상대적 카메라 피치 및 상대적 카메라 롤의 함수로서 밀집 스테레오 블록 매칭을 위한 유효 픽셀들의 수를 최적화하는 것에 기반하고, 그리고
    상기 느린 교정 절차는, 상대적 카메라 피치, 상대적 카메라 롤, 상대적 카메라 요, 및 상대적 카메라 위치 중 임의의 하나 또는 임의의 조합의 함수로서 밀집 스테레오 블록 매칭을 위한 유효 픽셀들의 수를 최적화하는 것에 기반하는, 방법.
  21. 제19항에 있어서, 상기 자동 시스템 교정을 수행하는 것은, 상기 제1 및 제2 카메라 센서들 각각에 대해, 초점 길이, 주점(principal point), 적어도 하나의 방사상 렌즈 왜곡 계수, 및 적어도 하나의 접선 렌즈 왜곡 계수 중 임의의 하나 또는 임의의 조합을 교정하는 것을 포함하는, 방법.
  22. 하나 이상의 프로세서에 의해 실행될 때, 상기 하나 이상의 프로세서로 하여금 적어도 2개의 카메라 센서를 포함하는 스테레오 비전 시스템을 교정하게 하는 컴퓨터 실행가능 코드를 저장하는 비일시적 컴퓨터 판독가능 매체로서, 상기 방법은,
    상기 적어도 2개의 카메라 센서로부터 비디오 신호들을 실시간으로 또는 거의 실시간으로 수신하는 단계 - 상기 적어도 2개의 카메라 센서 각각은 장면의 반사된 에너지를 감지하고 상기 반사된 에너지에 기반하여 비디오 신호를 생성하도록 구성됨 -; 및
    상기 비디오 신호들을 처리하여,
    상기 장면에 대응하는 3차원(3D) 데이터를 생성하고, 그리고
    상기 적어도 2개의 카메라 센서로부터의 상기 비디오 신호들의 프레임들에 대해 프레임별로 상기 적어도 2개의 카메라 센서에 대한 카메라 파라미터들을 자동으로 업데이트함으로써 상기 적어도 2개의 카메라 센서를 교정하는 단계를 포함하는, 비일시적 컴퓨터 판독가능 매체.
  23. 제22항에 있어서,
    상기 적어도 2개의 카메라 센서는 상기 장면의 제1 반사 에너지를 감지하고 상기 제1 반사 에너지에 기반하여 제1 비디오 신호를 생성하도록 구성되는 제1 카메라 센서 및 상기 장면의 제2 반사 에너지를 감지하고 상기 제2 반사 에너지에 기반하여 제2 비디오 신호를 생성하도록 구성되는 제2 카메라 센서를 포함하고,
    상기 방법은:
    스테레오 교정 파라미터들을 사용하여 상기 제1 및 제2 비디오 신호들로부터 편위수정된(rectified) 스테레오 이미지들을 생성하는 단계;
    상기 편위수정된 스테레오 이미지들에 대해 스테레오 매칭을 수행하는 단계;
    상기 편위수정된 스테레오 이미지들에 기반하여 디스패리티 맵을 생성하는 단계; 및
    비용 함수를 최적화하는 것에 기반하여 자동 시스템 교정을 수행함으로써 상기 제1 및 제2 카메라 센서들을 교정하는 단계 - 상기 자동 시스템 교정을수행하는 것은 상기 제1 및 제2 카메라 센서들의 상대적 카메라 요(yaw)를 교정하기 위한 스테레오 교정 파라미터를 생성하기 위한 절대 범위 교정 절차를 수행하는 것을 포함함 - 를 더 포함하는, 비일시적 컴퓨터 판독가능 매체.
  24. 제23항에 있어서,
    상기 절대 범위 교정 절차를 수행하는 것은 상기 차량의 차량 주행 거리 측정(odometry)에 기반하여 상기 스테레오 교정 파라미터를 생성하는, 비일시적 컴퓨터 판독가능 매체.
  25. 제23항에 있어서,
    상기 절대 범위 교정 절차를 수행하는 것은 음이 아닌 디스패리티 제약에 기반하여 상기 스테레오 교정 파라미터를 생성하는, 비일시적 컴퓨터 판독가능 매체.
  26. 제23항에 있어서, 상기 절대 범위 교정 절차를 수행하는 것은 상기 편위수정된 스테레오 이미지들의 객체의 치수들 및 상기 제1 및 제2 카메라 센서들의 초점 길이에 기반하여 상기 스테레오 교정 파라미터를 생성하는, 비일시적 컴퓨터 판독가능 매체.
  27. 제23항에 있어서,
    상기 비용 함수는:
    상기 디스패리티 맵 내의 유효 픽셀들의 수에 기반하고,
    상기 제1 및 제2 카메라 센서들의 내재적(intrinsic) 카메라 파라미터들 및 외재적(extrinsic) 카메라 파라미터들에 기반하여 최적화되는, 비일시적 컴퓨터 판독가능 매체.
  28. 제23항에 있어서,
    상기 자동 시스템 교정을 수행하는 것은,
    고-주파수 섭동들을 보상하기 위해 상기 제1 및 제2 카메라 센서들을 교정하기 위한 제1 스테레오 교정 파라미터들을 생성하는 빠른 교정 절차를 수행하는 것,
    중간-주파수 섭동들을 보상하기 위해 상기 제1 및 제2 카메라 센서들을 교정하기 위한 제2 스테레오 교정 파라미터들을 생성하는 중간정도 교정 절차를 수행하는 것, 및
    저-주파수 섭동들을 보상하기 위해 상기 제1 및 제2 카메라 센서들을 교정하기 위한 제3 스테레오 교정 파라미터들을 생성하는 느린 교정 절차를 수행하는 것
    을 포함하는, 비일시적 컴퓨터 판독가능 매체.
  29. 제28항에 있어서,
    상기 빠른 교정 절차는 상기 편위수정된 스테레오 이미지들에서의 피처들에 대응하는 이미지 지점들을 추적하는 것에 기반하고,
    상기 중간정도 교정 절차는 상대적 카메라 피치 및 상대적 카메라 롤의 함수로서 밀집 스테레오 블록 매칭을 위한 유효 픽셀들의 수를 최적화하는 것에 기반하고, 그리고
    상기 느린 교정 절차는, 상대적 카메라 피치, 상대적 카메라 롤, 상대적 카메라 요, 및 상대적 카메라 위치 중 임의의 하나 또는 임의의 조합의 함수로서 밀집 스테레오 블록 매칭을 위한 유효 픽셀들의 수를 최적화하는 것에 기반하는, 비일시적 컴퓨터 판독가능 매체.
  30. 제28항에 있어서,
    상기 자동 시스템 교정을 수행하는 것은, 상기 제1 및 제2 카메라 센서들 각각에 대해, 초점 길이, 주점(principal point), 적어도 하나의 방사상 렌즈 왜곡 계수, 및 적어도 하나의 접선 렌즈 왜곡 계수 중 임의의 하나 또는 임의의 조합을 교정하는 것을 포함하는, 비일시적 컴퓨터 판독가능 매체.
KR1020237021904A 2020-01-22 2021-01-06 비-강성 스테레오 비전 카메라 시스템 KR20230104298A (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US202062964148P 2020-01-22 2020-01-22
US62/964,148 2020-01-22
KR1020227028954A KR102550678B1 (ko) 2020-01-22 2021-01-06 비-강성 스테레오 비전 카메라 시스템
PCT/US2021/012294 WO2021150369A1 (en) 2020-01-22 2021-01-06 Non-rigid stereo vision camera system

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020227028954A Division KR102550678B1 (ko) 2020-01-22 2021-01-06 비-강성 스테레오 비전 카메라 시스템

Publications (1)

Publication Number Publication Date
KR20230104298A true KR20230104298A (ko) 2023-07-07

Family

ID=76993257

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020227028954A KR102550678B1 (ko) 2020-01-22 2021-01-06 비-강성 스테레오 비전 카메라 시스템
KR1020237021904A KR20230104298A (ko) 2020-01-22 2021-01-06 비-강성 스테레오 비전 카메라 시스템

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020227028954A KR102550678B1 (ko) 2020-01-22 2021-01-06 비-강성 스테레오 비전 카메라 시스템

Country Status (5)

Country Link
US (4) US11282234B2 (ko)
EP (1) EP4094433A4 (ko)
JP (2) JP7319003B2 (ko)
KR (2) KR102550678B1 (ko)
WO (1) WO2021150369A1 (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3532866A1 (en) 2016-10-28 2019-09-04 PPG Industries Ohio, Inc. Coatings for increasing near-infrared detection distances
US11568568B1 (en) * 2017-10-31 2023-01-31 Edge 3 Technologies Calibration for multi-camera and multisensory systems
WO2020014683A1 (en) * 2018-07-13 2020-01-16 Kache.AI Systems and methods for autonomous object detection and vehicle following
KR102550678B1 (ko) 2020-01-22 2023-07-04 노다르 인크. 비-강성 스테레오 비전 카메라 시스템
US11427193B2 (en) * 2020-01-22 2022-08-30 Nodar Inc. Methods and systems for providing depth maps with confidence estimates
GB2610414A (en) * 2021-09-03 2023-03-08 Integrated Design Ltd Anti-climb system
US11577748B1 (en) 2021-10-08 2023-02-14 Nodar Inc. Real-time perception system for small objects at long range for autonomous vehicles
EP4223593A1 (en) * 2022-02-08 2023-08-09 Continental Autonomous Mobility Germany GmbH Rear-view stereo camera system
US11909944B1 (en) * 2022-02-21 2024-02-20 Ghost Autonomy Inc. Dynamic calibration of cameras in a stereoscopic configuration
US11763492B1 (en) * 2022-06-10 2023-09-19 Plusai, Inc. Apparatus and methods to calibrate a stereo camera pair
WO2023244252A1 (en) 2022-06-14 2023-12-21 Nodar Inc. 3d vision system with automatically calibrated stereo vision sensors and lidar sensor

Family Cites Families (66)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6392688B1 (en) 1999-10-04 2002-05-21 Point Grey Research Inc. High accuracy stereo vision camera system
JP3855812B2 (ja) 2002-03-15 2006-12-13 ソニー株式会社 距離計測方法、その装置、そのプログラム、その記録媒体及び距離計測装置搭載型ロボット装置
DE10310698A1 (de) 2003-03-12 2004-09-23 Valeo Schalter Und Sensoren Gmbh Optisches Erfassungssystem für Kraftfahrzeuge
EP1709568A4 (en) 2003-12-15 2009-07-29 Sarnoff Corp METHOD AND APPARATUS FOR TRACKING OBJECTS BEFORE THE IMMINENT DETECTION OF A COLLISION
FR2874300B1 (fr) 2004-08-11 2006-11-24 Renault Sas Procede de calibration automatique d'un systeme de stereovision
US7561731B2 (en) 2004-12-27 2009-07-14 Trw Automotive U.S. Llc Method and apparatus for enhancing the dynamic range of a stereo vision system
US20070070069A1 (en) * 2005-09-26 2007-03-29 Supun Samarasekera System and method for enhanced situation awareness and visualization of environments
US7786898B2 (en) 2006-05-31 2010-08-31 Mobileye Technologies Ltd. Fusion of far infrared and visible images in enhanced obstacle detection in automotive applications
JP5117003B2 (ja) 2006-07-11 2013-01-09 本田技研工業株式会社 運転支援装置
KR100918480B1 (ko) 2007-09-03 2009-09-28 한국전자통신연구원 스테레오 비전 시스템 및 그 처리 방법
JP5194679B2 (ja) 2007-09-26 2013-05-08 日産自動車株式会社 車両用周辺監視装置および映像表示方法
US9449378B2 (en) 2008-05-22 2016-09-20 Matrix Electronic Measuring Properties, Llc System and method for processing stereoscopic vehicle information
US8120644B2 (en) * 2009-02-17 2012-02-21 Autoliv Asp, Inc. Method and system for the dynamic calibration of stereovision cameras
US20110025548A1 (en) * 2009-07-31 2011-02-03 Gm Global Technology Operations, Inc. System and method for vehicle sensor fusion
WO2011028837A2 (en) 2009-09-01 2011-03-10 Prime Focus Vfx Services Ii Inc. System and process for transforming two-dimensional images into three-dimensional images
US9142026B2 (en) 2010-02-26 2015-09-22 Thomson Licensing Confidence map, method for generating the same and method for refining a disparity map
US8797387B2 (en) 2011-04-27 2014-08-05 Aptina Imaging Corporation Self calibrating stereo camera
KR101316433B1 (ko) 2011-09-14 2013-10-08 현대자동차주식회사 차량 주변정보 제공 시스템 및 그 방법
US9507967B2 (en) 2012-02-15 2016-11-29 Blackberry Limited Thwarting attacks that involve analyzing hardware sensor output
DE102012009577A1 (de) * 2012-05-15 2012-11-29 Daimler Ag Verfahren zur Kalibrierung und Verfahren zur Justierung von Einzelbildkameras einer Kameraanordnung
US9571818B2 (en) * 2012-06-07 2017-02-14 Nvidia Corporation Techniques for generating robust stereo images from a pair of corresponding stereo images captured with and without the use of a flash device
CN108345006B (zh) 2012-09-10 2022-04-08 广稹阿马斯公司 捕捉运动场景的设备、装置和系统
US8971634B2 (en) 2012-10-26 2015-03-03 Texas Instruments Incorporated Approximate pyramidal search for fast displacement matching
US20140267616A1 (en) 2013-03-15 2014-09-18 Scott A. Krig Variable resolution depth representation
US9563951B2 (en) 2013-05-21 2017-02-07 Magna Electronics Inc. Vehicle vision system with targetless camera calibration
US20150103147A1 (en) * 2013-10-14 2015-04-16 Etron Technology, Inc. Image calibration system and calibration method of a stereo camera
US9509979B2 (en) 2013-11-26 2016-11-29 Mobileye Vision Technologies Ltd. Stereo auto-calibration from structure-from-motion
KR102203687B1 (ko) 2013-12-30 2021-01-15 엘지이노텍 주식회사 스테레오 카메라 장치 및 그의 렉티피케이션 방법
JP6323018B2 (ja) 2014-01-17 2018-05-16 株式会社デンソー 運転支援装置
JP6337504B2 (ja) 2014-02-21 2018-06-06 株式会社リコー 画像処理装置、移動体、ロボット、機器制御方法およびプログラム
JP2016048839A (ja) 2014-08-27 2016-04-07 株式会社小糸製作所 電子制御ユニットおよび車両用映像システム
FR3026591B1 (fr) 2014-09-25 2016-10-21 Continental Automotive France Procede de calibration extrinseque de cameras d'un systeme de formation d'images stereos embarque
US9286680B1 (en) * 2014-12-23 2016-03-15 Futurewei Technologies, Inc. Computational multi-camera adjustment for smooth view switching and zooming
US20180007345A1 (en) * 2015-01-16 2018-01-04 Imra Europe S.A.S. Self-rectification of stereo camera
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
JP6545997B2 (ja) 2015-04-24 2019-07-17 日立オートモティブシステムズ株式会社 画像処理装置
US9930315B2 (en) * 2015-04-29 2018-03-27 Lucid VR, Inc. Stereoscopic 3D camera for virtual reality experience
WO2017057058A1 (ja) 2015-09-30 2017-04-06 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
KR102415505B1 (ko) 2015-12-14 2022-07-01 삼성전자주식회사 스테레오 영상 매칭 방법 및 장치
EP3391339A2 (en) 2015-12-18 2018-10-24 Iris Automation, Inc. Real-time visual situational awareness system
US10788836B2 (en) 2016-02-29 2020-09-29 AI Incorporated Obstacle recognition method for autonomous robots
JP6686593B2 (ja) 2016-03-23 2020-04-22 日本電気株式会社 データ処理装置、データ処理システム、データ処理方法及びプログラム
EP3223196B1 (en) 2016-03-24 2021-05-05 Aptiv Technologies Limited A method and a device for generating a confidence measure for an estimation derived from images captured by a camera mounted on a vehicle
US10451740B2 (en) * 2016-04-26 2019-10-22 Cepton Technologies, Inc. Scanning lidar systems for three-dimensional sensing
JP6209648B1 (ja) 2016-06-03 2017-10-04 Kyb株式会社 ステレオカメラの設置パラメータ校正方法
US10275892B2 (en) 2016-06-09 2019-04-30 Google Llc Multi-view scene segmentation and propagation
US10645366B2 (en) * 2016-06-10 2020-05-05 Lucid VR, Inc. Real time re-calibration of stereo cameras
US10602126B2 (en) 2016-06-10 2020-03-24 Lucid VR, Inc. Digital camera device for 3D imaging
BR102017002219B1 (pt) 2017-02-02 2020-01-07 Vale S/A Sistema e método para o monitoramento de rodas ferroviárias
CN110892408A (zh) 2017-02-07 2020-03-17 迈恩德玛泽控股股份有限公司 用于立体视觉和跟踪的系统、方法和装置
CN110537109B (zh) * 2017-04-28 2024-02-20 深圳市大疆创新科技有限公司 用于自主驾驶的感测组件
US11435456B2 (en) 2017-12-28 2022-09-06 Lyft, Inc. Sensor calibration facility
US10798368B2 (en) 2018-03-13 2020-10-06 Lyft, Inc. Exposure coordination for multiple cameras
WO2019182974A2 (en) 2018-03-21 2019-09-26 Nvidia Corporation Stereo depth estimation using deep neural networks
US20200077073A1 (en) * 2018-08-28 2020-03-05 Qualcomm Incorporated Real-time stereo calibration by direct disparity minimization and keypoint accumulation
US11024037B2 (en) 2018-11-15 2021-06-01 Samsung Electronics Co., Ltd. Foreground-background-aware atrous multiscale network for disparity estimation
JP6843819B2 (ja) 2018-11-27 2021-03-17 本田技研工業株式会社 交通案内物認識装置、交通案内物認識方法、およびプログラム
US10965929B1 (en) 2019-01-04 2021-03-30 Rockwell Collins, Inc. Depth mapping and parallel distortion correction for mixed reality
US20200346581A1 (en) 2019-05-02 2020-11-05 Jared Lawson Trailer tracking commercial vehicle and automotive side view mirror system
US10930054B2 (en) 2019-06-18 2021-02-23 Intel Corporation Method and system of robust virtual view generation between camera views
US20210003683A1 (en) 2019-07-03 2021-01-07 DeepMap Inc. Interactive sensor calibration for autonomous vehicles
CN111028281B (zh) 2019-10-22 2022-10-18 清华大学 基于光场双目系统的深度信息计算方法及装置
US11427193B2 (en) 2020-01-22 2022-08-30 Nodar Inc. Methods and systems for providing depth maps with confidence estimates
KR102550678B1 (ko) 2020-01-22 2023-07-04 노다르 인크. 비-강성 스테레오 비전 카메라 시스템
US11961243B2 (en) 2020-02-26 2024-04-16 Nvidia Corporation Object detection using image alignment for autonomous machine applications
US11577748B1 (en) 2021-10-08 2023-02-14 Nodar Inc. Real-time perception system for small objects at long range for autonomous vehicles

Also Published As

Publication number Publication date
EP4094433A4 (en) 2024-02-21
JP7319003B2 (ja) 2023-08-01
JP2023504298A (ja) 2023-02-02
KR20220123726A (ko) 2022-09-08
US11282234B2 (en) 2022-03-22
US11321876B2 (en) 2022-05-03
KR102550678B1 (ko) 2023-07-04
US20210327092A1 (en) 2021-10-21
US11321875B2 (en) 2022-05-03
WO2021150369A1 (en) 2021-07-29
US20210350576A1 (en) 2021-11-11
US20210352259A1 (en) 2021-11-11
JP2023133334A (ja) 2023-09-22
US11983899B2 (en) 2024-05-14
EP4094433A1 (en) 2022-11-30
US20230005184A1 (en) 2023-01-05

Similar Documents

Publication Publication Date Title
KR102550678B1 (ko) 비-강성 스테레오 비전 카메라 시스템
US11940539B2 (en) Camera-to-LiDAR calibration and validation
US11675084B2 (en) Determining yaw error from map data, lasers, and cameras
JP7073315B2 (ja) 乗物、乗物測位システム、及び乗物測位方法
US11619496B2 (en) System and method of detecting change in object for updating high-definition map
CN109360245B (zh) 无人驾驶车辆多相机系统的外参数标定方法
US11463610B2 (en) Cross field of view for autonomous vehicle systems
AU2018282302B2 (en) Integrated sensor calibration in natural scenes
US11760313B2 (en) Sensor pod cleaning system
WO2017149813A1 (ja) センサキャリブレーションシステム
US11353590B2 (en) Sensor pod calibration
US20210339699A1 (en) Pedestrian protection system for sensor pods
US11953623B2 (en) Sensor pod assembly
US11721043B2 (en) Automatic extrinsic calibration using sensed data as a target
US11623585B2 (en) Sensor pod coverage and placement on vehicle
US20180274917A1 (en) Distance measurement system, mobile object, and component
CN111833443A (zh) 自主机器应用中的地标位置重建
US10249056B2 (en) Vehicle position estimation system
WO2022133986A1 (en) Accuracy estimation method and system
EP4143064A1 (en) Sensor pod assembly

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
A302 Request for accelerated examination