KR20210134956A - 이미지에 대한 깊이 맵의 처리 - Google Patents

이미지에 대한 깊이 맵의 처리 Download PDF

Info

Publication number
KR20210134956A
KR20210134956A KR1020217031762A KR20217031762A KR20210134956A KR 20210134956 A KR20210134956 A KR 20210134956A KR 1020217031762 A KR1020217031762 A KR 1020217031762A KR 20217031762 A KR20217031762 A KR 20217031762A KR 20210134956 A KR20210134956 A KR 20210134956A
Authority
KR
South Korea
Prior art keywords
depth
depth map
image
value
location
Prior art date
Application number
KR1020217031762A
Other languages
English (en)
Inventor
크리스티안 바레캄프
기스트 바르톨로메우스 윌헬무스 다미아누스 반
Original Assignee
코닌클리케 필립스 엔.브이.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 코닌클리케 필립스 엔.브이. filed Critical 코닌클리케 필립스 엔.브이.
Publication of KR20210134956A publication Critical patent/KR20210134956A/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/50Image enhancement or restoration using two or more images, e.g. averaging or subtraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • 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/20004Adaptive image processing
    • G06T2207/20012Locally 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/20212Image combination
    • G06T2207/20221Image fusion; Image merging

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Processing Or Creating Images (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)
  • Ultra Sonic Daignosis Equipment (AREA)

Abstract

깊이 맵들을 처리하는 방법은 이미지들 및 대응하는 깊이 맵들을 수신하는 단계(301)를 포함한다. 대응하는 깊이 맵들 중 제1 깊이 맵의 깊이 값들은 대응하는 깊이 맵들 중 적어도 제2 깊이 맵의 깊이 값들에 기초하여 업데이트된다(303). 업데이트하는 단계는 다른 맵들로부터 결정된 후보 깊이 값들의 가중 조합에 기초한다. 제2 깊이 맵으로부터의 후보 깊이 값의 가중치는 업데이트되고 있는 깊이에 대응하는 제1 이미지 내의 픽셀 값과 업데이트되고 있는 깊이 값의 위치를 후보 깊이 값을 이용하여 제3 이미지에 투영함으로써 결정되는 위치에서의 제3 이미지 내의 픽셀 값 사이의 유사성에 기초하여 결정된다. 이 방법으로 더 일관성있는 깊이 맵들이 생성될 수 있다.

Description

