KR20230003413A - 픽쳐 경계 처리를 사용하여 픽쳐를 인코딩하고 디코딩하는 장치 및 방법 - Google Patents
픽쳐 경계 처리를 사용하여 픽쳐를 인코딩하고 디코딩하는 장치 및 방법 Download PDFInfo
- Publication number
- KR20230003413A KR20230003413A KR1020227044553A KR20227044553A KR20230003413A KR 20230003413 A KR20230003413 A KR 20230003413A KR 1020227044553 A KR1020227044553 A KR 1020227044553A KR 20227044553 A KR20227044553 A KR 20227044553A KR 20230003413 A KR20230003413 A KR 20230003413A
- Authority
- KR
- South Korea
- Prior art keywords
- picture
- partitioning
- block
- modes
- blocks
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 74
- 238000000638 solvent extraction Methods 0.000 claims abstract description 323
- 238000005192 partition Methods 0.000 claims abstract description 114
- 238000004590 computer program Methods 0.000 claims description 16
- 230000011664 signaling Effects 0.000 description 35
- 230000011218 segmentation Effects 0.000 description 29
- 238000003066 decision tree Methods 0.000 description 15
- 239000003607 modifier Substances 0.000 description 11
- 238000010586 diagram Methods 0.000 description 9
- 230000009466 transformation Effects 0.000 description 8
- 230000008901 benefit Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 230000001419 dependent effect Effects 0.000 description 3
- 238000009795 derivation Methods 0.000 description 3
- 230000009977 dual effect Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000013139 quantization Methods 0.000 description 3
- 101100364280 Oryza sativa subsp. japonica RSS3 gene Proteins 0.000 description 2
- 101100150875 Oryza sativa subsp. japonica SUS1 gene Proteins 0.000 description 2
- 101100478969 Oryza sativa subsp. japonica SUS2 gene Proteins 0.000 description 2
- 101100478972 Oryza sativa subsp. japonica SUS3 gene Proteins 0.000 description 2
- 101100004663 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) BRR2 gene Proteins 0.000 description 2
- 101100504519 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) GLE1 gene Proteins 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 238000012886 linear function Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 241000023320 Luma <angiosperm> Species 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000012447 hatching Effects 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/167—Position within a video image, e.g. region of interest [ROI]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/1883—Methods 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 relating to sub-band structure, e.g. hierarchical level, directional tree, e.g. low-high [LH], high-low [HL], high-high [HH]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/189—Methods 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/192—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/96—Tree coding, e.g. quad-tree coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
본 발명은 픽쳐(12)를 인코딩하기 위한 장치(10)에 관한 것이며, 상기 장치는, 재귀적 다중 트리 파티셔닝(recursive multi-tree partitioning)을 사용하여 픽쳐(12)를 리프 블록으로 파티셔닝하고, 픽쳐(12)를 리프 블록으로 파티셔닝하는 것을 사용하여 픽쳐(12)를 데이터 스트림(14)으로 블록 기반 인코딩하도록 구성되고, 상기 장치(10)는, 픽쳐(12)를 리프 블록으로 파티셔닝하는 것에 있어서, 다중 트리 파티셔닝의 미리 결정된 트리 레벨에 해당하고 픽쳐(12)의 경계를 넘어 연장하는 미리 결정된 블록(801a, 801b, 801c, 801d, 802a, 802b, 802d, 803a, 803b, 803c)에 대해, 픽쳐(12)의 경계가 미리 결정된 블록(801a, 801b, 801c, 801d, 802a, 802b, 802d, 803a, 803b, 803c)을 교차하는 위치에 따라 미리 결정된 블록(801a, 801b, 801c, 801d, 802a, 802b, 802d, 803a, 803b, 803c)을 분할하기 위한 분할 모드들의 사용가능한 세트를 감소시켜서 하나 이상의 분할 모드들의 감소된 세트를 얻도록 구성되고, 감소된 세트의 카디널리티(cardinality)가 1이면, 장치(10)는 미리 결정된 블록(801a, 801b, 801c, 801d, 802a, 802b, 802d, 803a, 803b, 803c)을 분할하기 위해 분할 모드의 감소된 세트를 적용하도록 구성되고, 그리고, 감소된 세트의 카디널리티가 1보다 크면, 장치(10)는 분할 모드의 감소된 세트들 중 하나의 분할 모드를 선택하고 미리 결정된 블록(801a, 801b, 801c, 801d, 802a, 802b, 802d, 803a, 803b, 803c)을 분할하기 위해 분할 모드들 중 선택된 하나의 분할 모드를 적용하고 그리고 선택을 데이터 스트림(14)에서 시그널링하도록 구성된다. 본 발명은 또한 픽쳐(12)를 디코딩하기 위한 장치(20), 픽쳐(12)를 인코딩하기 위한 방법 및 픽쳐(12)를 디코딩하기 위한 방법에 관한 것이다.
Description
본 발명은 픽쳐 및 비디오 코딩에 관한 것이다. 본 발명의 실시 예는 특정 크기의 입력 픽쳐 및 비디오 데이터를 더 작은 엔티티로 파티셔닝하는 특정 방식에 관한 것이다. 특히, 본 발명의 실시 예는 재귀적 픽쳐 시그널 파티셔닝에서 픽쳐 경계 처리에 관한 것이다.
최신 비디오 코딩 애플리케이션에서 특정 크기의 입력 비디오 시그널은 더 작은 청크로 파티셔닝된다[1]. 이러한 파티셔닝은 각 레벨과 관련된 특정 정보 및 설명이 있는 여러 구조로 구성된다. 최첨단 비디오 코덱 H.265/HEVC [1]에서 가장 중요한 세분화는 매크로 블록으로 세분화하는 것이다. 이러한 매크로 블록 또는 코딩 트리 단위(CTU)는 코딩된 픽쳐에서 고정 그리드에 걸쳐 미리 정의된 크기(예를 들어, 32x32 또는 64x64 루마 샘플)의 2차 구조이다. 다른 모든 파티셔닝 레벨은 이 엄격한 세분화로 정의된다. 예를 들어, 조각과 타일로 더 거친 고레벨 분할은 포함된 CTU 측면에서 규정된다.
H.265/HEVC [1]에서는 각 CTU에서 시작하여 쿼드 트리 구조가 시그널을 받아 강성의 CTU를 플렉서블한 하위 구조로 재귀적으로 파티셔닝하는 수단을 제공한다. 정의된 파라미터 범위에서, 각 레벨에서, 4개의 서브블록으로 분할되거나 지정된 레벨에서 코딩되어야 하는 블록으로 추론되거나 시그널링된다. 이 프로세스는 현재 고레벨 파라미터에 의해 정의된 대로 더 이상 분할이 불가능하거나 현재 레벨에서 더 이상 분할이 수행되지 않아야 함을 나타내는 플래그를 읽을 때까지 재귀적으로 반복된다. 이 경우 코딩 단위 및 그 하위 구조의 시그널링이 판독될 것이다.
쿼드 트리 분할의 시그널링(signaling)은 때때로 생략되어 참 또는 거짓으로 추론될 수 있다. 가장 주목할만한 것은 엄격한 특성으로 인해 CTU가 반드시 비디오 픽쳐 경계와 일치하는 것은 아니다. 이 경우 쿼드 트리 파티셔닝 구조의 CTU 또는 서브블록이 픽쳐 경계에 완전히 포함되지 않은 경우 분할 플래그는 명시적 시그널링이 없는 포지티브로 추론된다. 분할 후 서브블록이 비디오 픽쳐 경계를 완전히 벗어난 경우 이 블록에 대한 더 이상 시그널링이 판독되지 않을 것이다.
H.265/HEVC [1] 이상의 기능을 갖춘 미래의 비디오 표준의 개발에서, 쿼드 트리 재귀 분할 구조는 다양한 분할 구성으로 연장된다 [2]. 블록이 4개의 2차 서브 부분으로 분할되지 않으면, 이 블록이 ½의 분할 비율을 사용하여 2개의 직사각형 블록으로 분할되어야 함을 나타내는 2진 분할이 시그널링된다. 시그널링에는 분할이 수평 또는 수직으로 적용되어야하는 경우 정보도 포함된다. 이러한 직사각형 블록은 2진 트리 파티셔닝 신택스(binary tree split syntax)을 사용하여 더 작은 2차 또는 직사각형 블록으로 더 재귀적으로 분할할 수 있다. 이 향상된 분할 트리를 QTBT [2]라고 한다. QTBT는 H.265/HEVC 표준 [1]에서와 마찬가지로 암시적 쿼드 분할을 사용하여 픽쳐 경계를 처리한다. QTBT에서 블록이 픽쳐 경계를 초과하면 쿼드 분할이 유추되고 시그널링이 판독되지 않을 것이다.
[5]에서는 새로운 파티셔닝 방법인 GBS(Generalized Binary Splitting)가 설명되어 있는데, 이는 쿼드 분할을 포함하지 않되 쿼드 분할과 함께 사용할 수도 있다. 이 방법에서 2진 분할은 ½외의 분할 비율로 분할을 수행하도록 시그널링될 수 있다(QTBT에서 2진 분할은 현재 블록의 중간에서 분할을 수행한다). 분할은 이전 분할과 관련된 신택스를 사용하여 시그널링할 수 있다(예를 들어, 수평 및 수직이 아닌 수직 및 평행).
그러나 기존의 파티셔닝 방법은 픽쳐 경계를 처리하는 데 다소 엄격하다. 위에서 설명한 바와 같이, 종래의 파티셔닝 방법은 픽쳐 경계에서 암시적 쿼드 분할을 사용할 수 있다. 즉, 종래 기술은 픽쳐 경계에서 완전 암시적 분할 유도를 사용한다. 이러한 암시적 시그널링은 우수한 시그널링 효율을 가능하게 할 수 있다. 그러나 이것은 낮은 유연성만을 제공할 수 있다.
따라서, 본 발명의 목적은 기존의 파티셔닝 방법을 픽쳐 바운더리 핸들링에서 보다 유연하게 개선하는 동시에 픽쳐 경계 핸들링을 시그널링하기 위한 비트 버짓을 줄이는 것이다.
본 발명은 청구항 1에 따른 픽쳐 인코딩 장치, 청구항 10에 따른 픽쳐 디코딩 장치, 청구항 19에 따른 픽쳐 인코딩 방법, 청구항 20에 따른 픽쳐 디코딩 방법 및 청구항 21에 따른 컴퓨터 프로그램을 제공함으로써 해결책을 제공한다.
제 1 측면은 픽쳐를 인코딩하기 위한 장치에 관한 것이다. 장치는 재귀적 다중 트리 파티셔닝을 사용하여 픽쳐를 리프 블록으로 파티셔닝하도록 구성된다. 즉, 장치는 상기 재귀적 다중 트리 파티셔닝을 사용하여 픽쳐를 더 작은 청크로 파티셔닝하도록 구성된다. 상기 작은 청크는 특정 크기의 블록일 수 있다. 다중 트리를 단계별로 실행하면 픽쳐의 파티셔닝이 제 1 레벨의 트리 루트 블록에서 시작하여 다중 트리의 마지막 블록이므로 파티셔닝의 가장 작은 엔티티인 리프 블록에서 끝날 수 있다. 트리 루트 블록과 분할된 리프 블록 사이에서, 장치는 하나의 파티셔닝 트리 레벨에서 하나 이상의 후속 파티셔닝 트리 레벨로 단계적으로 이동할 수 있으며, 각 트리 레벨에서 특정 트리 레벨의 현재 블록이 두 개 이상의 더 작은 블록으로 파티셔닝된다. 예를 들어, HEVC에서, 트리-루트 블록은 소위 매크로 블록 또는 코딩 트리 유닛(CTU)일 수 있고 리프 블록은 소위 서브 블록 또는 코딩 유닛(CU)일 수 있다. 따라서, CTU는 하나 이상의 CU로 파티셔닝될 수 있으며, 여기서 리프 블록 또는 트리-루트 블록과 리프 블록 사이의 트리 레벨에 있는 임의의 블록은 서브 블록으로 지칭될 수 있다. 또한, 본 발명에서는 트리-루트 블록 또는 리프 블록 또는 트리-루트 블록과 리프 블록 사이의 트리 레벨에 있는 임의의 블록을 미리 결정된 블록이라고 할 수 있다. 따라서, 미리 결정된 블록은 멀티 트리 파티셔닝의 미리 결정된 트리 레벨에 해당할 수 있다. 장치는 블록 기반 코딩 방식을 사용할 수 있고, 즉, 장치는 픽쳐를 리프 블록으로 파티셔닝하는 것을 사용하여 픽쳐를 데이터 스트림으로 블록 기반 인코딩하도록 구성된다. 파티셔닝은 분할이라고도한다. 트리 루트 블록을 더 작은 리프 블록으로 파티셔닝하는 것은 블록을 더 작은 서브블록으로 분할하기 위해 특정 분할 방식을 사용할 수 있다. 이러한 분할 방식은 각 트리 레벨에서 달라질 수 있는 분할 모드라고도 한다. 또한, 미리 결정된 블록은 미리 결정된 크기를 포함할 수 있다. 미리 결정된 블록들을 픽쳐 위에 그리드로 배열할 때, 미리 결정된 블록들 중 일부는 그 크기 때문에 픽쳐 경계를 넘어 연장될 수 있다. 예를 들어, 미리 결정된 블록의 제 1 부분은 픽쳐 내부에 위치할 수 있고, 상기 미리 결정된 블록의 제 2 부분은 픽쳐 외부에 위치할 수 있다. 따라서, 픽쳐 경계는 미리 결정된 블록을 넘을 수 있다. 일반적으로, 픽쳐 경계는 서로 다른 위치에서 미리 결정된 블록을 교차할 수 있다. 예를 들어, 픽쳐 경계는 미리 결정된 블록을 가로로, 세로로, 또는 둘 다 교차할 수 있으며, 여기서 픽쳐 코너는 미리 결정된 블록에 포함될 것이다. 이러한 상황을 처리하기 위해, 본 발명은 다음과 같은 해결책을 제공한다. 픽쳐를 리프 블록으로 분할하는 동안, 장치는 종래 기술에 의해 사용된 바와 같이 완전히 암시적인 분할 유도와 비교되는 분할 모드의 감소된 세트를 사용하여 멀티 트리 파티셔닝의 미리 결정된 트리 레벨에 해당하고 픽쳐의 경계를 넘어 연장하는 미리 결정된 블록을 파티셔닝하도록 구성된다. 모드는 종래 기술에 의해 사용되는 완전 암시적 분할 유도와 비교된다. 본 발명에 따르면, 장치는 픽쳐 경계가 상기 미리 결정된 블록을 가로 지르는 상기 언급된 위치에 따라 미리 결정된 블록을 분할하기 위한 분할 모드들의 사용가능한 세트를 감소 시키도록 구성된다. 따라서, 장치는 하나 이상의 분할 모드의 감소된 세트를 획득한다. 감소된 세트는 분할 모드의 감소된 세트에서 사용 가능한 분할 모드의 수를 나타내는 카디널리티를 포함할 수 있다. 따라서, 감소된 세트의 카디널리티가 1인 경우, 즉 감소된 세트가 하나의 분할 모드만을 포함하는 경우, 장치는 미리 결정된 블록을 분할하기 위해 감소된 세트의 이 분할 모드를 적용하도록 구성된다. 감소된 세트의 카디널리티가 1보다 큰 경우, 즉 감소된 세트가 둘 이상의 다른 분할 모드를 포함하는 경우, 장치는 감소된 세트의 이러한 분할 모드 중 하나를 선택하고 상기 미리 결정된 블록을 분할하기 위해, 분할 모드 중 선택된 하나를 적용하도록 구성되고, 상기 장치는 데이터 스트림에서 그것의 각각의 선택을 시그널링한다. 즉, 본 발명의 장치는 현재의 미리 결정된 블록을 분할하기 위해 분할 모드의 감소된 세트를 미리 선택할 수 있다. 상기 사전 선택은 픽쳐 경계에 대한 블록의 현재 위치에 의존할 수 있다. 결과적으로, 본 발명의 장치는 미리 선택된 분할 모드의 감소된 세트로부터 적절한 분할 모드를 선택하기만하면 된다. 분할 자체에 대한 정보를 전송할 필요가 없고 감소된 분할 세트가 하나 이상의 분할 모드를 포함하는 경우 나머지 불확실성만 예를 들어 하나의 빈으로 시그널링되어야 할 수 있기 때문에, 이는 데이터 스트림에서 선택한 분할 모드를 시그널링하기 위한 비트 버짓을 줄여준다.
제 2 측면은 픽쳐를 디코딩하기 위한 장치에 관한 것이다. 장치는 재귀적 다중 트리 파티셔닝을 사용하여 픽쳐를 리프 블록으로 파티셔닝하도록 구성된다. 장치는 또한 픽쳐를 리프 블록으로 파티셔닝하는 것을 사용하여 데이터 스트림으로부터 픽쳐를 블록 기반 디코딩하도록 구성된다. 장치는 또한 다중 트리 파티셔닝의 미리 결정된 트리 레벨에 대응하고 픽쳐의 경계를 넘어 연장하는 미리 결정된 블록에 대해 픽쳐를 리프 블록으로 파티셔닝하는 것에 있어서, 하나 이상의 분할 모드의 감소된 세트를 얻기 위해 경계가 미리 결정된 블록을 교차하는 위치에 따라 미리 결정된 블록을 분할하는 분할 모드의 사용 가능한 세트를 감소시키도록 구성된다. 감소된 세트의 카디널리티가 1이면, 장치는 미리 결정된 블록을 분할하기 위해 분할 모드의 감소된 세트를 적용하도록 구성되고, 감소된 세트의 카디널리티가 1보다 크면, 장치는 분할 모드의 감소된 세트 중 하나를 선택하고 데이터 스트림의 시그널화에 따라 미리 결정된 블록을 분할하기 위해 분할 모드 중 선택된 하나를 적용하도록 구성된다. 상기 픽쳐 디코딩 장치의 장점에 관해서는, 픽쳐 인코딩 장치의 장점을 설명하는 상기 구절을 참조한다.
제 3 측면은 픽쳐 인코딩 방법에 관한 것으로, 이 방법은 재귀적 다중 트리 파티셔닝을 사용하여 픽쳐를 리프 블록으로 파티셔닝하는 단계를 포함한다. 이 방법은 픽쳐를 리프 블록으로 파티셔닝하는 것을 사용하여 픽쳐를 데이터 스트림으로 블록 기반 인코딩하는 단계를 더 포함한다. 상기 방법은, 픽쳐를 리프 블록으로 분할하는 것에 있어서, 다중 트리 파티셔닝의 미리 결정된 트리 레벨에 대응하고 픽쳐의 경계를 넘어 연장되는 미리 결정된 블록에 대해서, 하나 이상의 분할 모드의 감소된 세트를 얻기 위해 경계가 미리 결정된 블록을 교차하는 위치에 따라 미리 결정된 블록을 분할하기 위한 분할 모드들의 사용 가능한 세트를 감소시키는 단계를 더 포함한다. 감소된 세트의 카디널리티가 1인 경우, 상기 방법은 미리 결정된 블록을 분할하기 위해 분할 모드의 감소된 세트를 적용하는 단계를 포함하고, 감소된 세트의 카디널리티가 1보다 크면, 상기 방법은 분할 모드의 감소된 세트 중 하나를 선택하고 미리 결정된 블록을 분할하고 데이터 스트림에서 선택을 시그널링하기 위한 분할 모드 중 선택된 하나를 적용하는 단계를 포함한다. 상기 픽쳐 인코딩 방법의 장점에 관해서는, 픽쳐 인코딩 장치의 장점을 설명하는 상기의 구절을 참조한다.
제 4 측면은 픽쳐 디코딩 방법에 관한 것으로, 상기 방법은 재귀적 멀티 트리 파티셔닝을 사용하여 픽쳐를 리프 블록으로 파티셔닝하는 단계를 포함한다. 방법은 픽쳐를 리프 블록으로 파티셔닝하는 것을 사용하여 데이터 스트림으로부터 픽쳐를 블록 기반 디코딩하는 단계를 더 포함한다. 상기 방법은, 픽쳐를 리프 블록으로 파티셔닝하는 것에 있어서, 다중 트리 파티셔닝의 미리 결정된 트리 레벨에 대응하고 픽쳐의 경계를 넘어 연장하는 미리 결정된 블록에 대하여, 경계가 미리 결정된 블록을 가로지르는 위치에 따라 미리 결정된 블록을 분할하기 위한 분할 모드의 사용가능한 세트를 감소시켜서, 하나 이상의 분할 모드 중 감소된 세트를 획득하는 단계를 더 포함한다. 감소된 세트의 카디널리티가 1이면, 상기 방법은 미리 결정된 블록을 분할하기 위해 분할 모드의 감소된 세트를 적용하는 단계를 더 포함하고, 감소된 세트의 카디널리티가 1보다 큰 경우, 방법은 분할 모드의 감소된 세트 중 하나를 선택하고 데이터 스트림의 시그널화에 따라 미리 결정된 블록을 분할하기 위해 분할 모드들 중 선택된 하나의 분할 모드를 적용하는 단계를 더 포함한다. 상기 영상 디코딩 방법의 장점에 관해서는 영상 인코딩 장치의 장점을 설명하는 상기의 구절을 참조한다.
제 5 측면에 따르면, 컴퓨터 프로그램이 제공되며, 각각의 컴퓨터 프로그램은 컴퓨터 또는 시그널 프로세서에서 실행될 때 전술한 방법을 구현하도록 구성되어, 전술한 방법이 컴퓨터 프로그램 중 하나에 의해 구현된다.
본 발명의 유리한 측면은 독립 청구항의 대상이다. 종속항에 규정된 본 출원의 바람직한 실시 예는 도면과 관련하여 아래에서 예시적으로 설명될 것이다.
도 1은 본 출원의 실시 예들에 따른 인트라 예측 개념이 구현될 수 있는 인코더의 예로서 픽쳐를 예측 코딩하기 위한 장치의 블록도를 도시한다.
도 2는 본 출원의 실시 예들에 따른 인트라 예측 개념이 구현될 수 있는 디코더의 예로서, 도 1의 장치에 적합한 픽쳐를 예측 디코딩하기 위한 장치의 블록도를 도시한다.
도 3은 개별적으로 코딩 모드 선택, 변환 선택 및 변환 성능을 위한 세분화 설정 가능성을 설명하기 위해 예측 잔여 시그널, 예측 시그널 및 재구성된 시그널 간의 관계에 대한 예를 나타내는 개략도를 도시한다.
도 4a는 본 개념에 따른 인코더의 실시 예를 도시한다.
도 4b는 본 개념에 따른 디코더의 실시 예를 도시한다.
도 5a는 사용 가능한 분할 모드의 전체 세트를 포함하는 완전히 제한되지 않은 결정 트리를 도시한다.
도 5b는 본 개념에 따른 분할 모드의 감소된 세트를 포함하는 제한된 결정 트리를 도시한다.
도 5c는 사용 가능한 분할 모드의 전체 세트를 포함하는 추가의 완전히 제한되지 않은 결정 트리를 도시한다.
도 5d는 본 개념에 따라 분할 모드의 감소된 세트를 포함하는 제한된 결정 트리를 도시한다.
도 6은 블록이 픽쳐 경계를 넘어서 연장되는 방법에 대한 다양한 경우의 개략도를 도시한다.
도 7a는 쿼드 분할 모드의 예를 도시한다.
도 7b는 수직 이중 분할 모드의 예를 도시한다.
도 7c는 수평 이중 분할 모드의 예를 도시한다.
도 7d는 수직 3진 분할 모드의 예를 도시한다.
도 7e는 수평 3진 분할 모드의 예를 도시한다.
도 8a는 쿼드 분할만을 사용하여 매크로 블록을 리프 블록으로 분할하는 예를 도시한다.
도 8b는 분할 모드의 감소된 세트로부터 선택된 쿼드 분할, 수직 이중 분할 및 수평 이중 분할을 사용하여 매크로 블록을 리프 블록으로 분할하는 예를 도시한다.
도 9는 본 개념에 따른 픽쳐를 인코딩 방법의 블록도를 도시한다.
도 10은 본 개념에 따른 픽쳐 디코딩 방법의 블록도를 도시한다.
도 1은 본 출원의 실시 예들에 따른 인트라 예측 개념이 구현될 수 있는 인코더의 예로서 픽쳐를 예측 코딩하기 위한 장치의 블록도를 도시한다.
도 2는 본 출원의 실시 예들에 따른 인트라 예측 개념이 구현될 수 있는 디코더의 예로서, 도 1의 장치에 적합한 픽쳐를 예측 디코딩하기 위한 장치의 블록도를 도시한다.
도 3은 개별적으로 코딩 모드 선택, 변환 선택 및 변환 성능을 위한 세분화 설정 가능성을 설명하기 위해 예측 잔여 시그널, 예측 시그널 및 재구성된 시그널 간의 관계에 대한 예를 나타내는 개략도를 도시한다.
도 4a는 본 개념에 따른 인코더의 실시 예를 도시한다.
도 4b는 본 개념에 따른 디코더의 실시 예를 도시한다.
도 5a는 사용 가능한 분할 모드의 전체 세트를 포함하는 완전히 제한되지 않은 결정 트리를 도시한다.
도 5b는 본 개념에 따른 분할 모드의 감소된 세트를 포함하는 제한된 결정 트리를 도시한다.
도 5c는 사용 가능한 분할 모드의 전체 세트를 포함하는 추가의 완전히 제한되지 않은 결정 트리를 도시한다.
도 5d는 본 개념에 따라 분할 모드의 감소된 세트를 포함하는 제한된 결정 트리를 도시한다.
도 6은 블록이 픽쳐 경계를 넘어서 연장되는 방법에 대한 다양한 경우의 개략도를 도시한다.
도 7a는 쿼드 분할 모드의 예를 도시한다.
도 7b는 수직 이중 분할 모드의 예를 도시한다.
도 7c는 수평 이중 분할 모드의 예를 도시한다.
도 7d는 수직 3진 분할 모드의 예를 도시한다.
도 7e는 수평 3진 분할 모드의 예를 도시한다.
도 8a는 쿼드 분할만을 사용하여 매크로 블록을 리프 블록으로 분할하는 예를 도시한다.
도 8b는 분할 모드의 감소된 세트로부터 선택된 쿼드 분할, 수직 이중 분할 및 수평 이중 분할을 사용하여 매크로 블록을 리프 블록으로 분할하는 예를 도시한다.
도 9는 본 개념에 따른 픽쳐를 인코딩 방법의 블록도를 도시한다.
도 10은 본 개념에 따른 픽쳐 디코딩 방법의 블록도를 도시한다.
동일하거나 동등한 요소 또는 동일하거나 동등한 기능을 갖는 요소는 동일하거나 동등한 참조 번호로 다음 설명에서 표시된다.
도면의 다음 설명은 본 명세서에 설명된 개념의 다수의 예시적이고 비제한적인 예 및 실시 예 중 일부만을 설명할 수 있다. CTU는 매크로 블록의 비제한적인 예로서 설명될 수 있는 반면, CU는 서브블록의 비제한적인 예로서 설명될 수 있다. 또한, (예를 들어 직사각형) 픽쳐가 각각 이미지 자체를 나타내는 예를 들어 복수의 타일로 구성될 수 있다. HEVC [1]에서, 이러한 타일링, 예를 들어, 무지향성 비디오의 경우, 높은 레벨의 픽쳐 타일 개념에 의해 사용되고 처리된다. 이러한 타일링은 CTU 해상도에서 사용할 수 있다. 이러한 제한이 완화된 경우 "코딩된 픽쳐"는 각각 고유한 경계와 고유한 내용이 있는 여러 타일로 구성될 수 있다. 그런 의미에서, 코딩된 픽쳐는 더 많은 픽쳐 경계를 포함할 수 있으며, 각 타일은 본 발명에서 설명된 것과 동일한 규칙이 적용될 수 있는 자체 "픽쳐 데이터" 경계를 가진 자체 "픽쳐 데이터"를 구성한다. 따라서, 본 명세서에서 "픽쳐 경계"라는 용어가 사용되는 경우, 이것은 예를 들어, 하나 이상의 타일에 속하는 "현재 픽쳐 데이터 경계"도 포함할 수 있다.
도면에 대한 다음 설명은 실시 예가 구축될 수 있는 코딩 프레임 워크에 대한 예를 형성하기 위해 비디오의 픽쳐를 코딩하기 위한 블록 기반 예측 코덱의 인코더 및 디코더에 대한 설명으로 시작된다. 인코더 및 디코더는 도 1 내지 도 3과 관련하여 설명된다. 이하, 본 출원의 개념의 실시 예에 대한 설명은, 후속하는 도 4 및 이하에서 설명되는 실시 예가 도 1 및 도 2의 인코더 및 디코더의 기초가 되는 코딩 프레임 워크에 따라 동작하지 않는 인코더 및 디코더를 형성하는 데에도 사용될 수 있지만, 개별적으로 도 1 및 도 2의 인코더 및 디코더에 어떻게 구축될 수 있는지에 대한 설명과 함께 제공된다.
도 1은 변환 기반 잔여 코딩을 사용하여 픽쳐(12)를 데이터 스트림(14)으로 예측 코딩하기 위한 장치를 도시한다. 인코딩 장치 또는 인코더는 참조 부호 10을 사용하여 표시된다. 도 2는 또한 변환 기반 잔여 디코딩을 사용하는 데이터 스트림(14)으로부터 픽쳐(12')를 예측적으로 디코딩하도록 구성된 장치일 수 있는 디코딩을 위한 대응 장치 또는 디코더(20)를 도시하고, 여기서 아포스트로피는 디코더(20)에 의해 재구성된 픽쳐(12')가 예측 잔여 시그널의 양자화에 의해 도입된 코딩 손실의 관점에서 장치(10)에 의해 원래 인코딩된 픽쳐(12')로부터 벗어날 수 있음을 나타 내기 위해 사용되었다. 도 1 및 도 2는 본 출원의 실시 예가 이러한 종류의 예측 잔여 코딩에 제한되지 않지만, 변환 기반 예측 잔여 코딩을 예시적으로 사용한다. 이것은 이후에 개략적으로 설명되는 바와 같이,도 1 및 도 2와 관련하여 설명된 다른 세부 사항에 대해서도 마찬가지이다.
인코더(10)는 예측 잔여 시그널에 공간-스펙트럼 변환을 적용하고 따라서 획득된 예측 잔여 시그널을 데이터 스트림(14)으로 인코딩하도록 구성될 수 있다. 마찬가지로, 디코더(20)는 데이터 스트림(14)으로부터의 예측 잔여 시그널을 디코딩하고 그리고 따라서 획득된 예측 잔류 시그널이 스펙트럼-공간 변환을 받게 되도록 구성될 수 있다.
내부적으로, 인코더(10)는 원래 시그널로부터, 즉 픽쳐(12)로부터의 예측 시그널(26)의 편차를 측정하기 위해 예측 잔여(24)를 생성하는 예측 잔여 시그널 생성기(22)를 포함할 수 있다. 예측 잔여 시그널 생성기(22)는 예를 들어, 원래 시그널로부터, 즉 픽쳐(12)로부터 예측 시그널을 감산하는 감산기일 수 있다. 인코더(10)는 스펙트럼-도메인 예측 잔여 시그널(24')을 얻도록 예측 잔여 시그널(24)을 공간-스펙트럼 변환에 적용하는 변환기(28)를 더 포함하고, 스펙트럼 영역 예측 잔여 시그널(24')는 또한 인코더(10)에 의해 포함된 양자화기(32)에 의해 양자화된다. 따라서 양자화된 예측 잔여 시그널(24")는 비트스트림(14)으로 코딩된다. 이를 위해 인코더(10)는 선택적으로 데이터 스트림(14)으로 변환되고 양자화된 예측 잔여 시그널을 엔트로피 코딩하는 엔트로피 코더(34) 포함할 수 있다. 예측 잔여(26)는 데이터 스트림(14)내에 인코딩되고 그로부터 디코딩가능한 예측 잔여 시그널(24")를 기초로 인코더(10)의 예측 스테이지(36)에 의해 생성된다. 이를 위해, 예측 스테이지(36)는 도 1에 도시된 바와 같이 내부적으로 역양자화 기(38)를 포함할 수 있고, 상기 역양자화기는 스펙트럼-도메인 예측 잔여 시그널(24")를 얻도록 예측 잔여 시그널(24")를 역양자화하고, 이 시그널은 역 변환기(40)가 따르는 양자화 손실을 제외하고 시그널(24')에 대응하고, 이는, 예측 잔여 시그널(24"")를 얻기 위해 후자 예측 잔여 시그널(24"')를 역변환, 즉 스펙트럼-공간 변환으로 변환하며, 예측 잔여 시그널(24"")는 양자화 손실을 제외하고 원래 예측 잔여 시그널(24)에 해당된다. 예측 스테이지(36)의 결합기(42)는, 재구성된 시그널(46), 즉, 원래 시그널(12)의 재구성을 얻도록 예측 시그널(26) 및 예측 잔여 시그널(24"")를 추가에 의해 재결합한다. 재구성된 시그널(46)는 시그널(12')에 해당할 수 있다. 예측 단계(36)의 예측 모듈(44)은 예를 들어 공간 예측, 즉 인트라 예측 및/또는 시간적 예측, 즉 인터 예측을 사용하여 시그널(46)에 기초하여 예측 시그널(26)를 생성한다.
마찬가지로, 디코더(20)는 도 2에 도시된 바와 같이 예측 단계(36)에 대응하는 그리고 예측 단계(36)에 상응하는 방식으로 상호 연결되는 구성 요소들로 내부적으로 구성될 수 있다. 특히 디코더(20)의 엔트로피 디코더(50)는 양자화된 스펙트럼-도메인 잔여 예측(24")을 엔트로피 디코딩할 수 있기 때문에, 예측 스테이지(36)의 모듈과 관련하여 상기 기재된 방식으로 상호 연결되고 협력하는, 반양자화기(52), 역 변환기(54), 결합기(56) 및 예측 모듈(58)은 예측 잔여 시그널(24")를 기초로 재구성된 시그널을 회복하므로, 도 2에 도시된 바와 같이, 결합기(56)의 출력은 재구성된 시그널, 즉, 픽쳐(12')를 생성한다.
위에서 구체적으로 설명하지는 않았지만, 인코더(10)가 예를 들어 일부 속도 및 왜곡 관련 기준, 즉 코딩 비용을 최적화하는 방식과 같은 일부 최적화 방식에 따라, 예를 들어 예측 모드, 모션 파라미터 등을 포함하는 일부 코딩 파라미터를 설정할 수 있다는 것은 명백하다. 예를 들어, 인코더(10) 및 디코더(20) 및 대응하는 모듈(44, 58)은 각각 인트라 코딩 모드 및 인터 코딩 모드와 같은 상이한 예측 모드를 지원할 수 있다. 인코더 및 디코더가 이러한 예측 모드 유형들 사이에서 전환하는 입도(granularity)는 각각 픽쳐(12 및 12')를 코딩 세그먼트 또는 코딩 블록으로 세분화하는 것에 대응할 수 있다. 예를 들어, 이러한 코딩 세그먼트의 단위에서, 픽쳐는 인트라 코딩되는 블록과 인터 코딩되는 블록으로 세분화될 수 있다. 인트라 코딩된 블록은 아래에 더 자세히 설명되어 있는 것처럼 각 블록의 공간적, 이미 코딩/디코딩된 이웃을 기반으로 예측된다. 개별적인 인트라 코딩된 세그먼트내로 개별적인 인트라 코딩 모드에 특정한 특정 방향을 따라 이웃의 샘플 값을 외삽하여 각 세그먼트가 채워지는 방향 또는 각도 인트라 코딩 모드를 포함하는 각각의 인트라 코딩된 세그먼트에 대해 여러개의 인트라 코딩 모드가 존재할 수 있으며 선택될 수 있다. 예를 들어, 인트라 코딩 모드는, 개별적인 인트라 코딩된 블록에 대한 예측이 DC 값을 개별적인 인트라 코딩된 세그먼트내의 모든 샘플에 할당하는 DC 코딩 모드 및/또는 개별 블록의 예측은 이웃하는 샘플을 기초로 2차원 선형 함수에 의해 규정되는 평면의 오프셋 및 구동 경사를 갖는 개별적인 인트라 코딩된 블록의 샘플 위치에 걸친 2차원 선형 함수에 의해 기재된 샘플 값의 공간 분포가 되도록 근사되거나 결정되는 평면 인트라 코딩 모드와 같은 하나 이상의 추가 모드를 포함한다. 이에 비해 인터 코딩된 블록은 예를 들어 시간적으로 예측될 수 있다. 인터-코딩된 블록의 경우, 모션 벡터는 데이터 스트림 내에서 시그널링될 수 있으며, 모션 벡터는 픽쳐(12)가 속하는 비디오의 이전에 코딩된 픽쳐의 부분의 공간적 변위를 표시하고, 이전에 코딩된/디코딩된 픽쳐는 개별적인 인터 코딩된 블록에 대한 예측 시그널을 얻도록 샘플링된다.
이는, 양자화된 스펙트럼-도메인 예측 잔여 시그널(24")를 나타내는 엔트로피 코딩된 변환 계수 레벨과 같이 데이터 스트림(14)에 의해 포함된 잔여 시그널 코딩에 더하여, 데이터 스트림(14)은, 다양한 블록에 코딩 모드를 할당하기 위한 코딩 모드 파라미터, 인터 코딩된 세그먼트에 대한 모션 파라미터와 같이 일부 블록에 대한 예측 파라미터, 및 개별적으로 픽쳐(12) 및 픽쳐(12')의 세그먼트로의 세분을 제어하고 시그널링하기 위한 파라미터와 같은 선택적 추가 파라미터로 인코딩될 수 있음을 의미한다. 디코더(20)는 세그먼트에 동일한 예측 모드를 할당하고 동일한 예측 시그널을 생성하도록 동일한 예측을 수행하도록 인코더가 수행한 것과 동일한 방식으로 픽쳐를 세분하도록 이러한 파라미터를 사용한다.
도 3은 한편으로는 재구성된 시그널, 즉 재구성된 픽쳐(12')와 다른 한편으로는 데이터 스트림에서 시그널링된 예측 잔여 시그널(24"")와 예측 시그널(26)의 조합 사이의 관계를 나타낸다. 위에서 이미 언급했듯이 조합은 추가될 수 있다. 예측 시그널(26)는 해칭을 사용하여 예시적으로 표시되는 인트라 코딩된 블록 및 해칭되지 않은 것으로 예시적으로 표시되는 인터 코딩된 블록으로의 픽쳐 영역의 세분으로서도 3에 도시되어 있다. 세분은, 블록의 행과 열로 픽쳐 영역을 규칙적으로 세분하거나, 쿼드 트리 세분 등과 같은 다양한 크기의 리프 블록으로 픽쳐(12)의 다중 트리 세분과 같은, 블록으로의 임의의 세분일 수 있고, 픽쳐 영역이 먼저 트리 루트 블록의 행과 열로 세분된 다음 재귀적 다중 트리 세분화에 따라 추가로 세분화되는 도 3에 이들의 혼합이 예시되어 있다. 다시, 데이터 스트림(14)은 각각의 인트라 코딩된 블록(80)에 여러 지원되는 인트라 코딩 모드 중 하나를 할당하는 인트라 코딩된 블록(80)에 대해 코딩된 인트라 코딩 모드를 가질 수 있다. 더 자세한 사항은 아래에서 설명된다. 인터 코딩된 블록(82)에 대해, 데이터 스트림(14)은 그 안에 코딩된 하나 이상의 모션 파라미터를 가질 수 있다. 일반적으로 말하면, 인터 코딩된 블록(82)은 일시적으로 코딩되는 것으로 제한되지 않는다. 대안적으로, 인터 코딩된 블록(82)은 픽쳐(12)가 속하는 비디오의 먼저 코딩된 픽쳐와 같이 자체가 현재 픽쳐(12)를 넘어 먼저 코딩된 부분으로부터 예측된 임의의 블록 또는 개별적으로 스케일링가능한 인코더 및 디코더가 되는 인코더(10) 및 디코더(20)의 경우의 계층형 하위 층 또는 다른 뷰의 픽쳐일 수 있다. 도 3의 예측 잔여 시그널(24"")는 또한 블록(84)으로의 픽쳐 영역의 세분화로서 예시된다. 이들 블록은 코딩 블록(80 및 82)과 동일한 것을 구별하기 위해 변환 블록이라고 불릴 수 있다. 실제로, 도 3은 인코더(10) 및 디코더(20)가 각각 픽쳐(12) 및 픽쳐(12')의 블록으로의 2개의 상이한 세분화, 즉, 개별적으로, 코딩 블록(80 및 82)의 하나의 세분화 변환 블록(84)으로의 다른 세분화를 사용할 수 있음을 예시한다. 양쪽 세분화는 동일할 수 있고, 즉, 각 코딩 블록(80 및 82)은 동시에 변환 블록(84)을 형성할 수 있지만, 도 3 예를 들어, 변환 블록(84)으로의 세분화가 코딩 블록(80, 82)으로의 세분화를 형성하여, 블록(80 및 82)의 두 블록 사이의 임의의 경계가 두 블록(84) 사이의 경계를 오버레이하거나 대안적으로 각각의 블록(80, 82)은 변환 블록(84) 중 하나와 일치하거나 변형 블록(84)의 클러스터와 일치하는 경우를 도시한다. 그러나, 세분화는 또한 서로 독립적으로 결정되거나 선택될 수 있으므로, 변환 블록(84)이 블록(80, 82) 사이의 블록 경계를 대안적으로 교차할 수 있도록 한다. 변환 블록(84)으로의 세분화에 관한 한, 블록(80, 82)으로의 세분화에 대해 전달된 것과 유사한 설명이 참이고, 즉, 블록(84)은 행과 열로 배열된 블록으로 픽쳐 영역을 규칙적으로 분할한 결과, 픽쳐 영역의 재귀적 다중 트리 세분화의 결과, 또는 이들의 조합 또는 임의의 다른 종류의 블록화일 수 있다. 제쳐두고, 블록(80, 82 및 84)은 이차, 직사각형 또는 다른 모양으로 제한되지 않는다는 점이 주목된다.
도 3은 예측 시그널(26)와 예측 잔여 시그널(24"")의 조합이 직접적으로 재구성된 시그널(12')를 초래함을 나타낸다. 그러나, 하나 이상의 예측 시그널(26)가 대안적인 실시 예에 따라 픽쳐(12')를 생성하기 위해 예측 잔여 시그널(24"")와 결합될 수 있음에 유의해야 한다.
도 3에서, 변환 블록(84)은 다음과 같은 의미를 가져야 한다. 변환기(28) 및 역 변환기(54)는 이러한 변환 블록(84)의 단위로 변환을 수행한다. 예를 들어, 많은 코덱은 모든 변환 블록(84)에 대해 일종의 DST 또는 DCT를 사용한다. 일부 코덱은 변환을 건너 뛸 수 있도록 허용하여 일부 변환 블록(84)에 대해, 예측 잔여 시그널은 공간 도메인에서 직접 코딩된다. 그러나, 후술하는 실시 예에 따르면, 인코더(10) 및 디코더(20)는 그들이 여러 변환을 지원하는 방식으로 구성된다. 예를 들어, 인코더(10) 및 디코더(20)에 의해 지원되는 변환은 다음을 포함할 수 있다:
당연히, 변환기(28)가 이러한 변환의 모든 순방향 변환 버전을 지원하는 반면, 디코더(20) 또는 역 변환기(54)는 그의 대응하는 역방향 또는 역버전을 지원할 것이다:
후속 설명은 인코더(10) 및 디코더(20)에 의해 지원될 수 있는 변환들에 대한 더 많은 세부 사항을 제공한다. 어떤 경우에, 지원되는 변환들의 세트는 하나의 스펙트럼-공간 또는 공간-스팩트럼 변환과 같은 단지 하나의 변환을 포함할 수 있음을 주목해야 한다.
이미 위에서 설명한 바와 같이, 도 1 내지 도 3은 본 출원에 따른 인코더(10) 및 디코더(20)에 대한 특정 예를 형성하기 위해 아래에서 더 설명되는 개념이 구현될 수 있는 예로서 제시되었다. 지금까지, 도 1 및 도 2의 인코더(10) 및 디코더(20)는 각각 아래에서 설명되는 인코더 및 디코더의 가능한 구현을 나타낸다. 그러나 도 1 및 도 2는 단지 예일뿐이다. 그러나, 본 출원의 실시 예들에 따른 인코더는 아래에 더 상세히 설명되고, 비디오 인코더가 아닌 스틸 픽쳐 인코더인 것, 인터 예측을 지원하지 않는 것, 또는 블록(80)으로의 세분화가 도 3에 예시화된 것과 상이한 방식으로 수행되는 것, 또는 이러한 인코더는 예를 들어 대신 직접적으로 공간적 도메인의 예측 잔여를 코딩하는 것에 의한 변환 예측 잔여 코딩을 사용하지 않는 것에 있어서, 도 1의 인코더와 다른 개념을 사용하여 픽쳐(12)의 블록 기반 인코딩을 수행할 수 있다. 마찬가지로, 본 출원의 실시 예에 따른 디코더는, 아래에 추가로 설명된 개념을 사용하여 데이터 스트림(14)으로부터 픽쳐(12')의 블록 기반 디코딩을 수행할 수 있지만, 예를 들어, 비디오 디코더는 아니되, 스틸 픽쳐 디코더인 것, 인트라 예측을 지원하지 않는 것, 또는 도 3과 관련하여 기재된 것과 상이한 방식으로 블록으로의 픽쳐(12')를 세분화하는 것 및/또는 변형 도메인이 아닌, 예를 들어 공간 도메인에서 데이터 스트림(14)으로부터 예측 잔여를 도출하는 것에 있어서 도 2의 디코더(20)와 상이할 수 있다.
도 4a는 픽쳐(12)를 데이터 스트림(14)으로 인코딩하기 위한 장치(10)의 실시 예를 도시한다. 픽쳐(12)는 블록으로 세분될 수 있고 또는 매크로 블록으로 세분된 HEVC 기반 코덱의 경우 CTU로 지칭되는 매크로블록(101a, 101b,…, 101o)으로 세분될 수 있다.
이하에서 인코더(10)라고도 하는 장치(10)는 매크로 블록(101a, 101b,…, 101o)을 더 작은 서브 블록(102a, 102b, 102c, 102d)으로 더 파티셔닝하고 마지막으로 리프 블록으로 분할하도록 구성된(리프 블록은 도 4a에 도시되어 되지 않았으나 도 8a 및 도 8b 이하를 참조하여 설명됨). 인코더(10)는 재귀적 다중 트리 파티셔닝을 사용하여 픽쳐(12)를 리프 블록으로 파티셔닝하도록 구성된다. 상기 리프 블록을 추가로 처리하기 위해, 인코더(10)는, 즉 리프 블록을 인코딩함으로써 픽쳐(12)를 데이터 스트림(14)으로 블록 기반 인코딩하도록 구성된다.
데이터 스트림(14)으로의 픽쳐(12)의 상기 블록 기반 인코딩은 데이터 스트림(14)에서의 각각의 시그널링을 포함할 수 있으며, 이 시그널링은 특히 데이터 스트림(14)으로의 분할에 관한 표시, 예를 들어, 현재 블록의 파티셔닝에 사용되는 분할 모드 및 분할 비율과 같은 하나 이상의 분할 파라미터를 표시하기 위한 표시를 포함할 수 있다.
다중-트리 파티셔닝과 관련하여, 블록은 분할 트리(예를 들어, 도 5a 내지 도 5d)를 따라 파티셔닝될 수 있으며, 분할 트리의 각 노드는 픽쳐의 각 블록에 속할 수 있다. 블록이 분할되면 분할 트리는 파티셔닝 레벨이라고도 하는 후속 분할 레벨에서 후속 트리 노드를 이어갈 수 있다. 데이터 스트림(14)에서 전술한 시그널링은 하나 이상의 파티셔닝 레벨에서 수행될 수 있다. 일부 예들에 따르면, 파티셔닝 파라미터(예를 들어, 분할 모드, 분할 비율 등)는 하나 이상의 파티셔닝 레벨에서 데이터 스트림(14)에서 시그널링될 수 있고, 일부 다른 예시적 파티셔닝 파라미터(예를 들어, 분할 모드, 분할 비율, 등)은 각 파티셔닝 레벨에서 데이터 스트림(14)에서 시그널링될 수 있다. 추가 예에 따르면, 파티셔닝 파라미터는 분할 트리의 파티셔닝 레벨에서 데이터 스트림(14)에서 시그널링될 수 있으며, 여기서 상기 파티셔닝 레벨의 트리 노드는 인코딩될 픽쳐(12)의 픽쳐 경계에 위치하는 하나 이상의 블록에 속할 수 있다. 데이터 스트림(14)에서 전술한 시그널링은 본 명세서에 설명된 본 발명의 개념들 및 대응하는 실시 예들 각각과 관련하여 사용될 수 있다.
도 4a로 돌아가면, 매크로 블록(101a, 101b,…, 101o)이 픽쳐(12) 위에 고정된 그리드에 걸쳐 있는 미리 결정된 크기의 2차 구조임을 알 수 있다. 이 고정 그리드는 픽쳐(12)의 크기를 초과할 수 있으므로, 때때로 상기 그리드의 일부 매크로 블록(101a, 101b,…, 101o)이 픽쳐(12)의 경계를 초과할 수 있는 경우가 발생한다.도 4a에서, 그러한 시나리오는 예시적으로 매크로블록(101e, 101m 및 101o)에 의해 도시된다.
예를 들어, 매크로 블록(101e)과 관련하여, 매크로 블록(101e)의 좌측 상단 부분과 좌측 하단 부분은 픽쳐(12) 내부에 위치할 수 있고, 매크로 블록(101e)의 우측 상단 부분 및 우측 하단 부분은 픽쳐(12) 외부에 위치할 수 있다. 따라서, 매크로 블록(101e)은 픽쳐(12)의 경계를 넘어서 연장되어, 픽쳐(12)의 상기 경계가 특정 위치, 매크로 블록(101e)의 상부 좌측 부분 및 하부 좌측 부분이 픽쳐(12) 내부에 위치되되, 매크로 블록(101e)의 상부 우측 부분과 하부우측 부분이 픽쳐(12) 외부에 위치되는, 그러한 위치에서 매크로 블록(101e)을 가로지른다.
예를 들어, 매크로 블록(101o)과 관련하여, 매크로 블록(101o)의 좌측 상단 부분 만이 픽쳐(12) 내부에 위치하는 반면, 매크로 블록(101o)의 우측 상단, 우측 하단 및 좌측 하단 부분은 픽쳐(12) 외부에 위치한다. 또한, 매크로블록(101m)에 관하여, 매크로블록(101m)의 좌측 상단 부분과 우측 상단 부분은 픽쳐(12) 내부에 위치하며, 매크로 블록(101m)의 좌측 하단 및 우측 하단 부분은 픽쳐(12) 외부에 위치한다. 따라서, 픽쳐(12)의 각각의 경계는 상이한 위치에서 각각의 매크로 블록(101e, 101m, 101o)을 교차한다. 매크로 블록의 위치, 특히 픽쳐(12)의 경계에 대한 매크로 블록(101e, 101m, 101o)의 위치에 관한 더 자세한 사항은 도 6을 참조하여 본문에서 다소 나중에 설명될 것이다.
전술한 바와 같이, 매크로 블록(101a, 101b,…, 101o)은 더 작은 서브 블록으로 분할되고 마지막으로 리프 블록으로 분할될 수 있다. 비제한적인 예가 서브 블록(102a, 102b, 102c, 102d)에 대해 도시된다. 서브블록은 리프 블록에 도달할 때까지 분할될 수 있다. 파티셔닝은 분할이라고도 할 수 있으며, 매크로 블록과 서브 블록의 이러한 분할은 서로 다른 분할 모드를 사용하여 실행될 수 있다. 예는 쿼드 분할, 수평 2진 분할(이중 분할이라고도 함), 수직 이중 분할, 수평 3진 분할(삼중 분할이라고도 함) 및 수직 3진 분할일 수 있다. 분할 시그널링은 2진 결정 트리를 사용하여 수행될 수 있으며, 여기서 상기 분할 시그널링은 앞서 설명한 방식으로 데이터 스트림(14)에 표시될 수 있다.
이러한 결정 트리에 대한 간략한 설명을 위해, 도 5a 내지 도 5d를 참조해야하며, 도면은 픽쳐의 경계에서 분할 시그널링을 픽쳐 내부의 분할 시그널링과 비교한다. 도 5a 및 도 5c는 픽쳐 내에서 분할 시그널링에 사용될 수 있는 완전히 제한되지 않은 결정 트리를 묘사하는 반면, 도 5b 및 도 5d는 픽쳐 경계에서 분할 시그널링에 사용될 수 있는 본 개념에 따른 예시적인 제한된 결정 트리를 묘사한다.
도 5a의 완전히 제한되지 않은 결정 트리는 예를 들어 [2]에 설명된 대로 QTBT(Quad Tree Plus Binary Tree) 구조를 기반으로 할 수 있는 분할 모드의 사용가능한 세트로 현재 개념에서 사용될 수 있다. QTBT 방식은 블록을 더 작은 블록으로 분할하기 위한 분할 모드의 사용 가능한 세트를 포함하고, 사용 가능한 세트에는 4개의 도시된 분할 모드, 즉 쿼드 분할, 분할 없음, 수직 분할 또는 수평 분할이 포함된다. 따라서, 블록을 더 작은 블록으로 파티셔닝할 때 마다, 종래 기술 인코더는 항상 완전히 제한되지 않은 결정 트리, 즉 사용 가능한 분할 모드의 전체 세트를 통과해야 할 수 있다. 도시된 바와 같이, 결정 트리에서 수평 또는 수직 분할(즉, 리프 블록)에 도달하려면 3개의 빈을 사용해야 한다. 인코더는 또한 데이터 스트림에서 각각 선택된 분할 모드를 시그널링해야한다. 그러나, 픽쳐 경계에서, 종래 기술은 암시적 쿼드 분할을 수행하고 데이터 스트림에서 임의의 관련 표시를 시그널링하는 것을 억제할 수 있다. 이로 인해 픽쳐 경계에서 블록을 매우 유연하지 않은 처리를 초래한다.
도 5c의 완전히 제한되지 않은 결정 트리는 예를 들어 [2]와 [3]에 설명된 바와 같이 쿼드 트리 + 2진 트리(QTBT) + 다중 유형 트리(MTT) 구조를 기반으로 할 수 있는 분할 모드들의 사용가능한 세트로서 현재 개념에서 사용될 수 있다. QTBT + MTT 방식은 블록을 더 작은 블록으로 분할하기 위한 분할 모드들의 사용가능한 세트로 구성되며, 이러한 사용가능한 세트는 6개의 분할 모드, 즉 쿼드 분할, 분할 없음, 수직 2진 분할, 수직 3진 분할, 수평 2진 분할 및 수평 3진 분할을 포함한다. 따라서, 블록을 더 작은 블록으로 파티셔닝할 때마다, 종래 기술 인코더는 항상 완전히 제한되지 않은 결정 트리, 즉 사용 가능한 분할 모드의 전체 세트를 통과해야할 수 있다. 이 예에서 결정 트리의 수평 또는 수직 분할(즉, 리프 블록)에 도달하려면 4개의 빈을 사용해야 한다. 인코더는 또한 데이터 스트림에서 각각 선택된 분할 모드를 시그널링해야한다. 그러나, 픽쳐 경계에서, 종래 기술은 암시적 쿼드 분할을 수행하고 데이터 스트림에서 임의의 관련 표시를 시그널링하는 것을 억제할 수 있다. 이로 인해 도 5a에 비해 픽쳐 경계에서 블록이 훨씬 유연하지 않게 처리된다.
따라서, 본 발명에 따르면, 인코더(10)는 도 4a에 도시된 미리 결정된 블록(101e, 101m 및 101o)에 관하여 먼저 예시적으로 기재된 바와 같이, 픽쳐 경계에서, 픽쳐(12)내에서 즉 적어도 부분적으로, 위치된 적어도 이러한 미리 결정된 블록(매크로블록 또는 서브블록)에 대하여, 분할 모드의 감소된 세트를 제공하도록 분할 모드의 사용가능한 세트를 감소시키도록 구성된다.
도 5b 및 도 5d에 예시적으로 도시된 바와 같이, 전술한 분할 모드의 감소된 세트는 예를 들어 정확히 2개의 분할 모드를 포함할 수 있다. 대안적으로, 분할 모드의 감소된 세트는 2개 이상의 분할 모드 또는 정확히 하나의 분할 모드를 포함할 수 있다.
예를 들어, 분할 모드의 감소된 세트는 쿼드 분할(도 7a)과 수직 분할을 포함할 수 있다. 수직 분할은 예를 들어 수직 2진 분할(도 7b) 또는 수직 3진 분할(도 7d)일 수 있다.
추가적으로 또는 대안적으로, 분할 모드의 감소된 세트는 예를 들어 쿼드 분할(quad split) 및 수평 분할을 포함할 수 있다. 수평 분할은 예를 들어 수평 2진 분할(도 7c) 또는 수평 3진 분할(도 7e)일 수 있다.
추가적으로 또는 대안적으로, 분할 모드의 감소된 세트는 예를 들어 수직 분할 및 수평 분할을 포함할 수 있다. 수평 분할은 예를 들어 수평 2진 분할 또는 수평 3진 분할일 수 있고, 수직 분할은 예를 들어 수직 2진 분할 또는 수직 3진 분할 일 수 있다.
추가적으로 또는 대안적으로, 분할 모드의 감소된 세트는 예를 들어 쿼드 분할만을 포함할 수 있다.
추가적으로 또는 대안적으로, 분할 모드의 감소된 세트는 예를 들어 수평(2진 또는 3진) 분할 또는 수직(2진 또는 3진) 분할을 포함할 수 있으며, 예를 들어 쿼드 분할이 사용 가능하지 않을 수 있다.
추가적으로 또는 대안적으로, 감소된 분할 모드는 예를 들어 수평 또는 수직 분할일 수 있는 정확히 하나의 미리 결정된 분할 모드를 포함할 수 있다. 어느 분할을 선택할지는 예를 들어 각각의 픽쳐 경계에 대한 미리 결정된 블록의 위치에 의존할 수 있고, 하단 픽쳐 경계의 경우 수평 분할이 선택되고, 우측 픽쳐 경계의 경우 수직 분할이 선택될 수 있다. 수평 분할은 수평 이중 분할 또는 수평 3진 분할일 수 있다. 수직 분할은 수직 이중 분할 또는 수평 3진 분할일 수 있다. 결정 트리에서 볼 수 있듯이, 예컨대, 도 5d에서, 수평 또는 수직 분할 중 하나만 감소된 세트에서 사용할 수 있다.
위의 경우 각각에서, 하나 이상의 2진 분할은 예를 들어 ½의 분할 비율을 포함할 수 있다.
보다 일반적인 용어로 요약하면, 여기에 설명된 혁신적인 원리에 따른 감소된 분할 세트는 다음 분할을 포함할 수 있다:
(a) 그러한 분할이 존재하는 경우, 적용될 때 주어진 블록의 추가 하위 파티셔닝을 방해하지 않는 무제한 분할.
(b) 그러한 분할이 존재하는 경우, 픽쳐 경계에 평행한 에지를 생성하는 분할 및
i. 그러한 분할이 존재하고 주어진 블록에 대해 허용되는 경우 분할 블록의 중간에 배치된 분할, 또는
ii. 그러한 분할이 존재하고 주어진 블록에 대해 허용되는 경우, 픽쳐 경계에 나란히 놓인 파티셔닝 에지를 생성하는 분할.
QTBT를 기반으로 하는 본 발명의 특정 비 제한적 실시 예에서, [3] 및 [4]뿐만 아니라 위에서 언급한 다른 분할 가능성을 제공하는 다른 파티셔닝 방식에도 유효하다: 쿼드 분할, 수직 3진 분할, (예를 들어, ½의 분할 비율을 갖는) 수직 2진 분할, 수평 3진 분할 및 (예를 들어, ½의 분할 비율을 갖는) 수평 2진 분할(도 7a 내지 도 7e 참조); 여기에 설명된 혁신적인 원리에 따른 감소된 분할 세트는 다음과 같다:
따라서, 혁신적인 원리에 따라 분할 모드의 감소된 세트는 화면 경계에서 블록을 분할하기 위해 미리 선택된 분할 모드를 보완할 수 있다. 인코더(10)는 픽쳐 경계에서 블록을 분할하기 위해 분할 모드의 감소된 세트에 포함된 분할 모드 중 하나를 선택할 수 있고, 인코더(10)는 데이터 스트림(14)에서 선택된 분할 모드를 시그널링할 수 있다. 따라서, 본 개념은 종래 기술의 암시적 쿼드 분할과 비교할 때 픽쳐 경계에서 블록에 대한 시그널링을 연장할 수 있다. 그러나, 인코더(10)는 상당한 레벨에서 시그널링 노력을 유지하는 데이터 스트림(14)의 불확실성을 시그널링하기만 하면 된다. 그러나, 본 개념은 종래 기술에 비해 픽쳐 경계에서 블록을 분할하는 데 훨씬 더 높은 유연성을 제공한다. 이러한 유연성의 이득은 약간 더 높은 시그널 전달 노력을 보상 그리고/또는 능가할 수 있다.
비록, 도 5b가 2개의 상이한 분할 모드, 즉 쿼드 분할 및 수직 이중 분할을 포함하는 분할 모드의 감소된 세트를 예시적으로 묘사할 수 있지만, 감소된 세트는 또한 쿼드 분할 및 수평 이중 분할 또는 수직 이중 분할 및 수평 이중 분할 또는 위에서 설명한 다른 조합을 포함할 수 있다. 일 예에 따르면, 분할 모드의 감소된 세트는 적어도 하나의 분할 모드를 포함할 수 있다. 추가 예에 따르면, 분할 모드의 감소된 세트는 적어도 2개의 상이한 분할 모드를 포함할 수 있다. 또 다른 예에 따르면, 분할 모드들의 사용가능한 세트가 이들 2개의 상이한 분할 모드보다 더 많이 포함할 수 있더라도, 분할 모드의 감소된 세트는 정확히 2개의 상이한 분할 모드만을 포함할 수 있다.
분할 모드의 감소된 세트에 포함되어야 하는 분할 모드의 선택은 픽쳐(12)의 경계에 상대적인 각각의 미리 결정된 블록(101e, 101m, 101o)의 위치에, 즉, 픽쳐(12)의 경계가 미리 결정된 블록(101e, 101m, 101o)을 가로 지르는 위치에 따를 수 있다.
즉, 인코더(10)는, 픽쳐(12)를 리프 블록으로 파티셔닝하는 것에 있어서, 멀티 트리 파티셔닝의 미리 결정된 트리 레벨에 대응하고 픽쳐(12)의 경계를 넘어 연장하는 미리 결정된 블록(101e, 101m, 101o)에 대하여, 픽쳐(12)의 경계가 미리 결정된 블록(101e, 101m, 101o)를 가로 지르는 위치에 따라 미리 결정된 블록(101e, 101m, 101o)을 분할하기 위해 분할 모드들의 사용가능한 세트를 감소시켜서 하나 이상의 분할 모드의 감소된 세트를 얻도록 구성된다.
본 발명에 따르면, 감소된 세트의 카디널리티가 1인 경우, 즉 분할 모드의 감소된 세트가 단 하나의 분할 모드를 포함할 수 있는 경우, 인코더(10)는 미리 결정된 블록(101e, 101m, 101o)을 분할하기 위해 감소된 세트의 이러한 분할 모드를 적용하도록 구성된다.
그러나, 감소된 세트의 카디널리티가 1보다 큰 경우, 즉 분할 모드의 감소된 세트가 둘 이상의 분할 모드를 포함하는 경우, 인코더(10)는 감소된 세트의 이러한 분할 모드 중 하나를 선택하고 미리 결정된 블록(101e, 101m, 101o)을 분할하기 위한 분할 모드 중 선택된 하나의 분할 모드를 적용하도록 구성된다. 또한, 인코더(10)는 전술한 방식으로 데이터 스트림(14)에서 각각의 선택, 즉 선택된 분할 모드를 시그널링하도록 구성된다. 예를 들어, 인코더(10)는 1 비트 플래그를 설정하여 선택을 시그널링할 수 있다. 그러나, 전술한 바와 같이, 이미 분할 모드의 감소된 세트에 포함된 분할 모드 사이의 불확실성만이 데이터 스트림(14)에서 시그널링되어야 할 수 있다.
위에서 언급했듯이, 감소된 세트의 카디널리티는 예를 들어 정확히 1개 또는 정확히 2개일 수 있다.
도 4b는 데이터 스트림(14)에서 픽쳐(12)를 디코딩하기 위한 대응하는 장치(20)를 도시하고, 상기 장치는 또한 이후에서 디코더(20)로 지칭된다.
디코더(20)는 픽쳐(12)를 재귀적 멀티 트리 파티셔닝을 사용하여 리프 블록으로 파티셔닝하고, 픽쳐(12)를 리프 블록으로 파티셔닝하여 데이터 스트림(14)으로부터 픽쳐(12)를 블록 기반 디코딩하도록 구성된다.
디코더(20)는, 픽쳐(12)를 리프 블록으로 파티셔닝하는 것에 있어서, 멀티 트리 파티셔닝의 미리 결정된 트리 레벨에 대응하고 픽쳐(12)의 경계를 넘어 연장하는 미리 결정된 블록에 대해, 픽쳐(12)의 경계가 미리 결정된 블록을 가로지르는 위치에 따라 미리 결정된 블록을 분할하기 위하여 분할 모드들의 사용가능한 세트를 감소시켜서 하나 이상의 분리 모드들의 감소된 세트를 얻도록 더 구성된다.
다시 말해서, 감소된 세트의 카디널리티가 1이면, 즉 분할 모드의 감소된 세트가 단 하나의 분할 모드를 포함할 수 있다면, 디코더(20)는 미리 결정된 블록을 분할하기 위해 감소된 세트의 분할 모드를 적용하도록 구성된다.
감소된 세트의 카디널리티가 1보다 큰 경우, 즉 분할 모드의 감소된 세트가 둘 이상의 분할 모드를 포함하는 경우, 디코더(20)는 분할 모드의 감소된 세트 중 하나를 선택하고 데이터 스트림(14)의 시그널화에 따라 미리 결정된 블록을 분할하기 위해 분할 모드들의 선택된 분할 모드를 적용하도록 구성된다. 즉, 디코더(20)는 분할 모드를 파티셔닝에 사용할 분할 모드를 디코더(20)로 향하는 것을 나타내는 데이터 스트림(14)으로부터 시그널을 유도할 수 있다. 이 시그널은 인코더(10)에 의해 데이터 스트림으로 이전에 패킹되었을 수 있는 위에서 언급한 1 비트 플래그일 수 있다.
따라서, 여기에 설명된 개념은 경계 처리의 새로운 메커니즘을 제공한다. 일반적으로 특정 레벨에서 하나 이상의 분할을 허용하는 모든 재귀적 파티셔닝 방법에 적용할 수 있다. 다시, 본 개념은 종래 기술의 암시적 분할과 비교할 때 픽쳐 경계에서 블록에 대한 시그널링을 연장할 수 있다. 그러나, 본 개념은 종래 기술에 비해 픽쳐 경계에서 블록을 파티셔닝하는 데 훨씬 더 높은 유연성을 제공한다. 이러한 유연성의 이득은 본 개념에 따라 분할 모드의 감소된 세트의 약간 더 높은 시그널링 노력을 보상 그리고/또는 초과할 수 있다.
본 개념의 비 제한적인 예는 도 4a와 유사한 분할된 픽쳐(12)를 도시하는 도 6에 도시되어 있다. 그러나, 도 6은 더 많은 세부 사항, 즉 wf x hf(너비 x 높이) 크기를 갖는 픽쳐(12)를 도시하고, 픽쳐(12)는 블록, 예를 들어 매크로 블록(101a, 101b,…, 101o)을, 더 작은 서브 블록, 그리고 마지막으로 리프 블록으로 세분한다. 3개의 특정 매크로 블록이 강조 표시되고 원으로 둘러싸인 1, 2 및 3으로 번호가 매겨진다. 이러한 예시적인 강조 표시된 매크로 블록은 도 4에 도시된 바와 같이 이전에 설명된 매크로 블록(101e, 101m, 101o)에 대응할 수 있다. 또한, 리프 블록은 도 8a 및 도 8b를 참조하여 본문의 이후에서 더욱 상세히 논의될 것이다.
도 6은 픽쳐(12)를 고정된 크기의 견고한 매크로 블록 구조로 파티셔닝하는 것을 도시한다(예를 들어, H.265/HEVC [1]의 CTU 파티셔닝 또는 H.265/HEVC [2] 이상의 기능을 가진 향후 비디오 표준). 이 예에서, 비디오 시그널 해상도는 단일 매크로 블록(101a, 101b,…, 101o) 크기의 배수로 공간적으로 제한되지 않을 수 있다고 가정할 수 있다. 이러한 전제 조건이 주어지면, 매크로 블록 라인의 마지막 매크로 블록 및/또는 마지막 매크로 블록 라인의 모든 매크로 블록이 픽쳐(12)의 적어도 하나의 경계를 초과할 수 있다고 추론될 수 있다. 이러한 경우, 이러한 매크로 블록의 코딩 단위(CU), 예측 단위(PU), 변환 단위(TU) 또는 다른 유형의 하위 CTU 레벨 파티션으로의 저레벨 파티셔닝은 코딩된 파티션이 픽쳐(12)의 경계 내에 위치하도록해야 한다. 여기에 설명된 개념은 블록을 파티셔닝하는 것에 대한 감소된 분할 세트의 정의를 허용할 수 있고, 예를 들어, 매크로 블록(101m)은 너비 wb및 높이 hb를 갖는 위치 x b , y b 에 의해 규정되고, 상기 블록은 이하이 6개의 경우 중 적어도 하나의 경우에서, 크기 wf x hf의 픽쳐(12)의 경계를 초과할 수 있다:
C1 : 블록(101e)에 있어서, 즉, 블록(101e)의 우측 상단 코너가 픽쳐(12)에 포함되지 않고, 좌측 하단 코너가 픽쳐(12)에 포함됨(좌측 상단 코너가 픽쳐(12) 안에 있음):
C2 : 블록(101m)에 있어서, 즉, 블록(101m)의 우측 상단 코너가 픽쳐(12)에 포함되고, 좌측 하단 코너가 픽쳐(12)에 포함되지 않음(좌측 상단 코너가 픽쳐(12) 안에 있음):
C3 : 블록(101o)에 있어서, 즉, 우측 상단과 좌측 하단 코너가 픽쳐(12)에 포함되지 않음(좌측 상단 코너가 픽쳐(12) 안에 있음):
C4 : 블록의 좌측 상단 코너는 픽쳐에 포함되지 않고, 좌측 하단 코너는 픽쳐(12)에 포함되지 않고, 우측 상단 코너는 픽쳐(12)에 포함됨:
(이 경우는 C1과 동일하게 처리될 수 있고 별도로 지정되지 않음)
C5 : 블록의 좌측 상단 코너는 픽쳐(12)에 포함되지 않고, 우측 상단 코너는 픽쳐(12)에 포함되어 있지 않으며, 좌측 하단 코너는 픽쳐(12)에 포함된다:
C6 : 픽쳐(12)에는 다음 블록 코너 중 하나만 포함되어 있다. 우측 하단, 우측 상단 또는 좌측 하단(이 경우는 C3과 동일하게 처리되며 별도로 지정되지 않음).
특정 미리 결정된 블록 및 픽쳐(12)에 대해 C1 내지 C6의 경우 중 어느 것도 참이 아닌 경우, 미리 결정된 블록은 픽쳐(12)의 경계 밖에 있을 수 있고 여기에 설명된 개념에 더 이상 관련이 없을 수 있다. 한 번에 둘 이상의 케이스가 참일 수 있다. 특히 케이스 쌍 C1 및 C4, C2 및 C5 또는 C3 및 C6이 동시에 참일 수 있다. 이러한 케이스 쌍은 모두 동등하게 처리되므로 특정 별자리를 별도로 처리할 필요가 없다.
이러한 경우 C1 내지 C6 중 적어도 하나를 처리하기 위해, 본 개념은 실제로 분할 모드들의 사용가능한 세트 중에서 선택된 하나 이상의 분할 모드를 포함할 수 있는 분할 모드의 감소된 세트를 제공한다.
실제로 분할 모드들의 사용가능한 세트는 사용된 블록 기반 코딩 방식에 따라 인코더(10)에 의해 선택될 수 있다. 일 예에 따르면, 인코더(10)는
미리 결정된 블록에 대해 분할 모드들의 사용가능한 세트를 결정하도록 구성될 수 있다.
디코더(20)에 대해서도 동일하게 적용된다. 일 예에 따르면, 디코더(20)는
미리 결정된 블록에 대해 분할 모드들의 사용가능한 세트를 결정하도록 구성될 수 있다.
다시, 상기 언급된 경우 C1 내지 C6 중 적어도 하나를 처리하기 위해, 본 개념은 실제로 분할 모드들의 사용가능한 세트 중에서 선택된 하나 이상의 분할 모드를 포함할 수 있는 분할 모드의 감소된 세트를 제공한다.
예를 들어, 감소된 분할 세트는 다음 분할로 구성될 수 있다:
(a) 그러한 분할이 존재하는 경우: 적용시 주어진 블록의 추가 분할에 제한을 부과하지 않는 무제한 분할.
(b) 경우 C1 및 C2의 경우, 그러한 분할이 존재하는 경우: 픽쳐(12)의 경계에 평행한 에지를 생성하는 분할.
i. 그러한 분할이 존재하고 주어진 블록에 대해 허용되는 경우: 분할 블록의 중간에 배치된 분할.
ii. 그러한 분할이 존재하고 주어진 블록에 대해 허용되는 경우: 분할은 픽쳐(12)의 경계에 나란히 놓이는 파티셔닝 에지를 생성함.
다시 말하면, 인코더(10)는 분할 모드들의 사용가능한 세트를 하나 이상의 분할 모드의 감소된 세트로 감소시키기 위해, 분할 모드들의 사용가능한 세트로부터, 분할 모드들의 사용가능한 세트로부터,
미리 결정된 블록의 경계 위치와 평행하는 적어도 하나의 분할선을 따라 미리 결정된 블록을 2개 또는 3개의 서브블록으로 분할하고, 상기 분할선은 미리 결정된 블록 내에서 중심에 있고(예를 들어, 상기 분할(b)-i 참조) 또는 픽쳐(12)의 경계에 나란히 놓이는(예를 들어, 상기 분할(b)-ii 참조) 것 중 적어도 하나인, 분할을 포함하는 제 2 분할 모드 중 적어도 하나를 선택하도록 구성될 수 있다.
디코더(20)에 대해서도 개별적으로 동일하게 적용된다. 즉, 디코더(20)는, 분할 모드들의 사용가능한 세트를 하나 이상의 분할 모드의 감소된 세트로 감소시키기 위하여, 분할 모드들 중 사용가능한 세트로부터,
미리 결정된 블록의 경계 위치와 평행하는 적어도 하나의 분할선을 따라 미리 결정된 블록을 2개 또는 3개의 서브블록으로 분할하고, 상기 분할선은 미리 결정된 블록 내에서 중심에 있고(예를 들어, 상기 분할(b)-i 참조) 또는 픽쳐(12)의 경계에 나란히 놓이는(예를 들어, 상기 분할(b)-ii 참조) 것 중 적어도 하나인, 분할을 포함하는 제 2 분할 모드 중 적어도 하나를 선택하도록 구성될 수 있다.
지정된 블록에 대해 사용된 파티셔닝 방법에서 분할(b)-ii를 사용할 수 없는 경우, 분할(b)-i가 감소된 분할 집합에 포함될 수 있다. 분할(b)-i는 일반적으로 분할(b)-ii보다 선호될 수 있다. 전술한 바와 같이, 감소된 분할 세트에는 적어도 하나의 분할이 포함될 수 있다.
일 예에 따르면, 분할(a)은 쿼드 분할이고, 분할(b)-i은 수평 이중 분할 또는 수직 이중 분할 중 적어도 하나일 수 있다. 추가 예에 따르면, 픽쳐(12)의 경계가 파티셔닝된 블록의 ¼ 또는 ¾에 있는 경우 [3] 및 [4]에 설명된 추가로 도입된 분할 중 하나를 (b)-ii에 사용할 수 있다. 특정 구현에서, ½의 분할 비율을 갖는 수직 또는 수평 분할이 [3] 및/또는 [4]에 소개된 추가 분할보다 선호될 수 있다.
상기 언급된 분할은 도 7a 내지 도 7e에 개략적으로 도시되어 있다. 도 7a는 미리 결정된 블록(701)(매크로 블록 또는 서브 블록)이 4개의 동일한 파티션(71a, 71b, 71c, 71d)으로 분할되는 쿼드 분할을 도시한다. 도 7b는 분할 비율이 ½ 인 수직 이중 분할을 도시하며, 여기서 미리 결정된 블록(702)(매크로 블록 또는 서브 블록)은 2개의 동일한 수직 파티션(72a, 72b)로 분할된다. 도 7c는 분할 비율이 ½ 인 수평 이중 분할을 도시하며, 여기서 미리 결정된 블록(703)(매크로 블록 또는 서브 블록)은 2개의 동일한 수평 분할(73a, 73b)로 분할된다. 도 7d는 [3]에 설명된 수직 3진 분할을 도시하며, 여기서 미리 결정된 블록(704)(매크로 블록 또는 서브 블록)은 3개의 수직 파티션(74a, 74b, 74c)으로 분할된다. 도 7e는 [3]에 설명된 수평 3진 분할을 도시되며, 여기서 미리 결정된 블록(705)(매크로 블록 또는 서브 블록)은 3개의 수평 파티션(75a, 75b, 75c)으로 분할된다.
일 예에 따르면, 픽쳐(12)의 각각의 경계가 각각의 미리 결정된 블록(702)을 가로 지르면, 도 7b에 도시된 수직 이중 분할이 적용될 수 있어서, 각각의 블록(702) 내부에 위치하는 픽쳐(12)의 경계가 또한 수직, 즉 수직 분할선에 평행하다. 예를 들어, 그러한 경우는 도 6에 도시된 바와 같이 블록(101e)에 대해 참일 수 있다.
도 7c에 도시된 수평 이중 분할은 픽쳐(12)의 각각의 경계가 각각의 미리 결정된 블록(703)을 가로지르는 경우에 적용될 수 있어서, 각각의 블록(703) 내부에 위치하는 픽쳐(12)의 경계가 또한 수평인, 즉 수평 분할선에 평행한다. 예를 들어, 이러한 경우는 도 6에 도시된 대로 블록(101m)에 대해 참일 수 있다.
일반화된 2진 분할(GBS)을 사용할 수 있는 또 다른 예에 따르면, 분할(a)은 분할 비율이 ½인 수직 분할(분할 트리가 지금까지 제한되지 않을 경우 GBS에서 디폴트 분할일 수 있음) 또는 일반화된 GBS 트리가 쿼드 트리 구조의 하위 트리로 사용된 경우 쿼드 분할일 수 있다. 수직/평행 시맨틱스(semantics)로 변환될 수 있는 수직 및 수평 영역 분할은 (아마도 그에 따라 조정된 분할 수정자를 사용하여) 분할(b)-i 또는 (b)-ii로 사용될 수 있다. 다시 말하지만, 다른 분할이 픽쳐(12)의 경계와 나란히 놓인 분할을 제공하더라도 수정자 ½를 갖는 분할이 선호될 수 있다.
QTBT에 기반할 수 있는 또 다른 예에서, [3] 및 [4]에 설명된 방식뿐만 아니라 다음의 3개의 분할 가능성을 제공하는 다른 파티셔닝 방식에 대해서도 유효할 수 있다: 쿼드 분할, 분할 비율이 ½인 수직 분할 및 분할 비율이 ½인 3개의 예시적인 감소 분할 세트(RSS)의 수평 분할은:
RSS1: 분할 비율 ½(b)-i의 쿼드 분할(a) 및 수직 분할
RSS2: 분할 비율 ½(b)-i의 쿼드 분할(a) 및 수평 분할
RSS3: 분할 비율 ½(b)-i의 쿼드 분할(a) 또는 수직 또는 수평 분할.
이러한 예시적인 분할 모드의 감소된 세트, 즉 RSS1, RSS2 및 RSS3는 분할 모드들의 사용가능한 세트의 서브 세트에 대한 하나의 비제한적인 예일 수 있다. 즉, 분할 모드의 감소된 세트는 분할 모드들의 사용가능한 세트에서 (미리 결정된 트리 레벨에서 미리 결정된 블록에 대해) 사용 가능한 하나 이상의 사용 가능한 분할을 포함할 수 있다. 분할 모드들의 사용가능한 세트에 포함된 분할 수는 코딩 방식에 따라 달라질 수 있으며, 분할 모드의 감소된 세트에 포함된 분할 수는 픽쳐(12)의 경계에 대하여 (현재 트리 레벨에서 파티셔닝될) 개별적인 미리 결정된 블록의 위치에 따라 다를 수 있다.
전술한 바와 같이, 인코더(10)는 분할 모드들의 사용가능한 세트를 결정할 수 있다. 즉, 인코더(10)는 분할 모드들의 사용가능한 세트에 포함될 분할 모드(예를 들어, 쿼드 분할, 수직 이중 분할, 수평 이중 분할 등)를 선택적으로 선택할 수 있다.
예를 들어, 위에서 언급한 블록 기반 코딩 방식은 쿼드 분할, 적어도 하나의 수평 이중 분할(상이한 수정자를 가질 수 있음) 및 적어도 하나의 수직 이중 분할(상이한 수정자를 가질 수 있음)을 포함하는 초기 분할 모드 세트를 포함할 수 있다.
그러나 일부 분할, 특히 일부 이중 분할은 제한적일 수 있다. 예를 들어, 미리 결정된 블록에 이중 분할이 적용된 경우 다음 분할로 쿼드 분할이 허용되지 않을 수 있다. 즉, 이전 트리 레벨의 이전 분할에 제한적 분할 중 하나, 특히 제한적 이중 분할 중 하나가 포함되지 않은 경우, 쿼드 분할은 특정 트리 레벨에서만 허용될 수 있다.
따라서, 제한적 분할 중 하나, 특히 제한적 이중 분할 중 하나가 미리 결정된 트리 레벨에서 미리 결정된 블록에 적용 되었다면, 후속 분할은 위에서 언급 한 초기 세트만 포함할 수 있지만 쿼드 분할은 포함하지 않을 수 있다.
따라서, 일 실시 예에 따르면, 인코더(10)는,
미리 결정된 블록이 나타나는 이전 트리 레벨의 모든 분할 모드가 이중 분할들의 제한적인 세트 외부에 있는 경우, 쿼드 분할, 적어도 하나의 수평 이중 분할 및 적어도 하나의 수직 이중 분할을 포함하는 분할 모드들의 초기(primitive) 세트와 동일하게 되도록, 그리고
분할 모드들의 사용가능한 세트를 결정하도록 구성될 수 있다.
디코더(20)에 대해서도 동일하게 적용된다. 따라서, 디코더(20)는
미리 결정된 블록이 나타나는 이전 트리 레벨의 모든 분할 모드가 이중 분할들의 제한적인 세트 외부에 있는 경우, 쿼드 분할, 적어도 하나의 수평 이중 분할 및 적어도 하나의 수직 이중 분할을 포함하는 분할 모드들의 초기 세트와 동일하게 되도록, 그리고
분할 모드들의 사용가능한 세트를 결정하도록 구성될 수 있다.
추가적으로 또는 대안적으로, 상기 언급된 분할 모드의 초기 세트는 적어도 하나의 수평 3진 분할(상이한 수정자를 가질 수 있음) 및 적어도 하나의 수직 3진 분할(상이한 수정자를 가질 수 있음)을 포함할 수 있다.
전술한 바와 같이, 인코더(10)는 분할 모드의 감소된 세트를 제공하기 위해 분할 모드들의 사용가능한 세트를 감소시킬 수 있다. 따라서, 인코더(10)는 각각의 미리 결정된 블록에 대해, 위에서 언급된 분할 모드들의 사용가능한 세트 중에서 감소된 분할 모드 서브 세트(즉, 하나 이상의 분할 모드)를 선택적으로 선택할 수 있다. 이렇게 선택적으로 선택된 분할 모드만 분할 모드의 감소된 세트에 포함될 수 있다. 따라서, 분할 모드의 감소된 세트는 분할(a)에 따른 전술한 쿼드 분할 중 적어도 하나와 분할(b)-i 또는 분할(b)-ii에 따른 분할 중 하나를 포함할 수 있다.
따라서, 일 실시 예에 따르면, 인코더(10)는 분할 모드들의 사용가능한 세트를 하나 이상의 분할 모드의 감소된 세트로 감소시키기 위해, 분할 모드들의 사용가능한 세트로부터:
미리 결정된 블록에서 픽쳐 경계의 위치에 평행한 분할선을 따라 미리 결정된 블록을 2개의 서브블록으로 분할하고 그리고 상기 분할선은 분할(b)-ii에 따른 경계에 나란히 놓이고 분할(b)-i에 따른 미리 결정된 블록 내부의 중앙에 있는 것 중 적어도 하나인 이중 분할 중 적어도 하나를 선택하도록 구성될 수 있다.
다시, 디코더(20)에 대해서도 동일하게 적용된다. 따라서, 인코더(20)는 분할 모드들의 사용가능한 세트를 하나 이상의 분할 모드의 감소된 세트로 감소시키기 위해, 분할 모드들의 사용가능한 세트로부터:
미리 결정된 블록(702, 703)에서 픽쳐 경계의 위치에 평행한 분할선을 따라 미리 결정된 블록(702, 703)을 2개의 서브블록(72a, 72b, 73a, 73b)으로 분할하고 그리고 상기 분할선은 분할(b)-ii에 따른 경계에 나란히 놓이고 분할(b)-i에 따른 미리 결정된 블록 내부의 중앙에 있는 것 중 적어도 하나인 이중 분할 중 적어도 하나를 선택하도록 구성될 수 있다.
다시, 분할(b)-i는 (상이한 수정자를 사용하지만 바람직하게는 분할 비율½을 갖는) 이중 분할을 포함할 수 있는 반면, 분할(b)-ii는 이중 분할 및/또는 (상이한 수정자를 갖는) 3진 분할을 포함할 수 있다.
따라서, 일 실시 예에 따르면, 인코더(10)는, 분할 모드들의 사용가능한 세트를 하나 이상의 분할 모드의 감소된 세트로 감소시키기 위해, 분할 모드들의 사용가능한 세트로부터,
미리 결정된 블록(704, 705)을 미리 결정된 블록(704, 705)에서 픽쳐 경계의 위치에 평행한 분할선을 따라 3개의 서브 블록(74a, 74b, 74c, 75a, 75b, 75c)으로 분할하며, 상기 분할선이 분할(b)-ii에 따라 경계에 나란히 놓이는 3진 분할 중 적어도 하나를 선택하도록 구성될 수 있다.
다시, 디코더(20)에 대해서도 동일하게 적용된다. 따라서, 디코더(20)는, 분할 모드들의 사용가능한 세트를 하나 이상의 분할 모드의 감소된 세트로 감소시키기 위해, 분할 모드들의 사용가능한 세트로부터,
미리 결정된 블록(704, 705)을 미리 결정된 블록(704, 705)에서 픽쳐 경계의 위치에 평행한 분할선을 따라 3개의 서브 블록(74a, 74b, 74c, 75a, 75b, 75c)으로 분할하며, 상기 분할선이 분할(b)-ii에 따라 경계에 나란히 놓이는 3진 분할 중 적어도 하나를 선택하도록 구성될 수 있다.
도 8a 및 도 8b는 여기서 설명된 개념을 픽쳐 경계 처리와 함께 블록 기반 코딩 방식에 적용하는 방법의 예를 도시한다.
도 8a는 이 예에서 도 6에 도시된 바와 같이 매크로 블록(101o)에 대응할 수 있는 미리 결정된 블록의 파티셔닝을 도시한다. 블록(101o)의 빗금친 부분은 픽쳐(12)의 하단 우측 코너의 위치를 나타낸다. 이는, 쿼드 분할만을 적용함으로써 매크로 블록(101o)을 더 작은 서브 블록으로 파티셔닝하는 것을 도시한다.
각각의 서브 블록에 표시된 숫자는 도 8a에 도시된 바와 같이 매크로 블록(101o)의 리프 블록 파티셔닝에 도달하기 위해 적용되어야 하는 쿼드 분할의 수를 나타낼 수 있다. 제 1 쿼드 분할은 매크로 블록(101o)을 4개의 동일한 서브 블록(801a, 801b, 801c, 801d)으로 분할한다. 도시된 바와 같이, 좌측 2개의 서브 블록(801a, 801d)만이 여전히 픽쳐(12)의 경계를 포함할 수 있다. 우측 2개의 서브 블록(801b, 801c)만이 픽쳐(12)의 외부에 위치되며 픽쳐(12)의 경계를 더는 포함하지 않을 수 있다. 이들은 버려질 수 있다.
제 2 쿼드 분할은 좌측 2개의 서브 블록(801a, 801d)을 다시 4개의 더 작은 서브 블록으로 분할한다. 도시된 바와 같이, 좌측 2개의 서브 블록(802a, 802b)(제 2 쿼드 분할에서 파생됨)은 픽쳐(12) 내부에 위치하며 더 이상 픽쳐 경계를 포함하지 않는다. 따라서, 이들 2개의 서브 블록(802a, 802b)은 사용된 파티셔닝 방법에 따라 제한되지 않은 분할 세트를 사용하여 더 파티셔닝될 수 있다. 이들 블록의 추가적인 파티셔닝은 본 개념과 관련하여 본 명세서에서 더 자세히 설명되지 않을 수 있다.
그러나 나머지 서브블록(제 2 쿼드 분할에서 파생됨)은 모두 여전히 픽쳐 경계를 포함할 수 있으므로 세 번째로 파티셔닝되어야 한다. 제 3 파티셔닝은 숫자 '3'으로 표시되는 리프 블록으로 이어진다.
도 8b는 감소된 분할 세트의 본원에 기재된 개념을 적용하는 대안적인 파티셔닝을 도시한다. 각 서브 블록의 수는 도 8b에 도시된 바와 같이 매크로 블록(101o)의 리프 블록 파티셔닝에 도달하기 위해 적용되어야 하는 쿼드 분할 및 논쿼드 분할(예를 들어, 이중 분할)의 수를 나타낸다. 제 1 숫자는 쿼드 분할의 수를 나타낼 수 있고 제 2 숫자는 논쿼드(non-quad) 분할의 수를 나타낼 수 있다.
예를 들어, 상부 좌측 리프 블록(802a)(1,1)에 대하여, 하나의 쿼드 분할 및 하나의 수직 이중 분할이 적용되었다. 인접한 우측 리프 블록(802b)(1,2)에 대하여, 하나의 쿼드 분할 및 2개의 수직 이중 분할이 적용되었다. 인접한 하부 리프 블록(802c)(2,1)에 대하여, 2개의 쿼드 분할 및 1개의 수평 이중 분할이 적용되었는다. 픽쳐(12)의 우측 하단 코너에 있는 리프 블록(802d)(3,0)에 대하여, 3개의 쿼드 분할이 적용되고 논쿼드 분할이 적용되지 않는다.
도 8b에서 실선은 쿼드 분할로 생성된 에지(분할선)를 나타내고, 점선은 수직 이중 분할로 생성된 에지(분할선)를 나타내고, 점-실선은 수평 이중 분할에 의해 생성된 에지(분할선)를 나타낸다.
보다 상세하게는, 제 1 트리 레벨에서의 제 1 분할로서 4개의 동일한 서브 블록(801a, 801b, 801c, 801d)을 생성하는 쿼드 분할이 적용될 수 있다. 도시된 바와 같이, 좌측 2개의 서브 블록(801a, 801d)만이 여전히 픽쳐(12)의 경계를 포함할 수 있다. 우측 2개의 서브 블록(801b, 801c)만이 픽쳐(12)의 외부에 위치되며 픽쳐(12)의 경계를 더는 포함하지 않을 수 있다. 이들은 버려질 수 있다.
좌측 상부 서브 블록(801a)은 이제 제 2 트리 레벨에서 더 분할될 수 있다. 서브 블록(801a)의 파티셔닝을 위해, 감소된 분할 세트가 제공될 수 있다. 예를 들어, 쿼드 분할 및 수직 이중 분할 중 적어도 하나를 포함하거나 수직 이중 분할만을 포함하는 감소된 분할 세트가 제공될 수 있다. 도 8b에 도시된 예에서, 서브 블록(801a)은 제 2 트리 레벨에서 수정자 ½을 사용하여 수직 이중 분할의 대상이 될 수 있으며, 분할선(811)은 블록(801a) 내부의 중앙에 위치한다. 따라서, 결과적으로 좌측 상단 서브 블록(802a)이 생성될 수 있다.
현재의 개념으로, 리프 블록인 서브 블록(802a)에 도달하기 위해 오직 하나의 쿼드 분할 및 하나의 수직 이중 분할(및 따라서 단지 2개의 트리 레벨)이 적용되어야 한다. 대신에 도 8a에서, 2개의 블록(802a, 802b)은 도 8b의 단 하나의 블록(802a)과 동일한 픽쳐(12) 영역을 커버하기 위해 필요하다.
더욱이, 도 8b의 우측 인접 블록(802b)은 이제 제 3 트리 레벨에서 더 파티셔닝될 수 있다. 서브 블록(802b)의 파티셔닝에 대해, 감소된 분할 세트가 다시 제공될 수 있다. 예를 들어, 적어도 수직 이중 분할을 포함하는 감소된 분할 세트가 제공될 수 있는데, 이는, 이전 분할이 이미 수직 이중 분할이어서 후속 쿼드 분할이 허용되지 않을 수 있기 때문이다. 도 8b에 도시된 예에서, 서브 블록(802b)은 제 3 트리 레벨에서 수정자 ½을 사용하여 수직 이중 분할의 대상이 될 수 있으며, 분할선(812)은 블록(802b) 내부의 중앙에 있고 픽쳐 경계와 나란히 놓인다. 따라서, 좌측 서브 블록(803a)은 결과적으로 제 3 트리 레벨에서 생성될 수 있으며, 여기서 상기 좌측 서브 블록(803a)은 리프 블록이지만, 사용된 분할 방법으로 추가 파티셔닝될 수도 있다.
본 개념에 의해, 리프 블록인 서브 블록(803a)에 도달하기 위해 단 하나의 쿼드 분할 및 2개의 수직 이중 분할(및 따라서 3개의 트리 레벨)이 적용되어야 한다. 대신 도 8a에서, 도 8b의 단 하나의 블록(803a)과 동일한 픽쳐(12) 영역을 덮기 위해 4개의 블록이 필요하다. 그러나, 인코더(10)가 그렇게 결정하면, 쿼드 분할이 감소된 분할 세트로부터 항상 선택되는 경우 파티셔닝(8a)이 또한 적용될 수 있다.
또한, 도 8b의 하부 인접 블록(802d)은 각각 제 1 및 제 2 트리 레벨에서 2개의 연속 쿼드 분할로부터 유도될 수 있고, 블록(802d)은 이제 제 3 트리 레벨에서 더 파티셔닝될 수 있다. 서브 블록(802d)의 파티셔닝을 위해, 감소된 분할 세트가 다시 제공될 수 있다. 예를 들어, 적어도 쿼드 분할 및 수평 이중 분할을 포함하는 감소된 분할 세트 또는 수평 이중 분할만을 포함하는 감소된 분할 세트가 제공될 수 있다. 도 8b에 도시된 예에서, 서브 블록(802d)은 제 3 트리 레벨에서 수정자 ½을 사용하여 수평 이중 분할의 대상이 될 수 있으며, 분할선(813)은 블록(802d) 내부에 집중되고 픽쳐 경계와 나란히 놓인다. 따라서, 서브 블록(803b)은 제 3 트리 레벨에서 결과로 생성될 수 있으며, 여기서 상기 서브 블록(803b)은 리프 블록이다.
본 개념에 의해, 리프 블록인 서브 블록(803b)에 도달하기 위해 2개의 쿼드 분할과 1개의 수평 이중 분할(따라서 3개의 트리 레벨만)이 적용되어야 한다. 대신도 8a에서, 도 8b의 단 하나의 블록(803b)과 동일한 사진(12) 영역을 덮기 위해 두 개의 블록이 필요하다.
블록(803c)은 또한 3개의 연속 쿼드 분할로부터 유도될 수 있는 리프 블록 일 수 있다. 리프 블록(803c)의 이러한 예시는 도 8a에 도시된 동일한 블록의 쿼드 분할 파티셔닝과 동일할 수 있다. 픽쳐(12)의 코너가 리프 블록(803c)으로 이어지는 블록에 포함되기 때문에, 신택스(syntax)는 분할 모드의 감소된 세트에서 쿼드 분할을 제공하는 것만 허용할 수 있다.
일 예에 따르면, 인코더(10)는 분할 모드들의 사용가능한 세트를 하나 이상의 분할 모드의 감소된 세트로 감소시키기 위해, 미리 결정된 블록이 픽쳐(12)의 코너 넘어서 연장하는 경우에만 분할 모드들의 사용가능한 세트로부터 쿼드 분할을 선택하도록 구성될 수 있다.
디코더(20)에 대해서도 동일하게 적용된다. 따라서, 디코더(20)는 분할 모드들의 사용가능한 세트를 하나 이상의 분할 모드의 감소된 세트로 감소시키기 위해, 미리 결정된 블록이 픽쳐(12)의 코너 넘어서 연장하는 경우에만 분할 모드들의 사용가능한 세트로부터 쿼드 분할을 선택하도록 구성될 수 있다.
도 8b에 도시된 바와 같이, 결과적인 리프 블록(802a, 803a, 803b, 803c)은 픽쳐(12)의 경계를 처리하는 데 필요한 최소 파티셔닝을 나타낸다. 추가적으로 또는 대안적으로, 결과적인 리프 블록(802a, 803a, 803b, 803c)은 사용된 파티셔닝 방법의 주어진 제한 내에서 추가로 분할될 수 있다.
일반적으로, 최종 분할에 유효한 분할이 하나 이상 포함되어 있으면 감소된 분할 세트에 추가 제한이 적용될 수 있다. 이러한 제한은,
두 번째 항목 "지정된 깊이에 대한 분할 가용성"은 다음 예를 사용하여 간략하게 그리고 다시 도 5a 및 도 5b를 참조하여 설명한다:
최적의 효율성을 보장하기 위해, 순전히 암시적인 분할 유도 대신 일부 시그널링이 사용되지만 제한된 정보만 시그널링될 필요가 있다. 특히 분할 자체에 대한 정보는 전송할 필요가 없다. 위에서 논의된 픽쳐 경계 경우 C1에서 C3(도 6 참조)에서, 분할이 수행될 것이다. 감소된 분할 세트에 하나 이상의 요소가 포함된 경우 나머지 불확실성만 시그널링할 필요가 있다. 위에서 설명된 QTBT에 기반한 특정 실시 예에서, 경우 C1(도 5b 참조) 및 C2에 대해 하나의 2진 시그널이 전송될 필요가 있을 것이고, C1이 쿼드 분할 및 수직 이중 분할을 포함하는 감소된 분할 세트를 포함할 수 있기 때문에 경우 C3에서 시그널링이 필요하지 않을 것이며, C2는 쿼드 분할 및 수평 이중 분할을 포함하는 감소된 분할 세트를 포함할 수 있고, C3는 쿼드 분할만을 포함하는 감소된 분할 세트를 포함할 수 있다.
추가 신택스 제한이 현재 개념에 적용될 수 있다. 예를 들어, 분할로 인해 추가 제한이 발생하는 경우 분할 블록이 픽쳐 경계와 겹치면 해당 제한이 완전히 또는 부분적으로 삭제될 수 있다. 예에 따르면, (쿼드 분할 분할과 반대인) 후속 2진 분할의 수는, (예를 들어, 분할이 제한된 트리의 일부인 경우, 분할이 기본 분할이 아닌 경우 또는 방법이 쿼드 트리 구조를 보완하는데 사용되는 경우) 제한될 수 있다.
2진 분할이 감소된 세트의 일부로 픽쳐 경계에 적용되는 경우, 이 제한의 실시(enforcement)에 계수(count)되지 않을 수 있다.
따라서, 일 예에 따르면, 감소된 세트에서 이중 분할이 적용되고 연속적인 이중 분할의 수가 미리 결정된 최대 연속적인 이중 분할의 수로 제한되는 경우, 인코더(10)는 상기 연속적인 이중 분할이 픽쳐 경계에 걸쳐 적용되는 경우 연속적인 이중 분할을 계수하지 않도록 구성될 수 있다.
디코더(20)에 대해서도 마찬가지이다. 따라서, 감소된 세트로부터의 이중 분할이 적용되고 연속적인 이중 분할의 수가 미리 결정된 최대 연속적인 이중 분할의 수로 제한된다면, 디코더(20)는 상기 연속적인 이중 분할이 픽쳐 경계에 걸쳐 적용되는 경우 연속적인 이중 분할을 계수하지 않도록 구성될 수 있다.
쿼드 분할 외의 임의의 분할을 따르도록 쿼드 분할을 제한하는 것과 같은 다른 제한이, (예를 들어, 쿼드 트리 구조에 대한 보완하는 데 사용되는 경우) 심지어 픽쳐 경계에 걸쳐서 추가로 실시된다.
도 9는 본 개념에 따른 픽쳐(12)를 인코딩하는 방법의 블록도를 도시한다.
블록(901)에서 픽쳐는 재귀적 다중 트리 파티셔닝을 사용하여 리프 블록으로 파티셔닝된다.
블록(902)에서, 픽쳐는 리프 블록으로의 픽쳐의 파티셔닝을 사용하여 데이터 스트림으로 블록 기반 인코딩된다.
블록(903)에서, 미리 결정된 블록에 대해, 하나 이상의 분할 모드의 감소된 세트를 얻기 위해 픽쳐의 경계가 미리 결정된 블록을 교차하는 위치에 따라 미리 결정된 블록을 분할하기 위한 분할 모드들의 사용가능한 세트가 감소된다.
감소된 세트의 카디널리티가 1이면(C=1), 분할 모드의 감소된 세트는 블록(904)에 도시된 바와 같이 미리 결정된 블록을 분할하기 위해 적용된다.
감소된 세트의 카디널리티가 1보다 크면, 분할 모드의 감소된 세트 중 하나가 선택되고 분할 모드 중 선택된 하나가 블록(905)에 도시된 바와 같이 미리 결정된 블록을 분할하기 위해 적용된다.
블록(906)에서, 선택, 즉 분할 모드의 감소된 세트로부터 분할 모드들 중 선택된 하나의 분할 모드가 데이터 스트림에서 시그널링된다.
도 10은 본 개념에 따른 픽쳐(12)를 디코딩하는 방법의 블록도를 도시한다.
블록(1001)에서 픽쳐는 재귀적 다중 트리 파티셔닝을 사용하여 리프 블록으로 파티셔닝된다.
블록(1002)에서, 픽쳐는 리프 블록으로의 픽쳐의 파티셔닝을 사용하여 데이터 스트림으로부터 블록 기반 디코딩된다.
블록(1003)에서, 미리 결정된 블록에 대해, 하나 이상의 분할 모드의 감소된 세트를 얻기 위해 픽쳐의 경계가 미리 결정된 블록을 교차하는 위치에 따라, 미리 결정된 블록을 분할하기 위한 분할 모드들의 사용가능한 세트가 감소된다.
감소된 세트의 카디널리티가 1이면(C=1), 분할 모드의 감소된 세트는 블록(1004)에 도시된 바와 같이 미리 결정된 블록을 분할하기 위해 적용된다.
감소된 세트의 카디널리티가 1보다 크면, 분할 모드의 감소된 세트 중 하나가 선택되고 분할 모드 중 선택된 하나가 블록(1005)에 도시된 바와 같이 미리 결정된 블록을 분할하기 위해 적용된다.
블록(1006)에 도시된 바와 같이, 분할 모드의 감소된 세트로부터 분할 모드 중 하나 분할 모드의 선택은 데이터 스트림에서의 시그널화에 기초한다.
도 9 및 도 10의 블록 다이어그램에서 각각 블록으로 표시된 방법 단계는 또한 묘사된 것과 상이한 순서로 실행될 수 있다.
일부 측면들이 장치의 맥락에서 설명되었지만, 이들 측면들이 또한 대응하는 방법의 설명을 표현한다는 것은 명확하며, 여기서, 블록 또는 디바이스는 방법 단계 또는 방법 단계의 특징에 대응한다. 유사하게, 방법 단계의 맥락에서 설명된 측면들은 또한, 대응하는 장치의 대응하는 블록 또는 아이템 또는 특징의 설명을 표현한다. 방법 단계들 중 일부 또는 모두는, 예를 들어, 마이크로프로세서, 프로그래밍가능 컴퓨터 또는 전자 회로와 같은 하드웨어 장치에 의해(또는 사용함으로써) 실행될 수 있다. 일부 실시예들에서, 가장 중요한 방법 단계들 중 하나 이상은 그러한 장치에 의해 실행될 수 있다.
특정한 구현 요건들에 의존하면, 본 발명의 실시예들은 하드웨어 또는 소프트웨어로 구현될 수 있다. 구현은, 각각의 방법이 수행되도록 프로그래밍가능한 컴퓨터 시스템과 협력하는(또는 협력할 수 있는), 전자적으로 판독가능한 제어 시그널들이 저장된 디지털 저장 매체, 예를 들어, 플로피 디스크, DVD, 블루-레이, CD, ROM, PROM, EPROM, EEPROM 또는 FLASH 메모리를 사용하여 수행될 수 있다. 따라서, 디지털 저장 매체는 컴퓨터 판독가능할 수 있다.
본 발명에 따른 동일한 실시예들은, 본 명세서에 설명된 방법들 중 하나가 수행되도록, 프로그래밍가능한 컴퓨터 시스템과 협력할 수 있는, 전자적으로 판독가능한 제어 시그널들을 갖는 데이터 캐리어를 포함한다.
일반적으로, 본 발명의 실시예들은 프로그램 코드를 갖는 컴퓨터 프로그램 제품으로서 구현될 수 있으며, 프로그램 코드는, 컴퓨터 프로그램 제품이 컴퓨터 상에서 실행될 때 방법들 중 하나를 수행하기 위해 동작된다. 프로그램 코드는, 예를 들어, 머신 판독가능 캐리어 상에 저장될 수 있다.
다른 실시예들은, 머신 판독가능 캐리어 상에 저장되는, 본 명세서에 설명된 방법들 중 하나를 수행하기 위한 컴퓨터 프로그램을 포함한다.
즉, 본 발명의 방법의 일 실시예는, 컴퓨터 프로그램이 컴퓨터 상에서 실행될 때, 본 명세서에 설명된 방법들 중 하나를 수행하기 위한 프로그램 코드를 갖는 컴퓨터 프로그램이다.
따라서, 본 발명의 방법들의 추가적인 실시예는, 본 명세서에 설명된 방법들 중 하나를 수행하기 위한 컴퓨터 프로그램(데이터 캐리어 상에 레코딩되어 있음)을 포함하는 데이터 캐리어(또는 디지털 저장 매체, 또는 컴퓨터-판독가능 매체)이다. 데이터 캐리어, 디지털 저장 매체 또는 레코딩된 매체는 통상적으로, 유형이고 그리고/또는 비-일시적이다.
따라서, 본 발명의 방법의 추가적인 실시예는, 본 명세서에 설명된 방법들 중 하나를 수행하기 위한 컴퓨터 프로그램을 표현하는 데이터 스트림 또는 시그널들의 시퀀스이다. 데이터 스트림 또는 시그널들의 시퀀스는, 예를 들어, 데이터 통신 연결을 통해, 예를 들어, 인터넷을 통해 전달되도록 이루어질 수 있다.
추가적인 실시예는, 본 명세서에 설명된 방법들 중 하나를 수행하도록 이루어지거나 적응되는 프로세싱 수단, 예를 들어, 컴퓨터, 또는 프로그래밍가능 로직 디바이스를 포함한다.
추가적인 실시예는, 본 명세서에 설명된 방법들 중 하나를 수행하기 위한 컴퓨터 프로그램이 설치된 컴퓨터를 포함한다.
본 발명에 따른 추가적인 실시예는, 본 명세서에 설명된 방법들 중 하나를 수행하기 위한 컴퓨터 프로그램을 (예를 들어, 전자적으로 또는 광학적으로) 수신기에 전달하도록 이루어진 장치 또는 시스템을 포함한다. 수신기는, 예를 들어, 컴퓨터, 모바일 디바이스, 메모리 디바이스 등일 수 있다. 장치 또는 시스템은, 예를 들어, 컴퓨터 프로그램을 수신기에 전달하기 위한 파일 서버를 포함할 수 있다.
일부 실시예들에서, 프로그래밍가능 로직 디바이스(예를 들어, 필드 프로그래밍가능 게이트 어레이)는, 본 명세서에 설명된 방법들의 기능들 중 일부 또는 모두를 수행하기 위해 사용될 수 있다. 일부 실시예들에서, 필드 프로그래밍가능 게이트 어레이는, 본 명세서에 설명된 방법들 중 하나를 수행하기 위해 마이크로프로세서와 협력할 수 있다. 일반적으로, 방법들은 바람직하게 임의의 하드웨어 장치에 의해 수행된다.
본 명세서에 설명된 장치는, 하드웨어 장치를 사용하여, 또는 컴퓨터를 사용하여, 또는 하드웨어 장치 및 컴퓨터의 조합을 사용하여 구현될 수 있다.
본 명세서에 설명된 방법은, 하드웨어 장치를 사용하여, 또는 컴퓨터를 사용하여, 또는 하드웨어 장치 및 컴퓨터의 조합을 사용하여 수행될 수 있다.
위에서 설명된 실시예들은 단지, 본 발명의 원리들에 대해 예시적일 뿐이다. 본 명세서에 설명된 배열들 및 세부사항들의 수정들 및 변형들이 당업자들에게 명백할 것임을 이해한다. 따라서, 본 명세서의 실시예들의 설명 및 해설에 의해 제시된 특정 세부사항들이 아니라 후속하는 특허 청구항들의 범위에 의해서만 제한되는 것이 의도이다.
참고 문헌
[1]
ITU-T and ISO/IEC. High efficiency video coding. ITU-T Recommendation H.265 | ISO/IEC 23008 10 (HEVC), edition 1, 2013; edition 2, 2014.
[2]
J. Chen, E. Alshina, G.J. Sullivan, J.-R. Ohm, J. Boyce, Algorithm Description of Joint Exploration Test Model 6 (JEM 6), JVET, doc. JVET-F1001, April 2017.
[3]
X. Li, H.-C. Chuang, J. Chen, M. Karczewicz, L. Zhang, X. Zhao, A. Said, Multi-Type-Tree, JVET, doc. JVET-D0117, Oct. 2016.
[4]
F. Le Leannec, T. Poirier, F. Urban, Asymmetric Coding Units in QTBT, JVET, doc. JVET-D0064, Oct. 2016.
[5]
아직 공개되지 않은 유럽 특허 출원 제 17182209.1 호
Claims (10)
- 픽쳐(12)를 리프 블록들로 재귀적 다중 트리 파티셔닝하는 것에 따라 상기 픽쳐(12)를 데이터 스트림(14)으로 블록 기반 인코딩하는 방법으로서,
미리 결정된 블록(801a, 801b, 801c, 801d, 802a, 802b, 802d, 803a, 803b, 803c)의 x-좌표 위치(xb)와 너비(wb)의 합이 픽쳐의 너비(wf)보다 큰 지 여부를 결정하는 단계; 및
상기 미리 결정된 블록(801a, 801b, 801c, 801d, 802a, 802b, 802d, 803a, 803b, 803c)의 y-좌표 위치(yb)와 높이(hb)의 합이 픽쳐의 높이(hf)보다 큰 지 여부를 결정하는 단계에 기초하여,
상기 픽쳐(12)의 경계를 넘어 연장되는 미리 결정된 블록(801a, 801b, 801c, 801d, 802a, 802b, 802d, 803a, 803b, 803c)을 위한 분할 모드들의 사용가능한 세트를 결정하는 단계;
상기 분할 모드들의 사용가능한 세트로부터:
쿼드 분할; 및
상기 미리 결정된 블록(801a, 802d)을 상기 미리 결정된 블록(801a, 802d) 내의 상기 픽쳐(12)의 경계에 평행한 분할선(811; 813)을 따라 2개의 서브블록들(802a, 802b; 803b, 803d)로 분할하는, 수직 2진 분할 또는 수평 2진 분할 - 상기 분할선(811; 813)은 상기 픽쳐(12)의 상기 경계에 나란히 놓이는 것 및 상기 미리 결정된 블록(801a; 802d) 내에서 중심에 있는 것 중 적어도 하나임 - ;
중 적어도 하나를 선택하는 단계를 포함하는, 인코딩 방법. - 청구항 1에 있어서,
상기 미리 결정된 블록 내에 위치한 상기 픽쳐의 상기 경계가 수직인 경우, 상기 분할 모드들의 사용가능한 세트로부터 수직 2진 분할을 선택하는 단계를 더 포함하는, 인코딩 방법. - 청구항 1에 있어서,
상기 미리 결정된 블록 내에 위치한 상기 픽쳐의 상기 경계가 수평인 경우, 상기 분할 모드들의 사용가능한 세트로부터 수평 2진 분할을 선택하는 단계를 더 포함하는, 인코딩 방법. - 청구항 1에 있어서,
상기 미리 결정된 블록이 상기 픽쳐(12)의 코너를 넘어 연장되는 경우에만, 상기 분할 모드들의 사용가능한 세트로부터 쿼드 분할을 선택하는 단계를 더 포함하는, 인코딩 방법. - 픽쳐(12)를 리프 블록들로 재귀적 다중 트리 파티셔닝하는 것에 따라 데이터 스트림(14)으로부터 상기 픽쳐(12)를 블록 기반 디코딩하는 방법으로서,
미리 결정된 블록(801a, 801b, 801c, 801d, 802a, 802b, 802d, 803a, 803b, 803c)의 x-좌표 위치(xb)와 너비(wb)의 합이 픽쳐의 너비(wf)보다 큰 지 여부를 결정하는 단계; 및
상기 미리 결정된 블록(801a, 801b, 801c, 801d, 802a, 802b, 802d, 803a, 803b, 803c)의 y-좌표 위치(yb)와 높이(hb)의 합이 픽쳐의 높이(hf)보다 큰 지 여부를 결정하는 단계에 기초하여,
상기 픽쳐(12)의 경계를 넘어 연장되는 미리 결정된 블록(801a, 801b, 801c, 801d, 802a, 802b, 802d, 803a, 803b, 803c)을 위한 분할 모드들의 사용가능한 세트를 결정하는 단계;
상기 분할 모드들의 사용가능한 세트로부터:
쿼드 분할; 및
상기 미리 결정된 블록(801a, 802d)을 상기 미리 결정된 블록(801a, 802d) 내의 상기 픽쳐(12)의 경계에 평행한 분할선(811; 813)을 따라 2개의 서브블록들(802a, 802b; 803b, 803d)로 분할하는, 수직 2진 분할 또는 수평 2진 분할 - 상기 분할선(811; 813)은 상기 픽쳐(12)의 상기 경계에 나란히 놓이는 것 및 상기 미리 결정된 블록(801a; 802d) 내에서 중심에 있는 것 중 적어도 하나임 - ;
중 적어도 하나를 선택하는 단계를 포함하는, 디코딩 방법. - 청구항 5에 있어서,
상기 미리 결정된 블록 내에 위치한 상기 픽쳐의 상기 경계가 수직인 경우, 상기 분할 모드들의 사용가능한 세트로부터 수직 2진 분할을 선택하는 단계를 더 포함하는, 디코딩 방법. - 청구항 5에 있어서,
상기 미리 결정된 블록 내에 위치한 상기 픽쳐의 상기 경계가 수평인 경우, 상기 분할 모드들의 사용가능한 세트로부터 수평 2진 분할을 선택하는 단계를 더 포함하는, 디코딩 방법. - 청구항 5에 있어서,
상기 미리 결정된 블록이 상기 픽쳐(12)의 코너를 넘어 연장되는 경우에만, 상기 분할 모드들의 사용가능한 세트로부터 쿼드 분할을 선택하는 단계를 더 포함하는, 디코딩 방법. - 청구항 1 또는 청구항 5에 기재된 방법을 수행하도록 구성된, 장치(10).
- 컴퓨터 판독 가능한 저장 매체에 저장된 컴퓨터 프로그램으로서,
상기 컴퓨터 프로그램은 컴퓨터 또는 시그널 프로세서에서 실행될 때 청구항 1 또는 청구항 5에 기재된 방법을 구현하도록 구성되는, 컴퓨터 프로그램.
.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020247015028A KR20240067981A (ko) | 2018-03-29 | 2019-03-21 | 픽쳐 경계 처리를 사용하여 픽쳐를 인코딩하고 디코딩하는 장치 및 방법 |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP18165218.1 | 2018-03-29 | ||
EP18165218 | 2018-03-29 | ||
PCT/EP2019/057170 WO2019185456A1 (en) | 2018-03-29 | 2019-03-21 | Apparatus and method for encoding and decoding a picture using picture boundary handling |
KR1020207031325A KR102480688B1 (ko) | 2018-03-29 | 2019-03-21 | 픽쳐 경계 처리를 사용하여 픽쳐를 인코딩하고 디코딩하는 장치 및 방법 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020207031325A Division KR102480688B1 (ko) | 2018-03-29 | 2019-03-21 | 픽쳐 경계 처리를 사용하여 픽쳐를 인코딩하고 디코딩하는 장치 및 방법 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020247015028A Division KR20240067981A (ko) | 2018-03-29 | 2019-03-21 | 픽쳐 경계 처리를 사용하여 픽쳐를 인코딩하고 디코딩하는 장치 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20230003413A true KR20230003413A (ko) | 2023-01-05 |
KR102665985B1 KR102665985B1 (ko) | 2024-05-21 |
Family
ID=61868349
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020227044553A KR102665985B1 (ko) | 2018-03-29 | 2019-03-21 | 픽쳐 경계 처리를 사용하여 픽쳐를 인코딩하고 디코딩하는 장치 및 방법 |
KR1020207031325A KR102480688B1 (ko) | 2018-03-29 | 2019-03-21 | 픽쳐 경계 처리를 사용하여 픽쳐를 인코딩하고 디코딩하는 장치 및 방법 |
KR1020247015028A KR20240067981A (ko) | 2018-03-29 | 2019-03-21 | 픽쳐 경계 처리를 사용하여 픽쳐를 인코딩하고 디코딩하는 장치 및 방법 |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020207031325A KR102480688B1 (ko) | 2018-03-29 | 2019-03-21 | 픽쳐 경계 처리를 사용하여 픽쳐를 인코딩하고 디코딩하는 장치 및 방법 |
KR1020247015028A KR20240067981A (ko) | 2018-03-29 | 2019-03-21 | 픽쳐 경계 처리를 사용하여 픽쳐를 인코딩하고 디코딩하는 장치 및 방법 |
Country Status (7)
Country | Link |
---|---|
US (3) | US11146789B2 (ko) |
EP (2) | EP3777147B1 (ko) |
JP (2) | JP7179080B2 (ko) |
KR (3) | KR102665985B1 (ko) |
CN (2) | CN112204968B (ko) |
TW (2) | TWI796638B (ko) |
WO (1) | WO2019185456A1 (ko) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11470359B2 (en) * | 2018-03-30 | 2022-10-11 | Sharp Kabushiki Kaisha | Systems and methods for partitioning video blocks at a boundary of a picture for video coding |
WO2019234613A1 (en) * | 2018-06-05 | 2019-12-12 | Beijing Bytedance Network Technology Co., Ltd. | Partition tree with partition into 3 sub-blocks by horizontal and vertical splits |
JP6835177B2 (ja) * | 2018-11-30 | 2021-02-24 | 株式会社Jvcケンウッド | 画像復号化装置、画像復号化方法及び画像復号化プログラム |
WO2022218322A1 (en) * | 2021-04-13 | 2022-10-20 | Beijing Bytedance Network Technology Co., Ltd. | Boundary handling for coding tree split |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20110047697A (ko) * | 2009-10-30 | 2011-05-09 | 삼성전자주식회사 | 픽처 경계의 부호화 단위를 부호화, 복호화 하는 방법 및 장치 |
WO2017157249A1 (en) * | 2016-03-16 | 2017-09-21 | Mediatek Inc. | Method and apparatus of video data processing with restricted block size in video coding |
US20170347123A1 (en) * | 2016-05-25 | 2017-11-30 | Arris Enterprises Llc | Jvet coding block structure with asymmetrical partitioning |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003021971A1 (en) * | 2001-08-28 | 2003-03-13 | Ntt Docomo, Inc. | Moving picture encoding/transmission system, moving picture encoding/transmission method, and encoding apparatus, decoding apparatus, encoding method, decoding method, and program usable for the same |
CN106231337B (zh) * | 2010-04-13 | 2020-06-19 | Ge视频压缩有限责任公司 | 解码器、解码方法、编码器以及编码方法 |
KR101791078B1 (ko) * | 2010-04-16 | 2017-10-30 | 에스케이텔레콤 주식회사 | 영상 부호화/복호화 장치 및 방법 |
KR20140139615A (ko) * | 2010-10-08 | 2014-12-05 | 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. | 블록 분할 및 블록 병합을 지원하는 픽처 코딩 |
US20130136180A1 (en) * | 2011-11-29 | 2013-05-30 | Futurewei Technologies, Inc. | Unified Partitioning Structures and Signaling Methods for High Efficiency Video Coding |
US9693060B2 (en) * | 2012-11-16 | 2017-06-27 | Qualcomm Incorporated | Device and method for scalable coding of video information |
US10003807B2 (en) * | 2015-06-22 | 2018-06-19 | Cisco Technology, Inc. | Block-based video coding using a mixture of square and rectangular blocks |
WO2017008263A1 (en) * | 2015-07-15 | 2017-01-19 | Mediatek Singapore Pte. Ltd. | Conditional binary tree block partitioning structure |
US10609423B2 (en) * | 2016-09-07 | 2020-03-31 | Qualcomm Incorporated | Tree-type coding for video coding |
EP3383043A1 (en) * | 2017-03-27 | 2018-10-03 | Thomson Licensing | Methods and apparatus for picture encoding and decoding |
CN111264060B (zh) | 2017-10-20 | 2023-10-17 | 富士通株式会社 | 动态图像编码装置、动态图像编码方法和存储介质 |
-
2019
- 2019-03-21 JP JP2020552780A patent/JP7179080B2/ja active Active
- 2019-03-21 KR KR1020227044553A patent/KR102665985B1/ko active IP Right Grant
- 2019-03-21 KR KR1020207031325A patent/KR102480688B1/ko active IP Right Grant
- 2019-03-21 EP EP19711377.2A patent/EP3777147B1/en active Active
- 2019-03-21 CN CN201980036096.8A patent/CN112204968B/zh active Active
- 2019-03-21 WO PCT/EP2019/057170 patent/WO2019185456A1/en unknown
- 2019-03-21 KR KR1020247015028A patent/KR20240067981A/ko active Application Filing
- 2019-03-21 CN CN202410285261.6A patent/CN118301371A/zh active Pending
- 2019-03-21 EP EP22214932.0A patent/EP4192010A1/en active Pending
- 2019-03-28 TW TW110107155A patent/TWI796638B/zh active
- 2019-03-28 TW TW108111027A patent/TWI723365B/zh active
-
2020
- 2020-09-25 US US17/033,214 patent/US11146789B2/en active Active
-
2021
- 2021-09-20 US US17/480,024 patent/US11843774B2/en active Active
-
2022
- 2022-11-15 JP JP2022182494A patent/JP7529749B2/ja active Active
-
2023
- 2023-11-01 US US18/499,954 patent/US20240064300A1/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20110047697A (ko) * | 2009-10-30 | 2011-05-09 | 삼성전자주식회사 | 픽처 경계의 부호화 단위를 부호화, 복호화 하는 방법 및 장치 |
WO2017157249A1 (en) * | 2016-03-16 | 2017-09-21 | Mediatek Inc. | Method and apparatus of video data processing with restricted block size in video coding |
US20170347123A1 (en) * | 2016-05-25 | 2017-11-30 | Arris Enterprises Llc | Jvet coding block structure with asymmetrical partitioning |
Non-Patent Citations (1)
Title |
---|
Fuzheng Yang et al., CTB splitting on frame boundary for arbitrary resolution video, JCT-VC of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, JCTVC-C025, 2010-10-01 pp. 1-4 1부. * |
Also Published As
Publication number | Publication date |
---|---|
JP2021519547A (ja) | 2021-08-10 |
CN112204968A (zh) | 2021-01-08 |
KR20200143694A (ko) | 2020-12-24 |
US11843774B2 (en) | 2023-12-12 |
US11146789B2 (en) | 2021-10-12 |
TW201943280A (zh) | 2019-11-01 |
JP2023017980A (ja) | 2023-02-07 |
US20220078421A1 (en) | 2022-03-10 |
CN118301371A (zh) | 2024-07-05 |
KR102480688B1 (ko) | 2022-12-23 |
TWI796638B (zh) | 2023-03-21 |
EP3777147B1 (en) | 2023-02-01 |
WO2019185456A1 (en) | 2019-10-03 |
TWI723365B (zh) | 2021-04-01 |
KR20240067981A (ko) | 2024-05-17 |
US20210014490A1 (en) | 2021-01-14 |
JP7179080B2 (ja) | 2022-11-28 |
CN112204968B (zh) | 2024-03-15 |
EP4192010A1 (en) | 2023-06-07 |
KR102665985B1 (ko) | 2024-05-21 |
EP3777147A1 (en) | 2021-02-17 |
TW202131699A (zh) | 2021-08-16 |
JP7529749B2 (ja) | 2024-08-06 |
US20240064300A1 (en) | 2024-02-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102480688B1 (ko) | 픽쳐 경계 처리를 사용하여 픽쳐를 인코딩하고 디코딩하는 장치 및 방법 | |
JP7191211B2 (ja) | 復号する方法、コンピュータプログラム、ビデオ復号装置 | |
JP7535068B2 (ja) | イントラ下位区分のためのコーディングを含むデコーダ、エンコーダ、および方法 | |
CN113507603B (zh) | 图像信号编码/解码方法及其设备 | |
JP6977138B2 (ja) | 境界の強制的な区分けの改善 | |
WO2019016287A1 (en) | APPARATUS AND METHOD FOR ENCODING IMAGES | |
JP7513813B2 (ja) | 実装効率の良いパーティションベースのイントラ符号化概念 | |
CN113366838B (zh) | 对灵活大小的图片分割进行复杂度处理的编码器和解码器、编码方法和解码方法 | |
EP3906683A1 (en) | Encoding and decoding a picture | |
JP2024147790A (ja) | 画像境界処理を使用して画像を符号化および復号する装置および方法 | |
JP2024150750A (ja) | イントラ下位区分のためのコーディングを含むデコーダ、エンコーダ、および方法 | |
JP2024050875A (ja) | サンプルブロックの変換済み表現についてのコーディングコンセプト |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |