(57)【特許請求の範囲】
【請求項１】
複数の映像フレームを符号化する方法であって、
前記映像フレームは、互いに重なり合わないターゲットブロックを有しており、
当該方法は、
重要度マップが量子化を調整することによって各映像フレーム内の符号化すべき各ターゲットブロックの符号化品質に影響を与えるように、前記重要度マップを用いて前記複数の映像フレームを符号化する過程、
を備え、前記重要度マップが：
時間的情報及び空間的情報を用いて当該重要度マップを設定すること；ならびに、
（ｉ）当該重要度マップが高い数値をとるブロックであるほど、ブロック量子化パラメータ（ＱＰ）がフレーム量子化パラメータＱＰｆｒａｍｅに比べて小さくされることで、これらのブロックについてはより高い品質となるように、かつ、（ｉｉ）当該重要度マップが低い数値をとるターゲットブロックであるほど、前記ブロック量子化パラメータが前記フレーム量子化パラメータＱＰｆｒａｍｅに比べて大きくされることで、これらのブロックについてはより低い品質となるように、計算によって、前記複数の映像フレームのうちのある映像フレームのどの部分が人間の知覚にとって最も気付き易いのかを当該重要度マップに示させること；
によって構成され、前記時間的情報が、
時間的に周期的な刺激に対する人間の視覚系の応答を測定してどのターゲットブロックが観測者である人間にとって時間的に最も気付き易いかを示す時間的コントラスト感度関数（ＴＣＳＦ）、および、
どのターゲットブロックが前景データに相当するかを示す真の動きベクトルマップ（ＴＭＶＭ）
により提供されて、前記ＴＣＳＦは、前景データとして特定されたターゲットブロックについてのみ有効とされ、
前記ＴＣＳＦの時間的周波数は、動きベクトルの大きさとフレームレートとを用いて求められる速度の近似を、前記ターゲットブロックとその参照ブロックとの間の色空間領域における平均構造的類似度（ＳＳＩＭ）を用いて求められる波長の近似で除することによって算出される、方法。
【請求項２】
請求項１に記載の方法において、前記空間的情報が、ルールに基づく空間的複雑度マップ（ＳＣＭ）により提供されて、その最初のステップが、前記フレーム内のどのターゲットブロックが当該フレーム内の平均ブロック分散ｖａｒｆｒａｍｅよりも大きい分散を有するかを決定することであり、
前記平均ブロック分散ｖａｒｆｒａｍｅよりも大きい分散を有するブロックに対して、前記フレーム量子化パラメータＱＰｆｒａｍｅよりも高い量子化パラメータ（ＱＰ）値を振り当て、このブロック量子化パラメータ（ＱＰ）の振当量ＱＰｂｌｏｃｋは、そのブロックのブロック分散ｖａｒｂｌｏｃｋ、前記平均ブロック分散ｖａｒｆｒａｍｅ、量子化パラメータ上限ＱＰｍａｘおよび前記フレーム量子化パラメータＱＰｆｒａｍｅを用いて、QＰｂｌｏｃｋ＝（（ｖａｒｂｌｏｃｋ−ｖａｒｆｒａｍｅ）／ｖａｒｂｌｏｃｋ）×（ＱＰｍａｘ−ＱＰｆｒａｍｅ）＋ＱＰｆｒａｍｅとなるように線形的に増減される、方法。
【請求項３】
請求項２に記載の方法において、前記フレーム内の平均ブロック分散ｖａｒｆｒａｍｅよりも分散の大きいブロックは、そのブロック量子化パラメータ（ＱＰ）である前記振当量ＱＰｂｌｏｃｋが、前記ＴＭＶＭがターゲットブロックを前景データとして特定し且つ前記ＴＣＳＦのこのブロックについてのコントラスト感度対数値が０．５未満である場合には前記振当量ＱＰｂｌｏｃｋが２増加するように、前記ＴＣＳＦ及び前記ＴＭＶＭによりさらに洗練化される、方法。
【請求項４】
請求項２に記載の方法において、前記ＳＣＭは、さらに、ブロック平均輝度が１７０超の輝度か又は６０未満の輝度のターゲットブロックのブロック量子化パラメータである前記振当量ＱＰｂｌｏｃｋがＱＰｍａｘに調節し直される輝度マスキングを含む、方法。
【請求項５】
請求項２に記載の方法において、前記ＳＣＭは、さらに、前記符号化された映像の品質レベルに基づく前記量子化パラメータ上限ＱＰｍａｘの動的な決定を含み、
この動的な決定では、イントラ（Ｉ）フレーム内のターゲットブロックの平均構造的類似度（ＳＳＩＭ）算出結果を前記Ｉフレームの平均ブロック分散ｖａｒｆｒａｍｅと共に用いて、品質が測定され、
前記測定された品質が低いほど、前記量子化パラメータ上限ＱＰｍａｘの数値が前記フレーム量子化パラメータＱＰｆｒａｍｅにより近づくように減らされる、方法。
【請求項６】
請求項２に記載の方法において、分散が６０未満であるブロックに対して、これらの領域における高品質符号化を確実にするために、前記ブロック分散が小さいほど前記振当量ＱＰｂｌｏｃｋの数値が低くなるように、決められた低い量子化パラメータ（ＱＰ）の値である前記振当量ＱＰｂｌｏｃｋが振り当てられる、方法。
【請求項７】
請求項６に記載の方法において、分散が６０未満であるブロックに対する前記量子化パラメータ（ＱＰ）の値である前記振当量ＱＰｂｌｏｃｋは、最初に、Ｉフレームの当該ブロックについて決められ、その後、Ｐフレーム及びＢフレームにおける当該ブロックに相当するブロックについてはＩフレームのフレームＱＰ値のＰフレームのフレームＱＰ値に対する比率であるｉｐｒａｔｉｏパラメータ及びＰフレームのＱＰ値の、ＢフレームのＱＰ値に対する比率であるｐｂｒａｔｉｏパラメータを用いて決められる、方法。
【請求項８】
請求項６に記載の方法において、分散が６０以上で、平均ブロック分散以下であるブロックは、当該ブロックについて、
前記ブロック量子化パラメータ（ＱＰ）の初めの推定値である前記振当量ＱＰｂｌｏｃｋが現在のブロックの左、左上、右および右上の既に符号化済みの近傍ブロックの量子化パラメータ（ＱＰ）の値を平均することによって算出されて、且つ、
前記現在のブロックの前記ＳＳＩＭの推定ＳＳＩＭｅｓｔが前記現在のブロックの左、左上、右および右上の既に符号化済みの近傍ブロックのＳＳＩＭ値から算出されて、且つ、
ＳＳＩＭｅｓｔが０．９未満の場合、品質向上が必要か否かの判定において品質向上が必要と判定され、前記算出された振当量ＱＰｂｌｏｃｋの数値が２減少されるように、品質向上の処理がなされる、方法。
【請求項９】
請求項８に記載の方法において、前記品質向上は、前記ＴＭＶＭにより前景データとして特定されて且つ前記ＴＣＳＦのコントラスト感度対数値が０．８超であるブロックにのみ適用される、方法。
【請求項１０】
請求項１に記載の方法において、前記ＴＣＳＦは、現在のフレームについての当該ＴＣＳＦが符号化された過去のフレームにおけるＴＣＳＦマップの重み付き平均であるように且つより時間的に近い過去の、符号化された過去のフレームがより大きい重み付けを受けるように、複数のフレームにわたって算出される、方法。
【請求項１１】
請求項１に記載の方法において、前記ＴＭＶＭは、前景データの場合にのみ１に設定される、方法。
【請求項１２】
請求項１１に記載の方法において、前景データは、所与のターゲットブロックについてのエンコーダ動きベクトルと当該ブロックについてのグローバル動きベクトルとの差分を算出し、特定値より大きい差分を有するブロックが前景データであると判断されることによって特定される、方法。
【請求項１３】
請求項１２に記載の方法において、前景データとして特定されたデータブロックについて、前記グローバル動きベクトルから前記エンコーダ動きベクトルが減算されることによって差分動きベクトルを得て、前記ＴＣＳＦの時間的周波数を算出するのに用いられる速度ｖが、この差分動きベクトルの大きさ｜ＤＭＶ｜、この差分動きベクトルにより指し示される参照フレームと現在のフレームとの間のフレームの数Ｎおよびフレームレートを用いて、ｖ＝｜ＤＭＶ｜×フレームレート／Ｎと算出される、方法。
【請求項１４】
請求項１に記載の方法において、前記ＴＣＳＦは、エンコーダからの動きベクトルＭＶを用いて前記ＴＣＳＦへの入力である時間的周波数を算出するための速度ｖをｖ＝｜ＭＶ｜×フレームレート／Ｎ（式中、フレームレートはその映像が生成された１秒当たりのフレームの数であり、Ｎは前記動きベクトルにより指し示される参照フレームと現在のフレームとの間のフレームの数である）より算出する、方法。
【請求項１５】
請求項２に記載の方法において、前記重要度マップが前記時間的情報及び前記空間的情報で設定されたものである場合、当該重要度マップは統合化された重要度マップ（ＴＣＳＦおよびＳＣＭの両方からの情報を含む重要度マップ）である、方法。
【請求項１６】
映像データを符号化するシステムであって、
重要度マップを用いて複数の映像フレームを符号化するコーデックであって、当該映像フレームは、互いに重なり合わないターゲットブロックを有している、コーデック、
を備え、前記重要度マップは、量子化を調整することによって各映像フレーム内の符号化すべき各ターゲットブロックの符号化品質に影響を与えるように構成されており、
前記重要度マップが：
時間的情報及び空間的情報を用いて当該重要度マップを設定すること；ならびに、
（ｉ）当該重要度マップが高い数値をとるブロックであるほど、ブロック量子化パラメータ（ＱＰ）がフレーム量子化パラメータＱＰｆｒａｍｅに比べて小さくされることで、これらのブロックについてはより高い品質となるように、かつ、（ｉｉ）当該重要度マップが低い数値をとるターゲットブロックであるほど、前記ブロック量子化パラメータが前記フレーム量子化パラメータＱＰｆｒａｍｅに比べて大きくされることで、これらのブロックについてはより低い品質となるように、計算によって、前記複数の映像フレームのうちのある映像フレームの、人間の知覚にとって最も気付き易い部分を当該重要度マップに示させること；
によって構成され、前記時間的情報が、
時間的に周期的な刺激に対する人間の視覚系の応答を測定してどのターゲットブロックが観測者である人間にとって時間的に最も気付き易いかを示す時間的コントラスト感度関数（ＴＣＳＦ）および
どのターゲットブロックが前景データに相当するかを示す真の動きベクトルマップ（ＴＭＶＭ）；
により提供されて、前記ＴＣＳＦは、前景データとして特定されたターゲットブロックについてのみ有効とされ、
前記ＴＣＳＦの時間的周波数は、動きベクトルの大きさとフレームレートとを用いて求められる速度の近似を、前記ターゲットブロックとその参照ブロックとの間の色空間領域における平均構造的類似度（ＳＳＩＭ）を用いて求められる波長の近似で除することによって算出される、システム。
【請求項１７】
請求項１６に記載のシステムにおいて、前記空間的情報が、ルールに基づく空間的複雑度マップ（ＳＣＭ）により提供されて、その最初のステップが、前記フレーム内のどのターゲットブロックが当該フレーム内の平均ブロック分散ｖａｒｆｒａｍｅよりも大きい分散を有するかを決定することであり、
前記平均ブロック分散ｖａｒｆｒａｍｅよりも大きい分散を有するブロックに対して、前記フレーム量子化パラメータＱＰｆｒａｍｅよりも高い量子化パラメータ（ＱＰ）値を振り当て、このブロック量子化パラメータ（ＱＰ）の振当量ＱＰｂｌｏｃｋは、そのブロックのブロック分散ｖａｒｂｌｏｃｋ、前記平均ブロック分散ｖａｒｆｒａｍｅ、量子化パラメータ上限ＱＰｍａｘおよび前記フレーム量子化パラメータＱＰｆｒａｍｅを用いて、QＰｂｌｏｃｋ＝（（ｖａｒｂｌｏｃｋ−ｖａｒｆｒａｍｅ）／ｖａｒｂｌｏｃｋ）×（ＱＰｍａｘ−ＱＰｆｒａｍｅ）＋ＱＰｆｒａｍｅとなるように線形的に増減される、システム。
【請求項１８】
請求項１７に記載のシステムにおいて、前記フレーム内の平均ブロック分散ｖａｒｆｒａｍｅよりも分散の大きいブロックは、そのブロック量子化パラメータ（ＱＰ）である前記振当量ＱＰｂｌｏｃｋが、前記ＴＭＶＭがターゲットブロックを前景データとして特定し且つ前記ＴＣＳＦのこのブロックについてのコントラスト感度対数値が０．５未満である場合には前記振当量ＱＰｂｌｏｃｋが２増加するように、前記ＴＣＳＦ及び前記ＴＭＶＭによりさらに洗練化される、システム。
【請求項１９】
請求項１７に記載のシステムにおいて、前記ＳＣＭは、さらに、ブロック平均輝度が１７０超の輝度か又は６０未満の輝度のターゲットブロックのブロック量子化パラメータである前記振当量ＱＰｂｌｏｃｋがＱＰｍａｘに調節し直される輝度マスキングを含む、システム。
【請求項２０】
請求項１７に記載のシステムにおいて、前記ＳＣＭは、さらに、符号化された映像の品質レベルに基づく前記量子化パラメータ上限ＱＰｍａｘの動的な決定を含み、
この動的な決定では、イントラ（Ｉ）フレーム内のターゲットブロックの平均構造的類似度（ＳＳＩＭ）算出結果を前記Ｉフレームの平均ブロック分散ｖａｒｆｒａｍｅと共に用いて、品質が測定され、
測定された品質が低いほど、前記量子化パラメータ上限ＱＰｍａｘの数値が前記フレーム量子化パラメータＱＰｆｒａｍｅにより近づくように減らされる、システム。
【請求項２１】
請求項１７に記載のシステムにおいて、分散が６０未満であるブロックに対して、これらの領域における高品質符号化を確実にするために、前記ブロック分散が小さいほど前記振当量ＱＰｂｌｏｃｋの数値が低くなるように、決められた量子化パラメータ（ＱＰ）の値である前記振当量ＱＰｂｌｏｃｋが振り当てられる、システム。
【請求項２２】
請求項２１に記載のシステムにおいて、分散が６０未満であるブロックに対する前記低い量子化パラメータ（ＱＰ）の値である前記振当量ＱＰｂｌｏｃｋは、最初に、Ｉフレームについては決められ、その後、Ｐフレーム及びＢフレームにおける当該ブロックに相当するブロックについてはＩフレームのフレームＱＰ値のＰフレームのフレームＱＰ値に対する比率であるｉｐｒａｔｉｏパラメータ及びＰフレームのＱＰ値の、ＢフレームのＱＰ値に対する比率であるｐｂｒａｔｉｏパラメータを用いて決められる、システム。
【請求項２３】
請求項１７に記載のシステムにおいて、分散が６０以上で、平均ブロック分散以下であるブロックは、当該ブロックについて、
前記ブロック量子化パラメータ（ＱＰ）の初めの推定値である前記振当量ＱＰｂｌｏｃｋが現在のブロックの左、左上、右および右上の既に符号化済みの近傍ブロックの量子化パラメータ（ＱＰ）の値を平均することによって算出されて、且つ、
前記現在のブロックの前記ＳＳＩＭの推定ＳＳＩＭｅｓｔが前記現在のブロックの左、左上、右および右上の既に符号化済みの近傍ブロックのＳＳＩＭ値から算出されて、且つ、
ＳＳＩＭｅｓｔが０．９未満の場合、品質向上が必要か否かの判定において品質向上が必要と判定され、前記算出された振当量ＱＰｂｌｏｃｋの数値が２減少されるように、品質向上の処理がなされる、システム。
【請求項２４】
請求項２３に記載のシステムにおいて、前記品質向上は、前記ＴＭＶＭにより前景データとして特定されて且つ前記ＴＣＳＦのコントラスト感度対数値が０．８超であるブロックにのみ適用される、システム。
【請求項２５】
請求項１６に記載のシステムにおいて、前記ＴＣＳＦは、現在のフレームについての当該ＴＣＳＦが符号化された過去のフレームにおけるＴＣＳＦマップの重み付き平均であるように且つより時間的に近い過去の、符号化された過去のフレームがより大きい重み付けを受けるように、複数のフレームにわたって算出される、システム。
【請求項２６】
請求項１６に記載のシステムにおいて、前記ＴＭＶＭは、前景データの場合にのみ１に設定される、システム。
【請求項２７】
請求項２６に記載のシステムにおいて、前景データは、所与のターゲットブロックについてのエンコーダ動きベクトルと当該ブロックについてのグローバル動きベクトルとの差分を算出し、特定値より大きい差分を有するブロックが前景データであると判断されることによって特定される、システム。
【請求項２８】
請求項１６に記載のシステムにおいて、前景データとして特定されたデータブロックについて、前記データブロックについてのグローバル動きベクトルから前記データブロックについてのエンコーダ動きベクトルが減算されることによって差分動きベクトルを得て、前記ＴＣＳＦの時間的周波数を算出するのに用いられる速度ｖが、この差分動きベクトルの大きさ｜ＤＭＶ｜、この差分動きベクトルにより指し示される参照フレームと現在のフレームとの間のフレームの数Ｎおよびフレームレートを用いて、ｖ＝｜ＤＭＶ｜×フレームレート／Ｎと算出される、システム。
【請求項２９】
請求項１６に記載のシステムにおいて、前記ＴＣＳＦは、前記エンコーダからの動きベクトルＭＶを用いて前記ＴＣＳＦへの入力である時間的周波数を算出するための速度ｖをｖ＝｜ＭＶ｜×フレームレート／Ｎ（式中、フレームレートはその映像が生成された１秒当たりのフレームの数であり、Ｎは前記動きベクトルにより指し示される参照フレームと現在のフレームとの間のフレームの数である）より算出する、システム。
【請求項３０】
請求項１７に記載のシステムにおいて、前記重要度マップが前記時間的情報と前記空間的情報で設定されたものである場合、当該重要度マップは統合化された重要度マップ（ＴＣＳＦおよびＳＣＭの両方からの情報を含む重要度マップ）である、システム。
【発明の詳細な説明】
【関連出願】
【０００１】
本願は、2015年5月7日出願の米国仮特許出願第62/158,523号および2014年11月11日出願の米国仮特許出願第62/078,181号の利益を主張する。本願は、さらに、2014年11月4日出願の米国特許出願第14/532,947号の一部継続出願（ＣＩＰ）である。この米国特許出願第14/532,947号は、2014年3月10日出願の米国仮特許出願第61/950,784号および2014年9月11日出願の米国仮特許出願第62/049,342号の利益を主張する。これら参照した特許出願の全教示内容は、参照をもって本明細書に取り入れたものとする。
【背景技術】
【０００２】
映像圧縮は、デジタル映像データを、記憶時又は伝送時において少ないビット数を用いた形式で表現するプロセスであると考えられる。映像符号化は、映像データの空間的冗長性、時間的冗長性又は色空間冗長性を利用することにより圧縮を達成することができる。典型的に、映像圧縮プロセスは、映像データをフレームの集まりやペルの集まりなどの各部位に分割して、その映像内における冗長な部分を特定し、当該冗長な部分を元々の映像データで求められるよりも少ないビット数で表現し得る。データのこのような冗長性を利用することにより、より大きな圧縮を達成することができる。映像データを符号化フォーマットに変換するにはエンコーダが用いられ得る。そして、デコーダを用いることにより、符号化された映像を元々の映像データに匹敵する形態に変換することができる。エンコーダ／デコーダを実現するものがコーデックと称される。
【０００３】
標準のエンコーダ（標準エンコーダ）は、符号化にあたって、所与の映像フレームを、互いに重なり合わない複数の符号化単位すなわちマクロブロック（複数の連続するペルからなる矩形領域）に分割する。典型的に、マクロブロック（本明細書では、より包括的に「入力ブロック」や「データブロック」と称される）は、映像フレームの左から右の走査順序や上から下の走査順序で処理される。圧縮は、入力ブロックが符号化済みのデータを用いて予測・符号化されることで達成され得る。入力ブロックを、同じフレーム内の先に符号化されたブロックのうち、当該入力ブロックと空間的に隣接するサンプルを用いて符号化するプロセスは、イントラ予測と称される。イントラ予測は、データにおける空間的冗長性を利用しようとするものである。入力ブロックを、動き推定プロセスを用いて見つけ出された、先に符号化したフレームからの類似する領域を用いて符号化することは、インター予測と称される。インター予測は、データにおける時間的冗長性を利用しようとするものである。動き推定プロセスは、動きベクトルを生成し得る。動きベクトルは、例えば、参照フレーム内の一致する領域の、符号化中の入力ブロックに対する位置を指定する。大抵の動き推定プロセスは、所与の入力ブロックについての動きベクトルの初めの粗推定（および対応する時間的予測）を提供する動き初期推定（初期の動き推定）と、この初めの推定の近傍において局所探索を実行することによってその入力ブロックについての動きベクトルのより正確な推定（および対応する予測）を決定する動き精推定（精細な動き推定）との、２つの主なステップからなる。
【０００４】
エンコーダは、符号化すべきデータと予測（予測結果）との差分を測定することにより、残差を生成し得る。この残差は、予測されたブロックと元々の入力ブロックとの差分を提供し得る。これらの予測、動きベクトル（インター予測用）、残差および関連データは、空間変換、量子化、エントロピー符号化、ループフィルタなどの他のプロセスと組み合わされることにより、映像データの効率的な符号（符号化）を生成することができる。量子化及び変換を受けた残差は、処理されて且つ上記予測に組み戻されることで復号化フレームへと組み立てられて、フレームストアに記憶される。このような映像符号化技術の詳細は、当業者であればよく知っている。
【０００５】
ＭＰＥＧ−２（Ｈ．２６２）およびＨ.２６４（ＭＰＥＧ−４  Ｐａｒｔ１０  Ａｄｖａｎｃｅｄ Ｖｉｄｅｏ Ｃｏｄｉｎｇ（ＡＶＣ））は、比較的低いビットレートで高品質映像表現を達成する、映像圧縮用の２種類のコーデック規格である（以降では、それぞれＭＰＥＧ−２、Ｈ．２６４と称する）。ＭＰＥＧ−２及びＨ．２６４の符号化基本単位は、１６×１６マクロブロックである。Ｈ．２６４は、広く普及している最近の映像圧縮規格であると共に、映像データを圧縮するにあたってＭＰＥＧ−２の２倍の効率を有すると一般的に考えられている。
【０００６】
基礎的なＭＰＥＧ規格は、フレーム内の入力ブロックの符号化方法に基づいて３種類のフレーム（又はピクチャ）を規定する。Ｉフレーム（イントラ符号化ピクチャ）は、そのフレームに存在するデータのみを用いて符号化されるものなので、イントラ予測ブロックのみで構成される。Ｐフレーム（予測ピクチャ）は、予め復号化されたＩフレーム又はＰフレーム（参照フレームとも称される）からのデータを用いた前方向予測により符号化される。Ｐフレームは、イントラブロックおよび（前方向）予測ブロックのいずれも含み得る。Ｂフレーム（双予測ピクチャ）は、前のフレームと後のフレームの両方からのデータを用いた双方向予測により符号化される。Ｂフレームは、イントラブロック、（前方向）予測ブロックおよび双予測ブロックのいずれも含み得る。
【０００７】
参照フレームの特定の集合のことを、Ｇｒｏｕｐ ｏｆ Ｐｉｃｔｕｒｅｓ（ピクチャの集まり）（ＧＯＰ）と称する。ＧＯＰは、各参照フレーム内の復号化されたペルのみを含み、入力ブロックやフレームがどのように符号化されたのか（Ｉフレームなのか、Ｂフレームなのか、それともＰフレームなのか）についての情報を含まない。ＭＰＥＧ−２などの古い映像圧縮規格は、Ｐフレームを予測するのに１つの参照フレーム（過去のフレーム）を利用し、Ｂフレームを予測するのに２つの参照フレーム（１つ前のフレームと１つ後のフレーム）を利用する。対照的に、Ｈ．２６４、ＨＥＶＣ（Ｈｉｇｈ  Ｅｆｆｉｃｉｅｎｃｙ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ）などのより新しい圧縮規格は、Ｐフレーム及びＢフレームの予測に複数の参照フレームを利用することを可能にする。典型的な参照フレームは現在のフレームと時間的に隣接するフレームであるが、これらの規格は、時間的に隣接しないフレームを参照フレームとすることも可能である。
【０００８】
従来のインター予測は、ブロックベースの動き推定・補償（ＢＢＭＥＣ）に基づくものである。ＢＢＭＥＣプロセスは、ターゲットブロック（符号化中の現在の入力ブロック）と予め復号化された参照フレーム内の同サイズの領域との最良の一致を探索する。そのような一致が見つかると、エンコーダは、参照フレーム内でのこの最良の一致の位置へのポインタの役割を果たす動きベクトルを送信し得る。しかし、ＢＢＭＥＣ探索プロセスは、演算上の理由により、探索対象にできる参照フレームの観点からみて時間的に制限されているだけでなく、探索対象にできる近傍領域の観点からみて空間的にも制限されている。これは、「考えられる最良の」一致が常に見つかるとは限らず、また、高速で変化するデータの場合には特にそうであることを意味する。
【０００９】
最も単純な形式のＢＢＭＥＣプロセスは、動き推定の初期設定を、（０，０）動きベクトルとする。これは、つまり、ターゲットブロックの初めの推定が、参照フレーム内での同位置のブロックであることを意味する。次に、動き精推定が、この領域の局所近傍においてそのターゲットブロックと最良に一致する（すなわち、そのターゲットブロックに対する誤差が最小になる）領域を探索することによって行われる。この局所探索は、その局所近傍を網羅的にクエリすることによって行われたり、ダイヤモンドサーチや六角形サーチなどといった幾つかの「高速探索」法のうちの任意のものを用いて行われたりし得る。
【００１０】
ＭＰＥＧ−２の後発バージョン以降の標準コーデックに設けられた、ＢＢＭＥＣプロセスの改良として、拡張予測区域探索（ｅｎｈａｎｃｅｄ  ｐｒｅｄｉｃｔｉｖｅ  ｚｏｎａｌ  ｓｅａｒｃｈ）（ＥＰＺＳ）法（非特許文献１：Tourapis達による「単・多フレーム動き推定のための拡張予測区域探索（Enhanced predictive zonal search for single and multiple frame motion estimation）」）が挙げられる。このＥＰＺＳ法は、ターゲットブロックの初めの推定用として、既に符号化済みの近傍ブロックの動きベクトルならびに前の参照フレームにおける同位置のブロック（および近傍）の動きベクトルに基づく、動きベクトル候補の集合を検討する。ＥＰＺＳ法は、映像の動きベクトル場が幾らかの空間的及び時間的冗長性を有すると考え、よって、ターゲットブロックについての動き推定の初期設定は、近傍ブロックの動きベクトルまたは符号化済みのフレームにおける近隣ブロックからの動きベクトルとするのが合理的であると仮定する。ＥＰＺＳ法は、それら初めの推定の集合が集まると、近似レート歪み解析によって当該集合を絞り込む。この後に、動き精推定が行われる。
【００１１】
任意の所与のターゲットブロックについて、エンコーダが、選択候補となる複数のインター予測を生成し得る。これらの予測は、複数の予測プロセス（例えば、ＢＢＭＥＣ方式、ＥＰＺＳ方式、モデルベース方式等）から生じ得る。また、これらの予測は、ターゲットブロックのサブ区分処理に基づいて異なり得る。サブ区分処理では、相異なる動きベクトルがターゲットブロックの相異なるサブ区分に対応付けられ、かつ、それぞれの動きベクトルが参照フレーム内のサブ区分サイズの領域をそれぞれ指し示す。また、これらの予測は、動きベクトルが指し示す参照フレームに基づいて異なり得る。というのも、前述したように、最近の圧縮規格は、複数の参照フレームの使用を可能にするからである。通常、所与のターゲットブロックについての最良の予測の選択は、レート歪み最適化により達成される。レート歪み最適化では、最良の予測は、レート歪み尺度Ｄ＋λＲ（式中、歪みＤは、ターゲットブロックと予測との誤差であり、レートＲは、予測を符号化するコスト（ビット単位）を定量化し、λは、スカラー重み付け係数である。）を最小化する予測とされる。
【先行技術文献】
【非特許文献】
【００１２】
【非特許文献１】Tourapis, A., 2002, "Enhanced predictive zonal search for single and multiple frame motion estimation," Proc. SPIE 4671, Visual Communications and Image Processing, pp. 1069- 1078
【発明の概要】
【発明が解決しようとする課題】
【００１３】
過去、ＢＢＭＥＣ予測の限界を回避する目的で、数多くのモデルベース圧縮スキームが提案されてきた。このようなモデルベース圧縮スキーム（この種のスキームとして、ＭＰＥＧ−４  Ｐａｒｔ２規格が恐らく最も良く知られている）は、映像内のオブジェクトや特徴（一般的に「関心成分」と定義される）の検出及び追跡、さらに、これらの特徴／オブジェクトを映像フレームの残りの部分とは別に符号化する方法を利用する。特徴／オブジェクトの検出／追跡は、標準の動き推定プロセスにおける空間的探索と独立して行われるので、特徴／オブジェクトのトラックは、標準の動き推定により得られるものとは異なる集合の予測を生じさせ得る。
【００１４】
しかし、特徴／オブジェクトに基づくそのようなモデルベース圧縮スキームでは、映像フレームをオブジェクト領域とオブジェクトでない領域と（あるいは、特徴領域と特徴でない領域と）に分割することによる問題に直面する。第一に、オブジェクトのサイズは多種多様であり得るので、オブジェクトのテクスチャ（カラーコンテンツ）だけでなくオブジェクトの形状も符号化する必要がある。第二に、動きを伴うオブジェクトを複数追跡することは困難であり得て、精度の低いトラッキング（追跡）は不正確なセグメンテーション（分割）を引き起こし、通常、低い圧縮性能につながる。第三の問題は、全ての映像コンテンツがオブジェクトや特徴で構成されるとは限らないので、オブジェクト／特徴が存在しない場合には、代わりの符号化スキームが必要となる。
【００１５】
2014年11月4日出願の同時係属中の米国仮特許出願第61/950,784号（本明細書では「‘784出願」と称する）は、上記のセグメンテーション問題を回避するモデルベース圧縮スキームを提示している。‘784出願の連続的ブロックトラッカー（連続的ブロック追跡手段）（ＣＢＴ）は、オブジェクトや特徴を検出せず、オブジェクトや特徴をオブジェクトでない／特徴でない背景と分割する必要性をなくす。むしろ、ＣＢＴは、フレーム−フレーム間の動き推定を連続的なトラックへと組み込むことにより、映像フレーム内の全ての入力ブロック（「マクロブロック」）をあたかも関心領域であるかの如く追跡する。こうすることにより、ＣＢＴは、インター予測を向上させるというデータの高次モデリング（モデル化）の恩恵を、セグメンテーション問題を回避しつつ享受するように映像内の動きをモデル化する。
【００１６】
他のモデルベース圧縮アプローチとして、映像データのコンテンツに対する人間の視覚系（ＨＶＳ）の応答を、映像フレームのどの部分が人間の知覚にとって最も気付き易いのかを示す重要度マップとしてモデル化するものが挙げられる。重要度マップは、映像フレーム内のそれぞれの入力ブロック又はデータブロックについて数値を取る。また、所与のどのブロックについての重要度マップ値（重要度マップの数値）も、映像をとおしてフレーム−フレーム間で変化し得る。一般的に、重要度マップは、より高い数値がより重要なデータブロックを示すように定義される。
【００１７】
重要度マップの一種として、時間的コントラスト感度関数（ＴＣＳＦ）（de Lange, H., 1954, "Relationship between critical flicker frequency and a set of low frequency characteristics of the eye（臨界融合周波数と眼の低周波数特性のセットとの関係）," J. Opt. Soc. Am., 44:380-389）が挙げられる。ＴＣＳＦは、周期的な刺激に対するＨＶＳの応答を時間的に測定し、データ内の特定の時間的特性が観測者である人間にとって気付き易いものであることを明らかにする。これらの時間的特性がデータ内の動きに関連付けられて、ＴＣＳＦは、データ内で最も気付き易い種類の動きが極めて高い時間的周波数および極めて低い時間的周波数のいずれにも該当しない「中程度」の動きであることを予測する。
【００１８】
留意すべき重要な点として、ＴＣＳＦが、正確な時間的コントラスト値を生成するのに、映像内の動きを伴うコンテンツの速度の正確な測定を必要とすることが挙げられる。このような速度は、カメラの動きおよび／またはオブジェクトの動きによる映像コンテンツの正味の（明らかな）動きを表す、オプティカルフローを算出することによって近似を求めることが可能である。しかし、標準の映像エンコーダの大半は、オプティカルフローを正確に算出するよりも、圧縮効率を最適化する動き推定プロセスを採用している。
【００１９】
他種の重要度マップとして、空間的コントラスト感度に基づくものが挙げられ、これは、明るさ、エッジ、空間的周波数、色などの空間的特性に対するＨＶＳの応答を測定する。空間的コントラスト感度関数（ＳＣＳＦ）（例えば、Barten, P., 1999, Contrast Sensitivity of the Human Eye and Its Effects on Image Quality（人間の眼のコントラスト感度および画像品質へのその影響）, SPIE Press等を参照のこと）は、単にコントラスト感度関数（ＣＳＦ）としても知られており、ＨＶＳにとって顕著である空間的コントラストを測定する。ＳＣＳＦは、ＪＰＥＧ２０００画像圧縮規格において、画像圧縮アーチファクトを低減する目的での適用が成功を収めている。オブジェクトや特徴についても、空間的コントラスト手法の支援（例えば、空間的周波数勾配により示されるエッジの存在等）によって典型的に検出される。空間的コントラスト感度は画像圧縮（例えば、ＪＰＥＧ２０００コーデック等）においては研究・利用されてきたものの、また、オブジェクト・特徴の検出に基づく映像圧縮プロセスが数多く提案されてきたものの、ＴＣＳＦで表される時間的コントラスト感度がこれまで映像圧縮に適用されることはなかった。
【課題を解決するための手段】
【００２０】
開示する幾つかの発明的実施形態は、映像符号化の品質を向上させるように、重要度マップを映像圧縮に適用する。例示的な一実施形態では、標準の映像符号化処理ストリーム内での時間的周波数が、色空間領域における構造的類似度（ＳＳＩＭ）を用いて波長の近似を求めることにより、かつ、エンコーダの動きベクトル（エンコーダ動きベクトル）を用いて速度の近似を求めることにより算出される。次に、時間的周波数が、時間的コントラスト感度関数（ＴＣＳＦ）への入力としての役割を果たす。ＴＣＳＦは、全てのデータブロックについて算出され得て、これにより、映像フレームのどの領域が観測者である人間にとって最も気付き易いのかを示す時間的重要度マップを生成し得る。
【００２１】
例示的なさらなる実施形態では、エンコーダにより生成された動きベクトルの相対品質についての情報が、符号化プロセスにおける種々の時点で算出され得て、真の動きベクトルマップを生成するのに用いられ得る。真の動きベクトルマップは、それぞれのターゲットブロックについて、その動きベクトルがどれほど信頼できるのかを出力する。０または１の数値を取るこの真の動きベクトルマップは、動きベクトルが正確でないターゲットブロック（すなわち、真の動きベクトルマップが０であるターゲットブロック）にはＴＣＳＦが適用されないようにＴＣＳＦを洗練化するマスクとして用いられ得る。
【００２２】
さらなる実施形態では、空間的複雑度マップ（ＳＣＭ）が、所与のターゲットブロックの、その近傍に対する空間的コントラストを決定するように、ブロック分散（ブロック内分散）、ブロック輝度、エッジ検出などの尺度から算出され得る。他の実施形態では、ＳＣＭからの情報が、複合的な統合化された重要度マップを得るようにＴＣＳＦと組み合わされ得る。この統合化された重要度マップにおける空間的および時間的コントラスト情報の組合せは、人間の視覚的応答の両側面を効果的に両立させる。
【００２３】
例示的な一実施形態では、統合化された重要度マップ（ＴＣＳＦおよびＳＣＭの両方からの情報を含む重要度マップ）が、標準のレート歪み尺度であるＤ＋λＲのうちの歪み部分を重み付けるのに用いられる。これにより、それぞれのターゲットブロックの知覚的相対重要度に合ったソリューション（重要度マップがその最大値に近いときには低歪みソリューションで、重要度マップがその最小値に近いときには低レートソリューション）へと重み付けされた、改変されたレート歪み最適化が得られる。代替的な一実施形態では、上記の目的に、ＴＣＳＦ又はＳＣＭが独立して用いられ得る。
【００２４】
例示的な他の実施形態では、（真の動きベクトルによる洗練化を伴う）ＴＣＳＦおよびＳＣＭが、エンコーダのブロックレベル量子化を調整するように用いられ得る。前記重要度マップが高い数値をとるターゲットブロックでは、量子化パラメータがフレーム量子化パラメータに比べて小さくされることで、これらのブロックについては高い品質が得られる。前記重要度マップが低い数値をとるターゲットブロックでは、量子化パラメータがフレーム量子化パラメータに比べて大きくされることで、これらのブロックについては低い品質が得られる。代替的な一実施形態では、上記の目的に、ＴＣＳＦ又はＳＣＭが独立して用いられ得る。
【００２５】
ＴＣＳＦは、インター予測を組み込み且つ動きベクトル（映像内のコンテンツの速度の近似を求めるのにＴＣＳＦにより利用される）を生成するエンコーダであればどのようなエンコーダの場合にも算出可能であるが、映像圧縮へのＴＣＳＦの適用は、どの動きベクトルが真の動きベクトルであるのかを正確に決定可能な ‘784出願の連続的ブロックトラッカー（ＣＢＴ）などの、モデルベース圧縮フレームワークにおいて最も効果的となる。前述したように、標準の映像エンコーダの大半は、真の動きを反映するよりも圧縮効率を最適化する動きベクトルを算出する。対照的に、ＣＢＴは、高い圧縮効率に適した動きベクトルとＴＣＳＦの効果を最大化するモデル化情報との両方を提供する。
【００２６】
例示的な一部の発明的実施形態は、得られたビットストリームが、ブロックベースの動き推定を用いて且つその後に残差信号の変換、量子化及びエントロピー符号化が続けられる任意の映像圧縮規格に準拠したものとなるように構築される。そのような映像圧縮規格は、ＭＰＥＧ−２、Ｈ．２６４およびＨＥＶＣを含むが、これらに限定されるわけではない。本発明は、ブロックベースでない非標準の映像エンコーダであっても、インター予測を組み込み且つ動きベクトルを生成するものであれば、そのような映像エンコーダにも適用可能である。
【００２７】
例示的な一部の実施形態は、映像データを符号化する方法及びシステム、ならびにこれを実現するための任意のコーデック（エンコーダおよびデコーダ）を含み得る。複数の映像フレームであって、当該映像フレームが互いに重なり合わないターゲットブロックを有する複数の映像フレームが、エンコーダにより処理され得る。前記複数の映像フレームは、重要度マップを用いて、当該重要度マップが量子化を改変（調整）することによって各映像フレーム内の符号化すべき各ターゲットブロックの符号化品質に変更を加えるように、前記エンコーダにより符号化され得る。
【００２８】
前記重要度マップは、時間的情報と空間的情報の少なくとも一方を用いて構成され得る。時間的情報と空間的情報との両方が用いられた場合、前記重要度マップは統合化された重要度マップと見なされる。前記重要度マップは、前記複数の映像フレームのうちのある映像フレームの、人間の知覚にとって最も気付き易い部分を示す（特定する、または表す）ように設定され得る。具体的に述べると、前記重要度マップが高い数値をとるブロックでは、ブロック量子化パラメータ（ＱＰ）がフレーム量子化パラメータＱＰｆｒａｍｅに比べて小さくされることで、これらのブロックについては高い品質が得られる。また、前記重要度マップが低い数値をとるターゲットブロックでは、前記ブロック量子化パラメータが前記フレーム量子化パラメータＱＰｆｒａｍｅに比べて大きくされることで、これらのブロックについては低い品質が得られる。
【００２９】
前記空間的情報は、ルールに基づく空間的複雑度マップ（ＳＣＭ）により提供され得て、その最初のステップは、前記フレーム内のどのターゲットブロックが当該フレーム内の平均ブロック分散ｖａｒｆｒａｍｅよりも大きい分散を有するかを決定することである。平均ブロック分散ｖａｒｆｒａｍｅよりも大きい分散を有するブロックに対して、前記フレーム量子化パラメータＱＰｆｒａｍｅよりも高いＱＰ値が振り当てられ得て、このブロックＱＰの振当量ＱＰｂｌｏｃｋは、そのブロック分散ｖａｒｂｌｏｃｋがｖａｒｆｒａｍｅよりもいかなる程度大きいかに従って、ＱＰｆｒａｍｅと量子化パラメータ上限ＱＰｍａｘとの間で線形的に増減される。
【００３０】
好ましくは、前記時間的情報は、どのターゲットブロックが観測者である人間にとって時間的に最も気付き易いかを示す時間的コントラスト感度関数（ＴＣＳＦ）、および、どのターゲットブロックが前景データに相当するかを示す真の動きベクトルマップ（ＴＭＶＭ）により提供され得る。なお、前記ＴＣＳＦは、前景データとして特定されたターゲットブロックについてのみ有効とされ得る。
【００３１】
分散の大きい（high-variance）ブロックは、そのブロックのＱＰの振当量ＱＰｂｌｏｃｋが、前記ＴＭＶＭがターゲットブロックを前景データとして特定し且つ前記ＴＣＳＦのこのブロックについてのコントラスト感度対数値が０．５未満である場合にはＱＰｂｌｏｃｋが２増加するように、前記ＴＣＳＦ及び前記ＴＭＶＭによりさらに洗練化され得る。
【００３２】
前記ＳＣＭは、極めて明るい（１７０超の輝度）か又は極めて暗い（６０未満の輝度）ターゲットブロックのブロック量子化パラメータＱＰｂｌｏｃｋがＱＰｍａｘに調節し直される輝度マスキングを含み得る。前記ＳＣＭは、符号化された映像の品質レベルに基づくＱＰｍａｘの動的な決定を含み得て、この動的な決定では、イントラ（Ｉ）フレーム内のターゲットブロックの平均構造的類似度（ＳＳＩＭ）算出結果をこれらフレームの平均ブロック分散ｖａｒｆｒａｍｅと共に用いて、品質が測定され、測定された品質が低いと、前記量子化パラメータ上限ＱＰｍａｘの数値が前記フレーム量子化パラメータＱＰｆｒａｍｅに幾分近づくように減らされる。
【００３３】
分散の極めて小さい（very-low-variance）ブロックに対して、これらの領域における高品質符号化を確実にするために、前記ブロック分散が小さいほど前記振当量ＱＰｂｌｏｃｋの数値が低くなるように（、かつ、品質が高くなるように）決められた低い量子化パラメータ（ＱＰ）の値である前記振当量ＱＰｂｌｏｃｋが振り当てられ得る。分散の極めて小さいブロックに対する前記低い量子化パラメータ（ＱＰ）の値である前記振当量ＱＰｂｌｏｃｋは、最初に、Ｉフレームについて決められ、その後、Ｐフレーム及びＢフレームについてはｉｐｒａｔｉｏパラメータ及びｐｂｒａｔｉｏパラメータを用いて決められ得る。分散は小さいが、分散が極めて小さいとは見なさないブロックは、当該ブロックについて品質向上が必要か否かを判定するために、前記ブロック量子化パラメータ（ＱＰ）の初めの推定値である前記振当量ＱＰｂｌｏｃｋが現在のブロックの左、左上、右および右上の既に符号化済みの近傍ブロックの量子化パラメータ（ＱＰ）の値を平均することによって算出されるように調べられる。前記現在のブロックの前記ＳＳＩＭの推定ＳＳＩＭｅｓｔが、前記現在のブロックの左、左上、右および右上の既に符号化済みの近傍ブロックのＳＳＩＭ値から算出され得る。ＳＳＩＭｅｓｔが０．９未満の場合、前記振当量ＱＰｂｌｏｃｋの数値が２減少され得る。
【００３４】
一部の実施形態において、前記品質向上は、前記ＴＭＶＭにより前景データとして特定されて且つ前記ＴＣＳＦのコントラスト感度対数値が０．８超であるブロックにのみ適用される。前記ＴＭＶＭは、前景データの場合にのみ１に設定され得る。
【００３５】
一部の実施形態において、前記ＴＣＳＦの時間的周波数は、前記ターゲットブロックとその参照ブロックとの間の色空間領域におけるＳＳＩＭを用いて波長の近似を求めて且つ動きベクトルの大きさ（動きベクトル大きさ）とフレームレートとを用いて速度の近似を求めることによって算出される。
【００３６】
前記ＴＣＳＦは、現在のフレームについての当該ＴＣＳＦが最近のフレームにおけるＴＣＳＦマップの重み付き平均であるように且つより最近のフレームがより大きい重み付けを受けるように、複数のフレームにわたって算出され得る。
【００３７】
前景データは、所与のターゲットブロックについてのエンコーダ動きベクトルと当該ブロックについてのグローバル動きベクトルとの差分を算出し、十分に大きい差分を有するブロックが前景データであると判断されることによって特定され得る。
【００３８】
前景データとして特定されたデータブロックについて、前記グローバル動きベクトルから前記エンコーダ動きベクトルが減算されることによって差分動きベクトルを得ることがあり得て、この差分動きベクトルの大きさが前記ＴＣＳＦの時間的周波数を算出するのに用いられる。
【００３９】
映像データを処理するコンピュータに基づく方法、映像データを処理するコーデック（エンコーダおよびデコーダ）、ならびに映像データを処理するその他のコンピュータシステム及び装置が、本発明の前述した原理を具現化し得る。
【００４０】
前述の内容は、添付の図面に示す本発明の例示的な実施形態についての、以下のより詳細な説明から明らかになる。図面では、異なる図をとおして同一の参照符号が同一の構成／構成要素を指すものとする。図面は必ずしも縮尺どおりではなく、むしろ、本発明の実施形態を示すことに重点が置かれている。
【図面の簡単な説明】
【００４１】
【図１】標準のエンコーダの構成を示すブロック図である。
【図２】一般的なエンコーダの場合のインター予測に伴うステップを示すブロック図である。
【図３】連続的ブロック追跡による動き初期推定に伴うステップを示すブロック図である。
【図４】連続的ブロック追跡と拡張予測区域探索との組合せによる統合化された動き推定を示すブロック図である。
【図５】Wooten達による時間的コントラスト感度関数の最近の測定結果（2010年）を示すプロットである。
【図６】本発明の一実施形態における、ＣＩＥ１９７６Ｌａｂ色空間における構造的類似度（ＳＳＩＭ）の算出の様子を示すブロック図である。
【図７】本発明の一実施形態における、映像符号化の知覚的品質を向上させるための知覚的統計量の一般的な適用の様子を示すブロック図である。
【図８Ａ】本発明の一実施形態における、連続的ブロック追跡によるインター予測を改変して映像符号化の知覚的品質を向上させるための知覚的統計量の適用の様子を示すブロック図である。
【図８Ｂ】重要度マップを用いてブロック量子化を改変して符号化するプロセスの一例を示すブロック図である。
【図９Ａ】各実施形態が配備されるコンピュータネットワーク環境の概略図である。
【図９Ｂ】図９Ａのネットワークにおけるコンピュータノードのブロック図である。
【発明を実施するための形態】
【００４２】
本明細書で引用する全ての特許公報、全ての特許出願公報及び全ての刊行物の全教示内容は、参照をもって本明細書に取り入れたものとする。以下では、本発明の例示的な実施形態について説明する。
【００４３】
本発明は、標準の様々な符号化に適用可能である。以下では、特記しない限り、「従来」や「標準」という語（しばしば、「圧縮」、「コーデック」、「符号化（encoding）」や「エンコーダ」と共に用いられる）は、ＭＰＥＧ−２、ＭＰＥＧ−４、Ｈ．２６４またはＨＥＶＣのことを指し得る。「入力ブロック」は、一般性を失うことなく、エンコーダの符号化基本単位のことを指すものとし、しばしば、「データブロック」や「マクロブロック」と同じ意味で称され得る。符号化中の現在の入力ブロックは、「ターゲットブロック」と称される。
【００４４】
＜連続的ブロック追跡による映像符号化及びインター予測＞
符号化プロセスは、映像データを、圧縮フォーマットつまり符号化フォーマットに変換するものであり得る。同様に、解凍つまり復号化プロセスは、圧縮された映像を、圧縮される前のつまり未処理のフォーマットに変換するものであり得る。映像圧縮・解凍プロセスは、一般的にコーデックと称されるエンコーダおよびデコーダのペアとして実現され得る。
【００４５】
図１は、標準の変換ベース且つ動き補償のエンコーダのブロック図である。図１のエンコーダは、ソフトウェア環境、ハードウェア環境又はこれらの組合せで実現され得る。このエンコーダは、任意の組合せの構成要素を備え得る。これらの構成要素は、インター予測手段２０に出力する動き推定手段１５、イントラ予測手段３０、変換・量子化手段６０、逆変換・量子化手段７０、ループ内フィルタ８０、フレームストア８５およびエントロピー符号化手段９０を含むが、これらに限定されるわけではない。上記の予測手段（インター予測とイントラ予測との両方）の目的は、所与の入力映像ブロック１０（略して「入力ブロック」、あるいは、「マクロブロック」又は「データブロック」）についての最良の予測信号４０を生成することである。入力ブロック１０から予測信号４０が減算されることによって予測残差５０を生成し、この予測残差５０が変換・量子化６０を受ける。その後、この残差の量子化係数６５がエントロピー符号化手段９０へと渡されて、エントロピー符号化手段９０が圧縮ビットストリームへと符号化する。量子化係数６５は逆変換・量子化手段７０にも渡されて、その結果得られる信号（前記予測残差の近似）が予測信号４０に組み戻されて、これによって入力ブロック１０についての再構成信号７５を生成する。再構成信号７５はデブロッキングフィルタなどのループ内フィルタ８０に通され得て、この（場合によってフィルタリング済みである）再構成信号がフレームストア８５の一部となる。フレームストア８５は、今後の入力ブロックの予測を支援する。図１に示すエンコーダの各構成要素の機能は、当業者であればよく知っている。
【００４６】
図２に、標準のインター予測（図１の符号３０）における各種ステップを示す。インター予測の目的は、新たなデータを、前のフレームからの予め復号化されたデータを用いて、当該データにおける時間的冗長性を利用して符号化することである。インター予測では、現在符号化中のフレーム（ターゲットフレームとも称される）からの入力ブロック１０が、図１のフレームストア８５に記憶された、予め復号化された参照フレーム内の同サイズの領域から「予測」される。符号化中のフレーム内の入力ブロックの位置と参照フレーム内のこれと一致する領域の位置との（ｘ、ｙ）のずれを示す二成分ベクトルは、動きベクトルと称される。このように、動き推定のプロセスは、符号化すべき入力ブロックを参照フレーム内のこれと一致する領域と最良に結び付ける動きベクトルを決定することを伴う。
【００４７】
大半のインター予測プロセスは、所与の入力ブロックについての「良好」な動きベクトル１１５の１つ以上の粗推定を生成する動き初期推定（図２の符号１１０）から始まる。この後に、任意で、複数の動きベクトル候補が近似レート歪み尺度を用いて単一の候補に低減され得る動きベクトル候補フィルタリングステップ１２０が続けられる。レート歪み解析では、最良の動きベクトル候補（予測）は、レート歪み尺度Ｄ＋λＲ（式中、歪みＤは、入力ブロックとこれと一致する領域との誤差であり、レートＲは、予測を符号化するコスト（ビット単位）を定量化し、λは、スカラー重み付け係数である。）を最小化するものが選ばれる。実際のレートコストは、テクスチャビットと動きベクトルビットとの２種類の成分を含む。テクスチャビットは、残差信号（入力ブロックから予測を減算したもの）の量子化変換係数を符号化するのに必要なビットの数であり、動きベクトルビットは、動きベクトルを符号化するのに必要なビットの数である。通常、動きベクトルは、既に符号化済みの動きベクトルに対して差分符号化される。エンコーダにおける初期の段階ではテクスチャビットが利用可能でないので、レート歪み尺度のうちのレート部分は、動きベクトルビットにより近似で求められる。一方で、動きベクトルビットは、差分動きベクトルの大きさに依存する動きベクトルペナルティ係数として近似される。したがって、動きベクトル候補フィルタリングステップ１２０において、この近似レート歪み尺度が、単一の「最良」の初めの動きベクトル又はより少数の集合の「最良」の初めの動きベクトル１２５を選び出すのに用いられる。次に、そのような初めの動きベクトル１２５は、動き精推定１３０により洗練化（refine（さらに改良））される。動き精推定１３０は、それぞれの初めの推定の近傍において局所探索を行うことにより、その入力ブロックについての動きベクトル（および対応する予測）のより正確な推定を決定する。通常、この局所探索の後に、整数値動きベクトルが内挿により１／２又は１／４ピクセル精度まで洗練化されるサブピクセル洗練化が続けられる。動き精推定ブロック１３０は、洗練化済みの動きベクトル１３５の集合を生成する。
【００４８】
次に、動き精ベクトル１３５が与えられると、モード生成手段１４０がそのエンコーダが採用し得る符号化モードに基づいて予測候補１４５の集合を生成する。このようなモードは、コーデックによって異なる。符号化モードが異なるというのは、インターレース対プログレッシブ（フィールド対フレーム）動き推定、参照フレームの方向（前方向予測、後方向予測、双予測）、参照フレームのインデックス（複数の参照フレームを可能にするＨ．２６４、ＨＥＶＣなどのコーデックの場合）、インター予測対イントラ予測（良好なインター予測が存在しない場合にイントラ予測へと戻ることを可能にする一部のシナリオ）、異なる量子化パラメータ、および入力ブロックの異なるサブ区分である（ただし、これらに限定されるわけではない）。予測候補１４５の集合の全体が、単一の最良の候補を決定するように「最終」のレート歪み解析１５０を受ける。「最終」のレート歪み解析では、正確なレート歪み尺度Ｄ＋λＲが用いられて、歪み部分用の予測誤差Ｄ（通常、二乗誤差和（ＳＳＥ）として算出）およびレート部分用の実際の符号化ビットＲ（図１のエントロピー符号化９０からのもの）を算出する。最終の予測１６０（つまり図１の符号４０）は、全ての候補のなかで最小のレート歪みスコアＤ＋λＲを有する予測であり、この最終の予測が、その動きベクトル及び他の符号化パラメータと共にエンコーダにおける後続のステップへと渡される。
【００４９】
図３に、インター予測時に、連続的ブロック追跡（ＣＢＴ）による動き初期推定がどのようにして行われ得るのかを示す。ＣＢＴは、ターゲットフレームと時間的予測が導き出される参照フレームとの間に、複数のフレーム分のギャップが存在する場合に有用である。ＭＰＥＧ−２の場合、ＩＢＢＰＢＢＰ（イントラ予測Ｉフレーム、双予測Ｂフレームおよび前方向予測Ｐフレームからなる）の典型的なＧＯＰ構造は、現在のフレームから最大３フレーム分離れた参照フレームを可能にする（その理由は、ＭＰＥＧ−２ではＢフレームが参照フレームとして機能できないからである）。符号化すべき各フレームにつき複数の参照フレームを可能にするＨ．２６４やＨＥＶＣでは、上記と同じＧＯＰ構造でも、現在のフレームから６フレーム分以上離れた参照フレームを可能にする。より長いＧＯＰ構造（例えば、Ｐフレーム同士の間に７つのＢフレーム等）であれば、参照フレームは、ターゲットフレームからなおいっそう離れたものとなり得る。現在のフレームと参照フレームとの間に複数のフレーム分のギャップが存在するとき、連続的追跡は標準の時間的予測手法では捉えられないデータ内の動きをエンコーダが捉えることを可能にするので、ＣＢＴはより優れた時間的予測を生成することを可能にする。
【００５０】
ＣＢＴでの最初のステップは、フレーム−フレーム間追跡（図３の符号２１０）を実行することである。所与のフレーム内の入力ブロック１０ごとに、フレームバッファ２０５内の前のフレームへの後方向と当該フレームバッファ内の次のフレームへの前方向との両方の動きベクトルが算出される。一実施形態において、フレーム−フレーム間追跡は、再構成された参照フレームではなく元々のソース映像からのフレームに作用する。これは、ソース映像のフレームが量子化や他の符号化アーチファクトによって劣化していないことから、ソース映像のフレームに基づく追跡は映像における真の動き場をより正確に表すので有利だからである。フレーム−フレーム間追跡は、従来のブロックベースの動き推定（ＢＢＭＥ）又は階層的な動き推定（ＨＭＥ）を用いて行われ得る。
【００５１】
フレーム−フレーム間追跡の結果は、フレーム内のそれぞれの入力ブロックごとに対する、フレームバッファ２０５内の一番最近のフレーム内での最良に一致する領域と、フレームバッファ２０５内の一番最近のフレームのブロックごとに対する、現在のフレーム内での最良に一致する領域とを表す、フレーム−フレーム間動きベクトル２１５の集合である。次に、連続的追跡２２０が、利用可能なフレーム−フレーム間追跡情報を集約することにより、複数の参照フレームにわたってそれぞれの入力ブロックについての連続的なトラックを生成する。連続的追跡を行う方法の詳細については、全内容を参照をもって本明細書に取り入れた‘784出願に記載されている。連続的追跡２２０の出力は、符号化中の現在のフレーム内の全ての入力ブロックを過去の参照フレーム内のこれらと一致する領域へと追跡する連続的ブロック追跡（ＣＢＴ）動きベクトル２２５である。ＣＢＴの場合、これらのＣＢＴ動きベクトルが初めの動きベクトル（図２の符号１２５）となり且つ前述したように動き精推定（図２の符号１３０）により洗練化され得る。
【００５２】
図４に、本発明の一実施形態において、ＣＢＴがどのようにしてＥＰＺＳ法と組み合わされることで統合化された動き推定プロセスを作り出し得るのかを示す。図４では、ＣＢＴが動き初期推定１１０のためにフレーム−フレーム間追跡２１０及び連続的追跡２２０により動きベクトルを生成した後、動き精推定１３０のための局所探索及びサブピクセル洗練化２５０が続けられる。ＥＰＺＳが候補生成手段２３０により初めの動きベクトルを生成した後、先に詳述したような近似レート歪み解析によってフィルタリングを行う候補フィルタリング手段２４０が続けられる。この後に、さらに、局所探索及びサブピクセル洗練化２６０による動き精推定１３０が続けられる。このようにして得られたＣＢＴ動きベクトル２５５およびＥＰＺＳ動きベクトル２６５の両方が、総合的な「最良」のインター予測を決定するために残りのインター予測ステップ（図２のモード生成１４０及び最終のレート歪み解析１５０）へと渡される。
【００５３】
代替的な一実施形態では、図４のＣＢＴ動きベクトル候補２５５及びＥＰＺＳ動きベクトル候補２６５に、さらなる候補が追加され得る。このような候補は、ランダム動きベクトル、（０，０）動きベクトル、およびいわゆる「中央値予測子（median predictor）」を含む（ただし、これらに限定されるわけではない）。ランダム動きベクトルには、その局所近傍において最良の候補を見つけ出すように動き精推定１３０が適用されてもよい。（０，０）動きベクトルは、ＥＰＺＳの初めの候補のうちの一つであるが、ＥＰＺＳ候補フィルタリング（図４の符号２４０）後の時点で常に選び出されているとは限らず、仮に候補フィルタリング後の時点で選び出されていたとしても、動き精推定１３０によって（０，０）以外の動きベクトルが出力される可能性がある。（動き精推定を受けない）（０，０）動きベクトルを最終のレート歪み解析用の候補として明示的に含めることは、少なくとも１つの、大きさの小さい且つ「動きの小さい」候補が検討されることを確実にする。同様に、「中央値予測子」もＥＰＺＳの初めの候補のうちの一つであるが、ＥＰＺＳ候補フィルタリング（図４の符号２４０）後の時点で常に選び出されているとは限らない。中央値予測子は、現在符号化中のデータブロックの左、上および右上のデータブロックで予め算出された動きベクトルの、中央値として定義される。（動き精推定を受けない）中間値予測子を最終のレート歪み解析用の候補として明示的に含めることは、映像フレームのうちの空間的に均質な（「フラット」な）領域を符号化するうえで特に有益となり得る。つまり、代替的なこの実施形態では、５種類以上の動きベクトル候補（ＣＢＴ由来の動きベクトル、ＥＰＺＳ由来の動きベクトル、ランダム動きベクトル由来の動きベクトル、（０，０）動きベクトル、および中央値予測子を含む（ただし、これらに限定されるわけではない））が、残りのインター予測ステップ（図２のモード生成１４０及び最終のレート歪み解析１５０）へと渡され得る。
【００５４】
＜映像符号化用の重要度マップの算出＞
知覚的統計量が、映像フレームのどの領域が人間の視覚系（ＨＶＳ）にとって重要なのかを示す重要度マップを算出するのに用いられ得る。
【００５５】
知覚的統計量の一例として、時間的に周期的な刺激に対する人間の視覚系（ＨＶＳ）の応答をモデル化する、いわゆる時間的コントラスト感度関数（ＴＣＳＦ）が挙げられる。背景技術の欄で述べたように、ＴＣＳＦの概念は（「時間変調伝達関数」として紹介された）１９５０年代から存在しているが、これまで映像圧縮に適用されることはなかった。図５に、ＴＣＳＦの最近の測定結果（Wooten, B. 達による2010, "A practical method of measuring the temporal contrast sensitivity function（時間的コントラスト感度関数を測定する実用的な方法）," Biomedical Optical Express, l(l):47-58）を、周波数の対数の関数としての時間的コントラスト感度の対数（横軸に周波数の対数、縦軸に時間的コントラスト感度の対数）のかたちで示す。測定データ点（図５の丸印）は、３次多項式（図５の実線）を用いてフィッティングされている。なお、後述の全てのＴＣＳＦ算出に、このフィッティングを用いている。ＴＣＳＦは、人間の視覚系（ＨＶＳ）が中程度の周波数域に対して最大の応答を示す一方で、低周波数域ではＨＶＳの応答がわずかに低下し且つ高周波数域では急激に低下するものと予想する。
【００５６】
映像圧縮へのＴＣＳＦの適用には、ＴＣＳＦへの入力である時間的周波数（図５の横軸）を算出する方法が必要となる。周波数を算出するための本発明の一実施形態にかかる方法の一つを、次で説明する。周波数ｆは、ｆ＝ｖ／λ（式中、ｖは速度で、λは波長である）により与えられる。一実施形態において、任意のデータブロックのコンテンツの速度ｖ（ピクセル／秒単位）は、エンコーダにより生成された動きベクトル（例えば、図２の符号１３５、図３の符号２１５，２２５、図４の符号２５５，２６５等）の大きさからｖ＝｜ＭＶ｜×フレームレート／Ｎ（式中、｜ＭＶ｜は、そのデータブロックの動きベクトルの大きさであり、フレームレートはその映像が生成された１秒当たりのフレームの数であり、Ｎは動きベクトルにより指し示される参照フレームと現在のフレームとの間のフレームの数である）として算出され得る。
【００５７】
波長λの適切な近似は、ＣＩＥ  １９７６  Ｌａｂ色空間（www://en.wikipedia.org/wiki/Lab_color_space）において算出される構造的類似度（ＳＳＩＭ）（Wang, Z. 達による2004, "Image quality assessment: From error visibility to structural similarity（画像品質評価：誤差可視度から構造的類似度まで）," IEEE Trans, on Image Processing, 13(4):600-612）の算出結果から導き出され得る。図６に、Ｌａｂ色空間におけるＳＳＩＭの算出の様子を示す。ＳＳＩＭは、ターゲットブロック３００（符号化すべき現在のデータブロック）とその動きベクトルが指し示す参照ブロック３１０との間で算出される。通常、エンコーダにより処理される映像データはＹＵＶ４２０などの標準の空間で表現されるので、次のステップは、それらターゲットブロック（符号３２０）および参照ブロック（符号３３０）の両方を一般的に文献に記載されている任意の手法を用いてＣＩＥ  １９７６  Ｌａｂ空間に変換することである。次に、Ｌａｂ空間におけるこれらのターゲットブロックと参照ブロックとの間の誤差ΔＥ（符号３４０）が、
【００５８】
【数１】
0006698077.tif 000002
【００５９】
（式中、添字Ｔは「ターゲットブロック」を意味し、添字Ｒは「参照ブロック」を意味する）として算出される。最後に、誤差ΔＥと同次元のゼロ行列との間のＳＳＩＭ３６０が、データの色空間変化の尺度を示すものとして算出される。初めに定まるＳＳＩＭは、−１〜１の数値を取り、数値の１は完全な類似（空間的な差異がないこと）を示す。ＳＳＩＭを波長λに変換する目的に、０〜１の数値を取る空間的非類似度ＤＳＳＩＭ＝（１−ＳＳＩＭ）／２を使用することが可能であり得て、０は短い波長（最大の空間的類似度）に相当し、１は長い波長（最小の空間的類似度）に相当する。ＳＳＩＭをピクセル単位に変換するには、ＳＳＩＭの数値を、算出対象のブロックのピクセルの数で乗算することが可能であり得る。一実施形態では、ＳＳＩＭのブロックサイズが８×８なので、ＤＳＳＩＭ値に６４が乗算される。この場合、周波数の最終的な算出結果は、
ｆ＝｜ＭＶ｜×フレームレート／（Ｎ×６４×（１−ＳＳＩＭ）／２）
により与えられる。
【００６０】
所与のターゲットブロックについての周波数が算出されれば、このブロックについてのＴＣＳＦ値が、図５の曲線フィット（実線）から決定可能であり得る。ＴＣＳＦは、ｌｏｇ１０スケールで０〜１．０８または絶対スケールで１〜１１．９７の数値を取る。フレーム内の相異なるブロックが相異なるＴＣＳＦ値を取ることにより、フレーム内の全てのブロックにわたるＴＣＳＦ値の集約集合（aggregate set）が重要度マップを形成し、高い数値は時間的コントラストの観点からみて知覚的に重要なブロックを示し且つ低い数値は知覚的に重要でないブロックを示す。
【００６１】
さらなる実施形態では、最近のフレームからのＴＣＳＦの数値が、ＴＣＳＦベースの重要度マップがフレーム間で変動し過ぎることのないようにそれぞれのデータブロックにつき平均化され得る。例えば、平均ＴＣＳＦＴＣＳＦａｖｇのそのような計算の一つとして、ＴＣＳＦａｖｇ＝０．７×ＴＣＳＦｃｕｒ＋０．３×ＴＣＳＦｐｒｅｖ（式中、ＴＣＳＦｃｕｒは現在のフレームからのＴＣＳＦ値であり、ＴＣＳＦｐｒｅｖは一番最近符号化された過去のフレームからのＴＣＳＦ値である）が挙げられ得る。ＴＣＳＦの計算は、このように平均化されることでよりロバスト（頑健）になる。
【００６２】
さらなる実施形態では、エンコーダにより生成された動きベクトルの相対品質についての情報が、符号化プロセスにおける種々の時点で算出され得て、真の動きベクトルマップ（ＴＭＶＭ）を生成するのに用いられ得る。真の動きベクトルマップ（ＴＭＶＭ）は、それぞれのデータブロックについて、その動きベクトルがどれほど信頼できるのかを出力する。０または１の数値を取るこの真の動きベクトルマップは、動きベクトルが正確でないデータブロック（すなわち、ＴＭＶＭ値が０であるデータブロック）にはＴＣＳＦが適用されないようにＴＣＳＦを洗練化するマスクとして用いられ得る。
【００６３】
一実施形態において、動きベクトルの正確さは、所与の映像フレームについてのグローバル動きモデルを推定し且つこの動きモデルを当該フレーム内のそれぞれのデータブロックに適用することによってそれぞれのデータブロックについてのグローバル動きベクトルを決定してから且つこのグローバル動きベクトルをそのデータブロックについてのエンコーダの動きベクトル（エンコーダ動きベクトル）と比較することにより、決定され得る。グローバル動きは、そのフレームからの符号化動きベクトルの集約集合であって、６つのパラメータ又は８つのパラメータのアフィン動きモデルにフィッティングされた集約集合から推定され得る。所与のデータブロックについてグローバル動きベクトルとエンコーダ動きベクトルとが同一である（又は類似する）場合、エンコーダ動きベクトルが正確であると見なされる（そして、そのデータブロックについてＴＭＶＮ＝１となる）。それら２つのベクトルが同一でない場合、それらの（二乗誤差和（ＳＳＥ）又は差分絶対値和（ＳＡＤ）で測定された）予測誤差同士を比較してもよい。一方の誤差が小さくて他方の誤差が大きい場合には、誤差が小さいほうの動きベクトルが、符号化に使われて且つ正確と見なされる（ＴＭＶＭ＝１）。
【００６４】
代替的な一実施形態では、所与のデータブロックについてグローバル動きベクトルとエンコーダ動きベクトルとの差分の大きさが、そのデータブロックが前景データであること（これは、そのデータブロック内のコンテンツが、フレームの残りの部分（背景）と異なる動きを伴っていることを意味する）を特定するのに用いられる。この実施形態では、ＴＭＶＭが１に設定されて、ＴＣＳＦが前景データの場合にのみ適用される。さらなる実施形態では、前景データとして特定されたデータブロックについて、グローバル動きベクトルからエンコーダ動きベクトルが減算されることによって差分動きベクトルを得て、（エンコーダ動きベクトルではなくて）この差分動きベクトルの大きさがＴＣＳＦの周波数を算出するのに用いられる（前述の式において、｜ＭＶ｜を｜ＤＭＶ｜（ＤＭＶは差分動きベクトルである）に置き換える）。
【００６５】
他の実施形態では、動きベクトル対称度が、ＴＭＶＭを洗練化するのに用いられ得る。動きベクトル対称度（Bartels, C.及びde Haan, G.による2009, "Temporal symmetry constraints in block matching（ブロックマッチングにおける時間的対称度制約）," Proc. IEEE 13th Int'l. Symposium on Consumer Electronics, pp. 749-752）は、動き推定の時間的方向を切り替えたときに互いに対をなす、動きベクトルのペアの相対対称度として定義され、算出された動きベクトルの品質の尺度となる（対称度が高ければ高いほど、動きベクトルの品質が優れている）。「対称度誤差ベクトル」は、前方向動き推定により得られた動きベクトルと後方向動き推定により得られた動きベクトルとの差分として定義される。動きベクトル対称度が低いこと（対称度誤差ベクトルが大きいこと）は、しばしば、オクルージョン（あるオブジェクトが別のオブジェクトの前側を動くことにより、その背景オブジェクトを隠したり露わにしたりすること）、オブジェクトの動きが映像フレーム上に又は映像フレーム外になること、照明変化など（いずれも、正確な動きベクトルを導き出すことを困難にする）の複雑な現象が存在することの指標となる。
【００６６】
一実施形態では、対称度誤差ベクトルの大きさが符号化中のデータブロックの範囲の半分よりも大きい場合（例えば１６×１６マクロブロックのときには、大きさが（８，８）ベクトルよりも大きい場合）に、低対称度（対称度が低い）と判断される。他の実施形態では、対称誤差ベクトルの大きさが追跡プロセス時に導き出された動きベクトル統計量に基づく閾値（例えば、現在のフレーム又は最近のフレーム同士の所与の組合せにおける、動きベクトル大きさ（動きベクトルの大きさ）の平均値に動きベクトル大きさの標準偏差の倍数を足したもの等）よりも大きい場合に、低対称度（対称度が低い）と判断される。一実施形態では、動きベクトルが上記の定義で低対称度を有するデータブロックに対してＴＭＶＭ値＝０が自動的に振り当てられて、他のデータブロックはグローバル動きベクトルとエンコーダ動きベクトルとの比較に由来するそれまでのＴＭＶＭ値を維持する。
【００６７】
フラットなブロックは、高い空間的コントラスト感度を有するものの、動きベクトルを算出する際のよく知られている開口問題（aperture problem）
【００６８】
【数２】
0006698077.tif 000003
【００６９】
が原因となり、信頼できない動きベクトルを生じる傾向にある。フラットなブロックは、例えば、エッジ検出プロセス（データブロック内においてエッジが検出されなかった場合にフラットなブロックであると判断される）を用いて、あるいは、データブロックの分散を閾値と比較すること（この閾値よりも小さい分散がフラットなブロックを示す）によって検出され得る。一実施形態では、ブロックのフラットさが、前述のように算出されたＴＭＶＭを変更するように用いられ得る。例えば、フラットなブロックであると検出されたブロックには、ＴＭＶＭ値＝０が振り当て直され得る。
【００７０】
一実施形態では、ＴＭＶＭが、信頼できる動きベクトルを有するか否かに影響されるＴＣＳＦを洗練化するマスクとして用いられ得る。ＴＭＶＭの数値は０又は１なので、あるブロックについてのＴＭＶＭ値を、そのブロックについてのＴＣＳＦ値へとブロック毎に乗算することには、ＴＣＳＦをマスクする効果がある。ＴＭＶＭ値が０であるブロックの場合、ＴＣＳＦの算出に必要な動きベクトルが信頼できないことになるので、そのＴＣＳＦが「無効」にされる。ＴＭＶＭ値が１であるブロックの場合、ＴＣＳＦ算出結果が信頼できるとみなされて且つこれまでに述べた任意の手法が確信して利用される。
【００７１】
他の実施形態では、時間的コントラストマップ（前述のＴＣＳＦ）の代わりに、あるいは、これに加えて、空間的コントラストマップが生成され得る。本発明では、空間的コントラスト（これの反対は「空間的複雑度」と称される）を測定するのに、単純な尺度が用いられる。一実施形態では、データの輝度成分と色差成分との両方について測定されるブロック分散が、所与の入力ブロックの空間的複雑度を測定するのに用いられる。分散の大きい入力ブロックは、空間的に複雑であり且つＨＶＳにとって気付き難いと考えられるので、その空間的コントラストは小さいことになる。
【００７２】
他の実施形態では、データの輝度成分について測定されるブロック輝度が、空間的複雑度の分散測定結果を洗練化するのに用いられる。分散は小さい（空間的複雑度が低い、空間的コントラストが大きい）が極めて明るいか又は極めて暗い入力ブロックは、空間的コントラストが小さいと自動的に見なされて且つその前に大きいと測定された空間的コントラストを上書きする。その理由は、極めて暗い領域や極めて明るい領域が、ＨＶＳにとって気付き難いからである。所与のブロックを極めて明るい又は極めて暗いと分類するための輝度閾値は、その時々の用途に特化したものとされるが、８ビットの映像の場合の典型的な数値は、極めて明るいが「１７０超」で、極めて暗いが「６０未満」である。
【００７３】
上記のようにブロック輝度により改変されたブロック分散が、空間的コントラストの観点からＨＶＳにとっての気付き易さの高い領域及び気付き易さの低い領域を示す空間的コントラストマップ（ＳＣＭ）を形成するために、映像フレームの全ての入力ブロックについて算出され得る。
【００７４】
一実施形態では、ＳＣＭが、（ＴＭＶＭにより洗練化された）ＴＣＳＦと組み合わされることによって、統合化された重要度マップを形成し得る。この統合化されたマップは、例えば、ＳＣＭおよびＴＣＳＦの両方を適宜正規化したうえで、所与のブロックについてのＳＣＭ値をそのブロックについてのＴＣＳＦ値へとブロック毎に乗算することによって形成され得る。他の実施形態では、ＴＣＳＦの代用としてＳＣＭが使用され得る。他の実施形態では、ＳＣＭが、ＴＣＳＦを洗練化するのに用いられ得る。例えば、複雑度の高いブロックではＳＣＭ値がそのブロックについてのＴＣＳＦ値を上書きし得て、複雑度の低いブロックではそのブロックについてのＴＣＳＦ値が直接使用され得る。
【００７５】
＜映像符号化への重要度マップの適用＞
前述した重要度マップは、一般的なエンコーダ（図２）及びＣＢＴエンコーダ（図３）のいずれの映像符号化プロセスにも適用され得て、符号化ビットストリームの品質を向上させる。
【００７６】
図７に、映像符号化への重要度マップの一般的な適用の様子を示す。入力映像フレーム５およびフレームストア８５が、知覚的統計量３９０を生成するように使用される。そして、知覚的統計量３９０が、前述したような（ＴＭＶＭにより洗練化された）ＴＣＳＦおよび／またはＳＣＭの重要度マップ４００を形成するように適用される。知覚的統計量３９０は、動きベクトル大きさ、ブロック分散、ブロック輝度、エッジ検出、およびグローバル動きモデルパラメータを含み得る（ただし、これらに限定されるわけではない）。入力映像フレーム５およびフレームストア８５は、さらに、符号４５０での映像フレームの符号化へと通常どおり入力される。その符号化は、通常の符号化ステップ（図１の動き推定１５、インター予測２０、イントラ予測３０、変換・量子化６０およびエントロピー符号化９０）を含む。ただし図７では、符号化４５０が、後述の方法で重要度マップ４００により機能拡張される。
【００７７】
図８Ａに、ＣＢＴを用いた映像符号化を向上するための、重要度マップの具体的な適用の様子を示す。図８Ａには、ＣＢＴからのフレーム−フレーム間追跡２１０ステップ及び連続的追跡２２０ステップによる動き初期推定（図２の符号１１０）が示されている。そして、動き精推定１３０が、既述したものと同じ局所探索及びサブピクセル洗練化の動き精推定ステップ（図４の符号２５０）で、グローバルＣＢＴ動きベクトル２２５に適用される。ここでも、その後に、エンコーダが採用し得る符号化モードに基づいて予測候補１４５の集合を生成するモード生成手段１４０が続く。図４と同じく、ＥＰＺＳおよびモデルベースでない他の候補（例えば、（０，０）動きベクトル、中央値予測子等）も、統合化された動き推定フレームワークの一部として並行して生成され得る（図８Ａでは、図示を簡略化するためにこれら他の候補の図示を省略している）。図８Ａにおいても、ＣＢＴ候補のあらゆる符号化モードおよび場合によってはモデルベースでない他の候補のあらゆる符号化モードも含め、予測候補１４５の集合の全体が、単一の最良の候補を決定するように「最終」のレート歪み解析１５５を受ける。「最終」のレート歪み解析では、正確なレート歪み尺度Ｄ＋λＲが用いられて、歪み部分用の予測誤差Ｄおよびレート部分用の実際の符号化ビットＲ（図１のエントロピー符号化９０からのもの）を算出する。最終の予測１６０（または図１の符号４０）が、その動きベクトル及び他の符号化パラメータと共にエンコーダにおける後続のステップへと渡される。
【００７８】
図８Ａにおいて、知覚的統計量３９０が、フレーム−フレーム間動き追跡２１０から導き出された動きベクトルから算出され得て、その後、前述したような重要度マップ４００を形成するように適用され得る。そして、これらの重要度マップ４００が、最終のレート歪み解析１５５へと入力される。ここでも、知覚的統計量３９０は、動きベクトル大きさ、ブロック分散、ブロック輝度、エッジ検出、およびグローバル動きモデルパラメータを含み得る（ただし、これらに限定されるわけではない）。
【００７９】
一実施形態では、重要度マップが、レート歪み最適化条件を当該重要度マップに応じて改変するように用いられる。標準のエンコーダ（図２を参照のこと）では、所与の入力ブロック１０についての予測候補１４５の集合の全体が、単一の最良の候補を決定するように「最終」のレート歪み解析１５０を受ける。「最終」のレート歪み解析では、正確なレート歪み尺度Ｄ＋λＲが用いられて、歪み部分用の予測誤差Ｄおよびレート部分用の実際の符号化ビットＲ（図１のエントロピー符号化９０からのもの）を算出する。レート歪み尺度Ｄ＋λＲのスコアが最小である候補が、所与の入力ブロック１０についての最終の予測１６０となる。本発明の一実施形態において、図７又は図８の知覚的に最適化されたエンコーダの場合、符号４００で重要度マップＩＭが算出されて、かつ、最終のレート歪み解析１５５が改変されたレート歪み尺度Ｄ×ＩＭ＋λＲを使用する。この改変されたレート歪み尺度では、所与の入力ブロックについてのＩＭ値が歪み項に乗算されて、ＩＭ値が高ければ高いほど、歪みの小さいソリューションにより大きな重要度が振り当てられる。というのも、高いＩＭ値は、対応する入力ブロックが知覚的に重要であることを示すからである。重要度マップは、（場合によってはＴＭＶＭ値により洗練化されている）ＴＣＳＦ、ＳＣＭまたはこれらを複合したものを含み得る。
【００８０】
さらなる実施形態では、上記に加えて、レート歪み尺度における歪みＤが、ＳＳＥ（二乗誤差和：歪みを算出する「標準」の手法）とＹＵＶ空間において算出されたＳＳＩＭとの重み付け和として算出され得る。重み付けγは、映像のうちの最初の幾つか（又は一番最近の幾つか）のフレームにおける平均ＳＳＩＭ値ＳＳＩＭａｖｇが当該映像のうちの当該最初の幾つか（又は当該一番最近の幾つか）のフレームにおける平均ＳＳＥ値ＳＳＥａｖｇと等しくなる（γ×ＳＳＩＭａｖｇ＝ＳＳＥａｖｇ）ように適応的に算出され得る。つまり、それぞれの入力ブロックについて、改変されたレート歪み尺度は、（ＳＳＥ＋γ×ＳＳＩＭ）×ＩＭ＋２λＲ（式中、λＲ項の前にある乗算係数２は、歪み項が２つあることを意味している）となる。歪み測定にＳＳＩＭを含めることは、ＳＳＩＭがデータの構造的情報に相当することから、レート歪み最適化においてＨＶＳ知覚が占める割合をなおいっそう増やすことになる。
【００８１】
他の実施形態では、重要度マップ（例えば、ＴＭＶＭによる洗練化を伴うＴＣＳＦ、ＳＣＭ等）が、レート歪み最適化を改変するのに加えて（あるいは、この代わりに）、エンコーダのブロックレベル量子化を改変するように用いられ得る。量子化は、所与の入力ブロックが符号化される相対品質を制御するものである。つまり、高度に量子化されたデータは低品質の符号化済み出力となり、低度に量子化されたデータは高品質の符号化済み出力となる。量子化の量は、量子化パラメータＱＰによって制御される。標準のエンコーダは、異なるフレームタイプに異なるＱＰ値ＱＰｆｒａｍｅを振り当てて、Ｉフレームは最小のＱＰ（最も高品質）で符号化されて且つＢフレームは最大のＱＰ（最も低品質）で符号化されて且つＰフレームは中間のＱＰ（中間の品質）で符号化される。
【００８２】
つまり、上記の手法は、複数の映像フレーム（当該映像フレームは、互いに重なり合わないターゲットブロックを有している）を、重要度マップを用いて、各映像フレーム内の各ターゲットブロックの量子化を改変すること（そして、これによってその符号化品質に影響を与えること）によって符号化する方法を提示している。そのような重要度マップは、時間的情報（ＴＭＶＭによる洗練化を伴うＴＣＳＦ）、空間的情報、またはこれら２種類の組合せ（すなわち、統合化された重要度マップ）を用いて設定され得る。重要度マップは各映像フレームのどの部分が人間の知覚にとって最も気付き易いのかを示すものなので、前記重要度マップの数値は、それぞれのターゲットブロックについてのＱＰを、（ｉ）当該重要度マップが高い数値をとるブロックでは、ブロックＱＰがＱＰｆｒａｍｅに比べて小さくされることで、これらのブロックについては高い品質となるように、かつ、（ｉｉ）当該重要度マップが低い数値をとるブロックでは、前記ブロックＱＰが前記フレーム量子化パラメータＱＰｆｒａｍｅに比べて大きくされることで、これらのブロックについては低い品質となるように、変更するのが望ましい。
【００８３】
図８Ｂに、重要度マップ４００を用いて符号化時の量子化を改変するプロセスの一例を示す。符号４００では、知覚的統計量３９０から導き出された時間的情報および／または空間的情報を用いて重要度マップが構成／形成され得る。時間的情報は、例えば、どのターゲットブロックが観測者である人間にとって時間的に最も気付き易いのかを示す時間的コントラスト感度関数（ＴＣＳＦ）、および、どのターゲットブロックが前景データに相当するのかを示す真の動きベクトルマップ（ＴＭＶＭ）により提供され得て、前記ＴＣＳＦは、前景データとして特定されたターゲットブロックについてのみ有効とされる。空間的情報は、例えば、ルールに基づく空間的複雑度マップ（ＳＣＭ）により提供され得る。
【００８４】
そして、重要度マップ４００は、符号化４５０内の量子化ステップ４３０を上記のように改変するのに用いられる。当該重要度マップが高い数値を取るブロックでは、ブロック量子化パラメータ（ＱＰ）が、フレーム量子化パラメータＱＰｆｒａｍｅに対して減らされて、これらのブロックについては高い符号化品質が得られる。当該重要度マップが低い数値を取るブロックでは、前記ブロック量子化パラメータが、前記フレーム量子化パラメータＱＰｆｒａｍｅに対して増やされて、これらのブロックについては低い符号化品質が得られる。重要度マップからの情報を用いることにより、量子化は、各映像フレーム内の符号化すべき各ターゲットブロックの符号化品質を向上させるように改変され得る。
【００８５】
一実施形態では、所与のフレームについてのＴＣＳＦマップが、フレームＱＰをブロック毎に調節するように用いられ得る。ブロックＱＰ、ＱＰｂｌｏｃｋを算出する方法の一つは、（Li, Z.達による2011, "Visual attention guided bit allocation in video compression（映像圧縮における、視覚注意によって導かれたビット振当）, J. of Image and Vision Computing, 29(1): 1-14）の手法に従って、その調節量をフレームにおけるＴＣＳＦマップ全体と関連付けることである。その結果得られる式は、ＱＰｂｌｏｃｋ＝（ＴＣＳＦｆｒａｍｅ／（ＴＣＳＦｂｌｏｃｋ×Ｍ））×ＱＰｆｒａｍｅ（式中、ＴＣＳＦｆｒａｍｅはフレーム内の全てのブロックについてのＴＣＳＦ値の合計であり、ＱＰｆｒａｍｅはフレームＱＰであり、Ｍはフレーム内のブロックの数である）により与えられる。さらなる実施形態では、乗算係数（ＴＣＳＦｆｒａｍｅ／（ＴＣＳＦｂｌｏｃｋ×Ｍ））が、ＱＰｂｌｏｃｋの最終的な数値がＱＰｆｒａｍｅに対して大きくなり過ぎたり小さくなり過ぎたりすることのないように増減され得る。
【００８６】
代替的な一実施形態では、ＴＣＳＦマップによるＱＰのブロック毎の調節が、そのフレームについてのＴＣＳＦマップ全体を参照することなく達成され得る。この実施形態では、ＱＰｂｌｏｃｋの計算がより単純になる：ＱＰｂｌｏｃｋ＝ＱＰｆｒａｍｅ／ＴＣＳＦｂｌｏｃｋ。一実施形態では、ＱＰｂｌｏｃｋの得られる数値が、そのフレームについての所定の上限ＱＰ値を上回ったり下限ＱＰ値を下回ったりしないように範囲限定される（クリップされる）：ＱＰｍｉｎ≦ＱＰｂｌｏｃｋ≦ＱＰｍａｘ。
【００８７】
他の実施形態では、ＳＣＭの出力が、ルールに基づくアプローチを用いてブロック毎に量子化パラメータを改変するように用いられ得る。この実施形態は、まず、分散の大きいブロックに高いＱＰ値（低品質）を振り当てることから始まる。というのも、高度に複雑な領域は、ＨＶＳにとって気付き難いからである。分散の小さいブロックには、低いＱＰ値（高品質）が振り当てられる。というのも、低度に複雑な領域は、ＨＶＳにとって気付き易いからである。一実施形態では、所与のブロックについてのＱＰ振当量が、フレームの上限ＱＰ値であるＱＰｍａｘ及び下限ＱＰ値であるＱＰｍｉｎによって規制されており、かつ、そのフレーム内の他のブロック分散に対する自身のブロック分散に基づき線形的に増減される。代替的な一実施形態では、フレーム全体の平均分散よりも大きい分散を有するブロックのみに、フレームＱＰであるＱＰｆｒａｍｅとＱＰｍａｘとの間のＱＰ値が振り当てられて、かつ、その振当量はＱＰｂｌｏｃｋ＝（（ｖａｒｂｌｏｃｋ−ｖａｒｆｒａｍｅ／ｖａｒｂｌｏｃｋ））×（ＱＰｍａｘ−ＱＰｆｒａｍｅ）＋ＱＰｆｒａｍｅとなるように線形的に増減される。この代替的な実施形態において、分散の大きいブロックに対するＱＰ振当量は、ＴＣＳＦによりさらに洗練化されてもよい。例えば、ＴＭＶＭでそのブロックが前景データと見なされて且つＴＣＳＦのコントラスト感度対数値（図５の縦軸）が０．５未満である（そのブロックが時間的に重要でないことを意味する）場合には、ＱＰｂｌｏｃｋが２だけ増やされる。代替的な一実施形態では、エッジ検出プロセスが適用され得て、エッジを含むブロックのＱＰが、それまでに振り当てられていた空間的複雑度からのＱＰを上書きするようにＱＰｍｉｎに調節され得る。その理由は、エッジが、ＨＶＳにとって極めて気付き易いものだからである。さらなる実施形態では、極めて明るいか又は極めて暗いブロックのＱＰが、それまでに振り当てられていた分散及び（場合によっては）エッジ検出からのＱＰを上書きすることによってＱＰｍａｘに調節し直され得る。その理由は、極めて暗い領域や極めて明るい領域が、ＨＶＳにとって気付き難いからである。このプロセスは、輝度マスキングとして知られる。
【００８８】
さらなる実施形態では、上記に加えて、分散の大きいブロックについてのＱＰｍａｘの数値が、符号化された映像の品質レベルに基づいて動的に決定され得る。その思想は、低品質の符号化では分散の大きいブロックにおける品質低下を許容できないのでＱＰｍａｘはＱＰｆｒａｍｅにより近づけるのが望ましい一方、高品質の符号化ではビットを節約するために分散の大きいブロックについてのＱＰｍａｘを増やすことを許容できるというものである。符号化の品質は、各Ｉ（イントラ）フレーム毎に、平均フレーム分散の±５％以内の分散を有するブロックの平均ＳＳＩＭを算出することによって更新され得て、かつ、ＳＳＩＭ値が高ければ高いほどＱＰｍａｘのより高い数値に対応するようにされる。代替的な一実施形態では、品質指標が平均ＳＳＩＭと平均フレーム分散との積として算出されるように、平均ＳＳＩＭがそのフレームの平均分散によって調節される。
【００８９】
さらなる実施形態では、上記に加えて、分散の極めて小さいブロック（ＨＶＳにとって特に可視的であるフラットな領域に相当）に対して、これらの領域における高品質符号化を確実にするために、決まった低いＱＰ値が振り当てられ得る。例えば、Ｉ（イントラ）フレームの場合、０〜１０の分散を有するブロックにＱＰ＝２８が振り当てられ得て、１０〜３０の分散を有するブロックにＱＰ＝３０が振り当てられ得て、３０〜６０の分散を有するブロックにＱＰ＝３２が振り当てられ得る。それから、Ｐ及びＢフレーム内のブロックに対するＱＰ振当量が、上記のＱＰからそれぞれｉｐｒａｔｉｏ（ｉｐ率）パラメータ及びｐｂｒａｔｉｏ（ｐｂ率）パラメータを用いて導き出され得る。
【００９０】
さらなる実施形態では、上記に加えて、分散の小さいブロック（例えば、６０〜平均フレーム分散の分散を有するブロック等）に対してフレームＱＰＱＰｆｒａｍｅが振り当てられて、それから、当該分散の小さいブロックが、さらなる品質向上が必要なのか否かを判定するように調べられる。一実施形態では、ブロックノイズ（blockiness）アーチファクトを、符号化中の現在の（ターゲット）ブロックからの再構成されたピクセル及び元々のピクセルの空間的複雑度及び輝度を符号化済みの周囲のブロック（例えば、左、左上、上、右上（これらが存在する場合）のブロック等）の空間的複雑度及び輝度と比較することによって検出し得る。仮に、ターゲットブロックの再構成されたピクセルの空間的複雑度尺度及び輝度尺度と近傍ブロックの対応する尺度との間には大きな違いがあるものの、そのターゲットブロックの元々のピクセルとその近傍ブロックの元々のピクセルとの間には空間的複雑度及び輝度にそのような違いがない場合には、そのターゲットブロックが「ブロックノイズ（blocky）」であると見なされる。この場合、そのブロックのＱＰ値が、当該ブロックの符号化品質を向上させるように減らされる（例えば、２だけ減らされる）。他の実施形態では、ターゲットブロックの推定品質が、符号化済みの周囲のブロック（例えば、左、左上、右、右上（これらが存在する場合）のブロック等）のＳＳＩＭ値及びＱＰ値を平均化することによって算出される。その平均ＱＰ値ＱＰａｖｇが、そのターゲットブロックについての推定ＱＰＱＰｂｌｏｃｋとされる。平均ＳＳＩＭ値ＳＳＩＭｅｓｔが０．９未満であると、ＱＰｂｌｏｃｋ＝ＱＰａｖｇが２だけ減らされてその品質を向上させる。さらなる実施形態において、ＴＭＶＭにより前景データとして特定されたターゲットブロックは、そのＴＣＳＦのコントラスト感度対数値（図５の縦軸）が０．８超である（そのブロックが時間的に重要であることを意味する）場合にのみ、ＱＰｂｌｏｃｋが２だけ減らされる。
【００９１】
これまでに説明した方法は、時間的重要度マップ（ＴＭＶＭによる洗練化を伴うか又は伴わないＴＣＳＦ）、空間的重要度マップまたは両方を使用し得る。時間的重要度マップと空間的重要度マップとの両方が用いられた場合、その結果生じるものは、統合化された重要度マップと称される。
【００９２】
前述したような知覚的統計量から生成された重要度マップは、動き補償を用いて動きベクトルを生成する映像圧縮フレームであればどのような映像圧縮フレームにも適用可能であり得て、これにより、同じ符号化サイズで視覚的により優れた符号化を作り出すようにレート歪み解析と量子化との両方が向上される。映像圧縮への重要度マップの適用は、既に詳述した連続的ブロックトラッカー（ＣＢＴ）に適用するうえで特殊な適用を必要としない。しかも、ＣＢＴは、どの動きベクトルが真の動きベクトルであるのかを正確に決定するという追加の能力を提供するので、重要度マップはＣＢＴベースの符号化フレームワークにおいてより効果的である。その具体的な理由として、ＣＢＴのフレーム−フレーム間動きベクトル（図８Ａのフレーム−フレーム間追跡２１０からのもの）が、映像の元々のフレームから生成されたものであって再構成されたフレームから生成されたものではない点が挙げられる。一般的なエンコーダの場合の図２及び図７のフレームストア８５は符号化プロセスから生成された再構成後のフレームを含むのに対し、図３、図４及び図８Ａのフレームストア２０５は元々の映像フレームを含んでいる。そのため、ＣＢＴのフレーム−フレーム間追跡（図３、図４及び図８の符号２１０）は映像の真の動きをより良好に追跡することが可能であり、かつ、そのフレーム−フレーム間動きベクトルはより正確な真の動きベクトルマップを生成する。対照的に、一般的なエンコーダの動きベクトルは、レート歪み（圧縮）性能を最適化するように選択されており、映像の真の動きを反映しない可能性がある。
【００９３】
なお、生成された重要度マップは、イントラ予測フレームにも、これまでに述べた手法に従ってイントラ予測モード間のレート歪み最適化を改変するか又はブロックレベル量子化を改変することによって適用可能であり得る。ただし、オールイントラエンコーダ（全イントラエンコーダ）の場合には、ＴＣＳＦを算出するうえで、映像フレーム内のそれぞれのデータブロックについての動きベクトルを生成するための別個の符号化手段（例えば、図８Ａのフレーム−フレーム間追跡２１０等）が必要となる。
【００９４】
＜デジタル処理環境＞
本発明の例示的な実装は、ソフトウェア環境でもファームウェア環境でもハードウェア環境でも実現可能であり得る。図９Ａに、そのような環境の一つを示す。少なくとも１つのクライアントコンピュータ／デバイス９５０（例えば、携帯電話、コンピューティングデバイス等）およびクラウド９６０（またはサーバコンピュータもしくはサーバコンピュータのクラスタ）は、アプリケーションプログラムを実行する処理機能、記憶機能、符号化機能、復号化機能および入出力装置などを提供する。
【００９５】
また、少なくとも１つのクライアントコンピュータ／デバイス９５０は、通信ネットワーク９７０を介して、他のクライアントデバイス／プロセス９５０および少なくとも１つのサーバコンピュータ９６０を含む他のコンピューティングデバイスと接続可能であり得る。通信ネットワーク９７０は、リモートアクセスネットワークの一部、グローバルネットワーク（例えば、インターネット等）の一部、世界規模のコンピュータの集まりの一部、ローカルエリアネットワークの一部、ワイドエリアネットワークの一部、あるいは、現在それぞれのプロトコル（ＴＣＰ／ＩＰ、Ｂｌｕｅｔｏｏｔｈ（登録商標）など）を用いて相互通信するゲートウェイの一部であり得る。それ以外の電子デバイス／コンピュータネットワークアーキテクチャも使用可能である。
【００９６】
本発明の実施形態は、映像又はデータ信号情報を符号化、追跡、モデル化、フィルタリング、調整、復号化又は表示する手段を含み得る。図９Ｂは、そのような映像又はデータ信号情報の符号化を促進するのに用いられ得る、図９Ａの処理環境における所与のコンピュータ／コンピューティングノード（例えば、クライアントプロセッサ／デバイス／携帯電話デバイス／タブレット９５０、サーバコンピュータ９６０等）の内部構造の図である。各コンピュータ９５０，９６０は、コンピュータ又は処理システムの構成要素間のデータ転送に用いられる実在する又は仮想的なハードウェアラインのセットであるシステムバス９７９を備える。バス９７９は、コンピュータシステムの相異なる構成要素（例えば、プロセッサ、エンコーダチップ、デコーダチップ、ディスクストレージ、メモリ、入力／出力ポート等）同士を接続する共有の配管のようなものであり、それら構成要素間のデータのやり取りを可能にする。システムバス９７９には、様々な入出力装置（例えば、キーボード、マウス、ディスプレイ、プリンタ、スピーカ等）をコンピュータ９５０，９６０に接続するための入出力装置インターフェース９８２が取り付けられている。ネットワークインターフェース９８６は、コンピュータがネットワーク（例えば、図９Ａの符号９７０で示されるネットワーク等）に取り付けられた他の様々なデバイスと接続することを可能にする。メモリ９９０は、本発明のソフトウェア実装を実現するのに用いられるコンピュータソフトウェア命令９９２及びデータ９９４を記憶する揮発性メモリである。
【００９７】
ディスクストレージ９９５は、本発明の一実施形態を実現するのに用いられるコンピュータソフトウェア命令９９８（等価的には「ＯＳプログラム」）及びデータ９９４を記憶する不揮発性ストレージである。また、ディスクストレージ９９５は、映像を圧縮フォーマットで長期的に記憶するのにも使用され得る。システムバス９７９には、さらに、コンピュータ命令を実行する中央演算処理装置９８４も取り付けられている。なお、本明細書をとおして「コンピュータソフトウェア命令」と「ＯＳプログラム」は互いに等価物とする。
【００９８】
一例として、エンコーダは、時間的情報や空間的情報から形成された重要度マップを用いて映像データを符号化するためのコンピュータ読取り可能な命令９９２により構成され得る。これらの重要度マップは、映像データの符号化／復号化を最適化するための、エンコーダ（又はエンコーダの構成要素）へのフィードバックループを提供するように構成され得る。
【００９９】
一実施形態において、プロセッサルーチン９９２及びデータ９９４は、エンコーダ（概して符号９９２で示す）を備えるコンピュータプログラムプロダクトである。このようなコンピュータプログラムプロダクトは、そのエンコーダ用のソフトウェア命令の少なくとも一部を提供する、ストレージ装置９９４に記憶可能なコンピュータ読取り可能な媒体を含む。
【０１００】
コンピュータプログラムプロダクト９９２は、当該技術分野において周知である任意の適切なソフトウェアインストール方法によってインストール可能なものであり得る。また、他の実施形態において、前記エンコーダの前記ソフトウェア命令の少なくとも一部は、ケーブルおよび／または通信および／または無線接続を介してダウンロード可能なものであり得る。他の実施形態において、エンコーダシステムソフトウェアは、非過渡的なコンピュータ読取り可能な媒体に組み込まれたコンピュータプログラム伝播信号プロダクト９０７（図９Ａ）であり、当該コンピュータプログラム伝播信号プロダクト９０７は、実行されると、伝播媒体上の伝播信号（例えば、電波、赤外線波、レーザ波、音波、インターネットなどのグローバルネットワークや他の少なくとも１つのネットワークによって伝播される電気波など）として実現され得る。このような搬送媒体又は搬送信号が、本発明にかかるルーチン／プログラム９９２用のソフトウェア命令の少なくとも一部を提供する。
【０１０１】
代替的な実施形態において、前記伝播信号は、伝播媒体によって搬送されるアナログ搬送波またはデジタル信号である。例えば、前記伝播信号は、グローバルネットワーク（例えば、インターネット等）、電気通信網または他のネットワークによって搬送されるデジタル信号であり得る。一実施形態において、前記伝播信号は、所与の期間のあいだ伝播媒体によって送信されるものであり、例えば、数ミリ秒、数秒、数分またはそれ以上の期間のあいだネットワークによってパケットで送信される、ソフトウェアアプリケーション用の命令等であり得る。他の実施形態において、コンピュータプログラムプロダクト９９２の前記コンピュータ読取り可能な媒体は、コンピュータシステム９５０が受け取って読み取りし得る伝播媒体である。例えば、コンピュータシステム９５０は、前述したコンピュータプログラム伝播信号プロダクトの場合のように、伝播媒体を受け取ってその伝播媒体内に組み込まれた伝播信号を特定する。
【０１０２】
本発明を例示的な実施形態を参照しながら具体的に図示・説明したが、当業者であれば、添付の特許請求の範囲に包含された本発明の範囲を逸脱しない範疇で形態や細部に様々な変更を施せることを理解するであろう。
なお、本発明は、実施の態様として以下の内容を含む。
〔態様１〕
複数の映像フレームを符号化する方法であって、
前記映像フレームは、互いに重なり合わないターゲットブロックを有しており、
当該方法は、
重要度マップが量子化を調整することによって各映像フレーム内の符号化すべき各ターゲットブロックの符号化品質に影響を与えるように、前記重要度マップを用いて前記複数の映像フレームを符号化する過程、
を備え、前記重要度マップが：
時間的情報及び空間的情報を用いて当該重要度マップを設定すること；ならびに、
（ｉ）当該重要度マップが高い数値をとるブロックでは、ブロック量子化パラメータ（ＱＰ）がフレーム量子化パラメータＱＰｆｒａｍｅに比べて小さくされることで、これらのブロックについては高い品質となるように、かつ、（ｉｉ）当該重要度マップが低い数値をとるターゲットブロックでは、前記ブロック量子化パラメータが前記フレーム量子化パラメータＱＰｆｒａｍｅに比べて大きくされることで、これらのブロックについては低い品質となるように、計算によって、前記複数の映像フレームのうちのある映像フレームのどの部分が人間の知覚にとって最も気付き易いのかを当該重要度マップに示させること；
によって構成されている、方法。
〔態様２〕
態様１に記載の方法において、前記空間的情報が、ルールに基づく空間的複雑度マップ（ＳＣＭ）により提供されて、その最初のステップが、前記フレーム内のどのターゲットブロックが当該フレーム内の平均ブロック分散ｖａｒｆｒａｍｅよりも大きい分散を有するかを決定することであり、
前記平均ブロック分散ｖａｒｆｒａｍｅよりも大きい分散を有するブロックに対して、前記フレーム量子化パラメータＱＰｆｒａｍｅよりも高い量子化パラメータ（ＱＰ）値を振り当て、このブロック量子化パラメータ（ＱＰ）の振当量ＱＰｂｌｏｃｋは、そのブロック分散ｖａｒｂｌｏｃｋが前記平均ブロック分散ｖａｒｆｒａｍｅよりもいかなる程度大きいかに従って、前記フレーム量子化パラメータＱＰｆｒａｍｅと量子化パラメータ上限ＱＰｍａｘとの間で線形的に増減される、方法。
〔態様３〕
態様１に記載の方法において、前記時間的情報が、
どのターゲットブロックが観測者である人間にとって時間的に最も気付き易いかを示す時間的コントラスト感度関数（ＴＣＳＦ）、および、
どのターゲットブロックが前景データに相当するかを示す真の動きベクトルマップ（ＴＭＶＭ）
により提供されて、前記ＴＣＳＦは、前景データとして特定されたターゲットブロックについてのみ有効とされる、方法。
〔態様４〕
態様２に記載の方法において、分散の大きいブロックは、そのブロック量子化パラメータ（ＱＰ）である前記振当量ＱＰｂｌｏｃｋが、前記ＴＭＶＭがターゲットブロックを前景データとして特定し且つ前記ＴＣＳＦのこのブロックについてのコントラスト感度対数値が０．５未満である場合には前記振当量ＱＰｂｌｏｃｋが２増加するように、前記ＴＣＳＦ及び前記ＴＭＶＭによりさらに洗練化される、方法。
〔態様５〕
態様２に記載の方法において、前記ＳＣＭは、さらに、極めて明るい（１７０超の輝度）か又は極めて暗い（６０未満の輝度）ターゲットブロックのブロック量子化パラメータである前記振当量ＱＰｂｌｏｃｋがＱＰｍａｘに調節し直される輝度マスキングを含む、方法。
〔態様６〕
態様２に記載の方法において、前記ＳＣＭは、さらに、前記符号化された映像の品質レベルに基づく前記量子化パラメータ上限ＱＰｍａｘの動的な決定を含み、
この動的な決定では、イントラ（Ｉ）フレーム内のターゲットブロックの平均構造的類似度（ＳＳＩＭ）算出結果をこれらフレームの平均ブロック分散ｖａｒｆｒａｍｅと共に用いて、品質が測定され、
前記測定された品質が低いと、前記量子化パラメータ上限ＱＰｍａｘの数値が前記フレーム量子化パラメータＱＰｆｒａｍｅに近づくように減らされる、方法。
〔態様７〕
態様２に記載の方法において、分散の極めて小さいブロックに対して、これらの領域における高品質符号化を確実にするために、前記ブロック分散が小さいほど前記振当量ＱＰｂｌｏｃｋの数値が低くなるように（、かつ、品質が高くなるように）、決められた低い量子化パラメータ（ＱＰ）の値である前記振当量ＱＰｂｌｏｃｋが振り当てられる、方法。
〔態様８〕
態様７に記載の方法において、分散の極めて小さいブロックに対する前記低い量子化パラメータ（ＱＰ）の値である前記振当量ＱＰｂｌｏｃｋは、最初に、Ｉフレームについて決められ、その後、Ｐフレーム及びＢフレームについてはｉｐｒａｔｉｏパラメータ及びｐｂｒａｔｉｏパラメータを用いて決められる、方法。
〔態様９〕
態様７に記載の方法において、分散は小さいが、分散が極めて小さいとは見なさないブロックは、当該ブロックについて品質向上が必要か否かを判定するために、
前記ブロック量子化パラメータ（ＱＰ）の初めの推定値である前記振当量ＱＰｂｌｏｃｋが現在のブロックの左、左上、右および右上の既に符号化済みの近傍ブロックの量子化パラメータ（ＱＰ）の値を平均することによって算出されて、且つ、
前記現在のブロックの前記ＳＳＩＭの推定ＳＳＩＭｅｓｔが前記現在のブロックの左、左上、右および右上の既に符号化済みの近傍ブロックのＳＳＩＭ値から算出されて、且つ、
ＳＳＩＭｅｓｔが０．９未満の場合、前記振当量ＱＰｂｌｏｃｋの数値が２減少されるように、
調べられる、方法。
〔態様１０〕
態様９に記載の方法において、前記品質向上は、前記ＴＭＶＭにより前景データとして特定されて且つ前記ＴＣＳＦのコントラスト感度対数値が０．８超であるブロックにのみ適用される、方法。
〔態様１１〕
態様３に記載の方法において、前記ＴＣＳＦの時間的周波数は、前記ターゲットブロックとその参照ブロックとの間の色空間領域におけるＳＳＩＭを用いて波長の近似を求めて且つ動きベクトルの大きさとフレームレートとを用いて速度の近似を求めることによって算出される、方法。
〔態様１２〕
態様３に記載の方法において、前記ＴＣＳＦは、現在のフレームについての当該ＴＣＳＦが最近のフレームにおけるＴＣＳＦマップの重み付き平均であるように且つより最近のフレームがより大きい重み付けを受けるように、複数のフレームにわたって算出される、方法。
〔態様１３〕
態様３に記載の方法において、前記ＴＭＶＭは、前景データの場合にのみ１に設定される、方法。
〔態様１４〕
態様１３に記載の方法において、前景データは、所与のターゲットブロックについてのエンコーダ動きベクトルと当該ブロックについてのグローバル動きベクトルとの差分を算出し、十分に大きい差分を有するブロックが前景データであると判断されることによって特定される、方法。
〔態様１５〕
態様１４に記載の方法において、前景データとして特定されたデータブロックについて、前記グローバル動きベクトルから前記エンコーダ動きベクトルが減算されることによって差分動きベクトルを得て、この差分動きベクトルの大きさが前記ＴＣＳＦの時間的周波数を算出するのに用いられる、方法。
〔態様１６〕
態様３に記載の方法において、前記ＴＣＳＦは、エンコーダからの動きベクトルから算出される、方法。
〔態様１７〕
態様１に記載の方法において、前記重要度マップが前記時間的情報及び前記空間的情報で設定されたものである場合、当該重要度マップは統合化された重要度マップである、方法。
〔態様１８〕
映像データを符号化するシステムであって、
重要度マップを用いて複数の映像フレームを符号化するコーデックであって、当該映像フレームは、互いに重なり合わないターゲットブロックを有している、コーデック、
を備え、前記重要度マップは、量子化を調整することによって各映像フレーム内の符号化すべき各ターゲットブロックの符号化品質に影響を与えるように構成されており、
前記重要度マップが：
時間的情報及び空間的情報を用いて当該重要度マップを設定することであって、これら時間的情報と空間的情報とにより設定された重要度マップは、統合化された重要素マップであること；ならびに、
（ｉ）当該重要度マップが高い数値をとるブロックでは、ブロック量子化パラメータ（ＱＰ）がフレーム量子化パラメータＱＰｆｒａｍｅに比べて小さくされることで、これらのブロックについては高い品質となるように、かつ、（ｉｉ）当該重要度マップが低い数値をとるターゲットブロックでは、前記ブロック量子化パラメータが前記フレーム量子化パラメータＱＰｆｒａｍｅに比べて大きくされることで、これらのブロックについては低い品質となるように、計算によって、前記複数の映像フレームのうちのある映像フレームの、人間の知覚にとって最も気付き易い部分を当該重要度マップに示させること；
によって構成されている、システム。
〔態様１９〕
態様１８に記載のエンコーダにおいて、前記空間的情報が、ルールに基づく空間的複雑度マップ（ＳＣＭ）により提供されて、その最初のステップが、前記フレーム内のどのターゲットブロックが当該フレーム内の平均ブロック分散ｖａｒｆｒａｍｅよりも大きい分散を有するかを決定することであり、
前記平均ブロック分散ｖａｒｆｒａｍｅよりも大きい分散を有するブロックに対して、前記フレーム量子化パラメータＱＰｆｒａｍｅよりも高い量子化パラメータ（ＱＰ）値を振り当て、このブロック量子化パラメータ（ＱＰ）の振当量ＱＰｂｌｏｃｋは、そのブロック分散ｖａｒｂｌｏｃｋが前記平均ブロック分散ｖａｒｆｒａｍｅよりもいかなる程度大きいかに従って、前記フレーム量子化パラメータＱＰｆｒａｍｅと量子化パラメータ上限ＱＰｍａｘとの間で線形的に増減される、エンコーダ。
〔態様２０〕
態様１８に記載のエンコーダにおいて、前記時間的情報が、
どのターゲットブロックが観測者である人間にとって時間的に最も気付き易いかを示す時間的コントラスト感度関数（ＴＣＳＦ）、および、
どのターゲットブロックが前景データに相当するかを示す真の動きベクトルマップ（ＴＭＶＭ）
により提供されて、前記ＴＣＳＦは、前景データとして特定されたターゲットブロックについてのみ有効とされる、エンコーダ。
〔態様２１〕
態様１９に記載のエンコーダにおいて、分散の大きいブロックは、そのブロック量子化パラメータ（ＱＰ）である前記振当量ＱＰｂｌｏｃｋが、前記ＴＭＶＭがターゲットブロックを前景データとして特定し且つ前記ＴＣＳＦのこのブロックについてのコントラスト感度対数値が０．５未満である場合には前記振当量ＱＰｂｌｏｃｋが２増加するように、前記ＴＣＳＦ及び前記ＴＭＶＭによりさらに洗練化される、エンコーダ。
〔態様２２〕
態様１９に記載のエンコーダにおいて、前記ＳＣＭは、さらに、極めて明るい（１７０超の輝度）か又は極めて暗い（６０未満の輝度）ターゲットブロックのブロック量子化パラメータである前記振当量ＱＰｂｌｏｃｋがＱＰｍａｘに調節し直される輝度マスキングを含む、エンコーダ。
〔態様２３〕
態様１９に記載のエンコーダにおいて、前記ＳＣＭは、さらに、符号化された映像の品質レベルに前記量子化パラメータ上限基づくＱＰｍａｘの動的な決定を含み、
この動的な決定では、イントラ（Ｉ）フレーム内のターゲットブロックの平均構造的類似度（ＳＳＩＭ）算出結果をこれらフレームの平均ブロック分散ｖａｒｆｒａｍｅと共に用いて、品質が測定され、
測定された品質が低いと、前記量子化パラメータ上限ＱＰｍａｘの数値が前記フレーム量子化パラメータＱＰｆｒａｍｅ近づくように減らされる、エンコーダ。
〔態様２４〕
態様１９に記載のエンコーダにおいて、分散の極めて小さいブロックに対して、これらの領域における高品質符号化を確実にするために、前記ブロック分散が小さいほど前記振当量ＱＰｂｌｏｃｋの数値が低くなるように（、かつ、品質が高くなるように）、決められた低い量子化パラメータ（ＱＰ）の値である前記振当量ＱＰｂｌｏｃｋが振り当てられる、エンコーダ。
〔態様２５〕
態様２４に記載のエンコーダにおいて、分散の極めて小さいブロックに対する前記低い量子化パラメータ（ＱＰ）の値である前記振当量ＱＰｂｌｏｃｋは、最初に、Ｉフレームについては決められ、その後、Ｐフレーム及びＢフレームについてはｉｐｒａｔｉｏパラメータ及びｐｂｒａｔｉｏパラメータを用いて決められる、エンコーダ。
〔態様２６〕
態様１９に記載のシステムにおいて、分散は小さいが、分散が極めて小さいとは見なさないブロックは、当該ブロックについて品質向上が必要か否かを判定するために、
前記ブロック量子化パラメータ（ＱＰ）の初めの推定値である前記振当量ＱＰｂｌｏｃｋが現在のブロックの左、左上、右および右上の既に符号化済みの近傍ブロックの量子化パラメータ（ＱＰ）の値を平均することによって算出されて、且つ、
前記現在のブロックの前記ＳＳＩＭの推定ＳＳＩＭｅｓｔが前記現在のブロックの左、左上、右および右上の既に符号化済みの近傍ブロックのＳＳＩＭ値から算出されて、且つ、
ＳＳＩＭｅｓｔが０．９未満の場合、前記振当量ＱＰｂｌｏｃｋの数値が２減少されるように、
調べられる、システム。
〔態様２７〕
態様２６に記載のシステムにおいて、前記品質向上は、前記ＴＭＶＭにより前景データとして特定されて且つ前記ＴＣＳＦのコントラスト感度対数値が０．８超であるブロックにのみ適用される、システム。
〔態様２８〕
態様２０に記載のシステムにおいて、前記ＴＣＳＦの時間的周波数は、前記ターゲットブロックとその参照ブロックとの間の色空間領域におけるＳＳＩＭを用いて波長の近似を求めて且つ動きベクトルの大きさとフレームレートとを用いて速度の近似を求めることによって算出される、システム。
〔態様２９〕
態様２０に記載のシステムにおいて、前記ＴＣＳＦは、現在のフレームについての当該ＴＣＳＦが最近のフレームにおけるＴＣＳＦマップの重み付き平均であるように且つより最近のフレームがより大きい重み付けを受けるように、複数のフレームにわたって算出される、システム。
〔態様３０〕
態様２０に記載のシステムにおいて、前記ＴＭＶＭは、前景データの場合にのみ１に設定される、システム。
〔態様３１〕
態様３０に記載のシステムにおいて、前景データは、所与のターゲットブロックについてのエンコーダ動きベクトルと当該ブロックについてのグローバル動きベクトルとの差分を算出し、十分に大きい差分を有するブロックが前景データであると判断されることによって特定される、システム。
〔態様３２〕
態様２０に記載のシステムにおいて、前景データとして特定されたデータブロックについて、前記グローバル動きベクトルから前記エンコーダ動きベクトルが減算されることによって差分動きベクトルを得て、この差分動きベクトルの大きさが前記ＴＣＳＦの時間的周波数を算出するのに用いられる、システム。
〔態様３３〕
態様２０に記載のシステムにおいて、前記ＴＣＳＦは、前記エンコーダからの動きベクトルから算出される、システム。
〔態様３４〕
態様１８に記載のシステムにおいて、前記重要度マップが前記時間的情報と前記空間的情報で設定されたものである場合、当該重要度マップは統合化された重要度マップである、システム。
【図１】
0006698077.tif 000004
【図２】
0006698077.tif 000005
【図３】
0006698077.tif 000006
【図４】
0006698077.tif 000007
【図５】
0006698077.tif 000008
【図６】
0006698077.tif 000009
【図７】
0006698077.tif 000010
【図８Ａ】
0006698077.tif 000011
【図８Ｂ】
0006698077.tif 000012
【図９Ａ】
0006698077.tif 000013
【図９Ｂ】
0006698077.tif 000014