이미지에 대한 깊이 맵의 처리
본 발명은 이미지에 대한 깊이 맵의 처리에 관한 것으로, 특히, 그러나 배타적이지 않게, 깊이 맵을 처리하여 가상 현실 애플리케이션을 위한 뷰 합성을 지원하는 것에 관한 것이다.
이미지 및 비디오 애플리케이션들의 다양성 및 범위는 최근 수년간, 비디오를 활용하고 소비하는 새로운 서비스들 및 방식들이 계속해서 개발되고 도입됨에 따라, 실질적으로 증가했다.
예를 들어, 점점 더 대중화되고 있는 하나의 서비스는 뷰어가 렌더링의 파라미터들을 변경하기 위해 시스템과 능동적으로 그리고 동적으로 상호작용할 수 있는 그러한 방식으로 이미지 시퀀스들을 제공하는 것이다. 많은 애플리케이션들에서의 매우 매력적인 특징은, 예를 들어 뷰어가 제시되고 있는 장면에서 움직이고 "둘러볼 수 있게"하는 것과 같은, 뷰어의 유효 뷰잉 위치(viewing position) 및 뷰잉 방향을 변경하는 능력이다.
그러한 특징은 구체적으로 가상 현실 경험이 사용자에게 제공될 수 있게 할 수 있다. 이것은 사용자가, 예컨대 가상 환경 내에서 (비교적) 자유롭게 주위를 이동하고 그의 위치 및 그가 보고 있는 곳을 동적으로 변경할 수 있게 할 수 있다. 전형적으로, 그러한 가상 현실 애플리케이션들은 장면의 3차원 모델에 기초하는데, 이때 모델은 특정한 요청된 뷰(view)를 제공하기 위해 동적으로 평가된다. 이러한 접근법은, 컴퓨터들 및 콘솔들에 대해, 1인칭 슈터의 카테고리에서와 같은, 예컨대 게임 애플리케이션들로부터 잘 알려져 있다.
특히 가상 현실 애플리케이션들에서, 제시되는 이미지가 3차원 이미지인 것이 또한 바람직하다. 실제로, 뷰어의 몰입을 최적화하기 위해, 전형적으로 사용자가 제시된 장면을 3차원 장면으로서 경험하는 것이 바람직하다. 실제로, 가상 현실 경험은 바람직하게는 사용자가 가상 세계에 대한 그/그녀 자신의 위치, 카메라 뷰포인트, 및 시간적 순간을 선택할 수 있게 해야 한다.
많은 가상 현실 애플리케이션들은 장면의 사전결정된 모델, 통상적으로 가상 세계의 인공 모델에 기초한다. 가상 현실 경험이 현실 세계 캡처에 기초하여 제공될 수 있는 것이 종종 바람직하다.
많은 시스템들에서, 예컨대 구체적으로 현실 세계 장면에 기초할 때, 장면의 이미지 표현이 제공되며, 여기서 이미지 표현은 장면 내의 하나 이상의 캡처 포인트들/뷰 포인트들에 대한 이미지들 및 깊이를 포함한다. 이미지 + 깊이 표현은 특히, 현실 세계 장면의 매우 효율적인 특성화를 제공하는데, 특성화는 현실 세계 장면의 캡처에 의해 생성하기에 상대적으로 용이할뿐만 아니라 또한 캡처된 것들과는 다른 뷰포인트들을 위한 뷰들을 합성하는 렌더러(renderer)에 매우 적합하다. 예를 들어, 렌더러는 현재 로컬 뷰어 포즈와 매칭되는 뷰들을 동적으로 생성하도록 배열될 수 있다. 예컨대, 뷰어 포즈는 동적으로 결정될 수 있고, 뷰들이 이 뷰어 포즈에 매칭되도록 이미지들 및 예컨대 제공된 깊이 맵들에 기초하여 동적으로 생성될 수 있다.
많은 실제 시스템들에서, 교정된 멀티-뷰 카메라 리그(rig)는 캡처된 장면에 대하여 상이한 관점들을 취하는 사용자를 위한 재생을 허용하는 데 사용될 수 있다. 애플리케이션들은 증강- 또는 가상-현실 헤드셋 상에서 스포츠 경기, 또는 캡처된 3D 장면의 재생 동안 개별 뷰포인트를 선택하는 것을 포함한다.
유 양(You Yang) 등은 "Cross-View Multi-Lateral Filter for Compressed MultiView Depth Video", IEEE TRANSACTIONS ON IMAGE PROCESSING., vol. 28, no. 1, 1 January 2019 (2019-01-01), pages 302-315, XP055614403, US ISSN: 1057-7149, DOI: 10.1109/TIP.2018.2867740"에서 깊이 압축을 갖는 비대칭 멀티뷰 비디오의 프레임워크 내의 압축된 깊이 맵들/비디오들의 품질을 개선하기 위한 크로스-뷰 멀티래터럴 필터링 기법을 개시한다. 이러한 방식을 통해, 왜곡된 깊이 맵은 상이한 시간-슬롯들의 현재 및 이웃 뷰포인트들로부터 선택된 비-로컬 후보들을 통해 향상된다. 구체적으로, 이 후보들은, 크로스-뷰의 물리적 및 의미적 교차관계, 공간적 및 시간적 프라이어들(priors)을 나타내는 매크로 수퍼 픽셀로 클러스터링된다.
울프 카타자(WOLFF KATJA) 등은 "Point Cloud Noise and Outlier Removal for ImageBased 3D Reconstruction, 2016 FOURTH INTERNATIONAL CONFERENCE ON 3D VISION (3DV), IEEE, 25 October 2016 (2016-10-25), pages 118-127, XP033027617, DOI: 10.1109/3DV.2016.20"에서 입력 이미지들 및 대응하는 깊이 맵들을 이용하여 입력에 의해 암시된 채색된 표면과 기하학적으로 또는 측광적으로 불일치하는 픽셀들을 제거하는 알고리즘을 개시한다. 이는 덜 매끄럽게 수행해서 더 높은 품질을 달성하는 표준 표면 재구성 방법들을 허용한다.
개별 캡쳐된 뷰-포인트들 사이의 매끄러운 전이, 및 캡쳐된 뷰-포인트들을 넘는 일부 외삽을 제공하기 위하여, 깊이 맵들이 종종 제공되고 이러한 다른 뷰포인트들로부터 뷰를 예측/합성하는 데 사용된다.
깊이 맵들은 통상적으로 캡처된 카메라들 사이의 (멀티-뷰) 스테레오 매칭을 이용하여 또는 더 직접적으로는 깊이 센서들(구조화된 광 또는 비행시간(time-of-flight) 기반)을 이용함으로써 생성된다. 그러나, 깊이 센서 또는 디스패리티 추정(disparity estimation) 프로세스로부터 획득된 이러한 깊이 맵들은 본질적으로 에러들 및 합성된 뷰에서 에러를 초래할 수 있는 부정확성들을 갖는다. 이는 뷰어의 경험을 저하시킨다.
따라서, 깊이 맵들을 생성하고 처리하기 위한 개선된 접근법이 유리할 것이다. 특히, 개선된 동작, 증가된 유연성, 개선된 가상 현실 경험, 감소된 복잡성, 용이해진 구현, 개선된 깊이 맵들, 증가된 합성 이미지 품질, 개선된 렌더링, 개선된 사용자 경험 및/또는 개선된 성능 및/또는 동작을 허용하는 시스템 및/또는 접근법이 유리할 것이다.
따라서, 본 발명은 전술된 단점들 중 하나 이상을 단독으로 또는 임의의 조합으로 바람직하게 완화하거나, 경감하거나 또는 제거하고자 한다.
본 발명의 양태에 따르면, 깊이 맵들을 처리하는 방법이 제공되며, 방법은: 상이한 뷰 포즈들로부터 장면을 표현하는 복수의 이미지들 및 대응하는 깊이 맵들을 수신하는 단계; 대응하는 깊이 맵들 중 적어도 제2 깊이 맵의 깊이 값들에 기초하여 대응하는 깊이 맵들 중 제1 깊이 맵의 깊이 값들을 업데이트하는 단계를 포함하고, 제1 깊이 맵은 제1 이미지에 대한 것이고 제2 깊이 맵은 제2 이미지에 대한 것이고, 업데이트하는 단계는: 제1 깊이 맵 내의 제1 깊이 맵 위치에서의 제1 깊이 맵의 제1 깊이 픽셀에 대한 제1 후보 깊이 값을 결정하는 단계로서, 제1 후보 깊이 값은 제2 깊이 맵 내의 제2 깊이 맵 위치에서의 제2 깊이 맵의 제2 깊이 픽셀의 적어도 하나의 제2 깊이 값에 응답하여 결정되는, 제1 후보 깊이 값을 결정하는 단계; 제1 깊이 맵 위치에 대한 복수의 후보 깊이 값들의 가중 조합에 의해 제1 깊이 픽셀에 대한 제1 깊이 값을 결정하는 단계로서, 가중 조합은 제1 가중치에 의해 가중된 제1 후보 깊이 값을 포함하는, 제1 깊이 값을 결정하는 단계를 포함하고; 제1 깊이 값을 결정하는 단계는: 제1 깊이 맵 위치에 대한 제1 이미지 내의 제1 이미지 위치를 결정하는 단계, 복수의 이미지들 중 제3 이미지 내의 제3 이미지 위치를 결정하는 단계로서, 제3 이미지 위치는 제1 후보 깊이 값에 기초하여 제3 이미지에 대한 제1 이미지 위치의 투영에 대응하는, 제3 이미지 위치를 결정하는 단계; 제3 이미지 위치에 대한 제3 이미지 내의 이미지 픽셀 값과 제1 이미지 위치에 대한 제1 이미지 내의 이미지 픽셀 값 사이의 차이를 나타내는 제1 매칭 에러 표시를 결정하는 단계, 및 제1 매칭 에러 표시에 응답하여 제1 가중치를 결정하는 단계를 포함한다.
접근법은 많은 실시예들에서 개선된 깊이 맵을 제공할 수 있고 특히 일관성이 증가된 깊이 맵들의 세트를 제공할 수 있다. 접근법은 이미지들이 이미지들 및 업데이트된 깊이 맵들에 기초하여 합성될 때 개선된 뷰 일관성을 허용할 수 있다.
본 발명자는 깊이 맵들 사이의 불일치가 종종 깊이 맵들 사이에서 일관성 있는 에러 또는 노이즈보다 더 인지가능할 수 있고, 특정 접근법이 더 일관성 있는 업데이트된 깊이 맵들을 제공할 수 있다는 통찰을 얻게 되었다. 방법은 장면의 멀티-뷰 이미지들의 세트에 대하여 깊이 맵들의 품질을 개선하는 깊이 개선 알고리즘으로서 사용될 수 있다.
접근법은 많은 실시예들에서 구현을 용이하게 할 수 있고, 상대적으로 낮은 복잡성 및 리소스 요건들을 갖도록 구현될 수 있다.
이미지 내의 위치는 대응하는 깊이 맵 내의 위치에 직접 대응할 수 있고, 그 반대도 마찬가지이다. 이미지 내의 위치와 대응하는 깊이 맵 내의 위치 사이에 1 대 1 대응이 있을 수 있다. 많은 실시예들에서, 픽셀 위치들은 이미지 및 대응하는 깊이 맵들에서 동일할 수 있고, 대응하는 깊이 맵은 이미지 내의 각각의 픽셀에 대하여 하나의 픽셀을 포함할 수 있다.
일부 실시예들에서, 가중치들은 이진수(예컨대 1 또는 0)일 수 있고 가중 조합은 선택일 수 있다.
용어 투영은 종종 이미지 또는 깊이 맵 내의 2차원 이미지 좌표들(u,v)에 대한 장면 내의 3차원 공간 좌표의 투영을 지칭할 수 있음이 이해될 것이다. 그러나, 투영은 또한 하나의 이미지 또는 깊이 맵으로부터 다른 이미지 또는 깊이 맵으로의, 즉 하나의 포즈에 대한 하나의 이미지 좌표들(u1,v1)의 세트로부터 다른 포즈에 대한 다른 이미지 좌표들(u2,v2)의 세트로의 장면 포인트에 대한 차원적 이미지 좌표들(u,v) 사이의 맵핑을 지칭할 수 있다. 상이한 뷰 포즈들/ 위치들에 대응하는 이미지들에 대한 이미지 좌표들 사이의 이러한 투영은 통상적으로 대응하는 공간적 장면 포인트를 고려하고, 구체적으로 장면 포인트의 깊이를 고려함으로써 수행된다.
일부 실시예들에서, 제1 깊이 값을 결정하는 단계는: 대응하는 깊이 맵들 중 제3 깊이 맵 내의 제3 깊이 맵 위치로 제1 깊이 맵 위치를 투영하는 단계로서, 제3 깊이 맵은 제3 이미지를 위한 것이고 투영하는 단계는 제1 후보 깊이 값에 기초하는, 제1 깊이 맵 위치를 투영하는 단계, 제3 깊이 맵 위치에 대한 제3 이미지 내의 이미지 픽셀 값과 제1 깊이 맵 위치에 대한 제1 이미지 내의 이미지 픽셀 값 사이의 차이를 나타내는 제1 매칭 에러 표시를 결정하는 단계, 및 제1 매칭 에러 표시에 응답하여 제1 가중치를 결정하는 단계를 포함한다.
본 발명의 선택적인 특징부를 따라, 제1 후보 깊이 값을 결정하는 단계는 제2 값 및 제1 깊이 맵의 제1 원래 깊이 값 중 적어도 하나에 기초하여 제1 이미지의 제1 뷰 포즈와 제2 이미지의 제2 뷰 포즈 사이의 투영에 의한 제1 깊이 맵 위치에 대한 제2 깊이 맵 위치를 결정하는 단계를 포함한다.
이는 많은 실시예들에서 특히 유리한 성과를 제공할 수 있고, 많은 시나리오들에서 구체적으로 개선된 일관성을 갖는 개선된 깊이 맵들을 허용할 수 있다.
투영은 제1 원래 깊이 값에 기초하여, 제2 깊이 맵 위치로부터 제1 깊이 맵 위치에 대한 것일 수 있고, 그리고 제2 뷰 포즈로부터 제1 뷰 포즈에 대한 것일 수 있다.
투영은 제2 깊이 값에 기초하여, 제2 깊이 맵 위치로부터 제1 깊이 맵 위치에 대한 것일 수 있고, 그리고 제2 뷰 포즈로부터 제1 뷰 포즈에 대한 것일 수 있다.
원래 깊이 값은 제1 깊이 맵의 업데이트되지 않은 깊이 값일 수 있다.
원래 깊이 값은 수신기에 의해 수신된 바와 같이 제1 깊이 맵의 깊이 값일 수 있다.
일부 실시예들에서, 제1 깊이 값을 결정하는 단계는: 대응하는 깊이 맵들 중 제3 깊이 맵 내의 제3 깊이 맵 위치로 제1 깊이 맵 위치를 투영하는 단계로서, 제3 깊이 맵은 제3 이미지를 위한 것이고 투영하는 단계는 제1 후보 깊이 값에 기초하는, 제1 깊이 맵 위치를 투영하는 단계, 제3 깊이 맵 위치에 대한 제3 이미지 내의 이미지 픽셀 값과 제1 깊이 맵 위치에 대한 제1 이미지 내의 이미지 픽셀 값 사이의 차이를 나타내는 제1 매칭 에러 표시를 결정하는 단계, 및 제1 매칭 에러 표시에 응답하여 제1 가중치를 결정하는 단계를 포함한다.
본 발명의 선택적인 특징부를 따라, 가중 조합은 제1 깊이 맵 위치에 응답하여 결정된 제2 깊이 맵의 지역으로부터 결정된 후보 깊이 값들을 포함한다.
이는 많은 실시예들에서 증가된 깊이 맵 일관성을 제공할 수 있다. 제1 후보 깊이 값은 지역의 하나 이상의 깊이 값들로부터 도출될 수 있다.
본 발명의 선택적인 특징부를 따라, 제2 깊이 맵의 지역은 제2 깊이 맵 위치 주위의 지역으로서 결정되고, 제2 깊이 맵 위치는 제1 깊이 맵 내의 제1 깊이 맵 위치와 동일한 제2 깊이 맵 내의 깊이 맵 위치로서 결정된다.
이는 낮은 복잡성 및 낮은 리소스를 허용할 수 있지만, 고려하기에 적합한 깊이 값들의 효율적인 결정을 허용할 수 있다.
본 발명의 선택적인 특징부를 따라, 제2 깊이 맵의 지역은 제1 깊이 맵 위치에서의 제1 깊이 맵 내의 원래 깊이 값에 기초하여 제1 깊이 맵 위치로부터의 투영에 의해 결정된 제2 깊이 맵 내의 위치 주위의 지역으로서 결정된다.
이는 많은 실시예들에서 증가된 깊이 맵 일관성을 제공할 수 있다. 원래 깊이 값은 수신기에 의해 수신된 바와 같이 제1 깊이 맵의 깊이 값일 수 있다.
본 발명의 선택적인 특징부를 따라, 방법은 제2 깊이 맵 위치에 대한 제2 이미지 내의 이미지 픽셀 값과 제1 깊이 맵 위치에 대한 제1 이미지 내의 이미지 픽셀 값 사이의 차이를 나타내는 제2 매칭 에러 표시를 결정하는 단계를 추가로 포함하고; 제1 가중치를 결정하는 단계는 또한 제2 매칭 에러 표시에 응답한다.
이는 많은 실시예들에서 개선된 깊이 맵들을 제공할 수 있다.
본 발명의 선택적인 특징부를 따라, 방법은 제1 깊이 맵 위치에 대응하는 깊이 맵 위치들에 대한 다른 이미지들 내의 이미지 픽셀 값들과 제1 깊이 맵 위치에 대한 제1 이미지 내의 이미지 픽셀 값 사이의 차이를 나타내는 추가 매칭 에러 표시들을 결정하는 단계를 추가로 포함하고; 제1 가중치를 결정하는 단계는 또한 추가 매칭 에러 표시들에 응답한다.
이는 많은 실시예들에서 개선된 깊이 맵들을 제공할 수 있다.
본 발명의 선택적인 특징부를 따라, 가중 조합은 제1 깊이 맵 위치 주위의 지역 내의 제1 깊이 맵의 깊이 값들을 포함한다.
이는 많은 실시예들에서 개선된 깊이 맵들을 제공할 수 있다.
본 발명의 선택적인 특징부를 따라, 제1 가중치는 제1 후보 깊이 값의 신뢰도 값에 의존한다.
이는 많은 시나리오들에서 개선된 깊이 맵들을 제공할 수 있다.
본 발명의 선택적인 특징부를 따라, 신뢰도 값이 임계치 미만인 제1 깊이 맵의 깊이 값들만이 업데이트된다.
이는 많은 시나리오들에서 개선된 깊이 맵들을 제공할 수 있고 특히 정확한 깊이 값들이 덜 정확한 깊이 값들로 업데이트되는 위험을 감소시킬 수 있다.
본 발명의 선택적인 특징부를 따라, 방법은 깊이 값들의 세트의 깊이 값이 임계치 초과의 신뢰도 값을 가져야 한다는 요건을 조건으로 가중 조합에 포함시킬 제2 깊이 맵의 깊이 값들의 세트를 선택하는 단계를 추가로 포함한다.
이는 많은 시나리오들에서 개선된 깊이 맵들을 제공할 수 있다.
본 발명의 선택적인 특징부를 따라, 방법은: 주어진 깊이 맵 내의 주어진 깊이 값에 대한 주어진 깊이 맵 위치를 복수의 대응하는 깊이 맵들 내의 대응하는 위치들로 투영하는 단계; 주어진 깊이 값 및 복수의 대응하는 깊이 맵들 내의 대응하는 위치들에서의 깊이 값들을 포함하는 깊이 값들의 세트에 대한 변동 측정치를 결정하는 단계; 및 변동 측정치에 응답하여 주어진 깊이 맵 위치에 대한 신뢰도 값을 결정하는 단계를 추가로 포함한다.
이는 개선된 깊이 맵들로 이어질 수 있는 신뢰도 값들의 특히 유리한 결정을 제공할 수 있다.
본 발명의 선택적인 특징부를 따라, 방법은: 주어진 깊이 맵 내의 주어진 깊이 값에 대한 주어진 깊이 맵 위치를 다른 깊이 맵 내의 대응하는 위치로 투영하는 단계로서, 투영은 주어진 깊이 값에 기초하는, 투영하는 단계; 다른 깊이 맵 내의 대응하는 위치를 주어진 깊이 맵 내의 테스트 위치로 투영하는 단계로서, 투영은 다른 깊이 맵 내의 대응하는 위치에서의 깊이 값에 기초하는, 투영하는 단계; 주어진 깊이 맵 위치와 테스트 위치 사이의 거리에 응답하여 주어진 깊이 맵 위치에 대한 신뢰도 값을 결정하는 단계를 추가로 포함한다.
이는 개선된 깊이 맵들로 이어질 수 있는 신뢰도 값들의 특히 유리한 결정을 제공할 수 있다.
본 발명의 양태에 따르면, 깊이 맵들을 처리하기 위한 장치가 제공되며, 장치는: 상이한 뷰 포즈들로부터 장면을 표현하는 복수의 이미지들 및 대응하는 깊이 맵들을 수신하기 위한 수신기; 대응하는 깊이 맵들 중 적어도 제2 깊이 맵의 깊이 값들에 기초하여 대응하는 깊이 맵들 중 제1 깊이 맵의 깊이 값들을 업데이트하는 단계를 위한 업데이터를 포함하고, 제1 깊이 맵은 제1 이미지에 대한 것이고 상기 제2 깊이 맵은 제2 이미지에 대한 것이고, 업데이트하는 단계는: 제1 깊이 맵 내의 제1 깊이 맵 위치에서의 제1 깊이 맵의 제1 깊이 픽셀에 대한 제1 후보 깊이 값을 결정하는 단계로서, 제1 후보 깊이 값은 제2 깊이 맵 내의 제2 깊이 맵 위치에서의 제2 깊이 맵의 제2 깊이 픽셀의 적어도 하나의 제2 깊이 값에 응답하여 결정되는, 제1 후보 깊이 값을 결정하는 단계; 제1 깊이 맵 위치에 대한 복수의 후보 깊이 값들의 가중 조합에 의해 제1 깊이 픽셀에 대한 제1 깊이 값을 결정하는 단계로서, 가중 조합은 제1 가중치에 의해 가중된 제1 후보 깊이 값을 포함하는, 제1 깊이 값을 결정하는 단계를 포함하고; 제1 깊이 값을 결정하는 단계는: 제1 깊이 맵 위치에 대한 제1 이미지 내의 제1 이미지 위치를 결정하는 단계, 복수의 이미지들 중 제3 이미지 내의 제3 이미지 위치를 결정하는 단계로서, 제3 이미지 위치는 제1 후보 깊이 값에 기초하여 제3 이미지에 대한 제1 이미지 위치의 투영에 대응하는, 제3 이미지 위치를 결정하는 단계; 제3 이미지 위치에 대한 제3 이미지 내의 이미지 픽셀 값과 제1 이미지 위치에 대한 제1 이미지 내의 이미지 픽셀 값 사이의 차이를 나타내는 제1 매칭 에러 표시를 결정하는 단계, 및 제1 매칭 에러 표시에 응답하여 제1 가중치를 결정하는 단계를 포함한다.
본 발명의 이들 및 다른 태양들, 특징들 및 이점들이 이하에 설명되는 실시예(들)로부터 명백해질 것이고 그것을 참조하여 설명될 것이다.
본 발명의 실시예들이 도면들을 참조하여 단지 예로서 설명될 것이다.
도 1은 가상 현실 경험을 제공하기 위한 배열의 일례를 예시한다.
도 2는 본 발명의 일부 실시예들에 따른 깊이 맵들을 처리하기 위한 장치의 요소들의 예를 예시한다.
도 3은 본 발명의 일부 실시예들에 따른 깊이 맵들을 처리하기 위한 방법의 요소들의 예를 예시한다.
도 4는 장면을 캡처하기 위한 카메라 셋업의 일례를 예시한다.
도 5는 본 발명의 일부 실시예들에 따른 깊이 맵들을 업데이트하기 위한 방법의 요소들의 예를 예시한다.
도 6은 본 발명의 일부 실시예들에 따른 가중치들을 결정하기 위한 방법의 요소들의 예를 예시한다.
도 7은 본 발명의 일부 실시예들에 따른 깊이 맵들 및 이미지들의 처리의 일례를 예시한다.
하기의 설명은 가상 현실 경험에 적용가능한 본 발명의 실시예들에 초점을 맞추지만, 본 발명은 본 출원에 제한되지 않고 많은 다른 시스템들 및 적용예들, 예컨대 특히 뷰 합성을 포함하는 적용예들에 적용될 수 있음이 이해될 것이다.
사용자가 가상 세계에서 돌아다닐 수 있게 하는 가상 경험들은 점점 더 대중화되고 있고 그러한 요구를 충족시키기 위해 서비스들이 개발되고 있다. 그러나, 특히 경험이 완전히 가상으로 생성된 인공 세계보다는 현실 세계 환경의 캡처에 기초해야 하는 경우, 효율적인 가상 현실 서비스들의 제공은 매우 어렵다.
많은 가상 현실 애플리케이션들에서, 장면 내의 가상 뷰어의 포즈를 반영하는 뷰어 포즈 입력이 결정된다. 이어서, 가상 현실 장치/시스템/애플리케이션은 뷰어 포즈에 대응하는 뷰어에 대한 장면의 뷰들 및 뷰포트들에 대응하는 하나 이상의 이미지들을 생성한다.
전형적으로, 가상 현실 애플리케이션은 좌안 및 우안에 대한 별개의 뷰 이미지들의 형태로 3차원 출력을 생성한다. 이어서, 이들은, 전형적으로 VR 헤드셋의 개별 좌안 및 우안 디스플레이들과 같은, 적합한 수단에 의해 사용자에게 제시될 수 있다. 다른 실시예들에서, 이미지는 예컨대 자동입체 디스플레이(autostereoscopic display)(이 경우에 뷰어 포즈에 대하여 다량의 뷰 이미지들이 생성될 수 있음) 상에 제시될 수 있거나, 또는 실제로 일부 실시예들에서 (예컨대, 종래의 2차원 디스플레이를 사용하여) 단지 단일의 2차원 이미지만이 생성될 수 있다.
뷰어 포즈 입력은 상이한 애플리케이션들에서 상이한 방식들로 결정될 수 있다. 많은 실시예들에서, 사용자의 물리적 움직임은 직접 추적될 수 있다. 예를 들어, 사용자 영역을 조사하는 카메라가 사용자의 머리(또는 심지어 눈)를 검출하고 추적할 수 있다. 많은 실시예들에서, 사용자는 외부 및/또는 내부 수단에 의해 추적될 수 있는 VR 헤드셋을 착용할 수 있다. 예를 들어, 헤드셋은 헤드셋 및 그에 따라 머리의 움직임 및 회전에 관한 정보를 제공하는 가속도계들 및 자이로스코프들을 포함할 수 있다. 일부 예들에서, VR 헤드셋은 신호들을 송신할 수 있거나, 또는 외부 센서가 VR 헤드셋의 움직임을 결정하게 하는 (예컨대 시각적) 식별자들을 포함할 수 있다.
일부 시스템들에서, 뷰어 포즈는 수동 수단에 의해, 예컨대 사용자가 조이스틱 또는 유사한 수동 입력을 수동으로 제어함으로써 제공될 수 있다. 예를 들어, 사용자는 제1 아날로그 조이스틱을 한 손으로 제어함으로써 장면에서 가상 뷰어를 수동으로 이동시키고, 다른 손으로 제2 아날로그 조이스틱을 수동으로 이동시킴으로써 가상 뷰어가 보고 있는 방향을 수동으로 제어할 수 있다.
일부 애플리케이션들에서, 수동 접근법과 자동화된 접근법의 조합이 입력 뷰어 포즈를 생성하는 데 사용될 수 있다. 예를 들어, 헤드셋이 머리의 배향을 추적할 수 있고, 장면 내의 뷰어의 움직임/위치가 조이스틱을 사용하는 사용자에 의해 제어될 수 있다.
이미지들의 생성은 가상 세계/환경/장면의 적합한 표현에 기초한다. 일부 애플리케이션들에서, 완전 3차원 모델이 장면에 대해 제공될 수 있고, 특정 뷰어 포즈로부터의 장면의 뷰들은 이러한 모델을 평가함으로써 결정될 수 있다.
많은 실제 시스템들에서, 장면은 이미지 데이터를 포함하는 이미지 표현에 의해 나타내어질 수 있다. 이미지 데이터는 전형적으로 하나 이상의 캡처 또는 앵커 포즈들과 연관된 하나 이상의 이미지들을 포함할 수 있고, 구체적으로 이미지들은 하나 이상의 뷰 포트들에 대해 포함될 수 있으며, 이때 각각의 뷰 포트는 특정 포즈에 대응한다. 하나 이상의 이미지들을 포함하는 이미지 표현이 사용될 수 있는데, 여기서 각각의 이미지는 주어진 뷰 포즈에 대한 주어진 뷰 포트의 뷰를 나타낸다. 이미지 데이터가 제공되는 그러한 뷰 포즈들 또는 위치들은 종종 앵커 포즈들 또는 위치들 또는 캡처 포즈들 또는 위치들로도 지칭된다(이는, 이미지 데이터가 전형적으로, 캡처 포즈에 대응하는 배향 및 위치를 갖고 장면 내에 위치된 카메라들에 의해 캡처되거나 캡처될 이미지들에 대응할 수 있기 때문임).
이미지들은 통상적으로 깊이 정보와 연관되고, 구체적으로 깊이 이미지 또는 맵이 통상적으로 제공된다. 이러한 깊이 맵은 대응하는 이미지 내의 각각의 픽셀에 대한 깊이 값을 제공할 수 있는데, 여기서 깊이 값은 카메라/ 앵커/ 캡처 위치로부터 픽셀에 의해 묘사되는 객체/ 장면 포인트까지의 거리를 나타낸다. 따라서, 픽셀 값은 장면 내의 객체/ 포인트로부터 카메라의 캡처 디바이스로의 광선을 표현하도록 간주될 수 있고, 픽셀에 대한 깊이 값은 이 광선의 길이를 반영할 수 있다.
많은 실시예들에서, 이미지 및 대응하는 깊이 맵의 해상도는 동일할 수 있고 따라서 이미지 내의 각각의 픽셀에 대한 개별 깊이 값이 포함될 수 있는데, 즉 깊이 맵은 이미지의 각각의 픽셀에 대한 하나의 깊이 값을 포함할 수 있다. 다른 실시예들에서, 해상도는 상이할 수 있고, 예컨대 깊이 맵은 하나의 깊이 값이 복수의 이미지 픽셀들에 적용될 수 있도록 더 낮은 해상도를 가질 수 있다. 하기의 설명은 이미지 및 대응하는 깊이 맵의 해상도가 동일하고 그래서 각각의 이미지 픽셀(이미지의 픽셀)에 대하여, 별개의 깊이 맵 픽셀(깊이 맵의 픽셀)이 있는 실시예에 초점을 맞출 것이다.
깊이 값은 픽셀에 대한 깊이를 나타내는 임의의 값일 수 있고, 따라서 카메라 위치로부터 주어진 픽셀에 의해 도시된 장면의 객체까지의 거리를 나타내는 임의의 값일 수 있다. 깊이 값은 예를 들어 디스패리티 값, z-좌표, 거리 측정치 등일 수 있다.
많은 전형적인 VR 애플리케이션들은 그러한 이미지 + 깊이 표현을 기반으로 하여 현재 뷰어 포즈에 대한 장면에 대한 뷰포트들에 대응하는 뷰 이미지들을 제공하도록 진행할 수 있는데, 이때 이미지들은 뷰어 포즈에서의 변화들을 반영하도록 동적으로 업데이트되고, 이미지들은 (가능하게는) 가상 장면/환경/세계를 나타내는 이미지 데이터에 기초하여 생성된다. 애플리케이션은 당업자에게 알려진 바와 같이 뷰 합성 및 뷰 시프트 알고리즘들을 수행함으로써 이를 행할 수 있다.
이 분야에서, 용어들 '배치'와 '포즈'는 위치 및/또는 방향/배향에 대한 공통 용어로서 사용된다. 예컨대 객체, 카메라, 머리, 또는 뷰의 위치와 방향/배향의 조합은 포즈 또는 배치로 지칭될 수 있다. 따라서, 배치 또는 포즈 표시는 6개의 값들/성분들/자유도들을 포함할 수 있고, 이때 각각의 값/성분은 전형적으로 대응하는 객체의 위치/로케이션 또는 배향/방향의 개별 속성을 설명한다. 물론, 많은 상황들에서, 예를 들어 하나 이상의 성분이 고정되거나 무관한 것으로 간주되는 경우, 배치 또는 포즈가 더 적은 성분들을 갖는 것으로 간주되거나 나타내어질 수 있다(예컨대, 모든 객체들이 동일한 높이에 있고 수평 배향을 갖는 것으로 간주되는 경우, 4개의 성분들이 객체의 포즈의 완전한 표현을 제공할 수 있음). 이하에서, 포즈라는 용어는 1 내지 6개의 값들(최대 가능한 자유도들에 대응함)에 의해 나타내어질 수 있는 위치 및/또는 배향을 지칭하는 데 사용된다.
많은 VR 애플리케이션들은 최대 자유도 - 즉, 위치 및 배향 각각의 3 자유도가 총 6 자유도를 야기함 - 를 갖는 포즈에 기초한다. 따라서, 포즈는 6 자유도를 나타내는 6개의 값들의 벡터 또는 세트에 의해 나타내어질 수 있고, 따라서 포즈 벡터는 3차원 위치 및/또는 3차원 방향 표시를 제공할 수 있다. 그러나, 다른 실시예들에서, 포즈는 더 적은 값들에 의해 나타내어질 수 있다는 것이 이해될 것이다.
포즈는 배향 및 위치 중 적어도 하나일 수 있다. 포즈 값은 배향 값 및 위치 값 중 적어도 하나를 나타낼 수 있다.
뷰어에 대한 최대 자유도를 제공하는 것에 기초하는 시스템 또는 엔티티(entity)는 전형적으로 6 자유도(6DoF)를 갖는 것으로 지칭된다. 많은 시스템들 및 엔티티들은 배향 또는 위치만을 제공하고, 이들은 전형적으로 3 자유도(3DoF)를 갖는 것으로 알려져 있다.
일부 시스템들에서, VR 애플리케이션은, 예컨대 임의의 원격 VR 데이터 또는 프로세싱을 사용하지 않거나, 또는 심지어 이들에 대한 어떠한 액세스도 갖지 않는 독립형 디바이스에 의해 뷰어에 국소적으로 제공될 수 있다. 예를 들어, 게임 콘솔과 같은 디바이스는 장면 데이터를 저장하기 위한 저장부, 뷰어 포즈를 수신/생성하기 위한 입력부, 및 장면 데이터로부터 대응하는 이미지들을 생성하기 위한 프로세서를 포함할 수 있다.
다른 시스템들에서, VR 애플리케이션은 뷰어로부터 원격으로 구현되고 수행될 수 있다. 예를 들어, 사용자에 국한된 디바이스는 움직임/포즈 데이터를 검출/수신할 수 있으며, 이는 데이터를 프로세싱하여 뷰어 포즈를 생성하는 원격 디바이스로 송신된다. 이어서, 원격 디바이스는 장면을 설명하는 장면 데이터에 기초하여 뷰어 포즈에 대한 적합한 뷰 이미지들을 생성할 수 있다. 이어서, 뷰 이미지들은 그들이 제시되는 뷰어에 국한된 디바이스로 송신된다. 예를 들어, 원격 디바이스는 로컬 디바이스에 의해 직접 제시되는 비디오 스트림(전형적으로 스테레오/3D 비디오 스트림)을 직접 생성할 수 있다. 따라서, 그러한 예에서, 로컬 디바이스는 움직임 데이터를 송신하고 수신된 비디오 데이터를 제시하는 것을 제외하고 어떠한 VR 프로세싱도 수행하지 않을 수 있다.
많은 시스템들에서, 기능은 로컬 디바이스 및 원격 디바이스에 걸쳐 분배될 수 있다. 예를 들어, 로컬 디바이스는 수신된 입력 및 센서 데이터를 프로세싱하여 원격 VR 디바이스에 연속적으로 송신되는 뷰어 포즈들을 생성할 수 있다. 이어서, 원격 VR 디바이스는 대응하는 뷰 이미지들을 생성하고, 제시를 위해 이들을 로컬 디바이스로 송신할 수 있다. 다른 시스템들에서, 원격 VR 디바이스는 뷰 이미지들을 직접 생성하지 않을 수 있지만, 관련 장면 데이터를 선택하고 이것을 로컬 디바이스에 송신할 수 있고, 이는 이어서, 제시되는 뷰 이미지들을 생성할 수 있다. 예를 들어, 원격 VR 디바이스는 가장 가까운 캡처 포인트를 식별하고, 대응하는 장면 데이터(예컨대, 캡처 포인트로부터의 구면 이미지 및 깊이 데이터)를 추출하고 이것을 로컬 디바이스로 송신할 수 있다. 이어서, 로컬 디바이스는 수신된 장면 데이터를 프로세싱하여 특정한, 현재 뷰 포즈에 대한 이미지들을 생성할 수 있다. 뷰 포즈는 전형적으로 머리 포즈에 대응할 것이고, 뷰 포즈에 대한 참조는 전형적으로 머리 포즈에 대한 참조에 대응하는 것으로 동등하게 간주될 수 있다.
많은 애플리케이션들에서, 특히 브로드캐스트 서비스들에 대해, 소스는 뷰어 포즈와는 독립적인 장면의 이미지(비디오를 포함함) 표현의 형태로 장면 데이터를 송신할 수 있다. 예를 들어, 단일 캡처 위치에 대한 단일 뷰 구면에 대한 이미지 표현이 복수의 클라이언트들로 송신될 수 있다. 이어서, 개별 클라이언트들은 현재 뷰어 포즈에 대응하는 뷰 이미지들을 국부적으로 합성할 수 있다.
특히 관심을 끌고 있는 애플리케이션은, 제한된 양의 움직임이 지원되어, 실질적으로 정적 뷰어가 단지 작은 머리 움직임들 및 머리의 회전들을 행하는 것에 대응하는 작은 움직임들 및 회전들을 따르도록 제시된 뷰들이 업데이트되게 하는 경우이다. 예를 들어, 앉아 있는 뷰어가 그의 머리를 돌리고 그것을 약간 움직일 수 있는데, 이때 제시된 뷰들/이미지들이 이들 포즈 변화들을 따르도록 적응된다. 그러한 접근법은 고도의 그리고 몰입형의, 예컨대 비디오 경험을 제공할 수 있다. 예를 들어, 스포츠 이벤트를 지켜보는 뷰어는 그가 경기장 내의 특정 장소(spot)에 있다고 느낄 수 있다.
그러한 제한된 자유 애플리케이션들은, 많은 상이한 위치들로부터의 장면의 정확한 표현을 요구하지 않고 이에 의해 실질적으로 캡처 요건들을 감소시키면서, 개선된 경험을 제공하는 이점을 갖는다. 유사하게, 렌더러에 제공될 필요가 있는 데이터의 양이 실질적으로 감소될 수 있다. 실제로, 많은 시나리오들에서, 단일 뷰포인트에 대한 이미지 및 전형적으로 깊이 데이터만이 제공될 필요가 있는데, 이때 로컬 렌더러는 이것으로부터 원하는 뷰들을 생성할 수 있다.
이러한 접근법은 구체적으로, 예를 들어 브로드캐스트 또는 클라이언트 서버 애플리케이션의 경우와 같이, 데이터가 대역제한 통신 채널을 통해 소스로부터 목적지로 통신될 필요가 있는 애플리케이션들에 대해 매우 적합할 수 있다.
도 1은 원격 VR 클라이언트 디바이스(101)가 VR 서버(103)와 예컨대, 인터넷과 같은 네트워크(105)를 통해 연락을 취하는 VR 시스템의 그러한 예를 예시한다. 서버(103)는 잠재적으로 다수의 클라이언트 디바이스들(101)을 동시에 지원하도록 배열될 수 있다.
VR 서버(103)는, 예를 들어, 적절한 포즈들에 대응하는 뷰 이미지들을 국부적으로 합성하기 위해 클라이언트 디바이스들에 의해 사용될 수 있는 이미지 데이터의 형태로 이미지 표현을 포함하는 이미지 신호를 송신함으로써 브로드캐스트 경험을 지원할 수 있다.
도 2는 깊이 맵들을 처리하기 위한 장치의 예시적인 구현의 예시적인 요소들을 예시한다. 장치는 구체적으로 VR 서버(103)에서 구현될 수 있고 이를 참조하여 기재될 것이다. 도 3은 도 2의 장치에 의해 수행되는 깊이 맵을 처리하는 방법을 위한 흐름도를 예시한다.
장치/VR 서버(103)는 상이한 뷰 포즈들로부터 장면을 표현하는 복수의 이미지들 및 대응하는 깊이 맵들이 수신되는 단계(301)를 수행하는 수신기(201)를 포함한다.
이미지들은 광 세기 정보를 포함하고, 이미지들의 픽셀 값들은 광 세기 값을 반영한다. 일부 예들에서, 픽셀 값은 그레이스케일 이미지에 대한 밝기와 같은 단일 값일 수 있지만, 많은 실시예들에서 픽셀 값은 예컨대 유색 이미지에 대한 색상 채널 값들과 같은 (하위)값들의 세트 또는 벡터일 수 있다(예컨대 RGB 또는 Yuv 값들이 제공될 수 있다).
이미지에 대한 깊이 맵은 동일한 뷰포트에 대한 깊이 값들을 포함할 수 있다. 예를 들어, 주어진 뷰/캡처/앵커 포즈에 대한 이미지의 각각의 픽셀에 대하여, 대응하는 깊이 맵은 깊이 값을 갖는 픽셀을 포함한다. 따라서, 이미지 내의 동일한 위치 및 그것의 대응하는 깊이 맵은 각각 픽셀에 대응하는 광선에 대한 광 세기 및 깊이를 제공한다. 일부 실시예들에서, 깊이 맵은 더 낮은 해상도를 가질 수 있고, 예컨대 하나의 깊이 맵 픽셀은 복수의 이미지 픽셀들에 대응할 수 있다. 그러나, 그러한 경우에 깊이 맵 내의 위치와 깊이 맵 내의 위치(서브-픽셀 위치들을 포함함) 사이에 여전히 직접적인 1 대 1 대응이 있을 수 있다.
간결성 및 복잡성을 위해, 하기의 설명은 3개의 이미지들 및 대응하는 깊이 맵들이 제공되는 예에 초점을 맞출 것이다. 이 이미지들이 3개의 상이한 뷰 위치들로부터 그리고 도 4에 표시된 바와 같이 동일한 배향을 갖는 장면을 캡처하는 카메라들의 선형적 배열에 의해 제공됨이 추가로 가정된다.
많은 실시예들에서, 실질적으로 더 많은 수의 이미지들이 종종 수신되고, 장면은 종종 실질적으로 더 많은 수의 캡처 포즈들로부터 캡처되는 것이 이해될 것이다.
수신기는 하기에 간결함을 위하여 간단히 업데이터(203)로 지칭되는 깊이 맵 업데이터에 제공된다. 업데이터(203)는 하나 이상의(그리고 통상적으로 모든) 수신된 깊이 맵들이 업데이트되는 단계(303)를 수행한다. 업데이트하는 단계는 적어도 제2 수신된 깊이 맵의 깊이 값들에 기초하여 제1 수신된 깊이 맵의 깊이 값들을 업데이트하는 단계를 포함한다. 따라서, 개선된 깊이 맵을 생성하기 위하여 크로스-깊이 맵 및 크로스 뷰 포즈 업데이트가 수행된다.
이 예에서 업데이터(203)는 이미지 신호 생성기(205)에 결합되는데, 이는 수신된 이미지들을 업데이트된 깊이 맵들과 함께 포함하는 이미지 신호를 생성하는 단계(305)를 수행한다. 이어서 이미지 신호는 예컨대 VR 클라이언트 디바이스(101)로 전송될 수 있고, 여기서 현재 뷰어 포즈에 대한 뷰 이미지들을 합성하기 위한 기초로서 사용될 수 있다.
따라서, 이 예에서, 깊이 맵 업데이트는 VR 서버(103)에서 수행되며, 업데이트된 깊이 맵들은 VR 클라이언트 디바이스들(101)에 분배된다. 그러나, 다른 실시예들에서, 깊이 맵 업데이트는 예컨대 VR 클라이언트 디바이스(101)에서 수행될 수 있다. 예를 들어, 수신기(201)는 VR 클라이언트 디바이스(101)의 일부일 수 있고, 이미지들 및 대응하는 깊이 맵들을 VR 서버(103)로부터 수신할 수 있다. 이어서 수신된 깊이 맵들은 업데이터(203)에 의해 업데이트될 수 있고, 이미지 신호 생성기(205) 대신에 장치는 이미지들 및 업데이트된 깊이 맵들에 기초하여 새로운 뷰들을 생성하도록 배열된 렌더러 또는 뷰 이미지 합성기를 포함할 수 있다.
또 다른 실시예들에서, 모든 처리가 단일 디바이스에서 수행될 수 있다. 예를 들어, 동일한 디바이스는 직접 캡처된 정보를 수신할 수 있고, 초기 깊이 맵들을, 예컨대 디스패리티 추정에 의해 생성할 수 있다. 생성된 깊이 맵들은 업데이트될 수 있고 디바이스의 합성기는 동적으로 새로운 뷰들을 생성할 수 있다.
따라서, 업데이트된 깊이 맵들의 기술된 기능들 및 구체적인 사용의 위치는 개별 실시예의 선호도 및 요건들에 따라 달라질 것이다.
그에 따라 깊이 맵(들)의 업데이트는 상이한 공간 위치로부터 그리고 상이한 이미지에 대하여 깊이를 표현하는 하나 이상의 다른 깊이 맵들에 기초한다. 이 접근법은 깊이 맵들에 대하여 개별 깊이 값 또는 깊이 맵의 절대적인 정확성 또는 신뢰성이 결과적인 인지된 품질에 중요할 뿐만 아니라 상이한 깊이 맵들 사이의 일관성이 또한 매우 중요하다는 깨달음을 이용한다.
실제로, 경험적으로 얻은 통찰은 깊이 맵들 사이에서 에러들 또는 부정확성들이 일관되지 않을 때, 즉 그것들이 소스 뷰들에 따라 달라질 때, 그것들이 특히 위험한 것으로 인식되는데, 그 이유는 뷰어가 위치를 변경할 때 그것들이 유효하게 가상 장면으로 하여금 크게 흔들리는 것처럼 인식되게 하기 때문이다.
이러한 뷰-일관성이 깊이 맵 추정 프로세스 동안 항상 충분히 강제되지는 않는다. 예를 들어, 이는 별개의 깊이 센서들을 이용하여 각각의 뷰에 대하여 깊이 맵을 획득할 때의 경우이다. 그 경우에, 깊이 데이터는 완전히 독립적으로 캡처된다. 모든 뷰들이 (예컨대 평면 스윕 알고리즘을 이용하여) 깊이를 추정하는 데 사용되는 다른 극단적인 경우에도, 결과는 여전히 일관되지 않을 수 있는데, 그 이유는 결과가 사용되는 특정 멀티-뷰 디스패리티 알고리즘 및 그것의 파라미터 설정들에 의존할 것이기 때문이다. 이하에서 기술되는 특정 접근법은 많은 시나리오들에서 이러한 이슈들을 완화시킬 수 있고, 깊이 맵들을 업데이트하여 깊이 맵들 사이의 일관성이 개선되고, 그럼으로써 인지되는 이미지 품질이 개선될 수 있다. 접근법은 장면의 멀티-뷰 이미지들의 세트에 대한 깊이 맵들의 품질을 개선할 수 있다.
도 5는 하나의 깊이 맵의 하나의 픽셀에 대하여 수행되는 업데이트에 대한 흐름도를 예시한다. 접근법은 깊이 맵 픽셀들의 일부 또는 전부가 업데이트된 제1 깊이 맵을 생성하도록 반복될 수 있다. 이어서 프로세스는 다른 깊이 맵들에 대하여 추가로 반복될 수 있다.
이하 제1 깊이 맵으로 지칭되는 깊이 맵 내의 이하 제1 깊이 픽셀로서 지칭되는 픽셀의 업데이트는 단계(501)에서 개시되며, 여기서 제1 깊이 픽셀에 대한 제1 후보 깊이 값이 결정된다. 제1 깊이 맵 내의 제1 깊이 픽셀의 위치는 제1 깊이 맵 위치로 지칭된다. 대응하는 용어는 숫자 라벨만 변경되어 다른 뷰들에 사용된다.
제1 후보 깊이 값은 제2 깊이 맵 내의 제2 깊이 맵 위치에서의 제2 깊이 픽셀의 깊이 값인 적어도 하나의 제2 깊이 값에 응답하여 결정된다. 따라서, 제1 후보 깊이 값은 깊이 맵들 중 다른 하나의 하나 이상의 깊이 값들로부터 결정된다. 제1 후보 깊이 값은 구체적으로 제2 깊이 맵에 포함된 정보에 기초한 제1 깊이 픽셀에 대한 정확한 깊이 값의 추정치일 수 있다.
단계(501) 다음에 단계(503)가 후속하며, 여기서 업데이트된 제1 깊이 값은 제1 깊이 맵 위치에 대한 복수의 후보 깊이 값들의 가중 조합에 의해 제1 깊이 픽셀에 대하여 결정된다. 단계(503)에서 결정된 제1 후보 깊이 값은 가중 조합에 포함된다.
따라서, 단계(501)에서 후속 조합에 대한 복수의 후보 깊이 값들 중 하나가 결정된다. 대부분의 실시예들에서, 복수의 후보 깊이 값들은 단계(501)에서 제2 깊이 맵 내의 다른 깊이 값들에 대한 제1 후보 깊이 값 및/또는 다른 깊이 맵들 내의 깊이 값들에 대하여 기재된 프로세스를 반복함으로써 결정될 수 있다.
많은 실시예들에서, 하나 이상의 후보 깊이 값들이 다른 방식으로 또는 다른 소스들로부터 결정될 수 있다. 많은 실시예들에서, 하나 이상의 후보 깊이 값들은 제1 깊이 맵으로부터의 깊이 값들, 예컨대 제1 깊이 픽셀에 이웃하는 깊이 값들일 수 있다. 많은 실시예들에서, 원래의 제1 깊이 값, 즉 수신기(201)에 의해 수신된 바와 같은 제1 깊이 맵 내의 제1 깊이 픽셀에 대한 깊이 값은 후보 깊이 값들 중 하나로서 포함될 수 있다.
따라서, 업데이터(205)는 전술된 바와 같이 결정된 적어도 하나의 후보 깊이 값을 포함하는 후보 깊이 값들의 가중 조합을 수행할 수 있다. 임의의 다른 후보 깊이 값들의 수, 특성, 기원 등은 개별 실시예의 선호도 및 요건 및 원하는 정확한 깊이 업데이트 동작에 의존할 것이다.
예를 들어, 가중 조합은 일부 실시예들에서 단지 단계(501)에서 결정된 제1 후보 깊이 값 및 원래 깊이 값을 포함할 수 있다. 그러한 경우에, 예컨대 제1 후보 깊이 값에 대한 단일 가중치만이 결정될 수 있고 원래 깊이 값에 대한 가중치는 일정할 수 있다.
다른 예로서, 일부 실시예들에서, 가중 조합은 다른 깊이 맵들 및/또는 위치들로부터 결정된 값들, 원래 깊이 값, 제1 깊이 맵 내의 이웃하는 깊이 값들을 포함하는 다수의 후보 깊이 값들의 조합일 수 있거나, 또는 실제로 심지어 상이한 깊이 추정 알고리즘을 이용하여 예컨대 깊이 맵과 같은 대안적인 깊이 맵들 내의 깊이 값들에 기초할 수 있다. 이러한 더 복잡한 실시예들에서, 예컨대 가중치가 각각의 후보 깊이 값에 대하여 결정될 수 있다.
예컨대 비선형 조합 또는 선택 조합(하나의 후보 깊이 값에는 1의 가중치가 주어지고, 모든 다른 후보 깊이 값들에는 0의 가중치가 주어짐)을 포함하는 임의의 적합한 형태의 가중 조합이 사용될 수 있음이 이해될 것이다. 그러나, 많은 실시예들에서, 선형 조합, 구체적으로 가중 평균이 사용될 수 있다.
따라서, 특정 예로서, 깊이 맵/뷰
Figure pct00001
내의 이미지 좌표
Figure pct00002
에 대한 업데이트된 깊이 값
Figure pct00003
은 적어도 하나는 단계(501)에 대하여 기재된 바와 같이 생성되는
Figure pct00004
후보 깊이 값들
Figure pct00005
의 세트의 가중 평균일 수 있다. 가중 조합은 이 경우에 다음과 같이 주어진 필터 기능에 대응할 수 있다:
Figure pct00006
,
여기서
Figure pct00007
는 뷰
Figure pct00008
에 대한 픽셀 위치
Figure pct00009
에서의 업데이트된 깊이 값이고,
Figure pct00010
i-번째 입력 후보 깊이 값,
Figure pct00011
i-번째 입력 후보 깊이 값의 가중치이다.
방법은 제1 후보 깊이 값의 가중치, 즉 제1 가중치를 결정하기 위한 특정 접근법을 이용한다. 이 접근법은 도 6의 흐름도 및 도 7의 이미지 및 깊이 맵 예시를 참조하여 기술될 것이다.
도 7은 3개의 이미지 및 3개의 대응하는 깊이 맵이 제공/ 고려되는 예를 예시한다. 제1 이미지(701)가 제1 깊이 맵(703)과 함께 제공된다. 유사하게, 제2 이미지(705)가 제2 깊이 맵(707)과 함께 제공되고, 제3 이미지(709)가 제3 깊이 맵(711)과 함께 제공된다. 하기의 설명은 제2 깊이 맵(707)으로부터의 깊이 값들에 기초하여 그리고 제3 이미지(709)를 추가로 고려하여 제1 깊이 맵(703)의 제1 깊이 값에 대한 제1 가중치의 결정에 초점을 맞출 것이다.
따라서 (제1 후보 깊이 값에 대한) 제1 가중치의 결정은 제2 깊이 맵(707) 내의 제2 깊이 맵 위치들에서의 제2 깊이 픽셀들에 대한 하나 이상의 제2 깊이 값들에 기초하여 제1 깊이 픽셀/ 제1 깊이 맵 위치에 대하여 결정된다. 구체적으로, 제1 후보 깊이 값은 도 7의 화살표(713)에 의해 표시된 바와 같이 제2 깊이 맵(707) 내의 대응하는 위치에서의 제2 깊이 값으로서 결정될 수 있다.
제1 가중치의 결정은 단계(601)에서 개시되고, 여기서 업데이터는 화살표(715)에 의해 표시되는 바와 같이 제1 깊이 맵 위치에 대응하는 제1 이미지(701) 내의 제1 이미지 위치를 결정한다. 통상적으로, 이는 단순히 동일한 위치 및 이미지 좌표들일 수 있다. 이러한 제1 이미지 위치에 대응하는 제1 이미지(701) 내의 픽셀은 제1 이미지 픽셀로 지칭된다.
이어서 업데이터(203)는 단계(603)로 진행하여 복수의 이미지들 중 제3 이미지(709) 내의 제3 이미지 위치를 결정하고, 여기서 제3 이미지 위치는 제1 후보 깊이 값에 기초한 제1 이미지 위치의 제3 이미지로의 투영에 대응한다. 제3 이미지 위치는 화살표(717)에 의해 표시된 바와 같이 제1 이미지(701)의 이미지 좌표들로부터의 직접 투영에 의해 결정될 수 있다.
그에 따라 업데이터(203)는 제1 이미지 위치를 제3 이미지(709) 내의 제3 이미지 위치로 투영하도록 진행한다. 투영은 제1 후보 깊이 값에 기초한다. 따라서, 제1 이미지 위치의 제3 이미지(709)로의 투영은 제2 깊이 맵(707)에 기초하여 결정된 제1 깊이 값의 추정으로 간주될 수 있는 깊이 값에 기초한다.
일부 실시예들에서, 제3 이미지 위치의 결정은 깊이 맵 위치들의 투영에 기초할 수 있다. 예를 들어, 업데이터(203)는 화살표(719)에 의해 표시된 바와 같이 제1 깊이 맵 위치(제1 깊이 픽셀의 위치)를 제3 깊이 맵(711) 내의 제3 깊이 맵 위치로 투영하도록 진행할 수 있다. 투영은 제1 후보 깊이 값에 기초한다. 따라서, 제1 깊이 맵 위치의 제3 깊이 맵(711)으로의 투영은 제2 깊이 맵(707)에 기초하여 결정된 제1 깊이 값의 추정으로 간주될 수 있는 깊이 값에 기초한다.
이어서, 제3 이미지 위치는 화살표(721)에 의해 표시된 바와 같이 제3 깊이 맵 위치에 대응하는 제3 이미지(709) 내의 이미지 위치로서 결정될 수 있다.
두 접근법이 동등하하는 것이 이해될 것이다.
하나의 깊이 맵/이미지로부터 상이한 깊이 맵/이미지로의 투영은 하나의 깊이 맵/이미지 내의 깊이 맵/이미지 위치와 동일한 장면 포인트를 표현하는 상이한 깊이 맵/이미지 내의 깊이 맵/이미지 위치의 결정일 수 있다. 깊이 맵들/이미지들이 상이한 뷰/캡처 포즈들을 표현함에 따라, 시차 효과는 장면 내의 주어진 포인트에 대하여 이미지 위치의 시프트를 초래할 것이다. 시프트는 뷰 포즈의 변화 및 장면 내의 포인트의 깊이에 의존할 것이다. 그에 따라 하나의 이미지/깊이 맵으로부터 다른 이미지/깊이 맵으로의 투영은 또한 이미지/깊이 맵 위치 시프트 또는 결정으로 지칭될 수 있다.
예를 들어, 하나의 뷰(
Figure pct00012
) 내의 이미지 좌표
Figure pct00013
를 그것의 깊이 값
Figure pct00014
과 함께 이웃 뷰(
Figure pct00015
)의 대응하는 이미지 좌표
Figure pct00016
로 투영하는 것은 예컨대 관점 카메라들에 대하여 하기의 단계들에 의해 수행될 수 있다:
1. 이미지 좌표
Figure pct00017
는 카메라
Figure pct00018
의 카메라-내적인 파라미터들(초점 길이 및 주점(principle point))을 이용하는 3d-공간
Figure pct00019
에서의
Figure pct00020
을 이용하여 투영되지 않는다.
2. 카메라
Figure pct00021
의 좌표계
Figure pct00022
내의 투영되지 않은 포인트는 그것들의 상대적으로 외적인 파라미터들(카메라 회전 매트릭스
Figure pct00023
및 병진 벡터
Figure pct00024
)를 이용하여 카메라
Figure pct00025
의 좌표계
Figure pct00026
로 변환된다.
3. 마지막으로 포인트
Figure pct00027
는 (
Figure pct00028
의 카메라 내적 특성들을 이용하여) 카메라(
Figure pct00029
)의 이미지 평면 상으로 투영되어 이미지-좌표
Figure pct00030
를 생성한다.
다른 카메라 투영 유형들 예컨대 정방형 투영(equirectangular projection, ERP)의 경우에, 유사한 메커니즘이 사용될 수 있다.
기술된 접근법에서, 제1 후보 깊이 값에 기초하는 투영은 제1 후보 깊이 값의 깊이를 갖는 제1 깊이 맵/이미지 위치의 장면 포인트에 대하여 (그리고 제1 뷰 포즈와 제3 뷰 포즈 사이의 뷰 포즈의 변화에 대하여) 제3 깊이 맵/이미지 위치의 결정에 대응하도록 고려될 수 있다.
상이한 깊이들은 상이한 시프트들을 초래할 것이고, 본 경우에, 제1 깊이 맵(703) 및 제1 이미지(701)에 대한 제1 뷰 포즈와 제3 깊이 맵(711) 및 제3 이미지(709)에 대한 제3 뷰 포즈 사이의 이미지 및 깊이 맵 위치의 시프트는 제2 깊이 맵(707) 내의 적어도 하나의 깊이 값에 기초한다.
단계(603)에서 업데이터(203)는 그에 따라 실제로 제1 후보 깊이 값이 제1 깊이 값 및 제1 이미지 픽셀에 대하여 정확한 값인 경우, 제1 이미지(701) 내의 제1 이미지 픽셀과 동일한 장면 포인트를 반영할 제3 깊이 맵(711) 및 제3 이미지(709) 내의 위치를 결정한다. 정확한 값으로부터의 제1 후보 깊이 값의 임의의 편차는 제3 이미지(709)에서 부정확한 위치가 결정되게 할 수 있다. 여기서 장면 포인트는 픽셀들과 연관된 광선 상에 있는 장면 포인트를 지칭하지만 그것들이 반드시 두 뷰 포즈에 대하여 가장 앞에 있는 장면 포인트들이 아닐 수 있음을 유의해야 한다. 예를 들어, 제2 뷰 포즈로부터 보일 때보다 제1 뷰 포즈로부터 보이는 장면 포인트가 (더 많은) 전경 객체에 의해 폐색되는 경우, 깊이 맵들의 깊이 값들, 및 이미지들의 깊이 값들은 상이한 장면 포인트들을 표현할 수 있고 따라서 잠재적으로 매우 상이한 값들을 가질 수 있다.
단계(603) 다음에 단계(605)가 후속하며, 여기서 제1 매칭 에러 표시가 제1 이미지 위치 및 제3 이미지 위치 각각에서의 제1 및 제3 이미지들(701, 709)의 콘텐츠에 기초하여 생성된다. 구체적으로, 제3 이미지 위치에서의 제3 이미지 내의 이미지 픽셀 값이 검색된다. 일부 실시예들에서, 이 이미지 픽셀 값은 제3 깊이 맵(711) 내의 제3 깊이 맵 위치가 깊이 값을 제공하는 제3 이미지(709) 내의 이미지 픽셀 값이 결정되는 바와 같이 결정될 수 있다. 많은 실시예들에서, 즉 동일한 해상도가 제3 깊이 맵(711) 및 제3 이미지(709)에 사용되는 경우에, 제1 깊이 맵 위치(화살표(719))에 대응하는 제3 이미지(709) 내의 위치의 직접 결정은 제3 깊이 맵(711) 내의 위치를 결정하고 대응하는 이미지 픽셀을 검색하는 것과 동등하다는 것이 이해될 것이다.
유사하게, 업데이터(203)는 제1 이미지 위치에서의 제1 이미지(701) 내의 픽셀 값을 추출하도록 진행한다. 이어서 그것은 이 2개의 이미지 픽셀 값 사이의 차이를 나타내는 제1 매칭 에러 표시를 결정하도록 진행된다. 예컨대 다수의 색상 채널들의 픽셀 값 성분들에 적용되는 예컨대 단순 절대차, 제곱근합 차 등과 같은 임의의 적합한 차이 측정이 사용될 수 있음이 이해될 것이다.
따라서, 업데이터(203)는 제3 이미지 위치에 대한 제3 이미지 내의 이미지 픽셀 값과 제1 이미지 위치에 대한 제1 이미지 내의 이미지 픽셀 값 사이의 차이를 나타내는 제1 매칭 에러 표시를 결정한다(605).
이어서 업데이터(203)는 제1 가중치가 제1 매칭 에러 표시에 응답하여 결정되는 단계(607)로 진행한다. 제1 매칭 에러 표시로부터 제1 가중치를 결정하기 위한 특정 접근법은 개별 실시예에 따라 달라질 수 있음이 이해될 것이다. 많은 실시예들에서, 예컨대 기타 매칭 에러 표시들을 포함하는 복잡한 고려사항들이 사용될 수 있고 추가적인 예들이 나중에 제공될 것이다.
낮은 복잡성 예로서, 제1 가중치는 일부 실시예들에서 제1 매칭 에러 표시의 단조 감소 함수로서 결정될 수 있고, 많은 실시예들에서 어떠한 다른 파라미터들이 고려되지 않는다.
예를 들어, 가중 조합이 제1 깊이 픽셀의 제1 후보 깊이 값 및 원래 깊이 값만을 포함하는 예에서, 이 조합은 제1 매칭 에러 표시가 낮을수록 증가하는 고정 가중치를 원래 깊이 값 및 제1 가중치에 적용할 수 있다(통상적으로 가중치 정규화가 추가로 포함됨).
제1 매칭 에러 표시는 주어진 장면 포인트를 표현할 때 제1 이미지와 제3 이미지가 얼마나 잘 매칭되는지 반영하도록 고려될 수 있다. 제1 이미지와 제3 이미지 사이에 폐색 차이가 없는 경우, 그리고 제1 후보 깊이 값이 정확한 값인 경우, 이미지 픽셀 값들은 동일해야 하고 제1 매칭 에러 표시는 0이어야 한다. 제1 후보 깊이 값이 정확한 값에서 벗어나는 경우, 제3 이미지 내의 이미지 픽셀들은 동일한 장면 포인트에 직접 대응하지 않을 수 있고, 따라서 제1 매칭 에러 표시가 증가할 수 있다. 폐색의 변경이 있는 경우, 에러가 매우 높을 가능성이 있다. 따라서 제1 매칭 에러 표시는 제1 후보 깊이 값이 제1 깊이 픽셀에 대하여 얼마나 정확하고 적합한지에 대하여 뛰어난 표시를 제공할 수 있다.
상이한 실시예들에서, 상이한 접근법들이 제2 깊이 맵의 하나 이상의 깊이 값들로부터 제1 후보 깊이 값을 결정하는 데 사용될 수 있다. 유사하게, 상이한 접근법들이 어떤 후보 값들이 가중 조합을 위하여 생성되는지 결정하는 데 사용될 수 있다. 구체적으로, 복수의 후보 값들이 제2 깊이 맵의 깊이 값들로부터 생성될 수 있고, 가중치들이 도 6에 관하여 기재된 접근법에 따라 이들의 각각에 대하여 개별적으로 계산될 수 있다.
많은 실시예들에서, 어떤 제2 깊이 값들이 제1 후보 깊이 값을 도출하는 데 사용될 지 결정하는 것은 제1 깊이 맵 및 제2 깊이 맵 내의 대응하는 위치들이 결정되도록 두 깊이 맵 사이의 투영에 따라 달라진다. 구체적으로, 많은 실시예들에서, 제1 후보 깊이 값은 제1 깊이 맵 위치에 대응하는 것으로 고려되는 제2 깊이 맵 위치에서의 제2 깊이 값으로서 결정될 수 있는데, 즉 제2 깊이 값은 동일한 장면 포인트를 표현하는 것으로 고려되는 깊이 값으로서 선택된다.
대응하는 제1 깊이 맵 위치 및 제2 깊이 맵 위치의 결정은 제1 깊이 맵으로부터 제2 깊이 맵으로의 투영에 기초할 수 있는, 즉 원래의 제1 깊이 값에 기초할 수 있거나, 또는 제2 깊이 맵으로부터 제1 깊이 맵으로의 투영에 기초할 수 있는, 즉 제2 깊이 값에 기초할 수 있다. 일부 실시예들에서, 양 방향에서의 투영은 수행될 수 있는데, 예컨대 이들의 평균이 사용될 수 있다.
따라서, 제1 후보 깊이 값을 결정하는 단계는 제2 값 및 제1 깊이 맵의 제1 원래 깊이 값 중 적어도 하나에 기초하여 제1 이미지의 제1 뷰 포즈와 제2 이미지의 제2 뷰 포즈 사이의 투영에 의한 제1 깊이 맵 위치에 대한 제2 깊이 맵 위치를 결정하는 단계를 포함할 수 있다.
예를 들어, 제1 깊이 맵 내의 주어진 제1 픽셀에 대하여, 업데이터(203)는 깊이 값을 추출하고 이것을 이용하여 대응하는 제1 깊이 맵 위치를 제2 깊이 맵 내의 대응하는 제2 깊이 맵 위치로 투영할 수 있다. 이어서 이 위치에서 제2 깊이 값을 추출할 수 있고 그것을 제1 후보 깊이 값으로서 사용할 수 있다.
다른 예로서, 제2 깊이 맵 내의 주어진 제2 픽셀에 대하여, 업데이터(203)는 깊이 값을 추출하고 이것을 이용하여 대응하는 제2 깊이 맵 위치를 제1 깊이 맵 내의 대응하는 제1 깊이 맵 위치로 투영할 수 있다. 이어서 제2 깊이 값을 추출할 수 있고, 이것을 제1 깊이 맵 위치에서의 제1 깊이 픽셀에 대한 제1 후보 깊이 값으로서 사용할 수 있다.
이러한 실시예들에서, 제2 깊이 맵 내의 깊이 값은 제1 후보 깊이 값으로서 직접 사용된다. 그러나, 두 깊이 맵 픽셀이 (폐색이 없을 때) 동일한 장면 포인트까지의 그러나 상이한 뷰포인트들로부터의 거리를 표현하기 때문에, 깊이 값들은 상이할 수 있다. 많은 실제 실시예들에서, 상이한 위치들의 카메라들/뷰 포즈들로부터 동일한 장면 포인트로의 거리의 이러한 차이는 중요하지 않으며 무시될 수 있다. 따라서, 많은 실시예들에서, 카메라들이 완벽하게 정렬되고 동일한 방향에서 바라보며 동일한 위치를 갖는다고 가정될 수 있다. 그 경우에, 객체가 평평하고 이미지 센서에 평행한 경우, 깊이는 실제로 2개의 대응하는 깊이 맵에서 정확하게 동일할 수 있다. 이러한 시나리오에서 편차들은 종종 무시할 만큼 충분히 작다.
그러나, 일부 실시예들에서, 제2 깊이 값으로부터의 제1 후보 깊이 값의 결정은 깊이 값을 수정하는 투영을 포함할 수 있다. 이는 두 뷰들의 투영 기하학적 형상을 고려하는 것을 포함하는 더 상세한 기하학적 계산에 기초할 수 있다.
일부 실시예들에서, 하나 초과의 제2 깊이 값이 제1 후보 깊이 값을 생성하는 데 사용될 수 있다. 예를 들어, 픽셀들의 중심들과 정렬되지 않은 투영들을 보상하기 위하여 상이한 깊이 값들 사이에 공간적 보간이 수행될 수 있다.
다른 예로서, 일부 실시예들에서, 제1 후보 깊이 값은 제2 깊이 맵 위치에 중심을 둔 커널이 제2 깊이 맵에 적용되는 공간적 필터링의 결과로서 결정될 수 있다.
하기의 설명은 각각의 후보 깊이 값이 오직 단일 제2 깊이 값에만 의존하고, 추가적으로 제2 깊이 값과 동일한 실시예들에 초점을 맞출 것이다.
많은 실시예들에서, 가중 조합은 상이한 제2 깊이 값들로부터 결정된 복수의 후보 깊이 값들을 추가로 포함할 수 있다.
구체적으로, 많은 실시예들에서, 가중 조합은 제2 깊이 맵의 지역으로부터의 후보 깊이 값들을 포함할 수 있다. 지역은 통상적으로 제1 깊이 맵 위치에 기초하여 결정될 수 있다. 구체적으로, 제2 깊이 맵 위치는 전술된 바와 같이 투영(어느 한방향 또는 양방향)에 의해 결정될 수 있고, 지역은 이 제2 깊이 맵 위치 주위의 지역(예컨대 윤곽이 사전결정됨)으로서 결정될 수 있다.
이 접근법은 그에 따라 제1 깊이 맵 내의 제1 깊이 픽셀에 대한 후보 깊이 값들의 세트를 제공할 수 있다. 후보 깊이 값들의 각각에 대하여, 업데이터(203)는 도 6의 방법을 수행하여 가중 조합에 대한 가중치를 결정할 수 있다.
이 접근법의 특별한 이점은 후보 깊이 값들에 대한 제2 깊이 값들의 선택이 후속 가중치 결정이 우수 및 열등 후보들을 적절히 가중할 것처럼 과도하게 중요하지는 않다는 것이다. 따라서, 많은 실시예들에서, 상대적으로 낮은 복잡성 접근법이 후보들을 선택하는 데 사용될 수 있다.
많은 실시예들에서, 예컨대 지역은 단순히 원래의 제1 깊이 값에 기초한 제1 깊이 맵으로부터 제2 깊이 맵으로의 투영에 의해 결정된 제2 깊이 맵 내의 위치 주위의 사전결정된 지역으로서 결정될 수 있다. 실제로, 많은 실시예들에서, 투영은 심지어 단순히 제1 깊이 맵 내에서와 동일한 제2 깊이 맵 내의 깊이 맵 위치 주위의 지역으로서 지역을 선택함으로써 대체될 수 있다. 따라서, 접근법은 단순히 제1 깊이 맵 내의 제1 픽셀의 위치와 동일한 제2 깊이 맵 내의 위치 주위의 지역 내의 제2 깊이 값들을 선택함으로써 깊이 값들의 후보 세트를 선택할 수 있다.
이러한 접근법은 리소스 사용을 감소시킬 수 있지만 실제로 효율적인 동작을 제공할 수 있다. 접근법은 특히 지역의 크기가 깊이 맵들 사이에서 일어나는 위치/시차 변이에 비교하여 상대적으로 큰 경우에 적합할 수 있다.
앞서 언급된 바와 같이, 많은 상이한 접근법들은 가중 조합에서 개별 후보 깊이 값들에 대한 가중치들을 결정하는 데 사용될 수 있다.
많은 실시예들에서, 제1 가중치는 제3 이미지와는 다른 이미지들에 대하여 결정된 추가 매칭 에러 표시들에 응답하여 추가로 결정될 수 있다. 많은 실시예들에서, 기술된 접근법은 제1 이미지와는 다른 모든 이미지들에 대하여 매칭 에러 표시를 생성하는 데 사용될 수 있다. 이어서 조합된 매칭 에러 표시는, 예컨대 이들의 평균으로서 생성될 수 있고, 제1 가중치는 이에 기초하여 결정될 수 있다.
구체적으로, 제1 가중치는 필터링되고 있는 뷰에서 모든 다른 뷰들
Figure pct00031
로의 별개의 매칭 에러들의 함수인 매칭 에러 메트릭에 의존할 수 있다. 후보
Figure pct00032
에 대한 가중치를 결정하기 위한 하나의 예시 메트릭은:
Figure pct00033
여기서
Figure pct00034
는 후보
Figure pct00035
가 주어졌을 때의 뷰
Figure pct00036
Figure pct00037
사이의 매칭 에러이다. 매칭 에러는 예컨대 단일 픽셀에 대한 색차에 따라 달라질 수 있거나 또는 픽셀 위치
Figure pct00038
주위의 공간 평균으로서 계산될 수 있다. 뷰들
Figure pct00039
에 대하여 최소 매칭 에러를 계산하는 대신에, 예컨대 평균 또는 중간값이 사용될 수 있다. 많은 실시예들에서 평가 기능은 바람직하게는 폐색에 의해 야기되는 매칭 에러 아웃라이어에 강건할 수 있다.
많은 실시예들에서, 제2 매칭 에러 표시는 제2 이미지에 대하여, 즉 제1 후보 깊이 값이 생성된 뷰에 대하여 결정될 수 있다. 이 제2 매칭 에러 표시의 결정은 제1 매칭 에러 표시에 대하여 기술된 것과 동일한 접근법을 사용할 수 있고, 제2 매칭 에러 표시는 제2 깊이 맵 위치에 대한 제2 이미지 내의 이미지 픽셀 값과 제1 깊이 맵 위치에 대한 제1 이미지 내의 이미지 픽셀 값 사이의 차이를 나타내도록 생성될 수 있다.
이어서 제1 가중치는 제1 매칭 에러 표시 및 제2 매칭 에러 표시 둘 모두(및 가능하게는 다른 매칭 에러 표시들 또는 파라미터들)에 응답하여 결정될 수 있다.
일부 실시예들에서, 이 가중치 결정은 예컨대 평균 매칭 에러 표시를 고려할 뿐만 아니라 또한 매칭 표시들 사이의 상대적인 차이를 고려할 수 있다. 예를 들어, 제1 매칭 에러 표시는 상대적으로 낮지만 제2 매칭 에러 표시는 상대적으로 높은 경우, 이는 가능하게는 제1 이미지에 대하여 제2 이미지에서 일어나는 폐색에 의한 것일 수 있다(그러나 제3 이미지는 아님). 따라서, 제1 가중치는 감소되거나 또는 심지어 0으로 설정될 수 있다.
가중치 고려사항들의 다른 예들은 예컨대 중위 매칭 에러 또는 다른 변위치와 같은 통계적 측정치들을 사용할 수 있다. 위와 유사한 추론이 여기에 적용된다. 예를 들어 우리가 모두 동일한 방향에서 바라보고 있는 9개의 카메라의 선형 카메라 어레이를 갖고 있다면, 우리는 중앙 카메라에 대하여 객체 에지 주위에서 좌측의 4개의 앵커 또는 우측의 4개의 앵커는 항상 비-폐색 지역을 바라볼 것으로 가정할 수 있다. 이 경우에 후보에 대한 양호한 총 가중치는 총 8개의 매칭 에러들 중 가장 낮은 4개만의 함수일 수 있다.
많은 실시예들에서, 가중 조합은 제1 깊이 맵 자체의의 다른 깊이 값들을 포함할 수 있다. 구체적으로, 제1 깊이 위치 주위의 제1 깊이 맵 내의 깊이 픽셀들의 세트는 가중 조합에 포함될 수 있다. 예를 들어, 사전결정된 공간 커널이 제1 깊이 맵에 적용되어 제1 깊이 맵의 저역 통과 필터링을 생성할 수 있다. 이어서 다른 뷰들로부터의 공간적으로 저역 통과 필터링된 제1 깊이 맵 값들 및 후보 깊이 값들의 가중은, 예컨대 고정 가중치를 저역 통과 필터링된 깊이 값에 적용하고 가변 제1 가중치를 제1 후보 깊이 값에 대하여 적용함으로써 적응될 수 있다.
많은 실시예들에서, 가중치들, 및 구체적으로 제1 가중치의 결정은 또한 깊이 값들에 대한 신뢰도 값들에 따라 달라진다.
깊이 추정 및 측정은 본질적으로 노이즈가 있고 다양한 에러들 및 변동들이 발생할 수 있다. 많은 깊이 추정 및 측정 알고리즘들은 또한 깊이 추정에 더하여 제공된 깊이 추정이 얼마나 신뢰할 수 있는지 나타내는 신뢰도 값을 생성할 수 있다. 예를 들어, 디스패리티 추정은 상이한 이미지들 내의 매칭 지역들을 검출하는 것에 기초할 수 있고, 신뢰도 값은 매칭 지역들이 얼마나 유사한지 반영하도록 생성될 수 있다.
신뢰도 값들은 상이한 방식들로 사용될 수 있다. 예를 들어, 많은 실시예들에서, 제1 후보 깊이 값에 대한 제1 가중치는 제1 후보 깊이 값에 대한 신뢰도 값, 구체적으로 제1 후보 깊이 값을 생성하는 데 사용되는 제2 깊이 값에 대한 신뢰도 값에 따라 달라질 수 있다. 제1 가중치는 제2 깊이 값에 대한 신뢰도 값의 단조 증가 함수일 수 있고, 따라서 제1 가중치는 제1 후보 깊이 값을 생성하는 데 사용되는 기저의 깊이 값(들)의 증가하는 신뢰도에 대하여 증가할 수 있다. 따라서, 가중 조합은 신뢰성있고 정확한 것으로 간주되는 깊이 값들을 향해 편향될 수 있다.
일부 실시예들에서, 깊이 맵에 대한 신뢰도 값들은 어떤 깊이 값들/픽셀들이 업데이트되고 어떤 깊이 픽셀들에 대하여 깊이 값이 변경되지 않고 유지될 지 선택하는 데 사용될 수 있다. 구체적으로, 업데이터(203)는 신뢰도 값이 업데이트될 임계치 미만인 제1 깊이 맵의 깊이 값들/픽셀들만을 선택하도록 배열될 수 있다.
따라서, 제1 깊이 맵 내의 모든 픽셀들을 업데이트하는 것이 아니라, 업데이터(203)는 신뢰할 수 없는 것으로 간주되는 깊이 값들을 구체적으로 식별하고 이러한 값들만 업데이트한다. 이는 많은 실시예들에서 전체 깊이 맵 개선을 이룰 수 있는데, 그 이유는 예컨대 매우 정확하고 신뢰할 만한 깊이 추정치들이 다른 뷰포인트들의 깊이 값들로부터 생성된 더 불확실한 값들에 의해 대체되는 것이 방지될 수 있기 때문이다.
일부 실시예들에서, 가중 조합에 포함되는 제2 깊이 맵의 깊이 값들의 세트는, 상이한 후보 깊이 값들에 기여하거나 또는 동일한 후보 깊이 값에 기여함으로써, 깊이 값들에 대한 신뢰도 값들에 의존할 수 있다. 구체적으로, 주어진 임계치 초과의 신뢰도 값을 갖는 깊이 값들만이 포함될 수 있고 모든 다른 깊이 값들은 프로세싱에서 폐기될 수 있다.
예를 들어, 업데이터(203)는 초기에 제2 깊이 맵을 스캐닝하고 신뢰도 값이 임계치 미만인 모든 깊이 값들을 제거함으로써 수정된 제2 깊이 맵을 생성할 수 있다. 이어서 전술된 프로세싱은 수정된 제2 깊이 맵을 이용하여 수행될 수 있으며, 제2 깊이 맵 내에 이러한 제2 깊이 값이 존재하지 않는 경우 제2 깊이 값을 필요로하는 모든 동작들은 우회된다. 예를 들어, 이러한 값이 존재하지 않는 경우에 제2 깊이 값에 대하여 후보 깊이 값이 생성되지 않는다.
일부 실시예들에서, 업데이터(203)는 또한 깊이 값들에 대한 신뢰도 값들을 생성하도록 배열될 수 있다.
일부 실시예들에서, 주어진 깊이 맵 내의 주어진 깊이 값에 대한 신뢰도 값은 이러한 깊이 맵들 내의 대응하는 위치들에 대한 다른 깊이 맵들 내의 깊이 값들의 변동에 응답하여 결정될 수 있다.
업데이터(203)는 먼저 신뢰도 값이 복수의 다른 깊이 맵들 내의 대응하는 위치들에 대하여, 그리고 통상적으로 이들 모두에 대하여 결정되는 주어진 깊이 값에 대하여 깊이 맵 위치를 투영할 수 있다.
구체적으로, 깊이 맵 k 내의 이미지 좌표
Figure pct00040
에서의 주어진 깊이 값에 대하여, 다른 깊이 맵들(통상적으로 이웃하는 뷰)의 세트
Figure pct00041
이 결정된다. 이러한 깊이 맵들(
Figure pct00042
)의 각각에 대하여,
Figure pct00043
에 대한 대응하는 이미지 좌표
Figure pct00044
가 재투영에 의해 계산된다.
이어서 업데이터(203)는 이러한 대응하는 위치들에서 이러한 다른 깊이 맵들 내의 깊이 값들을 고려할 수 있다. 이러한 깊이 값들에 대하여 대응하는 위치들에서 변동 측정치를 결정하도록 진행될 수 있다. 예컨대 변동 측정과 같은 임의의 적합한 변동의 측정이 사용될 수 있다.
이어서 업데이터(203)는 이러한 변동 측정치로부터 주어진 깊이 맵 위치에 대한 신뢰도 값을 결정하도록 진행할 수 있고, 구체적으로 증가하는 변동의 정도는 감소하는 신뢰도 값을 나타낼 수 있다. 따라서, 신뢰도 값은 변화 측정치의 단조 감소 함수일 수 있다.
구체적으로,
Figure pct00045
에 대한
Figure pct00046
에서의 깊이 값
Figure pct00047
및 대응하는 이웃 깊이 값들
Figure pct00048
의 세트를 고려하여, 신뢰도 메트릭이 이러한 깊이 값들의 일관성에 기초하여 계산될 수 있다. 예를 들어, 이 깊이 값들의 변동은 신뢰도 메트릭으로서 사용될 수 있다. 이어서 낮은 변동은 높은 신뢰도를 암시한다.
장면 내의 객체에 의해 또는 카메라 경계에 의해 잠재적으로 폐색되는 대응하는 이미지 좌표들
Figure pct00049
로부터 초래될 수 있는 아웃라이어들에 더 확고하게 이러한 결정을 내리는 것이 종종 바람직하다. 이를 달성하기 위한 한가지 특정 방법은 카메라 뷰
Figure pct00050
의 양쪽에서 2개의 이웃하는 뷰들
Figure pct00051
Figure pct00052
을 선택하고 깊이 차이의 최소값을 이용하는 것이다.
Figure pct00053
일부 실시예들에서, 주어진 깊이 맵 내의 주어진 깊이 값에 대한 신뢰도 값은 대응하는 주어진 깊이 위치를 다른 깊이 맵으로 투영하고 이어서 2개의 깊이 맵의 2개의 깊이 값을 이용하여 그것을 다시 투영함으로 인해 야기된 에러를 평가함으로써 결정될 수 있다.
따라서, 업데이터(203)는 먼저 주어진 깊이 값에 기초하여 주어진 깊이 맵 위치를 다른 깊이 맵에 투영할 수 있다. 이어서 이 투영된 위치에서의 깊이 값은 검색되고 다른 깊이 맵 내의 위치는 이 다른 깊이 값에 기초하여 원래 깊이 맵으로 다시 투영된다. 이는 (예컨대 카메라 및 캡처 속성들 및 기하학적 형상들을 고려하여) 투영들에 대한 2개의 깊이 값이 완벽하게 매칭되는 경우 원래 깊이 맵 위치와 정확하게 동일한 테스트 위치를 생성하게 된다. 그러나, 임의의 노이즈 또는 에러가 두 위치 사이의 차이를 초래할 것이다.
업데이터(203)는 그에 따라 주어진 깊이 맵 위치와 테스트 위치 사이의 거리에 응답하여 주어진 깊이 맵 위치에 대한 신뢰도 값을 결정하도록 진행할 수 있다. 거리가 작을수록, 신뢰도 값은 높을 수 있고, 따라서 신뢰도 값은 거리의 단조 감소 함수로서 결정될 수 있다. 많은 실시예들에서, 복수의 다른 깊이 맵들, 및 그에 따른 거리들이 고려될 수 있다.
따라서, 일부 실시예들에서, 신뢰도 값들은 모션 벡터들의 기하학적 일관성에 기초하여 결정될 수 있다.
Figure pct00054
은 픽셀
Figure pct00055
을 주어진 그것의 깊이
Figure pct00056
만큼 이웃 뷰
Figure pct00057
로 가져가는 2D 모션 벡터를 나타낸다. 이웃 뷰들
Figure pct00058
내의 각각의 대응하는 픽셀 위치
Figure pct00059
는 자신만의 깊이
Figure pct00060
를 가지며, 이는 뷰
Figure pct00061
로 돌아가는 벡터
Figure pct00062
를 생성한다. 이상적인 경우에, 0개의 에러인 경우, 모든 이러한 벡터들은 정확히 원래 포인트
Figure pct00063
로 다시 맵핑된다. 그러나, 일반적으로, 이러한 경우가 아니며 신뢰가 적은 지역들의 경우 확실히 그렇지 않다. 따라서 신뢰도 부족의 양호한 측정은 역-투영 위치의 평균 에러이다. 이러한 에러 메트릭은 다음과 같이 공식화될 수 있다:
Figure pct00064
여기서
Figure pct00065
는 깊이 값
Figure pct00066
을 이용하여 이웃 뷰
Figure pct00067
로부터의 뷰
Figure pct00068
내의 역-투영 이미지 좌표를 나타낸다. 규범
Figure pct00069
은 L1 또는 L2 또는 임의의 다른 규범일 수 있다. 신뢰도 값은 이 값의 단조 감소 함수로서 결정될 수 있다.
용어 "후보"는 깊이 값에 대한 임의의 한계를 암시하지 않으며, 용어 후보 깊이 값은 가중 조합에 포함되는 임의의 깊이 값을 지칭할 수 있다는 것이 이해될 것이다.
상기 설명은 명료함을 위해 상이한 기능 회로들, 유닛들 및 프로세서들을 참조하여 본 발명의 실시예들을 설명하였음이 이해될 것이다. 그러나, 본 발명으로부터 벗어남이 없이 상이한 기능 회로들, 유닛들 또는 프로세서들 사이의 기능의 임의의 적합한 분배가 사용될 수 있음이 명백할 것이다. 예를 들어, 별개의 프로세서들 또는 제어기들에 의해 수행되도록 예시된 기능이 동일한 프로세서 또는 제어기들에 의해 수행될 수 있다. 따라서, 특정 기능 유닛들 또는 회로들에 대한 언급들은 단지 엄격한 논리적 또는 물리적 구조 또는 조직을 나타내기보다는 설명된 기능을 제공하기 위한 적합한 수단에 대한 언급들로 보여져야 한다.
본 발명은 하드웨어, 소프트웨어, 펌웨어 또는 이들의 임의의 조합을 포함한 임의의 적합한 형태로 구현될 수 있다. 본 발명은 선택적으로, 하나 이상의 데이터 프로세서들 및/또는 디지털 신호 프로세서들 상에서 실행되는 컴퓨터 소프트웨어로서 적어도 부분적으로 구현될 수 있다. 본 발명의 실시예의 요소들 및 컴포넌트들은 임의의 적합한 방식으로 물리적으로, 기능적으로 그리고 논리적으로 구현될 수 있다. 실제로, 기능은 단일 유닛에서, 복수의 유닛들에서 또는 다른 기능 유닛들의 일부로서 구현될 수 있다. 그와 같이, 본 발명은 단일 유닛에서 구현될 수 있거나, 상이한 유닛들, 회로들 및 프로세서들 사이에 물리적으로 그리고 기능적으로 분배될 수 있다.
본 발명이 일부 실시예들과 관련하여 설명되었지만, 본 발명은 본 명세서에 기재된 특정 형태로 제한되도록 의도되지 않는다. 오히려, 본 발명의 범주는 첨부된 청구항들에 의해서만 제한된다. 또한, 특징이 특정 실시예들과 관련하여 설명되는 것으로 보일 수 있지만, 당업자는 설명된 실시예들의 다양한 특징들이 본 발명에 따라 조합될 수 있음을 인식할 것이다. 청구항들에서, 용어 '포함하는'은 다른 요소들 또는 단계들의 존재를 배제하지는 않는다.
또한, 개별적으로 열거되지만, 복수의 수단, 요소들, 회로들 또는 방법 단계들은 예컨대 단일 회로, 유닛 또는 프로세서에 의해 구현될 수 있다. 또한, 개별 특징들이 상이한 청구항들에 포함될 수 있지만, 이들은 아마도 유리하게 조합될 수 있으며, 상이한 청구항들에의 포함은 특징들의 조합이 실현 가능하지 않고/않거나 유리하지 않다는 것을 암시하지 않는다. 또한 하나의 카테고리의 청구항들에의 소정 특징의 포함은 이 카테고리로의 제한을 암시하는 것이 아니라, 오히려 그 특징이 적절한 바에 따라 다른 청구항 카테고리들에 동등하게 적용될 수 있음을 나타낸다. 또한, 청구항들에서의 특징들의 순서는 특징들이 작용되어야 하는 임의의 특정 순서를 암시하지는 않으며, 특히 방법 청구항에서의 개별 단계들의 순서는 단계들이 이러한 순서대로 수행되어야 함을 암시하지 않는다. 오히려, 단계들은 임의의 적합한 순서로 수행될 수 있다. 또한, 단수형 언급들은 복수를 배제하지 않는다. 따라서 "부정관사(a, an)", "제1", "제2" 등에 대한 언급들은 복수를 배제하지 않는다. 용어 "제1", "제2", "제3" 등은 라벨로서 사용되며, 따라서 대응하는 특징부의 명확한 식별을 제공하는 임의의 다른 제한을 암시하지 않으며, 임의의 방식으로 청구범위의 범주를 제한하는 것으로 해석되어서는 안 된다. 청구항들에서의 참조 부호들은 단지 명료화 예로서 제공되며, 어떤 방식으로도 청구항들의 범주를 제한하는 것으로 해석되지 않아야 한다.

