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

정보 처리 장치 및 방법 Download PDF

Info

Publication number
KR20200058398A
KR20200058398A KR1020207007802A KR20207007802A KR20200058398A KR 20200058398 A KR20200058398 A KR 20200058398A KR 1020207007802 A KR1020207007802 A KR 1020207007802A KR 20207007802 A KR20207007802 A KR 20207007802A KR 20200058398 A KR20200058398 A KR 20200058398A
Authority
KR
South Korea
Prior art keywords
point
information
attribute information
unit
processing
Prior art date
Application number
KR1020207007802A
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 KR20200058398A publication Critical patent/KR20200058398A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/001Model-based coding, e.g. wire frame
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/10Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image 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/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/56Particle system, point based geometry or rendering

Abstract

본 개시는, 주관 화질의 저감을 억제할 수 있도록 하는 정보 처리 장치 및 방법에 관한 것이다. 위치 정보가 갱신되기 전의 포인트 클라우드 데이터로부터, 위치 정보가 갱신된 포인트 클라우드 데이터의 처리 대상 포인트인 커런트 포인트와 비교할 포인트인 비교 대상 포인트를 탐색하고, 그 탐색된 비교 대상 포인트와 커런트 포인트를 비교하여, 커런트 포인트의 속성 정보를 설정한다. 본 개시는, 예를 들어 정보 처리 장치, 화상 처리 장치, 전자 기기, 정보 처리 방법, 또는 프로그램 등에 적용할 수 있다.

Description

