(57)【特許請求の範囲】
【請求項１】
ビデオ信号を復号する方法であって、
前記ビデオ信号に対してエントロピデコーディングを行うことによって、量子化された変換ブロックを生成するステップと、
前記量子化された変換ブロックに対して逆量子化を行うことによって、逆量子化された変換ブロックを生成するステップと、
前記逆量子化された変換ブロック内の０でない係数（non-zero coefficient）の個数と予め決められた個数との間の比較に基づいて、二次逆変換（secondary inverse transform）を適用するか否かを決定するステップと、
前記二次逆変換を適用すると決定した場合、前記逆量子化された変換ブロックに適用される二次逆変換カーネルのサイズを決定するステップと、
前記二次逆変換カーネル（secondary inverse transform kernel）を用いて、前記逆量子化された変換ブロックに対して前記二次逆変換を行うステップと、を有し、
前記二次逆変換カーネルのサイズは、前記逆量子化された変換ブロックの左上側の領域内で前記０でない係数が存在する領域を含む二次逆変換カーネルのうち、最も小さい二次逆変換カーネルのサイズに決定される、ビデオ信号復号方法。
【請求項２】
前記二次逆変換を適用するか否かを決定するステップは、
前記逆量子化された変換ブロックの前記左上側の領域に０でない係数が１つ又は複数存在するか否かを確認するステップを有し、
前記左上側の領域に０でない係数が１つ又は複数存在する場合、前記逆量子化された変換ブロックに前記二次逆変換が適用される、請求項１に記載のビデオ信号復号方法。
【請求項３】
前記二次逆変換を適用するか否かを決定するステップは、
前記逆量子化された変換ブロックの前記左上側の領域内の０でない係数の個数を確認するステップを有し、
前記左上側の領域内の前記０でない係数の個数が特定しきい値（threshold）を超える場合、前記逆量子化された変換ブロックに前記二次逆変換が適用される、請求項１に記載のビデオ信号復号方法。
【請求項４】
前記二次逆変換を適用するか否かを決定するステップは、
前記逆量子化された変換ブロックを特定サイズのサブブロックに分割するステップと、
前記サブブロック単位で前記二次逆変換を適用するか否かを決定するステップと、を有する、請求項１に記載のビデオ信号復号方法。
【請求項５】
前記サブブロック単位で二次逆変換を適用するか否かを決定するステップは、
現在サブブロックに０でない係数が１つ又は複数存在するか否かを確認するステップを有し、
前記現在サブブロックに０でない係数が１つ又は複数存在する場合、前記現在サブブロックに前記二次逆変換が適用される、請求項４に記載のビデオ信号復号方法。
【請求項６】
前記サブブロック単位で二次逆変換を適用するか否かを決定するステップは、
現在サブブロック内の０でない係数の個数を確認するステップを有し、
前記現在サブブロック内の０でない係数の個数が特定しきい値（threshold）を超える場合、前記現在サブブロックに前記二次逆変換が適用される、請求項４に記載のビデオ信号復号方法。
【請求項７】
ビデオ信号を復号する装置であって、
前記ビデオ信号に対してエントロピデコーディングを行うことによって、量子化された変換ブロックを生成するエントロピデコード部と、
前記量子化された変換ブロックに対して逆量子化を行うことによって、逆量子化された変換ブロックを生成する逆量子化部と、
前記逆量子化された変換ブロック内の０でない係数（non-zero coefficient）の個数と予め決められた個数との間の比較に基づいて、二次逆変換（secondary inverse transform）を適用するか否かを決定し、
前記二次逆変換を適用すると決定した場合、前記逆量子化された変換ブロックに適用される二次逆変換カーネルのサイズを決定する二次逆変換決定部と、
前記二次逆変換カーネル（secondary inverse transform kernel）を用いて、前記逆量子化された変換ブロックに対して前記二次逆変換を行う二次逆変換部と、を有し、
前記二次逆変換カーネルのサイズは、前記逆量子化された変換ブロックの左上側の領域内で前記０でない係数が存在する領域を含む二次逆変換カーネルのうち、最も小さい二次逆変換カーネルのサイズに決定される、ビデオ信号復号装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ビデオ信号のエンコーディング（符号化）（encoding）／デコーディング（復号）（decoding）方法及び装置に関し、より詳しくは、二次変換（secondary transform）を用いてビデオ信号をエンコード（符号化）／デコード（復号）する（encoding/decoding）方法及びこれをサポート（支援）する（supporting）装置に関する。
【背景技術】
【０００２】
圧縮符号化とは、デジタル化した情報を通信回線を介して送信したり、記憶（格納）媒体（storage medium）に適した形態で記憶（格納）する（storing）ための一連の信号処理技術を意味する。画像、イメージ、音声等のメディアが圧縮符号化の対象になることができ、特に、画像を対象として圧縮符号化を行う技術をビデオ画像圧縮と称する。
【０００３】
次世代ビデオコンテンツは、高解像度（high spatial resolution）、高フレームレート（率）（high frame rate）、及び画像表現の高次元化（high dimensionality of scene representation）という特徴を有するようになるであろう。そのようなコンテンツを処理するためには、メモリ記憶（memory storage）、メモリアクセスレート（率）（memory access rate）、及び処理電力（processing power）の側面で莫大な増加を有してくるであろう。
【０００４】
したがって、次世代ビデオコンテンツをより効率的に処理するためのコーディングツールをデザインする必要がある。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明の目的は、一次変換（primary transform）された変換領域の信号に対して二次変換（secondary transform）を適用する方法を提案することである。
【０００６】
また、本発明の目的は、二次変換に用いられる変換カーネルのサイズを効率よく決定する方法を提案することである。
【０００７】
また、本発明の目的は、ブロックのサイズによって適応的に（変換カーネルを）選択し、選択された変換カーネルを用いて二次変換を行う方法を提案することである。
【０００８】
また、本発明の目的は、変換カーネルのサイズを送信することによって、二次変換に適応されるカーネルを適応的に選択する方法を提案することである。
【０００９】
また、本発明の目的は、残差信号を用いて、二次変換を適用するか否か又は適用範囲を決定する方法を提案することである。
【００１０】
また、本発明の目的は、残差信号を用いて、二次変換に適用される変換カーネルのサイズを導出（誘導）する（deriving）方法を提案することである。
【００１１】
本発明においてなそうとする技術的課題は、以上で言及した技術的課題に制限されず、言及していないさらに他の技術的課題は、下記の記載から本発明の属する技術分野における通常の知識を有する者に明確に理解され得るであろう。
【課題を解決するための手段】
【００１２】
本発明の一態様は、ビデオ信号を復号（デコード）する（decoding）方法であって、ビデオ信号に対してエントロピデコーディングを行うことによって、量子化された変換ブロックを生成するステップと、量子化された変換ブロックに対して逆量子化を行うことによって、逆量子化された変換ブロックを生成するステップと、逆量子化された変換ブロック内の０でない係数（non-zero coefficient）に関連する情報に基づいて、二次逆変換（secondary inverse transform）を適用するか否かを決定するステップと、逆量子化された変換ブロックに適用される二次逆変換カーネル（secondary inverse transform kernel）を用いて、逆量子化された変換ブロックに対して二次逆変換を行うステップと、を有することができる。
【００１３】
好ましくは、二次逆変換を適用するか否かを決定するステップは、逆量子化された変換ブロックの左上側の特定領域に０でない係数が１つ又は複数存在するか否かを確認するステップを有し、特定領域に０でない係数が１つ又は複数存在する場合、逆量子化された変換ブロックに二次逆変換が適用されることができる。
【００１４】
好ましくは、二次逆変換を適用するか否かを決定するステップは、逆量子化された変換ブロックの左上側の特定領域内の０でない係数の個数を確認するステップを有し、特定領域内の０でない係数の個数が特定しきい値（threshold）を超える（exceeds）場合、逆量子化された変換ブロックに二次逆変換が適用されることができる。
【００１５】
好ましくは、二次逆変換を適用するか否かを決定するステップは、逆量子化された変換ブロックを特定サイズのサブブロックに分割するステップと、サブブロック単位で二次逆変換を適用するか否かを決定するステップと、を有することができる。
【００１６】
好ましくは、サブブロック単位で二次逆変換を適用するか否かを決定するステップは、現在サブブロックに０でない係数が１つ又は複数存在するか否かを確認するステップを有し、現在サブブロックに０でない係数が１つ又は複数存在する場合、現在サブブロックに二次逆変換が適用されることができる。
【００１７】
好ましくは、サブブロック単位で二次逆変換を適用するか否かを決定するステップは、現在サブブロック内の０でない係数の個数を確認するステップを有し、現在サブブロック内の０でない係数の個数が特定しきい値（threshold）を超える場合、現在サブブロックに二次逆変換が適用されることができる。
【００１８】
好ましくは、逆量子化された変換ブロック内の０でない係数に関連する情報に基づいて、逆量子化された変換ブロックに適用される二次逆変換カーネルのサイズを決定するステップをさらに有することができる。
【００１９】
好ましくは、二次逆変換カーネルのサイズは、逆量子化された変換ブロックの左上側の特定サイズの領域内に存在する０でない係数を有する二次逆変換カーネルのうち、最も小さい二次逆変換カーネルのサイズに決定されることができる。
【００２０】
好ましくは、逆量子化された変換ブロックのサイズが既に設定された最小サイズのブロックより大きい場合、ビデオ信号から二次逆変換カーネルのサイズを指示するシンタックス（syntax）を抽出するステップと、シンタックスに基づいて逆量子化された変換ブロックに適用される二次逆変換カーネルのサイズを決定するステップと、をさらに有することができる。
【００２１】
好ましくは、二次逆変換カーネルのサイズを指示するシンタックスは、シーケンス（sequence）、ピクチャ（picture）、スライス（slice）、コーディングブロック（coding block）、又は変換ブロック（transform block）単位で送信されることができる。
【００２２】
本発明の他の一態様は、ビデオ信号に対してエントロピデコーディングを行うことによって、量子化された変換ブロックを生成するエントロピデコード部と、量子化された変換ブロックに対して逆量子化を行うことによって、逆量子化された変換ブロックを生成する逆量子化部と、逆量子化された変換ブロック内の０でない係数（non-zero coefficient）に関連する情報に基づいて、二次逆変換（secondary inverse transform）を適用するか否かを決定する二次逆変換決定部と、逆量子化された変換ブロックに適用される二次逆変換カーネル（secondary inverse transform kernel）を用いて、逆量子化された変換ブロックに対して二次逆変換を行う二次逆変換部と、を有することができる。
【発明の効果】
【００２３】
本発明の実施形態によると、一次変換された変換領域の信号に対して二次変換を行うことによって圧縮性能をより向上させることができ、デコーダにシグナリングされる残差信号データの量を効果的に減らすことができる。
【００２４】
また、本発明の実施形態によれば、二次変換を適用するに当たって、多様なサイズのブロックに適合したサイズのカーネルを決定することによって、圧縮効率を高めることができる。
【００２５】
また、本発明の実施形態によれば、ブロックのサイズにかかわらず、最適化されたサイズのカーネル情報をデコーダにシグナリングすることで、多様なサイズの変換カーネルを適用することができ、これを通じて圧縮性能を向上させることができる。
【００２６】
本発明において得ることができる効果は、以上で言及した効果に制限されず、言及していないさらに他の効果は、下記の記載から本発明の属する技術分野における通常の知識を有する者に明確に理解され得るであろう。
【図面の簡単な説明】
【００２７】
【図１】本発明が適用される実施形態であって、静止画又は動画信号のエンコードが行われるエンコーダの概略ブロック図である。
【図２】本発明が適用される実施形態であって、静止画又は動画信号のエンコード（デコード）が行われるデコーダの概略ブロック図である。
【図３】本発明に適用できるコーディングユニットの分割構造を説明する図である。
【図４】本発明に適用できる予測ユニットを説明する図である。
【図５】本発明が適用される実施形態であって、ブロックのサイズに基づいて、二次変換に用いられる変換カーネルのサイズを決定する方法を説明する図である。
【図６】本発明が適用される実施形態であって、ブロックの幅及び高さに基づいて、二次変換に用いられる変換カーネルのサイズを決定する方法を説明する図である。
【図７】本発明が適用される実施形態であって、ブロックの幅及び高さに基づいて、二次変換に用いられる変換カーネルのサイズを決定する方法を説明する図である。
【図８】二次変換のために非分離（分離不可能な）（non-separable）変換を適用する場合を仮定する。
【図９】本発明が適用される実施形態であって、二次変換に適用される変換カーネルのサイズを決定する方法を例示するフローチャートである。
【図１０】本発明が適用される実施形態であって、二次変換に適用される変換カーネルのサイズを決定する方法を例示するフローチャートである。
【図１１】本発明の一実施形態に従う、残差信号（residual signal）を用いて二次変換を適用するか否かを決定する方法を例示する図である。
【図１２】本発明の一実施形態に従う、残差信号（residual signal）を用いて二次変換を適用するか否かを決定する方法を例示する図である。
【図１３】本発明の一実施形態に従う、残差信号（residual signal）を用いて二次変換を適用するか否かを決定する方法を例示する図である。
【図１４】本発明の一実施形態に従う、残差信号（residual signal）を用いて二次変換カーネルのサイズを決定する方法を例示する図である。
【図１５】本発明の一実施形態に従うビデオ信号の復号方法を例示する図である。
【図１６】本発明の一実施形態に従うビデオ信号の復号装置を例示する図である。
【発明を実施するための形態】
【００２８】
本発明に関する理解を助けるために、詳細な説明の一部として含まれる添付図面は、本発明に対する実施形態を提供し、詳細な説明とともに本発明の技術的特徴を説明する。
【００２９】
以下、本発明に係る好ましい実施形態を添付された図面を参照して詳細に説明する。添付された図面とともに以下に開示される詳細な説明は、本発明の例示的な実施形態を説明しようとするものであり、本発明が実施できる唯一の実施形態を表そうとするものではない。以下の詳細な説明は、本発明の完全な理解を提供するために具体的な細部事項を含む。しかしながら、当業者は、本発明がこのような具体的な細部事項がなくとも実施できることが分かる。
【００３０】
いくつかの場合、本発明の概念が曖昧になることを避けるために、公知の構造及び装置は省略されるか、各構造及び装置の中核（核心）機能（core functions）を中心としたブロック図形式で図示されることができる。
【００３１】
合わせて、本発明で使用される用語は、なるべく現在広く使用される一般的な用語を選択したが、特定の場合は、出願人が任意に選定した用語を使用して説明する。そのような場合には、当該部分の詳細説明でその意味を明確に記載するので、本発明の説明で使用された用語の名称だけで単純に解釈されてはならず、その当該用語の意味まで把握して解釈されなければならないことを明かしておく。
【００３２】
以下の説明で使用される特定の用語等は、本発明の理解を助けるために提供されたものであって、このような特定の用語の使用は、本発明の技術的思想を逸脱しない範囲で他の形態に変更されることができる。例えば、信号、データ、サンプル、ピクチャ、フレーム、ブロックなどの場合、各コーディング過程で適宜代替されて解釈され得るであろう。
【００３３】
以下、本明細書において「処理ユニット」は、予測、変換、及び／又は量子化などのエンコード／デコードの処理過程が行われる単位を意味する。以下、説明の便宜のために、処理ユニットは、「処理ブロック」又は「ブロック」と呼ばれることもできる。
【００３４】
処理ユニットは、輝度（luma）成分に対する単位と色差（chroma）成分に対する単位とを含む意味として解釈することができる。例えば、処理ユニットは、コーディングツリーユニット（ＣＴＵ：Coding Tree Unit）、コーディングユニット（ＣＵ：Coding Unit）、予測ユニット（ＰＵ：Prediction Unit）、又は変換ユニット（ＴＵ：Transform Unit）に該当する。
【００３５】
また、処理ユニットは、輝度成分に対する単位又は色差成分に対する単位として解釈されることができる。例えば、処理ユニットは、輝度成分に対するコーディング（符号化）ツリーブロック（ＣＴＢ：Coding Tree Block）、コーディングブロック（ＣＢ：Coding Block）、予測ブロック（ＰＵ：Prediction Block）、又は変換ブロック（ＴＢ：Transform Block）に該当する。あるいは、色差成分に対するコーディングツリーブロック（ＣＴＢ）、コーディングブロック（ＣＢ）、予測ブロック（ＰＵ）、又は変換ブロック（ＴＢ）に該当する。また、これに限定されるものではなく、処理ユニットは、輝度成分に対する単位と色差成分に対する単位とを含む意味として解釈されることもできる。
【００３６】
さらに、処理ユニットは、必ず正方形のブロックに限定されるものではなく、３つ以上の頂点を有する多角形状で構成されることもできる。
【００３７】
また、以下、本明細書において、ピクセル又は画素などをサンプルと通称する。そして、サンプルを用いるということは、ピクセル値又は画素値などを用いることを意味することができる。
【００３８】
図１は、本発明が適用される実施形態であって、静止画又は動画信号のエンコードが行われるエンコーダの概略ブロック図を示す。
【００３９】
図１に示すように、エンコーダ１００は、画像分割部１１０、減算器１１５、変換部１２０、量子化部１３０、逆量子化部１４０、逆変換部１５０、フィルタリング部１６０、復号ピクチャバッファ（ＤＰＢ：Decoded Picture Buffer）１７０、予測部１８０、及びエントロピエンコード部１９０を備えて構成されることができる。そして、予測部１８０は、インター予測部１８１、イントラ予測部１８２を備えて構成されることができる。
【００４０】
画像分割部１１０は、エンコーダ１００に入力された入力画像信号（Input video signal）（又は、ピクチャ、フレーム）を１つ又は複数の処理ユニットに分割する。
【００４１】
減算器１１５は、入力画像信号から予測部１８０（すなわち、インター予測部１８１又はイントラ予測部１８２）から出力された予測信号（prediction signal）（又は、予測ブロック）を減算して差分（残差）信号（residual signal）（又は、差分ブロック）を生成する。生成された差分信号（又は、差分ブロック）は、変換部１２０に送信される。
【００４２】
変換部１２０は、差分信号（又は、差分ブロック）に変換技法（例えば、ＤＣＴ（Discrete Cosine Transform）、ＤＳＴ（Discrete Sine Transform）、ＧＢＴ（Graph-Based Transform）、ＫＬＴ（Karhunen-Loeve Transform）等）を適用して変換係数（transform coefficient）を生成する。このとき、変換部１２０は、差分ブロックに適用された予測モードと差分ブロックのサイズとに応じて決定された変換技法を利用して変換を行うことにより、変換係数を生成することができる。
【００４３】
量子化部１３０は、変換係数を量子化してエントロピエンコード部１９０に送信し、エントロピエンコード部１９０は、量子化された信号（quantized signal）をエントロピコーディングしてビットストリームに出力する。
【００４４】
一方、量子化部１３０から出力された、量子化された信号（quantized signal）は、予測信号を生成するために用いられることができる。例えば、量子化された信号（quantized signal）は、ループ内の逆量子化部１４０及び逆変換部１５０により逆量子化及び逆変換を適用することにより差分信号を復元することができる。復元された差分信号を、インター予測部１８１又はイントラ予測部１８２から出力された予測信号（prediction signal）に加算することにより復元信号（reconstructed signal）が生成される。
【００４５】
一方、上記のような圧縮過程で隣接するブロックが互いに異なる量子化パラメータにより量子化されることで、ブロック境界が見える劣化が発生し得る。このような現象をブロックアーチファクト（ブロッキング劣化）（blocking artifacts）といい、これは、画質を評価する重要な要素のうちの１つである。このような劣化を減らすために、フィルタリング過程を行うことができる。このようなフィルタリング過程を介してブロックアーチファクトを除去するとともに、現在ピクチャに対する誤差を減らすことにより、画質を向上させることができるようになる。
【００４６】
フィルタリング部１６０は、復元信号にフィルタリングを適用して、これを再生装置に出力するか、復号ピクチャバッファ１７０に送信する。復号ピクチャバッファ１７０に送信されたフィルタリングされた信号は、インター予測部１８１で参照ピクチャとして使用されることができる。このように、フィルタリングされたピクチャを画面間予測モードで参照ピクチャとして用いることにより、画質だけでなく、符号化効率も向上させることができる。
【００４７】
復号ピクチャバッファ１７０は、フィルタリングされたピクチャを、インター予測部１８１における参照ピクチャとして使用するために記憶することができる。
【００４８】
インター予測部１８１は、復元ピクチャ（reconstructed picture）を参照して時間的冗長性（重複性）（redundancy）及び／又は空間的冗長性を除去するために、時間的予測及び／又は空間的予測を行う。ここで、予測を行うために用いられる参照ピクチャは、以前（時間）に符号化（エンコード）／復号（デコード）した（encoded/decoded）際、ブロック単位で量子化及び逆量子化を経て変換された信号であるから、ブロックアーチファクト（blocking artifact）やリングアーチファクト（ringing artifact）が存在し得る。
【００４９】
したがって、インター予測部１８１は、このような信号の不連続や量子化による性能低下を解決するために、ローパスフィルタ（low pass filter）を適用することにより、ピクセル間の信号をサブピクセル単位で補間することができる。ここで、サブピクセルは、補間フィルタを適用して生成された仮想の画素を意味し、整数ピクセルは、復元されたピクチャに存在する実際の画素を意味する。補間方法では、線形補間、双線形補間（bi-linear interpolation）、ウィナーフィルタ（wiener filter）などが適用され得る。
【００５０】
補間フィルタは、復元ピクチャ（reconstructed picture）に適用されて予測の精度を向上させることができる。例えば、インター予測部１８１は、整数ピクセルに補間フィルタを適用して補間ピクセル（interpolated pixels）を生成し、補間ピクセルで構成された補間ブロック（interpolated block）を予測ブロック（prediction block）として用いて予測を行うことができる。
【００５１】
イントラ予測部１８２は、現在符号化を行おうとするブロックの周辺にあるサンプルを参照して現在ブロックを予測する。イントラ予測部１８２は、イントラ予測を行うために次の過程を行うことができる。まず、予測信号を生成するために必要な参照サンプルを準備する。また、準備した参照サンプルを用いて予測信号を生成する。その後、予測モードを符号化する。ここで、参照サンプルは、参照サンプルパディング及び／又は参照サンプルフィルタリングにより準備される。参照サンプルは、予測及び復元過程を経たので、量子化エラーが存在することがある。したがって、このようなエラーを減らすためにイントラ予測に用いられる各予測モードに対して参照サンプルフィルタリング過程が行われる。
【００５２】
インター予測部１８１又はイントラ予測部１８２により生成された予測信号（prediction signal）（又は、予測ブロック）は、復元信号（又は、復元ブロック）を生成するために利用されるか、差分信号（又は、差分ブロック）を生成するために利用されることができる。
【００５３】
図２は、本発明が適用される実施形態であって、静止画又は動画信号のエンコード（デコード）が行われるデコーダの概略ブロック図を示す。
【００５４】
図２に示すように、デコーダ２００は、エントロピデコード部２１０、逆量子化部２２０、逆変換部２３０、加算器２３５、フィルタリング部２４０、復号ピクチャバッファ（ＤＰＢ：Decoded Picture Buffer Unit）２５０、予測部２６０を備えて構成されることができる。そして、予測部２６０は、インター予測部２６１及びイントラ予測部２６２を備えて構成されることができる。
【００５５】
そして、デコーダ２００を介して出力された復元画像信号（reconstructed video signal）は、再生装置を介して再生されることができる。
【００５６】
デコーダ２００は、図１のエンコーダ１００から出力された信号（すなわち、ビットストリーム）を受信し、受信した信号は、エントロピデコード部２１０を介してエントロピデコードされる。
【００５７】
逆量子化部２２０では、量子化ステップサイズ情報を利用してエントロピデコードされた信号から変換係数（transform coefficient）を取得する。
【００５８】
逆変換部２３０では、逆変換技法を適用して変換係数を逆変換して差分信号（residual signal）（又は、差分ブロック）を取得する。
【００５９】
加算器２３５は、取得された差分信号（又は、差分ブロック）を、予測部２６０（すなわち、インター予測部２６１又はイントラ予測部２６２）から出力された予測された信号（predicted signal）（又は、予測されたブロック）に足すことにより、復元信号（reconstructed signal）（又は、復元ブロック）を生成する。
【００６０】
フィルタリング部２４０は、復元信号（reconstructed signal）（又は、復元ブロック）にフィルタリングを適用して、これを再生装置に出力したり、復号ピクチャバッファ部２５０に送信する。復号ピクチャバッファ部２５０に送信されたフィルタリングされた信号は、インター予測部２６１で参照ピクチャとして使用されることができる。
【００６１】
本明細書において、エンコーダ１００のフィルタリング部１６０、インター予測部１８１、及びイントラ予測部１８２で説明された実施形態は、各々、デコーダのフィルタリング部２４０、インター予測部２６１、及びイントラ予測部２６２にも同様に適用されることができる。
【００６２】
処理ユニット分割構造
【００６３】
一般に、静止画又は動画圧縮技術（例えば、ＨＥＶＣ）では、ブロックベース（基盤）の画像圧縮方法を利用する。ブロックベースの画像圧縮方法は、画像を特定のブロック単位に分けて処理する方法であって、メモリの使用及び演算量を減少させることができる。
【００６４】
図３は、本発明に適用できるコーディングユニットの分割構造を説明する図である。
【００６５】
エンコーダは、１つの画像（又は、ピクチャ）を四角形の形態のコーディングツリーユニット（ＣＴＵ：Coding Tree Unit）単位に分割する。そして、ラスタスキャン順序（raster scan order）に従って１つのＣＴＵずつ順次エンコードする。
【００６６】
ＨＥＶＣにおいて、ＣＴＵのサイズは、６４×６４、３２×３２、１６×１６のうちのいずれか１つに決めることができる。エンコーダは、入力された画像の解像度又は入力された画像の特性などによって、ＣＴＵのサイズを選択して使用することができる。ＣＴＵは、輝度（luma）成分に対するコーディングツリーブロック（ＣＴＢ：Coding Tree Block）と、これに対応する２つの色差（chroma）成分に対するＣＴＢと、を含む。
【００６７】
１つのＣＴＵは、クアッドツリー（Quad-tree）構造に分割されることができる。すなわち、１つのＣＴＵは、正方形の形態を有しながら半分の水平サイズ（half horizontal size）及び半分の垂直サイズ（half vertical size）を有する４個のユニットに分割されて、コーディングユニット（ＣＵ：Coding Unit）が生成され得る。このようなクアッドツリー構造の分割は、再帰的に行われることができる。すなわち、ＣＵは、１つのＣＴＵからクアッドツリー構造で階層的に分割される。
【００６８】
ＣＵは、入力画像の処理過程、例えば、イントラ（intra）／インター（inter）予測が行われるコーディングの基本単位を意味する。ＣＵは、輝度（luma）成分に対するコーディングブロック（ＣＢ：Coding Block）と、これに対応する２つの色差（chroma）成分に対するＣＢと、を含む。ＨＥＶＣにおいて、ＣＵのサイズは、６４×６４、３２×３２、１６×１６、８×８のうちのいずれか１つに決められることができる。
【００６９】
図３に示すように、クアッドツリーのルートノード（root node）は、ＣＴＵと関連する。クアッドツリーは、リーフノード（leaf node）に到達するまで分割され、リーフノードは、ＣＵに該当する。
【００７０】
より具体的に説明すれば、ＣＴＵは、ルートノード（root node）に該当し、最も小さい深さ（depth）（すなわち、ｄｅｐｔｈ＝０）値を有する。入力画像の特性に応じてＣＴＵが分割されないことがあり、この場合、ＣＴＵは、ＣＵに該当する。
【００７１】
ＣＴＵは、クアッドツリー形態に分割されることができ、その結果、深さ１（ｄｅｐｔｈ＝１）である下位ノードが生成される。そして、１の深さを有する下位ノードでそれ以上分割されないノード（すなわち、リーフノード）は、ＣＵに該当する。例えば、図３（ｂ）においてノードａ、ｂ及びｊに対応するＣＵ（ａ）、ＣＵ（ｂ）、ＣＵ（ｊ）は、ＣＴＵで１回分割され、１の深さを有する。
【００７２】
１の深さを有するノードのうち、少なくともいずれか１つは、再度クアッドツリー形態に分割されることができ、その結果、深さ２（すなわち、ｄｅｐｔｈ＝２）である下位ノードが生成される。そして、２の深さを有する下位ノードでそれ以上分割されないノード（すなわち、リーフノード）は、ＣＵに該当する。例えば、図３（ｂ）においてノードｃ、ｈ、及びｉに対応するＣＵ（ｃ）、ＣＵ（ｈ）、ＣＵ（ｉ）は、ＣＴＵから２回分割され、２の深さを有する。
【００７３】
また、２の深さを有するノードのうち、少なくともいずれか１つは、再度クアッドツリー形態に分割されることができ、その結果、深さ３（すなわち、ｄｅｐｔｈ＝３）である下位ノードが生成される。そして、３の深さを有する下位ノードでそれ以上分割されないノード（すなわち、リーフノード）は、ＣＵに該当する。例えば、図３（ｂ）においてノードｄ、ｅ、ｆ、ｇに対応するＣＵ（ｄ）、ＣＵ（ｅ）、ＣＵ（ｆ）、ＣＵ（ｇ）は、ＣＴＵから３回分割され、３の深さを有する。
【００７４】
エンコーダでは、ビデオ画像の特性（例えば、解像度）に応じて、あるいは符号化の効率を考慮して、ＣＵの最大サイズ又は最小サイズを決定できる。そして、これに関する情報又はこれを導くことができる情報が、ビットストリームに含まれ得る。最大サイズを有するＣＵを最大コーディングユニット（ＬＣＵ：Largest Coding Unit）と呼び、最小サイズを有するＣＵを最小コーディングユニット（ＳＣＵ：Smallest Coding Unit）と呼ぶことができる。
【００７５】
また、ツリー構造を有するＣＵは、予め決められた最大深さ情報（又は、最大レベル情報）を有して階層的に分割されることができる。そして、それぞれの分割されたＣＵは、深さ情報を有することができる。深さ情報は、ＣＵの分割された回数及び／又は程度を表すので、ＣＵのサイズに関する情報を含むこともできる。
【００７６】
ＬＣＵがクアッドツリー形態に分割されるので、ＬＣＵのサイズ及び最大深さ情報を利用すれば、ＳＣＵのサイズを求めることができる。あるいは、逆に、ＳＣＵのサイズ及びツリーの最大深さ情報を利用すれば、ＬＣＵのサイズを求めることができる。
【００７７】
１つのＣＵに対して、当該ＣＵが分割されるか否かを表す情報（例えば、分割ＣＵフラグ（split_cu_flag））がデコーダに伝達され得る。この分割モードは、ＳＣＵを除いた全てのＣＵに含まれている。例えば、分割が可能か否かを表すフラグの値が「１」であれば、当該ＣＵは、さらに４個のＣＵに分けられ、分割が可能か否かを表すフラグの値が「０」であれば、当該ＣＵは、それ以上分けられず、当該ＣＵに対する処理過程が行われ得る。
【００７８】
上述のように、ＣＵは、イントラ予測又はインター予測が行われるコーディングの基本単位である。ＨＥＶＣは、入力画像をより効果的にコーディングするために、ＣＵを予測ユニット（ＰＵ：Prediction Unit）単位に分割する。
【００７９】
ＰＵは、予測ブロックを生成する基本単位であって、１つのＣＵ内でもＰＵ単位で互いに異なるように予測ブロックを生成できる。ただし、１つのＣＵ内に属するＰＵなどは、イントラ予測とインター予測とが混合されて使用されず、１つのＣＵ内に属するＰＵなどは、同じ予測方法（すなわち、イントラ予測又はインター予測）によりコーディングされる。
【００８０】
ＰＵは、クアッドツリー構造に分割されず、１つのＣＵで予め決められた形態で１回分割される。これについて、下記の図面を参照して説明する。
【００８１】
図４は、本発明に適用できる予測ユニットを説明する図である。
【００８２】
ＰＵは、ＰＵが属するＣＵのコーディングモードとしてイントラ予測モードが使用されるか、インター予測モードが使用されるかによって相違して分割される。
【００８３】
図４（ａ）は、イントラ予測モードが使用される場合のＰＵを例示し、図４（ｂ）は、インター予測モードが使用される場合のＰＵを例示する。
【００８４】
図４（ａ）に示すように、１つのＣＵのサイズが２Ｎ×２Ｎ（Ｎ＝４、８、１６、３２）である場合を仮定すれば、１つのＣＵは、２つのタイプ（すなわち、２Ｎ×２Ｎ又はＮ×Ｎ）に分割されることができる。
【００８５】
ここで、２Ｎ×２Ｎ形態のＰＵに分割される場合、１つのＣＵ内に１つのＰＵだけが存在することを意味する。
【００８６】
それに対し、Ｎ×Ｎ形態のＰＵに分割される場合、１つのＣＵは、４個のＰＵに分割され、各ＰＵ単位別に互いに異なる予測ブロックが生成される。ただし、このようなＰＵの分割は、ＣＵの輝度成分に対するＣＢのサイズが最小サイズである場合（すなわち、ＣＵがＳＣＵである場合）のみに行われることができる。
【００８７】
図４（ｂ）に示すように、１つのＣＵのサイズが２Ｎ×２Ｎ（Ｎ＝４、８、１６、３２）である場合を仮定すれば、１つのＣＵは、８つのＰＵタイプ（すなわち、２Ｎ×２Ｎ、Ｎ×Ｎ、２Ｎ×Ｎ、Ｎ×２Ｎ、ｎＬ×２Ｎ、ｎＲ×２Ｎ、２Ｎ×ｎＵ、２Ｎ×ｎＤ）に分割されることができる。
【００８８】
イントラ予測と同様に、Ｎ×Ｎ形態のＰＵ分割は、ＣＵの輝度成分に対するＣＢのサイズが最小サイズである場合（すなわち、ＣＵがＳＣＵである場合）のみに行われることができる。
【００８９】
インター予測では、横方向に分割される２Ｎ×Ｎ形態及び縦方向に分割されるＮ×２Ｎ形態のＰＵ分割をサポートする。
【００９０】
また、非対称動き分割（ＡＭＰ：Asymmetric Motion Partition）形態であるｎＬ×２Ｎ、ｎＲ×２Ｎ、２Ｎ×ｎＵ、２Ｎ×ｎＤ形態のＰＵ分割をサポートする。ここで、「ｎ」は、２Ｎの１／４値を意味する。ただし、ＡＭＰは、ＰＵが属するＣＵが最小サイズのＣＵである場合、使用されることができない。
【００９１】
１つのＣＴＵ内の入力画像を効率的に符号化するために、コーディングユニットＣＵ、予測ユニットＰＵ、変換ユニットＴＵの最適な分割構造は、下記のような実行過程を経て最小レート−歪み（Rate-Distortion）値に基づいて決定されることができる。例えば、６４×６４ＣＴＵ内の最適なＣＵ分割過程を説明すれば、６４×６４サイズのＣＵから８×８サイズのＣＵまでの分割過程を経ながら、レート−歪みコストを計算できる。具体的な過程は、次のとおりである。
【００９２】
１）６４×６４サイズのＣＵに対してインター／イントラ予測、変換／量子化、逆量子化／逆変換、及びエントロピエンコードの実行を介して、最小のレート−歪み値を発生させる最適なＰＵ及びＴＵの分割構造を決定する。
【００９３】
２）６４×６４ＣＵを３２×３２サイズのＣＵ４個に分割し、各３２×３２ＣＵに対して最小のレート−歪み値を発生させる最適なＰＵ及びＴＵの分割構造を決定する。
【００９４】
３）３２×３２ＣＵを１６×１６サイズのＣＵ４個に再度分割し、各１６×１６ＣＵに対して最小のレート−歪み値を発生させる最適なＰＵ及びＴＵの分割構造を決定する。
【００９５】
４）１６×１６ＣＵを８×８サイズのＣＵ４個に再度分割し、各８×８ＣＵに対して最小のレート−歪み値を発生させる最適なＰＵ及びＴＵの分割構造を決定する。
【００９６】
５）上記の３）の過程で算出した１６×１６ＣＵのレート−歪み値と、上記の４）の過程で算出した４個８×８ＣＵのレート−歪み値との合計を比較して、１６×１６ブロック内で最適なＣＵの分割構造を決定する。この過程を残りの３個の１６×１６ＣＵなどに対しても同様に行う。
【００９７】
６）上記の２）の過程で計算された３２×３２ＣＵのレート−歪み値と、上記の５）の過程で取得した４個の１６×１６ＣＵのレート−歪み値との合計を比較して、３２×３２ブロック内で最適なＣＵの分割構造を決定する。この過程を残りの３個の３２×３２ＣＵなどに対しても同様に行う。
【００９８】
７）最後に、上記の１）の過程で計算された６４×６４ＣＵのレート−歪み値と、上記の６）の過程で取得した４個の３２×３２ＣＵのレート−歪み値と、の合計を比較して、６４×６４ブロック内で最適なＣＵの分割構造を決定する。
【００９９】
イントラ予測モードにおいて、ＰＵ単位で予測モードが選択され、選択された予測モードに対して実際のＴＵ単位で予測及び再構成が行われる。
【０１００】
ＴＵは、実際に予測及び再構成が行われる基本単位を意味する。ＴＵは、輝度（luma）成分に対する変換ブロック（ＴＢ：Transform Block）と、これに対応する２つの色差（chroma）成分に対するＴＢと、を含む。
【０１０１】
前述した図３の例において、１つのＣＴＵがクアッドツリー構造に分割されてＣＵが生成されるように、ＴＵは、コーディングしようとする１つのＣＵからクアッドツリー構造に階層的に分割される。
【０１０２】
ＴＵは、クアッドツリー構造に分割されるので、ＣＵから分割されたＴＵは、再度より小さい下位ＴＵに分割されることができる。ＨＥＶＣでは、ＴＵのサイズは、３２×３２、１６×１６、８×８、４×４のうち、いずれか１つに決められることができる。
【０１０３】
さらに、図３に示すように、クアッドツリーのルートノード（root node）は、ＣＵと関連すると仮定する。クアッドツリーは、リーフノード（leaf node）に到達するまで分割され、リーフノードは、ＴＵに該当する。
【０１０４】
より具体的に説明すれば、ＣＵは、ルートノード（root node）に該当し、最も小さい深さ（depth）（すなわち、ｄｅｐｔｈ＝０）値を有する。入力画像の特性に応じてＣＵが分割されないこともあり、この場合、ＣＵは、ＴＵに該当する。
【０１０５】
ＣＵは、クアッドツリー形態に分割されることができ、その結果、深さ１（ｄｅｐｔｈ＝１）である下位ノードが生成される。そして、１の深さを有する下位ノードでそれ以上分割されなかったノード（すなわち、リーフノード）は、ＴＵに該当する。例えば、図３（ｂ）においてノードａ、ｂ、及びｊに対応するＴＵ（ａ）、ＴＵ（ｂ）、ＴＵ（ｊ）は、ＣＵで１回分割され、１の深さを有する。
【０１０６】
１の深さを有するノードのうち、少なくともいずれか１つは、再度クアッドツリー形態に分割されることができ、その結果、深さ２（すなわち、ｄｅｐｔｈ＝２）である下位ノードが生成される。そして、２の深さを有する下位ノードでそれ以上分割されなかったノード（すなわち、リーフノード）は、ＴＵに該当する。例えば、図３（ｂ）においてノードｃ、ｈ、及びｉに対応するＴＵ（ｃ）、ＴＵ（ｈ）、ＴＵ（ｉ）は、ＣＵから２回分割され、２の深さを有する。
【０１０７】
また、２の深さを有するノードのうち、少なくともいずれか１つは、再度クアッドツリー形態に分割されることができ、その結果、深さ３（すなわち、ｄｅｐｔｈ＝３）である下位ノードが生成される。そして、３の深さを有する下位ノードでそれ以上分割されなかったノード（すなわち、リーフノード）は、ＴＵに該当する。例えば、図３（ｂ）においてノードｄ、ｅ、ｆ、ｇに対応するＴＵ（ｄ）、ＴＵ（ｅ）、ＴＵ（ｆ）、ＴＵ（ｇ）は、ＣＵから３回分割され、３の深さを有する。
【０１０８】
ツリー構造を有するＴＵは、予め決められた最大深さ情報（又は、最大レベル情報）を有して階層的に分割されることができる。そして、それぞれの分割されたＴＵは、深さ情報を有することができる。深さ情報は、ＴＵの分割された回数及び／又は程度を表すので、ＴＵのサイズに関する情報を含むこともできる。
【０１０９】
１つのＴＵに対して、当該ＴＵが分割されるか否かを表す情報（例えば、分割ＴＵフラグ（ｓｐｌｉｔ＿ｔｒａｎｓｆｏｒｍ＿ｆｌａｇ））がデコーダに伝達され得る。この分割情報は、最小サイズのＴＵを除いた全てのＴＵに含まれている。例えば、分割が可能か否かを表すフラグの値が「１」であれば、当該ＴＵは、さらに４個のＴＵに分けられ、分割が可能か否かを表すフラグの値が「０」であれば、当該ＴＵは、それ以上分けられない。
【０１１０】
既存の画像圧縮符号化／復号技術で、エンコーダは、インター予測又はイントラ予測を通じて現在ブロック（又は、現在処理ブロック）の予測ブロックを生成し、原画像（又は、入力画像）から上記予測ブロックを減算することで、残差信号（residual signal）（又は、残差ブロック）を生成する。エンコーダは、生成された残差信号に対して変換（transform）を行い、量子化して、量子化された係数に対してエントロピ符号化を行う。デコーダは、エンコーダから出力された信号を受信し、上記信号に対してエントロピ復号を行う。デコーダは、エントロピ復号された信号に対して逆量子化及び逆変換（inverse transform）を行うことによって残差信号を生成する。そして、デコーダは、現在ブロックの予測ブロックを生成し、上記残差信号と合わせて現在ブロックを復元する。
【０１１１】
即ち、既存の画像圧縮符号化／復号技術において、エンコーダは、ピクセル領域の信号に対して一次変換（primary transform）（又は、コア変換（core transform））を行って変換領域の信号を生成し、上記変換領域の信号に対して量子化を行う。しかしながら、変換領域の信号の特性を用いて、上記変換領域の信号に対して再度変換（即ち、二次変換（secondary transform））を実行すれば、既存の技術と比べて圧縮性能をより向上させることができ、デコーダにシグナリングされる残差信号データの量を減らすことができる。
【０１１２】
本発明は、上記のような二次変換に用いられる変換カーネルのサイズを効率よく決定する方法を提案する。
【０１１３】
また、本発明は、ブロックのサイズによって適応的に選択される変換カーネルを用いて二次変換を行う方法を提案する。
【０１１４】
また、本発明は、変換カーネルのサイズを送信することによって、二次変換に適応されるカーネルを適応的に選択する方法を提案する。
【０１１５】
また、本発明は、残差信号を用いて二次変換を適用するか否か又は適用範囲を決定する方法を提案する。
【０１１６】
また、本発明は、残差信号を用いて二次変換に適用される変換カーネルのサイズを導出（誘導）する（deriving）方法を提案する。
【０１１７】
実施形態１
【０１１８】
本発明の一実施形態において、エンコーダ／デコーダは、処理ブロックのサイズによって適応的に二次変換に用いられる変換カーネルのサイズを選択し、選択された変換カーネルを用いて二次変換を行うことができる。
【０１１９】
ここで、処理ブロックは、予測、変換及び／又は量子化などのエンコーディング／デコーディングの処理過程が行われる単位（又は、ブロック）を意味し、説明の便宜のために、ブロック、処理ユニットなどと称されることもできる。また、変換過程が行われる単位で使われる場合、上記処理ブロックは、コーディングブロック（coding block）、コーディングユニット（coding unit）、変換ブロック（transform block）、変換ユニット（transform unit）などと称されることができる。
【０１２０】
本実施形態によれば、エンコーダでは、一次変換を行った後、量子化を行う以前に一次変換された残差信号に対して二次変換を行うことができる。この場合、デコーダは、エンコーダから受信した残差信号に対して逆量子化を行い、逆量子化された残差信号に対して一次逆変換を行う前に二次逆変換を行うことができる。
【０１２１】
ＱＴＢＴ（Quad Tree plus Binary Tree）構造のように多様なブロックサイズで変換が行われる画像圧縮技術において、エンコーダ／デコーダは、ブロックのサイズに適合したサイズの二次変換カーネル（又は、二次変換）を用いて、二次変換を適用することができる。
【０１２２】
図５は、本発明が適用される実施形態であって、ブロックのサイズに基づいて、二次変換に用いられる変換カーネルのサイズを決定する方法を説明する図である。
【０１２３】
本発明で説明するブロックのサイズに基づいて変換カーネルのサイズを決定する方法は、エンコーダ及びデコーダに全て適用されることができ、説明の便宜のためにデコーダを基準に説明する。
【０１２４】
図５を参照すると、二次変換のために非分離（分離不可能な）（non-separable）変換を適用する場合を仮定する。
【０１２５】
デコーダは、エンコーダから受信したビットストリームから量子化された変換係数を抽出し、抽出された量子化された変換係数に対して逆量子化を行う（Ｓ５０１）。この際、デコーダは、量子化された変換係数を抽出するために、エンコーダから受信したビットストリームに対してエントロピデコーディングを行うことができる。
【０１２６】
デコーダは、現在ブロックのサイズ（即ち、現在ブロックの幅（width）及び高さ（height））を用いて、現在ブロックに適用される二次変換カーネルのサイズを決定する（Ｓ５０２）。例えば、デコーダは、４×４、８×８、１６×１６、３２×３２、６４×６４サイズの予め定められた二次変換カーネルのうち、現在ブロックのサイズによって決定される（又は、現在ブロックのサイズにマッピングされる）二次変換カーネルを決定することができる。
【０１２７】
例えば、現在ブロックの幅（width）又は高さ（height）が８より小さい場合、デコーダは、現在ブロックに対して４×４サイズの二次変換カーネルを用いて二次変換を行うことができる。一方、現在ブロックの幅及び高さが８より大きいか等しい場合、デコーダは、８×８サイズの二次変換カーネルを用いて二次変換を行うことができる。
【０１２８】
デコーダは、ステップＳ５０２で決定された二次変換カーネルを用いて、逆量子化された変換ブロックに対して二次逆変換を行う（Ｓ５０３）。
【０１２９】
上記逆量子化された変換ブロックは、上記ステップＳ５０１で抽出された逆量子化された変換係数の２次元配列を示す。
【０１３０】
また、現在ブロックに適用される二次逆変換カーネルのサイズが現在ブロックのサイズより小さい場合、デコーダは、上記現在ブロックの左上段領域（即ち、低周波領域）に対してのみ二次逆変換を行うこともでき、上記現在ブロックを上記二次逆変換カーネルサイズ単位のサブブロックに分割し、サブブロック単位で二次逆変換を適用することもできる。言い換えると、デコーダは、現在ブロック内で二次逆変換カーネルサイズの左上段領域に対してのみ二次逆変換を適用することもでき、二次逆変換カーネルサイズ単位で現在ブロック全体に二次逆変換を適用することもできる。
【０１３１】
デコーダは、二次逆変換が行われた現在ブロックに対して一次逆変換を行うことによって、現在ブロックの残差ブロックを生成することができる。
【０１３２】
図６及び図７は、本発明が適用される実施形態であって、ブロックの幅及び高さに基づいて二次変換に用いられる変換カーネルのサイズを決定する方法を説明する図である。
【０１３３】
図６及び図７を参照すると、二次変換のために可分離（分離可能な）（separable）変換を適用する場合を仮定する。
【０１３４】
デコーダは、エンコーダから受信したビットストリームから量子化された変換係数を抽出し、抽出された量子化された変換係数に対して逆量子化を行う（Ｓ６０１、Ｓ７０１）。この際、デコーダは、量子化された変換係数を抽出するためにエンコーダから受信したビットストリームに対してエントロピデコーディングを行うことができる。
【０１３５】
デコーダは、現在ブロックの幅を用いて現在ブロックの水平方向に適用される二次変換カーネルのサイズを決定する（Ｓ６０２、Ｓ７０２）。そして、デコーダは、現在ブロックの高さを用いて現在ブロックの垂直方向に適用される二次変換カーネルのサイズを決定する（Ｓ６０３、Ｓ７０３）。例えば、デコーダは、４、８、１６、３２、６４サイズの予め定められた二次変換カーネルのうち、現在ブロックの幅又は高さによって決定される（又は、現在ブロックの幅又は高さにマッピングされる）二次変換カーネルを各々決定することができる。
【０１３６】
ここで、図６は、水平方向に適用される変換カーネルと垂直方向に適用される変換カーネルとが区分されない場合を例示し、図７は、水平方向に適用される変換カーネルと垂直方向に適用される変換カーネルとが区分される場合を例示する。
【０１３７】
デコーダは、ステップＳ６０２、Ｓ６０３、Ｓ７０２、Ｓ７０３で決定された二次変換カーネルを用いて、逆量子化された変換ブロックに対して二次逆変換を行う（Ｓ６０４、Ｓ７０４）。
【０１３８】
現在ブロックに適用される二次逆変換カーネルのサイズが現在ブロックの幅又は高さより小さい場合、デコーダは、上記現在ブロックの左上段領域（即ち、低周波領域）に対してのみ二次逆変換を適用することもでき、上記現在ブロックの幅又は高さを上記二次逆変換カーネルのサイズ単位で分割して各々二次逆変換を行うこともできる。
【０１３９】
デコーダは、二次逆変換された変換ブロックに対して一次逆変換を行うことによって、現在ブロックの残差ブロックを生成することができる。
【０１４０】
実施形態２
【０１４１】
本発明の一実施形態において、エンコーダは、処理ブロックに適用される変換カーネルのサイズを適応的に選択し、変換カーネルのサイズ情報をデコーダに送信することができる。
【０１４２】
先の実施形態１の例においては、現在ブロックのサイズが大きければ、相対的により大きいサイズの変換カーネルが選択できる。しかしながら、現在ブロックのサイズが相対的により大きいにもかかわらず、より小さい変換カーネルを適用することが圧縮性能の観点で有利な場合が発生することがある。したがって、現在ブロックのサイズにかかわらず、現在ブロックに最適化されたサイズのカーネル情報をデコーダにシグナリングすることで、多様なサイズの変換カーネルを適用することができ、これを通じて圧縮性能を向上させることができる。
【０１４３】
図８は、本発明が適用される実施形態であって、二次変換に用いられる変換カーネルのサイズを示すシンタックスを用いて二次変換を行う方法を説明する図である。
【０１４４】
本発明で説明する変換カーネルのサイズの決定方法は、エンコーダ及びデコーダに全て適用されることができ、説明の便宜のためにデコーダを基準として説明する。
【０１４５】
図８を参照すると、二次変換のために非分離（non-separable）変換を適用する場合を仮定する。
【０１４６】
ステップＳ８０１は、先の図５のステップＳ５０１と同様に実行できる。
【０１４７】
デコーダは、二次変換に用いられる変換カーネルのサイズを示すシンタックス（syntax）を用いて、現在ブロックに適用される変換カーネルのサイズを決定する（Ｓ８０２）。この場合、ステップＳ８０２の前に変換カーネルサイズシンタックスをビットストリームからパージングするステップを追加できる。
【０１４８】
ステップＳ８０３は、先の図５のステップＳ５０３と同様に実行できる。
【０１４９】
また、先の図６及び図７で例示した場合のように、二次変換に可分離変換を適用する場合にも、図８で説明した方法と同一の方法により本実施形態で提案する方法が適用できる。
【０１５０】
実施形態２−１
【０１５１】
本発明の実施形態では、変換ブロックとコーディングブロックとが同一であるブロック構造の圧縮方法において、二次変換に適用される変換カーネルのサイズを送信する方法を提案する。
【０１５２】
例えば、同一のブロック単位（コーディングブロック、コーディングユニット）で予測、変換、及び量子化が行われるＱＴＢＴ構造の場合、変換手続で変換ブロック（又は、変換ユニット）に追加の分割が行われないことがある。このような場合、エンコーダは、二次変換に適用される二次変換カーネルのサイズを選択し、コーディングブロック又は上位レベル（例えば、シーケンス、ピクチャ、スライス、ＣＴＵ）単位でデコーダにシグナリングすることができる。
【０１５３】
図９は、本発明が適用される実施形態であって、二次変換に適用される変換カーネルのサイズを決定する方法を例示するフローチャートである。
【０１５４】
図９を参照すると、本実施形態で説明する変換カーネルのサイズを決定する方法は、変換ブロックとコーディングブロックとが同一であるよう決定されるブロック構造に適用される場合を仮定する。
【０１５５】
デコーダは、現在ブロックの幅及び高さが全て４より大きいか否かを確認する（Ｓ９０１）。
【０１５６】
上記ステップＳ９０１で判断した結果、現在ブロックの幅及び高さが全て４より大きい場合、デコーダは、二次変換カーネルのサイズを指示するシンタックスをパージングし（Ｓ９０２）、現在ブロックに適用される二次変換カーネルのサイズを確認する（Ｓ９０３）。例えば、非分離二次変換（ＮＳＳＴ：Non Separable Secondary Transform）が適用される場合、上記シンタックスは、ＮＳＳＴカーネルのサイズを示すシンタックスでありうる。
【０１５７】
上記ステップＳ９０３で確認した結果、上記シンタックスが４×４カーネルを指示する場合、又は上記ステップＳ９０１で判断した結果、現在ブロックの幅又は高さが４より小さいか等しい場合、デコーダは、現在ブロックに４×４サイズの変換カーネルを用いて二次変換を適用する（Ｓ９０４）。
【０１５８】
ステップＳ９０３で確認した結果、上記シンタックスが８×８カーネルを指示する場合、デコーダは、現在ブロックに８×８サイズの変換カーネルを用いて二次変換を適用する（Ｓ９０５）。
【０１５９】
即ち、現在ブロックの幅及び高さが全て４より大きい場合にも、エンコーダから送信されたシンタックスが４×４サイズを指示する場合、デコーダは、４×４サイズのブロック領域、８×８サイズのブロック領域、又は現在ブロック全体の領域に４×４サイズの二次変換カーネルを用いて二次変換を行うことができる。
【０１６０】
図９では、二次変換のために４×４サイズ及び８×８サイズの変換カーネルが適用される場合を仮定して説明したが、本発明はこれに制限されない。即ち、４×４サイズ及び８×８サイズの変換カーネルだけでなく、多様なサイズの変換カーネルを用いて本実施形態で提案する方法を適用することができる。また、現在ブロックが二次変換を適用する最小サイズのブロックより大きい場合、デコーダは、エンコーダから送信されたシンタックス情報に基づいて、現在ブロックに適用される二次変換カーネルのサイズを決定することができる。
【０１６１】
一実施形態において、上記二次変換カーネルを指示するシンタックスは、シーケンス、ピクチャ、スライス、ＣＴＵ（coding tree unit）、又はコーディングブロック（coding block）単位で、エンコーダからデコーダに送信できる。
【０１６２】
実施形態２−２
【０１６３】
本発明の実施形態では、変換ブロックとコーディングブロックとが同一でないブロック構造の圧縮方法において、二次変換に適用される変換カーネルのサイズを送信する方法を提案する。
【０１６４】
本実施形態で提案する方法は、前述した実施形態２−１とは異なり、変換ブロックとコーディングブロックとが互いに異なるように決定できるブロック構造に適用できる。例えば、変換、量子化が行われる単位を示す変換ブロック（又は、変換ユニット）は、コーディングブロックから分割されたブロックでありうる。
【０１６５】
一実施形態において、エンコーダは、コーディングブロック単位で変換カーネルのサイズを指示するシンタックスをデコーダに送信することができる。この際、デコーダは、コーディングブロック内において、変換ブロック単位でエンコーダから送信されたシンタックスに基づいてカーネルのサイズを選択し、二次変換を適用することができる。この場合、デコーダは、変換ブロックが二次変換を適用する最小サイズのブロックとサイズが同一である場合、エンコーダから受信したシンタックスにかかわらず、最小サイズの二次変換カーネルを用いて二次変換を行うことができる。
【０１６６】
図１０は、本発明が適用される実施形態であって、二次変換に適用される変換カーネルのサイズを決定する方法を例示するフローチャートである。
【０１６７】
図１０を参照すると、本実施形態で説明する変換カーネルのサイズの決定方法は、変換ブロックとコーディングブロックとが個別に（又は、階層的に）決定されるブロック構造に適用される場合を仮定する。また、二次変換カーネルを指示するシンタックスは、コーディングブロック単位で送信される場合を仮定する。
【０１６８】
デコーダは、現在コーディングブロックの幅及び高さが全て４より大きいか否かを確認する（Ｓ１００１）。
【０１６９】
上記ステップＳ１００１で判断した結果，現在コーディングブロックの幅及び高さが全て４より大きい場合、デコーダは、二次変換カーネルのサイズを指示するシンタックスをパージングする（Ｓ１００２）。
【０１７０】
以後、デコーダは、現在コーディングブロック内の変換ブロック（又は、変換ユニット）単位でループし（loop）ながら、二次変換カーネルのサイズを決定することができる。
【０１７１】
具体的には、デコーダは、現在コーディングブロック内の現在変換ブロックが最後の変換ブロックか否かを確認する（Ｓ１００３）。
【０１７２】
上記ステップＳ１００３で確認した結果、上記現在変換ブロックが最後の変換ブロックになるまで、デコーダは、現在変換ブロックの幅及び高さが全て４より大きいか否かを確認する（Ｓ１００４）。ステップＳ１００４で判断した結果、現在変換ブロックの幅及び高さが全て４より大きい場合、デコーダは、ステップＳ１００２でパージングしたシンタックスを用いて現在変換ブロックに適用される二次変換カーネルのサイズを確認する（Ｓ１００５）。例えば、非分離二次変換（ＮＳＳＴ：Non Separable Secondary Transform）が適用される場合、上記シンタックスは、ＮＳＳＴカーネルのサイズを示すシンタックスでありうる。
【０１７３】
上記ステップＳ１００５で確認した結果、上記シンタックスが４×４カーネルを指示する場合、上記ステップＳ１００１で判断した結果、現在コーディングブロックの幅若しくは高さが４より小さいか等しい場合、又は上記ステップＳ１００４で判断した結果、現在変換ブロックの幅若しくは高さが４より小さいか等しい場合、デコーダは、現在変換ブロックに４×４サイズの変換カーネルを用いて二次変換を適用する（Ｓ１００６）。
【０１７４】
上記ステップＳ１００５で確認した結果、上記シンタックスが８×８カーネルを指示する場合、デコーダは、上記現在変換ブロックに８×８サイズの変換カーネルを用いて二次変換を適用する（Ｓ１００７）。
【０１７５】
即ち、デコーダは、コーディングブロック単位で変換カーネルを指示するシンタックスをパージングすることができる。そして、デコーダは、コーディングブロック内において、変換ブロック単位でパージングされたシンタックスを用いて、二次変換カーネルのサイズを決定することができる。現在変換ブロックの幅及び高さが全て４より大きい場合にも、エンコーダから送信されたシンタックスが４×４サイズを指示する場合、デコーダは、４×４サイズのブロック領域、８×８サイズのブロック領域、又は現在変換ブロック全体の領域に対して４×４サイズの二次変換カーネルを用いて二次変換を行うことができる。
【０１７６】
図１０では、二次変換のために４×４サイズ及び８×８サイズの変換カーネルが適用される場合を仮定して説明したが、本発明はこれに制限されない。即ち、４×４サイズ及び８×８サイズの変換カーネルだけでなく、多様なサイズの変換カーネルを用いて本実施形態で提案する方法を適用することができる。また、現在変換ブロックが二次変換を適用する最小サイズのブロックより大きい場合、デコーダは、エンコーダから送信されたシンタックス情報に基づいて、現在変換ブロックに適用される二次変換カーネルのサイズを決定することができる。
【０１７７】
一実施形態において、上記二次変換カーネルを指示するシンタックスは、コーディングブロック単位の他にも、シーケンス、ピクチャ、スライス、又はＣＴＵ単位で、エンコーダからデコーダに送信されることもできる。
【０１７８】
また、本発明の一実施形態において、輝度成分（luma Component）と色差成分（chroma component）とが異なるブロック構造を有する場合、下記の表１から表４の例のように、エンコーダは、デコーダに変換カーネルサイズ情報をシグナリングすることができる。
【０１７９】
下記の表１から表４の例において、Ｉスライスの場合には、輝度成分（又は、輝度チャンネル（channel））と色差成分（又は、色差チャンネル）とのブロック構造が互いに異なるように決定され、Ｂスライスの場合には、輝度成分と色差成分とのブロック構造が同一に決定されると仮定する。Ｂスライスの場合には、輝度成分と色差成分とのブロック構造が同一に決定されるので、エンコーダは、デコーダに輝度成分に対してのみ変換カーネルのサイズを指示するフラグを送信することができる。また、現在ブロックのサイズが８×８ブロックより大きい場合を仮定する。現在ブロックのサイズが４×４ブロックより大きくない場合、又は現在ブロックのサイズが最小サイズのブロックである場合、上記現在ブロックに４×４サイズの変換カーネルが適用できる。
【０１８０】
＜表１＞
【表１】
0006870096.tif 000002
【０１８１】
表１を参照すると、Ｉスライスにおいて、エンコーダは、色差成分に対する変換カーネルのサイズを指示するフラグをデコーダにシグナリングしないことがある。この際、エンコーダ／デコーダは、輝度成分のフラグ情報にかかわらず、８×８サイズ以上の色差成分ブロックに対して８×８サイズの変換カーネルを適用することができる。Ｂスライスの色差成分に対しても輝度成分のフラグ情報にかかわらず、８×８サイズ以上の色差成分ブロックに対して８×８サイズの変換カーネルを適用することができる。
【０１８２】
＜表２＞
【表２】
0006870096.tif 000003
【０１８３】
表２を参照すると、Ｉスライスにおいて、エンコーダは、色差成分に対する変換カーネルのサイズを指示するフラグをデコーダにシグナリングしないことがある。この際、エンコーダ／デコーダは、輝度成分のフラグ情報にかかわらず、８×８サイズ以上の色差成分ブロックに対して８×８サイズの変換カーネルを適用することができる。一方、Ｂスライスの場合には、同一にブロック構造が決定できるので、エンコーダ／デコーダは、輝度成分のフラグ情報によって、８×８サイズ以上の色差成分ブロックに対して４×４サイズ又は８×８サイズの変換カーネルを適用することができる。
【０１８４】
＜表３＞
【表３】
0006870096.tif 000004
【０１８５】
表３を参照すると、Ｉスライスにおいて、エンコーダは、色差成分に対する変換カーネルのサイズを指示するフラグをデコーダにシグナリングすることができる。この際、エンコーダ／デコーダは、各々の成分別にシグナリングされた情報を用いて変換カーネルのサイズを決定し、二次変換を適用することができる。一方、Ｂスライスの場合には、同一にブロック構造が決定できるので、エンコーダ／デコーダは、輝度成分のフラグ情報によって、８×８サイズ以上の色差成分ブロックに対して４×４サイズ又は８×８サイズの変換カーネルを適用することができる。
【０１８６】
＜表４＞
【表４】
0006870096.tif 000005
【０１８７】
表４を参照すると、Ｉスライスにおいて、エンコーダは、色差成分に対する変換カーネルのサイズを指示するフラグをデコーダにシグナリングしないことがある。この際、エンコーダ／デコーダは、輝度成分のフラグ情報によって８×８サイズ以上の色差成分ブロックに対して４×４サイズ又は８×８サイズの変換カーネルを適用することができる。そして、Ｂスライスの場合には、同一にブロック構造が決定できるので、エンコーダ／デコーダは、輝度成分のフラグ情報によって、８×８サイズ以上の色差成分ブロックに対して４×４サイズ又は８×８サイズの変換カーネルを適用することができる。
【０１８８】
実施形態３
【０１８９】
本発明の一実施形態において、エンコーダ／デコーダは、二次変換を適用するに当たって、シグナリング無しでブロックの残差信号（residual signal）の特性を用いて、二次変換を適用するか否かを決定するか、又は変換カーネルのサイズを適応的に選択することができる。前述した実施形態２で、デコーダは、変換カーネルのサイズを指示するシンタックスをエンコーダから受信する一方、本実施形態において、デコーダは、追加的なシンタックスを受信せずに、ブロック内の特性を用いて変換カーネルのサイズを導出することができる。
【０１９０】
実施形態３−１
【０１９１】
本発明の一実施形態において、エンコーダ／デコーダは、ブロック内の残差信号の特性を考慮して、二次変換を適用するか否かを決定することができる。例えば、エンコーダ／デコーダは、残差信号の分布度（程度）（degree of distribution）、残差信号の個数、又は残差信号のサイズなどを用いて、二次変換を適用するか否かを決定することができる。
【０１９２】
残差信号に基づいて二次変換を適用するか否かを決定することによって、２次変換を指示するためのフラグに用いられるビットを節約することができ、圧縮性能を向上させることができる。
【０１９３】
以下、本発明において二次変換に非分離二次変換（ＮＳＳＴ）が用いられる場合を仮定して説明するが、本発明がこれに限定されるものではない。二次変換として公知の他の変換を適用できる。
【０１９４】
図１１は、本発明の一実施形態に従う残差信号（residual signal）を用いて、二次変換を適用するか否かを決定する方法を例示する図である。
【０１９５】
図１１を参照すると、現在ブロックのサイズが１６×１６であり、ＮＳＳＴを左上段の８×８ブロック（１１０１）に適用する場合を仮定する。
【０１９６】
図１１に図示したように、左側上段８×８ブロック（１１０１）において残差信号が分布していなければ、ＮＳＳＴを適用する場合とＮＳＳＴを適用しない場合との間の差が発生しないだけでなく、ＮＳＳＴを適用するか否か又はカーネルのサイズをシグナリングするために不必要なビットが使用されることができる（an unnecessary bit may be used to signal whether to apply the NSST or the size of the kernel）。
【０１９７】
したがって、本発明の一実施形態では、このような問題点を解決するために、残差信号の分布に基づいて二次変換を適用するか否かを決定する方法を提案する。
【０１９８】
エンコーダ／デコーダは、現在ブロックの左上段８×８サイズの領域（１１０１）に残差信号が分布するか否かによって、二次変換を適用するか否かを決定することができる。
【０１９９】
一実施形態において、エンコーダ／デコーダは、二次変換を適用する左上段８×８サイズの領域（１１０１）に残差信号が存在しない場合に二次変換を行わないことがある。言い換えると、左上段８×８サイズの領域（１１０１）に残差信号が１つ又は複数存在する場合、該当領域に二次変換を適用することができる。
【０２００】
あるいは、一実施形態において、エンコーダ／デコーダは、左上段８×８サイズの領域（１１０１）に存在する残差信号の個数が特定のしきい値より大きい場合、二次変換を適用することができる。特定のしきい値より小さいか等しい場合には、エンコーダ／デコーダは、二次変換を適用しないことがある。
【０２０１】
実施形態３−２
【０２０２】
本発明の一実施形態において、エンコーダ／デコーダは、ブロック内の残差信号の特性を考慮して二次変換の適用範囲を決定することができる。二次変換をブロック全体に適用すれば、ブロックのサイズが大きいほど複雑度が増加して圧縮性能が低下することがある。
【０２０３】
したがって、このような問題点を解決するために、本発明では、ブロック内のサブ領域単位で二次変換を適用するか否かを決定する方法を提案する。本発明の実施形態によると、残差信号が１つ以上又は特定個数以上存在するブロックに対して二次変換を適用することによって、複雑度を減らすことができる。
【０２０４】
図１２及び図１３は、本発明の一実施形態に従う残差信号（residual signal）を用いて二次変換を適用するか否かを決定する方法を例示する図である。
【０２０５】
図１２を参照すると、エンコーダ／デコーダは、現在ブロック（又は、現在残差ブロック）をサブブロック（又は、サブ領域）に分割し、分割されたサブブロック単位で、残差信号に基づいて二次変換を適用するか否かを決定することができる。
【０２０６】
エンコーダは、デコーダに二次変換を適用するか否かを指示するフラグを送信することもでき、そうでないこともある。二次変換を適用するか否かを指示するフラグがエンコーダによりシグナリングされる場合、デコーダは、受信したフラグにより二次変換を適用するか否かを決定することができる。そして、受信したフラグが二次変換の適用を指示する場合、デコーダは、現在ブロックを複数のサブブロックに分割し、各サブブロック内の残差信号に基づいてサブブロック単位で二次変換を適用するか否かを決定することができる。
【０２０７】
二次変換を適用するか否かを指示するフラグがエンコーダによりシグナリングされない場合、デコーダは、現在ブロックを複数のサブブロックに分割し、各サブブロック内の残差信号に基づいて、サブブロック単位で二次変換を適用するか否かを決定することができる。
【０２０８】
エンコーダ／デコーダは、分割されたサブブロック内に残差信号が存在しない場合、二次変換を適用しないと決定し、分割されたサブブロック内に残差信号が１つ又は複数存在する場合、二次変換を適用すると決定することができる。
【０２０９】
例えば、現在ブロックのサイズが１６×１６の場合、エンコーダ／デコーダは、現在ブロックを８×８サイズのサブブロックに分割することができる。図１２に示したように、左上側サブブロック（１２０１）内に残差信号が存在しない場合、エンコーダ／デコーダは、左上側サブブロック（１２０１）に対して二次変換を適用しないことがある。
【０２１０】
一方、図１２に図示したように、右上側サブブロック（１２０２）、左下側サブブロック（１２０３）、右下側サブブロック（１２０４）内に残差信号が存在する場合、エンコーダ／デコーダは、該当サブブロック（１２０２、１２０３、１２０４）に対して二次変換を適用することができる。
【０２１１】
図１３を参照すると、エンコーダ／デコーダは、分割されたサブブロック内に残差信号が特定の個数（又は、しきい値）以上存在しない場合、二次変換を適用しないと決定し、分割されたサブブロック内に残差信号が特定個数以上存在する場合、二次変換を適用すると決定することができる。
【０２１２】
例えば、現在ブロックのサイズが１６×１６の場合、エンコーダ／デコーダは、現在ブロックを８×８サイズのサブブロックに分割することができる。図１３に図示したように、左上側サブブロック、右上側サブブロック、左下側サブブロック内に残差信号が特定個数以上存在しない場合、エンコーダ／デコーダは、左上側サブブロック、右上側サブブロック、左下側サブブロックに対して二次変換を適用しないことがある。ここで、二次変換を適用するか否かを決定するしきい値を示す特定個数は、任意の値を有することができる。本実施形態において、上記特定個数は２であると仮定する。
【０２１３】
一方、図１３に図示したように、右下側サブブロック（１３０１）内に残差信号が特定個数以上存在する場合、エンコーダ／デコーダは、右下側サブブロック（１３０１）に対して二次変換を適用することができる。
【０２１４】
実施形態３−３
【０２１５】
本発明の一実施形態において、エンコーダ／デコーダは、ブロック内の残差信号の特性を考慮して二次変換カーネルのサイズを決定することができる。残差信号の分布範囲にかかわらず、一定サイズの二次変換カーネルを用いて二次変換を実行すれば、相対的に小さい領域のみに残差信号が分布する場合、不必要な領域に対して二次変換を適用することができ、これによって圧縮効率が落ちることがある。
【０２１６】
エンコーダ／デコーダは、残差信号の分布度に基づいて、二次変換のカーネルのサイズを適応的に決定することができる。
【０２１７】
図１４は、本発明の一実施形態に従う残差信号（residual signal）を用いて二次変換カーネルのサイズを決定する方法を例示する図である。
【０２１８】
図１４を参照すると、エンコーダ／デコーダは、現在ブロック内における残差信号の分布領域を確認することができる。例えば、エンコーダ／デコーダは、二次変換カーネルの適用可能なサイズ別に残差信号の存否を確認することができる。エンコーダ／デコーダは、適用可能な変換カーネルのうち、残差信号の存在領域を含む最小サイズの変換カーネルを、現在ブロックの二次変換に適用される変換カーネルとして決定することができる。
【０２１９】
例えば、適用可能な二次変換カーネルとして４×４サイズ及び８×８サイズの変換カーネルが存在し、図１４に図示したように、４×４サイズ領域内にのみ残差信号が存在する場合、エンコーダ／デコーダは、現在ブロックの二次変換に適用される変換カーネルのサイズを４×４サイズに決定することができる。
【０２２０】
前述した実施形態は、各々の実施形態が独立して適用されることもでき、いろいろな実施形態が組み合わされて使われることもできる。
【０２２１】
図１５は、本発明の一実施形態に従うビデオ信号の復号方法を例示する図である。
【０２２２】
以下、本実施形態を説明するに当たって、説明の便宜のためにデコーダを中心として説明するが、本発明に従うビデオ信号の復号方法は、エンコーダ及びデコーダにおいて同一に実行できる。
【０２２３】
デコーダは、ビデオ信号に対してエントロピデコーディングを行うことによって量子化された変換ブロックを生成する（Ｓ１５０１）。具体的には、デコーダは、エンコーダから受信したビットストリームをエントロピデコードして量子化された変換係数を抽出することができる。そして、デコーダは、予め定められたスキャン順序によって、量子化された変換係数を配置して２次元配列の量子化された変換ブロックを生成することができる。
【０２２４】
デコーダは、量子化された変換ブロックに対して逆量子化を行うことによって、逆量子化された変換ブロックを生成する（Ｓ１５０２）。
【０２２５】
デコーダは、逆量子化された変換ブロック内の０でない係数（non-zero coefficient）に関連する情報に基づいて、二次逆変換（secondary inverse transform）を適用するか否かを決定する（Ｓ１５０３）。
【０２２６】
先の図１１で説明したように、上記ステップＳ１５０３は、現在ブロック（即ち、逆量子化された変換ブロック）の左上側の特定領域に０でない係数が１つ又は複数存在するか否かを確認するステップを含むことができる。上記特定領域に０でない係数が１つ又は複数存在する場合、デコーダは、現在ブロックに二次逆変換を適用することができる。
【０２２７】
また、上記ステップＳ１５０３は、現在ブロックの左上側の特定領域内の０でない係数の個数を確認するステップを含むことができる。上記特定領域内の０でない係数の個数が特定しきい値（threshold）を超える場合、デコーダは、現在ブロックに二次逆変換を適用することができる。
【０２２８】
また、先の図１２及び図１３で説明したように、デコーダは、現在ブロックを特定サイズのサブブロックに分割し、分割されたサブブロック単位で二次逆変換を適用するか否かを決定することができる。この際、デコーダは、現在サブブロックに０でない係数が１つ又は複数存在するか否かを確認することができる。上記確認の結果、現在サブブロックに０でない係数が１つ又は複数存在する場合、デコーダは、現在サブブロックに二次逆変換を適用することができる。
【０２２９】
あるいは、デコーダは、現在サブブロック内の０でない係数の個数を確認することができる。現在サブブロック内の０でない係数の個数が特定しきい値（threshold）を超える場合、デコーダは、現在サブブロックに二次逆変換を適用することができる。
【０２３０】
また、先の図１４で説明したように、デコーダは、現在ブロック内の０でない係数に関連する情報に基づいて、上記現在ブロックに適用される二次逆変換カーネルのサイズを決定することができる。具体的には、上記二次逆変換カーネルのサイズは、現在ブロックの左上側の特定サイズの領域内に存在する０でない係数を含む二次逆変換カーネルのうち、最も小さい二次逆変換カーネルのサイズに決定することができる。
【０２３１】
また、図８から図１０で説明したように、現在ブロックのサイズが既に設定された最小サイズのブロックより大きい場合、デコーダは、ビデオ信号から二次逆変換カーネルのサイズを指示するシンタックス（syntax）を抽出することができる。そして、デコーダは、上記シンタックスに基づいて現在ブロックに適用される二次逆変換カーネルのサイズを決定することができる。上記二次逆変換カーネルのサイズを指示するシンタックスは、シーケンス（sequence）、ピクチャ（picture）、スライス（slice）、コーディングブロック（coding block）、又は変換ブロック（transform block）単位で送信できる。
【０２３２】
デコーダは、上記逆量子化された変換ブロックに適用される二次逆変換カーネル（secondary inverse transform kernel）を用いて、上記逆量子化された変換ブロックに対して二次逆変換を行う（Ｓ１５０４）。例えば、上記第２逆変換は、ＤＣＴ（Discrete Cosine Transform）、ＤＳＴ（Discrete Sine Transform）、カルーネンレーベ変換（Karhunen Loeve transform）、グラフベース変換（Graph based Transform）、又は非分離二次変換（ＮＳＳＴ：Non Separable Secondary Transform）のうち、いずれか１つを用いて実行できる。
【０２３３】
そして、デコーダは、二次逆変換された変換ブロックに対して一次逆変換を行うことによって残差ブロックを生成することができる。
【０２３４】
図１６は、本発明の一実施形態に従うビデオ信号の復号装置を例示する図である。
【０２３５】
図１６では、説明の便宜のために、エントロピデコード部１６０１、逆量子化部１６０２、二次逆変換決定部１６０３、及び二次逆変換部１６０４を各々別個のブロックで図示したが、エンコーダ及び／又はデコーダに含まれる構成で具現できる。
【０２３６】
図１６を参照すると、上記復号装置は、先の図５から図１５で提案された機能、過程及び／又は方法を具現する。具体的には、上記復号装置は、エントロピデコード部１６０１、逆量子化部１６０２、二次逆変換決定部１６０３、及び二次逆変換部１６０４を含んで構成できる。上記エントロピデコード部１６０１及び逆量子化部１６０２は、各々先の図２で説明したエントロピデコード部（図２の２１０）及び逆量子化部（図２の２２０）に含まれることができる。そして、二次逆変換決定部１６０３及び／又は二次逆変換部１６０４は、先の図２で説明した逆変換部（図２の２３０）に含まれることができる。
【０２３７】
エントロピデコード部１６０１は、ビデオ信号に対してエントロピデコーディングを行うことによって量子化された変換ブロックを生成する。具体的には、エントロピデコード部１６０１は、エンコーダから受信したビットストリームをエントロピデコードして量子化された変換係数を抽出することができる。そして、エントロピデコード部１６０１は、予め定められたスキャン順序によって量子化された変換係数を配置して、２次元配列の量子化された変換ブロックを生成することができる。
【０２３８】
逆量子化部１６０２は、量子化された変換ブロックに対して逆量子化を行うことによって逆量子化された変換ブロックを生成する。
【０２３９】
二次逆変換決定部１６０３は、逆量子化された変換ブロック内の０でない係数（non-zero coefficient）に関連する情報に基づいて、二次逆変換（secondary inverse transform）を適用するか否かを決定する。
【０２４０】
先の図１１で説明したように、二次逆変換決定部１６０３は、現在ブロック（即ち、逆量子化された変換ブロック）の左上側の特定領域に、０でない係数が１つ又は複数存在するか否かを確認することができる。上記特定領域に０でない係数が１つ又は複数存在する場合、二次逆変換決定部１６０３は、現在ブロックに二次逆変換が適用されると決定することができる。
【０２４１】
また、二次逆変換決定部１６０３は、現在ブロックの左上側の特定領域内の０でない係数の個数を確認することができる。上記特定領域内の０でない係数の個数が特定しきい値（threshold）を超える場合、二次逆変換決定部１６０３は、現在ブロックに二次逆変換が適用されると決定することができる。
【０２４２】
また、先の図１２及び図１３で説明したように、二次逆変換決定部１６０３は、現在ブロックを特定サイズのサブブロックに分割し、分割されたサブブロック単位で二次逆変換を適用するか否かを決定することができる。この際、二次逆変換決定部１６０３は、現在サブブロックに０でない係数が１つ又は複数存在するか否かを確認することができる。上記確認の結果、現在サブブロックに０でない係数が１つ又は複数存在する場合、二次逆変換決定部１６０３は、現在サブブロックに二次逆変換が適用されると決定することができる。
【０２４３】
あるいは、二次逆変換決定部１６０３は、現在サブブロック内の０でない係数の個数を確認することができる。現在サブブロック内の０でない係数の個数が特定しきい値（threshold）を超える場合、二次逆変換決定部１６０３は、現在サブブロックに二次逆変換が適用されると決定することができる。
【０２４４】
また、先の図１４で説明したように、二次逆変換決定部１６０３は、現在ブロック内の０でない係数に関連する情報に基づいて、上記現在ブロックに適用される二次逆変換カーネルのサイズを決定することができる。具体的には、上記二次逆変換カーネルのサイズは、現在ブロックの左上側の特定サイズの領域内に存在する０でない係数を含む二次逆変換カーネルのうち、最も小さい二次逆変換カーネルのサイズに決定できる。
【０２４５】
また、図８から図１０で説明したように、現在ブロックのサイズが既に設定された最小サイズのブロックより大きい場合、デコーダは、ビデオ信号から二次逆変換カーネルのサイズを指示するシンタックス（syntax）を抽出することができる。そして、二次逆変換決定部１６０３は、上記シンタックスに基づいて、現在ブロックに適用される二次逆変換カーネルのサイズを決定することができる。上記二次逆変換カーネルのサイズを指示するシンタックスは、シーケンス（sequence）、ピクチャ（picture）、スライス（slice）、コーディングブロック（coding block）、又は変換ブロック（transform block）単位で送信できる。
【０２４６】
二次逆変換部１６０４は、上記逆量子化された変換ブロックに適用される二次逆変換カーネル（secondary inverse transform kernel）を用いて、上記逆量子化された変換ブロックに対して二次逆変換を行う（Ｓ１５０４）。例えば、上記第２逆変換は、ＤＣＴ（Discrete Cosine Transform）、ＤＳＴ（Discrete Sine Transform）、カルーネンレーベ変換（Karhunen Loeve transform）、グラフベース変換（Graph based Transform）又は非分離二次変換（ＮＳＳＴ：Non Separable Secondary Transform）のうち、いずれか１つを用いて実行できる。
【０２４７】
そして、デコーダは、二次逆変換された変換ブロックに対して一次逆変換を行うことによって、残差ブロックを生成することができる。
【０２４８】
以上で説明された実施形態等は、本発明の構成要素及び特徴が所定形態に結合されたものである。各構成要素又は特徴は、別の明示的言及がない限り、選択的なものと考慮されなければならない。各構成要素又は特徴は、他の構成要素や特徴と結合されなかった形態で実施されることができる。また、一部の構成要素等及び／又は特徴を結合し（組み合わせ）て本発明の実施形態を構成することも可能である。本発明の実施形態等で説明される動作の順序は、変更されることができる。ある実施形態の一部の構成や特徴は、他の実施形態に含まれることができ、又は、他の実施形態の対応する構成又は特徴と交替される（置き換えられる）ことができる。特許請求の範囲において明示的な引用関係がない請求項等を結合して実施形態を構成したり、出願後の補正により新しい請求項として含め得ることは自明である。
【０２４９】
本発明に係る実施形態は、様々な手段、例えば、ハードウェア、ファームウェア（firmware）、ソフトウェア、又はそれらの組み合わせなどにより実現されることができる。ハードウェアによる実現の場合、本発明の一実施形態は、１つ又は複数のＡＳＩＣｓ（Application Specific Integrated Circuits）、ＤＳＰｓ（Digital Signal Processors）、ＤＳＰＤｓ（Digital Signal Processing Devices）、ＰＬＤｓ（Programmable Logic Devices）、ＦＰＧＡｓ（Field Programmable Gate Arrays）、プロセッサ、コントローラ、マイクロコントローラ、マイクロプロセッサなどにより実現されることができる。
【０２５０】
ファームウェアやソフトウェアによる実現の場合、本発明の一実施形態は、以上で説明された機能又は動作を行うモジュール、手続き、関数などの形態で実現されることができる。ソフトウェアコードは、メモリに記憶されてプロセッサにより駆動されることができる。上記メモリは、上記プロセッサの内部又は外部に位置し、既に公知の様々な手段により上記プロセッサとデータを交換することができる。
【０２５１】
本発明は、本発明の必須的特徴を逸脱しない範囲で他の特定の形態で具体化され得ることは当業者にとって自明である。したがって、上述した詳細な説明は、全ての面で制限的に解釈されてはならず、例示的なことと考慮されなければならない。本発明の範囲は、添付された請求項の合理的解釈により決定されなければならず、本発明の等価的範囲内での全ての変更は、本発明の範囲に含まれる。
【産業上の利用可能性】
【０２５２】
以上、前述した本発明の好ましい実施形態は、例示の目的のために開示されたものであって、当業者であれば、以下に添付した特許請求の範囲に開示された本発明の技術的思想及びその技術的範囲内で、様々な他の実施形態の改良、変更、代替、又は付加などが可能であろう。
【図１】
0006870096.tif 000006
【図２】
0006870096.tif 000007
【図３】
0006870096.tif 000008
【図４】
0006870096.tif 000009
【図５】
0006870096.tif 000010
【図６】
0006870096.tif 000011
【図７】
0006870096.tif 000012
【図８】
0006870096.tif 000013
【図９】
0006870096.tif 000014
【図１０】
0006870096.tif 000015
【図１１】
0006870096.tif 000016
【図１２】
0006870096.tif 000017
【図１３】
0006870096.tif 000018
【図１４】
0006870096.tif 000019
【図１５】
0006870096.tif 000020
【図１６】
0006870096.tif 000021