Claims (15)

  1. 깊이 맵들을 처리하는 방법으로서,
    상이한 뷰 포즈들로부터 장면을 표현하는 복수의 이미지들 및 대응하는 깊이 맵들을 수신하는 단계(301);
    상기 대응하는 깊이 맵들 중 적어도 제2 깊이 맵의 깊이 값들에 기초하여 상기 대응하는 깊이 맵들의 제1 깊이 맵의 깊이 값들을 업데이트하는 단계(303)를 포함하고, 상기 제1 깊이 맵은 제1 이미지에 대한 것이고 상기 제2 깊이 맵은 제2 이미지에 대한 것이고, 상기 업데이트하는 단계(303)는:
    상기 제1 깊이 맵 내의 제1 깊이 맵 위치에서의 상기 제1 깊이 맵의 제1 깊이 픽셀에 대한 제1 후보 깊이 값을 결정하는 단계(501)로서, 상기 제1 후보 깊이 값은 상기 제2 깊이 맵 내의 제2 깊이 맵 위치에서의 상기 제2 깊이 맵의 제2 깊이 픽셀의 적어도 하나의 제2 깊이 값에 응답하여 결정되는, 상기 제1 후보 깊이 값을 결정하는 단계(501);
    상기 제1 깊이 맵 위치에 대한 복수의 후보 깊이 값들의 가중 조합에 의해 상기 제1 깊이 픽셀에 대한 제1 깊이 값을 결정하는 단계(503)로서, 상기 가중 조합은 제1 가중치에 의해 가중된 상기 제1 후보 깊이 값을 포함하는, 상기 제1 깊이 값을 결정하는 단계(503)를 포함하고;
    상기 제1 깊이 값을 결정하는 단계(503)는:
    상기 제1 깊이 맵 위치에 대한 상기 제1 이미지 내의 제1 이미지 위치를 결정하는 단계(601),
    상기 복수의 이미지들 중 제3 이미지 내의 제3 이미지 위치를 결정하는 단계(603)로서, 상기 제3 이미지 위치는 상기 제1 후보 깊이 값에 기초하여 상기 제3 이미지에 대한 상기 제1 이미지 위치의 투영에 대응하는, 상기 제3 이미지 위치를 결정하는 단계(603);
    상기 제3 이미지 위치에 대한 상기 제3 이미지 내의 이미지 픽셀 값과 상기 제1 이미지 위치에 대한 상기 제1 이미지 내의 이미지 픽셀 값 사이의 차이를 나타내는 제1 매칭 에러 표시를 결정하는 단계(605), 및
    상기 제1 매칭 에러 표시에 응답하여 상기 제1 가중치를 결정하는 단계(607)를 포함하는, 방법.
  2. 제1항에 있어서, 제1 후보 깊이 값을 결정하는 단계(501)는 상기 제2 값 및 상기 제1 깊이 맵의 제1 원래 깊이 값 중 적어도 하나에 기초하여 상기 제1 이미지의 제1 뷰 포즈와 상기 제2 이미지의 제2 뷰 포즈 사이의 투영에 의한 상기 제1 깊이 맵 위치에 대한 상기 제2 깊이 맵 위치를 결정하는 단계를 포함하는, 방법.
  3. 제1항 또는 제2항에 있어서, 상기 가중 조합은 상기 제1 깊이 맵 위치에 응답하여 결정된 상기 제2 깊이 맵의 지역으로부터 결정된 후보 깊이 값들을 포함하는, 방법.
  4. 제3항에 있어서, 상기 제2 깊이 맵의 상기 지역은 상기 제2 깊이 맵 위치 주위의 지역으로서 결정되고, 상기 제2 깊이 맵 위치는 상기 제1 깊이 맵 내의 상기 제1 깊이 맵 위치와 동일한 상기 제2 깊이 맵 내의 깊이 맵 위치로서 결정되는, 방법.
  5. 제3항에 있어서, 상기 제2 깊이 맵의 상기 지역은 상기 제1 깊이 맵 위치에서의 상기 제1 깊이 맵 내의 원래 깊이 값에 기초하여 상기 제1 깊이 맵 위치로부터의 투영에 의해 결정된 상기 제2 깊이 맵 내의 위치 주위의 지역으로서 결정되는, 방법.
  6. 제1항 내지 제5항 중 어느 한 항에 있어서, 상기 제2 깊이 맵 위치에 대한 상기 제2 이미지 내의 이미지 픽셀 값과 상기 제1 깊이 맵 위치에 대한 상기 제1 이미지 내의 상기 이미지 픽셀 값 사이의 차이를 나타내는 제2 매칭 에러 표시를 결정하는 단계를 추가로 포함하고; 상기 제1 가중치를 결정하는 단계는 또한 상기 제2 매칭 에러 표시에 응답하는, 방법.
  7. 제1항 내지 제6항 중 어느 한 항에 있어서, 상기 제1 깊이 맵 위치에 대응하는 깊이 맵 위치들에 대한 다른 이미지들 내의 이미지 픽셀 값들과 상기 제1 깊이 맵 위치에 대한 상기 제1 이미지 내의 상기 이미지 픽셀 값 사이의 차이를 나타내는 추가 매칭 에러 표시들을 결정하는 단계를 추가로 포함하고; 상기 제1 가중치를 결정하는 단계는 또한 상기 추가 매칭 에러 표시들에 응답하는, 방법.
  8. 제1항 내지 제7항 중 어느 한 항에 있어서, 상기 가중 조합은 상기 제1 깊이 맵 위치 주위의 지역 내의 상기 제1 깊이 맵의 깊이 값들을 포함하는, 방법.
  9. 제1항 내지 제8항 중 어느 한 항에 있어서, 상기 제1 가중치는 상기 제1 후보 깊이 값의 신뢰도 값에 의존하는, 방법.
  10. 제1항 내지 제9항 중 어느 한 항에 있어서, 신뢰도 값이 임계치 미만인 상기 제1 깊이 맵의 깊이 값들만이 업데이트되는, 방법.
  11. 제1항 내지 제10항 중 어느 한 항에 있어서, 깊이 값들의 세트의 깊이 값이 임계치 초과의 신뢰도 값을 가져야 한다는 요건을 조건으로 상기 가중 조합에 포함시킬 상기 제2 깊이 맵의 상기 깊이 값들의 세트를 선택하는 단계를 추가로 포함하는, 방법.
  12. 제1항 내지 제11항 중 어느 한 항에 있어서:
    주어진 깊이 맵 내의 주어진 깊이 값에 대한 주어진 깊이 맵 위치를 복수의 상기 대응하는 깊이 맵들 내의 대응하는 위치들로 투영하는 단계;
    상기 주어진 깊이 값 및 상기 복수의 상기 대응하는 깊이 맵들 내의 상기 대응하는 위치들에서의 깊이 값들을 포함하는 깊이 값들의 세트에 대한 변동 측정치를 결정하는 단계; 및
    상기 변동 측정치에 응답하여 상기 주어진 깊이 맵 위치에 대한 신뢰도 값을 결정하는 단계를 추가로 포함하는, 방법.
  13. 제1항 내지 제12항 중 어느 한 항에 있어서:
    주어진 깊이 맵 내의 주어진 깊이 값에 대한 주어진 깊이 맵 위치를 다른 깊이 맵 내의 대응하는 위치로 투영하는 단계로서, 상기 투영은 상기 주어진 깊이 값에 기초하는, 상기 투영하는 단계;
    상기 다른 깊이 맵 내의 상기 대응하는 위치를 상기 주어진 깊이 맵 내의 테스트 위치로 투영하는 단계로서, 상기 투영은 상기 다른 깊이 맵 내의 상기 대응하는 위치에서의 깊이 값에 기초하는, 상기 투영하는 단계;
    상기 주어진 깊이 맵 위치와 상기 테스트 위치 사이의 거리에 응답하여 상기 주어진 깊이 맵 위치에 대한 신뢰도 값을 결정하는 단계를 추가로 포함하는, 방법.
  14. 깊이 맵들을 처리하기 위한 장치로서,
    상이한 뷰 포즈들로부터 장면을 표현하는 복수의 이미지들 및 대응하는 깊이 맵들을 수신하는 단계(301)를 위한 수신기(201);
    상기 대응하는 깊이 맵들 중 적어도 제2 깊이 맵의 깊이 값들에 기초하여 상기 대응하는 깊이 맵들의 제1 깊이 맵의 깊이 값들을 업데이트하는 단계(303)를 위한 업데이터(203)를 포함하고, 상기 제1 깊이 맵은 제1 이미지에 대한 것이고 상기 제2 깊이 맵은 제2 이미지에 대한 것이고, 상기 업데이트하는 단계(303)는:
    상기 제1 깊이 맵 내의 제1 깊이 맵 위치에서의 상기 제1 깊이 맵의 제1 깊이 픽셀에 대한 제1 후보 깊이 값을 결정하는 단계(501)로서, 상기 제1 후보 깊이 값은 상기 제2 깊이 맵 내의 제2 깊이 맵 위치에서의 상기 제2 깊이 맵의 제2 깊이 픽셀의 적어도 하나의 제2 깊이 값에 응답하여 결정되는, 상기 제1 후보 깊이 값을 결정하는 단계(501);
    상기 제1 깊이 맵 위치에 대한 복수의 후보 깊이 값들의 가중 조합에 의해 상기 제1 깊이 픽셀에 대한 제1 깊이 값을 결정하는 단계(503)로서, 상기 가중 조합은 제1 가중치에 의해 가중된 상기 제1 후보 깊이 값을 포함하는, 상기 제1 깊이 값을 결정하는 단계(503)를 포함하고;
    상기 제1 깊이 값을 결정하는 단계(503)는:
    상기 제1 깊이 맵 위치에 대한 상기 제1 이미지 내의 제1 이미지 위치를 결정하는 단계(601),
    상기 복수의 이미지들 중 제3 이미지 내의 제3 이미지 위치를 결정하는 단계(603)로서, 상기 제3 이미지 위치는 상기 제1 후보 깊이 값에 기초하여 상기 제3 이미지에 대한 상기 제1 이미지 위치의 투영에 대응하는, 상기 제3 이미지 위치를 결정하는 단계(603);
    상기 제3 이미지 위치에 대한 상기 제3 이미지 내의 이미지 픽셀 값과 상기 제1 이미지 위치에 대한 상기 제1 이미지 내의 이미지 픽셀 값 사이의 차이를 나타내는 제1 매칭 에러 표시를 결정하는 단계(605), 및
    상기 제1 매칭 에러 표시에 응답하여 상기 제1 가중치를 결정하는 단계(607)를 포함하는, 장치.
  15. 컴퓨터 프로그램 제품으로서, 상기 프로그램이 컴퓨터 상에서 실행될 때 제1항 내지 제13항의 단계들 모두를 수행하도록 적응된 컴퓨터 프로그램 코드 수단을 포함하는, 컴퓨터 프로그램 제품.