정보 처리 장치 및 방법
본 개시는 정보 처리 장치 및 방법에 관한 것이며, 특히 주관 화질의 저감을 억제할 수 있도록 한 정보 처리 장치 및 방법에 관한 것이다.
종래, 점군의 위치 정보나 속성 정보 등에 의하여 3차원 구조를 나타내는 포인트 클라우드나, 정점, 에지, 면으로 구성되고, 다각형 표현을 사용하여 3차원 형상을 정의하는 메쉬의 정점 데이터의 압축 방법으로서, 예를 들어 Octree 등과 같은, 복셀(Voxel)을 이용한 양자화가 있었다(예를 들어 비특허문헌 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
그러나 일반적으로, 이와 같은 위치 정보의 양자화에 의하여 Geometry 정보(기하학 정보)가 왜곡되어 포인트의 위치가 어긋나는 경우가 많다. 따라서 색 정보 등의 속성 정보의 위치 관계도 왜곡되어, 비교 대상 포인트가 바뀌거나 증감하거나 하여 PSNR(Peak Signal-to-Noise Ratio)이 저감될 우려가 있었다. 즉, 포인트 클라우드의 주관 화질이 저감될 우려가 있었다.
본 개시는 이와 같은 상황을 감안하여 이루어진 것이며, 주관 화질의 저감을 억제할 수 있도록 하는 것이다.
본 기술의 일 측면의 정보 처리 장치는, 위치 정보가 갱신되기 전의 포인트 클라우드 데이터로부터, 위치 정보가 갱신된 포인트 클라우드 데이터의 처리 대상 포인트인 커런트 포인트와 비교할 포인트인 비교 대상 포인트를 탐색하는 탐색부와, 상기 탐색부에 의하여 탐색된 상기 비교 대상 포인트와 커런트 포인트를 비교하여, 커런트 포인트의 속성 정보를 설정하는 속성 정보 설정부를 구비하는 정보 처리 장치이다.
본 기술의 일 측면의 정보 처리 방법은, 위치 정보가 갱신되기 전의 포인트 클라우드 데이터로부터, 위치 정보가 갱신된 포인트 클라우드 데이터의 처리 대상 포인트인 커런트 포인트와 비교할 포인트인 비교 대상 포인트를 탐색하고, 탐색된 상기 비교 대상 포인트와 커런트 포인트를 비교하여, 커런트 포인트의 속성 정보를 설정하는 정보 처리 방법이다.
본 기술의 일 측면의 정보 처리 장치 및 방법에 있어서는, 위치 정보가 갱신되기 전의 포인트 클라우드 데이터로부터, 위치 정보가 갱신된 포인트 클라우드 데이터의 처리 대상 포인트인 커런트 포인트와 비교할 포인트인 비교 대상 포인트가 탐색되고, 그 탐색된 비교 대상 포인트와 커런트 포인트가 비교되어, 커런트 포인트의 속성 정보가 설정된다.
본 개시에 따르면 정보를 처리할 수 있다. 특히 주관 화질의 저감을 억제할 수 있다.
도 1은 포인트 클라우드의 예를 설명하는 도면이다.
도 2는 양자화 등에 의한 포인트의 변화의 예를 설명하는 도면이다.
도 3은 양자화 등에 의한 포인트의 변화의 예를 설명하는 도면이다.
도 4는 양자화 등에 의한 포인트의 변화의 예를 설명하는 도면이다.
도 5는 부호화 장치의 주된 구성예를 도시하는 블록도다.
도 6은 부호화의 개요의 예를 설명하는 도면이다.
도 7은 부호화부의 주된 구성예를 도시하는 블록도다.
도 8은 속성 정보 갱신부의 주된 구성예를 도시하는 블록도다.
도 9는 제어부의 주된 구성예를 도시하는 블록도다.
도 10은 포인트의 위치의 변화의 모습의 예를 도시하는 도면이다.
도 11은 속성 정보 결정 방법의 제어의 예를 설명하는 도면이다.
도 12는 부호화 처리의 흐름의 예를 설명하는 흐름도다.
도 13은 신호열 부호화 처리의 흐름의 예를 설명하는 흐름도다.
도 14는 속성 정보 갱신 처리의 흐름의 예를 설명하는 흐름도다.
도 15는 제어 처리의 흐름의 예를 설명하는 흐름도다.
도 16은 PSNR의 비교의 예를 설명하는 도면이다.
도 17은 복호 장치의 주된 구성예를 도시하는 블록도다.
도 18은 복호부의 주된 구성예를 도시하는 블록도다.
도 19는 복호 처리의 흐름의 예를 설명하는 흐름도다.
도 20은 비트 스트림 복호 처리의 흐름의 예를 설명하는 흐름도다.
도 21은 복수의 속성 정보를 설정하는 모습의 예를 설명하는 도면이다.
도 22는 속성 정보의 할당 방식의 예를 설명하는 도면이다.
도 23은 속성 정보의 할당 방식의 예를 설명하는 도면이다.
도 24는 속성 정보의 설정의 방식의 예를 설명하는 도면이다.
도 25는 속성 정보 갱신 처리의 흐름의 예를 설명하는 흐름도다.
도 26은 표시 장치의 주된 구성예를 도시하는 블록도다.
도 27은 표시 처리의 흐름의 예를 설명하는 흐름도다.
도 28은 화상 처리 장치의 주된 구성예를 도시하는 블록도다.
도 29는 포인트의 보간·리샘플의 모습의 예를 설명하는 도면이다.
도 30은 화상 처리의 흐름의 예를 설명하는 흐름도다.
도 31은 컴퓨터의 주된 구성예를 도시하는 블록도다.
이하, 본 개시를 실시하기 위한 형태(이하, 실시 형태라 함)에 대하여 설명한다. 또한 설명은 이하의 순서로 행한다.
1. 위치 정보가 갱신된 포인트에 대한 단수 속성 정보의 설정
2. 제1 실시 형태(부호화 장치: 단수 속성 정보의 설정)
3. 제2 실시 형태(복호 장치: 단수 속성 정보의 설정)
4. 제3 실시 형태(부호화 장치: 복수 속성 정보의 설정)
5. 제4 실시 형태(표시 장치: 복수 속성 정보의 설정)
6. 제5 실시 형태(화상 처리 장치)
7. 기타
<1. 위치 정보가 갱신된 포인트에 대한 단수 속성 정보의 설정>
<포인트 클라우드>
종래, 점군의 위치 정보나 속성 정보 등에 의하여 3차원 구조를 나타내는 포인트 클라우드나, 정점, 에지, 면으로 구성되고, 다각형 표현을 사용하여 3차원 형상을 정의하는 메쉬 등의 데이터가 존재하였다.
예를 들어 포인트 클라우드의 경우, 도 1의 A에 도시된 입체 구조물을, 도 1의 B에 도시된 다수의 점(포인트 데이터)의 집합(점군)으로서 표현한다. 즉, 포인트 클라우드의 데이터는, 이 점군의 각 점의 위치 정보나 속성 정보(예를 들어 색 등)에 의하여 구성된다. 따라서 데이터 구조가 비교적 단순함과 함께, 충분히 많은 점을 이용함으로써 임의의 입체 구조를 충분한 정밀도로 표현할 수 있다.
그러나 이와 같은 포인트 클라우드나 메쉬 등의 데이터는 그 데이터양이 비교적 크므로, 부호화 등에 의한 데이터양의 압축이 요구되고 있다. 예를 들어 Octree나 KDtree 등이라는, 복셀(Voxel)을 이용한 부호화 방법이 생각되었다. 복셀은, 부호화 대상의 위치 정보를 양자화하기 위한 데이터 구조이다.
<위치 정보의 양자화에 있어서의 속성 정보의 설정>
일반적으로, 이와 같은 위치 정보의 양자화에 의하여 Geometry 정보(기하학 정보)가 왜곡되어 포인트의 위치가 어긋나는 경우가 많다. 각 포인트에는 위치 정보(기하학 정보)와 함께 속성 정보도 설정되어 있다. 따라서 이와 같은 양자화에 의하여 색 정보 등의 속성 정보의 위치 관계도 왜곡되어, 비교 대상 포인트가 바뀌거나 증감하거나 하여 PSNR(Peak Signal-to-Noise Ratio)이 저감될 우려가 있었다. 즉, 포인트 클라우드의 주관 화질이 저감될 우려가 있었다.
그래서 위치 정보가 갱신되기 전의 포인트 클라우드 데이터로부터, 위치 정보가 갱신된 포인트 클라우드 데이터의 처리 대상 포인트인 커런트 포인트와 비교할 포인트인 비교 대상 포인트를 탐색하고, 그 탐색에 의하여 특정한 비교 대상 포인트와 커런트 포인트를 비교하여, 커런트 포인트의 속성 정보를 설정하도록 한다.
예를 들어 정보 처리 장치에 있어서, 위치 정보가 갱신되기 전의 포인트 클라우드 데이터로부터, 위치 정보가 갱신된 포인트 클라우드 데이터의 처리 대상 포인트인 커런트 포인트와 비교할 포인트인 비교 대상 포인트를 탐색하는 탐색부와, 그 탐색부에 의하여 탐색된 비교 대상 포인트와 커런트 포인트를 비교하여, 커런트 포인트의 속성 정보를 설정하는 속성 정보 설정부를 구비하도록 한다.
이와 같이, 위치 정보의 변화를 고려하면서 비교 대상 포인트를 특정하고, 그 속성 정보를 이용하여, 처리 대상인 커런트 포인트의 속성 정보를 설정함으로써, 위치 정보의 변화에 수반하는 속성 정보(색 정보 등)의 변화를 억제할 수 있다. 따라서 PSNR의 저감을 억제하여 포인트 클라우드의 주관 화질의 저감(외견의 변화)을 억제할 수 있다.
<설정의 개요>
이와 같은 설정의 개요를, 도 2 내지 도 4를 참조하여 설명한다. 도 2 내지 도 4는, 위치 정보의 양자화에 의한 포인트의 변화의 모습을 도시하고 있다. 이들 도면 중의 A는, 양자화 전의 포인트 클라우드를 모식적으로 도시한 것이다. 또한 이들 도면 중의 B는, 양자화 후의 포인트 클라우드를 모식적으로 도시한 것이다. A to B의 각 화살표는, 양자화 후를 기준으로 하는 경우의, 양자화 전의 포인트와 양자화 후의 포인트의 대응 관계를 나타내고 있고, B to A의 각 화살표는, 그 반대, 즉, 양자화 전을 기준으로 하는 경우의, 양자화 전의 포인트와 양자화 후의 포인트의 대응 관계를 나타내고 있다.
예를 들어 도 2는, 양자화에 의하여 포인트의 위치도 수도 대략 변화되지 않는 경우의 예를 도시하고 있다. 이 경우, A to B에 있어서는, 양자화 후의 포인트(13)에 있어서의 비교 대상은, 포인트(13)와 대략 동일한 위치에 위치하는 양자화 전의 포인트(11)이다(양자화 후의 포인트(13)는 양자화 전의 포인트(11)에 대응함). 또한 B to A에 있어서는, 양자화 전의 포인트(11)에 있어서의 비교 대상은, 포인트(11)와 대략 동일한 위치에 위치하는 양자화 후의 포인트(13)이다(양자화 전의 포인트(11)는 양자화 후의 포인트(13)에 대응함).
마찬가지로 A to B에 있어서는, 양자화 후의 포인트(14)에 있어서의 비교 대상은, 포인트(14)와 대략 동일한 위치에 위치하는 양자화 전의 포인트(12)이고, B to A에 있어서는, 양자화 전의 포인트(12)에 있어서의 비교 대상은, 포인트(12)와 대략 동일한 위치에 위치하는 양자화 후의 포인트(14)이다.
즉, 이 경우, A to B와 B to A 중 어느 방향도 포인트의 대응 관계는 변화되지 않는다. 따라서 포인트(13)의 속성 정보(i')에는, 포인트(11)의 속성 정보(i)와 대략 동일한 값이 설정된다. 마찬가지로 포인트(14)의 속성 정보(j')에는, 포인트(12)의 속성 정보(j)와 대략 동일한 값이 설정된다.
예를 들어 도 3은, 양자화에 의하여 포인트 수가 저감되는 경우의 예를 도시하고 있다. 이 경우, A to B에 있어서는, 양자화 후의 포인트(23)에 있어서의 비교 대상은, 양자화 전의 포인트(21) 및 포인트(22)이다(양자화 후의 포인트(23)는 양자화 전의 포인트(21) 및 포인트(22)에 대응함). 또한 B to A에 있어서는, 양자화 전의 포인트(21)에 있어서의 비교 대상은, 포인트(21)와 대략 동일한 위치에 위치하는 양자화 후의 포인트(23)이다(양자화 전의 포인트(21)는 양자화 후의 포인트(23)에 대응함).
따라서 포인트(23)의 속성 정보(i')에는, 포인트(21)의 속성 정보(i) 및 포인트(22)의 속성 정보(j)를 이용하여 생성된 값, 또는 포인트(21)의 속성 정보(i)와 대략 동일한 값이 설정된다.
예를 들어 도 4는, 양자화에 의하여 포인트 수가 증대되거나 또는 포인트의 위치가 어긋나는 경우의 예를 도시하고 있다. 이 경우, A to B에 있어서는, 양자화 후의 포인트(33)에 있어서의 비교 대상은 양자화 전의 포인트(32)이다(양자화 후의 포인트(33)는 양자화 전의 포인트(32)에 대응함). 또한 B to A에 있어서는, 양자화 전의 포인트(31)에 있어서의 비교 대상은 양자화 후의 포인트(34)이다(양자화 전의 포인트(31)는 양자화 후의 포인트(34)에 대응함).
따라서 포인트(33)의 속성 정보(i')에는, 포인트(32)의 속성 정보(j)와 대략 동일한 값이 설정된다. 또한 포인트(34)의 속성 정보(j')에는, 포인트(31)의 속성 정보(i)와 대략 동일한 값이 설정된다.
이와 같이 위치의 변화를 고려하여 비교 대상을 탐색함으로써, 포인트 클라우드의 주관 화질의 저감을 억제하도록 각 포인트에 속성 정보를 설정할 수 있다.
또한 이하에 있어서는 처리 대상 데이터로서 포인트 클라우드를 예로 들어 본 기술의 설명을 행하지만, 본 기술은 포인트 클라우드에 한정되지 않으며, 예를 들어 메쉬 등, 3차원 구조를 나타내고 속성 정보의 설정이 가능한 데이터라면 어떠한 처리 대상에 대해서도 적용할 수 있다. 또한 이 처리 대상은 동화상이어도 되고 정지 화상이어도 된다.
<2. 제1 실시 형태>
<부호화 장치>
도 5는, 본 기술을 적용한 정보 처리 장치의 일 실시 형태인 부호화 장치의 주된 구성예를 도시하는 블록도다. 도 5에 도시되는 부호화 장치(100)는, 부호화 대상으로서 입력된 포인트 클라우드의 데이터를, 복셀을 이용하여 부호화하고, 얻어진 부호화 데이터 등을 출력한다. 그때, 부호화 장치(100)는, 이하에 설명하는 바와 같이 본 기술을 적용한 방법으로 이 부호화를 행한다.
도 5에 도시된 바와 같이 부호화 장치(100)는, 제어부(101), 전처리부(111), 바운딩 박스 설정부(112), 복셀 설정부(113), 신호열 생성부(114) 및 부호화부(115)를 갖는다.
제어부(101)는, 부호화 장치(100) 내의 각 처리부의 제어에 관한 처리를 행한다. 예를 들어 제어부(101)는, 각 처리부에 의한 처리의 실행 또는 스킵(생략)을 제어한다. 예를 들어 제어부(101)는 소정의 제어 정보에 기초하여 그와 같은 제어를 행한다. 이와 같이 함으로써 제어부(101)는, 불필요한 처리의 실행을 억제할 수 있어서 부하의 증대를 억제할 수 있다.
제어부(101)는 어떠한 구성을 갖도록 해도 되지만, 예를 들어 CPU(Central Processing Unit), ROM(Read Only Memory), RAM(Random Access Memory) 등을 갖고, CPU가, ROM 등에 기억되어 있는 프로그램이나 데이터를 RAM에 로드하여 실행함으로써, 처리를 행하도록 해도 된다.
전처리부(111)는 제어부(101)에 의하여 제어되며, 부호화 장치(100)에 입력되는 부호화 대상(포인트 클라우드의 데이터)에 대하여 전처리로서 소정의 처리를 실시하고, 처리 후의 데이터를 바운딩 박스 설정부(112)에 공급한다.
예를 들어 제어부(101)는, 전처리의 실행을 허가 또는 금지하는 제어 정보에 따라, 전처리의 실행이 허가되어 있는(금지되지 않은) 경우에 전처리부(111)로 하여금 전처리를 실행하게 한다. 또한, 예를 들어 제어부(101)는, 전처리의 실행의 허가 또는 금지의 대상이 되는 부호화 대상의 범위를 나타내는 제어 정보에 따라, 전처리의 실행이 허가되어 있는(금지되지 않은) 부호화 대상에 대하여 전처리부(111)로 하여금 전처리를 실행하게 한다. 또한, 예를 들어 제어부(101)는, 실행을 허가 또는 금지하는 처리 내용을 지정하는 제어 정보에 따라, 실행이 허가되어 있는(금지되지 않은) 처리를 전처리부(111)로 하여금 실행하게 한다. 이와 같이 함으로써, 불필요한 전처리의 실행을 억제할 수 있어서 부하의 증대를 억제할 수 있다.
또한 전처리의 내용은 임의이다. 예를 들어 전처리부(111)가 전처리로서, 노이즈를 저감시키는 처리를 실시하도록 해도 되고 해상도(점의 수)를 변경하는 처리를 행하도록 해도 된다. 또한, 예를 들어 점군의 밀도를 균등하게 하거나, 원하는 편향을 갖게 하거나 하도록, 각 점의 배치를 갱신하도록 해도 된다. 또한, 예를 들어 깊이 정보를 갖는 화상 정보 등과 같은, 포인트 클라우드가 아닌 데이터가 부호화 장치(100)에 입력되도록 하고, 전처리부(111)가 전처리로서, 그 입력된 데이터를 포인트 클라우드의 데이터로 변환하도록 해도 된다.
전처리부(111)는 어떠한 구성을 갖도록 해도 되지만, 예를 들어 CPU, ROM, RAM 등을 갖고, CPU가, ROM 등에 기억되어 있는 프로그램이나 데이터를 RAM에 로드하여 실행함으로써, 전처리를 행하도록 해도 된다.
바운딩 박스 설정부(112)는 제어부(101)에 의하여 제어되며, 부호화 대상의 위치 정보를 정규화하기 위한 바운딩 박스의 설정에 관한 처리를 행한다.
예를 들어 제어부(101)는, 바운딩 박스의 설정의 허가 또는 금지하는 제어 정보에 따라, 그 바운딩 박스의 설정이 허가되어 있는(금지되지 않은) 경우에 바운딩 박스 설정부(112)로 하여금 그 바운딩 박스를 설정하게 한다. 또한, 예를 들어 제어부(101)는, 바운딩 박스의 설정의 허가 또는 금지의 대상이 되는 부호화 대상의 범위를 나타내는 제어 정보에 따라, 그 바운딩 박스의 설정이 허가되어 있는(금지되지 않은) 부호화 대상에 대하여 바운딩 박스 설정부(112)로 하여금 그 바운딩 박스를 설정하게 한다. 또한, 예를 들어 제어부(101)는, 바운딩 박스의 설정에 이용되는 파라미터의 허가 또는 금지에 관한 제어 정보에 따라, 바운딩 박스 설정부(112)로 하여금, 사용이 허가되어 있는(금지되지 않은) 파라미터를 이용하여 바운딩 박스를 설정하게 한다. 이와 같이 함으로써, 불필요한 바운딩 박스의 설정이나 불필요한 파라미터의 사용을 억제할 수 있어서 부하의 증대를 억제할 수 있다.
예를 들어 바운딩 박스 설정부(112)는, 부호화 대상인 각 오브젝트에 대한 바운딩 박스를 설정한다. 예를 들어 도 6의 A에 도시된 바와 같이, 포인트 클라우드의 데이터에 의하여 오브젝트(131)나 오브젝트(132)가 표현되어 있는 경우, 바운딩 박스 설정부(112)는, 도 6의 B에 도시된 바와 같이, 그 오브젝트(131)나 오브젝트(132)를 각각 포함하도록 바운딩 박스(141)나 바운딩 박스(142)를 설정한다. 도 5로 되돌아가, 바운딩 박스가 설정되면, 바운딩 박스 설정부(112)는, 그 바운딩 박스에 관한 정보를 복셀 설정부(113)에 공급한다.
또한 바운딩 박스 설정부(112)는 어떠한 구성을 갖도록 해도 되지만, 예를 들어 CPU, ROM, RAM 등을 갖고, CPU가, ROM 등에 기억되어 있는 프로그램이나 데이터를 RAM에 로드하여 실행함으로써, 바운딩 박스의 설정에 관한 처리를 행하도록 해도 된다.
복셀 설정부(113)는 제어부(101)에 의하여 제어되며, 부호화 대상의 위치 정보를 양자화하기 위한 복셀의 설정에 관한 처리를 행한다.
예를 들어 제어부(101)는, 복셀의 설정의 허가 또는 금지하는 제어 정보에 따라, 그 복셀의 설정이 허가되어 있는(금지되지 않은) 경우에 복셀 설정부(113)로 하여금 그 복셀을 설정하게 한다. 또한, 예를 들어 제어부(101)는, 복셀의 설정의 허가 또는 금지의 대상이 되는 부호화 대상의 범위를 나타내는 제어 정보에 따라, 그 복셀의 설정이 허가되어 있는(금지되지 않은) 부호화 대상에 대하여 복셀 설정부(113)로 하여금 그 복셀을 설정하게 한다. 또한, 예를 들어 제어부(101)는, 복셀의 설정에 이용되는 파라미터의 허가 또는 금지에 관한 제어 정보에 따라, 복셀 설정부(113)로 하여금, 사용이 허가되어 있는(금지되지 않은) 파라미터를 이용하여 복셀을 설정하게 한다. 이와 같이 함으로써, 불필요한 복셀의 설정이나 불필요한 파라미터의 사용을 억제할 수 있어서 부하의 증대를 억제할 수 있다.
예를 들어 복셀 설정부(113)는, 바운딩 박스 설정부(112)에 의하여 설정된 바운딩 박스 내에 복셀을 설정한다. 예를 들어 복셀 설정부(113)는, 도 6의 C에 도시된 바와 같이 바운딩 박스(141)를 분할하여 복셀(151)을 설정한다. 즉, 복셀 설정부(113)는, 바운딩 박스 내의 포인트 클라우드 데이터를 복셀에 의하여 양자화(즉, 복셀화)한다. 또한 바운딩 박스가 복수 존재하는 경우, 복셀 설정부(113)는 각 바운딩 박스에 대하여 포인트 클라우드 데이터를 복셀화한다. 즉, 도 6의 B의 예의 경우, 복셀 설정부(113)는 바운딩 박스(142)에 대해서도 마찬가지의 처리를 행한다. 이상과 같이 하여 복셀이 설정되면, 복셀 설정부(113)는, 그 복셀화된 포인트 클라우드 데이터(복셀 데이터라고도 칭함)(위치 정보의 양자화를 위한 데이터 구조에 관한 정보)나 속성 정보 등을 신호열 생성부(114)에 공급한다.
또한 복셀 설정부(113)는 어떠한 구성을 갖도록 해도 되지만, 예를 들어 CPU, ROM, RAM 등을 갖고, CPU가, ROM 등에 기억되어 있는 프로그램이나 데이터를 RAM에 로드하여 실행함으로써, 복셀의 설정에 관한 처리를 행하도록 해도 된다.
신호열 생성부(114)는 제어부(101)에 의하여 제어되며, 신호열의 생성에 관한 처리를 행한다.
예를 들어 제어부(101)는, 신호열의 생성을 허가 또는 금지하는 제어 정보에 따라, 신호열의 생성이 허가되어 있는(금지되지 않은) 경우에 신호열 생성부(114)로 하여금 신호열을 생성하게 한다. 또한, 예를 들어 제어부(101)는, 신호열의 생성의 허가 또는 금지의 대상이 되는 부호화 대상의 범위를 나타내는 제어 정보에 따라, 신호열의 생성이 허가되어 있는(금지되지 않은) 부호화 대상에 대하여 신호열 생성부(114)로 하여금 신호열을 생성하게 한다. 이와 같이 함으로써, 불필요한 신호열의 생성을 억제할 수 있어서 부하의 증대를 억제할 수 있다.
신호열 생성부(114)는, 예를 들어 포인트 클라우드 데이터를 양자화한 복셀 데이터(예를 들어 도 6의 C에 도시된 복셀 설정부(113)에 의하여 생성된 복셀 데이터)나 기타의 정보를 신호열화하고, 그 신호열을 부호화부(115)에 공급한다.
또한 신호열 생성부(114)는 어떠한 구성을 갖도록 해도 되지만, 예를 들어 CPU, ROM, RAM 등을 갖고, CPU가, ROM 등에 기억되어 있는 프로그램이나 데이터를 RAM에 로드하여 실행함으로써, 신호열의 생성에 관한 처리를 행하도록 해도 된다.
부호화부(115)는 제어부(101)에 의하여 제어되며, 공급된 신호열의 부호화에 관한 처리를 행한다.
예를 들어 제어부(101)는, 신호열의 부호화를 허가 또는 금지하는 제어 정보에 따라, 신호열의 부호화가 허가되어 있는(금지되지 않은) 경우에 부호화부(115)로 하여금 신호열을 부호화하게 한다. 또한, 예를 들어 제어부(101)는, 신호열의 부호화의 허가 또는 금지의 대상이 되는 부호화 대상의 범위를 나타내는 제어 정보에 따라, 신호열의 부호화가 허가되어 있는(금지되지 않은) 부호화 대상에 대하여 부호화부(115)로 하여금 신호열을 부호화하게 한다. 이와 같이 함으로써, 불필요한 신호열의 부호화를 억제할 수 있어서 부하의 증대를 억제할 수 있다.
부호화부(115)는, 예를 들어 공급된 신호열을 부호화하여 부호화 데이터(비트 스트림)를 생성한다. 이 신호열의 부호화 방법은 임의이다. 예를 들어 부호화부(115)가 가변 길이 부호화(VLC(Variable Length Code))에 의하여 신호열을 부호화하도록 해도 된다. 도 6의 D는, 부호화된 신호열의 모습의 예를 도시하고 있다.
또한 부호화부(115)는 적절히, 예를 들어 제어 정보 등의, 포인트 클라우드 데이터 이외의 관련 정보도 부호화하여 헤더나 파라미터 세트 등에 저장한다.
부호화부(115)는 상술한 각종 정보의 비트 스트림을 서로 관련짓는다. 여기서 「관련짓다」라는 용어는, 예를 들어 한쪽 데이터를 처리할 때 다른 쪽 데이터를 이용할 수 있도록(링크시킬 수 있도록) 한다는 것을 의미한다. 즉, 서로 관련지어진 데이터는 하나의 데이터로서 통합되어도 되고, 각각 개별의 데이터로 해도 된다. 예를 들어 부호화 데이터에 관련지어진 제어 정보는, 그 부호화 데이터와는 다른 전송로 상에서 전송되도록 해도 된다. 또한, 예를 들어 부호화 데이터에 관련지어진 제어 정보는, 그 부호화 데이터와는 다른 기록 매체(또는 동일한 기록 매체의 다른 기록 에어리어)에 기록되도록 해도 된다. 또한 이 「관련짓기」는, 데이터 전체가 아니라 데이터의 일부여도 된다. 예를 들어 복수 프레임, 1프레임, 또는 프레임 내의 일부분 등의 임의의 단위로 서로 관련지어지도록 해도 된다.
부호화부(115)는, 이와 같은 부호화에 의하여 얻어진 부호화 데이터(비트 스트림)를 부호화 장치(100)의 외부로 출력한다. 이 부호화 장치(100)로부터 출력된 데이터(부호화 데이터나 제어 정보)는, 예를 들어 도시하지 않은 후단의 처리부에 의하여 복호되어 포인트 클라우드의 데이터가 복원되도록 해도 되고, 도시하지 않은 통신부에 의하여 송신되고 소정의 전송로를 통하여 복호 장치 등의 다른 장치에 전송되도록 해도 되고, 도시하지 않은 기록 매체에 기록되도록 해도 된다.
또한 부호화부(115)는 어떠한 구성을 갖도록 해도 되지만, 예를 들어 CPU, ROM, RAM 등을 갖고, CPU가, ROM 등에 기억되어 있는 프로그램이나 데이터를 RAM에 로드하여 실행함으로써, 부호화에 관한 처리를 행하도록 해도 된다.
<부호화부>
도 7은, 부호화부(115)(도 5)의 주된 구성예를 도시하는 블록도다. 도 7에 도시된 바와 같이 부호화부(115)는, 기하학 정보 부호화부(201), 속성 정보 갱신부(202), 속성 정보 부호화부(203) 및 합성부(204)를 갖는다.
기하학 정보 부호화부(201)는, 위치 정보 등의 기하학 정보(Geometry 정보)의 부호화에 관한 처리를 행한다. 예를 들어 기하학 정보 부호화부(201)는, 신호열 생성부(114)로부터 공급되는 기하학 정보(복셀 데이터)의 신호열을 부호화하여 그 비트 스트림을 생성한다. 기하학 정보 부호화부(201)는 그 비트 스트림을 합성부(204)에 공급한다.
또한 기하학 정보 부호화부(201)는 어떠한 구성을 갖도록 해도 되지만, 예를 들어 CPU, ROM, RAM 등을 갖고, CPU가, ROM 등에 기억되어 있는 프로그램이나 데이터를 RAM에 로드하여 실행함으로써, 기하학 정보의 부호화에 관한 처리를 행하도록 해도 된다.
속성 정보 갱신부(202)는 속성 정보의 갱신에 관한 처리를 행한다. 예를 들어 속성 정보 갱신부(202)는, 위치 정보의 양자화에 대응시키도록 각 포인트(각 복셀)의 속성 정보를 갱신한다. 이 속성 정보에는, 예를 들어 색 정보, α 채널 및 법선 벡터 중 적어도 어느 하나가 포함된다.
예를 들어 속성 정보 갱신부(202)는, 기하학 정보 및 속성 정보를 포함하는 포인트 클라우드 데이터(즉, 양자화 전의 데이터)를 전처리부(111)(도 5)로부터 취득한다. 또한 속성 정보 갱신부(202)는 신호열 생성부(114)로부터 복셀 데이터의 신호열(즉, 양자화 후의 데이터)을 취득한다. 속성 정보 갱신부(202)는 이들 정보에 기초하여, 양자화에 의한 위치 정보의 변화에 대응시키도록, 비교의 대상으로 할 비교 대상 포인트를 각 포인트(복셀)에 대하여 설정한다. 그리고 속성 정보 갱신부(202)는 그 비교 대상 포인트의 속성 정보를 이용하여 각 포인트의 속성 정보를 설정한다. 속성 정보 갱신부(202)는, 이와 같이 갱신한 속성 정보(갱신 속성 정보)를 속성 정보 부호화부(203)에 공급한다.
또한 속성 정보 갱신부(202)는 어떠한 구성을 갖도록 해도 되지만, 예를 들어 CPU, ROM, RAM 등을 갖고, CPU가, ROM 등에 기억되어 있는 프로그램이나 데이터를 RAM에 로드하여 실행함으로써, 속성 정보의 갱신에 관한 처리를 행하도록 해도 된다.
속성 정보 부호화부(203)는 속성 정보의 부호화에 관한 처리를 행한다. 예를 들어 속성 정보 부호화부(203)는, 속성 정보 갱신부(202)에 의하여 갱신된 속성 정보인 갱신 속성 정보를 부호화하여 그 비트 스트림을 생성한다. 속성 정보 부호화부(203)는 그 비트 스트림을 합성부(204)에 공급한다.
또한 속성 정보 부호화부(203)는 어떠한 구성을 갖도록 해도 되지만, 예를 들어 CPU, ROM, RAM 등을 갖고, CPU가, ROM 등에 기억되어 있는 프로그램이나 데이터를 RAM에 로드하여 실행함으로써, 속성 정보의 부호화에 관한 처리를 행하도록 해도 된다.
합성부(204)는 비트 스트림의 합성에 관한 처리를 행한다. 예를 들어 합성부(204)는, 기하학 정보 부호화부(201)로부터 공급되는 기하학 정보의 비트 스트림과, 속성 정보 부호화부(203)로부터 공급되는 속성 정보의 비트 스트림을 합성하여, 1개의 비트 스트림으로 통합한다. 또한 이 비트 스트림에는, 헤더나 파라미터 세트 등의 메타데이터가 포함되도록 해도 된다. 합성부(204)는 그 비트 스트림을 부호화 장치(100)의 외부로 출력한다.
또한 합성부(204)는 어떠한 구성을 갖도록 해도 되지만, 예를 들어 CPU, ROM, RAM 등을 갖고, CPU가, ROM 등에 기억되어 있는 프로그램이나 데이터를 RAM에 로드하여 실행함으로써, 비트 스트림의 합성에 관한 처리를 행하도록 해도 된다.
<속성 정보 갱신부>
도 8은, 속성 정보 갱신부(202)(도 7)의 주된 구성예를 도시하는 블록도다. 도 8에 도시된 바와 같이 속성 정보 갱신부(202)는, 제어부(211), 비교 대상 탐색부(221), 속성 정보 설정부(222) 및 예외 처리부(223)를 갖는다.
제어부(211)는, 비교 대상 탐색부(221) 내지 예외 처리부(223)라는 각 처리부의 동작을 제어한다. 예를 들어 제어부(211)는, 처리 조건(외부로부터의 요구)이나, 처리의 모드나, 처리에 이용되는 파라미터 등의, 처리에 관한 정보에 기초하여, 비교 대상 탐색부(221) 내지 예외 처리부(223)가 행하는 각 처리의 방법 등을 설정한다.
예를 들어 제어부(211)는, 처리 속도, 품질, 압축 알고리즘 등의 정보에 기초하여 이 설정을 행한다. 예를 들어 제어부(211)는 비교 대상 결정 방법을 설정하여 비교 대상 탐색부(221)를 제어하고, 그 방법으로 비교 대상을 결정하게 한다. 또한, 예를 들어 제어부(211)는 비교 방법을 설정하여 속성 정보 설정부(222)를 제어하고, 그 방법으로 속성 정보의 비교를 행하게 한다. 또한, 예를 들어 제어부(211)는 속성 결정 방법을 설정하여 속성 정보 설정부(222)를 제어하고, 그 방법으로 속성을 결정하게 한다. 또한, 예를 들어 제어부(211)는 예외 처리 방법을 설정하여 예외 처리부(223)를 제어하고, 그 방법으로 예외 처리를 행하게 한다.
또한 제어부(211)는 어떠한 구성을 갖도록 해도 되지만, 예를 들어 CPU, ROM, RAM 등을 갖고, CPU가, ROM 등에 기억되어 있는 프로그램이나 데이터를 RAM에 로드하여 실행함으로써, 제어에 관한 처리를 행하도록 해도 된다.
비교 대상 탐색부(221)는, 양자화 전의 기하학 정보(위치 변경 전 기하학 정보)와 양자화 후의 기하학 정보(복셀(Voxel) 데이터)를 취득하고, 그것들을 이용하여, 제어부(211)에 의하여 설정된 방법으로, 커런트 포인트와 비교할 비교 대상 포인트를 탐색한다. 비교 대상 포인트를 특정하면, 비교 대상 탐색부(221)는, 그 비교 대상 포인트에 관한 정보인 비교 대상 정보를 속성 정보 설정부(222)에 공급한다.
또한 비교 대상 탐색부(221)는 어떠한 구성을 갖도록 해도 되지만, 예를 들어 CPU, ROM, RAM 등을 갖고, CPU가, ROM 등에 기억되어 있는 프로그램이나 데이터를 RAM에 로드하여 실행함으로써, 비교 대상 포인트의 탐색에 관한 처리를 행하도록 해도 된다.
속성 정보 설정부(222)는 비교 대상 정보 외에, 양자화 전의 속성 정보(위치 변경 전 속성 정보)를 취득한다. 속성 정보 설정부(222)는 그것들 정보를 이용하여, 제어부(211)에 의하여 설정된 방법으로 커런트 포인트와 비교 대상 포인트를 비교한다. 또한 속성 정보 설정부(222)는 비교 대상 포인트의 속성 정보를 이용하여, 제어부(211)에 의하여 설정된 방법으로 커런트 포인트의 속성을 결정하고, 속성 정보를 설정하여 그 속성을 반영시킨다. 속성 정보 설정부(222)는, 그 설정한 커런트 포인트의 속성 정보(위치 변경 후 속성 정보)를 예외 처리부(223)에 공급한다. 이 속성 정보는, 색 정보, α 채널 및 법선 벡터 중 적어도 어느 하나를 포함한다.
또한 속성 정보 설정부(222)는 어떠한 구성을 갖도록 해도 되지만, 예를 들어 CPU, ROM, RAM 등을 갖고, CPU가, ROM 등에 기억되어 있는 프로그램이나 데이터를 RAM에 로드하여 실행함으로써, 속성 정보의 설정에 관한 처리를 행하도록 해도 된다.
예외 처리부(223)는, 비교 대상 포인트가 발견되지 않는 경우, 제어부(211)에 의하여 설정된 방법으로 예외 처리를 행한다. 예외 처리의 상세에 대해서는 후술한다. 예외 처리부(223)는, 예외 처리를 행하지 않는 경우, 속성 정보 설정부(222)로부터 공급된 위치 변경 후 속성 정보를 갱신 속성 정보로서 속성 정보 부호화부(203)(도 7)에 공급한다.
또한 예외 처리부(223)는 어떠한 구성을 갖도록 해도 되지만, 예를 들어 CPU, ROM, RAM 등을 갖고, CPU가, ROM 등에 기억되어 있는 프로그램이나 데이터를 RAM에 로드하여 실행함으로써, 예외 처리에 관한 처리를 행하도록 해도 된다.
<제어부>
도 9는, 제어부(211)(도 8)의 주된 구성예를 도시하는 블록도다. 도 9에 도시된 바와 같이 제어부(211)는, 예를 들어 비교 방법 설정부(231), 비교 대상 결정 방법 설정부(232), 속성 결정 방법 설정부(233) 및 예외 처리 방법 설정부(234)를 갖는다.
비교 방법 설정부(231)는 비교 방법의 설정에 관한 처리를 행한다. 비교 방법은 임의이지만, 예를 들어 도 10의 B에 도시된 바와 같이, A to B의 관계로부터 색을 정하는 방법과, B to A의 관계로부터 색을 정하는 방법과, A to B, B to A의 양쪽의 관계로부터 색을 정하는 방법이 후보로서 준비되고, 비교 방법 설정부(231)는 이들 중에서 어느 방법을 선택한다. 예를 들어 비교 방법 설정부(231)는 각종 조건(예를 들어 처리 속도, 품질, 압축 알고리즘 등)에 기초하여 이들 중에서 어느 방법을 선택한다.
예를 들어 비교 방법 설정부(231)가 비교 방법으로서, A to B의 관계로부터 색을 정하는 방법을 설정한 경우, 속성 정보 설정부(222)는, 비교 대상 포인트인 포인트(253) 및 포인트(252)의 속성 정보를 이용하여, 커런트 포인트인 포인트(251)의 속성 정보를 설정한다.
또한, 예를 들어 비교 방법 설정부(231)가 비교 방법으로서, B to A의 관계로부터 색을 정하는 방법을 설정한 경우, 속성 정보 설정부(222)는, 비교 대상 포인트인 포인트(253)의 속성 정보를 이용하여, 커런트 포인트인 포인트(251)의 속성 정보를 설정한다.
또한, 예를 들어 비교 방법 설정부(231)가 비교 방법으로서, A to B 및 B to A의 관계로부터 색을 정하는 방법을 설정한 경우, 속성 정보 설정부(222)는, 포인트(252) 및 포인트(253)의 속성 정보, 또는 포인트(253)의 속성 정보를 이용하여, 커런트 포인트인 포인트(251)의 속성 정보를 설정한다.
또한 비교 방법 설정부(231)는 어떠한 구성을 갖도록 해도 되지만, 예를 들어 CPU, ROM, RAM 등을 갖고, CPU가, ROM 등에 기억되어 있는 프로그램이나 데이터를 RAM에 로드하여 실행함으로써, 비교 방법의 설정에 관한 처리를 행하도록 해도 된다.
비교 대상 결정 방법 설정부(232)는, 비교 대상의 결정 방법의 설정에 관한 처리를 행한다. 비교 대상의 결정 방법은 임의이지만, 예를 들어 위치 정보가 갱신되기 전의 포인트 클라우드 데이터의, 커런트 포인트에 대하여 최근방에 위치하는 포인트를 비교 대상 포인트로서 선택하는 방법이어도 된다. 이 방법의 경우, 비교 대상 탐색부(221)는, 예를 들어 도 10의 A에 도시된 바와 같이, 커런트 포인트인 포인트(251)의 근방에 위치하는 포인트(252)와 포인트(253) 중, 보다 근방에 위치하는(최근방에 위치하는) 포인트를 비교 대상 포인트로서 선택한다.
또한, 예를 들어 위치 정보가 갱신되기 전의 포인트 클라우드 데이터의, 커런트 포인트에 대하여, 소정의 거리 r보다 가까이에 위치하고, 또한 최근방에 위치하는 포인트를 비교 대상 포인트로서 선택하는 방법이어도 된다. 이 방법의 경우, 비교 대상 탐색부(221)는, 예를 들어 도 10의 A에 도시된 바와 같이, 커런트 포인트인 포인트(251)를 중심으로 하는 반경 r의 원(254)을 설정하고, 그 원(254)의 내부에 위치하는 포인트(252) 및 포인트(253) 중, 보다 근방에 위치하는(최근방에 위치하는) 포인트를 비교 대상 포인트로서 선택한다. 이 경우, 커런트 포인트와 비교 대상 포인트 사이의 거리의 최댓값 r이 설정되어 있으므로, 비교 대상 포인트가 존재하지 않는 경우도 있을 수 있다. 그 경우, 예외 처리부(223)에 의하여 예외 처리가 행해진다.
또한, 예를 들어 위치 정보가 갱신되기 전의 포인트 클라우드 데이터의, 다른 알고리즘에 따라 선택되고, 또한 커런트 포인트에 대하여 소정의 거리 r보다 가까이에 위치하는 포인트를 비교 대상 포인트로서 선택하는 방법이어도 된다. 다른 알고리즘은 임의이지만, 예를 들어 에지 부분의 오차를 저감시키는 등, 주관적인 구조에 적응하여 비교 대상을 결정하는 알고리즘이어도 된다. 이 방법의 경우, 비교 대상 탐색부(221)는, 예를 들어 도 10의 A에 도시된 바와 같이, 커런트 포인트인 포인트(251)를 중심으로 하는 반경 r의 원(254)을 설정하고, 그 원(254)의 내부에 위치하는 포인트(252) 및 포인트(253) 중, 다른 알고리즘에 따라 선택되는 포인트를 비교 대상 포인트로서 선택한다.
예를 들어 이들과 같은 복수의 방법이 후보로서 준비되고, 비교 대상 결정 방법 설정부(232)는 이들 중에서 어느 방법을 선택한다. 예를 들어 비교 대상 결정 방법 설정부(232)는 각종 조건(예를 들어 처리 속도, 품질, 압축 알고리즘 등)에 기초하여 이들 중에서 어느 방법을 선택한다.
또한 비교 대상 결정 방법 설정부(232)는 어떠한 구성을 갖도록 해도 되지만, 예를 들어 CPU, ROM, RAM 등을 갖고, CPU가, ROM 등에 기억되어 있는 프로그램이나 데이터를 RAM에 로드하여 실행함으로써, 비교 대상의 결정 방법의 설정에 관한 처리를 행하도록 해도 된다.
속성 결정 방법 설정부(233)는, 속성의 결정 방법의 설정에 관한 처리를 행한다. 속성의 결정 방법은 임의이지만, 예를 들어 비교 대상 포인트의 속성 중에서 하나를 선택하여, 그것을 커런트 포인트의 속성에 적용하도록 해도 된다. 도 10의 A의 예를 이용하여 설명하면, 이 경우, 속성 정보 설정부(222)는, 비교 대상 포인트인 포인트(252) 및 포인트(253) 중 어느 한쪽의 속성 정보를, 커런트 포인트인 포인트(251)에 적용한다.
또한, 예를 들어 복수의 비교 대상 포인트의 속성의 평균을 커런트 포인트의 속성에 적용하도록 해도 된다. 도 10의 A의 예를 이용하여 설명하면, 이 경우, 속성 정보 설정부(222)는, 비교 대상 포인트인 포인트(252) 및 포인트(253)의 양쪽의 속성 정보의 평균을, 커런트 포인트인 포인트(251)에 적용한다.
또한, 예를 들어 각 비교 대상 포인트의 속성에 가중치 부여를 하여, 그 평균(가중 평균)을 커런트 포인트의 속성에 적용하도록 해도 된다. 도 10의 A의 예를 이용하여 설명하면, 이 경우, 속성 정보 설정부(222)는, 비교 대상 포인트인 포인트(252) 및 포인트(253)의 양쪽의 속성 정보의 가중 평균을, 커런트 포인트인 포인트(251)에 적용한다.
또한 이 가중치(계수)는, 예를 들어 비교 대상 포인트로부터 커런트 포인트까지의 거리나, 비교 대상 포인트의 속성 정보의 특징(예를 들어 밝기) 등에 따라 설정되도록 해도 된다.
예를 들어 이들과 같은 복수의 방법이 후보로서 준비되고, 속성 결정 방법 설정부(233)는 이들 중에서 어느 방법을 선택한다. 예를 들어 속성 결정 방법 설정부(233)는 각종 조건(예를 들어 처리 속도, 품질, 압축 알고리즘 등)에 기초하여 이들 중에서 어느 방법을 선택한다.
또한 속성 결정 방법 설정부(233)는 어떠한 구성을 갖도록 해도 되지만, 예를 들어 CPU, ROM, RAM 등을 갖고, CPU가, ROM 등에 기억되어 있는 프로그램이나 데이터를 RAM에 로드하여 실행함으로써, 속성의 결정 방법의 설정에 관한 처리를 행하도록 해도 된다.
예외 처리 방법 설정부(234)는 예외 처리 방법의 설정에 관한 처리를 행한다. 예외 처리 방법은 임의이지만, 예를 들어 비교 대상 포인트가 없는 커런트 포인트를 불가시로 하도록 해도 된다. 이 경우, 예외 처리부(223)는, 예를 들어 비교 대상 포인트가 없는 커런트 포인트에 대하여 불가시 속성(no_color_attribute)을 부여한다(비트를 설정하거나, 또는 불가시의 색을 헤더 등에 정의하고, 커런트 포인트를 그 색으로 설정함). 예외 처리부(223)는, 그 불가시 속성을 부여한 속성 정보를 갱신 속성 정보로서 속성 정보 부호화부(203)에 공급한다.
또한, 예를 들어 비교 대상 포인트가 없는 커런트 포인트를 부호화의 대상으로부터 제외하도록 해도 된다. 이 경우, 예외 처리부(223)는, 예를 들어 비교 대상 포인트가 없는 커런트 포인트를 부호화의 대상으로부터 제외하고, 그 포인트를 제외한 포인트 클라우드(갱신 기하학 정보)를 전처리부(111) 등에 공급하여, 재부호화를 요구한다. 부호화 장치(100)는 그 요구에 따라, 그 비교 대상 포인트가 발견되지 않는 포인트가 제외된 포인트 클라우드의 부호화를 행한다.
또한, 예를 들어 비교 대상 포인트가 없는 커런트 포인트가 발생하지 않도록 부호화 방법(예를 들어 모드나 파라미터 등)을 변경하도록 해도 된다. 이 경우, 예외 처리부(223)는, 예를 들어 전처리부(111) 등에 포인트 클라우드의 재부호화를 요구한다. 그때, 예외 처리부(223)는, 부호화 방법을 변경하여 재부호화하도록 요구한다.
이 부호화 방법의 변경은 어떠한 것이어도 된다. 예를 들어 DAG(Directed Acyclic Graph)(유효 지향성 그래프라고도 칭함)에 이용되는 역치 DAG TH를 변경하도록 해도 된다.
예를 들어 이들과 같은 복수의 방법이 후보로서 준비되고, 예외 처리 방법 설정부(234)는 이들 중에서 어느 방법을 선택한다. 예를 들어 예외 처리 방법 설정부(234)는 각종 조건(예를 들어 처리 속도, 품질, 압축 알고리즘 등)에 기초하여 이들 중에서 어느 방법을 선택한다.
또한 예외 처리 방법 설정부(234)는 어떠한 구성을 갖도록 해도 되지만, 예를 들어 CPU, ROM, RAM 등을 갖고, CPU가, ROM 등에 기억되어 있는 프로그램이나 데이터를 RAM에 로드하여 실행함으로써, 예외 처리의 방법 설정에 관한 처리를 행하도록 해도 된다.
이와 같이 위치의 변화를 고려하여 비교 대상을 탐색함으로써 부호화 장치(100)는, 포인트 클라우드의 주관 화질의 저감을 억제하도록 각 포인트에 속성 정보를 설정할 수 있다.
<제어예>
예를 들어 점의 위치가 어긋나는 경우, 또는 점의 수가 저감되는 경우, 제어부(211)의 비교 방법 설정부(231) 내지 예외 처리 방법 설정부(234)는, 도 11의 A에 나타나는 표와 같이, 용도(고속, 고품질(객관 지표 중시), 고품질(주관 지표 중시) 등)에 따라 각 처리의 방법을 설정하도록 해도 된다. 또한, 예를 들어 리샘플링 등에 의하여 점의 수가 증대되는 경우, 제어부(211)의 비교 방법 설정부(231) 내지 예외 처리 방법 설정부(234)는, 도 11의 B에 나타나는 표와 같이, 용도(고속, 고품질(객관 지표 중시), 고품질(주관 지표 중시) 등)에 따라 각 처리의 방법을 설정하도록 해도 된다.
이상과 같이 용도에 따라 처리를 제어함으로써 부호화 장치(100)는, 불필요한 처리의 부하나 처리 시간의 증대를 억제할 수 있다.
<부호화 처리의 흐름>
이상과 같은 구성의 부호화 장치(100)에 의하여 실행되는 부호화 처리의 흐름의 예를, 도 12의 흐름도를 참조하여 설명한다.
부호화 처리가 개시되면, 전처리부(111)는 스텝 S101에 있어서, 입력된 데이터에 대하여 전처리를 행한다.
스텝 S102에 있어서, 바운딩 박스 설정부(112)는, 전처리된 데이터에 대하여 바운딩 박스를 설정한다.
스텝 S103에 있어서, 복셀 설정부(113)는, 스텝 S102에 있어서 설정된 바운딩 박스에 복셀을 설정한다.
스텝 S104에 있어서, 신호열 생성부(114)는 데이터 구조에 기초하여 신호열을 생성한다.
스텝 S105에 있어서, 부호화부(115)는, 스텝 S104의 처리에 의하여 생성된 신호열을 부호화한다.
스텝 S106에 있어서, 부호화부(115)는, 그 부호화에 의하여 얻어진 비트 스트림을 부호화 장치(100)의 외부로 출력한다. 이 비트 스트림은, 예를 들어 복호측(복호 장치 등)에 전송되거나 기록 매체에 기록되거나 한다.
스텝 S106의 처리가 종료되면 부호화 처리가 종료된다. 예를 들어 부호화 대상이 동화상인 경우, 이 일련의 처리를 프레임마다 행한다.
<신호열 부호화 처리의 흐름>
다음으로, 도 12의 스텝 S105에 있어서 실행되는 신호열 부호화 처리의 흐름의 예를, 도 13의 흐름도를 참조하여 설명한다.
신호열 부호화 처리가 개시되면 기하학 정보 부호화부(201)는, 스텝 S121에 있어서, 복셀 데이터를 부호화한다.
스텝 S122에 있어서, 속성 정보 갱신부(202)는 속성 정보를 갱신한다.
스텝 S123에 있어서, 속성 정보 부호화부(203)는, 스텝 S122에 있어서 갱신된 속성 정보를 부호화한다.
스텝 S124에 있어서, 합성부(204)는, 스텝 S121의 처리에 의하여 얻어진 비트 스트림과, 스텝 S123의 처리에 의하여 얻어진 비트 스트림을 합성한다.
스텝 S124의 처리가 종료되면 신호열 부호화 처리가 종료되고, 처리는 도 12로 되돌아간다.
<속성 정보 갱신 처리의 흐름>
다음으로, 도 14의 흐름도를 참조하여, 도 13의 스텝 S122에 있어서 실행되는 속성 정보 갱신 처리의 흐름의 예를 설명한다.
속성 정보 갱신 처리가 개시되면 제어부(211)는, 스텝 S141에 있어서, 제어 처리를 행하고 각 처리의 방법을 결정한다.
스텝 S142에 있어서, 비교 대상 탐색부(221)는, 스텝 S141에 있어서 설정된 비교 대상 결정 방법에 따라 비교 대상 포인트를 탐색한다.
스텝 S143에 있어서, 속성 정보 설정부(222)는, 커런트 포인트에 속성 정보를 설정할지 여부를 판정한다. 속성 정보를 설정한다고 판정된 경우, 처리는 스텝 S144로 진행된다.
스텝 S144에 있어서, 속성 정보 설정부(222)는, 스텝 S141에 있어서 설정된 비교 방법이나 속성 결정 방법에 따라 커런트 포인트의 속성 정보를 설정한다.
스텝 S144의 처리가 종료되면 처리는 스텝 S145로 진행된다. 또한 스텝 S143에 있어서, 예를 들어 비교 대상 포인트가 발견되지 않고 커런트 포인트에 속성 정보를 설정하지 않는다고 판정된 경우, 처리는 스텝 S145로 진행된다.
스텝 S145에 있어서, 예외 처리부(223)는, 예외 처리를 행할지 여부를 판정한다. 예를 들어 비교 대상 포인트가 발견되지 않고 예외 처리를 행한다고 판정된 경우, 처리는 스텝 S146으로 진행된다.
스텝 S146에 있어서, 예외 처리부(223)는, 스텝 S141에 있어서 설정된 예외 처리 방법에 따라 예외 처리를 행한다.
스텝 S146의 처리가 종료되면 속성 정보 갱신 처리가 종료되고, 처리는 도 13으로 되돌아간다. 또한 스텝 S145에 있어서, 예를 들어 비교 대상 포인트가 발견되었고 예외 처리를 행하지 않는다고 판정된 경우, 스텝 S146의 처리가 생략되어 속성 정보 갱신 처리가 종료되고, 처리는 도 13으로 되돌아간다.
<제어 처리의 흐름>
다음으로, 도 15의 흐름도를 참조하여, 도 14의 스텝 S141에 있어서 실행되는 제어 처리의 흐름의 예를 설명한다.
제어 처리가 개시되면 비교 방법 설정부(231)는, 스텝 S161에 있어서, 비교 방법을 설정하고, 그 설정을 속성 정보 설정부(222)에 공급한다.
스텝 S162에 있어서, 비교 대상 결정 방법 설정부(232)는 비교 대상 결정 방법을 설정하고, 그 설정을 비교 대상 탐색부(221)에 공급한다.
스텝 S163에 있어서, 속성 결정 방법 설정부(233)는 속성 결정 방법을 설정하고, 그 설정을 속성 정보 설정부(222)에 공급한다.
스텝 S164에 있어서, 예외 처리 방법 설정부(234)는 예외 처리 방법을 설정하고, 그 설정을 예외 처리부(223)에 공급한다.
스텝 S164의 처리가 종료되면 제어 처리가 종료된다.
이상과 같이 각 처리를 실행함으로써 부호화 장치(100)는, 불필요한 처리의 부하나 처리 시간의 증대를 억제할 수 있다.
<처리의 평가>
DAG(유효 지향성 그래프) 처리를 행하는 경우에 있어서, 종래와 같이 행하는 방법(Dag ORG), B to A의 방향에 대하여 기하학 정보의 변화를 고려하여 속성 정보를 갱신하는 방법(Dag BtoA), 및 A to B, B to A의 양쪽에 대하여 기하학 정보의 변화를 고려하여 속성 정보를 갱신하는 방법(Dag New)의 각각의 PSNR 평가 결과를 비교한 것을 도 16에 나타낸다.
도 16의 A는, 각 방법의 PSNR의 값을 YUV의 각 성분에 대하여 비교한 것이고, 도 16의 B는, 그것을 막대그래프화한 것이다. 도 16의 B의 흰 바탕의 막대그래프가 도 16의 A의 표의 Dag ORG에 대응하고, 도 16의 B의 사선 문양의 막대그래프가 도 16의 A의 표의 Dag BtoA에 대응하고, 도 16의 B의 그물눈 문양의 막대그래프가 도 16의 A의 표의 Dag New에 대응한다.
도 16에 나타난 바와 같이, 본 기술을 적용하여, 위치의 변화를 고려하여 비교 대상을 탐색함으로써 PSNR를 향상시킬 수 있다. 따라서 포인트 클라우드의 주관 화질의 저감을 억제할 수 있다.
<3. 제2 실시 형태>
<복호 장치>
부호화 장치(100)가 생성한 비트 스트림을 복호하는 복호 장치는 기하학 정보와 함께 속성 정보도 복호한다. 또한 포인트에 대하여 불가시 속성(no_color_attribute)이 설정되어 있는 경우, 복호 장치는 그 포인트를 불가시로 하도록 처리를 행한다.
도 17은, 본 기술을 적용한 정보 처리 장치의 일 실시 형태인 복호 장치의 주된 구성예를 도시하는 블록도다. 도 17에 도시되는 복호 장치(300)는, 도 5의 부호화 장치(100)에 대응하는 복호 장치이며, 예를 들어 이 부호화 장치(100)에 의하여 생성된 포인트 클라우드의 부호화 데이터를 복호하여 포인트 클라우드의 데이터를 복원한다.
도 17에 도시된 바와 같이 복호 장치(300)는, 복호부(301), 복셀 데이터 생성부(302) 및 포인트 클라우드화 처리부(303)를 갖는다.
복호부(301)는 비트 스트림의 복호에 관한 처리를 행한다. 예를 들어 복호부(301)는 비트 스트림을, 부호화부(115)의 부호화 방법에 대응하는 복호 방법으로 복호하고, 비트 스트림으로부터 기하학 정보나 속성 정보의 신호열을 추출한다. 복호부(301)는, 비트 스트림으로부터 추출한 신호열을 복셀 데이터 생성부(302)에 공급한다.
또한 복호부(301)는 어떠한 구성을 갖도록 해도 되지만, 예를 들어 CPU, ROM, RAM 등을 갖고, CPU가, ROM 등에 기억되어 있는 프로그램이나 데이터를 RAM에 로드하여 실행함으로써, 복호에 관한 처리를 행하도록 해도 된다.
복셀 데이터 생성부(302)는 복셀 데이터의 생성에 관한 처리를 행한다. 예를 들어 복셀 데이터 생성부(302)는, 복호부(301)로부터 공급되는 신호열에 대응하는 복셀 데이터를 생성한다. 복셀 데이터 생성부(302)는, 생성한 복셀 데이터를 포인트 클라우드화 처리부(303)에 공급한다.
또한 복셀 데이터 생성부(302)는 어떠한 구성을 갖도록 해도 되지만, 예를 들어 CPU, ROM, RAM 등을 갖고, CPU가, ROM 등에 기억되어 있는 프로그램이나 데이터를 RAM에 로드하여 실행함으로써, 복셀 데이터의 생성에 관한 처리를 행하도록 해도 된다.
포인트 클라우드화 처리부(303)는, 포인트 클라우드 데이터의 복원에 관한 처리를 행한다. 예를 들어 포인트 클라우드화 처리부(303)는, 공급된 복셀 데이터를 포인트 클라우드 데이터로 변환한다(복호 포인트 클라우드 데이터를 생성함). 또한 포인트 클라우드화 처리부(303)가 그 복호 포인트 클라우드 데이터를 Mesh 데이터로 다시 변환하도록 해도 된다.
포인트 클라우드화 처리부(303)는, 생성한 복호 포인트 클라우드 데이터(또는 Mesh 데이터)를 복호 장치(300)의 외부로 출력한다. 이 출력된 복호 포인트 클라우드 데이터(또는 Mesh 데이터)는, 예를 들어 도시하지 않은 후단의 처리부에 의하여 화상 처리되어 화상 정보로서 모니터 등에 표시되도록 해도 되고, 도시하지 않은 통신부에 의하여 송신되고 소정의 전송로를 통하여 다른 장치에 전송되도록 해도 되고, 도시하지 않은 기록 매체에 기록되도록 해도 된다.
또한 포인트 클라우드화 처리부(303)는 어떠한 구성을 갖도록 해도 되지만, 예를 들어 CPU, ROM, RAM 등을 갖고, CPU가, ROM 등에 기억되어 있는 프로그램이나 데이터를 RAM에 로드하여 실행함으로써, 포인트 클라우드 데이터의 복원에 관한 처리를 행하도록 해도 된다.
이상과 같이 복호 장치(300)는, 부호화 장치(100)에 의하여 생성된 비트 스트림을 올바르게 복호할 수 있다. 따라서 복호 장치(300)는 주관 화질의 저감의 억제를 실현할 수 있다.
<복호부>
도 18은, 복호부(301)의 주된 구성예를 도시하는 블록도다. 도 18에 도시된 바와 같이 복호부(301)는, 기하학 정보 복호부(321), 속성 정보 복호부(322) 및 불가시 처리부(323)를 갖는다.
기하학 정보 복호부(321)는, 공급된 비트 스트림을 복호하고 기하학 정보의 신호열을 추출한다. 기하학 정보 복호부(321)는, 추출한 기하학 정보의 신호열을 복셀 데이터 생성부(302)(도 17)에 공급한다.
또한 기하학 정보 복호부(321)는 어떠한 구성을 갖도록 해도 되지만, 예를 들어 CPU, ROM, RAM 등을 갖고, CPU가, ROM 등에 기억되어 있는 프로그램이나 데이터를 RAM에 로드하여 실행함으로써, 기하학 정보의 복호에 관한 처리를 행하도록 해도 된다.
속성 정보 복호부(322)는, 공급된 비트 스트림을 복호하고 속성 정보(갱신 속성 정보)의 신호열을 추출한다. 속성 정보 복호부(322)는, 추출한 속성 정보(갱신 속성 정보)의 신호열을 불가시 처리부(323)에 공급한다.
또한 속성 정보 복호부(322)는 어떠한 구성을 갖도록 해도 되지만, 예를 들어 CPU, ROM, RAM 등을 갖고, CPU가, ROM 등에 기억되어 있는 프로그램이나 데이터를 RAM에 로드하여 실행함으로써, 속성 정보의 복호에 관한 처리를 행하도록 해도 된다.
불가시 처리부(323)는, 공급된 속성 정보(갱신 속성 정보)의 신호열을 이용하여, 불가시 속성(no_color_attribute)이 부여된 포인트를 불가시로 하는 불가시 처리를 행한다. 불가시 처리부(323)는, 적절히 불가시 처리를 실시한 속성 정보(갱신 속성 정보)의 신호열을 복셀 데이터 생성부(302)(도 17)에 공급한다.
또한 불가시 처리부(323)는 어떠한 구성을 갖도록 해도 되지만, 예를 들어 CPU, ROM, RAM 등을 갖고, CPU가, ROM 등에 기억되어 있는 프로그램이나 데이터를 RAM에 로드하여 실행함으로써, 불가시에 관한 처리를 행하도록 해도 된다.
이상과 같이 복호 장치(300)는, 부호화 장치(100)가 생성한 비트 스트림을 올바르게 복호할 수 있다. 따라서 복호 장치(300)는 포인트 클라우드의 주관 화질의 저감의 억제를 실현할 수 있다.
<복호 처리의 흐름>
이 경우의 복호 장치(300)에 의하여 실행되는 복호 처리의 흐름의 예를, 도 19의 흐름도를 참조하여 설명한다.
복호 처리가 개시되면 복호부(301)는, 스텝 S301에 있어서, 비트 스트림을 복호하고 신호열을 추출한다.
스텝 S302에 있어서, 복셀 데이터 생성부(302)는, 스텝 S301에 있어서 추출된 신호열로부터 복셀 데이터를 복원한다.
스텝 S303에 있어서, 포인트 클라우드화 처리부(303)는, 스텝 S302의 처리에 의하여 얻어진 복셀 데이터로부터 포인트 클라우드 데이터를 복원한다.
스텝 S304에 있어서, 포인트 클라우드화 처리부(303)는, 복원된 포인트 클라우드 데이터(복호 포인트 클라우드 데이터)를 복호 장치(300)의 외부로 출력한다.
스텝 S304의 처리가 종료되면 복호 처리가 종료된다.
<비트 스트림 복호 처리의 흐름>
다음으로, 도 19의 스텝 S301에 있어서 실행되는 비트 스트림 복호 처리의 흐름의 예를, 도 20의 흐름도를 참조하여 설명한다.
비트 스트림 복호 처리가 개시되면, 기하학 정보 복호부(321)는, 스텝 S321에 있어서, 기하학 정보의 비트 스트림을 복호한다.
스텝 S322에 있어서, 속성 정보 복호부(322)는 속성 정보의 비트 스트림을 복호한다.
스텝 S323에 있어서, 불가시 처리부(323)는, 불가시 처리를 행할지 여부를 판정한다. 불가시 속성이 부여된 포인트가 존재하고, 그 포인트에 대하여 불가시 처리를 행한다고 판정된 경우, 처리는 스텝 S324로 진행된다.
스텝 S324에 있어서, 불가시 처리부(323)는, 불가시 속성이 부여된 포인트에 대하여 불가시 처리를 행한다.
스텝 S324의 처리가 종료되면 비트 스트림 복호 처리가 종료되고, 처리는 도 19로 되돌아간다. 또한 스텝 S323에 있어서, 불가시 처리를 행하지 않는다고 판정된 경우, 스텝 S324의 처리가 생략되어 비트 스트림 복호 처리가 종료되고, 처리는 도 19로 되돌아간다.
이상과 같이 각 처리를 행함으로써 복호 장치(300)는 포인트 클라우드의 주관 화질의 저감의 억제를 실현할 수 있다.
<4. 제3 실시 형태>
<복수 속성 정보의 설정>
또한 이상에 있어서는, 하나의 포인트에 대하여 단수의 속성 정보를 설정하는 것으로 설명하였지만 이에 한정되지 않으며, 하나의 포인트에 대하여 복수의 속성 정보를 설정할 수 있도록 해도 된다.
예를 들어 도 21의 A에 도시된 바와 같이, 복셀(410)에 있어서, 커런트 포인트인 포인트(411)에 대하여, 포인트(412) 및 포인트(413)가 비교 대상 포인트로서 설정되어 있는 경우, 그 포인트(412) 및 포인트(413)의 양쪽의 속성 정보를 포인트(411)에 설정할 수 있도록 해도 된다.
그 경우, 도 21의 B에 도시되는 속성 정보(421)와 같이, 복수의 속성 정보의 각각을, 커런트 포인트로부터 보아 서로 다른 방향으로 설정하도록 해도 된다. 달리 말하면, 그 커런트 포인트에 액세스하는 방향(시점 방향)에 따라, 적용되는 속성 정보가 변화되도록 해도 된다.
또한 각 속성 정보가 적용되는 방향(달리 말하면, 적용되는 속성 정보가 전환되는 방향)을 지정할 수 있도록 해도 된다. 또한 커런트 포인트에 설정 가능한 속성 정보의 수(예를 들어 색 수)를 지정할 수 있도록 해도 된다. 예를 들어 도 22에 도시된 바와 같이, 커런트 포인트에 설정 가능한 속성 정보의 수를 나타내는 정보(num_of_color_attribute)와, 속성 정보를 전환하는 방향(축)을 나타내는 정보(arrangement_type)를 설정하도록 해도 된다.
도 22의 A는, 커런트 포인트에 두 속성 정보를 설정하는 경우의 예이다. 도 22의 A에 도시된 바와 같이, 속성 정보의 수는 동일하더라도 arrangement_type의 값에 따라, 속성 정보가 할당되는 방향이 변화된다.
도 22의 B는, 커런트 포인트에 의하여 다수의 속성 정보를 설정하는 경우의 예이다. 도 22의 B에 도시된 바와 같이, num_of_color_attribute의 값에 따라, 커런트 포인트에 설정되는 속성 정보의 수가 변화된다. 그리고 그 속성 정보의 수에 따라, 각 속성 정보가 할당되는 방향도 변화된다.
또한 경계에 있어서 속성 정보가 전환되도록 해도 되고, 경계 부근에 있어서는 그 경계의 양측의 속성 정보가 혼재(블렌드)되도록 해도 된다. 예를 들어 색 정보의 경우, 시점 방향이 바뀜에 따라 색이 점차 변화되도록 해도 된다.
또한 속성 정보를 할당하는 방향의 분할 방법은 임의이며, 상술한 예에 한정되지 않는다. 예를 들어 도 23에 도시된 바와 같이 위도 방향 및 경도 방향으로 분할하도록 해도 된다. 즉, 속성 정보를 할당하는 방향으로서, 위도 방향의 분할 수를 나타내는 정보(num_of_color_attribute_split_latitude(n_lat)), 및 경도 방향의 분할 수를 나타내는 정보(num_of_color_attribute_split_longitude(n_long))를 설정하도록 해도 된다.
도 23의 A는, 위도 방향으로 분할하는 예를 도시하고 있다. 도 23의 B는, 경도 방향으로 분할하는 예를 도시하고 있다. 위도 방향의 분할 수와 경도 방향의 분할 수는 서로 독립적으로 설정할 수 있도록 해도 된다. 또한, 예를 들어 도 23의 C에 나타나는 표와 같이, 이들 두 파라미터의 값을 통합하여 설정하는 식별 정보(#)를 마련하도록 해도 된다. 이와 같은 식별 정보를 이용함으로써, 속성 정보를 할당하는 방향의 분할 방법을 나타내기 위하여 필요한 정보량을 저감시킬 수 있다.
또한 복수의 속성 정보를 설정하는 경우, 커런트 포인트의 속성 정보를 할당 가능한 각 방향에 대하여, 상술한 하나의 속성 정보를 할당하는 경우와 마찬가지의 방법으로 속성 정보를 할당하도록 하면 된다. 예를 들어 도 24의 A에 도시된 바와 같이, 복셀(410)에 있어서, 커런트 포인트인 포인트(411)에 대하여 포인트(412) 및 포인트(413)의 속성 정보를 할당하는 경우, 포인트(411)를 기준으로 하면 포인트(412)와 포인트(413)는 서로 다른 방향에 위치한다. 따라서 이 경우, 포인트(411)의, 포인트(412)측의 방향에 대하여, 상술한 하나의 속성 정보를 할당하는 경우와 마찬가지의 방법으로 포인트(412)의 속성 정보를 할당하고, 포인트(411)의, 포인트(413)측의 방향에 대하여, 상술한 하나의 속성 정보를 할당하는 경우와 마찬가지의 방법으로 포인트(413)의 속성 정보를 할당하도록 해도 된다.
<속성 정보 갱신 처리의 흐름>
따라서 그 경우, 속성 정보 갱신부(202)는, 도 8의 경우와 마찬가지의 구성을 갖는다. 도 25의 흐름도를 참조하여 이 경우의 속성 정보 갱신 처리의 흐름의 예를 설명한다.
속성 정보 갱신 처리가 개시되면 제어부(211)는, 스텝 S401에 있어서 제어 처리를 행하고 각 처리의 방법을 결정한다. 이 제어 처리는 도 14의 경우와 마찬가지이므로 그 설명을 생략한다.
스텝 S402에 있어서, 비교 대상 탐색부(221)는, 스텝 S401에 있어서 설정된 비교 대상 결정 방법에 따라 비교 대상 포인트를 탐색한다.
스텝 S403에 있어서, 제어부(211)는 처리 대상 각도, 즉, 커런트 포인트의, 속성 정보를 설정하는 방향(커런트 방향)을 설정한다.
스텝 S404에 있어서, 속성 정보 설정부(222)는, 커런트 포인트의 커런트 방향에 속성 정보를 설정할지 여부를 판정한다. 속성 정보를 설정한다고 판정된 경우, 처리는 스텝 S405로 진행된다.
스텝 S405에 있어서, 속성 정보 설정부(222)는, 스텝 S401에 있어서 설정된 비교 방법이나 속성 결정 방법에 따라 커런트 포인트의 커런트 방향에 속성 정보를 설정한다.
스텝 S405의 처리가 종료되면 처리는 스텝 S406으로 진행된다. 또한 스텝 S404에 있어서, 예를 들어 커런트 방향에 대하여 비교 대상 포인트가 발견되지 않고 그 방향에 속성 정보를 설정하지 않는다고 판정된 경우, 처리는 스텝 S406으로 진행된다.
스텝 S406에 있어서, 예외 처리부(223)는, 예외 처리를 행할지 여부를 판정한다. 예를 들어 커런트 방향으로 비교 대상 포인트가 발견되지 않고 예외 처리를 행한다고 판정된 경우, 처리는 스텝 S407로 진행된다.
스텝 S407에 있어서, 예외 처리부(223)는, 스텝 S401에 있어서 설정된 예외 처리 방법에 따라 예외 처리를 행한다.
스텝 S407의 처리가 종료되면 처리는 스텝 S408로 진행된다. 또한 스텝 S406에 있어서, 예를 들어 커런트 방향으로 비교 대상 포인트가 발견되었고 예외 처리를 행하지 않는다고 판정된 경우, 스텝 S407의 처리가 생략되어 처리는 스텝 S408로 진행된다.
스텝 S408에 있어서, 제어부(211)는, 미처리 각도가 존재하는지 여부를 판정한다. 미처리 각도가 존재한다고 판정된 경우, 처리는 스텝 S403으로 되돌아간다. 스텝 S403에 있어서, 미처리 각도가 처리 대상으로 설정되고(커런트 방향이 갱신되고), 스텝 S404 이후의 처리가 반복된다.
이상과 같이 하여, 커런트 포인트의 속성 정보를 설정 가능한 각 방향에 대하여 스텝 S403 내지 스텝 S408의 각 처리가 실행된다.
그리고 스텝 S408에 있어서, 모든 방향에 대하여 처리가 행해졌다고 판정된 경우, 속성 정보 갱신 처리가 종료되고 처리는 도 13으로 되돌아간다.
이상과 같이 속성 정보 갱신 처리를 행함으로써 부호화 장치(100)는 포인트 클라우드의 주관 화질의 저감을 억제할 수 있다.
<5. 제4 실시 형태>
<표시 장치>
복수의 속성 정보가 설정된 포인트를 포함하는 포인트 클라우드를 표시하는 경우, 표시에 이용되는 속성 정보가 그 시점 방향에 따라 선택된다.
도 26은, 본 기술을 적용한 정보 처리 장치의 일 실시 형태인 표시 장치의 주된 구성예를 도시하는 블록도다. 도 26에 도시되는 표시 장치(500)는, 복수의 속성 정보가 설정된 포인트를 포함하는 포인트 클라우드를 표시하는 장치이다.
도 26에 도시된 바와 같이 표시 장치(500)는, 포인트 클라우드 데이터 취득부(501), 시점 방향 설정부(502), 기하학 정보 묘화부(503), 속성 정보 묘화부(504) 및 표시부(505)를 갖는다.
포인트 클라우드 데이터 취득부(501)는 표시 장치(500)의 외부로부터, 복수의 속성 정보가 설정된 포인트를 포함하는 포인트 클라우드 데이터를 취득한다. 포인트 클라우드 데이터 취득부(501)는, 취득한 포인트 클라우드 데이터를 시점 방향 설정부(502)에 공급한다.
또한 포인트 클라우드 데이터 취득부(501)는 어떠한 구성을 갖도록 해도 되지만, 예를 들어 CPU, ROM, RAM 등을 갖고, CPU가, ROM 등에 기억되어 있는 프로그램이나 데이터를 RAM에 로드하여 실행함으로써, 포인트 클라우드 데이터의 취득에 관한 처리를 행하도록 해도 된다.
시점 방향 설정부(502)는, 포인트 클라우드의 표시할 면(시점 방향)을 설정한다. 예를 들어 시점 방향 설정부(502)는, 유저 조작 등의 외부로부터의 지시 입력을 접수하고, 그 지시에 기초하여 시점 방향을 설정한다. 또한 이 시점 방향의 설정 방법은 임의이며, 예를 들어 시점 방향 설정부(502)가, 미리 정해진 소정의 패턴에 따라 시점 방향을 설정하는 등, 상술한 지시 입력 이외에 기초하여 시점 방향을 설정하도록 해도 된다. 시점 방향을 설정하면 시점 방향 설정부(502)는, 포인트 클라우드 데이터와 그 시점 방향을 나타내는 정보를 기하학 정보 묘화부(503)에 공급한다.
또한 시점 방향 설정부(502)는 어떠한 구성을 갖도록 해도 되지만, 예를 들어 CPU, ROM, RAM 등을 갖고, CPU가, ROM 등에 기억되어 있는 프로그램이나 데이터를 RAM에 로드하여 실행함으로써, 시점 방향의 설정에 관한 처리를 행하도록 해도 된다.
기하학 정보 묘화부(503)는, 설정된 시점 방향에 기초하여 포인트 클라우드 데이터의 기하학 정보를 묘화한다. 기하학 정보 묘화부(503)는, 포인트 클라우드 데이터와 그 시점 방향을 나타내는 정보와, 그 묘화 결과를 속성 정보 묘화부(504)에 공급한다.
또한 기하학 정보 묘화부(503)는 어떠한 구성을 갖도록 해도 되지만, 예를 들어 CPU, ROM, RAM 등을 갖고, CPU가, ROM 등에 기억되어 있는 프로그램이나 데이터를 RAM에 로드하여 실행함으로써, 기하학 정보의 묘화에 관한 처리를 행하도록 해도 된다.
속성 정보 묘화부(504)는, 설정된 시점 방향에 기초하여 각 포인트의 속성 정보를 선택하고, 선택한 속성 정보를 묘화한다. 속성 정보 묘화부(504)는 기하 정보 및 속성 정보의 묘화 결과를 표시부(505)에 공급한다.
또한 속성 정보 묘화부(504)는 어떠한 구성을 갖도록 해도 되지만, 예를 들어 CPU, ROM, RAM 등을 갖고, CPU가, ROM 등에 기억되어 있는 프로그램이나 데이터를 RAM에 로드하여 실행함으로써, 속성 정보의 묘화에 관한 처리를 행하도록 해도 된다.
표시부(505)는, 공급된 기하 정보 및 속성 정보의 묘화 결과를 모니터에 표시한다.
<표시 처리의 흐름>
이와 같은 표시 장치(500)에 의하여 실행되는 표시 처리의 흐름의 예를, 도 27의 흐름도를 참조하여 설명한다.
표시 처리가 개시되면 포인트 클라우드 데이터 취득부(501)는, 스텝 S502에 있어서, 포인트 클라우드 데이터를 취득한다.
스텝 S502에 있어서, 시점 방향 설정부(502)는 그 포인트 클라우드를 표시할 시점 방향을 설정한다.
스텝 S503에 있어서, 기하학 정보 묘화부(503)는, 스텝 S502에 있어서 설정된 시점 방향에 따라 포인트 클라우드 데이터의 기하학 정보를 묘화한다.
스텝 S504에 있어서, 속성 정보 묘화부(504)는, 스텝 S502에 있어서 설정된 시점 방향에 따라 속성 정보를 선택하고, 그 선택한 속성 정보를 묘화한다.
스텝 S505에 있어서, 표시부(505)는, 스텝 S503 및 스텝 S504에 있어서 묘화된 기하학 정보 및 속성 정보의 화상을 표시한다.
스텝 S505의 처리가 종료되면 표시 처리가 종료된다. 또한 포인트 클라우드를 동화상으로서 표시하는 경우, 이상의 처리가 프레임마다 반복된다.
이와 같이 함으로써 표시 장치(500)는, 시점 방향에 따른 속성 정보를 표시시킬 수 있다. 예를 들어 포인트 클라우드 데이터를 보는 방향(시점 방향)에 따라 각 포인트의 색이 변화되도록 할 수도 있다.
<6. 제5 실시 형태>
<화상 처리 장치>
이상에 있어서는, 포인트 클라우드 데이터의 부호화(양자화)에 대하여 설명하였지만, 본 기술을 적용한 속성 정보의 갱신은, 포인트 클라우드의 위치 정보가 변화되는 임의의 화상 처리에 있어서 적용할 수 있다.
도 28은, 본 기술을 적용한 정보 처리 장치의 일 실시 형태인 화상 처리 장치의 주된 구성예를 도시하는 블록도다. 도 28에 도시되는 화상 처리 장치(600)는, 입력되는 포인트 클라우드 데이터에 대하여, 위치 정보가 변화되는 소정의 화상 처리를 행하는 장치이다.
도 28에 도시된 바와 같이 화상 처리 장치(600)는 화상 처리부(601) 및 속성 정보 갱신부(602)를 갖는다.
화상 처리부(601)는 소정의 화상 처리를 행한다. 예를 들어 화상 처리부(601)는, 도 29에 도시되는 예와 같이 포인트의 보간이나 리샘플(재배치)을 행한다. 도 29의 예의 경우, 처리 전의 상태 A에 있어서의 포인트(651)가 리샘플되고, 처리 후의 상태 B에 있어서 포인트(652) 내지 포인트(654)로 변환되어 있다. 즉, 포인트 수가 증대되어 있다.
화상 처리부(601)는 처리 전후의 포인트 클라우드 데이터를 속성 정보 갱신부(602)에 공급한다.
또한 화상 처리부(601)는 어떠한 구성을 갖도록 해도 되지만, 예를 들어 CPU, ROM, RAM 등을 갖고, CPU가, ROM 등에 기억되어 있는 프로그램이나 데이터를 RAM에 로드하여 실행함으로써, 화상 처리에 관한 처리를 행하도록 해도 된다.
속성 정보 갱신부(602)는, 공급된 화상 처리 전후의 포인트 클라우드 데이터를 이용하여 속성 정보의 갱신을 행한다. 속성 정보 갱신부(602)는 속성 정보 갱신부(202)(도 8)과 마찬가지의 구성을 가지며, 마찬가지의 처리를 행한다.
이와 같이 처리 전에 존재하지 않았던 포인트를 배치하는 처리이더라도 속성 정보 갱신부(602)는, 처리 전의 포인트로부터 커런트 포인트에 대응하는 비교 대상 포인트를 탐색하므로, 상술한 양자화의 경우와 마찬가지로 위치 정보의 변화에 따라 속성 정보를 갱신할 수 있다.
<화상 처리의 흐름>
도 30의 흐름도를 참조하여, 이 화상 처리 장치(600)에 의하여 실행되는 화상 처리의 흐름의 예를 설명한다.
화상 처리가 개시되면 화상 처리부(601)는, 스텝 S601에 있어서, 기하학 정보의 갱신을 수반하는 화상 처리를 행한다.
스텝 S602에 있어서, 속성 정보 갱신부(602)는, 스텝 S601의 화상 처리에 있어서의 기하학 정보의 갱신(위치 정보의 변화)에 대응하도록 포인트 클라우드의 속성 정보를 갱신한다. 이 속성 정보 갱신 처리는, 도 14의 흐름도를 참조하여 설명한 경우와 마찬가지의 흐름으로 행해지므로 그 설명을 생략한다.
스텝 S602의 처리가 종료되면 화상 처리가 종료된다.
이상과 같이 화상 처리 장치(600)는 포인트 클라우드의 주관 화질의 저감을 억제할 수 있다.
<7. 기타>
<소프트웨어>
상술한 일련의 처리는 하드웨어에 의하여 실행시킬 수도 있고 소프트웨어에 의하여 실행시킬 수도 있다. 또한 일부의 처리를 하드웨어에 의하여 실행시키고 다른 처리를 소프트웨어에 의하여 실행시킬 수도 있다. 일련의 처리를 소프트웨어에 의하여 실행하는 경우에는, 그 소프트웨어를 구성하는 프로그램이 컴퓨터에 인스톨된다. 여기서 컴퓨터에는, 전용 하드웨어에 편입되어 있는 컴퓨터나, 각종 프로그램을 인스톨함으로써 각종 기능을 실행하는 것이 가능한, 예를 들어 범용 퍼스널 컴퓨터 등이 포함된다.
도 31은, 상술한 일련의 처리를 프로그램에 의하여 실행하는 컴퓨터의 하드웨어의 구성예를 도시하는 블록도다.
도 31에 도시하는 컴퓨터(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)가 각종 처리를 실행하는 데 있어서 필요한 데이터 등도 적절히 기억된다.
컴퓨터(CPU(901))가 실행하는 프로그램은, 예를 들어 패키지 미디어 등으로서의 리무버블 미디어(921)에 기록하여 적용할 수 있다. 그 경우, 프로그램은, 리무버블 미디어(921)를 드라이브(915)에 장착함으로써, 입출력 인터페이스(910)를 통하여 기억부(913)에 인스톨할 수 있다. 또한 이 프로그램은, 로컬 에어리어 네트워크, 인터넷, 디지털 위성 방송이라는, 유선 또는 무선 전송 매체를 통하여 제공할 수도 있다. 그 경우, 프로그램은, 통신부(914)에서 수신하여 기억부(913)에 인스톨할 수 있다. 그 외에 이 프로그램은, ROM(902)이나 기억부(913)에 미리 인스톨해 둘 수도 있다.
<보충>
본 기술의 실시 형태는 상술한 실시 형태에 한정되는 것은 아니며, 본 기술의 요지를 일탈하지 않는 범위에 있어서 다양한 변경이 가능하다.
예를 들어 본 기술은, 장치 또는 시스템을 구성하는 모든 구성, 예를 들어 시스템 LSI(Large Scale Integration) 등으로서의 프로세서, 복수의 프로세서 등을 이용하는 모듈, 복수의 모듈 등을 이용하는 유닛, 유닛에 기타의 기능을 더 부가한 세트 등(즉, 장치의 일부의 구성)으로서 실시할 수도 있다.
또한 본 명세서에 있어서 시스템이란, 복수의 구성 요소(장치, 모듈(부품) 등)의 집합을 의미하며, 모든 구성 요소가 동일 하우징 내에 있는지 여부는 불문한다. 따라서 별개의 하우징에 수납되고 네트워크를 통하여 접속되어 있는 복수의 장치, 및 하나의 하우징 내에 복수의 모듈이 수납되어 있는 하나의 장치는 모두 시스템이다.
또한 상술한 처리부는, 그 처리부에 대하여 설명한 기능을 갖도록 하면 어떠한 구성에 의하여 실현하도록 해도 된다. 예를 들어 처리부가, 임의의 회로, LSI, 시스템 LSI, 프로세서, 모듈, 유닛, 세트, 디바이스, 장치, 또는 시스템 등에 의하여 구성되도록 해도 된다. 또한 그것들을 복수 조합하도록 해도 된다. 예를 들어 복수의 회로, 복수의 프로세서 등과 같이 동일한 종류의 구성을 조합하도록 해도 되고, 회로와 LSI 등과 같이 다른 종류의 구성을 조합하도록 해도 된다.
또한, 예를 들어 하나의 장치(또는 처리부)로서 설명한 구성을 분할하여 복수의 장치(또는 처리부)로서 구성하도록 해도 된다. 반대로, 이상에 있어서 복수의 장치(또는 처리부)로서 설명한 구성을 통합하여 하나의 장치(또는 처리부)로서 구성되도록 해도 된다. 또한 각 장치(또는 각 처리부)의 구성에, 상술한 것 이외의 구성을 부가하도록 해도 물론 된다. 또한 시스템 전체로서의 구성이나 동작이 실질적으로 동일하면, 어느 장치(또는 처리부)의 구성의 일부를 다른 장치(또는 다른 처리부)의 구성에 포함시키도록 해도 된다.
또한, 예를 들어 본 기술은, 하나의 기능을, 네트워크를 통하여 복수의 장치에서 분담, 공동으로 처리하는 클라우드 컴퓨팅의 구성을 취할 수 있다.
또한, 예를 들어 상술한 프로그램은 임의의 장치에 있어서 실행할 수 있다. 그 경우, 그 장치가 필요한 기능(기능 블록 등)을 갖고 필요한 정보를 얻을 수 있도록 하면 된다.
또한, 예를 들어 상술한 흐름도에서 설명한 각 스텝은, 하나의 장치에서 실행하는 것 외에 복수의 장치에서 분담하여 실행할 수 있다. 또한 하나의 스텝에 복수의 처리가 포함되는 경우에는, 그 하나의 스텝에 포함되는 복수의 처리는, 하나의 장치에서 실행하는 것 외에 복수의 장치에서 분담하여 실행할 수 있다. 달리 말하면, 하나의 스텝에 포함되는 복수의 처리를 복수의 스텝의 처리로서 실행할 수도 있다. 반대로, 복수의 스텝으로서 설명한 처리를 하나의 스텝으로서 통합하여 실행할 수도 있다.
컴퓨터가 실행하는 프로그램은, 프로그램을 기술하는 스텝의 처리가, 본 명세서에서 설명하는 순서에 따라 시계열로 실행되도록 해도 되고, 병렬로, 혹은 호출이 행해졌을 때 등의 필요한 타이밍에 개별로 실행되도록 해도 된다. 즉, 모순이 생기지 않는 한, 각 스텝의 처리가, 상술한 순서와 다른 순서로 실행되도록 해도 된다. 또한 이 프로그램을 기술하는 스텝의 처리가, 다른 프로그램의 처리와 병렬로 실행되도록 해도 되고, 다른 프로그램의 처리와 조합하여 실행되도록 해도 된다.
본 명세서에 있어서 복수 설명한 본 기술은, 모순이 생기지 않는 한, 각각 독립적으로 단체로 실시할 수 있다. 물론 임의의 복수의 본 기술을 병용하여 실시할 수도 있다. 예를 들어 어느 실시 형태에 있어서 설명한 본 기술의 일부 또는 전부를, 다른 실시 형태에 있어서 설명한 본 기술의 일부 또는 전부와 조합하여 실시할 수도 있다. 또한 상술한 임의의 본 기술의 일부 또는 전부를, 상술하지 않은 다른 기술과 병용하여 실시할 수도 있다.
또한 본 기술은 이하와 같은 구성도 취할 수 있다.
(1) 위치 정보가 갱신되기 전의 포인트 클라우드 데이터로부터, 위치 정보가 갱신된 포인트 클라우드 데이터의 처리 대상 포인트인 커런트 포인트와 비교할 포인트인 비교 대상 포인트를 탐색하는 탐색부와,
상기 탐색부에 의하여 탐색된 상기 비교 대상 포인트와 커런트 포인트를 비교하여, 커런트 포인트의 속성 정보를 설정하는 속성 정보 설정부
를 구비하는 정보 처리 장치.
(2) 상기 탐색부는, 위치 정보가 갱신되기 전의 포인트 클라우드 데이터의, 상기 커런트 포인트에 대하여 최근방에 위치하는 포인트를 상기 비교 대상 포인트로서 선택하는,
(1)에 기재된 정보 처리 장치.
(3) 상기 탐색부는, 위치 정보가 갱신되기 전의 포인트 클라우드 데이터의, 상기 커런트 포인트에 대하여, 소정의 거리보다 가까이에 위치하고, 또한 최근방에 위치하는 포인트를 상기 비교 대상 포인트로서 선택하는,
(1) 또는 (2)에 기재된 정보 처리 장치.
(4) 상기 탐색부는, 위치 정보가 갱신되기 전의 포인트 클라우드 데이터의, 다른 알고리즘에 따라 선택되고, 또한 상기 커런트 포인트에 대하여 소정의 거리보다 가까이에 위치하는 포인트를 상기 비교 대상 포인트로서 선택하는,
(1) 내지 (3) 중 어느 것에 기재된 정보 처리 장치.
(5) 상기 속성 정보 설정부는, 위치 정보가 갱신되기 전의 포인트 클라우드 데이터로부터 위치 정보가 갱신된 포인트 클라우드 데이터를 향하는 방향의 포인트끼리의 위치 관계에 기초하여 상기 속성 정보를 설정하는,
(1) 내지 (4) 중 어느 것에 기재된 정보 처리 장치.
(6) 상기 속성 정보 설정부는, 위치 정보가 갱신된 포인트 클라우드 데이터로부터 위치 정보가 갱신되기 전의 포인트 클라우드 데이터를 향하는 방향의 포인트끼리의 위치 관계에 기초하여 상기 속성 정보를 설정하는,
(1) 내지 (5) 중 어느 것에 기재된 정보 처리 장치.
(7) 상기 속성 정보 설정부는, 위치 정보가 갱신되기 전의 포인트 클라우드 데이터로부터 위치 정보가 갱신된 포인트 클라우드 데이터를 향하는 방향과, 위치 정보가 갱신된 포인트 클라우드 데이터로부터 위치 정보가 갱신되기 전의 포인트 클라우드 데이터를 향하는 방향의 양쪽의 포인트끼리의 위치 관계에 기초하여 상기 속성 정보를 설정하는,
(1) 내지 (6) 중 어느 것에 기재된 정보 처리 장치.
(8) 상기 속성 정보 설정부는, 상기 탐색부에 의하여 탐색된 복수의 상기 비교 대상 포인트 중 어느 하나의 속성 정보를 선택하여, 상기 커런트 포인트의 속성 정보를 설정하는,
(1) 내지 (7) 중 어느 것에 기재된 정보 처리 장치.
(9) 상기 속성 정보 설정부는, 상기 탐색부에 의하여 탐색된 복수의 상기 비교 대상 포인트의 각 속성 정보의 평균을 상기 커런트 포인트의 속성 정보를 설정하는,
(1) 내지 (8) 중 어느 것에 기재된 정보 처리 장치.
(10) 상기 속성 정보 설정부는, 상기 탐색부에 의하여 탐색된 복수의 상기 비교 대상 포인트의 각 속성 정보의 가중 평균을 상기 커런트 포인트의 속성 정보를 설정하는,
(1) 내지 (9) 중 어느 것에 기재된 정보 처리 장치.
(11) 상기 가중치는, 상기 비교 대상 포인트와 상기 커런트 포인트 사이의 거리, 또는 상기 비교 대상 포인트의 속성 정보의 특징에 기초하는 계수인,
(10)에 기재된 정보 처리 장치.
(12) 상기 비교 대상 포인트가 존재하지 않는 경우에 소정의 예외 처리를 행하는 예외 처리부를 더 구비하는,
(1) 내지 (11) 중 어느 것에 기재된 정보 처리 장치.
(13) 상기 예외 처리부는, 상기 커런트 포인트의 속성 정보로서, 상기 커런트 포인트를 불가시로 하는 불가시 속성을 설정하는,
(12)에 기재된 정보 처리 장치.
(14) 상기 예외 처리부는, 상기 커런트 포인트를 부호화 대상으로부터 제외하고 재부호화시키는,
(12) 또는 (13)에 기재된 정보 처리 장치.
(15) 상기 예외 처리부는, 상기 커런트 포인트가 출현하지 않게 되도록 부호화 방법을 변경하고 재부호화시키는,
(12) 내지 (14) 중 어느 것에 기재된 정보 처리 장치.
(16) 속성 정보의 결정 방법을 제어하는 제어부를 더 구비하고,
상기 속성 정보 설정부는, 상기 제어부에 의하여 선택된 속성 정보의 결정 방법을 이용하여, 상기 커런트 포인트의 속성 정보를 설정하도록 구성되는,
(1) 내지 (15) 중 어느 것에 기재된 정보 처리 장치.
(17) 상기 제어부는, 처리 속도, 품질 및 압축 알고리즘 중 적어도 어느 하나에 기초하여, 상기 속성 정보의 결정 방법을 제어하는,
(16)에 기재된 정보 처리 장치.
(18) 상기 제어부는 또한, 상기 커런트 포인트와 상기 비교 대상 포인트의 비교 방법을 제어하고,
상기 속성 정보 설정부는, 상기 제어부에 의하여 선택된 비교 방법을 이용하여 상기 커런트 포인트와 상기 비교 대상 포인트를 비교하는,
(16) 또는 (17)에 기재된 정보 처리 장치.
(19) 상기 제어부는, 상기 비교 대상 포인트의 결정 방법을 제어하고,
상기 탐색부는, 상기 제어부에 의하여 선택된 결정 방법을 이용하여 상기 비교 대상 포인트를 결정하는,
(16) 내지 (18) 중 어느 것에 기재된 정보 처리 장치.
(20) 상기 비교 대상 포인트가 존재하지 않는 경우에 소정의 예외 처리를 행하는 예외 처리부를 더 구비하고,
상기 제어부는, 상기 예외 처리의 방법을 제어하고,
상기 예외 처리부는, 상기 제어부에 의하여 선택된 예외 처리를 행하는,
(16) 내지 (19) 중 어느 것에 기재된 정보 처리 장치.
(21) 상기 속성 정보 설정부는, 상기 커런트 포인트에 대하여 복수의 속성 정보를 설정하는,
(1) 내지 (20) 중 어느 것에 기재된 정보 처리 장치.
(22) 상기 속성 정보 설정부는, 상기 복수의 속성 정보의 각각을, 상기 커런트 포인트로부터 보아 서로 다른 방향으로 설정하는,
(21)에 기재된 정보 처리 장치.
(23) 상기 속성 정보 설정부는, 상기 커런트 포인트에 설정 가능한 속성 정보의 수를 나타내는 정보와, 속성 정보를 전환하는 방향을 나타내는 정보를 설정하는,
(22)에 기재된 정보 처리 장치.
(24) 상기 속성 정보 설정부는, 상기 속성 정보를 할당하는 방향으로서, 위도 방향 및 경도 방향의 각각의 분할 수를 나타내는 정보를 설정하는,
(22) 또는 (23)에 기재된 정보 처리 장치.
(25) 상기 위치 정보가 갱신된 포인트 클라우드 데이터는, 포인트 클라우드 데이터를 양자화한 복셀 데이터인,
(1) 내지 (24) 중 어느 것에 기재된 정보 처리 장치.
(26) 상기 속성 정보는, 색 정보, α 채널 및 법선 벡터 중 적어도 어느 하나를 포함하는,
(1) 내지 (25) 중 어느 것에 기재된 정보 처리 장치.
(27) 위치 정보가 갱신되기 전의 포인트 클라우드 데이터로부터, 위치 정보가 갱신된 포인트 클라우드 데이터의 처리 대상 포인트인 커런트 포인트와 비교할 포인트인 비교 대상 포인트를 탐색하고,
탐색된 상기 비교 대상 포인트와 커런트 포인트를 비교하여, 커런트 포인트의 속성 정보를 설정하는
정보 처리 방법.
100: 부호화 장치
101: 제어부
111: 전처리부
112: 바운딩 박스 설정부
113: 복셀 설정부
114: 신호열 생성부
115: 부호화부
201: 기하학 정보 부호화부
202: 속성 정보 갱신부
203: 속성 정보 부호화부
204: 합성부
221: 비교 대상 탐색부
222: 속성 정보 설정부
223: 예외 처리부
231: 비교 방법 설정부
232: 비교 대상 결정 방법 설정부
233: 속성 결정 방법 설정부
234: 예외 처리 방법 설정부
300: 복호 장치
301: 복호부
302: 복셀 데이터 생성부
303: 포인트 클라우드화 처리부
321: 기하학 정보 복호부
322: 속성 정보 복호부
323: 불가시 처리부
500: 표시 장치
501: 포인트 클라우드 데이터 취득부
502: 시점 방향 설정부
503: 기하학 정보 묘화부
504: 속성 정보 묘화부
505: 표시부
600: 화상 처리 장치
601: 화상 처리부
602: 속성 정보 갱신부
900: 컴퓨터

Claims (20)

  1. 위치 정보가 갱신되기 전의 포인트 클라우드 데이터로부터, 위치 정보가 갱신된 포인트 클라우드 데이터의 처리 대상 포인트인 커런트 포인트와 비교할 포인트인 비교 대상 포인트를 탐색하는 탐색부와,
    상기 탐색부에 의하여 탐색된 상기 비교 대상 포인트와 커런트 포인트를 비교하여, 커런트 포인트의 속성 정보를 설정하는 속성 정보 설정부
    를 구비하는 정보 처리 장치.
  2. 제1항에 있어서,
    상기 탐색부는, 위치 정보가 갱신되기 전의 포인트 클라우드 데이터의, 상기 커런트 포인트에 대하여 최근방에 위치하는 포인트를 상기 비교 대상 포인트로서 선택하는
    정보 처리 장치.
  3. 제1항에 있어서,
    상기 탐색부는, 위치 정보가 갱신되기 전의 포인트 클라우드 데이터의, 상기 커런트 포인트에 대하여, 소정의 거리보다 가까이에 위치하고, 또한 최근방에 위치하는 포인트를 상기 비교 대상 포인트로서 선택하는
    정보 처리 장치.
  4. 제1항에 있어서,
    상기 탐색부는, 위치 정보가 갱신되기 전의 포인트 클라우드 데이터의, 다른 알고리즘에 따라 선택되고, 또한 상기 커런트 포인트에 대하여 소정의 거리보다 가까이에 위치하는 포인트를 상기 비교 대상 포인트로서 선택하는
    정보 처리 장치.
  5. 제1항에 있어서,
    상기 속성 정보 설정부는,
    위치 정보가 갱신되기 전의 포인트 클라우드 데이터로부터 위치 정보가 갱신된 포인트 클라우드 데이터를 향하는 방향의 포인트끼리의 위치 관계,
    또는, 위치 정보가 갱신된 포인트 클라우드 데이터로부터 위치 정보가 갱신되기 전의 포인트 클라우드 데이터를 향하는 방향의 포인트끼리의 위치 관계
    에 기초하여 상기 속성 정보를 설정하는
    정보 처리 장치.
  6. 제1항에 있어서,
    상기 속성 정보 설정부는, 위치 정보가 갱신되기 전의 포인트 클라우드 데이터로부터 위치 정보가 갱신된 포인트 클라우드 데이터를 향하는 방향과, 위치 정보가 갱신된 포인트 클라우드 데이터로부터 위치 정보가 갱신되기 전의 포인트 클라우드 데이터를 향하는 방향의 양쪽의 포인트끼리의 위치 관계에 기초하여 상기 속성 정보를 설정하는
    정보 처리 장치.
  7. 제1항에 있어서,
    상기 속성 정보 설정부는, 상기 탐색부에 의하여 탐색된 복수의 상기 비교 대상 포인트 중 어느 하나의 속성 정보를 선택하여, 상기 커런트 포인트의 속성 정보를 설정하는
    정보 처리 장치.
  8. 제1항에 있어서,
    상기 속성 정보 설정부는, 상기 탐색부에 의하여 탐색된 복수의 상기 비교 대상 포인트의 각 속성 정보의 평균을 상기 커런트 포인트의 속성 정보를 설정하는
    정보 처리 장치.
  9. 제1항에 있어서,
    상기 속성 정보 설정부는, 상기 탐색부에 의하여 탐색된 복수의 상기 비교 대상 포인트의 각 속성 정보의 가중 평균을 상기 커런트 포인트의 속성 정보를 설정하는
    정보 처리 장치.
  10. 제9항에 있어서,
    상기 가중치는, 상기 비교 대상 포인트와 상기 커런트 포인트 사이의 거리, 또는 상기 비교 대상 포인트의 속성 정보의 특징에 기초하는 계수인
    정보 처리 장치.
  11. 제1항에 있어서,
    상기 비교 대상 포인트가 존재하지 않는 경우에 소정의 예외 처리를 행하는 예외 처리부를 더 구비하는
    정보 처리 장치.
  12. 제1항에 있어서,
    속성 정보의 결정 방법을 제어하는 제어부를 더 구비하고,
    상기 속성 정보 설정부는, 상기 제어부에 의하여 선택된 속성 정보의 결정 방법을 이용하여, 상기 커런트 포인트의 속성 정보를 설정하도록 구성되는
    정보 처리 장치.
  13. 제12항에 있어서,
    상기 제어부는, 처리 속도, 품질 및 압축 알고리즘 중 적어도 어느 하나에 기초하여, 상기 속성 정보의 결정 방법을 제어하는
    정보 처리 장치.
  14. 제1항에 있어서,
    상기 속성 정보 설정부는, 상기 커런트 포인트에 대하여 복수의 속성 정보를 설정하는
    정보 처리 장치.
  15. 제14항에 있어서,
    상기 속성 정보 설정부는, 상기 복수의 속성 정보의 각각을, 상기 커런트 포인트로부터 보아 서로 다른 방향으로 설정하는
    정보 처리 장치.
  16. 제15항에 있어서,
    상기 속성 정보 설정부는, 상기 커런트 포인트에 설정 가능한 속성 정보의 수를 나타내는 정보와, 속성 정보를 전환하는 방향을 나타내는 정보를 설정하는
    정보 처리 장치.
  17. 제15항에 있어서,
    상기 속성 정보 설정부는, 상기 속성 정보를 할당하는 방향으로서, 위도 방향 및 경도 방향의 각각의 분할 수를 나타내는 정보를 설정하는
    정보 처리 장치.
  18. 제1항에 있어서,
    상기 위치 정보가 갱신된 포인트 클라우드 데이터는, 포인트 클라우드 데이터를 양자화한 복셀 데이터인
    정보 처리 장치.
  19. 제1항에 있어서,
    상기 속성 정보는, 색 정보, α 채널 및 법선 벡터 중 적어도 어느 하나를 포함하는
    정보 처리 장치.
  20. 위치 정보가 갱신되기 전의 포인트 클라우드 데이터로부터, 위치 정보가 갱신된 포인트 클라우드 데이터의 처리 대상 포인트인 커런트 포인트와 비교할 포인트인 비교 대상 포인트를 탐색하고,
    탐색된 상기 비교 대상 포인트와 커런트 포인트를 비교하여, 커런트 포인트의 속성 정보를 설정하는
    정보 처리 방법.
KR1020207007802A 2017-09-29 2018-09-14 정보 처리 장치 및 방법 KR20200058398A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JPJP-P-2017-189782 2017-09-29
JP2017189782 2017-09-29
PCT/JP2018/034131 WO2019065299A1 (ja) 2017-09-29 2018-09-14 情報処理装置および方法

Publications (1)

Publication Number Publication Date
KR20200058398A true KR20200058398A (ko) 2020-05-27

Family

ID=65902295

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020207007802A KR20200058398A (ko) 2017-09-29 2018-09-14 정보 처리 장치 및 방법

Country Status (6)

Country Link
US (1) US11315320B2 (ko)
EP (1) EP3690824A4 (ko)
JP (1) JP7268599B2 (ko)
KR (1) KR20200058398A (ko)
CN (1) CN111133478A (ko)
WO (1) WO2019065299A1 (ko)

Families Citing this family (29)

* 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
US10897269B2 (en) 2017-09-14 2021-01-19 Apple Inc. Hierarchical point cloud compression
US11818401B2 (en) 2017-09-14 2023-11-14 Apple Inc. Point cloud geometry compression using octrees and binary arithmetic encoding with adaptive look-up tables
US11113845B2 (en) 2017-09-18 2021-09-07 Apple Inc. Point cloud compression using non-cubic projections and masks
US10909725B2 (en) 2017-09-18 2021-02-02 Apple Inc. Point cloud compression
US10699444B2 (en) 2017-11-22 2020-06-30 Apple Inc Point cloud occupancy map compression
US10607373B2 (en) 2017-11-22 2020-03-31 Apple Inc. Point cloud compression with closed-loop color conversion
US10909726B2 (en) 2018-04-10 2021-02-02 Apple Inc. Point cloud compression
US10909727B2 (en) 2018-04-10 2021-02-02 Apple Inc. Hierarchical point cloud compression with smoothing
US11010928B2 (en) 2018-04-10 2021-05-18 Apple Inc. Adaptive distance based point cloud compression
US10939129B2 (en) 2018-04-10 2021-03-02 Apple Inc. Point cloud compression
US11017566B1 (en) * 2018-07-02 2021-05-25 Apple Inc. Point cloud compression with adaptive filtering
US11202098B2 (en) 2018-07-05 2021-12-14 Apple Inc. Point cloud compression with multi-resolution video encoding
US11012713B2 (en) 2018-07-12 2021-05-18 Apple Inc. Bit stream structure for compressed point cloud data
US11386524B2 (en) 2018-09-28 2022-07-12 Apple Inc. Point cloud compression image padding
US11367224B2 (en) 2018-10-02 2022-06-21 Apple Inc. Occupancy map block-to-patch information compression
US11430155B2 (en) 2018-10-05 2022-08-30 Apple Inc. Quantized depths for projection point cloud compression
WO2020116619A1 (ja) * 2018-12-07 2020-06-11 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
US11057564B2 (en) 2019-03-28 2021-07-06 Apple Inc. Multiple layer flexure for supporting a moving image sensor
US20220256190A1 (en) * 2019-07-04 2022-08-11 Lg Electronics Inc. Point cloud data processing apparatus and method
US11627314B2 (en) 2019-09-27 2023-04-11 Apple Inc. Video-based point cloud compression with non-normative smoothing
US11562507B2 (en) 2019-09-27 2023-01-24 Apple Inc. Point cloud compression using video encoding with time consistent patches
US11538196B2 (en) 2019-10-02 2022-12-27 Apple Inc. Predictive coding for point cloud compression
US11895307B2 (en) 2019-10-04 2024-02-06 Apple Inc. Block-based predictive coding for point cloud compression
US11798196B2 (en) 2020-01-08 2023-10-24 Apple Inc. Video-based point cloud compression with predicted patches
US11475605B2 (en) 2020-01-09 2022-10-18 Apple Inc. Geometry encoding of duplicate points
US11615557B2 (en) 2020-06-24 2023-03-28 Apple Inc. Point cloud compression using octrees with slicing
US11620768B2 (en) 2020-06-24 2023-04-04 Apple Inc. Point cloud geometry compression using octrees with multiple scan orders
US11948338B1 (en) 2021-03-29 2024-04-02 Apple Inc. 3D volumetric content encoding using 2D videos and simplified 3D meshes

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6867774B1 (en) 2002-12-02 2005-03-15 Ngrain (Canada) Corporation Method and apparatus for transforming polygon data to voxel data for general purpose applications
CN102024097A (zh) * 2010-12-29 2011-04-20 深圳市海博科技有限公司 一种治疗计划中靶点布置优化方法和治疗计划系统
JP5570072B2 (ja) 2011-04-27 2014-08-13 京セラドキュメントソリューションズ株式会社 定着装置及びそれを備えた画像形成装置
JP5711039B2 (ja) * 2011-04-27 2015-04-30 株式会社トプコン 三次元点群位置データ処理装置、三次元点群位置データ処理方法、三次元点群位置データ処理システムおよびプログラム
JP6518517B2 (ja) 2015-05-29 2019-05-22 株式会社日立製作所 点群データモデル化装置
US20170214943A1 (en) * 2016-01-22 2017-07-27 Mitsubishi Electric Research Laboratories, Inc. Point Cloud Compression using Prediction and Shape-Adaptive Transforms
US20180310025A1 (en) * 2017-04-24 2018-10-25 Nokia Technologies Oy Method and technical equipment for encoding media content
US10867414B2 (en) * 2018-04-10 2020-12-15 Apple Inc. Point cloud attribute transfer algorithm
CN112219228A (zh) * 2018-06-08 2021-01-12 松下电器(美国)知识产权公司 三维数据编码方法、三维数据解码方法、三维数据编码装置、以及三维数据解码装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
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

Also Published As

Publication number Publication date
JP7268599B2 (ja) 2023-05-08
EP3690824A4 (en) 2020-09-23
WO2019065299A1 (ja) 2019-04-04
JPWO2019065299A1 (ja) 2020-10-22
CN111133478A (zh) 2020-05-08
EP3690824A1 (en) 2020-08-05
US11315320B2 (en) 2022-04-26
US20200279435A1 (en) 2020-09-03

Similar Documents

Publication Publication Date Title
KR20200058398A (ko) 정보 처리 장치 및 방법
JP7234925B2 (ja) 情報処理装置および方法
JP7384159B2 (ja) 画像処理装置および方法
KR102521801B1 (ko) 정보 처리 장치 및 방법
US11943457B2 (en) Information processing apparatus and method
CN111727461A (zh) 信息处理装置和方法
US20200059657A1 (en) Image processing apparatus and method
KR20220122995A (ko) 정보 처리 장치 및 방법
CN112789657A (zh) 图像处理装置和方法
JP2009246540A (ja) 符号化装置、符号化方法および符号化プログラム
JP2022047546A (ja) 情報処理装置および方法
US20230179797A1 (en) Image processing apparatus and method
EP3996045A1 (en) Information processing device and method
US11790567B2 (en) Information processing apparatus and method
US20230177735A1 (en) Information processing apparatus and method
WO2024084931A1 (ja) 情報処理装置および方法
WO2024084952A1 (ja) 情報処理装置および方法
US20220353493A1 (en) Information processing apparatus and method
Sumi et al. Lossless Image Coding Based on Probability Modeling Using Template Matching and Linear Prediction
JP6294810B2 (ja) 動画像符号化装置、動画像復号装置及びコンピュータプログラム
JP2006157267A (ja) 画像処理装置及び画像処理方法

Legal Events

Date Code Title Description
WITB Written withdrawal of application