KR20200108882A - 3차원 장면들을 데이터 스트림에 인코딩하고 그로부터 디코딩하기 위한 방법 및 장치 - Google Patents

3차원 장면들을 데이터 스트림에 인코딩하고 그로부터 디코딩하기 위한 방법 및 장치 Download PDF

Info

Publication number
KR20200108882A
KR20200108882A KR1020207023404A KR20207023404A KR20200108882A KR 20200108882 A KR20200108882 A KR 20200108882A KR 1020207023404 A KR1020207023404 A KR 1020207023404A KR 20207023404 A KR20207023404 A KR 20207023404A KR 20200108882 A KR20200108882 A KR 20200108882A
Authority
KR
South Korea
Prior art keywords
picture
color
depth
image
patch
Prior art date
Application number
KR1020207023404A
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 KR20200108882A publication Critical patent/KR20200108882A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/756Media network packet handling adapting media to device capabilities
    • 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/161Encoding, multiplexing or demultiplexing different image signal components
    • 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/172Processing image signals image signals comprising non-image signal components, e.g. headers or format information
    • H04N13/178Metadata, e.g. disparity information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/537Motion estimation other than block-based
    • H04N19/54Motion estimation other than block-based using feature points or meshes
    • 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/10Image acquisition modality
    • G06T2207/10024Color image
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Library & Information Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

3차원 장면을 나타내는 데이터를 운반하는 데이터 스트림을 인코딩 및 디코딩하기 위한 방법들 및 디바이스들이 제공되고, 상기 데이터 스트림은 컬러 이미지에 패킹된 컬러 픽처들; 깊이 이미지들에 패킹된 깊이 픽처들; 및 디-프로젝션 데이터를 포함하는 패치 데이터 항목 세트; 상기 컬러 이미지 및 지오메트리 데이터에서 컬러 픽처를 검색하기 위한 데이터를 포함한다. 이들 데이터는 연관된 시간 정보와 함께 스트림의 비디오 트랙에 삽입된다. 패치 시퀀스에서 적어도 2회 반복되는 컬러 및 깊이 픽처들은 이미지들에 패킹되지 않지만 스트림의 이미지 트랙에 삽입되고 컬러 또는 지오메트리 데이터에 의해 포인팅된다.

Description

