KR20130132613A - 인코딩 방법 및 장치와, 디코딩 방법 및 장치 - Google Patents

인코딩 방법 및 장치와, 디코딩 방법 및 장치 Download PDF

Info

Publication number
KR20130132613A
KR20130132613A KR1020137024746A KR20137024746A KR20130132613A KR 20130132613 A KR20130132613 A KR 20130132613A KR 1020137024746 A KR1020137024746 A KR 1020137024746A KR 20137024746 A KR20137024746 A KR 20137024746A KR 20130132613 A KR20130132613 A KR 20130132613A
Authority
KR
South Korea
Prior art keywords
size
picture block
difference
minimum picture
prediction value
Prior art date
Application number
KR1020137024746A
Other languages
English (en)
Other versions
KR101581097B1 (ko
Inventor
하이타오 양
차오 팡
질리안 오우
Original Assignee
후아웨이 테크놀러지 컴퍼니 리미티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 후아웨이 테크놀러지 컴퍼니 리미티드 filed Critical 후아웨이 테크놀러지 컴퍼니 리미티드
Publication of KR20130132613A publication Critical patent/KR20130132613A/ko
Application granted granted Critical
Publication of KR101581097B1 publication Critical patent/KR101581097B1/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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using 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/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/149Data rate or code amount at the encoder output by estimating the code amount by means of a model, e.g. mathematical model or statistical model
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/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/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/115Selection of the code volume for a coding unit prior to coding
    • 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/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/96Tree coding, e.g. quad-tree coding

Abstract

인코딩 방법 및 장치, 디코딩 방법 및 장치, 및 인코딩/디코딩 시스템이 제공된다. 방법은, 인코더에 의해, 인코딩될 데이터를 획득하는 단계 - 인코딩될 데이터는 적어도 하나의 LCU임 - ; 인코더에 의해, 미리 설정된 비트 레이트 제어 알고리즘에 따라 LCU의 양자화 깊이 파라미터를 결정해서, 양자화 깊이 파라미터를 인코딩될 데이터 내에 추가하는 단계; 인코더에 의해, 최소 픽처 블록의 크기 및 LCU에 포함된 각각의 CU의 크기에 따라 각각의 CU의 QP를 결정하는 단계; 인코더에 의해, 각각의 CU의 QP 및 각각의 CU의 QP 예측값에 따라 각각의 CU의 QP 차이를 계산하는 단계; 미리 설정된 조건을 충족하는 각각의 CU에 대하여, 인코더에 의해, CU 내에 CU의 QP 차이를 싣는 단계; 및 인코더에 의해, 양자화 깊이 파라미터, 미리 설정된 조건을 충족하는 CU의 QP 차이, 및 각각의 CU를 인코딩하여 비트 스트림을 획득하는 단계를 포함한다. 디코딩 방법 및 인코딩/디코딩 장치도 제공된다.

Description

인코딩 방법 및 장치와, 디코딩 방법 및 장치{ENCODING METHOD AND DEVICE, AND DECODING METHOD AND DEVICE}
이 출원은 2011년 3월 11일자로 중국 특허청에 출원된 중국 특허 출원 번호 제201110059194.9호, 명칭 "ENCODING METHOD AND DEVICE, AND DECODING METHOD AND DEVICE"에 대해 우선권 주장하고, 이것은 본원에서 그대로 참고로 인용된다.
기술분야
본 발명은 데이터 처리 분야에 관한 것이고, 특히, 인코딩 방법 및 장치와, 디코딩 방법 및 장치에 관한 것이다.
종래 기술의 동화상 인코딩 프로세스에서, 인코더는 오리지널 픽처 블록 데이터 또는 예측된 픽처 블록 차이 데이터에 대한 공간적 변환을 수행하고, 변환 계수에 대한 양자화 연산을 수행하고 나서, 양자화된 계수에 대한 엔트로피 인코딩(entropy encoding)을 수행할 필요가 있다. 디코더는 엔트로피 디코딩 후에 획득된 계수에 대한 역양자화 연산을 수행하고, 계수를 재구성하여 변환 계수를 획득하고 나서, 역변환 연산을 수행하여 오리지널 픽처 블록 데이터 또는 픽처 블록 차이 데이터를 획득한다.
역양자화 연산을 수행하기 위하여, 디코더는 인코더에서 양자화 프로세스에 이용되는 양자화 스텝(quantization step)(QStep)을 획득할 필요가 있다. 따라서, 인코더는 이용된 Qstep에 관한 정보를 비트 스트림에 기입할 필요가 있다. 상이한 Qstep은 상이한 양자화 파라미터들(QP, Quantization Parameter)에 의해 표시될 수 있기 때문에, 인코더는 QP를 인코딩해서 그것을 디코더에 전송할 수 있다.
고효율 비디오 코딩 테스트 모델(HM, High efficiency video coding test Model)에서, 픽처는 동일한 크기의 최대 코딩 유닛들(LCU, Largest Coding Unit)로 분할되고, 여기서, 각각의 LCU는 비-고정 크기의 하나 이상의 CU를 포함할 수 있다.
종래 기술의 픽처 인코딩 방법에서, 독립적 QP를 갖도록 허용된 최소 블록이 LCU이고, 즉, 각각의 LCU는 QP에 대응한다.
인코딩 동안, 인코더는 다음과 같이 픽처 파라미터 세트(PPS, Picture Parameter Set)에 QP 관련 정보를 기술한다:
Figure pct00001
인코더가 선행하는 방식으로 인코딩을 완료한 후에, 인코딩된 데이터는 디코더에 전송된다. 각각의 LCU에 대하여, 디코더는 다음의 방식으로 현재 LCU의 양자화 파라미터 QPLCU를 계산한다.
QPLCU = lcu_qp_delta + slice_qp_delta + pic_init_qp_minus26 + 26
디코더는 현재 LCU의 QPLCU를 획득한 후에 디코딩을 수행할 수 있다.
종래 기술의 해결책으로부터 알 수 있는 바와 같이:
종래 기술에서, 각각의 LCU는 QP에 대응하고; QP를 조절함으로써 비트 레이트 제어를 수행할 때, 인코더는 오직 제어를 위한 가장 미세한 단위(the finest granularity)로서 LCU를 이용할 수 있다. 실제 응용의 LCU는 보통 큰 크기, 예를 들어, 64*64 픽셀들(이하, 설명의 용이성을 위해 64*64로 축약됨; 다른 데이터는 이것과 유사함)로 설정되기 때문에, 종래 기술의 해결책은 비트 레이트 제어의 정밀도에 영향을 미친다.
종래 기술의 다른 픽처 인코딩 방법에서, LCU 내의 각각의 CU는 CU의 qp_delta 정보를 실으므로(carry), 비트 레이트 제어의 정밀도는 향상될 수 있다.
그러나, 종래 기술에서는, 최소 CU가 8*8로 설정될 수 있기 때문에, 각각의 CU가 CU의 qp_delta 정보를 싣는 경우, 인코딩 오버헤드가 매우 증가하고, 따라서 픽처 인코딩에서의 전체 압축 효율에 영향을 미친다.
본 발명의 실시예들은 비트 레이트 제어의 정밀도 및 압축 효율을 효과적으로 향상시킬 수 있는, 인코딩 방법 및 장치, 디코딩 방법 및 장치, 그리고 인코딩/디코딩 시스템을 제공한다.
본 발명의 실시예에 의해 제공되는 인코딩 방법은, 인코더에 의해, 인코딩될 데이터를 획득하는 단계 - 인코딩될 데이터는 적어도 하나의 최대 코딩 유닛(LCU)임 - ; 인코더에 의해, 미리 설정된 비트 레이트 제어 알고리즘에 따라 LCU의 양자화 깊이 파라미터를 결정해서, 양자화 깊이 파라미터를 인코딩될 데이터에 기입하는 단계 - 양자화 깊이 파라미터는 LCU 내의 독립적 QP를 갖는 최소 픽처 블록의 크기를 나타내는 데 이용됨 - ; 인코더에 의해, 최소 픽처 블록의 크기 및 LCU에 포함된 각각의 CU의 크기에 따라 각각의 CU의 QP를 결정하는 단계; 인코더에 의해, 각각의 CU의 QP 및 각각의 CU의 QP 예측값에 따라 각각의 CU의 QP 차이를 계산하는 단계; 미리 설정된 조건을 충족하는 각각의 CU에 대하여, 인코더에 의해, CU 내에 CU의 QP 차이를 싣는 단계; 및 인코더에 의해, 양자화 깊이 파라미터, 미리 설정된 조건을 충족하는 CU의 QP 차이, 및 각각의 CU를 인코딩하여 비트 스트림을 획득하는 단계를 포함한다.
본 발명의 실시예에 의해 제공되는 디코딩 방법은, 디코더에 의해, 수신된 비트 스트림을 파싱(parsing)하여 양자화 깊이 파라미터를 획득하는 단계 - 양자화 깊이 파라미터는 LCU 내의 독립적 QP를 갖는 최소 픽처 블록의 크기를 나타내는 데 이용됨 - ; 디코더에 의해, 최소 픽처 블록의 크기 및 LCU에 포함된 각각의 CU의 크기에 따라 각각의 CU의 QP 예측값을 계산하는 단계; 미리 설정된 조건을 충족하는 각각의 CU에 대하여, 디코더에 의해 비트 스트림을 파싱하여 CU의 QP 차이를 획득하는 단계; 디코더에 의해, 각각의 CU의 QP 예측값 및 파싱에 의해 획득된 QP 차이에 따라 각각의 CU의 QP를 계산하는 단계; 및 디코더에 의해, 각각의 CU의 QP에 따라 각각의 CU를 디코딩하는 단계를 포함한다.
본 발명의 실시예에 의해 제공되는 인코딩 장치는, 인코딩될 데이터를 획득하도록 구성된 데이터 획득 유닛 - 인코딩될 데이터는 적어도 하나의 최대 코딩 유닛(LCU)임 - ; 미리 설정된 비트 레이트 제어 알고리즘에 따라 LCU의 양자화 깊이 파라미터를 결정해서, 양자화 깊이 파라미터를 데이터 획득 유닛에 의해 획득된 인코딩될 데이터에 기입하도록 구성된 깊이 파라미터 처리 유닛 - 양자화 깊이 파라미터는 LCU 내의 독립적 QP를 갖는 최소 픽처 블록의 크기를 나타내는 데 이용됨 - ; 최소 픽처 블록의 크기 및 LCU에 포함된 각각의 CU의 크기에 따라 각각의 CU의 QP를 결정하도록 구성된 양자화 파라미터 결정 유닛; 양자화 파라미터 결정 유닛에 의해 결정된 각각의 CU의 QP 및 각각의 CU의 QP 예측값에 따라 각각의 CU의 QP 차이를 계산하도록 구성된 계산 유닛; 미리 설정된 조건을 충족하는 각각의 CU에 대하여, CU 내에 CU의 QP 차이를 싣도록 구성된 채움(filling) 유닛; 및 양자화 깊이 파라미터, 미리 설정된 조건을 충족하는 CU의 QP 차이, 및 각각의 CU를 인코딩하여 비트 스트림을 획득하도록 구성된 인코딩 유닛을 포함한다.
본 발명의 실시예에 의해 제공되는 디코딩 장치는, 수신된 비트 스트림을 파싱하여 양자화 깊이 파라미터를 획득하도록 구성된 제1 파싱 유닛 - 양자화 깊이 파라미터는 LCU 내의 독립적 QP를 갖는 최소 픽처 블록의 크기를 나타내는 데 이용됨 - ; 최소 픽처 블록의 크기 및 LCU에 포함된 각각의 CU의 크기에 따라 각각의 CU의 QP 예측값을 계산하도록 구성된 파라미터 예측 유닛; 미리 설정된 조건을 충족하는 각각의 CU에 대하여, 비트 스트림을 파싱하여 CU의 QP 차이를 획득하도록 구성된 제2 파싱 유닛; 파라미터 예측 유닛에 의해 획득된 각각의 CU의 QP 예측값 및 제2 파싱 유닛에 의한 파싱에 의해 획득된 QP 차이에 따라 각각의 CU의 QP를 계산하도록 구성된 파라미터 계산 유닛; 및 파라미터 계산 유닛에 의한 계산에 의해 획득된 각각의 CU의 QP에 따라 각각의 CU를 디코딩하도록 구성된 디코딩 유닛을 포함한다.
위의 기술적 해결책들로부터 알 수 있는 바와 같이, 본 발명의 실시예들은 다음의 이점들을 갖는다.
본 발명의 실시예들에서, 인코더는, 인코딩 동안, 인코딩될 데이터 내에 양자화 깊이 파라미터 - 양자화 깊이 파라미터는 독립적 QP를 갖는 최소 픽처 블록의 크기를 나타내는 데 이용됨 - 를 기입할 수 있고, 미리 설정된 조건을 충족하는 각각의 CU에 대하여, CU 내에 CU의 QP 차이를 싣고 있을 수 있으므로, 각각의 LCU는 오직 하나의 QP에 대응하지 않고, LCU 내의 미리 설정된 조건을 충족하는 CU는 QP에 대응한다. 따라서, 인코더는 비트 레이트 제어를 위한 가장 미세한 단위로서 CU를 이용할 수 있다. 하나의 LCU가 보통 복수의 CU를 포함하기 때문에, LCU의 비트 레이트 제어의 정밀도가 효과적으로 향상될 수 있다.
또한, 인코더는 미리 설정된 조건을 충족하는 CU 내에만 CU의 QP 차이를 싣고 있으며, 모든 CU 내에 QP 차이를 싣지는 않는다. 따라서, 인코딩 오버헤드가 감소할 수 있고, 따라서 전체 압축 효율이 향상된다.
도 1은 본 발명에 따른 인코딩 방법의 실시예에 대한 개략도이다.
도 2는 본 발명에 따른 디코딩 방법의 실시예에 대한 개략도이다.
도 3은 본 발명에 따른 인코딩/디코딩 방법의 실시예에 대한 개략도이다.
도 4는 본 발명에 따른 CU와 인접 CU들 간의 위치 관계를 나타내는 개략도이다.
도 5는 본 발명에 따른 LCU의 개략적인 구조도이다.
도 6은 본 발명에 따른 인코딩된 비트 스트림의 개략적인 구조도이다.
도 7은 본 발명에 따른 인코딩/디코딩 방법의 다른 실시예에 대한 개략도이다.
도 8은 본 발명에 따른 다른 인코딩된 비트 스트림의 개략적인 구조도이다.
도 9는 본 발명에 따른 인코딩 장치의 실시예에 대한 개략도이다.
도 10은 본 발명에 따른 인코딩 장치의 다른 실시예에 대한 개략도이다.
도 11은 본 발명에 따른 인코딩 장치의 다른 실시예에 대한 개략도이다.
도 12는 본 발명에 따른 디코딩 장치의 실시예에 대한 개략도이다.
도 13은 본 발명에 따른 디코딩 장치의 다른 실시예에 대한 개략도이다.
도 14는 본 발명에 따른 디코딩 장치의 다른 실시예에 대한 개략도이다.
본 발명의 실시예들은 비트 레이트 제어의 정밀도 및 압축 효율을 효과적으로 향상시킬 수 있는, 인코딩 방법 및 장치와, 디코딩 방법 및 장치를 제공한다.
도 1을 참조하면, 본 발명의 인코딩 방법의 실시예는 다음을 포함한다:
101. 인코더가 인코딩될 데이터를 획득한다.
이 실시예에서, 인코더는 인코딩될 데이터를 획득할 수 있고, 여기서, 인코딩될 데이터는 적어도 하나의 LCU이고, 즉, 인코딩될 데이터는 LCU 또는 복수의 LCU로 이루어진 데이터일 수 있다.
102. 인코더는 미리 설정된 비트 레이트 제어 알고리즘에 따라 LCU의 양자화 깊이 파라미터를 결정해서, 양자화 깊이 파라미터를 인코딩될 데이터에 기입한다.
인코더는 미리 설정된 비트 레이트 제어 알고리즘에 따라 LCU의 양자화 깊이 파라미터를 획득하고, 여기서, 양자화 깊이 파라미터는 LCU 내의 독립적 QP를 갖는 최소 픽처 블록의 크기를 표시하는 데 이용된다.
이 실시예 및 후속 실시예들에서 설명된 크기는 측면 길이(side length)를 가리키고, 예를 들어, CU가 32*32인 경우, CU의 크기는 32로서 정의된다는 것에 주목해야 한다.
인코더는 교체들을 시도함으로써, 즉, 끊임없이 양자화 깊이 파라미터의 값을 조절하여 아날로그 인코딩을 수행함으로써 LCU의 양자화 깊이 파라미터를 획득할 수 있으므로, 인코딩 후의 비트 레이트가 예상 요건에 따른다. 특정 프로세스가 본원에서 한정되지 않는다.
양자화 깊이 파라미터를 결정한 후에, 인코더는 디코더에 데이터를 전송하기 위해 인코딩될 데이터에 양자화 깊이 파라미터를 기입할 수 있다.
103. 인코더는 최소 픽처 블록의 크기 및 LCU에 포함된 각각의 CU의 크기에 따라 각각의 CU의 QP를 결정한다.
LCU의 양자화 깊이 파라미터를 획득한 후에, 인코더는 독립적 QP를 갖고 양자화 깊이 파라미터에 대응하는 최소 픽처 블록의 크기를 알게 되고, 최소 픽처 블록의 크기 및 LCU에 포함된 각각의 CU의 크기에 따라 각각의 CU의 QP를 결정할 수 있다.
104. 인코더는 각각의 CU의 QP 및 각각의 CU의 QP 예측값에 따라 각각의 CU의 QP 차이를 계산한다.
이 실시예에서, 인코더는 단계 103에서 획득된 각각의 CU의 QP에 따른 계산에 의해 각각의 CU의 QP 예측값을 획득하고 나서, QP 예측값 및 QP에 따라 각각의 CU의 QP 차이를 획득할 수 있다.
이 실시예에서, CU의 QP 차이는 CU의 QP와 CU의 QP 예측값 사이의 차이로서 정의될 수 있다.
105. 미리 설정된 조건을 충족하는 각각의 CU에 대하여, 인코더는 CU 내에 CU의 QP 차이를 싣는다.
각각의 CU의 QP 차이를 결정한 후에, 인코더는 CU들로부터 미리 설정된 조건을 충족하는 CU를 선택하고, 미리 설정된 조건을 충족하는 CU 내에 CU의 QP 차이를 실을 수 있다.
106. 인코더는 양자화 깊이 파라미터, 미리 설정된 조건을 충족하는 CU의 QP 차이, 및 각각의 CU를 인코딩하여 비트 스트림을 획득한다.
이 실시예에서, 인코더가 인코딩될 데이터에 양자화 깊이 파라미터를 기입하고, 미리 설정된 조건을 충족하는 CU 내에 QP 차이를 기입한 후에, 인코더는 인코딩될 전체 데이터를 인코딩할 수 있고, 즉, 양자화 깊이 파라미터, 미리 설정된 조건을 충족하는 CU의 QP 차이, 및 각각의 CU를 인코딩하여 비트 스트림을 획득할 수 있다.
이 실시예에서, 인코더는, 인코딩 동안, 인코딩될 데이터 내에 양자화 깊이 파라미터 - 양자화 깊이 파라미터는 독립적 QP를 갖는 최소 픽처 블록의 크기를 나타내는 데 이용됨 - 를 기입할 수 있고, 미리 설정된 조건을 충족하는 각각의 CU에 대하여, CU 내에 CU의 QP 차이를 실을 수 있으므로, 각각의 LCU는 오직 하나의 QP에 대응하지 않고, LCU 내의 미리 설정된 조건을 충족하는 CU는 QP에 대응한다. 따라서, 인코더는 비트 레이트 제어를 위한 가장 미세한 단위로서 CU를 이용할 수 있다. 하나의 LCU가 보통 복수의 CU를 포함하기 때문에, LCU의 비트 레이트 제어의 정밀도가 효과적으로 향상될 수 있다.
또한, 인코더는 미리 설정된 조건을 충족하는 CU 내에만 CU의 QP 차이를 싣고, 모든 CU에 QP 차이를 싣지 않는다. 따라서, 인코딩 오버헤드가 감소할 수 있고, 따라서 전체 압축 효율이 향상된다.
위에서는 인코더의 관점에서 본 발명에 따른 인코딩 프로세스를 설명하고 있다. 다음은 디코더의 관점에서 본 발명에 따른 디코딩 프로세스를 설명한다. 도 2를 참조하면, 본 발명에 따른 디코딩 방법의 실시예는 다음을 포함한다:
201. 디코더는 수신된 비트 스트림을 파싱하여 양자화 깊이 파라미터를 획득한다.
이 실시예에서, 디코더는 인코더로부터 인코딩된 비트 스트림을 수신할 수 있다. 인코더는, 인코딩 동안, 인코딩될 데이터 내에 양자화 깊이 파라미터를 기입하기 때문에, 디코더는 비트 스트림의 대응하는 위치를 파싱하여 사전 협의(pre-agreement)에 따라 양자화 깊이 파라미터를 획득할 수 있다.
양자화 깊이 파라미터는 LCU 내의 독립적 QP를 갖는 최소 픽처 블록의 크기를 표시하는 데 이용된다.
202. 디코더는 최소 픽처 블록의 크기 및 LCU에 포함된 각각의 CU의 크기에 따라 각각의 CU의 QP 예측값을 계산한다.
이 실시예에서, 비트 스트림으로부터 파싱에 의해 양자화 깊이 파라미터를 획득한 후에, 디코더는 양자화 깊이 파라미터에 따라 독립적 QP를 갖는 최소 픽처 블록의 크기를 알게 되고, 최소 픽처 블록의 크기 및 LCU에 포함된 각각의 CU의 크기에 따라 각각의 CU의 QP 예측값을 결정할 수 있다.
203. 미리 설정된 조건을 충족하는 각각의 CU에 대하여, 디코더는 비트 스트림을 파싱하여 CU의 QP 차이를 획득한다.
이 실시예에서, 디코더는 또한, 미리 설정된 조건을 충족하는 각각의 CU에 대하여, 비트 스트림을 파싱하여 CU의 QP 차이를 획득할 수 있다.
디코더에 의해 QP 차이를 획득하는 프로세스 및 디코더에 의해 각각의 CU의 QP 예측값을 계산하는 프로세스는 순서가 제한되지 않으며, QP 차이를 획득하는 프로세스가 먼저 실행될 수 있거나, 각각의 CU의 QP 예측값을 계산하는 프로세스가 먼저 실행될 수 있거나, 2개의 프로세스가 동시에 실행될 수 있으며, 이는 본원에서 특정하게 한정되지 않는다는 것에 주목해야 한다.
204. 디코더는 각각의 CU의 QP 예측값 및 파싱에 의해 획득된 QP 차이에 따라 각각의 CU의 QP를 계산한다.
디코더가 단계 202를 통해 각각의 CU의 QP 예측값을 알게 되고 단계 203을 통해 파싱에 의해 QP 차이를 획득한 후에, 디코더는 파라미터들에 따라 각각의 CU의 QP를 계산할 수 있다.
205. 디코더는 각각의 CU의 QP에 따라 각각의 CU를 디코딩한다.
이 실시예에서, 각각의 CU의 QP를 알게 된 후에, 디코더는 각각의 CU에 대해 역양자화 처리 및 후속하는 디코딩 프로세스를 수행할 수 있고, 이것은 본원에서 특정하게 한정되지 않는다.
이 실시예에서, 인코더는, 인코딩 동안, 인코딩될 데이터 내에 양자화 깊이 파라미터 - 양자화 깊이 파라미터는 독립적 QP를 갖는 최소 픽처 블록의 크기를 나타내는 데 이용됨 - 를 기입할 수 있고, 미리 설정된 조건을 충족하는 각각의 CU에 대하여, CU 내에 CU의 QP 차이를 싣고 있을 수 있으므로, 각각의 LCU는 오직 하나의 QP에 대응하지 않는다. 따라서, 디코더는 전체 LCU에 대한 디코딩을 수행하지 않고 디코딩 동안 각각의 CU에 대한 디코딩을 수행할 수 있고, 따라서 디코딩 효율이 향상될 수 있다.
용이한 이해를 위해, 다음의 설명은 인코딩/디코딩의 관점에서 제공된다. 도 3을 참조하면, 본 발명에 따른 인코딩/디코딩 방법의 실시예는 다음을 포함한다:
301. 인코더가 인코딩될 시퀀스(sequence), 픽처(picture), 또는 슬라이스(slice)를 획득한다.
이 실시예에서, 인코더에 의해 획득되는 인코딩될 데이터는 시퀀스, 또는 픽처, 또는 슬라이스이다. 시퀀스는 몇몇 픽처들을 포함하고, 픽처는 몇몇 슬라이스들을 포함하고, 슬라이스는 몇몇 LCU들을 포함한다는 것에 주목해야 한다.
즉, 이 실시예에서, 인코더에 의해 획득되는 인코딩될 데이터는 복수의 LCU이다.
302. 인코더는 미리 설정된 비트 레이트 제어 알고리즘에 따라 LCU의 양자화 깊이 파라미터 lcu_qp_depth를 결정한다.
인코더는 미리 설정된 비트 레이트 제어 알고리즘에 따라 lcu_qp_depth의 대응하는 값을 획득한다. 구체적으로, 인코더는 교체들을 시도함으로써, 즉, 끊임없이 lcu_qp_depth의 값을 조절하여 아날로그 인코딩을 수행함으로써 lcu_qp_depth의 값을 획득할 수 있으므로, 인코딩 후의 비트 레이트가 예상 요건에 따른다. 특정 프로세스가 본원에서 한정되지 않는다.
이 실시예에서 lcu_qp_depth의 값 범위는 0으로부터 MaxSymbol까지의 모든 정수들일 수 있고, 여기서 MaxSymbol는 다음의 방법을 이용하여 계산될 수 있다:
MaxSymbol = log2(max_coding_block_size) - log2(min_coding_block_size);
여기서, max_coding_block_size는 최대 CU의 크기, 즉, LCU의 크기를 나타내고, min_coding_block_size는 최소 CU의 크기를 나타낸다.
이 실시예 및 후속 실시예들에서 설명된 크기는 측면 길이를 가리키고, 예를 들어, CU가 32*32인 경우, CU의 크기는 32로서 정의된다는 것에 주목해야 한다.
이 실시예에서, lcu_qp_depth는 LCU 내의 독립적 QP를 갖는 최소 픽처 블록의 크기를 표시하는 데 이용된다. lcu_qp_depth가 0일 때는 독립적 QP를 갖는 최소 픽처 블록이 LCU임을 나타내고, lcu_qp_depth가 1일 때는 LCU가 4개의 32*32 CU로 분할되고, 최소 픽처 블록의 크기는 32임을 나타내는 등등이다.
이 실시예에서 lcu_qp_depth는 시퀀스, 픽처, 또는 슬라이스에서 각각의 LCU 내의 독립적 QP를 갖는 최소 픽처 블록의 크기이다. 즉, 시퀀스, 픽처, 또는 슬라이스에서의 모든 LCU는 동일한 lcu_qp_depth를 이용한다.
303. 인코더는 시퀀스 파라미터 세트, 픽처 파라미터 세트, 또는 슬라이스 헤더 정보 내에 lcu_qp_depth를 기입한다.
이 실시예에서, lcu_qp_depth의 값을 획득한 후에, 인코더는 인코딩될 데이터 내에 lcu_qp_depth를 기입할 수 있다.
인코더는 시퀀스의 시퀀스 파라미터 세트(SPS, Sequence Parameter Set) 내에 lcu_qp_depth를 기입할 수 있고, 이것은 구체적으로 다음과 같을 수 있다:
Figure pct00002
또는, 인코더는 픽처의 PPS 내에 lcu_qp_depth를 기입할 수 있고, 이것은 구체적으로 다음과 같을 수 있다:
Figure pct00003
또는, 인코더는 슬라이스의 슬라이스 헤더 정보 내에 lcu_qp_depth를 기입할 수 있고, 이것은 구체적으로 다음과 같을 수 있다:
Figure pct00004
이 실시예는 lcu_qp_depth를 기입하기 위한 위치를 설명하기 위하여 몇몇 예만을 이용하고 있으며, 실제 응용에서, lcu_qp_depth는 시퀀스, 픽처, 또는 슬라이스의 다른 위치들 내에도 기입될 수 있고, 이것은 본원에서 특정하게 한정되지 않는다는 것을 이해할 것이다.
304. 인코더는 독립적 QP를 갖는 최소 픽처 블록의 크기 QPBlkSize를 계산한다.
lcu_qp_depth를 획득한 후에, 인코더는 lcu_qp_depth에 따라 최소 픽처 블록 QPBlk의 크기 QPBlkSize를 계산할 수 있다.
LCU의 크기가 max_coding_block_size라고 가정하면, QPBlkSize는 다음의 방법을 이용함으로써 계산에 의해 획득될 수 있다:
QPBlkSize = max_coding_block_size/(2lcu _ qp _ depth).
예를 들어, max_coding_block_size가 64이고, lcu_qp_depth가 2일 때, QPBlkSize는 16이고, 즉, 최소 픽처 블록은 16*16 CU이다.
305. 인코더는 QPBlkSize 및 CU의 크기에 따라 각각의 CU의 QP를 획득한다.
이 실시예에서, 인코더는 다음의 상황들에서 각각의 CU의 QP를 획득할 수 있다.
인코더는 미리 설정된 비트 레이트 제어 알고리즘에 따라, 크기가 QPBlkSize보다 크거나 같은 CU의 QP를 계산한다.
크기가 QPBlkSize보다 작은 CU에 대하여, 인코더는 먼저 CU가 속하는 최소 픽처 블록을 결정하고 나서, 미리 설정된 비트 레이트 제어 알고리즘에 따라 최소 픽처 블록의 QP를 계산하고, 최소 픽처 블록 내의 모든 CU의 QP로서 최소 픽처 블록의 QP를 이용한다.
이 실시예에서, 인코더에 의해 미리 설정된 비트 레이트 제어 알고리즘에 따라 QP를 계산하는 프로세스는 이 기술분야의 통상의 기술자에게 상식이고, 본원에서 특정하게 한정되지 않는다.
306. 인코더는 각각의 CU의 QP 예측값을 획득한다.
각각의 CU의 QP를 획득한 후에, 인코더는 인코딩 오더(encoding order)(인코딩 오더와 디코딩 오더(decoding order)는 동일함)에 따라, 각각의 CU에 인접한 인코딩된 CU들의 QP들을 이용하여 각각의 CU의 QP 예측값을 획득할 수 있다. 통상적으로, 인접한 인코딩된 CU들은 좌측 CU, 상부 CU, 및 좌측 상부 CU를 포함한다.
용이한 설명을 위해, 기준 CU가 먼저 정의된다:
인코더는 기준 CU로서 크기가 QPBlkSize보다 크거나 같은 각각의 CU를 이용하고, 크기가 QPBlkSize보다 작은 CU에 대하여, 인코더는 CU가 속하는 최소 픽처 블록을 결정하고, 기준 CU로서 최소 픽처 블록의 좌측 상부 CU를 이용한다.
기준 CU가 정의된 후에, 인코더는 각각의 기준 CU에 인접한 CU들의 QP들에 따라 각각의 기준 CU의 QP 예측값을 계산할 수 있다. 몇몇 예를 이용함으로써 설명되는 복수의 특정 계산 방법들이 존재할 수 있다:
1. 좌측 CU, 상부 CU, 및 좌측 상부 CU를 이용하여 계산하기:
도 4를 참조하면, CUC는 기준 CU이고, CU는 크기가 QPBlkSize보다 크거나 같은 CU일 수 있거나, 또는 최소 픽처 블록의 좌측 상부 코너에 있는 CU일 수 있다.
CUU는 CUC의 상부 CU이고, CUL는 CUC의 좌측 CU이고, CUUL는 CUC의 좌측 상부 CU이다. 이 실시예에서, CUC에 인접한 CU들은 좌측 CU, 상부 CU, 및 좌측 상부 CU이다.
CUC의 좌측 상부 픽셀의 좌표들은 (xc, yc)이다. 따라서, CUL는 픽셀 (xc-1, yc)을 포함하는 CU이고, CUU는 픽셀 (xc, yc-1)을 포함하는 CU이고, CUUL는 픽셀 (xc-1,yc-1)을 포함하는 CU이다.
기준 CU에 인접한 CU들을 결정한 후에, 인코더는 단계 305에서 계산된 결과에 따라 CU들의 QP들을 획득할 수 있고, 여기서, CUC의 QP는 QPC이고, CUU의 QP는 QPU이고, CUL의 QP는 QPL이고, CUUL의 QP는 QPUL이다.
모든 CU의 좌측 CU, 상부 CU, 및 좌측 상부 CU가 획득될 수 있는 것은 아님에 주목해야 한다. 예를 들어, 픽처 또는 슬라이스의 최좌측에 위치한 CU 자체는 좌측 CU를 갖지 않는다. 따라서, 인코더는 다음의 특정 조건들에 따라 각각의 CU의 QP 예측값을 결정할 수 있다:
(1) CUC에 인접한 CU들 중 어느 것도 존재하지 않는 경우, CUC가 속하는 슬라이스 및 픽처에 따라 CUC의 QP 예측값 QPP을 결정한다.
구체적으로, QPP = slice_qp_delta + pic_init_qp_minus26 + 26이고, 여기서, slice_qp_delta는 슬라이스 헤더 정보에 포함된 정보이고, pic_init_qp_minus26는 픽처 파라미터 세트에 포함된 정보이다.
(2) CUC의 CUL만이 존재하는 경우, QPL이 QPP로서 이용된다.
(3) CUC의 CUU만이 존재하는 경우, QPU이 QPP로서 이용된다.
(4) CUC에 인접한 모든 CU들이 존재하는 경우, QPL와 QPUL 사이의 제1 차이 |QPL - QPUL|, 및 QPU와 QPUL 사이의 제2 차이 |QPU - QPUL|를 획득한다.
|QPL - QPUL| < |QPU - QPUL|이면, QPL와 QPUL 사이의 차이가 QPU와 QPUL 사이의 차이보다 작다는 것을 나타낸다. 이 경우, CUL 및 CUUL가 픽처 내의 동일한 객체에 속하는 것이 매우 가능하다. 객체의 에지가 CUU 및 CUUL의 에지에 위치하기 때문에, QPU는 QPP로서 이용될 수 있다.
|QPL - QPUL| >= |QPU - QPUL|이면, 위의 추론에 따라, QPL는 QPP로서 이용될 수 있다.
실제 응용에서, 다음의 코드들을 이용하여 위의 절차를 구현할 수 있다:
Figure pct00005
위의 코드들은 구현 프로세스에서 예시일 뿐이고, 실제 응용에서, 다른 유사한 코드들이 구현을 위해 이용될 수 있으며, 특정 구현이 본원에서 한정되지 않는다는 것을 이해할 것이다.
2. 좌측 CU, 상부 CU, 및 이전의 인코딩된 CU를 이용하여 계산하기:
또한 도 4를 참조하면, 이 실시예에서, CUL 및 CUU은 기준 CUC에 인접한 CU들로서 이용될 수 있고, 여기서, CUC는 크기가 QPBlkSize보다 크거나 같은 CU일 수 있거나, 또는 최소 픽처 블록의 좌측 상부 코너에 있는 CU일 수 있다.
CUC의 좌측 상부 픽셀의 좌표들은 (xc, yc)이다. 따라서, CUL는 픽셀 (xc-1, yc)을 포함하는 CU이고, CUU는 픽셀 (xc, yc-1)을 포함하는 CU이고, CUC의 QP는 QPC이고, CUU의 QP는 QPU이고, CUL의 QP는 QPL이다.
모든 CU의 좌측 CU 및 상부 CU가 획득될 수 있는 것은 아님에 주목해야 한다. 예를 들어, 픽처 또는 슬라이스의 최좌측에 위치한 CU 자체는 좌측 CU를 갖지 않는다. 따라서, 인코더는 다음의 특정 조건들에 따라 각각의 CU의 QP 예측값을 결정할 수 있다:
(1) CUC의 CUL이 존재하는 경우, QPL이 QPP로서 이용된다.
(2) CUC의 CUL이 존재하지 않고, CUC의 CUU 또는 CUC의 이전의 인코딩된 CU가 존재하는 경우, QPU 또는 이전의 인코딩된 CU의 QP가 QPP로서 이용된다.
(3) CUC의 CUL이 존재하지 않고, CUC의 CUU 및 CUC의 이전의 인코딩된 CU 둘다가 존재하는 경우, QPU 또는 이전의 인코딩된 CU의 QP가 QPP로서 이용된다. 구체적으로, QPU 또는 이전의 인코딩된 CU의 QP를 QPP로서 이용할지는 인코더/디코더에서 사전에 특정될 수 있다.
(4) CUC의 CUL, CUU, 및 이전의 인코딩된 CU 중 어느 것도 존재하지 않는 경우, CUC가 속하는 슬라이스 및 픽처에 따라 QPP가 결정된다.
구체적으로, QPP = slice_qp_delta + pic_init_qp_minus26 + 26이고, 여기서, slice_qp_delta는 슬라이스 헤더 정보에 포함된 정보이고, pic_init_qp_minus26은 픽처 파라미터 세트에 포함된 정보이다.
위에서는 인코더에 의해 각각의 기준 CU의 QP 예측값을 계산하는 프로세스를 설명하기 위하여 2개의 예만을 이용하고 있다. 실제 응용에서, 인코더는 또한 각각의 기준 CU의 QP 예측값을 계산하기 위해 더 많은 방법을 이용할 수 있고, 이것은 본원에서 특정하게 한정되지 않는다는 것을 이해할 것이다.
307: 인코더는 미리 설정된 조건을 충족하는 CU의 QP 차이 cu_qp_delta를 CU 내에 기입한다.
인코더는 단계 305를 통한 계산에 의해 각각의 CU의 QP를 획득하고, 단계 306을 통한 계산에 의해 각각의 기준 CU의 QP 예측값을 획득한다. 따라서, 인코더는 또한 파라미터들에 따라 각각의 CU의 QP 차이 cu_qp_delta를 계산할 수 있고, 특정 계산 방법은 다음과 같을 수 있다.
각각의 기준 CU에 대하여, 인코더는 기준 CU의 QP 차이로서 기준 CU의 QP와 기준 CU의 QP 예측값 사이의 차이를 이용하며, 즉, cu_qp_delta = QPC - QPP이다.
기준 CU가 속하는 최소 픽처 블록에 다른 CU가 포함되는 경우, 인코더는 최소 픽처 블록 내의 다른 CU들의 QP 차이로서 기준 CU의 QP 차이를 이용한다.
즉, 크기가 QPBlkSize보다 크거나 같은 CU에 대하여, 그러한 CU들은 기준 CU들이기 때문에, 인코더는 CU들의 QP들과 QP 예측값들 사이의 차이를 CU들의 cu_qp_delta로서 이용할 수 있다.
크기가 QPBlkSize보다 작은 CU들에 대하여, 즉, 몇몇 CU들이 최소 픽처 블록에 포함되고, 여기서, 최소 픽처 블록의 좌측 상부 코너에 있는 CU가 기준 CU이고, 기준 CU의 QP 예측값은 단계 306을 통해 획득될 수 있다. 그러면, 기준 CU의 cu_qp_delta = QPC - QPP가 단계 305에서 계산된 QP와 결합하여 획득될 수 있고, 그 후에, 기준 CU의 cu_qp_delta 값이 최소 픽처 블록 내의 다른 CU들에 할당된다. 실제 응용에서, 값 할당 동작 이외에, 다른 방법들이 처리를 위해 이용될 수 있는데, 예를 들어, 최소 픽처 블록 내의 CU가 미리 설정된 조건을 충족한다고 결정된 경우, CU가 속하는 최소 픽처 블록의 기준 CU의 cu_qp_delta는 CU 내에 싣는다는 것에 주목해야 한다.
이 실시예에서, 각각의 CU의 cu_qp_delta를 획득한 후에, 인코더는 미리 설정된 조건을 충족하는 CU 내에 CU의 cu_qp_delta를 싣고 있을 수 있다. 미리 설정된 조건을 충족하는 특정 CU는 CU의 압축된 비트 스트림 내의 비제로(non-zero) 양자화된 변환 계수(non-zero quantized transform coefficient)를 갖는 CU일 수 있다.
CU가 스킵 인코딩 모드(skip encoding mode)를 이용하는 경우, CU의 압축된 비트 스트림 내에 비제로 양자화된 변환 계수가 존재하지 않는다. 따라서, 그러한 CU들은 미리 설정된 조건을 충족하지 않고; 스킵 인코딩 모드가 이용되지 않는 경우, CU들은 CU들의 압축된 비트 스트림 내에 비제로 양자화된 변환 계수를 포함할 수 있고, CU들은 미리 설정된 조건을 충족한다.
이 실시예에서, 미리 설정된 조건을 충족하는 CU에 대하여, 인코더는 CU의 다음의 위치에 CU의 cu_qp_delta를 기입할 수 있다:
Figure pct00006
여기서, sig_coeff_num > 0는 현재 CU의 비트 스트림 내에 cu_qp_delta가 존재하는지를 판정하기 위한 조건이고; 판정 조건이 참이면, 현재 CU의 비트 스트림 내에 cu_qp_delta가 존재함을 나타내거나; 또는 판정 조건이 거짓이면, 현재 CU의 비트 스트림 내에 cu_qp_delta가 존재하지 않음을 나타낸다.
크기가 QPBlkSize보다 작은 CU에 대하여, 인코더는 CU가 속하는 최소 픽처 블록 내의 CU들이 미리 설정된 조건을 충족하는지를 판정하고; 하나의 CU가 미리 설정된 조건을 충족하지 않는 경우, 후속하는 CU들이 미리 설정된 조건을 충족하는지의 판정을 계속하고; 후속하는 CU가 미리 설정된 조건을 충족하는 경우, CU 내에 CU의 cu_qp_delta를 기입하고 판정을 중단하며, 즉, cu_qp_delta는 CU들이 미리 설정된 조건을 충족하는지 여부에 상관없이 최소 픽처 블록 내의 다른 CU들 내에 기입되지 않는다는 것에 주목해야 한다.
모든 CU가 미리 설정된 조건을 충족하지는 않기 때문에, 인코더는 미리 설정된 조건을 충족하는 CU에서, CU의 cu_qp_delta를 실을 수 있을 뿐만 아니라, 미리 설정된 조건을 충족하지 않는 CU에 대하여 QP를 재설정할 수도 있다. 특정 방법은 다음과 같을 수 있다.
미리 설정된 조건을 충족하지 않는 각각의 CU에 대하여, 인코더는 다음의 방식으로 CU의 QP를 설정한다:
크기가 QPBlkSize보다 크거나 같은 CU에 대하여, 인코더는 CU의 QP로서 CU의 QP 예측값을 이용하고; 크기가 QPBlkSize보다 작은 CU에 대하여, CU가 속하는 최소 픽처 블록 내의 다른 CU들 중 어느 것도 미리 설정된 조건을 충족하지 않는 경우, 인코더는 CU의 QP로서 CU가 속하는 최소 픽처 블록 내의 기준 CU의 QP 예측값을 이용한다.
미리 설정된 조건을 충족하지 않는 CU의 QP를 재설정하는 것은, 디코더와 동일한 예측값이 후속하는 인코딩된 CU에서 QP 예측 동안 획득될 수 있도록 보장할 수 있다.
308. 인코더는 lcu_qp_depth, cu_qp_delta, 및 각각의 CU를 인코딩하여 비트 스트림을 획득한다.
lcu_qp_depth 및 cu_qp_delta를 획득한 후에, 인코더는 각각의 CU를 인코딩할 수 있다. 이 실시예에서, 인코더에 의해 lcu_qp_depth를 인코딩하는 프로세스는, 인코더에 의해, 고정 길이 코드 또는 가변 길이 코드를 이용하여 lcu_qp_depth에 대한 이진 변환(binary transform)을 수행함으로써 대응하는 이진 코드 워드를 획득하는 것; 및 고정 길이 인코딩, 가변 길이 인코딩, 또는 산술 엔트로피 인코딩의 방법에 따라 인코더에 의해, 단계 302에서 결정된 위치에 대응하는 비트 스트림 내에 획득된 이진 코드 워드를 기입하는 것을 포함할 수 있다.
인코더에 의해 이용되는 가변 길이 코드는 부호 없는 지수-골롬(Exponential-Golomb) 코드, 또는 다른 유사한 가변 길이 코드들일 수 있고, 본원에서 특정하게 한정되지 않는다.
인코더에 의해 cu_qp_delta를 인코딩하는 프로세스는:
인코더에 의해, 가변 길이 코드를 이용하여, 미리 설정된 조건을 충족하는 CU의 cu_qp_delta에 대한 이진 변환을 수행함으로써, 대응하는 이진 코드 워드를 획득하는 것; 및 인코더에 의해 가변 길이 인코딩 또는 산술 엔트로피 인코딩의 방법에 따라 비트 스트림 내에 획득된 이진 코드 워드를 기입하는 것을 포함할 수 있다.
인코더는, 고정 길이 인코딩, 가변 길이 인코딩, 또는 산술 엔트로피 인코딩의 방법에 따라, 단계 307에서 결정된 위치에 대응하는 비트 스트림 내에 획득된 이진 코드 워드를 기입한다.
인코더에 의해 이용된 가변 길이 코드는 부호 있는 지수-골롬(Exponential-Golomb) 코드, 또는 다른 유사한 가변 길이 코드들일 수 있고, 본원에서 특정하게 한정되지 않는다.
이 실시예에서, 인코더에 의해 CU를 인코딩하는 프로세스는 본원에서 한정되지 않는다. 인코딩의 완료시, 비트 스트림은 획득되고, 인코더는 비트 스트림을 디코더에 전송할 수 있다.
309. 디코더는 수신된 비트 스트림을 디코딩하여 lcu_qp_depth를 획득한다.
비트 스트림을 수신한 후에, 디코더는, 인코더와의 사전 협의에 따라, 비트 스트림 내의 lcu_qp_depth의 위치가 SPS, PPS, 또는 SH임을 알게 되고, 그에 따라 고정 길이 디코딩, 가변 길이 디코딩, 또는 산술 엔트로피 디코딩의 방법을 이용함으로써 그 위치로부터 이진 코드 워드를 획득할 수 있다.
디코더는 고정 길이 코드 또는 가변 길이 코드를 이용하여 이진 코드에 대한 역 이진 변환을 수행함으로써 lcu_qp_depth를 획득한다.
이 실시예에서의 가변 길이 코드는 부호 없는 지수-골롬(Exponential-Golomb) 코드, 또는 다른 유사한 가변 길이 코드들일 수 있고, 본원에서 특정하게 한정되지 않는다.
이 실시예에서의 lcu_qp_depth는 시퀀스, 또는 픽처, 또는 슬라이스에서 각각의 LCU 내의 독립적 QP를 갖는 최소 픽처 블록의 크기를 나타내는 데 이용된다.
310. 디코더는 독립적 QP를 갖는 최소 픽처 블록의 크기 QPBlkSize를 계산한다.
계산에 의해 lcu_qp_depth를 획득한 후에, 디코더는 lcu_qp_depth에 따라 계산에 의해 QPBlkSize를 획득할 수 있다. 특정 계산 방법은 단계 304에서 인코더에 의해 QPBlkSize를 계산하기 위한 방법과 동일할 수 있고, 본원에서는 더 설명하지 않는다.
311. 디코더는 미리 설정된 조건을 충족하는 CU를 파싱하여 CU의 cu_qp_delta를 획득한다.
이 실시예에서, 미리 설정된 조건을 충족하는 각각의 CU에 대하여, 디코더는 가변 길이 디코딩 또는 산술 엔트로피 디코딩의 방법을 이용함으로써 CU의 비트 스트림 내의 대응하는 위치로부터 이진 코드 워드를 획득할 수 있다.
디코더는 가변 길이 코드를 이용하여 이진 코드 워드에 대한 역 이진 변환을 수행함으로써 CU의 cu_qp_delta를 획득한다.
이 실시예에서의 가변 길이 코드는 부호 있는 지수-골롬(Exponential-Golomb) 코드, 또는 다른 유사한 가변 길이 코드들일 수 있고, 본원에서 특정하게 한정되지 않는다.
단계 307에서의 설명에 따라, sig_coeff_num > 0은 현재 CU의 비트 스트림 내에 cu_qp_delta가 존재하는지를 판정하기 위한 조건이고; 따라서, 디코더는, 판정 조건을 체크함으로써, CU가 미리 설정된 조건을 충족하는지를 알 수 있고, 미리 설정된 조건을 충족하는 CU는 또한 CU의 압축된 비트 스트림 내의 비제로 양자화된 변환 계수를 갖는 CU일 수 있다.
이 실시예에서, 모든 CU가 미리 설정된 조건을 충족하는 CU들은 아니기 때문에, 디코더는 다음의 방식으로 모든 CU의 cu_qp_delta를 결정할 수 있다.
크기가 QPBlkSize보다 크거나 같은 각각의 CU에 대하여, 디코더는 CU가 미리 설정된 조건을 충족하는지를 판정하고, CU가 미리 설정된 조건을 충족하는 경우, CU를 파싱하여 CU의 cu_qp_delta를 획득하거나, 또는 CU가 미리 설정된 조건을 충족하지 않는 경우, CU의 cu_qp_delta를 0으로 설정하고; 및
크기가 QPBlkSize보다 작은 CU에 대하여, 디코더는 CU가 속하는 최소 픽처 블록을 결정하고, 최소 픽처 블록 내의 CU들의 디코딩 오더에 따라 차례로, 최소 픽처 블록 내의 각각의 CU가 미리 설정된 조건을 충족하는지를 판정하고, 그러한 경우, 판정을 중단하고, 최소 픽처 블록 내의 모든 CU의 cu_qp_delta로서 CU의 cu_qp_delta를 이용하거나, 또는 최소 픽처 블록 내의 CU들 중 어느 것도 미리 설정된 조건을 충족하지 않는 경우, 최소 픽처 블록 내의 모든 CU의 cu_qp_delta를 0으로 설정한다.
312. 디코더는 QPBlkSize 및 CU의 크기에 따라 각각의 CU의 QP 예측값을 획득한다.
QPBlkSize를 획득한 후에, 디코더는 각각의 CU의 크기 및 QPBlkSize에 따라 각각의 CU의 QP 예측값을 획득할 수 있다.
이 단계에서의 특정 프로세스는 단계 306에서 인코더에 의해 각각의 CU의 QP 예측값을 획득하기 위한 방법과 동일하다. 단계 306에서 설명된 바와 같이, 인접 영역은 인코딩된 또는 디코딩된 영역이다. 인코딩 오더는 디코딩 오더와 동일하기 때문에, 인코딩된 영역과 디코딩된 영역은 동일한 영역이다. 인접 영역에서의 CU들의 QP들이 획득될 수 있기 때문에, 각각의 CU의 QP 예측값은 단계 306에서와 동일한 방법에 따라 획득될 수 있다.
각각의 CU의 QP 예측값이 획득된 후에, CU의 QP는 단계 311에서 획득한 각각의 CU의 cu_qp_delta와 결합하여 획득될 수 있고, 즉, QP = QP 예측값 + cu_qp_delta이다.
313. 디코더는 각각의 CU의 QP 예측값 및 cu_qp_delta에 따라 각각의 CU의 QP를 계산한다.
계산에 의해 각각의 CU의 QP 예측값을 획득한 후에, 디코더는 각각의 CU의 QP 예측값 및 cu_qp_delta에 따라 각각의 CU의 QP를 계산할 수 있다. 특정 방법은:
미리 설정된 조건을 충족하지 않고 크기가 QPBlkSize보다 크거나 같은 CU에 대하여, 디코더에 의해, CU의 QP로서 CU의 QP 예측값을 이용하고;
미리 설정된 조건을 충족하고 크기가 QPBlkSize보다 크거나 같은 CU에 대하여, 디코더에 의해, CU의 QP로서 CU의 QP 예측값과 CU의 cu_qp_delta의 합을 이용하고;
크기가 QPBlkSize보다 작은 CU에 대하여, CU가 미리 설정된 조건을 충족하는 경우, 디코더에 의해, CU가 속하는 최소 픽처 블록의 좌측 상부 CU의 QP 예측값을 획득하여, CU의 QP로서 QP 예측값과 cu_qp_delta의 합을 이용하고, 최소 픽처 블록 내의 모든 CU의 QP로서 CU의 QP를 이용하고; 및
크기가 QPBlkSize보다 작은 CU에 대하여, CU가 속하는 최소 픽처 블록 내의 CU들 중 어느 것도 미리 설정된 조건을 충족하지 않는 경우, 디코더에 의해, CU가 속하는 최소 픽처 블록의 좌측 상부 CU의 QP 예측값을 획득하여, 최소 픽처 블록 내의 모든 CU의 QP로서 QP 예측값을 이용하는 것일 수 있다.
314. 디코더는 각각의 CU의 QP에 따라 각각의 CU를 디코딩한다.
이 실시예에서, 디코더는 단계 313에서 획득한 각각의 CU의 QP를 이용함으로써 각각의 CU에 대해 역 양자화 처리 및 후속하는 디코딩 프로세스를 수행할 수 있고, 이것은 본원에서 특정하게 한정되지 않는다.
용이한 이해를 위해, 아래에서는 본 발명에 따른 인코딩/디코딩 방법을 간략하게 설명하기 위하여 특정 사례를 이용한다. 도 5를 참조하면, 본 발명에 따른 LCU의 개략적인 구조도가 도시되어 있고, 여기서, max_coding_block_size는 64이고, QPBlkSize는 16이다.
도 5에서 알 수 있는 바와 같이, LCU는 37개의 CU를 포함하고, X표로 표시된 CU는 스킵 인코딩을 이용하는 CU, 즉, 미리 설정된 조건을 충족하지 않는 CU이다. 남아 있는 CU들에서, CU3 및 CU23의 압축된 비트 스트림들에 포함되는 양자화된 변환 계수들은 둘다 0이라고 가정하면, CU3 및 CU23은 또한 미리 설정된 조건을 충족하지 않는 CU들이고, 남아 있는 CU들은 미리 설정된 조건을 충족하는 CU들이다.
도 3의 실시예에 설명된 인코딩 프로세스에 따르면, 도 5의 LCU의 인코딩 후에 획득된 비트 스트림의 구조는 도 6에 도시되어 있고, 여기서, M1, M2, ..., 및 M37은 헤더 정보이고, C1, C4, ..., 및 C37은 변환 계수들이고, DQP1, DQP4, ..., 및 DQP37은 cu_qp_delta이다.
이 실시예에서, 인코더는, 인코딩 동안, 인코딩될 데이터 내에 양자화 깊이 파라미터 - 양자화 깊이 파라미터는 독립적 QP를 갖는 최소 픽처 블록의 크기를 나타내는 데 이용됨 - 를 기입할 수 있고, 미리 설정된 조건을 충족하는 각각의 CU에 대하여, CU 내에 CU의 QP 차이를 실을 수 있으므로, 각각의 LCU는 오직 하나의 QP에 대응하지 않고, LCU의 미리 설정된 조건을 충족하는 CU는 QP에 대응한다. 따라서, 인코더는 비트 레이트 제어를 위한 가장 미세한 단위로서 CU를 이용할 수 있다. 하나의 LCU가 보통 복수의 CU를 포함하기 때문에, LCU의 비트 레이트 제어의 정밀도가 효과적으로 향상될 수 있다.
둘째, 인코더는 미리 설정된 조건을 충족하는 CU에서만 CU의 QP 차이를 싣고, 모든 CU에서 QP 차이를 싣지는 않는다. 따라서, 인코딩 오버헤드가 감소할 수 있고, 이에 따라 전체 압축 효율이 향상된다.
셋째, 이 실시예에서, 인코더 및 디코더는 복수의 예측 방법들을 이용하여 CU의 QP 예측값을 계산함으로써, 계산 프로세스는 더욱 유연성 있고 복수의 상이한 환경에 적응할 수 있다.
위에서는 인코딩/디코딩 방법을 설명하고 있다. 다음에는 다른 인코딩/디코딩 방법을 설명한다. 구체적으로 도 7을 참조하면, 본 발명에 따른 인코딩/디코딩 방법의 다른 실시예는 다음을 포함한다:
701. 인코더는 인코딩될 LCU를 획득한다.
이 실시예에서, 인코더에 의해 획득되는 인코딩될 데이터는 하나의 LCU이다.
702. 인코더는 미리 설정된 비트 레이트 제어 알고리즘에 따라 LCU의 양자화 깊이 파라미터 lcu_qp_depth를 결정한다.
인코더는 미리 설정된 비트 레이트 제어 알고리즘에 따라 lcu_qp_depth의 대응하는 값을 획득한다. 구체적으로, 인코더는 교체들을 시도함으로써, 즉, 끊임없이 lcu_qp_depth의 값을 조절하여 아날로그 인코딩을 수행함으로써 lcu_qp_depth의 값을 획득할 수 있으므로, 인코딩 후의 비트 레이트가 예상 요건에 따른다. 특정 프로세스가 본원에서 한정되지 않는다.
이 실시예에서 lcu_qp_depth의 값 범위는 0으로부터 MaxSymbol까지의 모든 정수들일 수 있고, 여기서 MaxSymbol는 다음의 방법을 이용하여 계산될 수 있다:
MaxSymbol = log2(max_coding_block_size) - log2(min_coding_block_size);
여기서, max_coding_block_size는 최대 CU의 크기, 즉, LCU의 크기를 나타내고, min_coding_block_size는 최소 CU의 크기를 나타낸다.
이 실시예 및 후속 실시예들에서 설명된 크기는 측면 길이를 가리키고, 예를 들어, CU가 32*32인 경우, CU의 크기는 32로서 정의된다는 것에 주목해야 한다.
이 실시예에서, lcu_qp_depth는 LCU 내의 독립적 QP를 갖는 최소 픽처 블록의 크기를 표시하는 데 이용된다. lcu_qp_depth가 0일 때는 독립적 QP를 갖는 최소 픽처 블록이 LCU임을 나타내고, lcu_qp_depth가 1일 때는 LCU가 4개의 32*32 CU로 분할되고, 최소 픽처 블록의 크기는 32임을 나타내는 등등이다.
이 실시예에서 lcu_qp_depth는 현재 LCU 내의 독립적 QP를 갖는 최소 픽처 블록의 크기이고, 즉, 시퀀스, 픽처, 또는 슬라이스에서의 각각의 LCU에 의해 이용된 lcu_qp_depth는 독립적이고, 각각의 LCU에 의해 이용된 lcu_qp_depth는 상이할 수 있다.
703. 인코더는 인코딩 오더에 따라 현재 LCU 내의 CU의 압축된 비트 스트림 내의 비제로 양자화된 변환 계수를 갖는 제1 CU 내에 lcu_qp_depth를 기입한다.
이 실시예에서, lcu_qp_depth 값을 획득한 후에, 인코더는 인코딩 오더에 따라 현재 LCU 내의 CU의 압축된 비트 스트림 내의 비제로 양자화된 변환 계수를 갖는 제1 CU 내에 lcu_qp_depth를 기입할 수 있다:
Figure pct00007
여기서, lcu_qp_depthFlag 변수는 CU의 압축된 비트 스트림 내의 비제로 양자화된 변환 계수를 갖는 제1 CU에서만 lcu_qp_depth를 전송하는 목적에 도달하기 위해 도입된다. 물론, 다른 방법들을 또한 이용하여 동일한 비트 스트림 구조를 구현할 수 있다.
이 실시예에서, sig_coeff_num > 0는 lcu_qp_depth가 현재 CU의 비트 스트림에 존재하는지를 판정하기 위한 조건이다. 판정 조건이 충족되면, lcu_qp_depth는 또한 현재 CU의 비트 스트림의 다른 위치에 놓일 수 있고, 이것은 본원에서 특정하게 한정되지 않는다.
모든 CU가 lcu_qp_depth를 싣기 위한 조건을 충족하는 것은 아니기 때문에, 이 실시예에서, 인코더는, CU의 인코딩 오더에 따라, 모든 CU가 lcu_qp_depth를 싣기 위한 조건을 충족하는지, 즉, CU가 CU의 압축된 비트 스트림 내의 비제로 양자화된 변환 계수를 갖는 제1 CU인지를 체크한다.
현재 CU가 lcu_qp_depth를 싣기 위한 조건을 충족하지 않는 경우, 인코더는 현재 LCU의 후속하는 CU들을 계속해서 체크한다. CU에서, 그 CU가 lcu_qp_depth를 싣기 위한 조건을 충족하는 것이 발견되면, lcu_qp_depth는 위에서 특정된 위치에서 CU 내에 기입된다.
이 실시예에서, CU 내에 lcu_qp_depth를 기입한 후에, 인코더는 CU가 속하는 LCU의 다른 CU들 내에 다시 lcu_qp_depth를 기입할 필요가 없다.
단계들 704-708은 도 3에 도시된 단계들 304-308과 동일하므로, 본원에서 더 설명하지 않는다.
709. 디코더는 수신된 비트 스트림을 디코딩하여 lcu_qp_depth를 획득한다.
비트 스트림을 수신한 후에, 디코더는, 인코더와의 사전 협의에 따라, 비트 스트림 내의 lcu_qp_depth의 위치를 알 수 있고, 그에 따라 고정 길이 디코딩, 가변 길이 디코딩, 또는 산술 엔트로피 디코딩의 방법을 이용함으로써 그 위치로부터 이진 코드 워드를 획득한다.
디코더는 고정 길이 코드 또는 가변 길이 코드를 이용하여 이진 코드에 대한 역 이진 변환을 수행함으로써 lcu_qp_depth를 획득한다.
이 실시예에서의 가변 길이 코드는 부호 없는 지수-골롬(Exponential-Golomb) 코드, 또는 다른 유사한 가변 길이 코드들일 수 있고, 본원에서 특정하게 한정되지 않는다.
이 실시예에서의 lcu_qp_depth는 현재 LCU 내의 독립적 QP를 갖는 최소 픽처 블록의 크기를 나타내는 데 이용된다.
단계들 710-714는 도 3에 도시된 실시예들에서 설명된 단계들 310-314와 동일하므로, 본원에서 더 설명하지 않는다.
용이한 이해를 위해, 아래에서는 본 발명에 따른 인코딩/디코딩 방법을 간략하게 설명하기 위하여 특정 사례를 이용한다. 또한, 도 5를 참조하면, 본 발명에 따른 LCU의 개략적인 구조도가 도시되어 있고, 여기서, max_coding_block_size는 64이고, QPBlkSize는 16이다.
도 5에서 알 수 있는 바와 같이, LCU는 37개의 CU를 포함하고, X표로 표시된 CU는 스킵 인코딩을 이용하는 CU, 즉, 미리 설정된 조건을 충족하지 않는 CU이다. 남아 있는 CU들에서, CU3 및 CU23의 압축된 비트 스트림들에 포함되는 양자화된 변환 계수들은 둘다 0이라고 가정하면, CU3 및 CU23은 또한 미리 설정된 조건을 충족하지 않는 CU들이고, 남아 있는 CU들은 미리 설정된 조건을 충족하는 CU들이다.
도 7의 실시예에 설명된 인코딩 프로세스에 따르면, 도 5의 LCU의 인코딩 후에 획득된 비트 스트림의 구조는 도 8에 도시되어 있고, 여기서, 깊이는 lcu_qp_depth이고, M1, M2, ..., 및 M37은 헤더 정보이고, C1, C4, ..., 및 C37은 변환 계수들이고, DQP1, DQP4, ..., 및 DQP37은 cu_qp_delta이다.
이 실시예에서, 인코더는, 인코딩 동안, 인코딩될 데이터 내에 양자화 깊이 파라미터 - 양자화 깊이 파라미터는 독립적 QP를 갖는 최소 픽처 블록의 크기를 나타내는 데 이용됨 - 를 기입할 수 있고, 미리 설정된 조건을 충족하는 각각의 CU에 대하여, CU 내에 CU의 QP 차이를 실을 수 있으므로, 각각의 LCU는 오직 하나의 QP에 대응하지 않고, LCU의 미리 설정된 조건을 충족하는 CU는 QP에 대응한다. 따라서, 인코더는 비트 레이트 제어를 위한 가장 미세한 단위로서 CU를 이용할 수 있다. 하나의 LCU가 보통 복수의 CU를 포함하기 때문에, LCU의 비트 레이트 제어의 정밀도가 효과적으로 향상될 수 있다.
둘째, 인코더는 미리 설정된 조건을 충족하는 CU에서만 CU의 QP 차이를 싣고, 모든 CU에서 QP 차이를 싣지는 않는다. 따라서, 인코딩 오버헤드가 감소할 수 있고, 이에 따라 전체 압축 효율이 향상된다.
셋째, 이 실시예에서, 인코더 및 디코더는 복수의 예측 방법들을 이용하여 CU의 QP 예측값을 계산함으로써, 계산 프로세스는 더욱 유연성 있고 복수의 상이한 환경에 적응할 수 있다.
또한, 이 실시예에서, lcu_qp_depth는 현재 LCU 내의 독립적 QP를 갖는 최소 픽처 블록의 크기를 나타내는 데 이용된다. 따라서, 각각의 LCU는 하나의 lcu_qp_depth를 실으므로, 상이한 LCU들은 상이한 lcu_qp_depth를 이용할 수 있음으로써, LCU의 비트 레이트 제어의 정밀도를 더 향상시킬 수 있다.
다음에는 본 발명에 따른 인코딩 장치의 실시예를 설명한다. 도 9를 참조하면, 본 발명에 따른 인코딩 장치의 실시예는,
인코딩될 데이터를 획득하도록 구성된 데이터 획득 유닛(901) - 인코딩될 데이터는 적어도 하나의 최대 코딩 유닛(LCU)임 - ;
미리 설정된 비트 레이트 제어 알고리즘에 따라 LCU의 양자화 깊이 파라미터를 결정해서, 양자화 깊이 파라미터를 데이터 획득 유닛(901)에 의해 획득된 인코딩될 데이터에 기입하도록 구성된 깊이 파라미터 처리 유닛(902) - 양자화 깊이 파라미터는 LCU 내의 독립적 QP를 갖는 최소 픽처 블록의 크기를 나타내는 데 이용됨 - ;
최소 픽처 블록의 크기 및 LCU에 포함된 각각의 CU의 크기에 따라 각각의 CU의 QP를 결정하도록 구성된 양자화 파라미터 결정 유닛(903);
양자화 파라미터 결정 유닛(903)에 의해 결정된 각각의 CU의 QP 및 각각의 CU의 QP 예측값에 따라 각각의 CU의 QP 차이를 계산하도록 구성된 계산 유닛(904);
미리 설정된 조건을 충족하는 각각의 CU에 대하여, CU 내에 CU의 QP 차이를 싣도록 구성된 채움(filling) 유닛(905); 및
양자화 깊이 파라미터, 미리 설정된 조건을 충족하는 CU의 QP 차이, 및 각각의 CU를 인코딩하여 비트 스트림을 획득하도록 구성된 인코딩 유닛(906)
을 포함한다.
용이한 이해를 위해, 다음에는 본 발명에 따른 인코딩 장치를 상세히 설명한다. 도 10을 참조하면, 본 발명에 따른 인코딩 장치의 다른 실시예는,
인코딩될 데이터를 획득하도록 구성된 데이터 획득 유닛(1001) - 인코딩될 데이터는 적어도 하나의 최대 코딩 유닛(LCU)임 - ;
미리 설정된 비트 레이트 제어 알고리즘에 따라 LCU의 양자화 깊이 파라미터를 결정해서, 양자화 깊이 파라미터를 데이터 획득 유닛(1001)에 의해 획득된 인코딩될 데이터에 기입하도록 구성된 깊이 파라미터 처리 유닛(1002) - 양자화 깊이 파라미터는 LCU 내의 독립적 QP를 갖는 최소 픽처 블록의 크기를 나타내는 데 이용됨 - ;
최소 픽처 블록의 크기 및 LCU에 포함된 각각의 CU의 크기에 따라 각각의 CU의 QP를 결정하도록 구성된 양자화 파라미터 결정 유닛(1003);
양자화 파라미터 결정 유닛(1003)에 의해 결정된 각각의 CU의 QP 및 각각의 CU의 QP 예측값에 따라 각각의 CU의 QP 차이를 계산하도록 구성된 계산 유닛(1005);
미리 설정된 조건을 충족하는 각각의 CU에 대하여, CU 내에 CU의 QP 차이를 싣도록 구성된 채움 유닛(1006); 및
양자화 깊이 파라미터, 미리 설정된 조건을 충족하는 CU의 QP 차이, 및 각각의 CU를 인코딩하여 비트 스트림을 획득하도록 구성된 인코딩 유닛(1007)
을 포함한다.
이 실시예에서의 인코딩 장치는,
각각의 기준 CU에 인접한 CU들의 QP들에 따라 각각의 기준 CU의 QP 예측값을 계산하도록 구성된 예측 유닛(1004)을 더 포함할 수 있고,
여기서, 크기가 최소 픽처 블록의 크기보다 크거나 같은 각각의 CU가 기준 CU로서 이용되고, 크기가 최소 픽처 블록의 크기보다 작은 CU에 대하여, CU가 속하는 최소 픽처 블록의 좌측 상부 CU가 기준 CU로서 이용된다.
이 실시예에서 예측 유닛(1004)은,
각각의 기준 CU에 대하여, 기준 CU에 인접한 CU들이 존재하는지를 판정하도록 구성된 제1 체크 모듈(10041) - 기준 CU에 인접한 CU들은 기준 CU의 좌측 CU, 상부 CU, 및 좌측 상부 CU를 포함함 - ;
기준 CU에 인접한 CU들 중 어느 것도 존재하지 않을 때, 기준 CU가 속하는 슬라이스 또는 픽처에 따라 기준 CU의 QP 예측값을 결정하도록 구성된 제1 예측 모듈(10042);
기준 CU의 좌측 CU만이 존재할 때, 기준 CU의 QP 예측값으로서 좌측 CU의 QP를 이용하도록 구성된 제2 예측 모듈(10043);
기준 CU의 상부 CU만이 존재할 때, 기준 CU의 QP 예측값으로서 상부 CU의 QP를 이용하도록 구성된 제3 예측 모듈(10044); 및
기준 CU에 인접한 모든 CU들이 존재할 때 좌측 CU의 QP와 좌측 상부 CU의 QP 사이의 제1 차이 및 상부 CU의 QP와 좌측 상부 CU의 QP 사이의 제2 차이를 획득하고, 제1 차이가 제2 차이보다 작으면 기준 CU의 QP 예측값으로서 상부 CU의 QP를 이용하거나, 또는 제1 차이가 제2 차이보다 크거나 같으면 기준 CU의 QP 예측값으로서 좌측 CU의 QP를 이용하도록 구성된 제4 예측 모듈(10045)
을 포함한다.
도 11을 참조하면, 본 발명에 따른 인코딩 장치의 다른 실시예는,
인코딩될 데이터를 획득하도록 구성된 데이터 획득 유닛(1101) - 인코딩될 데이터는 적어도 하나의 최대 코딩 유닛(LCU)임 - ;
미리 설정된 비트 레이트 제어 알고리즘에 따라 LCU의 양자화 깊이 파라미터를 결정해서, 양자화 깊이 파라미터를 데이터 획득 유닛(1101)에 의해 획득된 인코딩될 데이터에 기입하도록 구성된 깊이 파라미터 처리 유닛(1102) - 양자화 깊이 파라미터는 LCU 내의 독립적 QP를 갖는 최소 픽처 블록의 크기를 나타내는 데 이용됨 - ;
최소 픽처 블록의 크기 및 LCU에 포함된 각각의 CU의 크기에 따라 각각의 CU의 QP를 결정하도록 구성된 양자화 파라미터 결정 유닛(1103);
양자화 파라미터 결정 유닛(1103)에 의해 결정된 각각의 CU의 QP 및 각각의 CU의 QP 예측값에 따라 각각의 CU의 QP 차이를 계산하도록 구성된 계산 유닛(1105);
미리 설정된 조건을 충족하는 각각의 CU에 대하여, CU 내에 CU의 QP 차이를 싣도록 구성된 채움 유닛(1106); 및
양자화 깊이 파라미터, 미리 설정된 조건을 충족하는 CU의 QP 차이, 및 각각의 CU를 인코딩하여 비트 스트림을 획득하도록 구성된 인코딩 유닛(1107)
을 포함한다.
이 실시예에서의 인코딩 장치는,
각각의 기준 CU에 인접한 CU들의 QP들에 따라 각각의 기준 CU의 QP 예측값을 계산하도록 구성된 예측 유닛(1104)을 더 포함할 수 있고,
여기서, 크기가 최소 픽처 블록의 크기보다 크거나 같은 각각의 CU가 기준 CU로서 이용되고, 크기가 최소 픽처 블록의 크기보다 작은 CU에 대하여, CU가 속하는 최소 픽처 블록의 좌측 상부 CU가 기준 CU로서 이용된다.
이 실시예에서 예측 유닛(1104)은,
각각의 기준 CU에 대하여, 기준 CU의 좌측 CU가 존재하는지를 판정하도록 구성된 제2 체크 모듈(11041);
기준 CU의 좌측 CU가 존재할 때, 기준 CU의 QP 예측값으로서 좌측 CU의 QP를 이용하도록 구성된 제5 예측 모듈(11042);
기준 CU의 좌측 CU가 존재하지 않고, 기준 CU의 상부 CU 또는 기준 CU의 이전의 인코딩된 CU가 존재할 때, 기준 CU의 QP 예측값으로서 상부 CU의 QP 또는 이전의 인코딩된 CU의 QP를 이용하도록 구성된 제6 예측 모듈(11043); 및
기준 CU의 좌측 CU, 상부 CU, 및 이전의 인코딩된 CU 중 어느 것도 존재하지 않을 때, 기준 CU가 속하는 슬라이스 또는 픽처에 따라 기준 CU의 QP 예측값을 결정하도록 구성된 제7 예측 모듈(11044)
을 포함한다.
이 실시예에서, 인코더는, 인코딩 동안, 인코딩될 데이터 내에 양자화 깊이 파라미터 - 양자화 깊이 파라미터는 독립적 QP를 갖는 최소 픽처 블록의 크기를 나타내는 데 이용됨 - 를 기입할 수 있고, 미리 설정된 조건을 충족하는 각각의 CU에 대하여, CU 내에 CU의 QP 차이를 실을 수 있으므로, 각각의 LCU는 오직 하나의 QP에 대응하지 않고, LCU의 미리 설정된 조건을 충족하는 CU는 QP에 대응한다. 따라서, 인코더는 비트 레이트 제어를 위한 가장 미세한 단위로서 CU를 이용할 수 있다. 하나의 LCU가 보통 복수의 CU를 포함하기 때문에, LCU의 비트 레이트 제어의 정밀도가 효과적으로 향상될 수 있다.
둘째, 인코더는 미리 설정된 조건을 충족하는 CU에서만 CU의 QP 차이를 싣고, 모든 CU에서 QP 차이를 싣지는 않는다. 따라서, 인코딩 오버헤드가 감소할 수 있고, 이에 따라 전체 압축 효율이 향상된다.
다음에는 본 발명에 따른 디코딩 장치의 실시예를 설명한다. 도 12를 참조하면, 본 발명에 따른 디코딩 장치의 실시예는,
수신된 비트 스트림을 파싱하여 양자화 깊이 파라미터를 획득하도록 구성된 제1 파싱 유닛(1201) - 양자화 깊이 파라미터는 LCU 내의 독립적 QP를 갖는 최소 픽처 블록의 크기를 나타내는 데 이용됨 - ;
최소 픽처 블록의 크기 및 LCU에 포함된 각각의 CU의 크기에 따라 각각의 CU의 QP 예측값을 계산하도록 구성된 파라미터 예측 유닛(1202);
미리 설정된 조건을 충족하는 각각의 CU에 대하여, 비트 스트림을 파싱하여 CU의 QP 차이를 획득하도록 구성된 제2 파싱 유닛(1203);
파라미터 예측 유닛(1202)에 의해 획득된 각각의 CU의 QP 예측값 및 제2 파싱 유닛(1203)에 의한 파싱에 의해 획득된 QP 차이에 따라 각각의 CU의 QP를 계산하도록 구성된 파라미터 계산 유닛(1204); 및
파라미터 계산 유닛(1204)에 의한 계산에 의해 획득된 각각의 CU의 QP에 따라 각각의 CU를 디코딩하도록 구성된 디코딩 유닛(1205)
을 포함한다.
용이한 이해를 위해, 다음에 본 발명에 따른 인코딩 장치를 상세히 설명한다. 구체적으로 도 13을 참조하면, 본 발명에 따른 디코딩 장치의 다른 실시예는,
수신된 비트 스트림을 파싱하여 양자화 깊이 파라미터를 획득하도록 구성된 제1 파싱 유닛(1301) - 양자화 깊이 파라미터는 LCU 내의 독립적 QP를 갖는 최소 픽처 블록의 크기를 나타내는 데 이용됨 - ;
최소 픽처 블록의 크기 및 LCU에 포함된 각각의 CU의 크기에 따라 각각의 CU의 QP 예측값을 계산하도록 구성된 파라미터 예측 유닛(1302);
미리 설정된 조건을 충족하는 각각의 CU에 대하여, 비트 스트림을 파싱하여 CU의 QP 차이를 획득하도록 구성된 제2 파싱 유닛(1303);
파라미터 예측 유닛(1302)에 의해 획득된 각각의 CU의 QP 예측값 및 제2 파싱 유닛(1303)에 의한 파싱에 의해 획득된 QP 차이에 따라 각각의 CU의 QP를 계산하도록 구성된 파라미터 계산 유닛(1304); 및
파라미터 계산 유닛에 의한 계산에 의해 획득된 각각의 CU의 QP에 따라 각각의 CU를 디코딩하도록 구성된 디코딩 유닛(1305)
을 포함한다.
파라미터 예측 유닛(1302)은,
각각의 기준 CU에 대하여, 기준 CU에 인접한 CU들이 존재하는지를 판정하도록 구성된 제1 파라미터 체크 모듈(13021) - 기준 CU에 인접한 CU들은 기준 CU의 좌측 CU, 상부 CU, 및 좌측 상부 CU를 포함하고, 크기가 최소 픽처 블록의 크기보다 크거나 같은 각각의 CU가 기준 CU로서 이용되고, 크기가 최소 픽처 블록의 크기보다 작은 CU에 대하여, CU가 속하는 최소 픽처 블록의 좌측 상부 CU가 기준 CU로서 이용됨 - ;
기준 CU에 인접한 CU들 중 어느 것도 존재하지 않을 때, 기준 CU가 속하는 슬라이스 또는 픽처에 따라 기준 CU의 QP 예측값을 결정하도록 구성된 제1 파라미터 예측 모듈(13022);
기준 CU의 좌측 CU만이 존재할 때, 기준 CU의 QP 예측값으로서 좌측 CU의 QP를 이용하도록 구성된 제2 파라미터 예측 모듈(13023);
기준 CU의 상부 CU만이 존재할 때, 기준 CU의 QP 예측값으로서 상부 CU의 QP를 이용하도록 구성된 제3 파라미터 예측 모듈(13024); 및
기준 CU에 인접한 모든 CU들이 존재할 때 좌측 CU의 QP와 좌측 상부 CU의 QP 사이의 제1 차이 및 상부 CU의 QP와 좌측 상부 CU의 QP 사이의 제2 차이를 획득하고, 제1 차이가 제2 차이보다 작으면 기준 CU의 QP 예측값으로서 상부 CU의 QP를 이용하거나, 또는 제1 차이가 제2 차이보다 크거나 같으면 기준 CU의 QP 예측값으로서 좌측 CU의 QP를 이용하도록 구성된 제4 파라미터 예측 모듈(13025)
을 더 포함할 수 있다.
이 실시예에서의 파라미터 계산 유닛(1304)은,
미리 설정된 조건을 충족하지 않고 크기가 최소 픽처 블록의 크기보다 크거나 같은 CU에 대하여, CU의 QP로서 CU의 QP 예측값을 이용하도록 구성된 제1 계산 모듈(13041);
미리 설정된 조건을 충족하고 크기가 최소 픽처 블록의 크기보다 크거나 같은 CU에 대하여, CU의 QP로서 CU의 QP 예측값과 CU의 QP 차이의 합을 이용하도록 구성된 제2 계산 모듈(13042);
크기가 최소 픽처 블록의 크기보다 작은 CU에 대하여, CU가 미리 설정된 조건을 충족하는 경우, CU가 속하는 최소 픽처 블록의 좌측 상부 CU의 QP 예측값을 획득하여, CU의 QP로서 CU의 QP 예측값과 QP 차이의 합을 이용하고, 최소 픽처 블록 내의 모든 CU의 QP로서 CU의 QP를 이용하도록 구성된 제3 계산 모듈(13043); 및
크기가 최소 픽처 블록의 크기보다 작은 CU에 대하여, CU가 속하는 최소 픽처 블록 내의 CU들 중 어느 것도 미리 설정된 조건을 충족하지 않는 경우, CU가 속하는 최소 픽처 블록의 좌측 상부 CU의 QP 예측값을 획득하여, 최소 픽처 블록 내의 모든 CU의 QP로서 QP 예측값을 이용하도록 구성된 제4 계산 모듈(13044)
을 더 포함할 수 있다.
도 14를 참조하면, 본 발명에 따른 디코딩 장치의 다른 실시예는,
수신된 비트 스트림을 파싱하여 양자화 깊이 파라미터를 획득하도록 구성된 제1 파싱 유닛(1401) - 양자화 깊이 파라미터는 LCU 내의 독립적 QP를 갖는 최소 픽처 블록의 크기를 나타내는 데 이용됨 - ;
최소 픽처 블록의 크기 및 LCU에 포함된 각각의 CU의 크기에 따라 각각의 CU의 QP 예측값을 계산하도록 구성된 파라미터 예측 유닛(1402);
미리 설정된 조건을 충족하는 각각의 CU에 대하여, 비트 스트림을 파싱하여 CU의 QP 차이를 획득하도록 구성된 제2 파싱 유닛(1403);
파라미터 예측 유닛(1402)에 의해 획득된 각각의 CU의 QP 예측값 및 제2 파싱 유닛(1403)에 의한 파싱에 의해 획득된 QP 차이에 따라 각각의 CU의 QP를 계산하도록 구성된 파라미터 계산 유닛(1404); 및
파라미터 계산 유닛에 의한 계산에 의해 획득된 각각의 CU의 QP에 따라 각각의 CU를 디코딩하도록 구성된 디코딩 유닛(1405)
을 포함한다.
파라미터 예측 유닛(1402)은,
각각의 기준 CU에 대하여, 기준 CU의 좌측 CU가 존재하는지를 판정하도록 구성된 제2 파라미터 체크 모듈(14021) - 크기가 최소 픽처 블록의 크기보다 크거나 같은 각각의 CU가 기준 CU로서 이용되고, 크기가 최소 픽처 블록의 크기보다 작은 CU에 대하여, CU가 속하는 최소 픽처 블록의 좌측 상부 CU가 기준 CU로서 이용됨 - ;
기준 CU의 좌측 CU가 존재할 때, 기준 CU의 QP 예측값으로서 좌측 CU의 QP를 이용하도록 구성된 제5 파라미터 예측 모듈(14022);
기준 CU의 좌측 CU가 존재하지 않고, 기준 CU의 상부 CU 또는 기준 CU의 이전의 인코딩된 CU가 존재할 때, 기준 CU의 QP 예측값으로서 상부 CU의 QP 또는 이전의 인코딩된 CU의 QP를 이용하도록 구성된 제6 파라미터 예측 모듈(14023); 및
기준 CU의 좌측 CU, 상부 CU, 및 이전의 인코딩된 CU 중 어느 것도 존재하지 않을 때, 기준 CU가 속하는 슬라이스 또는 픽처에 따라 기준 CU의 QP 예측값을 결정하도록 구성된 제7 파라미터 예측 모듈(14024)
을 더 포함할 수 있다.
이 실시예에서의 파라미터 계산 유닛(1404)은,
미리 설정된 조건을 충족하지 않고 크기가 최소 픽처 블록의 크기보다 크거나 같은 CU에 대하여, CU의 QP로서 CU의 QP 예측값을 이용하도록 구성된 제1 계산 모듈(14041);
미리 설정된 조건을 충족하고 크기가 최소 픽처 블록의 크기보다 크거나 같은 CU에 대하여, CU의 QP로서 CU의 QP 예측값과 CU의 QP 차이의 합을 이용하도록 구성된 제2 계산 모듈(14042);
크기가 최소 픽처 블록의 크기보다 작은 CU에 대하여, CU가 미리 설정된 조건을 충족하는 경우, CU가 속하는 최소 픽처 블록의 좌측 상부 CU의 QP 예측값을 획득하여, CU의 QP로서 CU의 QP 예측값과 QP 차이의 합을 이용하고, 최소 픽처 블록 내의 모든 CU의 QP로서 CU의 QP를 이용하도록 구성된 제3 계산 모듈(14043); 및
크기가 최소 픽처 블록의 크기보다 작은 CU에 대하여, CU가 속하는 최소 픽처 블록 내의 CU들 중 어느 것도 미리 설정된 조건을 충족하지 않는 경우, CU가 속하는 최소 픽처 블록의 좌측 상부 CU의 QP 예측값을 획득하여, 최소 픽처 블록 내의 모든 CU의 QP로서 QP 예측값을 이용하도록 구성된 제4 계산 모듈(14044)
을 더 포함할 수 있다.
이 실시예에서, 인코더는, 인코딩 동안, 인코딩될 데이터 내에 양자화 깊이 파라미터 - 양자화 깊이 파라미터는 독립적 QP를 갖는 최소 픽처 블록의 크기를 나타내는 데 이용됨 - 를 기입할 수 있고, 미리 설정된 조건을 충족하는 각각의 CU에 대하여, CU 내에 CU의 QP 차이를 실을 수 있으므로, 각각의 LCU는 오직 하나의 QP에 대응하지 않는다. 따라서, 디코더는 전체 LCU에 대한 디코딩을 수행하지 않고 디코딩 동안 각각의 CU에 대한 디코딩을 수행할 수 있고, 따라서 디코딩 효율이 향상될 수 있다.
본 발명의 실시예에 의해 제공된 기술은 디지털 신호 처리 분야에 적용될 수 있고, 인코더 또는 디코더에 의해 구현된다. 비디오 인코더 및 디코더는 다양한 통신 장치 또는 전자 장치, 예를 들어, 디지털 텔레비전, 셋톱박스, 미디어 게이트웨이, 이동 전화, 무선 장치, PDA(personal digital assistant), 핸드헬드 또는 포터블 컴퓨터, GPS 수신기/내비게이션 어시스턴트, 카메라, 비디오 플레이어, 캠코더, 비디오 레코더, 감시 장치, 화상 회의 및 화상 전화 장치 등에 널리 적용된다. 그러한 장치들은 프로세서, 메모리, 및 데이터의 전송을 위한 인터페이스를 포함한다. 비디오 인코더/디코더는 디지털 회로 또는 칩, 예를 들어, DSP(digital signal processor)에 의해 직접 구현되거나, 소프트웨어 코드의 절차를 실행하도록 프로세서를 구동하기 위한 소프트웨어 코드에 의해 구현될 수 있다.
이 기술분야의 통상의 기술자는 실시예들의 방법들의 단계들 중 전부 또는 일부가 관련 하드웨어에 지시하는 프로그램에 의해 구현될 수 있다는 것을 이해할 수 있다. 프로그램은 컴퓨터 판독 가능한 저장 매체에 저장될 수 있다. 저장 매체는 판독 전용 메모리, 자기 디스크, 또는 광 디스크일 수 있다.
전술한 것은 본 발명에 의해 제공되는 인코딩 방법 및 장치와, 디코딩 방법 및 장치이다. 이 기술분야의 통상의 기술자는 본 발명의 실시예들의 아이디어에 따라 구현 및 적용가능성에 대하여 다양한 수정 및 변형을 만들 수 있다는 것이 명백하다. 따라서, 명세서는 본 발명에 대한 제한사항으로서 해석되어서는 안 된다.

Claims (28)

  1. 인코딩 방법으로서,
    인코더에 의해, 인코딩될 데이터를 획득하는 단계 - 상기 인코딩될 데이터는 적어도 하나의 최대 코딩 유닛(largest coding unit: LCU)임 - ;
    상기 인코더에 의해, 미리 설정된 비트 레이트 제어 알고리즘에 따라 상기 LCU의 양자화 깊이 파라미터(quantization depth parameter)를 결정하고, 상기 양자화 깊이 파라미터를 상기 인코딩될 데이터 내에 추가하는 단계 - 상기 양자화 깊이 파라미터는 상기 LCU 내의 독립적 QP(quantization parameter)를 갖는 최소 픽처 블록(minimum picture block)의 크기를 나타내는 데 이용됨 - ;
    상기 인코더에 의해, 상기 최소 픽처 블록의 크기 및 상기 LCU에 포함된 각각의 코딩 유닛(coding unit: CU)의 크기에 따라 상기 LCU의 각각의 CU의 QP를 결정하는 단계;
    상기 인코더에 의해, 각각의 CU의 QP 및 각각의 CU의 QP 예측값에 따라 각각의 CU의 QP 차이를 계산하는 단계;
    상기 인코더에 의해, 미리 설정된 조건을 충족하는 각각의 CU 내에, 상기 CU의 QP 차이를 싣는(carrying) 단계; 및
    상기 인코더에 의해, 상기 양자화 깊이 파라미터, 상기 미리 설정된 조건을 충족하는 상기 CU의 QP 차이, 및 각각의 CU를 인코딩하여, 비트 스트림을 획득하는 단계
    를 포함하는 인코딩 방법.
  2. 제1항에 있어서,
    상기 인코딩될 데이터는 시퀀스(sequence), 또는 픽처(picture), 또는 슬라이스(slice)이고,
    상기 양자화 깊이 파라미터는, 상기 시퀀스, 또는 픽처, 또는 슬라이스에서 각각의 LCU 내의 독립적 QP를 갖는 최소 픽처 블록의 크기를 나타내는 데 이용되는, 인코딩 방법.
  3. 제2항에 있어서, 상기 양자화 깊이 파라미터를 상기 인코딩될 데이터 내에 추가하는 단계는, 상기 인코더에 의해, 상기 양자화 깊이 파라미터를, 상기 시퀀스의 시퀀스 파라미터 세트, 또는 상기 픽처의 픽처 파라미터 세트, 또는 상기 슬라이스의 슬라이스 헤더 정보 내에 추가하는 단계를 포함하는, 인코딩 방법.
  4. 제1항에 있어서,
    상기 인코딩될 데이터는 하나의 LCU이고,
    상기 양자화 깊이 파라미터는 상기 하나의 LCU 내의 독립적 QP를 갖는 최소 픽처 블록의 크기를 나타내는 데 이용되는, 인코딩 방법.
  5. 제4항에 있어서, 상기 양자화 깊이 파라미터를 상기 인코딩될 데이터 내에 추가하는 단계는, 상기 인코더에 의해, 상기 양자화 깊이 파라미터를, 인코딩 오더(encoding order)에 따라 상기 하나의 LCU 내의 상기 CU의 압축된 비트 스트림 내의 비제로(non-zero) 양자화된 변환 계수(non-zero quantized transform coefficient)를 갖는 제1 CU 내에 추가하는 단계를 포함하는, 인코딩 방법.
  6. 제1항 내지 제5항 중 어느 한 항에 있어서, 상기 인코더에 의해, 상기 최소 픽처 블록의 크기 및 상기 LCU에 포함된 각각의 CU의 크기에 따라 각각의 CU의 QP를 결정하는 단계는,
    상기 최소 픽처 블록의 크기보다 크거나 동일한 크기를 갖는 CU에 대하여, 상기 인코더에 의해, 상기 미리 설정된 비트 레이트 제어 알고리즘에 따라 상기 CU의 QP를 계산하는 단계; 및
    상기 최소 픽처 블록의 크기보다 작은 크기를 갖는 CU에 대하여, 상기 인코더에 의해, 상기 CU가 속하는 최소 픽처 블록을 결정하고, 상기 미리 설정된 비트 레이트 제어 알고리즘에 따라 상기 최소 픽처 블록의 QP를 계산하고, 상기 최소 픽처 블록 내의 모든 CU의 QP로서 상기 최소 픽처 블록의 QP를 이용하는 단계
    를 포함하는, 인코딩 방법.
  7. 제1항 내지 제6항 중 어느 한 항에 있어서, 상기 인코더에 의해, 각각의 CU의 QP 및 각각의 CU의 QP 예측값에 따라 각각의 CU의 QP 차이를 계산하는 단계는,
    상기 인코더에 의해, 상기 최소 픽처 블록의 크기보다 크거나 동일한 크기를 갖는 각각의 CU를 기준 CU로서 이용하는 단계;
    상기 최소 픽처 블록의 크기보다 작은 크기를 갖는 CU에 대하여, 상기 인코더에 의해, 상기 CU가 속하는 최소 픽처 블록을 결정하고, 상기 최소 픽처 블록의 좌측 상부 CU를 기준 CU로서 이용하는 단계;
    상기 인코더에 의해, 각각의 기준 CU에 인접한 CU들의 QP들에 따라 각각의 기준 CU의 QP 예측값을 계산하는 단계;
    각각의 기준 CU에 대하여, 상기 인코더에 의해, 상기 기준 CU의 QP와 상기 기준 CU의 QP 예측값 사이의 차이를 상기 기준 CU의 QP 차이로서 이용하는 단계; 및
    다른 CU들이 상기 기준 CU가 속하는 상기 최소 픽처 블록에 포함되는 경우, 상기 인코더에 의해, 상기 기준 CU의 QP 차이를 상기 다른 CU들의 QP 차이로서 이용하는 단계
    를 포함하는, 인코딩 방법.
  8. 제7항에 있어서, 상기 인코더에 의해, 각각의 기준 CU에 인접한 CU들의 QP들에 따라 각각의 기준 CU의 QP 예측값을 계산하는 단계는,
    각각의 기준 CU에 대하여, 상기 인코더에 의해, 상기 기준 CU에 인접한 CU들이 존재하는지를 판정하는 단계 - 상기 기준 CU에 인접한 CU들은 상기 기준 CU의 좌측 CU, 상부 CU, 및 좌측 상부 CU를 포함함 - ;
    상기 기준 CU에 인접한 CU들 중 어느 것도 존재하지 않으면, 상기 기준 CU가 속하는 슬라이스 또는 픽처에 따라 상기 기준 CU의 QP 예측값을 결정하는 단계;
    상기 기준 CU의 상기 좌측 CU만이 존재하면, 상기 기준 CU의 QP 예측값으로서 상기 좌측 CU의 QP를 이용하는 단계;
    상기 기준 CU의 상기 상부 CU만이 존재하면, 상기 기준 CU의 QP 예측값으로서 상기 상부 CU의 QP를 이용하는 단계; 및
    상기 기준 CU에 인접한 모든 CU들이 존재하면, 상기 좌측 CU의 QP와 상기 좌측 상부 CU의 QP 사이의 제1 차이 및 상기 상부 CU의 QP와 상기 좌측 상부 CU의 QP 사이의 제2 차이를 획득하고, 상기 제1 차이가 상기 제2 차이보다 작으면, 상기 기준 CU의 QP 예측값으로서 상기 상부 CU의 QP를 이용하거나, 또는 상기 제1 차이가 상기 제2 차이보다 크거나 동일하면, 상기 기준 CU의 QP 예측값으로서 상기 좌측 CU의 QP를 이용하는 단계
    를 포함하는, 인코딩 방법.
  9. 제7항에 있어서, 상기 인코더에 의해, 각각의 기준 CU에 인접한 CU들의 QP들에 따라 각각의 기준 CU의 QP 예측값을 계산하는 단계는,
    각각의 기준 CU에 대하여, 상기 인코더에 의해, 상기 기준 CU의 좌측 CU가 존재하는지를 판정하고, 상기 기준 CU의 상기 좌측 CU가 존재하면, 상기 기준 CU의 QP 예측값으로서 상기 좌측 CU의 QP를 이용하는 단계;
    상기 기준 CU의 상기 좌측 CU가 존재하지 않고, 상기 기준 CU의 상부 CU 또는 상기 기준 CU의 이전의 인코딩된 CU가 존재하면, 상기 기준 CU의 QP 예측값으로서 상기 상부 CU의 QP 또는 상기 이전의 인코딩된 CU의 QP를 이용하는 단계; 및
    상기 기준 CU의 상기 좌측 CU, 상기 상부 CU, 및 상기 이전의 인코딩된 CU 중 어느 것도 존재하지 않으면, 상기 기준 CU가 속하는 슬라이스 또는 픽처에 따라 상기 기준 CU의 QP 예측값을 결정하는 단계
    를 포함하는, 인코딩 방법.
  10. 제7항에 있어서,
    상기 미리 설정된 조건을 충족하는 CU는 상기 CU의 상기 압축된 비트 스트림 내의 비제로 양자화된 변환 계수를 갖는 CU인, 인코딩 방법.
  11. 제10항에 있어서,
    상기 최소 픽처 블록의 크기보다 크거나 동일한 크기를 갖는 CU에 대하여, 상기 인코더에 의해, 상기 CU의 QP로서 상기 CU의 QP 예측값을 이용하고,
    상기 최소 픽처 블록의 크기보다 작은 크기를 갖는 CU에 대하여, 상기 CU가 속하는 상기 최소 픽처 블록 내의 상기 다른 CU들 중 어느 것도 상기 미리 설정된 조건을 충족하지 않으면, 상기 인코더에 의해, 상기 CU가 속하는 상기 최소 픽처 블록 내의 기준 CU의 QP 예측값을 상기 CU의 QP로서 이용하는 방식으로,
    상기 미리 설정된 조건을 충족하지 않는 각각의 CU에 대하여, 상기 인코더에 의해, 상기 CU의 QP를 설정하는 단계를 더 포함하는 인코딩 방법.
  12. 제1항 내지 제11항 중 어느 한 항에 있어서,
    상기 인코더에 의해, 상기 양자화 깊이 파라미터를 인코딩하는 것은,
    상기 인코더에 의해, 고정 길이 코드 또는 가변 길이 코드를 이용하여, 상기 양자화 깊이 파라미터에 대한 이진 변환(binary transform)을 수행함으로써, 대응하는 이진 코드 워드(binary code word)를 획득하는 것; 및
    상기 인코더에 의해, 고정 길이 인코딩, 가변 길이 인코딩, 또는 산술 엔트로피 인코딩(arithmetic entropy encoding)의 방법에 따라, 상기 획득된 이진 코드 워드를 상기 비트 스트림 내에 추가하는 것
    을 포함하고,
    상기 인코더에 의해, 상기 미리 설정된 조건을 충족하는 상기 CU의 QP 차이를 인코딩하는 것은,
    상기 인코더에 의해, 가변 길이 코드를 이용하여, 상기 미리 설정된 조건을 충족하는 상기 CU의 QP 차이에 대한 이진 변환을 수행함으로써, 대응하는 이진 코드 워드를 획득하는 것; 및
    상기 인코더에 의해, 가변 길이 인코딩 또는 산술 엔트로피 인코딩의 방법에 따라, 상기 획득된 이진 코드 워드를 상기 비트 스트림 내에 추가하는 것
    을 포함하는, 인코딩 방법.
  13. 디코딩 방법으로서,
    디코더에 의해, 수신된 비트 스트림을 파싱(parsing)하여 양자화 깊이 파라미터를 획득하는 단계 - 상기 양자화 깊이 파라미터는 LCU 내의 독립적 QP를 갖는 최소 픽처 블록의 크기를 나타내는 데 이용됨 - ;
    상기 디코더에 의해, 상기 최소 픽처 블록의 크기 및 상기 LCU에 포함된 각각의 CU의 크기에 따라 각각의 CU의 QP 예측값을 계산하는 단계;
    미리 설정된 조건을 충족하는 각각의 CU에 대하여, 상기 디코더에 의해, 상기 비트 스트림을 파싱하여 상기 CU의 QP 차이를 획득하는 단계;
    상기 디코더에 의해, 각각의 CU의 QP 예측값 및 파싱에 의해 획득된 상기 QP 차이에 따라 각각의 CU의 QP를 계산하는 단계; 및
    상기 디코더에 의해, 각각의 CU의 QP에 따라 각각의 CU를 디코딩하는 단계
    를 포함하는 디코딩 방법.
  14. 제13항에 있어서, 상기 디코더에 의해, 수신된 비트 스트림을 파싱하여 양자화 깊이 파라미터를 획득하는 단계는, 상기 디코더에 의해, 시퀀스의 시퀀스 파라미터 세트, 또는 픽처의 픽처 파라미터 세트, 또는 슬라이스의 슬라이스 헤더 정보를 파싱하여 상기 양자화 깊이 파라미터를 획득하는 단계를 포함하고,
    상기 양자화 깊이 파라미터는, 상기 시퀀스, 또는 픽처, 또는 슬라이스에서 각각의 LCU 내의 독립적 QP를 갖는 최소 픽처 블록의 크기를 나타내는 데 이용되는, 디코딩 방법.
  15. 제13항에 있어서, 상기 디코더에 의해, 수신된 비트 스트림을 파싱하여 양자화 깊이 파라미터를 획득하는 단계는, 각각의 LCU에 대하여, 상기 디코더에 의해, 디코딩 오더(decoding order)에 따라 상기 CU의 압축된 비트 스트림 내의 비제로 양자화된 변환 계수를 갖는 제1 CU를 파싱하여 상기 양자화 깊이 파라미터를 획득하는 단계를 포함하고,
    상기 양자화 깊이 파라미터는, 상기 CU의 상기 압축된 비트 스트림 내의 비제로 양자화된 변환 계수를 갖는 CU가 속하는 LCU 내의 독립적 QP를 갖는 최소 픽처 블록의 크기를 나타내는 데 이용되는, 디코딩 방법.
  16. 제13항 내지 제15항 중 어느 한 항에 있어서, 상기 디코더에 의해, 상기 최소 픽처 블록의 크기 및 상기 LCU에 포함된 각각의 CU의 크기에 따라 각각의 CU의 QP 예측값을 계산하는 단계는,
    상기 디코더에 의해, 상기 최소 픽처 블록의 크기보다 크거나 동일한 크기를 갖는 각각의 CU를 기준 CU로서 이용하는 단계;
    상기 최소 픽처 블록의 크기보다 작은 크기를 갖는 CU에 대하여, 상기 디코더에 의해, 상기 CU가 속하는 최소 픽처 블록을 결정하고, 상기 최소 픽처 블록의 좌측 상부 CU를 기준 CU로서 이용하는 단계;
    각각의 기준 CU에 대하여, 상기 디코더에 의해, 상기 기준 CU에 인접한 CU들이 존재하는지를 판정하는 단계 - 상기 기준 CU에 인접한 CU들은 상기 기준 CU의 좌측 CU, 상부 CU, 및 좌측 상부 CU를 포함함 - ;
    상기 기준 CU에 인접한 CU들 중 어느 것도 존재하지 않으면, 상기 기준 CU가 속하는 슬라이스 또는 픽처에 따라 상기 기준 CU의 QP 예측값을 결정하는 단계;
    상기 기준 CU의 상기 좌측 CU만이 존재하면, 상기 기준 CU의 QP 예측값으로서 상기 좌측 CU의 QP를 이용하는 단계;
    상기 기준 CU의 상기 상부 CU만이 존재하면, 상기 기준 CU의 QP 예측값으로서 상기 상부 CU의 QP를 이용하는 단계; 및
    상기 기준 CU에 인접한 모든 CU들이 존재하면, 상기 좌측 CU의 QP와 상기 좌측 상부 CU의 QP 사이의 제1 차이 및 상기 상부 CU의 QP와 상기 좌측 상부 CU의 QP 사이의 제2 차이를 획득하고, 상기 제1 차이가 상기 제2 차이보다 작으면, 상기 기준 CU의 QP 예측값으로서 상기 상부 CU의 QP를 이용하거나, 또는 상기 제1 차이가 상기 제2 차이보다 크거나 동일하면, 상기 기준 CU의 QP 예측값으로서 상기 좌측 CU의 QP를 이용하는 단계
    를 포함하는, 디코딩 방법.
  17. 제13항 내지 제15항 중 어느 한 항에 있어서, 상기 디코더에 의해, 상기 최소 픽처 블록의 크기 및 상기 LCU에 포함된 각각의 CU의 크기에 따라 각각의 CU의 QP 예측값을 계산하는 단계는,
    상기 디코더에 의해, 상기 최소 픽처 블록의 크기보다 크거나 동일한 크기를 갖는 각각의 CU를 기준 CU로서 이용하는 단계;
    상기 최소 픽처 블록의 크기보다 작은 크기를 갖는 CU에 대하여, 상기 디코더에 의해, 상기 CU가 속하는 최소 픽처 블록을 결정하고, 상기 최소 픽처 블록의 좌측 상부 CU를 기준 CU로서 이용하는 단계;
    각각의 기준 CU에 대하여, 상기 디코더에 의해, 상기 기준 CU의 좌측 CU가 존재하는지를 판정하고, 상기 기준 CU의 상기 좌측 CU가 존재하면, 상기 기준 CU의 QP 예측값으로서 상기 좌측 CU의 QP를 이용하는 단계;
    상기 기준 CU의 상기 좌측 CU가 존재하지 않고, 상기 기준 CU의 상부 CU 또는 상기 기준 CU의 이전의 디코딩된 CU가 존재하면, 상기 기준 CU의 QP 예측값으로서 상기 상부 CU의 QP 또는 상기 이전의 디코딩된 CU의 QP를 이용하는 단계; 및
    상기 기준 CU의 상기 좌측 CU, 상기 상부 CU, 및 상기 이전의 디코딩된 CU 중 어느 것도 존재하지 않으면, 상기 기준 CU가 속하는 슬라이스 또는 픽처에 따라 상기 기준 CU의 QP 예측값을 결정하는 단계
    를 포함하는, 디코딩 방법.
  18. 제13항 내지 제17항 중 어느 한 항에 있어서, 상기 미리 설정된 조건을 충족하는 각각의 CU에 대하여, 상기 디코더에 의해, 상기 비트 스트림을 파싱하여 상기 CU의 QP 차이를 획득하는 단계는,
    상기 최소 픽처 블록의 크기보다 크거나 동일한 크기를 갖는 각각의 CU에 대하여, 상기 디코더에 의해, 상기 CU가 상기 미리 설정된 조건을 충족하는지를 판정하고, 상기 CU가 상기 미리 설정된 조건을 충족하면, 상기 CU를 파싱하여 상기 CU의 QP 차이를 획득하거나, 또는 상기 CU가 상기 미리 설정된 조건을 충족하지 않으면, 상기 CU의 QP 차이를 0으로 설정하는 단계; 및
    상기 최소 픽처 블록의 크기보다 작은 크기를 갖는 CU에 대하여, 상기 디코더에 의해, 상기 CU가 속하는 상기 최소 픽처 블록을 결정하고, 상기 최소 픽처 블록 내의 CU들의 디코딩 오더에 따라 차례로(in turn), 상기 최소 픽처 블록 내의 각각의 CU가 상기 미리 설정된 조건을 충족하는지를 판정하고, 상기 최소 픽처 블록 내의 각각의 CU가 상기 미리 설정된 조건을 충족하면, 판정을 중단하고, 상기 최소 픽처 블록 내의 모든 CU의 QP 차이로서 상기 CU의 QP 차이를 이용하거나, 또는 상기 최소 픽처 블록 내의 CU들 중 어느 것도 상기 미리 설정된 조건을 충족하지 않으면, 상기 최소 픽처 블록 내의 모든 CU의 QP 차이를 0으로 설정하는 단계
    를 포함하는, 디코딩 방법.
  19. 제18항에 있어서, 상기 미리 설정된 조건을 충족하는 CU는 상기 CU의 상기 압축된 비트 스트림 내의 비제로 양자화된 변환 계수를 갖는 CU이고,
    상기 디코더에 의해, 각각의 CU의 QP 예측값 및 파싱에 의해 획득된 상기 QP 차이에 따라 각각의 CU의 QP를 계산하는 단계는,
    상기 미리 설정된 조건을 충족하지 않고, 상기 최소 픽처 블록의 크기보다 크거나 동일한 크기를 갖는 CU에 대하여, 상기 디코더에 의해, 상기 CU의 QP로서 상기 CU의 QP 예측값을 이용하는 단계;
    상기 미리 설정된 조건을 충족하고, 상기 최소 픽처 블록의 크기보다 크거나 동일한 크기를 갖는 CU에 대하여, 상기 디코더에 의해, 상기 CU의 QP로서 상기 CU의 QP 예측값과 상기 CU의 QP 차이의 합을 이용하는 단계;
    상기 최소 픽처 블록의 크기보다 작은 크기를 갖는 CU에 대하여, 상기 CU가 상기 미리 설정된 조건을 충족하면, 상기 디코더에 의해, 상기 CU가 속하는 상기 최소 픽처 블록의 상기 좌측 상부 CU의 QP 예측값을 획득하고, 상기 CU의 QP로서 상기 QP 예측값과 상기 QP 차이의 합을 이용하고, 상기 최소 픽처 블록 내의 모든 CU의 QP로서 상기 CU의 QP를 이용하는 단계; 및
    상기 최소 픽처 블록의 크기보다 작은 크기를 갖는 CU에 대하여, 상기 CU가 속하는 상기 최소 픽처 블록 내의 CU들 중 어느 것도 상기 미리 설정된 조건을 충족하지 않으면, 상기 디코더에 의해, 상기 CU가 속하는 상기 최소 픽처 블록의 상기 좌측 상부 CU의 QP 예측값을 획득하고, 상기 최소 픽처 블록 내의 모든 CU의 QP로서 상기 QP 예측값을 이용하는 단계
    를 포함하는, 디코딩 방법.
  20. 제18항에 있어서, 상기 디코더에 의해, 수신된 비트 스트림을 파싱하여 양자화 깊이 파라미터를 획득하는 단계는,
    상기 디코더에 의해, 고정 길이 디코딩, 가변 길이 디코딩, 또는 산술 엔트로피 디코딩의 방법을 이용함으로써, 대응하는 위치로부터 이진 코드 워드를 획득하는 단계; 및
    상기 디코더에 의해, 고정 길이 코드 또는 가변 길이 코드를 이용하여, 상기 이진 코드 워드에 대한 역 이진 변환을 수행함으로써, 상기 양자화 깊이 파라미터를 획득하는 단계
    를 포함하고,
    상기 디코더에 의해, 상기 비트 스트림을 파싱하여 상기 CU의 QP 차이를 획득하는 단계는,
    상기 디코더에 의해, 가변 길이 디코딩 또는 산술 엔트로피 디코딩의 방법을 이용함으로써, 대응하는 위치로부터 이진 코드 워드를 획득하는 단계; 및
    상기 디코더에 의해, 가변 길이 코드를 이용하여, 상기 이진 코드 워드에 대한 역 이진 변환을 수행함으로써, 상기 QP 차이를 획득하는 단계
    를 포함하는, 디코딩 방법.
  21. 인코딩 장치로서,
    인코딩될 데이터를 획득하도록 구성된 데이터 획득 유닛 - 상기 인코딩될 데이터는 적어도 하나의 최대 코딩 유닛(LCU)임 - ;
    미리 설정된 비트 레이트 제어 알고리즘에 따라 상기 LCU의 양자화 깊이 파라미터를 결정하고, 상기 데이터 획득 유닛에 의해 획득되는 상기 인코딩될 데이터 내에 상기 양자화 깊이 파라미터를 기입하도록 구성된 깊이 파라미터 처리 유닛 - 상기 양자화 깊이 파라미터는 상기 LCU 내의 독립적 QP를 갖는 최소 픽처 블록의 크기를 나타내는 데 이용됨 - ;
    상기 최소 픽처 블록의 크기 및 상기 LCU에 포함된 각각의 CU의 크기에 따라 각각의 CU의 QP를 결정하도록 구성된 양자화 파라미터 결정 유닛;
    상기 양자화 파라미터 결정 유닛에 의해 결정된 각각의 CU의 QP 및 각각의 CU의 QP 예측값에 따라 각각의 CU의 QP 차이를 계산하도록 구성된 계산 유닛;
    미리 설정된 조건을 충족하는 각각의 CU에 대하여, 상기 CU 내에 상기 CU의 QP 차이를 싣도록 구성된 채움(filling) 유닛; 및
    상기 양자화 깊이 파라미터, 상기 미리 설정된 조건을 충족하는 상기 CU의 QP 차이, 및 각각의 CU를 인코딩하여, 비트 스트림을 획득하도록 구성된 인코딩 유닛
    을 포함하는 인코딩 장치.
  22. 제21항에 있어서,
    각각의 기준 CU에 인접한 CU들의 QP들에 따라 각각의 기준 CU의 QP 예측값을 계산하도록 구성된 예측 유닛을 더 포함하고,
    상기 최소 픽처 블록의 크기보다 크거나 동일한 크기를 갖는 각각의 CU가 기준 CU로서 이용되고, 상기 최소 픽처 블록의 크기보다 작은 크기를 갖는 CU에 대하여, 상기 CU가 속하는 최소 픽처 블록의 좌측 상부 CU가 기준 CU로서 이용되는, 인코딩 장치.
  23. 제22항에 있어서, 상기 예측 유닛은,
    각각의 기준 CU에 대하여, 상기 기준 CU에 인접한 CU들이 존재하는지를 판정하도록 구성된 제1 체크 모듈 - 상기 기준 CU에 인접한 CU들은 상기 기준 CU의 좌측 CU, 상부 CU, 및 좌측 상부 CU를 포함함 - ;
    상기 기준 CU에 인접한 CU들 중 어느 것도 존재하지 않을 때, 상기 기준 CU가 속하는 슬라이스 또는 픽처에 따라 상기 기준 CU의 QP 예측값을 결정하도록 구성된 제1 예측 모듈;
    상기 기준 CU의 상기 좌측 CU만이 존재할 때, 상기 기준 CU의 QP 예측값으로서 상기 좌측 CU의 QP를 이용하도록 구성된 제2 예측 모듈;
    상기 기준 CU의 상기 상부 CU만이 존재할 때, 상기 기준 CU의 QP 예측값으로서 상기 상부 CU의 QP를 이용하도록 구성된 제3 예측 모듈; 및
    상기 기준 CU에 인접한 모든 CU들이 존재할 때, 상기 좌측 CU의 QP와 상기 좌측 상부 CU의 QP 사이의 제1 차이 및 상기 상부 CU의 QP와 상기 좌측 상부 CU의 QP 사이의 제2 차이를 획득하고, 상기 제1 차이가 상기 제2 차이보다 작으면, 상기 기준 CU의 QP 예측값으로서 상기 상부 CU의 QP를 이용하거나, 또는 상기 제1 차이가 상기 제2 차이보다 크거나 동일하면, 상기 기준 CU의 QP 예측값으로서 상기 좌측 CU의 QP를 이용하도록 구성된 제4 예측 모듈
    을 포함하는, 인코딩 장치.
  24. 제22항에 있어서, 상기 예측 유닛은,
    각각의 기준 CU에 대하여, 상기 기준 CU의 좌측 CU가 존재하는지를 판정하도록 구성된 제2 체크 모듈;
    상기 기준 CU의 상기 좌측 CU가 존재할 때, 상기 기준 CU의 QP 예측값으로서 상기 좌측 CU의 QP를 이용하도록 구성된 제5 예측 모듈;
    상기 기준 CU의 상기 좌측 CU가 존재하지 않고, 상기 기준 CU의 상부 CU 또는 상기 기준 CU의 이전의 인코딩된 CU가 존재할 때, 상기 기준 CU의 QP 예측값으로서 상기 상부 CU의 QP 또는 상기 이전의 인코딩된 CU의 QP를 이용하도록 구성된 제6 예측 모듈; 및
    상기 기준 CU의 상기 좌측 CU, 상기 상부 CU, 및 상기 이전의 인코딩된 CU 중 어느 것도 존재하지 않을 때, 상기 기준 CU가 속하는 슬라이스 또는 픽처에 따라 상기 기준 CU의 QP 예측값을 결정하도록 구성된 제7 예측 모듈
    을 포함하는, 인코딩 장치.
  25. 디코딩 장치로서,
    수신된 비트 스트림을 파싱하여 양자화 깊이 파라미터를 획득하도록 구성된 제1 파싱 유닛 - 상기 양자화 깊이 파라미터는 LCU 내의 독립적 QP를 갖는 최소 픽처 블록의 크기를 나타내는 데 이용됨 - ;
    상기 최소 픽처 블록의 크기 및 상기 LCU에 포함된 각각의 CU의 크기에 따라 각각의 CU의 QP 예측값을 계산하도록 구성된 파라미터 예측 유닛;
    미리 설정된 조건을 충족하는 각각의 CU에 대하여, 상기 비트 스트림을 파싱하여 상기 CU의 QP 차이를 획득하도록 구성된 제2 파싱 유닛;
    상기 파라미터 예측 유닛에 의해 획득된 각각의 CU의 QP 예측값 및 상기 제2 파싱 유닛에 의한 파싱에 의해 획득된 상기 QP 차이에 따라 각각의 CU의 QP를 계산하도록 구성된 파라미터 계산 유닛; 및
    상기 파라미터 계산 유닛에 의한 계산에 의해 획득된 각각의 CU의 QP에 따라 각각의 CU를 디코딩하도록 구성된 디코딩 유닛
    을 포함하는 디코딩 장치.
  26. 제25항에 있어서, 상기 파라미터 예측 유닛은,
    각각의 기준 CU에 대하여, 상기 기준 CU에 인접한 CU들이 존재하는지를 판정하도록 구성된 제1 파라미터 체크 모듈 - 상기 기준 CU에 인접한 CU들은 상기 기준 CU의 좌측 CU, 상부 CU, 및 좌측 상부 CU를 포함하고, 상기 최소 픽처 블록의 크기보다 크거나 동일한 크기를 갖는 각각의 CU가 기준 CU로서 이용되고, 상기 최소 픽처 블록의 크기보다 작은 크기를 갖는 CU에 대하여, 상기 CU가 속하는 최소 픽처 블록의 좌측 상부 CU가 기준 CU로서 이용됨 - ;
    상기 기준 CU에 인접한 CU들 중 어느 것도 존재하지 않을 때, 상기 기준 CU가 속하는 슬라이스 또는 픽처에 따라 상기 기준 CU의 QP 예측값을 결정하도록 구성된 제1 파라미터 예측 모듈;
    상기 기준 CU의 상기 좌측 CU만이 존재할 때, 상기 기준 CU의 QP 예측값으로서 상기 좌측 CU의 QP를 이용하도록 구성된 제2 파라미터 예측 모듈;
    상기 기준 CU의 상기 상부 CU만이 존재할 때, 상기 기준 CU의 QP 예측값으로서 상기 상부 CU의 QP를 이용하도록 구성된 제3 파라미터 예측 모듈; 및
    상기 기준 CU에 인접한 모든 CU들이 존재할 때, 상기 좌측 CU의 QP와 상기 좌측 상부 CU의 QP 사이의 제1 차이 및 상기 상부 CU의 QP와 상기 좌측 상부 CU의 QP 사이의 제2 차이를 획득하고, 상기 제1 차이가 상기 제2 차이보다 작으면, 상기 기준 CU의 QP 예측값으로서 상기 상부 CU의 QP를 이용하거나, 또는 상기 제1 차이가 상기 제2 차이보다 크거나 동일하면, 상기 기준 CU의 QP 예측값으로서 상기 좌측 CU의 QP를 이용하도록 구성된 제4 파라미터 예측 모듈
    을 포함하는, 디코딩 장치.
  27. 제25항에 있어서, 상기 파라미터 예측 유닛은,
    각각의 기준 CU에 대하여, 상기 기준 CU의 좌측 CU가 존재하는지를 판정하도록 구성된 제2 파라미터 체크 모듈 - 상기 최소 픽처 블록의 크기보다 크거나 동일한 크기를 갖는 각각의 CU가 기준 CU로서 이용되고, 상기 최소 픽처 블록의 크기보다 작은 크기를 갖는 CU에 대하여, 상기 CU가 속하는 최소 픽처 블록의 좌측 상부 CU가 기준 CU로서 이용됨 - ;
    상기 기준 CU의 상기 좌측 CU가 존재할 때, 상기 기준 CU의 QP 예측값으로서 상기 좌측 CU의 QP를 이용하도록 구성된 제5 파라미터 예측 모듈;
    상기 기준 CU의 상기 좌측 CU가 존재하지 않고, 상기 기준 CU의 상부 CU 또는 상기 기준 CU의 이전의 인코딩된 CU가 존재할 때, 상기 기준 CU의 QP 예측값으로서 상기 상부 CU의 QP 또는 상기 이전의 인코딩된 CU의 QP를 이용하도록 구성된 제6 파라미터 예측 모듈; 및
    상기 기준 CU의 상기 좌측 CU, 상기 상부 CU, 및 상기 이전의 인코딩된 CU 중 어느 것도 존재하지 않을 때, 상기 기준 CU가 속하는 슬라이스 또는 픽처에 따라 상기 기준 CU의 QP 예측값을 결정하도록 구성된 제7 파라미터 예측 모듈
    을 포함하는, 디코딩 장치.
  28. 제25항 내지 제27항 중 어느 한 항에 있어서, 상기 파라미터 계산 유닛은,
    상기 미리 설정된 조건을 충족하지 않고, 상기 최소 픽처 블록의 크기보다 크거나 동일한 크기를 갖는 CU에 대하여, 상기 CU의 QP로서 상기 CU의 QP 예측값을 이용하도록 구성된 제1 계산 모듈;
    상기 미리 설정된 조건을 충족하고, 상기 최소 픽처 블록의 크기보다 크거나 동일한 크기를 갖는 CU에 대하여, 상기 CU의 QP로서 상기 CU의 QP 예측값과 상기 CU의 QP 차이의 합을 이용하도록 구성된 제2 계산 모듈;
    상기 최소 픽처 블록의 크기보다 작은 크기를 갖는 CU에 대하여, 상기 CU가 상기 미리 설정된 조건을 충족하면, 상기 CU가 속하는 상기 최소 픽처 블록의 상기 좌측 상부 CU의 QP 예측값을 획득하고, 상기 CU의 QP로서 상기 CU의 QP 차이와 상기 QP 예측값의 합을 이용하고, 상기 최소 픽처 블록 내의 모든 CU의 QP로서 상기 CU의 QP를 이용하도록 구성된 제3 계산 모듈; 및
    상기 최소 픽처 블록의 크기보다 작은 크기를 갖는 CU에 대하여, 상기 CU가 속하는 상기 최소 픽처 블록 내의 CU들 중 어느 것도 상기 미리 설정된 조건을 충족하지 않으면, 상기 CU가 속하는 상기 최소 픽처 블록의 상기 좌측 상부 CU의 QP 예측값을 획득하고, 상기 최소 픽처 블록 내의 모든 CU의 QP로서 상기 QP 예측값을 이용하도록 구성된 제4 계산 모듈
    을 포함하는, 디코딩 장치.
KR1020137024746A 2011-03-11 2011-10-21 인코딩 방법 및 장치와, 디코딩 방법 및 장치 KR101581097B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201110059194.9 2011-03-11
CN201110059194.9A CN102685478B (zh) 2011-03-11 2011-03-11 编码方法以及装置、解码方法以及装置
PCT/CN2011/081102 WO2012122798A1 (zh) 2011-03-11 2011-10-21 编码方法以及装置、解码方法以及装置

Publications (2)

Publication Number Publication Date
KR20130132613A true KR20130132613A (ko) 2013-12-04
KR101581097B1 KR101581097B1 (ko) 2015-12-29

Family

ID=46816769

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137024746A KR101581097B1 (ko) 2011-03-11 2011-10-21 인코딩 방법 및 장치와, 디코딩 방법 및 장치

Country Status (10)

Country Link
US (1) US9571829B2 (ko)
EP (1) EP2672707A4 (ko)
JP (1) JP5860067B2 (ko)
KR (1) KR101581097B1 (ko)
CN (1) CN102685478B (ko)
AU (1) AU2011362462B2 (ko)
BR (1) BR112013022073B1 (ko)
CA (1) CA2828692C (ko)
RU (1) RU2566332C2 (ko)
WO (1) WO2012122798A1 (ko)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BR122019025405B8 (pt) * 2011-01-13 2023-05-02 Canon Kk Aparelho de codificação de imagem, método de codificação de imagem, aparelho de decodificação de imagem, método de decodificação de imagem e meio de armazenamento
JP2017079485A (ja) * 2011-01-24 2017-04-27 ソニー株式会社 画像符号化装置と画像符号化方法およびプログラム
JP6056122B2 (ja) 2011-01-24 2017-01-11 ソニー株式会社 画像符号化装置と画像復号装置およびその方法とプログラム
KR101442127B1 (ko) * 2011-06-21 2014-09-25 인텔렉추얼디스커버리 주식회사 쿼드트리 구조 기반의 적응적 양자화 파라미터 부호화 및 복호화 방법 및 장치
KR20130049523A (ko) 2011-11-04 2013-05-14 오수미 인트라 예측 블록 생성 장치
JP6064580B2 (ja) * 2011-12-21 2017-01-25 株式会社Jvcケンウッド 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム、並びに送信装置、送信方法及び送信プログラム
JP6064581B2 (ja) * 2011-12-21 2017-01-25 株式会社Jvcケンウッド 動画像復号装置、動画像復号方法及び動画像復号プログラム、並びに受信装置、受信方法及び受信プログラム
AR092786A1 (es) * 2012-01-09 2015-05-06 Jang Min Metodos para eliminar artefactos de bloque
CN103338374B (zh) * 2013-06-21 2016-07-06 华为技术有限公司 图像处理方法及装置
US9571837B2 (en) * 2013-11-01 2017-02-14 Broadcom Corporation Color blending prevention in video coding
RU2718164C1 (ru) * 2016-05-28 2020-03-30 МедиаТек Инк. Способы и устройства для обработки видео данных с условным направлением сигнала информации параметра квантования
EP3425911A1 (en) * 2017-07-06 2019-01-09 Thomson Licensing A method and a device for picture encoding and decoding
CN109660825B (zh) 2017-10-10 2021-02-09 腾讯科技(深圳)有限公司 视频转码方法、装置、计算机设备及存储介质
CN110519594B (zh) * 2018-05-21 2021-04-20 华为技术有限公司 视频编码方法及装置
EP3878175B1 (en) * 2018-11-08 2024-03-27 InterDigital VC Holdings, Inc. Quantization for video encoding or decoding based on the surface of a block
JP2021103875A (ja) * 2019-12-25 2021-07-15 キヤノン株式会社 画像符号化装置及び画像復号装置、並びにそれらの制御方法及びプログラム、及び、撮像装置
CN114157722A (zh) * 2020-08-17 2022-03-08 华为技术有限公司 一种数据传输方法及装置

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6275533B1 (en) * 1997-06-20 2001-08-14 Matsushita Electric Industrial Co., Ltd. Image processing method, image processing apparatus, and data recording medium
CA2515354C (en) 2003-02-18 2013-08-06 Nokia Corporation A method for buffering media data in systems where decoding order is different from transmission order
US7801383B2 (en) 2004-05-15 2010-09-21 Microsoft Corporation Embedded scalar quantizers with arbitrary dead-zone ratios
RU2395174C1 (ru) * 2006-03-30 2010-07-20 ЭлДжи ЭЛЕКТРОНИКС ИНК. Способ и устройство для декодирования/кодирования сигнала видео
CN101453643B (zh) 2007-12-04 2011-05-18 华为技术有限公司 量化模式、图像编码、解码方法、编码器、解码器及系统
EP2238764A4 (en) * 2008-01-25 2015-04-22 Hewlett Packard Co CODE MODE SELECTION FOR BLOCK-BASED CODING
US8542730B2 (en) * 2008-02-22 2013-09-24 Qualcomm, Incorporated Fast macroblock delta QP decision
US8897359B2 (en) * 2008-06-03 2014-11-25 Microsoft Corporation Adaptive quantization for enhancement layer video coding
CN101888550A (zh) * 2010-06-28 2010-11-17 中兴通讯股份有限公司 一种slice头信息中量化参数编码方法和装置
CN101938657B (zh) * 2010-10-07 2012-07-04 西安电子科技大学 高效视频编码中编码单元自适应划分方法
US20120114034A1 (en) * 2010-11-08 2012-05-10 Mediatek Inc. Method and Apparatus of Delta Quantization Parameter Processing for High Efficiency Video Coding

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
JCT-VC of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 4th meeting, JCTVC-d038, 2011.01.28.* *
JCT-VC of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 4th meeting, JCTVC-d258, 2011.01.28.* *

Also Published As

Publication number Publication date
CN102685478B (zh) 2015-04-29
CA2828692A1 (en) 2012-09-20
KR101581097B1 (ko) 2015-12-29
RU2566332C2 (ru) 2015-10-20
EP2672707A1 (en) 2013-12-11
US20140079117A1 (en) 2014-03-20
CN102685478A (zh) 2012-09-19
AU2011362462A1 (en) 2013-10-17
US9571829B2 (en) 2017-02-14
EP2672707A4 (en) 2014-03-05
AU2011362462B2 (en) 2015-03-12
RU2013145526A (ru) 2015-04-20
BR112013022073B1 (pt) 2021-12-07
BR112013022073A2 (pt) 2016-11-29
CA2828692C (en) 2017-04-25
JP2014509150A (ja) 2014-04-10
JP5860067B2 (ja) 2016-02-16
WO2012122798A1 (zh) 2012-09-20

Similar Documents

Publication Publication Date Title
KR101581097B1 (ko) 인코딩 방법 및 장치와, 디코딩 방법 및 장치
US11694125B2 (en) Image encoder using machine learning and data processing method of the image encoder
US8913666B2 (en) Entropy coding coefficients using a joint context model
JP6110910B2 (ja) 高効率映像符号化のデルタ量子化パラメータ処理の方法と装置
US9918089B2 (en) Image coding apparatus, image coding method, and program, pertaining to an image quality parameter, and image decoding apparatus, image decoding method, and program, pertaining to an image quality parameter
US8483496B2 (en) Image encoding/decoding system
US8582898B2 (en) Method and apparatus for encoding and decoding image based on code table selection adapted to residual value distribution
US20130142252A1 (en) Video image encoding device
WO2020103593A1 (zh) 一种帧间预测的方法及装置
CN102685483B (zh) 解码方法
US8811474B2 (en) Encoder and encoding method using coded block pattern estimation
KR102306884B1 (ko) 화상 부호화 장치, 화상 복호 장치 및 프로그램
US20200359031A1 (en) Information processing device and video encoding method
CN102685485A (zh) 编码方法以及装置、解码方法以及装置
CN102685484B (zh) 编码方法以及装置、解码方法以及装置
KR101645911B1 (ko) 영상 부호화 장치, 영상 부호화 방법, 및 영상 부호화 프로그램
WO2018216479A1 (ja) 画像処理装置および方法、並びにプログラム

Legal Events

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

Payment date: 20181129

Year of fee payment: 4