KR102549617B1 - 3d point cloud data encoding/decoding method and apparatus - Google Patents

3d point cloud data encoding/decoding method and apparatus Download PDF

Info

Publication number
KR102549617B1
KR102549617B1 KR1020190084582A KR20190084582A KR102549617B1 KR 102549617 B1 KR102549617 B1 KR 102549617B1 KR 1020190084582 A KR1020190084582 A KR 1020190084582A KR 20190084582 A KR20190084582 A KR 20190084582A KR 102549617 B1 KR102549617 B1 KR 102549617B1
Authority
KR
South Korea
Prior art keywords
point cloud
cloud data
information
attributes
attribute
Prior art date
Application number
KR1020190084582A
Other languages
Korean (ko)
Other versions
KR20200007734A (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 한국전자통신연구원
Priority to US16/509,677 priority Critical patent/US11151748B2/en
Publication of KR20200007734A publication Critical patent/KR20200007734A/en
Application granted granted Critical
Publication of KR102549617B1 publication Critical patent/KR102549617B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • 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/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

포인트 클라우드 데이터 부호화/복호화 방법 및 장치가 개시된다. 상기 복호화 방법은 비트스트림으로부터 포인트 클라우드 데이터의 속성에 관한 정보를 복호화하는 단계, 상기 복호화된 속성에 관한 정보를 이용하여 상기 포인트 클라우드 데이터의 속성을 획득하는 단계 및 상기 획득된 속성을 이용하여 상기 포인트 클라우드 데이터를 복원하는 단계를 포함하고, 상기 속성에 관한 정보는 상기 포인트 클라우드 데이터의 속성에 대한 비트 깊이 정보를 포함할 수 있다.A point cloud data encoding/decoding method and apparatus are disclosed. The decoding method includes decoding information about properties of point cloud data from a bitstream, acquiring properties of the point cloud data using the information about the decoded properties, and using the acquired properties to determine the point cloud data. The method may include restoring cloud data, and the property-related information may include bit-depth information about the property of the point cloud data.

Figure R1020190084582
Figure R1020190084582

Description

3D 포인트 클라우드 데이터의 부호화/복호화 방법 및 장치{3D POINT CLOUD DATA ENCODING/DECODING METHOD AND APPARATUS}Method and apparatus for encoding/decoding 3D point cloud data {3D POINT CLOUD DATA ENCODING/DECODING METHOD AND APPARATUS}

본 발명은 포인트 클라우드 데이터의 부호화/복호화하는 방법 및 장치에 관한 것이다. 구체적으로, 3D 포인트 클라우드 데이터의 속성 정보의 부호화/복호화 방법 및 장치에 관한 것이다.The present invention relates to a method and apparatus for encoding/decoding point cloud data. Specifically, it relates to a method and apparatus for encoding/decoding attribute information of 3D point cloud data.

종래의 3D 포인트 클라우드 속성 정보를 부호화/복호화하는 방법은 고정 비트 깊이 처리를 수행한다. 예를 들면, 반사도 속성의 값을 16비트로 고정하여 부호화/복호화함으로써 실제 속성 정보의 범위가 16비트보다 작은 경우이거나 16비트 이하의 범위에서 압축하여야 하는 경우에 부호화/복호화 성능이 제한될 수 있다.A conventional method of encoding/decoding 3D point cloud attribute information performs fixed bit depth processing. For example, by encoding/decoding by fixing the value of the reflectivity attribute to 16 bits, encoding/decoding performance may be limited when the range of actual attribute information is smaller than 16 bits or when compression is required in the range of 16 bits or less.

또한, 종래의 방법은 준무손실/손실 압축된 속성 정보의 오류에 대한 보정을 수행하지 않는다. 예를 들면, 속성 정보는 양자화하여 압축되고 역양자화하여 복원되는데, 양자화/역양자화 과정에서 손실이 발생하여 복원된 속성 정보에 오류가 발생할 수 있다. 그러나, 상기 종래의 방법에서는 이러한 오류를 최소화하기 위한 보정이 고려되지 않는다.Also, the conventional method does not perform error correction of semi-lossless/lossy compressed attribute information. For example, attribute information is compressed by quantization and reconstructed by inverse quantization. In the process of quantization/inverse quantization, loss may occur and an error may occur in the restored attribute information. However, in the conventional method, correction for minimizing such an error is not considered.

본 발명은 3D 포인트 클라우드 속성 정보의 부호화/복호화 방법 및 장치를 제공하는 것을 목적으로 한다.An object of the present invention is to provide a method and apparatus for encoding/decoding 3D point cloud attribute information.

또한, 본 발명은 본 발명의 부호화/복호화 방법 또는 장치에 의해 생성된 비트스트림을 저장한 기록 매체를 제공하는 것을 목적으로 한다.Another object of the present invention is to provide a recording medium storing a bitstream generated by the encoding/decoding method or apparatus of the present invention.

본 발명에 따르면, 비트스트림으로부터 포인트 클라우드 데이터의 속성에 관한 정보를 복호화하는 단계; 상기 복호화된 속성에 관한 정보를 이용하여 상기 포인트 클라우드 데이터의 속성을 획득하는 단계; 및 상기 획득된 속성을 이용하여 상기 포인트 클라우드 데이터를 복원하는 단계를 포함하고, 상기 속성에 관한 정보는 상기 포인트 클라우드 데이터의 속성에 대한 비트 깊이 정보를 포함하는 포인트 클라우드 데이터 복호화 방법이 제공될 수 있다.According to the present invention, decoding information about attributes of point cloud data from a bitstream; obtaining attributes of the point cloud data by using information on the decrypted attributes; and restoring the point cloud data using the acquired attribute, wherein the information on the attribute includes bit depth information on the attribute of the point cloud data. .

일 실시예에 따른 상기 비트 깊이 정보는, 시퀀스 파라미터 세트(sequence parameter set)에서 시그널링될 수 있다.The bit depth information according to an embodiment may be signaled in a sequence parameter set.

일 실시예에 따른 상기 포인트 클라우드 데이터의 속성은, 상기 비트 깊이 정보에 기초하여 클리핑(clipping) 연산을 수행함으로써 획득될 수 있다.Attributes of the point cloud data according to an embodiment may be obtained by performing a clipping operation based on the bit depth information.

일 실시예에 따른 상기 포인트 클라우드 데이터의 속성을 획득하는 단계는, 상기 비트 깊이 정보를 이용하여 상기 포인트 클라우드 데이터의 속성의 비트 깊이를 변환하는 단계를 포함할 수 있다.Acquiring the attribute of the point cloud data according to an embodiment may include converting a bit depth of the attribute of the point cloud data using the bit depth information.

일 실시예에 따른 상기 포인트 클라우드 데이터의 속성을 획득하는 단계는, 오류 보정 테이블을 생성하는 단계; 및 상기 오류 보정 테이블을 이용하여 상기 포인트 클라우드 데이터의 속성을 획득하는 단계를 더 포함할 수 있다.Acquiring attributes of the point cloud data according to an embodiment may include generating an error correction table; and acquiring properties of the point cloud data using the error correction table.

일 실시예에 따른 상기 오류 보정 테이블을 생성하는 단계는, 상기 비트 깊이가 변환된 포인트 클라우드 데이터의 속성에 기초하여 상기 오류 보정 테이블의 첫 번째 열을 구성하는 단계; 및 상기 비트스트림을 복호화하여 상기 오류 보정 테이블의 두 번째 열을 구성할 수 있다.The generating of the error correction table may include configuring a first column of the error correction table based on attributes of point cloud data whose bit depth is converted; and decoding the bitstream to construct a second column of the error correction table.

일 실시예에 따른 상기 오류 보정 테이블의 첫 번째 열을 구성하는 단계는, 상기 비트 깊이가 변환된 포인트 클라우드 데이터의 속성값을 복원하는 단계; 상기 복원된 포인트 클라우드 데이터의 속성값들 중 중복된 값을 제거하는 단계; 및 상기 중복된 값이 제거된 속성값들을 정렬함으로써 상기 오류 보정 테이블의 첫 번째 열을 구성할 수 있다.The configuring of the first column of the error correction table may include restoring an attribute value of the point cloud data whose bit depth is converted; removing redundant values among attribute values of the restored point cloud data; The first column of the error correction table may be configured by arranging the attribute values from which the redundant values have been removed.

일 실시예에 따른 상기 오류 보정 테이블을 이용하여 상기 포인트 클라우드 데이터의 속성을 획득하는 단계는, 상기 오류 보정 테이블의 첫 번째 열의 정보와 두 번째 열의 정보를 이용하여 상기 포인트 클라우드 데이터의 속성을 복원하는 단계를 포함할 수 있다.Acquiring attributes of the point cloud data using the error correction table according to an embodiment includes restoring attributes of the point cloud data using information in a first column and information in a second column of the error correction table. steps may be included.

또한, 본 발명에 따르면, 포인트 클라우드 데이터의 속성을 입력 받는 단계; 상기 포인트 클라우드 데이터의 속성에 관한 정보를 이용하여 상기 포인트 클라우드 데이터의 속성을 부호화하는 단계; 및 상기 포인트 클라우드 데이터의 속성에 관한 정보를 비트스트림에 추가하는 단계를 포함하고, 상기 속성에 관한 정보는 상기 포인트 클라우드 데이터의 속성에 대한 비트 깊이 정보를 포함하는 포인트 클라우드 데이터 부호화 방법이 제공될 수 있다.In addition, according to the present invention, the step of receiving an attribute of the point cloud data; encoding a property of the point cloud data using information about the property of the point cloud data; and adding information about attributes of the point cloud data to a bitstream, wherein the information about attributes includes bit depth information about attributes of the point cloud data. there is.

일 실시예에 따른 상기 비트 깊이 정보는, 시퀀스 파라미터 세트(sequence parameter set)에서 시그널링될 수 있다.The bit depth information according to an embodiment may be signaled in a sequence parameter set.

일 실시예에 따른 상기 포인트 클라우드 데이터의 속성을 부호화하는 단계는, 상기 비트 깊이 정보를 이용하여 상기 포인트 클라우드 데이터의 속성의 비트 깊이를 변환하는 단계를 포함할 수 있다.Encoding the attribute of the point cloud data according to an embodiment may include converting a bit depth of the attribute of the point cloud data using the bit depth information.

일 실시예에 따른 상기 포인트 클라우드 데이터의 속성을 부호화하는 단계는, 오류 보정 테이블을 생성하는 단계; 및 상기 오류 보정 테이블을 이용하여 상기 포인트 클라우드 데이터의 속성을 부호화하는 단계를 더 포함할 수 있다.Encoding attributes of the point cloud data according to an embodiment may include generating an error correction table; and encoding attributes of the point cloud data using the error correction table.

일 실시예에 따른 상기 오류 보정 테이블을 생성하는 단계는, 상기 비트 깊이가 변환된 포인트 클라우드 데이터의 속성에 기초하여 상기 오류 보정 테이블의 첫 번째 열을 구성하는 단계; 및 상기 포인트 클라우드 데이터의 속성과 상기 비트 깊이가 변환된 포인트 클라우드 데이터의 속성에 기초하여 상기 오류 보정 테이블의 두 번째 열을 구성하는 단계를 포함할 수 있다.The generating of the error correction table may include configuring a first column of the error correction table based on attributes of point cloud data whose bit depth is converted; and constructing a second column of the error correction table based on attributes of the point cloud data and attributes of the point cloud data whose bit depth is converted.

일 실시예에 따른 상기 오류 보정 테이블의 첫 번째 열을 구성하는 단계는, 상기 비트 깊이가 변환된 포인트 클라우드 데이터의 속성값을 복원하는 단계; 상기 복원된 포인트 클라우드 데이터의 속성값들 중 중복된 값을 제거하는 단계; 및 상기 중복된 값이 제거된 속성값들을 정렬함으로써 상기 오류 보정 테이블의 첫 번째 열을 구성하는 단계를 포함할 수 있다.The configuring of the first column of the error correction table may include restoring an attribute value of the point cloud data whose bit depth is converted; removing redundant values among attribute values of the restored point cloud data; and constructing a first column of the error correction table by arranging attribute values from which duplicate values have been removed.

또한, 본 발명에 따르면, 역변환부; 및 복원부를 포함하고, 상기 역변환부는 비트스트림으로부터 포인트 클라우드 데이터의 속성에 관한 정보를 복호화하고, 상기 복원부는 상기 복호화된 속성에 관한 정보를 이용하여 상기 포인트 클라우드 데이터의 속성을 획득하고, 상기 획득된 속성을 이용하여 상기 포인트 클라우드 데이터를 복원하고, 상기 속성에 관한 정보는 상기 포인트 클라우드 데이터의 속성에 대한 비트 깊이 정보를 포함하는 포인트 클라우드 데이터 복호화 장치가 제공될 수 있다.In addition, according to the present invention, the inverse transform unit; and a restoration unit, wherein the inverse transformation unit decodes information about properties of point cloud data from a bitstream, the restoration unit obtains properties of the point cloud data using the information about the decoded properties, and the obtained An apparatus for decoding point cloud data may be provided that restores the point cloud data using attributes, and the information on the attributes includes bit depth information on attributes of the point cloud data.

일 실시예에 따른 상기 비트 깊이 정보는, 시퀀스 파라미터 세트(sequence parameter set)에서 시그널링될 수 있다.The bit depth information according to an embodiment may be signaled in a sequence parameter set.

일 실시예에 따른 상기 포인트 클라우드 데이터의 속성은, 상기 비트 깊이 정보에 기초하여 클리핑(clipping) 연산을 수행함으로써 획득될 수 있다.Attributes of the point cloud data according to an embodiment may be obtained by performing a clipping operation based on the bit depth information.

일 실시예에 따른 상기 역변환부는, 상기 비트 깊이 정보를 이용하여 상기 포인트 클라우드 데이터의 속성의 비트 깊이를 변환할 수 있다.The inverse transform unit according to an embodiment may convert a bit depth of an attribute of the point cloud data using the bit depth information.

일 실시예에 따른 포인트 클라우드 데이터 복호화 장치는, 테이블 생성부를 더 포함하고, 상기 테이블 생성부는 오류 보정 테이블을 생성하고, 상기 오류 보정 테이블을 이용하여 상기 포인트 클라우드 데이터의 속성을 획득할 수 있다.The point cloud data decoding apparatus according to an embodiment may further include a table generator, and the table generator may generate an error correction table and acquire attributes of the point cloud data using the error correction table.

또한, 본 발명에 따르면, 포인트 클라우드 데이터 복호화 장치에 의해 수신되고 복호화되어 포인트 클라우드를 복원하는데 사용되는 데이터를 저장하는 컴퓨터 판독가능한 비일시적 기록 매체에 있어서, 상기 데이터는 포인트 클라우드 데이터의 속성에 관한 정보를 포함하고, 상기 복호화된 속성에 관한 정보는 상기 포인트 클라우드 데이터의 속성을 획득하는데 이용되고, 상기 획득된 속성은 상기 포인트 클라우드 데이터를 복원하는데 이용되고, 상기 속성에 관한 정보는 상기 포인트 클라우드 데이터의 속성에 대한 비트 깊이 정보를 포함하는 것을 특징으로 하는 컴퓨터 판독가능한 비일시적 기록 매체가 제공될 수 있다.In addition, according to the present invention, in a computer-readable non-transitory recording medium storing data received and decoded by a point cloud data decoding apparatus and used for restoring a point cloud, the data is information about attributes of the point cloud data. wherein the information about the decrypted attribute is used to acquire attributes of the point cloud data, the acquired attributes are used to restore the point cloud data, and the information about the attributes is used to obtain attributes of the point cloud data. A computer-readable non-transitory recording medium characterized in that it includes bit-depth information for attributes may be provided.

본 개시에 대하여 위에서 간략하게 요약된 특징들은 후술하는 본 개시의 상세한 설명의 예시적인 양상일 뿐이며, 본 개시의 범위를 제한하는 것은 아니다.The features briefly summarized above with respect to the disclosure are merely exemplary aspects of the detailed description of the disclosure that follows, and do not limit the scope of the disclosure.

본 발명에 따르면, 3D 포인트 클라우드 속성 정보의 부호화/복호화 방법 및 장치를 제공하는 것을 목적으로 한다.According to the present invention, an object of the present invention is to provide a method and apparatus for encoding/decoding 3D point cloud attribute information.

또한, 본 발명에 따르면, 본 발명의 부호화/복호화 방법 또는 장치에 의해 생성된 비트스트림을 저장한 기록 매체를 제공하는 것을 목적으로 한다.Another object of the present invention is to provide a recording medium storing a bitstream generated by the encoding/decoding method or apparatus of the present invention.

또한, 본 발명에 따르면, 3D 포인트 클라우드 속성 정보의 부호화/복호화 효율을 향상시킬 수 있다.In addition, according to the present invention, encoding/decoding efficiency of 3D point cloud attribute information can be improved.

본 개시에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.Effects obtainable in the present disclosure are not limited to the effects mentioned above, and other effects not mentioned may be clearly understood by those skilled in the art from the description below. will be.

도 1a는 종래 부호화기의 동작을 설명하기 위한 블록도의 일 예이다.
도 1b는 종래 복호화기의 동작을 설명하기 위한 블록도의 일 예이다.
도 2a는 본 발명의 일 실시예에 따른 부호화기의 동작을 설명하기 위한 블록도이다.
도 2b는 본 발명의 일 실시예에 따른 복호화기의 동작을 설명하기 위한 블록도이다.
도 3은 본 발명의 일 실시예에 따라 부호화기에서 테이블을 생성하는 과정을 설명하기 위한 흐름도이다.
도 4는 본 발명의 일 실시예에 따라 복호화기에서 테이블을 생성하는 과정을 설명하기 위한 흐름도이다.
도 5는 내지 도 8은 본 발명의 일 실시예에 따른 3D 포인트 클라우드 속성 정보 부호화/복호화 방법 및 장치를 부호화기/복호화기에서 구현하기 위해 필요한 구문 요소(syntax element) 정보, 구문 요소의 정보의 의미(semantics), 부호화/복호화 과정을 설명하기 위한 도면이다.
도 9는 본 발명의 일 실시예에 따른 3D 포인트 클라우드 속성 정보 부호화/복호화 방법 및 장치의 동작과 종래의 부호화/복호화 방법 및 장치의 동작간의 비교 결과를 설명하기 위한 도면이다.
도 10은 본 발명의 일 실시예에 따른 포인트 클라우드 데이터 복호화 방법의 흐름도이다.
도 11은 본 발명의 일 실시예에 따른 포인트 클라우드 데이터 부호화 방법의 흐름도이다.
1A is an example of a block diagram for explaining the operation of a conventional encoder.
1B is an example of a block diagram for explaining the operation of a conventional decoder.
2A is a block diagram for explaining the operation of an encoder according to an embodiment of the present invention.
2B is a block diagram for explaining the operation of a decoder according to an embodiment of the present invention.
3 is a flowchart illustrating a process of generating a table in an encoder according to an embodiment of the present invention.
4 is a flowchart illustrating a process of generating a table in a decoder according to an embodiment of the present invention.
5 to 8 show syntax element information required to implement a method and apparatus for encoding/decoding 3D point cloud attribute information in an encoder/decoder according to an embodiment of the present invention, and the meaning of the information of the syntax element (semantics), a diagram for explaining the encoding/decoding process.
9 is a diagram for explaining a comparison result between the operation of a 3D point cloud attribute information encoding/decoding method and apparatus according to an embodiment of the present invention and the operation of a conventional encoding/decoding method and apparatus.
10 is a flowchart of a point cloud data decoding method according to an embodiment of the present invention.
11 is a flowchart of a point cloud data encoding method according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다. 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다. 후술하는 예시적 실시예들에 대한 상세한 설명은, 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 실시예를 실시할 수 있기에 충분하도록 상세히 설명된다. 다양한 실시예들은 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 실시예의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 예시적 실시예들의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다.Since the present invention can make various changes and have various embodiments, specific embodiments will be illustrated in the drawings and described in detail in the detailed description. However, this is not intended to limit the present invention to specific embodiments, and should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention. Like reference numbers in the drawings indicate the same or similar function throughout the various aspects. The shapes and sizes of elements in the drawings may be exaggerated for clarity. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS For detailed descriptions of exemplary embodiments described below, reference is made to the accompanying drawings, which illustrate specific embodiments by way of example. These embodiments are described in sufficient detail to enable those skilled in the art to practice the embodiments. It should be understood that the various embodiments are different, but need not be mutually exclusive. For example, specific shapes, structures, and characteristics described herein may be implemented in one embodiment in another embodiment without departing from the spirit and scope of the invention. Additionally, it should be understood that the location or arrangement of individual components within each disclosed embodiment may be changed without departing from the spirit and scope of the embodiment. Accordingly, the detailed description set forth below is not to be taken in a limiting sense, and the scope of the exemplary embodiments, if properly described, is limited only by the appended claims, along with all equivalents as claimed by those claims.

본 발명에서 제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.In the present invention, terms such as first and second may be used to describe various components, but the components should not be limited by the terms. These terms are only used for the purpose of distinguishing one component from another. For example, a first element may be termed a second element, and similarly, a second element may be termed a first element, without departing from the scope of the present invention. The terms and/or include any combination of a plurality of related recited items or any of a plurality of related recited items.

본 발명의 어떤 구성 요소가 다른 구성 요소에 “연결되어” 있다거나 “접속되어” 있다고 언급된 때에는, 그 다른 구성 요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있으나, 중간에 다른 구성 요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다거나 "직접 접속되어"있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.When a component of the present invention is referred to as “connected” or “connected” to another component, it may be directly connected or connected to the other component, but there may be other components in the middle. It should be understood that it may be On the other hand, when an element is referred to as “directly connected” or “directly connected” to another element, it should be understood that no other element exists in the middle.

본 발명의 실시예에 나타나는 구성부들은 서로 다른 특징적인 기능들을 나타내기 위해 독립적으로 도시되는 것으로, 각 구성부들이 분리된 하드웨어나 하나의 소프트웨어 구성단위로 이루어짐을 의미하지 않는다. 즉, 각 구성부는 설명의 편의상 각각의 구성부로 나열하여 포함한 것으로 각 구성부 중 적어도 두 개의 구성부가 합쳐져 하나의 구성부로 이루어지거나, 하나의 구성부가 복수 개의 구성부로 나뉘어져 기능을 수행할 수 있고 이러한 각 구성부의 통합된 실시예 및 분리된 실시예도 본 발명의 본질에서 벗어나지 않는 한 본 발명의 권리범위에 포함된다.Components appearing in the embodiments of the present invention are shown independently to represent different characteristic functions, and do not mean that each component is composed of separate hardware or a single software component. That is, each component is listed and included as each component for convenience of explanation, and at least two components of each component can be combined to form a single component, or one component can be divided into a plurality of components to perform a function, and each of these components can be divided into a plurality of components. Integrated embodiments and separated embodiments of components are also included in the scope of the present invention as long as they do not depart from the essence of the present invention.

본 발명에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 발명에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다. 즉, 본 발명에서 특정 구성을 “포함”한다고 기술하는 내용은 해당 구성 이외의 구성을 배제하는 것이 아니며, 추가적인 구성이 본 발명의 실시 또는 본 발명의 기술적 사상의 범위에 포함될 수 있음을 의미한다. Terms used in the present invention are only used to describe specific embodiments, and are not intended to limit the present invention. Singular expressions include plural expressions unless the context clearly dictates otherwise. In the present invention, terms such as "comprise" or "having" are intended to designate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, but one or more other features It should be understood that the presence or addition of numbers, steps, operations, components, parts, or combinations thereof is not precluded. That is, the description of "including" a specific configuration in the present invention does not exclude configurations other than the corresponding configuration, and means that additional configurations may be included in the practice of the present invention or the scope of the technical spirit of the present invention.

본 발명의 일부의 구성 요소는 본 발명에서 본질적인 기능을 수행하는 필수적인 구성 요소는 아니고 단지 성능을 향상시키기 위한 선택적 구성 요소일 수 있다. 본 발명은 단지 성능 향상을 위해 사용되는 구성 요소를 제외한 본 발명의 본질을 구현하는데 필수적인 구성부만을 포함하여 구현될 수 있고, 단지 성능 향상을 위해 사용되는 선택적 구성 요소를 제외한 필수 구성 요소만을 포함한 구조도 본 발명의 권리범위에 포함된다.Some of the components of the present invention are not essential components that perform essential functions in the present invention, but may be optional components for improving performance. The present invention can be implemented by including only components essential to implement the essence of the present invention, excluding components used for performance improvement, and a structure including only essential components excluding optional components used for performance improvement. Also included in the scope of the present invention.

이하, 도면을 참조하여 본 발명의 실시 형태에 대하여 구체적으로 설명한다. 본 명세서의 실시예를 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 명세서의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략하고, 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.EMBODIMENT OF THE INVENTION Hereinafter, embodiment of this invention is described concretely with reference to drawings. In describing the embodiments of this specification, if it is determined that a detailed description of a related known configuration or function may obscure the gist of the present specification, the detailed description will be omitted, and the same reference numerals will be used for the same components in the drawings. and duplicate descriptions of the same components are omitted.

도 1a는 종래 부호화기의 동작을 설명하기 위한 블록도의 일 예이다.1A is an example of a block diagram for explaining the operation of a conventional encoder.

도 1a는 PCC categories 1, 3의 부호화기의 실시예일 수 있다.1A may be an embodiment of an encoder of PCC categories 1 and 3.

본 발명에서 후술하는 포인트 클라우드 데이터는 3D 포인트 클라우드 데이터를 의미할 수 있다.Point cloud data to be described later in the present invention may mean 3D point cloud data.

도 1a를 참조하면, 부호화기(1)는 입력된 포인트 클라우드 데이터(100)를 위치 정보(110)와 속성 정보(120)로 나누어 부호화 할 수 있다. 위치 정보(110)는 양자화(111), 양자화 후 중복된 값들을 제거(113), 옥트리 부호화(115) 및/또는 산술 부호화(118) 과정을 거쳐 압축될 수 있다. 이때, 양자화 후 중복된 값들을 제거(113)하는 과정은 옵션으로서 반드시 수행되어야 하는 것은 아니다.Referring to FIG. 1A , the encoder 1 may divide input point cloud data 100 into location information 110 and attribute information 120 and encode them. The location information 110 may be compressed through quantization 111 , removal of redundant values after quantization 113 , octree encoding 115 , and/or arithmetic encoding 118 . At this time, the process of removing redundant values after quantization (113) is not necessarily performed as an option.

한편, 속성 정보(120)의 수는 압축 과정에서의 위치 정보(110)의 수와 1:1로 대응될 수 있다. 양자화 후 중복된 값들을 제거(113)하게 되면 위치 정보가 변할 수 있다. 예를 들어, 위치 정보의 수가 줄어들 수 있다. 따라서, 속성 정보(120)는 속성 변환기(121)를 이용하여 상기 변화된 위치 정보에 대응하는 속성 정보로 재구성될 수 있다. 예를 들어, 속성 정보(120)는 속성 변환기(121)를 이용하여 상기 줄어든 위치 정보에 대응하는 속성 정보로 재구성될 수 있다. 위치 정보는 Level of detail generation(122)을 이용하여 각 레벨 별로 그룹화하고 정렬되는데, 재구성된 속성 정보(123)는 상기 그룹화 및 정렬화 순서에 따라 Interpolation-based prediction(125)을 이용하여 압축될 수 있다. Interpolation-based prediction(125)은 인접한 속성값 간의 높은 상관관계를 이용하여 이미 압축된 속성값으로부터의 보간 기법에 기반하여 현재 속성값을 예측하고 현재 속성값과 예측 속성값의 차이값(126)을 구할 수 있다. 이후, 상기 현재 속성값과 예측 속성값의 차이값(126)은 양자화(127), 산술 부호화(118) 과정을 거쳐 압축될 수 있다.Meanwhile, the number of attribute information 120 may correspond 1:1 to the number of location information 110 in the compression process. When redundant values are removed after quantization (113), position information may be changed. For example, the number of location information may be reduced. Accordingly, the attribute information 120 may be reconstructed into attribute information corresponding to the changed location information using the attribute converter 121 . For example, the attribute information 120 may be reconstructed into attribute information corresponding to the reduced location information using the attribute converter 121 . Location information is grouped and sorted for each level using level of detail generation 122, and reconstructed attribute information 123 can be compressed using interpolation-based prediction 125 according to the grouping and sorting order. there is. Interpolation-based prediction (125) predicts the current attribute value based on the interpolation technique from the already compressed attribute value using the high correlation between adjacent attribute values, and calculates the difference (126) between the current attribute value and the predicted attribute value. can be saved Thereafter, the difference 126 between the current attribute value and the predicted attribute value may be compressed through quantization 127 and arithmetic encoding 118.

도 1b는 종래 복호화기의 동작을 설명하기 위한 블록도의 일 예이다.1B is an example of a block diagram for explaining the operation of a conventional decoder.

도 1b는 PCC categories 1, 3의 복호화기의 실시예일 수 있다.1B may be an embodiment of a decoder of PCC categories 1 and 3.

도 1b를 참조하면, 복호화기(2)는 입력된 압축 비트스트림(150)을 산술 복호화(160)를 이용하여 압축된 위치 정보(161)와 속성 정보(171)로 출력할 수 있다. 복호화기(2)는 압축된 위치 정보(161)에 대해 옥트리 복호화(162), 역양자화(164)를 이용하여 복원된 위치 정보(165)를 얻을 수 있다. 복호화기(2)는 압축된 속성 정보(171)에 대해 역양자화(172)를 수행하고 Level of detail generation(175)에 의한 레벨 별로 그룹화하고, 정렬된 순서에 따라 Inverse interpolation-based prediction(174)를 이용하여 복원된 속성 정보(177)를 얻을 수 있다. 복원된 위치 정보(165)와 이에 대응하는 복원된 속성 정보(177)를 합함으로써 포인트 클라우드 데이터를 복원(190)할 수 있다.Referring to FIG. 1B , the decoder 2 may output the compressed bitstream 150 as compressed location information 161 and attribute information 171 using arithmetic decoding 160 . The decoder 2 may obtain reconstructed position information 165 by performing octree decoding 162 and inverse quantization 164 on the compressed position information 161 . The decoder 2 performs inverse quantization (172) on the compressed attribute information (171), groups it by level by level of detail generation (175), and performs inverse interpolation-based prediction (174) according to the sorted order. The restored attribute information 177 can be obtained using Point cloud data may be restored (190) by adding the restored location information 165 and the restored attribute information 177 corresponding thereto.

도 2a는 본 발명의 일 실시예에 따른 부호화기의 동작을 설명하기 위한 블록도이다.2A is a block diagram for explaining the operation of an encoder according to an embodiment of the present invention.

도 2b는 본 발명의 일 실시예에 따른 복호화기의 동작을 설명하기 위한 블록도이다.2B is a block diagram for explaining the operation of a decoder according to an embodiment of the present invention.

도 2a를 참조하면, 도 1a의 부호화기(1)와 비교하여, 부호화기(3)는 속성 정보 부호화 과정에서 비트 깊이 기반의 변환기(230), 비트 깊이 기반의 역변환기(233) 및/또는 테이블 생성기(235)를 더 포함할 수 있다.Referring to FIG. 2A, compared to the encoder 1 of FIG. 1A, the encoder 3 includes a bit-depth-based converter 230, a bit-depth-based inverse converter 233, and/or a table generator in the process of encoding attribute information. (235) may be further included.

비트 깊이 기반의 변환기(230)는 입력되는 속성 정보를 소정의 비트 깊이로 변환할 수 있다. 상기 소정의 비트 깊이에 대한 정보는 부호화기에서 복호화기로 시그널링 될 수 있다. 또한, 상기 소정의 비트 깊이에 대한 정보는 부호화기/복호화기에서 기설정된 값을 이용하여 유도될 수 있다. 이때, 상기 소정의 비트 깊이에 대한 정보는 시퀀스 파라미터 세트(sequence parameter set)를 통해 시그널링 될 수 있다.The bit depth-based converter 230 may convert input attribute information into a predetermined bit depth. Information on the predetermined bit depth may be signaled from an encoder to a decoder. Also, information on the predetermined bit depth may be derived using a value preset in an encoder/decoder. In this case, information on the predetermined bit depth may be signaled through a sequence parameter set.

일 예로, 비트 깊이 기반의 변환기(230)는 수학식 1의 예를 이용하여 변환을 수행할 수 있다. 즉, 입력 속성에 대해 시프트 연산을 이용함으로써 변환을 수행할 수 있다.For example, the bit depth-based converter 230 may perform conversion using the example of Equation 1. That is, transformation can be performed by using shift operations on input attributes.

Figure 112019071684370-pat00001
Figure 112019071684370-pat00001

수학식 1에서 an은 입력 속성값이고,

Figure 112019071684370-pat00002
은 변환된 속성값이다. 또한, n은 포인트 수에 따른 인덱스로서, 예를 들어 포인트 클라우드 데이터가 10,000개라면 0에서 9,999의 값을 가질 수 있다. 또한, i는 입력 비트 깊이이고, d는 정해진 비트 깊이를 나타낸다. 이때, 획득시의 예를 들면, 입력된 속성 정보가 0에서 65,535의 값의 범위를 갖는 16비트인 경우에 정해진 비트 깊이 d가 8비트이면 입력된 속성 정보를 256(= 2(16-8))의 값으로 나누어 변환할 수 있고, 정해진 비트 깊이 d가 10비트이면 입력된 속성 정보를 64(= 2(16-10))의 값으로 나누어 변환할 수 있다. In Equation 1, a n is an input attribute value,
Figure 112019071684370-pat00002
is the converted attribute value. In addition, n is an index according to the number of points, and may have a value of 0 to 9,999, for example, if there are 10,000 point cloud data. In addition, i is an input bit depth, and d represents a predetermined bit depth. At this time, for example, when the input attribute information is 16 bits having a value range of 0 to 65,535 and the determined bit depth d is 8 bits, the input attribute information is 256 (= 2 (16-8) ), and if the predetermined bit depth d is 10 bits, the input attribute information can be converted by dividing by a value of 64 (= 2 (16-10) ).

비트 깊이 기반의 역변환기(233)는 정해진 비트 깊이로 변환된 속성 정보를 원래의 비트 깊이로 역변환할 수 있다. 일 예로, 비트 깊이 기반의 역변환기(233)는 수학식 2의 예를 이용하여 역변환을 수행할 수 있다. 즉, 깊이 정보에 대해 시프트 연산을 수행함으로써 속성 정보를 획득할 수 있다.The bit depth-based inverse converter 233 may inversely transform attribute information converted to a predetermined bit depth into an original bit depth. For example, the bit depth-based inverse transformer 233 may perform inverse transformation using the example of Equation 2. That is, attribute information may be obtained by performing a shift operation on depth information.

Figure 112019071684370-pat00003
Figure 112019071684370-pat00003

수학식 2에서,

Figure 112019071684370-pat00004
는 정해진 비트 깊이로 변환된 속성값이고,
Figure 112019071684370-pat00005
는 원래의 비트 깊이로 역변환된 속성값이다. 또한, n은 포인트 수에 따른 인덱스를 나타낸다. 또한, i는 원래의 비트 깊이이고, d는 정해진 비트 깊이를 나타낸다.In Equation 2,
Figure 112019071684370-pat00004
is an attribute value converted to a predetermined bit depth,
Figure 112019071684370-pat00005
is an attribute value inversely converted to the original bit depth. Also, n represents an index according to the number of points. Also, i is the original bit depth, and d represents the set bit depth.

테이블 생성기(235)는 정해진 비트 깊이 정보를 바탕으로 한 준무손실/손실 압축된 속성 정보의 복원값이 원래의 속성 정보의 값과 다를 수 있기 때문에, 상기 복원된 값이 원래의 속성 정보에 보다 더 근접할 수 있도록 보정하는 테이블을 생성할 수 있다. 여기서, 상기 준무손실/손실 압축된 속성 정보의 복원값은 비트 깊이 기반의 변환기(230), Interpolation-based prediction(225) 및/또는 양자화(227)를 포함하는 제1 과정(229)과 비트 깊이 기반의 역변환기(233)를 이용하여 획득될 수 있다. 상기 제1 과정(229) 내에는 복호화기(4)에 포함될 수 있는 역양자화(272), Inverse interpolation-based prediction(274)가 포함되어 있기 때문에, 본 개시의 부호화기(3)는 본 개시의 복호화기(4)에서 복원한 속성 정보와 동일한 정보를 얻을 수 있다.Since the restored value of the semi-lossless/lossy compressed attribute information based on the predetermined bit depth information may be different from the value of the original attribute information, the table generator 235 makes the restored value more similar to the original attribute information. You can create a table that compensates for the approximation. Here, the restored value of the semi-lossless/lossy compressed attribute information is obtained through a first process 229 including a bit depth-based converter 230, interpolation-based prediction 225, and/or quantization 227, and bit depth can be obtained using the inverse transformer 233 based on Since inverse quantization 272 and inverse interpolation-based prediction 274, which can be included in the decoder 4, are included in the first process 229, the encoder 3 of the present disclosure The same information as the attribute information restored in step (4) can be obtained.

도 3은 본 발명의 일 실시예에 따라 부호화기에서 테이블을 생성하는 과정을 설명하기 위한 흐름도이다.3 is a flowchart illustrating a process of generating a table in an encoder according to an embodiment of the present invention.

도 3에서 후술하는 부호화기의 동작은 부호화기에 포함된 테이블 생성기에서 수행될 수 있다.An operation of the encoder described later in FIG. 3 may be performed by a table generator included in the encoder.

도 2a 및 도 3을 참조하면, 단계 S310에서, 부호화기는 비트 깊이 기반의 변환기(230)에 입력되는 원래의 속성값들을 저장할 수 있다.Referring to FIGS. 2A and 3 , in step S310, the encoder may store original attribute values input to the bit depth-based converter 230.

단계 S320에서, 부호화기는 상기 제1 과정(229), 비트 깊이 기반의 역변환기(233)를 이용하여 복원된 속성값들을 저장할 수 있다.In step S320, the encoder may store the restored attribute values using the first process 229 and the bit depth-based inverse transformer 233.

단계 S330에서, 부호화기는 복원된 속성값들 중에서 중복된 값들을 제거하고 오름차순으로 정렬하여 테이블의 첫 번째 열을 구성할 수 있다. 또는, 내림차순으로 정렬할 수도 있다.In step S330, the encoder may configure the first column of the table by removing duplicated values from among the restored attribute values and arranging them in ascending order. Alternatively, you can sort in descending order.

단계 S340에서, 부호화기는 각각의 복원된 속성값과 이에 대응하는 원래 속성값들 간의 차이값들의 평균값으로 테이블의 두 번째 열을 구성할 수 있다.In step S340, the encoder may configure the second column of the table as an average value of difference values between each restored attribute value and original attribute values corresponding thereto.

부호화기에서 구성된 상기 두 개의 열의 테이블 중 첫 번째 열은 복호화기에서 재구성할 수 있는 정보이다. 따라서, 상기 첫 번째 열의 테이블 정보는 복호화기로 전달하지 않고, 두 번째 열의 테이블 정보(236)만 복호화기에 전달할 수 있다.A first column of the two-column table constructed in the encoder is information that can be reconstructed in the decoder. Accordingly, only the table information 236 of the second column may be transmitted to the decoder without transmitting the table information of the first column to the decoder.

다시 도 2b를 참조하면, 도 1b의 복호화기(2)와 비교하여, 복호화기(4)는 비트 깊이 기반의 역변환기(280), 테이블 생성기(283) 및/또는 원래의 속성 정보에 보다 더 근접할 수 있도록 비트 깊이 기반으로 역변환된 속성 정보(281)를 보정하는 보정기(284)를 더 포함할 수 있다.Referring again to FIG. 2B, compared to the decoder 2 of FIG. 1B, the decoder 4 has a bit depth-based inverse transformer 280, a table generator 283, and/or the original attribute information more A corrector 284 for correcting the inversely transformed attribute information 281 based on bit depth to be approximated may be further included.

비트 깊이 기반의 역변환기(280)는 소정의 비트 깊이로 변환된 속성 정보를 상술하였던 수학식 2를 이용하여 원래의 비트 깊이로 역변환할 수 있다.The bit-depth-based inverse converter 280 may inverse-convert the attribute information converted to a predetermined bit depth to the original bit depth using Equation 2 described above.

상기 소정의 비트 깊이에 대한 정보는 부호화기에서 복호화기로 시그널링 될 수 있다. 또한, 상기 소정의 비트 깊이에 대한 정보는 부호화기/복호화기에서 기설정된 값을 이용하여 유도될 수 있다. 이때, 상기 소정의 비트 깊이에 대한 정보는 시퀀스 파라미터 세트(sequence parameter set)를 통해 시그널링 될 수 있다. 또한, 상기 속성 정보는 상기 소정의 비트 깊이에 대한 정보에 대해 시프트 연산 등을 통해 상기 속성 정보의 상한 값을 구하고 이를 기반으로 클리핑(clipping) 연산을 수행하여 획득될 수 있다. 상기 속성 정보는 상기 소정의 비트 깊이를 통해 나타낼 수 있는 유효한 값의 범위를 알 수 있으므로, 유효 값의 범위를 벗어날 경우 이를 보정할 수 있다.Information on the predetermined bit depth may be signaled from an encoder to a decoder. Also, information on the predetermined bit depth may be derived using a value preset in an encoder/decoder. In this case, information on the predetermined bit depth may be signaled through a sequence parameter set. In addition, the attribute information may be obtained by obtaining an upper limit value of the attribute information through a shift operation or the like for the information on the predetermined bit depth and performing a clipping operation based thereon. Since the attribute information can know the range of valid values that can be represented through the predetermined bit depth, it can be corrected when it is out of the range of valid values.

도 4는 본 발명의 일 실시예에 따라 복호화기에서 테이블을 생성하는 과정을 설명하기 위한 흐름도이다.4 is a flowchart illustrating a process of generating a table in a decoder according to an embodiment of the present invention.

도 4에서 후술하는 복호화기의 동작은 복호화기에 포함된 테이블 생성기에서 수행될 수 있다.An operation of a decoder described later in FIG. 4 may be performed by a table generator included in the decoder.

도 2b 및 도 4를 참조하면, 단계 S410에서, 복호화기는 비트 깊이 기반의 역변환기(280)를 이용하여 원래의 비트 깊이로 복원된 속성값들을 저장할 수 있다.Referring to FIGS. 2B and 4 , in step S410, the decoder may store attribute values restored to the original bit depth using the bit depth based inverse transformer 280.

단계 S420에서, 복호화기는 복원된 속성값 중에서 중복된 값들을 제거하고 오름차순으로 정렬하여 테이블의 첫 번째 열을 구성할 수 있다. 또는 내림차순으로 정렬할 수도 있다.In step S420, the decoder may configure the first column of the table by removing duplicated values from among the restored attribute values and arranging them in ascending order. Or you can sort in descending order.

단계 S430에서, 복호화기는 각각의 복원된 속성값과 이에 대응하는 원래 속성값들 간의 차이값들의 평균값의 정보를 이용하여 두 번째 열을 구성할 수 있다. 복호화기는 상기 정보를 부호화기로부터 수신할 수 있다.In step S430, the decoder may construct a second column using information on average values of difference values between each restored attribute value and original attribute values corresponding thereto. A decoder may receive the information from an encoder.

복호화기는 비트 깊이 기반의 역변환기(280)를 통해 역변환된 속성 정보(281)를 찾을 수 있다. 또한, 복호화기는 테이블 생성기(283)를 통해 테이블의 첫 번째 열과 두 번째 열을 찾을 수 있다. 복호화기는 상기 역변환된 속성 정보(281)에 대해 상기 역변환된 속성 정보(281)에 대응하는 두 번째 열의 값을 더하는 보정을 수행함으로써 최종적으로 속정 정보를 복원할 수 있다. 상기 보정 동작은 보정기(284)에서 수행될 수 있다.The decoder may find attribute information 281 inversely transformed through the bit depth-based inverse transformer 280. Also, the decoder can find the first column and the second column of the table through the table generator 283. The decoder may finally restore attribute information by performing correction by adding a value of a second column corresponding to the inverse transformed attribute information 281 to the inverse transformed attribute information 281 . The correction operation may be performed by the corrector 284 .

도 5는 내지 도 8은 본 발명의 일 실시예에 따른 3D 포인트 클라우드 속성 정보 부호화/복호화 방법 및 장치를 부호화기/복호화기에서 구현하기 위해 필요한 구문 요소(syntax element) 정보, 구문 요소의 정보의 의미(semantics), 부호화/복호화 과정을 설명하기 위한 도면이다.5 to 8 show syntax element information necessary for implementing a method and apparatus for encoding/decoding 3D point cloud attribute information in an encoder/decoder according to an embodiment of the present invention, and the meaning of the information of the syntax element (semantics), a diagram for explaining the encoding/decoding process.

도 5 내지 도 8을 참조하면, 종래의 3D 포인트 클라우드 속성 정보를 압축하기 위해 필요한 부호화/복호화 과정과 비교하여, inputBitDepth, bitDepth, ect_flag, ectSize, ectElementBitDepth, signOfEctElement, ectValue 등의 구문 요소가 추가된 것을 알 수 있다. 한편, 상기 각각의 구문 요소의 명칭은 일 예이며, 실시예에 따라 달라질 수 있다.5 to 8, compared to the conventional encoding/decoding process required to compress 3D point cloud attribute information, syntax elements such as inputBitDepth, bitDepth, ect_flag, ectSize, ectElementBitDepth, signOfEctElement, and ectValue are added. Able to know. Meanwhile, the name of each syntax element is an example and may vary depending on the embodiment.

도 9는 본 발명의 일 실시예에 따른 3D 포인트 클라우드 속성 정보 부호화/복호화 방법 및 장치의 동작과 종래의 부호화/복호화 방법 및 장치의 동작간의 비교 결과를 설명하기 위한 도면이다.9 is a diagram for explaining a comparison result between the operation of a 3D point cloud attribute information encoding/decoding method and apparatus according to an embodiment of the present invention and the operation of a conventional encoding/decoding method and apparatus.

두 가지 방법 간의 비교를 위해 16비트의 반사도 속성값을 포함하고 있는 citytunnel_q1mm, tollbooth_q1mm의 서로 다른 두 가지 테스트 시퀀스를 이용하였다.For comparison between the two methods, two different test sequences, citytunnel_q1mm and tollbooth_q1mm, which contain 16-bit reflectivity attribute values, were used.

도 9에서, Sequence는 테스트 시퀀스의 이름을 의미하고, No input inputs는 각 테스트 시퀀스에 포함되어 있는 포인트 클라우드의 개수를 의미할 수 있다. Reference는 종래의 부호화/복호화 방법의 수행 결과이고, Proposed는 본 개시의 부호화/복호화 방법의 수행 결과이다. 예를 들면, 종래의 부호화/복호화 방법은 MPEG PCC Test Model Catagory 1,3 레퍼런스 소프트웨어일 수 있다. 또한, 본 개시의 부호화/복호화 방법은 MPEG PCC Test Model Catagory 1,3 레퍼런스 소프트웨어를 기반으로 도 2a 내지 도 8에서 상술한 구성들을 추가한 것일 수 있다.In FIG. 9 , Sequence may mean the name of a test sequence, and No input inputs may mean the number of point clouds included in each test sequence. Reference is the performance result of the conventional encoding/decoding method, and Proposed is the performance result of the encoding/decoding method of the present disclosure. For example, a conventional encoding/decoding method may be MPEG PCC Test Model Category 1,3 reference software. In addition, the encoding/decoding method of the present disclosure may be based on MPEG PCC Test Model Category 1 and 3 reference software with the above-described configurations in FIGS. 2A to 8 added.

Encoded size는 반사도 속성 정보를 압축한 결과로서, 예를 들어 citytunnel_q1mm 테스트 시퀀스의 경우, Encoded size가 171672112 비트이면 압축 이전에 테스트 시퀀스가 포함하고 있는 반사도 속성의 정보량은 19948121 곱하기 16 비트로서 319169936 비트이다. 따라서, 종래의 부호화/복호화 방법을 이용하면 171672112 나누기 319169936인 대략 54%의 압축율을 가질 수 있다. Bits per input point(bpp)는 압축된 포인트당 비트 수로서, 예를 들어 citytunnel_q1mm 테스트 시퀀스의 경우, Encoded size가 171672112 비트이면 bpp는 171672112 나누기 19948121로서 8.61 bpp이다. 8.61 bpp는 압축 이전의 포인트 당 16비트 속성 정보가 8.61 비트로 압축되었음을 의미할 수 있다. Reflectance PSNR은 압축 이전의 테스트 시퀀스와 부호화기/복호화기를 통해 압축하고 복원된 시퀀스의 차이를 측정한 값으로서, PSNR의 값이 높을수록 원본 데이터와의 차이가 작기 때문에 복원된 시퀀스가 압축 이전의 시퀀스에 더 유사하게 복원되었다는 것을 의미할 수 있다.Encoded size is the result of compressing reflectivity attribute information. For example, in the case of the citytunnel_q1mm test sequence, if the encoded size is 171672112 bits, the amount of information of the reflectivity attribute included in the test sequence before compression is 19948121 times 16 bits, which is 319169936 bits. Therefore, using the conventional encoding/decoding method, a compression rate of approximately 54%, which is 171672112 divided by 319169936, can be achieved. Bits per input point (bpp) is the number of bits per compressed point. For example, in the case of the citytunnel_q1mm test sequence, if the encoded size is 171672112 bits, bpp is 171672112 divided by 19948121, which is 8.61 bpp. 8.61 bpp may mean that 16-bit attribute information per point before compression is compressed to 8.61 bits. Reflectance PSNR is a value that measures the difference between the test sequence before compression and the sequence compressed and restored through the encoder/decoder. The higher the value of PSNR, the smaller the difference from the original data, so the restored sequence matches the sequence before compression. It can mean that it has been restored more similarly.

도 9를 참조하면, 본 개시의 부호화/복호화 방법은 종래의 압축 방법과 비교하여 속성 정보의 압축율과 PSNR이 향상되었음을 알 수 있다. 본 개시의 부호화/복호화 방법은 속성 정보의 소정의 비트 깊이 정보를 이용할 수 있고, 준무손실/손실 압축된 속성 정보의 오류를 보정할 수 있다. Referring to FIG. 9 , it can be seen that the encoding/decoding method of the present disclosure improves the compression ratio and PSNR of attribute information compared to the conventional compression method. The encoding/decoding method of the present disclosure may use predetermined bit depth information of attribute information and correct errors in semi-lossless/lossy compressed attribute information.

일 예로, 종래의 부호화/복호화 방법의 경우 8.61 bpp로 압축하였을 때 PSNR이 76.16 dB이었지만, 본 개시의 부호화/복호화 방법의 경우 상기 종래의 부호화/복호화 방법에 비하여 압축율이 높은 5.03 bpp로 압축하였을 때 PSNR이 inf(infinity)가 측정되었다. 여기서, inf는 압축 이전의 시퀀스와 복원된 시퀀스가 차이가 없이 완전히 일치함을 의미할 수 있다. 또한, 종래의 부호화/복호화 방법의 경우 4.07 bpp로 압축하였을 때 PSNR이 50.98 dB이었지만, 본 개시의 부호화/복호화 방법의 경우 상기 종래의 부호화/복호화 방법에 비하여 압축율이 높은 4.02 bpp로 압축하였음에도 PSNR은 54.24로 더 높게 측정되었다.For example, in the case of the conventional encoding/decoding method, the PSNR was 76.16 dB when compressed to 8.61 bpp, but in the case of the encoding/decoding method of the present disclosure, when compressed to 5.03 bpp, which has a higher compression ratio than the conventional encoding/decoding method PSNR was measured inf (infinity). Here, inf may mean that the sequence before compression and the restored sequence completely match without a difference. In addition, in the case of the conventional encoding / decoding method, the PSNR was 50.98 dB when compressed to 4.07 bpp, but in the case of the encoding / decoding method of the present disclosure, the PSNR is compressed to 4.02 bpp, which has a higher compression rate than the conventional encoding / decoding method It was measured higher at 54.24.

도 10은 본 발명의 일 실시예에 따른 포인트 클라우드 데이터 복호화 방법의 흐름도이다.10 is a flowchart of a point cloud data decoding method according to an embodiment of the present invention.

단계 S1001에서, 비트스트림으로부터 포인트 클라우드 데이터의 속성에 관한 정보를 복호화할 수 있다.In step S1001, information about attributes of point cloud data may be decoded from the bitstream.

한편, 상기 속성에 관한 정보는 상기 포인트 클라우드 데이터의 속성에 대한 비트 깊이 정보를 포함할 수 있다.Meanwhile, the information about the attribute may include bit depth information about the attribute of the point cloud data.

여기서, 상기 비트 깊이 정보는, 시퀀스 파라미터 세트(sequence parameter set)에서 시그널링될 수 있다.Here, the bit depth information may be signaled in a sequence parameter set.

단계 S1002에서, 복호화된 속성에 관한 정보를 이용하여 포인트 클라우드 데이터의 속성을 획득할 수 있다.In step S1002, attributes of point cloud data may be acquired using information on decoded attributes.

이때, 상기 포인트 클라우드 데이터의 속성은, 상기 비트 깊이 정보에 기초하여 클리핑(clipping) 연산을 수행함으로써 획득될 수 있다.In this case, the attribute of the point cloud data may be obtained by performing a clipping operation based on the bit depth information.

한편, 상기 포인트 클라우드 데이터의 속성을 획득하는 것은, 비트 깊이 정보를 이용하여 포인트 클라우드 데이터의 속성의 비트 깊이를 변환하는 것을 포함할 수 있다.Meanwhile, acquiring the attribute of the point cloud data may include converting a bit depth of the attribute of the point cloud data using bit depth information.

한편, 상기 포인트 클라우드 데이터의 속성을 획득하는 것은, 오류 보정 테이블을 생성하고, 오류 보정 테이블을 이용하여 포인트 클라우드 데이터의 속성을 획득하는 것을 포함할 수 있다.Meanwhile, acquiring the attributes of the point cloud data may include generating an error correction table and acquiring attributes of the point cloud data using the error correction table.

한편, 상기 오류 보정 테이블을 생성하는 것은, 비트 깊이가 변환된 포인트 클라우드 데이터의 속성에 기초하여 오류 보정 테이블의 첫 번째 열을 구성하고, 비트스트림을 복호화하여 오류 보정 테이블의 두 번째 열을 구성하는 것을 포함할 수 있다.On the other hand, generating the error correction table configures the first column of the error correction table based on the attribute of point cloud data whose bit depth is converted, and configures the second column of the error correction table by decoding the bitstream. may include

한편, 상기 오류 보정 테이블의 첫 번째 열을 구성하는 것은, 비트 깊이가 변환된 포인트 클라우드 데이터의 속성값을 복원하고, 복원된 포인트 클라우드 데이터의 속성값들 중 중복된 값을 제거하고, 중복된 값이 제거된 속성값들을 정렬함으로써 상기 오류 보정 테이블의 첫 번째 열을 구성하는 것을 포함할 수 있다.Meanwhile, constructing the first column of the error correction table restores attribute values of point cloud data whose bit depth is converted, removes duplicate values among attribute values of the restored point cloud data, and removes duplicate values. and configuring the first column of the error correction table by sorting the removed attribute values.

한편, 상기 오류 보정 테이블을 이용하여 상기 포인트 클라우드 데이터의 속성을 획득하는 것은, 오류 보정 테이블의 첫 번째 열의 정보와 두 번째 열의 정보를 이용하여 포인트 클라우드 데이터의 속성을 복원하는 것을 포함할 수 있다.Meanwhile, acquiring the attribute of the point cloud data using the error correction table may include restoring the attribute of the point cloud data using information in a first column and information in a second column of the error correction table.

단계 S1003에서, 획득된 속성을 이용하여 포인트 클라우드 데이터를 복원할 수 있다.In step S1003, point cloud data may be restored using the acquired attributes.

도 11은 본 발명의 일 실시예에 따른 포인트 클라우드 데이터 부호화 방법의 흐름도이다.11 is a flowchart of a point cloud data encoding method according to an embodiment of the present invention.

단계 S1101에서, 포인트 클라우드 데이터의 속성을 입력 받을 수 있다.In step S1101, attributes of point cloud data may be input.

한편, 상기 속성에 관한 정보는 포인트 클라우드 데이터의 속성에 대한 비트 깊이 정보를 포함할 수 있다.Meanwhile, the attribute information may include bit depth information on attributes of point cloud data.

여기서, 상기 비트 깊이 정보는, 시퀀스 파라미터 세트(sequence parameter set)에서 시그널링될 수 있다.Here, the bit depth information may be signaled in a sequence parameter set.

단계 S1102에서, 포인트 클라우드 데이터의 속성에 관한 정보를 이용하여 상기 포인트 클라우드 데이터의 속성을 부호화할 수 있다.In step S1102, attributes of the point cloud data may be encoded using information about attributes of the point cloud data.

한편, 상기 포인트 클라우드 데이터의 속성을 부호화하는 것은, 비트 깊이 정보를 이용하여 포인트 클라우드 데이터의 속성의 비트 깊이를 변환하는 것을 포함할 수 있다.Meanwhile, encoding the attribute of the point cloud data may include converting the bit depth of the attribute of the point cloud data using bit depth information.

한편, 상기 포인트 클라우드 데이터의 속성을 부호화하는 것은, 오류 보정 테이블을 생성하고, 오류 보정 테이블을 이용하여 포인트 클라우드 데이터의 속성을 부호화하는 것을 포함할 수 있다.Meanwhile, encoding the attribute of the point cloud data may include generating an error correction table and encoding the attribute of the point cloud data using the error correction table.

한편, 상기 오류 보정 테이블을 생성하는 것은, 비트 깊이가 변환된 포인트 클라우드 데이터의 속성에 기초하여 오류 보정 테이블의 첫 번째 열을 구성하고, 포인트 클라우드 데이터의 속성과 비트 깊이가 변환된 포인트 클라우드 데이터의 속성에 기초하여 오류 보정 테이블의 두 번째 열을 구성하는 것을 포함할 수 있다.On the other hand, generating the error correction table configures the first column of the error correction table based on the attribute of the point cloud data whose bit depth is converted, and the attribute of the point cloud data and the point cloud data whose bit depth is converted. Constructing the second column of the error correction table based on the attribute.

한편, 상기 오류 보정 테이블의 첫 번째 열을 구성하는 것은, 비트 깊이가 변환된 포인트 클라우드 데이터의 속성값을 복원하고, 복원된 포인트 클라우드 데이터의 속성값들 중 중복된 값을 제거하고, 중복된 값이 제거된 속성값들을 정렬함으로써 오류 보정 테이블의 첫 번째 열을 구성하는 것을 포함할 수 있다.Meanwhile, constructing the first column of the error correction table restores attribute values of point cloud data whose bit depth is converted, removes duplicate values among attribute values of the restored point cloud data, and removes duplicate values. and constructing the first column of an error correction table by sorting these removed attribute values.

본 발명에 따르면, 3D 포인트 클라우드 속성 정보의 부호화/복호화 방법 및 장치가 제공될 수 있다.According to the present invention, a method and apparatus for encoding/decoding 3D point cloud attribute information may be provided.

또한, 본 발명에 따르면, 본 발명의 부호화/복호화 방법 또는 장치에 의해 생성된 비트스트림을 저장한 기록 매체가 제공될 수 있다.In addition, according to the present invention, a recording medium storing a bitstream generated by the encoding/decoding method or apparatus of the present invention may be provided.

또한, 본 발명에 따르면, 3D 포인트 클라우드 속성 정보의 부호화/복호화 효율을 향상시킬 수 있다.In addition, according to the present invention, encoding/decoding efficiency of 3D point cloud attribute information can be improved.

또한, 본 발명에 따르면, 속성 정보의 소정의 비트 깊이 정보를 이용함으로써 압축 성능이 향상될 수 있다. 예를 들면, 16비트 속성의 값은 0에서 65,535의 범위를 가지고 65,536개의 정보가 포함될 수 있다. 이때, 실제 속성 정보의 범위가 16비트 보다 작은 경우, 0에서 65,535의 범위 중에서 256개의 정보만 사용한다면 속성 정보의 깊이를 8비트 깊이로 변환함으로써 압축 시 비트스트림의 크기를 줄일 수 있다.Also, according to the present invention, compression performance can be improved by using predetermined bit depth information of attribute information. For example, the value of a 16-bit attribute has a range of 0 to 65,535 and may include 65,536 pieces of information. In this case, if the actual attribute information range is smaller than 16 bits, and only 256 pieces of information in the range of 0 to 65,535 are used, the size of the bit stream during compression can be reduced by converting the depth of the attribute information to an 8-bit depth.

또한, 본 발명에 따르면, 준무손실/손실 압축된 속성 정보의 오류를 보정할 수 있다. 소정의 비트 깊이 정보에 기초하여 준무손실/손실 압축된 속성 정보의 복원값이 원래 속성 정보의 값과 다를 수 있다.Also, according to the present invention, errors in semi-lossless/lossy compressed attribute information can be corrected. A restored value of semi-lossless/lossy compressed attribute information based on predetermined bit depth information may be different from a value of original attribute information.

상기 보정은 다음과 같이 수행될 수 있다. 부호화기는 입력된 원본 속성에 대한 압축 후 복원된 속성값을 구할 수 있다. 부호화기는 복원된 속성값의 중복성을 제거하여 테이블의 첫 번째 열을 구성할 수 있다. 부호화기는 첫 번째의 각 복원된 속성값에 대응하는 원본 속성값들 간에 차이값들의 평균을 구함으로써 테이블의 두 번째 열을 구성할 수 있다. 부호화기는 상기 구성된 열에 대한 정보를 복호화기에 전송할 수 있다. 한편, 복호화기는 복원된 속성을 구하고 중복성을 제거함으로써 테이블의 첫 번째 열을 구성할 수 있다. 복호화기는 부호화기로부터 수신된 각 복원된 속성값에 대응하는 원본 속성값들 간에 차이값들의 평균값을 이용하여 두 번째 열을 구성할 수 있다. 복호화기는 완성된 테이블을 이용하여 역변환된 속성 정보와 상기 평균값을 더함으로써 오류를 보정할 수 있다.The correction may be performed as follows. The encoder may obtain a restored attribute value after compressing the input original attribute. The encoder may form the first column of the table by removing redundancy of the restored attribute values. The encoder may construct the second column of the table by obtaining an average of difference values between original attribute values corresponding to each first restored attribute value. The encoder may transmit information about the configured column to the decoder. On the other hand, the decoder can construct the first column of the table by obtaining the restored attributes and removing redundancy. The decoder may construct a second column using an average value of difference values between original attribute values corresponding to each restored attribute value received from the encoder. The decoder may correct the error by adding the inverse transformed attribute information and the average value using the completed table.

상술한 실시예들에서, 방법들은 일련의 단계 또는 유닛으로서 순서도를 기초로 설명되고 있으나, 본 발명은 단계들의 순서에 한정되는 것은 아니며, 어떤 단계는 상술한 바와 다른 단계와 다른 순서로 또는 동시에 발생할 수 있다. 또한, 당해 기술 분야에서 통상의 지식을 가진 자라면 순서도에 나타난 단계들이 배타적이지 않고, 다른 단계가 포함되거나, 순서도의 하나 또는 그 이상의 단계가 본 발명의 범위에 영향을 미치지 않고 삭제될 수 있음을 이해할 수 있을 것이다.In the foregoing embodiments, the methods are described on the basis of a flow chart as a series of steps or units, but the present invention is not limited to the order of steps, and some steps may occur in a different order or concurrently with other steps as described above. can In addition, those skilled in the art will understand that the steps shown in the flow chart are not exclusive, that other steps may be included, or that one or more steps of the flow chart may be deleted without affecting the scope of the present invention. You will understand.

상술한 실시예는 다양한 양태의 예시들을 포함한다. 다양한 양태들을 나타내기 위한 모든 가능한 조합을 기술할 수는 없지만, 해당 기술 분야의 통상의 지식을 가진 자는 다른 조합이 가능함을 인식할 수 있을 것이다. 따라서, 본 발명은 이하의 특허청구범위 내에 속하는 모든 다른 교체, 수정 및 변경을 포함한다고 할 것이다.The foregoing embodiment includes examples of various aspects. It is not possible to describe all possible combinations to represent the various aspects, but those skilled in the art will recognize that other combinations are possible. Accordingly, it is intended that the present invention cover all other substitutions, modifications and variations falling within the scope of the following claims.

이상 설명된 본 발명에 따른 실시예들은 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Embodiments according to the present invention described above may be implemented in the form of program instructions that can be executed through various computer components and recorded on a computer-readable recording medium. The computer readable recording medium may include program instructions, data files, data structures, etc. alone or in combination. Program instructions recorded on the computer-readable recording medium may be specially designed and configured for the present invention, or may be known and usable to those skilled in the art of computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks and magnetic tapes, optical recording media such as CD-ROMs and DVDs, and magneto-optical media such as floptical disks. media), and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include high-level language codes that can be executed by a computer using an interpreter or the like as well as machine language codes such as those produced by a compiler. The hardware device may be configured to act as one or more software modules to perform processing according to the present invention and vice versa.

