KR20200140256A - 화상 처리 장치 및 방법 - Google Patents

화상 처리 장치 및 방법 Download PDF

Info

Publication number
KR20200140256A
KR20200140256A KR1020207027270A KR20207027270A KR20200140256A KR 20200140256 A KR20200140256 A KR 20200140256A KR 1020207027270 A KR1020207027270 A KR 1020207027270A KR 20207027270 A KR20207027270 A KR 20207027270A KR 20200140256 A KR20200140256 A KR 20200140256A
Authority
KR
South Korea
Prior art keywords
information
unit
projection direction
decoding
coding unit
Prior art date
Application number
KR1020207027270A
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 KR20200140256A publication Critical patent/KR20200140256A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/08Projecting images onto non-planar surfaces, e.g. geodetic screens
    • 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/174Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/37Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability with arrangements for assigning different transmission priorities to video input data or to video coded data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
  • Image Generation (AREA)

Abstract

본 개시는, 3D 데이터의 부호화 데이터를 보다 용이하게 복호할 수 있도록 하는 화상 처리 장치 및 방법에 관한 것이다. 3차원 구조를 나타내는 3D 데이터의 위치 정보의 2차원 평면으로의 투영 방향에 관한 정보인 투영 방향 정보와, 그 위치 정보를 그 2차원 평면에 투영한 지오메트리 화상의 부호화 데이터를 포함하는 비트스트림을 생성한다. 본 개시는, 예를 들어 정보 처리 장치, 화상 처리 장치, 전자 기기, 정보 처리 방법 또는 프로그램 등에 적용할 수 있다.

Description

