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

정보 처리 장치 및 방법 Download PDF

Info

Publication number
KR20220035041A
KR20220035041A KR1020217041630A KR20217041630A KR20220035041A KR 20220035041 A KR20220035041 A KR 20220035041A KR 1020217041630 A KR1020217041630 A KR 1020217041630A KR 20217041630 A KR20217041630 A KR 20217041630A KR 20220035041 A KR20220035041 A KR 20220035041A
Authority
KR
South Korea
Prior art keywords
information
order
data
decoding
unit
Prior art date
Application number
KR1020217041630A
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 KR20220035041A publication Critical patent/KR20220035041A/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • 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
    • 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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/184Methods 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 bits, e.g. of the compressed video stream
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding

Abstract

본 개시는 포인트 클라우드의 부호화 데이터의 복호 처리의 부하의 증대를 억제할 수 있도록 하는 정보 처리 장치 및 방법에 관한 것이다. 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 위치 정보를, 그 위치 정보의 부호화 데이터의 복호 결과가 그 포인트 클라우드의 속성 정보의 처리순으로 출력되는 순서로 부호화하고, 그 부호화 데이터를 생성한다. 또한, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 위치 정보의 부호화 데이터를 복호하고, 그 복호 결과를 포인트 클라우드의 속성 정보의 처리순으로 출력한다. 본 개시는 예를 들어 정보 처리 장치, 화상 처리 장치, 부호화 장치, 복호 장치, 전자 기기, 정보 처리 방법 또는 프로그램 등에 적용할 수 있다.

Description

