(57)【要約】  一般に、本開示は、断片参照ピクチャを使用してビデオフレームのシーケンスを符号化し、復号する技法を説明する。本開示は、完全な参照ピクチャではなく断片化された参照に基づく変更された時間圧縮のビデオ符号化技法およびビデオ復号技法を提示する。ビデオフレームの通常のシーケンスでは、各フレームの部分（すなわち、タイル）だけが、動く物体を含む。さらに、各フレーム内で、動く物体は、ビデオフレームのシーケンス内の各フレームの間で共通する特定の区域に閉じこめられる傾向がある。本明細書で説明するように、動きのそのような共通の区域が、識別される。次に、ピクチャが、ビデオフレームの識別された区域から抽出される。これらのピクチャは、フレームの部分だけを表す可能性があるので、本開示は、これらのピクチャを「断片」と称する。次に、動き補償プロセス中に予測フレームを生成するための参照ピクチャとして使用されるのは、フレーム全体ではなくこれらの断片である。
2011526460.tif 000002
【特許請求の範囲】
【請求項１】
ビデオフレームのシーケンス内のビデオフレームのタイルの組に関連するビデオデータを備える参照断片、ここでタイルの前記組内の各タイルはそれぞれのビデオフレームのパーティションの部分集合を表す、を格納することと、
前記参照断片のうちの１つまたは複数に基づいて現行ビデオフレームの現行タイルについて動き補償を実行することと
を備える方法。
【請求項２】
前記現行タイルは、タイルの前記組内の前記タイルと同一位置に置かれ、
前記方法は、タイルの前記組を自動的に識別することをさらに備え、
タイルの前記組を自動的に識別することは、
前記ビデオフレームのそれぞれ内のアクティブパーティションの組を識別することと、
前記ビデオフレームのうちの各所与の１つについて、前記ビデオフレームのうちの前記所与の１つのタイルであって、前記ビデオフレームのうちの前記所与の１つのアクティブパーティションの前記識別された組を含む、タイルと、前記ビデオフレームのうちの他の１つのアクティブパーティションの前記識別された組内のアクティブパーティションと同一位置に置かれる前記ビデオフレームの前記所与の１つのパーティションと、を識別することと
を備える
請求項１に記載の方法。
【請求項３】
動き補償の実行は、前記現行ビデオフレームの前記現行タイルに関連する予測断片を生成することを備え、
前記方法は、
前記現行ビデオフレームから前記現行タイルに関連する断片を抽出することと、
前記現行ビデオフレームの前記現行タイルに関連する残差断片を生成するのに、前記抽出された断片および前記予測断片を使用することと、
係数の組を生成するために前記残差断片に対して変換を実行することと、
係数の前記組を量子化し、それによって、量子化された係数の組を生成することと、
量子化された係数の前記組をエントロピ符号化することと、
量子化された係数の前記エントロピ符号化された組をメディアオブジェクトの一部として出力することと、
量子化された係数の前記組を逆量子化し、それによって、係数の逆量子化された組を生成することと、
復号された残差断片を生成するために、係数の前記逆量子化された組に対して前記変換の逆を実行することと、
前記予測断片および前記復号された残差断片を使用して、再構成された断片を生成することと、
参照断片としての使用のために前記再構成された断片を格納することと
をさらに備える
請求項１に記載の方法。
【請求項４】
動き補償を実行することは、前記現行ビデオフレームの前記現行タイルに関連する予測断片を生成することを備え、
前記方法は、
前記現行ビデオフレームの前記現行タイルに関連するデータの組を含むメディアオブジェクトを受け取ることと、
データの前記組に基づいて残差断片を生成することと、
前記現行ビデオフレームの前記現行タイルに関連する再構成された断片を生成するのに前記予測断片および前記残差断片を使用することと、
前記現行ビデオフレームを再構成するのに前記再構成された断片を使用することと
をさらに備える
請求項１に記載の方法。
【請求項５】
前記現行ビデオフレームを再構成するのに前記再構成された断片を使用することは、前記再構成された断片が、前記現行ビデオフレームの前記現行タイルと同一位置に置かれた以前に復号された完全なビデオフレームのタイル内に指定されるように、前記以前に復号された完全なビデオフレームを変更することを備える、請求項４に記載の方法。
【請求項６】
前記参照断片は、インタレース式であり、
前記現行タイルについて動き補償を実行することは、前記参照断片のうちの１つまたは複数に基づいて前記現行タイルについてデインタレーシング動き補償を実行することを備える
請求項１に記載の方法。
【請求項７】
ビデオフレームの前記シーケンスのフレームレートを増やす動作の一部としてビデオフレームの前記シーケンス内の２つのビデオフレームの間に前記現行ビデオフレームを追加することをさらに備える、請求項１に記載の方法。
【請求項８】
ビデオフレームのシーケンス内のビデオフレームのタイルの組に関連するビデオデータを備える参照断片、ここでタイルの前記組内の各タイルはそれぞれのビデオフレームのパーティションの部分集合を表す、を格納する参照バッファと、
前記参照断片のうちの１つまたは複数に基づいて現行ビデオフレームの現行タイルについて動き補償を実行する動き補償ユニットと
を備えるデバイス。
【請求項９】
前記現行タイルは、タイルの前記組内の前記タイルと同一位置に置かれ、
前記デバイスは、タイルの前記組を自動的に識別するタイル識別モジュールをさらに備え、
前記タイル識別モジュールは、
前記ビデオフレームのそれぞれ内のアクティブパーティションの組を識別するパーティションアクティビティモジュールと、
前記ビデオフレームのうちの各所与の１つについて、前記ビデオフレームのうちの前記所与の１つのタイルであって、前記ビデオフレームのうちの前記所与の１つのアクティブパーティションの前記識別された組を含む、タイルと、前記ビデオフレームのうちの他の１つのアクティブパーティションの前記識別された組内のアクティブパーティションと同一位置に置かれる前記ビデオフレームの前記所与の１つのパーティションとを識別するタイル構成モジュールと
を備える
請求項８に記載のデバイス。
【請求項１０】
前記動き補償ユニットが前記現行タイルについて動き補償を実行する時に、前記動き補償ユニットは、前記現行ビデオフレームの前記現行タイルに関連する予測断片を生成し、
前記デバイスは、
前記現行ビデオフレームから前記現行タイルに関連する断片を抽出する断片抽出モジュールと、
前記現行ビデオフレームの前記現行タイルに関連する残差断片を生成するのに、前記抽出された断片および前記予測断片を使用するモジュールと、
係数の組を生成するために前記残差断片に対して変換を実行するブロック変換ユニットと、
係数の前記組を量子化し、それによって、量子化された係数の組を生成する量子化モジュールと、
量子化された係数の前記組をエントロピ符号化するエントロピ符号化ユニットと、
量子化された係数の前記エントロピ符号化された組をメディアオブジェクトの一部として出力する出力モジュールと、
量子化された係数の前記組を逆量子化し、それによって、係数の逆量子化された組を生成する逆量子化モジュールと、
復号された残差断片を生成するために、係数の前記逆量子化された組に対して前記変換の逆を実行する逆変換ユニットと、
前記予測断片および前記復号された残差断片を使用して、再構成された断片を生成するモジュールと
をさらに備え、
前記参照バッファは、参照断片としての使用のために前記再構成された断片を格納する
請求項８に記載のデバイス。
【請求項１１】
前記動き補償ユニットが前記現行タイルについて動き補償を実行する時に、前記動き補償ユニットは、前記現行ビデオフレームの前記現行タイルに関連する予測断片を生成し、
前記デバイスは、前記現行ビデオフレームの前記現行タイルに関連するデータの組を含むメディアオブジェクトを受け取り、
前記デバイスは、
データの前記組に基づいて残差断片を生成する復号器と、
前記現行ビデオフレームの前記現行タイルに関連する再構成された断片を生成するのに前記予測断片および前記残差断片を使用するモジュールと、
前記現行ビデオフレームを再構成するのに前記再構成された断片を使用するフレーム再組立モジュールと
をさらに備える
請求項８に記載のデバイス。
【請求項１２】
前記フレーム再組立モジュールは、前記再構成された断片が前記現行ビデオフレームの前記現行タイルと同一位置に置かれた以前に復号された完全なビデオフレームのタイル内に指定されるように、前記以前に復号された完全なビデオフレームを変更する、請求項１１に記載のデバイス。
【請求項１３】
前記参照断片は、インタレース式であり、
前記動き補償ユニットは、前記参照断片のうちの１つまたは複数に基づいて前記現行タイルについてデインタレーシング動き補償を実行することによって、前記現行タイルについて前記動き補償を実行する
請求項８に記載のデバイス。
【請求項１４】
ビデオフレームの前記シーケンスのフレームレートを増やす動作の一部としてビデオフレームの前記シーケンス内の２つのビデオフレームの間に前記現行ビデオフレームを追加するポストプロセッサをさらに備える、請求項８に記載のデバイス。
【請求項１５】
ビデオフレームのシーケンス内のビデオフレームのタイルの組に関連するビデオデータを備える参照断片、ここでタイルの前記組内の各タイルはそれぞれのビデオフレームのパーティションの部分集合を表す、を格納するための手段と、
前記参照断片のうちの１つまたは複数に基づいて現行ビデオフレームの現行タイルについて動き補償を実行するための手段と
を備えるデバイス。
【請求項１６】
前記デバイスは、タイルの前記組を自動的に識別するための手段をさらに備え、
タイルの前記組を自動的に識別するための前記手段は、
前記ビデオフレームのそれぞれ内のアクティブパーティションの組を識別するための手段と、
前記ビデオフレームのうちの各所与の１つについて、前記ビデオフレームのうちの前記所与の１つのタイルであって、前記ビデオフレームのうちの前記所与の１つのアクティブパーティションの前記識別された組を含む、タイルと、前記ビデオフレームのうちの他の１つのアクティブパーティションの前記識別された組内のアクティブパーティションと同一位置に置かれる前記ビデオフレームの前記所与の１つのパーティションとを識別するための手段と
を備え、
前記現行タイルは、タイルの前記組内の前記タイルと同一位置に置かれる
請求項１５に記載のデバイス。
【請求項１７】
動き補償を実行するための前記手段が、前記現行タイルに関する動き補償を実行する時に、動き補償を実行するための前記手段は、前記現行ビデオフレームの前記現行タイルに関連する予測断片を生成し、
前記デバイスは、
前記現行ビデオフレームから前記現行タイルに関連する断片を抽出するための手段と、
前記現行ビデオフレームの前記現行タイルに関連する残差断片を生成するのに、前記抽出された断片および前記予測断片を使用するための手段と、
係数の組を生成するために前記残差断片に対して変換を実行するための手段と、
係数の前記組を量子化し、それによって、量子化された係数の組を生成するための手段と、
量子化された係数の前記組をエントロピ符号化するための手段と、
量子化された係数の前記エントロピ符号化された組をメディアオブジェクトの一部として出力するための手段と、
量子化された係数の前記組を逆量子化し、それによって、係数の逆量子化された組を生成するための手段と、
復号された残差断片を生成するために、係数の前記逆量子化された組に対して前記変換の逆を実行するための手段と、
前記予測断片および前記復号された残差断片を使用して、再構成された断片を生成するための手段と、
をさらに備え、
断片の前記組を格納するための前記手段は、参照断片としての使用のために前記再構成された断片を格納する
請求項１５に記載のデバイス。
【請求項１８】
動き補償を実行するための前記手段が、前記現行タイルに関する動き補償を実行する時に、動き補償を実行するための前記手段は、前記現行ビデオフレームの前記現行タイルに関連する予測断片を生成し、
前記デバイスは、前記現行ビデオフレームの前記現行タイルに関連するデータの組を含むメディアオブジェクトを受け取り、
前記デバイスは、
データの前記組に基づいて残差断片を生成するための手段と、
前記現行ビデオフレームの前記現行タイルに関連する再構成された断片を生成するのに、前記現行ビデオフレームの前記現行タイルに関連する前記予測断片および前記残差断片を使用するための手段と、
前記現行ビデオフレームを再構成するのに前記再構成された断片を使用するための手段と
をさらに備える
請求項１５に記載のデバイス。
【請求項１９】
前記現行ビデオフレームを再構成するのに前記再構成された断片を使用するための前記手段は、前記再構成された断片が前記現行ビデオフレームの前記現行タイルと同一位置に置かれた以前に復号された完全なビデオフレームのタイル内で指定されるように、前記以前に復号された完全なビデオフレームを変更する、請求項１８に記載のデバイス。
【請求項２０】
前記参照断片は、インタレース式であり、
動き補償を実行するための前記手段は、前記参照断片のうちの１つまたは複数に基づいて前記現行タイルについてデインタレーシング動き補償を実行することによって、前記現行タイルについて前記動き補償を実行する
請求項１５に記載のデバイス。
【請求項２１】
ビデオフレームの前記シーケンスのフレームレートを増やす動作の一部としてビデオフレームの前記シーケンス内の２つのビデオフレームの間に前記現行ビデオフレームを追加するための手段をさらに備える、請求項１５に記載のデバイス。
【請求項２２】
１つまたは複数のプロセッサによって実行される時に、１つまたは複数のプロセッサに、
ビデオフレームのシーケンス内のビデオフレームのタイルの組に関連するビデオデータを備える参照断片、ここでタイルの前記組内の各タイルは、それぞれのビデオフレームのパーティションの部分集合を表す、を格納することと、
前記参照断片のうちの１つまたは複数に基づいて現行ビデオフレームの現行タイルについて動き補償を実行することと
を行わせる実行可能命令を備えるコンピュータ可読媒体。
【請求項２３】
前記命令は、さらに、前記１つまたは複数のプロセッサに、タイルの前記組を自動的に識別させ、
前記命令は、少なくとも部分的に、前記１つまたは複数のプロセッサに、
前記ビデオフレームのそれぞれ内のアクティブパーティションの組を識別することと、
前記ビデオフレームのうちの各所与の１つについて、前記ビデオフレームのうちの前記所与の１つのタイルであって、前記ビデオフレームのうちの前記所与の１つのアクティブパーティションの前記識別された組を含む、タイルと、前記ビデオフレームのうちの他の１つのアクティブパーティションの前記識別された組内のアクティブパーティションと同一位置に置かれる前記ビデオフレームの前記所与の１つのパーティションとを識別することと
を行わせることによって、前記１つまたは複数のプロセッサにタイルの前記組を自動的に識別させ、
前記現行タイルは、タイルの前記組内の前記タイルと同一位置に置かれる
請求項２２に記載のコンピュータ可読媒体。
【請求項２４】
前記命令は、少なくとも部分的に、前記１つまたは複数のプロセッサに前記現行ビデオフレームの前記現行タイルに関連する予測断片を生成させることによって、前記１つまたは複数のプロセッサに動き補償を実行させ、
前記命令はさらに、前記１つまたは複数のプロセッサに
前記現行ビデオフレームから前記現行タイルに関連する断片を抽出することと、
残差断片を生成するのに、前記抽出された断片および前記予測断片を使用することと、
係数の組を生成するために前記残差断片に対して変換を実行することと、
係数の前記組を量子化し、それによって、量子化された係数の組を生成することと、
量子化された係数の前記組をエントロピ符号化することと、
量子化された係数の前記エントロピ符号化された組をメディアオブジェクトの一部として出力することと、
量子化された係数の前記組を逆量子化し、それによって、係数の逆量子化された組を生成することと、
復号された残差断片を生成するために、係数の前記逆量子化された組に対して前記変換の逆を実行することと、
前記予測断片および前記復号された残差断片を使用して、再構成された断片を生成することと、
参照断片としての使用のために前記再構成された断片を格納することと
を行わせる
請求項２２に記載のコンピュータ可読媒体。
【請求項２５】
前記命令は、少なくとも部分的に、前記１つまたは複数のプロセッサに前記現行ビデオフレームの前記現行タイルに関連する予測断片を生成させることによって、前記１つまたは複数のプロセッサに動き補償を実行させ、
前記命令はさらに、前記１つまたは複数のプロセッサに
前記現行ビデオフレームの前記現行タイルに関連するデータの組を含むメディアオブジェクトを受け取ることと、
データの前記組に基づいて残差断片を生成することと、
前記現行フレームに関連する再構成された断片を生成するのに、前記現行ビデオフレームの前記タイルに関連する前記予測断片および前記残差断片を使用することと、
前記現行ビデオフレームを再構成するのに前記再構成された断片を使用することと
を行わせる
請求項２２に記載のコンピュータ可読媒体。
【請求項２６】
前記命令は、少なくとも部分的に、前記１つまたは複数のプロセッサに前記再構成された断片が前記現行ビデオフレームの前記現行タイルと同一位置に置かれた以前に復号された完全なビデオフレームのタイル内で指定されるように、前記以前に復号された完全なビデオフレームを変更させることによって、前記１つまたは複数のプロセッサに、前記現行ビデオフレームを再構成するのに前記再構成された断片を使用させる、請求項２５に記載のコンピュータ可読媒体。
【請求項２７】
前記参照断片は、インタレース式であり、
前記現行タイルについて動き補償を実行することは、前記参照断片のうちの１つまたは複数に基づいて前記現行タイルについてデインタレーシング動き補償を実行することを備える
請求項２２に記載のコンピュータ可読媒体。
【請求項２８】
前記命令はさらに、前記１つまたは複数のプロセッサに、ビデオフレームの前記シーケンスのフレームレートを増やす動作の一部としてビデオフレームの前記シーケンス内の２つのビデオフレームの間に前記現行ビデオフレームを追加させる、請求項２２に記載のコンピュータ可読媒体。
【請求項２９】
ビデオフレームのシーケンス内のビデオフレームのタイルの組に関連するビデオデータを備える参照断片、タイルの前記組内の各タイルは、それぞれのビデオフレームのパーティションの部分集合を表す、を格納する回路網と、
前記参照断片のうちの１つまたは複数に基づいて現行ビデオフレームの現行タイルについて動き補償を実行する回路網と
を備える集積回路。
【請求項３０】
前記集積回路は、タイルの前記組を自動的に識別する回路網をさらに備え、
タイルの前記組を自動的に識別する前記回路網は、
前記ビデオフレームのそれぞれ内のアクティブパーティションの組を識別する回路網と、
前記ビデオフレームのうちの各所与の１つについて、前記ビデオフレームのうちの前記所与の１つのタイルであって、前記ビデオフレームのうちの前記所与の１つのアクティブパーティションの前記識別された組を含む、タイルと、前記ビデオフレームのうちの他の１つのアクティブパーティションの前記識別された組内のアクティブパーティションと同一位置に置かれる前記ビデオフレームの前記所与の１つのパーティションとを識別する回路網と
を備え、
前記現行タイルは、タイルの前記組内の前記タイルと同一位置に置かれる
請求項２９に記載の集積回路。
【請求項３１】
動き補償を実行する前記回路網が前記現行タイルについて動き補償を実行する時に、動き補償を実行する前記回路網は、前記現行ビデオフレームの前記現行タイルに関連する予測断片を生成し、
前記集積回路は、
前記現行ビデオフレームから前記現行タイルに関連する断片を抽出する回路網と、
前記現行ビデオフレームの前記現行タイルに関連する残差断片を生成するのに、前記抽出された断片および前記予測断片を使用する回路網と、
係数の組を生成するために前記残差断片に対して変換を実行する回路網と、
係数の前記組を量子化し、それによって、量子化された係数の組を生成する回路網と、
量子化された係数の前記組をエントロピ符号化する回路網と、
量子化された係数の前記エントロピ符号化された組をメディアオブジェクトの一部として出力する回路網と、
量子化された係数の前記組を逆量子化し、それによって、係数の逆量子化された組を生成する回路網と、
復号された残差断片を生成するために、係数の前記逆量子化された組に対して前記変換の逆を実行する回路網と、
前記予測断片および前記復号された残差断片を使用して、再構成された断片を生成する回路網と
をさらに備え、
断片の前記組を格納する前記回路網は、参照断片としての使用のために前記再構成された断片を格納する
請求項２９に記載の集積回路。
【請求項３２】
動き補償を実行する前記回路網が前記現行タイルについて動き補償を実行する時に、動き補償を実行する前記回路網は、前記現行ビデオフレームの前記現行タイルに関連する予測断片を生成し、
前記集積回路は、前記現行ビデオフレームの前記現行タイルに関連するデータの組を含むメディアオブジェクトを受け取り、
前記集積回路は、
データの前記組に基づいて残差断片を生成する回路網と、
前記現行ビデオフレームの前記現行タイルに関連する再構成された断片を生成するのに、前記現行ビデオフレームの前記現行タイルに関連する前記予測断片および前記残差断片を使用する回路網と、
前記現行ビデオフレームを再構成するのに前記再構成された断片を使用する回路網と
をさらに備える
請求項２９に記載の集積回路。
【請求項３３】
前記現行ビデオフレームを再構成するのに前記再構成された断片を使用する前記回路網は、前記再構成された断片が前記現行ビデオフレームの前記現行タイルと同一位置に置かれた以前に復号された完全なビデオフレームのタイル内で指定されるように、前記以前に復号された完全なビデオフレームを変更する、請求項３２に記載の集積回路。
【請求項３４】
前記参照断片は、インタレース式であり、
動き補償を実行する前記回路網は、前記参照断片のうちの１つまたは複数に基づいて前記現行タイルについてデインタレーシング動き補償を実行することによって、前記現行タイルについて前記動き補償を実行する
請求項２９に記載の集積回路。
【請求項３５】
ビデオフレームの前記シーケンスのフレームレートを増やす動作の一部としてビデオフレームの前記シーケンス内の２つのビデオフレームの間に前記現行ビデオフレームを追加する回路網をさらに備える、請求項２９に記載の集積回路。
【請求項３６】
ビデオフレームのシーケンス内のビデオフレームのタイルの組に関連するビデオデータを備える参照断片、ここでタイルの前記組内の各タイルは、それぞれのビデオフレームのパーティションの部分集合を表す、を格納することと、
前記参照断片のうちの１つまたは複数に基づいて現行ビデオフレームの現行タイルについてビデオ処理技法を実行することと
を備える方法。
【請求項３７】
前記ビデオ処理技法を実行することは、
前記参照断片のうちの１つまたは複数に基づいて現行ビデオフレームの現行タイルについて動き補償を実行することと、
前記参照断片のうちの１つまたは複数に基づいて現行ビデオフレームの現行タイルについてスケーリングを実行することと、
前記参照断片のうちの１つまたは複数に基づいて現行ビデオフレームの現行タイルについてエッジ強調を実行することと
のうちの１つを備える、請求項３６に記載の方法。
【請求項３８】
ビデオフレームのシーケンス内のビデオフレームのタイルの組に関連するビデオデータを備える参照断片、ここでタイルの前記組内の各タイルはそれぞれのビデオフレームのパーティションの部分集合を表す、を格納する参照バッファと、
前記参照断片のうちの１つまたは複数に基づいて現行ビデオフレームの現行タイルについてビデオ処理技法を実行するユニットと
を備えるデバイス。
【請求項３９】
前記ビデオ処理技法を実行する前記ユニットは、
前記参照断片のうちの１つまたは複数に基づいて現行ビデオフレームの現行タイルについて動き補償を実行する動き補償ユニットと、
前記参照断片のうちの１つまたは複数に基づいて現行ビデオフレームの現行タイルについてスケーリングを実行するスケーリングユニットと、
前記参照断片のうちの１つまたは複数に基づいて現行ビデオフレームの現行タイルについてエッジ強調を実行するエッジ強調ユニットと
のうちの１つを備える、請求項３８に記載のデバイス。
【請求項４０】
ビデオフレームのシーケンス内のビデオフレームのタイルの組に関連するビデオデータを備える参照断片、ここでタイルの前記組内の各タイルはそれぞれのビデオフレームのパーティションの部分集合を表す、を格納するための手段と、
前記参照断片のうちの１つまたは複数に基づいて現行ビデオフレームの現行タイルについてビデオ処理技法を実行するための手段と
を備えるデバイス。
【請求項４１】
前記ビデオ処理技法を実行するための手段は、
前記参照断片のうちの１つまたは複数に基づいて現行ビデオフレームの現行タイルについて動き補償を実行するための手段と、
前記参照断片のうちの１つまたは複数に基づいて現行ビデオフレームの現行タイルについてスケーリングを実行するための手段と、
前記参照断片のうちの１つまたは複数に基づいて現行ビデオフレームの現行タイルについてエッジ強調を実行するための手段と
のうちの１つを備える、請求項４０に記載のデバイス。
【請求項４２】
１つまたは複数のプロセッサによって実行される時に、１つまたは複数のプロセッサに、
ビデオフレームのシーケンス内のビデオフレームのタイルの組に関連するビデオデータを備える参照断片、ここでタイルの前記組内の各タイルはそれぞれのビデオフレームのパーティションの部分集合を表す、を格納することと、
前記参照断片のうちの１つまたは複数に基づいて現行ビデオフレームの現行タイルについてビデオ処理技法を実行することと
を行わせる実行可能命令を備えるコンピュータ可読媒体。
【請求項４３】
前記命令は、
前記参照断片のうちの１つまたは複数に基づく現行ビデオフレームの現行タイルに関する動き補償と、
前記参照断片のうちの１つまたは複数に基づく現行ビデオフレームの現行タイルに関するスケーリングと、
前記参照断片のうちの１つまたは複数に基づく現行ビデオフレームの現行タイルに関するエッジ強調と
のうちの１つを実行することによって、前記１つまたは複数のプロセッサに前記ビデオ処理技法を実行させる、請求項４２に記載のコンピュータ可読媒体。
【請求項４４】
ビデオフレームのシーケンス内のビデオフレームのタイルの組に関連するビデオデータを備える参照断片、ここでタイルの前記組内の各タイルはそれぞれのビデオフレームのパーティションの部分集合を表す、を格納する回路網と、
前記参照断片のうちの１つまたは複数に基づいて現行ビデオフレームの現行タイルについてビデオ処理技法を実行する回路網と
を備える集積回路。
【請求項４５】
ビデオ処理技法を実行する前記回路網は、
前記参照断片のうちの１つまたは複数に基づいて現行ビデオフレームの現行タイルについて動き補償を実行する回路網と、
前記参照断片のうちの１つまたは複数に基づいて現行ビデオフレームの現行タイルについてスケーリングを実行する回路網と、
前記参照断片のうちの１つまたは複数に基づいて現行ビデオフレームの現行タイルについてエッジ強調を実行する回路網と
のうちの１つを備える、請求項４４に記載の集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、マルチメディア信号処理に関し、より具体的には、ビデオ符号化および復号に関する。
【背景技術】
【０００２】
ディジタルマルチメディア機能を、ディジタルテレビジョン、ディジタル直接放送システム、無線通信デバイス、無線放送システム、携帯情報端末（「ＰＤＡ」）、ラップトップコンピュータもしくはデスクトップコンピュータ、ディジタルカメラ、ディジタル記録デバイス、ビデオゲーミングデバイス、ビデオゲーム機、セル電話もしくは衛星無線電話、および類似物を含む広範囲のデバイスに組み込むことができる。ディジタルマルチメディアデバイスは、ビデオデータをより効率的に伝送し、受信するために、ＭＰＥＧ−２、ＭＰＥＧ−４、または国際電気通信連合Ｈ．２６４／ＭＰＥＧ−４、Ｐａｒｔ  １０、ＡＶＣ（Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ）標準規格によって定義される技法などのビデオコーディング技法を実施することができる。ビデオコーディング技法は、ビデオシーケンスに固有の冗長性を減らすか除去するために、空間予測および時間予測を介するビデオ圧縮を実行することができる。
【０００３】
時間予測を介するビデオ圧縮を実行するために、ビデオ符号器は、動き補償プロセスを使用することができる。動き補償プロセスでは、ビデオ符号器は、現行ビデオフレームをマクロブロックの組に分割する。次に、現行ビデオフレームのマクロブロックごとに、ビデオ符号器は、現行ビデオフレーム内のマクロブロックとほぼ同一のデータを含む１つまたは複数の参照フレーム内の１つまたは複数のマクロブロックを識別することを試みる。ビデオ符号器が、参照フレーム内のそのようなマクロブロックを成功して識別する場合に、ビデオ符号器は、参照フレーム内の識別されたマクロブロックと現行フレーム内のマクロブロックとの間の置き換え（displacement)を示す動きベクトルを生成することができる。ビデオ符号器が、参照フレーム内のそのようなマクロブロックを成功して識別しない場合に、ビデオ符号器は、置き換え無しを示す動きベクトルを生成することができる。次に、ビデオ符号器は、識別されたマクロブロックを参照フレーム内の位置から動きベクトルによって示される位置へ「移動する」ことによって、予測フレームを生成することができる。予測フレームを生成した後に、ビデオ符号器は、マクロブロックごとに、対応するブロックの間の残差を示すために、現行フレームから予測フレームを減算することによって残差フレーム（ｒｅｓｉｄｕａｌ  ｆｒａｍｅ）を生成することができる。次に、ビデオ符号器は、残差フレームを、それに関連する動きベクトルと一緒に符号化することができる。次に、ビデオ符号器は、復号器による使用のために、符号化された残差フレームおよび関連する動きベクトルを出力することができる。
【０００４】
動き補償プロセスを使用して符号化されたビデオフレームを復号するために、ビデオ復号器は、動きベクトルによって示された参照フレームを取り出すことができる。次に、ビデオ復号器は、動きベクトルによって示された参照フレームのマクロブロックを動きベクトルによって示された位置に「移動する」ことができる。参照フレームのマクロブロックの移動の結果として、ビデオ復号器は、予測フレームを生成する。次に、ビデオ復号器は、受け取られた残差フレームの復号バージョンに予測フレームを加算することによって、再構成されたビデオフレームを生成することができる。
【発明の概要】
【０００５】
一般に、本開示は、断片参照ピクチャ（ｆｒａｇｍｅｎｔａｒｙ  ｒｅｆｅｒｅｎｃｅ  ｐｉｃｔｕｒｅ）を使用してビデオフレームのシーケンスを符号化し、復号する技法を説明する。本開示は、完全な参照ピクチャではなく断片化された参照に基づく変更された時間圧縮のビデオ符号化技法およびビデオ復号技法を提示する。ビデオフレームの通常のシーケンスでは、各フレームの部分（すなわち、タイル）だけが、動く物体を含む。さらに、各フレーム内で、動く物体は、ビデオフレームのシーケンス内の各フレームの間で共通する特定の区域に閉じこめられる傾向がある。本明細書で説明するように、動きのそのような共通の区域が、識別される。次に、ピクチャが、ビデオフレームの識別された区域から抽出される。これらのピクチャは、フレームの部分だけを表す可能性があるので、本開示は、これらのピクチャを「断片」と称する。次に、動き補償プロセス中に予測フレームを生成するための参照ピクチャとして使用されるのは、フレーム全体ではなくこれらの断片である。
【０００６】
一例では、方法は、ビデオフレームのシーケンス内のビデオフレームのタイルの組に関連するビデオデータを備える参照断片を格納することを備える。タイルの組内の各タイルは、それぞれのビデオフレームのパーティションの部分集合を表す。この方法は、参照断片のうちの１つまたは複数に基づいて現行ビデオフレームの現行タイルについて動き補償を実行することをも備える。
【０００７】
別の例では、デバイスは、ビデオフレームのシーケンス内のビデオフレームのタイルの組に関連するビデオデータを備える参照断片を格納する参照バッファを備える。タイルの組内の各タイルは、それぞれのビデオフレームのパーティションの部分集合を表す。このデバイスは、参照断片のうちの１つまたは複数に基づいて現行ビデオフレームの現行タイルについて動き補償を実行する動き補償ユニットをも備える。
【０００８】
別の例では、デバイスは、ビデオフレームのシーケンス内のビデオフレームのタイルの組に関連するビデオデータを備える参照断片を格納するための手段を備える。タイルの組内の各タイルは、それぞれのビデオフレームのパーティションの部分集合を表す。このデバイスは、参照断片のうちの１つまたは複数に基づいて現行ビデオフレームの現行タイルについて動き補償を実行するための手段をも備える。
【０００９】
別の例では、集積回路は、ビデオフレームのシーケンス内のビデオフレームのタイルの組に関連するビデオデータを備える参照断片を格納する回路網を備える。タイルの組内の各タイルは、それぞれのビデオフレームのパーティションの部分集合を表す。さらに、この集積回路は、参照断片のうちの１つまたは複数に基づいて現行ビデオフレームの現行タイルについて動き補償を実行する回路網を備える。
【００１０】
本開示で説明される技法を、ハードウェア、ソフトウェア、ファームウェア、またはその任意の組合せで実施することができる。ソフトウェアで実施される場合に、ソフトウェアを、マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、またはディジタル信号プロセッサ（ＤＳＰ）など、１つまたは複数のプロセッサを使用して実行することができる。本技法を実行するソフトウェアを、当初にコンピュータ可読媒体に格納し、プロセッサを使用してロードし、実行することができる。
【００１１】
したがって、本開示は、実行可能命令を備えるコンピュータ可読媒体をも企図する。１つまたは複数のプロセッサによって実行される時に、この命令は、１つまたは複数のプロセッサに、ビデオフレームのシーケンス内のビデオフレームのタイルの組に関連するビデオデータを備える参照断片を格納させる。タイルの組内の各タイルは、それぞれのビデオフレームのパーティションの部分集合を表す。また、この命令は、１つまたは複数のプロセッサに、参照断片のうちの１つまたは複数に基づいて現行ビデオフレームの現行タイルについて動き補償を実行させる。
【００１２】
いくつかの場合に、コンピュータ可読媒体は、販売され得、かつ／またはビデオコーディングデバイス内で使用され得るコンピュータプログラム製品の少なくとも一部を形成することができる。コンピュータプログラム製品は、コンピュータ可読媒体を含むことができ、いくつかの場合に、パッケージング材料をも含むことができる。
【００１３】
断片参照ピクチャを使用するビデオフレームのシーケンスの符号化および復号の技法を、主に、動き補償コーディング技法の背景で説明する。しかし、断片参照ピクチャの使用は、本明細書で説明するように、スケーリング、エッジ強調、または類似物など、他のコーディング背景でも使用され得る。
【００１４】
１つまたは複数の例の詳細を、添付図面および下の説明で示す。他の特徴、目的、および利益は、この説明および図面、ならびに特許請求の範囲から明白になる。
【図面の簡単な説明】
【００１５】
【図１】例示的なビデオ符号化復号システムを示すブロック図。
【図２】図１に提示された符号器の例示的な詳細を示すブロック図。
【図３】図２に提示されたタイル識別モジュールの例示的な詳細を示すブロック図。
【図４】ビデオフレームの例示的なシーケンスと、アクティブパーティションを黒いブロックとして示すパーティションマップの対応する組とを示す図。
【図５Ａ】例示的なコンポジットパーティションアクティビティマップ（ｃｏｍｐｏｓｉｔｅ  ｐａｒｔｉｔｉｏｎ  ａｃｔｉｖｉｔｙ  ｍａｐ）を示す図。
【図５Ｂ】例示的なコンポジットパーティションアクティビティマップを示す図。
【図５Ｃ】例示的なコンポジットパーティションアクティビティマップを示す図。
【図５Ｄ】パーティションアクティビティマップに対するモード平滑化（ｍｏｄｅ  ｓｍｏｏｔｈｉｎｇ）の効果を示す図。
【図６Ａ】図２に提示された符号器の例示的な動作を示す図。
【図６Ｂ】図２に提示された符号器の例示的な動作を示す図。
【図７】図１に提示された復号器の例示的な詳細を示すブロック図。
【図８Ａ】図７に提示された復号器内のモジュールの例示的な動作を示す流れ図。
【図８Ｂ】図７に提示された復号器内のモジュールの例示的な動作を示す流れ図。
【図９】図１に提示されたプリプロセッサの例示的な詳細を示すブロック図。
【図１０】図９に提示されたプリプロセッサの例示的な動作を示す流れ図。
【図１１】図１に提示された復号器の例示的な詳細の代替の組を示すブロック図。
【図１２】図１１に提示された復号器の代替実施態様の例示的な動作を示す流れ図。
【図１３】図１に提示されたディスプレイバッファに断片を格納するためのバッファ充てんモジュールの例示的な動作を示す流れ図。
【発明を実施するための形態】
【００１６】
図１は、例示的なビデオ符号化復号システム２を示すブロック図である。図１の例に示されているように、システム２は、符号化デバイス４および復号デバイス６を含む。一般的な用語で、符号化デバイス４は、ビデオデータを符号化することができ、復号デバイス６は、符号化デバイス４または他の符号化デバイスによって符号化されたビデオデータを復号することができる。符号化デバイス４および復号デバイス６は、さまざまなデバイスのいずれとすることもできる。たとえば、符号化デバイス４および復号デバイス６を、パーソナルコンピュータ、ネットワークサーバ、携帯情報端末（「ＰＤＡ」）、ビデオゲームデバイス、パーソナルメディアプレイヤ、携帯電話、ディジタルカメラ、ディジタルカムコーダ、または他のタイプのデバイスとすることができる。その代わりに、単一のデバイスが、符号化デバイス４の機能性および／または復号デバイス６の機能性を組み込むことができる。
【００１７】
図１に示されているように、符号化デバイス４は、メディアソース８を含む。メディアソース８は、非符号化ビデオデータ（すなわち、本明細書で説明される符号化プロセスを使用して符号化されてはいないビデオデータ）を出力する。メディアソース８は、非符号化ビデオデータを出力するさまざまなソフトウェアユニットおよび／またはハードウェアユニットのいずれとすることもできる。たとえば、メディアソース８を、ディジタルビデオカメラ、ディジタルスチールカメラ、非符号化ビデオデータを格納するメモリモジュール、ケーブルテレビジョンプロバイダ、地上波テレビジョンプロバイダ、もしくは衛星テレビジョンプロバイダから非符号化ビデオデータを受信するインターフェース、または非符号化ビデオデータを出力する他のタイプのソフトウェアユニットおよび／もしくはハードウェアユニットとすることができる。さらに、メディアソース８を、１つまたは複数の有線接続または無線接続を介して符号化デバイス４に通信で結合することができる。メディアソース８は、非符号化ビデオデータをプリプロセッサ１０に供給することができる。
【００１８】
さらに、図１の例では、符号化デバイス４は、トランスコーダ１２を含むことができる。一般に、トランスコーダ１２は、ビットストリームソース１４によって出力されたビデオデータを受け取る。ビットストリームソース１４によって出力されたビデオデータは、第１フォーマットで符号化されたものとすることができる。たとえば、ビットストリームソース１４は、シリアルディジタルインターフェースフォーマットでフォーマットされたビデオデータを出力することができる。トランスコーダ１２が、ビットストリームソース１４によって出力されたビデオデータを受け取る時に、トランスコーダ１２内の復号器１３は、トランスコーダ１２から受け取られたビデオデータを復号することができ、これによって、ビデオフレームの非圧縮シーケンスを生成する。復号器１３がビデオデータを復号した後に、復号器１３は、復号されたビデオデータを、復号されたビデオデータに対して１つまたは複数のビデオ前処理動作を実行するプリプロセッサ１０に供給することができる。次に、トランスコーダ１２内の符号器１６は、前処理されたビデオデータを第１フォーマットとは異なる第２フォーマットで符号化することができる。本開示で使用されるときに、用語「フォーマット」は、データ符号化フォーマットまたはデータプレゼンテーションフォーマットを指す場合がある。この形で、トランスコーダ１２は、ビットストリームソース１４によって生成されたビデオを第１フォーマットから第２フォーマットにトランスコーディングする。たとえば、トランスコーダ１２は、ビットストリームソース１４によって生成されたビデオをＨ．２６３標準規格からＨ．２６４標準規格にトランスコーディングすることができる。別の例では、トランスコーダ１２は、ビットストリームソース１４によって生成されたビデオを第１解像度（たとえば、Ｈ．２６４  ＳＤ）から第２解像度（Ｈ．２６４  ＱＶＧＡ）にトランスコーディングすることができる。
【００１９】
プリプロセッサ１０は、非符号化ビデオデータに対してさまざまなビデオ前処理動作を実行することができる。たとえば、プリプロセッサ１０は、インタレーシング動作、デインタレーシング動作、コントラスト調整動作、ノイズリダクション動作、および／または他のタイプのビデオ前処理動作を非符号化ビデオデータに対して実行することができる。
【００２０】
プリプロセッサ１０が、非符号化ビデオデータに対して１つまたは複数のビデオ前処理動作を実行した後に、プリプロセッサ１０は、前処理されたビデオデータを符号器１６に供給することができる。符号器１６は、前処理されたビデオデータを符号化し、これによって、符号化されたビデオデータを作成する。符号器１６が、前処理されたビデオデータを符号化した後に、符号化デバイス４は、符号化されたビデオデータに対してさまざまなことを行うことができる。１つの例では、符号化デバイス４は、符号化されたビデオデータをメディアファイルまたは他のタイプのメディアオブジェクトとして、ランダムアクセスメモリ、光ディスク、磁気ディスク、フラッシュメモリ、電気的消去可能プログラム可能読取り専用メモリ、または他のタイプのメモリモジュールなどの記憶媒体（図示せず）に格納することができる。別の例では、符号化デバイス４は、符号化されたビデオデータを複数の異なるタイプのメディアオブジェクトのうちの１つとして出力することができる。たとえば、符号化デバイス４は、符号化されたビデオデータをオーディオ／ビデオデータのライブストリームとして出力することができる。別の例では、符号化デバイス４は、符号化されたビデオデータをプログレッシブ再生（ｐｒｏｇｒｅｓｓｉｖｅ  ｐｌａｙｂａｃｋ）が可能であってもなくてもよいメディアファイルとして出力することができる。符号化デバイス４が、符号化されたビデオデータを出力する時に、符号化デバイス４は、コンピュータネットワーク、無線放送送信機、同軸ケーブル、光ファイバケーブル、または別のタイプの通信機構を使用して、符号化されたビデオデータを伝送することができる。
【００２１】
復号デバイス６内の復号器１８は、符号化デバイス４によって符号化されたビデオデータを復号することができる。一般に、復号器１８は、符号器１６がビデオデータに適用した符号化プロセスを逆処理する。復号器１８がビデオデータを復号した後に、復号デバイス６内のポストプロセッサ２０は、復号されたビデオデータに対して１つまたは複数の後処理動作を実行する。たとえば、ポストプロセッサ２０は、ガンマ補正動作、鮮鋭化動作、および他の後処理動作を含む後処理動作を実行することができる。ポストプロセッサ２０が、ビデオデータに対して後処理動作を実行した後に、復号デバイス６内のバッファ充てんモジュール２２は、１つまたは複数のディスプレイバッファ２４の組にビデオデータを格納することができる。たとえば、バッファ充てんモジュール２２は、後処理されたビデオデータの個々のフレームをディスプレイバッファ２４の個々の１つに格納することができる。ディスプレイバッファ２４を、１つまたは複数のコンピュータ可読媒体（たとえば、ランダムアクセスメモリ、フラッシュメモリユニット、または他のタイプのコンピュータ可読媒体）として実施することができる。
【００２２】
復号デバイス６内のディスプレイユニット２６は、ディスプレイバッファ２４内のビデオデータを表示することができる。ディスプレイユニット２６を、さまざまなタイプのディスプレイユニットのうちの１つまたは複数とすることができる。たとえば、ディスプレイユニット２６を、陰極線管（「ＣＲＴ」）モニタもしくはテレビジョンセット、液晶ディスプレイ（「ＬＣＤ」）、有機発光ダイオード（「ＯＬＥＤ」）ディスプレイ、従来の発光ダイオードディスプレイ、プラズマディスプレイ、または別のタイプのディスプレイとすることができる。図１の例では復号デバイス６内に含まれるものとして図示されているが、ディスプレイユニット２６を、復号デバイス６の外部とすることができる。たとえば、ディスプレイユニット２６を、１つもしくは複数のケーブルおよび／または１つもしくは複数の無線リンクを介して復号デバイス６に接続することができる。
【００２３】
本明細書で説明するように、プリプロセッサ１０、符号器１６、復号器１８、およびポストプロセッサ２０は、独立にまたは関連して、ビデオフレームの組内のビデオフレームの間の時間冗長性を減らすか復元するのにビデオタイル識別技法を使用することができる。一般に、これらのビデオタイル識別技法は、ビデオフレームのシーケンス内のビデオフレームのタイルの１つまたは複数の組の識別を伴う。タイルは、ビデオフレームの一区域である。たとえば、タイルは、幅２０画素、高さ３０画素であるビデオフレームの長方形区域とすることができ、ビデオフレームの左エッジから５列、ビデオフレームの上エッジから７０行である左上画素を有することができる（すなわち、左上画素は、座標（５，７０）を有する）。タイルの組のうちの少なくとも１つに含まれるタイルは、ビデオフレーム全体を含んでも含まなくてもよいビデオフレームの領域である。
【００２４】
タイルを識別した後に、断片を、ビデオフレームのそれぞれから抽出することができる。本開示で使用されるときに、「断片」は、ビデオフレームのタイル内に含まれるピクチャである。たとえば、ビデオフレームのタイルが、幅２０画素、高さ３０画素であるビデオフレームの長方形区域であるものとする。この領域の左上画素は、座標（５，７０）を有する。この例では、このタイルから抽出される断片は、幅２０画素、高さ３０画素の独立ピクチャである。さらに、この例では、断片の左上画素（すなわち、座標（０，０）を有する断片の画素）は、座標（５，７０）を有するビデオフレームの画素と同一の画素値を有する。同様に、座標（１，０）を有する断片の画素は、座標（６，７０）を有するビデオフレームの画素と同一の画素値を有し、以下同様である。
【００２５】
断片が、ビデオフレームから抽出された時に、ビデオフレームに関する動作を、断片だけに関して実行することができる。たとえば、ビデオフレームに関する前処理動作を実行する時に、プリプロセッサ１０は、断片に対してのみ、その前処理動作を実行することができる。別の例では、符号器１６および復号器１８は、動き補償動作中に参照として断片を使用することができる。動作が実行された後に、処理された断片を以前に復号された完全なビデオフレームに合成することによって、フレームを再組立する（すなわち、レンダリングする）ことができる。これが可能であるのは、識別されたタイルのうちの１つに含まれないフレームのすべての部分を、識別されたタイルのうちの１つに含まれない以前に復号された完全なビデオフレームの部分と同一であると仮定できるからである。
【００２６】
図２は、符号器１６（図１）の例示的な詳細を示すブロック図である。図２の例では、プリプロセッサ１０または別のハードウェアユニットおよび／もしくはソフトウェアユニットが、符号器１６内のフレームバッファ３０内に非符号化ビデオフレームのシーケンスを格納することができる。フレームバッファ３０は、符号器１６のメインメモリとは別々またはその一部とすることができるメモリのユニットとすることができる。ビデオフレームのこのシーケンスは、可変個数のビデオフレームを含むことができる。たとえば、ビデオフレームの第１シーケンスが、５つのビデオフレームを含むことができ、ビデオフレームの第２シーケンスが、１６個のビデオフレームを含むことができ、ビデオフレームの第３シーケンスが、３００個のビデオフレームを含むことができる。別の例では、ビデオフレームのシーケンスが、１つまたは複数のグループオブピクチャ（「ＧＯＰ」）を形成することができる。
【００２７】
ビデオフレームのシーケンスがフレームバッファ３０に格納される時に、符号器１６内の動き推定（予測）ユニット３２は、ビデオフレームのシーケンス内の各ビデオフレーム内のパーティションごとに動きデータを生成することができる。本開示で使用されるときに、「パーティション」は、画素の連続するグループである。たとえば、パーティションを、画素の１６×１６個のグループとすることができる。この例では、用語「パーティション」は、ＭＰＥＧおよびＨ．２６ｘビデオコーディング標準規格の語法で使用される用語「マクロブロック」または「ブロック」と同義とすることができる。しかし、より一般的な例では、パーティションは、任意の形状（たとえば、三角形、台形、円形、長方形など）の画素のグループとすることができる。
【００２８】
動き推定（予測）ユニット３２によって生成される動きデータは、現行フレームがどのように符号化されるのかに依存して変化する可能性がある。たとえば、フレームが、予測フレーム（「Ｐフレーム」）としてインターコーディングされる場合には、動き推定ユニット３２は、フレームのパーティションごとに動きベクトルを生成することができる。動き推定ユニット３２によって生成される各動きベクトルは、１つまたは複数の参照フレーム内の位置からＰフレーム内の位置への１つまたは複数のパーティションの変位値を指定することができる。たとえば、あるパーティションの動きベクトルは、１つまたは複数の参照フレーム、識別されたパーティションの水平変位、および識別されたパーティションの垂直変位を指定することができる。この例では、現行フレームの動きベクトル内で指定される参照フレームは、現行フレームの直前または直後のフレームである必要はない。たとえば、Ｈ．２６４標準規格では、参照フレームを、現行フレームから１６フレームまで離れたフレームとすることができる。フレームが、両方向予測フレーム（「Ｂフレーム」）としてインターコーディングされる場合には、動き推定ユニット３２は、フレームのパーティションごとに、参照フレームインデックス値のリストの組を生成することができる。復号中に、フレームインデックス値のリストを、Ｂフレーム内のパーティションの位置を補間するのに使用することができる。フレームが、イントラコーディングされるフレーム（「Ｉフレーム」）として符号化される場合には、動き推定ユニット３２は、動きデータを生成しなくてもよく、あるいは、Ｉフレームに関してアクションを実行しなくてもよい。
【００２９】
動き推定ユニット３２が、ビデオフレームのシーケンス内の各ビデオフレーム内のパーティションごとに動きデータを生成した後に、モード判断モジュール３４は、パーティションごとにパーティション符号化モードを選択することができる。たとえば、Ｈ．２６４／ＡＶＣ標準規格では、モード判断モジュール３４は、パーティションごとに、イントラフレームのパーティションをＩｎｔｒａ＿４ｘ４コーディングモードまたはＩｎｔｒａ＿１６ｘ１６コーディングモードのどちらを使用して符号化すべきかを判定することができる。さらに、Ｈ．２６４／ＡＶＣ標準規格では、モード判断モジュール３４は、パーティションごとに、Ｐフレームのパーティションを「スキップ」モードを使用して符号化すべきなのか、あるいは動き補償を使用して符号化すべきなのかを判定することができる。「スキップ」モードでは、パーティションは、参照フレーム内の同等に配置されたパーティションと同一の画素データを格納すると解釈される。
【００３０】
ビデオフレームのシーケンスの各ビデオフレーム内のパーティションごとに符号化モードを選択することに加えて、モード判断モジュール３４は、パーティションに対して「モード平滑化」動作を実行することができる。一般に、モード判断モジュール３４がモード平滑化動作を実行する時には、モード判断モジュール３４は、第１モードの分離されたパーティションを第２モードのパーティションとして再分類する。たとえば、ビデオフレームのシーケンス内で、単一のパーティションが、それ以外の点では静的な背景にまたがって移動する場合がある。この例では、静的な背景のパーティションを、「スキップ」モードパーティションとすることができ、動くパーティションを、別のモードに従って符号化することができる。モード平滑化動作は、このパーティションをスキップモードパーティションとして再分類することができる。頻繁に、そのような分離された動くパーティションは、視覚的雑音であり、不必要かつ視覚的に気を散らせるものである可能性がある。パーティションに対してモード平滑化動作を実行することによって、モード判断モジュール３４は、視覚的雑音を減らすと同時に、効果的にスキップモードパーティションの数を増やすことができる。
【００３１】
モード判断モジュール３４が、パーティションごとにパーティション符号化モードを判定した後に、符号器１６内のパーティションマップモジュール３６は、ビデオフレームのシーケンスのビデオフレームごとにパーティションマップを生成することができる。ビデオフレームのパーティションマップを生成した後に、パーティションマップモジュール３６は、パーティションマップをマップバッファ３８に格納することができる。マップバッファ３８は、別々のメモリユニット、符号化デバイス４のメインメモリ内の区域、または符号器１６によってアクセス可能な任意の適切なメモリユニットとすることができる。
【００３２】
ビデオフレームのパーティションマップは、そのビデオフレームのパーティションごとにデータ構造を含むことができる。ビデオフレームのパーティションのデータ構造は、タイルを識別するのに必要な、パーティションに関する情報を指定する。たとえば、パーティションのデータ構造は、パーティションの符号化モードを指定することができ、パーティションが均一な動きの区域内にあるかどうかを指定することができ、かつ／またはパーティションに関する他の情報を指定することができる。別の例では、パーティションのデータ構造は、パーティションのルマ(luma)情報、パーティションのクロマパレット（たとえば、白黒、セピアなど）、パーティションが均一な動きの区域内にあるかどうか、パーティションが加速する動きの区域内にあるかどうか、パーティションが変形する動き（たとえば、ズームイン／ズームアウト）の区域内にあるかどうか、および／またはパーティションに関する他の情報を指定することができる。
【００３３】
符号器１６内のタイル識別モジュール４０（「ＴＩＬＥ  ＩＤ．ＭＯＤＵＬＥ」）は、ビデオフレームのシーケンス内のビデオフレームのタイルの１つまたは複数の組を識別するのに、マップバッファ３８内のパーティションマップを使用することができる。タイル識別モジュール４０は、さまざまな形でビデオフレームのシーケンス内のビデオフレームのタイルの１つまたは複数の組を識別することができる。たとえば、図３は、タイル識別モジュール４０が、同一位置に置かれたタイルの組をどのようにして識別できるのかに関する例示的な詳細を提供する。その代わりに、タイル識別モジュール４０が、オーバーラップするが厳密には同一位置に置かれていないビデオフレームのタイルの組を識別することができる。タイルの組を識別することに加えて、タイル識別モジュール４０は、タイルの識別された組のそれぞれのタイル記述情報を生成することができる。タイルの組のタイル記述情報は、タイルの組を参照するのに使用できるタイル組インデックス番号、タイルの組の位置および形状を示す情報、ならびにおそらくは他の属性を示すことができる。
【００３４】
次に、符号器１６内の断片抽出モジュール４２が、ビデオフレームから断片を抽出することができる。本明細書で使用されるときに、「断片」は、ビデオフレームのタイル内のピクチャである。たとえば、タイル識別モジュール４０が、ビデオフレームの画素（５，５）の左上座標およびそのビデオフレームの（１０，１０）の右下座標を有するそのビデオフレームの長方形タイルを識別した場合に、断片抽出モジュール４２は、（５，５）の左上座標および（１０，１０）の右下座標を有するそのフレームの長方形ピクチャ内のパーティションの組をそのビデオフレームから抽出することができる。パーティションのこの組が、断片である。別の例では、イントラコーディングされるビデオフレーム（「Ｉフレーム」）についてそうである場合があるように、タイル識別モジュール４０が、ビデオフレームの画素（０，０）の左上座標およびそのビデオフレームの右下角の右下座標を有する、そのビデオフレームの長方形タイルを識別する場合に、断片抽出モジュール４２は、そのフレームのすべてのパーティションを含むパーティションの組をそのフレームから抽出することができる。
【００３５】
断片および関連する動きデータを抽出した後に、断片抽出モジュール４２は、断片および関連する動きベクトルを断片バッファ４４に格納することができる。断片バッファ４４は、別々のメモリユニット、符号化デバイス４のメインメモリ内の区域、または他の形とすることができる。
【００３６】
断片抽出モジュール４２が、断片および関連する動きデータを抽出した後に、断片抽出モジュール４２は、断片のピクチャ識別情報を生成することができる。断片の断片識別情報は、断片抽出モジュール４２がそこから断片を抽出したフレームのインデックス番号を示すことができる。さらに、断片の断片識別情報は、断片に関連するタイルの組のインデックス番号を示すことができる。上で説明したように、タイルの組のインデックス番号を、タイルの組のタイル記述情報によって示すことができる。この形で、断片の断片識別情報は、断片とビデオフレームとの間の関係を識別する。たとえば、断片の断片識別情報は、断片がフレーム「５」から抽出され、タイルの組「３」に関連することを示すことができる。
【００３７】
その後、断片バッファ４４は、断片のうちの１つの断片のパーティションに関連する動きデータの組を符号器１６内の動き補償ユニット４６（「ＭＯＴＩＯＮ  ＣＯＭＰ．ＵＮＩＴ」）に送ることができる。説明のために、断片のうちのこの１つの断片を、本明細書では「現行断片」と称する。動き補償ユニット４６が、現行断片のパーティションに関連する動きデータの組を受け取る時に、動き補償ユニット４６は、現行断片がＰフレーム、Ｂフレーム、またはＩフレームのどれとして符号化されるのかを判定することができる。
【００３８】
現行断片がＰフレームとして符号化されようとしている場合には、現行断片に関連する動きデータは、現行断片のパーティションごとに１つまたは複数の動きベクトルおよび１つまたは複数のフレームインデックス値を指定することができる。動き補償ユニット４６は、指定されたフレームインデックス値に関連し、現行断片の断片識別情報によって指定されるタイル組インデックス値にも関連する各参照断片を参照バッファ４８から取り出し( retrieve )することができる。
【００３９】
参照断片を参照バッファ４８から取り出した後に、動き補償ユニット４６は、現行断片のパーティションごとに、取り出された１つまたは複数の参照断片のパーティションを識別するのにパーティションの動きベクトルを使用し、その後、識別されたパーティションを現行断片のパーティションに配置することができる。たとえば、現行断片のパーティションの動きベクトルは、現行断片のパーティションと取り出された参照断片のパーティションとの間の水平変位および垂直変位を指定することによって、取り出された参照断片のうちの１つの参照断片のパーティションを示すことができる。この場合に、動き補償ユニット４６は、現行断片の断片の画素データとして、取り出された参照断片の示された断片の画素データを使用することができる。この形で、動き補償ユニット４６は、参照断片からのパーティションを現行断片に関連する予測断片内の適当な位置に「移動する」。
【００４０】
現行断片が、それがそこから抽出されたビデオフレームより小さいときには、現行断片は、そのビデオフレームより少数のパーティションを含む。現行断片がビデオフレームより少数のパーティションを含むので、動き補償ユニット４６は、動き補償ユニット４６がそのビデオフレームに対して動き補償動作を実行できるのよりすばやく、より効率的に（計算の複雑さおよびハードウェアの複雑さに関して）現行断片に対して動き補償動作を実行することができる。
【００４１】
現行断片が、Ｂフレームとして符号化されようとしている場合には、現行断片に関連する動きデータは、現行断片のパーティションごとに複数のリストを指定することができる。１つの例示的実施態様では、パーティションのリストの最初の１つ（すなわち、リスト０）は、現行フレームがそこから抽出されたフレームの前に発生するフレームの０個以上のフレームインデックス値を指定することができる。パーティションのリストの第２の１つ（すなわち、リスト１）は、現行フレームがそこから抽出されたフレームの後に発生するフレームの０個以上のフレームインデックス値を指定することができる。動き補償ユニット４６は、複数のリストで指定されるフレームインデックスに関連し、現行断片のタイル組インデックス値にも関連する各参照断片を参照バッファ４８から取り出すことができる。参照断片を参照バッファ４８から取り出した後に、動き補償ユニット４６は、現行断片のパーティションごとに、パーティションの内容を補間することができる。
【００４２】
現行断片が、Ｉフレームとして符号化される場合には、動き補償ユニット４６は、すべて０である予測断片を識別することができる。その予測断片は、すべて０なので、符号器１６内の残差生成モジュール５０が現行断片に予測断片の負の版を加算する時に、結果の残差断片は、現行断片と同一になる。代替実施態様では、現行断片がＩフレームとして符号化される時に、動き補償ユニット４６および残差生成モジュール５０を完全にバイパスすることができる。言い換えると、現行断片を、符号器１６内のブロック変換ユニット５２に直接に供給することができる。
【００４３】
前の段落で触れたように、動き補償ユニット４６が予測断片を生成した後に、残差生成モジュール５０は、予測断片の負バージョンと断片バッファ４４に格納された対応するオリジナル断片とを加算することによって、残差断片を生成することができる。より一般的には、残差生成モジュール５０は、予測断片と対応するオリジナル断片との間の差を表す残差断片を生成することができる。次に、ブロック変換ユニット５２は、残差断片に対して変換プロセスを実行することによって、係数の組を生成することができる。たとえば、ブロック変換ユニット５２は、残差断片内の画素のブロックのそれぞれに対して２次元離散コサイン変換を実行することによって、残差ピクチャ内の画素のブロックごとに係数の行列を生成することができる。ブロック変換ユニット５２が係数の組を生成した後に、符号器１６内の量子化モジュール５４（「ＱＵＡＮＴＩＺ．ＭＯＤＵＬＥ」）は、係数の組の係数を量子化することによって、量子化された係数の組を生成することができる。たとえば、量子化モジュール５４は、係数の各行列内の係数を量子化するのに量子化行列を使用することができる。
【００４４】
次に、符号器１６内のエントロピコーディングユニット１０６は、量子化された係数の組に対してエントロピ符号化動作を実行することができる。たとえば、エントロピコーディングユニット１０６は、量子化された係数の組に対してＣＡＶＬＣ（ｃｏｎｔｅｘｔ−ａｄａｐｔｉｖｅ  ｖａｒｉａｂｌｅ  ｌｅｎｇｔｈ  ｃｏｄｉｎｇ）動作を実行することができる。さらに、エントロピコーディングユニット１０６は、現行断片に関連する動きデータの組に対してエントロピ符号化動作を実行することができる。たとえば、エントロピコーディングユニット１０６は、現行断片に関連する動きデータに対して指数ゴロムコーディング動作を実行することができる。上で述べたように、現行断片がｐフレームとして符号化されようとしている場合には、現行断片に関連する動きデータは、現行断片のパーティションの動きベクトルの組を備えることができる。現行断片がｂフレームとして符号化されようとしている場合には、現行断片に関連する動きデータは、スキップモードパーティションを示すフラグ、現行断片内のパーティションの内容をそれらから補間できる断片識別子のリストを備えることができる。
【００４５】
エントロピコーディングユニット１０６が、量子化された係数の組および対応する動きデータに対してエントロピ符号化動作を実行した後に、符号器１６内の出力モジュール５８は、現行断片に関連するエントロピ符号化された量子化された係数および対応する動きベクトルを出力することができる。ビデオフレームの断片が、ビデオフレームのすべてを含んではいない場合があるので、出力モジュール５８は、出力モジュール５８が完全なビデオフレームを出力していた場合より少ないデータを出力する可能性がある。
【００４６】
出力モジュール５８は、現行フレームに関連するタイル記述情報および断片識別情報を出力することができる。出力モジュール５８は、さまざまな形で断片識別情報およびタイル記述情報を出力することができる。第１の例では、出力モジュール５８が、Ｈ．２６４標準規格に従って符号化された断片を出力している場合に、出力モジュール５８は、各符号化された断片をＨ．２６４ストリーム内の異なるフレームにマッピングすることができる。さらに、この第１の例では、出力モジュール５８は、断片識別情報およびタイル記述情報を示すＳＥＩ（ｓｕｐｐｌｅｍｅｎｔａｌ  ｅｎｈａｎｃｅｍｅｎｔ  ｉｎｆｏｒｍａｔｉｏｎ）を出力することができる。第２の例では、出力モジュール５８が、Ｈ．２６４標準規格に従って符号化された断片を出力している場合に、出力モジュール５８は、あるフレームに関連する符号化された断片をＨ．２６４標準規格のＦＭＯ（ｆｌｅｘｉｂｌｅ  ｍａｃｒｏｂｌｏｃｋ  ｏｒｄｅｒｉｎｇ）能力に従って異なるスライスグループにマッピングすることができる。この第２の例では、異なるスライスグループの位置を記述する機構が、Ｈ．２６４標準規格に既に含まれる。第３の例では、復号器／受話器および送信機／符号器がお互いの能力を知っているクローズドアプリケーションの場合など、標準規格への準拠がクリティカルではない場合に、新しい構文／セマンティックスまたはフォーマットを、この情報を通信するのに使用することができ、このフォーマットを、先験的に復号器でプログラムすることができる。
【００４７】
さらに、量子化モジュール５４が、現行断片に関連する量子化された係数の組を生成する時に、符号器１６内の逆量子化ユニット６０（「ＩＮＶＥＲＳＥ  ＱＵＡＮＴＩＺ．ＭＯＤＵＬＥ」）は、量子化された係数の組に対して逆量子化動作を実行することによって、現行断片に関連する逆量子化された係数の組を生成することができる。逆量子化ユニット６０は、量子化モジュール５４によって使用される量子化行列に対応する逆量子化行列を使用して、逆量子化動作を実行することができる。逆量子化ユニット６０が、逆量子化された係数の組を生成した後に、符号器１６内の逆変換ユニット６２は、ブロック変換ユニット５２によって適用された変換の逆を逆量子化された係数の組に適用することによって、現行断片に関連する復号された残差ピクチャを生成することができる。たとえば、ブロック変換ユニット５２が、２次元離散コサイン変換を適用した場合に、逆変換ユニット６２は、２次元逆離散コサイン変換を適用することができる。
【００４８】
符号器１６内の断片再構成モジュール６４（「ＦＲＡＧＭＥＮＴ  ＲＥＣＯＮＳＴ．ＭＯＤＵＬＥ  ６４」）は、現行断片に関連する復号された残差ピクチャと現行断片に関連する予測ピクチャとを加算することによって、現行断片に関連する再構成された断片を生成することができる。図２の例の符号器１６は、再構成された断片を生成するのに加算器を使用するが、他のタイプのハードウェアモジュールまたはソフトウェアモジュールが、断片再構成モジュール６４の機能性を実行できることを了解されたい。断片再構成モジュール６４が、再構成された断片を生成する時に、断片再構成モジュール６４は、参照断片としての後続使用のために、再構成されたピクチャを参照バッファ４８に格納することができる。参照断片は、完全なビデオフレームより少数のビットを含む場合があるので、参照バッファ４８を、参照バッファ４８が完全なビデオフレームを格納しなければならない場合より小さくすることができる。さらに、参照断片は、完全なビデオフレームより少数のビットを含む場合があるので、メモリ転送トラヒック要件を下げることができる。より少ないメモリ転送トラヒックの結果として、参照断片を参照バッファ４８に書き込むことが、より短い時間およびより少ない電力を必要とする可能性がある。参照バッファ４８が、再構成されたピクチャを格納した後に、動き補償ユニット４６は、断片バッファ４４から動きデータの別の組を受け取ることができ、このプロセスは、断片バッファ４４内の別の断片に関してもう一度発生し得る。さらに、このプロセスは、断片バッファ４４内のすべての断片が処理済みになるまで継続され得る。
【００４９】
図３は、タイル識別モジュール４０の例示的な詳細を示すブロック図である。図３の例では、タイル識別モジュール４０は、ビデオシーケンスのコンポジットパーティションアクティビティマップを作成するのにパーティションマップモジュール３６によって生成されたパーティションマップを使用するパーティションアクティビティモジュール７０を含む。ビデオフレームのパーティションアクティビティマップは、ビデオフレームのどのパーティションが「アクティブ」であるのか、およびフレームのどのパーティションが「インアクティブ」であるのかを示す。たとえば、パーティションアクティビティマップは、アクティブモードパーティションを示す「真」値およびインアクティブパーティションを示す「偽」値を有するブール(Boolean)値の配列とすることができる。所与のビデオフレームのパーティションは、そのパーティションの動きベクトルが、そのパーティションが基準フレーム内のパーティションに対する相対的な変位を有しないことを示す時、およびそのパーティションが参照フレーム内の同一位置のパーティションと比べた残差値を有しない時に、インアクティブパーティションである。逆に、所与のフレームのパーティションは、そのパーティションの動きベクトルが、そのパーティションが参照フレーム内のパーティションに対する少なくともある変位を有することを示す時、そのパーティションが参照フレーム内の同一位置のパーティションと比べて非０の残差値を有する時、またはそのパーティションが参照フレーム内の同一位置のパーティションと比べて非０の残差値を有し、参照フレーム内のパーティションに対する少なくともある変位を有する時に、「アクティブ」である。
【００５０】
コンポジットパーティションアクティビティマップを生成するために、パーティションアクティビティモジュール７０内のマップモジュール７１は、実質的に均一の動きを有するフレーム内のパーティションのグループを識別することによって、ビデオフレームの１つまたは複数のパーティションアクティビティマップを生成することができる。実質的に均一の動きを有するパーティションのグループを識別するために、マップモジュール７１は、パーティションの動きベクトルの水平次元に対応する成分によって示される水平変位にメディアン(移動中央値)フィルタを適用し、パーティションの動きベクトルの垂直次元に対応する成分によって示される垂直変位にメディアン（移動中央値）フィルタを適用することができる。メディアン（移動中央値）フィルタは、効果的に、雑音または変位の間の他の重要ではない差を除去する。メディアン（移動中央値）フィルタは、点（たとえば、変位値）の組をとり、フィルタのスパンを与えられて、ｘを中心とするこれらの点の部分集合をとり、その部分集合の中央値を返す。たとえば、１、１、１、１、５、４、４、１、９、４が、水平変位値または垂直変位値であり、フィルタのスパンが５であると仮定する。この例では、それぞれが次の中央値を有する、１０個の部分集合がありえる。
【００５１】
部分集合１：    １                  −−  中央値＝１
部分集合２：    １，１              −−  中央値＝１
部分集合３：    １，１，１          −−  中央値＝１
部分集合４：    １，１，１，１      −−  中央値＝１
部分集合５：    １，１，１，１，５  −−  中央値＝１
部分集合６：    １，１，１，５，４  −−  中央値＝１
部分集合７：    １，１，５，４，４  −−  中央値＝４
部分集合８：    １，５，４，４，１  −−  中央値＝４
部分集合９：    ５，４，４，１，９  −−  中央値＝４
部分集合１０：  ４，４，１，９，４  −−  中央値＝４
この例では、移動中央値フィルタの出力は、１、１、１、１、１、１、４、４、４、４である。移動中央値フィルタが、「５」および「９」の値をどのように除去するのかに留意されたい。移動中央値フィルタを適用した後に、マップモジュール７１は、同一の値を有する連続するフィルタリングされた変位値のグループを識別することができる。たとえば、マップモジュール７１は、連続するフィルタリングされた変位値の第１グループとして１、１、１、１、１、１というグループを、連続するフィルタリングされた変位値の第２グループとして４、４、４、４というグループを識別することができる。次に、マップモジュール７１は、アクティブパーティションとして、非０のフィルタリングされた変位値のグループに関連するパーティションを示すことができる。たとえば、フィルタリングされた変位値の次の表が、これを示すことができる。
【表１】
2011526460.tif 000003
【００５２】
表１では、各セルは、パーティションを表し、セル内の第１の数は、そのパーティションのフィルタリングされた水平変位値を表し、セル内の第２の数は、そのパーティションのフィルタリングされた垂直変位値を表す。表１を使用して、マップモジュール７１は、左上角の４つのパーティションをアクティブパーティションとして示し、右下角の４つのパーティションをアクティブパーティションとして示すことができる。残りのパーティションは、そのフィルタリングされた変位値が０なので、インアクティブパーティションである。
【００５３】
マップモジュール７１がパーティションアクティビティマップをどのように生成できるのかの別の例では、マップモジュール７１は、動きベクトル変位値ではなく、パーティション符号化モードを使用することができる。これを示すために、下の表２を検討されたい。
【表２】
2011526460.tif 000004
【００５４】
表２では、各セルは、パーティションを表し、セルの内部の単語は、そのセルによって表されるパーティションを符号化するのに使用された符号化モードを示す。表２を使用して、マップモジュール７１は、右上の４つのパーティションをアクティブパーティションとして表し、左下の４つのパーティションをアクティブパーティションとして表すことができる。
【００５５】
図４に、ビデオフレームの例示的なシーケンス８０と、アクティブパーティションを黒いブロックとして示すパーティションマップの対応する組８２とを示す。図４の例に示されているように、ビデオフレームのシーケンス８０は、フレーム８０Ａ、フレーム８０Ｂ、フレーム８０Ｃ、およびフレーム８０Ｄを含む。図４の例では、フレーム８０Ａは、イントラフレームである。タイル識別モジュール４０が、シーケンス８０のタイルを識別しつつある時に、マップモジュール７１は、パーティションアクティビティマップの組８２を生成することができる。パーティションアクティビティマップの組８２は、マップ８２Ａ、マップ８２Ｂ、マップ８２Ｃ、およびマップ８２Ｄを含む。マップ８２Ａは、フレーム８０Ａに対応し、マップ８２Ｂは、フレーム８０Ｂに対応し、マップ８２Ｃは、フレーム８０Ｃに対応し、マップ８２Ｄは、フレーム８０Ｄに対応する。
【００５６】
ビデオフレーム８０のそれぞれは、砂漠の背景の前に立っている人の表現である。たとえば、この人は、遠隔ニュース放送を送達している可能性がある。ビデオフレーム８０から明白であるように、砂漠の背景は、ビデオフレーム８０中に大きくは動かず、変化しない。そうではなく、ビデオフレーム８０内の動きおよび変化のすべては、人の頭の周囲に集中している。ビデオフレーム８０の動きおよび変化が人の頭の周囲に集中しているので、人の頭の周囲の領域内に配置されたビデオフレーム８０のパーティションは、アクティブパーティションである傾向があるが、背景に関連するビデオフレーム８０のパーティションは、インアクティブパーティションである。その結果、マップ８２Ｂ、マップ８２Ｃ、およびマップ８２Ｄは、人の頭の周囲の領域内のアクティブパーティションを示す黒いブロックを含む。マップ８２Ａは、フレーム８０ＡがＩフレームであり、Ｉフレームが他のフレームを参照して構成はされないので、アクティブモードパーティションを全く含まない。
【００５７】
もう一度図３を参照すると、タイル識別モジュール４０は、ビデオフレームのシーケンス内のビデオフレームのタイルの１つまたは複数の組を識別するのに、パーティションアクティビティマップを使用することができる。タイル識別モジュール４０は、ビデオフレームのシーケンス内のビデオフレームのタイルの組を識別するのに、さまざまな技法を使用することができる。図３の例では、パーティションアクティビティモジュール７０は、コンポジットパーティションアクティビティマップを生成するのにマップモジュール７１によって生成されたパーティションアクティビティマップを使用するコンポジットマップモジュール７２を含むことができる。本開示で使用されるときに、パーティションアクティビティマップは、ソースパーティションアクティビティマップのうちの１つのすべてのアクティブパーティションについて、パーティションアクティビティマップ内の一所に置かれたパーティションがアクティブパーティションである場合、およびアクティビティマップのすべてのインアクティブパーティションについて、アクティブパーティションであるソースパーティションアクティビティマップの一所に置かれたパーティションがない場合に、複数のソースパーティションアクティビティマップの合成物である。ソースパーティションアクティビティマップは、Ｉフレーム、Ｐフレーム、Ｂフレーム、または他のものに関連するパーティションアクティビティマップを含むことができる。コンポジットマップモジュール７２は、パーティションアクティビティマップのそれぞれに対して論理「ｏｒ」演算を実行することによって、コンポジットパーティションアクティビティマップを生成することができる。この形で、コンポジットパーティションアクティビティマップ内のパーティションは、フレームのうちの１つまたは複数内の１つまたは複数の同一位置のパーティションがアクティブであるときに、アクティブである。図５Ａ、５Ｂ、および５Ｃに、例示的なコンポジットパーティションアクティビティマップ９０を示す。コンポジットパーティションアクティビティマップ９０は、パーティションアクティビティマップ８２Ａから８２Ｄ（図４）のコンポジットパーティションアクティビティマップである。言い換えると、コンポジットパーティションアクティビティマップ９０は、パーティションアクティビティマップ８２Ａから８２Ｄに対して論理「ｏｒ」演算を実行した結果を表すことができる。
【００５８】
コンポジットパーティションアクティビティマップ９０を生成した後に、タイル識別モジュール４０内のタイル構成モジュール７３は、コンポジットパーティションアクティビティマップ９０内のインアクティブパーティションのパーセンテージが所与のコンポジットパーティションアクティビティしきい値を超えるかどうかを判定するのにコンポジットパーティションアクティビティマップ９０を使用することができる。コンポジットパーティションアクティビティしきい値は、たとえば２０％以上からの範囲にわたる、さまざまな異なる値を有することができる。全体的なパーティションアクティビティマップ内のインアクティブパーティションのパーセンテージが、コンポジットパーティションアクティビティしきい値を超えない場合には、タイル構成モジュール７３は、タイルの単一の組を識別することができる。タイルのこの組に含まれる各タイルは、ビデオフレームのシーケンス内のビデオフレームの区域全体を含む。タイル識別モジュール４０は、計算負荷および／または電力消費に関してタイルまたはビデオフレーム全体のどちらに基づいてビデオフレームを符号化することがより効率的であるのかを査定するために、コンポジットパーティションアクティビティマップ９０内のインアクティブパーティションのパーセンテージがコンポジットパーティションアクティビティしきい値を超えるかどうかを評価することができる。言い換えると、コンポジットパーティションアクティビティマップ９０内のインアクティブパーティションのパーセンテージが、コンポジットパーティションアクティビティしきい値未満であるときには、ビデオフレームのタイルではなくビデオフレーム全体を符号化することがより効率的である可能性がある。
【００５９】
その一方で、コンポジットパーティションアクティビティマップ９０内のインアクティブパーティションのパーセンテージがしきい値を超える場合には、タイル構成モジュール７３は、アクティブパーティションを含む、コンポジットパーティションアクティビティマップ９０の１つまたは複数のタイルを識別することができる。コンポジットパーティションアクティビティマップ９０のタイルは、ビデオフレームのシーケンス内の均一な動きの別個の区域を表すことができる。図５Ａの例に示されているように、タイル構成モジュール７３は、コンポジットパーティションアクティビティマップ９０内のアクティブモードパーティションの上側グループの周囲の長方形区域を含むタイル９２を識別し、コンポジットパーティションアクティビティマップ９０内のアクティブモードパーティションの下側グループの周囲の長方形区域を含むタイル９４を識別している。タイル９２は、ビデオフレーム８０内の人の頭の周囲のアクティブパーティションに対応し、タイル９４は、ビデオフレーム８０内のテキストに対応する。図５Ｂの例は、タイル構成モジュール７３がこの同一のコンポジットパーティションアクティビティマップ９０を使用して識別した代替領域を示す。図５Ｂの例に示されているように、タイル構成モジュール７３は、コンポジットパーティションアクティビティマップ１００内のアクティブモードパーティションの上側グループを含む第１の多角形タイル１０２を識別している。さらに、タイル構成モジュール７３は、コンポジットパーティションアクティビティマップ１００内のアクティブモードパーティションの下側グループを含む第２の多角形タイル１０４を識別している。
【００６０】
図５Ｃの例は、タイル構成モジュール７３がコンポジットパーティションアクティビティマップ９０を使用して識別できる追加の代替のタイルを示す。コンポジットパーティションアクティビティマップ９０を使用して、タイル構成モジュール７３は、アクティブモードパーティションの上側グループを含む第１の予備タイル１１２を識別し、アクティブモードパーティションの下側グループを含む第２の予備タイル１１４を識別している。予備タイル１１２は、図５Ａのタイル９２と同一であってもなくてもよく、予備タイル１１４は、図５Ａのタイル９４と同一であってもなくてもよい。しかし、図５Ｃの例では、タイル構成モジュール７３は、予備タイル１１２内にあるパーティションおよび予備タイル１１２から各方向に所与の個数の画素だけ延びるパーティションを含むタイル１１６をも識別している。さらに、図５Ｃの例では、タイル構成モジュール７３は、予備タイル１１４内にあるパーティションおよび予備タイル１１４から各方向に所与の個数の画素だけ延びるパーティションを含むタイル１１８を識別している。画素のこの所与の個数は、予備タイル１１２および１１４内のパーティションのすべての動きベクトルがそれぞれタイル１１６および１１８内にある区域を示すようになるものとすることができる。図５Ｃに示されているように、この余分の区域は、斜線を用いて示されている。
【００６１】
コンポジットパーティションアクティビティマップのタイルを識別した後に、タイル構成モジュール７３は、コンポジットパーティションアクティビティマップの識別されたタイルと同一位置に置かれたビデオフレームのシーケンス内の各ビデオフレームのタイルを識別することができる。言い換えると、タイル構成モジュール７３は、パーティションがコンポジットパーティションアクティビティマップの識別されたタイルに含まれるパーティションの位置に対応するビデオフレームの位置にある場合に限って、タイルがビデオフレームのそのパーティションを含むようになる、ビデオフレームのタイルを識別する。この形で、タイル構成モジュール７３は、ビデオフレームのシーケンス内のビデオフレームの同一位置に置かれたタイルの組を識別する。
【００６２】
ある情況の下では、図５Ａまたは図５Ｂの例に示されたタイル９２、９４、１０２、および１０４ではなく、図５Ｃのタイル１１６およびタイル１１８を使用することが有利である場合がある。たとえば、上で説明したように、符号器１６内の動き補償ユニット４６は、参照バッファ４８から参照断片を取り出す。参照バッファ４８は、符号化デバイス４のメインメモリの区域である場合があるので、参照バッファ４８からの参照ピクチャの取出しが、時間がかかり電力を消費するプロセスになる場合がある。さらに、動き補償ユニット４６が参照バッファ４８から参照断片を取り出す時に、動き補償ユニット４６は、その参照断片を動き補償ユニット４６にローカルなメモリユニットに格納することができる。タイル１１６および１１８の延ばされた区域に起因して、いくつかのパーティションが、参照断片の間で共用される。いくつかのパーティションが参照断片の間で共用されるので、動き補償ユニット４６がこれらの共用されるパーティションを２回取り出すことが、必要ではない場合がある。共用されるパーティションを２回取り出す必要がないことは、時間および電力を節約することができる。類似する情況が、復号器１８内の動き補償ユニットに関してあてはまる場合がある。
【００６３】
コンポジットパーティションアクティビティマップの１つまたは複数のタイルを実際に識別するために、タイル構成モジュール７３は、さまざまな異なる動作を実行することができる。たとえば、タイル構成モジュール７３は、アクティブパーティションだけが残るまでコンポジットパーティションアクティビティマップのインアクティブパーティションを「除去処理(pruning)する」ことによって、コンポジットパーティションアクティビティマップ内のアクティブパーティションの接続された組を識別することができる。この例では、その後、タイル構成モジュール７３は、タイルを長方形にするために、インアクティブパーティションをタイルに戻して追加することによって、長方形タイル（たとえば、図５Ａのタイル９２および９４ならびに図５Ｃのタイル１１２および１１４）を識別することができる。別の例では、タイル構成モジュール７３は、コンポジットパーティションアクティビティマップの第１のアクティブモードパーティションを識別することと、その後、この第１のアクティブモードパーティションに隣接するコンポジットパーティションアクティビティマップのアクティブモードパーティションを識別することと、その後、これらのアクティブモードパーティションに隣接するアクティブモードパーティションを識別することなどによって、コンポジットパーティションアクティビティマップのアクティブパーティションの連続する組を識別することができる。
【００６４】
さらに、タイル構成モジュール７３は、識別されたタイルに基づいてタイルに関連する断片を時間効率および／または電力効率のよい形でメモリから取り出すことができる形で、コンポジットパーティションアクティビティマップのタイルを識別することができる。たとえば、タイル構成モジュール７３は、タイルに基づいてタイルに関連する断片を完全に単一のメモリページ内に格納できるように、コンポジットパーティションアクティビティマップのタイルを識別することができる。この例では、断片全体が単一のメモリページ内に格納される時に、断片を取り出すのにより短い時間および／またはより少ない電力を要する可能性がある。対照的に、完全なビデオフレームは、断片より大きい可能性がある。完全なビデオフレームが断片より大きい可能性があるので、完全なビデオフレームを単一のメモリページ内に格納することが可能ではない場合がある。
【００６５】
タイル構成モジュール７３が、コンポジットパーティションアクティビティマップのタイルを識別する時に、タイル構成モジュール７３は、ビデオフレームのそれぞれのタイルを識別することができる。ビデオフレームの識別されたタイルは、コンポジットパーティションアクティビティマップのタイルと同一位置に置かれているものとすることができる。これらの識別されたタイルは、タイルの組を構成する。タイル構成モジュール７３は、コンポジットパーティションアクティビティマップ内のアクティブパーティションの接続された組ごとに、タイルのそのような組を識別することができる。
【００６６】
タイル構成モジュール７３が、タイルの組を識別した後に、タイル識別モジュール４０内のタイル記述モジュール７４は、タイルの識別された組のそれぞれのタイル記述情報を作成することができる。タイルの組のタイル記述情報は、タイルの識別された組の中で一意であるタイルインデックス値を示すことができる。タイルインデックス値は、タイルの識別された組の中で一意なので、タイルの組のタイルインデックス値を、タイルのその組のタイル記述情報にアクセスするのに使用することができる。さらに、タイルの組のタイル記述情報は、タイルの組内のタイルの形状およびビデオフレーム内のタイルの組内のタイルの位置を示すことができる。たとえば、同一位置に置かれたタイルの組のタイル記述情報は、同一位置に置かれたタイルの組の各タイルが、長方形であり、ビデオフレームの画素（２７，３２）の左上角およびビデオフレームの画素（６３，８２）の右下角を有することを示すことができる。代替の例では、同一位置に置かれたタイルのタイル記述情報は、同一位置に置かれたタイルの組のタイルに含まれるビデオフレームのパーティションの識別子をリストすることができる。さらに、タイルの組内のタイルが同一位置に置かれていない場合には、タイルの組のタイル記述情報は、タイルの組内のタイルのそれぞれの位置を示すことができる。
【００６７】
図５Ｄに、パーティションアクティビティマップ１２０に対するモード平滑化の効果を示す。図５Ｄの例に示されているように、パーティションアクティビティマップ１２０は、連続するアクティブパーティションの第１の組１２１および連続するアクティブパーティションの第２の組１２２を含む。組１２１および組１２２内のパーティションを、「直接モード」パーティションとして符号化することができ、「ＤＣモード」パーティションとして符号化することができ、あるいは、別のタイプの非スキップパーティションとして符号化することができる。組１２１および組１２２に加えて、パーティションアクティビティマップ１２０は、２つの分離されたアクティブパーティション１２３を含む。
【００６８】
図５Ｄのパーティションアクティビティマップ１２４は、パーティションアクティビティマップ１２０にモード平滑化を適用することから生じるパーティションアクティビティマップである。上で述べたように、モード平滑化は、分離されたアクティブパーティションをスキップモードパーティションとして符号化することを強制することができる。分離されたアクティブパーティションがスキップモードパーティションになることを強制することは、タイルの個数を減らし、したがって符号器１６によって達成される圧縮を増補することができる。パーティションアクティビティマップ１２４が、組１２１および組１２２を含むことに留意されたい。パーティションアクティビティマップ１２４は、組１２１および組１２２が「平滑化によって除去され」ない（すなわち、スキップモードになることを強制されない）のに十分に大きいので、組１２１および組１２２を含む。しかし、パーティションアクティビティマップ１２４は、分離されたアクティブパーティション１２３を含まない。
【００６９】
図６Ａおよび６Ｂに、図２に提示された符号器１６の例示的な動作を示す。図６Ａに示された例示的な動作によれば、非符号化ビデオフレームのシーケンスが、フレームバッファ３０に格納される（１３０）。次に、符号器１６内の動き推定ユニット３２は、非符号化ビデオフレームのシーケンス内のビデオフレームのパーティションの動きデータを識別することができる（１３２）。動き推定ユニット３２が、非符号化ビデオフレームのシーケンス内のビデオフレームのパーティションの動きデータを識別した後に、符号器１６内のモード判断モジュール３４は、ビデオフレームのシーケンス内のビデオフレームのそれぞれのパーティションごとにパーティションモードを識別することができる（１３４）。さらに、モード判断モジュール３４は、ビデオフレームのシーケンス内のビデオフレームのそれぞれのパーティションに対してモード平滑化動作を実行することができる（１３６）。図５Ｄに関して上で説明したように、モード平滑化は、分離されたアクティブパーティションをスキップモードパーティションとして符号化することを強制し、これによって、タイル識別モジュール４０が最終的に識別するタイルの潜在的な個数を減らすことができる。
【００７０】
次に、パーティションマップモジュール３６は、ビデオフレームのシーケンス内のビデオフレームごとにパーティションアクティビティマップを生成することができる（１３８）。上で説明したように、ビデオフレームのパーティションアクティビティマップは、ビデオフレームのタイルの組を識別するのに使用できる情報を格納する。次に、タイル識別モジュール４０は、コンポジットパーティションアクティビティマップを生成するのにこれらのパーティションアクティビティマップを使用することができる（１４０）。たとえば、図４のパーティションアクティビティマップ３２を与えられて、タイル識別モジュール４０は、図５Ａ〜５Ｃに示されているコンポジットパーティションアクティビティマップ９０、１００、および１１０を生成することができる。次に、タイル識別モジュール４０は、コンポジットパーティションアクティビティマップ内のインアクティブパーティションのパーセンテージが所与のしきい値を超えるかどうかを判定することができる（１４０）。
【００７１】
コンポジットパーティションアクティビティマップ内のインアクティブパーティションのパーセンテージがしきい値を超えない場合には（１４２の「ＮＯ」）、タイル識別モジュール４０は、ビデオフレームのタイルの組を識別することができ、ここで、タイルのそれぞれは、ビデオフレームのシーケンス内の各ビデオフレームの全パーティションを含む（１４４）。代替実施態様では、コンポジットパーティションアクティビティマップ内のインアクティブパーティションのパーセンテージがしきい値を超えない場合には（１４２の「ＮＯ」）、符号器１６は、伝統的なパーティションベースの符号化を実行することができる。
【００７２】
その一方で、コンポジットパーティションアクティビティマップ内のインアクティブパーティションのパーセンテージがしきい値以上である場合には（１４２の「ＹＥＳ」）、タイル識別モジュール４０は、ビデオフレームのシーケンスのビデオフレームのタイルの１つまたは複数の組を識別することができる（１４６）。たとえば、タイル識別モジュール４０は、ＰフレームおよびＢフレーム内のタイルの組を識別することができる。さらに、この例では、タイル識別モジュール４０は、Ｉフレームのすべてを含む各Ｉフレーム内のタイルを識別することができる。別の例では、タイル識別モジュール４０は、Ｉフレームの１つの部分が同一Ｉフレームのタイル／断片の別の部分を「参照」できるようになる、Ｉフレーム内のタイルを識別することができる。この形で、Ｉフレーム内で識別される少数の参照タイルがあるものとすることができ、Ｉフレームの残りは、この参照に基づいて予測され得る。
【００７３】
タイル識別モジュール４０が、タイルの組を識別した後（すなわち、１４４の後または１４８の後）に、タイル識別モジュール４０は、タイルの組のそれぞれのタイル記述情報を生成することができる（１５０）。次に、断片抽出モジュール４２は、識別されたタイルに関連する断片をビデオフレームから抽出することができる（１５２）。さらに、断片抽出モジュール４２は、抽出された断片のそれぞれのピクチャ識別情報を生成することができる（１５４）。次に、断片抽出モジュール４２は、断片、断片に関連する動きデータ、および断片識別情報を断片バッファ４４に格納することができる（１５６）。
【００７４】
次に、符号器１６は、図６Ｂの例に示された動作を実行することができる。図６Ａ内では、図６Ｂの例に示された動作が、「Ｂ」として示されている。図６Ｂの例に示された動作を実行した後に、符号器１６は、ループバックし、ビデオフレームの別のシーケンスをフレームバッファ３０に格納することができる（１３０）。
【００７５】
図６Ｂの例に示された動作によれば、符号器１６内の動き補償ユニット４６は、断片バッファ４４内に未処理のピクチャがあるかどうかを判定することができる（１７０）。動き補償ユニット４６が、断片バッファ４４内に未処理の断片があると判定する場合には（１７０の「ＹＥＳ」）、動き補償ユニット４６は、断片バッファ４４内の未処理の断片（すなわち、現行断片）をインターモードまたはイントラモードのどちらで符号化するのかを判定することができる（１７１）。動き補償ユニット４６が、現行断片をインターモードで符号化しないと判定する場合には（１７１の「ＮＯ」）、動き補償ユニット４６は、現行断片に関連する予測断片を識別するのに、断片バッファ４４内の最初の未処理の断片（すなわち、現行断片）に関連する動きデータによって示される参照バッファ４８内の参照断片を使用することができる（１７２）。
【００７６】
次に、残差生成モジュール５０は、現行断片に関連する予測断片の負のバージョン（版）とオリジナルの現行断片とを加算することによって残差断片を生成することができる（１７４）。この形で、現行断片の画素値は、残差画素値になる。残差生成モジュール５０が現行断片を変換した後、または動き補償ユニット４６が現行断片をインターモードで符号化すると判定した後（１７１の「ＹＥＳ」）に、ブロック変換ユニット５２は、現行断片に関連する残差断片を変換することによって現行断片に関連する係数の組を生成することができる（１７６）。次に、量子化モジュール５４は、現行断片に関連する係数の組に量子化動作を適用することによって、現行断片に関連する関連する量子化された係数の組を生成することができる（１７８）。
【００７７】
その後、エントロピ符号化ユニット５６は、現行ピクチャに関連する量子化された係数の組、現行断片のパーティションに関連する動きデータ、および現行断片に関連するピクチャ識別情報を符号化するために、エントロピ符号化動作を適用することができる（１８０）。エントロピ符号化動作を適用した後に、出力モジュール５８は、現行断片に関連するエントロピ符号化されたデータを出力することができる（１８２）。エントロピ符号化ユニット５６が、現行断片に関連するエントロピ符号化されたデータを出力する時に、エントロピ符号化ユニット５６は、タイル識別モジュール４０によって生成されたタイル記述情報を出力することもできる。
【００７８】
次に、逆量子化ユニット６０は、現行断片に関連する量子化された係数の組に対して逆量子化動作を実行することによって、現行断片に関連する逆量子化された係数の組を生成することができる（１８４）。次に、逆変換ユニット６２は、現行ピクチャに関連する逆量子化された係数の組に対して逆変換動作を実行することによって、現行断片に関連する復号された残差断片を生成することができる（１８６）。
【００７９】
逆変換モジュール１１０が、復号された残差ピクチャを生成した後に、加算器１１２は、現行断片に関連する復号された残差ピクチャを現行断片について動き補償ユニット４６によって生成された予測ピクチャと加算することによって、現行断片に関連する再構成された断片を生成することができる（１８８）。次に、参照バッファ４８は、現行断片に関連する再構成された断片を格納することができる（１９０）。
【００８０】
参照バッファ４８が再構成された断片を格納した後に、動き補償ユニット４６は、断片バッファ９４内に未処理の断片があるかどうかをもう一度判定することができる（１７０）。動き補償ユニット４６が、断片バッファ９４内に未処理の断片がないと判定する場合には（１７０の「ＮＯ」）、フレームバッファ３０は、ビデオフレームのシーケンスをもう一度受け取ることができる（１３０）（図６Ａ）。
【００８１】
図７は、復号器１８（図１）の例示的な詳細を示すブロック図である。図７の例に示されているように、復号器１８は、エントロピ復号ユニット１５０を含む。エントロピ復号ユニット１５０が、断片に関連する量子化された係数の符号化された組および現行断片のパーティションに関連する動きデータを含むメディアオブジェクトを受け取る時に、エントロピ復号ユニット１５０は、符号化された量子化された係数および動きデータに対してエントロピ復号動作を実行することによって、現行断片に関連する量子化された係数の組および関連する動きデータを復号する。次に、エントロピ復号ユニット１５０は、現行断片に関連する復号された量子化された係数を復号器１８内の逆量子化モジュール１５２に供給することができ、現行断片に関連する復号された動きデータを復号器１８内の動き補償ユニット１５４に供給することができる。
【００８２】
さらに、エントロピ復号ユニット１５０は、断片識別情報およびタイル記述情報を復号することができる。たとえば、エントロピ復号ユニット１５０は、断片識別情報およびタイル記述情報を示す符号化されたＳＥＩメッセージを受け取ることができる。上で述べたように、あるピクチャの断片識別情報は、断片に関連するフレームおよび断片に関連するタイルの組を示すことができる。タイルのタイル記述情報は、タイルの位置を示す。エントロピ復号ユニット１５０が、断片識別情報およびタイル記述情報を復号する時に、エントロピ復号ユニット１５０は、復号された断片識別情報および復号されたタイル識別情報を復号器１８内の参照バッファ１５８に格納することができる。
【００８３】
逆量子化モジュール１５２が、現行断片に関連する量子化された係数の組を受け取る時に、逆量子化モジュール１５２は、量子化された係数の組に対して逆量子化動作を実行することによって、現行断片に関連する逆量子化された係数の組を生成する。次に、復号器１８内の逆変換モジュール１５６は、現行断片に関連する逆量子化された係数に対して逆変換動作を実行することによって、現行断片に関連する残差断片を生成する。動き補償ユニット１５４が、現行断片に関連する動きデータの組を受け取る時に、動き補償ユニット１５４は、動きデータの組内の動きデータによって示される参照断片を参照バッファ１５８から取り出すことができる。たとえば、動き補償ユニット１５４は、現行断片のタイル組インデックス値にも関連する動きデータによって指定されるフレームインデックス番号に関連する参照バッファ１５８内の各断片を取り出すことができる。次に、動き補償ユニット１５４は、現行断片に関連する予測断片を生成するのに、取り出された参照断片を使用することができる。動き補償ユニット１５４は、たとえば上で動き補償ユニット４６に関して説明した技法を使用して、予測断片を生成することができる。動き補償ユニット１５４が、現行断片に関連する予測ピクチャを生成し、逆変換モジュール１５６が、現行フレームに関連する残差ピクチャを生成した後に、復号器１８内の断片再構成モジュール１６０は、予測断片と残差断片とを加算することによって、現行フレームに関連する再構成された断片を生成する。図７の例の復号器１８は、再構成された断片を生成するのに加算器を使用するが、他のタイプのハードウェアモジュールまたはソフトウェアモジュールが、断片再構成モジュール１６０の機能性を実行できることを了解されたい。
【００８４】
断片再構成モジュール１６０が再構成された断片を生成した後に、断片再構成モジュール１６０は、再構成された断片が参照断片として使用可能であるかどうかを判定することができる。たとえば、１つの方式では、再構成された断片がＢフレームとして符号化された場合に、再構成された断片が、参照断片として使用可能ではない場合がある。断片再構成モジュール１６０が、再構成された断片が参照断片として使用可能であると判定する場合には、断片再構成モジュール１６０は、参照断片としての後続使用のために、再構成された断片を参照バッファ１５８に格納することができる。さらに、断片再構成モジュール１６０が、再構成された断片が参照フレームとして使用可能であると判定する場合には、断片再構成モジュール１６０は、再構成された断片を復号器１８内のフレーム再組立モジュール１６２に供給することができる。そうではなく、断片再構成モジュール１６０が、再構成された断片が参照フレームとして使用可能ではないと判定する場合には、断片再構成モジュール１６０は、再構成された断片を参照バッファ１５８に格納せずに、再構成された断片をフレーム再組立モジュール１６２に直接に供給することができる。
【００８５】
フレーム再組立モジュール１６２は、完全なビデオフレームを再組立する。ビデオフレームを再組立するために、フレーム再組立モジュール１６２は、再構成された断片を断片再構成モジュール１６０から受け取ることができる。フレーム再組立モジュール１６２の背景では、まだ復号器１８によって出力されていない最も古いフレームを、「現行フレーム」と称する。フレーム再組立モジュール１６２が、現行フレームに関連する断片（すなわち、「現行断片」）を受け取る時に、フレーム再組立モジュール１６２は、現行断片に関連するタイルを識別するのに、現行断片に関連する断片識別情報を使用することができる。次に、フレーム再組立モジュール１６２は、タイルの位置を識別するのに、識別されたタイルに関連するタイル記述情報を使用することができる。次に、フレーム再組立モジュール１６２は、現行断片を、フレーム再組立バッファ１６４内の現行フレームの識別された位置にコピーする。フレーム再組立バッファ１６４は、再組立のさまざまな状態で１つまたは複数のフレームを格納することができる。
【００８６】
上で述べたように、現行フレームがＩフレームである場合には、現行フレームに関連する断片が１つだけある場合がある。さらに、現行フレームがＩフレームである場合には、現行フレームに関連する断片が、フレーム全体を占める場合がある。その一方で、現行フレームがＰフレームまたはＢフレームである場合には、現行フレームに関連する複数のフレームがある場合がある。現行断片を現行フレーム内の識別された位置にコピーすることは、効果的に、タイルの識別された組に関連する位置にある、現行フレームの部分を更新する。現行フレーム内の識別された位置に現行断片をコピーすることは、識別されたタイルの外側に含まれるフレーム再組立バッファ１６４内のパーティションを変更しない。あるフレームに関連するすべての断片をそのフレームの適当な位置にコピーすることによって、フレーム再組立モジュール１６２は、効果的に、現行フレームの情報のすべてを含むようにフレームを更新する。
【００８７】
フレーム再組立モジュール１６２が、現行フレームの識別された位置に現行断片をコピーした後に、フレーム再組立モジュール１６２は、現行フレームに関連するすべての断片が現行フレームにコピーされたかどうかを判定することができる。現行フレームに関連するすべての断片が現行フレームにコピーされている場合には、フレーム再組立モジュール１６２は、複数の断片が出会う現行フレーム内の画素に平滑化フィルタを適用することができる。これらの画素に対する平滑化の適用は、異なる断片からの画素の間の視覚的不連続性を減らすことができる。したがって、平滑化フィルタは、別々のブロックとしての異なる断片の可能な外見を効果的に減らすことができる。平滑化フィルタを適用した後に、フレーム再組立モジュール１６２は、現行フレームを出力することができる。そうではなく、現行フレームに関連するすべての断片が現行フレームにコピーされてはいない場合には、フレーム再組立モジュール１６２は、別の再構成された断片を受け取ることができる。
【００８８】
復号器１８の他の実施態様は、フレーム再組立モジュール１６２またはフレーム再組立バッファ１６４を含まなくてもよい。これらの実施態様では、ポストプロセッサ２０が、完全なビデオフレームではなく参照バッファ１５８に格納された断片に対して後処理動作を実行することができる。たとえば、ポストプロセッサ２０は、断片に対してデブロッキング動作を実行することができる。さらに、これらの実施態様では、ポストプロセッサ２０は、断片を完全なビデオフレームに再組立することができる。たとえば、ポストプロセッサ２０は、フレームレートアップコンバージョンを実行するのに断片を使用することができる。フレームレートアップコンバージョンでは、ポストプロセッサ２０は、フレームのシーケンス内の各既存フレームの間に１つまたは複数のフレームを追加することができ、これによって、フレームのシーケンスのフレームレートを増やすことができる。複数の既存フレームの間にフレームを追加するために、ポストプロセッサ２０は、断片に基づいて既存フレームの間のフレーム内のタイルについて動き補償を実行することができる。たとえば、ポストプロセッサ２０は、生成されるフレーム（すなわち、現行フレーム）の断片内でパーティションが有するはずの位置を識別するのに、生成されるフレームに続くフレーム（すなわち、後続フレーム）の断片内のパーティションの動きベクトルを使用することができる。現行フレームの断片は、後続フレームの断片のすべてのパーティションに関してそのような動き補償を実行することから生じるものとすることができる。その後、ポストプロセッサ２０は、現行フレームに先行するフレーム（すなわち、先行フレーム）に断片を加算することによって、現行フレームを完成させることができる。さらに、いくつかの情況で、このフレームレートアップコンバージョン技法を、伝統的な符号化および復号の方法論の背景で実践できることを了解されたい。これらの情況では、ポストプロセッサ２０は、フレームのシーケンス内の追加フレームを生成するために、復号器から完全な復号されたビデオフレームを受け取り、ビデオフレーム内のタイルを識別し、タイルに基づいて断片を抽出し、その後、断片に対してフレームレートアップ動作を実行することができる。さらに、バッファ充てんモジュール２２も、断片をビデオフレームに再組立することができる。下で詳細に説明するように、図１３は、バッファ充てんモジュール２２が断片を完全なビデオフレームに再組立するのに使用できる例示的動作を示す。
【００８９】
図８Ａおよび８Ｂは、復号器１８（図７）内のモジュールの例示的な動作を示す流れ図である。当初に、図８Ａの例の動作では、エントロピ復号ユニット１５０は、現行断片に関連する量子化された係数の符号化された組、現行断片のパーティションに関連する動きデータの符号化された組、断片識別情報、およびタイル記述情報を含むメディアオブジェクトを受け取ることができる（１８０）。量子化された係数の符号化された組および動きデータの符号化された組を受け取った後に、エントロピ復号ユニット１５０は、量子化された係数の符号化された組、動きデータの符号化された組、断片識別情報、およびタイル記述情報を復号することができる（１８２）。
【００９０】
その後、逆量子化モジュール１５２は、現行断片に関連する量子化された係数の復号された組に対して逆量子化動作を実行することができる（１８４）。量子化された係数の復号された組に対する逆量子化動作の実行は、現行断片に関連する係数の逆量子化された組をもたらす。次に、逆変換モジュール１５６は、現行断片に関連する係数の逆量子化された組に対して逆変換動作を実行することができる（１８６）。係数の逆量子化された組に対する逆変換動作の実行は、現行断片に関連する残差ピクチャをもたらす。
【００９１】
逆変換モジュール１５６が逆変換動作を実行した後に、あるいは逆量子化モジュール１５２が逆量子化動作を実行しつつある間または逆変換モジュール１５６が逆変換動作を実行しつつある間に、動き補償ユニット１５４は、現行断片に関連する予測断片を識別するのに動きデータの復号された組を使用する（１８８）。次に、断片再構成モジュール１６０は、現行断片に関連する予測ピクチャと現行断片に関連する残差ピクチャとを加算することによって、現行断片に関連する再構成された断片を生成する（１９０）。断片再構成モジュール１６０が再構成された断片を生成した後に、断片再構成モジュール１６０は、再構成された断片が参照断片として使用可能であるかどうかを判定することができる（１９１）。断片再構成モジュール１６０が、再構成された断片が参照断片として使用可能であると判定する場合には（１９１の「ＹＥＳ」）、断片再構成モジュール１６０は、再構成された断片を参照バッファ１５８に格納することができる（１９２）。断片再構成モジュール１６０が再構成された断片を参照バッファ１５８に格納した後に、断片再構成モジュール１６０は、再構成された断片をフレーム再組立モジュール１６２に供給することができる（１９４）。その一方で、断片再構成モジュール１６０が、再構成された断片が参照断片として使用可能ではないと判定する場合には（１９１の「ＮＯ」）、断片再構成モジュール１６０は、再構成された断片をフレーム再組立モジュール１６２に直接に供給することができる（１９４）。断片再構成モジュール１６０が再構成された断片をフレーム再組立モジュール１６２に供給した後に、エントロピ復号ユニット１５０は、量子化された係数の別の符号化された組および動きデータの別の符号化された組を復号することができる（１８２）。
【００９２】
図８Ｂは、フレーム再組立モジュール１６２の例示的な動作を示す流れ図である。当初に、フレーム再組立モジュール１６２は、現行フレームに関連する断片を断片再構成モジュール１６０から受け取る（２００）。説明のために、この受け取られる断片を、本明細書では「現行断片」と称する。現行断片を受け取った後に、フレーム再組立モジュール１６２は、現行断片に関連するタイルを識別する（２０２）。現行断片に関連するタイルを識別した後に、フレーム再組立モジュール１６２は、識別されたタイルに関連する現行フレーム内の位置に現行断片を格納する（２０４）。現行フレーム内の位置への現行断片の格納は、効果的に、現行断片を現行フレームに「はめ込む」ことができる。
【００９３】
フレーム再組立モジュール１６２が、タイルの識別された組に関連する現行フレーム内の位置に現行断片を格納した時に、フレーム再組立モジュール１６２は、現行フレームに関連するすべての断片が現行フレームにコピーされたかどうかを判定することができる（２０６）。現行フレームに関連するすべての断片が現行フレームにコピーされている場合には（２０６の「ＹＥＳ」）、フレーム再組立バッファ１６４は、現行フレームを出力することができる（２０８）。現行フレームを出力した後に、フレーム再組立モジュール１６２は、ループバックし、現行フレームの断片をもう一度受け取ることができる（２００）。そうではなく、現行フレームに関連するすべての断片が現行フレームにコピーされてはいない場合には（２０６の「ＮＯ」）、フレーム再組立モジュール１６２は、ループバックし、別の断片を受け取ることができる（２００）。
【００９４】
図９は、プリプロセッサ１０（図１）の例示的な詳細を示すブロック図である。図９の例では、プリプロセッサ１０は、フレーム入力バッファ２２０を含む。フレーム入力バッファ２２０は、ビデオフレームの１つまたは複数の非符号化シーケンスを受け取り、格納することができる。さらに、プリプロセッサ１０は、デインタレーシング動き推定モジュール（「ＤＩＭＥＭ」）２２１を含むことができる。ＤＩＭＥＭ  ２２１を、インタレース式ビデオフレームをデインターフェースするプロセスの一部として使用することができる。たとえば、偶数番号のフレームは、偶数番号の行のビデオデータを含むことができ、奇数番号のフレームは、奇数番号の行のビデオデータを含むことができる。この例では、ＤＩＭＥＭ  ２２１は、現行偶数番号フレームに続く奇数番号インタレース式フレーム内のブロックごとに次のステップを実行することによって、デインタレースされた偶数番号のフレームについてデインタレーシング動き推定動作を実行することができる。
【００９５】
（１）現行ブロックを近似するブロックについて、現行ブロックに伴う先行する奇数番号のインタレース式フレーム内のブロックの周囲の先行する奇数番号のインタレース式フレームの区域を探索し、
（２）そのようなブロックが見つかる場合には、識別されたブロックと現行ブロックとの間の変位を示す動きベクトルを生成する。
【００９６】
同様に、この例では、ＤＩＭＥＭ  ２２１は、現行奇数番号フレームに続く偶数番号フレーム内のブロックごとに次のステップを実行することによって、デインタレースされた奇数番号のフレームについてデインタレーシング動き推定動作を実行することができる。
【００９７】
（１）現行ブロックを近似するブロックについて現行ブロックに伴う先行する偶数番号のフレーム内のブロックの周囲の先行する偶数番号のフレームの区域を探索し、
（２）そのようなブロックが見つかる場合には、識別されたブロックと現行ブロックとの間の変位を示す動きベクトルを生成する。
【００９８】
プリプロセッサ１０内のタイル識別モジュール２２２は、フレーム入力バッファ２２０に格納されたビデオフレームのシーケンス内のビデオフレームのタイルの組を識別するのに、ＤＩＭＥＭ  ２２１によって生成された動きベクトルを使用することができる。タイル識別モジュール１９０に似て、タイル識別モジュール２２２は、ビデオフレームのシーケンス内のビデオフレームのタイルの組を識別するのにさまざまな技法を使用することができる。たとえば、タイル識別モジュール２２２は、ビデオフレームのシーケンス内のビデオフレームごとにパーティションアクティビティマップを生成することができる。この例では、その後、タイル識別モジュール２２２は、コンポジットパーティションアクティビティマップを生成するのにパーティションアクティビティマップを使用することができる。次に、タイル識別モジュール２２２は、ｐフレームまたはｂフレームとして符号化されるべきビデオフレームのそれぞれのタイルの１つまたは複数の組を識別するのに、コンポジットパーティションアクティビティマップを使用することができる。タイル識別モジュール２２２は、タイル識別モジュール１９０に似た形で、タイルの１つまたは複数の組を識別するのにコンポジットパーティションアクティビティマップを使用することができる。タイル識別モジュール２２２がタイルの組を識別する時に、タイル識別モジュール２２２は、タイルの組のタイル記述情報を生成することができる。タイル記述情報は、タイル組インデックス値、フレーム内のタイルの組の位置、およびタイルの形状を示すことができる。
【００９９】
タイル識別モジュール２２２が、フレームのタイルの組を識別し、関連するタイル記述情報を生成した後に、プリプロセッサ１０内の断片抽出モジュール２２４は、各フレームから、識別されたタイルに関連する断片を抽出することができる。断片抽出モジュール２２４が、タイルの識別された組のうちの１つに含まれるタイルに関連する断片を抽出する時に、断片抽出モジュール２２４は、その断片の断片識別情報を生成することができる。断片の断片識別情報は、断片がそこから抽出されたフレーム番号と、断片に関連するタイルがそのメンバであるタイルの組に関連するタイル組インデックス値とを指定することができる。次に、断片抽出モジュール２２４は、抽出された断片およびタイル識別情報を断片バッファ２２６に格納することができる。
【０１００】
断片抽出モジュール２２４が、抽出された断片を断片バッファ２２６に格納した後に、一連の前処理動作モジュール２２８Ａから２２８Ｎ（集合的に「前処理動作モジュール２２８」）は、抽出された断片に対してビデオ前処理動作を実行することができる。たとえば、前処理動作モジュール２２８Ａは、コントラスト調整動作を実行することができ、前処理動作モジュール２２８Ｂは、ノイズリダクション動作を実行することができ、前処理動作モジュール２２８のうちの他のものは、他のビデオ前処理動作を実行することができる。前処理動作モジュール２２８のうちの最後の１つが断片に対して最後のビデオ前処理動作を実行した後に、前処理動作モジュール２２８のうちのこの最後の１つは、結果の断片を、結果の断片に関連する断片識別情報と一緒に前処理済み断片バッファ２３０に格納することができる。
【０１０１】
前処理動作モジュール２２８のうちの最後の１つが結果の断片を前処理済み断片バッファ２３０に格納した後に、デインタレーシング動き補償モジュール（ＤＩＭＣＭ）２２９は、断片をデインタレースする動作を実行することができる。たとえば、結果の断片が偶数番号のフレームに関連する場合に、ＤＩＭＣＭ  ２２９は、偶数番号のフレームに関連するデインタレースされた断片を生成するために、断片の各パーティションに対して次のステップを実行することができる。
【０１０２】
（１）前処理済み断片バッファ２３０に格納された断片のパーティションを識別するのに現行パーティションの動きベクトルを使用し、
（２）現行パーティションの動きベクトルに沿った中間点を判定し、
（３）識別された中間点に最も近い奇数番号の線上の位置にある現行偶数番号断片に現行パーティションの動きベクトルによって識別されるパーティションを加算し、
（４）現行パーティションが動きベクトルを有しない場合には、現行パーティションの現行位置にある現行偶数番号フレームの奇数番号線に現行パーティションをコピーする。
【０１０３】
同様に、結果の断片が奇数番号のフレームに関連する場合に、ＤＩＭＣＭ  ２２９は、奇数番号のフレームに関連するデインタレースされた断片を生成するために、断片の各パーティションに対して次のステップを実行することができる。
【０１０４】
（１）前処理済み断片バッファ２３０に格納された断片のパーティションを識別するのに現行パーティションの動きベクトルを使用し、
（２）現行パーティションに関連する動きベクトルに沿った中間点を判定し、
（３）識別された中間点に最も近い偶数番号の線上の位置の中間点にある現行奇数番号フレームに現行パーティションに関連する動きベクトルによって示されるパーティションを加算し、
（４）現行パーティションが動きベクトルを有しない場合には、現行断片の現行位置にある現行断片の偶数番号線に現行パーティションをコピーする。
【０１０５】
これらのステップに対する多数の変形形態が可能であることを了解されたい。このプロセスの終りに、ＤＩＭＣＭ  ２２９は、デインタレースされた断片の組を生成し終える。
【０１０６】
図９の例に示されているように、プリプロセッサ１０は、フレーム再組立モジュール２３２をも含むことができる。フレーム再組立モジュール２３２は、前処理済みピクチャバッファ２３０内のデインタレースされた断片を完全なデインタレースされたビデオフレームに再組立する。フレーム再組立モジュール２３２は、図８Ｂに示されたフレーム再組立モジュール１６２の例示的動作と同一またはこれに似た動作を使用して、前処理済みピクチャバッファ２３０内の断片を再組立することができる。フレーム再組立モジュール２３２が前処理済みピクチャバッファ２３０内のデインタレースされた断片を完全なデインタレースされたビデオフレーム／スライスに再組立した後に、フレーム再組立モジュール２３２は、完全なデインタレースされたビデオフレーム／スライスを符号器１６に出力することができる。
【０１０７】
いくつかの実施態様では、プリプロセッサ１０は、フレーム再組立モジュール２３２を含まない。そうではなく、ＤＩＭＣＭ  ２２９がデインタレースされた断片を生成する時に、ＤＩＭＣＭ  ２２９は、結果の断片ならびに関連する断片識別情報およびタイル識別情報を符号器１６に直接に出力することができる。さらに、これらの実施態様では、符号器１６は、パーティションマップモジュール３６、マップバッファ３８、タイル識別モジュール４０、または断片抽出モジュール４２を含まないものとすることができる。これらの実施態様では、符号器１６は、従来の符号器として動作し、プリプロセッサ１０によって供給される各断片を別々の従来のビデオフレームとして符号化することができる。しかし、これらの実施態様では、出力モジュール５８が断片の１つに関連する符号化されたデータを出力する時に、出力モジュール５８は、断片のその１つに関するプリプロセッサ１０によって生成された断片識別情報を出力することができる。さらに、出力モジュール５８は、プリプロセッサ１０によって生成されたタイル記述情報を出力することができる。
【０１０８】
図１０は、プリプロセッサ１０（図９）の例示的な動作を示す流れ図である。当初に、プリプロセッサ１０は、ビデオフレームのシーケンスを受け取る（２５０）。プリプロセッサ１０が、インタレース式ビデオフレームのシーケンスを受け取る時に、プリプロセッサ１０は、インタレース式ビデオフレームのシーケンスをフレーム入力バッファ２２０に格納することができる（２５２）。次に、ＤＩＭＥＭ  ２２１は、デインタレーシング動き推定動作を実行することができる（２５３）。ＤＩＭＥＭ  ２２１がデインタレーシング動き推定動作を実行する時に、ＤＩＭＥＭ  ２２１は、動きベクトルを生成することができる。タイル識別モジュール２２２は、ビデオフレームのシーケンス内のビデオフレームのタイルの組を識別するのに動きベクトルを使用することができる（２５４）。タイル識別モジュール２２２がビデオフレームのシーケンスのタイルの組を識別した後に、タイル識別モジュール２２２は、タイルの組のそれぞれのタイル記述情報を生成することができる（２５５）。
【０１０９】
次に、断片抽出モジュール２２４は、識別されたタイルに関連する断片をビデオフレームのシーケンス内の各ビデオフレームから抽出することができる（２５６）。断片を抽出した後に、断片抽出モジュール２２４は、抽出された断片のそれぞれの断片識別情報を生成することができる（２５８）。次に、断片抽出モジュール２２４は、抽出された断片を断片バッファ２２６に格納することができる（２６０）。
【０１１０】
断片抽出モジュール２２４が抽出された断片を断片バッファ２２６に格納した後に、前処理動作モジュール２２８は、断片に対して１つまたは複数の前処理動作を実行することができる（２６２）。次に、前処理動作モジュール２２８のうちの最後の１つは、結果の前処理された断片を前処理済み断片バッファ２３０に格納することができる（２６３）。次に、ＤＩＭＣＭ  ２２９は、前処理済み断片バッファ２３０に格納された参照断片に基づいて、現行ビデオフレームのタイルに関するデインタレーシング動き補償動作を実行することができる（２６４）。デインタレーシング動き補償動作の結果として、ＤＩＭＣＭ  ２２９によって作られる断片は、デインタレースされる。次に、フレーム再組立モジュール２３２は、前処理済みピクチャバッファ２３０内のデインタレースされた前処理された断片を完全なビデオフレーム／スライスに再組立することができる（２６６）。いくつかの実施態様では、ステップ２６６を省略できることを理解されたい。
【０１１１】
図１１は、復号器１８（図１）の例示的な詳細の代替の組を示すブロック図である。図１１の例では、復号器１８は、完全なビデオフレームを含むメディアオブジェクトを受け取る。たとえば、復号器１８は、伝統的に符号化されたＨ．２６４／ＡＶＣデータ、ＭＰＥＧ−４、または別のメディアコーディング標準規格を含むメディア流れまたはメディアファイルを受け取ることができる。図２に示された符号器１６の例示的な詳細は、ビデオフレームの断片を含むメディアオブジェクトを出力するので、図１１に示された復号器１８の例示的詳細は、図２に示された符号器１６の例示的詳細と互換でない場合がある。
【０１１２】
図１１の例では、復号器１８がメディアオブジェクトを受け取る時に、エントロピ復号ユニット１５０は、メディアオブジェクト内で符号化されたビデオフレームのタイルの１つまたは複数の組に関連するメディアオブジェクトの諸部分を識別するのに１つまたは複数の動作を実行することができる。メディアオブジェクトのこれらの部分を識別した後に、エントロピ復号ユニット１５０は、メディアオブジェクトの識別された部分を復号することができる。この形で、エントロピ復号ユニット１５０は、ビデオフレームおよび動きデータの残りの部分を符号化されたままにしながら、断片の組およびそれらの断片に関連する動きデータを復号することができる。
【０１１３】
受け取られたメディアオブジェクトの符号化フォーマットおよびおそらくは他の要因に応じて、エントロピ復号ユニット１５０は、さまざまな形でこれらの動作を実行することができる。たとえば、メディアオブジェクトは、そのメディアオブジェクトに関する全般的情報（たとえば、フレームレート、フレームのサイズなど）を示す符号化されたシーケンスヘッダを含むことができる。さらに、この例では、メディアオブジェクトは、ビデオデータの特定のスライスに関する情報（たとえば、スライスの位置、スライス内のパーティションの個数など）を示す符号化されたスライスヘッダを含むことができる。メディアオブジェクトは、特定のパーティションに関する情報（たとえば、動きデータ、パーティションに関連する量子化された係数の符号化された組内のデータのビット数など）を示す符号化されたパーティションヘッダをも含むことができる。図１１の例に示されているように、エントロピ復号ユニット１５０は、シーケンスヘッダ復号モジュール２８０を含むことができる。シーケンスヘッダ復号モジュール２８０は、メディアオブジェクト内のシーケンスヘッダに対してエントロピ復号動作を実行することができる。次に、スライスヘッダ復号モジュール２８４は、符号化されたスライスヘッダを表すメディアオブジェクトの部分を識別するのに、復号されたシーケンスヘッダのうちの１つまたは複数を使用する。符号化されたスライスヘッダを表すメディアオブジェクトの部分を識別した後に、スライスヘッダ復号モジュール２８４は、入力メディアオブジェクトの符号化されたスライスヘッダに対してエントロピ復号動作を実行する。パーティションヘッダ復号モジュール２８６は、符号化されたパーティションヘッダを表すメディアオブジェクトの部分を識別するのに、復号されたスライスヘッダを使用する。符号化されたパーティションヘッダを表すメディアオブジェクトの部分を識別した後に、パーティションヘッダ復号モジュール２８６は、入力メディア流れの符号化されたパーティションヘッダに対してエントロピ復号動作を実行する。
【０１１４】
前の段落の例を続けると、次に、エントロピ復号ユニット１５０内のタイル識別モジュール２８８は、タイルに関連する符号化されたビデオフレームの符号化されたパーティションを識別するのに、復号されたパーティションヘッダを使用することができる。たとえば、タイル識別モジュール２８８は、メディアオブジェクト内のビデオフレームのシーケンス内のビデオフレームのパーティションアクティビティマップを生成するのに、パーティションヘッダ内で示される動きデータを使用することができる。次に、タイル識別モジュール２８８は、コンポジットパーティションアクティビティマップを生成するのにパーティションアクティビティマップを使用することができる。次に、タイル識別モジュール２８８は、タイル識別モジュール９０およびタイル識別モジュール２２２に関して上で説明した形で、ＰフレームまたはＢフレームとして復号されるビデオフレームのシーケンス内のビデオフレームのタイルの１つまたは複数の組を識別するのにコンポジットパーティションアクティビティマップを使用することができる。タイル識別モジュール２８８がタイルの組を識別した後に、タイル識別モジュール２８８は、タイルの組のタイル記述情報を生成することができる。前に言及したタイル記述情報に似て、タイル識別モジュール２８８によって生成されるタイル記述情報は、タイル組インデックス値、タイルの位置などを示すことができる。
【０１１５】
タイル識別モジュール２８８が、タイルの１つまたは複数の組を識別した時に、パーティションデータ復号モジュール２９０は、フレームごとに、タイルの識別された組のうちの１つの組のタイル内にある各符号化されたパーティションにエントロピ復号動作を適用することができる。この例では、パーティション復号モジュール２９０は、タイル内にあるのではない符号化されたパーティションにはエントロピ復号動作を適用しない。この形で、パーティションデータ復号モジュール２９０は、各フレーム内のタイルごとに量子化された係数の組を復号する。「断片」は、１つのタイル内に含まれるピクチャなので、パーティションデータ復号モジュール２９０は、効果的に、異なる断片に関連する量子化された係数の組を復号する。パーティションデータ復号モジュール２９０が、断片に関連する量子化された係数の組を復号した後に、パーティション復号モジュール２９０は、断片の断片識別情報の組を生成する。前に言及した断片識別情報に似て、パーティションデータ復号モジュール２９０によって生成される断片識別情報は、断片が示されたフレームから抽出されたことを示すフレームインデックス値と、断片がタイルの特定の組のタイル内に含まれるピクチャであることを示すタイル組インデックス値とを示すことができる。
【０１１６】
図１１の例では、逆量子化モジュール２９２は、現行断片に関連する量子化された係数の組に対して逆量子化動作を実行することによって、逆量子化された係数の組を生成することができる。次に、逆変換モジュール２９４は、現行断片に関連する逆量子化された係数の組に対して逆変換動作を実行することによって、現行断片に関連する復号された残差ピクチャを生成することができる。さらに、動き補償ユニット２９６は、参照バッファ２９８内の参照断片と現行断片に関連する動きデータとを使用して、現行断片に関連する予測断片を生成することができる。動き補償ユニット２９６が、現行断片に関連する予測断片を生成し、逆変換モジュール２９４が、現行断片に関連する復号された残差断片を生成した後に、断片再構成モジュール３００は、予測断片および復号された残差断片を加算することによって、現行断片に関連する再構成された断片を生成することができる。次に、断片再構成モジュール３００は、再構成された断片を参照バッファ２９８に格納することができる。
【０１１７】
図１１の例には示されていないが、復号器１８は、参照バッファ２９８に格納された断片から完全なフレームを再構成するフレーム再構成モジュールを含むことができる。このフレーム再構成モジュールは、参照バッファ２９８に格納された断片から完全なフレームを再構成するのに、図８Ｂに示された例示的な動作を使用することができる。
【０１１８】
図１２は、図１１に提示された復号器１８の代替実施態様の例示的な動作を示す流れ図である。当初に、エントロピ復号ユニット１５０は、ビデオフレームの符号化されたシーケンスを含むを含むメディアオブジェクトを受け取る（３１０）。次に、エントロピ復号ユニット１５０内のシーケンスヘッダ復号モジュール２８０は、メディアオブジェクト内のシーケンスヘッダに対してエントロピ復号動作を実行する（３１２）。次に、スライスヘッダ復号モジュール２８４は、メディアオブジェクト内のスライスヘッダの位置を識別するのに、復号されたパーティションヘッダを使用することができる（３１４）。次に、スライスヘッダ復号モジュール２８４は、識別されたスライスヘッダを復号することができる（３１６）。次に、パーティションヘッダ復号モジュール２８６は、メディアオブジェクト内のパーティションヘッダの位置を識別するのに、復号されたスライスヘッダを使用することができる（３１８）。次に、パーティションヘッダ復号モジュール２８６は、識別されたパーティションヘッダを復号することができる（３２０）。
【０１１９】
パーティションヘッダ復号モジュール２８６が、識別されたパーティションヘッダを復号した後に、タイル識別モジュール２８８は、ビデオフレームのシーケンス内のビデオフレームのタイルの組を識別するのに、復号されたパーティションヘッダを使用する（３２２）。上で述べたように、タイル識別モジュール２８８は、ビデオフレームのシーケンスのビデオフレームのタイルの組を識別するのに、さまざまな異なる技法を使用することができる。代替実施態様では、タイル識別モジュール２８８は、メディアオブジェクトは別々の、タイルの組を示すデータを受け取ることができる。タイル識別モジュール２８８は、ビデオフレームのシーケンス内のビデオフレームのタイルの組を識別するのに、このデータを使用することができる。タイル識別モジュール２８８が、タイルの組を識別した後に、タイル識別モジュール２８８は、タイルの識別された組のそれぞれのタイル記述情報を生成することができる（３２４）。
【０１２０】
次に、パーティションデータ復号モジュール２９０は、識別されたタイル内にあるパーティションの符号化された版を復号する（３２６）。パーティションの符号化された版の復号の結果として、パーティションデータ復号モジュール２９０は、異なる断片に関連する量子化された係数の組を生成している。パーティションデータ復号モジュール２９０が、パーティションの符号化された版を復号した後に、パーティションデータ復号モジュール２９０は、復号されたパーティションデータ、動きデータ、ピクチャ識別情報（「ＰＩＩ」）、およびタイル記述情報（「ＴＤＩ」）を出力することができる（３３０）。
【０１２１】
図１３は、ディスプレイバッファ２４に断片を格納するためのバッファ充てんモジュール２２（図１）の例示的な動作を示す流れ図である。この動作を実行する時に、バッファ充てんモジュール２２は、効果的にフレーム再組立モジュールとして働く。
【０１２２】
図１３の例の動作によれば、ディスプレイバッファ２４は、３つのバッファすなわちＢ0、Ｂ1、およびＢ2を含む。この３つのバッファの使用は、バッファ充てんモジュール２２が、ディスプレイバッファＢ0、Ｂ1、およびＢ2内で完全なフレームを再構成することを可能にすることができる。したがって、バッファ充てんモジュール２２が、図１３の例示的動作を使用する時には、復号モジュール１８がフレーム再組立モジュール１６２を含むかこれを使用することが不必要である場合がある。
【０１２３】
当初に、バッファ充てんモジュール２２は、フレームＦXに関連する断片の組を断片バッファから取り出す（３５０）。フレームＦXに関連する断片の組を取り出した後に、バッファ充てんモジュール２２は、フレームＦXがビデオフレームのシーケンスの最初のフレームであるかどうかを判定する（３５２）。
【０１２４】
バッファ充てんモジュール２２が、ＦXがビデオフレームのシーケンスの最初のフレームであると判定する場合には（３５２の「ＹＥＳ」）、バッファ充てんモジュール２２は、フレームＦXに関連する断片のそれぞれをバッファＢ(X mod 3)に書き込む（３５４）。フレームＦXに関連する断片のそれぞれをバッファＢ(X mod 3)内の適当な位置に書き込むために、バッファ充てんモジュール２２は、断片に関連するタイル記述情報を識別するのに、断片に関連する断片識別情報を使用することができる。次に、バッファ充てんモジュール２２は、バッファＢ(X mod 3)内の適当な位置を識別するのにタイル記述情報内で示される位置を使用することができる。
【０１２５】
次に、バッファ充てんモジュール２２は、バッファＢ(X mod 3)の内容をバッファＢ((X+1) mod 3)にコピーする（３５６）。バッファ充てんモジュール２２が、バッファＢ(X mod 3)の内容をバッファＢ((X+1) mod 3)にコピーした後に、ディスプレイユニット２６は、バッファＢ((X+2) mod 3)の内容を表示することができる（３５８）。ディスプレイユニット２６が、バッファＢ((X+2) mod 3)の内容を表示した後に、バッファ充てんモジュール２２は、Ｘの値をインクリメントすることができる（３６０）。その後、バッファ充てんモジュール２２は、ループバックし、フレームＦXに関連する断片を取り出すことができる（３５０）。バッファ充てんモジュール２２は、Ｘをインクリメントしたので、バッファ充てんモジュール２２は、バッファ充てんモジュール２２が前にディスプレイバッファ２４に追加したフレームに続くフレームに関連する断片を取り出す。
【０１２６】
その一方で、バッファ充てんモジュール２２が、フレームＦXがビデオフレームのシーケンスの最初のフレームではないと判定する場合には（３５２の「ＮＯ」）、バッファ充てんモジュール２２は、フレームＦXに関連する断片のそれぞれをバッファＢ(X mod 2)内の適当な位置に書き込む（３６２）。バッファ充てんモジュール２２が、フレームＦXに関連する断片のそれぞれをバッファＢ(X mod 2)内の適当な位置に書き込んだ後に、ディスプレイユニット２６は、バッファＢ((X+1) mod 2)の内容を表示することができる（３６４）。ディスプレイユニット２６が、バッファＢ((X+1) mod 2)の内容を表示した後に、バッファ充てんモジュール２２は、Ｘの値をインクリメントすることができる（３６０）。その後、バッファ充てんモジュール２２は、ループバックし、フレームＦXに関連するピクチャを取り出すことができる（３５０）。
【０１２７】
本開示は、３つのバッファを参照して図１３を説明するが、より多数のバッファを用いる動作が存在し得ることに留意されたい。
【０１２８】
本明細書で説明された技法を、ハードウェア、ソフトウェア、ファームウェア、またはその任意の組合せで実施することができる。モジュールまたはコンポーネントとして説明されたすべての特徴を、一体化された論理デバイス内で一緒にまたは別個だがインターオペラブルな論理デバイスとして別々に実施することができる。ソフトウェアで実施される場合に、本技法を、実行された時に上で説明した方法のうちの１つまたは複数を実行する命令を備えるコンピュータ可読媒体によって少なくとも部分的に実現することができる。コンピュータ可読媒体は、パッケージング材料を含むことができるコンピュータプログラム製品の一部を形成することができる。コンピュータ可読媒体は、シンクロナスダイナミックランダムアクセスメモリ（ＳＤＲＡＭ）などのランダムアクセスメモリ（ＲＡＭ）、読取り専用メモリ（ＲＯＭ）、不揮発性ランダムアクセスメモリ（ＮＶＲＡＭ）、電気的消去可能プログラマブル読取り専用メモリ（ＥＥＰＲＯＭ）、フラッシュメモリ、磁気または光のデータ記憶媒体、および類似物を備えることができる。本技法を、それに加えてまたはその代わりに、命令またはデータ構造の形のコードを担持するか通信し、コンピュータによってアクセスし、読み取り、かつ／または実行することのできる、コンピュータ可読通信媒体によって少なくとも部分的に実現することができる。
【０１２９】
コードを、１つまたは複数のディジタル信号プロセッサ（ＤＳＰ）、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、または他の同等の集積回路もしくはディスクリート論理回路など、１つまたは複数のプロセッサによって実行することができる。したがって、用語「プロセッサ」は、本明細書で使用される時に、本明細書で説明される技法の実施態様に適切な、前述の構造または任意の他の構造のいずれをも指すことができる。さらに、いくつかの態様では、本明細書で説明した機能性を、符号化および復号のために構成され、または組み合わされたビデオ符号器−復号器（コーデック）内に組み込まれる、専用のソフトウェアモジュールまたはハードウェアモジュール内で提供することができる。
【０１３０】
さまざまな実施態様を説明した。たとえば、実施態様を、ビデオフレームに関して説明した。しかし、前述の説明および後続の特許請求の範囲は、ビデオスライスまたは任意のキャプチャレートでスチールカメラから来る時の連続イメージの組に適用可能とすることもできる。さらに、断片参照ピクチャを使用するビデオフレームの符号化および復号の技法を、主に動き補償コーディング技法の背景で説明した。しかし、本明細書で説明された断片参照ピクチャの使用は、スケーリング、エッジ強調、または類似物など、他の処理またはコーディングの背景でも使用され得る。したがって、参照断片のうちの１つまたは複数に基づく現行ビデオフレームの現行タイルの動き補償の実行として本明細書で説明されたユニット、モジュール、または回路網を、その代わりに、参照断片のうちの１つまたは複数に基づいて現行ビデオフレームの現行タイルのスケーリングまたはエッジ強調（またはおそらくは別のビデオ処理技法）を実行するユニット、モジュール、または回路網とすることができる。上記および他の実施態様は、次の特許請求の範囲に含まれる。
【図１】
2011526460.tif 000005
【図２】
2011526460.tif 000006
【図３】
2011526460.tif 000007
【図４】
2011526460.tif 000008
【図５Ａ】
2011526460.tif 000009
【図５Ｂ】
2011526460.tif 000010
【図５Ｃ】
2011526460.tif 000011
【図５Ｄ】
2011526460.tif 000012
【図６Ａ】
2011526460.tif 000013
【図６Ｂ】
2011526460.tif 000014
【図７】
2011526460.tif 000015
【図８Ａ】
2011526460.tif 000016
【図８Ｂ】
2011526460.tif 000017
【図９】
2011526460.tif 000018
【図１０】
2011526460.tif 000019
【図１１】
2011526460.tif 000020
【図１２】
2011526460.tif 000021
【図１３】
2011526460.tif 000022
【国際調査報告】
2011526460.tif 000023
2011526460.tif 000024
2011526460.tif 000025
2011526460.tif 000026