(57)【要約】本発明は、動画像圧縮システム、特にデジタル動画像システムの圧縮／伸張方法を提供する。本発明の方法は、動きベクトル予測符号化値の１／２位置画素と１／４位置画素を計算する際発生する丸め誤差と切り捨て誤差を補償する方法を提供する。本発明によれば、丸め／切り捨てのオフセットは、１／２位置画素値の計算結果を適宜シフトアップまたはシフトダウンすることにより少なくできる。本発明の方法は、０．５の小数点以下の値を持つ画素値は、補間された画素値に最も近い整数値に切り上げて変換する、あるいは切り捨てて変換することを交互に行う。本発明の好ましい実施例によれば、各動きベクトルには、第１表記または第２表記が割り当てられる。その結果、予測符号化されたブロック内の切り上げ変換、または切り下げ変換は、予測符号化ブロックに対応する動きベクトルの割り当てに依存する。本発明は符号化標準Ｈ．２６４／ＡＶＣに特に有益である。【特許請求の範囲】
【請求項１】
動画像符号化プロセスまたは復号プロセスに用いられ、動画像ピクチャ内の第１画素・ブロックの予測符号化値を、前に復号化した動画像ピクチャ内の、第１画素・ブロックに対し空間オフセットを有する第２画素・ブロックから、動きベクトルの組内の１つの動きベクトルに従って、決定する際に、整数画素位置の間にある１／２位置画素と１／４位置画素の補間値を計算する方法において、
（Ａ）  丸め加算値を含む近隣の整数画素位置に対し、ｎタップ・フィルタにより１／２位置画素値を計算するステップと、
（Ｂ）  ２個の隣り合う１／２位置画素値を平均化し、又は１個の隣の１／２位置画素値と１個の整数位置画素値とを平均化し、その後丸め演算あるいは切り捨て演算を実行して、１／４位置画素値を計算するステップと、
（Ｃ）  前記１／４位置画素値の丸め演算あるいは切り捨て演算により導入された画素値内の誤差シフトを補償するために、１／２位置画素値と１／４位置画素値に正しいシフト量を導入するために、前記丸め加算値を調整するステップと
を有する
ことを特徴とする補間された画素値を修正する方法。
【請求項２】
前記ｎタップ・フィルタは、６タップ・フィルタである
ことを特徴とする請求項１記載の方法。
【請求項３】
前記６タップ・フィルタは、（１／３２、−５／３２、２０／３２、２０／３２、−５／３２、１／３２）のインパルス応答を有し、
前記丸め加算値は、１６／３２から６／３２へ減らす
ことを特徴とする請求項２記載の方法。
【請求項４】
前記ｎタップ・フィルタは、４タップ・フィルタである
ことを特徴とする請求項１記載の方法。
【請求項５】
前記６タップ・フィルタは、（−１／８、５／８、５／８、−１／８）のインパルス応答を有し、
前記丸め加算値は、４／８から１／８へ減らす
ことを特徴とする請求項４記載の方法。
【請求項６】
前記動画像ピクチャは、Ｈ．２６４／ＡＶＣの符号化標準に従って符号化される
ことを特徴とする請求項１−５のいずれかに記載の方法。
【請求項７】
動画像符号化プロセスまたは復号プロセスに用いられ、動画像ピクチャ内の第１画素・ブロックの予測符号化値を、前に復号化した動画像ピクチャ内の、第１画素・ブロックに対し空間オフセットを有する第２画素・ブロックから、動きベクトルの組内の１つの動きベクトルに従って、決定する際に、整数画素位置の間にある１／２位置画素と１／４位置画素の補間値を計算する方法において、
（Ａ）  丸め加算値を含む近隣の整数画素位置に対し、ｎタップ・フィルタにより１／２位置画素値を計算するステップと、
（Ｂ）  ２個の隣り合う１／２位置画素値を平均化し、その後丸め演算を実行することにより、１／４位置画素値を計算するステップと、
（Ｃ）  第１表示または第２表示を、動きベクトルの組内のそれぞれの動きベクトルに割り当てるステップと、
（Ｄ）  前記動きベクトルに前記第１表示が割り当てられた場合には、第２画素ブロック内の補間値を計算する際、０．５の小数点部分をそれぞれ有する１０進補間値を、対応する最も近くの小さい整数値に変換するステップと、      
（Ｅ）  前記動きベクトルに前記第２表示が割り当てられた場合には、第２画素ブロック内の補間値を計算する際、０．５の小数点部分をそれぞれ有する１０進補間値を、対応する最も近くの大きい整数値に変換するステップと、      
ことを特徴とする補間された画素値を修正する方法。
【請求項８】
前記ステップ（Ｃ）は、前記第１表示または第２表示のいずれかを、前記動きベクトルの組内のそれぞれの動きベクトルに、所定の交互のパターンで、割り当てるステップを含む
ことを特徴とする請求項７記載の方法。
【請求項９】
前記ステップ（Ｃ）は、前記第１表示または第２表示のいずれかを、前記動きベクトルの組内のそれぞれの動きベクトルに、画素・データを入力として有するランダムあるいは疑似ランダム手順で決定される交互のパターンで、割り当てるステップを含む
ことを特徴とする請求項７記載の方法。
【請求項１０】
前記ステップ（Ｃ）は、前記第１表示または第２表示のいずれかを、前記動きベクトルの組内のそれぞれの動きベクトルに、通信時に関係するエンコーダとデコーダとの間で通信される交互のパターンで、割り当てるステップを含む
ことを特徴とする請求項７記載の方法。
【請求項１１】
前記補間値は、２タップ・フィルタ手段により計算された１／２画素位置値である
ことを特徴とする請求項７記載の方法。
【請求項１２】
前記補間値は、２タップ・フィルタ手段により計算された１／４画素位置値である
ことを特徴とする請求項７記載の方法。
【請求項１３】
前記動画像ピクチャは、Ｈ．２６４／ＡＶＣの符号化標準に従って符号化される
ことを特徴とする請求項７−１２のいずれかに記載の方法。
【請求項１４】
請求項１−１３のいずれか１つの方法を、Ｈ．２６４／ＡＶＣの符号化標準に従って、画素動き補償を行う際に使用する
ことを特徴とする装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像圧縮システムに関し、特に、動画像ピクチャ内の画素・ブロックの予測符号化値を決定する際に、補間画素値を計算する方法に関する。
【背景技術】
【０００２】
リアルタイムで動くピクチャの伝送は、いくつかのアプリケーションで用いられている。例えば、テレビ会議、ネット・ミーティング、テレビ放送、テレビ電話である。
【０００３】
しかし、動くピクチャを表示することは大量の情報を必要とする。これは、デジタル動画像が、通常８ビット（１バイト）でピクチャ内の各画素を表すことにより記述されるからである。このような圧縮前の動画像データは大量のビット容量となり、従来の通信ネットワーク／伝送ラインを介してリアルタイムで伝送することはできない。帯域が限られているからである。
【０００４】
かくして、リアルタイムで動画像を伝送するには、大幅なデータ圧縮が必要である。しかし、データ圧縮は、ピクチャの品質と妥協して行われる。それ故に、多大な努力が圧縮技術を開発するためになされている。これにより高品質の動画像のリアルタイムの伝送が、帯域が限られたデータ接続を介しても可能となる。
【０００５】
動画像圧縮システムの主要な目的は、できるだけ少ない容量で動画像情報を表すことである。容量は、ビットで定義され、定数値としてあるいはビット／時間単位として定義される。両方の場合とも目的はビット数を減らすことである。
【０００６】
最も一般的な動画像符号化方法は、ＭＰＥＧ＊とＨ．２６＊標準に記載されている。これらは、前に符号化し復号したピクチャからの予測に基づいたブロックを用いている。
【０００７】
動画像データは、伝送前に４つの主要なプロセスで処理される。すなわち、予測符号化と、変換と、量子化と、エントロピー符号化である。
【０００８】
予測符号化プロセスは、伝送すべき動画像シーケンス内の各ピクチャに必要とされるビット数を大幅に減らすことができる。この予測符号化方法は、シーケンスの一部と他の部分との類似性を利用している。予測符号化器部分は、符号化器と復号器の両方にとって公知であり、差分のみが伝送される。この差分は通常その表示よりも遙かに少ない容量でよい。予測符号化は、主に前に再構成されたピクチャからのピクチャ・コンテンツに基づいて行われる。このコンテンツの場所は、動きベクトルにより規定される。
【０００９】
通常の動画像シーケンスにおいては、現在のブロックＭのコンテンツは、前に復号したピクチャの対応するブロックに類似している。前の復号されたピクチャからの変化がない場合には、ブロックＭのコンテンツは、前に復号したピクチャの同一位置のブロックに等しい。他の場合には、ピクチャ内のオブジェクトを、ブロックＭのコンテンツが前に復号したピクチャの別の位置のブロックに等しくなるよう、移動させる。このような移動は、動きベクトル（Ｖ）で表される。例えば（３；４）の動きベクトルは、ブロックＭのコンテンツは、前に復号したピクチャから３画素分左に、４画素分上方に動かすことを意味する。
【００１０】
ブロックに関連する動きベクトル（motion vector）は、動きサーチ（motion search）を実行することにより決定される。この動きサーチは、ブロックのコンテンツを、異なる空間的オフセットの前のピクチャ内のブロックと逐次比較することにより行われる。現在のブロックに比較して最もマッチする比較ブロックに対する現在のブロックのオフセット（量）は、関連する動きベクトルとして、決定される。
【００１１】
Ｈ．２６２、Ｈ２６３、ＭＰＥＧ１、ＭＰＥＧ２においては、同一のコンセプトが拡張され、動きベクトルは１／２画素値も採ることができる。５．５のベクトル成分は、動きは画素５個分と画素６個分の中間であることを意味する。より具体的には、予測符号化値は、５画素分の動きと６画素分の動きの平均値を採ることにより得られる。これは２−タップ・フィルタと称し、間にある画素の予測符号化値を得るために、２個の画素に対し演算を実行するためそう呼ばれる。この種の動きベクトルは、分数画素解像度あるいは分数動きベクトルを有するとも称する。全てのフィルタ演算はインパルス応答により決定できる。２個の画素を平均化する演算は、（１／２、１／２）のインパルス応答で表すことができる。同様に、４個の画素に対する平均化は、（１／４、１／４、１／４、１／４）のインパルス応答を意味する。
【発明の開示】
【課題を解決するための手段】
【００１２】
特に本発明の第１の態様によれば、本発明は、動画像符号化プロセスまたは復号プロセスに用いられ、動画像ピクチャ内の第１画素・ブロックの予測符号化を、前に復号化した動画像ピクチャ内の、第１画素・ブロックに対し空間オフセットを有する第２画素・ブロックから、動きベクトルの組内の１つの動きベクトルに従って、決定する際に、整数画素位置の間にある１／２位置画素と１／４位置画素の補間値を計算する方法において、本発明の方法は、（Ａ）  丸め加算値を含む近隣の整数画素位置に対し、ｎ−タップ・フィルタにより１／２位置画素値を計算するステップと、（Ｂ）  ２個の隣り合う１／２位置画素値を平均化し、又は１個の隣の１／２位置画素値と１個の整数位置画素値とを平均化し、その後丸め演算あるいは切り捨て演算を実行して、１／４位置画素値を計算するステップと、（Ｃ）  前記１／４位置画素値の丸め演算あるいは切り捨て演算により導入された画素値内の誤差シフトを補償するために、１／２位置画素値と１／４位置画素値に正しいシフト量を導入するために、前記丸め加算値を調整するステップとにより実行される。
【００１３】
更に、本発明の第２の態様によれば、本発明は、動画像符号化プロセスまたは復号プロセスに用いられ、動画像ピクチャ内の第１画素・ブロックの予測符号化を、前に復号化した動画像ピクチャ内の、第１画素・ブロックに対し空間オフセットを有する第２画素・ブロックから、動きベクトルの組内の１つの動きベクトルに従って、決定する際に、整数画素位置の間にある１／２位置画素と１／４位置画素の補間値を計算する方法に関する。本発明の方法は、（Ａ）丸め加算値を含む近隣の整数画素位置に対し、ｎ−タップ・フィルタにより１／２位置画素値を計算するステップと、（Ｂ）２個の隣り合う１／２位置画素値を平均化し、その後丸め演算を実行することにより、１／４位置画素値を計算するステップと、（Ｃ）  第１表示または第２表示を、動きベクトルの組内のそれぞれの動きベクトルに割り当てるステップと、（Ｄ）前記動きベクトルに前記第１表示が割り当てられた場合には、第２画素ブロック内の補間値を計算する際、０．５の小数点部分をそれぞれ有する１０進補間値を、対応する最も近くの小さい整数値に変換するステップと、（Ｅ）前記動きベクトルに前記第２表示が割り当てられた場合には、第２画素ブロック内の補間値を計算する際、０．５の小数点部分をそれぞれ有する１０進補間値を、対応する最も近くの大きい整数値に変換するステップとを有する。
【００１４】
本発明は、Ｈ．２６４／ＡＶＣの符号化標準による画素動き補償の方法を使用することに関する。
【実施例】
【００１５】
新たな動画像圧縮標準が、ＩＴＵとＩＳＯ／ＩＥＣの間の共同作業として開発された。２つの標準化団体の共通標準の公式名称は、「ITU-T Recommendation H.264」および「ISO/IEC MPEG-4 (Part 10) Advanced Video Coding」である。以下の説明においては、この共通の標準をＨ．２６４／ＡＶＣとして参照する。
【００１６】
Ｈ．２６４／ＡＶＣにおいては、符号化方法は、各補間に対する動きの解像度と画素数の両方の観点から改善されている。この方法は、最大１／４画素精度を有する動き補償予測符号化を用いる。１／８画素の精度さえも規定されているが、これは、如何なるプロファイル（圧縮符号化機能）にも含まれていない。整数画素位置と小数点以下（分数）の画素位置は、以下で表される（単純化のために、補間は、Ａ、Ｅ、Ｕ、Ｙの間でのみ示される）。
【表１】
2007512761.tif 000002
【００１７】
Ａ、Ｅ、Ｕ、Ｙの位置は、整数画素位置を表し、Ａ’’、Ｅ’、Ａ’、Ｅ’’は、Ａ−Ｅラインの追加の整数位置を表す。ｃ、ｋ、ｍ、ｏ、ｗは、半分（１／２）の画素位置を表す。これらの位置の補間された値は、整数画素値に対し演算するインパルス応答（１／３２、−５／３２、２０／３２、２０／３２、−５／３２、１／３２）の６−タップ・フィルタを用いて得られる。例えば、ｃは以下の式により計算できる。
【００１８】
【数１】
2007512761.tif 000003
【００１９】
分母は、データ処理に適した平均化演算を行うために３２を選択した。３２で割ることは、単純なシフト演算により容易に実行できる。右側へのシフト演算は、データシフトレジスタ内の切り捨てを意味する。その結果、最下位ビットは、レジスターから落ちる。デジタルデータ処理における切り捨て（truncation）ではなく、丸め（rounding）演算を行うために、従来どうり、０．５の丸め加算がこの演算に含まれる。このことは、右側へのシフト演算の前に、１６を加えることを意味する。
【００２０】
別法として、４−タップ・フィルタも以下の式を用いて補間値を計算できる。
【００２１】
【数２】
2007512761.tif 000004
【００２２】
フィルタは、適宜水平方向あるいは垂直方向に動作する。さらに、表１のｍに対する値を得るために、フィルタは、整数値に対しては作用させず、他の方向の既に補間された値に対し作用させる。上記に示した四角の中の残りの位置は、整数画素位置と近傍の１／２画素位置をそれぞれ平均化することにより（２−タップ・フィルタで）得られる。
【００２３】
【数３】
2007512761.tif 000005
【００２４】
補間の全ての計算により、少数点以下を含む１０進数値が得られる。すなわち、小数部分を有する値である。通常、小数部分が均一に分布している場合には、最も近い整数への変換は、全体的なオフセットエラーを導入することはない。しかし、多くの場合、２−タップ・フィルタを１／４画素位置の計算に用いる時には、全ての１０進数値は、０．５の小数部分を有する。通常の丸め演算をこれらの１０進数値に適用すると、全てが切り上げられる。上記した画素の表示式を参照すると、Ａ＝１００、ｃ＝１０１ならば、ｂ＝１０１である。
【００２５】
既に上記したように、Ｈ．２６４／ＡＶＣにおいては、１／４位置の画素は、２個の位置の平均として得られ、これらの位置は、整数位置画素あるいは１／２位置画素である。これらの画素の値が整数であると、正確な計算値は、整数あるいは０．５の少数部分を有する。この０．５の値を、「切り上げ」あるいは「切り捨て」により、計算された予測符号化値のポジティブまたはネガティブな丸めオフセットが得られる。この丸めオフセットは、予測符号化エラーを導入してしまう。この丸めオフセットは、実際のピクチャとそれに関連する予測符号化値との間の差分に対する「期待されたアド・オン（expected add-on）」を表す。この期待されたアド・オンは、符号化ゲインの目立った損失となる。これは、より大きな差分はより大きなビット量の伝送を必要とするからである。同様に、切り捨てもまた、同様なネガティブなオフセットとなる。
【００２６】
本発明によれば、上記の丸めオフセットは、１／２位置画素の計算結果を、適宜シフトアップするか、あるいはシフトダウンすることにより（１／４位置画素が切り上げられるか、又は切り捨てられるかによって）、減らすことができる。
【００２７】
本発明の一実施例においては、これは、若干のネガティブ又はポジティブのシフトを１／２位置画素の計算に際し導入することにより実行でき、２個の１／２位置画素値（あるいは、１個の整数位置画素と１個の１／２画素位置）の平均を丸める際あるいは切り捨てる際に導入される上記のポジティブ又はネガティブの丸めオフセットを補償（相殺）できる。
【００２８】
従って、１／２位置画素値の計算式を修正しなければならない。
【００２９】
従来技術によれば、１／４位置画素値は、通常切り上げられる。このことは、ポジティブの丸めオフセットを意味する。これは、以下の場合には当てはまるとされる。
【００３０】
１／２位置画素値の計算式の修正はさまざまな方法で実行されるが、経験的には、この補償（相殺）は、上記の計算式に加えられる丸め加算値（rouding additional value）を減らすことにより得られる。これは１／２位置画素の全体値を小さくする。その結果、丸め加算値の適正な減少は、１／４位置画素の丸め誤差をバランスさせるが、これは、１／４位置画素値が小さくなった１／２位置画素値から計算されているからである。経験則によれば、丸め加算値の適正な減少は、１６／３２から６／３２へと小さくする。４−タップ・フィルタの場合には、この丸め加算値は、４／８から１／８に減少する。
【００３１】
本発明の他の実施例においては、上記の丸めオフセットは、０．５の小数点以下の部分を有する値に対し、最も近くの大きい整数値と小さい整数値に交互に変換することにより、少なくできる。
【００３２】
例えば、本発明の結果は、ある場合においては、１００と１０１の間の平均は、１００に変換され、別の場合には１０１に変換されるが、これは、ある補間された画素位置に対し規定された規則に依存する。
【００３３】
どの補間された画素位置を、上方（大きい整数値）に変換するか、あるいは下方（小さい整数値）に変換するか（以下０．５変換と称する）の決定は、さまざまな方法で実行できる。しかし、好ましいのは、同一の動きベクトルに対しては、ブロック内の各画素に対したは、同一の０．５変換を用いることである。経験則によれば、ブロック内で０．５の変換を交互に行うことは高周波数成分を導入し、これは、通常より大きなビットの使用につながる。
【００３４】
かくして、本発明の好ましい実施例においては、０．５変換は、各動きベクトル値に割り当てられるが、０．５変換は隣り合う動きベクトルの間で変わってもよい。かくして、画素値にオフセットを引き起こす一方向への丸めが回避される。
【００３５】
さらに好ましい実施例を説明するために、動きサーチ（motion search）を画素のあるブロックに対し実行することを考える。動きサーチにおいては、ブロックは、現在のブロックに対し異なる空間的にオフセットした前のピクチャ内のブロックのコンテンツと逐次比較される。これらのオフセットは、それぞれの動きベクトルに関連付けられる。例えば、（０、１／４）の動きベクトルは、現在のブロックを、垂直方向に１／４位置だけシフトした前のピクチャ内のブロックと比較することに相当する。シフトされたブロック内の０．５の小数点を有する全ての平均値は、問題となっている動きベクトルがどの種類の０．５変換に割り当てられるかによって、上方向あるいは下方向のいずれかに変換される。かくして、ブロックの予測符号化値の０．５変換の種類は、好ましい実施例においては、行われた予測符号化が基づいた前のピクチャのブロックに対する位置と、対応する動きベクトルの０．５変換割り当てに依存する。
【００３６】
さらにまた、近接する動きベクトルの間の０．５変換内に、高程度のシフトがあるのが好ましいと考えられている。その理由の１つは、通常のエンコーダ（符号化器）は、ベクトル位置の小局部領域内において、最終ベクトルサーチを実行するからである。この最終サーチの間、テストされたベクトル位置は、０．５の少数部分を上方向と下方向に変換する合理的な混合（mixture）を表すのが好ましい。
【００３７】
０．５変換の割り当てルールは変わってもよい。最も単純な方法は、動きベクトル面で０．５変換のタイプを分散させる固定パターンを有することである。これを次に示す。この方法においては、各１／４画素ベクトル位置は、「アップ（up）」と「ダウン（down）」の表示の１つに割り当てられる。これは、０．５の小数点以下を有する１０進数に最も近い整数に向けて、上方向あるいは下方向に変換することである。下記の表中、大文字は整数位置を表し、小文字は１／２画素位置を表す。この場合、１／２画素位置は、如何なる表示も有しないが、その理由は、効果はあまりないと考えられるからである。
【表２】
2007512761.tif 000006
【００３８】
ここに示したパターンは単なる実施例で、他のパターンも用いることができる。
【００３９】
０．５変換の固定パターンに対する別のパターンは、０．５変換の別の動きベクトルへの割り当てをランダムにあるいは疑似ランダムに規定することである。これは、エンコーダ（符号化器）とデコーダ（復号器）がどの１／４画素位置が上方向に変換され、あるいは下方向に変換されるかを演繹することができるように規定するプロセスである。このプロセスは、エンコーダとデコーダの両方に既知のピクチャデータに依存する。このようなデータは、ブロック・ナンバリングと動きベクトル値と符号化モードである（しかしこれに限定されない）。データは、動きベクトル面に対する０．５変換を交互に割り当てる疑似ランダムパターンを決定するプロセジャに入力される。
【００４０】
固定パターンに対するさらに別の例は、予め規定しないパターンである。このパターンは、伝送時にエンコーダからデコーダへ通信される。この場合この目的専用のデータ量を限定し、符号化効率と妥協することのないようにすることが好ましい。
【００４１】
補間値の小数点以下の部分は、さまざまな値をとる可能性がある。例えば、１／２画素位置に対し上記の６−タップ・フィルタを用いる時には、０．５の小数点以下の部分が時々しか発生せず、通常これは、０．５変換が適用されるのに対し大差はない。他方で、２個の画素間を平均化するときは、これは１／４画素位置の場合であるが、０．５の小数点以下の部分は、通常事象の半分程度発生する。０．５変換を行うことの差は、それ故に遙かに大きく、本発明は、１／４画素位置の計算に対し、最も有効である。
【００４２】
本発明の利点は、バイアスされた丸め演算により導入されたオフセットを取り除くことであり、これにより、符号化効率を向上させることができる。
【００４３】
以上の説明は、本発明の一実施例に関するもので、この技術分野の当業者であれば、本発明の種々の変形例を考え得るが、それらはいずれも本発明の技術的範囲に包含される。
【国際調査報告】
2007512761.tif 000007
2007512761.tif 000008