정보 처리 장치 및 방법
본 개시는 정보 처리 장치 및 방법에 관한 것으로, 특히 포인트 클라우드의 부호화 데이터의 복호 처리의 부하의 증대를 억제할 수 있도록 한 정보 처리 장치 및 방법에 관한 것이다.
종래, 예를 들어 포인트 클라우드(Point cloud)와 같은 3차원 구조를 나타내는 3D 데이터의 부호화 방법이 생각되었다(예를 들어 비특허문헌 1 참조). 포인트 클라우드의 데이터는 각 포인트의 지오메트리 데이터(위치 정보라고도 칭한다) 및 애트리뷰트 데이터(속성 정보라고도 칭한다)에 의해 구성된다. 따라서 포인트 클라우드의 부호화는, 그 지오메트리 데이터와 애트리뷰트 데이터의 각각에 대해서 행해진다.
애트리뷰트 데이터의 부호화 방법으로서 여러가지 방법이 제안되어 있다. 예를 들어, Lifting이라고 하는 기술을 사용해서 행하는 것이 제안되었다(예를 들어 비특허문헌 2 참조). 또한, 애트리뷰트 데이터를 스케일러블하게 복호할 수 있도록 하는 방법도 제안되었다(예를 들어, 비특허문헌 3 참조). 또한, Lifting은 아니지만, LoD 내에 있어서 복호 완료된 애트리뷰트 데이터를 참조할 수 있는 방법도 생각되었다(예를 들어, 비특허문헌 4 참조).
어느 경우도, 애트리뷰트 데이터의 부호화는, 압축에 의한 열화를 포함하여 지오메트리 데이터를 기지인 것으로 하여, 포인트간의 위치 관계를 이용해서 행해진다. 보다 구체적으로는, 애트리뷰트 데이터의 부호화는, 공간적으로 가까운 거리에 있는 포인트의 상관을 이용해서 행해진다. 이러한 포인트간의 상관을 이용하기 때문에, 모튼 코드(Morton code)를 이용해서 3차원 공간 상의 포인트가 1차원으로 매핑되고, 그 모튼 코드의 값에 의해 소트가 실행된다. 즉, 각 포인트가 모튼 순서로 정렬된다. 이에 의해, 매핑한 1차원 상에서 인접하는 점이 공간적으로 근방인 것이 보증된다.
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 Toshiyasu Sugio, "[G-PCC] Reference structure modification on attribute predicting transform in TMC13", ISO/IEC JTC1/SC29/WG11 MPEG2018/ m46107, January 2019, Marrakech, MA
그러나, 이 재배열 처리에 의해, 포인트 클라우드의 부호화 데이터의 복호 처리의 부하가 증대할 우려가 있었다.
본 개시는 이러한 상황을 감안하여 이루어진 것으로, 포인트 클라우드의 부호화 데이터의 복호 처리의 부하의 증대를 억제할 수 있도록 하는 것이다.
본 기술의 일 측면의 정보 처리 장치는, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 위치 정보를, 상기 위치 정보의 부호화 데이터의 복호 결과가 상기 포인트 클라우드의 속성 정보의 처리순으로 출력되는 순서로 부호화하고, 상기 부호화 데이터를 생성하는 부호화부를 구비하는 정보 처리 장치이다.
본 기술의 일 측면의 정보 처리 방법은, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 위치 정보를, 상기 위치 정보의 부호화 데이터의 복호 결과가 상기 포인트 클라우드의 속성 정보의 처리순으로 출력되는 순서로 부호화하고, 상기 부호화 데이터를 생성하는 정보 처리 방법이다.
본 기술의 다른 측면의 정보 처리 장치는, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 위치 정보의 부호화 데이터를 복호하고, 복호 결과를 상기 포인트 클라우드의 속성 정보의 처리순으로 출력하는 복호부를 구비하는 정보 처리 장치이다.
본 기술의 다른 측면의 정보 처리 방법은, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 위치 정보의 부호화 데이터를 복호하고, 복호 결과를 상기 포인트 클라우드의 속성 정보의 처리순으로 출력하는 정보 처리 방법이다.
본 기술의 일 측면의 정보 처리 장치 및 방법에 있어서는, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 위치 정보가 그 위치 정보의 부호화 데이터의 복호 결과가 포인트 클라우드의 속성 정보의 처리순으로 출력되는 순서로 부호화되고, 그 부호화 데이터가 생성된다.
본 기술의 다른 측면의 정보 처리 장치 및 방법에 있어서는, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 위치 정보의 부호화 데이터가 복호되고, 그 복호 결과가 포인트 클라우드의 속성 정보의 처리순으로 출력된다.
도 1은 지오메트리 데이터의 처리순의 예를 설명하는 도면이다.
도 2는 지오메트리 데이터의 부호화 방법·복호 방법에 대해서 설명하는 도면이다.
도 3은 DCM을 적용하는 경우의 방법에 대해서 설명하는 도면이다.
도 4는 DCM을 적용하는 경우의 방법에 대해서 설명하는 도면이다.
도 5는 DCM을 적용하는 경우의 방법에 대해서 설명하는 도면이다.
도 6은 부호화 장치의 주요 구성예를 도시하는 블록도이다.
도 7은 위치 정보 부호화부의 주요 구성예를 도시하는 블록도이다.
도 8은 포인트 클라우드 생성부의 주요 구성예를 도시하는 블록도이다.
도 9는 부호화 처리의 흐름의 예를 설명하는 흐름도이다.
도 10은 위치 정보 부호화 처리의 흐름의 예를 설명하는 흐름도이다.
도 11은 포인트 클라우드 생성 처리의 흐름의 예를 설명하는 흐름도이다.
도 12는 복호 장치의 주요 구성예를 도시하는 블록도이다.
도 13은 위치 정보 복호부의 주요 구성예를 도시하는 블록도이다.
도 14는 복호 처리의 흐름의 예를 설명하는 흐름도이다.
도 15는 위치 정보 복호 처리의 흐름의 예를 설명하는 흐름도이다.
도 16은 국소 영역의 복호의 모습의 예를 설명하는 도면이다.
도 17은 컴퓨터의 주요 구성예를 도시하는 블록도이다.
이하, 본 개시를 실시하기 위한 형태(이하 실시 형태라고 한다)에 대해서 설명한다. 또한, 설명은 이하의 순서로 행한다.
1. 복호 결과의 출력순의 보증
2. 제1 실시 형태(부호화 장치)
3. 제2 실시 형태(복호 장치)
4. 부기
<1. 복호 결과의 출력순의 보증>
<기술 내용·기술 용어를 서포트하는 문헌 등>
본 기술에서 개시되는 범위는, 실시 형태에 기재되어 있는 내용뿐만 아니라, 출원 당시에 있어서 공지되어 있는 이하의 비특허문헌에 기재되어 있는 내용도 포함된다.
비특허문헌 1: (상술)
비특허문헌 2: (상술)
비특허문헌 3: (상술)
비특허문헌 4: (상술)
비특허문헌 5: Sebastien Lasserre, David Flynn, "[PCC] Inference of a mode using point location direct coding in TMC3", ISO/IEC JTC1/SC29/WG11 MPEG2018/m42239, January 2018, Gwangju, Korea
즉, 이들 비특허문헌에 기재되어 있는 내용도 서포트 요건을 판단할 때의 근거가 된다.
<포인트 클라우드>
종래, 점군의 위치 정보나 속성 정보 등에 의해 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의 경우, 각 포인트의 애트리뷰트 데이터는 다른 포인트의 애트리뷰트 데이터를 사용해서 도출되는 예측값과의 차분값으로서 부호화된다. 그 때, 각 포인트가 계층화되고, 차분값은 그 계층 구조에 따라서 도출된다.
즉, 포인트마다의 애트리뷰트 데이터에 대해서, 각 포인트가 예측 포인트와 참조 포인트로 분류되고, 그 참조 포인트의 애트리뷰트 데이터를 사용해서 예측 포인트의 애트리뷰트 데이터의 예측값이 도출되고, 그 예측 포인트의 애트리뷰트 데이터와 예측값과의 차분값이 도출된다. 이러한 처리를, 참조 포인트에 대하여 재귀적으로 반복함으로써, 각 포인트의 애트리뷰트 데이터가 계층화된다.
단, 이 계층 구조는 지오메트리 데이터의 계층 구조(예를 들어 Octree)와는 독립적으로 생성된 것이며, 기본적으로, 지오메트리 데이터의 계층 구조와는 대응하지 않는다. 포인트 클라우드 데이터를 복원하기 위해서는, 지오메트리 데이터와 애트리뷰트 데이터를 대응시킬 필요가 있고, 그를 위해서는, 지오메트리 데이터 및 애트리뷰트 데이터를 최고해상도(즉 최하위층)까지 복호할 필요가 있었다. 즉, 비특허문헌 2에 기재된 Lifting을 적용한 방법은, 해상도의 스케일러블한 복호에 대응하고 있지 않다.
<스케일러블한 복호에 대응한 계층화>
이에 반해 비특허문헌 3에 기재된 계층화는, 해상도의 스케일러블한 복호에 대응하고 있다. 비특허문헌 3에 기재된 방법의 경우, 지오메트리 데이터의 Octree의 계층 구조에 일치하도록 애트리뷰트 데이터의 계층화를 행한다. 즉, 지오메트리 데이터의 복셀에 상당하는 영역 내에 포인트가 존재하는 경우(그 포인트에 대응하는 애트리뷰트 데이터가 존재하는 경우), 그 복셀의 1계층 상위의 복셀에 있어서도 포인트가 존재하도록(그 포인트에 대응하는 애트리뷰트 데이터가 존재하도록), 참조 포인트와 예측 포인트의 선택을 행한다. 즉, 지오메트리 데이터의 Octree의 계층 구조에 따라서 속성 정보가 계층화된다.
애트리뷰트 데이터의 계층 구조를 지오메트리 데이터의 계층 구조와 대응지음으로써, 최하층까지 복호하지 않아도, 용이하게 원하는 해상도의 포인트 클라우드 데이터를 복원할 수 있다. 이와 같이, 비특허문헌 3에 기재된 기술을 적용한 방법은 해상도의 스케일러블한 복호에 대응한다.
<재배열 처리>
어느 경우도, 애트리뷰트 데이터의 부호화·복호는, 공간적으로 가까운 거리에 있는 포인트의 상관을 이용해서 행해진다. 이 포인트간의 상관을 이용하기 때문에, 모튼 코드(Morton code)를 이용해서 3차원 공간 상의 포인트가 1차원으로 매핑되고, 그 모튼 코드의 값에 의해 소트가 실행된다. 즉, 지오메트리 데이터에 대하여 재배열 처리가 행해지고, 각 포인트가 모튼 순서로 정렬된다. 이에 의해, 매핑한 1차원 상에서 인접하는 점이 공간적으로 근방인 것이 보증된다.
예를 들어, 도 1에 나타내는 지오메트리 데이터의 Octree에 있어서, 노드 b 내지 노드 d가 노드 a에 속해 있고, 포인트 F 내지 포인트 H가 노드 b에 속해 있고, 포인트 J가 노드 c에 속해 있고, 포인트 K 및 포인트 L이 노드 d에 속해 있다. 노드 a, 노드 b 및 노드 d는 Octree 부호화되어 있고, 노드 c는 DCM(Direct Coding Mode)을 적용해서 부호화되어 있다.
이와 같은 구성의 Octree의 부호화 데이터의, 점선 원(11)으로 둘러싸인 노드 a 내지 노드 d를 복호함으로써, 실선 사각(12)으로 둘러싸인 포인트 F 내지 포인트 L이 출력된다.
그 때, 노드 a로부터 처리가 개시되고, 이어서 노드 b, 노드 c 및 노드 d가 처리된다. 단, 노드 b, 노드 c 및 노드 d의 처리는, 그 처리순이 규정되어 있지 않고, 병렬로 행할 수도 있다. 또한 노드 c는 DCM을 적용해서 부호화되어 있으므로, 일반적으로, 포인트 J는 그 밖의 포인트보다 조기에 출력된다.
또한, 노드 b를 처리함으로써 포인트 F 내지 포인트 H가 복호 결과로서 출력되지만, 이들 출력순은 규정되어 있지 않다. 마찬가지로, 노드 d를 처리함으로써 포인트 K 및 포인트 L이 복호 결과로서 출력되지만, 이들 출력순은 규정되어 있지 않다.
따라서, 각 포인트의 출력순은 이하와 같이 된다. 또한, 이하에 있어서, () 안의 포인트 출력순은 순서 부동이다.
J, ((F, G, H), (K, L))
즉, 포인트 F 내지 포인트 H의 출력순은 순서 부동이고, 포인트 K 및 포인트 L의 출력순은 순서 부동이고, 포인트 F 내지 포인트 H와, 포인트 K 및 포인트 L의 출력순은 순서 부동이다.
이와 같이, 각 포인트의 지오메트리 데이터의 출력순은, 어느 정도의 자유도를 갖고 있기 때문에, 애트리뷰트 데이터의 처리순과 일치하지 않을 우려가 있었다. 즉, 각 포인트의 지오메트리 데이터가 애트리뷰트 데이터의 처리순으로 출력되는 것이 보증되어 있지 않았다. 그 때문에, 애트리뷰트 데이터를 상술한 바와 같은 처리순으로 처리하기 위해서, 상술한 바와 같은 지오메트리 데이터를 사용한 포인트의 재배열 처리가 필요했다.
그러나, 이 재배열 처리는, 계산 비용이 비싸고, 즉 처리의 부하가 크다. 즉, 이 재배열 처리의 처리량이나 처리 시간은 적지 않다. 그 때문에, 이 재배열 처리를 행함으로써, 포인트 클라우드의 부호화 데이터의 복호 처리의 부하가 증대할 우려가 있었다. 예를 들어, 이 재배열 처리에 의해 계산 비용이 증대함으로써, 포인트 클라우드의 부호화 데이터의 복호를 실시간으로 처리하는 것이 곤란해질 우려도 있었다. 그 때문에, 포인트 클라우드의 부호화 데이터의 복호의 실시간 처리를 확실하게 실현하기 위해서는, 실장 비용이 증대할 우려가 있었다.
<복호 결과의 출력순의 보증>
그래서, 도 2에 도시하는 표의 맨위 단에 기재된 「방법 1」과 같이, 지오메트리 데이터의 복호 결과의 출력순을, 소정의 순서로 한다. 예를 들어, 지오메트리 데이터의 복호 결과의 출력순이 소정의 순서가 되는 것이 보증되도록, 지오메트리 데이터를 부호화한다. 이와 같이 함으로써, 포인트의 재배열 처리가 불필요해지므로, 포인트 클라우드의 부호화 데이터의 복호 처리의 부하의 증대를 억제할 수 있다. 따라서, 포인트 클라우드의 부호화 데이터의 복호의 실시간 처리를 확실하게 실현하기 위한 실장 비용의 증대를 억제할 수 있다.
또한, 예를 들어 복호 결과를 소정의 순서로 출력하도록, 지오메트리 데이터의 부호화 데이터를 복호한다. 이와 같이 함으로써, 포인트의 재배열 처리가 불필요해지므로, 포인트 클라우드의 부호화 데이터의 복호 처리의 부하의 증대를 억제할 수 있다. 따라서, 포인트 클라우드의 부호화 데이터의 복호의 실시간 처리를 확실하게 실현하기 위한 실장 비용의 증대를 억제할 수 있다.
예를 들어, 도 1에 도시하는 지오메트리 데이터의 Octree의 경우, 노드 b에 있어서, 포인트 F 내지 포인트 H의 복호 결과가, 포인트 F→포인트 G→포인트 H의 순으로 출력되는 것을 보증하도록 한다. 또한, 노드 d에 있어서, 포인트 K 및 포인트 L의 복호 결과가, 포인트 K→포인트 L의 순으로 출력되는 것을 보증한다. 또한, 노드 b→노드 d의 순으로, 각각에 속하는 포인트(포인트 F 내지 포인트 H)의 복호 결과가 출력되는 것을 보증한다.
이와 같이 함으로써, 각 포인트의 출력순은, 이하와 같이 된다.
J, F, G, H, K, L
즉, 출력순이 고정되고, 기지가 된다. 따라서, 포인트의 재배열 처리가 불필요해지므로, 포인트 클라우드의 부호화 데이터의 복호 처리의 부하의 증대를 억제할 수 있다.
이 소정의 순서는, 지오메트리 데이터의 부호화 데이터를 복호할 때에 기지이면 어떤 순서여도 된다. 예를 들어, 도 2에 도시하는 표의 위에서부터 2번째 단에 기재된 「방법 1-1」과 같이, 이 소정의 순서를 모튼 순서(Morton Order)로 해도 된다. 모튼 순서로 출력함으로써, 그 출력순에 있어서 인접하는 포인트끼리가 공간적으로 근방인 것이 보증된다.
또한, 예를 들어 도 2에 도시하는 표의 위에서부터 3번째 단에 기재된 「방법 1-2」와 같이, 이 소정의 순서를 애트리뷰트 데이터의 처리순으로 해도 된다. 즉, 지오메트리 데이터의 복호 결과의 출력순을, 애트리뷰트 데이터의 처리순과 동일하도록 해도 된다.
예를 들어, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 지오메트리 데이터(위치 정보)를, 그 지오메트리 데이터의 부호화 데이터의 복호 결과가 그 포인트 클라우드의 애트리뷰트 데이터(속성 정보)의 처리순으로 출력되는 순서로 부호화하고, 그 부호화 데이터를 생성해도 된다.
또한 예를 들어, 정보 처리 장치에 있어서, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 지오메트리 데이터(위치 정보)를, 그 지오메트리 데이터의 부호화 데이터의 복호 결과가 그 포인트 클라우드의 애트리뷰트 데이터(속성 정보)의 처리순으로 출력되는 순서로 부호화하고, 그 부호화 데이터를 생성하는 부호화부를 구비해도 된다.
이와 같이 부호화함으로써, 복호 시에, 복호 결과의 지오메트리 데이터가 애트리뷰트 데이터의 처리순과 동일 순으로 출력되는 것이 보증된다. 따라서, 포인트의 재배열 처리가 불필요해지므로, 포인트 클라우드의 부호화 데이터의 복호 처리의 부하의 증대를 억제할 수 있다. 따라서, 포인트 클라우드의 부호화 데이터의 복호의 실시간 처리를 확실하게 실현하기 위한 실장 비용의 증대를 억제할 수 있다.
또한, 지오메트리 데이터의 부호화 방법은 임의이다. 예를 들어, CABAC(Context-based Adaptive Binary Arithmetic Code)를 적용해서 지오메트리 데이터를 부호화하는 경우, 컨텍스트가 사용되므로, 부호화 데이터는 부호화순과 동일 순으로 복호된다. 따라서, 이 경우, 지오메트리 데이터를 애트리뷰트 데이터의 처리순으로 부호화함으로써, 복호 시에, 복호 결과의 지오메트리 데이터가, 그 애트리뷰트 데이터의 처리순과 동일 순으로 출력되는 것이 보증된다.
또한, 예를 들어 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 위치 정보의 부호화 데이터를 복호하고, 그 복호 결과를 포인트 클라우드의 속성 정보의 처리순으로 출력해도 된다.
예를 들어, 정보 처리 장치에 있어서, 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 위치 정보의 부호화 데이터를 복호하고, 그 복호 결과를 포인트 클라우드의 속성 정보의 처리순으로 출력하는 복호부를 구비해도 된다.
이와 같이 복호함으로써, 복호 결과의 지오메트리 데이터가 애트리뷰트 데이터의 처리순과 동일 순으로 출력되므로, 포인트의 재배열 처리가 불필요해진다. 따라서, 포인트 클라우드의 부호화 데이터의 복호 처리의 부하의 증대를 억제할 수 있다. 따라서, 포인트 클라우드의 부호화 데이터의 복호의 실시간 처리를 확실하게 실현하기 위한 실장 비용의 증대를 억제할 수 있다.
또한, 지오메트리 데이터의 복호 방법은, 그 부호화의 방법에 대응하는 것이면, 임의이다. 예를 들어, CABAC를 적용해서 지오메트리 데이터가 부호화된 경우, 그 부호화 데이터의 복호에 있어서 컨텍스트가 사용되므로, 그 지오메트리 데이터의 부호화 데이터를, 그 배열순(즉, 지오메트리 데이터의 부호화순)에 따라서 복호하면 된다. 이와 같이 복호함으로써, 복호 결과의 지오메트리 데이터가 그 애트리뷰트 데이터의 처리순과 동일 순으로 출력되는 것이 보증된다.
또한, 복호 결과의 출력순(즉, 애트리뷰트 데이터의 처리순)은 어떠한 순서여도 된다. 예를 들어, 복호 결과가 모튼 순서로 출력되도록(즉, 애트리뷰트 데이터가 모튼 순서로 처리되도록) 해도 된다. 모튼 순서로 출력함으로써, 그 출력순에 있어서 인접하는 포인트끼리가 공간적으로 근방인 것이 보증된다.
또한, 지오메트리 데이터는 나무 구조화되어 있어도 된다. 추가로, 도 2에 도시하는 표의 위에서부터 4번째 단에 기재된 「방법 1-3」과 같이, 그 나무 구조의 각 노드에 있어서 복호 결과의 출력순을 소정의 순서(예를 들어, 애트리뷰트 데이터의 처리순, 모튼 순서 등)로 하는 것을 보증하도록 해도 된다. 예를 들어, 나무 구조화된 지오메트리 데이터가, 그 나무 구조의 각 노드에 있어서 복호 결과가 포인트 클라우드의 애트리뷰트 데이터의 처리순으로 출력되는 순서로 부호화되도록 해도 된다. 또한, 예를 들어 나무 구조화된 지오메트리 데이터의 부호화 데이터가 복호되고, 그 나무 구조의 각 노드에 있어서 복호 결과가 포인트 클라우드의 애트리뷰트 데이터의 처리순으로 출력되도록 해도 된다.
이와 같이 함으로써, 나무 구조의 지오메트리 데이터를 부호화·복호하는 경우에 있어서도, 마찬가지로, 포인트의 재배열 처리를 불필요하게 할 수 있어, 포인트 클라우드의 부호화 데이터의 복호 처리의 부하의 증대를 억제할 수 있다.
또한, 이 나무 구조는 어떠한 것이어도 된다. 예를 들어, Octree여도 된다. 또한, 예를 들어 KD-tree여도 된다.
<DCM>
또한, 나무 구조화된 지오메트리 데이터의 부호화 방법은, 그 나무 구조를 사용한 방법(예를 들어 Octree를 사용한 Octree 부호화)뿐만 아니라, DCM(Direct Coding Mode)을 적용한 방법도 사용하도록 해도 된다.
예를 들어, 복셀 데이터의 Octree화에 있어서, 처리 대상의 노드가 소정의 조건을 충족하고, 희소하다고 판정되면, 이 DCM이 적용되어, 처리 대상 노드로부터 그 처리 대상 노드에 직접적 또는 간접적으로 속하는 각 리프(포인트)까지의 상대 거리(xyz의 각 방향에 대해서)가 구해지고, 부호화된다.
또한, 「직접적으로 속하는 노드」란, 나무 구조에 있어서 상대의 노드에 매달린 노드를 나타낸다. 예를 들어, 처리 대상 노드에 직접적으로 속하는 노드는, 처리 대상 노드에 속하고, 또한 처리 대상 노드보다 1계층 하위인 노드(소위 자 노드)를 나타낸다. 또한, 「간접적으로 속하는 노드」란, 나무 구조에 있어서 다른 노드를 통해 상대의 노드에 매달린 노드를 나타낸다. 예를 들어, 처리 대상 노드에 간접적으로 속하는 노드는, 처리 대상 노드에 다른 노드를 통해 속하고, 또한 처리 대상 노드보다 2계층 이상 하위인 노드(예를 들어 손자 노드)를 나타낸다.
즉, DCM을 적용함으로써, 처리 대상 노드로부터 그 처리 대상 노드에 직접적 또는 간접적으로 속하는 각리프까지의 사이의 중간 계층의 노드의 부호화·복호를 생략할 수 있다. 환언하자면, 처리 대상 노드를 부호화·복호할 때에 그 처리 대상 노드에 직접적 또는 간접적으로 속하는 각리프를 부호화·복호할 수 있다. 따라서, 부호화·복호의 부하 증대를 억제할 수 있다.
<DCM에 대응한 출력순의 보증>
이러한 DCM이 적용되는 경우에 있어서도, 지오메트리 데이터의 복호 결과의 출력순을, 소정의 순서로 하는 것을 보증하도록 해도 된다. 단, DCM이 적용된 리프(포인트)의 처리 순위는, 처리 대상의 노드의 처리 순위에 의존하기 때문에, 제어가 곤란해서, Octree 부호화의 경우와 다른 경우가 있다. 즉, DCM이 적용되는 포인트의 복호 결과의 출력 순위는 제어가 곤란하다.
그래서, 도 2에 도시하는 표의 위에서부터 5번째 단에 기재된 「방법 1-4」와 같이, DCM이 적용되는 포인트의 복호 결과의 출력 순위에 관한 제어 정보를 시그널링하도록(부호화측으로부터 복호측으로 전송하도록) 해도 된다.
예를 들어, 부호화측에 있어서, 희소한 포인트의 지오메트리 데이터를, DCM을 적용해서 부호화하고, 그 지오메트리 데이터의 부호화 데이터를 생성하고, 또한 그 부호화 데이터의 복호 결과의 출력 순위에 관한 제어 정보(DCM 순번 정보라고도 칭한다)를 생성해도 된다.
또한, 예를 들어 복호측에 있어서, DCM이 적용되어 부호화된 지오메트리 데이터의 부호화 데이터의 복호 결과를, 그 DCM 순번 정보에 의해 나타내는 출력 순위로 출력시켜도 된다.
이들과 같이 함으로써, DCM이 적용되는 포인트를 적절한 출력 순위로 출력하는 것이 보증되므로, DCM이 적용되는 경우에 있어서도 마찬가지로, 포인트의 재배열 처리를 불필요하게 할 수 있고, 포인트 클라우드의 부호화 데이터의 복호 처리의 부하의 증대를 억제할 수 있다.
또한, 이 DCM 순번 정보는 DCM이 적용된 포인트의 복호 결과의 출력 순위를 나타낼 수 있으면 어떠한 정보여도 된다. 예를 들어, DCM 순번 정보가 그 DCM이 적용된 포인트의 복호 결과의 출력 순위를, 선두로부터의 순번으로 나타내는 정보를 포함하도록 해도 된다. 또한, DCM 순번 정보가 그 DCM이 적용된 포인트의 복호 결과의 출력 순위를, 그 1개 전에 출력되는 DCM이 적용된 포인트의 복호 결과의 출력 순위로부터의 차분값으로 나타내는 정보를 포함하도록 해도 된다. 추가로, DCM 순번 정보가 그 DCM이 적용된 포인트의 복호 결과의 출력 순위를, 소정의 기준 순위로부터의 차분값으로 나타내는 정보를 포함하도록 해도 된다.
예를 들어, 도 3에 도시하는 Octree에 있어서, 노드 a 내지 노드 d, 그리고 포인트 F 내지 포인트 L은, 도 1의 경우와 마찬가지로 구성되어 있다. 노드 a는, 노드 e에 속한다. 이 노드 e에 속하는 포인트 M 및 포인트 L은, DCM을 적용해서 부호화·복호된다.
이러한 경우에 있어서, 실선 사각(21)에 의해 둘러싸이는 포인트 F 내지 포인트 N이, 상술한 바와 같이 화살표 22와 같은 출력순으로 출력되는 것을 보증한다로 한다. 도 1을 참조하여 설명한 바와 같이 Octree 부호화되는 노드에 속하는 포인트의 복호 결과는, 상술한 바와 같이 그 출력순이 보증된다. 즉, 포인트 F, 포인트 G, 포인트 H, 포인트 K 및 포인트 L의 복호 결과는, 포인트 F→포인트 G→포인트 H→포인트 K→포인트 L과 같은 순으로 출력된다.
이에 반해, 포인트 M, 포인트 J 및 포인트 N은 DCM이 적용되므로, 도 3에 도시한 바와 같은 순으로 처리된다고는 할 수 없다. 그래서, DCM 순번 정보를 사용하여, 이들 포인트를 올바른 순위로 출력하도록 한다.
도 3에 있어서 각 포인트의 복호 결과가 왼쪽에서 오른쪽을 향하는 순으로 출력되도록 하므로, 포인트 M의 복호 결과의 올바른 출력 순위는 2, 포인트 J의 복호 결과의 올바른 출력 순위는 5, 포인트 N의 복호 결과의 올바른 출력 순위는 6으로 한다.
예를 들어, DCM 순번 정보가 그 복호 결과의 출력 순위를, 선두로부터의 순번(예를 들어 복호순)으로 나타내도록 해도 된다. 그 경우, DCM 순번 정보는 포인트 M의 복호 결과의 출력 순위를 「2」로 나타내고, 포인트 J의 복호 결과의 출력 순위를 「5」로 나타내고, 포인트 N의 복호 결과의 출력 순위를 「6」으로 나타낸다.
또한, 예를 들어 DCM 순번 정보가 그 복호 결과의 출력 순위를, 그 1개 전에 출력되는 DCM이 적용된 포인트의 복호 결과의 출력 순위로부터의 차분값으로 나타내도록 해도 된다. 그 경우, DCM 순번 정보는 포인트 M의 복호 결과의 출력 순위를 「2」(포인트 M의 복호 결과의 출력 순위 「2」로부터 선두 「0」을 감산한 값)로 나타낸다. 또한, DCM 순번 정보는 포인트 J의 복호 결과의 출력 순위를 「3」(포인트 J의 복호 결과의 출력 순위 「5」로부터 포인트 M의 복호 결과의 출력 순위 「2」를 감산한 값)으로 나타낸다. 또한, DCM 순번 정보는 포인트 N의 복호 결과의 출력 순위를 「1」(포인트 N의 복호 결과의 출력 순위 「6」으로부터 포인트 J의 복호 결과의 출력 순위 「5」를 감산한 값)로 나타낸다.
이와 같이 함으로써, 복호 결과의 출력 순위를 선두로부터의 순번(예를 들어 복호순)으로 나타내는 경우보다 DCM 순번 정보의 부호량을 저감시킬 수 있다. 즉, 부호화 효율의 저감을 억제할 수 있다.
또한, 예를 들어 DCM 순번 정보가 그 복호 결과의 출력 순위를, 소정의 기준 순위로부터의 차분값으로 나타내도록 해도 된다. 예를 들어, 소정의 포인트수마다 구획하는 그리드 단위를 마련하고, 그 그리드 단위에 있어서 차분값을 초기화하도록(예를 들어 「0」으로 하도록) 해도 된다. 도 3의 예의 경우, 일점 쇄선(23)이 그리드 단위 중 하나를 나타낸다. 즉, 이 예의 경우, 포인트 5개마다 그리드 단위가 마련되어 있다. 1개 전의 DCM이 적용된 포인트로부터의 차분값을 도출할 때에 이러한 그리드 단위를 초과하면 그 차분값이 리셋된다.
그 경우, DCM 순번 정보는 포인트 M의 복호 결과의 출력 순위를 「2」(포인트 M의 복호 결과의 출력 순위 「2」로부터 선두 「0」을 감산한 값)로 나타낸다. 또한, DCM 순번 정보는 포인트 J의 복호 결과의 출력 순위를 「3」(포인트 J의 복호 결과의 출력 순위 「5」로부터 포인트 M의 복호 결과의 출력 순위 「2」를 감산한 값)으로 나타낸다. 추가로, DCM 순번 정보는 포인트 N의 복호 결과의 출력 순위를 「1」(포인트 N의 복호 결과의 출력 순위 「6」으로부터 일점 쇄선(23)으로 나타내는 그리드 단위 「5」를 감산한 값)로 나타낸다. 도 3에 있어서는, 차분값이 초기화된 것을 나타내기 위해서 「1'」로 나타내고 있다.
이와 같이 함으로써, 복호 결과의 출력 순위를 1개 전의 DCM이 적용된 포인트로부터의 차분값으로 나타내는 경우보다 DCM 순번 정보의 부호량을 저감시킬 수 있다. 즉, 부호화 효율의 저감을 억제할 수 있다.
부호화측에 있어서는, 이상과 같은 DCM 순번 정보를 생성하고, 복호측으로 전송시킨다. 복호측에 있어서는, 전송된 DCM 순번 정보를 취득하고, 그 DCM 순번 정보에 기초하여, DCM이 적용된 포인트의 복호 결과의 출력 순위를 제어한다. 즉, DCM이 적용된 포인트의 복호 결과를 올바른 출력 순위로 출력시킨다. 환언하자면, DCM 순번 정보에 기초하여, 출력순으로 배열하는 Octree 부호화 데이터의 복호 결과의 열의, 올바른 출력 순위가 되는 위치에, DCM이 적용된 포인트의 복호 결과를 삽입한다.
이와 같이 함으로써, DCM이 적용되는 경우에 있어서도 마찬가지로, 포인트의 재배열 처리를 불필요하게 할 수 있고, 포인트 클라우드의 부호화 데이터의 복호 처리의 부하의 증대를 억제할 수 있다.
<중간 계층의 제어 정보>
또한, 상술한 바와 같은 나무 구조의 지오메트리 데이터의 부호화 데이터는 스케일러블하게 복호할 수 있다. 즉, 최하위층 이외의 계층(최하위층보다 상위층)의 해상도로 지오메트리 데이터를 복호할 수도 있다.
단, 상술한 바와 같은 DCM이 적용된 포인트는, 계층에 의해 위치(출력 순위)이 변화할 가능성이 있다. 예를 들어, 도 4에 도시한 바와 같이, 실선 사각(31)으로 둘러싸인 계층의 각 노드(포인트)의 복호 결과를 화살표 32와 같은 순으로 출력시키는 것으로 한다.
이 경우, DCM이 적용되는 포인트 M, 포인트 J(노드 c) 및 포인트 N의 출력 순위가, 도 3의 경우와 다르다.
그래서, 도 2에 도시하는 표의 위에서부터 6번째 단에 기재된 「방법 1-5」와 같이, 부호화측에 있어서, 이러한 나무 구조의 중간 계층에 있어서도 제어 정보(DCM 순번 정보)를 생성하도록 해도 된다. 예를 들어, DCM이 적용되는 포인트에 대해서는, DCM이 적용된 부호화가 행해지는 처리 대상의 노드로부터 그 포인트까지의 전체 계층(또는 일부의 계층)에 대해서 제어 정보(DCM 순번 정보)를 생성하도록 해도 된다.
그리고, 그러한 제어 정보(DCM 순번 정보)를 시그널링하도록(부호화측으로부터 복호측으로 전송하도록) 해도 된다. 또한, 복호측에 있어서, 그러한 제어 정보(DCM 순번 정보)에 기초하여, DCM이 적용되는 포인트의 복호 결과의 출력순을 제어하도록 해도 된다.
환언하자면, 제어 정보(DCM 순번 정보)가 나무 구조의 중간 계층에 있어서의 복호 결과의 출력 순위에 관한 정보도 포함하도록 해도 된다.
이 중간 계층의 경우도, 제어 정보는 상술한 최하위층의 경우와 마찬가지로, 복호 결과의 출력 순위를 표현하도록 해도 된다. 예를 들어, 제어 정보가 DCM이 적용된 포인트의 복호 결과의 출력 순위를, 선두로부터의 순번(예를 들어 복호순)으로 나타내도록 해도 된다. 도 4의 예에 있어서, 그 경우의 제어 정보는 포인트 M의 복호 결과의 출력 순위를 「1」로 나타내고, 포인트 J의 복호 결과의 출력 순위를 「3」으로 나타내고, 포인트 N의 복호 결과의 출력 순위를 「4」로 나타낸다.
또한, 예를 들어 제어 정보가 DCM이 적용된 포인트의 복호 결과의 출력 순위를, 그 1개 전에 출력되는 DCM이 적용된 포인트의 복호 결과의 출력 순위로부터의 차분값으로 나타내도록 해도 된다. 도 4의 예에 있어서, 그 경우의 제어 정보는 포인트 M의 복호 결과의 출력 순위를 「1」(포인트 M의 복호 결과의 출력 순위 「1」로부터 선두 「0」을 감산한 값)로 나타내고, 포인트 J의 복호 결과의 출력 순위를 「2」(포인트 J의 복호 결과의 출력 순위 「3」으로부터 포인트 M의 복호 결과의 출력 순위 「1」을 감산한 값)로 나타내고, 포인트 N의 복호 결과의 출력 순위를 「1」(포인트 N의 복호 결과의 출력 순위 「4」로부터 포인트 J의 복호 결과의 출력 순위 「3」을 감산한 값)로 나타낸다.
이와 같이 함으로써, 복호 결과의 출력 순위를 선두로부터의 순번(예를 들어 복호순)으로 나타내는 경우보다 제어 정보의 부호량을 저감시킬 수 있다. 즉, 부호화 효율의 저감을 억제할 수 있다.
또한, 예를 들어 DCM이 적용된 포인트의 제어 정보가 그 복호 결과의 출력 순위를, 소정의 기준 순위로부터의 차분값으로 나타내도록 해도 된다. 예를 들어, 소정의 포인트수마다 구획하는 그리드 단위를 마련하고, 그 그리드 단위에 있어서 차분값을 초기화하도록(예를 들어 「0」으로 하도록) 해도 된다. 도 4의 예의 경우, 일점 쇄선(33)이 그리드 단위 중 하나를 나타낸다. 즉, 이 예의 경우, 포인트 3개마다 그리드 단위가 마련되어 있다. 1개 전의 DCM이 적용된 포인트로부터의 차분값을 도출할 때에 이러한 그리드 단위를 초과하면 그 차분값이 리셋된다.
도 4의 예에 있어서, 그 경우의 제어 정보는 포인트 M의 복호 결과의 출력 순위를 「1」(포인트 M의 복호 결과의 출력 순위 「1」로부터 선두 「0」을 감산한 값)로 나타내고, 포인트 J의 복호 결과의 출력 순위를 「2」(포인트 J의 복호 결과의 출력 순위 「3」으로부터 포인트 M의 복호 결과의 출력 순위 「1」을 감산한 값)로 나타내고, 포인트 N의 복호 결과의 출력 순위를 「1」(포인트 N의 복호 결과의 출력 순위 「4」로부터 일점 쇄선(23)으로 나타내는 그리드 단위 「3」을 감산한 값)로 나타낸다. 도 4에 있어서는, 차분값이 초기화된 것을 나타내기 위해서 「1'」로 나타내고 있다.
이와 같이 함으로써, 복호 결과의 출력 순위를 1개 전의 DCM이 적용된 포인트로부터의 차분값으로 나타내는 경우보다 제어 정보의 부호량을 저감시킬 수 있다. 즉, 부호화 효율의 저감을 억제할 수 있다.
도 5의 A에 도시한 바와 같이, 종래의 지오메트리 데이터의 비트 스트림(40)의 경우, DCM이 적용되어 부호화된 포인트의 부호화 데이터(41)와, Octree 부호화된 포인트의 부호화 데이터(42)가 서로 다른 데이터로서 구성되고, 처리순으로 배열되어 있지 않다. 또한, 각 포인트의 처리순을 나타내는 정보도 없다. 추가로, Octree 부호화된 포인트도 처리순으로 배열되어 있지 않다. 따라서, 각 포인트의 부호화 데이터의 복호 결과를, 애트리뷰트 데이터의 처리순(예를 들어 모튼 순서)으로 소트할 필요가 있다.
이에 반해, 상술한 본 기술을 적용함으로써, 도 5의 B에 도시한 바와 같이, 그 비트 스트림(50)은, DCM이 적용되어 부호화된 포인트의 부호화 데이터(51)와, Octree 부호화된 포인트의 부호화 데이터(52)와, DCM 순번 정보(53)를 갖는다. 이 DCM 순번 정보(53)는, DCM이 적용된 각 포인트의 복호 결과의 출력 순위를 나타낸다. 따라서, 복호측에 있어서, 이 DCM 순번 정보(53)에 기초하여, DCM이 적용된 각 포인트의 복호 결과를, Octree 부호화된 포인트군의 올바른 위치에 삽입한다.
이와 같이 함으로써, 지오메트리 데이터의 복호 결과의 소트가 불필요해져서, 포인트 클라우드의 부호화 데이터의 복호 처리의 부하의 증대를 억제할 수 있다.
<제어 정보의 전송 방식>
또한, 이상과 같은 제어 정보의 전송 방식은 임의이다. 즉, 도 2에 도시하는 표의 위에서부터 7번째 단에 기재된 「방법 1-6」과 같이, 제어 정보가 소정의 전송 방식으로 전송되도록 해도 된다. 예를 들어, 제어 정보를 지오메트리 데이터의 부호화 데이터에 포함하도록 해도 된다. 또한, 예를 들어 제어 정보를 지오메트리 데이터의 부호화 데이터와는 다른 데이터로 해서 전송하도록 해도 된다. 그 경우, 식별 정보 등을 사용하여, 제어 정보를 지오메트리 데이터의 부호화 데이터에 관련짓도록 해도 된다. 예를 들어, 제어 정보에, 대응하는 데이터 단위(예를 들어 슬라이스 등)의 지오메트리 데이터의 식별 정보를 포함하도록 해도 된다.
<2.제1 실시 형태>
<부호화 장치>
이어서, <1. 복호 결과의 출력순의 보증>에 있어서 상술한 본 기술을 적용하는 장치에 대해서 설명한다. 도 6은 본 기술을 적용한 정보 처리 장치의 일 양태인 부호화 장치의 구성의 일례를 도시하는 블록도이다. 도 6에 도시하는 부호화 장치(100)는, 포인트 클라우드(3D 데이터)를 부호화하는 장치이다. 부호화 장치(100)는, <1. 복호 결과의 출력순의 보증>에 있어서 상술한 본 기술을 적용해서 포인트 클라우드를 부호화한다.
또한, 도 6에 있어서는, 처리부나 데이터의 흐름 등의 주된 것을 도시하고 있고, 도 6에 도시한 것이 전부라고는 할 수 없다. 즉, 부호화 장치(100)에 있어서, 도 6에 있어서 블록으로서 나타내지 않은 처리부가 존재하거나, 도 6에 있어서 화살표 등으로서 나타내지 않은 처리나 데이터의 흐름이 존재해도 된다.
도 6에 도시한 바와 같이 부호화 장치(100)는 위치 정보 부호화부(101), 위치 정보 복호부(102), 포인트 클라우드 생성부(103), 속성 정보 부호화부(104) 및 비트 스트림 생성부(105)를 갖는다.
위치 정보 부호화부(101)는 부호화 장치(100)에 입력된 포인트 클라우드(3D 데이터)의 지오메트리 데이터(위치 정보)를 부호화한다. 예를 들어 위치 정보 부호화부(101)는 지오메트리 데이터를 계층화해서 Octree를 생성하고, 그 Octree를 부호화한다. 또한, 예를 들어 위치 정보 부호화부(101)는, 희소한 포인트의 지오메트리 데이터를, DCM을 적용해서 부호화한다.
그 때, 위치 정보 부호화부(101)는, <1. 복호 결과의 출력순의 보증>에 있어서 상술한 본 기술을 적용하여, 지오메트리 데이터를 부호화한다. 예를 들어, 위치 정보 부호화부(101)는, 지오메트리 데이터의 복호 결과가 애트리뷰트 데이터의 처리순으로 출력되도록, 지오메트리 데이터를 Octree화하고, 부호화한다. 위치 정보 부호화부(101)는, 생성한 지오메트리 데이터의 부호화 데이터를 위치 정보 복호부(102) 및 비트 스트림 생성부(105)에 공급한다.
위치 정보 복호부(102)는, 위치 정보 부호화부(101)로부터 공급되는 지오메트리 데이터의 부호화 데이터를 취득하고, 그 부호화 데이터를 복호한다. 이 복호 방법은, 위치 정보 부호화부(101)에 의한 부호화에 대응하는 방법이면 임의이다. 예를 들어, 디노이즈를 위한 필터링이나 역양자화 등의 처리가 행해지도록 해도 된다. 위치 정보 복호부(102)는, 생성한 지오메트리 데이터(복호 결과)를 포인트 클라우드 생성부(103)에 공급한다.
포인트 클라우드 생성부(103)는, 부호화 장치(100)에 입력되는 포인트 클라우드의 애트리뷰트 데이터(속성 정보)와, 위치 정보 복호부(102)로부터 공급되는 지오메트리 데이터(복호 결과)를 취득한다. 포인트 클라우드 생성부(103)는, 애트리뷰트 데이터를 지오메트리 데이터(복호 결과)에 맞추는 처리(리컬러 처리)를 행한다. 포인트 클라우드 생성부(103)는, 지오메트리 데이터(복호 결과)에 대응시킨 애트리뷰트 데이터를 속성 정보 부호화부(104)에 공급한다.
또한, 포인트 클라우드 생성부(103)는, <1. 복호 결과의 출력순의 보증>에 있어서 상술한 본 기술을 적용하여, DCM이 적용되는 포인트의 복호 결과의 출력 순위를 나타내는 DCM 순번 정보를 생성하고, 부호화하는 처리를 행한다. 포인트 클라우드 생성부(103)는, 생성한 DCM 순번 정보의 부호화 데이터를 비트 스트림 생성부(105)에 공급한다.
속성 정보 부호화부(104)는, 포인트 클라우드 생성부(103)로부터 공급되는 지오메트리 데이터(복호 결과) 및 애트리뷰트 데이터를 취득한다. 속성 정보 부호화부(104)는, 그 지오메트리 데이터(복호 결과)를 사용하여, 애트리뷰트 데이터를 부호화하고, 애트리뷰트 데이터의 부호화 데이터를 생성한다. 속성 정보 부호화부(104)는, 생성한 애트리뷰트 데이터의 부호화 데이터를 비트 스트림 생성부(105)에 공급한다.
비트 스트림 생성부(105)는, 위치 정보 부호화부(101)로부터 공급되는 지오메트리 데이터의 부호화 데이터를 취득한다. 또한, 비트 스트림 생성부(105)는, 속성 정보 부호화부(104)로부터 공급되는 애트리뷰트 데이터의 부호화 데이터를 취득한다. 추가로, 비트 스트림 생성부(105)는, 포인트 클라우드 생성부(103)로부터 공급되는 DCM 순번 정보의 부호화 데이터를 취득한다. 비트 스트림 생성부(105)는, 이들 부호화 데이터를 포함하는 비트 스트림을 생성한다. 비트 스트림 생성부(105)는, 생성한 비트 스트림을 부호화 장치(100)의 외부로 출력한다.
이러한 구성으로 함으로써, 부호화 장치(100)는, 포인트의 재배열 처리가 불필요해지므로, 포인트 클라우드의 부호화 데이터의 복호 처리의 부하의 증대를 억제할 수 있다. 따라서, 부호화 장치(100)는, 포인트 클라우드의 부호화 데이터의 복호의 실시간 처리를 확실하게 실현하기 위한 실장 비용의 증대를 억제할 수 있다.
또한, 부호화 장치(100)의 이들 처리부(위치 정보 부호화부(101) 내지 비트 스트림 생성부(105))는, 각각 임의의 구성을 갖는다. 예를 들어, 각 처리부가 상술한 처리를 실현하는 논리 회로에 의해 구성되도록 해도 된다. 또한, 각 처리부가, 예를 들어 CPU(Central Processing Unit), ROM(Read Only Memory), RAM(Random Access Memory) 등을 갖고, 그들을 사용해서 프로그램을 실행함으로써, 상술한 처리를 실현하도록 해도 된다. 물론, 각 처리부가, 그 양쪽의 구성을 갖고, 상술한 처리의 일부를 논리 회로에 의해 실현하고, 그 외를, 프로그램을 실행함으로써 실현하도록 해도 된다. 각 처리부의 구성은 서로 독립되어 있어도 되고, 예를 들어 일부의 처리부가 상술한 처리의 일부를 논리 회로에 의해 실현하고, 다른 일부의 처리부가 프로그램을 실행함으로써 상술한 처리를 실현하고, 또 다른 처리부가 논리 회로와 프로그램의 실행의 양쪽에 의해 상술한 처리를 실현하도록 해도 된다.
<위치 정보 부호화부>
도 7은 위치 정보 부호화부(101)(도 6)의 주요 구성예를 도시하는 블록도이다. 또한, 도 7에 있어서는, 처리부나 데이터의 흐름 등의 주된 것을 나타내고 있고, 도 7에 나타내는 것이 전부라고는 할 수 없다. 즉, 위치 정보 부호화부(101)에 있어서, 도 7에 있어서 블록으로서 나타내지 않은 처리부가 존재하거나, 도 7에 있어서 화살표 등으로서 나타내지 않은 처리나 데이터의 흐름이 존재해도 된다.
도 7에 도시한 바와 같이 위치 정보 부호화부(101)는, 바운딩 박스 설정부(111), 복셀 설정부(112), 모드 선택부(113), Octree 부호화부(114) 및 DCM 부호화부(115)를 갖는다.
바운딩 박스 설정부(111)는 바운딩 박스의 설정에 관한 처리를 행한다. 예를 들어, 바운딩 박스 설정부(111)는 부호화 장치(100)에 입력되는 포인트 클라우드 데이터의 지오메트리 데이터를 취득한다. 바운딩 박스 설정부(111)는 그 지오메트리 데이터에 대하여 바운딩 박스를 설정한다. 바운딩 박스는 부호화 대상의 지오메트리 데이터를 정규화하기 위한 정보이다. 이 바운딩 박스를 기준으로 해서 복셀화가 행해진다. 바운딩 박스 설정부(111)는, 그 바운딩 박스에 관한 정보를, 지오메트리 데이터와 함께 복셀 설정부(112)에 공급한다.
복셀 설정부(112)는, 복셀의 설정에 관한 처리를 행한다. 예를 들어, 복셀 설정부(112)는, 바운딩 박스 설정부(111)로부터 공급되는 지오메트리 데이터 및 바운딩 박스에 관한 정보를 취득한다. 또한, 복셀 설정부(112)는, 그들 정보에 기초하여, 지오메트리 데이터에 대하여 설정된 바운딩 박스를 분할해서 복셀을 설정한다. 즉, 복셀 설정부(112)는, 그 지오메트리 데이터의 복셀화(각 포인트의 위치의 양자화)를 행한다. 복셀 설정부(112)는, 이와 같이 복셀화된 지오메트리 데이터인 복셀 데이터를 모드 선택부(113)에 공급한다.
모드 선택부(113)는, 부호화 방법(모드)의 선택에 관한 처리를 행한다. 예를 들어, 모드 선택부(113)는, 복셀 설정부(112)로부터 공급되는 복셀 데이터를 취득한다. 또한, 모드 선택부(113)는, 복셀(Octree에 있어서의 노드)마다 부호화 방법(모드)의 선택을 행한다. 즉, 모드 선택부(113)는, 처리 대상의 복셀을 Octree 부호화할지, DCM을 적용한 부호화(DCM 부호화라고도 칭한다)을 행할지를 선택한다.
예를 들어, 모드 선택부(113)는, 처리 대상의 복셀에 대해서 희소한 것인지 여부를 판정한다. 소정의 조건에 기초하여 희소하지 않다고 판정된 경우, 모드 선택부(113)는, 부호화 방법으로서 Octree 부호화를 선택하고, 그 처리 대상의 복셀 데이터를 Octree 부호화부(114)에 공급한다. 또한, 소정의 조건에 기초해서 희소하다고 판정된 경우, 모드 선택부(113)는, 부호화 방법으로서 DCM 부호화를 선택하고, 그 처리 대상의 복셀 데이터를 DCM 부호화부(115)에 공급한다.
Octree 부호화부(114)는, Octree를 사용한 부호화에 관한 처리를 행한다. 예를 들어, Octree 부호화부(114)는, 모드 선택부(113)로부터 공급되는 처리 대상의 복셀 데이터를 취득한다. Octree 부호화부(114)는, 그 복셀 데이터를 사용하여, 처리 대상 노드의 Octree 데이터(ChildMask)을 생성한다. Octree 부호화부(114)는, 그 처리 대상 노드의 Octree 데이터를 소정의 방법으로 부호화하고, 부호화 데이터를 생성한다.
그 때, Octree 부호화부(114)는, <1. 복호 결과의 출력순의 보증>에 있어서 상술한 본 기술(예를 들어, 도 2의 「방법 1」(방법 1-1 내지 방법 1-3을 포함할 수 있다))을 적용해서 부호화를 행한다. 즉, Octree 부호화부(114)는, 지오메트리 데이터의 복호 결과가 애트리뷰트 데이터의 처리순으로 출력되도록, 처리 대상 노드의 Octree 데이터를 부호화한다. 예를 들어, Octree 부호화부(114)는, 지오메트리 데이터의 복호 결과가 모튼 순서로 출력되는 순서로, 처리 대상 노드의 Octree 데이터를 부호화한다. 예를 들어, Octree 부호화부(114)는, Octree의 각 노드에 있어서 복호 결과가 포인트 클라우드의 애트리뷰트 데이터의 처리순으로 출력되는 순서로 부호화한다.
Octree 부호화부(114)는, 이와 같이 부호화를 행하여 생성한 부호화 데이터(처리 대상 노드의 복셀 데이터의 부호화 데이터)를 위치 정보 복호부(102) 및 비트 스트림 생성부(105)(모두 도 6)에 공급한다.
DCM 부호화부(115)는, DCM을 사용한 부호화에 관한 처리를 행한다. 예를 들어, DCM 부호화부(115)는, 모드 선택부(113)로부터 공급되는 처리 대상의 복셀 데이터를 취득한다. DCM 부호화부(115)는, 그 복셀 데이터를, DCM을 적용해서 부호화하고, 부호화 데이터를 생성한다. 예를 들어, DCM 부호화부(115)는, 그 복셀 데이터를 사용하여, 처리 대상 노드로부터 리프까지의 상대 거리를 부호화하고, 부호화 데이터를 생성한다. DCM 부호화부(115)는, 생성한 부호화 데이터를 위치 정보 복호부(102) 및 비트 스트림 생성부(105)(모두 도 6)에 공급한다.
이러한 구성으로 함으로써, 위치 정보 부호화부(101)는, 지오메트리 데이터의 복호 결과의 출력순이 소정의 순서가 되는 것이 보증되도록, Octree 부호화를 행할 수 있다. 따라서, 부호화 장치(100)는, 포인트의 재배열 처리가 불필요해지므로, 포인트 클라우드의 부호화 데이터의 복호 처리의 부하의 증대를 억제할 수 있다.
또한, 위치 정보 부호화부(101)의 이들 처리부(바운딩 박스 설정부(111) 내지 DCM 부호화부(115))는 각각, 임의의 구성을 갖는다. 예를 들어, 각 처리부가, 상술한 처리를 실현하는 논리 회로에 의해 구성되도록 해도 된다. 또한, 각 처리부가, 예를 들어 CPU, ROM, RAM 등을 갖고, 그들을 사용해서 프로그램을 실행함으로써, 상술한 처리를 실현하도록 해도 된다. 물론, 각 처리부가, 그 양쪽의 구성을 갖고, 상술한 처리의 일부를 논리 회로에 의해 실현하고, 그 외를, 프로그램을 실행함으로써 실현하도록 해도 된다. 각 처리부의 구성은 서로 독립되어 있어도 되고, 예를 들어 일부의 처리부가 상술한 처리의 일부를 논리 회로에 의해 실현하고, 다른 일부의 처리부가 프로그램을 실행함으로써 상술한 처리를 실현하고, 또 다른 처리부가 논리 회로와 프로그램의 실행의 양쪽에 의해 상술한 처리를 실현하도록 해도 된다.
<포인트 클라우드 생성부>
도 8은 포인트 클라우드 생성부(103)(도 6)의 주요 구성예를 도시하는 블록도이다. 또한, 도 8에 있어서는, 처리부나 데이터의 흐름 등의 주된 것을 나타내고 있고, 도 8에 나타내는 것이 전부라고는 할 수 없다. 즉, 포인트 클라우드 생성부(103)에 있어서, 도 8에 있어서 블록으로서 나타내지 않은 처리부가 존재하거나, 도 8에 있어서 화살표 등으로서 나타내지 않은 처리나 데이터의 흐름이 존재해도 된다.
도 8에 도시한 바와 같이 포인트 클라우드 생성부(103)는, 모튼 코드 변환부(121), 재배열부(122), DCM 순번 정보 생성부(123), DCM 순번 정보 부호화부(124) 및 리컬러 처리부(125)를 갖는다.
모튼 코드 변환부(121)는 위치 정보 복호부(102)(도 6)로부터 공급된 지오메트리 데이터(복호 결과)를, 모튼 코드(Morton Code)로 변환한다. 즉, 모튼 코드 변환부(121)는 모튼 코드를 이용해서 3차원 공간상의 포인트를 1차원으로 매핑한다. 모튼 코드 변환부(121)는 그 모튼 코드를 붙인 각 포인트의 지오메트리 데이터를 재배열부(122)에 공급한다.
재배열부(122)는, 모튼 코드 변환부(121)로부터 공급된 지오메트리 데이터를 취득하고, 그 모튼 코드의 값에 기초하여, 소트를 실행한다. 즉, 재배열부(122)는, 각 포인트의 지오메트리 데이터를 모튼 순서로 재배열한다. 재배열부(122)는, 그 모튼 순서로 재배열된 각 포인트의 지오메트리 데이터를 DCM 순번 정보 생성부(123) 및 리컬러 처리부(125)에 공급한다.
DCM 순번 정보 생성부(123)는 모튼 순서로 재배열된 각 포인트의 지오메트리 데이터 중, 부호화 시에 DCM이 적용되는 포인트를 특정하고, 그 포인트의 복호 결과의 출력순을 나타내는 제어 정보인 DCM 순번 정보를 생성한다.
예를 들어, DCM 순번 정보가 그 DCM이 적용된 포인트의 복호 결과의 출력 순위를, 선두로부터의 순번으로 나타내는 정보를 포함하도록 해도 된다. 또한, DCM 순번 정보가 그 DCM이 적용된 포인트의 복호 결과의 출력 순위를, 그 1개 전에 출력되는 DCM이 적용된 포인트의 복호 결과의 출력 순위로부터의 차분값으로 나타내는 정보를 포함하도록 해도 된다. 추가로, DCM 순번 정보가 그 DCM이 적용된 포인트의 복호 결과의 출력 순위를, 소정의 기준 순위로부터의 차분값으로 나타내는 정보를 포함하도록 해도 된다.
또한, DCM 순번 정보 생성부(123)는 Octree의 중간 계층에 있어서도, DCM이 적용되는 포인트의, 그 계층에 있어서의 출력 순위를 나타내는 DCM 순번 정보를 생성하도록 해도 된다. 즉, DCM 순번 정보가 Octree의 중간 계층에 있어서의 복호 결과의 출력 순위에 관한 정보도 포함하도록 해도 된다. DCM 순번 정보 생성부(123)는 생성한 DCM 순번 정보를 DCM 순번 정보 부호화부(124)에 공급한다.
DCM 순번 정보 부호화부(124)는, DCM 순번 정보의 부호화에 관한 처리를 행한다. 예를 들어, DCM 순번 정보 부호화부(124)는, DCM 순번 정보 생성부(123)로부터 공급되는 DCM 순번 정보를 취득한다. DCM 순번 정보 부호화부(124)는, 취득한 DCM 순번 정보를 부호화하고, 부호화 데이터를 생성한다. 이 부호화의 방법은 임의이다. DCM 순번 정보 부호화부(124)는, 생성한 DCM 순번 정보의 부호화 데이터를 비트 스트림 생성부(105)(도 6)에 공급한다.
리컬러 처리부(125)는, 애트리뷰트 데이터를 지오메트리 데이터에 맞추는 처리(리컬러 처리)에 관한 처리를 행한다. 예를 들어, 리컬러 처리부(125)는, 부호화 장치(100)에 입력되는 포인트 클라우드의 애트리뷰트 데이터를 취득한다. 또한, 리컬러 처리부(125)는, 재배열부(122)로부터 공급되는 모튼 순서로 재배열된 각 포인트의 지오메트리 데이터를 취득한다.
리컬러 처리부(125)는 취득한 애트리뷰트 데이터를 취득한 지오메트리 데이터에 맞추는 처리(리컬러 처리)를 행하여, 포인트 클라우드 데이터를 생성한다. 리컬러 처리부(125)는, 생성한 포인트 클라우드 데이터를 속성 정보 부호화부(104)(도 6)에 공급한다.
이러한 구성으로 함으로써, 포인트 클라우드 생성부(103)는, DCM 순번 정보를 생성하고, 복호측으로 전송시킬 수 있다. 이 DCM 순번 정보에 의해, DCM이 적용되어 부호화된 포인트의 복호 결과도, 적절한 출력 순위로 출력할 수 있다. 따라서, 복호 시에 포인트의 재배열이 불필요해지므로, 부호화 장치(100)는, 포인트 클라우드의 부호화 데이터의 복호의 실시간 처리를 확실하게 실현하기 위한 실장 비용의 증대를 억제할 수 있다.
또한, 포인트 클라우드 생성부(103)의 이들 처리부(모튼 코드 변환부(121) 내지 리컬러 처리부(125))는 각각, 임의의 구성을 갖는다. 예를 들어, 각 처리부가, 상술한 처리를 실현하는 논리 회로에 의해 구성되도록 해도 된다. 또한, 각 처리부가, 예를 들어 CPU, ROM, RAM 등을 갖고, 그들을 사용해서 프로그램을 실행함으로써, 상술한 처리를 실현하도록 해도 된다. 물론, 각 처리부가, 그 양쪽의 구성을 갖고, 상술한 처리의 일부를 논리 회로에 의해 실현하고, 그 외를, 프로그램을 실행함으로써 실현하도록 해도 된다. 각 처리부의 구성은 서로 독립되어 있어도 되고, 예를 들어 일부의 처리부가 상술한 처리의 일부를 논리 회로에 의해 실현하고, 다른 일부의 처리부가 프로그램을 실행함으로써 상술한 처리를 실현하고, 또 다른 처리부가 논리 회로와 프로그램의 실행의 양쪽에 의해 상술한 처리를 실현하도록 해도 된다.
<부호화 처리의 흐름>
이어서, 이 부호화 장치(100)에 의해 실행되는 처리에 대해서 설명한다. 부호화 장치(100)는, 부호화 처리를 실행함으로써 포인트 클라우드의 데이터를 부호화한다. 이 부호화 처리의 흐름의 예를, 도 9의 흐름도를 참조하여 설명한다.
부호화 처리가 개시되면, 부호화 장치(100)의 위치 정보 부호화부(101)는, 스텝 S101에 있어서, 입력된 포인트 클라우드의 지오메트리 데이터(위치 정보)를 부호화하고, 지오메트리 데이터의 부호화 데이터를 생성한다. 그 때, 위치 정보 부호화부(101)는, <1. 복호 결과의 출력순의 보증>에 있어서 상술한 본 기술을 적용해서 처리를 행한다. 위치 정보 부호화 처리의 상세에 대해서는 후술한다.
스텝 S102에 있어서, 위치 정보 복호부(102)는, 스텝 S101에 있어서 생성된 지오메트리 데이터의 부호화 데이터를 복호하고, 위치 정보를 생성한다.
스텝 S103에 있어서, 포인트 클라우드 생성부(103)는, 입력된 포인트 클라우드의 애트리뷰트 데이터(속성 정보)와, 스텝 S102에 있어서 생성된 지오메트리 데이터(복호 결과)를 사용하여, 리컬러 처리를 행하고, 애트리뷰트 데이터를 지오메트리 데이터에 대응시켜서 포인트 클라우드 데이터를 생성한다. 또한, 그 때, 포인트 클라우드 생성부(103)는, <1. 복호 결과의 출력순의 보증>에 있어서 상술한 본 기술을 적용하여, DCM이 적용되는 포인트의 복호 결과의 출력 순위를 나타내는 DCM 순번 정보를 생성하고, 부호화하는 처리를 행한다. 포인트 클라우드 생성 처리의 상세에 대해서는 후술한다.
스텝 S104에 있어서, 속성 정보 부호화부(104)는, 속성 정보 부호화 처리를 실행함으로써, 스텝 S103에 있어서 리컬러 처리된 애트리뷰트 데이터를 부호화하고, 애트리뷰트 데이터의 부호화 데이터를 생성한다.
스텝 S105에 있어서, 비트 스트림 생성부(105)는, 스텝 S101에 있어서 생성된 지오메트리 데이터의 부호화 데이터와, 스텝 S103에 있어서 생성된 DCM 순번 정보의 부호화 데이터와, 스텝 S104에 있어서 생성된 애트리뷰트 데이터의 부호화 데이터를 포함하는 비트 스트림을 생성하고, 출력한다.
스텝 S105의 처리가 종료하면 부호화 처리가 종료한다.
이와 같이 각 스텝의 처리를 행함으로써, 부호화 장치(100)는, 복호 시의 포인트의 재배열 처리를 불필요하게 할 수 있으므로, 포인트 클라우드의 부호화 데이터의 복호 처리의 부하의 증대를 억제할 수 있다. 따라서, 부호화 장치(100)는, 포인트 클라우드의 부호화 데이터의 복호의 실시간 처리를 확실하게 실현하기 위한 실장 비용의 증대를 억제할 수 있다.
<위치 정보 부호화 처리의 흐름>
이어서, 도 10의 흐름도를 참조하여, 도 9의 스텝 S101에 있어서 실행되는 위치 정보 부호화 처리의 흐름의 예를 설명한다.
위치 정보 부호화 처리가 개시되면, 바운딩 박스 설정부(111)는, 스텝 S121에 있어서, 처리 대상의 지오메트리 데이터에 대하여, 바운딩 박스를 설정한다.
스텝 S122에 있어서, 복셀 설정부(112)는, 스텝 S121에 있어서 설정된 바운딩 박스에 기초하여 복셀을 설정하고, 각 포인트의 지오메트리 데이터를 양자화한다.
스텝 S123에 있어서, 모드 선택부(113)는, 스텝 S122에 있어서 설정된 복셀 중에서 처리 대상으로 하는 복셀 데이터를 모튼 순서에 따라서 선택한다.
스텝 S124에 있어서, 모드 선택부(113)는, 처리 대상 복셀 데이터에 대하여 DCM을 적용할지의 여부를 판정한다. 소정의 조건에 기초해서 희소하다고 판정된 경우, 처리는 스텝 S125로 진행한다.
스텝 S125에 있어서, DCM 부호화부(115)는, 처리 대상 복셀 데이터를 DCM 부호화한다. 스텝 S125의 처리가 종료하면, 처리는 스텝 S127로 진행한다.
또한, 스텝 S124에 있어서, 처리 대상 복셀 데이터에 대하여 DCM을 적용하지 않으면 판정된 경우, 처리는 스텝 S126으로 진행한다.
스텝 S126에 있어서, Octree 부호화부(114)는, <1. 복호 결과의 출력순의 보증>에 있어서 상술한 본 기술을 적용하여, 복호 결과의 출력순이 모튼 순서가 되도록, 처리 대상 복셀 데이터에 대하여 Octree 부호화를 행한다. 스텝 S126의 처리가 종료하면 처리는 스텝 S127로 진행한다.
스텝 S127에 있어서, 모드 선택부(113)는, 모든 복셀 데이터를 처리했는지의 여부를 판정한다. 미처리의 복셀 데이터가 존재하는 경우, 처리는 스텝 S123으로 되돌아가서, 그 이후의 처리를 반복한다. 즉, 각 복셀 데이터에 대하여, 스텝 S123 내지 스텝 S127의 각 처리가 실행된다.
그리고 스텝 S127에 있어서, 모든 복셀 데이터가 처리되었다고 판정된 경우, 위치 정보 부호화 처리가 종료하고, 처리는 도 9로 되돌아간다.
이와 같이 각 스텝의 처리를 행함으로써, 부호화 장치(100)는, 복호 시의 포인트의 재배열 처리를 불필요하게 할 수 있으므로, 포인트 클라우드의 부호화 데이터의 복호 처리의 부하의 증대를 억제할 수 있다. 따라서, 부호화 장치(100)는, 포인트 클라우드의 부호화 데이터의 복호의 실시간 처리를 확실하게 실현하기 위한 실장 비용의 증대를 억제할 수 있다.
<포인트 클라우드 생성 처리의 흐름>
이어서, 도 11의 흐름도를 참조하여, 도 9의 스텝 S103에 있어서 실행되는 포인트 클라우드 생성 처리의 흐름의 예를 설명한다.
포인트 클라우드 생성 처리가 개시되면, 포인트 클라우드 생성부(103)의 모튼 코드 변환부(121)(도 8)는 스텝 S141에 있어서, 지오메트리 데이터를 모튼 코드로 변환한다.
스텝 S142에 있어서, 재배열부(122)는, 스텝 S121에 있어서 붙여진 모튼 코드에 기초하여, 지오메트리 데이터를 모튼 순서로 재배열한다.
스텝 S143에 있어서, DCM 순번 정보 생성부(123)는 모튼 순서로 재배열된 포인트 마다의 지오메트리 데이터 중, 부호화 시에 DCM이 적용되는 포인트를 특정하고, 그 포인트의 복호 결과의 출력순을 나타내는 DCM 순번 정보를 생성한다. 그 때, DCM 순번 정보 생성부(123)는 <1. 복호 결과의 출력순의 보증>에 있어서 상술한 본 기술을 적용하여, DCM 순번 정보를 생성한다.
스텝 S144에 있어서, DCM 순번 정보 부호화부(124)는, 스텝 S143에 있어서 생성된 DCM 순번 정보를 부호화하고, 부호화 데이터를 생성한다.
스텝 S145에 있어서, 리컬러 처리부(125)는, 취득한 애트리뷰트 데이터를 취득한 지오메트리 데이터에 맞추는 처리(리컬러 처리)를 행하고, 포인트 클라우드 데이터를 생성한다.
스텝 S145의 처리가 종료하면, 포인트 클라우드 생성 처리가 종료하고, 처리는 도 9로 되돌아간다.
이와 같이 각 스텝의 처리를 행함으로써, 부호화 장치(100)는, 복호 시의 포인트의 재배열 처리를 불필요하게 할 수 있으므로, 포인트 클라우드의 부호화 데이터의 복호 처리의 부하의 증대를 억제할 수 있다. 따라서, 부호화 장치(100)는, 포인트 클라우드의 부호화 데이터의 복호의 실시간 처리를 확실하게 실현하기 위한 실장 비용의 증대를 억제할 수 있다.
<3. 제2 실시 형태>
<복호 장치>
이어서, <1. 복호 결과의 출력순의 보증>에 있어서 상술한 본 기술을 적용하는 장치의 다른 예에 대해서 설명한다. 도 12는 본 기술을 적용한 정보 처리 장치의 일 양태인 복호 장치의 구성의 일례를 도시하는 블록도이다. 도 12에 나타내는 복호 장치(200)는, 포인트 클라우드(3D 데이터)의 부호화 데이터를 복호하는 장치이다. 복호 장치(200)는, <1. 복호 결과의 출력순의 보증>에 있어서 상술한 본 기술을 적용해서 포인트 클라우드의 부호화 데이터를 복호한다.
또한, 도 12에 있어서는, 처리부나 데이터의 흐름 등의 주된 것을 나타내고 있고, 도 12에 나타내는 것이 전부라고는 할 수 없다. 즉, 복호 장치(200)에 있어서, 도 12에 있어서 블록으로서 나타내지 않은 처리부가 존재하거나, 도 12에 있어서 화살표 등으로서 나타내지 않은 처리나 데이터의 흐름이 존재해도 된다.
도 12에 도시한 바와 같이 복호 장치(200)는, 부호화 데이터 추출부(201), 위치 정보 복호부(202), 속성 정보 복호부(203) 및 포인트 클라우드 생성부(204)를 갖는다.
부호화 데이터 추출부(201)는, 복호 장치(200)에 입력되는 비트 스트림을 취득하고, 유지한다. 부호화 데이터 추출부(201)는, 그 비트 스트림으로부터, 지오메트리 데이터(위치 정보) 및 애트리뷰트 데이터(속성 정보)의 부호화 데이터를 추출한다. 그 때, 부호화 데이터 추출부(201)는, 모든 계층의 부호화 데이터를 비트 스트림으로부터 추출할 수 있다. 또한, 예를 들어 최상위층으로부터, 유저나 애플리케이션 등에 의해 지정된 계층까지의 부호화 데이터(즉, 일부의 계층 부호화 데이터)를 비트 스트림으로부터 추출할 수도 있다.
부호화 데이터 추출부(201)는, 추출한 지오메트리 데이터의 부호화 데이터를 위치 정보 복호부(202)에 공급한다. 부호화 데이터 추출부(201)는, 추출한 애트리뷰트 데이터의 부호화 데이터를 속성 정보 복호부(203)에 공급한다.
위치 정보 복호부(202)는, 부호화 데이터 추출부(201)로부터 공급되는 지오메트리 데이터의 부호화 데이터를 취득한다. 위치 정보 복호부(202)는, 그 지오메트리 데이터의 부호화 데이터를 복호하고, 지오메트리 데이터(복호 결과)를 생성한다. 그 때, 위치 정보 복호부(202)는, <1. 복호 결과의 출력순의 보증>에 있어서 상술한 본 기술을 적용해서 지오메트리 데이터를 복호한다. 즉, 위치 정보 복호부(202)는, 지오메트리 데이터의 부호화 데이터를 복호하고, 그 복호 결과를 포인트 클라우드의 애트리뷰트 데이터의 처리순으로 출력한다.
위치 정보 복호부(202)는, 생성한 지오메트리 데이터(복호 결과)를, 속성 정보 복호부(203) 및 포인트 클라우드 생성부(204)에 공급한다.
속성 정보 복호부(203)는, 부호화 데이터 추출부(201)로부터 공급되는 애트리뷰트 데이터의 부호화 데이터를 취득한다. 속성 정보 복호부(203)는, 위치 정보 복호부(202)로부터 공급되는 지오메트리 데이터(복호 결과)를 취득한다. 속성 정보 복호부(203)는, 그 지오메트리 데이터를 사용하여, 애트리뷰트 데이터의 부호화 데이터를 복호하고, 애트리뷰트 데이터(복호 결과)를 생성한다. 속성 정보 복호부(203)는, 생성한 애트리뷰트 데이터(복호 결과)를 포인트 클라우드 생성부(204)에 공급한다.
포인트 클라우드 생성부(204)는, 위치 정보 복호부(202)로부터 공급되는 지오메트리 데이터(복호 결과)를 취득한다. 포인트 클라우드 생성부(204)는, 속성 정보 복호부(203)로부터 공급되는 애트리뷰트 데이터(복호 결과)를 취득한다. 포인트 클라우드 생성부(204)는, 그 지오메트리 데이터(복호 결과) 및 애트리뷰트 데이터(복호 결과)를 사용하여, 포인트 클라우드(복호 결과)를 생성한다. 포인트 클라우드 생성부(204)는, 생성한 포인트 클라우드(복호 결과)의 데이터를 복호 장치(200)의 외부로 출력한다.
이러한 구성으로 함으로써, 복호 결과의 지오메트리 데이터가 애트리뷰트 데이터의 처리순과 동일 순으로 출력되므로, 포인트의 재배열 처리가 불필요해진다. 따라서, 복호 장치(200)는, 포인트 클라우드의 부호화 데이터의 복호 처리의 부하의 증대를 억제할 수 있다. 따라서, 포인트 클라우드의 부호화 데이터의 복호의 실시간 처리를 확실하게 실현하기 위한 실장 비용의 증대를 억제할 수 있다.
또한, 이들 처리부(부호화 데이터 추출부(201) 내지 포인트 클라우드 생성부(204))는, 임의의 구성을 갖는다. 예를 들어, 각 처리부가, 상술한 처리를 실현하는 논리 회로에 의해 구성되도록 해도 된다. 또한, 각 처리부가, 예를 들어 CPU, ROM, RAM 등을 갖고, 그들을 사용해서 프로그램을 실행함으로써, 상술한 처리를 실현하도록 해도 된다. 물론, 각 처리부가, 그 양쪽의 구성을 갖고, 상술한 처리의 일부를 논리 회로에 의해 실현하고, 그 외를, 프로그램을 실행함으로써 실현하도록 해도 된다. 각 처리부의 구성은 서로 독립되어 있어도 되고, 예를 들어 일부의 처리부가 상술한 처리의 일부를 논리 회로에 의해 실현하고, 다른 일부의 처리부가 프로그램을 실행함으로써 상술한 처리를 실현하고, 또 다른 처리부가 논리 회로와 프로그램의 실행의 양쪽에 의해 상술한 처리를 실현하도록 해도 된다.
<위치 정보 복호부>
도 13은 위치 정보 복호부(202)(도 12)의 주요 구성예를 도시하는 블록도이다. 또한, 도 13에 있어서는, 처리부나 데이터의 흐름 등의 주된 것을 나타내고 있고, 도 13에 나타내는 것이 전부라고는 할 수 없다. 즉, 위치 정보 복호부(202)에 있어서, 도 13에 있어서 블록으로서 나타내지 않은 처리부가 존재하거나, 도 13에 있어서 화살표 등으로서 나타내지 않은 처리나 데이터의 흐름이 존재해도 된다.
도 13에 도시한 바와 같이 위치 정보 복호부(202)는, 복호부(211) 및 DCM 삽입부(212)를 갖는다.
복호부(211)는, 지오메트리 데이터의 복호에 관한 처리를 행한다. 예를 들어, 위치 정보 복호부(202)는, 부호화 데이터 추출부(201)로부터 공급되는 지오메트리 데이터의 부호화 데이터를 취득한다. 복호부(211)는, 취득한 부호화 데이터를 복호하고, 지오메트리 데이터를 생성(복원)한다.
예를 들어, 복호부(211)는, 지오메트리 데이터의 부호화 데이터에 포함되는, DCM 순번 정보의 부호화 데이터를 복호한다. 또한, 예를 들어 복호부(211)는, Octree 데이터의 부호화 데이터를 모튼 순서로 복호한다. 또한, 예를 들어 복호부(211)는, DCM 부호화된 부호화 데이터를 복호한다. 복호부(211)는, 복호해서 생성한 지오메트리 데이터(DCM 순번 정보, Octree 데이터, DCM이 적용된 포인트의 지오메트리 데이터(DCM 데이터라고도 칭한다) 등을 포함할 수 있다)를 DCM 삽입부(212)에 공급한다.
DCM 삽입부(212)는, DCM이 적용된 포인트의 지오메트리 데이터의 출력순의 제어에 관한 처리를 행한다. 예를 들어, DCM 삽입부(212)는, 복호부(211)로부터 공급되는 지오메트리 데이터(DCM 순번 정보, Octree 데이터, DCM 데이터 등을 포함할 수 있다)를 취득한다.
DCM 삽입부(212)는 취득한 DCM 데이터를, 모튼 순서로 재배열된 Octree 데이터의 열의, DCM 순번 정보에 의해 나타내는 출력 순위의 위치에 삽입한다. 즉, DCM 삽입부(212)는, DCM 데이터가, 그 DCM 데이터에 대응하는 DCM 순번 정보에 의해 나타내는 출력 순위로 출력되도록 제어한다.
DCM 삽입부(212)는, DCM 데이터를 삽입한 Octree 데이터(모튼 순서로 재배열된 지오메트리 데이터)를 포인트 클라우드 생성부(204)(도 12)에 공급한다.
이러한 구성으로 함으로써, 복호 결과의 지오메트리 데이터가 애트리뷰트 데이터의 처리순과 동일 순으로 출력되므로, 포인트의 재배열 처리가 불필요해진다. 따라서, 복호 장치(200)는, 포인트 클라우드의 부호화 데이터의 복호 처리의 부하의 증대를 억제할 수 있다. 따라서, 포인트 클라우드의 부호화 데이터의 복호의 실시간 처리를 확실하게 실현하기 위한 실장 비용의 증대를 억제할 수 있다.
또한, 이들 처리부(복호부(211) 및 DCM 삽입부(212))는 임의의 구성을 갖는다. 예를 들어, 각 처리부가, 상술한 처리를 실현하는 논리 회로에 의해 구성되도록 해도 된다. 또한, 각 처리부가, 예를 들어 CPU, ROM, RAM 등을 갖고, 그들을 사용해서 프로그램을 실행함으로써, 상술한 처리를 실현하도록 해도 된다. 물론, 각 처리부가, 그 양쪽의 구성을 갖고, 상술한 처리의 일부를 논리 회로에 의해 실현하고, 그 외를, 프로그램을 실행함으로써 실현하도록 해도 된다. 각 처리부의 구성은 서로 독립되어 있어도 되고, 예를 들어 일부의 처리부가 상술한 처리의 일부를 논리 회로에 의해 실현하고, 다른 일부의 처리부가 프로그램을 실행함으로써 상술한 처리를 실현하고, 또 다른 처리부가 논리 회로와 프로그램의 실행의 양쪽에 의해 상술한 처리를 실현하도록 해도 된다.
<복호 처리의 흐름>
이어서, 이 복호 장치(200)에 의해 실행되는 처리에 대해서 설명한다. 복호 장치(200)는, 복호 처리를 실행함으로써 포인트 클라우드의 부호화 데이터를 복호한다. 이 복호 처리의 흐름의 예를, 도 14의 흐름도를 참조하여 설명한다.
복호 처리가 개시되면, 복호 장치(200)의 부호화 데이터 추출부(201)는, 스텝 S201에 있어서, 비트 스트림을 취득해서 유지하고, 그 중에서 복호하는 계층의 지오메트리 데이터(위치 정보)와 애트리뷰트 데이터(속성 정보)의 부호화 데이터를 추출한다.
스텝 S202에 있어서, 위치 정보 복호부(202)는, 스텝 S201에 있어서 추출된 지오메트리 데이터의 부호화 데이터를 복호하고, 지오메트리 데이터(복호 결과)를 생성한다. 그 때, 위치 정보 복호부(202)는, <1. 복호 결과의 출력순의 보증>에 있어서 상술한 본 기술을 적용해서 처리를 행한다. 위치 정보 복호 처리의 상세에 대해서는 후술한다.
스텝 S203에 있어서, 속성 정보 복호부(203)는, 스텝 S201에 있어서 추출된 애트리뷰트 데이터의 부호화 데이터를 복호하고, 애트리뷰트 데이터(복호 결과)를 생성한다.
스텝 S204에 있어서, 포인트 클라우드 생성부(204)는, 스텝 S202에 있어서 생성된 지오메트리 데이터(복호 결과)와, 스텝 S203에 있어서 생성된 애트리뷰트 데이터(복호 결과)를 사용해서 포인트 클라우드 데이터(복호 결과)를 생성하고, 출력한다.
스텝 S204의 처리가 종료하면, 복호 처리가 종료한다.
이와 같이 각 스텝의 처리를 행함으로써, 복호 결과의 지오메트리 데이터가 애트리뷰트 데이터의 처리순과 동일 순으로 출력되므로, 포인트의 재배열 처리가 불필요해진다. 따라서, 복호 장치(200)는, 포인트 클라우드의 부호화 데이터의 복호 처리의 부하의 증대를 억제할 수 있다. 따라서, 포인트 클라우드의 부호화 데이터의 복호의 실시간 처리를 확실하게 실현하기 위한 실장 비용의 증대를 억제할 수 있다.
<위치 정보 복호 처리의 흐름>
이어서, 도 14의 스텝 S202에 있어서 실행되는 위치 정보 복호 처리의 흐름의 예를, 도 15의 흐름도를 참조하여 설명한다.
위치 정보 복호 처리가 개시되면, 위치 정보 복호부(202)의 복호부(211)는, 스텝 S221에 있어서, DCM 순번 정보를 복호한다.
스텝 S222에 있어서, 복호부(211)는, Octree 데이터의 부호화 데이터를, 모튼 순서로 복호한다.
스텝 S223에 있어서, 복호부(211)는, DCM 데이터의 부호화 데이터를 복호한다.
스텝 S224에 있어서, DCM 삽입부(212)는, 스텝 S223에 있어서 복호된 DCM 데이터를, 스텝 S222에 있어서 복호된, 모튼 순서로 배열하는 Octree 데이터의, 스텝 S221에 있어서 복호된 DCM 순번 정보에 의해 나타내는 출력 순위에 대응하는 위치에 삽입한다. 즉, DCM 삽입부(212)는, DCM 데이터가 DCM 순번 정보에 의해 나타내는 출력 순위로 출력되도록, 지오메트리 데이터(복호 결과)의 출력순을 제어한다. 그 때, DCM 삽입부(212)는, <1. 복호 결과의 출력순의 보증>에 있어서 상술한 본 기술을 적용해서 처리를 행한다.
스텝 S224의 처리가 종료하면, 위치 정보 복호 처리가 종료하고, 처리는 도 14로 되돌아간다.
이와 같이 각 스텝의 처리를 행함으로써, 복호 결과의 지오메트리 데이터가 애트리뷰트 데이터의 처리순과 동일 순으로 출력되므로, 포인트의 재배열 처리가 불필요해진다. 따라서, 복호 장치(200)는, 포인트 클라우드의 부호화 데이터의 복호 처리의 부하의 증대를 억제할 수 있다. 따라서, 포인트 클라우드의 부호화 데이터의 복호의 실시간 처리를 확실하게 실현하기 위한 실장 비용의 증대를 억제할 수 있다.
<4. 부기>
<기타 출력순>
이상에 있어서는, 지오메트리 데이터의 복호 결과를 애트리뷰트 데이터의 처리순으로 출력하도록 설명했지만, 지오메트리 데이터의 복호 결과의 출력순은, 기지의 순서이면 되고, 상술한 예에 한정되지 않는다. 출력순이 기지이면, 후단에 있어서, 그 출력순에 적합한 처리를 행하게 할 수 있고, 포인트의 재배열이 불필요해질 수 있다.
예를 들어, 애트리뷰트 데이터가 복호되지 않는 경우, 지오메트리 데이터의 복호 결과의 출력순은 애트리뷰트 데이터의 처리순 이외의 순서여도 된다.
도 16의 예와 같이, 오브젝트를 내포하는 바운딩 박스(301) 내의 일부의 3차원 영역인 부분 영역(302)의 지오메트리 데이터를 복호하는 경우, 지오메트리 데이터의 복호 결과가 모튼 순서로 출력되면, 부분 영역(302)에 포함되는 지오메트리 데이터를 일군의 데이터로 해서 지정할 수 있다. 즉, 복호 대상으로서, 최초의 포인트(Start 번호)와, 최후의 포인트(End 번호)를 지정하는 것만으로, 용이하게, 부분 영역(302) 내의 지오메트리 데이터만을 복호할 수 있다.
이와 같이, <1. 복호 결과의 출력순의 보증>에 있어서 상술한 본 기술을 적용해서 부호화나 복호를 행하여, 지오메트리 데이터의 복호 결과가 소정의 순서로 출력되도록 함으로써, 포인트의 재배열 처리가 불필요해질 수 있다. 따라서, 그러한 경우, 포인트 클라우드의 부호화 데이터의 복호 처리의 부하의 증대를 억제할 수 있다. 따라서, 포인트 클라우드의 부호화 데이터의 복호의 실시간 처리를 확실하게 실현하기 위한 실장 비용의 증대를 억제할 수 있다.
<제어 정보>
이상에 있어서 제어 정보의 시그널링에 대해서 설명했지만, 상술한 예 이외의 제어 정보를 시그널링하도록 해도 된다. 예를 들어, 상술한 본 기술을 적용하는 것을 허가(또는 금지)할지의 여부를 제어하는 제어 정보(예를 들어 enabled_flag)를 전송하도록 해도 된다. 또한, 예를 들어 상술한 본 기술을 적용하는 것을 허가(또는 금지)하는 범위(예를 들어 블록 사이즈의 상한 혹은 하한, 또는 그 양쪽, 슬라이스, 픽처, 시퀀스, 컴포넌트, 뷰, 레이어 등)를 지정하는 제어 정보를 전송하도록 해도 된다.
<컴퓨터>
상술한 일련의 처리는, 하드웨어에 의해 실행시킬 수도 있고, 소프트웨어에 의해 실행시킬 수도 있다. 일련의 처리를 소프트웨어에 의해 실행하는 경우에는, 그 소프트웨어를 구성하는 프로그램이, 컴퓨터에 인스톨된다. 여기서 컴퓨터에는, 전용의 하드웨어에 내장되어 있는 컴퓨터나, 각종 프로그램을 인스톨함으로써, 각종 기능을 실행하는 것이 가능한, 예를 들어 범용의 퍼스널 컴퓨터 등이 포함된다.
도 17은 상술한 일련의 처리를 프로그램에 의해 실행하는 컴퓨터의 하드웨어 구성예를 도시하는 블록도이다.
도 17에 도시하는 컴퓨터(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) 또는 거짓(0)의 두 상태를 식별할 때에 사용하는 정보뿐만 아니라, 3 이상의 상태를 식별하는 것이 가능한 정보도 포함된다. 따라서, 이 「플래그」가 취할 수 있는 값은, 예를 들어 1/0의 2치여도 되고, 3치 이상이어도 된다. 즉, 이 「플래그」를 구성하는 bit수는 임의이며, 1bit나 복수bit여도 된다. 또한, 식별 정보(플래그도 포함한다)는, 그 식별 정보를 비트 스트림에 포함하는 형태뿐만 아니라, 어떤 기준이 되는 정보에 대한 식별 정보의 차분 정보를 비트 스트림에 포함하는 형태도 상정되기 때문에, 본 명세서에 있어서는, 「플래그」나 「식별 정보」는, 그 정보뿐만 아니라, 기준이 되는 정보에 대한 차분 정보도 포함한다.
또한, 부호화 데이터(비트 스트림)에 관한 각종 정보(메타데이터 등)는, 부호화 데이터에 관련지어져 있으면, 어떠한 형태로 전송 또는 기록되도록 해도 된다. 여기서, 「관련짓는다」라고 하는 용어는, 예를 들어 한쪽 데이터를 처리할 때에 다른 쪽 데이터를 이용할 수 있도록(링크시킬 수 있도록) 하는 것을 의미한다. 즉, 서로 관련지어진 데이터는 하나의 데이터로서 통합되어도 되고, 각각 개별의 데이터로 해도 된다. 예를 들어, 부호화 데이터(화상)에 관련지어진 정보는 그 부호화 데이터(화상)와는 다른 전송로 상에서 전송되도록 해도 된다. 또한, 예를 들어 부호화 데이터(화상)에 관련지어진 정보는 그 부호화 데이터(화상)와는 다른 기록 매체(또는 동일한 기록 매체의 다른 기록 에어리어)에 기록되도록 해도 된다. 또한, 이 「관련 지음」은 데이터 전체가 아니고, 데이터의 일부여도 된다. 예를 들어, 화상과 그 화상에 대응하는 정보가 복수 프레임, 1프레임 또는 프레임 내의 일부분 등의 임의의 단위로 서로 관련지어지도록 해도 된다.
또한, 본 명세서에 있어서, 「합성하다」, 「다중화하다」, 「부가하다」, 「일체화하다」, 「포함하다」, 「저장하다」, 「함유하다」, 「넣는다」, 「삽입하다」 등의 용어는, 예를 들어 부호화 데이터와 메타데이터를 하나의 데이터로 통합한다고 하는, 복수의 물을 하나로 통합하는 것을 의미하며, 상술한 「관련짓는다」의 하나의 방법을 의미한다.
또한, 본 기술의 실시 형태는, 상술한 실시 형태에 한정되는 것이 아니고, 본 기술의 요지를 일탈하지 않는 범위에 있어서 다양한 변경이 가능하다.
예를 들어, 하나의 장치(또는 처리부)로서 설명한 구성을 분할하고, 복수의 장치(또는 처리부)로서 구성하도록 해도 된다. 반대로, 이상에 있어서 복수의 장치(또는 처리부)로서 설명한 구성을 통합해서 하나의 장치(또는 처리부)로서 구성되도록 해도 된다. 또한, 각 장치(또는 각 처리부)의 구성에 상술한 것 이외의 구성을 부가하도록 해도 물론 된다. 추가로, 시스템 전체로서의 구성이나 동작이 실질적으로 동일하면, 어떤 장치(또는 처리부)의 구성의 일부를 다른 장치(또는 다른 처리부)의 구성에 포함하도록 해도 된다.
또한, 예를 들어 상술한 프로그램은, 임의의 장치에 있어서 실행되도록 해도 된다. 그 경우, 그 장치가, 필요한 기능(기능 블록 등)을 갖고, 필요한 정보를 얻을 수 있도록 하면 된다.
또한, 예를 들어 하나의 흐름도의 각 스텝을, 하나의 장치가 실행하도록 해도 되고, 복수의 장치가 분담해서 실행하도록 해도 된다. 또한, 하나의 스텝에 복수의 처리가 포함되는 경우, 그 복수의 처리를, 하나의 장치가 실행하도록 해도 되고, 복수의 장치가 분담해서 실행하도록 해도 된다. 환언하자면, 하나의 스텝에 포함되는 복수의 처리를, 복수의 스텝의 처리로서 실행할 수도 있다. 반대로, 복수의 스텝으로서 설명한 처리를 하나의 스텝으로서 통합해서 실행할 수도 있다.
또한, 예를 들어 컴퓨터가 실행하는 프로그램은, 프로그램을 기술하는 스텝의 처리가, 본 명세서에서 설명하는 순서에 따라서 시계열로 실행되도록 해도 되고, 병렬로, 혹은 호출이 행해졌을 때 등의 필요한 타이밍에 개별로 실행되도록 해도 된다. 즉, 모순이 발생하지 않는 한, 각 스텝의 처리가 상술한 순서와 상이한 순서로 실행되도록 해도 된다. 추가로, 이 프로그램을 기술하는 스텝의 처리가, 다른 프로그램의 처리와 병렬로 실행되도록 해도 되고, 다른 프로그램의 처리와 조합해서 실행되도록 해도 된다.
또한, 예를 들어 본 기술에 관한 복수의 기술은, 모순이 발생하지 않는 한, 각각 독립적으로 단체로 실시할 수 있다. 물론, 임의의 복수의 본 기술을 병용해서 실시할 수도 있다. 예를 들어, 어느 것의 실시 형태에 있어서 설명한 본 기술의 일부 또는 전부를, 다른 실시 형태에 있어서 설명한 본 기술의 일부 또는 전부와 조합해서 실시할 수도 있다. 또한, 상술한 임의의 본 기술의 일부 또는 전부를, 상술하지 않고 있는 다른 기술과 병용해서 실시할 수도 있다.
또한, 본 기술은 이하와 같은 구성도 취할 수 있다.
(1) 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 위치 정보를, 상기 위치 정보의 부호화 데이터의 복호 결과가 상기 포인트 클라우드의 속성 정보의 처리순으로 출력되는 순서로 부호화하고, 상기 부호화 데이터를 생성하는 부호화부
를 구비하는, 정보 처리 장치.
(2) 상기 부호화부는, 상기 위치 정보를, 상기 복호 결과가 모튼 순서로 출력되는 순서로 부호화하고, 상기 부호화 데이터를 생성하는
(1)에 기재된 정보 처리 장치.
(3) 상기 부호화부는, 나무 구조화된 상기 위치 정보를, 상기 나무 구조의 각 노드에 있어서 상기 복호 결과가 상기 포인트 클라우드의 속성 정보의 처리순으로 출력되는 순서로 부호화하고, 상기 부호화 데이터를 생성하는
(1) 또는 (2)에 기재된 정보 처리 장치.
(4) 상기 나무 구조는 Octree인
(3)에 기재된 정보 처리 장치.
(5) 상기 Octree의 희소한 포인트의 상기 위치 정보를, DCM(Direct Coding Mode)을 적용해서 부호화하고, 상기 위치 정보의 부호화 데이터를 생성하는 DCM 부호화부와,
상기 DCM 부호화부에 의해 생성된 상기 부호화 데이터의 복호 결과의 출력 순위에 관한 제어 정보를 생성하는 생성부
를 더 구비하는 (4)에 기재된 정보 처리 장치.
(6) 상기 제어 정보는 상기 복호 결과의 출력 순위를, 선두로부터의 순번으로 나타내는 정보를 포함하는
(5)에 기재된 정보 처리 장치.
(7) 상기 제어 정보는 상기 복호 결과의 출력 순위를, 1개 전에 출력되는 상기 DCM이 적용되어 부호화된 상기 위치 정보의 부호화 데이터의 복호 결과의 출력 순위로부터의 차분값으로 나타내는 정보를 포함하는
(5)에 기재된 정보 처리 장치.
(8) 상기 제어 정보는 상기 복호 결과의 출력 순위를, 소정의 기준 순위로부터의 차분값으로 나타내는 정보를 포함하는
(5)에 기재된 정보 처리 장치.
(9) 상기 제어 정보는 상기 나무 구조의 중간 계층에 있어서의 상기 복호 결과의 출력 순위에 관한 정보도 포함하는
(5) 내지 (8)의 어느 것에 기재된 정보 처리 장치.
(10) 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 위치 정보를, 상기 위치 정보의 부호화 데이터의 복호 결과가 상기 포인트 클라우드의 속성 정보의 처리순으로 출력되는 순서로 부호화하고, 상기 부호화 데이터를 생성하는
정보 처리 방법.
(11) 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 위치 정보의 부호화 데이터를 복호하고, 복호 결과를 상기 포인트 클라우드의 속성 정보의 처리순으로 출력하는 복호부
를 구비하는, 정보 처리 장치.
(12) 상기 복호부는, 상기 복호 결과를 모튼 순서로 출력하는
(11)에 기재된 정보 처리 장치.
(13) 상기 복호부는, 나무 구조화된 상기 위치 정보의 부호화 데이터를 복호하고, 상기 나무 구조의 각 노드에 있어서 상기 복호 결과를 상기 포인트 클라우드의 속성 정보의 처리순으로 출력하는
(11) 또는 (12)에 기재된 정보 처리 장치.
(14) 상기 나무 구조는 Octree인
(13)에 기재된 정보 처리 장치.
(15) DCM(Direct Coding Mode)이 적용되어 부호화된 상기 위치 정보의 부호화 데이터의 복호 결과를, 상기 부호화 데이터의 복호 결과의 출력 순위에 관한 제어 정보에 의해 나타내는 출력 순위로 출력시키는 출력 제어부
를 더 구비하는 (14)에 기재된 정보 처리 장치.
(16) 상기 제어 정보는 상기 복호 결과의 출력 순위를, 선두로부터의 순번으로 나타내는 정보를 포함하는
(15)에 기재된 정보 처리 장치.
(17) 상기 제어 정보는 상기 복호 결과의 출력 순위를, 1개 전에 출력되는 상기 DCM이 적용되어 부호화된 상기 위치 정보의 부호화 데이터의 복호 결과의 출력 순위로부터의 차분값으로 나타내는 정보를 포함하는
(15)에 기재된 정보 처리 장치.
(18) 상기 제어 정보는 상기 복호 결과의 출력 순위를, 소정의 기준 순위로부터의 차분값으로 나타내는 정보를 포함하는
(15)에 기재된 정보 처리 장치.
(19) 상기 제어 정보는 상기 나무 구조의 중간 계층에 있어서의 상기 복호 결과의 출력 순위에 관한 정보도 포함하는
(15) 내지 (18)의 어느 것에 기재된 정보 처리 장치.
(20) 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 위치 정보의 부호화 데이터를 복호하고, 복호 결과를 상기 포인트 클라우드의 속성 정보의 처리순으로 출력하는
정보 처리 방법.
100 : 부호화 장치
101 : 위치 정보 부호화부
102 : 위치 정보 복호부
103 : 포인트 클라우드 생성부
104 : 속성 정보 부호화부
105 : 비트 스트림 생성부
111 : 바운딩 박스 설정부
112 : 복셀 설정부
113 : 모드 선택부
114 : Octree 부호화부
115 : DCM 부호화부
121 : 모튼 코드 변환부
122 : 재배열부
123 : DCM 순번 정보 생성부
124 : DCM 순번 정보 부호화부
125 : 리컬러 처리부
200 : 복호 장치
201 : 부호화 데이터 추출부
202 : 위치 정보 복호부
203 : 속성 정보 복호부
204 : 포인트 클라우드 생성부
211 : 복호부
212 : DCM 삽입부