3차원 장면들을 데이터 스트림에 인코딩하고 그로부터 디코딩하기 위한 방법 및 장치
본 원리들은 일반적으로 3차원(3D) 장면 또는 3차원 장면들의 시퀀스를 데이터 스트림에 코딩하고 그로부터의 디코딩하는 것에 관한 것이다. 특히, 본 원리들의 기술 분야는 장면들의 지오메트리에 대한 분석 파라미터들 또는 깊이 이미지들 및 텍스처들에 대한 컬러 이미지들의 인코딩/디코딩에 관한 것이지만, 오로지 이에 관한 것은 아니다.
본 섹션은 아래에 설명 및/또는 청구되는 본 원리들의 다양한 양태들과 관련될 수 있는 본 기술분야의 다양한 양태들을 독자에게 소개하기 위해 의도된 것이다. 이 논의는 본 원리들의 다양한 양태들의 더 나은 이해를 가능하게 하기 위해 배경 정보를 독자에게 제공하는 데 도움이 될 것으로 여겨진다. 따라서, 이들 진술은 종래 기술의 인정으로서 읽혀지는 것이 아니라 이러한 관점에서 읽혀져야 한다는 것을 이해해야 한다.
360° 플랫 비디오라고도 불리는 몰입형 비디오는 사용자가 정지 시점(still point of view) 주위로 그의 머리의 회전을 통해 자신의 주위를 전부 볼 수 있게 한다. 회전들은 3 자유도(3DoF) 경험만을 허용한다. 예를 들어 헤드 마운티드 디스플레이 디바이스(HMD)를 사용하여, 3DoF 비디오가 제1 전방향 비디오 경험에 대해 충분하더라도, 3DoF 비디오는, 예를 들어 시차를 경험함으로써, 더 많은 자유를 기대할 시청자에게 빠르게 실망스러운 것이 될 수 있다. 또한, 3DoF는 현기증을 유발할 수도 있는데 이는 사용자가 결코 그의 머리를 회전시키기만 하는 것이 아니라 3개의 방향으로 그의 머리를 병진시키기도 하기 때문이고, 병진들은 3DoF 비디오 경험에서 재현되지 않는다.
볼류메트릭 비디오(volumetric video)(6 자유도(6DoF) 비디오라고도 알려져 있음)가 3DoF 비디오에 대한 대안이다. 6DoF 비디오를 시청할 때, 회전들에 더하여, 사용자는 또한 시청되는 콘텐츠 내에서 그의 머리, 및 심지어 그의 신체를 병진시키고 시차 및 심지어 볼륨감을 경험할 수 있다. 그러한 비디오들은 몰입의 느낌 및 장면 깊이의 인식을 상당히 증가시키고, 머리 병진들 동안 일관된 시각적 피드백을 제공함으로써 현기증도 방지한다.
콘텐츠는 관심 있는 장면의 컬러 및 깊이의 동시 기록을 허용하는 전용 센서들에 의하여 생성된다. 사진 측량 기법들과 조합된 컬러 카메라들의 리그의 사용은 그러한 기록을 수행하는 일반적인 방식이다.
볼류메트릭 비디오는 3D 장면들의 시퀀스이다. 볼류메트릭 비디오들을 인코딩하는 솔루션은, 패치들이라고 불리는, 컬러 픽처들 및 깊이 픽처들에서 클러스터링되는 프로젝션 맵들 상에 3D 장면의 시퀀스의 각각의 3D 장면을 프로젝션하는 것이다. 패치들은 비디오 스트림의 비디오 트랙에 저장되는 컬러 및 깊이 이미지들에서 패킹된다. 이 인코딩은 표준 이미지 및 비디오 처리 표준들을 이용하는 이점을 갖는다. 디코딩에서, 컬러 픽처들의 픽셀들은 연관된 깊이 픽처에 저장된 정보에 의해 결정된 깊이에서 디-프로젝션된다. 그러한 솔루션들은 효과적이다. 그러나, 이 엄청난 양의 데이터를 비디오 스트림의 비디오 트랙 내의 이미지들로서 인코딩하는 것은 문제를 야기한다. 비트 스트림의 크기는 저장 공간, 네트워크를 통한 송신 및 디코딩 성능들에 관한 비트레이트 기술적 문제들을 유발한다.
다음은 본 원리들의 일부 양태들의 기본적인 이해를 제공하기 위해 본 원리들의 간략화된 요약을 제시한다. 이 요약은 본 원리들의 광범위한 개요가 아니다. 그것은 본 원리들의 핵심적인 또는 중요한 요소들을 식별하기 위해 의도된 것은 아니다. 다음의 요약은 아래에 제공되는 더 상세한 설명에 대한 서문으로서 간략화된 형식으로 본 원리들의 일부 양태들을 제시하는 것에 불과하다.
본 원리들은 스트림에 포인트 클라우드를 인코딩하는 방법에 관한 것이다. 본 개시내용은 비디오 트랙 및 이미지 트랙을 포함하는 데이터 스트림에 3차원 장면을 인코딩하는 방법에 관한 것이다. 이 방법은:
- 패치 세트를 획득하는 단계 - 패치는 패치 시퀀스에 속하고, 패치는 디-프로젝션 데이터, 컬러 픽처 및 깊이 픽처를 포함함 -;
- 패치 시퀀스에 대해, 각각의 컬러 픽처 및 깊이 픽처에 대해 상기 픽처가 정적 픽처인지 비정적 픽처인지를 결정하는 단계 - 픽처가 상기 시퀀스에서 적어도 2회 반복된다면 픽처가 정적임 -;
- 패치 세트에 대해:
- 상기 패치 세트의 비정적 컬러 픽처들을 패킹하는 컬러 이미지; 상기 패치 세트의 비정적 깊이 픽처들을 패킹하는 깊이 이미지; 및 패치 데이터 항목 세트를 생성하는 단계 - 패치 데이터 항목은, 패치에 대해, 상기 디-프로젝션 데이터 및
● 상기 컬러 픽처가 비정적이면, 상기 컬러 이미지에서의 상기 컬러 픽처의 위치; 그렇지 않으면 상기 스트림의 상기 이미지 트랙에서의 정적 픽처에 대한 포인터; 및
● 상기 깊이 픽처가 비정적이면, 상기 깊이 이미지에서의 상기 깊이 픽처의 위치; 그렇지 않으면 상기 스트림의 상기 이미지 트랙에서의 정적 픽처에 대한 포인터를 포함함 -;
- 상기 스트림의 상기 비디오 트랙 내의 위치에서 상기 컬러 이미지, 깊이 이미지 및 패치 데이터 항목 세트를 인코딩하는 단계;
- 상기 스트림의 상기 비디오 트랙에 인코딩된 상기 정적 컬러 또는 깊이 픽처에 대한 제1 포인터의 위치에 선행하는 위치에서 상기 스트림의 상기 이미지 트랙에 정적 컬러 및 깊이 픽처를 인코딩하는 단계를 포함한다.
본 개시내용은 또한 스트림에 3차원 장면을 인코딩하도록 적응된 디바이스에 관한 것이다. 이 디바이스는 스트림에 3차원 장면을 인코딩하는 본 방법을 실행하도록 구성된 프로세서와 연관된 메모리를 포함한다.
본 개시내용은 또한 비디오 트랙 및 이미지 트랙을 포함하는 데이터 스트림으로부터 3차원 장면을 디코딩하는 방법에 관한 것이다. 이 방법은:
- 상기 데이터 스트림의 상기 이미지 트랙 내의 제1 위치에서 픽처를 획득하는 단계 - 상기 픽처의 픽셀들은 깊이 및/또는 컬러 성분을 포함함 -;
- 상기 데이터 스트림의 상기 비디오 트랙 내의 제2 위치에서:
● 컬러 이미지에 패킹된 컬러 픽처들을 포함하는 상기 컬러 이미지;
● 깊이 이미지에 패킹된 깊이 픽처들을 포함하는 상기 깊이 이미지; 및
● 패치 데이터 항목 세트를 획득하는 단계 - 패치 데이터 항목은:
- 디-프로젝션 데이터;
- 상기 제1 픽처에 대한 포인터 또는 상기 컬러 이미지에서의 컬러 픽처의 위치를 포함하는 컬러 데이터; 및
- 상기 제1 픽처에 대한 포인터 또는 상기 깊이 이미지에서의 깊이 픽처의 위치를 포함하는 지오메트리 데이터를 포함하고;
상기 제1 위치는 상기 스트림 내의 상기 제2 위치에 선행함 -; 및
- 상기 세트의 패치 데이터 항목에 대해, 상기 패치에서 설명된 상기 깊이 픽처의 픽셀들에 따라 결정된 깊이에서 상기 패치에서 설명된 상기 컬러 픽처의 픽셀들을 디-프로젝션하기 위해 디-프로젝션 데이터를 사용하는 단계를 포함한다.
본 개시내용은 또한 데이터 스트림으로부터 3차원 장면을 디코딩하도록 적응된 디바이스에 관한 것이다. 이 디바이스는 데이터 스트림으로부터 3차원 장면을 디코딩하는 본 방법을 실행하도록 구성된 프로세서와 연관된 메모리를 포함한다.
본 개시내용은 또한 3차원 장면을 나타내는 데이터를 운반하는 데이터 스트림에 관한 것이다. 이 데이터 스트림은:
- 상기 데이터 스트림 내의 제1 위치에서 픽처를 적어도 포함하는 이미지 트랙 - 상기 픽처의 픽셀들은 깊이 및/또는 성분을 포함함 -;
- 상기 데이터 스트림 내의 제2 위치에서 데이터 트리플릿을 적어도 포함하는 비디오 트랙을 포함하고, 상기 데이터 트리플릿은:
● 컬러 이미지에 패킹된 컬러 픽처들을 포함하는 상기 컬러 이미지;
● 깊이 이미지에 패킹된 깊이 픽처들을 포함하는 상기 깊이 이미지; 및
● 패치 데이터 항목 세트를 포함하고, 패치 데이터 항목은:
- 디-프로젝션 데이터;
- 상기 제1 픽처에 대한 포인터 또는 상기 컬러 이미지에서의 컬러 픽처의 위치를 포함하는 컬러 데이터; 및
- 상기 제1 픽처에 대한 포인터 또는 상기 깊이 이미지에서의 깊이 픽처의 위치를 포함하는 지오메트리 데이터를 포함하고;
상기 제1 위치는 상기 스트림 내의 상기 제2 위치에 선행한다;
다음의 설명을 읽으면 본 개시내용이 더 잘 이해될 것이고, 다른 특정 특징들 및 이점들이 드러날 것이고, 이 설명은 다음의 첨부된 도면들을 참조한다:
- 도 1은 본 원리들의 비제한적인 실시예에 따른, 물체의 3차원(3D) 모델 및 3D 모델에 대응하는 포인트 클라우드의 포인트들을 도시한다.
- 도 2는 본 원리들의 비제한적인 실시예에 따른, 포인트 클라우드로서 캡처된 수 개의 물체들의 표면 표현을 포함하는 3차원 장면을 나타내는 이미지를 도시한다.
- 도 3은 본 원리들의 비제한적인 실시예에 따른, 3D 장면들의 시퀀스의 인코딩, 송신 및 디코딩의 예를 예시한다.
- 도 4는 본 원리들의 비제한적인 실시예에 따른, 도 2의 3D 장면에 대한 2개의 패치 - 각각의 패치는 컬러 픽처, 깊이 픽처 및 디-프로젝션 데이터를 포함함 - 를 예시한다.
- 도 5는 본 원리들의 비제한적인 실시예에 따른, 프로젝션 프로세스에 의해 생성된 패치들의 크로스 구조(crossed structure)를 예시한다.
- 도 6은 본 원리들의 비제한적인 실시예에 따른, 컬러 및 깊이 이미지들에서의 획득된 패치들의 패킹을 예시한다.
- 도 7은 본 원리들의 비제한적인 실시예에 따른, 데이터가 패킷 기반 송신 프로토콜을 통해 송신될 때 스트림의 구문의 일 실시예의 예를 도시한다.
- 도 9는 본 원리들의 비제한적인 실시예에 따른, 도 3의 인코더(31)가 되도록 구성된 도 8의 디바이스에서의, 스트림에 포인트 클라우드를 인코딩하기 위한 방법을 예시한다.
- 도 10은 본 원리들의 비제한적인 실시예에 따른, 도 3의 디바이스(33)가 되도록 구성된 도 8의 디바이스에서의, 스트림으로부터 3차원 장면을 디코딩하기 위한 방법을 예시한다.
본 원리들은 본 원리들의 예들이 도시되는 첨부 도면들을 참조하여 이하에서 더 상세히 설명될 것이다. 그러나, 본 원리들은 많은 대안적인 형식으로 구현될 수 있고 본 명세서에 제시된 예들로 제한되는 것으로 해석되어서는 안 된다. 따라서, 본 원리들은 다양한 수정들 및 대안적인 형식들의 여지가 있지만, 그의 특정 예들이 도면들에서 예로서 도시되고 본 명세서에서 상세히 설명될 것이다. 그러나, 본 원리들을 개시된 특정 형태들로 제한하려는 의도는 없고, 오히려, 본 개시내용은 청구항들에 의해 정의되는 본 원리들의 사상 및 범위 내에 있는 모든 수정들, 균등물들 및 대안들을 커버하려는 것임을 이해해야 한다.
본 명세서에서 사용되는 용어는 단지 특정 예들을 설명하기 위한 것이고, 본 원리들을 제한하려는 의도는 없다. 본 명세서에서 사용된, 단수 형식들 "a", "an" 및 "the"는, 문맥이 명확하게 달리 지시하지 않는 한, 복수 형식들도 포함하도록 의도된다. 본 명세서에서 사용될 때 용어 "포함한다(comprises)", "포함하는(comprising)", "포함한다(includes)" 및/또는 "포함하는(including)"은 언급된 특징들, 정수들, 단계들, 동작들, 요소들, 및/또는 컴포넌트들의 존재를 명시하지만, 하나 이상의 다른 특징, 정수, 단계, 동작, 요소, 컴포넌트, 및/또는 그의 그룹들의 존재 또는 추가를 배제하지 않는다는 것을 더 이해할 것이다. 또한, 요소가 다른 요소에 "응답하는" 또는 그것에 "접속된" 것으로서 언급될 때, 그것은 다른 요소에 직접 응답하거나 접속될 수 있거나, 또는 개재 요소들이 존재할 수 있다. 대조적으로, 요소가 다른 요소에 "직접 응답하는" 또는 "직접 접속된" 것으로서 언급될 때, 개재 요소들은 존재하지 않는다. 본 명세서에서 사용된 용어 "및/또는 "은 연관된 열거된 항목들 중 하나 이상의 임의의 그리고 모든 조합들을 포함하고, "/"로서 축약될 수 있다.
비록 제1, 제2 등의 용어들이 다양한 요소들을 설명하기 위해 본 명세서에서 사용될 수 있지만, 이들 요소는 이들 용어들에 의해 제한되어서는 안 된다는 점이 이해될 것이다. 이들 용어는 하나의 요소를 다른 요소와 구별하기 위해서만 사용된다. 예를 들어, 본 원리들의 교시를 벗어나지 않고, 제1 요소는 제2 요소라고 지칭될 수 있고, 유사하게, 제2 요소는 제1 요소라고 지칭될 수 있다.
비록 도면들 중 일부는 주 통신 방향을 보여주기 위해 통신 경로들 상의 화살표들을 포함하지만, 통신은 묘사된 화살표들과 반대 방향으로 발생할 수 있다는 것을 이해해야 한다.
일부 예들은 블록도들 및 동작 흐름도들과 관련하여 설명되고, 각각의 블록은 회로 요소, 모듈, 또는 특정 논리 기능(들)을 구현하기 위한 하나 이상의 실행가능 명령어를 포함하는 코드의 부분을 나타낸다. 또한, 다른 구현들에서, 블록들에서 언급된 기능(들)은 언급된 순서와 다르게 발생할 수 있다는 점에 유의해야 한다. 예를 들어, 연속적으로 도시된 2개의 블록은, 사실상, 수반되는 기능성에 따라, 실질적으로 동시에 실행될 수 있거나, 블록들은 때때로 역순으로 실행될 수 있다.
본 명세서에서 "예에 따른" 또는 "예에서"에 대한 언급은 해당 예와 관련하여 기술된 특정 특징, 구조, 또는 특성이 본 원리들의 적어도 하나의 구현에 포함될 수 있음을 의미한다. 본 명세서의 다양한 곳들에서의 "예에 따른" 또는 "예에서"라는 구의 출현들은 반드시 모두가 동일한 예를 언급하는 것은 아니고, 다른 예들과 반드시 상호 배타적인 별개의 또는 대안적인 예들도 아니다.
청구항들에 나타나는 참조 번호들은 단지 예시로서 사용된 것이고, 청구항들의 범위에 대해 어떤 제한적인 효과도 갖지 않을 것이다. 명시적으로 설명되지는 않았지만, 본 예들 및 변형들은 임의의 조합 또는 서브-조합으로 이용될 수 있다.
본 원리들은 데이터 스트림 내의 그리고 그로부터의 3차원(3D) 장면 또는 3차원 장면들의 시퀀스의 인코딩/디코딩에 대해 설명된다.
도 1은 물체(10)의 3차원(3D) 모델 및 3D 모델(10)에 대응하는 포인트 클라우드(11)의 포인트들을 도시한다. 모델(10)은 3D 메시 표현일 수 있고 포인트 클라우드(11)의 포인트들은 메시의 정점들일 수 있다. 포인트들(11)은 또한 메시의 면들의 표면 상에 확산된 포인트들일 수 있다. 모델(10)은 또한 클라우드(11)의 포인트들의 스플랫된 버전으로서 표현될 수 있다; 즉 모델(10)의 표면은 클라우드(11)의 포인트의 포인트를 스플랫함으로써 생성된다. 모델(10)은 또한 복셀들 또는 스플라인들과 같은 많은 상이한 표현들에 의해 표현될 수 있다. 도 1은 3D 물체의 표면 표현으로부터 포인트 클라우드를 정의하는 것이 항상 가능하다는 것을 예시한다. 상호적으로, 클라우드의 포인트로부터 3D 물체의 표면 표현을 생성하는 것이 항상 가능하다. 본 명세서에서 사용된, 이미지에 (3D 장면의 확장 포인트들에 의해) 3D 물체의 포인트들을 프로젝션하는 것은 이 3D 물체의 임의의 표현을 이미지 상에 프로젝션하는 것과 동등하다.
도 2는 포인트 클라우드로서 캡처된 수 개의 물체들의 표면 표현을 포함하는 3차원 장면을 나타내는 이미지(20)를 도시한다. 이미지(20)는 취득 시점(point of view)과 상이한 시점으로부터 생성된다. 예를 들어, 이미지(20)의 우측의 캐릭터는 완전하지 않고, 표면 표현을 실현하기 위해 그의 좌측 팔 및 그의 등의 포인트들이 이용가능하지 않다(예를 들어, 그것들은 캡처되지 않았음). 그 3D 장면은 상이한 유형의 표현을 포함할 수 있다. 예를 들어, 장면 내의 캐릭터들은 포인트 클라우드들로서 표현되는 반면 조각상들은 텍스처링된 메시들로서 표현된다. 3D 장면은 항상 시점으로부터 렌더링된다. 장면의 모든 포인트들이 해당 시점으로부터 보이는 것은 아니고, 장면의 일부 부분들은 보이는 부분들에 의해 엄폐된다. 볼류메트릭 비디오의 시청자는 가능한 시점들의 세트를 정의하는 영역에서 3D 장면 내에서 이동할 수 있다. 이 가능한 시점들의 세트로부터 보이는 3D 장면의 모든 포인트가 인코딩되어야 한다. 볼류메트릭 비디오 데이터 스트림은 3D 장면들의 시퀀스를 인코딩한다. 3D 장면의 일부 부분들은 시간 경과에 따라 변화하고(예를 들어, 움직이는 캐릭터들, 조명 조건들에서의 변화들) 및 일부 부분들은 여전히 남아 있다(예를 들어, 벽 또는 바닥 같은 구조적 물체들의 지오메트리). 본 원리들은 필요한 비트 레이트를 제한하고 디코딩을 가속시키기 위해 시간 경과에 따라 변화하지 않는 3D 장면의 부분들의 가능한 한 많은 다수의 인코딩을 제한하는 솔루션을 구현한다.
도 3은 3D 장면들의 시퀀스의 인코딩, 송신 및 디코딩의 예를 예시한다. 적어도 3D 장면(30)의 시퀀스가 본 인코딩 방법의 원리들에 따라 인코더(31)에 의해 스트림(32)에 인코딩된다. 디코더(33)는 소스로부터 스트림(32)을 획득한다. 예를 들어, 소스는 다음을 포함하는 세트에 속한다:
- 로컬 메모리, 예를 들어 비디오 메모리 또는 RAM(또는 Random Access Memory), 플래시 메모리, ROM(또는 Read Only Memory), 하드 디스크;
- 저장 인터페이스, 예를 들어 대용량 저장소, RAM, 플래시 메모리, ROM, 광 디스크 또는 마그네틱 서포트와의 인터페이스;
- 통신 인터페이스, 예를 들어 와이어라인 인터페이스(예를 들어, 버스 인터페이스, 광역 네트워크 인터페이스, 로컬 영역 네트워크 인터페이스) 또는 무선 인터페이스(예컨대 IEEE 802.11 인터페이스 또는 Bluetooth® 인터페이스); 및
- 사용자가 데이터를 입력할 수 있게 하는 그래픽 사용자 인터페이스와 같은 사용자 인터페이스.
디코더(33)는 본 디코딩 방법에 따라 스트림(32)으로부터 3D 장면들(34)의 시퀀스를 디코딩한다. 본 원리들에 따르면, 3D 장면(34)의 시퀀스는 가능한 한 3D 장면들(30)의 시퀀스와 유사하다. 3D 장면들(34)의 시퀀스는 렌더러(35)에 의해 소스로부터 획득될 수 있다. 렌더러(35)는 6DoF 비디오 시청 경험을 위해 디스플레이될 이미지들을 계산한다.
본 원리들에 따르면, 프로젝션 매핑에 따라 3D 장면의 포인트들을 프로젝션 맵들 상에 프로젝션함으로써 픽처들이 획득된다. 많은 프로젝션 매핑들은 등정방형 매핑, 큐브 매핑, 피라미드형 매핑 또는 직교정규 매핑과 같은 패치들을 생성하기 위해 사용될 수 있다. 패치는:
- 프로젝션 맵 상으로의 텍스처들의 프로젝션의 결과적인 컬러 픽처,
- 지오메트리 정보, 즉, 장면의 포인트들과 프로젝션 맵 사이의 거리를 저장하는 깊이 픽처; 및
- 2개의 픽처에 인코딩된 장면의 부분을 검색하는 것을 허용하는 데이터인 디-프로젝션 데이터를 포함한다. 디-프로젝션 데이터는 깊이 픽처의 픽셀 값들에 의해 결정된 깊이에서 3D 공간 내의 컬러 픽처의 컬러 픽셀들을 디-프로젝션하기 위해 디코더에 의해 사용된다.
도 4는 도 2의 3D 장면에 대한 2개의 패치를 예시하고, 각각의 패치는 컬러 픽처, 깊이 픽처 및 디-프로젝션 데이터를 포함한다. 패치들을 생성하기 위해 상이한 프로젝션 프로세스가 사용될 수 있다. 예를 들어, 패치들은 필링 프로젝션 프로세스(peeling projection process)에 의해 생성될 수 있다. 다른 가능성은 큐브 매핑 프로젝션들의 옥트리들을 사용하는 것이다. 임의의 적합한 프로젝션 프로세스가 패치를 생성하기 위해 사용될 수 있다. 본 원리들에 적합한 프로젝션 프로세스는 패치 세트를 생성하고, 패치들은 컬러 픽처, 깊이 픽처(또는 양쪽 모두의 픽셀 데이터를 저장하는 고유 픽처), 및 디코더가 2개의 픽처로부터 3차원 장면을 디코딩할 수 있게 하는 디-프로젝션 데이터를 포함한다. 등정방형 프로젝션 매핑의 예에서, 디-프로젝션 데이터는 프로젝션의 중심의 좌표, 패치에 대응하는 기준 좌표계 내의 입체각(예를 들어,
Figure pct00001
) 및 깊이 픽처에서의 깊이를 인코딩하기 위해 사용되는 깊이 값의 범위를 포함할 수 있다. 프로젝션 프로세스에 의해 2개의 픽처에 저장된 정보를 디-프로젝션하기 위해 필요한 모든 데이터가 디-프로젝션 데이터에 포함된다. 이들 데이터는 디코더가 2개의 프로젝션 맵들에서 프로젝션된 포인트들의 컬러 및 3D 좌표들을 검색할 수 있게 한다. 도 4의 예에서, 컬러 픽처(401), 깊이 픽처(402), 및 디-프로젝션 데이터(403)의 세트를 포함하는 패치(40)가 생성된다. 이 패치는 도 2의 3D 장면의 캐릭터들 중 하나의 정면 측을 나타내는 데이터를 인코딩한다. 컬러 픽처(401)는 장면의 3D 공간에서 로컬화된 평면 상의 장면의 이 부분의 포인트들의 프로젝션들의 결과이다. 깊이 픽처(402)의 픽셀들은 이 평면과 3D 장면의 이 부분 사이의 거리들을 저장한다. 도 4의 예에서, 깊이 픽셀이 밝을수록, 장면의 포인트는 평면에 더 가깝다. 블랙 깊이 픽셀은 컬러 픽처 내의 이들 좌표에 컬러 정보가 없다는 것을 의미한다. 패치(41)의 제2 예가 도 4에 제공된다. 패치(41)는 도 2의 3D 장면의 제2 캐릭터의 일부에 대응한다. 패치(41)는 컬러 픽처(411), 깊이 픽처(412) 및 디-프로젝션 데이터(413)를 포함한다. 디-프로젝션 데이터(413)는 상이한 id 디-프로젝션 데이터(403)이다. 등정방형 프로젝션 매핑의 예에서, 프로젝션의 중심은 상이할 수 있고, 이들 2개의 픽처에 인코딩된 3D 공간의 입체각은 상이하고 깊이 픽처에서의 깊이 인코딩의 역학도 상이할 수 있다. 패치들은 상이한 크기들 및 상이한 형상들을 가질 수 있다. 본 문서의 예들에서, 모든 패치는 직사각형이다. 이는 단지 예이고, 프로젝션 프로세스에 따르면, 패치들은 임의의 형상(예를 들어, 타원 또는 사다리꼴)을 가질 수 있다. 디폴트로 설정되지 않으면, 이 정보는 디-프로젝션 데이터에 포함된다.
본 원리들에 따르면, 인코딩할 3D 장면을 나타내는 패치 세트가 임의의 적합한 방법에 따라 획득된다. 그 후 이들 패치는, 예를 들어 ISO BMFF 표준에 따라 데이터 스트림의 비디오 트랙에 추가되기 위해 컬러 및 깊이 이미지들 내로 패킹된다. 3D 장면에 대한 패치들의 컬러 및 깊이 픽처들의 누적 크기는 상당할 수 있다.
도 5는 프로젝션 프로세스에 의해 생성된 패치의 크로스 구조를 예시한다. 주어진 3D 장면에 대해, 패치 세트(51 또는 53)가 생성된다. 패치 세트들 내의 패치들의 수들은 3D 장면들의 시퀀스에 따라 달라질 수 있다. 패치(52a, 52b, 52c 또는 52d)는 그것의 디-프로젝션 데이터에 따라 정의된다. 패치 세트(53)의 패치(52b)는 그것이 동일한 디-프로젝션 데이터의 값들을 갖는다면 이전 패치 세트(51)의 패치(52a)보다 동일한 패치 시퀀스(54)에 속한다. 다시 말해서, 2개의 패치(52a 및 52b)는 그것들이 동일한 프로젝션의 결과일 때, 즉 3D 장면의 포인트들이 동일한 조건들 하에서 프로젝션되었을 때 동등하다. 도 5의 예에서, 4개의 패치 시퀀스(54 내지 57)를 형성하는, 6개의 패치 세트가 표현된다.
패치 시퀀스의 패치들을 비교하여 패치의 컬러 또는 깊이 픽처가 정적인지 비정적인지를 결정한다. 픽처가 시퀀스에서 적어도 2회 반복된다면 픽처가 정적으로 설정된다. 픽처 세트에서 픽처가 반복되는지를 결정하기 위한 임의의 방법이 본 테스트에 적합하다. 예를 들어, 2개의 깊이 픽처 사이의 유클리드 거리가 임계값보다 낮다면, 2개의 깊이 픽처는 동등한 것으로 간주되고, 둘 다 정적 상태로 설정된다. 도 5의 예에서, 패치 시퀀스(54)는 패치(52d)의 깊이 픽처와 동등한 깊이 픽처를 갖는 패치(52c)를 포함한다. 패치 시퀀스(55)는 3개의 동등한 깊이 픽처를 포함하고; 패치 시퀀스(56)는 4개의 동등한 깊이 픽처를 그리고 패치 시퀀스(57)는 2개의 동등한 깊이 픽처를 포함한다. 도 5의 이 예에서는, 간결함을 위해서 그리고 조명 조건 변동들 때문에 더 많이 변화하는 컬러 픽처들 사이에서보다 깊이 픽처들(즉, 장면의 프로젝션된 부분의 지오메트리) 사이에 동등성이 훨씬 더 빈번하기 때문에 깊이 픽처들만이 고려된다.
도 6은 컬러 및 깊이 이미지들에서의 획득된 패치들의 패킹을 예시한다. 컬러 이미지(61)를 생성하기 위해 3D 장면에 대해 획득된 모든 비정적 컬러 픽처에 대해 그리고 컬러 이미지(62)를 생성하기 위해 모든 비정적 깊이 픽처에 대해 패킹 동작이 수행된다. 예를 들어 Jukka Jylanki에 의해 "A Thousand Ways to Pack the Bin"에서 설명된 알고리즘 또는 상당히 낮은 계산 비용으로 양호한 충진율을 제공하는 "MaxRects" 알고리즘(즉, Single Bin - Best Short Side First 구성)으로서, 직사각형 셀들을 직사각형 빈(즉, 생성될 이미지) 내로 패킹하는 NP-완전 문제(NP-complete problem)를 해결하기 위한 다수의 휴리스틱 알고리즘들이 존재한다. 패킹 동작의 끝에서, 위치(x, y)(예를 들어, 좌측 하부 모서리 위치), 형상(예를 들어, 직사각형, 타원) 및 이미지 내의 컬러 픽처의 크기, 및 패킹 알고리즘에 따라, 패치가 회전되었는지를 나타내는 부울 값이 패치 데이터 항목 목록의 각각의 패치에 할당된다. 패킹은 디코딩 스테이지를 개선하기 위해 비디오 인코더의 코딩 유닛들 상에 컬러 픽처들을 정렬시킴으로써 최적화될 수 있다. 도 6은 도 4 및 도 5의 컬러 및 깊이 픽처들이 패킹되어 있는 픽처를 도시한다. 정적 컬러 및 깊이 픽처들은 컬러 이미지 및 깊이 이미지에 패킹되지 않는다. 이는 더 작은 컬러 및 깊이 이미지들을 생성하는 이점을 갖는다. 사실 정적 픽처들은 시간 경과에 따라 반복되고 그것들이 나타나는 각각의 패치 세트에 대해 반복되는 대신에 한 번만 인코딩될 수 있다.
도 7은 데이터가 패킷 기반 송신 프로토콜을 통해 송신될 때 스트림의 구문의 일 실시예의 예를 도시한다. 도 7은 볼류메트릭 비디오 스트림의 예시적인 구조(70)를 도시한다. 이 구조는 스트림을 구문의 독립적인 요소들로 조직화하는 컨테이너로 구성된다. 이 구조는 스트림의 모든 구문 요소들에 공통인 데이터의 세트인 헤더 부분(71)을 포함할 수 있다. 예를 들어, 헤더 부분은 구문 요소들에 관해, 그것들 각각의 본질 및 역할을 기술하는, 메타데이터를 포함한다. 헤더 부분은 또한 이미지들 및 픽처들의 크기 및 해상도에 관한 정보를 포함할 수 있다. 이 구조는 비디오 트랙(72) 및 이미지 트랙(73)을 적어도 포함하는 페이로드를 포함한다.
비디오 트랙은 3D 장면들의 시퀀스(즉, 생성된 패킹된 컬러 이미지들 및 깊이 이미지들의 시퀀스와 연관된 그들의 패치 데이터 항목들)의 비디오 프레임들을 포함한다. 비디오 트랙은 비디오의 시간 데이터를 저장하도록 구조화된다. 컬러 이미지, 깊이 이미지 및 패치 데이터 항목 세트의 트리플릿이 3D 장면들의 시퀀스에서의 관련된 3D 장면의 타임 스탬프에 대한 위치에서 데이터 스트림의 비디오 트랙에 삽입된다. 패치 데이터 항목 내의 컬러 데이터가 데이터 스트림의 이미지 트랙에 저장된 정적 픽처를 포인팅하는 경우, 이 픽처는 데이터 스트림의 선행 위치에 삽입된다. 다시 말해서, 디코딩에서, 픽처는 그것을 포인팅하는 패치 데이터 항목 전에 수신된다.
이미지 트랙은 시간 특징 없이 이미지 및 픽처 데이터를 운반한다. 모든 정적 컬러 및 깊이 픽처들은 이 픽처를 포인팅하는 제1 데이터 항목의 위치에 선행하는 위치에서 데이터 스트림의 이미지 트랙에 삽입된다. 이러한 방식으로, 디코딩에서, 픽처는 그것을 포인팅하는 패치 데이터 항목 전에 수신된다.
예시 목적을 위해, ISOBMFF 파일 포맷 표준의 컨텍스트에서, 컬러 맵, 깊이 맵 및 메타데이터는 전형적으로 유형 MOOV의 박스에서 ISOBMFF 트랙들에서 참조될 것이고, 컬러 맵 및 깊이 맵 데이터 자체가 유형 mdat의 미디어 데이터 박스에 임베드된다.
도 8은 도 9 및/또는 도 10과 관련하여 설명된 방법을 구현하도록 구성될 수 있는 디바이스(80)의 예시적인 아키텍처를 도시한다. 디바이스(80)는 도 3의 인코더(31) 또는 디코더(33)가 되도록 구성될 수 있다.
디바이스(80)는 데이터 및 어드레스 버스(81)에 의해 함께 링크되는 다음의 요소들을 포함한다:
- 예를 들어, DSP(또는 Digital Signal Processor)인 마이크로프로세서(82)(또는 CPU);
- ROM(또는 Read Only Memory)(83);
- RAM(또는 Random Access Memory)(84);
- 저장 인터페이스(85);
- 애플리케이션으로부터, 송신할 데이터를 수신하기 위한 I/O 인터페이스(86); 및
- 전력 공급 장치, 예를 들어 배터리.
예에 따르면, 전력 공급 장치는 디바이스 외부에 있다. 언급된 메모리 각각에서, 본 명세서에서 사용되는 단어
Figure pct00002
레지스터
Figure pct00003
는 작은 용량(일부 비트들)의 영역에 또는 매우 큰 영역(예를 들어, 전체 프로그램 또는 대량의 수신 또는 디코딩된 데이터)에 대응할 수 있다. ROM(83)은 프로그램 및 파라미터들을 적어도 포함한다. ROM(83)은 본 원리들에 따른 기법들을 수행하기 위한 알고리즘들 및 명령어들을 저장할 수 있다. 스위치 온될 때, CPU(82)는 프로그램을 RAM에 업로드하고 대응하는 명령어들을 실행한다.
RAM(84)은, 레지스터 내에, CPU(82)에 의해 실행되는 그리고 디바이스(80)의 스위치-온 후에 업로드되는 프로그램, 레지스터 내의 입력 데이터, 레지스터 내의 방법의 상이한 상태들에서의 중간 데이터, 및 레지스터 내의 방법의 실행을 위해 사용되는 다른 변수들을 포함한다.
본 명세서에서 설명된 구현들은, 예를 들어, 방법 또는 프로세스, 장치, 컴퓨터 프로그램 제품, 데이터 스트림, 또는 신호에서 구현될 수 있다. 단일 형식의 구현의 컨텍스트에서만 논의(예를 들어, 방법 또는 디바이스로서만 논의)되더라도, 논의된 특징들의 구현은 다른 형식들(예를 들어, 프로그램)로 구현될 수도 있다. 장치는, 예를 들어, 적절한 하드웨어, 소프트웨어, 및 펌웨어로 구현될 수 있다. 방법들은, 예를 들어, 컴퓨터, 마이크로프로세서, 집적 회로, 또는 프로그래머블 로직 디바이스를 포함하는, 일반적으로 처리 디바이스들을 언급하는, 예를 들어, 프로세서와 같은, 예를 들어, 장치에서 구현될 수 있다. 프로세서들은 또한, 예를 들어, 컴퓨터들, 휴대폰들, PDA(portable/personal digital assistant)들, 및 최종 사용자들 사이의 정보의 통신을 용이하게 하는 다른 디바이스들과 같은 통신 디바이스들을 포함한다.
도 3의 인코딩 또는 인코더(31)의 예에 따르면, 소스로부터 3차원 장면(30)이 획득된다. 예를 들어, 소스는 다음을 포함하는 세트에 속한다:
- 로컬 메모리(83 또는 84), 예를 들어 비디오 메모리 또는 RAM(또는 Random Access Memory), 플래시 메모리, ROM(또는 Read Only Memory), 하드 디스크;
- 저장 인터페이스(85), 예를 들어 대용량 저장소, RAM, 플래시 메모리, ROM, 광 디스크 또는 마그네틱 서포트와의 인터페이스;
- 통신 인터페이스(86), 예를 들어 와이어라인 인터페이스(예를 들어, 버스 인터페이스, 광역 네트워크 인터페이스, 로컬 영역 네트워크 인터페이스) 또는 무선 인터페이스(예컨대 IEEE 802.11 인터페이스 또는 Bluetooth® 인터페이스); 및
- 사용자가 데이터를 입력할 수 있게 하는 그래픽 사용자 인터페이스와 같은 사용자 인터페이스.
도 3의 디코딩 또는 디코더(들)(33)의 예들에 따르면, 스트림이 목적지로 전송된다; 구체적으로, 목적지는 다음을 포함하는 세트에 속한다:
- 로컬 메모리(83 또는 84), 예를 들어, 비디오 메모리 또는 RAM, 플래시 메모리, 하드 디스크;
- 저장 인터페이스(85), 예를 들어 대용량 저장소, RAM, 플래시 메모리, ROM, 광 디스크 또는 마그네틱 서포트와의 인터페이스; 및
- 통신 인터페이스(86), 예를 들어 와이어라인 인터페이스(예를 들어, 버스 인터페이스(예를 들어, USB(또는 Universal Serial Bus)), 광역 네트워크 인터페이스, 로컬 영역 네트워크 인터페이스, HDMI(High Definition Multimedia Interface) 인터페이스) 또는 무선 인터페이스(예컨대 IEEE 802.11 인터페이스, WiFi® 또는 Bluetooth® 인터페이스).
인코딩 또는 인코더의 예들에 따르면, 볼류메트릭 장면을 나타내는 데이터를 포함하는 비트스트림이 목적지로 전송된다. 예로서, 비트스트림은 로컬 또는 원격 메모리, 예를 들어, 비디오 메모리(84) 또는 RAM(84), 하드 디스크(83)에 저장된다. 변형예에서, 비트스트림은 저장 인터페이스(85), 예를 들어 대용량 저장소, 플래시 메모리, ROM, 광 디스크 또는 마그네틱 서포트와의 인터페이스로 전송되고/되거나 통신 인터페이스(86), 예를 들어, 포인트 투 포인트 링크, 통신 버스, 포인트 투 멀티포인트 링크 또는 브로드캐스트 네트워크와의 인터페이스를 통해 송신된다.
도 3의 디코딩 또는 디코더 또는 렌더러(33)의 예들에 따르면, 소스로부터 비트스트림이 획득된다. 예시적으로, 비트스트림은 로컬 메모리, 예를 들어, 비디오 메모리(84), RAM(84), ROM(83), 플래시 메모리(83) 또는 하드 디스크(83)로부터 판독된다. 변형예에서, 비트스트림은 저장 인터페이스(85), 예를 들어 대용량 저장소, RAM, ROM, 플래시 메모리, 광 디스크 또는 마그네틱 서포트와의 인터페이스로부터 수신되고/되거나 통신 인터페이스(85), 예를 들어 포인트 투 포인트 링크, 버스, 포인트 투 멀티포인트 링크 또는 브로드캐스트 네트워크와의 인터페이스로부터 수신된다.
예들에 따르면, 디바이스(80)는 도 9 또는 도 10과 관련하여 설명된 방법을 구현하도록 구성되고, 다음을 포함하는 세트에 속한다:
- 모바일 디바이스;
- 통신 디바이스;
- 게임 디바이스;
- 태블릿(또는 태블릿 컴퓨터);
- 랩톱;
- 스틸 픽처 카메라;
- 비디오 카메라;
- 인코딩 칩;
- 서버(예를 들어, 브로드캐스트 서버, 주문형 비디오(video-on-demand) 서버 또는 웹 서버).
- 도 9는 본 원리들의 비제한적인 실시예에 따른, 인코더가 되도록 구성된 디바이스(80)(도 8과 관련하여 설명됨)에서의, 스트림에 포인트 클라우드를 인코딩하기 위한 방법을 예시한다.
단계 90에서, 디바이스(80)의 상이한 파라미터들이 업데이트된다. 특히, 소스로부터 3D 장면들의 시퀀스가 획득되고, 3D 장면의 공간에서 가능한 시점들의 세트가 결정되고, 프로젝션 맵들, 픽처들 및 이미지들의 크기들 및 해상도들이 결정된다.
단계 91에서, 도 5와 관련하여 설명된 바와 같이 패치 세트들 및 패치 시퀀스의 크로스 구조를 획득하기 위해 3D 장면들의 시퀀스에 대해 프로젝션 프로세스가 수행된다. 패치는 디-프로젝션 데이터, 컬러 픽처 및 깊이 픽처를 수집한 데이터 구조이다. 패치 세트는 가능한 시점들의 세트의 모든 시점으로부터 보이는 장면의 부분을 나타낸다. 이들 컬러 및 깊이 픽처 세트를 획득하기 위해 임의의 적합한 방법이 사용될 수 있다. 디-프로젝션 데이터는 컬러 및 깊이 픽처들의 디-프로젝션을 수행하기 위해 필요한 데이터이다. 그것들은 프로젝션 프로세스 파라미터들로부터 계산되고 패치 데이터 구조에 저장된다.
단계 92에서, 이 크로스 데이터 구조에 대해 프로세스가 수행하여 정적 및 비정적 컬러 및 깊이 픽처들을 결정한다. 패치 시퀀스의 패치들을 비교하여 패치의 컬러 또는 깊이 픽처가 정적인지 비정적인지를 결정한다. 도 5와 관련하여 설명된 바와 같이 픽처가 시퀀스에서 적어도 2회 반복된다면 픽처가 정적으로 설정된다.
단계 93에서, 각각의 패치 세트에 대해, 패치 세트의 모든 비정적 컬러 픽처에 대해 패킹 프로세스를 수행하여 컬러 이미지를 생성하고 패치 세트의 모든 비정적 깊이 픽처에 대해 패킹 프로세스를 수행하여 깊이 이미지를 생성한다. 이미지에 픽처들을 효율적으로 패킹하기 위한 임의의 적합한 방법이 이 단계에서 사용될 수 있다. 컬러 이미지는 컬러 패치 아틀라스라고도 불린다. 컬러 픽처들은 컬러 픽처의 포인트들의 프로젝션이 컬러 패치 아틀라스에서 점유할 크기에 따라 주어진 각도 해상도(예를 들어, 픽셀 당 3초 또는 픽셀 당 5초)로 컬러 이미지에 배열된다. 컬러 이미지에서 컬러 픽처의 위치는 컬러 데이터라고 불리는 데이터 구조에 저장된다. 컬러 픽처들의 형상이 디폴트(예를 들어, 직사각형)로 설정되지 않으면, 컬러 이미지에서 컬러 픽처에 사용되는 형상이 컬러 데이터 구조에 저장된다. 컬러 이미지에 패킹된 컬러 픽처들의 해상도가 일정하지 않으면(즉, 모든 컬러 픽처에 대해 동일하지 않음), 컬러 이미지에서 컬러 픽처의 크기가 컬러 데이터에 저장된다. 동일한 프로세스가 깊이 픽처들에 적용된다.
단계 94에서, 도 7과 관련하여 설명된 구조에 따라 비디오 트랙 및 이미지 트랙을 포함하는 데이터 스트림이 생성된다. 데이터 스트림 내의 위치에서 데이터 스트림의 이미지 트랙에 정적 픽처들이 삽입된다. 위치는 관련 요소가 디코더에 의해 판독될 순간을 나타내는 데이터 스트림 내의 위치이다. 위치가 선행할수록, 스트림이 판독될 때 요소가 더 빨리 디코딩된다. 정적 픽처는 그것을 포인팅하는 제1 패치 데이터 항목의 위치에 선행하는 위치에서 삽입된다. 생성된 컬러 이미지들, 깊이 이미지들 및 연관된 패치 데이터 항목들은 관련된 시간 정보와 함께 비디오 트랙에 인코딩된다.
도 10은 본 원리들의 비제한적인 실시예에 따른, 도 3의 디바이스(33)가 되도록 구성된 디바이스(80)(도 8과 관련하여 설명됨)에서의, 스트림으로부터 3차원 장면을 디코딩하기 위한 방법을 예시한다.
단계 100에서, 디바이스(80)의 상이한 파라미터들이 업데이트된다. 특히, 소스로부터 스트림이 획득되고, 3D 장면의 공간에서 가능한 시점들의 세트가 결정된다. 변형예에서, 가능한 시점들의 세트는 스트림으로부터 디코딩된다.
단계 101에서, 이 단계에서 데이터 스트림의 이미지 트랙에서 이용가능한 정적 픽처들이 판독되어 메모리에 저장된다. 정적 픽처들은 한 번만 판독되고 데이터 스트림의 판독의 종료까지 메모리에 유지된다. 변형예에서, 메모리로부터, 다가오는 데이터 스트림을 더 이상 포인팅되지 않는 정적 픽처들을 제거하기 위해 가비지 컬렉터 프로세스가 구현된다.
단계 102에서, 데이터 스트림의 비디오 트랙으로부터 컬러 이미지, 깊이 이미지 및 패치 데이터 항목 세트를 포함하는 데이터 트리플릿이 획득된다. 패치 데이터 항목은 컬러 픽처를 검색하기 위한 컬러 데이터, 깊이 픽처를 검색하기 위한 지오메트리 데이터 및 컬러 픽처 및 깊이 픽처 둘 다를 생성하기 위해 사용되는 그리고 디-프로젝션 동작을 처리하는 데 필요한 파라미터들을 나타내는 디-프로젝션 데이터를 포함한다. 패치 데이터 항목의 컬러 데이터는 그것이 패킹되는 컬러 이미지에서의 컬러 픽처의 위치(및 옵션으로 형상 및/또는 크기)를 포함할 수 있다. 컬러 데이터는 대신에 데이터 스트림의 이미지 트랙으로부터 판독된 정적 픽처에 대한 포인터를 포함할 수 있다. 지오메트리 데이터는 동일한 모델 상에 구축된다. 깊이 픽처는 깊이 이미지로부터 또는 이미 판독된 정적 깊이 픽처들의 목록에서 검색될 수 있다.
단계 103에서, 초기화된 파라메트릭 함수에 따라 계산된 깊이에서 디-프로젝션 데이터를 사용하여 컬러 픽처의 픽셀들이 디-프로젝션된다. 따라서 장면의 일부가 디코딩된다.
단계 102 및 단계 103이 각각의 패치 데이터 항목에 대해 수행되었을 때, 전체 3D 장면이 디코딩되었다. 단계 104에서, 디코딩된 3D 장면은 추가 모듈, 예를 들어 도 3의 렌더러(35)로 송신된다.
당연히, 본 개시내용은 이전에 설명된 실시예들에 제한되지 않는다.
특히, 본 개시내용은 3차원 장면(또는 3차원 장면들의 시퀀스)을 나타내는 데이터를 운반하는 스트림을 인코딩/디코딩하기 위한 방법들 및 디바이스들로 제한되지 않고, 또한 3D 장면을 3 자유도 방식으로 또는 볼류메트릭 방식으로(즉, 3DoF+ 또는 6DoF) 렌더링하는 방법들로, 이들 방법을 구현하는 임의의 디바이스들로 그리고 특히 적어도 하나의 CPU 및/또는 적어도 하나의 GPU를 포함하는 임의의 디바이스들로 확장된다.
본 개시내용은 또한 3차원 장면을 나타내는 정보를 포함하는 데이터 스트림으로부터 렌더링된 이미지들을 디스플레이하기 위한 방법(및 이를 위해 구성된 디바이스)에 관한 것이다.
본 개시내용은 또한 본 원리들에 따라 인코딩된 스트림을 송신 및/또는 수신하기 위한 방법(및 이를 위해 구성된 디바이스)에 관한 것이다.
본 명세서에서 설명된 구현들은, 예를 들어, 방법 또는 프로세스, 장치, 컴퓨터 프로그램 제품, 데이터 스트림, 또는 신호에서 구현될 수 있다. 단일 형식의 구현의 컨텍스트에서만 논의(예를 들어, 방법 또는 디바이스로서만 논의)되더라도, 논의된 특징들의 구현은 다른 형식들(예를 들어, 프로그램)로 구현될 수도 있다. 장치는, 예를 들어, 적절한 하드웨어, 소프트웨어, 및 펌웨어로 구현될 수 있다. 방법들은, 예를 들어, 컴퓨터, 마이크로프로세서, 집적 회로, 또는 프로그래머블 로직 디바이스를 포함하는, 일반적으로 처리 디바이스들을 언급하는, 예를 들어, 프로세서와 같은, 예를 들어, 장치에서 구현될 수 있다. 프로세서들은 또한, 예를 들어, 스마트폰들, 태블릿들, 컴퓨터들, 휴대폰들, PDA(portable/personal digital assistant)들, 및 최종 사용자들 사이의 정보의 통신을 용이하게 하는 다른 디바이스들과 같은 통신 디바이스들을 포함한다.
본 명세서에서 설명된 다양한 프로세스들 및 특징들의 구현들은 다양한 상이한 장비 또는 애플리케이션들, 특히, 예를 들어, 데이터 인코딩, 데이터 디코딩, 뷰 생성, 텍스처 처리, 및 이미지들 및 관련된 텍스처 정보 및/또는 깊이 정보의 다른 처리와 연관된 장비 또는 애플리케이션들에서 구현될 수 있다. 그러한 장비의 예들은 인코더, 디코더, 디코더로부터의 출력을 처리하는 후처리 프로세서, 인코더에 입력을 제공하는 전처리 프로세서, 비디오 코더, 비디오 디코더, 비디오 코덱, 웹 서버, 셋톱 박스, 랩톱, 개인용 컴퓨터, 휴대폰, PDA, 및 다른 통신 디바이스들을 포함한다. 분명하겠지만, 장비는 모바일일 수 있고 심지어 이동 차량에 설치될 수도 있다.
추가적으로, 방법들은 프로세서에 의해 수행되는 명령어들에 의해 구현될 수 있고, 그러한 명령어들(및/또는 구현에 의해 생성된 데이터 값들)은 프로세서 판독가능 매체, 예컨대, 예를 들어, 집적 회로, 소프트웨어 캐리어 또는 다른 저장 디바이스, 예컨대, 예를 들어, 하드 디스크, CD(compact diskette), 광 디스크(예컨대, 예를 들어, 종종 디지털 다기능 디스크(digital versatile disc) 또는 디지털 비디오 디스크(digital video disc)라고 언급되는 DVD), RAM(random access memory), 또는 ROM(read-only memory) 상에 저장될 수 있다. 명령어들은 프로세서 판독가능 매체 상에 유형적으로 구현된 애플리케이션 프로그램을 형성할 수 있다. 명령어들은, 예를 들어, 하드웨어, 펌웨어, 소프트웨어 또는 조합으로 이루어질 수 있다. 명령어들은, 예를 들어, 운영 체제, 별도의 애플리케이션, 또는 이 둘의 조합에서 발견될 수 있다. 따라서, 프로세서는, 예를 들어, 프로세스를 수행하도록 구성된 디바이스 및 프로세스를 수행하기 위한 명령어들을 갖는 프로세서 판독가능 매체(예컨대 저장 디바이스)를 포함하는 디바이스 둘 다로서 특징지어질 수 있다. 또한, 프로세서 판독가능 매체는, 명령어들에 더하여 또는 그 대신에, 구현에 의해 생성된 데이터 값들을 저장할 수 있다.
본 기술분야의 통상의 기술자에게 명백하겠지만, 구현들은, 예를 들어, 저장 또는 송신될 수 있는 정보를 운반하도록 포맷팅된 다양한 신호들을 생성할 수 있다. 정보는, 예를 들어, 방법을 수행하기 위한 명령어들, 또는 설명된 구현들 중 하나에 의해 생성된 데이터를 포함할 수 있다. 예를 들어, 신호는 설명된 실시예의 구문을 기입 또는 판독하기 위한 규칙들을 데이터로서 운반하거나, 설명된 실시예에 의해 기입된 실제 구문 값들을 데이터로서 운반하도록 포맷팅될 수 있다. 그러한 신호는, 예를 들어, 전자기파로서(예를 들어, 스펙트럼의 무선 주파수 부분을 사용하여) 또는 기저대역 신호로서 포맷팅될 수 있다. 포맷팅은, 예를 들어, 데이터 스트림을 인코딩하는 것 및 인코딩된 데이터 스트림으로 캐리어를 변조하는 것을 포함할 수 있다. 신호가 운반하는 정보는, 예를 들어, 아날로그 또는 디지털 정보일 수 있다. 신호는, 알려진 바와 같이, 다양한 상이한 유선 또는 무선 링크들을 통해 송신될 수 있다. 신호는 프로세서 판독가능 매체 상에 저장될 수 있다.
다수의 구현이 설명되었다. 그럼에도 불구하고, 다양한 수정들이 이루어질 수 있다는 것이 이해될 것이다. 예를 들어, 상이한 구현들의 요소들을 조합, 보충, 수정, 또는 제거하여 다른 구현들을 생성할 수 있다. 추가적으로, 통상의 기술자는 다른 구조들 및 프로세스들이 개시된 것들을 대체할 수 있고 결과적인 구현들이 개시된 구현들과 적어도 실질적으로 동일한 결과(들)를 달성하기 위해 적어도 실질적으로 동일한 방식(들)으로 적어도 실질적으로 동일한 기능(들)을 수행할 것임을 이해할 것이다. 따라서, 이들 및 다른 구현들이 본 출원에 의해 고려된다.

