KR20210025942A - 종단간 컨볼루셔널 뉴럴 네트워크를 이용한 스테레오 매칭 방법 - Google Patents

종단간 컨볼루셔널 뉴럴 네트워크를 이용한 스테레오 매칭 방법 Download PDF

Info

Publication number
KR20210025942A
KR20210025942A KR1020190106008A KR20190106008A KR20210025942A KR 20210025942 A KR20210025942 A KR 20210025942A KR 1020190106008 A KR1020190106008 A KR 1020190106008A KR 20190106008 A KR20190106008 A KR 20190106008A KR 20210025942 A KR20210025942 A KR 20210025942A
Authority
KR
South Korea
Prior art keywords
cnn
image
stereo matching
stereo
atlow
Prior art date
Application number
KR1020190106008A
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 성균관대학교산학협력단
Priority to KR1020190106008A priority Critical patent/KR20210025942A/ko
Priority to US17/005,632 priority patent/US11348270B2/en
Publication of KR20210025942A publication Critical patent/KR20210025942A/ko

Links

Images

Classifications

    • 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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/002Image coding using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/751Comparing pixel values or logical combinations thereof, or feature values having positional relevance, e.g. template matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Molecular Biology (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Image Analysis (AREA)

Abstract

본 발명에서는 스테레오 이미지로부터 디스패리티 맵을 생성하기 위한 스테레오 매칭 방법이 개시된다. 구체적으로, 스테레오 매칭 방법에 있어서, 좌측 이미지 및 우측 이미지에 대하여 각각 제1 컨볼루셔널 뉴럴 네트워크(CNN: Convolutional Neural Network) 및 제2 CNN을 적용함으로써 코스트 볼륨을 획득하는 단계, 여기서 상기 코스트 볼륨은 상기 좌측 이미지 및 상기 우측 이미지로부터 각각 추출된 특징 맵에 기초하여 결정됨; 상기 코스트 볼륨에 대하여 제3 CNN을 적용함으로써 정규화를 수행하는 단계; 상기 정규화된 코스트 볼륨을 업샘플링하는 단계; 및 상기 업샘플링된 코스트 볼륨에 회귀 분석을 적용함으로써 디스패리티 맵을 획득하는 단계를 포함할 수 있다.

Description

종단간 컨볼루셔널 뉴럴 네트워크를 이용한 스테레오 매칭 방법{METHOD FOR STEREO MATCHING USIING END-TO-END CONVOLUTIONAL NEURAL NETWORK}
본 발명은 스테레오 매칭(stereo matching) 기술에 관한 것으로서, 보다 상세하게 종단간 컨볼루셔널 뉴럴 네트워크(end-to-end convolutional neural network)를 이용하여 스테레오 영상(stereo image)으로부터 디스패리티 맵(disparity map)을 획득하는 기술에 관한 것이다.
스테레오 매칭 기술은 스테레오 이미지로부터 3차원 이미지를 얻기 위해 이용되는 기술로서, 동일 피사체에 대하여 동일선상의 서로 다른 촬영 위치에서 촬영된 다수의 2차원 이미지로부터 3차원 이미지를 얻기 위해 이용된다. 스테레오 이미지는 이처럼 피사체에 대하여 서로 다른 촬영 위치에서 촬영된 다수의 2차원 이미지를 의미한다.
일반적으로 2차원 이미지로부터 3차원 이미지를 생성하기 위해서는 2차원 이미지의 수직, 수평의 위치 정보인 x, y 좌표에 더하여 깊이 정보인 z 좌표를 필요로 한다. z 좌표를 구하기 위해서는 스테레오 이미지의 시차 정보를 필요로 하는데, 스테레오 매칭은 이러한 시차를 얻기 위해 사용되는 기술이다. 예를 들어 스테레오 이미지가 두 대의 좌, 우 카메라에 의해 촬영된 좌, 우 이미지라면, 좌, 우 이미지 중에 하나를 기준 이미지로, 다른 하나를 탐색 이미지로 정한다. 이러한 경우에 공간상의 동일한 한 점에 대한 기준 이미지와 탐색 이미지 간의 거리, 즉 좌표의 차이를 시차라고 하는데, 스테레오 매칭 기술을 이용하여 시차를 얻는다.
이미지의 전체 화소들에 대하여 위와 같이 얻어지는 기준 이미지와 탐색 이미지 간의 시차들을 이용하여 각 화소들에 대한 깊이 정보를 얻어 3차원 좌표들로 표현되는 디스패리티 맵을 생성한다. 통상적으로 기준 이미지와 탐색 이미지간의 시차를 구하기 위해 사용되는 스테레오 매칭 기술의 일 예를 개략적으로 설명하면 다음과 같다.
먼저, 기준 이미지의 기준 화소를 중심으로 특정 크기의 윈도우(window)를 설정하며, 탐색 이미지에 대해서도 탐색 화소들을 중심으로 같은 크기의 윈도우를 설정한다. 기준 화소는 기준 이미지의 화소들 중에 탐색 이미지에서 대응하는 점, 즉 대응점을 현재 탐색해야 할 화소를 의미한다. 탐색 화소는 탐색 이미지의 화소들 중에 기준 화소에 대한 대응점인지를 현재 확인해야할 화소를 의미한다. 윈도우는 중심 화소와 그를 둘러싼 주변 화소들로 이루어지는 매트릭스 형태이다.
위와 같이 설정된 기준 화소 윈도우 내의 화소들과 각각의 탐색 화소 윈도우 내의 화소들 간의 유사도를 계산하고, 탐색 화소 윈도우들 중에 기준 화소 윈도우와 가장 유사도가 큰 값을 갖는 탐색 화소 윈도우의 탐색 화소를 대응점에 해당하는 대응 화소라고 규정한다. 그리고 기준 화소와 대응 화소 간의 거리를 시차로서 구한다.
기준 화소 윈도우 내의 화소들과 각각의 탐색 화소 윈도우 내의 화소들 간의 유사도를 계산하는 방법의 한 가지로서, 기준 화소 윈도우 내의 화소들의 평균값과 각각의 탐색 화소 윈도우 내의 화소들의 평균값을 구하여 비교하는 방법이 사용되어 왔다.
상술한 바와 같이, 기준 이미지와 탐색 이미지 간의 시차를 얻기 위해, 기준 화소 윈도우 내의 화소들의 평균값과 각각의 탐색 화소 윈도우 내의 화소들의 평균값을 구하여 비교함에 따라 메모리 사용량이 커지게 될 뿐만 아니라 오랜 처리 시간이 소요된다. 즉, 윈도우 내에 있는 모든 화소들에 대한 평균값을 구하여 비교해야 하기 때문에, 윈도우 내에 있는 모든 화소값들과 그의 평균값을 저장해야만 하므로 메모리 사용량이 커지게 되며, 처리시간도 많이 소요된다. 이뿐만 아니라 이미지 전체의 화소들에 각각에 관하여 모두 대응 화소를 탐색하여야 하기 때문에 메모리 사용량과 처리 시간이 비약적으로 커지게 된다.
또한, 종래의 스테레오 매칭 기술에 따르면, 별도의 전처리 및 후처리 과정이 필요하며, 와이드 컨텍스트(wide context) 정보를 탐색할 수 없다는 문제가 발생한다.
본 발명의 목적은, 이러한 문제를 해결하기 위하여 새로운 개념의 네트워크를 이용하는 스테레오 매칭 기술을 제안한다.
본 발명에서 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 발명의 일 양상은, 스테레오 이미지로부터 디스패리티 맵을 생성하기 위한 스테레오 매칭 방법에 있어서, 좌측 이미지 및 우측 이미지에 대하여 각각 제1 컨볼루셔널 뉴럴 네트워크(CNN: Convolutional Neural Network) 및 제2 CNN을 적용함으로써 코스트 볼륨을 획득하는 단계, 여기서 상기 코스트 볼륨은 상기 좌측 이미지 및 상기 우측 이미지로부터 각각 추출된 특징 맵에 기초하여 결정됨; 상기 코스트 볼륨에 대하여 제3 CNN을 적용함으로써 정규화를 수행하는 단계; 상기 정규화된 코스트 볼륨을 업샘플링하는 단계; 및 상기 업샘플링된 코스트 볼륨에 회귀 분석을 적용함으로써 디스패리티 맵을 획득하는 단계를 포함할 수 있다.
바람직하게, 상기 제1 CNN 및 상기 제2 CNN은 확장된 컨볼루셔널 레이어를 포함하는 앳로우스(atrous) CNN 레이어을 포함할 수 있다.
바람직하게, 상기 앳로우스 CNN 레이어는 앳로우스 값이 서로 다른 복수의 컨볼루셔널 레이어를 포함하고, 상기 앳로우스 값이 서로 다른 복수의 컨볼루셔널 레이어는 이전 CNN 레이어에 의해 출력된 특징 맵에 순차적으로 적용될 수 있다.
바람직하게, 상기 앳로우스 값이 서로 다른 복수의 컨볼루셔널 레이어는 상기 앳로우스 값에 따라 서로 다른 크기의 영역에 적용될 수 있다.
바람직하게, 상기 제1 CNN 및 상기 제2 CNN은 각각의 입력 이미지에 적용되는 가중치를 공유할 수 있다.
바람직하게, 상기 제3 CNN은 3D 인코더-디코더를 이용하는 CNN으로 구성될 수 있다.
바람직하게, 디스패리티 맵에 기초하여 상기 스테레오 이미지에 포함된 객체의 깊이 정보를 결정하는 단계를 더 포함할 수 있다.
본 발명의 다른 일 양상은, 스테레오 매칭 장치를 제어하는 프로세서; 상기 프로세서와 결합되고, 스테레오 이미지를 획득하는 센서; 및 상기 프로세서와 결합되고, 데이터를 저장하는 메모리를 포함하되, 상기 프로세서는, 좌측 이미지 및 우측 이미지에 대하여 각각 제1 컨볼루셔널 뉴럴 네트워크(CNN: Convolutional Neural Network) 및 제2 CNN을 적용함으로써 코스트 볼륨을 획득하고, 여기서 상기 코스트 볼륨은 상기 좌측 이미지 및 상기 우측 이미지로부터 각각 추출된 특징 맵에 기초하여 결정됨, 상기 코스트 볼륨에 대하여 제3 CNN을 적용함으로써 정규화를 수행하고, 상기 정규화된 코스트 볼륨을 업샘플링하고, 그리고, 상기 업샘플링된 코스트 볼륨에 회귀 분석을 적용함으로써 디스패리티 맵을 획득할 수 있다.
본 발명의 실시예에 따르면, 전처리 및 후처리 과정이 불필요하며, 기존 기술과 달리 와이드 컨텍스트 정보를 탐색할 수 있다. 즉, 로컬 영역만 연산하는 것과 달리 넓은 영역에서 연산한 상위 레벨 표현(representation)을 유도할 수 있다.
또한, 본 발명의 실시예에 따르면, 기존의 컨볼루셔널 뉴럴 네트워크(CNN: Convolutional Neural Network)과 달리 대상 및 그 대상의 하위 영역 간의 관계를 학습할 수 있다.
또한, 본 발명의 실시예에 따르면, 제안하는 네트워크를 적용함으로써 다운 샘플링된 특징 정보(feature information)를 획득할 수 있다.
본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 발명에 관한 이해를 돕기 위해 상세한 설명의 일부로 포함되는, 첨부 도면은 본 발명에 대한 실시예를 제공하고, 상세한 설명과 함께 본 발명의 기술적 특징을 설명한다.
도 1은 본 발명의 일 실시예에 따른 스테레오 매칭 장치의 동작을 설명하기 위한 도면이다.
도 2는 본 발명의 일 실시예에 따른 스테레오 매칭 방법의 동작을 도시한 흐름도이다.
도 3은 본 발명이 적용되는 실시예에 따른 스테레오 이미지로부터 디스패리티 맵을 획득하는 방법을 예시하는 도면이다.
도 4는 본 발명이 적용되는 실시예에 따른 앳로우스 CNN의 구조를 예시하는 도면이다.
도 5는 본 발명이 적용되는 일 실시예에 따른 앳로우스 CNN의 결과 이미지를 예시하는 도면이다.
도 6은 본 발명이 적용되는 일 실시예에 따른 3D 인코더-디코더 CNN 구조를 예시하는 도면이다.
도 7은 본 발명이 적용되는 실시예에 따른 앳로우스 CNN의 적용 영역의 일 예를 도시한다.
도 8은 본 발명의 실시예에 따른 스테레오 이미지로부터 디스패리티 맵을 생성하기 위한 스테레오 매칭 방법을 나타내는 흐름도이다.
도 9는 본 발명의 실시예에 따른 스테레오 매칭 장치를 나타낸다.
이하, 본 발명에 따른 바람직한 실시 형태를 첨부된 도면을 참조하여 상세하게 설명한다. 첨부된 도면과 함께 이하에 개시될 상세한 설명은 본 발명의 예시적인 실시형태를 설명하고자 하는 것이며, 본 발명이 실시될 수 있는 유일한 실시형태를 나타내고자 하는 것이 아니다. 이하의 상세한 설명은 본 발명의 완전한 이해를 제공하기 위해서 구체적 세부사항을 포함한다. 그러나, 당업자는 본 발명이 이러한 구체적 세부사항 없이도 실시될 수 있음을 안다.
몇몇 경우, 본 발명의 개념이 모호해지는 것을 피하기 위하여 공지의 구조 및 장치는 생략되거나, 각 구조 및 장치의 핵심기능을 중심으로 한 블록도 형식으로 도시될 수 있다.
아울러, 본 발명에서 사용되는 용어는 가능한 한 현재 널리 사용되는 일반적인 용어를 선택하였으나, 특정한 경우는 출원인이 임의로 선정한 용어를 사용하여 설명한다. 그러한 경우에는 해당 부분의 상세 설명에서 그 의미를 명확히 기재하므로, 본 발명의 설명에서 사용된 용어의 명칭만으로 단순 해석되어서는 안 될 것이며 그 해당 용어의 의미까지 파악하여 해석되어야 함을 밝혀두고자 한다.
이하의 설명에서 사용되는 특정 용어들은 본 발명의 이해를 돕기 위해서 제공된 것이며, 이러한 특정 용어의 사용은 본 발명의 기술적 사상을 벗어나지 않는 범위에서 다른 형태로 변경될 수 있다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다.
본 명세서 전체에서, 어떤 부재가 다른 부재 “상에” 위치하고 있다고 할 때, 이는 어떤 부재가 다른 부재에 접해 있는 경우뿐 아니라 두 부재 사이에 또 다른 부재가 존재하는 경우도 포함한다.
본 명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함" 한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다. 본원 명세서 전체에서 사용되는 정도의 용어 "~(하는) 단계" 또는 "~의 단계"는 "~ 를 위한 단계"를 의미하지 않는다.
도 1은 본 발명의 일 실시예에 따른 스테레오 매칭 장치의 동작을 설명하기 위한 도면이다.
도 1을 참조하면, 일 실시예에 따른 스테레오 매칭 장치(100)는 스테레오 영상(120)(stereo image)을 수신하고, 스테레오 영상(120)에 기반하여 깊이 정보를 결정한다. 스테레오 영상(120)은 두 대 이상의 카메라를 통해 획득된 서로 다른 시점 영상들(예를 들어, 좌측 영상 및 우측 영상)을 포함한다. 시점 영상들은 동일 시간에 서로 다른 위치(또는 시점(viewpoint))에서 촬영된 영상들이다. 스테레오 영상(120)은 예를 들어, 스테레오 카메라에 의해 획득될 수 있다.
다른 실시예에 따르면, 스테레오 매칭 장치(100)는 세 개 이상의 시점 영상들을 포함하는 다시점 영상(multiview image)에 기초하여 깊이 정보를 결정할 수도 있다. 다만, 이하에서는 설명의 편의를 위해 두 개의 시점 영상들로 구성된 스테레오 영상(120)에 기초하여 실시예들을 설명하도록 한다.
스테레오 매칭 장치(100)는 스테레오 영상(120)에서 서로 대응하는 픽셀 쌍을 찾고, 대응 픽셀 쌍 사이의 위치 차이인 디스패리티(disparity)에 기초하여 객체와 배경의 깊이 정보를 결정할 수 있다. 깊이 정보는 3D 영상을 렌더링하거나 또는 카메라의 시점에서 객체나 배경까지의 거리를 추정하는데 이용될 수 있다.
예를 들어, 차량(vehicle)의 네비게이션 시스템에서 스테레오 카메라를 이용하여 앞에 존재하는 차량 또는 장애물까지의 거리를 추정하는데 깊이 정보가 이용될 수 있다. 다른 예로, 증강 현실(augmented reality; AR) 영상에서는 실존하는 객체와 가상의 객체가 혼합되어 표현될 수 있는데, 실존하는 객체의 깊이 정보를 이용하여 가상의 객체를 표현할 영상 내 위치를 결정할 수 있다. 스테레오 매칭 장치(100)는 하나 이상의 소프트웨어 모듈, 하드웨어 모듈, 또는 이들의 다양한 조합으로 구현될 수 있다.
스테레오 매칭 장치(100)는 스테레오 매칭을 통하여 깊이 정보를 결정한다. 스테레오 매칭은 스테레오 영상(120)에 포함된 각 픽셀들의 특징을 추출하는 과정과 스테레오 영상(120) 간에 추출된 특징을 비교하여 각 픽셀의 대응 픽셀을 찾고, 디스패리티를 예측하는 과정을 포함한다. 예시적으로, 스테레오 매칭 장치(100)는 우측 영상에서 좌측 영상에 포함된 픽셀의 대응 픽셀을 검출하거나 또는 좌측 영상에서 우측 영상에 포함된 픽셀의 대응 픽셀을 검출할 수 있다. 스테레오 매칭 장치(100)는 대응 픽셀을 찾기 위해 픽셀의 휘도(intensity) 정보, 컬러 정보, 그레디언트(gradient) 정보, 또는 이들의 어느 조합을 이용할 수 있다. 스테레오 매칭 장치(100)는 검출된 대응 픽셀들 간의 위치 차이에 기초하여 디스패리티를 결정한다. 본 발명에서, 좌측 영상 및 우측 영상 중 어느 하나는 제1 시점 영상으로 지칭될 수 있고, 이 때 나머지 하나는 제2 시점 영상으로 지칭될 수 있다.
스테레오 매칭 장치(100)는 뉴럴 네트워크 모델(neural network model) 기반의 특징 추출기(110)를 이용하여 스테레오 매칭을 수행한다. 뉴럴 네트워크 모델로서 여러 개의 레이어들(layers)을 포함하는 깊은 뉴럴 네트워크 모델(deep neural network model)이 이용될 수 있다. 뉴럴 네트워크 모델 기반의 특징 추출기(110)를 이용하는 것에 의해 영상의 특징을 정확하고 빠르게 추정할 수 있다. 뉴럴 네트워크 모델은 생물학의 신경망의 특징을 모방한 통계학적 모델이다. 뉴럴 네트워크 모델은 입력된 정보로부터 바람직한 결과를 출력하는 문제 해결 능력을 가지는데, 이러한 문제 해결 능력을 기르기 위해 시냅스의 결합으로 네트워크를 형성한 인공 뉴런(또는 노드)들을 트레이닝(training)(또는 학습)하는 과정이 수행된다. 트레이닝 과정을 통해 뉴럴 네트워크 모델을 형성하는 파라미터들의 값이 보다 바람직하게 수정될 수 있다.
스테레오 매칭 장치(100)는 뉴럴 네트워크 모델 기반의 특징 추출기(110)를 이용하여 각 시점 영상 속 픽셀들의 특징(또는 특징 벡터)을 추출한 다음, 특징 거리 계산을 통해 대응 픽셀을 결정하는데 이용되는 픽셀 간 유사도를 결정할 수 있다. 스테레오 매칭 장치(100)는 뉴럴 네트워크 모델을 이용함으로써 시점 영상의 특징을 보다 정확하고 빠르게 추출하고, 추출된 특징 간의 유사도는 계산 복잡도가 상대적으로 낮은 특징 거리 계산을 이용하여 결정함으로써, 높은 정확성은 유지하면서 계산 복잡도를 줄일 수 있다. 이에 따라, 스테레오 매칭이 정확하고 빠르게 수행될 수 있다.
도 2는 본 발명의 일 실시예에 따른 스테레오 매칭 방법의 동작을 도시한 흐름도이다.
본 발명의 실시예에서, 제안하는 스테레오 매칭 방법은 앞서 설명한 도 1의 스테레오 매칭 장치에 의해 수행될 수 있다. 도 2를 참조하면, 단계(201)에서 스테레오 매칭 장치는 뉴럴 네트워크 모델 기반의 특징 추출기를 이용하여 서로 다른 시점 영상들에 대한 특징 맵(feature map)들을 획득한다. 예를 들어, 스테레오 매칭 장치는 특징 추출기를 이용하여 제1 시점 영상에 포함된 픽셀들의 제1 특징 벡터 및 제2 시점 영상에 포함된 픽셀들의 제2 특징 벡터를 추출하고, 제1 시점 영상 및 제2 시점 영상 각각에 대한 제1 특징 맵 및 제2 특징 맵을 획득할 수 있다. 제1 특징 맵은 제1 시점 영상에 포함된 픽셀들의 제1 특징 벡터에 대한 정보를 포함하고, 제2 특징 맵은 제2 시점 영상에 포함된 픽셀들의 제2 특징 벡터에 대한 정보를 포함한다.
일 실시예에서, 스테레오 매칭 장치는 영상 단위로 특징 맵을 획득할 수 있다. 특징 추출기에는 제1 시점 영상의 영상 정보가 입력되고, 특징 추출기는 입력된 영상 정보에 기초하여 제1 특징 맵을 형성하는 특징 벡터들을 결정할 수 있다. 제1 시점 영상의 영상 정보는 예를 들어, 제1 시점 영상에 포함된 픽셀들의 휘도 정보, 컬러 정보, 그레디언트 정보, 또는 이들의 어느 조합과 같은 픽셀 정보일 수 있다. 특징 추출기는 제1 시점 영상의 영상 정보가 입력되면, 제1 시점 영상의 각 픽셀에 대응하는 특징 벡터를 결정한다. 예를 들어, 특징 추출기는 제1 시점 영상의 기준 픽셀을 중심으로 하는 일 영역(예를 들어, 패치 영역)에 포함된 픽셀들의 픽셀 정보에 기초하여 기준 픽셀에 대응하는 특징 벡터를 결정할 수 있다. 특징 추출기는 이러한 과정을 다른 픽셀들에도 그대로 수행하여 제1 시점 영상에 포함된 각 픽셀에 대응하는 특징 벡터를 결정할 수 있다. 위 특징 추출기가 제1 특징 맵을 형성하는 특징 벡터들을 결정하는 과정과 유사하게, 특징 추출기에는 제2 시점 영상의 영상 정보가 입력되고, 특징 추출기는 입력된 영상 정보에 기초하여 제2 특징 맵을 형성하는 특징 벡터들을 결정할 수 있다.
다른 실시예에서, 스테레오 매칭 장치는 패치(patch) 영역들에 기반하여 특징 맵을 획득할 수 있다. 패치 영역은 예를 들어, 8X8 픽셀 블록과 같은 복수의 픽셀들을 포함하는 픽셀 영역을 나타낸다. 스테레오 매칭 장치는 제1 시점 영상의 패치 영역들에 기반하여 제1 특징 맵을 획득하고, 제2 시점 영상의 패치 영역들에 기반하여 제2 특징 맵을 획득할 수 있다. 예를 들어, 특징 추출기에는 제1 시점 영상의 기준 픽셀(reference pixel)을 중심으로 하는 패치 영역의 정보가 입력될 수 있고, 특징 추출기는 입력된 패치 영역의 정보에 기초하여 기준 픽셀의 특징 벡터를 결정한다. 이 때, 특징 추출기에는 패치 영역에 포함된 픽셀들의 휘도 정보, 컬러 정보, 그레디언트 정보, 또는 이들의 어느 조합이 입력될 수 있다. 기준 픽셀의 특징이 주변 픽셀들을 고려하여 결정되므로, 기준 픽셀에 대해 결정된 특징이 보다 정확한 값을 가질 확률이 높아질 수 있다. 이와 유사하게, 특징 추출기에는 제2 시점 영상의 후보 픽셀을 중심으로 하는 패치 영역의 정보가 입력될 수 있고, 특징 추출기는 입력된 패치 영역의 정보에 기초하여 후보 픽셀의 특징 벡터를 결정한다. 이 때, 특징 추출기에는 패치 영역에 포함된 픽셀들의 휘도 정보, 컬러 정보, 그레디언트 정보, 또는 이들의 어느 조합이 입력될 수 있다. 후보 픽셀은 제2 시점 영상에서 제1 시점 영상의 기준 픽셀에 대응하는 픽셀을 결정하는데 있어, 비교 대상이 되는 제2 시점 영상의 픽셀이다. 일 실시예에서, 후보 픽셀은 제2 시점 영상에서 제1 시점 영상의 기준 픽셀에 대응되는 지점을 포함하는 라인(line) 상에 위치하는 픽셀일 수 있다.
단계(202) 및 단계(203)에서, 스테레오 매칭 장치는 특징 맵들을 이용하여 시점 영상들 사이에서 서로 대응되는 픽셀 쌍을 결정한다. 스테레오 매칭 장치는 대응되는 픽셀 쌍을 결정하기 위해 특징 벡터들 간의 유사도를 이용하는데, 이 때 픽셀들 간의 매칭 코스트(matching cost)이 유사도로서 이용될 수 있다. 스테레오 매칭 장치는 후보 픽셀들 중에서 최적의 매칭 코스트를 가지는 픽셀을 기준 픽셀의 대응 픽셀로 결정할 수 있다.
먼저, 단계(202)에서, 스테레오 매칭 장치는 제1 시점 영상의 제1 특징 맵 및 제2 시점 영상의 제2 특징 맵을 이용하여 제1 시점 영상의 기준 픽셀과 제2 시점 영상의 후보 픽셀들 간의 매칭 코스트들을 결정한다. 스테레오 매칭 장치는 기준 픽셀의 특징 벡터와 후보 픽셀들 각각의 특징 벡터 간의 차이(또는 벡터 거리)를 계산하고, 계산된 차이에 기초하여 매칭 코스트를 결정할 수 있다. 예시적으로, 스테레오 매칭 장치는 기준 픽셀의 특징 벡터와 후보 픽셀의 특징 벡터 간의 차이로서 특징 벡터들 간의 유클리디언 거리(Euclidean distance)를 계산하고, 계산된 유클리디언 거리에 기초하여 매칭 코스트가 결정될 수 있다. 이 때, 스테레오 매칭 장치는 계산된 유클리디언 거리를 정규화(normalization)하거나 유클리디언 거리에 가중치를(weight) 적용할 수 있다.
일 실시예에서, 매칭 코스트는 유클리디언 거리의 값에 비례하는 특징을 가질 수 있고, 큰 값의 매칭 코스트는 비교 대상인 두 픽셀들의 유사도가 낮다는 것을 의미한다. 반대로, 작은 값의 매칭 코스트는 비교 대상인 두 픽셀들의 유사도가 높다는 것을 의미한다.
다른 실시예에 따르면, 스테레오 매칭 장치는 기준 픽셀과 후보 픽셀 간의 매칭 코스트가 결정된 이후에 매칭 코스트 최적화(matching cost optimization) 또는 매칭 코스트 종합(matching cost aggregation)을 수행할 수 있다.
예를 들어, 스테레오 매칭 장치는 기준 픽셀과 후보 픽셀 간의 초기 매칭 코스트를 결정하고, 기준 픽셀에 인접한 다른 기준 픽셀의 매칭 코스트 정보에 기초하여 초기 매칭 코스트를 조정할 수 있다. 이러한 과정을 통해 매칭 코스트의 정확도를 높이고, 잘못된 정보에 의한 영향을 줄일 수 있다.
단계(203)에서, 스테레오 매칭 장치는 결정된 매칭 코스트들에 기초하여 제1 시점 영상과 제2 시점 영상 사이에서 대응 픽셀 쌍을 결정한다. 스테레오 매칭 장치는 제2 시점 영상의 후보 픽셀들 중에서 최적의 매칭 코스트를 가지는 후보 픽셀을 기준 픽셀의 대응 픽셀로 결정한다. 예를 들어, 스테레오 매칭 장치는 후보 픽셀들 중 가장 작은 값의 매칭 코스트를 가지는 후보 픽셀을 기준 픽셀의 대응 픽셀로 결정할 수 있다.
위에 설명된 단계(202)과 단계(203)를 제1 시점 영상에 포함된 모든 패치 영역들에 대해 수행하면, 제1 시점 영상과 제2 시점 영상 사이에서 서로 대응되는 픽셀 쌍들이 결정될 수 있다.
단계(204)에서, 스테레오 매칭 장치는 대응 픽셀 쌍 간의 디스패리티에 기초하여 깊이 정보를 결정한다. 일 실시예에서, 스테레오 매칭 장치는 기준 픽셀과 기준 픽셀에 대응하는 대응 픽셀 간의 디스패리티에 기초하여 깊이 정보를 결정하고, 깊이 정보에 기반하여 깊이 맵을 생성할 수 있다. 이 때, 제1 시점 영상에 포함된 기준 픽셀들과 제2 시점 영상의 대응 픽셀들 간의 디스패리티 정보를 포함하는 디스패리티 맵이 이용될 수도 있다.
물체의 컨텍스트 정보는 대응 추정(correspondence estimation)를 위해 필요하다. 와이드 컨텍스트(Wide context) 정보를 위한 특징 정보를 학습하기 위해서는, 예컨대, 5x5 또는 7x7과 같은 큰 사이즈의 커널 크기를 사용하여 CNN을 설계할 필요가 있다. 그러나, 종래의 스테레오 매칭 기술은 네트워크에서 더 많은 수의 매개 변수를 필요로 하므로, 매우 높은 계산 비용이 발생하는 문제가 있다.
따라서, 이러한 문제점을 해결하기 위해 다른 확장 수준들을 갖는 CNN인 앳로우스(atrous) CNN을 적용하여 스테레오 매칭을 수행하는 방법을 제안한다.
또한, 본 발명은, 앳로우스(Atrous) 컨볼루셔널 뉴럴 네트워크(CNN: Convolutional Neural Network)를 기반으로 스레레오 영상으로부터 특징 정보를 추출하는 네트워크를 설계하는 방법을 제안한다.
또한, 본 발명은, 앳로우스 값이 서로 다른 여러 컨볼루셔널 레이어를 이용하여 특징 맵을 추출하고 이를 융합함으로써, 와이드 컨텍스트 정보를 탐색하는 방법을 제안한다.
본 발명은, 코스트 볼륨 크기 문제를 해결하기 위하여 스택트(Stacked) 3D 인코더-디코더(encoder-decoder)를 적용하는 방법을 제안한다.
본 발명의 실시예에 따르면, 와이드 컨텍스트 정보를 효과적으로 획득할 수 있으며, CNN이 적용되는 환경에서 공간 해상도를 유지할 수 있다.
또한, 본 발명의 실시예에 따르면, 와이드 컨텍스트 정보를 이용하면서 기존의 스테레오 매칭 기술과 동일하게 매개변수의 수를 유지할 수 있다는 장점을 갖는다.
도 3은 본 발명이 적용되는 실시예에 따른 스테레오 이미지로부터 디스패리티 맵을 획득하는 방법을 예시하는 도면이다.
도 3을 참조하면, 스테레오 매칭 장치(앞서 설명한 도 1의 100)는 좌측 이미지 및 우측 이미지에 대하여 각각 CNN을 적용함으로써 코스트 볼륨을 획득할 수 있다. 이때, 상기 코스트 볼륨은 상기 좌측 이미지 및 상기 우측 이미지로부터 각각 추출된 특징 맵에 기초하여 결정될 수 있다. 일 예로, 상기 코스트 볼륨은 스테레오 이미지에서 추출한 특징 맵으로 구성될 수 있고, 코스트 집합(cost aggregation)에 사용될 수 있다.
본 발명의 실시예에서, 스테레오 매칭 장치는 특징 추출 단계 및 코스트 집합 단계를 위하여 CNN을 이용할 수 있다. 또한, 본 발명의 실시예에서, 스테레오 매칭 장치는 와이드 컨텍스트 정보를 탐색/획득하기 위해 앳로우스(atrous) CNN을 사용하여 특징 추출 네트워크를 포함할 수 있다. 다시 말해, 좌측 이미지 및 우측 이미지에 적용되는 CNN은 확장된 컨볼루셔널 레이어를 포함하는 앳로우스 CNN으로 구성될 수 있다. 상기 앳로우스 CNN은 확장된 CNN으로 지칭될 수 있고, 상기 앳로우스 CNN 구조에 대한 상세한 설명은 자세히 후술한다.
이후, 스테레오 매칭 장치는 3D 인코더-디코더를 적용함으로써, 코스트 볼륨에 대하여 정규화를 수행할 수 있다. 본 발명에서, 상기 3D 인코더-디코더는 3D CNN, 3D CNN 레이어 등으로 지칭될 수 있고, 상기 3D 인코더-디코더 구조에 대한 상세한 설명은 자세히 후술한다. 또한, 스테레오 매칭 장치는 3D 인코더-디코더를 적용하는 과정에서 크기가 압축된 부분을 원래의 크기로 복구하기 위하여 업샘플링을 수행한다.
스테레오 매칭 장치는 데이터의 크기를 줄이기 위하여 디스패리티 값을 축소하여 이용했으므로 이에 대하여 회귀(또는 회귀 분석)을 수행한다. 다시 말해, 스테레오 매칭 장치는 업샘플링된 코스트 볼륨에 회귀 분석을 적용함으로써 최종 디스패리티 맵을 획득한다.
본 발명의 일 실시예에서, 픽셀 값으로부터 컨텍스트 관계를 결정하기 위해, 객체 컨텍스트 정보와 영상의 특징 정보를 함께 사용할 수 있고, 이를 통해 대응 추정(correspondence estimation)의 결과를 개선할 수 있다.
일 실시예로서, 물체(예컨대, 자동차, 보행자 등)와 하위 영역(예컨대, 도로, 건물, 창문, 자동차 바퀴 등) 간의 관계가 앳로우스 CNN에 의해 학습되어 계층적 컨텍스트를 형성할 수 있다.
도 4는 본 발명이 적용되는 실시예에 따른 앳로우스 CNN의 구조를 예시하는 도면이다.
도 4를 참조하면, 본 발명의 실시예에서, 제안하는 앳로우스 CNN은 복수의 컨볼루셔널 레이어(또는 CNN 레이어)를 포함할 수 있다. 도 4에서, 각각의 박스(또는 블록)은 각각의 컨볼루셔널 레이어의 커널 사이즈 및/또는 각각의 앳로우스 값을 갖는 하나의 컨볼루셔널 레이어를 나타내나, 설명의 편의를 위해 이하에서는, 복수의 컨볼루셔널 레이어를 포함하는 레이어를 그룹핑하여 하나의 CNN 레이어(410, 420, 430)로서 설명한다.
일 실시예에서, 스테레오 장치는 처음 3 개의 CNN을 포함하는 제1 CNN 레이어(410)을 적용함으로써 스테레오 영상의 크기를 줄이고, 특징 맵을 출력한다. 이후, 스테레오 장치는 서로 다른 앳로우스 값을 갖는 제2 CNN 레이어(420)를 앞서 적용된 제1 CNN 레이어(410)의 출력인 특징 맵(feature map)에 적용한다.
본 발명의 실시예에서, 스테레오 매칭을 수행함에 있어서, 앳로우스 CNN 레이어인 상술한 제2 CNN 레이어(420)를 이용함으로써, 큰 컨텍스트 정보를 획득할 수 있고, 컨볼루셔널 네트워크 내에서 공간 해상도를 보존할 수 있다.
일 실시예에서, 스테레오 장치는 앳로우스 값이 1 인 1x1 컨볼루셔널 레이어, 그리고, 앳로우스 값이 4, 8 및 16인 3 개의 3x3 레이어를 순차적으로 사용(또는 적용)할 수 있다. 일 예로, 제2 CNN 레이어(420) 내 모든 컨볼루셔널 레이어의 출력은 마지막 2 개의 CNN을 포함하는 제3 CNN 레이어(430)로 전달되기 전에 연결(또는 융합, 조합)될 수 있다.
도 5는 본 발명이 적용되는 일 실시예에 따른 앳로우스 CNN의 결과 이미지를 예시하는 도면이다.
도 5(a)는 입력 영상인 경우를 가정한다. 도 5(b)는 앳로우스가 2인 경우의 컨볼루션 동작을 예시한다. 도 5(b)에 도시된 바와 같은 컨볼루션이 적용되는 경우, 앳로우스가 2인 컨볼루션 레이어는 도 5(a)의 입력 영상에 대하여 도 5(c)에 도시된 바와 같은 결과 영상을 출력할 수 있다.
스테레오 장치는 동일한 앳로우스 CNN을 통해 좌측 이미지 및 우측 이미지를 모두 전달하여 두 개의 특징 맵을 생성할 수 있다. 스테레오 장치는 제안하는 앳로우스 CNN이 적용된 스테레오 이미지의 특징 맵을 사용하여 풍부한 컨텍스트 정보가 포함된 매칭 코스트 볼륨을 구성할 수 있다. 즉, 스테레오 장치는 코사인 유사성 함수, L1/L2 거리 함수와 같은 거리 메트릭(distance metric)을 사용하는 대신 좌측 이미지 및 우측 이미지에서 얻은 특징 맵을 활용하여 코스트 볼륨을 형성할 수 있다.
일 실시예에서, 스테레오 장치는 각각의 디스패리티 값에 대하여 좌측 특징 맵을 우측 특징 맵과 연결하여, H(높이)*W(너비)*D(디스패리티)*F(특징 크기)로 이루어진 4D 볼륨을 형성할 수 있다. 이 경우, 코스트 볼륨이 클수록 메모리가 더 많이 필요하고 계산 코스트가 높아지므로, 스테레오 장치는 최대 디스패리티 범위를 1/4 사이즈로 설정(또는 조절)할 수 있다. 또한, 스테레오 장치는 이어지는 단계에서 코스트 볼륨에 대하여 회귀(또는 회귀 분석)을 수행함으로써 이를 보완할 수 있다.
본 발명의 실시예에 따르면, 앳로우스 CNN은 다양한 레벨의 특징 맵을 이용하여 스테레오 매칭을 용이하게 할 수 있다.
또한, 본 발명의 일 실시예에서, 디스패리티 뿐만 아니라 다양한 여러 차원의 특징 정보를 회귀 분석하기 위해 코스트 볼륨 정규화하는 스택트(Stacked) 3D 인코더-디코더 CNN을 적용할 수 있다. 아래의 도면을 참조하여 설명한다.
도 6은 본 발명이 적용되는 일 실시예에 따른 3D 인코더-디코더 CNN 구조를 예시하는 도면이다.
본 발명의 실시예에 따른 네트워크는 3 개의 3D 인코더-디코더 네트워크에 의해 적층될 수 있고, 각각의 네트워크에서 디스패리티 맵이 생성될 수 있다. 실시예로서, 각각의 네트워크는 코스트 볼륨을 회귀 분석하는 3x3x3 컨볼루셔널 레이어를 포함할 수 있다.
도 6을 참조하면, 처음 네 개의 3D CNN을 포함하는 제1 CNN 레이어(610)는 인코더 역할을 수행한다. 일 실시예로서, 상기 제1 CNN 레이어(610) 내에서 첫 번째 및 세 번째 레이어는 스트라이드(stride) 값이 2로 설정될 수 있고, 이로 인해 코스트 볼륨의 크기를 줄일 수 있다.
또한, 일 실시예에서, 각각의 3D CNN이 적용된 후 배치 정규화 레이어(Batch Normalization layer) 및/또는 정류 선형 유닛 레이어(Rectified Linear Unit layer)가 뒤이어 적용될 수 있다.
또한, 일 실시예에서, 제2 CNN 레이어(620)에 포함된 두 개의 3D CNN은 3x3x3 사이즈를 가질 수 있다. 그리고, 제2 CNN 레이어(620)는 스트라이드 값이 2인 전치된 컨볼루셔널 네트워크(Transposed Convolutional Network)로 구성될 수 있다. 상기 제2 CNN 레이어(620)는 디코더의 역할을 수행할 수 있다. 이후, 스테레오 장치는 양선형 보간을 적용하여 이전의 크기(예컨대, H*W*D)로 코스트 볼륨을 업샘플링할 수 있다.
스테레오 장치는 연속적인 디스패리티 맵 추정을 위해 소프트 맥스 연산을 사용하여 코스트 값(예컨대, Cd)과 각각의 디스패리티 d의 확률을 계산할 수 있다. 최종 디스패리티는 아래의 수학식 1과 같이 확률로 가중치가 적용된 각각의 디스패리티의 합으로 계산될 수 있다.
Figure pat00001
수학식 1에 따른 디스패리티 회귀 분석은 비-차등이므로 학습 매개 변수가 필요하지 않다는 장점을 가지며, 분류 기반의 스테레오 매칭 방법보다 훨씬 더 향상된 성능을 갖는다.
일 실시예에서, 디스패리티 회귀 분석을 바탕으로 제안하는 네트워크를 학습하기 위해 스무스 L1 손실 함수(smooth L1 loss function)가 사용될 수 있다. 상기 스무스 L1 손실 함수는 성능이 뛰어나고 특이치에 매우 효과적이기 때문에, 물체 검출을 위한 경계 박스 회귀에 널리 사용될 수 있다.
예를 들어, 상술한 손실 함수는 다음의 수학식 2와 같이 정의될 수 있다.
수학식 1에 따른 디스패리티 회귀 분석은 비-차등이므로 학습 매개 변수가 필요하지 않다는 장점을 가지며, 분류 기반의 스테레오 매칭 방법보다 훨씬 더 향상된 성능을 갖는다.
일 실시예에서, 디스패리티 회귀 분석을 바탕으로 제안하는 네트워크를 학습하기 위해 스무스 L1 손실 함수(smooth L1 loss function)가 사용될 수 있다. 상기 스무스 L1 손실 함수는 성능이 뛰어나고 특이치에 매우 효과적이기 때문에, 물체 검출을 위한 경계 박스 회귀에 널리 사용될 수 있다.
예를 들어, 상술한 손실 함수는 다음의 수학식 2와 같이 정의될 수 있다.
Figure pat00002
수학식 2를 참조하면, N은 라벨링된 픽셀의 수이고, d는 디스패리티를 나타낸다.
도 7은 본 발명이 적용되는 실시예에 따른 앳로우스 CNN의 적용 영역의 일 예를 도시한다.
도 7을 참조하면, 도 7(a)에 도시된 이미지의 일부 영역에 대하여 앳로우스 CNN을 적용하는 경우를 예로 들어 설명한다.
도 7(b)에 도시된 블록은 3x3 CNN이 적용되는 영역을 나타낸다. 도 7(c), 도 7(d), 도 7(e)에 도시된 블록은 각각 4, 8 및 16의 dilation 수준을 갖는 영역을 나타낸다. 예를 들어, 도 7(b), 7(c), 7(d), 7(e)는 차례로 앞서 설명한 도 4의 제2 CNN 레이어(420)의 앳로우스 값이 1인 1x1 컨볼루셔널 레이어, 앳로우스 값이 4, 8, 16인 3x3 컨볼루셔널 레이어일 수 있다.
도 7(b)에 도시된 영역은 상대적으로 수용 필드가 다른 영역 대비 작고, 컨텍스트 정보가 적으며, 특징이 없거나 적은 것을 확인할 수 있다. 즉, 도 7의 (c)->(d)->(e)로 확장될수록 앳로우스 CNN은 더 넓은 수용 필드를 갖기 때문에, 보다 넓고 구체적인 정보를 제공할 수 있다. 따라서, 이러한 복수의 앳로우스 CNN의 출력들을 결합하면 고수준의 특징 표현을 효과적으로 획득할 수 있다.
도 8은 본 발명의 실시예에 따른 스테레오 이미지로부터 디스패리티 맵을 생성하기 위한 스테레오 매칭 방법을 나타내는 흐름도이다.
도 8을 참조하면, 스테레오 매칭 장치는 좌측 이미지 및 우측 이미지에 대하여 각각 제1 컨볼루셔널 뉴럴 네트워크(CNN: Convolutional Neural Network) 및 제2 CNN을 적용함으로써 코스트 볼륨을 획득한다(S801). 여기서, 상기 코스트 볼륨은 상기 좌측 이미지 및 상기 우측 이미지로부터 각각 추출된 특징 맵에 기초하여 결정될 수 있다.
스테레오 매칭 장치는 상기 코스트 볼륨에 대하여 제3 CNN을 적용함으로써 정규화를 수행한다(S802).
스테레오 매칭 장치는 상기 정규화된 코스트 볼륨을 업샘플링한다(S803).
스테레오 매칭 장치는 상기 업샘플링된 코스트 볼륨에 회귀 분석을 적용함으로써 디스패리티 맵을 획득한다(S804).
전술한 바와 같이, 상기 제1 CNN 및 상기 제2 CNN은 확장된 컨볼루셔널 레이어를 포함하는 앳로우스(atrous) CNN 레이어을 포함할 수 있다.
전술한 바와 같이, 상기 앳로우스 CNN 레이어는 앳로우스 값이 서로 다른 복수의 컨볼루셔널 레이어를 포함하고, 상기 앳로우스 값이 서로 다른 복수의 컨볼루셔널 레이어는 이전 CNN 레이어에 의해 출력된 특징 맵에 순차적으로 적용될 수 있다.
전술한 바와 같이, 상기 앳로우스 값이 서로 다른 복수의 컨볼루셔널 레이어는 상기 앳로우스 값에 따라 서로 다른 크기의 영역에 적용될 수 있다.
전술한 바와 같이, 상기 제1 CNN 및 상기 제2 CNN은 각각의 입력 이미지에 적용되는 가중치를 공유할 수 있다.
전술한 바와 같이, 상기 제3 CNN은 3D 인코더-디코더를 이용하는 CNN으로 구성될 수 있다.
전술한 바와 같이, 디스패리티 맵에 기초하여 상기 스테레오 이미지에 포함된 객체의 깊이 정보를 결정하는 단계를 더 포함할 수 있다.
도 9는 본 발명의 실시예에 따른 스테레오 매칭 장치를 나타낸다.
도 9를 참조하면, 스테레오 매칭 장치(900)는 센서(901), 프로세서(902) 및 메모리(903)를 포함한다. 센서(901), 프로세서(902) 및 메모리(903)는 전기적으로 연결되어 서로 통신할 수 있다.
센서(901)는 영상을 촬영할 수 있다. 일 실시예에서, 센서(901)는 스테레오 영상을 촬영할 수 있고, 제1 시점 영상을 촬영하기 위한 제1 센서 및 제2 시점 영상을 촬영하기 위한 제2 센서를 포함할 수 있다. 제1 센서 및 제2 센서는 예를 들어, 이미지 센서, 근접 센서 또는 적외선 센서일 수 있다. 센서(901)는 잘 알려진 방식(예를 들어, 광학 이미지를 전기 신호로 변환하는 방식 등)으로 스테레오 영상을 촬영할 수 있다. 센서(901)는 촬영된 컬러 영상, 깊이 영상 및 적외선 영상 중 적어도 하나를 프로세서(902) 및 메모리(903) 중 적어도 하나로 전달할 수 있다.
프로세서(902)는 상술한 스테레오 매칭 또는 변환 파라미터 추정에 관한 동작을 처리할 수 있다. 일 실시예에서, 프로세서(902)는 뉴럴 네트워크 모델 기반의 특징 추출기를 이용하여 스테레오 영상을 특징 맵들로 변환하고, 특징 맵에 포함된 특징 정보에 기초하여 픽셀들 간의 매칭 비용을 계산할 수 있다. 프로세서(902)는 매칭 비용에 기초하여 스테레오 영상에서 서로 대응하는 대응 픽셀 쌍을 결정하고, 대응 픽셀 쌍 간의 디스패리티에 기초하여 깊이 정보를 추정할 수 있다.
다른 실시예에서, 프로세서(902)는 서로 다른 시간에서 촬영된 영상들에서 특징점들을 추출하고, 특징 추출기를 이용하여 특징점들에 대응하는 특징 벡터들을 결정할 수 있다. 이후에, 프로세서(902)는 영상들 간의 특징 벡터들을 비교하여 영상들에서 서로 대응하는 특징점 쌍을 결정하고, 결정된 대응 특징점 쌍들의 위치 정보에 기초하여 변환 파라미터를 추정할 수 있다.
이 밖에도, 프로세서(902)는 도 1 내지 도 8을 통해 전술한 적어도 하나의 동작을 수행할 수 있다. 프로세서(902)는 명령어들 또는 프로그램들을 실행하거나, 영상 처리 장치를 제어할 수 있다.
메모리(903)는 상술한 스테레오 매칭 또는 변환 파라미터의 추정에서 이용되는 정보 및 결과 정보를 저장할 수 있다. 또한, 메모리(903)는 컴퓨터에서 읽을 수 있는 명령어들을 저장할 수 있다. 메모리(903)에 저장된 명령어들이 프로세서(902)에서 실행되면, 프로세서(902)는 상술된 하나 이상의 동작을 처리할 수 있다.
스테레오 매칭 장치(900)는 입/출력 장치(도면 미 표시)를 통하여 사용자 입력을 수신하거나 영상 및 처리 결과를 출력할 수 있다. 또한, 스테레오 매칭 장치(900)는 통신 장치(도면 미 표시)를 통해 외부 장치(예를 들어, 퍼스널 컴퓨터 또는 네트워크)에 연결되고, 외부 장치와 데이터를 교환할 수 있다.
이상에서 설명된 실시예들은 본 발명의 구성요소들과 특징들이 소정 형태로 결합된 것들이다. 각 구성요소 또는 특징은 별도의 명시적 언급이 없는 한 선택적인 것으로 고려되어야 한다. 각 구성요소 또는 특징은 다른 구성요소나 특징과 결합되지 않은 형태로 실시될 수 있다. 또한, 일부 구성요소들 및/또는 특징들을 결합하여 본 발명의 실시예를 구성하는 것도 가능하다. 본 발명의 실시예들에서 설명되는 동작들의 순서는 변경될 수 있다. 어느 실시예의 일부 구성이나 특징은 다른 실시예에 포함될 수 있고, 또는 다른 실시예의 대응하는 구성 또는 특징과 교체될 수 있다. 특허청구범위에서 명시적인 인용 관계가 있지 않은 청구항들을 결합하여 실시예를 구성하거나 출원 후의 보정에 의해 새로운 청구항으로 포함시킬 수 있음은 자명하다.
본 발명에 따른 실시예는 다양한 수단, 예를 들어, 하드웨어, 펌웨어(firmware), 소프트웨어 또는 그것들의 결합 등에 의해 구현될 수 있다. 하드웨어에 의한 구현의 경우, 본 발명의 일 실시예는 하나 또는 그 이상의 ASICs(application specific integrated circuits), DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays), 프로세서, 콘트롤러, 마이크로 콘트롤러, 마이크로 프로세서 등에 의해 구현될 수 있다.
또한, 펌웨어나 소프트웨어에 의한 구현의 경우, 본 발명의 일 실시예는 이상에서 설명된 기능 또는 동작들을 수행하는 모듈, 절차, 함수 등의 형태로 구현되어, 다양한 컴퓨터 수단을 통하여 판독 가능한 기록매체에 기록될 수 있다. 여기서, 기록매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 기록매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 예컨대 기록매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(Magnetic Media), CD-ROM(Compact Disk Read Only Memory), DVD(Digital Video Disk)와 같은 광 기록 매체(Optical Media), 플롭티컬 디스크(Floptical Disk)와 같은 자기-광 매체(Magneto-Optical Media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함한다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 이러한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
아울러, 본 발명에 따른 장치나 단말은 하나 이상의 프로세서로 하여금 앞서 설명한 기능들과 프로세스를 수행하도록 하는 명령에 의하여 구동될 수 있다. 예를 들어 그러한 명령으로는, 예컨대 JavaScript나 ECMAScript 명령 등의 스크립트 명령과 같은 해석되는 명령이나 실행 가능한 코드 혹은 컴퓨터로 판독 가능한 매체에 저장되는 기타의 명령이 포함될 수 있다. 나아가 본 발명에 따른 장치는 서버 팜(Server Farm)과 같이 네트워크에 걸쳐서 분산형으로 구현될 수 있으며, 혹은 단일의 컴퓨터 장치에서 구현될 수도 있다.
또한, 본 발명에 따른 장치에 탑재되고 본 발명에 따른 방법을 실행하는 컴퓨터 프로그램(프로그램, 소프트웨어, 소프트웨어 어플리케이션, 스크립트 혹은 코드로도 알려져 있음)은 컴파일 되거나 해석된 언어나 선험적 혹은 절차적 언어를 포함하는 프로그래밍 언어의 어떠한 형태로도 작성될 수 있으며, 독립형 프로그램이나 모듈, 컴포넌트, 서브루틴 혹은 컴퓨터 환경에서 사용하기에 적합한 다른 유닛을 포함하여 어떠한 형태로도 전개될 수 있다. 컴퓨터 프로그램은 파일 시스템의 파일에 반드시 대응하는 것은 아니다. 프로그램은 요청된 프로그램에 제공되는 단일 파일 내에, 혹은 다중의 상호 작용하는 파일(예컨대, 하나 이상의 모듈, 하위 프로그램 혹은 코드의 일부를 저장하는 파일) 내에, 혹은 다른 프로그램이나 데이터를 보유하는 파일의 일부(예컨대, 마크업 언어 문서 내에 저장되는 하나 이상의 스크립트) 내에 저장될 수 있다. 컴퓨터 프로그램은 하나의 사이트에 위치하거나 복수의 사이트에 걸쳐서 분산되어 통신 네트워크에 의해 상호 접속된 다중 컴퓨터나 하나의 컴퓨터 상에서 실행되도록 전개될 수 있다.
본 발명은 본 발명의 필수적 특징을 벗어나지 않는 범위에서 다른 특정한 형태로 구체화될 수 있음은 당업자에게 자명하다. 따라서, 상술한 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니 되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.

Claims (14)

  1. 스테레오 이미지로부터 디스패리티 맵을 생성하기 위한 스테레오 매칭 방법에 있어서,
    좌측 이미지 및 우측 이미지에 대하여 각각 제1 컨볼루셔널 뉴럴 네트워크(CNN: Convolutional Neural Network) 및 제2 CNN을 적용함으로써 코스트 볼륨을 획득하는 단계, 여기서 상기 코스트 볼륨은 상기 좌측 이미지 및 상기 우측 이미지로부터 각각 추출된 특징 맵에 기초하여 결정됨;
    상기 코스트 볼륨에 대하여 제3 CNN을 적용함으로써 정규화를 수행하는 단계;
    상기 정규화된 코스트 볼륨을 업샘플링하는 단계; 및
    상기 업샘플링된 코스트 볼륨에 회귀 분석을 적용함으로써 디스패리티 맵을 획득하는 단계를 포함하는, 스테레오 매칭 방법.
  2. 제1항에 있어서,
    상기 제1 CNN 및 상기 제2 CNN은 확장된 컨볼루셔널 레이어를 포함하는 앳로우스(atrous) CNN 레이어을 포함하는 것을 특징으로 하는, 스테레오 매칭 방법.
  3. 제2항에 있어서,
    상기 앳로우스 CNN 레이어는 앳로우스 값이 서로 다른 복수의 컨볼루셔널 레이어를 포함하고,
    상기 앳로우스 값이 서로 다른 복수의 컨볼루셔널 레이어는 이전 CNN 레이어에 의해 출력된 특징 맵에 순차적으로 적용되는 것을 특징으로 하는, 스테레오 매칭 방법.
  4. 제3항에 있어서,
    상기 앳로우스 값이 서로 다른 복수의 컨볼루셔널 레이어는 상기 앳로우스 값에 따라 서로 다른 크기의 영역에 적용되는 것을 특징으로 하는, 스테레오 매칭 방법.
  5. 제2항에 있어서,
    상기 제1 CNN 및 상기 제2 CNN은 각각의 입력 이미지에 적용되는 가중치를 공유하는 것을 특징으로 하는, 스테레오 매칭 방법.
  6. 제1항에 있어서,
    상기 제3 CNN은 3D 인코더-디코더를 이용하는 CNN으로 구성되는 것을 특징으로 하는, 스테레오 매칭 방법.
  7. 제1항에 있어서,
    디스패리티 맵에 기초하여 상기 스테레오 이미지에 포함된 객체의 깊이 정보를 결정하는 단계를 더 포함하는, 스테레오 매칭 방법.
  8. 스테레오 매칭 장치를 제어하는 프로세서;
    상기 프로세서와 결합되고, 스테레오 이미지를 획득하는 센서; 및
    상기 프로세서와 결합되고, 데이터를 저장하는 메모리를 포함하되,
    상기 프로세서는,
    좌측 이미지 및 우측 이미지에 대하여 각각 제1 컨볼루셔널 뉴럴 네트워크(CNN: Convolutional Neural Network) 및 제2 CNN을 적용함으로써 코스트 볼륨을 획득하고, 여기서 상기 코스트 볼륨은 상기 좌측 이미지 및 상기 우측 이미지로부터 각각 추출된 특징 맵에 기초하여 결정됨,
    상기 코스트 볼륨에 대하여 제3 CNN을 적용함으로써 정규화를 수행하고,
    상기 정규화된 코스트 볼륨을 업샘플링하고, 그리고,
    상기 업샘플링된 코스트 볼륨에 회귀 분석을 적용함으로써 디스패리티 맵을 획득하는, 스테레오 매칭 장치.
  9. 제8항에 있어서,
    상기 제1 CNN 및 상기 제2 CNN은 확장된 컨볼루셔널 레이어를 포함하는 앳로우스(atrous) CNN 레이어을 포함하는 것을 특징으로 하는, 스테레오 매칭 장치.
  10. 제9항에 있어서,
    상기 앳로우스 CNN 레이어는 앳로우스 값이 서로 다른 복수의 컨볼루셔널 레이어를 포함하고,
    상기 앳로우스 값이 서로 다른 복수의 컨볼루셔널 레이어는 이전 CNN 레이어에 의해 출력된 특징 맵에 순차적으로 적용되는 것을 특징으로 하는, 스테레오 매칭 장치.
  11. 제10항에 있어서,
    상기 앳로우스 값이 서로 다른 복수의 컨볼루셔널 레이어는 상기 앳로우스 값에 따라 서로 다른 크기의 영역에 적용되는 것을 특징으로 하는, 스테레오 매칭 장치.
  12. 제9항에 있어서,
    상기 제1 CNN 및 상기 제2 CNN은 각각의 입력 이미지에 적용되는 가중치를 공유하는 것을 특징으로 하는, 스테레오 매칭 장치.
  13. 제8항에 있어서,
    상기 제3 CNN은 3D 인코더-디코더를 이용하는 CNN으로 구성되는 것을 특징으로 하는, 스테레오 매칭 장치.
  14. 제8항에 있어서,
    상기 프로세서는,
    디스패리티 맵에 기초하여 상기 스테레오 이미지에 포함된 객체의 깊이 정보를 결정하는, 스테레오 매칭 장치.
KR1020190106008A 2019-08-28 2019-08-28 종단간 컨볼루셔널 뉴럴 네트워크를 이용한 스테레오 매칭 방법 KR20210025942A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020190106008A KR20210025942A (ko) 2019-08-28 2019-08-28 종단간 컨볼루셔널 뉴럴 네트워크를 이용한 스테레오 매칭 방법
US17/005,632 US11348270B2 (en) 2019-08-28 2020-08-28 Method for stereo matching using end-to-end convolutional neural network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190106008A KR20210025942A (ko) 2019-08-28 2019-08-28 종단간 컨볼루셔널 뉴럴 네트워크를 이용한 스테레오 매칭 방법

Publications (1)

Publication Number Publication Date
KR20210025942A true KR20210025942A (ko) 2021-03-10

Family

ID=74679981

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190106008A KR20210025942A (ko) 2019-08-28 2019-08-28 종단간 컨볼루셔널 뉴럴 네트워크를 이용한 스테레오 매칭 방법

Country Status (2)

Country Link
US (1) US11348270B2 (ko)
KR (1) KR20210025942A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220198694A1 (en) * 2020-01-10 2022-06-23 Dalian University Of Technology Disparity estimation optimization method based on upsampling and exact rematching
WO2023075082A1 (ko) * 2021-10-26 2023-05-04 주식회사 씨앤에이아이 이미지 아웃페인팅 방법 및 그를 이용한 장치

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102295809B1 (ko) * 2019-10-25 2021-09-01 주식회사 멀티플아이 이동체의 전방향에 대한 거리 취득 장치 및 방법
CN112907645B (zh) * 2021-03-05 2022-08-26 重庆紫光华山智安科技有限公司 视差图获取方法、装置、训练方法、电子设备和介质
CN112949504B (zh) * 2021-03-05 2024-03-19 深圳市爱培科技术股份有限公司 立体匹配方法、装置、设备及存储介质
KR102361133B1 (ko) * 2021-09-23 2022-02-14 주식회사 멀티플아이 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법 및 이를 이용한 비전 장치
US20230133026A1 (en) * 2021-10-28 2023-05-04 X Development Llc Sparse and/or dense depth estimation from stereoscopic imaging
US11995859B2 (en) 2021-10-28 2024-05-28 Mineral Earth Sciences Llc Sparse depth estimation from plant traits
CN114119777B (zh) * 2022-01-27 2022-05-17 北京中科慧眼科技有限公司 基于深度学习的立体匹配方法和系统
CN114445473B (zh) * 2022-04-07 2022-07-26 北京中科慧眼科技有限公司 基于深度学习算子的立体匹配方法和系统
US11651508B1 (en) * 2022-06-02 2023-05-16 Plusai, Inc. Methods and apparatus for depth estimation using stereo cameras in a vehicle system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220198694A1 (en) * 2020-01-10 2022-06-23 Dalian University Of Technology Disparity estimation optimization method based on upsampling and exact rematching
WO2023075082A1 (ko) * 2021-10-26 2023-05-04 주식회사 씨앤에이아이 이미지 아웃페인팅 방법 및 그를 이용한 장치

Also Published As

Publication number Publication date
US20210065393A1 (en) 2021-03-04
US11348270B2 (en) 2022-05-31

Similar Documents

Publication Publication Date Title
KR20210025942A (ko) 종단간 컨볼루셔널 뉴럴 네트워크를 이용한 스테레오 매칭 방법
Shivakumar et al. Dfusenet: Deep fusion of rgb and sparse depth information for image guided dense depth completion
Jaritz et al. Sparse and dense data with cnns: Depth completion and semantic segmentation
AU2017324923B2 (en) Predicting depth from image data using a statistical model
EP3549102B1 (en) Determining structure and motion in images using neural networks
Yang et al. Dense depth posterior (ddp) from single image and sparse range
US11315266B2 (en) Self-supervised depth estimation method and system
WO2019223382A1 (zh) 单目深度估计方法及其装置、设备和存储介质
WO2019230339A1 (ja) 物体識別装置、移動体用システム、物体識別方法、物体識別モデルの学習方法及び物体識別モデルの学習装置
WO2019169884A1 (zh) 基于深度信息的图像显著性检测方法和装置
WO2018168539A1 (ja) 学習方法およびプログラム
EP4181079A1 (en) Method and apparatus with multi-modal feature fusion
KR102097869B1 (ko) 자가 지도 학습을 이용한 딥러닝 기반 도로 영역 추정 장치 및 방법
CN115861632B (zh) 一种基于图卷积的视觉激光融合的三维目标检测方法
Zhou et al. Matrixvt: Efficient multi-camera to bev transformation for 3d perception
KR102546206B1 (ko) 멀티 스케일 특징들의 상관관계 및 지역적 연관성을 활용한 시맨틱 세그멘테이션 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램
CN112132770A (zh) 图像修复的方法、装置、计算机可读介质及电子设备
JP2024507727A (ja) 潜在変数で条件付けた幾何学的形状認識ニューラルネットワークを使用した、シーンの新規画像のレンダリング
JP2023539865A (ja) リアルタイムなクロススペクトルオブジェクトの関連付け及び深度推定
CN110827341A (zh) 一种图片深度估计方法、装置和存储介质
CN114677422A (zh) 深度信息生成方法、图像虚化方法和视频虚化方法
CN114494395A (zh) 基于平面先验的深度图生成方法、装置、设备及存储介质
Harisankar et al. Unsupervised depth estimation from monocular images for autonomous vehicles
Liu et al. Depth estimation of traffic scenes from image sequence using deep learning
KR20230078502A (ko) 이미지 처리 장치 및 방법

Legal Events

Date Code Title Description
E601 Decision to refuse application