(57)【要約】      （修正有）【課題】現在ブロックが変換スキップブロックであるかどうかによって現在ブロックに対するスケールファクタを導出する方法及び装置を提供する。【解決手段】映像復号化装置において、映像復号化方法は、現在ブロックが変換スキップブロックであるかどうかによって現在ブロックに対するスケールファクタを導出するステップ及びスケールファクタに基づいて現在ブロックに対するスケーリングを実行するステップを含む。現在ブロックに対するスケールファクタは、現在ブロック内の変換係数の位置に基づいて導出され、変換スキップブロックは、現在ブロックに対して変換を適用しないブロックであり、現在ブロックに対して逆変換を適用するかどうかを示す情報に基づいて特定される。【選択図】図６
2020108155.tif 000002
【特許請求の範囲】
【請求項１】
映像復号化方法であって、
現在ブロックの逆量子化変換係数を取得するステップ；
前記現在ブロックに変換を行うかどうかを示す情報を取得するステップ；
前記情報が、前記現在ブロックに前記変換を行うことを示す場合、及び前記現在ブロックがイントラ予測される場合、前記現在ブロックの変換のタイプを決定するステップ；
前記決定された変換のタイプに基づいて、前記逆量子化変換係数に前記変換を行うことにより、前記現在ブロックの残差サンプルを取得するステップ；
を含むことを特徴とする映像復号化方法。
【請求項２】
前記現在ブロックの前記変換のタイプは、整数離散余弦変換(Ｄｉｓｃｒｅｔｅ Ｃｏｓｉｎｅ Ｔｒａｎｓｆｏｒｍ；ＤＣＴ)、又は整数離散正弦変換(Ｄｉｓｃｒｅｔｅ Ｓｉｎｅ Ｔｒａｎｓｆｏｒｍ；ＤＳＴ)であることを特徴とする請求項１に記載の映像復号化方法。
【請求項３】
前記現在ブロックの前記変換のタイプは、前記現在ブロックのブロックサイズに基づいて決定されることを特徴とする請求項１に記載の映像復号化方法。
【請求項４】
前記現在ブロックの前記変換のタイプは、前記現在ブロックのイントラ予測モードとは独立して決定されることを特徴とする請求項１に記載の映像復号化方法。
【請求項５】
映像符号化方法であって、
現在ブロックの残差サンプルを取得するステップ；
前記現在ブロックに変換を行うかどうかを決定するステップ；
前記現在ブロックに前記変換を行う場合、及び前記現在ブロックがイントラ予測される場合、前記現在ブロックの変換のタイプを決定するステップ；
前記決定された変換のタイプに基づいて、前記残差サンプルに前記変換を行うことにより、前記現在ブロックの変換係数を取得するステップ；
を含むことを特徴とする映像符号化方法。
【請求項６】
前記現在ブロックの前記変換のタイプは、整数離散余弦変換(Ｄｉｓｃｒｅｔｅ Ｃｏｓｉｎｅ Ｔｒａｎｓｆｏｒｍ；ＤＣＴ)、又は整数離散正弦変換(Ｄｉｓｃｒｅｔｅ Ｓｉｎｅ Ｔｒａｎｓｆｏｒｍ；ＤＳＴ)であることを特徴とする請求項５に記載の映像符号化方法。
【請求項７】
前記現在ブロックの前記変換のタイプは、前記現在ブロックのブロックサイズに基づいて決定されることを特徴とする請求項５に記載の映像符号化方法。
【請求項８】
前記現在ブロックの前記変換のタイプは、前記現在ブロックのイントラ予測モードとは独立して決定されることを特徴とする請求項５に記載の映像符号化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、映像の符号化並びに復号化に関し、より詳しくは、変換係数に対するスケーリング方法及び装置に関する。
【背景技術】
【０００２】
最近、ＨＤ(Ｈｉｇｈ Ｄｅｆｉｎｉｔｉｏｎ)解像度(１２８０×１０２４または１９２０×１０８０)を有する放送サービスが韓国内だけでなく、世界的に拡大されている。それによって、多くのユーザが高解像度、高画質の映像に慣れており、それに応えて多くの機関が次世代映像機器に対する開発に拍車を掛けている。また、ＨＤＴＶと共にＨＤＴＶの４倍以上の解像度を有するＵＨＤ(Ｕｌｔｒａ Ｈｉｇｈ Ｄｅｆｉｎｉｔｉｏｎ)に対する関心が増大するにつれて、動映像標準化団体は、より高い解像度、高画質の映像に対する圧縮機術の必要性を認識するようになった。また、現在ＨＤＴＶ、携帯電話、ブルーレイプレーヤに使われるＨ.２６４/ＡＶＣより高い圧縮効率を介して同じ画質を維持すると同時に、周波数帯域や格納側面で多くの利得を得ることができる新しい標準が切実な状況である。
【０００３】
現在ＭＰＥＧ(Ｍｏｖｉｎｇ Ｐｉｃｔｕｒｅ Ｅｘｐｅｒｔｓ Ｇｒｏｕｐ)とＶＣＥＧ(Ｖｉｄｅｏ Ｃｏｄｉｎｇ Ｅｘｐｅｒｔｓ Ｇｒｏｕｐ)は、共同に次世代ビデオコーデックであるＨＥＶＣ(Ｈｉｇｈ Ｅｆｆｉｃｉｅｎｃｙ Ｖｉｄｅｏ Ｃｏｄｉｎｇ)を標準化しており、ＵＨＤ映像まで含む映像をＨ.２６４/ＡＶＣ対比２倍の圧縮効率で符号化をすることを目標としている。これはＨＤ、ＵＨＤ映像だけでなく、３Ｄ放送及び移動通信ネットワークでも現在より低い周波数で高画質の映像を提供することができる。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明は、符号化/復号化効率を向上させることができる映像符号化/復号化方法及び装置を提供する。
【０００５】
本発明は、符号化/復号化効率を向上させることができる変換係数(または、残余信号)のスケーリング方法及び装置を提供する。
【０００６】
本発明は、符号化/復号化効率を向上させることができる変換スキップブロックに対する量子化/逆量子化方法及び装置を提供する。
【課題を解決するための手段】
【０００７】
本発明の一態様によると、映像復号化方法が提供される。前記映像復号化方法は、現在ブロックが変換スキップブロックであるかどうかによって前記現在ブロックに対するスケールファクタを導出するステップ、及び前記スケールファクタに基づいて前記現在ブロックに対するスケーリングを実行するステップを含む。
【０００８】
前記現在ブロックに対するスケールファクタは、前記現在ブロック内の変換係数の位置に基づいて導出され、前記変換スキップブロックは、前記現在ブロックに対して変換を適用しないブロックであり、前記現在ブロックに対して逆変換を適用するかどうかを示す情報に基づいて特定される。
【０００９】
前記現在ブロックに対するスケールファクタを導出するステップでは、前記現在ブロックが変換スキップブロックの場合、前記現在ブロック内の変換係数の位置に関係なく基本スケールファクタを導出する。
【００１０】
前記基本スケールファクタは、所定のスケールファクタ値を有し、前記所定のスケールファクタ値は、１６である。
【００１１】
前記基本スケールファクタは、前記現在ブロックが量子化行列を使用するかどうかによって異なるスケールファクタ値を有する。
【００１２】
前記基本スケールファクタは、前記現在ブロックが輝度ブロックであるか、または色差ブロックであるかによって異なるスケールファクタ値を有する。
【００１３】
前記現在ブロックを含む映像に変換スキップアルゴリズムが使われるかどうかを示すフラグがＰＰＳ(Ｐｉｃｔｕｒｅ Ｐａｒａｍｅｔｅｒ Ｓｅｔ)を介してシグナリングされる。
【００１４】
前記基本スケールファクタは、輝度信号と色差信号に対するスケールファクタ情報を含む。
【００１５】
前記現在ブロックに対するスケールファクタを導出するステップでは、前記現在ブロックが変換スキップブロックであり、または前記現在ブロックが量子化行列を使用しない場合、前記現在ブロック内の変換係数の位置に関係なく基本スケールファクタを導出する。  
【００１６】
前記現在ブロックに対するスケールファクタを導出するステップでは、前記現在ブロックが変換スキップブロックでない場合、前記現在ブロック内の変換係数の位置に基づいて量子化行列を利用して前記現在ブロックに対するスケールファクタを導出する。
【００１７】
本発明の他の態様によると、映像復号化装置が提供される。前記映像復号化装置は、現在ブロックが変換スキップブロックであるかどうかによって前記現在ブロックに対するスケールファクタを導出し、前記スケールファクタに基づいて前記現在ブロックに対するスケーリングを実行する逆量子化部を含む。
【００１８】
前記現在ブロックに対するスケールファクタは、前記現在ブロック内の変換係数の位置に基づいて導出され、前記変換スキップブロックは、前記現在ブロックに対して変換を適用しないブロックであり、前記現在ブロックに対して変換を適用するかどうかを示す情報に基づいて特定される。
【００１９】
本発明の他の態様によると、映像符号化方法が提供される。前記映像符号化方法は、現在ブロックが変換スキップブロックであるかどうかによって前記現在ブロックに対するスケールファクタを導出するステップ、及び前記スケールファクタに基づいて前記現在ブロックに対するスケーリングを実行するステップを含む。
【００２０】
前記現在ブロックに対するスケールファクタは、前記現在ブロック内の変換係数の位置に基づいて導出され、前記変換スキップブロックは、前記現在ブロックに対して変換を適用しないブロックであり、前記現在ブロックに対して変換を適用するかどうかを示す情報に基づいて特定される。
【００２１】
前記現在ブロックに対するスケールファクタを導出するステップでは、前記現在ブロックが変換スキップブロックの場合、前記現在ブロック内の変換係数の位置に関係なく基本スケールファクタを導出する。
【００２２】
前記基本スケールファクタは、所定のスケールファクタ値を有し、前記所定のスケールファクタ値は、１６である。
【００２３】
前記基本スケールファクタは、前記現在ブロックが量子化行列を使用するかどうかによって異なるスケールファクタ値を有する。
【００２４】
前記基本スケールファクタは、前記現在ブロックが輝度ブロックであるか、または色差ブロックであるかによって異なるスケールファクタ値を有する。
【００２５】
前記現在ブロックを含む映像に変換スキップアルゴリズムが使われるかどうかを示すフラグがＰＰＳ(Ｐｉｃｔｕｒｅ Ｐａｒａｍｅｔｅｒ Ｓｅｔ)を介してシグナリングされる。
【００２６】
前記基本スケールファクタは、輝度信号と色差信号に対するスケールファクタ情報を含む。
【００２７】
前記現在ブロックに対するスケールファクタを導出するステップでは、前記現在ブロックが変換スキップブロックであり、または前記現在ブロックが量子化行列を使用しない場合、前記現在ブロック内の変換係数の位置に関係なく基本スケールファクタを導出する。  
【００２８】
前記現在ブロックに対するスケールファクタを導出するステップでは、前記現在ブロックが変換スキップブロックでない場合、前記現在ブロック内の変換係数の位置に基づいて量子化行列を利用して前記現在ブロックに対するスケールファクタを導出する。
【００２９】
本発明の他の態様によると、映像符号化装置が提供される。前記映像符号化装置は、現在ブロックが変換スキップブロックであるかどうかによって前記現在ブロックに対するスケールファクタを導出し、前記スケールファクタに基づいて前記現在ブロックに対するスケーリングを実行する量子化部を含む。
【００３０】
前記現在ブロックに対するスケールファクタは、前記現在ブロック内の変換係数の位置に基づいて導出され、前記変換スキップブロックは、前記現在ブロックに対して変換を適用しないブロックであり、前記現在ブロックに対して変換を適用するかどうかを示す情報に基づいて特定される。
【発明の効果】
【００３１】
変換スキップアルゴリズムが適用されたブロックは、変換/逆変換過程を実行しないため、既存の変換/逆変換過程を実行したブロックとは互いに異なる変換係数特性を有する。即ち、既存の変換/逆変換過程を実行したブロックに適用したスケーリング方法をそのまま変換スキップブロックに適用する場合、符号化/復号化効率を減少させることができる。したがって、変換スキップブロックに対してはブロック内の変換係数の位置に関係なく同じようにスケールファクタを適用することによって、符号化及び復号化効率を増加させることができる。
【図面の簡単な説明】
【００３２】
【図１】本発明が適用される映像符号化装置の一実施例に係る構成を示すブロック図である。
【図２】本発明が適用される映像復号化装置の一実施例に係る構成を示すブロック図である。
【図３】映像を符号化する時、映像の分割構造を概略的に示す図である。
【図４】コーディングユニット(ＣＵ)が含むことができる予測ユニット(ＰＵ)の形態を示す図である。
【図５】コーディングユニット(ＣＵ)が含むことができる変換ユニット(ＴＵ)の形態を示す図である。
【図６】本発明の一実施例に係る残余信号(または、変換係数)に対するスケーリング方法を示す流れ図である。
【図７】本発明の他の実施例に係る残余信号(または、変換係数)に対するスケーリング方法を示す流れ図である。
【発明を実施するための形態】
【００３３】
以下、図面を参照して本発明の実施形態に対して具体的に説明する。本明細書の実施例を説明するにあたって、関連した公知構成または機能に対する具体的な説明が本明細書の要旨を不明にすると判断される場合は該当説明を省略することもできる。
【００３４】
本明細書において、一構成要素が他の構成要素に連結されている、または接続されていると言及された場合、その他の構成要素に直接的に連結されている、または接続されていることを意味し、または中間に他の構成要素が存在することを意味する。併せて、本明細書において、特定構成を含むと記述する内容は、該当構成以外の構成を排除するものではなく、追加的な構成が本発明の実施または本発明の技術的思想の範囲に含まれることができることを意味する。
【００３５】
第１、第２などの用語は、多様な構成を説明するときに使われることができるが、前記構成は、前記用語により限定されるものではない。前記用語は、一つの構成を他の構成から区別する目的として使われる。例えば、本発明の権利範囲を外れない限り、第１の構成は第２の構成と命名することができ、同様に、第２の構成も第１の構成と命名することができる。
【００３６】
また、本発明の実施例に示す構成部は、互いに異なる特徴的な機能を示すために独立的に図示されるものであって、各構成部が分離されたハードウェアや一つのソフトウェア構成単位に構成されることを意味しない。即ち、各構成部は、説明の便宜上、それぞれの構成部として羅列して含むものであって、各構成部のうち少なくとも二つの構成部が統合されて一つの構成部からなり、または一つの構成部が複数個の構成部に分けられて機能を遂行することができる。各構成部の統合された実施例及び分離された実施例も、本発明の本質から外れない限り、本発明の権利範囲に含まれる。
【００３７】
また、一部の構成要素は、本発明で本質的な機能を遂行する必須的構成要素ではなく、単に性能を向上させるための選択的構成要素である。本発明は、単に性能向上のために使われる構成要素を除いた本発明の本質具現に必須的構成部のみを含むことができ、単に性能向上のために使われる選択的構成要素を除いた必須的構成要素のみを含む構造も本発明の権利範囲に含まれる。
【００３８】
まず、説明の便宜及び発明の理解のために、本明細書で使われる用語に対して簡略に説明する。
【００３９】
ユニット(ｕｎｉｔ)は、映像符号化及び復号化の単位を意味する。即ち、映像符号化/復号化において、符号化または復号化単位とは、一つの映像を細分化されたユニットに分割して符号化または復号化する時、その分割された単位を意味する。ブロック(ｂｌｏｃｋ)、マクロブロック(Ｍａｃｒｏ Ｂｌｏｃｋ；ＭＢ)、符号化ユニット(Ｃｏｄｉｎｇ Ｕｎｉｔ；ＣＵ)、予測ユニット(Ｐｒｅｄｉｃｔｉｏｎ Ｕｎｉｔ；ＰＵ)、変換ユニット(Ｔｒａｎｓｆｏｒｍ Ｕｎｉｔ；ＴＵ)、符号化ブロック(Ｃｏｄｉｎｇ Ｂｌｏｃｋ；ＣＢ)、予測ブロック(Ｐｒｅｄｉｃｔｉｏｎ Ｂｌｏｃｋ；ＰＢ)、変換ブロック(Ｔｒａｎｓｆｏｒｍ Ｂｌｏｃｋ；ＴＢ)などとも呼ばれる。また、一つのユニットは、大きさが小さい下位ユニットに分割されることができる。
【００４０】
ブロック(ｂｌｏｃｋ)は、サンプル(ｓａｍｐｌｅ)のＭ×Ｎ配列を意味し、ＭとＮは、正の整数値を有する。また、ブロックは、２次元形態の配列を意味する。
【００４１】
変換ユニット(Ｔｒａｎｓｆｏｒｍ Ｕｎｉｔ；ＴＵ)は、変換、逆変換、量子化、逆量子化、変換係数符号化/復号化のように残余信号(ｒｅｓｉｄｕａｌ ｓｉｇｎａｌ)の符号化/復号化を実行する時の基本ユニットであり、一つの変換ユニットは、大きさが小さい複数の変換ユニットに分割されることができる。このとき、残余信号(ｒｅｓｉｄｕａｌ ｓｉｇｎａｌ)がブロック形態で存在する場合、残余ブロック(ｒｅｓｉｄｕａｌ ｂｌｏｃｋ)ということができる。
【００４２】
量子化行列(ｑｕａｎｔｉｚａｔｉｏｎ ｍａｔｒｉｘ)は、映像の主観的画質または客観的画質を向上させるために量子化または逆量子化過程で利用する行列を意味する。量子化行列は、スケーリングリスト(ｓｃａｌｉｎｇ ｌｉｓｔ)とも呼ばれる。
【００４３】
量子化行列は、基本行列(ｄｅｆａｕｌｔ ｍａｔｒｉｘ)、非基本行列(ｎｏｎ−ｄｅｆａｕｌｔ ｍａｔｒｉｘ)、平面行列(ｆｌａｔ ｍａｔｒｉｘ)に分けられることができる。基本行列は、符号化器と復号化器で予め定義されている所定の量子化行列を意味する。非基本行列は、符号化器と復号化器で予め定義されておらずに、ユーザにより送信/受信される量子化行列を意味する。平面行列は、行列内の全ての元素が同じ値を有する行列を意味する。
【００４４】
スケーリング(ｓｃａｌｉｎｇ)は、変換係数レベルに因数をかける過程を意味し、その結果、変換係数を生成する。スケーリングは、逆量子化(ｄｅｑｕａｎｔｉｚａｔｉｏｎ)ともいう。
【００４５】
変換係数(ｔｒａｎｓｆｏｒｍ ｃｏｅｆｆｉｃｉｅｎｔ)は、変換を実行した後に生成された係数値を意味する。本明細書では、変換係数に量子化を適用した、量子化された変換係数レベル(ｔｒａｎｓｆｏｒｍ ｃｏｅｆｆｉｃｉｅｎｔ ｌｅｖｅｌ)も変換係数と通称して使用する。
【００４６】
量子化媒介変数(ｑｕａｎｔｉｚａｔｉｏｎ ｐａｒａｍｅｔｅｒ)は、量子化及び逆量子化で変換係数レベルをスケーリングする時に使われる値を意味する。このとき、量子化媒介変数は、量子化ステップ大きさ(ｓｔｅｐ ｓｉｚｅ)にマッピングされた値である。  
【００４７】
パラメータセット(ｐａｒａｍｅｔｅｒ ｓｅｔ)は、ビットストリーム内の構造のうちヘッダ情報に該当し、シーケンスパラメータセット(ｓｅｑｕｅｎｃｅ ｐａｒａｍｅｔｅｒ ｓｅｔ)、映像パラメータセット(ｐｉｃｔｕｒｅ ｐａｒａｍｅｔｅｒ ｓｅｔ)、適応パラメータセット(ａｄａｐｔａｔｉｏｎ ｐａｒａｍｅｔｅｒ ｓｅｔ)などを通称する。  
【００４８】
図１は、本発明が適用される映像符号化装置の一実施例に係る構成を示すブロック図である。
【００４９】
図１を参照すると、映像符号化装置１００は、動き予測部１１１、動き補償部１１２、イントラ予測部１２０、スイッチ１１５、減算器１２５、変換部１３０、量子化部１４０、エントロピー符号化部１５０、逆量子化部１６０、逆変換部１７０、加算器１７５、フィルタ部１８０、及び参照映像バッファ１９０を含む。
【００５０】
映像符号化装置１００は、入力映像に対してイントラ(ｉｎｔｒａ)モードまたはインター(ｉｎｔｅｒ)モードに符号化を実行することで、ビットストリームを出力することができる。イントラモードである場合、スイッチ１１５がイントラに切り替えられ、インターモードである場合、スイッチ１１５がインターに切り替えられることができる。イントラ予測は、画面内予測を意味し、インター予測は、画面間予測を意味する。映像符号化装置１００は、入力映像の入力ブロックに対する予測ブロックを生成した後、入力ブロックと予測ブロックとの差分(ｒｅｓｉｄｕａｌ)を符号化することができる。このとき、入力映像は、原映像(ｏｒｉｇｉｎａｌ ｐｉｃｔｕｒｅ)を意味する。
【００５１】
イントラモードである場合、イントラ予測部１２０は、現在ブロック周辺の既に符号化/復号化されたブロックのピクセル値を利用して空間的予測を実行することで、予測ブロックを生成することができる。
【００５２】
インターモードである場合、動き予測部１１１は、動き予測過程で参照映像バッファ１９０に格納されている参照映像で入力ブロックと最もよくマッチされる領域を探して動きベクトルを求めることができる。動き補償部１１２は、動きベクトルを利用して動き補償を実行することによって予測ブロックを生成することができる。ここで、動きベクトルは、インター予測に使われる２次元ベクトルであり、現在符号化/復号化対象映像と参照映像との間のオフセットを示すことができる。
【００５３】
減算器１２５は、入力ブロックと生成された予測ブロックとの差分により残差ブロック(ｒｅｓｉｄｕａｌ ｂｌｏｃｋ)を生成することができる。
【００５４】
変換部１３０は、残差ブロックに対して変換(ｔｒａｎｓｆｏｒｍ)を実行することで、変換係数(ｔｒａｎｓｆｏｒｍ ｃｏｅｆｆｉｃｉｅｎｔ)を出力することができる。そして、量子化部１４０は、入力された変換係数を量子化パラメータ(ｑｕａｎｔｉｚａｔｉｏｎ ｐａｒａｍｅｔｅｒ、または、量子化媒介変数)によって量子化することで、量子化された係数(ｑｕａｎｔｉｚｅｄ ｃｏｅｆｆｉｃｉｅｎｔ)を出力することができる。
【００５５】
エントロピー符号化部１５０は、量子化部１４０で算出された値または符号化過程で算出された符号化パラメータ値などに基づいてエントロピー符号化を実行することで、ビットストリーム(ｂｉｔ ｓｔｒｅａｍ)を出力することができる。エントロピー符号化が適用される場合、高い発生確率を有するシンボル(ｓｙｍｂｏｌ)に少ない数のビットが割り当てられ、低い発生確率を有するシンボルに多い数のビットが割り当てられてシンボルが表現されることによって、符号化対象シンボルに対するビット列の大きさが減少されることができる。したがって、エントロピー符号化を介して映像符号化の圧縮性能が高まることができる。エントロピー符号化部１５０は、エントロピー符号化のために、指数−ゴロム(Ｅｘｐｏｎｅｎｔｉａｌ−Ｇｏｌｏｍｂ)、ＣＡＶＬＣ(Ｃｏｎｔｅｘｔ−Ａｄａｐｔｉｖｅ Ｖａｒｉａｂｌｅ Ｌｅｎｇｔｈ Ｃｏｄｉｎｇ)、ＣＡＢＡＣ(Ｃｏｎｔｅｘｔ−Ａｄａｐｔｉｖｅ Ｂｉｎａｒｙ Ａｒｉｔｈｍｅｔｉｃ Ｃｏｄｉｎｇ)のような符号化方法を使用することができる。
【００５６】
図１の実施例による映像符号化装置１００は、インター予測符号化、即ち、画面間予測符号化を実行するため、現在符号化された映像は、参照映像として使われるために復号化されて格納される必要がある。したがって、量子化された係数は、逆量子化部１６０で逆量子化され、逆変換部１７０で逆変換される。逆量子化、逆変換された係数は、加算器１７５を介して予測ブロックと加えられて復元ブロックが生成される。
【００５７】
復元ブロックは、フィルタ部１８０を経て、フィルタ部１８０は、デブロッキングフィルタ(ｄｅｂｌｏｃｋｉｎｇ ｆｉｌｔｅｒ)、ＳＡＯ(Ｓａｍｐｌｅ Ａｄａｐｔｉｖｅ Ｏｆｆｓｅｔ)、ＡＬＦ(Ａｄａｐｔｉｖｅ Ｌｏｏｐ Ｆｉｌｔｅｒ)のうち少なくとも一つ以上を復元ブロックまたは復元映像に適用することができる。フィルタ部１８０は、適応的インループ(ｉｎ−ｌｏｏｐ)フィルタとも呼ばれる。デブロッキングフィルタは、ブロック間の境界に発生したブロック歪曲を除去することができる。ＳＡＯは、コーディングエラーを補償するためにピクセル値に適正オフセット(ｏｆｆｓｅｔ)値を加えることができる。ＡＬＦは、復元された映像と原映像を比較した値に基づいてフィルタリングを実行することができる。フィルタ部１８０を経た復元ブロックは、参照映像バッファ１９０に格納されることができる。
【００５８】
図２は、本発明が適用される映像復号化装置の一実施例に係る構成を示すブロック図である。
【００５９】
図２を参照すると、映像復号化装置２００は、エントロピー復号化部２１０、逆量子化部２２０、逆変換部２３０、イントラ予測部２４０、動き補償部２５０、加算器２５５、フィルタ部２６０、及び参照映像バッファ２７０を含む。
【００６０】
映像復号化装置２００は、符号化器で出力されたビットストリームの入力を受けてイントラモードまたはインターモードに復号化を実行することで、再構成された映像、即ち、復元映像を出力することができる。イントラモードである場合、スイッチがイントラに切り替えられ、インターモードである場合、スイッチがインターに切り替えられることができる。
【００６１】
映像復号化装置２００は、入力されたビットストリームから復元された残差ブロック(ｒｅｃｏｎｓｔｒｕｃｔｅｄ ｒｅｓｉｄｕａｌ ｂｌｏｃｋ)を得て、予測ブロックを生成した後、復元された残差ブロックと予測ブロックを加えて再構成されたブロック、即ち、復元ブロックを生成することができる。
【００６２】
エントロピー復号化部２１０は、入力されたビットストリームを確率分布によってエントロピー復号化し、量子化された係数(ｑｕａｎｔｉｚｅｄ ｃｏｅｆｆｉｃｉｅｎｔ)形態のシンボルを含むシンボルを生成することができる。
【００６３】
エントロピー復号化方法が適用される場合、高い発生確率を有するシンボルに少ない数のビットが割り当てられ、低い発生確率を有するシンボルに多い数のビットが割り当てられてシンボルが表現されることによって、各シンボルに対するビット列の大きさが減少されることができる。
【００６４】
量子化された係数は、逆量子化部２２０で逆量子化され、逆変換部２３０で逆変換され、量子化された係数が逆量子化/逆変換された結果、復元された残差ブロックが生成されることができる。
【００６５】
イントラモードである場合、イントラ予測部２４０は、現在ブロック周辺の既に復号化されたブロックのピクセル値を利用して空間的予測を実行することで、予測ブロックを生成することができる。インターモードである場合、動き補償部２５０は、動きベクトル及び参照映像バッファ２７０に格納されている参照映像を利用して動き補償を実行することによって予測ブロックを生成することができる。
【００６６】
残差ブロックと予測ブロックは、加算器２５５を介して加えられ、加えられたブロックは、フィルタ部２６０を経ることができる。フィルタ部２６０は、デブロッキングフィルタ、ＳＡＯ、ＡＬＦのうち少なくとも一つ以上を復元ブロックまたは復元映像に適用することができる。フィルタ部２６０は、再構成された映像、即ち、復元映像を出力することができる。復元映像は、参照映像バッファ２７０に格納されてインター予測に使われることができる。
【００６７】
図３は、映像を符号化する時、映像の分割構造を概略的に示す。
【００６８】
ＨＥＶＣ(Ｈｉｇｈ Ｅｆｆｉｃｉｅｎｃｙ Ｖｉｄｅｏ Ｃｏｄｉｎｇ)では映像を効率的に分割するために、コーディングユニット(Ｃｏｄｉｎｇ Ｕｎｉｔ；ＣＵ)に符号化を実行する。
【００６９】
図３を参照すると、ＨＥＶＣでは映像３００を最大コーディングユニット(Ｌａｒｇｅｓｔ Ｃｏｄｉｎｇ Ｕｎｉｔ；ＬＣＵ)(以下、ＬＣＵという)単位に順次に分割した後、ＬＣＵ単位に分割構造を決定する。分割構造は、ＬＣＵ３１０内で映像を効率的に符号化するためのコーディングユニット(以下、ＣＵという)の分布を意味し、このような分布は、一つのＣＵをその縦横に半分ずつ減少された４個のＣＵに分割するかどうかによって決定されることができる。分割されたＣＵは、同じ方式に分割されたＣＵに対し、その縦横に半分ずつ減少された４個のＣＵに再帰的に分割されることができる。
【００７０】
このとき、ＣＵの分割は、予め定義された深さまで再帰的に分割されることができる。深さ情報は、ＣＵの大きさを示す情報であって、各ＣＵ毎に格納されている。例えば、ＬＣＵの深さは０であり、ＳＣＵ(Ｓｍａｌｌｅｓｔ Ｃｏｄｉｎｇ Ｕｎｉｔ)の深さは予め定義された最大深さである。ここで、ＬＣＵは、前述したように、最大コーディングユニット大きさを有するコーディングユニットであり、ＳＣＵ(Ｓｍａｌｌｅｓｔ Ｃｏｄｉｎｇ Ｕｎｉｔ)は、最小コーディングユニット大きさを有するコーディングユニットである。
【００７１】
ＬＣＵ３１０から横縦に半分ずつ分割を実行するたびにＣＵの深さは、１ずつ増加する。それぞれの深さ別に、分割を実行しないＣＵの場合は、２Ｎ×２Ｎ大きさを有し、分割を実行するＣＵの場合は、２Ｎ×２Ｎ大きさのＣＵからＮ×Ｎ大きさを有する４個のＣＵに分割される。Ｎの大きさは、深さが１ずつ増加するたびに半分に減少する。
【００７２】
図３を参照すると、最小深さが０であるＬＣＵの大きさは、６４×６４画素であり、最大深さが３であるＳＣＵの大きさは、８×８画素である。このとき、６４×６４画素のＣＵ(ＬＣＵ)は深さ０で表現され、３２×３２画素のＣＵは深さ１で表現され、１６×１６画素のＣＵは深さ２で表現され、８×８画素のＣＵ(ＳＣＵ)は深さ３で表現されることができる。
【００７３】
また、特定ＣＵを分割するかどうかに対する情報は、ＣＵ毎に１ビットの分割情報を介して表現されることができる。この分割情報は、ＳＣＵを除いた全てのＣＵに含まれることができ、例えば、ＣＵを分割しない場合は、分割情報に０を格納することができ、ＣＵを分割する場合は、分割情報に１を格納することができる。
【００７４】
一方、ＬＣＵから分割されたＣＵは、予測のための基本単位である予測ユニット(Ｐｒｅｄｉｃｔｉｏｎ Ｕｎｉｔ；ＰＵまたはＰｒｅｄｉｃｔｉｏｎ Ｂｌｏｃｋ；ＰＢ)と、変換のための基本単位である変換ユニット(Ｔｒａｎｓｆｏｒｍ Ｕｎｉｔ；ＴＵまたはＴｒａｎｓｆｏｒｍ Ｂｌｏｃｋ；ＴＢ)とで構成されることができる。
【００７５】
図４は、コーディングユニット(ＣＵ)が含むことができる予測ユニット(ＰＵ)の形態を示す。
【００７６】
ＬＣＵから分割されたＣＵのうち、それ以上分割されないＣＵは、一つ以上の予測ユニットに分割され、この行為自体も分割(ｐａｒｔｉｔｉｏｎ)(または、パーティション)という。予測ユニット(以下、ＰＵという)は、予測を実行する基本単位であって、スキップ(ｓｋｉｐ)モード、インター(ｉｎｔｅｒ)モード、イントラ(ｉｎｔｒａ)モードのうちいずれか一つに符号化され、各モードによって多様な形態でパーティションされることができる。
【００７７】
図４を参照すると、スキップモードの場合、ＣＵ内でパーティションなく、ＣＵと同じ大きさを有する２Ｎ×２Ｎモード４１０をサポートすることができる。
【００７８】
インターモードの場合、ＣＵ内で８種類のパーティションされた形態、例えば、２Ｎ×２Ｎモード４１０、２Ｎ×Ｎモード４１５、Ｎ×２Ｎモード４２０、Ｎ×Ｎモード４２５、２Ｎ×ｎＵモード４３０、２Ｎ×ｎＤモード４３５、ｎＬ×２Ｎモード４４０、ｎＲ×２Ｎモード４４５をサポートすることができる。
【００７９】
イントラモードの場合、ＣＵ内で２Ｎ×２Ｎモード４１０、Ｎ×Ｎモード４２５をサポートすることができる。
【００８０】
図５は、コーディングユニット(ＣＵ)が含むことができる変換ユニット(ＴＵ)の形態を示す。
【００８１】
変換ユニット(以下、ＴＵという)は、ＣＵ内で空間変換と量子化/逆量子化(スケーリング)過程のために使われる基本単位である。ＴＵは、正方形または長方形の形態を有することができる。ＬＣＵから分割されたＣＵのうち、それ以上分割されないＣＵは、一つまたはそれ以上のＴＵに分割されることができる。
【００８２】
このとき、ＴＵの分割構造は、クワッドツリー(ｑｕａｄ−ｔｒｅｅ)構造である。例えば、図５に示すように、一つのＣＵ５１０がクワッドツリー構造によって一回またはそれ以上分割され、多様な大きさのＴＵで構成されることができる。
【００８３】
一方、ＨＥＶＣでは、Ｈ.２６４/ＡＶＣのように画面内予測(以下、イントラ予測)符号化を実行することができる。このとき、現在ブロックの周辺に位置した周辺ブロックから現在ブロックのイントラ予測モード(または、予測方向性)を誘導して符号化することができる。
【００８４】
前記のように、イントラ予測モードに基づいて予測が実行されることによって取得された信号に対する予測映像は、原映像との差分値を有することができる。このような予測映像と原映像との間の差分値を有する差分映像は、周波数領域変換と量子化を経てエントロピー符号化されることができる。このとき、周波数領域変換の符号化効率を上げるために、整数変換、整数離散余弦変換(Ｄｉｓｃｒｅｔｅ Ｃｏｓｉｎｅ Ｔｒａｎｓｆｏｒｍ；ＤＣＴ)、整数離散正弦変換(Ｄｉｓｃｒｅｔｅ Ｓｉｎｅ Ｔｒａｎｓｆｏｒｍ；ＤＳＴ)、またはイントラ予測モード従属的なＤＣＴ/ＤＳＴなどをブロック大きさによって選択的、適応的に適用することができる。
【００８５】
また、文書映像またはパワーポイントのプレゼンテイション映像のようなスクリーンコンテンツ(ｓｃｒｅｅｎ ｃｏｎｔｅｎｔｓ)で符号化効率を上げるために、変換スキップ(Ｔｒａｎｓｆｏｒｍ ＳＫＩＰ)アルゴリズムを適用することができる。
【００８６】
変換スキップアルゴリズムを適用する場合、符号化器では、原映像と予測映像との間の差分値を有する差分映像(残余ブロック)を周波数変換過程無く量子化して残余ブロックに対してエントロピー符号化を実行する。そして、復号化器では、残余ブロックに対してエントロピー復号化し、逆量子化(スケーリング)を実行することで復元された残余ブロックを生成する。したがって、このような変換スキップアルゴリズムが適用されたブロックは、周波数変換/逆変換過程を飛び越えるようになる。
【００８７】
量子化/逆量子化過程では、映像の主観的画質向上のために、ブロック内の変換係数の位置によってスケールファクタ(ｓｃａｌｅ ｆａｃｔｏｒ)を異なるように適用することができる。それに対し、量子化/逆量子化を実行する時、ブロック内の変換係数の位置に関係なくスケールファクタを同じように適用する方法がある。このような方法の適用可否は、ビットストリームのＳＰＳ(Ｓｅｑｕｅｎｃｅ Ｐａｒａｍｅｔｅｒ Ｓｅｔ)またはＰＰＳ(Ｐｉｃｔｕｒｅ Ｐａｒａｍｅｔｅｒ Ｓｅｔ)を介してシグナリングされることができる。
【００８８】
前記過程の一実施例として、変換係数のスケーリング過程(Ｓｃａｌｉｎｇ Ｐｒｏｃｅｓｓ ｆｏｒ ｔｒａｎｓｆｏｒｍ ｃｏｅｆｆｉｃｉｅｎｔｓ)は、下記のように実行されることができる。
【００８９】
変換係数のスケーリング過程
【００９０】
ここでの入力は、下記の通りである。
【００９１】
−現在変換ブロックの幅Ｗｉｄｔｈ；ｎＷ
【００９２】
−現在変換ブロックの高さＨｅｉｇｈｔ；ｎＨ
【００９３】
−要素(ｅｌｅｍｅｎｔ)ｃｉｊを有する変換係数の配列；(ｎＷ×ｎＨ)ａｒｒａｙ ｄ  
【００９４】
−現在ブロックの輝度信号及び色差信号に対するインデックス；ｃＩｄｘ
【００９５】
もし、ｃＩｄｘが‘０’の場合、輝度信号を意味し、ｃＩｄｘが‘１’であり、またはｃＩｄｘが‘２’の場合、色差信号を意味する。また、ｃＩｄｘが‘１’の場合、色差信号でＣｂを意味し、ｃＩｄｘが‘２’の場合、色差信号でＣｒを意味する。
【００９６】
−量子化パラメータ；ｑＰ
【００９７】
ここでの出力は、下記の通りである。
【００９８】
−スケールされた変換係数に対する配列；(ｎＷ×ｎＨ)ａｒｒａｙ ｄｉｊ
【００９９】
変数ｌｏｇ２ＴｒＳｉｚｅは、ｌｏｇ２ＴｒＳｉｚｅ＝(Ｌｏｇ２(ｎＷ)＋Ｌｏｇ２(ｎＨ))>>１を介して誘導される。変数ｓｈｉｆｔは、ｃＩｄｘによって異なるように誘導される。ｃＩｘが‘０’の場合(輝度信号の場合)、ｓｈｉｆｔ＝ＢｉｔＤｅｐｔｈＹ＋ｌｏｇ２ＴｒＳｉｚｅ−５から誘導され、その以外の場合(色差信号の場合)、ｓｈｉｆｔ＝ＢｉｔＤｅｐｔｈＣ＋ｌｏｇ２ＴｒＳｉｚｅ−５から誘導される。ここで、ＢｉｔＤｅｐｔｈＹとＢｉｔＤｅｐｔｈＣは、現在映像に対するサンプルのビット数(例えば、８ビット)を意味する。
【０１００】
スケーリング変数に対する配列ｌｅｖｅｌＳｃａｌｅ[]は、以下の数式１の通りである。
【０１０１】
【数１】
2020108155.tif 000003
【０１０２】
スケールされた変換係数は、下記の過程を介して計算される。
【０１０３】
まず、スケールファクタｍｉｊは、下記の過程を介して誘導される。
【０１０４】
−もし、ｓｃａｌｉｎｇ_ｌｉｓｔ_ｅｎａｂｌｅ_ｆｌａｇが‘０’の場合、ｍｉｊは、以下の数式２のように誘導される。
【０１０５】
【数２】
2020108155.tif 000004
【０１０６】
−その以外の場合、ｍｉｊは、以下の数式３のように誘導される。
【０１０７】
【数３】
2020108155.tif 000005
【０１０８】
ここで、ＳｉｚｅＩＤは、変換ブロックの大きさによって以下の表１を介して誘導され、ＲｅｆＭａｔｒｉｘＩＤ、そしてｔｒａｆｏＴｙｐｅは、以下の数式４及び数式５から各々誘導される。また、数式４において、ｓｃａｌｉｎｇ_ｌｉｓｔ_ｐｒｅｄ_ｍａｔｒｉｘ_ｉｄ_ｄｅｌｔａは、ビットストリームのＳＰＳ(Ｓｅｑｕｅｎｃｅ Ｐａｒａｍｅｔｅｒ Ｓｅｔ)またはＰＰＳ(Ｐｉｃｔｕｒｅ Ｐａｒａｍｅｔｅｒ Ｓｅｔ)を介してシグナリングされる。
【０１０９】
【数４】
2020108155.tif 000006
【０１１０】
【数５】
2020108155.tif 000007
【０１１１】
表１は、変換ブロックの大きさによるＳｉｚｅＩＤ値を示す一例である。
【０１１２】
【表１】
2020108155.tif 000008
【０１１３】
次に、スケールされた変換係数ｄｉｊは、以下の数式６から誘導される。
【０１１４】
【数６】
2020108155.tif 000009
【０１１５】
一方、前述したように、変換スキップアルゴリズムが適用されたブロック(以下、変換スキップブロックという)は、周波数変換過程を実行しない。したがって、既存の周波数変換過程を実行したブロックと変換スキップブロックは、互いに異なる変換係数特性を有することができる。即ち、既存の周波数変換過程を実行したブロックに適用したスケーリング方法をそのまま変換スキップブロックに適用する場合、符号化効率を減少させることができる。
【０１１６】
したがって、本発明では、変換スキップブロックの場合を考慮してスケーリングを実行する方法を提供する。
【０１１７】
符号化器と復号化器で映像の主観的画質を向上させるために量子化行列(基本行列及び非基本行列)を使用する場合、ブロック内の変換係数(ｔｒａｎｓｆｏｒｍ ｃｏｅｆｆｉｃｉｅｎｔ)の位置によって量子化行列から誘導されたスケールファクタ(ｓｃａｌｅ ｆａｃｔｏｒ)が異なるように適用されることができる。このような方法は、ブロックの変換(ｔｒａｎｓｆｏｒｍ)時、残余ブロックのエネルギーがブロックの左側上端位置(低周波数領域)に圧縮される特性を利用することで、一般的に人間の目に敏感な低周波数領域よりは人間の目に敏感でない高周波数領域に対してより大きい量子化ステップ大きさ(ｓｔｅｐ ｓｉｚｅ)で量子化を実行する。このような方法を介して映像符号化時、人間の目に敏感な領域に対して主観的画質を向上させることができる。
【０１１８】
しかし、変換スキップが適用された場合、残余ブロックは、周波数領域変換/逆変換を実行しないため、ブロック内で低周波数領域側に圧縮されない。このような場合、既存の周波数領域に使用する量子化/逆量子化方法を適用すると、映像またはブロック内の歪曲が激しくなるという短所がある。したがって、映像内で量子化行列を使用する場合、周波数領域変換/逆変換を実行しないブロック(変換スキップブロック)に対しては映像またはブロック内の歪曲を最小化することができるスケーリング(量子化/逆量子化)方法が必要である。例えば、変換スキップブロックに対しては量子化行列が適用されないようにする方法がある。このような方法は、ブロック内の変換係数の位置に関係なく基本スケールファクタを同じように適用することができる。
【０１１９】
[実施例１]変換スキップブロックに対してブロック内の変換係数の位置に関係なくスケールファクタを同じように適用する方法及び装置
【０１２０】
図６は、本発明の一実施例に係る残余信号(または、変換係数)に対するスケーリング方法を示す流れ図である。
【０１２１】
図６の方法は、前述した図１の符号化装置または前述した図２の復号化装置で実行されることができる。より具体的には、図１または図２の量子化部または逆量子化部で実行されることができる。図６の実施例では、説明の便宜のために、図６の方法が符号化装置で実行されると説明するが、これは復号化装置でも同じように適用されることができる。
【０１２２】
図６を参照すると、現在ブロックの残余信号(または、変換係数)に対するスケーリング(量子化または逆量子化)時に適用されるスケールファクタ(ｍｉｊ)は、現在ブロックが変換スキップブロックであるかどうかによって誘導されることができる。
【０１２３】
符号化装置は、現在ブロックが変換スキップブロックであるかどうかを判断する(Ｓ６００)。
【０１２４】
このとき、現在ブロックが変換スキップブロックであるかどうかは、変換スキップブロックであるかどうかを指示する情報を介して判断されることができる。例えば、変換スキップブロックであるかどうかを指示する情報は、フラグ(ｔｒａｎｓＳｋｉｐＦｌａｇ)である。このようなフラグｔｒａｎｓＳｋｉｐＦｌａｇ値は、ビットストリーム内の変換スキップブロックに対する情報をエントロピー復号化して誘導されることができる。もし、現在ブロックが変換スキップブロックの場合、ｔｒａｎｓＳｋｉｐＦｌａｇ値が１であり、現在ブロックが変換スキップブロックでない場合、ｔｒａｎｓＳｋｉｐＦｌａｇ値が０である。
【０１２５】
もし、現在ブロックが変換スキップブロックの場合(例えば、ｔｒａｎｓＳｋｉｐＦｌａｇ値が１の場合)、符号化装置は、現在ブロック内の残余信号(または、変換係数)の位置に関係なくスケールファクタ(ｍｉｊ)を誘導する(Ｓ６１０)。
【０１２６】
このとき、図６に示すように、スケールファクタ(ｍｉｊ)は、所定の基本スケールファクタ値(Ｔ)に設定されることができる。例えば、所定の基本スケールファクタ値(Ｔ)は、１６である。
【０１２７】
それに対し、現在ブロックが変換スキップブロックでない場合(例えば、ｔｒａｎｓＳｋｉｐＦｌａｇ値が０の場合)、符号化装置は、現在ブロック内の残余信号(または、変換係数)の位置に基づいてスケールファクタ(ｍｉｊ)を誘導する(Ｓ６２０)。
【０１２８】
このとき、スケールファクタ(ｍｉｊ)は、量子化行列を利用して現在ブロック内の残余信号(または、変換係数)の位置によって異なるように設定されることができ、図６に示すように、以下の数式７のように誘導されることができる。
【０１２９】
【数７】
2020108155.tif 000010
【０１３０】
ここで、ＳｃａｌｉｎｇＦａｃｔｏｒは、スケールファクタを格納している配列である。ＳｉｚｅＩＤは、現在ブロック(変換ブロックまたは量子化行列)の大きさを示すための値であり、前述した表１のように現在ブロック(変換ブロック)の大きさによってＳｉｚｅＩＤ値が誘導されることができる。ＲｅｆＭａｔｒｉｘＩＤとｔｒａｆｏＴｙｐｅは、以下の数式８及び数式９から各々誘導されることができる。ｎＷは、現在ブロックの幅を意味する。
【０１３１】
【数８】
2020108155.tif 000011
【０１３２】
ここで、ＭａｔｒｉｘＩＤ値は、予測モード及び色成分(ｃｏｌｏｒ ｃｏｍｐｏｎｅｎｔ)による量子化行列の種類を意味し、一例として、以下の表２のようにＭａｔｒｉｘＩＤ値が誘導されることができる。ｓｃａｌｉｎｇ_ｌｉｓｔ_ｐｒｅｄ_ｍａｔｒｉｘ_ｉｄ_ｄｅｌｔａは、ビットストリームのＳＰＳ(Ｓｅｑｕｅｎｃｅ Ｐａｒａｍｅｔｅｒ Ｓｅｔ)またはＰＰＳ(Ｐｉｃｔｕｒｅ Ｐａｒａｍｅｔｅｒ Ｓｅｔ)を介してシグナリングされる。
【０１３３】
【数９】
2020108155.tif 000012
【０１３４】
ここで、ｎＷは、現在ブロックの幅を意味し、ｎＨは、現在ブロックの高さを意味する。
【０１３５】
表２は、予測モード及び色成分によるＭａｔｒｉｘＩＤ値を示す。
【０１３６】
【表２】
2020108155.tif 000013
【０１３７】
図７は、本発明の他の実施例に係る残余信号(または、変換係数)に対するスケーリング方法を示す流れ図である。
【０１３８】
図７の方法は、前述した図１の符号化装置または前述した図２の復号化装置で実行されることができる。より具体的には、図１または図２の量子化部または逆量子化部で実行されることができる。図７の実施例では、説明の便宜のために、図７の方法が符号化装置で実行されると説明するが、これは復号化装置でも同じように適用されることができる。
【０１３９】
図７を参照すると、現在ブロックの残余信号(または、変換係数)に対するスケーリング(量子化または逆量子化)時に適用されるスケールファクタ(ｍｉｊ)は、現在ブロックが変換スキップブロックであるかどうか、及び量子化行列の使用可否によって誘導されることができる。
【０１４０】
符号化装置は、現在ブロックが量子化行列を使用するかどうか、及び変換スキップブロックであるかどうかを判断する(Ｓ７００)。
【０１４１】
このとき、現在ブロックが量子化行列を使用するかどうかは、量子化行列の使用可否を指示する情報を介して判断することができる。例えば、量子化行列の使用可否を指示する情報は、フラグ(ｓｃａｌｉｎｇ_ｌｉｓｔ_ｅｎａｂｌｅ_ｆｌａｇ)である。このようなフラグｓｃａｌｉｎｇ_ｌｉｓｔ_ｅｎａｂｌｅ_ｆｌａｇ値は、ビットストリーム内の量子化行列の使用に対する情報をエントロピー復号化して誘導されることができる。もし、現在ブロックが量子化行列を使用する場合、ｓｃａｌｉｎｇ_ｌｉｓｔ_ｅｎａｂｌｅ_ｆｌａｇ値は１であり、現在ブロックが量子化行列を使用しない場合、ｓｃａｌｉｎｇ_ｌｉｓｔ_ｅｎａｂｌｅ_ｆｌａｇ値は０である。
【０１４２】
また、現在ブロックが変換スキップブロックであるかどうかは、変換スキップブロックであるかどうかを指示する情報を介して判断されることができる。例えば、変換スキップブロックであるかどうかを指示する情報は、フラグ(ｔｒａｎｓＳｋｉｐＦｌａｇ)である。このようなフラグｔｒａｎｓＳｋｉｐＦｌａｇ値は、ビットストリーム内の変換スキップブロックに対する情報をエントロピー復号化して誘導されることができる。もし、現在ブロックが変換スキップブロックの場合、ｔｒａｎｓＳｋｉｐＦｌａｇ値が１であり、現在ブロックが変換スキップブロックでない場合、ｔｒａｎｓＳｋｉｐＦｌａｇ値が０である。
【０１４３】
もし、現在ブロックが変換スキップブロックであり、または量子化行列を使用しない場合(例えば、ｔｒａｎｓＳｋｉｐＦｌａｇ＝＝１ ｏｒ ｓｃａｌｉｎｇ_ｌｉｓｔ_ｅｎａｂｌｅ_ｆｌａｇ＝＝０)、符号化装置は、現在ブロック内の残余信号(または、変換係数)の位置に関係なくスケールファクタ(ｍｉｊ)を誘導する(Ｓ７１０)。
【０１４４】
このとき、図７に示すように、スケールファクタ(ｍｉｊ)は、所定の基本スケールファクタ値(Ｔ)に設定されることができる。例えば、所定の基本スケールファクタ値(Ｔ)は、１６である。
【０１４５】
その以外の場合(現在ブロックが変換スキップブロックでない、且つ量子化行列を使用する場合)、符号化装置は、現在ブロック内の残余信号(または、変換係数)の位置に基づいてスケールファクタ(ｍｉｊ)を誘導する(Ｓ７２０)。
【０１４６】
このとき、スケールファクタ(ｍｉｊ)は、量子化行列を利用して現在ブロック内の残余信号(または、変換係数)の位置によって異なるように設定されることができ、図７のステップＳ７２０に示す数式のように誘導されることができる。ステップＳ７２０に示す数式を介して誘導されるスケールファクタ(ｍｉｊ)は、図６(ステップＳ６２０)での説明と同じであるため、ここでは説明を省略する。
【０１４７】
図６及び図７を介して前述したように、現在ブロック(現在符号化または復号化対象ブロック)が変換スキップブロックの場合、現在ブロック内の係数(または、信号)の位置に関係なく現在ブロック(変換スキップブロック)に対して所定の値(Ｔ)を有するスケールファクタを適用した。このとき、本発明の実施例によるスケールファクタ値は、該当ブロックに適用される多様な符号化パラメータによって異なるように設定されることができる。  
【０１４８】
一例として、該当ブロックに適用されるスケールファクタ値は、量子化行列の使用可否を示すパラメータ(例えば、ｓｃａｌｉｎｇ_ｌｉｓｔ_ｅｎａｂｌｅ_ｆｌａｇ)値によって下記のように設定されることができる。
【０１４９】
−量子化行列を使用する場合(例えば、ｓｃａｌｉｎｇ_ｌｉｓｔ_ｅｎａｂｌｅ_ｆｌａｇ＝＝１)、基本スケールファクタ値は、‘Ｔ１’に設定(ｍｉｊ＝Ｔ１)
【０１５０】
−量子化行列を使用しない場合(例えば、ｓｃａｌｉｎｇ_ｌｉｓｔ_ｅｎａｂｌｅ_ｆｌａｇ＝＝０)、基本スケールファクタ値は、‘Ｔ２’に設定(ｍｉｊ＝Ｔ２)
【０１５１】
ここで、Ｔ１及び/またはＴ２値は、符号化器が決定してシグナリングしてもよく、予め決められた値を使用してもよい。ビットストリームを介してシグナリングされる場合、復号化器は、ビットストリームをパーシングしてＴ１及び/またはＴ２値を求めることができる。
【０１５２】
他の例として、該当ブロックに適用されるスケールファクタ値は、該当ブロックの信号に対する色相特性を誘導することができる情報(例えば、色相成分インデックスｃＩｄｘ)値によって下記のように設定されることができる。色相成分インデックスｃＩｄｘは、その値によって輝度信号(Ｙ信号)または色差信号(Ｃｂ信号またはＣｒ信号)を示す。
【０１５３】
−例１：該当ブロックの信号が明るさ信号(輝度信号)であるかどうかによって基本スケールファクタ値を‘Ｔｙ’または‘Ｔｃ’に設定する。例えば、明るさ信号の場合、基本スケールファクタ値を‘Ｔｙ’に設定し、明るさ信号でない場合(色差信号の場合)、基本スケールファクタ値を‘Ｔｃ’に設定する。
【０１５４】
−例２：該当ブロックの色相成分別に基本スケールファクタ値を設定する。例えば、輝度信号(Ｙ信号)の場合、基本スケールファクタ値を‘Ｔｙ’に設定し、色差信号がＣｂ信号の場合、基本スケールファクタ値を‘Ｔｃｂ’に設定し、色差信号がＣｒ信号の場合、基本スケールファクタ値を‘Ｔｃｒ’に設定する。
【０１５５】
ここで、Ｔｙ、Ｔｃ、Ｔｃｂ及び/またはＴｃｒ値は、符号化器が決定してシグナリングしてもよく、予め決められた値を使用してもよい。ビットストリームを介してシグナリングされる場合、復号化器は、ビットストリームをパーシングしてＴｙ、Ｔｃ、Ｔｃｂ及び/またはＴｃｒ値を求めることができる。
【０１５６】
前述した本発明の実施例による符号化パラメータによって基本スケールファクタを決定する方法は、独立的に適用されてもよく、組み合わせて適用されてもよいが、同じ変換スキップブロックに対してはブロック(符号化または復号化対象ブロック)内の係数(または、信号)の位置に関係なく常に同じスケールファクタ値が適用されなければならない。
【０１５７】
前述した本発明の実施例を反映した変換係数のスケーリング過程(Ｓｃａｌｉｎｇ Ｐｒｏｃｅｓｓ ｆｏｒ ｔｒａｎｓｆｏｒｍ ｃｏｅｆｆｉｃｉｅｎｔｓ)は、下記のように実行されることができる。
【０１５８】
変換係数のスケーリング過程
【０１５９】
ここでの入力は、下記の通りである。
【０１６０】
−現在変換ブロックの幅Ｗｉｄｔｈ；ｎＷ
【０１６１】
−現在変換ブロックの高さＨｅｉｇｈｔ；ｎＨ
【０１６２】
−要素(ｅｌｅｍｅｎｔ)ｃｉｊを有する変換係数の配列；(ｎＷ×ｎＨ)ａｒｒａｙ ｄ  
【０１６３】
−現在変換ブロックの変換スキップ適用可否情報
【０１６４】
−現在ブロックの輝度信号及び色差信号に対するインデックス；ｃＩｄｘ
【０１６５】
もし、ｃＩｄｘが‘０’の場合、輝度信号を意味し、ｃＩｄｘが‘１’であり、またはｃＩｄｘが‘２’の場合、色差信号を意味する。また、ｃＩｄｘが‘１’の場合、色差信号でＣｂを意味し、ｃＩｄｘが‘２’の場合、色差信号でＣｒを意味する。
【０１６６】
−量子化パラメータ；ｑＰ
【０１６７】
ここでの出力は、下記の通りである。
【０１６８】
−スケールされた変換係数に対する配列；(ｎＷ×ｎＨ)ａｒｒａｙ ｄｉｊ
【０１６９】
変数ｌｏｇ２ＴｒＳｉｚｅは、ｌｏｇ２ＴｒＳｉｚｅ＝(Ｌｏｇ２(ｎＷ)＋Ｌｏｇ２(ｎＨ))>>１を介して誘導される。変数ｓｈｉｆｔは、ｃＩｄｘによって異なるように誘導される。ｃＩｘが‘０’の場合(輝度信号の場合)、ｓｈｉｆｔ＝ＢｉｔＤｅｐｔｈＹ＋ｌｏｇ２ＴｒＳｉｚｅ−５から誘導され、その以外の場合(色差信号の場合)、ｓｈｉｆｔ＝ＢｉｔＤｅｐｔｈＣ＋ｌｏｇ２ＴｒＳｉｚｅ−５から誘導される。ここで、ＢｉｔＤｅｐｔｈＹとＢｉｔＤｅｐｔｈＣは、現在映像に対するサンプルのビット数(例えば、８ビット)を意味する。
【０１７０】
スケーリング変数の配列ｌｅｖｅｌＳｃａｌｅ[]は、以下の数式１０の通りである。
【０１７１】
【数１０】
2020108155.tif 000014
【０１７２】
スケールされた変換係数は、下記の過程を介して計算される。
【０１７３】
まず、スケールファクタｍｉｊは、下記の過程を介して誘導される。
【０１７４】
−もし、ｓｃａｌｉｎｇ_ｌｉｓｔ_ｅｎａｂｌｅ_ｆｌａｇが‘０’であり、または現在変換ブロックが変換スキップブロックの場合、ｍｉｊは、以下の数式１１のように誘導される。
【０１７５】
【数１１】
2020108155.tif 000015
【０１７６】
−その以外の場合、ｍｉｊは、以下の数式１２のように誘導される。
【０１７７】
【数１２】
2020108155.tif 000016
【０１７８】
ここで、ＳｉｚｅＩＤは、ブロックの大きさによって前述した表１を介して誘導され、ＲｅｆＭａｔｒｉｘＩＤ、そしてｔｒａｆｏＴｙｐｅは、以下の数式１３及び数式１４から各々誘導される。また、数式１３において、ｓｃａｌｉｎｇ_ｌｉｓｔ_ｐｒｅｄ_ｍａｔｒｉｘ_ｉｄ_ｄｅｌｔａは、ビットストリームのＳＰＳ(Ｓｅｑｕｅｎｃｅ Ｐａｒａｍｅｔｅｒ Ｓｅｔ)を介してシグナリングされる。
【０１７９】
【数１３】
2020108155.tif 000017
【０１８０】
【数１４】
2020108155.tif 000018
【０１８１】
次に、スケールされた変換係数ｄｉｊは、以下の数式１５から誘導される。
【０１８２】
【数１５】
2020108155.tif 000019
【０１８３】
一方、前記のように、スケーリング過程を介してスケールされた変換係数は、逆変換過程を実行する。このとき、変換スキップが適用された現在変換ブロックは、逆変換過程を実行せずに、下記のような‘ｓｈｉｆｔ’演算過程のみを実行する。
【０１８４】
１．もし、現在ブロックのｃＩｄｘが‘０’の場合(輝度信号の場合)、ｓｈｉｆｔ＝１３−ＢｉｔＤｅｐｔｈＹであり、その以外の場合(色差信号の場合)、ｓｈｉｆｔ＝１３−ＢｉｔＤｅｐｔｈＣである。
【０１８５】
２．残余ブロックに対する配列ｒｉｊ(ｉ＝０..(ｎＷ)−１,ｊ＝０..(ｎＨ)−１)は、下記のように設定する。
【０１８６】
もし、ｓｈｉｆｔが‘０’より大きい場合、ｒｉｊ＝(ｄｉｊ＋(１<<(ｓｈｉｆｔ−１)))>>ｓｈｉｆｔであり、その以外の場合、ｒｉｊ＝(ｄｉｊ<<(−ｓｈｉｆｔ)である。
【０１８７】
ここで、ｄｉｊは、スケールされた変換係数に対する配列であり、ｒｉｊは、スケールされた変換係数を逆変換して求められた残余ブロックに対する配列を意味する。
【０１８８】
前述したスケールされた変換係数の逆変換過程を反映した実施例として、スケールされた変換係数のための変換過程(Ｔｒａｎｓｆｏｒｍａｔｉｏｎ ｐｒｏｃｅｓｓ ｆｏｒ ｓｃａｌｅｄ ｔｒａｎｓｆｏｒｍ ｃｏｅｆｆｉｃｉｅｎｔｓ)部分は、下記のように実行されることができる。
【０１８９】
スケールされた変換係数のための変換過程
【０１９０】
ここでの入力は、下記の通りである。
【０１９１】
−現在変換ブロックの幅Ｗｉｄｔｈ；ｎＷ
【０１９２】
−現在変換ブロックの高さＨｅｉｇｈｔ；ｎＨ
【０１９３】
−要素(ｅｌｅｍｅｎｔ)ｄｉｊを有するスケールされた変換係数の配列；(ｎＷ×ｎＨ)ａｒｒａｙ ｄ
【０１９４】
−現在ブロックに対する変換スキップ適用可否情報
【０１９５】
−現在ブロックの輝度信号及び色差信号に対するインデックス；ｃＩｄｘ
【０１９６】
もし、ｃＩｄｘが‘０’の場合、輝度信号を意味し、ｃＩｄｘが‘１’であり、またはｃＩｄｘが‘２’の場合、色差信号を意味する。また、ｃＩｄｘが‘１’の場合、色差信号でＣｂを意味し、ｃＩｄｘが‘２’の場合、色差信号でＣｒを意味する。
【０１９７】
ここでの出力は、下記の通りである。
【０１９８】
−スケールされた変換係数を逆変換して求められた残余ブロックに対する配列；(ｎＷ×ｎＨ)ａｒｒａｙ ｒ
【０１９９】
現在ブロックに対する符号化モード(ＰｒｅｄＭｏｄｅ)が画面内予測モード(Ｉｎｔｒａ)であり、Ｌｏｇ２(ｎＷ＊ｎＨ)値が‘４’であり、ｃＩｄｘ値が‘０’の場合、輝度信号の画面内予測方向モード(イントラ予測モード)によって、変数ｈｏｒｉｚＴｒＴｙｐｅとｖｅｒｔＴｒＴｙｐｅは、以下の表３を介して求められる。もし、その以外の場合、変数ｈｏｒｉｚＴｒＴｙｐｅとｖｅｒｔＴｒＴｙｐｅは、‘０’に設定する。
【０２００】
表３は、イントラ予測モードによるｈｏｒｉｚＴｒＴｙｐｅとｖｅｒｔＴｒＴｙｐｅ値の一例を示す。
【０２０１】
【表３】
2020108155.tif 000020
【０２０２】
現在ブロックに対する残余信号は、下記のような順序に求められる。
【０２０３】
まず、もし、現在ブロックに対する変換スキップが適用された場合は、下記を適用する。
【０２０４】
１．もし、ｃＩｄｘが‘０’の場合、ｓｈｉｆｔ＝１３−ＢｉｔＤｅｐｔｈＹであり、その以外の場合、ｓｈｉｆｔ＝１３−ＢｉｔＤｅｐｔｈＣである。
【０２０５】
２．残余ブロックに対する配列ｒｉｊ(ｉ＝０..(ｎＷ)−１,ｊ＝０..(ｎＨ)−１)は、下記のように設定する。
【０２０６】
−もし、ｓｈｉｆｔが‘０’より大きい場合、ｒｉｊ＝(ｄｉｊ＋(１<<(ｓｈｉｆｔ−１)))>>ｓｈｉｆｔであり、その以外の場合、ｒｉｊ＝(ｄｉｊ<<(−ｓｈｉｆｔ)である。
【０２０７】
もし、現在ブロックに対する変換スキップが適用されない場合は、下記を適用する。
【０２０８】
１．変数ｈｏｒｉｚＴｒＴｙｐｅとｖｅｒｔＴｒＴｙｐｅ値を有してスケールされた変換係数に対する逆変換過程を実行する。まず、現在ブロックの大きさ(ｎＷ,ｎＨ)とスケールされた変換係数配列(ｎＷ×ｎＨ ａｒｒａｙ ｄ)、変数ｈｏｒｉｚＴｒＴｙｐｅの入力を受けて水平方向に１次元逆変換を実行することで、配列(ｎＷ×ｎＨ ａｒｒａｙ ｅ)を出力する。
【０２０９】
２．次に、配列(ｎＷ×ｎＨ ａｒｒａｙ ｅ)の入力を受けて配列(ｎＷ×ｎＨ ａｒｒａｙ ｇ)を以下の数式１６のように誘導する。
【０２１０】
【数１６】
2020108155.tif 000021
【０２１１】
３．次に、現在ブロックの大きさ(ｎＷ,ｎＨ)と配列(ｎＷ×ｎＨ ａｒｒａｙ ｇ)、変数ｖｅｒｔＴｒＴｙｐｅの入力を受けて垂直方向に１次元逆変換を実行する。
【０２１２】
４．次に、ｃＩｄｘによって残余ブロックに対する配列(ｎＷ×ｎＨ)ａｒｒａｙ ｒを以下の数式１７のように設定する。
【０２１３】
【数１７】
2020108155.tif 000022
【０２１４】
ここで、ｓｈｉｆｔは、ｃＩｄｘが‘０’の場合、ｓｈｉｆｔ＝２０−ＢｉｔＤｅｐｔｈＹであり、その以外の場合、ｓｈｉｆｔ＝２０−ＢｉｔＤｅｐｔｈＣ値を有する。ＢｉｔＤｅｐｔｈは、現在映像に対するサンプルのビット数(例えば、８ビット)を意味する。  
【０２１５】
前述したような変換係数のスケーリング過程及びスケールされた変換係数のための変換過程を実行することによって、復元された残余ブロックを生成することができる。そして、復元された残余ブロックに、イントラ予測またはインター予測を介して生成された予測ブロックを加算することによって、復元ブロックを生成することができる。このとき、復元ブロックは、ループフィルタが適用されたブロックであってもよく、ループフィルタが適用されないブロックであってもよい。
【０２１６】
以下、本発明では、変換スキップブロックであるかどうかによって誘導される基本スケールファクタをシグナリングする方法を提供する。
【０２１７】
本発明の一実施例によると、変換スキップブロックであるかどうかによって誘導される基本スケールファクタは、ＳＰＳ(Ｓｅｑｕｅｎｃｅ Ｐａｒａｍｅｔｅｒ Ｓｅｔ)を介してシグナリングされることができる。
【０２１８】
表４は、本発明の一実施例による基本スケールファクタ情報をシグナリングするためのＳＰＳシンタックスの一例を示す。
【０２１９】
【表４】
2020108155.tif 000023
【０２２０】
表４を参照すると、ｔｒａｎｓｆｏｒｍ_ｓｋｉｐ_ｅｎａｂｌｅｄ_ｆｌａｇは、現在シーケンスに変換スキップアルゴリズムを使用するかどうかを示す。
【０２２１】
もし、変換スキップアルゴリズムが使われる場合、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｙ_ｍｉｎｕｓ１６、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｂ_ｍｉｎｕｓ１６、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｒ_ｍｉｎｕｓ１６がシグナリングされる。ここで、この値は、正数または負数符号を有する形態で符号化(ｓｅ(ｖ))されることができる。または、この値は、０と正数符号を有する形態で符号化(ｕｅ(ｖ))されることができる。
【０２２２】
ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｙ_ｍｉｎｕｓ１６は、輝度信号に対するスケールファクタを意味する。例えば、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｙ_ｍｉｎｕｓ１６値が‘０’の場合、輝度信号に対するスケールファクタは、前記‘０’に‘１６’を加えて‘１６’値を有する。
【０２２３】
ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｂ_ｍｉｎｕｓ１６は、色差信号Ｃｂに対するスケールファクタを意味し、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｒ_ｍｉｎｕｓ１６は、色差信号Ｃｒに対するスケールファクタを意味する。
【０２２４】
これと関連して、輝度信号または色差信号に対するスケールファクタは、以下の数式１８乃至数式２０のように誘導されることができる。
【０２２５】
ここで、基本スケールファクタＦｌａｔＳｃａｌｉｎｇＦａｃｔｏｒ[ｃＩｄｘ]は、輝度信号と色差信号に対するスケールファクタを格納している。例えば、色相成分インデックスｃＩｄｘが０の場合は輝度(Ｙ)信号、１の場合はＣｂ色差信号、２の場合はＣｒ色差信号を指示することができる。また、ＦｌａｔＳｃａｌｉｎｇＦａｃｔｏｒ[ｃＩｄｘ]値は、任意の値の範囲を有することができ、一例として、８ビット信号の場合、‘−１５’から‘２５５−１６’の値を有することができる。
【０２２６】
輝度信号に対する基本スケールファクタは、数式１８のように誘導されることができる。
【０２２７】
【数１８】
2020108155.tif 000024
【０２２８】
Ｃｂ色差信号に対する基本スケールファクタは、数式１９のように誘導されることができる。
【０２２９】
【数１９】
2020108155.tif 000025
【０２３０】
Ｃｒ色差信号に対する基本スケールファクタは、数式２０のように誘導されることができる。
【０２３１】
【数２０】
2020108155.tif 000026
【０２３２】
前述した本発明の一実施例による変換スキップブロックであるかどうかによって誘導される基本スケールファクタをシグナリングする方法を反映することで、変換係数のスケーリング過程(Ｓｃａｌｉｎｇ Ｐｒｏｃｅｓｓ ｆｏｒ ｔｒａｎｓｆｏｒｍ ｃｏｅｆｆｉｃｉｅｎｔｓ)を下記のように実行することができる。
【０２３３】
変換係数のスケーリング過程
【０２３４】
ここでの入力は、下記の通りである。
【０２３５】
−現在変換ブロックの幅Ｗｉｄｔｈ；ｎＷ
【０２３６】
−現在変換ブロックの高さＨｅｉｇｈｔ；ｎＨ
【０２３７】
−要素(ｅｌｅｍｅｎｔ)ｃｉｊを有する変換係数の配列；(ｎＷ×ｎＨ)ａｒｒａｙ ｄ  
【０２３８】
−現在変換ブロックの変換スキップ適用可否情報；ｔｒａｎｓＳｋｉｐＦｌａｇ
【０２３９】
ｔｒａｎｓＳｋｉｐＦｌａｇ値が１の場合、現在ブロックに変換スキップが適用されたことを示し、ｔｒａｎｓＳｋｉｐＦｌａｇ値が０の場合、現在ブロックに変換スキップが適用されないことを示す。
【０２４０】
−現在ブロックの輝度信号及び色差信号に対するインデックス；ｃＩｄｘ
【０２４１】
もし、ｃＩｄｘが‘０’の場合、輝度信号を意味し、ｃＩｄｘが‘１’であり、またはｃＩｄｘが‘２’の場合、色差信号を意味する。また、ｃＩｄｘが‘１’の場合、色差信号でＣｂを意味し、ｃＩｄｘが‘２’の場合、色差信号でＣｒを意味する。
【０２４２】
−量子化パラメータ；ｑＰ
【０２４３】
ここでの出力は、下記の通りである。
【０２４４】
−スケールされた変換係数に対する配列；(ｎＷ×ｎＨ)ａｒｒａｙ ｄｉｊ
【０２４５】
変数ｌｏｇ２ＴｒＳｉｚｅは、ｌｏｇ２ＴｒＳｉｚｅ＝(Ｌｏｇ２(ｎＷ)＋Ｌｏｇ２(ｎＨ))>>１を介して誘導される。変数ｓｈｉｆｔは、ｃＩｄｘによって異なるように誘導される。ｃＩｘが‘０’の場合(輝度信号の場合)、ｓｈｉｆｔ＝ＢｉｔＤｅｐｔｈＹ＋ｌｏｇ２ＴｒＳｉｚｅ−５から誘導され、その以外の場合(色差信号の場合)、ｓｈｉｆｔ＝ＢｉｔＤｅｐｔｈＣ＋ｌｏｇ２ＴｒＳｉｚｅ−５から誘導される。ここで、ＢｉｔＤｅｐｔｈＹとＢｉｔＤｅｐｔｈＣは、現在映像に対するサンプルのビット数(例えば、８ビット)を意味する。
【０２４６】
スケーリング変数の配列ｌｅｖｅｌＳｃａｌｅ[]は、以下の数式２１の通りである。
【０２４７】
【数２１】
2020108155.tif 000027
【０２４８】
スケールされた変換係数は、下記の過程を介して計算される。
【０２４９】
まず、スケールファクタｍｉｊは、下記の過程を介して誘導される。
【０２５０】
−もし、ｓｃａｌｉｎｇ_ｌｉｓｔ_ｅｎａｂｌｅ_ｆｌａｇが‘０’の場合、ｍｉｊは、以下の数式２２のように誘導される。
【０２５１】
【数２２】
2020108155.tif 000028
【０２５２】
−その以外の場合(即ち、ｓｃａｌｉｎｇ_ｌｉｓｔ_ｅｎａｂｌｅ_ｆｌａｇが‘１’の場合、ｍｉｊは、以下の数式２３のように誘導される。
【０２５３】
【数２３】
2020108155.tif 000029
【０２５４】
ここで、ＳｉｚｅＩＤは、ブロックの大きさによって前述した表１を介して誘導され、ＲｅｆＭａｔｒｉｘＩＤ、そしてｔｒａｆｏＴｙｐｅは、以下の数式２４及び数式２５から各々誘導される。数式２４において、ｓｃａｌｉｎｇ_ｌｉｓｔ_ｐｒｅｄ_ｍａｔｒｉｘ_ｉｄ_ｄｅｌｔａは、ビットストリームのＳＰＳ(Ｓｅｑｕｅｎｃｅ Ｐａｒａｍｅｔｅｒ Ｓｅｔ)を介してシグナリングされる。
【０２５５】
【数２４】
2020108155.tif 000030
【０２５６】
【数２５】
2020108155.tif 000031
【０２５７】
次に、スケールされた変換係数ｄｉｊは、以下の数式２６から誘導される。
【０２５８】
【数２６】
2020108155.tif 000032
【０２５９】
一方、本発明の実施例による変換スキップブロックであるかどうかによって誘導される基本スケールファクタは、前述したＳＰＳだけでなく、ＰＰＳ(Ｐｉｃｔｕｒｅ Ｐａｒａｍｅｔｅｒ Ｓｅｔ)またはスライスヘッダ(ＳｌｉｃｅＨｅａｄｅｒ)を介してシグナリングされることができる。また、ＣＵ単位またはＴＵ単位にシグナリングされることもできる。
【０２６０】
前述したＳＰＳでシグナリングされるｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｙ_ｍｉｎｕｓ１６、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｂ_ｍｉｎｕｓ１６、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｒ_ｍｉｎｕｓ１６値は、ＰＰＳ(または、ＳｌｉｃｅＨｅａｄｅｒ、ＣＵ、ＴＵ)で更新して使用することができる。
【０２６１】
表５は、本発明の他の実施例による基本スケールファクタ情報をシグナリングするためのＰＰＳシンタックスの一例を示す。
【０２６２】
【表５】
2020108155.tif 000033
【０２６３】
表５を参照すると、ｔｒａｎｓｆｏｒｍ_ｓｋｉｐ_ｅｎａｂｌｅｄ_ｆｌａｇは、現在映像に変換スキップアルゴリズムを使用するかどうかを示す。もし、変換スキップアルゴリズムが使われる場合、ｐｐｓ_ｆｌａｔ_ｓｃａｌｉｎｇ_ｆａｃｔｏｒ_ｐｒｅｓｅｎｔ_ｆｌａｇ値がシグナリングされる。
【０２６４】
例えば、もし、ｐｐｓ_ｆｌａｔ_ｓｃａｌｉｎｇ_ｆａｃｔｏｒ_ｐｒｅｓｅｎｔ_ｆｌａｇ値が‘０’の場合、前述したＳＰＳで適用したｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｙ_ｍｉｎｕｓ１６、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｂ_ｍｉｎｕｓ１６、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｒ_ｍｉｎｕｓ１６を変換スキップブロックのためのスケールファクタとして使用する。それに対し、もし、ｐｐｓ_ｆｌａｔ_ｓｃａｌｉｎｇ_ｆａｃｔｏｒ_ｐｒｅｓｅｎｔ_ｆｌａｇ値が‘１’の場合、前述したＳＰＳで適用したｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｙ_ｍｉｎｕｓ１６、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｂ_ｍｉｎｕｓ１６、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｒ_ｍｉｎｕｓ１６値を更新するために該当値がシグナリングされる。
【０２６５】
シグナリングされたｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｙ_ｍｉｎｕｓ１６、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｂ_ｍｉｎｕｓ１６、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｒ_ｍｉｎｕｓ１６値は、現在映像の変換スキップブロックに対するスケールファクタとして使われる。このとき、この値は、再変更されない時まで持続的に使われることができる。または、この値は、現在映像にのみ適用して使用し、次の映像ではＳＰＳで使用したスケールファクタ値を適用することができる。
【０２６６】
ここで、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｙ_ｍｉｎｕｓ１６、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｂ_ｍｉｎｕｓ１６、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｒ_ｍｉｎｕｓ１６は、正数または負数符号を有する形態で符号化(ｓｅ(ｖ))されることができる。または、この値は、０と正数符号を有する形態で符号化(ｕｅ(ｖ))されることができる。
【０２６７】
ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｙ_ｍｉｎｕｓ１６、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｂ_ｍｉｎｕｓ１６、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｒ_ｍｉｎｕｓ１６値は、輝度信号及び色差信号毎に各々異なる値を有して各々シグナリングされることができる。例えば、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｙ_ｍｉｎｕｓ１６値は輝度信号に対するスケールファクタ、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｂ_ｍｉｎｕｓ１６値はＣｂ色差信号に対するスケールファクタ、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｒ_ｍｉｎｕｓ１６値はＣｒ色差信号に対するスケールファクタをシグナリングするときに使われることができる。または、輝度信号に対するスケールファクタとしてｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｙ_ｍｉｎｕｓ１６、色差信号に対するスケールファクタとしてｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｂ_ｃｒ_ｍｉｎｕｓ１６を利用してシグナリングすることもできる。または、輝度信号及び色差信号に対するスケールファクタとして一つの値ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｙ_ｃｂ_ｃｒ_ｍｉｎｕｓ１６を利用してシグナリングすることもできる。
【０２６８】
前述したように、ＳＰＳまたはＰＰＳでシグナリングされるｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｙ_ｍｉｎｕｓ１６、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｂ_ｍｉｎｕｓ１６、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｒ_ｍｉｎｕｓ１６値は、ＳｌｉｃｅＨｅａｄｅｒ(または、ＣＵ、ＴＵ)で更新して使用することができる。
【０２６９】
表６は、本発明の他の実施例による基本スケールファクタ情報をシグナリングするためのスライスヘッダ(ＳｌｉｃｅＨｅａｄｅｒ)シンタックスの一例を示す。
【０２７０】
【表６】
2020108155.tif 000034
【０２７１】
表６を参照すると、ｔｒａｎｓｆｏｒｍ_ｓｋｉｐ_ｅｎａｂｌｅｄ_ｆｌａｇは、現在スライスに変換スキップアルゴリズムを使用するかどうかを示す。もし、変換スキップアルゴリズムが使われる場合、ｆｌａｔ_ｓｃａｌｉｎｇ_ｆａｃｔｏｒ_ｏｖｅｒｒｉｄｅ_ｆｌａｇ値がシグナリングされる。
【０２７２】
例えば、もし、ｆｌａｔ_ｓｃａｌｉｎｇ_ｆａｃｔｏｒ_ｏｖｅｒｒｉｄｅ_ｆｌａｇ値が‘０’の場合、前述したＳＰＳまたはＰＰＳで適用したｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｙ_ｍｉｎｕｓ１６、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｂ_ｍｉｎｕｓ１６、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｒ_ｍｉｎｕｓ１６を変換スキップブロックのためのスケールファクタとして使用する。それに対し、もし、ｆｌａｔ_ｓｃａｌｉｎｇ_ｆａｃｔｏｒ_ｏｖｅｒｒｉｄｅ_ｆｌａｇ値が‘１’の場合、前述したＳＰＳまたはＰＰＳで適用したｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｙ_ｍｉｎｕｓ１６、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｂ_ｍｉｎｕｓ１６、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｒ_ｍｉｎｕｓ１６値を更新するために該当値がシグナリングされる。
【０２７３】
ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｙ_ｄｅｌｔａ、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｂ_ｄｅｌｔａ、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｒ_ｄｅｌｔａ値は、現在スライスの変換スキップブロックに対するスケールファクタとして使われる。
【０２７４】
ここで、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｙ_ｄｅｌｔａ、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｂ_ｄｅｌｔａ、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｒ_ｄｅｌｔａ値は、正数または負数符号を有する形態で符号化(ｓｅ(ｖ))されることができる。または、この値は、０と正数符号を有する形態で符号化(ｕｅ(ｖ))されることができる。
【０２７５】
ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｙ_ｄｅｌｔａ、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｂ_ｄｅｌｔａ、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｒ_ｄｅｌｔａ値は、輝度信号及び色差信号毎に各々異なる値を有して各々シグナリングされることができる。例えば、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｙ_ｄｅｌｔａ値は輝度信号に対するスケールファクタ、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｂ_ｄｅｌｔａ値はＣｂ色差信号に対するスケールファクタ、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｒ_ｄｅｌｔａ値はＣｒ色差信号に対するスケールファクタをシグナリングするときに使われることができる。または、輝度信号に対するスケールファクタとしてｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｙ_ｄｅｌｔａ、色差信号に対するスケールファクタとしてｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｂ_ｃｒ_ｄｅｌｔａを利用してシグナリングすることもできる。または、輝度信号及び色差信号に対するスケールファクタとして一つの値ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｙ_ｃｂ_ｃｒ_ｄｅｌｔａを利用してシグナリングすることもできる。
【０２７６】
前記のように、シグナリングされたｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｙ_ｄｅｌｔａ、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｂ_ｄｅｌｔａ、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｒ_ｄｅｌｔａ値を利用して以下の数式２７乃至数式２９のように基本スケールファクタを誘導することができる。
【０２７７】
ここで、基本スケールファクタＦｌａｔＳｃａｌｉｎｇＦａｃｔｏｒ[ｃＩｄｘ]は、輝度信号と色差信号に対するスケールファクタを格納している。例えば、色相成分インデックスｃＩｄｘが０の場合は輝度(Ｙ)信号、１の場合はＣｂ色差信号、２の場合はＣｒ色差信号を指示することができる。また、ＦｌａｔＳｃａｌｉｎｇＦａｃｔｏｒ[ｃＩｄｘ]値は、任意の値の範囲を有することができ、一例として、８ビット信号の場合‘−１５’から‘２５５−１６’の値を有することができる。
【０２７８】
輝度信号に対する基本スケールファクタは、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｙ_ｄｅｌｔａを利用して数式２７のように誘導されることができる。
【０２７９】
【数２７】
2020108155.tif 000035
【０２８０】
Ｃｂ色差信号に対する基本スケールファクタは、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｂ_ｄｅｌｔａを利用して数式２８のように誘導されることができる。
【０２８１】
【数２８】
2020108155.tif 000036
【０２８２】
Ｃｒ色差信号に対する基本スケールファクタは、ｆｌａｔ_ｓｃａｌｅ_ｆａｃｔｏｒ_ｃｒ_ｄｅｌｔａを利用して数式２９のように誘導されることができる。
【０２８３】
【数２９】
2020108155.tif 000037
【０２８４】
一方、前述した実施例は、ブロック大きさまたはＣＵ深さまたはＴＵ深さによって適用範囲を異なるようにすることができる。このように適用範囲を決定する変数(例えば、ブロックの大きさまたは深さ情報)は、符号化器及び復号化器が予め決められた値を使用するように設定してもよく、プロファイルまたはレベルによって決められた値を使用するように設定してもよく、符号化器が変数値をビットストリームに記載すると、復号化器がビットストリームからこの値を求めて使用するように設定してもよい。
【０２８５】
ＣＵ深さによって適用範囲を異なるようにする時は、表７に例示したように、次の三つの方法が適用されることができる。方法Ａは、与えられた深さ以上の深さにのみ適用する方式であり、方法Ｂは、与えられた深さ以下にのみ適用する方式であり、方法Ｃは、与えられた深さにのみ適用する方式である。
【０２８６】
表７は、ＣＵ(または、ＴＵ)深さによって本発明の方法を適用する範囲を決定する方法の一例を示す。表７において、‘Ｏ’表記は、ＣＵ(または、ＴＵ)の該当深さに該当方法を適用することを意味し、‘Ｘ’表記は、ＣＵ(または、ＴＵ)の該当深さに該当方法を適用しないことを意味する。
【０２８７】
【表７】
2020108155.tif 000038
【０２８８】
表７を参照すると、ＣＵ(または、ＴＵ)深さが２の場合、本発明の実施例に対して方法Ａ、方法Ｂ、方法Ｃを全部適用することができる。
【０２８９】
ＣＵ(または、ＴＵ)の全ての深さに対して本発明の実施例を適用しない場合、任意の指示子(例えば、ｆｌａｇ)を使用して表現することもでき、ＣＵ深さの最大値より一つ大きい値を、適用範囲を示すＣＵ深さ値としてシグナリングすることで表現することもできる。
【０２９０】
また、前述したＣＵ(または、ＴＵ)深さによって本発明の方法を適用する範囲を決定する方法は、輝度ブロックと色差ブロックの大きさによって異なるように適用することができ、また、輝度映像及び色差映像に異なるように適用することができる。
【０２９１】
表８は、輝度ブロック及び色差ブロックの大きさによって適用範囲を決定する方法の組合せを概略的に示す一例である。
【０２９２】
【表８】
2020108155.tif 000039
【０２９３】
表８の方法のうち、方法“ト１”をみると、輝度ブロックの大きさが８(８×８、８×４、２×８等)の場合、且つ色差ブロックの大きさが４(４×４、４×２、２×４)の場合、本発明の実施例１(ト１−実施例１)を輝度信号及び色差信号、並びに水平信号及び垂直信号に適用することができる。
【０２９４】
前述した実施例において、方法は、一連のステップまたはブロックで流れ図に基づいて説明されているが、本発明は、ステップの順序に限定されるものではなく、あるステップは、前述と異なるステップと、異なる順序にまたは同時に発生できる。また、当該技術分野において、通常の知識を有する者であれば、流れ図に示すステップが排他的でなく、他のステップが含まれ、または流れ図の一つまたはそれ以上のステップが本発明の範囲に影響を及ぼさずに削除可能であることを理解することができる。
【０２９５】
以上の説明は、本発明の技術思想を例示的に説明したものに過ぎず、本発明が属する技術分野において、通常の知識を有する者であれば、本発明の本質的な特性から外れない範囲で多様な修正及び変形が可能である。したがって、本発明に開示された実施例は、本発明の技術思想を限定するためのものではなく、説明するためのものであり、このような実施例により本発明の技術思想の範囲が限定されるものではない。本発明の保護範囲は、特許請求の範囲により解釈されなければならず、それと同等な範囲内にある全ての技術思想は、本発明の権利範囲に含まれると解釈されなければならない。
【図１】
2020108155.tif 000040
【図２】
2020108155.tif 000041
【図３】
2020108155.tif 000042
【図４】
2020108155.tif 000043
【図５】
2020108155.tif 000044
【図６】
2020108155.tif 000045
【図７】
2020108155.tif 000046