KR1020217031762A 2019-03-05 2020-03-03 이미지에 대한 깊이 맵의 처리 KR20210134956A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP19160805.8A EP3706070A1 (en) 2019-03-05 2019-03-05 Processing of depth maps for images
EP19160805.8 2019-03-05
PCT/EP2020/055565 WO2020178289A1 (en) 2019-03-05 2020-03-03 Processing of depth maps for images

Publications (1)

Publication Number Publication Date
KR20210134956A true KR20210134956A (ko) 2021-11-11

Family

ID=65729098

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217031762A KR20210134956A (ko) 2019-03-05 2020-03-03 이미지에 대한 깊이 맵의 처리

Country Status (9)

Country Link
US (1) US20220148207A1 (ko)
EP (2) EP3706070A1 (ko)
JP (1) JP7480163B2 (ko)
KR (1) KR20210134956A (ko)
CN (1) CN113795863A (ko)
BR (1) BR112021017545A2 (ko)
CA (1) CA3131980A1 (ko)
TW (1) TW202101374A (ko)
WO (1) WO2020178289A1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4013049A1 (en) 2020-12-09 2022-06-15 Koninklijke Philips N.V. Apparatus and method for processing a depth map
US20230083014A1 (en) * 2021-09-14 2023-03-16 Black Sesame Technologies Inc. Depth estimation based on data fusion of image sensor and depth sensor frames
EP4344237A1 (en) * 2022-09-21 2024-03-27 Koninklijke Philips N.V. Generation of depth maps for images
CN117805607B (zh) * 2024-02-29 2024-05-07 山西漳电科学技术研究院(有限公司) 发电厂直流系统直流级差配合试验方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102356637B (zh) 2009-01-30 2017-02-22 汤姆森特许公司 深度图的编码
US20120274626A1 (en) * 2011-04-29 2012-11-01 Himax Media Solutions, Inc. Stereoscopic Image Generating Apparatus and Method
JP5949314B2 (ja) 2012-08-20 2016-07-06 株式会社日本自動車部品総合研究所 視差マップ生成装置および視差マップ生成装置用のプログラム
EP2888720B1 (en) * 2012-08-21 2021-03-17 FotoNation Limited System and method for depth estimation from images captured using array cameras
GB2524478A (en) * 2014-03-20 2015-09-30 Nokia Technologies Oy Method, apparatus and computer program product for filtering of media content
GB2532003A (en) * 2014-10-31 2016-05-11 Nokia Technologies Oy Method for alignment of low-quality noisy depth map to the high-resolution colour image
JP7054803B2 (ja) 2017-07-21 2022-04-15 パナソニックIpマネジメント株式会社 カメラパラメタセット算出装置、カメラパラメタセット算出方法及びプログラム
US11024046B2 (en) * 2018-02-07 2021-06-01 Fotonation Limited Systems and methods for depth estimation using generative models
FR3088510A1 (fr) * 2018-11-09 2020-05-15 Orange Synthese de vues