Claims (20)

  1. 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 위치 정보를, 상기 위치 정보의 부호화 데이터의 복호 결과가 상기 포인트 클라우드의 속성 정보의 처리순으로 출력되는 순서로 부호화하고, 상기 부호화 데이터를 생성하는 부호화부
    를 구비하는, 정보 처리 장치.
  2. 제1항에 있어서,
    상기 부호화부는, 상기 위치 정보를, 상기 복호 결과가 모튼 순서로 출력되는 순서로 부호화하고, 상기 부호화 데이터를 생성하는,
    정보 처리 장치.
  3. 제1항에 있어서,
    상기 부호화부는, 나무 구조화된 상기 위치 정보를, 상기 나무 구조의 각 노드에 있어서 상기 복호 결과가 상기 포인트 클라우드의 속성 정보의 처리순으로 출력되는 순서로 부호화하고, 상기 부호화 데이터를 생성하는,
    정보 처리 장치.
  4. 제3항에 있어서,
    상기 나무 구조는 Octree인,
    정보 처리 장치.
  5. 제4항에 있어서,
    상기 Octree의 희소한 포인트의 상기 위치 정보를, DCM(Direct Coding Mode)을 적용해서 부호화하고, 상기 위치 정보의 부호화 데이터를 생성하는 DCM 부호화부와,
    상기 DCM 부호화부에 의해 생성된 상기 부호화 데이터의 복호 결과의 출력 순위에 관한 제어 정보를 생성하는 생성부
    를 더 구비하는, 정보 처리 장치.
  6. 제5항에 있어서,
    상기 제어 정보는 상기 복호 결과의 출력 순위를, 선두로부터의 순번으로 나타내는 정보를 포함하는,
    정보 처리 장치.
  7. 제5항에 있어서,
    상기 제어 정보는 상기 복호 결과의 출력 순위를, 1개 전에 출력되는 상기 DCM이 적용되어 부호화된 상기 위치 정보의 부호화 데이터의 복호 결과의 출력 순위로부터의 차분값으로 나타내는 정보를 포함하는,
    정보 처리 장치.
  8. 제5항에 있어서,
    상기 제어 정보는 상기 복호 결과의 출력 순위를, 소정의 기준 순위로부터의 차분값으로 나타내는 정보를 포함하는,
    정보 처리 장치.
  9. 제5항에 있어서,
    상기 제어 정보는 상기 나무 구조의 중간 계층에 있어서의 상기 복호 결과의 출력 순위에 관한 정보도 포함하는,
    정보 처리 장치.
  10. 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 위치 정보를, 상기 위치 정보의 부호화 데이터의 복호 결과가 상기 포인트 클라우드의 속성 정보의 처리순으로 출력되는 순서로 부호화하고, 상기 부호화 데이터를 생성하는,
    정보 처리 방법.
  11. 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 위치 정보의 부호화 데이터를 복호하고, 복호 결과를 상기 포인트 클라우드의 속성 정보의 처리순으로 출력하는 복호부
    를 구비하는, 정보 처리 장치.
  12. 제11항에 있어서,
    상기 복호부는, 상기 복호 결과를 모튼 순서로 출력하는,
    정보 처리 장치.
  13. 제11항에 있어서,
    상기 복호부는, 나무 구조화된 상기 위치 정보의 부호화 데이터를 복호하고, 상기 나무 구조의 각 노드에 있어서 상기 복호 결과를 상기 포인트 클라우드의 속성 정보의 처리순으로 출력하는,
    정보 처리 장치.
  14. 제13항에 있어서,
    상기 나무 구조는 Octree인,
    정보 처리 장치.
  15. 제14항에 있어서,
    DCM(Direct Coding Mode)이 적용되어 부호화된 상기 위치 정보의 부호화 데이터의 복호 결과를, 상기 부호화 데이터의 복호 결과의 출력 순위에 관한 제어 정보에 의해 나타내는 출력 순위로 출력시키는 출력 제어부
    를 더 구비하는, 정보 처리 장치.
  16. 제15항에 있어서,
    상기 제어 정보는 상기 복호 결과의 출력 순위를, 선두로부터의 순번으로 나타내는 정보를 포함하는,
    정보 처리 장치.
  17. 제15항에 있어서,
    상기 제어 정보는 상기 복호 결과의 출력 순위를, 1개 전에 출력되는 상기 DCM이 적용되어 부호화된 상기 위치 정보의 부호화 데이터의 복호 결과의 출력 순위로부터의 차분값으로 나타내는 정보를 포함하는,
    정보 처리 장치.
  18. 제15항에 있어서,
    상기 제어 정보는 상기 복호 결과의 출력 순위를, 소정의 기준 순위로부터의 차분값으로 나타내는 정보를 포함하는,
    정보 처리 장치.
  19. 제15항에 있어서,
    상기 제어 정보는 상기 나무 구조의 중간 계층에 있어서의 상기 복호 결과의 출력 순위에 관한 정보도 포함하는,
    정보 처리 장치.
  20. 3차원 형상의 오브젝트를 포인트의 집합으로서 표현하는 포인트 클라우드의 위치 정보의 부호화 데이터를 복호하고, 복호 결과를 상기 포인트 클라우드의 속성 정보의 처리순으로 출력하는,
    정보 처리 방법.
