(57)【要約】【課題】  同一パッチに所属するすべての画素が共通の動きベクトルを持つ制約がなく、かつ画素の動きベクトルの水平・垂直成分が隣接画素間距離の整数倍以外の値を取り得る動き補償方式に関し、動きベクトルの演算精度の差に起因する予測画像のミスマッチを、演算を複雑にせずに防ぐ方法を提供する。【解決手段】  予測画像の合成に使われる各画素の動きベクトルの水平、垂直成分が、それぞれ隣接画素間距離の１／ｄ1、１／ｄ2（ｄ1、ｄ2は正の整数）の整数倍の値のみをとるように規定する。【選択図】図２
2010246150.tif 000002
【特許請求の範囲】
【請求項１】
空間変換に基づく動き補償を用いて現フレームの予測画像の動き情報を推定し、前記予測画像の各画素の動きベクトルの水平・垂直成分を隣接画素間距離の１／ｄ１、１／ｄ２（ｄ１、ｄ２は正の整数）の整数倍に制限して前記動き情報から求めるときの精度ｄを決定する画像符号化方法によって符号化された符号化画像情報を復号化する画像復号化方法において、
前記空間変換に基づく動き補償によって求められた現フレームの予測画像の動き情報を受けとり、
前記現フレームの予測画像に含まれる各画素の動きベクトルの水平・垂直成分を隣接画素間距離の１／ｄ１、１／ｄ２（ｄ１、ｄ２は正の整数）の整数倍に制限して前記動き情報から求めることを特徴とする画像復号化方法。
【請求項２】
請求項１に記載の画像復号化方法において、
前記ｄ１、ｄ２の値は、２のｗ１、ｗ２乗（ｗ１、ｗ２は正の整数）であることを特徴とする画像復号化方法。
【請求項３】
請求項１あるいは２に記載の画像復号化方法において、
前記動き情報は、前記予測画像のパッチ頂点の動きベクトルであることを特徴とする画像復号化方法。
【請求項４】
同一パッチ内の画素が異なる動きベクトルを持つことを許容する動き補償を用いて現フレームの予測画像の動き情報を推定し、前記予測画像の各画素の動きベクトルの水平・垂直成分を隣接画素間距離の１／ｄ１、１／ｄ２（ｄ１、ｄ２は正の整数）の整数倍に制限して前記動き情報から求めるときの精度ｄを決定する画像符号化方法によって符号化された符号化画像情報を復号化する画像復号化方法において、
前記動き補償によって求められた現フレームの予測画像のパッチ頂点の動きベクトルを受けとり、
前記現フレームの予測画像に含まれる各画素の動きベクトルの水平・垂直成分を隣接画素間距離の１／ｄ１、１／ｄ２（ｄ１、ｄ２は正の整数）の整数倍に制限して前記パッチ頂点の動きベクトルから求めることを特徴とする画像復号化方法。
【請求項５】
請求項４に記載の画像復号化方法において、
前記ｄ１、ｄ２の値は、２のｗ１、ｗ２乗（ｗ１、ｗ２は正の整数）であることを特徴とする画像復号化方法。
【請求項６】
空間変換に基づく動き補償を用いて現フレームの予測画像の動き情報を推定し、前記予測画像の各画素の動きベクトルの水平・垂直成分を隣接画素間距離の１／ｄ１、１／ｄ２（ｄ１、ｄ２は正の整数）の整数倍に制限して前記動き情報から求めるときの精度ｄを決定する画像符号化方法によって符号化された符号化画像情報を復号化する画像復号化装置において、
前記空間変換に基づく動き補償によって求められた現フレームの予測画像の動き情報を受けとる手段と、
前記現フレームの予測画像に含まれる各画素の動きベクトルの水平・垂直成分を隣接画素間距離の１／ｄ１、１／ｄ２（ｄ１、ｄ２は正の整数）の整数倍に制限して前記動き情報から求める手段を有することを特徴とする画像復号化装置。
【請求項７】
請求項６に記載の画像復号化装置において、
前記ｄ１、ｄ２の値は、２のｗ１、ｗ２乗（ｗ１、ｗ２は正の整数）であることを特徴とする画像復号化装置。
【請求項８】
請求項６あるいは７に記載の画像復号化装置において、
前記動き情報は、前記予測画像のパッチ頂点の動きベクトルであることを特徴とする画像復号化装置。
【請求項９】
同一パッチ内の画素が異なる動きベクトルを持つことを許容する動き補償を用いて現フレームの予測画像の動き情報を推定し、前記予測画像の各画素の動きベクトルの水平・垂直成分を隣接画素間距離の１／ｄ１、１／ｄ２（ｄ１、ｄ２は正の整数）の整数倍に制限して前記動き情報から求めるときの精度ｄを決定する画像符号化方法によって符号化された符号化画像情報を復号化する画像復号化装置において、
前記動き補償によって求められた現フレームの予測画像のパッチ頂点の動きベクトルを受けとる手段と、
前記現フレームの予測画像に含まれる各画素の動きベクトルの水平・垂直成分を隣接画素間距離の１／ｄ１、１／ｄ２（ｄ１、ｄ２は正の整数）の整数倍に制限して前記パッチ頂点の動きベクトルから求める手段を特徴とする画像復号化装置。
【請求項１０】
請求項９に記載の画像復号化装置において、
前記ｄ１、ｄ２の値は、２のｗ１、ｗ２乗（ｗ１、ｗ２は正の整数）であることを特徴とする画像復号化装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、同一パッチ内のすべての画素が共通の動きベクトルを持つ制約がなく、かつ画素の動きベクトルの水平・垂直成分が隣接画素間距離の整数倍以外の値を取り得る動き補償を行なう画像符号化装置、およびこの符号化装置が出力した符号を受信し復号化する画像復号化装置に関するものである。
【背景技術】
【０００２】
動画像の高能率符号化において、時間的に近接するフレーム間の類似性を活用する動き補償は情報圧縮に大きな効果を示すことが知られている。動き補償の処理を数式を用いて表現すると以下のようになる。符号化しようとしているフレーム（現フレーム）の予測画像をＰ(ｘ, ｙ)、参照画像（Ｐと時間的に近接しており、既に符号化が終了しているフレームの復号画像）をＲ(ｘ, ｙ)とする。また、ｘとｙは整数であるとして、ＰとＲでは座標値が整数である点に画素が存在すると仮定する。このとき、ＰとＲの関係は、
【０００３】
【数１】
2010246150.tif 000003
【０００４】
で表される。ただし、画像はｎ個の小領域（パッチ）に分割されるとして、Ｐiは画像のｉ番目のパッチに含まれる画素を表している。また、変換関数ｆi(ｘ,ｙ)とｇi(ｘ, ｙ)は現フレームの画像と参照画像との間の空間的な対応を表現している。ここで、Ｐi内の画素(ｘ, ｙ)の動きベクトルは、(ｘ−ｆi(ｘ, ｙ),ｙ−ｇi(ｘ, ｙ))で表すことができる。現在の動画像符号化方式の国際標準のＨ．２６１、ＭＰＥＧ１、ＭＰＥＧ２などでは、ｆi(ｘ, ｙ)とｇi(ｘ, ｙ)がｘとｙに関係のない定数であるブロックマッチングとよばれる方式が採用されている。しかし、これらの標準符号化方式より高い情報圧縮率を達成するには、より高度な動き補償方式を採用することが要求される。このような新しい動き補償方式として、ｆi(ｘ, ｙ)とｇi(ｘ, ｙ)が定数ではなく、同一パッチ内の画素が異なる動きベクトルを持つことを許容する動き補償方式が最近提案されている。これらの方式における変換関数としては、アフィン変換
【０００５】
【数２】
2010246150.tif 000004
【０００６】
を用いた例（中屋他、「３角形パッチに基づく動き補償の基礎検討」、電子情報通信学会技術報告、IE90-106、平2-03）や、共１次変換
【０００７】
【数３】
2010246150.tif 000005
【０００８】
を用いた例（ G. J. Sullivan and R. L. Baker, “Motion compensation for video coｍｐｒｅｓｓｉｏｎ ｕｓｉｎｇ ｃｏｎｔｒｏｌ ｇｒｉｄ ｉｎｔｅｒｐｏｌａｔｉｏｎ“, Ｐｒｏｃ. ICASSP '91 , M9.1, pp.2713-2716, 1991-05）、透視変換
【０００９】
【数４】
2010246150.tif 000006
【００１０】
を用いた例（V.Seferdis and M.Ghanbari,  “General approach to block-matching motion estimation”, Optical Engineering, vol.32, no.7, pp.1464-1474, 1993-07）などがすでに報告されている。ここでａij、ｂij、ｃijはパッチごとに推定される動きパラメータである。変換関数の値が整数でない場合には、座標値が整数ではなく、参照画像において実際には画素が存在しない点の輝度値を求めることが必要となる。この場合の処理としては、周辺４画素を用いた共１次内挿が使われることが多い。この内挿方式を数式で記述すると、０≦ｐ, ｑ＜１として、Ｒ(ｘ＋ｐ, ｙ＋ｑ)は、
【００１１】
【数５】
2010246150.tif 000007
【００１２】
で表される。 動き情報の伝送の際には、画像符号化装置は何らかの形で変換関数の動きパラメータが特定できる情報を受信側に伝送すればよい。例えば、変換関数にアフィン変換を用い、パッチの形状が３角形であるとする。この場合は、６個の動きパラメータを直接伝送しても、パッチの３個の頂点の動きベクトルを伝送しても、受信側で６個の動きパラメータａi1〜ａi6を再生することができる。
【００１３】
変換関数が定数ではない動き補償方式の特徴は、画素ごとに動きベクトルを求める際に数学的な演算が必要となることである。この動きベクトルの計算（変換関数の計算）のときに、もし送信側と受信側で演算精度に差があると、符号化装置と復号化装置で得られる予測画像が異なるものとなる（ミスマッチが発生する）恐れがある。この予測画像におけるミスマッチは受信側で蓄積する性質を持っているため、フレームごとの誤差はわずかであっても、やがては再生画像の画質に深刻な影響を及ぼす恐れがある。この問題は、ブロック内のすべての画素が同じ動きベクトルに従い、かつその動きベクトルがそのまま動き情報として符号化・伝送されるブロックマッチングにはないものである。
【００１４】
この問題への対策に関して、変換関数にアフィン変換（数２）、内挿方式として共１次内挿（数５）を用いた場合を例に挙げて説明する。問題解決の一つの方法として、数２および数５の演算精度を十分に高くすることにより、数５の演算結果の誤差が輝度値の量子化ステップサイズより十分に小さくなるようにする方法が考えられる。この対策を採用した場合について考える。まず、数５の演算精度は十分に高いと仮定する。このとき、例えばＲ(０, ０)＝Ｒ(０, １)＝０、Ｒ (１, ０)＝Ｒ(１, １)＝２５５として、さらに０＜ｘ＜１、０＜ｙ＜１とすれば（以後、これを「最悪の条件」とよぶ）、ｆi(ｘ, ｙ)における大きさ１／２５５以上の誤差は、必ず輝度値の量子化値の誤差につながることになる（輝度値の量子化ステップサイズは１と仮定した）。したがって、ミスマッチを防ぐためには数２の演算誤差が１／２５５よりも十分に小さくなるように符号化装置と復号化装置を作成しなければならない。しかし、演算精度を上げることは、一般に数値の内部表現の桁数を増やすことにつながり、演算処理をより複雑にすることになる。動き補償処理において数２および数５はきわめて多くの回数計算されるため、この演算を複雑にすることは、全体の処理量に深刻な影響を及ぼしてしまう。
【先行技術文献】
【非特許文献】
【００１５】
【非特許文献１】中屋他、「３角形パッチに基づく動き補償の基礎検討」、電子情報通信学会技術報告、IE90-106、平2-03
【非特許文献２】G. J. Sullivan and R. L. Baker, “Motion compensation for video coｍｐｒｅｓｓｉｏｎ ｕｓｉｎｇ ｃｏｎｔｒｏｌ ｇｒｉｄ ｉｎｔｅｒｐｏｌａｔｉｏｎ“, Ｐｒｏｃ. ICASSP '91 , M9.1, pp.2713-2716, 1991-05
【非特許文献３】V.Seferdis and M.Ghanbari,  “General approach to block-matching motion estimation”, Optical Engineering, vol.32, no.7, pp.1464-1474, 1993-07
【発明の概要】
【発明が解決しようとする課題】
【００１６】
同一パッチに所属するすべての画素が共通の動きベクトルを持つ制約がなく、かつ画素の動きベクトルの水平・垂直成分が隣接画素間距離の整数倍以外の値を取り得る動き補償方式において、変換関数の計算に要求される演算精度を下げ、かつ変換関数の演算精度に起因する予測画像のミスマッチの発生を防ぐ手法を提供する。
【課題を解決するための手段】
【００１７】
予測画像の合成の際に使われる各画素の動きベクトルの水平、垂直成分が、それぞれ隣接画素間距離の１／ｄ1、１／ｄ2（ｄ1、ｄ2は正の整数）の整数倍の値のみをとるように規定することによって、上記の目的は達成される。
【００１８】
「課題を解決する手段」で述べた動きベクトルに関する規定を採用すれば、「従来の技術」で述べた最悪の条件を与えた場合に必ず輝度値の量子化値の誤差につながる変換関数ｆi(ｘ, ｙ)の誤差の大きさは１／ｄ1となる。例えばｄ1＝４とすれば、「従来の技術」で述べた対策と比較してｆi(ｘ, ｙ)の演算精度を６ビット下げた場合でも、最悪の条件のもとで予測画像のミスマッチを起こす危険性をほぼ同じレベルに保つことができる。
【発明の効果】
【００１９】
本発明により、同一パッチに所属するすべての画素が共通の動きベクトルを持つ制約がなく、かつ画素の動きベクトルの水平・垂直成分が隣接画素間距離の整数倍以外の値を取り得る動き補償方式において、予測画像のミスマッチの発生を防ぎながら変換関数の演算精度を下げることができる。また、画像データの伝送の前に送信側と受信側でｄ1およびｄ2の値を決める方式では、送信側と受信側の装置の性能に応じて再生画像の最適な画質を決定することができる。
【図面の簡単な説明】
【００２０】
【図１】空間変換に基づく動き補償におけるパッチの移動・変形の例を示した図である。
【図２】動きベクトルの水平・垂直成分を１／４の整数倍に制限したとき（ｄ＝４のとき）の変換関数の演算方法の例を示した図である。
【図３】画素の動きベクトルの最小単位である１／ｄの値を、画像データの通信の前に送信側と受信側の交信によって取り決める方式の例を示した図である。
【発明を実施するための形態】
【００２１】
上と同様に変換関数にアフィン変換を用いた場合を例に挙げて、数２の演算方式の実施例を示す。なお、ここでは簡単のため、ｄ1＝ｄ2＝ｄ（ｄは正の整数）であると仮定する。また、パッチは３角形であると仮定し、パッチの３個の頂点の動きベクトルが動き情報として伝送されるとする。
【００２２】
以下では、図１に示す例を用いて説明する。参照画像１０１におけるパッチ１０２が現フレーム１０６のパッチ１０７に移動・変形したと推定されたとする（格子点１０３、１０４、１０５がそれぞれ格子点１０８、１０９、１１０に対応している）。このとき、パッチ１０２の頂点１０３、１０４、１０５の座標をそれぞれ(ｘ1', ｙ1')、(ｘ2', ｙ2')、(ｘ3', ｙ3')、パッチ１０７の頂点１０８、１０９、１１０の座標をそれぞれ(ｘ1, ｙ1)、(ｘ2, ｙ2)、(ｘ3, ｙ3)であるとすると（座標値はすべて負でない整数とする）、このパッチにおける数２の動きパラメータａijは、
【００２３】
【数６】
2010246150.tif 000008
【００２４】
で表される。ここで、割り算の演算を行わずに、ａijを分母と分子が整数であるａij＝ａij'／Ｄiという形のままにしておく。すると、数２の演算結果は、すべてｆi(ｘ, ｙ)＝ｆi'(ｘ, ｙ)／Ｄiとｇi(ｘ, ｙ)＝ｇi'(ｘ, ｙ)／Ｄiのような整数を分母と分子とする分数の形式で表すことができる。ここで、「//」を整数同士の除算（演算結果の小数成分を切り捨てる除算）と定義し、ｋi＝Ｄi//２として、
【００２５】
【数７】
2010246150.tif 000009
【００２６】
とする。Ｆi(ｘ, ｙ)とＧi(ｘ, ｙ)は、ｆi(ｘ, ｙ)とｇi(ｘ, ｙ)を最も近い１／ｄの整数倍の値に丸め込む関数である。数１においてｆi(ｘ, ｙ)とｇi(ｘ,ｙ)の代わりにＦi(ｘ, ｙ)とＧi(ｘ, ｙ)を用いることにより、各画素の動きベクトルの水平・垂直成分が、隣接画素間距離の１／ｄの整数倍の値のみをとるように制限することができる。また、送信側、受信側で共にＦi(ｘ, ｙ)とＧi(ｘ, ｙ)を使えば、比較的精度の低い演算で、変換関数の誤差に起因する予測画像のミスマッチを防ぐことが可能となる。
【００２７】
図２にｄ＝４である場合にＦi(ｘ, ｙ)とＧi(ｘ, ｙ)を計算する処理の流れを示す。まず、変形前後のパッチの頂点の座標が２０１で与えられると、２０２と２０４で関数ｆi' (ｘ, ｙ)とｇi'(ｘ, ｙ)を定義し、２０３で定数Ｄiを求め、２０５で定数ｋiを求める。これらの関数と定数を用いて、パッチ内の画素ごとに座標(ｘ, ｙ)からＦi(ｘ, ｙ)とＧi (ｘ, ｙ)の値を計算する。(ｘ, ｙ)が２進整数表現で与えられると、まず２０６で積和演算を行うことによってｆi'(ｘ,ｙ)とｇi'(ｘ, ｙ)の値を求め、この結果を２０７で２ビット左にシフトすることによって４（＝ｄ）倍する。この結果に対して２０８でｋiを加え、さらに２０９でＤiで割る（演算結果の小数成分は切り捨てる）ことによって、４Ｆi (ｘ, ｙ)と４Ｇi(ｘ, ｙ)の値を得る。この整数の４Ｆi(ｘ, ｙ)と４Ｇi(ｘ, ｙ)に対して、２１０で下から２桁目と３桁目の間に小数点を置くことによって、Ｆi(ｘ, ｙ)とＧi (ｘ, ｙ)の値を得ることができる（これは、４で割る演算を行ったことと同じ意味を持つ）。
【００２８】
ｄの値は、符号化方式の固定パラメータとして規定しても、可変として画像データを伝送する前に送信側と受信側で取り決めても良い。送信側と受信側が交信を行ってｄを取り決める場合の手続きの例を図３に示す。送信側３０１は、まず通信３０３において画像符号化装置のハードウエアの制約から、許容できるｄの上限が４であることを受信側３０２に告げる。次に受信側は、画像復号化装置の制約から、ｄの上限が２であることを通信３０４で告げる。この結果、送信側は最適なｄの値が２であると判断し、以後伝送する画像データはｄ＝２として符号化されたものとなることを通信３０５で勧告する。そしてこの直後に送信側は通信３０６で画像データを送信する。一般にｄの値が大きい程、装置のハードウェアは複雑になる。したがって、送信側は送信・受信側で低い方のｄの上限の値を採用するのが適当であると考えられる。この方式を実現するためには、画像符号化・復号化装置は、自身の上限以下のｄに対応できる機能を持たなければならない。
【００２９】
ｄの値としては、乗除算の行ないやすさを考慮して、２のべき乗が良いと考えられる。ｄの値が大きいほど予測誤差は小さくなるが、予測画像の合成処理は複雑になる。予測特性を考えると、ｄの値は２以上であることが望ましい。予測特性と処理の複雑さのバランスを考慮すると、具体的なｄの値として２、４、８が適当である。
【００３０】
なお、以下の変形も本発明に含まれることは明らかである。
【００３１】
（１）輝度値の内挿方式として、本明細書では共１次内挿をとりあげたが、これ以外の関数を用いても良い。関数が複雑になれば、演算を簡略化することの効果は大きくなる。
【００３２】
（２）変換関数の種類として、本明細書ではアフィン変換を中心にとりあげたが、これ以外の変換関数を用いても良い。変換関数の演算精度に応じてその演算結果が変化する可能性のある限り、本発明は有効である。
【００３３】
（３）パッチの形状は、画素の集合を特定するものであれば良く、特に本明細書でとりあげた３角形でなくても良い。
【００３４】
（４）空間変換に基づく動き補償において、本明細書でとりあげた例のように伝送される動き情報がパッチの頂点の動きベクトルでなくても良い。動き情報はパッチごとの変換関数を特定するものでありさえすれば良く、例えば数２の動きパラメータａijをそのまま伝送しても良い。このように動きパラメータをそのまま伝送する場合には、本発明を適用することにより、変換関数の演算精度に起因する予測画像のミスマッチを防ぎながら伝送される動きパラメータの精度を下げる（桁数を減らす）ことが可能となる。ｄの値が小さければ小さいほど動きパラメータの桁数を少なくするができ、この結果として伝送情報量を少なくすることができる。
【００３５】
（５）実施例では、ｄ1とｄ2の値が等しい場合を例示したが、両者が異なっていても良い。
【００３６】
（６）本明細書では、現フレームのパッチ構造を固定して参照画像のパッチを変形させる方式に関して説明したが、逆に参照画像のパッチ構造を固定して現フレームのパッチを変形させる方式であっても良い。
【００３７】
（７）本明細書では、１個の予測画像を合成するために用いる参照画像の数は１個として説明したが、複数の参照画像を用いる方式であっても良い。
【符号の説明】
【００３８】
１０１…動き推定後の参照画像における１個のパッチ、１０２、１０７…パッチ、１０３〜１０５、１０８〜１１０…パッチの頂点、１０６…現フレームの原画像のすべてのパッチ、２０１…パッチの頂点の座標値、２０２〜２１０…演算手続き、３０１…送信側の画像符号化装置、３０２…受信側の画像復号化装置、３０３〜３０６…通信手続き
【図１】
2010246150.tif 000010
【図２】
2010246150.tif 000011
【図３】
2010246150.tif 000012