KR20190107552A - 화상 처리 장치, 화상 처리 방법 및 운전 지원 시스템 - Google Patents

화상 처리 장치, 화상 처리 방법 및 운전 지원 시스템 Download PDF

Info

Publication number
KR20190107552A
KR20190107552A KR1020180097960A KR20180097960A KR20190107552A KR 20190107552 A KR20190107552 A KR 20190107552A KR 1020180097960 A KR1020180097960 A KR 1020180097960A KR 20180097960 A KR20180097960 A KR 20180097960A KR 20190107552 A KR20190107552 A KR 20190107552A
Authority
KR
South Korea
Prior art keywords
image
parallax
reference image
pixel
calculated
Prior art date
Application number
KR1020180097960A
Other languages
English (en)
Other versions
KR102091648B1 (ko
Inventor
도루 사노
Original Assignee
가부시끼가이샤 도시바
도시바 디바이스 앤 스토리지 가부시키가이샤
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 가부시끼가이샤 도시바, 도시바 디바이스 앤 스토리지 가부시키가이샤 filed Critical 가부시끼가이샤 도시바
Publication of KR20190107552A publication Critical patent/KR20190107552A/ko
Application granted granted Critical
Publication of KR102091648B1 publication Critical patent/KR102091648B1/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/271Image signal generators wherein the generated image signals comprise depth maps or disparity maps
    • 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/97Determining parameters from multiple pictures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/128Adjusting depth or disparity
    • 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
    • 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/20Special algorithmic details
    • G06T2207/20004Adaptive image processing
    • G06T2207/20008Globally adaptive
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20072Graph-based image processing
    • 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
    • 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)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)
  • Measurement Of Optical Distance (AREA)
  • Image Analysis (AREA)

Abstract

본 발명의 실시 형태는, 화상 처리 장치, 화상 처리 방법 및 운전 지원 시스템에 관한 것이다.
실시 형태의 화상 처리 장치는, L 화상, R 화상의 어느 하나를 기준 화상, 다른 쪽을 참조 화상으로 설정하고, 또한, 참조 화상에 있어서의 화소의 취득 순서를 제1 방향으로 설정하는 제어 회로와, 설정 순서로 화소를 취득하면서 산출 가능한 경로를 사용하여, 글로벌 최적화에 의한 비용 최적화 연산을 행하는 비용 최적화 연산 회로와, 각 화소의 시차를 결정하는 비용 최소 시차 추출 회로와, L 화상을 기준 화상으로 하는 시차와, R 화상을 기준 화상 하는 시차를 사용하여 크로스 체크를 행하고, 산출된 시차의 타당성을 화소마다 판정해 출력하는 시차 출력 회로를 구비하고 있고, 제어 회로는, 기준 화상과 참조 화상의 교체를 행함과 동시에, 교체 후의 참조 화상에 있어서의 화소의 취득 순서를, 제1 방향과 역의 방향으로 설정한다.

Description

