(57)【特許請求の範囲】
【請求項１】
符号化対象画像と参照画像との間の動きベクトルを小数画素単位で検出する動きベクトル検出手段と、前記動きベクトル検出手段によって検出された動きベクトルに従って動き補償を行う動き補償手段とを有する動画像符号化装置であって、
前記動きベクトル検出手段は、
フレームメモリに記憶されている参照画像の整数画素位置の画素値を読み出して記憶する記憶手段と、
前記記憶手段に記憶された整数画素位置の画素値を用いて、所定のタップ数のフィルタによって小数画素位置の画素値を補間生成する第１の補間画素生成手段と、
前記記憶手段に記憶された整数画素位置の画素値を用いて、前記第１の補間画素生成手段よりも少ないタップ数のフィルタによって小数画素位置の画素値を補間生成する第２の補間画素生成手段と、
前記第１及び第２の補間画素生成手段の何れかにより生成された小数画素位置の画素値を、小数画素精度の参照画像を形成するための画素値として選択する補間画素選択手段と、
前記補間画素選択手段によって選択された画素値から、前記小数画素単位での動きベクトル検出で用いる小数画素精度の参照画像を形成する参照画像形成手段とを有し、
前記記憶手段に記憶された整数画素位置の画素値を用いた整数画素を単位とした動きベクトル検出から、段階的に検出精度を変えて小数画素を単位とした動きベクトルの検出を行うものであって、
前記動きベクトル検出手段が小数画素を単位とした動きベクトル検出を行う際には、
前記補間画素選択手段は、前記記憶手段に記憶されている整数画素位置の画素値のみでは前記第１の補間画素生成手段による補間処理ができない場合に、前記第１の補間画素生成手段によって生成された小数画素位置の画素値に替えて、前記第２の補間画素生成手段によって生成された小数画素位置の画素値を選択するよう切り替えることを特徴とする動画像符号化装置。
【請求項２】
前記動きベクトル検出手段は、整数画素単位で動きベクトルの粗探索を行った後、前記粗探索により検出された動きベクトルの周辺を小数画素単位で動きベクトルの密探索を行い、前記粗探索により検出された動きベクトルに応じて、前記密探索で使用する小数画素精度の参照画像を形成するための補間画素を、前記補間画素選択手段により前記第１及び第２の補間画素生成手段の中から選択することを特徴とする請求項１に記載の動画像符号化装置。
【請求項３】
前記動きベクトル検出手段は、整数画素単位で動きベクトルの粗探索を行った後、前記粗探索により検出された動きベクトルの周辺を小数画素単位で動きベクトルの密探索を行い、前記フレームメモリのデータバスの使用率に応じて、前記密探索で使用する小数画素精度の参照画像を形成するための補間画素を、前記補間画素選択手段により前記第１及び第２の補間画素生成手段の中から選択することを特徴とする請求項１に記載の動画像符号化装置。
【請求項４】
前記粗探索のためにフレームメモリから読み出した整数画素位置の参照画像データを記憶媒体に記憶し、
前記密探索で用いる小数画素単位の参照画像は、前記記憶媒体に記憶されている画像データのみを用いて生成することを特徴とする請求項２に記載の動画像符号化装置。
【請求項５】
符号化対象画像と参照画像との間の動きベクトルを小数画素単位で検出する動きベクトル検出工程と、前記動きベクトル検出工程によって検出された動きベクトルに従って動き補償を行う動き補償工程とを有する動画像符号化方法であって、
前記動きベクトル検出工程は、
フレームメモリに記憶されている参照画像の整数画素位置の画素値を読み出して記憶する記憶工程と、
前記記憶工程に記憶された整数画素位置の画素値を用いて、所定のタップ数のフィルタによって小数画素位置の画素値を補間生成する第１の補間画素生成工程と、
前記記憶工程において記憶された整数画素位置の画素値を用いて、前記第１の補間画素生成工程よりも少ないタップ数のフィルタによって小数画素位置の画素値を補間生成する第２の補間画素生成工程と、
前記第１及び第２の補間画素生成工程の何れかにより生成された小数画素位置の画素値を、小数画素精度の参照画像を形成するための画素値として選択する補間画素選択工程と、
前記補間画素選択工程によって選択された画素値から、前記小数画素単位での動きベクトル検出で用いる小数画素精度の参照画像を形成する参照画像形成工程とを有し、
前記記憶工程において記憶された整数画素位置の画素値を用いた整数画素を単位とした動きベクトル検出から、段階的に検出精度を変えて小数画素を単位とした動きベクトルの検出を行う方法であって、
前記動きベクトル検出工程が小数画素を単位とした動きベクトル検出を行う際には、
前記補間画素選択工程は、前記記憶工程において記憶されている整数画素位置の画素値のみでは前記第１の補間画素生成工程による補間処理ができない場合に、前記第１の補間画素生成工程によって生成された小数画素位置の画素値に替えて、前記第２の補間画素生成工程において生成された小数画素位置の画素値を選択するよう切り替えることを特徴とする動画像符号化方法。
【請求項６】
符号化対象画像と参照画像との間の動きベクトルを小数画素単位で検出する動きベクトル検出工程と、前記動きベクトル検出工程によって検出された動きベクトルに従って動き補償を行う動き補償工程とを有する動画像符号化方法の各工程をコンピュータに実行させるコンピュータプログラムであって、
前記動きベクトル検出工程は、
フレームメモリに記憶されている参照画像の整数画素位置の画素値を読み出して記憶する記憶工程と、
前記記憶工程に記憶された整数画素位置の画素値を用いて、所定のタップ数のフィルタによって小数画素位置の画素値を補間生成する第１の補間画素生成工程と、
前記記憶工程において記憶された整数画素位置の画素値を用いて、前記第１の補間画素生成工程よりも少ないタップ数のフィルタによって小数画素位置の画素値を補間生成する第２の補間画素生成工程と、
前記第１及び第２の補間画素生成工程の何れかにより生成された小数画素位置の画素値を、小数画素精度の参照画像を形成するための画素値として選択する補間画素選択工程と、
前記補間画素選択工程によって選択された画素値から、前記小数画素単位での動きベクトル検出で用いる小数画素精度の参照画像を形成する参照画像形成工程とを有し、
前記記憶工程において記憶された整数画素位置の画素値を用いた整数画素を単位とした動きベクトル検出から、段階的に検出精度を変えて小数画素を単位とした動きベクトルの検出を行う方法であって、
前記動きベクトル検出工程が小数画素を単位とした動きベクトル検出を行う際には、
前記補間画素選択工程は、前記記憶工程において記憶されている整数画素位置の画素値のみでは前記第１の補間画素生成工程による補間処理ができない場合に、前記第１の補間画素生成工程によって生成された小数画素位置の画素値に替えて、前記第２の補間画素生成工程において生成された小数画素位置の画素値を選択するよう切り替えることをコンピュータに実行させることを特徴とするコンピュータプログラム。
【請求項７】
請求項６に記載のコンピュータプログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は動画像符号化装置及び動画像符号化方法に関し、特に、動画像を圧縮符号化して記録するカメラ一体型動画像記録装置に用いて好適な技術に関する。
【背景技術】
【０００２】
従来、例えば被写体を撮影し、それにより得られた動画像を圧縮符号化して記録するカメラ一体型動画像記録装置として、デジタルビデオカメラがよく知られている。近年は、ランダムアクセス性などの利便性が高いため、記録媒体が従来の磁気テープからディスク媒体や半導体メモリなどに移り変わってきている。しかし、一般にディスク媒体などは記憶容量が少なく、より高能率に圧縮符号化する必要がある。
【０００３】
また、高画質への期待から、より情報量の多いハイビジョン映像を扱うデジタルビデオカメラの開発が行われており、このように別の観点からも、より高能率な圧縮符号化が望まれている。高能率な圧縮符号化について、現在はMPEGが標準方式としてよく用いられている。
【０００４】
さらに近年では、記録媒体への記録可能時間のさらなる向上や、携帯端末向けにより低ビットレートでの符号化の必要性が高まってきており、さらに高能率な符号化が研究されている。そのなかの１つがＨ．２６４であり、ＭＰＥＧ２やＭＰＥＧ４などの従来の符号化方式に比べ、符号化や復号化により多くの演算量が必要となるが、より高い符号化効率が実現されることが知られている。
【０００５】
Ｈ．２６４では、符号化効率を上げるために、１／４画素精度など高い画素精度で動き予測・補償処理が行われる。この動き予測・補償処理において、フレームメモリから整数画素精度の画像データ読み出し、補間処理をして小数画素精度の画素値を生成し、前記生成した小数画素精度の画像データを用いて動き予測・補償処理が行われる。また、補間処理は、より高精度な補間信号を生成するため、高次のフィルタリングによって行われる。Ｈ．２６４の演算方法については、例えば、特許文献１にて開示されている。
【０００６】
【特許文献１】特開２００４−５６８２７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、前述したように、補間処理は高次のフィルタリングによって行われるため、フレームメモリから画像データを読み出す頻度が非常に高くなる。これにより、バンド幅の広い大規模かつ高価なフレームメモリが必要になったり、消費電力が大きくなったりするという問題点があった。
【０００８】
本発明は前述の問題点にかんがみ、動き検出に必要なバンド幅を低減して省電力化を図ることができるようにすることを目的とする。
【課題を解決するための手段】
【０００９】
本発明の動画像符号化装置は、符号化対象画像と参照画像との間の動きベクトルを小数画素単位で検出する動きベクトル検出手段と、前記動きベクトル検出手段によって検出された動きベクトルに従って動き補償を行う動き補償手段とを有する動画像符号化装置であって、前記動きベクトル検出手段は、フレームメモリに記憶されている参照画像の整数画素位置の画素値を読み出して記憶する記憶手段と、前記記憶手段に記憶された整数画素位置の画素値を用いて、所定のタップ数のフィルタによって小数画素位置の画素値を補間生成する第１の補間画素生成手段と、前記記憶手段に記憶された整数画素位置の画素値を用いて、前記第１の補間画素生成手段よりも少ないタップ数のフィルタによって小数画素位置の画素値を補間生成する第２の補間画素生成手段と、前記第１及び第２の補間画素生成手段の何れかにより生成された小数画素位置の画素値を、小数画素精度の参照画像を形成するための画素値として選択する補間画素選択手段と、前記補間画素選択手段によって選択された画素値から、前記小数画素単位での動きベクトル検出で用いる小数画素精度の参照画像を形成する参照画像形成手段とを有し、前記記憶手段に記憶された整数画素位置の画素値を用いた整数画素を単位とした動きベクトル検出から、段階的に検出精度を変えて小数画素を単位とした動きベクトルの検出を行うものであって、前記動きベクトル検出手段が小数画素を単位とした動きベクトル検出を行う際には、前記補間画素選択手段は、前記記憶手段に記憶されている整数画素位置の画素値のみでは前記第１の補間画素生成手段による補間処理ができない場合に、前記第１の補間画素生成手段によって生成された小数画素位置の画素値に替えて、前記第２の補間画素生成手段によって生成された小数画素位置の画素値を選択するよう切り替えることを特徴とする。
【００１０】
本発明の動画像符号化方法は、符号化対象画像と参照画像との間の動きベクトルを小数画素単位で検出する動きベクトル検出工程と、前記動きベクトル検出工程によって検出された動きベクトルに従って動き補償を行う動き補償工程とを有する動画像符号化方法であって、前記動きベクトル検出工程は、フレームメモリに記憶されている参照画像の整数画素位置の画素値を読み出して記憶する記憶工程と、前記記憶工程に記憶された整数画素位置の画素値を用いて、所定のタップ数のフィルタによって小数画素位置の画素値を補間生成する第１の補間画素生成工程と、前記記憶工程において記憶された整数画素位置の画素値を用いて、前記第１の補間画素生成工程よりも少ないタップ数のフィルタによって小数画素位置の画素値を補間生成する第２の補間画素生成工程と、前記第１及び第２の補間画素生成工程の何れかにより生成された小数画素位置の画素値を、小数画素精度の参照画像を形成するための画素値として選択する補間画素選択工程と、前記補間画素選択工程によって選択された画素値から、前記小数画素単位での動きベクトル検出で用いる小数画素精度の参照画像を形成する参照画像形成工程とを有し、前記記憶工程において記憶された整数画素位置の画素値を用いた整数画素を単位とした動きベクトル検出から、段階的に検出精度を変えて小数画素を単位とした動きベクトルの検出を行う方法であって、前記動きベクトル検出工程が小数画素を単位とした動きベクトル検出を行う際には、前記補間画素選択工程は、前記記憶工程において記憶されている整数画素位置の画素値のみでは前記第１の補間画素生成工程による補間処理ができない場合に、前記第１の補間画素生成工程によって生成された小数画素位置の画素値に替えて、前記第２の補間画素生成工程において生成された小数画素位置の画素値を選択するよう切り替えることを特徴とする。
【００１１】
本発明のコンピュータプログラムは、符号化対象画像と参照画像との間の動きベクトルを小数画素単位で検出する動きベクトル検出工程と、前記動きベクトル検出工程によって検出された動きベクトルに従って動き補償を行う動き補償工程とを有する動画像符号化方法の各工程をコンピュータに実行させるコンピュータプログラムであって、前記動きベクトル検出工程は、フレームメモリに記憶されている参照画像の整数画素位置の画素値を読み出して記憶する記憶工程と、前記記憶工程に記憶された整数画素位置の画素値を用いて、所定のタップ数のフィルタによって小数画素位置の画素値を補間生成する第１の補間画素生成工程と、前記記憶工程において記憶された整数画素位置の画素値を用いて、前記第１の補間画素生成工程よりも少ないタップ数のフィルタによって小数画素位置の画素値を補間生成する第２の補間画素生成工程と、前記第１及び第２の補間画素生成工程の何れかにより生成された小数画素位置の画素値を、小数画素精度の参照画像を形成するための画素値として選択する補間画素選択工程と、前記補間画素選択工程によって選択された画素値から、前記小数画素単位での動きベクトル検出で用いる小数画素精度の参照画像を形成する参照画像形成工程とを有し、前記記憶工程において記憶された整数画素位置の画素値を用いた整数画素を単位とした動きベクトル検出から、段階的に検出精度を変えて小数画素を単位とした動きベクトルの検出を行う方法であって、前記動きベクトル検出工程が小数画素を単位とした動きベクトル検出を行う際には、前記補間画素選択工程は、前記記憶工程において記憶されている整数画素位置の画素値のみでは前記第１の補間画素生成工程による補間処理ができない場合に、前記第１の補間画素生成工程によって生成された小数画素位置の画素値に替えて、前記第２の補間画素生成工程において生成された小数画素位置の画素値を選択するよう切り替えることをコンピュータに実行させることを特徴とする。
【００１２】
本発明の記録媒体は、前記に記載のコンピュータプログラムを記録したことを特徴とする。
【発明の効果】
【００１３】
本発明によれば、符号化効率を大幅に落とすことなく、省電力化が図れる動画像符号化装置を提供することができる。
【発明を実施するための最良の形態】
【００１４】
（第１の実施形態）
以下、本発明の実施形態を、図面を参照して説明する。
図２は、本発明に係る動画像符号化装置の構成例を示すブロック図である。
図２において、本実施形態の動画像符号化装置は、レンズやCCD等のカメラ部を含む撮像部１０１、動きベクトル検出回路１０２、動き補償回路１０８、減算器１０３、DCT（直交変換）回路１０４を有する。
【００１５】
また、量子化回路１０５、可変長符号化回路１０６、記録部１０７、記録媒体１０９、符号量制御回路１１０、逆量子化回路１１１、IDCT（逆直交変換）回路１１２、加算器１１３、表示部１１７、フレームメモリ１１８を備えている。
【００１６】
そして、符号量制御回路１１０をはじめとする各構成部の動作は、図示していないシステムコントローラによって制御されるようになされている。すなわち、このシステムコントローラは装置全体の動作制御を司るものであり、図示していない操作部からの必要に応じたユーザからの指示によっても、装置全体の動作制御を行うようになされている。
【００１７】
撮像部１０１にて撮像して得られた画像信号は、第１フレーム、第２フレーム、第３フレーム、・・・の順で、フレームメモリ１１８に順次格納されていく。フレームメモリ１１８からは、例えば、第３フレーム、第１フレーム、第２フレーム、・・・などの、符号化を行う順序で画像データを取り出していく。
【００１８】
本実施形態で行う符号化には、フレーム内の画像データのみで符号化する"イントラ符号化"と、フレーム間予測も含めて符号化する"インター符号化"とがある。インター符号化は、動き補償の単位（ＭＣブロック）に対して１枚の参照フレームとの予測を行うＰピクチャと、ＭＣブロックに対して２枚までの参照フレームとの予測を行うＢピクチャとがある。なお、イントラ符号化を行うピクチャをIピクチャという。符号化するフレームの順番が入力されたフレームの順番と異なるのは、時間的に未来のフレームとの予測（後方予測）を可能にするためである。
【００１９】
イントラ符号化がなされる場合に行われる処理の概略を図５のフローチャートを参照しながら説明する。
符号化単位となるブロックの画像データはフレームメモリ１１８から読み出されて（ステップＳ５０１）、直交変換回路１０４で直交変換が施される（ステップＳ５０２）。直交変換回路１０４の出力である変換係数は量子化回路１０５において量子化処理される（ステップＳ５０３）。量子化回路１０５の出力である量子化された変換係数は可変長符号化回路１０６において可変長符号化がなされ（ステップＳ５０４）、その後、記録部１０７によって記録媒体への記録信号が生成され（ステップＳ５０５）、記録媒体１０９へ記録される（ステップＳ５０６）。
【００２０】
前述した各処理において、量子化回路１０５における量子化係数は、可変長符号化回路１０６が発生した符号量のフィードバックなどから符号量制御回路１１０が算出する。また、量子化回路１０５の出力である量子化された変換係数は、逆量子化回路１１１において逆量子化され、逆直交変換回路１１２において逆直交変換処理が施されて復号された画像信号となり、その画像信号はフレームメモリ１１８に記憶される。
【００２１】
一方、インター符号化がなされる場合、符号化単位となるブロックの画像データはフレームメモリ１１８から読み出されて、動きベクトル検出回路１０２へ入力される。同時に、動きベクトル検出回路１０２は、フレームメモリ１１８から参照画像を読み出し、符号化画像と参照画像から動きベクトルを検出する。
【００２２】
動き補償回路１０８は、前記動きベクトルに従って動き補償を行って予測画像を生成する。符号化画像と予測画像との差分は減算器１０３によって計算されて差分画像が生成される。生成された差分画像は直交変換回路１０４に出力され、その他の処理は前述のイントラ符号化の場合と同様である。
【００２３】
次に、動きベクトル検出回路１０２の動作について詳細に説明する。
図１は、第１の実施形態に係る動画像符号化装置が備える動きベクトル検出回路１０２の構成例を示すブロック図である。
【００２４】
図１に示すように、動きベクトル検出回路１０２は、符号化ブロックの画像データを記憶する符号化ブロックバッファ２０１、参照画像の画像データを記憶する検出範囲バッファ２０２、整数画素精度でベクトル検出を行う単画素精度ベクトル検出回路２０３を有する。
【００２５】
また、１／２画素精度でベクトル検出を行う半画素精度ベクトル検出回路２０８、半画素精度でベクトル検出を行う際に使用する、半画素精度画像を生成する第１の半画素精度画像生成回路２０５を有する。
【００２６】
さらに、第１の半画素精度画像生成回路２０５とは異なる手法で半画素精度画像を生成する第２の半画素精度画像生成回路２０６を有している。ここでは例えば、第１の半画素精度画像生成回路２０５は６タップフィルタによる半画素精度画像生成回路であり、第２の半画素精度画像生成回路２０６は２タップフィルタによる半画素精度画像生成回路である。これらの他に、第１のスイッチ２０４、第２のスイッチ２０７によって構成されている。
【００２７】
例えば、水平１６画素、垂直１６画素の符号化ブロックの動きベクトルを検出する場合の処理手順の一例を図６のフローチャートを参照しながら説明する。
先ず、水平１６画素、垂直１６画素の符号化ブロックがフレームメモリ１１８から読み出されて、符号化ブロックバッファ２０１へ記憶される（ステップＳ６０１）。一方で、動きベクトルの検出範囲を水平・垂直ともに±４画素とすると、水平２４画素、垂直２４画素の参照画像は、フレームメモリ１１８から読み出されて、検出範囲バッファ２０２へ記憶される（ステップＳ６０２）。
【００２８】
単画素精度ベクトル検出回路２０３は、前記符号化ブロックバッファ２０１に記憶されている符号化ブロックと、もっとも相関の強いブロックを、前記検出範囲バッファ２０２に記憶されている参照画像の範囲でブロックマッチングにより検出し、もっとも相関の強いブロックの座標から、単画素精度の動きベクトルを検出する（ステップＳ６０３）。
【００２９】
次に、半画素精度の参照画像を生成する（ステップＳ６０４）。この半画素精度の参照画像は、後述するように、単画素精度の画像データから補間処理によって生成する。そして、この半画素精度の参照画像は半画素精度ベクトル検出回路２０８に出力される。
【００３０】
また、ステップＳ６０４において生成された単画素精度の動きベクトルも、半画素精度ベクトル検出回路２０８へ出力される。本実施形態においては、半画素精度ベクトル検出回路２０８は、単画素精度で検出された動きベクトルの周辺範囲のみ半画素精度でベクトル検出を行う（ステップＳ６０５）。次に、ステップＳ６０６に進み、前記ステップＳ６０５において検出された動きベクトルに従って動き補償を行う。
【００３１】
本実施形態において、特徴的な動きベクトル検出の動作を、図３を用いて説明する。
図３は、動きベクトル検出動作を説明するためのイメージ図である。図３の２０２は検出範囲バッファであり、符号化ブロックに対して水平、垂直ともに８画素分大きい範囲の参照画像データが記憶されている。符号化ブロックの大きさは図中の点線で表している。
【００３２】
また、点線は動きベクトル（０，０）の位置を示している。単画素精度のベクトル検出の範囲は図中の黒丸で表している。なお、黒丸で表しているのは、ブロックの左上の画素位置である。ブロックの左上が黒丸となる参照画像のブロックと、符号化ブロックとの各画素の差分絶対値の総和を算出し、その差分絶対値和が最小となるブロック位置から単画素精度の動きベクトルを検出する。例えば、図３に示す矢印３０１が単画素精度の動きベクトルとして検出される。
【００３３】
次に、半画素精度のベクトル検出は、前述の単画素精度の動きベクトルを中心として、水平、垂直ともに±０．５画素の範囲で検出する。図中では白丸で表している。白丸のポイントで同様にブロックマッチングを行い、例えば矢印３０２が検出された半画素精度の動きベクトルとなる。
【００３４】
ところで、半画素精度の動きベクトル検出のためには、半画素精度の参照画像が必要であるが、その半画素精度の参照画像は、単画素精度の画像データから補間処理によって生成される。
【００３５】
第１の半画素精度画像生成回路２０５は、６タップフィルタによって単画素精度の画像データから半画素精度の画像データを補間生成する回路であり、第２の半画素精度画像生成回路２０６は２タップフィルタによって単画素精度の画像データから半画素精度の画像データを補間生成する回路である。前記第１の半画素精度画像生成回路２０５、または前記第２の半画素精度画像生成回路２０６によって生成した半画素精度の参照画像を用いて、半画素精度ベクトル検出回路２０８は半画素精度の動きベクトルの検出処理を行う。例えば、Ｈ．２６４では半画素精度の画像データは６タップフィルタで生成することになっている。
【００３６】
したがって、補間しようとする画素に対して、単画素精度の画素が前後に３画素必要となる。例えば、図４のように単画素精度の動きベクトルが（−３、−２）であった場合、図中の白丸で示す画素を生成するためには、検出範囲バッファ２０２に記憶されている画素のほかに、さらに、三角で示した単画素精度の画素が必要になる。ところが、２タップフィルタで半画素精度の画像データを補間する場合には、前述の図４の場合であっても、検出範囲バッファ２０２に記憶されている画素のみで補間可能である。
【００３７】
そこで、単画素精度の動きベクトルの結果に応じて、６タップフィルタによる補間処理をする場合に、検出範囲バッファ２０２に記憶されている画素のみで補間処理ができない場合には、第１のスイッチ２０４、及び第２のスイッチ２０７を、第２の半画素精度画像生成回路２０６へ接続するように切り替え、そうではない場合には、第１の半画素精度画像生成回路２０５へ接続するように切り替えるようにする。
【００３８】
なお、本実施形態では半画素精度の動きベクトルを検出しているが、その後で１／４画素精度など、さらに高精度な動きベクトル検出を行う場合でも、同様に処理することができる。
【００３９】
（第２の実施形態）
本発明の第２の実施形態に係る動画像符号化装置は、図２に示すもので、動きベクトル検出回路１０２の動作が異なる以外は、前述の第１の実施形態に係る動画像符号化装置と同様の動作を行う。
【００４０】
図７は、本発明の第２の実施形態に係る動画像符号化装置が備える動きベクトル検出回路１０２の構成を示すブロック図である。前述した第１の実施形態の説明で用いた図１に対してデータバス使用率検出回路７０１が付加されている。
【００４１】
データバス使用率検出回路７０１は、フレームメモリ１１８のデータバスの状態を監視し、データバスの使用率を算出する。前記データバス使用率は、第１のスイッチ２０４、及び第２のスイッチ２０７の制御信号となっていて、前述の第１の実施形態で説明したように、単画素精度の動きベクトルの結果によって、半画素精度の参照画像を生成する。
【００４２】
そのためには、検出範囲バッファ２０２に記憶されている画像データの他に、さらにフレームメモリ１１８から画像データを読み出す必要がある場合で、かつ、前記データバスの使用率がある閾値より大きい場合には、以下のようにスイッチ制御を行う。この場合、第１のスイッチ２０４、及び第２のスイッチ２０７を、第２の半画素精度画像生成回路２０６へ接続するように切り替え、そうでない場合には、第１の半画素精度画像生成回路２０５へ接続するように切り替える。
【００４３】
６タップフィルタの第１の半画素精度画像生成回路２０５は、補間処理のためにフレームメモリ１１８から画像データを読み出す必要がある場合は、フレームメモリ１１８から画像データを読み出して、補間処理を実行する。
【００４４】
（本発明に係る他の実施形態）
前述した本発明の実施形態における動画像符号化装置を構成する各手段、並びに動画像符号化方法の各ステップは、コンピュータのＲＡＭやＲＯＭなどに記憶されたプログラムが動作することによって実現できる。このプログラム及び上記プログラムを記録したコンピュータ読み取り可能な記録媒体は本発明に含まれる。
【００４５】
また、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。
【００４６】
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム（実施形態では図５及び図６に示すフローチャートに対応したプログラム）を、システムあるいは装置に直接されてもよい。あるいは遠隔から供給し、そのシステムあるいは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
【００４７】
したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【００４８】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であってもよい。
【００４９】
プログラムを供給するための記録媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷなどである。また、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）なども含む。
【００５０】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、前記ホームページから本発明のコンピュータプログラムそのものをダウンロードすることによっても供給できる。もしくは、圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
【００５１】
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【００５２】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【００５３】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【００５４】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。そして、その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現される。
【図面の簡単な説明】
【００５５】
【図１】本発明の第１の実施形態に係る動画像符号化装置が備える動きベクトル検出回路の構成を示すブロック図である。
【図２】本発明に係る動画像符号化装置の構成を示すブロック図である。
【図３】段階的に動きベクトルを検出する動作を説明するための模式図である。
【図４】６タップフィルタで補間する場合に必要な画素を説明するための模式図である。
【図５】符号化処理の概略を説明するフローチャートである。
【図６】動きベクトルを検出する場合の処理手順の一例を説明するフローチャートである。
【図７】本発明の第２の実施形態に係る動画像符号化装置が備える動きベクトル検出回路の構成を示すブロック図である。
【符号の説明】
【００５６】
１０１  撮像部
１０２  動きベクトル検出回路
１０３  減算器
１０４  DCT（直交変換）回路
１０５  量子化回路
１０６  可変長符号化回路（ＶＬＣ）
１０７  記録部
１０８  動き補償回路
１０９  記録媒体
１１０  符号量制御回路
１１１  逆量子化回路（ＩＱ）
１１２  IDCT（逆直交変換）回路
１１３  加算器
１１７  表示部１１７
１１８  フレームメモリ
２０１  符号化ブロックバッファ
２０２  検出範囲バッファ
２０３  単画素精度ベクトル検出回路
２０４  第１のスイッチ
２０５  第１の半画素精度画像生成回路（６タップフィルタ）
２０６  第２の半画素精度画像生成回路（２タップフィルタ）
２０７  第２のスイッチ
２０８  半画素精度ベクトル検出回路
【図１】
0004590337.tif 000002
【図２】
0004590337.tif 000003
【図３】
0004590337.tif 000004
【図４】
0004590337.tif 000005
【図５】
0004590337.tif 000006
【図６】
0004590337.tif 000007
【図７】
0004590337.tif 000008