KR1020217041630A 2019-07-17 2020-07-06 정보 처리 장치 및 방법 KR20220035041A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JPJP-P-2019-131952 2019-07-17
JP2019131952 2019-07-17
PCT/JP2020/026322 WO2021010200A1 (ja) 2019-07-17 2020-07-06 情報処理装置および方法

Publications (1)

Publication Number Publication Date
KR20220035041A true KR20220035041A (ko) 2022-03-21

Family

ID=74209809

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217041630A KR20220035041A (ko) 2019-07-17 2020-07-06 정보 처리 장치 및 방법

Country Status (6)

Country Link
US (1) US20220262043A1 (ko)
EP (1) EP3989176A4 (ko)
JP (1) JPWO2021010200A1 (ko)
KR (1) KR20220035041A (ko)
CN (1) CN114128282A (ko)
WO (1) WO2021010200A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021197703A (ja) * 2020-06-18 2021-12-27 Kddi株式会社 点群復号装置、点群復号方法及びプログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116385650A (zh) * 2016-07-19 2023-07-04 松下电器(美国)知识产权公司 三维数据制作方法以及三维数据制作装置
US10861196B2 (en) * 2017-09-14 2020-12-08 Apple Inc. Point cloud compression
US11200703B2 (en) * 2017-10-05 2021-12-14 Sony Corporation Information processing device and method
MX2020003704A (es) * 2017-10-24 2020-07-22 Panasonic Ip Corp America Metodo de codificacion de datos tridimensionales, metodo de decodificacion de datos tridimensionales, dispositivo de codificacion de datos tridimensionales y dispositivo de decodificacion de datos tridimensionales.

