KR20170082658A - 깊이 기반 블록 파티셔닝을 사용하여 텍스처 블록을 인코딩 및 디코딩하는 방법 및 장치 - Google Patents

깊이 기반 블록 파티셔닝을 사용하여 텍스처 블록을 인코딩 및 디코딩하는 방법 및 장치 Download PDF

Info

Publication number
KR20170082658A
KR20170082658A KR1020177018453A KR20177018453A KR20170082658A KR 20170082658 A KR20170082658 A KR 20170082658A KR 1020177018453 A KR1020177018453 A KR 1020177018453A KR 20177018453 A KR20177018453 A KR 20177018453A KR 20170082658 A KR20170082658 A KR 20170082658A
Authority
KR
South Korea
Prior art keywords
block
partitioning
texture
texture block
depth
Prior art date
Application number
KR1020177018453A
Other languages
English (en)
Other versions
KR101891637B1 (ko
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 KR20170082658A publication Critical patent/KR20170082658A/ko
Application granted granted Critical
Publication of KR101891637B1 publication Critical patent/KR101891637B1/ko

Links

Images

Classifications

    • H04N13/0271
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/271Image signal generators wherein the generated image signals comprise depth maps or disparity maps
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N13/0022
    • H04N13/0048
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/128Adjusting depth or disparity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/161Encoding, multiplexing or demultiplexing different image signal components
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/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/176Methods 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 block, e.g. a macroblock
    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/192Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • 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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals

Landscapes

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

Abstract

본 발명은 텍스처 이미지의 인코딩된 텍스처 블록을 디코딩하는 디코딩 장치에 관한 것으로, 상기 디코딩 장치는 상기 인코딩된 텍스처 블록(312')에 연관된 깊이 정보(322)에 기초하여 상기 인코딩 텍스처 블록에 대한 파티셔닝 마스크(332)를 결정하도록 구성된 파티셔너(510) - 상기 파티셔닝 마스크(332)는 복수의 파티션(P1, P2)을 규정하고 상기 인코딩된 텍스처 블록의 텍스처 블록 요소를 상기 인코딩된 텍스처 블록의 복수의 파티션 중 하나의 파티션과 연관짓도록 구성됨 -; 및 상기 파티션 마스크에 기초하여 상기 인코딩된 텍스처 블록의 상기 복수의 파티션의 파티션들을 디코딩하도록 구성된 디코더(720)를 포함한다.

Description

깊이 기반 블록 파티셔닝을 사용하여 텍스처 블록을 인코딩 및 디코딩하는 방법 및 장치 {METHOD AND APPARATUS FOR ENCODING AND DECODING A TEXTURE BLOCK USING DEPTH BASED BLOCK PARTITIONING}
본 발명의 실시예는 컴퓨터 비전(computer vision) 분야에 관한 것으로, 특히 예를 들어, 3D 이미지 및 비디오 코딩에 사용되는 텍스처 플러스 깊이(texture-plus-depth) 이미지 및 비디오 코딩에 관한 것이다.
3D 비디오 처리에서, 깊이 데이터는 일반적으로 텍스처 비디오의 각 프레임에 대응하는 깊이 맵(depth map)의 세트로 표현된다. 깊이 맵의 각 지점의 세기(intensity)는 그 지점에 의해 표현되는 시각적 장면(visual scene)의, 카메라로부터의 거리를 기술한다. 또는, 시차 맵(disparity map)이 사용될 수 있으며, 시차 값(disparity value)은 깊이 맵의 깊이 값에 역 비례한다.
3D 비디오 코딩에서는, 텍스처 데이터 또는 텍스처 정보라고도 하는 종래의 비디오 데이터 외에도 뷰(view) 각각에 대한 깊이 맵이 인코딩되어야 한다. 비 3D 코덱(non-3D codec)의 이전 버전과의 호환성(backward compatibility)을 유지하기 위해, 기존의 3D 비디오 코덱에서는 기본 뷰(base-view)에 대한 텍스처 데이터가 먼저 인코딩된다. 나머지 성분의 코딩 순서는 조정될 수 있다. 현재, 두 가지 주요 코딩 순서: 텍스처 우선(texture-first)과 깊이 우선(depth-first)이 이용되며, 이 둘 다, 성분 간 의존성(inter-component dependency), 즉 텍스처 성분과 대응하는 깊이 성분 또는 시차 성분 사이의 의존성을 활용할 기회를 제공하여, 3D 비디오 코덱의 전체 코딩 성능을 향상시킨다. 텍스처 우선 코딩 순서는 진보한 텍스처 의존 코딩 툴(texture dependent coding tool)이 깊이 데이터의 코딩에 사용될 수 있도록 한다. 한편, 깊이 우선 코딩 순서는 텍스처 코딩에 진보한 깊이 의존 코딩 툴(depth-dependent coding tool)을 가능하게 한다.
3D-HEVC[G. Tech, K. Wegner, Y. Chen, S. Yea, "3D-HEVC test model 2," Document of Joint Collaborative Team on 3D Video Coding Extension Development, JCT3V-B1005, October, 2012]라는, 3D 비디오 코딩의 미래의 표준에서는, 현재 텍스처 우선 코딩 순서가 일반적인 시험 조건(Common test Condition, CTC)으로 사용된다. 3D-AVC["3D-AVC Draft Text 6", JCT3V-D1002, Incheon, Rep. of Korea, Apr. 2013]라는, 3D 비디오 코딩의 더 먼 미래의 표준에서는, 현재 깊이 우선 코딩 순서가 일반적인 시험 조건(CTC)으로 사용된다,
3D 영상의 결합 코딩(combined coding)은 전체 코딩 성능을 향상시키기 위해 성분 간 의존성을 활용을 목표로 하는 중요한 연구 분야이다. 두 방향(텍스처에서 깊이(texture-to-depth)로 그리고 깊이에서 텍스처(depth-to-texture)로)이 가능하고 성분 간 의존성을 이용하여 전체 코딩 효율을 향상시킬 수 있다.
문헌: [P. Merkle, C. Bartnik, K. Muller, D. Marpe, T. Wiegand, "Depth coding based on inter-component prediction of block partitions", Picture Coding Symposium, Krakow, Poland, May 2012]에서는, 동일한 뷰의 이미 코딩된 텍스처 정보가 세그먼테이션 마스크(segmentation mask)를 생성하는 데 사용되며, 이는 인트라 예측된(intra-predicted) 블록 내의 병치된(collocated) 깊이 블록을 예측하는 데 사용된다. 결과로 얻은 이진 세그먼테이션 마스크의 두 개의 세그먼트(segment) 각각에 대해, DC 예측 값이 도출된다. 텍스처에서 깊이로의 이 형상 예측(shape prediction)은 예측 품질, 특히 깊이 불연속의 위치 정확도를 향상시킬 것이다.
유사한 개념이 문헌:["Description of 3D Video Technology Proposal by Fraunhofer HHI (HEVC compatible; configuration A)", Doc. M22570, Nov. 2011, Geneva, Switzerland]에서 제안되었으며, 깊이 맵 코딩을 위해 웨지릿 및 윤곽 파티셔닝(Wedgelet and Contour partitioning)이 도입되었다.
또한, 인터 예측(inter prediction)에서 텍스처 성분과 깊이 성분 사이의 높은 상관관계를 이용하는 방법이 제안되었다. 동일한 뷰의 깊이 성분의 필요한 비트레이트를 줄이기 위해 텍스처 뷰의 이미 코딩된 움직임 정보(즉, 움직임 벡터와 참조 픽처 인덱스)를 재사용하는 것이 문헌: [M. Winken, H. Schwarz, T. Wiegand, "Motion vector inheritance for high efficiency 3D video plus depth coding", Picture Coding Symposium, Krakow, Poland, May 2012]에서 제안되었다. 이 방법에서는, 깊이 블록을 코딩할 때 움직임 벡터 정보와 예측 유닛의 파티셔닝을 또한 병치된 텍스처 블록으로부터 물려받을 수 있다.
문헌: [Joint Collaborative Team on 3D Video Coding Extension Development (JCT-3V) of ITU-T VCEG and ISO/IEC MPEG, "3D-CE3.h: Depth quadtree prediction for 3DHTM 4.1," JCT3V-B0068, Tech. Rep., Oct. 2012]에서, 저자들은 깊이 성분에 대한 대응하는 텍스처 쿼드트리(quad-tree)로의 블록 파티셔닝(즉, 코딩 쿼드트리의 깊이)을 제한할 것을 제안한다. 이 제한에 의해, 깊이 성분 내의 스플리팅 플래그(splitting flag)에 대한 비트레이트를 절약할 수 있지만, 또한 두 성분 간의 파싱 의존성(parsing dependency)을 도입한다.
이미 코딩된 깊이 정보에 기초한 종속된 텍스처 뷰에 대해 추가적인 예측 신호를 합성하는 것은 문헌: ["Description of 3D Video Coding Technology Proposal by Nokia", Doc. M22552, Nov. 2011, Geneva, Switzerland] 및 [C. Lee, Y.-S. Ho, "A framework of 3D video coding using view synthesis prediction", Picture Coding Symposium, Krakow, Poland, May 2012]에 의해 제안되어 있다. 여기서, 인코딩 블록의 콘텐츠(화소 값)는 뷰 간에 화소 위치를 적절히 매핑하기 위해 깊이를 요구하는 깊이 이미지 기반 렌더링(Depth Image-Based Rendering) 기술을 사용하여 참조 텍스처 뷰로부터 합성된다.
문헌: ["Description of 3D Video Technology Proposal by Fraunhofer HHI (HEVC compatible; configuration A)", Doc. M22570, Nov. 2011, Geneva, Switzerland] 및 ["Technical Desciption of Poznan University of Technology proposal for Call on 3D Video Coding Technology", Doc. M22697, Nov. 2011, Geneva, Switzerland]에서, 현재의 코딩된 블록을 인코딩하는 데 사용되는 참조 뷰(reference view)로부터의 움직임 정보의 예측을 위한 후보는 코딩된 블록과 연관된 깊이 값에 기초하여 도출된다.
이미 인코딩된 참조 뷰로부터 잔차(residuum)를 예측하기 위해 유사한 접근법이 문헌: ["Description of 3D Video Technology Proposal by Fraunhofer HHI (HEVC compatible; configuration A)", Doc. M22570, Nov. 2011, Geneva, Switzerland]에 제안되었다. 깊이 추정에 기초하여, 시차 벡터(disparity vector)는 현재 블록에 대해 결정되고 시차 벡터에 의해 참조되는 참조 뷰 내의 잔차 블록(residual block)은 현재 블록의 잔차를 예측하는 데 사용된다.
문헌: ["Depth-based weighted bi-prediction for video plus depth map coding", ICIP 2012, Sept. 2012]에서, 코딩된 블록에 대해 양방향 인터 예측 결과의 병합은 깊이 정보에 기초하여 값이 계산되는 가중치를 사용하여 이루어진다. 가중치를 계산하는 상이한 방법들이, 블록의 하나 또는 다른 영역에 대한 이진 할당(binary assignment)을 포함하여, 제안되어 있다.
본 발명의 목적은 3D 이미지 또는 3D 비디오의 텍스처 이미지의 텍스처 블록을 코딩하기 위한 효율적인 코딩 방안, 즉 인코딩 및 디코딩 방안을 제공하는 것이다.
본 발명의 상기한 목적 및 다른 목적들은 독립 청구항의 특징에 의해 달성된다. 또한 구현 형태들은 종속 청구항, 상세한 설명 및 도면으로부터 명백하다.
대부분의 기존 방안은 텍스트와 깊이의 의존성(texture-to-depth dependency)를 이용한다. 그러나, 두 방향(텍스처에서 깊이, 그리고 깊이에서 텍스처)이 일정한 이점들을 보여준다는 사실에도 불구하고, 일반적으로, 텍스처 비트레이트가 깊이 성분의 비트레이트보다 상당히 높기 때문에, 텍스처 비트레이트를 줄이기 위해 깊이 정보를 사용하는 것이 더 바람직한 것으로 생각된다.
게다가, 텍스처 인코딩에 대해, 종래기술의 방법은 규칙적인 형상의 파티션(partition)을 가지는 블록 파티셔닝(block partitioning)을 이용하거나 그러한 방법의 코딩 성능을 감소시키는 임의의 형상을 시그널링하기 위한 정교한 방법을 필요로 한다. 임의의 형상의 파티션을 결정하기 위한 성분 간 의존성(inter-component dependency)은 깊이 정보에 기초하여 지금까지 텍스처에 기초한 깊이 파티셔닝에만 사용되었다. 임의의 형상의 텍스처 파티션을 결정함으로써, 전체 코딩 성능이 향상될 수 있다.
본 발명의 측면들 및 구현 형태들은, 이 텍스처 블록과 연관된 깊이 정보에 기초하여 결정되는 파티셔닝을 사용하여 텍스처 블록을 코딩, 즉 인코딩 및 디코딩하는 방안을 제공한다. 본 발명에 따르면, 텍스처 블록을 코딩하기 위해 규칙적인, 전형적으로 직사각형 형상의 파티션을 사용하는 대신에, 깊이 정보에 따라 그 형상이 결정되는, 임의의, 일반적으로 규칙적인 않은, 특히 직사각형이 아닌 형상의 미리 정해진 수의 파티션을 사용하여 블록이 코딩된다. 파티션의 형상이 깊이 정보에 관한 이전의 지식(knowledge)을 사용하여 결정될 수 있기 때문에, 파티션의 형상을 결정하기 위한 계산이 디코더에서 반복되므로 파티션의 임의의 형상은 인코더에서 디코더로 송신될 필요가 없다. 설명한 방안은 또한 깊이 기반 블록 파티셔닝(depth-based block partitioning, DBBP)이라고도 할 수 있다.
다른 측면들 및 구현 형태들은 3D 및 텍스처 플러스 깊이(texture-plus-depth) 비디오 코딩에 DBBP를 사용하는 텍스처 코딩을 향상시킬 방안 및/또는 DBBP 기반 비디오 코딩의 복잡도를 감소시킬 방안을 제공한다.
제1 측면에 따르면, 본 발명은 텍스처 이미지의 텍스처 블록을 인코딩하는 인코딩 방법에 관한 것으로, 상기 인코딩 방법은 상기 인코딩된 텍스처 블록에 연관된 깊이 정보에 기초하여 상기 인코딩 텍스처 블록에 대한 파티셔닝 마스크(partitioning mask)를 결정하는 단계 - 상기 파티셔닝 마스크는 복수의 파티션(partition)을 규정하고 상기 텍스처 블록의 텍스처 블록 요소를 상기 복수의 파티션 중 하나의 파티션과 연관짓도록 구성됨 -; 및 상기 파티션 마스크에 기초하여 상기 텍스처 블록의 상기 복수의 파티션의 파티션들을 인코딩함으로써 상기 텍스처 블록을 인코딩하는 단계를 포함한다.
다시 말해, 제1 측면에 따른 인코딩 방법은 깊이 기반 블록 파티셔닝을 사용하며 깊이 기반 블록 파티셔닝 또는 깊이 기반 블록 파티셔닝 인코딩이라고도 할 수 있다.
제1 측면에 따른 인코딩 방법은 텍스처 성분과 깊이 성분 사이의 성분 간 의존성을 활용한다. 또한, 텍스처 비트레이트를 감소시키기 위해 깊이 정보를 사용함으로써, 텍스처 성분에 대한 비트레이트는 대응하는 깊이 성분에 대한 비트레이트보다 상당히 높기 때문에, 코딩 효율이 향상될 수 있다.
더욱이, 텍스처 블록의 코딩을 위해, 규칙적인, 예를 들어, 정사각형 형상의 파티션을 사용하는 대신에, 제1 측면에 따른 인코딩은 임의의 형상의 파티션을 규정할 수 있도록 해주며, 임의의 형상의 파티션은 인코딩될 텍스처 블록에 연관된 깊이 정보에 기초하여 결정된다. 텍스처 블록 내의 유사하거나 동일한 텍스처 특징을 가지는 영역들은 전형적으로 규칙적인 형상, 특히 직사각형 형상을 나타내지 않기 때문에, 텍스처 블록에 연관된 깊이 정보에 기초한 임의의 형상의 파티셔닝은 그러한 임의의 텍스처 영역에 대해 더 정확한 설명 또는 모델링을 용이하게 한다. 따라서, 예를 들어, 종래의 직사각형 형상의 블록 파티셔닝에 비교하면, 규칙적인 형상의 파티셔닝에 비해 예측 오류를 감소시킬 수 있고 및/또는 깊이 쿼드 트리(deep-quad-tree) 파티셔닝의 시그널링에 필요한 시그널링 오버헤드(sinaling overrhead)를 감소시킬 수 있다.
다시 말해, 제1 측면에 따른 인코딩 방법은 텍스처 블록을, 불규칙적인 파티션 및 규칙적인 파티션을 포함하는 임의의 유형의 파티션으로 분할할 수 있도록 해준다. 끝으로, 텍스처 블록의 파티션의 형상이 텍스처 블록에 연관된 깊이 정보에 관한 이전의 지식을 사용하여 결정될 수 있기 때문에, 텍스처 블록의 파티션의 형상을 결정하기 위한 계산은, 예를 들어, 디코딩될 인코딩된 텍스처 블록에 연관되는 디코딩된 깊이 정보(깊이 우선 코딩)에 기초하여, 디코더에서 효과적으로 수행될 수 있으므로, 텍스처 블록의 파티션의 임의의 형상을 설명하는 정보를 인코더에서 디코더로 송신할 필요는 없다.
텍스처 이미지는 스틸 이미지(still image)의 텍스처 성분 또는 비디오 프레임의 텍스처 성분일 수 있다.
깊이 정보는 깊이 맵의 깊이 값 또는 시차 맵의 시차 값일 수 있다.
제1 측면에 따른 인코딩 방법의 제1 가능한 구현 형태에서, 복수의 파티션의 파티션들을 인코딩하는 단계는, 상기 텍스처 블록의 복수의 파티션 중 제2 파티션과는 별개로 상기 텍스처 블록의 복수의 파티션 중 제1 파티션에 대해 상기 제1 파티션의 인코딩에 사용될 코딩 정보를 결정하는 것을 포함한다. 상기 코딩 정보는 텍스처 블록의 개별 세그먼트의 예측 코딩(prediction coding) 또는 텍스처 블록의 개별 세그먼트의 비예측 코딩(non-prediction coding)에 관련된 정보와 관련이 있거나 그 정보를 포함할 수 있다.
예측 코딩의 경우, 상기 코딩 정보는, 예측 모드(prediction mode), 예측기 인덱스(predictor index), 예측 방향(prediction direction), 참조 픽처 인덱스(reference picture index), 참조 뷰 인덱스(reference view index), 변환 계수(transform coefficient), 움직임 벡터(motion vector), 및 코딩 컨텍스트(coding context) 중 하나 이상을 포함할 수 있다.
상기 복수의 파티션의 파티션들의 인코딩은, 각각의 파티션에 대해 별개로 수행될 수 있다. 상기 코딩 정보를 일부 또는 모든 파티션에 대해 별개로 결정함으로써, 예측 정확도가 향상될 수 있고, 따라서 예측 에러를 감소시킬 수 있다.
이러한 제1 측면 또는 제1 측면의 제1 구현 형태에 따른 인코딩 방법의 제2 가능하는 구현 형태에서, 상기 복수의 파티션을 구성하는 파티션의 수는 미리 결정되거나 적응적으로 결정된다.
상기 복수의 파티션을 구성하는 파티션의 수를 결정하는 두 가지 방법(미리 결정 또는 적응적으로 결정)은 코딩된 블록을 나타내는 파티션의 수에 대해 비트스트림 내에 추가적인 시그널링을 필요로 하지 않는다. 그렇지 않으면, 상기 인코더는 그러한 정보, 예컨대, 파티션의 수를 깊이 기반 블록 파티셔닝을 사용하는 각각의 블록에 대해, 추가해야 했을 것이다.
이러한 제1 측면 또는 제1 측면의 선행 구현 형태 중 어느 하나에 따른 인코딩 방법의 제3 가능한 구현 형태에서, 상기 복수의 파티션을 구성하는 파티션의 수는 상기 텍스처 블록에 연관된 깊이 정보를 분석함으로써 적응적으로 결정된다.
상기 텍스처 블록과 연관된 깊이 정보, 예를 들어, 깊이 맵 값 또는 시차 맵 값의 분석하는 것은, 상기 텍스처 블록의 상기 텍스처 정보, 예컨대, 색도(chrominance)와 휘도(luminance)를 분석하는 것보다 덜 복잡하다. 따라서, 깊이 정보는 효율적인 방식으로 텍스트 블록의 파티션의 수를 결정하는 데 사용될 수 있다. 특히, 블록 레벨에서, 상기 깊이 정보는 일반적으로 매우 적은 수의, 상기 텍스처 블록에 연관된 깊이 정보와 그에 상응하여 그 텍스처 블록을 용이하게 복수의 파티션으로 분할하는 것과 관련 있는 범위 또는 깊이 정보 값을 포함한다. 보통, 단 두 개의 파티션, 예를 들어, 텍스처 블록 내의 전경 물체(foreground object)의 영역을 나타내는 제1 파티션 및 텍스처 블록 내의 배경의 영역에 대응하는 제2 파티션이면 충분하다.
제1 측면 또는 제1 측면의 선행 구현 형태 중 어느 하나에 따른 인코딩 방법의 제2 가능한 구현 형태에서, 상기 파티션 마스크로, 상기 텍스처 블록의 텍스처 블록 요소를 상기 복수의 파티션 중 하나와 연관짓는 것은, 상기 텍스처 블록 요소에 연관된 깊이 정보 값과 임계값의 비교에 기초하여 수행된다.
상기 파티셔닝 마스크 및 대응하는 파티션을 결정하기 위한 임계값의 사용은, 특히, 일차원 깊이 정보 값과의 결합으로, 낮은 계산 복잡도에도 불구하고 세그먼테이션을 실행하는 효율적인 방법을 제공한다.
제4 구현 형태에 따른 인코딩 방법의 제5 구현 형태에 따르면, 상기 임계값은 미리 결정되거나 적응적으로 결정된다.
상기 임계값을 결정하는 두 가지 방법(미리 결정 또는 적응적으로 결정)은 코딩된 블록에 대한 임계값의 비트스트림 내에 추가적인 시그널링을 필요로 하지 않는다. 이것은 디코더에 송신되어야 할 비트의 수를 줄이고, 코딩 성능을 향상시킨다. 그렇지 않으면, 인코더는 깊이 기반 블록 파티셔닝을 사용하는 각각의 블록에 대한 임계값에 관한 정보를 비트스트림에 추가해야 했을 것이다.
제1 측면의 제4 또는 제5 구현 형태에 따른 인코딩 방법의 제6 구현 형태에 따르면, 상기 임계값은 상기 텍스처 블록에 연관된 깊이 정보를 분석함으로써 적응적으로 결정된다.
상기 임계값을 적응적으로 결정하는 것은, 인코딩될 텍스처 블록과 연관된 영역에 대해 상기 깊이 정보 값의 평균값을 계산하고; 상기 임계값을 상기 계산된 평균값으로 설정하는 것을 포함할 수 있다.
상기 임계값을 적응적으로 결정하는 것은, 인코딩될 텍스처 블록과 연관된 영역에 대해 상기 깊이 정보 값의 가중 평균(weighted average)을 계산하고, 상기 임계값을 상기 가중 평균의 값으로 설정하는 것을 포함할 수 있으며, 상기 가중 평균의 계산 시에 사용된 가중치는 상기 텍스처 블록의 중심으로부터의 거리에 의존한다.
상기 임계값을 적응적으로 결정하는 것은, 인코딩될 텍스처 블록과 연관된 영역으로부터 상기 깊이 정보 값의 중앙값(median value)을 계산하고, 상기 임계값을 상기 계산된 중앙값으로 설정하는 것을 포함할 수 있다.
제안된 구현 형태들은 비교적 간단한, 계산적으로 복잡하지 않은 임계값 계산 방법을 제공한다. 이것은 특히 대개 전력 소비 및 계산 능력 모두에 제약이 있는 디코더에 중요하다. 게다가, 제안된 방법들은 하드웨어 구현을 더 용이하게 하는 알고리즘의 규칙적인 구조와 함께 구현될 수 있다.
제1 측면 또는 제1 측면의 제1 내지 제3 구현 형태 중 어느 하나에 따른 인코딩 방법의 제7 구현 형태에 따르면, 상기 파티셔닝 마스크를 결정하는 단계는, 상기 텍스처 블록에 연관된 깊이 정보 값들의 영역에 대한 에지 검출 알고리즘(edge detection algorithm)의 적용에 기초하여 수행된다.
깊이 정보를 표현하는 이미지에서 검출된 에지의 위치에 관한 정보의 사용은, 물체의 경계를 유지하는 파티션을 결정하는 간단한 방법을 제공한다. 특히, 그러한 파티셔닝은 대개 코딩 성능을 최대화하기 위해 코덱에 의해 선택될 가장 바람직한 파티셔닝을 반영한다. 게다가, 깊이 정보를 표현하는 이미지에 대해 수행되는 에지 검출은 대개 계산적으로 복잡하지 않은 쉬운 타스크(task)이다.
제1 측면 또는 제1 측면의 선행 구현 형태 중 어느 하나에 따른 제8 구현 형태에 따르면, 상기 파티셔닝 마스크를 결정하는 단계는 반복적으로 수행되며, 각각의 반복에서 미리 정해진 선택 기준을 충족하는 파티션은, 미리 정해진 종료 기준(termination-criterion)이 충족될 때까지 또는 추가 파티셔닝 기준(further-partitioning-criterion)이 여전히 충족되는 한, 서브파티션(sub-partiotion)으로 더 분할되며, 상기 텍스처 블록은 반복적인 파티셔닝에 사용되는 초기 파티션을 수행한다.
상기 초기 파티션의 파티셔닝을 위해 또는 임의의 후속하는 서브파티션을 위해, 선행하는 구현 형태 중 어느 하나가 사용될 수 있다.
이러한 반복적인 파티셔닝 방법은 비교적 하드웨어로 구현되기 쉬운 알고리즘의 규칙적인 구조를 나타낸다. 또한, 알고리즘을 변경하거나 조정(tuning)하는 경우, 다음의 모든 반복이 정확히 동일한 처리를 사용하기 때문에, 임의의 기준에 대한 수정은 일단 이루어져야 한다.
제1 측면 또는 제1 측면의 선행 구현 형태 중 어느 하나에 따른 제9 구현 형태에 따르면, 상기 인코딩 방법은, 코딩 모드 지시자(coding mode indicator)를 상기 텍스처 블록의 복수의 파티션의 인코딩된 파티션의 코딩 정보를 포함하는 비트스트림으로 멀티플렉싱하는 단계를 더 포함하고, 상기 코딩 모드 지시자는, 상기 텍스처 블록의 파티셔닝이 상기 텍스처 블록에 연관된 깊이 정보에 기초하여 도출된 파티셔닝 마스크를 사용하여 수행되었는지를 지시하고, 및/또는, 상기 코딩 모드 지시자는 상기 텍스처 블록에 연관된 깊이 정보에 기초하여 도출된 파티셔닝 마스크를 사용하는 복수의 상이한 파티셔닝 모드 중 특정 파티셔닝 모드가 사용되었는지를 지시한다.
이러한 시그널링 방식에서, 본 발명에 의해 제안된 깊이 기반 블록 파티셔닝의 사용은 매우 유연하며 기존의 비디오 코덱의 구조(신택스(syntax) 및 시맨틱스(semantics))에 대한 용이한 구현을 제공한다.
제1 측면 또는 제1 측면의 선행 구현 형태 중 어느 하나에 따른 인코딩 방법의 제10 구현 형태에 따르면, 상기 방법은 상기 텍스처 블록에 연관된 깊이 정보를 인코딩하고 디코딩하여 상기 파티셔닝 마스크의 결정에 사용된 깊이 정보를 취득하는 단계를 더 포함한다.
원래의 깊이 정보 대신에 이미 인코딩되어 디코딩된 깊이 정보를 사용함으로써, 인코더는 디코더에 이용 가능하게 될 동일한 깊이 정보를 사용하고, 따라서, 디코더 측에서 원래의 텍스처 블록을 더 정확하게 재구성할 수 있도록 디코더에 송신될 수 있는, 예측 에러를 더 정확하게 계산할 수 있다.
본 발명의 제2 측면에 따르면, 본 발명은 텍스처 이미지의 텍스처 블록을 인코딩하는 인코딩 방법에 관한 것으로, 상기 인코딩 방법은, 제1 측면 또는 그 구현 형태 중 어느 하나에 의해 지정되는 깊이 기반 블록 파티셔닝 코딩 모드에 따라 상기 텍스처 블록을 인코딩하는 단계; 하나 또는 복수의 규치적인 형상의 파티셔닝 코딩 모드를 사용하여 상기 텍스처 블록을 인코딩하는 단계; 및 선택 기준에 기초하여, 상기 인코딩된 텍스처 블록의 송신을 위해 상기한 코딩 모드 중 하나를 선택하는 단계를 포함한다.
다른 코딩 모드들, 특히 규칙적인 형상의 파티셔닝 코딩 모드들과 결합하여 제1 측면의 그 구현 형태 중 어느 하나에 따른 인코딩 방법을 사용함으로써, 예를 들어 코딩 효율과 관련하여 가장 적합한 것이 송신을 위해 선택될 수 있다.
제2 측면의 제1 구현 형태에 따르면, 상기 선택하는 단계는, 상기 깊이 기반 블록 파티셔닝 코딩 모드의 인코딩 비용과 상기 하나의 규칙적인 형상의 파티셔닝 코딩 모드 또는 상기 복수의 규칙적인 형상의 파티셔닝 코딩 모드의 인코딩 비용을 비교하는 단계; 및 상기 깊이 기반 블록 파티셔닝 코딩 모드의 인코딩 비용이 상기 하나의 규칙적인 형상의 파티셔닝 인코딩 모드의 인코딩 비용보다 낮거나 상기 복수의 규칙적인 형상의 파티셔닝 코딩 모드의 모든 인코딩보다 낮은 경우에, 상기 깊이 기반 블록 파티셔닝 코딩 모드를 선택하는 단계를 포함한다.
제2 측면 또는 제2 측면의 제1 구현 형태에 따른 인코딩 방법의 제2 구현 형태에 따르면, 상기 텍스처 블록을 코딩하기 위해 상기한 코딩 모드 중 하나를 선택하는 단계는 텍스처 블록마다 수행되고; 및/또는 상기 인코딩 방법은, GOP마다, 인트라 구간(intra-period)마다, 이미지마다, 슬라이스마다, 또는 코딩 유닛(coding unit)마다 또는 매크로블록(macroblock)마다, 깊이 기반 블록 파티셔닝 코딩 모드를 인에이블링 또는 디스에이블링하는 단계를 더 포함하며, 상기 깊이 기반 블록 파티셔닝 코딩 모드에 대한 인에이블링 또는 디스에이블링 지시는 SPS, PPS, PBS, VPS, 픽처 헤더(picture header), SH, 매크로블록(macroblock) 내에 또는 상기 코딩 유닛 신택스 내에 시그널링된다.
텍스처 블록마다 코딩 모드를 선택하는 것은, 가장 적합한 코딩 모드가 사용되기 때문에 코딩 효율을 향상시킬 수 있도록 해준다.
더 큰 규모로 깊이 기반 블록 파티셔닝 코딩 모드를 사용할 가능성은 인에이블링 또는 디스에이블링하는 것은, 예를 들어, 그 택스처의 부분(portion)들에 대한 통계적인 분석으로 인해, 텍스처 이미지의 부분들에 대한 깊이 기반 블록 파티셔닝에 덜 적합한 것으로 생각되고, 그 때문에 규칙적인 형상 기반 코딩 모드를 포함하는 다른 코딩 모드들이 더 적합하는 것으로 생각되는 텍스처 이미지의 부분들에 대한 시그널링 오버헤더를 감소시킬 수 있도록 해준다.
제2 측면 또는 제2 측면의 제1 또는 제2 구현 형태에 따른 인코딩 방법의 제3 구현 형태에 따르면, 상기 복수의 선택 가능한 코딩 모드는 하나의 깊이 기반 블록 파티셔닝 코딩 모드와 규칙적인 형상의 파티셔닝에 기초한 코딩 모드의 세트를 포함하고; 상기 규칙적인 형상의 파티셔닝에 기초한 코딩 모드 각각은 그것에 연관된 모드 특정 코딩 모드 지시자(mode specific coding mode indicator)를 가지고, 이는 각각의 규칙적인 형상의 파티셔닝 코딩 모드를 다른 규칙적인 형상의 파티셔닝 코딩 모드와 구별짓고; 상기 깊이 기반 블록 파티셔닝 코딩 모드(depth based partitioning coding mode)의 선택은, 상기 코딩 모드 지시자의 세트의 코딩 모드 지시자 중 하나에만 플래그를 추가함으로써 시그널링되고, 상기 플래그의 제1 값은, 상기 코딩 모드 지시자에 연관된 상기 규칙적인 형상의 파티셔닝 코딩 모드가 선택되었음을 지시하고, 상기 플래그의 제2 값은 상기 깊이 기반 블록 파티셔닝 코딩 모드가 선택되었음을 지시한다.
코딩 모드 지시자 중 하나에만 플래그를 추가함으로써, 전체 코딩 성능을 증대시킬 수 있다. 예를 들어, 플래그는 제안된 방법의 사용으로 인해 덜 빈번하게 사용되는 코드 지시자에 추가될 수 있다. 이렇게, 다른, 빈번하게 사용된 모드들의 모드 지시자가 추가 플래그에 의해 영향을 받지 않고 전체 비트레이트는 감소될 수 있다.
제2 측면 또는 제2 측면의 선행 구현 형태 중 어느 하나에 따른 제4 구현 형태에 따르면, 상기 인코딩 방법은, 상기 파티셔닝 마스크를 규칙적인 형상의 파티션에 매핑하는 단계; 및 상기 파티셔닝 마스크의 상기 규칙적인 형상의 파티셔닝 표현 또는 상기 파티셔닝 마스크의 상기 규칙적인 형상의 파티셔닝 표현에 기초하여 도출된 정보에 기초하여 연속적인 텍스트 블록을 인코딩하는 단계를 더 포함한다.
상기 연속적인 텍스처 블록의 인코딩에 사용된 인코딩은, 제1 또는 제2 측면 또는 그것들의 구현 형태 중 어느 하나에 따른 깊이 기반 블록 파티셔닝 인코딩을 사용하거나 규칙적인 형상의 파티셔닝 코딩 모드를 사용하여 수행될 수 있다.
제3 측면에 따르면, 본 발명은, 컴퓨터 프로그램이 컴퓨터에서 실행될 때, 제1 측면 또는 그 구현 형태 중 어느 하나 및/또는 제2 측면 및 그 구현 형태 중 어느 하나에 따른 인코딩 방법을 수행하기 위한 프로그램 코드를 구비한 컴퓨터 프로그램에 관한 것이다.
제4 측면에 따르면, 본 발명은, 인코딩 장치에 의한 사용을 위한 프로그램 코드를 저장하는, 컴퓨터로 판독 가능한 저장 매체를 포함하는 컴퓨터 프로그램 제품에 관한 것으로, 상기 프로그램은 제1 측면 및 그 구현 형태 중 어느 하나, 및/또는 제2 측면 및 그 구현 형태 중 어느 하나에 따른 인코딩 방법을 실행하기 위한 명령어들을 포함한다.
제5 측면에 따르면, 본 발명은 제1 측면 또는 그 구현 형태 중 어느 하나, 및/또는 제2 측면 및 그 구현 형태 중 어느 하나에 따른 인코딩 방법을 실행하도록 구성된 인코딩 장치에 관한 것이다.
상기 인코딩 장치는 제1 측면 또는 그 구현 형태 중 어느 하나, 및/또는 제2 측면 및 그 구현 형태 중 어느 하나에 따른 인코딩 방법을 실행하도록 구성된 프로세서를 포함할 수 있다.
상기 컴퓨터 및/또는 그 프로세서는 상기 제3 측면에 따라 인코딩 방법을 수행하기 위한 컴퓨터 프로그램을 실행하도록 프로그램 가능하게 되어 있을 수 있다.
상기 컴퓨터 및/또는 그 프로세서는, 상기 제4 측면에 따른 컴퓨터 프로그램 제품의 컴퓨터로 판독 가능한 저장 매체에 저장된 프로그램 코드를 사용하여 제1 측면 및 그 구현 형태 중 어느 하나 및/또는 제2 측면 및 그 구현 형태 중 어느 하나에 따른 인코딩 방법을 실행하기 위한 프로그램 코드에 포함된 명령어들을 실행하도록 프로그램 가능하게 되어 있을 수 있다.
제6 측면에 따르면, 본 발명은 텍스처 이미지의 텍스처 블록을 인코딩하는 인코딩 장치에 관한 것이며, 상기 인코딩 장치는, 상기 텍스처 블록에 연관된 깊이 정보에 기초하여 상기 텍스처 블록에 대한 파티셔닝 마스크를 결정하도록 구성된 파티셔너 - 상기 파티셔닝 마스크는 상기 텍스처 블록의 복수의 파티션을 규정하고 상기 텍스처 블록의 텍스처 블록 요소를 상기 복수의 파티션 중 하나의 파티션과 연관짓도록 구성됨; 및 상기 파티셔닝 마스크에 기초하여 상기 텍스처 블록의 복수의 파티션의 파티션들을 인코딩함으로써 상기 텍스처 블록을 인코딩하도록 구성된 인코더를 포함한다.
상기 인코딩 장치는 또한 깊이 기반 블록 파티셔닝 인코딩 장치라고도 지칭될 수 있다.
제6 측면에 따른 인코딩 장치의 제1 가능한 구현 형태에서, 상기 인코더는 상기 텍스처 블록의 복수의 파티션 중 제2 파티션과는 별개로 상기 텍스처 블록의 복수의 파티션 중 제1 파티션에 대해 상기 제1 파티션의 인코딩에 사용될 코딩 정보를 결정하도록 구성된다.
상기 코딩 정보는 상기 텍스처 블록의 개별 세그먼트의 예측 코딩 또는 상기 텍스처 블록의 개별 세그먼트의 비예측 코딩에 관련된, 정보와 관련이 있거나 그 정보를 포함할 수 있다.
상기 예측 코딩의 경우, 상기 코딩 정보는, 예측 모드, 예측기 인덱스, 예측 방향, 참조 픽처 인덱스, 참조 뷰 인덱스, 변환 계수, 움직임 벡터, 및 코딩 컨텍스트에 중 하나 이상을 포함할 수 있다.
상기 인코더는 파티션 각각에 대해 개별적으로 상기 복수의 파티션의 파티션들의 인코딩을 수행하도록 구성될 수 있다. 상기 코딩 정보를 일부 또는 모든 파티션에 대해 개별적으로 결정함으로써, 예측 정확도가 향상될 수 있고, 따라서 예측 에러를 감소시킬 수 있다.
이러한 제6 측면 또는 제6 측면의 제1 구현 형태에 따른 인코딩 장치의 제2 가능하는 구현 형태에서, 상기 복수의 파티션을 구성하는 파티션의 수는, 예를 들어 파티셔너에 의해, 적응적으로 결정되거나 미리 결정된다.
이러한 제6 측면 또는 제6 측면의 선행 구현 형태 중 어느 하나에 따른 인코딩 장치의 제3 가능한 구현 형태에서, 상기 복수의 파티션을 구성하는 파티션의 수는 상기 텍스처 블록에 연관된 깊이 정보를 분석함으로써 상기 파티셔너에 의해 적응적으로 결정된다.
제6 측면 또는 제6 측면의 선행 구현 형태 중 어느 하나에 따른 인코딩 장치의 제4 가능한 구현 형태에서, 상기 파티셔너는, 상기 파티셔닝 마스크에 의해, 상기 텍스처 블록 요소에 연관된 깊이 정보 값과 임계값의 비교에 기초하여, 상기 텍스처 블록의 텍스처 블록 요소를 상기 복수의 파티션 중 하나와 연관짓도록 구성된다.
제4 구현 형태에 따른 인코딩 장치의 제5 가능한 구현 형태에서, 상기 임계값은, 예를 들어, 상기 파티셔너에 의해, 적응적으로 결정되거나 미리 정해진다.
제6 측면의 제4 또는 제5 구현 형태에 따른 인코딩 장치의 제6 구현 형태에 따르면, 상기 임계값은, 예를 들어, 상기 결정기(determiner)에 의해, 상기 텍스처 블록에 연관된 깊이 정보를 분석함으로써 적응적으로 결정된다.
상기 임계값을 적응적으로 결정하는 것은, 인코딩될 상기 텍스처 블록과 연관된 영역에 대해 상기 깊이 정보 값의 평균값을 계산하고; 상기 임계값을 상기 계산된 평균값으로 설정하는 것을 포함할 수 있다.
예컨대, 상기 파티셔너에 의해, 상기 임계값을 적응적으로 결정하는 것은, 인코딩될 텍스처 블록과 연관된 영역에 대해 상기 깊이 정보 값의 가중 평균을 계산하고; 상기 임계값을 상기 가중 평균의 값으로 설정하는 것을 포함할 수 있으며, 상기 가중 평균의 계산 시에 사용된 가중치는 상기 텍스처 블록의 중심으로부터의 거리에 의존한다.
예컨대, 상기 파티셔너에 의해, 상기 임계값을 적응적으로 결정하는 것은, 상기 인코딩될 텍스처 블록과 연관된 영역으로부터 상기 깊이 정보 값의 중앙값을 계산하고; 상기 임계값을 상기 계산된 중앙값으로 설정하는 것을 포함할 수 있다.
제6 측면 또는 제6 측면의 제1 내지 제3 구현 형태 중 어느 하나에 따른 인코딩 장치의 제7 구현 형태에 따르면, 상기 파티셔너는 상기 텍스처 블록에 연관된 깊이 정보 값들의 영역에 대한 에지 검출 알고리즘의 적용에 기초하여 상기 파티셔닝 마스크를 결정하도록 구성된다.
제6 측면 또는 제6 측면의 선행 구현 형태 중 어느 하나에 따른 인코딩 장치의 제8 구현 형태에 따르면, 상기 파티셔너는 반복 방식(iterative manner)으로 상기 파티셔닝 마스크를 결정하도록 구성되고, 각각의 반복에서 미리 정해진 선택 기준을 충족하는 파티션은, 미리 정해진 종료 기준(termination-criterion)이 충족될 때까지 또는 추가 파티셔닝 기준(further-partitioning-criterion)이 여전히 충족되는 한, 서브파티션으로 더 분할되며, 상기 텍스처 블록은 반복적인 파티셔닝에 사용되는 초기 파티션을 수행한다.
상기 초기 파티션의 파티셔닝을 위해 또는 임의의 후속하는 서브파티션을 위해, 선행 구현 형태 중 어느 하나가 사용될 수 있다.
제6 측면 또는 제6 측면의 선행 구현 형태 중 어느 하나에 따른 인코딩 장치의 제9 구현 형태에 따르면, 상기 인코딩 장치는, 코딩 모드 지시자를 상기 텍스처 블록의 복수의 파티션의 인코딩된 파티션의 코딩 정보를 포함하는 비트스트림으로 멀티플렉싱하도록 구성된 멀티플렉서를 더 포함하고, 상기 코딩 모드 지시자는, 상기 텍스처 블록의 파티셔닝이 상기 텍스처 블록에 연관된 깊이 정보에 기초하여 도출된 파티셔닝 마스크를 사용하여 수행되었는지를 지시하고, 및/또는, 상기 코딩 모드 지시자는 상기 텍스처 블록과 연관된 깊이 정보에 기초하여 도출된 파티셔닝 마스크를 사용하여 복수의 상이한 파티셔닝 모드 중 특정 파티셔닝 모드가 사용되었는지를 지시한다.
제6 측면 또는 제6 측면의 선행 구현 형태 중 어느 하나에 따른 인코딩 장치의 제10 구현 형태에 따르면, 상기 인코딩 장치는 상기 텍스처 블록에 연관된 깊이 정보를 인코딩하도록 구성된 인코더; 및 상기 인코더에 의해 인코딩된 깊이 정보를 디코딩하여 상기 파티셔닝 마스크의 결정에 사용된 상기 텍스처 블록에 연관된 깊이 정보를 취득하도록 구성된 디코더를 더 포함한다.
본 발명의 제7 측면에 따르면, 본 발명은 텍스처 이미지의 텍스처 블록을 인코딩하는 멀티모드(multimode) 인코딩 장치에 관한 것이며, 상기 멀티모드 인코딩 장치는, 제6 측면 또는 그 구현 형태 중 어느 하나에 의해 지정되는 깊이 기반 블록 파티셔닝 코딩 모드에 따라 상기 텍스처 블록을 인코딩하는 인코딩 장치; 하나 또는 복수의 규칙적인 형상의 파티셔닝 코딩 모드를 사용하여 상기 텍스처 블록을 인코딩하도록 구성된 추가의 인코딩 장치; 및 선택 기준에 기초하여, 상기 인코딩된 텍스처 블록의 송신을 위해 상기한 코딩 모드 중 하나를 선택하도록 구성된 선택기를 포함한다.
제7 측면에 따른 멀티모드 인코딩 장치의 제1 구현 형태에 따르면, 상기 선택기는 상기 깊이 기반 블록 파티셔닝 코딩 모드의 인코딩 비용과 상기 하나의 규칙적인 형상의 파티셔닝 코딩 모드의 인코딩 비용 또는 상기 복수의 규칙적인 형상의 파티셔닝 코딩 모드의 인코딩 비용을 비교하고; 상기 깊이 기반 블록 파티셔닝 코딩 모드의 인코딩 비용이, 상기 하나의 규칙적인 형상의 파티셔닝 코딩 모드의 인코딩 비용보다 낮거나 상기 복수의 규칙적인 형상의 파티셔닝 코딩 모드의 모든 인코딩 비용보다 낮은 경우에 상기 깊이 기반 블록 파티셔닝 코딩 모드를 선택하도록 더 구성된다.
제7 측면 또는 제7 측면의 제1 구현 형태에 따른 멀티모드 인코딩 장치의 제2 구현 형태에 따르면, 상기 선택기는, 상기 텍스처 블록을 코딩하기 위해 상기한 코딩 모드 중 하나를 선택하도록 구성되고; 및/또는 GOP마다, 인트라 구간마다, 이미지마다, 슬라이스마다, 매크로블록마다 또는 코딩 유닛마다, 상기 깊이 기반 블록 파티셔닝 코딩 모드를 인에이블 또는 디스에이블하도록 구성되고, 상기 선택기는 상기 깊이 기반 블록 파티셔닝 코딩 모드에 대한 인에이블 또는 디스에이블 지시를 SPS, PPS, PBS, VPS, 픽처 헤더, SH, 매크로블록 내에 또는 상기 코딩 유닛 신택스 내에 시그널링하도록 구성된다.
제7 측면 또는 제7 측면의 제1 또는 제2 구현 형태에 따른 멀티모드 인코딩 장치의 제3 구현 형태에 따르면, 상기 복수의 선택 가능한 코딩 모드는 하나의 깊이 기반 블록 파티셔닝 코딩 모드와 규칙적인 형상의 파티셔닝에 기초한 코딩 모드의 세트를 포함하고; 상기 규칙적인 형상의 파티셔닝에 기초한 코딩 모드 각각은 그것과 연관된 모드 특정 코딩 모드 지시자를 가지고, 이는 각각의 규칙적인 형상의 파티셔닝 코딩 모드를 다른 규칙적인 형상의 파티셔닝 코딩 모드와 구별짓고; 상기 선택기는, 상기 코딩 모드 지시자의 세트의 코딩 모드 지시자 중 하나에만 플래그를 추가함으로써 상기 깊이 기반 파티셔닝 코딩 모드의 선택을 시그널링하도록 구성되고; 상기 플래그의 제1 값은, 상기 코딩 모드 지시자에 연관된 상기 규칙적인 형상의 파티셔닝 코딩 모드가 선택되었음을 지시하고, 상기 플래그의 제2 값은 상기 깊이 기반 블록 파티셔닝 코딩 모드가 선택되었음을 지시한다.
제7 측면 또는 제7 측면의 선행 구현 형태 중 어느 하나에 따른 멀티모드 인코딩 장치의 제4 구현 형태에 따르면, 상기 멀티모드 인코딩 장치는, 상기 파티셔닝 마스크를 규칙적인 형상의 파티션에 매핑하도록 구성되고; 상기 멀티모드 인코딩 장치는 상기 파티셔닝 마스크의 상기 규칙적인 형상의 파티셔닝 표현 또는 상기 파티셔닝 마스크의 상기 규칙적인 형상의 파티셔닝 표현에 기초하여 도출된 정보에 기초하여 연속적인 텍스트 블록을 인코딩하도록 구성된 텍스처 인코더(texture encoder)를 포함한다.
상기 텍스처 인코더는, 제1 측면 또는 그 구현 형태 중 어느 하나에 따른 인토더 또는 인코딩 장치일 수 있거나, 또는 규칙적인 형상의 파티셔닝 코딩 모드를 사용하여 상기 연속적인 텍스처를 인코딩하도록 구성된 추가적인 인코더일 수 있다.
본 발명의 제8 측면에 따르면, 본 발명은 텍스처 이미지의 인코딩된 텍스처 블록을 디코딩하는 디코딩 방법에 관한 것이며, 상기 디코딩 방법은, 상기 인코딩된 텍스처 블록에 연관된 깊이 정보에 기초하여 상기 인코딩된 텍스처 블록에 대한 파티셔닝 마스크를 결정하는 단계 - 상기 파티셔닝 마스크는 복수의 파티션을 규정하고 상기 인코딩된 텍스처 블록의 텍스처 블록 요소를 상기 인코딩된 텍스처 블록의 복수의 파티션 중 하나의 파티션과 연관짓도록 구성됨 -; 및 상기 파티셔닝 마스크에 기초하여 상기 인코딩된 텍스처 블록의 복수의 파티션의 파티션들을 디코딩하는 단계를 포함한다.
제8 측면에 따른 디코딩 방법의 제1 가능한 구현 형태에서, 상기 복수의 파티션의 파티션들을 디코딩하는 단계는, 상기 텍스처 블록의 복수의 파티션 중 제2 파티션에 대한 코딩 정보와는 별개로 상기 인코딩 텍스처 블록의 복수의 파티션 중 제1 파티션에 대한 코딩 정보를 비트스트림으로부터 추출하는 단계를 포함하고, 상기 코딩 정보는 상기 제1 파티션의 디코딩에 사용된다.
상기 코딩 정보는 예측 또는 비예측 코딩과 관련 있을 수 있다. 상기 코딩 정보는 상기 제1 파티션의 디코딩에 사용되고, 예측 모드, 예측기 인덱스, 예측 방향, 참조 픽처 인덱스, 참조 뷰 인덱스, 변환 계수, 움직임 벡터, 및 코딩 컨텍스트에 중 하나 이상을 포함할 수 있다.
제8 측면 또는 제8 측면의 제1 구현 형태에 따른 디코딩 방법의 제2 가능한 구현 형태에서, 상기 복수의 파티션을 구성하는 파티션의 수는 미리 결정되거나 적응적으로 결정된다.
제8 측면 또는 제8 측면의 제1 또는 제2 구현 형태에 따른 디코딩 방법의 제3 가능한 구현 형태에서, 상기 복수의 파티션을 구성하는 파티션의 수는 상기 텍스처 블록에 연관된 깊이 정보를 분석함으로써 적응적으로 결정된다.
제8 측면 또는 제8 측면의 선행 구현 형태 중 어느 하나에 따른 디코딩 방법의 제4 가능한 구현 형태에서, 상기 복수의 파티션을 구성하는 파티션의 수는, 상기 텍스처 블록에 연관된 깊이 정보 값의 히스토그램(histogram)을 분석함으로써, 예를 들어 상기 히스토그램에서 피크의 수를 카운팅하고, 상기 복수의 파티션을 구성하는 파티션의 수를 상기 카운팅된 피크의 수와 동일하게 설정함으로써, 결정된다.
*제8 측면 또는 제8 측면의 선행 구현 형태 중 어느 하나에 따른 디코딩 방법의 제5 가능한 구현 형태에서, 상기 파티셔닝 마스크에 의해, 상기 텍스처 블록의 텍스처 블록 요소를 상기 복수의 파티션 중 하나와 연관짓는 단계는, 상기 텍스처 블록 요소에 연관된 깊이 정보 값과 임계값의 비교에 기초하여 수행된다.
제8 측면의 제5 구현 형태에 따른 디코딩 방법의 제6 가능한 구현 형태에서, 상기 임계값은 미리 결정되거나 적응적으로 결정된다.
제8 측면의 제6 구현 형태에 따른 디코딩 방법의 제7 가능한 구현 형태에서, 상기 임계값을 적응적으로 결정하는 것은, 인코딩될 상기 텍스처 블록과 연관된 영역에 대해 상기 깊이 정보 값의 평균값을 계산하고, 상기 임계값을 상기 계산된 평균값으로 설정하는 것; 또는 인코딩될 텍스처 블록과 연관된 영역에 대해 상기 깊이 정보 값의 가중 평균을 계산하고, 상기 임계값을 상기 가중 평균의 값으로 설정하는 것 - 상기 가중 평균의 계산 시에 사용된 가중치는 상기 텍스처 블록의 중심으로부터의 거리에 의존함 -; 또는 상기 인코딩될 텍스처 블록과 연관된 영역으로부터 상기 깊이 정보 값의 중앙값을 계산하고, 상기 임계값을 상기 계산된 중앙값으로 설정하는 것을 포함할 수 있다.
제8 측면 또는 제8 측면의 선행 구현 형태 중 어느 하나에 따른 디코딩 방법의 제8 구현 형태에 따르면, 상기 파티셔닝 마스크를 결정하는 단계는 상기 텍스처 블록에 연관된 깊이 정보 값들의 영역에 대해 에지 검출 알고리즘의 적용하는 것에 기초하여 수행된다.
제8 측면 또는 제8 측면의 선행 구현 형태 중 어느 하나에 따른 디코딩 방법의 제9 구현 형태에 따르면, 상기 파티셔닝 마스크를 결정하는 단계는 반복 방식으로 수행되고, 각각의 반복에서 미리 정해진 선택 기준을 충족하는 파티션은, 미리 정해진 종료 기준이 충족될 때까지 또는 추가 파티셔닝 기준이 여전히 충족되는 한, 서브파티션으로 더 분할되며, 상기 텍스처 블록은 반복적인 파티셔닝에 사용되는 초기 파티션을 수행한다.
제8 측면 또는 제8 측면의 선행 구현 형태 중 어느 하나에 따른 디코딩 방법의 제9 구현 형태에 따르면, 상기 디코딩 방법은, 상기 텍스처 블록의 복수의 파티션의 인코딩된 파티션의 코딩 정보를 포함하는 비트스트림으로부터 코딩 모드 지시자를 추출하는 단계를 더 포함하고, 상기 코딩 모드 지시자는, 상기 텍스처 블록의 파티셔닝이 상기 텍스처 블록에 연관된 깊이 정보에 기초하여 도출된 파티셔닝 마스크를 사용하여 수행되었는지를 지시하고, 및/또는, 상기 코딩 모드 지시자는 상기 텍스처 블록과 연관된 깊이 정보에 기초하여 도출된 파티셔닝 마스크를 사용하여 복수의 상이한 파티셔닝 모드 중 특정 파티셔닝 모드가 사용되었는지를 지시한다.
본 발명의 제9 측면에 따르면, 본 발명은 텍스처 이미지의 텍스처 블록을 디코딩하는 디코딩 방법에 관한 것으로, 상기 디코딩 방법은, 상기 텍스처 블록의 복수의 파티션의 인코딩된 파티션의 코딩 정보를 포함하는 비트스트림을 수신하는 단계; 상기 비트스트림으로부터 코딩 모드 지시자를 추출하는 단계 - 상기 코딩 모드 지시자는 상기 복수의 코딩 모드 중 어느 코딩 모드가 상기 텍스처 블록을 인코딩하는 데 사용되었는지를 지시함 -; 및 상기 코딩 모드 지시자가 대응하는 깊이 기반 블록 포셔닝 코딩 모드가 상기 텍스처 블록을 인코딩하는 데 사용되었다는 것을 지시하는 경우에, 상기 제8 측면 또는 그 구현 형태 중 어느 하나에 따른 깊이 기반 블록 포셔닝 디코딩 모드에 따라 상기 인코딩된 텍스처 블록을 디코딩하는 단계를 포함한다.
제9 측면에 따른 디코딩 방법의 제1 가능한 구현 형태에서, 복수의 디코딩 모드 중, 상기 인코딩된 텍스처 블록의 디코딩에 사용될 디코딩 모드를 결정하기 위한 상기 코딩 모드 지시자를 추출하는 단계는 텍스처 블록마다 수행된다.
제9 측면 또는 제9 측면의 제1 구현 형태에 따른 디코딩 방법의 제2 가능한 구현 형태에서, 상기 디코딩 방법은 GOP마다, 인트라 구간마다, 이미지마다, 슬라이스마다, 또는 코딩 유닛마다, 상기 비트스트림으로부터 인에이블링 또는 디스에이블링 지시자를 추출하는 단계를 더 포함하고, 상기 깊이 기반 블록 포셔닝 코딩 모드에 대한 인에블링 또는 디스에이블링 지시는 SPS, PPS, PBS, VPS, 픽처 헤더, SH, 매크로블록 내에 또는 상기 코딩 유닛 신택스 내에 시그널링된다.
제9 측면 또는 제9 측면의 제1 또는 제2 구현 형태에 따른 디코딩 방법의 제3 가능한 구현 형태에서, 상기 복수의 코딩 모드는 하나의 깊이 기반 블록 포셔닝 코딩 모드와 규칙적인 형상의 파티셔닝에 기초한 코딩 모드의 세트를 포함하며; 상기 규칙적인 형상의 파티셔닝에 기초한 코딩 모드 각각은 그것과 연관된 모드 특정 코딩 모드 지시자를 가지고, 이는 각각의 규칙적인 형상의 파티셔닝 코딩 모드를 다른 규칙적인 형상의 파티셔닝 코딩 모드와 구별짓고; 상기 깊이 기반 블록 포셔닝 코딩 모드의 선택은, 상기 코딩 모드 지시자의 세트의 코딩 모드 지시자 중 하나에만 플래그를 추가함으로써 시그널링되고, 상기 플래그의 제1 값은, 상기 코딩 모드 지시자와 연관된 상기 규칙적인 형상의 파티셔닝 코딩 모드가 선택되었음을 지시하고, 상기 플래그의 제2 값은 상기 깊이 기반 블록 포셔닝 코딩 모드가 선택되었음을 지시한다.
제9 측면 또는 제9 측면의 선행 구현 형태 중 어느 하나에 따른 디코딩 방법의 제4 구현 형태에서, 상기 디코딩 방법은 상기 파티셔닝 마스크를 규칙적인 형상의 파티션에 매핑하는 단계; 및 상기 파티셔닝 마스크의 상기 규칙적인 형상의 파티셔닝 표현 또는 상기 파티셔닝 마스크의 상기 규칙적인 형상의 파티셔닝 표현에 기초하여 도출된 정보에 기초하여 연속적인 인코딩된 텍스트 블록을 디코딩하는 단계를 더 포함한다.
상기 연속적인 텍스처 블록의 인코딩에 사용되는 디코딩은, 제8 또는 제9 측면 또는 그것들의 구현 형태 중 어느 하나에 따른 깊이 기반 블록 파티셔닝 디코딩을 사용하거나 규칙적인 형상의 파티셔닝 디코딩 모드를 사용하여 수행될 수 있다.
제10 측면에 따르면, 본 발명은, 컴퓨터 프로그램이 컴퓨터에서 실행될 때, 제8 측면 또는 그 구현 형태 중 어느 하나 및/또는 제9 측면 및 그 구현 형태 중 어느 하나에 따른 디코딩 방법을 수행하기 위한 프로그램 코드를 구비한 컴퓨터 프로그램에 관한 것이다.
제11 측면에 따르면, 본 발명은, 디코딩 장치에 의한 사용을 위해 프로그램 코드를 저장하는, 컴퓨터로 판독 가능한 저장 매체를 포함하는 컴퓨터 프로그램 제품에 관한 것으로, 상기 프로그램은 제8 측면 및 그 구현 형태 중 어느 하나, 및/또는 제9 측면 및 그 구현 형태 중 어느 하나에 따른 디코딩 방법을 실행하기 위한 명령어들을 포함한다.
제12 측면에 따르면, 본 발명은 제8 측면 또는 그 구현 형태 중 어느 하나, 및/또는 제9 측면 및 그 구현 형태 중 어느 하나에 따른 디코딩 방법을 실행하도록 구성된 디코딩 장치에 관한 것이다.
상기 디코딩 장치는 제8 측면 또는 그 구현 형태 중 어느 하나, 및/또는 제9 측면 및 그 구현 형태 중 어느 하나에 따른 디코딩 방법을 실행하도록 구성된 프로세서를 포함할 수 있다.
상기 컴퓨터 및/또는 그 프로세서는 상기 제10 측면에 따른 컴퓨터 프로그램을 실행하도록 프로그램 가능하게 되어 있을 수 있다.
상기 컴퓨터 및/또는 그 프로세서는, 상기 제11 측면에 따른 컴퓨터 프로그램 제품의 컴퓨터로 판독 가능한 저장 매체에 저장된 프로그램 코드를 사용하여, 프로그램 코드에 포함된 명령어들을 실행하도록, 프로그램 가능하게 되어 있을 수 있다.
제13 측면에 따르면, 본 발명은 텍스처 이미지의 인코딩된 텍스처 블록을 디코딩하는 디코딩 장치에 관한 것으로, 상기 디코딩 장치는, 상기 인코딩된 텍스처 블록에 연관된 깊이 정보에 기초하여 상기 인코딩 텍스처 블록에 대한 파티셔닝 마스크를 결정하도록 구성된 파티셔너 - 상기 파티셔닝 마스크는 복수의 파티션을 규정하고 상기 인코딩된 텍스처 블록의 텍스처 블록 요소를 상기 인코딩된 텍스처 블록의 복수의 파티션 중 하나의 파티션과 연관짓도록 구성됨 -; 및 상기 파티션 마스크에 기초하여 상기 인코딩된 텍스처 블록의 상기 복수의 파티션의 파티션들을 디코딩하도록 구성된 디코더를 포함한다.
제13 측면에 따른 디코딩 장치의 제1 가능한 구현 형태에서, 상기 디코딩 장치는, 비트스트림으로부터 인코딩된 깊이 정보를 추출하도록 구성된 디멀티플렉서; 및 상기 인코딩된 깊이 정보를 디코딩하여 상기 인코딩된 텍스처 블록에 연관된 깊이 정보를 취득하도록 구성된 깊이 디코더를 더 포함한다.
제13 측면 또는 제13 측면의 제1 구현 형태에 따른 디코딩 장치의 제2 가능한 구현 형태에서, 상기 디멀티플렉서는 비트스트림으로부터, 상기 텍스처 블록의 복수의 파티션 중 제2 파티션에 대한 코딩 정보와는 별개로 상기 인코딩된 텍스처 블록의 복수의 파티션 중 제1 파티션에 대한 코딩 정보를 추출하도록 구성되고, 상기 디코더는 상기 코딩 정보를 사용하여 상기 제1 파티션을 디코딩하도록 구성된다.
상기 코딩 정보는 예측 또는 비예측 코딩과 관련 있을 수 있다. 상기 코딩 정보는, 상기 제1 파티션의 디코딩에 사용되고, 예측 모드, 예측기 인덱스, 예측 방향, 참조 픽처 인덱스, 참조 뷰 인덱스, 변환 계수, 움직임 벡터, 및 코딩 컨텍스트 중 하나 이상을 포함할 수 있다.
제13 측면 또는 제13 측면의 제1 또는 제2 구현 형태에 따른 디코딩 장치의 제3 가능한 구현 형태에서, 상기 복수의 파티션을 구성하는 파티션의 수는, 예를 들어, 상기 파티셔너에 의해 적응적으로 결정되거나 미리 정해진다.
제13 측면 또는 제13 측면의 선행 구현 형태 중 어느 하나에 따른 디코딩 장치의 제4 가능한 구현 형태에서, 상기 파티셔너는 상기 텍스처 블록에 연관된 깊이 정보를 분석함으로써 상기 복수의 파티션을 구성하는 파티션의 수를 적응적으로 결정하도록 구성된다.
제13 측면 또는 제13 측면의 제1 구현 형태에 따른 디코딩 장치의 제5 가능한 구현 형태에서, 상기 파티셔너는, 상기 텍스처 블록에 연관된 깊이 정보 값의 히스토그램을 분석함으로써, 예를 들어 상기 히스토그램에서 피크의 수를 카운팅하고 상기 복수의 파티션을 구성하는 파티션의 수를 상기 카운팅된 피크의 수와 동일하게 설정함으로써, 상기 복수의 파티션을 구성하는 파티션의 수를 결정하도록 구성된다.
제13 측면 또는 제13 측면의 제1 구현 형태에 따른 디코딩 장치의 제6 가능한 구현 형태에서, 상기 파티셔너는, 상기 텍스처 블록 요소에 연관된 깊이 정보 값과 임계값의 비교에 기초하여 상기 텍스처 블록의 텍스처 블록 요소를 상기 복수의 파티션 중 하나와 연관짓도록 구성된다.
제13 측면의 제6 구현 형태에 따른 디코딩 장치의 제7 가능한 구현 형태에서, 상기 임계값은, 예를 들어 파티셔너에 의해 적응적으로 결정되거나 미리 정해진다.
제13 측면의 제7 구현 형태에 따른 디코딩 장치의 제8 가능한 구현 형태에서, 상기 파티셔너는, 인코딩될 텍스처 블록과 연관된 영역에 대해 상기 깊이 정보 값의 평균값을 계산하고, 상기 임계값을 상기 계산된 평균값으로 설정하거나; 또는 인코딩될 텍스처 블록과 연관된 영역에 대해 상기 깊이 정보 값의 가중 평균을 계산하고, 상기 임계값을 상기 가중 평균의 값으로 설정하거나 - 상기 가중 평균의 계산 시에 사용된 가중치는 상기 텍스처 블록의 중심으로부터의 거리에 의존함 -; 또는 인코딩될 텍스처 블록과 연관된 영역으로부터 상기 깊이 정보 값의 중앙값을 계산하고, 상기 임계값을 상기 계산된 중앙값으로 설정함으로써, 상기 임계값을 적응적으로 결정하도록 구성된다.
제13 측면 또는 제13 측면의 선행 구현 형태 중 어느 하나에 따른 디코딩 장치의 제9 가능한 구현 형태에서, 상기 파티셔너는 상기 텍스처 블록에 연관된 깊이 정보 값들의 영역에 대한 에지 검출 알고리즘의 적용에 기초하여 상기 파티셔닝 마스크를 결정하도록 구성된다.
제13 측면 또는 제13 측면의 선행 구현 형태 중 어느 하나에 따른 디코딩 장치의 제10 가능한 구현 형태에서, 상기 파티셔너는 반복 방식으로 상기 파티셔닝 마스크를 결정하도록 구성되고, 각각의 반복에서 미리 정해진 선택 기준을 충족하는 파티션은, 미리 정해진 종료 기준이 충족될 때까지 또는 추가 파티셔닝 기준이 여전히 충족되는 한, 서브파티션으로 더 분할되며, 상기 텍스처 블록은 반복 파티셔닝에 사용되는 초기 파티션을 수행한다.
제13 측면 또는 제13 측면의 선행 구현 형태 중 어느 하나에 따른 디코딩 장치의 제11 가능한 구현 형태에서, 상기 디코딩 장치는 상기 텍스처 블록의 복수의 파티션의 인코딩된 파티션의 코딩 정보를 포함하는 비트스트림으로부터 코딩 모드 지시자를 추출하도록 구성된 디멀티플렉서를 더 포함하고, 상기 코딩 모드 지시자는, 상기 텍스처 블록의 파티셔닝이 상기 텍스처 블록에 연관된 깊이 정보에 기초하여 도출된 파티셔닝 마스크를 사용하여 수행되었는지를 지시하고, 및/또는 상기 코딩 모드 지시자는 상기 텍스처 블록과 연관된 깊이 정보에 기초하여 도출된 파티셔닝 마스크를 사용하여 복수의 상이한 파티셔닝 모드 중 특정 파티셔닝 모드가 사용되었는지를 지시한다.
본 발명의 제14 측면에 따르면, 본 발명은 멀티모드 디코딩 장치에 관한 것으로, 상기 멀티모드 디코딩 장치는, 텍스처 블록의 복수의 파티션의 인코딩된 파티션의 코딩 정보를 포함하는 비트스트림을 수신하도록 구성된 수신기; 상기 비트스트림으로부터 코딩 모드 지시자를 추출하도록 구성된 디멀티플렉서 - 상기 코딩 모드 지시자는, 복수의 코딩 모드 중 어느 코딩 모드가 상기 텍스처 블록의 인코딩에 사용되었는지를 지시함 -; 및 상기 코딩 모드 지시자가, 대응하는 깊이 기반 블록 포셔닝 코딩 모드가 상기 텍스처 블록을 인코딩하는 데 사용되었다는 것을 지시하는 경우, 깊이 기반 블록 포셔닝 디코딩 모드에 따라 상기 인코딩된 텍스처 블록을 디코딩하도록 구성된, 제11 측면 또는 그 구현 형태 중 어느 하나에 따른 깊이 기반 블록 파티셔닝 디코딩 장치를 포함한다.
제14 측면에 따른 멀티모드 디코딩 장치의 제1 가능한 구현 형태에서, 상기 디멀티플렉서는, 상기 복수의 디코딩 모드 중, 상기 인코딩된 텍스처 블록의 디코딩에 사용될 디코딩을 결정하기 위한 상기 디코딩 모드 지시자를 텍스처 블록마다 추출하도록 구성된다.
제14 측면 또는 제14 측면의 제1 구현 형태에 따른 멀티모드 디코딩 장치의 제2 가능한 구현 형태에서, 상기 디멀티플렉서는, GOP마다, 인트라 구간마다, 이미지마다, 슬라이스마다, 매크로블록마다, 또는 코딩 유닛마다 상기 비트스트림으로부터 인에이블링 또는 디스에이블링 지시자를 추출하도록 구성되고, 상기 깊이 기반 블록 포셔닝 코딩 모드에 대한 상기 인에이블링 또는 디스에이블링 지시는 SPS, PPS, PBS, VPS, 픽처 헤더, SH, 매크로블록 내에 또는 상기 코딩 유닛 신택스 내에 시그널링되고, 상기 인에이블링 또는 디스에이블링 지시자는, 상기 깊이 기반 블록 포셔닝 코딩 모드가 상기 인에이블링 또는 디스에이블링 지시자 이후에 수신되는 텍스처 블록에 대해 인에이블 또는 디스에이블되는지를 지시한다.
제14 측면 또는 제14 측면의 제1 또는 제2 구현 형태에 따른 멀티모드 디코딩 장치의 제3 가능한 구현 형태에서, 상기 복수의 코딩 모드는 하나의 깊이 기반 블록 포셔닝 코딩 모드와 규칙적인 형상의 파티셔닝에 기초한 코딩 모드의 세트를 포함하며; 상기 규치적인 형상의 파티셔닝에 기초한 코딩 모드 각각은 그것에 연관된 모드 특정 코딩 모드 지시자를 가지고, 이는 각각의 규칙적인 형상의 파티셔닝 코딩 모드를 다른 규칙적인 형상의 파티셔닝 코딩 모드와 구별짓고; 상기 깊이 기반 블록 포셔닝 코딩 모드의 선택은, 상기 코딩 모드 지시자의 세트의 코딩 모드 지시자 중 하나에만 플래그를 추가함으로써 시그널링되고, 상기 플래그의 제1 값은, 상기 코딩 모드 지시자에 연관된 상기 규칙적인 형상의 파티셔닝 코딩 모드가 선택되었음을 지시하고, 상기 플래그의 제2 값은 상기 깊이 기반 블록 포셔닝 코딩 모드가 선택되었음을 시그널링한다.
제14 측면 또는 제14 측면의 선행 구현 형태 중 어느 하나에 따른 멀티모드 디코딩 장치의 제4 가능한 구현 형태에서, 상기 깊이 기반 블록 파티셔닝 장치는 상기 파티셔닝 마스크를 규칙적인 형상의 파티션에 매핑하도록 구성되고; 상기 멀티모드 디코딩 장치는 상기 파티셔닝 마스크의 상기 규칙적인 형상의 파티셔닝 표현 또는 상기 파티셔닝 마스크의 상기 규칙적인 형상의 파티셔닝 표현에 기초하여 도출된 정보에 기초하여 연속적인 인코딩된 텍스트 블록을 디코딩하도록 구성된 텍스처 디코더(texture decoder)를 포함한다.
상기 텍스처 디코더는 상기 깊이 기반 블록 파티셔닝 장치 또는 규칙적인 형상의 파티셔닝 코딩 모드에 기초하여 연속적인 인코딩된 텍스처 블록을 디코딩하도록 구성된 추가적인 텍스처 디코더일 수 있다.
본 발명의 측면들 및 그 구현 형태들은 하드웨어 및/또는 소프트웨어 또는 그 둘의 조합으로 구현될 수 있다. 본 발명의 측면들 및 그 구현 형태들은 디지털 신호 프로세서(digital signal processor, DSP), 마이크로 컨트롤러 또는 임의의 다른 사이드 프로세서(side-processer) 내의 소프트웨어 또는 주문형 집적회로(ASIC) 내의 하드웨어 회로로서 구현될 수 있다.
본 발명의 측면들 및 그 구현 형태들은 디지털 전자 회로, 또는 컴퓨터 하드웨어, 펌웨어(firmware), 소프트웨어, 또는 이들의 조합으로 구현될 수 있다.
이하의 도면을 참조하여 본 발명의 추가적인 실시예들을 설명할 것이다.
도 1은 예를 들어, 멀티뷰 비디오 플러스 깊이 코딩(multi-view video-plus-depth coding)에서 사용된 이미지의 텍스처 플러스 깊이 표현(texture-plus-depth representation)에 대한 프레임워크(framework)를 나타낸다.
도 2는 깊이 기반 블록 파티셔닝을 사용하여 텍스처 이미지의 텍스처 블록을 인코딩하는 방법의 실시예의 흐름도를 나타낸다.
도 3은 텍스처 이미지와 대응하는 깊이 맵의 예시적인 쌍과 깊이 기반 블록 파티셔닝에 기초하여 텍스처 이미지의 상이한 두 개의 텍스처 블록에 대해 도출된 두 개의 파티셔닝 마스크를 나타낸다.
도 4는 반복에 기초한 깊이 기반 블록 파티셔닝을 사용하여 텍스처 이미지의 텍스처 블록을 인코딩하는 방법의 실시예의 흐름도를 나타낸다.
도 5는 깊이 기반 블록 파티셔닝을 사용하여 텍스처 이미지의 텍스처 블록을 인코딩하는 인코딩 장치의 블록도를 나타낸다.
도 6은 깊이 기반 블록 파티셔닝을 사용하여 텍스처 이미지의 인코딩된 텍스처 블록을 디코딩하는 방법의 실시예의 흐름도를 나타낸다.
도 7은 깊이 기반 블록 파티셔닝을 사용하여 텍스처 이미지의 인코딩된 텍스처 블록을 디코딩하는 디코딩 장치의 실시예의 블록도를 나타낸다.
도 8은 대응하는 인코딩 장치와 디코딩 장치를 포함하는, 깊이 기반 블록 파티셔닝을 사용하여 텍스처 이미지의 텍스처 블록을 코딩하는 시스템을 나타낸다.
도 9는 본 발명의 디코딩 실시예에 따른 예시적인 컴퓨터 코드를 나타낸다.
도 10은 예시적인 종래의 규칙적인 파티셔닝 모드와 깊이 기반 블록 파티셔닝 모드의 중첩을 나타낸다.
도 11은 예측을 위해 깊이 기반 블록 파티셔닝된 블록의, 규칙적인 파티션에의 매핑을 사용하는 실시예의 블록도를 나타낸다.
도면에 대한 이하의 설명에서 동일 또는 동등한 요소는 동일 또는 동등한 참조 부호로 표기된다.
본 발명의 실시예를 더 잘 이해하기 위해, 본 발명의 실시예를 설명하는 데 사용되는 특정 용어를 도 1에 기초하여 설명할 것이다.
도 1은 일반적인 3D 비디오 또는 멀티뷰 비디오 프레임워크를 나타내며, 3D 시각적 장면의 뷰 각각은 텍스처 이미지 T와 깊이 맵 D의 대응하는 쌍으로 표현된다. 3D 또는 멀티뷰 비디오 플러스 깊이 코딩(multi-view video-plus-depth coding)에서는, 휘도와 색도 같은 종래의 2D 비디오 데이터뿐 아니라 종래의 비디오 데이터와 관련된 대응하는 깊이 정보를 표현하기 위해, 텍스처 데이터 T라고도 하는 종래의 비디오 데이터에 외에 깊이 맵 D가 인코딩되어야 한다.
도 1은 카메라에 의해 심볼로 표시되는 제1 뷰 V1에 대해, 제1 뷰에 대한 텍스처 이미지 T1와 그에 대응하는 깊이 맵 D1을 나타낸다. 텍스처 이미지 T1-1 및 대응하는 깊이 맵 D1-1은 제1 시각 t1에서의 3D 시각적 장면의 제1 뷰 V1을 나타내는 한편, 텍스처 이미지 T1-2와 대응하는 깊이 맵 D1-2는 제2 시간 인스턴스(time instance) t2에서의 3D 시각적 장면의 제1 뷰 V1을 나타낸다. 3D 시각적 장면의 제2 뷰 V2에 대해서도 동일하게 유지되며, 이 또한 도 1에 나타나 있고, 텍스처 이미지 T2-1과 대응하는 깊이 맵 D2-1은 제1 시간 인스턴스 T1에서의 제2 뷰 V2를 나타내고, 텍스처 이미지 T2-1과 대응하는 깊이 맵 D2-2는 제2 시간 인스턴스 t2에서의 제2 뷰를 나타낸다. 3D 시각적 장면의 뷰의 이러한 텍스처 플러스 깊이 표현은, 두 개의 뷰의 텍스처 이미지 및 대응하는 깊이 맵에 기초하여 3D 이미지를 그 크기 및 해상도와 무관하게 3D 가능한 디스플레이에 랜더링할 수 있기 때문에 캡처 및 송신 형식을 표시 형식과 분리할 수 있도록 해주고, 합성의 가상 뷰도 생성할 수 있도록 해준다. 깊이 맵 대신에, 시차 맵(disparity map)이 텍스처 이미지에 연관된 깊이 정보를 제공하는 데 사용될 수 있다.
비디오 코딩의 경우, 텍스처 이미지는, 블록, 예를 들어, 매크로 블록(macro block) 또는 코딩 유닛(coding unit, CU)으로 불리는 더 작은 부분으로 분할될 수 있다. 코딩 프로세스에서, 인코더는, 각 블록을 더 작은 서브파트(sub-part)로 분할할 가능성을 포함하는, 코딩 모드를 블록 각각에 대해 결정한다. 그 결과, 각 블록은 하나 이상의 파티션으로 구성될 수 있다. 최근의 비디오 코덱에서는, 대개 직사각형 형상의 파티션, 즉 직사각형 형상을 갖는 파티션이 허용된다. 또한, 블록 또는 파티션 각각에 대해, 예측 모드가 선택된다. 예측 코딩은 비디오 콘텐츠를 인코딩하는 매우 효율적인 방법이므로, 인코딩될 블록 각각에 대해 코딩된 블록이 선택되기 이전에 이미 인코딩되어 있는, 참조 블록(reference block)이 선택된다. 이러한 블록이 인코딩될 블록에 대한 참조로서 설정되고, 이 참조 블록에 대한 예측 에러(prediction error)만 인코딩된 비디오의 비트스트림 내에 시그널링될 필요가 있다. 참조 블록은 인트라 픽처 예측(intra-picture prediction)이라고도 하는, 인코딩될 블록과 동일한 픽처의, 또는 인터 픽처 예측(inter-picture prediction)이라고도 하는, 이용 가능한 이전에 인코딩된 픽처 중 하나의, 블록들로부터 선택될 수 있다. 인트라 이미지 예측(intra-image prediction) 또는 짧게 인트라 예측이라고도 하는 인트라 픽처 예측의 경우, 인코딩될 블록의 파티션 각각은 하나 이상의 선택된 방향성 예측기(directional predictor)를 사용하여 예측된다. 인터 이미지 예측(inter-image prediction) 또는 짧게 인터 예측이라고도 하는 인터 픽처 예측에서, 움직임 추정으로 알려진 방법이 적용될 수 있으며, 이는 현재 픽처 내의 인코딩될 블록의 공간적 위치에 상대적인 참조 픽처 내의 참조 블록의 공간적 위치를 특정하기 위해 움직임 벡터를 사용한다. 또한, 참조 픽처는 특정되어야 하며, 이는 일반적으로 참조 픽처 인덱스에 의해 지시된다. 인코딩될 블록의 파티션 각각에 대해, 움직임 벡터와 참조 픽처 인덱스의 독립적인 세트(independent set)가 인코더에 의해 선택될 수 있다. 결과적으로, 인터 예측은 파티션 각각에 대해 다를 수 있다. 또한 3D 비디오에서, 인터 뷰 예측(inter-view prediction)이 사용될 수 있으며, 이는 다른 뷰의 블록을 참조로 사용하는 것을 허용한다.
끝으로, 잔차(residuum), 즉 코딩된 블록의 예측과 참조 블록 사이의 차라고도 하는 예측 영역(prediction area)이 인코딩되어 비트스트림 내어 송신된다.
도 1은 텍스처 이미지 T1-1의 네 개의 예시적인 이웃 블록(111, 112, 113, 114)를 더 나타낸다. 도 1은 텍스처 맵 T1-1에 대응하는 깊이 맵 D1-2(120)를 더 나타내고, 이는 대응하는 깊이 맵 블록을 포함하며, 이들은 동시에 동일 뷰의 동일 영역을 나타내기 때문에 깊이 맵 블록(121)은 텍스처 블록(111)에 대응하고, 깊이 맵 블록(121)은 텍스처 블록(111)에 대응하고, 깊이 맵 블록(122)은 텍스처 블록(112)에 대응하고, 깊이 맵 블록(123)은 텍스처 블록(114)에 대응하고, 깊이 맵 블록(124)은 텍스처 블록(114)에 대응한다. 예를 들어, 깊이 맵 블록(124)는 텍스처 블록(114)의 텍스처 값에 대응하는 깊이 맵 값을 포함한다.
전술한 바와 같이, 텍스처 블록(114)의 텍스처 값 또는 텍스처 블록(114)의 파티션의 텍스처 값은, 동일한 텍스처 이미지로부터, 동일한 시간 인스턴스, 예를 들어 T2-1에 대한 다른 뷰의 텍스처 이미지로부터, 또는 이전에 코딩된, 예를 들어 T1-1으로부터의 동일한 뷰 T1의 텍스처 이지미로부터, 참조 블록 도는 참조 블록의 참조 파티션을 사용하여 예측될 수 있다. 도 1은 인트라 코딩에 대한 예를 나타내며, 이이웃 텍스처 블록(111)을 사용한 텍스처 블록(114)의 예측을 지시하는 화살표 118을 참조하기 바란다. 도 1은 또한 인터 뷰 예측에 대한 예를 나타내며,
텍스처 이미지 T2-1(150)의 텍스처 블록에서 텍스처 T1-2의 텍스처 블록(114)으로 가리키는 화살표 158을 참조하기 바란다. 끝으로, 또한 인터 예측의 예를 나타내며, 텍스처 이미지 T1-1(130)의 텍스처 블록에서 텍스처 이미지 T1-2(110)으로 가리키는 화살표 138을 참조하기 바란다.
본 발명의 실시예를 설명하기 위해 이하의 용어를 사용할 것이다.
용어 "이미지(image)"는 데이터의 이차원 표현, 일반적으로 이차원 매트릭스를 말하며, 또한 픽처라고 할 수도 있다.
용어 "시각적 장면(visual scene)"은 시각적 시스템(예컨대, 단일 카메라 또는 복수의 카메라)로 획득되고 스틸 이미지 또는 비디오 형태로 표현되는 현실 세계 또는 합성 장면을 말한다.
용어 "3D 비디오 프레임(video frame)"은 장면의 3D 기하학적 구조(geometry)를 설명하는 정보를 포함하는 신호를 말한다. 특히, 이 정보는 시각적 장면의 두 개의 상이한 시점(viewpoint)과 연관된 적어도 두 개의 텍스처 이미지(스테레오 이미지) 또는 적어도 하나의 텍스처 및 깊이/시차 맵(텍스처 플러스 깊이 이미지)으로 표현될 수 있다.
용어 "3D 비디오 시퀀스(video sequence)"는 모션 픽처(motion picture)를 나타내는 연속하는 3D 비디오 프레임의 세트를 말한다.
용어 "텍스처 이미지(texture image)"는 일반적으로 RGB 또는 YUV 형식(색도 및 휘도 값을 포함)으로 표현되는, 특정 시점에 대한 시각적 장면의 색과 빛의 세기에 관한 정보를 포함하는, 특정 시점을 나타내는, 이미지, 스틸 이미지, 또는 비디오 시퀀스의 프레임을 말한다. 일반적으로 이차원 매트릭스는 텍스처 정보, 예를 들어 색도 및 휘도 값을 포함한다.
용어 "깊이 맵(depth map)"은 시각적 물리 또는 가상 카메라에 대한 거리를 결정하는 대응하는 깊이 값을 포함하는 이차원 매트릭스를 말한다. 깊이 맵은 각각의 그레이 값(grey value)이 깊이 값 또는 거리에 대응하는, 그레이 스케일 이미지로 간주될 수 있다. 또는, 시차(視差, disparity)가 3D 시각적 장면의 깊이 양상(depth aspect)을 결정하는 데 사용될 수 있다. 시차 맵의 시차 값은 깊이 맵의 깊이 값에 역비례한다. 용어 "시차 맵(disparity map)"은 삼차원 시각적 장면의 이차원 표현을 말하며, 각 요소의 값은 이 요소에 의해 표현되는 3D 세계의 지점의, 카메라까지의 거리에 역비례한다.
용어 "코딩 블록(coding block)" 또는 "블록(block)"은, 블록에 대해 선택된 코딩 모드에 특정되는 신택스를 사용하여 픽처 또는 이미지의 인코딩된 영역을 설명하는, 일반적으로 규칙적인, 직사각형 형상의 코딩 유닛이다.
용어 "코딩 모드(coding mode)"는 코딩, 즉 인코딩 및/또는 코딩된 블록의 디코딩을 위해 사용되는 수단과 방법의 세트를 설명한다.
용어 "슬라이스(slice)"는 비디오 시퀀스의 전체 픽처 또는 이미지의 일부를 포함하는 비디오 시퀀스의 구조(structure)를 말한다.
용어 "슬라이스 헤더(slice header)"는 슬라이스의 시작 부분(beginning)에 전송되는, 슬라이스를 설명하는 파라미터의 세트를 말한다.
용어 "코딩 유닛(coding unit, CU)"은 픽처(텍스처 또는 깊이)의 일부분, 예를 들어 64x64개 화소를 포함하는 부분을 포함하는, 미리 정해진 크기의 비디오 시퀀스의 기본 코딩 구조를 말한다.
용어 "코딩된 블록(Coded block)"은, 코딩 유닛에 의해 표현되는 영역에 대응하거나 또는 그 영역의 일부인, 인코딩되어 있는 이미지의 영역을 말한다.
용어 "I 슬라이스(I-slice)"는 모든 코딩 유닛이 인트라 예측되는 슬라이스를 말하며, 그래서 다른 픽처에 대한 참조가 허용되지 않는다.
용어 "랜덤 액세스 지점(random access point)"은, 디코더가 비디오 스트림의 이전 부분에 대한 지식 없이도 비디오 시퀀스의 디코딩을 시작할 수 있는, 비디오 시퀀스의 구조상의 지점을 정의한다.
용어 "픽처의 그룹(group of pictures, GOP)"은, 반드시 표시 순으로 GOP 내에 정렬되는 것은 아닌, 미리 정해진 수의 연속하는 픽처(텍스처 또는 깊이 또는 둘 다)를 포함하는, 비디오 시퀀스의 기본 데이터 구조 중 하나를 말한다.
용어 "시퀀스 파라미터 세트(sequence parameter set, SPS)"는 비디오 스트림을 적절히 디코딩하기 위해 필요한 기본 정보를 포함하는 조직화된 메시지(organized message)의 형태로 전송되는 파라미터의 세트를 말하고 모든 랜덤 액세스 지점의 시작 부분에서 시그널링되어야 한다.
용어 "픽처 파라미터 세트(picture parameter set, PPS)"는 비디오 시퀀스 내의 픽처를 적절히 디코딩하기 위해 필요한 기본 정보를 포함하는 조직화된 메시지 형태로 전송되는 파라미터의 세트를 말한다.
용어 "추가 확장 정보(supplemental enhancement information, SEI)"는, 비디오 시퀀스, 코딩 도구, 등에 관한 추가 또는 선택 정보를 포함하는, 비디오 시퀀스의 스트림 내에 시그널링될 수 있는 메시지를 말한다.
용어 "참조 블록(reference block)"은, 예측 코딩(및 디코딩) 시에 현재 블록을 인코딩하는데 사용되고 현재 블록의 예측 코딩을 위한 참조로 사용되는, 픽처(텍스처 또는 깊이)의 블록(텍스처 블록 또는 깊이 블록)을 말한다.
이하에서는, 깊이 기반 블록 파티셔닝을 사용하여 텍스처 이미지의 텍스처 블록을 인코딩하는 방법의 실시예를 도 2 및 도 3에 기초하여 설명할 것이다. 도 2는 깊이 기반 블록 파티셔닝을 사용하여 텍스처 이미지의 텍스처 블록을 인코딩하는 방법의 실시예의 흐름도를 나타낸다. 도 2는 텍스처 블록에 대한 두 개의 예시적인 깊이 기반 블록 파티셔닝을 나타낸다.
도 3은 또한 제1 텍스처 블록(312)과 제2 텍스처 블록(314)을 포함하는 텍스처 이미지(310)를 나타낸다. 도 3은 텍스처 이미지(310)에 연관된 깊이 정보를 깊이 맵(320)의 형태로 나타내며, 이것은 다시, 제1 텍스처 블록(312)에 연관된 깊이 값의 형태로 깊이 정보를 포함하는, 깊이 블록(322)의 형태로 깊이 정보 블록(322), 및 제2 텍스처 블록(314)에 연관된 깊이 값의 형태로 깊이 정보를 포함하는 깊이 블록(324)의 형태로 제2 깊이 정보 블록(324)도 포함한다. 제1 깊이 정보 블록(322)은 기본적으로 두 개의 서로 다른 주된 그레이 값(predominant grey value)만, 즉, 깊이 값들을 포함하는 한편, 제2 깊이 정보 블록(314)은 기본적으로 세 개의 주된 그레이 값, 즉, 깊이 값들을 포함한다.
도 3은 각각의 깊이 블록(322, 224)에 포함되는 깊이 정보에 기초하여 결정되는 두 개의 예시적인 파티셔닝 마스크(332, 334)를 나타낸다. 도 2에서 mD1(x,y)로도 참조되는 제1 파티셔닝 마스크(332)는, 형상 및 면적(area)이 제1 깊이 맵 블록(322)의 두 개의 주된 그레이 값의 영역에 대응하는, 두 개의 파티션, 제1 파티션 P1과 제2 파티션 P2를 포함한다. 제2 파티셔닝 마스크(334)는, 면적과 형상이 제2 깊이 맵 블록(314) 내의 세 개의 주된 그레이 값의 영역들에 대응하는, 세 개의 파티션, 제1 파티션 P1, 제2 파티션 P2, 및 제3 파티션 P3을 포함한다.
도 2에 도시된 깊이 기반 블록 파티셔닝 인코딩의 방법(200)은 다음의 단계를 포함한다.
텍스처 블록(312)에 연관된 깊이 정보(322)에 기초하여 텍스처 블록에 대한 파티셔닝 마스크(332)를 결정하며(단계 210), 파티셔닝 마스크(332)는 텍스처 블록의 복수의 파티션 P1, P2을 규정하고 텍스처 블록(312)의 텍스처 블록 요소를 복수의 파티션 중 하나와 연관짓도록 되어 있다.
파티셔닝 마스크(332)에 기초하여 텍스처 블록의 복수의 파티션 중 파티션 P1, P2를 인코딩함으로써 텍스처 블록를 인코딩한다(단계 220).
다시 말해, 제1 깊이 블록(322)에 기초하여 결정되는 파티션 P1 및 P2는 텍스처 블록(312)에 매핑되므로, 텍스처 블록 요소들을 두 개의 파티션 P1 또는 P2 중 하나와 연관짓는다.
읽기 쉽도록, 이하에서는, 특별히 언급하지 않는 한, 본 발명의 실시예를 제1 텍스처 블록(312)과 대응하는 깊이 정보 블록(322)과 그 깊이 정보 블록(322)에 기초하여 도출되는 파티셔닝 마스크(332)를 참조하여 설명할 것이다. 언급되어야 할 것은 이것이 본 발명의 실시예를 제한하는 것은 아니며, 이는, 제2 텍스처 블록(314), 대응하는 제2 깊이 블록(324) 및 깊이 정보 블록(324)으로부터 도출된 파티셔닝 마스크(334)에 기초한 도 3에 도시된 바와 같은, 텍스처 블록을 세 개 이상의 파티션으로 파티셔닝하는 데 사용될 수 있다.
텍스처 블록 파티션이라고도 할 수 있는, 텍스처 블록의 파티션의 인코딩은 종래의 인코딩 방법 및 전술한 깊이 기반 블록 파티셔닝을 위해 특별히 고안된 인코딩 방법을 사용하여 수행될 수 있다.
실시예에 따르면, 텍스처 블록의 복수의 파티션의 파티션들을 인코딩하는 것(220)은, 텍스처 블록(312)의 복수의 파티션 중 제2 파티션 P2과는 별개로 텍스처 블록(312)의 복수의 파티션 중 제1 파티션 P1에 대해 제1 파티션 P1의 인코딩에 사용될 코딩 정보를 결정하는 것을 더 포함하고, 코딩 정보는, 예를 들어, 예측 모드, 예측기 인덱스, 예측 방향, 참조 픽처 인덱스, 참조 뷰 인덱스, 변환 계수, 움직임 벡터, 및 코딩 컨텍스트에 중 하나 이상을 포함한다.
도 2에 도시된 방법의 실시예의 경우, 복수의 파티션을 구성하는 파티션의 수는 미리 정해지거나 적응적으로 결정될 수 있다.
본 발명에 따르면, 블록은 복수의 파티션(둘 이상), 예컨대 임계값 T={T1,...,TN-1}를 사용하여 코딩된 텍스처 블록의 지점들과 연관된 깊이 정보 값, 예컨대, 깊이 또는 시차 값을, 임계화(thresholding)함으로써, N개(N>1)의 파티션 P={P1,...,PN}으로 파티셔닝된다. 텍스처 블록의 지점은 텍스처 요소라고도 할 수 있다. 이하에 코딩된 텍스처 블록의 각 지점 p(x,y)에 대해, 그 연관된 깊이 또는 시차 값 d(x,y)와 임계값 T의 비교가 이루어진다:
If: d(x,y,)≥TN-1 => p(x,y) → PN,
Else if: d(x,y,)<Ti => p(x,y) → Pi, i=[1,N-1].
임계 및 그 값의 수는 미리 정해지거나 적응적으로 선택될 수 있다. 임계값의 수를 결정하는 것에 대해, 예를 들어 실시예들은 다음을 포함할 수 있다:
- 파티션의 수를 미리 정함; 또는
- 코딩된 텍스처 블록과 연관된 영역에 대해 계산된 시차 값 또는 깊이의 히스토그램에서 검출된 피크의 수를 카운팅함.
임계값의 수를 결정하는 것에 대해, 예를 들어 실시예들은 다음을 포함할 수 있다:
- 미리 정해진 값을 사용함;
- 코딩된 텍스처 블록과 연관된 영역으로부터 깊이 또는 시차 값의 평균값을 계산하고, 임계값을 계산된 평균값으로 설정함;
- 코딩된 텍스처 블록과 연관된 영역으로부터 깊이 또는 시차 값의 가중 평균을 계산하고, 임계값을 계산된 가중 평균의 값으로 설정하며, 예를 들어 가중치는 텍스처 블록의 중심으로부터의 거리에 의존할 수 있음;
- 코딩된 텍스처 블록과 연관된 영역으로부터 깊이 또는 시차 값의 중앙값을 계산하고, 임계값을 계산된 중앙값으로 설정함.
임계값 T1을 결정하기 위해 간단한 평균값을 사용하는, 두 개의 파티션에 대한 이러한 깊이 기반 블록 파티셔닝(DBBP)의 예시적인 결과는 도 3에 제시되어 있다. 그 결과 파티셔닝은 코딩된 텍스처 블록 p(x,y)의 어느 지점이 어느 파티션(P1 또는 P2)에 속하는지를 결정하는 이진 마스크 mD1(x,y)의 형태로 제시되어 있다.
본 발명에 의해 제안되는 코딩된 텍스처 블록과 연관된 깊이 정보에 기초하여 파티셔닝을 결정하는 제2 방안은, 깊이 또는 시차 맵의 형태로 깊이 정보를 표현하는 이미지에 대한 에지 검출 알고리즘의 애플리케이션이다. 이 실시예에서, 각각의 검출된 에지가 파티션 간의 경계를 결정한다.
파티셔닝을 결정하기 위한 다른 실시예는 깊이 또는 시차 맵의 형태로 깊이 정도를 표현하는 이미지에 대한 세그먼테이션 알고리즘을 사용하고 있다. 세그먼테이션은 깊이 또는 시차 값을 나타내는 강도 값을 분석하고, 이미지 지점과 유사하거나 동일한 값을 단일 세그먼트로 병합함으로써 수행된다. 각각의 파티션은 그것을 동일한 세그먼트에 속하는 모드 지점에 할당함으로써 결정된다. 게다가, 물체 중심 세그먼테이션(object-oriented segmentation)이 수행될 수 있으며 이는 물체의 형상에 관한 이전의 지식을 일부 고려하고 및/또는 분석된 이미지에서 물체 삭제를 수행하는 더 진보된 세그먼테이션 방법을 사용한다.
추가적인 실시예에서, 파티셔닝은 픽처 레벨에서 수행될 수 있다, 즉, 파티션은 전체 픽처에 대해 계산되고 코딩된 블록의 파티셔닝은 코딩된 블록에 대응하는 영역으로부터 픽처 레벨 파티션을 단지 할당함으로써 이루어진다. 이렇게 하여, 픽처 레벨 파티션은 코딩된 블록의 각 지점에 할당되고 동일 레벨 파티션에 할당된 모든 지점들이 블록 레벨 파티션을 구성한다. 이 접근법은 특히 물체 중심 깊이 또는 시차 세그먼테이션, 깊이 또는 시차 이미지 세그먼테이션, 또는 깊이 또는 시차 이미지 에지 검출과 같은 깊이 기반 블록 파티셔닝 방법에 적용된다.
추가적인 실시예에서, 깊이 기반 블록 파티셔닝은 반복 방식으로 수행된다. 각각의 반복에서, 미리 정해진 선택 기준을 충족하는 파티션이 선택되고, 미리 정해진 종료 기준이 충족될 때까지 또는 추가 파티셔닝 기준이 여전히 충족되는 한, 서브파티션로 더 분할되며, 텍스처 블록은 반복 파티셔닝에 사용되는 초기 파티션을 수행한다.
도 4는 깊이 기반 블록 파티셔닝의 실시예의 흐름도를 나타낸다. 도 4에 도시된 단계들은 도 2의 단계 210에 대응한다. 도 4에 따른 실시예들은 다음 단계들을 포함한다.
미리 정해진 기준에 따라 미리 정해진 수의 서브파티션으로 분할될 파티션을 선택한다(단계 401). 첫 번째 반복에서, 텍스처 블록 전체가 시작 파티션 또는 초기 파티션으로 사용된다. 다음 반복에서, 지정된 선택 기준이 단계 401에서 분할될 파티션을 선택하는 데 사용된다.
텍스처 블록의 선택된 파티션과 연관된 깊이 정보에 기초하여 미리 정해진 파티셔닝 방법을 사용하여, 선택된 파티션을 미리 정해진 수의 서브파티션으로 분할한다(단계 403). 파티셔닝 방법으로서 상기한 것 중 어느 하나가 사용될 수 있다. 예를 들어, 전술한 임계값 파티셔닝 방법은 반복 파티셔닝에 매우 효율적이다.
선택된 파티션의 서브파티션으로의 추가적인 파티셔닝이 미리 정해진 기준에 기초하여 허용 또는 유지되어야 하는지를 판정한다. 그렇다면, 새로운 파티셔닝이 현재 파티셔닝이되고, 그렇지 않다면 이전 파티셔닝이 유지된다.
미리 정해진 기준에 기초하여 반복 파티셔닝이 종료되어야 하는지 또는 반복 파티셔닝이 계속되어야 하는지를 판정한다.
분할될 파티션의 선택을 위한 가능한 선택 기준은, 예를 들어 다음 선택 기준을 단독으로 또는 조합으로 포함할 수 있다.
- 최대 파티션;
- 파티션 내의 지점 간의 깊이 또는 시차 차가 최대인 파티션. 상기 차는, 예를 들어 최대값과 최소값의 차, 분산(variance), 표준 편차(standard deviation), 또는 기타 통계적인 적률(statistical moment)로 측정될 수 있다;
- 하나 이상의 파티션을 포함하고, 두 블록의 경계에 놓인 이 파티션들 사이에 경계가 있는 이미 인코딩/디코딩된 이웃 블록과 이웃하는 파티션; 또는
- 모든 또는 선택된 이웃 파티션에 대해 계산된 평균 값과 가장 많이 다른 파티션 내의 지점들의 평균 깊이 또는 시차 값을 가지는 파티션.
그 후, 선택된 파티션을 서브파티션으로 분할하는 것은 이전에 설명한 바와 같이 수행된다(DBBP의 비반복적인 변형을 참조)
다음에, 추가적인 파티셔닝이 허용되어야 하면 지정된 기준을 사용하여 선택된 파티션이 테스트된다. 판정 함수의 가능한 실시예들은 (단일 기준 또는 기준의 조합이 사용될 수 있는지)를 테스트하는 것을 포함한다:
- 선택된 파티션의 크기가 충분히 큼(미리 정해진 또는 예컨대, 입력 블록 크기에 의존하는 적응적 임계값),
- 각각의 서브파티션 내의 지점 간의 깊이 또는 시차 차가 충분이 작음/큼(미리 정해진 또는 적응적 임계값),
- 서브파티션의 수가 충분히 작거나 큼(미리 정해진 또는 적응적 임계값).
끝으로, 파티셔닝 프로세스를 종료하기 위한 조건을 검사한다. 판정 함수의 가능한 실시예들은 (단일 기준 또는 기준의 조합이 사용될 수 있는지)를 테스트하는 것을 포함한다:
- 파티션의 수가 정해진 파티션의 수와 같거나 초과함(미리 정해진 또는 적응적 임계값),
- 각 파티션 내의 지점 간의 깊이 또는 시차 차가 충분이 작음/큼(미리 정해진 또는 적응적 임계값), 또는
- 반복의 최대 횟수를 초과했음(미리 정해진 또는 적응적 임계값).
위의 두 단계는 하나로 결합될 수 있으며, 새로운 파티셔닝의 허용과 반복 파티셔닝을 종료하기 위한 조건 둘 다의 테스트가 수행된다.
이러한 파티셔닝의 예는 도 3에 도시되어 있다. 결과 파티셔닝은, 코딩된 텍스처 블록 p(x,y)의 어느 지점이 어느 파티션(P1, P2 또는 P3)에 속하는지를 결정하는 파티셔닝 마스크 mD2(x,y)(334) 형태로 제시된다. 이 예에서, 첫 번째 반복에서, 텍스처 블록은 임계값을 결정하기 위한 간단한 평균값을 사용하여 두 개의 파티션 P1과 P2|P3으로 분할된다. 결과 서브파티션에서의 깊이 또는 시차 값의 차가 충분히 작지 않기 때문에, 파티셔닝 프로세스는 계속된다. 두 번째 반복에서, 최대 파티션(P2|P3)이 추가로 분할되기 위해 선택된다. 간단한 평균값을 사용한 임계화(thresholding)의 결과로서, 그 파티션은 두 개의 파티션 P2와 P3으로 분할된다. 이제, 결과 서브파티션에서의 깊이/시차 값의 차이가 충분히 작고, 결과적으로, 파티셔닝 프로세스가 종료된다.
상기 방법의 추가 실시예는 다음 단계를 포함한다: 텍스처 블록의 복수의 파티션 중 인코딩된 파티션의 코딩 정보를 포함하는 비트스트림에 코딩 모드 지시자를 추가하고, 상기 코딩 모드 지시자는, 텍스처 블록의 파티셔닝이 텍스처 블록에 연관된 깊이 정보에 기초하여 도출된 파티셔닝 마스크를 사용하여 수행되었는지를 지시하고, 및/또는, 상기 코딩 모드 지시자는 상기 텍스처 블록과 연관된 깊이 정보에 기초하여 도출된 파티셔닝 마스크를 사용하여 복수의 상이한 파티셔닝 모드 중 특정 파티셔닝 모드가 사용되었는지를 지시한다.
다른 실시예들에서, 상기 방법은, 텍스처 블록에 연관된 깊이 정보를 인코딩 및 디코딩하여 파티셔닝 마스크의 결정에 사용된 깊이 정보를 취득하는 것을 더 포함한다.
본 발명의 실시예들에서, 텍스처 블록에 연관된 깊이 정보는 텍스처 블록에 연관된 깊이 정보 블록에 포함된 깊이 정보일 수 있다. 본 발명의 실시예들에서, 깊이 정보 블록은 깊이 값을 깊이 정보로서 포함하는 깊이 블록 또는 시차 값을 깊이 정보로서 포함하는 시차 블록일 수 있으며, 텍스처 블록에 연관된 깊이 정보는, 텍스처 블록과 동일한 이미지 또는 픽처의 영역, 동일한 뷰 및/또는 동일한 시간 인스턴트에 연관된다. 본 발명의 실시예들에서, 깊이 정보는 깊이 맵의 깊이 값 또는 시차 맵의 시차 값일 수 있다. 본 발명의 실시예들에서, 텍스처 블록 요소 또는 지점은 텍스처 블록의 공간 해상도를 규정하는 픽처 요소 또는 임의 다른 공간적으로 더 크거나 더 작은 요소일 수 있다.
본 발명의 추가적인 실시예들은 파티셔닝 마스크를 결정하기 위해 및/또는 텍스처 블록을 파티셔닝하기 위해 텍스처 블록에 연관된 깊이 정보만을 사용하도록 및/또는 텍스처 블록에 연관된 텍스처 정보를 사용하지 않도록 구성될 수 있다.
도 5는 파티셔너(510)와 인코더(520)를 포함하는 인코딩 장치(500)의 실시에의 블록도이다.
파티셔너(510)는 텍스처 블록(312)과 연관된 깊이 정보(322)에 기초하여 텍스처 블록에 대한 파티셔닝 마스크(332)를 결정하도록 구성되며, 파티셔닝 마스크(332)는 복수의 파티션 P1, P2를 규정하고 텍스처 블록의 텍스처 블록 요소를 복수의 파티션 중 하나의 파티션과 연관짓도록 구성된다.
인코더(520)는 파티셔닝 마스크에 기초하여 텍스처 블록의 복수의 파티션 중 파티션들을 인코딩하여 인코딩된 텍스처 블록(312)을 취득하도록 구성된다.
파티셔너(510)의 실시예들은, 예컨대, 대응하는 방법의 텍스처 블록에 대한 파티셔닝 마스크를 결정하는 단계 210에 대해, 도 2 및 도 4에 기초하여, 또는 도 8, 도 10, 및 도 11에 대해 여기서 설명한 바와 같이, 깊이 정보에 기초한 파티셔닝 마스크의 결정 및 텍스처 블록을 복수의 파티션으로 분할하는 것과 관련된 방법의 단계들 중 어느 것을 수행하도록 구성될 수 있다.
인코더(520)는 예컨대 도 1 내지 4 또는 도 8, 10, 및 11에 대해, 여기서 설명한 텍스처 블록을 인코딩하는 단계(220)의 실시예 중 어느 것을 수행하도록 구성된다.
도 6은 깊이 기반 블록 파티셔닝을 사용하여 텍스처 이미지의 인코딩된 텍스처 블록을 디코딩하는 디코딩 방법(600)의 실시예의 블록도를 나타내며, 깊이 기반 블록 파티셔닝 디코딩 방법은 다음 단계들을 포함한다.
인코딩된 텍스처 블록(312')과 연관된 깊이 정보(322)에 기초하여 인코딩된 텍스처 블록(312')에 대한 파티셔닝 마스크(322)를 결정하고(단계 210), 파티셔닝 마스크(332)는 인코딩된 텍스처 블록(312')의 텍스처 블록 요소를 인코딩된 텍스처 블록의 복수의 파티션 P1, P2 중 하나의 파티션과 연관짓도록 구성된다.
디코딩된 텍스처 블록(312")을 취득하기 위해 파티셔닝 마스크(332)에 기초하여 인코딩된 텍스처 블록(312')의 복수의 파티션의 파티션들을 디코딩한다(단계 720).
디코딩하는 단계 620에 대해, 종래의 디코딩 방법 및 깊이 기반 블록 파티셔닝을 위해 특별히 설계된 디코딩 방법이 인코딩 블록을 디코딩하는 데 사용될 수 있다.
도 7은 깊이 기반 블록 파티셔닝을 사용하여 텍스처 이미지의 인코딩된 텍스처 블록을 디코딩하는 디코딩 장치의 블록을 나타내면, 디코딩 장치(700)는 파티셔너(510)와 디코더(720)를 포함한다.
파티셔너(510)는, 예컨대, 도 2, 4, 8, 10, 및 11에 기초하여, 여기서 설명한 파티셔닝과 관련된 기능 또는 단계 210 중 어느 것을 실행하도록 구성된다. 특히, 디코딩 장치(700)의 파티셔너(510)의 실시예들은 도 5에 기초하여 설명한 인코딩 장치(500)의 파티셔너(510)와 동일한 기능을 가질 수 있다.
디코더(720)는, 예컨대, 도 6, 8, 또는 11에 기초하여, 여기서 설명한 파티셔닝과 관련된 기능 또는 단계 210 중 어느 것을 실행하도록 구성된다. 디코더는 인코더(520)와 대응관계에 있는 것이므로, 디코더(720)는 인코딩된 텍스처 블록으로부터 텍스처 블록을 재구성하기 위해 인코더(520)에 의해 수행된 인코딩에 대해 역 코딩(inverse coding)하도록 구성된다.
도 8은 인코딩 장치(500)와 디코딩 장치(700)를 포함하는 시스템(800)의 블록도를 나타낸다.
도 5에 도시된 인코딩 장치(500)와 비교하면, 도 8의 인코딩 장치의 실시예는 깊이 인코더(810), 깊이 디코더(820) 및 디멀티플렉서(830)를 추가로 포함한다. 도 7에 도시된 디코딩 장치(700)와 비교하면, 도 8의 디코딩 장치(700)의 실시예는 디 멀티플렉서(860)와 깊이 디코더(820)를 추가로 포함한다.
인코딩 장치(500)를 참조하면, 깊이 인코더(810)는 예컨대, 깊이 맵(320) 형태의 깊이 정보 및/또는 대응하는 깊이 정보 블록(322)을 수신하고, 그 깊이 정보를 인코딩하여 인코딩된 깊이 정보, 예컨대 인코딩된 깊이 맵(320') 및/또는 대응하는 인코딩된 깊이 정보 블록(322')를 취득하여, 멀티플레서(830) 및 깊이 디코더(820)에 제공하도록 구성된다. 깊이 디코더(820)는 인코딩된 깊이 정보에 대해 깊이 인코더(810)에 의해 수행된 인코딩에 대응하는 디코딩을 수행하여 디코딩된 깊이 정보, 예컨대, 디코딩된 깊이 맵(320") 및/또는 디코딩된 깊이 정보 블록(322")을 취득하도록 구성된다. 파티셔너(510)는 디코딩된 깊이 정보, 예컨대 디코딩된 깊이 맵(322") 및/또는 디코딩된 깊이 정보 블록(322'')을 수신하여, 인코딩될 텍스처 블록(312)에 연관된, 디코딩된 깊이 정보에 기초하여 파티셔닝 마스크(332)를 결정하도록 구성될 수 있다.
또는, 파티셔너(510)는 텍스처 블록에 연관된 원래의 깊이 정보(도 8에서 점선 화살표 참조), 예컨대, 원래의 깊이 맵(320) 및/또는 원래의 대응하는 깊이 정보 블록(322), 또는 텍스처 블록과 연관된 깊이 정보의 임의의 다른 처리된 버전을 수신하고, 디코딩된 깊이 정보 대신에, 인코딩될 텍스처 블록에 연관된 원래의 깊이 정보를 사용하도록 구성될 수 있다.
파티셔닝을 위해 디코더 측에서 이용 가능한 깊이 정보(322")에 대응하는 디코딩된 깊이 정보(322'')의 사용은, 디코딩 장치(7000)에서의 상황을 더욱 정확하게 모델링하고, 따라서, 예를 들어, 디코딩 측의 잔류물에 대응하는 잔류물을 계산할 수 있도록 해주어 코딩 효율을 향상시킨다.
멀티플렉서(830)는 인코딩된 깊이 정보 및 인코딩된 텍스처 정보, 예컨대 인코딩된 텍스처 블록(312')를 수신하여, 이들 및 잠재적으로 더 많은 정보를 비트스트림(890)으로 멀티플렉싱하도록 구성되며, 이 비트스트림은 디코딩 장치(700)에 송신된다. 또는, 상기 비트스트림은 저장 매체에 저장될 수 있다.
디코딩 장치(700)를 참조하면, 디멀티플렉서(860)는 깊이 정보(322'), 예컨대, 인코딩된 깊이 맵 및/또는 인코딩된 깊이 정보 블록(322'), 및 인코딩된 텍스처 블록(312')을 비트스트림(890)에서 추출하여, 깊이 디코더(820)에 인코딩된 깊이 정보(322')를 전달하도록 구성된다. 깊이 디코더(820)는 인코딩된 깊이 정보(322')를 디코딩하여 디코딩된 깊이 정보(322''), 예컨대 디코딩된 깊이 맵 및/또는 디코딩된 깊이 블록을 취득하도록 구성되고, 이는 추가 처리를 위해 출력될 수 있고, 또한 파티셔닝 마스크(332)를 결정하기 위해 파티셔너(510)에 전달될 수도 있다. 텍스처 디코더(720)는 인코딩된 텍스처 블록을 수신하고, 파티셔너(510)로부터 수신된 파티셔닝 마스크(332)에 기초하여, 인코딩된 텍스처 블록을 디코딩하여 디코딩된 텍스처 블록(312")을 취득한다.
본 발명의 실시예들은 3D 및 텍스처 플러스 깊이 비디오 코딩을 위해 깊이 기반 블록 파티셔닝(DBBP)를 사용하는 텍스처 코딩에 다양한 방식으로 사용될 수 있다.
실시예들은 DBBP를 사용하여 결정된 임의의 형상의 파티션을 사용하여 코딩된 텍스처 블록의 코딩 정보를 나타내도록 구성될 수 있다. 각각의 파티션은 자신의 코딩 정보, 예컨대, 움직임 벡터, 시차 벡터, 참조 픽처 인덱스, 예측 모드, 인트라 예측기, 잔차(residuum)와 같은 것의 세트 또는 서브세트를 가질 수 있다.
실시예들은 DBBP 파티션을 코덱의 종래의 파티셔닝 모드를 대체하여 또는 추가로 사용하도록 구성될 수 있다, 즉, DBBP 파티션은 코덱에 의해 사용되는 오직 이용 가능 파티션이거나 추가적인 파티셔닝 모드를 가지는 코덱의 파티셔닝 모드의 원래 이용 가능한 세트를 풍요롭게 한다.
실시예들은, 시퀀스마다, GOP마다, 인트라 구간마다, 픽처마다, 슬라이스마다, 그리고 코딩 유닛마다 스위칭 가능한 DBBP를 사용하도록 구성될 수 있고, DBBP 파티션의 사용은 특정된 범위에 대해 인에블되거나 디스에이블될 수 있다.
실시예들은 인터리빙된(interleaved) 비디오 코딩에 DBBP를 사용하도록 구성될 수 있으며, DBBP는 인터리빙된 비디오의 각 필드에 독립적으로 적용된다.
실시예들은 기존의 코딩 모드 디코더를 적응시키는 것에 의해 HEVC(High-Efficiency Video Coding) 기반 코덱에서 DBBP 파티셔닝을 효과적으로 시그널링하도록 구성될 수 있다. 코딩된 텍스처 블록을 나타내기 위해 DBBP 파티션의 사용의 선택은, 예를 들어, 두 개의 세로 절반(Nx2N = 폭 N x 높이 2N)으로 파티셔닝될 때 종속하는 텍스처 뷰들 및 DBBP의 사용을 원래의 Nx2N 파티셔닝과 구별하기 위해 필요한 추가적인 1 비트 dbbp_flag 내에 시그널링된다.
도 9는 어느 코딩 모드가 시그널링되고 디코딩된 텍스처 블록의 디코딩에 사용될 것인지를 결정하기 위해 코딩 모드 지시자의 파싱(parsing)에 관한 본 발명의 실시예의 의사 코드(pseudo code)를 나타낸다.
910에서, 파티셔닝 모드가 판독된다. 920에서, 종래의, 예컨대 규칙적인 형상의 파티셔닝과 DBBP 파티셔닝을 구별하기 위해 플래그 dbbp_flag의 값이 디폴트 값 "false"로 설정된다. 930에서, 종래 파티셔닝 모드가 Nx2N 파티셔닝의 사용을 지시하는, 필요충분조건이면, dbbp_flag의 값을 읽는다. 940에서, dbbp_flag가 "true"인 경우에 BBP 파티셔닝(210)이 수행된다. 그렇지 않으면, 종래의 Nx2N 파티셔닝이 수행된다. 이렇게 하여, DBBP를 사용하지 않는 블록에 대해 송신되어야 하는 DBBP 플래그의 수는 상당히 감소될 수 있으며, 이것은 다시 코딩 성능을 증대시킨다.
실시예들은 인트라 예측에 DBBP 파티션 P1, P2를 사용하도록 구성될 수 있으며, 인트라 예측 모드는 DBBP 파티션에 각각에 대해 결정된다. 예측된 인트라 예측 모드는 DBBP 파티션 각각에 대해 결정된다. 사용되는 코딩 비용은 DBBP 파티션에 대해 계산된다. 각 요소의 코딩(520, 720)은 파티션마다 이루어진다.
*실시예들은 움직임 및/또는 시차 보상 예측(disparity-compensated prediction)을 위해 DBBP 파티션 P1, P2를 사용하도록 구성될 수 있으며, 여기서 움직임 및/또는 시차 벡터, 참조 픽처 색인 및 참조 픽처의 수가 DBBP 파티션 각각에 대해 결정된다. 예측된 움직임 및/또는 시차 벡터, 참조 픽처 색인, 및 참조 픽처의 수는 DBBP 파티션 각각에 대해 결정된다. 사용되는 코딩 비용은 DBBP 파티션에 대해 계산된다. 각 요소의 코딩(520)은 파티션마다 이루어진다.
잔차 예측(residuum prediction)을 위해 DBBP 파티션을 사용 - 잔차는 DBBP 파티션 각각에 대해 결정된다. 예측된 잔차는 DBBP 파티션 각각에 대해 결정된다. 사용되는 코딩 비용은 DBBP 파티션에 대해 계산된다. 각 요소의 코딩(520, 720)은 파티션마다 이루어진다.
실시예들은, 나중의 인코딩된/디코딩된 블록에 의해 쉽게 참조되도록(예측에 사용되도록) 코딩된 블록(파티셔닝 포함)에 대한 코딩 정보의 저장을 위해, 임의의 형상의 DBBP 파티션을 이용 가능한 규칙적인, 예컨대 직사각형 파티션에 매핑하도록 구성될 수 있다.
이러한 매핑을 사용하는 제1 예시적인 실시예에서, 상기 매핑은 원래의, 예컨대, 화소 단위(pixel-wise)의 파티셔닝 마스크를 2x2, 4x4, 8x8, 16x16, 32x32, 64x64, 등의 화소 격자(pixel grid)로 다운 샘플링(down-sampling)함으로써 수행된다. 동일 과정의 파티셔닝(same course-partitioning)을 제공하는 규칙적인 파티션을 사용하는 최저 비용의 파티셔닝이 DBBP 파티셔닝의 대표로 선택된다.
파티션이 두 개인 경우에 사용될 수 있는, 이러한 매핑을 사용하는 제2 예시적인 실시예에서, 상기 매핑은 블록 트리(block-tree), 예컨대 HEVC 기반 코덱의 쿼드 트리(quad-tree)에서 현재의 레벨에 대한 모든 이용 가능한 규칙적인 파티셔닝 모드와의 상관관계를 계산하고, 가장 유사한 하나를 DBBP 파티셔닝의 대표로서 선택함으로써 수행된다. 예를 들어, 도 10에 도시된 바와 같이 HEVC의 6개의 이용 가능한 2-세그먼트 파티셔닝 모드(two-segment partitioning mode) 중 하나에의 DBBP 파티션의 매핑이 상관관게 분석에 의해 수행된다.
도 10은 종래의 규칙적인 형상의 파티셔닝 모드(회색과 투명에서)와 예시적인 깊이 기반 블록 파티셔닝 마스크(322)(흰색과 검은색의 P1과 P2)의 예시적인 중첩을 나타낸다. 중첩(1010)은 파티셔닝 마스크(332)와 2NxN 파티셔닝의 중첩이다. 중첩(1020)은 파티셔닝 마스크(332)와 Nx2N 파티셔닝의 중첩이다. 중첩(1030)은 파티셔닝 마스크(332)와 2NxnU 파티셔닝의 중첩이다. 중첩(1040)은 파티셔닝 마스크(332)와 nLx2N 파티셔닝의 중첩이다. 중첩(1050)은 파티셔닝 마스크(332)와 nRx2N 파티셔닝의 중첩이다. 가장 적합 규칙적인 형상의 파티셔닝 모드 iopt가, 예컨대 벡터, 참조 픽처 인덱스, 코딩 모드 잔류물, 시차 벡터 등의 코딩 정보를 저장하기 위해 선택된다.
가장 적합한 것(best match)이, 예를 들어, 다음과 같이 결정될 수 있다. 각각의 이용 가능한 파티셔닝 모드
Figure pat00001
(도 11)에 대해, 두 개의 마스크
Figure pat00002
Figure pat00003
가 생성되며(도 3에 나타낸 예를 참조), 여기서
Figure pat00004
Figure pat00005
의 부정(negation)이다. 현재의 깊이 기반 세그먼테이션 마스크
Figure pat00006
에 대한 가장 적합한 파티셔닝 모드
Figure pat00007
를 찾아내기 위해, 아래의 알고리즘이 수행된다:
Figure pat00008
이렇게 하여, DBBP 파티션을 가지는 블록 이후에 코딩되는, 즉 인코딩되거나 디코딩되는 모든 블록은, 종래의 규칙적인 형상의 파티셔닝 기반 접근법을 사용한 예측 및/또는 컨텍스트 도출(context derivation)을 위해 DBBP 블록의 매핑된 블록 파티셔닝 스킴을 용이하게 해석 및 활용할 수 있다.
이러한 유형의 매핑과 결합되는 DBBP 파티셔닝의 실시예들은 다음의 이점이 있다.
더 작은 수의 컨텍스트(특히 CABAC 컨텍스트 모델)의 사용. 새로운 컨텍스트 모델의 추가가 불필요하거나 적어도 추가되는 모델의 수가 극소수로 제한될 수 있다.
기존 코덱으로의 통합이 더 용이함. 종래의 코딩 모드들은 DBBP 블록을 종래의 코딩된 블록 중 하나처럼 편리하게 취득될 수 있고; 추가적인 기존의 참조 이웃 블록들로부터의 예측 방법의 추가적인 수정 또는 DBBP 참조 블록으로부터의 특정 예측 방법의 개발이 이루어져야 한다.
도 11은 DBBP 파티셔닝 마스크의 규칙적인 파티션에의 매핑을 사용한 DBBP 참조 블록 B0(1110)으로부터의 예시적인 예측을 나타낸다. DBBP 코딩된 블록 B0는 규칙적인 2NxN 파티셔닝된 블록(1100')으로 매핑된다. 결과적으로, 이후 인코딩되거나 디코딩되는 모든 블록에 대해 이 DBBP 블록 B0이 종래의 예측 방법을 이용하는 참조으로 사용될 수 있다. 코딩된 블록을 표현하는 정보, 예컨대, 블록 B0의 DBBP 파티션에 할당되는 움직임 벡터와 참조 픽처 인덱스는 연속적인 블록, 예를 들어 연속하는 블록 B1(1120)의 움직 정보의 종래의 코딩을 위한 예측 참조로서 더 사용될 수 있다.
실시예들은 블록 및/또는 파티션에 대한 코딩 모드의 선택에 사용된 비용을 계산하도록 구성될 수 있다. 비용 함수는 각각의 파티션에 대해 그 파티션에 속하는 화소만을 비용 계산에 고려하는 방식으로 수정될 수 있다.
실시예들은 각 파티션을 나타내는 단일의 깊이 또는 시차 값을 계산하도록 구성될 수 있다. 대표값(representative value)은 코딩된 텍스처 블록과 연관된 깊이 또는 시차 값의 평균값, 가중 평균값, 중앙값, 최소값, 최대값으로 계산된다(예컨대, 가중치는 블록/파티션의 중심으로부터의 거리에 의존한다). 결과 값이, 파티션 및/또는 블록에 대한 깊이 또는 시차 값을 예측하기 위해 또는 다른 블록 및/또는 파티션을 코딩하는 위한 참조 깊이 또는 시차 값으로서, 시차 보상 예측(disparity-compensated prediction)에 사용될 수 있다.
실시예들은 각각의 DBBBP 파티션을 나타내는 깊이 또는 시차 값을 사용하여 전경 및 배경 파티션을 결정하도록 구성될 수 있다. 각각의 DBBBP 파티션을 나타내는 깊이 또는 시차 값은 어느 파티션이 카메라에 더 가까운지 또는 카메라와의 거리가 더 먼지를 결정하는데 사용된다.
실시예들은 각각의 DBBP 파티션을 나타내는 깊이 또는 시차 값에 기초하여 계사된 전경 및 배경 픽처 영역에 기초하여 비차폐 영역(disocclusion area)를 결정하도록 구성될 수 있다. 각각의 DBBP 파티션을 나타내는 깊이 또는 시차 값에 기초하여 계산된 전경 및 배경 파티션은 픽처 내의 비차폐 영역을 결정하는 데 사용된다.
실시예들은 시차 보상 예측을 위해 DBBP에 기초하여 계산된 깊이 또는 시차 값을 사용함으로써 코딩 효율을 향상시키도록 구성될 수 있다. 각각의 DBBP 파티션을 나타내는 깊이 또는 시차 값이 시차 보상 예측을 위해 사용되는 시차 벡터의 예측값으로 사용된다.
실시예들은 카메라로부터의 거리에 기초한 적응적 QP(Quantization Parameter: 양자화 파라미터) 또는 QD(Quantization Parameter for Depth: 깊이에 대한 양자화 파라미터)에 대해 DBBP에 기초하여 계산된 깊이 또는 시차 값을 사용하여 코딩 효율을 향상시키도록 구성될 수 있다. 각각의 DBBP 파티션을 나타내는 깊이 또는 시차 값은 카메라로부터의 거리에 기초하여 파티션 각각에 대해 QP 또는 QD 양자화 파라미터를 선택하는 데 사용된다(카메라로부터의 거리가 멀수록, 더 높은 QP 또는 QD 값이 선택된다).
본 발명의 실시예들은 또한, 이하에 설명하는 바와 같이, DBBP가 이용될 때 비디오 코딩의 복잡도를 최소화하는 방안을 제공한다.
실시예들은 규칙적인 (직사각형) 형상의 블록 내의 파티션 각각에 대해 인트라 예측되고, 움직임 또는 시차 보장된 잔차 예측 신호를 계산 및 저장하도록 구성될 수 있다.
전술한 예측 신호들을 계산하여 메모리에 저장하기 위해, 규칙적인 (직사각형) 형상의 블록이 각각의 파티션에 사용되지만, 각각의 파티션에 속화는 화소만이 각 블록에서 유효하다. 메모리의 규칙적인 블록 전부가 복사, 판독 및/또는 저장되기 때문에, 이는 메모리에 대한 개별 호출 횟수를 줄이고 메모리에 대한 화소 단위의 호출을 회피한다. 그 결과, 규칙적인 메모리 액세스가 제공된다.
실시예들은 희소(sparse) 깊이 정보(메모리의 규칙적인 블록 전부가 복사, 판독 및/또는 저장되기 때문)에 기초하여 DBBP 파티셔닝을 계산하도록 구성될 수 있다 - 파티셔닝은 깊이 정보의 희소 표현(sparse representation), 즉 비화소 단위(non-pixel-wise)(예컨대, 다운 샘플링된 깊이 또는 시차 맵)를 사용하여 계산된다. 이렇게 하여, 분석 및 처리될 깊이 또는 시차 지점의 수는 감소하지만, 파티셔닝의 정확도는 약간 저하된다.
실시예들은 밀집한(dense), 예컨대, 화소 단위의, 깊이 정보 및 2x2, 4x4, 8x8, 16x16 등의 그리드로의 파티셔닝 마스크의 해상도의 다운 샘플링에 기초하여 DBBP 파티셔닝을 계산하도록 구성될 수 있다. 이와 같이, 코딩된 파티션을 설명하는 모든 코딩 정보를 저장하는 데이터 구조의 해상도를 감소시킬 수 있어, 메모리의 양 및 메모리의 판독/기록 작업의 횟수를 줄일 수 있다.
실시예들은 루프 필터의 턴오프(turning off)에 의해 적용되는 DBBP로 비디오 코딩의 복잡도를 감소시키도록 구성될 수 있다. 비디오 코딩 프로세스의 복잡도는 DBBP 파티션을 포함하는 블록에 대해 루프 필터(예컨대, 디블록킹(deblocking), ALF 또는 SAO 필터)를 턴오프함으로써 감소될 수 있다.
본 발명의 실시예는 깊이 기반 블록 파티셔닝(DBBP)라고 할 수 있는 방법을 제공한다. 실시예에서, 텍스처 블록의 파티셔닝은 텍스처 정보 없이 깊이 정보만을 사용하고, 예컨대, 텍스처 블록의 텍스처 정보는 없지만 텍스처 블록에 관련된 깊이 정보만을 사용하여 수행될 수 있다. 다른 실시예들은 복잡도를 낮게 유지하기 위해 깊이 기반 블록 파티셔닝과 다른 파티셔닝 방법, 예컨대 거친(coarse) 텍스처 정보에 기반한 것과 결합할 수 있다. 그러나, 파티셔닝 마스크 형태의 깊이 정보만 사용하는 것이 간단하고, 복잡도는 낮지만 텍스처 블록을 파티셔닝하는 효과적인 방법을 제공한다.
이렇게 하여 디코더에서 이용 가능한 깊이 정보는 파티션의 형상에 관한 어떤 추가적인 정보도 비트스트림에 전송할 필요 없이 압축을 향상시키기 위해 재사용될 수 있다.
이상을 요약하면, 본 발명의 실시예는, 예컨대 코딩된 텍스처 블록과 연관된 깊이 또는 시차 맵의 형태의, 깊이 정보에 기초하여 결정되는, 임의의 형상의 적어도 두 개의 파티션을 사용하여 텍스처 블록을 코딩하기 위한 코딩 방안을 제공한다. 파티션의 형상을 텍스처 블록의 물체 경계에 잘 맞출 수 있기 때문에, 코딩 프로세스에 대한 추가의 유연성을 획득할 수 있으며, 이는 인코더를, 텍스처 블록의 더 작은 규칙적인, 즉 직사각형, 형상의 파티션으로의 추가적인 파티셔닝으로부터 보호하고, 이들 파티션의 시그널링에 위한 비트를 절약한다. 본 발명의 실시예에 따르면, 임의의 형상의 파티션은 코딩된 텍스처 블록과 연관된 이용 가능한 깊이 정보에 기초하여 디코더에서 결정될 수 있다. 결과적으로, 정확한 형상의 깊이 기판 파티션을 비트스트림에 송신할 필요가 없어, 비트레이트를 감소시킨다.

Claims (15)

  1. 텍스처 이미지(texture image)의 인코딩된 텍스처 블록(encoded texture block)을 디코딩하는 디코딩 장치로서,
    상기 인코딩된 텍스처 블록(312')과 연관된 깊이 정보(322)에 기초하여 상기 인코딩된 텍스처 블록에 대한 파티셔닝 마스크(partitioning mask)((332)를 결정하도록 구성된 파티셔너(partitioner)(510) - 상기 파티셔닝 마스크(332)는 복수의 파티션(partition)(P1, P2)을 규정하고 상기 인코딩된 텍스처 블록의 텍스처 블록 요소를 상기 인코딩된 텍스처 블록의 복수의 파티션 중 하나의 파티션과 연관짓도록 구성됨 -; 및
    상기 파티셔닝 마스크에 기초하여 상기 인코딩된 텍스처 블록의 상기 복수의 파티션의 파티션들을 디코딩하도록 구성된 디코더(720)
    를 포함하는 디코딩 장치.
  2. 제1항에 있어서,
    상기 복수의 파티션을 구성하는 파티션의 수는 미리 정해지거나, 예를 들어, 상기 텍스처 블록에 연관된 깊이 정보를 분석함으로써 적응적으로 결정되는, 디코딩 장치.
  3. 제1항 또는 제2항에 있어서,
    상기 파티셔너는 반복 방식으로 상기 파티셔닝 마스크를 결정하도록 구성되고, 각각의 반복에서 미리 정해진 선택 기준을 충족하는 파티션은, 미리 정해진 종료 기준(termination-criterion)이 충족될 때까지 또는 추가 파티셔닝 기준(further-partitioning-criterion)이 여전히 충족되는 한, 서브파티션(sub-partition)으로 더 분할되며, 상기 텍스처 블록은 반복 파티셔닝에 사용되는 초기 파티션을 수행하는, 디코딩 장치.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 파티셔너는, 상기 텍스처 블록 요소와 연관된 깊이 정보 값과 임계값의 비교에 기초하여 상기 텍스처 블록의 텍스처 블록 요소를 상기 복수의 파티션 중 하나와 연관짓도록 구성되고;
    상기 파티셔너는,
    인코딩될 텍스처 블록과 연관된 영역에 대해 상기 깊이 정보 값의 평균값을 계산하고, 상기 임계값을 상기 계산된 평균값으로 설정하거나; 또는
    인코딩될 텍스처 블록과 연관된 영역에 대해 상기 깊이 정보 값의 가중 평균을 계산하고, 상기 임계값을 상기 가중 평균의 값으로 설정하거나 - 상기 가중 평균의 계산 시에 사용된 가중치는 상기 텍스처 블록의 중심으로부터의 거리에 의존함 -; 또는
    인코딩될 텍스처 블록과 연관된 영역으로부터 상기 깊이 정보 값의 중앙값을 계산하고, 상기 임계값을 상기 계산된 중앙값으로 설정함으로써, 상기 임계값을 적응적으로 결정하도록 구성되는, 디코딩 장치.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서,
    상기 디코딩 장치는,
    비트스트림으로부터 인코딩된 깊이 정보를 추출하도록 구성된 디멀티플렉서(860); 및
    상기 인코딩된 깊이 정보를 디코딩하여 상기 인코딩된 텍스처 블록에 연관된 깊이 정보를 취득하도록 구성된 깊이 디코더를 더 포함하는 디코딩 장치.
  6. 제1항 내지 제5항 중 어느 한 항에 있어서,
    상기 디코딩 장치는,
    상기 텍스처 블록의 복수의 파티션 중 제2 파티션에 대한 코딩 정보와는 별개로 상기 인코딩된 텍스처 블록의 복수의 파티션 중 제1 파티션에 대한 코딩 정보를 비트스트림으로부터 추출하도록 구성된 디멀티플렉서(860)를 더 포함하고,
    상기 디코더는 상기 코딩 정보를 사용하여 상기 제1 파티션을 디코딩하도록 구성되고;
    상기 코딩 정보는, 예측 모드, 예측기 인덱스(predictor index), 예측 방향, 참조 픽처 인덱스(reference picture index), 참조 뷰 인덱스(eference view index), 변환 계수, 움직임 벡터(motion vector), 및 코딩 컨텍스트(coding context) 중 하나 이상을 포함하는, 디코딩 장치.
  7. 텍스처 이미지의 인코딩된 텍스처 블록을 디코딩하는 디코딩 장치로서,
    상기 텍스처 블록의 복수의 파티션 중 인코딩된 파티션의 코딩 정보를 포함하는 비트스트림을 수신하도록 구성된 수신기;
    상기 비트스트림으로부터 코딩 모드 지시자(coding mode indicator)를 추출하도록 구성된 디멀티플렉서 - 상기 코딩 모드 지시자는 복수의 코딩 모드 중 어느 코딩 모드가 상기 텍스처 블록을 인코딩하는 데 사용되었는지를 지시함 -; 및
    상기 코딩 모드 지시자가, 대응하는 깊이 기반 블록 포셔닝 코딩 모드(depth based block portioning coding mode)가 상기 텍스처 블록을 인코딩하는 데 사용되었다는 것을 지시하는 경우에, 깊이 기반 블록 포셔닝 디코딩 모드에 따라 상기 인코딩된 텍스처 블록을 디코딩하도록 구성된 제1항 내지 제7항 중 어느 한 항에 따른 깊이 기반 블록 파티셔닝 장치
    를 포함하는 디코딩 장치.
  8. 제7항에 있어서,
    상기 디멀티플렉서는, 텍스처 블록마다 상기 인코딩된 텍스처 블록을 디코딩하는 데 사용될, 상기 복수의 디코딩 모드 중 디코딩 모드를 결정하기 위한 상기 코딩 모드 지시자를 추출하도록 구성되고; 및/또는
    상기 디멀티 플렉서는, GOP마다, 인트라 구간(intra-period)마다, 이미지마다, 슬라이스(slice)마다, 또는 코딩 유닛(coding unit)마다 비트스트림으로부터 인에이블링 또는 디스에이블링 지시자를 추출하도록 구성되고, 상기 깊이 기반 블록 포셔닝 코딩 모드에 대한 인에이블링 또는 디스에이블링 지시는 SPS, PPS, PBS, VPS, 픽처 헤더(picture header), SH, 매크로블록(macroblock) 내에 또는 상기 코딩 유닛 신택스 내에 시그널링되고, 상기 인에이블링 또는 디스에이블링 지시자는, 상기 깊이 기반 블록 포셔닝 코딩 모드가 상기 인에블링 또는 디스에이블링 지시자 뒤에 수신되는 텍스처 블록에 대해 인에이블 또는 디스에이블되는지를 지시하는, 디코딩 장치.
  9. 제7항 또는 제8항에 있어서,
    상기 복수의 코딩 모드는, 하나의 깊이 기반 블록 포셔닝 코딩 모드와 규칙적인 형상의 파티셔닝(regular shaped partitioning)에 기초한 코딩 모드의 세트를 포함하고;
    상기 규칙적인 형상의 파티셔닝에 기초한 코딩 모드 각각은 그것에 연관된 모드 특정 코딩 모드 지시자를 가지고, 이는 각각의 규칙적인 형상의 파티셔닝 코딩 모드를 다른 규칙적인 형상의 파티셔닝 코딩 모드와 구별짓고;
    상기 깊이 기반 블록 포셔닝 코딩 모드의 선택은 상기 코딩 모드 지시자의 세트의 코딩 모드 지시자 중 하나에만 추가되는 플래그에 의해 시그널링되고, 상기 플래그의 제1 값은, 상기 코딩 모드 지시자에 연관된 상기 규칙적인 형상의 파티셔닝 코딩 모드가 선택되었음을 지시하고, 상기 플래그의 제2 값은 상기 깊이 기반 블록 포셔닝 코딩 모드가 선택되었음을 시그널링하는, 디코딩 장치.
  10. 제7항 내지 제9항 중 어느 한 항에 있어서,
    상기 깊이 기반 블록 파티셔닝 장치(700)는 상기 파티셔닝 마스크(332)를 규칙적인 형상의 파티션에 매핑하도록 구성되고;
    상기 디코딩 장치는,
    상기 파티셔닝 마스크의 규칙적인 형상의 파티셔닝 표현 또는 상기 파티셔닝 마스크의 상기 규칙적인 형상의 파티셔닝 표현에 기초하여 도출되는 정보에 기초하여 연속적인 인코딩된 텍스처 블록을 디코딩하도록 구성된 텍스처 디코더를 포함하는 디코딩 장치.
  11. 텍스처 이미지의 인코딩된 텍스처 블록을 디코딩하는 디코딩 방법으로서,
    상기 인코딩된 텍스처 블록에 연관된 깊이 정보에 기초하여 상기 인코딩된 텍스처 블록에 대한 파티셔닝 마스크를 결정하는 단계 - 상기 파티셔닝 마스크는 복수의 파티션을 규정하고 상기 인코딩된 텍스처 블록의 텍스처 블록 요소를 상기 인코딩된 텍스처 블록의 복수의 파티션 중 하나의 파티션과 연관짓도록 구성됨 -; 및
    상기 파티셔닝 마스크에 기초하여 상기 인코딩된 텍스처 블록의 복수의 파티션의 파티션들을 디코딩하는 단계
    를 포함하는 디코딩 방법.
  12. 컴퓨터에서 컴퓨터 프로그램이 실행될 때, 제11항에 따른 방법을 수행하기 위한 프로그램 코드를 포함하는 컴퓨터 프로그램.
  13. 텍스처 이미지(310)의 텍스처 블록(312)을 인코딩하는 인코딩 장치로서,
    상기 텍스처 블록(312)에 연관된 깊이 정보(322)에 기초하여 상기 텍스처 블록에 대한 파티셔닝 마스크(332)를 결정하도록 구성된 파티셔너(510) - 상기 파티셔닝 마스크(332)는 상기 텍스처 블록의 복수의 파티션을 규정하고 상기 텍스처 블록(312)의 텍스처 블록 요소를 상기 복수의 파티션 중 하나의 파티션과 연관짓도록 구성됨 -; 및
    상기 파티셔닝 마스크(332)에 기초하여 상기 텍스처 블록의 복수의 파티션 의 파티션들(P1, P2)을 인코딩함으로써 상기 텍스처 블록을 인코딩하도록 구성된 인코더(520)
    를 포함하는 인코딩 장치.
  14. 제13항에 있어서,
    상기 인코더는, 상기 텍스처 블록의 복수의 파티션 중 제2 파티션과는 별개로 상기 텍스처 블록의 복수의 파티션 중 제1 파티션에 대해, 상기 제1 파티션의 인코딩에 사용될 코딩 정보를 결정하도록 구성되고,
    상기 코딩 정보는, 예측 모드, 예측기 인덱스, 예측 방향, 참조 픽처 인덱스, 참조 뷰 인덱스, 움직임 벡터, 변환 계수, 및 코딩 컨텍스트 중 하나 이상을 포함하는, 인코딩 장치.
  15. 텍스처 이미지(310)의 텍스처 블록(312)을 인코딩하는 인코딩 방법으로서,
    상기 텍스처 블록(312)에 연관된 깊이 정보(322)에 기초하여 상기 텍스처 블록에 대한 파티셔닝 마스크(332)를 결정하는 단계(210) - 상기 파티셔닝 마스크(332)는 상기 텍스처 블록의 복수의 파티션을 규정하고 상기 텍스처 블록(312)의 텍스처 블록 요소를 상기 복수의 파티션 중 하나의 파티션과 연관짓도록 구성됨 -; 및
    상기 파티셔닝 마스크(332)에 기초하여 상기 텍스처 블록의 복수의 파티션의 파티션들(P1, P2)을 인코딩함으로써 상기 텍스처 블록을 인코딩하는 단계(220)
    를 포함하는 인코딩 방법.
KR1020177018453A 2013-07-19 2013-07-19 깊이 기반 블록 파티셔닝을 사용하여 텍스처 블록을 인코딩 및 디코딩하는 방법 및 장치 KR101891637B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2013/065360 WO2015007348A1 (en) 2013-07-19 2013-07-19 Method and apparatus for encoding and decoding a texture block using depth based block partitioning

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020167004288A Division KR101756301B1 (ko) 2013-07-19 2013-07-19 깊이 기반 블록 파티셔닝을 사용하여 텍스처 블록을 인코딩 및 디코딩하는 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20170082658A true KR20170082658A (ko) 2017-07-14
KR101891637B1 KR101891637B1 (ko) 2018-08-24

Family

ID=48900957

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020177018453A KR101891637B1 (ko) 2013-07-19 2013-07-19 깊이 기반 블록 파티셔닝을 사용하여 텍스처 블록을 인코딩 및 디코딩하는 방법 및 장치
KR1020167004288A KR101756301B1 (ko) 2013-07-19 2013-07-19 깊이 기반 블록 파티셔닝을 사용하여 텍스처 블록을 인코딩 및 디코딩하는 방법 및 장치

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020167004288A KR101756301B1 (ko) 2013-07-19 2013-07-19 깊이 기반 블록 파티셔닝을 사용하여 텍스처 블록을 인코딩 및 디코딩하는 방법 및 장치

Country Status (8)

Country Link
US (2) US10616584B2 (ko)
EP (2) EP3324631B1 (ko)
JP (1) JP6250805B2 (ko)
KR (2) KR101891637B1 (ko)
CN (1) CN105393541B (ko)
ES (1) ES2652132T3 (ko)
PT (1) PT3022908T (ko)
WO (1) WO2015007348A1 (ko)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6250805B2 (ja) 2013-07-19 2017-12-20 ホアウェイ・テクノロジーズ・カンパニー・リミテッド 深度ベース・ブロック・パーティショニングを使用して、テクスチャブロックを符号化および復号するための方法ならびに装置
KR20150012206A (ko) 2013-07-24 2015-02-03 한국전자통신연구원 3차원 콘텐츠의 부호화 방법 및 장치
WO2015123806A1 (en) * 2014-02-18 2015-08-27 Mediatek Singapore Pte. Ltd. Methods for depth based block partitioning
WO2015135175A1 (en) * 2014-03-13 2015-09-17 Mediatek Singapore Pte. Ltd. Simplified depth based block partitioning method
US9838712B2 (en) * 2014-03-17 2017-12-05 Hfi Innovation Inc. Method of signaling for depth-based block partitioning
WO2016074745A1 (en) * 2014-11-14 2016-05-19 Huawei Technologies Co., Ltd. Systems and methods for processing a block of a digital image
WO2016074746A1 (en) 2014-11-14 2016-05-19 Huawei Technologies Co., Ltd. Systems and methods for mask based processing of a block of a digital image
JP6443869B2 (ja) * 2014-11-14 2018-12-26 ホアウェイ・テクノロジーズ・カンパニー・リミテッド デジタル画像を処理するためのシステムおよび方法
CN116347073A (zh) * 2016-03-30 2023-06-27 韩国电子通信研究院 使用画面划分信息对视频进行编码和解码的方法和设备
CN109565592B (zh) 2016-06-24 2020-11-17 华为技术有限公司 一种使用基于分割的视频编码块划分的视频编码设备和方法
CN109565595B (zh) 2016-06-24 2021-06-22 华为技术有限公司 一种使用基于分割的视频编码块划分的视频编码设备和方法
CN106210722B (zh) * 2016-07-08 2019-06-25 上海大学 基于hevc的分层深度视频残差层数据的编码方法
EP3349182A1 (en) * 2017-01-13 2018-07-18 Thomson Licensing Method, apparatus and stream for immersive video format
US11514613B2 (en) * 2017-03-16 2022-11-29 Samsung Electronics Co., Ltd. Point cloud and mesh compression using image/video codecs
US10776992B2 (en) * 2017-07-05 2020-09-15 Qualcomm Incorporated Asynchronous time warp with depth data
WO2019013430A1 (en) * 2017-07-10 2019-01-17 Samsung Electronics Co., Ltd. COMPRESSION OF MAILLAGES AND POINT CLOUDS USING IMAGE / VIDEO CODECS
WO2020050577A1 (ko) * 2018-09-07 2020-03-12 엘지전자 주식회사 비디오 송신 방법, 비디오 송신 장치, 비디오 수신 방법 및 비디오 수신 장치
CN110889851B (zh) 2018-09-11 2023-08-01 苹果公司 针对深度和视差估计的语义分割的稳健用途
KR20210069647A (ko) * 2018-10-05 2021-06-11 인터디지털 브이씨 홀딩스 인코포레이티드 3d 포인트들을 인코딩/재구성하기 위한 방법 및 디바이스
US11216984B2 (en) 2019-01-09 2022-01-04 Samsung Electronics Co., Ltd. Patch splitting for improving video-based point cloud compression performance
EP3703378A1 (en) * 2019-03-01 2020-09-02 Koninklijke Philips N.V. Apparatus and method of generating an image signal
KR20230058712A (ko) * 2020-09-03 2023-05-03 삼성전자주식회사 통신 시스템에서 컨텐츠와 디바이스들의 성능 차이 완화를 위한 방법 및 장치
CN113329228B (zh) * 2021-05-27 2024-04-26 杭州网易智企科技有限公司 视频编码方法、解码方法、装置、电子设备及存储介质
WO2023118259A1 (en) * 2021-12-21 2023-06-29 Interdigital Vc Holdings France, Sas Video block partitioning based on depth or motion information
US20230281876A1 (en) * 2022-03-04 2023-09-07 Tencent America LLC Mesh compression with constrained geometry dynamic range

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3886184B2 (ja) * 1996-09-20 2007-02-28 株式会社ソニー・コンピュータエンタテインメント 画像データの処理方法および画像処理装置
US6381364B1 (en) * 1996-12-31 2002-04-30 Intel Corporation Content texture sensitive picture/video encoder/decoder
EP2238764A4 (en) * 2008-01-25 2015-04-22 Hewlett Packard Co CODE MODE SELECTION FOR BLOCK-BASED CODING
US9417700B2 (en) * 2009-05-21 2016-08-16 Edge3 Technologies Gesture recognition systems and related methods
CN102055982B (zh) * 2011-01-13 2012-06-27 浙江大学 三维视频编解码方法及装置
CA2833032C (en) * 2011-06-15 2016-08-30 Mediatek Inc. Method and apparatus of texture image compression in 3d video coding
US9485503B2 (en) * 2011-11-18 2016-11-01 Qualcomm Incorporated Inside view motion prediction among texture and depth view components
JP6067737B2 (ja) * 2011-11-29 2017-01-25 トムソン ライセンシングThomson Licensing ビデオ品質測定のための方法、装置、コンピュータプログラム、及び記憶媒体
US20130287093A1 (en) 2012-04-25 2013-10-31 Nokia Corporation Method and apparatus for video coding
CN104813669B (zh) * 2012-09-21 2018-05-22 诺基亚技术有限公司 用于视频编码的方法和装置
JP6250805B2 (ja) 2013-07-19 2017-12-20 ホアウェイ・テクノロジーズ・カンパニー・リミテッド 深度ベース・ブロック・パーティショニングを使用して、テクスチャブロックを符号化および復号するための方法ならびに装置

Also Published As

Publication number Publication date
US10616584B2 (en) 2020-04-07
ES2652132T3 (es) 2018-01-31
KR20160034362A (ko) 2016-03-29
US20160134874A1 (en) 2016-05-12
KR101756301B1 (ko) 2017-07-10
US11234002B2 (en) 2022-01-25
EP3324631A1 (en) 2018-05-23
KR101891637B1 (ko) 2018-08-24
CN105393541B (zh) 2018-10-12
WO2015007348A1 (en) 2015-01-22
JP2016529785A (ja) 2016-09-23
EP3022908B1 (en) 2017-11-01
JP6250805B2 (ja) 2017-12-20
EP3324631B1 (en) 2021-09-08
CN105393541A (zh) 2016-03-09
PT3022908T (pt) 2017-12-26
EP3022908A1 (en) 2016-05-25
US20200288138A1 (en) 2020-09-10

Similar Documents

Publication Publication Date Title
KR101756301B1 (ko) 깊이 기반 블록 파티셔닝을 사용하여 텍스처 블록을 인코딩 및 디코딩하는 방법 및 장치
US11032562B2 (en) Effective wedgelet partition coding using spatial prediction
JP2021168479A (ja) デプスマップの推定および更新を用いる効率的なマルチビュー符号化
KR101844705B1 (ko) 스테레오 비디오에 대한 심도 인지 강화
DK2777283T3 (en) Effective prediction using partition encoding
US9756330B2 (en) Adaptive partition coding
US20140247872A1 (en) Effective wedgelet partition coding
KR20160106616A (ko) 예측 블록으로부터의 인트라 예측
WO2015095078A1 (en) Large blocks and depth modeling modes (dmm&#39;s) in 3d video coding
KR20160058943A (ko) 심도 인트라 예측 모드들에 대한 잔차 코딩
WO2015135169A1 (en) Constrained depth intra mode coding for 3d video coding
KR20150036261A (ko) 3차원 비디오를 표현하는 비트 스트림을 코딩하는 장치
KR20160102073A (ko) 3d 비디오 코딩에서 큰 예측 블록들의 세그먼트-와이즈 dc 코딩의 단순화
CN110868589B (zh) 帧间预测方法、装置及其应用的编/解方法及装置
KR20170110557A (ko) 적응적인 디블록킹 필터링을 이용하는 영상 부호화 방법과 영상 복호화 방법 및 장치
JP6825506B2 (ja) 動画像符号化装置、動画像符号化方法、動画像符号化用コンピュータプログラム、動画像復号装置及び動画像復号方法ならびに動画像復号用コンピュータプログラム
CN117041605A (zh) 帧间预测方法、装置及其应用的编/解方法及装置
CN118042136A (en) Encoding and decoding method and device
WO2015103747A1 (en) Motion parameter hole filling
CN116647683A (zh) 量化处理方法和装置
CN117397238A (zh) 编解码方法和装置
Chang et al. Fast intra mode decision for depth map coding

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant