(57)【特許請求の範囲】
【請求項１】
１画面を符号化単位である符号化ブロックに分割すると共に該符号化ブロックを動き補償ブロックに分割し、符号化対象の該符号化ブロックに含まれる該動き補償ブロックに対して少なくとも過去の画像を参照して動きベクトルを探索する動きベクトル探索装置であって、
前記符号化対象の符号化ブロックを設定された複数の異なる分割方法で分割して、該分割方法に対応した動き補償ブロックを形成する分割手段と、
前記複数の異なる分割方法により前記分割手段で形成された前記動き補償ブロックのそれぞれに対して、設定された探索精度に応じて前記動きベクトルを探索する動きベクトル探索手段と、
前記動きベクトル探索手段での前記探索精度による前記動きベクトルの探索の結果に基づき前記分割方法を選択して、選択された該分割方法と、前記複数の異なる分割方法のうちの所定の分割方法とを前記分割手段に対して設定すると共に、より精度が高い探索精度を前記探索精度として設定する設定手段と、
前記設定手段により前記分割方法および前記探索精度を設定し、設定された該分割方法および該探索精度に応じて前記動きベクトル探索手段により前記動きベクトルを探索する動作を、順次繰り返し行うように制御する制御手段と
を備え、
前記設定手段は、
前記複数の異なる分割方法により形成された複数の前記動き補償ブロックのそれぞれに対して該分割方法に応じてグループを割り当て、該グループ毎に、前記動きベクトルの探索の結果に基づき前記分割方法を選択して前記分割手段に設定すると共に前記所定の分割方法を前記分割手段に設定し、
前記制御手段は、
前記繰り返し行われる前記動作により前記設定手段で設定される前記より精度が高い探索精度が予め設定された探索精度になったと判断したら、前記動きベクトル探索手段による前記動きベクトルの探索結果に基づき、該探索結果に基づき選択した前記分割方法と、前記所定の分割方法とから１つの前記分割方法を選択し、選択された該分割方法による前記動きベクトルの探索結果として得られた動きベクトルを、最終的な動きベクトルとすることを特徴とする動きベクトル探索装置。
【請求項２】
前記設定手段は、前記グループ毎に、
前記動きベクトルの探索の結果に基づき１の前記分割方法を選択して前記分割手段に設定すると共に１の前記所定の分割方法を前記分割手段に設定する
ことを特徴とする請求項１に記載の動きベクトル探索装置。
【請求項３】
前記所定の分割方法は、前記符号化対象の符号化ブロックを前記複数の異なる分割方法により分割して形成された動き補償ブロックのそれぞれに対して行った前記動きベクトルの探索結果を複数の画像データについて蓄積し、蓄積された該探索結果に対して統計的処理を施した結果に基づき決定される
ことを特徴とする請求項１または請求項２に記載の動きベクトル探索装置。
【請求項４】
１画面を符号化単位である符号化ブロックに分割すると共に該符号化ブロックを動き補償ブロックに分割し、符号化対象の該符号化ブロックに含まれる該動き補償ブロックに対して少なくとも過去の画像を参照して動きベクトルを探索する動きベクトル探索装置であって、
前記符号化対象の符号化ブロックを設定された複数の異なる分割方法で分割して、該分割方法に対応した動き補償ブロックを形成する分割手段と、
前記複数の異なる分割方法により前記分割手段で形成された前記動き補償ブロックのそれぞれに対して、設定された探索精度に応じて前記動きベクトルを探索する動きベクトル探索手段と、
前記動きベクトル探索手段での前記探索精度による前記動きベクトルの探索の結果に基づき前記分割方法を選択して、選択された該分割方法と、前記複数の異なる分割方法のうちの所定の分割方法とを前記分割手段に対して設定すると共に、より精度が高い探索精度を前記探索精度として設定する設定手段と、
前記設定手段により前記分割方法および前記探索精度を設定し、設定された該分割方法および該探索精度に応じて前記動きベクトル探索手段により前記動きベクトルを探索する動作を、順次繰り返し行うように制御する制御手段と
を備え、
前記制御手段は、
前記繰り返し行われる前記動作により前記設定手段で設定される前記より精度が高い探索精度が予め設定された探索精度になったと判断したら、前記動きベクトル探索手段による前記動きベクトルの探索結果に基づき、該探索結果に基づき選択した前記分割方法と、前記所定の分割方法とから１つの前記分割方法を選択し、選択された該分割方法による前記動きベクトルの探索結果として得られた動きベクトルを、最終的な動きベクトルとする動きベクトル探索装置であって、
前記所定の分割方法は、前記符号化対象の符号化ブロックを前記複数の異なる分割方法により分割して形成された動き補償ブロックのそれぞれに対して行った前記動きベクトルの探索結果を複数の画像データについて蓄積し、蓄積された該探索結果に対して統計的処理を施した結果に基づき決定されることを特徴とする動きベクトル探索装置。
【請求項５】
１画面を符号化単位である符号化ブロックに分割すると共に該符号化ブロックを動き補償ブロックに分割し、符号化対象の該符号化ブロックに含まれる該動き補償ブロックに対して少なくとも過去の画像を参照して動きベクトルを探索する動きベクトル探索方法であって、
分割手段が、前記符号化対象の符号化ブロックを設定された複数の異なる分割方法で分割して、該分割方法に対応した動き補償ブロックを形成する分割ステップと、
動きベクトル探索手段が、前記複数の異なる分割方法により前記分割ステップで形成された前記動き補償ブロックのそれぞれに対して、設定された探索精度に応じて前記動きベクトルを探索する動きベクトル探索ステップと、
設定手段が、前記動きベクトル探索ステップでの前記探索精度による前記動きベクトルの探索の結果に基づき前記分割方法を選択して、選択された該分割方法と、前記複数の異なる分割方法のうちの所定の分割方法とを前記分割ステップに対して設定すると共に、より精度が高い探索精度を前記探索精度として設定する設定ステップと、
制御手段が、前記設定ステップにより前記分割方法および前記探索精度を設定し、設定された該分割方法および該探索精度に応じて前記動きベクトル探索ステップにより前記動きベクトルを探索する動作を、順次繰り返し行うように制御する制御ステップと
を備え、
前記制御ステップは、
前記繰り返し行われる前記動作により前記設定ステップで設定される前記より精度が高い探索精度が予め設定された探索精度になったと判断したら、前記動きベクトル探索ステップによる前記動きベクトルの探索結果に基づき、該探索結果に基づき選択した前記分割方法と、前記所定の分割方法とから１つの前記分割方法を選択し、選択された該分割方法による前記動きベクトルの探索結果として得られた動きベクトルを、最終的な動きベクトルとする動きベクトル探索方法であって、
前記所定の分割方法は、前記符号化対象の符号化ブロックを前記複数の異なる分割方法により分割して形成された動き補償ブロックのそれぞれに対して行った前記動きベクトルの探索結果を複数の画像データについて蓄積し、蓄積された該探索結果に対して統計的処理を施した結果に基づき決定されることを特徴とする動きベクトル探索方法。
【請求項６】
動画データをフレーム内予測符号化またはフレーム間予測符号化により符号化する画像処理装置であって、
動画データのフレーム画像を格納するフレームメモリと、
前記フレームメモリから読みだされた符号化対象ブロックの画像データのフレーム間予測符号化に用いる動き補償ブロックの種類と動きベクトルを決定する決定手段とを有し、  前記決定手段は、複数種類の動き補償ブロックのうち、前記符号化対象ブロックの画像データの符号化に用いられる動き補償ブロックを決定する際に、
前記符号化対象ブロックの画像データ及び参照画像データを縮小し、
該縮小された前記符号化対象ブロックの画像データにおける前記動き補償ブロックに対応するブロックと該縮小された参照画像データとの画素差分値を、前記特定の動き補償ブロックを含む複数種類の動き補償ブロックのすべてについて算出し、最も画素差分値が小さい動き補償ブロックを第１の動き補償ブロックとする第１の判定処理を行い、
前記符号化対象ブロックの画像データ及び参照画像データを縮小せずに、
前記符号化対象ブロックの画像データにおける前記第１の動き補償ブロックと前記参照画像データとの画素差分値と、前記符号化対象ブロックの画像データにおける、統計的処理により確率的に求めた発生確率が最大の動き補償ブロックと前記参照画像データとの画素差分値とを算出し、前記第１の動き補償ブロックと、前記統計的処理により確率的に求めた発生確率が最大の動き補償ブロックのうち、画素差分値の小さい方を、前記符号化対象ブロックの画像データのフレーム間予測符号化に用いる動き補償ブロックの種類とする第２の判定処理を行うことを特徴とする画像処理装置。
【請求項７】
前記決定手段は、第１の判定処理の際に、符号化対象ブロックの画像データ及び参照画像データを少なくとも縦方向に１／４に縮小することを特徴とする請求項６記載の画像処理装置。
【請求項８】
前記決定手段は、第１の判定処理の際に、符号化対象ブロックの画像データ及び参照画像データを少なくとも横方向に１／４に縮小することを特徴とする請求項６または７記載の画像処理装置。
【請求項９】
動画データをフレーム内予測符号化またはフレーム間予測符号化により符号化する画像処理装置であって、
動画データのフレーム画像を格納するフレームメモリから読みだされた符号化対象ブロックの画像データのフレーム間予測符号化に用いる動き補償ブロックの種類と動きベクトルを決定する決定工程を有し、
前記決定工程は、複数種類の動き補償ブロックのうち、前記符号化対象ブロックの画像データの符号化に用いられる動き補償ブロックを決定する際に、
前記符号化対象ブロックの画像データ及び参照画像データを縮小し、
該縮小された前記符号化対象ブロックの画像データにおける前記動き補償ブロックに対応するブロックと該縮小された参照画像データとの画素差分値を、前記特定の動き補償ブロックを含む複数種類の動き補償ブロックのすべてについて算出し、最も画素差分値が小さい動き補償ブロックを第１の動き補償ブロックとする第１の判定処理を行い、
前記符号化対象ブロックの画像データ及び参照画像データを縮小せずに、
前記符号化対象ブロックの画像データにおける前記第１の動き補償ブロックと前記参照画像データとの画素差分値と、前記符号化対象ブロックの画像データにおける、統計的処理により確率的に求めた発生確率が最大の動き補償ブロックと前記参照画像データとの画素差分値とを算出し、前記第１の動き補償ブロックと、前記統計的処理により確率的に求めた発生確率が最大の動き補償ブロックのうち、画素差分値の小さい方を、前記符号化対象ブロックの画像データのフレーム間予測符号化に用いる動き補償ブロックの種類とする第２の判定処理を行うことを特徴とする画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ブロック単位で動画像の動きベクトルを探索する動きベクトル探索装置および動きベクトル探索方法に関する。
【背景技術】
【０００２】
従来より、例えば被写体を撮影し、それにより得られた動画像データを圧縮符号化して記録媒体に記録する記録装置として、デジタルビデオカメラが知られている。近年では、このような記録装置に用いられる記録媒体が、従来の磁気テープから、ランダムアクセス性やアクセスの高速性などの点でより優位な、ディスク媒体や半導体メモリなどに移り変わってきている。一方で、一般的に、ディスク媒体や半導体メモリは、磁気テープに比べて記憶容量に対するコストパフォーマンスが低い。そのため、記録媒体としてディスク媒体や半導体メモリを用いる場合、動画像データをより高能率に圧縮符号化する必要がある。
【０００３】
また、高画質への期待から、より情報量の多いＨＤ(High Definition)映像を扱うデジタルビデオカメラも普及しつつある。このような観点からも、動画像データのより高能率な圧縮符号化が望まれている。動画像データを高能率に圧縮符号化する圧縮符号化方式としては、ＭＰＥＧ２方式が標準的に用いられていた。
【０００４】
さらに近年では、記録媒体への記録可能時間のさらなる向上や、記録容量の限られる携帯端末向けに、より低ビットレートでの符号化の必要性が増しており、さらに高能率な圧縮符号化方式が開発されている。その中の１つが、Ｈ．２６４｜ＡＶＣ方式である。Ｈ．２６４｜ＡＶＣ方式は、従来からのＭＰＥＧ２方式やＭＰＥＧ４方式などの符号化方式に比べて、符号化や復号化により多くの演算量が必要となるが、高い符号化効率が実現されることが知られている。なお、以下では、Ｈ．２６４｜ＡＶＣ方式をＨ．２６４と略称する。
【０００５】
Ｈ．２６４では、符号化効率を上げるために様々な工夫がなされている。その一例として、可変ブロックサイズ動き補償がある。これは、符号化単位であるマクロブロック（符号化ブロック）をさらに分割してマクロブロック・パーティション（動き補償ブロック）を形成し、動き補償ブロック単位で動き補償を行うものである。Ｈ．２６４では、可変ブロックサイズ動き補償を用いることで、単一のブロックサイズで動き補償を行っていたＭＰＥＧ２方式といった従来の圧縮符号化方式と比較して、より緻密な動き補償を可能にしている。
【０００６】
一方で、Ｈ．２６４で、可変ブロックサイズ動き補償により符号化ブロックのサイズが選択可能になることは、ブロックサイズを決定するための演算負荷の増大を招くことになった。すなわち、符号化を行う符号化ブロックに対して設定可能な全ての動き補償ブロックについて、動きベクトル探索処理を行い、最適なものを選択する必要がある。そこで、なるべく簡単に適切なブロックサイズを決定するための工夫として、符号化対象の画像を撮像したときの情報を用いてブロックサイズ選定に係る演算量を低減させる提案がなされている（例えば、特許文献１参照）。
【０００７】
【特許文献１】特開２００６−２５４３７０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
上述したように、Ｈ．２６４では、可変ブロックサイズ動き補償により動き補償ブロックの細分化を行うために、動きベクトルの探索、ならびに、動き補償ブロックの分割方法を決定するために膨大な演算を行う必要がある。そのため、特に、上述したデジタルビデオカメラなどのようにリアルタイムで符号化処理を行う場合などは、非常に高速な演算が可能なプロセッサが必要になり、装置のコストアップや消費電力の増大を招くことになるという問題点があった。
【０００９】
また、特許文献１の構成では、撮像手段が符号化手段に対して撮像時の情報を出力する必要があると共に、符号化手段側でも、撮像手段から供給される符号化時の情報を入力して処理する仕組みが必要となる。
【００１０】
したがって、本発明の目的は、より簡便な方法で精度よくブロック分割方法を決定し動きベクトル探索を行うことができる動きベクトル探索装置および動きベクトル探索方法を提供することにある。
【課題を解決するための手段】
【００１１】
本発明は、上述した課題を解決するために、１画面を符号化単位である符号化ブロックに分割すると共に該符号化ブロックを動き補償ブロックに分割し、符号化対象の該符号化ブロックに含まれる該動き補償ブロックに対して少なくとも過去の画像を参照して動きベクトルを探索する動きベクトル探索装置であって、前記符号化対象の符号化ブロックを設定された複数の異なる分割方法で分割して、該分割方法に対応した動き補償ブロックを形成する分割手段と、前記複数の異なる分割方法により前記分割手段で形成された前記動き補償ブロックのそれぞれに対して、設定された探索精度に応じて前記動きベクトルを探索する動きベクトル探索手段と、前記動きベクトル探索手段での前記探索精度による前記動きベクトルの探索の結果に基づき前記分割方法を選択して、選択された該分割方法と、前記複数の異なる分割方法のうちの所定の分割方法とを前記分割手段に対して設定すると共に、より精度が高い探索精度を前記探索精度として設定する設定手段と、前記設定手段により前記分割方法および前記探索精度を設定し、設定された該分割方法および該探索精度に応じて前記動きベクトル探索手段により前記動きベクトルを探索する動作を、順次繰り返し行うように制御する制御手段とを備え、前記設定手段は、前記複数の異なる分割方法により形成された複数の前記動き補償ブロックのそれぞれに対して該分割方法に応じてグループを割り当て、該グループ毎に、前記動きベクトルの探索の結果に基づき前記分割方法を選択して前記分割手段に設定すると共に前記所定の分割方法を前記分割手段に設定し、前記制御手段は、前記繰り返し行われる前記動作により前記設定手段で設定される前記より精度が高い探索精度が予め設定された探索精度になったと判断したら、前記動きベクトル探索手段による前記動きベクトルの探索結果に基づき、該探索結果に基づき選択した前記分割方法と、前記所定の分割方法とから１つの前記分割方法を選択し、選択された該分割方法による前記動きベクトルの探索結果として得られた動きベクトルを、最終的な動きベクトルとすることを特徴とする動きベクトル探索装置である。
【００１２】
また、本発明は、１画面を符号化単位である符号化ブロックに分割すると共に符号化ブロックを動き補償ブロックに分割し、符号化対象の符号化ブロックに含まれる動き補償ブロックに対して少なくとも過去の画像を参照して動きベクトルを探索する動きベクトル探索方法であって、分割手段が、前記符号化対象の符号化ブロックを設定された複数の異なる分割方法で分割して、該分割方法に対応した動き補償ブロックを形成する分割ステップと、動きベクトル探索手段が、前記複数の異なる分割方法により前記分割ステップで形成された前記動き補償ブロックのそれぞれに対して、設定された探索精度に応じて前記動きベクトルを探索する動きベクトル探索ステップと、設定手段が、前記動きベクトル探索ステップでの前記探索精度による前記動きベクトルの探索の結果に基づき前記分割方法を選択して、選択された該分割方法と、前記複数の異なる分割方法のうちの所定の分割方法とを前記分割ステップに対して設定すると共に、より精度が高い探索精度を前記探索精度として設定する設定ステップと、制御手段が、前記設定ステップにより前記分割方法および前記探索精度を設定し、設定された該分割方法および該探索精度に応じて前記動きベクトル探索ステップにより前記動きベクトルを探索する動作を、順次繰り返し行うように制御する制御ステップとを備え、前記制御ステップは、前記繰り返し行われる前記動作により前記設定ステップで設定される前記より精度が高い探索精度が予め設定された探索精度になったと判断したら、前記動きベクトル探索ステップによる前記動きベクトルの探索結果に基づき、該探索結果に基づき選択した前記分割方法と、前記所定の分割方法とから１つの前記分割方法を選択し、選択された該分割方法による前記動きベクトルの探索結果として得られた動きベクトルを、最終的な動きベクトルとすることを特徴とする動きベクトル探索方法であって、前記所定の分割方法は、前記符号化対象の符号化ブロックを前記複数の異なる分割方法により分割して形成された動き補償ブロックのそれぞれに対して行った前記動きベクトルの探索結果を複数の画像データについて蓄積し、蓄積された該探索結果に対して統計的処理を施した結果に基づき決定されることを特徴とする動きベクトル探索方法である。
【発明の効果】
【００１３】
本発明は、上述した構成を備えるため、より簡便な方法で精度よくブロック分割方法を決定し動きベクトル探索を行うことができる。
【発明を実施するための最良の形態】
【００１４】
＜各実施形態に共通の構成＞
以下、本発明の実施形態を、図面を参照して説明する。図１は、本発明を適用可能なデジタルビデオカメラ１の一例の構成を概略的に示す。撮像部１０は、光学系、光学系を介して入射された光を電気信号に変換するＣＣＤといった撮像素子、撮像素子から出力された撮像信号に対して所定の処理を施し、ベースバンドの動画像データとして出力する信号処理部を含む。撮像部１０から出力されたベースバンドの動画像データは、本発明が適用される符号化部１１に供給され、Ｈ．２６４による圧縮符号化処理を施される。
【００１５】
圧縮符号化された圧縮動画像データが符号化部１１から出力され、記録制御部１２に供給される。記録制御部１２は、ディスク媒体あるいは半導体メモリによる記録媒体１３に対する、データの記録動作を制御する。記録制御部１２は、供給された圧縮動画像データに対して、エラー訂正符号化処理や記録媒体１３の種類に応じた記録符号化処理などを施し記録データとする。記録制御部１２は、記録データを、バッファメモリを介して、記録媒体１３の記録単位で当該記録媒体１３に書き込む。
【００１６】
ＣＰＵ２０は、このデジタルビデオカメラ１の全体の動作を制御する。すなわち、ＣＰＵ２０は、ＲＯＭ２１に予め記憶されたプログラムに従い、ＲＡＭ２２をワークメモリとして用いて動作し、撮像部１０、符号化部１１および記録制御部１２の動作を制御する。操作部２３は、このデジタルビデオカメラ１をユーザが操作するための操作子や、ユーザがこのデジタルビデオカメラ１の動作を確認するための表示素子が所定に設けられる。ＣＰＵ２０は、操作部２３に対するユーザ操作に応じて、このデジタルビデオカメラ１の動作を制御することができる。
【００１７】
図２は、本発明の実施形態に係る符号化部１１の一例の構成を示す。符号化部１１は、供給されたベースバンドの動画像データに対し、アダマール変換および整数精度ＤＣＴを用いた直交変換と、フレーム内予測符号化および動き補償を用いたフレーム間予測符号化とにより圧縮符号化を施す。以下では、アダマール変換および整数精度ＤＣＴを用いた直交変換を整数変換と呼び、フレーム内予測符号化およびフレーム間予測符号化をそれぞれイントラ符号化、インター符号化と呼ぶ。符号化部１１における動作は、制御手段としてのＣＰＵ２０に制御される。
【００１８】
インター符号化により、動き補償の単位（ＭＣブロック）に対して１枚の参照フレームとの予測を行うＰピクチャと、ＭＣブロックに対して時系列的に前後の２枚までの参照フレームとの予測を行うＢピクチャとが形成される。また、イントラ符号化によりＩピクチャが形成される。さらに、フレーム間予測符号化では、動画像データを、これらＩピクチャ、ＰピクチャおよびＢピクチャが所定に配列されたＧＯＰ構造を持つデータとして符号化する。
【００１９】
例えば、符号化部１１が１枚のＩピクチャ、４枚のＰピクチャおよび１０枚のＢピクチャからなる１５フレームで１ＧＯＰを形成する場合、符号化部１１に入力されるフレームに対し、下記の順にピクチャタイプが割り当てられる。なお、添字は、入力順または表示順を示す。
Ｂ１Ｂ２Ｉ３Ｂ４Ｂ５Ｐ６Ｂ７Ｂ８Ｐ９Ｂ１０Ｂ１１Ｐ１２Ｂ１３Ｂ１４Ｐ１５
【００２０】
ここで、Ｂピクチャは、時系列的に過去のピクチャと共に未来のピクチャを用いて予測符号化を行うため、符号化は、Ｂピクチャの順序をＩピクチャおよびＰピクチャに対して入れ替えて、下記の順序で行われる。なお、Ｉ３ピクチャに続くＢ１ピクチャおよびＢ２ピクチャは、Ｉ３ピクチャと、直前のＧＯＰにおけるＰ１５ピクチャとを用いて予測符号化される。
Ｉ３Ｂ１Ｂ２Ｐ６Ｂ４Ｂ５Ｐ９Ｂ７Ｂ８Ｐ１２Ｂ１０Ｂ１１Ｐ１５Ｂ１３Ｂ１４
【００２１】
撮像部１０から供給されるベースバンドの動画像データは、撮像の時系列に沿ったフレーム順で順次、フレームメモリ１０２に格納されていく。フレームメモリ１０２からは、動画像データがフレーム毎に符号化順で読み出される。
【００２２】
イントラ符号化を行う場合、フレームメモリ１０２から、動画像データのＩピクチャに相当するフレームにおける、符号化単位となるブロックの画像データが読み出され、イントラ予測部１０５と減算器１０７の被減算入力端にそれぞれ供給される。ここでは、フレームを、動画像データによる１画面に対応するものとする。すなわち、符号化単位のブロックは、動画像データの１画面を所定に分割してなる。
【００２３】
イントラ予測部１０５は、符号化対象ブロックとのブロックマッチングを、加算器１１２から供給される、同一フレーム内の符号化対象ブロック近傍に位置する再構成画像から生成される複数の予測画像のそれぞれに対して行う。そして、ブロックマッチングの結果、複数の予測画像から最も相関の高いイントラ予測画像を選択する。イントラ予測画像は、イントラ符号化の実行に応じてイントラ予測部１０５側が選択されたスイッチ１０６に出力される。
【００２４】
一方、インター符号化を行う場合、フレームメモリ１０２から符号化対象となるブロックの画像データが読み出され、動きベクトル探索部１０３に供給される。それと共に、フレームメモリ１０２から参照画像が読み出され、動きベクトル探索部１０３に供給される。参照画像は、複数のピクチャから選択することができる。動きベクトル探索部１０３は、符号化対象となるブロックの画像データと、参照画像とから動きベクトルを検出する。このとき、後述する処理により、符号化対象ブロックをマクロブロック・パーティションに分割して動きベクトルの探索を行う。動きベクトル探索部１０３で検出された動きベクトルは、フレーム間動き補償部１０４に供給される。
【００２５】
フレーム間動き補償部１０４は、動きベクトル探索部１０３から供給された動きベクトルと、フレームメモリ１０２から読み出した参照画像とに基づき動き補償を行い、インター予測によるインター予測画像を生成する。インター予測画像は、インター符号化の実行に応じてフレーム間動き補償部１０４側が選択されたスイッチ１０６に出力される。
【００２６】
スイッチ１０６の出力は、減算器１０７の減算入力端と、加算器１１２の一方の入力端に供給される。減算器１０７は、フレームメモリ１０２から供給される符号化対象ブロックと、スイッチ１０６から供給されるインター予測画像またはイントラ予測画像との画素値の差分情報を出力する。この差分情報は、整数変換部１０８に供給され、アダマール変換や整数精度ＤＣＴによる整数変換が施された後、量子化部１０９において所定の量子化係数に基づき量子化される。量子化部１０９の出力は、エントロピー符号化部１１５においてエントロピー符号化がなされ、この符号化部１１から出力される。
【００２７】
量子化部１０９における量子化係数は、エントロピー符号化部１１５が発生した符号量のフィードバックなどに基づき、符号量制御部１１６が算出する。また、量子化部１０９の出力である量子化された変換係数は、逆量子化部１１０において逆量子化され、さらに逆整数変換部１１１において逆整数変換処理が施されて復号される。そして、さらに加算器１１２でスイッチ１０６から出力されたインター予測画像またはイントラ予測画像と加算され、再構成画像が形成される。この再構成画像は、イントラ予測部１０５に供給され、上述したイントラ予測画像の生成に用いられる。
【００２８】
また、加算器１１２から出力された再構成画像は、ループ内フィルタ１１３によって符号化歪の軽減処理が施された後、インター符号化の際に用いる参照画像としてフレームメモリ１０２に記憶される。
【００２９】
＜第１の実施形態＞
次に、本発明の第１の実施形態に係る動きベクトル探索部１０３における処理について、詳細に説明する。本第１の実施形態では、探索精度を低くして動きベクトル探索を行う粗探索と、探索精度を高くして探索を行う密探索との２段階の処理によってマクロブロック・パーティションの分割方法を求める。そして、得られたマクロブロック・パーティションに対応する動きベクトルを、最終的な動きベクトルの探索結果とする。
【００３０】
図３は、本第１の実施形態による一例の動きベクトル探索処理を示すフローチャートである。先ず、ステップＳ１０で、フレームメモリ１０２から符号化対象となる符号化ブロック（以下、符号化対象ブロック）の画像データが読み出され、動きベクトル探索部１０３に供給される。また、動きベクトルの探索範囲の画像データ（参照画像データ）がフレームメモリ１０２から読み出される。
【００３１】
＜粗探索＞
設定手段としての動きベクトル探索部１０３は、フレームメモリ１０２から読み出されて供給された符号化対象ブロックの画像データと、動きベクトルの探索範囲の画像データとを、所定の縮小率でそれぞれ縮小する。一例として、符号化対象ブロックのサイズが１６画素×１６画素であって、縮小率を水平および垂直共に１／４とした場合、縮小後の符号化対象ブロックは、４画素×４画素のサイズとされる。動きベクトルの探索範囲の画像データも、同じ比率で縮小される。
【００３２】
縮小処理は、動きベクトル探索部１０３において、例えばフレームメモリ１０２から読み出した画像データに対して、縮小率に応じて画素の間引きを行うことでなされる。これに限らず、線形補間などを用いて縮小処理を行ってもよい。また、縮小処理は、動きベクトル探索部１０３で行われるのに限らず、例えば予め所定の縮小率で縮小された画像データをフレームメモリ１０２に格納しておくことで行ってもよい。さらには、フレームメモリ１０２から、縮小率に応じて画素を間引きながら画像データを読み出してもよい。
【００３３】
なお、以下では、粗探索において、画像データの縮小率が水平および垂直方向共に１／４とし、探索範囲は、縮小後の画像データにおいて、水平および垂直方向共に、符号化対象ブロックに対して±８画素の範囲とする。
【００３４】
ステップＳ１０で符号化対象ブロックと探索範囲の画像データの縮小処理が終了すると、処理はステップＳ１１に移行される。ステップＳ１１では、分割手段としての動きベクトル探索部１０３が、縮小された符号化対象ブロックに対して動き補償ブロック（以下、パーティション）を設定する。本第１の実施形態では、設定手段としての動きベクトル探索部１０３が、後述するステップＳ１３のループ処理に応じて、図４（ａ）〜図４（ｄ）に例示される４種類のパーティションを、符号化対象ブロックに対して順次、設定していく。
【００３５】
図４（ａ）は、符号化対象ブロックを分割しない場合を示す。換言すれば、図４（ａ）は、符号化対象ブロック自体を１のパーティションと見なす。図４（ｂ）は、符号化対象ブロックを水平方向に２等分して２のパーティションに分割する場合を示す。図４（ｃ）は、符号化対象ブロックを垂直方向に２等分して２のパーティションに分割する場合を示す。また、図４（ｄ）は、符号化対象ブロックを水平および垂直方向にそれぞれ２等分し、４のパーティションに分割する例を示す。
【００３６】
以下では、縮小前の画素数に因み、図４（ａ）の分割方法をパーティションタイプ１６×１６、図４（ｂ）の分割方法をパーティションタイプ１６×８とそれぞれ呼ぶ。同様に、図４（ｃ）の分割方法をパーティションタイプ８×１６、図４（ｄ）の分割方法をパーティションタイプ８×８とそれぞれ呼ぶ。このパーティション分割方法の命名法は、以下の類似の事例についても同様とする。
【００３７】
ステップＳ１１で符号化対象ブロックに対してパーティションが設定されると、処理はステップＳ１２に移行される。ステップＳ１２では、動きベクトル探索手段としての動きベクトル探索部１０３が、縮小された符号化対象ブロックおよび探索範囲の画像データを用い、設定されたパーティション毎に動きベクトルの粗探索を行う。すなわち、ステップＳ１２では、符号化対象ブロックのパーティション毎に、探索範囲の画像データとのブロックマッチングによって、最も相関の高いブロックが選択される。
【００３８】
そして、動きベクトル探索部１０３は、選択された最も相関が高いブロックの座標と、当該符号化対象ブロックのパーティションの座標との差分を、当該パーティションの動きベクトルとして記憶する。ここで、ブロックおよびパーティションの座標としては、ブロックおよびパーティション内の代表的な１点の座標、例えば左上隅の座標を用いる。また、動きベクトル探索部１０３は、当該最も相関が高いブロックと、当該符号化対象ブロックのパーティションとの対応する画素同士の差分値を合計した値を、パーティションの画素差分として記憶する。
【００３９】
ステップＳ１２による粗探索処理が終了すると、処理はステップＳ１３に移行され、ステップＳ１１で設定された全てのパーティションについて粗探索が終了したか否かが判断される。若し、パーティションについて粗探索が終了していないと判断されれば、処理はステップＳ１１に戻され、次のパーティションについて、粗探索が行われる。例えば、図４（ａ）〜図４（ｄ）に示すパーティションタイプ１６×１６、１６×８、８×１６および８×８が順次設定され、これらパーティションタイプ１６×１６、１６×８、８×１６および８×８内の各パーティションそれぞれに対する処理が順次、行われる。
【００４０】
ステップＳ１３で、全てのパーティションについて粗探索が終了したと判断されたら、処理は次のステップＳ１４に移行される。ステップＳ１４では、上述のステップＳ１２において各パーティションについて記憶された画素差分を、符号化対象ブロック単位で合計する。換言すれば、ステップＳ１４では、パーティション毎に求められた画素差分を、パーティション分割方法毎に符号化対象ブロック単位の画素差分に纏める。例えば、パーティションタイプ１６×８であれば、上側のパーティションの画素差分と、下側のパーティションの画素差分とを合計する。これを、パーティションタイプ１６×１６、１６×８、８×１６および８×８のそれぞれについて行う。
【００４１】
次のステップＳ１５で、密探索用のパーティション分割方法の候補を決定する。第１に、ステップＳ１４で求められた、パーティション分割方法毎の符号化対象ブロック単位での画素差分を比較して、画素差分が最小のパーティション分割方法を選択し、第１のパーティション分割方法とする。第２に、統計的処理により確率的に求めた、発生確率が最大のパーティション分割方法を、第２のパーティション分割方法とする。
【００４２】
なお、第２のパーティション分割方法は、例えば、第１のパーティション分割方法を求める手法を、多数の動画像に対して適用した際に、符号化対象ブロック単位の画素差分が最小となる確率が最も高くなるパーティション分割方法を選択することで得る。例えば、多数の動画像に対して第１のパーティション分割方法を求めた結果を蓄積し、蓄積されたデータを統計的に解析する。この場合、第２のパーティション分割方法は、固定的とされる。パーティションタイプ１６×１６、１６×８、８×１６および８×８とした場合、一般的には、上述したパーティションタイプ１６×１６が第２のパーティション分割方法となる確率が高いとされている。
【００４３】
＜密探索＞
密探索用のパーティション分割方法の候補が決定されると、処理はステップＳ１６に移行され、動きベクトル探索部１０３により、フレームメモリ１０２から符号化対象ブロックの画像データと、参照画像データとが再び読み出される。密探索においては、符号化対象ブロックの画像データと、参照画像データとを縮小せずに探索処理を行う。
【００４４】
次のステップＳ１７では、第１のパーティション分割方法により設定されたパーティション毎に、動きベクトルの探索が行われる。より具体的には、上述した粗探索で求めた、当該パーティションの動きベクトルが指し示す座標を中心として、当該パーティションに対して水平および垂直共に±３画素の範囲を探索範囲とする。この探索範囲でパーティションのブロックマッチングを行い、最も相関が高いブロックを選択して動きベクトルを求める。さらに、ブロックマッチングの結果求められた、最も相関の高いブロックと、符号化対象ブロックにおける当該パーティションとの対応する画素同士の差分値を合計した値を、当該パーティションの画素差分として記憶する。
【００４５】
次のステップＳ１８で、第２のパーティション分割方法により設定されたパーティション毎に、上述のステップＳ１７と同様にして動きベクトルの探索が行われる。ステップＳ１８で第２のパーティション分割方法に基づく動きベクトル探索処理が終了すると、処理はステップＳ１９に移行される。
【００４６】
ステップＳ１９では、パーティション分割方法を決定すると共に、符号化対象ブロックの動きベクトルを決定する。上述のステップＳ１４と同様にして、第１および第２のパーティション分割方法毎に、各パーティションについて記憶された画素差分を、符号化対象ブロック単位で合計する。そして、第１のパーティション分割方法における符号化対象ブロック単位の画素差分の合計と、第２のパーティション分割方法における符号化対象ブロック単位の画素差分の合計とを比較する。比較の結果、第１および第２のパーティション分割方法のうち画素差分の合計の小さい方を選択し、当該符号化対象ブロックのパーティション分割方法とする。
【００４７】
また、動きベクトルについては、上述のステップＳ１７およびステップＳ１８で記憶された動きベクトルのうち、選択されたパーティション分割方法に対応する動きベクトルが当該符号化対象ブロックの動きベクトルとして決定される。
【００４８】
図５を用いて、上述した動きベクトル探索部１０３の動作について、より具体的に説明する。ここでは、粗探索で画素差分が最小となる、第１のパーティション分割方法がパーティションタイプ８×１６であって、発生確率が最大となる第２のパーティション分割方法がパーティションタイプ１６×１６であるものとする。
【００４９】
図３のステップＳ１１〜ステップＳ１３の処理により、パーティションタイプ１６×１６、１６×８、８×１６および８×８のそれぞれについて粗探索が行われ（図５（ａ）参照）、粗探索による画素差分と動きベクトルとがパーティション毎に求められる。ステップＳ１４で符号化対象ブロック単位の画素差分が求められる。その結果に基づき、ステップＳ１５で、画素差分が最小になる第１のパーティション分割方法（この例ではパーティションタイプ８×１６）と、発生確率が最大の第２のパーティション分割方法（この例ではパーティションタイプ１６×１６）とが決定される。
【００５０】
密探索では、図５（ｂ）に例示されるように、第１および第２のパーティション分割方法について、動きベクトルを求める処理と画素差分を求める処理とがそれぞれ行われる（ステップＳ１７およびステップＳ１８）。第１および第２のパーティション分割方法のうち、符号化対象ブロックの画素差分の合計が小さい方が、当該符号化対象ブロックに対するパーティション分割方法として選択される。それと共に、選択されたパーティション分割方法に対応する動きベクトルが、当該符号化対象ブロックの動きベクトルとして決定される。図５（ｃ）の例では、パーティションタイプ１６×１６が最終的なパーティション分割方法として選択されている。
【００５１】
このように、本発明の第１の実施形態によれば、密探索時に動きベクトルの探索を行うパーティション分割方法が２つで済む。そのため、動きベクトル探索に要する演算量が軽減される。
【００５２】
＜第２の実施形態＞
次に、本発明の第２の実施形態について説明する。本発明の第２の実施形態は、上述した第１の実施形態による動きベクトル探索動作を、より一般化したものである。すなわち、上述した第１の実施形態では、動きベクトルの探索を粗探索および密探索の２段階で行っている。これに対して、本第２の実施形態では、動きベクトルの探索をｎ段階とし、探索の精度を段階的に上げてパーティション分割方法を選択していくと共に、動きベクトルの探索を行う。したがって、上述した第１の実施形態による動きベクトル探索動作は、本第２の実施形態による当該動作の限定された例であるといえる。
【００５３】
なお、本第２の実施形態では、図２を用いて説明した符号化部１１の構成をそのまま適用でき、上述の第１の実施形態と処理が異なるのは動きベクトル探索部１０３のみとなる。以下、本第２の実施形態による動きベクトル探索部１０３における一例の処理について、図６のフローチャートを用いて説明する。
【００５４】
ステップＳ３０で、動きベクトル探索部１０３による動きベクトル探索の精度が設定される。そして、動きベクトル探索部１０３は、上述した第１の実施形態の場合と同様に、フレームメモリ１０２から読み出された符号化対象ブロックの画像データと参照画像データとを、探索精度に応じて縮小する。例えば、探索精度が４画素単位であれば、画像データの縮小率を１／４とし、探索精度が２画素単位であれば縮小率を１／２、探索精度が１画素単位であれば縮小率を１／１（縮小しない）とする。
【００５５】
次のステップＳ３１で、パーティションが設定されると共に、パーティション分割方法に対するグループ設定が行われる。本第２の実施形態では、パーティション分割方法をグループに振り分け、グループ毎に動きベクトル探索処理を行う。詳細は後述するが、グループ分けは、各パーティションタイプの発生確率に基づき行うことができる。
【００５６】
ステップＳ３２およびステップＳ３３で、探索対象のパーティショングループについて、設定されたパーティション毎に、上述した第１の実施形態のステップＳ１２の処理と同様にして、探索精度に応じて動きベクトル探索処理が行われる。すなわち、符号化対象ブロックのパーティション毎に参照画像データとのブロックマッチングが行われ、最も相関の高いブロックが選択される。そして、当該ブロックとパーティションについて、座標の差分を当該パーティションの動きベクトルとして記憶すると共に、対応する画素同士の差分値を合計した値を当該パーティションの画素差分として記憶する。
【００５７】
ステップＳ３３で、１つのパーティショングループに対する探索処理が終了したと判断されたら、処理はステップＳ３４に移行される。ステップＳ３４では、次の探索精度による動きベクトル探索処理におけるパーティション分割方法の候補が決定される。すなわち、ステップＳ３４では、処理が終了したパーティショングループ内で、上述のステップＳ１５と同様にして、パーティション分割方法毎の符号化対象ブロック単位での画素差分を比較して、画素差分が最小のパーティション分割方法を選択する。それと共に、統計的な手法により求めた、発生確率が最大のパーティション分割方法を選択する。
【００５８】
処理はステップＳ３５に移行され、ステップＳ３０で設定された探索精度における全てのパーティショングループに対する動きベクトル探索処理が終了したか否かが判断される。若し、終了していないと判断されれば、処理はステップＳ３１に戻され、次のパーティショングループに対する処理が行われる。
【００５９】
ステップＳ３５で、当該探索精度における全てのパーティショングループに対する動きベクトル探索処理が終了したと判断されたら、処理はステップＳ３６に移行される。ステップＳ３６では、パーティショングループ数が１で、且つ、パーティション分割方法の候補数が２であるか否かが判断される。ステップＳ３６において、若し、パーティショングループ数が１ではないか、または、パーティション分割方法の候補数が２ではないと判断されたら、処理はステップＳ３０に戻され、動きベクトルの探索精度の設定が行われる。そして、ステップＳ３０〜ステップＳ３６の処理が、ステップＳ３６の条件を満たすまで順次繰り返される。
【００６０】
一方、ステップＳ３６において、パーティショングループ数が１で、且つ、パーティション分割方法の候補数が２であると判断されたら、処理はステップＳ３７に移行される。ステップＳ３７では、２つのパーティション分割方法毎に、各パーティションの画素差分を符号化対象ブロック単位で合計する。そして、２つのパーティション分割方法それぞれによる当該画素差分の合計を比較し、当該画素差分の合計の小さいパーティション分割方法を選択し、当該符号化対象ブロックのパーティション分割方法に決定する。動きベクトルについても同様に、選択されたパーティション分割方法に対応する動きベクトルが当該符号化対象ブロックの動きベクトルとして決定される。
【００６１】
図６のフローチャートの処理について、図７および図８を用いて、より具体的に説明する。ここでは、探索精度を４画素単位、２画素単位および１画素単位の順で上げて、３段階で、動きベクトル探索動作を行うものとする。また、パーティション分割方法として、図７に例示される７種類を用意する。すなわち、上述の実施形態で用いたパーティションタイプ１６×１６、１６×８、８×１６および８×８に加え、パーティションタイプ８×４、４×８および４×４を用意する。パーティションタイプ８×４は、パーティションタイプ８×８の各パーティションを水平方向に２等分する。パーティションタイプ４×８は、パーティションタイプ８×８の各パーティションを垂直方向に２等分する。また、パーティションタイプ４×４は、パーティションタイプ８×８の各パーティションを水平および垂直にそれぞれ２等分する。
【００６２】
第１段階目の処理では、ステップＳ３０で動きベクトル探索の精度が４画素単位に設定され、符号化対象ブロックおよび動きベクトル探索範囲の画像データが縮小率１／４で縮小される。そして、ステップＳ３１で、パーティション設定およびパーティション分割方法に対するグループ設定が行われる。例えば、図８（ａ）に例示されるように、パーティションタイプ１６×１６、１６×８および８×１６を第１のパーティショングループとし、パーティションタイプ８×８、８×４、４×８および４×４を第２のパーティショングループとする。
【００６３】
ここで、パーティション分割方法に対するグループ設定は、例えば各パーティション分割方法の発生確率に基づき行うことができる。すなわち、図７に示したように７種類のパーティション分割方法を用意した場合、パーティションタイプ１６×１６、８×８に、発生確率のピークが生じることが知られている。この発生確率のピークが生じるパーティション分割方法を互いに別のグループに振り分ける。これにより、発生確率に基づき選択されたパーティション分割方法と、画素差分に基づき選択されたパーティション分割方法とを比較する機会が増え、パーティション分割方法の選択および動きベクトルの探索を、より高い精度で行うことが可能となる。
【００６４】
ステップＳ３２およびステップＳ３３で、パーティショングループ毎の動きベクトル探索が行われる。先ず第１のパーティショングループに対して動きベクトル探索処理が行われ、処理が終了すると、ステップＳ３４に処理が移行される。そして、第１のパーティショングループ内でパーティション分割方法毎の符号化対象ブロック単位での画素差分を比較して、画素差分が最小となる第１のパーティション分割方法と、発生確率が最大となる第２のパーティション分割方法とが選択される。図８（ａ）の例では、パーティションタイプ８×１６が第１のパーティション分割方法として選択され、パーティションタイプ１６×１６が第２のパーティション分割方法として選択されている。
【００６５】
第２のパーティショングループに対しても同様に動きベクトル探索処理が行われ、ステップＳ３４で、画素差分が最小となる第３のパーティション分割方法と、発生確率が最大となる第４のパーティション分割方法とが選択される。図８（ａ）の例では、パーティションタイプ４×８が第３のパーティション分割方法として選択され、パーティションタイプ８×８が第４のパーティション分割方法として選択されている。
【００６６】
第１段階目における全てのパーティショングループに対する動きベクトル探索処理が終了したので（ステップＳ３５）、処理はステップＳ３６に移行される。この段階では、図８（ａ）に例示されるように、パーティショングループ数が２で、パーティション分割方法の候補数が４であるので、処理がステップＳ３０に戻される。そして、探索精度が２画素単位に設定され、第２段階目の処理が開始される。
【００６７】
第２段階目の処理において、ステップＳ３１でパーティショングループの設定が行われる。第１段階目の処理において、パーティション分割方法の候補として、第１〜第４のパーティション分割方法が選択されている。ステップＳ３１では、図８（ｂ）に例示されるように、これら第１〜第４のパーティション分割方法から新たなパーティショングループ（第３のパーティショングループとする）を作る。
【００６８】
そして、ステップＳ３２およびステップＳ３３において、この第３のパーティショングループについて上述と同様にして動きベクトル探索処理が行われ、処理が終了すると、ステップＳ３４に処理が移行される。そして、画素差分が最小となる第５のパーティション分割方法と、発生確率が最大となる第６のパーティション分割方法とが選択される。図８（ｂ）の例では、パーティションタイプ４×８が第５のパーティショングループとして選択され、パーティションタイプ１６×１６が第６のパーティショングループとして選択されている。
【００６９】
第２段階目における全てのパーティショングループに対する動きベクトル探索処理が終了したので（ステップＳ３５）、処理はステップＳ３６に移行される。この段階では、図８（ｂ）に例示されるように、パーティショングループ数が１で、パーティション分割方法の候補数が４であるので、処理がステップＳ３０に戻される。そして、探索精度が１画素単位に設定され、第３段階目の処理が開始される。
【００７０】
第３段階目の処理において、ステップＳ３１でパーティショングループの設定が行われる。第２段階目の処理において、パーティション分割方法の候補として、第５および第６のパーティション分割方法が選択されている。ステップＳ３１では、図８（ｃ）に例示されるように、これら第５および第６のパーティション分割方法から新たなパーティショングループ（第４のパーティショングループとする）を作る。
【００７１】
そして、ステップＳ３２およびステップＳ３３において、この第４のパーティショングループについて上述と同様にして動きベクトル探索処理が行われ、処理が終了すると、ステップＳ３４に処理が移行される。そして、画素差分が最小となるパーティション分割方法と、発生確率が最大となるパーティション分割方法とが選択される。図８（ｃ）の例では、パーティションタイプ４×８が画素差分が最小となるパーティショングループとして選択され、パーティションタイプ１６×１６が発生確率が最大となるパーティショングループとして選択されている。
【００７２】
第３段階目における全てのパーティショングループに対する動きベクトル探索処理が終了したので（ステップＳ３５）、処理はステップＳ３６に移行される。この段階では、図８（ｃ）に例示されるように、パーティショングループ数が１で、パーティション分割方法の候補数が２であるので、処理がステップＳ３７に移行される。
【００７３】
ステップＳ３７では、２つのパーティション分割方法毎に、各パーティションの画素差分を符号化対象ブロック単位で合計し、当該画素差分の合計の小さい方を選択して、当該符号化対象ブロックのパーティション分割方法に決定する。動きベクトルについても同様に、選択されたパーティション分割方法に対応する動きベクトルが当該符号化対象ブロックの動きベクトルとして決定される。図８（ｄ）の例では、パーティションタイプ４×８が最終的なパーティション分割方法として選択されている。
【００７４】
このように、本発明の第２の実施形態によれば、探索精度に応じたｎ段階で動きベクトルの探索処理を行う場合でも、探索するパーティション分割方法の数が少なくて済み、動きベクトル探索に要する演算処理を少なく抑えることができる。
【００７５】
なお、上述では、本発明がデジタルビデオカメラに適用されるものとして説明したが、これはこの例に限定されない。すなわち、本発明は、Ｈ．２６４｜ＡＶＣに従い動画像データの符号化を行う装置であれば、他の種類の装置にも適用可能なものである。
【００７６】
＜他の実施形態＞
上述の各実施形態は、システム或は装置のコンピュータ（或いはＣＰＵ、ＭＰＵ等）によりソフトウェア的に実現することも可能である。
【００７７】
したがって、上述の各実施形態をコンピュータで実現するために、該コンピュータに供給されるコンピュータプログラム自体も本発明を実現するものである。つまり、上述の各実施形態の機能を実現するためのコンピュータプログラム自体も本発明の一つである。
【００７８】
なお、上述の各実施形態を実現するためのコンピュータプログラムは、コンピュータで読み取り可能であれば、どのような形態であってもよい。例えば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等で構成することができるが、これらに限るものではない。
【００７９】
上述の各実施形態を実現するためのコンピュータプログラムは、記憶媒体又は有線／無線通信によりコンピュータに供給される。プログラムを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、磁気テープ等の磁気記憶媒体、ＭＯ、ＣＤ、ＤＶＤ等の光／光磁気記憶媒体、不揮発性の半導体メモリなどがある。
【００８０】
有線／無線通信を用いたコンピュータプログラムの供給方法としては、コンピュータネットワーク上のサーバを利用する方法がある。この場合、本発明を形成するコンピュータプログラムとなりうるデータファイル（プログラムファイル）をサーバに記憶しておく。プログラムファイルとしては、実行形式のものであっても、ソースコードであっても良い。
【００８１】
そして、このサーバにアクセスしたクライアントコンピュータに、プログラムファイルをダウンロードすることによって供給する。この場合、プログラムファイルを複数のセグメントファイルに分割し、セグメントファイルを異なるサーバに分散して配置することも可能である。
【００８２】
つまり、上述の各実施形態を実現するためのプログラムファイルをクライアントコンピュータに提供するサーバ装置も本発明の一つである。
【００８３】
また、上述の各実施形態を実現するためのコンピュータプログラムを暗号化して格納した記憶媒体を配布し、所定の条件を満たしたユーザに、暗号化を解く鍵情報を供給し、ユーザの有するコンピュータへのインストールを許可してもよい。鍵情報は、例えばインターネットを介してホームページからダウンロードさせることによって供給することができる。
【００８４】
また、上述の各実施形態を実現するためのコンピュータプログラムは、すでにコンピュータ上で稼働するＯＳの機能を利用するものであってもよい。
【００８５】
さらに、上述の各実施形態を実現するためのコンピュータプログラムは、その一部をコンピュータに装着される拡張ボード等のファームウェアで構成してもよいし、拡張ボード等が備えるＣＰＵで実行するようにしてもよい。
【図面の簡単な説明】
【００８６】
【図１】本発明を適用可能なデジタルビデオカメラの一例の構成を概略的に示すブロック図である。
【図２】本発明の実施形態に係る符号化部の一例の構成を示すブロック図である。
【図３】本発明の第１の実施形態による一例の動きベクトル探索処理を示すフローチャートである。
【図４】本発明の第１の実施形態において符号化対象ブロックに対して設定されるマクロブロック・パーティションの例を示す略線図である。
【図５】本発明の第１の実施形態による動きベクトル探索部の動作についてより具体的に説明するための略線図である。
【図６】本発明の第２の実施形態による一例の動きベクトル探索処理を示すフローチャートである。
【図７】本発明の第２の実施形態において符号化対象ブロックに対して設定されるマクロブロック・パーティションの例を示す略線図である。
【図８】本発明の第２の実施形態による動きベクトル探索部の動作についてより具体的に説明するための略線図である。
【符号の説明】
【００８７】
１  デジタルビデオカメラ
１１  符号化部
１０２  フレームメモリ
１０３  動きベクトル探索部
１０４  フレーム間動き補償部
１０５  イントラ予測部
１０８  整数変換部
１０９  量子化部
１１０  逆量子化部
１１１  逆整数変換部
１１３  ループ内フィルタ
１１５  エントロピー符号化部
１１６  符号量制御部
【図１】
0005390794.tif 000002
【図２】
0005390794.tif 000003
【図３】
0005390794.tif 000004
【図４】
0005390794.tif 000005
【図５】
0005390794.tif 000006
【図６】
0005390794.tif 000007
【図７】
0005390794.tif 000008
【図８】
0005390794.tif 000009