Claims (10)

  1. 비디오 트랙 및 이미지 트랙을 포함하는 데이터 스트림으로부터 3차원 장면을 디코딩하는 방법으로서,
    상기 방법은:
    - 상기 데이터 스트림의 상기 이미지 트랙 내의 제1 위치에서 픽처를 획득하는 단계 - 상기 픽처의 픽셀들은 깊이 및/또는 컬러 성분을 포함함 -;
    - 상기 데이터 스트림의 상기 비디오 트랙 내의 제2 위치에서:
    ● 컬러 이미지에 패킹된 컬러 픽처들을 포함하는 상기 컬러 이미지;
    ● 깊이 이미지에 패킹된 깊이 픽처들을 포함하는 상기 깊이 이미지; 및
    ● 패치 데이터 항목 세트를 획득하는 단계 - 패치 데이터 항목은:
    - 디-프로젝션 데이터;
    - 상기 제1 픽처에 대한 포인터 또는 상기 컬러 이미지에서의 컬러 픽처의 위치; 및
    - 상기 제1 픽처에 대한 포인터 또는 상기 깊이 이미지에서의 깊이 픽처의 위치를 포함하고;
    상기 제1 위치는 상기 스트림 내의 상기 제2 위치에 선행함 -; 및
    - 상기 세트의 패치 데이터 항목에 대해, 상기 깊이 픽처의 픽셀들에 의해 결정된 깊이에서 상기 컬러 픽처의 픽셀들을 디-프로젝션하기 위해 디-프로젝션 데이터를 사용하는 단계를 포함하는, 방법.
  2. 비디오 트랙 및 이미지 트랙을 포함하는 데이터 스트림으로부터 3차원 장면을 디코딩하기 위한 디바이스로서, 상기 디바이스는 프로세서와 연관된 메모리를 포함하고, 상기 프로세서는:
    - 상기 데이터 스트림의 상기 이미지 트랙 내의 제1 위치에서 픽처를 획득하고 - 상기 픽처의 픽셀들은 깊이 및/또는 성분을 포함함 -;
    - 상기 데이터 스트림의 상기 비디오 트랙 내의 제2 위치에서:
    ● 컬러 이미지에 패킹된 컬러 픽처들을 포함하는 상기 컬러 이미지;
    ● 깊이 이미지에 패킹된 깊이 픽처들을 포함하는 상기 깊이 이미지; 및
    ● 패치 데이터 항목 세트를 획득하고 - 패치 데이터 항목은:
    - 디-프로젝션 데이터;
    - 상기 제1 픽처에 대한 포인터 또는 상기 컬러 이미지에서의 컬러 픽처의 위치; 및
    - 상기 제1 픽처에 대한 포인터 또는 상기 깊이 이미지에서의 깊이 픽처의 위치를 포함하고;
    상기 제1 위치는 상기 스트림 내의 상기 제2 위치에 선행함 -;
    - 상기 세트의 패치 데이터 항목에 대해, 상기 깊이 픽처의 픽셀들에 의해 결정된 깊이에서 상기 컬러 픽처의 픽셀들을 디-프로젝션하기 위해 디-프로젝션 데이터를 사용하도록 구성되는, 디바이스.
  3. 제1항의 방법 또는 제2항의 디바이스로서,
    상기 컬러 이미지에서의 컬러 픽처의 상기 위치는 상기 컬러 픽처의 크기 및/또는 형상과 연관되는, 방법 또는 디바이스.
  4. 제1항의 방법 또는 제2항의 디바이스로서,
    상기 데이터 스트림의 상기 이미지 트랙으로부터 획득된 상기 픽처는 나중의 패치 데이터 항목에 의해 포인팅되도록 메모리에 저장되는, 방법 또는 디바이스.
  5. 비디오 트랙 및 이미지 트랙을 포함하는 데이터 스트림에 3차원 장면을 인코딩하는 방법으로서,
    상기 방법은:
    - 패치 세트를 획득하는 단계 - 패치는 패치 시퀀스에 속하고, 패치는 디-프로젝션 데이터, 컬러 픽처 및 깊이 픽처를 포함함 -;
    - 패치 시퀀스에 대해, 각각의 컬러 픽처 및 깊이 픽처에 대해 상기 픽처가 정적 픽처인지 비정적 픽처인지를 결정하는 단계 - 픽처가 상기 시퀀스에서 적어도 2회 반복된다면 픽처가 정적임 -;
    - 패치 세트에 대해:
    - 상기 패치 세트의 비정적 컬러 픽처들을 패킹하는 컬러 이미지; 상기 패치 세트의 비정적 깊이 픽처들을 패킹하는 깊이 이미지; 및 패치 데이터 항목 세트를 생성하는 단계 - 패치 데이터 항목은, 패치에 대해, 상기 디-프로젝션 데이터 및
    ● 상기 컬러 픽처가 비정적이면, 상기 컬러 이미지에서의 상기 컬러 픽처의 위치; 그렇지 않으면 상기 스트림의 상기 이미지 트랙에서의 정적 픽처에 대한 포인터; 및
    ● 상기 깊이 픽처가 비정적이면, 상기 깊이 이미지에서의 상기 깊이 픽처의 위치; 그렇지 않으면 상기 스트림의 상기 이미지 트랙에서의 정적 픽처에 대한 포인터를 포함함 -;
    - 상기 스트림의 상기 비디오 트랙 내의 위치에서 상기 컬러 이미지, 깊이 이미지 및 패치 데이터 항목 세트를 인코딩하는 단계;
    - 상기 스트림의 상기 비디오 트랙에 인코딩된 상기 정적 컬러 또는 깊이 픽처에 대한 제1 포인터의 위치에 선행하는 위치에서 상기 스트림의 상기 이미지 트랙에 정적 컬러 및 깊이 픽처를 인코딩하는 단계를 포함하는, 방법.
  6. 비디오 트랙 및 이미지 트랙을 포함하는 데이터 스트림에 3차원 장면을 인코딩하기 위한 디바이스로서, 상기 디바이스는 프로세서와 연관된 메모리를 포함하고, 상기 프로세서는:
    - 패치 세트를 획득하고 - 패치는 패치 시퀀스에 속하고, 패치는 디-프로젝션 데이터, 컬러 픽처 및 깊이 픽처를 포함함 -;
    - 패치 시퀀스에 대해, 각각의 컬러 픽처 및 깊이 픽처에 대해 상기 픽처가 정적 픽처인지 비정적 픽처인지를 결정하고 - 픽처가 상기 시퀀스에서 적어도 2회 반복된다면 픽처가 정적임 -;
    - 패치 세트에 대해:
    - 상기 패치 세트의 비정적 컬러 픽처들을 패킹하는 컬러 이미지; 상기 패치 세트의 비정적 깊이 픽처들을 패킹하는 깊이 이미지; 및 패치 데이터 항목 세트를 생성하고 - 패치 데이터 항목은, 패치에 대해, 상기 디-프로젝션 데이터 및
    ● 상기 컬러 픽처가 비정적이면, 상기 컬러 이미지에서의 상기 컬러 픽처의 위치; 그렇지 않으면 상기 스트림의 상기 이미지 트랙에서의 정적 픽처에 대한 포인터; 및
    ● 상기 깊이 픽처가 비정적이면, 상기 깊이 이미지에서의 상기 깊이 픽처의 위치; 그렇지 않으면 상기 스트림의 상기 이미지 트랙에서의 정적 픽처에 대한 포인터를 포함함 -;
    - 상기 스트림의 상기 비디오 트랙 내의 위치에서 상기 컬러 이미지, 깊이 이미지 및 패치 데이터 항목 세트를 인코딩하고;
    - 상기 스트림의 상기 비디오 트랙에 인코딩된 상기 정적 컬러 또는 깊이 픽처에 대한 제1 포인터의 위치에 선행하는 위치에서 상기 스트림의 상기 이미지 트랙에 정적 컬러 및 깊이 픽처를 인코딩하도록 구성되는, 디바이스.
  7. 제5항의 방법 또는 제6항의 디바이스로서,
    패치 데이터 항목의 컬러 데이터는 상기 컬러 이미지에서의 상기 컬러 픽처의 크기 및/또는 형상의 설명을 추가로 포함하는, 방법 또는 디바이스.
  8. 제5항의 방법 또는 제6항의 디바이스로서,
    패치 시퀀스에서 픽처가 반복되는지를 결정하는 단계가 상기 픽처와 상기 패치 시퀀스의 다른 픽처 사이의 거리를 계산함으로써 수행되고; 상기 거리가 주어진 임계값보다 낮다면 양쪽 픽처들이 반복되는, 방법 또는 디바이스.
  9. 3차원 장면을 나타내는 데이터를 운반하는 데이터 스트림으로서, 상기 데이터 스트림은:
    - 상기 데이터 스트림 내의 제1 위치에서 픽처를 적어도 포함하는 이미지 트랙 - 상기 픽처의 픽셀들은 깊이 및/또는 성분을 포함함 -;
    - 상기 데이터 스트림 내의 제2 위치에서 데이터 트리플릿을 적어도 포함하는 비디오 트랙을 포함하고, 상기 데이터 트리플릿은:
    ● 컬러 이미지에 패킹된 컬러 픽처들을 포함하는 상기 컬러 이미지;
    ● 깊이 이미지에 패킹된 깊이 픽처들을 포함하는 상기 깊이 이미지; 및
    ● 패치 데이터 항목 세트를 포함하고, 패치 데이터 항목은:
    - 디-프로젝션 데이터;
    - 상기 제1 픽처에 대한 포인터 또는 상기 컬러 이미지에서의 컬러 픽처의 위치; 및
    - 상기 제1 픽처에 대한 포인터 또는 상기 깊이 이미지에서의 깊이 픽처의 위치를 포함하고;
    상기 제1 위치는 상기 스트림 내의 상기 제2 위치에 선행하는, 데이터 스트림.
  10. 제9항에 있어서,
    상기 컬러 이미지에서의 컬러 픽처의 상기 위치는 상기 컬러의 크기 및/또는 형상과 연관되는, 데이터 스트림.
KR1020207023404A 2018-01-19 2019-01-14 3차원 장면들을 데이터 스트림에 인코딩하고 그로부터 디코딩하기 위한 방법 및 장치 KR20200108882A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP18305049.1A EP3515067A1 (en) 2018-01-19 2018-01-19 A method and apparatus for encoding and decoding three-dimensional scenes in and from a data stream
EP18305049.1 2018-01-19
PCT/EP2019/050832 WO2019141631A1 (en) 2018-01-19 2019-01-14 A method and apparatus for encoding and decoding three-dimensional scenes in and from a data stream

Publications (1)

Publication Number Publication Date
KR20200108882A true KR20200108882A (ko) 2020-09-21

Family

ID=61027628

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020207023404A KR20200108882A (ko) 2018-01-19 2019-01-14 3차원 장면들을 데이터 스트림에 인코딩하고 그로부터 디코딩하기 위한 방법 및 장치

Country Status (6)

Country Link
US (1) US11798195B2 (ko)
EP (2) EP3515067A1 (ko)
KR (1) KR20200108882A (ko)
CN (1) CN111742547B (ko)
BR (1) BR112020014519A2 (ko)
WO (1) WO2019141631A1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230173678A (ko) * 2021-04-15 2023-12-27 인터디지털 씨이 페이튼트 홀딩스, 에스에이에스 장기 패치 엔터티 메모리가 있는 볼류메트릭 비디오
CN115103174A (zh) * 2022-05-27 2022-09-23 南昌威爱信息科技有限公司 用于递送体积视频内容的方法和装置
US11688087B1 (en) * 2022-08-26 2023-06-27 Illuscio, Inc. Systems and methods for using hyperspectral data to produce a unified three-dimensional scan that incorporates depth

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2575351B1 (fr) 1984-12-21 1988-05-13 Thomson Csf Procede adaptatif de codage et de decodage d'une suite d'images par transformation, et dispositifs pour la mise en oeuvre de ce procede
GB9314717D0 (en) 1993-07-15 1993-08-25 Philips Electronics Uk Ltd Image processing
US5519436A (en) 1994-06-21 1996-05-21 Intel Corporation Static image background reference for video teleconferencing applications
CN104768032B (zh) * 2009-01-26 2018-06-01 汤姆森特许公司 用于视频解码的装置
US20150085939A1 (en) * 2012-04-13 2015-03-26 Sharp Kabushiki Kaisha Devices for sending and receiving a long-term reference picture indicator
RU2510589C2 (ru) 2012-07-05 2014-03-27 Вадим Витальевич Ярошенко Способ кодирования цифрового видеоизображения
WO2015172227A1 (en) * 2014-05-13 2015-11-19 Pcp Vr Inc. Method, system and apparatus for generation and playback of virtual reality multimedia
US20170163980A1 (en) * 2014-06-30 2017-06-08 Sony Corporation Information processing device and method
EP3249921A1 (en) * 2016-05-24 2017-11-29 Thomson Licensing Method, apparatus and stream for immersive video format
WO2019034807A1 (en) * 2017-08-15 2019-02-21 Nokia Technologies Oy SEQUENTIAL CODING AND DECODING OF VOLUMETRIC VIDEO
US10535161B2 (en) * 2017-11-09 2020-01-14 Samsung Electronics Co., Ltd. Point cloud compression using non-orthogonal projection
WO2019142667A1 (ja) * 2018-01-17 2019-07-25 ソニー株式会社 画像処理装置および方法
EP3515066A1 (en) * 2018-01-19 2019-07-24 Thomson Licensing A method and apparatus for encoding and decoding three-dimensional scenes in and from a data stream
EP3759925A4 (en) * 2018-03-01 2021-11-10 Nokia Technologies Oy DEVICE, METHOD AND COMPUTER PROGRAM FOR VOLUMETRIC VIDEO
US11386524B2 (en) * 2018-09-28 2022-07-12 Apple Inc. Point cloud compression image padding
EP3745357A1 (en) * 2019-05-28 2020-12-02 InterDigital VC Holdings, Inc. A method and apparatus for decoding three-dimensional scenes

Also Published As

Publication number Publication date
CN111742547B (zh) 2023-06-16
US20210074025A1 (en) 2021-03-11
US11798195B2 (en) 2023-10-24
WO2019141631A1 (en) 2019-07-25
EP3515067A1 (en) 2019-07-24
EP3741110A1 (en) 2020-11-25
CN111742547A (zh) 2020-10-02
BR112020014519A2 (pt) 2020-12-08

Similar Documents

Publication Publication Date Title
CN111742549B (zh) 在数据流中编码及解码来自数据流的三维场景的方法和装置
CN107454468B (zh) 对沉浸式视频进行格式化的方法、装置和流
KR20200096575A (ko) 3차원 객체들을 나타내는 포인트 클라우드를 인코딩하기 위한 방법 및 장치
US11375235B2 (en) Method and apparatus for encoding and decoding three-dimensional scenes in and from a data stream
KR20200051784A (ko) 3 자유도 및 볼류메트릭 호환 가능한 비디오 스트림을 인코딩 및 디코딩하기 위한 방법들 및 디바이스들
CN112189345B (zh) 用于编码或解码表示3d场景的数据的方法、设备或介质
EP3562159A1 (en) Method, apparatus and stream for volumetric video format
US20230024615A1 (en) A method and apparatus for encoding and decoding of multiple-viewpoint 3dof+ content
CN113906761A (zh) 利用修补补片对3d场景进行编码和渲染的方法和装置
KR20200108882A (ko) 3차원 장면들을 데이터 스트림에 인코딩하고 그로부터 디코딩하기 위한 방법 및 장치
CN114641802A (zh) 用于对体积视频进行编码、传输和解码的方法和装置
CN114945946A (zh) 具有辅助性分块的体积视频
KR20210027483A (ko) 3 자유도 및 볼류메트릭 호환 가능한 비디오 스트림을 인코딩 및 디코딩하기 위한 방법들 및 디바이스들
WO2020185529A1 (en) A method and apparatus for encoding and decoding volumetric video
CN115443654A (zh) 用于对体积视频进行编码和解码的方法和装置
RU2807582C2 (ru) Способ, устройство и поток для формата объемного видео
US20230224501A1 (en) Different atlas packings for volumetric video
CN115885513A (zh) 用于对体积视频进行编码和解码的方法和装置
CN116458161A (zh) 用于将体积内容编码在数据流中以及从数据流中解码出体积内容的方法和装置