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

화상 처리 장치 및 방법 Download PDF

Info

Publication number
KR20220116152A
KR20220116152A KR1020227017805A KR20227017805A KR20220116152A KR 20220116152 A KR20220116152 A KR 20220116152A KR 1020227017805 A KR1020227017805 A KR 1020227017805A KR 20227017805 A KR20227017805 A KR 20227017805A KR 20220116152 A KR20220116152 A KR 20220116152A
Authority
KR
South Korea
Prior art keywords
quantization parameter
quantization
unit
transform
parameter
Prior art date
Application number
KR1020227017805A
Other languages
English (en)
Inventor
다케시 츠쿠바
Original Assignee
소니그룹주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 소니그룹주식회사 filed Critical 소니그룹주식회사
Publication of KR20220116152A publication Critical patent/KR20220116152A/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
    • H04N19/126Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
    • 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/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/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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/186Methods 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 a colour or a chrominance component
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/65Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience
    • 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/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • 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

Landscapes

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

Abstract

본 개시는, 양자화 파라미터의 값을 원하는 범위 내로 제어할 수 있도록 하는 화상 처리 장치 및 방법에 관한 것이다. 양자화 파라미터를, 적응 색변환에 관한 파라미터에 기초하여 보정하고, 또한, 변환 스킵에 관한 파라미터에 기초하여 보정하고, 그 보정된 양자화 파라미터인 보정 양자화 파라미터를 사용하여, 부호화 대상의 화상의 계수 데이터를 양자화한다. 본 개시는, 예를 들어, 화상 처리 장치, 화상 부호화 장치, 화상 복호 장치, 송신 장치, 수신 장치, 송수신 장치, 정보 처리 장치, 촬상 장치, 재생 장치, 전자 기기, 화상 처리 방법, 또는 정보 처리 방법 등에 적용할 수 있다.

Description

