KR101952103B1 - 블록 분할 및 블록 병합을 지원하는 픽처 코딩 - Google Patents

블록 분할 및 블록 병합을 지원하는 픽처 코딩 Download PDF

Info

Publication number
KR101952103B1
KR101952103B1 KR1020177029761A KR20177029761A KR101952103B1 KR 101952103 B1 KR101952103 B1 KR 101952103B1 KR 1020177029761 A KR1020177029761 A KR 1020177029761A KR 20177029761 A KR20177029761 A KR 20177029761A KR 101952103 B1 KR101952103 B1 KR 101952103B1
Authority
KR
South Korea
Prior art keywords
coding
blocks
block
parameter candidates
coding parameter
Prior art date
Application number
KR1020177029761A
Other languages
English (en)
Other versions
KR20170118976A (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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=44764172&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=KR101952103(B1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by 지이 비디오 컴프레션, 엘엘씨 filed Critical 지이 비디오 컴프레션, 엘엘씨
Publication of KR20170118976A publication Critical patent/KR20170118976A/ko
Application granted granted Critical
Publication of KR101952103B1 publication Critical patent/KR101952103B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/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/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
    • 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/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/196Methods 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 being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • 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/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/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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
    • H04N19/93Run-length coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Error Detection And Correction (AREA)
  • Selective Calling Equipment (AREA)
  • Channel Selection Circuits, Automatic Tuning Circuits (AREA)

Abstract

픽처의 현재 블록에 대하여 - 상기 현재 블록에 대하여 비트스트림이 지원되는 분할 패턴들 중 하나를 시그널링함 -, 블록 병합에 의한 분할의 반전(reversal)이 회피되는 경우에 추가적인 코딩 효율 증가가 달성될 수 있다. 특히, 상기 지원되는 분할 패턴들 중 시그널링된 분할 패턴이 상기 블록의 둘 이상의 추가적인 블록들로의 서브디비젼을 규정하는 경우에, 코딩 순서에서 상기 추가적인 블록들 중 제 1 추가적인 블록을 제외하고 모든 추가적인 블록들에 대하여, 소정의 코딩 파라미터 후보들의 제거가 수행된다. 특히, 상기 각각의 추가적인 블록과 병합될 때 상기 지원되는 분할 패턴들 중 하나를 야기하는, 상기 추가적인 블록들 중 임의의 추가적인 블록과 연관되는 코딩 파라미터들과 동일한 코딩 파라미터들을 갖는, 그러한 코딩 파라미터 후보들이 각각의 추가적인 블록에 대한 코딩 파라미터 후보들의 세트로부터 제거된다. 이러한 조치에 의해, 분할 코딩 및 병합 코딩 간의 리던던시가 회피된다.

Description

블록 분할 및 블록 병합을 지원하는 픽처 코딩{PICTURE CODING SUPPORTING BLOCK PARTITIONING AND BLOCK MERGING}
본 출원은 픽처 및/또는 비디오 코딩에 관한 것이며 특히 블록 분할 및 블록 병합을 지원하는 코덱들에 관한 것이다.
많은 픽처(picture) 및/또는 비디오 코덱들은 블록 단위(units of blocks)로 픽처들을 처리한다. 예를 들어, 예측적 코덱들은 한편으로 높은 공간 해상도(resolution)에서 설정(set)되지만 예측 파라미터들에 대한 너무 많은 측면(side) 정보를 소비하게 되는 매우 정밀하게(precisely) 설정된 예측 파라미터들 및 다른 한편으로 예측 파라미터들의 더 낮은 공간 해상도에 기인하여 예측 잔여물(prediction residue)을 인코딩하기 위해 필요한 비트량이 증가되게 하는 너무 비정밀하게(coarsely) 설정된 예측 파라미터들 간의 양호한 타협을 달성하기 위해 블록 입도(block granularity)를 이용한다. 사실상, 예측 파라미터들에 대한 최적 세팅은 양 극단들 사이의 어딘가에 존재하게 된다.
위에서-논의된 문제에 대한 최적 솔루션을 획득하기 위해 여러가지 시도들이 이루어져 왔다. 예를 들어, 행(row)들 및 열(column)들로 규칙적으로 배치되는(regularly arranged) 블록들로의 픽처의 규칙적인 서브디비젼(subdivision)을 이용하는 대신에, 멀티-트리 분할 서브디비젼은 서브디비젼 정보에 대하여 적정한 요구(reasonable demand)로 픽처를 블록들로 서브디비젼하는 것의 자유성(freedom)을 증가시키도록 시도한다. 그럼에도 불구하고, 멀티-트리 서브디비젼조차 현저한 양의 데이터의 신호화(signalization)를 필요로 하며 픽처의 서브디비젼에서의 자유성은 이러한 멀티-트리 서브디비젼을 이용하는 경우에서조차도 상당히 제약된다.
한편으로 픽처 서브디비젼을 신호화하기 위해 필요한 측면 정보의 양 및 다른 한편으로 픽처의 서브디비젼에서의 자유성 간의 양호한 트레이드오프를 가능하게 하기 위해, 병합 정보를 신호화하는데 필요한 적정한 양의 추가적인 데이터에서 가능한 픽처 서브디비져닝들의 수를 증가시키기 위해 블록들의 병합이 이용될 수 있다. 병합되는 블록들에 대하여, 마치 블록들의 결과적인 병합된 그룹이 픽처의 직접 서브-디비져닝된 부분인 것처럼 유사하게, 코딩 파라미터들은 단지 한번 전부(in full) 비트스트림 내에서 전송될 필요가 있다.
그러나, 블록 병합 및 블록 서브디비져닝의 결합에 의해 새롭게 야기되는 잔존하는 리던던시들에 기인하여, 보다 양호한 코딩 효율을 달성하기 위한 필요성이 여전히 존재한다.
그리하여, 본 발명의 목적은 증가된 코딩 효율을 갖는 코딩 개념을 제공하는 것이다. 이러한 목적은 계류되는(pending) 독립항들에 의해 달성된다.
본 발명의 기초가 되는 개념은, 픽처(picture)의 현재 블록에 대하여 - 상기 현재 블록에 대하여 비트스트림이 지원되는 분할(partitioning) 패턴들 중 하나를 시그널링함 -, 블록 병합(merging)에 의한 분할의 반전(reversal)이 회피되는 경우에 추가적인 코딩 효율 증가가 달성될 수 있다는 것이다. 특히, 상기 지원되는 분할 패턴들 중 시그널링된 분할 패턴이 상기 블록의 둘 이상의 추가적인(further) 블록들로의 서브디비젼(subdivision)을 규정(specify)하는 경우에, 코딩 순서에서 상기 추가적인 블록들 중 제 1 추가적인 블록을 제외하고 모든 추가적인 블록들에 대하여, 소정의 코딩 파라미터 후보들의 제거가 수행된다. 특히, 상기 각각의 추가적인 블록과 병합될 때 상기 지원되는 분할 패턴들 중 하나를 야기(result in)하는, 상기 추가적인 블록들 중 임의의 추가적인 블록과 연관되는 코딩 파라미터들과 동일한 코딩 파라미터들을 갖는, 그러한 코딩 파라미터 후보들이 각각의 추가적인 블록에 대한 코딩 파라미터 후보들의 세트로부터 제거된다. 이러한 조치에 의해, 분할 코딩 및 병합 코딩 간의 리던던시(redundancy)가 회피되고, 감소된 크기의 코딩 파라미터 후보들의 세트를 이용함으로써 병합 정보를 시그널링하기 위한 시그널링 오버헤드가 추가적으로 감소될 수 있다. 또한, 블록 분할과 블록 병합을 결합(combining)하는 긍정적인 효과들이 유지된다. 즉, 블록 분할과 블록 병합의 결합에 기인하여, 블록 병합이 없는 경우와 비교하여 달성가능한 분할 패턴들의 다양성이 증가된다. 신호화 오버헤드에서의 증가는 적정한 한계들 내에서 유지된다. 마지막으로, 블록 병합은 현재 블록의 경계 밖에 있는 추가적인 블록들의 합병을 가능하게 하며, 그에 의해 블록 병합 없이는 가능하지 않은 입도(granularity)들을 제공한다.
병합 후보들의 세트의 조금 상이한 뷰(view)를 적용하여, 본 발명의 추가적인 양상에 따르면, 위에서 설명된 개념은 디코더에서 명백하게 제시되며, 상기 디코더는 픽처의 현재 블록에 대한 지원되는 분할 패턴들 중 하나를 시그널링하는 비트스트림을 디코딩하도록 구성되고, 상기 디코더는 상기 지원되는 분할 패턴들 중 시그널링된 분할 패턴이 상기 블록의 둘 이상의 추가적인(further) 블록들로의 서브디비젼을 규정하는 경우에, 코딩 순서에서 상기 추가적인 블록들 중 제 1 추가적인 블록을 제외하고 모든 추가적인 블록들에 대하여, 각각의 추가적인 블록들에 대한 후보 블록들의 세트로부터, 상기 각각의 추가적인 블록들과 병합될 때 상기 지원되는 분할 패턴들 중 하나를 야기하는 후보 블록들을 제거하도록 구성된다.
본 발명의 유리한 구현들은 첨부되는 종속항들의 주제이다.
본 출원의 선호되는(preferred) 실시예들은 도면들과 관련하여 아래에서 보다 상세하게 설명된다.
도 1은 일 실시예에 따른 인코더의 블록 다이어그램을 도시한다.
도 2는 일 실시예에 따른 디코더의 블록 다이어그램을 도시한다.
도 3은 도 1의 인코더의 가능한 내부 구조의 블록 다이어그램을 도시한다.
도 4는 도 2의 디코더의 가능한 내부 구조의 블록 다이어그램을 도시한다.
도 5a는 픽처의 트리-루트(tree-root) 블록들, 코딩 유닛들(블록들) 및 예측 유닛들(분할들)로의 가능한 서브디비젼을 도식적으로 도시한다.
도 5b는 예시적인 일례에 따른 분할들의 레벨에 이르기까지, 도 5a에 도시된 트리-루트 블록의 서브디비젼 트리를 도시한다.
도 6은 일 실시예에 따른 가능한 지원되는 분할 패턴들의 세트에 대한 일 실시예를 도시한다.
도 7은 도 6에 따른 블록 분할을 이용할 때 블록 병합 및 블록 분할의 결합으로부터 유효하게 야기되는 가능한 분할 패턴들을 도시한다.
도 8은 일 실시예에 따른 SKIP/DIRECT 모드에 대한 후보 블록들을 도식적으로 도시한다.
도 9-11은 일 실시예에 따른 신택스(syntax)의 신택스 부분들을 도시한다.
도 12는 일 실시예에 따른 분할에 대한 이웃하는 분할들의 정의를 도식적으로 도시한다.
다음의 설명과 관련하여, 동일한 참조 부호가 상이한 도면들과 관련하여 사용될 때마다, 이러한 도면들 중 하나와 관련하여 제시되는 각각의 엘리먼트에 관한 설명들이 하나의 도면으로부터 다른 도면으로 전달되는 것이 그러한 다른 도면에 대한 나머지 기술과 충돌하지 않는다면 다른 도면들에 동일하게 적용되어야 함을 유의하도록 한다.
도 1은 본 발명의 일 실시예에 따른 인코더(10)를 도시한다. 인코더(10)는 픽처(20)를 비트스트림(30)으로 인코딩하도록 구성된다. 물론, 픽처(20)는 비디오의 일부일 수 있으며, 그러한 경우에 인코더는 비디오 인코더일 것이다.
픽처(20)는 인코더(10)에 의해 현재 인코딩될 블록(40)을 포함한다. 도 1에 도시된 바와 같이, 픽처(20)는 하나보다 많은 블록(40)을 포함할 수 있다. 예를 들어, 픽처(20)는 블록들(40)의 규칙적인 배치(regular arrangement)로 서브-디비져닝될 수 있고 그 결과 블록들(40)은 도 1에 예시적으로 도시된 바와 같이 행들 및 열들로 배치된다. 그러나, 픽처(20)의 블록들(40)로의 임의의 다른 서브디비젼이 또한 가능할 수 있다. 특히, 픽처(20)의 블록들(40)로의 서브디비젼은 고정, 즉, 디폴트(default)로 디코더에 알려져 있을 수 있거나 또는 비트스트림(30) 내에서 디코더로 시그널링될 수 있다. 특히, 픽처(20)의 블록들(40)은 크기가 가변될 수 있다. 예를 들어, 블록들(40)을 획득하기 위해 규칙적으로 배치된 트리-루트 블록들로의 쿼드-트리(quad-tree) 서브디비젼과 같은 멀티-트리 서브디비젼이 픽처(20) 또는 픽처(20)의 규칙적 프리-서브디비져닝(pre-subdivisioning)에 적용될 수 있으며, 이러한 경우에 블록들(40)은 멀티-트리 서브디비젼의 리프(leaf) 블록들을 형성한다.
어떤 경우이든, 인코더(10)는 현재 블록(40)에 대한 지원되는 분할 패턴들 중 하나를 비트스트림(30) 내에서 시그널링하도록 구성된다. 즉, 인코더(10)는 자신이 블록(40)을 추가적으로 분할하기 위해서 소정의, 예를 들어, 레이트-왜곡(rate-distortion) 최적화 관점에 있는지 여부에 대하여, 그리고 특정 코딩 파라미터들이 픽처(20)의 현재 블록(40) 내에서 설정되는 입도를 적응(adapt)시키기 위하여 지원되는 분할 패턴들 중 어떤 것이 현재 블록(40)을 위해 사용되어야 하는지에 대하여 결정한다. 아래에서 보다 상세하게 논의될 바와 같이, 코딩 파라미터들은, 예를 들어, 인터(inter) 예측 파라미터들과 같은 예측 파라미터들을 나타낼 수 있다. 이러한 인터 예측 파라미터들은, 예를 들어, 기준 픽처 인덱스(reference picture index), 모션 벡터 등을 포함할 수 있다. 지원되는 분할 패턴들은, 예를 들어, 비-분할 모드, 즉, 현재 블록(40)이 추가적으로 분할되지 않는 옵션, 수평 분할 모드, 즉, 현재 블록(40)이 수평으로 연장된 라인을 따라서 상위(upper) 또는 상부(top) 부분 및 하위(lower) 또는 하부(bottom) 부분으로 서브-디비져닝되는 옵션, 및 수직 분할 모드, 즉, 현재 블록(40)이 수직으로 연장된 라인을 따라서 좌측 부분 및 우측 부분으로 수직적으로 서브-디비져닝되는 옵션을 포함할 수 있다. 이를 넘어서서, 지원되는 분할 패턴들은 또한 현재 블록(40)이 추가적으로 4개의 추가적인 블록들 - 이들 각각은 현재 블록(40)의 하나의 쿼터(quarter)를 추정(assume)함 - 로 규칙적으로 서브-디비져닝되는 옵션을 포함할 수 있다. 추가적으로, 상기 분할은 픽처(20)의 모든 블록들에 관련되거나 또는 인터 예측 모드와 같은 그와 연관되는 특정 코딩 모드를 갖는 블록들과 같은 단지 픽처(20)의 적절한 서브세트에 관련될 수 있다. 또한, 병합이 블록의 분할들에 대하여 이용가능해야 하는지 여부에 관하여, 블록의 분할(들)을 위해 병합이 적용되는 가능한 블록들의 세트는 추가적으로 병합이 수행될 수 있는 각각의 블록(40)에 대한 비트스트림 신호화에 의해 제한될 수 있다. 물론, 이러한 신호화는 또한 각각의 잠재적인 병합 후보 분할에 대하여 개별적으로 이루어질 수 있다. 추가적으로, 조합하여 또는 개별적으로, 블록이 멀티-트리 서브디비젼 리프 블록인 경우에, 예를 들어, 블록 크기, 블록(40)의 서브디비젼 레벨에 의존하여, 지원되는 분할 모드들의 상이한 서브세트들이 블록들(40)에 대하여 이용가능할 수 있다.
즉, 그 중에서도 특히(inter alias), 블록(40)을 획득하기 위하여 픽처(20)의 블록들로의 서브디비젼이 비트스트림 내에서 고정되거나 또는 시그널링될 수 있는 한편, 현재 블록(40)에 대하여 사용될 분할 패턴은 분할 정보의 형태로 비트스트림(30) 내에서 시그널링된다. 그에 따라, 상기 분할 정보는 그리하여 픽처(20)의 블록들(40)로의 서브디비젼의 일종의 확장(extension)으로서 간주될 수 있다. 한편, 픽처(20)의 블록들(40)로의 서브디비젼의 원래의(original) 입도의 추가적인 관련성이 여전히 남아있을 수 있다. 예를 들어, 인코더(10)는 블록(40)에 의해 정의되는 입도에서 픽처(20)의 각각의 부분 또는 블록(40)에 대하여 이용될 코딩 모드를 비트스트림(30) 내에서 신호화하도록 구성될 수 있는 한편, 인코더(10)는 각각의 블록(40)에 대하여 선택된 각각의 분할 패턴에 의해 정의되는 증가된 (더 미세한) 입도에서 각각의 블록(40) 내에서 각각의 코딩 모드의 코딩 파라미터들을 가변시키도록 구성된다. 예를 들어, 블록들(40)의 입도에서 시그널링되는 코딩 모드는, 시간적 인터 예측 모드, 인터-뷰(inter-view) 예측 모드 등과 같은, 인트라(intra) 예측 모드, 인터 예측 모드 등을 구별할 수 있다. 각각의 블록(40)의 분할로부터 야기되는 하나 이상의 서브-블록들(분할들)과 연관되는 코딩 파라미터들의 분류는, 그 다음에 각각의 블록(40)에 할당되는 코딩 모드에 의존한다. 예를 들어, 인트라-코딩된 블록(40)에 대하여, 코딩 파라미터들은 픽처(20)의 이전에 디코딩된 부분들의 픽처 컨텐트가 각각의 블록(40)을 채우기 위해 사용되는 공간 방향(spatial direction)을 포함할 수 있다. 인터-코딩된 블록(40)에 대하여, 코딩 파라미터들은, 그 중에서도 특히, 모션-보상된 예측에 대한 모션 벡터를 포함할 수 있다.
도 1은 예시적으로 2개의 추가적인 (더 작은) 블록들(50 및 60)로 서브-디비져닝되는 현재 블록(40)을 도시한다. 특히, 수직 분할 모드가 예시적으로 도시된다. 더 작은 블록들(50 및 60)은 또한 서브-블록들(50 및 60) 또는 분할들(50 및 60) 또는 예측 유닛들(50 및 60)로서 지칭될 수 있다. 특히, 인코더(10)는, 지원되는 분할 패턴들 중 시그널링된 분할 패턴이 현재 블록(40)의 둘 이상의 추가적인 블록들(50, 60)로의 서브디비젼을 규정하는 경우들에서, 코딩 순서에서 상기 추가적인 블록들(50 및 60) 중 제 1 추가적인 블록을 제외하고 모든 추가적인 블록들에 대하여, 각각의 추가적인 블록에 대한 코딩 파라미터 후보들의 세트로부터, 각각의 추가적인 블록들과 병합될 때 상기 지원되는 분할 패턴들 중 하나를 야기하는, 상기 추가적인 블록들 중 임의의 추가적인 블록과 연관되는 코딩 파라미터들과 동일한 코딩 파라미터들을 갖는 코딩 파라미터 후보들을 제거하도록 구성된다. 보다 정밀하게 되도록, 지원되는 분할 패턴들 각각에 대하여 코딩 순서는 결과적인 하나 이상의 분할들(50 및 60) 사이에서 정의된다. 도 1의 경우에, 좌측 부분(50)이 우측 부분(60)에 앞서 코딩되도록 정의하는 코딩 순서가 예시적으로 화살표(70)에 의해 도시된다. 수평 분할 모드의 경우에, 코딩 순서는 상위 분할이 하위 분할 이전에 코딩되도록 정의될 수 있다. 어떤 경우이든, 이러한 병합의 결과, 즉, 사실상 더 낮은 코딩 레이트에서 현재 블록(40)에 대하여 비-분할 모드를 선택함으로써 동등하게 산출될 수 있는, 분할들(50 및 60) 모두가 자신들과 연관된 동일한 코딩 파라미터들을 가지게 되는 사실을 회피하기 위해서, 인코더(10)는, 코딩 순서(70)에서 제 2 분할(60)에 대하여, 각각의 제 2 분할(60)에 대하여 코딩 파라미터 후보들의 세트로부터, 제 1 분할(50)과 연관된 코딩 파라미터들과 동일한 코딩 파라미터들을 가지는 코딩 파라미터 후보들을 제거하도록 구성된다.
보다 정밀하게 되도록, 인코더(10)는 효과적인 방식으로 블록 분할과 함께 블록 병합을 이용하도록 구성된다. 블록 병합이 고려되는 한, 인코더(10)는 각각의 분할(50 및 60)에 대하여 코딩 파라미터 후보들의 각각의 세트를 결정한다. 인코더는 이전에 디코딩된 블록들과 연관되는 코딩 파라미터들에 기초하여 분할들(50 및 60) 각각에 대한 코딩 파라미터 후보들의 세트들을 결정하도록 구성될 수 있다. 특히, 코딩 파라미터 후보들의 세트들 내에 있는 코딩 파라미터 후보들 중 적어도 일부는 이전에 디코딩된 분할들의 코딩 파라미터들과 동일할 수 있으며, 즉, 이전에 디코딩된 분할들의 코딩 파라미터들로부터 채택될 수 있다. 추가적으로 또는 대안적으로, 코딩 파라미터 후보들 중 적어도 일부는, 중앙값(median), 평균(mean) 등과 같은 적절한 조합에 의해, 하나보다 많은 이전에 코딩된 분할과 연관되는 코딩 파라미터 후보들로부터 도출(derive)될 수 있다. 그러나, 인코더(10)는 코딩 파라미터 후보들의 감소된 세트(reduced set)의 결정, 및 하나보다 많은 이러한 코딩 파라미터 후보가 제거 이후에 남아있는 경우에, 하나의 제거되지-않은(non-removed) 또는 선택된 코딩 파라미터 후보에 의존하여 각각의 분할과 연관된 코딩 파라미터들을 설정하기 위해 첫번째가-아닌(non-first) 분할들(60) 각각에 대하여, 남아있는 제거되지-않은 코딩 파라미터 후보들 중에서의 선택의 결정을 수행하도록 구성되기 때문에, 인코더(10)는 분할들(50 및 60)의 재-결합(re-uniting)을, 효과적으로, 이끄는 코딩 파라미터 후보들이 제거되도록 상기 제거를 수행하도록 구성된다. 즉, 유효 분할 위치(effective partitioning situation)가 단지 분할 정보만의 사용에 의해 이러한 분할을 직접 시그널링하는 경우에서보다 더 복잡하게 코딩되게 하는 신택스 배열(syntax constellation)들이 효과적으로 회피된다.
또한, 코딩 파라미터 후보들의 세트들이 더 작아지면서, 병합 정보를 비트스트림(30)으로 인코딩하기 위해 필요한 측면 정보의 양은 이러한 후보 세트들에 있는 더 적은 개수의 엘리먼트들에 기인하여 감소될 수 있다. 특히, 디코더는 도 1의 인코더가 행하는 것과 동일한 방식으로 코딩 파라미터 후보들의 세트들을 결정하고 후속적으로 감소시킬 수 있기 때문에, 도 1의 인코더(10)는 제거되지-않은 코딩 파라미터 후보들 중 어떤 코딩 파라미터 후보가 병합을 위해 사용되는지 규정하는 신택스 엘리먼트(syntax element)를 비트스트림(30)에 삽입하기 위해, 예를 들어, 더 적은 비트들을 사용함으로써 코딩 파라미터 후보들의 감소된 세트들을 사용할 수 있다. 물론, 신택스 엘리먼트를 비트스트림(30)에 삽입하는 것은 각각의 분할에 대한 제거되지-않은 코딩 파라미터 후보들의 개수가 단지 1인 경우에는 완전하게 억제(suppress)될 수 있다. 어떤 경우이든, 병합에 기인하여, 즉, 제거되지-않은 코딩 파라미터 후보들 중 남아있는 코딩 파라미터 후보 또는 선택된 코딩 파라미터 후보에 의존하여 각각의 분할과 연관되는 코딩 파라미터들을 설정하는 것에 기인하여, 인코더(10)는 각각의 분할에 대한 코딩 파라미터들의 비트스트림(30)으로의 완전히 새로운 삽입을 억제할 수 있으며, 그에 의해 또한 측면 정보를 감소시킬 수 있다. 본 출원의 몇몇 실시예들에 따라, 인코더(10)는 각각의 분할들에 대한 코딩 파라미터 후보들 중 남아있는 코딩 파라미터 후보 또는 선택된 코딩 파라미터 후보를 정밀화하기 위한 정밀화 정보(refinement information)를 비트스트림(30) 내에서 신호화하도록 구성될 수 있다.
위에서 설명된 도 1에 대한 기재에 따라, 인코더(10)는 병합 후보들의 코딩 파라미터들과 분할의 코딩 파라미터들의 비교에 의해 제거될 병합 후보들을 결정하도록 구성되며, 이러한 병합은 다른 지원되는 분할 패턴을 산출하게 될 것이다. 코딩 파라미터 후보들을 처리하는 이러한 방식은, 예를 들어, 좌측 분할(50)의 코딩 파라미터들이 우측 분할(60)에 대한 코딩 파라미터 후보들의 세트의 하나의 엘리먼트를 형성하는 경우에, 도 1의 예시적인 경우에서, 효과적으로, 적어도 하나의 코딩 파라미터 후보를 제거하게 될 것이다. 그러나, 추가적인 코딩 파라미터 후보들이 좌측 분할(50)의 코딩 파라미터들과 동일한 경우에 이러한 추가적인 코딩 파라미터 후보들 또한 제거될 수 있다. 그러나, 본 발명의 다른 실시예에 따르면, 인코더(10)는, 각각의 분할과 병합될 때, 지원되는 분할 패턴들 중 하나를 야기하는 후보 블록들의 세트로부터의 후보 블록 또는 후보 블록들을 제거하는 것과 함께, 코딩 순서에서 각각의 제 2 및 후속적 분할에 대한 후보 블록들의 세트를 결정하도록 구성될 수 있다. 어떤 의미에서, 이것은 다음에 말하는 것을 의미한다. 인코더(10)는 각각의 분할(50 또는 60)(즉, 코딩 순서에서 제 1 분할 및 후속하는 분할들)에 대하여 병합 후보들을 결정하도록 구성될 수 있으며, 그 결과 후보 세트의 각각의 엘리먼트는 후보가 연관된 분할의 각각의 코딩 파라미터들을 채택한다는 점에서 그와 연관된, 정확하게 현재 블록(40)의 하나의 분할을 가지거나 또는 이전에 코딩된 블록들(40) 중 임의의 블록을 가지게 된다. 예를 들어, 후보 세트의 각각의 엘리먼트는 이전에 코딩된 분할들의 이러한 코딩 파라미터들 중 하나와 동일할 수 있거나, 즉, 이전에 코딩된 분할들의 이러한 코딩 파라미터들 중 하나로부터 채택될 수 있거나, 또는 적어도 추가적으로 전송된 정밀화 정보를 사용하는 추가적인 스케일링 또는 정밀화에 의하는 것과 같이 단지 하나의 이러한 이전에 코딩된 분할의 코딩 파라미터들로부터 도출될 수 있다. 그러나, 인코더(10)는 또한 추가적인 엘리먼트들 및 후보들, 즉, 하나보다 많은 이전에 코딩된 분할의 코딩 파라미터들의 결합으로부터 도출되었거나, 또는 단지 하나의 모션 파라미터 리스트의 코딩 파라미터들을 취하는 것에 의해서와 같이 하나의 이전에 코딩된 분할의 코딩 파라미터들로부터 - 변경(modification)에 의해 - 도출되었던 코딩 파라미터 후보들을 갖는 이러한 후보 세트를 수반하도록 구성될 수 있다. "결합된(combined)" 엘리먼트들 에 대하여, 각각의 후보 엘리먼트의 코딩 파라미터들과 각각의 분할 간에는 1:1 연관이 존재하지 않는다. 도 1에 대한 설명의 제 1 대안에 따르면, 인코더(10)는 전체 후보 세트의 코딩 파라미터들이 분할(50)의 코딩 파라미터들과 동일한, 이러한 전체 후보 세트로부터 모든 후보들을 제거하도록 구성될 수 있다. 도 1에 대한 설명의 후자의 대안에 따르면, 인코더(10)는 단지 후보(50)와 연관되는 후보 세트의 엘리먼트를 제거하도록 구성될 수 있다. 양쪽 관점(point of view)들 모두를 조화하여, 인코더(10)는 일부(예를 들어, 이웃하는) 이전에 코딩된 분할들에 대한 1:1 연관을 보여주는, 후보 세트의 부분으로부터 후보들을 제거하도록 구성될 수 있지만, 결합에 의해 획득되는 코딩 파라미터들을 갖는 후보 세트의 남아있는 부분에 대한 제거(그리고 동일한 코딩 파라미터들을 갖는 후보들을 탐색)로 확장되지는 않는다. 그러나, 물론 하나의 결합이 리던던트한 표현(representation)을 야기한다면, 이것은 리스트로부터 리던던트한 코딩 파라미터들을 제거함으로써 또는 결합된 후보들에 대하여도 리던던시 체크를 수행함으로써 해결될 수 있다.
본 발명의 일 실시예에 따른 인코더를 설명한 후에, 도 2를 참조하면, 일 실시예에 따른 디코더(80)가 설명된다. 도 2의 디코더(80)는 비트스트림(30)을 디코딩하도록 구성되며, 상기 비트스트림(30)은 위에서 설명된 바와 같이 픽처(20)의 현재 블록(40)에 대하여 지원되는 분할 패턴들 중 하나를 시그널링한다. 디코더(80)는, 지원되는 분할 패턴들 중 시그널링되는 분할 패턴이 현재 블록(40)의 둘 이상의 분할들(50 및 60)로의 서브디비젼을 규정하는 경우에, 코딩 순서(70)에서 분할들 중 제 1 분할(50)을 제외한 모든 분할들에 대하여, 즉, 도 1 및 2의 도시된 예에서 분할(60)에 대하여, 각각의 분할에 대한 코딩 파라미터 후보들의 세트로부터, 각각의 분할과 병합될 때 지원되는 분할 패턴들 중 하나, 즉, 비트스트림(30) 내에서 신호화되었던 분할 패턴은 아니지만, 그럼에도 불구하고, 상기 지원되는 분할 패턴들 중 하나를 야기하는, 상기 분할들 중 임의의 분할과 연관되는 코딩 파라미터들과 동일하거나 또는 동등한 코딩 파라미터들을 갖는 코딩 파라미터 후보들을 제거하도록 구성된다.
즉, 디코더 기능은 대부분 도 1과 관련하여 설명된 인코더의 기능과 부합(coincide)한다. 예를 들어, 디코더(80)는, 제거되지-않은 코딩 파라미터 후보들의 수가 넌-제로(non-zero)이면, 상기 제거되지-않은 파라미터 후보들 중 하나에 의존하여 각각의 분할(60)과 연관되는 코딩 파라미터들을 설정하도록 구성될 수 있다. 예를 들어, 디코더(80)는, 부가적인 정밀화(refinement)와 함께 또는 부가적인 정밀화 없이 그리고/또는 코딩 파라미터들이 참조하는 시간적 거리(temporal distance)에 따른 스케일링과 함께 또는 상기 스케일링 없이, 상기 제거되지-않은 코딩 파라미터 후보들 중 하나와 동일하게 되도록 분할(60)의 코딩 파라미터들을 각각 설정한다. 예를 들어, 제거되지-않은 후보들 중에 병합할 코딩 파라미터 후보는 분할(60)에 대하여 비트스트림(30) 내에서 명시적으로(explicitly) 시그널링되는 기준 픽처 인덱스보다는 자신과 연관되는 다른 기준 픽처 인덱스를 가질 수 있다. 이러한 경우에, 코딩 파라미터 후보들의 코딩 파라미터들은 모션 벡터들을 정의할 수 있고, 각각의 모션 벡터는 각각의 기준 픽처 인덱스와 관련되고, 디코더(80)는 양쪽 기준 픽처 인덱스들 간의 비율(ratio)에 따라 최종적으로 선택된 제거되지-않은 코딩 파라미터 후보의 모션 벡터를 스케일링하도록 구성될 수 있다. 그리하여, 단지-언급된 대안에 따라, 병합에 종속적인(subject to merging) 코딩 파라미터들은 모션 파라미터들을 포함할 것인 반면에, 기준 픽처 인덱스들은 그로부터 분리될 것이다. 그러나, 위에서 지적된 바와 같이, 대안적인 실시예들에 따르면, 기준 픽처 인덱스들은 또한 병합에 종속적인 코딩 파라미터들의 일부일 수 있다.
병합 동작이 인터-예측된 블록들(40)로 한정될 수 있다는 것은 도 1의 인코더 및 도 2의 디코더에 대하여 동등하게 적용된다. 그에 따라, 디코더(80) 및 인코더(10)는 현재 블록(40)에 대한 인트라 및 인터 예측 모드들을 지원하고 단지 현재 블록(40)이 인터 예측 모드에서 코딩되는 경우에 후보들의 병합 및 제거를 수행하도록 구성될 수 있다. 그에 따라, 단지 이러한 인터-예측된 이전에 코딩된 분할들의 코딩/예측 파라미터들이 후보 리스트를 결정/구성하는데 사용될 수 있다.
이미 위에서 논의된 바와 같이, 코딩 파라미터들은 예측 파라미터들일 수 있고 디코더(80)는 각각의 분할에 대한 예측 신호를 도출하기 위하여 분할들(50 및 60)의 예측 파라미터들을 사용하도록 구성될 수 있다. 물론, 인코더(10) 역시 동일한 방식으로 예측 신호의 도출을 수행한다. 그러나, 인코더(10)는 적절한 최적화 관점에서 소정의 최적화를 달성하기 위하여 추가적으로 비트스트림(30) 내의 모든 다른 신택스 엘리먼트들과 함께 예측 파라미터들을 설정한다.
또한, 이미 위에서 설명된 바와 같이, 인코더는 단지 각각의 분할에 대한 제거되지-않은 코딩 파라미터 후보의 수가 1보다 큰 경우에 제거되지-않은 코딩 파라미터 후보에 대한 인덱스를 삽입하도록 구성될 수 있다. 그에 따라, 디코더(80)는, 제거되지-않은 코딩 파라미터 후보들의 수가 1보다 큰 경우에, 예를 들어, 분할(60)에 대한 제거되지-않은 코딩 파라미터 후보들의 수에 의존하여, 단지 비트스트림(30)이 제거되지-않은 코딩 파라미터 후보 중 어떤 코딩 파라미터 후보가 병합을 위해 사용되는지 규정하는 신택스 엘리먼트를 포함한다고 예상(expect)하도록 구성될 수 있다. 그러나, 2보다 더 작은 수를 획득하는 후보 세트의 경우는 일반적으로 결합된 코딩 파라미터들, 즉, 1보다 많은 - 또는 2보다 많은 - 이전에 코딩된 분할들의 코딩 파라미터들의 결합에 의해 도출되는 파라미터들을 사용하여, 위에서 설명된 바와 같이, 후보들의 리스트/세트를 확장시킴으로써 발생하는 것으로부터 배제될 수 있으며, 후보 세트 감소의 실행을 정확하게 하나의 이전에 코딩된 분할의 코딩 파라미터들을 채택함으로써, 또는 그러한 코딩 파라미터들로부터 도출함으로써 획득하였던 후보들에 한정시킬 수 있다. 반대의 경우 또한 가능하며, 즉, 일반적으로 다른 지원되는 분할 패턴을 야기하는 분할의 코딩 파라미터들과 동일한 값을 가지는 모든 코딩 파라미터 후보들을 제거한다.
상기 결정과 관련하여, 디코더(80)는 인코더(10)가 수행하는 것처럼 동작한다. 즉, 디코더(80)는 이전에 디코딩된 분할들과 연관되는 코딩 파라미터들에 기초하여 코딩 순서(70)에서 제 1 분할(50)에 후속하는 분할 또는 분할들에 대하여 코딩 파라미터 후보들의 세트를 결정하도록 구성될 수 있다. 즉, 코딩 순서는 각각의 블록(40)의 분할들(50 및 60) 사이에서 정의될 뿐만 아니라 픽처(20) 자신의 블록들(40) 사이에서 정의된다. 그리하여, 분할(60) 이전에 코딩되었던 모든 분할들은 도 2의 경우에 분할(60)과 같은 후속적인 분할들 중 임의의 분할에 대한 코딩 파라미터 후보들의 세트의 결정을 위한 기초로서 작용할 수 있다. 또한 위에서 설명된 바와 같이, 인코더 및 디코더는 코딩 파라미터 후보들의 세트의 결정을 특정한 공간적으로 그리고/또는 시간적으로 인근에 있는 분할들로 한정시킬 수 있다. 예를 들어, 디코더(80)는 각각의 첫번째가-아닌(non-first) 분할에 인접하는 이전에 디코딩된 분할들과 연관되는 코딩 파라미터들에 기초하여 첫번째가-아닌 분할(60)에 대한 코딩 파라미터 후보들의 세트를 결정하도록 구성될 수 있으며, 그러한 분할들은 현재 블록(40)의 바깥쪽(outside) 및 안쪽(inside)에 존재할 수 있다. 물론, 병합 후보들의 결정은 또한 코딩 순서에서 제 1 분할에 대하여 수행될 수 있다. 단지 제거가 수행되지 않는다.
도 1의 기술과 부합하여, 디코더(80)는 인트라 예측 모드에서 코딩되는 블록들을 배제하고(excluding) 이전에 디코딩된 블록들의 초기(initial) 세트로부터 각각의 첫번째가-아닌 분할(60)에 대한 코딩 파라미터 후보들의 세트를 결정하도록 구성될 수 있다.
또한, 픽처(20)를 블록들(40)로 서브디비져닝하기 위하여 인코더가 서브디비젼 정보를 비트스트림으로 삽입하는 경우에, 디코더(80)는 비트스트림(30) 내에 있는 서브디비젼 정보에 따라 픽처(20)의 그러한 코딩 블록들(40)로의 서브디비젼을 복원(recover)하도록 구성될 수 있다.
도 1 및 도 2와 관련하여, 현재 블록(40)에 대한 잔여(residual) 신호는 코딩 파라미터들과 관련하여 분할들에 의해 정의되는 입도와 상이할 수 있는 입도로 비트스트림(30)을 통해 전송될 수 있다는 것을 유의해야 할 것이다. 예를 들어, 도 1의 인코더(10)는 분할들(50 및 60)로의 분할과 병렬적인 또는 그러한 분할과 독립적인 방식으로 블록(40)을 하나 이상의 변환 블록들로 서브디비져닝하도록 구성될 수 있다. 인코더는 추가적인 서브디비젼 정보에 의해 블록(40)에 대한 각각의 변환 블록 서브디비젼을 신호화할 수 있다. 다음에는, 디코더(80)는 비트스트림 내의 추가적인 서브디비젼 정보에 따라 블록(40)의 하나 이상의 변환 블록들로의 이러한 추가적인 서브디비젼을 복원하고, 이러한 변환 블록 단위(units of blocks)로 비트스트림으로부터 현재 블록(40)의 잔여 신호를 도출하도록 구성될 수 있다. 변환 블록 분할의 중요성(significance)은 인코더에서의, DCT와 같은, 변환 및 디코더에서의 IDCT와 같은 대응하는 역변환이 블록(40)의 각각의 변환 블록 내에서 개별적으로 수행된다는 점일 수 있다. 블록(40)으로서 픽처(20)를 재구성하기 위해, 그 다음에 인코더(10)는 각각의 분할들(50 및 60)에서의 코딩 파라미터들을 적용함으로써 도출되는 예측 신호 및 잔여 신호를 각각, 더하는 것과 같이, 결합한다. 그러나, 잔여물 코딩(residual coding)은 임의의 변환 및 역변환 각각을 수반하지 않을 수 있으며, 예측 잔여물은, 예를 들어, 대신에 공간 도메인에서 코딩된다는 것을 유의하도록 한다.
추가적인 실시예들의 추가적인 가능한 세부사항들을 아래에서 기술하기 전에, 도 1 및 2의 인코더 및 디코더의 가능한 내부 구조가 도 3 및 4와 관련하여 설명되어야 한다. 도 3은 예시적으로 인코더(10)가 어떻게 내부적으로 구성될 수 있는지에 대하여 도시한다. 도시된 바와 같이, 인코더(10)는 뺄셈기(108), 변환기(100) 및, 도 3에 표시되는 바와 같이, 엔트로피 코딩을 수행할 수 있는 비트스트림 생성기(102)를 포함할 수 있다. 엘리먼트들(108, 100 및 102)은 픽처(20)를 수신하는 입력부(112) 및 이전에-언급된 비트스트림(30)을 출력하는 출력부(114) 사이에 직렬적으로 연결된다. 특히, 뺄셈기(108)는 입력부(112)에 연결된 자신의 넌-인버팅(non-inverting) 입력을 가지며, 변환기(100)는 뺄셈기(108)의 출력 및 비트스트림 생성기(102)의 제 1 입력 사이에 연결되고, 다음으로 비트스트림 생성기(102)는 출력부(114)로 연결된 출력을 가진다. 도 3의 인코더(10)는 역변환기(104) 및 덧셈기(110)를 더 포함하며, 역변환기(104) 및 덧셈기(110)는, 언급된 순서로, 변환기(100)의 출력에 직렬적으로 연결된다. 인코더(10)는 또한 예측기(106)를 더 포함하며, 예측기(106)는 덧셈기(100)의 출력 및 덧셈기(110)의 추가 입력과 뺄셈기(108)의 인버팅 입력 사이에 연결된다.
도 3의 엘리먼트들은 다음과 같이 상호작용한다: 예측기(106)는 뺄셈기(108)의 인버팅 입력으로 적용되는 예측의 결과, 즉, 예측 신호를 통해 픽처(20)의 부분들을 예측한다. 다음으로, 뺄셈기(108)의 출력은 예측 신호와 픽처(20)의 각각의 부분 간의 차이, 즉, 잔여 신호를 나타낸다. 잔여 신호는 변환기(100)의 변환 코딩에 종속적이다. 즉, 변환기(100)는 변환 계수 레벨들을 획득하기 위하여, DCT 등과 같은, 변환 및 변환된 잔여 신호, 즉, 변환 계수들에 대한 후속적인 양자화를 수행할 수 있다. 역변환기(104)는 변환기(100)에서의 양자화에 기인한 정보 손실을 제외하고 변환기(100)로 입력된 잔여 신호에 대응하는 재구성된 잔여 신호를 획득하기 위해 변환기(100)에 의해 출력된 최종 잔여 신호를 재구성한다. 재구성된 잔여 신호 및 예측기(106)에 의해 출력된 예측 신호의 덧셈은 픽처(20)의 각각의 부분의 재구성을 야기하며 덧셈기(110)의 출력으로부터 예측기(106)의 입력으로 포워딩된다. 예측기(106)는 위에서 설명된 바와 같이, 인트라 예측 모드, 인터 예측 모드 등과 같은 상이한 모드들에서 동작한다. 예측 신호를 획득하기 위하여 예측기(106)에 의해 적용되는 예측 모드 및 대응하는 코딩 또는 예측 파라미터들은 비트스트림으로의 삽입을 위해 예측기(106)에 의해 엔트로피 인코더(102)로 포워딩된다.
인코더와 관련하여 도 3에 도시된 가능성에 대응하는, 도 2의 디코더(80)의 내부 구조의 가능한 구현이 도 4에 도시된다. 거기에 도시된 바와 같이, 디코더(80)는, 도 4에 도시된 바와 같이, 엔트로피 디코더로서 구현될 수 있는 비트스트림 추출기(150), 역변환기(152) 및 덧셈기(154)를 포함할 수 있으며, 이들은 언급된 순서로 디코더의 입력부(158) 및 출력부(160) 사이에서 연결된다. 또한, 도 4의 디코더는 덧셈기(154)의 출력 및 덧셈기(154)의 추가 입력 사이에 연결되는 예측기(156)를 포함한다. 엔트로피 디코더(150)는 예측기(156)의 파라미터 입력에 연결된다.
도 4의 디코더의 기능을 간략하게 기술하면, 엔트로피 디코더(150)는 비트스트림(30)에 포함된 모든 정보를 추출하기 위한 것이다. 이용되는 엔트로피 코딩 방식은 가변 길이 코딩 또는 산술 코딩일 수 있다. 이에 의하여, 엔트로피 디코더(150)는 비트스트림으로부터 잔여 신호를 나타내는 변환 계수 레벨들을 복원하고 이들을 역변환기(152)로 포워딩한다. 또한, 엔트로피 디코더(150)는 비트스트림으로부터 모든 코딩 모드들 및 연관되는 코딩 파라미터들을 복원하고 이들을 예측기(156)로 포워딩한다. 추가적으로, 분할 정보 및 병합 정보가 추출기(150)에 의해 비트스트림으로부터 추출된다. 역변환된, 즉, 재구성된 잔여 신호 및 예측기(156)에 의해 도출된 예측 신호는 덧셈기(154)에 의해, 더해지는 것과 같이, 결합되며, 다음으로 덧셈기(154)는 출력부(160)로 이러한-복원된 재구성된 신호를 출력하고 이러한-복원된 재구성된 신호를 예측기(156)로 포워딩한다.
도 3 및 4의 비교로부터 명백해지는 바와 같이, 엘리먼트들(152, 154 및 156)은 기능적으로 도 3의 엘리먼트들(104, 110 및 106)과 대응한다.
도 1 내지 4에 대한 위에서의 기술에서, 코딩 픽처(20)에 수반되는 파라미터들 중 일부를 가변시키는데 있어서 픽처(20)의 가능한 서브디비젼들 및 대응하는 입도와 관련하여 여러가지 상이한 가능성들이 제시되었다. 하나의 이러한 가능성은 도 5a 및 도 5b와 관련하여 다시 설명된다. 도 5a는 픽처(20) 중에서 일부를 도시한다. 도 5a의 실시예에 따르면, 인코더 및 디코더는 먼저 픽처(20)를 트리-루트(tree-root) 블록들(200)로 서브-디비져닝하도록 구성된다. 하나의 이러한 트리-루트 블록이 도 5a에 도시되어 있다. 픽처(20)의 트리-루트 블록들로의 서브디비젼은 점선들에 의해 도시되는 바와 같이 행들 및 열들에서 규칙적으로 이루어진다. 트리-루트 블록들(200)의 크기는 인코더에 의해 선택되고 비트스트림(30)에 의해 디코더로 시그널링될 수 있다. 대안적으로, 이러한 트리-루트 블록들(200)의 크기는 디폴트로 고정될 수 있다. 트리-루트 블록들(200)은 코딩 블록들 또는 코딩 유닛들로 지칭될 수 있는 위에서-식별된 블록들(40)을 산출(yield)하기 위해서 쿼드-트리 분할의 이용에 의해 서브-디비져닝된다. 이러한 코딩 블록들 또는 코딩 유닛들은 도 5a에서 얇은 실선들에 의해 그려진다. 이에 의해, 인코더는 각각의 트리-루트 블록(200)에 서브디비젼 정보를 수반시키고 상기 서브디비젼 정보를 비트스트림으로 삽입시킨다. 이러한 서브디비젼 정보는 트리-루트 블록(200)이 블록들(40)로 어떻게 서브-디비져닝되어야 하는지에 관하여 표시한다. 이러한 블록들(40)의 입도에서, 그리고 이러한 블록들(40)의 단위로, 예측 모드는 픽처(20) 내에서 가변된다. 위에서 표시된 바와 같이, 각각의 블록(40) - 인터 예측 모드와 같은 특정 예측 모드를 갖는 각각의 블록 - 에는 어떤 지원되는 분할 패턴이 각각의 블록(40)에 대하여 사용되는지에 관한 분할 정보가 수반된다. 도 5a의 예시적인 경우에서, 많은 코딩 블록들(40)에 대하여, 코딩 블록(40)이 공간적으로 대응하는 분할과 부합하도록 비-분할 모드가 선택되었다. 다시 말하면, 코딩 블록(40)은, 동시적으로, 자신과 연관되는 예측 파라미터들의 각각의 세트를 갖는 분할이다. 다음으로, 예측 파라미터들의 분류는 각각의 코딩 블록(40)과 연관되는 모드에 의존한다. 그러나, 추가적으로 분할될 다른 코딩 블록들이 예시적으로 도시된다. 예를 들어, 트리-루트 블록(200)의 상부 우측 코너에 있는 코딩 블록(40)은 4개의 분할들로 분할되도록 도시되는 반면에, 트리-루트 블록(200)의 하부 우측 코너에 있는 코딩 블록은 2개의 분할들로 수직적으로 서브-디비져닝되도록 예시적으로 도시된다. 분할들로 분할하기 위한 서브디비젼은 점선들에 의해 도시된다. 도 5a는 또한 분할들 간의 그리하여 정의된 코딩 순서를 도시한다. 도시된 바와 같이, 깊이-우선 횡단 순서(depth-first traversal order)가 이용된다. 트리-루트 블록 경계들을 가로질러, 코딩 순서는 트리-루트 블록들(200)의 행들이 픽처(20)의 상부로부터 하부로 로우-와이즈(row-wise)로 스캐닝되는 스캔 순서로 계속될 수 있다. 이러한 측정에 의해, 특정 분할이 자신의 상부 경계 및 좌측 경계에 인접한 이전에 코딩된 분할을 가지게 되는 최대 가능성을 가지도록 하는 것이 가능해진다. 각각의 블록(40) - 인터 예측 모드와 같은 특정 예측 모드를 갖는 각각의 블록 - 은 병합이 거기에 있는 대응하는 분할들에 대하여 활성화(activate)되는지 여부에 대하여 표시하는 비트스트림 내의 병합 스위치 표시자를 가질 수 있다. 블록들의 분할들/예측 유닛들로의 분할은 단지 블록들(40)의 가장 작은 가능한 블록 크기에 대하여만 적용되는 이러한 규칙의 예외를 가질 뿐 최대 2개의 분할들로의 분할로 한정될 수 있다는 것을 유의해야 할 것이다. 블록들(40)을 획득하기 위하여 쿼드-트리 서브디비젼을 사용하는 경우에, 이것은 픽처(20)를 블록(40)으로 서브디비져닝하기 위한 서브디비젼 정보 및 블록(40)을 분할들로 서브디비져닝하기 위한 분할 정보 간의 리던던시를 회피할 수 있다. 대안적으로, 비대칭적 분할들을 포함하거나 또는 포함하지 않는, 단지 하나 또는 두 개의 분할들로 분할하는 것이 허용될 수 있다.
도 5b는 서브디비젼 트리를 도시한다. 실선들을 통해, 트리-루트 블록(200)의 서브디비젼이 도시되는 반면에, 점선들은 쿼드-트리 서브디비져닝의 리프 블록들의 분할을 나타내며, 이들 블록들은 코딩 블록들(40)이다. 즉, 코딩 블록들의 분할은 일종의 쿼드-서브디비젼의 확장을 나타낸다.
이미 위에서 논의된 바와 같이, 변환 블록들이 각각의 코딩 블록(40)의 상이한 서브디비젼을 나타낼 수 있도록 각각의 코딩 블록(40)은 병렬적으로 변환 블록들로 서브디비져닝될 수 있다. 코딩 블록들의 잔여 신호를 변환하기 위하여, 도 5a 및 도 5b에 도시되지 않은, 이러한 변환 블록들 각각으로의 변환은 개별적으로 수행될 수 있다.
다음에서, 본 발명의 추가적인 실시예들이 설명된다. 위에서의 실시예들이 한편으로 블록 병합 및 다른 한편으로 블록 분할 간의 관계에 집중하였던 반면에, 다음의 설명은 또한 SKIP/DIRECT 모드들과 같은 현재의 코덱들에서 알려져 있는 다른 코딩 원리들과 관련되는 본 출원의 양상들을 포함한다. 그럼에도 불구하고, 후속하는 설명이 단지 개별적인 실시예들, 즉, 위에서 설명된 실시예들과 별개의 실시예들을 설명하는 것으로서 간주되어서는 안된다. 오히려, 아래의 설명은 또한 위에서 설명된 실시예들에 대한 가능한 구현 세부사항들을 드러낸다. 그에 따라, 아래의 설명은 위에서 이미 설명된 도면들의 참조 부호들을 사용하며, 그 결과 아래에서 설명되는 각각의 가능한 구현이 또한 위에서 설명된 실시예들의 가능한 변형들을 정의하여야 한다. 이러한 변형들 대부분은 개별적으로 위에서의 실시예들로 이전될 수 있다.
다시 말하면, 본 출원의 실시예들은 연관된 코딩 파라미터들을 전송하고자 하는 목적으로, 샘플들, 즉, 블록들의 특정한 세트들과 연관되는 신택스 엘리먼트들을 병합함으로써 이미지 및 비디오 코딩 애플리케이션들에서 측면 정보 레이트를 감소시키기 위한 방법들을 설명한다. 본 출원의 실시예들은 특히 신택스 엘리먼트들과 픽처의 부분들의 다양한 분할 패턴들로의 분할과의 결합 및, 코딩 파라미터들이 현재 블록의 공간적으로 그리고/또는 시간적으로 인근에 있는 블록으로부터 추론(infer)되는, SKIP/DIRECT 모드들과의 결합을 고려할 수 있다. 그러한 한, 위에서 설명된 실시예들은 상이한 분할 패턴들 및 SKIP/DIRECT 모드들과 협력하여 샘플들, 즉, 블록들의 세트들에 대하여 병합을 구현하도록 수정될 수 있다.
또한, 이러한 변형들 및 추가적인 세부사항들을 설명하기 전에, 픽처 및 비디오 코덱들에 대한 개관이 제시된다.
이미지 및 비디오 코딩 애플리케이션들에서, 픽처와 연관되는 샘플 어레이(array)들은 통상적으로 샘플들의 특정한 세트들(또는 샘플 세트들)로 분할되며, 이러한 샘플 세트들은 직사각형 또는 2차(quadratic) 블록들 또는 임의적으로 형상화된(shaped) 영역들, 삼각형들 또는 임의의 다른 형상들을 포함하는 샘플들의 임의의 다른 컬렉션(collection)을 나타낼 수 있다. 샘플 어레이들의 서브디비젼은 신택스에 의해 고정될 수 있거나 또는 상기 서브디비젼은 (적어도 부분적으로) 비트스트림 내에서 시그널링된다. 서브디비젼 정보를 시그널링하기 위한 측면 정보 레이트를 작게 유지하기 위해서, 신택스는 통상적으로 블록들의 더 작은 블록들로의 서브디비젼과 같은 간단한 분할을 야기하는 오직 제한된 개수의 선택들만을 허용한다. 종종 사용되는 분할 방식은 정사각형 블록을 4개의 더 작은 정사각형 블록들로, 또는 동일한 크기의 2개의 직사각형 블록들로, 또는 상이한 크기들의 2개의 직사각형 블록들로 분할하는 것이며, 실제적으로 사용되는 분할은 비트스트림 내에서 시그널링된다. 샘플 세트들은 특정한 코딩 파라미터들과 연관되며, 상기 코딩 파라미터들은 예측 정보 또는 잔여 코딩 모드들 등을 규정할 수 있다. 비디오 코딩 애플리케이션들에서, 분할은 종종 모션 표현의 목적으로 수행된다. (분할 패턴 내부에서) 블록의 모든 샘플들은 동일한 세트의 모션 파라미터들과 연관되며, 상기 모션 파라미터들은 예측의 타입을 규정하는 파라미터들(예를 들어, 리스트 0, 리스트 1, 또는 양방향-예측(bi-prediction); 및/또는 번역적(translational) 또는 아핀(affine) 예측 또는 상이한 모션 모델을 통한 예측), 사용되는 기준 픽처들을 규정하는 파라미터들, 통상적으로 예측기로 차이로서 전송되는, 기준 픽처들과 관련하여 모션을 규정하는 파라미터들(예를 들어, 변위(displacement) 벡터들, 아핀 모션 파라미터 벡터들, 또는 임의의 다른 모션 모델을 위한 모션 파라미터 벡터들), 모션 파라미터들의 정확도(accuracy)(예를 들어, 절반(half)-샘플 또는 쿼터(quarter)-샘플 정확도)를 규정하는 파라미터들, (예를 들어, 조명 보상(illumination compensation)의 목적을 위한) 기준 샘플 신호의 가중치를 규정하는 파라미터들, 또는 현재 블록의 모션 보상된 예측 신호를 도출하기 위해 사용되는 보간 필터를 규정하는 파라미터들을 포함할 수 있다. 각각의 샘플 세트에 대하여, (예를 들어, 예측 및/또는 잔여물 코딩을 규정하기 위한) 개별적인 코딩 파라미터들이 전송된다고 가정된다. 향상된 코딩 효율을 달성하기 위하여, 본 발명은 둘 이상의 샘플 세트들을 소위 샘플 세트들의 그룹들로 병합하기 위한 방법 및 특정한 실시예들을 제시한다. 이러한 그룹의 모든 샘플 세트들은 동일한 코딩 파라미터들을 공유하며, 상기 코딩 파라미터들은 상기 그룹 내의 샘플 세트들 중 하나의 샘플 세트와 함께 전송될 수 있다. 그렇게 함으로써, 코딩 파라미터들은 샘플 세트들의 상기 그룹의 각각의 샘플 세트에 대하여 개별적으로 전송될 필요가 없으며, 대신에 코딩 파라미터들은 샘플 세트들의 전체 그룹에 대하여 단지 한번 전송된다. 그 결과, 코딩 파라미터들을 전송하기 위한 측면 정보 레이트는 감소되며 전체 코딩 효율은 향상된다. 대안적으로 접근으로서, 코딩 파라미터들 중 하나 이상에 대한 추가적인 정밀화는 샘플 세트들의 그룹의 샘플 세트들 중 하나 이상의 샘플 세트에 대하여 전송될 수 있다. 상기 정밀화는 그룹의 모든 샘플 세트들로 적용될 수 있거나 또는 샘플 세트에 대하여 상기 정밀화가 전송되는 상기 샘플 세트에 대하여만 적용될 수 있다.
본 발명의 실시예들은 특히 (위에서 언급된 바와 같이) 블록의 다양한 서브-블록들(50, 60)로의 분할과 병합 프로세스의 결합을 고려한다. 통상적으로, 이미지 또는 비디오 코딩 시스템들은 블록(40)에 대하여 다양한 분할 패턴들을 지원한다. 일례로서, 정사각형 블록은 분할되지 않을 수 있거나, 또는 정사각형 블록은 동일한 크기의 4개의 정사각형 블록들로 또는 동일한 크기의 2개의 직사각형 블록들로(여기서 정사각형 블록은 수직적으로 또는 수평적으로 분할될 수 있음), 또는 (수평적으로 또는 수직적으로) 상이한 크기들의 직사각형 블록들로 분할될 수 있다. 설명된 예시적인 분할 패턴들은 도 6에 도시되어 있다. 위에서의 설명에 부가하여, 분할은 하나보다 많은 레벨의 분할조차 포함할 수 있다. 예를 들어, 직사각형 서브-블록들은 또한 선택적으로 동일한 분할 패턴들을 사용하여 추가적으로 분할될 수 있다. 이러한 분할 프로세스가 (정사각형 또는 직사각형) 블록과, 예를 들어, 상기 블록의 이웃 블록들 중 하나와의 병합을 허용하는 병합 프로세스와 결합될 때 발생하는 문제는 분할 패턴들 및 병합 신호들의 상이한 결합들에 의해 동일한 결과적인 분할이 달성될 수 있다는 것이다. 그리하여, 동일한 정보가 상이한 코드워드들을 사용하여 비트스트림에서 전송될 수 있으며, 이는 명백하게 코딩 효율과 관련하여 차선적(sub-optimal)이다. 간단한 예로서, (도 6의 상부-좌측 코너에 도시되어 있는) 추가적으로 분할되지 않은 정사각형 블록을 고려하도록 한다. 이러한 분할은 이러한 블록(40)이 서브디비져닝되지 않는다는 신택스 엘리먼트를 전송함으로써 직접 시그널링될 수 있다. 그러나, 동일한 패턴이 또한 이러한 블록이, 예를 들어, 2개의 수직적으로(또는 수평적으로) 정렬된 직사각형 블록들(50, 60)로 서브디비져닝됨을 규정하는 신택스 엘리먼트를 전송함으로써 시그널링될 수 있다. 그 다음에 이러한 직사각형 블록들의 제 2 직사각형 블록이 제 1 직사각형 블록과 병합됨을 규정하는 병합 정보를 전송할 수 있으며, 이는 상기 블록이 추가적으로 분할되지 않는다고 시그널링할 때와 정확하게 동일한 분할을 야기하게 된다. 또한, 먼저 상기 블록이 4개의 직사각형 서브-블록들로 서브디비져닝됨을 규정하고 그 다음에 모든 이러한 4개의 블록들을 유효하게 병합하는 병합 정보를 전송함으로써 동일한 패턴이 달성될 수 있다. (동일한 것을 시그널링하기 위하여 상이한 코드워드들을 사용하게 되기 때문에) 이러한 개념은 명백하게 차선적이다.
본 발명의 실시예들은 블록에 대하여 상이한 분할 패턴들을 제공하는 개념과 병합의 개념의 결합에 대하여 측면 정보 레이트를 감소시키고 그리하여 코딩 효율을 증가시키기 위한 개념 및 가능성들을 설명한다. 도 6의 예시적인 분할 패턴들을 보면, 직사각형 블록이 제 1 직사각형 블록과 병합되는 경우를 허용하지 않을 때(즉, 비트스트림 신택스 규격(specification)에서 배제할 때) 2개의 직사각형 블록들과 함께 분할 패턴들 중 임의의 분할 패턴에 의한 추가적으로 분할되지 않는 블록의 "시뮬레이션"이 회피될 수 있다. 상기 문제를 보다 깊게 바라보면, 제 1 직사각형 블록에 대한 것과 동일한 파라미터들(예를 들어, 예측을 규정하기 위한 정보)과 연관되는 임의의 다른 이웃(즉, 제 1 직사각형 블록이 아닌 블록)과 제 2 직사각형 블록을 병합함으로써 서브디비져닝되지 않은 패턴을 "시뮬레이션"하는 것이 또한 가능하다. 본 발명의 실시예들은 특정한 병합 파라미터들이 지원되는 분할 패턴들 중 하나를 시그널링함으로써 또한 달성될 수 있는 패턴을 야기할 때 상기 특정한 병합 파라미터들의 전송을 비트스트림 신택스로부터 배제하는 방식으로 병합 정보의 전송을 조절한다. 일례로서, 예컨대 제 2 블록, 즉, 도 1 및 2의 경우에 60에 대한 병합 정보를 전송하기 전에, 도 1 및 2에 도시된 바와 같이, 현재의 분할 패턴이 2개의 직사각형 블록들로의 서브디비젼을 규정하는 경우에, 가능한 병합 후보들 중 어떤 것이 제 1 직사각형 블록, 즉, 도 1 및 2의 경우에 50과 동일한 파라미터들(예를 들어, 예측 신호를 규정하기 위한 파라미터들)을 가지는지 체크될 수 있다. 그리고 (제 1 직사각형 블록 자신을 포함하는) 동일한 모션 파라미터들을 가지는 모든 후보들이 병합 후보들의 세트로부터 제거된다. 병합 정보를 시그널링하기 위해 전송되는 코드워드들 또는 플래그(flag)들은 결과적인 후보 세트로 적응된다. 상기 후보 세트가 파라미터 체크에 기인하여 비게(empty) 되면, 병합 정보는 전송되지 않는다. 상기 후보 세트가 단지 하나의 엔트리로 구성되면, 오직 상기 블록이 병합되는지 여부가 시그널링되며, 후보는 디코더 측 등에서 도출될 수 있기 때문에 상기 후보는 시그널링될 필요가 없다. 위의 예에 대하여, 동일한 개념이 또한 정사각형 블록을 4개의 더 작은 정사각형 블록들로 분할하는 분할 패턴에 이용된다. 여기에서, 서브디비젼이 없음을 규정하는 분할 패턴뿐만 아니라 동일한 크기의 2개의 직사각형 블록들로의 서브디비젼을 규정하는 2개의 분할 패턴들 중 어떤 것도 병합 플래그들의 결합에 의해 달성될 수 없는 방식으로 병합 플래그들의 전송이 적응된다. 특정한 분할 패턴들을 통해 위의 예에서 상기 개념을 대부분 설명하였음에도 불구하고, (다른 분할 패턴 및 대응하는 병합 정보의 결합에 의해 특정 분할 패턴의 규격을 회피하는) 동일한 개념이 분할 패턴들의 임의의 다른 세트에 대하여 이용될 수 있다는 점은 명백해야 할 것이다.
오직 분할만이 허용되는 개념과 관련하여 설명된 발명의 장점은 픽처의 (예를 들어, 예측 신호를 규정하기 위한) 동일한 파라미터들과 연관되는 부분들로의 분할을 시그널링하는데 있어 훨씬 큰 자유성이 제공된다는 점이다. 일례로서, 정사각형 블록들의 병합으로부터 서브디비져닝된 더 큰 블록의 병합을 야기하는 추가적인 분할 패턴들이 도 7에 도시되어 있다. 그러나, (이전에 서브디비져닝된 블록의 바깥쪽에 있는) 추가적인 이웃 블록들과의 병합에 의해 훨씬 많은 결과적인 패턴들이 달성될 수 있다는 것을 유의해야 할 것이다. 분할 및 병합 정보를 시그널링하기 위한 오직 몇 개의 코드워드들을 통해, 다양한 분할 가능성들이 제공되며 인코더는 (예를 들어, 특정 레이트-왜곡 측정치를 최소화함으로써) 레이트-왜곡 관점에서 (주어진 인코더 복잡도를 위한) 최상의 옵션을 선택할 수 있다. 오직 하나의 분할 패턴(예를 들어, 동일한 크기의 4개의 블록들로의 서브디비젼)이 상기 병합 접근 방식과 협력하여 제공되는 접근 방식과 비교되는 장점은 (예를 들어, 상이한 크기들의 직사각형 형상들과 같은) 종종 사용되는 패턴들이 여러 개의 서브디비젼 및 병합 플래그들 대신에 짧은 코드워드에 의해 시그널링될 수 있다는 점이다.
고려될 필요가 있는 다른 양상은 병합 개념이 어떤 의미에서 비디오 코딩 설계들에서 발견되는 SKIP 또는 DIRECT 모드들과 유사하다는 것이다. SKIP/DIRECT 모드들에서, 기본적으로 현재 블록에 대하여 모션 파라미터들은 전송되지 않지만 공간적으로 그리고/또는 시간적으로 인근에 있는 블록으로부터 추론된다. SKIP/DIECT 모드들의 특정한 효율적인 개념에서, 모션 파라미터 후보들(기준 프레임 인덱스들, 변위 벡터들 등)의 리스트가 공간적으로 그리고/또는 시간적으로 인근에 있는 이웃으로부터 생성되며 후보 파라미터들 중 어떤 것이 선택되는지를 규정하는 이러한 리스트로의 인덱스가 전송된다. 양방향-예측된(bi-predicted) 블록들(또는 다중-가설(multi-hypothesis) 프레임들)에 대하여, 개별적인 후보가 각각의 기준 리스트에 대하여 시그널링될 수 있다. 가능한 후보들은 현재 블록의 상부에 대한 블록, 현재 블록의 좌측에 대한 블록, 현재 블록의 상부-좌측에 대한 블록, 현재 블록의 상부-우측에 대한 블록, 다양한 이러한 후보들의 중앙값(median) 예측자, 하나 이상의 이전의 기준 프레임들에 있는 함께-위치된(co-located) 블록(또는 임의의 다른 이미 코딩된 블록, 또는 이미 코딩된 블록들로부터 획득된 결합)을 포함할 수 있다. 병합 개념과 SKIP/DIRECT 모드를 결합할 때, SKIP/DIRECT 모드와 병합 모드 모두가 동일한 후보들을 포함하지 않아야 하는 것이 보장되어야 한다. 이것은 상이한 구성들에 의해 달성될 수 있다. 오직 특정한 블록들(예를 들어, 규정된 크기보다 큰 크기를 가지는 블록들, 또는 오직 정사각형 블록들 등)에 대하여만 (예를 들어, 병합 모드보다 더 많은 후보들을 가지는) SKIP/DIRECT 모드를 인에이블(enable)시키고 이러한 블록들에 대하여 병합 모드를 지원하지 않도록 하는 것이 가능하다. 또는, SKIP/DIRECT 모드가 제거될 수 있고 (공간적/시간적으로 이웃하는 블록들에 대한 파라미터들의 결합을 나타내는 파라미터들을 포함하는) 모든 후보들이 후보들로서 병합 모드에 추가된다. 이러한 옵션은 또한 도 1-5와 관련하여 위에서 언급되었다. 증가된 후보 세트는 오직 특정 블록들(주어진 최소 크기들보다 큰 크기를 가지는 블록들, 또는 정사각형 블록들 등)에 대하여만 사용될 수 있으며, 다른 블록들에 대하여는 감소된 후보 세트가 사용된다. 또는, 추가적인 변형으로서, 병합 모드가 감소된 후보 세트(예를 들어, 오직 상부 및 좌측의 이웃)와 함께 사용되고 추가적인 후보들(예를 들어, 상부-좌측 모드, 함께-위치된 블록 등)이 SKIP/DIRECT 모드에 대하여 사용된다. 또한, 이러한 구성들에서, SKIP/DIRECT 모드들이 오직 특정한 블록들(주어진 최소 크기들보다 큰 크기를 가지는 블록들, 또는 정사각형 블록들 등)에 대하여만 허용될 수 있는 반면에, 병합 모드는 블록들의 더 큰 세트에 대하여 허용된다. 이러한 결합들의 장점은 (예를 들어, 예측을 규정하기 위한) 이미 전송된 파라미터들의 재-사용을 시그널링하기 위한 다수의 옵션들이 상이한 블록 크기들에 대하여 제공된다는 점이다. 일례로서, 여기에서 추가적으로 소비된 비트 레이트가 레이트-왜곡 효율의 증가를 제공하기 때문에, 더 큰 정사각형 블록들에 대하여 더 많은 옵션들이 제공된다. 더 작은 블록들에 대하여는, 옵션들의 더 작은 세트가 제공된다. 여기에서 후보 세트의 증가는 선택된 후보를 시그널링하는데 필요한 비트 당 샘플들의 작은 비율에 기인하여 레이트-왜곡 효율에서의 임의의 이득들을 가져오지는 않는다.
위에서 언급된 바와 같이, 병합 접근 방식은 픽처의 샘플 어레이들에 대한 분할을 선택하기 위한 가능성들의 개수를 상당하게 증가시키기 때문에, 본 발명의 실시예들은 또한 비트스트림을 생성하기 위해 더 큰 자유성을 갖는 인코더를 제공한다. 상기 인코더는, 예를 들어, 특정 레이트-왜곡 측정치를 최소화하기 위해 더 많은 옵션들 사이에서 선택할 수 있기 때문에, 코딩 효율이 향상될 수 있다. 일례로서, 서브-분할 및 병합의 결합에 의해 표현될 수 있는 추가적인 패턴들 중 일부(예를 들어, 도 7의 패턴들)는 (모션 추정 및 모드 결정을 위해 대응하는 블록 크기들을 이용하여) 추가적으로 테스트될 수 있으며, 순전히 분할에 의해(도 6) 그리고 분할 및 병합에 의해(도 7) 제공되는 패턴들 중 최상의 패턴이 특정 레이트-왜곡 측정치에 기초하여 선택될 수 있다. 또한 각각의 블록에 대하여 이미 코딩된 후보 세트들 중 임의의 것과의 병합이 특정 레이트-왜곡 측정치에서의 감소를 산출하게 되는지 여부가 테스트될 수 있으며 그 다음에 대응하는 병합 플래그들이 인코딩 프로세스 동안 설정된다. 요약하면, 인코더를 동작시키기 위한 여러가지 가능성들이 존재한다. 간단한 접근에서, 인코더는 먼저 (최근의(state-of-the-art) 코딩 방식들에서와 같이) 샘플 어레이들의 최상의 서브디비젼을 결정할 수 있다. 그리고 그 다음에 인코더는 각각의 샘플 세트에 대하여 다른 샘플 세트 또는 샘플 세트들의 다른 그룹과의 병합이 특정 레이트-왜곡 비용 측정치를 감소시키는지 여부를 체크할 수 있다. 여기에서, 샘플 세트들의 병합된 그룹과 연관되는 예측 파라미터들이 (예를 들어, 새로운 모션 탐색을 수행함으로써) 재-추정될 수 있거나 또는 현재의 샘플 세트 및 병합을 위한 후보 샘플 세트(또는 샘플 세트들의 그룹)에 대하여 이미 결정된 예측 파라미터들이 샘플 세트들의 고려되는 그룹에 대하여 평가될 수 있다. 보다 광범위한 접근에서, 특정 레이트-왜곡 비용 측정치는 샘플 세트들의 추가적인 후보 그룹들에 대하여 평가될 수 있다. 특정한 예로서, 다양한 가능한 분할 패턴들을 테스트할 때(예를 들어, 도 6 참조), 분할 및 병합의 결합에 의해 표현될 수 있는 패턴의 일부 또는 전부(예를 들어, 도 7 참조)가 추가적으로 테스트될 수 있으며, 즉, 패턴들 모두에 대하여 특정한 모션 추정 및 모드 결정 프로세스가 수행되고 가장 작은 레이트-왜곡 측정치를 산출하는 패턴이 선택된다. 이러한 프로세스는 또한 위에서 설명된 저 복잡도 프로세스와 결합될 수 있으며, 그 결과 결과적인 블록들에 대하여 (예를 들어, 도 6 및 7의 패턴들 바깥쪽에 있는) 이미 코딩된 블록들과의 병합이 레이트-왜곡 측정치에서의 감소를 산출하는지 여부가 추가적으로 테스트된다.
다음에서는, 위에서 요약된 실시예들에 대한 몇몇 가능한 세부적인 구현이 설명되며, 예컨대 도 1 및 3의 인코더들 및 도 2 및 4의 디코더들에 대하여 설명된다. 위에서 이미 논의된 바와 같이, 이미지 및 비디오 코딩에서 동일한 것이 사용가능하다. 위에서 설명된 바와 같이, 픽처들 또는 픽처들에 대한 샘플 어레이들의 특정 세트들이 블록들로 분해(decompose)될 수 있으며, 상기 블록들은 특정한 코딩 파라미터들과 연관된다. 상기 픽처들은 통상적으로 다수의 샘플 어레이들로 구성된다. 추가적으로, 픽처는 또한 추가적인 보조(auxiliary) 샘플들 어레이들과 연관될 수 있으며, 상기 보조 샘플들 어레이들은, 예를 들어, 투명성(transparency) 정보 또는 깊이 맵(depth map)들을 규정할 수 있다. (보조 샘플 어레이들을 포함하는) 픽처의 샘플 어레이들은 하나 이상의 소위 플레인(plane) 그룹들로 그룹화될 수 있으며, 각각의 플레인 그룹은 하나 이상의 샘플 어레이들로 구성된다. 픽처의 플레인 그룹들은 독립적으로 코딩될 수 있거나, 또는 픽처가 하나보다 많은 플레인 그룹과 연관되는 경우에는 동일한 픽처의 다른 플레인 그룹들로부터의 예측과 함께 코딩될 수 있다. 각각의 플레인 그룹은 통상적으로 블록들로 분해된다. 상기 블록들(또는 샘플 어레이들의 대응하는 블록들)은 인터-픽처 예측 또는 인트라-픽처 예측에 의해 예측된다. 상기 블록들은 상이한 크기들을 가질 수 있으며 2차적(quadratic) 또는 직사각형일 수 있다. 픽처의 블록들로의 분할은 신택스에 의해 고정될 수 있거나, 또는 (적어도 부분적으로) 비트스트림 내에서 시그널링될 수 있다. 종종 미리 정의된 크기들의 블록들에 대한 서브디비젼을 시그널링하는 신택스 엘리먼트들이 전송된다. 이러한 신택스 엘리먼트들은, 예를 들어, 예측하기 위한 목적으로, 블록이 더 작은 블록들로 서브디비져닝되고 코딩 파라미터들과 연관되는지 여부 그리고 블록이 어떻게 더 작은 블록들로 서브디비져닝되고 코딩 파라미터들과 연관되는지를 규정할 수 있다. 가능한 분할 패턴들의 일례는 도 6에 도시되어 있다. 블록(또는 샘플 어레이들의 대응하는 블록들)의 모든 샘플들에 대하여, 연관된 코딩 파라미터들의 디코딩은 특정한 방식으로 규정된다. 상기 예에서, 블록에 있는 모든 샘플들은 (이미 코딩된 픽처들의 세트에 있는 기준 픽처를 식별하는) 기준 인덱스들, (기준 픽처 및 현재 픽처 간의 블록들의 이동에 대한 측정을 규정하는) 모션 파라미터들, 보간 필터를 규정하기 위한 파라미터들, 인트라 예측 모드들 등과 같은, 예측 파라미터들의 동일한 세트를 사용하여 예측된다. 모션 파라미터들은 수평 및 수직 컴포넌트를 갖는 변위 벡터들에 의해 표현될 수 있거나 또는 6개의 컴포넌트들로 구성되는 아핀 모션 파라미터들과 같은 더 고차원(higher order) 모션 파라미터들에 의해 표현될 수 있다. (기준 인덱스들 및 모션 파라미터들과 같은) 특정 예측 파라미터들의 하나보다 많은 세트가 단일(single) 블록과 연관되는 것이 또한 가능하다. 이러한 경우에, 이러한 특정 예측 파라미터들의 각각의 세트에 대하여, 블록(또는 샘플 어레이들의 대응하는 블록들)에 대한 단일 중간 예측 신호가 생성되고, 중간 예측 신호들의 중첩(superimposing)을 포함하는 결합에 의해 최종 예측 신호가 구성된다. 대응하는 가중 파라미터들 및 또한 잠재적으로 (가중 합에 부가되는) 상수 오프셋은 픽처, 또는 기준 픽처, 또는 기준 픽처들의 세트에 대하여 고정될 수 있거나, 또는 이들은 대응하는 블록에 대한 예측 파라미터들의 세트에 포함될 수 있다. 또한 잔여 신호로서 지칭되는, 원래의 블록들(또는 샘플 어레이들의 대응하는 블록들) 및 이들의 예측 신호들 간의 차이는 통상적으로 변환되고 양자화된다. 종종, 2-차원 변환이 잔여 신호(또는 잔여 블록에 대한 대응하는 샘플 어레이들)로 적용된다. 변환 코딩을 위해, 예측 파라미터들의 특정 세트가 사용되는, 블록들(또는 샘플 어레이들의 대응하는 블록들)은 변환을 적용하기 전에 추가적으로 분할될 수 있다. 변환 블록들은 예측을 위해 사용되는 블록들과 동일하거나 또는 더 작을 수 있다. 변환 블록이 예측을 위해 사용되는 블록들 중 하나보다 많은 블록을 포함하는 것이 또한 가능하다. 상이한 변환 블록들은 상이한 크기들을 가질 수 있으며 변환 블록들은 2차 또는 직사각형 블록들을 나타낼 수 있다. 도 1-5에 대한 위에서의 예에서, 제 1 서브디비젼의 리프 노드들, 즉, 코딩 블록들(40)이 병렬적으로, 한편으로 코딩 파라미터들의 입도를 정의하는 분할, 및 다른 한편으로 2-차원 변환이 개별적으로 적용되는 변환 블록들로 추가적으로 분할될 수 있는 것이 가능하다는 것을 유의하도록 한다. 변환 이후에, 결과적인 변환 계수들은 양자화되고 소위 변환 계수 레벨들이 획득된다. 예측 파라미터들뿐만 아니라 변환 계수 레벨들 및, 존재한다면, 서브디비젼 정보가 엔트로피 코딩된다.
최근의 이미지 및 비디오 코딩 표준들에서, 신택스에 의해 제공되는 픽처(또는 플레인 그룹)를 블록들로 서브디비져닝하기 위한 가능성들은 매우 제한적이다. 통상적으로, 단지 미리 정의된 크기의 블록이 더 작은 블록들로 서브디비져닝될 수 있는지 여부(그리고 잠재적으로 미리 정의된 크기의 블록이 더 작은 블록들로 어떻게 서브디비져닝될 수 있는지)만이 규정될 수 있다. 일례로서, H.264에서 가장 큰 블록 크기는 16x16이다. 16x16 블록들은 또한 매크로블록들로 지칭되며 각각의 픽처는 제 1 단계에서 매크로블록들로 분할된다. 각각의 16x16 매크로블록에 대하여, 상기 매크로블록이 16x16 블록으로서, 또는 2개의 16x8 블록들로서, 또는 2개의 8x16 블록들로서, 또는 4개의 8x8 블록들로서 코딩되는지 여부가 시그널링될 수 있다. 16x16 블록이 4개의 8x8 블록으로 서브디비져닝되는 경우에, 이러한 8x8 블록들 각각은 하나의 8x8 블록으로서, 또는 2개의 8x4 블록들로서, 또는 2개의 4x8 블록들로서, 또는 4개의 4x4 블록들로서 코딩될 수 있다. 최근의 이미지 및 비디오 코딩 표준들에서의 블록들로의 분할을 규정하기 위한 가능성들의 작은 세트는 서브디비젼 정보를 시그널링하기 위한 측면 정보 레이트가 작게 유지될 수 있다는 장점을 가지나, 아래에서 설명될 바와 같이 블록들에 대한 예측 파라미터들을 전송하는데 필요한 비트 레이트가 상당량이 될 수 있다는 단점을 가진다. 예측 정보를 시그널링하기 위한 측면 정보 레이트는 통상적으로 블록에 대한 전체 비트 레이트 중 상당량을 나타낸다. 그리고, 예를 들어, 더 큰 블록 사이즈들을 사용함으로써 달성될 수 있는, 이러한 측면 정보의 감소시에 코딩 효율이 증가될 수 있다. H.264와 비교하여 지원되는 분할 패턴들의 세트를 증가시키는 것이 또한 가능하다. 예를 들어, 도 6에 도시된 분할 패턴들은 모든 크기들(또는 선택된 크기들)의 직사각형 블록들에 대하여 제공될 수 있다. 비디오 시퀀스의 실제 이미지들 또는 픽처들은 특정한 성질(property)들을 갖는 임의적으로 형상화된 객체(object)들로 구성된다. 일례로서, 이러한 객체들 또는 상기 객체들의 부분들은 고유한 텍스처(texture) 또는 고유한 모션에 의해 특징화된다. 그리고 통상적으로, 예측 파라미터들의 동일한 세트는 이러한 객체 또는 객체의 부분에 대하여 적용될 수 있다. 그러나, 객체 경계들은 통상적으로 큰 예측 블록들(예를 들어, H.264에서의 16x16 매크로블록들)에 대한 가능한 블록 경계들과 부합하지 않는다. 인코더는 통상적으로 특정한 레이트-왜곡 비용 측정치의 최소값을 야기하는 (제한된 세트의 가능성들 중에서) 서브디비젼을 결정한다. 임의적으로 형상화된 객체들에 대하여 이것은 많은 개수의 작은 블록들을 야기할 수 있다. 위에서 (언급된 바와 같이) 더 많은 분할 패턴들이 제공될 때 이러한 진술은 또한 사실이 된다. 분할 패턴들의 양은 너무 커서는 안됨을 유의하여야 하며, 이는 그 후에 많은 측면 정보 및/또는 인코더/디코더 복잡도가 이러한 패턴들을 시그널링하고 처리하는데 요구되기 때문이다. 그래서, 임의적으로 형상화된 객체들은 종종 분할에 기인하여 많은 수의 작은 블록들을 야기한다. 그리고 이러한 작은 블록들 각각은, 전송될 필요가 있는, 예측 파라미터들의 세트와 연관되기 때문에, 측면 정보 레이트는 전체 비트 레이트의 상당한 부분이 될 수 있다. 그러나, 상기 작은 블록들 중 여러 블록들은 여전히 동일한 객체 또는 객체의 부분의 영역들을 나타내기 때문에, 다수의 획득된 블록들에 대한 예측 파라미터들은 동일하거나 또는 매우 유사하다. 직관적으로, 신택스가 블록의 서브디비젼을 허용할뿐만 아니라 서브디비젼 후에 획득되는 블록들 중 둘 이상의 블록들을 병합하도록 허용하는 방식으로 확장될 때 코딩 효율은 증가될 수 있다. 그 결과, 동일한 예측 파라미터들을 통해 코딩되는 블록들의 그룹이 획득될 것이다. 이러한 블록들의 그룹에 대한 예측 파라미터들은 오직 한번 코딩될 필요가 있다. 도 1-5의 위에서의 예들에서, 예를 들어, 병합이 발생하는 경우에 현재 블록(40)에 대한 코딩 파라미터들은 전송되지 않으며, 즉, 감소된 세트의 후보들은 없어지지 않는다. 즉, 인코더는 현재 블록과 연관되는 코딩 파라미터들을 전송하지 않으며, 디코더는 비트스트림(30)이 현재 블록(40)에 대한 코딩 파라미터들을 포함한다고 예상하지 않는다. 오히려, 본 발명의 특정한 실시예들에 따라, 단지 정밀화 정보가 병합된 현재 블록(40)에 대하여 전달될 수 있다. 후보 세트의 결정 및 후보 세트의 감소뿐만 아니라 병합 등이 픽처(20)의 다른 코딩 블록들(40)에 대하여 또한 수행된다. 코딩 블록들은 여하튼 코딩 체인을 따라 코딩 블록들의 그룹들을 형성하며, 이러한 그룹들에 대한 코딩 파라미터들은 단지 한번 완전하게(in full) 비트스트림 내에서 전송된다.
코딩되는 예측 파라미터들의 수를 감소시킴으로써 절약되는 비트 레이트가 병합 정보를 코딩하기 위해 추가적으로 소비되는 비트 레이트보다 크다면, 설명된 병합은 증가된 코딩 효율을 야기하게 된다. (병합을 위한) 설명된 신택스 확장은 픽처 또는 플레인 그룹의 블록들로의 분할을 선택하는데 있어 인코더로 추가적인 자유성을 제공한다는 점이 추가로 언급되어야 한다. 인코더는 먼저 서브디비젼을 수행하고 그 다음에 결과적인 블록들의 일부가 예측 파라미터들의 동일한 세트를 가지는지 여부를 체크하도록 한정되지 않는다. 하나의 간단한 대안으로서, 인코더는 최근의 코딩 기법들에서처럼 먼저 서브디비젼을 결정할 수 있다. 그리고 그 다음에 인코더는 각각의 블록에 대하여 자신의 이웃 블록들(또는 연관된 이미 결정된 블록들의 그룹) 중 하나와의 병합이 레이트-왜곡 비용 측정치를 감소시키는지 여부를 체크할 수 있다. 여기에서, 블록들의 새로운 그룹과 연관되는 예측 파라미터들이 (예를 들어, 새로운 모션 탐색을 수행함으로써) 재-추정될 수 있거나 또는 현재 블록 및 이웃 블록 또는 블록들의 그룹에 대하여 이미 결정되었던 예측 파라미터들이 블록들의 새로운 그룹에 대하여 평가될 수 있다. 인코더는 또한 분할 및 병합의 결합에 의해 제공되는 패턴들(의 서브세트)을 직접 체크할 수 있으며; 즉, 이미 위에서 언급된 바와 같이 모션 추정 및 모드 결정이 결과적인 형상들을 이용하여 수행될 수 있다. 병합 정보는 블록 기반으로 시그널링될 수 있다. 유효하게, 병합은 또한 현재 블록에 대한 예측 파라미터들의 추론으로서 해석될 수 있으며, 추론된 예측 파라미터들은 이웃 블록들 중 하나의 예측 파라미터들과 동일하게 설정된다.
여기에서, 상이한 분할 패턴들 및 병합 정보의 결합이 (동일한 파라미터들과 연관되는) 동일한 형상들을 야기할 수 있다는 것을 유의하여야 한다. 동일한 메시지가 코드워드들의 상이한 결합들을 통해 전송될 수 있기 때문에, 이것은 명백하게 차선적이다. 이러한 단점을 회피하기(또는 감소시키기) 위해, 본 발명의 실시예들은 (파라미터들의 특정한 세트와 연관되는) 동일한 형상이 상이한 분할 및 병합 신택스 엘리먼트들에 의해 시그널링될 수 있는 것을 금지하는, 개념을 설명한다. 그러므로, 이전에 서브디비져닝된 블록의 모든 블록들 - 코딩 순서에서 제 1 블록은 제외함 - 에 대하여, 모든 병합 후보들에 대해서 병합이 병합 정보 없이 분할에 의해 시그널링될 수 있는 패턴을 도출하는지 여부가 10 및 50과 같은 인코더들 및 디코더들에서 체크된다. 이것이 사실인 모든 후보 블록들은 병합 후보들의 세트로부터 제거되며 전송되는 병합 정보는 결과적인 후보 세트로 적응된다. 후보가 남아있지 않다면, 병합 정보가 전송되지 않으며; 하나의 후보가 남아있다면, 오직 블록이 병합되는지 여부를 규정하는 플래그만이 전송되는 등이다. 이러한 개념의 추가적인 설명을 위해, 선호되는 실시예가 아래에서 설명된다. 오직 분할만이 허용되는 개념과 관련하여 설명된 실시예들의 장점은 픽처의, (예를 들어, 예측 신호를 규정하기 위한) 동일한 파라미터들과 연관되는, 부분들로의 분할을 시그널링하기 위해 훨씬 큰 자유성이 제공된다는 점이다. 오직 하나의 분할 패턴(예를 들어, 동일한 크기의 4개의 블록들로의 서브디비젼)이 병합 접근 방식과 협력하여 제공되는 접근 방식과 비교되는 장점은 (예를 들어, 상이한 크기들의 직사각형 형상들로서) 종종 사용되는 패턴들이 여러 개의 서브디비젼 및 병합 플래그들 대신에 짧은 코드워드에 의해 시그널링될 수 있다는 점이다.
H.264와 같은 최근의 비디오 코딩 표준들은 SKIP 및 DIRECT 모드로 지칭되는 특정한 인터 코드 모드들을 또한 포함하며, 이러한 모드들에서 예측을 규정하는 파라미터들은 공간적으로 그리고/또는 시간적으로 이웃하는 블록들로부터 완전하게 추론된다. SKIP 및 DIRECT 간의 차이는 잔여 신호가 전송되지 않는다는 것을 SKIP 모드가 추가적으로 시그널링한다는 것이다. (H.264에서와 같은) 단일 후보 대신에, SKIP/DIRECT 모드의 다양한 제안된 향상들에서, 가능한 후보들의 리스트는 현재 블록의 공간적으로 그리고/또는 시간적으로 인근에 있는 블록으로부터 추론된다. 가능한 후보들은 현재 블록의 상부에 대한 블록, 현재 블록의 좌측에 대한 블록, 현재 블록의 상부-좌측에 대한 블록, 현재 블록의 상부-우측에 대한 블록, 다양한 이러한 후보들의 중앙값 예측자, 하나 이상의 이전의 기준 프레임들에 있는 함께-위치된 블록(또는 임의의 다른 이미 코딩된 블록, 또는 이미 코딩된 블록들로부터 획득된 결합)을 포함할 수 있다. 병합 모드와의 결합을 위해, SKIP/DIRECT 모드와 병합 모드 모두가 동일한 후보들을 포함하지 않아야 하는 것이 보장되어야 한다. 이것은 위에서 언급된 바와 같이 상이한 구성들에 의해 달성될 수 있다. 설명된 결합들의 장점은 (예를 들어, 예측을 규정하기 위해) 이미 전송된 파라미터들의 재-사용을 시그널링하기 위한 다수의 옵션들이 상이한 블록 크기들에 대하여 제공된다는 점이다.
본 발명의 실시예들의 하나의 장점은 이웃하는 블록들을 블록들의 그룹으로 병합함으로써 예측 파라미터들을 전송하는데 필요한 비트 레이트를 감소시킨다는 점이며, 여기서 블록들의 각각의 그룹은 코딩 파라미터들, 예를 들어, 예측 파라미터들 또는 잔여물 코딩 파라미터들의 고유한 세트와 연관된다. 병합 정보는 (존재한다면, 서브디비젼 정보에 더하여) 비트스트림 내에서 시그널링된다. 상이한 분할 패턴들 및 SKIP/DIRECT 모드들과 협력하여, 대응하는 병합 정보를 전송함으로써 SKIP/DIRECT 모드가 "시뮬레이션"되고 제공되는 패턴들 중 어떤 것도 "시뮬레이션"되지 않음이 보장될 수 있다. 본 발명의 실시예들의 장점은 코딩 파라미터들에 대한 감소된 측면 정보 레이트로부터 야기되는 증가된 코딩 효율이다. 본 발명의 실시예들은 이미지 및 비디오 코딩 애플리케이션들에서 적용가능하며, 이러한 애플리케이션들에서 샘플들의 세트들은 특정한 코딩 또는 예측 파라미터들과 연관된다. 현재 설명되는 병합 프로세스는 또한 3차원 또는 그보다 큰 차원들로 확장된다. 예를 들어, 여러 개의 비디오 픽처들에 있는 블록들의 그룹은 블록들의 하나의 그룹으로 병합될 수 있다. 이것은 또한 라이트-필드(light-field) 코딩에서의 4D 압축에 적용될 수 있다. 한편, 이것은 또한 1D 신호들에서의 압축을 위해 사용될 수 있으며, 여기서 1D 신호는 분할되며 주어진 분할들은 병합된다.
본 발명의 실시예들은 또한 이미지 및 비디오 코딩 애플리케이션들에서 측면 정보 레이트를 감소시키기 위한 방법과 관련된다. 이미지 및 비디오 코딩 애플리케이션들에서, (직사각형 또는 2차 블록들 또는 임의적으로 형상화된 영역들 또는 임의의 다른 샘플들의 컬렉션을 나타낼 수 있는) 샘플들의 특정 세트들이 통상적으로 코딩 파라미터들의 특정 세트와 연관된다. 이러한 샘플 세트들 각각에 대하여, 코딩 파라미터들은 비트스트림 내에 포함된다. 코딩 파라미터들은 예측 파라미터들을 나타낼 수 있으며, 상기 예측 파라미터들은 이미 코딩된 샘플들을 사용하여 샘플들의 대응하는 세트가 어떻게 예측되는지를 규정한다. 픽처의 샘플 어레이들의 샘플 세트들로의 분할은 신택스에 의해 고정될 수 있거나 또는 비트스트림 내의 대응하는 서브디비젼 정보에 의해 시그널링될 수 있다. 블록에 대한 다수의 분할 패턴들이 허용될 수 있다. 샘플 세트들에 대한 코딩 파라미터들은 미리 정의된 순서로 전송되며, 상기 미리 정의된 순서는 신택스에 의해 주어진다. 본 발명의 실시예들은 또한 샘플들의 현재 세트에 대하여 (예를 들어, 예측하기 위한 목적으로) 상기 현재 세트가 하나 이상의 다른 샘플 세트들과 샘플 세트들의 그룹으로 병합된다는 것이 시그널링될 수 있는 방법을 나타낸다. 그러므로, 특정한 분할 패턴들이 다른 분할 패턴들 및 대응하는 병합 데이터의 결합에 의해 표현될 수 없는 방식으로, 대응하는 병합 정보에 대한 값들의 가능한 세트가 사용되는 분할 패턴으로 적응된다. 샘플 세트들의 그룹에 대한 코딩 파라미터들은 오직 한번 전송될 필요가 있다. 특정한 실시예에서, 샘플 세트(또는 샘플 세트들의 그룹)에 대한 코딩 파라미터들이 이미 전송되었던 상기 샘플 세트(또는 상기 샘플 세트들의 그룹)와 현재의 샘플 세트가 병합되는 경우에 상기 현재의 샘플 세트의 코딩 파라미터들은 전송되지 않으며; 대신에, 상기 샘플들의 현재 세트에 대한 코딩 파라미터들은 상기 샘플들의 현재 세트가 병합된 상기 샘플 세트(또는 상기 샘플 세트들의 그룹)의 코딩 파라미터들과 동일하게 설정된다. 대안적인 접근으로서, 코딩 파라미터들 중 하나 이상의 파라미터에 대한 추가적인 정밀화가 현재의 샘플 세트에 대하여 전송될 수 있으며; 상기 정밀화는 그룹의 모든 샘플 세트들로 적용될 수 있거나 또는 상기 정밀화가 전송된 샘플 세트에만 적용될 수 있다.
선호되는 실시예에서, 샘플들의 각각의 세트에 대하여, 모든 이전에 코딩된 샘플 세트들의 세트는 "원인(causal) 샘플 세트들의 세트"로 지칭된다. 샘플들의 현재 세트와의 병합을 위해 사용될 수 있는 샘플들의 세트들은 "후보 샘플 세트들의 세트"로 지칭되며 항상 "원인 샘플 세트들의 세트"의 서브세트이다. 이러한 서브세트가 형성되는 방식은 디코더에 알려져 있을 수 있거나 또는 그것은 비트스트림 내에서 규정될 수 있다. 어떤 경우이든, 인코더(10) 및 디코더(80)는 감소될 후보 세트를 결정한다. 특정한 샘플들의 현재 세트가 코딩되고 그것의 후보 샘플 세트들의 세트가 비어있지 않다면, 상기 샘플들의 현재 세트가 이러한 후보 샘플 세트들의 세트로부터의 하나의 샘플 세트와 병합되는지 여부가, 그리고 그러하다면 (만약 하나보다 많은 후보들이 존재한다면) 이들 중 어떤 것과 병합되는지가 시그널링된다(또는 도출된다). 그렇지 않으면, 병합은 이러한 블록에 대하여 사용될 수 없다. 동일한 형상이 분할 정보 및 병합 데이터의 상이한 결합들에 의해 표현될 수 있게 되는 것을 회피하기 위해, 병합이 분할 패턴에 의해 또한 직접 규정될 수 있는 형상을 야기하는 후보 블록들은 후보 세트로부터 배제된다. 즉, 도 1-5와 관련하여 위에서 설명된 바와 같이 각각의 후보들의 제거에 의해, 후보 세트는 축소된다.
선호되는 실시예에서, 후보 샘플 세트들의 세트의 개수는 샘플들의 현재 세트 내에 있는 임의의 샘플의 직접적인 공간적 이웃들을 나타내는 적어도 특정한 넌-제로(non-zero)(하나 또는 둘 또는 그보다 많을 수 있는) 개수의 샘플들을 포함하는 0 또는 그보다 많은 샘플 세트들이다. 본 발명의 다른 선호되는 실시예에서, 후보 샘플 세트들의 세트는 동일한 공간 위치를 가지는, 즉, 병합의 현재 대상인 현재 샘플 세트 및 후보 샘플 세트들 모두에 의해 구성되지만(comprised by) 상이한 픽처 내에 포함되는 특정한 넌-제로(하나 또는 둘 또는 그보다 많을 수 있는) 개수의 샘플들을 포함하는 샘플들의 세트를 추가적으로(또는 배타적으로) 포함할 수 있다. 본 발명의 다른 선호되는 실시예에서, 후보 샘플 세트들의 세트는 현재 픽처 내의 또는 다른 픽처들에 있는 이전에 프로세싱된 데이터로부터 도출될 수 있다. 상기 도출 방법은 특정한 방향과 연관되는, 변환 계수들과 같은, 공간 방향성 정보 및 현재 픽처의 이미지 그라디언트(gradient)들을 포함할 수 있거나 또는 이웃하는 모션 표현들과 같은 시간 방향성 정보를 포함할 수 있다. 수신기에서 이용가능한 이러한 데이터 및 다른 데이터 및 (존재하다면) 측면 정보로부터, 후보 샘플 세트들의 세트가 도출될 수 있다. 특정한 분할 패턴에 의해 표현될 수 있는 것과 동일한 형상을 야기하는 (원래의 후보 세트로부터의) 후보들의 제거는 인코더 및 디코더에서 동일한 방식으로 도출되며, 그 결과 인코더 및 디코더는 정확하게 동일한 방식으로 병합을 위한 최종 후보 세트를 도출한다.
선호되는 실시예에서, 고려되는 샘플들의 세트들은 직사각형 또는 2차 블록들이다. 그 다음에, 샘플들의 병합된 세트들은 직사각형 및/또는 2차 블록들의 컬렉션을 나타낸다. 본 발명의 다른 선호되는 실시예에서, 고려되는 샘플들의 세트들은 임의적으로 형상화된 픽처 영역들이며 샘플들의 병합된 세트들은 임의적으로 형상화된 픽처 영역들의 컬렉션을 나타낸다.
선호되는 실시예에서, 하나 이상의 신택스 엘리먼트들이 샘플들의 각각의 세트에 대하여 전송되며, 이들은 샘플들의 세트가 (샘플 세트들의 이미 병합된 그룹의 일부일 수 있는) 다른 샘플 세트와 병합되는지 여부 및 후보 샘플 세트들의 세트 중 어떤 후보 샘플 세트가 병합을 위해 사용되는지를 규정한다. 그러나 (예를 들어, 병합 없이 상이한 분할 패턴에 의해 시그널링될 수 있는 분할을 생성하는 후보들의 제거에 기인하여) 후보 세트가 비어있는 경우에 신택스 엘리먼트는 전송되지 않는다.
선호되는 실시예에서, 병합 정보를 규정하기 위한 하나 이상의 신택스 엘리먼트들이 전송된다. 제 1 신택스 엘리먼트는 샘플들의 현재 세트가 다른 샘플 세트와 병합되는지 여부를 규정한다. 제 1 신택스 엘리먼트가 샘플들의 현재 세트가 샘플들의 다른 세트와 병합된다고 규정하는 경우에만 전송되는, 제 2 신택스 엘리먼트는 후보 샘플 세트들의 세트들 중 어떤 것이 병합을 위해 사용되는지를 규정한다. 선호되는 실시예에서, 제 1 신택스 엘리먼트는 (병합 없이 상이한 분할 패턴에 의해 시그널링될 수 있는 분할을 생성하는 후보들의 잠재적인 제거 이후에) 후보 샘플 세트들의 도출된 세트가 비어있지 않은 경우에만 전송된다. 다른 선호되는 실시예에서, 제 2 신택스 엘리먼트는 후보 샘플 세트들의 도출된 세트가 하나보다 많은 샘플 세트를 포함하는 경우에만 전송된다. 본 발명의 추가적인 선호되는 실시예에서, 제 2 신택스 엘리먼트는 후보 샘플 세트들의 도출된 세트의 적어도 2개의 샘플 세트들이 상이한 코딩 파라미터들과 연관되는 경우에만 전송된다.
본 발명의 선호되는 실시예에서, 샘플들의 세트에 대한 병합 정보는 예측 파라미터들(또는 보다 일반적으로, 샘플 세트들과 연관되는 특정한 코딩 파라미터들) 이전에 코딩된다. 예측 또는 코딩 파라미터들은 샘플들의 현재 세트가 샘플들의 다른 세트와 병합되지 않는다고 병합 정보가 시그널링하는 경우에만 전송된다.
다른 선호되는 실시예에서, 샘플들의 세트에 대한 병합 정보는 예측 파라미터들(또는 보다 일반적으로, 샘플 세트들과 연관되는 특정한 코딩 파라미터들)의 서브세트가 전송된 이후에 코딩된다. 상기 예측 파라미터들의 서브세트는 하나 이상의 기준 픽처 인덱스들 또는 모션 파라미터 벡터의 하나 이상의 컴포넌트들 또는 기준 인덱스 및 모션 파라미터 벡터의 하나 이상의 컴포넌트들 등으로 구성될 수 있다. 예측 또는 코딩 파라미터들의 이미 전송된 서브세트는 후보 샘플 세트들의 (감소된) 세트를 도출하기 위해 사용될 수 있다. 일례로서, 이미 코딩된 예측 또는 코딩 파라미터들 및 후보 샘플 세트들의 원래의 세트의 대응하는 예측 또는 코딩 파라미터들 간의 차이 측정치가 계산될 수 있다. 그리고 샘플 세트들에 대한 계산된 차이 측정치가 미리 정의된 또는 도출된 임계치보다 더 작거나 또는 동일한 상기 샘플 세트들만이 후보 샘플 세트들의 최종 (감소된) 세트에 포함된다. 상기 임계치는 계산된 차이 측정치들에 기초하여 도출될 수 있다. 또는 다른 예로서, 그에 대한 차이 측정치가 최소화되는 샘플들의 세트들만이 선택된다. 또는 차이 측정치에 기초하여 샘플들의 오직 하나의 세트가 선택된다. 후자의 경우에, 병합 정보가 단지 샘플들의 현재 세트가 샘플들의 단일 후보 세트와 병합되는지 여부만을 규정하는 방식으로 상기 병합 정보는 감소될 수 있다.
다음의 선호되는 실시예들은 직사각형 및 2차 블록들을 나타내는 샘플들의 세트들에 대하여 설명되지만, 이러한 실시예들은 간단한 방식으로 임의적으로 형상화된 영역들 또는 샘플들의 다른 컬렉션들로 확장될 수 있다.
1. 후보 블록들의 초기(initial) 세트의 도출
본 섹션들에서 설명되는 샘플들의 초기 세트의 도출은 초기 후보 세트의 도출을 고려한다. 후보 블록들의 전부 또는 일부는 연관된 파라미터들(예를 들어, 예측 정보) 및, 병합이 다른 분할 패턴들을 사용함으로써 또한 획득될 수 있는 최종 분할을 야기하는 그러한 후보 블록들의 제거를 분석함으로써 나중에 제거될 수 있다. 이러한 프로세스는 다음 서브섹션에서 설명된다.
선호되는 실시예에서, 초기 후보 블록들의 세트는 다음과 같이 형성된다. 현재 블록의 상부-좌측 샘플 위치로부터 시작하여, 현재 블록의 좌측에 이웃하는 샘플 위치 및 현재 블록의 상부에 이웃하는 샘플 위치가 도출된다. 초기 후보 블록들의 세트는 오직 2개까지의 엘리먼트들, 즉, 2개의 샘플 위치들 중 하나를 포함하는 원인 블록들의 세트로부터의 그러한 블록들을 가질 수 있다. 그리하여, 초기 후보 블록들의 세트는 자신의 엘리먼트들로서 오직 현재 블록의 상부-좌측 샘플 위치의 2개의 직접적으로 이웃하는 블록들을 가질 수 있다.
본 발명의 다른 선호되는 실시예에서, 초기 후보 블록들의 세트는 현재 블록 이전에 코딩되었고 현재 블록의 임의의 샘플의 직접적인(direct) 공간적 이웃들(직접적인 공간적 이웃들은 직접적인 좌측 이웃들 및/또는 직접적인 상부 이웃들 및/또는 직접적인 우측 이웃들 및/또는 직접적인 하부 이웃들로 한정될 수 있다)을 나타내는 하나 이상의 샘플들을 포함하는 모든 블록들에 의해 주어진다. 본 발명의 다른 선호되는 실시예에서, 초기 후보 블록들의 세트는 현재 블록의 샘플들 중 임의의 샘플과 동일한 위치에 위치되나 상이한 (이미 코딩된) 픽처에 포함되는 하나 이상의 샘플들을 포함하는 블록들을 추가적으로(또는 배타적으로) 포함한다. 본 발명의 다른 선호되는 실시예에서, 블록들의 초기 후보 세트는 위에서 설명된 (이웃하는) 블록들의 세트들의 서브세트를 나타낸다. 후보 블록들의 서브세트는 고정될 수 있거나, 시그널링될 수 있거나 또는 도출될 수 있다. 후보 블록들의 서브세트의 도출은 픽처 또는 다른 픽처들에 있는 다른 블록들에 대하여 이루어지는 결정들을 고려할 수 있다. 일례로서, 다른 후보 블록들보다 동일한(또는 매우 유사한) 코딩 파라미터들과 연관되는 블록들은 블록들의 초기 후보 세트에 포함되지 않을 수 있다.
본 발명의 선호되는 실시예에서, 초기 후보 블록들의 세트는 위에서 설명된 실시예들 중 하나에 대하여 도출되지만 다음과 같이 제한된다: 오직 모션-보상된 예측(인터 예측)을 사용하는 블록들은 후보 블록들의 세트의 엘리먼트들일 수 있다. 즉, 인트라-코딩된 블록들은 (초기) 후보 세트에 포함되지 않는다.
위에서 이미 논의된 바와 같이, 결합된 양방향-예측 병합 후보들, 넌-스케일링된(non-scaled) 양방향-예측 병합 후보들 및 제로 모션 벡터에 의해서와 같이 블록 병합을 위한 추가적인 후보들에 의해 후보들의 리스트를 확장시키는 것이 가능하다.
후보 블록들의 초기 세트의 도출은 동일한 방식으로 인코더 및 디코더 모두에 의해 수행된다.
2. 후보 블록들의 최종(final) 세트의 도출
초기 후보 세트를 도출한 후에, 초기 후보 세트 내의 후보 블록들의 연관된 파라미터들이 분석되고 병합이 상이한 분할 패턴을 사용함으로써 표현될 수 있는 분할을 야기하는 병합 후보들은 제거된다. 병합될 수 있는 샘플 어레이들이 상이한 형상 및/또는 크기를 가지는 경우에, 적어도 2개의 상이한 코드워드들에 의해 기술될 수 있는 동일한 분할들이 존재할 수 있다. 예를 들어, 인코더가 샘플 어레이를 2개의 샘플 어레이들로 분할하도록 결정하는 경우에, 이러한 분할은 상기 2개의 샘플 어레이들을 병합함으로써 리버싱(reverse)될 것이다. 이러한 리던던트한 기술들을 회피하기 위해, 병합을 위한 후보 블록들의 세트는 허용되는 특정한 블록 형상들 및 분할들에 의존하여 제약된다. 한편, 샘플 어레이들의 허용되는 형상들은 병합을 위해 사용되는 특정 후보 리스트들에 의존하여 제약될 수 있다. 분할 및 병합의 2개의 설비(facility)들은 함께 설계되어야 하며, 그 결과 이들 둘의 결합에서 리던던트한 기술들은 회피된다.
본 발명의 선호되는 실시예에서, 도 6에 도시된 분할 모드들(또는 파티셔닝 모드들)의 세트는 정사각형 블록들에 대하여 지원된다. 특정 크기의 정사각형 블록이 동일한 크기의 4개의 더 작은 정사각형 블록들로 분할되면(도 6의 하부-좌측 패턴), 분할 패턴들의 동일한 세트가 결과적인 4개의 정사각형 블록들로 적용될 수 있으며 그 결과 계층적 분할이 규정될 수 있다.
초기 후보 블록들의 세트를 도출한 후에, 후보 리스트들의 감소는 다음과 같이 이루어진다.
- 현재 블록이 추가적으로 분할되지 않는다면(도 6의 상부-좌측 패턴), 초기 후보 리스트는 감소되지 않는다. 즉, 모든 초기 후보들은 병합을 위한 최종 후보들을 나타낸다.
- 현재 블록이 정확하게 임의의 크기의 2개의 블록들로 분할된다면, 이러한 2개의 블록들 중 하나는 다른 블록 이전에 코딩되며, 이는 신택스에 의해 결정된다. 제 1 코딩된 블록에 대하여, 초기 후보 세트는 축소되지 않는다. 그러나, 제 2 코딩된 블록에 대하여, 제 1 블록과 동일한 연관된 파라미터들을 가지는 모든 후보 블록들은 후보 세트로부터 제거된다(이것은 제 1 코딩된 블록을 포함한다).
- 블록이 동일한 크기의 4개의 직사각형 블록들로 분할된다면, (코딩 순서에서) 처음 3개의 블록들의 초기 후보 리스트는 감소되지 않는다. 초기 후보 리스트의 모든 블록들은 또한 최종 후보 리스트 내에 존재한다. 그러나, 코딩 순서에서 4번째(마지막) 블록에 대하여는 다음의 동작이 적용된다:
- 현재 블록과 (도 6의 하부-좌측에 도시되는 분할 방식에서) 상이한 행에 있는 블록들이 동일한 연관된 파라미터들(예를 들어, 모션 파라미터들)을 가진다면, 현재 블록과 동일한 행에 있는 이미 코딩된 블록과 동일한 모션 파라미터들을 가지는 모든 후보들은 후보 세트로부터 제거된다(이것은 동일한 행에 있는 상기 블록을 포함한다).
- 현재 블록과 (도 6의 하부-좌측에 도시된 분할 방식에서) 상이한 열에 있는 블록들이 동일한 연관된 파라미터들(예를 들어, 모션 파라미터들)을 가진다면, 현재 블록과 동일한 열에 있는 이미 코딩된 블록과 동일한 모션 파라미터들을 가지는 모든 후보들은 후보 세트로부터 제거된다(이것은 동일한 열에 있는 상기 블록을 포함한다).
(도 6의 분할 패턴들을 사용하는) 실시예의 저-복잡도 변형에서, 후보 리스트들의 감소는 다음과 같이 이루어진다.
- 현재 블록이 추가적으로 분할되지 않는다면(도 6의 상부-좌측 패턴), 초기 후보 리스트는 감소되지 않는다. 즉, 모든 초기 후보들은 병합을 위한 최종 후보들을 나타낸다.
- 현재 블록이 정확하게 임의의 크기의 2개의 블록들로 분할된다면, 이러한 2개의 블록들 중 하나는 다른 블록 이전에 코딩되며, 이는 신택스에 의해 결정된다. 제 1 코딩된 블록에 대하여, 초기 후보 세트는 축소되지 않는다. 그러나, 제 2 코딩된 블록에 대하여, 분할 패턴의 제 1 코딩된 블록은 후보 세트로부터 제거된다.
- 블록이 동일한 크기의 4개의 직사각형 블록들로 분할된다면, (코딩 순서에서) 처음 3개의 블록들의 초기 후보 리스트는 감소되지 않는다. 초기 후보 리스트의 모든 블록들은 또한 최종 후보 리스트 내에 존재한다. 그러나, 코딩 순서에서 4번째(마지막) 블록에 대하여는 다음의 동작이 적용된다:
- 이후에 코딩되는 (현재 블록과) 다른 행에 있는 블록에 대하여, 상기 블록이 상기 행의 제 1 코딩된 블록과 병합된다고 병합 정보가 시그널링하는 경우에, 현재 블록과 동일한 행에 있는 블록은 후보 세트로부터 제거된다.
- 이후에 코딩되는 (현재 블록과) 다른 열에 있는 블록에 대하여, 상기 블록이 상기 열의 제 1 코딩된 블록과 병합된다고 병합 정보가 시그널링하는 경우에, 현재 블록과 동일한 열에 있는 블록은 후보 세트로부터 제거된다.
다른 선호되는 실시예에서, 도 6에 도시된 바와 같이 동일한 분할 패턴들이 지원되지만, 정사각형 블록을 동일한 크기의 2개의 직사각형 블록들로 분할하는 패턴들 없이 지원된다. 후보 리스트의 감소는, 블록을 4개의 정사각형 블록들로 분할하는 패턴을 제외하고, 위에서 설명된 실시예들 중 임의의 실시예에 의해 설명되는 바와 같이 진행한다. 여기에서, 모든 초기 후보들이 모든 서브블록들에 대하여 허용되거나 또는 다음과 같이 마지막으로 코딩된 서브블록의 후보 리스트만으로 제약된다. 이전에 코딩된 3개의 블록들이 동일한 파라미터들과 연관된다면, 이러한 파라미터들과 연관되는 모든 후보들은 후보 리스트로부터 제거된다. 낮은-복잡도 버전에서, 이전에 코딩된 3개의 서브블록들이 함께 병합되는 경우에 마지막으로 코딩된 서브블록은 이러한 이전에 코딩된 3개의 서브블록들 중 임의의 서브블록과 병합될 수 없다.
다른 선호되는 실시예에서, 블록(또는 샘플 어레이 세트의 임의의 다른 형태)에 대한 분할 패턴들의 상이한 세트가 지원된다. 분할되지 않는 샘플 어레이 세트들에 대하여, 초기 후보 리스트들의 모든 후보들은 병합을 위해 사용될 수 있다. 샘플 어레이가 정확하게 2개의 샘플 어레이들로 분할되는 경우에, 코딩 순서에서 먼저인 샘플 어레이들에 대하여 초기 후보 세트의 모든 후보들은 최종 후보 세트로 삽입된다. 코딩 순서에서 제 2 샘플 어레이에 대하여, 제 1 샘플 어레이와 동일한 연관된 파라미터들을 가지는 모든 후보들은 제거된다. 또는 저-복잡도 버전에서, 오직 제 1 샘플 어레이만이 후보 세트로부터 제거된다. 샘플 어레이를 둘 보다 많은 샘플 어레이들로 분할하는 분할 패턴들에 대하여, 후보들의 제거는 다른 분할 패턴이 현재의 분할 패턴 및 대응하는 병합 정보를 이용하여 시뮬레이션될 수 있는지 여부에 의존한다. 후보 제거 프로세스는 위에서 명시적으로 설명된 개념을 따르지만, 실제적으로 지원되는 후보 패턴들을 고려한다.
추가적인 선호되는 실시예에서, SKIP/DIRECT 모드가 특정 블록에 대하여 지원되는 경우에, SKIP/DIRECT 모드들에 대하여 또한 현존하는 후보들인 병합 후보들이 후보 리스트로부터 제거된다. 이러한 제거는 위에서 설명된 후보 블록들의 제거들을 대체할 수 있거나 또는 위에서 설명된 후보 블록들의 제거들과 함께 사용될 수 있다.
3. SKIP/DIRECT 모드들과의 결합
SKIP/DIRECT 모드들은 모든 블록 사이즈들 및/또는 블록 형상들 또는 단지 특정 블록 사이즈들 및/또는 블록 형상들에 대하여 지원될 수 있다. 후보 블록들의 세트가 SKIP/DIRECT 모드들에 대하여 사용된다. SKIP 및 DIRECT 간의 차이는 잔여 정보가 전송되는지 여부이다. SKIP 및 DIRECT의 (예를 들어, 예측을 위한) 파라미터들은 대응하는 후보들의 임의의 후보와 동일하다고 추론된다. 후보는 인덱스를 후보 리스트로 전송함으로써 선택된다.
선호되는 실시예에서, SKIP/DIRECT를 위한 후보 리스트는 상이한 후보들을 포함ㅎ라 수 있다. 일례가 도 8에 도시된다. 후보 리스트는 다음의 후보들을 포함할 수 있다(현재 블록은 Xi로 표시된다):
- (좌측(Left), 상부(Above), 코너(Corner) 사이의) 중앙값(Median)
- 좌측 블록(Li)
- 상부 블록(Ai)
- 코너 블록들 (차례대로: 상부 우측(Ci1), 하부 좌측(Ci2), 상부 좌측(Ci3))
- 상이한, 그러나 이미 코딩된 픽처 내에 병치된 블록(Collocated Block)
선호되는 실시예에서, 병합을 위한 후보들은 Li(좌측 블록) 및 Ai(상부 블록)을 포함한다. 병합을 위한 이러한 후보들의 선택은 현재 블록이 어떤 블록과 병합되는지를 시그널링하기 위해 적은 양의 측면 정보를 필요로 한다.
다음의 기호는 후속하는 실시예들을 설명하기 위한 사용된다:
- set_mvp_ori는 SKIP/DIRECT 모드를 위해 사용되는 후보들의 세트이다. 이러한 세트는 {Median, Left, Above, Corner, Collocated}로 구성되며, 여기에서 Median은 중앙값(Left, Above 및 Corner의 정렬된 세트에 있는 중간값)이고, 병치는 가장 가까운 기준 프레임에 의해 주어지고 시간적 거리에 따라 스케일링된다.
- set_mvp_comb는 블록 병합 프로세스와 협력하여 SKIP/DIRECT 모드에 대하여 사용되는 후보들의 세트이다.
선호되는 실시예에 대하여, SKIP/DIRECT 모드 및 블록 병합 모드 간의 결합은 후보들의 원래의 세트를 사용하여 처리될 수 있다. 이것은 SKIP/DIRECT 모드가 단독으로 활성화될 때 후보들의 동일한 세트를 가진다는 것을 의미한다. 이러한 2개의 모드들의 결합에 대한 관심(interest)은 인터 프레임에서 측면 정보를 시그널링하는데 있어 이들의 상보성(complementarity)으로부터 유래한다. 이러한 모드들 모두가 현재 블록의 신호화를 향상시키기 위하여 이웃들의 정보를 사용한다는 사실에도 불구하고, 블록 병합은 오직 좌측 및 상부의 이웃들만을 처리하고 SKIP/DIRECT 모드는 5개까지의 후보들을 처리한다. 주요한 상보성은 이웃 정보를 처리하는 상이한 접근 방식에 존재한다. 블록 병합 프로세스는 모든 기준 리스트들에 대하여 자신의 이웃들의 정보의 완전한 세트를 유지한다. 이것은 블록 병합이 기준 리스트마다 자신의 모션 벡터들뿐만 아니라 이러한 이웃들로부터의 완전한 측면 정보를 유지하는 반면에, SKIP/DIRECT 모드는 각각의 기준 리스트들에 대하여 예측 파라미터들을 개별적으로 처리하고 각각의 기준 리스트에 대하여 인덱스를 후보 리스트로 전송한다는 것을 의미한다. 즉, 양방향-예측 픽처들에 대하여, 2개의 인덱스들이 기준 리스트 0에 대한 후보 및 기준 리스트 1에 대한 후보를 시그널링하기 위해 전송된다.
다른 선호되는 실시예에서, set_mvp_comb으로 지칭되는 후보들의 결합된 세트가 블록 병합 모드와 협력하는 SKIP/DIRECT 모드에 대하여 발견될 수 있다. 이러한 결합된 세트는 원래의 세트(set_mvp_ori)의 부분이고 SKIP/DIRECT 모드에 대한 신호화의 감소를 가능하게 하며, 이는 후보들의 리스트: set_mvp_comb의 감소 때문이다. 원래의 리스트(set_mvp_ori)로부터 제거될 수 있는 후보들은 블록 병합 프로세스를 통해 리던던트해질 수 있거나 또는 종종 사용되지 않는 후보들이다.
다른 선호되는 실시예에서, SKIP/DIRECT 모드 및 블록 병합 프로세스 간의 결합은 후보들의 결합된 세트(set_mvp_comb)를 통해 처리될 수 있으며, 상기 후보들의 결합된 세트는 Median이 없는 원래의 세트(set_mvp_ori)이다. SKIP/DIRECT 모드를 위한 Median에 대하여 관찰되는 낮은 효율로 인하여, 원래의 리스트의 후보의 감소는 코딩 효율에서의 향상을 가져온다.
다른 선호되는 실시예에서, SKIP/DIRECT 모드 및 블록 병합의 결합은 후보들의 결합된 세트(set_mvp_comb)를 통해 처리될 수 있으며, 상기 후보들의 결합된 세트는 후보들로서 오직 코너 및/또는 병치만을 가지는 원래의 세트(set_mvp_ori)이다.
다른 선호되는 실시예에서, SKIP/DIRECT 모드 및 블록 병합 프로세스의 결합은 후보들의 결합된 세트를 통해 처리될 수 있으며, 상기 후보들의 결합된 세트는 후보들로서 오직 코너 및 병치만을 가지는 set_mvp_ori이다. SKIP/DIRECT 모드 및 블록 병합 간의 상보성에도 불구하고, 이미 언급된 바와 같이, 리스트로부터 제거되어야 하는 후보들은 블록 병합 프로세스의 후보들과 리던던트해질 수 있는 후보들이다. 이러한 후보들은 좌측 및 상부이다. 후보들의 결합된 세트(set_mvp_comb)는 오직 2개의 후보들: 코너 및 병치로 감소되었다. 블록 병합 프로세스와 결합된, 이러한 후보 세트 set_mvp_comb를 사용하는 SKIP/DIRECT 모드는 인터 프레임들에서 측면 정보를 시그널링하는 효율성이 크게 증가하도록 한다. 이러한 실시예에서, SKIP/DIRECT 모드 및 병합 모드는 임의의 후보 블록을 공유하지 않는다.
추가적인 실시예들에서, SKIP/DIRECT 및 병합 모드의 조금 상이한 결합이 이용될 수 있다. 오직 특정한 블록들(예를 들어, 규정된 크기보다 큰 크기를 가지는 블록들, 또는 오직 직사각형 블록들 등)에 대하여만 (예를 들어, 병합 모드보다 더 많은 후보들을 가지는) SKIP/DIRECT 모드를 인에이블시키고 이러한 블록들에 대하여 병합 모드를 지원하지 않도록 하는 것이 가능하다. 또는 SKIP/DIRECT 모드는 제거될 수 있고 (공간적/시간적으로 이웃하는 블록들에 대한 파라미터들의 결합을 나타내는 파라미터들을 포함하는) 모든 후보들이 후보들로서 병합 모드에 추가된다. 이러한 옵션은 도 1 내지 5에 설명되어 있다. 증가된 후보 세트는 오직 특정한 블록들(예를 들어, 주어진 최소 크기들보다 큰 크기를 가지는 블록들, 또는 직사각형 블록들 등)에 대하여만 사용될 수 있으며, 여기서 다른 블록들에 대하여는 감소된 후보 세트가 사용된다. 또는 추가적인 변형으로서, 병합 모드가 감소된 후보 세트(예를 들어, 오직 상부 및 좌측 이웃들)와 함께 사용되고 추가적인 후보들(예를 들어, 상부-좌측 이웃, 함께-위치된 블록 등)은 SKIP/DIRECT 모드를 위해 사용된다. 또한 이러한 구성들에서, SKIP/DIRECT 모드들은 특정한 블록들(주어진 최소 크기들보다 큰 크기를 가지는 블록들, 직사각형 블록들 등)에 대하여만 허용될 수 있는 반면에, 병합 모드는 블록들의 더 큰 세트에 대하여 허용된다.
4. 병합 정보의 전송
선호되는 실시예, 그리고 특히 도 1 내지 5의 실시예들에 대하여, 다음의 내용을 적용할 수 있다. 현재 블록들의 상부-좌측 샘플의 좌측 및 상부 이웃 샘플을 포함하는 오직 2개의 블록들이 후보들로서 고려된다고 가정하도록 한다. (위에서 설명된 바와 같이 후보들의 제거 이후의) 최종 후보 블록들의 세트가 비어있지 않다면, 현재 블록이 후보 블록들 중 임의의 블록과 병합되는지 여부를 규정하는, merge_flag로 지칭되는 하나의 플래그가 시그널링된다. merge_flag가 ("거짓(false)"에 대하여) 0과 동일하면, 이러한 블록은 자신의 후보 블록들 중 하나와 병합되지 않으며 모든 코딩 파라미터들이 통상적으로 전송된다. merge_flag가 ("참(true)"에 대하여) 1과 동일하면, 다음의 것이 적용된다. 후보 블록들의 세트가 하나 및 오직 하나의 블록을 포함하는 경우, 이러한 후보 블록은 병합을 위해 사용된다. 그렇지 않으며 후보 블록들의 세트는 정확하게 2개의 블록들을 포함한다. 이러한 2개의 블록들의 예측 파라미터들이 일치하면, 이러한 예측 파라미터들은 현재 블록에 대하여 사용된다. 그렇지 않으면(2개의 블록들은 상이한 예측 파라미터들을 가짐), merge_left_flag로 지칭되는 플래그가 시그널링된다. merge_left_flag가 ("참"에 대하여) 1과 동일하면, 현재 블록의 상부-좌측 샘플 위치의 좌측의 이웃하는 샘플 위치를 포함하는 블록이 후보 블록들의 세트로부터 선택된다. merge_left_flag가 ("거짓"에 대하여) 0과 동일하면, 후보 블록들의 세트로부터 다른(즉, 상부의 이웃하는) 블록이 선택된다. 선택된 블록의 예측 파라미터들은 현재 블록에 대하여 사용된다. 다른 실시예에서, 병합 프로세스를 시그널링하는 결합된 신택스 엘리먼트가 전송된다. 다른 실시예에서, 2개의 후보 블록들이 동일한 예측 파라미터들을 가지는지 여부에 관계없이 merge_left_flag가 전송된다.
신택스 엘리먼트 merge_left_flag는 또한 merge_index로서 명명될 수 있으며, 이는 상기 신택스 엘리먼트의 기능이 제거되지-않은 후보들 중에서 선택된 후보를 인덱싱하는 것이기 때문임을 유의해야 할 것이다.
다른 선호되는 실시예에서, 둘보다 많은 블록들이 후보 블록들의 세트에 포함될 수 있다. 병합 정보(즉, 블록이 병합되는지 여부, 그리고, 그렇다면 어떤 후보 블록과 병합되는지에 대한 정보)는 하나 이상의 신택스 엘리먼트들에 의해 시그널링된다. 여기에서, 코드워드들의 세트는 최종 후보 세트에 있는 후보들의 수에 의존하며 인코더 및 디코더에서 동일한 방식으로 선택된다. 일 실시예에서, 병합 정보는 하나의 신택스 엘리먼트를 사용하여 전송된다. 다른 실시예에서, 하나의 신택스 엘리먼트는 블록이 후보 블록들 중 임의의 블록과 병합되는지 여부를 규정한다(위에서 설명된 merge_flag와 비교할 것). 이러한 플래그는 후보 블록들의 세트가 비어있지 않은 경우에만 전송된다. 제 2 신택스 엘리먼트는 후보 블록들 중 어떤 것이 병합을 위해 사용되는지를 시그널링한다; 제 2 신택스 엘리먼트는 제 1 신택스 엘리먼트가 현재 블록이 후보 블록들 중 하나와 병합된다고 시그널링하는 경우에만 전송된다. 본 발명의 선호되는 실시예에서, 제 2 신택스 엘리먼트는 후보 블록들의 세트가 하나보다 많은 후보 블록을 포함하는 경우 그리고/또는 후보 블록들 중 임의의 블록이 상기 후보 블록들 중 임의의 다른 블록과 상이한 예측 파라미터들을 가지는 경우에만 전송된다. 상기 신택스는 얼마나 많은 후보 블록들이 주어지는지 그리고/또는 얼마나 상이한 예측 파라미터들이 후보 블록들과 연관되는지에 의존할 수 있다.
DIRECT 모드에 대하여 그것이 수행되었을 때 블록 병합을 위해 후보들의 세트를 추가하는 것이 가능하다.
다른 선호되는 실시예들에서 설명되는 바와 같이, 제 2 신택스 엘리먼트 병합 인덱스는 후보들의 리스트가 하나보다 많은 후보를 포함하는 경우에만 전송될 수 있다. 이것은 병합 인덱스르 분석하기 전에 리스트를 도출하도록 요구하며, 이는 이러한 2개의 프로세스들이 병렬적으로 수행되는 것을 방지한다. 증가된 분석 스루풋을 가능하게 하고 전송 에러들과 관련하여 분석 프로세스를 보다 견고하게 하기 위해, 각각의 인덱스 값에 대한 고정된 코드워드 및 고정된 개수의 후보들을 사용함으로써 이러한 의존성(dependency)을 제거하는 것이 가능하다. 이러한 개수가 후보 선택에 의해 도달되지 않을 수 있는 경우에, 리스트를 완성하기 위해 보조 후보들을 도출하는 것이 가능하다. 이러한 추가적인 후보들은 소위 결합된 후보들을 포함할 수 있으며, 이러한 결합된 후보들은 이미 리스트에 있는 가능한 한 상이한 후보들의 모션 파라미터들, 및 제로 모션 벡터들로부터 구성된다.
다른 선호되는 실시예에서, 후보 세트의 블록들 중 어떤 블록을 시그널링하기 위한 신택스는 인코더 및 디코더에서 동시적으로 적응된다. 예를 들어, 병합을 위한 블록들의 3가지 선택들이 주어진다면, 이러한 3가지 선택들이 오직 신택스 내에 존재하며 엔트로피 코딩을 위해 고려된다. 모든 다른 선택들에 대한 확률들은 0으로 간주되며 엔트로피 코덱은 인코더 및 디코더에서 동시적으로 조정된다.
병합 프로세스의 결과로서 추론되는 예측 파라미터들은 블록과 연관되는 예측 파라미터들의 완전한 세트를 나타낼 수 있거나 또는 이들은 이러한 예측 파라미터들의 서브세트(예를 들어, 다중-가설 예측이 이용되는 블록의 하나의 가설에 대한 예측 파라미터들)를 나타낼 수 있다.
선호되는 실시예에서, 병합 정보에 관련되는 신택스 엘리먼트들은 컨텍스트 모델링을 이용하여 엔트로피 코딩된다. 신택스 엘리먼트들은 위에서 설명된 merge_flag 및 merge_left_flag로 구성될 수 있다.
하나의 선호되는 실시예에서, 3개의 컨텍스트 모델들 중에서 하나가 merge_flag를 코딩하기 위해 사용된다. 사용되는 컨텍스트 모델 merge_flag_ctx는 다음과 같이 도출된다. 후보 블록들의 세트가 2개의 엘리먼트들을 포함한다면, merge_flag_ctx의 값은 2개의 후보 블록들의 merge_flag의 값들의 합과 동일하다. 후보 블록들의 세트가 하나의 엘리먼트를 포함한다면, merge_flag_ctx의 값은 이러한 하나의 후보 블록의 merge_flag의 값의 2배와 동일하다.
선호되는 실시예에서, merge_left_flag는 단일 확률 모델을 이용하여 코딩된다.
merge_idx(merge_left_flag)를 위한 상이한 컨텍스트 모델 코딩이 이용될 수 있다.
다른 실시예들에서, 상이한 컨텍스트 모델들이 사용될 수 있다. 비-이진(non-binary) 신택스 엘리먼트들이 이진 심볼들(빈들(bins))의 시퀀스로 매핑될 수 있다. 몇몇 신택스 엘리먼트들 또는 신택스 엘리먼트들의 빈들에 대한 컨텍스트 모델들은 이웃 블록들의 이미 전송된 신택스 엘리먼트들 또는 후보 블록들의 수 또는 다른 측정들에 기초하여 도출될 수 있는 한편, 다른 신택스 엘리먼트들 또는 신택스 엘리먼트들의 빈들은 고정된 컨텍스트 모델을 이용하여 코딩될 수 있다.
5. 인코더 동작들
병합 접근 방식은, 물론, 증가된 신호화 오버헤드에서 픽처의 샘플 어레이들에 대한 분할을 선택하기 위한 가능성들의 수를 상당하게 증가시키기 때문에, 병합 개념을 포함시키는 것은 인코더로 비트스트림의 생성을 위한 더 큰 자유성을 제공한다. 서브-분할 및 병합의 결합에 의해 표현될 수 있는 추가적인 패턴들(예를 들어, 도 6의 분할 패턴이 지원될 때, 도 7에서의 패턴들)의 전부 또는 일부는 (모션 추정 및 모드 결정을 위해 대응하는 블록 크기들을 사용하여) 추가적으로 테스트될 수 있으며, 순전히 분할에 의해(도 6) 그리고 분할 및 병합에 의해(도 7) 제공되는 패턴들 중 최상의 패턴이 특정 레이트-왜곡 측정치에 기초하여 선택될 수 있다. 또한 각각의 블록에 대하여 이미 코딩된 후보 세트들 중 임의의 것과의 병합이 특정 레이트-왜곡 측정치의 감소를 산출하게 되는지 여부가 테스트될 수 있으며 그 다음에 대응하는 병합 플래그들이 인코딩 프로세스 동안 설정된다.
다른 선호되는 실시예에서, 인코더는 (최근의 코딩 방식들에서와 같이) 샘플어레이들의 최상의 서브디비젼을 결정할 수 있다. 그리고 그 다음에 인코더는 각각의 샘플 세트에 대하여 다른 샘플 세트 또는 샘플 세트들의 다른 그룹과의 병합이 특정 레이트-왜곡 비용 측정치를 감소시키는지 여부를 체크할 수 있다. 여기에서, 샘플 세트들의 병합된 그룹과 연관되는 예측 파라미터들이 (예를 들어, 새로운 모션 탐색을 수행함으로써) 재-추정될 수 있거나 또는 현재의 샘플 세트 및 병합을 위한 후보 샘플 세트(또는 샘플 세트들의 그룹)에 대하여 이미 결정된 예측 파라미터들이 샘플 세트들의 고려되는 그룹에 대하여 평가될 수 있다.
다른 선호되는 실시예에서, 특정 레이트-왜곡 비용 측정치는 샘플 세트들의 추가적인 후보 그룹들에 대하여 평가될 수 있다. 특정한 예로서, 다양한 가능한 분할 패턴들을 테스트할 때(예를 들어, 도 6 참조), 분할 및 병합의 결합에 의해 표현될 수 있는 패턴의 일부 또는 전부(예를 들어, 도 7 참조)가 추가적으로 테스트될 수 있다. 즉, 패턴들 모두에 대하여 특정한 모션 추정 및 모드 결정 프로세스가 수행되고 가장 작은 레이트-왜곡 측정치를 산출하는 패턴이 선택된다. 이러한 프로세스는 또한 위에서 설명된 저 복잡도 프로세스와 결합될 수 있으며, 그 결과 결과적인 블록들에 대하여 (예를 들어, 도 6 및 7의 패턴들 바깥쪽에 있는) 이미 코딩된 블록들과의 병합이 레이트-왜곡 측정치에서의 감소를 산출하는지 여부가 추가적으로 테스트된다.
다른 선호되는 실시예에서, 인코더는 우선 순위에서 분할 및 병합에 의해 표현될 수 있는 상이한 패턴들을 테스트하며 인코더는 주어진 실-시간 요건에 의해 가능한 많은 패턴들을 테스트한다. 상기 우선 순위는 또한 이미 코딩된 블록들 및 선택된 분할 패턴들에 기초하여 수정될 수 있다.
위에서-요약된 실시예들을 특정한 신택스로 이전하는 하나의 방법이 다음의 도면들과 관련하여 아래에서 설명된다. 특히, 도 9-11은 위에서-요약된 실시예들을 이용하는 신택스의 상이한 부분들을 도시한다. 특히, 아래에서-요약되는 실시예에 따라, 픽처(20)는 먼저 코딩 트리 블록들로 업-디바이드(up-divide)되며, 코딩 트리 블록들의 픽처 컨텐트는 도 9에 도시되는 신택스 coding_tree를 사용하여 코딩된다. 거기에 도시된 바와 같이, 예를 들어, 컨텍스트 적응적 이진 산술 코딩 또는 다른 특정한 엔트로피 코딩 모드와 관련되는, entropy_coding_mode_flag=1에 대하여, 현재 코딩 트리 블록의 쿼드-트리 서브디비젼이 기호 400에서 split_coding_unit_flag로 지칭되는 플래그들에 의해 신택스 부분 coding_tree 내에서 시그널링된다. 도 9에 도시된 바와 같이, 이후에 설명되는 실시예에 따라, 트리-루트 블록은 도 9에 도시된 바와 같은 깊이-우선 횡단 순서로 split_coding_unit_flag에 의해 시그널링되는 바와 같이 서브디비져닝된다. 리프 노드로 도달될 때마다, 리프 노드는 신택스 함수 coding_unit을 사용하여 즉시 코딩되는 코딩 유닛을 나타낸다. 이것은 현재의 split_coding_unit_flag가 설정되어 있는지 여부에 관하여 체크하는 402에서의 if-구문(clause)을 볼 때 도 9로부터 보여질 수 있다. 대답이 예(yes)이면, 함수 coding_tree는 순환적으로 호출되며, 이는 인코더 및 디코더에서 각각 추가적인 split_coding_unit_flag의 추가적인 전송/추출을 야기한다. 그렇지 않다면, 즉, split_coding_unit_flag=0이라면, 도 5a의 트리-루트 블록(200)의 현재의 서브-블록은 리프 블록이고, 이러한 코딩 유닛을 코딩하기 위해 404에서 도 10의 함수 coding_unit이 호출된다.
현재 설명되는 실시예에서, 병합이 단지 인터 예측 모드가 이용가능한 픽처들에 대하여 사용가능한 위에서-언급된 옵션이 이용된다. 즉, 인트라-코딩된 슬라이스들/픽처들은 어쨌든 병합을 이용하지 않는다. 이것은 도 10으로부터 명백하며, 여기서 단지 슬라이스 타입이 인트라-픽처 슬라이스 타입과 동일하지 않은 경우에 플래그 merge_flag가 406에서 전송된다. 본 실시예에 따라, 병합은 단지 인터 예측에 관련되는 예측 파라미터들에 관계된다. 본 실시예에 따르면, merge_flag는 전체 코딩 유닛(40)에 대하여 시그널링되고 또한 디코더로 현재 코딩 유닛에 대한 특정 분할 모드, 즉, 비 분할 모드를 시그널링한다. 그에 따라, 현재 코딩 유닛을 예측 유닛으로서 표시하는 함수 prediction_unit이 408에서 호출된다. 그러나, 이것은 병합 옵션으로 스위칭하기 위한 유일한 가능성은 아니다. 오히려, 전체 코딩 유닛과 관련되는 merge_flag가 406에서 설정되지 않으면, 넌-인트라-픽처 슬라이스의 코딩 유닛의 예측 타입이 신택스 엘리먼트 pred_type에 의해 410에서 시그널링되며, 그에 의존하여, 현재 코딩 유닛이 추가적으로 분할되지 않는 경우에, 예를 들어, 412에서 현재 코딩 유닛의 임의의 분할에 대하여 함수 prediction_unit을 호출한다. 도 10에서, 단지 4개의 상이한 분할 옵션들이 도시되어 있지만, 도 6에 도시된 다른 분할 옵션들 역시 이용가능하다. 다른 가능성은 분할 옵션 PART_NxN이 이용가능하지 않으나 다른 옵션들은 그렇지 않은 것이다. 도 6에 도시되는 분할 옵션들에 대한 도 10에서 사용되는 분할 모드들에 대한 명칭들 간의 연관은 개별적인 분할 옵션들 아래에 있는 각각의 첨자들에 의해 도 6에서 표시된다. 함수 prediction_unit은 위에서 언급된 코딩 순서에서 분할들(50 및 60)과 같은 각각의 분할에 대하여 호출된다. 함수 prediction_unit은 414에서 merge_flag를 체크하면서 시작된다. merge_flag가 설정되어 있다면, 불가피하게 416에서 merge_index가 후속한다. 단계 414에서의 체크는 406에서 신호화된 바와 같은 전체 코딩 유닛에 관련된 merge_flag가 설정되었는지 여부에 대하여 체크하기 위한 것이다. 그렇지 않다면, merge_flag는 418에서 다시 신호화되며, 후자가 설정된다면, 현재 분할에 대한 병합 후보를 표시하는 merge_index가 420에서 후속한다. 다시, 단지 현재 코딩 유닛의 현재 예측 모드가 인터 예측 모드인 경우에 418에서 현재 분할에 대한 merge_flag가 신호화된다(422를 볼 것).
도 11로부터 명백한 바와 같이, 424에서 현재의 예측 유닛에 대하여 사용되는 예측 파라미터들의 전송은, 본 실시예에 따라, 단지 현재 예측 유닛에 대하여 병합이 사용되지 않는 경우에 수행된다.
도 9-11의 실시예에 대한 위에서의 기술이 이미 대부분의 기능성 및 해석 의미론(semantics)을 설명하였음에도 불구하고, 몇몇 추가적인 정보가 아래에서 제시된다.
merge_flag[x0][y0]은 현재 예측 유닛(도면들에서 50 및 60을 볼 것)에 대한 인터 예측 파라미터들이 이웃하는 인터-예측된 분할로부터 추론되는지 여부를 규정한다. 어레이 인덱스들 x0, y0은 픽처(도면들에서 20을 볼 것)의 상부-좌측 루마(luma) 샘플과 관련하여 고려되는 예측 블록(도면들에서 50 및 60을 볼 것)의 상부-좌측 루마 샘플의 위치 (x0, y0)를 규정한다.
merge_idx[x0][y0]은 병합 후보 리스트의 병합 후보 인덱스를 규정하며, 여기서 x0, y0은 픽처의 상부-좌측 루마 샘플과 관련하여 고려되는 예측 블록의 상부-좌측 루마 샘플의 위치 (x0, y0)를 규정한다.
도 9-11의 위에서의 설명에서 구체적으로 나타나 있지 않더라도, 병합 후보들 또는 병합 후보들의 리스트는 이러한 실시예에서 예시적으로 공간적으로 이웃하는 예측 유닛/분할들의 예측 파라미터들 또는 공간 파라미터들을 이용하여 결정될 뿐만 아니라, 오히려 후보들의 리스트는 또한 시간적으로 이웃하고 이전에 코딩된 픽처들의 시간적으로 이웃하는 분할들의 예측 파라미터들을 사용하여 형성된다. 또한, 공간적으로 그리고/또는 시간적으로 이웃하는 예측 유닛들/분할들의 예측 파라미터들의 결합들이 사용되며 병합 후보들의 리스트에 포함된다. 물론, 단지 이들의 서브세트가 사용될 수도 있다. 특히, 도 12는 공간적 이웃들, 즉, 공간적으로 이웃하는 분할들 또는 예측 유닛들을 결정하는 하나의 가능성을 도시한다. 도 12는 예시적으로 분할 유닛 또는 분할(60) 및 분할(60)의 경계(500) 근처에 직접 위치된 픽셀들 B0 내지 B2 및 A0 및 A1을 도시하며, 즉, B2는 분할(60)의 상부 좌측 픽셀에 대각선으로 근접하고, B1은 분할(60)의 상부 우측 픽셀에 근접하고 수직으로 위에 위치하며, B0은 분할(60)의 상부 우측 픽셀에 대하여 대각선으로 위치하고, A1은 분할(60)의 하부 좌측 픽셀에 근접하고 상기 하부 좌측 픽셀의 좌측에 수평적으로 위치하고, A0은 분할(60)의 하부 좌측 픽셀에 대하여 대각선으로 위치한다. 픽셀들 B0 내지 B2 및 A0 및 A1 중 적어도 하나를 포함하는 분할은 공간적 이웃을 형성하고 공간적 이웃의 예측 파라미터들은 병합 후보를 형성한다.
또한 이용가능하게 되는 다른 분할 모드를 야기하는 이러한 후보들의 위에서-언급된 제거를 수행하기 위하여, 다음의 기능들이 사용될 수 있다:
특히, 후보 N, 즉, 픽셀 N=(B0, B1, B2, A0, A1), 즉, 위치 (xN, yN)를 커버하는 예측 유닛/분할로부터 유래하는 코딩/예측 파라미터들은 다음의 조건들 중 임의의 조건이 사실인 경우에 후보 리스트로부터 제거된다(분할 모드 PartMode 및 코딩 유닛 내에서 각각의 분할을 인덱싱하는 대응하는 분할 인덱스 PartIdx에 대하여 도 6 참조):
- 현재 예측 유닛의 PartMode는 PART_2NxN이고 PartIdx는 1과 동일하고 루마 위치 (xP, yP-1)(PartIdx=0) 및 루마 위치 (xN, yN)(Cand. N)을 커버하는 예측 유닛들은 동일한 모션 파라미터들을 갖는다:
mvLX[xP, yP-1] == mvLX[xN, yN]
refIdxLX[xP, yP-1] == refIdxLX[xN, yN]
predFlagLX[xP, yP-1] == predFlagLX[xN, yN]
- 현재 예측 유닛의 PartMode는 PART_Nx2N이고 PartIdx는 1과 동일하고 루마 위치 (xP-1, yP)(PartIdx=0) 및 루마 위치 (xN, yN)(Cand. N)을 커버하는 예측 유닛들은 동일한 모션 파라미터들을 갖는다:
mvLX[xP-1, yP] == mvLX[xN, yN]
refIdxLX[xP-1, yP] == refIdxLX[xN, yN]
predFlagLX[xP-1, yP] == predFlagLX[xN, yN]
- 현재 예측 유닛의 PartMode는 PART_NxN이고 PartIdx는 3과 동일하고 루마 위치 (xP-1, yP)(PartIdx=2) 및 루마 위치 (xP-1, yP-1)(PartIdx=0)을 커버하는 예측 유닛들은 동일한 모션 파라미터들을 갖는다:
mvLX[xP-1, yP] == mvLX[xP-1, yP-1]
refIdxLX[xP-1, yP] == refIdxLX[xP-1, yP-1]
predFlagLX[xP-1, yP] == predFlagLX[xP-1, yP-1]
그리고 루마 위치 (xP, yP-1)(PartIdx=1) 및 루마 위치 (xN, yN)(Cand. N)을 커버하는 예측 유닛들은 동일한 모션 파라미터들을 갖는다:
mvLX[xP, yP-1] == mvLX[xN, yN]
refIdxLX[xP, yP-1] == refIdxLX[xN, yN]
predFlagLX[xP, yP-1] == predFlagLX[xN, yN]
- 현재 예측 유닛의 PartMode는 PART_NxN이고 PartIdx는 3과 동일하고 루마 위치 (xP, yP-1)(PartIdx=1) 및 루마 위치 (xP-1, yP-1)(PartIdx=0)을 커버하는 예측 유닛들은 동일한 모션 파라미터들을 갖는다:
mvLX[xP, yP-1] == mvLX[xP-1, yP-1]
refIdxLX[xP, yP-1] == refIdxLX[xP-1, yP-1]
predFlagLX[xP, yP-1] == predFlagLX[xP-1, yP-1]
그리고 루마 위치 (xP-1, yP)(PartIdx=2) 및 루마 위치 (xN, yN)(Cand. N)을 커버하는 예측 유닛들은 동일한 모션 파라미터들을 갖는다:
mvLX[xP-1, yP] == mvLX[xN, yN]
refIdxLX[xP-1, yP] == refIdxLX[xN, yN]
이와 관련하여, 포지션 또는 위치 (xP, yP)는 현재의 분할/예측 유닛의 최상위(uppermost) 픽셀을 표시함을 유의하도록 한다. 즉, 제 1 아이템에 따라, 이웃하는 예측 유닛들, 즉, 예측 유닛 N의 각각의 코딩 파라미터들을 직접 채택함으로써 도출되었던 모든 코딩 파라미터 후보들이 체크된다. 그러나, 다른 추가적인 코딩 파라미터 후보들은 자신들이 신택스에 의해 또한 지원되는 다른 분할 패턴의 획득을 야기하는 새로 만들어진 각각의 예측 유닛의 코딩 파라미터들과 동일한지 여부에 관하여 동일한 방식으로 체크될 수 있다. 방금 설명된 실시예들에 따라, 코딩 파라미터들의 동일성(equality)은 모션 벡터, 즉, mvLX, 기준 인덱스, 즉, refIdxLX, 및 기준 리스트 X(X는 0 또는 1)와 연관되는 파라미터들, 즉, 모션 벡터 및 기준 인덱스가 인터 예측에서 사용됨을 표시하는 예측 플래그 predFlagLX의 동일성 체크를 포함한다.
이웃하는 예측 유닛들/분할들의 코딩 파라미터 후보들의 제거를 위한 방금-설명된 가능성이 또한 도 6의 우측 절반에서 도시되는 비대칭 분할 모드들을 지원하는 경우에 적용가능하다는 것을 유의하도록 한다. 이러한 경우에, 모드 PART_2NxN은 모든 수평적인 서브디비져닝 모드들을 나타낼 수 있고 PART_Nx2N은 모든 수직적인 서브디비져닝 모드들에 대응할 수 있다. 또한, 모드 PART_NxN은 지원되는 분할 모드들 또는 분할 패턴들로부터 배제될 수 있으며, 그러한 경우에 단지 처음 2개의 제거 체크들이 수행되어야 할 것이다.
도 9-12의 실시예와 관련하여, 후보들의 리스트로부터 인트라 예측된 분할들을 배제하는 것이 가능하며, 즉, 이들의 코딩 파라미터들은, 물론, 상기 후보들의 리스트에 포함되지 않는다는 것을 또한 유의해야 할 것이다.
또한, 3개의 컨텍스트들이 merge_flag 및 merge_index에 대하여 사용될 수 있다는 것을 유의하도록 한다.
몇몇 양상들이 장치와 관련하여 설명되었더라도, 이러한 양상들이 또한 대응하는 방법의 설명을 나타낸다는 것은 명백하며, 여기서 블록 또는 디바이스는 방법 단계 또는 방법 단계의 특징에 대응한다. 유사하게, 방법 단계와 관련하여 설명되는 양상들은 또한 대응하는 블록 또는 아이템 또는 대응하는 장치의 특징의 설명을 나타낸다. 상기 방법 단계들 중 전부 또는 일부는, 예를 들어, 마이크로프로세서, 프로그래밍 가능한 컴퓨터 또는 전자 회로와 같은, 하드웨어 장치에 의해(또는 하드웨어 장치를 사용하여) 실행될 수 있다. 몇몇 실시예들에서, 가장 중요한 방법 단계들 중 소정의 하나 이상의 단계들은 이러한 장치에 의해 실행될 수 있다.
특정한 구현 요구사항들에 의존하여, 본 발명의 실시예들은 하드웨어 또는 소프트웨어로 구현될 수 있다. 상기 구현은, 예를 들어, 각각의 방법이 수행되도록 프로그래밍 가능한 컴퓨터 시스템과 협력하는(또는 협력할 수 있는), 저장된 전자적으로 판독가능한 제어 신호들을 포함하는, 플로피 디스크, DVD, 블루-레이, CD, ROM, PROM, EPROM, EEPROM 또는 플래시 메모리와 같은 디지털 저장 매체를 사용하여 수행될 수 있다. 그러므로, 상기 디지털 저장 매체는 컴퓨터 판독가능할 수 있다.
본 발명에 따른 몇몇 실시예들은, 여기에서 설명되는 방법들 중 하나가 수행되도록, 프로그래밍 가능한 컴퓨터 시스템과 협력할 수 있는, 전자적으로 판독가능한 제어 신호들을 포함하는 데이터 캐리어(carrier)를 포함한다.
일반적으로, 본 발명의 실시예들은 프로그램 코드를 갖는 컴퓨터 프로그램 제품(computer program product)로서 구현될 수 있으며, 상기 프로그램 코드는 상기 컴퓨터 프로그램 제품이 컴퓨터 상에서 실행될 때 상기 방법들 중 하나를 수행하도록 동작한다. 상기 프로그램 코드는, 예를 들어, 기계 판독가능한 캐리어 상에 저장될 수 있다.
다른 실시예들은, 기계 판독가능한 캐리어 상에 저장되는, 여기에서 설명되는 방법들 중 하나를 수행하기 위한 컴퓨터 프로그램을 포함한다.
다시 말하면, 그러므로, 본 발명의 방법의 일 실시예는, 컴퓨터 프로그램이 컴퓨터 상에서 실행될 때, 여기에서 설명되는 방법들 중 하나를 수행하기 위한 프로그램 코드를 갖는 컴퓨터 프로그램이다.
그러므로, 본 발명의 방법들의 추가적인 실시예는 여기에서 설명되는 방법들 중 하나를 수행하기 위한, 기록된, 컴퓨터 프로그램을 포함하는 데이터 캐리어(또는 디지털 저장 매체 또는 컴퓨터-판독가능 매체)이다. 데이터 캐리어, 디지털 저장 매체 또는 기록 매체는 전형적으로 유형적(tangible)이고 그리고/또는 비-일시적(non-transitionary)이다.
그러므로, 본 발명의 방법의 추가적인 실시예는 여기에서 설명되는 방법들 중 하나를 수행하기 위한 컴퓨터 프로그램을 나타내는 데이터 스트림 또는 신호들의 시퀀스이다. 예컨대 데이터 스트림 또는 신호들의 시퀀스는 예를 들어 인터넷을 경유하여 데이터 통신 접속을 통해 전달되도록 구성될 수 있다.
추가적인 실시예는 여기에서 설명되는 방법들 중 하나를 수행하도록 구성되거나 또는 적응되는, 예를 들어, 컴퓨터 또는 프로그래밍 가능한 로직 디바이스와 같은 프로세싱 수단을 포함한다.
추가적인 실시예는 여기에서 설명되는 방법들 중 하나를 수행하기 위한 컴퓨터 프로그램이 설치된 컴퓨터를 포함한다.
본 발명에 따른 추가적인 실시예는 여기에서 설명되는 방법들 중 하나를 수행하기 위한 컴퓨터 프로그램을 수신기로 (예를 들어, 전자적으로 또는 광학적으로) 전달하도록 구성되는 장치 또는 시스템을 포함한다. 수신기는, 예를 들어, 컴퓨터, 모바일 디바이스, 메모리 디바이스 등일 수 있다. 상기 장치 또는 시스템은, 예를 들어, 컴퓨터 프로그램을 수신기로 전달하기 위한 파일 서버를 포함할 수 있다.
몇몇 실시예들에서, 프로그래밍 가능한 로직 디바이스(예를 들어, 필드 프로그래밍 가능한 게이트 어레이)는 여기에서 설명되는 방법들의 기능들 중 전부 또는 일부를 수행하는데 사용될 수 있다. 몇몇 실시예들에서, 필드 프로그래밍 가능한 게이트 어레이는 여기에서 설명되는 방법들 중 하나를 수행하기 위해 마이크로프로세서와 협력할 수 있다. 일반적으로, 상기 방법들은 바람직하게는 임의의 하드웨어 장치에 의해 수행된다.
위에서 설명된 실시예들은 단지 본 발명의 원리들에 대한 예시적인 설명이다. 여기에서 설명되는 배치들 및 세부사항들의 수정들 및 변형들이 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 명백할 것임을 이해하도록 한다. 그러므로, 본 발명은 여기에서 제시된 실시예들의 기술 및 설명에 의해 제시되는 특정한 세부사항들에 의해서가 아니라 첨부되는 특허 청구항들의 범위에 의해서만 제한될 수 있다는 것을 유념해야 할 것이다.

Claims (18)

  1. 픽처(picture)(20)의 현재 블록(40)에 대한 지원되는 분할 패턴들 중 하나를 시그널링하는 비트스트림(30)을 디코딩하도록 구성되는 디코더(80)로서,
    상기 디코더는,
    상기 지원되는 분할 패턴들 중 시그널링된 분할 패턴이 상기 현재 블록(40)의 둘 이상의 추가 블록들(50, 60)로의 서브디비젼(subdivision)을 규정하는 경우에,
    코딩 순서(70)에서 첫번째로 코딩되는 상기 추가 블록들 중 제 1 추가 블록을 제외하고 상기 추가 블록들 모두에 대하여, 각각의 추가 블록(60)에 대한 코딩 파라미터 후보들의 세트로부터,
    상기 각각의 추가 블록(60)과 병합될 때 상기 지원되는 분할 패턴들 중 하나를 야기하는 코딩 파라미터 후보들을 제거하도록 구성되며,
    상기 디코더(80)는,
    상기 각각의 추가 블록에 인접하는 이전에 디코딩된 블록들과 연관되는 코딩 파라미터들에 적어도 부분적으로 기초하여 상기 각각의 추가 블록에 대한 상기 코딩 파라미터 후보들의 세트를 결정하도록 구성되고, 만약 상기 결정에 의해 코딩 파라미터 후보들의 고정된 개수에 도달되지 않는 경우에는, 상기 코딩 파라미터 후보들의 세트 내의 코딩 파라미터 후보들의 개수가 상기 고정된 개수가 되도록 보조 코딩 파라미터 후보들을 이용해 상기 코딩 파라미터 후보들의 세트를 완성(complete)시키도록 구성되는,
    디코더.
  2. 제 1 항에 있어서,
    상기 디코더는, 상기 코딩 파라미터 후보들의 세트 내의 상기 코딩 파라미터 후보들의 개수가 1보다 큰 경우에 의존하여, 상기 비트스트림(30)이 상기 고정된 개수의 코딩 파라미터 후보들 중 어떤 코딩 파라미터 후보가 병합을 위해 사용되는지 규정하는 신택스 엘리먼트(syntax element)를 포함한다고 예상(expect)하도록 구성되는,
    디코더.
  3. 제 1 항에 있어서,
    상기 디코더는, 상기 지원되는 분할 패턴들 중 시그널링된 분할 패턴이 블록의 두 개의 추가 블록들로의 서브디비젼을 규정하는 경우에, 코딩 순서에서 두번째로 코딩되는 상기 추가 블록들 중 제 2 추가 블록에 대하여, 상기 제 2 추가 블록에 대한 코딩 파라미터 후보들의 세트로부터, 코딩 순서에서 첫번째로 코딩되는 상기 추가 블록들 중 상기 제 1 추가 블록과 연관되는 코딩 파라미터들과 동일한 코딩 파라미터들을 갖는 코딩 파라미터 후보들을 제거하도록 구성되는,
    디코더.
  4. 제 1 항에 있어서,
    상기 디코더는, 부가적인 정밀화와 함께 또는 부가적인 정밀화 없이 그리고/또는 시간적 거리에 따른 스케일링과 함께 또는 상기 스케일링 없이, 상기 각각의 추가 블록의 코딩 파라미터들을 상기 코딩 파라미터 후보들의 세트 중 하나의 코딩 파라미터 후보와 연관되는 코딩 파라미터들과 동일하게 세팅함으로써 상기 각각의 추가 블록을 상기 코딩 파라미터 후보들의 세트 중 하나의 코딩 파라미터 후보와 병합하도록 구성되는,
    디코더.
  5. 제 1 항에 있어서,
    상기 픽처는 부가적 정보로서 자신과 연관된 깊이 맵(depth map)을 갖는,
    디코더.
  6. 제 1 항에 있어서,
    정보 샘플들의 어레이는 상기 픽처의 상이한 평면들에 관련되는 샘플 어레이들 중의 하나이고, 상기 평면들은 서로 독립적으로 코딩되는,
    디코더.
  7. 픽처(20)의 현재 블록(40)에 대한 지원되는 분할 패턴들 중 하나를 시그널링하는 비트스트림(30)을 디코딩하기 위한 방법으로서,
    상기 지원되는 분할 패턴들 중 시그널링된 분할 패턴이 상기 현재 블록(40)의 둘 이상의 추가 블록들(50, 60)로의 서브디비젼을 규정하는 경우에,
    코딩 순서(70)에서 첫번째로 코딩되는 상기 추가 블록들 중 제 1 추가 블록을 제외하고 상기 추가 블록들 모두에 대하여, 각각의 추가 블록(60)에 대한 코딩 파라미터 후보들의 세트로부터,
    상기 각각의 추가 블록(60)과 병합될 때 상기 지원되는 분할 패턴들 중 하나를 야기하는 코딩 파라미터 후보들을 제거하는 단계를 포함하고,
    상기 방법은,
    상기 각각의 추가 블록에 인접하는 이전에 디코딩된 블록들과 연관되는 코딩 파라미터들에 적어도 부분적으로 기초하여 상기 각각의 추가 블록에 대한 상기 코딩 파라미터 후보들의 세트를 결정하는 단계; 및
    만약 상기 결정에 의해 코딩 파라미터 후보들의 고정된 개수에 도달되지 않는 경우에는, 상기 코딩 파라미터 후보들의 세트 내의 코딩 파라미터 후보들의 개수가 상기 고정된 개수가 되도록 보조 코딩 파라미터 후보들을 이용해 상기 코딩 파라미터 후보들의 세트를 완성(complete)하는 단계;를 더 포함하는,
    디코딩하기 위한 방법.
  8. 제 7 항에 있어서,
    상기 픽처는 부가적 정보로서 자신과 연관된 깊이 맵(depth map)을 갖는,
    디코딩하기 위한 방법.
  9. 제 7 항에 있어서,
    정보 샘플들의 어레이는 상기 픽처의 상이한 평면들에 관련되는 샘플 어레이들 중의 하나이고, 상기 평면들은 서로 독립적으로 코딩되는,
    디코딩하기 위한 방법.
  10. 픽처(20)를 비트스트림(30)으로 인코딩하도록 구성되는 인코더(10)로서,
    상기 인코더는,
    비트스트림(30) 내에서 현재 블록(40)에 대한 지원되는 분할 패턴들 중 하나를 시그널링하고; 그리고
    상기 지원되는 분할 패턴들 중 시그널링된 분할 패턴이 상기 현재 블록(40)의 둘 이상의 추가 블록들(50, 60)로의 서브디비젼을 규정하는 경우에,
    코딩 순서(70)에서 첫번째로 코딩되는 상기 추가 블록들 중 제 1 추가 블록을 제외하고 상기 추가 블록들(60) 모두에 대하여, 각각의 추가 블록(60)에 대한 코딩 파라미터 후보들의 세트로부터,
    상기 각각의 추가 블록과 병합될 때 상기 지원되는 분할 패턴들 중 하나를 야기하는 코딩 파라미터 후보들을 제거하도록 구성되며,
    상기 인코더(10)는,
    상기 각각의 추가 블록에 인접하는 이전에 인코딩된 블록들과 연관되는 코딩 파라미터들에 적어도 부분적으로 기초하여 상기 각각의 추가 블록에 대한 상기 코딩 파라미터 후보들의 세트를 결정하도록 구성되고, 만약 상기 결정에 의해 코딩 파라미터 후보들의 고정된 개수에 도달되지 않는 경우에는, 상기 코딩 파라미터 후보들의 세트 내의 코딩 파라미터 후보들의 개수가 상기 고정된 개수가 되도록 보조 코딩 파라미터 후보들을 이용해 상기 코딩 파라미터 후보들의 세트를 완성시키도록 구성되는,
    인코더.
  11. 제 10 항에 있어서,
    상기 픽처는 부가적 정보로서 자신과 연관된 깊이 맵(depth map)을 갖는,
    인코더.
  12. 제 10 항에 있어서,
    정보 샘플들의 어레이는 상기 픽처의 상이한 평면들에 관련되는 샘플 어레이들 중의 하나이고, 상기 평면들은 서로 독립적으로 코딩되는,
    인코더.
  13. 픽처(20)를 비트스트림(30)으로 인코딩하기 위한 방법으로서,
    비트스트림(30) 내에서 현재 블록(40)에 대한 지원되는 분할 패턴들 중 하나를 시그널링하는 단계; 및
    상기 지원되는 분할 패턴들 중 시그널링된 분할 패턴이 상기 현재 블록(40)의 둘 이상의 추가 블록들(50, 60)로의 서브디비젼을 규정하는 경우에,
    코딩 순서(70)에서 첫번째로 코딩되는 상기 추가 블록들 중 제 1 추가 블록을 제외하고 상기 추가 블록들 모두에 대하여, 각각의 추가 블록(60)에 대한 코딩 파라미터 후보들의 세트로부터,
    상기 각각의 추가 블록과 병합될 때 상기 지원되는 분할 패턴들 중 하나를 야기하는 코딩 파라미터 후보들을 제거하는 단계를 포함하고,
    상기 방법은,
    상기 각각의 추가 블록에 인접하는 이전에 인코딩된 블록들과 연관되는 코딩 파라미터들에 적어도 부분적으로 기초하여 상기 각각의 추가 블록에 대한 상기 코딩 파라미터 후보들의 세트를 결정하는 단계; 및
    만약 상기 결정에 의해 코딩 파라미터 후보들의 고정된 개수에 도달되지 않는 경우에는, 상기 코딩 파라미터 후보들의 세트 내의 코딩 파라미터 후보들의 개수가 상기 고정된 개수가 되도록 보조 코딩 파라미터 후보들을 이용해 상기 코딩 파라미터 후보들의 세트를 완성하는 단계;를 더 포함하는,
    인코딩하기 위한 방법.
  14. 제 13 항에 있어서,
    상기 픽처는 부가적 정보로서 자신과 연관된 깊이 맵(depth map)을 갖는,
    인코딩하기 위한 방법
  15. 제 13 항에 있어서,
    정보 샘플들의 어레이는 상기 픽처의 상이한 평면들에 관련되는 샘플 어레이들 중의 하나이고, 상기 평면들은 서로 독립적으로 코딩되는,
    인코딩하기 위한 방법
  16. 비트스트림(30)을 저장하는 컴퓨터 판독가능한 디지털 저장 매체로서,
    상기 비트스트림은,
    그 안에 인코딩된 픽처(20)를 가지고 있고, 상기 픽처(20)의 현재 블록(40)에 대한 지원되는 분할 패턴들 중 하나를 시그널링하는 시그널링을 포함하고,
    상기 시그널링은,
    상기 지원되는 분할 패턴들 중 시그널링된 분할 패턴들이 상기 현재 블록(40)의 둘 이상의 추가 블록들(50, 60)로의 서브디비젼을 규정하는 경우에,
    코딩 순서(70)에서 첫번째로 코딩되는 상기 추가 블록들 중 제 1 추가 블록을 제외하고 상기 추가 블록들 모두에 대하여, 각각의 추가 블록(60)에 대한 코딩 파라미터 후보들의 세트로부터,
    상기 각각의 추가 블록(60)과 병합될 때 상기 지원되는 분할 패턴들 중 하나를 야기하는 코딩 파라미터 후보들이 제거되어야 함을 표시하고,
    상기 각각의 추가 블록에 대한 상기 코딩 파라미터 후보들의 세트는 상기 각각의 추가 블록에 인접하는 이전에 인코딩된 블록들과 연관되는 코딩 파라미터들에 적어도 부분적으로 기초하여 결정되고,
    만약 상기 결정에 의해 코딩 파라미터 후보들의 고정된 개수에 도달되지 않는 경우에는, 상기 코딩 파라미터 후보들의 세트 내의 코딩 파라미터 후보들의 개수가 상기 고정된 개수가 되도록 보조 코딩 파라미터 후보들을 이용해 상기 코딩 파라미터 후보들의 세트가 완성되는,
    컴퓨터 판독가능한 디지털 저장 매체.
  17. 제 16 항에 있어서,
    상기 픽처는 부가적 정보로서 자신과 연관된 깊이 맵(depth map)을 갖는,
    컴퓨터 판독가능한 디지털 저장 매체.
  18. 제 16 항에 있어서,
    정보 샘플들의 어레이는 상기 픽처의 상이한 평면들에 관련되는 샘플 어레이들 중의 하나이고, 상기 평면들은 서로 독립적으로 코딩되는,
    컴퓨터 판독가능한 디지털 저장 매체.
KR1020177029761A 2010-10-08 2011-10-10 블록 분할 및 블록 병합을 지원하는 픽처 코딩 KR101952103B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US39147310P 2010-10-08 2010-10-08
US61/391,473 2010-10-08
PCT/EP2011/067647 WO2012045886A1 (en) 2010-10-08 2011-10-10 Picture coding supporting block partitioning and block merging

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020147030727A Division KR20140139615A (ko) 2010-10-08 2011-10-10 블록 분할 및 블록 병합을 지원하는 픽처 코딩

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020197004924A Division KR102102600B1 (ko) 2010-10-08 2011-10-10 블록 분할 및 블록 병합을 지원하는 픽처 코딩

Publications (2)

Publication Number Publication Date
KR20170118976A KR20170118976A (ko) 2017-10-25
KR101952103B1 true KR101952103B1 (ko) 2019-02-27

Family

ID=44764172

Family Applications (10)

Application Number Title Priority Date Filing Date
KR1020207010671A KR102405529B1 (ko) 2010-10-08 2011-10-10 블록 분할 및 블록 병합을 지원하는 픽처 코딩
KR1020247007428A KR20240034886A (ko) 2010-10-08 2011-10-10 블록 분할 및 블록 병합을 지원하는 픽처 코딩
KR1020147030727A KR20140139615A (ko) 2010-10-08 2011-10-10 블록 분할 및 블록 병합을 지원하는 픽처 코딩
KR1020177029761A KR101952103B1 (ko) 2010-10-08 2011-10-10 블록 분할 및 블록 병합을 지원하는 픽처 코딩
KR1020227018392A KR102647083B1 (ko) 2010-10-08 2011-10-10 블록 분할 및 블록 병합을 지원하는 픽처 코딩
KR1020137011780A KR101526778B1 (ko) 2010-10-08 2011-10-10 블록 분할 및 블록 병합을 지원하는 픽처 코딩
KR1020187024592A KR102034004B1 (ko) 2010-10-08 2011-10-10 블록 분할 및 블록 병합을 지원하는 픽처 코딩
KR1020177029757A KR101893923B1 (ko) 2010-10-08 2011-10-10 블록 분할 및 블록 병합을 지원하는 픽처 코딩
KR1020197004924A KR102102600B1 (ko) 2010-10-08 2011-10-10 블록 분할 및 블록 병합을 지원하는 픽처 코딩
KR1020207010666A KR102277273B1 (ko) 2010-10-08 2011-10-10 블록 분할 및 블록 병합을 지원하는 픽처 코딩

Family Applications Before (3)

Application Number Title Priority Date Filing Date
KR1020207010671A KR102405529B1 (ko) 2010-10-08 2011-10-10 블록 분할 및 블록 병합을 지원하는 픽처 코딩
KR1020247007428A KR20240034886A (ko) 2010-10-08 2011-10-10 블록 분할 및 블록 병합을 지원하는 픽처 코딩
KR1020147030727A KR20140139615A (ko) 2010-10-08 2011-10-10 블록 분할 및 블록 병합을 지원하는 픽처 코딩

Family Applications After (6)

Application Number Title Priority Date Filing Date
KR1020227018392A KR102647083B1 (ko) 2010-10-08 2011-10-10 블록 분할 및 블록 병합을 지원하는 픽처 코딩
KR1020137011780A KR101526778B1 (ko) 2010-10-08 2011-10-10 블록 분할 및 블록 병합을 지원하는 픽처 코딩
KR1020187024592A KR102034004B1 (ko) 2010-10-08 2011-10-10 블록 분할 및 블록 병합을 지원하는 픽처 코딩
KR1020177029757A KR101893923B1 (ko) 2010-10-08 2011-10-10 블록 분할 및 블록 병합을 지원하는 픽처 코딩
KR1020197004924A KR102102600B1 (ko) 2010-10-08 2011-10-10 블록 분할 및 블록 병합을 지원하는 픽처 코딩
KR1020207010666A KR102277273B1 (ko) 2010-10-08 2011-10-10 블록 분할 및 블록 병합을 지원하는 픽처 코딩

Country Status (14)

Country Link
US (7) US10735748B2 (ko)
EP (3) EP3833025A1 (ko)
JP (6) JP2013545342A (ko)
KR (10) KR102405529B1 (ko)
CN (7) CN107105258B (ko)
BR (1) BR112013008461B1 (ko)
DK (1) DK2625855T3 (ko)
ES (1) ES2859635T3 (ko)
HK (2) HK1244981A1 (ko)
HU (1) HUE053483T2 (ko)
PL (1) PL2625855T3 (ko)
PT (1) PT2625855T (ko)
TW (8) TW202332270A (ko)
WO (1) WO2012045886A1 (ko)

Families Citing this family (90)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101549644B1 (ko) 2010-04-13 2015-09-03 지이 비디오 컴프레션, 엘엘씨 샘플 영역 병합
BR112012026400B1 (pt) 2010-04-13 2021-08-10 Ge Video Compression, Ll Predição inter-plano
DK2559005T3 (en) 2010-04-13 2015-11-23 Ge Video Compression Llc Inheritance at sample array multitræsunderinddeling
CN106231324B (zh) 2010-04-13 2019-11-05 Ge视频压缩有限责任公司 解码器、解码方法、编码器以及编码方法
KR102158700B1 (ko) * 2010-05-04 2020-09-22 엘지전자 주식회사 비디오 신호의 처리 방법 및 장치
KR102405529B1 (ko) 2010-10-08 2022-06-08 지이 비디오 컴프레션, 엘엘씨 블록 분할 및 블록 병합을 지원하는 픽처 코딩
KR101929026B1 (ko) 2011-01-07 2018-12-13 엘지전자 주식회사 영상 정보 부호화 방법 및 복호화 방법과 이를 이용한 장치
CN102595116B (zh) 2011-01-14 2014-03-12 华为技术有限公司 多图像块划分的编解码方法和装置
US9066110B2 (en) 2011-03-08 2015-06-23 Texas Instruments Incorporated Parsing friendly and error resilient merge flag coding in video coding
KR20120140181A (ko) 2011-06-20 2012-12-28 한국전자통신연구원 화면내 예측 블록 경계 필터링을 이용한 부호화/복호화 방법 및 그 장치
US9313494B2 (en) * 2011-06-20 2016-04-12 Qualcomm Incorporated Parallelization friendly merge candidates for video coding
US9131239B2 (en) * 2011-06-20 2015-09-08 Qualcomm Incorporated Unified merge mode and adaptive motion vector prediction mode candidates selection
CA2837532C (en) 2011-06-23 2018-10-02 Panasonic Corporation Image decoding method, image coding method, image decoding apparatus, image coding apparatus, and image coding and decoding apparatus
USRE47366E1 (en) 2011-06-23 2019-04-23 Sun Patent Trust Image decoding method and apparatus based on a signal type of the control parameter of the current block
CN106878722B (zh) 2011-06-24 2019-11-12 太阳专利托管公司 解码方法、解码装置、编码方法、编码装置
US9106919B2 (en) 2011-06-24 2015-08-11 Panasonic Intellectual Property Corporation Of America Image decoding method, image coding method, image decoding apparatus, image coding apparatus, and image coding and decoding apparatus
EP2725793A4 (en) 2011-06-27 2014-12-03 Panasonic Ip Corp America IMAGE DECODING METHOD, IMAGE ENCODING METHOD, IMAGE DECODING DEVICE, IMAGE ENCODING DEVICE, AND IMAGE ENCODING / DECODING DEVICE
CN106878724B (zh) 2011-06-28 2020-06-05 太阳专利托管公司 图像编码解码装置
KR102006032B1 (ko) 2011-06-29 2019-07-31 선 페이턴트 트러스트 화상 복호 방법, 화상 부호화 방법, 화상 복호 장치, 화상 부호화 장치 및 화상 부호화 복호 장치
AU2012277220B2 (en) 2011-06-30 2016-08-11 Sun Patent Trust Image decoding method, image coding method, image decoding apparatus, image coding apparatus, and image coding and decoding apparatus
WO2013001769A1 (ja) 2011-06-30 2013-01-03 パナソニック株式会社 画像復号方法、画像符号化方法、画像復号装置、画像符号化装置及び画像符号化復号装置
WO2013005966A2 (ko) * 2011-07-01 2013-01-10 한국전자통신연구원 비디오 부호화 방법 및 복호화 방법과 이를 이용한 장치
CN107087185B (zh) 2011-07-11 2020-01-10 太阳专利托管公司 编码方法及编码装置、解码方法及解码装置
EP2597872A3 (en) * 2011-11-23 2013-12-25 Humax Co., Ltd. Methods for encoding/decoding of video using common merging candidate set of asymmetric partitions
US9729873B2 (en) * 2012-01-24 2017-08-08 Qualcomm Incorporated Video coding using parallel motion estimation
US20130235926A1 (en) * 2012-03-07 2013-09-12 Broadcom Corporation Memory efficient video parameter processing
SI3833022T1 (sl) * 2012-04-12 2022-06-30 Jvckenwood Corporation Konstruiranje seznama kandidatov za spajanje
US9635356B2 (en) 2012-08-07 2017-04-25 Qualcomm Incorporated Multi-hypothesis motion compensation for scalable video coding and 3D video coding
CN110545419B (zh) * 2012-10-12 2022-11-22 韩国电子通信研究院 图像编码/解码方法和使用其的装置
US9300977B2 (en) * 2013-10-02 2016-03-29 Amlogic Co., Ltd. Methods for encoding motion vectors
WO2015100729A1 (en) * 2014-01-03 2015-07-09 Mediatek Singapore Pte. Ltd. Improved merging candidate list construction in 3dvc
CN104853216B (zh) * 2014-02-18 2018-10-02 寰发股份有限公司 基于深度的块分割方法和电子装置
WO2015135175A1 (en) * 2014-03-13 2015-09-17 Mediatek Singapore Pte. Ltd. Simplified depth based block partitioning method
CN104159121A (zh) * 2014-06-26 2014-11-19 华为技术有限公司 一种基于深度信息的图像块的编码、解码方法及装置
CN112087630B (zh) * 2014-09-30 2022-04-08 华为技术有限公司 图像预测方法、装置、解码器及存储介质
KR102490706B1 (ko) * 2014-09-30 2023-01-19 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 비디오 코딩을 위한 해시 기반 인코더 결정
CN112954368A (zh) * 2015-03-13 2021-06-11 Lg 电子株式会社 处理视频信号的方法及其设备
KR20170128390A (ko) * 2015-03-19 2017-11-22 엘지전자 주식회사 비디오 신호의 처리 방법 및 이를 위한 장치
EP3273694A4 (en) * 2015-05-12 2018-04-25 Samsung Electronics Co., Ltd. Image decoding method for performing intra prediction and device thereof, and image encoding method for performing intra prediction and device thereof
WO2017090967A1 (ko) 2015-11-24 2017-06-01 삼성전자 주식회사 부호화 순서 부호화 방법 및 그 장치, 복호화 방법 및 그 장치
CN105511759B (zh) * 2015-12-14 2020-01-31 联想(北京)有限公司 一种图片处理方法及电子设备
WO2017114450A1 (en) * 2015-12-31 2017-07-06 Mediatek Inc. Method and apparatus of prediction binary tree structure for video and image coding
US10306258B2 (en) * 2016-01-29 2019-05-28 Google Llc Last frame motion vector partitioning
US10469841B2 (en) 2016-01-29 2019-11-05 Google Llc Motion vector prediction using prior frame residual
CN116506602A (zh) 2016-03-11 2023-07-28 数字洞察力有限公司 视频编码方法以及装置
US10560712B2 (en) 2016-05-16 2020-02-11 Qualcomm Incorporated Affine motion prediction for video coding
US10284845B2 (en) * 2016-05-25 2019-05-07 Arris Enterprises Llc JVET quadtree plus binary tree (QTBT) structure with multiple asymmetrical partitioning
US10880548B2 (en) 2016-06-01 2020-12-29 Samsung Electronics Co., Ltd. Methods and apparatuses for encoding and decoding video according to coding order
EP3469793A1 (en) * 2016-06-24 2019-04-17 Huawei Technologies Co., Ltd. Devices and methods for video coding using segmentation based partitioning of video coding blocks
CN116614639A (zh) * 2016-07-12 2023-08-18 韩国电子通信研究院 图像编码/解码方法和用于所述方法的记录介质
JP2019525577A (ja) * 2016-07-18 2019-09-05 エレクトロニクス アンド テレコミュニケーションズ リサーチ インスチチュートElectronics And Telecommunications Research Institute 画像符号化/復号方法、装置、及び、ビットストリームを保存した記録媒体
WO2018045944A1 (en) * 2016-09-06 2018-03-15 Mediatek Inc. Methods and apparatuses of candidate set determination for binary-tree splitting blocks
US10448010B2 (en) * 2016-10-05 2019-10-15 Qualcomm Incorporated Motion vector prediction for affine motion models in video coding
JP6895247B2 (ja) * 2016-10-06 2021-06-30 日本放送協会 符号化装置、復号装置及びプログラム
CN116489404A (zh) * 2016-10-14 2023-07-25 世宗大学校产学协力团 影像解码/编码方法、传送比特流的方法及记录介质
US11057624B2 (en) * 2016-10-14 2021-07-06 Industry Academy Cooperation Foundation Of Sejong University Image encoding method/device, image decoding method/device, and recording medium in which bitstream is stored
US20180109812A1 (en) * 2016-10-14 2018-04-19 Media Tek Inc. Block partitioning using tree structures
CN117119179A (zh) * 2016-11-18 2023-11-24 株式会社Kt 视频解码方法、视频编码方法和压缩视频数据发送设备
JP6565885B2 (ja) * 2016-12-06 2019-08-28 株式会社Jvcケンウッド 画像符号化装置、画像符号化方法及び画像符号化プログラム、並びに画像復号化装置、画像復号化方法及び画像復号化プログラム
US11039135B2 (en) * 2016-12-27 2021-06-15 Samsung Electronics Co., Ltd. Encoding method based on encoding order change and device therefor, and decoding method based on encoding order change and device therefor
US10484703B2 (en) * 2017-02-07 2019-11-19 Mediatek Inc. Adapting merge candidate positions and numbers according to size and/or shape of prediction block
US20180242024A1 (en) * 2017-02-21 2018-08-23 Mediatek Inc. Methods and Apparatuses of Candidate Set Determination for Quad-tree Plus Binary-tree Splitting Blocks
MX2019012294A (es) * 2017-04-13 2020-01-27 Lg Electronics Inc Metodo de codificacion/decodificacion de imagenes y dispositivo para el mismo.
US20180332312A1 (en) * 2017-05-09 2018-11-15 Futurewei Technologies, Inc. Devices And Methods For Video Processing
KR102270786B1 (ko) 2017-07-19 2021-06-29 삼성전자주식회사 부호화 방법 및 그 장치, 복호화 방법 및 그 장치
JP7393326B2 (ja) * 2017-08-03 2023-12-06 エルジー エレクトロニクス インコーポレイティド アフィン予測を用いてビデオ信号を処理する方法及び装置
KR20200044967A (ko) * 2017-09-18 2020-04-29 인텔렉추얼디스커버리 주식회사 블록 분할에 따른 병합 후보 리스트를 사용하는 비디오 코딩 방법 및 장치
US11877001B2 (en) * 2017-10-10 2024-01-16 Qualcomm Incorporated Affine prediction in video coding
EP3518536A1 (en) * 2018-01-26 2019-07-31 Thomson Licensing Method and apparatus for adaptive illumination compensation in video encoding and decoding
CN112236995A (zh) * 2018-02-02 2021-01-15 苹果公司 多假设运动补偿技术
US11924440B2 (en) * 2018-02-05 2024-03-05 Apple Inc. Techniques of multi-hypothesis motion compensation
JP7179080B2 (ja) * 2018-03-29 2022-11-28 フラウンホーファー-ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン 画像境界処理を使用して画像を符号化および復号する装置および方法
CN117061738A (zh) 2018-04-02 2023-11-14 深圳市大疆创新科技有限公司 用于图像处理的方法和图像处理装置
CN116800981A (zh) * 2018-05-23 2023-09-22 寰发股份有限公司 使用双向编码单元加权的视频编码方法和装置
EP3804329A1 (en) * 2018-06-01 2021-04-14 FRAUNHOFER-GESELLSCHAFT zur Förderung der angewandten Forschung e.V. Video codec using template matching prediction
WO2019244052A1 (en) 2018-06-19 2019-12-26 Beijing Bytedance Network Technology Co., Ltd. Different precisions for different reference list
TWI747000B (zh) 2018-06-29 2021-11-21 大陸商北京字節跳動網絡技術有限公司 虛擬Merge候選
TWI728389B (zh) 2018-07-01 2021-05-21 大陸商北京字節跳動網絡技術有限公司 基於優先級的非相鄰merge設計
WO2020008322A1 (en) * 2018-07-01 2020-01-09 Beijing Bytedance Network Technology Co., Ltd. Complexity reduction of non-adjacent merge design
AU2018217336A1 (en) * 2018-08-17 2020-03-05 Canon Kabushiki Kaisha Method, apparatus and system for encoding and decoding a transformed block of video samples
EP3850849A1 (en) * 2018-09-13 2021-07-21 InterDigital VC Holdings, Inc. Improved virtual temporal affine candidates
KR102635047B1 (ko) 2018-09-19 2024-02-07 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 적응적 움직임 벡터 해상도를 가지는 어파인 모드에 대한 구문 재사용
US11012697B2 (en) 2018-12-07 2021-05-18 Qualcomm Incorporated Shared candidate list and parallel candidate list derivation for video coding
US10893298B2 (en) * 2018-12-12 2021-01-12 Tencent America LLC Method and apparatus for video coding
CN114222135A (zh) * 2018-12-13 2022-03-22 北京达佳互联信息技术有限公司 视频编码方法以及设备
JP7235877B2 (ja) 2019-01-31 2023-03-08 北京字節跳動網絡技術有限公司 アフィンモード適応型動きベクトル解像度を符号化するためのコンテキスト
KR102166337B1 (ko) * 2019-09-17 2020-10-15 삼성전자주식회사 영상의 ai 부호화 방법 및 장치, 영상의 ai 복호화 방법 및 장치
JP2022548351A (ja) * 2019-09-19 2022-11-18 アリババ グループ ホウルディング リミテッド マージ候補リストを構築するための方法
CN111246046B (zh) * 2020-03-27 2022-03-15 支付宝(杭州)信息技术有限公司 图案编码方法及装置、图案解码方法及装置
WO2023055146A1 (ko) * 2021-09-29 2023-04-06 한국전자통신연구원 영상 부호화/복호화를 위한 방법, 장치 및 기록 매체

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004040785A (ja) 2002-06-03 2004-02-05 Microsoft Corp 双方向予測(b)ピクチャの時空間予測および複数ピクチャ参照動き補償の動きベクトル予測

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5225904A (en) * 1987-10-05 1993-07-06 Intel Corporation Adaptive digital video compression system
CN100454339C (zh) * 2001-09-14 2009-01-21 诺基亚有限公司 基于上下文的自适应二进制算术编码的方法和系统
WO2004080084A1 (en) * 2003-03-03 2004-09-16 Agency For Science, Technology And Research Fast mode decision algorithm for intra prediction for advanced video coding
CN1830214B (zh) * 2003-07-24 2012-02-08 松下电器产业株式会社 编码模式决定装置、图像编码装置和编码模式决定方法
US7369709B2 (en) * 2003-09-07 2008-05-06 Microsoft Corporation Conditional lapped transform
US8064520B2 (en) * 2003-09-07 2011-11-22 Microsoft Corporation Advanced bi-directional predictive coding of interlaced video
US7724827B2 (en) 2003-09-07 2010-05-25 Microsoft Corporation Multi-layer run level encoding and decoding
FR2875974A1 (fr) * 2004-09-28 2006-03-31 Thomson Licensing Sa Procede et dispositif de codage d'une sequence d'images sources
CN101073265B (zh) * 2004-12-03 2012-08-22 汤姆森许可贸易公司 可缩放视频编码方法
CN100471280C (zh) * 2005-01-07 2009-03-18 株式会社Ntt都科摩 运动图像编码及译码装置、方法
CN101223780A (zh) * 2005-07-18 2008-07-16 三星电子株式会社 减少编码器和解码器之间的不匹配的视频编码方法和设备
JP4047879B2 (ja) * 2005-08-23 2008-02-13 松下電器産業株式会社 動きベクトル検出装置および動きベクトル検出方法
US8265349B2 (en) * 2006-02-07 2012-09-11 Qualcomm Incorporated Intra-mode region-of-interest video object segmentation
CN101427573B (zh) * 2006-02-16 2013-07-03 维德约股份有限公司 用于可缩放视频编码比特流的稀疏化的系统和方法
RU2426267C2 (ru) * 2007-01-08 2011-08-10 Нокиа Корпорейшн Усовершенствованное межуровневое предсказание для расширенной пространственной масштабируемости при кодировании видеосигнала
CN100495438C (zh) * 2007-02-09 2009-06-03 南京大学 一种基于视频监控的运动目标检测与识别方法
EP2140684B1 (en) 2007-04-12 2018-08-15 Thomson Licensing DTV Method and apparatus for context dependent merging for skip-direct modes for video encoding and decoding
US7965900B2 (en) * 2007-09-26 2011-06-21 Hewlett-Packard Development Company, L.P. Processing an input image to reduce compression-related artifacts
US20090154567A1 (en) * 2007-12-13 2009-06-18 Shaw-Min Lei In-loop fidelity enhancement for video compression
US8854964B2 (en) 2007-12-14 2014-10-07 General Instrument Corporation Method and apparatus for determining a transport bit rate for a Multiprogram transport stream
CN101911700A (zh) * 2008-01-11 2010-12-08 汤姆逊许可证公司 视频和深度编码
CN100586184C (zh) * 2008-01-24 2010-01-27 北京工业大学 帧内预测方法
CN101282478A (zh) * 2008-04-24 2008-10-08 上海华平信息技术股份有限公司 实现高清视频并行编码的方法及系统
CN101409831B (zh) * 2008-07-10 2010-10-27 浙江师范大学 一种多媒体视频对象处理方法
JP5067361B2 (ja) * 2008-12-25 2012-11-07 ソニー株式会社 エンコーダ及びデコーダ、符号方法及び復号方法、並びに記録媒体
KR102405529B1 (ko) 2010-10-08 2022-06-08 지이 비디오 컴프레션, 엘엘씨 블록 분할 및 블록 병합을 지원하는 픽처 코딩
JP6248767B2 (ja) 2014-04-08 2017-12-20 新日鐵住金株式会社 パネル部材

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004040785A (ja) 2002-06-03 2004-02-05 Microsoft Corp 双方向予測(b)ピクチャの時空間予測および複数ピクチャ参照動き補償の動きベクトル予測

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
DE FORNI R et al: "On the Benefits of Leaf merging in Quad-Tree Motion Models", ICIP-2005. 2005-09-11.
LI B et al: "Redundancy reduction in Cbf and merge coding",JCTVC-C277, 2010.10.7.

Also Published As

Publication number Publication date
TW202021343A (zh) 2020-06-01
CN107181944A (zh) 2017-09-19
CN107105258A (zh) 2017-08-29
US20200244975A1 (en) 2020-07-30
WO2012045886A1 (en) 2012-04-12
KR20140139615A (ko) 2014-12-05
CN107071438B (zh) 2020-09-01
EP2625855A1 (en) 2013-08-14
KR20200043496A (ko) 2020-04-27
KR101526778B1 (ko) 2015-06-05
US11785229B2 (en) 2023-10-10
CN107360427A (zh) 2017-11-17
KR20200040940A (ko) 2020-04-20
CN103477635B (zh) 2017-01-18
KR20170118976A (ko) 2017-10-25
JP2013545342A (ja) 2013-12-19
JP2023179552A (ja) 2023-12-19
TW202135526A (zh) 2021-09-16
BR112013008461B1 (pt) 2022-06-07
KR20190021482A (ko) 2019-03-05
JP7391807B2 (ja) 2023-12-05
HK1244981A1 (zh) 2018-08-17
KR20170119727A (ko) 2017-10-27
PL2625855T3 (pl) 2021-06-14
TW201515442A (zh) 2015-04-16
JP2016026454A (ja) 2016-02-12
US10812811B2 (en) 2020-10-20
HK1246546A1 (zh) 2018-09-07
PT2625855T (pt) 2021-03-16
KR102277273B1 (ko) 2021-07-15
US11057630B2 (en) 2021-07-06
CN107360427B (zh) 2020-09-01
ES2859635T3 (es) 2021-10-04
US20130287116A1 (en) 2013-10-31
JP6728249B2 (ja) 2020-07-22
TWI616089B (zh) 2018-02-21
KR101893923B1 (ko) 2018-09-04
TWI520579B (zh) 2016-02-01
US20240089468A1 (en) 2024-03-14
TW201832553A (zh) 2018-09-01
EP3703373A1 (en) 2020-09-02
KR20240034886A (ko) 2024-03-14
US10827187B2 (en) 2020-11-03
KR20180099914A (ko) 2018-09-05
TWI720831B (zh) 2021-03-01
CN107105258B (zh) 2020-09-01
TWI728431B (zh) 2021-05-21
US20210281861A1 (en) 2021-09-09
US20200228806A1 (en) 2020-07-16
CN103477635A (zh) 2013-12-25
EP2625855B1 (en) 2020-12-09
TW201717628A (zh) 2017-05-16
DK2625855T3 (da) 2021-03-08
HUE053483T2 (hu) 2021-06-28
KR102102600B1 (ko) 2020-04-21
CN106878726B (zh) 2020-01-17
CN106878725A (zh) 2017-06-20
EP3703373B1 (en) 2024-04-17
KR20220079698A (ko) 2022-06-13
TWI792167B (zh) 2023-02-11
TWI554086B (zh) 2016-10-11
JP6808310B2 (ja) 2021-01-06
TWI673998B (zh) 2019-10-01
JP2020205639A (ja) 2020-12-24
TW202025724A (zh) 2020-07-01
JP2018082466A (ja) 2018-05-24
KR102405529B1 (ko) 2022-06-08
US20210021842A1 (en) 2021-01-21
US10735748B2 (en) 2020-08-04
CN107181944B (zh) 2020-06-02
KR102647083B1 (ko) 2024-03-14
US10743001B2 (en) 2020-08-11
JP2020120380A (ja) 2020-08-06
CN106878725B (zh) 2020-03-17
EP2625855B8 (en) 2021-03-10
US20200128259A1 (en) 2020-04-23
TW202332270A (zh) 2023-08-01
BR112013008461A2 (pt) 2016-06-28
CN107071438A (zh) 2017-08-18
KR20130095292A (ko) 2013-08-27
TW201223289A (en) 2012-06-01
CN106878726A (zh) 2017-06-20
EP3833025A1 (en) 2021-06-09
KR102034004B1 (ko) 2019-10-18

Similar Documents

Publication Publication Date Title
KR101952103B1 (ko) 블록 분할 및 블록 병합을 지원하는 픽처 코딩

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