KR20190046850A - 몰입형 비디오 포맷을 위한 방법, 장치 및 스트림 - Google Patents

몰입형 비디오 포맷을 위한 방법, 장치 및 스트림 Download PDF

Info

Publication number
KR20190046850A
KR20190046850A KR1020197006918A KR20197006918A KR20190046850A KR 20190046850 A KR20190046850 A KR 20190046850A KR 1020197006918 A KR1020197006918 A KR 1020197006918A KR 20197006918 A KR20197006918 A KR 20197006918A KR 20190046850 A KR20190046850 A KR 20190046850A
Authority
KR
South Korea
Prior art keywords
parametric surface
data
stream
syntax element
obtaining
Prior art date
Application number
KR1020197006918A
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 KR20190046850A publication Critical patent/KR20190046850A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/40Scaling the whole image or part thereof
    • G06T3/4015Demosaicing, e.g. colour filter array [CFA], Bayer pattern
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/529Depth or shape recovery from texture
    • 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/557Depth or shape recovery from multiple images from light fields, e.g. from plenoptic cameras
    • 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/207Image signal generators using stereoscopic image cameras using a single 2D image sensor
    • H04N13/232Image signal generators using stereoscopic image cameras using a single 2D image sensor using fly-eye lenses, e.g. arrangements of circular lenses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
    • 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
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/56Particle system, point based geometry or rendering

Abstract

객체의 이미지(들)로부터 스트림을 생성하기 위한 방법 및 디바이스로서, 이는: 상기 객체의 적어도 일부를 표현하는 점 구름의 점들과 관련된 데이터를 획득하는 단계; 상기 객체의 상기 적어도 일부와 관련된 적어도 하나의 기하학적 특성 및 상기 적어도 하나의 이미지를 취득하는 데 사용된 취득 디바이스의 포즈 정보에 따라 파라메트릭 표면을 획득하는 단계; 상기 파라메트릭 표면과 관련된 높이 맵 및 하나 이상의 텍스처 맵을 획득하는 단계; 상기 적어도 하나의 파라미터에 관한 제1 신택스 요소, 상기 높이 맵에 관한 제2 신택스 요소, 상기 적어도 하나의 텍스처 맵에 관한 제3 신택스 요소 및 상기 취득 디바이스의 위치에 관한 제4 신택스 요소를 함께 결합함으로써 상기 스트림을 생성하는 단계를 포함한다. 본 개시는 또한 그렇게 획득된 스트림으로부터 객체의 이미지를 렌더링하기 위한 방법 및 디바이스와 관련된다.

Description

몰입형 비디오 포맷을 위한 방법, 장치 및 스트림
본 개시는 몰입형 비디오 콘텐츠의 분야에 관한 것이다. 본 개시는 또한 예를 들어 모바일 디바이스 또는 헤드 마운트 디스플레이(Head-Mounted Display)와 같은 최종 사용자 디바이스상에서 렌더링하기 위한 몰입형 콘텐츠를 나타내는 데이터의 포맷팅의 컨텍스트에서 이해된다.
이 섹션은 아래에 설명 및/또는 청구되는 본 개시의 다양한 양태와 관련될 수 있는 기술의 다양한 양태를 독자에게 소개하기 위해 의도된 것이다. 이 논의는 독자에게 본 발명의 다양한 양태의 더 나은 이해를 용이하게 하기 위한 배경 정보를 제공하는 데 도움이 될 것으로 생각된다. 따라서, 이러한 진술은 선행 기술의 인정이 아니라 이 관점에서 읽혀져야 함을 이해해야 한다.
헤드 마운트 디스플레이(HMD) 또는 CAVE와 같은 디스플레이 시스템은 사용자가 몰입형 비디오 콘텐츠 내로 브라우징할 수 있게 한다. 몰입형 비디오 콘텐츠는 CGI(Computer-generated imagery) 기법들로 획득될 수 있다. 이러한 몰입형 비디오 콘텐츠에 의하면, 그것을 보는 사용자의 시점에 따라 콘텐츠를 계산하는 것이 가능하지만, 그래픽 품질이 비현실적이다. 몰입형 비디오 콘텐츠는 구체(sphere) 또는 정육면체(cube)와 같은 표면상에 비디오(예를 들어, 수 개의 카메라에 의해 취득된 비디오)의 매핑으로 획득될 수 있다. 이러한 몰입형 비디오 콘텐츠는 양호한 이미지 품질을 제공하지만, 특히 전경의 장면의 객체들, 즉 카메라로부터 가까운 객체들에 대한 시차(parallax)와 관련된 문제가 나타난다.
몰입형 비디오 콘텐츠의 컨텍스트에서, 자유 시점 비디오(free-viewpoint video, FVV)는 멀티뷰 비디오의 표현 및 코딩과 임의의 시점들로부터의 후속의 재차 렌더링을 위한 기법이다. 몰입형 컨텍스트에서 사용자 체험을 증대시키는 동안, 렌더러로 전송될 데이터의 양은 매우 중요하며 문제가 될 수 있다.
본 명세서에서 "일 실시예", "실시예", "예시적인 실시예", "특정한 실시예"에 대한 언급들은, 기술된 실시예가 특정한 특징, 구조, 또는 특성을 포함할 수 있지만, 모든 실시예가 반드시 그 특정한 특징, 구조, 또는 특성을 포함하는 것은 아닐 수 있음을 나타낸다. 더욱이, 이러한 문구들은 반드시 동일한 실시예를 언급하는 것은 아니다. 또한, 특정한 특징, 구조, 또는 특성이 실시예와 연계하여 설명될 때, 명백히 기술되든지 아니든지 간에 다른 실시예들과 연계하여 그러한 특징, 구조, 또는 특성에 영향을 미치는 것은 본 기술분야의 통상의 기술자의 지식 내에 있는 것으로 제안된다.
본 개시는 장면의 객체의 적어도 하나의 이미지로부터 스트림을 생성하는 방법에 관한 것으로, 이 방법은:
- 상기 객체의 적어도 일부를 표현하는 점 구름의 점들과 관련된 데이터를 획득하는 단계;
- 적어도 하나의 취득 디바이스에 따라 산출된 라이트 필드 및 상기 적어도 하나의 취득 디바이스와 상기 점 구름 사이의 최단 거리인 거리에 따라 파라메트릭 표면을 나타내는 적어도 하나의 파라미터를 획득하는 단계 -;
- 상기 데이터로부터 상기 파라메트릭 표면과 관련된 높이 맵을 획득하는 단계 - 상기 높이 맵은 상기 객체의 상기 적어도 일부와 상기 파라메트릭 표면 사이의 거리를 나타내는 정보를 포함함 -;
- 상기 데이터로부터 상기 파라메트릭 표면과 관련된 적어도 하나의 텍스처 맵을 획득하는 단계;
- 상기 적어도 하나의 파라미터에 관한 제1 신택스 요소, 상기 높이 맵에 관한 제2 신택스 요소, 상기 적어도 하나의 텍스처 맵에 관한 제3 신택스 요소 및 상기 취득 디바이스의 위치에 관한 제4 신택스 요소를 함께 결합함으로써 상기 스트림을 생성하는 단계를 포함한다.
특정한 특성에 따르면, 상기 적어도 하나의 파라미터는 상기 객체의 상기 적어도 일부의 변형에 따라 시간이 지나면서 달라진다.
특정한 특성에 따르면, 상기 데이터는 텍스처 정보 및 깊이를 나타내는 정보를 포함한다.
본 개시는 또한 장면의 객체의 적어도 하나의 이미지로부터 스트림을 생성하는 전술한 방법을 구현하도록 구성된 디바이스에 관한 것이다.
본 개시는 또한 장면의 객체를 나타내는 데이터를 실어 나르는 스트림에 관한 것으로, 상기 데이터는:
- 상기 객체의 적어도 일부와 관련된 적어도 하나의 기하학적 특성 및 상기 적어도 하나의 이미지를 취득하는 데 사용된 취득 디바이스의 포즈 정보에 따라 획득된 파라메트릭 표면을 나타내는 적어도 하나의 파라미터에 관한 제1 신택스 요소 - 상기 적어도 하나의 기하학적 특성은 상기 객체의 상기 적어도 일부와 관련된 상기 점 구름의 점들과 관련된 표면으로부터 획득됨 -;
- 상기 객체의 상기 적어도 일부를 표현하는 점 구름의 점들과 관련된 제2 데이터로부터 획득된 높이 맵에 관한 제2 신택스 요소 - 상기 높이 맵은 상기 객체의 상기 적어도 일부와 상기 파라메트릭 표면 사이의 거리를 나타내는 정보를 포함함 -;
- 상기 제2 데이터로부터 획득된 적어도 하나의 텍스처 맵에 관한 제3 신택스 요소; 및
- 상기 취득 디바이스의 위치에 관한 제4 신택스 요소를 포함한다.
특정한 특성에 따르면, 상기 제1 신택스 요소는 상기 객체의 상기 적어도 일부의 변형에 따라 달라지는 상기 적어도 하나의 파라미터의 변화에 따라 시간이 지나면서 달라진다.
특정한 특성에 따르면, 상기 제2 데이터는 텍스처 정보 및 깊이를 나타내는 정보를 포함한다.
본 개시는 또한 객체를 나타내는 데이터를 실어 나르는 스트림으로부터 상기 객체의 적어도 일부의 이미지를 렌더링하는 방법에 관한 것으로, 이 방법은:
- 상기 스트림의 제1 신택스 요소로부터 파라메트릭 표면을 나타내는 적어도 하나의 파라미터를 획득하는 단계;
- 상기 스트림의 제2 신택스 요소로부터 높이 맵을 획득하는 단계 - 상기 높이 맵은 상기 객체의 상기 적어도 일부와 상기 파라메트릭 표면 사이의 거리를 나타내는 정보를 포함함 -;
- 상기 스트림의 제3 신택스 요소로부터 적어도 하나의 텍스처 맵을 획득하는 단계;
- 상기 파라메트릭 표면, 상기 높이 맵 및 상기 적어도 하나의 텍스처 맵으로부터 상기 객체의 상기 적어도 일부를 표현하는 점 구름의 점들과 관련된 데이터를 획득하는 단계;
- 상기 데이터 및 상기 스트림의 제4 신택스 요소로부터의 취득 디바이스의 위치를 나타내는 정보에 기초하여 상기 이미지를 렌더링하는 단계를 포함한다.
특정한 특성에 따르면, 상기 데이터는 텍스처 정보 및 깊이를 나타내는 정보를 포함한다.
특정한 특성에 따르면, 상기 렌더링은 상기 데이터의 스플랫 렌더링(splat rendering)을 포함한다.
본 개시는 또한 객체를 나타내는 데이터를 실어 나르는 스트림으로부터 상기 객체의 적어도 일부의 이미지를 렌더링하는 전술한 방법을 구현하도록 구성된 디바이스에 관한 것이다.
본 개시는 또한 이 프로그램이 컴퓨터에서 실행될 때, 객체를 나타내는 데이터를 실어 나르는 스트림으로부터 상기 객체의 적어도 일부의 이미지를 렌더링하는 방법의 단계들을 실행하는 프로그램 코드 명령어들을 포함하는 컴퓨터 프로그램 제품에 관한 것이다.
본 개시는 또한 장면의 객체의 적어도 하나의 이미지로부터 스트림을 생성하는 방법의 단계들을 실행하는 프로그램 코드 명령어들을 포함하는 컴퓨터 프로그램 제품에 관한 것이다.
본 개시는 또한 프로세서로 하여금 장면의 객체의 적어도 하나의 이미지로부터 스트림을 생성하는 전술한 방법을 적어도 수행하게 하는 명령어들이 저장된 (비일시적) 프로세서 판독가능 매체에 관한 것이다.
본 개시는 또한 이 프로그램이 컴퓨터에서 실행될 때, 프로세서로 하여금 객체를 나타내는 데이터를 실어 나르는 스트림으로부터 상기 객체의 적어도 일부의 이미지를 렌더링하는 전술한 방법을 적어도 수행하게 하는 명령어들이 저장된 (비일시적) 프로세서 판독가능 매체에 관한 것이다.
다음의 설명을 읽을 때, 본 개시가 더 잘 이해될 것이고, 다른 특정한 특징들 및 이점들이 나타날 것이며, 설명은 첨부된 도면들을 참조한다.
- 도 1은 본 원리들의 특정한 실시예에 따른, 몰입형 콘텐츠를 도시한다.
- 도 2a 및 도 2b는 본 원리들의 특정한 실시예에 따른, 도 1의 몰입형 콘텐츠의 적어도 일부를 획득하기 위한 장면의 이미지들을 취득하도록 구성된 라이트필드 취득 디바이스를 도시한다.
- 도 3은 본 원리들의 특정한 실시예에 따른, 도 2a 및 도 2b의 취득 디바이스로 취득된 장면의 객체의 일부의 표현을 도시한다.
- 도 4는 본 원리들의 특정한 실시예에 따른, 도 3의 객체를 표현하기 위한 프로세스에서 사용되는 파라메트릭 표면을 도시한다.
- 도 5a, 도 5b 및 도 5c는 도 4의 파라메트릭 표면의 샘플링의 예시적인 실시예들을 도시한다.
- 도 6은 본 원리들의 특정한 실시예에 따른, 도 3의 객체의 변형에 관한 도 4의 파라메트릭 표면의 매칭을 도시한다.
- 도 7은 본 원리들의 제1 특정한 실시예에 따른, 텍스처 정보와 도 4의 파라메트릭 표면과의 관련을 도시한다.
- 도 8은 본 원리들의 제2 특정한 실시예에 따른, 텍스처 정보와 도 4의 파라메트릭 표면과의 관련을 도시한다.
- 도 9는 본 원리들의 예에 따른, 도 12 및/또는 도 13의 방법(들)을 구현하도록 구성된 디바이스의 아키텍처의 예를 도시한다.
- 도 10은 본 원리들의 예에 따른, 통신 네트워크를 통해 통신하는 도 9의 2개의 원격 디바이스를 도시한다.
- 도 11은 본 원리들의 예에 따른, 도 3의 객체의 묘사를 실어 나르는 신호의 신택스를 도시한다.
- 도 12는 본 원리들의 예에 따른, 도 3의 객체를 묘사하는 데이터의 스트림을 생성하는 방법을 도시한다.
- 도 13은 본 원리들의 예에 따른, 도 3의 객체의 이미지를 렌더링하는 방법을 도시한다.
- 도 14는 본 원리들의 특정한 실시예에 따른, 취득 디바이스들의 라이트 필드에 따라 산출된 그리고 도 3의 객체를 표현하기 위한 프로세스에서 사용되는 예시적인 파라메트릭 표면을 도시한다.
이제, 도면들을 참조하여 본 주제가 설명되며, 전체에 걸쳐 동일한 참조 번호가 동일한 요소를 지칭하는 데 사용된다. 다음의 설명에서는, 설명의 목적으로, 본 주제에 대한 충분한 이해를 제공하기 위해 많은 특정 세부 사항이 설명된다. 그러나, 본 주제의 실시예들은 이들 특정 세부 사항 없이도 실시될 수 있음이 명백할 수 있다.
본 설명은 본 개시의 원리들을 예시한다. 따라서, 본 기술분야의 통상의 기술자들은, 비록 본 명세서에서 명시적으로 설명되거나 도시되지 않았지만, 본 개시의 원리들을 구현하는 다양한 배열들을 고안할 수 있음을 이해할 것이다.
본 원리들은 장면의 객체를 나타내는 데이터의 스트림을 생성하는 방법 및/또는 생성된 데이터 스트림으로부터 이 객체의 하나 이상의 이미지를 렌더링하는 방법의 특정한 실시예에 관련하여 설명될 것이다. 객체(또는 그의 일부)를 표현하는 점 구름이 하나 이상의 취득 디바이스로 취득된 객체(또는 그의 일부)의 하나 이상의 이미지로부터 결정된다. 파라메트릭 표면이 객체(또는 그의 일부)의 표현을 위한 기초로서 산출되며, 파라메트릭 표면은 객체의 기하학적 특성(예를 들어, 점 구름의 극점들 및/또는 점 구름으로부터 획득된 객체의 외부 표면의 요소들과 관련된 법선 정보) 및 취득 디바이스(들)의 포즈 정보를 사용하여 산출된다(예를 들어, 파라메트릭 표면의 방위 설정을 위해). 다른 실시예에서, 파라메트릭 표면은 취득 디바이스들에 의해 정의된 라이트 필드에 따라 산출된다. 파라메트릭 표면은, 예를 들어, 취득 디바이스들의 모든 광학 중심들에 중심을 둔 반구체들의 매끄러운 구분적 조합(smooth piecewise combination)으로서 형상화되고, 각각의 반구체의 반경은 다른 것들과 겹치지 않을 정도로 작다. 파라메트릭 표면은 취득 디바이스들과 점 구름의 가장 가까운 점 사이에 위치한다. 높이 맵 및 하나 이상의 텍스처 맵이 결정되고 파라메트릭 표면과 관련된다. 파라메트릭 표면을 나타내는 정보(즉, 파라미터들)를 높이 맵의 높이 정보, 텍스처 맵(들)의 텍스처 정보와 취득 디바이스(들)의 포즈 정보와 결합 및/또는 코딩함으로써 데이터 스트림이 생성된다. 디코더/렌더링되는 측에서, 파라메트릭 표면과 관련 높이 맵 및 텍스처 맵을 나타내는 정보를 디코딩/추출함으로써 객체(또는 그의 일부)의 이미지가 획득될 수 있다.
파라메트릭 표면의 샘플들과 관련된 텍스처 및 높이 정보로 객체를 표현하기 위한 기준으로 파라메트릭 표면을 사용함으로써 점 구름을 사용한 표현에 비하여 객체를 표현하는 데 필요한 데이터 양을 감소시키는 것을 가능하게 한다.
도 1은 본 원리들의 특정한 비제한적인 실시예에 따른, 4π 스테라디안(steradian) 비디오 콘텐츠의 비제한적인 예시적인 형태의 몰입형 콘텐츠(10)의 예를 도시한다. 도 1은 몰입형 콘텐츠(10)의 평면 표현에 대응한다. 몰입형 콘텐츠(10)는 예를 들어 하나 이상의 카메라로 취득된 실제 장면 또는 실제 객체 및 가상 객체를 포함하는 혼합 현실 장면에 대응하며, 가상 객체는 예를 들어 3D 엔진을 사용하여 합성된다. 몰입형 콘텐츠(10)의 일부(11)는 예를 들어 몰입형 콘텐츠를 시각화하도록 적응된 디스플레이 디바이스상에 디스플레이되는 몰입형 콘텐츠의 일부에 대응하며, 일부(11)의 크기는 예를 들어 디스플레이 디바이스에 의해 제공되는 시야와 동등하다.
몰입형 콘텐츠(10)를 시각화하는 데 사용되는 디스플레이 디바이스는 예를 들어 사용자의 머리에 또는 헬멧의 일부로서 착용되는 HMD(헤드 마운트 디스플레이)이다. HMD는 유리하게는 하나 이상의 디스플레이 스크린(예를 들어, LCD(Liquid Crystal Display), OLED(Organic Light-Emitting Diode) 또는 LCOS(Liquid Crystal On Silicon)) 및 실세계의 1개, 2개 또는 3개의 축(피치(pitch), 요(yaw) 및/또는 롤(roll) 축)에 따라, HMD의 위치의 변화(들)를 측정하도록 구성되는 센서(들), 예를 들어 자이로스코프 또는 IMU(Inertial Measurement Unit)를 포함한다. HMD의 측정된 위치에 대응하는 몰입형 콘텐츠(10)의 일부(11)는 유리하게는 실세계에서의 HMD와 관련된 시점과 몰입형 콘텐츠(10)와 관련된 가상 카메라의 시점 사이의 관계를 설정하는 특정 함수를 이용하여 결정된다. HMD의 측정된 위치에 따라 HMD의 디스플레이 스크린(들)상에 디스플레이될 비디오 콘텐츠의 일부(11)를 제어하는 것은 HMD를 착용한 사용자가 HMD의 디스플레이 스크린(들)과 관련된 시야보다 큰 몰입형 콘텐츠 내로 브라우징하는 것을 가능하게 한다. 예를 들어, HMD에 의해 제공되는 시야가 (예를 들어, 요 축에 관해) 110°와 동등한 경우에 그리고 몰입형 콘텐츠가 180°의 콘텐츠를 제공하는 경우에, HMD를 착용한 사용자는 자신의 머리를 우로 또는 좌로 회전하여 HMD에 의해 제공되는 시야 밖의 비디오 콘텐츠의 부분들을 볼 수 있다. 다른 예에 따르면, 몰입형 시스템은 CAVE(Cave Automatic Virtual Environment) 시스템이며, 여기서 몰입형 콘텐츠는 방의 벽들 상에 투영된다. CAVE의 벽들은 예를 들어 후방 투영 스크린들 또는 플랫 패널 디스플레이들로 구성된다. 따라서, 사용자는 방의 상이한 벽들 상에서 자신의 시선을 브라우징할 수 있다. CAVE 시스템은 유리하게는 사용자의 이미지들을 취득하는 카메라들을 구비하여, 이러한 이미지들의 비디오 처리에 의해 사용자의 시선 방향을 결정한다. 일 변형에 따르면, 사용자의 시선 또는 포즈는 추적 시스템, 예를 들어 적외선 추적 시스템, 사용자 착용 적외선 센서들을 이용하여 결정된다. 다른 변형에 따르면, 몰입형 시스템은 촉각 디스플레이 스크린을 구비한 태블릿이며, 사용자는 촉각 디스플레이 스크린상에 슬라이딩하는 하나 이상의 손가락으로 콘텐츠를 스크롤함으로써 콘텐츠 내로 브라우징한다.
몰입형 콘텐츠(10) 및 일부(11)는 전경 객체(들) 및 배경 객체(들)를 포함할 수 있다.
당연히, 몰입형 콘텐츠(10)는 4π 스테라디안 비디오 콘텐츠로 제한되는 것이 아니라, 시야(11)보다 큰 크기를 갖는 임의의 비디오 콘텐츠(또는 오디오-비주얼 콘텐츠)로 확장된다. 몰입형 콘텐츠는 예를 들어 2π, 2.5π, 3π 스테라디안 콘텐츠 등일 수 있다.
도 2a 및 도 2b는 라이트필드 취득 디바이스의 예를 도시한다. 더 구체적으로, 도 2a 및 도 2b는 각각 본 원리들의 2개의 특정한 실시예에 따른, 카메라 어레이(2A, 2B)(멀티카메라 어레이라고도 함)를 도시한다.
카메라 어레이(2A)는 수 개의 마이크로렌즈(201, 202 내지 20p) - p는 마이크로렌즈의 수에 대응하는 정수임 - 를 포함하는 렌즈들 또는 마이크로렌즈들의 어레이(20), 및 하나 또는 수 개의 센서 어레이(21)을 포함한다. 카메라 어레이(2A)는 메인 렌즈를 포함하지 않는다. 렌즈들의 어레이(20)는 일반적으로 마이크로렌즈 어레이로 명명되는 소형 디바이스일 수 있다. 단일 센서를 갖는 카메라 어레이는 메인 렌즈가 무한 초점 거리를 갖는 플레놉틱 카메라(plenoptic camera)의 특수한 경우로서 고려될 수 있다. 광센서의 수가 마이크로렌즈의 수와 동등한, 즉 하나의 광센서가 하나의 마이크로렌즈와 광학적으로 관련되는 특정한 배열에 따르면, 카메라 어레이(20)는 밀접하게 이격된 복수의 개개의 카메라(예를 들어, 마이크로-카메라)의 배열, 예컨대 (도 2a에 예시된 바와 같은) 정사각형 배열 또는 예를 들어 5점형(quincunx) 배열로 간주될 수 있다.
카메라 어레이(2B)는 각각 렌즈 및 광센서 어레이를 포함하는 개개의 카메라들의 리그(rig)에 대응한다. 카메라들은 예를 들어 수 센티미터 이하 또는 5, 7 또는 10cm와 동등한 거리만큼 이격된다.
이러한 카메라 어레이(2A 또는 2B)로 획득된 라이트필드 데이터(소위 라이트필드 이미지를 형성함)는 장면의 복수의 뷰에, 즉 렌즈릿 어레이와 광센서 어레이 사이의 거리가 마이크로렌즈의 초점 거리와 동등한 플레놉틱 카메라에 대응하는 타입 1.0의 플레놉틱 카메라 또는 그렇지 않으면 타입 2.0(포커싱된 플레놉틱 카메라라고도 함)와 같은 플레톱틱 카메라로 획득된 원시 이미지를 디멀티플렉싱 및 디모자이킹함으로써 획득될 수 있는 획득될 수 있는 최종 뷰들에 대응한다. 카메라 어레이(2B)의 카메라들은 임의의 공지된 방법에 따라 캘리브레이션되는데, 즉 카메라들의 내재적 및 외인성 파라미터들이 알려져 있다.
라이트필드 취득 디바이스로 획득된 상이한 뷰들은 몰입형 콘텐츠 또는 몰입형 콘텐츠의 적어도 일부를 획득하는 것을 가능하게 한다. 당연히, 몰입형 콘텐츠는 라이트필드 취득 디바이스와 상이한 취득 디바이스로, 예를 들어 깊이 센서와 관련된 카메라로(예를 들어, 마이크로소프트의 Kinect와 같은 적외선 이미터/수신기 또는 레이저 이미터로) 획득될 수 있다.
도 3은 몰입형 콘텐츠로 표현된 장면의 객체 또는 그의 일부의 2개의 상이한 표현을 보여준다. 도 3의 예에 따르면, 객체는 예를 들어, 장면 내에서 움직이는 사람이고, 머리에 대응하는 객체의 일부가 도 3에 예시되어 있다.
객체의 일부의 제1 표현(30)은 점 구름(point cloud)이다. 점 구름은 객체, 예를 들어 객체의 외부 표면 또는 외부 형상을 표현하는 많은 점들의 집합에 대응한다. 점 구름은 벡터 기반 구조로 간주될 수 있으며, 여기서 각각의 점은 그의 좌표(예를 들어, 3차원 좌표 XYZ, 또는 주어진 시점으로부터의 깊이/거리) 및 성분이라고도 하는 하나 이상의 속성을 갖는다. 성분의 예는 상이한 컬러 공간들에서 표현될 수 있는 컬러 성분, 예를 들어 RGB(Red, Green 및 Blue) 또는 YUV(Y는 루마(luma) 성분 및 UV는 2개의 크로미넌스(chrominance) 성분)이다. 점 구름은 주어진 시점 또는 시점들의 범위로부터 보이는 객체의 표현이다. 점 구름은 상이한 방법들로 획득될 수 있다, 예를 들어:
Figure pct00001
옵션으로 깊이 능동 감지 디바이스에 의해 보완되는, 도 2의 카메라 어레이들로서, 카메라들의 리그에 의해 촬영된 실제 객체의 캡처로부터;
Figure pct00002
모델링 도구에서 가상 카메라들의 리그에 의해 촬영된 가상/합성 객체의 캡처로부터;
Figure pct00003
실제 객체와 가상 객체 양쪽 모두의 혼합으로부터.
첫 번째 경우(실제 객체의 캡처로부터), 카메라들의 세트는 상이한 뷰들(상이한 시점들)에 대응하는 이미지들의 세트 또는 이미지들(비디오들)의 시퀀스들을 생성한다. 깊이 정보 - 각각의 카메라 중심으로부터 객체 표면까지의 거리를 의미함 - 는 능동 깊이 감지 디바이스에 의해, 예를 들어 적외선 범위에서 그리고 구조화된 광 분석 또는 비행 시간(time of flight)에 기초하여, 또는 디스패리티 알고리즘(disparity algorithms)에 기초하여 획득된다. 양쪽 모두의 경우, 모든 카메라가 본질적으로 또는 외부적으로 캘리브레이션될 필요가 있다. 디스패리티 알고리즘은 전형적으로 1차원 라인을 따라 만들어질, 한 쌍의 정정된 카메라 이미지들 상의 유사한 시각적 피처들의 검색으로 구성된다: 픽셀 열 차이가 클수록, 이 피처의 표면이 더 가깝다. 카메라 어레이의 경우에, 복수의 카메라 쌍의 이점을 취하여, 복수의 피어 디스패리티 정보의 결합으로부터 글로벌 깊이 정보가 획득될 수 있으며, 따라서 신호 대 잡음비를 향상시킬 수 있다.
두 번째 경우(합성 객체), 모델링 도구는 깊이 정보를 직접 제공한다.
객체의 일부의 제2 표현(31)이 점 구름 표현(30)으로부터 획득될 수 있으며, 제2 표현은 표면 표현에 대응한다. 점 구름은 그의 표면을 계산하기 위해 처리될 수 있다. 이를 위해, 점 구름의 주어진 점에 대해, 이 주어진 점의 이웃 점들을 사용하여 이 주어진 점에서의 로컬 표면의 법선을 계산하고, 이 주어진 점과 관련된 표면 요소가 법선으로부터 도출된다. 이 프로세스를 모든 점에 대해 반복하여 표면을 획득한다. 점 구름으로부터 표면을 재구성하는 방법들은 예를 들어 Matthew Berger 등의 "State of the Art in Surface Reconstruction from Point Clouds"(2014년, 첨단 기술 보고서)에 기술되어 있다. 일 변형에 따르면, 점 구름의 주어진 점과 관련된 표면 요소는 이 주어진 점에 스플랫 렌더링을 적용함으로써 획득된다. 객체의 표면(객체의 음함수 표면(implicit surface) 또는 외부 표면이라고도 함)은 점 구름의 점들과 관련된 모든 스플랫(예를 들어, 타원체)을 블렌딩함으로써 획득된다.
특정한 실시예에서, 점 구름은 객체 전체가 아니라, 객체의 일부 뷰만을 표현하며, 이는 예를 들어 영화 장면에서의 렌더링 측에서 객체가 보여지기로 되어 있는 방식에 대응한다. 예를 들어, 플랫 카메라 어레이를 향하는 캐릭터를 촬영하면 리그의 측에서만 점 구름이 생성된다. 캐릭터의 뒤쪽은 존재하지도 않고, 객체는 자체가 닫히지 않으므로, 이 객체의 기하학적 특성은 리그의 방향으로 방위 설정된 모든 표면들의 세트이다(각각의 로컬 표면들의 법선과 뒤로 취득 디바이스로의 광선 사이의 각도는 예를 들어 180° 미만이다).
도 4는 본 원리들의 비제한적인 실시예에 따른, 객체(43)를 표현하는 데 사용되는 표면(44)을 도시한다. 표면(44)은 파라메트릭 표면, 즉 파라미터들로 정의되고 파라메트릭 방정식에 의해 정의되는 표면이다.
가능한 파라메트릭 표면의 예는 도 4에 예시된 바와 같이 원통에 의해 주어진다(명확성을 위해 하나의 차원만이 예시되었지만 표면은 2차원 또는 3차원으로 정의될 수 있다). 파라메트릭 표면은 그 표면이 파라메트릭 방정식으로, 즉 한정된 수의 파라미터로 정의될 수 있는 한 임의의 형태, 예를 들어 정사각형, 직사각형 또는 더 복잡한 형상을 취할 수 있다. (도 3의 객체에 대응할 수 있는) 객체(43)는 3개의 취득 디바이스(40, 41 및 42), 예를 들어 3개의 RGB 카메라로 취득된다. 상이한 시점이 각각의 취득 디바이스(40, 41, 42)와 관련된다. 평평한 원통형 표면(45) 상에 객체(43)의 표면을 투영하는 것은 파라메트릭 표면(44)을 직사각형으로 매핑/투영하는 것에 대응한다. 객체(43)의 점들과 관련되고 취득 디바이스(40, 41, 42)로 획득된 이미지로부터 취득 및/또는 산출된 컬러 정보 및 깊이 정보는 평평한 원통형 표면(45)의 대응 점들과 관련되는데, 즉, 컬러 + 높이 정보가 행 인덱스 및 열 인덱스에 의해 정의된 각각의 점/픽셀과 관련된다. 표면(45)의 부분(450)과 관련된 컬러 및 높이 정보는 취득 디바이스(40)의 뷰로부터 획득된다; 표면(45)의 부분들(451)과 관련된 컬러 및 높이 정보는 취득 디바이스(41)와 관련된 뷰로부터 획득된다; 그리고 표면(45)의 부분들(452)과 관련된 컬러 및 높이 정보는 취득 디바이스(42)와 관련된 뷰로부터 획득된다.
타원체(46)는 표면(45)의 일부를 예시하고, 원형 점들은 파라메트릭 표면(44) 또는 그의 평평한 표현(45)상에 객체(43)의 점 구름 표현의 점들의 투영에 대응한다. 파라메트릭 표면(44)의 샘플링은 점 구름으로 인한 샘플링과는 상이할 수 있다. 파라메트릭 표면의 샘플링은 타원체(46)에서 십자 "+"로 표현되고, 파라메트릭 표면의 샘플링은 한정된 수의 파라미터로 묘사된다. 파라메트릭 표면(44)의 샘플링은 도 5a, 도 5b 및 도 5c의 예시적인 실시예에서 도시된 바와 같이 균일하거나 불균일할 수 있다.
도 5a의 예에서, 파라메트릭 표면의 샘플링(50)은 균일한데, 즉, 샘플 점들의 열들은 서로 동일한 거리에, 즉 거리 "a"로 배열되고, 행들도 마찬가지이다.
도 5b의 예에서, 파라메트릭 표면의 샘플링(51)은 불균일한데, 즉, 샘플 점의 열들은 서로로부터 상이한 거리에 배치되는데, 즉, (좌측에서 시작하여) 처음 2개의 열은 거리 "a", 그 후 2개의 열 사이의 거리는 "a+b", 그 후 "a+2b", 그 후 "a+3b" 등으로 이격된다. 도 5b의 예에서, 행들은 동일한 거리로 서로 이격되어 있다.
도 5a 및 도 5b의 예들에서, 각각의 샘플과 관련된 높이 정보와 관련된 방향은 파라메트릭 표면에 직각이다. 도 5c의 예에서, 샘플링(53)의 샘플들과 관련된 높이 정보와 관련된 방향은 샘플마다 변화하는 각도 θ0 + q*Δθ로 달라지는데, 여기서 θ0는 초기 각도이고, q는 0부터 최대 값 N까지 변화하는 정수이고, Δθ는 2개의 연속 샘플 간의 각도 변화에 대응한다.
파라메트릭 표면상의 샘플링의 밀도는 예를 들어 다음의 함수로 조정된다:
Figure pct00004
객체의, 즉 점 구름의 샘플링; 및/또는
Figure pct00005
예상되는 렌더링 품질.
예를 들어, 객체가 더 멀수록, 카메라 샘플링이 덜 밀집할 것이고, 파라메트릭 표면상의 샘플링이 덜 밀집할 수 있다.
파라메트릭 표면의 샘플들과 관련될 값은 다음과 같다:
Figure pct00006
기하학적 정보, 즉 파라메트릭 표면과 객체 음함수 표면 사이의 거리;
Figure pct00007
컬러 정보. 가장 단순한 형태에서, 합성 컬러 값이 파라메트릭 표면의 각각의 샘플에 대응하는 객체 표면 영역에 대한 상이한 뷰들로부터 계산되어, 예를 들어 평균 확산 컬러(즉, 파라메트릭 표면의 샘플과 관련될 수 있는 점 구름의 점들의 컬러 정보의 평균)로 이어질 수 있다.
파라메트릭 표면의 샘플들과 관련된 높이 정보는 파라메트릭 표면만큼 많은 샘플을 가진 높이 맵에 저장될 수 있다. 파라메트릭 표면의 샘플들과 관련된 컬러 정보는 파라메트릭 표면만큼 많은 샘플을 가진 텍스처 맵에 저장될 수 있다.
주어진 샘플과 관련될 높이 정보는 주어진 샘플로부터 광선을 캐스팅함으로써(도 5a, 도 5b 및 도 5c와 관련하여 설명된 바와 같이 샘플링에 따라, 파라메트릭 표면에 직각으로 또는 다르게) 획득될 수 있고, 높이는 광선과 점 구름으로부터 획득된 객체의 표면 간의 교차점과 관련된 점 구름의 영역에 속하는 점 구름의 점들로부터 샘플을 분리하는 거리로부터 결정된다. 수 개의 점이 영역에 속할 때, 거리는 샘플을 영역의 복수의 점으로부터 분리하는 거리들의 평균일 수 있다. 파라메트릭 표면 및 점 구름이 취득 디바이스와 관련하여 실세계 공간에 정의되면, 파라메트릭 표면의 샘플과 객체의 외부 표면의 점 사이의 거리가 유클리드 거리로서 획득된다.
동일한 방식으로, 주어진 샘플과 관련될 텍스처 정보가 주어진 샘플로부터 광선을 캐스팅함으로써 획득될 수 있다. 텍스처 정보는 광선과 객체의 표면 간의 교차점에 대응하는 영역에 속하는 점 구름의 점들의 텍스처/컬러 정보(예를 들어, 평균)로부터 획득된다. 다른 실시예에서, 파라메트릭 표면의 분석적 표현(즉, 그의 지오메트리 및 법선)이 알려질 때, 점 구름은 파라메트릭 표면상에 (법선 및 크기의 관련 정보를 사용하여) 직접 스플랫될 수 있다(예를 들어, 반복적인 뉴턴 방식을 사용하여). 그 경우 텍스처 정보는 스플랫의 블렌딩으로부터 획득된다.
일 변형에서, 복수의 파라메트릭 표면이 동일한 객체와 관련될 수 있다. 객체는 복수의 부분으로 분할될 수 있고, 상이한 파라메트릭 표면이 각각의 부분과 관련될 수 있으며, 주어진 부분과 관련된 파라메트릭 표면은 부분의 특정 지오메트리에 따라 그리고 부분을 취득하는 데 사용되는 취득 디바이스의 포즈 정보에 따라 결정될 수 있다. 이 변형에 따르면, 높이 맵 및 하나 이상의 텍스처 맵이 각각의 파라메트릭 표면과 관련된다. 예를 들어, 객체가 사람이라면, 제1 파라메트릭 표면은 하나의 다리와 관련될 수 있고, 제2 파라메트릭 표면은 나머지 다리와 관련될 수 있고, 제3 파라메트릭 표면은 팔과 관련될 수 있고, 제4 파라메트릭 표면은 나머지 팔과 관련될 수 있고, 제5 파라메트릭 표면은 몸통과 관련될 수 있고, 제6 파라메트릭 표면은 머리와 관련될 수 있다.
옵션으로서, 렌더링을 위해 필요하지만 시간 소모적인 MLS(Moving Least Squares) 표면으로부터의 계산 부산물들을 기록하기 위해 추가의 텍스처들이 추가할 수 있다. 예는 예를 들어, CGI 법선 맵에 상당하는 모드에서의, 법선 벡터의 텍스처이거나, 작은 및 큰 축 방향들 및 크기와 같은 스플랫 지오메트리일 수 있다. 이러한 추가의 텍스처들의 제약은 압축 엔진에 잘 맞기 위해서는 양호한 공간적 및 시간적 일관성 특성을 나타내야 한다는 것이다. 필요한 모든 정보가 전송되면, MLS 커널 파라미터들은 전송하는 것이 더 이상 유용하지 않다.
도 7에 예시된 특정한 실시예에서, 복수의 텍스처 맵이 하나 이상의 파라메트릭 표면과 관련될 수 있다. 도 7은 객체의 일부(70)에 대한 2개의 파라메트릭 표면(71, 72)의 생성을 예시하며, 일부(70)는 예를 들어 상이한 각도들에 따라 상이한 컬러들을 방출한다. 그 경우, 클라이언트 측에서 올바르게 그것을 렌더링하기 위해(예를 들어, 뷰포트의 방향에 따라 2개의 컬러 사이를 보간하는 것에 의해) 컬러들의 각도 확산의 정보뿐만 아니라 다른 텍스처 정보도 기록되고 전달될 수 있다. 일 변형에 따르면, 단일 파라메트릭 표면이 2개의 파라메트릭 표면(70, 71) 대신에 생성될 수 있으며, 상이한 텍스처 맵들이 단일 파라메트릭 표면과 관련된다.
도 8에 예시된 특정한 실시예에서, 복수의 파라메트릭 표면이 객체의 동일한 부분에 대해 생성될 수 있다. 예를 들어, 제1 파라메트릭 표면은 사람의 얼굴(81)에 대해 산출될 수 있다(및 그와 관련될 수 있다). 제2 파라메트릭 표면은 얼굴(81)의 일부에 대해 산출될 수 있고(및 그와 관련될 수 있고), 즉, 그 일부(82)는 눈을 포함한다. 제1 높이 맵 및 제1 텍스처 맵이 제1 텍스처 맵과 관련되어, 예를 들어 제1 상세 레벨(83)로 얼굴을 표현하는 것을 가능하게 할 수 있다. 제2 높이 맵 및 제2 텍스처 맵이 제2 텍스처 맵과 관련되어, 예를 들어 제2 상세 레벨(84)로 얼굴의 일부(82)를 표현하는 것을 가능하게 할 수 있다. 그 목표에 도달하기 위해, 제1 정의가 제1 파라메트릭 표면과 관련되고 제2 정의(제1 정의보다 높음)가 제2 파라메트릭 표면과 관련된다. 얼굴을 렌더링할 때 제2 텍스처가 보이게 하기 위해, 제2 높이 맵을 생성하기 위해 산출된 높이 값들로부터 오프셋 값이 감산된다. 그러면 제2 높이 맵에 저장된 높이 값들은 제2 파라메트릭 표면을 얼굴의 외부 표면으로부터 분리하는 실제 산출된 높이 값들보다 작다. 얼굴을 렌더링할 때, 제2 텍스처 정보는, 렌더링 시점에 관하여, 제1 텍스처 정보의 앞에 위치될 것이다.
특정한 실시예에서, 파라메트릭 표면은 도 14에 예시된 바와 같이 리그의 취득 디바이스들에 따라 산출된다. 이 예에서, 취득 시스템은 도 2a 및 도 2b에 도시된 준 핀홀 카메라의 평면 리그이다. 객체(140)는 3개의 카메라(141a, 141b 및 141c)에 의해 캡처된다. 객체(140)는 예를 들어 인간 캐릭터이다. 도 14에서, 그것은 위로부터 보이고 팔들은 신체의 앞에 있다. 우측 팔의 점(142)은 3개의 카메라(141a, 141b 및 142c)에 의해 캡처된다. 신체의 점(143)은 카메라들(141b 및 141c)에 의해 캡처되고, 점(143)은 카메라(141a)에 대해 팔에 의해 엄폐된다. 위에 설명된 원리들에 따라, 파라메트릭 표면(144), 예를 들어, 원통을 구축할 때, 점(142)은 점(145)에서 파라메트릭 표면(144) 상에 투영된다. 점(143)은 파라메트릭 표면(144) 상에 투영되지 않는데 그 이유는 그것은 점(142)보다 더 먼 거리에 동일한 법선 상에 놓여 있기 때문이다. 결과적으로, 점(143)은 높이 맵 및 텍스처 맵 상에 표현되지 않지만, 이 점(143)은 3개의 카메라 중 2개에 의해 캡처되었다. 디코더 측에서, 그것은 가짜 엄폐를 야기한다. 파라메트릭 표면(144)은 매우 적은 양의 파라미터들이 묘사될 것을 요구하고 점 구름의 덜 상세한 표현을 필요로 하는 애플리케이션들에 충분하다.
리그의 취득 디바이스들의 라이트 필드에 따라 산출된 파라메트릭 표면(146)이 위에 설명된 바와 같이 기하학적 파라메트릭 표면(144) 대신에 이용될 수 있다. 도 14의 예에서, 카메라들의 리그는 그의 라이트 필드(즉, 그를 따라 리그가 캡처할 수 있는 직선 광선들의 세트)에 의해 광학적으로 정의될 수 있다. 파라메트릭 표면(146)의 법선은 라이트 필드를 따라 지향되고, 카메라들의 리그에 의해 캡처된 모든 점은 파라메트릭 표면 상에 투영된다. 예를 들어, 파라메트릭 표면(146)은 취득 디바이스(들)의 모든 광학 중심들에 중심을 둔 반구체들의 매끄러운 구분적 조합으로서 형상화되고, 각각의 반구체의 반경은 다른 것들과 겹치지 않을 정도로 작다. 파라메트릭 표면(146)은 취득 디바이스들과 점 구름의 가장 가까운 점 사이에 위치한다.
이러한 파라메트릭 표면(146)에 의해, 리그에 의해 캡처된 각각의 점은 그것이 캡처된 여러 번까지 투영된다. 도 14의 예에서, 점(142)은 3개의 카메라에 의해 캡처되었고, 따라서, 점들(147a, 147b 및 147c)에서 세 번까지 투영된다. 점(143)은 점들(148b 및 148c)에서 파라메트릭 표면(146) 상에 두 번까지 투영된다. 일 변형에서, 중복 데이터를 인코딩하지 않기 위해, 이들 투영된 점 중 하나만이 점들의 세트에 의해 유지될 수 있다. 예를 들어, 높이 맵에서 최소 값을 갖는 점만이 유지된다. 일 변형에서, 가장 중앙의 카메라에 대응하는 반구체 상에 투영된 점들이 유지된다. 도 14의 예에서, 점들(147b 및 148b)은 유지되고 점들(147a, 147c 및 148c)은 폐기된다. 이들 2개의 기준은 제한적이지 않고, 예를 들어, 리그의 법선과 파라메트릭 표면의 법선 사이에 최저 각도를 갖는 점을 유지하는 것과 같은 다른 기준들이 이용될 수 있다.
도 6은 본 원리들의 특정한 비제한적인 실시예에 따른, 객체의 변형에 관한 파라메트릭 표면의 매칭을 도시한다. 도 6의 좌측 부분은 시간 t에서(또는 비디오의 제1 프레임 A에 대해) 획득된 객체(600)과 관련된 파라메트릭 표면(604)을 도시하고, 도 6의 우측 부분은 시간 t+1에서(또는 시간적으로 제1 프레임 A에 후속하는 비디오의 제2 프레임 B에 대해) 획득된 객체(601)(객체(600)에 대응하지만 상이한 외부 형상을 갖는, 즉 객체(601)는 객체(600)의 변형된 버전에 대응함)와 관련된 파라메트릭 표면(605)을 도시한다. 객체(600, 601)는 예를 들어 도 4의 취득 디바이스들(40, 41, 42)에 대응하는 카메라들(60, 61, 62)의 세트로 취득된다. 도 6의 상부 부분은 사용자 및 카메라들의 평면도에 대응하고 도 6의 하부 부분은 예를 들어 사용자 및 카메라들의 정면도에 대응하고, 카메라들은 하부 부분에 검은 디스크들로 예시되어 있다.
객체에 가장 충실하기 위해, 파라메트릭 표면에 대응하는 부분 원통(604, 605)이 카메라들(60, 61, 62)의 리그(전형적으로 정적임)의 측에서, 객체(600, 601)에 각각 가까이에, 객체(600, 601)를 각각 부분적으로 둘러싼다. 파라메트릭 표면(600, 601)의 좌표는 객체(600, 601)를 각각 둘러싸는 경계 상자(602, 603)를 계산하는 것에 의해 획득될 수 있으며, 경계 상자(602, 603)는 점 구름의 각각의 극 (x, y, z) 좌표에 의해 정의된다. 파라메트릭 표면(604, 605)을 나타내는 파라미터들(예를 들어, 원통형 형태의 파라메트릭 표면에 대한 높이, 반경, 중심 위치)은 경계 상자를 포함할 수 있는 것들인 것으로 결정되고, 파라메트릭 표면(604, 605)은 카메라 뷰의 방향으로 열려 있다.
이 예는 파라메트릭 표면이 (움직이는) 객체와 카메라들의 리그의 위치 양쪽 모두에 의존한다는 것을 보여준다.
카메라들(60, 61, 62)에 의해 캡처된 객체(600, 601)가 시간 t에서 시간 t+1까지 움직일 때, 객체를 표현하는 데 사용된 점 구름도 변화한다: 토폴로지(또는 객체의 기하학적 특성)는 예를 들어 객체의 움직임에 따라(또는 객체에 적용된 변형에 따라) 변화하고, 예를 들어 객체의 폭 및/또는 높이가 변화한다. 그러므로, 각각의 비디오 프레임에 대해, 점 구름과 관련된 모든 기하학적 및/또는 텍스처 정보를 기록 및/또는 전달하는 관련된 높이 맵 및 텍스처 맵(들)으로 객체를 표현하는 데 사용되는 파라메트릭 표면의 토폴로지를 조정하는 것이 적절하다. 다음의 제약들이 적용될 수 있다:
- 파라메트릭 표면으로의 점 구름의 투영은 양호한 공간적 및 시간적 일관성을 갖는 비디오 이미지들을 형성하여, 예를 들어 H264/MPEG4 또는 H265/HEVC와 같은 표준 또는 임의의 다른 표준에 기초하여, 정규 압축 엔진에 의해 효율적으로 압축될 수 있으며, 이는 표면이 단속적 운동 없이, 부드럽게 진화할 수 있게 됨을 의미한다; 및/또는
- 파라메트릭 표면은 점 구름의 투영에 의해 커버될 파라메트릭 표면의 부분들을 최대화하고 점 구름까지의 그것의 거리를 최소화하기 위해, 따라서 예를 들어 PSNR 메트릭에 의해 측정된 최종 이미지의 품질을 보존하기 위해 점 구름과 관련하여 배치될 수 있다. 더 정확하게는, 파라메트릭 표면은 다음과 같은 방식으로 선택된다:
1. 그것은 그것의 (폭 × 높이) 이미지 해상도의 가장 큰 이익을 취한다; 및/또는
2. 그것은 깊이를 코딩하는 데 유용한 비트의 수를 최적화한다.
- 각각의 프레임에서 파라메트릭 표면의 진화/변화는 메타데이터로서 쉽게 기록, 전달될 수 있으며, 디코더/렌더러 측에서 복구될 수 있는데, 이는 파라메트릭 표면이 한정된 수의 파라미터로 표현될 수 있다는 것을 의미한다.
도 12는 본 원리들의 비제한적인 실시예에 따른, 예를 들어 (도 9와 관련하여 설명된) 디바이스(9)에서 구현된 장면의 객체를 나타내는 데이터를 포함하는 스트림을 생성하는 방법을 예시한다.
단계 1200에서는, 디바이스(9)의 상이한 파라미터들이 업데이트된다. 특히, 객체의 표현과 관련된 데이터는 어떤 식으로든 초기화된다.
단계 1201에서는, 객체의 일부 또는 객체 전체를 표현하는 점 구름의 점들과 관련된 데이터가 획득된다. 데이터는 예를 들어 디바이스(9)의 로컬 메모리 또는 서버와 같은 원격 스토리지 디바이스(예를 들어 인터넷 또는 로컬 영역 네트워크와 같은 네트워크를 통해)와 같은 메모리 디바이스로부터 수신된다. 다른 예에 따르면, 데이터는 객체를 포함하는 장면의 하나 이상의 뷰를 취득하는 데 사용되는 하나 이상의 취득 디바이스로부터 수신된다. 데이터는 예를 들어 텍스처 정보(예를 들어, 컬러 정보) 및 거리 정보(예를 들어, 고려되는 점과 이 고려되는 점과 관련된 시점, 즉 고려되는 점을 취득하는 데 사용된 취득 디바이스의 시점 사이의 거리에 대응하는 높이의 깊이)를 포함한다.
단계 1202에서는, 파라메트릭 표면을 나타내는 하나 이상의 파라미터가 획득된다. 파라메트릭 표면은 점 구름으로 표현된 객체의 일부(또는 객체 전체)와 관련된다. 예시적인 파라메트릭 표면의 일반적인 표현은 다음과 같다:
x = f1(t1, t2)
y = f2(t1, t2)
z = f3(t1, t2)
여기서 x, y, z는 3차원의 좌표이고, f1, f2, f3는 연속 함수이고 t1, t2는 파라미터이다. 파라메트릭 표면의 파라미터들은 점 구름과 관련된 외부 표면의 기하학적 특성(들)에 따라 그리고 점 구름의 점들을 획득하는 데 사용되는 하나 이상의 취득 디바이스의 포즈 정보로부터 획득된다. 객체의 고려되는 부분과 관련될 파라메트릭 표면을 결정하기 위해, 점 구름의 극점들의 좌표가 예를 들어 점들과 관련된 좌표로부터 결정될 수 있다. 극점들은 좌표들이 표현되는 공간의 차원들 중 적어도 하나에 대해 최소 값 또는 최대를 갖는 점들에 대응한다. 점 구름을 감싸는 경계 상자가 극점들로부터 획득된다. 파라메트릭 표면은 경계 상자의 배면의 중심을 중심으로 갖고 경계 상자의 전방 에지를 통과하는 원통인 것으로 획득될 수 있으며, 기준은 취득 디바이스이다. 따라서 파라메트릭 표면의 방위는 취득 디바이스의 포즈 정보를 사용하여 결정된다.
일 변형에 따르면, 객체의 일부의 외부 표면과 관련된 법선 벡터들이 점 구름으로부터 산출된다. 법선 벡터들의 방위의 변화는 파라메트릭 표면이 외부 표면의 형상 변화에 접근하여 충실하는 방식으로 파라메트릭 표면을 결정하는 데 사용될 수 있다.
단계 1203에서는, 단계 1202에서 획득된 파라메트릭 표면과 관련된 높이 맵이 획득, 즉 결정 또는 산출된다. 파라메트릭 표면의 각각의 샘플에 대해, 광선(예를 들어, 고려되는 샘플에서 파라메트릭 표면에 직각)을 발사함으로써 높이 값이 산출된다. 고려되는 샘플과 관련될 높이 값은 고려되는 샘플과 (광선과 외부 표면 간의 교차점에 대응하는) 객체 점의 일부의 외부 표면의 요소 사이의 거리에 대응한다. 외부 표면의 요소와 관련된 좌표는 예를 들어 외부 표면의 이 표면 요소를 생성하는 데 사용되는 점 구름의 점들로부터 획득된다. 높이 맵을 획득하기 위해 파라메트릭 표면의 각각의 샘플에 대해 높이 값이 산출될 수 있고, 높이 맵은 예를 들어 맵의 각각의 샘플에 대한 높이 값을 저장하는 2차원 맵(또는 이미지)에 대응하며, 맵의 샘플의 수는 파라메트릭 표면의 샘플링의 샘플의 수에 대응한다.
단계 1204에서는, 단계 1202에서 획득된 파라메트릭 표면과 관련된 텍스처 맵이 획득, 즉 결정 또는 산출된다. 텍스처 맵은 예를 들어 맵의 각각의 샘플에 대한 텍스처 정보(예를 들어, 컬러 정보)를 저장하는 2차원 맵(또는 이미지)에 대응하고, 텍스처 맵의 샘플의 수는 파라메트릭 표면의 샘플링의 샘플의 수에 대응한다. 파라메트릭 표면의 고려되는 샘플과 관련된 텍스처 정보는 광선, 예를 들어, 고려되는 샘플에서 파라메트릭 표면에 직각인 광선을 발사함으로써 결정된다. 텍스처 맵에 저장할 텍스처 정보는 광선이 교차하는 객체의 일부의 외부 표면의 표면 요소와 관련된 텍스처 정보에 대응한다. 표면 요소와 관련된 텍스처 정보는 이 표면 요소를 획득하기 위해 사용된 점 구름의 점들의 텍스처 정보로부터 획득된다. 일 변형에서, 파라메트릭 표면에 대해 수 개의 텍스처 맵이 획득될 수 있다.
단계 1205에서는, 단계 1202에서 획득된 파라미터들, 단계 1203에서 획득된 높이 정보 및 단계 1204에서 획득된 텍스처 정보를 결합함으로써 객체의 일부를 나타내는 데이터를 포함하는 데이터 스트림(1100)이 획득된다. 이러한 스트림(1100)의 구조의 예가 도 11과 관련하여 설명된다. 높이 맵 및 하나 이상의 텍스처 맵과 관련된 파라메트릭 표면의 형태로 객체의 일부를 표현하는 것은 점 구름을 사용한 표현에 비하여 객체의 일부를 표현하는 데 필요한 데이터의 양을 감소시키는 이점을 갖는다. 점 구름을 획득하기 위해 사용된 취득 디바이스(들)의 위치를 나타내는 추가 정보가 스트림에 추가 될 수 있다. 이 추가 정보는 객체의 일부의 취득의 시점들의 범위의 한계에서 렌더링 디바이스상의 객체의 일부의 렌더링을 제약함으로써, 스트림에 포함된 객체의 일부의 표현을 위한 기초인 점 구름을 획득하는 데 사용된 시점들의 범위에 대응하지 않는 시점에 따라 데이터 스트림으로부터 객체의 일부를 렌더링하려고 시도할 때 발생할 수 있는 렌더링 아티팩트를 피하는 이점을 갖는다.
옵션의 단계에서, 데이터 스트림은 객체의 일부의 렌더링 또는 디스플레이를 위해 인코더로 전송되고 디코더 또는 렌더러에 의해 수신된다.
일 변형에서, 스트림의 데이터는 예를 들어, 객체의 일부의 형상 또는 외부 표면이 시간이 지나면서 달라질 때, 예를 들어 프레임마다 시간이 지나면서 변화한다. 외부 표면이 변화할 때, 파라메트릭 표면의 파라미터들은 객체의 일부의 형상의 변화를 표현하도록 높이 맵 및 텍스처 맵으로 업데이트된다.
다른 변형에서, 수 개의 파라메트릭 표면이, 예를 들어 상이한 샘플링 해상도들에 따라 객체의 동일한 부분을 표현하는 데 사용될 수 있다.
단일 파라메트릭 표면이 객체 전체를 표현하는 데 사용될 수 있거나 상이한 파라메트릭 표면들이 객체 전체를 표현하는 데 사용될 수 있다(예를 들어 객체의 각각 상이한 부분을 표현하기 위해 하나의 상이한 파라메트릭 표면이 결정될 수 있다). 이러한 변형에서, 데이터 스트림은 상이한 파라메트릭 표면들 및 관련된 높이 맵 및 텍스처 맵을 결합함으로써 획득된다.
다른 변형에 따르면, 객체의 배경을 나타내는 플랫 비디오(즉, 2D 비디오)가 스트림에, 예를 들어 mp4 또는 mkv와 같은 미디어 컨테이너 내의 스트림에 추가된다.
도 13은 도 12의 방법으로 획득된 스트림으로부터 객체의 적어도 일부를 나타내는 이미지를 렌더링하는 방법을 예시한다. 이 렌더링 방법은 예를 들어 본 원리들의 비제한적인 실시예에 따른, 디바이스(9)(도 9와 관련하여 설명됨)에서 구현된다.
단계 1300에서는, 디바이스(9)의 상이한 파라미터들이 업데이트된다. 특히, 객체의 적어도 일부의 표현과 관련된 데이터는 어떤 식으로든 초기화된다.
단계 1301에서는, 파라메트릭 표면을 나타내는 하나 이상의 파라미터가 데이터 스트림(1100)으로부터 획득되며, 이러한 스트림의 구조의 예가 도 11과 관련하여 설명된다. 하나 이상의 파라미터는 예를 들어 단계 1202에서 획득된 파라미터들에 대응한다.
단계 1302에서는, 단계 1301에서 획득된 파라메트릭 표면과 관련된 높이 맵이 스트림(1100)으로부터 획득된다. 높이 맵은 예를 들어 단계 1203에서 획득된 높이 맵에 대응한다.
단계 1303에서는, 단계 1301에서 획득된 파라메트릭 표면과 관련된 하나 이상의 텍스처 맵이 스트림(1100)으로부터 획득된다. 텍스처 맵은 예를 들어 단계 1204에서 획득된 텍스처 맵에 대응한다.
단계 1304에서는, 점 구름의 점들과 관련된 데이터가 단계 1301에서 획득된 파라메트릭 표면, 단계 1302에서 획득된 높이 맵 및 단계 1303에서 획득된 텍스처 맵으로부터 획득된다. 점들은 파라메트릭 표면의 샘플들을 역투영(deprojecting)함으로써 획득되며, 점들의 좌표는 샘플들의 좌표 및 샘플들과 관련된 높이 정보로부터 유도되고, 점들의 텍스처 정보는 샘플들과 관련된 텍스처 정보로부터 획득된다.
단계 1305에서는, 파라메트릭 표면, 높이 맵 및 텍스처 맵으로 표현된 객체의 일부의 이미지가 스트림(1100)에 포함된 위치 정보에 의해 제약되는 시점으로부터 렌더링된다. 객체의 일부의 외부 표면은 예를 들어 획득된 점 구름의 점들에 스플랫 렌더링 기법을 적용함으로써 획득될 수 있다. 일 변형에서, 스트림이 프레임들(즉, 이미지들)의 시퀀스에 대해 객체 또는 그의 일부를 나타내는 정보를 포함할 때 이미지들의 시퀀스가 렌더링된다.
도 9는 도 12 및/또는 도 13과 관련하여 설명된 방법을 구현하도록 구성될 수 있는 디바이스(9)의 예시적인 아키텍처를 도시한다.
디바이스(9)는 데이터 및 어드레스 버스(91)에 의해 함께 링크되는 다음의 요소들을 포함한다:
- 예를 들어, DSP(즉 Digital Signal Processor)인 마이크로프로세서(92)(또는 CPU);
- ROM(즉 Read Only Memory)(93);
- RAM(즉 Random Access Memory)(94);
- 스토리지 인터페이스(95);
- 애플리케이션으로부터 전송할 데이터의 수신을 위한 I/O 인터페이스(96); 및
- 전원 공급 장치, 예를 들어, 배터리.
예에 따르면, 전원 공급 장치는 디바이스의 외부에 있다. 언급된 메모리 각각에서, 본 명세서에서 사용되는 단어 <<레지스터>>는 작은 용량(몇 개의 비트)의 영역에 또는 매우 큰 영역(예를 들어, 전체 프로그램 또는 많은 양의 수신된 또는 디코딩된 데이터)에 대응할 수 있다. ROM(93)은 적어도 프로그램 및 파라미터들을 포함한다. ROM(93)은 본 원리들에 따른 기법들을 수행하기 위한 알고리즘들 및 명령어들을 저장할 수 있다. 스위치 온될 때, CPU(92)는 프로그램을 RAM에 업로드하고 대응하는 명령어들을 실행한다.
RAM(94)은 레지스터 내에 CPU(92)에 의해 실행되고 디바이스(9)의 스위치 온 이후에 업로드되는 프로그램, 레지스터 내의 입력 데이터, 레지스터 내의 방법의 상이한 상태들에 있는 중간 데이터, 및 레지스터 내의 방법의 실행을 위해 사용되는 다른 변수들을 포함한다.
본 명세서에 설명된 구현들은 예를 들어 방법 또는 프로세스, 장치, 컴퓨터 프로그램 제품, 데이터 스트림 또는 신호에서 구현될 수 있다. 단일 형태의 구현(예를 들어, 방법 또는 디바이스로서만 논의됨)의 컨텍스트에서만 논의된다 할지라도, 논의된 특징들의 구현은 다른 형태들(예를 들어, 프로그램)로 구현될 수도 있다. 장치는, 예를 들어 적절한 하드웨어, 소프트웨어 및 펌웨어에서 구현될 수 있다. 방법들은, 예를 들어 컴퓨터, 마이크로프로세서, 집적 회로, 또는 프로그램 가능 로직 디바이스를 포함하는 일반적으로 처리 디바이스를 지칭하는, 예를 들어 프로세서와 같은 예를 들어, 장치에서 구현될 수 있다. 프로세서들은 또한 예를 들어 컴퓨터, 셀 폰, 휴대용/개인 휴대 정보 단말기("PDA") 및 최종 사용자들 사이의 정보 통신을 용이하게 하는 다른 디바이스들과 같은 통신 디바이스를 포함한다.
인코딩 또는 인코더의 예에 따르면, 제1, 제2, 제3 및/또는 제4 신택스 요소들이 소스로부터 획득된다. 예를 들어, 소스는 다음을 포함하는 세트에 속한다:
- 로컬 메모리(93 또는 94), 예를 들어 비디오 메모리 또는 RAM(즉 Random Access Memory) , 플래시 메모리, ROM(즉 Read Only Memory) , 하드 디스크;
- 스토리지 인터페이스(95), 예를 들어 대용량 스토리지, RAM, 플래시 메모리, ROM, 광 디스크 또는 자기 서포트와의 인터페이스;
- 통신 인터페이스(96), 예를 들어 유선 인터페이스(예를 들어, 버스 인터페이스, 광역 네트워크 인터페이스, 로컬 영역 네트워크 인터페이스) 또는 무선 인터페이스(예컨대 IEEE 802.11 인터페이스 또는 Bluetooth® 인터페이스); 및
- 사용자가 데이터를 입력하는 것을 가능하게 하는 그래픽 사용자 인터페이스와 같은 사용자 인터페이스.
디코딩 또는 디코더(들)의 예들에 따르면, 제1, 제2 및/또는 제3 정보가 목적지로 전송되고; 구체적으로 목적지는 다음을 포함하는 세트에 속한다:
- 로컬 메모리(93 또는 94), 예를 들어 비디오 메모리 또는 RAM, 플래시 메모리, 하드 디스크;
- 스토리지 인터페이스(95), 예를 들어 대용량 스토리지, RAM, 플래시 메모리, ROM, 광 디스크 또는 자기 서포트와의 인터페이스; 및
- 통신 인터페이스(96), 예를 들어 유선 인터페이스(예를 들어, 버스 인터페이스(예를 들어, USB(즉 Universal Serial Bus)), 광역 네트워크 인터페이스, 로컬 영역 네트워크 인터페이스, HDMI(High Definition Multimedia Interface) 인터페이스) 또는 무선 인터페이스(예컨대 IEEE 802.11 인터페이스, WiFi® 또는 Bluetooth® 인터페이스). 인코딩 또는 인코더의 예들에 따르면, 객체를 나타내는 데이터를 포함하는 비트스트림이 목적지로 전송된다. 예로서, 비트스트림은 로컬 또는 원격 메모리, 예를 들어 비디오 메모리(94) 또는 RAM(94), 하드 디스크(93)에 저장된다. 일 변형에서, 비트스트림은 스토리지 인터페이스(95), 예를 들어 대용량 스토리지, 플래시 메모리, ROM, 광 디스크 또는 자기 서포트와의 인터페이스로 전송되고/되거나, 통신 인터페이스(96), 예를 들어 포인트 투 포인트 링크, 통신 버스, 포인트 투 멀티포인트 링크 또는 브로드캐스트 네트워크와의 인터페이스를 통해 전송된다.
디코딩 또는 디코더 또는 렌더러의 예들에 따르면, 비트스트림은 소스로부터 획득된다. 예시적으로, 비트스트림은 로컬 메모리, 예를 들어 비디오 메모리(94), RAM(94), ROM(93), 플래시 메모리(93) 또는 하드 디스크(93)로부터 판독된다. 일 변형에서, 비트스트림은 스토리지 인터페이스(95), 예를 들어 대용량 스토리지, RAM, ROM, 플래시 메모리, 광 디스크 또는 자기 서포트와의 인터페이스로부터 수신되고/되거나, 통신 인터페이스(96), 예를 들어 포인트 투 포인트 링크, 버스, 포인트 투 멀티포인트 링크 또는 브로드캐스트 네트워크와의 인터페이스로부터 수신된다.
예들에 따르면, 디바이스(9)는 도 12와 관련하여 설명되는 방법을 구현하도록 구성되고, 다음을 포함하는 세트에 속한다:
- 모바일 디바이스;
- 통신 디바이스;
- 게임 디바이스;
- 태블릿(또는 태블릿 컴퓨터);
- 노트북;
- 정지 화상 카메라;
- 비디오 카메라;
- 인코딩 칩;
- 서버(예를 들어, 브로드캐스트 서버, 주문형 비디오 서버 또는 웹 서버).
예들에 따르면, 디바이스(9)는 도 13과 관련하여 설명된 렌더링 방법을 구현하도록 구성되고, 다음을 포함하는 세트에 속한다:
- 모바일 디바이스;
- 통신 디바이스;
- 게임 디바이스;
- 셋톱 박스;
- TV 세트;
- 태블릿(또는 태블릿 컴퓨터);
- 노트북; 및
- 디스플레이(예컨대 HMD).
도 10에 예시된 예에 따르면, 통신 네트워크(NET)(1000)를 통해 (디바이스(9)의 타입의) 2개의 원격 디바이스(1001 및 1002) 간의 전송 컨텍스트에서, 디바이스(1001)는 도 12와 관련하여 설명된 바와 같은 스트림을 생성하는 방법을 구현하도록 구성되는 수단을 포함하고, 디바이스(1002)는 도 13과 관련하여 설명된 바와 같은 이미지를 렌더링하는 방법을 구현하도록 구성되는 수단을 포함한다.
예에 따르면, 네트워크(1000)는 디바이스(1001)로부터 디바이스(1002)를 포함하는 디코딩/렌더링 디바이스로 관련된 오디오 정보를 갖는 정지 화상 또는 비디오 화상을 브로드캐스트하도록 구성된 LAN 또는 WLAN 네트워크이다.
도 11은 데이터가 패킷 기반 전송 프로토콜을 통해 전송되는 경우 그러한 신호의 신택스의 실시예의 예를 도시한다. 도 11은 몰입형 비디오 스트림의 예시적인 구조(1100)를 도시한다. 구조는 독립된 신택스 요소들로 스트림을 조직하는 컨테이너로 구성된다. 구조는 스트림의 모든 신택스 요소에 공통인 데이터의 세트인 헤더 부분(1101)을 포함할 수 있다. 예를 들어, 헤더 부분은 신택스 요소들 각각의 본질과 역할을 기술하는, 신택스 요소들에 관한 메타데이터를 포함한다. 구조는 신택스 요소들(1102, 1103, 1104 및 1105)을 포함하는 페이로드를 포함할 수 있으며, 제1 신택스 요소(1102)는 파라메트릭 표면을 정의하는 파라미터들에 관한 것이고, 제2 신택스 요소는 파라메트릭 표면과 관련된 높이 맵에 관한 것이고, 제3 신택스 요소는 파라메트릭 표면과 관련된 하나 이상의 텍스처 맵에 관한 것이고, 제4 신택스 요소는 취득 디바이스의 위치 정보에 관한 것이다.
당연히, 본 개시는 전술한 실시예들에 제한되지 않는다.
특히, 본 개시는 스트림을 생성하는 방법 및 디바이스에 제한되지 않고 장면의 객체를 나타내는 데이터를 포함하는 패킷을 인코딩/디코딩하는 방법 및 이 방법을 구현하는 임의의 디바이스 및 특히 적어도 하나의 CPU 및/또는 적어도 하나의 GPU를 포함하는 임의의 디바이스로 확장된다.
본 개시는 또한 장면의 객체를 나타내는 정보를 포함하는 데이터 스트림으로부터 렌더링된 이미지를 디스플레이하는 방법(및 그를 위해 구성된 디바이스) 및 플랫 비디오로 객체를 렌더링하고 디스플레이하는 방법(및 그를 위해 구성된 디바이스)에 관한 것이다.
본 개시는 또한 스트림을 전송 및/또는 수신하는 방법(및 그를 위해 구성된 디바이스)에 관한 것이다.
본 명세서에 설명된 구현들은 예를 들어 방법 또는 프로세스, 장치, 컴퓨터 프로그램 제품, 데이터 스트림 또는 신호에서 구현될 수 있다. 단일 형태의 구현(예를 들어, 방법 또는 디바이스로서만 논의됨)의 컨텍스트에서만 논의된다 할지라도, 논의된 특징들의 구현은 다른 형태들(예를 들어, 프로그램)로 구현될 수도 있다. 장치는, 예를 들어 적절한 하드웨어, 소프트웨어 및 펌웨어에서 구현될 수 있다. 방법들은, 예를 들어 컴퓨터, 마이크로프로세서, 집적 회로, 또는 프로그램 가능 로직 디바이스를 포함하는 일반적으로 처리 디바이스를 지칭하는, 예를 들어 프로세서와 같은 예를 들어, 장치에서 구현될 수 있다. 프로세서들은 또한, 예를 들어, 스마트폰, 태블릿, 컴퓨터, 이동 전화, 휴대용/개인 휴대 정보 단말기("PDA"), 및 최종 사용자들 사이의 정보 통신을 용이하게 하는 다른 디바이스들과 같은 통신 디바이스를 포함한다.
본 명세서에 설명된 다양한 프로세스들 및 특징들의 구현들은 다양한 상이한 장비 또는 애플리케이션들, 특히 예를 들어, 데이터 인코딩, 데이터 디코딩, 뷰 생성, 텍스처 처리, 및 이미지들 및 관련된 텍스처 정보 및/또는 깊이 정보의 다른 처리와 관련된 장비 또는 애플리케이션들에서 실시될 수 있다. 이러한 장비의 예들은 인코더, 디코더, 디코더로부터의 출력을 처리하는 포스트 프로세서, 인코더에 입력을 제공하는 프리 프로세서, 비디오 코더, 비디오 디코더, 비디오 코덱, 웹 서버, 셋톱 박스, 랩톱, 개인용 컴퓨터, 셀 폰, PDA, 및 다른 통신 디바이스들을 포함한다. 명료한 바와 같이, 장비는 이동식이며, 심지어 이동 자동차 내에 설치될 수 있다.
또한, 방법들은 프로세서에 의해 수행되는 명령어들에 의해 구현될 수 있고, 그러한 명령어들(및/또는 구현에 의해 생성된 데이터 값들)은 예를 들어 집적 회로, 소프트웨어 캐리어, 또는 예를 들어 하드디스크, 컴팩트 디스켓("CD"), 광 디스크(예를 들어, 종종 디지털 다기능 디스크 또는 디지털 비디오 디스크로 지칭되는 DVD와 같은), 랜덤 액세스 메모리("RAM"), 또는 판독 전용 메모리("ROM")와 같은 다른 스토리지 디바이스와 같은 프로세서 판독가능 매체 상에 저장될 수 있다. 명령어들은 프로세서 판독가능 매체 상에 유형적으로 구현되는 애플리케이션 프로그램을 형성할 수 있다. 명령어들은, 예를 들어, 하드웨어, 펌웨어, 소프트웨어, 또는 조합으로 존재할 수 있다. 명령어들은, 예를 들어, 운영 체제, 별개의 애플리케이션, 또는 이 둘의 조합에서 발견될 수 있다. 따라서, 프로세서는, 예를 들어 프로세스를 수행하도록 구성된 디바이스와 프로세스를 수행하기 위한 명령어들을 갖는 프로세서 판독가능 매체를 포함하는 디바이스(예컨대 스토리지 디바이스) 양쪽 모두로서 특성화될 수 있다. 또한, 프로세서 판독가능 매체는, 명령어들에 더하여 또는 그 대신, 구현에 의해 생성되는 데이터 값들을 저장할 수 있다.
본 기술분야의 통상의 기술자에게 명백할 바와 같이, 구현들은, 예를 들어, 저장되거나 전송될 수 있는 정보를 실어 나르도록 포맷팅되는 다양한 신호들을 생성할 수 있다. 정보는, 예를 들어, 방법을 수행하기 위한 명령어들, 또는 설명된 구현들 중 하나에 의해 생성되는 데이터를 포함할 수 있다. 예를 들어, 신호는 설명된 실시예의 신택스를 기입하거나 판독하기 위한 규칙들을 데이터로서 실어 나르거나, 또는 설명된 실시예에 의해 기입되는 실제 신택스-값들을 데이터로서 실어 나르도록 포맷팅될 수 있다. 이러한 신호는, 예를 들어, 전자기파로서(예를 들어, 스펙트럼의 라디오 주파수 부분을 사용하여) 또는 베이스밴드 신호로서 포맷팅될 수 있다. 포맷팅은, 예를 들어, 데이터 스트림을 인코딩하는 것 및 인코딩된 데이터 스트림을 이용하여 캐리어를 변조하는 것을 포함한다. 신호가 실어 나르는 정보는, 예를 들어, 아날로그 또는 디지털 정보일 수 있다. 공지된 바와 같이, 신호는 다양한 상이한 유선 또는 무선 링크들을 통해 전송될 수 있다. 신호는 프로세서 판독가능 매체 상에 저장될 수 있다.
다수의 구현이 설명되었다. 그럼에도 불구하고, 다양한 변형이 이루어질 수 있음이 이해될 것이다. 예를 들어, 상이한 구현들의 요소는 조합되고, 보충되고, 수정되거나, 또는 제거되어 다른 구현들을 생성할 수 있다. 또한, 통상의 기술자는, 다른 구조들 및 프로세스들이 개시된 것들에 대해 치환될 수 있으며, 결과적인 구현들이 적어도 실질적으로 동일한 기능(들)을, 적어도 실질적으로 동일한 방식(들)으로 수행하여, 개시된 구현들과 적어도 실질적으로 동일한 결과(들)를 달성할 것임을 이해할 것이다. 따라서, 이들 및 다른 구현들이 이 출원에 의해 고려된다.

