(57)【要約】【課題】動画像符号化に使用する参照フレームを好適に選択し、かつ効率の良い動きベクトル探索が高速に可能な動きベクトル探索装置等を提供する。【解決手段】探索範囲設定器６〜９は、カメラ動き検出器３で取得した入力したフレームデータに関するカメラの動き情報と、カメラ動き情報メモリ４に格納、蓄積したカメラの動き情報とに基づいて、複数の格納手段１０〜１３に格納されているフレームデータの参照可能な範囲を決定する。最小誤差演算器は、入力したフレームデータを所定の大きさのブロックに分割して、各ブロック毎に、前記決定した参照可能な範囲においてブロックマッチングを行ない、誤差が最小となるブロックを探索して、動きベクトルを探索する。【選択図】  図１
2008211508.tif 000002
【特許請求の範囲】
【請求項１】
動画像中の複数のフレームデータを参照して、対象のフレームデータに対する動きベクトル探索を行ない、前記動画像の動きを探索する動きベクトル探索装置であって、
フレームデータを入力する入力手段と、
前記複数のフレームデータを格納する複数の格納手段と、
前記入力手段によって入力されるフレームデータの全体の構図に係る全体の構図情報を取得する構図情報取得手段と、
前記全体の構図情報を格納しておく構図情報格納手段と、
前記構図情報取得手段で取得された前記全体の構図情報及び前記構図情報格納手段に格納された前記全体の構図情報に基づいて、前記複数の格納手段に格納されたフレームデータにおける参照可能な範囲を制御する制御手段と、
前記入力手段によって入力されるフレームデータを所定の大きさのブロックに分割するブロック分割手段と、
前記ブロック毎にブロックマッチングによって前記複数の格納手段に格納された参照可能なフレームデータに対して、前記制御手段で参照可能な範囲とされた探索範囲内で誤差が最小になるブロックを探索し、動きベクトルを探索する探索手段と、
前記動きベクトルを出力する出力手段とを有することを特徴とする動きベクトル探索装置。
【請求項２】
前記構図情報取得手段は、フレームデータ全体のパンニングに関する情報を取得するパンニング情報取得手段を備え、前記全体の構図情報は、パンニングに関する情報であることを特徴とする請求項１に記載の動きベクトル探索装置。
【請求項３】
前記構図情報取得手段は、フレームデータ全体の拡大または縮小に関する情報を取得するズーム情報取得手段を備え、前記全体の構図情報は、ズーミングに関する情報であることを特徴とする請求項１に記載の動きベクトル探索装置。
【請求項４】
前記制御手段は、前記ズーム情報取得手段から得られるズーミングに関する情報と構図情報格納手段に格納されたズーミングに関する情報とを比較し、ズーム比が所定の値を超えた時にその参照フレームの参照を行なわないように制御することを特徴とする請求項３に記載の動きベクトル探索装置。
【請求項５】
前記制御手段は、前記ズーム情報取得手段から得られるズーミングに関する情報と構図情報格納手段に格納されたズーミングに関する情報とを比較し、ズームが縮小の場合、前記入力手段によって入力されたフレームの中で動きベクトル探索を行なう領域を設定する動きベクトル探索対象範囲制御手段を備えることを特徴とする請求項３又は４に記載の動きベクトル探索装置。
【請求項６】
動画像中の複数のフレームデータを参照して、対象のフレームデータに対する動きベクトル探索を行ない、前記動画像の動きを探索する動きベクトル探索方法であって、
フレームデータを入力する入力工程と、
前記複数のフレームデータを格納する格納工程と、
前記入力工程において入力されるフレームデータの全体の構図に係る全体の構図情報を取得する構図情報取得工程と、
前記全体の構図情報を格納しておく構図情報格納工程と、
前記構図情報取得工程で取得された前記全体の構図情報及び前記構図情報格納工程で格納された前記全体の構図情報に基づいて、前記格納工程で格納されたフレームデータにおける参照可能な範囲を制御する制御工程と、
前記入力工程において入力されたフレームデータを所定の大きさのブロックに分割するブロック分割工程と、
前記ブロック毎にブロックマッチングによって前記格納工程に格納された参照可能なフレームデータに対して、前記制御工程で参照可能な範囲とされた探索範囲内で誤差が最小になるブロックを探索し、動きベクトルを探索する探索工程と、
前記動きベクトルを出力する出力工程とを有することを特徴とする動きベクトル探索方法。
【請求項７】
前記構図情報取得工程は、フレームデータ全体のパンニングに関する情報を取得するパンニング情報取得工程を含み、前記構図情報は、パンニングに関する情報であることを特徴とする請求項６に記載の動きベクトル探索方法。
【請求項８】
前記構図情報取得工程は、フレームデータ全体の拡大または縮小に関する情報を取得するズーム情報取得工程を含み、前記構図情報は、ズーミングに関する情報であることを特徴とする請求項６に記載の動きベクトル探索方法。
【請求項９】
前記制御工程は、前記ズーム情報取得工程から得られるズーミングに関する情報と前記構図情報格納工程で格納されたズーミングに関する情報とを比較し、ズーム比が所定の値を超えた時にその参照フレームの参照を行なわないように制御することを特徴とする請求項８に記載の動きベクトル探索方法。
【請求項１０】
前記制御工程は、前記ズーム情報取得工程から得られるズーミングに関する情報と前記構図情報格納工程で格納されたズーミングに関する情報とを比較し、ズームが縮小の場合、前記入力工程において入力されたフレームの中で動きベクトル探索を行なう領域を設定する動きベクトル探索対象範囲制御工程を含むことを特徴とする請求項８又は９に記載の動きベクトル探索方法。
【請求項１１】
動画像中の複数のフレームデータを参照して、対象のフレームデータに対する動きベクトル探索を行ない、前記動画像の動きを探索する動きベクトル探索プログラムであって、
フレームデータを入力する入力ステップと、
前記複数のフレームデータを格納する複数の格納ステップと、
前記入力ステップにおいて入力されるフレームデータの全体の構図に係る全体の構図情報を取得する構図情報取得ステップと、
前記全体の構図情報を格納しておく構図情報格納ステップと、
前記構図情報取得ステップで取得された前記全体の構図情報及び前記構図情報格納ステップで格納された前記全体の構図情報に基づいて、前記格納ステップで格納されたフレームデータにおける参照可能な範囲を制御する制御ステップと、
前記入力ステップにおいて入力されたフレームデータを所定の大きさのブロックに分割するブロック分割ステップと、
前記ブロック毎にブロックマッチングによって前記格納ステップで格納された参照可能なフレームデータに対して、前記制御ステップで参照可能な範囲とされた探索範囲内で誤差が最小になるブロックを探索し、動きベクトルを探索する探索ステップと、
前記動きベクトルを出力する出力ステップとをコンピュータに実行させることを特徴とする動きベクトル探索プログラム。
【請求項１２】
前記構図情報取得ステップは、フレームデータ全体のパンニングに関する情報を取得するパンニング情報取得ステップを含み、前記全体の構図情報は、パンニングに関する情報であることを特徴とする請求項１１に記載の動きベクトル探索プログラム。
【請求項１３】
前記構図情報取得ステップは、フレームデータ全体の拡大または縮小に関する情報を取得するズーム情報取得ステップを含み、前記全体の構図情報は、ズーミングに関する情報であることを特徴とする請求項１１に記載の動きベクトル探索プログラム。
【請求項１４】
前記制御ステップは、前記ズーム情報取得ステップから得られるズーミングに関する情報と前記構図情報格納ステップで格納されたズーミングに関する情報とを比較し、ズーム比が所定の値を超えた時にその参照フレームの参照を行なわないように制御することを特徴とする請求項１３に記載の動きベクトル探索プログラム。
【請求項１５】
前記制御ステップは、前記ズーム情報取得ステップから得られるズーミングに関する情報と前記構図情報格納ステップに格納されたズーミングに関する情報とを比較し、ズームが縮小の場合、前記入力ステップにおいて入力されたフレームの中で動きベクトル探索を行なう領域を設定する動きベクトル探索対象範囲制御ステップを含むことを特徴とする請求項１３又は１４に記載の動きベクトル探索プログラム。
【請求項１６】
請求項１１〜１５のいずれか１項に記載のプログラムを格納することを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像中の複数のフレームデータを参照して、動きベクトルを探索する動きベクトル探索装置等に関するものである。
【背景技術】
【０００２】
近年、新しい動画像の符号化方式として、Ｈ.２６４符号化方式が注目されている。本符号化方式は、ＩＴＵ−ＴとＩＳＯが共同で開発した符号化方式である。この新しい標準は、２００３年夏に標準化された。
【０００３】
この新しい符号化方式では、従来のＭＰＥＧ−１、２、４符号化方式と異なり、４×４整数変換を用い、イントラ予測も複数用意されている。また、ループ内フィルタが用いられ、動き補償も７種類のサブブロックで行われている。また、その動き補償の画素精度もＭＰＥＧ−４符号化方式と同様に、１／４画素精度の動き補償を行なうことができる。更に、エントロピー符号化としてユニバーサル可変長符号化やコンテキスト適応可変長符号化が用いられている。
【０００４】
さらに大きな特徴として、ＭＰＥＧ−１、２、４符号化方式では、符号化対象のフレームの前後２枚の参照画像（フレーム）を用いて動き補償を行っていたが、より多くの参照画像を用いることが可能になっている。具体的には、ビットストリームの先頭のヘッダに含まれるｎｕｍ＿ｒｅｆ＿ｆｒａｍｅｓ符号は、最大１６の値をとることができる。即ち、動き補償において、符号化対象フレームの前後１６枚のフレームを参照画像として参照することが可能である。
【０００５】
符号化対象となるマクロブロックは、前述のとおり、最大１６フレームの画像に対して、７種類のサブブロックについて１／４画素精度で予測誤差を算出し、予測誤差が最小になるマクロブロックを選択することで符号化効率を大幅に改善することが可能となる。
【０００６】
ここで、Ｈ．２６４符号化方式の従来の動画像符号化装置の構成について、図２０を用いて説明する。図２０は従来の動画像符号化装置の構成を示すブロック図である。
【０００７】
動画像符号化装置には、画像データがマクロブロック単位で入力される。セレクタ１０００は、イントラ符号化するか否かを切り替え、イントラ符号化の場合はイントラ予測器１００１に画像データが入力される。
【０００８】
イントラ予測器１００１では、９つのモードで予測を行ない、予測誤差を算出する。また、Ｈ．２６４符号化方式ではイントラと判定されたブロックに対しても予測符号化を行なうため、イントラ符号化でも符号が抑制されている。
【０００９】
一方、イントラ符号化以外の場合は、差分器１００２に入力され、予測画像との差分を算出して、予測誤差とする。これらを含めて予測器１１００を構成する。
【００１０】
変換／量子化器１００３は、算出された予測誤差を４×４画素ブロックの整数変換を実行し、得られる係数を量子化する。量子化結果である量子化係数は、エントロピー符号化器１００４で可変長符号化されて出力器１０１４に出力される。同時に、量子化結果は逆量子化／逆変換器１００５に入力され、予測誤差を復元し、加算器１００６で予測画像に加算する。その結果は、復号画像として、フレームメモリ１００７〜１０１０に適宜格納される。
【００１１】
動き推定器１０１１は、フレームメモリ１００７〜１０１０に格納された復号画像と入力画像を比較し、各サブブロック単位で１／４画素精度で動きベクトルを算出する。動きベクトルと選択したフレーム番号は、動き補償器１０１２に入力され、該当するフレームメモリから参照画像を読み込み、予測誤差の最も小さい参照画像を選択して予測画像として差分器１００２に出力する。
【００１２】
また、動きベクトルと選択されたフレーム番号は、動き符号化器１０１３に入力されて符号化され、出力器１０１４に出力される。出力器１０１４は、符号化データを書式に従って整形して出力する。
【００１３】
【非特許文献１】「Ｏｖｅｒｖｉｅｗ ｏｆ ｔｈｅ Ｈ．２６４／ＡＶＣ ｖｉｄｅｏ Ｃｏｄｉｎｇ Ｓｔａｎｄａｒｄ」（ＩＥＥＥ ＴＲＡＮＳＡＣＴＩＯＮＳ ＯＮ ＣＩＲＣＵＩＴＳ ＡＮＤ ＳＹＳＴＥＭＳ ＦＯＲ ＶＩＤＥＯ ＴＥＣＨＮＯＬＯＧＹ,ＪＵＬＹ ２００３）
【非特許文献２】「もたつくＭＰＥＧ−４を尻目にＨ.２６４がいざ発進」（日経エレクトロニクス  ２００３．７．７号  ｐｐ．６５〜７４）
【発明の開示】
【発明が解決しようとする課題】
【００１４】
しかしながら、上述のＨ．２６４符号化方式のように、複数のフレームを参照する符号化方式では、動き補償を実行するために動きベクトルの探索を実行するが、その計算量は参照画像の枚数が増えるにつれて膨大な計算量が必要になるという課題が生じる。
【００１５】
本発明は上記の課題に鑑みてなされたものであり、動画像符号化に使用する参照フレームを好適に選択し、かつ効率の良い動きベクトル探索が高速に可能な動きベクトル探索装置等を提供することを目的とする。
【課題を解決するための手段】
【００１６】
本発明の動きベクトル探索装置は、動画像中の複数のフレームデータを参照して、対象のフレームデータに対する動きベクトル探索を行ない、前記動画像の動きを探索する動きベクトル探索装置であって、フレームデータを入力する入力手段と、前記複数のフレームデータを格納する複数の格納手段と、前記入力手段によって入力されるフレームデータの全体の構図に係る全体の構図情報を取得する構図情報取得手段と、前記全体の構図情報を格納しておく構図情報格納手段と、前記構図情報取得手段で取得された前記全体の構図情報及び前記構図情報格納手段に格納された前記全体の構図情報に基づいて、前記複数の格納手段に格納されたフレームデータにおける参照可能な範囲を制御する制御手段と、前記入力手段によって入力されるフレームデータを所定の大きさのブロックに分割するブロック分割手段と、前記ブロック毎にブロックマッチングによって前記複数の格納手段に格納された参照可能なフレームデータに対して、前記制御手段で参照可能な範囲とされた探索範囲内で誤差が最小になるブロックを探索し、動きベクトルを探索する探索手段と、前記動きベクトルを出力する出力手段とを有することを特徴とする。
また、本発明の動きベクトル探索方法は、動画像中の複数のフレームデータを参照して、対象のフレームデータに対する動きベクトル探索を行ない、前記動画像の動きを探索する動きベクトル探索方法であって、フレームデータを入力する入力工程と、前記複数のフレームデータを格納する格納工程と、前記入力工程において入力されるフレームデータの全体の構図に係る全体の構図情報を取得する構図情報取得工程と、前記全体の構図情報を格納しておく構図情報格納工程と、前記構図情報取得工程で取得された前記全体の構図情報及び前記構図情報格納工程で格納された前記全体の構図情報に基づいて、前記格納工程で格納されたフレームデータにおける参照可能な範囲を制御する制御工程と、前記入力工程において入力されたフレームデータを所定の大きさのブロックに分割するブロック分割工程と、前記ブロック毎にブロックマッチングによって前記格納工程に格納された参照可能なフレームデータに対して、前記制御工程で参照可能な範囲とされた探索範囲内で誤差が最小になるブロックを探索し、動きベクトルを探索する探索工程と、前記動きベクトルを出力する出力工程とを有することを特徴とする。
また、本発明の動きベクトル探索プログラムは、動画像中の複数のフレームデータを参照して、対象のフレームデータに対する動きベクトル探索を行ない、前記動画像の動きを探索する動きベクトル探索プログラムであって、フレームデータを入力する入力ステップと、前記複数のフレームデータを格納する複数の格納ステップと、前記入力ステップにおいて入力されるフレームデータの全体の構図に係る全体の構図情報を取得する構図情報取得ステップと、前記全体の構図情報を格納しておく構図情報格納ステップと、前記構図情報取得ステップで取得された前記全体の構図情報及び前記構図情報格納ステップで格納された前記全体の構図情報に基づいて、前記格納ステップで格納されたフレームデータにおける参照可能な範囲を制御する制御ステップと、前記入力ステップにおいて入力されたフレームデータを所定の大きさのブロックに分割するブロック分割ステップと、前記ブロック毎にブロックマッチングによって前記格納ステップで格納された参照可能なフレームデータに対して、前記制御ステップで参照可能な範囲とされた探索範囲内で誤差が最小になるブロックを探索し、動きベクトルを探索する探索ステップと、前記動きベクトルを出力する出力ステップとをコンピュータに実行させることを特徴とする。
また、本発明のコンピュータ読み取り可能な記録媒体は、上記に記載のプログラムを格納することを特徴とする。
【発明の効果】
【００１７】
本発明によれば、カメラの動き情報に基づいて、複数フレームの参照画面に対して、探索範囲を有効に設けることができ、正確な動きベクトル探索を高速に行なうことでき、処理の高速化、消費電力の軽減といった効果がある。
【発明を実施するための最良の形態】
【００１８】
（第１の実施の形態）
以下、本発明の第１の実施の形態を、図面を用いて詳細に説明する。図１は本発明を適用した、動画像符号化装置の全体を示すブロック図である。本説明では動画像符号化装置の符号化方式として、Ｈ．２６４符号化方式を例にとって説明するが、これに限定されず、複数のフレームを参照して符号化する符号化方式であれば構わない。また、本実施の形態においては、説明を容易にするために参照フレーム数を４枚とするが、これに限定されるものではない。またインターフレームの例として前方予測のみとするが、これに限定されない。
【００１９】
図１において、１は、動画像中の複数のフレームデータを参照して、対象のフレームデータに対する動きベクトル探索を行ない、前記動画像の動きを探索する本発明の動きベクトル探索装置である。２は各フレームの探索範囲を算出して探索範囲を制御する探索範囲制御部である。
【００２０】
３はカメラの動きを加速度センサー等で検出して動き情報として出力するカメラ動き検出器である。４はカメラの動きを表す動き情報をフレーム毎に保管しておくカメラ動き情報メモリである。５はカメラ動き検出器３と動きベクトルメモリ４に格納された各フレームの動きベクトルから、各フレームの探索範囲を演算する探索範囲演算器である。ここで、カメラの動き情報の取得を行なうカメラ動き検出器３は、本発明でいう、フレームデータ全体の構図情報を取得する構図情報取得手段及びパンニング情報取得手段に対応する。また、カメラ動き情報メモリ４は、本発明でいう構図情報格納手段に対応する。
【００２１】
６、７、８、９は探索範囲設定器であり、探索範囲演算器５から出力される探索範囲に従って、各フレームデータの格納されたフレームメモリを制御する。ここで、探索範囲演算器５及び探索範囲設定器６〜９は、本発明でいう、構図情報を基にフレームデータの参照可能な範囲を制御する制御手段に対応する。
【００２２】
１０、１１、１２、１３は各フレームデータを格納するフレームメモリである。１４、１５、１６、１７は入力されたフレームから切出されたマクロブロックとそれぞれのフレームメモリに格納された参照フレームの探索範囲の中で最小誤差を求め、最小誤差とその位置を出力する最小誤差演算器である。ここで、フレームメモリ１０〜１３は、本発明でいう、複数のフレームデータを格納する複数の格納手段に対応する。
【００２３】
１８は各参照フレームの最小誤差から最も小さい誤差の参照フレームを決定し、決定した参照フレームとその位置から動きベクトルを算出する動きベクトル演算器である。ここで、また、最小誤差演算器１４〜１７及び動きベクトル演算器１８は、本発明でいう、動きベクトルを探索する探索手段及び動きベクトルを出力する出力手段に対応する。
【００２４】
２０はカメラの撮像部であり、1フレーム分の画像データをフレームデータとして出力する撮像部である。２１は1フレーム分の入力フレームデータを格納するフレームメモリである。２２はイントラ予測、インター予測を行ない、予測誤差とその参照画素データを出力する予測器である。
【００２５】
２３は各フレームの符号化モードを設定する符号化モード設定器であり、１フレーム目からＮフレームごとにフレーム内符号化を行なうイントラフレームモードとなり、そうでなければ動き補償を行なうインターフレームモードとする。
【００２６】
２４は整数型直交変換を実行し、得られる係数を量子化する変換／量子化器である。２５は量子化係数を逆量子化し、整数型逆直交変換を実行する逆量子化／逆変換器である。２６は算出された動きベクトルと該当するフレーム情報に基づいて、動きの情報を符号化する動き符号化器である。
【００２７】
２７は変換／量子化器２４の量子化結果を符号化する係数符号化器である。２８は生成された符号をＨ．２６４符号化方式の書式に従って整形して出力する出力器である。
【００２８】
２９は逆量子化／逆変換器２５より得られた予測誤差と予測値（予測画像）を加算する加算器である。３０は復号画像を格納するフレームメモリである。
【００２９】
尚、図１の動画像符号化装置は、当該装置全体、及び探索範囲制御部２を制御するＣＰＵ、装置を制御するための各種制御プログラムを記憶するＲＯＭ、各種制御を実行するための各種データの作業領域及び一時待避領域として機能するＲＡＭを有する。
【００３０】
次に、図１の動画像符号化装置の動画像符号化動作について、以下に説明する。符号化に先立ち、参照に用いることができるフレーム数等を含むヘッダ情報を出力器２８から出力する。
【００３１】
画像データは、撮像部２０から画像データがフレーム単位で入力され、フレームメモリ２１に格納される。また、これに同期して、カメラ動き検出器３はカメラの動きを検出する。カメラの動きとしては上下、左右にカメラを動かすパンニングを例にとって説明するが、これに限定されない。例えば、回転等を含めても構わない。このとき、カメラの動き情報はカメラの動いた方向と距離である。
【００３２】
符号化モード設定器２３がイントラフレームモードを選択した場合について最初に説明する。
【００３３】
動きベクトル探索装置１の各探索範囲設定器、探索範囲演算器５、各最小誤差演算器、動きベクトル演算器１８の動作を停止する。
【００３４】
フレームメモリ２１から切出されたブロックデータは順次、予測器２２に入力される。予測器２２ではＨ．２６４符号化方式のイントラ予測を行ない、その予測誤差を変換／量子化器２４に、求めるために用いた参照画素値を加算器２９に出力する。
【００３５】
変換／量子化器２４は、整数型直交変換を実行し、得られる係数を量子化する。その量子化結果である量子化係数は、係数符号化器２７と逆量子化／逆変換器２５に入力される。
【００３６】
逆量子化／逆変換器２５では、入力された量子化結果から復号画像を得て、加算器２９に入力する。加算器２９は予測器２２から参照画素値を入力して加算し、フレームメモリ３０の該当するブロックの位置に格納する。
【００３７】
係数符号化器２７では、入力された量子化結果をエントロピー符号化し、符号化データは出力器２８に入力される。
【００３８】
また、動き符号化器２６はイントラフレームモードの時は動作しない。出力器２８は入力された符号化モード、係数の符号化結果をＨ．２６４符号化方式の書式に適合するように整形して出力する。
【００３９】
1フレーム分の符号化が終了したら、フレームメモリ３０の内容をフレームメモリ１０から１３のうち、データが格納されていないフレームメモリまたは最も古いフレームデータを格納しているフレームメモリに上書きする。
【００４０】
最後に、カメラ動き検出器３で検出されたカメラの動き情報はカメラ動き情報メモリ４の空いている部分か、最も古いフレームの動き情報に上書きされる。
【００４１】
次に符号化モード設定器２３でインターフレームモードを選択した場合について説明する。イントラフレームモードと同様にフレームデータがフレームメモリ２１に格納され、同期してカメラの動き情報がカメラ動き検出器３で検出される。検出された動き情報は探索範囲制御部２の探索範囲演算器５に入力される。
【００４２】
図２に探索範囲演算器５の詳細なブロック図を示す。５０、５２、５４、５６は動き情報、特に入力されたフレームからの移動に関する情報を入力して、動きベクトル探索を行なう範囲を決定する探索範囲決定器である。
【００４３】
５１、５３、５５はカメラ動き検出器３とカメラ動き情報メモリ４から動き情報を加算して、各フレームに対する入力されたフレームとの移動に関する情報を求める動き情報加算器である。
【００４４】
５７は算出された動きベクトル探索範囲を該当するフレームデータを格納するフレームメモリの探索範囲設定器に適宜選択して出力するセレクタである。この探索範囲演算器５の動作を図３及び図４を用いて説明する。
【００４５】
図３は入力されたフレームの時刻とフレームデータを表した図である。
フレームの時刻がｔからｔ＋１、ｔ＋２、ｔ＋３、ｔ＋４と進むにつれ、フレームデータＦ１、フレームデータＦ２、フレームデータＦ３、フレームデータＦ４、フレームデータＦ５と入力される。これらのフレームに対しての動き情報がＭＶ０、ＭＶ１、ＭＶ２、ＭＶ３、ＭＶ４であったとする。
【００４６】
図４において、時刻ｔ＋１にて、入力されたフレームデータはＦ２であり、参照されるフレームメモリ１０にフレームデータＦ１のみが格納されているとする。カメラ動き検出器３から動き情報ＭＶ１が入力され、このとき、動き情報メモリ４には時刻ｔの動き情報ＭＶ０が入っているとする。
【００４７】
この時、図２に戻って、データ線７０を介して動き情報ＭＶ１が探索範囲決定器５０に入力される。
【００４８】
探索範囲決定器５０は動き情報ＭＶ１からフレームデータＦ１とフレームデータＦ２が重複する部分の位置情報を算出し、セレクタ５７に出力する。
【００４９】
図４にて、時刻ｔ＋１では、フレームデータＦ２に対して、フレームデータＦ１の太線で囲まれた範囲が探索範囲となる。
【００５０】
セレクタ５７は探索範囲決定器５０の出力がフレームメモリ１０に対する結果と判定して、探索範囲設定器６に入力する。
【００５１】
図４において、時刻ｔ＋２にて、入力されたフレームデータはＦ３であり、参照されるフレームメモリ１０にフレームデータＦ１が格納され、フレームメモリ１１にフレームデータＦ２が格納されたものとする。
【００５２】
カメラ動き検出器３から動き情報ＭＶ２が入力され、このとき、動き情報メモリ４には時刻ｔの動き情報ＭＶ０と時刻ｔ＋１の動き情報ＭＶ１が入っている。
【００５３】
探索範囲決定器５０は動き情報からフレームデータＦ３とフレームデータＦ２が重複する部分の位置情報を算出し、セレクタ５７に出力する。
【００５４】
動き情報加算器５１は動き情報ＭＶ１とＭＶ２を加算し、探索範囲決定器５２は加算結果からフレームデータＦ３とフレームデータＦ１が重複する部分の位置情報を算出し、セレクタ５７に出力する。
【００５５】
図４にて、時刻ｔ＋２では、フレームデータＦ３に対して、動き情報ＭＶ２によってフレームデータＦ２の太線で囲まれた範囲と動き情報ＭＶ２とＭＶ１によってフレームデータＦ１の太線で囲まれた範囲が探索範囲となる。
【００５６】
セレクタ５７は探索範囲決定器５０の出力がフレームメモリ１１に対する結果と判定して探索範囲設定器７に、探索範囲決定器５２の出力がフレームメモリ１０に対する結果と判定して、探索範囲設定器６に入力する。
【００５７】
このように、過去の動き情報に従って、順に入力フレームデータに対する動きベクトル探索範囲を決定していく。
【００５８】
図４において、時刻ｔ＋４にて、入力されたフレームデータはＦ５である。また、参照される参照されるフレームメモリ１０にフレームデータＦ１、フレームメモリ１１にフレームデータＦ２、フレームメモリ１２にフレームデータＦ３、フレームメモリ１３にフレームデータＦ４が格納されたものとする。
【００５９】
カメラ動き検出器３から動き情報ＭＶ４が入力され、このとき、動き情報メモリ４には時刻ｔの動き情報ＭＶ０、時刻ｔ＋１の動き情報ＭＶ１、時刻ｔ＋２の動き情報ＭＶ２、時刻ｔ＋３の動き情報ＭＶ３が入っている。
【００６０】
探索範囲決定器５０は動き情報からフレームデータＦ５とフレームデータＦ４が重複する部分の位置情報を算出し、セレクタ５７に出力する。
【００６１】
動き情報加算器５１は動き情報ＭＶ３とＭＶ４を加算し、探索範囲決定器５２は加算結果からフレームデータＦ５とフレームデータＦ２が重複する部分の位置情報を算出し、セレクタ５７に出力する。
【００６２】
動き情報加算器５３は動き情報ＭＶ２、ＭＶ３、ＭＶ４を加算し、探索範囲決定器５４は加算結果からフレームデータＦ５とフレームデータＦ２が重複する部分の位置情報を算出し、セレクタ５７に出力する。
【００６３】
動き情報加算器５５は動き情報ＭＶ１、ＭＶ２、ＭＶ３、ＭＶ４を加算し、探索範囲決定器５６は加算結果からフレームデータＦ５とフレームデータＦ２が重複する部分の位置情報を算出し、セレクタ５７に出力する。但し、この時、フレームデータＦ１とＦ５では重複する部分は存在しないという結果となった。
【００６４】
図４にて、時刻ｔ＋４では、フレームデータＦ５に対して、動き情報ＭＶ４によってフレームデータＦ４の太線で囲まれた範囲、動き情報ＭＶ４とＭＶ３によってフレームデータＦ３の太線で囲まれた範囲、動き情報ＭＶ４、ＭＶ３、ＭＶ２によってフレームデータＦ２の太線で囲まれた範囲が探索範囲となる。
【００６５】
セレクタ５７は探索範囲決定器５０の出力がフレームメモリ１３に対する結果と判定して探索範囲設定器９に入力する。また、探索範囲決定器５２の出力がフレームメモリ１２に対する結果と判定して、探索範囲設定器８に入力する。また、探索範囲決定器５４の出力がフレームメモリ１１に対する結果と判定して、探索範囲設定器７に入力する。また、探索範囲決定器５６の出力がフレームメモリ１１に対する結果と判定して、探索範囲設定器６に入力する。
【００６６】
図１に戻って、探索範囲設定器６、７、８、９に入力された探索範囲に対して、フレームメモリ１０、１１、１２、１３の上のアドレスに探索範囲を設定する。
【００６７】
最小誤差演算器１４、１５、１６，１７はフレームメモリ２１の入力フレームデータから切出されたブロックに対して、それぞれの探索範囲内で、例えばブロックマッチング法を用いて、最小誤差を求め、最小誤差とその位置を動きベクトル演算器１８に出力する。
【００６８】
動きベクトル演算器１８は各最小誤差演算器の出力から、最小誤差から最も小さい誤差の参照フレームを決定し、決定した参照フレームとその位置から動きベクトルを算出する。ここで、最小誤差演算器１４〜１７は、フレームメモリ２１からフレームデータを入力し、この入力したフレームデータを所定のブロックに分割し、分割したブロック毎のそれぞれの探索範囲内で、ブロックマッチング法により最小誤差を求めている。最小誤差演算器１４〜１７によるフレームデータを入力し、所定のブロックに分割する処理は、本発明でいう入力手段とブロック分割手段との処理に対応する。
【００６９】
以下、Ｈ．２６４符号化方式のインターフレーム符号化に従って、予測器２２で動き補償を行ない、その予測誤差を変換／量子化器２４に、求めるために用いた参照画素値を加算器２９に出力する。
【００７０】
変換／量子化器２４は、整数型直交変換を実行し、得られる係数を量子化する。その量子化結果である量子化係数は、係数符号化器２７と逆量子化／逆変換器２５に入力される。
【００７１】
逆量子化／逆変換器２５では、入力された量子化結果から復号画像を得て、加算器２９に入力する。加算器２９は予測器２２から参照画素値を入力して加算し、フレームメモリ３０の該当するブロックの位置に格納する。
【００７２】
係数符号化器２７では、入力された量子化結果をエントロピー符号化し、符号化データは出力器２８に入力される。また、動き符号化器２６は動きベクトル演算器１８から出力される、選択された参照フレームの情報と動きベクトルを符号化する。
【００７３】
出力器２８は入力された符号化モード、係数の符号化結果、動きベクトル符号化結果をＨ．２６４符号化方式の書式に適合するように整形して出力する。1フレーム分の符号化が終了したら、フレームメモリ３０の内容をフレームメモリ１０から１３のうち、データが格納されていないフレームメモリまたは最も古いフレームデータを格納しているフレームメモリに上書きする。
【００７４】
図４においては、フレームデータＦ１が格納されていた部分に上書きされる。最後に、カメラ動き検出器３で検出されたカメラの動き情報はカメラ動き情報メモリ４の空いている部分か、最も古いフレームの動き情報に上書きされる。図４の時刻ｔ＋４においては、動き情報ＭＶ０が格納されていた部分に上書きされる。以上の動画像符号化の処理を簡単な流れを、図５を用いて説明する。
【００７５】
図５は、第１の実施の形態に係る動画像符号化装置における動画符号化処理を示すフローチャートである。
【００７６】
まずステップＳ１にて、符号化するシーケンスのヘッダ情報を生成して符号化する。ステップＳ２にて、全てのフレームの符号化が終了したか否かを判定する。
【００７７】
終了している場合（ステップＳ２でＹＥＳ）、処理を終了する。一方、終了していない場合（ステップＳ２でＮＯ）、ステップＳ３に進む。
【００７８】
ステップＳ３にて、符号化対象のフレームデータを入力する。ステップＳ４にて、カメラの動き情報を検出する。
【００７９】
ステップＳ５にて、符号化モードがイントラフレームモードかインターフレームモードかを判定し、イントラフレームモードであれば、ステップＳ６に、インターフレームモードであれば、ステップＳ７に進む。
【００８０】
ステップＳ６にて、Ｈ．２６４符号化方式のイントラ符号化方式に従って符号化され、ステップＳ９に進む。
【００８１】
ステップＳ７にて、各参照フレームに対して、過去の動き情報から探索範囲を決定する。ステップＳ８にて、設定された探索範囲の中で動き補償を行ないながら、Ｈ．２６４符号化方式のインター符号化方式に従って符号化する。
【００８２】
ステップＳ９にて、復号画像を以後のフレームの動き補償に使用するため、フレームメモリに格納する。ステップＳ１０にて、検出された最新の動き情報を格納して、ステップＳ２に進む。
【００８３】
このような一連の選択動作により、カメラの動きに応じて、動きベクトルが正しく抽出される領域に動きベクトルの探索範囲を限定することが可能になる。そして、その探索範囲を効率よく狭めることによって動きベクトル探索の処理量を大幅に減じることが出来、処理の高速化、消費電力の軽減といった効果がある。
【００８４】
なお、本実施の形態においてはカメラの動きの検出をカメラ動き検出器を用いて検出したがこれに限定されず、たとえば、入力された画像データからカメラの動きを検出してももちろん構わない。
【００８５】
例えば、画像全体の数点の位置の動きベクトル探索を行ない、画像全体の大まかな動きを検出した結果を用いてももちろんかまわない。
【００８６】
また、前方向予測のための動きベクトル探索のみを例にとって説明したが、符号化によっては後方向予測、両方向予測のための動きベクトル探索に用いる場合でもフレームメモリを必要数備えることで対応できることは明らかである。
【００８７】
また、本実施の形態の各部または全部の機能をソフトウェアで記述し、ＣＰＵ等の演算装置によって処理をさせてももちろんかまわない。
【００８８】
（第２の実施の形態）
図６は、本発明の第２の実施の形態に係る動画像符号化装置の全体を示すブロック図である。なお、図６において第１実施の形態の図１と同様の機能を果たす部分に関しては同じ番号を付与し、説明を省略する。
【００８９】
１０１は本発明を表す動きベクトル探索装置である。１０２は各フレームの探索範囲を算出して探索範囲を制御する探索範囲制御部である。
【００９０】
１２０はズームレンズを備えたカメラの撮像部であり、1フレーム分の画像データをフレームデータとして出力する撮像部である。
【００９１】
１０３は撮像部１２０のズームレンズの制御器（不図示）からズーム値を動き情報として出力するズーム値検出器である。１０４はズーム値をフレーム毎に保管しておくズーム値メモリである。ここで、ズーム値検出器１０３は、本発明でいう構図情報取得手段及びズーム情報取得手段に対応する。また、ズーム値メモリ１０４は、本発明でいう構図情報格納手段に対応する。
【００９２】
１０５はズーム値検出器１０３とズーム値メモリ１０４に格納された各フレームのズーム値から、各フレームの探索範囲を演算する探索範囲演算器である。
【００９３】
１０６、１０７、１０８、１０９は探索範囲設定器であり、探索範囲演算器１０５から出力される探索範囲に従って、各フレームデータの格納されたフレームメモリを制御する。ここで、探索範囲演算器１０５及び探索範囲設定器１０６〜１０９は、本発明でいう、構図情報を基にフレームデータの参照可能な範囲を制御する制御手段に対応する。
【００９４】
１３１は検出したズーム値から連続して縮小されている場合に探索する範囲を制限する有効探索範囲演算器である。この有効探索範囲演算器１３１は、本発明でいう動きベクトル探索対象範囲制御手段に対応する。
【００９５】
１２１は1フレーム分の入力フレームデータを格納するフレームメモリである。１２２はイントラ予測、インター予測を行ない、予測誤差とその参照画素データを出力する予測器である。
【００９６】
次に、図６の動画像符号化装置の動画像符号化動作について、以下に説明する。第１の実施の形態と同様に符号化に先立ち、ヘッダ情報を出力器２８から出力する。
【００９７】
画像データは、撮像部２０から画像データがフレーム単位で入力され、フレームメモリ１２１に格納される。また、これに同期して、ズーム値検出器３はカメラのズーム値を検出する。
【００９８】
カメラのズーム値としては標準を１とし、その倍数で表す場合を例にとって説明するが、これに限定されない。例えば、焦点距離で５０ｍｍが標準であれば、焦点距離３００ｍｍは６、２４ｍｍは０．４８となる。
【００９９】
符号化モード設定器２３がイントラフレームモードを選択した場合について最初に説明する。
【０１００】
動きベクトル探索装置１０１の各探索範囲設定器、探索範囲演算器１０５、有効探索範囲演算器１３１、各最小誤差演算器、動きベクトル演算器１８の動作を停止する。
【０１０１】
フレームメモリ１２１から切出されたブロックデータは順次、予測器１２２に入力される。予測器１２２ではＨ．２６４符号化方式のイントラ予測を行ない、その予測誤差を変換／量子化器２４に、参照画素値を加算器２９に出力する。
【０１０２】
変換／量子化器２４は、整数型直交変換、量子化を行ない、係数符号化器２７と逆量子化／逆変換器２５に入力される。逆量子化／逆変換器２５では、入力された量子化結果から復号画像を得て、加算器２９に入力する。
【０１０３】
加算器２９は予測器１２２から参照画素値を入力して加算し、フレームメモリ３０の該当するブロックの位置に格納する。
【０１０４】
係数符号化器２７では、量子化結果をエントロピー符号化し、出力器２８に入力される。また、動き符号化器２６はイントラフレームモードの時は動作しない。出力器２８は入力された符号化モード、係数の符号化結果をＨ．２６４符号化方式の書式に適合するように整形して出力する。
【０１０５】
１フレーム分の符号化が終了したら、フレームメモリ３０の内容をフレームメモリ１０から１３のうち、データが格納されていないフレームメモリまたは最も古いフレームデータを格納しているフレームメモリに上書きする。
【０１０６】
最後に、ズーム値検出器１０３で検出されたカメラのズーム値はズーム値メモリ１０４の空いている部分か、最も古いフレームのズーム値に上書きされる。
【０１０７】
次に符号化モード設定器２３でインターフレームモードを選択した場合について説明する。
【０１０８】
イントラフレームモードと同様にフレームデータがフレームメモリ１２１に格納され、同期してズーム値がズーム値検出器１０３で検出される。検出されたズーム値は探索範囲制御部１０２の探索範囲演算器１０５と有効探索範囲演算器１３１に入力される。
【０１０９】
図７に探索範囲演算器１０５の詳細なブロック図を示す。図７において第１の実施の形態の図２と同様の機能を果たす部分に関しては同じ番号を付与し、説明を省略する。
【０１１０】
１５０、１５２、１５４、１５６は動き情報、特に入力されたズーム値に関する情報を入力して、動きベクトル探索を行なう範囲を決定する探索範囲決定器である。
【０１１１】
１５１、１５３、１５５、１５７はズーム値除算器である。ズーム値除算器は、ズーム値検出器１０３とズーム値メモリ１０４からズーム値を大きい値を小さい値で除算したズーム比とズーム値メモリ１０４から読み出したズーム値でズーム値検出器１０３から入力されたズーム値を除算して拡大率を求める。そして、求めた拡大率を各参照フレームに対する入力されたフレームとのズーム値に関する情報とする。
【０１１２】
１６０は参照フレームと入力フレームのズーム値で参照フレーム自体の参照の可否を決定するための最大ズーム比を設定する最大ズーム比設定器である。ここでは、説明のために最大ズーム比をαとして説明する。なお、最大ズーム比αは、本発明でいう制御手段が用いる所定の値に対応する。
【０１１３】
例えば、この最大ズーム比は処理を行なう処理量、使用するレンズの解像度性能等で決定される。
【０１１４】
この探索範囲演算器１０５の動作を図８及び図９を用いて説明する。図８は入力されたフレームの時刻とフレームデータを表した図である。
【０１１５】
フレームの時刻がｔからｔ＋１、ｔ＋２、ｔ＋３、ｔ＋４と進むにつれ、フレームデータＦ１０１、フレームデータＦ１０２、フレームデータＦ１０３、フレームデータＦ１０４、フレームデータＦ１０５と入力される。これらのフレームに対してズーム値がＺ０、Ｚ１、Ｚ２、Ｚ３、Ｚ４であったとする。
【０１１６】
図８において、時刻ｔ＋１にて、入力されたフレームデータはＦ１０２であり、参照されるフレームメモリ１０にフレームデータＦ１０１のみが格納されているとする。ズーム値検出器１０３からズーム値Ｚ１が入力される。
【０１１７】
このとき、ズーム値メモリ１０４には時刻ｔのズーム値Ｚ０が入っている。図７に戻って、データ線１７０を介してズーム値Ｚ１が、データ線１７１を介してズーム値Ｚ０がズーム値除算器１５１に入力される。
【０１１８】
ズーム値除算器１５１はズーム値Ｚ０とＺ１の大きい値から小さい値を除算してズーム比Ｚ０１を算出し、ズーム値Ｚ１からズーム値Ｚ０を除算して拡大率Ｅ０１を算出する。算出されたズーム比Ｚ０１と拡大率Ｅ０１は探索範囲決定器１５０に入力される。
【０１１９】
探索範囲決定器１５０は最大ズーム比設定器１６０で設定された最大ズーム比αと比較し、ズーム値Ｚ０１が最大ズーム比α以下であれば、拡大率Ｅ０１からフレームデータＦ１０１の中でフレームデータＦ１０２に対する重複する部分の位置情報を算出する。そして算出した値を、セレクタ５７に出力する。
【０１２０】
図９にて、時刻ｔ＋１では、フレームデータＦ１０２に対して、フレームデータＦ１０１の太線で囲まれた範囲が探索範囲となる。
【０１２１】
セレクタ５７は探索範囲決定器１５０の出力がフレームメモリ１０に対する結果と判定して、探索範囲設定器１０６に入力する。
【０１２２】
続いて、図８において、時刻ｔ＋２にて、入力されたフレームデータはＦ１０３であり、フレームメモリ１０にフレームデータＦ１０１が格納され、フレームメモリ１１にフレームデータＦ１０２が格納されたものとする。ズーム値検出器１０３からズーム値Ｚ２が入力される。このとき、ズーム値メモリ１０４には時刻ｔのズーム値Ｚ０と時刻ｔ＋１のズーム値Ｚ１が入っている。
【０１２３】
図７に戻って、データ線１７０を介してズーム値Ｚ２が、データ線１７１を介してズーム値Ｚ１がズーム値除算器１５１に入力される。
【０１２４】
ズーム値除算器１５１はズーム値Ｚ１とＺ２の大きい値から小さい値を除算してズーム比Ｚ１２を算出し、ズーム値Ｚ１からズーム値Ｚ０を除算して拡大率Ｅ１２を算出する。算出されたズーム比Ｚ１２と拡大率Ｅ１２は探索範囲決定器１５０に入力される。
【０１２５】
探索範囲決定器１５０はズーム比Ｚ１２を最大ズーム比設定器１６０で設定された最大ズーム比αと比較し、ズーム値Ｚ１２が最大ズーム比α以下であれば拡大率Ｅ１２からフレームデータＦ１０３とフレームデータＦ１０２が重複する部分の位置情報を算出する。そして、セレクタ５７に出力する。
【０１２６】
もし、ズーム比１２が最大ズーム比αより大きかった、換言すれば最大ズーム比を超えた場合、本参照フレームは動き探索を行なわないとして、フレーム全体を探索範囲から除外する。同時に、図７に戻って、データ線１７０を介してズーム値Ｚ２が、データ線１７２を介してズーム値Ｚ０がズーム値除算器１５３に入力される。
【０１２７】
ズーム値Ｚ０とＺ２の大きい値から小さい値を除算してズーム比Ｚ０２を算出し、ズーム値Ｚ２からズーム値Ｚ０を除算して拡大率Ｅ０２を算出する。算出されたズーム比Ｚ０２と拡大率Ｅ０２は探索範囲決定器１５２に入力される。
【０１２８】
探索範囲決定器１５２はズーム比Ｚ０２と最大ズーム比αと比較し、ズーム比Ｚ０２が最大ズーム比α以下であれば、拡大率Ｅ１２からフレームデータＦ１０３とフレームデータＦ１０１が重複する部分の位置情報を算出し、セレクタ５７に出力する。
【０１２９】
もし、ズーム比Ｚ０２が最大ズーム比αより大きかった場合、本参照フレームは動き探索を行なわないとして、フレーム全体を探索範囲から除外する。
【０１３０】
図９にて、時刻ｔ＋２では、フレームデータＦ１０３に対して、拡大率Ｅ１２によってフレームデータＦ１０２の太線で囲まれた範囲と拡大率Ｅ０２によってフレームデータＦ１０１の太線で囲まれた範囲が探索範囲となる。
【０１３１】
セレクタ５７は探索範囲決定器１５０の出力がフレームメモリ１１に対する結果と判定して探索範囲設定器１０７に、探索範囲決定器１５２の出力がフレームメモリ１０に対する結果と判定して、探索範囲設定器１０６に入力する。
【０１３２】
図９にて、時刻ｔ＋２では、フレームデータＦ１０３に対して、拡大率Ｅ１２によってフレームデータＦ１０２の太線で囲まれた範囲と拡大率Ｅ０２によってフレームデータＦ１０１の太線で囲まれた範囲が探索範囲となる。
【０１３３】
セレクタ５７は探索範囲決定器１５０の出力がフレームメモリ１１に対する結果と判定して探索範囲設定器１０７に、探索範囲決定器１５２の出力がフレームメモリ１０に対する結果と判定して、探索範囲設定器１０６に入力する。
【０１３４】
図７に戻り、予測誤差が予測器１２２で求められ、最終的に出力器２８から符号化データが出力され、フレームメモリ３０に復号画像データが格納される。フレームメモリ３０の復号画像は動き補償のための参照フレームデータになるので、フレームメモリ１０〜１３のいずれかに格納される。
【０１３５】
このように、入力されたズーム値と過去のズーム値に従って、順に入力フレームデータに対する動きベクトル探索範囲を決定していく。
【０１３６】
図８において、時刻ｔ＋４にて、入力されたフレームデータはＦ１０５であり、参照されるフレームメモリ１０にフレームデータＦ１０１に格納されたものとする。また、フレームメモリ１１にフレームデータＦ１０２、フレームメモリ１２にフレームデータＦ１０３、フレームメモリ１３にフレームデータＦ１０４が格納されたものとする。
【０１３７】
図７に戻って、データ線１７０を介してズーム値Ｚ４が、データ線１７１を介してズーム値Ｚ３がズーム値除算器１５１に入力される。
【０１３８】
ズーム値除算器１５１はズーム値Ｚ４とＺ３の大きい値から小さい値を除算してズーム比Ｚ３４を算出し、ズーム値Ｚ４からズーム値Ｚ３を除算して拡大率Ｅ３４を算出する。算出されたズーム比Ｚ３４と拡大率Ｅ３４は探索範囲決定器１５０に入力される。
【０１３９】
探索範囲決定器１５０はズーム比Ｚ３４を最大ズーム比設定器１６０で設定された最大ズーム比αと比較し、ズーム値Ｚ３４が最大ズーム比α以下であれば拡大率Ｅ３４からフレームデータＦ１０５とフレームデータＦ１０４が重複する部分の位置情報を算出する。そして、セレクタ５７に出力する。
【０１４０】
もし、ズーム比１２が最大ズーム比αより大きかった場合、本参照フレームは動き探索を行なわないとして、フレーム全体を探索範囲から除外する。同時に、図７に戻って、データ線１７０を介してズーム値Ｚ４が、データ線１７２を介してズーム値Ｚ２がズーム値除算器１５３に入力される。
【０１４１】
ズーム値除算器１５３はズーム値Ｚ４とＺ２の大きい値から小さい値を除算してズーム比Ｚ２４を算出し、ズーム値Ｚ４からズーム値Ｚ２を除算して拡大率Ｅ２４を算出する。算出されたズーム比Ｚ２４と拡大率Ｅ２４は探索範囲決定器１５２に入力される。
【０１４２】
探索範囲決定器１５２はズーム比Ｚ２４と最大ズーム比αと比較し、ズーム比Ｚ２４が最大ズーム比α以下であれば、探索範囲決定器１５２は拡大率Ｅ２４からフレームデータＦ１０５とフレームデータＦ１０３が重複する部分の位置情報を算出する。そして、算出した値をセレクタ５７に出力する。
【０１４３】
さらに、図７に戻って、データ線１７０を介してズーム値Ｚ４が、データ線１７３を介してズーム値Ｚ１がズーム値除算器１５５に入力される。
【０１４４】
ズーム値除算器１５５はズーム値Ｚ４とＺ１の大きい値から小さい値を除算してズーム比Ｚ１４を算出し、ズーム値Ｚ４からズーム値Ｚ１を除算して拡大率Ｅ１４を算出する。算出されたズーム比Ｚ１４と拡大率Ｅ１４は探索範囲決定器１５４に入力される。
【０１４５】
探索範囲決定器１５４はズーム比Ｚ１４と最大ズーム比αと比較し、ズーム比Ｚ１４が最大ズーム比α以上であるので、該当するフレームメモリの探索を行なわないため、探索範囲が無いことをセレクタ５７に出力する。
【０１４６】
さらに、図７に戻って、データ線１７０を介してズーム値Ｚ４が、データ線１７４を介してズーム値Ｚ０がズーム値除算器１５７に入力される。
【０１４７】
ズーム値除算器１５７はズーム値Ｚ４とＺ０の大きい値から小さい値を除算してズーム比Ｚ０４を算出し、ズーム値Ｚ４からズーム値Ｚ０を除算して拡大率Ｅ０４を算出する。算出されたズーム比Ｚ０４と拡大率Ｅ０４は探索範囲決定器１５６に入力される。
【０１４８】
探索範囲決定器１５６はズーム比Ｚ０４と最大ズーム比αと比較し、ズーム比Ｚ０４が最大ズーム比α以上であるので、該当するフレームメモリの探索を行なわないため、探索範囲が無いことをセレクタ５７に出力する。
【０１４９】
図９にて、時刻ｔ＋４では、フレームデータＦ１０５に対して、拡大率Ｅ３４によってフレームデータＦ１０４の太線で囲まれた範囲と、拡大率Ｅ２４によってフレームデータＦ１０３の太線で囲まれた範囲が探索範囲となる。
【０１５０】
フレームＦ１０２とフレームＦ１０１については拡大率Ｅ１４、Ｅ０４に従えば点線の領域であるが、ズーム比が最大ズーム比αを上回ったため、全く参照されない。
【０１５１】
セレクタ５７は探索範囲決定器１５０の出力がフレームメモリ１３に対する結果と判定して探索範囲設定器１０９に入力する。また、探索範囲決定器１５２の出力がフレームメモリ１２に対する結果と判定して探索範囲設定器１０８に入力する。また、探索範囲決定器１５４の出力がフレームメモリ１１に対する結果と判定して探索範囲設定器１０７に入力する。また、探索範囲決定器１５６の出力がフレームメモリ１０に対する結果と判定して探索範囲設定器１０６に入力する。
【０１５２】
図７に戻り、予測誤差が予測器１２２で求められ、最終的に出力器２８から符号化データが出力され、フレームメモリ３０に復号画像データが格納される。
【０１５３】
フレームメモリ３０の復号画像は動き補償のための参照フレームデータになるので、フレームメモリ１０〜１３の中で最も古い参照フレーム、この場合はフレームＦ１０１が格納されていた領域に格納される。
【０１５４】
図６に戻り、検出されたズーム値は探索範囲制御部１０２の有効探索範囲演算器１３１に入力される。図１０に有効探索範囲演算器１３１の詳細なブロック図を示す。
【０１５５】
同図において、１８０、１８１、１８２、１８３は拡大率を算出するズーム値除算器である。１８４、１８５、１８６、１８７は入力された拡大率が１以上か否かを判定し、1以上であれば、０をそうでなければ、その値を出力する拡大率比較器である。
【０１５６】
１８８は探索範囲設定器であり、入力された値が０の値がなければ、その最大値を算出し、その最大値に基づいて、入力フレームデータと他の全フレームデータが重複する部分の位置情報を算出する。
【０１５７】
この有効探索範囲演算器１３１の動作を図１１及び図１２を用いて説明する。図１１は入力されたフレームの時刻とフレームデータを表した図である。
【０１５８】
フレームの時刻がｔからｔ＋１、ｔ＋２、ｔ＋３、ｔ＋４と進むにつれ、フレームデータＦ２０１、フレームデータＦ２０２、フレームデータＦ２０３、フレームデータＦ２０４、フレームデータＦ２０５と入力される。これらのフレームに対してズーム値がＺ０、Ｚ１、Ｚ２、Ｚ３、Ｚ４であったとする。
【０１５９】
図１２において、時刻ｔ＋１にて、入力されたフレームデータはＦ２０２であり、参照されるフレームメモリ１０にフレームデータＦ２０１のみが格納されているとする。ズーム値検出器１０３からズーム値Ｚ１が入力される。このとき、ズーム値メモリ１０４には時刻ｔのズーム値Ｚ０が入っている。
【０１６０】
図１０に戻って、データ線１９０を介してズーム値Ｚ１が、データ線１９１を介してズーム値Ｚ０がズーム値除算器１８０に入力される。ズーム値除算器１８０はズーム値Ｚ１からズーム値Ｚ０を除算して拡大率Ｅ０１を算出する。算出された拡大率Ｅ０１は拡大率比較器１８４に入力される。
【０１６１】
拡大率比較器１８４は入力された拡大率Ｅ０１が１よりも大きいか否かを判定する。１よりも大きければ０を、そうでなければ、その値を探索範囲設定器１８８に入力する。
【０１６２】
探索範囲設定器１８８は何れの値も０で無い場合、すなわち、拡大率Ｅ０１が０でなければ拡大率Ｅ０１からフレームデータＦ２０２の中でフレームデータＦ２０１に対する重複する部分の位置情報を算出し、図６のフレームメモリ１２１に出力する。
【０１６３】
図１２にて、時刻ｔ＋１では、フレームデータＦ２０１に対して、フレームデータＦ２０２の一点鎖線で囲まれた範囲が有効探索範囲となる。
【０１６４】
図１２において、時刻ｔ＋２にて、入力されたフレームデータはＦ２０３であり、フレームメモリ１０にフレームデータＦ２０１、フレームメモリ１１にフレームデータＦ２０２が格納されているとする。ズーム値検出器１０３からズーム値Ｚ２が入力される。このとき、ズーム値メモリ１０４には時刻ｔのズーム値Ｚ０、時刻ｔ＋１のズーム値Ｚ１が入っている。
【０１６５】
図１０に戻って、データ線１９０を介してズーム値Ｚ２、データ線１９１を介してズーム値Ｚ１がズーム値除算器１８０に入力される。
【０１６６】
ズーム値除算器１８０はズーム値Ｚ２からズーム値Ｚ１を除算して拡大率Ｅ１２を算出する。算出された拡大率Ｅ１２は拡大率比較器１８４に入力される。
【０１６７】
拡大率比較器１８４は入力された拡大率Ｅ１２が１よりも大きいか否かを判定する。１よりも大きければ０を、そうでなければ、その値を探索範囲設定器１８８に入力する。
【０１６８】
データ線１９０を介してズーム値Ｚ２、データ線１９２を介してズーム値Ｚ０がズーム値除算器１８１に入力される。ズーム値除算器１８１はズーム値Ｚ２からズーム値Ｚ０を除算して拡大率Ｅ０２を算出する。算出された拡大率Ｅ０２は拡大率比較器１８５に入力される。
【０１６９】
拡大率比較器１８５は入力された拡大率Ｅ０２が１よりも大きいか否かを判定する。１よりも大きければ０を、そうでなければ、その値を探索範囲設定器１８８に入力する。
【０１７０】
探索範囲設定器１８８は何れの値も０で無い場合、すなわち、拡大率Ｅ１２と拡大率Ｅ０２がともに０でなければ拡大率Ｅ１２と拡大率Ｅ０２の大きい値からフレームデータＦ２０３の中でフレームデータＦ２０１及びフレームデータＦ２０２に対する重複する部分の位置情報を算出し、図６のフレームメモリ１２１に出力する。
【０１７１】
一方、何れかの値が０であれば、入力フレームデータ全体が有効探索範囲になる。
【０１７２】
図１２にて、時刻ｔ＋２では、ズーム値Ｚ２を２、ズーム値Ｚ１を３、ズーム値Ｚ０を４とすると、拡大率Ｅ１２は２／３、拡大率Ｅ０２は２／４となり、拡大率Ｅ１２が大きい。そのため、フレームデータＦ２０２に対して、フレームデータＦ２０３の一点鎖線で囲まれた範囲が有効探索範囲となる。
【０１７３】
このように、入力されたズーム値と過去のズーム値に従って、順に入力フレームデータに対する有効探索範囲を決定していく。有効探索範囲はフレームメモリ１２１に出力される。
【０１７４】
図６に戻って、第１の実施の形態と同様に、探索範囲設定器１０６、１０７、１０８、１０９に入力された探索範囲に対して、フレームメモリ１０、１１、１２、１３の上のアドレスに探索範囲を設定する。
【０１７５】
また、有効探索範囲演算器１３１から有効探索範囲がフレームメモリ１２１に入力され、予測器１２２で有効探索範囲のみに動きベクトル探索が施される。
【０１７６】
第１の実施の形態と同様に最小誤差演算器１４、１５、１６、１７はフレームメモリ１２１の入力フレームデータから切出されたブロックに対して、それぞれの探索範囲内で、最小誤差を求め、最小誤差とその位置を動きベクトル演算器１８に出力する。
【０１７７】
以下、第１の実施の形態と同様に、動きベクトル演算器１８が動きベクトルを算出し、Ｈ．２６４符号化方式のインターフレーム符号化に従って、予測器１２２で動き補償を行なう。そして、その予測誤差を変換／量子化器２４、逆量子化／逆変換器２５、加算器２９で復号画像を得て、フレームメモリ３０の該当するブロックの位置に格納する。
【０１７８】
係数符号化器２７では、入力された量子化結果をエントロピー符号化し、符号化データは出力器２８に入力される。また、動き符号化器２６は動きベクトル演算器１８から出力される、選択された参照フレームの情報と動きベクトルを符号化する。
【０１７９】
出力器２８は入力された符号化モード、係数の符号化結果、動きベクトル符号化結果をＨ．２６４符号化方式の書式に適合するように整形して出力する。
【０１８０】
１フレーム分の符号化が終了したら、フレームメモリ３０の内容をフレームメモリ１０から１３のうち、データが格納されていないフレームメモリまたは最も古いフレームデータを格納しているフレームメモリに上書きする。図９の時刻ｔ＋４においては、フレームデータＦ１０１が格納されていた部分に上書きされる。
【０１８１】
最後に、カメラ動き検出器３で検出されたズーム値はズーム値メモリ１０４の空いている部分か、最も古いフレームの動き情報に上書きされる。
【０１８２】
図９の時刻ｔ＋４においては、ズーム値Ｚ０が格納されていた部分に上書きされる。以上、動画像符号化の処理を簡単な流れを、図１３を用いて説明する。
【０１８３】
図１３は、第２の実施の形態に係る動画像符号化装置における動画符号化処理を示すフローチャートである。なお、図１３において第１の実施の形態の図５と同様の機能を果たす部分に関しては同じ番号を付与し、説明を省略する。
【０１８４】
ステップＳ１からステップＳ３では、シーケンスヘッダの生成と符号化、符号化対象のフレームデータを入力が行われる。
【０１８５】
ステップＳ１０１にて、カメラからズーム値を検出する。
【０１８６】
ステップＳ５にて、符号化モードがイントラフレームモードかインターフレームモードかを判定する。
【０１８７】
ステップＳ６にて、Ｈ．２６４符号化方式のイントラ符号化方式に従って符号化され、ステップＳ９に進む。
【０１８８】
ステップＳ１０２にて、各参照フレームに対して、入力ズーム値と過去のズーム値から探索範囲を決定する。
【０１８９】
ステップＳ１０３にて、入力ズーム値と過去のズーム値から入力フレームに対して有効探索範囲を決定する。
【０１９０】
ステップＳ８にて、設定された探索範囲の中で動き補償を行ないながら、Ｈ．２６４符号化方式のインター符号化方式に従って符号化する。
【０１９１】
ステップＳ９にて、復号画像を以後のフレームの動き補償に使用するため、フレームメモリに格納する。
【０１９２】
ステップＳ１０４にて、検出された最新のズーム値を格納して、ステップＳ２に進む。このような一連の選択動作により、カメラのズーム値によって動きベクトルが正しく抽出される領域に動きベクトルの探索範囲を限定することが可能になる。即ち、その探索範囲を効率よく狭めることによって動きベクトル探索の処理量を大幅に減じることが出来、処理の高速化、消費電力の軽減といった効果がある。
【０１９３】
さらに、動きベクトルを行なう領域自体を限定することが可能になり、処理量を減じることが可能になった。
【０１９４】
特にＨ．２６４符号化方式のようにイントラ符号化でも予測符号化を行なう方式においては、イントラ符号化と判定されても符号化効率が高い。そのため、予め動きベクトル探索の対象の範囲外をイントラ符号化とすることで、無駄な動きベクトル探索を行なわなくても良く、処理量を大幅に削減することが可能になるのである。
【０１９５】
なお、本実施の形態においては、カメラのズーム値の検出をズーム値検出器を用いて検出したがこれに限定されず、たとえば、入力された画像データからカメラの動き検出したり、ズームの制御コマンドから補間して求めたりしてももちろん構わない。
【０１９６】
また、本実施の形態においては、カメラのズーム値を保持して過去のフレームの参照領域を決定したが、これに限定されず、例えば、前のフレームとのズーム比を保持して決定しても構わない。
【０１９７】
また、前方向予測のための動きベクトル探索のみを例にとって説明したが、符号化によっては後方法予測、両方向予測のための動きベクトル探索に用いる場合でもフレームメモリを必要数備えることで対応できることは明らかである。
【０１９８】
また、本実施の形態の各部または全部の機能をソフトウェアで記述し、ＣＰＵ等の演算装置によって処理をさせてももちろんかまわない。
【０１９９】
（第３の実施の形態）
＜パンニングとズーミング＞
図１４は、本発明の第３の実施に係る動画像符号化装置の構成を示すブロック図である。図１４において、３００は装置全体の制御、及び種々の処理を行なう中央演算装置（ＣＰＵ）、３０１は本装置の制御に必要なオペレーティングシステム（ＯＳ）、ソフトウェア、演算に必要な記憶領域を提供するメモリである。
【０２００】
３０２は種々の装置をつなぎ、データ、制御信号をやり取りするバスである。３０３は装置の起動、各種条件の設定、再生の指示を行なうための端末である。３０４はソフトウェアを蓄積する記憶装置である。３０５はストリームを蓄積する記憶装置である。記憶装置３０４及び３０５はシステムから切り離して移動できるメディアで構成することも出来る。
【０２０１】
３０７はＣＰＵから制御可能な雲台であり、３０６は雲台３０７に載せられ、ＣＰＵから制御可能なズームレンズを備えたビデオカメラであり、１フレームずつの画像データを撮影すると同時に、焦点距離の情報を出力する。
【０２０２】
３０８は画像を表示するモニタであり、３１０は通信回路であり、ＬＡＮ、公衆回線、無線回線、放送電波等で構成されている。３０９は通信回路３１０を介してストリームを送受信する通信インターフェースである。
【０２０３】
メモリ３０１には、装置全体を制御し、各種ソフトウェアを動作させるためのＯＳや動作させるソフトウェアを格納し、画像データを格納する画像エリアが存在する。更には、生成した符号化データを格納する符号エリア、各種演算や符号化の際のパラメータ等を格納しておくワーキングエリアが存在する。
【０２０４】
このような構成において動画像符号化処理について説明する。処理に先立ち、端末３０３から装置全体に対して起動が指示され、各部が初期化される。すると記憶装置３０４に格納されているソフトウェアがバス３０２を介してメモリ３０１に展開され、ソフトウェアが起動される。
【０２０５】
メモリ３０１のメモリの使用、格納状況を図１５に示す。メモリ３０１内には複数のソフトウェアが格納されている。ＯＳは、装置全体を制御し、各種ソフトウェアを動作させるためものである。動画像符号化ソフトウェアは、Ｈ．２６４符号化方式を実行する。カメラ制御ソフトウェアは、カメラ３０６、雲台３０７を制御し、それぞれの状態を取得する。動きベクトル探索ソフトウェアは、カメラ制御ソフトウェア、動画像符号化ソフトウェアで使用する動きベクトルを決定する。このような構成において、ＣＰＵ３００による動画像符号化装置の制御について、図１６を用いて説明する。
【０２０６】
図１６は本発明の第３の実施の形態に係る動画像符号化装置が実行する処理を示すフローチャートである。
【０２０７】
まずステップＳ２０１にて、動画像符号化ソフトウェアは符号化するシーケンスのヘッダ情報を生成して符号化し、メモリ３０１上の符号エリアに格納する。通信ソフトウェアは、メモリ３０１上の符号エリアに符号化データが格納されたら、通信インターフェース３０８を介して通信回線３０９に送出し、送出後、符号エリアの該当する領域をクリアする。以後、特に、符号エリアの符号化データの送信については言及しない。
【０２０８】
ステップＳ２０２にて、端末３０３から終了の指示が入力されたか否かを判定する。終了が指示された場合（ステップＳ２０２でＹＥＳ）、処理を終了する。一方、終了していない場合（ステップＳ２０２でＮＯ）、ステップＳ２０３に進む。
【０２０９】
ステップＳ２０３にて、端末３０３からカメラの制御コマンド、例えば、雲台３０７の首振りによるパンニング・チルト、カメラ３０６のレンズのズーミング等である。これらが入力された場合、カメラ制御プログラムは順次指示を実行する。
【０２１０】
ステップＳ２０４にて、カメラ制御プログラムは符号化対象のフレームデータを入力し、メモリ３０１上の画像エリアに格納する。
【０２１１】
ステップＳ２０５にて、カメラ制御プログラムは雲台３０７からカメラの動き情報を検出し、メモリ３０１上のワーキングエリアに格納する。この時、動き情報として、カメラの角度の変化量から画面上での動きベクトルを求め、動き情報とする。
【０２１２】
ステップＳ２０６にて、カメラ制御プログラムはカメラ３０６からズーム値を検出し、メモリ３０１上のワーキングエリアに格納する。この時、ズーム値は第２の実施の形態と同様に焦点距離から算出される。
【０２１３】
ステップＳ２０７にて、符号化モードがイントラフレームモードかインターフレームモードかを判定する。
【０２１４】
ステップＳ２０８にて、動画像符号化ソフトウェアはＨ．２６４符号化方式のイントラ符号化方式に従って符号化され、ステップＳ２１２に進む。
【０２１５】
ステップＳ２０９にて、動きベクトル探索ソフトウェアは各参照フレームに対して、入力ズーム値と過去のズーム値から探索範囲と有効探索範囲を決定する。
【０２１６】
図１７、及び図１８にステップＳ２０９の詳細な処理をフローチャートで示す。ステップＳ２５０にて、変数ｘに０を代入する。
【０２１７】
ステップＳ２５１にて、最新のズーム値Ｚ（Ｒ）を入力し、メモリ３０１上のワーキングエリアに格納する。
【０２１８】
ステップＳ２５２にて、変数ｘが参照するフレーム枚数Ｒに達したか否かを判定し、達している場合（ステップＳ２５２でＹＥＳ）、図１８のステップＳ２６１に進み、達していない場合（ステップＳ２５２でＮＯ）、ステップＳ２５３に進む。
【０２１９】
ステップＳ２５３にて、ｘフレーム前のズーム値Ｚ（ｘ）をメモリ３０１上のワーキングエリアから読み出し、最新のズーム値であるＺ（Ｒ）とともに読み出し、比較する。ズーム値Ｚ（ｘ）がズーム値Ｚ（Ｒ）以下であった場合（ステップＳ２５３でＹＥＳ）、ステップＳ２５４に進み、より大きい場合（ステップＳ２５３でＮＯ）、ステップＳ２５５に進む。
【０２２０】
ステップＳ２５４にて、入力フレームとｘフレーム前のフレームのズーム比Ｚ（ｘ）（Ｒ）を次式（１）式に従って算出し、ステップＳ２５６に進む。
【０２２１】
Ｚ（ｘ）（Ｒ）＝  Ｚ（Ｒ）/Ｚ（ｘ）・・・（１）
【０２２２】
ステップＳ２５５にて、入力フレームとｘフレーム前のフレームのズーム比Ｚ（ｘ）（Ｒ）を次式（２）式に従って算出し、ステップＳ２５６に進む。
【０２２３】
Ｚ（ｘ）（Ｒ）＝  Ｚ（ｘ）/Ｚ（Ｒ）・・・（２）
【０２２４】
ステップＳ２５６にて、入力フレームとｘフレーム前のフレームの拡大率Ｅ（ｘ）（Ｒ）を次式（３）式に従って算出し、ステップＳ２５６に進む。
【０２２５】
Ｅ（ｘ）（Ｒ）＝  Ｚ（Ｒ）/Ｚ（ｘ）・・・（３）
【０２２６】
ステップＳ２５７にて、ズーム比Ｚ（ｘ）（Ｒ）と最大ズーム比αと比較し、最大ズーム比αより大きければ、ステップＳ２５８に進み、そうでなければステップＳ２５９に進む。
【０２２７】
ステップＳ２５８にて、入力フレームより（ｘ＋１）フレーム前のフレームは参照しないこととし、探索範囲を０とし、ステップＳ２６０に進む。
【０２２８】
ステップＳ２５９にて、拡大率Ｅ（ｘ）（Ｒ）に基づいて、入力フレームに対する（ｘ＋１）フレーム前の探索範囲を設定する。設定された探索範囲の情報、例えば探索範囲の左上と右下の画面上の座標をメモリ３０１上のワーキングエリアにそれぞれのフレーム毎に格納する。
【０２２９】
ステップＳ２６０にて、変数ｘに1を加え、ステップＳ２５２に戻る。ステップＳ２５２にて、変数ｘが参照するフレーム枚数Ｒに達した場合、図１８に進む。
【０２３０】
ステップＳ２６１にて、変数ｙに０を代入する。
【０２３１】
ステップＳ２６２にて、拡大率１未満で最大の拡大率を求めるための変数Ｅｍａｘに０を代入する。
【０２３２】
ステップＳ２６３にて、変数ｙが参照するフレーム枚数Ｒに達したか否かを判定し、達している場合（ステップＳ２６３でＹＥＳ）、ステップＳ２６８に進み、達していない場合（ステップＳ２６３でＮＯ）、ステップＳ２６４に進む。
【０２３３】
ステップＳ２６４にて、ｙフレーム前の拡大率Ｅ（ｙ）（Ｒ）が１より大きいか否かを判定し、１以上であればステップＳ２６９に進み、そうでなければステップＳ２６５に進む。
【０２３４】
ステップＳ２６５にて、変数Ｅｍａｘと拡大率Ｅ（ｙ）（Ｒ）を比較し、変数Ｅｍａｘが拡大率Ｅ（ｙ）（Ｒ）以上であればステップＳ２６７に進み、そうでなければステップＳ２６６に進む。
【０２３５】
ステップＳ２６６にて、変数Ｅｍａｘに拡大率Ｅ（ｙ）（Ｒ）を代入して更新する。
【０２３６】
ステップＳ２６７にて、変数ｙに１を加え、ステップＳ２６３に戻る。
【０２３７】
ステップＳ２６８にて、変数Ｅｍａｘに基づき、入力されたフレームデータＦ（Ｒ）の有効探索範囲を設定し、ズーム値による探索範囲と有効探索範囲の算出を終了し、図１６のステップＳ２１０に進む。
【０２３８】
ステップＳ２６９にて、入力されたフレームデータＦ（Ｒ）全体を有効探索範囲として設定し、ズーム値による探索範囲と有効探索範囲の算出を終了し、図１６のステップＳ２１０に進む。
【０２３９】
図１６に戻り、ステップＳ２１０にて、動き情報と過去の動き情報から入力フレームに対して探索範囲を決定する。
【０２４０】
図１９にステップＳ２１０の詳細な処理をフローチャートで示す。ステップＳ２８１にて、変数ｘに０を代入する。
【０２４１】
ステップＳ２８２にて、最新の動きベクトルＭＶ（Ｒ）を入力し、メモリ３０１上のワーキングエリアに格納する。ステップＳ２８３にて、変数ＭＶに動きベクトルＭＶ（Ｒ）を代入する。
【０２４２】
ステップＳ２８４にて、入力されたフレームの１フレーム前のフレーム（Ｆ（Ｒ―１））の探索範囲に対して、動き情報ＭＶで1フレーム前のフレームデータの中で入力フレームの有効探索範囲に対する重複する部分の位置情報を算出する。そして、位置情報をメモリ３０１上のワーキングエリアに格納する。
【０２４３】
ステップＳ２８５にて、変数ｘに１を加える。
【０２４４】
ステップＳ２８６にて、変数ｘが参照するフレーム枚数Ｒに達したか否かを判定し、達している場合（ステップＳ２８６でＹＥＳ）、動き情報による探索範囲の算出を終了し、図１６のステップＳ２１１に進む。達していない場合（ステップＳ２８６でＮＯ）、ステップＳ２８７に進む。
【０２４５】
ステップＳ２８７にて、変数ＭＶに対して（ｘ＋１）フレーム前の動きベクトルＭＶ（Ｒ−ｘ−１）を加算する。
【０２４６】
ステップＳ２８８にて、入力されたフレームの（ｘ＋１）フレーム前のフレーム（Ｆ（Ｒ―ｘ―１））の探索範囲に対して、動き情報ＭＶで（ｘ＋１）フレーム前のフレームデータの中で入力フレームの有効探索範囲に対する重複する部分の位置情報を算出する。そして、位置情報をメモリ３０１上のワーキングエリアに格納する。ステップＳ２８９にて、変数ｘに1を加え、ステップＳ２８６に戻る。
【０２４７】
図１６に戻り、ステップＳ２１１にて、メモリ３０１上のワーキングエリアに格納された有効設定範囲と探索範囲から動き補償を行ないながら、Ｈ．２６４符号化方式のインター符号化方式に従って符号化し、メモリ３０１上の符号エリアに格納する。
【０２４８】
ステップＳ２１２にて、復号画像を以後のフレームの動き補償に使用するため、メモリ３０１上の画像エリアの所定の領域に格納する。
【０２４９】
ステップＳ２１３にて、検出された最新のズーム値と動き情報をメモリ３０１上のワーキングエリアの空き領域又は最も古いデータの領域に格納して、ステップＳ２０２に進む。
【０２５０】
ステップＳ２０２にて、端末３０３から終了の指示が入力されたら、全てのソフトウェアを停止し、使用したメモリを解放する。
【０２５１】
このような一連の選択動作により、カメラの動き情報、ズーム等の情報によって、動きベクトルが正しく抽出される領域に動きベクトルの探索範囲を限定することが可能になる。即ち、その探索範囲を効率よく狭めることによって動きベクトル探索の処理量を大幅に減じることが出来、処理の高速化、消費電力の軽減といった効果がある。
【０２５２】
なお、本実施の形態においては、カメラのズーム値の検出動き情報を、カメラの制御コマンドの結果から判定したがこれに限定されず、たとえば、入力された画像データからカメラの動き検出してももちろん構わない。
【０２５３】
また、前方向予測のための動きベクトル探索のみを例にとって説明したが、符号化によっては後方法予測、両方向予測のための動きベクトル探索に用いる場合でもフレームメモリを必要数備えることで対応できることは明らかである。
【０２５４】
また、本実施の形態の各部または全部の機能をハードウェアで構成して処理をさせてももちろんかまわない。本実施の形態では通信ソフトウェアを起動し、符号化データを通信回線３０９に送信する例について説明したが、記憶装置３０５に格納してももちろんかまわない。なお、本実施の形態において、有効探索範囲を全参照フレームに対して１つを設定したが、これに限定されず、各フレームに対応して、個別に設けても構わない。
【０２５５】
なお、本発明を実現するために、上述した実施形態の機能を実現するソフトウェアのプログラムコード（コンピュータプログラム）を記録した記録媒体を用いても良い。この場合には記録媒体をシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読み出し実行することによって本発明の目的が達成される。
【０２５６】
この場合、記録媒体から読み出されたプログラムコード自体が上述した実施形態の機能を実現することになり、プログラムコード自体及びそのプログラムコードを記憶した記録媒体は本発明を構成することになる。
【０２５７】
プログラムコードを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。
【０２５８】
また、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（基本システム或いはオペレーティングシステム）等が実際の処理の一部又は全部を行う場合も含まれることは言うまでもない。
【０２５９】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれてもよい。この場合には、書き込まれたプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部又は全部を行ってもよい。
【図面の簡単な説明】
【０２６０】
【図１】本発明の第１の実施の形態に係る動きベクトル探索装置を用いた動画像符号化装置の構成を示すブロック図である。
【図２】本発明の第１の実施の形態に係る探索範囲演算器の詳細な構成を示すブロック図である。
【図３】本発明の第１の実施の形態に係るフレームデータの入力の様子を表す図である。
【図４】本発明の第１の実施の形態に係るフレームデータの探索範囲の制限の様子を表す図である。
【図５】本発明の第１の実施の形態に係る動画符号化装置における動画像符号化動作を示すフローチャートである。
【図６】本発明の第２の実施の形態に係る動きベクトル探索装置を用いた動画像符号化装置の構成を示すブロック図である。
【図７】本発明の第２の実施の形態に係る探索範囲演算器の詳細な構成を示すブロック図である。
【図８】本発明の第２の実施の形態に係るフレームデータの入力の様子を表す図である。
【図９】本発明の第２の実施の形態に係るフレームデータの探索範囲の制限の様子を表す図である。
【図１０】本発明の第２の実施の形態に係る有効探索範囲演算器の詳細な構成を示すブロック図である。
【図１１】本発明の第２の実施の形態に係るフレームデータの入力の様子を表す図である。
【図１２】本発明の第２の実施の形態に係るフレームデータの有効探索範囲の制限の様子を表す図である。
【図１３】本発明の第２の実施の形態に係る動画符号化装置における動画像符号化動作を示すフローチャートである。
【図１４】本発明の第３の実施の形態に係る動きベクトル探索方式を用いた動画像符号化装置の構成を示すブロック図である。
【図１５】本発明の第３の実施の形態に係る動画符号化装置の有するメモリ内のメモリの使用、格納状況を表す図である。
【図１６】本発明の第３の実施の形態に係る動画符号化装置における動画像符号化動作を示すフローチャートである。
【図１７】本発明の第３の実施の形態に係る動画符号化装置におけるズーム値による探索範囲算出動作を示すフローチャートである。
【図１８】本発明の第３の実施の形態に係る動画符号化装置におけるズーム値による有効探索範囲算出動作を示すフローチャートである。
【図１９】本発明の第３の実施の形態に係る動画符号化装置における動き情報による探索範囲算出動作を示すフローチャートである。
【図２０】従来例としての動画像符号化装置の構成を示すブロック図である。
【符号の説明】
【０２６１】
１、１０１  動きベクトル探索装置
２、１０２  探索範囲制御部
３  カメラ動き検出器
４  カメラ動き情報メモリ
５、１０５  探索範囲演算器
６、７、８、９、１０６、１０７、１０８、１０９  探索範囲設定器
１０、１１、１２、１３、２１、３０、１２１、１００７、１００８、１００９、１０１０  フレームメモリ
１４、１５、１６、１７  最小誤差演算器
１８  動きベクトル演算器
２０、１２０  撮像部
２２、１２２  予測器
２３  符号化モード設定器
２４  変換／量子化器
２５  逆量子化／逆変換器
２６  動き符号化器
２７  係数符号化器
２８  出力器
２９  加算器
５０、５２、５４、５６、１５０、１５２、１５４、１５６  探索範囲決定器
５１、５３、５５  動き情報加算器
５７  セレクタ
７０、７１、７２、７３、１７０、１７１、１７２、１７３，１７４、１９０、１９１、１９２、１９３、１９４  信号線
１０３  ズーム値検出器
１０４  ズーム値メモリ
１６０  最大ズーム比設定器
１３１  有効探索範囲演算器
１５１、１５３、１５５、１５７、１８０、１８１、１８２、１８３  ズーム値除算器
１８４、１８５、１８６、１８７  拡大率比較器
１８８  探索範囲設定器
３００  ＣＰＵ
３０１  メモリ
３０２  バス
３０３  端末
３０４、３０５  記憶装置
３０６  カメラ
３０７  雲台
３０８  モニタ
３０９  通信インターフェース
３１０  通信回線
【図１】
2008211508.tif 000003
【図２】
2008211508.tif 000004
【図３】
2008211508.tif 000005
【図４】
2008211508.tif 000006
【図５】
2008211508.tif 000007
【図６】
2008211508.tif 000008
【図７】
2008211508.tif 000009
【図８】
2008211508.tif 000010
【図９】
2008211508.tif 000011
【図１０】
2008211508.tif 000012
【図１１】
2008211508.tif 000013
【図１２】
2008211508.tif 000014
【図１３】
2008211508.tif 000015
【図１４】
2008211508.tif 000016
【図１５】
2008211508.tif 000017
【図１６】
2008211508.tif 000018
【図１７】
2008211508.tif 000019
【図１８】
2008211508.tif 000020
【図１９】
2008211508.tif 000021
【図２０】
2008211508.tif 000022