화상 처리 장치, 화상 처리 방법 및 운전 지원 시스템{IMAGE PROCESSING APPARATUS, IMAGE PROCESSING METHOD, AND DRIVE ASSISTANCE SYSTEM}
본 출원은, 일본 특허 출원 2018-44568호(출원일: 2018년 3월 12일)를 기초 출원으로 하는 우선권을 향수한다. 본 출원은 이 기초 출원을 참조함으로써 기초 출원의 모든 내용을 포함한다.
실시 형태는, 화상 처리 장치, 화상 처리 방법 및 운전 지원 시스템에 관한 것이다.
수평으로 2개 배열된 카메라로 동일 피사체를 촬영하면, 카메라 위치의 차이로부터 촬영된 2개의 화상에 있어서의 피사체의 위치는, 수평 방향으로 어긋남이 발생한다. 양쪽 화상에 있어서의 피사체의 위치의 차를 「시차(Disparity)」라고 칭한다. 카메라에서 피사체까지의 거리는, 시차의 역수에 비례한다. 즉, 시차는, 먼 것일수록 작고, 가까운 것일수록 커진다.
종래, 시차를 구하는 방법으로서, 블록 매칭이 널리 사용되고 있다. 블록 매칭은, 2개의 카메라로 촬영된 각각의 화상으로부터 소 영역(블록)을 잘라내고, 양쪽 화상간에서 소 영역의 유사도(상관값)가 가장 커지는 개소를 탐색함으로써 시차를 구한다. 구체적으로는, 한쪽 카메라로 촬영된 화상(예를 들어, 좌측에 배치된 카메라로 촬영된 좌측 화상)을 기준으로 한 경우, 다른 쪽 카메라로 촬영된 화상(예를 들어, 우측에 배치된 카메라로 촬영된 우측 화상)에 있어서 유사도를 탐색하는 범위는, 좌측 화상에 있어서의 기준 블록의 좌표와 동일한 좌표로부터, 최대 시차(예를 들어 128 화소)만큼 수평 방향 좌측으로 이격된 좌표까지의 범위의 블록이 된다.
이 블록 매칭은, 처리가 심플하며, 기본적으로 각 점에 대해 독립적으로 시차를 구할 수 있으므로, 고속 계산이 가능하다. 그러나, 텍스처가 없는 영역이나, 반복 패턴이 존재하는 영역에서는, 시차를 정확하게 구하기가 곤란하다는 문제가 있다.
한편, 근년, 화상 중의 전체 화소의 시차에 대한 비용 함수를 정의하고, 그 함수가 최소가 되는 시차의 조합을 구하는 방식(글로벌 매칭)이 제안되었다. 이 글로벌 매칭에서는, 포괄적인 시차 추정을 행하기 위해서, 텍스처가 없는 영역이나, 반복 패턴이 존재하는 영역에서도, 시차를 보다 정확하게 구할 수 있다.
그러나, 글로벌 매칭에서는, 각 화소에 대해, 블록 매칭과 마찬가지의 방법으로 상관값을 구한 후, 인접 화소의 계산 결과를 사용하여 자신의 계산 결과를 최적화한다. 그리고, 화면 전체의 화소에 대해, 최적화 연산된 계산 결과를 집약하고, 시차를 산출한다. 즉, 블록 매칭에 비하여, 정밀도가 향상되는 한편, 연산량이나, 계산 결과를 일시적으로 보유 지지하기 위한 메모리양이, 방대하게 되어 버린다는 문제가 있다.
또한, 좌우의 화상을 교체하여, 우측 화상을 기준 화상으로 하여 시차를 산출하고, 좌측 화상을 기준 화상으로 하여 산출된 시차와의 차분을 체크하고, 정확하게 시차가 구해졌는지 여부를 화소마다 체크할 경우(이하, 크로스 체크라고 나타냄), 글로벌 매칭을 2회 행할 필요가 있으므로, 연산량이나, 계산 결과를 일시적으로 보유 지지하기 위한 메모리양이, 더 방대해져 버린다는 문제가 있다.
실시 형태는, 처리 레이트를 향상시켜, 메모리의 탑재량을 저감시킬 수 있는, 화상 처리 장치, 화상 처리 방법 및 자동 운전 시스템을 제공한다.
본 실시 형태의 화상 처리 장치는, 제1 촬상 수단이 피사체를 촬상함으로써 얻어지는 제1 화상, 및, 상기 제1 촬상 수단과는 상이한 위치의 제2 촬상 수단이 상기 피사체를 촬상함으로써 얻어지는 제2 화상에 기초하여, 시차를 산출하는 화상 처리 장치이며, 상기 제1 화상 또는 상기 제2 화상의 어느 한쪽을 기준 화상, 다른 쪽을 참조 화상으로 설정하고, 또한, 상기 참조 화상에 있어서의 화소의 취득 순서를 제1 방향으로 설정하는 제어 회로를 구비한다. 또한, 상기 참조 화상에 있어서, 상기 제어 회로에 의해 설정된 취득 순서로 화소를 취득하면서 산출 가능한 경로를 사용하여, 글로벌 최적화에 의한 비용 최적화 연산을 행하는 비용 최적화 연산 회로와, 상기 비용 최적화 연산에 의해 얻어진 비용값을 사용하여 각 화소의 시차를 결정하는 비용 최소 시차 추출 회로와, 상기 제1 화상을 기준 화상으로 하여 산출되는 제1 시차와, 상기 제2 화상을 기준 화상으로 하여 산출되는 제2 시차를 사용하여 크로스 체크를 행하고, 산출된 시차의 타당성을 화소마다 판정해 출력하는 시차 출력 회로도 구비한다. 또한, 상기 제어 회로는, 상기 기준 화상과 상기 참조 화상의 교체를 행함과 동시에, 교체 후의 상기 참조 화상에 있어서의 화소의 취득 순서인 제2 방향을, 상기 제1 방향과 역의 방향으로 설정한다.
도 1은, 본 실시 형태에 관한 화상 처리 장치(1)를 포함하는, 화상 처리 시스템의 구성의 일례를 나타내는 개략 블록도이다.
도 2는, 거리 정보 연산 회로(11)의 구성의 일례를 나타내는 블록도이다.
도 3은, 시차별 비용값 산출 회로(15)의 상세한 구성의 일례를 나타내는 블록도이다.
도 4는, 시차별 비용값 산출 회로(15)에 있어서의 비용값 산출 수순의 일례를 설명하는 흐름도이다.
도 5a 및 도 5b는, SGM법에 있어서의 비용을 산출하는 경로와 스캔 방향의 관계를 설명하는 도면이다.
도 6은, 비용 최적화 연산 회로(16)의 상세한 구성의 일례를 나타내는 블록도이다.
도 7은, 시차 출력 회로(19)에 있어서의, 시차의 크로스 체크 방법을 설명하는 도면이다.
도 8은, 본 실시 형태에 관한 화상 처리 수순의 일례를 설명하는 흐름도이다.
도 9는, 비교예의 화상 처리 수순의 일례를 설명하는 흐름도이다.
도 10은, 본 실시 형태에 관한 이동체(100)의 일례를 나타내는 도면이다.
도 11은, 이동체(100)의 구성의 일례를 나타내는 블록도이다.
도 12는, 이동체(100)에 탑재된 화상 처리 장치(1)의 일례를 나타내는 블록도이다.
이하, 도면을 참조하여 실시 형태를 설명한다.
도 1은, 본 실시 형태에 관한 화상 처리 장치(1)를 포함하는, 화상 처리 시스템의 구성의 일례를 나타내는 개략 블록도이다. 화상 처리 시스템은, 화상 매칭 처리 장치(이하, 화상 처리 장치라고 함)(1)와, 캘리브레이션 장치(2)와, 화상 입력 장치(3)와, 이들을 접속하는 버스(4)로 구성되어 있다. 도 1은, 2대의 카메라에 의한 좌우 시차 화상을 사용하여 스테레오 매칭 처리를 행하는 화상 처리 시스템에 대해 예시하고 있다.
화상 입력 장치(3)에는, 도시되지 않은 카메라로 촬상된 복수의 화상(예를 들어, 좌안에 대응하는 카메라로 촬상된 L 화상(5l)과, 우안에 대응하는 카메라로 촬상된 R 화상(5r)의 2매의 화상)이 입력된다. L 화상(5l)과 R 화상(5r)은, 버스(4)를 통하여 캘리브레이션 장치(2)에 입력된다.
캘리브레이션 장치(2)는, 설정 조건이나 렌즈의 개체차 등에 기인하는 카메라 내외의 정적인 어긋남을 보정한다. 구체적으로는, 격자형의 패턴 등, 크기가 기지인 특정 도형 패턴을 촬상한 화상을 사용하여, 내부 파라미터와 외부 파라미터를 사전에 산출해 둔다. 그리고, 화상 입력 장치(3)로부터 입력된 L 화상(5l)과 R 화상(5r)의 각각을 내부 파라미터와 외부 파라미터를 사용하여 변환함으로써, 정적인 어긋남을 보정하고, 보정 완료 L 화상(6l)과 보정 완료 R 화상(6r)을 생성한다. 또한, 내부 파라미터란, 초점 거리나 화상 주점 위치, 렌즈 변형 등, 카메라의 내부 특성을 나타내는 것이다. 또한, 외부 파라미터란, 카메라의 3차원 공간에 있어서의 회전·평행 이동의 파라미터이며, 스테레오 화상에 있어서는, 한쪽 화상을 기준으로 한 경우의 다른 쪽 화상 회전·평행 이동의 정도를 나타내는 것이다. 보정 완료 L 화상(6l)과 보정 완료 R 화상(6r)은, 버스(4)를 통하여 화상 처리 장치(1)에 입력된다.
화상 처리 장치(1)는, 보정 후의 화상(보정 완료 L 화상(6l), 보정 완료 R 화상(6r))을 사용하여 스테레오 매칭을 행하고, 거리 화상(카메라부터 피사체까지의 거리를 나타내는 화상)(7)을 생성한다. 도 1의 화상 처리 장치(1)는, 프로세서(1a)와, L 화상용 라인 버퍼(이하, L 라인 버퍼라 함)(12)와, R 화상용 라인 버퍼(이하, R 라인 버퍼라 함)(13)를 갖고 있다.
L 라인 버퍼(12)는, 보정 완료 L 화상(6l)에 있어서, 시차 계산 대상 화소 위치의 라인을 포함하는, 복수 라인 만큼의 화소 데이터를 저장하는 버퍼이다. R 라인 버퍼(13)는, 보정 완료 R 화상(6r)에 있어서, 시차 계산 대상 화소 위치의 라인을 포함하는, 복수의 라인 만큼의 화소 데이터를 저장하는 버퍼이다.
프로세서(1a)는, 거리 정보 연산 회로(11)를 포함한다. 거리 정보 연산 회로(11)는, 그래프 커트법 등의 글로벌 매칭이나, SGM법(Semi-Global Matching법) 등을 사용하여, 기준 화상의 화소마다 시차를 산출하여 시차 화상으로서 출력한다. 또한, 기준 화상을 좌우 교체하여, 크로스 체크도 행한다. 즉, 거리 정보 연산 회로(11)에 있어서의 각 처리는, 프로세서(1a)에 의해 실행된다.
또한, 본 실시 형태에 있어서 사용하는 「프로세서」라는 문언은, 예를 들어 CPU(Central Processing Unit), GPU(Graphical Processing Unit), 특정 용도용 집적 회로(Application Specific Integrated Circuit: ASIC), 프로그래머블 논리 디바이스(예를 들어, 단순 프로그래머블 논리 디바이스(Simple Progra㎜able Logic Device: SPLD), 복합 프로그래머블 논리 디바이스(Complex Progra㎜able Logic Device: CPLD), 및, 필드 프로그래머블 게이트 어레이(Field Progra㎜able Gate Array: FPGA))의 회로를 의미한다.
도 2는, 거리 정보 연산 회로(11)의 구성의 일례를 나타내는 블록도이다. 거리 정보 연산 회로(11)는, 입력 화상 취득 회로(14)와, 시차별 비용값 산출 회로(15)와, 비용 최적화 연산 회로(16)와, 비용 최소 시차 추출 회로(17)와, 크로스 체크 버퍼(18)와, 시차 출력 회로(19)와, 제어 회로(20)를 갖는다.
입력 화상 취득 회로(14)는, 제어 회로(20)로부터의 지시에 따라 L 라인 버퍼(12), 및, R 라인 버퍼(13)로부터, 기준 화상의 각 화소, 및, 참조 화상의 각 화소를 취득한다. 각 화소의 취득 시에, L 화상/R 화상의 어느 쪽이 기준 화상인지, 또한, 각 화상에 있어서의 화소의 취득 순서(래스터 스캔의 방향)가 제어 회로(20)로부터 지시된다.
시차별 비용값 산출 회로(15)는, 참조 화상에 있어서, 시차 계산 대상 화소에 있어서의 비용값 산출 화소 영역을 설정하고, 당해 영역에 있어서의 비용값을 산출한다. 비용값 산출 화소 영역은, 수평 방향의 최대 시차의 크기를 갖는다. 이하의 설명에 있어서, 입력 화상에 있어서의 수평 방향의 화소 위치를 나타내는 좌표를 X 좌표, 수직 방향의 화소 위치를 나타내는 좌표를 Y 좌표라 한다. 예를 들어, 기준 화상이 L 화상, 시차 계산 대상 화소의 위치가(X,Y)=(150,25), 수평 방향의 최대 시차가 128 화소인 경우, 비용값 산출 화소 영역은, (X,Y)=(150,25) 내지 (23,25)의 범위의 화소가 된다.
도 3은, 시차별 비용값 산출 회로(15)의 상세한 구성의 일례를 나타내는 블록도이다. 시차별 비용값 산출 회로(15)는, 특징량 연산 회로(141)와, 비용 연산 회로(142)와, 비용 버퍼(143)를 갖는다.
특징량 연산 회로(141)는, 기준 화상이 저장되어 있는 라인 버퍼로부터 취득되는 시차 계산 대상 화소의 화소 데이터, 및, 참조 화상이 저장되어 있는 라인 버퍼로부터 취득하는 비용값 산출 화소 영역 내의 화소 데이터의 특징량을 각각 산출한다. 예를 들어, LBP(Local Binary Pattern) 등, 기존의 정량화된 특징량을 산출한다. 특징량으로서 LBP를 산출하는 경우, 특징량 산출 대상 화소(중심 화소)와, 주변 화소의 휘도값을 비교한다. 당해 주변 화소의 중심 화소의 휘도값보다 주변 화소의 휘도값 쪽이 크면 "1", 중심 화소의 휘도값보다 주변 화소의 휘도값 쪽이 작으면 "0" 비트를 부여한다. 그리고, 주변 화소의 비트를 소정의 순서로 결합하고, 특징량 산출 대상 화소의 특징량(LBP 부호)으로 한다. 또한, 주변 화소에 부여되는 비트는, 중심 화소의 휘도값보다 주변 화소의 휘도값 쪽이 크면 "0", 중심 화소의 휘도값보다 주변 화소의 휘도값 쪽이 작으면 "1"로 해도 된다.
비용 연산 회로(142)는, 기준 화상에 있어서의 시차 계산 대상 화소에 관한 특징량과, 참조 화상에 있어서의 비용값 산출 화소 영역 내의 각 화소에 관한 특징량을 비교하여, 시차마다의 비용값을 산출한다. 예를 들어, 특징량으로서 LBP 부호를 산출한 경우, 기준 화상과 참조 화상의 LBP 부호간의 허밍(humming) 거리를 산출하여, 비용값으로 한다.
비용 버퍼(143)는, 비용 연산 회로(142)로 산출된 비용값을, 참조 화상에 있어서의 화소 위치와 대응지어서 저장한다.
도 4는, 시차별 비용값 산출 회로(15)에 있어서의 비용값 산출 수순의 일례를 설명하는 흐름도이다. 또한, 비용값 산출에 앞서, 기준 화상에 있어서 시차 계산 대상 화소가 세트되어 있고, 비용값 산출에 필요한 특징량이 산출되어 있는 것으로 한다. 거리 화상(7)을 제작하기 위해서는, 기준 화상의 전체 화소에 대해 시차를 산출할 필요가 있다. 통상은, 기준 화상의 좌측 상방에 위치하는 화소부터 우측 하방에 위치하는 화소까지, 래스터 스캔의 순서대로 시차 계산 대상 화소 위치를 순차 세트하고, 각 화소 위치에서의 시차를 산출해 간다.
먼저, 비용값 산출 대상 영역을 특정하고, 수평 방향의 최대 시차수(Dnum)를 설정한다(S1). 예를 들어, 상술한 일례의 경우, Dnum=128로 설정한다. 또한, 최초의 비용값 산출 대상 화소 위치(탐색 화소 위치)를 설정한다. 최초의 비용값 산출 대상 화소 위치는, 비용값 산출 대상 영역의 좌측 단부에 위치하는 화소이다. 예를 들어, 상술한 일례의 경우, 최초의 비용값 산출 대상 화소 위치는 (X,Y)=(23,25)로 설정된다.
다음에, 비용 산출 대상의 수평 방향의 화소 위치를, 초기 상태(D=0)로 세트한다(S2). 계속해서, 비용 연산 회로(142)에 있어서, 탐색 화소 위치에 있어서의 비용값을 산출하고, 비용 버퍼(143)에 저장한다(S3). 계속해서, 탐색 화소 위치의 수평 방향의 화소 위치(D)를 1 증가시키고, 탐색 화소 위치를 인접한 화소로 이동시킨다(S4).
탐색 화소 위치가 비용값 산출 대상 영역에 포함되는 경우(S5, "아니오"), S3으로 되돌아가서 당해 화소 위치에 있어서의 비용값을 산출한다. 한편, 이동 후의 탐색 대상 화소 위치가 비용값 산출 대상 영역에 포함되지 않은 경우(S5, "예"), 비용값 산출 대상 영역 내의 모든 화소에 대해 비용값의 산출이 종료되었다고 판정되어, 시차별 비용값 산출 회로(15)에 있어서의 일련의 비용값 산출 수순을 종료한다.
또한, 시차별 비용값 산출 회로(15)에 있어서의 비용값의 산출 방법은, 상술한 도 4의 흐름도 수순에 한정되지 않고, 비용값 산출 대상 영역 내의 모든 화소의 비용값을 빠짐 없이 산출할 수 있는 수순이면 된다. 예를 들어, 비용값 산출 대상 영역을 복수의 블록으로 분할하고, 각 블록에 있어서의 비용값의 산출을 병렬 처리해도 된다.
또한, 시차별 비용값 산출 회로(15)에 있어서의 비용값의 산출 방법은, 상술한 LBP 부호의 허밍 거리에 한정되지 않고, SAD 함수 등, 기존의 정량화한 비용 함수를 사용해도 된다. SAD 함수 등 화소 데이터로부터 특징량을 산출하지 않고 직접 비용을 산출하는 것이 가능한 방법을 사용하는 경우, 기준 화상이 저장되어 있는 라인 버퍼로부터 취득하는 시차 계산 대상 화소의 화소 데이터 및 참조 화상이 저장되어 있는 라인 버퍼로부터 취득하는 비용값 산출 화소 영역 내의 화소 데이터를 비용 연산 회로(142)에 직접 입력하여 비용값을 산출할 수 있기 때문에, 특징량 연산 회로(141)는 생략할 수 있다.
비용 최적화 연산 회로(16)는, 그래프 커트법 등의 글로벌 매칭이나 SGM법(Semi-Global Matching법) 등에 의해 합성 비유사도인 합성 비용값(S)을 산출함으로써, 기준 화상의 화소마다 최적화된 시차를 도출한다.
여기서, SGM법에 의한 합성 비용값(S)의 산출 방법에 대해 설명한다. 합성 비용값(S)은, 참조 화상의 단부로부터 시차 계산 대상 화소를 향하여 집약하는 방향을 따른, 복수의 경로를 정의하고, 각각의 경로에 있어서의 비용의 총합으로서 산출된다. 비용을 산출하는 경로는, 통상 시차 계산 대상 화소를 향하고, 수평 우측 방향, 수평 좌측 방향, 수직 상측 방향, 수직 하측 방향으로부터 집약되는 4 방향을 따른 4개의 경로가 설정된다. 그리고 통상은, 이들 4 방향에 추가하여, 시차 계산 대상 화소를 향하여, 우측 상방 45˚ 방향, 우측 하방 45˚ 방향, 좌측 하방 45˚ 방향, 좌측 상방 45˚ 방향으로부터 집약되는 4 방향을 따른 4개의 경로를 첨가한 8개의 경로가 설정된다. 또한, 8 방향을 더 분할하여 16 방향, 3개로 분할하여 24 방향으로 하는 등, 경로의 수는 특정한 수에 한정되지 않는다.
각각의 경로 r에 있어서의 비용 Lr(p,d)은, 이하의 (1) 식을 사용하여 산출된다.
Lr(p,d)=C(p,d)+min{Lr(p-r,d), Lr(p-r,d-1)+P1, Lr(p-r,d+1)+P1, Lrmin(p-r)+P2} …(1) 식
(1) 식에 있어서, C(p,d)는, 시차 계산 대상 화소 위치에서 시차(d)의 위치에 있는 화소의 비용값, min{}은 최솟값을 구하는 함수, Lrmin(p-r)은, 시차 계산 대상 화소 위치에서 r 방향으로 1 화소 시프트한 좌표에 있어서, 시프트량(d)을 변화시켰을 때의, Lr(p-r,d)의 최솟값을 나타낸다. 또한, P1, P2는 미리 설정된 페널티 상수이다. 이와 같이, 비용 Lr(p,d)은, 비용값 C(p,d)에, r 방향의 소정 경로 상에 있어서의 1 화소 전의 비용값이 선택되어 가산되는 점화식(漸化式)으로 되어 있으므로, 최적화가 행하여진다.
(1) 식에 나타내는 비용 계산을, 복수의 방향(예를 들어, 8 방향)으로부터 행함으로써, 근사적으로 전체 최적화를 행한다. 즉, 각 방향의 비용 Lr(p,d)의 총합으로서, 합성 비용값(S)을 산출한다.
도 5a 및 도 5b는, SGM법에 있어서의 비용을 산출하는 경로와 스캔 방향의 관계를 설명하는 도면이다. 도 5a 및 도 5b에 있어서, 음영으로 나타내는 화소는, 현재의 비용값 산출 대상 화소를 나타내고 있다. 또한, 도 5a 및 도 5b에 있어서, 화살표가 있는 굵은 선은, 비용을 산출하는 경로와 방향을 나타내고 있다. 또한, 도 5a 및 도 5b에 있어서, 화살표가 있는 점선은, 참조 화상에 있어서의 화소의 스캔 방향을 나타내고 있다.
수평 좌측 방향, 수직 상측 방향, 우측 상방 45˚ 방향, 좌측 상방 45˚ 방향으로부터 집약되는 4 방향을 따른 4개의 경로의 비용은, 좌측, 및, 상측 방향으로 위치하는 화소의 결과를 참조하면서 산출할 필요가 있다. 따라서, 도 5a에 나타내는 바와 같이, 참조 화상의 좌측 상방에 위치하는 화소부터 우측 하방에 위치하는 화소까지 래스터 스캔하면서 산출한다.
또한, 수평 우측 방향, 수직 하측 방향, 우측 하방 45˚ 방향, 좌측 하방 45˚ 방향으로부터 집약되는 4 방향의 벡터에 따른 4개의 경로의 비용은, 우측 및 하측 방향으로 위치하는 화소의 결과를 참조하면서 산출할 필요가 있다. 따라서, 도 5b에 나타내는 바와 같이, 참조 화상의 우측 하방에 위치하는 화소로부터 좌측 상방에 위치하는 화소까지 래스터 스캔하면서 산출한다.
즉, 비용 계산을 8 방향으로부터 행하는 경우, 방향을 바꾸어서 2회 래스터 스캔할 필요가 있다. 래스터 스캔을 2회 행하기 때문에, 먼저, 1회째의 래스터 스캔 동안에 산출한 4 방향의 비용을 기억 장치 등에 일시적으로 저장해 둔다. 그리고, 2회째의 래스터 스캔 종료 후에, 기억 장치 등으로부터 저장되어 있는 4 방향의 비용을 판독하고, 2회째의 래스터 스캔에 의해 산출한 4 방향의 비용과 합쳐, 합성 비용값(S)을 얻는다.
도 6은, 비용 최적화 연산 회로(16)의 상세한 구성의 일례를 나타내는 블록도이다. 비용 최적화 연산 회로(16)는, 비용 갱신값 연산 회로(161)와, 비용 버퍼(162)를 갖는다. 비용 갱신값 연산 회로(161)는, 시차별 비용값 산출 회로(15)로부터 입력된 비용값, 도시되지 않은 기억 회로 등으로부터 입력되는 소정의 페널티 상수(P1, P2) 및 비용 버퍼(162)에 저장되어 있는 인접 화소의 비용을 사용하고, 상술한 (1) 식의 연산을 행하여 비용을 산출한다. 연산 결과는, 비용 버퍼(162)에 저장되고, 비용 갱신값 연산 회로(161)에서의 비용 산출에 재귀적으로 사용된다.
또한, 비용 최적화 연산 회로(16)는, 일반적으로, 특정된 하나의 경로에 있어서의 비용 산출에 사용된다. 따라서, 거리 정보 연산 회로(11)에는, 합성 비용값(S)을 산출하기 위해서 설정된 경로의 수와 동일수의 비용 최적화 연산 회로(16)가 설치된다.
또한, 비용 최적화 연산 회로(16)에 있어서의 합성 비용값(S)의 산출 방법은, 상술한 그래프 커트법 등의 글로벌 매칭이나 SGM법에 한정되지 않고, 기존의 다른 방법을 사용해도 된다.
비용 최소 시차 추출 회로(17)는, 비용 최적화 연산 회로(16)로 산출된 합성 비용값(S)이 최소가 되는 시차를 추출한다. 기준 화상의 전체 화소에 대해, 시차의 추출이 행하여진다.
크로스 체크 버퍼(18)는, 기준 화상을 좌우 교체하여 크로스 체크를 행하는 경우에, 먼저 기준 화상과 설정된 화상에 있어서의 각 화소에 대해, 비용 최소 시차 추출 회로(17)로 추출된 시차를 저장한다.
시차 출력 회로(19)는, 크로스 체크 버퍼(18)에 저장되어 있는 각 화소의 시차와, 후에 기준 화상으로 설정된 화상에 있어서의 각 화소의 시차와의 차분을 체크하고, 정확하게 시차가 구해졌는지 여부를 화소마다 체크한다. 도 7은, 시차 출력 회로(19)에 있어서의, 시차의 크로스 체크 방법을 설명하는 도면이다. 구체적으로는, L 화상의 각 화소에 대해, 산출된 시차를, 자신의 X 좌표로부터 차감하고, 대응하는 R 화상의 화소 위치를 구한다. 예를 들어, L 화상의 화소(X,Y)=(100,25)의 시차가 15로 산출된 경우, 100에서 15를 빼서, 대응하는 R 화상의 화소(X,Y)=(85,25)를 얻는다. 다음에, 산출된 R 화상의 화소 위치에 있어서의 시차를 크로스 체크 버퍼(18)로부터 판독하고, 앞의 L 화상의 화소에 있어서의 시차와의 차분을 산출한다. 예를 들어, R 화상의 화소(X,Y)=(85,25)의 시차가 16인 경우, 차분은 15-16=-1이 된다. 산출된 차분의 절댓값과, 미리 설정된 임계값을 비교하여, 임계값보다 작은 경우, 정확하게 시차가 구해졌다고 판정한다.
또한, 시차 출력 회로(19)에 있어서의 크로스 체크의 방법은, L 화상을 기준 화상으로 한 경우의 시차와, R 화상을 기준 화상으로 한 경우의 시차 비교를 행하여, 시차가 정확하게 구해졌는지 여부를 판정하면 되며, 상술한 방법에 한정되지 않는다. 예를 들어, 각 좌표에서 시차를 빼는 방법이나, 임계값의 비교에 의한 정부 판정은, 다른 방법을 사용해도 된다.
시차 출력 회로(19)는, 시차, 및, 체크 결과를 출력한다. 또한, 시차와 체크 결과는 개별로 출력해도 되고, 정확하게 시차가 구해지지 않은 화소에 대해서는, 산출된 시차를 특정한 값(예를 들어, -1)으로 치환하거나 하여, 시차에 체크 결과를 포함하여 출력해도 된다. 또한, 크로스 체크를 행하지 않는 경우에는, 비용 최소 시차 추출 회로(17)로 추출된 시차를 그대로 출력한다.
또한, 시차 출력 회로(19)는, 화상의 좌측 상방 화소로부터 우측 하방의 화소를 향하여 래스터 스캔 순으로 시차가 출력되도록, 출력 순서의 제어나 어드레스의 계산도 행한다.
제어 회로(20)는, 입력 화상 취득 회로(14), 시차별 비용값 산출 회로(15), 비용 최적화 연산 회로(16), 비용 최소 시차 추출 회로(17)의 각 회로에 대해, 기준 화상의 설정과, 각 화상 있어서의 화소의 스캔 방향의 지시를 행한다.
다음에, 본 실시 형태의 화상 처리 장치에 있어서의, 시차 산출 수순에 대해 설명한다. 도 8은, 본 실시 형태에 관한 화상 처리 수순의 일례를 설명하는 흐름도이다. 도 8은, L 화상을 기준 화상으로 하는 시차를 출력하는 경우에 있어서, R 화상을 기준 화상으로 하여 산출된 시차를 사용하여 크로스 체크를 1회 행할 때의 수순을 나타내고 있다.
먼저, 제어 회로(20)는, 입력 화상 취득 회로(14), 시차별 비용값 산출 회로(15), 비용 최적화 연산 회로(16), 비용 최소 시차 추출 회로(17)의 각 회로에 대해, 기준 화상으로서 R 화상을 세트한다(S11). 통상은, 먼저, 시차를 출력하는 화상과는 역의 화상을 기준 화상으로 하여 시차를 산출한다. 따라서, 상술한 경우, 우선은 R 화상을 기준 화상으로 하여 시차를 산출한다. 또한, R 화상을 기준 화상으로 하는 시차를 출력하고 싶을 경우, S11에 있어서는 L 화상을 기준 화상으로 하여 세트한다.
다음에, 제어 회로(20)는, 입력 화상 취득 회로(14), 시차별 비용값 산출 회로(15), 비용 최적화 연산 회로(16), 비용 최소 시차 추출 회로(17)의 각 회로에 대해, 우측 하방으로부터 좌측 상방을 향하여 화소를 스캔하도록, 스캔 방향을 세트한다(S12).
계속해서, 입력 화상 취득 회로(14), 시차별 비용값 산출 회로(15), 비용 최적화 연산 회로(16), 비용 최소 시차 추출 회로(17)는, R 화상을 기준 화상으로 하여 참조 화상인 L 화상을 우측 하방으로부터 좌측 상방을 향하여 스캔하면서 시차를 산출한다(S13). 이 때, 비용 최적화 연산 회로(16)는, 우측 하방으로부터 좌측 상방을 향하여 화소를 스캔하면서 산출 가능한 경로에 대해서만, 비용을 산출한다. 즉, 수평 우측 방향, 수직 하측 방향, 우측 하방 45˚ 방향, 좌측 하방 45˚ 방향으로부터 집약되는 4 방향의 벡터에 따른 4개의 경로의 비용을 산출하고, 이들 4개의 경로의 비용을 사용하여 합성 비용값(S)을 산출한다.
기준 화상의 전체 화소에 대해, 합성 비용값(S)이 최소가 되는 시차가 추출되고, 크로스 체크 버퍼(18)에 저장되면, 제어 회로(20)는 기준 화상의 교체와, 화소의 스캔 방향의 교체를 지시한다. 구체적으로는, 먼저, 입력 화상 취득 회로(14), 시차별 비용값 산출 회로(15), 비용 최적화 연산 회로(16), 비용 최소 시차 추출 회로(17)의 각 회로에 대해, 기준 화상으로서 L 화상을 세트한다(S14). 동시에, 입력 화상 취득 회로(14), 시차별 비용값 산출 회로(15), 비용 최적화 연산 회로(16), 비용 최소 시차 추출 회로(17)의 각 회로에 대해, 좌측 상방으로부터 우측 하방을 향하여 화소를 스캔하도록, 스캔 방향을 세트한다(S15).
입력 화상 취득 회로(14), 시차별 비용값 산출 회로(15), 비용 최적화 연산 회로(16), 비용 최소 시차 추출 회로(17)는, L 화상을 기준 화상으로 하여, 참조 화상인 R 화상을 좌측 상방으로부터 우측 하방을 향하여 스캔하면서 시차를 산출한다(S16). 이 때, 비용 최적화 연산 회로(16)는, 좌측 상방으로부터 우측 하방을 향하여 화소를 스캔하면서 산출 가능한 경로에 대해서만, 비용을 산출한다. 즉, 수평 좌측 방향, 수직 상측 방향, 우측 상방 45˚ 방향, 좌측 상방 45˚ 방향으로부터 집약되는 4 방향의 벡터에 따른 4개의 경로의 비용을 산출하여, 이들 4개의 경로의 비용을 사용하여 합성 비용값(S)을 산출한다.
계속해서, 시차 출력 회로(19)는, 크로스 체크 버퍼(18)에 저장되어 있는 R 화상을 기준 화상으로 한 각 화소의 시차와, L 화상을 기준 화상으로 한 각 화소의 시차의 차분을 체크하고, 정확하게 시차가 구해졌는지 여부를 화소마다 체크한다(S17).
마지막으로, 시차 출력 회로(19)는, L 화상을 기준 화상으로 한 각 화소의 시차에 체크 결과를 반영시키고, 정확하게 시차가 구해지지 않았다고 판정된 화소에 대해서는, 산출된 시차를 특정한 값(예를 들어, -1)으로 치환하여 출력한다. 정확하게 시차가 구해졌다고 판정된 화소에 대해서는, 산출된 시차를 그대로 출력한다. 또한, 체크 결과에 따른 시차의 치환은 행하지 않고, 시차와 체크 결과를 개별로 출력해도 된다.
이와 같이, 본 실시 형태에 따르면, SGM법(Semi-Global Matching법) 등을 사용하여 시차를 산출하며, 또한, 크로스 체크하는 경우에 있어서, 기준 화상의 교체를 행할 때에, 화상에 있어서의 화소의 취득 순서(스캔 방향)의 교체도 행한다. 그리고, 각 기준 화상에 있어서, 합성 비용값(S)을 산출하기 위한 경로는, 스캔 방향에 대응한 경로에 대해서만 비용을 구한다.
비교예에서는, 도 9에 나타내는 바와 같이, 하나의 기준 화상에 대해 방향을 바꾸어서 2회의 스캔을 행하고 있었기 때문에, 합계 4회 스캔을 행할 필요가 있었다. 도 9는, 비교예의 화상 처리 수순의 일례를 설명하는 흐름도이다. 즉, 기준 화상으로서 R 화상을 세트한 후(S21), 참조 화상인 L 화상을 좌측 상방으로부터 우측 하방을 향하여 화소를 스캔하면서, 산출 가능한 경로에 대해, 비용을 산출한다(S22). 산출된 비용은, 기억 장치 등에 일시적으로 저장해 둔다. 계속해서, L 화상을 우측 하방으로부터 좌측 상방을 향하여 화소를 스캔하면서, 산출 가능한 경로에 대해, 비용을 산출한다(S23). 그리고, S22에서 산출해 저장해 둔 비용과 합쳐, 각 화상의 비용 최소 시차를 산출한다(S24).
다음에, 기준 화상으로서 L 화상을 세트한 후(S25), 참조 화상인 R 화상을 우측 하방으로부터 좌측 상방을 향하여 화소를 스캔하면서, 산출 가능한 경로에 대해, 비용을 산출한다(S26). 산출된 비용은, 기억 장치 등에 일시적으로 저장해 둔다. 계속해서, R 화상을 좌측 상방으로부터 우측 하방을 향하여 화소를 스캔하면서, 산출 가능한 경로에 대해, 비용을 산출한다(S27). 그리고, S26에서 산출해 저장해 둔 비용과 함께, 각 화상의 비용 최소 시차를 산출한다(S28). 마지막으로, S24에서 산출된 시차와, S28에서 산출된 시차의 크로스 체크를 실시해(S29), 체크 결과를 출력한다(S30).
이에 비하여, 본 실시 형태에 있어서는, 하나의 기준 화상에 대해 1회의 스캔이면 되기 때문에, 스캔 횟수를 반감시킬 수 있고, 처리 레이트를 향상시킬 수 있다.
또한, 비교예에서는, 하나의 기준 화상에 대해 스캔 방향을 바꾸어서 2회의 스캔을 행하기 때문에, 1회째의 래스터 스캔 동안에 산출된 4 방향의 비용을 기억 장치 등에 일시적으로 저장하여 둘 필요가 있었다. 이에 비하여, 본 실시 형태에 있어서는, 하나의 기준 화상에 대해 스캔 방향을 한 방향으로 함으로써, 비용을 일시적으로 기억 장치에 저장할 필요가 없어지기 때문에, 메모리의 탑재량을 저감시킬 수 있다.
또한, 본 실시 형태에 있어서는, 한쪽을 기준 화상으로 한 경우에는 상방 우측 방향으로부터 집약되는 경로의 비용을 구하고, 다른 쪽을 기준 화상으로 한 경우에는 하방 좌측 방향으로부터 집약되는 경로의 비용을 구하고 있다. 따라서, 크로스 체크에는, 상하 좌우 전체 방향으로부터의 경로의 비용이 반영되기 때문에, 비교예와 동등한 정확성을 유지할 수 있다.
또한, 상술에서는, 크로스 체크를 행하는 경우에 대해서만 나타내었지만, 크로스 체크를 행하는 모드와, 크로스 체크를 행하지 않는 모드를, 외부로부터의 입력 등에 의해 선택 가능하게 해도 된다. 크로스 체크를 행하지 않는 모드가 선택된 경우, 합성 비용값(S)을 산출하는 경로에 대해, 방향의 치우침을 없애는 것이 바람직하다. 따라서, 제어 회로(20)는, 비용 최적화 연산 회로(16)에 대해, 스캔 방향을 바꾸어서 2회 스캔을 행해, 예를 들어 수평 우측 방향, 수평 좌측 방향, 수직 상측 방향, 수직 하측 방향, 우측 상방 45˚ 방향, 우측 하방 45˚ 방향, 좌측 하방 45˚ 방향, 좌측 상방 45˚ 방향으로부터 집약되는 8 방향의 벡터에 따른 8개의 경로에 대해 비용을 취득하도록 지시하는 것이 바람직하다.
본 실시 형태의 화상 처리 장치(1)는, 이동체(100) 등에 있어서의 운전 지원 시스템으로서 사용할 수 있다. 다음에, 본 실시 형태의 화상 처리 장치(1)를 탑재한 이동체(100)에 대해 설명한다.
도 10은, 본 실시 형태의 이동체(100)의 일례를 나타내는 도면이다.
이동체(100)는, 화상 처리 장치(1)와, 출력부(100A)와, 센서(100B)와, 입력 장치(100C)와, 동력 제어부(100G)와, 동력부(100H)를 구비한다.
이동체(100)는, 이동 가능한 물체이다. 이동체(100)는, 예를 들어 차량(오토바이, 자동 사륜차, 자전거), 트롤리, 로봇, 선박, 비행체(비행기, 무인 항공기(UAV: U㎚anned Aerial Vehicle) 등)이다. 이동체(100)는, 예를 들어 사람에 의한 운전 조작을 통해 주행하는 이동체나, 사람에 의한 운전 조작을 거치지 않고 자동으로 주행(자율 주행) 가능한 이동체이다. 자동 주행 가능한 이동체는, 예를 들어 자동 운전 차량이다. 본 실시 형태의 이동체(100)는, 자율 주행 가능한 차량인 경우를 일례로서 설명한다.
또한, 운전 지원 시스템으로서의 화상 처리 장치(1)는, 이동체(100)에 탑재된 형태에 한정되지 않는다. 화상 처리 장치(1)는, 정지물에 탑재되어 있어도 된다. 정지물은, 이동 불가능한 물건이나, 지면에 대해 정지된 상태의 물건이다. 정지물은, 예를 들어 가드레일, 폴, 주차 차량, 도로 표지, 등이다. 또한, 화상 처리 장치(1)는, 클라우드 상에서 처리를 실행하는 클라우드 서버에 탑재되어 있어도 된다.
출력부(100A)는, 각종 정보를 출력한다. 예를 들어 출력부(100A)는, 각종 처리에 의한 출력 정보를 출력한다.
출력부(100A)는, 예를 들어 출력 정보를 송신하는 통신 기능, 출력 정보를 표시하는 표시 기능, 출력 정보를 나타내는 소리를 출력하는 음출력 기능, 등을 구비한다. 예를 들어, 출력부(100A)는, 통신부(100D)와, 디스플레이(100E)와, 스피커(100F)를 포함한다.
통신부(100D)는, 외부 장치와 통신한다. 통신부(100D)는, VICS(등록 상표) 통신 회로나 다이내믹 맵 통신 회로이다. 통신부(100D)는, 출력 정보를 외부 장치에 송신한다. 또한, 통신부(100D)는, 도로 정보 등을 외부 장치로부터 수신한다. 도로 정보는, 신호, 표지, 주위의 건물, 각 차선의 도로폭, 레인 중심선 등이다. 도로 정보는, 화상 처리 장치 내에 설치한 RAM, ROM과 같은 메모리(1b) 내에 기억되어도, 이동체 내에 별도로 설치한 메모리 내에 기억해도 된다.
디스플레이(100E)는, 출력 정보를 표시한다. 디스플레이(100E)는, 예를 들어 공지된 LCD(Liquid Crystal Display)나 투영 장치나 라이트 등이다. 스피커(100F)는 출력 정보를 나타내는 소리를 출력한다.
센서(100B)는, 이동체(100)의 주행 환경을 취득하는 센서이다. 주행 환경은, 예를 들어 이동체(100)의 관측 정보나, 이동체(100)의 주변 정보이다. 센서(100B)는, 예를 들어 외계 센서나 내계 센서이다.
내계 센서는, 관측 정보를 관측하는 센서이다. 관측 정보는, 예를 들어 이동체(100)의 가속도, 이동체(100)의 속도, 이동체(100)의 각속도를 포함한다.
내계 센서는, 예를 들어 관성 계측 장치(IMU: Inertial Measurement Unit), 가속도 센서, 속도 센서, 로터리 인코더, 등이다. IMU는, 이동체(100)의 3축 가속도 및 3축 각속도를 포함하는 관측 정보를 관측한다.
외계 센서는, 이동체(100)의 주변 정보를 관측한다. 외계 센서는, 이동체(100)에 탑재되어 있어도 되고, 해당 이동체(100)의 외부(예를 들어, 다른 이동체나 외부 장치 등)에 탑재되어 있어도 된다.
주변 정보는, 이동체(100)의 주변 상황을 나타내는 정보이다. 이동체(100)의 주변이란, 해당 이동체(100)로부터 미리 정한 범위 내의 영역이다. 이 범위는, 외계 센서의 관측 가능한 범위이다. 이 범위는, 미리 설정하면 된다.
주변 정보는, 예를 들어 이동체(100)의 주변 촬영 화상 및 거리 정보 등이다. 또한, 주변 정보는, 이동체(100)의 위치 정보를 포함하고 있어도 된다. 촬영 화상은, 촬영에 의해 얻어지는 촬영 화상 데이터이다(이하, 단순히, 촬영 화상이라 칭하는 경우가 있음). 거리 정보는, 이동체(100)로부터 대상까지의 거리를 나타내는 정보이다. 대상은, 외계에 있어서의, 외계 센서에 의해 관측 가능한 개소이다. 위치 정보는, 상대 위치여도 되고, 절대 위치여도 된다.
외계 센서는, 예를 들어 촬영에 의해 촬영 화상을 얻는 촬영 장치, 거리 센서(밀리미터파 레이더, 레이저 센서, 거리 화상 센서), 위치 센서(GNSS(Global Navigation Satellite System), GPS(Global Positioning System), 무선 통신 장치) 등이다.
촬영 화상은, 화소마다 화소값을 규정한 디지털 화상 데이터나, 화소마다 센서(100B)로부터의 거리를 규정한 뎁스 맵 등이다. 레이저 센서는, 예를 들어 수평면에 대해 평행하게 설치된 이차원 LIDAR(Laser Imaging Detection and Ranging) 센서나, 3차원 LIDAR 센서이다.
입력 장치(100C)는, 유저로부터의 각종 지시나 정보 입력을 접수한다. 입력 장치(100C)는, 예를 들어 마우스나 트랙볼 등의 포인팅 디바이스 또는 키보드 등의 입력 디바이스이다. 또한, 입력 장치(100C)는, 디스플레이(100E)와 일체적으로 설치된 터치 패널에 있어서의 입력 기능이어도 된다.
동력 제어부(100G)는, 동력부(100H)를 제어한다. 동력부(100H)는 이동체(100)에 탑재된 구동하는 디바이스이다. 동력부(100H)는 예를 들어 엔진, 모터, 차륜 등이다.
동력부(100H)는 동력 제어부(100G)의 제어에 의해 구동한다. 예를 들어, 동력 제어부(100G)는, 화상 처리 장치(1)로 생성된 출력 정보나, 센서(100B)로부터 얻어진 정보 등에 기초하여, 주변의 상황을 판단하여, 액셀러레이터양, 브레이크양, 조타각 등의 제어를 행한다.
다음에, 이동체(100)의 전기적 구성에 대해 상세하게 설명한다. 도 11은, 이동체(100)의 구성의 일례를 나타내는 블록도이다.
이동체(100)는, 화상 처리 장치(1)와, 출력부(100A)와, 센서(100B)와, 입력 장치(100C)와, 동력 제어부(100G)와, 동력부(100H)를 구비한다. 출력부(100A)는, 상술한 바와 같이, 통신부(100D)와, 디스플레이(100E)와, 스피커(100F)를 포함한다.
화상 처리 장치(1), 출력부(100A), 센서(100B), 입력 장치(100C) 및 동력 제어부(100G)는, 버스(100I)를 통하여 접속되어 있다. 동력부(100H)는, 동력 제어부(100G)에 접속되어 있다.
도 12는, 이동체(100)에 탑재된 화상 처리 장치(1)의 일례를 나타내는 블록도이다. 화상 처리 장치(1)는, I/F(1c), 메모리(1b), 프로세서(1a)를 포함한다. 즉, 출력부(100A), 센서(100B), 입력 장치(100C), 동력 제어부(100G), 화상 처리 장치(1)는, 버스(100I)를 통하여 접속되어 있다.
또한, 출력부(100A)(통신부(100D), 디스플레이(100E), 스피커(100F)), 센서(100B), 입력 장치(100C), 및 동력 제어부(100G) 중 적어도 하나는, 유선 또는 무선으로 화상 처리 장치(1)에 접속하면 된다. 또한, 출력부(100A)(통신부(100D), 디스플레이(100E), 스피커(100F)), 센서(100B), 입력 장치(100C), 및 동력 제어부(100G) 중 적어도 하나와, 화상 처리 장치(1)를 네트워크를 통하여 접속해도 된다.
I/F(1c)는, 다른 시스템과의 네트워크(N/W) 등에 접속되어 있다. 또한, I/F(1c)는, 통신부(100D) 사이의 정보 송수신을 담당한다. I/F(1c)를 통하여, 사람 등의 인식된 대상의 정보, 인식된 대상까지의 거리의 정보가 출력된다.
메모리(1b)는 각종 데이터를 기억한다. 메모리(1b)는, 예를 들어 RAM(Random Access Memory), 플래시 메모리 등의 반도체 메모리 소자, 하드 디스크, 광 디스크 등이다. 또한, 메모리(1b)는, 화상 처리 장치(1)의 외부에 설치해도 된다. ROM은, 프로세서(1a)에 의해 실행되는 프로그램이나 필요한 데이터를 유지한다. RAM은, 프로세서(1a)의 작업 영역으로서 기능한다. 또한, 메모리(1b)는, 이동체(100)의 외부에 설치해도 된다. 예를 들어, 메모리(1b)를, 클라우드 상에 설치된 서버 장치에 배치해도 된다.
또한, 메모리(1b)는, 기억 매체여도 된다. 구체적으로는, 기억 매체는, 프로그램이나 각종 정보를, LAN(Local Area Network)이나 인터넷 등을 통하여 다운로드하여 기억 또는 일시 기억한 것이어도 된다. 또한, 메모리(1b)를, 복수의 기억 매체로 구성해도 된다.
프로세서(1a)에 있어서의 각 처리 기능은, 컴퓨터에 의해 실행 가능한 프로그램의 형태로 메모리(1b)에 기억되어 있다. 프로세서(1a)는, 프로그램을 메모리(1b)로부터 판독, 실행함으로써, 각 프로그램에 대응하는 기능부를 실현하는 프로세서이다.
또한, 각 기능의 각각을 실현하기 위한 독립된 복수의 프로세서를 조합하여 처리 회로(1e)를 구성해도 된다. 이 경우, 각 프로세서가 프로그램을 실행함으로써 각 기능을 실현한다. 또한, 각 처리 기능이 프로그램으로 구성되어, 1개의 처리 회로(1e)가 각 프로그램을 실행하는 경우여도 되고, 전용 회로로서 화상 처리 액셀러레이터(1d)를 설치하고, 특정한 기능이 독립된 프로그램 실행 회로에 실장되는 경우여도 된다.
프로세서(1a)는, 메모리(1b)에 보존된 프로그램을 판독해 실행함으로써 기능을 실현한다. 또한, 메모리(1b)에 프로그램을 보존하는 대신, 프로세서의 회로 내에 프로그램을 직접 내장하도록 구성해도 상관없다. 이 경우, 프로세서는 회로 내에 내장된 프로그램을 판독해 실행함으로써 기능을 실현한다.
이와 같이 구성된 이동체(100)에 있어서, 센서(100B)로 관측된 주변 정보인 촬영 화상을 사용하여, 글로벌 매칭을 사용하여 시차를 산출하여 크로스 체크를 행하는 경우에 있어서도, 상술한 화상 처리 방법을 사용함으로써 비교예와 동등한 정확성을 유지하면서, 처리 레이트를 향상시키고, 또한, 메모리의 사용량을 삭감할 수 있다.
본 명세서에 있어서의 각「회로」는, 실시 형태의 각 기능에 대응하는 개념적인 것이고, 반드시 특정한 하드웨어나 소프트웨어·루틴에 1대1로 대응하지는 않는다. 따라서, 본 명세서에서는, 실시 형태의 각 기능을 갖는 가상적 회로 블록(회로)을 상정하여 설명하였다.
본 발명의 몇가지의 실시 형태를 설명했지만, 이들 실시 형태는, 예로서 제시한 것이며, 발명의 범위를 한정하는 것은 의도하지 않는다. 이들 신규의 실시 형태는, 그밖의 다양한 형태로 실시될 수 있으며, 발명의 요지를 일탈하지 않는 범위에서, 다양한 생략, 치환, 변경을 할 수 있다. 이들 실시 형태나 그 변형은, 발명의 범위와 요지에 포함됨과 함께, 특허 청구 범위에 기재된 발명과 그 균등의 범위에 포함된다.