Claims (15)

  1. 복수의 취득 디바이스에 의해 캡처된 객체의 적어도 하나의 이미지로부터 스트림을 생성하는 방법으로서, 상기 방법은:
    - 상기 객체의 적어도 일부를 표현하는 점 구름의 점들과 관련된 데이터를 획득하는 단계(1201);
    - 상기 복수의 취득 디바이스의 라이트 필드에 따라 파라메트릭 표면(146)을 나타내는 적어도 하나의 파라미터를 획득하는 단계(1202);
    - 상기 데이터로부터 상기 파라메트릭 표면과 관련된 높이 맵을 획득하는 단계(1203) - 상기 높이 맵은 상기 객체의 상기 적어도 일부와 상기 파라메트릭 표면 사이의 거리를 나타내는 정보를 포함함 -;
    - 상기 데이터로부터 상기 파라메트릭 표면과 관련된 적어도 하나의 텍스처 맵을 획득하는 단계(1204);
    - 상기 적어도 하나의 파라미터를 포함하는 제1 신택스 요소, 상기 높이 맵을 포함하는 제2 신택스 요소, 상기 적어도 하나의 텍스처 맵을 포함하는 제3 신택스 요소 및 상기 복수의 취득 디바이스의 위치를 포함하는 제4 신택스 요소를 함께 결합함으로써 상기 스트림을 생성하는 단계(1205)를 포함하는, 방법.
  2. 제1항에 있어서, 상기 파라메트릭 표면은 상기 복수의 취득 디바이스의 모든 광학 중심들에 중심을 둔 반구체들의 매끄러운 구분적 조합(smooth piecewise combination)으로서 산출되는, 방법.
  3. 제1항 또는 제2항에 있어서, 상기 데이터와 관련된 상기 점들은 상기 높이 맵 및 텍스처 맵 상에 한 번만 투영되는, 방법.
  4. 복수의 취득 디바이스에 의해 캡처된 객체의 적어도 하나의 이미지로부터 스트림을 생성하도록 구성된 디바이스로서, 상기 디바이스는 적어도 하나의 프로세서와 관련된 메모리를 포함하고, 상기 프로세서는:
    - 상기 객체의 적어도 일부를 표현하는 점 구름의 점들과 관련된 데이터를 획득하고;
    - 상기 복수의 취득 디바이스의 라이트 필드에 따라 파라메트릭 표면을 나타내는 적어도 하나의 파라미터를 획득하고;
    - 상기 데이터로부터 상기 파라메트릭 표면과 관련된 높이 맵을 획득하고 - 상기 높이 맵은 상기 객체의 상기 적어도 일부와 상기 파라메트릭 표면 사이의 거리를 나타내는 정보를 포함함 -;
    - 상기 데이터로부터 상기 파라메트릭 표면과 관련된 적어도 하나의 텍스처 맵을 획득하고;
    - 상기 적어도 하나의 파라미터를 포함하는 제1 신택스 요소, 상기 높이 맵을 포함하는 제2 신택스 요소, 상기 적어도 하나의 텍스처 맵을 포함하는 제3 신택스 요소 및 상기 복수의 취득 디바이스의 위치를 포함하는 제4 신택스 요소를 함께 결합함으로써 상기 스트림을 생성하도록 구성되는, 디바이스.
  5. 제4항에 있어서, 상기 파라메트릭 표면은 상기 복수의 취득 디바이스의 모든 광학 중심들에 중심을 둔 반구체들의 매끄러운 구분적 조합으로서 산출되는, 디바이스.
  6. 제4항 또는 제5항에 있어서, 상기 데이터와 관련된 상기 점들은 상기 높이 맵 및 텍스처 맵 상에 한 번만 투영되는, 디바이스.
  7. 복수의 취득 디바이스에 의해 캡처된 객체를 나타내는 제1 데이터를 실어 나르는 스트림으로서, 상기 데이터는:
    - 상기 복수의 취득 디바이스의 라이트 필드에 따라 획득된 파라메트릭 표면을 나타내는 적어도 하나의 파라미터를 포함하는 제1 신택스 요소(1102);
    - 상기 객체의 상기 적어도 일부를 표현하는 점 구름의 점들과 관련된 제2 데이터로부터 획득된 높이 맵을 포함하는 제2 신택스 요소(1103) - 상기 높이 맵은 상기 객체의 상기 적어도 일부와 상기 파라메트릭 표면 사이의 거리를 나타내는 정보를 포함함 -;
    - 상기 제2 데이터로부터 획득된 적어도 하나의 텍스처 맵을 포함하는 제3 신택스 요소(1104); 및
    상기 복수의 취득 디바이스의 위치를 포함하는 제4 신택스 요소(1105)를 포함하는, 스트림.
  8. 제7항에 있어서, 상기 제1 신택스 요소(1102)는 상기 복수의 취득 디바이스의 모든 광학 중심들에 중심을 둔 반구체들의 매끄러운 구분적 조합으로서 형상화된 파라메트릭 표면을 나타내는, 스트림.
  9. 제7항 또는 제8항에 있어서, 상기 제2 데이터는 텍스처 정보 및 깊이를 나타내는 정보를 포함하는, 스트림.
  10. 객체를 나타내는 데이터를 실어 나르는 스트림으로부터 상기 객체의 적어도 일부의 이미지를 렌더링하는 방법으로서, 상기 방법은:
    - 상기 스트림의 제1 신택스 요소로부터 파라메트릭 표면을 나타내는 적어도 하나의 파라미터를 획득하는 단계(1301);
    - 상기 스트림의 제2 신택스 요소로부터 높이 맵을 획득하는 단계(1302) - 상기 높이 맵은 상기 객체의 상기 적어도 일부와 상기 파라메트릭 표면 사이의 거리를 나타내는 정보를 포함함 -;
    - 상기 스트림의 제3 신택스 요소로부터 적어도 하나의 텍스처 맵을 획득하는 단계(1303);
    - 상기 파라메트릭 표면, 상기 높이 맵 및 상기 적어도 하나의 텍스처 맵으로부터 상기 객체의 상기 적어도 일부를 표현하는 점 구름의 점들과 관련된 데이터를 획득하는 단계(1304);
    - 상기 데이터 및 상기 스트림의 제4 신택스 요소로부터의 복수의 취득 디바이스의 위치를 나타내는 정보에 기초하여 상기 이미지를 렌더링하는 단계(1305)를 포함하는, 방법.
  11. 제10항에 있어서, 상기 데이터는 텍스처 정보 및 깊이를 나타내는 정보를 포함하는, 방법.
  12. 제10항 또는 제11항에 있어서, 상기 렌더링은 상기 데이터의 스플랫 렌더링(splat rendering)을 포함하는, 방법.
  13. 객체를 나타내는 데이터를 실어 나르는 스트림으로부터 상기 객체의 적어도 일부의 이미지를 렌더링하도록 구성된 디바이스로서, 상기 디바이스는 적어도 하나의 프로세서와 관련된 메모리를 포함하고, 상기 프로세서는:
    - 상기 스트림의 제1 신택스 요소로부터 파라메트릭 표면을 나타내는 적어도 하나의 파라미터를 획득하고;
    - 상기 스트림의 제2 신택스 요소로부터 높이 맵을 획득하고 - 상기 높이 맵은 상기 객체의 상기 적어도 일부와 상기 파라메트릭 표면 사이의 거리를 나타내는 정보를 포함함 -;
    - 상기 스트림의 제3 신택스 요소로부터 적어도 하나의 텍스처 맵을 획득하고;
    - 상기 파라메트릭 표면, 상기 높이 맵 및 상기 적어도 하나의 텍스처 맵으로부터 상기 객체의 상기 적어도 일부를 표현하는 점 구름의 점들과 관련된 데이터를 획득하고;
    - 상기 데이터 및 상기 스트림의 제4 신택스 요소로부터의 복수의 취득 디바이스의 위치를 나타내는 정보에 기초하여 상기 이미지를 렌더링하도록 구성되는, 디바이스.
  14. 제13항에 있어서, 상기 데이터는 텍스처 정보 및 깊이를 나타내는 정보를 포함하는, 디바이스.
  15. 제13항 또는 제14항에 있어서, 상기 적어도 하나의 프로세서는 상기 이미지를 렌더링하기 위해 상기 데이터의 스플랫 렌더링을 수행하도록 추가로 구성되는, 디바이스.
KR1020197006918A 2016-09-13 2017-09-07 몰입형 비디오 포맷을 위한 방법, 장치 및 스트림 KR20190046850A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP16306155 2016-09-13
EP16306155.9 2016-09-13
PCT/EP2017/072431 WO2018050529A1 (en) 2016-09-13 2017-09-07 Method, apparatus and stream for immersive video format

Publications (1)

Publication Number Publication Date
KR20190046850A true KR20190046850A (ko) 2019-05-07

Family

ID=56997435

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020197006918A KR20190046850A (ko) 2016-09-13 2017-09-07 몰입형 비디오 포맷을 위한 방법, 장치 및 스트림

Country Status (6)

Country Link
US (1) US20190251735A1 (ko)
EP (1) EP3513554A1 (ko)
JP (1) JP2019534500A (ko)
KR (1) KR20190046850A (ko)
CN (1) CN109716757A (ko)
WO (1) WO2018050529A1 (ko)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3547704A1 (en) * 2018-03-30 2019-10-02 Thomson Licensing Method, apparatus and stream for volumetric video format
EP3547703A1 (en) * 2018-03-30 2019-10-02 Thomson Licensing Method, apparatus and stream for volumetric video format
EP3777180B1 (en) 2018-04-11 2023-08-09 InterDigital VC Holdings, Inc. A method and apparatus for encoding/decoding a point cloud representing a 3d object
US10930049B2 (en) * 2018-08-27 2021-02-23 Apple Inc. Rendering virtual objects with realistic surface properties that match the environment
JP6835281B1 (ja) 2020-06-22 2021-02-24 マツダ株式会社 計測方法及び計測装置、並びに、被覆金属材の耐食性試験方法及び耐食性試験装置
JP6835279B1 (ja) 2020-06-22 2021-02-24 マツダ株式会社 電極部装置、被覆金属材の耐食性試験方法及び耐食性試験装置
JP6801805B1 (ja) 2020-06-22 2020-12-16 マツダ株式会社 計測方法及び計測装置、並びに、被覆金属材の耐食性試験方法及び耐食性試験装置
JP6835280B1 (ja) 2020-06-22 2021-02-24 マツダ株式会社 傷の処理方法及び処理装置、並びに、被覆金属材の耐食性試験方法及び耐食性試験装置
US20230154101A1 (en) * 2021-11-16 2023-05-18 Disney Enterprises, Inc. Techniques for multi-view neural object modeling
US20230281921A1 (en) * 2022-03-01 2023-09-07 Tencent America LLC Methods of 3d clothed human reconstruction and animation from monocular image

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002083285A (ja) * 2000-07-07 2002-03-22 Matsushita Electric Ind Co Ltd 画像合成装置および画像合成方法
JP2006004158A (ja) * 2004-06-17 2006-01-05 Olympus Corp 画像処理プログラム、画像処理方法、画像処理装置及び記録媒体
CN101369348B (zh) * 2008-11-07 2010-09-15 上海大学 汇聚式相机的多视点采集/显示系统中新视点重建方法
WO2012037157A2 (en) * 2010-09-13 2012-03-22 Alt Software (Us) Llc System and method for displaying data having spatial coordinates
WO2013074153A1 (en) * 2011-11-17 2013-05-23 University Of Southern California Generating three dimensional models from range sensor data
KR102049456B1 (ko) * 2013-04-05 2019-11-27 삼성전자주식회사 광 필드 영상을 생성하는 방법 및 장치
CN104732580B (zh) * 2013-12-23 2018-09-25 富士通株式会社 图像处理装置、图像处理方法和程序
EP3149937A4 (en) * 2014-05-29 2018-01-10 NEXTVR Inc. Methods and apparatus for delivering content and/or playing back content

Also Published As

Publication number Publication date
WO2018050529A1 (en) 2018-03-22
EP3513554A1 (en) 2019-07-24
CN109716757A (zh) 2019-05-03
US20190251735A1 (en) 2019-08-15
JP2019534500A (ja) 2019-11-28

Similar Documents

Publication Publication Date Title
US10891784B2 (en) Method, apparatus and stream for immersive video format
US11367247B2 (en) Method, apparatus and stream for encoding/decoding volumetric video
KR20170132669A (ko) 몰입형 비디오 포맷을 위한 방법, 장치 및 스트림
KR20190046850A (ko) 몰입형 비디오 포맷을 위한 방법, 장치 및 스트림
US20210176496A1 (en) Method, apparatus and stream for encoding/decoding volumetric video
US20220094903A1 (en) Method, apparatus and stream for volumetric video format
EP3562159A1 (en) Method, apparatus and stream for volumetric video format
WO2019191202A1 (en) Method, apparatus and stream for volumetric video format