이상에서 본 발명이 구체적인 구성요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나, 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명이 상기 실시예들에 한정되는 것은 아니며, 본 발명이 속하는 기술분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형을 꾀할 수 있다.In the above, the present invention has been described by specific details such as specific components and limited embodiments and drawings, but these are provided to help a more general understanding of the present invention, and the present invention is not limited to the above embodiments. , Those skilled in the art to which the present invention pertains may seek various modifications and variations from these descriptions.

따라서, 본 발명의 사상은 상기 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등하게 또는 등가적으로 변형된 모든 것들은 본 발명의 사상의 범주에 속한다고 할 것이다.Therefore, the spirit of the present invention should not be limited to the above-described embodiments, and not only the claims described later, but also all modifications equivalent or equivalent to these claims belong to the scope of the spirit of the present invention. will do it

Claims (20)

비트스트림으로부터 포인트 클라우드 데이터의 속성에 관한 정보를 복호화하는 단계;
상기 복호화된 속성에 관한 정보를 이용하여 상기 포인트 클라우드 데이터의 속성을 획득하는 단계; 및
상기 획득된 속성을 이용하여 상기 포인트 클라우드 데이터를 복원하는 단계를 포함하고,
상기 속성에 관한 정보는 상기 포인트 클라우드 데이터의 반사도에 대한 비트 깊이 정보를 포함하는 포인트 클라우드 데이터 복호화 방법.
Decoding information about attributes of point cloud data from a bitstream;
obtaining attributes of the point cloud data by using information on the decrypted attributes; and
Restoring the point cloud data using the acquired attributes;
The information about the attribute includes bit depth information about the reflectivity of the point cloud data.
제1항에 있어서,
상기 비트 깊이 정보는, 시퀀스 파라미터 세트(sequence parameter set)에서 시그널링되는 포인트 클라우드 데이터 복호화 방법.
According to claim 1,
The bit depth information is signaled in a sequence parameter set.
제1항에 있어서,
상기 포인트 클라우드 데이터의 속성은, 상기 비트 깊이 정보에 기초하여 클리핑(clipping) 연산을 수행함으로써 획득되는 포인트 클라우드 데이터 복호화 방법.
According to claim 1,
Attributes of the point cloud data are obtained by performing a clipping operation based on the bit depth information.
비트스트림으로부터 포인트 클라우드 데이터의 속성에 관한 정보를 복호화하는 단계;
상기 복호화된 속성에 관한 정보를 이용하여 상기 포인트 클라우드 데이터의 속성을 획득하는 단계; 및
상기 획득된 속성을 이용하여 상기 포인트 클라우드 데이터를 복원하는 단계를 포함하고,
상기 속성에 관한 정보는 상기 포인트 클라우드 데이터의 속성에 대한 비트 깊이 정보를 포함하고,
상기 포인트 클라우드 데이터의 속성을 획득하는 단계는,
상기 비트 깊이 정보를 이용하여 상기 포인트 클라우드 데이터의 속성의 비트 깊이를 변환하는 단계를 포함하는 포인트 클라우드 데이터 복호화 방법.
Decoding information about attributes of point cloud data from a bitstream;
obtaining attributes of the point cloud data by using information on the decrypted attributes; and
Restoring the point cloud data using the acquired attributes;
The information about the attribute includes bit depth information about the attribute of the point cloud data,
Acquiring the properties of the point cloud data,
and converting a bit depth of an attribute of the point cloud data using the bit depth information.
제4항에 있어서,
상기 포인트 클라우드 데이터의 속성을 획득하는 단계는,
오류 보정 테이블을 생성하는 단계; 및
상기 오류 보정 테이블을 이용하여 상기 포인트 클라우드 데이터의 속성을 획득하는 단계를 더 포함하는 포인트 클라우드 데이터 복호화 방법.
According to claim 4,
Acquiring the properties of the point cloud data,
generating an error correction table; and
The point cloud data decoding method further comprising acquiring attributes of the point cloud data using the error correction table.
제5항에 있어서,
상기 오류 보정 테이블을 생성하는 단계는,
상기 비트 깊이가 변환된 포인트 클라우드 데이터의 속성에 기초하여 상기 오류 보정 테이블의 첫 번째 열을 구성하는 단계; 및
상기 비트스트림을 복호화하여 상기 오류 보정 테이블의 두 번째 열을 구성하는 단계를 포함하는 포인트 클라우드 데이터 복호화 방법.
According to claim 5,
The step of generating the error correction table,
constructing a first column of the error correction table based on attributes of the bit-depth-converted point cloud data; and
and constructing a second column of the error correction table by decoding the bitstream.
제6항에 있어서,
상기 오류 보정 테이블의 첫 번째 열을 구성하는 단계는,
상기 비트 깊이가 변환된 포인트 클라우드 데이터의 속성값을 복원하는 단계;
상기 복원된 포인트 클라우드 데이터의 속성값들 중 중복된 값을 제거하는 단계; 및
상기 중복된 값이 제거된 속성값들을 정렬함으로써 상기 오류 보정 테이블의 첫 번째 열을 구성하는 단계를 포함하는 포인트 클라우드 데이터 복호화 방법.
According to claim 6,
The step of constructing the first column of the error correction table,
restoring attribute values of the point cloud data whose bit depth is converted;
removing redundant values among attribute values of the restored point cloud data; and
and constructing a first column of the error correction table by arranging attribute values from which the redundant values have been removed.
제6항에 있어서,
상기 오류 보정 테이블을 이용하여 상기 포인트 클라우드 데이터의 속성을 획득하는 단계는,
상기 오류 보정 테이블의 첫 번째 열의 정보와 두 번째 열의 정보를 이용하여 상기 포인트 클라우드 데이터의 속성을 복원하는 단계를 포함하는 포인트 클라우드 데이터 복호화 방법.
According to claim 6,
Acquiring attributes of the point cloud data using the error correction table,
and restoring attributes of the point cloud data using information in a first column and information in a second column of the error correction table.
포인트 클라우드 데이터의 속성을 입력 받는 단계;
상기 포인트 클라우드 데이터의 속성에 관한 정보를 이용하여 상기 포인트 클라우드 데이터의 속성을 부호화하는 단계; 및
상기 포인트 클라우드 데이터의 속성에 관한 정보를 비트스트림에 추가하는 단계를 포함하고,
상기 속성에 관한 정보는 상기 포인트 클라우드 데이터의 반사도에 대한 비트 깊이 정보를 포함하는 포인트 클라우드 데이터 부호화 방법.
Receiving attributes of point cloud data;
encoding a property of the point cloud data using information about the property of the point cloud data; and
Adding information about attributes of the point cloud data to a bitstream;
The information about the attribute includes bit depth information about the reflectivity of the point cloud data.
제9항에 있어서,
상기 비트 깊이 정보는, 시퀀스 파라미터 세트(sequence parameter set)에서 시그널링되는 포인트 클라우드 데이터 부호화 방법.
According to claim 9,
The bit depth information is signaled in a sequence parameter set.
포인트 클라우드 데이터의 속성을 입력 받는 단계;
상기 포인트 클라우드 데이터의 속성에 관한 정보를 이용하여 상기 포인트 클라우드 데이터의 속성을 부호화하는 단계; 및
상기 포인트 클라우드 데이터의 속성에 관한 정보를 비트스트림에 추가하는 단계를 포함하고,
상기 속성에 관한 정보는 상기 포인트 클라우드 데이터의 속성에 대한 비트 깊이 정보를 포함하고,
상기 포인트 클라우드 데이터의 속성을 부호화하는 단계는,
상기 비트 깊이 정보를 이용하여 상기 포인트 클라우드 데이터의 속성의 비트 깊이를 변환하는 단계를 포함하는 포인트 클라우드 데이터 부호화 방법.
Receiving attributes of point cloud data;
encoding a property of the point cloud data using information about the property of the point cloud data; and
Adding information about attributes of the point cloud data to a bitstream;
The information about the attribute includes bit depth information about the attribute of the point cloud data,
The step of encoding the attribute of the point cloud data,
and converting a bit depth of an attribute of the point cloud data using the bit depth information.
제11항에 있어서,
상기 포인트 클라우드 데이터의 속성을 부호화하는 단계는,
오류 보정 테이블을 생성하는 단계; 및
상기 오류 보정 테이블을 이용하여 상기 포인트 클라우드 데이터의 속성을 부호화하는 단계를 더 포함하는 포인트 클라우드 데이터 부호화 방법.
According to claim 11,
The step of encoding the attribute of the point cloud data,
generating an error correction table; and
The method of encoding point cloud data further comprising encoding attributes of the point cloud data using the error correction table.
제12항에 있어서,
상기 오류 보정 테이블을 생성하는 단계는,
상기 비트 깊이가 변환된 포인트 클라우드 데이터의 속성에 기초하여 상기 오류 보정 테이블의 첫 번째 열을 구성하는 단계; 및
상기 포인트 클라우드 데이터의 속성과 상기 비트 깊이가 변환된 포인트 클라우드 데이터의 속성에 기초하여 상기 오류 보정 테이블의 두 번째 열을 구성하는 단계를 포함하는 포인트 클라우드 데이터 부호화 방법.
According to claim 12,
The step of generating the error correction table,
constructing a first column of the error correction table based on attributes of the bit-depth-converted point cloud data; and
and constructing a second column of the error correction table based on attributes of the point cloud data and attributes of the point cloud data whose bit depth is converted.
제13항에 있어서,
상기 오류 보정 테이블의 첫 번째 열을 구성하는 단계는,
상기 비트 깊이가 변환된 포인트 클라우드 데이터의 속성값을 복원하는 단계;
상기 복원된 포인트 클라우드 데이터의 속성값들 중 중복된 값을 제거하는 단계; 및
상기 중복된 값이 제거된 속성값들을 정렬함으로써 상기 오류 보정 테이블의 첫 번째 열을 구성하는 단계를 포함하는 포인트 클라우드 데이터 부호화 방법.
According to claim 13,
The step of constructing the first column of the error correction table,
restoring attribute values of the point cloud data whose bit depth is converted;
removing redundant values among attribute values of the restored point cloud data; and
and constructing a first column of the error correction table by arranging attribute values from which the redundant values have been removed.
역변환부; 및
복원부를 포함하고,
상기 역변환부는 비트스트림으로부터 포인트 클라우드 데이터의 속성에 관한 정보를 복호화하고,
상기 복원부는 상기 복호화된 속성에 관한 정보를 이용하여 상기 포인트 클라우드 데이터의 속성을 획득하고, 상기 획득된 속성을 이용하여 상기 포인트 클라우드 데이터를 복원하고,
상기 속성에 관한 정보는 상기 포인트 클라우드 데이터의 속성에 대한 비트 깊이 정보를 포함하는 포인트 클라우드 데이터 복호화 장치.
inverse conversion unit; and
Including the restoration part,
The inverse transformation unit decodes information about attributes of point cloud data from a bitstream;
The restoring unit acquires attributes of the point cloud data using the information on the decrypted attributes, and restores the point cloud data using the acquired attributes;
The information about the attribute includes bit depth information about the attribute of the point cloud data.
제15항에 있어서,
상기 비트 깊이 정보는, 시퀀스 파라미터 세트(sequence parameter set)에서 시그널링되는 포인트 클라우드 데이터 복호화 장치.
According to claim 15,
The bit depth information is signaled in a sequence parameter set.
제15항에 있어서,
상기 포인트 클라우드 데이터의 속성은, 상기 비트 깊이 정보에 기초하여 클리핑(clipping) 연산을 수행함으로써 획득되는 포인트 클라우드 데이터 복호화 장치.
According to claim 15,
The attribute of the point cloud data is obtained by performing a clipping operation based on the bit depth information.
제15항에 있어서,
상기 역변환부는,
상기 비트 깊이 정보를 이용하여 상기 포인트 클라우드 데이터의 속성의 비트 깊이를 변환하는 포인트 클라우드 데이터 복호화 장치.
According to claim 15,
The inverse transform unit,
Point cloud data decoding apparatus for converting a bit depth of an attribute of the point cloud data using the bit depth information.
제18항에 있어서,
테이블 생성부를 더 포함하고,
상기 테이블 생성부는 오류 보정 테이블을 생성하고, 상기 오류 보정 테이블을 이용하여 상기 포인트 클라우드 데이터의 속성을 획득하는 포인트 클라우드 데이터 복호화 장치.
According to claim 18,
Further comprising a table creation unit,
The point cloud data decoding apparatus of claim 1, wherein the table generator generates an error correction table and acquires attributes of the point cloud data using the error correction table.
포인트 클라우드 데이터 복호화 장치에 의해 수신되고 복호화되어 포인트 클라우드를 복원하는데 사용되는 데이터를 저장하는 컴퓨터 판독가능한 비일시적 기록 매체에 있어서,
상기 데이터는 포인트 클라우드 데이터의 속성에 관한 정보를 포함하고,
상기 복호화된 속성에 관한 정보는 상기 포인트 클라우드 데이터의 속성을 획득하는데 이용되고,
상기 획득된 속성은 상기 포인트 클라우드 데이터를 복원하는데 이용되고,
상기 속성에 관한 정보는 상기 포인트 클라우드 데이터의 반사도에 대한 비트 깊이 정보를 포함하는 것을 특징으로 하는 컴퓨터 판독가능한 비일시적 기록 매체.
A computer-readable non-transitory recording medium storing data received and decoded by a point cloud data decoding apparatus and used to restore a point cloud,
The data includes information about attributes of point cloud data;
Information about the decrypted attribute is used to obtain attributes of the point cloud data;
The acquired attribute is used to restore the point cloud data;
The information on the attribute comprises bit depth information about reflectivity of the point cloud data.
KR1020190084582A 2018-07-13 2019-07-12 3d point cloud data encoding/decoding method and apparatus KR102549617B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/509,677 US11151748B2 (en) 2018-07-13 2019-07-12 3D point cloud data encoding/decoding method and apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20180081767 2018-07-13
KR1020180081767 2018-07-13

