KR20170070620A - 스테레오 영상 매칭 방법 및 장치 - Google Patents

스테레오 영상 매칭 방법 및 장치 Download PDF

Info

Publication number
KR20170070620A
KR20170070620A KR1020150178366A KR20150178366A KR20170070620A KR 20170070620 A KR20170070620 A KR 20170070620A KR 1020150178366 A KR1020150178366 A KR 1020150178366A KR 20150178366 A KR20150178366 A KR 20150178366A KR 20170070620 A KR20170070620 A KR 20170070620A
Authority
KR
South Korea
Prior art keywords
cost
images
pixels
value
energy function
Prior art date
Application number
KR1020150178366A
Other languages
English (en)
Other versions
KR102415505B1 (ko
Inventor
장현성
황효석
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020150178366A priority Critical patent/KR102415505B1/ko
Priority to US15/358,744 priority patent/US10430959B2/en
Publication of KR20170070620A publication Critical patent/KR20170070620A/ko
Application granted granted Critical
Publication of KR102415505B1 publication Critical patent/KR102415505B1/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
    • H04N13/0239
    • 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
    • G06V10/7515Shifting the patterns to accommodate for positional errors
    • H04N13/0007
    • H04N13/0022
    • H04N13/0246
    • 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
    • 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/10016Video; Image sequence
    • G06T2207/10021Stereoscopic video; Stereoscopic image sequence
    • 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/20021Dividing image into blocks, subimages or windows
    • 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/15Processing image signals for colour aspects of image signals
    • 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/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
    • H04N2013/0074Stereoscopic image analysis
    • H04N2013/0081Depth or disparity estimation from stereoscopic image signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N2013/0074Stereoscopic image analysis
    • H04N2013/0092Image segmentation from stereoscopic image signals

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Signal Processing (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Databases & Information Systems (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Image Processing (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)

Abstract

스테레오 영상을 매칭하는 방법 및 장치가 제공된다. 스테레오 영상 매칭 방법 및 장치는 적어도 하나의 영상에 대한 데이터 비용(data cost)을 계산하고, 영상에 대한 평탄 비용(smoothness cost)을 계산하고, 데이터 비용 및 평탄 비용을 이용하여 복수의 영상들 간의 픽셀들을 서로 매칭한다.

Description

스테레오 영상 매칭 방법 및 장치{METHOD AND APPARATUS FOR MATCHING STEREO IMAGES}
아래의 실시예들은 스테레오 영상들을 매칭하기 위한 방법 및 장치에 관한 것으로, 상세하게는 영상의 기하학적 구조를 고려하여 스테레오 영상들을 매칭하는 방법에 관한 것이다.
잘 알려진 바와 같이, 사람의 시각은 주위 환경의 정보를 얻기 위한 감각의 하나로서, 양안을 통해 사물의 위치와 멀고 가까움을 인지할 수 있다. 즉, 양안을 통해 들어오는 시각 정보들이 하나의 거리정보로 합성되면서 자유롭게 활동하는 것이다.
이러한 시각구조를 기계로 구현할 때 사용되는 것이 스테레오 카메라 시스템이다. 스테레오 카메라 시스템은 두 개의 카메라를 이용하여 얻은 영상에 대하여 스테레오 매칭(stereo matching) 또는 스테레오 영상 매칭을 수행할 수 있다. 스테레오 매칭 과정에서 스테레오 카메라는 두 개의 카메라들의 디스패리티를 이용하여 디스패리티 맵을 구한다.
일 측면에 따른, 스테레오 영상 매칭 방법은 서로 다른 시점을 갖는 두 개의 영상들 중 적어도 하나의 영상에 대한 디스패리티(disparity) 값을 초기화하는 단계, 상기 영상의 평탄 비용(smoothness cost) 및 데이터 비용(data cost)에 기반하여 에너지 함수를 생성하는 단계, 및 상기 에너지 함수의 값이 최소가 되도록 상기 영상들 간의 픽셀들을 서로 매칭하는 단계를 포함하고, 상기 평탄 비용은 상기 영상의 픽셀을 중심으로 하는 블록 및 상기 블록의 하나 이상의 주변 블록들 간의 디스패리티 구조의 유사성에 기반하여 계산되고, 상기 데이터 비용은 상기 영상의 디스패리티 값에 따라 상기 영상들 간에 매칭된 픽셀들의 픽셀 값에 기반하여 계산된다.
상기 디스패리티 값을 초기화하는 단계는, 초기 디스패리티 맵(initial disparity map)을 생성하는 단계를 포함할 수 있다.
상기 스테레오 영상 매칭 방법은 상기 매칭된 픽셀들에 기반하여 상기 영상의 디스패리티 맵을 생성하는 단계를 더 포함할 수 있다.
상기 영상들 간의 픽셀들을 서로 매칭하는 단계는, 코디네이트 데상트 알고리즘(coordinate descent algorithms)에 기반하여 상기 에너지 함수의 값이 최소가 되도록 상기 영상들 간의 픽셀들을 서로 매칭하는 단계일 수 있다.
상기 영상들 간의 픽셀들을 서로 매칭하는 단계는, 상기 에너지 함수의 평탄 비용을 최소화하는 단계, 상기 에너지 함수의 데이터 비용을 최소화하는 단계, 및 미리 설정된 조건이 만족되었는지 여부를 판단하는 단계를 포함할 수 있다.
상기 영상들 간의 픽셀들을 서로 매칭하는 단계는, 상기 조건이 만족되지 않은 경우, 상기 에너지 함수의 하나 이상의 파라미터를 조정하는 단계를 더 포함할 수 있다.
상기 조건은 상기 에너지 함수의 값이 이전에 계산된 에너지 함수의 값과 동일한지 여부일 수 있다.
상기 조건은 상기 매칭하는 단계의 수행된 횟수가 미리 설정된 횟수에 도달했는지 여부일 수 있다.
상기 평탄 비용을 최소화하는 단계는, 잡음 제거 알고리즘에 기반하여 상기 평탄 비용을 최소화하는 단계일 수 있다.
상기 평탄 비용을 최소화하는 단계는, 상기 픽셀을 중심으로 하는 상기 블록을 생성하는 단계, 상기 블록과 상기 영상 내에 유사한 기하학적 구조를 갖는 상기 주변 블록들을 검출하는 단계, 및 상기 블록들을 협력적 필터링(collaborative filtering)하여 상기 평탄 비용을 최소화하는 단계를 포함할 수 있다.
상기 적어도 하나의 영상의 디스패리티 값을 초기화하는 단계는, 상기 영상들 각각의 디스패리티 값을 초기화하는 단계이고, 상기 데이터 비용은 상기 영상들의 전체 픽셀에 대해 계산될 수 있다.
상기 데이터 비용은 대응하는 픽셀들 간의 기하학적 구조에 기반하여 계산될 수 있다.
다른 일 측면에 따른, 스테레오 영상 매칭 장치는 서로 다른 시점을 갖는 두 개의 영상들을 저장하는 저장부, 및 상기 영상들 중 적어도 하나의 영상의 디스패리티(disparity) 값을 초기화하고, 상기 영상의 평탄 비용(smoothness cost) 및 데이터 비용(data cost)에 기반하여 에너지 함수를 생성하고, 상기 에너지 함수의 값이 최소가 되도록 상기 영상들 간의 픽셀들을 서로 매칭하는 프로세서를 포함하고, 상기 평탄 비용은 상기 영상의 픽셀을 중심으로 하는 블록 및 상기 블록의 하나 이상의 주변 블록들 간의 디스패리티 구조의 유사성에 기반하여 계산되고, 상기 데이터 비용은 상기 영상의 디스패리티 값에 따라 상기 영상들 간에 매칭된 픽셀들의 픽셀 값에 기반하여 계산된다.
상기 프로세서는 초기 변위 맵(initial disparity map)을 생성할 수 있다.
상기 프로세서는 매칭된 픽셀들에 기반하여 상기 영상의 디스패리티 맵을 생성할 수 있다.
상기 프로세서는 코디네이트 데상트 알고리즘(coordinate descent algorithms)에 기반하여 상기 에너지 함수의 값이 최소가 되도록 상기 영상들 간의 픽셀들을 서로 매칭할 수 있다.
상기 프로세서는 상기 영상들 간의 픽셀들을 서로 매칭하기 위해, 상기 에너지 함수의 평탄 비용을 최소화하고, 상기 에너지 함수의 데이터 비용을 최소화하고, 미리 설정된 조건이 만족되었는지 여부를 판단할 수 있다.
상기 프로세서는 잡음 제거 알고리즘에 기반하여 상기 평탄 비용을 최소화할 수 있다.
상기 프로세서는 상기 픽셀을 중심으로 하는 상기 블록을 생성하고, 상기 블록과 상기 영상 내에 유사한 기하학적 구조를 갖는 블록들을 검출하고, 상기 블록 및 상기 주변 블록들을 협력적 필터링(collaborative filtering)하여 상기 평탄 비용을 최소화할 수 있다.
도 1은 일 예에 따른 스테레오 영상들을 촬영하기 위한 카메라들의 배치를 도시한다.
도 2는 일 예에 따른 생성된 스테레오 영상들을 도시한다.
도 3은 일 실시예에 따른 스테레오 영상 매칭 장치의 구성도이다.
도 4는 일 실시예에 따른 스테레오 영상 매칭 방법의 흐름도이다.
도 5는 일 예에 따른 영상들 간의 픽셀들을 매칭하는 방법의 흐름도이다.
도 6은 일 예에 따른 평탄 비용을 최소화하는 방법의 흐름도이다.
도 7은 일 예에 따른 컬러 영상이다.
도 8은 일 예에 따른 디스패리티 맵이다.
도 9는 일 예에 따른 유사한 기하학적 구조를 갖는 블록들을 도시한다.
도 10은 일 예에 따른 낮은 랭크로 유사한 블록들의 관계를 나타내는 방법을 도시한다.
이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 그러나, 특허출원의 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
아래 설명하는 실시예들에는 다양한 변경이 가해질 수 있다. 아래 설명하는 실시예들은 실시 형태에 대해 한정하려는 것이 아니며, 이들에 대한 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
실시예에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 실시예를 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
도 1은 일 예에 따른 스테레오 영상들을 촬영하기 위한 카메라들의 배치를 도시한다.
스테레오 매칭(stereo matching) 또는 스테레오 영상 매칭은 동일한 장면(scene)을 2 개 이상의 서로 다른 시점에서 촬영된 영상들을 서로 매칭하는 것이다. 스테레오 영상 매칭은 영상들의 픽셀들 간의 대응관계를 찾는 것일 수 있다.
도 1에서, 제1 카메라(110) 및 제2 카메라(120)는 서로 다른 시점에서 동일한 장면을 촬영할 수 있다. 장면은 전경(140) 및 배경(130)을 포함할 수 있다.
일 측면에 따르면, 제1 카메라(110) 및 제2 카메라(120)는 가로 방향으로 평행하게 배치될 수 있다. 제1 카메라(110) 및 제2 카메라(120)에 의해 촬영된 영상들에 대해, 아래에서 도 2를 참조하여 설명된다.
도 2는 일 예에 따른 생성된 스테레오 영상들을 도시한다.
왼쪽 영상(210)은 전술된 제1 카메라(110)에 의해 촬영된 영상이고, 오른쪽 영상(220)은 전술된 제2 카메라(120)에 의해 촬영된 영상일 수 있다.
제1 카메라(110) 및 제2 카메라(120)는 서로 다른 시점을 갖기 때문에, 촬영된 왼쪽 영상(210) 및 오른쪽 영상(220)은 장면의 전경(140) 및 배경(130) 간의 상대적 위치가 서로 다를 수 있다.
왼쪽 영상(210) 및 오른쪽 영상(220)은 동일한 장면을 촬영한 것이기 때문에, 동일한 구성요소를 포함할 수 있다. 전경(140)은 제1 전경(212) 및 제2 전경(222)에 각각 대응할 수 있다. 제1 전경(212) 및 제2 전경(220)은 동일한 전경(140)을 각각 촬영한 값이기 때문에, 제1 전경(212)의 픽셀 및 제2 전경(220)의 픽셀은 서로 대응할 수 있다. 예를 들어, 제1 전경의 픽셀 m(214) 및 제2 전경의 픽셀 u(224)은 서로 간에 대응할 수 있다.
배경(130)은 제1 배경(211) 및 제2 배경(221)에 각각 대응할 수 있다. 제1 배경(211) 및 제2 배경(221)은 동일한 배경(130)을 각각 촬영한 값이기 때문에, 제1 배경(211)의 픽셀 및 제2 배경(221)의 픽셀은 서로 간에 대응할 수 있다.
왼쪽 영상(210) 및 오른쪽 영상(220) 간에 스테레오 매칭이 수행되면, 제1 전경의 픽셀 m(214) 및 제2 전경의 픽셀 u(224) 간의 변위 또는 디스패리티(disparity)가 계산될 수 있다. 변위 또는 디스패리티가 계산된 경우, 제1 카메라(110) 및 제2 카메라(120)로부터 전경(140)까지의 실제 거리가 계산될 수 있다.
제1 카메라(110) 및 제2 카메라(120)가 동일한 높이 및 동일한 틸팅 각도(tilting angle)로 영상을 촬영할 경우, 영상들의 픽셀들 간의 디스패리티는 가로 방향으로만 발생하고, 세로 방향으로는 발생하지 않을 수 있다.
왼쪽 영상(210) 및 오른쪽 영상(220) 간에 스테레오 매칭을 수행하는 과정에서 왼쪽 영상(210)의 디스패리티 맵(disparity map) 및 오른쪽 영상(220)의 디스패리티 맵이 추정될 수 있다.
도 3은 일 실시예에 따른 스테레오 영상 매칭 장치의 구성도이다.
스테레오 영상 매칭 장치(300)는 통신부(310), 프로세서(320) 및 저장부(330)를 포함한다.
통신부(310)는 동영상 또는 영상을 다른 장치로부터 수신할 수 있다.
프로세서(320)는 통신부(310)가 수신한 데이터 및 저장부(330)의 데이터를 처리할 수 있다.
저장부(330)는 통신부(310)가 수신한 데이터 및 프로세서(320)가 처리한 데이터를 저장할 수 있다. 예를 들어, 저장부(330)는 동영상 및 영상을 저장할 수 있다. 일 측면에 따르면, 저장부(330)는 휘발성 메모리, 비휘발성 메모리 및 하드 디스크 드라이브 중 적어도 하나를 포함할 수 있다. 저장부(330)는 영상 처리를 수행하는 명령어 세트를 저장할 수 있다. 영상 처리를 수행하는 명령어 세트는 프로세서(320)에 의해 실행될 수 있다.
프로세서(320)는 명령어 세트에 따라 영상 처리를 수행할 수 있다.
도 4는 일 실시예에 따른 스테레오 영상 매칭 방법의 흐름도이다.
단계(410)에서, 프로세서(320)는 복수의 영상들 중 적어도 하나의 영상에 대한 디스패리티 값을 초기화한다. 영상은 컬러 영상일 수 있고, 디스패리티 값은 컬러 영상에 대응하는 디스패리티 맵의 픽셀에 대한 값일 수 있다. 즉, 프로세서(320)는 초기 디스패리티 맵을 생성하여 디스패리티 값을 초기화할 수 있다.
예를 들어, 프로세서(320)는 각 픽셀에 임의의 디스패리티 값이 설정된 초기 디스패리티 맵을 생성할 수 있다. 다른 예로, 프로세서(320)는 픽셀들에 동일한 디스패리티 값이 설정된 초기 디스패리티 맵을 생성할 수 있다.
단계(420)에서, 프로세서(320)는 영상의 평탄 비용(smoothness cost) 및 데이터 비용(data cost)에 기반하여 에너지 함수를 생성한다. 에너지 함수는 복수의 영상들 간의 픽셀들을 매칭하기 위해 이용되는 함수일 수 있다. 평탄 비용은 영상의 픽셀 을 중심으로 하는 블록 및 상기의 블록의 주변 블록들 간의 디스패리티 구조의 유사성에 기반하여 계산될 수 있다. 경우에 따라, 블록의 영역 및 주변 블록들의 영역은 서로 겹칠 수 있다. 디스패리티 구조는 컬러 영상의 기하학적 구조에 따라 나타나는 디스패리티 맵의 구조일 수 있다. 데이터 비용은 영상의 디스패리티 값에 따라 영상들 간에 매칭된 픽셀들의 픽셀 값에 기반하여 계산될 수 있다.
프로세서(320)는 에너지 함수를 이용하여 추정된 복수의 영상들 간의 픽셀들을 매칭에 대한 비용을 계산할 수 있다. 프로세서(320)는 계산된 에너지 함수의 값이 최소가 될 때의 픽셀들의 매칭을 매칭 결과로 출력할 수 있다.
예를 들어, 에너지 함수는 아래의 [수학식 1]일 수 있다.
Figure pat00001
N은 영상에 포함된 픽셀의 개수이고, d1 내지 dN은 영상에 포함된 각각의 픽셀의 디스패리티 값이다.
Figure pat00002
는 영상의 에너지 함수이고,
Figure pat00003
는 영상의 데이터 비용이고,
Figure pat00004
는 영상의 평탄 비용이고,
Figure pat00005
는 데이터 비용 및 평탄 비용의 비율을 조정하는 파라미터이다.
예를 들어, 데이터 비용은 아래의 [수학식 2]를 이용하여 계산될 수 있다.
Figure pat00006
Il m은 왼쪽 영상의 픽셀 m의 컬러 값을 나타내고, Ir m-dm은 왼쪽 영상의 픽셀 m에 대응하는 오른쪽 영상의 픽셀 m-dm의 컬러 값을 나타낸다.
Figure pat00007
는 왼쪽 영상의 픽셀 m의 컬러 값 및 픽셀 m에 대응하는 오른쪽 영상의 픽셀 m-dm의 컬러 값 간의 상이도를 나타낸다.
Figure pat00008
는 아래의 [수학식 3]를 이용하여 계산될 수 있다.
Figure pat00009
픽셀들 간의 상이도는 대응하는 픽셀들의 각 컬러 값 간의 차이를 이용하여 계산될 수 있다. σ는 미리 설정된 상수일 수 있다.
평탄 비용은 영상의 특정 픽셀을 중심으로 하는 블록 및 상기의 블록의 주변 블록들 간의 디스패리티 구조의 유사성에 기반하여 계산될 수 있다. 예를 들어, 프로세서(320)는 왼쪽 영상에 대한 평탄 비용을 아래와 같이 계산할 수 있다. 왼쪽 영상의 각 픽셀에 대하여, 픽셀을 중심으로 하는 블록을 설정하고, 상기의 블록과 기하학적으로 유사한 주변 블록들을 검출할 수 있다. 프로세서(320)는블록 및 주변 블록들을 그룹화하고, 미리 정한 임계치 내에서 그룹의 블록들을 근사화할 수 있는 최소의 랭크(rank)를 계산할 수 있다. 랭크는 블록들의 공통 특성일 수 있다. 프로세서(320)는 왼쪽 영상의 모든 픽셀들에 대하여 계산된 랭크 값들을 합산하여 왼쪽 영상의 평탄 비용을 계산할 수 있다.
에너지 함수, 평탄 비용 및 데이터 비용에 대해, 아래에서 도 5 내지 도 10을 참조하여 상세히 설명된다.
단계(430)에서, 프로세서(320)는 에너지 함수의 값이 최소가 되도록 영상들 간의 픽셀들을 서로 매칭한다. 프로세서(320)는 에너지 함수의 데이터 비용 및 에너지 함수의 평탄 비용의 합이 최소가 되도록 영상들 간의 픽셀들을 서로 매칭할 수 있다. 예를 들어, 프로세서(320)는 추정된 매칭 관계에 대한 비용을 계산하고, 매칭 결과가 만족스럽지 않은 경우 반복적으로 매칭 관계를 추정할 수 있다.
일 측면에 따르면, 프로세서(320)는 코디네이트 데상트 알고리즘(coordinate descent algorithms)에 기반하여 에너지 함수의 값이 최소가 되도록 영상들 간의 픽셀들을 서로 매칭할 수 있다. 코디네이트 데상트 알고리즘을 이용하여 영상들 간의 픽셀들을 서로 매칭하는 방법에 대해, 아래에서 도 5 내지 도 10을 참조하여 상세히 설명한다.
단계(440)에서, 프로세서(320)는 매칭된 픽셀들에 기반하여 복수의 영상들 중 적어도 하나의 영상의 디스패리티 맵을 생성한다. 예를 들어, 프로세서(320)는 초기 디스패리티 맵의 디스패리티 값을 픽셀들의 매칭 결과에 기반하여 조정함으로써 디스패리티 맵을 생성할 수 있다.
도 5는 일 예에 따른 영상들 간의 픽셀들을 매칭하는 방법의 흐름도이다.
일 측면에 따르면, 영상들 간의 픽셀들을 매칭하기 위해 코디네이트 데상트 알고리즘이 이용될 수 있다. 프로세서(320)는 코디네이트 데상트 알고리즘을 이용하여 에너지 함수의 국부적 최소 값(local minimum value)을 찾을 수 있다. 국부적 최소 값은 전역적 최소 값(global minimum value)과 상이할 수 있으나, 사용자가 만족할 만한 결과일 수 있다. 에너지 함수의 국부적 최소 값을 찾기 위해 에너지 함수가 변형될 수 있다. 에너지 함수에서 변수(dm)가 변수들(dm 및 tm)로 분할되어 표현될 수 있다. 예를 들어, 에너지 함수가 아래의 [수학식 4]로 변형될 수 있다.
Figure pat00010
t1 내지 tN은, 데이터 비용에 대한 변수 및 평탄 비용에 대한 변수를 각각 분리하기 위해 d1 내지 dN과 다른 변수로 정의된다.
Figure pat00011
는 변형된 에너지 함수이다.
Figure pat00012
에서 β는 미리 설정된 상수이고, β가 0이 되는 경우 분할된 변수들(dm 및 tm)은 원래 서로 같음을 나타낼 수 있다. 변형된 에너지 함수
Figure pat00013
를 분리된 변수들(t1 내지 tN 및 d1 내지 dN)에 대해 최소화하는 것은, 원래의 에너지 함수
Figure pat00014
에 대해 최소화하는 것과 동일할 수 있다. 도 4에서 전술된 단계(420)에서, 프로세서(320)는 원래의 에너지 함수를 변형한 에너지 함수를 생성할 수 있다.
코디네이트 데상트 알고리즘은 변수(d1 내지 dN)를 고정 값으로 설정하고, 변수(t1 내지 tN)에 대한 값을 최소화한 후, 변수(t1 내지 tN)를 고정 값으로 설정하고, 변수(d1 내지 dN)에 대한 값을 최소화하는 과정일 수 있다. 상기의 과정은 에너지 함수의 국부적 최소 값이 결정될 때까지 반복적으로 수행될 수 있다. 예를 들어, 국부적 최소 값은 상기의 과정의 반복이 미리 정해진 횟수만큼 수행된 경우의 값일 수 있다. 다른 예로, 계산된 에너지 함수의 값이 동일하게 반복되는 경우, 계산된 에너지 함수의 값이 국부적 최소 값으로 결정될 수 있다.
변수가 분할된 에너지 함수의 값을 계산하기 위해, 라그랑지(Lagrange) 변수를 포함하는 증가된 라그랑지 방법(Augmented Lagrange Method), ADMM(Alternating Direction Method of Multipliers) 및 분리된 브레그만 방법(Split Bregman Method) 중 적어도 하나가 이용될 수 있다.
도 4를 참조하여 전술된 단계(430)는 아래의 단계들(510 내지 540)을 포함할 수 있다.
단계(510)에서, 프로세서(320)는 에너지 함수의 평탄 비용을 최소화할 수 있다. 프로세서(320)는 전술된 [수학식 4]의 에너지 함수에서 데이터 비용에 관한 변수(d1 내지 dN)를 상수로 설정하고, 데이터 비용에 관한 변수(t1 내지 tN)에 대한 에너지 함수의 값을 최소화할 수 있다. 데이터 비용에 대한 부분을 상수로 설정하고, 평탄 비용을 최소화하는 함수는 아래의 [수학식 5]일 수 있다.
Figure pat00015
함수
Figure pat00016
는 데이터 비용에 대한 부분이 상수로 설정된 평탄 비용에 대한 에너지 함수일 수 있다. 상기의 함수에서
Figure pat00017
부분은 데이터 비용에 해당할 수 있다. 상기의 부분은 표준편차가
Figure pat00018
인 가산성 백색 가우시안 잡음(Additive White Gaussian Noise; AWGN)에 의해 왜곡된 영상의 잡음 제거를 위한 데이터 비용과 동일하게 취급될 수 있다. 영상의 잡음 제거에 이용되는 임의의 알고리즘이 평탄 비용을 최소화하기 위해 이용될 수 있다. 평탄 비용을 최소화하는 것은, 평탄 비용을 최소화하는 각 픽셀 m에 대한, 디스패리티 값 dm을 찾는 것일 수 있다.
일 측면에 따르면, 영상 내의 유사한 기하학적 구조를 갖는 블록들의 저-랭크(low-rank) 특성을 이용하여 평탄 비용이 최소화될 수 있다. 프로세서(320)는 상기의 블록들을 협력적 필터링(collaborative filtering)하여 평탄 비용을 최소화할 수 있다. 블록들을 협력적 필터링하여 평탄 비용을 최소화하는 방법에 대해, 아래에서 도 6 및 도 10을 참조하여 상세히 설명된다.
단계(520)에서, 프로세서(320)는 에너지 함수의 데이터 비용을 최소화할 수 있다. 프로세서(320)는 전술된 [수학식 4]의 에너지 함수에서 평탄 비용에 관한 변수(t1 내지 tN)를 상수로 설정하고, 평탄 비용에 관한 변수(d1 내지 dN)에 대한 에너지 함수의 값을 최소화할 수 있다. 평탄 비용에 대한 부분을 상수로 설정하고, 데이터 비용을 최소화하는 함수는 아래의 [수학식 6]일 수 있다
Figure pat00019
함수
Figure pat00020
는 평탄 비용에 대한 부분이 상수로 설정된 데이터 비용에 대한 에너지 함수일 수 있다
예를 들어, 데이터 비용에 대해 [수학식 2]가 이용되는 경우, [수학식 6]이 아래의 [수학식 7]로 변형될 수 있다.
Figure pat00021
프로세서(320)는 영상의 각 픽셀별로
Figure pat00022
의 값을 최소화하는 dm의 값을 결정할 수 있다.
다른 예로, 프로세서(320)는 데이터 비용을 최소화하기 위해, 왼쪽 영상의 디스패리티 맵 및 오른쪽 영상의 디스패리티 맵 간의 합치성(consistence)를 고려할 수 있다. 디스패리티 맵들 간의 합치성을 고려하기 위해, 프로세서(320)는 디스패리티 맵들을 동시에 추정할 수 있다. 디스패리티 맵들이 동시에 추정되는 경우, 단계(410)에서 프로세서(320)는 왼쪽 영상에 대한 디스패리티 값 및 오른쪽 영상에 대한 디스패리티 값을 초기화할 수 있다. 단계(420)에서 프로세서(320)는 에너지 함수를 아래의 [수학식 8]과 같이 생성할 수 있다.
Figure pat00023
dl 1 내지 dl N는 왼쪽 영상에 포함된 각각의 픽셀의 디스패리티 값이고, dr 1 내지 dr N는 오른쪽 영상에 포함된 각각의 픽셀의 디스패리티 값이다. 에너지 함수에서 변수(dl m)가 변수들(dl m 및 tl m)로 분할되어 표현되고, 변수(dr m)가 변수들(dr m 및 tr m)로 분할되어 표현될 수 있다. 예를 들어, 에너지 함수가 아래의 [수학식 9]로 변형될 수 있다.
Figure pat00024
프로세서(320)는 전술된 [수학식 9]의 에너지 함수에서 평탄 비용에 관한 변수(tl 1 내지 tl N 및 tr 1 내지 tr N)를 상수로 설정하고, 데이터 비용에 관한 변수(dl 1 내지 dl N 및 dr 1 내지 dr N)에 대한 에너지 함수의 값을 최소화할 수 있다. 평탄 비용에 대한 부분을 상수로 설정하고, 데이터 비용을 최소화하는 함수는 아래의 [수학식 10]일 수 있다.
Figure pat00025
데이터 비용
Figure pat00026
는 왼쪽 영상의 픽셀 m은 오른쪽 영상의 픽셀 m-dl m과의 기하학적 구조를 이용하여 계산될 수 있다. 데이터 비용은 영상들(왼쪽 영상 및 오른쪽 영상)의 전체 픽셀에 대해 계산될 수 있다. 대응하는 픽셀들 간의 기하학적 구조를 이용하여 데이터 비용을 계산하는 방법은 아래의 [수학식 11]를 이용하여 계산될 수 있다. 기하학적 구조는 폐색(occluded), 매치(match) 및 불일치(inconsistent)를 포함할 수 있다.
Figure pat00027
Figure pat00028
은 왼쪽 영상의 픽셀 m의 디스패리티 값이고,
Figure pat00029
은 픽셀 m과 대응하는 오른쪽 영상의 픽셀 m-dl m의 디스패리티 값일 수 있다.
Figure pat00030
의 값이
Figure pat00031
의 값에 비해 더 작은 경우, 왼쪽 영상의 픽셀 m은 오른쪽 영상의 픽셀 m-dl m과 폐색된 것으로 판단될 수 있다. 이 경우, 픽셀 m에 대한 데이터 비용은 미리 정해진 값인 Co로 할당될 수 있다.
Figure pat00032
의 값이
Figure pat00033
의 값에 비해 더 큰 경우, 왼쪽 영상의 픽셀 m은 오른쪽 영상의 픽셀 m-dl m과 불일치된 것으로 판단될 수 있다. 이 경우, 픽셀 m에 대한 데이터 비용은 미리 정해진 값인 Ci로 할당될 수 있다. 이상적으로 Ci는 무한대의 값 이지만, 알고리즘으로 구현하기 위해 유한한 상수로 설정될 수 있다.
데이터 비용을 계산하기 위해 메시지 패싱(message passing) 알고리즘, 그래프 커트(graph cut) 알고리즘 또는 평균 장 점근법(mean field approximation)이 이용될 수 있다.
단계(510)가 수행된 후에, 단계(520)가 수행되는 것으로 설명 및 도시 되었으나, 실시예에 따라 단계(520)는 단계(510)가 수행되기 전에 수행될 수 있다. 단계들(510 및 520)은 왼쪽 영상의 픽셀 및 오른쪽 영상의 픽셀을 매칭하고, 매칭된 관계들의 비용을 계산하는 단계일 수 있다.
단계(530)에서, 프로세서(320)는 미리 설정된 조건이 만족되었는지 여부를 판단할 수 있다. 예를 들어, 미리 설정된 조건은 에너지 함수의 값이 이전에 계산된 에너지 함수의 값과 동일한지 여부일 수 있다. 다른 예로, 미리 설정된 조건은 픽셀들을 매칭하는 단계(510 및 520)의 수행된 횟수가 미리 설정된 횟수에 도달했는지 여부일 수 있다.
단계(540)에서, 프로세서(320)는 미리 설정된 조건이 만족되지 않은 경우, 에너지 함수의 하나 이상의 파라미터를 조정할 수 있다. 예를 들어, 프로세서(320)는 [수학식 4]의 파라미터 β를 조정할 수 있다. 단계(430)가 재수행되는 경우 파라미터 β가 감소되는 방향으로 조정될 수 있다.
단계들(510 내지 540)이 반복적으로 수행됨으로써 에너지 함수의 국부 최소 값이 결정될 수 있다.
도 6은 일 예에 따른 평탄 비용을 최소화하는 방법의 흐름도이다.
도 5를 참조하여 전술된 단계(510)는 아래의 단계들(610 내지 630)을 포함할 수 있다. 프로세서(320)는 영상 내의 기하학적 구조가 유사한 블록들을 협력적 필터링하여 영상의 평탄 비용을 계산할 수 있다.
단계(610)에서, 프로세서(320)는 영상의 픽셀을 중심으로 하는 블록을 생성할 수 있다. 블록은 패치일 수 있고, 블록의 크기는 미리 설정될 수 있다. 예를 들어, 블록의 크기는 15 x 15일 수 있다.
단계(620)에서, 프로세서(320)는 생성된 블록과 영상 내에 유사한 기하학적 구조를 갖는 하나 이상의 주변 블록들을 검출할 수 있다. 주변 블록의 크기는 블록의 크기와 동일할 수 있다. 기하학적 구조는 블록의 텍스쳐일 수 있다. 텍스쳐는 엣지(edge) 및 코너(coner) 중 적어도 하나를 포함할 수 있다. 예를 들어, 프로세서(320)는 블록의 엣지의 그래디언트(gradient)를 계산하고, 유사한 그래디언트를 갖는 주변 블록들을 검출할 수 있다. 프로세서(320)는 주변 블록들을 검출하기 위해 BM3D(Block-Matching and 3-D Filtering) 알고리즘 중 블록 매칭(Block Matching)의 루틴(routine)을 이용할 수 있다.
단계(630)에서, 프로세서(320)는 블록 및 주변 블록들을 협력적 필터링하여 블록들을 그룹화하기 위한 랭크를 결정할 수 있다. 그룹의 블록들은 저-랭크 특성에 기반하여 모형화될 수 있다. 블록들의 모형화에 대해, 아래에서 도 10을 참조하여 상세히 설명된다.
프로세서(320)는 저-랭크 모형에 기반하여 평탄 비용을 최소화할 수 있다. 예를 들어, 프로세서(320)는 매칭된 픽셀들에 대한 평탄 비용을 계산하고, 평탄 비용을 최소화하도록 픽셀들을 매칭할 수 있다.
도 7은 일 예에 따른 컬러 영상이다.
컬러 영상(700)은 배경 영역(710), 전경 영역(730) 및 오브젝트(740)을 포함할 수 있다. 예를 들어, 전경 영역(730)은 테이블 일 수 있고, 전경 영역(730)은 촬영 시점으로부터 점차 멀어질 수 있다. 오브젝트(740)는 전경 영역(730) 위에 놓여질 수 있다. 전경 영역(730) 및 오브젝트(740) 간의 경계는 유사한 기하학적 구조를 형성할 수 있다.
프로세서(320)는 전경 영역(730) 및 오브젝트(740) 간의 경계에서 유사한 기하학적 구조를 갖는 블록들(741 내지 745)을 검출할 수 있다.
도 8은 일 예에 따른 디스패리티 맵이다.
디스패리티 맵(800)은 컬러 영상(700)에 대응할 수 있다. 배경 영역의 디스패리티 영역(810)은 배경 영역(710)에 대응하고, 전경 영역의 디스패리티 영역(830)은 전경 영역(730)에 대응하고, 오브젝트의 디스패리티 영역(840)는 오브젝트(740)에 대응할 수 있다. 프로세서(320)는, 컬러 영상 내에서 검출된 블록들(741 내지 745)에 대응하는 블록들(841 내지 845)을 디스패리티 맵 내에서 검출할 수 있다. 도 6을 참조하여 설명된 단계(610)에서 검출된 블록들은 디스패리티 맵 내의 블록들일 수 잇다.
도 9는 일 예에 따른 유사한 기하학적 구조를 갖는 블록들을 도시한다.
블록들(841 내지 846)는 유사한 디스패리티 구조를 갖는 것으로 그룹화된 블록들일 수 있다. 블록(841)은 오브젝트 부분(902) 및 전경 부분(901)을 포함한다. 블록(842)은 오브젝트 부분(912) 및 전경 부분(911)을 포함한다. 블록(843)은 오브젝트 부분(922) 및 전경 부분(921)을 포함한다. 블록(844)은 오브젝트 부분(932) 및 전경 부분(931)을 포함한다. 블록(845)은 오브젝트 부분(942) 및 전경 부분(941)을 포함한다.
각 블록의 오브젝트 부분들(902, 912, 922, 932 및 942)은 깊이가 동일하므로 오브젝트 부분들(902, 912, 922, 932 및 942)의 디스패리티 값은 동일할 수 있다. 각 블록의 전경 부분들(901. 911, 912, 922 및 932)은 깊이가 서로 다르므로, 오브젝트 부분들(902, 912, 922, 932 및 942)의 디스패리티 값은 서로 다를 수 있다. 예를 들어, 전경 부분(901)의 깊이가 가장 얕을 수 있고, 전경 부분(941)의 깊이가 가장 깊을 수 있다.
도 10은 일 예에 따른 낮은 랭크로 유사한 블록들의 관계를 나타내는 방법을 도시한다.
블록들(841 내지 845)은 유사한 기하학적 구조를 갖기 때문에, 블록들은 구조에 따라 적은 개수의 특성들로 분류될 수 있다. 예를 들어, 프로세서(320)는 블록들(841 내지 845)을 전경 부분 및 오브젝트 부분을 재구성하여 하나 이상의 공통된 특성들(1020 및 1040)로 구분하여 나타낼 수 있다.
공통된 특성들(1020 및 1040)이 고정된 값으로 표현될 수 있다. 예를 들어, 특성(1020)은 오브젝트의 디스패리티 값 및 전경 영역의 디스패리티 값의 평균일 수 있고, 특성(1040)은 오브젝트의 디스패리티 값 및 전경 영역의 디스패리티 값 간의 차이일 수 있다. 공통된 특성이 랭크로 표현될 수 있다.
특성들(1020 및 1040)에 대한 값들(1010 및 1030)이 크기로 표현될 수 있다. 예를 들어, 크기(1010)는 특성(1020)에 대한 값이고, 크기(1030)는 특성(1040)에 대한 값일 수 있다. 블록들(841 내지 845)은 각 특성에 대해 각각 다른 크기를 가질 수 있다. 예를 들어, 블록들(841 내지 845)은 특성(1020)에 대해 각각 다른 크기(1010)를 가질 수 있고, 특성(1040)에 대해 각각 다른 크기(1030)를 가질 수 있다.
도 10에서 도시된 블록들(841 내지 845)의 표현 방법은 매트릭스(matrix)로 변형될 수 있다. 예를 들어, 블록들(841 내지 845)의 개수가 5이고, 특성(랭크)들의 개수가 2이고, 각 블록에 포함된 픽셀들의 개수가 100인 경우, 블록들(841 내지 845)을 나타내는 매트릭스는 (100x2)*(2x5)의 크기로 생성될 수 있다.
블록들(841 내지 845)의 디스패리티 구조가 유사하기 때문에, 생성된 매트릭스는 저-랭크 매트릭스 일 수 있다. 상기의 매트릭스를 생성하는 방법은 협력적 필터링일 수 있다. 프로세서(320)는 전술된 잡음 제어 알고리즘에 기반하여 매트릭스를 처리할 수 있다. 프로세서(320)는 매트릭스를 처리하여 저-랭크로 근사화함으로써 해당 픽셀에 대하여 평탄화된 디스패리티 값을 결정할 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
 이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
300: 스테레오 영상 매칭 장치
310: 통신부
320: 프로세서
330: 저장부

Claims (20)

  1. 서로 다른 시점을 갖는 두 개의 영상들 중 적어도 하나의 영상에 대한 디스패리티(disparity) 값을 초기화하는 단계;
    상기 영상의 평탄 비용(smoothness cost) 및 데이터 비용(data cost)에 기반하여 에너지 함수를 생성하는 단계; 및
    상기 에너지 함수의 값이 최소가 되도록 상기 영상들 간의 픽셀들을 서로 매칭하는 단계
    를 포함하고,
    상기 평탄 비용은 상기 영상의 픽셀을 중심으로 하는 블록 및 상기 블록의 하나 이상의 주변 블록들 간의 디스패리티 구조의 유사성에 기반하여 계산되고,
    상기 데이터 비용은 상기 영상의 디스패리티 값에 따라 상기 영상들 간에 매칭된 픽셀들의 픽셀 값에 기반하여 계산되는,
    스테레오 영상 매칭 방법.
  2. 제1항에 있어서,
    상기 디스패리티 값을 초기화하는 단계는,
    초기 디스패리티 맵(initial disparity map)을 생성하는 단계
    를 포함하는,
    스테레오 영상 매칭 방법.
  3. 제1항에 있어서,
    상기 매칭된 픽셀들에 기반하여 상기 영상의 디스패리티 맵을 생성하는 단계
    를 더 포함하는,
    스테레오 영상 매칭 방법.
  4. 제1항에 있어서,
    상기 영상들 간의 픽셀들을 서로 매칭하는 단계는,
    코디네이트 데상트 알고리즘(coordinate descent algorithms)에 기반하여 상기 에너지 함수의 값이 최소가 되도록 상기 영상들 간의 픽셀들을 서로 매칭하는 단계인,
    스테레오 영상 매칭 방법.
  5. 제1항에 있어서,
    상기 영상들 간의 픽셀들을 서로 매칭하는 단계는,
    상기 에너지 함수의 평탄 비용을 최소화하는 단계;
    상기 에너지 함수의 데이터 비용을 최소화하는 단계; 및
    미리 설정된 조건이 만족되었는지 여부를 판단하는 단계
    를 포함하는,
    스테레오 영상 매칭 방법.
  6. 제5항에 있어서,
    상기 영상들 간의 픽셀들을 서로 매칭하는 단계는,
    상기 조건이 만족되지 않은 경우, 상기 에너지 함수의 하나 이상의 파라미터를 조정하는 단계
    를 더 포함하는,
    스테레오 영상 매칭 방법.
  7. 제5항에 있어서,
    상기 조건은 상기 에너지 함수의 값이 이전에 계산된 에너지 함수의 값과 동일한지 여부인,
    스테레오 영상 매칭 방법.
  8. 제5항에 있어서,
    상기 조건은 상기 매칭하는 단계의 수행된 횟수가 미리 설정된 횟수에 도달했는지 여부인,
    스테레오 영상 매칭 방법.
  9. 제5항에 있어서,
    상기 평탄 비용을 최소화하는 단계는,
    잡음 제거 알고리즘에 기반하여 상기 평탄 비용을 최소화하는 단계인,
    스테레오 영상 매칭 방법.
  10. 제5항에 있어서,
    상기 평탄 비용을 최소화하는 단계는,
    상기 픽셀을 중심으로 하는 상기 블록을 생성하는 단계;
    상기 블록과 상기 영상 내에 유사한 기하학적 구조를 갖는 상기 주변 블록들을 검출하는 단계; 및
    상기 블록 및 상기 주변 블록들을 협력적 필터링(collaborative filtering)하여 상기 평탄 비용을 최소화하는 단계
    를 포함하는,
    스테레오 영상 매칭 방법.
  11. 제1항에 있어서,
    상기 적어도 하나의 영상의 디스패리티 값을 초기화하는 단계는,
    상기 영상들 각각의 디스패리티 값을 초기화하는 단계이고,
    상기 데이터 비용은 상기 영상들의 전체 픽셀에 대해 계산되는,
    스테레오 영상 매칭 방법.
  12. 제11항에 있어서,
    상기 데이터 비용은 대응하는 픽셀들 간의 기하학적 구조에 기반하여 계산되는,
    스테레오 영상 매칭 방법.
  13. 제1항 내지 제12항 중 어느 한 항의 방법을 수행하는 프로그램을 기록한 컴퓨터 판독 가능 기록 매체.
  14. 서로 다른 시점을 갖는 두 개의 영상들을 저장하는 저장부; 및
    상기 영상들 중 적어도 하나의 영상의 디스패리티(disparity) 값을 초기화하고, 상기 영상의 평탄 비용(smoothness cost) 및 데이터 비용(data cost)에 기반하여 에너지 함수를 생성하고, 상기 에너지 함수의 값이 최소가 되도록 상기 영상들 간의 픽셀들을 서로 매칭하는 프로세서
    를 포함하고,
    상기 평탄 비용은 상기 영상의 픽셀을 중심으로 하는 블록 및 상기 블록의 하나 이상의 주변 블록들 간의 디스패리티 구조의 유사성에 기반하여 계산되고,
    상기 데이터 비용은 상기 영상의 디스패리티 값에 따라 상기 영상들 간에 매칭된 픽셀들의 픽셀 값에 기반하여 계산되는,
    스테레오 영상 매칭 장치.
  15. 제14항에 있어서,
    상기 프로세서는 초기 변위 맵(initial disparity map)을 생성하는,
    스테레오 영상 매칭 장치.
  16. 제14항에 있어서,
    상기 프로세서는 매칭된 픽셀들에 기반하여 상기 영상의 디스패리티 맵을 생성하는,
    스테레오 영상 매칭 장치.
  17. 제14항에 있어서,
    상기 프로세서는 코디네이트 데상트 알고리즘(coordinate descent algorithms)에 기반하여 상기 에너지 함수의 값이 최소가 되도록 상기 영상들 간의 픽셀들을 서로 매칭하는,
    스테레오 영상 매칭 장치.
  18. 제14항에 있어서,
    상기 프로세서는 상기 영상들 간의 픽셀들을 서로 매칭하기 위해, 상기 에너지 함수의 평탄 비용을 최소화하고, 상기 에너지 함수의 데이터 비용을 최소화하고, 미리 설정된 조건이 만족되었는지 여부를 판단하는,
    스테레오 영상 매칭 장치.
  19. 제18항에 있어서,
    상기 프로세서는 잡음 제거 알고리즘에 기반하여 상기 평탄 비용을 최소화하는,
    스테레오 영상 매칭 장치.
  20. 제18항에 있어서
    상기 프로세서는 상기 픽셀을 중심으로 하는 상기 블록을 생성하고, 상기 블록과 상기 영상 내에 유사한 기하학적 구조를 갖는 블록들을 검출하고, 상기 블록 및 상기 주변 블록들을 협력적 필터링(collaborative filtering)하여 상기 평탄 비용을 최소화하는,
    스테레오 영상 매칭 장치.
KR1020150178366A 2015-12-14 2015-12-14 스테레오 영상 매칭 방법 및 장치 KR102415505B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020150178366A KR102415505B1 (ko) 2015-12-14 2015-12-14 스테레오 영상 매칭 방법 및 장치
US15/358,744 US10430959B2 (en) 2015-12-14 2016-11-22 Method and apparatus for matching stereo images

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150178366A KR102415505B1 (ko) 2015-12-14 2015-12-14 스테레오 영상 매칭 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20170070620A true KR20170070620A (ko) 2017-06-22
KR102415505B1 KR102415505B1 (ko) 2022-07-01

Family

ID=59019844

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150178366A KR102415505B1 (ko) 2015-12-14 2015-12-14 스테레오 영상 매칭 방법 및 장치

Country Status (2)

Country Link
US (1) US10430959B2 (ko)
KR (1) KR102415505B1 (ko)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107886511A (zh) * 2017-11-28 2018-04-06 中国空气动力研究与发展中心计算空气动力研究所 一种风力机叶片表面损伤检测方法
TWI637350B (zh) * 2018-01-09 2018-10-01 緯創資通股份有限公司 產生視差圖的方法及其影像處理裝置與系統
US10878590B2 (en) * 2018-05-25 2020-12-29 Microsoft Technology Licensing, Llc Fusing disparity proposals in stereo matching
JP7023212B2 (ja) * 2018-10-29 2022-02-21 京セラ株式会社 画像処理装置、撮像装置、移動体および画像処理方法
US11763433B2 (en) * 2019-11-14 2023-09-19 Samsung Electronics Co., Ltd. Depth image generation method and device
US11427193B2 (en) 2020-01-22 2022-08-30 Nodar Inc. Methods and systems for providing depth maps with confidence estimates
JP7319003B2 (ja) 2020-01-22 2023-08-01 ノダー インコーポレイテッド 非剛性ステレオ・ビジョン・カメラ・システム
US11032530B1 (en) * 2020-05-15 2021-06-08 Microsoft Technology Licensing, Llc Gradual fallback from full parallax correction to planar reprojection
WO2023059365A1 (en) 2021-10-08 2023-04-13 Nodar Inc. Real-time perception system for small objects at long range for autonomous vehicles
US11782145B1 (en) 2022-06-14 2023-10-10 Nodar Inc. 3D vision system with automatically calibrated stereo vision sensors and LiDAR sensor

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6470097B1 (en) * 1999-01-22 2002-10-22 Siemens Corporation Research, Inc. Total variational blind image restoration from image sequences
US20070147696A1 (en) * 2005-12-28 2007-06-28 Karl William C Medical image processing
US20130169819A1 (en) * 2011-12-30 2013-07-04 Flir Systems Ab Image stabilization systems and methods
KR20130098109A (ko) * 2012-02-27 2013-09-04 삼성전자주식회사 가시성 에너지 모델을 이용한 변이 추정 장치 및 방법
US20150249791A1 (en) * 2014-02-28 2015-09-03 Gowri Somanath Mechanism for facilitating fast and efficient calculations for hybrid camera arrays

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8300085B2 (en) * 2005-10-14 2012-10-30 Microsoft Corporation Occlusion handling in stereo imaging
CA2524507A1 (en) 2005-10-26 2007-04-26 Coeurmetrics Inc Multi-sensor high-resolution extraction of heart sounds
KR101669840B1 (ko) * 2010-10-21 2016-10-28 삼성전자주식회사 다시점 비디오로부터 일관성 있는 변이를 추정하는 변이 추정 시스템 및 방법
US8670630B1 (en) 2010-12-09 2014-03-11 Google Inc. Fast randomized multi-scale energy minimization for image processing
US9070196B2 (en) * 2012-02-27 2015-06-30 Samsung Electronics Co., Ltd. Apparatus and method for estimating disparity using visibility energy model
US9135710B2 (en) 2012-11-30 2015-09-15 Adobe Systems Incorporated Depth map stereo correspondence techniques
CN103049892B (zh) 2013-01-27 2015-05-27 西安电子科技大学 基于相似块矩阵秩最小化的非局部图像去噪方法
US9076206B2 (en) 2013-03-12 2015-07-07 Uurmi Systems Private Limited Methods and systems for correcting distortions in multimedia content
KR101531755B1 (ko) 2013-05-10 2015-06-25 한국과학기술원 패치 기반 최소 랭크 정규화를 이용한 영상 재구성 방법 및 장치
KR102350232B1 (ko) 2014-11-20 2022-01-13 삼성전자주식회사 스테레오 영상 매칭 방법 및 장치
TWI744245B (zh) * 2015-08-19 2021-11-01 新加坡商海特根微光學公司 產生具有減少過度平滑之視差圖

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6470097B1 (en) * 1999-01-22 2002-10-22 Siemens Corporation Research, Inc. Total variational blind image restoration from image sequences
US20070147696A1 (en) * 2005-12-28 2007-06-28 Karl William C Medical image processing
US20130169819A1 (en) * 2011-12-30 2013-07-04 Flir Systems Ab Image stabilization systems and methods
KR20130098109A (ko) * 2012-02-27 2013-09-04 삼성전자주식회사 가시성 에너지 모델을 이용한 변이 추정 장치 및 방법
US20150249791A1 (en) * 2014-02-28 2015-09-03 Gowri Somanath Mechanism for facilitating fast and efficient calculations for hybrid camera arrays

Also Published As

Publication number Publication date
US10430959B2 (en) 2019-10-01
KR102415505B1 (ko) 2022-07-01
US20170169310A1 (en) 2017-06-15

Similar Documents

Publication Publication Date Title
KR102415505B1 (ko) 스테레오 영상 매칭 방법 및 장치
KR102350232B1 (ko) 스테레오 영상 매칭 방법 및 장치
JP5156837B2 (ja) 領域ベースのフィルタリングを使用する奥行マップ抽出のためのシステムおよび方法
US8755630B2 (en) Object pose recognition apparatus and object pose recognition method using the same
CN107025660B (zh) 一种确定双目动态视觉传感器图像视差的方法和装置
CN112116639B (zh) 一种图像配准方法、装置及电子设备和存储介质
CN107798704B (zh) 一种用于增强现实的实时图像叠加方法及装置
CN110971827B (zh) 人像模式拍摄方法、装置、终端设备和存储介质
US9070222B2 (en) Techniques for automating stereo settings for stereoscopic computer animation
WO2015048694A2 (en) Systems and methods for depth-assisted perspective distortion correction
US9253415B2 (en) Simulating tracking shots from image sequences
US9519956B2 (en) Processing stereo images
JP2018151689A (ja) 画像処理装置及びその制御方法、プログラム、記憶媒体
KR102049080B1 (ko) 영상 처리 장치 및 방법
CN106952247B (zh) 一种双摄像头终端及其图像处理方法和***
US20150379720A1 (en) Methods for converting two-dimensional images into three-dimensional images
CN103473743B (zh) 一种获取图像深度信息的方法
EP2600310B1 (en) System and method for performing depth estimation utilizing defocused pillbox images
JP2017021759A (ja) 画像処理装置、画像処理方法及びプログラム
JP2022515517A (ja) 画像深度推定方法および装置、電子機器、ならびに記憶媒体
JP5911292B2 (ja) 画像処理装置、撮像装置、画像処理方法、および、画像処理プログラム
US9171357B2 (en) Method, apparatus and computer-readable recording medium for refocusing photographed image
US11475629B2 (en) Method for 3D reconstruction of an object
CN109118427B (zh) 图像光效处理方法和装置、电子设备、存储介质
RU2580466C1 (ru) Устройство восстановления карты глубины сцены

Legal Events

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