JP2004364064A - 動き推定方法および動画像符号化方法 - Google Patents
動き推定方法および動画像符号化方法 Download PDFInfo
- Publication number
- JP2004364064A JP2004364064A JP2003161319A JP2003161319A JP2004364064A JP 2004364064 A JP2004364064 A JP 2004364064A JP 2003161319 A JP2003161319 A JP 2003161319A JP 2003161319 A JP2003161319 A JP 2003161319A JP 2004364064 A JP2004364064 A JP 2004364064A
- Authority
- JP
- Japan
- Prior art keywords
- motion vector
- motion
- representative point
- picture
- representative
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
【課題】処理量が少なく、かつ隣接する代表点の動きも考慮した動き推定方法を提供することを目的とする。
【解決手段】反復型動き推定部103は、第1のピクチャ中に代表点を設定する代表点設定ステップと、代表点の第2のピクチャに対する動きベクトルの初期値を設定する初期値設定ステップと、代表点の動きベクトルを所定の範囲内で変更して評価関数を計算し、評価関数値に応じて動きベクトルを更新する動き検出ステップと、所定の代表点に対して動き検出ステップによる処理を施し、異なる動きベクトルに更新された代表点の個数が所定値未満であれば処理を終了し、所定値以上であれば再び前記動き検出ステップの処理を実施する制御ステップと、を有している。
【選択図】 図1
【解決手段】反復型動き推定部103は、第1のピクチャ中に代表点を設定する代表点設定ステップと、代表点の第2のピクチャに対する動きベクトルの初期値を設定する初期値設定ステップと、代表点の動きベクトルを所定の範囲内で変更して評価関数を計算し、評価関数値に応じて動きベクトルを更新する動き検出ステップと、所定の代表点に対して動き検出ステップによる処理を施し、異なる動きベクトルに更新された代表点の個数が所定値未満であれば処理を終了し、所定値以上であれば再び前記動き検出ステップの処理を実施する制御ステップと、を有している。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は、画素の動きベクトルを近隣の複数の代表点の動きベクトルからの内挿により求める動き推定方法、およびその動きベクトルを用いて符号化処理を行う動画像符号化方法に関する。
【0002】
【従来の技術】
近年、音声,画像,その他の画素値を統合的に扱うマルチメディア時代を迎え、従来からの情報メディア,つまり新聞,雑誌,テレビ,ラジオ,電話等の情報を人に伝達する手段がマルチメディアの対象として取り上げられるようになってきた。一般に、マルチメディアとは、文字だけでなく、図形、音声、特に画像等を同時に関連づけて表すことをいうが、上記従来の情報メディアをマルチメディアの対象とするには、その情報をディジタル形式にして表すことが必須条件となる。
【0003】
ところが、上記各情報メディアの持つ情報量をディジタル情報量として見積もってみると、文字の場合1文字当たりの情報量は1〜2バイトであるのに対し、音声の場合1秒当たり64Kbits(電話品質)、さらに動画については1秒当たり100Mbits(現行テレビ受信品質)以上の情報量が必要となり、上記情報メディアでその膨大な情報をディジタル形式でそのまま扱うことは現実的では無い。例えば、テレビ電話は、64Kbit/s〜1.5Mbit/sの伝送速度を持つサービス総合ディジタル網(ISDN : Integrated Services Digital Network)によってすでに実用化されているが、テレビ・カメラの映像をそのままISDNで送ることは不可能である。
【0004】
そこで、必要となってくるのが情報の圧縮技術であり、例えば、テレビ電話の場合、ITU−T(国際電気通信連合 電気通信標準化部門)で勧告されたH.261やH.263規格の動画圧縮技術が用いられている。また、MPEG−1規格の情報圧縮技術によると、通常の音楽用CD(コンパクト・ディスク)に音声情報とともに画像情報を入れることも可能となる。
【0005】
ここで、MPEG(Moving Picture Experts Group)とは、ISO/IEC(国際標準化機構 国際電気標準会議)で標準化された動画像信号圧縮の国際規格であり、MPEG−1は、動画像信号を1.5Mbit/sまで、つまりテレビ信号の情報を約100分の1にまで圧縮する規格である。また、MPEG−1規格では対象とする品質を伝送速度が主として約1.5Mbit/sで実現できる程度の中程度の品質としたことから、さらなる高画質化の要求をみたすべく規格化されたMPEG−2では、動画像信号を2〜15Mbit/sでTV放送品質を実現する。さらに現状では、MPEG−1,MPEG−2と標準化を進めてきた作業グループ(ISO/IEC JTC1/SC29/WG11) によって、MPEG−1,MPEG−2を上回る圧縮率を達成し、更に物体単位で符号化・復号化・操作を可能とし、マルチメディア時代に必要な新しい機能を実現するMPEG−4が規格化された。MPEG−4では、当初、低ビットレートの符号化方法の標準化を目指して進められたが、現在はインタレース画像も含む高ビットレートも含む、より汎用的な符号化に拡張されている。
【0006】
一般に動画像の符号化では、時間方向および空間方向の冗長性を削減することによって情報量の圧縮を行う。そこで時間的な冗長性の削減を目的とする画面間予測符号化では、前方または後方のピクチャを参照してブロック単位で動きの検出および予測画像の作成を行い、得られた予測画像と符号化対象ピクチャとの差分値に対して符号化を行う。ここで、ピクチャとは1枚の画面を表す用語であり、プログレッシブ画像ではフレームを意味し、インタレース画像ではフレームもしくはフィールドを意味する。ここで、インタレース画像とは、1つのフレームが時刻の異なる2つのフィールドから構成される画像である。インタレース画像の符号化や復号化処理においては、1つのフレームをフレームのまま処理したり、2つのフィールドとして処理したり、フレーム内のブロック毎にフレーム構造またはフィールド構造として処理したりすることができる。
【0007】
参照画像を持たず画面内予測符号化を行うものをIピクチャと呼ぶ。また、1枚のピクチャのみを参照し画面間予測符号化を行うものをPピクチャと呼ぶ。また、同時に2枚のピクチャを参照して画面間予測符号化を行うことのできるものをBピクチャと呼ぶ。Bピクチャは表示時間が前方もしくは後方から任意の組み合わせとして2枚のピクチャを参照することが可能である。参照画像(参照ピクチャ)は符号化および復号化の基本単位であるブロックごとに指定することができるが、符号化を行ったビットストリーム中に先に記述される方の参照ピクチャを第1参照ピクチャ、後に記述される方を第2参照ピクチャとして区別する。ただし、これらのピクチャを符号化および復号化する場合の条件として、参照するピクチャが既に符号化および復号化されている必要がある。
【0008】
Pピクチャ又はBピクチャの符号化には、動き補償画面間予測符号化が用いられている。動き補償画面間予測符号化とは、画面間予測符号化に動き補償を適用した符号化方式である。動き補償とは、単純に参照フレームの画素値から予測するのではなく、ピクチャ内の各部の動き量(以下、これを動きベクトルと呼ぶ)を検出し、当該動き量を考慮した予測を行うことにより予測精度を向上すると共に、データ量を減らす方式である。例えば、符号化対象ピクチャの動きベクトルを検出し、その動きベクトルの分だけシフトした予測値と符号化対象ピクチャとの予測残差を符号化することによりデータ量を減している。この方式の場合には、復号化の際に動きベクトルの情報が必要になるため、動きベクトルも符号化されて記録又は伝送される。
【0009】
上記のMPEG−1、MPEG−2、MPEG−4方式等では、動きベクトルは16画素×16画素の大きさを有するマクロブロック単位で検出されており、具体的には、符号化対象ピクチャ側のマクロブロックを固定しておき、参照ピクチャ側のマクロブロックを探索範囲内で移動させ、基準ブロックと最も似通った参照ブロックの位置を見つけることにより、ブロック位置の変化分が動きベクトルとして検出される。ここで、基準ブロックと参照ブロックとがどの程度似通っているかは、所定の評価基準を用いるより決定することができるが、その評価基準としては、例えば対応する画素の差分値の2乗和や絶対値和が用いられる。そして、その2乗和や絶対値和が最小となる参照ブロックが選択される。このような方式は、ブロックマッチングと呼ばれる。
【0010】
ブロックマッチングは、現在広く採用されているが、ブロック内のすべての画素が同一の動きベクトルを持つ、すなわち平行移動をする、という前提を有している。そのため、拡大・縮小などの変形などを伴う場合、ブロックマッチングでは、動き補償時の誤差が大きくなるという問題点を有している。
【0011】
そこでこの問題を解決するために、画素が異なる動きベクトルを持ち、拡大や縮小などの変形に対応することができる動き補償方式が提案されている。以下にこの方式の一例である空間変換に基づく動き補償について説明する。
空間変換に基づく動き補償では、予測画像の位置(x, y)の画素値を参照画像の位置(x’,y’)の画素値として取得する際に、x’とy’の値がxとyに対して所定の変換式を施して得られるものである。ブロックマッチングは、xとyのそれぞれに水平方向および垂直方向の移動量を加算することにより、x’とy’とが得られるため、空間変換に基づく動き補償の特殊な例と考えることもできる。
【0012】
変換関数の形としては、アフィン変換を用いた例(非特許文献1)、共1次変換を用いた例、透視変換を用いた例などが提案されている。
ここで変換関数のパラメータは、符号化側で領域毎に決定し、それを復号化側に伝送することにより、復号化側でも同じ変換を行うことができる。例えば、変換関数にアフィン変換を用い、領域の形状が3角形であるとする。この場合、6個のアフィン変換パラメータを伝送しても良いし、領域の3個の頂点の動きベクトルを伝送し、復号化側で6個のアフィン変換パラメータを再生しても良い。また、共1次変換、透視変換を用いた場合、領域の形状を4角形とすれば同様の処理が可能となる。
【0013】
以下では、変換関数にアフィン変換を用いた場合について説明する。まず現ピクチャに複数の代表点が設定され、隣接する代表点を線分で結ぶことにより複数の多角形領域が形成される。そして、各代表点に対して動き推定を行う。これは具体的には現ピクチャの各代表点に対し、参照ピクチャにおいて対応している点を求めることにより実行される。つまり、代表点の移動があれば参照画像の対応点は現ピクチャの代表点と異なった場所に位置することになる。この結果、動き推定後の参照ピクチャでは、各多角形領域は変形されたものとなる。予測画像は多角形内の各画素に関して変換関数を計算し、参照ピクチャの中から対応する点の画素値を求めることにより生成される。
【0014】
さて、各代表点の動き推定の方法、すなわち動きベクトルを求める方法としては、第1段階目にブロックマッチングにより大まかな動き推定を行った後、第2段階目に代表点の動きベクトルを少しずつ変化させて、参照ピクチャの多角形領域を変形させ、動きベクトルを変化させる度に予測誤差を計算し、その結果予測誤差を最も小さくした動きベクトルを新たに採用する方法が提案されている(第1の従来方法)。また、このような処理では演算量が膨大となることから、評価関数に重みをつけながらブロックマッチングのみで動き推定を行う方法(特許文献1、第2の従来方法)も提案されている。
【0015】
【特許文献1】
特開平08−116541号公報
【0016】
【非特許文献1】
中屋他、「3角形パッチに基づく動き補償の基礎検討」、電子情報通信学会技術報告、IE90−106、平2−03
【0017】
【発明が解決しようとする課題】
しかしながら、上記第1の従来方法では、第2段階目の処理として、代表点の動きベクトルから変換パラメータを求め、その変換パラメータから予測画像を生成して予測誤差を計算し、予測誤差が小さくなる方向に動きベクトルを徐々に修正させていくため、特に予測画像を生成するために膨大な処理量が必要となる。
【0018】
また、上記第2の従来方法では、代表点を含むブロックを用いたブロックマッチングのみにより動き推定を行う。この方法は、第1の従来方法と比較して処理量を大きく削減することができるが、他の代表点の動きを考慮していないため、隣接する代表点が同じような動きをしていても、絵柄によっては異なる動きベクトルとして推定されることがある。代表点で囲まれる領域中の画素の動きベクトルは、それらの代表点の動きベクトルから計算するため、一つでも大きく異なる動きベクトルがあると、領域中のすべての画素の動きベクトルが正しくない動きベクトルとなってしまうという課題を有していた。
【0019】
【課題を解決するための手段】
この課題を解決するために、第1の発明は、第1のピクチャ中に代表点を設定する代表点設定ステップと、前記代表点の第2のピクチャに対する動きベクトルの初期値を設定する初期値設定ステップと、前記代表点の動きベクトルを所定の範囲内で変更して評価関数を計算し、前記評価関数値に応じて動きベクトルを更新する動き検出ステップと、所定の代表点に対して前記動き検出ステップによる処理を施し、異なる動きベクトルに更新された代表点の個数が所定値未満であれば処理を終了し、所定値以上であれば再び前記動き検出ステップの処理を実施する制御ステップと、を含むことを特徴としている。
【0020】
第2の発明は、第1のピクチャ中に代表点を設定する代表点設定ステップと、前記代表点の第2のピクチャに対する動きベクトルをN(N≧2)種類の方法で検出する第1から第Nの動き検出ステップと、前記代表点のそれぞれに対して、前記第1から第Nの動き検出ステップにより求められたN個の動きベクトルの中から、評価関数を用いて1つの動きベクトルを選択する動きベクトル選択ステップと、を含むことを特徴としている。
第3の発明は、第1のピクチャ中に代表点を設定する代表点設定ステップと、
前記代表点の第2のピクチャに対する動きベクトルを検出する動き検出ステップと、
前記代表点の動きベクトルの有効性を、前記代表点の近傍の代表点の動きベクトルまたは前記第1と第2のピクチャを用いて判定する動きベクトル判定ステップと、を含むことを特徴としている。
【0021】
【発明の実施の形態】
以下、本発明の実施の形態について、図1から図16を用いて説明する。
【0022】
(実施の形態1)
まず、本発明の動き推定方法の第1の実施の形態を図1を用いて説明する。
【0023】
図1は、本発明の動き推定方法を用いた動画像符号化装置100のブロック図である。動画像符号化装置100は、本発明の動き推定方法を実施する動き推定部101と、予測画像生成部105、予測誤差符号化部106、可変長符号化部107、予測誤差復号化部108、差分演算部109、加算演算部110から構成され、動き推定部101は、フレームメモリ102、104,反復型動き推定部103から構成される。
【0024】
フレームメモリ102には入力画像が入力され、現ピクチャが保持される。また、フレームメモリ104には、既に符号化済みの参照ピクチャが保持されているとする。
反復型動き推定部103では、フレームメモリ102に保持された現ピクチャの画像データと、フレームメモリ104に保持された参照ピクチャの画像データとを用いて、動き推定を行う。反復型動き推定部103の動作を図2、図3を用いて説明する。
【0025】
図2(a)は、現ピクチャの画素の並びの一部を示す模式図である。図2(a)において、黒丸と白丸はそれぞれ画素を示している。また、白丸は代表点を表している。図2(a)に示すように、代表点は、代表点を結ぶことによって三角形が構成されるように配置される。
【0026】
図3は、反復型動き推定部103の処理内容を示すフローチャートである。まず、ステップS301において、全ての代表点に対して初期動きベクトルを設定する。ここでは、初期動きベクトルの大きさは0であるとする。そして、全ての代表点に対して、所定の順番でステップS302、ステップS303の処理を行う。所定の順番としては、例えばラスタ順がある。ステップS302では、代表点の現在の動きベクトルが指し示す参照ピクチャ中の位置を中心として、所定の範囲に対して評価関数を求める。例えば、現在処理中の代表点が図2の201であるとすると、例えば画素集合(ブロック)210に含まれる画素を用いて、評価関数値を求める。
ここで、評価関数値は、(数式1)により求めるとする。
【0027】
【数1】
【0028】
ここで、iは代表点番号、Jiは代表点iの評価関数値、Biは代表点iの動きベクトルを探索する際に用いる画素集合(例えば代表点201に対する画素集合210)、Djは現ピクチャの画素と参照ピクチャ中の対応画素との差を示す値(例えば差の絶対値や、差の2乗値)、Niは代表点iに隣接する代表点の集合(例えば代表点201に対しては、代表点202〜207)、Rikは代表点iと代表点kの動きベクトルの差を表す値(例えば動くベクトルの各成分の差分値の2乗和)、αは重み係数である。
【0029】
すなわち(数式1)の右辺第1項は、現ピクチャの画素ブロックと、参照ピクチャの画素ブロックの画素値で求めた距離の指標を示し、右辺第2項は、注目代表点の動きベクトルとその隣接代表点との動きベクトルの距離の指標を示す。
図2(b)を用いて評価関数値を求める範囲について説明する。図2(b)の現ピクチャ中の画素256が、現在注目する代表点であり、その周辺画素集合がブロック250である。また、代表点256の現在の動きベクトルが動きベクトル254であるとする。この際、動きベクトル254が指し示す位置252を中心として、所定の範囲251の中を指し示す動きベクトルを用いて評価関数値を計算する。例えば、位置252に対する評価関数値の第1項は、ブロック250とブロック257の画素値を用いて計算することになる。そして範囲251内での位置を少しずつずらしながら(動きベクトルの値を変化させながら)、評価関数値を求めていく。ここで、範囲251としては、例えば参照ピクチャ中のブロックの中心位置が上下左右に1〜3画素程度移動するような範囲に設定することができる。
【0030】
ステップS303では、ステップS302で求めた評価関数値のうち、最小となる評価関数値を求める。そして、その評価関数値が最小となる位置を求め、その位置を指す動きベクトルに更新する。例えば図2(b)において、位置258に対する評価関数値が最小であったとすると、代表点256の動きベクトルは、動きベクトル255に更新することになる。ここで、評価関数値が最小値を示す動きベクトルが元の動きベクトルと同じ場合には、更新処理は行わない。
【0031】
このような処理をすべての代表点に対して行う。すべての代表点に対して処理が終了すると、ステップS304において、動きベクトル値が更新された代表点の数を計数し、その個数が所定値以下あるかどうかを判断する。所定値としては、例えば全代表点の個数の1%などの値を用いることができる。そして、条件を満たしていれば処理を終了し、条件を満たしていなければ、現在の動きベクトルを初期値として、全代表点に対してステップS302とステップS303の処理を再び実行する。
【0032】
すべての処理が完了すると、反復型動き推定部103は、全代表点の動きベクトルを予測画像生成部105、可変長符号化部107に対して出力する。予測画像生成部105では、反復型動き推定部103から出力された各代表点の動きベクトルと、フレームメモリ104から得られる参照ピクチャの画像データとを用いて、予測画像(動き補償画像)を生成する。
【0033】
例えば、図2(a)における代表点201、202、203により囲まれる三角形領域内の画素は、代表点201、202、203の動きベクトルから各画素位置での動きベクトルを内挿生成し、その生成された動きベクトルを用いて、参照ピクチャから画素値を取得することにより、予測画素を生成する。ここで、動きベクトルの内挿方法としては、従来方法で説明した方法(例えばアフィン変換)を用いることができる。
【0034】
予測画像は差分演算部109と加算演算部110に対して出力される。差分演算部109では、フレームメモリ102から得られる現ピクチャとの差分画像が計算される。差分画像は予測誤差符号化部106に入力され、周波数変換や量子化等の処理が施されて、符号化データとなり、可変長符号化部107と予測誤差復号化部108に対して出力される。可変長符号化部107では、予測誤差符号化部106にから入力された符号化データと、反復型動き推定部103から入力された各代表点の動きベクトルとに対して可変長符号化を施して、符号列として出力する。
【0035】
また、予測誤差復号化部108では、予測誤差符号化部106から入力された符号化データに対して、逆量子化や逆周波数変換等の処理を施し、復号化差分画像として加算演算部110に対して出力する。加算演算部110では、予測誤差復号化部108から入力された復号化差分画像と、予測画像生成部105から入力された予測画像とを加算し、復号化画像を生成し、それをフレームメモリ104に対して出力する。この復号化画像は、以降の入力画像を符号化する際の参照ピクチャとして用いる。
【0036】
以上のように、本発明の動き推定方法および動画像符号化方法では、画像中に代表点を設定し、各代表点の動きベクトルを求める際に、小さな探索範囲を設定し、(数式1)で示す評価関数値が最小となる位置を指す動きベクトルに更新する。この処理を動きベクトルが更新される代表点の個数が所定値以下となるまで繰り返し、最終的な動きベクトルを決定する。ここで、評価関数は、現ピクチャの画素ブロックと、参照ピクチャの画素ブロックの画素値で求めた距離の指標と、注目代表点の動きベクトルとその隣接代表点との動きベクトルの距離の指標の重み付け和である。
【0037】
したがって、本発明の動き推定方法および動画像符号化方法を用いることにより、現ピクチャの画素ブロックと、参照ピクチャの画素ブロックの画素値で求めた距離が小さく、かつ隣接代表点の動きベクトルとの距離も小さい動きベクトルを得ることができる。すなわち、他の代表点の動きも考慮することができるため、誤った動きベクトルを推定する可能性が小さくなり、これにより隣接代表点と大きく異なる動きベクトルが求められる可能性が非常に小さくなり、領域中の画素の動きベクトルを正確に得ることができるため、例えば第2の従来方法等と比較して、予測画像(動き補償画像)の画質の向上、すなわち符号化画像の画質の向上を図ることができる。また、例えば第1の従来方法と比較すると、動き推定の際に領域内の画素毎の動きベクトル(変換パラメータ)を求める必要がないため、処理量の大幅な削減を行うことができる。
【0038】
なお、本実施の形態においては、動き推定における参照ピクチャは既に符号化済みのピクチャを用いるとしたが、これは参照ピクチャの原画像を用いても良い。ただし、符号化においては、本実施の形態と同様に符号化済みのピクチャを用いる。
【0039】
また、本実施の形態においては、本発明の動き推定方法を利用した例として、動画像符号化に適用する場合について説明したが、これは動画像符号化以外の処理、例えば画像処理等に適用しても良い。
また、本実施の形態においては、図2(b)のように代表点の配置と領域の分割を行う場合を例として説明したが、代表点の配置方法と領域の分割方法は、他の方法であっても良い。他の方法の一例としては、例えば図4(a)、(b)のような方法がある。また、領域の分割方法は、固定でなくても良く、例えば画像のエッジ情報を取得し、そのエッジに沿って領域を分割し、代表点を配置するような方法であっても良い。
【0040】
また、本実施の形態においては、現ピクチャに対して代表点を設定し、その代表点と参照ピクチャとの動き量に基づいて、現ピクチャの領域中の各画素の動きを補間生成し、参照ピクチャから動き補償する場合について説明したが、これは、参照ピクチャに対して所定の代表点を設定し、その代表点と現ピクチャとの動き量に基づいて、現ピクチャの領域中の各画素の動きを補間生成し、参照ピクチャから動き補償する場合であっても良い。
【0041】
(実施の形態2)
次に、本発明の動き推定方法の第2の実施の形態について、図5を用いて説明する。
図5は、本発明の動き推定方法を用いた動画像符号化装置500のブロック図である。動画像符号化装置500は、本発明の動き推定方法を実施する動き推定部501と、予測画像生成部105、予測誤差符号化部106、可変長符号化部107、予測誤差復号化部108、差分演算部109、加算演算部110から構成され、動き推定部501は、フレームメモリ502、504、反復型動き推定部503、ブロックマッチング動き推定部505、動きベクトル選択部506から構成される。
【0042】
動き推定部501以外の動作は、第1の実施の形態と同様であるので、ここでは動き推定部501の動作について説明する。
フレームメモリ502には入力画像が入力され、現ピクチャが保持される。また、フレームメモリ504には、既に符号化済みの参照ピクチャが保持されているとする。
【0043】
まず、反復型動き推定部503において、フレームメモリ502に保持された現ピクチャの画像データと、フレームメモリ504に保持された参照ピクチャの画像データとを用いて、動き推定を行う。この動作は、第1の実施の形態と同様であるので、詳細な説明は割愛する。検出された動きベクトルは、動きベクトル選択部506に対して出力される。
【0044】
次に、ブロックマッチング型動き推定部505において、フレームメモリ502に保持された現ピクチャの画像データと、フレームメモリ504に保持された参照ピクチャの画像データとを用いて、動き推定を行う。これは、反復型動き推定部503において現ピクチャに対して設定した代表点と同じ代表点を用いて、その周辺画素から構成される画素集合(ブロック)を用いて、従来のブロックマッチングと同様の処理により、現ピクチャから参照ピクチャに対して探索を行うことにより、動き推定を行う。検出された動きベクトルは、動きベクトル選択部506に対して出力される。ここで、ブロックマッチングの際には、ブロック間の画素差分値のみを動き推定の評価関数としても良いし、ブロック間の画素差分値と、既に動きベクトルの検出が終わっている周辺代表点の動きベクトルとの相関性とを用いた評価関数を使っても良い。
【0045】
動きベクトル選択部506では、反復型動き推定部503とブロックマッチング型動き推定部505とから入力された各代表点の動きベクトルを用いて、代表点毎に動きベクトルの選択を行う。
代表ベクトルの選択方法を説明する。選択方法としては、代表点毎に評価関数値を求め、それを比較することにより決定することができる。例えば、評価関数値としては、(数式1)、(数式2)、(数式3)等を用いることができる。
【0046】
【数2】
【0047】
【数3】
【0048】
ここで、各記号の定義は(数式1)の記号の定義に従う。
例えば(数式2)を用いることにより、参照する画像との差分値による類似度により、各動きベクトルを評価することができる。また、例えば(数式1)、(数式3)を用いることにより、参照する画像との差分値による類似度と隣接する代表点の動きベクトルとの類似度とを用いることにより、各動きベクトルを評価することができる。
【0049】
動きベクトル選択部506で選択された各代表点の動きベクトルは、反復型動き推定部503に対して出力される。反復型動き推定部503では、動きベクトル選択部506から入力された各代表点の動きベクトルを初期値として、再び動き推定を行う。この動作は、図3のフローチャートにおけるS301における、初期動きベクトルとして、動きベクトル選択部506から入力された各代表点の動きベクトルを用いることに相当する。
【0050】
そして、反復型動き推定部503において検出された動きベクトルは、予測画像生成部105と可変長符号化部107に対して出力され、第1の実施の形態と同様の処理により、符号化処理が行われる。
以上のように、本発明の動き推定方法および動画像符号化方法では、画像中に代表点を設定し、各代表点の動きベクトルを求める際に、小さな探索範囲を設定し、(数式1)で示す評価関数値が最小となる位置を指す動きベクトルに更新する。この処理を動きベクトルが更新される代表点の個数が所定値以下となるまで繰り返し、第1の動きベクトルを決定する。ここで、評価関数は、現ピクチャの画素ブロックと、参照ピクチャの画素ブロックの画素値で求めた距離の指標と、注目代表点の動きベクトルとその隣接代表点との動きベクトルの距離の指標の重み付け和である。したがって、現ピクチャの画素ブロックと、参照ピクチャの画素ブロックの画素値で求めた距離が小さく、かつ隣接代表点の動きベクトルとの距離も小さい動きベクトルを得ることができる。次に、従来のブロックマッチング法を用いて、各代表点の第2の動きベクトルを用いる。そして、第1の動きベクトルと第2の動きベクトルとから所定の判定基準(例えば(数式1)から(数式3))を用いて、動きベクトルの選択を行い、その選択した動きベクトルを初期値として再び動きベクトルの推定を行う。
【0051】
すなわち、第1の動きベクトルでは、他の代表点の動きも考慮しながら、少しずつ動きベクトルの値を変えながら動き推定するため、誤った動きベクトルを推定する可能性が小さい動きベクトルを得ることができる。また、第2の動きベクトルでは、大きな動きに追従した動きベクトルを得ることができる。そして、第1と第2の動きベクトルを選択することにより、第1の動きベクトルの特性と、第2の動きベクトルの特性の長所を兼ね備えた動きベクトルを選択することができる。そして、この選択した動きベクトルを初期値として、再び反復型の動きベクトル推定を行うことにより、更に動きベクトルの精度を高めることができる。
【0052】
このような動作により、本発明の動き推定方法および動画像符号化方法を用いることにより、隣接代表点と大きく異なる動きベクトルが求められる可能性が非常に小さくなり、かつ大きな動きに追従した動きベクトルを得ることができ、それにより領域中の画素の動きベクトルを正確に得ることができ、予測画像(動き補償画像)の画質の向上、すなわち符号化画像の画質の向上を図ることができる。
【0053】
なお、本実施の形態においては、動き推定における参照ピクチャは既に符号化済みのピクチャを用いるとしたが、これは参照ピクチャの原画像を用いても良い。ただし、符号化においては、本実施の形態と同様に符号化済みのピクチャを用いる。
【0054】
また、本実施の形態においては、本発明の動き推定方法を利用した例として、動画像符号化に適用する場合について説明したが、これは動画像符号化以外の処理、例えば画像処理等に適用しても良い。
また、本実施の形態においては、図2(b)のように代表点の配置と領域の分割を行う場合を例として説明したが、代表点の配置方法と領域の分割方法は、他の方法であっても良い。他の方法の一例としては、例えば図4(a)、(b)のような方法がある。また、領域の分割方法は、固定でなくても良く、例えば画像のエッジ情報を取得し、そのエッジに沿って領域を分割し、代表点を配置するような方法であっても良い。
【0055】
また、本実施の形態においては、現ピクチャに対して代表点を設定し、その代表点と参照ピクチャとの動き量に基づいて、現ピクチャの領域中の各画素の動きを補間生成し、参照ピクチャから動き補償する場合について説明したが、これは、参照ピクチャに対して所定の代表点を設定し、その代表点と現ピクチャとの動き量に基づいて、現ピクチャの領域中の各画素の動きを補間生成し、参照ピクチャから動き補償する場合であっても良い。
【0056】
また、本実施の形態においては、動きベクトル選択部506において動きベクトルの選択を行った後、その動きベクトルを初期値として、反復型動き推定部502で再び動き推定を行う場合について説明したが、これは、動きベクトル選択部506において選択した動きベクトルをそのまま用いて、動き補償を行っても良い。この場合には、動きベクトル選択部506において選択した動きベクトルが、そのまま予測画像生成部105と可変長符号化部107に対して出力され、この後第1の実施の形態と同様の処理により、符号化処理が行われることになる。この場合、動きベクトルの精度は若干悪くなるが、2回目の反復型動き推定部502の処理を行わないため、処理量を削減することができる。
【0057】
また、本実施の形態においては、反復型動き推定部502で求めた動きベクトルと、ブロックマッチング型動き推定部506とで求めた、各代表点の2つの動きベクトルを評価基準により比較し、1つの動きベクトルを求める場合について説明したが、これはN(N≧2)種類の動き推定方法により、各代表点のN個の動きベクトルを評価基準により比較し、1つの動きベクトルを求めても良い。
【0058】
(実施の形態3)
次に、本発明の動き推定方法の第2の実施の形態について、図7を用いて説明する。
図7は、本発明の動き推定方法を用いた動き推定部701のブロック図である。動き推定部701は、フレームメモリ702、704、動き検出部703、動きベクトル判定部705、動きベクトル補正部706から構成される。
本実施の形態では、動き推定方法についてのみ説明するが、動きベクトル推定部701は、第1の実施の形態、第2の実施の形態で説明した動画像符号化装置における動きベクトル推定部としても用いることができる。
【0059】
フレームメモリ702には入力画像が入力され、現ピクチャが保持される。また、フレームメモリ704には、既に符号化済みの画像が参照ピクチャとして保持されているとする。
動き検出部703では、フレームメモリ702に保持された現ピクチャの画像データと、フレームメモリ704に保持された参照ピクチャの画像データとを用いて、現ピクチャの各代表点について、参照ピクチャに対する動き検出を行う。この動き検出の方法としては、第1の実施の形態における反復型動き推定部103や、第2の実施の形態における反復型動き推定部503、ブロックマッチング型動き推定部505、動きベクトル選択部506による動き検出方法等を用いることができる。
【0060】
動き検出部703で検出された動きベクトルは、動きベクトル判定部705に対して出力される。
動きベクトル判定部705では、動き検出部703から入力された各代表点の動きベクトルに対して有効か無効かの判定を行う。
【0061】
第1の判定方法を図6(a)と図8を用いて説明する。まず、ステップS801において、隣接する3つの代表点を抽出する。ここでは、3つの代表点が、図6(a)の代表点601a、602a、603aであるとする。そして、ステップS802で、これらの代表点により形成される三角形600aの面積L1を求める。次にステップS803において、参照ピクチャ中で代表点に対応する対応点を抽出する。代表点601a、602a、603aに対する動きベクトルが、それぞれ動きベクトル611、動きベクトル612、動きベクトル613であるとすると、参照ピクチャ中での対応点はそれぞれ対応点601b、602b、603bとなる。ステップS804では、これらの対応点により形成される三角形600bの面積L2を計算する。そして、ステップS805において、このL1とL2の比、すなわち対応する三角形の面積比が所定の範囲T1〜T2に入っているかを判断する。例えば、T1、T2の値としては、それぞれ0.5、2.0といった値を用いればよい。ステップS805の条件を満たしていれば、これらの代表点は有効であり(ステップS807)、ステップS805の条件を満たしていなければ、これらの代表点は無効であると判断する(ステップS806)。
ここで、代表点が無効であると判断された場合、ある代表点が他の三角形の一部として同様の処理がなされ、その場合に有効であると判断された場合には、その代表点は有効と判断しても良い。
【0062】
動きベクトル判定部705での第2の判定方法を図6(b)と図9を用いて説明する。まず、ステップS901において、隣接する3つの代表点を抽出する。
ここでは、3つの代表点が、図6(b)の代表点621a、622a、623aであるとする。ステップS902において、参照ピクチャ中で代表点に対応する対応点を抽出する。代表点621a、622a、623aに対する動きベクトルが、それぞれ動きベクトル631、動きベクトル632、動きベクトル633であるとすると、参照ピクチャ中での対応点はそれぞれ対応点621b、622b、623bとなる。ステップS903では、代表点と対応点の位置関係を調べる。ここでは、まず代表点に関して、621a→622a→623aの順で三角形をどのように形成するかを判断する。この場合は、図6(b)からわかるように、反時計回りに三角形を形成していることがわかる。次に、対応点に関して、対応する同じ順序、すなわち621b→622b→623bの順で三角形をどのように形成するかを判断する。この場合は、図6(b)からわかるように、時計回りに三角形を形成していることがわかる。すなわち、代表点とその対応点とで位置関係が異なっていることがわかる。ステップS903の条件を満たしていれば、これらの代表点は有効であり(ステップS905)、ステップS903の条件を満たしていなければ、これらの代表点は無効であると判断する(ステップS904)。ここで、代表点が無効であると判断された場合、ある代表点が他の三角形の一部として同様の処理がなされ、その場合に有効であると判断された場合には、その代表点は有効と判断しても良い。
【0063】
動きベクトル判定部705での第3の判定方法を図10、図11を用いて説明する。まず、ステップS1101で現ピクチャ中の代表点を選択する。今、選択した代表点が代表点1001であるとする。次にステップS1102で、代表点1001の動きベクトル1004を用いて、代表点1001の対応点1002を特定する。ステップS1103では、参照ピクチャ中の対応点、すなわち対応点1002、から現ピクチャに対して動き推定を行う。この動き検出の方法としては、第1の実施の形態における反復型動き推定部103や、第2の実施の形態における反復型動き推定部503、ブロックマッチング型動き推定部505、動きベクトル選択部506による動き検出方法等を用いることができる。ここでは、この動き推定により動きベクトル1005が得られたとする。そして、ステップ1104では、参照ピクチャ中の対応点1002に対する動きベクトル1005を用いて、現ピクチャ中の対応点1003を特定する。そして、ステップS1105において、現ピクチャ中の代表点1001と対応点1003との距離を計算し、この距離が閾値以下であるかどうかを判定する。ステップS1105の条件を満たしていれば、これらの代表点は有効であり(ステップS1107)、ステップS1105の条件を満たしていなければ、これらの代表点は無効であると判断する(ステップS1106)。
【0064】
動きベクトル判定部705では、以上のような判定方法を用いて、各代表点が有効であるか無効であるかを判定する。ここで、判定方法は、上記の第1〜第3の判定方法のいずれかを用いてもよいし、これらを組み合わせて用いてもよい。
組み合わせて判定を行う場合、すべての判定結果が有効である代表点のみを有効としてもよいし、第1と第2の判定方法で無効とされても第3の判定方法で有効と判断されると有効とする、としてもよく、様々な組み合わせが可能である。
そして、動きベクトル判定部705で判定された各代表点に対する有効、無効の判定結果は、動きベクトル補正部706に対して出力される。
【0065】
動きベクトル補正部706では、動きベクトル判定部705で無効と判断された代表点の動きベクトルに対して補正処理を施す。この補正処理の方法を図2(a)を用いて説明する。今、例えば代表点201の動きベクトルが無効であると判断されたとする。この場合、隣接する代表点の有効な動きベクトルから、代表点201の動きベクトルを補間生成し、また例えば、代表点202と代表点205の動きベクトルのみが有効であると判断されたとすると、代表点201の動きベクトルは代表点202と代表点205の動きベクトルの平均ベクトルで置き換え、という処理を行い、代表点201の動きベクトルを補間生成する。
【0066】
動きベクトル補正部706において、以上のような処理により、すべての無効な代表点の動きベクトルが補間生成されると、全代表点の動きベクトルが出力される。
以上のように、本発明の動き推定方法および動画像符号化方法では、画像中に代表点を設定し、各代表点の動きベクトルを求める。そして、その代表点の動きベクトルが有効であるか、無効であるかを判定する。この判定方法としては例えば、隣接する代表点により形成される多角形の面積と、動きベクトルにより代表点に対応する対応点が形成する多角形の面積比が、所定の範囲内であれば有効であるとする方法や、隣接する代表点により形成される多角形内での各代表点の位置関係と、動きベクトルにより代表点に対応する対応点が形成する多角形内での各対応点の位置関係とが同じであれば有効であるとする方法や、代表点に対応する対応点から逆方向に動き推定を行い、それにより得られる対応点と元の代表点との距離が所定値以下であれば有効であると判定する方法があり、これらを単独であるいは組み合わせることにより、有効であるか無効であるかを判定する。そして、無効であると判定された代表点の動きベクトルは、有効である隣接する代表点の動きベクトルから補間生成する。
【0067】
このような動作により、本発明の動き推定方法および動画像符号化方法を用いることにより、代表点の動きベクトルが有効であるか、無効であるかを確実に判断することができる。例えば、代表点が無効であるのは、明らかに動き推定が間違っている場合や、隠れなどによって実際には動き推定ができない場合等であり、これらの場合を確実に検出することができる。そして、無効であると判定した動きベクトルを周辺の代表点の動きベクトルから補間生成することにより、予測画像(動き補償画像)の画質の向上、すなわち符号化画像の画質の向上を図ることができる。
【0068】
なお、本実施の形態においては、動き推定における参照ピクチャは既に符号化済みのピクチャを用いるとしたが、これは参照ピクチャの原画像を用いても良い。ただし、符号化においては、本実施の形態と同様に符号化済みのピクチャを用いる。
【0069】
また、本実施の形態においては、本発明の動き推定方法を利用した例として、動画像符号化に適用する場合について説明したが、これは動画像符号化以外の処理、例えば画像処理等に適用しても良い。
また、本実施の形態においては、図2(b)のように代表点の配置と領域の分割を行う場合を例として説明したが、代表点の配置方法と領域の分割方法は、他の方法であっても良い。他の方法の一例としては、例えば図4(a)、(b)のような方法がある。また、領域の分割方法は、固定でなくても良く、例えば画像のエッジ情報を取得し、そのエッジに沿って領域を分割し、代表点を配置するような方法であっても良い。
【0070】
また、本実施の形態においては、現ピクチャに対して代表点を設定し、その代表点の参照ピクチャに対する動き量を求める場合について説明したが、これは、参照ピクチャに対して所定の代表点を設定し、その代表点の現ピクチャに対する動き量を求める場合であっても良い。
【0071】
(実施の形態4)
さらに、上記各実施の形態で示した動き推定方法および動画像符号化方法を実現するためのプログラムを、フレキシブルディスク等の記録媒体に記録するようにすることにより、上記各実施の形態で示した処理を、独立したコンピュータシステムにおいて簡単に実施することが可能となる。
【0072】
図12は、上記各実施の形態の動き推定方法および動画像符号化方法を、フレキシブルディスク等の記録媒体に記録されたプログラムを用いて、コンピュータシステムにより実施する場合の説明図である。
図12(b) は、フレキシブルディスクの正面からみた外観、断面構造、及びフレキシブルディスクを示し、図12 (a) は、記録媒体本体であるフレキシブルディスクの物理フォーマットの例を示している。フレキシブルディスクFDはケースF内に内蔵され、該ディスクの表面には、同心円状に外周からは内周に向かって複数のトラックTrが形成され、各トラックは角度方向に16のセクタSeに分割されている。従って、上記プログラムを格納したフレキシブルディスクでは、上記フレキシブルディスクFD上に割り当てられた領域に、上記プログラムが記録されている。
【0073】
また、図12(c) は、フレキシブルディスクFDに上記プログラムの記録再生を行うための構成を示す。動き推定方法および動画像符号化方法を実現する上記プログラムをフレキシブルディスクFDに記録する場合は、コンピュータシステムCsから上記プログラムをフレキシブルディスクドライブを介して書き込む。また、フレキシブルディスク内のプログラムにより動き推定方法および動画像符号化方法を実現する上記動き推定方法および動画像符号化方法をコンピュータシステム中に構築する場合は、フレキシブルディスクドライブによりプログラムをフレキシブルディスクから読み出し、コンピュータシステムに転送する。
【0074】
なお、上記説明では、記録媒体としてフレキシブルディスクを用いて説明を行ったが、光ディスクを用いても同様に行うことができる。また、記録媒体はこれに限らず、ICカード、ROMカセット等、プログラムを記録できるものであれば同様に実施することができる。
【0075】
(実施の形態5)
さらにここで、上記実施の形態で示した動き推定方法および動画像符号化方法の応用例とそれを用いたシステムを説明する。
図13は、コンテンツ配信サービスを実現するコンテンツ供給システムex100の全体構成を示すブロック図である。通信サービスの提供エリアを所望の大きさに分割し、各セル内にそれぞれ固定無線局である基地局ex107〜ex110が設置されている。
【0076】
このコンテンツ供給システムex100は、例えば、インターネットex101にインターネットサービスプロバイダex102および電話網ex104、および基地局ex107〜ex110を介して、コンピュータex111、PDA(personal digital assistant)ex112、カメラex113、携帯電話ex114、カメラ付きの携帯電話ex115などの各機器が接続される。
【0077】
しかし、コンテンツ供給システムex100は図13のような組合せに限定されず、いずれかを組み合わせて接続するようにしてもよい。また、固定無線局である基地局ex107〜ex110を介さずに、各機器が電話網ex104に直接接続されてもよい。
【0078】
カメラex113はデジタルビデオカメラ等の動画撮影が可能な機器である。また、携帯電話は、PDC(Personal Digital Communications)方式、CDMA(Code Division Multiple Access)方式、W−CDMA(Wideband−Code Division Multiple Access)方式、若しくはGSM(Global System for Mobile Communications)方式の携帯電話機、またはPHS(Personal Handyphone System)等であり、いずれでも構わない。
【0079】
また、ストリーミングサーバex103は、カメラex113から基地局ex109、電話網ex104を通じて接続されており、カメラex113を用いてユーザが送信する符号化処理されたデータに基づいたライブ配信等が可能になる。撮影したデータの符号化処理はカメラex113で行っても、データの送信処理をするサーバ等で行ってもよい。また、カメラex116で撮影した動画データはコンピュータex111を介してストリーミングサーバex103に送信されてもよい。カメラex116はデジタルカメラ等の静止画、動画が撮影可能な機器である。この場合、動画データの符号化はカメラex116で行ってもコンピュータex111で行ってもどちらでもよい。また、符号化処理はコンピュータex111やカメラex116が有するLSIex117において処理することになる。なお、画像符号化・復号化用のソフトウェアをコンピュータex111等で読み取り可能な記録媒体である何らかの蓄積メディア(CD−ROM、フレキシブルディスク、ハードディスクなど)に組み込んでもよい。さらに、カメラ付きの携帯電話ex115で動画データを送信してもよい。このときの動画データは携帯電話ex115が有するLSIで符号化処理されたデータである。
【0080】
このコンテンツ供給システムex100では、ユーザがカメラex113、カメラex116等で撮影しているコンテンツ(例えば、音楽ライブを撮影した映像等)を上記実施の形態同様に符号化処理してストリーミングサーバex103に送信する一方で、ストリーミングサーバex103は要求のあったクライアントに対して上記コンテンツデータをストリーム配信する。クライアントとしては、上記符号化処理されたデータを復号化することが可能な、コンピュータex111、PDAex112、カメラex113、携帯電話ex114等がある。このようにすることでコンテンツ供給システムex100は、符号化されたデータをクライアントにおいて受信して再生することができ、さらにクライアントにおいてリアルタイムで受信して復号化し、再生することにより、個人放送をも実現可能になるシステムである。
【0081】
このシステムを構成する各機器の符号化、復号化には上記各実施の形態で示した画像符号化装置あるいは画像復号化装置を用いるようにすればよい。
その一例として携帯電話について説明する。
図14は、上記実施の形態で説明した動き推定方法および動画像符号化方法を用いた携帯電話ex115を示す図である。携帯電話ex115は、基地局ex110との間で電波を送受信するためのアンテナex201、CCDカメラ等の映像、静止画を撮ることが可能なカメラ部ex203、カメラ部ex203で撮影した映像、アンテナex201で受信した映像等が復号化されたデータを表示する液晶ディスプレイ等の表示部ex202、操作キーex204群から構成される本体部、音声出力をするためのスピーカ等の音声出力部ex208、音声入力をするためのマイク等の音声入力部ex205、撮影した動画もしくは静止画のデータ、受信したメールのデータ、動画のデータもしくは静止画のデータ等、符号化されたデータまたは復号化されたデータを保存するための記録メディアex207、携帯電話ex115に記録メディアex207を装着可能とするためのスロット部ex206を有している。記録メディアex207はSDカード等のプラスチックケース内に電気的に書換えや消去が可能な不揮発性メモリであるEEPROM(Electrically Erasable and Programmable Read Only Memory)の一種であるフラッシュメモリ素子を格納したものである。
【0082】
さらに、携帯電話ex115について図14を用いて説明する。携帯電話ex115は表示部ex202及び操作キーex204を備えた本体部の各部を統括的に制御するようになされた主制御部ex311に対して、電源回路部ex310、操作入力制御部ex304、画像符号化部ex312、カメラインターフェース部ex303、LCD(Liquid Crystal Display)制御部ex302、画像復号化部ex309、多重分離部ex308、記録再生部ex307、変復調回路部ex306及び音声処理部ex305が同期バスex313を介して互いに接続されている。
【0083】
電源回路部ex310は、ユーザの操作により終話及び電源キーがオン状態にされると、バッテリパックから各部に対して電力を供給することによりカメラ付ディジタル携帯電話ex115を動作可能な状態に起動する。
携帯電話ex115は、CPU、ROM及びRAM等でなる主制御部ex311の制御に基づいて、音声通話モード時に音声入力部ex205で集音した音声信号を音声処理部ex305によってディジタル音声データに変換し、これを変復調回路部ex306でスペクトラム拡散処理し、送受信回路部ex301でディジタルアナログ変換処理及び周波数変換処理を施した後にアンテナex201を介して送信する。また携帯電話機ex115は、音声通話モード時にアンテナex201で受信した受信データを増幅して周波数変換処理及びアナログディジタル変換処理を施し、変復調回路部ex306でスペクトラム逆拡散処理し、音声処理部ex305によってアナログ音声データに変換した後、これを音声出力部ex208を介して出力する。
【0084】
さらに、データ通信モード時に電子メールを送信する場合、本体部の操作キーex204の操作によって入力された電子メールのテキストデータは操作入力制御部ex304を介して主制御部ex311に送出される。主制御部ex311は、テキストデータを変復調回路部ex306でスペクトラム拡散処理し、送受信回路部ex301でディジタルアナログ変換処理及び周波数変換処理を施した後にアンテナex201を介して基地局ex110へ送信する。
【0085】
データ通信モード時に画像データを送信する場合、カメラ部ex203で撮像された画像データをカメラインターフェース部ex303を介して画像符号化部ex312に供給する。また、画像データを送信しない場合には、カメラ部ex203で撮像した画像データをカメラインターフェース部ex303及びLCD制御部ex302を介して表示部ex202に直接表示することも可能である。
【0086】
画像符号化部ex312は、本願発明で説明した画像符号化装置を備えた構成であり、カメラ部ex203から供給された画像データを上記実施の形態で示した画像符号化装置に用いた符号化方法によって圧縮符号化することにより符号化画像データに変換し、これを多重分離部ex308に送出する。また、このとき同時に携帯電話機ex115は、カメラ部ex203で撮像中に音声入力部ex205で集音した音声を音声処理部ex305を介してディジタルの音声データとして多重分離部ex308に送出する。
【0087】
多重分離部ex308は、画像符号化部ex312から供給された符号化画像データと音声処理部ex305から供給された音声データとを所定の方式で多重化し、その結果得られる多重化データを変復調回路部ex306でスペクトラム拡散処理し、送受信回路部ex301でディジタルアナログ変換処理及び周波数変換処理を施した後にアンテナex201を介して送信する。
【0088】
データ通信モード時にホームページ等にリンクされた動画像ファイルのデータを受信する場合、アンテナex201を介して基地局ex110から受信した受信データを変復調回路部ex306でスペクトラム逆拡散処理し、その結果得られる多重化データを多重分離部ex308に送出する。
【0089】
また、アンテナex201を介して受信された多重化データを復号化するには、多重分離部ex308は、多重化データを分離することにより画像データのビットストリームと音声データのビットストリームとに分け、同期バスex313を介して当該符号化画像データを画像復号化部ex309に供給すると共に当該音声データを音声処理部ex305に供給する。
【0090】
次に、画像復号化部ex309は、本願発明で説明した画像復号化装置を備えた構成であり、画像データのビットストリームを上記実施の形態で示した符号化方法に対応した復号化方法で復号することにより再生動画像データを生成し、これをLCD制御部ex302を介して表示部ex202に供給し、これにより、例えばホームページにリンクされた動画像ファイルに含まれる動画データが表示される。このとき同時に音声処理部ex305は、音声データをアナログ音声データに変換した後、これを音声出力部ex208に供給し、これにより、例えばホームページにリンクされた動画像ファイルに含まる音声データが再生される。
【0091】
なお、上記システムの例に限られず、最近は衛星、地上波によるディジタル放送が話題となっており、図16に示すようにディジタル放送用システムにも上記実施の形態の少なくとも画像符号化装置または画像復号化装置のいずれかを組み込むことができる。具体的には、放送局ex409では映像情報のビットストリームが電波を介して通信または放送衛星ex410に伝送される。これを受けた放送衛星ex410は、放送用の電波を発信し、この電波を衛星放送受信設備をもつ家庭のアンテナex406で受信し、テレビ(受信機)ex401またはセットトップボックス(STB)ex407などの装置によりビットストリームを復号化してこれを再生する。また、記録媒体であるCDやDVD等の蓄積メディアex402に記録したビットストリームを読み取り、復号化する再生装置ex403にも上記実施の形態で示した画像復号化装置を実装することが可能である。この場合、再生された映像信号はモニタex404に表示される。また、ケーブルテレビ用のケーブルex405または衛星/地上波放送のアンテナex406に接続されたセットトップボックスex407内に画像復号化装置を実装し、これをテレビのモニタex408で再生する構成も考えられる。このときセットトップボックスではなく、テレビ内に画像復号化装置を組み込んでも良い。また、アンテナex411を有する車ex412で衛星ex410からまたは基地局ex107等から信号を受信し、車ex412が有するカーナビゲーションex413等の表示装置に動画を再生することも可能である。
【0092】
更に、画像信号を上記実施の形態で示した画像符号化装置で符号化し、記録媒体に記録することもできる。具体例としては、DVDディスクex421に画像信号を記録するDVDレコーダや、ハードディスクに記録するディスクレコーダなどのレコーダex420がある。更にSDカードex422に記録することもできる。レコーダex420が上記実施の形態で示した画像復号化装置を備えていれば、DVDディスクex421やSDカードex422に記録した画像信号を再生し、モニタex408で表示することができる。
【0093】
なお、カーナビゲーションex413の構成は例えば図15に示す構成のうち、カメラ部ex203とカメラインターフェース部ex303、画像符号化部ex312を除いた構成が考えられ、同様なことがコンピュータex111やテレビ(受信機)ex401等でも考えられる。
【0094】
また、上記携帯電話ex114等の端末は、符号化器・復号化器を両方持つ送受信型の端末の他に、符号化器のみの送信端末、復号化器のみの受信端末の3通りの実装形式が考えられる。
このように、上記実施の形態で示した動き推定方法および動画像符号化方法を上述したいずれの機器・システムに用いることは可能であり、そうすることで、上記実施の形態で説明した効果を得ることができる。
【0095】
また、本発明はかかる上記実施形態に限定されるものではなく、本発明の範囲を逸脱することなく種々の変形または修正が可能である。
【0096】
【発明の効果】
以上の様に、本発明の動き推定方法および動画像符号化方法の第1の発明では、画像中に代表点を設定し、各代表点の動きベクトルを求める際に、小さな探索範囲を設定し、(数式1)で示す評価関数値が最小となる位置を指す動きベクトルに更新する。この処理を動きベクトルが更新される代表点の個数が所定値以下となるまで繰り返し、最終的な動きベクトルを決定する。ここで、評価関数は、現ピクチャの画素ブロックと、参照ピクチャの画素ブロックの画素値で求めた距離の指標と、注目代表点の動きベクトルとその隣接代表点との動きベクトルの距離の指標の重み付け和である。
【0097】
したがって、本発明の動き推定方法および動画像符号化方法の第1の発明を用いることにより、現ピクチャの画素ブロックと、参照ピクチャの画素ブロックの画素値で求めた距離が小さく、かつ隣接代表点の動きベクトルとの距離も小さい動きベクトルを得ることができる。すなわち、他の代表点の動きも考慮することができるため、誤った動きベクトルを推定する可能性が小さくなり、これにより隣接代表点と大きく異なる動きベクトルが求められる可能性が非常に小さくなり、領域中の画素の動きベクトルを正確に得ることができるため、例えば第2の従来方法等と比較して、予測画像(動き補償画像)の画質の向上、すなわち符号化画像の画質の向上を図ることができる。また、例えば第1の従来方法と比較すると、動き推定の際に領域内の画素毎の動きベクトル(変換パラメータ)を求める必要がないため、処理量の大幅な削減を行うことができる。
【0098】
また、本発明の動き推定方法および動画像符号化方法の第2の発明では、画像中に代表点を設定し、各代表点の動きベクトルを求める際に、小さな探索範囲を設定し、(数式1)で示す評価関数値が最小となる位置を指す動きベクトルに更新する。この処理を動きベクトルが更新される代表点の個数が所定値以下となるまで繰り返し、第1の動きベクトルを決定する。ここで、評価関数は、現ピクチャの画素ブロックと、参照ピクチャの画素ブロックの画素値で求めた距離の指標と、注目代表点の動きベクトルとその隣接代表点との動きベクトルの距離の指標の重み付け和である。したがって、現ピクチャの画素ブロックと、参照ピクチャの画素ブロックの画素値で求めた距離が小さく、かつ隣接代表点の動きベクトルとの距離も小さい動きベクトルを得ることができる。次に、従来のブロックマッチング法を用いて、各代表点の第2の動きベクトルを用いる。そして、第1の動きベクトルと第2の動きベクトルとから所定の判定基準(例えば(数式1)から(数式3))を用いて、動きベクトルの選択を行い、その選択した動きベクトルを初期値として再び動きベクトルの推定を行う。すなわち、第1の動きベクトルでは、他の代表点の動きも考慮しながら、少しずつ動きベクトルの値を変えながら動き推定するため、誤った動きベクトルを推定する可能性が小さい動きベクトルを得ることができる。また、第2の動きベクトルでは、大きな動きに追従した動きベクトルを得ることができる。そして、第1と第2の動きベクトルを選択することにより、第1の動きベクトルの特性と、第2の動きベクトルの特性の長所を兼ね備えた動きベクトルを選択することができる。そして、この選択した動きベクトルを初期値として、再び反復型の動きベクトル推定を行うことにより、更に動きベクトルの精度を高めることができる。
【0099】
このような動作により、本発明の動き推定方法および動画像符号化方法の第2の発明を用いることにより、隣接代表点と大きく異なる動きベクトルが求められる可能性が非常に小さくなり、かつ大きな動きに追従した動きベクトルを得ることができ、それにより領域中の画素の動きベクトルを正確に得ることができ、予測画像(動き補償画像)の画質の向上、すなわち符号化画像の画質の向上を図ることができる。
【0100】
また、本発明の動き推定方法および動画像符号化方法の第3の発明では、画像中に代表点を設定し、各代表点の動きベクトルを求める。そして、その代表点の動きベクトルが有効であるか、無効であるかを判定する。この判定方法としては例えば、隣接する代表点により形成される多角形の面積と、動きベクトルにより代表点に対応する対応点が形成する多角形の面積比が、所定の範囲内であれば有効であるとする方法や、隣接する代表点により形成される多角形内での各代表点の位置関係と、動きベクトルにより代表点に対応する対応点が形成する多角形内での各対応点の位置関係とが同じであれば有効であるとする方法や、代表点に対応する対応点から逆方向に動き推定を行い、それにより得られる対応点と元の代表点との距離が所定値以下であれば有効であると判定する方法があり、これらを単独であるいは組み合わせることにより、有効であるか無効であるかを判定する。そして、無効であると判定された代表点の動きベクトルは、有効である隣接する代表点の動きベクトルから補間生成する。
【0101】
このような動作により、本発明の動き推定方法および動画像符号化方法の第3の発明を用いることにより、代表点の動きベクトルが有効であるか、無効であるかを確実に判断することができる。例えば、代表点が無効であるのは、明らかに動き推定が間違っている場合や、隠れなどによって実際には動き推定ができない場合等であり、これらの場合を確実に検出することができる。そして、無効であると判定した動きベクトルを周辺の代表点の動きベクトルから補間生成することにより、予測画像(動き補償画像)の画質の向上、すなわち符号化画像の画質の向上を図ることができる。
【0102】
以上のように、本発明の動き推定方法および動画像符号化方法はその実用的価値が高い。
【図面の簡単な説明】
【図1】本発明の動き検出方法を用いた動画像符号化装置ブロック図(実施の形態1)
【図2】本発明の動き推定方法を説明するための模式図(実施の形態1)
【図3】本発明の動き推定方法を説明するためのフローチャート(実施の形態1)
【図4】本発明の動き推定方法を説明するための模式図(実施の形態1)
【図5】本発明の動き検出方法を用いた動画像符号化装置のブロック図(実施の形態2)
【図6】本発明の動き検出方法を説明するための模式図(実施の形態3)
【図7】本発明の動き検出方法を用いた動画像符号化装置のブロック図(実施の形態3)
【図8】本発明の動き推定方法を説明するためのフローチャート(実施の形態3)
【図9】本発明の動き推定方法を説明するためのフローチャート(実施の形態3)
【図10】本発明の動き検出方法を説明するための模式図(実施の形態3)
【図11】本発明の動き推定方法を説明するためのフローチャート(実施の形態3)
【図12】上記各実施の形態の動き推定方法および動画像符号化方法をコンピュータシステムにより実現するためのプログラムを格納するための記録媒体についての説明図(実施の形態4)
【図13】コンテンツ供給システムの全体構成を示すブロック図(実施の形態5)
【図14】動き推定方法および動画像符号化方法を用いた携帯電話の例(実施の形態5)
【図15】携帯電話のブロック図(実施の形態5)
【図16】ディジタル放送用システムの例(実施の形態5)
【符号の説明】
101 動き推定部
102、104 フレームメモリ
103 反復型動き推定部
105 予測画像生成部
106 予測誤差符号化部
107 可変長符号化部
108 予測誤差復号化部
【発明の属する技術分野】
本発明は、画素の動きベクトルを近隣の複数の代表点の動きベクトルからの内挿により求める動き推定方法、およびその動きベクトルを用いて符号化処理を行う動画像符号化方法に関する。
【0002】
【従来の技術】
近年、音声,画像,その他の画素値を統合的に扱うマルチメディア時代を迎え、従来からの情報メディア,つまり新聞,雑誌,テレビ,ラジオ,電話等の情報を人に伝達する手段がマルチメディアの対象として取り上げられるようになってきた。一般に、マルチメディアとは、文字だけでなく、図形、音声、特に画像等を同時に関連づけて表すことをいうが、上記従来の情報メディアをマルチメディアの対象とするには、その情報をディジタル形式にして表すことが必須条件となる。
【0003】
ところが、上記各情報メディアの持つ情報量をディジタル情報量として見積もってみると、文字の場合1文字当たりの情報量は1〜2バイトであるのに対し、音声の場合1秒当たり64Kbits(電話品質)、さらに動画については1秒当たり100Mbits(現行テレビ受信品質)以上の情報量が必要となり、上記情報メディアでその膨大な情報をディジタル形式でそのまま扱うことは現実的では無い。例えば、テレビ電話は、64Kbit/s〜1.5Mbit/sの伝送速度を持つサービス総合ディジタル網(ISDN : Integrated Services Digital Network)によってすでに実用化されているが、テレビ・カメラの映像をそのままISDNで送ることは不可能である。
【0004】
そこで、必要となってくるのが情報の圧縮技術であり、例えば、テレビ電話の場合、ITU−T(国際電気通信連合 電気通信標準化部門)で勧告されたH.261やH.263規格の動画圧縮技術が用いられている。また、MPEG−1規格の情報圧縮技術によると、通常の音楽用CD(コンパクト・ディスク)に音声情報とともに画像情報を入れることも可能となる。
【0005】
ここで、MPEG(Moving Picture Experts Group)とは、ISO/IEC(国際標準化機構 国際電気標準会議)で標準化された動画像信号圧縮の国際規格であり、MPEG−1は、動画像信号を1.5Mbit/sまで、つまりテレビ信号の情報を約100分の1にまで圧縮する規格である。また、MPEG−1規格では対象とする品質を伝送速度が主として約1.5Mbit/sで実現できる程度の中程度の品質としたことから、さらなる高画質化の要求をみたすべく規格化されたMPEG−2では、動画像信号を2〜15Mbit/sでTV放送品質を実現する。さらに現状では、MPEG−1,MPEG−2と標準化を進めてきた作業グループ(ISO/IEC JTC1/SC29/WG11) によって、MPEG−1,MPEG−2を上回る圧縮率を達成し、更に物体単位で符号化・復号化・操作を可能とし、マルチメディア時代に必要な新しい機能を実現するMPEG−4が規格化された。MPEG−4では、当初、低ビットレートの符号化方法の標準化を目指して進められたが、現在はインタレース画像も含む高ビットレートも含む、より汎用的な符号化に拡張されている。
【0006】
一般に動画像の符号化では、時間方向および空間方向の冗長性を削減することによって情報量の圧縮を行う。そこで時間的な冗長性の削減を目的とする画面間予測符号化では、前方または後方のピクチャを参照してブロック単位で動きの検出および予測画像の作成を行い、得られた予測画像と符号化対象ピクチャとの差分値に対して符号化を行う。ここで、ピクチャとは1枚の画面を表す用語であり、プログレッシブ画像ではフレームを意味し、インタレース画像ではフレームもしくはフィールドを意味する。ここで、インタレース画像とは、1つのフレームが時刻の異なる2つのフィールドから構成される画像である。インタレース画像の符号化や復号化処理においては、1つのフレームをフレームのまま処理したり、2つのフィールドとして処理したり、フレーム内のブロック毎にフレーム構造またはフィールド構造として処理したりすることができる。
【0007】
参照画像を持たず画面内予測符号化を行うものをIピクチャと呼ぶ。また、1枚のピクチャのみを参照し画面間予測符号化を行うものをPピクチャと呼ぶ。また、同時に2枚のピクチャを参照して画面間予測符号化を行うことのできるものをBピクチャと呼ぶ。Bピクチャは表示時間が前方もしくは後方から任意の組み合わせとして2枚のピクチャを参照することが可能である。参照画像(参照ピクチャ)は符号化および復号化の基本単位であるブロックごとに指定することができるが、符号化を行ったビットストリーム中に先に記述される方の参照ピクチャを第1参照ピクチャ、後に記述される方を第2参照ピクチャとして区別する。ただし、これらのピクチャを符号化および復号化する場合の条件として、参照するピクチャが既に符号化および復号化されている必要がある。
【0008】
Pピクチャ又はBピクチャの符号化には、動き補償画面間予測符号化が用いられている。動き補償画面間予測符号化とは、画面間予測符号化に動き補償を適用した符号化方式である。動き補償とは、単純に参照フレームの画素値から予測するのではなく、ピクチャ内の各部の動き量(以下、これを動きベクトルと呼ぶ)を検出し、当該動き量を考慮した予測を行うことにより予測精度を向上すると共に、データ量を減らす方式である。例えば、符号化対象ピクチャの動きベクトルを検出し、その動きベクトルの分だけシフトした予測値と符号化対象ピクチャとの予測残差を符号化することによりデータ量を減している。この方式の場合には、復号化の際に動きベクトルの情報が必要になるため、動きベクトルも符号化されて記録又は伝送される。
【0009】
上記のMPEG−1、MPEG−2、MPEG−4方式等では、動きベクトルは16画素×16画素の大きさを有するマクロブロック単位で検出されており、具体的には、符号化対象ピクチャ側のマクロブロックを固定しておき、参照ピクチャ側のマクロブロックを探索範囲内で移動させ、基準ブロックと最も似通った参照ブロックの位置を見つけることにより、ブロック位置の変化分が動きベクトルとして検出される。ここで、基準ブロックと参照ブロックとがどの程度似通っているかは、所定の評価基準を用いるより決定することができるが、その評価基準としては、例えば対応する画素の差分値の2乗和や絶対値和が用いられる。そして、その2乗和や絶対値和が最小となる参照ブロックが選択される。このような方式は、ブロックマッチングと呼ばれる。
【0010】
ブロックマッチングは、現在広く採用されているが、ブロック内のすべての画素が同一の動きベクトルを持つ、すなわち平行移動をする、という前提を有している。そのため、拡大・縮小などの変形などを伴う場合、ブロックマッチングでは、動き補償時の誤差が大きくなるという問題点を有している。
【0011】
そこでこの問題を解決するために、画素が異なる動きベクトルを持ち、拡大や縮小などの変形に対応することができる動き補償方式が提案されている。以下にこの方式の一例である空間変換に基づく動き補償について説明する。
空間変換に基づく動き補償では、予測画像の位置(x, y)の画素値を参照画像の位置(x’,y’)の画素値として取得する際に、x’とy’の値がxとyに対して所定の変換式を施して得られるものである。ブロックマッチングは、xとyのそれぞれに水平方向および垂直方向の移動量を加算することにより、x’とy’とが得られるため、空間変換に基づく動き補償の特殊な例と考えることもできる。
【0012】
変換関数の形としては、アフィン変換を用いた例(非特許文献1)、共1次変換を用いた例、透視変換を用いた例などが提案されている。
ここで変換関数のパラメータは、符号化側で領域毎に決定し、それを復号化側に伝送することにより、復号化側でも同じ変換を行うことができる。例えば、変換関数にアフィン変換を用い、領域の形状が3角形であるとする。この場合、6個のアフィン変換パラメータを伝送しても良いし、領域の3個の頂点の動きベクトルを伝送し、復号化側で6個のアフィン変換パラメータを再生しても良い。また、共1次変換、透視変換を用いた場合、領域の形状を4角形とすれば同様の処理が可能となる。
【0013】
以下では、変換関数にアフィン変換を用いた場合について説明する。まず現ピクチャに複数の代表点が設定され、隣接する代表点を線分で結ぶことにより複数の多角形領域が形成される。そして、各代表点に対して動き推定を行う。これは具体的には現ピクチャの各代表点に対し、参照ピクチャにおいて対応している点を求めることにより実行される。つまり、代表点の移動があれば参照画像の対応点は現ピクチャの代表点と異なった場所に位置することになる。この結果、動き推定後の参照ピクチャでは、各多角形領域は変形されたものとなる。予測画像は多角形内の各画素に関して変換関数を計算し、参照ピクチャの中から対応する点の画素値を求めることにより生成される。
【0014】
さて、各代表点の動き推定の方法、すなわち動きベクトルを求める方法としては、第1段階目にブロックマッチングにより大まかな動き推定を行った後、第2段階目に代表点の動きベクトルを少しずつ変化させて、参照ピクチャの多角形領域を変形させ、動きベクトルを変化させる度に予測誤差を計算し、その結果予測誤差を最も小さくした動きベクトルを新たに採用する方法が提案されている(第1の従来方法)。また、このような処理では演算量が膨大となることから、評価関数に重みをつけながらブロックマッチングのみで動き推定を行う方法(特許文献1、第2の従来方法)も提案されている。
【0015】
【特許文献1】
特開平08−116541号公報
【0016】
【非特許文献1】
中屋他、「3角形パッチに基づく動き補償の基礎検討」、電子情報通信学会技術報告、IE90−106、平2−03
【0017】
【発明が解決しようとする課題】
しかしながら、上記第1の従来方法では、第2段階目の処理として、代表点の動きベクトルから変換パラメータを求め、その変換パラメータから予測画像を生成して予測誤差を計算し、予測誤差が小さくなる方向に動きベクトルを徐々に修正させていくため、特に予測画像を生成するために膨大な処理量が必要となる。
【0018】
また、上記第2の従来方法では、代表点を含むブロックを用いたブロックマッチングのみにより動き推定を行う。この方法は、第1の従来方法と比較して処理量を大きく削減することができるが、他の代表点の動きを考慮していないため、隣接する代表点が同じような動きをしていても、絵柄によっては異なる動きベクトルとして推定されることがある。代表点で囲まれる領域中の画素の動きベクトルは、それらの代表点の動きベクトルから計算するため、一つでも大きく異なる動きベクトルがあると、領域中のすべての画素の動きベクトルが正しくない動きベクトルとなってしまうという課題を有していた。
【0019】
【課題を解決するための手段】
この課題を解決するために、第1の発明は、第1のピクチャ中に代表点を設定する代表点設定ステップと、前記代表点の第2のピクチャに対する動きベクトルの初期値を設定する初期値設定ステップと、前記代表点の動きベクトルを所定の範囲内で変更して評価関数を計算し、前記評価関数値に応じて動きベクトルを更新する動き検出ステップと、所定の代表点に対して前記動き検出ステップによる処理を施し、異なる動きベクトルに更新された代表点の個数が所定値未満であれば処理を終了し、所定値以上であれば再び前記動き検出ステップの処理を実施する制御ステップと、を含むことを特徴としている。
【0020】
第2の発明は、第1のピクチャ中に代表点を設定する代表点設定ステップと、前記代表点の第2のピクチャに対する動きベクトルをN(N≧2)種類の方法で検出する第1から第Nの動き検出ステップと、前記代表点のそれぞれに対して、前記第1から第Nの動き検出ステップにより求められたN個の動きベクトルの中から、評価関数を用いて1つの動きベクトルを選択する動きベクトル選択ステップと、を含むことを特徴としている。
第3の発明は、第1のピクチャ中に代表点を設定する代表点設定ステップと、
前記代表点の第2のピクチャに対する動きベクトルを検出する動き検出ステップと、
前記代表点の動きベクトルの有効性を、前記代表点の近傍の代表点の動きベクトルまたは前記第1と第2のピクチャを用いて判定する動きベクトル判定ステップと、を含むことを特徴としている。
【0021】
【発明の実施の形態】
以下、本発明の実施の形態について、図1から図16を用いて説明する。
【0022】
(実施の形態1)
まず、本発明の動き推定方法の第1の実施の形態を図1を用いて説明する。
【0023】
図1は、本発明の動き推定方法を用いた動画像符号化装置100のブロック図である。動画像符号化装置100は、本発明の動き推定方法を実施する動き推定部101と、予測画像生成部105、予測誤差符号化部106、可変長符号化部107、予測誤差復号化部108、差分演算部109、加算演算部110から構成され、動き推定部101は、フレームメモリ102、104,反復型動き推定部103から構成される。
【0024】
フレームメモリ102には入力画像が入力され、現ピクチャが保持される。また、フレームメモリ104には、既に符号化済みの参照ピクチャが保持されているとする。
反復型動き推定部103では、フレームメモリ102に保持された現ピクチャの画像データと、フレームメモリ104に保持された参照ピクチャの画像データとを用いて、動き推定を行う。反復型動き推定部103の動作を図2、図3を用いて説明する。
【0025】
図2(a)は、現ピクチャの画素の並びの一部を示す模式図である。図2(a)において、黒丸と白丸はそれぞれ画素を示している。また、白丸は代表点を表している。図2(a)に示すように、代表点は、代表点を結ぶことによって三角形が構成されるように配置される。
【0026】
図3は、反復型動き推定部103の処理内容を示すフローチャートである。まず、ステップS301において、全ての代表点に対して初期動きベクトルを設定する。ここでは、初期動きベクトルの大きさは0であるとする。そして、全ての代表点に対して、所定の順番でステップS302、ステップS303の処理を行う。所定の順番としては、例えばラスタ順がある。ステップS302では、代表点の現在の動きベクトルが指し示す参照ピクチャ中の位置を中心として、所定の範囲に対して評価関数を求める。例えば、現在処理中の代表点が図2の201であるとすると、例えば画素集合(ブロック)210に含まれる画素を用いて、評価関数値を求める。
ここで、評価関数値は、(数式1)により求めるとする。
【0027】
【数1】
【0028】
ここで、iは代表点番号、Jiは代表点iの評価関数値、Biは代表点iの動きベクトルを探索する際に用いる画素集合(例えば代表点201に対する画素集合210)、Djは現ピクチャの画素と参照ピクチャ中の対応画素との差を示す値(例えば差の絶対値や、差の2乗値)、Niは代表点iに隣接する代表点の集合(例えば代表点201に対しては、代表点202〜207)、Rikは代表点iと代表点kの動きベクトルの差を表す値(例えば動くベクトルの各成分の差分値の2乗和)、αは重み係数である。
【0029】
すなわち(数式1)の右辺第1項は、現ピクチャの画素ブロックと、参照ピクチャの画素ブロックの画素値で求めた距離の指標を示し、右辺第2項は、注目代表点の動きベクトルとその隣接代表点との動きベクトルの距離の指標を示す。
図2(b)を用いて評価関数値を求める範囲について説明する。図2(b)の現ピクチャ中の画素256が、現在注目する代表点であり、その周辺画素集合がブロック250である。また、代表点256の現在の動きベクトルが動きベクトル254であるとする。この際、動きベクトル254が指し示す位置252を中心として、所定の範囲251の中を指し示す動きベクトルを用いて評価関数値を計算する。例えば、位置252に対する評価関数値の第1項は、ブロック250とブロック257の画素値を用いて計算することになる。そして範囲251内での位置を少しずつずらしながら(動きベクトルの値を変化させながら)、評価関数値を求めていく。ここで、範囲251としては、例えば参照ピクチャ中のブロックの中心位置が上下左右に1〜3画素程度移動するような範囲に設定することができる。
【0030】
ステップS303では、ステップS302で求めた評価関数値のうち、最小となる評価関数値を求める。そして、その評価関数値が最小となる位置を求め、その位置を指す動きベクトルに更新する。例えば図2(b)において、位置258に対する評価関数値が最小であったとすると、代表点256の動きベクトルは、動きベクトル255に更新することになる。ここで、評価関数値が最小値を示す動きベクトルが元の動きベクトルと同じ場合には、更新処理は行わない。
【0031】
このような処理をすべての代表点に対して行う。すべての代表点に対して処理が終了すると、ステップS304において、動きベクトル値が更新された代表点の数を計数し、その個数が所定値以下あるかどうかを判断する。所定値としては、例えば全代表点の個数の1%などの値を用いることができる。そして、条件を満たしていれば処理を終了し、条件を満たしていなければ、現在の動きベクトルを初期値として、全代表点に対してステップS302とステップS303の処理を再び実行する。
【0032】
すべての処理が完了すると、反復型動き推定部103は、全代表点の動きベクトルを予測画像生成部105、可変長符号化部107に対して出力する。予測画像生成部105では、反復型動き推定部103から出力された各代表点の動きベクトルと、フレームメモリ104から得られる参照ピクチャの画像データとを用いて、予測画像(動き補償画像)を生成する。
【0033】
例えば、図2(a)における代表点201、202、203により囲まれる三角形領域内の画素は、代表点201、202、203の動きベクトルから各画素位置での動きベクトルを内挿生成し、その生成された動きベクトルを用いて、参照ピクチャから画素値を取得することにより、予測画素を生成する。ここで、動きベクトルの内挿方法としては、従来方法で説明した方法(例えばアフィン変換)を用いることができる。
【0034】
予測画像は差分演算部109と加算演算部110に対して出力される。差分演算部109では、フレームメモリ102から得られる現ピクチャとの差分画像が計算される。差分画像は予測誤差符号化部106に入力され、周波数変換や量子化等の処理が施されて、符号化データとなり、可変長符号化部107と予測誤差復号化部108に対して出力される。可変長符号化部107では、予測誤差符号化部106にから入力された符号化データと、反復型動き推定部103から入力された各代表点の動きベクトルとに対して可変長符号化を施して、符号列として出力する。
【0035】
また、予測誤差復号化部108では、予測誤差符号化部106から入力された符号化データに対して、逆量子化や逆周波数変換等の処理を施し、復号化差分画像として加算演算部110に対して出力する。加算演算部110では、予測誤差復号化部108から入力された復号化差分画像と、予測画像生成部105から入力された予測画像とを加算し、復号化画像を生成し、それをフレームメモリ104に対して出力する。この復号化画像は、以降の入力画像を符号化する際の参照ピクチャとして用いる。
【0036】
以上のように、本発明の動き推定方法および動画像符号化方法では、画像中に代表点を設定し、各代表点の動きベクトルを求める際に、小さな探索範囲を設定し、(数式1)で示す評価関数値が最小となる位置を指す動きベクトルに更新する。この処理を動きベクトルが更新される代表点の個数が所定値以下となるまで繰り返し、最終的な動きベクトルを決定する。ここで、評価関数は、現ピクチャの画素ブロックと、参照ピクチャの画素ブロックの画素値で求めた距離の指標と、注目代表点の動きベクトルとその隣接代表点との動きベクトルの距離の指標の重み付け和である。
【0037】
したがって、本発明の動き推定方法および動画像符号化方法を用いることにより、現ピクチャの画素ブロックと、参照ピクチャの画素ブロックの画素値で求めた距離が小さく、かつ隣接代表点の動きベクトルとの距離も小さい動きベクトルを得ることができる。すなわち、他の代表点の動きも考慮することができるため、誤った動きベクトルを推定する可能性が小さくなり、これにより隣接代表点と大きく異なる動きベクトルが求められる可能性が非常に小さくなり、領域中の画素の動きベクトルを正確に得ることができるため、例えば第2の従来方法等と比較して、予測画像(動き補償画像)の画質の向上、すなわち符号化画像の画質の向上を図ることができる。また、例えば第1の従来方法と比較すると、動き推定の際に領域内の画素毎の動きベクトル(変換パラメータ)を求める必要がないため、処理量の大幅な削減を行うことができる。
【0038】
なお、本実施の形態においては、動き推定における参照ピクチャは既に符号化済みのピクチャを用いるとしたが、これは参照ピクチャの原画像を用いても良い。ただし、符号化においては、本実施の形態と同様に符号化済みのピクチャを用いる。
【0039】
また、本実施の形態においては、本発明の動き推定方法を利用した例として、動画像符号化に適用する場合について説明したが、これは動画像符号化以外の処理、例えば画像処理等に適用しても良い。
また、本実施の形態においては、図2(b)のように代表点の配置と領域の分割を行う場合を例として説明したが、代表点の配置方法と領域の分割方法は、他の方法であっても良い。他の方法の一例としては、例えば図4(a)、(b)のような方法がある。また、領域の分割方法は、固定でなくても良く、例えば画像のエッジ情報を取得し、そのエッジに沿って領域を分割し、代表点を配置するような方法であっても良い。
【0040】
また、本実施の形態においては、現ピクチャに対して代表点を設定し、その代表点と参照ピクチャとの動き量に基づいて、現ピクチャの領域中の各画素の動きを補間生成し、参照ピクチャから動き補償する場合について説明したが、これは、参照ピクチャに対して所定の代表点を設定し、その代表点と現ピクチャとの動き量に基づいて、現ピクチャの領域中の各画素の動きを補間生成し、参照ピクチャから動き補償する場合であっても良い。
【0041】
(実施の形態2)
次に、本発明の動き推定方法の第2の実施の形態について、図5を用いて説明する。
図5は、本発明の動き推定方法を用いた動画像符号化装置500のブロック図である。動画像符号化装置500は、本発明の動き推定方法を実施する動き推定部501と、予測画像生成部105、予測誤差符号化部106、可変長符号化部107、予測誤差復号化部108、差分演算部109、加算演算部110から構成され、動き推定部501は、フレームメモリ502、504、反復型動き推定部503、ブロックマッチング動き推定部505、動きベクトル選択部506から構成される。
【0042】
動き推定部501以外の動作は、第1の実施の形態と同様であるので、ここでは動き推定部501の動作について説明する。
フレームメモリ502には入力画像が入力され、現ピクチャが保持される。また、フレームメモリ504には、既に符号化済みの参照ピクチャが保持されているとする。
【0043】
まず、反復型動き推定部503において、フレームメモリ502に保持された現ピクチャの画像データと、フレームメモリ504に保持された参照ピクチャの画像データとを用いて、動き推定を行う。この動作は、第1の実施の形態と同様であるので、詳細な説明は割愛する。検出された動きベクトルは、動きベクトル選択部506に対して出力される。
【0044】
次に、ブロックマッチング型動き推定部505において、フレームメモリ502に保持された現ピクチャの画像データと、フレームメモリ504に保持された参照ピクチャの画像データとを用いて、動き推定を行う。これは、反復型動き推定部503において現ピクチャに対して設定した代表点と同じ代表点を用いて、その周辺画素から構成される画素集合(ブロック)を用いて、従来のブロックマッチングと同様の処理により、現ピクチャから参照ピクチャに対して探索を行うことにより、動き推定を行う。検出された動きベクトルは、動きベクトル選択部506に対して出力される。ここで、ブロックマッチングの際には、ブロック間の画素差分値のみを動き推定の評価関数としても良いし、ブロック間の画素差分値と、既に動きベクトルの検出が終わっている周辺代表点の動きベクトルとの相関性とを用いた評価関数を使っても良い。
【0045】
動きベクトル選択部506では、反復型動き推定部503とブロックマッチング型動き推定部505とから入力された各代表点の動きベクトルを用いて、代表点毎に動きベクトルの選択を行う。
代表ベクトルの選択方法を説明する。選択方法としては、代表点毎に評価関数値を求め、それを比較することにより決定することができる。例えば、評価関数値としては、(数式1)、(数式2)、(数式3)等を用いることができる。
【0046】
【数2】
【0047】
【数3】
【0048】
ここで、各記号の定義は(数式1)の記号の定義に従う。
例えば(数式2)を用いることにより、参照する画像との差分値による類似度により、各動きベクトルを評価することができる。また、例えば(数式1)、(数式3)を用いることにより、参照する画像との差分値による類似度と隣接する代表点の動きベクトルとの類似度とを用いることにより、各動きベクトルを評価することができる。
【0049】
動きベクトル選択部506で選択された各代表点の動きベクトルは、反復型動き推定部503に対して出力される。反復型動き推定部503では、動きベクトル選択部506から入力された各代表点の動きベクトルを初期値として、再び動き推定を行う。この動作は、図3のフローチャートにおけるS301における、初期動きベクトルとして、動きベクトル選択部506から入力された各代表点の動きベクトルを用いることに相当する。
【0050】
そして、反復型動き推定部503において検出された動きベクトルは、予測画像生成部105と可変長符号化部107に対して出力され、第1の実施の形態と同様の処理により、符号化処理が行われる。
以上のように、本発明の動き推定方法および動画像符号化方法では、画像中に代表点を設定し、各代表点の動きベクトルを求める際に、小さな探索範囲を設定し、(数式1)で示す評価関数値が最小となる位置を指す動きベクトルに更新する。この処理を動きベクトルが更新される代表点の個数が所定値以下となるまで繰り返し、第1の動きベクトルを決定する。ここで、評価関数は、現ピクチャの画素ブロックと、参照ピクチャの画素ブロックの画素値で求めた距離の指標と、注目代表点の動きベクトルとその隣接代表点との動きベクトルの距離の指標の重み付け和である。したがって、現ピクチャの画素ブロックと、参照ピクチャの画素ブロックの画素値で求めた距離が小さく、かつ隣接代表点の動きベクトルとの距離も小さい動きベクトルを得ることができる。次に、従来のブロックマッチング法を用いて、各代表点の第2の動きベクトルを用いる。そして、第1の動きベクトルと第2の動きベクトルとから所定の判定基準(例えば(数式1)から(数式3))を用いて、動きベクトルの選択を行い、その選択した動きベクトルを初期値として再び動きベクトルの推定を行う。
【0051】
すなわち、第1の動きベクトルでは、他の代表点の動きも考慮しながら、少しずつ動きベクトルの値を変えながら動き推定するため、誤った動きベクトルを推定する可能性が小さい動きベクトルを得ることができる。また、第2の動きベクトルでは、大きな動きに追従した動きベクトルを得ることができる。そして、第1と第2の動きベクトルを選択することにより、第1の動きベクトルの特性と、第2の動きベクトルの特性の長所を兼ね備えた動きベクトルを選択することができる。そして、この選択した動きベクトルを初期値として、再び反復型の動きベクトル推定を行うことにより、更に動きベクトルの精度を高めることができる。
【0052】
このような動作により、本発明の動き推定方法および動画像符号化方法を用いることにより、隣接代表点と大きく異なる動きベクトルが求められる可能性が非常に小さくなり、かつ大きな動きに追従した動きベクトルを得ることができ、それにより領域中の画素の動きベクトルを正確に得ることができ、予測画像(動き補償画像)の画質の向上、すなわち符号化画像の画質の向上を図ることができる。
【0053】
なお、本実施の形態においては、動き推定における参照ピクチャは既に符号化済みのピクチャを用いるとしたが、これは参照ピクチャの原画像を用いても良い。ただし、符号化においては、本実施の形態と同様に符号化済みのピクチャを用いる。
【0054】
また、本実施の形態においては、本発明の動き推定方法を利用した例として、動画像符号化に適用する場合について説明したが、これは動画像符号化以外の処理、例えば画像処理等に適用しても良い。
また、本実施の形態においては、図2(b)のように代表点の配置と領域の分割を行う場合を例として説明したが、代表点の配置方法と領域の分割方法は、他の方法であっても良い。他の方法の一例としては、例えば図4(a)、(b)のような方法がある。また、領域の分割方法は、固定でなくても良く、例えば画像のエッジ情報を取得し、そのエッジに沿って領域を分割し、代表点を配置するような方法であっても良い。
【0055】
また、本実施の形態においては、現ピクチャに対して代表点を設定し、その代表点と参照ピクチャとの動き量に基づいて、現ピクチャの領域中の各画素の動きを補間生成し、参照ピクチャから動き補償する場合について説明したが、これは、参照ピクチャに対して所定の代表点を設定し、その代表点と現ピクチャとの動き量に基づいて、現ピクチャの領域中の各画素の動きを補間生成し、参照ピクチャから動き補償する場合であっても良い。
【0056】
また、本実施の形態においては、動きベクトル選択部506において動きベクトルの選択を行った後、その動きベクトルを初期値として、反復型動き推定部502で再び動き推定を行う場合について説明したが、これは、動きベクトル選択部506において選択した動きベクトルをそのまま用いて、動き補償を行っても良い。この場合には、動きベクトル選択部506において選択した動きベクトルが、そのまま予測画像生成部105と可変長符号化部107に対して出力され、この後第1の実施の形態と同様の処理により、符号化処理が行われることになる。この場合、動きベクトルの精度は若干悪くなるが、2回目の反復型動き推定部502の処理を行わないため、処理量を削減することができる。
【0057】
また、本実施の形態においては、反復型動き推定部502で求めた動きベクトルと、ブロックマッチング型動き推定部506とで求めた、各代表点の2つの動きベクトルを評価基準により比較し、1つの動きベクトルを求める場合について説明したが、これはN(N≧2)種類の動き推定方法により、各代表点のN個の動きベクトルを評価基準により比較し、1つの動きベクトルを求めても良い。
【0058】
(実施の形態3)
次に、本発明の動き推定方法の第2の実施の形態について、図7を用いて説明する。
図7は、本発明の動き推定方法を用いた動き推定部701のブロック図である。動き推定部701は、フレームメモリ702、704、動き検出部703、動きベクトル判定部705、動きベクトル補正部706から構成される。
本実施の形態では、動き推定方法についてのみ説明するが、動きベクトル推定部701は、第1の実施の形態、第2の実施の形態で説明した動画像符号化装置における動きベクトル推定部としても用いることができる。
【0059】
フレームメモリ702には入力画像が入力され、現ピクチャが保持される。また、フレームメモリ704には、既に符号化済みの画像が参照ピクチャとして保持されているとする。
動き検出部703では、フレームメモリ702に保持された現ピクチャの画像データと、フレームメモリ704に保持された参照ピクチャの画像データとを用いて、現ピクチャの各代表点について、参照ピクチャに対する動き検出を行う。この動き検出の方法としては、第1の実施の形態における反復型動き推定部103や、第2の実施の形態における反復型動き推定部503、ブロックマッチング型動き推定部505、動きベクトル選択部506による動き検出方法等を用いることができる。
【0060】
動き検出部703で検出された動きベクトルは、動きベクトル判定部705に対して出力される。
動きベクトル判定部705では、動き検出部703から入力された各代表点の動きベクトルに対して有効か無効かの判定を行う。
【0061】
第1の判定方法を図6(a)と図8を用いて説明する。まず、ステップS801において、隣接する3つの代表点を抽出する。ここでは、3つの代表点が、図6(a)の代表点601a、602a、603aであるとする。そして、ステップS802で、これらの代表点により形成される三角形600aの面積L1を求める。次にステップS803において、参照ピクチャ中で代表点に対応する対応点を抽出する。代表点601a、602a、603aに対する動きベクトルが、それぞれ動きベクトル611、動きベクトル612、動きベクトル613であるとすると、参照ピクチャ中での対応点はそれぞれ対応点601b、602b、603bとなる。ステップS804では、これらの対応点により形成される三角形600bの面積L2を計算する。そして、ステップS805において、このL1とL2の比、すなわち対応する三角形の面積比が所定の範囲T1〜T2に入っているかを判断する。例えば、T1、T2の値としては、それぞれ0.5、2.0といった値を用いればよい。ステップS805の条件を満たしていれば、これらの代表点は有効であり(ステップS807)、ステップS805の条件を満たしていなければ、これらの代表点は無効であると判断する(ステップS806)。
ここで、代表点が無効であると判断された場合、ある代表点が他の三角形の一部として同様の処理がなされ、その場合に有効であると判断された場合には、その代表点は有効と判断しても良い。
【0062】
動きベクトル判定部705での第2の判定方法を図6(b)と図9を用いて説明する。まず、ステップS901において、隣接する3つの代表点を抽出する。
ここでは、3つの代表点が、図6(b)の代表点621a、622a、623aであるとする。ステップS902において、参照ピクチャ中で代表点に対応する対応点を抽出する。代表点621a、622a、623aに対する動きベクトルが、それぞれ動きベクトル631、動きベクトル632、動きベクトル633であるとすると、参照ピクチャ中での対応点はそれぞれ対応点621b、622b、623bとなる。ステップS903では、代表点と対応点の位置関係を調べる。ここでは、まず代表点に関して、621a→622a→623aの順で三角形をどのように形成するかを判断する。この場合は、図6(b)からわかるように、反時計回りに三角形を形成していることがわかる。次に、対応点に関して、対応する同じ順序、すなわち621b→622b→623bの順で三角形をどのように形成するかを判断する。この場合は、図6(b)からわかるように、時計回りに三角形を形成していることがわかる。すなわち、代表点とその対応点とで位置関係が異なっていることがわかる。ステップS903の条件を満たしていれば、これらの代表点は有効であり(ステップS905)、ステップS903の条件を満たしていなければ、これらの代表点は無効であると判断する(ステップS904)。ここで、代表点が無効であると判断された場合、ある代表点が他の三角形の一部として同様の処理がなされ、その場合に有効であると判断された場合には、その代表点は有効と判断しても良い。
【0063】
動きベクトル判定部705での第3の判定方法を図10、図11を用いて説明する。まず、ステップS1101で現ピクチャ中の代表点を選択する。今、選択した代表点が代表点1001であるとする。次にステップS1102で、代表点1001の動きベクトル1004を用いて、代表点1001の対応点1002を特定する。ステップS1103では、参照ピクチャ中の対応点、すなわち対応点1002、から現ピクチャに対して動き推定を行う。この動き検出の方法としては、第1の実施の形態における反復型動き推定部103や、第2の実施の形態における反復型動き推定部503、ブロックマッチング型動き推定部505、動きベクトル選択部506による動き検出方法等を用いることができる。ここでは、この動き推定により動きベクトル1005が得られたとする。そして、ステップ1104では、参照ピクチャ中の対応点1002に対する動きベクトル1005を用いて、現ピクチャ中の対応点1003を特定する。そして、ステップS1105において、現ピクチャ中の代表点1001と対応点1003との距離を計算し、この距離が閾値以下であるかどうかを判定する。ステップS1105の条件を満たしていれば、これらの代表点は有効であり(ステップS1107)、ステップS1105の条件を満たしていなければ、これらの代表点は無効であると判断する(ステップS1106)。
【0064】
動きベクトル判定部705では、以上のような判定方法を用いて、各代表点が有効であるか無効であるかを判定する。ここで、判定方法は、上記の第1〜第3の判定方法のいずれかを用いてもよいし、これらを組み合わせて用いてもよい。
組み合わせて判定を行う場合、すべての判定結果が有効である代表点のみを有効としてもよいし、第1と第2の判定方法で無効とされても第3の判定方法で有効と判断されると有効とする、としてもよく、様々な組み合わせが可能である。
そして、動きベクトル判定部705で判定された各代表点に対する有効、無効の判定結果は、動きベクトル補正部706に対して出力される。
【0065】
動きベクトル補正部706では、動きベクトル判定部705で無効と判断された代表点の動きベクトルに対して補正処理を施す。この補正処理の方法を図2(a)を用いて説明する。今、例えば代表点201の動きベクトルが無効であると判断されたとする。この場合、隣接する代表点の有効な動きベクトルから、代表点201の動きベクトルを補間生成し、また例えば、代表点202と代表点205の動きベクトルのみが有効であると判断されたとすると、代表点201の動きベクトルは代表点202と代表点205の動きベクトルの平均ベクトルで置き換え、という処理を行い、代表点201の動きベクトルを補間生成する。
【0066】
動きベクトル補正部706において、以上のような処理により、すべての無効な代表点の動きベクトルが補間生成されると、全代表点の動きベクトルが出力される。
以上のように、本発明の動き推定方法および動画像符号化方法では、画像中に代表点を設定し、各代表点の動きベクトルを求める。そして、その代表点の動きベクトルが有効であるか、無効であるかを判定する。この判定方法としては例えば、隣接する代表点により形成される多角形の面積と、動きベクトルにより代表点に対応する対応点が形成する多角形の面積比が、所定の範囲内であれば有効であるとする方法や、隣接する代表点により形成される多角形内での各代表点の位置関係と、動きベクトルにより代表点に対応する対応点が形成する多角形内での各対応点の位置関係とが同じであれば有効であるとする方法や、代表点に対応する対応点から逆方向に動き推定を行い、それにより得られる対応点と元の代表点との距離が所定値以下であれば有効であると判定する方法があり、これらを単独であるいは組み合わせることにより、有効であるか無効であるかを判定する。そして、無効であると判定された代表点の動きベクトルは、有効である隣接する代表点の動きベクトルから補間生成する。
【0067】
このような動作により、本発明の動き推定方法および動画像符号化方法を用いることにより、代表点の動きベクトルが有効であるか、無効であるかを確実に判断することができる。例えば、代表点が無効であるのは、明らかに動き推定が間違っている場合や、隠れなどによって実際には動き推定ができない場合等であり、これらの場合を確実に検出することができる。そして、無効であると判定した動きベクトルを周辺の代表点の動きベクトルから補間生成することにより、予測画像(動き補償画像)の画質の向上、すなわち符号化画像の画質の向上を図ることができる。
【0068】
なお、本実施の形態においては、動き推定における参照ピクチャは既に符号化済みのピクチャを用いるとしたが、これは参照ピクチャの原画像を用いても良い。ただし、符号化においては、本実施の形態と同様に符号化済みのピクチャを用いる。
【0069】
また、本実施の形態においては、本発明の動き推定方法を利用した例として、動画像符号化に適用する場合について説明したが、これは動画像符号化以外の処理、例えば画像処理等に適用しても良い。
また、本実施の形態においては、図2(b)のように代表点の配置と領域の分割を行う場合を例として説明したが、代表点の配置方法と領域の分割方法は、他の方法であっても良い。他の方法の一例としては、例えば図4(a)、(b)のような方法がある。また、領域の分割方法は、固定でなくても良く、例えば画像のエッジ情報を取得し、そのエッジに沿って領域を分割し、代表点を配置するような方法であっても良い。
【0070】
また、本実施の形態においては、現ピクチャに対して代表点を設定し、その代表点の参照ピクチャに対する動き量を求める場合について説明したが、これは、参照ピクチャに対して所定の代表点を設定し、その代表点の現ピクチャに対する動き量を求める場合であっても良い。
【0071】
(実施の形態4)
さらに、上記各実施の形態で示した動き推定方法および動画像符号化方法を実現するためのプログラムを、フレキシブルディスク等の記録媒体に記録するようにすることにより、上記各実施の形態で示した処理を、独立したコンピュータシステムにおいて簡単に実施することが可能となる。
【0072】
図12は、上記各実施の形態の動き推定方法および動画像符号化方法を、フレキシブルディスク等の記録媒体に記録されたプログラムを用いて、コンピュータシステムにより実施する場合の説明図である。
図12(b) は、フレキシブルディスクの正面からみた外観、断面構造、及びフレキシブルディスクを示し、図12 (a) は、記録媒体本体であるフレキシブルディスクの物理フォーマットの例を示している。フレキシブルディスクFDはケースF内に内蔵され、該ディスクの表面には、同心円状に外周からは内周に向かって複数のトラックTrが形成され、各トラックは角度方向に16のセクタSeに分割されている。従って、上記プログラムを格納したフレキシブルディスクでは、上記フレキシブルディスクFD上に割り当てられた領域に、上記プログラムが記録されている。
【0073】
また、図12(c) は、フレキシブルディスクFDに上記プログラムの記録再生を行うための構成を示す。動き推定方法および動画像符号化方法を実現する上記プログラムをフレキシブルディスクFDに記録する場合は、コンピュータシステムCsから上記プログラムをフレキシブルディスクドライブを介して書き込む。また、フレキシブルディスク内のプログラムにより動き推定方法および動画像符号化方法を実現する上記動き推定方法および動画像符号化方法をコンピュータシステム中に構築する場合は、フレキシブルディスクドライブによりプログラムをフレキシブルディスクから読み出し、コンピュータシステムに転送する。
【0074】
なお、上記説明では、記録媒体としてフレキシブルディスクを用いて説明を行ったが、光ディスクを用いても同様に行うことができる。また、記録媒体はこれに限らず、ICカード、ROMカセット等、プログラムを記録できるものであれば同様に実施することができる。
【0075】
(実施の形態5)
さらにここで、上記実施の形態で示した動き推定方法および動画像符号化方法の応用例とそれを用いたシステムを説明する。
図13は、コンテンツ配信サービスを実現するコンテンツ供給システムex100の全体構成を示すブロック図である。通信サービスの提供エリアを所望の大きさに分割し、各セル内にそれぞれ固定無線局である基地局ex107〜ex110が設置されている。
【0076】
このコンテンツ供給システムex100は、例えば、インターネットex101にインターネットサービスプロバイダex102および電話網ex104、および基地局ex107〜ex110を介して、コンピュータex111、PDA(personal digital assistant)ex112、カメラex113、携帯電話ex114、カメラ付きの携帯電話ex115などの各機器が接続される。
【0077】
しかし、コンテンツ供給システムex100は図13のような組合せに限定されず、いずれかを組み合わせて接続するようにしてもよい。また、固定無線局である基地局ex107〜ex110を介さずに、各機器が電話網ex104に直接接続されてもよい。
【0078】
カメラex113はデジタルビデオカメラ等の動画撮影が可能な機器である。また、携帯電話は、PDC(Personal Digital Communications)方式、CDMA(Code Division Multiple Access)方式、W−CDMA(Wideband−Code Division Multiple Access)方式、若しくはGSM(Global System for Mobile Communications)方式の携帯電話機、またはPHS(Personal Handyphone System)等であり、いずれでも構わない。
【0079】
また、ストリーミングサーバex103は、カメラex113から基地局ex109、電話網ex104を通じて接続されており、カメラex113を用いてユーザが送信する符号化処理されたデータに基づいたライブ配信等が可能になる。撮影したデータの符号化処理はカメラex113で行っても、データの送信処理をするサーバ等で行ってもよい。また、カメラex116で撮影した動画データはコンピュータex111を介してストリーミングサーバex103に送信されてもよい。カメラex116はデジタルカメラ等の静止画、動画が撮影可能な機器である。この場合、動画データの符号化はカメラex116で行ってもコンピュータex111で行ってもどちらでもよい。また、符号化処理はコンピュータex111やカメラex116が有するLSIex117において処理することになる。なお、画像符号化・復号化用のソフトウェアをコンピュータex111等で読み取り可能な記録媒体である何らかの蓄積メディア(CD−ROM、フレキシブルディスク、ハードディスクなど)に組み込んでもよい。さらに、カメラ付きの携帯電話ex115で動画データを送信してもよい。このときの動画データは携帯電話ex115が有するLSIで符号化処理されたデータである。
【0080】
このコンテンツ供給システムex100では、ユーザがカメラex113、カメラex116等で撮影しているコンテンツ(例えば、音楽ライブを撮影した映像等)を上記実施の形態同様に符号化処理してストリーミングサーバex103に送信する一方で、ストリーミングサーバex103は要求のあったクライアントに対して上記コンテンツデータをストリーム配信する。クライアントとしては、上記符号化処理されたデータを復号化することが可能な、コンピュータex111、PDAex112、カメラex113、携帯電話ex114等がある。このようにすることでコンテンツ供給システムex100は、符号化されたデータをクライアントにおいて受信して再生することができ、さらにクライアントにおいてリアルタイムで受信して復号化し、再生することにより、個人放送をも実現可能になるシステムである。
【0081】
このシステムを構成する各機器の符号化、復号化には上記各実施の形態で示した画像符号化装置あるいは画像復号化装置を用いるようにすればよい。
その一例として携帯電話について説明する。
図14は、上記実施の形態で説明した動き推定方法および動画像符号化方法を用いた携帯電話ex115を示す図である。携帯電話ex115は、基地局ex110との間で電波を送受信するためのアンテナex201、CCDカメラ等の映像、静止画を撮ることが可能なカメラ部ex203、カメラ部ex203で撮影した映像、アンテナex201で受信した映像等が復号化されたデータを表示する液晶ディスプレイ等の表示部ex202、操作キーex204群から構成される本体部、音声出力をするためのスピーカ等の音声出力部ex208、音声入力をするためのマイク等の音声入力部ex205、撮影した動画もしくは静止画のデータ、受信したメールのデータ、動画のデータもしくは静止画のデータ等、符号化されたデータまたは復号化されたデータを保存するための記録メディアex207、携帯電話ex115に記録メディアex207を装着可能とするためのスロット部ex206を有している。記録メディアex207はSDカード等のプラスチックケース内に電気的に書換えや消去が可能な不揮発性メモリであるEEPROM(Electrically Erasable and Programmable Read Only Memory)の一種であるフラッシュメモリ素子を格納したものである。
【0082】
さらに、携帯電話ex115について図14を用いて説明する。携帯電話ex115は表示部ex202及び操作キーex204を備えた本体部の各部を統括的に制御するようになされた主制御部ex311に対して、電源回路部ex310、操作入力制御部ex304、画像符号化部ex312、カメラインターフェース部ex303、LCD(Liquid Crystal Display)制御部ex302、画像復号化部ex309、多重分離部ex308、記録再生部ex307、変復調回路部ex306及び音声処理部ex305が同期バスex313を介して互いに接続されている。
【0083】
電源回路部ex310は、ユーザの操作により終話及び電源キーがオン状態にされると、バッテリパックから各部に対して電力を供給することによりカメラ付ディジタル携帯電話ex115を動作可能な状態に起動する。
携帯電話ex115は、CPU、ROM及びRAM等でなる主制御部ex311の制御に基づいて、音声通話モード時に音声入力部ex205で集音した音声信号を音声処理部ex305によってディジタル音声データに変換し、これを変復調回路部ex306でスペクトラム拡散処理し、送受信回路部ex301でディジタルアナログ変換処理及び周波数変換処理を施した後にアンテナex201を介して送信する。また携帯電話機ex115は、音声通話モード時にアンテナex201で受信した受信データを増幅して周波数変換処理及びアナログディジタル変換処理を施し、変復調回路部ex306でスペクトラム逆拡散処理し、音声処理部ex305によってアナログ音声データに変換した後、これを音声出力部ex208を介して出力する。
【0084】
さらに、データ通信モード時に電子メールを送信する場合、本体部の操作キーex204の操作によって入力された電子メールのテキストデータは操作入力制御部ex304を介して主制御部ex311に送出される。主制御部ex311は、テキストデータを変復調回路部ex306でスペクトラム拡散処理し、送受信回路部ex301でディジタルアナログ変換処理及び周波数変換処理を施した後にアンテナex201を介して基地局ex110へ送信する。
【0085】
データ通信モード時に画像データを送信する場合、カメラ部ex203で撮像された画像データをカメラインターフェース部ex303を介して画像符号化部ex312に供給する。また、画像データを送信しない場合には、カメラ部ex203で撮像した画像データをカメラインターフェース部ex303及びLCD制御部ex302を介して表示部ex202に直接表示することも可能である。
【0086】
画像符号化部ex312は、本願発明で説明した画像符号化装置を備えた構成であり、カメラ部ex203から供給された画像データを上記実施の形態で示した画像符号化装置に用いた符号化方法によって圧縮符号化することにより符号化画像データに変換し、これを多重分離部ex308に送出する。また、このとき同時に携帯電話機ex115は、カメラ部ex203で撮像中に音声入力部ex205で集音した音声を音声処理部ex305を介してディジタルの音声データとして多重分離部ex308に送出する。
【0087】
多重分離部ex308は、画像符号化部ex312から供給された符号化画像データと音声処理部ex305から供給された音声データとを所定の方式で多重化し、その結果得られる多重化データを変復調回路部ex306でスペクトラム拡散処理し、送受信回路部ex301でディジタルアナログ変換処理及び周波数変換処理を施した後にアンテナex201を介して送信する。
【0088】
データ通信モード時にホームページ等にリンクされた動画像ファイルのデータを受信する場合、アンテナex201を介して基地局ex110から受信した受信データを変復調回路部ex306でスペクトラム逆拡散処理し、その結果得られる多重化データを多重分離部ex308に送出する。
【0089】
また、アンテナex201を介して受信された多重化データを復号化するには、多重分離部ex308は、多重化データを分離することにより画像データのビットストリームと音声データのビットストリームとに分け、同期バスex313を介して当該符号化画像データを画像復号化部ex309に供給すると共に当該音声データを音声処理部ex305に供給する。
【0090】
次に、画像復号化部ex309は、本願発明で説明した画像復号化装置を備えた構成であり、画像データのビットストリームを上記実施の形態で示した符号化方法に対応した復号化方法で復号することにより再生動画像データを生成し、これをLCD制御部ex302を介して表示部ex202に供給し、これにより、例えばホームページにリンクされた動画像ファイルに含まれる動画データが表示される。このとき同時に音声処理部ex305は、音声データをアナログ音声データに変換した後、これを音声出力部ex208に供給し、これにより、例えばホームページにリンクされた動画像ファイルに含まる音声データが再生される。
【0091】
なお、上記システムの例に限られず、最近は衛星、地上波によるディジタル放送が話題となっており、図16に示すようにディジタル放送用システムにも上記実施の形態の少なくとも画像符号化装置または画像復号化装置のいずれかを組み込むことができる。具体的には、放送局ex409では映像情報のビットストリームが電波を介して通信または放送衛星ex410に伝送される。これを受けた放送衛星ex410は、放送用の電波を発信し、この電波を衛星放送受信設備をもつ家庭のアンテナex406で受信し、テレビ(受信機)ex401またはセットトップボックス(STB)ex407などの装置によりビットストリームを復号化してこれを再生する。また、記録媒体であるCDやDVD等の蓄積メディアex402に記録したビットストリームを読み取り、復号化する再生装置ex403にも上記実施の形態で示した画像復号化装置を実装することが可能である。この場合、再生された映像信号はモニタex404に表示される。また、ケーブルテレビ用のケーブルex405または衛星/地上波放送のアンテナex406に接続されたセットトップボックスex407内に画像復号化装置を実装し、これをテレビのモニタex408で再生する構成も考えられる。このときセットトップボックスではなく、テレビ内に画像復号化装置を組み込んでも良い。また、アンテナex411を有する車ex412で衛星ex410からまたは基地局ex107等から信号を受信し、車ex412が有するカーナビゲーションex413等の表示装置に動画を再生することも可能である。
【0092】
更に、画像信号を上記実施の形態で示した画像符号化装置で符号化し、記録媒体に記録することもできる。具体例としては、DVDディスクex421に画像信号を記録するDVDレコーダや、ハードディスクに記録するディスクレコーダなどのレコーダex420がある。更にSDカードex422に記録することもできる。レコーダex420が上記実施の形態で示した画像復号化装置を備えていれば、DVDディスクex421やSDカードex422に記録した画像信号を再生し、モニタex408で表示することができる。
【0093】
なお、カーナビゲーションex413の構成は例えば図15に示す構成のうち、カメラ部ex203とカメラインターフェース部ex303、画像符号化部ex312を除いた構成が考えられ、同様なことがコンピュータex111やテレビ(受信機)ex401等でも考えられる。
【0094】
また、上記携帯電話ex114等の端末は、符号化器・復号化器を両方持つ送受信型の端末の他に、符号化器のみの送信端末、復号化器のみの受信端末の3通りの実装形式が考えられる。
このように、上記実施の形態で示した動き推定方法および動画像符号化方法を上述したいずれの機器・システムに用いることは可能であり、そうすることで、上記実施の形態で説明した効果を得ることができる。
【0095】
また、本発明はかかる上記実施形態に限定されるものではなく、本発明の範囲を逸脱することなく種々の変形または修正が可能である。
【0096】
【発明の効果】
以上の様に、本発明の動き推定方法および動画像符号化方法の第1の発明では、画像中に代表点を設定し、各代表点の動きベクトルを求める際に、小さな探索範囲を設定し、(数式1)で示す評価関数値が最小となる位置を指す動きベクトルに更新する。この処理を動きベクトルが更新される代表点の個数が所定値以下となるまで繰り返し、最終的な動きベクトルを決定する。ここで、評価関数は、現ピクチャの画素ブロックと、参照ピクチャの画素ブロックの画素値で求めた距離の指標と、注目代表点の動きベクトルとその隣接代表点との動きベクトルの距離の指標の重み付け和である。
【0097】
したがって、本発明の動き推定方法および動画像符号化方法の第1の発明を用いることにより、現ピクチャの画素ブロックと、参照ピクチャの画素ブロックの画素値で求めた距離が小さく、かつ隣接代表点の動きベクトルとの距離も小さい動きベクトルを得ることができる。すなわち、他の代表点の動きも考慮することができるため、誤った動きベクトルを推定する可能性が小さくなり、これにより隣接代表点と大きく異なる動きベクトルが求められる可能性が非常に小さくなり、領域中の画素の動きベクトルを正確に得ることができるため、例えば第2の従来方法等と比較して、予測画像(動き補償画像)の画質の向上、すなわち符号化画像の画質の向上を図ることができる。また、例えば第1の従来方法と比較すると、動き推定の際に領域内の画素毎の動きベクトル(変換パラメータ)を求める必要がないため、処理量の大幅な削減を行うことができる。
【0098】
また、本発明の動き推定方法および動画像符号化方法の第2の発明では、画像中に代表点を設定し、各代表点の動きベクトルを求める際に、小さな探索範囲を設定し、(数式1)で示す評価関数値が最小となる位置を指す動きベクトルに更新する。この処理を動きベクトルが更新される代表点の個数が所定値以下となるまで繰り返し、第1の動きベクトルを決定する。ここで、評価関数は、現ピクチャの画素ブロックと、参照ピクチャの画素ブロックの画素値で求めた距離の指標と、注目代表点の動きベクトルとその隣接代表点との動きベクトルの距離の指標の重み付け和である。したがって、現ピクチャの画素ブロックと、参照ピクチャの画素ブロックの画素値で求めた距離が小さく、かつ隣接代表点の動きベクトルとの距離も小さい動きベクトルを得ることができる。次に、従来のブロックマッチング法を用いて、各代表点の第2の動きベクトルを用いる。そして、第1の動きベクトルと第2の動きベクトルとから所定の判定基準(例えば(数式1)から(数式3))を用いて、動きベクトルの選択を行い、その選択した動きベクトルを初期値として再び動きベクトルの推定を行う。すなわち、第1の動きベクトルでは、他の代表点の動きも考慮しながら、少しずつ動きベクトルの値を変えながら動き推定するため、誤った動きベクトルを推定する可能性が小さい動きベクトルを得ることができる。また、第2の動きベクトルでは、大きな動きに追従した動きベクトルを得ることができる。そして、第1と第2の動きベクトルを選択することにより、第1の動きベクトルの特性と、第2の動きベクトルの特性の長所を兼ね備えた動きベクトルを選択することができる。そして、この選択した動きベクトルを初期値として、再び反復型の動きベクトル推定を行うことにより、更に動きベクトルの精度を高めることができる。
【0099】
このような動作により、本発明の動き推定方法および動画像符号化方法の第2の発明を用いることにより、隣接代表点と大きく異なる動きベクトルが求められる可能性が非常に小さくなり、かつ大きな動きに追従した動きベクトルを得ることができ、それにより領域中の画素の動きベクトルを正確に得ることができ、予測画像(動き補償画像)の画質の向上、すなわち符号化画像の画質の向上を図ることができる。
【0100】
また、本発明の動き推定方法および動画像符号化方法の第3の発明では、画像中に代表点を設定し、各代表点の動きベクトルを求める。そして、その代表点の動きベクトルが有効であるか、無効であるかを判定する。この判定方法としては例えば、隣接する代表点により形成される多角形の面積と、動きベクトルにより代表点に対応する対応点が形成する多角形の面積比が、所定の範囲内であれば有効であるとする方法や、隣接する代表点により形成される多角形内での各代表点の位置関係と、動きベクトルにより代表点に対応する対応点が形成する多角形内での各対応点の位置関係とが同じであれば有効であるとする方法や、代表点に対応する対応点から逆方向に動き推定を行い、それにより得られる対応点と元の代表点との距離が所定値以下であれば有効であると判定する方法があり、これらを単独であるいは組み合わせることにより、有効であるか無効であるかを判定する。そして、無効であると判定された代表点の動きベクトルは、有効である隣接する代表点の動きベクトルから補間生成する。
【0101】
このような動作により、本発明の動き推定方法および動画像符号化方法の第3の発明を用いることにより、代表点の動きベクトルが有効であるか、無効であるかを確実に判断することができる。例えば、代表点が無効であるのは、明らかに動き推定が間違っている場合や、隠れなどによって実際には動き推定ができない場合等であり、これらの場合を確実に検出することができる。そして、無効であると判定した動きベクトルを周辺の代表点の動きベクトルから補間生成することにより、予測画像(動き補償画像)の画質の向上、すなわち符号化画像の画質の向上を図ることができる。
【0102】
以上のように、本発明の動き推定方法および動画像符号化方法はその実用的価値が高い。
【図面の簡単な説明】
【図1】本発明の動き検出方法を用いた動画像符号化装置ブロック図(実施の形態1)
【図2】本発明の動き推定方法を説明するための模式図(実施の形態1)
【図3】本発明の動き推定方法を説明するためのフローチャート(実施の形態1)
【図4】本発明の動き推定方法を説明するための模式図(実施の形態1)
【図5】本発明の動き検出方法を用いた動画像符号化装置のブロック図(実施の形態2)
【図6】本発明の動き検出方法を説明するための模式図(実施の形態3)
【図7】本発明の動き検出方法を用いた動画像符号化装置のブロック図(実施の形態3)
【図8】本発明の動き推定方法を説明するためのフローチャート(実施の形態3)
【図9】本発明の動き推定方法を説明するためのフローチャート(実施の形態3)
【図10】本発明の動き検出方法を説明するための模式図(実施の形態3)
【図11】本発明の動き推定方法を説明するためのフローチャート(実施の形態3)
【図12】上記各実施の形態の動き推定方法および動画像符号化方法をコンピュータシステムにより実現するためのプログラムを格納するための記録媒体についての説明図(実施の形態4)
【図13】コンテンツ供給システムの全体構成を示すブロック図(実施の形態5)
【図14】動き推定方法および動画像符号化方法を用いた携帯電話の例(実施の形態5)
【図15】携帯電話のブロック図(実施の形態5)
【図16】ディジタル放送用システムの例(実施の形態5)
【符号の説明】
101 動き推定部
102、104 フレームメモリ
103 反復型動き推定部
105 予測画像生成部
106 予測誤差符号化部
107 可変長符号化部
108 予測誤差復号化部
Claims (16)
- 第1のピクチャ中に代表点を設定する代表点設定ステップと、
前記代表点の第2のピクチャに対する動きベクトルの初期値を設定する初期値設定ステップと、
前記代表点の動きベクトルを所定の範囲内で変更して評価関数を計算し、前記評価関数値に応じて動きベクトルを更新する動き検出ステップと、
所定の代表点に対して前記動き検出ステップによる処理を施し、異なる動きベクトルに更新された代表点の個数が所定値未満であれば処理を終了し、所定値以上であれば再び前記動き検出ステップの処理を実施する制御ステップと、を含むことを特徴とする動き推定方法。 - 前記評価関数は、第1のピクチャ内の前記代表点の周辺の画素集合と、前記動きベクトルにより参照する前記第2のピクチャ内の画素集合との類似度と、前記代表点の動きベクトルと、前記代表点の近傍の代表点の動きベクトルとの類似度との重み付け和により表現されることを特徴とする、請求項1記載の動き推定方法。
- 第1のピクチャ中に代表点を設定する代表点設定ステップと、
前記代表点の第2のピクチャに対する動きベクトルをN(N≧2)種類の方法で検出する第1から第Nの動き検出ステップと、
前記代表点のそれぞれに対して、前記第1から第Nの動き検出ステップにより求められたN個の動きベクトルの中から、評価関数を用いて1つの動きベクトルを選択する動きベクトル選択ステップと、を含むことを特徴とする動き推定方法。 - 前記動き検出ステップには、少なくとも請求項1記載の動き推定方法とブロックマッチング法とを含むことを特徴とする、請求項3記載の動き推定方法。
- 前記動きベクトル選択ステップにより選択した動きベクトルを初期値として、再び動き検出処理を実施することを特徴とする請求項3記載の動き推定方法。
- 前記評価関数は、第1のピクチャ内の前記代表点の周辺の画素集合と、前記動きベクトルにより参照する第2のピクチャ内の画素集合との類似度と、前記代表点の動きベクトルと、前記代表点の近傍の代表点の動きベクトルとの類似度とを用いて表現されることを特徴とする、請求項3記載の動き推定方法。
- 第1のピクチャ中に代表点を設定する代表点設定ステップと、
前記代表点の第2のピクチャに対する動きベクトルを検出する動き検出ステップと、
前記代表点の動きベクトルの有効性を、前記代表点の近傍の代表点の動きベクトルまたは前記第1と第2のピクチャを用いて判定する動きベクトル判定ステップとを含むことを特徴とする動き推定方法。 - さらに前記動きベクトル判定ステップで無効と判断された動きベクトルに対して補正を施す動きベクトル補正ステップを有することを特徴とする、請求項7記載の動き推定方法。
- 前記動きベクトル判定ステップでは、隣接する代表点により形成される第1の多角形の面積と、前記隣接する代表点のそれぞれが動きベクトルにより参照する前記第2のピクチャ中の対応点により形成される第2の多角形の面積との比が、所定の範囲内であれば、前記代表点の動きベクトルを有効と判断することを特徴とする、請求項7記載の動き推定方法。
- 前記動きベクトル判定ステップでは、隣接する代表点により形成される第1の多角形内での前記隣接する代表点の位置関係と、前記隣接する代表点のそれぞれが動きベクトルにより参照する前記第2のピクチャ中の対応点により形成される第2の多角形内での前記対応点の位置関係とが、同じ位置関係であれば、前記代表点の動きベクトルを有効と判断することを特徴とする、請求項7記載の動き推定方法。
- 前記動きベクトル判定ステップでは、代表点が動きベクトルにより参照する前記第2のピクチャ中の第2の対応点から、前記第1のピクチャに対して動き検出処理を行うことにより第1の対応点を求め、前記代表点と前記第1の代表点との距離が所定の値以下であれば、前記代表点の動きベクトルを有効と判断することを特徴とする、請求項7記載の動き推定方法。
- 前記動きベクトル補正ステップでは、隣接する代表点のうち有効な動きベクトルを用いて動きベクトルの補間処理を行うことを特徴とする請求項8記載の動き推定方法。
- 請求項1〜12の何れか1項に記載の動き推定方法により代表点の動きベクトルを検出する動き推定ステップと、
前記代表点以外の画素の動きベクトルを近傍の代表点の動きベクトルから補間生成することにより動き補償を行い予測画像を生成する動き補償ステップと、
前記予測画像を用いて符号化処理を行う符号化ステップとを含むことを特徴とする動画像符号化方法。 - コンピュータにより、請求項1記載の動き推定方法を行うためのプログラムであって、
上記プログラムはコンピュータに、
第1のピクチャ中に代表点を設定する代表点設定ステップと、
前記代表点の第2のピクチャに対する動きベクトルの初期値を設定する初期値設定ステップと、
前記代表点の動きベクトルを所定の範囲内で変更して評価関数を計算し、前記評価関数値に応じて動きベクトルを更新する動き検出ステップと、
所定の代表点に対して前記動き検出ステップによる処理を施し、異なる動きベクトルに更新された代表点の個数が所定値未満であれば処理を終了し、所定値以上であれば再び前記動き検出ステップの処理を実施する制御ステップと、からなる動き推定方法を、行わせるものであることを特徴とするプログラム。 - コンピュータにより、請求項3記載の動き推定方法を行うためのプログラムであって、
上記プログラムはコンピュータに、
第1のピクチャ中に代表点を設定する代表点設定ステップと、
前記代表点の第2のピクチャに対する動きベクトルをN(N≧2)種類の方法で検出する第1から第Nの動き検出ステップと、
前記代表点のそれぞれに対して、前記第1から第Nの動き検出ステップにより求められたN個の動きベクトルの中から、評価関数を用いて1つの動きベクトルを選択する動きベクトル選択ステップと、からなる動き推定方法を、行わせるものであることを特徴とするプログラム。 - コンピュータにより、請求項7記載の動き推定方法を行うためのプログラムであって、
上記プログラムはコンピュータに、
第1のピクチャ中に代表点を設定する代表点設定ステップと、
前記代表点の第2のピクチャに対する動きベクトルを検出する動き検出ステップと、
前記代表点の動きベクトルの有効性を、前記代表点の近傍の代表点の動きベクトルまたは前記第1と第2のピクチャを用いて判定する動きベクトル判定ステップとからなる動き推定方法を、行わせるものであることを特徴とするプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003161319A JP2004364064A (ja) | 2003-06-05 | 2003-06-05 | 動き推定方法および動画像符号化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003161319A JP2004364064A (ja) | 2003-06-05 | 2003-06-05 | 動き推定方法および動画像符号化方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004364064A true JP2004364064A (ja) | 2004-12-24 |
Family
ID=34053806
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003161319A Pending JP2004364064A (ja) | 2003-06-05 | 2003-06-05 | 動き推定方法および動画像符号化方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004364064A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007228371A (ja) * | 2006-02-24 | 2007-09-06 | Kddi Corp | 画像符号化装置 |
-
2003
- 2003-06-05 JP JP2003161319A patent/JP2004364064A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007228371A (ja) * | 2006-02-24 | 2007-09-06 | Kddi Corp | 画像符号化装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101075270B1 (ko) | 움직임 검출 방법 및 동화상 부호화 방법 | |
JP4130783B2 (ja) | 動きベクトル符号化方法および動きベクトル復号化方法 | |
KR100990829B1 (ko) | 동화상 부호화 방법 및 동화상 복호화 방법 | |
KR100985366B1 (ko) | 움직임 보상 방법, 화상 부호화 방법 및 화상 복호화 방법 | |
KR100557911B1 (ko) | 화상 부호화 방법 및 화상 복호화 방법 | |
EP1788817A1 (en) | Decoder, encoder, decoding method and encoding method | |
JP2004096705A (ja) | 動きベクトル符号化方法および動きベクトル復号化方法 | |
JP2008182769A (ja) | 画像符号化方法および画像符号化装置 | |
JP5090552B2 (ja) | 画像復号化方法、画像復号化装置、プログラムおよび記録媒体 | |
EP1401214A1 (en) | Miving picture encoding method and moving picture decoding method | |
JP4313710B2 (ja) | 画像符号化方法および画像復号化方法 | |
JP3878591B2 (ja) | 動画像符号化方法および動画像復号化方法 | |
JP4519676B2 (ja) | 動き検出方法および動画像符号化方法 | |
JP2004364064A (ja) | 動き推定方法および動画像符号化方法 | |
JP2005142986A (ja) | 動画像符号化方法、動画像符号化装置および動画像符号化プログラム | |
JP2004215215A (ja) | 動きベクトル検出方法 | |
JP2004040512A (ja) | 画像符号化方法および画像復号方法 | |
JP3884472B2 (ja) | 動画像符号化方法および動画像復号化方法 | |
JP4406239B2 (ja) | 動き補償方法および動き補償装置 | |
JP2004088731A (ja) | 動きベクトル導出方法、動画像符号化方法、および動画像復号化方法 | |
JP4503959B2 (ja) | 画像符号化方法 |