KR20210066822A - 삼차원 데이터 부호화 방법, 삼차원 데이터 복호 방법, 삼차원 데이터 부호화 장치, 및 삼차원 데이터 복호 장치 - Google Patents

삼차원 데이터 부호화 방법, 삼차원 데이터 복호 방법, 삼차원 데이터 부호화 장치, 및 삼차원 데이터 복호 장치 Download PDF

Info

Publication number
KR20210066822A
KR20210066822A KR1020217009099A KR20217009099A KR20210066822A KR 20210066822 A KR20210066822 A KR 20210066822A KR 1020217009099 A KR1020217009099 A KR 1020217009099A KR 20217009099 A KR20217009099 A KR 20217009099A KR 20210066822 A KR20210066822 A KR 20210066822A
Authority
KR
South Korea
Prior art keywords
data
information
dimensional
encoding
attribute information
Prior art date
Application number
KR1020217009099A
Other languages
English (en)
Other versions
KR102662068B1 (ko
Inventor
도시야스 스기오
노리타카 이구치
Original Assignee
파나소닉 인텔렉츄얼 프로퍼티 코포레이션 오브 아메리카
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 파나소닉 인텔렉츄얼 프로퍼티 코포레이션 오브 아메리카 filed Critical 파나소닉 인텔렉츄얼 프로퍼티 코포레이션 오브 아메리카
Priority to KR1020247013796A priority Critical patent/KR20240058994A/ko
Publication of KR20210066822A publication Critical patent/KR20210066822A/ko
Application granted granted Critical
Publication of KR102662068B1 publication Critical patent/KR102662068B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/001Model-based coding, e.g. wire frame
    • 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
    • G06T9/00Image coding
    • G06T9/40Tree coding, e.g. quadtree, octree

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Generation (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Image Processing (AREA)

Abstract

삼차원 데이터 부호화 방법은, 제1 점군 데이터와 제2 점군 데이터가 결합된 제3 점군 데이터이며, 제3 점군 데이터에 포함되는 복수의 삼차원점의 각각의 위치 정보와, 복수의 삼차원점의 각각이 제1 점군 데이터와 제2 점군 데이터 중 어디에 속하는지를 나타내는 식별 정보를 포함하는 제3 점군 데이터를 취득하고(S5661), 취득된 제3 점군 데이터를 부호화함으로써 부호화 데이터를 생성하고(S5662), 생성에서는, 복수의 삼차원점의 각각에 대해서, 당해 삼차원점의 식별 정보를 당해 삼차원점의 속성 정보로서 부호화한다.

Description

삼차원 데이터 부호화 방법, 삼차원 데이터 복호 방법, 삼차원 데이터 부호화 장치, 및 삼차원 데이터 복호 장치
본 개시는, 삼차원 데이터 부호화 방법, 삼차원 데이터 복호 방법, 삼차원 데이터 부호화 장치, 및 삼차원 데이터 복호 장치에 관한 것이다.
자동차 혹은 로봇이 자율적으로 동작하기 위한 컴퓨터 비전, 맵 정보, 감시, 인프라 점검, 또는, 영상 전송 등, 폭넓은 분야에 있어서, 향후, 삼차원 데이터를 활용한 장치 또는 서비스의 보급이 전망된다. 삼차원 데이터는, 레인지 파인더 등의 거리 센서, 스테레오 카메라, 또는 복수의 단안(單眼) 카메라의 조합 등 다양한 방법으로 취득된다.
삼차원 데이터의 표현 방법 중 하나로서, 삼차원 공간 내의 점군에 의해 삼차원 구조의 형상을 나타내는 포인트 클라우드라 불리는 표현 방법이 있다. 포인트 클라우드에서는, 점군의 위치와 색이 저장된다. 포인트 클라우드는 삼차원 데이터의 표현 방법으로서 주류가 될 것으로 예상되지만, 점군은 데이터량이 매우 크다. 따라서, 삼차원 데이터의 축적 또는 전송에 있어서는 이차원의 동화상(일례로서, MPEG로 규격화된 MPEG-4 AVC 또는 HEVC 등이 있다)과 마찬가지로, 부호화에 의한 데이터량의 압축이 필수가 된다.
또한, 포인트 클라우드의 압축에 대해서는, 포인트 클라우드 관련의 처리를 행하는 공개된 라이브러리(Point Cloud Library) 등에 의해 일부 서포트되고 있다.
또한, 삼차원의 지도 데이터를 사용하여, 차량 주변에 위치하는 시설을 검색하고, 표시하는 기술이 알려져 있다(예를 들면, 특허문헌 1 참조).
국제 공개 제2014/020663호
삼차원 데이터의 부호화 처리에서는, 부호화 효율을 향상시킬 수 있는 것이 요망되고 있다.
본 개시는, 부호화 효율을 향상시킬 수 있는 삼차원 데이터 부호화 방법, 삼차원 데이터 복호 방법, 삼차원 데이터 부호화 장치, 또는 삼차원 데이터 복호 장치를 제공하는 것을 목적으로 한다.
본 개시의 일 양태에 따른 삼차원 데이터 부호화 방법은, 제1 점군 데이터와 제2 점군 데이터가 결합된 제3 점군 데이터이며, 상기 제3 점군 데이터에 포함되는 복수의 삼차원점의 각각의 위치 정보와, 상기 복수의 삼차원점의 각각이 상기 제1 점군 데이터와 상기 제2 점군 데이터 중 어디에 속하는지를 나타내는 식별 정보를 포함하는 제3 점군 데이터를 취득하고, 취득된 상기 제3 점군 데이터를 부호화함으로써 부호화 데이터를 생성하고, 상기 생성에서는, 상기 복수의 삼차원점의 각각에 대해서, 당해 삼차원점의 식별 정보를 당해 삼차원점의 속성 정보로서 부호화한다.
본 개시의 일 양태에 따른 삼차원 데이터 복호 방법은, 부호화 데이터를 취득하고, 상기 부호화 데이터를 복호함으로써, 제1 점군 데이터와 제2 점군 데이터가 결합된 제3 점군 데이터에 포함되는 복수의 삼차원점의 각각의 위치 정보 및 속성 정보를 취득하고, 상기 속성 정보는, 상기 속성 정보에 대응하는 삼차원점이 상기 제1 점군 데이터와 상기 제2 점군 데이터 중 어디에 속하는지를 나타내는 식별 정보를 포함한다.
본 개시는, 부호화 효율을 향상시킬 수 있는 삼차원 데이터 부호화 방법, 삼차원 데이터 복호 방법, 삼차원 데이터 부호화 장치, 또는 삼차원 데이터 복호 장치를 제공할 수 있다.
도 1은, 실시 형태 1에 따른 삼차원 데이터 부호화 복호 시스템의 구성을 나타내는 도면이다.
도 2는, 실시 형태 1에 따른 점군 데이터의 구성예를 나타내는 도면이다.
도 3은, 실시 형태 1에 따른 점군 데이터 정보가 기술된 데이터 파일의 구성예를 나타내는 도면이다.
도 4는, 실시 형태 1에 따른 점군 데이터의 종류를 나타내는 도면이다.
도 5는, 실시 형태 1에 따른 제1 부호화부의 구성을 나타내는 도면이다.
도 6은, 실시 형태 1에 따른 제1 부호화부의 블럭도이다.
도 7은, 실시 형태 1에 따른 제1 복호부의 구성을 나타내는 도면이다.
도 8은, 실시 형태 1에 따른 제1 복호부의 블럭도이다.
도 9는, 실시 형태 1에 따른 제2 부호화부의 구성을 나타내는 도면이다.
도 10은, 실시 형태 1에 따른 제2 부호화부의 블럭도이다.
도 11은, 실시 형태 1에 따른 제2 복호부의 구성을 나타내는 도면이다.
도 12는, 실시 형태 1에 따른 제2 복호부의 블럭도이다.
도 13은, 실시 형태 1에 따른 PCC 부호화 데이터에 관련된 프로토콜 스택을 나타내는 도면이다.
도 14는, 실시 형태 2에 따른 ISOBMFF의 기본 구조를 나타내는 도면이다.
도 15는, 실시 형태 2에 따른 프로토콜 스택을 나타내는 도면이다.
도 16은, 실시 형태 3에 따른 부호화부 및 다중화부의 구성을 나타내는 도면이다.
도 17은, 실시 형태 3에 따른 부호화 데이터의 구성예를 나타내는 도면이다.
도 18은, 실시 형태 3에 따른 부호화 데이터 및 NAL 유닛의 구성예를 나타내는 도면이다.
도 19는, 실시 형태 3에 따른 pcc_nal_unit_type의 시맨틱스 예를 나타내는 도면이다.
도 20은, 실시 형태 3에 따른 NAL 유닛의 송출 순서의 예를 나타내는 도면이다.
도 21은, 실시 형태 4에 따른 제1 부호화부의 블럭도이다.
도 22는, 실시 형태 4에 따른 제1 복호부의 블럭도이다.
도 23은, 실시 형태 4에 따른 분할부의 블럭도이다.
도 24는, 실시 형태 4에 따른 슬라이스 및 타일의 분할예를 나타내는 도면이다.
도 25는, 실시 형태 4에 따른 슬라이스 및 타일의 분할 패턴의 예를 나타내는 도면이다.
도 26은, 실시 형태 4에 따른 의존 관계의 예를 나타내는 도면이다.
도 27은, 실시 형태 4에 따른 데이터의 복호 순서의 예를 나타내는 도면이다.
도 28은, 실시 형태 4에 따른 부호화 처리의 플로차트이다.
도 29는, 실시 형태 4에 따른 결합부의 블럭도이다.
도 30은, 실시 형태 4에 따른 부호화 데이터 및 NAL 유닛의 구성예를 나타내는 도면이다.
도 31은, 실시 형태 4에 따른 부호화 처리의 플로차트이다.
도 32는, 실시 형태 4에 따른 복호 처리의 플로차트이다.
도 33은, 실시 형태 4에 따른 부호화 처리의 플로차트이다.
도 34는, 실시 형태 4에 따른 복호 처리의 플로차트이다.
도 35는, 실시 형태 5에 따른 복수 프레임의 점군 데이터로부터 트리 구조 및 어큐펀시 부호를 생성하는 이미지를 나타내는 도면이다.
도 36은, 실시 형태 5에 따른 프레임 결합의 예를 나타내는 도면이다.
도 37은, 실시 형태 5에 따른 복수 프레임의 결합의 예를 나타내는 도면이다.
도 38은, 실시 형태 5에 따른 삼차원 데이터 부호화 처리의 플로차트이다.
도 39는, 실시 형태 5에 따른 부호화 처리의 플로차트이다.
도 40은, 실시 형태 5에 따른 삼차원 데이터 복호 처리의 플로차트이다.
도 41은, 실시 형태 5에 따른 복호 및 분할 처리의 플로차트이다.
도 42는, 실시 형태 5에 따른 부호화부의 블럭도이다.
도 43은, 실시 형태 5에 따른 분할부의 블럭도이다.
도 44는, 실시 형태 5에 따른 위치 정보 부호화부의 블럭도이다.
도 45는, 실시 형태 5에 따른 속성 정보 부호화부의 블럭도이다.
도 46은, 실시 형태 5에 따른 점군 데이터의 부호화 처리의 플로차트이다.
도 47은, 실시 형태 5에 따른 부호화 처리의 플로차트이다.
도 48은, 실시 형태 5에 따른 복호부의 블럭도이다.
도 49는, 실시 형태 5에 따른 위치 정보 복호부의 블럭도이다.
도 50은, 실시 형태 5에 따른 속성 정보 복호부의 블럭도이다.
도 51은, 실시 형태 5에 따른 결합부의 블럭도이다.
도 52는, 실시 형태 5에 따른 점군 데이터의 복호 처리의 플로차트이다.
도 53은, 실시 형태 5에 따른 복호 처리의 플로차트이다.
도 54는, 실시 형태 5에 따른 프레임의 결합 패턴의 예를 나타내는 도면이다.
도 55는, 실시 형태 5에 따른 PCC 프레임의 구성예를 나타내는 도면이다.
도 56은, 실시 형태 5에 따른 부호화 위치 정보의 구성을 나타내는 도면이다.
도 57은, 실시 형태 5에 따른 부호화 위치 정보의 헤더의 신택스예를 나타내는 도면이다.
도 58은, 실시 형태 5에 따른 부호화 위치 정보의 페이로드의 신택스예를 나타내는 도면이다.
도 59는, 실시 형태 5에 따른 리프 노드 정보의 예를 나타내는 도면이다.
도 60은, 실시 형태 5에 따른 리프 노드 정보의 예를 나타내는 도면이다.
도 61은, 실시 형태 5에 따른 비트 맵 정보의 예를 나타내는 도면이다.
도 62는, 실시 형태 5에 따른 부호화 속성 정보의 구성을 나타내는 도면이다.
도 63은, 실시 형태 5에 따른 부호화 속성 정보의 헤더의 신택스예를 나타내는 도면이다.
도 64는, 실시 형태 5에 따른 부호화 속성 정보의 페이로드의 신택스예를 나타내는 도면이다.
도 65는, 실시 형태 5에 따른 부호화 데이터의 구성을 나타내는 도면이다.
도 66은, 실시 형태 5에 따른 데이터의 송출 순서 및 데이터의 참조 관계를 나타내는 도면이다.
도 67은, 실시 형태 5에 따른 데이터의 송출 순서 및 데이터의 참조 관계를 나타내는 도면이다.
도 68은, 실시 형태 5에 따른 데이터의 송출 순서 및 데이터의 참조 관계를 나타내는 도면이다.
도 69는, 실시 형태 5에 따른 일부의 프레임을 복호하는 예를 나타내는 도면이다.
도 70은, 실시 형태 5에 따른 데이터의 송출 순서 및 데이터의 참조 관계를 나타내는 도면이다.
도 71은, 실시 형태 5에 따른 데이터의 송출 순서 및 데이터의 참조 관계를 나타내는 도면이다.
도 72는, 실시 형태 5에 따른 데이터의 송출 순서 및 데이터의 참조 관계를 나타내는 도면이다.
도 73은, 실시 형태 5에 따른 데이터의 송출 순서 및 데이터의 참조 관계를 나타내는 도면이다.
도 74는, 실시 형태 5에 따른 부호화 처리의 플로차트이다.
도 75는, 실시 형태 5에 따른 복호 처리의 플로차트이다.
도 76은, 실시 형태 6에 따른 삼차원점의 예를 나타내는 도면이다.
도 77은, 실시 형태 6에 따른 LoD의 설정예를 나타내는 도면이다.
도 78은, 실시 형태 6에 따른 LoD의 설정에 사용하는 역치의 예를 나타내는 도면이다.
도 79는, 실시 형태 6에 따른 예측값에 사용하는 속성 정보의 예를 나타내는 도면이다.
도 80은, 실시 형태 6에 따른 지수 골룸 부호의 일례를 나타내는 도면이다.
도 81은, 실시 형태 6에 따른 지수 골룸 부호에 대한 처리를 나타내는 도면이다.
도 82는, 실시 형태 6에 따른 속성 헤더의 신택스예를 나타내는 도면이다.
도 83은, 실시 형태 6에 따른 속성 데이터의 신택스예를 나타내는 도면이다.
도 84는, 실시 형태 6에 따른 삼차원 데이터 부호화 처리의 플로차트이다.
도 85는, 실시 형태 6에 따른 속성 정보 부호화 처리의 플로차트이다.
도 86은, 실시 형태 6에 따른 지수 골룸 부호에 대한 처리를 나타내는 도면이다.
도 87은, 실시 형태 6에 따른 나머지 부호와 그 값의 관계를 나타내는 역방향 조회 테이블의 예를 나타내는 도면이다.
도 88은, 실시 형태 6에 따른 삼차원 데이터 복호 처리의 플로차트이다.
도 89는, 실시 형태 6에 따른 속성 정보 복호 처리의 플로차트이다.
도 90은, 실시 형태 6에 따른 삼차원 데이터 부호화 장치의 블럭도이다.
도 91은, 실시 형태 6에 따른 삼차원 데이터 복호 장치의 블럭도이다.
도 92는, 실시 형태 6에 따른 속성 정보의 구성을 나타내는 도면이다.
도 93은, 실시 형태 6에 따른 부호화 데이터에 대해서 설명하기 위한 도면이다.
도 94는, 실시 형태 6에 따른 삼차원 데이터 부호화 처리의 플로차트이다.
도 95는, 실시 형태 6에 따른 삼차원 데이터 복호 처리의 플로차트이다.
본 개시의 일 양태에 따른 삼차원 데이터 부호화 방법은, 제1 점군 데이터와 제2 점군 데이터가 결합된 제3 점군 데이터이며, 상기 제3 점군 데이터에 포함되는 복수의 삼차원점의 각각의 위치 정보와, 상기 복수의 삼차원점의 각각이 상기 제1 점군 데이터와 상기 제2 점군 데이터 중 어디에 속하는지를 나타내는 식별 정보를 포함하는 제3 점군 데이터를 취득하고, 취득된 상기 제3 점군 데이터를 부호화함으로써 부호화 데이터를 생성하고, 상기 생성에서는, 상기 복수의 삼차원점의 각각에 대해서, 당해 삼차원점의 식별 정보를 당해 삼차원점의 속성 정보로서 부호화한다.
이에 의하면, 당해 삼차원 데이터 부호화 방법은, 복수의 점군 데이터를 묶어서 부호화함으로써 부호화 효율을 향상시킬 수 있다.
예를 들면, 상기 생성에서는, 상기 복수의 삼차원점 중 제1 삼차원점 주위의 제2 삼차원점의 속성 정보를 사용하여, 상기 제1 삼차원점의 속성 정보를 부호화해도 된다.
예를 들면, 상기 제1 삼차원점의 속성 정보는, 상기 제1 삼차원점이 상기 제1 점군 데이터에 속하는 것을 나타내는 제1 식별 정보를 포함하고, 상기 제2 삼차원점의 속성 정보는, 상기 제2 삼차원점이 상기 제2 점군 데이터에 속하는 것을 나타내는 제2 식별 정보를 포함해도 된다.
예를 들면, 상기 생성에서는, 상기 제1 삼차원점의 속성 정보의 예측값을 상기 제2 삼차원점의 속성 정보를 사용하여 산출하고, 상기 제1 삼차원점의 속성 정보와, 상기 예측값의 차분인 예측 잔차를 산출하고, 상기 예측 잔차를 포함하는 부호화 데이터를 생성해도 된다.
예를 들면, 상기 취득에서는, 상기 제1 점군 데이터와 상기 제2 점군 데이터를 결합하는 것에 의해 상기 제3 점군 데이터를 생성함으로써, 상기 제3 점군 데이터를 취득해도 된다.
예를 들면, 상기 부호화 데이터는, 상기 식별 정보를, 상기 식별 정보와 상이한 다른 속성 정보와 같은 데이터 형식으로 포함해도 된다.
본 개시의 일 양태에 따른 삼차원 데이터 복호 방법은, 부호화 데이터를 취득하고, 상기 부호화 데이터를 복호함으로써, 제1 점군 데이터와 제2 점군 데이터가 결합된 제3 점군 데이터에 포함되는 복수의 삼차원점의 각각의 위치 정보 및 속성 정보를 취득하고, 상기 속성 정보는, 상기 속성 정보에 대응하는 삼차원점이 상기 제1 점군 데이터와 상기 제2 점군 데이터 중 어디에 속하는지를 나타내는 식별 정보를 포함한다.
이에 의하면, 당해 삼차원 데이터 복호 방법은, 복수의 점군 데이터를 묶어서 부호화함으로써 부호화 효율을 향상시킨 부호화 데이터를 복호할 수 있다.
예를 들면, 상기 취득에서는, 상기 복수의 삼차원점 중 제1 삼차원점 주위의 제2 삼차원점의 속성 정보를 사용하여, 상기 제1 삼차원점의 속성 정보를 복호해도 된다.
예를 들면, 상기 제1 삼차원점의 속성 정보는, 상기 제1 삼차원점이 상기 제1 점군 데이터에 속하는 것을 나타내는 제1 식별 정보를 포함하고, 상기 제2 삼차원점의 속성 정보는, 상기 제2 삼차원점이 상기 제2 점군 데이터에 속하는 것을 나타내는 제2 식별 정보를 포함해도 된다.
예를 들면, 상기 부호화 데이터는, 예측 잔차를 포함하고, 상기 부호화 데이터의 복호에서는, 상기 제1 삼차원점의 속성 정보의 예측값을 상기 제2 삼차원점의 속성 정보를 사용하여 산출하고, 상기 예측값과 상기 예측 잔차를 가산함으로써, 상기 제1 삼차원점의 속성 정보를 산출해도 된다.
예를 들면, 또한, 상기 식별 정보를 사용하여, 상기 제3 점군 데이터를, 상기 제1 점군 데이터와 상기 제2 점군 데이터로 분할해도 된다.
예를 들면, 상기 부호화 데이터는, 상기 식별 정보를, 상기 식별 정보와 상이한 다른 속성 정보와 같은 데이터 형식으로 포함해도 된다.
또한, 본 개시의 일 양태에 따른 삼차원 데이터 부호화 장치는, 프로세서와 메모리를 구비하고, 상기 프로세서는, 상기 메모리를 사용하여, 제1 점군 데이터와 제2 점군 데이터가 결합된 제3 점군 데이터이며, 상기 제3 점군 데이터에 포함되는 복수의 삼차원점의 각각의 위치 정보와, 상기 복수의 삼차원점의 각각이 상기 제1 점군 데이터와 상기 제2 점군 데이터 중 어디에 속하는지를 나타내는 식별 정보를 포함하는 제3 점군 데이터를 취득하고, 취득된 상기 제3 점군 데이터를 부호화함으로써 부호화 데이터를 생성하고, 상기 생성에서는, 상기 복수의 삼차원점의 각각에 대해서, 당해 삼차원점의 식별 정보를 당해 삼차원점의 속성 정보로서 부호화한다.
이에 의하면, 당해 삼차원 데이터 부호화 장치는, 복수의 점군 데이터를 묶어서 부호화함으로써 부호화 효율을 향상시킬 수 있다.
본 개시의 일 양태에 따른 삼차원 데이터 복호 장치는, 프로세서와 메모리를 구비하고, 상기 프로세서는, 상기 메모리를 사용하여, 부호화 데이터를 취득하고, 상기 부호화 데이터를 복호함으로써, 제1 점군 데이터와 제2 점군 데이터가 결합된 제3 점군 데이터에 포함되는 복수의 삼차원점의 각각의 위치 정보 및 속성 정보를 취득하고, 상기 속성 정보는, 상기 속성 정보에 대응하는 삼차원점이 상기 제1 점군 데이터와 상기 제2 점군 데이터 중 어디에 속하는지를 나타내는 식별 정보를 포함한다.
이에 의하면, 당해 삼차원 데이터 복호 장치는, 복수의 점군 데이터를 묶어서 부호화함으로써 부호화 효율을 향상시킨 부호화 데이터를 복호할 수 있다.
또한, 이들의 포괄적 또는 구체적인 양태는, 시스템, 방법, 집적회로, 컴퓨터 프로그램 또는 컴퓨터 판독 가능한 CD-ROM 등의 기록 매체로 실현되어도 되고, 시스템, 방법, 집적회로, 컴퓨터 프로그램 및 기록 매체의 임의의 조합으로 실현되어도 된다.
이하, 실시 형태에 대해서, 도면을 참조하면서 구체적으로 설명한다. 또한, 이하에서 설명하는 실시 형태는, 모두 본 개시의 하나의 구체적인 예를 나타내는 것이다. 이하의 실시 형태에서 나타내어지는 수치, 형상, 재료, 구성 요소, 구성 요소의 배치 위치 및 접속 형태, 단계, 단계의 순서 등은 일례이며, 본 개시를 한정하는 주지는 아니다. 또한, 이하의 실시 형태에서의 구성 요소 중, 최상위 개념을 나타내는 독립 청구항에 기재되어 있지 않은 구성 요소에 대해서는, 임의의 구성 요소로서 설명된다.
(실시 형태 1)
포인트 클라우드의 부호화 데이터를 실제의 장치 또는 서비스에서 사용할 때에는, 네트워크 대역을 억제하기 위해서 용도에 따라 필요한 정보를 송수신하는 것이 바람직하다. 그러나, 지금까지, 삼차원 데이터의 부호화 구조에는 그러한 기능이 존재하지 않으며, 그를 위한 부호화 방법도 존재하지 않았다.
본 실시 형태에서는, 삼차원의 포인트 클라우드의 부호화 데이터에 있어서 용도에 따라 필요한 정보를 송수신하는 기능을 제공하기 위한 삼차원 데이터 부호화 방법 및 삼차원 데이터 부호화 장치, 및, 당해 부호화 데이터를 복호하는 삼차원 데이터 복호 방법 및 삼차원 데이터 복호 장치, 및, 당해 부호화 데이터를 다중화하는 삼차원 데이터 다중화 방법, 및, 당해 부호화 데이터를 전송하는 삼차원 데이터 전송 방법에 대해서 설명한다.
특히, 현재, 점군 데이터의 부호화 방법(부호화 방식)으로서 제1 부호화 방법, 및 제2 부호화 방법이 검토되고 있지만, 부호화 데이터의 구성, 및 부호화 데이터를 시스템 포맷에 저장하는 방법이 정의되어 있지 않으며, 이대로는 부호화부에서의 MUX 처리(다중화), 또는, 전송 혹은 축적을 할 수 없다는 과제가 있다.
또한, PCC(Point Cloud Compression)와 같이, 제1 부호화 방법과 제2 부호화 방법의 2개의 코덱이 혼재하는 포맷을 서포트하는 방법은 지금까지 존재하지 않는다.
본 실시 형태에서는, 제1 부호화 방법과 제2 부호화 방법의 2개의 코덱이 혼재하는 PCC 부호화 데이터의 구성, 및 부호화 데이터를 시스템 포맷에 저장하는 방법에 대해서 설명한다.
우선, 본 실시 형태에 따른 삼차원 데이터(점군 데이터) 부호화 복호 시스템의 구성을 설명한다. 도 1은, 본 실시 형태에 따른 삼차원 데이터 부호화 복호 시스템의 구성예를 나타내는 도면이다. 도 1에 나타내는 바와 같이, 삼차원 데이터 부호화 복호 시스템은, 삼차원 데이터 부호화 시스템(4601), 삼차원 데이터 복호 시스템(4602), 센서 단말(4603), 외부 접속부(4604)를 포함한다.
삼차원 데이터 부호화 시스템(4601)은, 삼차원 데이터인 점군 데이터를 부호화함으로써 부호화 데이터 또는 다중화 데이터를 생성한다. 또한, 삼차원 데이터 부호화 시스템(4601)은, 단일의 장치에 의해 실현되는 삼차원 데이터 부호화 장치여도 되고, 복수의 장치에 의해 실현되는 시스템이어도 된다. 또한, 삼차원 데이터 부호화 장치는, 삼차원 데이터 부호화 시스템(4601)에 포함되는 복수의 처리부 중 일부를 포함해도 된다.
삼차원 데이터 부호화 시스템(4601)은, 점군 데이터 생성 시스템(4611), 제시부(4612), 부호화부(4613), 다중화부(4614), 입출력부(4615), 제어부(4616)를 포함한다. 점군 데이터 생성 시스템(4611)은, 센서 정보 취득부(4617)와 점군 데이터 생성부(4618)를 포함한다.
센서 정보 취득부(4617)는, 센서 단말(4603)로부터 센서 정보를 취득하고, 센서 정보를 점군 데이터 생성부(4618)에 출력한다. 점군 데이터 생성부(4618)는, 센서 정보로부터 점군 데이터를 생성하고, 점군 데이터를 부호화부(4613)에 출력한다.
제시부(4612)는, 센서 정보 또는 점군 데이터를 사용자에게 제시한다. 예를 들면, 제시부(4612)는, 센서 정보 또는 점군 데이터에 의거한 정보 또는 화상을 표시한다.
부호화부(4613)는, 점군 데이터를 부호화(압축)하고, 얻어진 부호화 데이터와, 부호화 과정에서 얻어진 제어 정보와, 그 외의 부가 정보를 다중화부(4614)에 출력한다. 부가 정보는, 예를 들면, 센서 정보를 포함한다.
다중화부(4614)는, 부호화부(4613)로부터 입력된 부호화 데이터와, 제어 정보와, 부가 정보를 다중함으로써 다중화 데이터를 생성한다. 다중화 데이터의 포맷은, 예를 들면 축적을 위한 파일 포맷, 또는 전송을 위한 패킷 포맷이다.
입출력부(4615)(예를 들면, 통신부 또는 인터페이스)는, 다중화 데이터를 외부로 출력한다. 또는, 다중화 데이터는, 내부 메모리 등의 축적부에 축적된다. 제어부(4616)(또는 애플리케이션 실행부)는, 각 처리부를 제어한다. 즉, 제어부(4616)는, 부호화 및 다중화 등의 제어를 행한다.
또한, 센서 정보가 부호화부(4613) 또는 다중화부(4614)에 입력되어도 된다. 또한, 입출력부(4615)는, 점군 데이터 또는 부호화 데이터를 그대로 외부로 출력해도 된다.
삼차원 데이터 부호화 시스템(4601)으로부터 출력된 전송 신호(다중화 데이터)는, 외부 접속부(4604)를 통해, 삼차원 데이터 복호 시스템(4602)에 입력된다.
삼차원 데이터 복호 시스템(4602)은, 부호화 데이터 또는 다중화 데이터를 복호함으로써 삼차원 데이터인 점군 데이터를 생성한다. 또한, 삼차원 데이터 복호 시스템(4602)은, 단일의 장치에 의해 실현되는 삼차원 데이터 복호 장치여도 되고, 복수의 장치에 의해 실현되는 시스템이어도 된다. 또한, 삼차원 데이터 복호 장치는, 삼차원 데이터 복호 시스템(4602)에 포함되는 복수의 처리부 중 일부를 포함해도 된다.
삼차원 데이터 복호 시스템(4602)은, 센서 정보 취득부(4621), 입출력부(4622), 역다중화부(4623), 복호부(4624), 제시부(4625), 사용자 인터페이스(4626), 제어부(4627)를 포함한다.
센서 정보 취득부(4621)는, 센서 단말(4603)로부터 센서 정보를 취득한다.
입출력부(4622)는, 전송 신호를 취득하고, 전송 신호로부터 다중화 데이터(파일 포맷 또는 패킷)를 복호하고, 다중화 데이터를 역다중화부(4623)에 출력한다.
역다중화부(4623)는, 다중화 데이터로부터 부호화 데이터, 제어 정보 및 부가 정보를 취득하고, 부호화 데이터, 제어 정보 및 부가 정보를 복호부(4624)에 출력한다.
복호부(4624)는, 부호화 데이터를 복호함으로써 점군 데이터를 재구성한다.
제시부(4625)는, 점군 데이터를 사용자에게 제시한다. 예를 들면, 제시부(4625)는, 점군 데이터에 의거한 정보 또는 화상을 표시한다. 사용자 인터페이스(4626)는, 사용자의 조작에 의거한 지시를 취득한다. 제어부(4627)(또는 애플리케이션 실행부)는, 각 처리부를 제어한다. 즉, 제어부(4627)는, 역다중화, 복호 및 제시 등의 제어를 행한다.
또한, 입출력부(4622)는, 점군 데이터 또는 부호화 데이터를 그대로 외부로부터 취득해도 된다. 또한, 제시부(4625)는, 센서 정보 등의 부가 정보를 취득하고, 부가 정보에 의거한 정보를 제시해도 된다. 또한, 제시부(4625)는, 사용자 인터페이스(4626)에서 취득된 사용자의 지시에 의거하여, 제시를 행해도 된다.
센서 단말(4603)은, 센서로 얻어진 정보인 센서 정보를 생성한다. 센서 단말(4603)은, 센서 또는 카메라를 탑재한 단말이며, 예를 들면, 자동차 등의 이동체, 비행기 등의 비행 물체, 휴대 단말, 또는 카메라 등이 있다.
센서 단말(4603)에서 취득 가능한 센서 정보는, 예를 들면, (1) LIDAR, 밀리파 레이더, 또는 적외선 센서로부터 얻어지는, 센서 단말(4603)과 대상물의 거리, 또는 대상물의 반사율, (2) 복수의 단안 카메라 화상 또는 스테레오 카메라 화상으로부터 얻어지는 카메라와 대상물의 거리 또는 대상물의 반사율 등이다. 또한, 센서 정보는, 센서의 자세, 방향, 자이로(각속도), 위치(GPS 정보 또는 고도), 속도, 또는 가속도 등을 포함해도 된다. 또한, 센서 정보는, 기온, 기압, 습도, 또는 자기 등을 포함해도 된다.
외부 접속부(4604)는, 집적회로(LSI 또는 IC), 외부 축적부, 인터넷을 통한 클라우드 서버와의 통신, 또는, 방송 등에 의해 실현된다.
다음에, 점군 데이터에 대해서 설명한다. 도 2는, 점군 데이터의 구성을 나타내는 도면이다. 도 3은, 점군 데이터의 정보가 기술된 데이터 파일의 구성예를 나타내는 도면이다.
점군 데이터는, 복수의 점의 데이터를 포함한다. 각 점의 데이터는, 위치 정보(삼차원 좌표), 및 그 위치 정보에 대한 속성 정보를 포함한다. 이 점이 복수 모인 것을 점군이라고 부른다. 예를 들면, 점군은 대상물(오브젝트)의 삼차원 형상을 나타낸다.
삼차원 좌표 등의 위치 정보(Position)를 지오메트리(geometry)라고 부르는 경우도 있다. 또한, 각 점의 데이터는, 복수의 속성 종별의 속성 정보(attribute)를 포함해도 된다. 속성 종별은, 예를 들면 색 또는 반사율 등이다.
하나의 위치 정보에 대하여 하나의 속성 정보가 대응지어져도 되고, 하나의 위치 정보에 대하여 복수의 상이한 속성 종별을 갖는 속성 정보가 대응지어져도 된다. 또한, 하나의 위치 정보에 대하여 같은 속성 종별의 속성 정보가 복수 대응지어져도 된다.
도 3에 나타내는 데이터 파일의 구성예는, 위치 정보와 속성 정보가 1 대 1로 대응하는 경우의 예이며, 점군 데이터를 구성하는 N개의 점의 위치 정보와 속성 정보를 나타내고 있다.
위치 정보는, 예를 들면, x, y, z의 3축의 정보이다. 속성 정보는, 예를 들면, RGB의 색 정보이다. 대표적인 데이터 파일로서 ply 파일 등이 있다.
다음에, 점군 데이터의 종류에 대해서 설명한다. 도 4는, 점군 데이터의 종류를 나타내는 도면이다. 도 4에 나타내는 바와 같이, 점군 데이터에는, 정적 오브젝트와 동적 오브젝트가 있다.
정적 오브젝트는, 임의의 시간(어느 시각)의 삼차원점군 데이터이다. 동적 오브젝트는, 시간적으로 변화하는 삼차원점군 데이터이다. 이후, 어느 시각의 삼차원점군 데이터를 PCC 프레임, 또는 프레임이라고 부른다.
오브젝트는, 통상의 영상 데이터와 같이, 어느 정도 영역이 제한되어 있는 점군이어도 되고, 지도 정보와 같이 영역이 제한되어 있지 않은 대규모 점군이어도 된다.
또한, 다양한 밀도의 점군 데이터가 있으며, 성긴 점군 데이터와, 조밀한 점군 데이터가 존재해도 된다.
이하, 각 처리부의 상세에 대해서 설명한다. 센서 정보는, LIDAR 혹은 레인지 파인더 등의 거리 센서, 스테레오 카메라, 또는, 복수의 단안 카메라의 조합 등 다앙향 방법으로 취득된다. 점군 데이터 생성부(4618)는, 센서 정보 취득부(4617)에서 얻어진 센서 정보에 의거하여 점군 데이터를 생성한다. 점군 데이터 생성부(4618)는, 점군 데이터로서, 위치 정보를 생성하고, 위치 정보에, 당해 위치 정보에 대한 속성 정보를 부가한다.
점군 데이터 생성부(4618)는, 위치 정보의 생성 또는 속성 정보의 부가 시에, 점군 데이터를 가공해도 된다. 예를 들면, 점군 데이터 생성부(4618)는, 위치가 중복되는 점군을 삭제함으로써 데이터량을 줄여도 된다. 또한, 점군 데이터 생성부(4618)는, 위치 정보를 변환(위치 시프트, 회전 또는 정규화 등)해도 되고, 속성 정보를 렌더링해도 된다.
또한, 도 1에서는, 점군 데이터 생성 시스템(4611)은, 삼차원 데이터 부호화 시스템(4601)에 포함되지만, 삼차원 데이터 부호화 시스템(4601)의 외부에 독립적으로 설치되어도 된다.
부호화부(4613)는, 점군 데이터를 미리 규정된 부호화 방법에 의거하여 부호화함으로써 부호화 데이터를 생성한다. 부호화 방법에는 크게 이하의 2종류가 있다. 첫 번째는, 위치 정보를 사용한 부호화 방법이며, 이 부호화 방법을, 이후, 제1 부호화 방법이라고 기재한다. 두 번째는, 비디오 코덱을 사용한 부호화 방법이며, 이 부호화 방법을, 이후, 제2 부호화 방법이라고 기재한다.
복호부(4624)는, 부호화 데이터를 미리 규정된 부호화 방법에 의거하여 복호함으로써 점군 데이터를 복호한다.
다중화부(4614)는, 부호화 데이터를, 기존의 다중화 방식을 사용하여 다중화함으로써 다중화 데이터를 생성한다. 생성된 다중화 데이터는, 전송 또는 축적된다. 다중화부(4614)는, PCC 부호화 데이터 외에, 영상, 음성, 자막, 애플리케이션, 파일 등의 다른 미디어, 또는 기준 시각 정보를 다중화한다. 또한, 다중화부(4614)는, 또한, 센서 정보 또는 점군 데이터에 관련된 속성 정보를 다중해도 된다.
다중화 방식 또는 파일 포맷으로서는, ISOBMFF, ISOBMFF 기반의 전송 방식인 MPEG-DASH, MMT, MPEG-2 TS Systems, RMP 등이 있다.
역다중화부(4623)는, 다중화 데이터로부터 PCC 부호화 데이터, 그 외의 미디어, 및 시각 정보 등을 추출한다.
입출력부(4615)는, 다중화 데이터를, 방송 또는 통신 등, 전송하는 매체 또는 축적하는 매체에 맞춘 방법을 사용하여 전송한다. 입출력부(4615)는, 인터넷 경유로 다른 디바이스와 통신해도 되고, 클라우드 서버 등의 축적부와 통신해도 된다.
통신 프로토콜로서는, http, ftp, TCP 또는 UDP 등이 사용된다. PULL형 통신 방식이 사용되어도 되고, PUSH형 통신 방식이 사용되어도 된다.
유선 전송 및 무선 전송 중 어느 것이 사용되어도 된다. 유선 전송으로서는, Ethernet(등록 상표), USB, RS-232C, HDMI(등록 상표), 또는 동축 케이블 등이 사용된다. 무선 전송으로서는, 무선 LAN, Wi-Fi(등록 상표), Bluetooth(등록 상표) 또는 밀리파 등이 사용된다.
또한, 방송 방식으로서는, 예를 들면 DVB-T2, DVB-S2, DVB-C2, ATSC3.0, 또는 ISDB-S3 등이 사용된다.
도 5는, 제1 부호화 방법의 부호화를 행하는 부호화부(4613)의 예인 제1 부호화부(4630)의 구성을 나타내는 도면이다. 도 6은, 제1 부호화부(4630)의 블럭도이다. 제1 부호화부(4630)는, 점군 데이터를 제1 부호화 방법으로 부호화함으로써 부호화 데이터(부호화 스트림)를 생성한다. 이 제1 부호화부(4630)는, 위치 정보 부호화부(4631), 속성 정보 부호화부(4632), 부가 정보 부호화부(4633), 다중화부(4634)를 포함한다.
제1 부호화부(4630)는, 삼차원 구조를 의식하여 부호화를 행한다고 하는 특징을 갖는다. 또한, 제1 부호화부(4630)는, 속성 정보 부호화부(4632)가, 위치 정보 부호화부(4631)로부터 얻어지는 정보를 사용하여 부호를 행한다고 하는 특징을 갖는다. 제1 부호화 방법은, GPCC(Geometry based PCC)라고도 불린다.
점군 데이터는, PLY 파일과 같은 PCC 점군 데이터, 또는, 센서 정보로부터 생성된 PCC 점군 데이터이며, 위치 정보(Position), 속성 정보(Attribute), 및 그 외의 부가 정보(MetaData)를 포함한다. 위치 정보는 위치 정보 부호화부(4631)에 입력되고, 속성 정보는 속성 정보 부호화부(4632)에 입력되고, 부가 정보는 부가 정보 부호화부(4633)에 입력된다.
위치 정보 부호화부(4631)는, 위치 정보를 부호화함으로써 부호화 데이터인 부호화 위치 정보(Compressed Geometry)를 생성한다. 예를 들면, 위치 정보 부호화부(4631)는, 8진 트리 등의 N진 트리 구조를 사용하여 위치 정보를 부호화한다. 구체적으로는, 8진 트리에서는, 대상 공간이 8개의 노드(서브 공간)로 분할되고, 각 노드에 점군이 포함되는지의 여부를 나타내는 8비트의 정보(어큐펀시 부호)가 생성된다. 또한, 점군이 포함되는 노드는, 더 8개의 노드로 분할되고, 당해 8개의 노드의 각각에 점군이 포함되는지의 여부를 나타내는 8비트의 정보가 생성된다. 이 처리가, 미리 정해진 계층 또는 노드에 포함되는 점군의 수의 역치 이하가 될 때까지 반복된다.
속성 정보 부호화부(4632)는, 위치 정보 부호화부(4631)에서 생성된 구성 정보를 사용하여 부호화함으로써 부호화 데이터인 부호화 속성 정보(Compressed Attribute)를 생성한다. 예를 들면, 속성 정보 부호화부(4632)는, 위치 정보 부호화부(4631)에서 생성된 8진 트리 구조에 의거하여, 처리 대상의 대상점(대상 노드)의 부호화에 있어서 참조할 참조점(참조 노드)을 결정한다. 예를 들면, 속성 정보 부호화부(4632)는, 주변 노드 또는 인접 노드 중, 8진 트리에 있어서의 부모 노드가 대상 노드와 동일한 노드를 참조한다. 또한, 참조 관계의 결정 방법은 이에 한정하지 않는다.
또한, 속성 정보의 부호화 처리는, 양자화 처리, 예측 처리, 및 산술 부호화 처리 중 적어도 하나를 포함해도 된다. 이 경우, 참조란, 속성 정보의 예측값의 산출에 참조 노드를 사용하는 것, 또는, 부호화의 파라미터의 결정에 참조 노드의 상태(예를 들면, 참조 노드에 점군이 포함되는지의 여부를 나타내는 점유 정보)를 사용하는 것이다. 예를 들면, 부호화의 파라미터란, 양자화 처리에 있어서의 양자화 파라미터, 또는 산술 부호화에 있어서의 콘텍스트 등이다.
부가 정보 부호화부(4633)는, 부가 정보 중, 압축 가능한 데이터를 부호화함으로써 부호화 데이터인 부호화 부가 정보(Compressed MetaData)를 생성한다.
다중화부(4634)는, 부호화 위치 정보, 부호화 속성 정보, 부호화 부가 정보 및 그 외의 부가 정보를 다중화함으로써 부호화 데이터인 부호화 스트림(Compressed Stream)을 생성한다. 생성된 부호화 스트림은, 도시하지 않는 시스템 레이어의 처리부로 출력된다.
다음에, 제1 부호화 방법의 복호를 행하는 복호부(4624)의 예인 제1 복호부(4640)에 대해서 설명한다. 도 7은, 제1 복호부(4640)의 구성을 나타내는 도면이다. 도 8은, 제1 복호부(4640)의 블럭도이다. 제1 복호부(4640)는, 제1 부호화 방법으로 부호화된 부호화 데이터(부호화 스트림)를, 제1 부호화 방법으로 복호함으로써 점군 데이터를 생성한다. 이 제1 복호부(4640)는, 역다중화부(4641), 위치 정보 복호부(4642), 속성 정보 복호부(4643), 부가 정보 복호부(4644)를 포함한다.
도시하지 않는 시스템 레이어의 처리부로부터 부호화 데이터인 부호화 스트림(Compressed Stream)이 제1 복호부(4640)에 입력된다.
역다중화부(4641)는, 부호화 데이터로부터, 부호화 위치 정보(Compressed Geometry), 부호화 속성 정보(Compressed Attribute), 부호화 부가 정보(Compressed MetaData), 및, 그 외의 부가 정보를 분리한다.
위치 정보 복호부(4642)는, 부호화 위치 정보를 복호함으로써 위치 정보를 생성한다. 예를 들면, 위치 정보 복호부(4642)는, 8진 트리 등의 N진 트리 구조로 나타내어지는 부호화 위치 정보로부터 삼차원 좌표로 나타내어지는 점군의 위치 정보를 복원한다.
속성 정보 복호부(4643)는, 위치 정보 복호부(4642)에서 생성된 구성 정보에 의거하여, 부호화 속성 정보를 복호한다. 예를 들면, 속성 정보 복호부(4643)는, 위치 정보 복호부(4642)에서 얻어진 8진 트리 구조에 의거하여, 처리 대상의 대상점(대상 노드)의 복호에 있어서 참조할 참조점(참조 노드)을 결정한다. 예를 들면, 속성 정보 복호부(4643)는, 주변 노드 또는 인접 노드 중, 8진 트리에 있어서의 부모 노드가 대상 노드와 동일한 노드를 참조한다. 또한, 참조 관계의 결정 방법은 이에 한정되지 않는다.
또한, 속성 정보의 복호 처리는, 역양자화 처리, 예측 처리, 및 산술 복호 처리 중 적어도 하나를 포함해도 된다. 이 경우, 참조란, 속성 정보의 예측값의 산출에 참조 노드를 사용하는 것, 또는, 복호의 파라미터의 결정에 참조 노드의 상태(예를 들면, 참조 노드에 점군이 포함되는지의 여부를 나타내는 점유 정보)를 사용하는 것이다. 예를 들면, 복호의 파라미터란, 역양자화 처리에 있어서의 양자화 파라미터, 또는 산술 복호에 있어서의 콘텍스트 등이다.
부가 정보 복호부(4644)는, 부호화 부가 정보를 복호함으로써 부가 정보를 생성한다. 또한, 제1 복호부(4640)는, 위치 정보 및 속성 정보의 복호 처리에 필요한 부가 정보를 복호 시에 사용하고, 애플리케이션에 필요한 부가 정보를 외부로 출력한다.
다음에, 제2 부호화 방법의 부호화를 행하는 부호화부(4613)의 예인 제2 부호화부(4650)에 대해서 설명한다. 도 9는, 제2 부호화부(4650)의 구성을 나타내는 도면이다. 도 10은, 제2 부호화부(4650)의 블럭도이다.
제2 부호화부(4650)는, 점군 데이터를 제2 부호화 방법으로 부호화함으로써 부호화 데이터(부호화 스트림)를 생성한다. 이 제2 부호화부(4650)는, 부가 정보 생성부(4651), 위치 화상 생성부(4652), 속성 화상 생성부(4653), 영상 부호화부(4654), 부가 정보 부호화부(4655), 다중화부(4656)를 포함한다.
제2 부호화부(4650)는, 삼차원 구조를 이차원 화상에 투영함으로써 위치 화상 및 속성 화상을 생성하고, 생성한 위치 화상 및 속성 화상을 기존의 영상 부호화 방식을 사용하여 부호화한다고 하는 특징을 갖는다. 제2 부호화 방법은, VPCC(Video based PCC)라고도 불린다.
점군 데이터는, PLY 파일과 같은 PCC 점군 데이터, 또는, 센서 정보로부터 생성된 PCC 점군 데이터이며, 위치 정보(Position), 속성 정보(Attribute), 및 그 외의 부가 정보(MetaData)를 포함한다.
부가 정보 생성부(4651)는, 삼차원 구조를 이차원 화상에 투영함으로써, 복수의 이차원 화상의 맵 정보를 생성한다.
위치 화상 생성부(4652)는, 위치 정보와, 부가 정보 생성부(4651)에서 생성된 맵 정보에 의거하여, 위치 화상(Geometry Image)을 생성한다. 이 위치 화상은, 예를 들면, 화소값으로서 거리(Depth)가 나타내어지는 거리 화상이다. 또한, 이 거리 화상은, 하나의 시점으로부터 복수의 점군을 본 화상(하나의 이차원 평면에 복수의 점군을 투영한 화상)이어도 되고, 복수의 시점으로부터 복수의 점군을 본 복수의 화상이어도 되고, 이들 복수의 화상을 통합한 하나의 화상이어도 된다.
속성 화상 생성부(4653)는, 속성 정보와, 부가 정보 생성부(4651)에서 생성된 맵 정보에 의거하여, 속성 화상을 생성한다. 이 속성 화상은, 예를 들면, 화소값으로서 속성 정보(예를 들면 색(RGB))가 나타내어지는 화상이다. 또한, 이 화상은, 하나의 시점으로부터 복수의 점군을 본 화상(하나의 이차원 평면에 복수의 점군을 투영한 화상)이어도 되고, 복수의 시점으로부터 복수의 점군을 본 복수의 화상이어도 되고, 이들 복수의 화상을 통합한 하나의 화상이어도 된다.
영상 부호화부(4654)는, 위치 화상 및 속성 화상을, 영상 부호화 방식을 사용하여 부호화함으로써, 부호화 데이터인 부호화 위치 화상(Compressed Geometry Image) 및 부호화 속성 화상(Compressed Attribute Image)을 생성한다. 또한, 영상 부호화 방식으로서, 공지된 임의의 부호화 방법이 사용되어도 된다. 예를 들면, 영상 부호화 방식은, AVC 또는 HEVC 등이다.
부가 정보 부호화부(4655)는, 점군 데이터에 포함되는 부가 정보, 및 맵 정보 등을 부호화함으로써 부호화 부가 정보(Compressed MetaData)를 생성한다.
다중화부(4656)는, 부호화 위치 화상, 부호화 속성 화상, 부호화 부가 정보, 및, 그 외의 부가 정보를 다중화함으로써 부호화 데이터인 부호화 스트림(Compressed Stream)을 생성한다. 생성된 부호화 스트림은, 도시하지 않는 시스템 레이어의 처리부로 출력된다.
다음에, 제2 부호화 방법의 복호를 행하는 복호부(4624)의 예인 제2 복호부(4660)에 대해서 설명한다. 도 11은, 제2 복호부(4660)의 구성을 나타내는 도면이다. 도 12는, 제2 복호부(4660)의 블럭도이다. 제2 복호부(4660)는, 제2 부호화 방법으로 부호화된 부호화 데이터(부호화 스트림)를, 제2 부호화 방법으로 복호함으로써 점군 데이터를 생성한다. 이 제2 복호부(4660)는, 역다중화부(4661), 영상 복호부(4662), 부가 정보 복호부(4663), 위치 정보 생성부(4664), 속성 정보 생성부(4665)를 포함한다.
도시하지 않는 시스템 레이어의 처리부로부터 부호화 데이터인 부호화 스트림(Compressed Stream)이 제2 복호부(4660)에 입력된다.
역다중화부(4661)는, 부호화 데이터로부터, 부호화 위치 화상(Compressed Geometry Image), 부호화 속성 화상(Compressed Attribute Image), 부호화 부가 정보(Compressed MetaData), 및, 그 외의 부가 정보를 분리한다.
영상 복호부(4662)는, 부호화 위치 화상 및 부호화 속성 화상을, 영상 부호화 방식을 사용하여 복호함으로써, 위치 화상 및 속성 화상을 생성한다. 또한, 영상 부호화 방식으로서, 공지된 임의의 부호화 방식이 사용되어도 된다. 예를 들면, 영상 부호화 방식은, AVC 또는 HEVC 등이다.
부가 정보 복호부(4663)는, 부호화 부가 정보를 복호함으로써, 맵 정보 등을 포함하는 부가 정보를 생성한다.
위치 정보 생성부(4664)는, 위치 화상과 맵 정보를 사용하여 위치 정보를 생성한다. 속성 정보 생성부(4665)는, 속성 화상과 맵 정보를 사용하여 속성 정보를 생성한다.
제2 복호부(4660)는, 복호에 필요한 부가 정보를 복호 시에 사용하고, 애플리케이션에 필요한 부가 정보를 외부로 출력한다.
이하, PCC 부호화 방식에 있어서의 과제를 설명한다. 도 13은, PCC 부호화 데이터에 관련된 프로토콜 스택을 나타내는 도면이다. 도 13에는, PCC 부호화 데이터에, 영상(예를 들면 HEVC) 또는 음성 등의 다른 미디어의 데이터를 다중하고, 전송 또는 축적하는 예를 나타낸다.
다중화 방식 및 파일 포맷은, 다양한 부호화 데이터를 다중하고, 전송 또는 축적하기 위한 기능을 갖고 있다. 부호화 데이터를 전송 또는 축적하기 위해서는, 부호화 데이터를 다중화 방식의 포맷으로 변환하지 않으면 안된다. 예를 들면, HEVC에서는, NAL 유닛이라 불리는 데이터 구조에 부호화 데이터를 저장하고, NAL 유닛을 ISOBMFF에 저장하는 기술이 규정되어 있다.
한편, 현재, 점군 데이터의 부호화 방법으로서 제1 부호화 방법(Codec1), 및 제2 부호화 방법(Codec2)이 검토되고 있지만, 부호화 데이터의 구성, 및 부호화 데이터를 시스템 포맷에 저장하는 방법이 정의되어 있지 않으며, 이대로는 부호화부에서의 MUX 처리(다중화), 전송 및 축적을 할 수 없다는 과제가 있다.
또한, 이후에 있어서, 특정의 부호화 방법의 기재가 없으면, 제1 부호화 방법, 및 제2 부호화 방법 중 어느 하나를 나타내는 것으로 한다.
(실시 형태 2)
본 실시 형태에서는, NAL 유닛을 ISOBMFF의 파일에 저장하는 방법에 대해서 설명한다.
ISOBMFF(ISO based media file format)는, ISO/IEC14496-12에 규정되는 파일 포맷 규격이다. ISOBMFF는, 비디오, 오디오, 및 텍스트 등 다양한 미디어를 다중하여 저장할 수 있는 포맷을 규정하고 있으며, 미디어에 의존하지 않는 규격이다.
ISOBMFF의 기본 구조(파일)에 대해서 설명한다. ISOBMFF에 있어서의 기본 단위는 박스이다. 박스는 type, length, data로 구성되고, 다양한 type의 박스를 조합한 집합이 파일이다.
도 14는, ISOBMFF의 기본 구조(파일)를 나타내는 도면이다. ISOBMFF의 파일은, 주로, 파일의 브랜드를 4CC(4 문자 코드)로 나타내는 ftyp, 제어 정보 등의 메타 데이터를 저장하는 moov, 및 데이터를 저장하는 mdat 등의 박스를 포함한다.
ISOBMFF의 파일에의 미디어마다의 저장 방법은 별도로 규정되어 있으며, 예를 들면, AVC 비디오 및 HEVC 비디오의 저장 방법은, ISO/IEC14496-15에 규정된다. 여기서, PCC 부호화 데이터를 축적 또는 전송하기 위해서, ISOBMFF의 기능을 확장하여 사용하는 것을 생각할 수 있지만, PCC 부호화 데이터를 ISOBMFF의 파일에 저장하는 규정은 아직 없다. 그래서, 본 실시 형태에서는, PCC 부호화 데이터를 ISOBMFF의 파일에 저장하는 방법에 대해서 설명한다.
도 15는, PCC 코덱 공통의 NAL 유닛을 ISOBMFF의 파일에 저장하는 경우의 프로토콜 스택을 나타내는 도면이다. 여기에서는, PCC 코덱 공통의 NAL 유닛이 ISOBMFF의 파일에 저장된다. NAL 유닛은 PCC 코덱 공통이지만, NAL 유닛에는 복수의 PCC 코덱이 저장되기 때문에, 각각의 코덱에 따른 저장 방법(Carriage of Codec1, Carriage of Codec2)을 규정하는 것이 바람직하다.
(실시 형태 3)
본 실시 형태에서는, 상술한 제1 부호화부(4630), 또는 제2 부호화부(4650)에서 생성되는 부호화 데이터(위치 정보(Geometry), 속성 정보(Attribute), 부가 정보(Metadata))의 종별, 및 부가 정보(메타 데이터)의 생성 방법, 및 다중화부에서의 다중 처리에 대해서 설명한다. 또한, 부가 정보(메타 데이터)는, 파라미터 세트, 또는 제어 정보로 표기하는 경우도 있다.
본 실시 형태에서는, 도 4에서 설명한 동적 오브젝트(시간적으로 변화하는 삼차원점군 데이터)를 예로 설명하지만, 정적 오브젝트(임의의 시각의 삼차원점군 데이터)의 경우에도 동일한 방법을 사용해도 된다.
도 16은, 본 실시 형태에 따른 삼차원 데이터 부호화 장치에 포함되는 부호화부(4801) 및 다중화부(4802)의 구성을 나타내는 도면이다. 부호화부(4801)는, 예를 들면, 상술한 제1 부호화부(4630) 또는 제2 부호화부(4650)에 대응한다. 다중화부(4802)는, 상술한 다중화부(4634 또는 4656)에 대응한다.
부호화부(4801)는, 복수의 PCC(Point Cloud Compression) 프레임의 점군 데이터를 부호화하고, 복수의 위치 정보, 속성 정보 및 부가 정보의 부호화 데이터(Multiple Compressed Data)를 생성한다.
다중화부(4802)는, 복수의 데이터 종별(위치 정보, 속성 정보 및 부가 정보)의 데이터를 NAL 유닛화함으로써, 데이터를 복호 장치에서의 데이터 액세스를 고려한 데이터 구성으로 변환한다.
도 17은, 부호화부(4801)에서 생성되는 부호화 데이터의 구성예를 나타내는 도면이다. 도면 중의 화살표는 부호화 데이터의 복호에 관련된 의존 관계를 나타내고 있으며, 화살표의 시작은 화살표의 끝의 데이터에 의존하고 있다. 즉, 복호 장치는, 화살표의 끝의 데이터를 복호하고, 그 복호한 데이터를 사용하여 화살표의 시작의 데이터를 복호한다. 바꿔 말하면, 의존한다는 것은, 의존원의 데이터의 처리(부호화 또는 복호 등)에 있어서 의존처의 데이터가 참조(사용)되는 것을 의미한다.
우선, 위치 정보의 부호화 데이터의 생성 처리에 대해서 설명한다. 부호화부(4801)는, 각 프레임의 위치 정보를 부호화함으로써, 프레임마다의 부호화 위치 데이터(Compressed Geometry Data)를 생성한다. 또한, 부호화 위치 데이터를 G(i)로 나타낸다. i는 프레임 번호, 또는 프레임의 시각 등을 나타낸다.
또한, 부호화부(4801)는, 각 프레임에 대응하는 위치 파라미터 세트(GPS(i))를 생성한다. 위치 파라미터 세트는, 부호화 위치 데이터의 복호에 사용하는 것이 가능한 파라미터를 포함한다. 또한, 프레임마다의 부호화 위치 데이터는, 대응하는 위치 파라미터 세트에 의존한다.
또한, 복수 프레임으로 이루어지는 부호화 위치 데이터를 위치 시퀀스(Geometry Sequence)로 정의한다. 부호화부(4801)는, 위치 시퀀스 내의 복수의 프레임에 대한 복호 처리에 공통으로 사용하는 파라미터를 저장하는 위치 시퀀스 파라미터 세트(Geometry Sequence PS: 위치 SPS라고도 기재한다)를 생성한다. 위치 시퀀스는, 위치 SPS에 의존한다.
다음에, 속성 정보의 부호화 데이터의 생성 처리에 대해서 설명한다. 부호화부(4801)는, 각 프레임의 속성 정보를 부호화함으로써, 프레임마다의 부호화 속성 데이터(Compressed Attribute Data)를 생성한다. 또한, 부호화 속성 데이터를 A(i)로 나타낸다. 또한, 도 17에서는, 속성 X와 속성 Y가 존재하는 예를 나타내고 있으며, 속성 X의 부호화 속성 데이터를 AX(i)로 나타내고, 속성 Y의 부호화 속성 데이터를 AY(i)로 나타낸다.
또한, 부호화부(4801)는, 각 프레임에 대응하는 속성 파라미터 세트(APS(i))를 생성한다. 또한, 속성 X의 속성 파라미터 세트를 AXPS(i)로 나타내고, 속성 Y의 속성 파라미터 세트를 AYPS(i)로 나타낸다. 속성 파라미터 세트는, 부호화 속성 정보의 복호에 사용하는 것이 가능한 파라미터를 포함한다. 부호화 속성 데이터는, 대응하는 속성 파라미터 세트에 의존한다.
또한, 복수 프레임으로 이루어지는 부호화 속성 데이터를 속성 시퀀스(Attribute Sequence)로 정의한다. 부호화부(4801)는, 속성 시퀀스 내의 복수의 프레임에 대한 복호 처리에 공통으로 사용하는 파라미터를 저장하는 속성 시퀀스 파라미터 세트(Attribute Sequence PS: 속성 SPS라고도 기재한다)를 생성한다. 속성 시퀀스는, 속성 SPS에 의존한다.
또한, 제1 부호화 방법에서는, 부호화 속성 데이터는 부호화 위치 데이터에 의존한다.
또한, 도 17에서는 2종류의 속성 정보(속성 X와 속성 Y)가 존재하는 경우의 예를 나타내고 있다. 2종류의 속성 정보가 있는 경우는, 예를 들면, 2개의 부호화부에 의해, 각각의 데이터 및 메타 데이터가 생성된다. 또한, 예를 들면, 속성 정보의 종류마다 속성 시퀀스가 정의되고, 속성 정보의 종류마다 속성 SPS가 생성된다.
또한, 도 17에서는, 위치 정보가 1종류, 속성 정보가 2종류인 예를 나타내고 있지만, 이에 한정하지 않으며, 속성 정보는 1종류여도 되고, 3종류 이상이어도 된다. 이 경우도, 동일한 방법으로 부호화 데이터를 생성할 수 있다. 또한, 속성 정보를 갖지 않는 점군 데이터의 경우는, 속성 정보는 없어도 된다. 그 경우는, 부호화부(4801)는, 속성 정보에 관련된 파라미터 세트를 생성하지 않아도 된다.
다음에, 부가 정보(메타 데이터)의 생성 처리에 대해서 설명한다. 부호화부(4801)는, PCC 스트림 전체의 파라미터 세트인 PCC 스트림 PS(PCC Stream PS: 스트림 PS라고도 기재한다)를 생성한다. 부호화부(4801)는, 스트림 PS에, 하나 또는 복수의 위치 시퀀스 및 하나 또는 복수의 속성 시퀀스에 대한 복호 처리에 공통으로 사용할 수 있는 파라미터를 저장한다. 예를 들면, 스트림 PS에는, 점군 데이터의 코덱을 나타내는 식별 정보, 및 부호화에 사용된 알고리즘을 나타내는 정보 등이 포함된다. 위치 시퀀스 및 속성 시퀀스는 스트림 PS에 의존한다.
다음에, 액세스 유닛 및 GOF에 대해서 설명한다. 본 실시 형태에서는, 새롭게 액세스 유닛(Access Unit: AU), 및 GOF(Group of Frame)의 사고방식을 도입한다.
액세스 유닛은, 복호 시에 데이터에 액세스하기 위한 기본 단위이며, 하나 이상의 데이터 및 하나 이상의 메타 데이터로 구성된다. 예를 들면, 액세스 유닛은, 동일 시각의 위치 정보와 하나 또는 복수의 속성 정보로 구성된다. GOF는, 랜덤 액세스 단위이며, 하나 이상의 액세스 유닛으로 구성된다.
부호화부(4801)는, 액세스 유닛의 선두를 나타내는 식별 정보로서, 액세스 유닛 헤더(AU Header)를 생성한다. 부호화부(4801)는, 액세스 유닛 헤더에, 액세스 유닛에 관련된 파라미터를 저장한다. 예를 들면, 액세스 유닛 헤더는, 액세스 유닛에 포함되는 부호화 데이터의 구성 또는 정보를 포함한다. 또한, 액세스 유닛 헤더는, 액세스 유닛에 포함되는 데이터에 공통으로 사용되는 파라미터, 예를 들면, 부호화 데이터의 복호에 관련된 파라미터 등을 포함한다.
또한, 부호화부(4801)는, 액세스 유닛 헤더 대신에, 액세스 유닛에 관련된 파라미터를 포함하지 않는 액세스 유닛 딜리미터를 생성해도 된다. 이 액세스 유닛 딜리미터는, 액세스 유닛의 선두를 나타내는 식별 정보로서 사용된다. 복호 장치는, 액세스 유닛 헤더 또는 액세스 유닛 딜리미터를 검출함으로써, 액세스 유닛의 선두를 식별한다.
다음에, GOF 선두의 식별 정보의 생성에 대해서 설명한다. 부호화부(4801)는, GOF의 선두를 나타내는 식별 정보로서, GOF 헤더(GOF Header)를 생성한다. 부호화부(4801)는, GOF 헤더에, GOF에 관련된 파라미터를 저장한다. 예를 들면, GOF 헤더는, GOF에 포함되는 부호화 데이터의 구성 또는 정보를 포함한다. 또한, GOF 헤더는, GOF에 포함되는 데이터에 공통으로 사용되는 파라미터, 예를 들면, 부호화 데이터의 복호에 관련된 파라미터 등을 포함한다.
또한, 부호화부(4801)는, GOF 헤더 대신에, GOF에 관련된 파라미터를 포함하지 않는 GOF 딜리미터를 생성해도 된다. 이 GOF 딜리미터는, GOF의 선두를 나타내는 식별 정보로서 사용된다. 복호 장치는, GOF 헤더 또는 GOF 딜리미터를 검출함으로써, GOF의 선두를 식별한다.
PCC 부호화 데이터에 있어서, 예를 들면, 액세스 유닛은 PCC 프레임 단위인 것으로 정의된다. 복호 장치는, 액세스 유닛 선두의 식별 정보에 의거하여, PCC 프레임에 액세스한다.
또한, 예를 들면, GOF는 하나의 랜덤 액세스 단위인 것으로 정의된다. 복호 장치는, GOF 선두의 식별 정보에 의거하여, 랜덤 액세스 단위로 액세스한다. 예를 들면, PCC 프레임이 서로 의존 관계가 없고, 단독으로 복호 가능하면, PCC 프레임을 랜덤 액세스 단위로 정의해도 된다.
또한, 하나의 액세스 유닛에 2개 이상의 PCC 프레임이 할당되어도 되고, 하나의 GOF에 복수의 랜덤 액세스 단위가 할당되어도 된다.
또한, 부호화부(4801)는, 상기 이외의 파라미터 세트 또는 메타 데이터를 정의하고, 생성해도 된다. 예를 들면, 부호화부(4801)는, 복호 시에 반드시 사용하지 않을 가능성이 있는 파라미터(옵션의 파라미터)를 저장하는 SEI(Supplemental Enhancement Information)를 생성해도 된다.
다음에, 부호화 데이터의 구성, 및 부호화 데이터의 NAL 유닛에의 저장 방법을 설명한다.
예를 들면, 부호화 데이터의 종류마다 데이터 포맷이 규정된다. 도 18은, 부호화 데이터 및 NAL 유닛의 예를 나타내는 도면이다.
예를 들면, 도 18에 나타내는 바와 같이 부호화 데이터는, 헤더와 페이로드를 포함한다. 또한, 부호화 데이터는, 부호화 데이터, 헤더 또는 페이로드의 길이(데이터량)를 나타내는 길이 정보를 포함해도 된다. 또한, 부호화 데이터는, 헤더를 포함하지 않아도 된다.
헤더는, 예를 들면, 데이터를 특정하기 위한 식별 정보를 포함한다. 이 식별 정보는, 예를 들면, 데이터 종별 또는 프레임 번호를 나타낸다.
헤더는, 예를 들면, 참조 관계를 나타내는 식별 정보를 포함한다. 이 식별 정보는, 예를 들면, 데이터간에 의존 관계가 있는 경우에 헤더에 저장되며, 참조원으로부터 참조처를 참조하기 위한 정보이다. 예를 들면, 참조처의 헤더에는, 당해 데이터를 특정하기 위한 식별 정보가 포함된다. 참조원의 헤더에는, 참조처를 나타내는 식별 정보가 포함된다.
또한, 다른 정보로부터 참조처 또는 참조원을 식별 가능 또는 도출 가능한 경우는, 데이터를 특정하기 위한 식별 정보, 또는 참조 관계를 나타내는 식별 정보를 생략해도 된다.
다중화부(4802)는, 부호화 데이터를, NAL 유닛의 페이로드에 저장한다. NAL 유닛 헤더에는, 부호화 데이터의 식별 정보인 pcc_nal_unit_type이 포함된다. 도 19는, pcc_nal_unit_type의 시맨틱스의 예를 나타내는 도면이다.
도 19에 나타내는 바와 같이, pcc_codec_type이 코덱 1(Codec1: 제1 부호화 방법)인 경우, pcc_nal_unit_type의 값 0~10은, 코덱 1에 있어서의, 부호화 위치 데이터(Geometry), 부호화 속성 X 데이터(AttributeX), 부호화 속성 Y 데이터(AttributeY), 위치 PS(Geom.PS), 속성 XPS(AttrX.PS), 속성 YPS(AttrX.PS), 위치 SPS(Geometry Sequence PS), 속성 XSPS(AttributeX Sequence PS), 속성 YSPS(AttributeY Sequence PS), AU 헤더(AU Header), GOF 헤더(GOF Header)에 할당된다. 또한, 값 11 이후는, 코덱 1의 예비에 할당된다.
pcc_codec_type이 코덱 2(Codec2: 제2 부호화 방법)인 경우, pcc_nal_unit_type의 값 0~2는, 코덱의 데이터 A(DataA), 메타 데이터 A(MetaDataA), 메타 데이터 B(MetaDataB)에 할당된다. 또한, 값 3 이후는, 코덱 2의 예비에 할당된다.
다음에, 데이터의 송출 순서에 대해서 설명한다. 이하, NAL 유닛의 송출 순서의 제약에 대해서 설명한다.
다중화부(4802)는, NAL 유닛을 GOF 또는 AU 단위로 묶어서 송출한다. 다중화부(4802)는, GOF의 선두에 GOF 헤더를 배치하고, AU의 선두에 AU 헤더를 배치한다.
패킷 로스 등으로 데이터가 손실된 경우에도, 복호 장치가 다음 AU로부터 복호할 수 있도록, 다중화부(4802)는, 시퀀스 파라미터 세트(SPS)를, AU마다 배치해도 된다.
부호화 데이터에 복호와 관련된 의존 관계가 있는 경우에는, 복호 장치는, 참조처의 데이터를 복호한 후에, 참조원의 데이터를 복호한다. 복호 장치에 있어서, 데이터를 재배열하지 않고, 수신한 순서대로 복호할 수 있도록 하기 위해서, 다중화부(4802)는, 참조처의 데이터를 먼저 송출한다.
도 20은, NAL 유닛의 송출 순서의 예를 나타내는 도면이다. 도 20은, 위치 정보 우선, 파라미터 우선, 데이터 통합의 3개의 예를 나타낸다.
위치 정보 우선의 송출 순서는, 위치 정보에 관한 정보와, 속성 정보에 관한 정보의 각각을 묶어서 송출하는 예이다. 이 송출 순서의 경우, 위치 정보에 관한 정보의 송출이 속성 정보에 관한 정보의 송출보다 빨리 완료된다.
예를 들면, 이 송출 순서를 사용함으로써, 속성 정보를 복호하지 않는 복호 장치는, 속성 정보의 복호를 무시함으로써, 처리하지 않는 시간을 설정할 수 있을 가능성이 있다. 또한, 예를 들면, 위치 정보를 빨리 복호하고자 하는 복호 장치의 경우, 위치 정보의 부호화 데이터를 빨리 얻음으로써, 보다 빨리 위치 정보를 복호할 수 있는 가능성이 있다.
또한, 도 20에서는, 속성 XSPS와 속성 YSPS를 통합하여, 속성 SPS로 기재하고 있지만, 속성 XSPS와 속성 YSPS를 개별적으로 배치해도 된다.
파라미터 세트 우선의 송출 순서에서는, 파라미터 세트가 먼저 송출되고, 데이터가 나중에 송출된다.
이상과 같이 NAL 유닛 송출 순서의 제약에 따른다면, 다중화부(4802)는, NAL 유닛을 어떠한 순서로 송출해도 된다. 예를 들면, 순서 식별 정보가 정의되고, 다중화부(4802)는, 복수 패턴의 순서로 NAL 유닛을 송출하는 기능을 가져도 된다. 예를 들면 스트림 PS에 NAL 유닛의 순서 식별 정보가 저장된다.
삼차원 데이터 복호 장치는, 순서 식별 정보에 의거하여 복호를 행해도 된다. 삼차원 데이터 복호 장치로부터 삼차원 데이터 부호화 장치에 원하는 송출 순서가 지시되고, 삼차원 데이터 부호화 장치(다중화부(4802))는, 지시된 송출 순서에 따라 송출 순서를 제어해도 된다.
또한, 다중화부(4802)는, 데이터 통합의 송출 순서와 같이, 송출 순서의 제약에 따르는 범위이면, 복수의 기능을 머지한 부호화 데이터를 생성해도 된다. 예를 들면, 도 20에 나타내는 바와 같이, GOF 헤더와 AU 헤더를 통합해도 되고, AXPS와 AYPS를 통합해도 된다. 이 경우, pcc_nal_unit_type에는, 복수의 기능을 갖는 데이터임을 나타내는 식별자가 정의된다.
이하, 본 실시 형태의 변형예에 대해서 설명한다. 프레임 레벨의 PS, 시퀀스 레벨의 PS, PCC 시퀀스 레벨의 PS와 같이, PS에는 레벨이 있으며, PCC 시퀀스 레벨을 상위의 레벨로 하고, 프레임 레벨을 하위의 레벨로 하면, 파라미터의 저장 방법에는 하기의 방법을 사용해도 된다.
디폴트의 PS의 값을 보다 상위의 PS로 나타낸다. 또한, 하위의 PS의 값이 상위의 PS의 값과 상이한 경우에는, 하위의 PS로 PS의 값이 나타내어진다. 또는, 상위에서는 PS의 값을 기재하지 않고, 하위의 PS에 PS의 값을 기재한다. 또는, PS의 값을, 하위의 PS로 나타내는지, 상위의 PS로 나타내는지, 양쪽 모두로 나타내는지의 정보를, 하위의 PS와 상위의 PS 중 어느 한쪽 또는 양쪽에 나타낸다. 또는, 하위의 PS를 상위의 PS에 머지해도 된다. 또는, 하위의 PS와 상위의 PS가 중복되는 경우에는, 다중화부(4802)는, 어느 한쪽의 송출을 생략해도 된다.
또한, 부호화부(4801) 또는 다중화부(4802)는, 데이터를 슬라이스 또는 타일 등으로 분할하고, 분할한 데이터를 송출해도 된다. 분할한 데이터에는, 분할한 데이터를 식별하기 위한 정보가 포함되고, 분할 데이터의 복호에 사용하는 파라미터가 파라미터 세트에 포함된다. 이 경우, pcc_nal_unit_type에는, 타일 또는 슬라이스에 관련된 데이터 또는 파라미터를 저장하는 데이터임을 나타내는 식별자가 정의된다.
(실시 형태 4)
HEVC 부호화에서는 복호 장치에 있어서의 병렬 처리를 가능하게 하기 위해서, 슬라이스 또는 타일이라는 데이터 분할의 툴이 있지만, PCC(Point Cloud Compression) 부호화에서는 아직 없다.
PCC에서는, 병렬 처리, 압축 효율, 및 압축 알고리즘에 따라, 다양한 데이터 분할 방법을 생각할 수 있다. 여기에서는, 슬라이스 및 타일의 정의, 데이터 구조 및 송수신 방법에 대해서 설명한다.
도 21은, 본 실시 형태에 따른 삼차원 데이터 부호화 장치에 포함되는 제1 부호화부(4910)의 구성을 나타내는 블럭도이다. 제1 부호화부(4910)는, 점군 데이터를 제1 부호화 방법(GPCC(Geometry based PCC))으로 부호화함으로써 부호화 데이터(부호화 스트림)를 생성한다. 이 제1 부호화부(4910)는, 분할부(4911), 복수의 위치 정보 부호화부(4912), 복수의 속성 정보 부호화부(4913), 부가 정보 부호화부(4914), 다중화부(4915)를 포함한다.
분할부(4911)는, 점군 데이터를 분할함으로써 복수의 분할 데이터를 생성한다. 구체적으로는, 분할부(4911)는, 점군 데이터의 공간을 복수의 서브 공간으로 분할함으로써 복수의 분할 데이터를 생성한다. 여기서 서브 공간이란, 타일 및 슬라이스 중 한쪽, 또는 타일 및 슬라이스의 조합이다. 보다 구체적으로는, 점군 데이터는, 위치 정보, 속성 정보, 및 부가 정보를 포함한다. 분할부(4911)는, 위치 정보를 복수의 분할 위치 정보로 분할하고, 속성 정보를 복수의 분할 속성 정보로 분할한다. 또한, 분할부(4911)는, 분할에 관한 부가 정보를 생성한다.
복수의 위치 정보 부호화부(4912)는, 복수의 분할 위치 정보를 부호화함으로써 복수의 부호화 위치 정보를 생성한다. 예를 들면, 복수의 위치 정보 부호화부(4912)는, 복수의 분할 위치 정보를 병렬 처리한다.
복수의 속성 정보 부호화부(4913)는, 복수의 분할 속성 정보를 부호화함으로써 복수의 부호화 속성 정보를 생성한다. 예를 들면, 복수의 속성 정보 부호화부(4913)는, 복수의 분할 속성 정보를 병렬 처리한다.
부가 정보 부호화부(4914)는, 점군 데이터에 포함되는 부가 정보와, 분할부(4911)에서 분할 시에 생성된, 데이터 분할에 관한 부가 정보를 부호화함으로써 부호화 부가 정보를 생성한다.
다중화부(4915)는, 복수의 부호화 위치 정보, 복수의 부호화 속성 정보 및 부호화 부가 정보를 다중화함으로써 부호화 데이터(부호화 스트림)를 생성하고, 생성한 부호화 데이터를 송출한다. 또한, 부호화 부가 정보는 복호 시에 사용된다.
또한, 도 21에서는, 위치 정보 부호화부(4912) 및 속성 정보 부호화부(4913)의 수가 각각 2개인 예를 나타내고 있지만, 위치 정보 부호화부(4912) 및 속성 정보 부호화부(4913)의 수는, 각각 1개여도 되고, 3개 이상이어도 된다. 또한, 복수의 분할 데이터는, CPU 내의 복수 코어와 같이 동일 칩 내에서 병렬 처리되어도 되고, 복수의 칩의 코어에서 병렬 처리되어도 되고, 복수 칩의 복수 코어에서 병렬 처리되어도 된다.
도 22는, 제1 복호부(4920)의 구성을 나타내는 블럭도이다. 제1 복호부(4920)는, 점군 데이터가 제1 부호화 방법(GPCC)으로 부호화됨으로써 생성된 부호화 데이터(부호화 스트림)를 복호함으로써 점군 데이터를 복원한다. 이 제1 복호부(4920)는, 역다중화부(4921), 복수의 위치 정보 복호부(4922), 복수의 속성 정보 복호부(4923), 부가 정보 복호부(4924), 결합부(4925)를 포함한다.
역다중화부(4921)는, 부호화 데이터(부호화 스트림)를 역다중화함으로써 복수의 부호화 위치 정보, 복수의 부호화 속성 정보 및 부호화 부가 정보를 생성한다.
복수의 위치 정보 복호부(4922)는, 복수의 부호화 위치 정보를 복호함으로써 복수의 분할 위치 정보를 생성한다. 예를 들면, 복수의 위치 정보 복호부(4922)는, 복수의 부호화 위치 정보를 병렬 처리한다.
복수의 속성 정보 복호부(4923)는, 복수의 부호화 속성 정보를 복호함으로써 복수의 분할 속성 정보를 생성한다. 예를 들면, 복수의 속성 정보 복호부(4923)는, 복수의 부호화 속성 정보를 병렬 처리한다.
복수의 부가 정보 복호부(4924)는, 부호화 부가 정보를 복호함으로써 부가 정보를 생성한다.
결합부(4925)는, 부가 정보를 사용하여 복수의 분할 위치 정보를 결합함으로써 위치 정보를 생성한다. 결합부(4925)는, 부가 정보를 사용하여 복수의 분할 속성 정보를 결합함으로써 속성 정보를 생성한다.
또한, 도 22에서는, 위치 정보 복호부(4922) 및 속성 정보 복호부(4923)의 수가 각각 2개인 예를 나타내고 있지만, 위치 정보 복호부(4922) 및 속성 정보 복호부(4923)의 수는, 각각 1개여도 되고, 3개 이상이어도 된다. 또한, 복수의 분할 데이터는, CPU 내의 복수 코어와 같이 동일 칩 내에서 병렬 처리되어도 되고, 복수의 칩의 코어에서 병렬 처리되어도 되고, 복수 칩의 복수 코어에서 병렬 처리되어도 된다.
다음에, 분할부(4911)의 구성을 설명한다. 도 23은, 분할부(4911)의 블럭도이다. 분할부(4911)는, 슬라이스 분할부(4931)(Slice Divider), 위치 정보 타일 분할부(4932)(Geometry Tile Divider), 속성 정보 타일 분할부(4933)(Attribute Tile Divider)를 포함한다.
슬라이스 분할부(4931)는, 위치 정보(Position(Geometry))를 슬라이스로 분할함으로써 복수의 슬라이스 위치 정보를 생성한다. 또한, 슬라이스 분할부(4931)는, 속성 정보(Attribute)를 슬라이스로 분할함으로써 복수의 슬라이스 속성 정보를 생성한다. 또한, 슬라이스 분할부(4931)는, 슬라이스 분할에 관련된 정보, 및 슬라이스 분할에서 생성된 정보를 포함하는 슬라이스 부가 정보(Slice MetaData)를 출력한다.
위치 정보 타일 분할부(4932)는, 복수의 슬라이스 위치 정보를 타일로 분할함으로써 복수의 분할 위치 정보(복수의 타일 위치 정보)를 생성한다. 또한, 위치 정보 타일 분할부(4932)는, 위치 정보의 타일 분할에 관련된 정보, 및 위치 정보의 타일 분할에서 생성된 정보를 포함하는 위치 타일 부가 정보(Geometry Tile MetaData)를 출력한다.
속성 정보 타일 분할부(4933)는, 복수의 슬라이스 속성 정보를 타일로 분할함으로써 복수의 분할 속성 정보(복수의 타일 속성 정보)를 생성한다. 또한, 속성 정보 타일 분할부(4933)는, 속성 정보의 타일 분할에 관련된 정보, 및 속성 정보의 타일 분할에서 생성된 정보를 포함하는 속성 타일 부가 정보(Attribute Tile MetaData)를 출력한다.
또한, 분할되는 슬라이스 또는 타일의 수는 1 이상이다. 즉, 슬라이스 또는 타일의 분할을 행하지 않아도 된다.
또한, 여기에서는, 슬라이스 분할 후에 타일 분할이 행해지는 예를 나타냈지만, 타일 분할 후에 슬라이스 분할이 행해져도 된다. 또한, 슬라이스 및 타일에 더하여 새로운 분할 종별을 정의하고, 3개 이상의 분할 종별로 분할이 행해져도 된다.
이하, 점군 데이터의 분할 방법에 대해서 설명한다. 도 24는, 슬라이스 및 타일 분할의 예를 나타내는 도면이다.
우선, 슬라이스 분할의 방법에 대해서 설명한다. 분할부(4911)는, 삼차원점군 데이터를, 슬라이스 단위로, 임의의 점군으로 분할한다. 분할부(4911)는, 슬라이스 분할에 있어서, 점을 구성하는 위치 정보와 속성 정보를 분할하지 않고, 위치 정보와 속성 정보를 일괄적으로 분할한다. 즉, 분할부(4911)는, 임의의 점에 있어서의 위치 정보와 속성 정보가 같은 슬라이스에 속하도록 슬라이스 분할을 행한다. 또한, 이들에 따른다면, 분할 수, 및 분할 방법은 어떠한 방법이어도 된다. 또한, 분할의 최소 단위는 점이다. 예를 들면, 위치 정보와 속성 정보의 분할 수는 동일하다. 예를 들면, 슬라이스 분할 후의 위치 정보에 대응하는 삼차원점과, 속성 정보에 대응하는 삼차원점은 동일한 슬라이스에 포함된다.
또한, 분할부(4911)는, 슬라이스 분할 시에 분할 수 및 분할 방법에 관련된 부가 정보인 슬라이스 부가 정보를 생성한다. 슬라이스 부가 정보는, 위치 정보와 속성 정보에서 동일하다. 예를 들면, 슬라이스 부가 정보는, 분할 후의 바운딩 박스의 기준 좌표 위치, 크기, 또는 변의 길이를 나타내는 정보를 포함한다. 또한, 슬라이스 부가 정보는, 분할 수, 및 분할 타입 등을 나타내는 정보를 포함한다.
다음에, 타일 분할의 방법에 대해서 설명한다. 분할부(4911)는, 슬라이스 분할된 데이터를, 슬라이스 위치 정보(G 슬라이스)와 슬라이스 속성 정보(A 슬라이스)로 분할하고, 슬라이스 위치 정보와 슬라이스 속성 정보를 각각 타일 단위로 분할한다.
또한, 도 24에서는 8진 트리 구조로 분할하는 예를 나타내고 있지만, 분할 수 및 분할 방법은 어떠한 방법이어도 된다.
또한, 분할부(4911)는, 위치 정보와 속성 정보를 상이한 분할 방법으로 분할해도 되고, 동일한 분할 방법으로 분할해도 된다. 또한, 분할부(4911)는, 복수의 슬라이스를 상이한 분할 방법으로 타일로 분할해도 되고, 동일한 분할 방법으로 타일로 분할해도 된다.
또한, 분할부(4911)는, 타일 분할 시에 분할 수 및 분할 방법에 관련된 타일 부가 정보를 생성한다. 타일 부가 정보(위치 타일 부가 정보 및 속성 타일 부가 정보)는, 위치 정보와 속성 정보에서 독립되어 있다. 예를 들면, 타일 부가 정보는, 분할 후의 바운딩 박스의 기준 좌표 위치, 크기, 또는 변의 길이를 나타내는 정보를 포함한다. 또한, 타일 부가 정보는, 분할 수, 및 분할 타입 등을 나타내는 정보를 포함한다.
다음에, 점군 데이터를 슬라이스 또는 타일로 분할하는 방법의 예를 설명한다. 분할부(4911)는, 슬라이스 또는 타일 분할의 방법으로서, 미리 정해진 방법을 사용해도 되고, 점군 데이터에 따라 사용하는 방법을 적응적으로 전환해도 된다.
슬라이스 분할 시에는, 분할부(4911)는, 위치 정보와 속성 정보에 대하여 일괄적으로 삼차원 공간을 분할한다. 예를 들면, 분할부(4911)는, 오브젝트의 형상을 판정하고, 오브젝트의 형상에 따라 삼차원 공간을 슬라이스로 분할한다. 예를 들면, 분할부(4911)는, 나무 또는 건물 등의 오브젝트를 추출하고, 오브젝트 단위로 분할을 행한다. 예를 들면, 분할부(4911)는, 하나 또는 복수의 오브젝트 전체가 하나의 슬라이스에 포함되도록 슬라이스 분할을 행한다. 또는, 분할부(4911)는, 하나의 오브젝트를 복수의 슬라이스로 분할한다.
이 경우, 부호화 장치는, 예를 들면, 슬라이스마다 부호화 방법을 바꾸어도 된다. 예를 들면, 부호화 장치는, 특정의 오브젝트, 또는 오브젝트의 특정한 일부에 대하여, 고품질의 압축 방법을 사용해도 된다. 이 경우, 부호화 장치는, 슬라이스마다의 부호화 방법을 나타내는 정보를 부가 정보(메타 데이터)에 저장해도 된다.
또한, 분할부(4911)는, 지도 정보 또는 위치 정보에 의거하여, 각 슬라이스가 미리 정해진 좌표 공간에 대응하도록 슬라이스 분할을 행해도 된다.
타일 분할 시에는, 분할부(4911)는, 위치 정보와 속성 정보를 독립적으로 분할한다. 예를 들면, 분할부(4911)는, 데이터량 또는 처리량에 따라 슬라이스를 타일로 분할한다. 예를 들면, 분할부(4911)는, 슬라이스의 데이터량(예를 들면 슬라이스에 포함되는 삼차원점의 수)이 미리 정해진 역치보다 많은지를 판정한다. 분할부(4911)는, 슬라이스의 데이터량이 역치보다 많은 경우에는 슬라이스를 타일로 분할한다. 분할부(4911)는, 슬라이스의 데이터량이 역치보다 적을 때에는 슬라이스를 타일로 분할하지 않는다.
예를 들면, 분할부(4911)는, 복호 장치에서의 처리량 또는 처리 시간이 일정한 범위(미리 정해진 값 이하)가 되도록, 슬라이스를 타일로 분할한다. 이에 의해, 복호 장치에서의 타일당 처리량이 일정하게 되어, 복호 장치에서의 분산 처리가 용이해진다.
또한, 분할부(4911)는, 위치 정보와 속성 정보에서 처리량이 다른 경우, 예를 들면, 위치 정보의 처리량이 속성 정보의 처리량보다 많은 경우, 위치 정보의 분할 수를, 속성 정보의 분할 수보다 많게 한다.
또한, 예를 들면, 콘텐츠에 따라, 복호 장치에서, 위치 정보를 빨리 복호하여 표시하고, 속성 정보를 나중에 천천히 복호하여 표시해도 되는 경우에, 분할부(4911)는, 위치 정보의 분할 수를, 속성 정보의 분할 수보다 많게 해도 된다. 이에 의해, 복호 장치는, 위치 정보의 병렬 수를 많게 할 수 있으므로, 위치 정보의 처리를 속성 정보의 처리보다 고속화할 수 있다.
또한, 복호 장치는, 슬라이스화 또는 타일화되어 있는 데이터를 반드시 병렬 처리할 필요는 없으며, 복호 처리부의 수 또는 능력에 따라, 이들을 병렬 처리할지 여부를 판정해도 된다.
이상과 같은 방법으로 분할함으로써, 콘텐츠 또는 오브젝트에 따른, 적응적인 부호화를 실현할 수 있다. 또한, 복호 처리에 있어서의 병렬 처리를 실현할 수 있다. 이에 의해, 점군 부호화 시스템 또는 점군 복호 시스템의 유연성이 향상한다.
도 25는, 슬라이스 및 타일의 분할 패턴의 예를 나타내는 도면이다. 도면 중의 DU는 데이터 단위(DataUnit)이며, 타일 또는 슬라이스의 데이터를 나타낸다. 또한, 각 DU는, 슬라이스 인덱스(SliceIndex)와 타일 인덱스(TileIndex)를 포함한다. 도면 중의 DU의 우측 상부의 수치가 슬라이스 인덱스를 나타내고, DU의 좌측 하부의 수치가 타일 인덱스를 나타낸다.
패턴 1에서는, 슬라이스 분할에 있어서, G 슬라이스와 A 슬라이스에서 분할 수 및 분할 방법은 같다. 타일 분할에 있어서, G 슬라이스에 대한 분할 수 및 분할 방법과 A 슬라이스에 대한 분할 수 및 분할 방법은 상이하다. 또한, 복수의 G 슬라이스 사이에서는 동일한 분할 수 및 분할 방법이 사용된다. 복수의 A 슬라이스 사이에서는 동일한 분할 수 및 분할 방법이 사용된다.
패턴 2에서는, 슬라이스 분할에 있어서, G 슬라이스와 A 슬라이스에서 분할 수 및 분할 방법은 같다. 타일 분할에 있어서, G 슬라이스에 대한 분할 수 및 분할 방법과 A 슬라이스에 대한 분할 수 및 분할 방법은 상이하다. 또한, 복수의 G 슬라이스 사이에서 분할 수 및 분할 방법이 상이하다. 복수의 A 슬라이스 사이에서 분할 수 및 분할 방법이 상이하다.
다음에, 분할 데이터의 부호화 방법에 대해서 설명한다. 삼차원 데이터 부호화 장치(제1 부호화부(4910))는, 분할된 데이터를, 각각 부호화한다. 삼차원 데이터 부호화 장치는, 속성 정보를 부호화 할 때에, 어느 구성 정보(위치 정보, 부가 정보 또는 다른 속성 정보)에 의거하여 부호화를 행했는지를 나타내는 의존 관계 정보를 부가 정보로서 생성한다. 즉, 의존 관계 정보는, 예를 들면, 참조처(의존처)의 구성 정보를 나타낸다. 이 경우, 삼차원 데이터 부호화 장치는, 속성 정보의 분할 형상에 대응하는 구성 정보에 의거하여 의존 관계 정보를 생성한다. 또한, 삼차원 데이터 부호화 장치는, 복수의 분할 형상에 대응하는 구성 정보에 의거하여 의존 관계 정보를 생성해도 된다.
의존 관계 정보는 삼차원 데이터 부호화 장치에서 생성되고, 생성된 의존 관계 정보가 삼차원 데이터 복호 장치에 송출되어도 된다. 또는, 삼차원 데이터 복호 장치가 의존 관계 정보를 생성하고, 삼차원 데이터 부호화 장치는 의존 관계 정보를 송출하지 않아도 된다. 또한, 삼차원 데이터 부호화 장치가 사용하는 의존 관계를, 미리 정해 두고, 삼차원 데이터 부호화 장치는, 의존 관계 정보를 송출하지 않아도 된다.
도 26은, 각 데이터의 의존 관계의 일례를 나타내는 도면이다. 도면 중의 화살표의 끝은 의존처를 나타내고, 화살표의 시작은 의존원을 나타내고 있다. 삼차원 데이터 복호 장치는, 의존처로부터 의존원의 순으로 데이터를 복호한다. 또한, 도면 중에 실선으로 나타내는 데이터는 실제로 송출되는 데이터이고, 점선으로 나타내는 데이터는 송출되지 않는 데이터이다.
또한, 동 도면에 있어서, G는 위치 정보를 나타내고, A는 속성 정보를 나타낸다. Gs1은, 슬라이스 번호 1의 위치 정보를 나타내고, Gs2는, 슬라이스 번호 2의 위치 정보를 나타낸다. Gs1t1은, 슬라이스 번호 1 또한 타일 번호 1의 위치 정보를 나타내고, Gs1t2는, 슬라이스 번호 1 또한 타일 번호 2의 위치 정보를 나타내고, Gs2t1은, 슬라이스 번호 2 또한 타일 번호 1의 위치 정보를 나타내고, Gs2t2는, 슬라이스 번호 2 또한 타일 번호 2의 위치 정보를 나타낸다. 마찬가지로, As1은, 슬라이스 번호 1의 속성 정보를 나타내고, As2는, 슬라이스 번호 2의 속성 정보를 나타낸다. As1t1은, 슬라이스 번호 1 또한 타일 번호 1의 속성 정보를 나타내고, As1t2는, 슬라이스 번호 1 또한 타일 번호 2의 속성 정보를 나타내고, As2t1은, 슬라이스 번호 2 또한 타일 번호 1의 속성 정보를 나타내고, As2t2는, 슬라이스 번호 2 또한 타일 번호 2의 속성 정보를 나타낸다.
Mslice는, 슬라이스 부가 정보를 나타내고, MGtile은, 위치 타일 부가 정보를 나타내고, MAtile은, 속성 타일 부가 정보를 나타낸다. Ds1t1은 속성 정보 As1t1의 의존 관계 정보를 나타내고, Ds2t1은 속성 정보 As2t1의 의존 관계 정보를 나타낸다.
또한, 삼차원 데이터 부호화 장치는, 삼차원 데이터 복호 장치에서 데이터를 재배열할 필요가 없도록, 데이터를 복호순으로 재배열해도 된다. 또한, 삼차원 데이터 복호 장치에서 데이터를 재배열해도 되고, 삼차원 데이터 부호화 장치와 삼차원 데이터 복호 장치의 양쪽 모두에서 데이터를 재배열해도 된다.
도 27은, 데이터의 복호 순서의 예를 나타내는 도면이다. 도 27의 예에서는, 좌측의 데이터부터 순서대로 복호가 행해진다. 삼차원 데이터 복호 장치는, 의존 관계에 있는 데이터 사이에서는, 의존처의 데이터부터 먼저 복호한다. 예를 들면, 삼차원 데이터 부호화 장치는, 이 순서가 되도록 데이터를 미리 재배열하여 송출한다. 또한, 의존처의 데이터가 앞서는 순서이면, 어떠한 순서여도 된다. 또한, 삼차원 데이터 부호화 장치는, 부가 정보 및 의존 관계 정보를 데이터보다 먼저 송출해도 된다.
도 28은, 삼차원 데이터 부호화 장치에 의한 처리의 흐름을 나타내는 플로차트이다. 우선, 삼차원 데이터 부호화 장치는, 상기와 같이 복수의 슬라이스 또는 타일의 데이터를 부호화한다(S4901). 다음에, 삼차원 데이터 부호화 장치는, 도 27에 나타내는 바와 같이, 의존처의 데이터가 앞서도록 데이터를 재배열한다(S4902). 다음에, 삼차원 데이터 부호화 장치는, 재배열 후의 데이터를 다중화(NAL 유닛화)한다(S4903).
다음에, 제1 복호부(4920)에 포함되는 결합부(4925)의 구성을 설명한다. 도 29는, 결합부(4925)의 구성을 나타내는 블럭도이다. 결합부(4925)는, 위치 정보 타일 결합부(4941)(Geometry Tile Combiner), 속성 정보 타일 결합부(4942)(Attribute Tile Combiner), 슬라이스 결합부(Slice Combiner)를 포함한다.
위치 정보 타일 결합부(4941)는, 위치 타일 부가 정보를 사용하여 복수의 분할 위치 정보를 결합함으로써 복수의 슬라이스 위치 정보를 생성한다. 속성 정보 타일 결합부(4942)는, 속성 타일 부가 정보를 사용하여 복수의 분할 속성 정보를 결합함으로써 복수의 슬라이스 속성 정보를 생성한다.
슬라이스 결합부(4943)는, 슬라이스 부가 정보를 사용하여 복수의 슬라이스 위치 정보를 결합함으로써 위치 정보를 생성한다. 또한, 슬라이스 결합부(4943)는, 슬라이스 부가 정보를 사용하여 복수의 슬라이스 속성 정보를 결합함으로써 속성 정보를 생성한다.
또한, 분할되는 슬라이스 또는 타일의 수는 1 이상이다. 즉, 슬라이스 또는 타일의 분할이 행해져 있지 않아도 된다.
또한, 여기에서는, 슬라이스 분할 후에 타일 분할이 행해지는 예를 나타냈지만, 타일 분할 후에 슬라이스 분할이 행해져도 된다. 또한, 슬라이스 및 타일에 더하여 새로운 분할 종별을 정의하고, 3개 이상의 분할 종별로 분할이 행해져도 된다.
다음에, 슬라이스 분할 또는 타일 분할된 부호화 데이터의 구성, 및 부호화 데이터의 NAL 유닛에의 저장 방법(다중화 방법)을 설명한다. 도 30은, 부호화 데이터의 구성 및 부호화 데이터의 NAL 유닛에의 저장 방법을 나타내는 도면이다.
부호화 데이터(분할 위치 정보 및 분할 속성 정보)는, NAL 유닛의 페이로드에 저장된다.
부호화 데이터는, 헤더와 페이로드를 포함한다. 헤더는, 페이로드에 포함되는 데이터를 특정하기 위한 식별 정보를 포함한다. 이 식별 정보는, 예를 들면, 슬라이스 분할 혹은 타일 분할의 종별(slice_type, tile_type), 슬라이스 혹은 타일을 특정하기 위한 인덱스 정보(slice_idx, tile_idx), 데이터(슬라이스 혹은 타일)의 위치 정보, 또는 데이터의 어드레스(address) 등을 포함한다. 슬라이스를 특정하기 위한 인덱스 정보는, 슬라이스 인덱스(SliceIndex)라고도 기재한다. 타일을 특정하기 위한 인덱스 정보는, 타일 인덱스(TileIndex)라고도 기재한다. 또한, 분할의 종별이란, 예를 들면, 상술한 바와 같은 오브젝트 형상에 의거한 수법, 지도 정보 혹은 위치 정보에 의거한 수법, 또는, 데이터량 혹은 처리량에 의거한 수법 등이다.
또한, 상기의 정보의 전부 또는 일부는, 분할 위치 정보의 헤더 및 분할 속성 정보의 헤더 중 한쪽에 저장되고, 다른쪽에 저장되지 않아도 된다. 예를 들면, 위치 정보와 속성 정보에서 동일한 분할 방법이 사용되는 경우에는, 위치 정보와 속성 정보에서 분할의 종별(slice_type, tile_type) 및 인덱스 정보(slice_idx, tile_idx)는 동일하다. 따라서, 위치 정보와 속성 정보 중 한쪽의 헤더에 이들 정보가 포함되어도 된다. 예를 들면, 위치 정보에 속성 정보가 의존하는 경우에는, 위치 정보가 먼저 처리된다. 따라서, 위치 정보의 헤더에 이들 정보가 포함되고, 속성 정보의 헤더에는 이들 정보가 포함되지 않아도 된다. 이 경우, 삼차원 데이터 복호 장치는, 예를 들면, 의존처의 위치 정보의 슬라이스 또는 타일과 동일한 슬라이스 또는 타일에 의존원의 속성 정보가 속한다고 판단한다.
또한, 슬라이스 분할 또는 타일 분할에 관련된 부가 정보(슬라이스 부가 정보, 위치 타일 부가 정보 또는 속성 타일 부가 정보), 및 의존 관계를 나타내는 의존 관계 정보 등은, 기존의 파라미터 세트(GPS, APS, 위치 SPS 또는 속성 SPS 등)에 저장되어 송출되어도 된다. 분할 방법이 프레임마다 변화하는 경우는, 프레임마다의 파라미터 세트(GPS 또는 APS 등)에 분할 방법을 나타내는 정보가 저장되어도 된다. 시퀀스 내에서 분할 방법이 변화하지 않는 경우는, 시퀀스마다의 파라미터 세트(위치 SPS 또는 속성 SPS)에 분할 방법을 나타내는 정보가 저장되어도 된다. 또한, 위치 정보와 속성 정보에서 같은 분할 방법이 사용되는 경우는, PCC 스트림의 파라미터 세트(스트림 PS)에 분할 방법을 나타내는 정보가 저장되어도 된다.
또한, 상기의 정보는, 상기 중 어느 하나의 파라미터 세트에 저장되어도 되고, 복수의 파라미터 세트에 저장되어도 된다. 또한, 타일 분할 또는 슬라이스 분할용 파라미터 세트를 정의하고, 당해 파라미터 세트에 상기의 정보를 저장해도 된다. 또한, 이들 정보는, 부호화 데이터의 헤더에 저장되어도 된다.
또한, 부호화 데이터의 헤더는, 의존 관계를 나타내는 식별 정보를 포함한다. 즉, 당해 헤더는, 데이터간에 의존 관계가 있는 경우는, 의존원으로부터 의존처를 참조하기 위한 식별 정보를 포함한다. 예를 들면, 의존처의 데이터의 헤더에는, 당해 데이터를 특정하기 위한 식별 정보가 포함된다. 의존원의 데이터의 헤더에는, 의존처를 나타내는 식별 정보가 포함된다. 또한, 데이터를 특정하기 위한 식별 정보, 슬라이스 분할 또는 타일 분할에 관련된 부가 정보, 및 의존 관계를 나타내는 식별 정보를, 다른 정보로부터 식별 가능 또는 도출 가능한 경우는, 이들 정보를 생략해도 된다.
다음에, 본 실시 형태에 따른 점군 데이터의 부호화 처리 및 복호 처리의 흐름에 대해서 설명한다. 도 31은, 본 실시 형태에 따른 점군 데이터의 부호화 처리의 플로차트이다.
우선, 삼차원 데이터 부호화 장치는, 사용할 분할 방법을 결정한다(S4911). 이 분할 방법은, 슬라이스 분할을 행하는지의 여부, 타일 분할을 행하는지의 여부를 포함한다. 또한, 분할 방법은, 슬라이스 분할 또는 타일 분할을 행하는 경우의 분할 수, 및, 분할의 종별 등을 포함해도 된다. 분할의 종별이란, 상술한 바와 같은 오브젝트 형상에 의거한 수법, 지도 정보 혹은 위치 정보에 의거한 수법, 또는, 데이터량 혹은 처리량에 의거한 수법 등이다. 또한, 분할 방법은, 미리 정해져 있어도 된다.
슬라이스 분할이 행해지는 경우(S4912에서 Yes), 삼차원 데이터 부호화 장치는, 위치 정보와 속성 정보를 일괄적으로 분할함으로써 복수의 슬라이스 위치 정보 및 복수의 슬라이스 속성 정보를 생성한다(S4913). 또한, 삼차원 데이터 부호화 장치는, 슬라이스 분할에 관련된 슬라이스 부가 정보를 생성한다. 또한, 삼차원 데이터 부호화 장치는, 위치 정보와 속성 정보를 독립적으로 분할해도 된다.
타일 분할이 행해지는 경우(S4914에서 Yes), 삼차원 데이터 부호화 장치는, 복수의 슬라이스 위치 정보 및 복수의 슬라이스 속성 정보(또는 위치 정보 및 속성 정보)를 독립적으로 분할함으로써 복수의 분할 위치 정보 및 복수의 분할 속성 정보를 생성한다(S4915). 또한, 삼차원 데이터 부호화 장치는, 타일 분할에 관련된 위치 타일 부가 정보 및 속성 타일 부가 정보를 생성한다. 또한, 삼차원 데이터 부호화 장치는, 슬라이스 위치 정보와 슬라이스 속성 정보를 일괄적으로 분할해도 된다.
다음에, 삼차원 데이터 부호화 장치는, 복수의 분할 위치 정보 및 복수의 분할 속성 정보의 각각을 부호화함으로써, 복수의 부호화 위치 정보 및 복수의 부호화 속성 정보를 생성한다(S4916). 또한, 삼차원 데이터 부호화 장치는, 의존 관계 정보를 생성한다.
다음에, 삼차원 데이터 부호화 장치는, 복수의 부호화 위치 정보, 복수의 부호화 속성 정보 및 부가 정보를 NAL 유닛화(다중화)함으로써 부호화 데이터(부호화 스트림)를 생성한다(S4917). 또한, 삼차원 데이터 부호화 장치는, 생성한 부호화 데이터를 송출한다.
도 32는, 본 실시 형태에 따른 점군 데이터의 복호 처리의 플로차트이다. 우선, 삼차원 데이터 복호 장치는, 부호화 데이터(부호화 스트림)에 포함되는, 분할 방법에 관련된 부가 정보(슬라이스 부가 정보, 위치 타일 부가 정보 및 속성 타일 부가 정보)를 해석함으로써, 분할 방법을 판정한다(S4921). 이 분할 방법은, 슬라이스 분할을 행하는지의 여부, 타일 분할을 행하는지의 여부를 포함한다. 또한, 분할 방법은, 슬라이스 분할 또는 타일 분할을 행하는 경우의 분할 수, 및, 분할의 종별 등을 포함해도 된다.
다음에, 삼차원 데이터 복호 장치는, 부호화 데이터에 포함되는 복수의 부호화 위치 정보 및 복수의 부호화 속성 정보를, 부호화 데이터에 포함되는 의존 관계 정보를 사용하여 복호함으로써 분할 위치 정보 및 분할 속성 정보를 생성한다(S4922).
부가 정보에 의해 타일 분할이 행해져 있는 것이 나타내어지는 경우(S4923에서 Yes), 삼차원 데이터 복호 장치는, 위치 타일 부가 정보 및 속성 타일 부가 정보에 의거하여, 복수의 분할 위치 정보와, 복수의 분할 속성 정보를, 각각의 방법으로 결합함으로써, 복수의 슬라이스 위치 정보 및 복수의 슬라이스 속성 정보를 생성한다(S4924). 또한, 삼차원 데이터 복호 장치는, 복수의 분할 위치 정보와, 복수의 분할 속성 정보를 동일한 방법으로 결합해도 된다.
부가 정보에 의해 슬라이스 분할이 행해져 있는 것이 나타내어지는 경우(S4925에서 Yes), 삼차원 데이터 복호 장치는, 슬라이스 부가 정보에 의거하여, 복수의 슬라이스 위치 정보 및 복수의 슬라이스 속성 정보(복수의 분할 위치 정보 및 복수의 분할 속성 정보)를 동일한 방법으로 결합함으로써 위치 정보 및 속성 정보를 생성한다(S4926). 또한, 삼차원 데이터 복호 장치는, 복수의 슬라이스 위치 정보와 복수의 슬라이스 속성 정보를, 각각 상이한 방법으로 결합해도 된다.
이상과 같이, 본 실시 형태에 따른 삼차원 데이터 부호화 장치는, 도 33에 나타내는 처리를 행한다. 우선, 삼차원 데이터 부호화 장치는, 복수의 삼차원점이 포함되는 대상 공간이 분할된 복수의 서브 공간(예를 들면 슬라이스)에 포함되고, 각각이 1 이상의 삼차원점을 포함하는 복수의 분할 데이터(예를 들면 타일)로 분할한다. 여기서, 분할 데이터는, 서브 공간에 포함되고, 1 이상의 삼차원점을 포함하는 1 이상의 데이터 집합체이다. 또한, 분할 데이터는 공간이기도 하며, 삼차원점을 포함하지 않는 공간을 포함하고 있어도 된다. 또한, 하나의 서브 공간에 복수의 분할 데이터가 포함되어도 되고, 하나의 서브 공간에 하나의 분할 데이터가 포함되어도 된다. 또한, 대상 공간에 복수의 서브 공간이 설정되어도 되고, 대상 공간에 하나의 서브 공간이 설정되어도 된다.
다음에, 삼차원 데이터 부호화 장치는, 복수의 분할 데이터의 각각을 부호화함으로써, 복수의 분할 데이터의 각각에 대응하는 복수의 부호화 데이터를 생성한다(S4931). 삼차원 데이터 부호화 장치는, 복수의 부호화 데이터와, 복수의 부호화 데이터의 각각에 대한 복수의 제어 정보(예를 들면 도 30에 나타내는 헤더)를 포함하는 비트 스트림을 생성한다(S4932). 복수의 제어 정보의 각각에는, 당해 제어 정보에 대응하는 부호화 데이터에 대응하는 서브 공간을 나타내는 제1 식별자(예를 들면 slice_idx)와, 당해 제어 정보에 대응하는 부호화 데이터에 대응하는 분할 데이터를 나타내는 제2 식별자(예를 들면 tile_idx)가 저장된다.
이에 의하면, 삼차원 데이터 부호화 장치에서 생성된 비트 스트림을 복호하는 삼차원 데이터 복호 장치는, 제1 식별자 및 제2 식별자를 사용하여, 복수의 분할 데이터의 데이터를 결합하여 대상 공간을 용이하게 복원할 수 있다. 따라서, 삼차원 데이터 복호 장치에 있어서의 처리량을 저감할 수 있다.
예를 들면, 삼차원 데이터 부호화 장치는, 상기 부호화에서는, 복수의 분할 데이터의 각각에 포함되는 삼차원점의 위치 정보와 속성 정보를 부호화한다. 복수의 부호화 데이터의 각각은, 위치 정보의 부호화 데이터와, 속성 정보의 부호화 데이터를 포함한다. 복수의 제어 정보의 각각은, 위치 정보의 부호화 데이터의 제어 정보와, 속성 정보의 부호화 데이터의 제어 정보를 포함한다. 제1 식별자 및 제2 식별자는, 위치 정보의 부호화 데이터의 제어 정보에 저장된다.
예를 들면, 비트 스트림에 있어서, 복수의 제어 정보의 각각은, 당해 제어 정보에 대응하는 부호화 데이터의 앞에 배치되어 있다.
또한, 삼차원 데이터 부호화 장치는, 복수의 삼차원점이 포함되는 대상 공간이 1 이상의 서브 공간으로 설정되고, 상기 서브 공간에 1 이상의 삼차원점을 포함하는 1 이상의 분할 데이터가 포함되고, 상기 분할 데이터의 각각을 부호화함으로써, 상기 복수의 분할 데이터의 각각에 대응하는 복수의 부호화 데이터를 생성하고, 상기 복수의 부호화 데이터와, 상기 복수의 부호화 데이터의 각각에 대한 복수의 제어 정보를 포함하는 비트 스트림을 생성하고, 상기 복수의 제어 정보의 각각에는, 당해 제어 정보에 대응하는 부호화 데이터에 대응하는 서브 공간을 나타내는 제1 식별자와, 당해 제어 정보에 대응하는 부호화 데이터에 대응하는 분할 데이터를 나타내는 제2 식별자가 저장되어도 된다.
예를 들면, 삼차원 데이터 부호화 장치는, 프로세서와 메모리를 구비하고, 프로세서는, 메모리를 사용하여, 상기의 처리를 행한다.
또한, 본 실시 형태에 따른 삼차원 데이터 복호 장치는, 도 34에 나타내는 처리를 행한다. 우선, 삼차원 데이터 복호 장치는, 복수의 삼차원점이 포함되는 대상 공간이 분할된 복수의 서브 공간(예를 들면 슬라이스)에 포함되고, 각각이 1 이상의 삼차원점을 포함하는 복수의 분할 데이터(예를 들면 타일)의 각각이 부호화됨으로써 생성된 복수의 부호화 데이터와, 복수의 부호화 데이터의 각각에 대한 복수의 제어 정보(예를 들면 도 30에 나타내는 헤더)를 포함하는 비트 스트림으로부터, 상기 복수의 제어 정보에 저장되어 있는, 당해 제어 정보에 대응하는 부호화 데이터에 대응하는 서브 공간을 나타내는 제1 식별자(예를 들면 slice_idx)와, 당해 제어 정보에 대응하는 부호화 데이터에 대응하는 분할 데이터를 나타내는 제2 식별자(예를 들면 tile_idx)를 취득한다(S4941). 다음에, 삼차원 데이터 복호 장치는, 복수의 부호화 데이터를 복호함으로써 복수의 분할 데이터를 복원한다(S4942). 다음에, 삼차원 데이터 복호 장치는, 제1 식별자 및 제2 식별자를 사용하여, 복수의 분할 데이터를 결합함으로써 대상 공간을 복원한다(S4943). 예를 들면, 삼차원 데이터 부호화 장치는, 제2 식별자를 사용하여 복수의 분할 데이터를 결합함으로써 복수의 서브 공간을 복원하고, 제1 식별자를 사용하여 복수의 서브 공간을 결합함으로써 대상 공간(복수의 삼차원점)을 복원한다. 또한, 삼차원 데이터 복호 장치는, 제1 식별자 및 제2 식별자 중 적어도 한쪽을 사용하여, 원하는 서브 공간 또는 분할 데이터의 부호화 데이터를 비트 스트림으로부터 취득하고, 취득한 부호화 데이터를 선택적으로 복호, 또는 우선적으로 복호해도 된다.
이에 의하면, 삼차원 데이터 복호 장치는, 제1 식별자 및 제2 식별자를 사용하여, 복수의 분할 데이터의 데이터를 결합하여 대상 공간을 용이하게 복원할 수 있다. 따라서, 삼차원 데이터 복호 장치에 있어서의 처리량을 저감할 수 있다.
예를 들면, 복수의 부호화 데이터의 각각은, 대응하는 분할 데이터에 포함되는 삼차원점의 위치 정보와 속성 정보가 부호화됨으로써 생성되고, 위치 정보의 부호화 데이터와, 속성 정보의 부호화 데이터를 포함한다. 복수의 제어 정보의 각각은, 위치 정보의 부호화 데이터의 제어 정보와, 속성 정보의 부호화 데이터의 제어 정보를 포함한다. 제1 식별자 및 제2 식별자는, 위치 정보의 부호화 데이터의 제어 정보에 저장되어 있다.
예를 들면, 비트 스트림에 있어서, 제어 정보는, 대응하는 부호화 데이터의 앞에 배치되어 있다.
예를 들면, 삼차원 데이터 복호 장치는, 프로세서와 메모리를 구비하고, 프로세서는, 메모리를 사용하여, 상기의 처리를 행한다.
(실시 형태 5)
인접 의존을 사용한 위치 정보 부호화에서는, 점군의 밀도가 높을수록 부호화 효율이 향상할 가능성이 있다. 본 실시 형태에서는, 삼차원 데이터 부호화 장치는, 연속하는 프레임의 점군 데이터를 결합함으로써, 연속하는 프레임의 점군 데이터를 묶어서 부호화한다. 이때, 삼차원 데이터 부호화 장치는, 결합 후의 점군 데이터에 포함되는 리프 노드의 각각이 속하는 프레임을 식별하기 위한 정보를 부가한 부호화 데이터를 생성한다.
여기서, 연속하는 프레임의 점군 데이터는 유사할 가능성이 높다. 따라서, 연속하는 프레임에서, 어큐펀시 부호의 상위 레벨이 동일해질 가능성이 높다. 즉, 연속하는 프레임을 묶어서 부호화함으로써, 어큐펀시 부호의 상위 레벨을 공용할 수 있다.
또한, 점군이 어느 프레임에 속하는지의 구별은, 프레임의 인덱스를 부호화함으로써, 리프 노드에서 행해진다.
도 35는, N개의 PCC(Point Cloud Compression) 프레임의 점군 데이터로부터 트리 구조 및 어큐펀시 부호(Occupancy Code)를 생성하는 이미지를 나타내는 도면이다. 동 도면에 있어서, 화살표 속의 점은, 각각의 PCC 프레임에 속하는 점을 나타내고 있다. 처음에, 각각의 PCC 프레임에 속하는 점에는, 프레임을 특정하기 위한 프레임 인덱스가 부여된다.
다음에, N개의 프레임에 속하는 점을 트리 구조로 변환하고, 어큐펀시 부호가 생성된다. 구체적으로는, 점마다, 점이 트리 구조에 있어서의 어느 리프 노드에 속하는지가 판정된다. 동 도면에서는, 트리 구조(Tree Structure)는 노드의 집합을 나타내고 있다. 상위의 노드부터 차례로, 점이 어느 노드에 속하는지가 판정된다. 노드마다의 판정 결과가 어큐펀시 부호로서 부호화된다. 어큐펀시 부호는 N개의 프레임에서 공통이다.
노드에는, 상이한 프레임 인덱스가 부여된, 상이한 프레임의 점이 혼재하는 경우가 있다. 또한, 8진 트리(Octree)의 분해능이 작은 경우는, 동일한 프레임 인덱스가 부여된 동일 프레임의 점이 혼재하는 경우도 있다.
최하층의 노드(리프 노드)에는, 복수의 프레임에 속하는 점이 혼재(중복)하는 경우가 있다.
트리 구조 및 어큐펀시 부호에 있어서, 상위 레벨의 트리 구조 및 어큐펀시 부호는, 모든 프레임에 있어서 공통 성분일 가능성이 있으며, 하위 레벨의 트리 구조 및 어큐펀시 부호는 프레임마다의 개별 성분, 또는 공통 성분과 개별 성분이 혼재할 가능성이 있다.
예를 들면, 리프 노드 등의 최하층의 노드에는, 프레임 인덱스를 갖는 0 이상의 점이 생성되고, 점의 수를 나타내는 정보, 및 각 점에 대한 프레임 인덱스의 정보가 생성된다. 이들 정보는, 프레임에 있어서 개별의 정보라고 할 수 있다.
도 36은, 프레임 결합의 예를 나타내는 도면이다. 도 36의 (a)에 나타내는 바와 같이, 복수 프레임을 묶어서 트리 구조를 생성함으로써, 동일한 노드에 포함되는 프레임의 점의 밀도가 증가한다. 또한, 트리 구조를 공유함으로써 어큐펀시 부호의 데이터량을 삭감할 수 있다. 이들에 의해, 부호화율을 향상시킬 수 있을 가능성이 있다.
또한, 도 36의 (b)에 나타내는 바와 같이, 트리 구조에 있어서의 어큐펀시 부호의 개별 성분이 보다 조밀하게 됨으로써, 산술 부호화의 효과가 높아지므로, 부호화율을 향상시킬 수 있을 가능성이 있다.
이후, 시간적으로 상이한 복수의 PCC 프레임의 결합을 예로 설명하지만, 복수 프레임이 아닌 경우, 즉 프레임을 결합하지 않는 경우(N=1)에도 적용 가능하다. 또한, 결합하는 복수의 점군 데이터는, 복수 프레임, 즉, 동일 대상물의 시각이 상이한 점군 데이터에 한정하지 않는다. 즉, 이하의 수법은, 공간적, 또는 시공간적으로 상이한 복수의 점군 데이터의 결합에도 적용 가능하다. 또한, 이하의 수법은, 콘텐츠가 상이한 점군 데이터 또는 점군 파일의 결합에도 적용 가능하다.
도 37은, 시간적으로 상이한 복수의 PCC 프레임의 결합의 예를 나타내는 도면이다. 도 37은, 자동차가 이동하면서, LiDAR 등의 센서로 점군 데이터를 취득하는 예를 나타낸다. 점선은, 프레임마다의 센서의 취득 범위, 즉 점군 데이터의 영역을 나타내고 있다. 센서의 취득 범위가 큰 경우는, 점군 데이터의 범위도 커진다.
점군 데이터를 결합하여 부호화하는 수법은, 이하와 같은 점군 데이터에 대하여 유효하다. 예를 들면, 도 37에 나타내는 예에서는, 자동차는 이동하고 있고, 프레임은 자동차 주변의 360°의 스캔에 의해 식별된다. 즉, 다음 프레임인 프레임 2는, 차량이 X방향으로 이동한 후의 다른 360°의 스캔에 대응한다.
이 경우, 프레임 1과 프레임 2에는, 중복되는 영역이 존재하기 때문에 동일한 점군 데이터가 포함될 가능성이 있다. 따라서, 프레임 1과 프레임 2를 결합하여 부호화함으로써 부호화 효율을 향상시킬 수 있을 가능성이 있다. 또한, 보다 많은 프레임을 결합하는 것도 생각할 수 있다. 단, 결합하는 프레임 수를 늘리면, 리프 노드에 부가되는 프레임 인덱스의 부호화에 필요한 비트수가 증가한다.
또한, 상이한 위치의 센서에 의해 점군 데이터가 취득되어도 된다. 그에 의해, 각각의 위치로부터 취득된 각각의 점군 데이터가 각각 프레임으로서 사용되어도 된다. 즉, 복수의 프레임은, 단일의 센서로 취득된 점군 데이터여도 되고, 복수의 센서로 취득된 점군 데이터여도 된다. 또한, 복수의 프레임간에 있어서, 일부 또는 모든 대상물이 동일해도 되고, 상이해도 된다.
다음에, 본 실시 형태에 따른 삼차원 데이터 부호화 처리의 흐름을 설명한다. 도 38은, 삼차원 데이터 부호화 처리의 플로차트이다. 삼차원 데이터 부호화 장치는, 결합을 행하는 프레임의 수인 결합 프레임 수 N에 의거하여, N개 모두의 프레임의 점군 데이터를 읽어들인다.
우선, 삼차원 데이터 부호화 장치는, 결합 프레임 수 N을 결정한다(S5401). 예를 들면, 이 결합 프레임 수 N은 사용자에 의해 지정된다.
다음에, 삼차원 데이터 부호화 장치는, 점군 데이터를 취득한다(S5402). 다음에, 삼차원 데이터 부호화 장치는, 취득한 점군 데이터의 프레임 인덱스를 기록한다(S5403).
N개의 프레임을 처리 완료가 아닌 경우(S5404에서 No), 삼차원 데이터 부호화 장치는, 다음 점군 데이터를 지정하고(S5405), 지정된 점군 데이터에 대하여 단계 S5402 이후의 처리를 행한다.
한편, N개의 프레임을 처리 완료인 경우(S5404에서 Yes), 삼차원 데이터 부호화 장치는, N개의 프레임을 결합하고, 결합 후의 프레임을 부호화한다(S5406).
도 39는, 부호화 처리(S5406)의 플로차트이다. 우선, 삼차원 데이터 부호화 장치는, N개의 프레임에 공통인 공통 정보를 생성한다(S5411). 예를 들면, 공통 정보는, 어큐펀시 부호, 및 결합 프레임 수 N을 나타내는 정보를 포함한다.
다음에, 삼차원 데이터 부호화 장치는, 프레임마다 개별의 정보인 개별 정보를 생성한다(S5412). 예를 들면, 개별 정보는, 리프 노드에 포함되는 점의 수, 및 리프 노드에 포함되는 점의 프레임 인덱스를 포함한다.
다음에, 삼차원 데이터 부호화 장치는, 공통 정보와 개별 정보를 결합하고, 결합 후의 정보를 부호화함으로써 부호화 데이터를 생성한다(S5413). 다음에, 삼차원 데이터 부호화 장치는, 프레임 결합에 관련된 부가 정보(메타 데이터)를 생성하고, 생성한 부가 정보를 부호화한다(S5414).
다음에, 본 실시 형태에 따른 삼차원 데이터 복호 처리의 흐름을 설명한다. 도 40은, 삼차원 데이터 복호 처리의 플로차트이다.
우선, 삼차원 데이터 복호 장치는, 비트 스트림으로부터 결합 프레임 수 N을 취득한다(S5421). 다음에, 삼차원 데이터 부호화 장치는, 비트 스트림으로부터 부호화 데이터를 취득한다(S5422). 다음에, 삼차원 데이터 복호 장치는, 부호화 데이터를 복호함으로써 점군 데이터와 프레임 인덱스를 취득한다(S5423). 마지막으로, 삼차원 데이터 복호 장치는, 복호된 점군 데이터를 프레임 인덱스를 사용하여 분할한다(S5424).
도 41은, 복호 및 분할 처리(S5423 및 S5424)의 플로차트이다. 우선, 삼차원 데이터 복호 장치는, 부호화 데이터(비트 스트림)로부터 공통 정보 및 개별 정보를 복호(취득)한다(S5431).
다음에, 삼차원 데이터 복호 장치는, 단일의 프레임을 복호할지 복수의 프레임을 복호할지를 결정한다(S5432). 예를 들면, 단일의 프레임을 복호할지 복수의 프레임을 복호할지는 외부로부터 지정되어도 된다. 여기서, 복수의 프레임이란, 결합된 프레임의 모든 프레임이어도 되고, 일부의 프레임이어도 된다. 예를 들면, 삼차원 데이터 복호 장치는, 애플리케이션이 필요로 하는 특정의 프레임을 복호하는 것으로 결정하고, 필요로 하지 않는 프레임을 복호하지 않는 것으로 결정해도 된다. 또는, 실시간 복호가 요구되는 경우에는, 삼차원 데이터 복호 장치는, 결합된 복수 프레임 중 단일의 프레임을 복호하는 것으로 결정해도 된다.
단일의 프레임을 복호하는 경우(S5432에서 Yes), 삼차원 데이터 복호 장치는, 복호한 개별 정보로부터 지정된 단일의 프레임 인덱스에 대응하는 개별 정보를 추출하고, 추출한 개별 정보를 복호함으로써, 지정된 프레임 인덱스에 대응하는 프레임의 점군 데이터를 복원한다(S5433).
한편, 복수 프레임을 복호하는 경우(S5432에서 No), 삼차원 데이터 복호 장치는, 지정된 복수의 프레임(또는 모든 프레임)의 프레임 인덱스에 대응하는 개별 정보를 추출하고, 추출한 개별 정보를 복호함으로써, 지정된 복수 프레임의 점군 데이터를 복원한다(S5434). 다음에, 삼차원 데이터 복호 장치는, 프레임 인덱스에 의거하여, 복호한 점군 데이터(개별 정보)를 분할한다(S5435). 즉, 삼차원 데이터 복호 장치는, 복호한 점군 데이터를 복수 프레임으로 분할한다.
또한, 삼차원 데이터 복호 장치는, 결합된 모든 프레임의 데이터를 일괄적으로 복호하고, 복호한 데이터를 각 프레임으로 분할해도 되고, 결합된 모든 프레임 중, 임의의 일부의 프레임을 일괄적으로 복호하고, 복호한 데이터를 각 프레임으로 분할해도 된다. 또한, 삼차원 데이터 복호 장치는, 복수 프레임으로 이루어지는 미리 정해진 단위 프레임을 단독으로 복호해도 된다.
이하, 본 실시 형태에 따른 삼차원 데이터 부호화 장치의 구성을 설명한다. 도 42는, 본 실시 형태에 따른 삼차원 데이터 부호화 장치에 포함되는 부호화부(5410)의 구성을 나타내는 블럭도이다. 부호화부(5410)는, 점군 데이터(포인트 클라우드)를 부호화함으로써 부호화 데이터(부호화 스트림)를 생성한다. 이 부호화부(5410)는, 분할부(5411), 복수의 위치 정보 부호화부(5412), 복수의 속성 정보 부호화부(5413), 부가 정보 부호화부(5414), 다중화부(5415)를 포함한다.
분할부(5411)는, 복수 프레임의 점군 데이터를 분할함으로써 복수 프레임의 복수의 분할 데이터를 생성한다. 구체적으로는, 분할부(5411)는, 각 프레임의 점군 데이터의 공간을 복수의 서브 공간으로 분할함으로써 복수의 분할 데이터를 생성한다. 여기서 서브 공간이란, 타일 및 슬라이스 중 한쪽, 또는 타일 및 슬라이스의 조합이다. 보다 구체적으로는, 점군 데이터는, 위치 정보, 속성 정보(색 또는 반사율 등), 및 부가 정보를 포함한다. 또한, 분할부(5411)에는, 프레임 번호가 입력된다. 분할부(5411)는, 각 프레임의 위치 정보를 복수의 분할 위치 정보로 분할하고, 각 프레임의 속성 정보를 복수의 분할 속성 정보로 분할한다. 또한, 분할부(5411)는, 분할에 관한 부가 정보를 생성한다.
예를 들면, 분할부(5411)는, 우선, 점군을 타일로 분할한다. 다음에, 분할부(5411)는, 얻어진 타일을, 또한 슬라이스로 분할한다.
복수의 위치 정보 부호화부(5412)는, 복수의 분할 위치 정보를 부호화함으로써 복수의 부호화 위치 정보를 생성한다. 예를 들면, 위치 정보 부호화부(5412)는, 8진 트리 등의 N진 트리 구조를 사용하여 분할 위치 정보를 부호화한다. 구체적으로는, 8진 트리에서는, 대상 공간이 8개의 노드(서브 공간)로 분할되고, 각 노드에 점군이 포함되는지의 여부를 나타내는 8비트의 정보(어큐펀시 부호)가 생성된다. 또한, 점군이 포함되는 노드는, 더 8개의 노드로 분할되고, 당해 8개의 노드의 각각에 점군이 포함되는지의 여부를 나타내는 8비트의 정보가 생성된다. 이 처리가, 미리 정해진 계층 또는 노드에 포함되는 점군의 수의 역치 이하가 될 때까지 반복된다. 예를 들면, 복수의 위치 정보 부호화부(5412)는, 복수의 분할 위치 정보를 병렬 처리한다.
속성 정보 부호화부(4632)는, 위치 정보 부호화부(4631)에서 생성된 구성 정보를 사용하여 부호화함으로써 부호화 데이터인 부호화 속성 정보를 생성한다. 예를 들면, 속성 정보 부호화부(4632)는, 위치 정보 부호화부(4631)에서 생성된 8진 트리 구조에 의거하여, 처리 대상의 대상점(대상 노드)의 부호화에 있어서 참조할 참조점(참조 노드)을 결정한다. 예를 들면, 속성 정보 부호화부(4632)는, 주변 노드 또는 인접 노드 중, 8진 트리에 있어서의 부모 노드가 대상 노드와 동일한 노드를 참조한다. 또한, 참조 관계의 결정 방법은 이에 한정하지 않는다.
또한, 위치 정보 또는 속성 정보의 부호화 처리는, 양자화 처리, 예측 처리, 및 산술 부호화 처리 중 적어도 하나를 포함해도 된다. 이 경우, 참조란, 속성 정보의 예측값의 산출에 참조 노드를 사용하는 것, 또는, 부호화의 파라미터의 결정에 참조 노드의 상태(예를 들면, 참조 노드에 점군이 포함되는지의 여부를 나타내는 점유 정보)를 사용하는 것이다. 예를 들면, 부호화의 파라미터란, 양자화 처리에 있어서의 양자화 파라미터, 또는 산술 부호화에 있어서의 콘텍스트 등이다.
복수의 속성 정보 부호화부(5413)는, 복수의 분할 속성 정보를 부호화함으로써 복수의 부호화 속성 정보를 생성한다. 예를 들면, 복수의 속성 정보 부호화부(5413)는, 복수의 분할 속성 정보를 병렬 처리한다.
부가 정보 부호화부(5414)는, 점군 데이터에 포함되는 부가 정보와, 분할부(5411)에서 분할 시에 생성된, 데이터 분할에 관한 부가 정보를 부호화함으로써 부호화 부가 정보를 생성한다.
다중화부(5415)는, 복수 프레임의, 복수의 부호화 위치 정보, 복수의 부호화 속성 정보 및 부호화 부가 정보를 다중화함으로써 부호화 데이터(부호화 스트림)를 생성하고, 생성한 부호화 데이터를 송출한다. 또한, 부호화 부가 정보는 복호 시에 사용된다.
도 43은, 분할부(5411)의 블럭도이다. 분할부(5411)는, 타일 분할부(5421)와 슬라이스 분할부(5422)를 포함한다.
타일 분할부(5421)는, 복수 프레임의 위치 정보(Position(Geometry))의 각각을 타일로 분할함으로써 복수의 타일 위치 정보를 생성한다. 또한, 타일 분할부(5421)는, 복수 프레임의 속성 정보(Attribute)의 각각을 타일로 분할함으로써 복수의 타일 속성 정보를 생성한다. 또한, 타일 분할부(5421)는, 타일 분할에 관련된 정보, 및 타일 분할에서 생성된 정보를 포함하는 타일 부가 정보(Tile MetaData)를 출력한다.
슬라이스 분할부(5422)는, 복수의 타일 위치 정보를 슬라이스로 분할함으로써 복수의 분할 위치 정보(복수의 슬라이스 위치 정보)를 생성한다. 또한, 슬라이스 분할부(5422)는, 복수의 타일 속성 정보를 슬라이스로 분할함으로써 복수의 분할 속성 정보(복수의 슬라이스 속성 정보)를 생성한다. 또한, 슬라이스 분할부(5422)는, 슬라이스 분할에 관련된 정보, 및 슬라이스 분할에서 생성된 정보를 포함하는 슬라이스 부가 정보(Slice MetaData)를 출력한다.
또한, 분할부(5411)는, 분할 처리에 있어서, 원점 좌표 및 속성 정보 등을 나타내기 위해서, 프레임 번호(프레임 인덱스)를 사용한다.
도 44는, 위치 정보 부호화부(5412)의 블럭도이다. 위치 정보 부호화부(5412)는, 프레임 인덱스 생성부(5431)와 엔트로피 부호화부(5432)를 포함한다.
프레임 인덱스 생성부(5431)는, 프레임 번호에 의거하여 프레임 인덱스의 값을 결정하고, 결정한 프레임 인덱스를 위치 정보에 부가한다. 엔트로피 부호화부(5432)는, 프레임 인덱스가 부가된 분할 위치 정보를 엔트로피 부호화함으로써 부호화 위치 정보를 생성한다.
도 45는, 속성 정보 부호화부(5413)의 블럭도이다. 속성 정보 부호화부(5413)는, 프레임 인덱스 생성부(5441)와 엔트로피 부호화부(5442)를 포함한다.
프레임 인덱스 생성부(5441)는, 프레임 번호에 의거하여 프레임 인덱스의 값을 결정하고, 결정한 프레임 인덱스를 속성 정보에 부가한다. 엔트로피 부호화부(5442)는, 프레임 인덱스가 부가된 분할 속성 정보를 엔트로피 부호화함으로써 부호화 속성 정보를 생성한다.
다음에, 본 실시 형태에 따른 점군 데이터의 부호화 처리 및 복호 처리의 흐름에 대해서 설명한다. 도 46은, 본 실시 형태에 따른 점군 데이터의 부호화 처리의 플로차트이다.
우선, 삼차원 데이터 부호화 장치는, 사용할 분할 방법을 결정한다(S5441). 이 분할 방법은, 슬라이스 분할을 행하는지의 여부, 타일 분할을 행하는지의 여부를 포함한다. 또한, 분할 방법은, 슬라이스 분할 또는 타일 분할을 행하는 경우의 분할 수, 및, 분할의 종별 등을 포함해도 된다.
타일 분할이 행해지는 경우(S5442에서 Yes), 삼차원 데이터 부호화 장치는, 위치 정보와 속성 정보를 분할함으로써 복수의 타일 위치 정보 및 복수의 타일 속성 정보를 생성한다(S5443). 또한, 삼차원 데이터 부호화 장치는, 타일 분할에 관련된 타일 부가 정보를 생성한다.
슬라이스 분할이 행해지는 경우(S5444에서 Yes), 삼차원 데이터 부호화 장치는, 복수의 타일 위치 정보 및 복수의 타일 속성 정보(또는 위치 정보 및 속성 정보)를 분할함으로써 복수의 분할 위치 정보 및 복수의 분할 속성 정보를 생성한다(S5445). 또한, 삼차원 데이터 부호화 장치는, 슬라이스 분할에 관련된 슬라이스 부가 정보를 생성한다.
다음에, 삼차원 데이터 부호화 장치는, 복수의 분할 위치 정보 및 복수의 분할 속성 정보의 각각을 프레임 인덱스와 부호화함으로써, 복수의 부호화 위치 정보 및 복수의 부호화 속성 정보를 생성한다(S5446). 또한, 삼차원 데이터 부호화 장치는, 의존 관계 정보를 생성한다.
다음에, 삼차원 데이터 부호화 장치는, 복수의 부호화 위치 정보, 복수의 부호화 속성 정보 및 부가 정보를 NAL 유닛화(다중화)함으로써 부호화 데이터(부호화 스트림)를 생성한다(S5447). 또한, 삼차원 데이터 부호화 장치는, 생성한 부호화 데이터를 송출한다.
도 47은, 부호화 처리(S5446)의 플로차트이다. 우선, 삼차원 데이터 부호화 장치는, 분할 위치 정보를 부호화한다(S5451). 다음에, 삼차원 데이터 부호화 장치는, 분할 위치 정보용 프레임 인덱스를 부호화한다(S5452).
분할 속성 정보가 존재하는 경우(S5453에서 Yes), 삼차원 데이터 부호화 장치는, 분할 속성 정보를 부호화하고(S5454), 분할 속성 정보용 프레임 인덱스를 부호화한다(S5455). 한편, 분할 속성 정보가 존재하지 않는 경우(S5453에서 No), 삼차원 데이터 부호화 장치는, 분할 속성 정보의 부호화, 및 분할 속성 정보용 프레임 인덱스의 부호화를 행하지 않는다. 또한, 프레임 인덱스는 분할 위치 정보와 분할 속성 정보 중 어느 한쪽 또는 양쪽 모두에 저장되어도 된다.
또한, 삼차원 데이터 부호화 장치는, 속성 정보를, 프레임 인덱스를 사용하여 부호화해도 되고, 프레임 인덱스를 사용하지 않고 부호화해도 된다. 즉, 삼차원 데이터 부호화 장치는, 프레임 인덱스를 사용하여, 각각의 점이 속하는 프레임을 식별하고, 프레임마다 부호화해도 되고, 프레임을 식별하지 않고, 모든 프레임에 속하는 점을 부호화해도 된다.
이하, 본 실시 형태에 따른 삼차원 데이터 복호 장치의 구성을 설명한다. 도 48은, 복호부(5450)의 구성을 나타내는 블럭도이다. 복호부(5450)는, 점군 데이터가 부호화됨으로써 생성된 부호화 데이터(부호화 스트림)를 복호함으로써 점군 데이터를 복원한다. 이 복호부(5450)는, 역다중화부(5451), 복수의 위치 정보 복호부(5452), 복수의 속성 정보 복호부(5453), 부가 정보 복호부(5454), 결합부(5455)를 포함한다.
역다중화부(5451)는, 부호화 데이터(부호화 스트림)를 역다중화함으로써 복수의 부호화 위치 정보, 복수의 부호화 속성 정보 및 부호화 부가 정보를 생성한다.
복수의 위치 정보 복호부(5452)는, 복수의 부호화 위치 정보를 복호함으로써 복수의 분할 위치 정보를 생성한다. 예를 들면, 복수의 위치 정보 복호부(5452)는, 복수의 부호화 위치 정보를 병렬 처리한다.
복수의 속성 정보 복호부(5453)는, 복수의 부호화 속성 정보를 복호함으로써 복수의 분할 속성 정보를 생성한다. 예를 들면, 복수의 속성 정보 복호부(5453)는, 복수의 부호화 속성 정보를 병렬 처리한다.
복수의 부가 정보 복호부(5454)는, 부호화 부가 정보를 복호함으로써 부가 정보를 생성한다.
결합부(5455)는, 부가 정보를 사용하여 복수의 분할 위치 정보를 결합함으로써 위치 정보를 생성한다. 결합부(5455)는, 부가 정보를 사용하여 복수의 분할 속성 정보를 결합함으로써 속성 정보를 생성한다. 또한, 결합부(5455)는, 프레임 인덱스를 사용하여 위치 정보 및 속성 정보를 복수 프레임의 위치 정보 및 복수 프레임의 속성 정보로 분할한다.
도 49는, 위치 정보 복호부(5452)의 블럭도이다. 위치 정보 복호부(5452)는, 엔트로피 복호부(5461)와 프레임 인덱스 취득부(5462)를 포함한다. 엔트로피 복호부(5461)는, 부호화 위치 정보를 엔트로피 복호함으로써 분할 위치 정보를 생성한다. 프레임 인덱스 취득부(5462)는, 분할 위치 정보로부터 프레임 인덱스를 취득한다.
도 50은, 속성 정보 복호부(5453)의 블럭도이다. 속성 정보 복호부(5453)는, 엔트로피 복호부(5471)와 프레임 인덱스 취득부(5472)를 포함한다. 엔트로피 복호부(5471)는, 부호화 속성 정보를 엔트로피 복호함으로써 분할 속성 정보를 생성한다. 프레임 인덱스 취득부(5472)는, 분할 속성 정보로부터 프레임 인덱스를 취득한다.
도 51은, 결합부(5455)의 구성을 나타내는 도면이다. 결합부(5455)는, 복수의 분할 위치 정보를 결합함으로써 위치 정보를 생성한다. 결합부(5455)는, 복수의 분할 속성 정보를 결합함으로써 속성 정보를 생성한다. 또한, 결합부(5455)는, 프레임 인덱스를 사용하여 위치 정보 및 속성 정보를 복수 프레임의 위치 정보 및 복수 프레임의 속성 정보로 분할한다.
도 52는, 본 실시 형태에 따른 점군 데이터의 복호 처리의 플로차트이다. 우선, 삼차원 데이터 복호 장치는, 부호화 데이터(부호화 스트림)에 포함되는, 분할 방법에 관련된 부가 정보(슬라이스 부가 정보, 및 타일 부가 정보)를 해석함으로써, 분할 방법을 판정한다(S5461). 이 분할 방법은, 슬라이스 분할을 행하는지의 여부, 타일 분할을 행하는지의 여부를 포함한다. 또한, 분할 방법은, 슬라이스 분할 또는 타일 분할을 행하는 경우의 분할 수, 및, 분할의 종별 등을 포함해도 된다.
다음에, 삼차원 데이터 복호 장치는, 부호화 데이터에 포함되는 복수의 부호화 위치 정보 및 복수의 부호화 속성 정보를, 부호화 데이터에 포함되는 의존 관계 정보를 사용하여 복호함으로써 분할 위치 정보 및 분할 속성 정보를 생성한다(S5462).
부가 정보에 의해 슬라이스 분할이 행해져 있는 것이 나타내어지는 경우(S5463에서 Yes), 삼차원 데이터 복호 장치는, 슬라이스 부가 정보에 의거하여, 복수의 분할 위치 정보를 결합함으로써 복수의 타일 위치 정보를 생성하고, 복수의 분할 속성 정보를 결합함으로써 복수의 타일 속성 정보를 생성한다(S5464). 여기서, 복수의 분할 위치 정보, 복수의 분할 속성 정보, 복수의 타일 위치 정보, 및 복수의 타일 속성 정보는, 프레임 인덱스를 포함한다.
부가 정보에 의해 타일 분할이 행해져 있는 것이 나타내어지는 경우(S5465에서 Yes), 삼차원 데이터 복호 장치는, 타일 부가 정보에 의거하여, 복수의 타일 위치 정보(복수의 분할 위치 정보)를 결합함으로써 위치 정보를 생성하고, 복수의 타일 속성 정보(복수의 분할 속성 정보)를 결합함으로써 속성 정보를 생성한다(S5466). 여기서, 복수의 타일 위치 정보, 복수의 타일 속성 정보, 위치 정보 및 속성 정보는, 프레임 인덱스를 포함한다.
도 53은, 복호 처리(S5464 또는 S5466)의 플로차트이다. 우선, 삼차원 데이터 복호 장치는, 분할 위치 정보(슬라이스 위치 정보)를 복호한다(S5471). 다음에, 삼차원 데이터 복호 장치는, 분할 위치 정보용 프레임 인덱스를 복호한다(S5472).
분할 속성 정보가 존재하는 경우(S5473에서 Yes), 삼차원 데이터 복호 장치는, 분할 속성 정보를 복호하고(S5474), 분할 속성 정보용 프레임 인덱스를 복호한다(S5475). 한편, 분할 속성 정보가 존재하지 않는 경우(S5473에서 No), 삼차원 데이터 복호 장치는, 분할 속성 정보의 복호, 및 분할 속성 정보용 프레임 인덱스의 복호를 행하지 않는다.
또한, 삼차원 데이터 복호 장치는, 속성 정보를, 프레임 인덱스를 사용하여 복호해도 되고, 프레임 인덱스를 사용하지 않고 복호해도 된다.
이하, 프레임 결합에 있어서의 부호화 단위에 대해서 설명한다. 도 54는, 프레임의 결합 패턴의 예를 나타내는 도면이다. 동 도면의 예는, 예를 들면, PCC 프레임이 시계열이고, 실시간으로 데이터의 생성 및 부호화가 행해지는 경우의 예이다.
도 54의 (a)는, 고정적으로 4프레임을 결합하는 경우를 나타내고 있다. 삼차원 데이터 부호화 장치는, 4프레임분의 데이터의 생성을 기다리고 나서 부호화 데이터를 생성한다.
도 54의 (b)는, 적응적으로 프레임 수가 변화하는 경우를 나타내고 있다. 예를 들면, 삼차원 데이터 부호화 장치는, 레이트 제어에 있어서 부호화 데이터의 부호량을 조정하기 위해서 결합 프레임 수를 변화시킨다.
또한, 삼차원 데이터 부호화 장치는, 프레임 결합에 의한 효과가 없을 가능성이 있는 경우는, 프레임을 결합하지 않아도 된다. 또한, 삼차원 데이터 부호화 장치는, 프레임 결합하는 경우와 프레임 결합하지 않는 경우를 전환해도 된다.
도 54의 (c)는, 결합하는 복수의 프레임의 일부가 다음에 결합하는 복수의 프레임의 일부와 중복되는 경우의 예이다. 이 예는, 부호화된 것부터 순차적으로 송출하는 등, 실시간성, 또는 저지연이 요구되는 경우에 유용하다.
도 55는, PCC 프레임의 구성예를 나타내는 도면이다. 삼차원 데이터 부호화 장치는, 결합하는 프레임을, 적어도 단독으로 복호할 수 있는 데이터 단위를 포함하도록 구성해도 된다. 예를 들면, 도 55의 (a)에 나타내는 바와 같이, PCC 프레임이 모두 인트라 부호화되어 있고, PCC 프레임을 단독으로 복호 가능한 경우에는, 상기 중 어느 패턴도 적용 가능하다.
또한, 도 55의 (b)에 나타내는 바와 같이, 인터 예측이 적용되어 있는 경우 등에 있어서 GOF(그룹 오브 프레임) 등의 랜덤 액세스 단위가 설정되는 경우는, 삼차원 데이터 부호화 장치는, 그 GOF 단위를 최소 단위로 하여, 데이터를 결합해도 된다.
또한, 삼차원 데이터 부호화 장치는, 공통 정보와 개별 정보를 일괄적으로 부호화해도 되고, 각각을 따로 부호화해도 된다. 또한, 삼차원 데이터 부호화 장치는, 공통 정보와 개별 정보에 공통의 데이터 구조를 사용해도 되고 다른 데이터 구조를 사용해도 된다.
또한, 삼차원 데이터 부호화 장치는, 프레임마다 어큐펀시 부호를 생성한 후에, 복수 프레임의 어큐펀시 부호를 비교하고, 예를 들면, 소정의 기준으로 복수 프레임의 어큐펀시 부호간에 공통 부분이 많은지의 여부를 판정하고, 공통 부분이 많은 경우에 공통 정보를 생성해도 된다. 혹은, 삼차원 데이터 부호화 장치는, 공통 부분이 많은지의 여부에 의거하여, 프레임 결합할지의 여부, 어느 프레임을 결합할지, 또는 결합 프레임 수를 결정해도 된다.
다음에, 부호화 위치 정보의 구성을 설명한다. 도 56은, 부호화 위치 정보의 구성을 나타내는 도면이다. 부호화 위치 정보는, 헤더와 페이로드를 포함한다.
도 57은, 부호화 위치 정보의 헤더(Geometry_header)의 신택스예를 나타내는 도면이다. 부호화 위치 정보의 헤더는, GPS 인덱스(gps_idx), 오프셋 정보(offset), 그 외의 정보(other_geometry_information), 프레임 결합 플래그(combine_frame_flag), 결합 프레임 수(number_of_combine_frame)를 포함한다.
GPS 인덱스는, 부호화 위치 정보에 대응하는 파라미터 세트(GPS)의 식별자(ID)를 나타낸다. GPS는, 1 프레임 또는 복수의 프레임의 부호화 위치 정보의 파라미터 세트이다. 또한, 1 프레임마다 파라미터 세트가 존재하는 경우는, 복수의 파라미터 세트의 식별자가 헤더에 나타내어져도 된다.
오프셋 정보는, 결합 데이터를 취득하기 위한 오프셋 위치를 나타낸다. 그 외의 정보는, 위치 정보에 관한 그 외의 정보(예를 들면, 양자화 파라미터의 차분값(QPdelta) 등)를 나타낸다. 프레임 결합 플래그는, 부호화 데이터가 프레임 결합되어 있는지의 여부를 나타내는 플래그이다. 결합 프레임 수는, 결합되어 있는 프레임의 수를 나타낸다.
또한, 상기의 정보의 일부 또는 전부가 SPS 또는 GPS에 기재되어도 된다. 또한, SPS란, 시퀀스(복수 프레임) 단위의 파라미터 세트이고, 부호화 위치 정보와 부호화 속성 정보에 공통으로 사용되는 파라미터 세트이다.
도 58은, 부호화 위치 정보의 페이로드(Geometry_data)의 신택스예를 나타내는 도면이다. 부호화 위치 정보의 페이로드는, 공통 정보와 리프 노드 정보를 포함한다.
공통 정보는, 1 이상의 프레임 결합한 데이터이며, 어큐펀시 부호(occupancy_Code) 등을 포함한다.
리프 노드 정보(combine_information)는, 각 리프 노드의 정보이다. 프레임 수의 루프로서, 프레임마다 리프 노드 정보가 나타내어져도 된다.
리프 노드에 포함되는 점의 프레임 인덱스를 나타내는 방법으로서는, 방법 1과 방법 2 중 어느 하나를 사용할 수 있다. 도 59는, 방법 1의 경우의 리프 노드 정보의 예를 나타내는 도면이다. 도 59에 나타내는 리프 노드 정보는, 노드에 포함되는 점의 수를 나타내는 삼차원점 수(NumberOfPoints)와, 점마다의 프레임 인덱스(FrameIndex)를 포함한다.
도 60은, 방법 2의 경우의 리프 노드 정보의 예를 나타내는 도면이다. 도 60에 나타내는 예에서는, 리프 노드 정보는, 비트 맵에 의해 복수의 점의 프레임 인덱스를 나타내는 비트 맵 정보(bitmapIsFramePointsFlag)를 포함한다. 도 61은, 비트 맵 정보의 예를 나타내는 도면이다. 이 예에서는, 비트 맵에 의해, 리프 노드가 프레임 인덱스 1과 3과 5의 삼차원점을 포함하는 것이 나타내어진다.
또한, 양자화의 분해능이 낮은 경우는, 동일 프레임에 중복점이 존재하는 경우가 있다. 이 경우, 삼차원점 수(NumberOfPoints)를 공유화하고, 각 프레임의 삼차원점의 수와 복수 프레임의 합계 삼차원점의 수가 나타내어져도 된다.
또한, 불가역 압축이 사용되는 경우, 삼차원 데이터 부호화 장치는, 중복점을 삭제하여, 정보량을 삭감해도 된다. 삼차원 데이터 부호화 장치는, 프레임 결합 전에 중복점을 삭제해도 되고, 프레임 결합 후에 중복점을 삭제해도 된다.
다음에, 부호화 속성 정보의 구성을 설명한다. 도 62는, 부호화 속성 정보의 구성을 나타내는 도면이다. 부호화 속성 정보는, 헤더와 페이로드를 포함한다.
도 63은, 부호화 속성 정보의 헤더(Attribute_header)의 신택스예를 나타내는 도면이다. 부호화 속성 정보의 헤더는, APS 인덱스(aps_idx), 오프셋 정보(offset), 그 외의 정보(other_attribute_information), 프레임 결합 플래그(combine_frame_flag), 결합 프레임 수(number_of_combine_frame)를 포함한다.
APS 인덱스는, 부호화 속성 정보에 대응하는 파라미터 세트(APS)의 식별자(ID)를 나타낸다. APS는, 1 프레임 또는 복수의 프레임의 부호화 속성 정보의 파라미터 세트이다. 또한, 1 프레임마다 파라미터 세트가 존재하는 경우는, 복수의 파라미터 세트의 식별자가 헤더에 나타내어져도 된다.
오프셋 정보는, 결합 데이터를 취득하기 위한 오프셋 위치를 나타낸다. 그 외의 정보는, 속성 정보에 관한 그 외의 정보(예를 들면, 양자화 파라미터의 차분값(QPdelta) 등)를 나타낸다. 프레임 결합 플래그는, 부호화 데이터가 프레임 결합되어 있는지의 여부를 나타내는 플래그이다. 결합 프레임 수는, 결합되어 있는 프레임의 수를 나타낸다.
또한, 상기의 정보의 일부 또는 전부가 SPS 또는 APS에 기재되어도 된다.
도 64는, 부호화 속성 정보의 페이로드(Attribute_data)의 신택스예를 나타내는 도면이다. 부호화 속성 정보의 페이로드는, 리프 노드 정보(combine_information)를 포함한다. 예를 들면, 이 리프 노드 정보의 구성은, 부호화 위치 정보의 페이로드에 포함되는 리프 노드 정보와 동일하다. 즉, 리프 노드 정보(프레임 인덱스)는, 속성 정보에 포함되어도 된다.
또한, 리프 노드 정보(프레임 인덱스)는, 부호화 위치 정보와 부호화 속성 정보 중 한쪽에 저장되고, 다른쪽에 저장되지 않아도 된다. 이 경우, 부호화 위치 정보와 부호화 속성 정보 중 한쪽에 저장되어 있는 리프 노드 정보(프레임 인덱스)가 다른쪽의 정보의 복호 시에 참조된다. 또한, 참조처를 나타내는 정보가 부호화 위치 정보 또는 부호화 속성 정보에 포함되어도 된다.
다음에, 부호화 데이터의 송출 순서 및 복호 순서의 예를 설명한다. 도 65는, 부호화 데이터의 구성을 나타내는 도면이다. 부호화 데이터는 헤더와 페이로드를 포함한다.
도 66~도 68은, 데이터의 송출 순서와, 데이터의 참조 관계를 나타내는 도면이다. 동 도면에 있어서, G(1) 등은, 부호화 위치 정보를 나타내고, GPS(1) 등은, 부호화 위치 정보의 파라미터 세트를 나타내고, SPS는, 시퀀스(복수 프레임)의 파라미터 세트를 나타낸다. 또한, () 안의 숫자는 프레임 인덱스의 값을 나타낸다. 또한, 삼차원 데이터 부호화 장치는, 데이터를 복호순으로 송출해도 된다.
도 66은 프레임을 결합하지 않는 경우의 송출 순서의 예를 나타내는 도면이다. 도 67은 프레임을 결합하는 경우이며, PCC 프레임마다 메타 데이터(파라미터 세트)가 부가되는 경우의 예를 나타내는 도면이다. 도 68은 프레임을 결합하는 경우이며, 결합하는 단위로 메타 데이터(파라미터 세트)가 부가되는 경우의 예를 나타내는 도면이다.
프레임 결합된 데이터의 헤더에는, 당해 프레임의 메타 데이터를 얻기 위해서, 참조처의 메타 데이터의 식별자가 저장된다. 도 68과 같이, 복수 프레임마다의 메타 데이터를 통합해도 된다. 프레임 결합된 복수의 프레임에 공통인 파라미터는 하나로 통합해도 된다. 프레임에 공통이 아닌 파라미터는 각 프레임에 대한 값을 나타낸다.
프레임마다의 정보(프레임에서 공통이 아닌 파라미터)란, 예를 들면, 프레임 데이터의 생성 시각, 부호화 시각, 또는 복호 시각 등을 나타내는 타임 스탬프이다. 또한, 프레임마다의 정보는, 프레임 데이터를 취득한 센서의 정보(센서의 스피드, 가속도, 위치 정보, 센서의 방향, 그 외의 센서 정보 등)를 포함해도 된다.
도 69는, 도 67에 나타내는 예에 있어서, 일부의 프레임을 복호하는 예를 나타내는 도면이다. 도 69에 나타내는 바와 같이, 프레임 결합 데이터 내에서, 프레임간에 의존 관계가 없으면, 삼차원 데이터 복호 장치는, 각 데이터를 독립적으로 복호할 수 있다.
점군 데이터가 속성 정보를 갖는 경우, 삼차원 데이터 부호화 장치는, 속성 정보를 프레임 결합해도 된다. 속성 정보는, 위치 정보를 참조하여 부호화 및 복호된다. 참조되는 위치 정보는, 프레임 결합하기 전의 위치 정보여도 되고, 프레임 결합한 후의 위치 정보여도 된다. 위치 정보의 결합 프레임 수와 속성 정보의 결합 프레임 수는 공통(동일)이어도 되고, 독립되어 있어(상이)도 된다.
도 70~도 73은, 데이터의 송출 순서와, 데이터의 참조 관계를 나타내는 도면이다. 도 70 및 도 71은, 위치 정보와 속성 정보를 모두 4프레임에서 결합하는 예를 나타낸다. 도 70에서는, PCC 프레임마다 메타 데이터(파라미터 세트)가 부가된다. 도 71에서는, 결합하는 단위로 메타 데이터(파라미터 세트)가 부가된다. 동 도면에 있어서, A(1) 등은, 부호화 속성 정보를 나타내고, APS(1) 등은, 부호화 속성 정보의 파라미터 세트를 나타낸다. 또한, () 안의 숫자는 프레임 인덱스의 값을 나타낸다.
도 72는, 위치 정보를 4프레임에서 결합하고, 속성 정보를 결합하지 않는 예를 나타낸다. 도 72에 나타내는 바와 같이 위치 정보를 프레임 결합하고, 속성 정보를 프레임 결합하지 않아도 된다.
도 73은, 프레임 결합과 타일 분할을 조합한 예를 나타낸다. 도 73에 나타내는 바와 같이 타일 분할을 행하는 경우에는, 각 타일 위치 정보의 헤더는, GPS 인덱스(gps_idx), 및 결합 프레임 수(number_of_combine_frame) 등의 정보를 포함한다. 또한, 각 타일 위치 정보의 헤더는, 타일을 식별하기 위한 타일 인덱스(tile_idx)를 포함한다.
이상과 같이, 본 실시 형태에 따른 삼차원 데이터 부호화 장치는, 도 74에 나타내는 처리를 행한다. 우선, 삼차원 데이터 부호화 장치는, 제1 점군 데이터와 제2 점군 데이터를 결합함으로써 제3 점군 데이터를 생성한다(S5481). 다음에, 삼차원 데이터 부호화 장치는, 제3 점군 데이터를 부호화함으로써 부호화 데이터를 생성한다(S5482). 또한, 부호화 데이터는, 제3 점군 데이터에 포함되는 복수의 삼차원점의 각각이 제1 점군 데이터와 제2 점군 데이터 중 어디에 속하는지를 나타내는 식별 정보(예를 들면 프레임 인덱스)를 포함한다.
이에 의하면, 삼차원 데이터 부호화 장치는, 복수의 점군 데이터를 묶어서 부호화함으로써 부호화 효율을 향상시킬 수 있다.
예를 들면, 제1 점군 데이터와 제2 점군 데이터는, 상이한 시각의 점군 데이터(예를 들면 PCC 프레임)이다. 예를 들면, 제1 점군 데이터와 제2 점군 데이터는, 동일한 대상물의 상이한 시각의 점군 데이터(예를 들면 PCC 프레임)이다.
부호화 데이터는, 제3 점군 데이터에 포함되는 복수의 삼차원점의 각각의 위치 정보와 속성 정보를 포함하고, 식별 정보는, 속성 정보에 포함된다.
예를 들면, 부호화 데이터는, 제3 점군 데이터에 포함되는 복수의 삼차원점의 각각의 위치를 N(N은 2 이상의 정수)진 트리를 사용하여 나타낸 위치 정보(예를 들면 어큐펀시 부호)를 포함한다.
예를 들면, 삼차원 데이터 부호화 장치는, 프로세서와 메모리를 구비하고, 프로세서는, 메모리를 사용하여, 상기의 처리를 행한다.
또한, 본 실시 형태에 따른 삼차원 데이터 복호 장치는, 도 75에 나타내는 처리를 행한다. 우선, 삼차원 데이터 복호 장치는, 부호화 데이터를 복호함으로써, 제1 점군 데이터와 제2 점군 데이터가 결합됨으로써 생성된 제3 점군 데이터와, 제3 점군 데이터에 포함되는 복수의 삼차원점의 각각이 제1 점군 데이터와 제2 점군 데이터 중 어디에 속하는지를 나타내는 식별 정보를 취득한다(S5491). 다음에, 삼차원 데이터 복호 장치는, 식별 정보를 사용하여, 제3 점군 데이터로부터 제1 점군 데이터와 제2 점군 데이터를 분리한다(S5492).
이에 의하면, 삼차원 데이터 복호 장치는, 복수의 점군 데이터를 묶어서 부호화함으로써 부호화 효율을 향상시킨 부호화 데이터를 복호할 수 있다.
예를 들면, 제1 점군 데이터와 제2 점군 데이터는, 상이한 시각의 점군 데이터(예를 들면 PCC 프레임)이다. 예를 들면, 제1 점군 데이터와 제2 점군 데이터는, 동일한 대상물의 상이한 시각의 점군 데이터(예를 들면 PCC 프레임)이다.
부호화 데이터는, 제3 점군 데이터에 포함되는 복수의 삼차원점의 각각의 위치 정보와 속성 정보를 포함하고, 식별 정보는, 속성 정보에 포함된다.
예를 들면, 부호화 데이터는, 제3 점군 데이터에 포함되는 복수의 삼차원점의 각각의 위치를 N(N은 2 이상의 정수)진 트리를 사용하여 나타낸 위치 정보(예를 들면 어큐펀시 부호)를 포함한다.
예를 들면, 삼차원 데이터 복호 장치는, 프로세서와 메모리를 구비하고, 프로세서는, 메모리를 사용하여, 상기의 처리를 행한다.
(실시 형태 6)
삼차원점군의 정보는, 위치 정보(geometry)와 속성 정보(attribute)를 포함한다. 위치 정보는, 어느 점을 기준으로 한 좌표(x좌표, y좌표, z좌표)를 포함한다. 위치 정보를 부호화하는 경우는, 각 삼차원점의 좌표를 직접 부호화하는 대신에, 각 삼차원점의 위치를 8진 트리 표현으로 표현하고, 8진 트리의 정보를 부호화함으로써 부호량을 삭감하는 방법이 사용된다.
한편, 속성 정보는, 각 삼차원점의 색 정보(RGB, YUV 등), 반사율, 및 법선 벡터 등을 나타내는 정보를 포함한다. 예를 들면, 삼차원 데이터 부호화 장치는, 속성 정보를, 위치 정보와는 다른 부호화 방법을 사용하여 부호화할 수 있다.
본 실시 형태에서는 위치 정보를 복수의 프레임의 복수의 점군 데이터를 결합하여 부호화할 때의 속성 정보의 부호화 방법에 대해서 설명한다. 또한, 본 실시 형태에서는 속성 정보의 값으로서 정수값을 사용하여 설명한다. 예를 들면 색 정보 RGB 또는 YUV의 각 색 성분이 8bit 정밀도인 경우, 각 색 성분은 0~255의 정수값을 취한다. 반사율의 값이 10bit 정밀도인 경우, 반사율의 값은 0~1023의 정수값을 취한다. 또한, 삼차원 데이터 부호화 장치는, 속성 정보의 비트 정밀도가 소수 정밀도인 경우, 속성 정보의 값이 정수값이 되도록, 당해 값에 스케일 값을 곱하고 나서 정수값으로 반올림해도 된다. 또한, 삼차원 데이터 부호화 장치는, 이 스케일 값을 비트 스트림의 헤더 등에 부가해도 된다.
삼차원점군의 각 위치 정보를 복수의 프레임의 점군 데이터를 결합하여 부호화한 때의 속성 정보의 부호화 방법으로서, 예를 들면, 결합 후의 위치 정보를 사용하여 각 위치 정보에 대응하는 속성 정보를 부호화하는 것을 생각할 수 있다. 여기서, 결합 후의 위치 정보는, 삼차원점군의 위치 정보와 그 삼차원점군이 속하는 frame_index(프레임 인덱스)를 포함해도 된다. 또한, 삼차원점군 중 제1 삼차원점의 속성 정보를 부호화할 때에, 제1 삼차원점이 속하는 프레임 내에 포함되는 삼차원점군의 위치 정보 또는 속성 정보뿐만 아니라, 제1 삼차원점이 속하는 프레임과는 상이한 프레임 내에 포함되는 삼차원점군의 위치 정보 또는 속성 정보를 사용하도록 해도 된다.
복수의 프레임의 각각은, 점군 데이터를 포함한다. 복수의 프레임 중 제1 프레임에 속하는 제1 점군 데이터와, 제2 프레임에 속하는 제2 점군 데이터는, 상이한 시각의 점군 데이터이다. 또한, 제1 점군 데이터와 제2 점군 데이터는, 예를 들면, 동일한 대상물의 상이한 시각의 점군 데이터이다. 제1 점군 데이터는, 제1 점군 데이터에 포함되는 삼차원점군이 제1 점군 데이터에 속하는 것을 나타내는 프레임 인덱스를 포함한다. 제2 점군 데이터는, 제2 점군 데이터에 포함되는 삼차원점군이 제2 점군 데이터에 속하는 것을 나타내는 프레임 인덱스를 포함한다. 프레임 인덱스는, 상이한 프레임에 속하는 복수의 점군 데이터가 결합된 결합 점군 데이터에 포함되는 삼차원점군이 어느 점군 데이터에 속하는지를 나타내는 식별 정보이다. 또한, 삼차원점군은, 복수의 삼차원점이라고도 한다.
삼차원점의 속성 정보의 부호화 방법으로서, 삼차원점의 속성 정보의 예측값을 산출하고, 원래의 속성 정보의 값과 예측값의 차분(예측 잔차)을 부호화하는 것을 생각할 수 있다. 예를 들면, 삼차원점 p의 속성 정보의 값이 Ap이고, 예측값이 Pp인 경우, 삼차원 데이터 부호화 장치는, 그 차분 절댓값 Diffp=|Ap-Pp|를 부호화한다. 이 경우, 예측값 Pp를 고정밀도로 생성할 수 있으면, 차분 절댓값 Diffp의 값이 작아진다. 따라서, 예를 들면, 값이 작을수록 발생 비트수가 작아지는 부호화 테이블을 사용하여 차분 절댓값 Diffp를 엔트로피 부호화함으로써 부호량을 삭감할 수 있다.
속성 정보의 예측값을 생성하는 방법으로서, 부호화 대상의 대상 삼차원점 주위에 있는 다른 삼차원점인 참조 삼차원점의 속성 정보를 사용하는 것을 생각할 수 있다. 이와 같이, 삼차원 데이터 부호화 장치는, 주위의 삼차원점의 속성 정보를 사용하여 제1 삼차원점의 속성 정보를 부호화해도 된다. 여기서, 부호화 대상의 삼차원점 주위에 있는 다른 주위 삼차원점은, 부호화 대상의 대상 삼차원점이 속하는 프레임 내에 존재해도 되고, 또한, 부호화 대상의 대상 삼차원점이 속하는 프레임과는 상이한 프레임 내에 존재해도 된다. 즉, 대상 삼차원점의 속성 정보는, 당해 대상 삼차원점이 제1 점군 데이터에 속하는 것을 나타내는 제1 프레임 인덱스를 포함하고, 주위 삼차원점의 속성 정보는, 당해 주위 삼차원점이 제2 점군 데이터에 속하는 것을 나타내는 제2 프레임 인덱스를 포함하고 있어도 된다. 이에 의해, 부호화 대상의 삼차원점이 속하는 프레임 이외의 삼차원점의 속성 정보도 참조함으로써 고정밀도의 예측값 Pp를 생성할 수 있어, 부호화 효율을 향상시킬 수 있다.
여기서 참조 삼차원점이란, 대상 삼차원점으로부터 미리 정해진 거리 범위 내에 있는 삼차원점이다. 예를 들면, 대상 삼차원점 p=(x1, y1, z1)과 삼차원점 q=(x2, y2, z2)가 존재하는 경우, 삼차원 데이터 부호화 장치는, (식 H1)에 나타내는 삼차원점 p와 삼차원점 q의 유클리드 거리 d(p, q)를 산출한다.
Figure pct00001
삼차원 데이터 부호화 장치는, 유클리드 거리 d(p, q)가 미리 정해진 역치 THd보다 작은 경우, 삼차원점 q의 위치가 대상 삼차원점 p의 위치에 가깝다고 판정하고, 대상 삼차원점 p의 속성 정보의 예측값의 생성에 삼차원점 q의 속성 정보의 값을 사용한다고 판정한다. 또한, 거리 산출 방법은 다른 방법이어도 되며, 예를 들면 마하라노비스 거리 등이 사용되어도 된다. 또한, 삼차원 데이터 부호화 장치는, 대상 삼차원점으로부터 미리 정해진 거리 범위 외의 삼차원점을 예측 처리에 사용하지 않는다고 판정해도 된다. 예를 들면, 삼차원점 r이 존재하고, 대상 삼차원 p와 삼차원점 r의 거리 d(p, r)이 역치 THd 이상인 경우, 삼차원 데이터 부호화 장치는, 삼차원점 r을 예측에 사용하지 않는다고 판정해도 된다. 또한, 삼차원 데이터 부호화 장치는, 역치 THd를 나타내는 정보를, 비트 스트림의 헤더 등에 부가해도 된다. 또한, 삼차원 데이터 부호화 장치는, 삼차원점군의 각 위치 정보를 복수의 프레임의 점군 데이터를 결합하여 부호화한 경우, 결합 후의 삼차원점군으로부터 각 삼차원점 사이의 거리를 산출해도 된다. 즉, 삼차원 데이터 부호화 장치는, 상이한 프레임에 속하는 2개의 삼차원점 사이의 거리를 산출해도 되고, 같은 프레임에 속하는 2개의 삼차원점 사이의 거리를 산출해도 된다.
도 76은, 삼차원점의 예를 나타내는 도면이다. 이 예에서는, 대상 삼차원점 p와 삼차원점 q의 거리 d(p, q)가 역치 THd보다 작다. 따라서, 삼차원 데이터 부호화 장치는, 삼차원점 q를 대상 삼차원점 p의 참조 삼차원점으로 판정하고, 대상 삼차원 p의 속성 정보 Ap의 예측값 Pp의 생성에 삼차원점 q의 속성 정보 Aq의 값을 사용한다고 판정한다.
한편, 대상 삼차원점 p와 삼차원점 r의 거리 d(p, r)은, 역치 THd 이상이다. 따라서, 삼차원 데이터 부호화 장치는, 삼차원점 r을 대상 삼차원점 p의 참조 삼차원점이 아니라고 판정하고, 대상 삼차원점 p의 속성 정보 Ap의 예측값 Pp의 생성에 삼차원점 r의 속성 정보 Ar의 값을 사용하지 않는다고 판정한다.
여기서, 삼차원점 p는, 프레임 인덱스(frame_idx=0)로 나타내어지는 프레임에 속하고, 삼차원점 q는, 프레임 인덱스(frame_idx=1)로 나타내어지는 프레임에 속하고, 삼차원점 r은, 프레임 인덱스(frame_idx=0)로 나타내어지는 프레임에 속한다. 삼차원 부호화 장치는, 같은 프레임에 속하는 것이 프레임 인덱스에 의해 나타내어져 있는 삼차원점 p 및 삼차원점 r 사이의 거리를 산출해도 되고, 상이한 프레임에 속하는 것이 프레임 인덱스에 의해 나타내어져 있는 삼차원점 p 및 삼차원점 q 사이의 거리를 산출해도 된다.
또한, 삼차원 데이터 부호화 장치는, 대상 삼차원점의 속성 정보를 예측값을 사용하여 부호화하는 경우, 이미 속성 정보를 부호화 및 복호 완료한 삼차원점을 참조 삼차원점으로서 사용한다. 마찬가지로, 삼차원 데이터 복호 장치는, 복호 대상의 대상 삼차원점의 속성 정보를 예측값을 사용하여 복호하는 경우, 이미 속성 정보를 복호 완료한 삼차원점을 참조 삼차원점으로서 사용한다. 이에 의해, 부호화 시와 복호 시에 동일한 예측값을 생성할 수 있으므로, 부호화에서 생성한 삼차원점의 비트 스트림을 복호측에서 올바르게 복호할 수 있다.
또한, 부호화 대상의 대상 삼차원점 주위에 있는 다른 주위 삼차원점은, 부호화 대상의 대상 삼차원점이 속하는 프레임 내에 존재해도 되고, 또한, 부호화 대상의 대상 삼차원점이 속하는 프레임과는 상이한 프레임 내에 존재해도 된다고 했지만, 반드시 이에 한정하지 않으며, 예를 들면, 부호화 대상의 대상 삼차원점이 속하는 프레임과는 상이한 프레임 내에 존재하는 삼차원점은, 부호화 대상의 대상 삼차원점의 주위에 없다고 판정하고, 예측값으로서 사용하지 않도록 해도 상관없다. 이에 의해, 삼차원 데이터 부호화 장치는, 예를 들면, 결합 대상의 복수의 프레임의 각 삼차원점의 속성 정보가 크게 다른 경우는, 위치 정보를 프레임 결합하여 부호화하고, 속성 정보를 동일 프레임 내의 다른 주위 삼차원점의 속성 정보를 사용하여 예측 부호화함으로써 부호화 효율을 향상시킬 수 있다. 또한, 삼차원 데이터 부호화 장치는, 프레임 결합에 의한 부호화 시에, 동일 프레임의 주위 삼차원점의 속성 정보를 사용하여 대상 삼차원점의 속성 정보를 부호화하는지, 또는, 동일 프레임 및 동일 프레임 이외의 주위 삼차원점의 속성 정보를 사용하여 대상 삼차원점의 속성 정보를 부호화하는지를 나타내는 정보를 부호화 데이터의 헤더에 부가하고, 전환하도록 해도 상관없다. 이에 의해, 삼차원 데이터 복호 장치는, 헤더를 복호함으로써, 프레임 결합에 의한 부호화 데이터의 복호 시에, 동일 프레임 또는, 동일 프레임 및 동일 프레임 이외의 주위 삼차원점의 속성 정보를 사용하여 대상 삼차원점의 속성 정보를 복호할지의 여부를 판정하고, 어느 복호로 할지를 전환할 수 있기 때문에 비트 스트림을 적절히 복호할 수 있다.
또한, 복수의 프레임을 결합한 후의 삼차원점의 속성 정보를 부호화하는 경우에, 동일 프레임 혹은 상이한 프레임에 속하는 삼차원점의 위치 정보를 사용하여 각 삼차원점을 복수 계층으로 분류하고 나서 부호화하는 것을 생각할 수 있다. 여기서, 분류한 각 계층을 LoD(Level of Detail)라고 부른다. LoD의 생성 방법에 대해서 도 77을 사용하여 설명한다.
우선, 삼차원 데이터 부호화 장치는, 결합 후의 삼차원점군으로부터 초기점 a0을 선택하고, LoD0에 할당한다. 다음에, 삼차원 데이터 부호화 장치는, 점 a0으로부터의 거리가 LoD0의 역치 Thres_LoD[0]보다 큰 점 a1을 추출하여 LoD0에 할당한다. 다음에, 삼차원 데이터 부호화 장치는, 점 a1로부터의 거리가 LoD0의 역치 Thres_LoD[0]보다 큰 점 a2를 추출하여 LoD0에 할당한다. 이와 같이, 삼차원 데이터 부호화 장치는, LoD0 내의 각 점 사이의 거리가 역치 Thres_LoD[0]보다 커지도록 LoD0을 구성한다. 또한, 삼차원 데이터 부호화 장치는, 2점의 삼차원점의 거리를, 각각이 동일 프레임 혹은 상이한 프레임에 속하는지의 여부에 상관없이, 동일한 처리로 산출해도 된다. 예를 들면, 점 a0과 점 a1은, 같은 프레임에 속해 있어도 되고, 서로 다른 프레임에 속해 있어도 된다. 이 때문에, 점 a0과 점 a1의 거리는, 같은 프레임에 속해 있어도, 서로 다른 프레임에 속해 있어도 동일한 처리로 산출된다.
다음에, 삼차원 데이터 부호화 장치는, 아직 LoD가 미할당된 점 b0을 선택하고, LoD1에 할당한다. 다음에, 삼차원 데이터 부호화 장치는, 점 b0으로부터의 거리가 LoD1의 역치 Thres_LoD[1]보다 크고, LoD가 미할당된 점 b1을 추출하여 LoD1에 할당한다. 다음에, 삼차원 데이터 부호화 장치는, 점 b1로부터의 거리가 LoD1의 역치 Thres_LoD[1]보다 크고, LoD가 미할당된 점 b2를 추출하여 LoD1에 할당한다. 이와 같이, 삼차원 데이터 부호화 장치는, LoD1 내의 각 점 사이의 거리가 역치 Thres_LoD[1]보다 커지도록 LoD1을 구성한다.
다음에, 삼차원 데이터 부호화 장치는, 아직 LoD가 미할당된 점 c0을 선택하고, LoD2에 할당한다. 다음에, 삼차원 데이터 부호화 장치는, 점 c0으로부터의 거리가 LoD2의 역치 Thres_LoD[2]보다 크고, LoD가 미할당된 점 c1을 추출하여 LoD2에 할당한다. 다음에, 삼차원 데이터 부호화 장치는, 점 c1로부터의 거리가 LoD2의 역치 Thres_LoD[2]보다 크고, LoD가 미할당된 점 c2를 추출하여 LoD2에 할당한다. 이와 같이, 삼차원 데이터 부호화 장치는, LoD2 내의 각 점 사이의 거리가 역치 Thres_LoD[2]보다 커지도록 LoD2를 구성한다. 예를 들면, 도 78에 나타내는 바와 같이, 각 LoD의 역치 Thres_LoD[0], Thres_LoD[1], 및 Thres_LoD[2]가 설정된다.
또한, 삼차원 데이터 부호화 장치는, 각 LoD의 역치를 나타내는 정보를, 비트 스트림의 헤더 등에 부가해도 된다. 예를 들면, 도 78에 나타내는 예의 경우, 삼차원 데이터 부호화 장치는, 역치 Thres_LoD[0], Thres_LoD[1], 및 Thres_LoD[2]를 헤더에 부가해도 된다.
또한, 삼차원 데이터 부호화 장치는, LoD의 최하층에 LoD가 미할당된 삼차원점 모두를 할당해도 된다. 이 경우, 삼차원 데이터 부호화 장치는, LoD의 최하층의 역치를 헤더에 부가하지 않음으로써 헤더의 부호량을 삭감할 수 있다. 예를 들면, 도 78에 나타내는 예의 경우, 삼차원 데이터 부호화 장치는, 역치 Thres_LoD[0]과 Thres_LoD[1]을 헤더에 부가하고, Thres_LoD[2]를 헤더에 부가하지 않는다. 이 경우, 삼차원 데이터 복호 장치는, Thres_LoD[2]의 값 0으로 추정해도 된다. 또한, 삼차원 데이터 부호화 장치는, LoD의 계층 수를 헤더에 부가해도 된다. 이에 의해, 삼차원 데이터 복호 장치는, LoD의 계층 수를 사용하여 최하층의 LoD를 판정할 수 있다.
또한, LoD의 각 층의 역치의 값을 도 78에 나타내는 바와 같이 상위층일수록 크게 설정함으로써, 상위층(LoD0에 가까운 층)일수록 삼차원점간의 거리가 떨어진 소점군(sparse)이 되고, 하위층일수록 삼차원점간의 거리가 가까운 밀점군(dense)이 된다. 또한, 도 78에 나타내는 예에서는, LoD0이 최상위층이다.
또한, 각 LoD를 설정할 때의 초기 삼차원점의 선택 방법은, 위치 정보 부호화 시의 부호화 순서에 의존해도 된다. 예를 들면, 삼차원 데이터 부호화 장치는, LoD0의 초기점 a0으로서, 위치 정보 부호화 시에 최초로 부호화된 삼차원점을 선택하고, 초기점 a0을 기점으로, 점 a1, 점 a2를 선택하여 LoD0을 구성한다. 그리고, 삼차원 데이터 부호화 장치는, LoD1의 초기점 b0으로서, LoD0에 속해있지 않은 삼차원점 중에서, 가장 빨리 위치 정보가 부호화된 삼차원점을 선택해도 된다. 즉, 삼차원 데이터 부호화 장치는, LoDn의 초기점 n0으로서, LoDn의 상층(LoD0~LoDn-1)에 속해있지 않은 삼차원점 중에서, 가장 빨리 위치 정보가 부호화된 삼차원점을 선택해도 된다. 이에 의해, 삼차원 데이터 복호 장치는, 복호 시에 동일한 초기점 선택 방법을 사용함으로써, 부호화 시와 동일한 LoD를 구성할 수 있으므로, 비트 스트림을 적절히 복호할 수 있다. 구체적으로는, 삼차원 데이터 복호 장치는, LoDn의 초기점 n0으로서, LoDn의 상층에 속해 있지 않은 삼차원점 중에서, 가장 빨리 위치 정보가 복호된 삼차원점을 선택한다.
이하, 삼차원점의 속성 정보의 예측값을, LoD의 정보를 사용하여 생성하는 수법에 대해서 설명한다. 예를 들면, 삼차원 데이터 부호화 장치는, LoD0에 포함되는 삼차원점부터 차례로 부호화하는 경우, LoD1에 포함되는 대상 삼차원점을, LoD0 및 LoD1에 포함되는 부호화 또한 복호 완료(이하, 간단히 「부호화 완료」라고도 기재한다)된 속성 정보를 사용하여 생성한다. 이와 같이, 삼차원 데이터 부호화 장치는, LoDn에 포함되는 삼차원점의 속성 정보의 예측값을, LoDn'(n'<=n)에 포함되는 부호화 완료된 속성 정보를 사용하여 생성한다. 즉, 삼차원 데이터 부호화 장치는, LoDn에 포함되는 삼차원점의 속성 정보의 예측값의 산출에, LoDn의 하층에 포함되는 삼차원점의 속성 정보를 사용하지 않는다.
예를 들면, 삼차원 데이터 부호화 장치는, 삼차원점의 속성 정보의 예측값을, 부호화 대상의 대상 삼차원점 주변의 부호화 완료된 삼차원점 중, N개 이하의 삼차원점의 속성값의 평균을 산출함으로써 생성한다. 또한, 삼차원 데이터 부호화 장치는, N의 값을, 비트 스트림의 헤더 등에 부가해도 된다. 또한, 삼차원 데이터 부호화 장치는, N의 값을 삼차원점마다 변경하고, 삼차원점마다 N의 값을 부가해도 된다. 이에 의해, 삼차원점마다 적절한 N을 선택할 수 있으므로, 예측값의 정밀도를 향상시킬 수 있다. 따라서, 예측 잔차를 작게 할 수 있다. 또한, 삼차원 데이터 부호화 장치는, N의 값을 비트 스트림의 헤더에 부가하고, 비트 스트림 내에서 N의 값을 고정해도 된다. 이에 의해, 삼차원점마다 N의 값을 부호화, 또는 복호할 필요가 없어지므로, 처리량을 삭감할 수 있다. 또한, 삼차원 데이터 부호화 장치는, LoD마다 N의 값을 따로따로 부호화해도 된다. 이에 의해 LoD마다 적절한 N을 선택함으로써 부호화 효율을 향상시킬 수 있다.
또는, 삼차원 데이터 부호화 장치는, 삼차원점의 속성 정보의 예측값을, 주위의 부호화 완료된 N개의 삼차원점의 속성 정보의 가중 평균값에 의해 산출해도 된다. 예를 들면, 삼차원 데이터 부호화 장치는, 대상 삼차원점과 주위의 N개의 삼차원점의 각각의 거리 정보를 사용하여 가중치를 산출한다.
삼차원 데이터 부호화 장치는, LoD마다 N의 값을 따로따로 부호화하는 경우, 예를 들면 LoD의 상위층일수록 N의 값을 크게 설정하고, 하위층일수록 N의 값을 작게 설정한다. LoD의 상위층에서는 속한 삼차원점간의 거리가 멀어지기 때문에, N의 값을 크게 설정하여 복수의 주위의 삼차원점을 선택하여 평균화함으로써 예측 정밀도를 향상시킬 수 있을 가능성이 있다. 또한, LoD의 하위층에서는 속한 삼차원점간의 거리가 가깝기 때문에, N의 값을 작게 설정하여 평균화의 처리량을 억제하면서, 효율적인 예측을 행하는 것이 가능해진다.
도 79는, 예측값에 사용하는 속성 정보의 예를 나타내는 도면이다. 상술한 바와 같이, LoDN에 포함되는 점 P의 예측값은, LoDN'(N'<=N)에 포함되는 부호화 완료된 주위점 P'를 사용하여 생성된다. 여기서, 주위점 P'는, 점 P와의 거리에 의거하여 선택된다. 예를 들면, 도 79에 나타내는 점 b2의 속성 정보의 예측값은, 점 a0, a1, a2, b0, b1의 속성 정보를 사용하여 생성된다.
상술한 N의 값에 따라, 선택되는 주위점은 변화한다. 예를 들면 N=5의 경우는 점 b2의 주위점으로서 a0, a1, a2, b0, b1이 선택된다. N=4의 경우는 거리 정보를 기초로 점 a0, a1, a2, b1이 선택된다.
예측값은, 거리 의존의 가중 평균에 의해 산출된다. 예를 들면, 도 79에 나타내는 예에서는, 점 a2의 예측값 a2p는, (식 H2) 및 (식 H3)에 나타내는 바와 같이, 점 a0 및 점 a1의 속성 정보의 가중 평균에 의해 산출된다. 또한, Ai는 점 ai의 속성 정보의 값이다.
Figure pct00002
또한, 점 b2의 예측값 b2p는, (식 H4)~(식 H6)에 나타내는 바와 같이, 점 a0, a1, a2, b0, b1의 속성 정보의 가중 평균에 의해 산출된다. 또한, Bi는 점 bi의 속성 정보의 값이다.
Figure pct00003
또한, 삼차원 데이터 부호화 장치는, 삼차원점의 속성 정보의 값과, 주위점으로부터 생성한 예측값의 차분값(예측 잔차)을 산출하고, 산출한 예측 잔차를 양자화해도 된다. 예를 들면, 삼차원 데이터 부호화 장치는, 예측 잔차를 양자화 스케일(양자화 스텝이라고도 부른다)로 제산함으로써 양자화를 행한다. 이 경우, 양자화 스케일이 작을수록 양자화에 의해 발생할 수 있는 오차(양자화 오차)가 작아진다. 반대로 양자화 스케일이 클수록 양자화 오차는 커진다.
또한, 삼차원 데이터 부호화 장치는, 사용하는 양자화 스케일을 LoD마다 바꾸어도 된다. 예를 들면, 삼차원 데이터 부호화 장치는, 상위층일수록 양자화 스케일을 작게 하고, 하위층일수록 양자화 스케일을 크게 한다. 상위층에 속하는 삼차원점의 속성 정보의 값은, 하위층에 속하는 삼차원점의 속성 정보의 예측값으로서 사용될 가능성이 있기 때문에, 상위층의 양자화 스케일을 작게 하여 상위층에서 발생할 수 있는 양자화 오차를 억제하여, 예측값의 정밀도를 높임으로써 부호화 효율을 향상시킬 수 있다. 또한, 삼차원 데이터 부호화 장치는, LoD마다 사용하는 양자화 스케일을 헤더 등에 부가해도 된다. 이에 의해, 삼차원 데이터 복호 장치는, 올바르게 양자화 스케일을 복호할 수 있으므로, 비트 스트림을 적절히 복호할 수 있다.
또한, 삼차원 데이터 부호화 장치는, 양자화 후의 예측 잔차인 부호있는 정수값(부호있는 양자화값)을 부호없는 정수값(부호없는 양자화값)으로 변환해도 된다. 이에 의해 예측 잔차를 엔트로피 부호화하는 경우에, 음의 정수의 발생을 고려할 필요가 없어진다. 또한, 삼차원 데이터 부호화 장치는, 반드시 부호있는 정수값을 부호없는 정수값으로 변환할 필요는 없으며, 예를 들면 부호 비트를 별도로 엔트로피 부호화해도 된다.
예측 잔차는, 원래의 값으로부터 예측값을 감산함으로써 산출된다. 예를 들면, 점 a2의 예측 잔차 a2r은, (식 H7)에 나타내는 바와 같이, 점 a2의 속성 정보의 값 A2로부터, 점 a2의 예측값 a2p를 감산함으로써 산출된다. 점 b2의 예측 잔차 b2r은, (식 H8)에 나타내는 바와 같이, 점 b2의 속성 정보의 값 B2로부터, 점 b2의 예측값 b2p를 감산함으로써 산출된다.
a2r=A2-a2p···(식 H7)
b2r=B2-b2p···(식 H8)
또한, 예측 잔차는, QS(양자화 스텝(Quantization Step))로 제산됨으로써 양자화된다. 예를 들면, 점 a2의 양자화값 a2q는, (식 H9)에 의해 산출된다. 점 b2의 양자화값 b2q는, (식 H10)에 의해 산출된다. 여기서, QS_LoD0은, LoD0용 QS이고, QS_LoD1은, LoD1용 QS이다. 즉, LoD에 따라 QS가 변경되어도 된다.
a2q=a2r/QS_LoD0···(식 H9)
b2q=b2r/QS_LoD1···(식 H10)
또한, 삼차원 데이터 부호화 장치는, 이하와 같이, 상기 양자화값인 부호있는 정수값을 부호없는 정수값으로 변환한다. 삼차원 데이터 부호화 장치는, 부호있는 정수값 a2q가 0보다 작은 경우, 부호없는 정수값 a2u를 -1-(2×a2q)로 설정한다. 삼차원 데이터 부호화 장치는, 부호있는 정수값 a2q가 0 이상인 경우, 부호없는 정수값 a2u를 2×a2q로 설정한다.
마찬가지로, 삼차원 데이터 부호화 장치는, 부호있는 정수값 b2q가 0보다 작은 경우, 부호없는 정수값 b2u를 -1-(2×b2q)로 설정한다. 삼차원 데이터 부호화 장치는, 부호있는 정수값 b2q가 0 이상인 경우, 부호없는 정수값 b2u를 2×b2q로 설정한다.
또한, 삼차원 데이터 부호화 장치는, 양자화 후의 예측 잔차(부호없는 정수값)를, 엔트로피 부호화에 의해 부호화해도 된다. 예를 들면 부호없는 정수값을 2치화한 다음, 2치의 산술 부호화를 적용해도 된다.
또한, 이 경우, 삼차원 데이터 부호화 장치는, 예측 잔차의 값에 따라 2치화 방법을 전환해도 된다. 예를 들면, 삼차원 데이터 부호화 장치는, 예측 잔차 pu가 역치 R_TH보다 작은 경우는, 역치 R_TH를 표현하기 위해 필요한 고정 비트수로 예측 잔차 pu를 2치화한다. 또한, 삼차원 데이터 부호화 장치는, 예측 잔차 pu가 역치 R_TH 이상인 경우는, 역치 R_TH의 2치화 데이터와 (pu-R_TH)의 값을 지수 골룸(Exponential-Golomb) 등을 사용하여 2치화한다.
예를 들면, 삼차원 데이터 부호화 장치는, 역치 R_TH가 63이고, 예측 잔차 pu가 63보다 작은 경우는, 예측 잔차 pu를 6bit로 2치화한다. 또한, 삼차원 데이터 부호화 장치는, 예측 잔차 pu가 63 이상인 경우는, 역치 R_TH의 2치 데이터(111111)와 (pu-63)을 지수 골룸을 사용하여 2치화함으로써 산술 부호화를 행한다.
보다 구체적인 예에서는, 삼차원 데이터 부호화 장치는, 예측 잔차 pu가 32인 경우, 6bit의 2치 데이터(100000)를 생성하고, 이 비트열을 산술 부호화한다. 또한, 삼차원 데이터 부호화 장치는, 예측 잔차 pu가 66인 경우, 역치 R_TH의 2치 데이터(111111)와 값 3(66-63)을 지수 골룸으로 나타낸 비트열(00100)을 생성하고, 이 비트열(111111+00100)을 산술 부호화한다.
이와 같이, 삼차원 데이터 부호화 장치는, 예측 잔차의 크기에 따라 2치화 방법을 전환함으로써, 예측 잔차가 커진 경우의 2치화 비트수의 급격한 증가를 억제하면서 부호화하는 것이 가능해진다. 또한, 삼차원 데이터 부호화 장치는, 역치 R_TH를 비트 스트림의 헤더 등에 부가해도 된다.
예를 들면, 고비트 레이트로 부호화가 행해지는 경우, 즉, 양자화 스케일이 작은 경우, 양자화 오차가 작고 예측 정밀도가 높아지며, 결과적으로 예측 잔차가 커지지 않을 가능성이 있다. 따라서, 이 경우에는, 삼차원 데이터 부호화 장치는, 역치 R_TH를 크게 설정한다. 이에 의해, 역치 R_TH의 2치화 데이터를 부호화할 가능성이 낮아져, 부호화 효율이 향상한다. 반대로, 저비트 레이트로 부호화가 행해지는 경우, 즉, 양자화 스케일이 큰 경우, 양자화 오차가 크고 예측 정밀도가 나빠지며, 결과적으로 예측 잔차가 커질 가능성이 있다. 따라서, 이 경우에는, 삼차원 데이터 부호화 장치는, 역치 R_TH를 작게 설정한다. 이에 의해, 2치화 데이터의 급격한 비트 길이 증가를 방지할 수 있다.
또한, 삼차원 데이터 부호화 장치는, LoD마다 역치 R_TH를 전환하고, LoD마다의 역치 R_TH를 헤더 등에 부가해도 된다. 즉, 삼차원 데이터 부호화 장치는, LoD마다 2치화 방법을 전환해도 된다. 예를 들면, 상위층에서는 삼차원점간의 거리가 멀기 때문에, 예측 정밀도가 나쁘며 결과적으로 예측 잔차가 커질 가능성이 있다. 따라서, 삼차원 데이터 부호화 장치는, 상위층에 대해서는 역치 R_TH를 작게 설정함으로써 2치화 데이터의 급격한 비트 길이 증가를 방지한다. 또한, 하위층에서는 삼차원점간의 거리가 가깝기 때문에, 예측 정밀도가 높으며 결과적으로 예측 잔차가 작아질 가능성이 있다. 따라서, 삼차원 데이터 부호화 장치는, 계층에 대해서는 역치 R_TH를 크게 설정함으로써 부호화 효율을 향상시킨다.
도 80은, 지수 골룸 부호의 일례를 나타내는 도면이며, 2치화 전의 값(다치)과, 2치화 후의 비트(부호)의 관계를 나타내는 도면이다. 또한, 도 80에 나타내는 0과 1을 반전시켜도 된다.
또한, 삼차원 데이터 부호화 장치는, 예측 잔차의 2치화 데이터에 산술 부호화를 적용한다. 이에 의해, 부호화 효율을 향상시킬 수 있다. 또한, 산술 부호화의 적용시에, 2치화 데이터 중, n비트로 2치화한 부분인 n비트 부호(n-bit code)와, 지수 골룸을 사용하여 2치화한 부분인 나머지 부호(remaining code)에서, 각 비트의 0과 1의 출현 확률의 경향은 상이할 가능성이 있다. 따라서, 삼차원 데이터 부호화 장치는, n비트 부호와 나머지 부호에서, 산술 부호화의 적용 방법을 전환해도 된다.
예를 들면, 삼차원 데이터 부호화 장치는, n비트 부호에 대해서는, 비트마다 상이한 부호화 테이블(확률 테이블)을 사용하여 산술 부호화를 행한다. 이때, 삼차원 데이터 부호화 장치는, 비트마다 사용하는 부호화 테이블의 수를 바꾸어도 된다. 예를 들면, 삼차원 데이터 부호화 장치는, n비트 부호의 선두 비트 b0에는 1개의 부호화 테이블을 사용하여 산술 부호화를 행한다. 또한, 삼차원 데이터 부호화 장치는, 다음 비트 b1에 대해서는 2개의 부호화 테이블을 사용한다. 또한, 삼차원 데이터 부호화 장치는, b0의 값(0 또는 1)에 따라 비트 b1의 산술 부호화에 사용하는 부호화 테이블을 전환한다. 마찬가지로, 삼차원 데이터 부호화 장치는, 또한 다음 비트 b2에 대해서는 4개의 부호화 테이블을 사용한다. 또한, 삼차원 데이터 부호화 장치는, b0 및 b1의 값(0~3)에 따라, 비트 b2의 산술 부호화에 사용하는 부호화 테이블을 전환한다.
이와 같이, 삼차원 데이터 부호화 장치는, n비트 부호의 각 비트 bn-1을 산술 부호화할 때에, 2n-1개의 부호화 테이블을 사용한다. 또한, 삼차원 데이터 부호화 장치는, bn-1보다 앞의 비트의 값(발생 패턴)에 따라, 사용하는 부호화 테이블을 전환한다. 이에 의해, 삼차원 데이터 부호화 장치는, 비트마다 적절한 부호화 테이블을 사용할 수 있으므로, 부호화 효율을 향상시킬 수 있다.
또한, 삼차원 데이터 부호화 장치는, 각 비트에서 사용하는 부호화 테이블의 수를 삭감해도 된다. 예를 들면, 삼차원 데이터 부호화 장치는, 각 비트 bn-1을 산술 부호화할 때에, bn-1보다 앞의 m비트(m<n-1)의 값(발생 패턴)에 따라 2m개의 부호화 테이블을 전환해도 된다. 이에 의해 각 비트에서 사용하는 부호화 테이블의 수를 억제하면서, 부호화 효율을 향상시킬 수 있다. 또한, 삼차원 데이터 부호화 장치는, 각 부호화 테이블에 있어서의 0과 1의 발생 확률을, 실제로 발생한 2치화 데이터의 값에 따라 갱신해도 된다. 또한, 삼차원 데이터 부호화 장치는, 일부 비트의 부호화 테이블에 있어서의 0과 1의 발생 확률을 고정화해도 된다. 이에 의해, 발생 확률의 갱신 횟수를 억제할 수 있으므로 처리량을 삭감할 수 있다.
예를 들면, n비트 부호가 b0b1b2…bn-1인 경우, b0용 부호화 테이블은 1개(CTb0)이다. b1용 부호화 테이블은 2개(CTb10, CTb11)이다. 또한, b0의 값(0~1)에 따라 사용하는 부호화 테이블이 전환된다. b2용 부호화 테이블은, 4개(CTb20, CTb21, CTb22, CTb23)이다. 또한, b0 및 b1의 값(0~3)에 따라 사용하는 부호화 테이블이 전환된다. bn-1용 부호화 테이블은 2n-1개(CTbn0, CTbn1,…CTbn(2n-1-1))이다. 또한, b0b1…bn-2의 값(0~2n-1-1)에 따라 사용하는 부호화 테이블이 전환된다.
또한, 삼차원 데이터 부호화 장치는, n비트 부호에 대해서는, 2치화하지 않고 0~2n-1의 값을 설정하는 m-ary에 의한 산술 부호화(m=2n)를 적용해도 된다. 또한, 삼차원 데이터 부호화 장치가, n비트 부호를 m-ary로 산술 부호화하는 경우는, 삼차원 데이터 복호 장치도 m-ary의 산술 복호에 의해 n비트 부호를 복원해도 된다.
도 81은, 예를 들면, 나머지 부호가 지수 골룸 부호인 경우의 처리를 설명하기 위한 도면이다. 지수 골룸을 사용하여 2치화한 부분인 나머지 부호는, 도 81에 나타내는 바와 같이 prefix부와 suffix부를 포함한다. 예를 들면, 삼차원 데이터 부호화 장치는, prefix부와 suffix부에서 부호화 테이블을 전환한다. 즉, 삼차원 데이터 부호화 장치는, prefix부에 포함되는 각 비트를, prefix용 부호화 테이블을 사용하여 산술 부호화하고, suffix부에 포함되는 각 비트를, suffix용 부호화 테이블을 사용하여 산술 부호화한다.
또한, 삼차원 데이터 부호화 장치는, 각 부호화 테이블에 있어서의 0과 1의 발생 확률을, 실제로 발생한 2치화 데이터의 값에 따라 갱신해도 된다. 또는, 삼차원 데이터 부호화 장치는, 어느 한쪽의 부호화 테이블에 있어서의 0과 1의 발생 확률을 고정화해도 된다. 이에 의해, 발생 확률의 갱신 횟수를 억제할 수 있으므로 처리량을 삭감할 수 있다. 예를 들면, 삼차원 데이터 부호화 장치는, prefix부에 대하여 발생 확률을 갱신하고, suffix부에 대하여 발생 확률을 고정화해도 된다.
또한, 삼차원 데이터 부호화 장치는, 양자화 후의 예측 잔차를, 역양자화 및 재구성함으로써 복호하고, 복호한 예측 잔차인 복호값을 부호화 대상의 삼차원점 이후의 예측에 사용한다. 구체적으로는, 삼차원 데이터 부호화 장치는, 양자화 후의 예측 잔차(양자화값)에 양자화 스케일을 곱함으로써 역양자화값을 산출하고, 역양자화값과 예측값을 가산하여 복호값(재구성값)을 얻는다.
예를 들면, 점 a2의 역양자화값 a2iq는, 점 a2의 양자화값 a2q를 사용하여 (식 H11)에 의해 산출된다. 점 b2의 역양자화값 b2iq는, 점 b2의 양자화값 b2q를 사용하여 (식 H12)에 의해 산출된다. 여기서, QS_LoD0은, LoD0용 QS이고, QS_LoD1은, LoD1용 QS이다. 즉, LoD에 따라 QS가 변경되어도 된다.
a2iq=a2q×QS_LoD0···(식 H11)
b2iq=b2q×QS_LoD1···(식 H12)
예를 들면, 점 a2의 복호값 a2rec는, (식 H13)에 나타내는 바와 같이, 점 a2의 역양자화값 a2iq에, 점 a2의 예측값 a2p를 가산함으로써 산출된다. 점 b2의 복호값 b2rec는, (식 H14)에 나타내는 바와 같이, 점 b2의 역양자화값 b2iq에, 점 b2의 예측값 b2p를 가산함으로써 산출된다.
a2rec=a2iq+a2p···(식 H13)
b2rec=b2iq+b2p···(식 H14)
이하, 본 실시 형태에 따른 비트 스트림의 신택스예를 설명한다. 도 82는, 본 실시 형태에 따른 속성 헤더(attribute_header)의 신택스예를 나타내는 도면이다. 속성 헤더는, 속성 정보의 헤더 정보이다. 도 82에 나타내는 바와 같이, 속성 헤더는, 계층 수 정보(NumLoD), 삼차원점 수 정보(NumOfPoint[i]), 계층 역치(Thres_Lod[i]), 주위 점수 정보(NumNeighborPoint[i]), 예측 역치(THd[i]), 양자화 스케일(QS[i]), 2치화 역치(R_TH[i])를 포함한다.
계층 수 정보(NumLoD)는, 사용되는 LoD의 계층 수를 나타낸다.
삼차원점 수 정보(NumOfPoint[i])는, 계층 i에 속하는 삼차원점의 수를 나타낸다. 또한, 삼차원 데이터 부호화 장치는, 삼차원점의 총수를 나타내는 삼차원점 총수 정보(AllNumOfPoint)를 다른 헤더에 부가해도 된다. 이 경우, 삼차원 데이터 부호화 장치는, 최하층에 속하는 삼차원점의 수를 나타내는 NumOfPoint[NumLoD-1]을 헤더에 부가하지 않아도 된다. 이 경우, 삼차원 데이터 복호 장치는, (식 H15)에 의해 NumOfPoint[NumLoD-1]을 산출할 수 있다. 이에 의해, 헤더의 부호량을 삭감할 수 있다.
Figure pct00004
계층 역치(Thres_Lod[i])는, 계층 i의 설정에 사용되는 역치이다. 삼차원 데이터 부호화 장치 및 삼차원 데이터 복호 장치는, LoDi 내의 각 점 사이의 거리가 역치 Thres_LoD[i]보다 커지도록 LoDi를 구성한다. 또한, 삼차원 데이터 부호화 장치는, Thres_Lod[NumLoD-1](최하층)의 값을 헤더에 부가하지 않아도 된다. 이 경우, 삼차원 데이터 복호 장치는, Thres_Lod[NumLoD-1]의 값을 0으로 추정한다. 이에 의해 헤더의 부호량을 삭감할 수 있다.
주위 점수 정보(NumNeighborPoint[i])는, 계층 i에 속하는 삼차원점의 예측값의 생성에 사용하는 주위의 점수의 상한값을 나타낸다. 삼차원 데이터 부호화 장치는, 주위의 점수 M이 NumNeighborPoint[i]에 못 미치는 경우(M<NumNeighborPoint[i])는, M개의 주위의 점수를 사용하여 예측값을 산출해도 된다. 또한, 삼차원 데이터 부호화 장치는, 각 LoD에서 NumNeighborPoint[i]의 값을 구분할 필요가 없는 경우는, 모든 LoD에서 사용되는 1개의 주위 점수 정보(NumNeighborPoint)를 헤더에 부가해도 된다.
예측 역치(THd[i])는, 계층 i에서 부호화 또는 복호 대상의 대상 삼차원점의 예측에 사용하는 주위의 삼차원점과 대상 삼차원점의 거리의 상한값을 나타낸다. 삼차원 데이터 부호화 장치 및 삼차원 데이터 복호 장치는, 대상 삼차원점으로부터의 거리가 THd[i]보다 떨어져 있는 삼차원점을 예측에 사용하지 않는다. 또한, 삼차원 데이터 부호화 장치는, 각 LoD에서 THd[i]의 값을 구분할 필요가 없는 경우는, 모든 LoD에서 사용되는 1개의 예측 역치(THd)를 헤더에 부가해도 된다.
양자화 스케일(QS[i])은, 계층 i의 양자화 및 역양자화에서 사용되는 양자화 스케일을 나타낸다.
2치화 역치(R_TH[i])는, 계층 i에 속하는 삼차원점의 예측 잔차의 2치화 방법을 전환하기 위한 역치이다. 예를 들면, 삼차원 데이터 부호화 장치는, 예측 잔차가 역치 R_TH보다 작은 경우는, 고정 비트수로 예측 잔차 pu를 2치화하고, 예측 잔차가 역치 R_TH 이상인 경우는, 역치 R_TH의 2치화 데이터와 (pu-R_TH)의 값을 지수 골룸을 사용하여 2치화한다. 또한, 각 LoD에서 R_TH[i]의 값을 전환할 필요가 없는 경우는, 삼차원 데이터 부호화 장치는, 모든 LoD에서 사용되는 1개의 2치화 역치(R_TH)를 헤더에 부가해도 된다.
또한, R_TH[i]는 nbit로 나타낼 수 있는 최대값이어도 된다. 예를 들면 6bit에서는 R_TH는 63이고, 8bit에서는 R_TH는 255이다. 또한, 삼차원 데이터 부호화 장치는, 2치화 역치로서 nbit로 나타낼 수 있는 최대값을 부호화하는 대신에, 비트수를 부호화해도 된다. 예를 들면, 삼차원 데이터 부호화 장치는, R_TH[i]=63의 경우는 값 6을, R_TH[i]=255의 경우는 값 8을 헤더에 부가해도 된다. 또한, 삼차원 데이터 부호화 장치는, R_TH[i]를 나타내는 비트수의 최소값(최소 비트수)을 정의하고, 최소값으로부터의 상대 비트수를 헤더에 부가해도 된다. 예를 들면, 삼차원 데이터 부호화 장치는, R_TH[i]=63이고 최소 비트수가 6인 경우는 값 0을 헤더에 부가하고, R_TH[i]=255이고 최소 비트수가 6인 경우는 값 2를 헤더에 부가해도 된다.
또한, 삼차원 데이터 부호화 장치는, NumLoD, Thres_Lod[i], NumNeighborPoint[i], THd[i], QS[i] 및 R_TH[i] 중 적어도 하나를 엔트로피 부호화하여 헤더에 부가해도 된다. 예를 들면, 삼차원 데이터 부호화 장치는, 각 값을 2치화하여 산술 부호화해도 된다. 또한, 삼차원 데이터 부호화 장치는, 처리량을 억제하기 위해서 각 값을 고정 길이로 부호화해도 된다.
또한, 삼차원 데이터 부호화 장치는, NumLoD, Thres_Lod[i], NumNeighborPoint[i], THd[i], QS[i], 및 R_TH[i] 중 적어도 하나를 헤더에 부가하지 않아도 된다. 예를 들면, 이들 중 적어도 하나의 값이, 규격 등의 profile 또는 level 등으로 규정되어도 된다. 이에 의해 헤더의 비트량을 삭감할 수 있다.
도 83은, 본 실시 형태에 따른 속성 데이터(attribute_data)의 신택스예를 나타내는 도면이다. 이 속성 데이터는, 복수의 삼차원점의 속성 정보의 부호화 데이터를 포함한다. 도 83에 나타내는 바와 같이 속성 데이터는, n비트 부호(n-bit code)와 나머지 부호(remaining code)를 포함한다.
n비트 부호는(n-bit code)는, 속성 정보의 값의 예측 잔차의 부호화 데이터 또는 그 일부이다. n비트 부호의 비트 길이는 R_TH[i]의 값에 의존한다. 예를 들면 R_TH[i]가 나타내는 값이 63인 경우, n비트 부호는 6bit이고, R_TH[i]가 나타내는 값이 255인 경우, n비트 부호는 8bit이다.
나머지 부호(remaining code)는, 속성 정보의 값의 예측 잔차의 부호화 데이터 중, 지수 골룸으로 부호화된 부호화 데이터이다. 이 나머지 부호는, n비트 부호가 R_TH[i]와 동일한 경우에 부호화 또는 복호된다. 또한, 삼차원 데이터 복호 장치는, n비트 부호의 값과 나머지 부호의 값을 가산하여 예측 잔차를 복호한다. 또한, n비트 부호가 R_TH[i]와 동일한 값이 아닌 경우는, 나머지 부호는 부호화 또는 복호되지 않아도 된다.
이하, 삼차원 데이터 부호화 장치에 있어서의 처리의 흐름을 설명한다. 도 84는, 삼차원 데이터 부호화 장치에 의한 삼차원 데이터 부호화 처리의 플로차트이다.
우선, 삼차원 데이터 부호화 장치는, 복수의 프레임을 결합한다(S5601). 예를 들면, 삼차원 데이터 부호화 장치는, 입력된 복수의 프레임에 속하는 복수의 삼차원점군을 하나의 삼차원점군으로 결합한다. 또한, 삼차원 데이터 부호화 장치는, 결합 시에, 각 삼차원점군에, 각 삼차원점군이 속하는 프레임을 나타내는 프레임 인덱스를 부가한다.
다음에, 삼차원 데이터 부호화 장치는, 프레임 결합 후의 위치 정보(geometry)를 부호화한다(S5602). 예를 들면, 삼차원 데이터 부호화는, 8진 트리 표현을 사용하여 부호화를 행한다.
삼차원 데이터 부호화 장치는, 위치 정보의 부호화 후에, 양자화 등에 의해 삼차원점의 위치가 변화한 경우에, 변화 후의 삼차원점에 원래의 삼차원점의 속성 정보를 재할당한다(S5603). 예를 들면, 삼차원 데이터 부호화 장치는, 위치의 변화량에 따라 속성 정보의 값을 보간함으로써 재할당을 행한다. 예를 들면, 삼차원 데이터 부호화 장치는, 변화 후의 삼차원 위치에 가까운 변화 전의 삼차원점을 N개 검출하여, N개의 삼차원점의 속성 정보의 값을 가중 평균한다. 예를 들면, 삼차원 데이터 부호화 장치는, 가중 평균에 있어서, 변화 후의 삼차원 위치로부터 각 N개의 삼차원점까지의 거리에 의거하여 가중치를 결정한다. 그리고, 삼차원 데이터 부호화 장치는, 가중 평균에 의해 얻어진 값을 변화 후의 삼차원점의 속성 정보의 값으로 결정한다. 또한, 삼차원 데이터 부호화 장치는, 양자화 등에 의해 2개 이상의 삼차원점이 동일한 삼차원 위치로 변화한 경우는, 그 변화 후의 삼차원점의 속성 정보의 값으로서, 변화 전의 2개 이상의 삼차원점의 속성 정보의 평균값을 할당해도 된다.
다음에, 삼차원 데이터 부호화 장치는, 재할당 후의 속성 정보(Attribute)를 부호화한다(S5604). 여기서, 삼차원 데이터 부호화 장치는, 복수의 삼차원점의 각각에 대해서, 당해 삼차원점의 프레임 인덱스를 당해 삼차원점의 속성 정보로서 부호화한다. 또한, 예를 들면, 삼차원 데이터 부호화 장치는, 복수 종류의 속성 정보를 부호화하는 경우는, 복수 종류의 속성 정보를 차례로 부호화해도 된다. 예를 들면, 삼차원 데이터 부호화 장치는, 속성 정보로서, 색과 반사율과 프레임 인덱스를 부호화하는 경우는, 색의 부호화 결과 후에 반사율의 부호화 결과를 부가하고, 또한, 반사율의 부호화 결과 후에 프레임 인덱스의 부호화 결과를 부가한 비트 스트림을 생성해도 된다. 또한, 비트 스트림에 부가되는 속성 정보의 복수의 부호화 결과의 순서는, 이 순서에 한정하지 않으며, 어떠한 순서여도 된다. 또한, 삼차원 데이터 부호화 장치는, 프레임 인덱스를, 색 또는 반사율과 같은, 프레임 인덱스와 상이한 다른 속성 정보와 같은 데이터 형식으로, 속성 정보로서 부호화한다. 이 때문에, 부호화 데이터는, 프레임 인덱스를, 프레임 인덱스와 상이한 다른 속성 정보와 같은 데이터 형식으로 포함한다.
또한, 삼차원 데이터 부호화 장치는, 비트 스트림 내의 각 속성 정보의 부호화 데이터 개시 장소를 나타내는 정보를 헤더 등에 부가해도 된다. 이에 의해, 삼차원 데이터 복호 장치는, 복호가 필요한 속성 정보를 선택적으로 복호할 수 있으므로, 복호가 불필요한 속성 정보의 복호 처리를 생략할 수 있다. 따라서, 삼차원 데이터 복호 장치의 처리량을 삭감할 수 있다. 또한, 삼차원 데이터 부호화 장치는, 복수 종류의 속성 정보를 병렬로 부호화하고, 부호화 결과를 하나의 비트 스트림에 통합해도 된다. 이에 의해, 삼차원 데이터 부호화 장치는, 고속으로 복수 종류의 속성 정보를 부호화할 수 있다.
도 85는, 속성 정보 부호화 처리(S5604)의 플로차트이다. 우선, 삼차원 데이터 부호화 장치는, LoD를 설정한다(S5611). 즉, 삼차원 데이터 부호화 장치는, 각 삼차원점을 복수의 LoD 중 어느 하나에 할당한다.
다음에, 삼차원 데이터 부호화 장치는, LoD 단위의 루프를 개시한다(S5612). 즉, 삼차원 데이터 부호화 장치는, LoD마다 단계 S5613~S5621의 처리를 반복하여 행한다.
다음에, 삼차원 데이터 부호화 장치는, 삼차원점 단위의 루프를 개시한다(S5613). 즉, 삼차원 데이터 부호화 장치는, 삼차원점마다 단계 S5614~S5620의 처리를 반복하여 행한다.
우선, 삼차원 데이터 부호화 장치는, 처리 대상의 대상 삼차원점의 예측값의 산출에 사용할, 대상 삼차원점 주위에 존재하는 삼차원점인 복수의 주위점을 탐색한다(S5614). 다음에, 삼차원 데이터 부호화 장치는, 복수의 주위점의 속성 정보의 값의 가중 평균을 산출하고, 얻어진 값을 예측값 P로 설정한다(S5615). 다음에, 삼차원 데이터 부호화 장치는, 대상 삼차원점의 속성 정보와 예측값의 차분인 예측 잔차를 산출한다(S5616). 다음에, 삼차원 데이터 부호화 장치는, 예측 잔차를 양자화함으로써 양자화값을 산출한다(S5617). 다음에, 삼차원 데이터 부호화 장치는, 양자화값을 산술 부호화한다(S5618).
또한, 삼차원 데이터 부호화 장치는, 양자화값을 역양자화함으로써 역양자화값을 산출한다(S5619). 다음에, 삼차원 데이터 부호화 장치는, 역양자화값에 예측값을 가산함으로써 복호값을 생성한다(S5620). 다음에, 삼차원 데이터 부호화 장치는, 삼차원점 단위의 루프를 종료한다(S5621). 또한, 삼차원 데이터 부호화 장치는, LoD 단위의 루프를 종료한다(S5622).
이하, 상기의 삼차원 데이터 부호화 장치에 의해 생성된 비트 스트림을 복호하는 삼차원 데이터 복호 장치에서의 삼차원 데이터 복호 처리에 대해서 설명한다.
삼차원 데이터 복호 장치는, 삼차원 데이터 부호화 장치에 의해 생성된 비트 스트림 내의 속성 정보의 2치화 데이터를, 삼차원 데이터 부호화 장치와 동일한 방법으로 산술 복호함으로써, 복호된 2치화 데이터를 생성한다. 또한, 삼차원 데이터 부호화 장치에 있어서, n비트로 2치화한 부분(n비트 부호)과, 지수 골룸을 사용하여 2치화한 부분(나머지 부호)에서 산술 부호화의 적용 방법을 전환한 경우는, 삼차원 데이터 복호 장치는, 산술 복호 적용시에, 그에 맞추어 복호를 행한다.
예를 들면, 삼차원 데이터 복호 장치는, n비트 부호의 산술 복호 방법에 있어서, 비트마다 상이한 부호화 테이블(복호 테이블)을 사용하여 산술 복호를 행한다. 이때, 삼차원 데이터 복호 장치는, 비트마다 사용하는 부호화 테이블의 수를 바꾸어도 된다. 예를 들면, n비트 부호의 선두 비트 b0에는 1개의 부호화 테이블을 사용하여 산술 복호를 행한다. 또한, 삼차원 데이터 복호 장치는, 다음 비트 b1에 대해서는 2개의 부호화 테이블을 사용한다. 또한, 삼차원 데이터 복호 장치는, b0의 값(0 또는 1)에 따라 비트 b1의 산술 복호에 사용하는 부호화 테이블을 전환한다. 마찬가지로, 삼차원 데이터 복호 장치는, 또한 다음 비트 b2에 대해서는 4개의 부호화 테이블을 사용한다. 또한, 삼차원 데이터 복호 장치는, b0 및 b1의 값(0~3)에 따라, 비트 b2의 산술 복호에 사용하는 부호화 테이블을 전환한다.
이와 같이, 삼차원 데이터 복호 장치는, n비트 부호의 각 비트 bn-1을 산술 복호할 때에, 2n-1개의 부호화 테이블을 사용한다. 또한, 삼차원 데이터 복호 장치는, bn-1보다 앞의 비트의 값(발생 패턴)에 따라, 사용하는 부호화 테이블을 전환한다. 이에 의해, 삼차원 데이터 복호 장치는, 비트마다 적절한 부호화 테이블을 사용하여 부호화 효율을 향상시킨 비트 스트림을 적절히 복호할 수 있다.
또한, 삼차원 데이터 복호 장치는, 각 비트에서 사용하는 부호화 테이블의 수를 삭감해도 된다. 예를 들면, 삼차원 데이터 복호 장치는, 각 비트 bn-1을 산술 복호할 때에, bn-1보다 앞의 m비트(m<n-1)의 값(발생 패턴)에 따라 2m개의 부호화 테이블을 전환해도 된다. 이에 의해, 삼차원 데이터 복호 장치는, 각 비트에서 사용하는 부호화 테이블의 수를 억제하면서, 부호화 효율을 향상시킨 비트 스트림을 적절히 복호할 수 있다. 또한, 삼차원 데이터 복호 장치는, 각 부호화 테이블에 있어서의 0과 1의 발생 확률을, 실제로 발생한 2치화 데이터의 값에 따라 갱신해도 된다. 또한, 삼차원 데이터 복호 장치는, 일부 비트의 부호화 테이블에 있어서의 0과 1의 발생 확률을 고정화해도 된다. 이에 의해, 발생 확률의 갱신 횟수를 억제할 수 있으므로 처리량을 삭감할 수 있다.
예를 들면, n비트 부호가 b0b1b2…bn-1인 경우, b0용 부호화 테이블은 1개(CTb0)이다. b1용 부호화 테이블은 2개(CTb10, CTb11)이다. 또한, b0의 값(0~1)에 따라 부호화 테이블이 전환된다. b2용 부호화 테이블은 4개(CTb20, CTb21, CTb22, CTb23)이다. 또한, b0 및 b1의 값(0~3)에 따라 부호화 테이블이 전환된다. bn-1용 부호화 테이블은, 2n-1개(CTbn0, CTbn1,…CTbn(2n-1-1))이다. 또한, b0b1…bn-2의 값(0~2n-1-1)에 따라 부호화 테이블이 전환된다.
도 86은, 예를 들면, 나머지 부호가 지수 골룸 부호인 경우의 처리를 설명하기 위한 도면이다. 삼차원 데이터 부호화 장치가 지수 골룸을 사용해 2치화하여 부호화한 부분(나머지 부호)은, 도 86에 나타내는 바와 같이 prefix부와 suffix부를 포함한다. 예를 들면, 삼차원 데이터 복호 장치는, prefix부와 suffix부에서 부호화 테이블을 전환한다. 즉, 삼차원 데이터 복호 장치는, prefix부에 포함되는 각 비트를, prefix용 부호화 테이블을 사용하여 산술 복호하고, suffix부에 포함되는 각 비트를, suffix용 부호화 테이블을 사용하여 산술 복호한다.
또한, 삼차원 데이터 복호 장치는, 각 부호화 테이블에 있어서의 0과 1의 발생 확률을, 복호 시에 발생한 2치화 데이터의 값에 따라 갱신해도 된다. 또는, 삼차원 데이터 복호 장치는, 어느 한쪽의 부호화 테이블에 있어서의 0과 1의 발생 확률을 고정화해도 된다. 이에 의해, 발생 확률의 갱신 횟수를 억제할 수 있으므로 처리량을 삭감할 수 있다. 예를 들면, 삼차원 데이터 복호 장치는, prefix부에 대하여 발생 확률을 갱신하고, suffix부에 대하여 발생 확률을 고정화해도 된다.
또한, 삼차원 데이터 복호 장치는, 산술 복호한 예측 잔차의 2치화 데이터를, 삼차원 데이터 부호화 장치에서 사용된 부호화 방법에 맞추어 다치화함으로써 양자화 후의 예측 잔차(부호없는 정수값)를 복호한다. 삼차원 데이터 복호 장치는, 우선 n비트 부호의 2치화 데이터를 산술 복호함으로써 복호한 n비트 부호의 값을 산출한다. 다음에, 삼차원 데이터 복호 장치는, n비트 부호의 값과 R_TH의 값을 비교한다.
삼차원 데이터 복호 장치는, n비트 부호의 값과 R_TH의 값이 일치한 경우, 지수 골룸으로 부호화된 비트가 다음에 존재한다고 판정하고, 지수 골룸으로 부호화된 2치화 데이터인 나머지 부호를 산술 복호한다. 그리고, 삼차원 데이터 복호 장치는, 복호한 나머지 부호로부터, 나머지 부호와 그 값의 관계를 나타내는 역방향 조회 테이블을 사용하여 나머지 부호의 값을 산출한다. 도 87은, 나머지 부호와 그 값의 관계를 나타내는 역방향 조회 테이블의 예를 나타내는 도면이다. 다음에, 삼차원 데이터 복호 장치는, 얻어진 나머지 부호의 값을 R_TH에 가산함으로써 다치화된 양자화 후의 예측 잔차를 얻는다.
한편, 삼차원 데이터 복호 장치는, n비트 부호의 값과 R_TH의 값이 일치하지 않는(R_TH보다 값이 작은) 경우, n비트 부호의 값을 그대로, 다치화된 양자화 후의 예측 잔차로 결정한다. 이에 의해, 삼차원 데이터 복호 장치는, 삼차원 데이터 부호화 장치에서 예측 잔차의 값에 따라 2치화 방법을 전환하여 생성한 비트 스트림을 적절히 복호할 수 있다.
또한, 삼차원 데이터 복호 장치는, 역치 R_TH가 비트 스트림의 헤더 등에 부가되어 있는 경우는, 역치 R_TH의 값을 헤더로부터 복호하고, 복호한 역치 R_TH의 값을 사용하여 복호 방법을 전환해도 된다. 또한, 삼차원 데이터 복호 장치는, LoD마다 역치 R_TH가 헤더 등에 부가되어 있는 경우, LoD마다 복호한 역치 R_TH를 사용하여 복호 방법을 전환한다.
예를 들면, 역치 R_TH가 63이고, 복호한 n비트 부호의 값이 63인 경우, 삼차원 데이터 복호 장치는, 나머지 부호를 지수 골룸에 의해 복호함으로써 나머지 부호의 값을 얻는다. 예를 들면, 도 87에 나타내는 예에서는, 나머지 부호가 00100이고, 나머지 부호의 값으로서 3이 얻어진다. 다음에, 삼차원 데이터 복호 장치는, 역치 R_TH의 값 63과, 나머지 부호의 값 3을 가산함으로써 예측 잔차의 값 66을 얻는다.
또한, 복호한 n비트 부호의 값이 32인 경우, 삼차원 데이터 복호 장치는, n비트 부호의 값 32를 예측 잔차의 값으로 설정한다.
또한, 삼차원 데이터 복호 장치는, 복호한 양자화 후의 예측 잔차를, 예를 들면, 삼차원 데이터 부호화 장치에 있어서의 처리와 반대의 처리에 의해, 부호없는 정수값으로부터 부호있는 정수값으로 변환한다. 이에 의해, 삼차원 데이터 복호 장치는, 예측 잔차를 엔트로피 부호화하는 경우에, 음의 정수의 발생을 고려하지 않고 생성한 비트 스트림을 적절히 복호할 수 있다. 또한, 삼차원 데이터 복호 장치는, 반드시 부호없는 정수값을 부호있는 정수값으로 변환할 필요는 없으며, 예를 들면 부호 비트를 별도로 엔트로피 부호화하여 생성된 비트 스트림을 복호하는 경우는, 부호 비트를 복호해도 된다.
삼차원 데이터 복호 장치는, 부호있는 정수값으로 변환한 양자화 후의 예측 잔차를, 역양자화 및 재구성에 의해 복호함으로써 복호값을 생성한다. 또한, 삼차원 데이터 복호 장치는, 생성한 복호값을, 복호 대상의 삼차원점 이후의 예측에 사용한다. 구체적으로는, 삼차원 데이터 복호 장치는, 양자화 후의 예측 잔차에, 복호한 양자화 스케일을 곱함으로써 역양자화값을 산출하고, 역양자화값과 예측값을 가산하여 복호값을 얻는다.
복호된 부호없는 정수값(부호없는 양자화값)은, 이하의 처리에 의해 부호있는 정수값으로 변환된다. 삼차원 데이터 복호 장치는, 복호된 부호없는 정수값 a2u의 LSB(least significant bit)가 1인 경우, 부호있는 정수값 a2q를 -((a2u+1)>>1)로 설정한다. 삼차원 데이터 복호 장치는, 부호없는 정수값 a2u의 LSB가 1이 아닌 경우, 부호있는 정수값 a2q를 (a2u>>1)로 설정한다.
마찬가지로, 삼차원 데이터 복호 장치는, 복호된 부호없는 정수값 b2u의 LSB가 1인 경우, 부호있는 정수값 b2q를 -((b2u+1)>>1)로 설정한다. 삼차원 데이터 복호 장치는, 부호없는 정수값 n2u의 LSB가 1이 아닌 경우, 부호있는 정수값 b2q를 (b2u>>1)로 설정한다.
또한, 삼차원 데이터 복호 장치에 의한 역양자화 및 재구성 처리의 상세는, 삼차원 데이터 부호화 장치에서의 역양자화 및 재구성 처리와 동일하다.
이하, 삼차원 데이터 복호 장치에 있어서의 처리의 흐름을 설명한다. 도 88은, 삼차원 데이터 복호 장치에 의한 삼차원 데이터 복호 처리의 플로차트이다. 우선, 삼차원 데이터 복호 장치는, 비트 스트림으로부터 위치 정보(geometry)를 복호한다(S5631). 예를 들면, 삼차원 데이터 복호 장치는, 8진 트리 표현을 사용하여 복호를 행한다.
다음에, 삼차원 데이터 복호 장치는, 비트 스트림으로부터 속성 정보(Attribute)를 복호한다(S5632). 예를 들면, 삼차원 데이터 복호 장치는, 복수 종류의 속성 정보를 복호하는 경우는, 복수 종류의 속성 정보를 차례로 복호해도 된다. 예를 들면, 삼차원 데이터 복호 장치는, 속성 정보로서 색과 반사율과 프레임 인덱스를 복호하는 경우는, 비트 스트림에 부가되어 있는 순서에 따라, 색의 부호화 결과와 반사율의 부호화 결과와 프레임 인덱스의 부호화 결과를 복호한다. 예를 들면, 비트 스트림에 있어서, 색의 부호화 결과 후에 반사율의 부호화 결과가 부가되어 있는 경우, 삼차원 데이터 복호 장치는, 색의 부호화 결과를 복호하고, 그 후에 반사율의 부호화 결과를 복호한다. 또한, 비트 스트림에 있어서, 반사율의 부호화 결과 후에 프레임 인덱스의 부호화 결과가 부가되어 있는 경우, 삼차원 데이터 복호 장치는, 반사율의 부호화 결과의 복호 후에 프레임 인덱스의 부호화 결과를 복호한다. 또한, 삼차원 데이터 복호 장치는, 비트 스트림에 부가되는 속성 정보의 부호화 결과를 어떠한 순서로 복호해도 된다.
또한, 삼차원 데이터 복호 장치는, 비트 스트림 내의 각 속성 정보의 부호화 데이터 개시 장소를 나타내는 정보를, 헤더 등을 복호함으로써 취득해도 된다. 이에 의해, 삼차원 데이터 복호 장치는, 복호가 필요한 속성 정보를 선택적으로 복호할 수 있으므로, 복호가 불필요한 속성 정보의 복호 처리를 생략할 수 있다. 따라서, 삼차원 데이터 복호 장치의 처리량을 삭감할 수 있다. 또한, 삼차원 데이터 복호 장치는, 복수 종류의 속성 정보를 병렬로 복호하고, 복호 결과를 하나의 삼차원점군에 통합해도 된다. 이에 의해, 삼차원 데이터 복호 장치는, 고속으로 복수 종류의 속성 정보를 복호할 수 있다.
다음에, 삼차원 데이터 복호 장치는, 복호한 삼차원점군을 각 삼차원점의 위치 정보와 함께 복호된 프레임 인덱스의 값을 기초로 복수의 프레임으로 분할한다(S5633). 삼차원 데이터 복호 장치는, 예를 들면 복호한 삼차원점 a의 프레임 인덱스가 0인 경우는, 프레임 0에 삼차원점 a의 위치 정보 및 속성 정보를 부가하고, 복호한 삼차원점 b의 프레임 인덱스가 1인 경우는, 프레임 1에 삼차원점 b의 위치 정보 및 속성 정보를 부가함으로써, 복호에 의해 얻어진 삼차원점군을 상이한 복수의 프레임에 각각 속하는 복수의 삼차원점군으로 분할한다.
도 89는, 속성 정보 복호 처리(S5632)의 플로차트이다. 우선, 삼차원 데이터 복호 장치는, LoD를 설정한다(S5641). 즉, 삼차원 데이터 복호 장치는, 복호된 위치 정보를 갖는 복수의 삼차원점의 각각을 복수의 LoD 중 어느 하나에 할당한다. 예를 들면, 이 할당 방법은, 삼차원 데이터 부호화 장치에서 사용된 할당 방법과 동일한 방법이다.
다음에, 삼차원 데이터 복호 장치는, LoD 단위의 루프를 개시한다(S5642). 즉, 삼차원 데이터 복호 장치는, LoD마다 단계 S5643~S5649의 처리를 반복하여 행한다.
다음에, 삼차원 데이터 복호 장치는, 삼차원점 단위의 루프를 개시한다(S5643). 즉, 삼차원 데이터 복호 장치는, 삼차원점마다 단계 S5644~S5648의 처리를 반복하여 행한다.
우선, 삼차원 데이터 복호 장치는, 처리 대상의 대상 삼차원점의 예측값의 산출에 사용할, 대상 삼차원점 주위에 존재하는 삼차원점인 복수의 주위점을 탐색한다(S5644). 다음에, 삼차원 데이터 복호 장치는, 복수의 주위점의 속성 정보의 값의 가중 평균을 산출하고, 얻어진 값을 예측값 P로 설정한다(S5645). 또한, 이들 처리는 삼차원 데이터 부호화 장치에 있어서의 처리와 동일하다.
다음에, 삼차원 데이터 복호 장치는, 비트 스트림으로부터 양자화값을 산술 복호한다(S5646). 또한, 삼차원 데이터 복호 장치는, 복호한 양자화값을 역양자화함으로써 역양자화값을 산출한다(S5647). 다음에, 삼차원 데이터 복호 장치는, 역양자화값에 예측값을 가산함으로써 복호값을 생성한다(S5648). 다음에, 삼차원 데이터 복호 장치는, 삼차원점 단위의 루프를 종료한다(S5649). 또한, 삼차원 데이터 복호 장치는, LoD 단위의 루프를 종료한다(S5650).
다음에, 본 실시 형태에 따른 삼차원 데이터 부호화 장치 및 삼차원 데이터 복호 장치의 구성을 설명한다. 도 90은, 본 실시 형태에 따른 삼차원 데이터 부호화 장치(5600)의 구성을 나타내는 블럭도이다. 이 삼차원 데이터 부호화 장치(5600)는, 프레임 결합부(5601), 위치 정보 부호화부(5602), 속성 정보 재할당부(5603), 속성 정보 부호화부(5604)를 구비한다.
프레임 결합부(5601)는, 복수의 프레임을 결합한다. 위치 정보 부호화부(5602)는, 입력점군에 포함되는 복수의 삼차원점의 위치 정보(geometry)를 부호화한다. 속성 정보 재할당부(5603)는, 입력점군에 포함되는 복수의 삼차원점의 속성 정보의 값을, 위치 정보의 부호화 및 복호 결과를 사용하여 재할당한다. 속성 정보 부호화부(5604)는, 재할당된 속성 정보(attribute)를 부호화한다. 또한, 삼차원 데이터 부호화 장치(5600)는, 부호화된 위치 정보 및 부호화된 속성 정보를 포함하는 비트 스트림을 생성한다.
도 91은, 본 실시 형태에 따른 삼차원 데이터 복호 장치(5610)의 구성을 나타내는 블럭도이다. 이 삼차원 데이터 복호 장치(5610)는, 위치 정보 복호부(5611), 속성 정보 복호부(5612), 프레임 분할부(5613)를 포함한다.
위치 정보 복호부(5611)는, 비트 스트림으로부터 복수의 삼차원점의 위치 정보(geometry)를 복호한다. 속성 정보 복호부(5612)는, 비트 스트림으로부터 복수의 삼차원점의 속성 정보(attribute)를 복호한다. 프레임 분할부(5613)는, 복호한 삼차원점군을 각 삼차원점의 위치 정보와 함께 복호된 프레임 인덱스의 값을 기초로 복수의 프레임으로 분할한다. 또한, 삼차원 데이터 복호 장치(5610)는, 복호한 위치 정보와 복호한 속성 정보를 결합함으로써 출력점군을 생성한다.
도 92는, 속성 정보의 구성을 나타내는 도면이다. 도 92의 (a)는, 압축된 속성 정보의 구성을 나타내는 도면이고, 도 92의 (b)는, 속성 정보의 헤더의 신택스의 일례를 나타내는 도면이고, 도 92의 (c)는, 속성 정보의 페이로드(데이터)의 신택스의 일례를 나타내는 도면이다.
도 92의 (b)에 나타내는 바와 같이, 속성 정보의 헤더의 신택스에 대해서 설명한다. apx_idx는, 대응하는 파라미터 세트의 ID를 나타낸다. apx_idx에서는, 프레임마다 파라미터 세트가 있는 경우, 복수의 ID가 나타내어져도 된다. offset은, 결합 데이터를 취득하기 위한 오프셋 위치를 나타낸다. other_attribute_information은, 예를 들면 양자화 파라미터의 차분값을 나타내는 QP 델타 등과 같이, 그 외의 속성 데이터를 나타낸다. combine_frame_flag는, 부호화 데이터가 프레임 결합되어 있는지의 여부를 나타내는 플래그이다. number_of _combine_frame은, 결합된 프레임의 수 N을 나타낸다. number_of _combine_frame은, SPS 또는 APS에 포함되어 있어도 된다.
refer_different_frame은, 부호화/복호 대상의 대상 삼차원점의 속성 정보를, 동일 프레임, 또는, 동일 프레임 및 동일 프레임 이외에 속하는 주위 삼차원점의 속성 정보를 사용하여 부호화/복호하는지를 나타내는 플래그이다. 예를 들면, 하기와 같은 값의 할당을 생각할 수 있다. refer_different_frame이 0인 경우, 삼차원 데이터 부호화 장치 또는 삼차원 데이터 복호 장치는, 대상 삼차원점과 동일 프레임 내의 주위 삼차원점의 속성 정보를 사용하여 대상 삼차원점의 속성 정보를 부호화/복호한다. 이 경우, 삼차원 데이터 부호화 장치 또는 삼차원 데이터 복호 장치는, 대상 삼차원점과 상이한 프레임 내의 주위 삼차원점의 속성 정보를 사용하여 대상 삼차원점의 속성 정보를 부호화/복호하지 않는다.
한편, refer_different_frame이 1인 경우, 삼차원 데이터 부호화 장치 또는 삼차원 데이터 복호 장치는, 대상 삼차원점이 속하는 프레임과 동일 프레임 및 동일 프레임 이외의 주위 삼차원점의 속성 정보를 사용하여 대상 삼차원점의 속성 정보를 부호화/복호한다. 즉, 삼차원 데이터 부호화 장치 또는 삼차원 데이터 복호 장치는, 대상 삼차원점이 속하는 프레임과 동일 프레임에 속하는지의 여부에 상관없이, 주위 삼차원점의 속성 정보를 사용하여 대상 삼차원점의 속성 정보를 부호화/복호한다.
대상 삼차원점의 속성 정보로서, 색 정보 또는 반사율 정보를 주위 삼차원점의 속성 정보를 사용하여 부호화하는 예를 나타냈지만, 대상 삼차원점의 프레임 인덱스를 주위 삼차원점의 프레임 인덱스를 사용하여 부호화해도 된다. 삼차원 데이터 부호화 장치는, 예를 들면, 복수 프레임을 결합한 때에 각 삼차원점에 부가한 프레임 인덱스를 각 삼차원점의 속성 정보로 하고, 본 개시에서 설명한 예측 부호화 방법을 사용하여 부호화해도 상관없다. 예를 들면, 삼차원 데이터 부호화 장치는, 삼차원점 A의 프레임 인덱스의 예측값을, 삼차원점 A의 주위 삼차원점 B, C, D의 프레임 인덱스의 값으로부터 산출하고, 예측 잔차를 부호화해도 상관없다. 이에 의해, 삼차원 데이터 부호화 장치는, 프레임 인덱스를 부호화하기 위한 비트량을 삭감할 수 있어, 부호화 효율을 향상시킬 수 있다.
도 93은, 부호화 데이터에 대해서 설명하기 위한 도면이다.
점군 데이터가 속성 정보를 포함하는 경우, 속성 정보가 프레임 결합되어도 된다. 속성 정보는, 위치 정보를 참조하여 부호화 또는 복호된다. 참조되는 위치 정보는, 프레임 결합하기 전의 위치 정보여도 되고, 프레임 결합한 후의 위치 정보여도 된다. 위치 정보의 결합 프레임의 수와 속성 정보의 결합 프레임의 수는, 같아도 되고, 독립되어 있어, 상이해도 된다.
도 93에서의 괄호 안의 수치는, 프레임을 나타내고 있으며, 예를 들면 1인 경우, 프레임 1의 정보인 것을 나타내고, 1-4인 경우, 결합된 프레임 1~4의 정보인 것을 나타낸다. 또한, G는, 위치 정보를 나타내고, A는, 속성 정보를 나타낸다. Frame_idx1은, 프레임 1의 프레임 인덱스이다.
도 93의 (a)는, refer_different_frame이 1인 경우의 예를 나타낸다. refer_different_frame이 1인 경우, 삼차원 데이터 부호화 장치 또는 삼차원 데이터 복호 장치는, G(1-4)의 정보를 기초로 A(1-4)를 부호화 또는 복호한다. 삼차원 데이터 복호 장치는, 복호 시에, G(1-4)와 함께 복호된 Frame_idx1-4를 사용하여 G(1-4)와 A(1-4)를 Frame 1-4로 분할한다. 또한, A(1-4)를 부호화 또는 복호하는 경우, 삼차원 데이터 부호화 장치 또는 삼차원 데이터 복호 장치는, A(1-4) 외의 속성 정보를 참조해도 된다. 즉, 삼차원 데이터 부호화 장치 또는 삼차원 데이터 복호 장치는, A(1)을 부호화 또는 복호하는 경우, 다른 A(1)을 참조해도 되고, A(2-4)를 참조해도 된다. 또한, 화살표는, 정보의 참조원과 참조처를 나타내고, 화살표의 시작은 참조원을 나타내고, 화살표의 끝은 참조처를 나타낸다.
도 93의 (b)는, refer_different_frame이 0인 경우의 예를 나타낸다. refer_different_frame이 0인 경우, refer_different_frame이 1인 경우와는 달리, 삼차원 데이터 부호화 장치 또는 삼차원 데이터 복호 장치는, 상이한 프레임의 속성 정보를 참조하지 않는다. 즉, 삼차원 데이터 부호화 장치 또는 삼차원 데이터 복호 장치는, A(1)을 부호화 또는 복호하는 경우, 다른 A(1)을 참조하고, A(2-4)를 참조하지 않는다.
도 93의 (c)는, refer_different_frame이 0인 경우의 다른 예를 나타낸다. 이 경우에는, 위치 정보는, 결합된 프레임으로 부호화되어 있지만, 속성 정보는, 프레임마다 부호화되어 있다. 이 때문에, 삼차원 데이터 부호화 장치 또는 삼차원 데이터 복호 장치는, A(1)을 부호화 또는 복호하는 경우, 다른 A(1)을 참조한다. 마찬가지로, 속성 정보를 부호화 또는 복호하는 경우, 같은 프레임에 속하는 다른 속성 정보를 참조한다. 또한, A(1-4)는, 각각의 APS를 헤더에 부가해도 된다.
이상과 같이, 본 실시 형태에 따른 삼차원 데이터 부호화 장치는, 도 94에 나타내는 처리를 행한다. 삼차원 데이터 부호화 장치는, 제1 점군 데이터와 제2 점군 데이터가 결합된 제3 점군 데이터이며, 제3 점군 데이터에 포함되는 복수의 삼차원점의 각각의 위치 정보와, 복수의 삼차원점의 각각이 제1 점군 데이터와 제2 점군 데이터 중 어디에 속하는지를 나타내는 식별 정보를 포함하는 제3 점군 데이터를 취득한다(S5661). 다음에, 삼차원 데이터 부호화 장치는, 취득된 제3 점군 데이터를 부호화함으로써 부호화 데이터를 생성한다(S5662). 삼차원 데이터 부호화 장치는, 부호화 데이터의 생성에 있어서, 복수의 삼차원점의 각각에 대해서, 당해 삼차원점의 식별 정보를 당해 삼차원점의 속성 정보로서 부호화한다.
이에 의하면, 당해 삼차원 데이터 부호화 방법은, 복수의 점군 데이터를 묶어서 부호화함으로써 부호화 효율을 향상시킬 수 있다.
예를 들면, 부호화 데이터의 생성(S5662)에서는, 복수의 삼차원점 중 제1 삼차원점 주위의 제2 삼차원점의 속성 정보를 사용하여, 제1 삼차원점의 속성 정보를 부호화한다.
예를 들면, 제1 삼차원점의 속성 정보는, 제1 삼차원점이 제1 점군 데이터에 속하는 것을 나타내는 제1 식별 정보를 포함한다. 또한, 제2 삼차원점의 속성 정보는, 제2 삼차원점이 제2 점군 데이터에 속하는 것을 나타내는 제2 식별 정보를 포함한다.
예를 들면, 부호화 데이터의 생성(S5662)에서는, 제1 삼차원점의 속성 정보의 예측값을 제2 삼차원점의 속성 정보를 사용하여 산출하고, 제1 삼차원점의 속성 정보와, 예측값의 차분인 예측 잔차를 산출하고, 예측 잔차를 포함하는 부호화 데이터를 생성한다.
예를 들면, 취득(S5661)에서는, 제1 점군 데이터와 제2 점군 데이터를 결합하는 것에 의해 제3 점군 데이터를 생성함으로써, 제3 점군 데이터를 취득한다.
예를 들면, 부호화 데이터는, 식별 정보를, 식별 정보와 상이한 다른 속성 정보와 같은 데이터 형식으로 포함한다.
예를 들면, 삼차원 데이터 부호화 장치는, 프로세서와 메모리를 구비하고, 프로세서는, 메모리를 사용하여, 상기의 처리를 행한다.
또한, 본 실시 형태에 따른 삼차원 데이터 복호 장치는, 도 95에 나타내는 처리를 행한다. 삼차원 데이터 복호 장치는, 부호화 데이터를 취득한다(S5671). 다음에, 삼차원 데이터 복호 장치는, 부호화 데이터를 복호함으로써, 제1 점군 데이터와 제2 점군 데이터가 결합된 제3 점군 데이터에 포함되는 복수의 삼차원점의 각각의 위치 정보 및 속성 정보를 취득한다(S5672). 또한, 속성 정보는, 속성 정보에 대응하는 삼차원점이 제1 점군 데이터와 제2 점군 데이터 중 어디에 속하는지를 나타내는 식별 정보를 포함한다.
이에 의하면, 삼차원 데이터 복호 장치는, 복수의 점군 데이터를 묶어서 부호화함으로써 부호화 효율을 향상시킨 부호화 데이터를 복호할 수 있다.
예를 들면, 취득(S5671)에서는, 복수의 삼차원점 중 제1 삼차원점 주위의 제2 삼차원점의 속성 정보를 사용하여, 제1 삼차원점의 속성 정보를 복호한다.
예를 들면, 제1 삼차원점의 속성 정보는, 제1 삼차원점이 제1 점군 데이터에 속하는 것을 나타내는 제1 식별 정보를 포함한다. 또한, 제2 삼차원점의 속성 정보는, 제2 삼차원점이 제2 점군 데이터에 속하는 것을 나타내는 제2 식별 정보를 포함한다.
예를 들면, 부호화 데이터는, 예측 잔차를 포함한다. 그리고, 부호화 데이터의 복호(S5672)에서는, 제1 삼차원점의 속성 정보의 예측값을 제2 삼차원점의 속성 정보를 사용하여 산출하고, 예측값과 예측 잔차를 가산함으로써, 제1 삼차원점의 속성 정보를 산출한다.
예를 들면, 삼차원 데이터 복호 장치는, 또한, 식별 정보를 사용하여, 제3 삼차원점군 데이터를, 제1 점군 데이터와 제2 점군 데이터로 분할한다.
예를 들면, 부호화 데이터는, 식별 정보를, 식별 정보와 상이한 다른 속성 정보와 같은 데이터 형식으로 포함한다.
예를 들면, 삼차원 데이터 복호 장치는, 프로세서와 메모리를 구비하고, 프로세서는, 메모리를 사용하여, 상기의 처리를 행한다.
이상, 본 개시의 실시 형태에 따른 삼차원 데이터 부호화 장치 및 삼차원 데이터 복호 장치 등에 대해서 설명했지만, 본 개시는, 이 실시 형태에 한정되는 것은 아니다.
또한, 상기 실시 형태에 따른 삼차원 데이터 부호화 장치 및 삼차원 데이터 복호 장치 등에 포함되는 각 처리부는 전형적으로는 집적회로인 LSI로서 실현된다. 이들은 개별적으로 1칩화되어도 되고, 일부 또는 전부를 포함하도록 1칩화되어도 된다.
또한, 집적회로화는 LSI에 한정하는 것은 아니며, 전용 회로 또는 범용 프로세서로 실현해도 된다. LSI 제조 후에 프로그램하는 것이 가능한 FPGA(Field Programmable Gate Array), 또는 LSI 내부의 회로 셀의 접속이나 설정을 재구성 가능한 리컨피규러블·프로세서를 사용해도 된다.
또한, 상기 각 실시 형태에 있어서, 각 구성 요소는, 전용 하드웨어로 구성되거나, 각 구성 요소에 적합한 소프트웨어 프로그램을 실행함으로써 실현되어도 된다. 각 구성 요소는, CPU 또는 프로세서 등의 프로그램 실행부가, 하드 디스크 또는 반도체 메모리 등의 기록 매체에 기록된 소프트웨어 프로그램을 읽어내어 실행함으로써 실현되어도 된다.
또한, 본 개시는, 삼차원 데이터 부호화 장치 및 삼차원 데이터 복호 장치 등에 의해 실행되는 삼차원 데이터 부호화 방법 또는 삼차원 데이터 복호 방법 등으로서 실현되어도 된다.
또한, 블럭도에 있어서의 기능 블록의 분할은 일례이며, 복수의 기능 블록을 하나의 기능 블록으로서 실현하거나, 하나의 기능 블록을 복수로 분할하거나, 일부의 기능을 다른 기능 블록으로 옮겨도 된다. 또한, 유사한 기능을 갖는 복수의 기능 블록의 기능을 단일의 하드웨어 또는 소프트웨어가 병렬 또는 시분할로 처리해도 된다.
또한, 플로차트에 있어서의 각 단계가 실행되는 순서는, 본 개시를 구체적으로 설명하기 위해 예시하기 위한 것이며, 상기 이외의 순서여도 된다. 또한, 상기 단계의 일부가, 다른 단계와 동시(병렬)에 실행되어도 된다.
이상, 하나 또는 복수의 양태에 따른 삼차원 데이터 부호화 장치 및 삼차원 데이터 복호 장치 등에 대해서, 실시 형태에 의거하여 설명했지만, 본 개시는, 이 실시 형태에 한정되는 것은 아니다. 본 개시의 취지를 일탈하지 않는 한, 당업자가 생각해낸 각종 변형을 본 실시 형태에 실시한 것이나, 상이한 실시 형태에 있어서의 구성 요소를 조합하여 구축되는 형태도, 하나 또는 복수의 양태의 범위 내에 포함되어도 된다.
본 개시는, 삼차원 데이터 부호화 장치 및 삼차원 데이터 복호 장치에 적용할 수 있다.
4601: 삼차원 데이터 부호화 시스템
4602: 삼차원 데이터 복호 시스템
4603: 센서 단말 4604: 외부 접속부
4611: 점군 데이터 생성 시스템 4612: 제시부
4613: 부호화부 4614: 다중화부
4615: 입출력부 4616: 제어부
4617: 센서 정보 취득부 4618: 점군 데이터 생성부
4621: 센서 정보 취득부 4622: 입출력부
4623: 역다중화부 4624: 복호부
4625: 제시부 4626: 사용자 인터페이스
4627: 제어부 4630: 제1 부호화부
4631: 위치 정보 부호화부 4632: 속성 정보 부호화부
4633: 부가 정보 부호화부 4634: 다중화부
4640: 제1 복호부 4641: 역다중화부
4642: 위치 정보 복호부 4643: 속성 정보 복호부
4644: 부가 정보 복호부 4650: 제2 부호화부
4651: 부가 정보 생성부 4652: 위치 화상 생성부
4653: 속성 화상 생성부 4654: 영상 부호화부
4655: 부가 정보 부호화부 4656: 다중화부
4660: 제2 복호부 4661: 역다중화부
4662: 영상 복호부 4663: 부가 정보 복호부
4664: 위치 정보 생성부 4665: 속성 정보 생성부
4801: 부호화부 4802: 다중화부
4910: 제1 부호화부 4911: 분할부
4912: 위치 정보 부호화부 4913: 속성 정보 부호화부
4914: 부가 정보 부호화부 4915: 다중화부
4920: 제1 복호부 4921: 역다중화부
4922: 위치 정보 복호부 4923: 속성 정보 복호부
4924: 부가 정보 복호부 4925: 결합부
4931: 슬라이스 분할부 4932: 위치 정보 타일 분할부
4933: 속성 정보 타일 분할부 4941: 위치 정보 타일 결합부
4942: 속성 정보 타일 결합부 4943: 슬라이스 결합부
5410: 부호화부 5411: 분할부
5412: 위치 정보 부호화부 5413: 속성 정보 부호화부
5414: 부가 정보 부호화부 5415: 다중화부
5421: 타일 분할부 5422: 슬라이스 분할부
5431, 5441: 프레임 인덱스 생성부
5432, 5442: 엔트로피 부호화부
5450: 복호부 5451: 역다중화부
5452: 위치 정보 복호부 5453: 속성 정보 복호부
5454: 부가 정보 복호부 5455: 결합부
5461, 5471: 엔트로피 복호부
5462, 5472: 프레임 인덱스 취득부
5600: 삼차원 데이터 부호화 장치
5601: 프레임 결합부 5602: 위치 정보 부호화부
5603: 속성 정보 재할당부 5604: 속성 정보 부호화부
5610: 삼차원 데이터 복호 장치 5611: 위치 정보 복호부
5612: 속성 정보 복호부 5613: 프레임 분할부

Claims (14)

  1. 제1 점군 데이터와 제2 점군 데이터가 결합된 제3 점군 데이터이며, 상기 제3 점군 데이터에 포함되는 복수의 삼차원점의 각각의 위치 정보와, 상기 복수의 삼차원점의 각각이 상기 제1 점군 데이터와 상기 제2 점군 데이터 중 어디에 속하는지를 나타내는 식별 정보를 포함하는 제3 점군 데이터를 취득하고,
    취득된 상기 제3 점군 데이터를 부호화함으로써 부호화 데이터를 생성하고,
    상기 생성에서는, 상기 복수의 삼차원점의 각각에 대해서, 당해 삼차원점의 식별 정보를 당해 삼차원점의 속성 정보로서 부호화하는,
    삼차원 데이터 부호화 방법.
  2. 청구항 1에 있어서,
    상기 생성에서는, 상기 복수의 삼차원점 중 제1 삼차원점 주위의 제2 삼차원점의 속성 정보를 사용하여, 상기 제1 삼차원점의 속성 정보를 부호화하는, 삼차원 데이터 부호화 방법.
  3. 청구항 2에 있어서,
    상기 제1 삼차원점의 속성 정보는, 상기 제1 삼차원점이 상기 제1 점군 데이터에 속하는 것을 나타내는 제1 식별 정보를 포함하고,
    상기 제2 삼차원점의 속성 정보는, 상기 제2 삼차원점이 상기 제2 점군 데이터에 속하는 것을 나타내는 제2 식별 정보를 포함하는, 삼차원 데이터 부호화 방법.
  4. 청구항 2 또는 청구항 3에 있어서,
    상기 생성에서는,
    상기 제1 삼차원점의 속성 정보의 예측값을 상기 제2 삼차원점의 속성 정보를 사용하여 산출하고,
    상기 제1 삼차원점의 속성 정보와, 상기 예측값의 차분인 예측 잔차를 산출하고,
    상기 예측 잔차를 포함하는 부호화 데이터를 생성하는, 삼차원 데이터 부호화 방법.
  5. 청구항 1 내지 청구항 4 중 어느 한 항에 있어서,
    상기 취득에서는, 상기 제1 점군 데이터와 상기 제2 점군 데이터를 결합하는 것에 의해 상기 제3 점군 데이터를 생성함으로써, 상기 제3 점군 데이터를 취득하는, 삼차원 데이터 부호화 방법.
  6. 청구항 1 내지 청구항 5 중 어느 한 항에 있어서,
    상기 부호화 데이터는, 상기 식별 정보를, 상기 식별 정보와 상이한 다른 속성 정보와 같은 데이터 형식으로 포함하는, 삼차원 데이터 부호화 방법.
  7. 부호화 데이터를 취득하고,
    상기 부호화 데이터를 복호함으로써, 제1 점군 데이터와 제2 점군 데이터가 결합된 제3 점군 데이터에 포함되는 복수의 삼차원점의 각각의 위치 정보 및 속성 정보를 취득하고,
    상기 속성 정보는, 상기 속성 정보에 대응하는 삼차원점이 상기 제1 점군 데이터와 상기 제2 점군 데이터 중 어디에 속하는지를 나타내는 식별 정보를 포함하는,
    삼차원 데이터 복호 방법.
  8. 청구항 7에 있어서,
    상기 취득에서는, 상기 복수의 삼차원점 중 제1 삼차원점 주위의 제2 삼차원점의 속성 정보를 사용하여, 상기 제1 삼차원점의 속성 정보를 복호하는, 삼차원 데이터 복호 방법.
  9. 청구항 8에 있어서,
    상기 제1 삼차원점의 속성 정보는, 상기 제1 삼차원점이 상기 제1 점군 데이터에 속하는 것을 나타내는 제1 식별 정보를 포함하고,
    상기 제2 삼차원점의 속성 정보는, 상기 제2 삼차원점이 상기 제2 점군 데이터에 속하는 것을 나타내는 제2 식별 정보를 포함하는, 삼차원 데이터 복호 방법.
  10. 청구항 8 또는 청구항 9에 있어서,
    상기 부호화 데이터는, 예측 잔차를 포함하고,
    상기 부호화 데이터의 복호에서는,
    상기 제1 삼차원점의 속성 정보의 예측값을 상기 제2 삼차원점의 속성 정보를 사용하여 산출하고,
    상기 예측값과 상기 예측 잔차를 가산함으로써, 상기 제1 삼차원점의 속성 정보를 산출하는, 삼차원 데이터 복호 방법.
  11. 청구항 7 내지 청구항 10 중 어느 한 항에 있어서,
    또한,
    상기 식별 정보를 사용하여, 상기 제3 점군 데이터를, 상기 제1 점군 데이터와 상기 제2 점군 데이터로 분할하는, 삼차원 데이터 복호 방법.
  12. 청구항 7 내지 청구항 11 중 어느 한 항에 있어서,
    상기 부호화 데이터는, 상기 식별 정보를, 상기 식별 정보와 상이한 다른 속성 정보와 같은 데이터 형식으로 포함하는, 삼차원 데이터 복호 방법.
  13. 프로세서와,
    메모리를 구비하고,
    상기 프로세서는, 상기 메모리를 사용하여,
    제1 점군 데이터와 제2 점군 데이터가 결합된 제3 점군 데이터이며, 상기 제3 점군 데이터에 포함되는 복수의 삼차원점의 각각의 위치 정보와, 상기 복수의 삼차원점의 각각이 상기 제1 점군 데이터와 상기 제2 점군 데이터 중 어디에 속하는지를 나타내는 식별 정보를 포함하는 제3 점군 데이터를 취득하고,
    취득된 상기 제3 점군 데이터를 부호화함으로써 부호화 데이터를 생성하고,
    상기 생성에서는, 상기 복수의 삼차원점의 각각에 대해서, 당해 삼차원점의 식별 정보를 당해 삼차원점의 속성 정보로서 부호화하는,
    삼차원 데이터 부호화 장치.
  14. 프로세서와,
    메모리를 구비하고,
    상기 프로세서는, 상기 메모리를 사용하여,
    부호화 데이터를 취득하고,
    상기 부호화 데이터를 복호함으로써, 제1 점군 데이터와 제2 점군 데이터가 결합된 제3 점군 데이터에 포함되는 복수의 삼차원점의 각각의 위치 정보 및 속성 정보를 취득하고,
    상기 속성 정보는, 상기 속성 정보에 대응하는 삼차원점이 상기 제1 점군 데이터와 상기 제2 점군 데이터 중 어디에 속하는지를 나타내는 식별 정보를 포함하는,
    삼차원 데이터 복호 장치.
KR1020217009099A 2018-10-02 2019-10-02 삼차원 데이터 부호화 방법, 삼차원 데이터 복호 방법, 삼차원 데이터 부호화 장치, 및 삼차원 데이터 복호 장치 KR102662068B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020247013796A KR20240058994A (ko) 2018-10-02 2019-10-02 삼차원 데이터 부호화 방법, 삼차원 데이터 복호 방법, 삼차원 데이터 부호화 장치, 및 삼차원 데이터 복호 장치

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201862740131P 2018-10-02 2018-10-02
US62/740,131 2018-10-02
PCT/JP2019/038881 WO2020071414A1 (ja) 2018-10-02 2019-10-02 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020247013796A Division KR20240058994A (ko) 2018-10-02 2019-10-02 삼차원 데이터 부호화 방법, 삼차원 데이터 복호 방법, 삼차원 데이터 부호화 장치, 및 삼차원 데이터 복호 장치

Publications (2)

Publication Number Publication Date
KR20210066822A true KR20210066822A (ko) 2021-06-07
KR102662068B1 KR102662068B1 (ko) 2024-05-03

Family

ID=70054849

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020247013796A KR20240058994A (ko) 2018-10-02 2019-10-02 삼차원 데이터 부호화 방법, 삼차원 데이터 복호 방법, 삼차원 데이터 부호화 장치, 및 삼차원 데이터 복호 장치
KR1020217009099A KR102662068B1 (ko) 2018-10-02 2019-10-02 삼차원 데이터 부호화 방법, 삼차원 데이터 복호 방법, 삼차원 데이터 부호화 장치, 및 삼차원 데이터 복호 장치

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020247013796A KR20240058994A (ko) 2018-10-02 2019-10-02 삼차원 데이터 부호화 방법, 삼차원 데이터 복호 방법, 삼차원 데이터 부호화 장치, 및 삼차원 데이터 복호 장치

Country Status (11)

Country Link
US (3) US11461934B2 (ko)
EP (1) EP3862972A4 (ko)
JP (2) JP7358376B2 (ko)
KR (2) KR20240058994A (ko)
CN (1) CN112368744A (ko)
AU (1) AU2019355489A1 (ko)
BR (1) BR112021005557A2 (ko)
CA (1) CA3114322A1 (ko)
MX (1) MX2021003384A (ko)
SG (1) SG11202102914PA (ko)
WO (1) WO2020071414A1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10979730B2 (en) * 2019-03-20 2021-04-13 Tencent America LLC Techniques and apparatus for interframe point cloud attribute coding
JP2022539762A (ja) * 2019-06-28 2022-09-13 エルジー エレクトロニクス インコーポレイティド ポイントクラウドデータ処理装置及び方法
WO2022004682A1 (ja) * 2020-06-29 2022-01-06 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ符号化方法及び三次元データ符号化装置
WO2022061785A1 (zh) * 2020-09-25 2022-03-31 Oppo广东移动通信有限公司 点云编码方法、点云解码方法及相关装置
CN116670716A (zh) * 2021-01-14 2023-08-29 索尼集团公司 信息处理装置和方法
WO2023127052A1 (ja) * 2021-12-27 2023-07-06 日本電信電話株式会社 復号装置、符号化装置、復号プログラム、符号化プログラム、復号方法および符号化方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014020663A1 (ja) 2012-07-30 2014-02-06 三菱電機株式会社 地図表示装置

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11215496A (ja) * 1998-01-29 1999-08-06 Fujitsu Ltd 3次元データ圧縮装置、3次元データ復元装置および記録媒体
CA2489364C (en) * 2002-07-10 2010-06-01 Harman Becker Automotive Systems Gmbh System for generating three-dimensional electronic models of objects
JP2007004578A (ja) * 2005-06-24 2007-01-11 Nippon Telegr & Teleph Corp <Ntt> 三次元形状取得方法、三次元形状取得装置、及びプログラムの記録媒体
JP2011204118A (ja) * 2010-03-26 2011-10-13 Konica Minolta Opto Inc 三次元画像作成システムおよび三次元画像作成方法
JP6119225B2 (ja) * 2012-12-11 2017-04-26 株式会社豊田中央研究所 交差点道路境界検出装置及びプログラム
EP3264636B1 (en) * 2015-02-27 2023-11-08 Panasonic Intellectual Property Corporation of America Signal generation method, signal generation device and program
WO2016157428A1 (ja) * 2015-03-31 2016-10-06 パイオニア株式会社 計測装置、計測方法、及び、プログラム
JP2017050731A (ja) * 2015-09-02 2017-03-09 日本電信電話株式会社 動画像フレーム補間装置、動画像フレーム補間方法及び動画像フレーム補間プログラム
US10223810B2 (en) * 2016-05-28 2019-03-05 Microsoft Technology Licensing, Llc Region-adaptive hierarchical transform and entropy coding for point cloud compression, and corresponding decompression
CN114359487A (zh) * 2016-09-16 2022-04-15 松下电器(美国)知识产权公司 三维数据制作方法以及三维数据制作装置
US11514613B2 (en) * 2017-03-16 2022-11-29 Samsung Electronics Co., Ltd. Point cloud and mesh compression using image/video codecs
US10460180B2 (en) * 2017-04-20 2019-10-29 GM Global Technology Operations LLC Systems and methods for visual classification with region proposals
US10783668B2 (en) * 2017-12-22 2020-09-22 Samsung Electronics Co., Ltd. Handling duplicate points in point cloud compression
CN112041889A (zh) * 2018-02-08 2020-12-04 松下电器(美国)知识产权公司 三维数据编码方法、三维数据解码方法、三维数据编码装置、以及三维数据解码装置
US11146284B2 (en) * 2018-05-03 2021-10-12 Sap Se Space-filling curve dictionary-based compression
CN112424833A (zh) * 2018-07-13 2021-02-26 松下电器(美国)知识产权公司 三维数据编码方法、三维数据解码方法、三维数据编码装置、以及三维数据解码装置
CN112334949A (zh) * 2018-10-09 2021-02-05 松下电器(美国)知识产权公司 三维数据编码方法、三维数据解码方法、三维数据编码装置、以及三维数据解码装置
US11373338B2 (en) * 2019-01-09 2022-06-28 Samsung Electronics Co., Ltd. Image padding in video-based point-cloud compression CODEC

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014020663A1 (ja) 2012-07-30 2014-02-06 三菱電機株式会社 地図表示装置

Also Published As

Publication number Publication date
MX2021003384A (es) 2021-05-27
US20220414941A1 (en) 2022-12-29
CA3114322A1 (en) 2020-04-09
BR112021005557A2 (pt) 2021-06-29
EP3862972A1 (en) 2021-08-11
KR20240058994A (ko) 2024-05-03
WO2020071414A1 (ja) 2020-04-09
JPWO2020071414A1 (ja) 2021-09-02
KR102662068B1 (ko) 2024-05-03
SG11202102914PA (en) 2021-04-29
JP7358376B2 (ja) 2023-10-10
JP2023175879A (ja) 2023-12-12
US11461934B2 (en) 2022-10-04
US20210142523A1 (en) 2021-05-13
WO2020071414A8 (ja) 2020-11-12
US20230360276A1 (en) 2023-11-09
CN112368744A (zh) 2021-02-12
AU2019355489A1 (en) 2021-04-15
US11756235B2 (en) 2023-09-12
EP3862972A4 (en) 2021-12-01

Similar Documents

Publication Publication Date Title
US11423581B2 (en) Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
US11210814B2 (en) Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
US11488327B2 (en) Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
US11470352B2 (en) Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
US20210295569A1 (en) Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
KR102662068B1 (ko) 삼차원 데이터 부호화 방법, 삼차원 데이터 복호 방법, 삼차원 데이터 부호화 장치, 및 삼차원 데이터 복호 장치
WO2020059826A1 (ja) 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
WO2020032248A1 (ja) 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
US11936919B2 (en) Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
US20220343551A1 (en) Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device

Legal Events

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