Claims (17)

  1. 제1 촬상 수단이 피사체를 촬상함으로써 얻어지는 제1 화상, 및, 상기 제1 촬상 수단과는 다른 위치의 제2 촬상 수단이 상기 피사체를 촬상함으로써 얻어지는 제2 화상에 기초하여, 시차를 산출하는 화상 처리 장치이며,
    상기 제1 화상 또는 상기 제2 화상의 어느 하나를 기준 화상, 다른 쪽을 참조 화상으로 설정하고, 또한, 상기 참조 화상에 있어서의 화소의 취득 순서 및 연산 순서를 제1 방향으로 설정하는 제어 회로와,
    상기 참조 화상에 있어서, 상기 제어 회로에 의해 설정된 취득 순서 및 연산 순서로 화소를 취득하면서 산출 가능한 경로를 사용하여, 글로벌 최적화에 의한 비용 최적화 연산을 행하는 비용 최적화 연산 회로와,
    상기 비용 최적화 연산에 의해 얻어진 비용값을 사용하여 각 화소의 시차를 결정하는, 비용 최소 시차 추출 회로와,
    상기 제1 화상을 기준 화상으로 하여 산출되는 제1 시차와, 상기 제2 화상을 기준 화상으로 하여 산출되는 제2 시차를 사용하여 크로스 체크를 행하고, 산출된 시차의 타당성을 화소마다 판정해 출력하는 시차 출력 회로,
    를 구비하고 있고, 상기 제어 회로는, 상기 기준 화상과 상기 참조 화상의 교체를 행함과 동시에, 교체 후의 상기 참조 화상에 있어서의 화소의 취득 순서 및 연산 순서인 제2 방향을, 상기 제1 방향과 역의 방향으로 설정하는 것을 특징으로 하는 화상 처리 장치.
  2. 제1항에 있어서, 상기 비용 최적화 연산은, SGM법에 의한 합성 비용값의 산출에 의해 행하여지는 것을 특징으로 하는 화상 처리 장치.
  3. 제2항에 있어서, 상기 화소의 취득 순서 및 연산 순서는 래스터 스캔이며, 상기 제1 방향은, 화상의 우측 하방으로부터 좌측 상방을 향하는 방향이고, 상기 제2 방향은 화상의 좌측 상방으로부터 우측 하방을 향하는 방향을 특징으로 하는 화상 처리 장치.
  4. 제3항에 있어서, 상기 시차 출력 회로는 상기 제2의 방향을 따른 화소순으로 시차를 재배열하여 출력하는 것을 특징으로 하는 화상 처리 장치.
  5. 제4항에 있어서, 상기 제1 화상이 R 화상이며, 상기 제2 화상이 L 화상이고, 상기 제1 시차를 상기 제2 시차보다도 먼저 산출한 것을 특징으로 하는 화상 처리 장치.
  6. 제1항에 있어서, 상기 화소의 취득 순서는 래스터 스캔이며, 상기 제1 방향은 화상의 우측 하방으로부터 좌측 상방을 향하는 방향이고, 상기 제2 방향은, 화상의 좌측 상방으로부터 우측 하방을 향하는 방향인 것을 특징으로 하는 화상 처리 장치.
  7. 제6항에 있어서, 상기 시차 출력 회로는, 상기 제2의 방향을 따른 화소순으로 시차를 재배열하여 출력하는 것을 특징으로 하는 화상 처리 장치.
  8. 제7항에 있어서, 상기 제1 화상이 R 화상이며, 상기 제2 화상이 L 화상이며, 상기 제1 시차를 상기 제2 시차보다도 먼저 산출하는 것을 특징으로 하는 화상 처리 장치.
  9. 제1항에 있어서, 상기 화소의 연산 순서는 래스터 스캔이며, 상기 제1 방향은 화상의 우측 하방으로부터 좌측 상방을 향하는 방향이며, 상기 제2 방향은, 화상의 좌측 상방으로부터 우측 하방을 향하는 방향인 것을 특징으로 하는 화상 처리 장치.
  10. 제9항에 있어서, 상기 시차 출력 회로는, 상기 제2의 방향을 따른 화소순으로 시차를 재배열하여 출력하는 것을 특징으로 하는 화상 처리 장치.
  11. 제10항에 있어서, 상기 제1 화상이 R 화상이고, 상기 제2 화상이 L 화상이며, 상기 제1 시차를 상기 제2 시차보다도 먼저 산출하는 것을 특징으로 하는 화상 처리 장치.
  12. 제1 촬상 수단이 피사체를 촬상함으로써 얻어지는 제1 화상을 기준 화상, 제2 촬상 수단이 상기 피사체를 촬상함으로써 얻어지는 제2 화상을 참조 화상으로 하며
    상기 참조 화상에 있어서의 화소의 취득 순서 및 연산 순서를 제1 방향으로 설정하고,
    상기 참조 화상인 상기 제2 화상에 있어서, 상기 제1 방향으로 화소를 취득하면서 산출 가능한 경로를 사용하여, 글로벌 최적화에 의한 비용 최적화 연산을 행하여 각 화소의 시차를 결정하고,
    상기 기준 화상과 상기 참조 화상을 교체하여, 상기 제1 화상을 참조 화상, 상기 제2 화상을 기준 화상으로 하고, 동시에, 상기 참조 화상에 있어서의 화소의 취득 순서 및 연산 순서를, 상기 제1 방향과 역의 방향인 제2 방향으로 설정하고,
    상기 참조 화상인 상기 제1 화상에 있어서, 상기 제2 방향으로 화소를 취득하면서 산출 가능한 경로를 사용하여, 글로벌 최적화에 의한 비용 최적화 연산을 행하여 각 화소의 시차를 결정하고,
    상기 제1 화상을 기준 화상으로 하여 산출되는 제1 시차와, 상기 제2 화상을 기준 화상으로 하여 산출되는 제2 시차를 사용하여 크로스 체크를 행하고, 산출된 시차의 타당성을 화소마다 판정해 출력하는 것을 특징으로 하는 화상 처리 방법.
  13. 제12항에 있어서, 상기 비용 최적화 연산은, SGM법에 의한 합성 비용값의 산출에 의해 행해지는 것을 특징으로 하는 화상 처리 방법.
  14. 제13항에 있어서, 상기 화소의 취득 순서 및 연산 순서는 래스터 스캔이며, 상기 제1 방향은, 화상의 우측 하방으로부터 좌측 상방을 향하는 방향이며, 상기 제2 방향은, 화상의 좌측 상방으로부터 우측 하방을 향하는 방향인 것을 특징으로 하는 화상 처리 방법.
  15. 제14항에 있어서, 상기 제1 화상이 R 화상이며, 상기 제2 화상이 L 화상인 것을 특징으로 하는 화상 처리 방법.
  16. 제15항에 있어서, 상기 제2의 방향을 따른 화소순으로 시차를 재배열하여 출력하는 것을 특징으로 하는 화상 처리 방법.
  17. 제1 촬상 수단이 피사체를 촬상함으로써 얻어지는 제1 화상, 및, 상기 제1 촬상 수단과는 다른 위치의 제2 촬상 수단이 상기 피사체를 촬상함으로써 얻어지는 제2 화상에 기초하여, 시차를 산출하는 화상 처리 장치를 갖고,
    상기 화상 처리 장치는,
    상기 제1 화상 또는 상기 제2 화상의 어느 하나를 기준 화상, 다른 쪽을 참조 화상으로 설정하고, 또한, 상기 참조 화상에 있어서의 화소의 취득 순서 및 연산 순서를 제1 방향으로 설정하는 제어 회로와,
    상기 참조 화상에 있어서, 상기 제어 회로에 의해 설정된 취득 순서 및 연산 순서로 화소를 취득하면서 산출 가능한 경로를 사용하여, 글로벌 최적화에 의한 비용 최적화 연산을 행하는 비용 최적화 연산 회로와,
    상기 비용 최적화 연산에 의해 얻어진 비용값을 사용하여 각 화소의 시차를 결정하는, 비용 최소 시차 추출 회로와,
    상기 제1 화상을 기준 화상으로 하여 산출되는 제1 시차와, 상기 제2 화상을 기준 화상으로 하여 산출되는 제2 시차를 사용하여 크로스 체크를 행하고, 산출된 시차의 타당성을 화소마다 판정해 출력하는 시차 출력 회로,
    를 구비하고 있고, 상기 제어 회로는, 상기 기준 화상과 상기 참조 화상의 교체를 행함과 동시에, 교체 후의 상기 참조 화상에 있어서의 화소의 취득 순서 및 연산 순서인 제2 방향을, 상기 제1 방향과 역의 방향으로 설정하는 것을 특징으로 하는 운전 지원 시스템.
