【手続補正書】
【提出日】平成19年2月26日(2007.2.26)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
多階層ビデオ信号の向上階層を構成するブロックの残差データが対応する下位階層ブロックの残差データから予測してコーディングされているかどうかを示す残差予測フラッグをコーディングする方法において、
前記下位階層の対応するブロックの残差データのエネルギーと前記下位階層の対応するブロックのＣＢＰ（ｃｏｄｅｄ＿ｂｌｏｃｋ＿ｐａｔｔｅｒｎ［符号化ブロックパターン］）の値とのうちの少なくとも一つを含む前記下位階層の対応するブロックについての特性データを計算するステップと、
前記特性データ応じて前記残差予測フラッグのコーディング方法を決定するステップと、
前記決定されたコーディング方法によって残差予測フラッグをコーディングするステップと、を含む方法。
【請求項２】
前記特性データが所定の閾値未満である場合には残差予測フラッグのコーディングは省略され、前記特性データが前記所定の閾値以上である場合には、前記残差予測フラッグのコーディングは、前記残差予測フラッグの値の予測値と前記残差予測フラッグの値との差をコーディングすることである、請求項１に記載の方法。
【請求項３】
前記残差予測フラッグのコーディングが、前記特性データが前記所定の閾値以上である場合、１から前記残差予測フラッグの値を引いた値をコーディングすることである、請求項１に記載の方法。
【請求項４】
前記特性データが所定の閾値未満である場合には残差予測フラッグのコーディングは省略され、前記特性データが前記所定の閾値以上である場合には、前記残差予測フラッグのコーディングは、シンボル１にバイアスされたコンテキストモデルを使用して実行される、請求項１に記載の方法。
【請求項５】
前記残差予測フラッグのコーディングが、前記特性データが所定の閾値未満である場合には第１コンテキストモデルを使用して実行され、前記特性データが前記所定の閾値以上である場合には第２コンテキストモデルを使用して実行される方法であって、前記第１コンテキストモデルは、０の確率が１の確率より高いコンテキストモデルであり、前記第２コンテキストモデルは１の確率が０の確率より高いコンテキストモデルである、請求項１に記載の方法。
【請求項６】
前記下位階層が基礎階層またはＦＧＳ階層である、請求項１に記載の方法。
【請求項７】
前記下位階層のブロックの残差データのエネルギーが前記下位階層のブロックにおける０でないピクセルの数であり、
前記下位階層のブロックのＣＢＰの値が該ＣＢＰにおける１の値をもつビット数である、
請求項１に記載の方法。
【請求項８】
前記ＣＢＰの値が、ＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＬｕｍａと呼ばれる輝度情報についてのＣＢＰ下位４ビットおよびＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＣｈｒｏｍａと呼ばれる色度情報についてのＣＢＰの上位２ビットの値を含む、請求項１に記載の方法。
【請求項９】
前記残差データのエネルギーを計算することが、前記向上階層が参照する下位階層のエネルギーを合算して計算することである、請求項１に記載の方法。
【請求項１０】
前記下位階層のブロックのＣＢＳを計算することが、前記下位階層のブロックにおけるＣＢＰの各ビットが１の値をもつかどうかを判定することを含む、請求項１に記載の方法。
【請求項１１】
多階層ビデオ信号の向上階層を構成するブロックの残差データが、対応する下位階層ブロックの残差データから予測してコーディングされているかどうかを示す残差予測フラッグをデコーディングする方法において、
前記下位階層の対応するブロックの残差データのエネルギーと前記下位階層の対応するブロックのＣＢＰ（ｃｏｄｅｄ＿ｂｌｏｃｋ＿ｐａｔｔｅｒｎ［符号化ブロックパターン］）の値とのうちの少なくとも一つを含む前記下位階層の対応するブロックについての特性データを計算するステップと、
前記特性データに応じて前記残差予測フラッグのデコーディング方法を決定するステップと、
前記決定されたデコーディング方法によって残差予測フラッグをデコーディングするステップと、を含む方法。
【請求項１２】
前記残差予測フラッグのデコーディングは、
前記特性データが所定の閾値未満である場合には、残差予測フラッグをデコーディングすることなく残差予測フラッグの値を０に設定し、
前記特性データが前記所定の閾値以上である場合には、残差予測フラッグの値を、残差予測差フラッグと当該残差予測フラッグの予測値との差に設定することを含んでおり、ここで、前記残差予測差フラッグとは当該残差予測フラッグの予測値と当該残差予測フラッグとの差に対応する、請求項１１に記載の方法。
【請求項１３】
前記特性データが所定の閾値以上である場合、前記のデコーディングされた残差予測フラッグを反転させることをさらに含んでおり、ここで、前記のデコーディングされた残差予測フラッグを反転させることは前記のデコーディングされた残差予測フラッグを１から引いた値を計算することを含む、請求項１１に記載の方法。
【請求項１４】
前記残差予測フラッグのデコーディングは、
前記特性データが所定の閾値未満である場合には、残差予測フラッグの値をデコーディングする過程を省略し、
前記特性データが所定の閾値以上である場合には、残差予測フラッグの値をシンボル１にバイアスされたコンテキストモデルを使用してデコーディングすることである、請求項１１に記載の方法。
【請求項１５】
前記残差予測フラッグのコーディングはコンテキスト基盤の適応的２進算術コーディング（ＣＡＢＡＣ）を使って実行されており、
前記特性データが所定の閾値未満である場合には、前記残差予測フラッグを第１コンテキストモデルを使用してデコーディングし、
前記特性データが所定の閾値以上である場合には、前記残差予測フラッグを第２コンテキストモデルを使用してデコーディングすることであって、前記第１コンテキストモデルは０の確率が１の確率より高いコンテキストモデルであり、前記第２コンテキストモデルは１の確率が０の確率より高いコンテキストモデルである、請求項１１に記載の方法。
【請求項１６】
前記下位階層が基礎階層またはＦＧＳ階層である、請求項１１に記載の方法。
【請求項１７】
前記下位階層のブロックの残差データのエネルギーが前記下位階層のブロックにおける０でないピクセルの数であり、
前記下位階層のブロックのＣＢＰの値が該ＣＢＰにおける１の値をもつビット数である、
請求項１１に記載の方法。
【請求項１８】
前記ＣＢＰの値が、ＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＬｕｍａと呼ばれる輝度情報についてのＣＢＰ下位４ビットおよびＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＣｈｒｏｍａと呼ばれる色度情報についてのＣＢＰの上位２ビットの値を含む、請求項１１に記載の方法。
【請求項１９】
前記残差データのエネルギーを計算することが、前記向上階層が参照する下位階層のエネルギーを合算して計算することである、請求項１１に記載の方法。
【請求項２０】
前記下位階層のブロックのＣＢＳを計算することが、前記下位階層のブロックにおけるＣＢＰの各ビットが１の値をもつかどうかを判定することを含む、請求項１１に記載の方法。
【請求項２１】
多階層ビデオ信号の向上階層を構成するブロックの残差データが、対応する下位階層ブロックの残差データから予測してコーディングされているかどうかを示す残差予測フラッグをデコーディングする方法において、
前記下位階層のブロックにおけるＣＢＰ（符号化ブロックパターン）の値を確認するステップと、
前記下位階層におけるＣＢＰの各ビットが１の値をもつかどうかを判定するステップと、
前記下位階層におけるＣＢＰの少なくとも一つのビットが１の値をもつかどうかに応じて前記残差予測フラッグのデコーディング方法を決定するステップと、
前記決定されたデコーディング方法によって前記残差予測フラッグをデコーディングするステップと、を含む方法。
【請求項２２】
前記ＣＢＰの各ビットが１の値をもつかどうかを判定するステップは、
前記ＣＢＰの下位４ビットを、輝度情報の符号化を決定するのに使われる第１変数に設定し、上位２ビットを色度情報の符号化を決定する第２変数に設定するステップと、
マクロブロックのアドレスに割当てられた０ないし３のうちから選ばれる数だけ、前記第１変数のビットを右シフトさせる演算を行い、その結果と１とのＡＮＤビット演算を行うステップと、
前記ＡＮＤビット演算の結果が０でない場合、前記ＣＢＰの少なくとも一つのビットが１の値を有すると判定するステップと、を含む請求項２１に記載の方法。
【請求項２３】
前記デコーディング方法を決定するステップは、前記残差予測フラッグのデコーディングのためのコンテキストモデルを設定することを含み、前記残差予測フラッグをデコーディングするステップは、前記設定されたコンテキストモデルを使用してエントロピーデコーディングを行うステップであり、ここで、エントロピーデコーディングはＣＡＢＡＣの逆演算である、請求項２１に記載の方法。
【請求項２４】
前記エントロピーデコーディングはＣＡＢＡＣ（コンテキスト基盤の適応的２進算術コーディング）方式で実行される、請求項２１に記載の方法。
【請求項２５】
前記デコーディング方法を決定するステップは、
前記判定するステップにおいて前記ＣＢＰに１の値を有するビットが１つ以上存在する場合、コンテキストモデルを選択する変数を１に設定し、前記ＣＢＰに１の値を有するビットが存在しない場合、コンテキストモデルを選択する変数を０に設定するステップを含む、請求項２１に記載の方法。
【請求項２６】
前記残差予測フラッグをデコーディングするステップにおいて、
前記コンテキストモデルを選択する変数が０である場合、前記残差予測フラッグは０の確率が１の確率より高いコンテキストモデルを使用してデコーディングされ、
前記コンテキストモデルを選択する変数が１である場合、前記残差予測フラッグは１の確率が０の確率より高いコンテキストモデルを使用してデコーディングされる、請求項２５に記載の方法。
【請求項２７】
前記下位階層が基礎階層またはＦＧＳ階層である、請求項２１に記載の方法。
【請求項２８】
前記確認するステップにおいて、前記向上階層の予測に使われる下位階層のブロックのＣＢＰの各ビットが１の値をもつかどうかが判定される、請求項２１に記載の方法。
【請求項２９】
多階層ビデオ信号の向上階層をデコーディングする方法において、
下位階層のＣＢＰ（符号化ブロックパターン）の値を使って、前記向上階層が前記下位階層から予測されたものであるかどうかを示す残差予測フラッグのデコーディング方法を決定するステップと、
前記デコーディング方法によって選択されたエントロピー復号化方法によって前記残差予測フラッグをデコーディングし、前記残差予測フラッグを使って前記向上階層をデコーディングするステップと、を含むデコーディング方法。
【請求項３０】
多階層ビデオ信号の向上階層を構成するブロックの残差データが対応する下位階層ブロックの残差データから予測してコーディングされているかどうかを示す残差予測フラッグをコーディングするビデオエンコーダであって、
前記下位階層の対応するブロックの残差データのエネルギーと前記下位階層の対応するブロックのＣＢＰ（ｃｏｄｅｄ＿ｂｌｏｃｋ＿ｐａｔｔｅｒｎ［符号化ブロックパターン］）の値とのうちの少なくとも一つを含む前記下位階層の対応するブロックについての特性データを生成する下位階層エンコードユニットと、
前記特性データ応じて決定される残差予測フラッグのコーディング方法によって残差予測フラッグをコーディングする向上階層エンコードユニットと、を含むビデオエンコーダ。
【請求項３１】
前記特性データが所定の閾値未満である場合には残差予測フラッグのコーディングは省略され、前記特性データが前記所定の閾値以上である場合には、前記残差予測フラッグのコーディングは、前記残差予測フラッグの値の予測値と前記残差予測フラッグの値との差をコーディングすることである、請求項３０に記載のビデオエンコーダ。
【請求項３２】
前記残差予測フラッグのコーディングが、前記特性データが前記所定の閾値以上である場合、１から前記残差予測フラッグの値を引いた値をコーディングすることである、請求項３０に記載のビデオエンコーダ。
【請求項３３】
前記残差予測フラッグのコーディングはコンテキスト基盤の適応的２進算術コーディング（ＣＡＢＡＣ）を使って実行され、
前記特性データが所定の閾値未満である場合には残差予測フラッグのコーディングは省略され、前記特性データが前記所定の閾値以上である場合には、前記残差予測フラッグのコーディングは、シンボル１にバイアスされたコンテキストモデルを使用して実行される、請求項３０に記載のビデオエンコーダ。
【請求項３４】
前記残差予測フラッグのコーディングはコンテキスト基盤の適応的２進算術コーディング（ＣＡＢＡＣ）を使って実行され、
前記残差予測フラッグのコーディングが、前記特性データが所定の閾値未満である場合には第１コンテキストモデルを使用して実行され、前記特性データが前記所定の閾値以上である場合には第２コンテキストモデルを使用して実行され、前記第１コンテキストモデルは、０の確率が１の確率より高いコンテキストモデルであり、前記第２コンテキストモデルは１の確率が０の確率より高いコンテキストモデルである、請求項３０に記載のビデオエンコーダ。
【請求項３５】
前記下位階層が基礎階層またはＦＧＳ（精細粒度スケーラビリティー）階層である、請求項３０に記載のビデオエンコーダ。
【請求項３６】
前記下位階層のブロックの残差データのエネルギーが前記下位階層のブロックにおける０でないピクセルの数であり、
前記下位階層のブロックのＣＢＰの値が該ＣＢＰにおける１の値をもつビット数である、
請求項３０に記載のビデオエンコーダ。
【請求項３７】
前記ＣＢＰの値が、ＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＬｕｍａと呼ばれる輝度情報についてのＣＢＰ下位４ビットおよびＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＣｈｒｏｍａと呼ばれる色度情報についてのＣＢＰの上位２ビットの値を含む、請求項３０に記載のビデオエンコーダ。
【請求項３８】
多階層ビデオ信号の向上階層を構成するブロックの残差データが、対応する下位階層ブロックの残差データから予測してコーディングされているかどうかを示す残差予測フラッグをデコーディングするビデオデコーダであって、
前記下位階層の対応するブロックの残差データのエネルギーと前記下位階層の対応するブロックのＣＢＰ（ｃｏｄｅｄ＿ｂｌｏｃｋ＿ｐａｔｔｅｒｎ［符号化ブロックパターン］）の値とのうちの少なくとも一つを含む前記下位階層の対応するブロックについての特性データを生成する基礎階層デコーディングユニットと、
前記特性データに応じて決定される残差予測フラッグのデコーディング方法によって残差予測フラッグをデコーディングする向上階層デコーディングユニットと、を含むビデオデコーダ。
【請求項３９】
前記特性データが所定の閾値未満である場合には、残差予測フラッグをデコーディングすることなく残差予測フラッグの値を０に設定し、
前記特性データが前記所定の閾値以上である場合には、残差予測フラッグの値を、残差予測差フラッグと当該残差予測フラッグの予測値との差に設定するものであり、ここで、前記残差予測差フラッグとは当該残差予測フラッグの予測値と当該残差予測フラッグとの差に対応する、請求項３８に記載のビデオデコーダ。
【請求項４０】
前記特性データが所定の閾値以上である場合、前記のデコーディングされた残差予測フラッグを反転させるものであり、ここで、前記のデコーディングされた残差予測フラッグを反転させることは前記のデコーディングされた残差予測フラッグを１から引いた値を計算することを含む、請求項３８に記載のビデオデコーダ。
【請求項４１】
前記残差予測フラッグのコーディングはコンテキスト基盤の適応的２進算術コーディング（ＣＡＢＡＣ）を使って実行され、
前記残差予測フラッグのデコーディングは、
前記特性データが所定の閾値未満である場合には、残差予測フラッグの値をデコーディングする過程を省略し、
前記特性データが所定の閾値以上である場合には、残差予測フラッグの値をシンボル１にバイアスされたコンテキストモデルを使用してデコーディングする、請求項３８に記載のビデオデコーダ。
【請求項４２】
前記残差予測フラッグのコーディングはコンテキスト基盤の適応的２進算術コーディング（ＣＡＢＡＣ）を使って実行されており、
前記残差予測フラッグは、
前記特性データが所定の閾値未満である場合には、前記残差予測フラッグを第１コンテキストモデルを使用してデコーディングされ、
前記特性データが所定の閾値以上である場合には、前記残差予測フラッグを第２コンテキストモデルを使用してデコーディングされ、前記第１コンテキストモデルは０の確率が１の確率より高いコンテキストモデルであり、前記第２コンテキストモデルは１の確率が０の確率より高いコンテキストモデルである、請求項３８に記載のビデオデコーダ。
【請求項４３】
前記下位階層が基礎階層またはＦＧＳ（精細粒度スケーラビリティー）階層である、請求項３８に記載のビデオデコーダ。
【請求項４４】
前記下位階層のブロックの残差データのエネルギーが前記下位階層のブロックにおける０でないピクセルの数であり、
前記下位階層のブロックのＣＢＰの値が該ＣＢＰにおける１の値をもつビット数である、
請求項３８に記載のビデオデコーダ。
【請求項４５】
前記ＣＢＰの値が、ＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＬｕｍａと呼ばれる輝度情報についてのＣＢＰ下位４ビットおよびＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＣｈｒｏｍａと呼ばれる色度情報についてのＣＢＰの上位２ビットの値を含む、請求項３８に記載のビデオデコーダ。
【請求項４６】
多階層ビデオ信号の向上階層を構成するブロックの残差データが対応する下位階層ブロックの残差データから予測してコーディングされているかどうかを示す残差予測フラッグをデコーディングするデコーディング装置において、
前記下位階層ブロックに対するＣＢＰ（符号化ブロックパターン）の値を解釈するパージング部と、
前記ＣＢＰの値によって前記残差予測フラッグに対するデコーディング方法を決定し、その決定されたデコーディング方法によって前記残差予測フラッグをデコーディングするデコーディング部と、を備えるデコーディング装置。
【請求項４７】
前記パージング部は、前記ＣＢＰの下位４ビットを、輝度情報の符号化を決定するのに使われる第１変数に設定し、上位２ビットを色度情報の符号化をするのに使われる第２変数に設定し、マクロブロックのアドレスに割当てられた０ないし３のうちから選ばれる数だけ前記第１変数のビットを右シフトさせる演算を行い、その結果と１とのＡＮＤビット演算を行い、前記ＡＮＤビット演算の結果が０でない場合、前記ＣＢＰの少なくとも一つのビットが１の値を有すると判定すること、請求項４６に記載のデコーディング装置。
【請求項４８】
前記パージング部は、前記残差予測フラッグのデコーディングのためのコンテキストモデルを設定し、前記デコーディング部は、前記設定されたコンテキストモデルを使用してエントロピーデコーディングを行う、請求項４６に記載のビデオデコーダ。
【請求項４９】
前記エントロピーデコーディングがＣＡＢＡＣ（コンテキスト基盤の適応的２進算術コーディング）方式で実行される、請求項４８に記載のデコーディング装置。
【請求項５０】
前記パージング部は、前記ＣＢＰに１の値を有するビットが１つ以上存在する場合、コンテキストモデルを選択する変数を１に設定し、前記ＣＢＰに１の値を有するビットが存在しない場合、コンテキストモデルを選択する変数を０に設定する
【請求項５１】
前記デコーディング部は、前記コンテキストモデルを選択する変数が０に設定されている場合、前記残差予測フラッグを０の確率が１の確率より高いコンテキストモデルを使用してデコーディングし、前記コンテキストモデルを選択する変数が１に設定されている場合、前記残差予測フラッグを１の確率が０の確率より高いコンテキストモデルを使用してデコーディングする、請求項５０に記載のデコーディング装置。
【請求項５２】
前記下位階層が基礎階層またはＦＧＳ階層である、請求項４６に記載のデコーディング装置。
【請求項５３】
前記パージング部は、前記向上階層が参照する下位階層のブロックのＣＢＰの各ビットが１の値をもつかどうかを判定する、請求項４６に記載のデコーディング装置。
【請求項５４】
多階層ビデオ信号の向上階層をデコーディングする装置において、
下位階層のＣＢＰ（符号化ブロックパターン）の値を解釈するパージング部と、
前記符号化ＣＢＰの値を使って、前記向上階層が前記下位階層からの予測されたものであるかどうかを示す残差予測フラッグのデコーディング方法を決定し、前記デコーディング方法によって前記残差予測フラッグをエントロピー復号し、前記向上階層をエントロピー復号するエントロピー復号部と、
前記向上階層を逆量子化する逆量子化部と、
前記残差予測フラッグに基づいて前記逆量子化された向上階層を逆変換する逆変換部と、を備えることを特徴とするデコーディング装置。
【請求項５５】
多階層基盤のビデオエンコーダにおいて、
（ａ）入力フレームから基礎階層フレームを生成するステップと、
（ｂ）向上階層のデータを、前記基礎階層フレームのデータ、異なる時間的位置におけるある第２の向上階層のデータおよび当該向上階層の異なる領域のデータのうちの少なくとも一つを含む参照データを参照することによって生成するステップと、
（ｃ）前記向上階層のデータを前記参照データから予測するかどうかを決定した結果に基づいて前記向上階層のデータをエンコーディングするステップと、を含むエンコーディング方法。
【請求項５６】
前記基礎階層フレームのデータが、当該基礎階層フレームと該基礎階層フレームとは時間的に異なるある第２のフレームとの間の残差を含む基礎階層フレームの残差データ、ならびに、当該基礎階層フレームの動きベクトルとを含む、請求項５５記載のエンコーディング方法。
【請求項５７】
前記残差データのエネルギーを求めることをさらに含み、
前記エネルギーが所定の閾値未満である場合、前記（ｃ）ステップは、前記向上階層のデータが前記基礎階層フレームのデータを参照しているか否かについての予測情報なしに、前記向上階層のデータをエンコーディングすることを含み、
前記エネルギーが前記所定の閾値以上である場合、前記（ｃ）ステップは、前記予測情報とともに前記向上階層のデータをエンコーディングすることを含む、請求項５６に記載のエンコーディング方法。
【請求項５８】
前記所定の閾値が、前記残差データのエネルギーが０である場合に得られる値である、請求項５７に記載のエンコーディング方法。
【請求項５９】
前記残差データのエネルギーを求めることをさらに含み、前記残差データのエネルギーが所定の閾値以上である場合、前記（ｃ）ステップは、
（ｄ）前記基礎階層フレームの動きベクトルと前記向上階層の動きベクトルとの差を計算するステップと、
（ｅ）前記両動きベクトルの差に基づいて、前記向上階層のデータが前記残差データを参照しているか否かを予測するために使われる決定情報を設定するステップと、
（ｆ）前記決定情報、ならびに、該決定情報と前記向上階層のデータが前記残差データを参照しているか否かについての情報との差とともに、前記向上階層のデータをエンコーディングするステップと、を含む請求項５６に記載のエンコーディング方法。
【請求項６０】
前記基礎階層フレームの動きベクトルと空間的に隣接した領域の動きベクトルとの差を求めることをさらに含み、
前記差が所定の閾値未満である場合、前記（ｃ）ステップは、前記向上階層のデータが前記基礎階層フレームのデータを参照しているか否かについての予測情報なしに、前記向上階層のデータをエンコーディングすることを含み、
前記差が前記所定の閾値以上である場合、前記（ｃ）ステップは、前記予測情報とともに前記向上階層のデータをエンコーディングすることを含む、請求項５５に記載のエンコーディング方法。
【請求項６１】
前記所定の閾値が、前記両動きベクトルの間の残差が０である場合に得られる値である、請求項６０に記載のエンコーディング方法。
【請求項６２】
（ｄ）前記基礎階層フレームの動きベクトルと、空間的に隣接した領域の動きベクトルとの差を求めることをさらに含み、前記基礎階層の動きベクトルと空間的に隣接した領域の動きベクトルとの差が所定の閾値以上である場合、前記（ｃ）ステップは、
（ｅ）前記基礎階層の動きベクトルと隣接した領域の動きベクトルとの差に基づいて、前記向上階層のデータが前記基礎階層フレームの動きベクトルを参照しているか否かを予測するために使われる決定情報を設定するステップと、
（ｆ）前記決定情報、ならびに、該決定情報と前記向上階層のデータが前記基礎階層フレームの動きベクトルを参照しているか否かについての情報との差とともに、前記向上階層のデータをエンコーディングするステップと、を含む請求項５５に記載のエンコーディング方法。
【請求項６３】
前記向上階層のデータは、前記向上階層のデータが前記基礎階層フレームのデータを参照しているか否かを予測するために使われる決定情報、ならびに、前記基礎階層フレームのデータを参照するか否かについての予測情報と前記決定情報との差を含む、請求項５５に記載のエンコーディング方法。
【請求項６４】
前記向上階層のデータをエンコーディングするステップはエントロピーコーディング方式で実行される、請求項５５に記載のエンコーディング方法。
【請求項６５】
前記向上階層のデータは、マクロブロック、スライス、またはフレームのうちいずれか１つのデータである、請求項５５に記載のエンコーディング方法。
【請求項６６】
多階層基盤のビデオデコーダにおいて、
（ａ）入力された基礎階層フレームをデコーディングするステップと、
（ｂ）前記基礎階層フレームのデータが向上階層のデータの予測に必要か否かを判定するステップと、
（ｃ）前記判定の結果によって前記向上階層のデータをデコーディングするステップと、を含むデコーディング方法。
【請求項６７】
前記基礎階層フレームのデータが、当該基礎階層フレームと該基礎階層フレームとは時間的に異なるある第２のフレームとの間の残差を含む基礎階層フレームの残差データ、ならびに、当該基礎階層フレームの動きベクトルのうちの少なくとも一つを含む、請求項６６記載のデコーディング方法。
【請求項６８】
前記残差データのエネルギーを求めることをさらに含み、前記基礎階層フレームのデータが向上階層のデータの予測に必要か否かを判定する前記ステップにおいて、
前記エネルギーが所定の閾値未満である場合、前記（ｃ）ステップは、
前記向上階層のデータがエンコードされたときに前記向上階層のデータが前記基礎階層フレームのデータを参照しなかったことを示す第１予測情報を設定して、
前記向上階層のデータを前記第１予測情報を使ってデコーディングするステップを含み、
前記エネルギーが前記所定の閾値以上である場合、前記（ｃ）ステップは、
前記向上階層のデータがエンコードされたときに前記向上階層のデータが前記基礎階層フレームのデータを参照したことを示す第２予測情報を設定して、
前記向上階層のデータを前記第２予測情報を使ってデコーディングするステップを含む、
む請求項６７に記載のデコーディング方法。
【請求項６９】
前記所定の閾値が、前記残差データのエネルギーが０である場合に得られる値である、請求項６８に記載のデコーディング方法。
【請求項７０】
前記残差データのエネルギーを求めることをさらに含み、前記残差データのエネルギーが所定の閾値以上である場合、前記（ｃ）ステップは、
（ｄ）前記基礎階層フレームの動きベクトルと前記向上階層の動きベクトルとの差を計算するステップと、
（ｅ）前記基礎階層フレームの動きベクトルと前記向上階層の動きベクトルとの差に基づいて、前記向上階層のデータが前記残差データを参照しているか否かを予測するために使われる決定情報を設定するステップと、
（ｄ）前記決定情報、ならびに、該決定情報と前記向上階層のデータが前記残差データを参照しているか否かについての予測情報との差を用いて前記向上層のデータをデコーディングするステップ、を含む請求項６７に記載のデコーディング方法。
【請求項７１】
前記基礎階層フレームのデータから予測される動きベクトルを計算し、
空間的に隣接した領域から予測される動きベクトルを計算し、
前記動きベクトルの差がある閾値未満である場合、前記（ｃ）ステップは、前記向上階層のデータが前記基礎階層フレームのデータから予測されるのでないことを示す予測情報を設定することによって、前記向上階層のデータをデコーディングするステップを含む、請求項６７に記載のデコーディング方法。
【請求項７２】
前記基礎階層の動きベクトルと隣接した領域の動きベクトルとの間の差を求めることをさらに含み、前記基礎階層フレームのデータが向上階層のデータの予測に必要か否かを判定する前記ステップにおいて、
前記差が所定の閾値未満である場合、前記（ｃ）ステップは、
前記向上階層のデータがエンコードされたときに前記向上階層のデータが前記基礎階層フレームのデータを参照しなかったことを示す第１予測情報を設定して、
前記向上階層のデータを前記第１予測情報を使ってデコーディングするステップを含み、
前記差が前記所定の閾値以上である場合、前記（ｃ）ステップは、
前記向上階層のデータがエンコードされたときに前記向上階層のデータが前記基礎階層フレームのデータを参照したことを示す第２予測情報を設定して、
前記向上階層のデータを前記第２予測情報を使ってデコーディングするステップを含む、
む請求項６７に記載のデコーディング方法。
【請求項７３】
前記所定の閾値が、前記二つの動きベクトルの間の残差が０である場合に得られる値である、請求項７２に記載のデコーディング方法。
【請求項７４】
前記基礎階層の動きベクトルと空間的に隣接した領域の動きベクトルとの間の差を求めることをさらに含み、前記基礎階層の動きベクトルと空間的に隣接した領域の動きベクトルとの差が所定の閾値以上である場合、前記（ｃ）ステップは、
前記基礎階層の動きベクトルと空間的に隣接した領域の動きベクトルとの差に基づいて、前記向上階層のデータが前記基礎階層の動きベクトルを参照しているか否かを予測するために使われる決定情報を設定するステップと、
前記決定情報、ならびに、該決定情報と前記向上階層のデータが前記基礎階層フレームの動きベクトルから予測されているか否かについての予測情報との差を用いて前記向上層のデータをデコーディングするステップ、を含む請求項６６に記載のデコーディング方法。
【請求項７５】
前記向上階層のデータが、当該向上階層のデータが前記基礎階層フレームのデータを参照するか否かを予測するために使われる決定情報、ならびに、前記基礎階層フレームのデータを参照するか否かについての予測情報と前記決定情報との差を含む、請求項６６に記載のデコーディング方法。
【請求項７６】
前記向上階層のデータのデコーディングが、エントロピーデコーディング方式で実行される、請求項６６に記載のデコーディング方法。
【請求項７７】
前記向上階層のデータは、マクロブロック、スライス、またはフレームのうちいずれか１つである、請求項６６に記載のデコーディング方法。
【請求項７８】
入力フレームから基礎階層フレームを生成する基礎階層エンコーダと、
向上階層のデータを、前記基礎階層フレームのデータ、異なる時間的位置におけるある第２の向上階層のデータおよび当該向上階層の異なる領域のデータのうちの少なくとも一つを含む参照データから予測されるものとして生成する向上階層エンコーダと、を備え、
前記向上階層エンコーダが、前記向上階層のデータが前記参照データから予測できるか否かを判定した結果に基づいて前記向上階層のデータをエンコーディングする変換部を有している、ビデオエンコーダ。
【請求項７９】
前記基礎階層フレームのデータが、当該基礎階層フレームと該基礎階層フレームとは時間的に異なるある第２のフレームとの間の残差を含む基礎階層フレームの残差データ、ならびに、当該基礎階層フレームの動きベクトルのうちの少なくとも一つを含む、請求項７８記載のエンコーダ。
【請求項８０】
前記基礎階層エンコーダが前記残差データのエネルギーを求めるものであり、
前記エネルギーが所定の閾値未満である場合、前記変換部は、前記向上階層のデータが前記基礎階層フレームのデータを参照しているか否かについての予測情報なしに、前記向上階層のデータをエンコーディングし、
前記エネルギーが前記所定の閾値以上である場合、前記変換部は、前記予測情報とともに前記向上階層のデータをエンコーディングする、請求項７９に記載のエンコーダ。
【請求項８１】
前記所定の閾値が、前記残差データのエネルギーが０である場合に得られる値である、請求項８０に記載のエンコーダ。
【請求項８２】
前記基礎階層エンコーダが前記残差データのエネルギーを求めるものであり、
前記残差データのエネルギーが所定の閾値以上である場合、前記変換部は、
前記基礎階層フレームの動きベクトルと前記向上階層の動きベクトルとの差を計算し、
前記両動きベクトルの差に基づいて、前記向上階層のデータが前記残差データを参照しているか否かを予測するために使われる決定情報を設定し、
前記決定情報、ならびに、該決定情報と前記向上階層のデータが前記残差データを参照しているか否かについての情報との差とともに、前記向上階層のデータをエンコーディングする、
請求項８２に記載のエンコーダ。
【請求項８３】
前記変換部は、前記基礎階層フレームの動きベクトルと空間的に隣接した領域の動きベクトルとの差を計算し、
前記差が所定の閾値未満である場合、前記変換部は、前記向上階層のデータが前記基礎階層フレームのデータを参照しているか否かについての予測情報なしに、前記向上階層のデータをエンコーディングし、
前記差が前記所定の閾値以上である場合、前記変換部は、前記予測情報とともに前記向上階層のデータをエンコーディングする、
請求項７８に記載のエンコーダ。
【請求項８４】
前記所定の閾値が、前記両動きベクトルの間の残差が０である場合に得られる値である、請求項８３に記載のエンコーダ。
【請求項８５】
前記変換部は、前記基礎階層フレームの動きベクトルと、空間的に隣接した領域の動きベクトルとの差を求め、
前記両動きベクトルの差が所定の閾値以上である場合、前記変換部は、
前記両動きベクトルの差に基づいて、前記向上階層のデータが前記基礎階層フレームのデータを参照しているか否かを予測するために使われる決定情報を設定し、
前記決定情報、ならびに、該決定情報と前記向上階層のデータが前記基礎階層フレームの動きベクトルを参照しているか否かについての情報との差とともに、前記向上階層のデータをエンコーディングする、請求項７９に記載のエンコーダ。
【請求項８６】
前記向上階層のデータは、前記向上階層のデータが前記基礎階層フレームのデータを参照しているか否かを予測するために使われる決定情報、ならびに、前記基礎階層フレームのデータを参照するか否かについての予測情報と前記決定情報との差を含む、請求項７８に記載のエンコーダ。
【請求項８７】
前記変換部がエントロピーコーディングを実行する、請求項７８に記載のエンコーダ。
【請求項８８】
前記向上階層のデータは、マクロブロック、スライス、またはフレームのうちいずれか１つである、請求項７８に記載のエンコーダ。
【請求項８９】
入力された基礎階層フレームをデコーディングする基礎階層デコーダと、
前記基礎階層フレームを参照して向上階層のデータをデコーディングする向上階層デコーダと、を備え、
前記向上階層デコーダは、前記基礎階層フレームのデータが前記向上階層のデータの予測に必要か否かを判定し、前記判定した結果に基づいて前記向上階層のデータをデコーディングする逆変換部を有している、デコーダ。
【請求項９０】
前記基礎階層フレームのデータが、当該基礎階層フレームと該基礎階層フレームとは時間的に異なるある第２のフレームとの間の残差を含む基礎階層フレームの残差データ、ならびに、当該基礎階層フレームの動きベクトルのうちの少なくとも一つを含む、請求項８９記載のデコーダ。
【請求項９１】
前記基礎階層デコーダが前記残差データのエネルギーを求め、
前記エネルギーが所定の閾値未満である場合、前記逆変換部は、
前記向上階層のデータがエンコードされたときに前記向上階層のデータが前記基礎階層フレームのデータを参照していないことを示す第１予測情報を設定して、
前記向上階層のデータを前記第１予測情報を使ってデコーディングし、
前記エネルギーが前記所定の閾値以上である場合、前記逆変換部は、
前記向上階層のデータがエンコードされたときに前記向上階層のデータが前記基礎階層フレームのデータを参照していることを示す第２予測情報を設定して、
前記向上階層のデータを前記第２予測情報を使ってデコーディングする、
請求項８９に記載のデコーダ。
【請求項９２】
前記所定の閾値は、前記残差データのエネルギーが０である場合に得られる値である、請求項９１に記載のデコーダ。
【請求項９３】
前記基礎階層デコーダが前記残差データのエネルギーを求め、
前記残差データのエネルギーが所定の閾値以上である場合、前記逆変換部は、
前記基礎階層フレームの動きベクトルと前記向上階層の動きベクトルとの差を計算し、
前記基礎階層フレームの動きベクトルと前記向上階層の動きベクトルとの差に基づいて、前記向上階層のデータが前記残差データを参照しているか否かを予測するために使われる決定情報を設定し、
前記決定情報、ならびに、該決定情報と前記向上階層のデータが前記残差データを参照しているか否かについての予測情報との差を用いて前記向上層のデータをデコーディングする、
請求項８９に記載のデコーダ。
【請求項９４】
前記逆変換部は、前記基礎階層フレームの動きベクトルと空間的に隣接した領域の動きベクトルとの間の差を計算し、
前記差が所定の閾値未満である場合、前記逆変換部は、
前記向上階層のデータがエンコードされたときに前記向上階層のデータが前記基礎階層フレームのデータを参照していないことを示す第１予測情報を設定して、
前記向上階層のデータを前記第１予測情報を使ってデコーディングし、
前記差が所定の閾値以上である場合、前記逆変換部は、
前記向上階層のデータがエンコードされたときに前記向上階層のデータが前記基礎階層フレームのデータを参照していることを示す第２予測情報を設定して、
前記向上階層のデータを前記第２予測情報を使ってデコーディングする、
請求項８９に記載のデコーダ。
【請求項９５】
前記所定の閾値が、前記両動きベクトルの間の残差が０である場合に得られる値である、請求項９４に記載のデコーダ。
【請求項９６】
前記逆変換部は、前記基礎階層フレームの動きベクトルと空間的に隣接した領域の動きベクトルとの間の差を求め、
前記基礎階層の動きベクトルと前記空間的に隣接した領域の動きベクトルとの差が所定の閾値以上である場合、前記逆変換部は、
前記基礎階層の動きベクトルと前記空間的に隣接した領域の動きベクトルとの差に基づいて、前記向上階層のデータが前記基礎階層の動きベクトルを参照しているか否かを予測するために使われる決定情報を設定し、
前記決定情報、ならびに、該決定情報と前記向上階層のデータが前記基礎階層フレームの動きベクトルから予測されているか否かについての予測情報との差を用いて前記向上層のデータをデコーディングする、
請求項８９に記載のビデオデコーダ。
【請求項９７】
前記向上階層のデータが、当該向上階層のデータが前記基礎階層フレームのデータを参照するか否かを予測するために使われる決定情報、ならびに、前記基礎階層フレームのデータを参照するか否かについての予測情報と前記決定情報との差を含む、請求項８９に記載のデコーダ。
【請求項９８】
前記逆変換部がエントロピーデコーディングを実行する、請求項８９に記載のデコーダ。
【請求項９９】
前記向上階層のデータが、マクロブロック、スライス、またはフレームのうちいずれか１つである、請求項８９に記載のデコーダ。
【請求項１００】
多階層ビデオ信号の向上階層を構成するブロックの残差データが、対応する下位階層ブロックの残差データから予測してコーディングされているかどうかを示す残差予測フラッグをデコーディングする方法において、
前記下位階層ブロックにおけるＣＢＰ（符号化ブロックパターン）の値を判別し、
前記判別されたＣＢＰの値に応じて前記残差予測フラッグのデコーディング方法を決定し、
前記決定されたデコーディング方法によって前記残差予測フラッグをデコーディングする、
ことを含む方法。
【請求項１０１】
前記デコーディング方法を決定するステップが、
前記ＣＢＰにおけるビットのうち少なくとも一つのビットが１の値を含んでいる場合には、前記残差予測フラッグは第１コンテキストモデルを使ってデコーディングされ、
前記ＣＢＰにおけるビットのどれも１の値を含んでいない場合には、前記残差予測フラッグは第２コンテキストモデルを使ってデコーディングされる、
ということを含む、請求項１００記載の方法。
【請求項１０２】
前記ＣＢＰのルーマ値のいずれかが１の値を含む場合に、前記残差予測フラッグは前記第１コンテキストモデルを使ってデコーディングされる、請求項１００記載の方法。
【請求項１０３】
前記ＣＢＰのクロマ値の一つが１の値を含む場合に、前記残差予測フラッグは前記第１コンテキストモデルを使ってデコーディングされる、請求項１００記載の方法。
【請求項１０４】
前記ＣＢＰにおいて１の値をもつビットの数が所定の閾値未満の場合に、前記残差予測フラッグは前記第１コンテキストモデルを使ってデコーディングされ、前記ＣＢＰにおいて１の値をもつビットの数が前記所定の閾値以上の場合に、前記残差予測フラッグは前記第２コンテキストモデルを使ってデコーディングされ、前記第１コンテキストモデルは０の確率が１の確率より高いコンテキストモデルであり、前記第２コンテキストモデルは１の確率が０の確率より高いコンテキストモデルである、請求項１００に記載の方法。
【請求項１０５】
前記下位階層ブロックにおけるＣＢＰの値を判別することが、当該多階層ビデオ信号におけるＣＢＰの下位４ビットと上位２ビットをそれぞれ、輝度情報のためのＣＢＰ値、色度情報についてのＣＢＰ値として設定することを含む、請求項１００記載の方法。
【請求項１０６】
多階層ビデオ信号の向上階層を構成するブロックの残差データが、対応する下位階層ブロックの残差データから予測してコーディングされているかどうかを示す残差予測フラッグをデコーディングするビデオデコーダであって、
前記下位階層ブロックにおけるＣＢＰ（符号化ブロックパターン）の値を判別し、前記判別されたＣＢＰの値に応じて前記残差予測フラッグのデコーディング方法を決定し、前記決定されたデコーディング方法によって前記残差予測フラッグをデコーディングするユニットを含むデコーダ。
【請求項１０７】
前記ＣＢＰにおけるビットのうち少なくとも一つのビットが１の値を含んでいる場合には、前記残差予測フラッグは前記第１コンテキストモデルを使ってデコーディングされ、前記ＣＢＰにおけるビットのどれも１の値を含んでいない場合には、前記残差予測フラッグは前記第２コンテキストモデルを使ってデコーディングされる、請求項１０６記載のデコーダ。
【請求項１０８】
前記ＣＢＰのルーマ値の一つが１の値を含む場合に、前記残差予測フラッグは前記第１コンテキストモデルを使ってデコーディングされる、請求項１０６記載のデコーダ。
【請求項１０９】
前記ＣＢＰのクロマ値のいずれかが１の値を含む場合に、前記残差予測フラッグは前記第１コンテキストモデルを使ってデコーディングされる、請求項１０６記載のデコーダ。
【請求項１１０】
前記ＣＢＰにおいて１の値をもつビットの数が所定の閾値未満の場合に、前記残差予測フラッグは前記第１コンテキストモデルを使ってデコーディングされ、前記ＣＢＰにおいて１の値をもつビットの数が前記所定の閾値以上の場合に、前記残差予測フラッグは前記第２コンテキストモデルを使ってデコーディングされ、前記第１コンテキストモデルは０の確率が１の確率より高いコンテキストモデルであり、前記第２コンテキストモデルは１の確率が０の確率より高いコンテキストモデルである、請求項１０６に記載のデコーダ。
【請求項１１１】
当該多階層ビデオ信号におけるＣＢＰの下位４ビットと上位２ビットがそれぞれ、輝度情報のためのＣＢＰ値、色度情報についてのＣＢＰ値として設定されることを含む、請求項１０６記載のデコーダ。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【発明の名称】エントロピーコーディングのコンテキストモデルを適応的に選択する方法及びビデオデコーダ
【技術分野】
【０００１】
本発明は、ビデオ信号のエンコーディング及びデコーディングに係り、より詳細には、エントロピーコーディングのコンテキストモデルを適応的に選択する方法及びビデオデコーダに関する。
【背景技術】
【０００２】
インターネットを含む情報通信技術が発達するにつれて文字、音声だけでなく画像通信が増加しつつある。既存の文字中心の通信方式では消費者の多様な欲求を満たすには足りず、したがって、文字、映像、音楽など多様な形態の情報を収容できるマルチメディアサービスが増加しつつある。マルチメディアデータは、その量が膨大で大容量の記録媒体を必要とし、伝送時に広い帯域幅を必要とする。したがって、文字、映像、オーディオを含むマルチメディアデータを伝送するには、圧縮コーディング技法を使用することが必須である。
【０００３】
データを圧縮する基本的な原理はデータの冗長性をなくす過程である。画像中で同じ色やオブジェクトが反復されるような空間的冗長性や、動映像フレームで隣接フレームがほとんど変化のない場合もしくはオーディオで同じ音が反復され続けるような時間的冗長性、または人間の視覚及び知覚能力が高い周波数に鈍感なことを考慮した心理視覚冗長性をなくすことによりデータを圧縮できる。一般的なビデオコーディング方法において、時間的冗長性は動き補償に基づいた時間的フィルタリング（ｔｅｍｐｏｒａｌ  ｆｉｌｔｅｒｉｎｇ）により除去して、空間的冗長性は空間的変換（ｓｐａｔｉａｌ  ｔｒａｎｓｆｏｒｍ）により除去する。
【０００４】
データの冗長性を除去した後、生成されるマルチメディアを伝送するためには、伝送媒体が必要であるが、その速度は伝送媒体ごとに異なる。現在使われている伝送媒体は、秒当り数十メガビットのデータを伝送しうる超高速通信網から秒当り３８４キロビットの伝送速度を有する移動通信網のように多様な伝送速度を有する。このような環境で、多様な速度の伝送媒体を支援するために、または伝送環境によってこれに適した伝送率でマルチメディアを伝送可能にする、すなわち、スケーラビリティ（ｓｃａｌａｂｉｌｉｔｙ）を有するデータコーディング方法がマルチメディア環境にさらに適していると言える。一方、マルチメディアの再生時に、再生する機器の大きさまたは機器の特徴によって画面の大きさが４：３または１６：９の比率など多様になりうる。
【０００５】
このようなスケーラブルビデオコーディングとは、既に圧縮されたビットストリームに対して伝送ビットレート、伝送エラー率、システム資源などの周辺条件によって前記ビットストリームの一部を切り出して、ビデオの解像度、フレームレート、及びビットレートなどを調節可能にする符号化方式を意味する。このようなスケーラブルビデオコーディングは、既にＭＰＥＧ−４（ｍｏｖｉｎｇ  ｐｉｃｔｕｒｅ  ｅｘｐｅｒｔｓ  ｇｒｏｕｐ−２１）Ｐａｒｔ１０でその標準化作業が進行しつつある。このうち、多階層（ｍｕｌｔｉ−ｌａｙｅｒｅｄ）基盤でスケーラビリティーを具現しようとする多くの努力がある。例えば、基礎階層（ｂａｓｅ  ｌａｙｅｒ）、第１向上階層（ｅｎｈａｎｃｅｄ  ｌａｙｅｒ１）、第２向上階層（ｅｎｈａｎｃｅｄ  ｌａｙｅｒ２）の多階層をおき、それぞれの階層は相異なる解像度（ＱＣＩＦ、ＣＩＦ、２ＣＩＦ）、または相異なるフレームレートを有するように構成しうる。
【０００６】
１つの階層にコーディングする場合と同様に、多階層にコーディングする場合においても、各階層別に時間的冗長性（ｔｅｍｐｏｒａｌ  ｒｅｄｕｎｄａｎｃｙ）を除去するための動きベクトル（ｍｏｔｉｏｎ  ｖｅｃｔｏｒ；ＭＶ）を求める必要がある。このような動きベクトルは、各階層ごとに別個に検索して使用する場合（前者）があり、１つの階層で動きベクトル検索をした後、これを他の階層でも使用（そのまま、またはアップ／ダウンサンプリングして）する場合（後者）もある。前者の場合は、後者の場合に比べて正確な動きベクトルを探すことによって得る利点とともに、動きベクトルが階層ごとに生成されることによるオーバヘッドとして作用する短所が存在する。したがって、前者の場合には、各階層について動きベクトル間の冗長性をさらに効率よく除去することが非常に重要な課題となる。
【０００７】
図１は、多階層構造を用いたスケーラブルビデオコーデックを示す図面である。まず、基礎階層をＱＣＩＦ（Ｑｕａｒｔｅｒ  Ｃｏｍｍｏｎ  Ｉｎｔｅｒｍｅｄｉａｔｅ  Ｆｏｒｍａｔ）、１５Ｈｚ（フレームレート）に定義し、第１向上階層をＣＩＦ（Ｃｏｍｍｏｎ  Ｉｎｔｅｒｍｅｄｉａｔｅ  Ｆｏｒｍａｔ）、３０Ｈｚに、第２向上階層をＳＤ（Ｓｔａｎｄａｒｄ  Ｄｅｆｉｎｉｔｉｏｎ）、６０Ｈｚに定義する。もし、ＣＩＦ  ０．５  Ｍｂｐｓストリームを所望するならば、第１向上階層のＣＩＦ＿３０Ｈｚ＿０．７Ｍでビットレートが目標の０．５Ｍになるようにビットストリームを切って送ればよい。このような方式で、空間的、時間的、ＳＮＲスケーラビリティーを具現しうる。
【０００８】
図１に示されるように、同じ時間的位置を有する各階層でのフレーム（例えば、１０、２０、及び３０）は、その画像が類似していると推定しうる。したがって、下位階層のテクスチャーから（直接またはアップサンプリングした後）現在階層のテクスチャーを予測し、予測された値と実際現在階層のテクスチャーとの差をエンコーディングする方法が知られている。“Ｓｃａｌａｂｌｅ  Ｖｉｄｅｏ  Ｍｏｄｅｌ  ３．０  ｏｆ  ＩＳＯ／ＩＥＣ  ２１０００−１３  Ｓｃａｌａｂｌｅ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ”（以下“ＳＶＭ  ３．０”と称する）では、このような方法をイントラＢＬ予測（Ｉｎｔｒａ＿ＢＬ  ｐｒｅｄｉｃｔｉｏｎ）と定義している。
【０００９】
このように、ＳＶＭ  ３．０では、既存のＨ．２６４で現在フレームを構成するブロックないしマクロブロックに対する予測のために使われたインター予測及び方向的イントラ予測（ｄｉｒｅｃｔｉｏｎａｌ  ｉｎｔｒａ  ｐｒｅｄｉｃｔｉｏｎ）以外に、現在ブロックとこれに対応する下位階層ブロックとの連関性を用いて現在ブロックを予測する方法を追加的に採択している。このような予測方法を、“イントラＢＬ（Ｉｎｔｒａ＿ＢＬ）予測”と称し、このような予測を使用して符号化するモードを“イントラＢＬモード”と称する。
【００１０】
図２は、前記３種の予測方法を説明する概略図であって、現在フレーム１１のあるマクロブロック１４に対してイントラ予測を行う場合（１）と、現在フレーム１１と他の時間的位置にあるフレーム１２とを用いてインター予測を行う場合（２）と、前記マクロブロック１４と対応する基礎階層フレーム１３の領域１６に対するテクスチャーデータを用いてイントラＢＬ予測を行う場合（３）と、を各々示している。
【００１１】
このように、前記スケーラブルビデオコーディング標準ではマクロブロック単位で前記３つの予測方法のうち、有利な１つの方法を選択して利用する。
【００１２】
ところが、このような予測方法を使用するためには、如何なる予測方法が使用されたか、または予測時に参照するデータが何かについての情報をデコーディング側に送るために多様なフラッグを使用する。コーディングがマクロブロック単位、またはスライス、フレーム単位のいずれで行われるかに依存して、フラッグは小さくは１ビットから数ビットまたは数十ビットに該当しうる。このような情報が全体動画像においてマクロブロックごとに、またはスライスやフレームごとに設定されると、データは大きくなる。したがって、これらの情報を効率的に圧縮するための方法及び装置が必要である。
【発明の開示】
【発明が解決しようとする課題】
【００１３】
本発明は、前記問題点を改善するために案出されたものであって、本発明は、基礎階層のデータを通じて予測方法に所要されるデータの大きさを減らすところにその目的がある。
【００１４】
本発明の目的は、以上で言及した目的に制限されず、言及されていない他の目的は下の記載から当業者に明確に理解されうる。
【課題を解決するための手段】
【００１５】
本発明の一実施形態によるビデオ信号の残差予測フラッグをコーディングする方法は、多階層ビデオ信号の向上階層を構成するブロックの残差データを、対応する下位階層ブロックの残差データから予測してコーディングするために、前記予測如何を示す残差予測フラッグをコーディングする方法において、前記下位階層の対応するブロックの残差データのエネルギーを計算するステップ、前記エネルギーによって前記残差予測フラッグのコーディング方法を決定するステップ、及び前記決定されたコーディング方法によって残差予測フラッグをコーディングするステップを含む。
【００１６】
本発明の他の実施形態によるビデオ信号の残差予測フラッグをコーディングする方法は、多階層ビデオ信号の向上階層を構成するブロックの残差データを対応する下位階層ブロックの残差データから予測してコーディングするために、前記予測如何を示す残差予測フラッグをコーディングする方法において、前記下位階層の対応するブロックに対する符号化ブロックパターンの値を計算するステップと、前記計算した符号化ブロックパターンの値によって前記残差予測フラッグのコーディング方法を決定するステップと、前記決定されたコーディング方法によって残差予測フラッグをコーディングするステップと、を含む。
【００１７】
本発明の一実施形態によるビデオ信号の残差予測フラッグをデコーディングする方法は、多階層ビデオ信号の向上階層を構成するブロックの残差データを、対応する下位階層ブロックの残差データから予測してデコーディングするために、前記予測如何を示す残差予測フラッグをデコーディングする方法において、前記下位階層の対応するブロックの残差データのエネルギーを計算するステップと、前記エネルギーによって前記残差予測フラッグのデコーディング方法を決定するステップと、前記決定されたデコーディング方法によって残差予測フラッグをデコーディングするステップと、を含む。
【００１８】
本発明の他の実施形態によるビデオ信号の残差予測フラッグをデコーディングする方法は、多階層ビデオ信号の向上階層を構成するブロックの残差データを対応する下位階層ブロックの残差データから予測してデコーディングするために、前記予測如何を示す残差予測フラッグをデコーディングする方法において、前記下位階層の対応するブロックに対する符号化ブロックパターンの値を計算するステップと、前記計算した符号化ブロックパターンの値によって前記残差予測フラッグのデコーディング方法を決定するステップと、前記決定されたコーディング方法によって残差予測フラッグをデコーディングするステップと、を含む。
【００１９】
本発明のさらに他の実施形態によるビデオ信号の残差予測フラッグをデコーディングする方法は、多階層ビデオ信号の向上階層を構成するブロックの残差データを対応する下位階層ブロックの残差データから予測してデコーディングするために、前記予測如何を示す残差予測フラッグをデコーディングする方法において、前記下位階層の対応するブロックに対する符号化ブロックパターンの値を確認するステップと、前記符号化ブロックパターンを構成するそれぞれのビットに１の値を有するビットの存否を判断するステップと、前記判断の結果、１の値を有するビットが１つ以上存在する否かかによって前記残差予測フラッグのデコーディング方法を決定するステップと、前記決定されたデコーディング方法によって残差予測フラッグをデコーディングするステップと、を含む。
【００２０】
本発明の他の実施形態によるデコーディング方法は、多階層ビデオ信号の復号化しようとする向上階層をデコーディングする方法において、前記向上階層に対応する下位階層の符号化ブロックパターン値から、前記向上階層の前記下位階層からの予測如何を示す残差予測フラッグのデコーディング方法を決定するステップと、前記デコーディング方法によって選択されたエントロピー復号化方法によって前記残差予測フラッグを復号化し、前記残差予測フラッグによって前記向上計測を復号化する復号化ステップと、を含む。
【００２１】
本発明の他の実施形態によるデコーディング装置は、多階層ビデオ信号の向上階層を構成するブロックの残差データを対応する下位階層ブロックの残差データから予測してデコーディングするために、前記予測如何を示す残差予測フラッグをデコーディングする装置において、前記下位階層ブロックに対する符号化ブロックパターンの値を解釈するパージング部と、前記符号化ブロックパターン値によって前記残差予測フラッグに対するデコーディング方法を決定し、前記デコーディング方法によって前記残差予測フラッグをデコーディングするデコーディング部と、を備える。
【００２２】
本発明のさらに他の実施形態によるデコーディング装置は、多階層ビデオ信号の復号化しようとする向上階層をデコーディングする装置において、前記向上階層に対応する下位階層の符号化ブロックパターン値を解釈するパージング部と、前記符号化ブロックパターン値から前記向上階層の前記下位階層からの予測如何を示す残差予測フラッグのデコーディング方法を決定し、前記デコーディング方法によって前記残差予測フラッグを逆エントロピー復号化し、前記向上階層を逆エントロピー復号化する逆エントロピー復号化部と、前記向上階層を逆量子化する逆量子化部と、前記逆量子化された向上階層を逆時間的変換し、前記残差予測フラッグによって前記下位階層から予測して復号化する逆時間的変換部と、を備えることを特徴とする。
【００２３】
その他の実施例の具体的な事項は詳細な説明及び図面に含まれている。
【発明の効果】
【００２４】
本発明を具現することによって、基礎階層のデータで向上階層のデータが基礎階層のデータを参照しているか否かを判断して、データの圧縮率を高めることができる。
【発明を実施するための最良の形態】
【００２５】
本発明の利点及び特徴、そしてこれを達成する方法は添付された図面に基づいて詳細に後述されている実施例を参照すれば明確になる。しかし、本発明は以下で開示される実施例に限定されるものではなく、この実施例から外れて多様な形に具現でき、本明細書で説明する実施例は本発明の開示を完全にし、本発明が属する技術分野で当業者に発明の範疇を完全に報せるために提供されるものであり、本発明は請求項及び発明の詳細な説明により定義されるだけである。一方、明細書全体に亙って同一の参照符号は同一の構成要素を示す。
【００２６】
以下、本発明の実施形態によって、基礎階層と向上階層のデータにより予測情報をデコーディングしてコーディング効率を向上させる装置及び方法を説明するためのブロック図またはフローチャートに関する図面を参考して本発明について説明する。この時、フローチャートの各ブロックとフローチャートの組合わせはコンピュータプログラム命令により実行可能なのが理解できるであろう。これらコンピュータプログラム命令は、汎用コンピュータ、特殊用コンピュータまたはその他のプログラマブルデータプロセッシング装備のプロセッサーに搭載されうるので、コンピュータまたはその他のプログラマブルデータプロセッシング装備のプロセッサーを通じて実行されるその命令がフローチャートのブロックで説明された機能を行う手段を生成するように機構を作れる。これらコンピュータプログラム命令は特定方式で機能を具現するためにコンピュータまたはその他のプログラマブルデータプロセッシング装備を指向できるコンピュータ利用可能またはコンピュータ可読メモリに保存されることも可能なので、そのコンピュータ利用可能またはコンピュータ可読メモリに保存された命令はフローチャートのブロックで説明された機能を行う命令手段を内包する製造品目を生産することも可能である。コンピュータプログラム命令はコンピュータまたはその他のプログラム可能なデータプロセッシング装備上に搭載することも可能なので、コンピュータまたはその他のプログラマブルデータプロセッシング装備上で一連の動作段階が実行されてコンピュータで実行されるプロセスを生成し、コンピュータまたはその他のプログラマブルデータプロセッシング装備を行う命令はフローチャートのブロックで説明された機能を実行するための段階を提供することも可能である。
【００２７】
また、各ブロックは特定の論理的機能を行うための一つ以上の実行可能な命令を含むモジュール、セグメントまたはコードの一部を示すことができる。また、いくつの代替実行例では、ブロックで言及された機能が順序を外れて発生することも可能であるということに注目せねばならない。例えば、連続して図示されている２つのブロックは、実質的に同時に行われてもよく、または関わってくる機能によってはそれらのブロックが時々逆順に行われてもよい。
【００２８】
図２で説明した予測方法をデコーディング側で使用するために如何なる方式の予測がなされたか、あるいは如何なるデータを参照しているかなどについての情報を設定してエンコーディング側から伝送する。データを圧縮する技法のうち１つであるエントロピーコーディングは、無損失圧縮を使用して最終圧縮を行う。通常ハフマンコーディング（Ｈｕｆｆｍａｎ  ｃｏｄｉｎｇ）を多用する。ハフマンコーディングは可変長（ｖａｒｉａｂｌｅ  ｌｅｎｇｔｈ）コーディング方式であって、情報が現れる確率によってビットを割り当てる方式である。したがって、エントロピーコーディングを使用して全体ビット効率を高めるためには、情報を示す方式を調節する。
【００２９】
一方、図２で説明した予測方法をデコーディング側に知らせるための情報のうち、基礎階層の情報を参照して予測する方式が存在する。例えば、基礎階層の残差データを参照して予測するか、基礎階層の動きベクトルを参照して予測する場合が発生する。この際、基礎階層の情報を参照して予測方法を適用しているかどうかを知らせるためのフラッグとして、残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇ、動き予測フラッグ（ｍｏｔｉｏｎ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇ）などの予測情報が存在する。これらフラッグは、マクロブロックまたはスライスやフレーム単位で設定しうる。したがって、これらフラッグは前記の単位ごとに常に存在する情報であるため、これらの大きさを減らすか、エントロピーコーディングのようにコーディング時に圧縮効率を高めることが重要である。このために前記予測フラッグをデコーディング端で予測可能なように情報を設定し、前記情報を用いて前記予測フラッグを復元しうる。
【００３０】
図３は、ビデオコーディングでの残差予測の例を示す。残差予測とは、残差結果、すなわち、図２で説明した予測方法のうち、１つを使用して得た結果である残差データについてもう一度予測を行うことを意味する。基礎階層のいずれか１つのマクロブロック、スライスまたはフレーム１４は、図２で説明した予測方法のうち、１つである時間的インター予測を使用して残差データとして、マクロブロック、スライスまたはフレームを構成しうる。この際、向上階層のマクロブロック、スライス、またはフレームに対して、基礎階層の残差データを参照する残差予測を行うこともできる。以下、マクロブロックを中心に説明するが、本発明の範囲はマクロブロックに限定されるものではない。マクロブロック以外に、スライス、フレームにも適用しうる。
【００３１】
向上階層のマクロブロックが時間的インター予測を行うために基礎階層の残差を参照しうる。デコーディング端に基礎階層の残差を参照したことを知らせるために、残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇを１に設定しうる。ところが、基礎階層のマクロブロック（残差データで構成されたマクロブロック）がいずれも０である値を有するか、０でない情報を有するピクセルの数が特定基準（ｔｈｒｅｓｈｏｌｄ、閾値）より低い場合、またはｃｂｐ〔符号化ブロックパターン〕値が０であるか、特定基準より低い値を有する場合には、残差予測フラッグを設定する必要がない。これは、基礎階層で実行した時間的インター予測の結果、動きがほとんどない場合を意味する。したがって、この場合、向上階層のマクロブロックは、参照するデータがないか、あるいは不足するので、残差予測フラッグが必要でない。したがって、このような場合には、残差予測フラッグを設定しないことによってビットを節約しうる。
【００３２】
残差予測は、向上階層の動きベクトルと基礎階層の動きベクトルとが類似した場合に意味がある。したがって、各階層間の動きベクトルの差は、残差予測フラッグの値を予測する因子になりうる。まず、残差予測フラッグの値を予測するための決定情報を便宜上予測決定フラッグという。ＪＳＶＭ（Ｊｏｉｎｔ  Ｓｃａｌａｂｌｅ  Ｖｉｄｅｏ  Ｍｏｄｅｌ）１で残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇを設定する代わりに、残差予測フラッグと予測決定フラッグＰｒｄＲｐＦｌａｇとの差をコーディングする場合に、エントロピーコーディングの効率を高めうる。したがって、このような差を示す残差予測差フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇ＿ｄｉｆｆを導入してビデオ情報をエンコーディングしうる。
【００３３】
残差予測差フラッグを求める方法は、次の通りである。まず、基礎階層の残差に存在する非ゼロピクセル（ｎｏｎ−ｚｅｒｏ  ｐｉｘｅｌ）の数が一定基準（ｔｈｒｅｓｈｏｌｄ）より小さい場合には残差予測フラッグのコーディングはスキップされる。
【００３４】
非ゼロピクセルの数が一定基準以上である場合には、残差予測フラッグではなく、残差予測差フラッグをコーディングする。残差予測差フラッグを求めるためには、基礎階層の動きベクトルＢａｓｅＭＶと向上階層の動きベクトルＣｕｒｒＭＶとの差を使用する。残差予測差フラッグをコーディングするためには、予測決定フラッグＰｒｐＲｐＦｌａｇを求めなければならない。
【００３５】
もし、｜ＢａｓｅＭＶ−ＣｕｒｒＭＶ｜＜ある所定の値（ｔｈｒｅｓｈｏｌｄ）である場合、ＰｒｐＲｐＦｌａｇを１とし、その他の場合は０にする。求められたＰｒｐＲｐＦｌａｇと残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｉｏｎ＿ｆｌａｇとの差になる値である残差予測差フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇ＿ｄｉｆｆをコーディングする。前記の過程を再び説明すれば次の通りである。
【００３６】
基礎階層の残差のエネルギー（または非ゼロピクセルの数）が特定値Ｔｈｒｅｓｈｏｌｄｒｅｓｉｄｕａｌより低い場合、残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｉｏｎ＿ｆｌａｇのコーディングはしない。
【００３７】
その他の場合を再び２つに分ければ次の通りである。｜ＢａｓｅＭＶ−ＣｕｒｒＭＶ｜＜特定値ＴｈｒｅｓｈｏｌｄＭＶである場合には、１−ｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇをコーディングし、そうでない場合には、０−ｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇ、すなわちｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇをコーディングする。
【００３８】
前記の概念を具現するためのフローチャートを説明すれば図４のようである。
【００３９】
図４は、本発明の一実施形態による残差予測フラッグのエンコーディング効率を高めるフローチャートである。まず、基礎階層の残差データを求める（Ｓ１０１）。基礎階層の残差データは、基礎階層が時間的インターコーディングのように他のフレームまたは他のブロックなどを参照して得た結果を意味する。基礎階層の残差データが特定値Ｔｈｒｅｓｈｏｌｄｒｅｓｉｄｕａｌより小さい場合（Ｓ１０５）、すなわち、値０をもつ場合、または全体エネルギーが特定値より小さい場合には、残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇを設定する必要がない。したがって、残差予測フラッグのコーディングはしない。
【００４０】
一方、基礎階層の残差データが特定値Ｔｈｒｅｓｈｏｌｄｒｅｓｉｄｕａｌより大きい場合（Ｓ１０５）、残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇは選択的に１または０を有しうる。予測決定フラッグを選択する基準を定めることができる。
Ｓ１１０ステップで、基礎階層の動きベクトルＢａｓｅＭＶと向上階層または現在階層の動きベクトルＣｕｒｒＭＶとの差が特定値ＴｈｒｅｓｈｏｌｄＭＶより小さい場合、基礎階層の残差データを使用する可能性が高い。したがって予測決定フラッグを１にする（Ｓ１１１）。一方、Ｓ１１０ステップで、基礎階層の動きベクトルＢａｓｅＭＶと向上階層または現在階層の動きベクトルＣｕｒｒＭＶとの差が特定値ＴｈｒｅｓｈｏｌｄＭＶより大きい場合、基礎階層の残差データを使用する可能性が低い。したがって、予測決定フラッグを０にする（Ｓ１１２）。Ｓ１１１及びＳ１１２ステップで設定した予測決定フラッグ及び予測決定フラッグと残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇの差である残差予測差フラッグをコーディングする。エンコーディング端ではマクロブロック別に、またはスライス単位またはフレーム単位で、前記の予測決定フラッグと残差予測差フラッグとをコーディングしうる。
【００４１】
図５は、本発明の一実施形態による図４でエンコーディングされたデータをデコーディングするフローチャートである。まず、エンコーディングされたデータで基礎階層の残差データを求める（Ｓ１５１）。残差データが特定値Ｔｈｒｅｓｈｏｌｄｒｅｓｉｄｕａｌより小さくない場合（Ｓ１５５）、エンコーディングされた予測決定フラッグと残差予測差フラッグとの差を通じて残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇを設定する（Ｓ１６１）。エンコーディング側で予測決定フラッグをＰｒｄＲｐＦｌａｇ、残差予測差フラッグをｒｅｓｉｄｕａｌ＿ｐｒｅｄ＿ｆｌａｇ＿ｄｉｆｆとおく場合、ｒｅｓｉｄｕａｌ＿ｐｒｅｄ＿ｆｌａｇ＿ｄｉｆｆ＝ＰｒｄＲｐＦｌａｇ−ｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇと求められる。したがって、ｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇは、ＰｒｄＲｐＦｌａｇとｒｅｓｉｄｕａｌ＿ｐｒｅｄ＿ｆｌａｇ＿ｄｉｆｆとの差から得られる。
【００４２】
残差データが特定値Ｔｈｒｅｓｈｏｌｄｒｅｓｉｄｕａｌより小さい場合（Ｓ１５５）には、残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇを参照して向上階層を生成したものではないので、残差予測フラッグを０に設定する（Ｓ１６２）。
【００４３】
前述した過程は、基礎階層の残差データを参照しているか否かと関連した残差予測フラッグの代りに、他の情報をコーディングしてコーディング効率を向上させる場合について説明した。以下、これと類似した方式で、基礎階層の動き情報を参照したかどうかを示す動き予測フラッグの代りに、他の情報をコーディングしてコーディング効率を向上させる場合について説明する。
【００４４】
図６は、ビデオコーディングでの動き予測の例を示す。動き予測とは、基礎階層の動きベクトルを参照して向上階層または現在階層の動きベクトルを予測することを意味する。したがって、動き予測フラッグｍｏｔｉｏｎ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇが１である場合、基礎階層の動きベクトルを参照して向上階層の動きベクトルを予測する。逆に、０である場合、基礎階層の動きベクトルを参照しない。図６の２１及び２５は、マクロブロックまたはサブブロック、スライス、フレームのうち、いずれか１つである。説明の便宜上、マクロブロックを中心に説明する。基礎階層のマクロブロック２１の動きベクトルと向上階層のマクロブロック２５の動きベクトルとを比較すれば、相互同一である。この場合、動き予測フラッグｍｏｔｉｏｎ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇをコーディングする必要がないので、このステップをスキップする。ここで、両動きベクトルが同じか否かより一定基準（ＴｈｒｅｓｈｏｌｄＭｏｔｉｏｎ）以下である場合には、動き予測フラッグをコーディングしない方式を採用しうる。
【００４５】
一方、基礎階層の動きベクトルと空間的に隣接した領域を通じて求められた動きベクトルを比較して動き予測フラッグｍｏｔｉｏｎ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇを判断しうる。空間的に隣接する領域から算出された動きベクトルは正確な動きベクトルを提供する。しかし、動き予測が常に正確に行われるものではない。その結果、動きベクトルにおける大きな差をもたらせる。基礎階層の動きベクトルを通じた予測が、空間的動き予測より正確性が劣る場合でも、全般的に合理的な結果を提供する。このような観点で、動き予測フラッグｍｏｔｉｏｎ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇの予測に、前記両動きベクトルの差を使用しうる。
【００４６】
マクロブロック２２とマクロブロック２６との動きベクトルの差が特定値ＴｈｒｅｓｈｏｌｄＭＶ以上である場合には、動き予測フラッグｍｏｔｉｏｎ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇを１に設定する可能性が高いので、予測決定フラッグＰｒｄＭｏｔＰｒｄＦｌａｇを１にする。一方、マクロブロック２２とマクロブロック２６との動きベクトルの差が特定値ＴｈｒｅｓｈｏｌｄＭＶ以下である場合には、動き予測フラッグｍｏｔｉｏｎ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇを０に設定する可能性が高いので、予測決定フラッグＰｒｄＭｏｔＰｒｄＦｌａｇを０にする。
【００４７】
前記過程を経て予測決定フラッグの値を定めれば、この値と動き予測フラッグｍｏｔｉｏｎ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇとの差を求めてエンコーディングする。差は、動き予測差フラッグｍｏｔｉｏｎ＿ｐｒｅｄ＿ｆｌａｇ＿ｄｉｆｆに設定してエンコーディングしうる。
【００４８】
図７は、本発明の一実施形態による動き予測フラッグのエンコーディング効率を高めるフローチャートである。まず、基礎階層で予測した動きベクトルＰｒｅｄｉｃｔ＿ＭＶ＿Ｆｒｏｍ＿ＢａｓｅＬａｙｅｒと空間的に隣接した領域で予測した動きベクトルＰｒｅｄｉｃｔ＿ＭＶ＿Ｆｒｏｍ＿Ｓｐａｔｉａを求める（Ｓ２０１）。そして、両動きベクトル間の差が特定値ＴｈｒｅｓｈｏｌｄＭｏｔｉｏｎより小さい場合には、動き予測フラッグをエンコーディングしない（Ｓ２０５）。一方、両動きベクトル間の差が特定値ＴｈｒｅｓｈｏｌｄＭｏｔｉｏｎより大きい場合には、動き予測フラッグの代りに、動き予測フラッグを予測するための予測決定フラッグを設定する過程に進む。基礎階層で予測した動きベクトルＰｒｅｄｉｃｔ＿ＭＶ＿Ｆｒｏｍ＿ＢａｓｅＬａｙｅｒと空間的に隣接した動きベクトルＰｒｅｄｉｃｔ＿ＭＶ＿Ｆｒｏｍ＿Ｓｐａｔｉａとの差が特定値ＴｈｒｅｓｈｏｌｄＭＶより大きい場合、または小さい場合によって予測決定フラッグを設定する値が変わる（Ｓ２１０）。
【００４９】
Ｓ２１０において、差が特定値ＴｈｒｅｓｈｏｌｄＭＶより大きい場合には、予測決定フラッグを１に設定し（Ｓ２１１）、Ｓ２１０において、差が特定値ＴｈｒｅｓｈｏｌｄＭＶより小さい場合には、予測決定フラッグを０に設定する（Ｓ２１２）。Ｓ２１１及びＳ２１２ステップで設定した予測決定フラッグの値と動き予測フラッグｍｏｔｉｏｎ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇとの差である動き予測差フラッグと予測決定フラッグをエンコーディングする（Ｓ２２０）。
【００５０】
図８は、本発明の一実施形態による図７でエンコーディングされたデータをデコーディングするフローチャートである。まず、エンコーディングされたデータから基礎階層で予測した動きベクトル及び空間的に隣接した領域で予測した動きベクトルを求める（Ｓ２５１）。両動きベクトルの差が特定値ＴｈｒｅｓｈｏｌｄＭｏｔｉｏｎより小さい場合（Ｓ２５５）、エンコーディングされた予測決定フラッグと動き予測差フラッグとの差を通じて動き予測フラッグｍｏｔｉｏｎ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇを設定する（Ｓ２６１）。エンコーディング側で予測決定フラッグをＰｒｄＲｐＦｌａｇ、動き予測差フラッグをｍｏｔｉｏｎ＿ｐｒｅｄ＿ｆｌａｇ＿ｄｉｆｆとする場合、ｍｏｔｉｏｎ＿ｐｒｅｄ＿ｆｌａｇ＿ｄｉｆｆ＝ＰｒｄＲｐＦｌａｇ−ｍｏｔｉｏｎ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇと求められる。したがって、ｍｏｔｉｏｎ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇを求めるためには、ＰｒｄＲｐＦｌａｇとｍｏｔｉｏｎ＿ｐｒｅｄ＿ｆｌａｇ＿ｄｉｆｆとの差を求めるならば得られる。
【００５１】
動きベクトルの差が特定値ＴｈｒｅｓｈｏｌｄＭｏｔｉｏｎより大きい場合（Ｓ２５５）、動き予測フラッグｍｏｔｉｏｎ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇを０に設定する（Ｓ２６２）。
【００５２】
図３ないし図８に至る過程で、コーディングするデータの大きさを減らすために基礎階層のデータを参照する過程を説明した。コーディングするデータの大きさを減らすための他の実施形態を説明すれば次の通りである。
【００５３】
図３ないし図８でのコーディング過程は、基礎階層のデータを参照する必要がない場合には、基礎階層のデータを参照することを示すフラッグをコーディングすることを省略するか、フラッグそのものの代わりにこの値を予測するための値をコーディングした。
【００５４】
次の実施形態では、基礎階層のデータを使って残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄ＿ｆｌａｇの値をコーディングすることを省略するか、またはその残差予測フラッグの値を新たに変換した値でコーディングする過程を示す。
【００５５】
基礎階層の残差に存在する非ゼロピクセルの数が０であるか、または基礎階層のｃｂｐ（ｃｏｄｅｄ  ｂｌｏｃｋ  ｐａｔｔｅｒｎ）値が０である場合には、残差予測フラッグの値を予測しうるので、残差予測フラッグをコーディングする過程を省略しうる。そして、その他の場合には、１から残差予測フラッグを差し引いた値をコーディングする。なぜなら、その他の場合には、残差予測フラッグの値が１になる可能性が高い。ところが１をそのままコーディングすれば、エンコーディングされるデータが大きくなるので、これを０に変えてコーディングすることでコーディング効率を高めうる。
【００５６】
ＶＬＣ（Ｖａｒｉａｂｌｅ  Ｌｅｎｇｔｈ  Ｃｏｄｉｎｇ）を基盤とするコーディング器の場合、前記の方式はより多くの０を生じるので有用である。コンテキスト基盤の適応的算術コーディングを使用する場合、コーディングしなければならないデータで頻繁に登場するビットまたはビットパターンを効率的に圧縮できる。データで１または０が登場するパターンを調整することによって、全体圧縮率を高めうるのである。コンテキスト基盤の適応的算術コーディングについてさらに詳細に説明すれば、コンテキスト基盤の適応的算術コーディングは、シンボルのコンテキスト（Ｃｏｎｔｅｘｔ）に基づいて各シンボルのための確率モデルを選択し、ローカル統計（Ｌｏｃａｌ  ｓｔａｔｉｓｔｉｃｓ）に基づいてその確率推定値（Ｐｒｏｂａｂｉｌｉｔｙ  ｅｓｔｉｍａｔｅｓ）を適応させ、算術コーディングを実行することによって、高い圧縮性能を達成する。データシンボルをコーディングする過程は次の通りである。
【００５７】
１．２進化：コンテキスト基盤の適応的算術コーディング技法のうち、２進算術コーディングの場合、２進値でないシンボル値を２進数に変換する。コンテキスト基盤の適応的２進算術コーディング（Ｃｏｎｔｅｘｔ−ｂａｓｅｄ  Ａｄａｐｔｉｖｅ  Ｂｉｎａｒｙ  Ａｒｉｔｈｍｅｔｉｃ  Ｃｏｄｉｎｇ；以下ＣＡＢＡＣと称する）では、２進判断（ｂｉｎａｒｙ  ｄｅｃｉｓｉｏｎ）だけがエンコーディングされる。２進値でないシンボル、例えば、変換係数、または動きベクトルのような２以上の可能な値を有する任意のシンボルは算術コーディングに先立って２進コードに変換される。この過程は、データシンボルを可変長コードに変換することと類似しているが、２進コードは伝送前に算術コーダによりさらにエンコーディングされる。
【００５８】
以下の２．ないし４．の処理は、２進化されたシンボルの各ビット、すなわち、ビン（ｂｉｎ）に対して反復される。
【００５９】
２．コンテキストモデルの選択：コンテキストモデルは、２進化されたシンボルの１つあるいはそれ以上のビン（Ｂｉｎ）に対する確率モデルであり、最近にコーディングされたデータシンボルの統計に基づいて活用可能なモデルから選択される。コンテキストモデルは、各ビンについて‘１’または‘０’になる確率を保存する。
【００６０】
３．算術エンコーディング：算術エンコーダは、選択された確率モデルに基づいて各ビンをコーディングする。各ビンに対して‘０’と‘１’に該当する２つの部分確率範囲（ｓｕｂ−ｒａｎｇｅ）だけがある。
【００６１】
４．確率アップデート：選択された確率モデルは、実際にコーディングされた値に基づいてアップデートされる。すなわち、ビンの値が‘１’であれば、‘１’の生起数が１つ増加する。
【００６２】
前述したＣＡＢＡＣコーディングは、コンテキストモデルを選択する過程をスライス単位で行うために、コンテキストモデルを構成する確率モデルの確率値は、スライスごとに定数値のテーブルに初期化される。ＣＡＢＡＣコーディングは、最近コーディングされたデータシンボルの統計を反映して、コンテキストモデルをアップデートし続けるために、一定程度の情報が累積されると、既存の可変長コーディング（Ｖａｒｉａｂｌｅ  Ｌｅｎｇｔｈ  Ｃｏｄｉｎｇ；以下、ＶＬＣと称する）より良いコーディング効率を提供しうる。
【００６３】
図９は、前記の過程を説明するフローチャートである。前述したように、基礎階層の残差エネルギーの値またはＣＢＰ値を参照して残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄ＿ｆｌａｇの値をコーディングしないか、またはその残差予測フラッグの値を新たに変換した値でコーディングする。
【００６４】
基礎階層の残差データを求める（Ｓ３０１）。基礎階層の残差データのエネルギーが０であるか、またはＣＢＰが０である場合（Ｓ３０２）には、基礎階層の残差データがいずれもゼロピクセルであるということを意味するので、上位階層でこれを参照しない。したがって、残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄ＿ｆｌａｇをコーディングする必要がない。
【００６５】
一方、基礎階層の残差データのエネルギーが０でないか、ＣＢＰが０でない場合、すなわち、基礎階層の残差データに非ゼロピクセルが存在する場合には、残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄ＿ｆｌａｇの意味がある。したがって、残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄ＿ｆｌａｇの値を求める（Ｓ３１２）。そして、１から残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄ＿ｆｌａｇを引いた値、すなわち、１−ｒｅｓｉｄｕａｌ＿ｐｒｅｄ＿ｆｌａｇの反転残差予測フラッグｒｅｖｅｒｓｅｄ＿ｒｅｓｉｄｕａｌ＿ｐｒｅｄ＿ｆｌａｇの値を求めて、これをエンコーディングする（Ｓ３１６）。
【００６６】
図１０は、前記図９で説明した過程を通じてエンコーディングされたデータをデコーディングする過程を示すフローチャートである。基礎階層の残差データを求める（Ｓ３５１）。基礎階層の残差データのエネルギーが０であるか、またはＣＢＰが０である場合（Ｓ３５２）には、向上階層で予測するデータが存在しないので、残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄ＿ｆｌａｇの値を０に設定する（Ｓ３６４）。一方、Ｓ３５２ステップで基礎階層の残差データに非ゼロピクセルが存在する場合には、残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄ＿ｆｌａｇの意味がある。図９において、エンコーディングされたデータは、１−ｒｅｓｉｄｕａｌ＿ｐｒｅｄ＿ｆｌａｇの値を有する反転残差予測フラッグｒｅｖｅｒｓｅｄ＿ｒｅｓｉｄｕａｌ＿ｐｒｅｄ＿ｆｌａｇであるために、デコーディングされた反転残差予測フラッグを１から引いた値である１−ｒｅｖｅｒｓｅｄ＿ｒｅｓｉｄｕａｌ＿ｐｒｅｄ＿ｆｌａｇを求めて残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄ＿ｆｌａｇを求めうる。
【００６７】
図９及び図１０で説明した過程は、残差予測フラッグを基礎階層の残差データを通じてコーディング如何を判断し、コーディングする場合には、逆値を使用することによって、コーディング効率を向上させる実施形態であった。
【００６８】
次いで、コンテキスト基盤の適応的算術コーディングの方式を適用するに当たって、データをコーディングする場合、変更されたコンテキスト（ｍｏｄｉｆｉｅｄ  ｃｏｎｔｅｘｔ）を基準に残差予測フラッグをコーディングすることを説明する。コンテキスト基盤の適応的算術コーディングは、前述したようにコンテキストを基盤としてシンボルをコーディングする。したがって、コンテキストモデルが０にバイアスされたか、１にバイアスされたかによって、コーディング効率が変わる。例えば、０にバイアスされたコンテキストである場合、このコンテキストをもって０の多いデータを圧縮するときに圧縮率が高い。一方、１にバイアスされたコンテキストの場合、このコンテキストをもって１の多いデータを圧縮するときに圧縮率が高い。ところが、図９で説明したように、残差予測フラッグのコーディングが行われる場合には、残差予測フラッグは１になる可能性が高い。したがって、この場合には、変更されたコンテキストを適用し、シンボル１にバイアスされたコンテキストをもって残差予測フラッグをコーディングする。
【００６９】
図１１は、コンテキストを変更して残差予測フラッグをコーディングする過程を示すフローチャートである。前述したように、基礎階層の残差エネルギーの値またはＣＢＰ値を参照して残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄ＿ｆｌａｇの値をまったくコーディングしないか、または、その値をシンボル１にバイアスされたコンテキストを使用してコーディングする過程を示す。
【００７０】
基礎階層の残差データを求める（Ｓ４０１）。基礎階層の残差データのエネルギーが０であるか、またはＣＢＰが０である場合（Ｓ４０２）には、基礎階層の残差データがいずれもゼロピクセルであることを意味するので、上位階層でこれを参照しない。したがって、残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄ＿ｆｌａｇをコーディングする必要はない。一方、多階層構造ｍｕｌｔｉ−ｌａｙｅｒｓｔｒｕｃｔｕｒｅを使用する場合には、最下位階層からＣＢＰが累積されうる。この際、基礎階層から累積され続けたＣＢＰ値が０である場合も、残差予測フラッグをコーディングする必要がない。したがって、コーディング過程を省略して進む。
【００７１】
一方、基礎階層の残差データのエネルギーが０でないか、累積されたＣＢＰが０でない場合、すなわち、基礎階層の残差データに非ゼロピクセルが存在する場合には、残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄ＿ｆｌａｇの意味がある。したがって、残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄ＿ｆｌａｇの値を求める（Ｓ４１２）。そして、残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄ＿ｆｌａｇの値が１である可能性が高いので、シンボル１にバイアスされたコンテキストをもって残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄ＿ｆｌａｇをエンコーディングする（Ｓ４１６）。
【００７２】
図１２は、図１１で説明した過程を通じてエンコーディングされたデータをデコーディングする過程を示すフローチャートである。基礎階層の残差データを求める（Ｓ４５１）。基礎階層の残差データのエネルギーが０であるか、または累積されたＣＢＰが０である場合（Ｓ４５２）には、向上階層で予測するデータが存在しないので、残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄ＿ｆｌａｇの値を０に設定する（Ｓ４６４）。一方、Ｓ４５２ステップで基礎階層の残差データに非ゼロピクセルが存在する場合には、残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄ＿ｆｌａｇの意味がある。したがって、残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄ＿ｆｌａｇをデコーディングするが、この際、シンボル１にバイアスされたコンテキストをもってデコーディングする（Ｓ４６２）。そして、残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄ＿ｆｌａｇの値によって向上階層のデータを求める（Ｓ４７０）。
【００７３】
前記実施形態以外にも基礎階層の残差データのエネルギーまたはＣＢＰ（ｃｏｄｅｄ  ｂｌｏｃｋ  ｐａｔｔｅｒｎ）の値を参照して、残差予測フラッグをコーディングするか否かを決定しうる。基礎階層の残差データのエネルギーまたはＣＢＰが一定範囲に入る場合には、残差予測フラッグをコーディングしない方式で進めうる。これに対するコード（ｐｓｅｕｄｏ  ｃｏｄｅ）を説明すれば、次の通りである。
Ｉｆ（基礎階層の残差データのエネルギーまたはＣＢＰが０である場合）
ｔｈｅｎ
ｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇをコーディングしない。
【００７４】
ｅｌｓｅ
ｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇをコーディングする。
【００７５】
デコーディング側でも基礎階層をデコーディングした結果、基礎階層の残差データのエネルギーまたはＣＢＰが０である場合には、基礎階層に対する残差予測を行わずに、デコーディングを進める。そして、その他の場合には、ｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇの値をデコーディングする。これについてのコード（ｐｓｅｕｄｏ  ｃｏｄｅ）を説明すれば次の通りである。
Ｉｆ（基礎階層の残差データのエネルギーまたはＣＢＰが０である場合）
ｔｈｅｎ
ｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇをデコーディングしない。
【００７６】
ｅｌｓｅ
ｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇをデコーディングする。
【００７７】
一方、基礎階層の残差データによってコーディングを異ならせる実施形態を説明すれば図１３のようである。基礎階層の残差データを求める（Ｓ５０１）。残差データを求めた結果、残差データのエネルギーが０であるか、またはＣＢＰが０である場合には、残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇの値が０であるために、残差予測フラッグの値が０である時、エンコーディング効率の高い方法を使用する（Ｓ５２０）。例えば、コーディング方法としてＣＡＢＡＣが使用される場合、‘０’である確率が‘１’である確率よりさらに高い値を有するＣＡＢＡＣコンテキストモデルの確率モデルを使用して、残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇをコーディングする。
【００７８】
一方、基礎階層の残差データのエネルギーが０でないか、ｃｂｐが０でない場合には、残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇの値が１である可能性が高い。したがって、残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇの値が１である場合に効率が高い方法を使用する（Ｓ５３０）。例えば、コーディング方法としてＣＡＢＡＣが使われる場合、‘１’の確率が‘０’の確率よりさらに高い値を有するＣＡＢＡＣコンテキスト確率モデルを使用して残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇをコーディングする。
【００７９】
図１３の過程をコード（ｐｓｅｕｄｏ  ｃｏｄｅ）を通じて説明すれば次のようである。
Ｉｆ（基礎階層の残差データのエネルギー＝０またはＣＢＰ＝０である場合）
ｔｈｅｎ
ｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇが‘０’である場合に効率が高い方法を使用してコーディングする。
【００８０】
ｅｌｓｅ
ｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇが‘１’である場合に効率が高い方法を使用してコーディングする。
【００８１】
基礎階層、ＦＧＳ（ｆｉｎｅ−ｇｒａｎｕｌａｒｉｔｙ  ｓｃａｌａｂｉｌｉｔｙ［精細粒度スケーラビリティー］）階層、そして向上階層で構成されたビデオコーディング方式では、残差データエネルギーのＣＢＰ値は基礎階層またはＦＧＳ階層で参照しうる。
【００８２】
デコーディング過程もこれと類似している。基礎階層の残差データを求め、残差データを求めた結果、残差データのエネルギーが０であるか、またはＣＢＰが０である場合には、残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇの値が０であるために、残差予測フラッグの値が０である時、エンコーディング効率が高い方法によってエンコーディングされたビデオデータをデコーディングする。例えば、ＣＡＢＡＣを通じてビデオエンコーディングがなされた場合、‘０’の確率が‘１’の確率よりさらに高い値を有するＣＡＢＡＣコンテキスト確率モデルを使用してビデオデータをデコーディングし、残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇを求める。
【００８３】
一方、基礎階層の残差データのエネルギーが０でないか、ｃｂｐが０でない場合には、残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇの値が１である可能性が高いと判断し、エンコーディング効率が高い方法を使用してビデオ信号をエンコーディングすることによって、デコーディング時にもこれを考慮してデコーディングする。例えば、コーディング方法としてＣＡＢＡＣが使われる場合、‘１’の確率が‘０’の確率よりさらに高い値を有するＣＡＢＡＣコンテキスト確率モデルを使用してビデオデータをデコーディングし、残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇを求める。デコーディング過程をコードで説明すれば次の通りである。
Ｉｆ（基礎階層の残差データのエネルギー＝０またはＣＢＰ＝０である場合）
ｔｈｅｎ
ｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇが‘０’である場合に効率が高い方法を使用してデコーディングする。
【００８４】
ｅｌｓｅ
ｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇが‘１’である場合に効率が高い方法を使用してデコーディングする。
【００８５】
図１３において、Ｓ５２０では残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇが０である場合、またはＳ５３０では残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇが１である場合に各々効率が高い方法を使用する。この際、効率が高い方法のうち１つとして、エントロピーコーディング時にコンテキストモデルを変えることを挙げられる。一実施形態でＣＡＢＡＣコーディングを行う場合、コンテキストモデルを変えてコーディングする過程を説明すれば、図１４のようである。基礎階層の残差データを求める（Ｓ６０１）。残差データを求めた結果、残差データのエネルギーが０であるか、またはＣＢＰが０である場合（Ｓ６１０）には、残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇの値が０であるために、ＣＡＢＡＣコンテキストモデルの確率値を、‘０’の確率が‘１’の確率よりさらに高い値を有するように設定してｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇをコーディングする（Ｓ６２０）。一方、Ｓ６１０ステップで基礎階層の残差データが０でない場合、またはＣＢＰ値が０でない場合には、残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇの値が１である場合が多いので、ＣＡＢＡＣコンテキストモデルの確率値を、‘１’の確率が‘０’の確率よりさらに高い値を有するように設定してｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇをコーディングする（Ｓ６３０）。
【００８６】
図１５は、図１４の過程を通じてエンコーディングされたビデオデータをデコーダでデコーディングする過程を示すフローチャートである。デコーダは、受信されたビットストリームで基礎階層デコーディングを行い、基礎階層の残差データを求める（Ｓ６５１）。そして、ｃｏｄｅｄ＿ｐａｔｔｅｒｎ＿ｂｌｏｃｋの諸ビットを求める（Ｓ６５２）。ｃｏｄｅｄ＿ｐａｔｔｅｒｎ＿ｂｌｏｃｋにおける下位４ビットはＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＬｕｍａに割り当て、上位２ビットはＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＣｈｒｏｍａに割り当てる（Ｓ６５３）。ＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＬｕｍａの値は、マクロブロックを構成する４個のサブブロックに対するＣＢＰ値であることが分かる。ＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＣｈｒｏｍａの値は、ＤＣ成分とＡＣ成分に対するＣＢＰ値であることが分かる。ｃｏｄｅｄ＿ｐａｔｔｅｒｎ＿ｂｌｏｃｋとＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＬｕｍａ、ＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＣｈｒｏｍａの構成を説明すれば、表１のようである。ｃｏｄｅｄ＿ｐａｔｔｅｒｎ＿ｂｌｏｃｋは、各ビットが示すサブブロックまたはマクロブロックにおける非ゼロピクセルの存否についての情報を提供する。
【００８７】
【表１】
2006304307.tif 000001
ｂｉｔ［０］は、マクロブロックを４分割した８ｘ８の大きさの輝度ブロック（ｌｕｍａｂｌｏｃｋ）のうち、左上の８×８輝度ブロックに非ゼロピクセルが存在する場合に１となる。ｂｉｔ［１］は、右上の８×８輝度ブロック、ｂｉｔ［２］は左下の８×８輝度ブロック、そしてｂｉｔ［２］は右下の８×８輝度ブロックにそれぞれ非ゼロピクセルが存在する場合に１の値をもつ。
【００８８】
またｂｉｔ［４］及びｂｉｔ［５］は、マクロブロックで色度情報のＤＣ成分とＡＣ成分に非ゼロピクセルが存在する場合、１の値を有する。
【００８９】
したがって、ｃｏｄｅｄ＿ｂｌｏｃｋ＿ｐａｔｔｅｒｎの値（ＣＢＰ）を検討すれば、非ゼロピクセルの存否を判断しうる。Ｓ６６０ステップで、ＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＬｕｍａを構成する４つのｂｉｔのうち、１であるｂｉｔが１つ以上存在するか、ＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＣｈｒｏｍａの値が０より大きい場合には、残差データに非ゼロピクセルが存在することを示すので、この際には残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇが１になる可能性が高い。したがって、エントロピーデコーディングに必要なコンテキストモデルを設定するために、ｃｔｘＩｄｘＩｎｃの値を１に設定する（Ｓ６７０）。ｃｔｘＩｄｘＩｎｃの値を１に設定すれば、前述した残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇが‘１’である場合に、効率の高い方法でエンコーディングされたデータをデコーディングする。一実施形態で、ＣＡＢＡＣコンテキストモデルの確率値を、‘１’の確率が‘０’の確率よりさらに高い値を有するように設定してデコーディングする。
【００９０】
一方、Ｓ６６０ステップで、ＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＬｕｍａを構成する４つのｂｉｔのうち、１であるビットが存在しないか、ＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＣｈｒｏｍａの値が０である場合には、残差データに非ゼロピクセルが存在しないことを示すので、この時には残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇが０になる。したがって、エントロピーデコーディングに必要なコンテキストモデルを設定するためにｃｔｘＩｄｘＩｎｃの値を０に設定する（Ｓ６７０）。ｃｔｘＩｄｘＩｎｃの値を０に設定すれば、前述した残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇが‘０’である場合に、効率が高い方法でエンコーディングされたデータをデコーディングする。一実施形態で、ＣＡＢＡＣコンテキストモデルの確率値を、‘０’の確率が‘１’の確率よりさらに高い値を有するように設定してデコーディングする。
【００９１】
Ｓ６７０またはＳ６８０過程で、ｃｔｘＩｄｘＩｎｃの値を設定すれば、決定された値をもってエントロピーデコーディングを行う（Ｓ６９０）。
【００９２】
Ｓ６６０ステップは、ｃｏｄｅｄ＿ｂｌｏｃｋ＿ｐａｔｔｅｒｎに１であるビットが存在している否かを検討する過程である。前述したようにＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＬｕｍａとＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＣｈｒｏｍａとにｃｏｄｅｄ＿ｂｌｏｃｋ＿ｐａｔｔｅｒｎを割り当てる。ＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＬｕｍａを通じて非ゼロピクセルを探す過程を説明すれば次の通りである。
ｆｏｒ（ｌｕｍａ８ｘ８ＢｌｋＩｄｘ＝０；，ｉ＜＝３；，ｉ＋＋）｛
ｉｆ（（ＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＬｕｍａ＞＞ｌｕｍａ８ｘ８ＢｌｋＩｄｘ）＆１）ａｎｄ
（現在マクロブロックがｉｎｔｅｒ−ｍａｃｒｏｂｌｏｃｋ））
ｔｈｅｎ
ｒｅｓｉｄｕａｌＡｖａｉｌＬｕｍａ８ｘ８Ｂｌｋ＝１；，
ｂｒｅａｋ；，
ｅｌｓｅ
ｒｅｓｉｄｕａｌＡｖａｉｌＬｕｍａ８ｘ８Ｂｌｋ＝０；，
｝
ＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＬｕｍａの各ビットが１であるかを把握するために、ｌｕｍａ８ｘ８ＢｌｋＩｄｘ別に＆ビット演算を行い、現在マクロブロックがインターマクロブロック（ｉｎｔｅｒ  ｍａｃｒｏｂｌｏｃｋ）の場合であるかを検討して、真である場合には、ｒｅｓｉｄｕａｌＡｖａｉｌＬｕｍａ８ｘ８Ｂｌｋを１に設定し、その他の場合には、０に設定する。ｒｅｓｉｄｕａｌＡｖａｉｌＬｕｍａ８ｘ８Ｂｌｋ値は、ｂａｓｅＲｅｓｉｄｕａｌＡｖａｉｌＬｕｍａ８ｘ８Ｂｌｋを設定し、その結果、エントロピーデコーディング時にコンテキストモデルを決定するｃｔｘＩｄｘＩｎｃの値を決定する。
【００９３】
ＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＣｈｒｏｍａを通じて非ゼロピクセルを探す過程を説明すれば次の通りである。
ｉｆ（ＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＣｈｒｏｍａ！＝０）ａｎｄ
（現在マクロブロックがｉｎｔｅｒ−ｍａｃｒｏｂｌｏｃｋ）
ｔｈｅｎ
ｒｅｓｉｄｕａｌＡｖａｉｌＣｈｒｏｍａ＝１；，
ｂｒｅａｋ；，
ｅｌｓｅ
ｒｅｓｉｄｕａｌＡｖａｉｌＣｈｒｏｍａ＝０；，
ＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＣｈｒｏｍａの値が０でなく、現在マクロブロックがインターマクロブロックであるかを検討して、真である場合には、ｒｅｓｉｄｕａｌＡｖａｉｌＣｈｒｏｍａを１に設定し、その他の場合は０に設定する。ｒｅｓｉｄｕａｌＡｖａｉｌＣｈｒｏｍａ値は、ｂａｓｅＲｅｓｉｄｕａｌＡｖａｉｌＣｈｒｏｍａを設定し、その結果、エントロピーデコーディング時にコンテキストモデルを決定するｃｔｘＩｄｘＩｎｃの値を決定する。
【００９４】
したがって、ＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＬｕｍａまたはＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＣｈｒｏｍａに１であるビットが１つでも存在すれば、残差データに非ゼロピクセルを１つ以上あると判断して、ｃｔｘＩｄｘＩｎｃを１に設定し、その他の場合は、ｃｔｘＩｄｘＩｎｃを０に設定してエントロピーデコーディングを行う。
【００９５】
図１６は、本発明の一実施形態によるビデオエンコーダの構造を示す例示図である。図１６及び後述する図１７の説明では、１つの基礎階層と１つの向上階層とを使用する場合を例と挙げるが、さらに多くの階層を用いても下位階層と現在階層との間には、本発明を適用しうるということは当業者ならば十分に分かる。
前記ビデオエンコーダ５００は、向上階層エンコーダ４００と基礎階層エンコーダ３００とに大別されうる。まず、基礎階層エンコーダ３００の構成を説明する。
【００９６】
ダウンサンプラー３１０は、入力されたビデオを基礎階層に合う解像度とフレームレート、またはビデオ映像の大きさによってダウンサンプリングする。解像度面でのダウンサンプリングは、ＭＰＥＧダウンサンプラーやウェーブレットダウンサンプラーを利用しうる。そして、フレームレート面でのダウンサンプリングは、フレームスキップまたはフレーム補間などの方法を通じて簡単に行われる。ビデオ映像の大きさによるダウンサンプリングは、元の入力されたビデオが１６：９であっても、４：３に見られるようにすることを意味する。ビデオ情報において境界領域に該当する情報を除去するか、ビデオ情報を該当画面の大きさに合わせて縮小する方式を使用しうる。
【００９７】
動き推定部３５０は、基礎階層フレームに対して動き推定を行って基礎階層フレームを構成するパーティション別に動きベクトル（ｍｖ）を求める。このような動き推定は、フレームバッファに保存された以前の参照フレームＦｒ’上で、現在フレームＦｃの各パーティションと最も類似している、すなわち、最もエラーの小さい領域を探す過程であって、固定大きさブロックマッチング方法、または階層的可変サイズブロックマッチングなど多様な方法を使用しうる。前記参照フレームＦｒ’は、フレームバッファ３８０によって提供されうる。但し、図１４の基礎階層エンコーダ３００は、復元されたフレームを参照フレームとして利用する方式、すなわち、閉ループ符号化方式を採択しているが、これに限らず、ダウンサンプラー３１０によって提供される元の基礎階層フレームを参照フレームとして利用する開ループ符号化方式を採択しても良い。
【００９８】
一方、動き推定部３５０の動きベクトルｍｖは、仮想領域フレーム生成部３９０に伝達される。これは、現在フレームの境界領域ブロックの動きベクトルがフレームの中央に向う場合、仮想領域を付加した仮想領域フレームを生成するためである。
【００９９】
動き補償部３６０は、前記求めた動きベクトルを用いて、前記参照フレームを動き補償（ｍｏｔｉｏｎ  ｃｏｍｐｅｎｓａｔｉｏｎ）する。そして、差分器３１５は基礎階層の現在フレームＦｃと前記動き補償された参照フレームとを差分することによって、残差フレームを生成する。
【０１００】
変換部３２０は、前記生成された残差フレームに対して、空間的変換を行い、変換係数を生成する。このような空間的変換方法としては、ＤＣＴ（Ｄｉｓｃｒｅｔｅ  Ｃｏｓｉｎｅ  Ｔｒａｎｓｆｏｒｍ）、ウェーブレット変換などの方法が主に用いられる。ＤＣＴを使用する場合、前記変換係数は、ＤＣＴ係数を意味し、ウェーブレット変換を使用する場合、前記変換係数はウェーブレット係数を意味する。
【０１０１】
量子化部３３０は、変換部３２０によって生成される変換係数を量子化する。量子化とは、任意の実数値で表現される前記ＤＣＴ係数を量子化テーブルによって所定の区間に分けて不連続的な値（ｄｉｓｃｒｅｔｅ  ｖａｌｕｅ）で表し、これを対応するインデックスにマッチングさせる作業を意味する。このように量子化された結果値を量子化係数という。
【０１０２】
エントロピー符号化部３４０は、量子化部３３０によって生成された量子化係数、動き推定部３５０で生成された動きベクトルを無損失符号化で基礎階層ビットストリームを生成する。このような無損失符号化方法では、ハフマン符号化、算術符号化、可変長符号化などの多様な無損失符号化方法を使用しうる。
【０１０３】
一方、逆量子化部３７１は、量子化部３３０から出力される量子化係数を逆量子化する。このような逆量子化過程は、量子化過程の逆に該当する過程であって、量子化過程で使われた量子化テーブルを用いて量子化過程で生成されたインデックスから、それにマッチングされる値を復元する過程である。
【０１０４】
逆変換部３７２は、前記逆量子化された結果値に対して逆空間的変換を行う。このような逆空間的変換は変換部３２０での変換過程の逆に進行し、具体的に逆ＤＣＴ変換、逆ウェーブレット変換などが用いられる。
【０１０５】
加算器３２５は、動き補償部３６０の出力値と逆変換部３７２の出力値とを加算して現在フレームを復元Ｆｃ’し、これをフレームバッファ３８０に提供する。フレームバッファ３８０は、前記復元されたフレームを一時保存していて、他の基礎階層フレームのインター予測のために参照フレームとして提供する。
【０１０６】
復元されたフレームＦｃ’は、アップサンプラー３９５を経て向上階層エンコーダ４００に提供される。もちろん、基礎階層の解像度と向上階層の解像度とが同一であれば、前記アップサンプリング過程は省略しうる。
【０１０７】
次いで、向上階層エンコーダ２００の構成を説明する。基礎階層エンコーダ３００から提供されたフレームと入力フレームは、差分器４１０に入力される。差分器２１０は、前記入力フレームで前記入力された仮想領域を含む基礎階層フレームを差分して残差フレームを生成する。前記残差フレームは、変換部４２０、量子化部４３０、及びエントロピー符号化部４４０を経て向上階層ビットストリームに変換されて出力される。
【０１０８】
向上階層エンコーダ４００の変換部４２０は、入力フレームのマクロブロックと基礎階層フレームのマクロブロックの残差信号に対して空間的変換を行って変換係数を生成する。この際、空間的変換方法でＤＣＴ、ウェーブレット変換などが使われるということは前述した通りである。ＤＣＴ使用時のＤＣＴ係数またはウェーブレット変換の使用時、ウェーブレット係数は向上階層のマクロブロックが有する特性上、類似性が存在する。したがって、これら係数間に存在する類似性を除去して圧縮率を高める過程を向上階層エンコーダ４００の変換部４２０が行う。
【０１０９】
量子化部４３０の機能及び動作は、基礎階層エンコーダ３００の量子化部３３０の機能及び動作と同じであるために、重複された説明は省略する。量子化部４３０で算出されたビットストリームをエントロピー符号化部４４０を通じてエンコーディングする前に符号化情報設定部４３５を通じて残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇを効率的にエンコーディングするように設定する作業が進む。
【０１１０】
符号化情報設定部４３５は、前述したように、向上階層のデータが基礎階層フレームのデータを参照しているか否かについて、予測データと予測した結果との差をエンコーディングして、以後エントロピー符号化部４４０でエンコーディングされて伝達する情報の損失は無くせる。変換部４２０で圧縮のために情報をビットに設定する過程は、残差データを予測する場合（図４、図９、図１１、図１３、図１４）と、動きベクトルを予測する場合（図７）とで前述した通りである。例えば、基礎階層またはＦＧＳ階層の残差データのエネルギーが０であるか、またはＣＢＰ値が０である場合には、基礎階層の残差データを予測する必要がないので、符号化情報設定部４３５は残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇをエンコーディングしない。以外の場合には、残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇをコーディングする。この際、コーディングされる残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇの値が１である可能性が高いので、コーディング効率を考慮してエンコーディングするということは、図４、図９、図１１、図１３及び図１４で説明した。
【０１１１】
図１４の場合を適用する場合、符号化情報設定部４３５は、基礎階層の残差データのエネルギーが０であるか、ＣＢＰ値が０である場合には、残差予測フラッグの値が０であるためにＣＡＢＡＣコンテキストモデルの確率値を、‘０’の確率が‘１’の確率よりさらに高い値を有するように設定する。一方、基礎階層の残差データが０でない場合、またはＣＢＰ値が０でない場合には、残差予測フラッグの値が１である場合が多いので、ＣＡＢＡＣコンテキストモデルの確率値を、‘１’の確率が‘０’の確率よりさらに高い値を有するように設定する。これは前述したｃｔｘＩｄｘＩｎｃを０に設定するか、または１に設定する作業を一実施形態とする。
【０１１２】
エントロピー符号化部４４０は、符号化情報設定部４３５で設定した情報をもって向上階層データを符号化する作業を行う。符号化と関連した他の機能及び動作は、基礎階層エンコーダ３００のエントロピー符号化部３４０の機能及び動作と同様なので、重複される説明は省略する。
【０１１３】
図１６で示した向上階層エンコーダ４００は、基礎階層フレームに対して残差データまたは動きベクトルのように基礎階層フレームを参照しうるデータがエンコーディング過程で基礎階層フレームのデータを参照しているか否かを予測しうる。
【０１１４】
図１７は、本発明の一実施形態によるビデオデコーダの構造を示す例示図である。前記ビデオデコーダ５５０は、向上階層デコーダ７００と基礎階層デコーダ６００とに大別しうる。まず、基礎階層デコーダ６００の構成を説明する。
エントロピー復号化部６１０は、基礎階層ビットストリームを無損失復号化して、基礎階層フレームのテクスチャーデータと、動きデータ（動きベクトル、パーティション情報、参照フレーム番号など）を抽出する。
【０１１５】
逆量子化部６２０は、前記テクスチャーデータを逆量子化する。このような逆量子化過程は、ビデオエンコーダ５００端で行われる量子化過程の逆に該当する過程であって、量子化過程で使われた量子化テーブルを用いて量子化過程で生成されたインデックスから、それにマッチングされる値を復元する過程である。
【０１１６】
逆変換部６３０は、前記逆量子化された結果値に対して逆空間的変換を行って、残差フレームを復元する。このような逆空間的変換は、ビデオエンコーダ５００端の変換部３２０での変換過程の逆に進行し、具体的に逆ＤＣＴ変換、逆ウェーブレット変換などが用いられる。
【０１１７】
一方、エントロピー復号化部６１０は、動きベクトルｍｖを含む動きデータを動き補償部６６０に提供する。
【０１１８】
動き補償部６６０は、エントロピー復号化部６１０から提供される動きデータを用いて、フレームバッファ６５０から提供される既復元されたビデオフレーム、すなわち、参照フレームを動き補償して動き補償フレームを生成する。
【０１１９】
加算器６１５は、逆変換部６３０で復元される残差フレームと前記動き補償部６６０で生成された動き補償フレームを加算して基礎階層ビデオフレームを復元する。復元されたビデオフレームは、フレームバッファ６５０に一時保存でき、以後の他のフレームの復元のために動き補償部６６０に参照フレームとして提供しうる。
【０１２０】
現在フレームを復元したＦｃ’とのアップサンプラー６８０を経て向上階層デコーダ７００に提供される。したがって、基礎階層の解像度と向上階層の解像度とが同一であれば、前記アップサンプリング過程は省略しうる。もし、基礎階層のビデオ情報が向上階層のビデオ情報と比較して一部領域情報が除去された場合であれば、やはり前記アップサンプリング過程は省略されうる。
【０１２１】
次いで、向上階層デコーダ７００の構成を説明する。向上階層ビットストリームがエントロピー復号化部７１０に入力されれば、エントロピー復号化部７１０は前記入力されたビットストリームを無損失復号化して、非同期フレームに対するテクスチャーデータを抽出する。
【０１２２】
そして、前記抽出されたテクスチャーデータは逆量子化部７２０及び逆変換部７３０を経て残差フレームに復元される。逆量子化部７２０の機能及び動作は、基礎階層デコーダ５５０の逆量子化部６２０と類似した方式で構成される。
【０１２３】
加算器７１５は、前記復元された残差フレームと基礎階層デコーダ６００とから提供される基礎階層フレームを加算してフレームを復元する。
【０１２４】
向上階層デコーダ７００の逆変換部７３０が残差フレームを復元するためには、図５、図８、図１０、図１２、または図１５で説明した過程を進めうる。向上階層のデータが基礎階層フレームの復号化されたデータを参照しているか否かを知るために基礎階層フレームを構成するデータ、例えば、残差データまたは動きベクトルなどを検討する。図５で基礎階層の残差データが特定値Ｔｈｒｅｓｈｏｌｄｒｅｓｉｄｕａｌより低い場合、基礎階層の残差データが向上階層の残差データを予測するのに参照にならないので、予測フラッグの値を０に設定する過程が進む。また、図８で説明したように基礎階層の動きベクトルと空間的に隣接した動きベクトルの差を求め、その差が特定値ＴｈｒｅｓｈｏｌｄＭｏｔｉｏｎより低いか高いかによって、基礎階層の動きベクトルを予測値として使用しないこともあるので、これに該当する情報である動き予測フラッグを０に設定しうる。
【０１２５】
その他にも、図１０、図１２または図１５で説明したように基礎階層の残差データのエネルギーが０であるか、ＣＢＰ値が０か否かによって、基礎階層の残差データが向上階層の残差データを予測するのに参照しうる。コーディング効率を高めるためにエンコーディング側で多様な方法でエンコーディングを行うので、これに適したデコーディング方式を適用して、残差予測フラッグｒｅｓｉｄｕａｌ＿ｐｒｅｄｉｃｔｉｏｎ＿ｆｌａｇを求めうる。
【０１２６】
図１５のデコーディング過程を一実施形態とする場合、パージング部７０５は、向上階層ビットストリームでｃｏｄｅｄ＿ｂｌｏｃｋ＿ｐａｔｔｅｒｎを求め、このビット内での１の存否を検討する。ｃｏｄｅｄ＿ｂｌｏｃｋ＿ｐａｔｔｅｒｎを通じて残差データでの非ゼロピクセルの存否を判断しうる。この過程は、図１５の説明で前述したので、ここではその詳細な説明を省略する。
【０１２７】
パージング部７０５は、ｃｏｄｅｄ＿ｂｌｏｃｋ＿ｐａｔｔｅｒｎの他にもｂａｓｅＲｅｓｉｄｕａｌＡｖａｉｌＬｕｍａ８ｘ８Ｂｌｋ［０．．３］とｂａｓｅＲｅｓｉｄｕａｌＡｖａｉｌＣｈｒｏｍａの値を通じても、残差データに非ゼロピクセルの存否を判断しうる。パージング部７０５は、ｃｏｄｅｄ＿ｐａｔｔｅｒｎ＿ｂｌｏｃｋビットを求め、下位４ビットはＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＬｕｍａに割り当て、上位２ビットはＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＣｈｒｏｍａに割り当てる。そして、ＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＬｕｍａの４ビットのうち、１であるビットの存否を検討し、またＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＣｈｒｏｍａの値が０より大きいかを検討する。その結果、ＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＬｕｍａの４ビットのうち、１であるビットが１つ以上存在するか、ＣｏｄｅｄＢｌｏｃｋＰａｔｔｅｒｎＣｈｒｏｍａの値が０より大きければ、残差データに非ゼロピクセルを１つ以上有すると判断して、ｃｔｘＩｄｘＩｎｃを１に設定し、その他の場合はｃｔｘＩｄｘＩｎｃを０に設定する。パージング部７０５で設定したｃｔｘＩｎｘＩｎｃ値を参照してエントロピー復号化部７１０はエントロピー復号化（デコーディング）を行う。
【０１２８】
以上、図１７に示した向上階層デコーダ７００は、基礎階層フレームに対してイントラＢＬ予測を通じてデコーディングすることを中心に説明した。それ以外にも、図２で説明したようにインター予測またはイントラ予測方法を選択的に用いてデコーディングしうるということは当業者ならば理解できるであろう。
【０１２９】
本発明が属する技術分野で当業者ならば本発明がその技術的思想や必須特徴を変更せずとも他の具体的な形に実施されうるということが理解できるであろう。したがって、前述した実施例は全ての面で例示的なものであって、限定的なものではないと理解せねばならない。
【０１３０】
本発明の範囲は詳細な説明よりは特許請求の範囲により表れ特許請求の範囲の意味及び範囲、そしてその等価概念から導かれるあらゆる変更または変形された形態が本発明の範囲に含まれると解釈されねばならない。
【産業上の利用可能性】
【０１３１】
本発明は、ビデオ信号のエンコーディング及びデコーディングに関連した技術分野に好適に適用されうる。
本願はさまざまな実施の態様を考えることができる。以下に挙げる参考態様はその一例である。
〔参考態様１〕
多階層ビデオ信号の向上階層を構成するブロックの残差データを対応する下位階層ブロックの残差データから予測してコーディングするために、前記予測如何を示す残差予測フラッグをコーディングする方法において、
前記下位階層の対応するブロックの残差データのエネルギーを計算するステップと、
前記エネルギーによって前記残差予測フラッグのコーディング方法を決定するステップと、
前記決定されたコーディング方法によって残差予測フラッグをコーディングするステップと、を含むビデオ信号の残差予測フラッグをコーディングする方法。
〔参考態様２〕
前記計算された残差データのエネルギーが所定の基準値未満である場合には残差予測フラッグをコーディングする過程が省略され、前記残差データのエネルギーが前記所定の基準値以上である場合には、前記残差予測フラッグのコーディングは、残差予測フラッグの値を予測値と残差予測フラッグの値との差をコーディングすることである、参考態様１に記載のビデオ信号の残差予測フラッグをコーディングする方法。
〔参考態様３〕
前記残差予測フラッグのコーディング方法は、前記計算された残差データのエネルギーが所定の基準値以上である場合、１から前記残差予測フラッグの値を引いた値をコーディングする方法である参考態様１に記載のビデオ信号の残差予測フラッグをコーディングする方法。
〔参考態様４〕
前記計算された残差データのエネルギーが所定の基準値未満である場合には残差予測フラッグの値をコーディングする過程が省略され、前記計算された残差データのエネルギーが所定の基準値以上である場合には、前記残差予測フラッグのコーディングは、前記残差予測フラッグの値をシンボル１にバイアスされたコンテキストを使用してコーディングする方法である参考態様１に記載のビデオ信号の残差予測フラッグをコーディングする方法。
〔参考態様５〕
前記残差予測フラッグのコーディング方法は、前記計算された残差データのエネルギーが所定の基準値未満である場合、前記残差予測フラッグを第１コンテキストモデルを使用してコーディングし、前記計算された残差データのエネルギーが所定の基準値以上である場合、前記残差予測フラッグを第２コンテキストモデルを使用してコーディングする方法であって、前記第１コンテキストモデルは、０の確率が１の確率より高いコンテキストモデルであり、前記第２コンテキストモデルは、１の確率が０の確率より高いコンテキストモデルである、参考態様１に記載のビデオ信号の残差予測フラッグをコーディングする方法。
〔参考態様６〕
前記下位階層の対応するブロックの残差データのエネルギーを計算するステップは、前記ビデオ信号に存在するＣＢＰ（ｃｏｄｅｄ＿ｂｌｏｃｋ＿ｐａｔｔｅｒｎ）の各ビットを算出するステップと、前記算出されたビットのうち、１の値を有するビットの存否を検討するステップと、を含む参考態様１に記載のビデオ信号の残差予測フラッグをコーディングする方法。
〔参考態様７〕
前記下位階層は、基礎階層またはＦＧＳ階層である参考態様１に記載のビデオ信号の残差予測フラッグをコーディングする方法。
〔参考態様８〕
前記計算するステップは、前記向上階層が参照する下位階層のエネルギーを合算して計算するステップである参考態様１に記載のビデオ信号の残差予測フラッグをコーディングする方法。
〔参考態様９〕
多階層ビデオ信号の向上階層を構成するブロックの残差データを対応する下位階層ブロックの残差データから予測してコーディングするために、前記予測如何を示す残差予測フラッグをコーディングする方法において、
前記下位階層の対応するブロックに対する符号化ブロックパターンの値を計算するステップと、
前記計算した符号化ブロックパターンの値によって前記残差予測フラッグのコーディング方法を決定するステップと、
前記決定されたコーディング方法によって残差予測フラッグをコーディングするステップと、を含むビデオ信号の残差予測フラッグをコーディングする方法。
〔参考態様１０〕
前記残差予測フラッグのコーディング方法は、前記符号化ブロックパターンの各ビットが１であるビットが、所定のビット数未満である場合、残差予測フラッグをコーディングする過程を省略し、前記符号化ブロックパターンの各ビットが１であるビットが、所定のビット数以上である場合、残差予測フラッグの値を予測する値と残差予測フラッグの値との差をコーディングする方法である参考態様９に記載のビデオ信号の残差予測フラッグをコーディングする方法。
〔参考態様１１〕
前記残差予測フラッグのコーディング方法は、前記符号化ブロックパターンの各ビットが１であるビットが所定のビット数以上である場合、１から前記残差予測フラッグの値を引いた値をコーディングする方法である参考態様９に記載のビデオ信号の残差予測フラッグをコーディングする方法。
〔参考態様１２〕
前記残差予測フラッグのコーディング方法は、前記符号化ブロックパターンの各ビットが１であるビットが所定のビット数以下である場合、残差予測フラッグの値をコーディングする過程を省略し、前記符号化ブロックパターンの各ビットが１であるビットが所定のビット数以上である場合、前記残差予測フラッグの値をシンボル１にバイアスされたコンテキストを使用してコーディングする方法である参考態様９に記載のビデオ信号の残差予測フラッグをコーディングする方法。
〔参考態様１３〕
前記残差予測フラッグのコーディング方法は、前記符号化ブロックパターンの各ビットが１であるビットが所定のビット数以下である場合、前記残差予測フラッグを第１コンテキストモデルを使用してコーディングし、前記符号化ブロックパターンの各ビットが１であるビットが所定のビット数以上である場合、前記残差予測フラッグを第２コンテキストモデルを使用してコーディングする方法であって、前記第１コンテキストモデルは０の確率が１の確率よりさらに高い値を有するコンテキストモデルであり、前記第２コンテキストモデルは１の確率が０の確率よりさらに高い値を有するコンテキストモデルである参考態様９に記載のビデオ信号の残差予測フラッグをコーディングする方法。
〔参考態様１４〕
前記下位階層の対応するブロックに対する符号化ブロックパターンの値を計算するステップは、前記ビデオ信号に存在するＣＢＰ（ｃｏｄｅｄ＿ｂｌｏｃｋ＿ｐａｔｔｅｒｎ）の下位４ビットを輝度に対する符号化ブロックパターンの値に設定し、上位２ビットを色度に対する符号化ブロックパターンの値に設定するステップを含む参考態様９に記載のビデオ信号の残差予測フラッグをコーディングする方法。
〔参考態様１５〕
前記下位階層は、基礎階層またはＦＧＳ階層である参考態様９に記載のビデオ信号の残差予測フラッグをコーディングする方法。
〔参考態様１６〕
前記計算するステップは、前記向上階層が参照する下位階層の対応するブロックに対する符号化ブロックパターンの各ビットにおいて、１であるビットの存否を計算するステップである、参考態様９に記載のビデオ信号の残差予測フラッグをコーディングする方法。
〔参考態様１７〕
多階層ビデオ信号の向上階層を構成するブロックの残差データを、対応する下位階層ブロックの残差データから予測してデコーディングするために、前記予測如何を示す残差予測フラッグをデコーディングする方法において、
前記下位階層の対応するブロックの残差データのエネルギーを計算するステップと、
前記エネルギーによって前記残差予測フラッグのデコーディング方法を決定するステップと、
前記決定されたデコーディング方法によって残差予測フラッグをデコーディングするステップと、を含むビデオ信号の残差予測フラッグをデコーディングする方法。
〔参考態様１８〕
前記残差予測フラッグのデコーディング方法は、前記計算された残差データのエネルギーが所定の基準値未満である場合、残差予測フラッグをデコーディングする過程なしに残差予測フラッグの値を０に設定し、前記計算された残差データのエネルギーが所定の基準値以上である場合、残差予測フラッグの値を予測する値から差を差し引いた値を残差予測フラッグの値に設定する方法である、参考態様１７に記載のビデオ信号の残差予測フラッグをデコーディングする方法。
〔参考態様１９〕
前記計算された残差データのエネルギーが所定の基準値以上である場合、反転残差予測フラッグに設定された値を１から引いた値が前記残差予測フラッグの値に設定される、参考態様１７に記載のビデオ信号の残差予測フラッグをデコーディングする方法。
〔参考態様２０〕
前記残差予測フラッグのデコーディング方法は、前記計算された残差データのエネルギーが所定の基準値未満である場合、残差予測フラッグの値をデコーディングする過程を省略し、前記計算された残差データのエネルギーが所定の基準値以上である場合、残差予測フラッグの値をシンボル１にバイアスされたコンテキストを使用してデコーディングする方法である参考態様１７に記載のビデオ信号の残差予測フラッグをデコーディングする方法。
〔参考態様２１〕
前記残差予測フラッグのデコーディング方法は、前記計算された残差データのエネルギーが所定の基準値未満である場合、前記残差予測フラッグを第１コンテキストモデルを使用してデコーディングし、前記計算された残差データのエネルギーが所定の基準値以上である場合、前記残差予測フラッグを第２コンテキストモデルを使用してデコーディングする方法であって、前記第１コンテキストモデルは、０の確率が１の確率より高いコンテキストモデルであり、前記第２コンテキストモデルは、１の確率が０の確率より高いコンテキストモデルである、参考態様１７に記載のビデオ信号の残差予測フラッグをデコーディングする方法。
〔参考態様２２〕
前記下位階層の対応するブロックの残差データのエネルギーを計算するステップは、前記ビデオ信号に存在するＣＢＰ（ｃｏｄｅｄ＿ｂｌｏｃｋ＿ｐａｔｔｅｒｎ）の各ビットを算出するステップと、前記算出されたビットのうち、１の値を有するビットの存否を検討するステップと、を含む参考態様１７に記載のビデオ信号の残差予測フラッグをデコーディングする方法。
〔参考態様２３〕
前記下位階層は、基礎階層またはＦＧＳ階層である参考態様１７に記載のビデオ信号の残差予測フラッグをデコーディングする方法。
〔参考態様２４〕
前記計算するステップは、前記向上階層が参照する下位階層のエネルギーを合算して計算するステップである参考態様１７に記載のビデオ信号の残差予測フラッグをデコーディングする方法。
〔参考態様２５〕
多階層ビデオ信号の向上階層を構成するブロックの残差データを対応する下位階層ブロックの残差データから予測してデコーディングするために、前記予測如何を示す残差予測フラッグをデコーディングする方法において、
前記下位階層の対応するブロックに対する符号化ブロックパターンの値を計算するステップと、
前記計算した符号化ブロックパターンの値によって前記残差予測フラッグのデコーディング方法を決定するステップと、
前記決定されたコーディング方法によって残差予測フラッグをデコーディングするステップと、を含むビデオ信号の残差予測フラッグをデコーディングする方法。
〔参考態様２６〕
前記残差予測フラッグのデコーディング方法は、前記符号化ブロックパターンの各ビットが１であるビットが所定のビット数以下である場合、残差予測フラッグをデコーディングする過程なしに残差予測フラッグの値を０に設定し、前記符号化ブロックパターンの各ビットが１であるビットが所定のビット数以上である場合、残差予測フラッグの値から差を差し引いた値を残差予測フラッグの値に設定する方法である参考態様２５に記載のビデオ信号の残差予測フラッグをデコーディングする方法。
〔参考態様２７〕
前記残差予測フラッグのデコーディング方法は、前記符号化ブロックパターンの各ビットが１であるビットが所定のビット数以上である場合、反転残差予測フラッグに設定された値から１を差し引いた値を前記残差予測フラッグの値に設定する方法である参考態様２５に記載のビデオ信号の残差予測フラッグをデコーディングする方法。
〔参考態様２８〕
前記残差予測フラッグのデコーディング方法は、前記符号化ブロックパターンの各ビットが１であるビットが所定のビット数以下である場合、残差予測フラッグの値をデコーディングする過程を省略し、前記符号化ブロックパターンの各ビットが１であるビットが所定のビット数以上である場合、残差予測フラッグの値をシンボル１にバイアスされたコンテキストを使用してデコーディングする方法である参考態様２５に記載のビデオ信号の残差予測フラッグをデコーディングする方法。
〔参考態様２９〕
前記残差予測フラッグのデコーディング方法は、前記符号化ブロックパターンの各ビットが１であるビットが所定のビット数以下である場合、前記残差予測フラッグを第１コンテキストモデルを使用してデコーディングし、前記符号化ブロックパターンの各ビットが１であるビットが所定のビット数以上である場合、前記残差予測フラッグを第２コンテキストモデルを使用してデコーディングする方法であって、前記第１コンテキストモデルは、０の確率が１の確率よりさらに高い値を有するコンテキストモデルであり、前記第２コンテキストモデルは、１の確率が０の確率よりさらに高い値を有するコンテキストモデルである参考態様２５に記載のビデオ信号の残差予測フラッグをデコーディングする方法。
〔参考態様３０〕
前記下位階層の対応するブロックに対する符号化ブロックパターンの値を計算するステップは、前記ビデオ信号に存在するＣＢＰ（ｃｏｄｅｄ＿ｂｌｏｃｋ＿ｐａｔｔｅｒｎ）の下位４ビットを輝度に対する符号化ブロックパターンの値に設定し、上位２ビットを色度に対する符号化ブロックパターンの値に設定するステップを含む参考態様２５に記載のビデオ信号の残差予測フラッグをデコーディングする方法。
〔参考態様３１〕
前記下位階層は、基礎階層またはＦＧＳ階層である参考態様２５に記載のビデオ信号の残差予測フラッグをデコーディングする方法。
〔参考態様３２〕
前記計算するステップは、前記向上階層が参照する下位階層の対応するブロックに対する符号化ブロックパターンの各ビットにおいて、１であるビットの存否を計算するステップである、参考態様２５に記載のビデオ信号の残差予測フラッグをデコーディングする方法。
〔参考態様３３〕
多階層ビデオ信号の向上階層を構成するブロックの残差データを対応する下位階層ブロックの残差データから予測してデコーディングするために、前記予測如何を示す残差予測フラッグをデコーディングする方法において、
前記下位階層の対応するブロックに対する符号化ブロックパターンの値を確認するステップと、
前記符号化ブロックパターンを構成するそれぞれのビットに１の値を有するビットの存否を判断するステップと、
前記判断の結果、１の値を有するビットが１つ以上存在する否かかによって前記残差予測フラッグのデコーディング方法を決定するステップと、
前記決定されたデコーディング方法によって残差予測フラッグをデコーディングするステップと、を含むビデオ信号の残差予測フラッグをデコーディングする方法。
〔参考態様３４〕
前記判断するステップは、
前記符号化ブロックパターンの下位４ビットを、輝度の符号化如何を判断する第１変数に設定し、上位２ビットを色度の符号化如何を判断する第２変数に設定するステップと、
マクロブロックのアドレスに割当てられた０ないし３のうち、いずれか１つの大きさほど、前記第１変数を右シフト演算を行い、その結果と１とをＡＮＤビット演算を行うステップと、
前記判断の結果、０でない場合、前記符号化ブロックパターンに１を有するビットが存在すると判断するステップと、を含む参考態様３３に記載のビデオ信号の残差予測フラッグをデコーディングする方法。
〔参考態様３５〕
前記決定するステップは、前記残差予測フラッグのデコーディングに必要なコンテキストモデルを設定するステップであり、前記デコーディングするステップは、前記設定されたコンテキストモデルを使用してエントロピーデコーディングを行うステップである参考態様３３に記載のビデオ信号の残差予測フラッグをデコーディングする方法。
〔参考態様３６〕
前記エントロピーデコーディングはＣＡＢＡＣ（コンテキスト基盤の適応的算術コーディング）方式でデコーディングする参考態様３５に記載のビデオ信号の残差予測フラッグをデコーディングする方法。
〔参考態様３７〕
前記決定するステップは、前記判断するステップにおいて前記符号化ブロックパターンに１の値を有するビットが１つ以上存在する場合、コンテキストモデルを設定する変数を１に設定し、前記符号化ブロックパターンに１の値を有するビットが存在しない場合、コンテキストモデルを設定する変数を０に設定するステップを含む参考態様３３に記載のビデオ信号の残差予測フラッグをデコーディングする方法。
〔参考態様３８〕
前記デコーディングするステップは、前記コンテキストモデルを設定する変数が０である場合、前記残差予測フラッグを第１コンテキストモデルを使用してデコーディングし、前記コンテキストモデルを設定する変数が１である場合、前記残差予測フラッグを第２コンテキストモデルを使用してデコーディングする方法であって、前記第１コンテキストモデルは、０の確率が１の確率よりさらに高い値を有するコンテキストモデルであり、前記第２コンテキストモデルは、１の確率が０の確率よりさらに高い値を有するコンテキストモデルである参考態様３７に記載のビデオ信号の残差予測フラッグをデコーディングする方法。
〔参考態様３９〕
前記下位階層は、基礎階層またはＦＧＳ階層である参考態様３３に記載のビデオ信号の残差予測フラッグをデコーディングする方法。
〔参考態様４０〕
前記確認するステップは、前記向上階層が参照する下位階層の対応するブロックに対する符号化ブロックパターンの各ビットにおいて、１であるビットの存否を計算するステップである参考態様３３に記載のビデオ信号の残差予測フラッグをデコーディングする方法。
〔参考態様４１〕
多階層ビデオ信号の復号化しようとする向上階層をデコーディングする方法において、
前記向上階層に対応する下位階層の符号化ブロックパターン値から、前記向上階層の前記下位階層からの予測如何を示す残差予測フラッグのデコーディング方法を決定するステップと、
前記デコーディング方法によって選択されたエントロピー復号化方法によって前記残差予測フラッグを復号化し、前記残差予測フラッグによって前記向上計測を復号化する復号化ステップと、を含むデコーディング方法。
〔参考態様４２〕
多階層ビデオ信号の向上階層を構成するブロックの残差データを対応する下位階層ブロックの残差データから予測してデコーディングするために、前記予測如何を示す残差予測フラッグをデコーディングする装置において、
前記下位階層ブロックに対する符号化ブロックパターンの値を解釈するパージング部と、
前記符号化ブロックパターン値によって前記残差予測フラッグに対するデコーディング方法を決定し、前記デコーディング方法によって前記残差予測フラッグをデコーディングするデコーディング部と、を備えるデコーディング装置。
〔参考態様４３〕
前記パージング部は、前記符号化ブロックパターンの下位４ビットを、輝度の符号化如何を判断する第１変数に設定し、上位２ビットを色度の符号化如何を判断する第２変数に設定し、マクロブロックのアドレスに割当てられた０ないし３のうち、いずれか１つの大きさほど、前記第１変数を右シフト演算を行い、その結果と１とをＡＮＤビット演算を行い、前記判断の結果、０でない場合、前記符号化ブロックパターンに１を有するビットが存在すると判断することを特徴とする参考態様４２に記載のデコーディング装置。
〔参考態様４４〕
前記パージング部は、前記残差予測フラッグのデコーディングに必要なコンテキストモデルを設定し、前記復号化部は、前記設定されたコンテキストモデルを使用してエントロピーデコーディングを行う参考態様４２に記載のビデオデコーダ。
〔参考態様４５〕
前記エントロピーデコーディングはＣＡＢＡＣ（コンテキスト基盤の適応的算術コーディング）方式でデコーディングする参考態様４４に記載のビデオデコーダ。
〔参考態様４６〕
前記パージング部は、前記向上階層が参照する下位階層の対応するブロックに対する符号化ブロックパターンの各ビットにおいて１であるビットの存否を判断する参考態様４２に記載のビデオデコーダ。
〔参考態様４７〕
前記復号化部は、前記コンテキストモデルを設定する変数が０である場合、前記残差予測フラッグを第１コンテキストモデルを使用してデコーディングし、前記コンテキストモデルを設定する変数が１である場合、前記残差予測フラッグを第２コンテキストモデルを使用してデコーディングし、前記第１コンテキストモデルは、０の確率が１の確率よりさらに高い値を有するコンテキストモデルであり、前記第２コンテキストモデルは、１の確率が０の確率よりさらに高い値を有するコンテキストモデルである参考態様４６に記載のビデオデコーダ。
〔参考態様４８〕
前記下位階層は、基礎階層またはＦＧＳ階層である参考態様４２に記載のビデオデコーダ。
〔参考態様４９〕
前記パージング部は、前記向上階層が参照する下位階層の対応するブロックに対する符号化ブロックパターンの各ビットにおいて、１であるビットの存否を判断する参考態様４２に記載のビデオデコーダ。
〔参考態様５０〕
多階層ビデオ信号の復号化しようとする向上階層をデコーディングする装置において、
前記向上階層に対応する下位階層の符号化ブロックパターン値を解釈するパージング部と、
前記符号化ブロックパターン値から前記向上階層の前記下位階層からの予測如何を示す残差予測フラッグのデコーディング方法を決定し、前記デコーディング方法によって前記残差予測フラッグを逆エントロピー復号化し、前記向上階層を逆エントロピー復号化する逆エントロピー復号化部と、
前記向上階層を逆量子化する逆量子化部と、
前記逆量子化された向上階層を逆時間的変換し、前記残差予測フラッグによって前記下位階層から予測して復号化する逆時間的変換部と、を備えることを特徴とするデコーディング装置。
〔参考態様５１〕
多階層基盤のビデオエンコーダにおいて、
（ａ）入力フレームで基礎階層フレームを生成するステップと、
（ｂ）前記入力フレームで前記基礎階層フレームを参照する向上階層のデータを生成するステップと、
（ｃ）前記基礎階層フレームのデータが前記向上階層のデータを予測できてか否かを判断した結果によって前記向上階層のデータをエンコーディングするステップと、を含むエンコーディング方法。
〔参考態様５２〕
前記（ａ）ステップは、前記基礎階層フレームと時間的差をおく第２フレームと前記基礎階層フレームとの差分による残差データを求めるステップを含み、前記残差データのエネルギーが特定値未満である場合、前記（ｃ）ステップは、前記向上階層のデータが前記基礎階層フレームのデータを参照しているか否かについての予測情報を除いて、前記向上階層のデータをエンコーディングするステップを含む参考態様５１に記載のエンコーディング方法。
〔参考態様５３〕
前記特定値は、エネルギーが０である場合である参考態様５１に記載のエンコーディング方法。
〔参考態様５４〕
前記（ａ）ステップは、前記基礎階層フレームと時間的差をおく第２フレームと前記基礎階層フレームとの差分による残差データを求めるステップを含み、前記残差データのエネルギーが特定値以上である場合、前記（ｃ）ステップは、
（ｄ）前記基礎階層フレームのデータの動きベクトルと前記向上階層のデータの動きベクトルとの差を計算するステップと、
（ｅ）前記両動きベクトルの差によって前記基礎階層のデータの参照如何を予測する決定情報を設定するステップと、
（ｆ）前記（ｅ）ステップで設定した決定情報と前記基礎階層フレームのデータを参照しているか否かについての情報との差を含む前記向上階層のデータをエンコーディングするステップと、を含む参考態様５１に記載のエンコーディング方法。
〔参考態様５５〕
前記（ｃ）ステップは、
（ｄ）前記向上階層のデータが前記基礎階層フレームのデータで予測した動きベクトルを求めるステップと、
（ｅ）前記向上階層のデータで空間的に隣接した領域のデータで予測した動きベクトルを求めるステップと、
（ｆ）前記（ｄ）ステップ及び前記（ｅ）ステップで求めた動きベクトルの差が特定値以下である場合、前記向上階層のデータが前記基礎階層フレームの動きベクトルを参照しているか否かについての情報を除いて、前記向上階層のデータをエンコーディングするステップと、を含む参考態様５１に記載のエンコーディング方法。
〔参考態様５６〕
前記特定値は、差が０である場合である参考態様５１に記載のエンコーディング方法。
〔参考態様５７〕
前記（ｃ）ステップは、
（ｄ）前記向上階層のデータが前記基礎階層フレームのデータで予測した動きベクトルを求めるステップと、
（ｅ）前記向上階層のデータで空間的に隣接した領域で予測した動きベクトルを求めるステップと、
（ｆ）前記（ｄ）ステップ及び前記（ｅ）ステップで求めた動きベクトルの差によって前記基礎階層フレームのデータの動きベクトルの参照如何を予測するように決定情報を設定するステップと、
（ｇ）前記（ｆ）ステップで設定した決定情報と前記基礎階層フレームのデータの動きベクトルを参照しているか否かについての情報との差を含んで、前記向上階層のデータをエンコーディングするステップと、を含む参考態様５１に記載のエンコーディング方法。
〔参考態様５８〕
前記（ｃ）ステップの向上階層のデータは、前記向上階層のデータが前記基礎階層フレームのデータを参照するか否かを予測するための決定情報及び前記基礎階層フレームのデータを参照するか否かについての予測情報と前記決定情報との差を含む参考態様５１に記載のエンコーディング方法。
〔参考態様５９〕
前記エンコーディングするステップは、エントロピーのコーディング方式でエンコーディングするステップを含む参考態様５１に記載のエンコーディング方法。
〔参考態様６０〕
前記基礎階層フレームのデータと向上階層のデータは、マクロブロック、スライス、またはフレームのうち、いずれか１つである参考態様５１に記載のエンコーディング方法。
〔参考態様６１〕
多階層基盤のビデオデコーダにおいて、
（ａ）入力された基礎階層フレームをデコーディングするステップと、
（ｂ）前記デコーディングされた基礎階層フレームのデータが、前記基礎階層フレームを参照する向上階層のデータの予測に必要か否かを判断するステップと、
（ｃ）前記判断した結果によって前記向上階層のデータをデコーディングするステップと、を含むデコーディング方法。
〔参考態様６２〕
前記（ｂ）ステップの基礎階層フレームのデータが前記基礎階層フレームと時間的差をおく第２フレームとの差分による残差データを含んで前記残差データのエネルギーが特定値以下である場合、前記（ｃ）ステップは、前記向上階層のデータが前記基礎階層フレームのデータを参照しないものと予測情報を設定して、前記向上階層のデータをデコーディングするステップを含む参考態様６１に記載のデコーディング方法。
〔参考態様６３〕
前記特定値は、エネルギーが０である場合である参考態様６１に記載のデコーディング方法。
〔参考態様６４〕
前記（ｂ）ステップの基礎階層フレームのデータが、前記基礎階層フレームと時間的差をおく第２フレームとの差分による残差データを含み、前記残差データのエネルギーが特定値以上である場合、前記（ｃ）ステップは、
（ｄ）前記エンコーディングされた向上階層のデータのデコーディング時に前記基礎階層フレームの残差データを参照して予測するか否かを決定する決定情報と、前記決定情報と前記基礎階層フレームの残差データとを参照して予測するか否かについての予測情報の差に関する値を含む情報をデコーディングするステップを含む参考態様６１に記載のデコーディング方法。
〔参考態様６５〕
前記（ｂ）ステップは、（ｆ）前記（ｄ）ステップ及び前記（ｅ）ステップで求めた動きベクトルの差が特定値以下である場合、前記（ｃ）ステップは、前記向上階層のデータが前記基礎階層フレームのデータの動きベクトルを参照しないもので前記予測情報を設定して、前記向上階層のデータをデコーディングするステップを含む参考態様６１に記載のデコーディング方法。
〔参考態様６６〕
前記特定値は、差が０である場合である参考態様６１に記載のデコーディング方法。
〔参考態様６７〕
前記（ｃ）ステップは、前記エンコーディングされた向上階層のデータのデコーディング時に前記基礎階層フレームの動きベクトルを参照して予測するか否かを決定する決定情報と、前記決定情報と前記基礎階層フレームの動きベクトルを参照して予測するか否かについての予測情報の差に関する値を含む情報をデコーディングするステップを含む参考態様６１に記載のデコーディング方法。
〔参考態様６８〕
前記（ｃ）ステップの向上階層のデータは、前記向上階層のデータが前記基礎階層フレームのデータを参照するか否かを予測するための決定情報及び前記基礎階層フレームのデータを参照するか否かについての予測情報と前記決定情報との差に関する値を含む参考態様６１に記載のデコーディング方法。
〔参考態様６９〕
前記デコーディングするステップは、エントロピーのデコーディング方式でデコーディングするステップを含む参考態様６１に記載のデコーディング方法。
〔参考態様７０〕
前記基礎階層フレームのデータと向上階層のデータは、マクロブロック、スライス、またはフレームのうち、いずれか１つである参考態様６１に記載のデコーディング方法。
〔参考態様７１〕
入力フレームで基礎階層フレームを生成する基礎階層エンコーダと、
前記入力フレームで前記基礎階層フレームを参照する向上階層のデータを生成する向上階層エンコーダと、を備え、
前記向上階層エンコーダは、前記基礎階層フレームのデータが前記向上階層のデータを予測できるか否かを判断した結果によって、前記向上階層のデータをエンコーディングする変換部を備えるビデオエンコーダ。
〔参考態様７２〕
前記残差データのエネルギーが特定値以下である場合、前記変換部は、前記向上階層のデータが前記基礎階層フレームのデータを参照しているか否かについての予測情報を除いて前記向上階層のデータをエンコーディングする参考態様７１に記載のビデオエンコーダ。
〔参考態様７３〕
前記特定値は、エネルギーが０である場合である参考態様７１に記載のビデオエンコーダ。
〔参考態様７４〕
前記残差データのエネルギーが特定値以上である場合、前記変換部は、前記基礎階層フレームのデータの動きベクトルと前記向上階層のデータの動きベクトルとの差を計算し、前記両動きベクトルの差によって前記基礎階層のデータの参照如何を予測する決定情報を設定し、前記設定した決定情報と前記基礎階層フレームのデータを参照しているか否かについての情報との差を含んで前記向上階層のデータをエンコーディングする参考態様７１に記載のビデオエンコーダ。
〔参考態様７５〕
前記変換部は、前記向上階層のデータが前記基礎階層フレームのデータで予測した動きベクトルと前記向上階層のデータで空間的に隣接した領域のデータで予測した動きベクトルとを求め、前記両動きベクトルの差が特定値以下である場合、前記向上階層のデータが前記基礎階層フレームの動きベクトルを参照しているか否かについての情報を除いて前記向上階層のデータをエンコーディングする参考態様７１に記載のビデオエンコーダ。
〔参考態様７６〕
前記特定値は、エネルギーが０である場合である参考態様７１に記載のビデオエンコーダ。
〔参考態様７７〕
前記変換部は、前記向上階層のデータが前記基礎階層フレームのデータで予測した動きベクトルと前記向上階層のデータで空間的に隣接した領域で予測した動きベクトルとを求め、前記両動きベクトルの差によって前記基礎階層フレームのデータの動きベクトルの参照如何を予測するように決定情報を設定し、前記設定した決定情報と前記基礎階層フレームのデータの動きベクトルを参照しているか否かについての情報との差を含んで前記向上階層のデータをエンコーディングする参考態様７１に記載のビデオエンコーダ。
〔参考態様７８〕
前記向上階層のデータは、前記向上階層のデータが前記基礎階層フレームのデータを参照するか否かを予測するための決定情報及び前記基礎階層フレームのデータを参照するか否かについての予測情報と前記決定情報との差を含む参考態様７１に記載のビデオエンコーダ。
〔参考態様７９〕
前記変換部は、エントロピーのコーディング方式でエンコーディングする参考態様７１に記載のビデオエンコーダ。
〔参考態様８０〕
前記基礎階層フレームのデータと向上階層のデータは、マクロブロック、スライス、またはフレームのうち、いずれか１つである参考態様７１に記載のビデオエンコーダ。
〔参考態様８１〕
入力された基礎階層フレームをデコーディングする基礎階層デコーダと、
前記基礎階層フレームを参照して向上階層のデータをデコーディングする向上階層デコーダと、を備え、
前記向上階層デコーダは、前記デコーディングされた基礎階層フレームのデータが前記基礎階層フレームを参照する向上階層のデータの予測に必要か否かを判断し、前記判断した結果によって前記向上階層のデータをデコーディングする逆変換部を備えるビデオデコーダ。
〔参考態様８２〕
前記基礎階層フレームのデータが前記基礎階層フレームと時間的差をおく第２フレームとの差分による残差データを含み、前記残差データのエネルギーが特定値以下である場合、前記逆変換部は、前記向上階層のデータが前記基礎階層フレームのデータを参照しないものと予測情報を設定して前記向上階層のデータをデコーディングする参考態様８１に記載のビデオデコーダ。
〔参考態様８３〕
前記特定値は、エネルギーが０である場合である参考態様８１に記載のビデオデコーダ。
〔参考態様８４〕
前記基礎階層フレームのデータが前記基礎階層フレームと時間的差をおく第２フレームとの差分による残差データを含み、前記残差データのエネルギーが特定値以上である場合、前記逆変換部は、前記エンコーディングされた向上階層のデータのデコーディング時に前記基礎階層フレームの残差データを参照して予測するか否かを決定する決定情報と、前記決定情報と前記基礎階層フレームとの残差データを参照して予測するか否かについての予測情報の差に対する値を含む情報をデコーディングする参考態様８１に記載のビデオデコーダ。
〔参考態様８５〕
前記逆変換部は、前記向上階層のデータが前記基礎階層フレームのデータで予測した動きベクトルと前記向上階層のデータで空間的に隣接した領域で予測した動きベクトルとを求め、前記両動きベクトルの差が特定値以下である場合、前記向上階層のデータが前記基礎階層フレームのデータの動きベクトルを参照しないものと前記予測情報を設定して前記向上階層のデータをデコーディングする参考態様８１に記載のビデオデコーダ。
〔参考態様８６〕
前記特定値は、エネルギーが０である場合である参考態様８１に記載のビデオデコーダ。
〔参考態様８７〕
前記逆変換部は、前記向上階層のデータが前記基礎階層フレームのデータで予測した動きベクトルと前記向上階層のデータで空間的に隣接した領域で予測した動きベクトルとを求め、前記両動きベクトルの差が特定値以上である場合、前記エンコーディングされた向上階層のデータのデコーディング時に前記基礎階層フレームの動きベクトルを参照して予測するか否かを決定する決定情報と、前決定情報と前記基礎階層フレームの動きベクトルを参照して予測するか否かについての予測情報との差に対する値を含む情報をデコーディングする参考態様８１に記載のビデオデコーダ。
〔参考態様８８〕
前記向上階層のデータは、前記向上階層のデータが前記基礎階層フレームのデータを参照するか否かを予測するための決定情報及び前記基礎階層フレームのデータを参照するか否かについての予測情報と前記決定情報との差を含む参考態様８１に記載のビデオデコーダ。
〔参考態様８９〕
前記逆変換部は、エントロピーのデコーディング方式でデコーディングする参考態様８１に記載のビデオデコーダ。
〔参考態様９０〕
前記基礎階層フレームのデータと向上階層のデータは、マクロブロック、スライス、またはフレームのうち、いずれか１つである参考態様８１に記載のビデオデコーダ。
【図面の簡単な説明】
【０１３２】
【図１】多階層構造を用いたスケーラブルビデオコーデックを示す図である。
【図２】前記３種の予測方法を説明する概略図である。
【図３】ビデオコーディングでの残差予測の例を示す例示図である。
【図４】本発明の一実施形態による残差予測フラッグのエンコーディング効率を高めるフローチャートである。
【図５】本発明の一実施形態による図４でエンコーディングされたデータをデコーディングするフローチャートである。
【図６】ビデオコーディングでの動き予測（Ｒｅｓｉｄｕａｌ  ｐｒｅｄｉｃｔｉｏｎ）の例を示す例示図である。
【図７】本発明の一実施形態による動き予測フラッグのエンコーディング効率を高めるフローチャートである。
【図８】本発明の一実施形態による図７でエンコーディングされたデータをデコーディングするフローチャートである。
【図９】本発明の一実施形態による反転残差予測データをエンコーディングする過程を説明するフローチャートである。
【図１０】図９で説明した過程を通じてエンコーディングされたデータをデコーディングする過程を示すフローチャートである。
【図１１】本発明の一実施形態によるコンテキストを変更して残差予測フラッグをコーディングする過程を示すフローチャートである。
【図１２】図１１で説明した過程を通じてエンコーディングされたデータをデコーディングする過程を示すフローチャートである。
【図１３】本発明の一実施形態による基礎階層の残差データによってコーディングを異ならせる実施形態を示すフローチャートである。
【図１４】本発明の一実施形態によるＣＡＢＡＣコーディングを行う場合、コンテキストモデルを変えてコーディングする過程を示すフローチャートである。
【図１５】図１４の過程を通じてエンコーディングされたビデオデータをデコーダがデコーディングする過程を示すフローチャートである。
【図１６】本発明の一実施形態によるビデオエンコーダの構造を示す例示図である。
【図１７】本発明の一実施形態によるビデオデコーダの構造を示す例示図である。
【符号の説明】
【０１３３】
３００      基礎階層エンコーダ
４００      向上階層エンコーダ
４２０      向上階層エンコーダの変換部
４３５      向上階層エンコーダの符号化設定情報部
５００      ビデオエンコーダ
５５０      ビデオデコーダ
６００      基礎階層デコーダ
７０５      パージング部
７１０      エントロピー復号化部
７３０      向上階層デコーダの逆変換部