Non-Patent Citations (4)

* 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
Toshiyasu Sugio, "[G-PCC] Reference structure modification on attribute predicting transform in TMC13", ISO/IEC JTC1/SC29/WG11 MPEG2018/ m46107, January 2019, Marrakech, MA

Also Published As

Publication number Publication date
US20220262043A1 (en) 2022-08-18
JPWO2021010200A1 (ko) 2021-01-21
EP3989176A4 (en) 2022-08-17
CN114128282A (zh) 2022-03-01
EP3989176A1 (en) 2022-04-27
WO2021010200A1 (ja) 2021-01-21

Similar Documents

Publication Publication Date Title
US11910026B2 (en) Image processing apparatus and method
JP7384159B2 (ja) 画像処理装置および方法
US11943457B2 (en) Information processing apparatus and method
KR20220122995A (ko) 정보 처리 장치 및 방법
US20220044448A1 (en) Image processing device and method
KR20220035041A (ko) 정보 처리 장치 및 방법
WO2020145143A1 (ja) 情報処理装置および方法
WO2021002214A1 (ja) 情報処理装置および方法
WO2021010134A1 (ja) 情報処理装置および方法
JP7415937B2 (ja) 画像処理装置および方法
WO2021140928A1 (ja) 情報処理装置および方法
WO2022145214A1 (ja) 情報処理装置および方法
US20230342981A1 (en) Information processing device and method
US20230177735A1 (en) Information processing apparatus and method
US20220353493A1 (en) Information processing apparatus and method
CN115917602A (zh) 信息处理装置和方法