KR1020180097960A 2018-03-12 2018-08-22 화상 처리 장치, 화상 처리 방법 및 운전 지원 시스템 KR102091648B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPJP-P-2018-044568 2018-03-12
JP2018044568A JP6901424B2 (ja) 2018-03-12 2018-03-12 画像処理装置、及び、画像処理方法

Publications (2)

Publication Number Publication Date
KR20190107552A true KR20190107552A (ko) 2019-09-20
KR102091648B1 KR102091648B1 (ko) 2020-03-20

Family

ID=63682969

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180097960A KR102091648B1 (ko) 2018-03-12 2018-08-22 화상 처리 장치, 화상 처리 방법 및 운전 지원 시스템

Country Status (5)

Country Link
US (1) US20190279384A1 (ko)
EP (1) EP3540693A1 (ko)
JP (1) JP6901424B2 (ko)
KR (1) KR102091648B1 (ko)
CN (1) CN110264438A (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6885896B2 (ja) * 2017-04-10 2021-06-16 富士フイルム株式会社 自動レイアウト装置および自動レイアウト方法並びに自動レイアウトプログラム
JP7408337B2 (ja) * 2019-10-10 2024-01-05 キヤノン株式会社 画像処理方法、および画像処理装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110050858A1 (en) * 2009-09-01 2011-03-03 Chien-Yue Chen 3d image capture device and symmetric prism array for the same
JP2016001841A (ja) * 2014-06-12 2016-01-07 トヨタ自動車株式会社 視差画像生成装置、視差画像生成方法及び画像

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102008046505B4 (de) * 2008-09-09 2023-06-29 Mercedes-Benz Group AG Verfahren zur Bildverarbeitung von Stereobildern
CN103366354B (zh) * 2012-03-27 2016-09-07 富士通株式会社 用于立体匹配的方法和***
JP6253450B2 (ja) * 2014-02-28 2017-12-27 オリンパス株式会社 画像処理装置、画像処理方法及びプログラム
US10142613B2 (en) * 2015-09-03 2018-11-27 Kabushiki Kaisha Toshiba Image processing apparatus, image processing system, and image processing method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110050858A1 (en) * 2009-09-01 2011-03-03 Chien-Yue Chen 3d image capture device and symmetric prism array for the same
JP2016001841A (ja) * 2014-06-12 2016-01-07 トヨタ自動車株式会社 視差画像生成装置、視差画像生成方法及び画像

Also Published As

Publication number Publication date
US20190279384A1 (en) 2019-09-12
EP3540693A1 (en) 2019-09-18
JP2019159708A (ja) 2019-09-19
KR102091648B1 (ko) 2020-03-20
CN110264438A (zh) 2019-09-20
JP6901424B2 (ja) 2021-07-14

Similar Documents

Publication Publication Date Title
US11915099B2 (en) Information processing method, information processing apparatus, and recording medium for selecting sensing data serving as learning data
EP3517997B1 (en) Method and system for detecting obstacles by autonomous vehicles in real-time
US10659677B2 (en) Camera parameter set calculation apparatus, camera parameter set calculation method, and recording medium
CN111436216B (zh) 用于彩色点云生成的方法和***
JP7182895B2 (ja) 情報処理装置、プログラム、および情報処理方法
US10509983B2 (en) Operating device, operating system, operating method, and program therefor
JP7005458B2 (ja) 画像処理装置、及び、画像処理プログラム、並びに、運転支援システム
CN112074875B (zh) 构造3d特征图的组优化深度信息方法和***
US20170359561A1 (en) Disparity mapping for an autonomous vehicle
KR102117313B1 (ko) 그래디언트 추정 장치, 그래디언트 추정 방법, 컴퓨터 프로그램 및 제어 시스템
CN112204614B (zh) 来自非固定相机的视频中的运动分割
JP2018189463A (ja) 車両位置推定装置及びプログラム
KR102091648B1 (ko) 화상 처리 장치, 화상 처리 방법 및 운전 지원 시스템
JP2019533875A (ja) 道路の合成トップビュー画像を生成するための方法およびシステム
JP6543935B2 (ja) 視差値導出装置、機器制御システム、移動体、ロボット、視差値導出方法、およびプログラム
US11741625B2 (en) Systems and methods for thermal imaging
US20210088648A1 (en) An Environment Model Using Cross-Sensor Feature Point Referencing
CN112528719A (zh) 推定装置、推定方法以及存储介质
US11532100B2 (en) Method for environmental acquisition, data processing unit
CN112639864B (zh) 用于测距的方法和装置
JP2005267388A (ja) 画像処理装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant