KR20220027847A - 정보 처리 장치 및 방법 - Google Patents

정보 처리 장치 및 방법 Download PDF

Info

Publication number
KR20220027847A
KR20220027847A KR1020217041116A KR20217041116A KR20220027847A KR 20220027847 A KR20220027847 A KR 20220027847A KR 1020217041116 A KR1020217041116 A KR 1020217041116A KR 20217041116 A KR20217041116 A KR 20217041116A KR 20220027847 A KR20220027847 A KR 20220027847A
Authority
KR
South Korea
Prior art keywords
layering
point
attribute information
layer
unit
Prior art date
Application number
KR1020217041116A
Other languages
English (en)
Inventor
사토루 구마
오지 나카가미
고지 야노
히로유키 야스다
츠요시 가토
Original Assignee
소니그룹주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 소니그룹주식회사 filed Critical 소니그룹주식회사
Publication of KR20220027847A publication Critical patent/KR20220027847A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/40Tree coding, e.g. quadtree, octree
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/005Tree description, e.g. octree, quadtree
    • 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/001Model-based coding, e.g. wire frame
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/004Predictors, e.g. intraframe, interframe coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/187Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scalable video layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

본 개시는 부호화 효율의 저감을 억제할 수 있도록 하는 정보 처리 장치 및 방법에 관한 것이다. 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 그 포인트별 속성 정보를 처리하는 정보 처리 장치이며, 예측 포인트와 참조 포인트로 분류된 포인트 중 그 참조 포인트의 속성 정보를 사용하여 도출된 예측 포인트의 속성 정보의 예측값과 그 예측 포인트의 속성 정보의 차분값을 도출하는 처리를, 그 참조 포인트에 대하여 재귀적으로 반복함에 따른 속성 정보의 계층화 시에, 제1 계층을 제1 계층화 방법을 사용하여 계층화를 행하고, 그 제1 계층과 다른 제2 계층을 그 제1 계층화 방법과 다른 제2 계층화 방법을 사용하여 계층화를 행한다. 본 개시는, 예를 들어 정보 처리 장치, 화상 처리 장치, 부호화 장치, 복호 장치, 전자 기기, 정보 처리 방법 또는 프로그램 등에 적용할 수 있다.

Description

정보 처리 장치 및 방법
본 개시는 정보 처리 장치 및 방법에 관한 것으로, 특히 부호화 효율의 저감을 억제할 수 있도록 한 정보 처리 장치 및 방법에 관한 것이다.
종래, 예를 들어 포인트 클라우드(Point cloud)와 같은 3차원 구조를 나타내는 3D 데이터의 부호화 방법이 고려되었다(예를 들어 비특허문헌 1 참조). 포인트 클라우드의 데이터는, 각 포인트의 지오메트리 데이터(위치 정보라고도 칭함) 및 애트리뷰트 데이터(속성 정보라고도 칭함)에 의해 구성된다. 따라서 포인트 클라우드의 부호화는, 그 지오메트리 데이터와 애트리뷰트 데이터의 각각에 대하여 행해진다. 애트리뷰트 데이터의 부호화 방법으로서 여러 가지 방법이 제안되어 있다. 예를 들어, Lifting이라는 기술을 사용하여 행하는 것이 제안되었다(예를 들어 비특허문헌 2 참조). 또한, 애트리뷰트 데이터를 스케일러블하게 복호할 수 있도록 하는 방법도 제안되었다(예를 들어, 비특허문헌 3 참조).
R. Mekuria, Student Member IEEE, K. Blom, P. Cesar., Member, IEEE, "Design, Implementation and Evaluation of a Point Cloud Codec for Tele-Immersive Video", tcsvt_paper_submitted_february.pdf Khaled Mammou, Alexis Tourapis, Jungsun Kim, Fabrice Robinet, Valery Valentin, Yeping Su, "Lifting Scheme for Lossy Attribute Encoding in TMC1", ISO/IEC JTC1/SC29/WG11 MPEG2018/m42640, April 2018, San Diego, US Ohji Nakagami, Satoru Kuma, "[G-PCC] Spatial scalability support for G-PCC", ISO/IEC JTC1/SC29/WG11 MPEG2019/m47352, March 2019, Geneva, CH
그러나, 각 방법에는 각각 특징이 있으며, 어느 방법도, 어떠한 경우에도 최적이라고는 할 수 없다. 예를 들어, 비특허문헌 3에 기재된 기술을 적용한 방법의 경우, 비특허문헌 2에 기재된 Lifting을 적용한 방법에서는 곤란하였던 속성 정보의 스케일러블한 복호를 행할 수 있다. 그러나, 일반적으로, 비특허문헌 3에 기재된 기술을 적용한 방법의 경우 쪽이, 비특허문헌 2에 기재된 Lifting을 적용한 방법의 경우보다 부호화 효율이 저감될 우려가 있었다.
본 개시는 이러한 상황을 감안하여 이루어진 것이며, 부호화 효율의 저감을 억제할 수 있도록 하는 것이다.
본 기술의 일 측면의 정보 처리 장치는, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 상기 포인트별 속성 정보를 처리하는 정보 처리 장치이며, 예측 포인트와 참조 포인트로 분류된 포인트 중 상기 참조 포인트의 상기 속성 정보를 사용하여 도출된 상기 예측 포인트의 상기 속성 정보의 예측값과 상기 예측 포인트의 상기 속성 정보의 차분값을 도출하는 처리를, 상기 참조 포인트에 대하여 재귀적으로 반복함으로써, 상기 속성 정보의 계층화를 행하는 계층화부를 구비하고, 상기 계층화부는, 제1 계층을 제1 계층화 방법을 사용하여 계층화를 행하고, 상기 제1 계층과 다른 제2 계층을 상기 제1 계층화 방법과 다른 제2 계층화 방법을 사용하여 계층화를 행하는 정보 처리 장치이다.
본 기술의 일 측면의 정보 처리 방법은, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 상기 포인트별 속성 정보에 대하여, 예측 포인트와 참조 포인트로 분류하고, 상기 참조 포인트의 상기 속성 정보를 사용하여 상기 예측 포인트의 상기 속성 정보의 예측값을 도출하고, 상기 예측 포인트의 상기 속성 정보와 상기 예측값의 차분값을 도출하는 처리를, 상기 참조 포인트에 대하여 재귀적으로 반복함에 따른 상기 속성 정보의 계층화 시에, 복수의 계층화 방법을 사용하여, 각각의 계층화 방법에 의해 서로 다른 계층을 생성하는 정보 처리 방법이다.
본 기술의 다른 측면의 정보 처리 장치는, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 상기 포인트별 속성 정보를 처리하는 정보 처리 장치이며, 예측 포인트와 참조 포인트로 분류된 포인트 중 상기 참조 포인트의 상기 속성 정보를 사용하여 도출된 상기 예측 포인트의 상기 속성 정보의 예측값과 상기 예측 포인트의 상기 속성 정보의 차분값을 도출하는 처리를, 상기 참조 포인트에 대하여 재귀적으로 반복함으로써 계층화된 상기 속성 정보에 대하여 역계층화를 행하는 역계층화부를 구비하고, 상기 역계층화부는, 제1 계층을 제1 계층화 방법을 사용하여 역계층화를 행하고, 상기 제1 계층과 다른 제2 계층을 상기 제1 계층화 방법과 다른 제2 계층화 방법을 사용하여 상기 역계층화를 행하는 정보 처리 장치이다.
본 기술의 다른 측면의 정보 처리 방법은, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 상기 포인트별 속성 정보에 대하여, 예측 포인트와 참조 포인트로 분류하고, 상기 참조 포인트의 상기 속성 정보를 사용하여 상기 예측 포인트의 상기 속성 정보의 예측값을 도출하고, 상기 예측 포인트의 상기 속성 정보와 상기 예측값의 차분값을 도출하는 처리를, 상기 참조 포인트에 대하여 재귀적으로 반복함으로써 계층화된 상기 속성 정보에 대한 역계층화 시에, 복수의 계층화 방법을 사용하여, 각각의 계층화 방법에 의해 서로 다른 계층에 대하여 상기 역계층화를 행하는 정보 처리 방법이다.
본 기술의 또 다른 측면의 정보 처리 장치는, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 상기 포인트별 속성 정보를 처리하는 정보 처리 장치이며, 예측 포인트와 참조 포인트로 분류된 포인트 중 상기 참조 포인트의 상기 속성 정보를 사용하여 도출된 상기 예측 포인트의 상기 속성 정보의 예측값과 상기 예측 포인트의 상기 속성 정보의 차분값을 도출하는 처리를, 상기 참조 포인트에 대하여 재귀적으로 반복함으로써, 상기 속성 정보의 계층화를 행하는 계층화부를 구비하고, 상기 계층화부는, 복수의 계층의 상기 예측 포인트의 상기 예측값의 도출을, 서로 동일한 계층의 상기 참조 포인트를 참조하여 행하는 정보 처리 장치이다.
본 기술의 다른 측면의 정보 처리 방법은, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 상기 포인트별 속성 정보에 대하여, 예측 포인트와 참조 포인트로 분류하고, 상기 참조 포인트의 상기 속성 정보를 사용하여 상기 예측 포인트의 상기 속성 정보의 예측값을 도출하고, 상기 예측 포인트의 상기 속성 정보와 상기 예측값의 차분값을 도출하는 처리를, 상기 참조 포인트에 대하여 재귀적으로 반복함에 따른 상기 속성 정보의 계층화 시에, 복수의 계층의 상기 예측 포인트의 상기 예측값의 도출을, 서로 동일한 계층의 상기 참조 포인트를 참조하여 행하는 정보 처리 방법이다.
본 기술의 또 다른 측면의 정보 처리 장치는, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 상기 포인트별 속성 정보를 처리하는 정보 처리 장치이며, 예측 포인트와 참조 포인트로 분류된 포인트 중 상기 참조 포인트의 상기 속성 정보를 사용하여 도출된 상기 예측 포인트의 상기 속성 정보의 예측값과 상기 예측 포인트의 상기 속성 정보의 차분값을 도출하는 처리를, 상기 참조 포인트에 대하여 재귀적으로 반복함으로써 계층화된 상기 속성 정보에 대하여 역계층화를 행하는 역계층화부를 구비하고, 상기 역계층화부는, 상기 역계층화 시에, 복수의 계층의 상기 예측 포인트의 상기 속성 정보의 상기 예측값을, 서로 동일한 계층의 상기 참조 포인트의 상기 속성 정보를 참조하여 도출하고, 도출한 상기 예측값을 상기 차분값에 가산함으로써, 상기 예측 포인트의 상기 속성 정보를 생성하는 정보 처리 장치이다.
본 기술의 또 다른 측면의 정보 처리 방법은, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 상기 포인트별 속성 정보에 대하여, 예측 포인트와 참조 포인트로 분류하고, 상기 참조 포인트의 상기 속성 정보를 사용하여 상기 예측 포인트의 상기 속성 정보의 예측값을 도출하고, 상기 예측 포인트의 상기 속성 정보와 상기 예측값의 차분값을 도출하는 처리를, 상기 참조 포인트에 대하여 재귀적으로 반복함으로써 계층화된 상기 속성 정보에 대하여 역계층화를 행할 때, 복수의 계층의 상기 예측 포인트의 상기 속성 정보의 상기 예측값을, 서로 동일한 계층의 상기 참조 포인트의 상기 속성 정보를 참조하여 도출하고, 도출한 상기 예측값을 상기 차분값에 가산함으로써, 상기 예측 포인트의 상기 속성 정보를 생성하는 정보 처리 방법이다.
본 기술의 일 측면의 정보 처리 장치 및 방법에 있어서는, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 그 포인트별 속성 정보에 대하여, 예측 포인트와 참조 포인트로 분류하고, 그 참조 포인트의 속성 정보를 사용하여 예측 포인트의 속성 정보의 예측값을 도출하고, 그 예측 포인트의 속성 정보와 예측값의 차분값을 도출하는 처리를, 참조 포인트에 대하여 재귀적으로 반복함에 따른 속성 정보의 계층화 시에, 복수의 계층화 방법이 사용되고, 각각의 계층화 방법에 의해 서로 다른 계층이 생성된다.
본 기술의 다른 측면의 정보 처리 장치 및 방법에 있어서는, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 그 포인트별 속성 정보에 대하여, 예측 포인트와 참조 포인트로 분류하고, 그 참조 포인트의 속성 정보를 사용하여 예측 포인트의 속성 정보의 예측값을 도출하고, 그 예측 포인트의 속성 정보와 예측값의 차분값을 도출하는 처리를, 그 참조 포인트에 대하여 재귀적으로 반복함으로써 계층화된 속성 정보에 대한 역계층화 시에, 복수의 계층화 방법이 사용되고, 각각의 계층화 방법에 의해 서로 다른 계층에 대하여 역계층화가 행해진다.
본 기술의 또 다른 측면의 정보 처리 장치 및 방법에 있어서는, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 그 포인트별 속성 정보에 대하여, 예측 포인트와 참조 포인트로 분류하고, 그 참조 포인트의 속성 정보를 사용하여 예측 포인트의 속성 정보의 예측값을 도출하고, 그 예측 포인트의 속성 정보와 예측값의 차분값을 도출하는 처리를, 그 참조 포인트에 대하여 재귀적으로 반복함에 따른 속성 정보의 계층화 시에, 복수의 계층의 예측 포인트의 예측값의 도출이, 서로 동일한 계층의 참조 포인트를 참조하여 행해진다.
본 기술의 또 다른 측면의 정보 처리 장치 및 방법에 있어서는, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 그 포인트별 속성 정보에 대하여, 예측 포인트와 참조 포인트로 분류하고, 그 참조 포인트의 속성 정보를 사용하여 예측 포인트의 속성 정보의 예측값을 도출하고, 그 예측 포인트의 속성 정보와 예측값의 차분값을 도출하는 처리를, 그 참조 포인트에 대하여 재귀적으로 반복함으로써 계층화된 속성 정보에 대하여 역계층화를 행할 때, 그 복수의 계층의 예측 포인트의 속성 정보의 예측값이, 서로 동일한 계층의 참조 포인트의 속성 정보를 참조하여 도출되고, 도출된 예측값이 차분값에 가산됨으로써, 그 예측 포인트의 속성 정보가 생성된다.
도 1은 스케일러블한 복호에 비대응인 Lifting의 모습의 예를 설명하는 도면이다.
도 2는 스케일러블한 복호에 비대응인 Lifting의 모습의 예를 설명하는 도면이다.
도 3은 스케일러블한 복호에 대응하는 Lifting의 모습의 예를 설명하는 도면이다.
도 4는 스케일러블한 복호에 대응하는 Lifting의 모습의 예를 설명하는 도면이다.
도 5는 애트리뷰트 데이터의 계층화 방법에 대하여 설명하는 도면이다.
도 6은 스케일러블한 복호에 대응하는 방법과 스케일러블한 복호에 비대응인 방법의 양쪽의 Lifting을 적용하는 경우의 모습의 예를 설명하는 도면이다.
도 7은 스케일러블한 복호에 대응하는 Lifting에 대하여 설명하는 도면이다.
도 8은 참조 관계의 예를 도시하는 도면이다.
도 9는 애트리뷰트 데이터의 계층화 방법에 대하여 설명하는 도면이다.
도 10은 참조 관계의 예를 도시하는 도면이다.
도 11은 부호화 장치의 주된 구성예를 도시하는 블록도이다.
도 12는 속성 정보 부호화부의 주된 구성예를 도시하는 블록도이다.
도 13은 계층화 처리부의 주된 구성예를 도시하는 블록도이다.
도 14는 부호화 처리의 흐름의 예를 설명하는 흐름도이다.
도 15는 속성 정보 부호화 처리의 흐름의 예를 설명하는 흐름도이다.
도 16은 계층화 처리의 흐름의 예를 설명하는 흐름도이다.
도 17은 복호 장치의 주된 구성예를 도시하는 블록도이다.
도 18은 속성 정보 복호부의 주된 구성예를 도시하는 블록도이다.
도 19는 역계층화 처리부의 주된 구성예를 도시하는 블록도이다.
도 20은 복호 처리의 흐름의 예를 설명하는 흐름도이다.
도 21은 속성 정보 복호 처리의 흐름의 예를 설명하는 흐름도이다.
도 22는 역계층화 처리의 흐름의 예를 설명하는 흐름도이다.
도 23은 스케일러블 역계층화 처리의 흐름의 예를 설명하는 흐름도이다.
도 24는 계층화 처리의 흐름의 예를 설명하는 흐름도이다.
도 25는 역계층화 처리의 흐름의 예를 설명하는 흐름도이다.
도 26은 컴퓨터의 주된 구성예를 도시하는 블록도이다.
이하, 본 개시를 실시하기 위한 형태(이하 실시 형태라고 함)에 대하여 설명한다. 또한, 설명은 이하의 순서로 행한다.
1. 계층화ㆍ역계층화 방법의 전환
2. 참조 관계의 제어
3. 제1 실시 형태(부호화 장치)
4. 제2 실시 형태(복호 장치)
5. 제3 실시 형태(부호화 장치)
6. 제4 실시 형태(복호 장치)
7. 부기
<1. 계층화ㆍ역계층화 방법의 전환>
<기술 내용ㆍ기술 용어를 서포트하는 문헌 등>
본 기술에서 개시되는 범위는, 실시 형태에 기재되어 있는 내용뿐만 아니라, 출원 당시에 있어서 공지로 되어 있는 이하의 비특허문헌에 기재되어 있는 내용도 포함된다.
비특허 문헌 1: (상술)
비특허 문헌 2: (상술)
비특허 문헌 3: (상술)
비특허 문헌 4: TELECOMMUNICATION STANDARDIZATION SECTOR OF ITU(International Telecommunication Union), "Advanced video coding for generic audiovisual services", H.264, 04/2017
비특허 문헌 5: TELECOMMUNICATION STANDARDIZATION SECTOR OF ITU(International Telecommunication Union), "High efficiency video coding", H.265, 12/2016
비특허 문헌 6: Jianle Chen, Elena Alshina, Gary J. Sullivan, Jens-Rainer, Jill Boyce, "Algorithm Description of Joint Exploration Test Model 4", JVET-G1001_v1, Joint Video Exploration Team(JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 7th Meeting: Torino, IT, 13-21 July 2017
즉, 상술한 비특허문헌에 기재되어 있는 내용도 서포트 요건을 판단할 때의 근거가 된다. 예를 들어, 비특허문헌 5에 기재되어 있는 Quad-Tree Block Structure, 비특허문헌 6에 기재되어 있는 QTBT(Quad Tree Plus Binary Tree) Block Structure가 실시 형태에 있어서 직접적인 기재가 없는 경우라도, 본 기술의 개시 범위 내이며, 청구범위의 서포트 요건을 충족시키는 것으로 한다. 또한, 예를 들어 파싱(Parsing), 신택스(Syntax), 시맨틱스(Semantics) 등의 기술 용어에 대해서도 마찬가지로, 실시 형태에 있어서 직접적인 기재가 없는 경우라도, 본 기술의 개시 범위 내이며, 청구범위의 서포트 요건을 충족시키는 것으로 한다.
<포인트 클라우드>
종래, 점군의 위치 정보나 속성 정보 등에 의해 3차원 구조를 나타내는 포인트 클라우드(Point cloud)나, 정점, 에지, 면으로 구성되고, 다각형 표현을 사용하여 3차원 형상을 정의하는 메쉬(Mesh) 등의 3D 데이터가 존재하였다.
예를 들어 포인트 클라우드의 경우, 입체 구조물(3차원 형상의 오브젝트)을 다수의 점의 집합(점군)으로서 표현한다. 즉, 포인트 클라우드의 데이터(포인트 클라우드 데이터라고도 칭함)는, 이 점군의 각 점의 지오메트리 데이터(위치 정보라고도 칭함)나 애트리뷰트 데이터(속성 정보라고도 칭함)에 의해 구성된다. 애트리뷰트 데이터는 임의의 정보를 포함할 수 있다. 예를 들어, 색 정보, 반사율 정보, 법선 정보 등이 애트리뷰트 데이터에 포함되도록 해도 된다. 따라서 데이터 구조가 비교적 단순함과 함께, 충분히 많은 점을 사용함으로써 임의의 입체 구조물을 충분한 정밀도로 표현할 수 있다.
<복셀을 사용한 위치 정보의 양자화>
이러한 포인트 클라우드 데이터는 그 데이터양이 비교적 크므로, 부호화 등에 의한 데이터양을 압축하기 위해, 복셀(Voxel)을 사용한 부호화 방법이 고려되었다. 복셀은, 지오메트리 데이터(위치 정보)를 양자화하기 위한 3차원 영역이다.
즉, 포인트 클라우드를 내포하는 3차원 영역을 복셀이라고 칭하는 작은 3차원 영역으로 분할하고, 그 복셀별로 포인트를 내포하는지 여부를 나타내도록 한다. 이와 같이 함으로써, 각 포인트의 위치는 복셀 단위로 양자화된다. 따라서, 포인트 클라우드(Point cloud) 데이터를 이러한 복셀의 데이터(복셀(Voxel) 데이터라고도 칭함)로 변환함으로써, 정보량의 증대를 억제(전형적으로는 정보량을 삭감)할 수 있다.
<Octree>
또한, 지오메트리 데이터에 대하여, 이러한 복셀(Voxel) 데이터를 사용하여 Octree를 구축하는 것이 고려되었다. Octree는, 복셀 데이터를 트리 구조화한 것이다. 이 Octree의 최하위의 노드의 각 비트의 값이, 각 복셀의 포인트의 유무를 나타낸다. 예를 들어, 값 「1」이 포인트를 내포하는 복셀을 나타내고, 값 「0」이 포인트를 내포하지 않는 복셀을 나타낸다. Octree에서는, 1노드가 8개의 복셀에 대응한다. 즉, Octree의 각 노드는, 8비트의 데이터에 의해 구성되며, 그 8비트가 8개의 복셀의 포인트의 유무를 나타낸다.
그리고, Octree의 상위의 노드는, 그 노드에 속하는 하위 노드에 대응하는 8개의 복셀을 하나로 통합한 영역의 포인트의 유무를 나타낸다. 즉, 하위 노드의 복셀 정보를 통합함으로써 상위 노드가 생성된다. 또한, 값이 「0」인 노드, 즉 대응하는 8개의 복셀이 전부 포인트를 내포하지 않는 경우, 그 노드는 삭제된다.
이와 같이 함으로써, 값이 「0」이 아닌 노드로 이루어지는 트리 구조(Octree)가 구축된다. 즉, Octree는, 각 해상도의 복셀의 포인트의 유무를 나타낼 수 있다. Octree화하여 부호화함으로써, 위치 정보는, 최고 해상도(최상위층)부터 원하는 계층(해상도)까지 복호함으로써, 그 해상도의 포인트 클라우드 데이터를 복원할 수 있다. 즉, 불필요한 계층(해상도)의 정보를 복호하지 않고, 용이하게 임의의 해상도로 복호할 수 있다. 환언하건대, 복셀(해상도)의 스케일러빌리티를 실현할 수 있다.
또한, 상술한 바와 같이 값이 「0」인 노드를 생략함으로써, 포인트가 존재하지 않는 영역의 복셀을 저해상도화할 수 있으므로, 한층 더한 정보량의 증대의 억제(전형적으로는 정보량의 삭감)를 행할 수 있다.
<Lifting>
이에 비해 애트리뷰트 데이터(속성 정보)를 부호화할 때에는, 부호화에 의한 열화를 포함시켜 지오메트리 데이터(위치 정보)를 기지인 것으로 하여, 포인트간의 위치 관계를 이용하여 부호화가 행해진다. 이러한 애트리뷰트 데이터의 부호화 방법으로서, RAHT(Region Adaptive Hierarchical Transform)나, 비특허문헌 2에 기재된 바와 같은 Lifting이라고 칭하는 변환을 사용하는 방법이 고려되었다. 이들 기술을 적용함으로써, 지오메트리 데이터의 Octree와 같이, 애트리뷰트 데이터를 계층화할 수도 있다.
예를 들어 비특허문헌 2에 기재된 Lifting의 경우, 각 포인트의 애트리뷰트 데이터는, 다른 포인트의 애트리뷰트 데이터를 사용하여 도출되는 예측값과의 차분값으로서 부호화된다. 그때, 각 포인트가 계층화되고, 차분값은 그 계층 구조에 따라 도출된다.
즉, 포인트별 애트리뷰트 데이터에 대하여, 각 포인트가 예측 포인트와 참조 포인트로 분류되고, 그 참조 포인트의 애트리뷰트 데이터를 사용하여 예측 포인트의 애트리뷰트 데이터의 예측값이 도출되고, 그 예측 포인트의 애트리뷰트 데이터와 예측값의 차분값이 도출된다. 이러한 처리를, 참조 포인트에 대하여 재귀적으로 반복함으로써, 각 포인트의 애트리뷰트 데이터가 계층화된다.
비특허문헌 2에 기재된 Lifting의 경우, 지오메트리 데이터를 사용하여 포인트간의 거리에 기초하여 이 계층화가 행해진다. 즉, 참조 포인트로부터 소정의 거리의 범위 내에 위치하는 포인트가, 그 참조 포인트를 참조하여 예측값이 도출되는 예측 포인트로서 설정된다. 예를 들어, 도 1에 있어서 포인트 P5를 참조 포인트로서 선택하는 것으로 한다. 그 경우, 예측 포인트는, 그 포인트 P5를 중심으로 하는 반경 R의 원형 영역 내에 있어서 탐색된다. 이 경우, 포인트 P9가, 그 영역 내에 위치하므로, 포인트 P5를 참조하여 예측값이 도출되는 예측 포인트(포인트 P5를 참조 포인트로 하는 예측 포인트)로서 설정된다.
이러한 처리에 의해, 예를 들어 흰색 동그라미로 표시되는 포인트 P7 내지 포인트 P9의 각 차분값과, 사선 모양으로 표시되는 포인트 P1, 포인트 P3 및 포인트 P6의 각 차분값과, 회색 동그라미로 표시되는 포인트 P0, 포인트 P2, 포인트 P4 및 포인트 P5의 각 차분값이, 서로 다른 계층의 차분값으로서 도출된다.
단, 이 계층 구조는, 지오메트리 데이터의 계층 구조(예를 들어 Octree)와는 독립적으로 생성된 것이며, 기본적으로 지오메트리 데이터의 계층 구조와는 대응하지 않는다. 포인트 클라우드 데이터를 복원하기 위해서는, 지오메트리 데이터와 애트리뷰트 데이터를 대응시킬 필요가 있으며, 그를 위해서는 지오메트리 데이터 및 애트리뷰트 데이터를 최고 해상도(즉 최하위층)까지 복호할 필요가 있었다.
예를 들어, 도 2에 도시되는 바와 같이, 지오메트리 데이터(1)를 어떤 해상도로 복호하는 경우, 지오메트리 데이터(1A)의 부분만을 복호하면 되는 것으로 한다. 그러나, 동일 해상도의 애트리뷰트 데이터를 얻기 위해서는, 지오메트리 데이터(1)도 애트리뷰트 데이터(2)도 최고 해상도(즉 최하위층)까지 복호할 필요가 있었다. 즉, 비특허문헌 2에 기재된 Lifting을 적용한 방법은, 해상도의 스케일러블한 복호에 대응하고 있지 않다.
<스케일러블한 복호에 대응한 계층화>
이에 비해 비특허문헌 3에 기재된 계층화는, 해상도의 스케일러블한 복호에 대응하고 있다. 비특허문헌 3에 기재된 방법의 경우, 지오메트리 데이터의 Octree의 계층 구조에 일치하도록 애트리뷰트 데이터의 계층화를 행한다. 즉, 지오메트리 데이터의 복셀에 상당하는 영역 내에 포인트가 존재하는 경우(그 포인트에 대응하는 애트리뷰트 데이터가 존재하는 경우), 그 복셀의 1계층 상위의 복셀에 있어서도 포인트가 존재(그 포인트에 대응하는 애트리뷰트 데이터가 존재)하도록, 참조 포인트와 예측 포인트의 선택을 행한다. 즉, 지오메트리 데이터의 Octree의 계층 구조에 따라 속성 정보가 계층화된다.
예를 들어 설명의 간략화를 위해 2차원으로 설명하면, 도 3에 있어서 어떤 복셀(10)의 1계층 밑에는 복셀(10-1) 내지 복셀(10-4)이 형성되고, 복셀(10-4)의 1계층 밑에는 복셀(10-4-1) 내지 복셀(10-4-4)이 형성되어 있다. 복셀(10-1)에는, 애트리뷰트 데이터의 포인트(11-1)(포인트(11-1)에 대응하는 애트리뷰트 데이터를 나타냄. 이하 마찬가지.)가 존재한다. 복셀 데이터(10-2)에는 애트리뷰트 데이터의 포인트(11-2)가 존재하고, 복셀 데이터(10-3)에는 애트리뷰트 데이터의 포인트(11-3)가 존재한다. 복셀(10-4-1) 내지 복셀(10-4-4)에는, 애트리뷰트 데이터의 포인트(11-4-1) 내지 포인트(11-4-4)가 존재한다.
이러한 경우, 복셀(10-4-1) 내지 복셀(10-4-4)에 대하여, 1계층 상위의 복셀(10-4)에 포인트(애트리뷰트 데이터)가 1개 남도록, 예를 들어 포인트(11-4-1)가 참조 포인트로 설정되고, 포인트(11-4-2) 내지 포인트(11-4-4)는 예측 포인트로 설정된다.
마찬가지로, 복셀(10-1) 내지 복셀(10-4)에 대하여, 1계층 상위의 복셀(10)에 포인트가 1개 남도록, 예를 들어 포인트(11-1)가 참조 포인트로 설정되고, 포인트(11-2), 포인트(11-3) 및 포인트(11-4-1)가 예측 포인트로 설정된다.
이와 같이 함으로써, 애트리뷰트 데이터에 대해서도, 지오메트리 데이터와 마찬가지의 계층화를 실현할 수 있다. 그리고, 애트리뷰트 데이터의 계층 구조를 지오메트리 데이터의 계층 구조와 대응지음으로써, 스케일러블한 복호에 대응시킬 수 있다.
예를 들어, 도 4에 도시되는 바와 같이, 지오메트리 데이터(21)를 어떤 해상도로 복호하는 경우, 지오메트리 데이터(21A)의 부분만을 복호하면 되는 것으로 한다. 이 경우, 지오메트리 데이터(21)와 애트리뷰트 데이터(22)에서 계층 구조가 서로 대응하고 있으므로, 애트리뷰트 데이터(22)에 있어서도, 그 지오메트리 데이터(21A)에 대응하는 애트리뷰트 데이터(22A)의 부분만을 복호할 수 있다.
즉, 최하층까지 복호하지 않아도, 용이하게 원하는 해상도의 포인트 클라우드 데이터를 복원할 수 있다. 이와 같이, 비특허문헌 3에 기재된 기술을 적용한 방법은, 해상도의 스케일러블한 복호에 대응한다.
그러나, 이 방법의 경우, 비특허문헌 2에 기재된 방법보다 부호화 효율이 저감될 우려가 있었다. 특히, 포인트가 성긴 상태의 경우, 그 부호화 효율의 저감이 보다 커질 우려가 있었다.
<계층화에 있어서의 계층화 방법의 전환>
그래서, 도 5에 도시되는 표의 맨 위의 단의 「방법 1」에 기재된 바와 같이, 애트리뷰트 데이터의 계층화에 있어서, 그 애트리뷰트 데이터의 계층화 방법을 중간 계층에 있어서 전환하도록 해도 된다.
예를 들어, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 포인트별 속성 정보에 대하여, 예측 포인트와 참조 포인트로 분류하고, 그 참조 포인트의 속성 정보를 사용하여 예측 포인트의 속성 정보의 예측값을 도출하고, 그 예측 포인트의 속성 정보와 예측값의 차분값을 도출하는 처리를, 그 참조 포인트에 대하여 재귀적으로 반복함에 따른 속성 정보의 계층화 시에, 복수의 계층화 방법을 사용하여, 각각의 계층화 방법에 의해 서로 다른 계층을 생성하도록 한다.
예를 들어, 정보 처리 장치에 있어서, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 상기 포인트별 속성 정보에 대하여, 예측 포인트와 참조 포인트로 분류하고, 그 참조 포인트의 속성 정보를 사용하여 예측 포인트의 속성 정보의 예측값을 도출하고, 그 예측 포인트의 속성 정보와 예측값의 차분값을 도출하는 처리를, 그 참조 포인트에 대하여 재귀적으로 반복함으로써, 그 속성 정보의 계층화를 행하는 계층화부를 구비하고, 그 계층화부는, 복수의 계층화 방법을 사용하여 계층화를 행하고, 각각의 계층화 방법에 의해 서로 다른 계층을 생성하도록 해도 된다. 환언하건대, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 그 포인트별 속성 정보를 처리하는 정보 처리 장치에 있어서, 예측 포인트와 참조 포인트로 분류된 포인트 중 참조 포인트의 속성 정보를 사용하여 도출된 예측 포인트의 속성 정보의 예측값과 그 예측 포인트의 속성 정보의 차분값을 도출하는 처리를, 그 참조 포인트에 대하여 재귀적으로 반복함으로써, 그 속성 정보의 계층화를 행하는 계층화부를 구비하고, 그 계층화부는, 제1 계층을 제1 계층화 방법을 사용하여 계층화를 행하고, 그 제1 계층과 다른 제2 계층을 제1 계층화 방법과 다른 제2 계층화 방법을 사용하여 계층화를 행하도록 해도 된다.
이와 같이 함으로써, 복수의 계층화 방법을 적용하여 계층화 구조를 형성할 수 있으므로, 계층별 특징에 보다 적합한 방법을 선택할 수 있다. 이에 의해, 보다 다양한 애트리뷰트 데이터에 대하여 보다 적합한 방법으로 계층화를 행할 수 있어, 부호화 효율의 저감을 억제할 수 있다.
또한, 계층화 방법을 전환하는 횟수는 임의이며, 1회여도 되고, 복수회여도 된다. 또한, 적용되는 계층화 방법의 수도 복수라면 몇 개여도 되며, 예를 들어 3 이상이어도 된다. 또한, 동일한 계층화 방법이 복수회 적용되어도 된다. 예를 들어, 중간 계층에 있어서 계층화 방법 A→계층화 방법 B→계층화 방법 A와 같이 전환해도 된다.
또한, 이와 같이 계층화 방법을 전환하는 경우, 예를 들어 도 5에 도시되는 표의 위에서 2단째의 「방법 1-1」에 기재된 바와 같이, 스케일러블한 복호에 대응한 방법과, 스케일러블한 복호에 비대응인 방법을 전환하도록 해도 된다. 환언하건대, 애트리뷰트 데이터의 계층 구조의 일부의 계층을 스케일러블한 복호에 대응한 방법에 의해 계층화하도록 해도 된다.
예를 들어, 비특허문헌 3에 기재된 계층화 방법(스케일러블한 복호에 대응한 방법)과, 비특허문헌 2에 기재된 Lifting(스케일러블한 복호에 비대응인 방법)을, 계층 구조의 중간 계층에 있어서 전환하도록 해도 된다. 즉, 애트리뷰트 데이터의 계층 구조의 일부의 계층에만, 비특허문헌 3에 기재된 계층화 방법을 적용하도록 해도 된다.
이와 같이 함으로써, 스케일러블한 복호를 행할 가능성이 높은 계층만을, 비특허문헌 3에 기재된 계층화 방법을 적용하여 생성하고, 그 밖의 계층을 비특허문헌 2에 기재된 Lifting을 적용하여 생성할 수 있다. 이에 의해, 전체 계층을 비특허문헌 3에 기재된 계층화 방법을 적용하여 생성하는 경우보다 부호화 효율의 저감을 억제할 수 있다. 환언하건대, 부호화 효율의 저감을 억제하면서 스케일러블한 복호에 대응할 수 있다.
그때, 예를 들어 도 5에 도시되는 표의 위에서 3단째의 「방법 1-1-1」에 기재된 바와 같이, 소정의 계층보다 상위층을 스케일러블한 복호에 비대응인 방법에 의해 계층화하고, 그 소정의 계층 이하를 스케일러블한 복호에 대응한 방법에 의해 계층화하도록 해도 된다. 예를 들어, 스케일러블한 복호에 비대응인 제1 계층화 방법에 의해, 그 제1 계층을 포함하는 소정의 계층보다 상위의 계층을 생성하고, 스케일러블한 복호에 대응한 제2 계층화 방법에 의해, 그 제2 계층을 포함하는 소정의 계층보다 하위의 계층을 생성하도록 해도 된다.
그때, 예를 들어 도 5에 도시되는 표의 위에서 4단째의 「방법 1-1-1-1」에 기재된 바와 같이, 스케일러블한 복호에 비대응인 Lifting(비특허문헌 2에 기재된 방법)과, 스케일러블한 복호에 대응한 Lifting(비특허문헌 3에 기재된 방법)을 전환하도록 해도 된다.
예를 들어, 소정의 계층보다 상위층에 대하여, 비특허문헌 2에 기재된 Lifting에 의해 계층화를 행하고, 그 소정의 계층 이하에 대해서는, 비특허문헌 3에 기재된 계층화 방법(스케일러블한 복호에 대응한 Lifting)에 의해 계층화를 행하도록 해도 된다.
포인트가 성긴 상태로 되기 쉬운 상위층에 있어서는, 스케일러블한 복호에 대응한 방법을 적용하면 부호화 효율이 저감되기 쉽다. 또한, 최상위층 부근의 계층에서는, 해상도가 대폭 저감되기 때문에, 그러한 계층에서 복호가 행해질 가능성은 낮다. 즉, 보다 상위층일수록, 스케일러블한 복호가 행해질 가능성이 저감된다.
그래서, 상술한 바와 같이, 애트리뷰트 데이터의 계층 구조 중, 소정의 계층보다 상위층에 있어서는 스케일러블에 비대응인 방법을 적용함으로써, 스케일러블한 복호에 대한 실질적인 제한이 생기는 것을 억제하면서, 부호화 효율의 저감을 억제할 수 있다. 환언하건대, 부호화 효율의 저감을 억제하면서, 스케일러블한 복호에 대응시킬 수 있다.
이 경우, 예를 들어 도 6에 도시되는 바와 같이, 지오메트리 데이터(31)를 어떤 해상도로 복호하는 경우, 지오메트리 데이터(31A)의 부분만을 복호하면 되는 것으로 한다. 이 경우, 지오메트리 데이터(31)와 애트리뷰트 데이터(32)에서 계층 구조가 서로 대응하고 있으므로, 애트리뷰트 데이터(32)에 있어서도, 그 지오메트리 데이터(31A)에 대응하는 애트리뷰트 데이터(32A) 및 애트리뷰트 데이터(32B)의 부분만을 복호할 수 있다.
즉, 최하층까지 복호하지 않아도, 용이하게 원하는 해상도의 포인트 클라우드 데이터를 복원할 수 있다. 단, 이 경우, 애트리뷰트 데이터(32A)는, 스케일러블에 비대응인 Lifting에 의해 계층화된 데이터이다. 즉 이 경우, 애트리뷰트 데이터(32)는, 상위층(L1단)이 스케일러블한 복호에 비대응인 Lifting에 의해 계층화되고, 그보다 하위의 계층(L2단)이 스케일러블한 복호에 대응한 Lifting에 의해 계층화되어 있다. 따라서, 위에서 0단째 내지 (L1-1)단째에 대해서는, 스케일러블한 복호를 행할 수 없다(지오메트리 데이터(31)도 애트리뷰트 데이터(32)도 L1단째까지 복호할 필요가 있음). 단, 그러한 상위층은 해상도가 낮으므로, 스케일러블한 복호가 행해질 가능성이 낮아, 상술한 바와 같이, 스케일러블한 복호에 대한 실질적인 제한이 생기는 것을 억제하면서, 부호화 효율의 저감을 억제할 수 있다.
<전환하는 방법의 다른 예>
또한, 계층화 방법을 전환하는 계층은 임의이다. 또한, 전환하는 계층화 방법은 어떠한 방법이어도 되며, 상술한 예(스케일러블한 복호에 대응하는 방법과 스케일러블한 복호에 비대응인 방법의 전환)에 한정되지 않는다. 예를 들어, 도 5에 도시되는 표의 위에서 5단째의 「방법 1-2」에 기재된 바와 같이, 비특허문헌 2에 기재된 Lifting과 같은 거리에 따른 샘플링을 사용한 계층화 방법과, 각 포인트(각 포인트에 대응하는 애트리뷰트 데이터)를 모톤 순서로 정렬하고, 포인트를 등간격으로 샘플링함으로써 포인트를 계층화하는 방법을 전환하도록 해도 된다.
예를 들어, 소정의 계층보다 상위층에 대하여 거리에 따른 샘플링을 사용한 계층화 방법을 적용하고, 그 소정의 계층 이하의 계층에 대하여 모톤 순서에서의 등간격 샘플링을 사용한 계층화 방법을 적용하도록 해도 된다. 이와 같이 함으로써, 상술한 예의 경우와 마찬가지로 부호화 효율의 저감을 억제할 수 있다.
<처리순>
계층화에 있어서, 각 계층의 처리순(생성순)은 임의이다. 예를 들어, 도 5에 도시되는 표의 위에서 6단째의 「방법 1-3」에 기재된 바와 같이, 최하위층부터 차례로 계층화하도록 해도 된다. 예를 들어, 1계층씩 생성하고, 전체 계층 생성 후, 계층을 반전시킨다(reverse함). 예를 들어, 생성순과 역순으로 계층 번호를 부여한다. 이와 같이 함으로써, 최하위층으로부터 최상위층을 향하는 방향으로 각 계층을 생성할 수 있다.
계층화에 의해, 각 계층에 있어서, 각 포인트는 참조 포인트 또는 예측 포인트로 분류되며, 또한 그 참조 포인트는 보다 상위층의 포인트로서 다시 처리된다. 즉, 계층화에 의해 계층간의 참조 관계가 구축된다. 상술한 바와 같이 최하위층부터 차례로 생성함으로써, 이러한 재귀적인 처리가 가능하게 되므로, 계층간의 참조 관계를 보다 용이하게 구축할 수 있다.
<제어 정보>
예를 들어, 도 5에 도시되는 표의 위에서 7단째의 「방법 1-4」에 기재된 바와 같이, 속성 정보의 계층화에 관한 제어 정보를 시그널링(부호화측으로부터 복호측으로 전송)하도록 해도 된다.
제어 정보의 전송 방법은 임의이다. 예를 들어, 신택스 등으로서 규정하며, 포인트 클라우드 데이터의 부호화 데이터(비트스트림)에 포함시켜(예를 들어 헤더 등에 기술하여) 전송하도록 해도 된다. 또한, 포인트 클라우드 데이터의 부호화 데이터와는 다른, 포인트 클라우드 데이터의 부호화 데이터에 관련지어진 데이터로서 전송하도록 해도 된다.
<scalable_enable_flag>
제어 정보의 내용은 임의이다. 예를 들어, 중간 계층에 있어서 스케일러블한 복호에 대응한 방법과 스케일러블한 복호에 비대응인 방법을 전환할 수 있는 경우, 스케일러블한 복호에 대응한 계층화 방법이 적용 가능인지를 나타내는 제어 정보를 복호측에 전송하도록 해도 된다. 그 경우, 이 제어 정보가, 스케일러블한 복호에 대응한 계층화 방법이 적용 가능인지를 어떤 식으로 표현해도 된다.
예를 들어, 플래그 정보로서 scalable_enable_flag를 전송하도록 해도 된다. scalable_enable_flag는, 스케일러블한 복호에 대응한 계층화 방법이 적용 가능인지를 나타내는 플래그 정보이다. 이 값이 참(예를 들어 「1」)인 경우, 스케일러블한 복호에 대응한 계층화 방법이 적용 가능인 것을 나타내고, 이 값이 거짓(예를 들어 「0」)인 경우, 스케일러블한 복호에 대응한 계층화 방법이 적용 불가능인 것을 나타낸다. 예를 들어, 이 scalable_enable_flag가 생략되는 경우, 이 플래그 정보의 값이 거짓(예를 들어 「0」)인 경우와 등가이도록 해도 된다.
또한, 이 제어 정보(scalable_enable_flag)를 전송하는 데이터 단위는 임의이다. 예를 들어, 포인트 클라우드 데이터의 시퀀스별로 scalable_enable_flag를 전송하도록 해도 된다. 또한, 예를 들어 애트리뷰트 데이터별로 scalable_enable_flag를 전송하도록 해도 된다. 예를 들어, 지오메트리 데이터에 대하여 복수의 애트리뷰트 데이터가 존재하는 경우, 그 애트리뷰트 데이터별로 scalable_enable_flag를 전송함으로써, 애트리뷰트 데이터별로 스케일러블한 복호에 대응한 계층화 방법이 적용 가능인지 여부를 나타낼 수 있다. 즉, 예를 들어 일부의 애트리뷰트 데이터만 스케일러블한 복호에 대응시킬 수도 있다. 물론, 이들 예 이외의 데이터 단위별로 scalable_enable_flag를 전송하도록 해도 된다.
이러한 제어 정보를 전송함으로써, 복호측에 있어서, 이 제어 정보에 기초하여, 스케일러블한 복호에 대응한 계층화 방법에 대응하는 역계층화를 행하는지 여부를 식별할 수 있다. 따라서, 이 식별을 보다 용이하게 행할 수 있다. 이에 의해, 복호 처리의 부하의 증대를 억제할 수 있다.
예를 들어, scalable_enable_flag가 거짓인 애트리뷰트 데이터에는, 스케일러블한 복호에 대응한 계층화 방법이 적용되지 않으므로, 스케일러블한 복호에 관한 처리는 불필요하다. 따라서, 복호 장치는, scalable_enable_flag가 거짓인 것에 기초하여, 스케일러블한 복호에 관한 처리를 전부 생략할 수 있다. 예를 들어, 후술하는 스케일러블한 복호에 대응한 계층화 방법을 적용하는 계층의 범위를 나타내는 제어 정보의 참조도 생략할 수 있다. 또한, 역계층화 시에 스케일러블한 복호에 대응하는 계층화 방법을 사용하는지 여부 등의 판정도 생략할 수 있다. 이와 같이 복호 처리의 부하의 증대를 억제할 수 있다.
<scalable_enable_num_of_lod>
또한 예를 들어, 스케일러블한 복호에 대응한 계층화 방법을 적용하는 계층의 범위를 나타내는 제어 정보를 복호측에 전송하도록 해도 된다. 그 경우, 이 제어 정보가, 스케일러블한 복호에 대응한 계층화 방법을 적용하는 계층의 범위를 어떤 식으로 표현해도 된다. 예를 들어, 그 범위를 나타내도록 해도 되고, 계층화 방법이 전환되는 계층(범위의 경계로 되는 계층)을 나타내도록 해도 되고, 스케일러블한 복호에 대응한 계층화 방법을 적용하지 않는 계층의 범위를 나타내도록 해도 된다.
예를 들어, 스케일러블한 복호에 대응한 계층화 방법을 적용하는 계층의 범위를 나타내는 경우, 그 범위의 상한 및 하한을 나타내도록 해도 되고, 그 범위의 크기(계층수)와 기준 위치(예를 들어 개시 위치, 중간 위치, 종료 위치 등)의 계층 번호(최상위 계층을 0으로 하고 1계층 밑으로 내려갈 때마다 1씩 증가하는 식별 번호)에 의해 나타내도록 해도 된다. 또한, 하한이 최하위층과 동등한 경우나 상한이 최상위층과 동등한 경우, 그 범위를 하한(최하위층) 또는 상한(최상위층)으로부터의 계층수에 의해 나타내도록 해도 된다.
예를 들어, 신택스 요소 scalable_enable_num_of_lod를 전송하도록 해도 된다. scalable_enable_num_of_lod는, 스케일러블한 복호에 대응한 계층화 방법을 적용하는 계층의 범위를 나타내는 제어 정보이다. 그 값은, 스케일러블한 복호에 대응한 계층화 방법을 적용하는 범위를, 최하위층으로부터의 계층수로 나타낸다. 즉, scalable_enable_num_of_lod=N으로 하면, 그 애트리뷰트 데이터의 부호화 데이터는, 최하위층부터 N단째의 계층까지가 스케일러블한 복호에 대응하고, (N+1)단째 이상의 계층은 스케일러블한 복호에 비대응이다.
이러한 제어 정보를 전송함으로써, 복호측은, 스케일러블한 복호에 대응한 계층화 방법이 어느 계층에 적용되고 있는지를, 이 제어 정보에 기초하여 용이하게 또한 정확하게 파악할 수 있다. 따라서, 복수의 계층화 방법이 적용된 부호화 데이터를 정확하게 복호할 수 있다. 따라서, 부호화 효율의 저감을 억제할 수 있다.
<기타>
또한, 제어 정보는 상술한 예에 한정되지 않으며, 어떠한 정보가 전송되도록 해도 된다. 또한, 전송되는 제어 정보의 수는 임의이며, 복수의 제어 정보가 전송되도록 해도 된다. 예를 들어, 상술한 scalable_enable_flag 및 scalable_enable_num_of_lod가 전송되도록 해도 된다. scalable_enable_flag가 참인 경우만, scalable_enable_num_of_lod가 전송되도록 해도 된다.
어떻게 하든, 복호측에 있어서는 scalable_enable_flag가 참인 경우만, scalable_enable_num_of_lod가 참조되어, 스케일러블한 복호에 대응한 계층화 방법이 적용되는 계층이 특정된다.
<역계층화에 있어서의 계층화 방법의 전환>
이상에 있어서는 부호화에 있어서의 처리에 대하여 설명하였지만, 복호측에 있어서도 본 기술을 적용할 수 있다. 예를 들어, 도 5에 도시되는 표의 위에서 8단째의 「방법 2」에 기재된 바와 같이, 역계층화에 있어서 속성 정보의 계층화 방법을 중간 계층에 있어서 전환(즉 역계층화 방법을 전환)하도록 해도 된다.
예를 들어, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 포인트별 속성 정보에 대하여, 예측 포인트와 참조 포인트로 분류하고, 그 참조 포인트의 속성 정보를 사용하여 예측 포인트의 속성 정보의 예측값을 도출하고, 그 예측 포인트의 속성 정보와 예측값의 차분값을 도출하는 처리를, 그 참조 포인트에 대하여 재귀적으로 반복함으로써 계층화된 속성 정보에 대한 역계층화 시에, 복수의 계층화 방법을 사용하여, 각각의 계층화 방법에 의해 서로 다른 계층에 대하여 역계층화를 행하도록 한다.
예를 들어, 정보 처리 장치에 있어서, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 포인트별 속성 정보에 대하여, 예측 포인트와 참조 포인트로 분류하고, 그 참조 포인트의 속성 정보를 사용하여 예측 포인트의 속성 정보의 예측값을 도출하고, 그 예측 포인트의 속성 정보와 예측값의 차분값을 도출하는 처리를, 그 참조 포인트에 대하여 재귀적으로 반복함으로써 계층화된 속성 정보에 대하여 역계층화를 행하는 역계층화부를 구비하고, 그 역계층화부는, 복수의 계층화 방법을 사용하여, 각각의 계층화 방법에 의해 서로 다른 계층에 대하여 역계층화를 행하도록 해도 된다. 환언하건대, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 그 포인트별 속성 정보를 처리하는 정보 처리 장치에 있어서, 예측 포인트와 참조 포인트로 분류된 포인트 중 참조 포인트의 속성 정보를 사용하여 도출된 예측 포인트의 속성 정보의 예측값과 그 예측 포인트의 속성 정보의 차분값을 도출하는 처리를, 그 참조 포인트에 대하여 재귀적으로 반복함으로써 계층화된 속성 정보에 대하여 역계층화를 행하는 역계층화부를 구비하고, 그 역계층화부는, 제1 계층을 제1 계층화 방법을 사용하여 역계층화를 행하고, 그 제1 계층과 다른 제2 계층을 그 제1 계층화 방법과 다른 제2 계층화 방법을 사용하여 역계층화를 행하도록 해도 된다.
이와 같이 함으로써, 복수의 계층화 방법을 적용하여 역계층화를 행할 수 있으므로, 복수의 계층화 방법을 적용하여 계층화된 애트리뷰트 데이터를 적절하게 역계층화할 수 있다. 즉, 그러한 복수의 계층화 방법이 적용되어 부호화된 부호화 데이터를 정확하게 복호할 수 있다. 이에 의해, 부호화 효율의 저감을 억제할 수 있다.
또한, 계층화 방법을 전환하는 횟수는 임의이며, 1회여도 되고, 복수회여도 된다. 또한, 적용되는 계층화 방법의 수도 복수라면 몇 개여도 되며, 예를 들어 3 이상이어도 된다. 또한, 동일한 계층화 방법이 복수회 적용되어도 된다. 예를 들어, 중간 계층에 있어서 계층화 방법 A→계층화 방법 B→계층화 방법 A와 같이 전환해도 된다.
또한, 계층화의 경우와 마찬가지로, 예를 들어 도 5에 도시되는 표의 위에서 9단째의 「방법 2-1」에 기재된 바와 같이, 스케일러블한 복호에 대응한 방법과, 스케일러블한 복호에 비대응인 방법을 전환하도록 해도 된다. 환언하건대, 애트리뷰트 데이터의 계층 구조의 일부의 계층을 스케일러블한 복호에 대응한 방법에 의해 역계층화하도록 해도 된다.
예를 들어, 비특허문헌 3에 기재된 계층화 방법(스케일러블한 복호에 대응한 방법)과, 비특허문헌 2에 기재된 Lifting(스케일러블한 복호에 비대응인 방법)을, 계층 구조의 중간 계층에 있어서 전환하도록 해도 된다. 즉, 애트리뷰트 데이터의 계층 구조의 일부의 계층에 대한 역계층화에만, 비특허문헌 3에 기재된 계층화 방법을 적용하도록 해도 된다.
이와 같이 함으로써, 부호화 효율의 저감을 억제하면서 스케일러블한 복호에 대응할 수 있다.
그때, 예를 들어 도 5에 도시되는 표의 위에서 10단째의 「방법 2-1-1」에 기재된 바와 같이, 소정의 계층보다 상위층을 스케일러블한 복호에 비대응인 방법에 의해 역계층화하고, 그 소정의 계층 이하를 스케일러블한 복호에 대응한 방법에 의해 역계층화하도록 해도 된다. 예를 들어, 스케일러블한 복호에 비대응인 제1 계층화 방법에 의해, 그 제1 계층을 포함하는 소정의 계층보다 상위의 계층에 대하여 역계층화를 행하고, 스케일러블한 복호에 대응한 제2 계층화 방법에 의해, 그 제2 계층을 포함하는 소정의 계층보다 하위의 계층에 대하여 역계층화를 행하도록 해도 된다.
그때, 예를 들어 도 5에 도시되는 표의 위에서 11단째의 「방법 2-1-1-1」에 기재된 바와 같이, 스케일러블한 복호에 비대응인 Lifting(비특허문헌 2에 기재된 방법)과, 스케일러블한 복호에 대응한 Lifting(비특허문헌 3에 기재된 방법)을 전환하도록 해도 된다.
예를 들어, 소정의 계층보다 상위층에 대하여, 비특허문헌 2에 기재된 Lifting에 의해 역계층화를 행하고, 그 소정의 계층 이하에 대해서는, 비특허문헌 3에 기재된 계층화 방법(스케일러블한 복호에 대응한 Lifting)에 의해 역계층화를 행하도록 해도 된다.
이와 같이 함으로써, 스케일러블한 복호에 대한 실질적인 제한이 생기는 것을 억제하면서, 부호화 효율의 저감을 억제할 수 있다. 환언하건대, 부호화 효율의 저감을 억제하면서, 스케일러블한 복호에 대응시킬 수 있다.
<전환하는 방법의 다른 예>
또한, 계층화 방법을 전환하는 계층은 임의이다. 또한, 전환하는 계층화 방법은 어떠한 방법이어도 되며, 상술한 예(스케일러블한 복호에 대응하는 방법과 스케일러블한 복호에 비대응인 방법의 전환)에 한정되지 않는다. 예를 들어, 도 5에 도시되는 표의 위에서 12단째의 「방법 2-2」에 기재된 바와 같이, 비특허문헌 2에 기재된 Lifting과 같은 거리에 따른 샘플링을 사용한 계층화 방법과, 각 포인트(각 포인트에 대응하는 애트리뷰트 데이터)를 모톤 순서로 정렬하고, 포인트를 등간격으로 샘플링함으로써 포인트를 계층화하는 방법을 전환하도록 해도 된다.
예를 들어, 소정의 계층보다 상위층의 역계층화에 대하여 거리에 따른 샘플링을 사용한 계층화 방법을 적용하고, 그 소정의 계층 이하의 계층의 역계층화에 대하여 모톤 순서에서의 등간격 샘플링을 사용한 계층화 방법을 적용하도록 해도 된다. 이와 같이 함으로써, 상술한 예의 경우와 마찬가지로, 부호화 효율의 저감을 억제할 수 있다.
<제어 정보>
예를 들어, 도 5에 도시되는 표의 위에서 13단째의 「방법 2-3」에 기재된 바와 같이, 시그널링된(부호화측으로부터 복호측으로 전송된) 애트리뷰트 데이터에 기초하여 역계층화를 행하도록(역계층화 방법을 전환하도록) 해도 된다.
이 제어 정보의 내용은 임의이다. 예를 들어, 상술한 scalable_enable_flag여도 된다. 또한, 예를 들어 상술한 scalable_enable_num_of_lod여도 된다. 또한, 그들 양쪽이어도 된다. 예를 들어, scalable_enable_flag가 스케일러블한 복호에 대응한 계층화 방법이 적용 가능인 것을 나타내는 경우, 그 애트리뷰트 데이터에 대하여, scalable_enable_num_of_lod에 기초하여, 역계층화 방법을 전환하는 계층을 특정하도록 해도 된다.
물론 이들 예 이외여도 된다. 이러한 제어 정보를 사용함으로써, 부호화 시와 마찬가지로 계층화 방법을 전환할 수 있다. 따라서, 복수의 계층화 방법이 적용된 부호화 데이터를 정확하게 복호할 수 있다. 따라서, 부호화 효율의 저감을 억제할 수 있다.
<2. 참조 관계의 제어>
<애트리뷰트 데이터의 계층 구조>
그런데, 애트리뷰트 데이터의 경우, 각 포인트를 참조 포인트와 예측 포인트로 분류함으로써 계층화가 행해지므로, 포인트가 성긴 경우, 최하위층까지 노드가 형성되지 않는 경우가 있을 수 있다.
예를 들어, 도 7의 A에 도시되는 복셀(50)의 영역에는, 1개 하위의 계층에 있어서, 도 7의 B에 도시되는 바와 같이 복셀(50-1) 내지 복셀(50-4)이 형성된다.
지오메트리 데이터의 계층화의 경우, 도 7의 A에 도시되는 바와 같은, 복셀(50)에 존재하는 유일한 포인트(51)에 대응하여, 그보다 하위층에 있어서도 노드가 생성된다. 예를 들어, 도 7의 B에 있어서 복셀(50-4)에 포인트(51)의 노드가 형성된다. 그러나, 애트리뷰트 데이터의 경우, 유일한 포인트(51)가 복셀(50)의 계층에 할당되면, 그보다 하위의 복셀에 노드를 할당할 수 없다.
따라서, 애트리뷰트 데이터의 경우, 어떤 계층의 포인트가 그 계층보다 상위의 계층의 포인트보다 적어지는 경우가 있을 수 있다. 예를 들어 도 8의 A에 애트리뷰트 데이터의 계층 구조의 예를 도시한다. 도 8의 A에 있어서는, LoD(Level of Detail)=0 내지 LoD=3의 4계층의 예가 도시되어 있다. 각 계층에 있어서 동그라미는 포인트를 나타낸다. 이 예의 경우, LoD=2의 포인트수가 6인 것에 비해, 그보다 하위의 LoD=3의 포인트수는 2이다. 이 경우, 참조 관계는, 이 계층 구조에 따라 형성되므로, 도 8의 B에 있어서 화살표로 나타내어지는 구성으로 된다.
계층수나 계층의 폭(각 계층의 포인트수)은, 데이터에 따라 최적의 값이 다르다. 그러나, 일반적으로는, 상위층으로부터 하위층을 향하여 포인트수가 단조 증가하는 구성이, 가장 부호화 효율이 좋다. 도 8의 예와 같이, 포인트수가 상위층보다 하위층 쪽이 적어지는 구성은, 부호화 효율이 저감될 우려가 있었다.
<복수 계층의 노드의 머지>
그래서, 복수 계층의 포인트(노드)를 머지하여 참조 관계를 구축하도록 해도 된다.
예를 들어, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 포인트별 속성 정보에 대하여, 예측 포인트와 참조 포인트로 분류하고, 그 참조 포인트의 속성 정보를 사용하여 예측 포인트의 속성 정보의 예측값을 도출하고, 그 예측 포인트의 속성 정보와 예측값의 차분값을 도출하는 처리를, 그 참조 포인트에 대하여 재귀적으로 반복함에 따른 속성 정보의 계층화 시에, 복수의 계층의 예측 포인트의 예측값의 도출을, 서로 동일한 계층의 참조 포인트를 참조하여 행하도록 한다.
예를 들어, 정보 처리 장치에 있어서, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 포인트별 속성 정보에 대하여, 예측 포인트와 참조 포인트로 분류하고, 그 참조 포인트의 속성 정보를 사용하여 예측 포인트의 속성 정보의 예측값을 도출하고, 그 예측 포인트의 속성 정보와 예측값의 차분값을 도출하는 처리를, 참조 포인트에 대하여 재귀적으로 반복함으로써, 그 속성 정보의 계층화를 행하는 계층화부를 구비하고, 그 계층화부는, 복수의 계층의 예측 포인트의 예측값의 도출을, 서로 동일한 계층의 참조 포인트를 참조하여 행하도록 해도 된다. 환언하건대, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 그 포인트별 속성 정보를 처리하는 정보 처리 장치에 있어서, 예측 포인트와 참조 포인트로 분류된 포인트 중 참조 포인트의 속성 정보를 사용하여 도출된 예측 포인트의 속성 정보의 예측값과 그 예측 포인트의 속성 정보의 차분값을 도출하는 처리를, 그 참조 포인트에 대하여 재귀적으로 반복함으로써, 그 속성 정보의 계층화를 행하는 계층화부를 구비하고, 그 계층화부가, 그 복수의 계층의 예측 포인트의 예측값의 도출을, 서로 동일한 계층의 참조 포인트를 참조하여 행하도록 해도 된다.
이와 같이 함으로써, 상위층으로부터 하위층을 향하여 포인트수가 단조 증가하는 구성의 참조 관계를 구축할 수 있으므로, 부호화 효율의 저감을 억제할 수 있다.
예를 들어, 도 9에 도시되는 표의 맨 위의 단의 「방법 3」에 기재된 바와 같이, 속성 정보의 계층 구조에 있어서, 처리 대상 계층의 노드(포인트)를 1개 위의 계층의 노드(포인트)에 머지하여 참조 관계를 구축하도록 해도 된다. 예를 들어, 도 8의 A에 도시되는 바와 같은 계층 구조를 갖는 애트리뷰트 데이터에 있어서, LoD=3의 계층의 포인트를, 1개 위의 LoD=2의 계층의 포인트와 머지하여 참조 관계를 구축한다. 이와 같이 함으로써, 도 10에 도시되는 바와 같은, 상위층으로부터 하위층을 향하여 포인트수가 단조 증가하는 구성의 참조 관계를 구축할 수 있다.
또한, 예를 들어 도 9에 도시되는 표의 위에서 2단째의 「방법 3-1」에 기재된 바와 같이, 처리 대상 계층의 노드수가 그 1개 위의 계층의 노드수보다 많은 경우에, 그러한 처리가 행해지도록 해도 된다. 즉, 1개 위의 계층보다 노드수가 많은 경우에는, 그 처리 대상 계층의 노드가 그 1개 위의 계층의 노드를 참조하도록 참조 관계가 구축된다. 이와 같이 함으로써, 보다 용이하게, 상위층으로부터 하위층을 향하여 포인트수가 단조 증가하는 구성의 참조 관계를 구축할 수 있다.
<제어 정보>
예를 들어, 도 9에 도시되는 표의 위에서 3단째의 「방법 3-2」에 기재된 바와 같이, 참조 관계의 구축에 관한 제어 정보를 시그널링(부호화측으로부터 복호측으로 전송)하도록 해도 된다.
제어 정보의 전송 방법은 임의이다. 예를 들어, 신택스 등으로서 규정하며, 포인트 클라우드 데이터의 부호화 데이터(비트스트림)에 포함시켜(예를 들어 헤더 등에 기술하여) 전송하도록 해도 된다. 또한, 포인트 클라우드 데이터의 부호화 데이터와는 다른, 포인트 클라우드 데이터의 부호화 데이터에 관련지어진 데이터로서 전송하도록 해도 된다.
<merge_lower_lod_flag>
제어 정보의 내용은 임의이다. 예를 들어, 다른 계층과 머지하여 참조 관계가 구축되었는지를 나타내는 제어 정보를 복호측에 전송하도록 해도 된다. 그 경우, 이 제어 정보가, 다른 계층과 머지하여 참조 관계가 구축되었는지를 어떤 식으로 표현해도 된다.
예를 들어, 플래그 정보로서 merge_lower_lod_flag를 전송하도록 해도 된다. merge_lower_lod_flag는, 1개 위의 계층과 머지하여 참조 관계를 구축하는지 여부를 나타내는 플래그 정보이다. 이 값이 참(예를 들어 「1」)인 경우, 그 계층의 포인트(노드)는, 1개 위의 계층과 머지하여 참조 관계를 구축하는 것을 나타내고, 이 값이 거짓(예를 들어 「0」)인 경우, 1개 위의 계층과 머지하지 않고 참조 관계를 구축하는(통상대로, 1개 위의 계층의 포인트를 참조하는) 것을 나타낸다. 예를 들어, 이 merge_lower_lod_flag가 생략되는 경우, 이 플래그 정보의 값이 거짓(예를 들어 「0」)인 경우와 등가이도록 해도 된다.
또한, 이 제어 정보(merge_lower_lod_flag)는 계층(LoD(Level of Detail))별로 설정된다.
<역계층화>
이상에 있어서는 부호화에 있어서의 처리에 대하여 설명하였지만, 복호측에 있어서도 본 기술을 적용할 수 있다. 예를 들어, 역계층화에 있어서, 복수 계층의 포인트(노드)가 머지되어 참조 관계가 구축되어 있는 것을 근거로 하여, 복수 계층의 예측 포인트를, 서로 동일한 계층의 참조 포인트를 참조하여 복원하도록 해도 된다.
예를 들어, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 포인트별 속성 정보에 대하여, 예측 포인트와 참조 포인트로 분류하고, 그 참조 포인트의 속성 정보를 사용하여 예측 포인트의 속성 정보의 예측값을 도출하고, 그 예측 포인트의 속성 정보와 예측값의 차분값을 도출하는 처리를, 그 참조 포인트에 대하여 재귀적으로 반복함으로써 계층화된 속성 정보에 대하여 역계층화를 행할 때, 복수의 계층의 예측 포인트의 속성 정보의 예측값을, 서로 동일한 계층의 참조 포인트의 속성 정보를 참조하여 도출하고, 도출한 예측값을 차분값에 가산함으로써, 그 예측 포인트의 속성 정보를 생성하도록 한다.
예를 들어, 정보 처리 장치에 있어서, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 포인트별 속성 정보에 대하여, 예측 포인트와 참조 포인트로 분류하고, 그 참조 포인트의 속성 정보를 사용하여 예측 포인트의 속성 정보의 예측값을 도출하고, 그 예측 포인트의 속성 정보와 예측값의 차분값을 도출하는 처리를, 그 참조 포인트에 대하여 재귀적으로 반복함으로써 계층화된 속성 정보에 대하여 역계층화를 행하는 역계층화부를 구비하고, 그 역계층화부는, 역계층화 시에, 복수의 계층의 예측 포인트의 속성 정보의 예측값을, 서로 동일한 계층의 참조 포인트의 속성 정보를 참조하여 도출하고, 도출한 예측값을 차분값에 가산함으로써, 그 예측 포인트의 속성 정보를 생성하도록 해도 된다. 환언하건대, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 그 포인트별 속성 정보를 처리하는 정보 처리 장치에 있어서, 예측 포인트와 참조 포인트로 분류된 포인트 중 참조 포인트의 속성 정보를 사용하여 도출된 예측 포인트의 속성 정보의 예측값과 그 예측 포인트의 속성 정보의 차분값을 도출하는 처리를, 그 참조 포인트에 대하여 재귀적으로 반복함으로써 계층화된 속성 정보에 대하여 역계층화를 행하는 역계층화부를 구비하고, 그 역계층화부는, 그 역계층화 시에, 복수의 계층의 예측 포인트의 속성 정보의 예측값을, 서로 동일한 계층의 참조 포인트의 속성 정보를 참조하여 도출하고, 그 도출한 예측값을 차분값에 가산함으로써, 그 예측 포인트 속성 정보를 생성하도록 해도 된다.
이와 같이 함으로써, 상위층으로부터 하위층을 향하여 포인트수가 단조 증가하는 구성의 참조 관계가 구축된 애트리뷰트 데이터를 정확하게 역계층화할 수 있으므로, 부호화 효율의 저감을 억제할 수 있다.
예를 들어, 도 9에 도시되는 표의 위에서 4단째의 「방법 4」에 기재된 바와 같이, 역계층화에 있어서 처리 대상 계층의 노드(포인트)의 참조처를 2개 위의 계층에 있어서 탐색해도 된다. 이와 같이 함으로써, 도 10에 도시되는 바와 같은, 상위층으로부터 하위층을 향하여 포인트수가 단조 증가하는 구성의 참조 관계가 구축된 애트리뷰트 데이터를 정확하게 역계층화할 수 있다. 따라서 부호화 효율의 저감을 억제할 수 있다.
<제어 정보>
예를 들어, 도 9에 도시되는 표의 위에서 5단째의 「방법 4-1」에 기재된 바와 같이, 시그널링된(부호화측으로부터 복호측으로 전송된) 애트리뷰트 데이터에 기초하여 역계층화를 행하도록(역계층화 방법을 전환하도록) 해도 된다.
이 제어 정보의 내용은 임의이다. 예를 들어, 상술한 merge_lower_lod_flag여도 된다. merge_lower_lod_flag는, 역계층화 시에, 다른 계층과 동일한 계층을 참조하는지를 나타내는 제어 정보라고도 할 수 있다. 즉, 역계층 시에, 이 merge_lower_lod_flag에 기초하여 참조처의 계층을 특정할 수 있다. 예를 들어, 이 merge_lower_lod_flag에 기초하여, 처리 대상의 계층의 참조처로 되는 계층을 특정하고, 특정한 계층의 참조 포인트의 애트리뷰트 데이터를 참조하여, 처리 대상의 계층의 예측 포인트의 애트리뷰트 데이터의 예측값을 도출하도록 해도 된다.
이러한 제어 정보를 사용함으로써, 부호화 시와 동일한 방법으로 역계층화를 행할 수 있다. 따라서, 부호화 효율의 저감을 억제할 수 있다.
<제어 정보를 사용하지 않는 경우>
또한, 이상과 같은 제어 정보를 사용하지 않고 역계층화의 방법을 설정하도록 해도 된다. 예를 들어, 복호측에 있어서도, 처리 대상의 계층과 그 1개 상위의 계층에 있어서 포인트수를 비교하고, 1개 상위의 계층과 비교하여 포인트가 충분히 많지 않은 계층에 대하여, 2개 상위의 계층의 참조 포인트의 속성 정보를 참조하여, 예측 포인트의 속성 정보의 예측값을 도출하도록 해도 된다. 즉, 복호측에 있어서도 부호화측과 마찬가지의 판정 처리를 행하고, 그 판정 결과에 기초하여 참조 관계를 구축하고, 예측값을 도출하도록 해도 된다.
이와 같이 함으로써, 부호화 시와 동일한 방법으로 역계층화를 행할 수 있다. 따라서, 부호화 효율의 저감을 억제할 수 있다. 또한, 제어 정보의 전송을 생략할 수 있으므로, 부호화 효율의 저감을 더 억제할 수 있다.
<3. 제1 실시 형태>
<부호화 장치>
다음에, <1. 계층화ㆍ역계층화 방법의 전환>에 있어서 상술한 본 기술을 적용하는 장치에 대하여 설명한다. 도 11은, 본 기술을 적용한 정보 처리 장치의 일 양태인 부호화 장치의 구성의 일례를 도시하는 블록도이다. 도 11에 도시되는 부호화 장치(100)는, 포인트 클라우드(3D 데이터)를 부호화하는 장치이다. 부호화 장치(100)는, <1. 계층화ㆍ역계층화 방법의 전환>에 있어서 상술한 본 기술을 적용하여 포인트 클라우드를 부호화한다.
또한, 도 11에 있어서는, 처리부나 데이터의 흐름 등의 주된 것을 도시하고 있으며, 도 11에 도시되는 것이 전부라고는 할 수 없다. 즉, 부호화 장치(100)에 있어서, 도 11에 있어서 블록으로서 도시되어 있지 않은 처리부가 존재하거나, 도 11에 있어서 화살표 등으로서 도시되어 있지 않은 처리나 데이터의 흐름이 존재하거나 해도 된다.
도 11에 도시되는 바와 같이 부호화 장치(100)는, 위치 정보 부호화부(101), 위치 정보 복호부(102), 포인트 클라우드 생성부(103), 속성 정보 부호화부(104) 및 비트스트림 생성부(105)를 갖는다.
위치 정보 부호화부(101)는, 부호화 장치(100)에 입력된 포인트 클라우드(3D 데이터)의 지오메트리 데이터(위치 정보)를 부호화한다. 이 부호화 방법은, 스케일러블한 복호에 대응한 방법이면 임의이다. 예를 들어 위치 정보 부호화부(101)는, 지오메트리 데이터를 계층화하여 Octree를 생성하고, 그 Octree를 부호화한다. 또한, 예를 들어 노이즈 억제(디노이즈)를 위한 필터링이나 양자화 등의 처리가 행해지도록 해도 된다. 위치 정보 부호화부(101)는, 생성된 지오메트리 데이터의 부호화 데이터를 위치 정보 복호부(102) 및 비트스트림 생성부(105)에 공급한다.
위치 정보 복호부(102)는, 위치 정보 부호화부(101)로부터 공급되는 지오메트리 데이터의 부호화 데이터를 취득하고, 그 부호화 데이터를 복호한다. 이 복호 방법은, 위치 정보 부호화부(101)에 의한 부호화에 대응하는 방법이면 임의이다. 예를 들어, 디노이즈를 위한 필터링이나 역양자화 등의 처리가 행해지도록 해도 된다. 위치 정보 복호부(102)는, 생성된 지오메트리 데이터(복호 결과)를 포인트 클라우드 생성부(103)에 공급한다.
포인트 클라우드 생성부(103)는, 부호화 장치(100)에 입력되는 포인트 클라우드의 애트리뷰트 데이터(속성 정보)와, 위치 정보 복호부(102)로부터 공급되는 지오메트리 데이터(복호 결과)를 취득한다. 포인트 클라우드 생성부(103)는, 애트리뷰트 데이터를 지오메트리 데이터(복호 결과)에 맞추는 처리(리컬러 처리)를 행한다. 포인트 클라우드 생성부(103)는, 지오메트리 데이터(복호 결과)에 대응시킨 애트리뷰트 데이터를 속성 정보 부호화부(104)에 공급한다.
속성 정보 부호화부(104)는, 포인트 클라우드 생성부(103)로부터 공급되는 지오메트리 데이터(복호 결과) 및 애트리뷰트 데이터를 취득한다. 속성 정보 부호화부(104)는, 그 지오메트리 데이터(복호 결과)를 사용하여, 애트리뷰트 데이터를 부호화하여, 애트리뷰트 데이터의 부호화 데이터를 생성한다.
그때, 속성 정보 부호화부(104)는, <1. 계층화ㆍ역계층화 방법의 전환>에 있어서 상술한 본 기술을 적용하여, 애트리뷰트 데이터를 부호화한다. 예를 들어, 속성 정보 부호화부(104)는, 애트리뷰트 데이터의 계층화에 있어서, 그 애트리뷰트 데이터의 계층화 방법을 중간 계층에 있어서 전환한다. 속성 정보 부호화부(104)는, 생성된 애트리뷰트 데이터의 부호화 데이터를 비트스트림 생성부(105)에 공급한다.
비트스트림 생성부(105)는, 위치 정보 부호화부(101)로부터 공급되는 위치 정보의 부호화 데이터를 취득한다. 또한, 비트스트림 생성부(105)는, 속성 정보 부호화부(104)로부터 공급되는 속성 정보의 부호화 데이터를 취득한다. 비트스트림 생성부(105)는, 이들 부호화 데이터를 포함하는 비트스트림을 생성한다. 비트스트림 생성부(105)는, 생성된 비트스트림을 부호화 장치(100)의 외부에 출력한다.
이러한 구성으로 함으로써, 부호화 장치(100)는, 복수의 계층화 방법을 적용하여 애트리뷰트 데이터의 계층화 구조를 형성할 수 있다. 이에 의해, 보다 다양한 애트리뷰트 데이터에 대하여 보다 적합한 방법으로 계층화를 행할 수 있어, 부호화 효율의 저감을 억제할 수 있다.
또한, 부호화 장치(100)의 이들 처리부(위치 정보 부호화부(101) 내지 비트스트림 생성부(105))는, 각각 임의의 구성을 갖는다. 예를 들어, 각 처리부가, 상술한 처리를 실현하는 논리 회로에 의해 구성되도록 해도 된다. 또한, 각 처리부가, 예를 들어 CPU(Central Processing Unit), ROM(Read Only Memory), RAM(Random Access Memory) 등을 갖고, 그것들을 사용하여 프로그램을 실행함으로써, 상술한 처리를 실현하도록 해도 된다. 물론, 각 처리부가 그 양쪽의 구성을 갖고, 상술한 처리의 일부를 논리 회로에 의해 실현하고, 기타를 프로그램을 실행함으로써 실현하도록 해도 된다. 각 처리부의 구성은 서로 독립되어 있어도 되며, 예를 들어 일부의 처리부가 상술한 처리의 일부를 논리 회로에 의해 실현하고, 다른 일부의 처리부가 프로그램을 실행함으로써 상술한 처리를 실현하고, 또 다른 처리부가 논리 회로와 프로그램의 실행의 양쪽에 의해 상술한 처리를 실현하도록 해도 된다.
<속성 정보 부호화부>
도 12는, 속성 정보 부호화부(104)(도 11)의 주된 구성예를 도시하는 블록도이다. 또한, 도 12에 있어서는, 처리부나 데이터의 흐름 등의 주된 것을 도시하고 있으며, 도 12에 도시되는 것이 전부라고는 할 수 없다. 즉, 속성 정보 부호화부(104)에 있어서, 도 12에 있어서 블록으로서 도시되어 있지 않은 처리부가 존재하거나, 도 12에 있어서 화살표 등으로서 도시되어 있지 않은 처리나 데이터의 흐름이 존재하거나 해도 된다.
도 12에 도시되는 바와 같은 속성 정보 부호화부(104)는, 계층화 처리부(111), 양자화부(112) 및 부호화부(113)를 갖는다.
계층화 처리부(111)는, 애트리뷰트 데이터의 계층화에 관한 처리를 행한다. 예를 들어, 계층화 처리부(111)는, 포인트 클라우드 생성부(103)로부터 공급되는 애트리뷰트 데이터나 지오메트리 데이터(복호 결과)를 취득한다. 계층화 처리부(111)는, 그 지오메트리 데이터를 사용하여 애트리뷰트 데이터를 계층화한다. 그때, 계층화 처리부(111)는, <1. 계층화ㆍ역계층화 방법의 전환>에 있어서 상술한 본 기술을 적용하여 계층화를 행한다. 예를 들어, 계층화 처리부(111)는, 애트리뷰트 데이터의 계층화에 있어서, 그 애트리뷰트 데이터의 계층화 방법을 중간 계층에 있어서 전환한다. 환언하건대, 계층화 처리부(111)는, 복수의 계층화 방법을 사용하여 애트리뷰트 데이터의 계층화를 행하고, 각각의 계층화 방법에 의해 서로 다른 계층을 생성한다. 계층화 처리부(111)는, 계층화한 애트리뷰트 데이터(차분값)를 양자화부(112)에 공급한다.
그때, 계층화 처리부(111)는, 계층화에 관한 제어 정보도 생성한다. 계층화 처리부(111)는, 생성된 제어 정보도 애트리뷰트 데이터(차분값)와 함께 양자화부(112)에 공급한다.
양자화부(112)는, 계층화 처리부(111)로부터 공급되는 애트리뷰트 데이터(차분값)나 제어 정보를 취득한다. 양자화부(112)는, 그 애트리뷰트 데이터(차분값)를 양자화한다. 이 양자화의 방법은 임의이다. 양자화부(112)는, 그 양자화된 애트리뷰트 데이터(차분값)나 제어 정보를 부호화부(113)에 공급한다.
부호화부(113)는, 양자화부(112)로부터 공급되는, 양자화된 애트리뷰트 데이터(차분값)나 제어 정보를 취득한다. 부호화부(113)는, 그 양자화된 애트리뷰트 데이터(차분값)를 부호화하여, 애트리뷰트 데이터의 부호화 데이터를 생성한다. 이 부호화 방법은 임의이다. 또한, 부호화부(113)는, 생성된 부호화 데이터에 제어 정보를 포함시킨다. 환언하건대, 제어 정보를 포함하는 애트리뷰트 데이터의 부호화 데이터를 생성한다. 부호화부(113)는, 생성된 부호화 데이터를 비트스트림 생성부(105)에 공급한다.
이상과 같이 계층화를 행함으로써, 속성 정보 부호화부(104)는, 복수의 계층화 방법을 적용하여 애트리뷰트 데이터의 계층화 구조를 형성할 수 있다. 이에 의해, 보다 다양한 애트리뷰트 데이터에 대하여 보다 적합한 방법으로 계층화를 행할 수 있어, 부호화 효율의 저감을 억제할 수 있다.
또한, 이들 처리부(계층화 처리부(111) 내지 부호화부(113))는 임의의 구성을 갖는다. 예를 들어, 각 처리부가, 상술한 처리를 실현하는 논리 회로에 의해 구성되도록 해도 된다. 또한, 각 처리부가, 예를 들어 CPU, ROM, RAM 등을 갖고, 그것들을 사용하여 프로그램을 실행함으로써, 상술한 처리를 실현하도록 해도 된다. 물론, 각 처리부가, 그 양쪽의 구성을 갖고, 상술한 처리의 일부를 논리 회로에 의해 실현하고, 기타를 프로그램을 실행함으로써 실현하도록 해도 된다. 각 처리부의 구성은 서로 독립되어 있어도 되며, 예를 들어 일부의 처리부가 상술한 처리의 일부를 논리 회로에 의해 실현하고, 다른 일부의 처리부가 프로그램을 실행함으로써 상술한 처리를 실현하고, 또 다른 처리부가 논리 회로와 프로그램의 실행의 양쪽에 의해 상술한 처리를 실현하도록 해도 된다.
<계층화 처리부>
도 13은, 계층화 처리부(111)(도 12)의 주된 구성예를 도시하는 블록도이다. 또한, 도 13에 있어서는, 처리부나 데이터의 흐름 등의 주된 것을 도시하고 있으며, 도 13에 도시되는 것이 전부라고는 할 수 없다. 즉, 계층화 처리부(111)에 있어서, 도 13에 있어서 블록으로서 도시되어 있지 않은 처리부가 존재하거나, 도 13에 있어서 화살표 등으로서 도시되어 있지 않은 처리나 데이터의 흐름이 존재하거나 해도 된다.
또한, 여기서는, 계층화 처리부(111)가, 스케일러블한 복호에 대응한 계층화 방법과, 스케일러블한 복호에 비대응인 계층화 방법을 중간 계층에 있어서 전환하는 것으로서 설명한다. 도 13에 도시되는 바와 같이 계층화 처리부(111)는, 제어부(121), 스케일러블 대응 계층화 처리부(122), 스케일러블 비대응 계층화 처리부(123), 반전부(124) 및 가중치 부여부(125)를 갖는다.
제어부(121)는, 계층화의 제어에 관한 처리를 행한다. 예를 들어, 제어부(121)는, 포인트 클라우드 생성부(103)로부터 공급되는 애트리뷰트 데이터나 지오메트리 데이터(복호 결과)를 취득한다. 제어부(121)는, 취득한 애트리뷰트 데이터나 지오메트리 데이터(복호 결과)를 스케일러블 대응 계층화 처리부(122)에 공급한다.
또한, 제어부(121)는, 스케일러블 대응 계층화 처리부(122)나 스케일러블 비대응 계층화 처리부(123)를 제어하여, 계층화를 실행시킨다. 예를 들어, 제어부(121)는, <1. 계층화ㆍ역계층화 방법의 전환>에 있어서 상술한 본 기술을 적용하여 계층화를 행하게 한다. 즉, 예를 들어 제어부(121)는, 스케일러블 대응 계층화 처리부(122) 혹은 스케일러블 비대응 계층화 처리부(123), 또는 그 양쪽을 구동시켜, 각각의 계층화 방법에 의한 계층화를 행하게 한다.
또한, 제어부(121)는, 그 애트리뷰트 데이터의 계층화에 관한 제어 정보를 생성하고, 그 제어 정보를 양자화부(112)에 공급한다.
스케일러블 대응 계층화 처리부(122)는, 스케일러블한 복호에 대응하는 방법(예를 들어, 비특허문헌 3에 기재된 계층화 방법)에 의한 애트리뷰트 데이터의 계층화에 관한 처리를 행한다. 예를 들어, 스케일러블 대응 계층화 처리부(122)는, 제어부(121)로부터 공급되는 애트리뷰트 데이터나 지오메트리 데이터(복호 결과)를 취득한다.
스케일러블 대응 계층화 처리부(122)는, 제어부(121)의 제어에 따라, 취득한 애트리뷰트 데이터를, 취득한 지오메트리 데이터를 사용하여, 스케일러블한 복호에 대응하는 방법으로 계층화한다. 예를 들어, 스케일러블 대응 계층화 처리부(122)는, 스케일러블한 복호에 대응하는 방법을 사용하여, 제어부(121)에 의해 지정된 계층(예를 들어, 처리의 실행이 허가된 계층, 처리가 금지되어 있지 않은 계층이어도 됨)을 생성한다.
스케일러블 대응 계층화 처리부(122)는, 생성된 계층의 애트리뷰트 데이터, 계층화되어 있지 않은 애트리뷰트 데이터 및 지오메트리 데이터 등을 스케일러블 비대응 계층화 처리부(123)에 공급한다.
또한, 제어부(121)에 의해 계층화가 허가되지 않는 경우, 스케일러블 대응 계층화 처리부(122)는 계층화를 생략할 수 있다. 그 경우, 스케일러블 대응 계층화 처리부(122)는, 취득한 애트리뷰트 데이터 및 지오메트리 데이터를 전부 스케일러블 비대응 계층화 처리부(123)에 공급한다.
스케일러블 비대응 계층화 처리부(123)는, 스케일러블한 복호에 비대응인 방법(예를 들어, 비특허문헌 2에 기재된 Lifting)에 의한 애트리뷰트 데이터의 계층화에 관한 처리를 행한다. 예를 들어, 스케일러블 비대응 계층화 처리부(123)는, 스케일러블 대응 계층화 처리부(122)로부터 공급되는 애트리뷰트 데이터나 지오메트리 데이터(복호 결과) 등을 취득한다.
스케일러블 비대응 계층화 처리부(123)는, 제어부(121)의 제어에 따라, 계층화되어 있지 않은 애트리뷰트 데이터를, 취득한 지오메트리 데이터를 사용하여, 스케일러블한 복호에 비대응인 방법으로 계층화한다. 예를 들어, 스케일러블 비대응 계층화 처리부(123)는, 스케일러블한 복호에 비대응인 방법을 사용하여, 제어부(121)에 의해 지정된 계층(예를 들어, 처리의 실행이 허가된 계층, 처리가 금지되어 있지 않은 계층이어도 됨)을 생성한다.
이러한 스케일러블 대응 계층화 처리부(122) 및 스케일러블 비대응 계층화 처리부(123)에 의한 계층화에 의해, 애트리뷰트 데이터의 전체 계층이 생성된다(전부 계층화됨).
스케일러블 비대응 계층화 처리부(123)는, 계층화된 애트리뷰트 데이터를 반전부(124)에 공급한다.
또한, 제어부(121)에 의해 계층화가 허가되지 않는 경우, 스케일러블 비대응 계층화 처리부(123)는 계층화를 생략할 수 있다. 그 경우, 취득한 애트리뷰트 데이터는 전부 계층화되어 있고, 스케일러블 대응 계층화 처리부(122)는, 그 애트리뷰트 데이터를 반전부(124)에 공급한다.
반전부(124)는, 계층의 반전에 관한 처리를 행한다. 예를 들어, 반전부(124)는, 스케일러블 비대응 계층화 처리부(123)로부터 공급되는, 계층화된 애트리뷰트 데이터를 취득한다. 이 애트리뷰트 데이터는, 각 계층의 정보가, 그 생성순으로 계층화되어 있다.
반전부(124)는, 그 애트리뷰트 데이터의 계층을 반전시킨다. 예를 들어, 반전부(124)는, 애트리뷰트 데이터의 각 계층에 대하여, 그 생성순과 역순으로 계층 번호(최상위층이 0, 1계층 낮아질 때마다 값이 1씩 인크리먼트되고, 최하위층이 최댓값으로 되는 계층을 식별하기 위한 번호)를 부여하고, 생성순이 최하위층으로부터 최상위층을 향하는 순으로 되도록 한다.
반전부(124)는, 계층을 반전시킨 애트리뷰트 데이터를 가중치 부여부(125)에 공급한다.
가중치 부여부(125)는, 가중치 부여에 관한 처리를 행한다. 예를 들어, 가중치 부여부(125)는, 반전부(124)로부터 공급되는 애트리뷰트 데이터를 취득한다. 가중치 부여부(125)는, 취득한 애트리뷰트 데이터의 가중치를 도출한다. 이 가중치의 도출 방법은 임의이다. 스케일러블 대응 계층화 처리부(122)에 의해 생성된 계층과, 스케일러블 비대응 계층화 처리부(123)에 의해 생성된 계층에서 가중치의 도출 방법을 바꾸어도 된다.
가중치 부여부(125)는, 애트리뷰트 데이터(차분값)와 도출한 가중치를 양자화부(112)(도 12)에 공급한다. 또한, 가중치 부여부(125)는, 도출한 가중치를 제어 정보로서 양자화부(112)에 공급하고, 복호측에 전송시키도록 해도 된다.
제어부(121)가 스케일러블 대응 계층화 처리부(122) 및 스케일러블 비대응 계층화 처리부(123)를 제어하고, <1. 계층화ㆍ역계층화 방법의 전환>에 있어서 상술한 바와 같이, 애트리뷰트 데이터의 계층화 방법을 중간 계층에 있어서 전환한다. 이와 같이 함으로써, 계층화 처리부(111)는, 복수의 계층화 방법을 적용하여 애트리뷰트 데이터의 계층화 구조를 형성할 수 있다. 이에 의해, 보다 다양한 애트리뷰트 데이터에 대하여 보다 적합한 방법으로 계층화를 행할 수 있어, 부호화 효율의 저감을 억제할 수 있다.
또한, 이들 처리부(제어부(121) 내지 가중치 부여부(125))는 임의의 구성을 갖는다. 예를 들어, 각 처리부가, 상술한 처리를 실현하는 논리 회로에 의해 구성되도록 해도 된다. 또한, 각 처리부가, 예를 들어 CPU, ROM, RAM 등을 갖고, 그것들을 사용하여 프로그램을 실행함으로써, 상술한 처리를 실현하도록 해도 된다. 물론, 각 처리부가, 그 양쪽의 구성을 갖고, 상술한 처리의 일부를 논리 회로에 의해 실현하고, 기타를 프로그램을 실행함으로써 실현하도록 해도 된다. 각 처리부의 구성은 서로 독립되어 있어도 되며, 예를 들어 일부의 처리부가 상술한 처리의 일부를 논리 회로에 의해 실현하고, 다른 일부의 처리부가 프로그램을 실행함으로써 상술한 처리를 실현하고, 또 다른 처리부가 논리 회로와 프로그램의 실행의 양쪽에 의해 상술한 처리를 실현하도록 해도 된다.
<부호화 처리의 흐름>
다음에, 이 부호화 장치(100)에 의해 실행되는 처리에 대하여 설명한다. 부호화 장치(100)는, 부호화 처리를 실행함으로써 포인트 클라우드의 데이터를 부호화한다. 이 부호화 처리의 흐름의 예를, 도 14의 흐름도를 참조하여 설명한다.
부호화 처리가 개시되면, 부호화 장치(100)의 위치 정보 부호화부(101)는, 스텝 S101에 있어서, 입력된 포인트 클라우드의 지오메트리 데이터(위치 정보)를 부호화하여, 지오메트리 데이터의 부호화 데이터를 생성한다.
스텝 S102에 있어서, 위치 정보 복호부(102)는, 스텝 S101에 있어서 생성된 지오메트리 데이터의 부호화 데이터를 복호하여, 위치 정보를 생성한다.
스텝 S103에 있어서, 포인트 클라우드 생성부(103)는, 입력된 포인트 클라우드의 애트리뷰트 데이터(속성 정보)와, 스텝 S102에 있어서 생성된 지오메트리 데이터(복호 결과)를 사용하여, 리컬러 처리를 행하여, 애트리뷰트 데이터를 지오메트리 데이터에 대응시킨다.
스텝 S104에 있어서, 속성 정보 부호화부(104)는, 속성 정보 부호화 처리를 실행함으로써, 스텝 S103에 있어서 리컬러 처리된 애트리뷰트 데이터를 부호화하여, 애트리뷰트 데이터의 부호화 데이터를 생성한다. 그때, 속성 정보 부호화부(104)는, <1. 계층화ㆍ역계층화 방법의 전환>에 있어서 상술한 본 기술을 적용하여 처리를 행한다. 예를 들어, 속성 정보 부호화부(104)는, 애트리뷰트 데이터의 계층화에 있어서, 그 애트리뷰트 데이터의 계층화 방법을 중간 계층에 있어서 전환한다. 속성 정보 부호화 처리의 상세에 대해서는 후술한다.
스텝 S105에 있어서, 비트스트림 생성부(105)는, 스텝 S101에 있어서 생성된 지오메트리 데이터의 부호화 데이터와, 스텝 S104에 있어서 생성된 애트리뷰트 데이터의 부호화 데이터를 포함하는 비트스트림을 생성하여 출력한다.
스텝 S105의 처리가 종료되면 부호화 처리가 종료된다.
이와 같이 각 스텝의 처리를 행함으로써, 부호화 장치(100)는, 복수의 계층화 방법을 적용하여 애트리뷰트 데이터의 계층화 구조를 형성할 수 있다. 이에 의해, 보다 다양한 애트리뷰트 데이터에 대하여 보다 적합한 방법으로 계층화를 행할 수 있어, 부호화 효율의 저감을 억제할 수 있다.
<속성 정보 부호화 처리의 흐름>
다음에, 도 14의 스텝 S104에 있어서 실행되는 속성 정보 부호화 처리의 흐름의 예를, 도 15의 흐름도를 참조하여 설명한다.
속성 정보 부호화 처리가 개시되면, 속성 정보 부호화부(104)의 계층화 처리부(111)는, 스텝 S111에 있어서, 계층화 처리를 실행함으로써 애트리뷰트 데이터를 계층화하고, 각 포인트의 애트리뷰트 데이터의 차분값을 도출한다. 그때, 계층화 처리부(111)는, <1. 계층화ㆍ역계층화 방법의 전환>에 있어서 상술한 본 기술을 적용하여 계층화를 행한다. 예를 들어, 계층화 처리부(111)는, 애트리뷰트 데이터의 계층화 방법을 중간 계층에 있어서 전환한다. 계층화 처리의 상세에 대해서는 후술한다.
스텝 S112에 있어서, 양자화부(112)는, 스텝 S111에 있어서 도출된 각 차분값을 양자화한다.
스텝 S113에 있어서, 부호화부(113)는, 스텝 S112에 있어서 양자화된 차분값을 부호화하여, 애트리뷰트 데이터의 부호화 데이터를 생성한다.
스텝 S113의 처리가 종료되면 속성 정보 부호화 처리가 종료되고, 처리는 도 14로 되돌아간다.
이와 같이 각 스텝의 처리를 행함으로써, 속성 정보 부호화부(104)는, 복수의 계층화 방법을 적용하여 애트리뷰트 데이터의 계층화 구조를 형성할 수 있다. 이에 의해, 보다 다양한 애트리뷰트 데이터에 대하여 보다 적합한 방법으로 계층화를 행할 수 있어, 부호화 효율의 저감을 억제할 수 있다.
<계층화 처리의 흐름>
다음에, 도 16의 흐름도를 참조하여, 도 15의 스텝 S111에 있어서 실행되는 계층화 처리의 흐름의 예를 설명한다.
계층화 처리가 개시되면, 계층화 처리부(111)의 제어부(121)는, 스텝 S121에 있어서, 스케일러블한 복호에 대응하는 방법의 적용 범위를 설정한다. 제어부(121)는, 그 설정에 기초하여 계층화를 제어한다.
스텝 S122에 있어서, 스케일러블 대응 계층화 처리부(122)는, 스텝 S121에 있어서 설정된 스케일러블한 복호에 대응하는 방법의 적용 범위 내의 계층을, 스케일러블한 복호에 대응하는 방법에 의해 생성한다. 즉, 스케일러블 대응 계층화 처리부(122)는, 스케일러블한 복호를 행할 수 있도록 부호화하는 각 계층에 대하여, 스케일러블한 복호에 대응하는 방법을 사용하여 참조 포인트와 예측 포인트를 설정하고, 참조 포인트의 애트리뷰트 데이터를 사용하여 예측 포인트의 애트리뷰트 데이터의 예측값을 도출하고, 그 예측 포인트의 애트리뷰트 데이터와 예측값의 차분값을 도출한다.
스텝 S123에 있어서, 스케일러블 비대응 계층화 처리부(123)는, 스텝 S122에 있어서 생성되지 않은 계층, 즉 스텝 S121에 있어서 설정된 스케일러블한 복호에 대응하는 방법의 적용 범위 외의 계층을, 스케일러블한 복호에 비대응인 방법에 의해 생성한다. 즉, 스케일러블 비대응 계층화 처리부(123)는, 스케일러블한 복호를 행할 수 없도록 부호화하는 각 계층에 대하여, 스케일러블한 복호에 비대응인 방법을 사용하여 참조 포인트와 예측 포인트를 설정하고, 참조 포인트의 애트리뷰트 데이터를 사용하여 예측 포인트의 애트리뷰트 데이터의 예측값을 도출하고, 그 예측 포인트의 애트리뷰트 데이터와 예측값의 차분값을 도출한다.
스텝 S122 및 스텝 S123의 처리에 의해, 애트리뷰트 데이터의 전체 계층이 생성되면, 반전부(124)는, 스텝 S124에 있어서, 생성된 애트리뷰트 데이터의 계층을 반전하고, 각 계층에 생성순과 역방향으로 계층 번호를 부여한다.
스텝 S125에 있어서, 가중치 부여부(125)는, 각 계층의 애트리뷰트 데이터에 대하여 가중치를 도출한다.
스텝 S126에 있어서, 제어부(121)는, 애트리뷰트 데이터의 계층화에 관한 제어 정보를 생성하고, 그것을 양자화부(112)에 공급하고, 복호측에 전송시킨다.
스텝 S126의 처리가 종료되면 처리는 도 15로 되돌아간다.
이와 같이 각 스텝의 처리를 행함으로써, 계층화 처리부(111)는, 복수의 계층화 방법을 적용하여 애트리뷰트 데이터의 계층화 구조를 형성할 수 있다. 이에 의해, 보다 다양한 애트리뷰트 데이터에 대하여 보다 적합한 방법으로 계층화를 행할 수 있어, 부호화 효율의 저감을 억제할 수 있다.
<4. 제2 실시 형태>
<복호 장치>
다음에, <1. 계층화ㆍ역계층화 방법의 전환>에 있어서 상술한 본 기술을 적용하는 장치의 다른 예에 대하여 설명한다. 도 17은, 본 기술을 적용한 정보 처리 장치의 일 양태인 복호 장치의 구성의 일례를 도시하는 블록도이다. 도 17에 도시되는 복호 장치(200)는, 포인트 클라우드(3D 데이터)의 부호화 데이터를 복호하는 장치이다. 복호 장치(200)는, <1. 계층화ㆍ역계층화 방법의 전환>에 있어서 상술한 본 기술을 적용하여 포인트 클라우드의 부호화 데이터를 복호한다.
또한, 도 17에 있어서는, 처리부나 데이터의 흐름 등의 주된 것을 도시하고 있으며, 도 17에 도시되는 것이 전부라고는 할 수 없다. 즉, 복호 장치(200)에 있어서, 도 17에 있어서 블록으로서 도시되어 있지 않은 처리부가 존재하거나, 도 17에 있어서 화살표 등으로서 도시되어 있지 않은 처리나 데이터의 흐름이 존재하거나 해도 된다.
도 17에 도시되는 바와 같이 복호 장치(200)는, 복호 대상 LoD 심도 설정부(201), 부호화 데이터 추출부(202), 위치 정보 복호부(203), 속성 정보 복호부(204) 및 포인트 클라우드 생성부(205)를 갖는다.
복호 대상 LoD 심도 설정부(201)는, 복호 대상으로 하는 계층(LoD)의 심도의 설정에 관한 처리를 행한다. 예를 들어, 복호 대상 LoD 심도 설정부(201)는, 부호화 데이터 추출부(202)에 보유되어 있는 포인트 클라우드의 부호화 데이터에 대하여, 어느 계층까지 복호할지를 설정한다. 이 복호 대상으로 하는 계층 심도 설정의 방법은 임의이다.
예를 들어, 복호 대상 LoD 심도 설정부(201)가, 유저나 애플리케이션 등의 외부로부터의 계층 심도에 관한 지시에 기초하여 설정하도록 해도 된다. 또한, 복호 대상 LoD 심도 설정부(201)가, 출력 화상 등, 임의의 정보에 기초하여 복호 대상으로 하는 계층 심도를 구하여 설정하도록 해도 된다.
예를 들어, 복호 대상 LoD 심도 설정부(201)가, 포인트 클라우드로부터 생성되는 2차원 화상의 시점 위치, 방향, 화각, 시점의 움직임(이동, 팬, 틸트, 줌) 등에 기초하여, 복호 대상으로 하는 계층 심도를 설정하도록 해도 된다.
또한, 이 복호 대상으로 하는 계층 심도 설정의 데이터 단위는 임의이다. 예를 들어, 복호 대상 LoD 심도 설정부(201)는, 포인트 클라우드 전체에 대하여 계층 심도를 설정할 수도 있고, 오브젝트별로 계층 심도를 설정할 수도 있고, 오브젝트 내의 부분 영역별로 계층 심도를 설정할 수도 있다. 물론, 이들 예 이외의 데이터 단위로 계층 심도를 설정할 수도 있다.
부호화 데이터 추출부(202)는, 복호 장치(200)에 입력되는 비트스트림을 취득하고, 보유한다. 부호화 데이터 추출부(202)는, 최상위부터 복호 대상 LoD 심도 설정부(201)에 의해 지정된 계층까지의 지오메트리 데이터(위치 정보) 및 애트리뷰트 데이터(속성 정보)의 부호화 데이터를, 그 보유하고 있는 비트스트림으로부터 추출한다. 부호화 데이터 추출부(202)는, 추출한 지오메트리 데이터의 부호화 데이터를 위치 정보 복호부(203)에 공급한다. 부호화 데이터 추출부(202)는, 추출한 애트리뷰트 데이터의 부호화 데이터를 속성 정보 복호부(204)에 공급한다.
위치 정보 복호부(203)는, 부호화 데이터 추출부(202)로부터 공급되는 지오메트리 데이터의 부호화 데이터를 취득한다. 위치 정보 복호부(203)는, 그 지오메트리 데이터의 부호화 데이터를 복호하여, 지오메트리 데이터(복호 결과)를 생성한다. 이 복호 방법은, 부호화 장치(100)의 위치 정보 복호부(102)의 경우와 마찬가지의 방법이면 임의이다. 위치 정보 복호부(203)는, 생성된 지오메트리 데이터(복호 결과)를, 속성 정보 복호부(204) 및 포인트 클라우드 생성부(205)에 공급한다.
속성 정보 복호부(204)는, 부호화 데이터 추출부(202)로부터 공급되는 애트리뷰트 데이터의 부호화 데이터를 취득한다. 속성 정보 복호부(204)는, 위치 정보 복호부(203)로부터 공급되는 지오메트리 데이터(복호 결과)를 취득한다. 속성 정보 복호부(404)는, 그 위치 정보(복호 결과)를 사용하여, <1. 계층화ㆍ역계층화 방법의 전환>에 있어서 상술한 본 기술을 적용한 방법에 의해 애트리뷰트 데이터의 부호화 데이터를 복호하여, 애트리뷰트 데이터(복호 결과)를 생성한다. 예를 들어, 속성 정보 복호부(204)는, 애트리뷰트 데이터의 역계층화 방법을 중간 계층에 있어서 전환한다. 속성 정보 복호부(204)는, 생성된 애트리뷰트 데이터(복호 결과)를 포인트 클라우드 생성부(405)에 공급한다.
포인트 클라우드 생성부(205)는, 위치 정보 복호부(203)로부터 공급되는 지오메트리 데이터(복호 결과)를 취득한다. 포인트 클라우드 생성부(205)는, 속성 정보 복호부(204)로부터 공급되는 애트리뷰트 데이터(복호 결과)를 취득한다. 포인트 클라우드 생성부(205)는, 그 지오메트리 데이터(복호 결과) 및 애트리뷰트 데이터(복호 결과)를 사용하여, 포인트 클라우드(복호 결과)를 생성한다. 포인트 클라우드 생성부(205)는, 생성된 포인트 클라우드(복호 결과)의 데이터를 복호 장치(200)의 외부에 출력한다.
이러한 구성으로 함으로써, 복호 장치(200)는, 복수의 계층화 방법을 적용하여 역계층화를 행할 수 있으므로, 복수의 계층화 방법을 적용하여 계층화된 애트리뷰트 데이터를 정확하게 역계층화할 수 있다. 즉, 그러한 복수의 계층화 방법이 적용되어 부호화된 부호화 데이터를 정확하게 복호할 수 있다. 이에 의해, 부호화 효율의 저감을 억제할 수 있다.
또한, 이들 처리부(복호 대상 LoD 심도 설정부(201) 내지 포인트 클라우드 생성부(205))는 임의의 구성을 갖는다. 예를 들어, 각 처리부가, 상술한 처리를 실현하는 논리 회로에 의해 구성되도록 해도 된다. 또한, 각 처리부가, 예를 들어 CPU, ROM, RAM 등을 갖고, 그것들을 사용하여 프로그램을 실행함으로써, 상술한 처리를 실현하도록 해도 된다. 물론, 각 처리부가, 그 양쪽의 구성을 갖고, 상술한 처리의 일부를 논리 회로에 의해 실현하고, 기타를 프로그램을 실행함으로써 실현하도록 해도 된다. 각 처리부의 구성은 서로 독립되어 있어도 되며, 예를 들어 일부의 처리부가 상술한 처리의 일부를 논리 회로에 의해 실현하고, 다른 일부의 처리부가 프로그램을 실행함으로써 상술한 처리를 실현하고, 또 다른 처리부가 논리 회로와 프로그램의 실행의 양쪽에 의해 상술한 처리를 실현하도록 해도 된다.
<속성 정보 복호부>
도 18은, 속성 정보 복호부(204)(도 17)의 주된 구성예를 도시하는 블록도이다. 또한, 도 18에 있어서는, 처리부나 데이터의 흐름 등의 주된 것을 도시하고 있으며, 도 18에 도시되는 것이 전부라고는 할 수 없다. 즉, 속성 정보 복호부(204)에 있어서, 도 18에 있어서 블록으로서 도시되어 있지 않은 처리부가 존재하거나, 도 18에 있어서 화살표 등으로서 도시되어 있지 않은 처리나 데이터의 흐름이 존재하거나 해도 된다.
도 18에 도시되는 바와 같이 속성 정보 복호부(204)는, 복호부(211), 역양자화부(212) 및 역계층화 처리부(213)를 갖는다.
복호부(211)는, 애트리뷰트 데이터의 부호화 데이터의 복호에 관한 처리를 행한다. 예를 들어, 복호부(211)는, 속성 정보 복호부(204)에 공급되는 애트리뷰트 데이터의 부호화 데이터를 취득한다.
복호부(211)는, 그 애트리뷰트 데이터의 부호화 데이터를 복호하여, 애트리뷰트 데이터(복호 결과)를 생성한다. 이 복호 방법은, 부호화 장치(100)의 부호화부(113)(도 12)에 의한 부호화 방법에 대응하는 방법이면 임의이다. 또한, 생성된 애트리뷰트 데이터(복호 결과)는, 부호화 전의 애트리뷰트 데이터에 대응하고, 제1 실시 형태에 있어서 설명한 바와 같이, 애트리뷰트 데이터와 그 예측값의 차분값이며, 양자화되어 있다. 복호부(211)는, 생성된 애트리뷰트 데이터(복호 결과)를 역양자화부(212)에 공급한다.
또한, 애트리뷰트 데이터의 부호화 데이터에 가중치에 관한 제어 정보나 애트리뷰트 데이터의 계층화에 관한 제어 정보가 포함되어 있는 경우, 복호부(211)는, 그 제어 정보도 역양자화부(212)에 공급한다.
역양자화부(212)는, 애트리뷰트 데이터의 역양자화에 관한 처리를 행한다. 예를 들어, 역양자화부(212)는, 복호부(211)로부터 공급되는 애트리뷰트 데이터(복호 결과)나 제어 정보를 취득한다.
역양자화부(212)는, 그 애트리뷰트 데이터(복호 결과)를 역양자화한다. 그때, 복호부(211)로부터 가중치에 관한 제어 정보가 공급되는 경우, 역양자화부(212)는, 그 제어 정보도 취득하고, 그 제어 정보에 기초하여(그 제어 정보에 기초하여 도출되는 가중치를 사용하여) 애트리뷰트 데이터(복호 결과)의 역양자화를 행한다.
또한, 역양자화부(212)는, 복호부(211)로부터 애트리뷰트 데이터의 계층화에 관한 제어 정보가 공급되는 경우, 그 제어 정보도 취득한다.
역양자화부(212)는, 역양자화한 애트리뷰트 데이터(복호 결과)를 역계층화 처리부(213)에 공급한다. 또한, 복호부(211)로부터 애트리뷰트 데이터의 계층화에 관한 제어 정보를 취득한 경우, 역양자화부(212)는, 그 제어 정보도 역계층화 처리부(213)에 공급한다.
역계층화 처리부(213)는, 역양자화부(212)로부터 공급되는, 역양자화된 애트리뷰트 데이터(복호 결과)를 취득한다. 상술한 바와 같이 이 애트리뷰트 데이터는 차분값이다. 또한, 역계층화 처리부(213)는, 위치 정보 복호부(203)로부터 공급되는 지오메트리 데이터(복호 결과)를 취득한다. 역계층화 처리부(213)는, 그 지오메트리 데이터를 사용하여, 취득한 애트리뷰트 데이터(차분값)에 대하여, 부호화 장치(100)의 계층화 처리부(111)(도 12)에 의한 계층화의 역처리인 역계층화를 행한다.
그때, 역계층화 처리부(213)는, <1. 계층화ㆍ역계층화 방법의 전환>에 있어서 상술한 본 기술을 적용하여 역계층화를 행한다. 즉, 역계층화 처리부(213)는, 역계층화에 있어서 속성 정보의 계층화 방법을 중간 계층에 있어서 전환한다(즉 역계층화 방법을 전환함). 역계층화 처리부(213)는, 역계층화한 애트리뷰트 데이터를 복호 결과로서 포인트 클라우드 생성부(205)(도 17)에 공급한다.
이상과 같이 역계층화를 행함으로써, 속성 정보 복호부(204)는, 복수의 계층화 방법을 적용하여 계층화된 애트리뷰트 데이터를 정확하게 역계층화할 수 있다. 즉, 그러한 복수의 계층화 방법이 적용되어 부호화된 부호화 데이터를 정확하게 복호할 수 있다. 이에 의해, 부호화 효율의 저감을 억제할 수 있다.
또한, 이들 처리부(복호부(211) 내지 역계층화 처리부(213))는 임의의 구성을 갖는다. 예를 들어, 각 처리부가, 상술한 처리를 실현하는 논리 회로에 의해 구성되도록 해도 된다. 또한, 각 처리부가, 예를 들어 CPU, ROM, RAM 등을 갖고, 그것들을 사용하여 프로그램을 실행함으로써, 상술한 처리를 실현하도록 해도 된다. 물론, 각 처리부가, 그 양쪽의 구성을 갖고, 상술한 처리의 일부를 논리 회로에 의해 실현하고, 기타를 프로그램을 실행함으로써 실현하도록 해도 된다. 각 처리부의 구성은 서로 독립되어 있어도 되며, 예를 들어 일부의 처리부가 상술한 처리의 일부를 논리 회로에 의해 실현하고, 다른 일부의 처리부가 프로그램을 실행함으로써 상술한 처리를 실현하고, 또 다른 처리부가 논리 회로와 프로그램의 실행의 양쪽에 의해 상술한 처리를 실현하도록 해도 된다.
<계층화 처리부>
도 19는, 역계층화 처리부(213)(도 18)의 주된 구성예를 도시하는 블록도이다. 또한, 도 19에 있어서는, 처리부나 데이터의 흐름 등의 주된 것을 도시하고 있으며, 도 19에 도시되는 것이 전부라고는 할 수 없다. 즉, 역계층화 처리부(213)에 있어서, 도 19에 있어서 블록으로서 도시되어 있지 않은 처리부가 존재하거나, 도 19에 있어서 화살표 등으로서 도시되어 있지 않은 처리나 데이터의 흐름이 존재하거나 해도 된다.
또한, 여기서는, 역계층화 처리부(213)가, 스케일러블한 복호에 대응한 역계층화 방법과, 스케일러블한 복호에 비대응인 역계층화 방법을 중간 계층에 있어서 전환하는 것으로서 설명한다. 도 19에 도시되는 바와 같이 역계층화 처리부(213)는, 제어부(221), 스케일러블 비대응 역계층화 처리부(222) 및 스케일러블 대응 역계층화 처리부(223)를 갖는다.
제어부(221)는, 역계층화의 제어에 관한 처리를 행한다. 예를 들어, 제어부(221)는, 역양자화부(212)(도 18)로부터 공급되는, 역양자화된 애트리뷰트 데이터나, 애트리뷰트 데이터의 역계층화에 관한 제어 정보를 취득한다. 또한, 제어부(221)는, 위치 정보 복호부(203)로부터 공급되는 지오메트리 데이터(복호 결과)도 취득한다.
제어부(221)는, <1. 계층화ㆍ역계층화 방법의 전환>에 있어서 상술한 본 기술을 적용하여, 스케일러블 비대응 역계층화 처리부(222) 및 스케일러블 대응 역계층화 처리부(223)를 제어하여, 그것들에 계층화를 행하게 한다.
예를 들어, 제어부(221)는, 스케일러블한 복호에 대응한 계층화 방법이 적용 가능인지를 나타내는 제어 정보(예를 들어 scalable_enable_flag)에 기초하여, 취득한 애트리뷰트 데이터에 대하여 스케일러블한 복호에 대응하는 방법을 적용하는지 여부를 판정한다.
예를 들어, 이 제어 정보에 의해 스케일러블한 복호에 대응한 계층화 방법이 적용 불가능임을 나타내는 경우, 제어부(221)는, 애트리뷰트 데이터나 지오메트리 데이터를 스케일러블 비대응 역계층화 처리부(222)에 공급하고, 그 애트리뷰트 데이터의 모든 계층을 스케일러블한 복호에 비대응인 방법을 사용하여 역계층화시킨다.
또한 예를 들어, 이 제어 정보에 의해 스케일러블한 복호에 대응한 계층화 방법이 적용 가능임을 나타내는 경우, 제어부(221)는, 스케일러블한 복호에 대응한 계층화 방법을 적용하는 계층의 범위를 나타내는 제어 정보(예를 들어 scalable_enable_num_of_lod)를 참조한다.
또한, 제어부(221)는, 그 제어 정보에 기초하여, 처리 대상의 애트리뷰트 데이터를, 스케일러블한 복호에 비대응인 방법을 사용하여 역계층화할지, 스케일러블한 복호에 비대응인 방법과 스케일러블한 복호에 대응하는 방법의 양쪽을 사용하여 역계층화할지를 선택한다.
예를 들어, 처리 대상의 애트리뷰트 데이터의 계층에, 그 제어 정보가 나타내는 스케일러블한 복호에 대응한 계층화 방법을 적용하는 계층의 범위의 적어도 일부가 포함되지 않는 경우, 제어부(221)는, 처리 대상의 애트리뷰트 데이터나 지오메트리 데이터 등을 전부 스케일러블 비대응 역계층화 처리부(222)에 공급하고, 그 애트리뷰트 데이터의 전체 계층을, 스케일러블한 복호에 비대응인 방법에 의해 역계층화시킨다.
또한, 예를 들어 처리 대상의 애트리뷰트 데이터의 계층에, 그 제어 정보가 나타내는 스케일러블한 복호에 대응한 계층화 방법을 적용하는 계층의 범위의 적어도 일부가 포함되는 경우, 제어부(221)는, 그 범위에 포함되는 계층의 애트리뷰트 데이터나 지오메트리 데이터를, 스케일러블 비대응 역계층화 처리부(222)에 공급한다. 또한, 제어부(221)는, 그 범위에 포함되지 않는 계층의 애트리뷰트 데이터나 지오메트리 데이터를, 스케일러블 대응 역계층화 처리부(223)에 공급한다. 즉, 각각의 역계층화 처리부에 각각의 방법으로 역계층화시킨다.
스케일러블 비대응 역계층화 처리부(222)는, 제어부(221)로부터 공급된 애트리뷰트 데이터를, 제어부(221)로부터 공급된 지오메트리 데이터를 사용하여, 스케일러블한 복호에 비대응인 방법으로 역계층화한다. 스케일러블 비대응 역계층화 처리부(222)는, 역계층화한 애트리뷰트 데이터(비(非)스케일러블 계층)를 포인트 클라우드 생성부(205)(도 17)에 공급한다.
스케일러블 대응 역계층화 처리부(223)는, 제어부(221)로부터 공급된 애트리뷰트 데이터를, 제어부(221)로부터 공급된 지오메트리 데이터를 사용하여, 스케일러블한 복호에 대응하는 방법으로 역계층화한다. 스케일러블 대응 역계층화 처리부(223)는, 역계층화한 애트리뷰트 데이터(비스케일러블 계층)를 포인트 클라우드 생성부(205)(도 17)에 공급한다.
이와 같이, 제어부(221)가, 스케일러블 비대응 역계층화 처리부(222) 및 스케일러블 대응 역계층화 처리부(223)를 제어하고, <1. 계층화ㆍ역계층화 방법의 전환>에 있어서 상술한 바와 같이, 애트리뷰트 데이터의 역계층화 방법을 중간 계층에 있어서 전환한다. 따라서, 역계층화 처리부(213)는, 복수의 계층화 방법을 적용하여 계층화된 애트리뷰트 데이터를 정확하게 역계층화할 수 있다. 즉, 그러한 복수의 계층화 방법이 적용되어 부호화된 부호화 데이터를 정확하게 복호할 수 있다. 이에 의해, 부호화 효율의 저감을 억제할 수 있다.
또한, 이들 처리부(제어부(221) 내지 스케일러블 대응 역계층화 처리부(223))는 임의의 구성을 갖는다. 예를 들어, 각 처리부가, 상술한 처리를 실현하는 논리 회로에 의해 구성되도록 해도 된다. 또한, 각 처리부가, 예를 들어 CPU, ROM, RAM 등을 갖고, 그것들을 사용하여 프로그램을 실행함으로써, 상술한 처리를 실현하도록 해도 된다. 물론, 각 처리부가, 그 양쪽의 구성을 갖고, 상술한 처리의 일부를 논리 회로에 의해 실현하고, 기타를 프로그램을 실행함으로써 실현하도록 해도 된다. 각 처리부의 구성은 서로 독립되어 있어도 되며, 예를 들어 일부의 처리부가 상술한 처리의 일부를 논리 회로에 의해 실현하고, 다른 일부의 처리부가 프로그램을 실행함으로써 상술한 처리를 실현하고, 또 다른 처리부가 논리 회로와 프로그램의 실행의 양쪽에 의해 상술한 처리를 실현하도록 해도 된다.
<복호 처리의 흐름>
다음에, 이 복호 장치(200)에 의해 실행되는 처리에 대하여 설명한다. 복호 장치(200)는, 복호 처리를 실행함으로써 포인트 클라우드의 부호화 데이터를 복호한다. 이 복호 처리의 흐름의 예를, 도 20의 흐름도를 참조하여 설명한다.
복호 처리가 개시되면, 복호 장치(200)의 복호 대상 LoD 심도 설정부(201)는, 스텝 S201에 있어서, 복호할 LoD 심도(즉 복호 대상으로 하는 계층의 범위)를 설정한다.
스텝 S202에 있어서, 부호화 데이터 추출부(202)는, 비트스트림을 취득하여 보유하고, 스텝 S201에 있어서 설정된 복호 대상 계층 범위와, 스케일러블한 복호에 대응한 계층화 방법을 적용하는 계층의 범위를 나타내는 제어 정보(예를 들어 scalable_enable_num_of_lod)에 기초하여, 스케일러블한 복호가 가능한 계층까지 복호할지 여부를 판정한다.
복호 대상 계층 범위가, 스케일러블한 복호에 대응한 계층화 방법을 적용하는 계층의 범위에 중첩되어 있고, 스케일러블한 복호가 가능한 계층(스케일러블한 계층이라고도 칭함)까지 복호하는 것으로 판정된 경우, 처리는 스텝 S203으로 진행한다.
스텝 S203에 있어서, 부호화 데이터 추출부(202)는, 복호 대상 계층 범위의 전체 계층의 부호화 데이터를 추출한다. 스텝 S203의 처리가 종료되면 처리는 스텝 S205로 진행한다.
또한, 스텝 S202에 있어서, 복호 대상 계층 범위가, 스케일러블한 복호에 대응한 계층화 방법을 적용하는 계층의 범위와 중첩되어 있지 않고, 스케일러블한 계층까지 복호하지 않는 것으로 판정된 경우, 처리는 스텝 S204로 진행한다.
스텝 S204에 있어서, 부호화 데이터 추출부(202)는, 스케일러블한 복호가 불가능한 계층(비스케일러블한 계층이라고도 칭함) 전체의 부호화 데이터를 추출한다. 스텝 S204의 처리가 종료되면 처리는 스텝 S205로 진행한다.
스텝 S205에 있어서, 위치 정보 복호부(203)는, 스텝 S203 또는 스텝 S204에 있어서 추출된 지오메트리 데이터의 부호화 데이터를 복호하여, 위치 정보(복호 결과)를 생성한다.
스텝 S206에 있어서, 속성 정보 복호부(204)는, 스텝 S203 또는 스텝 S204에 있어서 추출된 애트리뷰트 데이터의 부호화 데이터를 복호하여, 속성 정보(복호 결과)를 생성한다. 그때, 속성 정보 복호부(204)는, <1. 계층화ㆍ역계층화 방법의 전환>에 있어서 상술한 본 기술을 적용하여 처리를 행한다. 예를 들어, 속성 정보 복호부(204)는, 역계층화에 있어서 속성 정보의 계층화 방법을 중간 계층에 있어서 전환한다(즉 역계층화 방법을 전환함). 속성 정보 복호 처리의 상세에 대해서는 후술한다.
스텝 S207에 있어서, 포인트 클라우드 생성부(205)는, 스텝 S205에 있어서 생성된 지오메트리 데이터(복호 결과)와, 스텝 S206에 있어서 생성된 애트리뷰트 데이터(복호 결과)를 사용하여 포인트 클라우드(복호 결과)를 생성하여 출력한다.
스텝 S205의 처리가 종료되면, 복호 처리가 종료된다.
이와 같이 각 스텝의 처리를 행함으로써, 복호 장치(200)는, 복수의 계층화 방법을 적용하여 역계층화를 행할 수 있으므로, 복수의 계층화 방법을 적용하여 계층화된 애트리뷰트 데이터를 정확하게 역계층화할 수 있다. 즉, 그러한 복수의 계층화 방법이 적용되어 부호화된 부호화 데이터를 정확하게 복호할 수 있다. 이에 의해, 부호화 효율의 저감을 억제할 수 있다.
<속성 정보 복호 처리의 흐름>
다음에, 도 20의 스텝 S206에 있어서 실행되는 속성 정보 복호 처리의 흐름의 예를, 도 21의 흐름도를 참조하여 설명한다.
속성 정보 복호 처리가 개시되면, 속성 정보 복호부(204)의 복호부(211)는, 스텝 S211에 있어서, 애트리뷰트 데이터(속성 정보)의 부호화 데이터를 복호하여, 애트리뷰트 데이터(복호 결과)를 생성한다. 이 애트리뷰트 데이터(복호 결과)는 상술한 바와 같이 양자화되어 있다.
스텝 S212에 있어서, 역양자화부(212)는, 역양자화 처리를 실행함으로써, 스텝 S211에 있어서 생성된 애트리뷰트 데이터(복호 결과)를 역양자화한다.
스텝 S213에 있어서, 역계층화 처리부(213)는, 역계층화 처리를 실행함으로써, 스텝 S212에 있어서 역양자화된 애트리뷰트 데이터(차분값)를 역계층화하여, 각 포인트의 애트리뷰트 데이터를 도출한다. 그때, 역계층화 처리부(213)는, <1. 계층화ㆍ역계층화 방법의 전환>에 있어서 상술한 본 기술을 적용하여 역계층화를 행한다. 예를 들어, 역계층화 처리부(213)는, 역계층화에 있어서 속성 정보의 계층화 방법을 중간 계층에 있어서 전환한다(즉 역계층화 방법을 전환함). 역계층화 처리의 상세에 대해서는 후술한다.
스텝 S213의 처리가 종료되면 속성 정보 복호 처리가 종료되고, 처리는 도 20으로 되돌아간다.
이와 같이 각 스텝의 처리를 행함으로써, 속성 정보 복호부(204)는, 복수의 계층화 방법을 적용하여 역계층화를 행할 수 있으므로, 복수의 계층화 방법을 적용하여 계층화된 애트리뷰트 데이터를 정확하게 역계층화할 수 있다. 즉, 그러한 복수의 계층화 방법이 적용되어 부호화된 부호화 데이터를 정확하게 복호할 수 있다. 이에 의해, 부호화 효율의 저감을 억제할 수 있다.
<역계층화 처리의 흐름>
다음에, 도 21의 스텝 S213에 있어서 실행되는 역계층화 처리의 흐름의 예를, 도 22의 흐름도를 참조하여 설명한다.
역계층화 처리가 개시되면, 역계층화 처리부(213)의 제어부(221)는, 스텝 S221에 있어서, 지오메트리 데이터(복호 결과)를 사용하여 애트리뷰트 데이터(복호 결과)를 계층화한다. 즉, 제어부(221)는, 제1 실시 형태에 있어서 설명한 계층화 처리와 마찬가지의 처리를 행하여, 복호 대상의 계층에 대하여, 애트리뷰트 데이터의 계층 구조와 지오메트리 데이터의 계층 구조를 대응짓는다. 이에 의해, 각 포인트의 애트리뷰트 데이터(복호 결과)와 지오메트리 데이터(복호 결과)가 대응지어진다. 이 대응 관계에 기초하여 이하의 처리가 행해진다.
스텝 S222에 있어서, 스케일러블 비대응 역계층화 처리부(222)는, 비스케일러블한 계층의 애트리뷰트 데이터를 역계층화한다.
스텝 S223에 있어서, 제어부(221)는, 스케일러블한 계층까지 복호할지 여부를 판정한다. 복호하는 것으로 판정된 경우, 처리는 스텝 S224로 진행한다.
스텝 S224에 있어서, 스케일러블 대응 역계층화 처리부(223)는, 스케일러블 역계층화 처리를 실행하여, 스케일러블한 계층의 애트리뷰트 데이터를 역계층화한다. 이 스케일러블 역계층화 처리의 상세에 대해서는 후술한다.
스텝 S224의 처리가 종료되면 역계층화 처리가 종료되고, 처리는 도 21로 되돌아간다.
또한, 스텝 S223에 있어서, 스케일러블한 계층까지 복호하지 않는 것으로 판정된 경우, 스텝 S224의 처리가 생략되고, 역계층화 처리가 종료되고, 처리는 도 21로 되돌아간다.
이와 같이 각 스텝의 처리를 행함으로써, 역계층화 처리부(213)는, 복수의 계층화 방법을 적용하여 역계층화를 행할 수 있으므로, 복수의 계층화 방법을 적용하여 계층화된 애트리뷰트 데이터를 정확하게 역계층화할 수 있다. 즉, 그러한 복수의 계층화 방법이 적용되어 부호화된 부호화 데이터를 정확하게 복호할 수 있다. 이에 의해, 부호화 효율의 저감을 억제할 수 있다.
<스케일러블 역계층화 처리의 흐름>
다음에, 도 23의 흐름도를 참조하여, 도 22의 스텝 S224에 있어서 실행되는 스케일러블 역계층화 처리의 흐름의 예를 설명한다.
스케일러블 역계층화 처리가 개시되면, 스케일러블 대응 역계층화 처리부(223)는, 스텝 S231에 있어서, 처리 대상 LoD를 스케일러블한 계층의 최상위 LoD로 설정한다.
스텝 S232에 있어서, 스케일러블 대응 역계층화 처리부(223)는, 처리 대상 LoD의 해상도의 지오메트리 데이터에 기초하여, 참조 포인트로부터 예측 포인트의 예측값을 도출한다.
스텝 S233에 있어서, 스케일러블 대응 역계층화 처리부(223)는, 스텝 S232에 있어서 도출된 예측값을, 차분값에 가산하여, 예측 포인트의 속성 정보를 복원한다.
스텝 S234에 있어서, 스케일러블 대응 역계층화 처리부(223)는, 예측 포인트와 참조 포인트의 애트리뷰트 데이터를 머지한다.
스텝 S235에 있어서, 스케일러블 대응 역계층화 처리부(223)는, 처리 대상 LoD가 복호 대상 계층 범위의 최하위 LoD인지 여부를 판정한다. 처리 대상 LoD가 복호 대상 계층 범위의 최하위 LoD라고 판정된 경우, 처리는 스텝 S236으로 진행한다.
스텝 S236에 있어서, 스케일러블 대응 역계층화 처리부(223)는, 처리 대상 LoD를 1계층 밑으로 이동한다(갱신함). 스텝 S236의 처리가 종료되면, 처리는 스텝 S232로 되돌아가고, 그 이후의 처리를 반복한다.
즉, 처리 대상의 전체 계층에 대하여 스텝 S232 내지 스텝 S236의 각 처리가 실행된다.
그리고, 스텝 S235에 있어서, 처리 대상 LoD가 복호 대상 계층 범위의 최하위 LoD에 도달하였다고 판정된 경우, 즉 복호 대상의 모든 계층이 처리되었다고 판정된 경우, 스케일러블 역계층화 처리가 종료되고, 처리는 도 22로 되돌아간다.
이와 같이 각 스텝의 처리를 행함으로써, 스케일러블 대응 역계층화 처리부(223)는, 복호 대상으로 되어 있는 스케일러블한 계층을 정확하게 역계층화할 수 있다. 즉, 그러한 복수의 계층화 방법이 적용되어 부호화된 부호화 데이터를 정확하게 복호할 수 있다. 이에 의해, 부호화 효율의 저감을 억제할 수 있다.
<5. 제3 실시 형태>
<부호화 장치>
다음에, <2. 참조 관계의 제어>에 있어서 상술한 본 기술을 적용하는 장치에 대하여 설명한다. 이 경우도, 부호화 장치(100)는, 도 11을 참조하여 설명한 제1 실시 형태의 경우와 마찬가지의 구성을 갖고, 기본적으로 마찬가지의 처리를 행한다. 단, 속성 정보 부호화부(104)는, <2. 참조 관계의 제어>에 있어서 상술한 본 기술을 적용하여, 애트리뷰트 데이터를 부호화한다. 예를 들어, 속성 정보 부호화부(104)는, 복수 계층의 포인트(노드)를 머지하여 참조 관계를 구축한다.
<속성 정보 부호화부>
또한, 이 경우도, 속성 정보 부호화부(104)는, 도 12를 참조하여 설명한 제1 실시 형태의 경우와 마찬가지의 구성을 갖고, 기본적으로 마찬가지의 처리를 행한다. 단, 계층화 처리부(111)는, <2. 참조 관계의 제어>에 있어서 상술한 본 기술을 적용하여 계층화를 행한다. 예를 들어, 계층화 처리부(111)는, 복수 계층의 포인트(노드)를 머지하여 참조 관계를 구축한다.
<계층화 처리부>
또한, 이 경우도, 계층화 처리부(111)는, 도 13을 참조하여 설명한 제1 실시 형태의 경우와 마찬가지의 구성을 갖고, 기본적으로 마찬가지의 처리를 행한다. 단, 이 경우, 계층화 처리부(111)는, 스케일러블 대응 계층화 처리부(122)와 스케일러블 비대응 계층화 처리부(123) 중, 적어도 어느 한쪽을 구비하고 있으면 된다. 즉, 계층화는, 스케일러블한 복호에 대응하는 방법에 의해 행해지도록 해도 되고, 스케일러블한 복호에 비대응인 방법에 의해 행해지도록 해도 된다.
그리고, 제어부(121)는, <2. 참조 관계의 제어>에 있어서 상술한 본 기술을 적용한 방법으로 계층화를 제어한다. 예를 들어, 제어부(121)는, 복수 계층의 포인트(노드)를 머지하여 참조 관계를 구축한다. 예를 들어, 제어부(121)는, 복수의 계층의 예측 포인트의 예측값의 도출을, 서로 동일한 계층의 참조 포인트를 참조하여 행한다. 예를 들어, 제어부(121)는, 애트리뷰트 데이터의 처리 대상의 계층의 포인트수(노드수)를 그 1개 위의 계층과 비교한다. 그리고, 제어부(121)는, 처리 대상의 계층의 포인트수가 1개 위의 계층보다 충분히 많지 않은 경우(미리 정한 수의 포인트가 증가하지 않은 경우(예를 들어, 포인트수가 저감되는 경우)), 처리 대상의 계층의 포인트를 1개 위의 계층에 머지하여 참조 관계를 구축시킨다.
또한, 제어부(121)는, 다른 계층과 머지하여 참조 관계가 구축되었는지를 나타내는 제어 정보(예를 들어 merge_lower_lod_flag)를 계층별로 생성하고, 그것을 양자화부(112)에 공급함으로써, 복호측에 전송시킨다. 부호화부(113)는, 양자화부(112)를 통하여 그 제어 정보를 취득하면, 그 제어 정보를 애트리뷰트 데이터의 부호화 데이터에 포함시킨다.
이상과 같이 계층화를 행함으로써, 계층화 처리부(111)는, 상위층으로부터 하위층을 향하여 포인트수가 단조 증가하는 구성의 참조 관계를 구축할 수 있다. 따라서, 부호화 장치(100)는 부호화 효율의 저감을 억제할 수 있다.
<부호화 처리의 흐름>
다음에, 이 경우의 부호화 장치(100)에 의해 실행되는 처리에 대하여 설명한다. 이 경우도 부호화 장치(100)는, 도 14를 참조하여 설명한 제1 실시 형태의 경우와 기본적으로 마찬가지의 흐름으로 부호화 처리를 실행한다. 단, 스텝 S104에 있어서, 속성 정보 부호화부(104)는, <2. 참조 관계의 제어>에 있어서 상술한 본 기술을 적용하여 처리를 행한다. 예를 들어, 속성 정보 부호화부(104)는, 복수 계층의 포인트(노드)를 머지하여 참조 관계를 구축한다.
<속성 정보 부호화 처리의 흐름>
또한, 이 경우도, 속성 정보 부호화부(104)는, 도 14의 스텝 S104에 있어서 실행되는 속성 정보 부호화 처리를, 도 15를 참조하여 설명한 제1 실시 형태의 경우와 기본적으로 마찬가지의 흐름으로 실행한다. 단, 스텝 S111에 있어서, 계층화 처리부(111)는, <2. 참조 관계의 제어>에 있어서 상술한 본 기술을 적용하여 처리를 행한다.
<계층화 처리의 흐름>
이 경우의 계층화 처리의 흐름의 예를, 도 24의 흐름도를 참조하여 설명한다.
계층화 처리가 개시되면, 제어부(121)는, 스텝 S301에 있어서, 각 계층에 대하여 1개 위의 계층과 노드수를 비교한다.
스텝 S302에 있어서, 제어부(121)는, 1개 위의 계층에 비하여 노드수가 충분히 많지 않은(예를 들어, 노드수가 저감되는) 계층의 노드를, 그 1개 위의 계층의 노드에 포함시킨다(머지함).
스텝 S303에 있어서, 스케일러블 대응 계층화 처리부(122) 또는 스케일러블 비대응 계층화 처리부(123)는, 제어부(121)에 의해 제어되어, 각 계층에 대하여 1개 위의 계층으로부터 참조 포인트를 설정한다. 즉, 계층간의 참조 관계를 구축한다.
스텝 S304 내지 스텝 S306의 각 처리는, 스텝 S124 내지 스텝 S126의 각 처리(도 16)와 마찬가지로 실행된다.
스텝 S306의 처리가 종료되면 계층화 처리가 종료되고, 처리는 도 15로 되돌아간다.
이상과 같이 각 처리를 실행함으로써, 계층화 처리부(111)는, 상위층으로부터 하위층을 향하여 포인트수가 단조 증가하는 구성의 참조 관계를 구축할 수 있다. 따라서, 부호화 장치(100)는 부호화 효율의 저감을 억제할 수 있다.
<6. 제4 실시 형태>
<복호 장치>
다음에, <2. 참조 관계의 제어>에 있어서 상술한 본 기술을 적용하는 장치의 다른 예에 대하여 설명한다. 이 경우도, 복호 장치(200)는, 도 17을 참조하여 설명한 제1 실시 형태의 경우와 마찬가지의 구성을 갖고, 기본적으로 마찬가지의 처리를 행한다. 단, 속성 정보 복호부(204)는, <2. 참조 관계의 제어>에 있어서 상술한 본 기술을 적용하여, 애트리뷰트 데이터를 복호한다. 예를 들어, 속성 정보 복호부(204)는, 역계층화에 있어서, 복수 계층의 포인트(노드)가 머지되어 참조 관계가 구축되어 있는 것을 근거로 하여, 복수 계층의 예측 포인트를, 서로 동일한 계층의 참조 포인트를 참조하여 복원한다.
<속성 정보 복호부>
또한, 이 경우도, 속성 정보 복호부(204)는, 도 18을 참조하여 설명한 제1 실시 형태의 경우와 마찬가지의 구성을 갖고, 기본적으로 마찬가지의 처리를 행한다. 단, 역계층화 처리부(213)는, <2. 참조 관계의 제어>에 있어서 상술한 본 기술을 적용하여 계층화를 행한다. 예를 들어, 역계층화 처리부(213)는, 역계층화에 있어서, 복수 계층의 포인트(노드)가 머지되어 참조 관계가 구축되어 있는 것을 근거로 하여, 복수 계층의 예측 포인트를, 서로 동일한 계층의 참조 포인트를 참조하여 복원한다.
<역계층화 처리부>
또한, 이 경우도, 역계층화 처리부(213)는, 도 19를 참조하여 설명한 제1 실시 형태의 경우와 마찬가지의 구성을 갖고, 기본적으로 마찬가지의 처리를 행한다. 단, 이 경우, 역계층화 처리부(213)는, 스케일러블 비대응 역계층화 처리부(222)와 스케일러블 대응 역계층화 처리부(223) 중, 적어도 어느 한쪽을 구비하고 있으면 된다. 즉, 역계층화는, 스케일러블한 복호에 대응하는 방법에 의해 행해지도록 해도 되고, 스케일러블한 복호에 비대응인 방법에 의해 행해지도록 해도 된다.
그리고, 제어부(221)는, <2. 참조 관계의 제어>에 있어서 상술한 본 기술을 적용한 방법으로 역계층화를 제어한다. 예를 들어, 제어부(221)는, 복수 계층의 포인트(노드)를 머지하여 참조 관계가 구축되어 있는 것을 근거로 하여, 복수 계층의 예측 포인트를, 서로 동일한 계층의 참조 포인트를 참조하여 복원시킨다. 예를 들어, 제어부(221)는, 다른 계층과 머지하여 참조 관계가 구축되었는지를 나타내는 제어 정보(예를 들어 merge_lower_lod_flag)에 기초하여, 적절하게 처리 대상의 계층의 포인트를 1개 위의 계층에 머지하여 참조 관계를 구축시킨다.
이상과 같이 역계층화를 행함으로써, 역계층화 처리부(213)는, 상위층으로부터 하위층을 향하여 포인트수가 단조 증가하는 구성의 참조 관계가 구축된 애트리뷰트 데이터를 정확하게 역계층화할 수 있다. 따라서, 복호 장치(200)는 부호화 효율의 저감을 억제할 수 있다.
<복호 처리의 흐름>
다음에, 이 경우의 복호 장치(200)에 의해 실행되는 처리에 대하여 설명한다. 이 경우도 복호 장치(200)는, 도 20을 참조하여 설명한 제1 실시 형태의 경우와 기본적으로 마찬가지의 흐름으로 부호화 처리를 실행한다. 단, 스텝 S206에 있어서, 속성 정보 복호부(204)는, <2. 참조 관계의 제어>에 있어서 상술한 본 기술을 적용하여 처리를 행한다. 예를 들어, 속성 정보 부호화부(104)는, 복수 계층의 포인트(노드)를 머지하여 참조 관계가 구축되어 있는 것을 근거로 하여, 복수 계층의 예측 포인트를, 서로 동일한 계층의 참조 포인트를 참조하여 복원시킨다.
<속성 정보 복호 처리의 흐름>
또한, 이 경우도, 속성 정보 복호부(204)는, 도 20의 스텝 S206에 있어서 실행되는 속성 정보 복호 처리를, 도 21을 참조하여 설명한 제1 실시 형태의 경우와 기본적으로 마찬가지의 흐름으로 실행한다. 단, 스텝 S2123에 있어서, 역계층화 처리부(213)는, <2. 참조 관계의 제어>에 있어서 상술한 본 기술을 적용하여 처리를 행한다.
<계층화 처리의 흐름>
이 경우의 계층화 처리의 흐름의 예를, 도 24의 흐름도를 참조하여 설명한다.
계층화 처리가 개시되면, 제어부(221)는, 스텝 S401에 있어서, 지오메트리 데이터를 사용하여 애트리뷰트 데이터를 계층화한다.
스텝 S402에 있어서, 제어부(221)는, 다른 계층과 머지하여 참조 관계가 구축되었는지를 나타내는 제어 정보(예를 들어 merge_lower_lod_flag)에 기초하여, 1개 위의 계층에 비하여 노드수가 충분히 많지 않은 계층의 노드를 1개 위의 계층의 노드에 포함시킨다.
스텝 S403에 있어서, 스케일러블 비대응 역계층화 처리부(222)(또는 스케일러블 대응 역계층화 처리부(223))는, 각 계층에 대하여, 1개 위의 계층의 참조 포인트를 사용하여 예측 포인트의 예측값을 도출한다.
스텝 S404에 있어서, 스케일러블 비대응 역계층화 처리부(222)(또는 스케일러블 대응 역계층화 처리부(223))는, 각 계층에 대하여, 예측값을 차분값에 가산하여 예측 포인트의 속성 정보를 복원한다.
스텝 S405에 있어서, 스케일러블 비대응 역계층화 처리부(222)(또는 스케일러블 대응 역계층화 처리부(223))는, 각 계층에 대하여, 예측 포인트와 참조 포인트의 애트리뷰트 데이터를 머지한다.
스텝 S405의 처리가 종료되면, 역계층화 처리가 종료되고, 처리는 도 21로 되돌아간다.
이상과 같이 각 처리를 실행함으로써, 역계층화 처리부(213)는, 상위층으로부터 하위층을 향하여 포인트수가 단조 증가하는 구성의 참조 관계가 구축된 애트리뷰트 데이터를 정확하게 역계층화할 수 있다. 따라서, 복호 장치(200)는 부호화 효율의 저감을 억제할 수 있다.
<7. 부기>
<계층화ㆍ역계층화 방법>
이상에 있어서는, 속성 정보의 계층화ㆍ역계층화 방법으로서 Lifting을 예로 들어 설명하였지만, 본 기술은 속성 정보를 계층화하는 임의의 기술에 적용할 수 있다. 즉, 속성 정보의 계층화ㆍ역계층화의 방법은 Lifting 이외여도 된다.
<제어 정보>
이상의 각 실시 형태에 있어서 설명한 본 기술에 관한 제어 정보를 부호화측으로부터 복호측으로 전송하도록 해도 된다. 예를 들어, 상술한 본 기술을 적용하는 것을 허가(또는 금지)할지 여부를 제어하는 제어 정보(예를 들어 enabled_flag)를 전송하도록 해도 된다. 또한, 예를 들어 상술한 본 기술을 적용하는 것을 허가(또는 금지)하는 범위(예를 들어 블록 사이즈의 상한 혹은 하한, 또는 그 양쪽, 슬라이스, 픽처, 시퀀스, 컴포넌트, 뷰, 레이어 등)를 지정하는 제어 정보를 전송하도록 해도 된다.
<주변ㆍ근방>
또한, 본 명세서에 있어서, 「근방」이나 「주변」 등의 위치 관계는, 공간적인 위치 관계뿐만 아니라, 시간적인 위치 관계도 포함할 수 있다.
<컴퓨터>
상술한 일련의 처리는, 하드웨어에 의해 실행시킬 수도 있고, 소프트웨어에 의해 실행시킬 수도 있다. 일련의 처리를 소프트웨어에 의해 실행하는 경우에는, 그 소프트웨어를 구성하는 프로그램이 컴퓨터에 인스톨된다. 여기서 컴퓨터에는, 전용 하드웨어에 내장되어 있는 컴퓨터나, 각종 프로그램을 인스톨함으로써, 각종 기능을 실행하는 것이 가능한, 예를 들어 범용의 퍼스널 컴퓨터 등이 포함된다.
도 26은, 상술한 일련의 처리를 프로그램에 의해 실행하는 컴퓨터의 하드웨어의 구성예를 도시하는 블록도이다.
도 26에 도시되는 컴퓨터(900)에 있어서, CPU(Central Processing Unit)(901), ROM(Read Only Memory)(902), RAM(Random Access Memory)(903)은, 버스(904)를 통하여 서로 접속되어 있다.
버스(904)에는 또한 입출력 인터페이스(910)도 접속되어 있다. 입출력 인터페이스(910)에는, 입력부(911), 출력부(912), 기억부(913), 통신부(914) 및 드라이브(915)가 접속되어 있다.
입력부(911)는, 예를 들어 키보드, 마우스, 마이크로폰, 터치 패널, 입력 단자 등으로 이루어진다. 출력부(912)는, 예를 들어 디스플레이, 스피커, 출력 단자 등으로 이루어진다. 기억부(913)는, 예를 들어 하드 디스크, RAM 디스크, 불휘발성 메모리 등으로 이루어진다. 통신부(914)는, 예를 들어 네트워크 인터페이스로 이루어진다. 드라이브(915)는, 자기 디스크, 광 디스크, 광 자기 디스크 또는 반도체 메모리 등의 리무버블 미디어(921)를 구동한다.
이상과 같이 구성되는 컴퓨터에서는, CPU(901)가, 예를 들어 기억부(913)에 기억되어 있는 프로그램을, 입출력 인터페이스(910) 및 버스(904)를 통하여, RAM(903)에 로드하여 실행함으로써, 상술한 일련의 처리가 행해진다. RAM(903)에는 또한, CPU(901)가 각종 처리를 실행하는 데 있어서 필요한 데이터 등도 적절하게 기억된다.
컴퓨터가 실행하는 프로그램은, 예를 들어 패키지 미디어 등으로서의 리무버블 미디어(921)에 기록하여 적용할 수 있다. 그 경우, 프로그램은, 리무버블 미디어(921)를 드라이브(915)에 장착함으로써, 입출력 인터페이스(910)를 통하여, 기억부(913)에 인스톨할 수 있다.
또한, 이 프로그램은, 로컬 에어리어 네트워크, 인터넷, 디지털 위성 방송과 같은, 유선 또는 무선의 전송 매체를 통하여 제공할 수도 있다. 그 경우, 프로그램은, 통신부(914)에서 수신하여, 기억부(913)에 인스톨할 수 있다.
그 밖에, 이 프로그램은 ROM(902)이나 기억부(913)에 미리 인스톨해 둘 수도 있다.
<본 기술의 적용 대상>
이상에 있어서는, 포인트 클라우드 데이터의 부호화ㆍ복호에 본 기술을 적용하는 경우에 대하여 설명하였지만, 본 기술은 이들 예에 한하지 않고, 임의의 규격의 3D 데이터의 부호화ㆍ복호에 대하여 적용할 수 있다. 즉, 상술한 본 기술과 모순되지 않는 한, 부호화ㆍ복호 방식 등의 각종 처리, 그리고 3D 데이터나 메타데이터 등의 각종 데이터의 사양은 임의이다. 또한, 본 기술과 모순되지 않는 한, 상술한 일부의 처리나 사양을 생략해도 된다.
또한, 이상에 있어서는, 본 기술의 적용예로서 부호화 장치(100) 및 복호 장치(200)에 대하여 설명하였지만, 본 기술은 임의의 구성에 적용할 수 있다.
예를 들어, 본 기술은, 위성 방송, 케이블 TV 등의 유선 방송, 인터넷 상에서의 배신, 및 셀룰러 통신에 의한 단말기로의 배신 등에 있어서의 송신기나 수신기(예를 들어 텔레비전 수상기나 휴대 전화기), 또는 광 디스크, 자기 디스크 및 플래시 메모리 등의 매체에 화상을 기록하거나, 이들 기억 매체로부터 화상을 재생하거나 하는 장치(예를 들어 하드 디스크 레코더나 카메라) 등의, 여러 가지 전자 기기에 적용될 수 있다.
또한, 예를 들어 본 기술은, 시스템 LSI(Large Scale Integration) 등으로서의 프로세서(예를 들어 비디오 프로세서), 복수의 프로세서 등을 사용하는 모듈(예를 들어 비디오 모듈), 복수의 모듈 등을 사용하는 유닛(예를 들어 비디오 유닛), 또는 유닛에 추가로 그 밖의 기능을 부가한 세트(예를 들어 비디오 세트) 등, 장치의 일부의 구성으로서 실시할 수도 있다.
또한, 예를 들어 본 기술은, 복수의 장치에 의해 구성되는 네트워크 시스템에도 적용할 수 있다. 예를 들어, 본 기술을, 네트워크를 통하여 복수의 장치에서 분담하여, 공동으로 처리하는 클라우드 컴퓨팅으로서 실시하도록 해도 된다. 예를 들어, 컴퓨터, AV(Audio Visual) 기기, 휴대형 정보 처리 단말기, IoT(Internet of Things) 디바이스 등의 임의의 단말기에 대하여, 화상(동화상)에 관한 서비스를 제공하는 클라우드 서비스에 있어서 본 기술을 실시하도록 해도 된다.
또한, 본 명세서에 있어서, 시스템이란, 복수의 구성 요소(장치, 모듈(부품) 등)의 집합을 의미하며, 모든 구성 요소가 동일 하우징 내에 있는지 여부는 불문한다. 따라서, 별개의 하우징에 수납되고, 네트워크를 통하여 접속되어 있는 복수의 장치, 및 1개의 하우징 내에 복수의 모듈이 수납되어 있는 1개의 장치는, 모두 시스템이다.
<본 기술을 적용 가능한 분야ㆍ용도>
본 기술을 적용한 시스템, 장치, 처리부 등은, 예를 들어 교통, 의료, 방범, 농업, 축산업, 광업, 미용, 공장, 가전, 기상, 자연 감시 등, 임의의 분야에 이용할 수 있다. 또한, 그 용도도 임의이다.
<기타>
또한, 본 명세서에 있어서 「플래그」란, 복수의 상태를 식별하기 위한 정보이며, 참(1) 또는 거짓(0)의 2 상태를 식별할 때 사용하는 정보뿐만 아니라, 3 이상의 상태를 식별하는 것이 가능한 정보도 포함된다. 따라서, 이 「플래그」가 취할 수 있는 값은, 예를 들어 1/0의 2치여도 되고, 3치 이상이어도 된다. 즉, 이 「플래그」를 구성하는 bit수는 임의이며, 1bit여도 되고 복수 bit여도 된다. 또한, 식별 정보(플래그도 포함함)는, 그 식별 정보를 비트스트림에 포함시키는 형태뿐만 아니라, 어떤 기준으로 되는 정보에 대한 식별 정보의 차분 정보를 비트스트림에 포함시키는 형태도 상정되기 때문에, 본 명세서에 있어서는 「플래그」나 「식별 정보」는, 그 정보뿐만 아니라, 기준으로 되는 정보에 대한 차분 정보도 포함한다.
또한, 부호화 데이터(비트스트림)에 관한 각종 정보(메타데이터 등)는, 부호화 데이터에 관련지어져 있으면, 어떠한 형태로 전송 또는 기록되도록 해도 된다. 여기서, 「관련짓는다」라는 용어는, 예를 들어 한쪽의 데이터를 처리할 때 다른 쪽의 데이터를 이용할 수 있도록(링크시킬 수 있도록) 하는 것을 의미한다. 즉, 서로 관련지어진 데이터는, 1개의 데이터로서 통합되어도 되고, 각각 개별적인 데이터로 해도 된다. 예를 들어, 부호화 데이터(화상)에 관련지어진 정보는, 그 부호화 데이터(화상)와는 다른 전송로 상에서 전송되도록 해도 된다. 또한, 예를 들어 부호화 데이터(화상)에 관련지어진 정보는, 그 부호화 데이터(화상)와는 다른 기록 매체(또는 동일한 기록 매체의 다른 기록 에어리어)에 기록되도록 해도 된다. 또한, 이 「관련짓기」는, 데이터 전체가 아니라, 데이터의 일부여도 된다. 예를 들어, 화상과 그 화상에 대응하는 정보가, 복수 프레임, 1프레임, 또는 프레임 내의 일부분 등의 임의의 단위로 서로 관련지어지도록 해도 된다.
또한, 본 명세서에 있어서, 「합성한다」, 「다중화한다」, 「부가한다」, 「일체화한다」, 「포함시킨다」, 「저장한다」, 「집어넣는다」, 「끼워넣는다」, 「삽입한다」 등의 용어는, 예를 들어 부호화 데이터와 메타데이터를 1개의 데이터로 통합한다고 하는, 복수의 것을 1개로 통합하는 것을 의미하며, 상술한 「관련짓는다」의 하나의 방법을 의미한다.
또한, 본 기술의 실시 형태는, 상술한 실시 형태에 한정되는 것은 아니며, 본 기술의 요지를 일탈하지 않는 범위에 있어서 다양한 변경이 가능하다.
예를 들어, 1개의 장치(또는 처리부)로서 설명한 구성을 분할하여, 복수의 장치(또는 처리부)로서 구성하도록 해도 된다. 반대로, 이상에 있어서 복수의 장치(또는 처리부)로서 설명한 구성을 통합하여 1개의 장치(또는 처리부)로서 구성되도록 해도 된다. 또한, 각 장치(또는 각 처리부)의 구성에 상술한 것 이외의 구성을 부가하도록 해도 물론 된다. 또한, 시스템 전체로서의 구성이나 동작이 실질적으로 동일하면, 어떤 장치(또는 처리부)의 구성의 일부를 다른 장치(또는 다른 처리부)의 구성에 포함시키도록 해도 된다.
또한, 예를 들어 상술한 프로그램은, 임의의 장치에 있어서 실행되도록 해도 된다. 그 경우, 그 장치가 필요한 기능(기능 블록 등)을 갖고, 필요한 정보를 얻을 수 있도록 하면 된다.
또한, 예를 들어 1개의 흐름도의 각 스텝을, 1개의 장치가 실행하도록 해도 되고, 복수의 장치가 분담하여 실행하도록 해도 된다. 또한, 1개의 스텝에 복수의 처리가 포함되는 경우, 그 복수의 처리를, 1개의 장치가 실행하도록 해도 되고, 복수의 장치가 분담하여 실행하도록 해도 된다. 환언하건대, 1개의 스텝에 포함되는 복수의 처리를, 복수의 스텝의 처리로서 실행할 수도 있다. 반대로, 복수의 스텝으로서 설명한 처리를 1개의 스텝으로서 통합하여 실행할 수도 있다.
또한, 예를 들어 컴퓨터가 실행하는 프로그램은, 프로그램을 기술하는 스텝의 처리가, 본 명세서에서 설명하는 순서를 따라 시계열로 실행되도록 해도 되고, 병렬로, 혹은 호출이 행해졌을 때 등의 필요한 타이밍에 개별적으로 실행되도록 해도 된다. 즉, 모순이 생기지 않는 한, 각 스텝의 처리가 상술한 순서와 다른 순서로 실행되도록 해도 된다. 또한, 이 프로그램을 기술하는 스텝의 처리가, 다른 프로그램의 처리와 병렬로 실행되도록 해도 되고, 다른 프로그램의 처리와 조합하여 실행되도록 해도 된다.
또한, 예를 들어 본 기술에 관한 복수의 기술은, 모순이 생기지 않는 한, 각각 독립적으로 단체로 실시할 수 있다. 물론, 임의의 복수의 본 기술을 병용하여 실시할 수도 있다. 예를 들어, 어느 실시 형태에 있어서 설명한 본 기술의 일부 또는 전부를, 다른 실시 형태에 있어서 설명한 본 기술의 일부 또는 전부와 조합하여 실시할 수도 있다. 또한, 상술한 임의의 본 기술의 일부 또는 전부를, 상술하지 않은 다른 기술과 병용하여 실시할 수도 있다.
또한, 본 기술은 이하와 같은 구성도 취할 수 있다.
(1) 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 상기 포인트별 속성 정보에 대하여, 예측 포인트와 참조 포인트로 분류하고, 상기 참조 포인트의 상기 속성 정보를 사용하여 상기 예측 포인트의 상기 속성 정보의 예측값을 도출하고, 상기 예측 포인트의 상기 속성 정보와 상기 예측값의 차분값을 도출하는 처리를, 상기 참조 포인트에 대하여 재귀적으로 반복함으로써, 상기 속성 정보의 계층화를 행하는 계층화부를 구비하고,
상기 계층화부는, 복수의 계층화 방법을 사용하여 상기 계층화를 행하고, 각각의 계층화 방법에 의해 서로 다른 계층을 생성하는
정보 처리 장치.
(2) 상기 계층화부는, 스케일러블한 복호에 비대응인 계층화 방법에 의해, 소정의 계층보다 상위의 계층을 생성하고, 스케일러블한 복호에 대응한 계층화 방법에 의해, 상기 소정의 계층보다 하위의 계층을 생성하는
(1)에 기재된 정보 처리 장치.
(3) 상기 계층화부는, 최하위층으로부터 최상위층을 향하는 순으로 각 계층을 생성하는
(2)에 기재된 정보 처리 장치.
(4) 상기 계층화부에 의한 상기 속성 정보의 계층화에 관한 제어 정보를 생성하는 생성부와,
상기 계층화부에 의해 계층화된 상기 속성 정보를 부호화하고, 상기 생성부에 의해 생성된 상기 제어 정보를 포함하는, 상기 속성 정보의 부호화 데이터를 생성하는 부호화부
를 더 구비하는 (1) 내지 (3) 중 어느 것에 기재된 정보 처리 장치.
(5) 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 상기 포인트별 속성 정보에 대하여, 예측 포인트와 참조 포인트로 분류하고, 상기 참조 포인트의 상기 속성 정보를 사용하여 상기 예측 포인트의 상기 속성 정보의 예측값을 도출하고, 상기 예측 포인트의 상기 속성 정보와 상기 예측값의 차분값을 도출하는 처리를, 상기 참조 포인트에 대하여 재귀적으로 반복함에 따른 상기 속성 정보의 계층화 시에, 복수의 계층화 방법을 사용하여, 각각의 계층화 방법에 의해 서로 다른 계층을 생성하는
정보 처리 방법.
(6) 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 상기 포인트별 속성 정보에 대하여, 예측 포인트와 참조 포인트로 분류하고, 상기 참조 포인트의 상기 속성 정보를 사용하여 상기 예측 포인트의 상기 속성 정보의 예측값을 도출하고, 상기 예측 포인트의 상기 속성 정보와 상기 예측값의 차분값을 도출하는 처리를, 상기 참조 포인트에 대하여 재귀적으로 반복함으로써 계층화된 상기 속성 정보에 대하여 역계층화를 행하는 역계층화부를 구비하고,
상기 역계층화부는, 복수의 계층화 방법을 사용하여, 각각의 계층화 방법에 의해 서로 다른 계층에 대하여 상기 역계층화를 행하는
정보 처리 장치.
(7) 상기 역계층화부는, 스케일러블한 복호에 비대응인 계층화 방법에 의해, 소정의 계층보다 상위의 계층에 대하여 상기 역계층화를 행하고, 스케일러블한 복호에 대응한 계층화 방법에 의해, 상기 소정의 계층보다 하위의 계층에 대하여 상기 역계층화를 행하는
(6)에 기재된 정보 처리 장치.
(8) 상기 역계층화부는, 상기 스케일러블한 복호에 대응한 계층화 방법을 적용하는 계층의 범위를 나타내는 제1 제어 정보에 기초하여 상기 소정의 계층을 특정하는
(7)에 기재된 정보 처리 장치.
(9) 상기 역계층화부는, 상기 스케일러블한 복호에 대응한 계층화 방법이 적용 가능인지를 나타내는 제2 제어 정보에 의해 적용 가능임을 나타내는 속성 정보에 대하여, 상기 제1 제어 정보에 기초하여 상기 소정의 계층을 특정하는
(8)에 기재된 정보 처리 장치.
(10) 상기 속성 정보의 부호화 데이터를 복호하여, 상기 속성 정보를 생성하는 복호부를 더 구비하고,
상기 역계층화부는, 상기 복호부에 의해 상기 부호화 데이터가 복호되어 얻어진 상기 속성 정보에 대하여 상기 역계층화를 행하는
(6) 내지 (9) 중 어느 것에 기재된 정보 처리 장치.
(11) 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 상기 포인트별 속성 정보에 대하여, 예측 포인트와 참조 포인트로 분류하고, 상기 참조 포인트의 상기 속성 정보를 사용하여 상기 예측 포인트의 상기 속성 정보의 예측값을 도출하고, 상기 예측 포인트의 상기 속성 정보와 상기 예측값의 차분값을 도출하는 처리를, 상기 참조 포인트에 대하여 재귀적으로 반복함으로써 계층화된 상기 속성 정보에 대한 역계층화 시에, 복수의 계층화 방법을 사용하여, 각각의 계층화 방법에 의해 서로 다른 계층에 대하여 상기 역계층화를 행하는
정보 처리 방법.
(12) 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 상기 포인트별 속성 정보에 대하여, 예측 포인트와 참조 포인트로 분류하고, 상기 참조 포인트의 상기 속성 정보를 사용하여 상기 예측 포인트의 상기 속성 정보의 예측값을 도출하고, 상기 예측 포인트의 상기 속성 정보와 상기 예측값의 차분값을 도출하는 처리를, 상기 참조 포인트에 대하여 재귀적으로 반복함으로써, 상기 속성 정보의 계층화를 행하는 계층화부를 구비하고,
상기 계층화부는, 복수의 계층의 상기 예측 포인트의 상기 예측값의 도출을, 서로 동일한 계층의 상기 참조 포인트를 참조하여 행하는
정보 처리 장치.
(13) 상기 계층화부는, 1개 상위의 계층과 비교하여 상기 포인트가 충분히 많지 않은 계층의 상기 예측 포인트의 상기 예측값의 산출을, 2개 상위의 계층의 상기 참조 포인트를 참조하여 행하는
(12)에 기재된 정보 처리 장치.
(14) 다른 계층과 머지하여 참조 관계가 구축되었는지를 나타내는 제어 정보를 생성하는 생성부와,
상기 계층화부에 의해 계층화된 상기 속성 정보를 부호화하고, 상기 생성부에 의해 생성된 상기 제어 정보를 포함하는, 상기 속성 정보의 부호화 데이터를 생성하는 부호화부를 구비하는
(12) 또는 (13)에 기재된 정보 처리 장치.
(15) 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 상기 포인트별 속성 정보에 대하여, 예측 포인트와 참조 포인트로 분류하고, 상기 참조 포인트의 상기 속성 정보를 사용하여 상기 예측 포인트의 상기 속성 정보의 예측값을 도출하고, 상기 예측 포인트의 상기 속성 정보와 상기 예측값의 차분값을 도출하는 처리를, 상기 참조 포인트에 대하여 재귀적으로 반복함에 따른 상기 속성 정보의 계층화 시에, 복수의 계층의 상기 예측 포인트의 상기 예측값의 도출을, 서로 동일한 계층의 상기 참조 포인트를 참조하여 행하는
정보 처리 방법.
(16) 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 상기 포인트별 속성 정보에 대하여, 예측 포인트와 참조 포인트로 분류하고, 상기 참조 포인트의 상기 속성 정보를 사용하여 상기 예측 포인트의 상기 속성 정보의 예측값을 도출하고, 상기 예측 포인트의 상기 속성 정보와 상기 예측값의 차분값을 도출하는 처리를, 상기 참조 포인트에 대하여 재귀적으로 반복함으로써 계층화된 상기 속성 정보에 대하여 역계층화를 행하는 역계층화부를 구비하고,
상기 역계층화부는, 상기 역계층화 시에, 복수의 계층의 상기 예측 포인트의 상기 속성 정보의 상기 예측값을, 서로 동일한 계층의 상기 참조 포인트의 상기 속성 정보를 참조하여 도출하고, 도출한 상기 예측값을 상기 차분값에 가산함으로써, 상기 예측 포인트의 상기 속성 정보를 생성하는
정보 처리 장치.
(17) 상기 역계층화부는, 상기 역계층화 시에, 다른 계층과 동일한 계층을 참조하는지를 나타내는 제어 정보에 기초하여, 처리 대상의 계층의 참조처로 되는 계층을 특정하고, 특정한 계층의 상기 참조 포인트의 상기 속성 정보를 참조하여, 상기 처리 대상의 계층의 상기 예측 포인트의 상기 속성 정보의 상기 예측값을 도출하는
(16)에 기재된 정보 처리 장치.
(18) 상기 역계층화부는, 1개 상위의 계층과 비교하여 포인트가 충분히 많지 않은 계층에 대하여, 2개 상위의 계층의 상기 참조 포인트의 상기 속성 정보를 참조하여, 상기 예측 포인트의 상기 속성 정보의 상기 예측값을 도출하는
(16) 또는 (17)에 기재된 정보 처리 장치.
(19) 상기 속성 정보의 부호화 데이터를 복호하여, 상기 속성 정보를 생성하는 복호부를 더 구비하고,
상기 역계층화부는, 상기 복호부에 의해 상기 부호화 데이터가 복호되어 복원된 상기 속성 정보에 대하여 상기 역계층화를 행하는
(16) 내지 (18) 중 어느 것에 기재된 정보 처리 장치.
(20) 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 상기 포인트별 속성 정보에 대하여, 예측 포인트와 참조 포인트로 분류하고, 상기 참조 포인트의 상기 속성 정보를 사용하여 상기 예측 포인트의 상기 속성 정보의 예측값을 도출하고, 상기 예측 포인트의 상기 속성 정보와 상기 예측값의 차분값을 도출하는 처리를, 상기 참조 포인트에 대하여 재귀적으로 반복함으로써 계층화된 상기 속성 정보에 대하여 역계층화를 행할 때, 복수의 계층의 상기 예측 포인트의 상기 속성 정보의 상기 예측값을, 서로 동일한 계층의 상기 참조 포인트의 상기 속성 정보를 참조하여 도출하고, 도출한 상기 예측값을 상기 차분값에 가산함으로써, 상기 예측 포인트의 상기 속성 정보를 생성하는
정보 처리 방법.
100: 부호화 장치
101: 위치 정보 부호화부
102: 위치 정보 복호부
103: 포인트 클라우드 생성부
104: 속성 정보 부호화부
105: 비트스트림 생성부
111: 계층화 처리부
112: 양자화부
113: 부호화부
121: 제어부
122: 스케일러블 대응 계층화 처리부
123: 스케일러블 비대응 계층화 처리부
124: 반전부
125: 가중치 부여부
200: 복호 장치
201: 복호 대상 LOD 심도 설정부
202: 부호화 데이터 추출부
203: 위치 정보 복호부
204: 속성 정보 복호부
205: 포인트 클라우드 생성부
211: 복호부
212: 역양자화부
213: 역계층화 처리부
221: 제어부
222: 스케일러블 비대응 역계층화 처리부
223: 스케일러블 대응 역계층화 처리부

Claims (20)

  1. 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 상기 포인트별 속성 정보를 처리하는 정보 처리 장치이며, 예측 포인트와 참조 포인트로 분류된 포인트 중 상기 참조 포인트의 상기 속성 정보를 사용하여 도출된 상기 예측 포인트의 상기 속성 정보의 예측값과 상기 예측 포인트의 상기 속성 정보의 차분값을 도출하는 처리를, 상기 참조 포인트에 대하여 재귀적으로 반복함으로써, 상기 속성 정보의 계층화를 행하는 계층화부를 구비하고,
    상기 계층화부는, 제1 계층을 제1 계층화 방법을 사용하여 계층화를 행하고, 상기 제1 계층과 다른 제2 계층을 상기 제1 계층화 방법과 다른 제2 계층화 방법을 사용하여 계층화를 행하는, 정보 처리 장치.
  2. 제1항에 있어서, 상기 계층화부는, 스케일러블한 복호에 비대응인 상기 제1 계층화 방법에 의해, 상기 제1 계층을 포함하는 소정의 계층보다 상위의 계층을 생성하고, 스케일러블한 복호에 대응한 상기 제2 계층화 방법에 의해, 상기 제2 계층을 포함하는 상기 소정의 계층보다 하위의 계층을 생성하는, 정보 처리 장치.
  3. 제2항에 있어서, 상기 계층화부는 최하위층으로부터 최상위층을 향하는 순으로 각 계층을 생성하는, 정보 처리 장치.
  4. 제1항에 있어서, 상기 계층화부에 의한 상기 속성 정보의 계층화에 관한 제어 정보를 생성하는 생성부와,
    상기 계층화부에 의해 계층화된 상기 속성 정보를 부호화하고, 상기 생성부에 의해 생성된 상기 제어 정보를 포함하는, 상기 속성 정보의 부호화 데이터를 생성하는 부호화부
    를 더 구비하는, 정보 처리 장치.
  5. 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 상기 포인트별 속성 정보에 대하여, 예측 포인트와 참조 포인트로 분류하고, 상기 참조 포인트의 상기 속성 정보를 사용하여 상기 예측 포인트의 상기 속성 정보의 예측값을 도출하고, 상기 예측 포인트의 상기 속성 정보와 상기 예측값의 차분값을 도출하는 처리를, 상기 참조 포인트에 대하여 재귀적으로 반복함에 따른 상기 속성 정보의 계층화 시에, 복수의 계층화 방법을 사용하여, 각각의 계층화 방법에 의해 서로 다른 계층을 생성하는, 정보 처리 방법.
  6. 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 상기 포인트별 속성 정보를 처리하는 정보 처리 장치이며, 예측 포인트와 참조 포인트로 분류된 포인트 중 상기 참조 포인트의 상기 속성 정보를 사용하여 도출된 상기 예측 포인트의 상기 속성 정보의 예측값과 상기 예측 포인트의 상기 속성 정보의 차분값을 도출하는 처리를, 상기 참조 포인트에 대하여 재귀적으로 반복함으로써 계층화된 상기 속성 정보에 대하여 역계층화를 행하는 역계층화부를 구비하고,
    상기 역계층화부는, 제1 계층을 제1 계층화 방법을 사용하여 역계층화를 행하고, 상기 제1 계층과 다른 제2 계층을 상기 제1 계층화 방법과 다른 제2 계층화 방법을 사용하여 상기 역계층화를 행하는, 정보 처리 장치.
  7. 제6항에 있어서, 상기 역계층화부는, 스케일러블한 복호에 비대응인 상기 제1 계층화 방법에 의해, 상기 제1 계층을 포함하는 소정의 계층보다 상위의 계층에 대하여 상기 역계층화를 행하고, 스케일러블한 복호에 대응한 상기 제2 계층화 방법에 의해, 상기 제2 계층을 포함하는 상기 소정의 계층보다 하위의 계층에 대하여 상기 역계층화를 행하는, 정보 처리 장치.
  8. 제7항에 있어서, 상기 역계층화부는, 상기 스케일러블한 복호에 대응한 계층화 방법을 적용하는 계층의 범위를 나타내는 제1 제어 정보에 기초하여 상기 소정의 계층을 특정하는, 정보 처리 장치.
  9. 제8항에 있어서, 상기 역계층화부는, 상기 스케일러블한 복호에 대응한 계층화 방법이 적용 가능인지를 나타내는 제2 제어 정보에 의해 적용 가능임을 나타내는 속성 정보에 대하여, 상기 제1 제어 정보에 기초하여 상기 소정의 계층을 특정하는, 정보 처리 장치.
  10. 제6항에 있어서, 상기 속성 정보의 부호화 데이터를 복호하여, 상기 속성 정보를 생성하는 복호부를 더 구비하고,
    상기 역계층화부는, 상기 복호부에 의해 상기 부호화 데이터가 복호되어 얻어진 상기 속성 정보에 대하여 상기 역계층화를 행하는, 정보 처리 장치.
  11. 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 상기 포인트별 속성 정보에 대하여, 예측 포인트와 참조 포인트로 분류하고, 상기 참조 포인트의 상기 속성 정보를 사용하여 상기 예측 포인트의 상기 속성 정보의 예측값을 도출하고, 상기 예측 포인트의 상기 속성 정보와 상기 예측값의 차분값을 도출하는 처리를, 상기 참조 포인트에 대하여 재귀적으로 반복함으로써 계층화된 상기 속성 정보에 대한 역계층화 시에, 복수의 계층화 방법을 사용하여, 각각의 계층화 방법에 의해 서로 다른 계층에 대하여 상기 역계층화를 행하는, 정보 처리 방법.
  12. 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 상기 포인트별 속성 정보를 처리하는 정보 처리 장치이며, 예측 포인트와 참조 포인트로 분류된 포인트 중 상기 참조 포인트의 상기 속성 정보를 사용하여 도출된 상기 예측 포인트의 상기 속성 정보의 예측값과 상기 예측 포인트의 상기 속성 정보의 차분값을 도출하는 처리를, 상기 참조 포인트에 대하여 재귀적으로 반복함으로써, 상기 속성 정보의 계층화를 행하는 계층화부를 구비하고,
    상기 계층화부는, 복수의 계층의 상기 예측 포인트의 상기 예측값의 도출을, 서로 동일한 계층의 상기 참조 포인트를 참조하여 행하는, 정보 처리 장치.
  13. 제12항에 있어서, 상기 계층화부는, 1개 상위의 계층과 비교하여 상기 포인트가 충분히 많지 않은 계층의 상기 예측 포인트의 상기 예측값의 산출을, 2개 상위의 계층의 상기 참조 포인트를 참조하여 행하는, 정보 처리 장치.
  14. 제12항에 있어서, 다른 계층과 머지하여 참조 관계가 구축되었는지를 나타내는 제어 정보를 생성하는 생성부와,
    상기 계층화부에 의해 계층화된 상기 속성 정보를 부호화하고, 상기 생성부에 의해 생성된 상기 제어 정보를 포함하는, 상기 속성 정보의 부호화 데이터를 생성하는 부호화부를 구비하는, 정보 처리 장치.
  15. 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 상기 포인트별 속성 정보에 대하여, 예측 포인트와 참조 포인트로 분류하고, 상기 참조 포인트의 상기 속성 정보를 사용하여 상기 예측 포인트의 상기 속성 정보의 예측값을 도출하고, 상기 예측 포인트의 상기 속성 정보와 상기 예측값의 차분값을 도출하는 처리를, 상기 참조 포인트에 대하여 재귀적으로 반복함에 따른 상기 속성 정보의 계층화 시에, 복수의 계층의 상기 예측 포인트의 상기 예측값의 도출을, 서로 동일한 계층의 상기 참조 포인트를 참조하여 행하는, 정보 처리 방법.
  16. 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 상기 포인트별 속성 정보를 처리하는 정보 처리 장치이며, 예측 포인트와 참조 포인트로 분류된 포인트 중 상기 참조 포인트의 상기 속성 정보를 사용하여 도출된 상기 예측 포인트의 상기 속성 정보의 예측값과 상기 예측 포인트의 상기 속성 정보의 차분값을 도출하는 처리를, 상기 참조 포인트에 대하여 재귀적으로 반복함으로써 계층화된 상기 속성 정보에 대하여 역계층화를 행하는 역계층화부를 구비하고,
    상기 역계층화부는, 상기 역계층화 시에, 복수의 계층의 상기 예측 포인트의 상기 속성 정보의 상기 예측값을, 서로 동일한 계층의 상기 참조 포인트의 상기 속성 정보를 참조하여 도출하고, 도출한 상기 예측값을 상기 차분값에 가산함으로써, 상기 예측 포인트의 상기 속성 정보를 생성하는, 정보 처리 장치.
  17. 제16항에 있어서, 상기 역계층화부는, 상기 역계층화 시에, 다른 계층과 동일한 계층을 참조하는지를 나타내는 제어 정보에 기초하여, 처리 대상의 계층의 참조처로 되는 계층을 특정하고, 특정한 계층의 상기 참조 포인트의 상기 속성 정보를 참조하여, 상기 처리 대상의 계층의 상기 예측 포인트의 상기 속성 정보의 상기 예측값을 도출하는, 정보 처리 장치.
  18. 제16항에 있어서, 상기 역계층화부는, 1개 상위의 계층과 비교하여 포인트가 충분히 많지 않은 계층에 대하여, 2개 상위의 계층의 상기 참조 포인트의 상기 속성 정보를 참조하여, 상기 예측 포인트의 상기 속성 정보의 상기 예측값을 도출하는, 정보 처리 장치.
  19. 제16항에 있어서, 상기 속성 정보의 부호화 데이터를 복호하여, 상기 속성 정보를 생성하는 복호부를 더 구비하고,
    상기 역계층화부는, 상기 복호부에 의해 상기 부호화 데이터가 복호되어 복원된 상기 속성 정보에 대하여 상기 역계층화를 행하는, 정보 처리 장치.
  20. 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 상기 포인트별 속성 정보에 대하여, 예측 포인트와 참조 포인트로 분류하고, 상기 참조 포인트의 상기 속성 정보를 사용하여 상기 예측 포인트의 상기 속성 정보의 예측값을 도출하고, 상기 예측 포인트의 상기 속성 정보와 상기 예측값의 차분값을 도출하는 처리를, 상기 참조 포인트에 대하여 재귀적으로 반복함으로써 계층화된 상기 속성 정보에 대하여 역계층화를 행할 때, 복수의 계층의 상기 예측 포인트의 상기 속성 정보의 상기 예측값을, 서로 동일한 계층의 상기 참조 포인트의 상기 속성 정보를 참조하여 도출하고, 도출한 상기 예측값을 상기 차분값에 가산함으로써, 상기 예측 포인트의 상기 속성 정보를 생성하는, 정보 처리 방법.
KR1020217041116A 2019-07-02 2020-06-18 정보 처리 장치 및 방법 KR20220027847A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JPJP-P-2019-124027 2019-07-02
JP2019124027 2019-07-02
PCT/JP2020/023989 WO2021002214A1 (ja) 2019-07-02 2020-06-18 情報処理装置および方法

Publications (1)

Publication Number Publication Date
KR20220027847A true KR20220027847A (ko) 2022-03-08

Family

ID=74100499

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217041116A KR20220027847A (ko) 2019-07-02 2020-06-18 정보 처리 장치 및 방법

Country Status (6)

Country Link
US (1) US20220245863A1 (ko)
EP (1) EP3996045A4 (ko)
JP (1) JPWO2021002214A1 (ko)
KR (1) KR20220027847A (ko)
CN (1) CN113875248A (ko)
WO (1) WO2021002214A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024014935A1 (ko) * 2022-07-15 2024-01-18 엘지전자 주식회사 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10861196B2 (en) * 2017-09-14 2020-12-08 Apple Inc. Point cloud compression
WO2019103009A1 (ja) * 2017-11-22 2019-05-31 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
MX2021000430A (es) * 2018-07-13 2021-03-25 Panasonic Ip Corp America Metodo de codificacion de datos tridimensionales, metodo de decodificacion de datos tridimensionales, dispositivo codificador de datos tridimensionales y dispositivo decodificador de datos tridimensionales.
WO2020242244A1 (ko) * 2019-05-30 2020-12-03 엘지전자 주식회사 포인트 클라우드 데이터 처리 방법 및 장치

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Khaled Mammou, Alexis Tourapis, Jungsun Kim, Fabrice Robinet, Valery Valentin, Yeping Su, "Lifting Scheme for Lossy Attribute Encoding in TMC1", ISO/IEC JTC1/SC29/WG11 MPEG2018/m42640, April 2018, San Diego, US
Ohji Nakagami, Satoru Kuma, "[G-PCC] Spatial scalability support for G-PCC", ISO/IEC JTC1/SC29/WG11 MPEG2019/m47352, March 2019, Geneva, CH
R. Mekuria, Student Member IEEE, K. Blom, P. Cesar., Member, IEEE, "Design, Implementation and Evaluation of a Point Cloud Codec for Tele-Immersive Video", tcsvt_paper_submitted_february.pdf

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024014935A1 (ko) * 2022-07-15 2024-01-18 엘지전자 주식회사 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법

Also Published As

Publication number Publication date
EP3996045A4 (en) 2022-08-31
WO2021002214A1 (ja) 2021-01-07
EP3996045A1 (en) 2022-05-11
JPWO2021002214A1 (ko) 2021-01-07
US20220245863A1 (en) 2022-08-04
CN113875248A (zh) 2021-12-31

Similar Documents

Publication Publication Date Title
US11910026B2 (en) Image processing apparatus and method
AU2019302074B2 (en) Image processing device and method
JP7480775B2 (ja) 情報処理装置および方法
CN111937402A (zh) 图像处理装置和方法
CN113455007A (zh) 帧间点云属性编解码的方法和装置
JP5616984B2 (ja) 画像復号化装置
CN114424247A (zh) 用于点云编码的方法及装置
US20210112276A1 (en) Techniques and apparatus for inter-channel prediction and transform for point-cloud attribute coding
US11983907B2 (en) Techniques and apparatus for explicit quad-tree and binary-tree partitioning for geometry coding
KR20210089070A (ko) 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법
US20230023219A1 (en) Information processing device and method
US11991348B2 (en) Information processing device and method
KR20220035041A (ko) 정보 처리 장치 및 방법
KR20220027847A (ko) 정보 처리 장치 및 방법
WO2020145143A1 (ja) 情報処理装置および方法
KR20210070282A (ko) 화상 처리 장치 및 방법
WO2022145214A1 (ja) 情報処理装置および方法
KR20220034045A (ko) 정보 처리 장치 및 방법
WO2019198520A1 (ja) 情報処理装置および方法
WO2021140928A1 (ja) 情報処理装置および方法
US20220353493A1 (en) Information processing apparatus and method