(57)【要約】【課題】符号化効率を大幅に落とすことなく、高速処理可能でかつ省電力化が図れる動画像符号化装置を提供する。【解決手段】符号化対象がＰピクチャであって前方向予測符号化を行う場合に、直近（第１候補）がＰピクチャであれば、まずこれを第１の参照画像とし、該第１の参照画像の各ブロックについて設定された動きベクトルの大きさに基づいて、第２の参照画像を２番目に近い画像（第２候補）とするか否かを決定する。【選択図】図１
2008124765.tif 000002
【特許請求の範囲】
【請求項１】
一連の画像データを符号化単位の複数のブロックに分割し、イントラ符号化により符号化される第１の種別の画像データと、インター符号化により前方向予測により符号化される第２の種別の画像データと、インター符号化により双方向予測により符号化される第３の種別の画像データとにより構成される動画像データとして符号化する動画像符号化装置であって、
複数の画像データを格納する画像格納手段と、
前記複数の画像データのうち、符号化済みの画像データを構成する各ブロックについて設定された動きベクトルを格納する動きベクトル格納手段と、
前記格納手段に格納された画像データのうち、符号化対象の画像データが前記第２の種別の画像データである場合に、前記格納手段に格納された前記第１の種別及び前記第２の種別の画像データのうち、前記符号化対象の画像データに対して時間的に前方向で一番目と二番目に近い符号化済みの画像データをそれぞれ第１の参照候補及び第２の参照候補として、該第１の参照候補を、前記符号化対象の画像データにおける処理対象のブロックに対する前記インター符号化のための第１の参照画像に決定する第１の決定手段と、
前記第１の参照候補が前記第２の種別の画像データである場合に、前記処理対象のブロックの前記符号化対象の画像データにおける空間的位置に対応する該第１の参照候補におけるブロックについて、前記動きベクトル格納手段に格納された第１の動きベクトルを読み出す動きベクトル読出手段と、
前記第１の動きベクトルの大きさに基づいて、前記第２の参照候補を前記処理対象のブロックに対する前記インター符号化のための第２の参照画像とするか否かを決定する第２の決定手段と、
前記符号化対象の画像データと、前記第１の参照画像と第２の参照画像とに基づいて、前記前方向予測による前記処理対象のブロックの符号化を行う符号化手段と
を備えることを特徴とする動画像符号化装置。
【請求項２】
前記第２の決定手段は、前記第１の動きベクトルの大きさを予め定められた第１の閾値と比較して、
前記第１の動きベクトルの大きさが前記第１の閾値以上の場合に、前記第２の参照候補を前記第２の参照画像に決定し、
前記第１の動きベクトルの大きさが前記第１の閾値より小さい場合に、前記第１の参照候補を前記第２の参照画像に決定することを特徴とする請求項１に記載の動画像符号化装置。
【請求項３】
前記第１の参照候補が、第１の種別の画像データである場合に、前記第２の決定手段は、前記第２の参照候補を前記第２の参照画像に決定することを特徴とする請求項１または２に記載の動画像符号化装置。
【請求項４】
前記画像格納手段に格納される複数の画像データに含まれる前記第１の種別の画像データと前記第２の種別の画像データとのうち、時間的に隣り合う画像データについて、複数のオフセットパターンを与えて該画像データ間の相関値を算出した場合に、該相関値が最も高くなるオフセットパターンにおけるオフセット量を表す大域動きベクトルを算出する大域動きベクトル算出手段をさらに備え、
前記第２の決定手段は、前記第１の参照候補について前記第２の参照候補との間で算出された第１の大域動きベクトルの大きさに基づいて、前記第２の参照候補を前記第２の参照画像とするか否かを決定することを特徴とする請求項１乃至３のいずれか１項に記載の動画像符号化装置。
【請求項５】
前記第２の決定手段は、前記第１の大域動きベクトルの大きさを予め定められた第２の閾値と比較して、
前記第１の大域動きベクトルの大きさが前記第２の閾値以上の場合に、前記第２の参照候補を前記第２の参照画像に決定し、
前記第１の大域動きベクトルの大きさが前記第２の閾値より小さい場合に、前記第１の参照候補を前記第２の参照画像に決定する
ことを特徴とする請求項４に記載の動画像符号化装置。
【請求項６】
前記第２の決定手段はさらに、
前記符号化対象の画像データにおける前記処理対象のブロックの空間的位置に対応する前記第１の参照候補におけるブロックに前記第１の大域動きベクトルを適用した場合に、適用後のブロックが前記第１の参照候補の画面範囲を超える場合と
前記第１の大域動きベクトルが、前記第２の閾値よりも大きい予め定められた第３の閾値以上の大きさを有する場合との
少なくともいずれかに該当する場合に、前記第１の参照候補を前記第２の参照画像に決定することを特徴とする請求項５に記載の動画像符号化装置。
【請求項７】
前記符号化手段は、
前記前方向予測により前記処理ブロックとの間で動きベクトルを算出するための、前記第１の参照画像と前記第２の参照画像とに設定される該動きベクトルの検出範囲を、前記符号化対象の画像データと、該第１の参照画像及び第２の参照画像のそれぞれとの間で算出された前記大域動きベクトルを用いて設定することを特徴とする請求項４乃至６のいずれか１項に記載の動画像符号化装置。
【請求項８】
前記第１の参照画像と前記第２の参照画像とが同一の画像データに決定された場合に、
前記符号化手段は、
前記前方向予測により前記処理ブロックとの間で動きベクトルを算出するための、前記第１の参照画像と前記第２の参照画像とに設定される該動きベクトルの検出範囲を、互いに重複しないように設定することを特徴とする請求項１乃至７のいずれか１項に記載の動画像符号化装置。
【請求項９】
前記符号化対象の画像データが前記第３の種別の画像データである場合に、前記格納手段に格納された前記第１の種別及び前記第２の種別の画像データのうち、前記符号化対象の画像データに対して時間的に前方向で一番目に近い符号化済みの画像データと後方向で一番目に近い符号化済みの画像データとを、前記第１及び第２の参照画像として決定する第３の決定手段を更に備え、
前記符号化手段はさらに、前記符号化対象の画像データと、前記第１の参照画像及び第２の参照画像とに基づいて、前記双方向予測による前記処理対象のブロックの符号化を行うことを特徴とする請求項１乃至８のいずれか１項に記載の動画像符号化装置。
【請求項１０】
一連の画像データを符号化単位の複数のブロックに分割し、イントラ符号化により符号化される第１の種別の画像データと、インター符号化により前方向予測により符号化される第２の種別の画像データと、インター符号化により双方向予測により符号化される第３の種別の画像データとにより構成される動画像データとして符号化する動画像符号化装置であって、
複数の画像データを格納する画像格納手段と、
前記複数の画像データのうち、符号化済みの画像データを構成する各ブロックについて設定された動きベクトルを格納する動きベクトル格納手段とを備える動画像符号化装置の制御方法であって、
前記格納手段に格納された画像データのうち、符号化対象の画像データが前記第２の種別の画像データである場合に、前記格納手段に格納された前記第１の種別及び前記第２の種別の画像データのうち、前記符号化対象の画像データに対して時間的に前方向で一番目と二番目に近い符号化済みの画像データをそれぞれ第１の参照候補及び第２の参照候補として、該第１の参照候補を、前記符号化対象の画像データにおける処理対象のブロックに対する前記インター符号化のための第１の参照画像に決定する第１の決定工程と、
前記第１の参照候補が前記第２の種別の画像データである場合に、前記処理対象のブロックの前記符号化対象の画像データにおける空間的位置に対応する該第１の参照候補におけるブロックについて、前記動きベクトル格納手段に格納された第１の動きベクトルを読み出す動きベクトル読出工程と、
前記第１の動きベクトルの大きさに基づいて、前記第２の参照候補を前記処理対象のブロックに対する前記インター符号化のための第２の参照画像とするか否かを決定する第２の決定段工程と、
前記符号化対象の画像データと、前記第１の参照画像と第２の参照画像とに基づいて、前記前方向予測による前記処理対象のブロックの符号化を行う符号化工程と
を備えることを特徴とする動画像符号化装置の制御方法。
【請求項１１】
前記第２の決定工程では、前記第１の動きベクトルの大きさを予め定められた第１の閾値と比較して、
前記第１の動きベクトルの大きさが前記第１の閾値以上の場合に、前記第２の参照候補を前記第２の参照画像に決定し、
前記第１の動きベクトルの大きさが前記第１の閾値より小さい場合に、前記第１の参照候補を前記第２の参照画像に決定することを特徴とする請求項１０に記載の動画像符号化装置の制御方法。
【請求項１２】
前記第１の参照候補が、第１の種別の画像データである場合に、前記第２の決定工程では、前記第２の参照候補を前記第２の参照画像に決定することを特徴とする請求項１０または１１に記載の動画像符号化装置の制御方法。
【請求項１３】
前記画像格納手段に格納される複数の画像データに含まれる前記第１の種別の画像データと前記第２の種別の画像データとのうち、時間的に隣り合う画像データについて、複数のオフセットパターンを与えて該画像データ間の相関値を算出した場合に、該相関値が最も高くなるオフセットパターンにおけるオフセット量を表す大域動きベクトルを算出する大域動きベクトル算出工程をさらに備え、
前記第２の決定工程では、前記第１の参照候補について前記第２の参照候補との間で算出された第１の大域動きベクトルの大きさに基づいて、前記第２の参照候補を前記第２の参照画像とするか否かを決定することを特徴とする請求項１０乃至１２のいずれか１項に記載の動画像符号化装置の制御方法。
【請求項１４】
前記第２の決定工程では、前記第１の大域動きベクトルの大きさを予め定められた第２の閾値と比較して、
前記第１の大域動きベクトルの大きさが前記第２の閾値以上の場合に、前記第２の参照候補を前記第２の参照画像に決定し、
前記第１の大域動きベクトルの大きさが前記第２の閾値より小さい場合に、前記第１の参照候補を前記第２の参照画像に決定する
ことを特徴とする請求項１３に記載の動画像符号化装置の制御方法。
【請求項１５】
前記第２の決定工程ではさらに、
前記符号化対象の画像データにおける前記処理対象のブロックの空間的位置に対応する前記第１の参照候補におけるブロックに前記第１の大域動きベクトルを適用した場合に、適用後のブロックが前記第１の参照候補の画面範囲を超える場合と
前記第１の大域動きベクトルが前記第２の閾値よりも大きい予め定められた第３の閾値以上の大きさを有する場合との
少なくともいずれかに該当する場合に、前記第１の参照候補を前記第２の参照画像に決定することを特徴とする請求項１４に記載の動画像符号化装置の制御方法。
【請求項１６】
前記符号化工程では、
前記前方向予測により前記処理ブロックとの間で動きベクトルを算出するための、前記第１の参照画像と前記第２の参照画像とに設定される該動きベクトルの検出範囲を、前記符号化対象の画像データと、該第１の参照画像及び第２の参照画像のそれぞれとの間で算出された前記大域動きベクトルを用いて設定することを特徴とする請求項１３乃至１５のいずれか１項に記載の動画像符号化装置の制御方法。
【請求項１７】
前記第１の参照画像と前記第２の参照画像とが同一の画像データに決定された場合に、
前記符号化工程では、
前記前方向予測により前記処理ブロックとの間で動きベクトルを算出するための、前記第１の参照画像と前記第２の参照画像とに設定される該動きベクトルの検出範囲を、互いに重複しないように設定することを特徴とする請求項１０乃至１６のいずれか１項に記載の動画像符号化装置の制御方法。
【請求項１８】
前記符号化対象の画像データが前記第３の種別の画像データである場合に、前記格納手段に格納された前記第１の種別及び前記第２の種別の画像データのうち、前記符号化対象の画像データに対して時間的に前方向で一番目に近い符号化済みの画像データと後方向で一番目に近い符号化済みの画像データとを、前記第１及び第２の参照画像として決定する第３の決定工程を更に備え、
前記符号化工程ではさらに、前記符号化対象の画像データと、前記第１の参照画像及び第２の参照画像とに基づいて、前記双方向予測による前記処理対象のブロックの符号化を行うことを特徴とする請求項１０乃至１７のいずれか１項に記載の動画像符号化装置。
【請求項１９】
コンピュータを、請求項１乃至９のいずれかに記載の動画像符号化装置として機能させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像符号化装置とその制御方法、及び、コンピュータプログラムに関する。
【背景技術】
【０００２】
被写体を撮影し、それにより得られた動画像を圧縮符号化して記録するカメラ一体型動画像記録装置として、例えば、デジタルビデオカメラがよく知られている。近年は、ランダムアクセス性などの利便性が高いため、記録媒体が従来の磁気テープからディスク媒体や半導体メモリなどに移り変わってきている。しかし、一般にディスク媒体などは記憶容量が少なく、より高能率に圧縮符号化する必要がある。
【０００３】
また、高画質への期待から、より情報量の多いハイビジョン映像を扱うデジタルビデオカメラの開発が行われており、このように別の観点からも、より高能率な圧縮符号化が望まれており、現在はＭＰＥＧが標準方式としてよく用いられている。
【０００４】
さらに近年では、記録媒体への記録可能時間のさらなる向上や、携帯端末向けにより低ビットレートでの符号化の必要性などから、さらに高能率な符号化が研究されている。そのなかの１つがＨ．２６４であり、ＭＰＥＧ２やＭＰＥＧ４などの従来の符号化方式に比べ、符号化や復号化により多くの演算量が必要となるが、より高い符号化効率が実現されることが知られている。
【０００５】
Ｈ．２６４では、符号化効率を上げるために、様々な工夫がなされているが、その一例として複数参照画像がある。参照画像となり得る複数の画像のリストを保持して、その参照画像リストの中から最適な参照画像を選択して動き予測に使用するというものである。複数の参照候補となるフレームを保持して、そのなかから参照するフレームを選択可能とする構成は、例えば特許文献１に開示されている。
【特許文献１】特開２００５−１６７７２０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述したように、複数の参照画像の中から適切な参照画像を選択するために、すべての参照画像について動き検出を行う必要があり、膨大な処理を行わなくてはならない。そのため、特にリアルタイムで符号化処理をする場合などでは、非常に高速なプロセッサが必要になり、機器が高価になったり、消費電力が大きくなるという課題がある。
【０００７】
そこで、本発明は上記の如き課題を解決することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するための一つの側面に対応する本発明は、一連の画像データを符号化単位の複数のブロックに分割し、イントラ符号化により符号化される第１の種別の画像データと、インター符号化により前方向予測により符号化される第２の種別の画像データと、インター符号化により双方向予測により符号化される第３の種別の画像データとにより構成される動画像データとして符号化する動画像符号化装置であって、
複数の画像データを格納する画像格納手段と、
前記複数の画像データのうち、符号化済みの画像データを構成する各ブロックについて設定された動きベクトルを格納する動きベクトル格納手段と、
前記格納手段に格納された画像データのうち、符号化対象の画像データが前記第２の種別の画像データである場合に、前記格納手段に格納された前記第１の種別及び前記第２の種別の画像データのうち、前記符号化対象の画像データに対して時間的に前方向で一番目と二番目に近い符号化済みの画像データをそれぞれ第１の参照候補及び第２の参照候補として、該第１の参照候補を、前記符号化対象の画像データにおける処理対象のブロックに対する前記インター符号化のための第１の参照画像に決定する第１の決定手段と、
前記第１の参照候補が前記第２の種別の画像データである場合に、前記処理対象のブロックの前記符号化対象の画像データにおける空間的位置に対応する該第１の参照候補におけるブロックについて、前記動きベクトル格納手段に格納された第１の動きベクトルを読み出す動きベクトル読出手段と、
前記第１の動きベクトルの大きさに基づいて、前記第２の参照候補を前記処理対象のブロックに対する前記インター符号化のための第２の参照画像とするか否かを決定する第２の決定手段と、
前記符号化対象の画像データと、前記第１の参照画像と第２の参照画像とに基づいて、前記前方向予測による前記処理対象のブロックの符号化を行う符号化手段と
を備えることを特徴とする。
【０００９】
上記課題を解決するための他の側面に対応する本発明は、前記画像格納手段に格納される複数の画像データに含まれる前記第１の種別の画像データと前記第２の種別の画像データとのうち、時間的に隣り合う画像データについて、複数のオフセットパターンを与えて該画像データ間の相関値を算出した場合に、該相関値が最も高くなるオフセットパターンにおけるオフセット量を表す大域動きベクトルを算出する大域動きベクトル算出手段をさらに備え、
前記第２の決定手段は、前記第１の参照候補について前記第２の参照候補との間で算出された第１の大域動きベクトルの大きさに基づいて、前記第２の参照候補を前記第２の参照画像とするか否かを決定することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、符号化効率を大幅に落とすことなく、高速処理可能でかつ省電力化が図れる動画像符号化装置を提供することができる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の実施形態を、図面を参照して説明する。
【００１２】
［第１の実施形態］
図１は、本発明の第１の実施形態に係る画像処理装置としての動画像符号化装置の構成例を示すブロック図である。当該動画像符号化装置１００では、Ｈ．２６４方式により、動画像符号化を行う。
【００１３】
図１において、動画像符号化装置１００は、以下の構成要素を備える。まず、レンズやCCD等のカメラ部を含む撮像部１０１、動きベクトル検出部１０２、動き補償部１０８、減算器１０３、DCT（直行変換）部１０４、量子化部１０５。また、可変長符号化部１０６、記録部１０７、記録媒体１０９、符号量制御部１１０、逆量子化部１１１。更には、IDCT（逆直行変換）部１１２、加算器１１３、表示部１１７、フレームメモリ１１８を備える構成としている。
【００１４】
更に、符号量制御部１１０をはじめとする各構成部の動作は、システムコントローラ１２０によって制御されるように構成されている。このシステムコントローラ１２０は、装置１００全体の動作制御を司るものであり、操作部１２１を利用したユーザからの指示に応じて装置１００全体の動作制御を行うこともできる。
【００１５】
本発明における撮像手段としての撮像部１０１にて被写体を撮像して得られた一連の画像信号は、第１フレーム、第２フレーム、第３フレーム、・・・の順で、順次フレームメモリ１１８に格納されていく。フレームメモリ１１８からは、例えば、第３フレーム、第１フレーム、第２フレーム、・・・といった符号化を行う順序で画像データが出力される。本実施形態における符号化方式には、フレーム内の画像データのみで符号化する"イントラ符号化"と、フレーム間予測も含めて符号化する"インター符号化"とが含まれる。
【００１６】
まず、イントラ符号化を行うピクチャは、Ｉピクチャという。符号化順がフレームの入力順と異なるのは、時間的に未来のフレームを使った予測（後方向予測）を可能にするためである。次に、インター符号化を行う符号化対象画像（ピクチャ）には、動き補償の単位（ＭＣブロック）に対して１枚の参照フレームとの前方向予測を行うＰピクチャと、ＭＣブロックに対して２枚までの参照フレームとの双方向予測を行うＢピクチャとがある。このように、本実施形態では、Ｉピクチャ、Ｐピクチャ及びＢピクチャという、第１、第２及び第３の種別の画像データにより動画像符号化を行う発明を記載する。
【００１７】
イントラ符号化がなされる場合、符号化単位となるブロックに分割された画像データはフレームメモリ１１８から読み出されて、直行変換部（ＤＣＴ）１０４で直行変換が施される。この直交変換としては、ＤＣＴ変換を行うことができる。直行変換部１０４からの出力である変換係数は量子化部（Ｑ）１０５において量子化処理される。量子化部１０５からの出力である量子化された変換係数は、可変長符号化部１０６において可変長符号化がなされた後、記録部１０７によって記録媒体への記録信号が生成されて、記録媒体１０９へ記録される。
【００１８】
量子化部１０５における量子化係数は、可変長符号化部（ＶＬＣ）１０６が発生した符号量のフィードバックなどから符号量制御部１１０が算出する。また、量子化部１０５の出力である量子化された変換係数は、逆量子化部（ＩＱ）１１１において逆量子化される。逆直行変換部（ＩＤＣＴ）１１２において逆直行変換処理が施されて、復号された画像信号となり、その画像信号はフレームメモリ１１８に記憶される。
【００１９】
一方、インター符号化がなされる場合、符号化単位となるブロックに分割された画像データはフレームメモリ１１８から読み出されて、動きベクトル検出部１０２へ入力される。同時に、動きベクトル検出部１０２は、参照画像選択部１１４から指示された参照画像をフレームメモリ１１８から読み出し、符号化画像と参照画像とを用いて動きベクトルを検出する。
【００２０】
動き補償部１０８は、動きベクトルにしたがって動き補償を行い予測画像を生成する。符号化画像と予測画像との差分は減算器１０３によって計算され、差分画像が生成される。差分画像は直行変換部１０４に出力され、直交変換される。この直交変換部１０４以降に行われる処理は上述のイントラ符号化の場合と同様であるので、省略する。
【００２１】
また、動きベクトル検出部１０２から出力された動きベクトルは、動きベクトル記憶部１１５に一時記憶される。この一時記憶された動きベクトルは、参照画像を決定するために適切なタイミングで読み出されて参照画像選択部１１４および動きベクトル検出部１０２へ出力される。
【００２２】
次に、動きベクトル検出部１０２の動作について詳細に説明する。本実施形態では、図２に示すような参照関係で符号化している。図２では、動画像データを構成する各ピクチャを表示順序（時間方向）に並べて、参照関係を示している。なお、図２においては、時間方向を示す矢印の方向に時間が流れる場合を示しており、Ｂ０ピクチャが時間的に先頭に位置するピクチャとなる。Ｂ０ピクチャ以後は、Ｂ１、Ｉ２、Ｂ３、・・・Ｂ９、Ｂ１０の順で時間方向の前後関係が決定される。
【００２３】
Ｂピクチャは、時間方向の前後それぞれ１枚の参照画像（ＰピクチャまたはＩピクチャ）が参照可能で、前後どちらか一方のみの参照画像を用いた予測と、前後両方の参照画像を用いた予測とを選択できる。たとえば、Ｂ４ピクチャを考えた場合、時間的に前方向に存在するＩ２ピクチャと、時間的に後方向に存在するＰ８ピクチャとの少なくともいずれかを参照することができる。
【００２４】
一方のＰピクチャは、前方２枚の参照画像（ＰピクチャまたはＩピクチャ）が参照可能であるが、２つの参照画像を用いて動きベクトル検出をした場合でも、最終的に適切な参照画像が１枚だけ選択される。たとえば、Ｐ８ピクチャは、Ｐ５ピクチャとＩ２ピクチャを参照することができるが、最終的にはいずれか１枚が選択される。
【００２５】
次に、図３及び図６を参照して、本実施形態に対応する動きベクトル検出部１０２の構成及びその動作を説明する。図３は、本発明の第１の実施形態に係る動画像符号化装置１００が備える動きベクトル検出部１０２の構成例を示すブロック図である。図６は、本実施形態におけるベクトル検出部１０２における処理の一例を示すフローチャートである。
【００２６】
図３に示すように、動きベクトル検出部１０２は、動きベクトル検出部３０１、３０２、双予測部３０３、動きベクトル決定部３０４、ダイレクト予測部３０５によって構成されている。
【００２７】
このような構成において、例えば水平１６画素、垂直１６画素の符号化ブロックは、フレームメモリ１１８から読み出されて、ベクトル検出部３０１、３０２が備える符号化ブロックバッファ３０１ａ及び３０２ａに記憶される（ステップＳ６０１）。本実施形態では、動きベクトルの検出範囲を水平・垂直ともに±４画素とする。よって、水平２４画素、垂直２４画素の参照画像は、フレームメモリ１１８から読み出されて、ベクトル検出部３０１、３０２が備える検出範囲バッファ３０１ｂ及び３０２ｂへそれぞれ記憶される（ステップＳ６０２）。
【００２８】
ベクトル検出部３０１および３０２が参照するフレーム番号は、参照画像選択部１１４からそれぞれに指示されている。動きベクトル検出部３０１及び３０２は、符号化ブロックバッファ３０１ａ及び３０２ａに記憶されている各符号化ブロックと、検出範囲バッファ３０２ａ及び３０２ｂに記憶されている各参照画像とでブロックマッチングを行う（ステップＳ６０３）。このブロックマッチングの結果に基づき、動きベクトル決定部３０４は参照画像のうちでもっとも相関の強い（相関値の高い）ブロックを決定し、このブロックの座標から動きベクトルを検出する（ステップＳ６０４）。
【００２９】
以下、ステップＳ６０４における動きベクトル決定部３０４における処理を、図７を更に参照してより詳細に説明する。まず、相関の強さは、例えば符号化画像と参照画像との各画素ごとの差分絶対値を積算した値（ＭＡＥ）を用いて判定可能であり、検出範囲内でＭＡＥが最小となる座標から動きベクトルを検出する。
【００３０】
まず、ステップＳ７０１では、動きベクトル決定部３０４が、動きベクトル検出部３０１及び３０２のそれぞれから出力された動きベクトルと、該動きベクトルに対応するＭＡＥ（ＭＡＥ１及びＭＡＥ２）とを取得する。次に、ステップＳ７０２では、符号化対象がＢピクチャかＰピクチャか否かが判定される。Ｂピクチャの場合（ステップＳ７０２において「ＹＥＳ」）、ステップＳ７０３に移行する。一方、Ｐピクチャの場合（ステップＳ７０２において「ＮＯ」）、ステップＳ７０４に移行する。
【００３１】
ステップＳ７０１では、動きベクトル決定部３０４が動きベクトル検出部３０１及び３０２でそれぞれ検出された動きベクトルを取得するのと併せて、双予測部３０３も該動きベクトルを取得している。この双予測部３０３は、動きベクトル検出部３０１及び３０２から得られた各動きベクトルに対応する参照画像の画素値を平均した画像を参照画像として、符号化ブロックのＭＡＥ（ＭＡＥ３）を算出する。
ＭＡＥ３を動きベクトル決定部３０４へ出力する。ステップＳ７０３では、動きベクトル決定部３０４が、双予測部３０３から該ＭＡＥ３の値を取得する。
【００３２】
続くステップＳ７０４では、動きベクトル決定部３０４は、それ以前のステップで得られたＭＡＥの値を比較する。即ち、Ｂピクチャの場合には、動きベクトル検出部３０１、３０２及び双予測部３０３から出力されたＭＡＥ１乃至ＭＡＥ３の値、Ｐピクチャの場合には、動きベクトル検出部３０１及び３０２から出力されたＭＡＥ１及び２の値を比較する。そして、最小の値を有するＭＡＥを決定する。
【００３３】
比較の結果、動きベクトル検出部３０１のＭＡＥ１が最小であった場合は（ステップＳ７０５において「ＹＥＳ」）、ステップＳ７０６に移行して前方予測として前方予測の動きベクトルを出力する。また、動きベクトル検出部３０２のＭＡＥ２が最小であった場合は（ステップＳ７０５において「ＮＯ」、かつ、Ｓ７０７において「ＹＥＳ」）、ステップＳ７０８に移行する。ステップＳ７０８では、後方予測として後方予測の動きベクトルを出力する。なお、符号化対象画像がＰピクチャの場合は、個々までで判定ステップは終了する。更に、双予測部３０３のＭＡＥ３が最小であった場合は双予測として、各動きベクトル検出部からの前方予測の動きベクトルおよび後方予測の動きベクトルを出力する。これは、符号化対象画像がＢピクチャの場合に想定される。
【００３４】
以上のようにして、複数の動きベクトル検出部を用いた場合に、動きベクトルを決定することができる。
【００３５】
なお、動きベクトル記憶部１１５が記憶している、既に符号化済みのピクチャにおえける上記符号化ブロックに対応する位置のブロックの動きベクトルを、該符号化ブロックの動きベクトルとしてダイレクト予測を行ってもよい。この場合のＭＡＥは、ダイレクト予測部３０５が算出し、ダイレクト予測も含めて動きベクトルを決定してもよい。
【００３６】
次に、参照画像選択部１１４の動作について、図８のフローチャートを更に参照して詳細に説明する。まず、ステップＳ８０１では符号化画像がＢピクチャか否かを判定する。もしＢピクチャの場合（ステップＳ８０１において「ＹＥＳ」）、ステップＳ８０２に移行する。なお、以下では一例として、図２のＢ６ピクチャを符号化対象画像として説明を行う。
【００３７】
ステップＳ８０２において、参照画像選択部１１４は、動きベクトル検出部３０１には前方予測の参照画像候補のうち時間的に一番近い（直近の）参照画像のフレーム番号（図２では、フレーム番号５）を出力する。また、ステップＳ８０３において、参照画像選択部１１４は、動きベクトル検出部３０２には後方予測の参照画像候補のうち時間的に一番近い（直近の）参照画像のフレーム番号（図２では、フレーム番号８）を出力する。
【００３８】
一方、ステップＳ８０１において符号化対象がＢピクチャではなく、Ｐピクチャと判定された場合（ステップＳ８０１において「ＮＯ」）、ステップＳ８０４に移行する。以下では一例として、図２のＰ８ピクチャを符号化対象として説明を行う。符号化対象がＰピクチャの場合、参照画像選択部１１４は、ステップＳ８０４において、動きベクトル検出部３０１に前方予測の参照画像候補のうち時間的に一番目に近い（直近の）参照画像のフレーム番号（図２では、フレーム番号５）を出力する。
【００３９】
次に、動きベクトル検出部３０２に対して出力するフレーム番号は、以下のようにして決定する。
【００４０】
まず、ステップＳ８０５において、動きベクトル記憶部１１５に記憶されている、上記前方予測候補の直近フレーム（図２ではＰ５ピクチャ）の符号化時の動きベクトルのうち、符号化ブロックと同じ空間位置に対応する動きベクトル（ＭＶｃｏｌ）を読み出す。
【００４１】
ここでの処理を図４及び図５を参照して、より詳細に説明する。図４において、４０１は符号化対象画像（Ｐピクチャ）を示している。符号化対象画像４０１中のブロック４０２は、符号化ブロックである。また、４０３は、符号化対象画像４０１に時間的に直近の前方予測の参照画像候補を示している。参照画像候補４０３において、４０４は、符号化対象画像４０１における符号化ブロック４０２と同一の空間位置に対応するブロックである。また、４０５は、ブロック４０４に基づいて設定される動きベクトルの検出範囲を示している。本実施形態では、ブロック４０４が１６画素×１６画素で構成されるとすると、ブロック４０５は２４画素×２４画素で構成される。４０６は、参照画像４０３が符号化された際にブロック４０４について設定された動きベクトル（ＭＶｃｏｌ）である。
【００４２】
また、４０７は、符号化対象画像４０１から時間的に２番目に近い前方予測の参照画像候補を示している。参照画像候補４０７において、４０８は、符号化対象画像４０１における符号化ブロック４０２と同一の空間位置に対応するブロックである。また、４０９は、ブロック４０８に基づいて設定される動きベクトルの検出範囲を示している。
【００４３】
次に、ステップＳ８０６では、動きベクトル記憶部１１５から読み出した動きベクトルを、あらかじめ定められた閾値（ＭＶｔｈ）と比較することにより、動きベクトルの大きさの判定を行う。もし、ＭＶｃｏｌ≧ＭＶｔｈ、即ち動きベクトルが閾値以上の場合は（ステップＳ８０６において「ＹＥＳ」）、ステップＳ８０７に移行する。ステップＳ８０７では、前方予測の参照画像候補のうち時間的に二番目に近い参照画像のフレーム番号（図２では、Ｉ２フレームに対応）を出力する。
【００４４】
一方、ＭＶｃｏｌ＜ＭＶｔｈ、即ち動きベクトルが閾値よりも小さい場合は（ステップＳ８０６において「ＮＯ」）、ステップＳ８０８に移行する。ステップＳ８０８では、前方予測の参照画像候補のうち時間的に直近の前方予測の参照画像のフレーム番号（図２では、Ｐ５ピクチャに対応）を出力する。
【００４５】
なお、ステップＳ８０５乃至Ｓ８０８における処理は、前方予測の参照画像候補のうち時間的に一番目に近い（直近の）参照画像がＰピクチャの場合の処理である。一方、該直近の参照画像がＩピクチャの場合には、ステップＳ８０４の後、直接ステップＳ８０７の処理を行う。
【００４６】
以上により、符号化対象画像がＰピクチャの場合には、直近の前方予測の参照画像候補における動きベクトル検出結果に基づいて、該符号化対象画像の動きベクトル検出のための参照画像を選択することができる。
【００４７】
なお、ステップＳ８０８において、動きベクトル３０２に対しても、直近のフレーム番号を出力する場合は、参照画像が同一となる。そこで、動きベクトルの検出範囲が互いに重複しないように、検出範囲にオフセットを与えることができる。また、動きベクトル検出部３０１及び３０２が同じ参照画像を参照することになる場合に、一方（たとえば、動きベクトル検出部３０２）の動作を停止させてもよい。
【００４８】
図５は、検出範囲にオフセットを与える例を説明するための図である。図５において、５０１は符号化対象画像（Ｐピクチャ）を示している。符号化対象画像５０１中のブロック５０２は、符号化ブロックである。また、５０３は、符号化対象画像５０１に時間的に直近の前方予測の参照画像候補を示している。参照画像５０３において、５０４は、符号化対象画像５０１における符号化ブロック５０２と同一の空間位置に対応するブロックである。また、５０５と５０６は、ブロック５０４に基づいて設定される動きベクトルの検出範囲を示している。本実施形態では、ブロック５０４が１６画素×１６画素で構成されるとすると、ブロック５０５及び５０６は２４画素×２４画素で構成される。
【００４９】
ここで、ブロック５０５と５０６とは、ブロック５０４を含むようにしてそれぞれ設定される。なお、図５では、オーバーラップが内容にブロック５０５と５０６とが設定される場合を示しているが、一部がオーバーラップしていてもよい。また、５０５と５０６との配置関係は、図５では水平方向に隣接するパターンを示したが、これに限定されるものではなく、垂直方向や斜め方向に隣接されてもよい。
【００５０】
５０７は、参照画像５０３が符号化された際にブロック５０４について設定された動きベクトル（ＭＶｃｏｌ）である。図５の場合は、閾値ＭＶｔｈよりも小さい値を有する場合を示している。
【００５１】
また、５０８は、符号化対象画像５０１から時間的に２番目に近い前方予測の参照画像候補を示している。参照画像候補５０８において、５０９は、符号化対象画像５０１における符号化ブロック５０２と同一の空間位置に対応するブロックである。なお、図５の場合、動きベクトル５０７が閾値ＭＶｔｈよりも小さいので、参照画像候補５０８が動きベクトル検出のための参照画像として利用されることはない。
【００５２】
以上のように、本実施形態によれば、符号化済の画像の動きベクトル情報を用いることで、符号化対象画像の参照画像を複数の候補の中から適切に選択することが可能となる。よって、すべての参照画像について動き検出を行う必要がなくなり、処理の大幅な効率化及び低消費電力化が図れ、特にリアルタイムで符号化処理をする場合に有用である。
【００５３】
［第２の実施形態］
以下、発明の第２の実施形態について説明する。図９は、発明の第２の実施形態に係る画像処理装置としての動画像符号化装置の構成例を示すブロック図である。
【００５４】
図９において、動画像符号化装置９００は、図１の動画像符号化装置１００の構成に加えて大域動きベクトル検出部９０１を備える点に特徴を有する。動画像符号化装置１００と共通の要素については、同一の参照番号を付している。この大域動きベクトル検出部９０１は、符号化対象画像と参照画像との間で、水平方向、垂直方向にオフセット（位置ずらし）した場合のフレーム画像間の相関を算出している。そして、オフセット量を変化させたうちで相関が最も強い時の、水平方向、垂直方向のオフセット量を大域動きベクトル（ＧＶｃｏｌ）として出力する。
【００５５】
この大域動きベクトルの検出処理に関して、図１０を参照して説明する。図１０において、１００１は符号化対象画像である。これに対し、１００２、１００３及び１００４は、参照画像である。各参照画像は、符号化対象画像１００１に対して、オフセットされており、画像中心に基づいて、オフセット量を表すベクトルが設定できる。ベクトル１００５は、符号化対象画像１００１と参照画像１００２との画像中心に基づいて設定されるベクトルである。ベクトル１００６は、符号化対象画像１００１と参照画像１００３との画像中心に基づいて設定されるベクトルである。ベクトル１００７は、符号化対象画像１００１と参照画像１００４との画像中心に基づいて設定されるベクトルである。
【００５６】
このようにして複数設定されるオフセットパターンにおいて、重複部分の画素の相関を計算し、相関が最も強い（相関値が最も高い）オフセットパターンにおけるベクトルを、大域動きベクトルに決定する。なお、ここでの相関の強さについても、第１の実施形態と同様に、例えば符号化画像と参照画像との各画素ごとの差分絶対値を積算した値（ＭＡＥ）を用いて判定することができる。
【００５７】
本実施形態では、参照画像候補となるＩピクチャとＰピクチャとにつき、時間的に隣り合うピクチャ間の大域動きベクトルを、大域動きベクトル検出部９０１において算出しておく。たとえば、符号化対象画像が図２のＰ８ピクチャの場合、Ｐ５ピクチャとＩ２ピクチャとが参照画像候補となるので、それぞれについて大域動きベクトルを算出しておく。このようにして求められた大域動きベクトルは、動きベクトル記憶部１１５において、符号化対象画像及び参照画像候補に関連づけられて記憶される。
【００５８】
また、算出された大域動きベクトルは、動きベクトル検出部１０２へ入力され、動きベクトルを検出する範囲の中心位置の選択に利用される。例えば、参照画像における符号化ブロックと空間的に同じ位置から、大域動きベクトルの大きさだけオフセットした位置を、動きベクトル検出の中心位置として、そこから水平・垂直±４画素の範囲で動きベクトルの検出を行う。動きベクトル検出範囲が異なる他は、上記実施形態１記載の動きベクトル検出部と同様に動作して動きベクトルが検出される。
【００５９】
大域動きベクトルを利用した検出範囲の設定について、図１１を参照して説明する。図１１は、本実施形態に対応する大域動きベクトルを利用した検出範囲の設定処理を説明するための図である。
【００６０】
図１１において、１１０１は符号化対象画像（Ｐピクチャ）を示している。符号化対象画像１１０１中のブロック１１０２は、符号化ブロックである。また、１１０３は、符号化対象画像１１０１に時間的に直近の前方予測の参照画像候補を示している。参照画像候補１１０３において、１１０４は、符号化対象画像１１０１における符号化ブロック１１０２の空間的位置に対応するブロックである。また、１１０５は、上述の算出方法に基づいて符号化対象画像１１０１と参照画像候補１１０３との間で設定された大域動きベクトルである。この大域動きベクトルに基づくオフセット量により、ブロック１１０４をオフセットしたブロック１１０６の位置を決定する。オフセット後のブロック１１０６に基づいて、動きベクトル検出範囲１１０７を設定する。
【００６１】
また、符号化画像がＰピクチャの場合、例えば符号化画像が図２のフレーム番号８の場合、動きベクトル検出部３０１には前方予測の参照画像候補のうち時間的に一番近い参照画像のフレーム番号（図２では、フレーム番号５）が出力される。よって、この場合、Ｐ８ピクチャとＰ５ピクチャとについて算出された上記の大域動きベクトルを用いて、符号化ブロックの動きベクトルが算出される。
【００６２】
次に、動きベクトル検出部３０２に対して出力するフレーム番号の決定について図１２を参照して説明する。図１２は、フレーム番号決定処理のフローチャートである。
【００６３】
まず、ステップＳ１２０１では、参照画像選択部１１４が、動きベクトル記憶部１１５から、符号化対象画像の参照画像候補間の大域動きベクトル（ＧＶｃｏｌ）を取得する。符号化対象画像が図２のＰ８ピクチャの場合、上述のように参照画像候補は、Ｐ５ピクチャとＩ２ピクチャとであるので、Ｐ５ピクチャとＩ２ピクチャとの間で設定された大域動きベクトルが読み出される。この大域動きベクトルは、Ｐ５ピクチャの符号化の際に算出され、動きベクトル記憶部１１５に記憶されている。ここでは、Ｐ５ピクチャとＩ２ピクチャとの関係を該大域動きベクトルに基づいて判定し、参照画像を決定する。
【００６４】
次に、ステップＳ１２０２では、動きベクトル記憶部１１５から読み出した大域動きベクトル（ＧＶｃｏｌ）を、あらかじめ定められた閾値（ＧＶｔｈ１）と比較することにより、大域動きベクトルの大きさの判定を行う。もし、ＧＶｃｏｌ≧ＧＶｔｈ１、即ち大域動きベクトルが閾値以上の場合は（ステップＳ１２０２において「ＹＥＳ」）、ステップＳ１２０３に移行する。一方、ＧＶｃｏｌ＜ＧＶｔｈ１、即ち、大域動きベクトルが閾値よりも小さい場合は（ステップＳ１２０２において「ＮＯ」）、ステップＳ１２０５に移行する。
【００６５】
まず、ステップＳ１２０３では、ＧＶｃｏｌの値が大きすぎるか否かを更に判定する。もし、大域動きベクトルの大き過ぎる場合、参照画像における、符号化ブロックと空間的に同じ位置から大域動きベクトル分オフセットした位置が、画面範囲を超えてしまう場合がある。具体例において説明する。例えば図２のＰ５ピクチャにおいて、符号化対象画像であるＰ８ピクチャの符号化ブロックと空間的に同じ位置に位置するブロックを、Ｐ５とＩ２との間の大域動きベクトルに基づいてオフセットした場合を考える。もし、大域動きベクトルが大きすぎれば、オフセット後のブロック位置はＰ５ピクチャの画面範囲を超えてしまうことがある。この場合、Ｐ５ピクチャとＩ２ピクチャとの変化が大き過ぎ、Ｐ５ピクチャよりも時間的に後方に位置するＰ８ピクチャの参照画像にＩ２ピクチャを採用する意義は薄いと推定できる。
【００６６】
そこで、ＧＶｃｏｌの値が大きすぎる場合には（ステップＳ１２０３において「ＹＥＳ」）、Ｉ２ピクチャを参照画像として採用しないためにステップＳ１２０５に移行する。一方、ＧＶｃｏｌの値が大きすぎるとは言えない場合には（ステップＳ１２０３において「ＮＯ」）、Ｉ２ピクチャを参照画像として採用するためにステップＳ
なお、ＧＶｃｏｌの値が大きすぎるか否かの判定は、あらかじめ定められた閾値として上述のＧＶｔｈよりも大きい、ＧＶｔｈ２を設定しておき、このＧＶｔｈ２との比較によって判定してもよい。或いは、参照画像における、符号化ブロックと空間的に同じ位置から大域動きベクトル分だけオフセットした位置が、該参照画像の画面範囲を超えるか否かに基づいて判定してもよい。
【００６７】
ステップＳ１２０４では、前方予測の参照画像候補のうち時間的に二番目に近い参照画像のフレーム番号（図２では、Ｉ２フレームに対応）を出力する。また、ステップＳ１２０５では、前方予測の参照画像候補のうち時間的に直近の前方予測の参照画像のフレーム番号（図２では、Ｐ５ピクチャに対応）を出力する。ただし、この場合動きベクトル検出部３０１、３０２は同じ参照画像を参照することになるため、図５に示したように、それぞれの検出範囲が重ならないように検出範囲にオフセットを与えることができる。なお、動きベクトル検出部３０１、３０２が同じ参照画像を参照することになる場合、動きベクトル検出部３０２の動作を停止させてもよい。
【００６８】
なお、以上に説明した動作以外の動作は、第１の実施形態において説明したモノと同様であるので、ここでの説明は省略する。
【００６９】
以上のように、本実施形態によれば、符号化対象画像と参照画像候補との間で、大域動きベクトルを設定し、該大域動きベクトルを用いて符号化対象画像の参照画像、及び該画像における動きベクトル検出範囲を効率的に選択できる。よって、すべての参照画像について動き検出を行う必要がなくなり、処理の大幅な効率化及び低消費電力化が図れ、特にリアルタイムで符号化処理をする場合に有用である。
【００７０】
［その他の実施形態］
なお、本発明は、複数の機器（例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機、ファクシミリ装置など）に適用してもよい。
【００７１】
また、本発明の目的は、前述した機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムに供給し、そのシステムがプログラムコードを読み出し実行することによっても達成される。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現し、そのプログラムコードを記憶した記憶媒体は本発明を構成する。また、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した機能が実現される場合も含まれる。
【００７２】
さらに、以下の形態で実現しても構わない。すなわち、記憶媒体から読み出されたプログラムコードを、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込む。そして、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行って、前述した機能が実現される場合も含まれる。
【００７３】
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【図面の簡単な説明】
【００７４】
【図１】発明の第１の実施形態に係る動画像符号化装置の構成例を示すブロック図である。
【図２】発明の実施形態に係る動画像符号化方式の参照関係を説明するための図である。
【図３】発明の実施形態に係る動きベクトル検出部１０２の構成例を示すブロック図である。
【図４】発明の実施形態に係る参照画像選択部１１４の動作を説明する為の図である。
【図５】発明の実施形態に係る同一画像を参照する場合の動きベクトルの検出範囲の設定の一例を示す図である。
【図６】発明の実施形態に係る動画像符号化装置の処理の一例を示すフローチャートである。
【図７】発明の実施形態に係る動きベクトル検出処理の一例を示すフローチャートである。
【図８】発明の実施形態に係る参照画像選択部１１４における処理の一例を示すフローチャートである。
【図９】発明の第２の実施形態に係る動画像符号化装置の構成例を示す図である。
【図１０】発明の第２の実施形態に係る大域動きベクトルの設定処理を説明するための図である。
【図１１】発明の第２の実施形態に係る大域動きベクトルを利用した動きベクトルの検出範囲の設定の一例を示す図である。
【図１２】発明の第２の実施形態に係る参照画像選択部１１４の処理の一例を示すフローチャートである。
【符号の説明】
【００７５】
１０１  撮像部
１０２  動きベクトル検出部
１０３  減算器
１０４  DCT（直行変換）部
１０５  量子化部
１０６  可変長符号化部
１０７  記録部
１０８  動き補償部
１０９  記録媒体
１１０  符号量制御部
１１１  逆量子化部
１１２  IDCT（逆直行変換）部
１１３  加算器
１１４  参照画像選択部
１１５  動きベクトル記憶部
１１７  表示部
１１８  フレームメモリ
【図１】
2008124765.tif 000003
【図２】
2008124765.tif 000004
【図３】
2008124765.tif 000005
【図４】
2008124765.tif 000006
【図５】
2008124765.tif 000007
【図６】
2008124765.tif 000008
【図７】
2008124765.tif 000009
【図８】
2008124765.tif 000010
【図９】
2008124765.tif 000011
【図１０】
2008124765.tif 000012
【図１１】
2008124765.tif 000013
【図１２】
2008124765.tif 000014