Also Published As

Publication number Publication date
CN113795863A (zh) 2021-12-14
WO2020178289A1 (en) 2020-09-10
EP3706070A1 (en) 2020-09-09
US20220148207A1 (en) 2022-05-12
CA3131980A1 (en) 2020-09-10
TW202101374A (zh) 2021-01-01
JP7480163B2 (ja) 2024-05-09
EP3935602A1 (en) 2022-01-12
JP2022522504A (ja) 2022-04-19
BR112021017545A2 (pt) 2021-11-09

Similar Documents

Publication Publication Date Title
US11632533B2 (en) System and method for generating combined embedded multi-view interactive digital media representations
JP7480163B2 (ja) 画像の奥行きマップの処理
KR102546358B1 (ko) 장면의 타일식 3차원 이미지 표현을 생성하기 위한 장치 및 방법
KR20210059775A (ko) 이미지 합성
US11710273B2 (en) Image processing
EP3932081B1 (en) Apparatus and method of generating an image signal
EP3716217A1 (en) Techniques for detection of real-time occlusion
KR20210118458A (ko) 장면을 나타내는 이미지 신호
US20220174259A1 (en) Image signal representing a scene
RU2817803C2 (ru) Сигнал изображения, представляющий сцену
RU2771957C2 (ru) Устройство и способ для генерации мозаичного представления трехмерного изображения сцены
CN117616760A (zh) 图像生成