Publications (2)

Publication Number Publication Date
KR20200007734A KR20200007734A (en) 2020-01-22
KR102549617B1 true KR102549617B1 (en) 2023-06-29

Family

ID=69368798

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190084582A KR102549617B1 (en) 2018-07-13 2019-07-12 3d point cloud data encoding/decoding method and apparatus

Country Status (1)

Country Link
KR (1) KR102549617B1 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021201390A1 (en) * 2020-04-03 2021-10-07 엘지전자 주식회사 Point cloud data processing apparatus and method
KR20220001312A (en) * 2020-06-29 2022-01-05 삼성전자주식회사 Method and apparatus for controlling transmission and reception of data in a wireless communication system
WO2022119304A1 (en) * 2020-12-01 2022-06-09 현대자동차주식회사 Point cloud coding device and method using adaptive dead zone quantization
WO2022119303A1 (en) * 2020-12-01 2022-06-09 현대자동차주식회사 Point cloud coding device and method using mapping function
KR102533985B1 (en) 2021-05-21 2023-05-17 한국항공대학교산학협력단 System and method for restoration of point cloud
KR20230082542A (en) 2021-12-01 2023-06-08 한국전자통신연구원 Method and apparatus for attribute compression of plenoptic point cloud

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150319438A1 (en) * 2012-12-07 2015-11-05 Canon Kabushiki Kaisha Image encoding device, image encoding method and program, image decoding device, and image decoding method and program

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150319438A1 (en) * 2012-12-07 2015-11-05 Canon Kabushiki Kaisha Image encoding device, image encoding method and program, image decoding device, and image decoding method and program