화상 처리 장치 및 방법
본 개시는, 화상 처리 장치 및 방법에 관한 것으로, 특히 3D 데이터의 부호화 데이터를 보다 용이하게 복호할 수 있도록 한 화상 처리 장치 및 방법에 관한 것이다.
종래, 예를 들어 포인트 클라우드(Point cloud)와 같은 3차원 구조를 나타내는 3D 데이터의 부호화 방법으로서, 예를 들어 Octree 등과 같은, 복셀(Voxel)을 사용한 부호화가 있었다(예를 들어 비특허문헌 1 참조).
근년, 기타의 부호화 방법으로서, 예를 들어 포인트 클라우드의 위치와 색 정보 각각을, 소 영역마다 2차원 평면에 투영하고, 2차원 화상용의 부호화 방법으로 부호화하는 어프로치(이하, 비디오 베이스드 어프로치(Video-based approach)라고도 칭함)가 제안되어 있다.
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
그러나, 종래의 방법에서는, 복호 순이나 복호 범위 등의 제약이 많고, 예를 들어 원하는 부분을 복호하기 위하여 전체를 복호해야 하는 등의, 번잡한 작업이 필요하게 될 우려가 있었다.
본 개시는, 이러한 상황을 감안하여 이루어진 것이고, 3D 데이터의 부호화 데이터를 보다 용이하게 복호할 수 있도록 하는 것이다.
본 기술의 일측면의 화상 처리 장치는, 3차원 구조를 나타내는 3D 데이터의 위치 정보의 2차원 평면으로의 투영 방향에 관한 정보인 투영 방향 정보와, 상기 위치 정보를 상기 2차원 평면에 투영한 지오메트리 화상의 부호화 데이터를 포함하는 비트스트림을 생성하는 비트스트림 생성부를 구비하는 화상 처리 장치이다.
본 기술의 일측면의 화상 처리 방법은, 3차원 구조를 나타내는 3D 데이터의 위치 정보의 2차원 평면으로의 투영 방향에 관한 정보인 투영 방향 정보와, 상기 위치 정보를 상기 2차원 평면에 투영한 지오메트리 화상의 부호화 데이터를 포함하는 비트스트림을 생성하는 화상 처리 방법이다.
본 기술의 다른 측면의 화상 처리 장치는, 3차원 구조를 나타내는 3D 데이터의 위치 정보의 2차원 평면으로의 투영 방향에 관한 정보인 투영 방향 정보에 기초하여, 상기 위치 정보를 상기 2차원 평면에 투영한 지오메트리 화상의 부호화 데이터를 포함하는 비트스트림을 복호하는 복호부를 구비하는 화상 처리 장치이다.
본 기술의 다른 측면의 화상 처리 방법은, 3차원 구조를 나타내는 3D 데이터의 위치 정보의 2차원 평면으로의 투영 방향에 관한 정보인 투영 방향 정보에 기초하여, 상기 위치 정보를 상기 2차원 평면에 투영한 지오메트리 화상의 부호화 데이터를 포함하는 비트스트림을 복호하는 화상 처리 방법이다.
본 기술의 또 다른 측면의 화상 처리 장치는, 3차원 구조를 나타내는 3D 데이터의 위치 정보를 2차원 평면에 투영한 지오메트리 화상을, 화상의, 상기 위치 정보의 상기 2차원 평면으로의 투영 방향에 따른 부호화 단위에 배치하여 패킹하는 패킹부를 구비하는 화상 처리 장치이다.
본 기술의 또 다른 측면의 화상 처리 방법은, 3차원 구조를 나타내는 3D 데이터의 위치 정보를 2차원 평면에 투영한 지오메트리 화상을, 화상의, 상기 위치 정보의 상기 2차원 평면으로의 투영 방향에 따른 부호화 단위에 배치하여 패킹하는 화상 처리 방법이다.
본 기술의 또 다른 측면의 화상 처리 장치는, 비트스트림의, 3차원 구조를 나타내는 3D 데이터의 위치 정보의 2차원 평면으로의 투영 방향에 따른 부호화 단위로부터, 상기 투영 방향으로 상기 2차원 평면에 투영한 지오메트리 화상을 복호하는 복호부를 구비하는 화상 처리 장치이다.
본 기술의 또 다른 측면의 화상 처리 방법은, 비트스트림의, 3차원 구조를 나타내는 3D 데이터의 위치 정보의 2차원 평면으로의 투영 방향에 따른 부호화 단위로부터, 상기 투영 방향으로 상기 2차원 평면에 투영한 지오메트리 화상을 복호하는 화상 처리 방법이다.
본 기술의 일 측면의 화상 처리 장치 및 방법에 있어서는, 3차원 구조를 나타내는 3D 데이터의 위치 정보의 2차원 평면으로의 투영 방향에 관한 정보인 투영 방향 정보와, 그 위치 정보를 그 2차원 평면에 투영한 지오메트리 화상의 부호화 데이터를 포함하는 비트스트림이 생성된다.
본 기술의 다른 측면의 화상 처리 장치 및 방법에 있어서는, 3차원 구조를 나타내는 3D 데이터의 위치 정보의 2차원 평면으로의 투영 방향에 관한 정보인 투영 방향 정보에 기초하여, 그 위치 정보를 그 2차원 평면에 투영한 지오메트리 화상의 부호화 데이터를 포함하는 비트스트림이 복호된다.
본 기술의 또 다른 측면의 화상 처리 장치 및 방법에 있어서는, 3차원 구조를 나타내는 3D 데이터의 위치 정보를 2차원 평면에 투영한 지오메트리 화상이, 화상의, 그 위치 정보의 그 2차원 평면으로의 투영 방향에 따른 부호화 단위에 배치되어서 패킹된다.
본 기술의 또 다른 측면의 화상 처리 장치 및 방법에 있어서는, 비트스트림의, 3차원 구조를 나타내는 3D 데이터의 위치 정보의 2차원 평면으로의 투영 방향에 따른 부호화 단위로부터, 그 투영 방향으로 그 2차원 평면에 투영한 지오메트리 화상이 복호된다.
본 개시에 의하면, 화상을 처리할 수 있다. 특히, 3D 데이터의 부호화 데이터를 보다 용이하게 복호할 수 있다.
도 1은, 포인트 클라우드의 예를 설명하는 도면이다.
도 2는, 비디오 베이스드 어프로치의 개요의 예를 설명하는 도면이다.
도 3은, 본 기술에 관한 주된 특징을 통합한 도면이다.
도 4는, 투영 방향 정보에 대하여 설명하는 도면이다.
도 5는, 패킹의 모습의 예에 대하여 설명하는 도면이다.
도 6은, 부호화 단위 정보에 대하여 설명하는 도면이다.
도 7은, 패킹의 모습의 예에 대하여 설명하는 도면이다.
도 8은, View 방향과 복호 순에 대하여 설명하는 도면이다.
도 9는, 부호화 장치의 주된 구성예를 도시하는 블록도이다.
도 10은, 패치 분해부의 주된 구성예를 설명하는 도면이다.
도 11은, 메타데이터 생성부의 주된 구성예를 설명하는 도면이다.
도 12는, 복호 장치의 주된 구성예를 도시하는 블록도이다.
도 13은, 메타데이터 처리부의 주된 구성예를 도시하는 블록도이다.
도 14는, 부호화 처리의 흐름의 예를 설명하는 흐름도이다.
도 15는, 패치 분해 처리의 흐름의 예를 설명하는 흐름도이다.
도 16은, 메타데이터 생성 처리의 흐름의 예를 설명하는 흐름도이다.
도 17은, 복호 처리의 흐름의 예를 설명하는 흐름도이다.
도 18은, 메타데이터 처리의 흐름의 예를 설명하는 흐름도이다.
도 19는, 컴퓨터의 주된 구성예를 도시하는 블록도이다.
이하, 본 개시를 실시하기 위한 형태(이하 실시 형태라 함)에 대하여 설명한다. 또한, 설명은 이하의 순서로 행한다.
1. 비디오 베이스드 어프로치
2. 제1 실시 형태(투영 방향마다의 제어)
3. 부기
<1. 비디오 베이스드 어프로치>
<기술 내용·기술 용어를 서포트하는 문헌 등>
본 기술에서 개시되는 범위는, 실시 형태에 기재되어 있는 내용뿐만 아니라, 출원 당시에 있어서 공지로 되어 있는 이하의 비특허문헌에 기재되어 있는 내용도 포함된다.
비특허문헌 1: (상술)
비특허문헌 2: TELECOMMUNICATION STANDARDIZATION SECTOR OF ITU(International Telecommunication Union), "Advanced video coding for generic audiovisual services", H.264, 04/2017
비특허문헌 3: TELECOMMUNICATION STANDARDIZATION SECTOR OF ITU(International Telecommunication Union), "High efficiency video coding", H.265, 12/2016
비특허문헌 4: Jianle Chen, Elena Alshina, Gary J. Sullivan, Jens-Rainer, Jill Boyce, "Algorithm Description of Joint Exploration Test Model 4", JVET-G1001_v1, Joint Video Exploration Team(JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 7th Meeting: Torino, IT, 13-21 July 2017
즉, 상술한 비특허문헌에 기재되어 있는 내용도 서포트 요건을 판단할 때의 근거가 된다. 예를 들어, 비특허문헌 3에 기재되어 있는 Quad-Tree Block Structure, 비특허문헌 4에 기재되어 있는 QTBT(Quad Tree Plus Binary Tree) Block Structure가 실시 형태에 있어서 직접적인 기재가 없는 경우에도, 본 기술의 개시 범위 내이고, 청구범위의 서포트 요건을 만족시키는 것으로 한다. 또한, 예를 들어 파싱(Parsing), 신택스(Syntax), 시맨틱스(Semantics) 등의 기술 용어에 대해서도 마찬가지로, 실시 형태에 있어서 직접적인 기재가 없는 경우에도, 본 기술의 개시 범위 내이고, 청구범위의 서포트 요건을 만족시키는 것으로 한다.
<포인트 클라우드>
종래, 점군의 위치 정보나 속성 정보 등에 의해 3차원 구조를 나타내는 포인트 클라우드나, 정점, 에지, 면으로 구성되고, 다각형 표현을 사용해서 3차원 형상을 정의하는 메쉬 등의 데이터가 존재하였다.
예를 들어 포인트 클라우드의 경우, 도 1의 A에 도시된 바와 같은 입체 구조물을, 도 1의 B에 도시된 바와 같은 다수의 점의 집합(점군)으로서 표현한다. 즉, 포인트 클라우드의 데이터는, 이 점군의 각 점의 위치 정보나 속성 정보(예를 들어 색 등)에 의해 구성된다. 따라서 데이터 구조가 비교적 단순함과 함께, 충분히 많은 점을 사용함으로써 임의의 입체 구조를 충분한 정밀도로 표현할 수 있다.
<비디오 베이스드 어프로치의 개요>
이러한 포인트 클라우드의 위치와 색정보 각각을, 소 영역마다2차원 평면에 투영하여, 2차원 화상용의 부호화 방법으로 부호화하는 비디오 베이스드 어프로치(Video-based approach)가 제안되어 있다.
이 비디오 베이스드 어프로치에서는, 예를 들어 도 2에 도시된 바와 같이, 입력된 포인트 클라우드(Point cloud)가 복수의 세그멘테이션(영역이라고도 칭함)으로 분할되어, 영역마다 2차원 평면에 투영된다. 또한, 포인트 클라우드의 위치마다의 데이터(즉, 각 포인트의 데이터)는, 상술한 바와 같이 위치 정보(Geometry (Depth라고도 칭함))와 속성 정보(Texture)에 의해 구성되고, 각각, 영역마다 2차원 평면에 투영된다.
그리고, 이 2차원 평면에 투영된 각 세그멘테이션(패치라고도 칭함)은, 2차원 화상에 배치되고, 예를 들어 AVC(Advanced Video Coding)나 HEVC(High Efficiency Video Coding) 등이라고 한, 2차원 평면 화상용의 부호화 방식에 의해 부호화된다.
그러나, 종래의 방법에서는, 복호 순이나 복호 범위 등의 제약이 많고, 예를 들어 원하는 부분을 복호하기 위하여 전체를 복호해야 하는 등의, 번잡한 작업이 필요하게 될 우려가 있었다.
예를 들어, 종래의 경우, 전체 패치가 복호 순 등을 고려하지 않고 프레임 화상에 배치되어 있고, 패치 간에서 부호화 단위가 독립되어 있지 않기 때문에, 일부의 패치를 복호하기 위해서, 전체 패치를 복호할 필요가 있었다(부분 디코드가 곤란하였다).
또한, 종래의 경우, 2D 평면에 투영하는 기준 방향으로서, 직교하는 방향(0도, 90도, 180도, 270도)으로의 투영이 사용되고 있었지만, 그 경우, 최대 45도를 프로젝션하게 되기 때문에, 오클루젼의 발생이 증대하고, 재현성이 저감될 우려가 있었다.
또한, 예를 들어 뎁스(Depth)의 레인지가 넓은(Video Codec 압축 효율 저하) 화상의 비트 심도에 유지하기 위해 패치 분할이 증대하고, 스무싱의 처리량이 증대하는 우려가 있었다.
<투영 방향 정보의 전송>
그래서, 3차원 구조를 나타내는 3D 데이터의 위치 정보의 2차원 평면으로의 투영 방향에 관한 정보인 투영 방향 정보와, 그 위치 정보를 그 2차원 평면에 투영한 지오메트리 화상의 부호화 데이터를 포함하는 비트스트림을 생성하도록 한다.
예를 들어 화상 처리 장치에 있어서, 3차원 구조를 나타내는 3D 데이터의 위치 정보의 2차원 평면으로의 투영 방향에 관한 정보인 투영 방향 정보와, 그 위치 정보를 그 2차원 평면에 투영한 지오메트리 화상의 부호화 데이터를 포함하는 비트스트림을 생성하는 비트스트림 생성부를 구비하도록 한다.
이와 같이 함으로써, 투영 방향을 임의로 설정할 수 있으므로, 예를 들어 View 방향 등에 따른, 보다 적절한 투영 방향의 패치를 생성하고, 부호화할 수 있다. 이에 의해, 복호측에 있어서 3D 데이터의 부호화 데이터를 보다 용이하게 복호할 수 있게 된다. 예를 들어, 오클루젼의 발생을 억제하거나, 패치수의 증대를 억제하거나 할 수 있고, 복호 처리의 부하(예를 들어, 처리량, 처리 시간, 처리하는 데이터양 등)의 증대를 억제할 수 있다.
또한, 3차원 구조를 나타내는 3D 데이터의 위치 정보의 2차원 평면으로의 투영 방향에 관한 정보인 투영 방향 정보에 기초하여, 그 위치 정보를 그 2차원 평면에 투영한 지오메트리 화상의 부호화 데이터를 포함하는 비트스트림을 복호하도록 한다.
예를 들어 화상 처리 장치에 있어서, 3차원 구조를 나타내는 3D 데이터의 위치 정보의 2차원 평면으로의 투영 방향에 관한 정보인 투영 방향 정보에 기초하여, 그 위치 정보를 그 2차원 평면에 투영한 지오메트리 화상의 부호화 데이터를 포함하는 비트스트림을 복호하는 복호부를 구비하도록 한다.
이와 같이 함으로써, 패치가 임의로 설정된 투영 방향을 보다 용이하게 파악할 수 있으므로, 예를 들어 View 방향 등에 따라, 보다 적절한 투영 방향의 패치를 선택하여 복호하는 등, 다양한 복호 방법에 있어서도, 3D 데이터의 부호화 데이터를 보다 용이하게 복호할 수 있다. 그 때문에, 복호 처리의 부하(예를 들어, 처리량, 처리 시간, 처리하는 데이터양 등)의 증대를 억제할 수 있다.
<패치의 배치 제어>
또한, 3차원 구조를 나타내는 3D 데이터의 위치 정보를 2차원 평면에 투영한 지오메트리 화상을, 화상의, 그 위치 정보의 그 2차원 평면으로의 투영 방향에 따른 부호화 단위에 배치하여 패킹하도록 한다.
예를 들어 화상 처리 장치에 있어서, 3차원 구조를 나타내는 3D 데이터의 위치 정보를 2차원 평면에 투영한 지오메트리 화상을, 화상의, 그 위치 정보의 그 2차원 평면으로의 투영 방향에 따른 부호화 단위에 배치하여 패킹하는 패킹부를 구비하도록 한다.
이와 같이 함으로써, 복호 시에, 용이하게, 패치의 복호 순을 제어하거나, 일부의 패치만을 복호하는 부분 디코드를 실현하거나 할 수 있다. 즉, 복호측에 있어서 3D 데이터의 부호화 데이터를 보다 용이하게 복호할 수 있게 되고, 복호 처리의 부하(예를 들어, 처리량, 처리 시간, 처리하는 데이터양 등)의 증대를 억제할 수 있다.
또한, 비트스트림의, 3차원 구조를 나타내는 3D 데이터의 위치 정보의 2차원 평면으로의 투영 방향에 따른 부호화 단위로부터, 그 투영 방향으로 그 2차원 평면에 투영한 지오메트리 화상을 복호하도록 한다.
예를 들어 화상 처리 장치에 있어서, 비트스트림의, 3차원 구조를 나타내는 3D 데이터의 위치 정보의 2차원 평면으로의 투영 방향에 따른 부호화 단위로부터, 그 투영 방향으로 그 2차원 평면에 투영한 지오메트리 화상을 복호하는 복호부를 구비하도록 한다.
이와 같이 함으로써, 용이하게, 패치의 복호 순을 제어하거나, 일부의 패치만을 복호하는 부분 디코드를 실현하거나 할 수 있다. 즉, 3D 데이터의 부호화 데이터를 보다 용이하게 복호할 수 있게 되고, 복호 처리의 부하(예를 들어, 처리량, 처리 시간, 처리하는 데이터양 등)의 증대를 억제할 수 있다.
<비디오 베이스드 어프로치에 관한 본 기술>
이상으로 설명한 바와 같은 비디오 베이스드 어프로치에 관한 본 기술에 대하여 설명한다. 도 3의 표에 나타낸 바와 같이, 본 기술에 있어서는, 패치에 대하여 투영 방향에 관한 설정을 행하도록 한다.
<투영 방향>
투영 방향이란, 비디오 베이스드 어프로치에 있어서의 3D 데이터(예를 들어 포인트 클라우드 등)에 2차원 평면으로의 투영의 앵글, 즉, 3D 데이터로 본 2차원 평면의 방향 및 위치(거리)를 나타낸다. 예를 들어, 도 4의 A에 도시된 바와 같이, 구 좌표(r, θ, φ)를 사용하여 투영 방향(방향 및 위치)을 나타내게 해도 된다.
이 투영 방향에는, 종래와 동일한, 서로 직교하는 방향(0도, 90도, 180도, 270도)이 포함되어 있어도 되고, 그것들 직교 좌표 방향 이외의 새로운 방향 및 위치가 포함되어 있어도 된다. 종래의 경우, 투영 방향은, 도 4의 B의 표에 나타낸 바와 같은 직교 좌표 방향만이고, 미리 정해져 있었다(설정 불가능하였다). 상술한 바와 같이 패치에 대하여 투영 방향에 관한 설정을 행함으로써, 예를 들어 도 4의 C의 표에 나타낸 바와 같이, 직교 좌표 방향 이외의 투영 방향도 설정할 수 있다.
<투영 방향 정보>
투영 방향에 관한 설정으로서, 예를 들어 이 투영 방향에 관한 정보인 투영 방향 정보를 생성하고, 전송한다. 투영 방향 정보는, 식별자와 투영 방향의 대응 관계를 나타내는 정보이다. 즉, 투영 방향 정보는, 설정하는 투영 방향에 대하여 식별자를 할당하는 정보이다. 도 4의 C에 그 투영 방향 정보의 예를 도시한다. 도 4의 C에 도시하는 투영 방향 정보에서는, 각 투영 방향의 식별자(투영 방향 인덱스)에 대하여, 투영 방향(방향 구 좌표 φ, 방향 구 좌표 θ, 거리 r)이 대응 지어져 있다. 또한, 복수의 식별자에 서로 동일한 투영 방향을 대응 지어도 된다.
이러한 투영 방향 정보를 생성하고, 전송함으로써, 각 패치와 투영 방향의 대응 짓기를 이 식별자를 사용하여 행할 수 있다. 따라서, 부호량의 증대를 억제할 수 있다. 또한, 복호측에 있어서도, 이 투영 방향 정보에 기초하여, 용이하게 각 패치의 투영 방향을 파악할 수 있다. 따라서, 복호 처리의 부하 증대를 억제할 수 있고, 3D 데이터의 부호화 데이터를 보다 용이하게 복호할 수 있다.
또한, 이러한 투영 방향 정보를 생성하고, 전송함으로써, 임의의 투영 방향의 설정이 가능해지므로, 예를 들어 View 방향이 되기 쉬운 방향이나 위치를 투영 방향으로서 설정하거나, 반대로 View 방향이 되기 어려운 방향이나 위치를 투영 방향으로부터 제외하거나 하는 등, 오클루젼의 발생을 억제하도록 투영 방향을 설정할 수 있고, 재현성의 저감을 억제할 수 있다. 또한, 패치 분할의 증대를 억제하도록 투영 방향을 설정하는 것도 가능해지므로, 스무싱 처리량의 증대를 억제할 수도 있다.
<부가 정보>
또한, 이 투영 방향 정보에는, 부가 정보로서, 복호에 관한 속성 정보를 부가하게 해도 된다. 속성 정보의 내용은 임의이다. 또한, 부가하는 속성 정보의 수는 임의이다.
예를 들어, 속성 정보로서, 투영 방향마다 복호 순(복호의 우선 순)을 설정하도록 해도 된다. 도 4의 C에 도시되는 투영 방향 정보의 경우, 「속성」으로서, 복호 순(복호의 우선 순)을 나타내는 숫자가, 각 투영 방향의 식별자(투영 방향 인덱스)에 할당되어 있다. 또한, 복수의 식별자에 대하여, 서로 동일한 복호 순을 할당하게 해도 된다.
이러한 정보를 사용하여 각 패치의 복호 순을 제어함으로써, 보다 다양한 복호 방법을 실현할 수 있다. 예를 들어, 보다 중요한 투영 방향 정도일수록 보다 먼저 복호할 수 있다. 또한, 예를 들어 이 복호 순을 참고로 해서, 요구된 View 방향에 가까운 투영 방향의 패치로부터 우선적으로 복호한다고 하는 복호 방법이 가능해진다. 이에 의해, 요구된 View 방향의 화상을 보다 빠르게 복원(표시)할 수 있다. 또한, 예를 들어 부하 상황 등에 따라서 중요하지 않은 투영 방향의 패치의 복호를 생략한다고 하는 복호 방법도 가능해진다.
또한, 속성 정보로서, 3차원 구조체에 있어서의 특성(의미)을 나타내는 의미 정보를 포함하게 해도 된다. 예를 들어, 3차원 구조체에 있어서의 소정의 의미를 갖는 개소를 투영하기 위한 투영 방향을 설정하고, 그 의미를 나타내는 의미 정보를 속성 정보로 하여, 그 투영 방향에 대응 지어서 부가하게 해도 된다. 예를 들어, 인물의 「얼굴」을 투영하기 위한 전용 투영 방향을 설정하고, 그 투영 방향에 대하여 「Face」 등과 같은 의미 정보를 부가하게 해도 된다.
이와 같이 함으로써, 복호에 있어서, 그 의미 정보에 의한 투영 방향의 선택도 가능해진다. 예를 들어, 「얼굴」을 복호하고 싶은 경우에, 투영 방향을 지정하는 대신에 이 의미 정보 「Face」를 지정하는 것만으로, 용이하게 필요한 패치를 복호하여, 「얼굴」의 화상을 복원(표시)할 수 있다.
도 4의 C의 예의 경우, 투영 방향 인덱스가 「10」 및 「11」의 투영 방향에 대하여, 의미 정보 「Face1」이 부가되어 있다. 이 경우, 이들의 투영 방향의 패치를 복호함으로써, 「Face1」에 관한 패치를 복호할 수 있다. 또한, 하나의 투영 방향 인덱스에 대하여 복수의 속성 정보를 부가하게 해도 된다. 또한, 하나의 투영 방향 인덱스에 대하여 복수의 의미 정보를 부가하게 해도 된다.
<부호화 단위 정보>
투영 방향에 관한 설정으로서, 예를 들어 이 투영 방향마다 패치를 배치하는 부호화 단위에 관한 정보인 부호화 단위 정보를 생성하고, 전송한다. 부호화 단위 정보는, 상술한 투영 방향의 식별자와, 그 투영 방향으로 투영된 패치를 배치하는 부호화 단위와의 대응 관계를 나타내는 정보이다. 즉, 부호화 단위 정보는, 각 투영 방향과 사용하는 부호화 단위의 대응 관계를 나타내는 정보이다.
부호화 단위란, 독립적으로 부호화·복호가 가능한 데이터 단위이다. 이 부호화 단위의 구체적인 데이터 단위는 특별히 한정되지 않지만, 예를 들어 슬라이스, 타일, 픽처 등이어도 된다.
종래 경우의 패치의 배치 예를 도 5의 A에 도시한다. 도 5의 A에 있어서, 픽처(31)에는, 복수의 패치(32)가 배치되어 있다. 도 5의 A에 있어서는, 하나의 패치에 대해서만 부호를 붙이고 있지만, 픽처(31) 내의 도형은, 각각, 패치(32)이다. 각 패치(32) 내에 나타내는 숫자는, 투영 방향(즉 투영 방향 인덱스)을 나타낸다. 종래의 경우, 이 도 5의 A에 도시된 바와 같이, 각 패치(32)는, 복호 순 등을 고려하지 않고, 픽처(31)에 배치되어 있었다. 따라서, 도 5의 B에 나타내는 표과 같이, 각 투영 방향 인덱스에는, 어느 것에도, 서로 동일한 프레임(프레임 인덱스 「0」)이 할당되게 된다(즉 설정 불가능하였다).
상술한 바와 같은 부호화 단위 정보에 의해, 예를 들어 도 6의 표에 나타낸 바와 같이, 패치를 배치하는 부호화 단위(프레임, 슬라이스, 타일 등)를 투영 방향마다 설정할 수 있다. 도 6의 예의 경우, 각 투영 방향 인덱스에 대하여 프레임을 식별하는 프레임 인덱스, 슬라이스를 식별하는 슬라이스 인덱스 및 타일을 식별하는 타일 인덱스가 대응 지어져 있다.
예를 들어, 도 6의 표의 경우, 투영 방향 인덱스 「0」의 패치는, 프레임 인덱스 「0」의 슬라이스 인덱스 「1」에 배치된다. 또한, 투영 방향 인덱스 「6」의 패치는, 프레임 인덱스 「0」의 슬라이스 인덱스 「0」에 배치된다.
또한, 도 6의 표의 투영 인덱스 「5」와 같이, 하나의 투영 방향에 대하여 복수의 부호화 단위를 할당하게 해도 되고, 투영 인덱스 「1」과 「2」와 같이, 복수의 투영 방향을 서로 동일한 부호화 단위에 할당하게 해도 된다.
이 부호화 단위 정보에 따라서 각 패치를 배치함으로써, 각 패치를, 투영 방향에 따른 부호화 단위에 배치할 수 있다. 예를 들어, 도 7에 도시한 바와 같이, 도 5의 A의 각 패치(32)를, 그 투영 인덱스마다, 슬라이스(51) 내지 슬라이스(57)에 나누어서 배치할 수 있다.
이에 의해, 예를 들어 불필요한 투영 방향의 패치 복호를 생략할(즉, 일부의 패치만을 복호할) 수 있다(부분 디코드를 실현할 수 있다). 또한, 중요한 패치를 우선적으로 복호할(패치의 복호 순을 제어할) 수도 있다. 즉, 3D 데이터의 부호화 데이터를 보다 용이하게 복호할 수 있게 되고, 복호 처리의 부하(예를 들어, 처리량, 처리 시간, 처리하는 데이터양 등)의 증대를 억제할 수 있다. 또한, 다양한 복호 방법을 실현할 경우에 있어서도, 필요한 일부의 데이터를 복호시킬 수 있으므로, 복호 처리의 부하 증대를 억제할 수 있다.
또한, 도 6의 예에 있어서는 슬라이스를 사용하여 패치의 배치 제어를 행하고 있지만, 슬라이스 대신 타일을 사용하여 배치 제어하도록 해도 된다. 또한, 슬라이스와 타일의 양쪽을 사용하여 배치 제어하도록 해도 된다. 물론 이러한 패치의 배치 제어에 있어서의 부호화 단위는, 계층화해도 된다. 즉, 예를 들어 프레임과 슬라이스와 같이, 복수 계층의 배치 제어를 행하게 해도 된다. 예를 들어, 도 6의 예에 있어서, 프레임 인덱스 「0」 이외의 프레임에도 패치를 배치하도록 해도 된다.
또한, 이 부호화 단위 정보에는, 부가 정보로서, 복호에 관한 속성 정보를 부가하게 해도 된다. 속성 정보의 내용은 임의이다. 예를 들어, 속성 정보로서, 3차원 구조체에 있어서의 특성(의미)을 나타내는 의미 정보(예를 들어 「Face」 등)를 포함하게 해도 된다. 이와 같이 함으로써, 그 의미 정보에 의해, 복호하는 부호화 단위를 선택하는 것도 가능해진다.
<부호화 처리>
3D 데이터의 부호화 처리에 있어서는, 상술한 투영 방향의 식별자를 사용하여, 각 패치와 그 투영 방향을 연관시킨다. 즉, 각 패치에 투영 방향의 식별자를 할당한다. 이에 의해, 투영 방향, 속성 정보, 부호화 단위 등의 각종 정보를 각 패치에 대응 지을 수 있다.
또한, 이 부호화 시, 2D 화상화(복호)에 불필요한 투영 방향의 패치 부호화를 생략하게 해도 된다. 예를 들어, 인물의 경우, 발바닥을 투영하는 것과 같은 투영 방향의 패치는, 명백하게 복호되지 않을 가능성이 높다. 그래서 그러한 투영 방향의 패치 부호화를 생략함으로써, 부호량의 증대를 억제하고, 부호화 효율의 저감을 억제할 수 있다.
어떤 투영 방향을 요하지 않게 할 지는, 3차원 구조체나 상황 등에 의존한다. 따라서, 이 불필요한 투영 방향의 설정 방법은 임의이다. 예를 들어, 임의의 정보 등에 기초하여 설정되도록 해도 된다.
또한, 3D 데이터의 부호화 처리에 있어서는, 패치가 화상 상에 배치되어서 패킹되지만, 이 패킹에 있어서, 각 패치를, 그 패치의 투영 방향에 대응하는 부호화 단위에 배치하도록 한다. 예를 들어, 상술한 부호화 단위 정보가 설정되어 있는 경우, 그 부호화 단위 정보에 따라, 각 패치의 배치를 행하도록 한다. 이와 같이 함으로써, 투영 방향마다 배치하는 부호화 단위를 제어할 수 있으므로, 3D 데이터의 부호화 데이터를 보다 용이하게 복호할 수 있다.
또한, 3D 데이터의 부호화 처리에 있어서, 예를 들어 상술한 바와 같이 각 패치의 복호 순에 우선 순을 매기는 경우, 유저가 표시시키고 싶은 View 방향을 지정하지 않는 경우에 설정되는 View 방향의 초기값인 디폴트 View 방향용의 데이터(패치)의 복호 순을 우선화하게 해도 된다. 이와 같이 함으로써, 디폴트 View 방향의 화상을 보다 조기에 복원(표시)할 수 있다.
또한, 3D 데이터의 부호화 처리에 있어서, 패킹된 패치를 부호화할 때에 그 품질 설정을 그 패치의 표시 빈도에 따라서 제어하도록 해도 된다. 상술한 바와 같이, 각 패치는 투영 방향마다 제어된 부호화 단위에 배치되어 있다. 각 부호화 단위는 독립적으로 부호화·복호가 가능하므로, 그 부호화 단위마다 품질을 제어할 수도 있다. 즉, 패치의 투영 방향에 따라, 그 패치의 품질을 제어할 수 있다. 예를 들어, 표시되는 View 방향으로 치우침이 있는 경우, 잘 표시되는 View 방향의 화상 생성에 사용되는 패치의 표시 빈도가 높아지는 등, 패치의 표시 빈도에도 치우침이 발생하게 된다. 당연, 표시 빈도가 낮은 패치보다도 표시 빈도가 높은 패치의 화질을 향상시키는 쪽이, 부호량에 대한 주관적 화질이 향상된다. 즉, 이러한 치우침에 따라서 부호화의 품질 설정을 행함으로써, 부호화 효율의 저감을 억제할 수 있다.
<복호 처리>
3D 데이터의 복호 처리에 있어서는, 상술한 투영 방향 정보나 부호화 단위 정보 등에 기초하여, 복호 방법을 제어할 수 있다. 예를 들어, 지정된 View 방향에 가까운 투영 방향 순으로 복호하게 해도 된다. 투영 방향 정보를 참조함으로써, 각 패치의 투영 방향을 보다 용이하게 파악할 수 있으므로, 이러한 복호 제어를 보다 용이하게 실현할 수 있다.
또한, 예를 들어 View 방향에 따라서 부분 복호(부분 디코드)를 행하게 해도 된다. 각 패치를 배치하는 부호화 단위가 투영 방향마다 제어되어 있으므로, 투영 방향에 기초하여 일부의 패치를 복호할(부분 복호를 실현할) 수 있다. 또한, 부호화 단위 정보를 참조함으로써, 원하는 투영 방향의 패치가 배치되는 부호화 단위를 보다 용이하게 파악할 수 있다. 또한, 투영 방향 정보를 참조함으로써, 각 패치의 투영 방향을 보다 용이하게 파악할 수 있다. 따라서, 이러한 복호 제어를 보다 용이하게 실현할 수 있다.
예를 들어 View 방향과 역의 투영 방향의 패치는 복호를 생략하게 해도 된다. 일반적으로, View 방향과 역방향의 패치는, View 방향의 화상 생성에 기여하지 않는다. 따라서, 상술한, View 방향에 따른 부분 복호(부분 디코드)에 의해, View 방향과 역의 투영 방향의 패치 복호를 생략함으로써, 불필요한 정보의 복호를 생략할 수 있다. 즉, 복호의 부하 증대를 억제할 수 있다.
예를 들어, 도 8에 도시된 바와 같이, id0 내지 id3의 4개의 투영 방향에 대하여 굵은 선 화살표와 같이 View 방향이 설정된다고 한다. 각 투영 방향의 패치의 복호 순은, 예를 들어 각 투영 방향과 View 방향의 내적의 값이 작은 순으로 해도 된다. 이 경우, 패치는, id0, id3, id1, id2의 순으로 복호된다. 또한, 예를 들어 각 투영 방향의 패치 복호 순은, 이하의 순으로 해도 된다.
1. 내적이 부이고 절댓값이 작은 것으로부터 복호한다.
2. 내적이 0인 것을 복호한다.
3. 내적이 정이고 절댓값이 작은 것으로부터 복호한다.
이 경우, 패치는, id3, id0, id1, id2의 순으로 복호된다.
또한, 내적이 부인 경우에는 값이 작은 것으로부터 복호하고, 내적이 부가 아닌 경우에는 복호하지 않도록 해도 된다. 그 경우, 패치는, id0, id3의 순으로 복호된다.
또한, 얼굴을 포함하는 것, 즉, 속성 정보 「Face」에 대응하는 패치만을 복호하게 해도 된다.
또한, 이상으로 설명한 패치를 생성하는 3D 데이터는, 각 포인트의 위치를 나타내는 위치 정보(Geometry)여도 되고, 그 위치 정보에 부가되는 색 정보 등의 속성 정보(Texture)여도 된다.
<2. 제1 실시 형태>
<부호화 장치>
이어서, 이상과 같은 각 방법을 실현하는 구성에 대하여 설명한다. 도 9는, 본 기술을 적용한 화상 처리 장치의 일 양태인 부호화 장치의 구성의 일례를 나타내는 블록도이다. 도 9에 도시되는 부호화 장치(100)는, 포인트 클라우드와 같은 3D 데이터를 2차원 평면에 투영해서 2차원 화상용의 부호화 방법에 의해 부호화를 행하는 장치(비디오 베이스드 어프로치를 적용한 부호화 장치)이다.
또한, 도 9에 있어서는, 처리부나 데이터의 흐름 등의 주된 것을 도시하고 있고, 도 9에 도시된 것이 전부라고는 할 수 없다. 즉, 부호화 장치(100)에 있어서, 도 9에 있어서 블록으로서 도시되어 있지 않은 처리부가 존재하거나, 도 9에 있어서 화살표 등으로서 도시되어 있지 않은 처리나 데이터의 흐름이 존재하거나 해도 된다. 이것은, 부호화 장치(100) 내의 처리부 등을 설명하는 기타의 도면에 있어서도 마찬가지이다.
도 9에 도시된 바와 같이 부호화 장치(100)는, 패치 분해부(111), 메타데이터 생성부(112), 패킹부(113), 보조 패치 정보 압축부(114), 비디오 부호화부(115), 비디오 부호화부(116), OMap 부호화부(117) 및 멀티플렉서(118)를 갖는다.
패치 분해부(111)는, 3D 데이터의 분해에 관한 처리를 행한다. 예를 들어, 패치 분해부(111)는, 부호화 장치(100)에 입력되는, 3차원 구조를 나타내는 3D 데이터(예를 들어 포인트 클라우드(Point Cloud))나 View 방향에 관한 정보(View Info)를 취득한다. 또한, 패치 분해부(111)는, 취득한 그 3D 데이터를 복수의 세그멘테이션으로 분해하고, 그 세그멘테이션마다 3D 데이터를 2차원 평면에 투영하고, 패치를 생성한다. 그 때, 패치 분해부(111)는, 투영 방향 정보를 메타데이터 생성부(112)로부터 취득하고, 그 정보에 기초하여, 각 패치에 식별자(투영 방향 인덱스)를 할당한다.
패치 분해부(111)는, 생성한 각 패치에 관한 정보를 패킹부(113)에 공급한다. 또한, 패치 분해부(111)는, 그 분해에 관한 정보인 보조 패치 정보를, 보조 패치 정보 압축부(114)에 공급한다. 또한, 패치 분해부(111)는, 패치를 생성할 때의 투영 방향 등에 관한 정보를 메타데이터 생성부(112)에 공급한다.
메타데이터 생성부(112)는, 메타데이터의 생성에 관한 처리를 행한다. 예를 들어, 메타데이터 생성부(112)는, 패치 분해부(111)로부터 공급되는 투영 방향 등에 관한 정보를 취득한다. 메타데이터 생성부(112)는, 그 정보에 기초하여 투영 방향 정보나 부호화 단위 정보를 생성한다. 메타데이터 생성부(112)는, 생성한 투영 방향 정보를, 예를 들어 패치 분해부(111), 패킹부(113), 비디오 부호화부(115), 비디오 부호화부(116), OMap 부호화부(117) 및 멀티플렉서(118)에 공급한다. 또한, 메타데이터 생성부(112)는, 생성한 부호화 단위 정보를, 예를 들어 패킹부(113), 비디오 부호화부(115), 비디오 부호화부(116), OMap 부호화부(117) 및 멀티플렉서(118)에 공급한다.
패킹부(113)는, 데이터의 패킹에 관한 처리를 행한다. 예를 들어, 패킹부(113)는, 패치 분해부(111)로부터 공급되는 영역마다 3D 데이터가 투영된 2차원 평면의 데이터(패치)를 취득한다. 또한, 패킹부(113)는, 취득한 각 패치를 비디오 프레임으로 하여 패킹한다. 예를 들어, 패킹부(113)는, 포인트의 위치를 나타내는 위치 정보(Geometry)의 패치를 2차원 화상에 배치하고, 그 위치 정보에 부가되는 색 정보 등의 속성 정보(Texture)의 패치를 2차원 화상에 배치하고, 그들 2차원 화상을, 각각, 비디오 프레임으로서 패킹한다.
그 때, 패킹부(113)는, 메타데이터 생성부(112)로부터 공급된 투영 방향 정보나 부호화 단위 정보에 기초하여, 패킹을 행한다. 즉, 패킹부(113)는, 상술한 바와 같이, 각 패치를 배치하는 부호화 단위(프레임, 슬라이스, 타일 등)를 그 투영 방향에 따라서 제어한다. 즉, 패킹부(113)는, 각 패치를, 그 투영 방향에 대응하는 부호화 단위에 배치한다.
또한, 패킹부(112)는, 위치 마다의 데이터의 유무를 나타내는 오큐펀시 맵(Occupancy Map)의 생성이나 Dilation 처리도 행한다. 패킹부(113)는, 처리 후의 각종 데이터를 후단의 처리부에 공급한다. 예를 들어, 패킹부(113)는, 위치 정보(Geometry)의 비디오 프레임을 비디오 부호화부(115)에 공급한다. 또한, 예를 들어 패킹부(113)는, 속성 정보(Texture)의 비디오 프레임을 비디오 부호화부(116)에 공급한다. 또한, 예를 들어 패킹부(113)는, 오큐펀시 맵을 OMap 부호화부(117)에 공급한다. 또한, 패킹부(113)는, 그 패킹에 관한 제어 정보를 멀티플렉서(118)에 공급한다.
보조 패치 정보 압축부(114)는, 보조 패치 정보의 압축에 관한 처리를 행한다. 예를 들어, 보조 패치 정보 압축부(114)는, 패치 분해부(111)로부터 공급되는 데이터를 취득한다. 보조 패치 정보 압축부(114)는, 취득한 데이터에 포함되는 보조 패치 정보를 부호화(압축)한다. 보조 패치 정보 압축부(114)는, 얻어진 보조 패치 정보의 부호화 데이터를 멀티플렉서(118)에 공급한다.
비디오 부호화부(115)는, 위치 정보(Geometry)의 비디오 프레임의 부호화에 관한 처리를 행한다. 예를 들어, 비디오 부호화부(115)는, 패킹부(113)로부터 공급되는 위치 정보(Geometry)의 비디오 프레임을 취득한다. 또한, 비디오 부호화부(115)는, 그 취득한 위치 정보(Geometry)의 비디오 프레임을, 예를 들어 AVC나 HEVC 등의 임의의 2차원 화상용의 부호화 방법에 의해 부호화한다. 비디오 부호화부(115)는, 그 부호화에 의해 얻어진 부호화 데이터(위치 정보(Geometry)의 비디오 프레임의 부호화 데이터)를 멀티플렉서(118)에 공급한다.
또한, 이 부호화 시, 비디오 부호화부(115)는, 메타데이터 생성부(112)로부터 공급되는 투영 방향 정보나 부호 간 단위 제어 정보에 기초하여, 부호화의 품질 제어를 행하게 해도 된다. 예를 들어, 비디오 부호화부(115)는, 비디오 프레임을, 그 비디오 프레임에 포함되는 패치의 표시 빈도 등에 따라서 품질(예를 들어 양자화 파라미터)을 제어하도록 해도 된다.
비디오 부호화부(116)는, 속성 정보(Texture)의 비디오 프레임의 부호화에 관한 처리를 행한다. 예를 들어, 비디오 부호화부(116)는, 패킹부(113)로부터 공급되는 속성 정보(Texture)의 비디오 프레임을 취득한다. 또한, 비디오 부호화부(116)는, 그 취득한 속성 정보(Texture)의 비디오 프레임을, 예를 들어 AVC나 HEVC 등의 임의의 2차원 화상용의 부호화 방법에 의해 부호화한다. 비디오 부호화부(116)는, 그 부호화에 의해 얻어진 부호화 데이터(속성 정보(Texture)의 비디오 프레임의 부호화 데이터)를 멀티플렉서(118)에 공급한다.
또한, 이 비디오 부호화부(116)도, 비디오 부호화부(115)의 경우와 마찬가지로, 메타데이터 생성부(112)로부터 공급되는 투영 방향 정보나 부호 간 단위 제어 정보에 기초하여, 부호화의 품질 제어를 행하게 해도 된다.
OMap 부호화부(117)는, 위치마다의 데이터의 유무를 나타내는 오큐펀시 맵의 부호화에 관한 처리를 행한다. 예를 들어, OMap 부호화부(117)는, 패킹부(113)로부터 공급되는 오큐펀시 맵의 비디오 프레임을 취득한다. 또한, OMap 부호화부(117)는, 그 취득한 오큐펀시 맵을, 예를 들어 산술 부호화 등의 임의의 부호화 방법에 의해 부호화한다. OMap 부호화부(117)는, 그 부호화에 의해 얻어진 오큐펀시 맵의 부호화 데이터를 멀티플렉서(118)에 공급한다.
또한, 이 OMap 부호화부(117)도, 비디오 부호화부(115)의 경우와 마찬가지로, 메타데이터 생성부(112)로부터 공급되는 투영 방향 정보나 부호 간 단위 제어 정보에 기초하여, 부호화의 품질 제어를 행하게 해도 된다.
멀티플렉서(118)는, 다중화에 관한 처리를 행한다. 예를 들어, 멀티플렉서(118)는, 보조 패치 정보 압축부(114)로부터 공급되는 보조 패치 정보의 부호화 데이터를 취득한다. 또한, 멀티플렉서(118)는, 패킹부(113)로부터 공급되는 패킹에 관한 제어 정보를 취득한다. 또한, 멀티플렉서(118)는, 비디오 부호화부(115)로부터 공급되는 위치 정보(Geometry)의 비디오 프레임의 부호화 데이터를 취득한다. 또한, 멀티플렉서(118)는, 비디오 부호화부(116)로부터 공급되는 속성 정보(Texture)의 비디오 프레임의 부호화 데이터를 취득한다. 또한, 멀티플렉서(118)는, OMap 부호화부(117)로부터 공급되는 오큐펀시 맵의 부호화 데이터를 취득한다.
또한, 멀티플렉서(118)은, 메타데이터 생성부(112)로부터 공급되는 투영 방향 정보나 부호화 단위 정보를 취득한다.
멀티플렉서(118)는, 취득한 그들 정보를 다중화하여, 비트스트림(Bitstream)을 생성한다. 멀티플렉서(118)는, 그 생성한 비트스트림을 부호화 장치(100)의 외부에 출력한다.
<패치 분해부>
도 10은, 도 9의 패치 분해부(111)의 주된 구성예를 도시하는 블록도이다. 도 10에 도시된 바와 같이, 이 경우의 패치 분해부(111)는, 법선 추정부(151), 세그멘테이션 초기 설정부(152), 세그멘테이션 갱신부(153), 투영 방향 설정부(154), 2차원 투영부(155) 및 인덱스 부여부(156)를 갖는다.
법선 추정부(151)는, 3D 데이터의 표면 법선 추정에 관한 처리를 행한다. 예를 들어, 법선 추정부(151)는, 입력되는 3D 데이터(Point Cloud)를 취득한다. 또한, 법선 추정부(151)는, 그 취득한 3D 데이터가 나타내는 오브젝트의 표면 법선을 추정한다. 예를 들어, 법선 추정부(151)는, kd-tree를 구축하여, 근방을 탐색하고, 최적 근사 접평면을 산출하거나 하여 법선을 추정한다. 법선 추정부(151)는, 그 법선의 추정 결과를 기타의 데이터와 함께, 세그멘테이션 초기 설정부(152)에 공급한다.
세그멘테이션 초기 설정부(152)는, 세그멘테이션의 초기 설정에 관한 처리를 행한다. 예를 들어, 세그멘테이션 초기 설정부(152)는, 법선 추정부(151)로부터 공급되는 데이터를 취득한다. 또한, 세그멘테이션 초기 설정부(152)는, 법선 추정부(151)에 의해 추정된 법선의, 6축의 각 방향의 성분에 기초하여, 3D 데이터의, 그 법선에 대응하는 면을 분류한다. 세그멘테이션 초기 설정부(152)는, 그 분류 결과를, 다른 데이터와 함께 세그멘테이션 갱신부(153)에 공급한다.
세그멘테이션 갱신부(153)는, 세그멘테이션의 갱신에 관한 처리를 행한다. 예를 들어, 세그멘테이션 갱신부(153)는, 세그멘테이션 초기 설정부(152)로부터 공급되는 데이터를 취득한다. 또한, 세그멘테이션 갱신부(153)는, 세그멘테이션 초기 설정부(152)에 의해 설정된 초기 설정의 세그멘테이션에 있어서의 매우 작은 영역을 통합하여, 충분히 큰 영역이 되도록 한다. 세그멘테이션 갱신부(153)는, 갱신한 세그멘테이션에 관한 정보를, 기타의 정보와 함께, 투영 방향 설정부(154)에 공급한다.
투영 방향 설정부(154)는, 투영 방향의 설정에 관한 처리를 행한다. 예를 들어, 투영 방향 설정부(154)는, 세그멘테이션 갱신부(153)로부터 공급되는 데이터(갱신한 세그멘테이션에 관한 정보를 포함함)를 취득한다. 또한, 투영 방향 설정부(154)는, View 방향에 관한 정보인 View Info를 취득한다. 투영 방향 설정부(154)는, 그것들의 정보에 기초하여, 각 세그멘테이션의 투영 방향을 설정한다. 예를 들어, 투영 방향 설정부(154)는, 각 세그멘테이션의 법선이나 상정되는 View 방향 등에 기초하여, 오클루젼의 발생을 억제하도록 투영 방향을 설정한다. 또한, 예를 들어 투영 방향 설정부(154)는, 각 세그멘테이션의 법선이나 상정되는 View 방향 등에 기초하여, 생성하는 패치수의 증대를 억제하도록 투영 방향을 설정한다.
투영 방향 설정부(154)는, 그 설정한 투영 방향 등에 관한 정보를 메타데이터 생성부(112)에 공급한다. 또한, 투영 방향 설정부(154)는, 그 투영 방향 등에 관한 정보를, 갱신한 세그멘테이션에 관한 정보 등의 기타의 정보와 함께, 2차원 투영부(155)에 공급한다.
2차원 투영부(155)는, 3D 데이터의 2차원 투영에 관한 처리를 행한다. 예를 들어, 2차원 투영부(155)는, 투영 방향 설정부(154)로부터 공급되는 데이터를 취득한다. 또한, 2차원 투영부(155)는, 각 세그멘테이션을 그 투영 방향의 2차원 평면에 투영하고, 패치를 생성한다. 예를 들어, 2차원 투영부(155)는, 위치 정보(Geometry)나 속성 정보(Texture)의 패치를 생성한다. 2차원 투영부(155)는, 생성한 위치 정보(Geometry)의 패치나 속성 정보(Texture)의 패치를, 기타의 데이터와 함께, 인덱스 부여부(156)에 공급한다.
인덱스 부여부(156)는, 투영 방향 인덱스의 부여에 관한 처리를 행한다. 예를 들어, 인덱스 부여부(156)는, 2차원 투영부(155)로부터 공급되는 데이터를 취득한다. 또한, 인덱스 부여부(156)는, 메타데이터 생성부(112)로부터 공급되는 투영 방향 정보를 취득한다. 또한, 인덱스 부여부(156)는, 취득한 투영 방향 정보에 기초하여, 각 패치에, 그 투영 방향에 대응하는 투영 방향 인덱스를 부여한다. 인덱스 부여부(156)는, 처리 후의 데이터(투영 방향 인덱스를 부여한 위치 정보(Geometry)의 패치나 속성 정보(Texture)의 패치 등)를 패킹부(113)에 공급한다.
<메타데이터 생성부>
도 11은, 도 9의 메타데이터 생성부(112)의 주된 구성예를 도시하는 블록도이다. 도 11에 도시된 바와 같이, 메타데이터 생성부(112)는, 투영 방향 정보 생성부(171) 및 부호화 단위 정보 생성부(172)를 갖는다.
투영 방향 정보 생성부(171)는, 투영 방향 정보의 생성에 관한 처리를 행한다. 예를 들어, 투영 방향 정보 생성부(171)는, 패치 분해부(111)로부터 공급되는 투영 방향 등에 관한 정보를 취득한다. 또한, 투영 방향 정보 생성부(171)는, 그 정보에 기초하여 투영 방향을 설정하고, 투영 방향 인덱스를 붙여서, 투영 방향 정보를 생성한다. 또한, 투영 방향 정보 생성부(171)는, 필요에 따라 속성 정보를, 각 투영 방향 인덱스에 부가한다.
투영 방향 정보 생성부(171)는, 생성한 투영 방향 정보를 부호화 단위 정보 생성부(172)에 공급한다. 또한, 투영 방향 정보 생성부(171)는, 그 투영 방향 정보를, 패치 분해부(111), 패킹부(113), 비디오 부호화부(115), 비디오 부호화부(116), OMap 부호화부(117) 및 멀티플렉서(118)에도 공급한다.
부호화 단위 정보 생성부(172)는, 부호화 단위 정보의 생성에 관한 처리를 행한다. 예를 들어, 부호화 단위 정보 생성부(172)는, 투영 방향 정보 생성부(171)로부터 공급되는 투영 방향 정보를 취득한다. 또한, 부호화 단위 정보 생성부(172)는, 각 투영 방향의 패치를 배치하는 부호화 단위를 설정하고, 그 부호화 단위를 나타내는 정보를 투영 방향 인덱스에 대응 지어, 부호화 단위 정보를 생성한다.
부호화 단위 정보 생성부(172)는, 생성한 부호화 단위 정보를, 패킹부(113), 비디오 부호화부(115), 비디오 부호화부(116), OMap 부호화부(117) 및 멀티플렉서(118)에 공급한다.
<복호 장치>
도 12는, 본 기술을 적용한 화상 처리 장치의 일 양태인 복호 장치의 구성의 일례를 나타내는 블록도이다. 도 12에 도시하는 복호 장치(200)는, 포인트 클라우드와 같은 3D 데이터가 2차원 평면에 투영되어 부호화된 부호화 데이터를, 2차원 화상용의 복호 방법에 의해 복호하고, 3차원 공간에 투영하는 장치(비디오 베이스드 어프로치를 적용한 복호 장치)이다.
또한, 도 12에 있어서는, 처리부나 데이터의 흐름 등의 주된 것을 도시하고 있고, 도 12에 도시된 것이 전부라고는 할 수 없다. 즉, 복호 장치(200)에 있어서, 도 12에 있어서 블록으로서 도시되어 있지 않은 처리부가 존재하거나, 도 12에 있어서 화살표 등으로서 도시되어 있지 않은 처리나 데이터의 흐름이 존재하거나 해도 된다. 이것은, 복호 장치(200) 내의 처리부 등을 설명하는 기타의 도면에 있어서도 마찬가지이다.
도 12에 도시된 바와 같이 복호 장치(200)는, 디멀티플렉서(211), 메타데이터 처리부(212), 보조 패치 정보 복호부(213), 비디오 복호부(214), 비디오 복호부(215), OMap 복호부(216), 언패킹부(217) 및 3D 재구축부(218)를 갖는다.
디멀티플렉서(211)는, 데이터의 역다중화에 관한 처리를 행한다. 예를 들어, 디멀티플렉서(211)는, 복호 장치(200)에 입력되는 비트스트림을 취득한다. 이 비트스트림은, 예를 들어 부호화 장치(100)로부터 공급된다. 디멀티플렉서(211)는, 이 비트스트림을 역다중화하여, 보조 패치 정보의 부호화 데이터를 추출하고, 그것을 보조 패치 정보 복호부(213)에 공급한다. 또한, 디멀티플렉서(211)는, 역다중화에 의해, 비트스트림으로부터, 위치 정보(Geometry)의 비디오 프레임의 부호화 데이터를 추출하고, 그것을 비디오 복호부(214)에 공급한다. 또한, 디멀티플렉서(211)는, 역다중화에 의해, 비트스트림으로부터, 속성 정보(Texture)의 비디오 프레임의 부호화 데이터를 추출하고, 그것을 비디오 복호부(215)에 공급한다. 또한, 디멀티플렉서(211)는, 역다중화에 의해, 비트스트림으로부터, 오큐펀시 맵의 부호화 데이터를 추출하고, 그것을 OMap 복호부(216)에 공급한다.
또한, 디멀티플렉서(211)는, 역다중화에 의해, 비트스트림으로부터, 투영 방향 정보나 부호화 단위 정보 등의 메타데이터를 추출하고, 그것을 메타데이터 처리부(212)에 공급한다.
메타데이터 처리부(212)는, 메타데이터에 기초하는 복호 제어에 관한 처리를 행한다. 예를 들어, 메타데이터 처리부(212)는, 디멀티플렉서(211)로부터 공급되는 메타데이터(투영 방향 정보나 부호화 단위 정보 등)를 취득한다. 또한, 메타데이터 처리부(212)는, 유저 등에 의한 View 방향의 지정(View)을 취득한다. 메타데이터 처리부(212)는, 그 메타데이터나 View 방향 등에 기초하여, 비디오 복호부(214), 비디오 복호부(215) 및 OMap 복호부(216)에 의한 복호를 제어한다. 예를 들어, 패치의 복호 순이나 복호하는 패치의 범위(부분 복호)를 제어한다.
보조 패치 정보 복호부(213)는, 보조 패치 정보의 부호화 데이터의 복호에 관한 처리를 행한다. 예를 들어, 보조 패치 정보 복호부(213)는, 디멀티플렉서(211)로부터 공급되는 보조 패치 정보의 부호화 데이터를 취득한다. 또한, 보조 패치 정보 복호부(213)는, 그 취득한 데이터에 포함되는 보조 패치 정보의 부호화 데이터를 복호한다. 보조 패치 정보 복호부(213)는, 그 복호에 의해 얻어진 보조 패치 정보를 3D 재구축부(218)에 공급한다.
비디오 복호부(214)는, 위치 정보(Geometry)의 비디오 프레임의 부호화 데이터의 복호에 관한 처리를 행한다. 예를 들어, 비디오 복호부(214)는, 디멀티플렉서(211)로부터 공급되는 위치 정보(Geometry)의 비디오 프레임의 부호화 데이터를 취득한다. 또한, 비디오 복호부(214)는, 메타데이터 처리부(212)의 제어를 접수한다.
또한, 비디오 복호부(214)는, 메타데이터 처리부(212)의 제어에 따라, 디멀티플렉서(211)로부터 취득한 부호화 데이터를 복호하고, 위치 정보(Geometry)의 비디오 프레임을 얻는다. 예를 들어, 비디오 복호부(214)는, 메타데이터 처리부(212)에 의해 지정되는, 위치 정보(Geometry)의 2차원 평면으로의 투영 방향에 따른 부호화 단위의 부호화 데이터를 복호한다. 예를 들어, 비디오 복호부(214)는, 메타데이터 처리부(212)에 의해 지정되는 복호 범위의 부호화 단위의 부호화 데이터를 복호한다. 또한, 예를 들어 비디오 복호부(214)는, 메타데이터 처리부(212)에 의해 지정되는 복호 순으로 각 부호화 단위의 부호화 데이터를 복호한다. 비디오 복호부(214)는, 복호한 부호화 단위의 위치 정보(Geometry)의 데이터를, 언패킹부(217)에 공급한다.
비디오 복호부(215)는, 속성 정보(Texture)의 비디오 프레임의 부호화 데이터의 복호에 관한 처리를 행한다. 예를 들어, 비디오 복호부(215)는, 디멀티플렉서(211)로부터 공급되는 속성 정보(Texture)의 비디오 프레임의 부호화 데이터를 취득한다. 또한, 비디오 복호부(215)는, 메타데이터 처리부(212)의 제어를 접수한다.
또한, 비디오 복호부(215)는, 메타데이터 처리부(212)의 제어에 따라, 디멀티플렉서(211)로부터 취득한 부호화 데이터를 복호하고, 속성 정보(Texture)의 비디오 프레임을 얻는다. 예를 들어, 비디오 복호부(215)는, 메타데이터 처리부(212)에 의해 지정되는 복호 범위의 부호화 단위의 부호화 데이터를 복호한다. 또한, 예를 들어 비디오 복호부(215)는, 메타데이터 처리부(212)에 의해 지정되는 복호 순으로 각 부호화 단위의 부호화 데이터를 복호한다. 비디오 복호부(215)는, 복호한 부호화 단위의 속성 정보(Texture)의 데이터를, 언패킹부(217)에 공급한다.
OMap 복호부(216)는, 오큐펀시 맵의 부호화 데이터의 복호에 관한 처리를 행한다. 예를 들어, OMap 복호부(216)는, 디멀티플렉서(211)로부터 공급되는 오큐펀시 맵의 부호화 데이터를 취득한다. 또한, OMap 복호부(216)는, 메타데이터 처리부(212)의 제어를 접수한다.
또한, OMap 복호부(216)는, 메타데이터 처리부(212)의 제어에 따라, 디멀티플렉서(211)로부터 취득한 부호화 데이터를 복호하고, 오큐펀시 맵을 얻는다. 예를 들어, OMap 복호부(216)는, 메타데이터 처리부(212)에 의해 지정되는 복호 범위의 부호화 단위의 부호화 데이터를 복호한다. 또한, 예를 들어 OMap 복호부(216)는, 메타데이터 처리부(212)에 의해 지정되는 복호 순으로 각 부호화 단위의 부호화 데이터를 복호한다. OMap 복호부(216)는, 복호한 부호화 단위의 오큐펀시 맵의 데이터를, 언패킹부(217)에 공급한다.
언패킹부(217)는, 언패킹에 관한 처리를 행한다. 예를 들어, 언패킹부(217)는, 비디오 복호부(214)로부터 위치 정보(Geometry)의 비디오 프레임(부호화 단위의 데이터)을 취득하고, 비디오 복호부(215)로부터 속성 정보(Texture)의 비디오 프레임(부호화 단위의 데이터)을 취득하고, OMap 복호부(216)로부터 오큐펀시 맵(부호화 단위의 데이터)을 취득한다. 또한, 언패킹부(217)는, 위치 정보의 비디오 프레임이나 속성 정보의 비디오 프레임을 언패킹한다. 언패킹부(217)는, 언패킹하여 얻어진 위치 정보(Geometry)의 데이터(패치 등)나 속성 정보(Texture)의 데이터(패치 등), 그리고 오큐펀시 맵의 데이터 등의 각종 데이터를, 3D 재구축부(218)에 공급한다.
3D 재구축부(218)는, 3D 데이터의 재구축에 관한 처리를 행한다. 예를 들어, 3D 재구축부(218)는, 보조 패치 정보 복호부(213)로부터 공급되는 보조 패치 정보나, 언패킹부(217)로부터 공급되는 위치 정보(Geometry)의 데이터, 속성 정보(Texture)의 데이터 및 오큐펀시 맵의 데이터 등에 기초하여, 3D 데이터(Point Cloud)를 재구축한다. 3D 재구축부(218)는, 이러한 처리에 의해 얻어진 3D 데이터를 복호 장치(200)의 외부에 출력한다.
이 3D 데이터는, 예를 들어 표시부에 공급되어서 그 화상이 표시되거나, 기록 매체에 기록되거나, 통신을 통해 다른 장치에 공급되거나 한다.
<메타데이터 처리부>
도 13은, 도 12의 메타데이터 처리부(212)의 주된 구성예를 도시하는 블록도이다. 도 13에 도시된 바와 같이, 메타데이터 처리부(212)는, 내적 산출부(251), 복호 범위 설정부(252), 복호 순 설정부(253) 및 복호 제어부(254)를 갖는다.
내적 산출부(251)는, 내적의 산출에 관한 처리를 행한다. 예를 들어, 내적 산출부(251)는, 디멀티플렉서(211)로부터 공급되는 투영 방향 정보를 취득한다. 또한, 내적 산출부(251)는, 유저 등에 의해 입력된 View 방향의 지정을 취득한다. 또한, 내적 산출부(251)는, 투영 방향을 나타내는 벡터와 View 방향을 나타내는 벡터의 내적을 산출한다. 내적 산출부(251)는, 내적의 산출 결과를 복호 범위 설정부(252)에 공급한다.
복호 범위 설정부(252)는, 복호 범위의 설정에 관한 처리를 행한다. 예를 들어, 복호 범위 설정부(252)는, 내적 산출부(251)로부터 공급되는 내적의 결과를 취득한다. 또한, 복호 범위 설정부(252)는, 디멀티플렉서(211)로부터 공급되는 부호화 단위 정보를 취득한다. 또한, 복호 범위 설정부(252)는, 내적의 결과와 부호화 단위 정보에 기초하여, 복호 범위(복호하는 부호화 단위)를 설정한다. 즉, 복호 범위 설정부(252)는, 부분 복호를 행할지의 여부를 제어하고, 부분 복호를 행하는 경우에는, 복호하는 범위를 더 제어한다. 복호 범위 설정부(252)는, 내적의 결과, 부호화 단위 정보 및 설정한 복호 범위에 관한 정보를 복호 순 설정부(253)에 공급한다.
복호 순 설정부(253)는, 복호 순의 설정에 관한 처리를 행한다. 예를 들어, 복호 순 설정부(253)는, 복호 범위 설정부(252)로부터 공급되는 정보를 취득한다. 또한, 복호 순 설정부(253)는, 디멀티플렉서(211)로부터 공급되는 투영 방향 정보를 취득한다. 또한, 복호 순 설정부(253)는, 내적의 결과, 투영 방향 정보, 부호화 단위 정보, 복호 범위에 관한 정보 등에 기초하여, 복호 순의 설정, 복호 범위의 설정 및 View 방향에 대응하도록, 복호하는 부호화 단위의 복호 순을 설정한다. 복호 순 설정부(253)는, 내적의 결과, 부호화 단위 정보, 복호 범위에 관한 정보 및 설정한 복호 순에 관한 정보를, 복호 제어부(254)에 공급한다.
복호 제어부(254)는, 복호의 제어에 관한 처리를 행한다. 예를 들어, 복호 제어부(254)는, 복호 순 설정부(253)로부터 공급되는 정보를 취득한다. 또한, 복호 제어부(254)는, 그 정보에 기초하여, 비디오 복호부(214), 비디오 복호부(215) 및 OMap 복호부(216)에 의한 복호를 제어한다. 예를 들어, 복호 제어부(254)는, 그들 처리부에서 행하여지는 복호의 대상이 되는 부호화 단위를 지정한다. 또한, 예를 들어 복호 제어부(254)는, 그들 처리부에서 행하여지는 복호의 복호 범위의 지정이나 복호 순 등을 제어한다.
이와 같은 구성을 구비함으로써, 투영 방향을 임의로 설정할 수 있으므로, 오클루젼의 발생을 억제하거나, 패치수의 증대를 억제하거나 할 수 있다. 또한, 예를 들어 View 방향 등에 따라, 보다 적절한 투영 방향의 패치를 선택하여 복호하는 등, 다양한 복호 방법에 있어서도, 3D 데이터의 부호화 데이터를 보다 용이하게 복호할 수 있다. 그 때문에, 복호 처리의 부하 증대를 억제할 수 있다.
또한, 이와 같은 구성을 구비함으로써, 용이하게, 패치의 복호 순을 제어하거나, 일부의 패치만을 복호하는 부분 디코드를 실현하거나 할 수 있다. 즉, 3D 데이터의 부호화 데이터를 보다 용이하게 복호할 수 있게 되고, 복호 처리의 부하 증대를 억제할 수 있다.
<부호화 처리의 흐름>
이어서, 부호화 장치(100)에 의해 실행되는 부호화 처리의 흐름의 예를, 도 14의 흐름도를 참조하여 설명한다.
부호화 처리가 개시되면, 부호화 장치(100)의 패치 분해부(111)는, 스텝 S101에 있어서, 3D 데이터를 2차원 평면에 투영하고, 패치로 분해한다.
스텝 S102에 있어서, 메타데이터 생성부(112)는, 투영 방향 정보 및 부호화 단위 정보를 메타데이터로서 생성한다.
스텝 S103에 있어서, 패치 분해부(111)(인덱스 부여부(156))는, 스텝 S102에 있어서 생성된 투영 방향 정보에 따라, 투영 방향 인덱스를 각 패치에 부여한다(대응 짓는다).
스텝 S104에 있어서, 보조 패치 정보 압축부(114)는, 스텝 S101의 처리에 의해 얻어진 보조 패치 정보를 압축한다.
스텝 S105에 있어서, 패킹부(113)는, 스텝 S102에 있어서 생성된 투영 방향 정보 및 부호화 단위 정보 등에 따라, 패킹을 행한다. 즉, 패킹부(113)는, 각 패치를, 프레임 화상의, 그 투영 방향에 대응하는 부호화 단위(슬라이스 등)에 배치하고, 비디오 프레임으로서 패킹한다. 또한, 패킹부(113)는, 그 비디오 프레임에 대응하는 오큐펀시 맵을 생성한다.
스텝 S106에 있어서, 비디오 부호화부(115)는, 스텝 S105의 처리에 의해 얻어진 위치 정보의 비디오 프레임인 지오메트리 비디오 프레임을, 2차원 화상용의 부호화 방법에 의해 부호화한다.
스텝 S107에 있어서, 비디오 부호화부(116)는, 스텝 S105의 처리에 의해 얻어진 속성 정보의 비디오 프레임인 컬러 비디오 프레임을, 2차원 화상용의 부호화 방법에 의해 부호화한다.
스텝 S108에 있어서, OMap 부호화부(117)는, 스텝 S105의 처리에 의해 얻어진 오큐펀시 맵을, 소정의 부호화 방법에 의해 부호화한다.
또한, 비디오 부호화부(115) 내지 OMap 부호화부(117)는, 각각이 행하는 부호화(스텝 S106 내지 스텝 S108의 부호화)에 있어서, 투영 방향 정보나 부호화 단위 정보 등에 기초하여 품질을 제어하도록 해도 된다.
스텝 S109에 있어서, 멀티플렉서(118)는, 이상과 같이 생성된 각종 정보(예를 들어, 스텝 S106 내지 스텝 S108에 있어서 생성된 부호화 데이터나, 스텝 S102에 있어서 생성된 메타데이터(투영 방향 정보나 부호화 단위 정보))를 다중화하고, 이들의 정보를 포함하는 비트스트림을 생성한다.
스텝 S110에 있어서, 멀티플렉서(118)는, 스텝 S109의 처리에 의해 생성된 비트스트림을 부호화 장치(100)의 외부에 출력한다.
스텝 S110의 처리가 종료하면, 부호화 처리가 종료한다.
<패치 분해 처리의 흐름>
이어서, 도 15의 흐름도를 참조하여, 도 14의 스텝 S101에 있어서 실행되는 패치 분해 처리의 흐름의 예를 설명한다.
패치 분해 처리가 개시되면, 법선 추정부(151)는, 스텝 S131에 있어서, 3D 데이터의 각 면의 법선을 추정한다.
스텝 S132에 있어서, 세그멘테이션 초기 설정부(152)는, 세그멘테이션의 초기 설정을 행한다.
스텝 S133에 있어서, 세그멘테이션 갱신부(153)는, 스텝 S132에 있어서 설정된 초기 상태의 세그멘테이션을, 필요에 따라 갱신한다.
스텝 S134에 있어서, 투영 방향 설정부(154)는, 예를 들어 View Info 등에 기초하여, 각 세그멘테이션의 투영 방향을 설정한다.
스텝 S135에 있어서, 투영 방향 설정부(154)는, 스텝 S134에 있어서 설정한 투영 방향에 관한 정보를 메타데이터 생성부(112)에 공급한다.
스텝 S136에 있어서, 2차원 투영부(155)는, 3D 데이터의 각 세그멘테이션을, 스텝 S134에 있어서 설정한 투영 방향의 2차원 평면에 투영한다.
스텝 S136의 처리가 종료하면, 패치 분해 처리가 종료하고, 처리는 도 14로 복귀한다.
<메타데이터 생성 처리의 흐름>
이어서, 도 14의 스텝 S102에 있어서 실행되는 메타데이터 생성 처리의 흐름의 예를, 도 16의 흐름도를 참조하여 설명한다.
메타데이터 생성 처리가 개시되면, 투영 방향 정보 생성부(171)는, 스텝 S151에 있어서, 패치 분해부(111)(투영 방향 설정부(154))로부터 공급된 투영 방향에 관한 정보에 기초하여, 투영 방향 정보를 생성한다.
스텝 S152에 있어서, 부호화 단위 정보 생성부(172)는, 스텝 S151에 있어서 생성된 투영 방향 정보에 기초하여, 각 패치를 투영하는 부호화 단위를 설정하고, 부호화 단위 정보를 생성한다.
이상의 처리에 의해, 투영 방향 정보나 부호화 단위 정보 등의 메타데이터가 생성되면, 메타데이터 생성 처리가 종료하고, 처리는 도 14로 복귀한다.
이상과 같이 각 처리를 실행함으로써, 투영 방향을 임의로 설정할 수 있으므로, 예를 들어 View 방향 등에 따른, 보다 적절한 투영 방향의 패치를 생성하고, 부호화할 수 있다. 이에 의해, 복호측에 있어서 3D 데이터의 부호화 데이터를 보다 용이하게 복호할 수 있게 된다. 예를 들어, 오클루젼의 발생을 억제하거나, 패치수의 증대를 억제하거나 할 수 있고, 복호 처리의 부하 증대를 억제할 수 있다.
또한, 이상과 같이 각 처리를 실행함으로써, 복호 시에, 용이하게, 패치의 복호 순을 제어하거나, 일부의 패치만을 복호하는 부분 디코드를 실현하거나 할 수 있다. 즉, 복호측에 있어서 3D 데이터의 부호화 데이터를 보다 용이하게 복호할 수 있게 되고, 복호 처리의 부하 증대를 억제할 수 있다.
<복호 처리의 흐름>
이어서, 복호 장치(200)에 의해 실행되는 복호 처리의 흐름의 예를, 도 17의 흐름도를 참조하여 설명한다.
복호 처리가 개시되면, 복호 장치(200)의 디멀티플렉서(211)는, 스텝 S201에 있어서, 비트스트림을 역다중화한다.
스텝 S202에 있어서, 보조 패치 정보 복호부(213)는, 스텝 S201에 있어서 비트스트림으로부터 추출된 보조 패치 정보를 복호한다.
스텝 S203에 있어서, 메타데이터 처리부(212)는, 스텝 S201에 있어서 비트스트림으로부터 추출된 메타데이터(투영 방향 정보나 부호화 단위 정보)에 따라서 복호를 제어한다.
스텝 S204에 있어서, 비디오 복호부(214)는, 스텝 S203의 복호 제어에 따라, 스텝 S201에 있어서 비트스트림으로부터 추출된 지오메트리 비디오 프레임(위치 정보의 비디오 프레임)의 부호화 데이터를 복호한다.
스텝 S205에 있어서, 비디오 복호부(215)는, 스텝 S203의 복호 제어에 따라, 스텝 S201에 있어서 비트스트림으로부터 추출된 컬러 비디오 프레임(속성 정보의 비디오 프레임)의 부호화 데이터를 복호한다.
스텝 S206에 있어서, OMap 복호부(216)는, 스텝 S203의 복호 제어에 따라, 스텝 S201에 있어서 비트스트림으로부터 추출된 오큐펀시 맵의 부호화 데이터를 복호한다.
스텝 S207에 있어서, 언패킹부(217)는, 지오메트리 비디오 프레임이나 컬러 비디오 프레임을 언패킹하고, 패치를 추출한다.
스텝 S208에 있어서, 3D 재구축부(218)는, 스텝 S202에 있어서 얻어진 보조 패치 정보와, 스텝 S207에 있어서 얻어진 패치 등에 기초하여, 예를 들어 포인트 클라우드 등의 3D 데이터를 재구축한다.
스텝 S208의 처리가 종료하면 복호 처리가 종료한다.
<메타데이터 처리의 흐름>
이어서, 도 17의 스텝 S203에 있어서 실행되는 메타데이터 처리의 흐름의 예를, 도 18의 흐름도를 참조하여 설명한다.
메타데이터 처리가 개시되면, 메타데이터 처리부(212)의 내적 산출부(251)는, 스텝 S221에 있어서, 투영 방향 정보에 기초하여, 지정된 View 방향을 나타내는 View 벡터와, 투영 방향을 나타내는 투영 벡터의 내적을 산출한다.
스텝 S222에 있어서, 복호 범위 설정부(252)는, 스텝 S221에 있어서 산출된 내적의 결과와 부호화 단위 정보에 기초하여, 조건을 만족시키는 투영 방향(그 투영 방향에 대응하는 부호화 단위), 즉, 복호하는 투영 방향(복호하는 부호화 단위)을 특정한다.
스텝 S223에 있어서, 복호 순 설정부(253)는, 투영 방향 정보에 기초하여, 스텝 S222에 있어서 특정된 조건을 만족시키는 부호화 단위의 복호 순을 특정한다.
스텝 S224에 있어서, 복호 제어부(254)는, 비디오 복호부(214), 비디오 복호부(215) 및 OMap 복호부(216)를 제어하고, 스텝 S222에 있어서 특정된 「조건을 만족시키는 부호화 단위」를, 스텝 S223에 있어서 특정한 「복호 순」으로 복호시킨다. 이 복호 제어에 따라, 스텝 S204 내지 스텝 S206(도 17)의 각 처리가 실행된다.
스텝 S224에 있어서, 상술한 바와 같이 복호 제어가 행해지도록 설정되면, 메타데이터 처리가 종료하고, 처리는 도 17로 복귀한다.
이상과 같이 각 처리를 실행함으로써, 패치의 임의로 설정된 투영 방향을 보다 용이하게 파악할 수 있으므로, 예를 들어 View 방향 등에 따라, 보다 적절한 투영 방향의 패치를 선택하여 복호하는 등, 다양한 복호 방법에 있어서도, 3D 데이터의 부호화 데이터를 보다 용이하게 복호할 수 있다. 그 때문에, 복호 처리의 부하 증대를 억제할 수 있다.
또한, 이상과 같이 각 처리를 실행함으로써, 용이하게, 패치의 복호 순을 제어하거나, 일부의 패치만을 복호하는 부분 디코드를 실현하거나 할 수 있다. 즉, 3D 데이터의 부호화 데이터를 보다 용이하게 복호할 수 있게 되고, 복호 처리의 부하 증대를 억제할 수 있다.
<3. 부기>
<제어 정보>
이상의 각 실시 형태에 있어서 설명한 본 기술에 관한 제어 정보를 부호화측으로부터 복호측으로 전송하게 해도 된다. 예를 들어, 상술한 본 기술을 적용하는 것을 허가(또는 금지)할지의 여부를 제어하는 제어 정보(예를 들어 enabled_flag)를 전송하게 해도 된다. 또한, 예를 들어 상술한 본 기술을 적용하는 것을 허가(또는 금지)하는 범위(예를 들어 블록 사이즈의 상한 혹은 하한, 또는 그 양쪽, 슬라이스, 픽처, 시퀀스, 컴포넌트, 뷰, 레이어 등)를 지정하는 제어 정보를 전송하게 해도 된다.
<컴퓨터>
상술한 일련의 처리는, 하드웨어에 의해 실행시킬 수도 있고, 소프트웨어에 의해 실행시킬 수도 있다. 일련의 처리를 소프트웨어에 의해 실행하는 경우에는, 그 소프트웨어를 구성하는 프로그램이, 컴퓨터에 인스톨된다. 여기서 컴퓨터에는, 전용의 하드웨어에 내장되어 있는 컴퓨터나, 각종 프로그램을 인스톨함으로써, 각종 기능을 실행하는 것이 가능한, 예를 들어 범용의 퍼스널 컴퓨터 등이 포함된다.
도 19는, 상술한 일련의 처리를 프로그램에 의해 실행하는 컴퓨터의 하드웨어 구성예를 도시하는 블록도이다.
도 19에 도시되는 컴퓨터(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)에, 미리 인스톨해 둘 수도 있다.
<본 기술의 적용 대상>
이상에 있어서는, 포인트 그라운드 데이터의 부호화·복호에 본 기술을 적용하는 경우에 대하여 설명했지만, 본 기술은, 이들의 예에 한하지 않고, 임의의 규격의 3D 데이터의 부호화·복호에 대하여 적용할 수 있다. 즉, 상술한 본 기술과 모순되지 않는 한, 부호화·복호 방식 등의 각종 처리, 그리고, 3D 데이터나 메타데이터 등의 각종 데이터의 사양은 임의이다. 또한, 본 기술과 모순되지 않는 한, 상술한 일부의 처리나 사양을 생략해도 된다.
또한, 이상에 있어서는, 본 기술의 적용예로서 부호화 장치(100) 및 복호 장치(200)에 대하여 설명했지만, 본 기술은, 임의의 구성에 적용할 수 있다.
예를 들어, 본 기술은, 위성 방송, 케이블 TV 등의 유선 방송, 인터넷 상에서의 배신 및 셀룰러 통신에 의한 단말기로의 배신 등에 있어서의 송신기나 수신기(예를 들어 텔레비전 수상기나 휴대 전화기), 또는 광 디스크, 자기 디스크 및 플래시 메모리 등의 매체에 화상을 기록하거나, 이들 기억 매체로부터 화상을 재생하거나 하는 장치(예를 들어 하드 디스크 레코더나 카메라) 등의, 다양한 전자 기기에 적용될 수 있다.
또한, 예를 들어, 본 기술은 시스템 LSI(Large Scale Integration) 등으로서의 프로세서(예를 들어 비디오 프로세서), 복수의 프로세서 등을 사용하는 모듈(예를 들어 비디오 모듈), 복수의 모듈 등을 사용하는 유닛(예를 들어 비디오 유닛), 또는, 유닛에 추가로 기타의 기능을 부가한 세트(예를 들어 비디오 세트) 등, 장치의 일부 구성으로서 실시할 수도 있다.
또한, 예를 들어, 본 기술은 복수의 장치에 의해 구성되는 네트워크 시스템에도 적용할 수도 있다. 예를 들어, 본 기술을, 네트워크를 통하여 복수의 장치에서 분담, 공동하여 처리하는 클라우드 컴퓨팅으로서 실시하게 해도 된다. 예를 들어, 컴퓨터, AV(Audio Visual) 기기, 휴대형 정보 처리 단말기, IoT(Internet of Things) 디바이스 등의 임의의 단말기에 대하여, 화상(동화상)에 관한 서비스를 제공하는 클라우드 서비스에 있어서 본 기술을 실시하게 해도 된다.
또한, 본 명세서에 있어서, 시스템이란, 복수의 구성 요소(장치, 모듈(부품) 등)의 집합을 의미하고, 모든 구성 요소가 동일 하우징 중에 있는지의 여부는 무관하다. 따라서, 별개의 하우징에 수납되어, 네트워크를 통하여 접속되어 있는 복수의 장치 및 1개의 하우징 중에 복수의 모듈이 수납되고 있는 1개의 장치는, 모두, 시스템이다.
<본 기술을 적용 가능한 분야·용도>
본 기술을 적용한 시스템, 장치, 처리부 등은, 예를 들어 교통, 의료, 방범, 농업, 축산업, 광업, 미용, 공장, 가전, 기상, 자연 감시 등, 임의의 분야에 이용할 수 있다. 또한, 그 용도도 임의이다.
<기타>
또한, 본 명세서에 있어서 「플래그」란, 복수의 상태를 식별하기 위한 정보이고, 참(1) 또는 거짓(0)의 2 상태를 식별할 때에 사용하는 정보뿐만 아니라, 3 이상의 상태를 식별하는 것이 가능한 정보도 포함된다. 따라서, 이 「플래그」가 취할 수 있는 값은, 예를 들어 1/0의 2값이어도 되고, 3값 이상이어도 된다. 즉, 이 「플래그」를 구성하는 bit수는 임의이고, 1bit여도 복수 bit여도 된다. 또한, 식별 정보(플래그도 포함함)는, 그 식별 정보를 비트스트림에 포함하는 형태뿐만 아니라, 어떤 기준이 되는 정보에 대한 식별 정보의 차분 정보를 비트스트림에 포함하는 형태도 상정되기 때문에, 본 명세서에 있어서는, 「플래그」나 「식별 정보」는, 그 정보뿐만 아니라, 기준이 되는 정보에 대한 차분 정보도 포함한다.
또한, 부호화 데이터(비트스트림)에 관한 각종 정보(메타데이터 등)는, 부호화 데이터에 관련지어져 있으면, 어떤 형태로든 전송 또는 기록되게 해도 된다. 여기서, 「관련짓는다」라고 하는 용어는, 예를 들어 한쪽의 데이터를 처리할 때에 다른 쪽의 데이터를 이용할 수 있도록(링크시킬 수 있도록) 하는 것을 의미한다. 즉, 서로 관련지어진 데이터는, 하나의 데이터로서 합쳐져도 되고, 각각 개별의 데이터로 해도 된다. 예를 들어, 부호화 데이터(화상)에 관련지어진 정보는, 그 부호화 데이터(화상)와는 다른 전송로 상에서 전송되게 해도 된다. 또한, 예를 들어 부호화 데이터(화상)에 관련지어진 정보는, 그 부호화 데이터(화상)와는 다른 기록 매체(또는 동일한 기록 매체의 다른 기록 에어리어)에 기록되게 해도 된다. 또한, 이 「관련지음」은, 데이터 전체가 아닌, 데이터의 일부여도 된다. 예를 들어, 화상과 그 화상에 대응하는 정보가, 복수 프레임, 1 프레임 또는 프레임 내의 일부분 등의 임의의 단위로 서로 관련지어지게 해도 된다.
또한, 본 명세서에 있어서, 「합성한다」, 「다중화한다」, 「부가한다」, 「일체화한다」, 「포함한다」, 「저장한다」, 「집어 넣는다」, 「삽입한다」, 「삽입한다」 등의 용어는, 예를 들어 부호화 데이터와 메타데이터를 하나의 데이터에 통합한다고 하는, 복수의 것을 하나로 통합하는 것을 의미하고, 상술의 「관련짓는다」의 하나의 방법을 의미한다.
또한, 본 기술의 실시 형태는, 상술한 실시 형태에 한정되는 것은 아니고, 본 기술의 요지를 일탈하지 않는 범위에 있어서 다양한 변경이 가능하다.
예를 들어, 하나의 장치(또는 처리부)로서 설명한 구성을 분할하고, 복수의 장치(또는 처리부)로서 구성하도록 해도 된다. 반대로, 이상에 있어서 복수의 장치(또는 처리부)로서 설명한 구성을 통합해서 하나의 장치(또는 처리부)로서 구성되게 해도 된다. 또한, 각 장치(또는 각 처리부)의 구성에 상술한 것 이외의 구성을 부가하도록 해도 물론 좋다. 또한, 시스템 전체로서의 구성이나 동작이 실질적으로 동일하면, 어떤 장치(또는 처리부)의 구성의 일부를 다른 장치(또는 다른 처리부)의 구성에 포함하게 해도 된다.
또한, 예를 들어 상술한 프로그램은, 임의의 장치에 있어서 실행되게 해도 된다. 그 경우, 그 장치가, 필요한 기능(기능 블록 등)을 갖고, 필요한 정보를 얻을 수 있게 하면 된다.
또한, 예를 들어 하나의 흐름도의 각 스텝을, 하나의 장치가 실행하도록 해도 되고, 복수의 장치가 분담하여 실행하도록 해도 된다. 또한, 하나의 스텝에 복수의 처리가 포함되는 경우, 그 복수의 처리를, 하나의 장치가 실행하도록 해도 되고, 복수의 장치가 분담하여 실행하도록 해도 된다. 환언하면, 하나의 스텝에 포함되는 복수의 처리를, 복수의 스텝의 처리로서 실행할 수도 있다. 반대로, 복수의 스텝으로서 설명한 처리를 하나개의 스텝으로서 통합하여 실행할 수도 있다.
또한, 예를 들어 컴퓨터가 실행하는 프로그램은, 프로그램을 기술하는 스텝의 처리가, 본 명세서에서 설명하는 순서를 따라서 시계열로 실행되게 해도 되고, 병렬로, 혹은 호출이 행하여졌을 때 등의 필요한 타이밍에서 개별로 실행되게 해도 된다. 즉, 모순이 발생하지 않는 한, 각 스텝의 처리가 상술한 순서와 다른 순서로 실행되게 해도 된다. 또한, 이 프로그램을 기술하는 스텝의 처리가, 다른 프로그램의 처리와 병렬로 실행되게 해도 되고, 다른 프로그램의 처리와 조합하여 실행되게 해도 된다.
또한, 예를 들어 본 기술에 관한 복수의 기술은, 모순이 발생하지 않는 한, 각각 독립적으로 단체로 실시할 수 있다. 물론, 임의의 복수의 본 기술을 병용하여 실시할 수도 있다. 예를 들어, 어느 것의 실시 형태에 있어서 설명한 본 기술의 일부 또는 전부를, 다른 실시 형태에 있어서 설명한 본 기술의 일부 또는 전부와 조합하여 실시할 수도 있다. 또한, 상술한 임의의 본 기술의 일부 또는 전부를, 상술하지 않은 다른 기술과 병용하여 실시할 수도 있다.
또한, 본 기술은 이하와 같은 구성도 취할 수 있다.
(1) 3차원 구조를 나타내는 3D 데이터의 위치 정보의 2차원 평면으로의 투영 방향에 관한 정보인 투영 방향 정보와, 상기 위치 정보를 상기 2차원 평면에 투영한 지오메트리 화상의 부호화 데이터를 포함하는 비트스트림을 생성하는 비트스트림 생성부를
구비하는 화상 처리 장치.
(2) 상기 투영 방향 정보는, 식별자와, 상기 위치 정보를 상기 2차원 평면에 투영할 때의 방향 및 위치와의 대응 관계에 관한 정보를 포함하는
(1)에 기재된 화상 처리 장치.
(3) 상기 투영 방향 정보는, 복호에 관한 속성 정보를 더 포함하는
(2)에 기재된 화상 처리 장치.
(4) 상기 속성 정보는, 복호 순에 관한 정보를 포함하는
(3)에 기재된 화상 처리 장치.
(5) 상기 속성 정보는, 상기 3차원 구조에 있어서의 특성을 나타내는 의미 정보를 포함하는
(3)에 기재된 화상 처리 장치.
(6) 상기 투영 방향 정보를 생성하는 투영 방향 정보 생성부를 더 구비하고,
상기 비트스트림 생성부는, 상기 투영 방향 정보 생성부에 의해 생성된 상기 투영 방향 정보와, 상기 부호화 데이터를 포함하는 비트스트림을 생성하는
(1)에 기재된 화상 처리 장치.
(7) 상기 투영 방향 정보에 따라, 상기 지오메트리 화상을 화상에 배치하여 패킹하는 패킹부와,
상기 패킹부에 의해 상기 지오메트리 화상이 패킹된 상기 화상을 부호화하여, 상기 부호화 데이터를 생성하는 부호화부를
더 구비하고,
상기 비트스트림 생성부는, 상기 투영 방향 정보와, 상기 부호화부에 의해 생성된 상기 부호화 데이터를 포함하는 비트스트림을 생성하는
(1)에 기재된 화상 처리 장치.
(8) 3차원 구조를 나타내는 3D 데이터의 위치 정보의 2차원 평면으로의 투영 방향에 관한 정보인 투영 방향 정보와, 상기 위치 정보를 상기 2차원 평면에 투영한 지오메트리 화상의 부호화 데이터를 포함하는 비트스트림을 생성하는
화상 처리 방법.
(9) 3차원 구조를 나타내는 3D 데이터의 위치 정보의 2차원 평면으로의 투영 방향에 관한 정보인 투영 방향 정보에 기초하여, 상기 위치 정보를 상기 2차원 평면에 투영한 지오메트리 화상의 부호화 데이터를 포함하는 비트스트림을 복호하는 복호부를
구비하는 화상 처리 장치.
(10) 3차원 구조를 나타내는 3D 데이터의 위치 정보의 2차원 평면으로의 투영 방향에 관한 정보인 투영 방향 정보에 기초하여, 상기 위치 정보를 상기 2차원 평면에 투영한 지오메트리 화상의 부호화 데이터를 포함하는 비트스트림을 복호하는
화상 처리 방법.
(11) 3차원 구조를 나타내는 3D 데이터의 위치 정보를 2차원 평면에 투영한 지오메트리 화상을, 화상의, 상기 위치 정보의 상기 2차원 평면으로의 투영 방향에 따른 부호화 단위에 배치하여 패킹하는 패킹부를
구비하는 화상 처리 장치.
(12) 상기 패킹부는, 상기 투영 방향의 식별자와, 상기 지오메트리 화상을 배치하는 부호화 단위를 나타내는 정보의 대응 관계를 나타내는 부호화 단위 정보에 기초하여, 상기 지오메트리 화상을 패킹하는
(11)에 기재된 화상 처리 장치.
(13) 상기 부호화 단위 정보는, 복호에 관한 속성 정보를 더 포함하는
(12)에 기재된 화상 처리 장치.
(14) 상기 속성 정보는, 상기 3차원 구조에 있어서의 특성을 나타내는 의미 정보를 포함하는
(13)에 기재된 화상 처리 장치.
(15) 상기 부호화 단위 정보를 생성하는 부호화 단위 정보 생성부를 더 구비하고,
상기 패킹부는, 상기 부호화 단위 정보 생성부에 의해 생성된 상기 부호화 단위 정보에 기초하여, 상기 지오메트리 화상을 패킹하는
(12)에 기재된 화상 처리 장치.
(16) 상기 패킹부에 의해 상기 지오메트리 화상이 패킹된 상기 화상을 부호화하여, 부호화 데이터를 생성하는 부호화부와,
상기 부호화 단위 정보와, 상기 부호화부에 의해 생성된 상기 부호화 데이터를 포함하는 비트스트림을 생성하는 비트스트림 생성부를 더 구비하는
(12)에 기재된 화상 처리 장치.
(17) 상기 부호화 단위는, 슬라이스, 타일 또는 픽처인
(11)에 기재된 화상 처리 장치.
(18) 3차원 구조를 나타내는 3D 데이터의 위치 정보를 2차원 평면에 투영한 지오메트리 화상을, 화상의, 상기 위치 정보의 상기 2차원 평면에의 투영 방향에 따른 부호화 단위에 배치하여 패킹하는
화상 처리 방법.
(19) 비트스트림의, 3차원 구조를 나타내는 3D 데이터의 위치 정보의 2차원 평면으로의 투영 방향에 따른 부호화 단위로부터, 상기 투영 방향으로 상기 2차원 평면에 투영한 지오메트리 화상을 복호하는 복호부를
구비하는 화상 처리 장치.
(20) 비트스트림의, 3차원 구조를 나타내는 3D 데이터의 위치 정보의 2차원 평면으로의 투영 방향에 따른 부호화 단위로부터, 상기 투영 방향으로 상기 2차원 평면에 투영한 지오메트리 화상을 복호하는
화상 처리 방법.
100: 부호화 장치
111: 패치 분해부
112: 메타데이터 생성부
113: 패킹부
114: 보조 패치 정보 압축부
115: 비디오 부호화부
116: 비디오 부호화부
117: OMap 부호화부
118: 멀티플렉서
151: 법선 추정부
152: 세그멘테이션 초기 설정부
153: 세그멘테이션 갱신부
154: 투영 방향 설정부
155: 2차원 투영부
156: 인덱스 부여부
171: 투영 방향 정보 생성부
172: 부호화 단위 정보 생성부
200: 복호 장치
211: 디멀티플렉서
212: 메타데이터 처리부
213: 보조 패치 정보 복호부
214: 비디오 복호부
215: 비디오 복호부
216: OMap 복호부
217: 언패킹부
218: 3D 재구축부
251: 내적 산출부
252: 복호 범위 설정부
253: 복호 순 설정부
254: 복호 제어부

Claims (20)

  1. 3차원 구조를 나타내는 3D 데이터의 위치 정보가 세그멘테이션으로 분해되어 2차원 평면에 투영된 패치를 상기 패치의 투영 방향에 대응하는 부호화 단위에 배치하고, 상기 패치가 배치된 2차원 화상을 비디오 프레임으로서 패킹하는 패킹부와,
    상기 패킹부에 의해 패킹된 상기 비디오 프레임을 상기 부호화 단위마다 부호화하여, 부호화 데이터를 생성하는 부호화부와,
    상기 부호화부에 의해 생성된 상기 부호화 데이터를 포함하는 비트스트림을 생성하는 비트스트림 생성부를
    구비하는 화상 처리 장치.
  2. 제1항에 있어서, 상기 패킹부는, 각 부호화 단위에 대응하는 투영 방향을 나타내는 부호화 단위 정보에 기초하여, 상기 패치를 상기 패치의 투영 방향에 대응하는 부호화 단위에 배치하고,
    상기 비트스트림 생성부는, 상기 부호화 단위 정보를 상기 비트스트림에 포함하는
    화상 처리 장치.
  3. 제2항에 있어서, 상기 부호화 단위는, 프레임, 슬라이스 및 타일 중 적어도 어느 하나인
    화상 처리 장치.
  4. 제2항에 있어서, 상기 부호화 단위 정보는, 부가 정보로서, 상기 부호화 단위에 대응하는 상기 3차원 구조에 있어서의 특성을 나타내는 의미 정보를 포함하는
    화상 처리 장치.
  5. 제2항에 있어서, 상기 패치의 투영 방향에 관한 정보인 투영 방향 정보에 기초하여, 상기 부호화 단위 정보를 생성하는 부호화 단위 정보 생성부를 더 구비하고,
    상기 비트스트림 생성부는, 상기 투영 방향 정보와, 상기 부호화 단위 정보 생성부에 의해 생성된 상기 부호화 단위 정보를 상기 비트스트림에 포함하는
    화상 처리 장치.
  6. 제5항에 있어서, 상기 투영 방향 정보는, 부가 정보로서, 각 투영 방향의 복호 우선 순을 나타내는 정보를 포함하는
    화상 처리 장치.
  7. 제6항에 있어서, 상기 우선 순은, View 방향의 초기값인 디폴트 View 방향의 패치 복호를 우선시키는 순인
    화상 처리 장치.
  8. 제1항에 있어서, 상기 부호화부는, 상기 부호화 단위의 품질을, 상기 부호화 단위에 대응하는 투영 방향에 따라서 제어하는
    화상 처리 장치.
  9. 제1항에 있어서, 상기 부호화부는, 상기 부호화 단위의 품질을, 상기 부호화 단위에 대응하는 투영 방향의 표시 빈도에 따라서 설정하는
    화상 처리 장치.
  10. 3차원 구조를 나타내는 3D 데이터의 위치 정보가 세그멘테이션으로 분해되어 2차원 평면에 투영된 패치를 상기 패치의 투영 방향에 대응하는 부호화 단위에 배치하고, 상기 패치가 배치된 2차원 화상을 비디오 프레임으로서 패킹하고,
    패킹된 상기 비디오 프레임을 상기 부호화 단위마다 부호화하여, 부호화 데이터를 생성하고,
    생성된 상기 부호화 데이터를 포함하는 비트스트림을 생성하는
    화상 처리 방법.
  11. 3차원 구조를 나타내는 3D 데이터의 위치 정보가 세그멘테이션으로 분해되어 2차원 평면에 투영된 패치가 상기 패치의 투영 방향에 대응하는 부호화 단위에 배치되고, 상기 패치가 배치된 2차원 화상이 비디오 프레임으로서 패킹되고, 패킹된 상기 비디오 프레임이 상기 부호화 단위마다 부호화되어서 생성된 부호화 데이터 중, 원하는 투영 방향에 대응하는 상기 부호화 단위의 부호화 데이터를 복호하는 복호부를
    구비하는 화상 처리 장치.
  12. 제11항에 있어서, 상기 복호부는, 비트스트림으로부터 추출된 각 부호화 단위에 대응하는 투영 방향을 나타내는 부호화 단위 정보에 기초하여, 상기 비트스트림으로부터 추출된 상기 부호화 데이터 중, 상기 원하는 투영 방향에 대응하는 상기 부호화 단위의 부호화 데이터를 복호하는
    화상 처리 장치.
  13. 제12항에 있어서, 상기 부호화 단위는, 프레임, 슬라이스 및 타일 중 적어도 어느 하나인
    화상 처리 장치.
  14. 제12항에 있어서, 상기 복호부는, 상기 부호화 단위 정보에 기초하여, 상기 비트스트림으로부터 추출된 상기 부호화 데이터 중, 일부의 상기 부호화 단위의 부호화 데이터를 복호하는
    화상 처리 장치.
  15. 제14항에 있어서, 상기 복호부는, 상기 비트스트림으로부터 추출된 상기 부호화 데이터 중, 지정된 View 방향과의 내적의 절댓값이 소정의 역치보다도 작은 투영 방향에 대응하는 상기 부호화 단위의 부호화 데이터를 복호하는
    화상 처리 장치.
  16. 제14항에 있어서, 상기 부호화 단위 정보는, 부가 정보로서, 상기 부호화 단위에 대응하는 상기 3차원 구조에 있어서의 특성을 나타내는 의미 정보를 포함하고,
    상기 복호부는, 상기 비트스트림으로부터 추출된 상기 부호화 데이터 중, 원하는 상기 의미 정보에 대응하는 상기 부호화 단위의 부호화 데이터를 복호하는
    화상 처리 장치.
  17. 제11항에 있어서, 상기 복호부는, 비트스트림으로부터 추출된 상기 패치의 투영 방향에 관한 정보인 투영 방향 정보에 기초하여, 상기 비트스트림으로부터 추출된 상기 부호화 데이터 중, 상기 원하는 투영 방향에 대응하는 상기 부호화 단위의 부호화 데이터를 복호하는
    화상 처리 장치.
  18. 제17항에 있어서, 상기 투영 방향 정보는, 부가 정보로서, 각 투영 방향의 복호의 우선 순을 나타내는 정보를 포함하고,
    상기 복호부는, 복호 대상의 각 부호화 단위의 부호화 데이터를, 상기 투영 방향 정보에 포함되는 상기 우선 순을 따라서 복호하는
    화상 처리 장치.
  19. 제17항에 있어서, 상기 복호부는, 복호 대상의 각 부호화 단위의 부호화 데이터를, 지정된 View 방향에 가까운 투영 방향 순으로 복호하는
    화상 처리 장치.
  20. 3차원 구조를 나타내는 3D 데이터의 위치 정보가 세그멘테이션으로 분해되어 2차원 평면에 투영된 패치가 상기 패치의 투영 방향에 대응하는 부호화 단위에 배치되고, 상기 패치가 배치된 2차원 화상이 비디오 프레임으로서 패킹되고, 패킹 된 상기 비디오 프레임이 상기 부호화 단위마다 부호화되어서 생성된 부호화 데이터 중, 원하는 투영 방향에 대응하는 상기 부호화 단위의 부호화 데이터를 복호하는
    화상 처리 방법.

KR1020207027270A 2018-04-11 2019-03-28 화상 처리 장치 및 방법 KR20200140256A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JPJP-P-2018-076225 2018-04-11
JP2018076225 2018-04-11
PCT/JP2019/013535 WO2019198521A1 (ja) 2018-04-11 2019-03-28 画像処理装置および方法

Publications (1)

Publication Number Publication Date
KR20200140256A true KR20200140256A (ko) 2020-12-15

Family

ID=68163656

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020207027270A KR20200140256A (ko) 2018-04-11 2019-03-28 화상 처리 장치 및 방법

Country Status (7)

Country Link
US (1) US11310518B2 (ko)
EP (1) EP3780613A4 (ko)
JP (1) JPWO2019198521A1 (ko)
KR (1) KR20200140256A (ko)
CN (1) CN111937388A (ko)
TW (1) TW201946449A (ko)
WO (1) WO2019198521A1 (ko)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111566703B (zh) * 2018-01-17 2023-10-20 索尼公司 图像处理装置和方法
CN110662087B (zh) 2018-06-30 2021-05-11 华为技术有限公司 点云编解码方法和编解码器
JP7100523B2 (ja) * 2018-07-27 2022-07-13 京セラ株式会社 表示装置、表示システムおよび移動体
US11677922B2 (en) * 2018-08-12 2023-06-13 Lg Electronics Inc. Apparatus for transmitting a video, a method for transmitting a video, an apparatus for receiving a video, and a method for receiving a video
US11956478B2 (en) * 2019-01-09 2024-04-09 Tencent America LLC Method and apparatus for point cloud chunking for improved patch packing and coding efficiency
JPWO2020230710A1 (ko) * 2019-05-10 2020-11-19
US11575935B2 (en) * 2019-06-14 2023-02-07 Electronics And Telecommunications Research Institute Video encoding method and video decoding method
EP4090028A4 (en) * 2020-01-07 2023-04-26 LG Electronics Inc. POINT CLOUD DATA TRANSMITTER APPARATUS, POINT CLOUD DATA TRANSMITTER METHOD, POINT CLOUD DATA RECEIVE APPARATUS AND POINT CLOUD DATA RECEIVE METHOD
WO2021210513A1 (ja) * 2020-04-13 2021-10-21 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
WO2021261516A1 (ja) * 2020-06-23 2021-12-30 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115869098A (zh) * 2016-07-27 2023-03-31 阿莱恩技术有限公司 具有牙科诊断能力的口内扫描仪
US11514613B2 (en) * 2017-03-16 2022-11-29 Samsung Electronics Co., Ltd. Point cloud and mesh compression using image/video codecs
CN110892453B (zh) * 2017-07-10 2024-02-13 三星电子株式会社 使用图像/视频编解码器的点云和网格压缩
US11405643B2 (en) * 2017-08-15 2022-08-02 Nokia Technologies Oy Sequential encoding and decoding of volumetric video
US10909725B2 (en) * 2017-09-18 2021-02-02 Apple Inc. Point cloud compression
TWI815842B (zh) * 2018-01-16 2023-09-21 日商索尼股份有限公司 影像處理裝置及方法
CN110049323B (zh) * 2018-01-17 2021-09-07 华为技术有限公司 编码方法、解码方法和装置
US10887574B2 (en) * 2018-07-31 2021-01-05 Intel Corporation Selective packing of patches for immersive video
US12010350B2 (en) * 2019-03-22 2024-06-11 Lg Electronics Inc. Point cloud data transmission device, point cloud data transmission method, point cloud data reception device, and point cloud data reception method
WO2020197086A1 (ko) * 2019-03-25 2020-10-01 엘지전자 주식회사 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법

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
EP3780613A4 (en) 2021-05-19
US11310518B2 (en) 2022-04-19
CN111937388A (zh) 2020-11-13
EP3780613A1 (en) 2021-02-17
JPWO2019198521A1 (ja) 2021-05-13
TW201946449A (zh) 2019-12-01
WO2019198521A1 (ja) 2019-10-17
US20210250600A1 (en) 2021-08-12

Similar Documents

Publication Publication Date Title
JP7384159B2 (ja) 画像処理装置および方法
KR20200140256A (ko) 화상 처리 장치 및 방법
US11699248B2 (en) Image processing apparatus and method
US11721048B2 (en) Image processing apparatus and method
US20210027505A1 (en) Image processing apparatus and method
JP7331852B2 (ja) 画像処理装置および方法
US11399189B2 (en) Image processing apparatus and method
US20210168394A1 (en) Image processing apparatus and method
JP7396302B2 (ja) 画像処理装置および方法
US11995873B2 (en) Image processing apparatus and method
US20230370637A1 (en) Image processing device and method