화상 처리 장치 및 방법
본 개시는, 화상 처리 장치 및 방법에 관한 것으로, 특히, 양자화 파라미터의 값을 원하는 범위 내로 제어할 수 있도록 한 화상 처리 장치 및 방법에 관한 것이다.
종래, 동화상의 예측 잔차를 도출하고, 계수 변환하고, 양자화하여 부호화하는 부호화 방법이 제안되었다(예를 들어, 비특허문헌 1 및 비특허문헌 2 참조). 또한, RGB444에서의 부호화 효율을 개선하는 부호화 툴로서, 잔차 도메인 상에서 RGB-to-YCgCo 변환을 실행하는 적응 색변환(ACT(Adaptive Color Transform))이 제안되었다(예를 들어, 비특허문헌 3 참조).
또한, 비특허문헌 3에서는, 그 변환 전의 잔차(C0, C1, C2)와 변환 후의 잔차(C0', C1', C2')에서의 신호의 다이내믹 레인지의 변환을 고려하여, 각 컴포넌트의 잔차에 적용할 양자화 파라미터 qP를, (dqPY, dqPCg, dqPCo) = (-5, -5, -3)에 의해 보정하는 처리도 제안되었다. 비특허문헌 1에는, 변환 스킵 및 적응 색변환의 적용에 기초한 양자화 파라미터의 보정 방법이 개시되어 있다.
Benjamin Bross, Jianle Chen, Shan Liu, Ye-Kui Wang, "Versatile Video Coding (Draft 7)", JVET-P2001-vE, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 16th Meeting: Feneva, CH, 1-11 Oct 2019 Jianle Chen, Yan Ye, Seung Hwan Kim, "Algorithm description for Versatile Video Coding and Test Model 7 (VTM 7)", JVET-P2002-v1, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 16th Meeting: Geneva, CH, 1-11 Oct. 2019 Xiaoyu Xiu, Yi-Wen Chen, Tsung-Chuan Ma, Hong-Jheng Jhu, Xianglin Wang, "Support of adaptive color transform for 444 video coding in VVC", JVET-P0517_r1, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 16th Meeting: Geneva, CH, 1-11 October 2019
그러나, 비특허문헌 1에 있어서 개시된 방법의 경우, 변환 스킵에 관한 파라미터에 기초한 양자화 파라미터의 보정이 실행된 후, 적응 색변환에 관한 파라미터에 기초한 양자화 파라미터의 보정이 실행되었다. 변환 스킵에 관한 파라미터에 기초한 양자화 파라미터의 보정에서는, 양자화 파라미터의 값이 원하는 범위 내에 클립된다. 또한, 적응 색변환에 관한 파라미터에 기초한 양자화 파라미터의 보정에서는, 소정의 보정량이 가산된다. 그 때문에, 이 방법에서는, 보정 후의 양자화 파라미터의 값이 취할 수 있는 범위를 제어할 수 없었다.
본 개시는, 이러한 상황에 비추어 이루어진 것으로, 양자화 파라미터의 값을 원하는 범위 내로 제어할 수 있도록 하는 것이다.
본 기술의 일 측면의 화상 처리 장치는, 양자화 파라미터를, 적응 색변환에 관한 파라미터에 기초하여 보정하고, 또한, 변환 스킵에 관한 파라미터에 기초하여 보정하는 양자화 파라미터 보정부와, 상기 양자화 파라미터 보정부에 의해 보정된 상기 양자화 파라미터인 보정 양자화 파라미터를 사용하여, 부호화 대상의 화상의 계수 데이터를 양자화하는 양자화부를 구비하는 화상 처리 장치이다.
본 기술의 일 측면의 화상 처리 방법은, 양자화 파라미터를, 적응 색변환에 관한 파라미터에 기초하여 보정하고, 또한, 변환 스킵에 관한 파라미터에 기초하여 보정하고, 보정된 상기 양자화 파라미터인 보정 양자화 파라미터를 사용하여, 부호화 대상의 화상의 계수 데이터를 양자화하는 화상 처리 방법이다.
본 기술의 다른 측면의 화상 처리 장치는, 양자화 파라미터를, 적응 색변환에 관한 파라미터에 기초하여 보정하고, 또한, 변환 스킵에 관한 파라미터에 기초하여 보정하는 양자화 파라미터 보정부와, 상기 양자화 파라미터 보정부에 의해 보정된 상기 양자화 파라미터인 보정 양자화 파라미터를 사용하여, 화상의 계수 데이터가 양자화된 양자화 계수 데이터를 역양자화하는 역양자화부를 구비하는 화상 처리 장치이다.
본 기술의 다른 측면의 화상 처리 방법은, 양자화 파라미터를, 적응 색변환에 관한 파라미터에 기초하여 보정하고, 또한, 변환 스킵에 관한 파라미터에 기초하여 보정하고, 보정된 상기 양자화 파라미터인 보정 양자화 파라미터를 사용하여, 화상의 계수 데이터가 양자화된 양자화 계수 데이터를 역양자화하는 화상 처리 방법이다.
본 기술의 일 측면의 화상 처리 장치 및 방법에서는, 양자화 파라미터가, 적응 색변환에 관한 파라미터에 기초하여 보정되고, 또한, 변환 스킵에 관한 파라미터에 기초하여 보정되고, 그 보정된 양자화 파라미터인 보정 양자화 파라미터가 사용되어, 부호화 대상의 화상의 계수 데이터가 양자화된다.
본 기술의 다른 측면의 화상 처리 장치 및 방법에서는, 양자화 파라미터가, 적응 색변환에 관한 파라미터에 기초하여 보정되고, 또한, 변환 스킵에 관한 파라미터에 기초하여 보정되고, 그 보정된 양자화 파라미터인 보정 양자화 파라미터가 사용되어, 화상의 계수 데이터가 양자화된 양자화 계수 데이터가 역양자화된다.
도 1은 양자화 파라미터의 보정 방법의 예를 설명하는 도면이다.
도 2는 양자화 파라미터 보정 장치의 주된 구성예를 도시하는 블록도이다.
도 3은 양자화 파라미터 보정 처리의 흐름의 예를 도시하는 흐름도이다.
도 4는 양자화 파라미터 보정 장치의 주된 구성예를 도시하는 블록도이다.
도 5는 양자화 파라미터 보정 처리의 흐름의 예를 도시하는 흐름도이다.
도 6은 양자화 파라미터 보정 장치의 주된 구성예를 도시하는 블록도이다.
도 7은 양자화 파라미터 보정 처리의 흐름의 예를 도시하는 흐름도이다.
도 8은 양자화 파라미터 보정 장치의 주된 구성예를 도시하는 블록도이다.
도 9는 양자화 파라미터 보정 처리의 흐름의 예를 도시하는 흐름도이다.
도 10은 화상 부호화 장치의 주된 구성예를 도시하는 블록도이다.
도 11은 변환 양자화부의 주된 구성예를 도시하는 블록도이다.
도 12는 양자화부의 주된 구성예를 도시하는 블록도이다.
도 13은 화상 부호화 처리의 흐름의 예를 도시하는 흐름도이다.
도 14는 변환 양자화 처리의 흐름의 예를 설명하는 흐름도이다.
도 15는 양자화 처리의 흐름의 예를 설명하는 흐름도이다.
도 16은 화상 복호 장치의 주된 구성예를 도시하는 블록도이다.
도 17은 역양자화 역변환부의 주된 구성예를 도시하는 블록도이다.
도 18은 역양자화부의 주된 구성예를 도시하는 블록도이다.
도 19는 화상 복호 처리의 흐름의 예를 도시하는 흐름도이다.
도 20은 역양자화 역변환 처리의 흐름의 예를 도시하는 흐름도이다.
도 21은 역양자화 처리의 흐름의 예를 도시하는 흐름도이다.
도 22는 컴퓨터의 주된 구성예를 도시하는 블록도이다.
이하, 본 개시를 실시하기 위한 형태(이하 실시 형태라고 함)에 대하여 설명한다. 또한, 이하의 순서로 설명한다.
1. 양자화 파라미터의 보정
2. 제1 실시 형태(양자화 파라미터 보정 장치)
3. 제2 실시 형태(양자화 파라미터 보정 장치)
4. 제3 실시 형태(양자화 파라미터 보정 장치)
5. 제4 실시 형태(양자화 파라미터 보정 장치)
6. 제5 실시 형태(화상 부호화 장치)
7. 제6 실시 형태(화상 복호 장치)
8. 부기
<1. 양자화 파라미터의 보정>
<기술 내용이나 기술 용어를 서포트하는 문헌 등>
본 기술에서 개시되는 범위는, 실시 형태에 기재되어 있는 내용뿐만 아니라, 출원 당시에 있어서 공지인 이하의 비특허문헌 등에 기재되어 있는 내용이나 이하의 비특허문헌에 있어서 참조되어 있는 다른 문헌의 내용 등도 포함된다.
비특허문헌 1: (상술)
비특허문헌 2: (상술)
비특허문헌 3: (상술)
비특허문헌 4: Recommendation ITU-T H.264 (04/2017) "Advanced video coding for generic audiovisual services", April 2017
비특허문헌 5: Recommendation ITU-T H.265 (02/18) "High efficiency video coding", february 2018
즉, 상술한 비특허문헌에 기재되어 있는 내용도 서포트 요건을 판단할 때의 근거가 된다. 예를 들어, 상술한 비특허문헌에 기재되어 있는 Quad-Tree Block Structure, QTBT(Quad Tree Plus Binary Tree) Block Structure가 실시예에 있어서 직접적인 기재가 없는 경우에도, 본 기술의 개시 범위 내이며, 청구범위의 서포트 요건을 충족시키는 것으로 한다. 또한, 예를 들어, 파싱(Parsing), 신택스(Syntax), 시맨틱스(Semantics) 등의 기술 용어에 대해서도 마찬가지로, 실시예에 있어서 직접적인 기재가 없는 경우에도, 본 기술의 개시 범위 내이며, 청구범위의 서포트 요건을 충족시킨다.
또한, 본 명세서에 있어서, 화상(픽처)의 부분 영역이나 처리 단위로서 설명에 사용되는 「블록」(처리부를 나타내는 블록은 아님)은, 특별히 언급하지 않는 한, 픽처 내의 임의의 부분 영역을 나타내고, 그 크기, 형상 및 특성 등은 한정되지 않는다. 예를 들어, 「블록」에는, 상술한 비특허문헌에 기재되어 있는 TB(Transform Block), TU(Transform Unit), PB(Prediction Block), PU(Prediction Unit), SCU(Smallest Coding Unit), CU(Coding Unit), LCU(Largest Coding Unit), CTB(Coding Tree Block), CTU(Coding Tree Unit), 서브블록, 매크로 블록, 타일 또는 슬라이스 등, 임의의 부분 영역(처리 단위)이 포함된다.
또한, 이러한 블록의 사이즈를 지정함에 있어서, 직접적으로 블록 사이즈를 지정할 뿐만 아니라, 간접적으로 블록 사이즈를 지정하도록 해도 된다. 예를 들어 사이즈를 식별하는 식별 정보를 사용하여 블록 사이즈를 지정하도록 해도 된다. 또한, 예를 들어, 기준으로 하는 블록(예를 들어 LCU나 SCU 등)의 사이즈와의 비 또는 차분에 의해 블록 사이즈를 지정하도록 해도 된다. 예를 들어, 신택스 요소 등으로서 블록 사이즈를 지정하는 정보를 전송하는 경우에, 그 정보로서, 상술한 바와 같은 간접적으로 사이즈를 지정하는 정보를 사용하도록 해도 된다. 이렇게 함으로써, 그 정보의 정보량을 저감시킬 수 있고, 부호화 효율을 향상시킬 수 있는 경우도 있다. 또한, 이 블록 사이즈의 지정에는, 블록 사이즈의 범위의 지정(예를 들어, 허용되는 블록 사이즈의 범위의 지정 등)도 포함한다.
또한, 본 명세서에 있어서, 부호화란, 화상을 비트스트림으로 변환하는 전체의 처리뿐만 아니라, 일부의 처리도 포함한다. 예를 들어, 예측 처리, 직교 변환, 양자화, 산술 부호화 등을 포괄한 처리를 포함할 뿐만 아니라, 양자화와 산술 부호화를 총칭한 처리, 예측 처리와 양자화와 산술 부호화를 포괄한 처리 등을 포함한다. 마찬가지로, 복호란, 비트스트림을 화상으로 변환하는 전체의 처리뿐만 아니라, 일부의 처리도 포함한다. 예를 들어, 역산술 복호, 역양자화, 역직교 변환, 예측 처리 등을 포괄한 처리를 포함할 뿐만 아니라, 역산술 복호와 역양자화를 포괄한 처리, 역산술 복호와 역양자화와 예측 처리를 포괄한 처리 등을 포함한다.
<적응 색변환>
비특허문헌 3에서는, RGB444에서의 부호화 효율을 개선하는 부호화 툴로서, 잔차 도메인 상에서 RGB-to-YCgCo 변환을 실행하는 적응 색변환(ACT(Adaptive Color Transform))이 제안되었다. 이하의 식 (1)은 그 RGB-to-YCgCo 변환을 나타낸다. 또한, 식 (2)는 그 역변환(YCgCo-RGB 변환)을 나타낸다. 식 (1) 및 식 (2)에 있어서, 계수 C0, C1, C2는, 각각, R, G, B에 대응한다. 또한, C0', C1', C2'은, 각각, Y, Cg, Co에 대응한다.
Figure pct00001
···(1)
Figure pct00002
···(2)
식 (1) 및 식 (2)에 나타내어진 바와 같이, 이 적응 색변환에 의해, 간단한 시프트 연산 및 가감산만으로 RGB 신호를 YCbCr 신호 상당의 YCgCo 신호로 변환할 수 있다. 또한 그 역변환도 마찬가지이다. 따라서, 이러한 적응 색변환을 적용함으로써, 용이하게 컴포넌트 간의 용장성을 삭감하여, 부호화 효율의 저감을 억제할 수 있다.
또한, 이 적응 색변환을 적용하는 경우, RGB-YCgCo 변환에 의해, 변환 전의 잔차(C0, C1, C2)와, 각 컴포넌트의 잔차에 적용할 양자화 파라미터 qP를, 각 컴포넌트의 양자화 파라미터의 보정량(dqPY, dqPCg, dqPCo) = (-5, -5, -3)에 의해 보정하는 처리가 실행되었다. 이 처리는, 변환 후의 잔차(C0', C1', C2')에서의 신호의 다이내믹 레인지의 변환을 고려한 것이다.
<변환 스킵>
그런데, 비특허문헌 1에는, 직교 변환 처리를 스킵(생략)하는 모드인 변환 스킵에 대하여 개시되어 있다. 본 개시에서는, 변환 스킵을 적용하지 않는 경우를 비변환 스킵이라고도 칭한다.
<변환 스킵과 적응 색변환에 의한 양자화 파라미터의 보정>
비특허문헌 1에는, 변환 스킵 및 적응 색변환의 적용에 기초한 양자화 파라미터의 보정 방법이 개시되어 있다. 이 방법에서는, 변환 스킵을 적용할지 여부와, 적응 색변환을 적용할지 여부에 따라 양자화 파라미터의 보정이 제어된다. 예를 들어, 적응 색변환이 적용 가능하고 또한 변환 스킵이 적용되는 경우, 양자화 파라미터의 보정은 이하의 식 (3)과 같이 실행된다. 이에 반해, 적응 색변환이 적용 가능하고 또한 비변환 스킵이 적용되는 경우(즉, 변환 스킵이 적용되지 않는 경우), 양자화 파라미터의 보정은 이하의 식 (4)와 같이 실행된다.
Figure pct00003
···(3)
Figure pct00004
···(4)
식 (3)에 나타내어진 바와 같이, 변환 스킵이 적용되는 경우, 양자화 파라미터는, 먼저, 변환 스킵의 경우의 양자화 파라미터의 최솟값(QpPrimeTsMin)에 의해 하한이 클립된다. 그 후, 그 클립의 결과에 대하여, cu_act_enabled_flag의 값에 따라, 처리 대상의 컴포넌트에 따른 보정량이 가산된다. cu_act_enabled_flag는 적응 색변환을 적용할지 여부를 나타내는 CU 단위의 플래그 정보이다. cu_act_enabled_flag가 참(예를 들어 「1」)인 경우, 적응 색변환이 적용됨을 보여 준다. cu_act_enabled_flag가 거짓(예를 들어 「0」)인 경우, 적응 색변환이 적용되지 않음을 보여 준다. 즉, 변환 스킵에 관한 파라미터에 기초한 보정이 실행된 후, 적응 색변환에 관한 파라미터에 기초한 보정이 실행된다.
식 (4)에 나타내어진 바와 같이, 비변환 스킵이 적용되는 경우에도, 식 (3)의 경우와 마찬가지로, 변환 스킵에 관한 파라미터에 기초한 보정이 실행된 후, 적응 색변환에 관한 파라미터에 기초한 보정이 실행된다. 단, 이 경우, 변환 스킵에 관한 파라미터에 기초한 보정에 있어서, 상술한 클립 처리는 스킵(생략)된다. 환언하건대, 양자화 파라미터는, 하드웨어나 소프트웨어 등의 사양에 기초하여 취할 수 있는 최솟값으로 하한이 클립된다.
이와 같이, 비특허문헌 1에 기재된 보정 방법에서는, 클립 처리 후에 보정량이 가산되기 때문에, 보정 후의 양자화 파라미터의 값이 취할 수 있는 범위를 제어할 수 없었다.
<적응 색변환에 의한 양자화 파라미터의 보정의 우선>
그래서, 도 1에 도시된 표의 첫번째 위의 단에 나타내어진 바와 같이, 적응 색변환에 의한 양자화 파라미터의 보정을 실행하고 나서 변환 스킵에 의한 양자화 파라미터의 보정을 실행하도록 한다.
예를 들어, 화상 처리 방법에 있어서, 양자화 파라미터를, 적응 색변환에 관한 파라미터에 기초하여 보정하고, 또한, 변환 스킵에 관한 파라미터에 기초하여 보정하고, 그 보정된 양자화 파라미터인 보정 양자화 파라미터를 사용하여, 부호화 대상의 화상의 계수 데이터를 양자화하도록 한다.
또한, 예를 들어, 화상 처리 장치에 있어서, 양자화 파라미터를, 적응 색변환에 관한 파라미터에 기초하여 보정하고, 또한, 변환 스킵에 관한 파라미터에 기초하여 보정하는 양자화 파라미터 보정부와, 그 양자화 파라미터 보정부에 의해 보정된 양자화 파라미터인 보정 양자화 파라미터를 사용하여, 부호화 대상의 화상의 계수 데이터를 양자화하는 양자화부를 구비하도록 한다.
예를 들어, 화상 처리 방법에 있어서, 양자화 파라미터를, 적응 색변환에 관한 파라미터에 기초하여 보정하고, 또한, 변환 스킵에 관한 파라미터에 기초하여 보정하고, 그 보정된 양자화 파라미터인 보정 양자화 파라미터를 사용하여, 화상의 계수 데이터가 양자화된 양자화 계수 데이터를 역양자화하도록 한다.
또한, 예를 들어, 화상 처리 장치에 있어서, 양자화 파라미터를, 적응 색변환에 관한 파라미터에 기초하여 보정하고, 또한, 변환 스킵에 관한 파라미터에 기초하여 보정하는 양자화 파라미터 보정부와, 그 양자화 파라미터 보정부에 의해 보정된 양자화 파라미터인 보정 양자화 파라미터를 사용하여, 화상의 계수 데이터가 양자화된 양자화 계수 데이터를 역양자화하는 역양자화부를 구비하도록 한다.
이렇게 함으로써, 보정량을 가산한 후에, 클립 처리를 실행할 수 있으므로, 보정 후의 양자화 파라미터의 값이 취할 수 있는 범위를 제어할 수 있다.
또한, 적응 색변환이 적용되는 경우, 적응 색변환에 관한 파라미터에 기초한 보정으로서, 처리 대상 컴포넌트에 따른 보정량으로 양자화 파라미터가 보정되도록 해도 된다. 예를 들어, 화상 처리 장치에 있어서, 양자화 파라미터 보정부가, 적응 색변환을 적용하는 경우, 처리 대상 컴포넌트에 따른 보정량으로 양자화 파라미터를 보정해도 된다.
또한, 적응 색변환이 적용되지 않는 경우, 적응 색변환에 관한 파라미터에 기초한 보정으로서, 보정량을 「0」으로 하여 양자화 파라미터가 보정되어도 된다. 환언하건대, 적응 색변환에 관한 파라미터에 기초한 보정이 스킵(생략)되어도 된다. 예를 들어, 화상 처리 장치에 있어서, 양자화 파라미터 보정부가, 적응 색변환을 적용하는 경우, 보정량을 「0」으로 하여 양자화 파라미터를 보정해도 된다.
<2. 제1 실시 형태>
<변환 스킵 시의 하한 제어>
상술한 바와 같이, 비특허문헌 1에 기재된 보정 방법에서는, 변환 스킵이 적용되는 경우, 식 (3)에 나타내어진 바와 같이 양자화 파라미터 qP의 보정이 실행된다. 즉, 양자화 파라미터 qP는, 먼저, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin에 의해 하한이 클립되어, 제1 보정 양자화 파라미터 qP'이 얻어진다. 이 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin은 미리 설정되어 있다.
다음으로, cu_act_enabled_flag가 참(예를 들어 「1」)인 경우, 제1 보정 양자화 파라미터 qP'에 대하여, 처리 대상의 컴포넌트를 나타내는 컴포넌트 식별자 cIdx에 대응하는 보정량 dqP가 가산되어, 제2 보정 양자화 파라미터 qP''이 도출된다. 또한, cu_act_enabled_flag가 거짓(예를 들어 「0」)인 경우, 보정량 dqP를 「0」으로 하여 마찬가지의 연산이 실행되어, 제2 보정 양자화 파라미터 qP''이 도출된다. 이와 같이 도출된 제2 보정 양자화 파라미터 qP''이, 보정 후의 양자화 파라미터 qP(즉 보정 결과)로서, 양자화 처리나 역양자화 처리에 이용된다.
즉, 적응 색변환 및 변환 스킵이 적용되는 경우, 양자화 파라미터 qP는, QpPrimeTsMin에 의해 하한이 클립된 후에, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqP가 가산된다.
또한, 양자화 파라미터 qP의 하한을 QpPrimeTsMin으로 클립하는 것은, 변환 스킵에서 양자화 스텝 사이즈 Δ<1일 때(양자화 스텝 사이즈 Δ<1이 될 수 있기 때문에), 피크 신호 대 잡음비(PSNR(Peak Signal-to-Noise Ratio))가 저감되는 현상을 회피하기 위함이다.
그러나, 상술한 바와 같이, QpPrimeTsMin에 의해 하한을 클립한 후, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqP를 가산함으로써, 제2 보정 양자화 파라미터 qP''(즉 보정 후의 양자화 파라미터 qP)은 QpPrimeTsMin보다 작은 값이 될 수 있다. 즉, 적응 색변환 및 변환 스킵이 적용되는 경우, 변환 스킵 시의 양자화 파라미터의 최솟값보다도 작은 양자화 파라미터가 양자화나 역양자화에 사용될(양자화 스텝 사이즈 Δ<1이 될 수 있는) 우려가 있었다. 그 때문에, PSNR이 저감될 우려가 있었다. 즉, 부호화 효율이 저감될 우려가 있었다.
그래서, 상술한 바와 같이, 도 1에 도시된 표의 첫번째 위의 단에 나타내어진 바와 같이, 적응 색변환에 의한 양자화 파라미터의 보정을 실행하고 나서 변환 스킵에 의한 양자화 파라미터의 보정을 실행한다. 또한, 도 1에 도시된 표의 위로부터 2번째의 단에 나타내어진 바와 같이, 변환 스킵에 의한 양자화 파라미터 보정 처리에 있어서, 변환 스킵의 경우, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin에 의해 하한을 클립해도 된다(방법 1).
예를 들어, 화상 처리 장치에 있어서, 양자화 파라미터 보정부가, 변환 스킵을 적용하는 경우, 적응 색변환에 관한 파라미터에 기초하여 보정된 양자화 파라미터의 하한을, 미리 설정된, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin으로 클립해도 된다.
이렇게 함으로써, 적응 색변환 및 변환 스킵이 적용되는 경우에, 양자화 스텝 사이즈 Δ<1이 되지 않도록 할 수 있으므로, PSNR의 저감을 억제할 수 있어, 부호화 효율의 저감을 억제할 수 있다.
또한, 도 1에 도시된 표의 위로부터 2번째의 단에 나타내어진 바와 같이, 변환 스킵에 의한 양자화 파라미터 보정 처리에 있어서, 비변환 스킵의 경우, 그 하한의 클립을 생략해도 된다. 예를 들어, 화상 처리 장치에 있어서, 양자화 파라미터 보정부가, 변환 스킵을 적용하지 않는 경우, 적응 색변환에 관한 파라미터에 기초하여 보정된 양자화 파라미터의 하한의 클립을 생략해도 된다. 환언하건대, 그 경우, 양자화 파라미터가, 하드웨어나 소프트웨어 등의 사양에 기초하여 취할 수 있는 최솟값으로 하한이 클립되도록 해도 된다.
<양자화 파라미터 보정 장치>
상술한 본 기술은, 임의의 장치에 있어서 적용할 수 있다. 도 2는 본 기술을 적용한 화상 처리 장치의 일 양태인 양자화 파라미터 보정 장치의 구성의 일례를 도시하는 블록도이다. 도 2에 도시된 양자화 파라미터 보정 장치(100)는 화상에 관한 계수 데이터의 양자화 처리나 역양자화 처리에 사용될 양자화 파라미터를 보정하는 장치이다. 양자화 파라미터 보정 장치(100)는, 예를 들어, 화상의 부호화나 복호에서의 적응 색변환이나 변환 스킵의 적용에 따라 양자화 파라미터를 보정한다. 그 때, 양자화 파라미터 보정 장치(100)는, 상술한 「방법 1」을 적용하여, 양자화 파라미터를 보정한다.
또한, 도 2에서는, 처리부나 데이터의 흐름 등의 주된 것을 도시하고 있고, 도 2에 도시된 것이 전부인 것만은 아니다. 즉, 양자화 파라미터 보정 장치(100)에 있어서, 도 2에 있어서 블록으로서 나타내어져 있지 않은 처리부가 존재하거나, 도 2에 있어서 화살표 등으로서 나타내어져 있지 않은 처리나 데이터의 흐름이 존재하거나 해도 된다.
도 2에 도시된 바와 같이, 양자화 파라미터 보정 장치(100)는 제1 보정부(101) 및 제2 보정부(102)를 갖는다.
제1 보정부(101)는 적응 색변환에 관한 파라미터에 기초한 보정에 관한 처리를 실행한다. 예를 들어, 제1 보정부(101)는 처리 대상의 컴포넌트를 나타내는 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx를 취득한다. 또한, 제1 보정부(101)는, 적응 색변환에 관한 파라미터로서, cu_act_enabled_flag를 취득한다. 또한, 제1 보정부(101)는, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 취득한다.
또한, 컴포넌트 식별자 cIdx는 처리 대상의 컴포넌트를 나타내는 식별자이다. 또한, 양자화 파라미터 qPx는 컴포넌트에 따른 양자화 파라미터를 나타낸다. 예를 들어, 양자화 파라미터 qPx에는, 휘도 Y에 대응하는 양자화 파라미터 qPy, 색차 Cb에 대응하는 양자화 파라미터 qPcb, 색차 Cr에 대응하는 양자화 파라미터 qPcr, 및 색차 CbCr에 대응하는 양자화 파라미터 qPcbcr이 있다. 또한, 적응 색변환을 적용할 때의 각 컴포넌트(Y, Cg, Co)에 대응하는 보정량 dqPx는 (-5, -5, -3)이다. 이들 파라미터는, 특별히 언급하지 않는 한, 다른 실시 형태에 있어서도 마찬가지이다.
제1 보정부(101)는, cu_act_enabled_flag가 참(예를 들어 「1」)인 경우, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx에, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 가산하여, 제1 보정 양자화 파라미터 qP'을 도출한다. 또한, 제1 보정부(101)는, cu_act_enabled_flag가 거짓(예를 들어 「0」)인 경우, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx에, 보정량 「0」을 가산하여, 제1 보정 양자화 파라미터 qP'을 도출한다. 즉, 제1 보정부(101)는 이하와 같은 신택스의 처리를 실행한다.
if cu_act_enabled_flag
qP' = qPx + dqPx
else
qP' = qPx
제1 보정부(101)는 도출한 제1 보정 양자화 파라미터 qP'을 제2 보정부(102)에 공급한다.
제2 보정부(102)는 변환 스킵에 관한 파라미터에 기초한 보정에 관한 처리를 실행한다. 예를 들어, 제2 보정부(102)는 제1 보정부(101)로부터 공급되는 제1 보정 양자화 파라미터 qP'을 취득한다. 또한, 제2 보정부(102)는, 변환 스킵에 관한 파라미터로서, 컴포넌트 식별자 cIdx에 대응하는 transform_skip_flag[xTbY][yTbY][cIdx]를 취득한다. 또한, 제2 보정부(102)는, 변환 스킵에 관한 파라미터로서, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin을 취득한다.
또한, transform_skip_flag는 변환 스킵을 적용할지 여부를 나타내는 플래그 정보이다. 이 transform_skip_flag가 참(예를 들어 「1」)인 경우, 변환 스킵이 적용되는 것을 나타낸다. 또한, transform_skip_flag가 거짓(예를 들어 「0」)인 경우, 비변환 스킵이 적용되는(즉 변환 스킵이 적용되지 않는) 것을 나타낸다. 또한, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin은 미리 설정되어 있다. 또한, 이 QpPrimeTsMin을 부호화 측 장치로부터 복호 측 장치로 시그널링하는(전송하는) 경우, QpPrimeTsMin은 예를 들어 파라미터 세트를 사용하여 시그널링된다. 이들 파라미터는, 특별히 언급하지 않는 한, 다른 실시 형태에 있어서도 마찬가지이다.
제2 보정부(102)는, transform_skip_flag가 참(예를 들어 「1」)인 경우, QpPrimeTsMin을 사용하여 제1 보정 양자화 파라미터 qP'의 하한을 클립하여, 제2 보정 양자화 파라미터 qP''을 도출한다. 환언하건대, 제2 보정부(102)는, transform_skip_flag가 참인 경우, QpPrimeTsMin과 제1 보정 양자화 파라미터 qP' 중 큰 쪽을, 제2 보정 양자화 파라미터 qP''으로 설정한다. 또한, 제2 보정부(102)는 transform_skip_flag가 거짓(예를 들어 「0」)인 경우, 이 클립 처리를 스킵(생략)하고, 제1 보정 양자화 파라미터 qP'을 제2 보정 양자화 파라미터 qP''으로 설정한다. 환언하건대, 제2 보정부(102)는, transform_skip_flag가 거짓인 경우, 하드웨어나 소프트웨어 등의 사양에 기초하여 취할 수 있는 최솟값으로 제1 보정 양자화 파라미터 qP'의 하한을 클립하여, 제2 보정 양자화 파라미터 qP''을 도출한다. 즉, 제2 보정부(102)는 이하와 같은 신택스의 처리를 실행한다.
if transform_skip_flag[cIdx] == 'IS_SKIP'
qP'' = Max(qP', QpPrimeTsMin)
else
qP'' = qP'
제2 보정부(102)는, 도출한 제2 보정 양자화 파라미터 qP''을, 입력된 양자화 파라미터 qP의 보정 결과(보정 후의 양자화 파라미터)로서, 양자화 파라미터 보정 장치(100)의 외부에 출력한다.
환언하건대, 양자화 파라미터 보정 장치(100)는, 변환 스킵의 경우, 이하의 식 (5)에 나타내어진 바와 같은 처리를 실행하여, 양자화 파라미터를 보정한다. 또한, 양자화 파라미터 보정 장치(100)는, 비변환 스킵의 경우, 이하의 식 (6)에 나타내어진 바와 같은 처리를 실행하여, 양자화 파라미터를 보정한다.
Figure pct00005
···(5)
Figure pct00006
···(6)
환언하건대, 양자화 파라미터 보정 장치(100)는, 적응 색변환 플래그(cu_act_enabled_flag), ACT에 대응하는 보정량 dqP, 컴포넌트 식별자 cIdx에 대응하는 변환 스킵 플래그(transform_skip_flag), 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터(qPx), 및 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin을 참조하여, 컴포넌트 식별자 cIdx에 대응하는 처리 대상 변환 블록에 적용할 양자화 파라미터 qP를 도출한다.
이렇게 함으로써, 양자화 파라미터 보정 장치(100)는, 적응 색변환 및 변환 스킵이 적용되는 경우에, 양자화나 역양자화에 있어서 양자화 스텝 사이즈 Δ<1이 되지 않도록, 양자화 파라미터를 보정할 수 있다. 따라서, 예를 들어, 인코더나 디코더가, 이와 같이 보정된 양자화 파라미터를 사용하여, 화상의 계수 데이터의 양자화나 역양자화를 실행함으로써, PSNR의 저감을 억제할 수 있어, 부호화 효율의 저감을 억제할 수 있다.
또한, transform_skip_flag 대신에 mts_idx를 적용하고, mts_idx의 1 모드로서 변환 스킵인지 여부가 통지되도록 해도 된다. 즉, 양자화 파라미터 보정 장치(100)(제2 보정부(102))가, transform_skip_flag 대신에 mts_idx를 취득하고, 그 값에 기초하여, 변환 스킵이 적용되는지 여부를 판정해도 된다. 또한, QpPrimeTsMin은 컴포넌트(Y, Cb, Cr, CbCr)마다 통지되도록 해도 된다. 즉, 양자화 파라미터 보정 장치(100)(제2 보정부(102))가, 컴포넌트 식별자 cIdx에 대응하는 QpPrimeTsMin을 취득하고, 그 컴포넌트 식별자 cIdx에 대응하는 QpPrimeTsMin을 사용하여 제1 보정 양자화 파라미터 qP'의 하한을 클립해도 된다.
<양자화 파라미터 보정 처리의 흐름>
다음으로, 이 양자화 파라미터 보정 장치(100)에 의해 실행되는 양자화 파라미터 보정 처리의 흐름의 예를, 도 3의 흐름도를 참조하여 설명한다.
양자화 파라미터 보정 처리가 개시되면, 양자화 파라미터 보정 장치(100)의 제1 보정부(101)는, 스텝 S101에 있어서, 조건 1을 충족시키는지 여부를 판정함으로써, 적응 색변환을 적용할지 여부를 판정한다. 예를 들어, 이 조건 1은 cu_act_enabled_flag = 1로 해도 된다. 조건 1을 충족시키는(즉, 적응 색변환을 적용하는) 것으로 판정된 경우, 처리는 스텝 S102로 진행한다.
스텝 S102에 있어서, 제1 보정부(101)는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx에, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 가산하여, 제1 보정 양자화 파라미터 qP'을 도출한다. 즉, 제1 보정부(101)는 이하의 식 (7)의 연산을 실행한다.
Figure pct00007
···(7)
그 때, 보정량 dqPx는, 이하의 식 (8)과 같이 설정해도 되고, 식 (9)와 같이 설정해도 된다.
Figure pct00008
···(8)
Figure pct00009
···(9)
스텝 S102의 처리가 종료되면 처리는 스텝 S104로 진행한다. 또한, 스텝 S101에 있어서, 조건 1을 충족시키지 않는(즉, 적응 색변환을 적용하지 않는) 것으로 판정된 경우, 처리는 스텝 S103으로 진행한다.
스텝 S103에 있어서, 제1 보정부(101)는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx에, 보정량 「0」을 가산하여, 제1 보정 양자화 파라미터 qP'을 도출한다. 즉, 제1 보정부(101)는 이하의 식 (10)의 연산을 실행한다.
Figure pct00010
···(10)
스텝 S103의 처리가 종료되면 처리는 스텝 S104로 진행한다.
스텝 S104에 있어서, 제2 보정부(102)는, 조건 2를 충족시키는지 여부를 판정함으로써, 변환 스킵인지 여부를 판정한다. 예를 들어, 이 조건 2는 transform_skip_flag[cIdx] == 'IS_SKIP'으로 해도 된다. 또는, 이 조건 2는 mts_idx [cIdx] == 'IS_SKIP'으로 해도 된다. 조건 2를 충족시키는(즉, 변환 스킵인) 것으로 판정된 경우, 처리는 스텝 S105로 진행한다.
스텝 S105에 있어서, 제2 보정부(102)는, QpPrimeTsMin을 사용하여 제1 보정 양자화 파라미터 qP'의 하한을 클립하여, 제2 보정 양자화 파라미터 qP''을 도출한다. 즉, 제2 보정부(102)는 이하의 식 (11)의 연산을 실행한다.
Figure pct00011
···(11)
스텝 S105의 처리가 종료되면, 양자화 파라미터 보정 처리가 종료된다. 또한, 스텝 S104에 있어서, 조건 2를 충족시키지 않는(즉, 비변환 스킵인) 것으로 판정된 경우, 처리는 스텝 S106으로 진행한다.
스텝 S106에 있어서, 제2 보정부(102)는, 이 클립 처리를 스킵(생략)하고, 제1 보정 양자화 파라미터 qP'을 제2 보정 양자화 파라미터 qP''으로 설정한다. 즉, 제2 보정부(102)는 이하의 식 (12)의 연산을 실행한다.
Figure pct00012
···(12)
스텝 S106의 처리가 종료되면, 양자화 파라미터 보정 처리가 종료된다.
이상과 같이 양자화 파라미터 보정 처리를 실행함으로써, 양자화 파라미터 보정 장치(100)는, 적응 색변환 및 변환 스킵이 적용되는 경우에, 양자화나 역양자화에 있어서 양자화 스텝 사이즈 Δ<1이 되지 않도록, 양자화 파라미터를 보정할 수 있다. 따라서, 예를 들어, 인코더나 디코더가, 이와 같이 보정된 양자화 파라미터를 사용하여, 화상의 계수 데이터의 양자화나 역양자화를 실행함으로써, PSNR의 저감을 억제할 수 있어, 부호화 효율의 저감을 억제할 수 있다.
<3. 제2 실시 형태>
<비변환 스킵 시의 하한 제어>
상술한 바와 같이, 비특허문헌 1에 기재된 보정 방법에서는, 비변환 스킵이 적용되는 경우, 식 (4)에 나타내어진 바와 같이, 클립이 생략된다. 그리고, cu_act_enabled_flag가 참(예를 들어 「1」)인 경우, 제1 보정 양자화 파라미터 qP'에 대하여, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqP가 가산되어, 제2 보정 양자화 파라미터 qP''이 도출된다. 또한, cu_act_enabled_flag가 거짓(예를 들어 「0」)인 경우, 보정량 dqP를 「0」으로 하여 마찬가지의 연산이 실행되어, 제2 보정 양자화 파라미터 qP''이 도출된다. 이와 같이 도출된 제2 보정 양자화 파라미터 qP''이, 보정 후의 양자화 파라미터 qP(즉 보정 결과)로서, 양자화 처리나 역양자화 처리에 이용된다.
따라서, 비변환 스킵의 경우, 제2 보정 양자화 파라미터 qP''(즉 보정 후의 양자화 파라미터 qP)은 양자화 파라미터의 최솟값 「0」보다 작은 값이 될 수 있다. 즉, 적응 색변환 및 비변환 스킵이 적용되는 경우, 비변환 스킵의 양자화 파라미터의 최솟값 「0」보다도 작은 양자화 파라미터가 양자화나 역양자화에 사용될(양자화 스텝 사이즈 Δ<1이 될 수 있는) 우려가 있었다. 그 때문에, PSNR이 저감될 우려가 있었다. 즉, 부호화 효율이 저감될 우려가 있었다.
그래서, 상술한 바와 같이, 도 1에 도시된 표의 첫번째 위의 단에 나타내어진 바와 같이, 적응 색변환에 의한 양자화 파라미터의 보정을 실행하고 나서 변환 스킵에 의한 양자화 파라미터의 보정을 실행한다. 또한, 도 1에 도시된 표의 위로부터 3번째의 단에 나타내어진 바와 같이, 변환 스킵에 의한 양자화 파라미터 보정 처리에 있어서, 변환 스킵의 경우에는, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin에 의해 양자화 파라미터의 하한을 클립하고, 비변환 스킵의 경우, 비변환 스킵 시의 양자화 파라미터의 최솟값 「0」에 의해 양자화 파라미터의 하한을 클립해도 된다(방법 2).
예를 들어, 화상 처리 장치에 있어서, 양자화 파라미터 보정부가, 변환 스킵을 적용하지 않는 경우, 적응 색변환에 관한 파라미터에 기초하여 보정된 양자화 파라미터의 하한을, 미리 설정된 양자화 파라미터의 최솟값으로 클립해도 된다.
예를 들어, 그 양자화 파라미터의 최솟값은 「0」으로 해도 된다. 즉, 양자화 파라미터 보정부가, 변환 스킵을 적용하지 않는 경우, 적응 색변환에 관한 파라미터에 기초하여 보정된 양자화 파라미터의 하한을, 값 「0」으로 클립해도 된다.
이렇게 함으로써, 적응 색변환 및 비변환 스킵이 적용되는 경우에, 양자화 스텝 사이즈 Δ<1이 되지 않도록 할 수 있으므로, PSNR의 저감을 억제할 수 있어, 부호화 효율의 저감을 억제할 수 있다.
<양자화 파라미터 보정 장치>
상술한 본 기술은, 임의의 장치에 있어서 적용할 수 있다. 도 4는 본 기술을 적용한 화상 처리 장치의 일 양태인 양자화 파라미터 보정 장치의 구성의 일례를 도시하는 블록도이다. 도 4에 도시된 양자화 파라미터 보정 장치(120)는, 양자화 파라미터 보정 장치(100)와 마찬가지의 장치이고, 화상에 관한 계수 데이터의 양자화 처리나 역양자화 처리에 사용되는 양자화 파라미터를 보정한다. 그 때, 양자화 파라미터 보정 장치(120)는, 상술한 「방법 2」를 적용하여, 양자화 파라미터를 보정한다.
또한, 도 4에서는, 처리부나 데이터의 흐름 등의 주된 것을 도시하고 있고, 도 4에 도시된 것이 전부인 것만은 아니다. 즉, 양자화 파라미터 보정 장치(120)에 있어서, 도 4에 있어서 블록으로서 나타내어져 있지 않은 처리부가 존재하거나, 도 4에 있어서 화살표 등으로서 나타내어져 있지 않은 처리나 데이터의 흐름이 존재하거나 해도 된다.
도 4에 도시된 바와 같이, 양자화 파라미터 보정 장치(120)는 제1 보정부(121) 및 제2 보정부(122)를 갖는다.
제1 보정부(121)는, 양자화 파라미터 보정 장치(100)의 제1 보정부(101)와 마찬가지의 처리부로, 마찬가지의 처리를 실행한다. 즉, 제1 보정부(121)는 적응 색변환에 관한 파라미터에 기초한 보정에 관한 처리를 실행한다. 예를 들어, 제1 보정부(121)는 처리 대상의 컴포넌트를 나타내는 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx를 취득한다. 또한, 제1 보정부(121)는, 적응 색변환에 관한 파라미터로서, cu_act_enabled_flag를 취득한다. 또한, 제1 보정부(121)는, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 취득한다.
제1 보정부(121)는, cu_act_enabled_flag가 참(예를 들어 「1」)인 경우, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx에, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 가산하여, 제1 보정 양자화 파라미터 qP'을 도출한다. 또한, 제1 보정부(121)는, cu_act_enabled_flag가 거짓(예를 들어 「0」)인 경우, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx에, 보정량 「0」을 가산하여, 제1 보정 양자화 파라미터 qP'을 도출한다. 즉, 제1 보정부(121)는 이하와 같은 신택스의 처리를 실행한다.
if cu_act_enabled_flag
qP' = qPx + dqPx
else
qP' = qPx
제1 보정부(121)는 도출한 제1 보정 양자화 파라미터 qP'을 제2 보정부(122)에 공급한다.
제2 보정부(122)는, 양자화 파라미터 보정 장치(100)의 제2 보정부(102)와 마찬가지로, 변환 스킵에 관한 파라미터에 기초한 보정에 관한 처리를 실행한다. 예를 들어, 제2 보정부(122)는 제1 보정부(121)로부터 공급되는 제1 보정 양자화 파라미터 qP'을 취득한다. 또한, 제2 보정부(122)는, 변환 스킵에 관한 파라미터로서, 컴포넌트 식별자 cIdx에 대응하는 transform_skip_flag[xTbY][yTbY][cIdx]를 취득한다. 또한, 제2 보정부(122)는, 변환 스킵에 관한 파라미터로서, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin을 취득한다. 또한, 제2 보정부(122)는, 변환 스킵에 관한 파라미터로서, 비변환 스킵 시의 양자화 파라미터의 최솟값 「0」을 취득한다.
제2 보정부(122)는, transform_skip_flag가 참(예를 들어 「1」)인 경우, QpPrimeTsMin을 사용하여 제1 보정 양자화 파라미터 qP'의 하한을 클립하여, 제2 보정 양자화 파라미터 qP''을 도출한다. 환언하건대, 제2 보정부(122)는, transform_skip_flag가 참인 경우, QpPrimeTsMin과 제1 보정 양자화 파라미터 qP' 중 큰 쪽을, 제2 보정 양자화 파라미터 qP''으로 설정한다.
이에 반해, transform_skip_flag가 거짓(예를 들어 「0」)인 경우, 제2 보정부(122)는, 비변환 스킵 시의 양자화 파라미터의 최솟값 「0」에 의해 양자화 파라미터의 하한을 클립하여, 제2 보정 양자화 파라미터 qP''을 도출한다. 환언하건대, 제2 보정부(122)는, transform_skip_flag가 거짓인 경우, 값 「0」과 제1 보정 양자화 파라미터 qP' 중 큰 쪽을, 제2 보정 양자화 파라미터 qP''으로 설정한다. 즉, 제2 보정부(122)는 이하와 같은 신택스의 처리를 실행한다.
if transform_skip_flag[cIdx] == 'IS_SKIP'
qP'' = Max(qP', QpPrimeTsMin)
else
qP'' = Max(qP', 0)
제2 보정부(122)는, 도출한 제2 보정 양자화 파라미터 qP''을, 입력된 양자화 파라미터 qP의 보정 결과(보정 후의 양자화 파라미터)로서, 양자화 파라미터 보정 장치(120)의 외부에 출력한다.
환언하건대, 양자화 파라미터 보정 장치(120)는, 변환 스킵의 경우, 상술한 식 (5)에 나타내어진 바와 같은 처리를 실행하여, 양자화 파라미터를 보정한다. 또한, 양자화 파라미터 보정 장치(120)는, 비변환 스킵의 경우, 이하의 식 (13)에 나타내어진 바와 같은 처리를 실행하여, 양자화 파라미터를 보정한다.
Figure pct00013
···(5) (재게시)
Figure pct00014
···(13)
환언하건대, 양자화 파라미터 보정 장치(120)는, 적응 색변환 플래그(cu_act_enabled_flag), ACT에 대응하는 보정량 dqP, 컴포넌트 식별자 cIdx에 대응하는 변환 스킵 플래그(transform_skip_flag), 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터(qPx), 비변환 스킵 시의 양자화 파라미터의 최솟값 「0」, 및 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin을 참조하여, 컴포넌트 식별자 cIdx에 대응하는 처리 대상 변환 블록에 적용할 양자화 파라미터 qP를 도출한다.
이렇게 함으로써, 양자화 파라미터 보정 장치(120)는, 적응 색변환 및 비변환 스킵이 적용되는 경우에도, 양자화나 역양자화에 있어서 양자화 스텝 사이즈 Δ<1이 되지 않도록, 양자화 파라미터를 보정할 수 있다. 즉, 양자화 파라미터 보정 장치(120)는 변환 스킵이 적용되는지 여부에 관계없이, 적응 색변환이 적용되는 경우, 양자화나 역양자화에 있어서 양자화 스텝 사이즈 Δ<1이 되지 않도록, 양자화 파라미터를 보정할 수 있다. 따라서, 예를 들어, 인코더나 디코더가, 이와 같이 보정된 양자화 파라미터를 사용하여, 화상의 계수 데이터의 양자화나 역양자화를 실행함으로써, PSNR의 저감을 억제할 수 있어, 부호화 효율의 저감을 억제할 수 있다.
또한, transform_skip_flag 대신에 mts_idx를 적용하고, mts_idx의 1 모드로서 변환 스킵인지 여부가 통지되도록 해도 된다. 즉, 양자화 파라미터 보정 장치(120)(제2 보정부(122))가, transform_skip_flag 대신에 mts_idx를 취득하고, 그 값에 기초하여, 변환 스킵이 적용되는지 여부를 판정해도 된다. 또한, QpPrimeTsMin은 컴포넌트(Y, Cb, Cr, CbCr)마다 통지되도록 해도 된다. 즉, 양자화 파라미터 보정 장치(120)(제2 보정부(122))가, 컴포넌트 식별자 cIdx에 대응하는 QpPrimeTsMin을 취득하고, 그 컴포넌트 식별자 cIdx에 대응하는 QpPrimeTsMin을 사용하여 제1 보정 양자화 파라미터 qP'의 하한을 클립해도 된다.
<양자화 파라미터 보정 처리의 흐름>
다음으로, 이 양자화 파라미터 보정 장치(120)에 의해 실행되는 양자화 파라미터 보정 처리의 흐름의 예를, 도 5의 흐름도를 참조하여 설명한다.
양자화 파라미터 보정 처리가 개시되면, 양자화 파라미터 보정 장치(120)의 제1 보정부(121)는, 스텝 S121에 있어서, 조건 1을 충족시키는지 여부를 판정함으로써, 적응 색변환을 적용할지 여부를 판정한다. 이 조건 1은 제1 실시 형태(도 3)의 경우와 마찬가지이다. 조건 1을 충족시키는(즉, 적응 색변환을 적용하는) 것으로 판정된 경우, 처리는 스텝 S122로 진행한다.
스텝 S122에 있어서, 제1 보정부(121)는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx에, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 가산하여, 제1 보정 양자화 파라미터 qP'을 도출한다. 이 처리는 도 3의 스텝 S102의 처리와 마찬가지로 실행된다.
스텝 S122의 처리가 종료되면 처리는 스텝 S124로 진행한다. 또한, 스텝 S121에 있어서, 조건 1을 충족시키지 않는(즉, 적응 색변환을 적용하지 않는) 것으로 판정된 경우, 처리는 스텝 S123으로 진행한다.
스텝 S123에 있어서, 제1 보정부(121)는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx에, 보정량 「0」을 가산하여, 제1 보정 양자화 파라미터 qP'을 도출한다. 이 처리는 도 3의 스텝 S103의 처리와 마찬가지로 실행된다.
스텝 S123의 처리가 종료되면 처리는 스텝 S124로 진행한다.
스텝 S124에 있어서, 제2 보정부(122)는, 조건 2를 충족시키는지 여부를 판정함으로써, 변환 스킵인지 여부를 판정한다. 이 조건 2는 제1 실시 형태(도 3)의 경우와 마찬가지이다. 조건 2를 충족시키는(즉, 변환 스킵인) 것으로 판정된 경우, 처리는 스텝 S125로 진행한다.
스텝 S125에 있어서, 제2 보정부(122)는, QpPrimeTsMin을 사용하여 제1 보정 양자화 파라미터 qP'의 하한을 클립하여, 제2 보정 양자화 파라미터 qP''을 도출한다. 이 처리는 도 3의 스텝 S105의 처리와 마찬가지로 실행된다.
스텝 S125의 처리가 종료되면, 양자화 파라미터 보정 처리가 종료된다. 또한, 스텝 S124에 있어서, 조건 2를 충족시키지 않는(즉, 비변환 스킵인) 것으로 판정된 경우, 처리는 스텝 S126으로 진행한다.
스텝 S126에 있어서, 제2 보정부(122)는, 비변환 스킵 시의 양자화 파라미터의 최솟값 「0」을 사용하여 제1 보정 양자화 파라미터 qP'의 하한을 클립하여, 제2 보정 양자화 파라미터 qP''을 도출한다. 즉, 제2 보정부(122)는 이하의 식 (14)의 연산을 실행한다.
Figure pct00015
···(14)
스텝 S126의 처리가 종료되면, 양자화 파라미터 보정 처리가 종료된다.
이상과 같이 양자화 파라미터 보정 처리를 실행함으로써, 양자화 파라미터 보정 장치(100)는, 적응 색변환 및 비변환 스킵이 적용되는 경우에, 양자화나 역양자화에 있어서 양자화 스텝 사이즈 Δ<1이 되지 않도록, 양자화 파라미터를 보정할 수 있다. 따라서, 예를 들어, 인코더나 디코더가, 이와 같이 보정된 양자화 파라미터를 사용하여, 화상의 계수 데이터의 양자화나 역양자화를 실행함으로써, PSNR의 저감을 억제할 수 있어, 부호화 효율의 저감을 억제할 수 있다.
<4. 제3 실시 형태>
<양자화 파라미터의 상한 제어>
또한, 양자화 파라미터의 상한을 클립하도록 해도 된다. 예를 들어, 도 1에 도시된 표의 위로부터 4번째의 단에 나타내어진 바와 같이, 적응 색변환에 의한 양자화 파라미터의 보정을 실행한다. 그리고, 그 보정된 양자화 파라미터에 대하여, 그 양자화 파라미터의 최솟값과 최댓값으로 클립해도 된다(방법 3).
양자화 파라미터가 0 내지 63의 범위로 설정된다고 하면, 양자화 파라미터의 최솟값은 「0」이고, 양자화 파라미터의 최댓값은 「63+QpBdOffset」이다. 또한, QpBdOffset는, 양자화 파라미터의, 비트 심도에 대응하는 보정량이다.
예를 들어, 화상 처리 장치에 있어서, 양자화 파라미터 보정부가, 적응 색변환에 관한 파라미터에 기초하여 보정된 양자화 파라미터에 대하여, 그 상한을 양자화 파라미터의 최댓값(63+QpBdOffset)으로 클립하고, 그 하한을 양자화 파라미터의 최솟값(값 「0」)으로 클립해도 된다.
즉, 적응 색변환에 의한 양자화 파라미터의 보정 후에, 양자화 파라미터의 최솟값과 최댓값에 기초하여, 양자화 파라미터가 유효한 값에 속하도록 보정되어도 된다. 이렇게 함으로써, 보정 후의 양자화 파라미터의 값은, 양자화 파라미터의 최솟값 내지 최댓값의 범위 내에 속한다. 따라서, PSNR의 저감을 억제할 수 있어, 부호화 효율의 저감을 억제할 수 있다.
또한, 그 클립 처리된 양자화 파라미터를, 변환 스킵에 관한 파라미터에 기초하여 보정해도 된다. 이 변환 스킵에 관한 파라미터에 기초한 보정은, 방법 1의 경우와 마찬가지로 실행해도 된다. 즉, 변환 스킵의 경우, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin에 의해, 클립 처리된 양자화 파라미터의 하한을 또한 클립해도 된다. 또한, 비변환 스킵의 경우, 이 하한의 클립 처리를 스킵(생략)해도 된다.
이렇게 함으로써, 보정 후의 양자화 파라미터는, 이 QpPrimeTsMin보다 작은 값이 될 일은 없다. 따라서, 변환 스킵인지 비변환 스킵인지에 관계없이, PSNR의 저감을 억제할 수 있어, 부호화 효율의 저감을 억제할 수 있다.
또한, 비변환 스킵의 경우, 비변환 스킵 시의 양자화 파라미터의 최솟값(값 「0」)에 의해 양자화 파라미터의 하한을 클립해도 된다. 이 클립 처리의 대상이 되는 양자화 파라미터의 하한은, 상술한 적응 색변환에 관한 파라미터에 기초하여 보정된 양자화 파라미터에 대한 클립에 의해 값 「0」으로 클립되어 있으므로, 이 경우에도, 하한의 클립을 스킵했을 경우와 실질적으로 동등한 보정 결과가 얻어진다.
<양자화 파라미터 보정 장치>
상술한 본 기술은, 임의의 장치에 있어서 적용할 수 있다. 도 6은 본 기술을 적용한 화상 처리 장치의 일 양태인 양자화 파라미터 보정 장치의 구성의 일례를 도시하는 블록도이다. 도 6에 도시된 양자화 파라미터 보정 장치(140)는, 양자화 파라미터 보정 장치(100)와 마찬가지의 장치이고, 화상에 관한 계수 데이터의 양자화 처리나 역양자화 처리에 사용되는 양자화 파라미터를 보정한다. 그 때, 양자화 파라미터 보정 장치(140)는, 상술한 「방법 3」을 적용하여, 양자화 파라미터를 보정한다.
또한, 도 6에서는, 처리부나 데이터의 흐름 등의 주된 것을 도시하고 있고, 도 6에 도시된 것이 전부인 것만은 아니다. 즉, 양자화 파라미터 보정 장치(140)에 있어서, 도 6에 있어서 블록으로서 나타내어져 있지 않은 처리부가 존재하거나, 도 6에 있어서 화살표 등으로서 나타내어져 있지 않은 처리나 데이터의 흐름이 존재하거나 해도 된다.
도 6에 도시된 바와 같이, 양자화 파라미터 보정 장치(140)는, 제1 보정부(141), 제2 보정부(142), 및 제3 보정부(143)를 갖는다.
제1 보정부(141)는, 양자화 파라미터 보정 장치(100)의 제1 보정부(101)와 마찬가지의 처리부로, 마찬가지의 처리를 실행한다. 즉, 제1 보정부(141)는 적응 색변환에 관한 파라미터에 기초한 보정에 관한 처리를 실행한다. 예를 들어, 제1 보정부(141)는 처리 대상의 컴포넌트를 나타내는 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx를 취득한다. 또한, 제1 보정부(141)는, 적응 색변환에 관한 파라미터로서, cu_act_enabled_flag를 취득한다. 또한, 제1 보정부(141)는 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 취득한다.
제1 보정부(141)는, cu_act_enabled_flag가 참(예를 들어 「1」)인 경우, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx에, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 가산하여, 제1 보정 양자화 파라미터 qP'을 도출한다. 또한, 제1 보정부(141)는, cu_act_enabled_flag가 거짓(예를 들어 「0」)인 경우, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx에, 보정량 「0」을 가산하여, 제1 보정 양자화 파라미터 qP'을 도출한다. 즉, 제1 보정부(141)는 이하와 같은 신택스의 처리를 실행한다.
if cu_act_enabled_flag
qP' = qPx + dqPx
else
qP' = qPx
제1 보정부(141)는 도출한 제1 보정 양자화 파라미터 qP'을 제2 보정부(142)에 공급한다.
제2 보정부(142)는 제1 보정 양자화 파라미터 qP'에 대한 클립 처리를 실행한다. 예를 들어, 제2 보정부(142)는 제1 보정부(141)로부터 공급되는 제1 보정 양자화 파라미터 qP'을 취득한다. 제2 보정부(142)는 비트 심도에 대응하는 보정량 QpBdOffset을 취득한다.
제2 보정부(142)는, 제1 보정 양자화 파라미터 qP'의 상한을 양자화 파라미터의 최댓값(63+QpBdOffset)으로 클립하고, 제1 보정 양자화 파라미터 qP'의 하한을 양자화 파라미터의 최솟값(값 「0」)으로 클립한다. 이 처리에 의해, 제2 보정부(142)는 제2 보정 양자화 파라미터 qP''을 도출한다.
환언하건대, 제2 보정부(142)는, 제1 보정 양자화 파라미터 qP'에 대하여, 이하의 식 (15)에 나타내어진 바와 같은 처리를 실행하여, 제2 보정 양자화 파라미터 qP''을 도출한다.
Figure pct00016
···(15)
제2 보정부(142)는, 도출한 제2 보정 양자화 파라미터 qP''을 제3 보정부(143)에 공급한다.
제3 보정부(143)는, 양자화 파라미터 보정 장치(100)의 제2 보정부(102)와 마찬가지로, 변환 스킵에 관한 파라미터에 기초한 보정에 관한 처리를 실행한다. 예를 들어, 제3 보정부(143)는 제2 보정부(142)로부터 공급되는 제2 보정 양자화 파라미터 qP''을 취득한다. 또한, 제3 보정부(143)는, 변환 스킵에 관한 파라미터로서, 컴포넌트 식별자 cIdx에 대응하는 transform_skip_flag[xTbY][yTbY][cIdx]를 취득한다. 또한, 제3 보정부(143)는, 변환 스킵에 관한 파라미터로서, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin을 취득한다.
제3 보정부(143)는, transform_skip_flag가 참(예를 들어 「1」)인 경우, QpPrimeTsMin을 사용하여 제2 보정 양자화 파라미터 qP''의 하한을 클립하여, 제3 보정 양자화 파라미터 qP'''을 도출한다. 환언하건대, 제3 보정부(143)는, transform_skip_flag가 참인 경우, QpPrimeTsMin과 제2 보정 양자화 파라미터 qP''중 큰 쪽을, 제3 보정 양자화 파라미터 qP'''으로 설정한다.
이에 반해, transform_skip_flag가 거짓(예를 들어 「0」)인 경우, 제3 보정부(143)는, 이 클립 처리를 스킵(생략)하고, 제2 보정 양자화 파라미터 qP''을, 제3 보정 양자화 파라미터 qP'''으로 설정한다. 환언하건대, 제3 보정부(143)는, transform_skip_flag가 거짓인 경우, 하드웨어나 소프트웨어 등의 사양에 기초하여 취할 수 있는 최솟값으로 제1 보정 양자화 파라미터 qP'의 하한을 클립하여, 제3 보정 양자화 파라미터 qP'''을 도출한다. 즉, 제3 보정부(143)는 이하와 같은 신택스의 처리를 실행한다.
if transform_skip_flag[cIdx] == 'IS_SKIP'
qP'''= Max(qP'', QpPrimeTsMin)
else
qP'''= qP''
제3 보정부(143)는, 도출한 제3 보정 양자화 파라미터 qP'''을, 입력된 양자화 파라미터 qP의 보정 결과(보정 후의 양자화 파라미터)로서, 양자화 파라미터 보정 장치(140)의 외부에 출력한다.
환언하건대, 양자화 파라미터 보정 장치(140)는, 변환 스킵의 경우, 이하의 식 (16)에 나타내어진 바와 같은 처리를 실행하여, 양자화 파라미터를 보정한다. 또한, 양자화 파라미터 보정 장치(140)는, 비변환 스킵의 경우, 이하의 식 (17)에 나타내어진 바와 같은 처리를 실행하여, 양자화 파라미터를 보정한다.
Figure pct00017
···(16)
Figure pct00018
···(17)
환언하건대, 양자화 파라미터 보정 장치(120)는, 적응 색변환 플래그(cu_act_enabled_flag), ACT에 대응하는 보정량 dqP, 컴포넌트 식별자 cIdx에 대응하는 변환 스킵 플래그(transform_skip_flag), 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터(qPx), 비트 심도에 대응하는 보정량 QpBdOffset, 양자화 파라미터의 최솟값 「0」, 비트 심도에 대응하는 보정량 QpBdOffset에 의한 보정 전의 양자화 파라미터의 최댓값 「63」, 및 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin을 참조하여, 컴포넌트 식별자 cIdx에 대응하는 처리 대상 변환 블록에 적용할 양자화 파라미터 qP를 도출한다.
이와 같이, 양자화 파라미터 보정 장치(140)는, 적응 색변환에 의한 양자화 파라미터의 보정 후에, 양자화 파라미터의 최솟값과 최댓값에 기초하여, 양자화 파라미터를 유효한 값에 속하도록 보정한다. 즉, 이와 같이 보정함으로써, 보정 후의 양자화 파라미터의 값은, 양자화 파라미터의 최솟값 내지 최댓값의 범위 내에 속한다. 따라서, 예를 들어, 인코더나 디코더가, 이와 같이 보정된 양자화 파라미터를 사용하여, 화상의 계수 데이터의 양자화나 역양자화를 실행함으로써, PSNR의 저감을 억제할 수 있어, 부호화 효율의 저감을 억제할 수 있다.
또한, 변환 스킵의 경우, 추가로, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin에 의해 양자화 파라미터의 하한이 클립되므로, 보정 후의 양자화 파라미터는, 이 QpPrimeTsMin보다 작은 값이 될 일은 없다. 따라서, 예를 들어, 인코더나 디코더가, 이와 같이 보정된 양자화 파라미터를 사용하여, 화상의 계수 데이터의 양자화나 역양자화를 실행함으로써, 변환 스킵인지 비변환 스킵인지에 관계없이, PSNR의 저감을 억제할 수 있어, 부호화 효율의 저감을 억제할 수 있다.
또한, transform_skip_flag 대신에 mts_idx를 적용하고, mts_idx의 1 모드로서 변환 스킵인지 여부가 통지되도록 해도 된다. 즉, 양자화 파라미터 보정 장치(140)(제3 보정부(143))가, transform_skip_flag 대신에 mts_idx를 취득하고, 그 값에 기초하여, 변환 스킵이 적용되는지 여부를 판정해도 된다. 또한, QpPrimeTsMin은 컴포넌트(Y, Cb, Cr, CbCr)마다 통지되도록 해도 된다. 즉, 양자화 파라미터 보정 장치(140)(제3 보정부(143))가, 컴포넌트 식별자 cIdx에 대응하는 QpPrimeTsMin을 취득하고, 그 컴포넌트 식별자 cIdx에 대응하는 QpPrimeTsMin을 사용하여 제2 보정 양자화 파라미터 qP''의 하한을 클립해도 된다.
<양자화 파라미터 보정 처리의 흐름>
다음으로, 이 양자화 파라미터 보정 장치(140)에 의해 실행되는 양자화 파라미터 보정 처리의 흐름의 예를, 도 7의 흐름도를 참조하여 설명한다.
양자화 파라미터 보정 처리가 개시되면, 양자화 파라미터 보정 장치(140)의 제1 보정부(141)는, 스텝 S141에 있어서, 조건 1을 충족시키는지 여부를 판정함으로써, 적응 색변환을 적용할지 여부를 판정한다. 이 조건 1은 제1 실시 형태(도 3)의 경우와 마찬가지이다. 조건 1을 충족시키는(즉, 적응 색변환을 적용하는) 것으로 판정된 경우, 처리는 스텝 S142로 진행한다.
스텝 S142에 있어서, 제1 보정부(141)는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx에, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 가산하여, 제1 보정 양자화 파라미터 qP'을 도출한다. 이 처리는 도 3의 스텝 S102의 처리와 마찬가지로 실행된다.
스텝 S142의 처리가 종료되면 처리는 스텝 S144로 진행한다. 또한, 스텝 S141에 있어서, 조건 1을 충족시키지 않는(즉, 적응 색변환을 적용하지 않는) 것으로 판정된 경우, 처리는 스텝 S143으로 진행한다.
스텝 S143에 있어서, 제1 보정부(141)는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx에, 보정량 「0」을 가산하여, 제1 보정 양자화 파라미터 qP'을 도출한다. 이 처리는 도 3의 스텝 S103의 처리와 마찬가지로 실행된다.
스텝 S143의 처리가 종료되면 처리는 스텝 S144로 진행한다.
스텝 S144에 있어서, 제2 보정부(142)는, 제1 보정 양자화 파라미터 qP'의 상한을 양자화 파라미터의 최댓값(63+QpBdOffset)으로 클립하고, 제1 보정 양자화 파라미터 qP'의 하한을 양자화 파라미터의 최솟값(값 「0」)으로 클립한다. 이 처리에 의해, 제2 보정부(142)는 제2 보정 양자화 파라미터 qP''을 도출한다.
즉, 제2 보정부(142)는, 제1 보정 양자화 파라미터 qP'에 대하여, 상술한 식 (15)에 나타내어진 바와 같은 처리를 실행하여, 제2 보정 양자화 파라미터 qP''을 도출한다. 스텝 S144의 처리가 종료되면, 처리는 스텝 S145로 진행한다.
스텝 S145에 있어서, 제3 보정부(143)는, 조건 2를 충족시키는지 여부를 판정함으로써, 변환 스킵인지 여부를 판정한다. 이 조건 2는 제1 실시 형태(도 3)의 경우와 마찬가지이다. 조건 2를 충족시키는(즉, 변환 스킵인) 것으로 판정된 경우, 처리는 스텝 S146으로 진행한다.
스텝 S146에 있어서, 제3 보정부(143)는, QpPrimeTsMin을 사용하여 제2 보정 양자화 파라미터 qP''의 하한을 클립하여, 제3 보정 양자화 파라미터 qP'''을 도출한다. 이 처리는 도 3의 스텝 S105의 처리와 마찬가지로 실행된다.
스텝 S146의 처리가 종료되면, 양자화 파라미터 보정 처리가 종료된다. 또한, 스텝 S145에 있어서, 조건 2를 충족시키지 않는(즉, 비변환 스킵인) 것으로 판정된 경우, 처리는 스텝 S147로 진행한다.
스텝 S147에 있어서, 제3 보정부(143)는, 스텝 S146의 클립 처리를 스킵(생략)하고, 제2 보정 양자화 파라미터 qP''을, 제3 보정 양자화 파라미터 qP'''으로 설정한다. 이 처리는 도 3의 스텝 S106의 처리와 마찬가지로 실행된다.
스텝 S147의 처리가 종료되면, 양자화 파라미터 보정 처리가 종료된다.
이상과 같이 양자화 파라미터 보정 처리를 실행함으로써, 양자화 파라미터 보정 장치(140)는, 보정 후의 양자화 파라미터의 값을, 양자화 파라미터의 최솟값 내지 최댓값의 범위 내에 속하게 할 수 있다. 따라서, 예를 들어, 인코더나 디코더가, 이와 같이 보정된 양자화 파라미터를 사용하여, 화상의 계수 데이터의 양자화나 역양자화를 실행함으로써, PSNR의 저감을 억제할 수 있어, 부호화 효율의 저감을 억제할 수 있다.
또한, 변환 스킵의 경우에도, QpPrimeTsMin에 의해 양자화 파라미터의 하한이 클립되므로, 보정 후의 양자화 파라미터는, 이 QpPrimeTsMin보다 작은 값이 될 일은 없다. 따라서, 예를 들어, 인코더나 디코더가, 이와 같이 보정된 양자화 파라미터를 사용하여, 화상의 계수 데이터의 양자화나 역양자화를 실행함으로써, 변환 스킵인지 비변환 스킵인지에 관계없이, PSNR의 저감을 억제할 수 있어, 부호화 효율의 저감을 억제할 수 있다.
<5. 제4 실시 형태>
<양자화 파라미터의 상한 제어>
제3 실시 형태에 있어서 설명한 방법 3에서의 제1 보정 양자화 파라미터 qP'에 대한 클립 처리는, 변환 스킵에 관한 파라미터에 기초한 보정의 클립 처리와 통합해도 된다.
즉, 도 1에 도시된 표의 최하단에 나타내어진 바와 같이, 변환 스킵에 의한 양자화 파라미터 보정 처리를 이하와 같이 실행해도 된다. 즉, 변환 스킵의 경우, 제1 보정 양자화 파라미터 qP'에 대하여, 그 하한을 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin에 의해 클립하고, 그 상한을 양자화 파라미터의 최댓값(63+QpBdOffset)에 의해 클립해도 된다. 또한, 비변환 스킵의 경우, 제1 보정 양자화 파라미터 qP'에 대하여, 그 하한을 비변환 스킵 시의 양자화 파라미터의 최솟값 「0」에 의해 클립하고, 그 상한을 양자화 파라미터의 최댓값(63+QpBdOffset)에 의해 클립해도 된다(방법 4).
예를 들어, 화상 처리 장치에 있어서, 양자화 파라미터 보정부가, 변환 스킵을 적용하는 경우, 적응 색변환에 관한 파라미터에 기초하여 보정된 양자화 파라미터의 하한을, 미리 설정된, 변환 스킵을 적용하는 경우의 양자화 파라미터의 최솟값으로 클립하고, 또한, 적응 색변환에 관한 파라미터에 기초하여 보정된 양자화 파라미터의 상한을, 미리 설정된, 양자화 파라미터의 최댓값으로 클립해도 된다. 이 양자화 파라미터의 최댓값은, 비트 심도에 기초한 보정량으로 보정된 값이어도 된다. 예를 들어, 이 양자화 파라미터의 최댓값은, 비트 심도에 기초한 보정량으로 보정되기 전의 양자화 파라미터의 최댓값과, 비트 심도에 기초한 보정량의 합이어도 된다.
또한, 예를 들어, 화상 처리 장치에 있어서, 양자화 파라미터 보정부가, 변환 스킵을 적용하지 않는 경우, 적응 색변환에 관한 파라미터에 기초하여 보정된 양자화 파라미터의 하한을, 미리 설정된 양자화 파라미터의 최솟값으로 클립하고, 또한, 적응 색변환에 관한 파라미터에 기초하여 보정된 양자화 파라미터의 상한을, 미리 설정된, 양자화 파라미터의 최댓값으로 클립해도 된다. 이 양자화 파라미터의 최댓값은, 비트 심도에 기초한 보정량으로 보정된 값이어도 된다. 예를 들어, 이 양자화 파라미터의 최댓값은, 비트 심도에 기초한 보정량으로 보정되기 전의 양자화 파라미터의 최댓값과, 비트 심도에 기초한 보정량의 합이어도 된다.
이렇게 함으로써, 방법 3의 경우와 마찬가지의, 보정 후의 양자화 파라미터의 값이 얻어진다. 즉, 보정 후의 양자화 파라미터의 값은, 양자화 파라미터의 최솟값 내지 최댓값의 범위 내에 속한다. 따라서, PSNR의 저감을 억제할 수 있어, 부호화 효율의 저감을 억제할 수 있다.
또한, 변환 스킵의 경우에는, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin에 의해 양자화 파라미터의 하한이 클립되므로, 보정 후의 양자화 파라미터는, 이 QpPrimeTsMin보다 작은 값이 될 일은 없다. 따라서, 변환 스킵인지 비변환 스킵인지에 관계없이, PSNR의 저감을 억제할 수 있어, 부호화 효율의 저감을 억제할 수 있다.
<양자화 파라미터 보정 장치>
상술한 본 기술은, 임의의 장치에 있어서 적용할 수 있다. 도 8은 본 기술을 적용한 화상 처리 장치의 일 양태인 양자화 파라미터 보정 장치의 구성의 일례를 도시하는 블록도이다. 도 8에 도시된 양자화 파라미터 보정 장치(160)는, 양자화 파라미터 보정 장치(100)와 마찬가지의 장치이고, 화상에 관한 계수 데이터의 양자화 처리나 역양자화 처리에 사용되는 양자화 파라미터를 보정한다. 그 때, 양자화 파라미터 보정 장치(160)는, 상술한 「방법 4」를 적용하여, 양자화 파라미터를 보정한다.
또한, 도 8에서는, 처리부나 데이터의 흐름 등의 주된 것을 도시하고 있고, 도 8에 도시된 것이 전부인 것만은 아니다. 즉, 양자화 파라미터 보정 장치(160)에 있어서, 도 8에 있어서 블록으로서 나타내어져 있지 않은 처리부가 존재하거나, 도 8에 있어서 화살표 등으로서 나타내어져 있지 않은 처리나 데이터의 흐름이 존재하거나 해도 된다.
도 8에 도시된 바와 같이, 양자화 파라미터 보정 장치(160)는 제1 보정부(161) 및 제2 보정부(162)를 갖는다.
제1 보정부(161)는, 양자화 파라미터 보정 장치(100)의 제1 보정부(101)와 마찬가지의 처리부로, 마찬가지의 처리를 실행한다. 즉, 제1 보정부(161)는 적응 색변환에 관한 파라미터에 기초한 보정에 관한 처리를 실행한다. 예를 들어, 제1 보정부(161)는 처리 대상의 컴포넌트를 나타내는 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx를 취득한다. 또한, 제1 보정부(161)는, 적응 색변환에 관한 파라미터로서, cu_act_enabled_flag를 취득한다. 또한, 제1 보정부(161)는 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 취득한다.
제1 보정부(161)는, cu_act_enabled_flag가 참(예를 들어 「1」)인 경우, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx에, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 가산하여, 제1 보정 양자화 파라미터 qP'을 도출한다. 또한, 제1 보정부(161)는, cu_act_enabled_flag가 거짓(예를 들어 「0」)인 경우, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx에, 보정량 「0」을 가산하여, 제1 보정 양자화 파라미터 qP'을 도출한다. 즉, 제1 보정부(161)는 이하와 같은 신택스의 처리를 실행한다.
if cu_act_enabled_flag
qP' = qPx + dqPx
else
qP' = qPx
제1 보정부(161)는 도출한 제1 보정 양자화 파라미터 qP'을 제2 보정부(162)에 공급한다.
제2 보정부(162)는, 양자화 파라미터 보정 장치(100)의 제2 보정부(102)와 마찬가지로, 변환 스킵에 관한 파라미터에 기초한 보정에 관한 처리를 실행한다. 예를 들어, 제2 보정부(162)는 제1 보정부(161)로부터 공급되는 제1 보정 양자화 파라미터 qP'을 취득한다. 또한, 제2 보정부(162)는, 변환 스킵에 관한 파라미터로서, 컴포넌트 식별자 cIdx에 대응하는 transform_skip_flag[xTbY][yTbY][cIdx]를 취득한다. 또한, 제2 보정부(162)는, 변환 스킵에 관한 파라미터로서, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin을 취득한다.
또한, 제2 보정부(162)는 비트 심도에 대응하는 보정량 QpBdOffset을 취득한다.
제2 보정부(162)는, transform_skip_flag가 참(예를 들어 「1」)인 경우, QpPrimeTsMin을 사용하여 제1 보정 양자화 파라미터 qP'의 하한을 클립하고, (63+QpBdOffset)을 사용하여 제1 보정 양자화 파라미터 qP'의 상한을 클립한다. 제2 보정부(162)는, 이러한 클립 처리에 의해, 제1 보정 양자화 파라미터 qP'으로부터 제2 보정 양자화 파라미터 qP''을 도출한다. 즉, 제2 보정 양자화 파라미터 qP''의 값이, (QpPrimeTsMin 내지 (63+QpBdOffset))의 범위 내로 제한된다(제2 보정 양자화 파라미터 qP''의 값이 (QpPrimeTsMin 내지 (63+QpBdOffset))의 범위 내가 되도록 제어된다).
이에 반해, transform_skip_flag가 거짓(예를 들어 「0」)인 경우, 제2 보정부(162)는, 값 「0」을 사용하여 양자화 파라미터의 하한을 클립하고, (63+QpBdOffset)을 사용하여 제1 보정 양자화 파라미터 qP'의 상한을 클립한다. 즉, 제2 보정부(162)는 비변환 스킵 시의 양자화 파라미터의 최솟값과 최댓값으로, 제1 보정 양자화 파라미터 qP'의 상한과 하한을 클립한다. 제2 보정부(162)는, 이러한 클립 처리에 의해, 제1 보정 양자화 파라미터 qP'으로부터 제2 보정 양자화 파라미터 qP''을 도출한다. 즉, 제2 보정 양자화 파라미터 qP''의 값이, (0 내지 (63+QpBdOffset))의 범위 내로 제한된다(제2 보정 양자화 파라미터 qP''의 값이(0 내지 (63+QpBdOffset))의 범위 내가 되도록 제어된다).
즉, 제2 보정부(162)는 이하와 같은 신택스의 처리를 실행한다.
if transform_skip_flag[cIdx] == 'IS_SKIP'
qP'' = Clip3(QpPrimeTsMin, 63+QpBdOffset, qP')
else
qP'' = Clip3 (0, 63+QpBdOffset, qP')
제2 보정부(162)는, 도출한 제2 보정 양자화 파라미터 qP''을, 입력된 양자화 파라미터 qP의 보정 결과(보정 후의 양자화 파라미터)로서, 양자화 파라미터 보정 장치(160)의 외부에 출력한다.
환언하건대, 양자화 파라미터 보정 장치(160)는, 변환 스킵의 경우, 이하의 식 (16)에 나타내어진 바와 같은 처리를 실행하여, 양자화 파라미터를 보정한다. 또한, 양자화 파라미터 보정 장치(120)는, 비변환 스킵의 경우, 상술한 식 (17)에 나타내어진 바와 같은 처리를 실행하여, 양자화 파라미터를 보정한다.
Figure pct00019
···(18)
Figure pct00020
···(17) (재게시)
즉, 방법 4의 경우, 실질적으로 방법 3의 경우와 동등한 연산이 실행되어, 동등한 보정 결과가 얻어진다.
환언하건대, 양자화 파라미터 보정 장치(120)는, 방법 3의 경우와 마찬가지로, 적응 색변환 플래그(cu_act_enabled_flag), ACT에 대응하는 보정량 dqP, 컴포넌트 식별자 cIdx에 대응하는 변환 스킵 플래그(transform_skip_flag), 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터(qPx), 비트 심도에 대응하는 보정량 QpBdOffset, 양자화 파라미터의 최솟값 「0」, 비트 심도에 대응하는 보정량 QpBdOffset에 의한 보정 전의 양자화 파라미터의 최댓값 「63」, 및 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin을 참조하여, 컴포넌트 식별자 cIdx에 대응하는 처리 대상 변환 블록에 적용할 양자화 파라미터 qP를 도출한다.
이와 같이, 양자화 파라미터 보정 장치(160)는, 비변환 스킵의 경우, 적응 색변환에 의한 양자화 파라미터의 보정 후에 있어서, 양자화 파라미터의 최솟값과 최댓값에 기초하여, 양자화 파라미터를 유효한 값에 속하도록 보정한다. 또한, 양자화 파라미터 보정 장치(160)는, 변환 스킵의 경우, 적응 색변환에 의한 양자화 파라미터의 보정 후에 있어서, 변환 스킵 시의 양자화 파라미터의 최솟값과 최댓값에 기초하여, 양자화 파라미터를 유효한 값에 속하도록 보정한다. 이렇게 함으로써, 양자화 파라미터 보정 장치(100)는, 적응 색변환 및 변환 스킵이 적용되는 경우에, 양자화나 역양자화에 있어서 양자화 스텝 사이즈 Δ<1이 되지 않도록, 양자화 파라미터를 보정할 수 있다. 따라서, 예를 들어 인코더나 디코더가 이와 같이 보정된 양자화 파라미터를 사용하여 화상의 계수 데이터의 양자화나 역양자화를 실행함으로써, 변환 스킵인지 비변환 스킵인지에 관계없이, PSNR의 저감을 억제할 수 있어, 부호화 효율의 저감을 억제할 수 있다.
또한, transform_skip_flag 대신에 mts_idx를 적용하고, mts_idx의 1 모드로서 변환 스킵인지 여부가 통지되도록 해도 된다. 즉, 양자화 파라미터 보정 장치(160)(제2 보정부(162))가, transform_skip_flag 대신에 mts_idx를 취득하고, 그 값에 기초하여, 변환 스킵이 적용되는지 여부를 판정해도 된다. 또한, QpPrimeTsMin은 컴포넌트(Y, Cb, Cr, CbCr)마다 통지되도록 해도 된다. 즉, 양자화 파라미터 보정 장치(160)(제2 보정부(162))가, 컴포넌트 식별자 cIdx에 대응하는 QpPrimeTsMin을 취득하고, 그 컴포넌트 식별자 cIdx에 대응하는 QpPrimeTsMin을 사용하여 제1 보정 양자화 파라미터 qP'의 하한을 클립해도 된다.
<양자화 파라미터 보정 처리의 흐름>
다음으로, 이 양자화 파라미터 보정 장치(160)에 의해 실행되는 양자화 파라미터 보정 처리의 흐름의 예를, 도 9의 흐름도를 참조하여 설명한다.
양자화 파라미터 보정 처리가 개시되면, 양자화 파라미터 보정 장치(160)의 제1 보정부(161)는, 스텝 S161에 있어서, 조건 1을 충족시키는지 여부를 판정함으로써, 적응 색변환을 적용할지 여부를 판정한다. 이 조건 1은 제1 실시 형태(도 3)의 경우와 마찬가지이다. 조건 1을 충족시키는(즉, 적응 색변환을 적용하는) 것으로 판정된 경우, 처리는 스텝 S162로 진행한다.
스텝 S162에 있어서, 제1 보정부(161)는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx에, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 가산하여, 제1 보정 양자화 파라미터 qP'을 도출한다. 이 처리는 도 3의 스텝 S102의 처리와 마찬가지로 실행된다.
스텝 S162의 처리가 종료되면 처리는 스텝 S164로 진행한다. 또한, 스텝 S161에 있어서, 조건 1을 충족시키지 않는(즉, 적응 색변환을 적용하지 않는) 것으로 판정된 경우, 처리는 스텝 S163으로 진행한다.
스텝 S163에 있어서, 제1 보정부(161)는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx에, 보정량 「0」을 가산하여, 제1 보정 양자화 파라미터 qP'을 도출한다. 이 처리는 도 3의 스텝 S103의 처리와 마찬가지로 실행된다.
스텝 S163의 처리가 종료되면 처리는 스텝 S164로 진행한다.
스텝 S164에 있어서, 제2 보정부(162)는, 조건 2를 충족시키는지 여부를 판정함으로써, 변환 스킵인지 여부를 판정한다. 이 조건 2는 제1 실시 형태(도 3)의 경우와 마찬가지이다. 조건 2를 충족시키는(즉, 변환 스킵인) 것으로 판정된 경우, 처리는 스텝 S165로 진행한다.
스텝 S165에 있어서, 제2 보정부(162)는, (63+QpBdOffset) 및 QpPrimeTsMin을 사용하여 제1 보정 양자화 파라미터 qP'의 상한 및 하한을 클립하여, 제2 보정 양자화 파라미터 qP''을 도출한다. 즉, 제2 보정부(162)는 이하의 식 (19)의 연산을 실행한다.
Figure pct00021
···(19)
스텝 S165의 처리가 종료되면, 양자화 파라미터 보정 처리가 종료된다. 또한, 스텝 S164에 있어서, 조건 2를 충족시키지 않는(즉, 비변환 스킵인) 것으로 판정된 경우, 처리는 스텝 S166으로 진행한다.
스텝 S166에 있어서, 제2 보정부(162)는, (63+QpBdOffset) 및 값 「0」을 사용하여 제1 보정 양자화 파라미터 qP'의 상한 및 하한을 클립하여, 제2 보정 양자화 파라미터 qP''을 도출한다. 즉, 제2 보정부(162)는 상술한 식 (15)의 연산을 실행한다.
Figure pct00022
···(15) (재게시)
스텝 S166의 처리가 종료되면, 양자화 파라미터 보정 처리가 종료된다.
이상과 같이 양자화 파라미터 보정 처리를 실행함으로써, 양자화 파라미터 보정 장치(100)는, 적응 색변환 및 변환 스킵이 적용되는 경우에, 양자화나 역양자화에 있어서 양자화 스텝 사이즈 Δ<1이 되지 않도록, 양자화 파라미터를 보정할 수 있다. 따라서, 예를 들어, 인코더나 디코더가, 이와 같이 보정된 양자화 파라미터를 사용하여, 화상의 계수 데이터의 양자화나 역양자화를 실행함으로써, PSNR의 저감을 억제할 수 있어, 부호화 효율의 저감을 억제할 수 있다.
<6. 제5 실시 형태>
<화상 부호화 장치>
이상에서 설명한 본 기술(각종 방법)은, 임의의 장치, 디바이스, 시스템 등에 적용할 수 있다. 예를 들어, 화상 데이터를 부호화하는 화상 부호화 장치에, 본 기술을 적용할 수 있다.
도 10은 본 기술을 적용한 화상 처리 장치의 일 양태인 화상 부호화 장치의 구성의 일례를 도시하는 블록도이다. 도 10에 도시된 화상 부호화 장치(300)는, 동화상의 화상 데이터를 부호화하는 장치이다. 예를 들어, 화상 부호화 장치(300)는, 상술한 비특허문헌에 기재된 VVC(Versatile Video Coding), AVC(Advanced Video Coding), HEVC(High Efficiency Video Coding) 등의 부호화 방식으로 동화상의 화상 데이터를 부호화한다.
또한, 도 10에서는, 처리부나 데이터의 흐름 등의 주된 것을 도시하고 있고, 도 10에 도시된 것이 전부인 것만은 아니다. 즉, 화상 부호화 장치(300)에 있어서, 도 10에 있어서 블록으로서 나타내어져 있지 않은 처리부가 존재하거나, 도 10에 있어서 화살표 등으로서 나타내어져 있지 않은 처리나 데이터의 흐름이 존재하거나 해도 된다. 이는, 화상 부호화 장치(300) 내의 처리부 등을 설명하는 다른 도면에 있어서도 마찬가지이다.
도 10에 도시된 바와 같이 화상 부호화 장치(300)는, 제어부(301), 재배열 버퍼(311), 연산부(312), 변환 양자화부(313), 부호화부(314), 및 축적 버퍼(315)를 갖는다. 또한, 화상 부호화 장치(300)는, 역양자화 역변환부(316), 연산부(317), 인루프 필터부(318), 프레임 메모리(319), 예측부(320), 및 레이트 제어부(321)를 갖는다.
<제어부>
제어부(301)는, 외부, 또는 미리 지정된 처리 단위의 블록 사이즈에 기초하여, 재배열 버퍼(311)에 의해 보유되어 있는 동화상 데이터를 처리 단위의 블록(CU, PU, TU 등)으로 분할한다. 또한, 제어부(301)는, 각 블록에 공급할 부호화 파라미터(헤더 정보 Hinfo, 예측 모드 정보 Pinfo, 변환 정보 Tinfo, 필터 정보 Finfo 등)를, 예를 들어, RDO(Rate-Distortion Optimization)에 기초하여, 결정한다. 예를 들어, 제어부(301)는, 변환 스킵 플래그 등을 설정할 수 있다.
이들 부호화 파라미터의 상세에 대해서는 후술한다. 제어부(301)는, 이상과 같은 부호화 파라미터를 결정하면, 그것을 각 블록에 공급한다. 구체적으로는, 이하와 같다.
헤더 정보 Hinfo는, 각 블록에 공급된다. 예측 모드 정보 Pinfo는, 부호화부(314) 및 예측부(320)에 공급된다. 변환 정보 Tinfo는, 부호화부(314), 변환 양자화부(313), 및 역양자화 역변환부(316)에 공급된다. 필터 정보 Finfo는, 부호화부(314) 및 인루프 필터부(318)에 공급된다.
<재배열 버퍼>
화상 부호화 장치(300)에는, 동화상 데이터의 각 필드(입력 화상)가 그 재생순(표시순)으로 입력된다. 재배열 버퍼(311)는, 각 입력 화상을 그 재생순(표시순)으로 취득하여, 보유(기억)한다. 재배열 버퍼(311)는, 제어부(301)의 제어에 기초하여, 그 입력 화상을 부호화순(복호순)으로 재배열하거나, 처리 단위의 블록으로 분할하거나 한다. 재배열 버퍼(311)는, 처리 후의 각 입력 화상을 연산부(312)에 공급한다.
<연산부>
연산부(312)는, 재배열 버퍼(311)로부터 공급되는 처리 단위의 블록에 대응하는 화상으로부터, 예측부(320)로부터 공급되는 예측 화상 P를 감산하여, 잔차 데이터 D를 도출하고, 그것을 변환 양자화부(313)에 공급한다.
<변환 양자화부>
변환 양자화부(313)는, 변환 양자화에 관한 처리를 실행한다. 예를 들어, 변환 양자화부(313)는, 연산부(312)로부터 공급되는 잔차 데이터 D를 취득한다. 또한, 변환 양자화부(313)는, 제어부(301)로부터 공급되는 예측 모드 정보 Pinfo 및 변환 정보 Tinfo를 취득한다. 변환 양자화부(313)는, 그 예측 모드 정보 Pinfo 및 변환 정보 Tinfo에 기초하여, 그 잔차 데이터 D에 대하여 변환 양자화 처리를 실행하여, 양자화 계수 데이터 level을 도출한다. 변환 양자화 처리에서는, 예를 들어, 적응 색변환, 직교 변환, 및 양자화 등의 처리가 실행된다. 물론, 변환 양자화 처리에 포함되는 처리는 임의이며, 상술한 일부의 처리가 생략되어도 되고, 상술한 이외의 처리가 포함되어 있어도 된다. 변환 양자화부(313)는, 도출한 양자화 계수 데이터 level을, 부호화부(314) 및 역양자화 역변환부(316)에 공급한다.
<부호화부>
부호화부(314)는, 변환 양자화부(313)로부터 공급된 양자화 계수 데이터 level(또는 잔차 데이터 D)을 취득한다. 또한, 부호화부(314)는, 제어부(301)로부터 공급되는 각종 부호화 파라미터(헤더 정보 Hinfo, 예측 모드 정보 Pinfo, 변환 정보 Tinfo, 필터 정보 Finfo 등)를 취득한다. 또한, 부호화부(314)는, 인루프 필터부(318)로부터 공급되는 필터 계수 등의 필터에 관한 정보를 취득한다. 또한, 부호화부(314)는, 예측부(320)로부터 공급되는 최적의 예측 모드에 관한 정보를 취득한다.
부호화부(314)는, 양자화 계수 데이터 level 또는 잔차 데이터 D를 엔트로피 부호화(가역 부호화)하여, 비트 열(부호화 데이터)을 생성한다. 부호화부(314)는, 이 엔트로피 부호화로서, 예를 들어 CABAC(Context-based Adaptive Binary Arithmetic Code)를 적용할 수 있다. 부호화부(314)는, 이 엔트로피 부호화로서, 예를 들어 CAVLC(Context-based Adaptive Variable Length Code)를 적용할 수 있다. 물론, 이 엔트로피 부호화의 내용은 임의이며, 이들 예에 한정되지는 않는다.
또한, 부호화부(314)는, 그 양자화 계수 레벨로부터 잔차 정보 Rinfo를 도출하고, 잔차 정보 Rinfo를 부호화하여, 비트 열을 생성한다.
또한, 부호화부(314)는, 인루프 필터부(318)로부터 공급되는 필터에 관한 정보를 필터 정보 Finfo에 포함시키고, 예측부(320)로부터 공급되는 최적의 예측 모드에 관한 정보를 예측 모드 정보 Pinfo에 포함시킨다. 그리고, 부호화부(314)는, 상술한 각종 부호화 파라미터(헤더 정보 Hinfo, 예측 모드 정보 Pinfo, 변환 정보 Tinfo, 필터 정보 Finfo 등)를 부호화하여, 비트 열을 생성한다.
또한, 부호화부(314)는, 이상과 같이 생성된 각종 정보의 비트 열을 다중화하여, 부호화 데이터를 생성한다. 부호화부(314)는, 그 부호화 데이터를 축적 버퍼(315)에 공급한다.
<축적 버퍼>
축적 버퍼(315)는, 부호화부(314)에 있어서 얻어진 부호화 데이터를, 일시적으로 보유한다. 축적 버퍼(315)는, 소정의 타이밍에 있어서, 보유하고 있는 부호화 데이터를, 예를 들어 비트스트림 등으로서 화상 부호화 장치(300)의 외부에 출력한다. 예를 들어, 이 부호화 데이터는, 임의의 기록 매체, 임의의 전송 매체, 임의의 정보 처리 장치 등을 통해 복호 측에 전송된다. 즉, 축적 버퍼(315)는, 부호화 데이터(비트스트림)를 전송하는 전송부이기도 하다.
<역양자화 역변환부>
역양자화 역변환부(316)는, 역양자화 역변환에 관한 처리를 실행한다. 예를 들어, 역양자화 역변환부(316)는, 변환 양자화부(313)로부터 공급되는 양자화 계수 데이터 level을 취득한다. 예를 들어, 역양자화 역변환부(316)는, 제어부(301)로부터 공급되는 변환 정보 Tinfo를 취득한다.
역양자화 역변환부(316)는, 변환 정보 Tinfo에 기초하여, 양자화 계수 데이터 level에 대하여 역양자화 역변환 처리를 실행하여, 잔차 데이터 D'을 도출한다. 이 역양자화 역변환 처리는, 변환 양자화부(313)에 있어서 실행되는 변환 양자화 처리의 역 처리이다. 즉, 역양자화 역변환 처리에서는, 예를 들어, 역양자화, 역직교 변환, 및 역적응 색변환 등의 처리가 실행된다. 역양자화는, 변환 양자화부(313)에 있어서 실행되는 양자화의 역 처리이다. 역직교 변환은, 변환 양자화부(313)에 있어서 실행되는 직교 변환의 역 처리이다. 역적응 색변환은, 변환 양자화부(313)에 있어서 실행되는 적응 색변환의 역 처리이다. 물론, 역양자화 역변환 처리에 포함되는 처리는 임의이며, 상술한 일부의 처리가 생략되어도 되고, 상술한 이외의 처리가 포함되어 있어도 된다. 역양자화 역변환부(316)는, 도출한 잔차 데이터 D'을 연산부(317)에 공급한다.
또한, 이 역양자화 역변환부(316)는, 복호 측의 역양자화 역변환부(후술함)와 마찬가지이므로, 역양자화 역변환부(316)에 대해서는, 복호 측에 대한 설명(후술함)을 적용할 수 있다.
<연산부>
연산부(317)는, 역양자화 역변환부(316)로부터 공급되는 잔차 데이터 D'과, 예측부(320)로부터 공급되는 예측 화상 P를 취득한다. 연산부(317)는, 그 잔차 데이터 D'과, 그 잔차 데이터 D'에 대응하는 예측 화상을 가산하여, 국소 복호 화상을 도출한다. 연산부(317)는, 도출한 국소 복호 화상을 인루프 필터부(318) 및 프레임 메모리(319)에 공급한다.
<인루프 필터부>
인루프 필터부(318)는, 인루프 필터 처리에 관한 처리를 실행한다. 예를 들어, 인루프 필터부(318)는, 연산부(317)로부터 공급되는 국소 복호 화상을 취득한다. 예를 들어, 인루프 필터부(318)는, 제어부(301)로부터 공급되는 필터 정보 Finfo를 취득한다. 예를 들어, 인루프 필터부(318)는, 재배열 버퍼(311)로부터 공급되는 입력 화상(원화상)을 취득한다. 또한, 인루프 필터부(318)에 입력되는 정보는 임의이며, 이들 정보 이외의 정보가 입력되어도 된다. 예를 들어, 필요에 따라, 예측 모드, 움직임 정보, 부호량 목표값, 양자화 파라미터 QP, 픽처 타입, 블록(CU, CTU 등)의 정보 등이 인루프 필터부(318)에 입력되도록 해도 된다.
인루프 필터부(318)는, 그 필터 정보 Finfo에 기초하여, 국소 복호 화상에 대하여 적절히 필터 처리를 실행한다. 인루프 필터부(318)는, 필요에 따라 입력 화상(원화상)이나, 그 외의 입력 정보도 그 필터 처리에 사용한다.
예를 들어, 인루프 필터부(318)는, 그 필터 처리로서, 양방향 필터를 적용할 수 있다. 예를 들어, 인루프 필터부(318)는, 그 필터 처리로서, 디블로킹 필터(DBF(DeBlocking Filter))를 적용할 수 있다. 예를 들어, 인루프 필터부(318)는, 그 필터 처리로서, 적응 오프셋 필터(SAO(Sample Adaptive Offset))를 적용할 수 있다. 예를 들어, 인루프 필터부(318)는, 그 필터 처리로서, 적응 루프 필터(ALF(Adaptive Loop Filter))를 적용할 수 있다. 또한, 인루프 필터부(318)는, 필터 처리로서, 이들 중 복수의 필터를 조합하여 적용할 수 있다. 또한, 어느 필터를 적용할지, 어느 순서로 적용할지는 임의이며, 적절히 선택 가능하다. 예를 들어, 인루프 필터부(318)는, 필터 처리로서, 양방향 필터, 디블로킹 필터, 적응 오프셋 필터, 적응 루프 필터의 4개의 인루프 필터를 이 순서로 적용한다.
물론, 인루프 필터부(318)가 실행하는 필터 처리는 임의이며, 상술한 예에 한정되지는 않는다. 예를 들어, 인루프 필터부(318)가 위너 필터 등을 적용하도록 해도 된다.
인루프 필터부(318)는, 필터 처리된 국소 복호 화상을 프레임 메모리(319)에 공급한다. 또한, 예를 들어 필터 계수 등의 필터에 관한 정보를 복호 측에 전송하는 경우, 인루프 필터부(318)는, 그 필터에 관한 정보를 부호화부(314)에 공급한다.
<프레임 메모리>
프레임 메모리(319)는, 화상에 관한 데이터의 기억에 관한 처리를 실행한다. 예를 들어, 프레임 메모리(319)는, 연산부(317)로부터 공급되는 국소 복호 화상이나, 인루프 필터부(318)로부터 공급되는 필터 처리된 국소 복호 화상을 취득하고, 그것을 보유(기억)한다. 또한, 프레임 메모리(319)는, 그 국소 복호 화상을 사용하여 픽처 단위마다의 복호 화상을 재구축하여, 보유한다(프레임 메모리(319) 내의 버퍼에 저장함). 프레임 메모리(319)는, 예측부(320)의 요구에 따라, 그 복호 화상(또는 그 일부)을 예측부(320)에 공급한다.
<예측부>
예측부(320)는, 예측 화상의 생성에 관한 처리를 실행한다. 예를 들어, 예측부(320)는, 제어부(301)로부터 공급되는 예측 모드 정보 Pinfo를 취득한다. 예를 들어, 예측부(320)는, 재배열 버퍼(311)로부터 공급되는 입력 화상(원화상)을 취득한다. 예를 들어, 예측부(320)는, 프레임 메모리(319)로부터 판독하는 복호 화상(또는 그 일부)을 취득한다.
예측부(320)는, 예측 모드 정보 Pinfo나 입력 화상(원화상)을 사용하여, 인터 예측이나 인트라 예측 등의 예측 처리를 실행한다. 즉, 예측부(320)는, 복호 화상을 참조 화상으로서 참조하여 예측과 움직임 보상을 실행하여, 예측 화상 P를 생성한다. 예측부(320)는, 생성한 예측 화상 P를 연산부(312) 및 연산부(317)에 공급한다. 또한, 예측부(320)는, 이상의 처리에 의해 선택한 예측 모드, 즉 최적의 예측 모드에 관한 정보를, 필요에 따라 부호화부(314)에 공급한다.
<레이트 제어부>
레이트 제어부(321)는, 레이트 제어에 관한 처리를 실행한다. 예를 들어, 레이트 제어부(321)는, 축적 버퍼(315)에 축적된 부호화 데이터의 부호량에 기초하여, 오버플로우 혹은 언더플로우가 발생하지 않도록, 변환 양자화부(313)의 양자화 동작의 레이트를 제어한다.
<본 기술의 적용>
이상과 같은 구성의 화상 부호화 장치(300)에, <1. 양자화 파라미터의 보정>, <2. 제1 실시 형태>, <3. 제2 실시 형태>, <4. 제3 실시 형태>, 및 <5. 제4 실시 형태>에 있어서 상술한 본 기술을 적용할 수 있다.
<제어부>
예를 들어, 상술한 「방법 1」을 적용하는 경우, 제어부(301)는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx를 도출하여, 변환 양자화부(313) 및 역양자화 역변환부(316)에 공급한다. 제어부(301)는, 적응 색변환에 관한 파라미터로서, cu_act_enabled_flag를 도출하여, 변환 양자화부(313) 및 역양자화 역변환부(316)에 공급한다. 제어부(301)는, 적응 색변환에 관한 파라미터로서, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 도출하여, 변환 양자화부(313) 및 역양자화 역변환부(316)에 공급한다. 제어부(301)는, 변환 스킵에 관한 파라미터로서, 컴포넌트 식별자 cIdx에 대응하는 transform_skip_flag[xTbY][yTbY][cIdx]를 도출하여, 변환 양자화부(313) 및 역양자화 역변환부(316)에 공급한다. 제어부(301)는, 변환 스킵에 관한 파라미터로서, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin을 도출하여, 변환 양자화부(313) 및 역양자화 역변환부(316)에 공급한다. 또한, 제어부(301)는, 이들 파라미터를 부호화부(314)에도 공급한다.
예를 들어, 상술한 「방법 2」를 적용하는 경우, 제어부(301)는, 「방법 1」을 적용하는 경우에 공급할 파라미터를, 변환 양자화부(313), 역양자화 역변환부(316), 및 부호화부(314)에 공급한다. 제어부(301)는, 이들 파라미터에 더하여, 비변환 스킵 시의 양자화 파라미터의 최솟값 「0」을, 변환 스킵에 관한 파라미터로서, 역양자화 역변환부(316), 및 부호화부(314)에 공급한다.
예를 들어, 상술한 「방법 3」을 적용하는 경우, 제어부(301)는, 「방법 1」을 적용하는 경우에 공급할 파라미터를, 변환 양자화부(313), 역양자화 역변환부(316), 및 부호화부(314)에 공급한다. 제어부(301)는, 이들 파라미터에 더하여, 비트 심도에 대응하는 보정량 QpBdOffset을, 변환 양자화부(313), 역양자화 역변환부(316), 및 부호화부(314)에 공급한다.
예를 들어, 상술한 「방법 4」를 적용하는 경우, 제어부(301)는, 「방법 3」을 적용하는 경우에 공급할 파라미터를, 변환 양자화부(313), 역양자화 역변환부(316), 및 부호화부(314)에 공급한다.
<변환 양자화부>
예를 들어, 상술한 「방법 1」을 적용하는 경우, 변환 양자화부(313)는, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx를 취득한다. 또한 변환 양자화부(313)는, 적응 색변환에 관한 파라미터로서, 제어부(301)로부터 공급되는 cu_act_enabled_flag를 취득한다. 변환 양자화부(313)는, 적응 색변환에 관한 파라미터로서, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 취득한다. 또한 변환 양자화부(313)는, 변환 스킵에 관한 파라미터로서, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 transform_skip_flag[xTbY][yTbY][cIdx]를 취득한다. 변환 양자화부(313)는, 변환 스킵에 관한 파라미터로서, 제어부(301)로부터 공급되는, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin을 취득한다. 변환 양자화부(313)는, 취득한 이들 파라미터를 사용하여, 변환 양자화 처리를 실행한다.
예를 들어, 상술한 「방법 2」를 적용하는 경우, 변환 양자화부(313)는, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx를 취득한다. 또한 변환 양자화부(313)는, 적응 색변환에 관한 파라미터로서, 제어부(301)로부터 공급되는 cu_act_enabled_flag를 취득한다. 변환 양자화부(313)는, 적응 색변환에 관한 파라미터로서, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 취득한다. 또한 변환 양자화부(313)는, 변환 스킵에 관한 파라미터로서, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 transform_skip_flag[xTbY][yTbY][cIdx]를 취득한다. 변환 양자화부(313)는, 변환 스킵에 관한 파라미터로서, 제어부(301)로부터 공급되는, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin을 취득한다. 변환 양자화부(313)는, 변환 스킵에 관한 파라미터로서, 제어부(301)로부터 공급되는, 비변환 스킵 시의 양자화 파라미터의 최솟값 「0」을 취득한다. 변환 양자화부(313)는, 취득한 이들 파라미터를 사용하여, 변환 양자화 처리를 실행한다.
예를 들어, 상술한 「방법 3」을 적용하는 경우, 변환 양자화부(313)는, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx를 취득한다. 또한 변환 양자화부(313)는, 적응 색변환에 관한 파라미터로서, 제어부(301)로부터 공급되는 cu_act_enabled_flag를 취득한다. 변환 양자화부(313)는, 적응 색변환에 관한 파라미터로서, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 취득한다. 또한 변환 양자화부(313)는, 변환 스킵에 관한 파라미터로서, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 transform_skip_flag[xTbY][yTbY][cIdx]를 취득한다. 변환 양자화부(313)는, 변환 스킵에 관한 파라미터로서, 제어부(301)로부터 공급되는, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin을 취득한다. 변환 양자화부(313)는, 변환 스킵에 관한 파라미터로서, 제어부(301)로부터 공급되는, 비트 심도에 대응하는 보정량 QpBdOffset을 취득한다. 변환 양자화부(313)는, 취득한 이들 파라미터를 사용하여, 변환 양자화 처리를 실행한다.
예를 들어, 상술한 「방법 4」를 적용하는 경우, 변환 양자화부(313)는, 「방법 3」을 적용하는 경우에 취득하는 것과 동일한 파라미터를 취득한다. 변환 양자화부(313)는, 취득한 이들 파라미터를 사용하여, 변환 양자화 처리를 실행한다.
<변환 양자화부의 구성예>
도 11은 도 10의 변환 양자화부(313)의 주된 구성예를 도시하는 블록도이다. 도 11에 도시된 바와 같이, 변환 양자화부(313)는, 적응 색변환부(341), 직교 변환부(342), 및 양자화부(343)를 갖는다.
적응 색변환부(341)는, 적응 색변환(ALT)에 관한 처리를 실행한다. 예를 들어, 적응 색변환부(341)는, 연산부(312)로부터 공급되는 잔차 데이터 res_x(즉 도 10의 잔차 데이터 D)를 취득한다. 적응 색변환부(341)는, 제어부(301)로부터 공급되는 cu_act_enabled_flag를 취득한다. 적응 색변환부(341)는, cu_act_enabled_flag의 값에 기초하여, 잔차 데이터 res_x에 대한 적응 색변환을 실행한다. 예를 들어, cu_act_enabled_flag가 참(예를 들어 「1」)인 경우, 적응 색변환부(341)는, 상술한 식 (1)에 나타내어진 바와 같은 연산을 실행하고, R, G, B의 컴포넌트로 이루어지는 잔차 데이터 res_x를 RGB-to-YCgCo 변환한다. 이 처리에 의해, Y, Cg, Co의 컴포넌트로 이루어지는 적응 색변환 계수 데이터 res_x'이 생성된다. 적응 색변환부(341)는, 생성한 적응 색변환 계수 데이터 res_x'을 직교 변환부(342)에 공급한다.
직교 변환부(342)는, 직교 변환에 관한 처리를 실행한다. 예를 들어, 직교 변환부(342)는, 적응 색변환부(341)로부터 공급되는 적응 색변환 계수 데이터 res_x'을 취득한다. 직교 변환부(342)는, 제어부(301)로부터 공급되는 변환 정보 Tinfo나 예측 모드 정보 Pinfo를 취득한다. 예를 들어, 직교 변환부(342)는, 변환 정보 Tinfo로서, transform_skip_flag, mts_idx, lfnst_idx 등의 정보를 취득할 수 있다. 직교 변환부(342)는, 취득한 이들 정보를 사용하여 적응 색변환 계수 데이터 res_x'을 직교 변환하여, 직교 변환 계수 데이터 coef_x를 생성한다. 직교 변환부(342)는, 생성한 직교 변환 계수 데이터 coef_x를 양자화부(343)에 공급한다.
양자화부(343)는, 양자화에 관한 처리를 실행한다. 예를 들어, 양자화부(343)는, 직교 변환부(342)로부터 공급되는 직교 변환 계수 데이터 coeff_x를 취득한다. 양자화부(343)는, 그 직교 변환 계수 데이터 coeff_x를 양자화하여, 양자화 계수 데이터 qcoef_x를 생성한다. 양자화부(343)는, 생성한 양자화 계수 데이터 qcoef_x(즉, 도 10의 양자화 계수 데이터 level)를 부호화부(314) 및 역양자화 역변환부(316)에 공급한다.
예를 들어, 상술한 「방법 1」을 적용하는 경우, 양자화부(343)는, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx를 취득한다. 또한 양자화부(343)는, 적응 색변환에 관한 파라미터로서, 제어부(301)로부터 공급되는 cu_act_enabled_flag를 취득한다. 양자화부(343)는, 적응 색변환에 관한 파라미터로서, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 취득한다. 또한 양자화부(343)는, 변환 스킵에 관한 파라미터로서, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 transform_skip_flag[xTbY][yTbY][cIdx]를 취득한다. 양자화부(343)는, 변환 스킵에 관한 파라미터로서, 제어부(301)로부터 공급되는, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin을 취득한다.
양자화부(343)는, 취득한 이들 파라미터를 사용하여, 직교 변환 계수 데이터 coeff_x를 양자화하여, 양자화 계수 데이터 qcoef_x를 생성한다.
예를 들어, 상술한 「방법 2」를 적용하는 경우, 양자화부(343)는, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx를 취득한다. 또한 양자화부(343)는, 적응 색변환에 관한 파라미터로서, 제어부(301)로부터 공급되는 cu_act_enabled_flag를 취득한다. 양자화부(343)는, 적응 색변환에 관한 파라미터로서, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 취득한다. 또한 양자화부(343)는, 변환 스킵에 관한 파라미터로서, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 transform_skip_flag[xTbY][yTbY][cIdx]를 취득한다. 양자화부(343)는, 변환 스킵에 관한 파라미터로서, 제어부(301)로부터 공급되는, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin을 취득한다. 양자화부(343)는, 변환 스킵에 관한 파라미터로서, 제어부(301)로부터 공급되는, 비변환 스킵 시의 양자화 파라미터의 최솟값 「0」을 취득한다.
양자화부(343)는, 취득한 이들 파라미터를 사용하여, 직교 변환 계수 데이터 coeff_x를 양자화하여, 양자화 계수 데이터 qcoef_x를 생성한다.
예를 들어, 상술한 「방법 3」을 적용하는 경우, 양자화부(343)는, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx를 취득한다. 또한 양자화부(343)는, 적응 색변환에 관한 파라미터로서, 제어부(301)로부터 공급되는 cu_act_enabled_flag를 취득한다. 양자화부(343)는, 적응 색변환에 관한 파라미터로서, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 취득한다. 또한 양자화부(343)는, 변환 스킵에 관한 파라미터로서, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 transform_skip_flag[xTbY][yTbY][cIdx]를 취득한다. 양자화부(343)는, 변환 스킵에 관한 파라미터로서, 제어부(301)로부터 공급되는, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin을 취득한다. 양자화부(343)는, 변환 스킵에 관한 파라미터로서, 제어부(301)로부터 공급되는, 비트 심도에 대응하는 보정량 QpBdOffset을 취득한다.
양자화부(343)는, 취득한 이들 파라미터를 사용하여, 직교 변환 계수 데이터 coeff_x를 양자화하여, 양자화 계수 데이터 qcoef_x를 생성한다.
예를 들어, 상술한 「방법 4」를 적용하는 경우, 양자화부(343)는, 「방법 3」을 적용하는 경우에 취득하는 것과 동일한 파라미터를 취득한다. 양자화부(343)는, 취득한 이들 파라미터를 사용하여, 직교 변환 계수 데이터 coeff_x를 양자화하여, 양자화 계수 데이터 qcoef_x를 생성한다.
<양자화부의 구성예>
도 12는 도 11의 양자화부(343)의 주된 구성예를 도시하는 블록도이다. 도 12에 도시된 바와 같이, 양자화부(343)는, 양자화 파라미터 보정부(351) 및 양자화 처리부(352)를 갖는다.
양자화 파라미터 보정부(351)는, 양자화 파라미터의 보정에 관한 처리를 실행한다. 예를 들어, 양자화 파라미터 보정부(351)는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx를 취득한다. 양자화 파라미터 보정부(351)는, 그 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx를 보정하고, 보정 후의 양자화 파라미터인 보정 양자화 파라미터를 양자화 처리부(352)에 공급한다.
양자화 처리부(352)는, 양자화에 관한 처리를 실행한다. 예를 들어, 양자화 처리부(352)는, 직교 변환부(342)로부터 공급되는 직교 변환 계수 데이터 coef_x를 취득한다. 양자화 처리부(352)는, 양자화 파라미터 보정부(351)로부터 공급되는 보정 양자화 파라미터를 취득한다. 양자화 처리부(352)는, 보정 양자화 파라미터를 사용하여 직교 변환 계수 데이터 coef_x를 양자화하여, 양자화 계수 데이터 qcoef_x를 생성한다. 양자화 처리부(352)는, 생성한 양자화 계수 데이터 qcoef_x(즉, 도 10의 양자화 계수 데이터 level)를 부호화부(314) 및 역양자화 역변환부(316)에 공급한다.
이상과 같은 구성의 양자화부(343)에 있어서 본 기술을 적용하는 경우, 양자화 파라미터 보정부(351)는, 양자화 파라미터를, 적응 색변환에 관한 파라미터에 기초하여 보정하고, 또한, 변환 스킵에 관한 파라미터에 기초하여 보정한다. 양자화 처리부(352)는, 양자화 파라미터 보정부(351)에 의해 보정된 양자화 파라미터인 보정 양자화 파라미터를 사용하여, 부호화 대상의 화상의 계수 데이터를 양자화한다.
예를 들어, 상술한 「방법 1」을 적용하는 경우, 양자화 파라미터 보정부(351)로서 양자화 파라미터 보정 장치(100)(도 2)를 적용한다. 즉, 양자화 파라미터 보정부(351)는, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx를 취득한다. 또한, 양자화 파라미터 보정부(351)는, 적응 색변환에 관한 파라미터로서, 제어부(301)로부터 공급되는 cu_act_enabled_flag를 취득한다. 양자화 파라미터 보정부(351)는, 적응 색변환에 관한 파라미터로서, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 취득한다. 또한, 양자화 파라미터 보정부(351)는, 변환 스킵에 관한 파라미터로서, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 transform_skip_flag[xTbY][yTbY][cIdx]를 취득한다. 양자화 파라미터 보정부(351)는, 변환 스킵에 관한 파라미터로서, 제어부(301)로부터 공급되는, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin을 취득한다.
양자화 파라미터 보정부(351)는, 취득한 cu_act_enabled_flag, dqPx, transform_skip_flag[xTbY][yTbY][cIdx], 및 QpPrimeTsMin을 사용하여, 제1 실시 형태에 있어서 설명한 바와 같은 방법으로, qPx를 보정한다. 즉, 양자화 파라미터 보정부(351)는, 식 (5) 또는 식 (6)과 같은 연산을 실행하여, 제2 보정 양자화 파라미터 qP''을 생성한다. 양자화 파라미터 보정부(351)는, 생성한 제2 보정 양자화 파라미터 qP''을, 양자화 처리부(352)에 공급한다.
이렇게 함으로써, 양자화 파라미터 보정부(351)는, 적응 색변환 및 변환 스킵이 적용되는 경우에, 양자화에 있어서 양자화 스텝 사이즈 Δ<1이 되지 않도록, 양자화 파라미터를 보정할 수 있다. 따라서, 양자화 처리부(352)가 이와 같이 보정된 양자화 파라미터를 사용하여 화상의 계수 데이터를 양자화함으로써, 양자화부(343)(변환 양자화부(313))는, PSNR의 저감을 억제할 수 있다. 따라서, 화상 부호화 장치(300)는, 부호화 효율의 저감을 억제할 수 있다.
예를 들어, 상술한 「방법 2」를 적용하는 경우, 양자화 파라미터 보정부(351)로서 양자화 파라미터 보정 장치(120)(도 4)를 적용한다. 즉, 양자화 파라미터 보정부(351)는, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx를 취득한다. 또한, 양자화 파라미터 보정부(351)는, 적응 색변환에 관한 파라미터로서, 제어부(301)로부터 공급되는 cu_act_enabled_flag를 취득한다. 양자화 파라미터 보정부(351)는, 적응 색변환에 관한 파라미터로서, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 취득한다. 또한, 양자화 파라미터 보정부(351)는, 변환 스킵에 관한 파라미터로서, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 transform_skip_flag[xTbY][yTbY][cIdx]를 취득한다. 양자화 파라미터 보정부(351)는, 변환 스킵에 관한 파라미터로서, 제어부(301)로부터 공급되는, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin을 취득한다. 양자화 파라미터 보정부(351)는, 변환 스킵에 관한 파라미터로서, 제어부(301)로부터 공급되는, 비변환 스킵 시의 양자화 파라미터의 최솟값 「0」을 취득한다.
양자화 파라미터 보정부(351)는, 취득한 cu_act_enabled_flag, dqPx, transform_skip_flag[xTbY][yTbY][cIdx], QpPrimeTsMin, 및 값 「0」을 사용하여, 제2 실시 형태에 있어서 설명한 바와 같은 방법으로, qPx를 보정한다. 즉, 양자화 파라미터 보정부(351)는, 식 (5) 또는 식 (13)과 같은 연산을 실행하여, 제2 보정 양자화 파라미터 qP''을 생성한다. 양자화 파라미터 보정부(351)는, 생성한 제2 보정 양자화 파라미터 qP''을, 양자화 처리부(352)에 공급한다.
이렇게 함으로써, 양자화 파라미터 보정부(351)는, 변환 스킵이 적용되는지 여부에 관계없이, 적응 색변환이 적용되는 경우에, 양자화에 있어서 양자화 스텝 사이즈 Δ<1이 되지 않도록, 양자화 파라미터를 보정할 수 있다. 따라서, 양자화 처리부(352)가 이와 같이 보정된 양자화 파라미터를 사용하여 화상의 계수 데이터를 양자화함으로써, 양자화부(343)(변환 양자화부(313))는, PSNR의 저감을 억제할 수 있다. 따라서, 화상 부호화 장치(300)는, 부호화 효율의 저감을 억제할 수 있다.
예를 들어, 상술한 「방법 3」을 적용하는 경우, 양자화 파라미터 보정부(351)로서 양자화 파라미터 보정 장치(140)(도 6)를 적용한다. 즉, 양자화 파라미터 보정부(351)는, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx를 취득한다. 또한, 양자화 파라미터 보정부(351)는, 적응 색변환에 관한 파라미터로서, 제어부(301)로부터 공급되는 cu_act_enabled_flag를 취득한다. 양자화 파라미터 보정부(351)는, 적응 색변환에 관한 파라미터로서, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 취득한다. 또한, 양자화 파라미터 보정부(351)는, 변환 스킵에 관한 파라미터로서, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 transform_skip_flag[xTbY][yTbY][cIdx]를 취득한다. 양자화 파라미터 보정부(351)는, 변환 스킵에 관한 파라미터로서, 제어부(301)로부터 공급되는, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin을 취득한다. 양자화 파라미터 보정부(351)는, 변환 스킵에 관한 파라미터로서, 제어부(301)로부터 공급되는, 비트 심도에 대응하는 보정량 QpBdOffset을 취득한다.
양자화 파라미터 보정부(351)는, 취득한 cu_act_enabled_flag, dqPx, transform_skip_flag[xTbY][yTbY][cIdx], QpPrimeTsMin, 및 QpBdOffset을 사용하여, 제3 실시 형태에 있어서 설명한 바와 같은 방법으로, qPx를 보정한다. 즉, 양자화 파라미터 보정부(351)는, 식 (16) 또는 식 (17)과 같은 연산을 실행하여, 제3 보정 양자화 파라미터 qP'''을 생성한다. 양자화 파라미터 보정부(351)는, 생성한 제3 보정 양자화 파라미터 qP'''을, 양자화 처리부(352)에 공급한다.
이렇게 함으로써, 변환 스킵이 적용되는지 여부에 관계없이, 보정 후의 양자화 파라미터의 값은, 양자화 파라미터의 최솟값 내지 최댓값의 범위 내에 속한다. 또한, 변환 스킵의 경우, 추가로, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin에 의해 양자화 파라미터의 하한이 클립된다. 즉, 양자화 파라미터 보정부(351)는, 변환 스킵이 적용되는지 여부에 관계없이, 적응 색변환이 적용되는 경우에, 양자화에 있어서 양자화 스텝 사이즈 Δ<1이 되지 않도록, 양자화 파라미터를 보정할 수 있다. 따라서, 양자화 처리부(352)가 이와 같이 보정된 양자화 파라미터를 사용하여 화상의 계수 데이터를 양자화함으로써, 양자화부(343)(변환 양자화부(313))는, PSNR의 저감을 억제할 수 있다. 따라서, 화상 부호화 장치(300)는, 부호화 효율의 저감을 억제할 수 있다.
예를 들어, 상술한 「방법 4」를 적용하는 경우, 양자화 파라미터 보정부(351)로서 양자화 파라미터 보정 장치(160)(도 8)를 적용한다. 즉, 양자화 파라미터 보정부(351)는, 「방법 3」의 경우와 마찬가지의 파라미터를 취득한다.
양자화 파라미터 보정부(351)는, 이들 파라미터(cu_act_enabled_flag, dqPx, transform_skip_flag[xTbY][yTbY][cIdx], QpPrimeTsMin, 및 QpBdOffset)를 사용하여, 제4 실시 형태에 있어서 설명한 바와 같은 방법으로, qPx를 보정한다. 즉, 양자화 파라미터 보정부(351)는, 식 (18) 또는 식 (17)과 같은 연산을 실행하여, 제2 보정 양자화 파라미터 qP''을 생성한다. 양자화 파라미터 보정부(351)는, 생성한 제2 보정 양자화 파라미터 qP''을, 양자화 처리부(352)에 공급한다.
즉, 방법 4의 경우, 실질적으로 방법 3의 경우와 동등한 연산이 실행되어, 동등한 보정 결과가 얻어진다. 따라서, 이 경우에도, 방법 3의 경우와 마찬가지로, 양자화 파라미터 보정부(351)는, 변환 스킵이 적용되는지 여부에 관계없이, 적응 색변환이 적용되는 경우에, 양자화에 있어서 양자화 스텝 사이즈 Δ<1이 되지 않도록, 양자화 파라미터를 보정할 수 있다. 따라서, 양자화 처리부(352)가 이와 같이 보정된 양자화 파라미터를 사용하여 화상의 계수 데이터를 양자화함으로써, 양자화부(343)(변환 양자화부(313))는, PSNR의 저감을 억제할 수 있다. 따라서, 화상 부호화 장치(300)는, 부호화 효율의 저감을 억제할 수 있다.
<부호화부>
예를 들어, 상술한 「방법 1」을 적용하는 경우, 부호화부(314)는, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx를 취득한다. 또한 부호화부(314)는, 적응 색변환에 관한 파라미터로서, 제어부(301)로부터 공급되는 cu_act_enabled_flag를 취득한다. 부호화부(314)는, 적응 색변환에 관한 파라미터로서, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 취득한다. 또한 부호화부(314)는, 변환 스킵에 관한 파라미터로서, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 transform_skip_flag[xTbY][yTbY][cIdx]를 취득한다. 부호화부(314)는, 변환 스킵에 관한 파라미터로서, 제어부(301)로부터 공급되는, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin을 취득한다. 부호화부(314)는, 취득한 이들 파라미터를 부호화하고, 비트 열을 생성하여, 부호화 데이터에 포함시킨다.
이렇게 함으로써, 이들 정보가 시그널링된다. 즉, 이들 정보가 복호 측 장치(디코더 등)에 공급된다. 따라서, 그 복호 측 장치는, 복호 처리에 있어서 적응 색변환 및 변환 스킵이 적용되는 경우에, 양자화 스텝 사이즈 Δ<1이 되지 않도록, 양자화 파라미터를 보정할 수 있다. 따라서, 복호 측 장치는, 그 복호 처리에 있어서, 이와 같이 보정된 양자화 파라미터를 사용하여 역양자화를 실행할 수 있다. 따라서, 복호 측 장치는, PSNR의 저감을 억제할 수 있다. 따라서, 복호 측 장치는, 부호화 효율의 저감의 억제를 실현할 수 있다.
예를 들어, 상술한 「방법 2」를 적용하는 경우, 부호화부(314)는, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx를 취득한다. 또한 부호화부(314)는, 적응 색변환에 관한 파라미터로서, 제어부(301)로부터 공급되는 cu_act_enabled_flag를 취득한다. 부호화부(314)는, 적응 색변환에 관한 파라미터로서, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 취득한다. 또한 부호화부(314)는, 변환 스킵에 관한 파라미터로서, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 transform_skip_flag[xTbY][yTbY][cIdx]를 취득한다. 부호화부(314)는, 변환 스킵에 관한 파라미터로서, 제어부(301)로부터 공급되는, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin을 취득한다. 부호화부(314)는, 변환 스킵에 관한 파라미터로서, 제어부(301)로부터 공급되는, 비변환 스킵 시의 양자화 파라미터의 최솟값 「0」을 취득한다. 부호화부(314)는, 취득한 이들 파라미터를 부호화하고, 비트 열을 생성하여, 부호화 데이터에 포함시킨다.
이렇게 함으로써, 이들 정보가 시그널링된다. 즉, 이들 정보가 복호 측 장치(디코더 등)에 공급된다. 따라서, 그 복호 측 장치는, 복호 처리에 있어서, 변환 스킵이 적용되는지 여부에 관계없이, 적응 색변환이 적용되는 경우에, 양자화 스텝 사이즈 Δ<1이 되지 않도록, 양자화 파라미터를 보정할 수 있다. 따라서, 복호 측 장치는, 그 복호 처리에 있어서, 이와 같이 보정된 양자화 파라미터를 사용하여 역양자화를 실행할 수 있다. 따라서, 복호 측 장치는, PSNR의 저감을 억제할 수 있다. 따라서, 복호 측 장치는, 부호화 효율의 저감의 억제를 실현할 수 있다.
예를 들어, 상술한 「방법 3」을 적용하는 경우, 부호화부(314)는, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx를 취득한다. 또한 부호화부(314)는, 적응 색변환에 관한 파라미터로서, 제어부(301)로부터 공급되는 cu_act_enabled_flag를 취득한다. 부호화부(314)는, 적응 색변환에 관한 파라미터로서, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 취득한다. 또한 부호화부(314)는, 변환 스킵에 관한 파라미터로서, 제어부(301)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 transform_skip_flag[xTbY][yTbY][cIdx]를 취득한다. 부호화부(314)는, 변환 스킵에 관한 파라미터로서, 제어부(301)로부터 공급되는, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin을 취득한다. 부호화부(314)는, 변환 스킵에 관한 파라미터로서, 제어부(301)로부터 공급되는, 비트 심도에 대응하는 보정량 QpBdOffset을 취득한다. 부호화부(314)는, 취득한 이들 파라미터를 부호화하고, 비트 열을 생성하여, 부호화 데이터에 포함시킨다.
이렇게 함으로써, 이들 정보가 시그널링된다. 즉, 이들 정보가 복호 측 장치(디코더 등)에 공급된다. 따라서, 그 복호 측 장치에 의한 복호 처리에 있어서, 변환 스킵이 적용되는지 여부에 관계없이, 보정 후의 양자화 파라미터의 값은, 양자화 파라미터의 최솟값 내지 최댓값의 범위 내에 속한다. 또한, 변환 스킵의 경우, 추가로, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin에 의해 양자화 파라미터의 하한이 클립된다. 즉, 복호 측 장치는, 복호 처리에 있어서, 변환 스킵이 적용되는지 여부에 관계없이, 적응 색변환이 적용되는 경우에, 양자화 스텝 사이즈 Δ<1이 되지 않도록, 양자화 파라미터를 보정할 수 있다. 따라서, 복호 측 장치는, 그 복호 처리에 있어서, 이와 같이 보정된 양자화 파라미터를 사용하여 역양자화를 실행할 수 있다. 따라서, 복호 측 장치는, PSNR의 저감을 억제할 수 있다. 따라서, 복호 측 장치는, 부호화 효율의 저감의 억제를 실현할 수 있다.
예를 들어, 상술한 「방법 4」를 적용하는 경우, 부호화부(314)는, 「방법 3」의 경우와 마찬가지의 파라미터를 취득한다. 부호화부(314)는, 취득한 이들 파라미터(cu_act_enabled_flag, dqPx, transform_skip_flag[xTbY][yTbY][cIdx], QpPrimeTsMin, 및 QpBdOffset)를 부호화하고, 비트 열을 생성하여, 부호화 데이터에 포함시킨다.
이렇게 함으로써, 이들 정보가 시그널링된다. 즉, 이들 정보가 복호 측 장치(디코더 등)에 공급된다. 따라서, 이 경우에도, 그 복호 측 장치는, 복호 처리에 있어서, 변환 스킵이 적용되는지 여부에 관계없이, 적응 색변환이 적용되는 경우에, 양자화 스텝 사이즈 Δ<1이 되지 않도록, 양자화 파라미터를 보정할 수 있다. 따라서, 복호 측 장치는, 그 복호 처리에 있어서, 이와 같이 보정된 양자화 파라미터를 사용하여 역양자화를 실행할 수 있다. 따라서, 복호 측 장치는, PSNR의 저감을 억제할 수 있다. 따라서, 복호 측 장치는, 부호화 효율의 저감의 억제를 실현할 수 있다.
<화상 부호화 처리의 흐름>
다음으로, 이상과 같은 화상 부호화 장치(300)에 의해 실행되는 각 처리의 흐름에 대하여 설명한다. 먼저, 도 13의 흐름도를 참조하여, 화상 부호화 처리의 흐름의 예를 설명한다.
화상 부호화 처리가 개시되면, 스텝 S301에 있어서, 재배열 버퍼(311)는, 제어부(301)에 의해 제어되어, 입력된 동화상 데이터의 프레임의 순서를 표시순으로부터 부호화순으로 재배열한다.
스텝 S302에 있어서, 제어부(301)는, 재배열 버퍼(311)가 보유하는 입력 화상에 대하여, 처리 단위를 설정한다(블록을 분할함).
스텝 S303에 있어서, 제어부(301)는, 재배열 버퍼(311)가 보유하는 입력 화상에 대한 부호화 파라미터(예를 들어, 헤더 정보 Hinfo, 예측 모드 정보 Pinfo, 변환 정보 Tinfo 등)를 설정한다.
스텝 S304에 있어서, 예측부(320)는, 예측 처리를 실행하여, 최적의 예측 모드의 예측 화상 등을 생성한다. 예를 들어, 이 예측 처리에 있어서, 예측부(320)는, 인트라 예측을 실행하여 최적의 인트라 예측 모드의 예측 화상 등을 생성하고, 인터 예측을 실행하여 최적의 인터 예측 모드의 예측 화상 등을 생성하고, 그것들 중에서, 비용 함수 값 등에 기초하여 최적의 예측 모드를 선택한다.
스텝 S305에 있어서, 연산부(312)는, 입력 화상과, 스텝 S304의 예측 처리에 의해 선택된 최적의 모드의 예측 화상 간의 차분을 연산한다. 즉, 연산부(312)는, 입력 화상과 예측 화상 간의 잔차 데이터 D를 생성한다. 이렇게 하여 구해진 잔차 데이터 D는, 원래의 화상 데이터에 비하여 데이터양이 저감된다. 따라서, 화상을 그대로 부호화하는 경우에 비하여, 데이터양을 압축할 수 있다.
스텝 S306에 있어서, 변환 양자화부(313)는, 스텝 S303에 있어서 생성된 변환 정보 Tinfo 등의 부호화 파라미터를 사용하여, 스텝 S305의 처리에 의해 생성된 잔차 데이터 D에 대하여 변환 양자화 처리를 실행하여, 양자화 계수 데이터 level을 생성한다.
스텝 S307에 있어서, 역양자화 역변환부(316)는, 스텝 S303에 있어서 생성된 변환 정보 Tinfo 등의 부호화 파라미터를 사용하여, 스텝 S306에 있어서 생성된 양자화 계수 데이터 level에 대하여, 역양자화 역변환 처리를 실행하여, 잔차 데이터 D'을 생성한다.
이 역양자화 역변환 처리는, 스텝 S306의 변환 양자화 처리의 역 처리이다. 후술하는 복호 측 장치(화상 복호 장치(400))에 있어서도, 마찬가지의 처리가 실행된다. 따라서, 이 역양자화 역변환 처리는, 복호 측 장치(화상 복호 장치(400))의 처리로서 설명한다. 그리고 그 설명은, 이 역양자화 역변환 처리(스텝 S307)에 적용할 수 있다.
스텝 S308에 있어서, 연산부(317)는, 스텝 S307의 역양자화 역변환 처리에 의해 얻어진 잔차 데이터 D'에, 스텝 S304의 예측 처리에 의해 얻어진 예측 화상을 가산함으로써, 국소적으로 복호된 복호 화상을 생성한다.
스텝 S309에 있어서, 인루프 필터부(318)는, 스텝 S308의 처리에 의해 도출된, 국소적으로 복호된 복호 화상에 대하여, 인루프 필터 처리를 실행한다.
스텝 S310에 있어서, 프레임 메모리(319)는, 스텝 S308의 처리에 의해 도출된, 국소적으로 복호된 복호 화상이나, 스텝 S309에 있어서 필터 처리된, 국소적으로 복호된 복호 화상을 기억한다.
스텝 S311에 있어서, 부호화부(314)는, 스텝 S306의 변환 양자화 처리에 의해 얻어진 양자화 계수 데이터 level을 부호화하여, 부호화 데이터를 생성한다. 또한, 이때, 부호화부(314)는, 각종 부호화 파라미터(헤더 정보 Hinfo, 예측 모드 정보 Pinfo, 변환 정보 Tinfo)를 부호화한다. 또한, 부호화부(314)는, 양자화 계수 데이터 level로부터 잔차 정보 RInfo를 도출하여, 그 잔차 정보 RInfo를 부호화한다.
스텝 S312에 있어서, 축적 버퍼(315)는, 이렇게 하여 얻어진 부호화 데이터를 축적하고, 예를 들어 비트스트림으로서, 그것을 화상 부호화 장치(300)의 외부에 출력한다. 이 비트스트림은, 예를 들어, 전송로나 기록 매체를 통해 복호 측 장치에 전송된다. 또한, 레이트 제어부(321)는, 필요에 따라 레이트를 제어한다. 스텝 S312의 처리가 종료되면, 화상 부호화 처리가 종료된다.
<변환 양자화 처리의 흐름>
다음으로, 도 14의 흐름도를 참조하여, 도 13의 스텝 S306에 있어서 실행되는 변환 양자화 처리의 흐름의 예를 설명한다.
변환 양자화 처리가 개시되면, 적응 색변환부(341)는, 스텝 S341에 있어서, 스텝 S303(도 13)에 있어서 생성된 cu_act_enabled_flag에 기초하여, 스텝 S305의 처리에 의해 생성된 잔차 데이터 res_x를 적응 색변환하여, 적응 색변환 계수 데이터 res_x'을 생성한다.
스텝 S342에 있어서, 직교 변환부(342)는, 스텝 S303(도 13)에 있어서 생성된 변환 정보 Tinfo나 예측 모드 정보 Pinfo 등을 사용하여, 스텝 S341에 있어서 생성된 적응 색변환 계수 데이터 res_x'을 직교 변환하여, 직교 변환 계수 데이터 coef_x를 생성한다.
스텝 S343에 있어서, 양자화부(343)는, 스텝 S303(도 13)에 있어서 생성된 변환 정보 Tinfo 등을 사용하여, 스텝 S342에 있어서 생성된 직교 변환 계수 데이터 coef_x를 양자화하여, 양자화 계수 데이터 qcoef_x를 생성한다.
스텝 S343의 처리가 종료되면, 처리는 도 13으로 되돌아간다.
<양자화 처리의 흐름>
다음으로, 도 15의 흐름도를 참조하여, 도 14의 스텝 S343에 있어서 실행되는 양자화 처리의 흐름의 예를 설명한다.
양자화 처리가 개시되면, 양자화 파라미터 보정부(351)는, 스텝 S351에 있어서, 양자화 파라미터 보정 처리를 실행하여, 양자화 파라미터를 보정하여, 보정 양자화 파라미터를 생성한다.
스텝 S352에 있어서, 양자화 처리부(352)는, 스텝 S351에 있어서 생성된 보정 양자화 파라미터를 사용하여, 스텝 S342(도 14)에 있어서 생성된 직교 변환 계수 데이터 coef_x를 양자화하여, 양자화 계수 데이터 qcoef_x를 생성한다.
스텝 S352의 처리가 종료되면, 양자화 처리가 종료되고, 처리는 도 14로 되돌아간다.
이러한 양자화 처리에 있어서, <1. 양자화 파라미터의 보정>, <2. 제1 실시 형태>, <3. 제2 실시 형태>, <4. 제3 실시 형태>, 및 <5. 제4 실시 형태>에 있어서 상술한 본 기술을 적용할 수 있다.
즉, 이상과 같은 양자화 처리에 있어서 본 기술을 적용하는 경우, 스텝 S351에 있어서, 양자화 파라미터 보정부(351)는, 양자화 파라미터를, 적응 색변환에 관한 파라미터에 기초하여 보정하고, 또한, 변환 스킵에 관한 파라미터에 기초하여 보정한다. 스텝 S352에 있어서, 양자화 처리부(352)는, 그 보정된 양자화 파라미터인 보정 양자화 파라미터를 사용하여, 부호화 대상의 화상의 계수 데이터를 양자화한다.
예를 들어, 상술한 「방법 1」을 적용하는 경우, 양자화 파라미터 보정부(351)는, 스텝 S351의 양자화 파라미터 보정 처리로서, 도 3의 흐름도를 참조하여 설명한 양자화 파라미터 보정 처리를 적용한다. 즉, 양자화 파라미터 보정부(351)는, 식 (5) 또는 식 (6)과 같은 연산을 실행하여, 제2 보정 양자화 파라미터 qP''을 생성한다.
이렇게 함으로써, 양자화 파라미터 보정부(351)는, 적응 색변환 및 변환 스킵이 적용되는 경우에, 양자화에 있어서 양자화 스텝 사이즈 Δ<1이 되지 않도록, 양자화 파라미터를 보정할 수 있다. 따라서, 양자화 처리부(352)가 이와 같이 보정된 양자화 파라미터를 사용하여 화상의 계수 데이터를 양자화함으로써, 양자화부(343)(변환 양자화부(313))는, PSNR의 저감을 억제할 수 있다. 따라서, 화상 부호화 장치(300)는, 부호화 효율의 저감을 억제할 수 있다.
예를 들어, 상술한 「방법 2」를 적용하는 경우, 양자화 파라미터 보정부(351)는, 스텝 S351의 양자화 파라미터 보정 처리로서, 도 5의 흐름도를 참조하여 설명한 양자화 파라미터 보정 처리를 적용한다. 즉, 양자화 파라미터 보정부(351)는, 식 (5) 또는 식 (13)과 같은 연산을 실행하여, 제2 보정 양자화 파라미터 qP''을 생성한다.
이렇게 함으로써, 양자화 파라미터 보정부(351)는, 변환 스킵이 적용되는지 여부에 관계없이, 적응 색변환이 적용되는 경우에, 양자화에 있어서 양자화 스텝 사이즈 Δ<1이 되지 않도록, 양자화 파라미터를 보정할 수 있다. 따라서, 양자화 처리부(352)가 이와 같이 보정된 양자화 파라미터를 사용하여 화상의 계수 데이터를 양자화함으로써, 양자화부(343)(변환 양자화부(313))는, PSNR의 저감을 억제할 수 있다. 따라서, 화상 부호화 장치(300)는, 부호화 효율의 저감을 억제할 수 있다.
예를 들어, 상술한 「방법 3」을 적용하는 경우, 양자화 파라미터 보정부(351)는, 스텝 S351의 양자화 파라미터 보정 처리로서, 도 7의 흐름도를 참조하여 설명한 양자화 파라미터 보정 처리를 적용한다. 즉, 양자화 파라미터 보정부(351)는, 식 (16) 또는 식 (17)과 같은 연산을 실행하여, 제3 보정 양자화 파라미터 qP'''을 생성한다.
이렇게 함으로써, 변환 스킵이 적용되는지 여부에 관계없이, 보정 후의 양자화 파라미터의 값은, 양자화 파라미터의 최솟값 내지 최댓값의 범위 내에 속한다. 변환 스킵의 경우, 추가로, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin에 의해 양자화 파라미터의 하한이 클립된다. 즉, 양자화 파라미터 보정부(351)는, 변환 스킵이 적용되는지 여부에 관계없이, 적응 색변환이 적용되는 경우에, 양자화에 있어서 양자화 스텝 사이즈 Δ<1이 되지 않도록, 양자화 파라미터를 보정할 수 있다. 따라서, 양자화 처리부(352)가 이와 같이 보정된 양자화 파라미터를 사용하여 화상의 계수 데이터를 양자화함으로써, 양자화부(343)(변환 양자화부(313))는, PSNR의 저감을 억제할 수 있다. 따라서, 화상 부호화 장치(300)는, 부호화 효율의 저감을 억제할 수 있다.
예를 들어, 상술한 「방법 4」를 적용하는 경우, 양자화 파라미터 보정부(351)는, 스텝 S351의 양자화 파라미터 보정 처리로서, 도 9의 흐름도를 참조하여 설명한 양자화 파라미터 보정 처리를 적용한다. 즉, 양자화 파라미터 보정부(351)는, 식 (18) 또는 식 (17)과 같은 연산을 실행하여, 제2 보정 양자화 파라미터 qP''을 생성한다.
즉, 방법 4의 경우, 실질적으로 방법 3의 경우와 동등한 연산이 행해져, 동등한 보정 결과가 얻어진다. 따라서, 이 경우에도, 방법 3의 경우와 마찬가지로, 변환 스킵이 적용되는지 여부에 관계없이, 적응 색변환이 적용되는 경우에, 양자화에 있어서 양자화 스텝 사이즈 Δ<1이 되지 않도록, 양자화 파라미터를 보정할 수 있다. 따라서, 양자화 처리부(352)가 이와 같이 보정된 양자화 파라미터를 사용하여 화상의 계수 데이터를 양자화함으로써, 양자화부(343)(변환 양자화부(313))는, PSNR의 저감을 억제할 수 있다. 따라서, 화상 부호화 장치(300)는, 부호화 효율의 저감을 억제할 수 있다.
<부호화>
또한, 도 13의 스텝 S311에 있어서, 부호화부(314)가 각종 부호화 파라미터(헤더 정보 Hinfo, 예측 모드 정보 Pinfo, 변환 정보 Tinfo)를 부호화한다. 본 기술을 적용하는 경우, 부호화부(314)는, 이 부호화 파라미터로서, 양자화 파라미터의 보정에 적용될 상술한 각종 파라미터를 부호화한다. 예를 들어, 「방법 1」이 적용되는 경우, 부호화부(314)는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx, cu_act_enabled_flag, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx, 컴포넌트 식별자 cIdx에 대응하는 transform_skip_flag[xTbY][yTbY][cIdx], 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin 등의 파라미터를 부호화한다. 또한, 「방법 2」가 적용되는 경우, 부호화부(314)는, 「방법 1」이 적용되는 경우에 부호화할 파라미터에 더하여, 비변환 스킵 시의 양자화 파라미터의 최솟값 「0」을 부호화한다. 또한, 「방법 3」 또는 「방법 4」가 적용되는 경우, 부호화부(314)는, 「방법 1」이 적용되는 경우에 부호화할 파라미터에 더하여, 비트 심도에 대응하는 보정량 QpBdOffset을 부호화한다.
이렇게 함으로써, 이들 정보가 시그널링되므로, 복호 측 장치는, PSNR의 저감을 억제할 수 있다. 따라서, 복호 측 장치는, 부호화 효율의 저감의 억제를 실현할 수 있다.
<7. 제6 실시 형태>
<화상 복호 장치>
이상에서 설명한 본 기술(각종 방법)은, 화상 데이터의 부호화 데이터를 복호하는 화상 복호 장치에 적용할 수도 있다.
도 16은 본 기술을 적용한 화상 처리 장치의 일 양태인 화상 복호 장치의 구성의 일례를 도시하는 블록도이다. 도 16에 도시된 화상 복호 장치(400)는 동화상의 부호화 데이터를 복호하는 장치이다. 예를 들어, 화상 복호 장치(400)는 상술한 비특허문헌에 기재된 VVC, AVC, HEVC 등의 부호화 방식으로 부호화된 동화상의 부호화 데이터를 복호한다. 예를 들어, 화상 복호 장치(400)는 상술한 화상 부호화 장치(300)(도 10)에 의해 생성된 부호화 데이터(비트스트림)를 복호할 수 있다.
또한, 도 16에서는, 처리부나 데이터의 흐름 등의 주된 것을 도시하고 있고, 도 16에 도시된 것이 전부인 것만은 아니다. 즉, 화상 복호 장치(400)에 있어서, 도 16에 있어서 블록으로서 나타내어져 있지 않은 처리부가 존재하거나, 도 16에 있어서 화살표 등으로서 나타내어져 있지 않은 처리나 데이터의 흐름이 존재하거나 해도 된다. 이는, 화상 복호 장치(400) 내의 처리부 등을 설명하는 다른 도면에 있어서도 마찬가지이다.
도 16에 도시된 바와 같이 화상 복호 장치(400)는, 제어부(401), 축적 버퍼(411), 복호부(412), 역양자화 역변환부(413), 연산부(414), 인루프 필터부(415), 재배열 버퍼(416), 프레임 메모리(417), 및 예측부(418)를 구비하고 있다. 또한, 예측부(418)는, 도시하지 않은 인트라 예측부 및 인터 예측부를 구비하고 있다.
<제어부>
제어부(401)는, 복호의 제어에 관한 처리를 실행한다. 예를 들어, 제어부(401)는, 비트스트림에 포함되는 부호화 파라미터(헤더 정보 Hinfo, 예측 모드 정보 Pinfo, 변환 정보 Tinfo, 잔차 정보 Rinfo, 필터 정보 Finfo 등)를 복호부(412)를 통해 취득한다. 또한, 제어부(401)는, 비트스트림에 포함되지 않은 부호화 파라미터를 추정할 수 있다. 또한, 제어부(401)는, 취득한(또는 추정한) 부호화 파라미터에 기초하여, 화상 복호 장치(400)의 각 처리부(축적 버퍼(411) 내지 예측부(418))를 제어함으로써, 복호를 제어한다.
예를 들어, 제어부(401)는, 헤더 정보 Hinfo를, 역양자화 역변환부(413), 예측부(418), 인루프 필터부(415)에 공급한다. 또한, 제어부(401)는, 예측 모드 정보 Pinfo를, 역양자화 역변환부(413) 및 예측부(418)에 공급한다. 또한, 제어부(401)는, 변환 정보 Tinfo를, 역양자화 역변환부(413)에 공급한다. 또한, 제어부(401)는, 잔차 정보 Rinfo를, 복호부(412)에 공급한다. 또한 제어부(401)는, 필터 정보 Finfo를, 인루프 필터부(415)에 공급한다.
물론, 상술한 예는 일례이고, 이 예에 한정되지는 않는다. 예를 들어, 각 부호화 파라미터가 임의의 처리부에 공급되도록 해도 된다. 또한, 그 외의 정보가, 임의의 처리부에 공급되도록 해도 된다.
<헤더 정보 Hinfo>
헤더 정보 Hinfo는, 예를 들어, VPS(Video Parameter Set), SPS(Sequence ParameterSet), PPS(Picture Parameter Set), PH(픽처 헤더), SH(슬라이스 헤더) 등의 헤더 정보를 포함한다. 헤더 정보 Hinfo에는, 예를 들어, 화상 사이즈(가로 폭 PicWidth, 세로 폭 PicHeight), 비트 심도(휘도 bitDepthY, 색차 bitDepthC), 색차 어레이 타입 ChromaArrayType, CU 사이즈의 최댓값 MaxCUSize나 최솟값 MinCUSize, 4분목 분할(Quad-tree 분할이라고도 함)의 최대 심도 MaxQTDepth나 최소 심도 MinQTDepth, 2분목 분할(Binary-tree 분할)의 최대 심도 MaxBTDepth나 최소 심도 MinBTDepth, 변환 스킵 블록의 최댓값 MaxTSSize(최대 변환 스킵 블록 사이즈라고도 함), 각 부호화 툴의 온/오프 플래그(유효 플래그라고도 함) 등을 규정하는 정보가 포함된다.
예를 들어, 헤더 정보 Hinfo에 포함되는 부호화 툴의 온/오프 플래그로서는, 이하에 나타내는 변환, 양자화 처리에 관계되는 온/오프 플래그가 있다. 또한, 부호화 툴의 온/오프 플래그는, 부호화 툴에 관계되는 신택스가 부호화 데이터 중에 존재하는지 여부를 나타내는 플래그라고도 해석할 수 있다. 또한, 온/오프 플래그의 값이 1(참)인 경우, 부호화 툴이 사용 가능한 것을 나타낸다. 온/오프 플래그의 값이 0(거짓)인 경우, 부호화 툴이 사용 불가인 것을 나타낸다. 또한, 플래그 값의 해석은 반대여도 된다.
<예측 모드 정보 Pinfo>
예측 모드 정보 Pinfo에는, 예를 들어, 처리 대상 PB(예측 블록)의 사이즈 정보 PBSize(예측 블록 사이즈), 인트라 예측 모드 정보 IPinfo, 움직임 예측 정보 MVinfo 등의 정보가 포함된다.
인트라 예측 모드 정보 IPinfo에는, 예를 들어, JCTVC-W1005, 7.3.8.5 Coding Unit syntax 중의 prev_intra_luma_pred_flag, mpm_idx, rem_intra_pred_mode, 및 그 신택스로부터 도출되는 휘도 인트라 예측 모드 IntraPredModeY 등이 포함될 수 있다.
또한, 인트라 예측 모드 정보 IPinfo에는, 예를 들어, 컴포넌트 간 예측 플래그(ccp_flag(cclmp_flag)), 다클래스 선형 예측 모드 플래그(mclm_flag), 색차 샘플 위치 타입 식별자(chroma_sample_loc_type_idx), 색차 MPM 식별자(chroma_mpm_idx), 및 이들의 신택스로부터 도출되는 휘도 인트라 예측 모드(IntraPredModeC) 등이 포함될 수 있다.
컴포넌트 간 예측 플래그(ccp_flag(cclmp_flag))은 컴포넌트 간 선형 예측을 적용할지 여부를 나타내는 플래그 정보이다. 예를 들어, ccp_flag==1일 때, 컴포넌트 간 예측을 적용하는 것을 나타내고, ccp_flag==0일 때, 컴포넌트 간 예측을 적용하지 않는 것을 나타낸다.
다클래스 선형 예측 모드 플래그(mclm_flag)는, 선형 예측의 모드에 관한 정보(선형 예측 모드 정보)이다. 보다 구체적으로는, 다클래스 선형 예측 모드 플래그(mclm_flag)는, 다클래스 선형 예측 모드로 할지 여부를 나타내는 플래그 정보이다. 예를 들어, 「0」인 경우, 1 클래스 모드(단일 클래스 모드)(예를 들어 CCLMP)인 것을 나타내고, 「1」인 경우, 2 클래스 모드(다클래스 모드)(예를 들어 MCLMP)인 것을 나타낸다.
색차 샘플 위치 타입 식별자(chroma_sample_loc_type_idx)는, 색차 컴포넌트의 화소 위치의 타입(색차 샘플 위치 타입이라고도 칭함)을 식별하는 식별자이다.
또한, 이 색차 샘플 위치 타입 식별자(chroma_sample_loc_type_idx)는, 색차 컴포넌트의 화소 위치에 관한 정보(chroma_sample_loc_info())로서(에 저장되어) 전송된다.
색차 MPM 식별자(chroma_mpm_idx)는, 색차 인트라 예측 모드 후보 리스트(intraPredModeCandListC) 중의 어느 예측 모드 후보를 색차 인트라 예측 모드로서 지정할지를 나타내는 식별자이다.
움직임 예측 정보 MVinfo에는, 예를 들어, merge_idx, merge_flag, inter_pred_idc, ref_idx_LX, mvp_lX_ flag, X={0, 1}, mvd 등의 정보가 포함될 수 있다(예를 들어, JCTVC-W1005, 7.3.8.6 Prediction Unit Syntax를 참조).
물론, 예측 모드 정보 Pinfo에 포함되는 정보는 임의이며, 이들 정보 이외의 정보가 포함되도록 해도 된다.
<변환 정보 Tinfo>
변환 정보 Tinfo에는, 예를 들어, 이하의 정보가 포함될 수 있다.
처리 대상 변환 블록의 가로 폭 사이즈 TBWSize 및 세로 폭 TBHSize: 2를 밑으로 하는 각 TBWSize, TBHSize의 대수값 log2TBWSize, log2TBHSize여도 된다.
변환 스킵 플래그(ts_flag): (역) 프라이머리 변환 및 (역) 세컨더리 변환을 스킵할지 여부를 나타내는 플래그이다.
스캔 식별자(scanIdx)
양자화 파라미터(qp)
양자화 매트릭스(scaling_matrix): 예를 들어, JCTVC-W1005, 7.3.4 Scaling list data syntax
물론, 변환 정보 Tinfo에 포함되는 정보는 임의이며, 이들 정보 이외의 정보가 포함되도록 해도 된다.
<잔차 정보 Rinfo>
잔차 정보 Rinfo(예를 들어, JCTVC-W1005의 7.3.8.11 Residual Coding syntax를 참조)에는, 예를 들어 이하의 정보가 포함될 수 있다.
cbf(coded_block_flag): 잔차 데이터 유무 플래그
last_sig_coeff_x_pos: 라스트 비제로 계수 X 좌표
last_sig_coeff_y_pos: 라스트 비제로 계수 Y 좌표
coded_sub_block_flag: 서브블록 비제로 계수 유무 플래그
sig_coeff_flag: 비제로 계수 유무 플래그
gr1_flag: 비제로 계수의 레벨이(1)보다 큰지를 나타내는 플래그(GR1 플래그라고도 칭함)
gr2_flag: 비제로 계수의 레벨이(2)보다 큰지를 나타내는 플래그(GR2 플래그라고도 칭함)
sign_flag: 비제로 계수의 정부를 나타내는 부호(사인 부호라고도 칭함)
coeff_abs_level_remaining: 비제로 계수의 잔여 레벨(비 제로 계수 잔여 레벨이라고도 칭함)
물론, 잔차 정보 Rinfo에 포함되는 정보는 임의이며, 이들 정보 이외의 정보가 포함되도록 해도 된다.
<필터 정보 Finfo>
필터 정보 Finfo에는, 예를 들어, 이하에 나타내는 각 필터 처리에 관한 제어 정보가 포함될 수 있다.
디블로킹 필터(DBF)에 관한 제어 정보
화소 적응 오프셋(SAO)에 관한 제어 정보
적응 루프 필터(ALF)에 관한 제어 정보
그 외의 선형·비선형 필터에 관한 제어 정보
또한, 예를 들어, 각 필터를 적용하는 픽처나, 픽처 내의 영역을 지정하는 정보나, CU 단위의 필터 온/오프 제어 정보, 슬라이스, 타일의 경계에 관한 필터의 온/오프 제어 정보 등이 포함되어도 된다. 물론, 필터 정보 Finfo에 포함되는 정보는 임의이며, 이들 정보 이외의 정보가 포함되도록 해도 된다.
<축적 버퍼>
축적 버퍼(411)는, 화상 복호 장치(400)에 입력된 비트스트림을 취득하여, 보유(기억)한다. 축적 버퍼(411)는, 소정의 타이밍에 있어서, 또는 소정의 조건이 갖추어지거나 한 경우, 축적하고 있는 비트스트림에 포함되는 부호화 데이터를 추출하여, 복호부(412)에 공급한다.
<복호부>
복호부(412)는, 화상의 복호에 관한 처리를 실행한다. 예를 들어, 복호부(412)는, 축적 버퍼(411)로부터 공급되는 부호화 데이터를 취득하고, 신택스 테이블의 정의에 따라, 그 비트 열로부터, 각 신택스 요소의 신택스 값을 엔트로피 복호(가역 복호)하여, 부호화 파라미터를 도출한다.
이 부호화 파라미터에는, 예를 들어, 헤더 정보 Hinfo, 예측 모드 정보 Pinfo, 변환 정보 Tinfo, 잔차 정보 Rinfo, 필터 정보 Finfo 등의 정보가 포함될 수 있다. 즉, 복호부(412)는, 비트스트림으로부터, 이들 정보를 복호하고, 파싱한다(해석하여 취득함).
복호부(412)는, 제어부(401)의 제어에 따라, 이러한 처리(복호나 파싱 등)를 실행하고, 얻어진 이들 정보를 제어부(401)에 공급한다.
또한, 복호부(412)는, 잔차 정보 Rinfo를 참조하여 부호화 데이터를 복호한다. 그 때, 복호부(412)는, 예를 들어 CABAC나 CAVLC 등의 엔트로피 복호(가역 복호)를 적용한다. 즉, 복호부(412)는, 화상 부호화 장치(300)의 부호화부(314)가 실행하는 부호화 처리의 부호화 방식에 대응하는 복호 방식으로 부호화 데이터를 복호한다.
예를 들어, CABAC를 적용한다고 가정한다. 복호부(412)는, 부호화 데이터에 대하여 컨텍스트 모델을 사용하는 산술 복호를 행하여, 각 변환 블록 내의 각 계수 위치의 양자화 계수 데이터 level을 도출한다. 복호부(412)는, 그 도출한 양자화 계수 데이터 level을 역양자화 역변환부(413)에 공급한다.
<역양자화 역변환부>
역양자화 역변환부(413)는, 역양자화 및 역 계수 변환에 관한 처리를 실행한다. 예를 들어, 역양자화 역변환부(413)는, 복호부(412)로부터 공급되는 양자화 계수 데이터 level을 취득한다. 역양자화 역변환부(413)는, 제어부(401)로부터 공급되는 예측 모드 정보 Pinfo나 변환 정보 Tinfo 등의 부호화 파라미터를 취득한다.
역양자화 역변환부(413)는, 예측 모드 정보 Pinfo나 변환 정보 Tinfo 등의 부호화 파라미터에 기초하여, 양자화 계수 데이터 level에 대하여 역양자화 역변환 처리를 실행하여, 잔차 데이터 D'을 도출한다. 이 역양자화 역변환 처리는, 변환 양자화부(313)에 있어서 실행되는 변환 양자화 처리의 역 처리이다. 즉, 역양자화 역변환 처리에서는, 예를 들어, 역양자화, 역직교 변환, 및 역적응 색변환 등의 처리가 실행된다. 역양자화는, 변환 양자화부(313)에 있어서 실행되는 양자화의 역 처리이다. 역직교 변환은, 변환 양자화부(313)에 있어서 실행되는 직교 변환의 역 처리이다. 역적응 색변환은, 변환 양자화부(313)에 있어서 실행되는 적응 색변환의 역 처리이다. 물론, 역양자화 역변환 처리에 포함되는 처리는 임의이며, 상술한 일부의 처리가 생략되어도 되고, 상술한 이외의 처리가 포함되어 있어도 된다. 역양자화 역변환부(413)는, 도출한 잔차 데이터 D'을 연산부(414)에 공급한다.
<연산부>
연산부(414)는, 화상에 관한 정보의 가산에 관한 처리를 실행한다. 예를 들어, 연산부(414)는, 역양자화 역변환부(413)로부터 공급되는 잔차 데이터 D'과, 예측부(418)로부터 공급되는 예측 화상을 취득한다. 연산부(414)는, 그 잔차 데이터와 그 잔차 데이터에 대응하는 예측 화상(예측 신호)을 가산하여, 국소 복호 화상을 도출한다. 연산부(414)는, 도출한 국소 복호 화상을, 인루프 필터부(415 및 프레임 메모리(417)에 공급한다.
<인루프 필터부>
인루프 필터부(415)는, 인루프 필터 처리에 관한 처리를 실행한다. 예를 들어, 인루프 필터부(415)는, 연산부(414)로부터 공급되는 국소 복호 화상을 취득한다. 인루프 필터부(415)는, 제어부(401)로부터 공급되는 필터 정보 Finfo를 취득한다. 또한, 인루프 필터부(415)에 입력되는 정보는 임의이며, 이들 정보 이외의 정보가 입력되어도 된다.
인루프 필터부(415)는, 그 필터 정보 Finfo에 기초하여, 국소 복호 화상에 대하여 적절히 필터 처리를 실행한다. 예를 들어, 인루프 필터부(415)는, 그 필터 처리로서, 양방향 필터를 적용할 수 있다. 예를 들어, 인루프 필터부(415)는, 그 필터 처리로서, 디블로킹 필터(DBF(DeBlocking Filter))를 적용할 수 있다. 예를 들어, 인루프 필터부(415)는, 그 필터 처리로서, 적응 오프셋 필터(SAO(Sample Adaptive Offset))를 적용할 수 있다. 예를 들어, 인루프 필터부(415)는, 그 필터 처리로서, 적응 루프 필터(ALF(Adaptive Loop Filter))를 적용할 수 있다. 또한, 인루프 필터부(415)는, 필터 처리로서, 이들 중 복수의 필터를 조합하여 적용할 수 있다. 또한, 어느 필터를 적용할지, 어느 순서로 적용할지는 임의이며, 적절히 선택 가능하다. 예를 들어, 인루프 필터부(415)는, 필터 처리로서, 양방향 필터, 디블로킹 필터, 적응 오프셋 필터, 적응 루프 필터의 4개의 인루프 필터를 이 순서로 적용한다.
인루프 필터부(415)는, 부호화 측 장치(예를 들어 화상 부호화 장치(300)의 인루프 필터부(318))에 의해 실행된 필터 처리에 대응하는 필터 처리를 실행한다. 물론, 인루프 필터부(415)가 실행하는 필터 처리는 임의이며, 상술한 예에 한정되지는 않는다. 예를 들어, 인루프 필터부(415)가 위너 필터 등을 적용하도록 해도 된다.
인루프 필터부(415)는, 필터 처리된 국소 복호 화상을 재배열 버퍼(416) 및 프레임 메모리(417)에 공급한다.
<재배열 버퍼>
재배열 버퍼(416)는, 인루프 필터부(415)로부터 공급된 국소 복호 화상을 입력으로 하고, 그것을 보유(기억)한다. 재배열 버퍼(416)는, 그 국소 복호 화상을 사용하여 픽처 단위마다의 복호 화상을 재구축하여, 보유한다(버퍼 내에 저장함). 재배열 버퍼(416)는, 얻어진 복호 화상을, 복호순으로부터 재생순으로 재배열한다. 재배열 버퍼(416)는, 재배열한 복호 화상 군을 동화상 데이터로서 화상 복호 장치(400)의 외부에 출력한다.
<프레임 메모리>
프레임 메모리(417)는, 화상에 관한 데이터의 기억에 관한 처리를 실행한다. 예를 들어, 프레임 메모리(417)는, 연산부(414)로부터 공급되는 국소 복호 화상을 취득하고, 픽처 단위마다의 복호 화상을 재구축하여, 프레임 메모리(417) 내의 버퍼에 저장한다.
또한, 프레임 메모리(417)는, 인루프 필터부(415)로부터 공급되는, 인루프 필터 처리된 국소 복호 화상을 취득하고, 픽처 단위마다의 복호 화상을 재구축하여, 프레임 메모리(417) 내의 버퍼에 저장한다. 프레임 메모리(417)는, 적절히, 그 기억하고 있는 복호 화상(또는 그 일부)을 참조 화상으로서 예측부(418)에 공급한다.
또한, 프레임 메모리(417)가, 복호 화상의 생성에 관한 헤더 정보 Hinfo, 예측 모드 정보 Pinfo, 변환 정보 Tinfo, 필터 정보 Finfo 등을 기억하도록 해도 된다.
<예측부>
예측부(418)는, 예측 화상의 생성에 관한 처리를 실행한다. 예를 들어, 예측부(418)는, 제어부(401)로부터 공급되는 예측 모드 정보 Pinfo를 취득한다. 또한, 예측부(418)는, 프레임 메모리(417)로부터 판독하는 복호 화상(또는 그 일부)을 취득한다. 예측부(418)는, 예측 모드 정보 Pinfo에 기초하여 부호화 시에 채용된 예측 모드에서 예측 처리를 실행하고, 복호 화상을 참조 화상으로서 참조하여 예측 화상을 생성한다. 예측부(418)는, 생성한 예측 화상을 연산부(414)에 공급한다.
<본 기술의 적용>
이상과 같은 구성의 화상 복호 장치(400)에, <1. 양자화 파라미터의 보정>, <2. 제1 실시 형태>, <3. 제2 실시 형태>, <4. 제3 실시 형태>, 및 <5. 제4 실시 형태>에 있어서 상술한 본 기술을 적용할 수 있다.
<복호부>
상술한 바와 같이 복호부(412)는, 비트스트림으로부터, 헤더 정보 Hinfo, 예측 모드 정보 Pinfo, 변환 정보 Tinfo, 잔차 정보 Rinfo, 필터 정보 Finfo 등의 부호화 파라미터를 파싱한다.
따라서, 본 기술을 적용하는 경우, 복호부(412)는, 비트스트림을 복호하고, 부호 측 장치(예를 들어 화상 부호화 장치 300)로부터 공급되는, 양자화 파라미터의 보정에 사용될 파라미터를 파싱한다.
예를 들어, 「방법 1」이 적용되는 경우, 복호부(412)는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx, cu_act_enabled_flag, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx, 컴포넌트 식별자 cIdx에 대응하는 transform_skip_flag[xTbY][yTbY][cIdx], 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin 등의 파라미터를 파싱한다. 또한, 「방법 2」가 적용되는 경우, 복호부(412)는, 「방법 1」이 적용되는 경우에 부호화할 파라미터에 더하여, 비변환 스킵 시의 양자화 파라미터의 최솟값 「0」을 파싱한다. 또한, 「방법 3」 또는 「방법 4」가 적용되는 경우, 복호부(412)는, 「방법 1」이 적용되는 경우에 부호화할 파라미터에 더하여, 비트 심도에 대응하는 보정량 QpBdOffset을 파싱한다.
<제어부>
예를 들어, 상술한 「방법 1」을 적용하는 경우, 제어부(401)는, 복호부(412)로부터, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx를 취득하여, 역양자화 역변환부(413)에 공급한다. 제어부(401)는, 복호부(412)로부터, 적응 색변환에 관한 파라미터로서, cu_act_enabled_flag를 취득하여, 역양자화 역변환부(413)에 공급한다. 제어부(401)는, 복호부(412)로부터, 적응 색변환에 관한 파라미터로서, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 취득하여, 역양자화 역변환부(413)에 공급한다. 제어부(401)는, 복호부(412)로부터, 변환 스킵에 관한 파라미터로서, 컴포넌트 식별자 cIdx에 대응하는 transform_skip_flag[xTbY][yTbY][cIdx]를 취득하여, 역양자화 역변환부(413)에 공급한다. 제어부(401)는, 복호부(412)로부터, 변환 스킵에 관한 파라미터로서, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin을 취득하여, 역양자화 역변환부(413)에 공급한다.
예를 들어, 상술한 「방법 2」를 적용하는 경우, 제어부(401)는, 「방법 1」을 적용하는 경우에 공급할 파라미터를, 역양자화 역변환부(413)에 공급한다. 제어부(401)는, 이들 파라미터에 더하여, 비변환 스킵 시의 양자화 파라미터의 최솟값 「0」을, 변환 스킵에 관한 파라미터로서, 역양자화 역변환부(413)에 공급한다.
예를 들어, 상술한 「방법 3」을 적용하는 경우, 제어부(401)는, 「방법 1」을 적용하는 경우에 공급할 파라미터를, 역양자화 역변환부(413)에 공급한다. 제어부(401)는, 이들 파라미터에 더하여, 비트 심도에 대응하는 보정량 QpBdOffset을, 역양자화 역변환부(413)에 공급한다.
예를 들어, 상술한 「방법 4」를 적용하는 경우, 제어부(401)는, 「방법 3」을 적용하는 경우에 공급할 파라미터를 역양자화 역변환부(413)에 공급한다.
<역양자화 역변환부>
예를 들어, 상술한 「방법 1」을 적용하는 경우, 역양자화 역변환부(413)는, 제어부(401)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx를 취득한다. 또한 역양자화 역변환부(413)는, 적응 색변환에 관한 파라미터로서, 제어부(401)로부터 공급되는 cu_act_enabled_flag를 취득한다. 역양자화 역변환부(413)는, 적응 색변환에 관한 파라미터로서, 제어부(401)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 취득한다. 또한 역양자화 역변환부(413)는, 변환 스킵에 관한 파라미터로서, 제어부(401)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 transform_skip_flag[xTbY][yTbY][cIdx]를 취득한다. 역양자화 역변환부(413)는, 변환 스킵에 관한 파라미터로서, 제어부(401)로부터 공급되는, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin을 취득한다. 역양자화 역변환부(413)는, 취득한 이들 파라미터를 사용하여, 역양자화 역변환 처리를 실행한다.
예를 들어, 상술한 「방법 2」를 적용하는 경우, 역양자화 역변환부(413)는, 제어부(401)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx를 취득한다. 또한 역양자화 역변환부(413)는, 적응 색변환에 관한 파라미터로서, 제어부(401)로부터 공급되는 cu_act_enabled_flag를 취득한다. 역양자화 역변환부(413)는, 적응 색변환에 관한 파라미터로서, 제어부(401)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 취득한다. 또한 역양자화 역변환부(413)는, 변환 스킵에 관한 파라미터로서, 제어부(401)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 transform_skip_flag[xTbY][yTbY][cIdx]를 취득한다. 역양자화 역변환부(413)는, 변환 스킵에 관한 파라미터로서, 제어부(401)로부터 공급되는, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin을 취득한다. 역양자화 역변환부(413)는, 변환 스킵에 관한 파라미터로서, 제어부(401)로부터 공급되는, 비변환 스킵 시의 양자화 파라미터의 최솟값 「0」을 취득한다. 역양자화 역변환부(413)는, 취득한 이들 파라미터를 사용하여, 역양자화 역변환 처리를 실행한다.
예를 들어, 상술한 「방법 3」을 적용하는 경우, 역양자화 역변환부(413)는, 제어부(401)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx를 취득한다. 또한 역양자화 역변환부(413)는, 적응 색변환에 관한 파라미터로서, 제어부(401)로부터 공급되는 cu_act_enabled_flag를 취득한다. 역양자화 역변환부(413)는, 적응 색변환에 관한 파라미터로서, 제어부(401)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 취득한다. 또한 역양자화 역변환부(413)는, 변환 스킵에 관한 파라미터로서, 제어부(401)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 transform_skip_flag[xTbY][yTbY][cIdx]를 취득한다. 역양자화 역변환부(413)는, 변환 스킵에 관한 파라미터로서, 제어부(401)로부터 공급되는, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin을 취득한다. 역양자화 역변환부(413)는, 변환 스킵에 관한 파라미터로서, 제어부(401)로부터 공급되는, 비트 심도에 대응하는 보정량 QpBdOffset을 취득한다. 역양자화 역변환부(413)는, 취득한 이들 파라미터를 사용하여, 역양자화 역변환 처리를 실행한다.
예를 들어, 상술한 「방법 4」를 적용하는 경우, 역양자화 역변환부(413)는, 「방법 3」을 적용하는 경우에 취득하는 것과 동일한 파라미터를 취득한다. 역양자화 역변환부(413)는, 취득한 이들 파라미터를 사용하여, 역양자화 역변환 처리를 실행한다.
<역양자화 역변환부의 구성예>
도 17은 도 16의 역양자화 역변환부(413)의 주된 구성예를 도시하는 블록도이다. 도 17에 도시된 바와 같이, 역양자화 역변환부(413)는, 역양자화부(441), 역직교 변환부(442), 및 역적응 색변환부(443)를 갖는다.
역양자화부(441)는, 역양자화에 관한 처리를 실행한다. 예를 들어, 역양자화부(441)는, 복호부(412)로부터 공급되는 양자화 계수 데이터 qcoeff_x(즉, 도 16의 양자화 계수 데이터 level)를 취득한다. 역양자화부(441)는, 그 양자화 계수 데이터 qcoeff_x를 역양자화하여, 직교 변환 계수 데이터 coef_x를 생성한다. 역양자화부(441)는, 생성한 직교 변환 계수 데이터 coef_x를 역직교 변환부(442)에 공급한다.
역직교 변환부(442)는, 역직교 변환에 관한 처리를 실행한다. 예를 들어, 역직교 변환부(442)는, 역양자화부(441)로부터 공급되는 직교 변환 계수 데이터 coeff_x를 취득한다. 역직교 변환부(442)는, 제어부(401)로부터 공급되는 변환 정보 Tinfo나 예측 모드 정보 Pinfo를 취득한다. 예를 들어, 역직교 변환부(442)는, 변환 정보 Tinfo로서, transform_skip_flag, mts_idx, lfnst_idx 등의 정보를 취득할 수 있다. 역직교 변환부(442)는, 취득한 이들 정보를 사용하여 직교 변환 계수 데이터 coeff_x를 역직교 변환하여, 적응 색변환 계수 데이터 res_x'을 생성한다. 역직교 변환부(442)는, 생성한 적응 색변환 계수 데이터 res_x'을 역적응 색변환부(443)에 공급한다.
역적응 색변환부(443)는, 역적응 색변환에 관한 처리를 실행한다. 예를 들어, 역적응 색변환부(443)는, 역직교 변환부(442)로부터 공급되는 적응 색변환 계수 데이터 res_x'을 취득한다. 역적응 색변환부(443)는, 제어부(401)로부터 공급되는 cu_act_enabled_flag를 취득한다. 역적응 색변환부(443)는, cu_act_enabled_flag의 값에 기초하여, 잔차 데이터 res_x에 대한 적응 색변환을 실행한다. 예를 들어, cu_act_enabled_flag가 참(예를 들어 「1」)인 경우, 역적응 색변환부(443)는, 상술한 식 (2)에 나타내어진 바와 같은 연산을 실행하고, Y, Cg, Co의 컴포넌트로 이루어지는 적응 색변환 계수 데이터 res_x'을 YCgCo-RGB 변환한다. 이 처리에 의해, R, G, B의 컴포넌트로 이루어지는 잔차 데이터 res_x(즉 도 10의 잔차 데이터 D)가 생성된다. 역적응 색변환부(443)는, 생성한 잔차 데이터 res_x를 연산부(414)에 공급한다.
예를 들어, 상술한 「방법 1」을 적용하는 경우, 역양자화부(441)는, 제어부(401)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx를 취득한다. 또한 역양자화부(441)는, 적응 색변환에 관한 파라미터로서, 제어부(401)로부터 공급되는 cu_act_enabled_flag를 취득한다. 역양자화부(441)는, 적응 색변환에 관한 파라미터로서, 제어부(401)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 취득한다. 또한 역양자화부(441)는, 변환 스킵에 관한 파라미터로서, 제어부(401)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 transform_skip_flag[xTbY][yTbY][cIdx]를 취득한다. 역양자화부(441)는, 변환 스킵에 관한 파라미터로서, 제어부(401)로부터 공급되는, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin을 취득한다.
역양자화부(441)는, 취득한 이들 파라미터를 사용하여, 양자화 계수 데이터 qcoef_x를 역양자화하여, 직교 변환 계수 데이터 coeff_x를 생성한다.
예를 들어, 상술한 「방법 2」를 적용하는 경우, 역양자화부(441)는, 역양자화부(441)는, 제어부(401)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx를 취득한다. 또한 역양자화부(441)는, 적응 색변환에 관한 파라미터로서, 제어부(401)로부터 공급되는 cu_act_enabled_flag를 취득한다. 역양자화부(441)는, 적응 색변환에 관한 파라미터로서, 제어부(401)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 취득한다. 또한 역양자화부(441)는, 변환 스킵에 관한 파라미터로서, 제어부(401)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 transform_skip_flag[xTbY][yTbY][cIdx]를 취득한다. 역양자화부(441)는, 변환 스킵에 관한 파라미터로서, 제어부(401)로부터 공급되는, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin을 취득한다. 역양자화부(441)는, 변환 스킵에 관한 파라미터로서, 제어부(401)로부터 공급되는, 비변환 스킵 시의 양자화 파라미터의 최솟값 「0」을 취득한다.
역양자화부(441)는, 취득한 이들 파라미터를 사용하여, 양자화 계수 데이터 qcoef_x를 역양자화하여, 직교 변환 계수 데이터 coeff_x를 생성한다.
예를 들어, 상술한 「방법 3」을 적용하는 경우, 역양자화부(441)는, 역양자화부(441)는, 제어부(401)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx를 취득한다. 또한 역양자화부(441)는, 적응 색변환에 관한 파라미터로서, 제어부(401)로부터 공급되는 cu_act_enabled_flag를 취득한다. 역양자화부(441)는, 적응 색변환에 관한 파라미터로서, 제어부(401)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 취득한다. 또한 역양자화부(441)는, 변환 스킵에 관한 파라미터로서, 제어부(401)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 transform_skip_flag[xTbY][yTbY][cIdx]를 취득한다. 역양자화부(441)는, 변환 스킵에 관한 파라미터로서, 제어부(401)로부터 공급되는, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin을 취득한다. 역양자화부(441)는, 변환 스킵에 관한 파라미터로서, 제어부(401)로부터 공급되는, 비트 심도에 대응하는 보정량 QpBdOffset을 취득한다.
역양자화부(441)는, 취득한 이들 파라미터를 사용하여, 양자화 계수 데이터 qcoef_x를 역양자화하여, 직교 변환 계수 데이터 coeff_x를 생성한다.
예를 들어, 상술한 「방법 4」를 적용하는 경우, 역양자화부(441)는, 「방법 3」을 적용하는 경우에 취득하는 것과 동일한 파라미터를 취득한다. 역양자화부(441)는, 취득한 이들 파라미터를 사용하여, 양자화 계수 데이터 qcoef_x를 역양자화하여, 직교 변환 계수 데이터 coeff_x를 생성한다.
<역양자화부의 구성예>
도 18은 도 17의 역양자화부(441)의 주된 구성예를 도시하는 블록도이다. 도 18에 도시된 바와 같이, 역양자화부(441)는, 양자화 파라미터 보정부(451) 및 역양자화 처리부(452)를 갖는다.
양자화 파라미터 보정부(451)는, 양자화 파라미터의 보정에 관한 처리를 실행한다. 예를 들어, 양자화 파라미터 보정부(451)는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx를 취득한다. 양자화 파라미터 보정부(451)는, 그 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx를 보정하고, 보정 후의 양자화 파라미터인 보정 양자화 파라미터를 역양자화 처리부(452)에 공급한다.
역양자화 처리부(452)는, 역양자화에 관한 처리를 실행한다. 예를 들어, 역양자화 처리부(452)는, 복호부(412)로부터 공급되는 양자화 계수 데이터 qcoef_x를 취득한다. 역양자화 처리부(452)는, 양자화 파라미터 보정부(451)로부터 공급되는 보정 양자화 파라미터를 취득한다. 역양자화 처리부(452)는, 그 보정 양자화 파라미터를 사용하여 양자화 계수 데이터 qcoef_x를 역양자화하여, 직교 변환 계수 데이터 coef_x를 생성한다. 역양자화 처리부(452)는, 생성한 직교 변환 계수 데이터 coef_x를 역직교 변환부(442)에 공급한다.
이상과 같은 구성의 역양자화부(441)에 있어서 본 기술을 적용하는 경우, 양자화 파라미터 보정부(451)는, 양자화 파라미터를, 적응 색변환에 관한 파라미터에 기초하여 보정하고, 또한, 변환 스킵에 관한 파라미터에 기초하여 보정한다. 역양자화 처리부(452)는, 양자화 파라미터 보정부(451)에 의해 보정된 양자화 파라미터인 보정 양자화 파라미터를 사용하여, 화상의 계수 데이터가 양자화된 양자화 계수 데이터를 역양자화한다.
예를 들어, 상술한 「방법 1」을 적용하는 경우, 양자화 파라미터 보정부(451)로서 양자화 파라미터 보정 장치(100)(도 2)를 적용한다. 즉, 양자화 파라미터 보정부(451)는, 제어부(401)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx를 취득한다. 또한, 양자화 파라미터 보정부(451)는, 적응 색변환에 관한 파라미터로서, 제어부(401)로부터 공급되는 cu_act_enabled_flag를 취득한다. 양자화 파라미터 보정부(451)는, 적응 색변환에 관한 파라미터로서, 제어부(401)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 취득한다. 양자화 파라미터 보정부(451)는, 변환 스킵에 관한 파라미터로서, 제어부(401)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 transform_skip_flag[xTbY][yTbY][cIdx]를 취득한다. 양자화 파라미터 보정부(451)는, 변환 스킵에 관한 파라미터로서, 제어부(401)로부터 공급되는, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin을 취득한다.
양자화 파라미터 보정부(451)는, 그 cu_act_enabled_flag, dqPx, transform_skip_flag[xTbY][yTbY][cIdx], 및 QpPrimeTsMin을 사용하여, 제1 실시 형태에 있어서 설명한 바와 같은 방법으로, qPx를 보정한다. 즉, 양자화 파라미터 보정부(451)는, 식 (5) 또는 식 (6)과 같은 연산을 실행하여, 제2 보정 양자화 파라미터 qP''을 생성한다. 양자화 파라미터 보정부(451)는, 생성한 제2 보정 양자화 파라미터 qP''을, 역양자화 처리부(452)에 공급한다.
이렇게 함으로써, 양자화 파라미터 보정부(451)는, 적응 색변환 및 변환 스킵이 적용되는 경우에, 역양자화에 있어서 양자화 스텝 사이즈 Δ<1이 되지 않도록, 양자화 파라미터를 보정할 수 있다. 따라서, 역양자화 처리부(452)가 이와 같이 보정된 양자화 파라미터를 사용하여 양자화 계수 데이터를 역양자화함으로써, 역양자화부(441)(역양자화 역변환부(413))는, PSNR의 저감을 억제할 수 있다. 따라서, 화상 복호 장치(400)는 부호화 효율의 저감을 억제할 수 있다.
예를 들어, 상술한 「방법 2」를 적용하는 경우, 양자화 파라미터 보정부(451)로서 양자화 파라미터 보정 장치(100)(도 2)를 적용한다. 즉, 양자화 파라미터 보정부(451)는, 제어부(401)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx를 취득한다. 또한, 양자화 파라미터 보정부(451)는, 적응 색변환에 관한 파라미터로서, 제어부(401)로부터 공급되는 cu_act_enabled_flag를 취득한다. 양자화 파라미터 보정부(451)는, 적응 색변환에 관한 파라미터로서, 제어부(401)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 취득한다. 양자화 파라미터 보정부(451)는, 변환 스킵에 관한 파라미터로서, 제어부(401)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 transform_skip_flag[xTbY][yTbY][cIdx]를 취득한다. 양자화 파라미터 보정부(451)는, 변환 스킵에 관한 파라미터로서, 제어부(401)로부터 공급되는, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin을 취득한다. 양자화 파라미터 보정부(451)는, 변환 스킵에 관한 파라미터로서, 제어부(401)로부터 공급되는, 비변환 스킵 시의 양자화 파라미터의 최솟값 「0」을 취득한다.
양자화 파라미터 보정부(451)는, 그 cu_act_enabled_flag, dqPx, transform_skip_flag[xTbY][yTbY][cIdx], QpPrimeTsMin, 및 값 「0」을 사용하여, 제2 실시 형태에 있어서 설명한 바와 같은 방법으로, qPx를 보정한다. 즉, 양자화 파라미터 보정부(451)는, 식 (5) 또는 식 (13)과 같은 연산을 실행하여, 제2 보정 양자화 파라미터 qP''을 생성한다. 양자화 파라미터 보정부(451)는, 생성한 제2 보정 양자화 파라미터 qP''을, 역양자화 처리부(452)에 공급한다.
이렇게 함으로써, 양자화 파라미터 보정부(451)는, 변환 스킵이 적용되는지 여부에 관계없이, 적응 색변환이 적용되는 경우에, 역양자화에 있어서 양자화 스텝 사이즈 Δ<1이 되지 않도록, 양자화 파라미터를 보정할 수 있다. 따라서, 역양자화 처리부(452)가 이와 같이 보정된 양자화 파라미터를 사용하여 양자화 계수 데이터를 역양자화함으로써, 역양자화부(441)(역양자화 역변환부(413))는, PSNR의 저감을 억제할 수 있다. 따라서, 화상 복호 장치(400)는 부호화 효율의 저감을 억제할 수 있다.
예를 들어, 상술한 「방법 3」을 적용하는 경우, 양자화 파라미터 보정부(451)로서 양자화 파라미터 보정 장치(100)(도 2)를 적용한다. 즉, 양자화 파라미터 보정부(451)는, 제어부(401)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx를 취득한다. 또한, 양자화 파라미터 보정부(451)는, 적응 색변환에 관한 파라미터로서, 제어부(401)로부터 공급되는 cu_act_enabled_flag를 취득한다. 양자화 파라미터 보정부(451)는, 적응 색변환에 관한 파라미터로서, 제어부(401)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx를 취득한다. 양자화 파라미터 보정부(451)는, 변환 스킵에 관한 파라미터로서, 제어부(401)로부터 공급되는, 컴포넌트 식별자 cIdx에 대응하는 transform_skip_flag[xTbY][yTbY][cIdx]를 취득한다. 양자화 파라미터 보정부(451)는, 변환 스킵에 관한 파라미터로서, 제어부(401)로부터 공급되는, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin을 취득한다. 양자화 파라미터 보정부(451)는, 변환 스킵에 관한 파라미터로서, 제어부(401)로부터 공급되는, 비트 심도에 대응하는 보정량 QpBdOffset을 취득한다.
양자화 파라미터 보정부(451)는, 그 cu_act_enabled_flag, dqPx, transform_skip_flag[xTbY][yTbY][cIdx], QpPrimeTsMin, 및 QpBdOffset을 사용하여, 제2 실시 형태에 있어서 설명한 바와 같은 방법으로, qPx를 보정한다. 즉, 양자화 파라미터 보정부(451)는, 식 (16) 또는 식 (17)과 같은 연산을 실행하여, 제3 보정 양자화 파라미터 qP'''을 생성한다. 양자화 파라미터 보정부(451)는, 생성한 제3 보정 양자화 파라미터 qP'''을, 역양자화 처리부(452)에 공급한다.
이렇게 함으로써, 변환 스킵이 적용되는지 여부에 관계없이, 보정 후의 양자화 파라미터의 값은, 양자화 파라미터의 최솟값 내지 최댓값의 범위 내에 속한다. 또한, 변환 스킵의 경우, 추가로, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin에 의해 양자화 파라미터의 하한이 클립된다. 즉, 양자화 파라미터 보정부(451)는, 변환 스킵이 적용되는지 여부에 관계없이, 적응 색변환이 적용되는 경우에, 역양자화에 있어서 양자화 스텝 사이즈 Δ<1이 되지 않도록, 양자화 파라미터를 보정할 수 있다. 따라서, 역양자화 처리부(452)가 이와 같이 보정된 양자화 파라미터를 사용하여 양자화 계수 데이터를 역양자화함으로써, 역양자화부(441)(역양자화 역변환부(413))는, PSNR의 저감을 억제할 수 있다. 따라서, 화상 복호 장치(400)는 부호화 효율의 저감을 억제할 수 있다.
예를 들어, 상술한 「방법 4」를 적용하는 경우, 양자화 파라미터 보정부(451)로서 양자화 파라미터 보정 장치(160)(도 8)를 적용한다. 즉, 양자화 파라미터 보정부(451)는, 「방법 3」의 경우와 마찬가지의 파라미터를 취득한다.
양자화 파라미터 보정부(451)는, 이들 파라미터(cu_act_enabled_flag, dqPx, transform_skip_flag[xTbY][yTbY][cIdx], QpPrimeTsMin, 및 QpBdOffset)를 사용하여, 제4 실시 형태에 있어서 설명한 바와 같은 방법으로, qPx를 보정한다. 즉, 양자화 파라미터 보정부(451)는, 식 (18) 또는 식 (17)과 같은 연산을 실행하여, 제2 보정 양자화 파라미터 qP''을 생성한다. 양자화 파라미터 보정부(451)는, 생성한 제2 보정 양자화 파라미터 qP''을, 역양자화 처리부(452)에 공급한다.
즉, 방법 4의 경우, 실질적으로 방법 3의 경우와 동등한 연산이 실행되어, 동등한 보정 결과가 얻어진다. 따라서, 이 경우에도, 방법 3의 경우와 마찬가지로, 양자화 파라미터 보정부(451)는, 변환 스킵이 적용되는지 여부에 관계없이, 적응 색변환이 적용되는 경우에, 역양자화에 있어서 양자화 스텝 사이즈 Δ<1이 되지 않도록, 양자화 파라미터를 보정할 수 있다. 따라서, 역양자화 처리부(452)가 이와 같이 보정된 양자화 파라미터를 사용하여 양자화 계수 데이터를 역양자화함으로써, 역양자화부(441)(역양자화 역변환부(413))는, PSNR의 저감을 억제할 수 있다. 따라서, 화상 복호 장치(400)는 부호화 효율의 저감을 억제할 수 있다.
본 실시 형태에 있어서 설명한 역양자화 역변환부(413)에 대한 설명은, 화상 부호화 장치(300)의 역양자화 역변환부(316)에도 적용할 수 있다. 단, 그 경우, 부호화 파라미터의 공급원은 제어부(301)이다. 또한, 양자화 계수 데이터의 공급원은 변환 양자화부(313)이다. 또한, 잔차 데이터 D'의 공급처는 연산부(317)이다.
<화상 복호 처리의 흐름>
다음으로, 이상과 같은 화상 복호 장치(400)에 의해 실행되는 각 처리의 흐름에 대하여 설명한다. 먼저, 도 19의 흐름도를 참조하여, 화상 복호 처리의 흐름의 예를 설명한다.
화상 복호 처리가 개시되면, 축적 버퍼(411)는, 스텝 S401에 있어서, 화상 복호 장치(400)의 외부로부터 공급되는 비트스트림(부호화 데이터)을 취득하여 보유한다(축적함).
스텝 S402에 있어서, 복호부(412)는, 복호 처리를 실행한다. 예를 들어, 복호부(412)는, 그 비트스트림으로부터 각종 부호화 파라미터(예를 들어, 헤더 정보 Hinfo, 예측 모드 정보 Pinfo, 변환 정보 Tinfo 등)를 파싱한다(해석하여 취득함). 제어부(401)는, 그 취득한 각종 부호화 파라미터를 각종 처리부에 공급함으로써, 그 각종 부호화 파라미터를 설정한다.
또한, 제어부(401)는, 얻어진 부호화 파라미터에 기초하여, 처리 단위를 설정한다. 또한, 복호부(412)는, 제어부(401)의 제어에 따라, 비트스트림을 복호하여, 양자화 계수 데이터 level을 얻는다.
스텝 S403에 있어서, 역양자화 역변환부(413)는, 역양자화 역변환 처리를 실행하여, 잔차 데이터 D'을 생성한다. 역양자화 역변환 처리에 대해서는 후술한다.
스텝 S404에 있어서, 예측부(418)는, 예측 화상을 생성한다. 예를 들어, 예측부(418)는, 스텝 S402에 있어서 설정된 부호화 파라미터 등에 기초하여, 부호화 측에 의해 지정되는 예측 방법으로 예측 처리를 실행하고, 프레임 메모리(417)에 기억되어 있는 참조 화상을 참조하거나 하여, 예측 화상 P를 생성한다.
스텝 S405에 있어서, 연산부(414)는, 스텝 S403에 있어서 얻어진 잔차 데이터 D'과, 스텝 S404에 있어서 얻어진 예측 화상 P를 가산하여, 국소 복호 화상 Rlocal을 도출한다.
스텝 S406에 있어서, 인루프 필터부(415)는, 스텝 S405의 처리에 의해 얻어진 국소 복호 화상 Rlocal에 대하여, 인루프 필터 처리를 실행한다.
스텝 S407에 있어서, 재배열 버퍼(416)는, 스텝 S406의 처리에 의해 필터 처리된 국소 복호 화상 Rlocal을 사용하여 복호 화상 R을 도출하고, 그 복호 화상 R군의 순서를 복호순으로부터 재생순으로 재배열한다. 재생순으로 재배열된 복호 화상 R군은, 동화상으로서 화상 복호 장치(400)의 외부에 출력된다.
또한, 스텝 S408에 있어서, 프레임 메모리(417)는, 스텝 S405의 처리에 의해 얻어진 국소 복호 화상 Rlocal, 및 스텝 S406의 처리에 의해 필터 처리된 국소 복호 화상 Rlocal 중, 적어도 한쪽을 기억한다.
스텝 S408의 처리가 종료되면, 화상 복호 처리가 종료된다.
<역양자화 역변환 처리의 흐름>
다음으로, 도 20의 흐름도를 참조하여, 도 19의 스텝 S403에 있어서 실행되는 역양자화 역변환 처리의 흐름의 예를 설명한다.
역양자화 역변환 처리가 개시되면, 역양자화부(441)는, 스텝 S441에 있어서, 스텝 S402(도 19)에 있어서 설정된 변환 정보 Tinfo 등을 사용하여, 양자화 계수 데이터 qcoef_x를 역양자화하여, 직교 변환 계수 데이터 coef_x를 생성한다. 이 양자화 계수 데이터 qcoef_x는, 도 19의 스텝 S402의 처리에 있어서 생성된 양자화 계수 데이터 level에 대응한다.
스텝 S442에 있어서, 역직교 변환부(442)는, 스텝 S402(도 19)에 있어서 설정된 변환 정보 Tinfo 등을 사용하여, 스텝 S441에 있어서 생성된 직교 변환 계수 데이터 coef_x를 역직교 변환하여, 적응 색변환 계수 데이터 res_x'을 생성한다.
스텝 S443에 있어서, 역적응 색변환부(443)는, 스텝 S402(도 19)에 있어서 설정된 cu_act_enabled_flag에 기초하여, 스텝 S442에 있어서 생성된 적응 색변환 계수 데이터 res_x'을 역적응 색변환하여, 잔차 데이터 res_x(잔차 데이터 D')를 생성한다.
스텝 S443의 처리가 종료되면 역양자화 역변환 처리가 종료되고, 처리는 도 19로 되돌아간다.
<양자화 처리의 흐름>
다음으로, 도 21의 흐름도를 참조하여, 도 20의 스텝 S441에 있어서 실행되는 역양자화 처리의 흐름의 예를 설명한다.
역양자화 처리가 개시되면, 양자화 파라미터 보정부(451)는, 스텝 S451에 있어서, 양자화 파라미터 보정 처리를 실행하여, 양자화 파라미터를 보정하여, 보정 양자화 파라미터를 생성한다.
스텝 S452에 있어서, 역양자화 처리부(452)는, 스텝 S451에 있어서 생성된 보정 양자화 파라미터를 사용하여, 양자화 계수 데이터 qcoef_x를 역양자화하여, 직교 변환 계수 데이터 coef_x를 생성한다.
스텝 S452의 처리가 종료되면, 역양자화 처리가 종료되고, 처리는 도 20으로 되돌아간다.
이러한 역양자화 처리에 있어서, <1. 양자화 파라미터의 보정>, <2. 제1 실시 형태>, <3. 제2 실시 형태>, <4. 제3 실시 형태>, 및 <5. 제4 실시 형태>에 있어서 상술한 본 기술을 적용할 수 있다.
즉, 이상과 같은 역양자화 처리에 있어서 본 기술을 적용하는 경우, 스텝 S451에 있어서, 양자화 파라미터 보정부(451)는, 양자화 파라미터를, 적응 색변환에 관한 파라미터에 기초하여 보정하고, 또한, 변환 스킵에 관한 파라미터에 기초하여 보정한다. 스텝 S452에 있어서, 역양자화 처리부(452)는, 그 보정된 양자화 파라미터인 보정 양자화 파라미터를 사용하여, 화상의 계수 데이터가 양자화된 양자화 계수 데이터를 역양자화한다.
예를 들어, 상술한 「방법 1」을 적용하는 경우, 양자화 파라미터 보정부(451)는, 스텝 S351의 양자화 파라미터 보정 처리로서, 도 3의 흐름도를 참조하여 설명한 양자화 파라미터 보정 처리를 적용한다. 즉, 양자화 파라미터 보정부(451)는, 식 (5) 또는 식 (6)과 같은 연산을 실행하여, 제2 보정 양자화 파라미터 qP''을 생성한다.
이렇게 함으로써, 양자화 파라미터 보정부(451)는, 적응 색변환 및 변환 스킵이 적용되는 경우에, 역양자화에 있어서 양자화 스텝 사이즈 Δ<1이 되지 않도록, 양자화 파라미터를 보정할 수 있다. 따라서, 역양자화 처리부(452)가 이와 같이 보정된 양자화 파라미터를 사용하여 양자화 계수 데이터를 역양자화함으로써, 역양자화부(441)(역양자화 역변환부(413))는, PSNR의 저감을 억제할 수 있다. 따라서, 화상 복호 장치(400)는 부호화 효율의 저감을 억제할 수 있다.
예를 들어, 상술한 「방법 2」를 적용하는 경우, 양자화 파라미터 보정부(451)는, 스텝 S351의 양자화 파라미터 보정 처리로서, 도 5의 흐름도를 참조하여 설명한 양자화 파라미터 보정 처리를 적용한다. 즉, 양자화 파라미터 보정부(451)는, 식 (5) 또는 식 (13)과 같은 연산을 실행하여, 제2 보정 양자화 파라미터 qP''을 생성한다.
이렇게 함으로써, 양자화 파라미터 보정부(451)는, 변환 스킵이 적용되는지 여부에 관계없이, 적응 색변환이 적용되는 경우에, 역양자화에 있어서 양자화 스텝 사이즈 Δ<1이 되지 않도록, 양자화 파라미터를 보정할 수 있다. 따라서, 역양자화 처리부(452)가 이와 같이 보정된 양자화 파라미터를 사용하여 양자화 계수 데이터를 역양자화함으로써, 역양자화부(441)(역양자화 역변환부(413))는, PSNR의 저감을 억제할 수 있다. 따라서, 화상 복호 장치(400)는 부호화 효율의 저감을 억제할 수 있다.
예를 들어, 상술한 「방법 3」을 적용하는 경우, 양자화 파라미터 보정부(451)는, 스텝 S351의 양자화 파라미터 보정 처리로서, 도 7의 흐름도를 참조하여 설명한 양자화 파라미터 보정 처리를 적용한다. 즉, 양자화 파라미터 보정부(451)는, 식 (16) 또는 식 (17)과 같은 연산을 실행하여, 제3 보정 양자화 파라미터 qP'''을 생성한다.
이렇게 함으로써, 변환 스킵이 적용되는지 여부에 관계없이, 보정 후의 양자화 파라미터의 값은, 양자화 파라미터의 최솟값 내지 최댓값의 범위 내에 속한다. 또한, 변환 스킵의 경우, 추가로, 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin에 의해 양자화 파라미터의 하한이 클립된다. 즉, 양자화 파라미터 보정부(451)는, 변환 스킵이 적용되는지 여부에 관계없이, 적응 색변환이 적용되는 경우에, 역양자화에 있어서 양자화 스텝 사이즈 Δ<1이 되지 않도록, 양자화 파라미터를 보정할 수 있다. 따라서, 역양자화 처리부(452)가 이와 같이 보정된 양자화 파라미터를 사용하여 양자화 계수 데이터를 역양자화함으로써, 역양자화부(441)(역양자화 역변환부(413))는, PSNR의 저감을 억제할 수 있다. 따라서, 화상 복호 장치(400)는 부호화 효율의 저감을 억제할 수 있다.
예를 들어, 상술한 「방법 4」를 적용하는 경우, 양자화 파라미터 보정부(451)는, 스텝 S351의 양자화 파라미터 보정 처리로서, 도 9의 흐름도를 참조하여 설명한 양자화 파라미터 보정 처리를 적용한다. 즉, 양자화 파라미터 보정부(451)는, 식 (18) 또는 식 (17)과 같은 연산을 실행하여, 제2 보정 양자화 파라미터 qP''을 생성한다.
즉, 방법 4의 경우, 실질적으로 방법 3의 경우와 동등한 연산이 행해져, 동등한 보정 결과가 얻어진다. 따라서, 이 경우에도, 방법 3의 경우와 마찬가지로, 변환 스킵이 적용되는지 여부에 관계없이, 적응 색변환이 적용되는 경우에, 역양자화에 있어서 양자화 스텝 사이즈 Δ<1이 되지 않도록, 양자화 파라미터를 보정할 수 있다. 따라서, 역양자화 처리부(452)가 이와 같이 보정된 양자화 파라미터를 사용하여 양자화 계수 데이터를 역양자화함으로써, 역양자화부(441)(역양자화 역변환부(413))는, PSNR의 저감을 억제할 수 있다. 따라서, 화상 복호 장치(400)는 부호화 효율의 저감을 억제할 수 있다.
<복호>
또한, 도 19의 스텝 S402에 있어서, 복호부(412)가, 각종 부호화 파라미터(헤더 정보 Hinfo, 예측 모드 정보 Pinfo, 변환 정보 Tinfo)를 복호한다. 따라서, 본 기술을 적용하는 경우, 복호부(412)는, 양자화 파라미터의 보정에 적용될 상술한 각종 파라미터를 복호한다. 예를 들어, 「방법 1」이 적용되는 경우, 복호부(412)는, 컴포넌트 식별자 cIdx에 대응하는 CU 레벨의 양자화 파라미터 qPx, cu_act_enabled_flag, 컴포넌트 식별자 cIdx에 대응하는 보정량 dqPx, 컴포넌트 식별자 cIdx에 대응하는 transform_skip_flag[xTbY][yTbY][cIdx], 변환 스킵 시의 양자화 파라미터의 최솟값 QpPrimeTsMin 등의 파라미터를 복호한다. 또한, 「방법 2」가 적용되는 경우, 부호화부(314)는, 「방법 1」이 적용되는 경우에 부호화할 파라미터에 더하여, 비변환 스킵 시의 양자화 파라미터의 최솟값 「0」을 복호한다. 또한, 「방법 3」 또는 「방법 4」가 적용되는 경우, 부호화부(314)는, 「방법 1」이 적용되는 경우에 부호화할 파라미터에 더하여, 비트 심도에 대응하는 보정량 QpBdOffset을 복호한다.
이렇게 함으로써, 화상 복호 장치(400)는 시그널링된 이들 정보를 얻을 수 있다. 따라서, 화상 복호 장치(400)는 PSNR의 저감을 억제할 수 있다. 따라서, 화상 복호 장치(400)는 부호화 효율의 저감의 억제를 실현할 수 있다.
본 실시 형태에 있어서 설명한 역양자화 역변환 처리(도 19의 스텝 S403, 도 20)에 대한 설명은, 화상 부호화 처리(도 13)에 있어서 실행되는 역양자화 역변환 처리(스텝 S307)에도 적용할 수 있다.
<8. 부기>
<컴퓨터>
상술한 일련의 처리는, 하드웨어에 의해 실행시킬 수도 있고, 소프트웨어에 의해 실행시킬 수도 있다. 일련의 처리를 소프트웨어에 의해 실행하는 경우에는, 그 소프트웨어를 구성하는 프로그램이, 컴퓨터에 인스톨된다. 여기서 컴퓨터에는, 전용의 하드웨어에 내장되어 있는 컴퓨터나, 각종 프로그램을 인스톨함으로써, 각종 기능을 실행하는 것이 가능한, 예를 들어 범용의 퍼스널 컴퓨터 등이 포함된다.
도 22는 상술한 일련의 처리를 프로그램에 의해 실행하는 컴퓨터의 하드웨어의 구성예를 도시하는 블록도이다.
도 22에 도시된 컴퓨터(800)에 있어서, CPU(Central Processing Unit)(801), ROM(Read Only Memory)(802), RAM(Random Access Memory)(803)은, 버스(804)를 통해 서로 접속되어 있다.
버스(804)에는 또한, 입출력 인터페이스(810)도 접속되어 있다. 입출력 인터페이스(810)에는, 입력부(811), 출력부(812), 기억부(813), 통신부(814), 및 드라이브(815)가 접속되어 있다.
입력부(811)는, 예를 들어, 키보드, 마우스, 마이크로폰, 터치 패널, 입력 단자 등으로 이루어진다. 출력부(812)는, 예를 들어, 디스플레이, 스피커, 출력 단자 등으로 이루어진다. 기억부(813)는, 예를 들어, 하드 디스크, RAM 디스크, 불휘발성의 메모리 등으로 이루어진다. 통신부(814)는, 예를 들어, 네트워크 인터페이스로 이루어진다. 드라이브(815)는 자기 디스크, 광 디스크, 광자기 디스크, 또는 반도체 메모리 등의 리무버블 미디어(821)를 구동한다.
이상과 같이 구성되는 컴퓨터에서는, CPU(801)가, 예를 들어 기억부(813)에 기억되어 있는 프로그램을, 입출력 인터페이스(810) 및 버스(804)를 통해, RAM(803)에 로드하여 실행함으로써, 상술한 일련의 처리가 실행된다. RAM(803)에는 또한, CPU(801)가 각종 처리를 실행함에 있어서 필요한 데이터 등도 적절히 기억된다.
컴퓨터가 실행하는 프로그램은, 예를 들어, 패키지 미디어 등으로서의 리무버블 미디어(821)에 기록하여 적용할 수 있다. 그 경우, 프로그램은, 리무버블 미디어(821)를 드라이브(815)에 장착함으로써, 입출력 인터페이스(810)를 통해, 기억부(813)에 인스톨할 수 있다.
또한, 이 프로그램은, 로컬 에어리어 네트워크, 인터넷, 디지털 위성 방송과 같은, 유선 또는 무선의 전송 매체를 통해 제공할 수도 있다. 그 경우, 프로그램은, 통신부(814)에 의해 수신하여, 기억부(813)에 인스톨할 수 있다.
그 밖에, 이 프로그램은, ROM802이나 기억부(813)에, 미리 인스톨해 둘 수도 있다.
<본 기술의 적용 대상>
본 기술은, 임의의 화상 부호화 방식이나 복호 방식에 적용할 수 있다. 즉, 상술한 본 기술과 모순되지 않는 한, 변환(역변환), 양자화(역양자화), 부호화(복호), 예측 등, 화상 부호화·복호에 관한 각종 처리의 사양은 임의이며, 상술한 예에 한정되지는 않는다. 또한, 상술한 본 기술과 모순되지 않는 한, 이들의 처리 중 일부를 생략해도 된다.
또한 본 기술은, 복수의 시점(뷰(view))의 화상을 포함하는 다시점 화상을 부호화하는 다시점 화상 부호화 시스템에 적용할 수 있다. 또한 본 기술은, 복수의 시점(뷰(view))의 화상을 포함하는 다시점 화상의 부호화 데이터를 복호하는 다시점 화상 복호 시스템에 적용할 수 있다. 그 경우, 각 시점(뷰(view))의 부호화나 복호에 있어서, 본 기술을 적용하도록 하면 된다.
또한 본 기술은, 소정의 파라미터에 대하여 스케일러빌리티(scalability) 기능을 갖도록 복수 레이어화(계층화)된 계층 화상을 부호화하는 계층 화상 부호화(스케일러블 부호화) 시스템에 적용할 수 있다. 또한, 본 기술은, 소정의 파라미터에 대하여 스케일러빌리티(scalability) 기능을 갖도록 복수 레이어화(계층화)된 계층 화상의 부호화 데이터를 복호하는 계층 화상 복호(스케일러블 복호) 시스템에 적용할 수 있다. 그 경우, 각 계층(레이어)의 부호화나 복호에 있어서, 본 기술을 적용하도록 하면 된다.
또한, 이상에서는, 본 기술의 적용예로서, 양자화 파라미터 보정 장치(100), 양자화 파라미터 보정 장치(120), 양자화 파라미터 보정 장치(140), 양자화 파라미터 보정 장치(160), 화상 부호화 장치(300), 및 화상 복호 장치(400)에 대하여 설명했지만, 본 기술은, 임의의 구성에 적용할 수 있다.
예를 들어, 본 기술은, 위성 방송, 케이블 TV 등의 유선 방송, 인터넷 상에서의 배신 및 셀룰러 통신에 의한 단말기에 대한 배신 등에 있어서의 송신기나 수신기(예를 들어 텔레비전 수상기나 휴대 전화기), 또는 광 디스크, 자기 디스크 및 플래시 메모리 등의 매체에 화상을 기록하거나, 이들 기억 매체로부터 화상을 재생하거나 하는 장치(예를 들어 하드 디스크 레코더나 카메라) 등의, 다양한 전자 기기에 응용될 수 있다.
또한, 예를 들어, 본 기술은, 시스템 LSI(Large Scale Integration) 등으로서의 프로세서(예를 들어 비디오 프로세서), 복수의 프로세서 등을 사용하는 모듈(예를 들어 비디오 모듈), 복수의 모듈 등을 사용하는 유닛(예를 들어 비디오 유닛), 또는 유닛에 또한 그 외의 기능을 부가한 세트(예를 들어 비디오 세트) 등, 장치의 일부의 구성으로서 실시할 수도 있다.
또한, 예를 들어, 본 기술은, 복수의 장치에 의해 구성되는 네트워크 시스템에도 적용할 수도 있다. 예를 들어, 본 기술을, 네트워크를 통하여 복수의 장치에서 분담, 공동으로 처리하는 클라우드 컴퓨팅으로서 실시하도록 해도 된다. 예를 들어, 컴퓨터, AV(Audio Visual) 기기, 휴대형 정보 처리 단말기, IoT(Internet of Things) 디바이스 등의 임의의 단말기에 대하여, 화상(동화상)에 관한 서비스를 제공하는 클라우드 서비스에 있어서 본 기술을 실시하도록 해도 된다.
또한, 본 명세서에 있어서, 시스템이란, 복수의 구성 요소(장치, 모듈(부품) 등)의 집합을 의미하고, 모든 구성 요소가 동일 하우징 내에 있는지 여부는 따지지 않는다. 따라서, 별개의 하우징에 수납되고, 네트워크를 통하여 접속되어 있는 복수의 장치, 및 하나의 하우징 내에 복수의 모듈이 수납되어 있는 하나의 장치는, 모두 시스템이다.
<본 기술을 적용할 수 있는 분야나 용도>
본 기술을 적용한 시스템, 장치, 처리부 등은, 예를 들어 교통, 의료, 방범, 농업, 축산업, 광업, 미용, 공장, 가전, 기상, 자연 감시 등, 임의의 분야에 이용할 수 있다. 또한, 그 용도도 임의이다.
예를 들어, 본 기술은, 관상용 콘텐츠 등의 제공용으로 제공되는 시스템이나 디바이스에 적용할 수 있다. 또한, 예를 들어, 본 기술은, 교통 상황의 감리나 자동 운전 제어 등, 교통용으로 제공되는 시스템이나 디바이스에도 적용할 수 있다. 또한, 예를 들어, 본 기술은, 시큐리티용으로 제공되는 시스템이나 디바이스에도 적용할 수 있다. 또한, 예를 들어, 본 기술은, 기계 등의 자동 제어용으로 제공되는 시스템이나 디바이스에 적용할 수 있다. 또한, 예를 들어, 본 기술은, 농업이나 축산업용으로 제공되는 시스템이나 디바이스에도 적용할 수 있다. 또한, 본 기술은, 예를 들어 화산, 삼림, 해양 등의 자연의 상태나 야생 생물 등을 감시하는 시스템이나 디바이스에도 적용할 수 있다. 또한, 예를 들어, 본 기술은, 스포츠용으로 제공되는 시스템이나 디바이스에도 적용할 수 있다.
<기타>
또한, 본 명세서에 있어서 「플래그」란, 복수의 상태를 식별하기 위한 정보이며, 참(1) 또는 거짓(0)의 2가지의 상태를 식별할 때 사용하는 정보뿐만 아니라, 3개 이상의 상태를 식별하는 것이 가능한 정보도 포함된다. 따라서, 이 「플래그」가 취할 수 있는 값은, 예를 들어 1/0의 2개의 값이어도 되고, 3개의 값 이상이어도 된다. 즉, 이 「플래그」를 구성하는 bit 수는 임의이며, 1bit여도 되고 복수 bit여도 된다. 또한, 식별 정보(플래그도 포함함)는, 그 식별 정보를 비트스트림에 포함시키는 형태뿐만 아니라, 어떤 기준이 되는 정보에 대한 식별 정보의 차분 정보를 비트스트림에 포함시키는 형태도 상정되기 때문에, 본 명세서에 있어서는, 「플래그」나 「식별 정보」는, 그 정보뿐만 아니라, 기준이 되는 정보에 대한 차분 정보도 포함한다.
또한, 부호화 데이터(비트스트림)에 관한 각종 정보(메타데이터 등)는, 부호화 데이터에 연관지어져 있으면, 어떠한 형태로 전송 또는 기록되도록 해도 된다. 여기서, 「연관짓는다」라는 용어는, 예를 들어 한쪽의 데이터를 처리할 때 다른 쪽의 데이터를 이용할 수 있도록(링크시킬 수 있도록) 하는 것을 의미한다. 즉, 서로 연관지어진 데이터는, 하나의 데이터로서 통합되어도 되고, 각각 개별의 데이터로 해도 된다. 예를 들어, 부호화 데이터(화상)에 연관지어진 정보는, 그 부호화 데이터(화상)와는 다른 전송로 상에서 전송되도록 해도 된다. 또한, 예를 들어, 부호화 데이터(화상)에 연관지어진 정보는, 그 부호화 데이터(화상)와는 다른 기록 매체(또는 동일한 기록 매체의 다른 기록 에어리어)에 기록되도록 해도 된다. 또한, 이 「연관짓기」는, 데이터 전체가 아니고, 데이터의 일부여도 된다. 예를 들어, 화상과 그 화상에 대응하는 정보가, 복수 프레임, 1 프레임, 또는 프레임 내의 일부분 등의 임의의 단위로 서로 연관지어지도록 해도 된다.
또한, 본 명세서에 있어서, 「합성한다」, 「다중화한다」, 「부가한다」, 「일체화한다」, 「포함한다」, 「저장한다」, 「넣는다」, 「끼워넣는다」, 「삽입한다」 등의 용어는, 예를 들어 부호화 데이터와 메타데이터를 하나의 데이터로 통합하는 것과 같은, 복수의 객체를 하나로 통합하는 것을 의미하며, 상술한 「연관짓는다」의 하나의 방법을 의미한다.
또한, 본 기술의 실시 형태는, 상술한 실시 형태에 한정되는 것은 아니며, 본 기술의 요지를 일탈하지 않는 범위에 있어서 다양한 변경이 가능하다.
예를 들어, 하나의 장치(또는 처리부)로서 설명한 구성을 분할하여, 복수의 장치(또는 처리부)로서 구성하도록 해도 된다. 반대로, 이상에서 복수의 장치(또는 처리부)로서 설명한 구성을 통합하여 하나의 장치(또는 처리부)로서 구성되도록 해도 된다. 또한, 각 장치(또는 각 처리부)의 구성에 상술한 것 이외의 구성을 부가하도록 해도 물론 된다. 또한, 시스템 전체로서의 구성이나 동작이 실질적으로 동일하면, 어떤 장치(또는 처리부)의 구성의 일부를 다른 장치(또는 다른 처리부)의 구성에 포함시키도록 해도 된다.
또한, 예를 들어, 상술한 프로그램은, 임의의 장치에 있어서 실행되도록 해도 된다. 그 경우, 그 장치가, 필요한 기능(기능 블록 등)을 갖고, 필요한 정보를 얻을 수 있도록 하면 된다.
또한, 예를 들어, 하나의 흐름도의 각 스텝을, 하나의 장치가 실행하도록 해도 되고, 복수의 장치가 분담하여 실행하도록 해도 된다. 또한, 하나의 스텝에 복수의 처리가 포함되는 경우, 그 복수의 처리를, 하나의 장치가 실행하도록 해도 되고, 복수의 장치가 분담하여 실행하도록 해도 된다. 환언하건대, 하나의 스텝에 포함되는 복수의 처리를, 복수의 스텝의 처리로서 실행할 수도 있다. 반대로, 복수의 스텝으로서 설명한 처리를 하나의 스텝으로서 통합하여 실행할 수도 있다.
또한, 컴퓨터가 실행하는 프로그램은, 이하와 같은 특징을 갖고 있어도 된다. 예를 들어, 프로그램을 기술하는 스텝의 처리가, 본 명세서에서 설명하는 순서에 따라 시계열로 실행되도록 해도 된다. 또한, 프로그램을 기술하는 스텝의 처리가 병렬로 실행되도록 해도 된다. 또한, 프로그램을 기술하는 스텝의 처리가, 호출될 때 등의 필요한 타이밍에 개별로 실행되도록 해도 된다. 즉, 모순이 발생하지 않는 한, 각 스텝의 처리가 상술한 순서와 상이한 순서로 실행되도록 해도 된다. 또한, 이 프로그램을 기술하는 스텝의 처리가, 다른 프로그램의 처리와 병렬로 실행되도록 해도 된다. 또한, 이 프로그램을 기술하는 스텝의 처리가, 다른 프로그램의 처리와 조합하여 실행되도록 해도 된다.
또한, 예를 들어, 본 기술에 관한 복수의 기술은, 모순이 발생하지 않는 한, 각각 독립적으로 단체로 실시할 수 있다. 물론, 임의의 복수의 본 기술을 병용하여 실시할 수도 있다. 예를 들어, 어느 실시 형태에 있어서 설명한 본 기술의 일부 또는 전부를, 다른 실시 형태에 있어서 설명한 본 기술의 일부 또는 전부와 조합하여 실시할 수도 있다. 또한, 상술한 임의의 본 기술의 일부 또는 전부를, 상술하고 있지 않은 다른 기술과 병용하여 실시할 수도 있다.
또한, 본 기술은 이하와 같은 구성도 취할 수 있다.
(1) 양자화 파라미터를, 적응 색변환에 관한 파라미터에 기초하여 보정하고, 또한, 변환 스킵에 관한 파라미터에 기초하여 보정하는 양자화 파라미터 보정부와,
상기 양자화 파라미터 보정부에 의해 보정된 상기 양자화 파라미터인 보정 양자화 파라미터를 사용하여, 부호화 대상의 화상의 계수 데이터를 양자화하는 양자화부
를 구비하는 화상 처리 장치.
(2) 상기 양자화 파라미터 보정부는, 상기 적응 색변환을 적용하는 경우, 처리 대상 컴포넌트에 따른 보정량으로 상기 양자화 파라미터를 보정하는
(1)에 기재된 화상 처리 장치.
(3) 상기 적응 색변환을 적용하지 않는 경우, 상기 보정량은 「0」인
(2)에 기재된 화상 처리 장치.
(4) 상기 양자화 파라미터 보정부는, 상기 변환 스킵을 적용하는 경우, 상기 적응 색변환에 관한 파라미터에 기초하여 보정된 상기 양자화 파라미터의 하한을, 미리 설정된, 상기 변환 스킵을 적용하는 경우의 상기 양자화 파라미터의 최솟값으로 클립하는
(1) 내지 (3) 중 어느 것에 기재된 화상 처리 장치.
(5) 상기 양자화 파라미터 보정부는, 상기 변환 스킵을 적용하지 않는 경우, 상기 적응 색변환에 관한 파라미터에 기초하여 보정된 상기 양자화 파라미터의 하한의 클립을 생략하는
(4)에 기재된 화상 처리 장치.
(6) 상기 양자화 파라미터 보정부는, 상기 변환 스킵을 적용하지 않는 경우, 상기 적응 색변환에 관한 파라미터에 기초하여 보정된 상기 양자화 파라미터의 하한을, 미리 설정된 상기 양자화 파라미터의 최솟값으로 클립하는
(1) 내지 (5) 중 어느 것에 기재된 화상 처리 장치.
(7) 상기 양자화 파라미터의 최솟값은 「0」인
(6)에 기재된 화상 처리 장치.
(8) 상기 양자화 파라미터 보정부는, 상기 변환 스킵을 적용하는 경우, 상기 적응 색변환에 관한 파라미터에 기초하여 보정된 상기 양자화 파라미터의 하한을, 미리 설정된, 상기 변환 스킵을 적용하는 경우의 상기 양자화 파라미터의 최솟값으로 클립하고, 또한, 상기 적응 색변환에 관한 파라미터에 기초하여 보정된 상기 양자화 파라미터의 상한을, 미리 설정된, 상기 양자화 파라미터의 최댓값과 비트 심도에 기초한 보정량의 합으로 클립하는
(1) 내지 (7) 중 어느 것에 기재된 화상 처리 장치.
(9) 상기 양자화 파라미터 보정부는, 상기 변환 스킵을 적용하지 않는 경우, 상기 적응 색변환에 관한 파라미터에 기초하여 보정된 상기 양자화 파라미터의 하한을, 미리 설정된 상기 양자화 파라미터의 최솟값으로 클립하고, 또한, 상기 적응 색변환에 관한 파라미터에 기초하여 보정된 상기 양자화 파라미터의 상한을, 미리 설정된, 상기 양자화 파라미터의 최댓값과 비트 심도에 기초한 보정량의 합으로 클립하는
(8)에 기재된 화상 처리 장치.
(10) 양자화 파라미터를, 적응 색변환에 관한 파라미터에 기초하여 보정하고, 또한, 변환 스킵에 관한 파라미터에 기초하여 보정하고,
보정된 상기 양자화 파라미터인 보정 양자화 파라미터를 사용하여, 부호화 대상의 화상의 계수 데이터를 양자화하는
화상 처리 방법.
(11) 양자화 파라미터를, 적응 색변환에 관한 파라미터에 기초하여 보정하고, 또한, 변환 스킵에 관한 파라미터에 기초하여 보정하는 양자화 파라미터 보정부와,
상기 양자화 파라미터 보정부에 의해 보정된 상기 양자화 파라미터인 보정 양자화 파라미터를 사용하여, 화상의 계수 데이터가 양자화된 양자화 계수 데이터를 역양자화하는 역양자화부
를 구비하는 화상 처리 장치.
(12) 상기 양자화 파라미터 보정부는, 상기 적응 색변환을 적용하는 경우, 처리 대상 컴포넌트에 따른 보정량으로 상기 양자화 파라미터를 보정하는
(11)에 기재된 화상 처리 장치.
(13) 상기 적응 색변환을 적용하지 않는 경우, 상기 보정량은 「0」인
(12)에 기재된 화상 처리 장치.
(14) 상기 양자화 파라미터 보정부는, 상기 변환 스킵을 적용하는 경우, 상기 적응 색변환에 관한 파라미터에 기초하여 보정된 상기 양자화 파라미터의 하한을, 미리 설정된, 상기 변환 스킵을 적용하는 경우의 상기 양자화 파라미터의 최솟값으로 클립하는
(11) 내지 (13) 중 어느 것에 기재된 화상 처리 장치.
(15) 상기 양자화 파라미터 보정부는, 상기 변환 스킵을 적용하지 않는 경우, 상기 적응 색변환에 관한 파라미터에 기초하여 보정된 상기 양자화 파라미터의 하한의 클립을 생략하는
(14)에 기재된 화상 처리 장치.
(16) 상기 양자화 파라미터 보정부는, 상기 변환 스킵을 적용하지 않는 경우, 상기 적응 색변환에 관한 파라미터에 기초하여 보정된 상기 양자화 파라미터의 하한을, 미리 설정된 상기 양자화 파라미터의 최솟값으로 클립하는
(11) 내지 (15) 중 어느 것에 기재된 화상 처리 장치.
(17) 상기 양자화 파라미터의 최솟값은 「0」인
(16)에 기재된 화상 처리 장치.
(18) 상기 양자화 파라미터 보정부는, 상기 변환 스킵을 적용하는 경우, 상기 적응 색변환에 관한 파라미터에 기초하여 보정된 상기 양자화 파라미터의 하한을, 미리 설정된, 상기 변환 스킵을 적용하는 경우의 상기 양자화 파라미터의 최솟값으로 클립하고, 또한, 상기 적응 색변환에 관한 파라미터에 기초하여 보정된 상기 양자화 파라미터의 상한을, 미리 설정된, 상기 양자화 파라미터의 최댓값과 비트 심도에 기초한 보정량의 합으로 클립하는
(11) 내지 (17) 중 어느 것에 기재된 화상 처리 장치.
(19) 상기 양자화 파라미터 보정부는, 상기 변환 스킵을 적용하지 않는 경우, 상기 적응 색변환에 관한 파라미터에 기초하여 보정된 상기 양자화 파라미터의 하한을, 미리 설정된 상기 양자화 파라미터의 최솟값으로 클립하고, 또한, 상기 적응 색변환에 관한 파라미터에 기초하여 보정된 상기 양자화 파라미터의 상한을, 미리 설정된, 상기 양자화 파라미터의 최댓값과 비트 심도에 기초한 보정량의 합으로 클립하는
(18)에 기재된 화상 처리 장치.
(20) 양자화 파라미터를, 적응 색변환에 관한 파라미터에 기초하여 보정하고, 또한, 변환 스킵에 관한 파라미터에 기초하여 보정하고,
보정된 상기 양자화 파라미터인 보정 양자화 파라미터를 사용하여, 화상의 계수 데이터가 양자화된 양자화 계수 데이터를 역양자화하는
화상 처리 방법.
100: 양자화 파라미터 보정 장치
101: 제1 보정부
102: 제2 보정부
120: 양자화 파라미터 보정 장치
121: 제1 보정부
122: 제2 보정부
140: 양자화 파라미터 보정 장치
141: 제1 보정부
142: 제2 보정부
143: 제3 보정부
160: 양자화 파라미터 보정 장치
161: 제1 보정부
162: 제2 보정부
300: 화상 부호화 장치
301: 제어부
313: 변환 양자화부
314: 부호화부
341: 적응 색변환부
342: 직교 변환부
343: 양자화부
351: 양자화 파라미터 보정부
352: 양자화 처리부
400: 화상 복호 장치
401: 제어부
412: 복호부
413: 역양자화 역변환부
441: 역양자화부
442: 역직교 변환부
443: 역적응 색변환부
451: 양자화 파라미터 보정부
452: 역양자화 처리부

Claims (20)

  1. 양자화 파라미터를, 적응 색변환에 관한 파라미터에 기초하여 보정하고, 또한, 변환 스킵에 관한 파라미터에 기초하여 보정하는 양자화 파라미터 보정부와,
    상기 양자화 파라미터 보정부에 의해 보정된 상기 양자화 파라미터인 보정 양자화 파라미터를 사용하여, 부호화 대상의 화상의 계수 데이터를 양자화하는 양자화부
    를 구비하는 화상 처리 장치.
  2. 제1항에 있어서,
    상기 양자화 파라미터 보정부는, 상기 적응 색변환을 적용하는 경우, 처리 대상 컴포넌트에 따른 보정량으로 상기 양자화 파라미터를 보정하는
    화상 처리 장치.
  3. 제2항에 있어서,
    상기 적응 색변환을 적용하지 않는 경우, 상기 보정량은 「0」인
    화상 처리 장치.
  4. 제1항에 있어서,
    상기 양자화 파라미터 보정부는, 상기 변환 스킵을 적용하는 경우, 상기 적응 색변환에 관한 파라미터에 기초하여 보정된 상기 양자화 파라미터의 하한을, 미리 설정된, 상기 변환 스킵을 적용하는 경우의 상기 양자화 파라미터의 최솟값으로 클립하는
    화상 처리 장치.
  5. 제4항에 있어서,
    상기 양자화 파라미터 보정부는, 상기 변환 스킵을 적용하지 않는 경우, 상기 적응 색변환에 관한 파라미터에 기초하여 보정된 상기 양자화 파라미터의 하한의 클립을 생략하는
    화상 처리 장치.
  6. 제1항에 있어서,
    상기 양자화 파라미터 보정부는, 상기 변환 스킵을 적용하지 않는 경우, 상기 적응 색변환에 관한 파라미터에 기초하여 보정된 상기 양자화 파라미터의 하한을, 미리 설정된 상기 양자화 파라미터의 최솟값으로 클립하는
    화상 처리 장치.
  7. 제6항에 있어서,
    상기 양자화 파라미터의 최솟값은 「0」인
    화상 처리 장치.
  8. 제1항에 있어서,
    상기 양자화 파라미터 보정부는, 상기 변환 스킵을 적용하는 경우, 상기 적응 색변환에 관한 파라미터에 기초하여 보정된 상기 양자화 파라미터의 하한을, 미리 설정된, 상기 변환 스킵을 적용하는 경우의 상기 양자화 파라미터의 최솟값으로 클립하고, 또한, 상기 적응 색변환에 관한 파라미터에 기초하여 보정된 상기 양자화 파라미터의 상한을, 미리 설정된, 상기 양자화 파라미터의 최댓값과 비트 심도에 기초한 보정량의 합으로 클립하는
    화상 처리 장치.
  9. 제8항에 있어서,
    상기 양자화 파라미터 보정부는, 상기 변환 스킵을 적용하지 않는 경우, 상기 적응 색변환에 관한 파라미터에 기초하여 보정된 상기 양자화 파라미터의 하한을, 미리 설정된 상기 양자화 파라미터의 최솟값으로 클립하고, 또한, 상기 적응 색변환에 관한 파라미터에 기초하여 보정된 상기 양자화 파라미터의 상한을, 미리 설정된, 상기 양자화 파라미터의 최댓값과 비트 심도에 기초한 보정량의 합으로 클립하는
    화상 처리 장치.
  10. 양자화 파라미터를, 적응 색변환에 관한 파라미터에 기초하여 보정하고, 또한, 변환 스킵에 관한 파라미터에 기초하여 보정하고,
    보정된 상기 양자화 파라미터인 보정 양자화 파라미터를 사용하여, 부호화 대상의 화상의 계수 데이터를 양자화하는
    화상 처리 방법.
  11. 양자화 파라미터를, 적응 색변환에 관한 파라미터에 기초하여 보정하고, 또한, 변환 스킵에 관한 파라미터에 기초하여 보정하는 양자화 파라미터 보정부와,
    상기 양자화 파라미터 보정부에 의해 보정된 상기 양자화 파라미터인 보정 양자화 파라미터를 사용하여, 화상의 계수 데이터가 양자화된 양자화 계수 데이터를 역양자화하는 역양자화부
    를 구비하는 화상 처리 장치.
  12. 제11항에 있어서,
    상기 양자화 파라미터 보정부는, 상기 적응 색변환을 적용하는 경우, 처리 대상 컴포넌트에 따른 보정량으로 상기 양자화 파라미터를 보정하는
    화상 처리 장치.
  13. 제12항에 있어서,
    상기 적응 색변환을 적용하지 않는 경우, 상기 보정량은 「0」인
    화상 처리 장치.
  14. 제11항에 있어서,
    상기 양자화 파라미터 보정부는, 상기 변환 스킵을 적용하는 경우, 상기 적응 색변환에 관한 파라미터에 기초하여 보정된 상기 양자화 파라미터의 하한을, 미리 설정된, 상기 변환 스킵을 적용하는 경우의 상기 양자화 파라미터의 최솟값으로 클립하는
    화상 처리 장치.
  15. 제14항에 있어서,
    상기 양자화 파라미터 보정부는, 상기 변환 스킵을 적용하지 않는 경우, 상기 적응 색변환에 관한 파라미터에 기초하여 보정된 상기 양자화 파라미터의 하한의 클립을 생략하는
    화상 처리 장치.
  16. 제11항에 있어서,
    상기 양자화 파라미터 보정부는, 상기 변환 스킵을 적용하지 않는 경우, 상기 적응 색변환에 관한 파라미터에 기초하여 보정된 상기 양자화 파라미터의 하한을, 미리 설정된 상기 양자화 파라미터의 최솟값으로 클립하는
    화상 처리 장치.
  17. 제16항에 있어서,
    상기 양자화 파라미터의 최솟값은 「0」인
    화상 처리 장치.
  18. 제11항에 있어서,
    상기 양자화 파라미터 보정부는, 상기 변환 스킵을 적용하는 경우, 상기 적응 색변환에 관한 파라미터에 기초하여 보정된 상기 양자화 파라미터의 하한을, 미리 설정된, 상기 변환 스킵을 적용하는 경우의 상기 양자화 파라미터의 최솟값으로 클립하고, 또한, 상기 적응 색변환에 관한 파라미터에 기초하여 보정된 상기 양자화 파라미터의 상한을, 미리 설정된, 상기 양자화 파라미터의 최댓값과 비트 심도에 기초한 보정량의 합으로 클립하는
    화상 처리 장치.
  19. 제18항에 있어서,
    상기 양자화 파라미터 보정부는, 상기 변환 스킵을 적용하지 않는 경우, 상기 적응 색변환에 관한 파라미터에 기초하여 보정된 상기 양자화 파라미터의 하한을, 미리 설정된 상기 양자화 파라미터의 최솟값으로 클립하고, 또한, 상기 적응 색변환에 관한 파라미터에 기초하여 보정된 상기 양자화 파라미터의 상한을, 미리 설정된, 상기 양자화 파라미터의 최댓값과 비트 심도에 기초한 보정량의 합으로 클립하는
    화상 처리 장치.
  20. 양자화 파라미터를, 적응 색변환에 관한 파라미터에 기초하여 보정하고, 또한, 변환 스킵에 관한 파라미터에 기초하여 보정하고,
    보정된 상기 양자화 파라미터인 보정 양자화 파라미터를 사용하여, 화상의 계수 데이터가 양자화된 양자화 계수 데이터를 역양자화하는
    화상 처리 방법.
KR1020227017805A 2019-12-18 2020-12-18 화상 처리 장치 및 방법 KR20220116152A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962950055P 2019-12-18 2019-12-18
US62/950,055 2019-12-18
PCT/JP2020/047338 WO2021125309A1 (ja) 2019-12-18 2020-12-18 画像処理装置および方法

Publications (1)

Publication Number Publication Date
KR20220116152A true KR20220116152A (ko) 2022-08-22

Family

ID=76478790

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227017805A KR20220116152A (ko) 2019-12-18 2020-12-18 화상 처리 장치 및 방법

Country Status (7)

Country Link
US (1) US20230007255A1 (ko)
EP (1) EP4068778A4 (ko)
JP (1) JPWO2021125309A1 (ko)
KR (1) KR20220116152A (ko)
CN (1) CN114616828A (ko)
TW (1) TW202139698A (ko)
WO (1) WO2021125309A1 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021121419A1 (en) * 2019-12-19 2021-06-24 Beijing Bytedance Network Technology Co., Ltd. Interaction between adaptive color transform and quantization parameters
JP7026287B1 (ja) 2019-12-26 2022-02-25 Kddi株式会社 画像復号装置、画像復号方法及びプログラム
JP7001668B2 (ja) * 2019-12-26 2022-01-19 Kddi株式会社 画像復号装置、画像復号方法及びプログラム
WO2021143896A1 (en) 2020-01-18 2021-07-22 Beijing Bytedance Network Technology Co., Ltd. Adaptive colour transform in image/video coding
JP7054765B1 (ja) 2021-12-24 2022-04-14 Kddi株式会社 画像復号装置、画像復号方法及びプログラム
JP7317194B2 (ja) * 2022-02-14 2023-07-28 Kddi株式会社 画像復号装置、画像復号方法及びプログラム
JP7146129B2 (ja) * 2022-02-14 2022-10-03 Kddi株式会社 画像復号装置、画像復号方法及びプログラム

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Benjamin Bross, Jianle Chen, Shan Liu, Ye-Kui Wang, "Versatile Video Coding (Draft 7)", JVET-P2001-vE, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 16th Meeting: Feneva, CH, 1-11 Oct 2019
Jianle Chen, Yan Ye, Seung Hwan Kim, "Algorithm description for Versatile Video Coding and Test Model 7 (VTM 7)", JVET-P2002-v1, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 16th Meeting: Geneva, CH, 1-11 Oct. 2019
Xiaoyu Xiu, Yi-Wen Chen, Tsung-Chuan Ma, Hong-Jheng Jhu, Xianglin Wang, "Support of adaptive color transform for 444 video coding in VVC", JVET-P0517_r1, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 16th Meeting: Geneva, CH, 1-11 October 2019

Also Published As

Publication number Publication date
TW202139698A (zh) 2021-10-16
WO2021125309A1 (ja) 2021-06-24
JPWO2021125309A1 (ko) 2021-06-24
CN114616828A (zh) 2022-06-10
EP4068778A1 (en) 2022-10-05
US20230007255A1 (en) 2023-01-05
EP4068778A4 (en) 2023-01-11

Similar Documents

Publication Publication Date Title
KR20220116152A (ko) 화상 처리 장치 및 방법
KR20220053563A (ko) 화상 처리 장치 및 방법
JP7235030B2 (ja) 画像処理装置および方法
US20220256151A1 (en) Image processing device and method
US20210385456A1 (en) Image processing apparatus and method
WO2019188465A1 (ja) 画像符号化装置、画像符号化方法、画像復号装置、および画像復号方法
US20210037248A1 (en) Image encoding device, image encoding method, image decoding device, and image decoding method
WO2022255395A1 (ja) 画像処理装置および方法
US20220385904A1 (en) Image processing device and method
US20230007265A1 (en) Image processing device, bit stream generation method, coefficient data generation method, and quantization coefficient generation method
US20220201305A1 (en) Image processing device and method
JP2022038979A (ja) 画像処理装置および方法
US20230045106A1 (en) Image processing apparatus and method
US20220394256A1 (en) Image processing device and method
US20240163437A1 (en) Image processing device and method
US20220021899A1 (en) Image encoding apparatus, image encoding method, image decoding apparatus, and image decoding method
WO2023053957A1 (ja) 画像処理装置および方法
WO2022270451A1 (ja) 画像処理装置および方法
KR20220053560A (ko) 화상 처리 장치 및 방법
KR20240087683A (ko) 화상 처리 장치 및 방법