(57)【要約】【課題】  動き検出を高速に行うことができる動き検出方法および動き検出装置等を提供する。【解決手段】  動きベクトル検出部１０６は、対象ブロックデータtar_imgと９近傍の参照ブロックデータref_imgとの誤差SAD1〜誤差SAD9をそれぞれ計算する誤差計算部２０２と、誤差SAD1〜誤差SAD9の中で誤差が最小となる誤差最小ブロックを決定し、その位置の動きベクトルmvminを出力する誤差最小ブロック決定部２０３と、動き検出を終了するか否かの判定を行う終了判定部２０４と、誤差最小ブロックの位置に応じて、探索中心となる参照ブロックの移動量が２画素以上となるように、次回の探索中心となる参照ブロックを決定する探索中心決定部２０５とを備える。【選択図】        図２
2005278156.tif 000002
【特許請求の範囲】
【請求項１】
動画像を構成するピクチャの動き量を示す動きベクトルをブロック単位で検出する動き検出方法であって、
動き検出を行う対象ピクチャの対象ブロックと、参照ピクチャ中における探索中心となる参照ブロックおよび探索中心となる前記参照ブロックの近傍に位置する参照ブロックとの誤差をそれぞれ計算する誤差計算ステップと、
前記誤差計算ステップにより計算された前記誤差が最小となる参照ブロックを決定する誤差最小ブロック決定ステップと、
動き検出を終了するか否かの判定を行う終了判定ステップと、
前記誤差最小ブロック決定ステップにより決定された前記誤差が最小となる前記参照ブロックの位置に応じて、探索中心となる前記参照ブロックの移動量が２画素以上となるように、次回の探索中心となる参照ブロックを決定し、再度前記誤差計算ステップを実行させる探索中心決定ステップと、
前記終了判定ステップにより動き検出を終了すると判定された場合に、前記誤差最小ブロック決定ステップにより決定された前記参照ブロックの位置を示す動きベクトルを、検出すべき動きベクトルと決定する動きベクトル検出ステップと
を含むことを特徴とする動き検出方法。
【請求項２】
前記終了判定ステップでは、前記誤差最小ブロック決定ステップにより決定された前記参照ブロックの周囲に位置するすべての参照ブロックが、前回および今回の探索中心となる参照ブロックに基づいて、前記誤差計算ステップにより前記誤差が計算されている参照ブロックである、または、前記探索中心決定ステップにより決定された次回の探索中心となる前記参照ブロックが前回の探索中心となる参照ブロックと同じである場合に、動き検出を終了すると判定する
ことを特徴とする請求項１記載の動き検出方法。
【請求項３】
前記近傍に位置する参照ブロックは、前記探索中心となる参照ブロックから水平方向で左右それぞれにｉ画素（ｉ：Ｐ以下の自然数、Ｐ：自然数）移動した参照ブロックと、垂直方向で上下それぞれにｊ画素（ｊ：Ｑ以下の自然数、Ｑ：自然数）移動した参照ブロックと、水平方向で左右それぞれにｉ画素および垂直方向で上下それぞれにｊ画素移動した参照ブロックとであり、
前記誤差計算ステップでは、前記探索中心となる参照ブロックおよび前記近傍に位置する参照ブロックの合計（２Ｐ＋１）×（２Ｑ＋１）の参照ブロックに対する前記誤差を並列に計算する
ことを特徴とする請求項１または請求項２記載の動き検出方法。
【請求項４】
前記探索中心決定ステップでは、前記誤差最小ブロック決定ステップにより決定された前記誤差が最小となる参照ブロックが、前記探索中心となる参照ブロックから水平Ｍ画素（Ｍ：整数）移動した参照ブロックである場合には、前記探索中心となる参照ブロックから水平２Ｍ＋１画素移動した参照ブロックを次回の探索中心となる参照ブロックとして決定する
ことを特徴とする請求項１〜３のいずれか１項に記載の動き検出方法。
【請求項５】
前記探索中心決定ステップでは、前記誤差最小ブロック決定ステップにより決定された前記誤差が最小となる参照ブロックが、前記探索中心となる参照ブロックから垂直Ｎ画素（Ｎ：整数）移動した参照ブロックである場合には、前記探索中心となる参照ブロックから垂直２Ｎ＋１画素移動した参照ブロックを次回の探索中心となる参照ブロックとして決定する
ことを特徴とする請求項１〜３のいずれか１項に記載の動き検出方法。
【請求項６】
前記探索中心決定ステップでは、前記誤差最小ブロック決定ステップにより決定された前記誤差が最小となる参照ブロックが、前記探索中心となる参照ブロックから水平Ｍ画素および垂直Ｎ画素（Ｍ、Ｎ：整数）移動した参照ブロックである場合には、前記探索中心となる参照ブロックから水平２Ｍ画素および垂直２Ｎ画素移動した参照ブロックを次回の探索中心となる参照ブロックとして決定する
ことを特徴とする請求項１〜３のいずれか１項に記載の動き検出方法。
【請求項７】
前記探索中心決定ステップでは、次回の探索中心となる前記参照ブロックおよび次回の探索中心となる前記参照ブロックの近傍に位置する参照ブロックが、所定の探索範囲内に含まれるように次回の探索中心となる参照ブロックを決定する
ことを特徴とする請求項１〜６のいずれか１項に記載の動き検出方法。
【請求項８】
前記動き検出方法は、さらに、
前記誤差計算ステップにおける前記誤差の計算回数を計数するカウントステップを備え、
前記終了判定ステップでは、前記カウントステップにより計数された前記計算回数が所定の回数を超えた場合に、動き検出を終了すると判定する
ことを特徴とする請求項１〜７のいずれか１項に記載の動き検出方法。
【請求項９】
動画像を構成するピクチャをブロック単位で符号化する動画像符号化方法であって、
請求項１〜８のいずれか１項に記載の動き検出方法によって動きベクトルを検出する動きベクトル検出ステップと、
前記動きベクトル検出ステップにより検出された前記動きベクトルに基づいて、前記動画像を符号化する符号化ステップと
を含むことを特徴とする動画像符号化方法。
【請求項１０】
動画像を構成するピクチャの動き量を示す動きベクトルをブロック単位で検出する動き検出装置であって、
動き検出を行う対象ピクチャの対象ブロックと、参照ピクチャ中における探索中心となる参照ブロックおよび探索中心となる前記参照ブロックの近傍に位置する参照ブロックとの誤差をそれぞれ計算する誤差計算手段と、
前記誤差計算手段により計算された前記誤差が最小となる参照ブロックを決定する誤差最小ブロック決定手段と、
動き検出を終了するか否かの判定を行う終了判定手段と、
前記誤差最小ブロック決定手段により決定された前記誤差が最小となる前記参照ブロックの位置に応じて、探索中心となる前記参照ブロックの移動量が２画素以上となるように、次回の探索中心となる参照ブロックを決定し、再度前記誤差計算手段に前記誤差の計算を実行させる探索中心決定手段と、
前記終了判定手段により動き検出を終了すると判定された場合に、前記誤差最小ブロック決定手段により決定された前記参照ブロックの位置を示す動きベクトルを、検出すべき動きベクトルと決定する動きベクトル検出手段と
を備えることを特徴とする動き検出装置。
【請求項１１】
動画像を構成するピクチャの動き量を示す動きベクトルをブロック単位で検出するためのプログラムであって、
請求項１〜８のいずれか１項に記載の動き検出方法に含まれるステップをコンピュータに実行させる
ことを特徴とするプログラム。
【請求項１２】
動画像を構成するピクチャの動き量を示す動きベクトルをブロック単位で検出する集積回路であって、
動き検出を行う対象ピクチャの対象ブロックと、参照ピクチャ中における探索中心となる参照ブロックおよび探索中心となる前記参照ブロックの近傍に位置する参照ブロックとの誤差をそれぞれ計算する誤差計算手段と、
前記誤差計算手段により計算された前記誤差が最小となる参照ブロックを決定する誤差最小ブロック決定手段と、
動き検出を終了するか否かの判定を行う終了判定手段と、
前記誤差最小ブロック決定手段により決定された前記誤差が最小となる前記参照ブロックの位置に応じて、探索中心となる前記参照ブロックの移動量が２画素以上となるように、次回の探索中心となる参照ブロックを決定し、再度前記誤差計算手段に前記誤差の計算を実行させる探索中心決定手段と、
前記終了判定手段により動き検出を終了すると判定された場合に、前記誤差最小ブロック決定手段により決定された前記参照ブロックの位置を示す動きベクトルを、検出すべき動きベクトルと決定する動きベクトル検出手段と
を備えることを特徴とする集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ピクチャ間の相関を利用して効率良く動画像信号を圧縮する画像符号化方法等で用いられる、動き検出方法に関する。
【背景技術】
【０００２】
近年、音声，画像，その他の画素値を統合的に扱うマルチメディア時代を迎え、従来からの情報メディア，つまり新聞，雑誌，テレビ，ラジオ，電話等の情報を人に伝達する手段がマルチメディアの対象として取り上げられるようになってきた。一般に、マルチメディアとは、文字だけでなく、図形、音声、特に画像等を同時に関連づけて表すことをいうが、上記従来の情報メディアをマルチメディアの対象とするには、その情報をディジタル形式にして表すことが必須条件となる。
【０００３】
ところが、上記各情報メディアの持つ情報量をディジタル情報量として見積もってみると、文字の場合１文字当たりの情報量は１〜２バイトであるのに対し、音声の場合１秒当たり64Kbits（電話品質）、さらに動画については１秒当たり100Mbits（現行テレビ受信品質）以上の情報量が必要となり、上記情報メディアでその膨大な情報をディジタル形式でそのまま扱うことは現実的では無い。例えば、テレビ電話は、64Kbit/s〜1.5Mbit/sの伝送速度を持つサービス総合ディジタル網（ISDN : Integrated Services Digital Network）によってすでに実用化されているが、テレビ・カメラの映像をそのままISDNで送ることは不可能である。
【０００４】
そこで、必要となってくるのが情報の圧縮技術であり、例えば、テレビ電話の場合、ITU-T（国際電気通信連合  電気通信標準化部門）で勧告されたH.261やH.263規格の動画圧縮技術が用いられている。また、MPEG-１規格の情報圧縮技術によると、通常の音楽用CD（コンパクト・ディスク）に音声情報とともに画像情報を入れることも可能となる。
【０００５】
ここで、MPEG（Moving Picture Experts Group）とは、ISO/IEC（国際標準化機構  国際電気標準会議）で標準化された動画像信号圧縮の国際規格であり、MPEG-１は、動画像信号を１．５Mbit/sまで、つまりテレビ信号の情報を約１００分の１にまで圧縮する規格である。また、MPEG-１規格では対象とする品質を伝送速度が主として約１．５Mbit/sで実現できる程度の中程度の品質としたことから、さらなる高画質化の要求をみたすべく規格化されたMPEG-２では、動画像信号を２〜１５Mbit/sでＴＶ放送品質を実現する。さらに現状では、MPEG-１，MPEG-２と標準化を進めてきた作業グループ（ISO/IEC JTC1/SC29/WG11） によって、MPEG-１，MPEG-２を上回る圧縮率を達成し、更に物体単位で符号化・復号化・操作を可能とし、マルチメディア時代に必要な新しい機能を実現するMPEG-４が規格化された。MPEG-４では、当初、低ビットレートの符号化方法の標準化を目指して進められたが、現在はインタレース画像も含む高ビットレートも含む、より汎用的な符号化に拡張されている。更に、現在は、ISO/IECとITU-Tが共同でより高圧縮率の次世代画像符号化方式として、MPEG-4 AVCおよびITU H.264 の標準化活動が進んでいる。2002年8月の時点で、次世代画像符号化方式はコミッティー・ドラフト（CD）と呼ばれるものが発行されている。
【０００６】
一般に動画像の符号化では、時間方向および空間方向の冗長性を削減することによって情報量の圧縮を行う。そこで時間的な冗長性の削減を目的とする画面間予測符号化では、前方または後方のピクチャを参照してブロック単位で動きの検出および予測画像の作成を行い、得られた予測画像と符号化対象ピクチャとの差分値に対して符号化を行う。ここで、ピクチャとは1枚の画面を表す用語である。
【０００７】
予測画像を作成せずに画面内予測符号化を行うものをＩピクチャと呼ぶ。また、１枚のピクチャのみを参照し画面間予測符号化を行うものをＰピクチャと呼ぶ。また、同時に２枚のピクチャを参照して画面間予測符号化を行うことのできるものをＢピクチャと呼ぶ。Ｂピクチャは表示時間が前方もしくは後方から任意の組み合わせとして２枚のピクチャを参照することが可能である。
【０００８】
Ｐピクチャ又はＢピクチャの符号化には、動き補償画面間予測符号化が用いられている。動き補償画面間予測符号化とは、画面間予測符号化に動き補償を適用した符号化方式である。動き補償とは、単純に参照ピクチャの画素値から予測するのではなく、ピクチャ内の各部の動き量（以下、これを動きベクトルと呼ぶ）を検出し、当該動き量を考慮した予測を行うことにより予測精度を向上すると共に、データ量を減らす方式である。例えば、符号化対象ピクチャ（以後、対象ピクチャと呼ぶ）の動きベクトルを検出し、その動きベクトルの分だけシフトした予測値と符号化対象ピクチャとの予測残差を符号化することによりデータ量を減している。この方式の場合には、復号化の際に動きベクトルの情報が必要になるため、動きベクトルも符号化されて記録又は伝送される。
【０００９】
動きベクトルはブロック単位で検出されており、具体的には、符号化対象ピクチャ側のブロックを固定しておき、参照ピクチャ側のブロックを探索範囲内で移動させ、対象ブロックと最も似通った参照ブロックの位置を見つけることにより、動きベクトルが検出される。この動きベクトルを探索する処理を、動き検出と呼ぶ。
【００１０】
図１５は動き検出を説明する概略図である。対象ブロックを参照ピクチャの任意の位置のブロックと比較し、最も似通ったブロックの位置を検出する。似通っているかどうかの判断としては、対象ブロックと参照ブロックの比較誤差を使用するのが一般的であり、特に絶対値差分和（SAD：Summed Absolute Difference）がよく用いられる。なお、参照ピクチャ全体の中で参照ブロックを探索すると演算量が膨大となるため、参照ピクチャの中で探索する範囲を絞り込み、その絞り込んだ範囲を探索範囲と呼ぶ。
【００１１】
動き検出は、動画像符号化処理の中で、最も演算量が多い処理として知られており、従来、この動き検出の演算量を削減する方法が多く検討されている。特に、携帯端末などの演算処理能力が低い機器では、演算量が少ない逐次探索方法がよく用いられる（例えば、特許文献１参照。）。
【００１２】
図１６は従来の動き検出方法の探索位置となる参照ブロックおよび探索中心となる参照ブロックの移動について示す概念図である。ここで、丸印は、参照ブロックの左上端画素の位置を示しており、各参照ブロックの位置を簡易的に示している。また、数字は、以下に説明する例における探索中心となる参照ブロックの移動に伴ってSADの計算を行う各参照ブロックの位置を示している。
【００１３】
１）まず探索開始位置Ｘとなる参照ブロックＢａおよびこの参照ブロックＢａから上下左右にそれぞれ１画素ずれた位置（以下、単に上下左右位置という）の参照ブロックＢｂ、Ｂｃ、Ｂｄ、ＢｅについてSADを計算し、例えば参照ブロックＢａ〜参照ブロックＢｅの中で右の参照ブロックＢｃのSADが１番小さければ探索中心を右に移動する。２）次に移動した探索中心となる参照ブロック（ここでは参照ブロックＢｃ）の上下左右位置の参照ブロックについてSADを計算し、右の参照ブロックのSADが小さければ探索中心を右に移動する。３）次に移動した探索中心となる参照ブロックの上下左右位置の参照ブロックについてSADを計算し、右の参照ブロックのSADが小さければ探索中心を右に移動する。４）次に移動した探索中心となる参照ブロックの上下左右位置の参照ブロックについてSADを計算し、下の参照ブロックのSADが小さければ探索中心を下に移動する。５）次に移動した探索中心となる参照ブロックの上下左右位置の参照ブロックについてSADを計算し、下の参照ブロックのSADが小さければ探索中心を下に移動する。６）次に移動した探索中心となる参照ブロックの上下左右位置の参照ブロックについてSADを計算し、右の参照ブロックのSADが小さければ探索中心を右に移動する。７）次に移動した探索中心となる参照ブロックの上下左右位置の参照ブロックについてSADを計算し、右の参照ブロックのSADが小さければ探索中心を右に移動する。８）次に移動した探索中心となる参照ブロックの上下左右位置の参照ブロックについてSADを計算し、下の参照ブロックのSADが小さければ探索中心を下に移動する。９）次に移動した探索中心となる参照ブロックの上下左右位置の参照ブロックについてSADを計算し、探索中心となる参照ブロックのSADが小さければ探索を終了し、探索中心となる参照ブロックの位置ＹをSAD最小の位置、すなわち最適な動きベクトルとする。
【特許文献１】特開２０００−３３３１８４号公報
【発明の開示】
【発明が解決しようとする課題】
【００１４】
しかしながら、このような逐次探索では、１回の探索で高々１画素しか探索中心となる参照ブロックが移動しないため、大きな動きのあるピクチャで動き検出を行うためには探索中心となる参照ブロックの移動を多数回繰り返すことになり、高速な動き検出が実現できなくなる。
【００１５】
そこで、本発明は上記の事情に鑑みてなされたものであり、動き検出を高速に行うことができる動き検出方法および動き検出装置等を提供することを目的とする。
【課題を解決するための手段】
【００１６】
上記目的を達成するため、本発明に係る動き検出方法は、動画像を構成するピクチャの動き量を示す動きベクトルをブロック単位で検出する動き検出方法であって、動き検出を行う対象ピクチャの対象ブロックと、参照ピクチャ中における探索中心となる参照ブロックおよび探索中心となる前記参照ブロックの近傍に位置する参照ブロックとの誤差をそれぞれ計算する誤差計算ステップと、前記誤差計算ステップにより計算された前記誤差が最小となる参照ブロックを決定する誤差最小ブロック決定ステップと、動き検出を終了するか否かの判定を行う終了判定ステップと、前記誤差最小ブロック決定ステップにより決定された前記誤差が最小となる前記参照ブロックの位置に応じて、探索中心となる前記参照ブロックの移動量が２画素以上となるように、次回の探索中心となる参照ブロックを決定し、再度前記誤差計算ステップを実行させる探索中心決定ステップと、前記終了判定ステップにより動き検出を終了すると判定された場合に、前記誤差最小ブロック決定ステップにより決定された前記参照ブロックの位置を示す動きベクトルを、求めるべき動きベクトルと決定する動きベクトル検出ステップとを含むことを特徴とする。
【００１７】
ここで、前記終了判定ステップでは、前記誤差最小ブロック決定ステップにより決定された前記参照ブロックの周囲に位置するすべての参照ブロックが、前回および今回の探索中心となる参照ブロックに基づいて、前記誤差計算ステップにより前記誤差が計算されている参照ブロックである、または、前記探索中心決定ステップにより決定された次回の探索中心となる前記参照ブロックが前回の探索中心となる参照ブロックと同じである場合に、動き検出を終了すると判定することが好ましい。
【００１８】
また、前記近傍に位置する参照ブロックは、前記探索中心となる参照ブロックから水平方向で左右それぞれにｉ画素（ｉ：Ｐ以下の自然数、Ｐ：自然数）移動した参照ブロックと、垂直方向で上下それぞれにｊ画素（ｊ：Ｑ以下の自然数、Ｑ：自然数）移動した参照ブロックと、水平方向で左右それぞれにｉ画素および垂直方向で上下それぞれにｊ画素移動した参照ブロックとであり、前記誤差計算ステップでは、前記探索中心となる参照ブロックおよび前記近傍に位置する参照ブロックの合計（２Ｐ＋１）×（２Ｑ＋１）の参照ブロックに対する前記誤差を並列に計算してもよい。
【００１９】
これによって、探索中心となる参照ブロックの移動回数を削減することができるので、高速な動き検出が可能になり、例えば対象ブロックが大きな動きであっても所定の時間内で動き検出を行うことができる。また、探索中心となる参照ブロックおよび探索中心となる前記参照ブロックの近傍に位置する参照ブロックとに関して誤差計算を行っているので、探索中心となる参照ブロックの移動量が２画素以上となるように、次回の探索中心となる参照ブロックを決定しても、誤差計算が行われずに飛ばされる参照ブロックが発生することもない。
【００２０】
なお、（２Ｐ＋１）×（２Ｑ＋１）個の参照ブロックに対して誤差を並列に計算することになるので、従来と比べて１回の探索中心となる参照ブロックの移動に伴う演算量は多くなる。しかしながら、逐次探索で必要な時間は、画素値を読み出すための時間と誤差計算の時間であり、後者は演算器の個数を増加することで削減できるが、前者は削減することができない。すなわち、画素値を読み出すための時間が逐次探索の探索中心の移動にかかる時間のボトルネックとなり、所定の処理時間で大きな動きに追従するためには、本発明の構成が有益なことがわかる。
【００２１】
なお、本発明は、このような動き検出方法として実現することができるだけでなく、このような動き検出方法に含まれるステップを手段とする動き検出装置として実現したり、そのような動き検出方法を行う動画像符号化方法として実現したり、それらのステップをコンピュータに実行させるプログラムとして実現したりすることもできる。そして、そのようなプログラムは、ＣＤ−ＲＯＭ等の記録媒体やインターネット等の伝送媒体を介して配信することができるのは言うまでもない。
【発明の効果】
【００２２】
以上のように、本発明に係る動き検出方法によれば、探索中心となる参照ブロックの移動回数を削減することができ、高速な動き検出が可能になる。よって、例えば対象ブロックが大きな動きであっても所定の時間内で動き検出を行うことができることから、その実用的価値が高い。
【発明を実施するための最良の形態】
【００２３】
以下、本発明の各実施の形態について、それぞれ図面を参照しながら説明する。
【００２４】
（実施の形態１）
図１は、本発明の実施の形態１に係る動き検出方法を用いた動画像符号化装置の構成を示すブロック図である。
【００２５】
動画像符号化装置は、ピクチャメモリ１０１、予測残差符号化部１０２、符号列生成部１０３、予測残差復号化部１０４、ピクチャメモリ１０５、動きベクトル検出部１０６、動き補償符号化部１０７、差分演算部１０８、加算演算部１０９、およびスイッチ１１０、１１１を備える。
【００２６】
ピクチャメモリ１０１は、表示時間順にピクチャ単位で入力された動画像を格納する。
動き補償符号化部１０７は、動きベクトル検出部１０６で検出された動きベクトルを用いてブロックの符号化モードを決定し、この符号化モードに基づいて予測画像データ（予測画素値）を生成する。例えば、２枚の参照ピクチャを用いたピクチャ間予測符号化モードの場合には、動き補償符号化部１０７は、動きベクトル検出部１０６で検出された動きベクトルを用いて２枚の参照ピクチャから２つの参照ブロックの画素値を求め、予測画像データを生成する。
【００２７】
差分演算部１０８は、ピクチャメモリ１０１より読み出された画像データと、動き補償符号化部１０７より入力された予測画像データとの差分を演算し、予測残差画像データを生成する。
【００２８】
予測残差符号化部１０２は、入力された予測残差画像データに対して周波数変換や量子化等の符号化処理を行い、符号化データを生成する。符号列生成部１０３は、入力された符号化データに対して可変長符号化等を行い、さらに動き補償符号化部１０７から入力された動きベクトルの情報、および符号化モードの情報等を付加することにより符号列を生成する。
【００２９】
予測残差復号化部１０４は、入力された符号化データに対して逆量子化や逆周波数変換等の復号化処理を行い、復号化差分画像データを生成する。加算演算部１０９は、予測残差復号化部１０４より入力された復号化差分画像データと、動き補償符号化部１０７より入力された予測画像データとを加算し、復号化画像データを生成する。ピクチャメモリ１０５は、生成された復号化画像データを格納する。
【００３０】
動きベクトル検出部１０６は、符号化済みの復号化画像データを参照ピクチャとして用いて、そのピクチャ内の探索領域において、入力された対象ブロックに最も近い画像領域の位置への動き量を示す動きベクトルの検出を行う。
【００３１】
図２は、動きベクトル検出部１０６の構成を示すブロック図である。
動きベクトル検出部１０６は、ブロックメモリ２０１、誤差計算部２０２、誤差最小ブロック決定部２０３、終了判定部２０４、探索中心決定部２０５、およびスイッチ２０６を備えている。
【００３２】
ブロックメモリ２０１は、入力される対象ピクチャVinをブロック単位に格納する。
誤差計算部２０２は、第１誤差計算部２０２ａ、第２誤差計算部２０２ｂ、第３誤差計算部２０２ｃ、…第９誤差計算部２０２ｉを有しており、ブロックメモリ２０１から入力される対象ブロックデータtar_imgと、ピクチャメモリ１０５から入力される９近傍の参照ブロックデータref_imga、参照ブロックデータref_imgb、参照ブロックデータref_imgc、…参照ブロックデータref_imgiとの誤差SAD1、誤差SAD2、誤差SAD3、…誤差SAD9をそれぞれ計算する。なお、本実施の形態では、探索中心となる参照ブロックおよびその周囲に上下左右ななめに１画素ずつずれた位置に位置する８つの参照ブロックの合計９つの参照ブロックを並列に計算を行っている。
【００３３】
誤差最小ブロック決定部２０３は、誤差計算部２０２により計算された誤差SAD1、誤差SAD2、誤差SAD3、…誤差SAD9の中で誤差が最小となる参照ブロック（以下、誤差最小ブロックという）を決定し、その位置の対象ブロックに対する動き量を示す動きベクトルmvminを出力する。
【００３４】
探索中心決定部２０５は、誤差最小ブロック決定部２０３により決定された誤差最小ブロックの位置に応じて、探索中心となる参照ブロックの移動量が２画素以上となるように、次回の探索中心となる参照ブロックを決定する。
【００３５】
図３は、本発明に係る動き検出方法の探索位置となる参照ブロックおよび探索中心となる参照ブロックの移動について示す概念図であり、（ａ）誤差最小ブロックが右中央の場合であり、（ｂ）誤差最小ブロックが右上の場合である。図４は、同様に探索位置となる参照ブロックおよび探索中心となる参照ブロックの移動について示す概念図であり、（ａ）誤差最小ブロックが右中央で、かつ探索範囲の境界がある場合であり、（ｂ）（ｃ）誤差最小ブロックが右上で、かつ探索範囲の境界がある場合である。ここで、丸印は、図１５と同様に参照ブロックの左上端画素の位置を示しており、各参照ブロックの位置を簡易的に示している。
【００３６】
例えば、誤差最小ブロックが図３（ａ）に示すように右中央の場合には、探索中心決定部２０５は、探索中心となる参照ブロックを右に３画素移動する。また、誤差最小ブロックが例えば図３（ｂ）に示すように右上端の場合には、探索中心となる参照ブロックを右に２画素、上に２画素移動する。
【００３７】
本実施の形態では、探索中心決定部２０５は、このような決定方法を例えば図７（ａ）に示すような変換表として保持しており、この変換表を参照して次回の探索中心となる参照ブロックを決定する。この変換表は、図７（ａ）に示すように誤差最小ブロックの動きベクトルmvminと今回の探索中心となる参照ブロックの動きベクトルmvcenterとの差分と、次回の探索中心となる参照ブロックの動きベクトルmvcenter（今回の探索中心となる参照ブロックの動きベクトルmvcenter＋この動きベクトルmvcenterからの移動量）とを対応付けている。なお、この変換表は、少なくとも上記差分と上記移動量とを対応付けていればよい。
【００３８】
さらに、探索中心決定部２０５は、次回の探索中心となる参照ブロックを決定する際、次回の探索中心となる参照ブロックが所定の探索範囲内に含まれるように決定する。
【００３９】
例えば、誤差最小ブロックが図４（ａ）に示すように右中央で、かつ探索範囲の境界が２画素右にずれた位置にある場合には、探索中心決定部２０５は、探索中心となる参照ブロックを右に３画素移動した後、９つの参照ブロックの探索位置が全て探索範囲に収まるように探索中心となる参照ブロックを左に1画素移動する。従って、最終的には探索中心は右に２画素移動することになる。なお、図４における探索範囲の境界Ｗは、参照ブロックの左上端の画素を図４で示した位置にした場合にその参照ブロックが探索範囲を超えるかどうかを示したものである。
【００４０】
また、誤差最小ブロックが例えば図４（ｂ）に示すように右上端で、かつ探索範囲の境界が１画素右にずれた位置にある場合には、探索中心決定部２０５は、探索中心となる参照ブロックを右に２画素、上に２画素移動した後、９つの参照ブロックの探索位置が全て探索範囲に収まるように探索中心となる参照ブロックを左に1画素移動する。従って、最終的には探索中心は右に１画素、上に２画素移動することになる。
【００４１】
また、誤差最小ブロックが例えば図４（ｃ）に示すように右上端で、かつ現在の探索対象となる参照ブロックが探索範囲の境界である場合には、探索中心決定部２０５は、探索中心となる参照ブロックを右に２画素、上に２画素移動した後、９つの参照ブロックの探索位置が全て探索範囲に収まるように探索中心となる参照ブロックを左に２画素移動する。従って、最終的には探索中心は上に２画素移動することになる。
【００４２】
終了判定部２０４は、動き検出を終了するか否かの判定を行い、動き検出を終了する場合にはスイッチ２０６をＯＮに、動き検出を終了しない場合にはスイッチ２０６をＯＦＦに制御する。スイッチ２０６がＯＮの状態である場合に、誤差最小ブロック決定部２０３から出力された動きベクトルmvminが、動きベクトル検出部１０６が検出した動きベクトルMVoutとして出力される。
【００４３】
終了判定部２０４は、誤差最小ブロックの周囲に位置するすべての参照ブロックが、前回および今回の誤差計算において誤差が計算されている参照ブロックであるか、または、探索中心決定部２０５により決定された次回の探索中心となる参照ブロックが前回の探索中心となる参照ブロックと同じである場合に、動き検出を終了すると判定する。
【００４４】
図５は、本発明に係る動き検出方法の動き検出を終了する場合について示す概念図であり、（ａ）前回の誤差計算における誤差最小ブロックが右中央の場合であり、（ｂ）前回の誤差計算における誤差最小ブロックが右上の場合である。
【００４５】
終了判定部２０４は、例えば図５（ａ）に示すように前回の誤差計算における誤差最小ブロックが右中央の参照ブロックであり、今回の誤差計算における誤差最小ブロックが今回の探索中心または左中央となる参照ブロックである場合には、動き検出を終了すると判定を行う。また、例えば図５（ｂ）に示すように前回の誤差計算における誤差最小ブロックが右上端の参照ブロックであり、今回の誤差計算における誤差最小ブロックが今回の探索中心となる参照ブロックである場合には、動き検出を終了すると判定を行う。
【００４６】
次に、上記のように構成された動画像符号化装置の動きベクトル検出部１０６の動作について説明する。
【００４７】
図６（ａ）は動き検出を行う際の動作の流れを示すフローチャートであり、図６（ｂ）はこの動作中の次回の探索中心となる参照ブロックの決定処理の動作の流れを示すフローチャートである。
【００４８】
まず、最小誤差SADminを∞に初期化し、探索中心となる参照ブロックの初期値mvPredを探索中心mvcenterに代入する（ステップａ１）。次に、探索中心となる参照ブロックおよびその周囲に位置する参照ブロックであるＮ個の参照ブロックについて対象ブロックとの誤差計算を行う（ステップａ２）。本実施の形態では、上記のように９個の参照ブロックについて対象ブロックとの誤差計算を行う。すなわち、誤差計算部２０２は、ブロックメモリ２０１から入力される対象ブロックデータtar_imgと、ピクチャメモリ１０５から入力される探索中心となる参照ブロックおよびその周囲に位置する参照ブロックの参照ブロックデータref_imga、参照ブロックデータref_imgb、参照ブロックデータref_imgc、…参照ブロックデータref_imgiとの誤差SAD1、誤差SAD2、誤差SAD3、…誤差SAD9をそれぞれ計算する。
【００４９】
次に、誤差最小ブロック決定部２０３は、誤差計算部２０２により計算された誤差SAD1、誤差SAD2、誤差SAD3、…誤差SAD9、および前回決定された最小誤差SADmin（初回の最小誤差SADminは∞）の中で誤差が最小となる誤差最小ブロックを決定し、その誤差SADcを最小誤差SADminとし、その位置の対象ブロックに対する動き量を示す動きベクトルmvcを動きベクトルmvminとして出力する（ステップａ３）。
【００５０】
次に、終了判定部２０４は、誤差最小ブロックの周囲に位置するすべての参照ブロックが、前回および今回の誤差計算において誤差が計算されている参照ブロックであるか否かを判定する（ステップａ４）。この判定の結果、誤差最小ブロックの周囲に位置するすべての参照ブロックが、前回および今回の誤差計算において誤差が計算されている参照ブロックである場合（ステップａ４でＹＥＳ）には、動き検出の処理を終了し、誤差最小ブロックの動きベクトルmvminを動きベクトル検出部１０６が検出した動きベクトルMVoutとして出力する（ステップａ７）。
【００５１】
一方、上記判定の結果、誤差最小ブロックの周囲に位置するすべての参照ブロックが、前回および今回の誤差計算において誤差が計算されている参照ブロックでない場合（ステップａ４でＮＯ）には、探索中心決定部２０５は、次回の探索中心となる参照ブロックの決定処理を行う（ステップａ５）。次に、終了判定部２０４は、探索中心決定部２０５により決定された次回の探索中心となる参照ブロックが前回の探索中心となる参照ブロックと同じであるか否かを判定する（ステップａ６）。この判定の結果、次回の探索中心となる参照ブロックが前回の探索中心となる参照ブロックと同じである場合（ステップａ６でＹＥＳ）には、動き検出の処理を終了し、誤差最小ブロックの動きベクトルmvminを動きベクトル検出部１０６が検出した動きベクトルMVoutとして出力する（ステップａ７）。
【００５２】
一方、上記判定の結果、次回の探索中心となる参照ブロックが前回の探索中心となる参照ブロックと同じでない場合（ステップａ６でＮＯ）には、誤差計算および誤差最小ブロックの決定処理（ステップａ２）から終了判定処理（ステップａ６）を繰り返す。
【００５３】
次に、次回の探索中心となる参照ブロックの決定処理（ステップａ５）について、詳しく説明する。
【００５４】
探索中心決定部２０５は、誤差最小ブロック決定部２０３により決定された誤差最小ブロックの位置に応じて、次回の探索中心となる参照ブロックを決定する（ステップｂ１）。すなわち、探索中心決定部２０５は、現時点の誤差最小ブロックの動きベクトルmvminと今回の探索中心となる参照ブロックの動きベクトルmvcenterとから図７（ａ）に示すような変換表を参照して次回の探索中心となる参照ブロックを決定する。
【００５５】
次に、探索中心決定部２０５は、決定した次回の探索中心となる参照ブロックの動きベクトルmvcenterの水平成分が探索範囲内に収まるように、この動きベクトルmvcenterの水平成分の値の丸め処理を行う（ステップｂ２）。次に、探索中心決定部２０５は、決定した次回の探索中心となる参照ブロックの動きベクトルmvcenterの垂直成分が探索範囲内に収まるように、この動きベクトルmvcenterの垂直成分の値の丸め処理を行う（ステップｂ３）。
【００５６】
以上のように、探索中心となる参照ブロックおよびその周囲に上下左右ななめに１画素ずつずれた位置に位置する８つの参照ブロックの合計９つの参照ブロックを並列に計算を行って誤差最小ブロックを求め、この誤差最小ブロックの位置に応じて、探索中心となる参照ブロックの移動量が２画素以上となるように、次回の探索中心となる参照ブロックを決定しているので、探索中心となる参照ブロックの移動回数を削減することができ、高速な動き検出が可能になる。よって、例えば対象ブロックが大きな動きであっても所定の時間内で動き検出を行うことができる。
【００５７】
なお、本実施の形態では、誤差計算部２０２は、誤差の計算を探索中心となる参照ブロックとその周囲に上下左右ななめに１画素ずつずれた位置に位置する８つの参照ブロックを並列に計算を行っているが、これに限られるものではない。例えば、誤差計算部２０２は、探索中心となる参照ブロック、およびその周囲に上下左右ななめに１画素および２画素ずつずれた位置に位置する２４の参照ブロックで合計２５の参照ブロックを並列に計算を行う構成としても構わない。
【００５８】
この場合、探索中心決定部２０５は、誤差最小ブロックが例えば図３（ｃ）に示すように右中央の場合には、探索中心となる参照ブロックを右に５画素移動する。また、誤差が最小となる参照ブロックが例えば図３（ｄ）に示すように右上から２つ目の参照ブロックの場合には、探索中心となる参照ブロックを右に５画素、上に１画素移動する。また、誤差最小ブロックが例えば図３（ｅ）に示すように右上端の場合には、探索中心となる参照ブロックを右に４画素、上に４画素移動する。すなわち、探索中心決定部２０５は、例えば図７（ｂ）に示すような変換表を保持すればよい。
【００５９】
また、終了判定部２０４は、例えば図５（ｃ）に示すように前回の誤差計算における誤差最小ブロックが右中央の参照ブロックであり、今回の誤差計算における誤差最小ブロックが今回と前回の誤差計算の対象の参照ブロックの端に位置しない参照ブロックである場合には、動き検出を終了すると判定を行う。また、例えば図５（ｄ）に示すように前回の誤差計算における誤差最小ブロックが右上から２つ目の参照ブロックであり、今回の誤差計算における誤差最小ブロックが今回と前回の誤差計算の対象の参照ブロックの端に位置しない参照ブロックである場合には、動き検出を終了すると判定を行う。また、例えば図５（ｅ）に示すように前回の誤差計算における誤差最小ブロックが右上端の参照ブロックであり、今回の誤差計算における誤差最小ブロックが今回の誤差計算の対象の参照ブロックの端に位置しない参照ブロックである場合には、動き検出を終了すると判定を行う。
【００６０】
また、本実施の形態では、誤差計算部２０２が第１誤差計算部２０２ａ、第２誤差計算部２０２ｂ、第３誤差計算部２０２ｃ、…第９誤差計算部２０２ｉを有し、探索中心となる参照ブロックとその周囲に位置する参照ブロックに関する誤差を並列に計算できる構成としているが、これに限られるものではない。ソフトウェアとして実装することも可能であり、例えば演算器を複数備えたプロセッサ等では有効である。
【００６１】
（実施の形態２）
上記実施の形態１では、終了判定部２０４が動き検出処理の終了を判定しているが、本実施の形態では、終了判定部２０４の終了判定に加えてカウンタを用いて動き検出処理の終了を行う場合について説明する。
【００６２】
図８は、図１に示す動きベクトル検出部１０６の構成を示すブロック図である。なお、図２と同様の部分については同じ符号を付し、詳細な説明を省略する。
【００６３】
動きベクトル検出部１０６は、実施の形態１の構成に加えて、カウンタ３０１を備えている。カウンタ３０１は、誤差最小ブロック決定部２０３から動きベクトルmvminが出力された回数、すなわち探索中心となる参照ブロックが更新された回数を計測する。そして、カウンタ３０１は、計測した回数が所定の閾値TH_me_cntになった場合に、スイッチ２０６をＯＮに制御する。その結果、誤差最小ブロック決定部２０３から出力された動きベクトルmvminが、動きベクトル検出部１０６が検出した動きベクトルMVoutとして出力される。なお、カウンタ３０１は、計測した回数が所定の閾値TH_me_cnt未満の場合には、スイッチ２０６をＯＦＦに制御する。
【００６４】
図９は、カウンタを用いて動き検出を行う際の動作の流れを示すフローチャートである。なお、図６（ａ）と同様の動作については同じ符号を付し、詳細な説明を省略する。
【００６５】
図６（ａ）に示す実施の形態１の動作との相違点は、まず、最小誤差SADminを∞に初期化し、探索中心となる参照ブロックの初期値mvPredを探索中心mvcenterに代入する動作に加えて、回数cntを０に初期化する（ステップｃ１）。
【００６６】
また、次回の探索中心となる参照ブロックが前回の探索中心となる参照ブロックと同じであるか否かの判定処理（ステップａ６）において、次回の探索中心となる参照ブロックが前回の探索中心となる参照ブロックと同じでない場合（ステップａ６でＮＯ）に、カウンタ３０１は回数cntを１つ増加（ステップｃ２）し、回数cntが回数が所定の閾値TH_me_cntになるまで、誤差計算および誤差最小ブロックの決定処理（ステップａ２）から終了判定処理（ステップａ６）を繰り返す。
【００６７】
一方、回数cntが回数が所定の閾値TH_me_cntになると、誤差計算および誤差最小ブロックの決定処理（ステップａ２）から終了判定処理（ステップａ６）を繰り返すのを終了し、その時点の誤差最小ブロックの動きベクトルmvminを動きベクトル検出部１０６が検出した動きベクトルMVoutとして出力する（ステップａ７）。
【００６８】
以上のように、終了判定部２０４の終了判定に加えて、カウンタ３０１により計測された回数が所定の閾値TH_me_cntになった場合にも、動き検出を終了しているので、例えば所定の時間内で動き検出を終了する必要がある場合等に、所定の時間内で動き検出を終了することができる。
【００６９】
なお、上記各実施の形態では、対象ブロックと参照ブロックの比較誤差として絶対値差分和（SAD：Summed Absolute Difference）を用いているが、これに限られるものではない。例えば、対象ブロックと参照ブロックの比較誤差として差分２乗和等を用いても構わない。
【００７０】
（実施の形態３）
さらに、上記各実施の形態で示した動き検出方法を実現するためのプログラムを、フレキシブルディスク等の記録媒体に記録するようにすることにより、上記各実施の形態で示した処理を、独立したコンピュータシステムにおいて簡単に実施することが可能となる。
【００７１】
図１０は、上記各実施の形態の動き検出方法を、フレキシブルディスク等の記録媒体に記録されたプログラムを用いて、コンピュータシステムにより実施する場合の説明図である。
【００７２】
図１０(b) は、フレキシブルディスクの正面からみた外観、断面構造、及びフレキシブルディスクを示し、図１０ (a) は、記録媒体本体であるフレキシブルディスクの物理フォーマットの例を示している。フレキシブルディスクＦＤはケースＦ内に内蔵され、該ディスクの表面には、同心円状に外周からは内周に向かって複数のトラックＴｒが形成され、各トラックは角度方向に１６のセクタＳｅに分割されている。従って、上記プログラムを格納したフレキシブルディスクでは、上記フレキシブルディスクＦＤ上に割り当てられた領域に、上記プログラムが記録されている。
【００７３】
また、図１０(c) は、フレキシブルディスクＦＤに上記プログラムの記録再生を行うための構成を示す。動き検出方法を実現する上記プログラムをフレキシブルディスクＦＤに記録する場合は、コンピュータシステムＣｓから上記プログラムをフレキシブルディスクドライブを介して書き込む。また、フレキシブルディスク内の動き検出方法を実現するプログラムにより上記動き検出方法をコンピュータシステム中に構築する場合は、フレキシブルディスクドライブによりプログラムをフレキシブルディスクから読み出し、コンピュータシステムに転送する。
【００７４】
なお、上記説明では、記録媒体としてフレキシブルディスクを用いて説明を行ったが、光ディスクを用いても同様に行うことができる。また、記録媒体はこれに限らず、ＩＣカード、ＲＯＭカセット等、プログラムを記録できるものであれば同様に実施することができる。
【００７５】
（実施の形態４）
さらにここで、上記実施の形態で示した動き検出方法の応用例とそれを用いたシステムを説明する。
【００７６】
図１１は、コンテンツ配信サービスを実現するコンテンツ供給システムex１００の全体構成を示すブロック図である。通信サービスの提供エリアを所望の大きさに分割し、各セル内にそれぞれ固定無線局である基地局ex１０７〜ex１１０が設置されている。
【００７７】
このコンテンツ供給システムex１００は、例えば、インターネットex１０１にインターネットサービスプロバイダex１０２および電話網ex１０４、および基地局ex１０７〜ex１１０を介して、コンピュータex１１１、ＰＤＡ（personal digital assistant）ex１１２、カメラex１１３、携帯電話ex１１４、カメラ付きの携帯電話ｅｘ１１５などの各機器が接続される。
【００７８】
しかし、コンテンツ供給システムex１００は図１１のような組合せに限定されず、いずれかを組み合わせて接続するようにしてもよい。また、固定無線局である基地局ex１０７〜ex１１０を介さずに、各機器が電話網ex１０４に直接接続されてもよい。
【００７９】
カメラex１１３はデジタルビデオカメラ等の動画撮影が可能な機器である。また、携帯電話は、ＰＤＣ（Personal Digital Communications）方式、ＣＤＭＡ（Code Division Multiple Access）方式、Ｗ−ＣＤＭＡ（Wideband-Code Division Multiple Access）方式、若しくはＧＳＭ（Global System for Mobile Communications）方式の携帯電話機、またはＰＨＳ（Personal Handyphone System）等であり、いずれでも構わない。
【００８０】
また、ストリーミングサーバex１０３は、カメラex１１３から基地局ex１０９、電話網ex１０４を通じて接続されており、カメラex１１３を用いてユーザが送信する符号化処理されたデータに基づいたライブ配信等が可能になる。撮影したデータの符号化処理はカメラex１１３で行っても、データの送信処理をするサーバ等で行ってもよい。また、カメラex１１６で撮影した動画データはコンピュータex１１１を介してストリーミングサーバex１０３に送信されてもよい。カメラex１１６はデジタルカメラ等の静止画、動画が撮影可能な機器である。この場合、動画データの符号化はカメラex１１６で行ってもコンピュータex１１１で行ってもどちらでもよい。また、符号化処理はコンピュータex１１１やカメラex１１６が有するＬＳＩex１１７において処理することになる。なお、画像符号化・復号化用のソフトウェアをコンピュータex１１１等で読み取り可能な記録媒体である何らかの蓄積メディア（ＣＤ−ＲＯＭ、フレキシブルディスク、ハードディスクなど）に組み込んでもよい。さらに、カメラ付きの携帯電話ex１１５で動画データを送信してもよい。このときの動画データは携帯電話ex１１５が有するＬＳＩで符号化処理されたデータである。
【００８１】
このコンテンツ供給システムex１００では、ユーザがカメラex１１３、カメラex１１６等で撮影しているコンテンツ（例えば、音楽ライブを撮影した映像等）を上記実施の形態同様に符号化処理してストリーミングサーバex１０３に送信する一方で、ストリーミングサーバex１０３は要求のあったクライアントに対して上記コンテンツデータをストリーム配信する。クライアントとしては、上記符号化処理されたデータを復号化することが可能な、コンピュータex１１１、ＰＤＡex１１２、カメラex１１３、携帯電話ex１１４等がある。このようにすることでコンテンツ供給システムex１００は、符号化されたデータをクライアントにおいて受信して再生することができ、さらにクライアントにおいてリアルタイムで受信して復号化し、再生することにより、個人放送をも実現可能になるシステムである。
【００８２】
このシステムを構成する符号化の中で使用される動き検出部には上記各実施の形態で示した動き検出を用いるようにすればよい。
【００８３】
その一例として携帯電話について説明する。
図１２は、上記実施の形態で説明した動き検出方法を用いた携帯電話ex１１５を示す図である。携帯電話ex１１５は、基地局ex１１０との間で電波を送受信するためのアンテナex２０１、ＣＣＤカメラ等の映像、静止画を撮ることが可能なカメラ部ex２０３、カメラ部ex２０３で撮影した映像、アンテナex２０１で受信した映像等が復号化されたデータを表示する液晶ディスプレイ等の表示部ex２０２、操作キーｅｘ２０４群から構成される本体部、音声出力をするためのスピーカ等の音声出力部ex２０８、音声入力をするためのマイク等の音声入力部ex２０５、撮影した動画もしくは静止画のデータ、受信したメールのデータ、動画のデータもしくは静止画のデータ等、符号化されたデータまたは復号化されたデータを保存するための記録メディアex２０７、携帯電話ex１１５に記録メディアex２０７を装着可能とするためのスロット部ex２０６を有している。記録メディアex２０７はＳＤカード等のプラスチックケース内に電気的に書換えや消去が可能な不揮発性メモリであるＥＥＰＲＯＭ（Electrically Erasable and Programmable Read Only Memory）の一種であるフラッシュメモリ素子を格納したものである。
【００８４】
さらに、携帯電話ex１１５について図１３を用いて説明する。携帯電話ex１１５は表示部ex２０２及び操作キーｅｘ２０４を備えた本体部の各部を統括的に制御するようになされた主制御部ex３１１に対して、電源回路部ex３１０、操作入力制御部ex３０４、画像符号化部ex３１２、カメラインターフェース部ex３０３、ＬＣＤ（Liquid Crystal Display）制御部ex３０２、画像復号化部ex３０９、多重分離部ex３０８、記録再生部ex３０７、変復調回路部ex３０６及び音声処理部ex３０５が同期バスex３１３を介して互いに接続されている。
【００８５】
電源回路部ex３１０は、ユーザの操作により終話及び電源キーがオン状態にされると、バッテリパックから各部に対して電力を供給することによりカメラ付ディジタル携帯電話ex１１５を動作可能な状態に起動する。
【００８６】
携帯電話ex１１５は、ＣＰＵ、ＲＯＭ及びＲＡＭ等でなる主制御部ex３１１の制御に基づいて、音声通話モード時に音声入力部ex２０５で集音した音声信号を音声処理部ex３０５によってディジタル音声データに変換し、これを変復調回路部ex３０６でスペクトラム拡散処理し、送受信回路部ex３０１でディジタルアナログ変換処理及び周波数変換処理を施した後にアンテナex２０１を介して送信する。また携帯電話機ex１１５は、音声通話モード時にアンテナex２０１で受信した受信データを増幅して周波数変換処理及びアナログディジタル変換処理を施し、変復調回路部ex３０６でスペクトラム逆拡散処理し、音声処理部ex３０５によってアナログ音声データに変換した後、これを音声出力部ex２０８を介して出力する。
【００８７】
さらに、データ通信モード時に電子メールを送信する場合、本体部の操作キーｅｘ２０４の操作によって入力された電子メールのテキストデータは操作入力制御部ex３０４を介して主制御部ex３１１に送出される。主制御部ex３１１は、テキストデータを変復調回路部ex３０６でスペクトラム拡散処理し、送受信回路部ex３０１でディジタルアナログ変換処理及び周波数変換処理を施した後にアンテナex２０１を介して基地局ex１１０へ送信する。
【００８８】
データ通信モード時に画像データを送信する場合、カメラ部ex２０３で撮像された画像データをカメラインターフェース部ex３０３を介して画像符号化部ex３１２に供給する。また、画像データを送信しない場合には、カメラ部ex２０３で撮像した画像データをカメラインターフェース部ex３０３及びＬＣＤ制御部ex３０２を介して表示部ex２０２に直接表示することも可能である。
【００８９】
画像符号化部ex３１２は、本願発明で説明した動画像符号化装置を備えた構成であり、カメラ部ex２０３から供給された画像データを上記実施の形態で示した動画像符号化装置に用いた符号化方法によって圧縮符号化することにより符号化画像データに変換し、これを多重分離部ex３０８に送出する。また、このとき同時に携帯電話機ex１１５は、カメラ部ex２０３で撮像中に音声入力部ex２０５で集音した音声を音声処理部ex３０５を介してディジタルの音声データとして多重分離部ex３０８に送出する。
【００９０】
多重分離部ex３０８は、画像符号化部ex３１２から供給された符号化画像データと音声処理部ex３０５から供給された音声データとを所定の方式で多重化し、その結果得られる多重化データを変復調回路部ex３０６でスペクトラム拡散処理し、送受信回路部ex３０１でディジタルアナログ変換処理及び周波数変換処理を施した後にアンテナex２０１を介して送信する。
【００９１】
データ通信モード時にホームページ等にリンクされた動画像ファイルのデータを受信する場合、アンテナex２０１を介して基地局ex１１０から受信した受信データを変復調回路部ex３０６でスペクトラム逆拡散処理し、その結果得られる多重化データを多重分離部ex３０８に送出する。
【００９２】
また、アンテナex２０１を介して受信された多重化データを復号化するには、多重分離部ex３０８は、多重化データを分離することにより画像データのビットストリームと音声データのビットストリームとに分け、同期バスex３１３を介して当該符号化画像データを画像復号化部ex３０９に供給すると共に当該音声データを音声処理部ex３０５に供給する。
【００９３】
次に、画像復号化部ex３０９は、画像データのビットストリームを上記実施の形態で示した符号化方法に対応した復号化方法で復号することにより再生動画像データを生成し、これをＬＣＤ制御部ex３０２を介して表示部ex２０２に供給し、これにより、例えばホームページにリンクされた動画像ファイルに含まれる動画データが表示される。このとき同時に音声処理部ex３０５は、音声データをアナログ音声データに変換した後、これを音声出力部ex２０８に供給し、これにより、例えばホームページにリンクされた動画像ファイルに含まる音声データが再生される。
【００９４】
なお、上記システムの例に限られず、最近は衛星、地上波によるディジタル放送が話題となっており、図１４に示すようにディジタル放送用システムにも上記実施の形態の動画像符号化装置を組み込むことができる。具体的には、放送局ex４０９では映像情報のビットストリームが電波を介して通信または放送衛星ex４１０に伝送される。これを受けた放送衛星ex４１０は、放送用の電波を発信し、この電波を衛星放送受信設備をもつ家庭のアンテナex４０６で受信し、テレビ（受信機）ex４０１またはセットトップボックス（ＳＴＢ）ex４０７などの装置によりビットストリームを復号化してこれを再生する。また、記録媒体であるCDやDVD等の蓄積メディアex４０２に記録したビットストリームを読み取り、復号化する再生装置ex４０３にも動画像復号化装置を実装することが可能である。この場合、再生された映像信号はモニタex４０４に表示される。また、ケーブルテレビ用のケーブルex４０５または衛星／地上波放送のアンテナex４０６に接続されたセットトップボックスex４０７内に動画像復号化装置を実装し、これをテレビのモニタex４０８で再生する構成も考えられる。このときセットトップボックスではなく、テレビ内に動画像復号化装置を組み込んでも良い。また、アンテナex４１１を有する車ex４１２で衛星ex４１０からまたは基地局ex１０７等から信号を受信し、車ex４１２が有するカーナビゲーションex４１３等の表示装置に動画を再生することも可能である。
【００９５】
更に、画像信号を上記実施の形態で示した動画像符号化装置で符号化し、記録媒体に記録することもできる。具体例としては、DVDディスクｅｘ４２１に画像信号を記録するDVDレコーダや、ハードディスクに記録するディスクレコーダなどのレコーダｅx４２０がある。更にSDカードｅｘ４２２に記録することもできる。レコーダｅｘ４２０が動画像復号化装置を備えていれば、DVDディスクｅｘ４２１やSDカードｅｘ４２２に記録した画像信号を再生し、モニタｅｘ４０８で表示することができる。
【００９６】
なお、カーナビゲーションex４１３の構成は例えば図１３に示す構成のうち、カメラ部ex２０３とカメラインターフェース部ex３０３、画像符号化部ｅｘ３１２を除いた構成が考えられ、同様なことがコンピュータex１１１やテレビ（受信機）ex４０１等でも考えられる。
【００９７】
また、上記携帯電話ex１１４等の端末は、符号化器・復号化器を両方持つ送受信型の端末の他に、符号化器のみの送信端末、復号化器のみの受信端末の３通りの実装形式が考えられる。
【００９８】
このように、上記実施の形態で示した動き検出方法を上述したいずれの機器・システムに用いることは可能であり、そうすることで、上記実施の形態で説明した効果を得ることができる。
【００９９】
また、本発明はかかる上記実施形態に限定されるものではなく、本発明の範囲を逸脱することなく種々の変形または修正が可能である。
【０１００】
また、図１、図２、および図８に示したブロック図の各機能ブロックは典型的には集積回路であるＬＳＩとして実現される。このＬＳＩは１チップ化されても良いし、複数チップ化されても良い。（例えばメモリ以外の機能ブロックが１チップ化されていても良い。）ここでは、ＬＳＩとしたが、集積度の違いにより、ＩＣ、システムＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩと呼称されることもある。
【０１０１】
また、集積回路化の手法はＬＳＩに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。ＬＳＩ製造後に、プログラムすることが可能なＦＰＧＡ（Field Programmable Gate Array）や、ＬＳＩ内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用しても良い。
【０１０２】
さらには、半導体技術の進歩又は派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適応等が可能性としてありえる。
【０１０３】
また、各機能ブロックのうち、符号化または復号化の対象となるデータを格納する手段だけ１チップ化せずに別構成としても良い。
【産業上の利用可能性】
【０１０４】
以上のように、本発明に係る動き検出方法および動画像符号化方法は、例えば携帯電話、ＤＶＤ装置、およびパーソナルコンピュータ等で、動画像の動き検出を行ったり、動画像を構成する各ピクチャを符号化して符号列を生成したりするための方法等として有用である。
【図面の簡単な説明】
【０１０５】
【図１】本発明の実施の形態１に係る動き検出方法を用いた動画像符号化装置の構成を示すブロック図である。
【図２】本発明の実施の形態１に係る動き検出方法を用いた動きベクトル検出部の構成を示すブロック図である。
【図３】本発明に係る動き検出方法の探索位置となる参照ブロックおよび探索中心となる参照ブロックの移動について示す概念図であり、（ａ）９個の参照ブロックを並列に計算を行った際に誤差最小ブロックが右中央の場合であり、（ｂ）９個の参照ブロックを並列に計算を行った際に誤差最小ブロックが右上の場合であり、（ｃ）２５個の参照ブロックを並列に計算を行った際に誤差最小ブロックが右端中央の場合であり、（ｄ）２５個の参照ブロックを並列に計算を行った際に誤差最小ブロックが右端上から２つ目の場合であり、（ｅ）２５個の参照ブロックを並列に計算を行った際に誤差最小ブロックが右上端の場合である。
【図４】本発明に係る動き検出方法の探索位置となる参照ブロックおよび探索中心となる参照ブロックの移動について示す概念図であり、（ａ）誤差最小ブロックが右中央で、かつ探索範囲の境界がある場合であり、（ｂ）（ｃ）誤差最小ブロックが右上で、かつ探索範囲の境界がある場合である。
【図５】本発明に係る動き検出方法の動き検出を終了する場合について示す概念図であり、（ａ）９個の参照ブロックを並列に計算を行った際に前回の誤差計算における誤差最小ブロックが右中央の場合であり、（ｂ）９個の参照ブロックを並列に計算を行った際に前回の誤差計算における誤差最小ブロックが右上の場合であり、（ｃ）２５個の参照ブロックを並列に計算を行った際に前回の誤差計算における誤差最小ブロックが右端中央の場合であり、（ｄ）２５個の参照ブロックを並列に計算を行った際に前回の誤差計算における誤差最小ブロックが右端上から２つ目の場合であり、（ｅ）２５個の参照ブロックを並列に計算を行った際に前回の誤差計算における誤差最小ブロックが右上端の場合である。
【図６】（ａ）動き検出を行う際の動作の流れを示すフローチャートであり、（ｂ）はこの動作中の次回の探索中心となる参照ブロックの決定処理の動作の流れを示すフローチャートである。
【図７】探索中心決定部が保持する次回の探索中心となる参照ブロックを決定するための変換表の一例を示す図であり、（ａ）９個の参照ブロックについて対象ブロックとの誤差計算を行う場合、（ｂ）２５個の参照ブロックについて対象ブロックとの誤差計算を行う場合である。
【図８】本発明の実施の形態２に係る動き検出方法を用いた動きベクトル検出部の構成を示すブロック図である。
【図９】カウンタを用いて動き検出を行う際の動作の流れを示すフローチャートである。
【図１０】各実施の形態の動き検出方法および動画像符号化方法をコンピュータシステムにより実現するためのプログラムを格納するための記録媒体についての説明図であり、(a) 記録媒体本体であるフレキシブルディスクの物理フォーマットの例を示した説明図、(b) フレキシブルディスクの正面からみた外観、断面構造、及びフレキシブルディスクを示した説明図、(c) フレキシブルディスクＦＤに上記プログラムの記録再生を行うための構成を示した説明図である。
【図１１】コンテンツ供給システムの全体構成を示すブロック図である。
【図１２】携帯電話の例を示す概略図である。
【図１３】携帯電話の構成を示すブロック図である。
【図１４】ディジタル放送用システムの例を示す図である。
【図１５】動き検出を説明する概略図である。
【図１６】従来の動き検出方法の探索位置となる参照ブロックおよび探索中心となる参照ブロックの移動について示す概念図である。
【符号の説明】
【０１０６】
１０１  ピクチャメモリ
１０２  予測残差符号化部
１０３  符号列生成部
１０４  予測残差復号化部
１０５  ピクチャメモリ
１０６  動きベクトル検出部
１０７  動き補償符号化部
１０８  差分演算部
１０９  加算演算部
１１０、１１１  スイッチ
２０１  ブロックメモリ
２０２  誤差計算部
２０３  誤差最小ブロック決定部
２０４  終了判定部
２０５  探索中心決定部
２０６  スイッチ
３０１  カウンタ
Ｃｓ  コンピュータ・システム
ＦＤ  フレキシブルディスク
ＦDD フレキシブルディスクドライブ
【図１】
2005278156.tif 000003
【図２】
2005278156.tif 000004
【図３】
2005278156.tif 000005
【図４】
2005278156.tif 000006
【図５】
2005278156.tif 000007
【図６】
2005278156.tif 000008
【図７】
2005278156.tif 000009
【図８】
2005278156.tif 000010
【図９】
2005278156.tif 000011
【図１０】
2005278156.tif 000012
【図１１】
2005278156.tif 000013
【図１２】
2005278156.tif 000014
【図１３】
2005278156.tif 000015
【図１４】
2005278156.tif 000016
【図１５】
2005278156.tif 000017
【図１６】
2005278156.tif 000018