Also Published As

Publication number Publication date
KR20200007734A (en) 2020-01-22

Similar Documents

Publication Publication Date Title
KR102549617B1 (en) 3d point cloud data encoding/decoding method and apparatus
KR101654777B1 (en) Apparatus and method for scalable encoding 3d mesh, and apparatus and method for scalable decoding 3d mesh
US11151748B2 (en) 3D point cloud data encoding/decoding method and apparatus
JP5936687B2 (en) Adaptive entropy coding method of tree structure
US9035807B2 (en) Hierarchical entropy encoding and decoding
KR102660514B1 (en) Scalable point cloud encoding/decoding method and apparatus
JP6706357B2 (en) Method, coding device and corresponding computer program for coding a current block of a first image component with respect to a reference block of at least one second image component
KR20220029595A (en) Point cloud encoding and decoding methods, encoders, decoders and computer storage media
JP2015111954A (en) Method and apparatus for encoding and decoding video by using large-sized transform unit
JP6178798B2 (en) Terminating spatial tree position encoding and decoding
JP6181863B2 (en) Spectral peak position encoding and decoding
US9866840B2 (en) Method and apparatus for vertex error correction
JP2008527787A (en) Texture coordinate encoding and decoding method of 3D mesh information for effective texture mapping
KR20190040063A (en) Quantizer with index coding and bit scheduling
JP4037875B2 (en) Computer graphics data encoding device, decoding device, encoding method, and decoding method
JP6289627B2 (en) Method and apparatus for signal encoding and decoding
Schiopu et al. Lossy depth image compression using greedy rate-distortion slope optimization
CN106537914A (en) Method and apparatus for performing arithmetic coding by limited carry operation
KR101982788B1 (en) Method and apparatus for encoding and decoding video signal using improved prediction filter
EP2801952B1 (en) Method and device for compression of vertex data in three-dimensional image data
KR102625151B1 (en) Method, apparatus and recording medium for using padding/trimming in compressive neural network
JP4104615B2 (en) Method and apparatus for encoding and decoding key data
RU2015156587A (en) DEVICE AND METHOD FOR CODING, PROCESSING AND DECODING OF AN ENDING AUDIO SIGNAL BY SEPARATING AN EXTENDING AUDIO SIGNAL USING QUANTIZATION AND CODING DISTRIBUTION
JP2014078994A (en) Method and device for encoding/decoding numerical data string
KR101610086B1 (en) Continuous data compression method

Legal Events

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