(57)【要約】【課題】整数精度の動き検出と、小数精度の動き検出と、次対象マクロブロックについての動き検出に使用する参照マクロブロックの画像データの予備転送との三者を並列に行って、高速度で且つ高精度な動き検出を可能にする。【解決手段】参照画像メモリ４は、垂直方向に３個の参照マクロブロックを記憶する容量を持つ参照バンクメモリ４ａ〜４ｇを７個備える。この７個の参照バンクメモリのうち、任意の３個は整数精度の動き検出用に適応的に割り付けられ、他の任意の３個は小数精度の動き検出用に適応的に割り付けられ、残る１個は次対象マクロブロックについての動き検出に使用する参照マクロブロックの画像データの予備転送用として適応的に割り付けられる。各参照バンクメモリ４ａ〜４ｇは個別に１本ずつ合計７本のバスＢＳ５を介して動き検出回路８に接続される。動き検出回路８は前記整数精度の動き検出と小数精度の動き検出と画像データの予備転送との三者を並列に実行する。【選択図】図１
2007189518.tif 000002
【特許請求の範囲】
【請求項１】
参照フレーム画像に含まれる複数の参照マクロブロック画像を参照して、対象フレーム画像に含まれる対象マクロブロック画像の動きを検出する信号処理装置であって、
前記対象フレーム画像に含まれる対象マクロブロック画像を記憶する対象画像記憶手段と、
前記参照フレーム画像を構成する多数の参照マクロブロック画像のうち、前記対象マクロブロック画像に対応する参照マクロブロック画像を中心として水平及び垂直方向に並ぶ複数の参照マクロブロック画像を記憶し、垂直方向に並ぶ所定個の参照マクロブロック画像を記憶する領域毎に物理的に独立して分割された複数の参照バンク部を有する参照画像記憶手段と、
前記参照画像記憶手段の複数の参照バンク部に記憶された複数の参照マクロブロックを参照して、前記対象画像記憶手段の対象マクロブロック画像について動き検出する動き検出手段とを備えた
ことを特徴とする信号処理装置。
【請求項２】
前記請求項１記載の信号処理装置において、
前記参照画像記憶手段の複数の参照バンク部は、少なくとも、
対象マクロブロック画像の整数精度の動き検出を行うための複数の参照マクロブロック画像を記憶する整数精度用参照バンク部と、
前記対象マクロブロック画像の次のサイクルの対象マクロブロック画像の動き検出を行うための次サイクル用の複数の参照マクロブロック画像を記憶する予備転送用参照バンク部と、
前記対象マクロブロック画像の所定サイクル数前の対象マクロブロック画像の小数精度の動き検出を行うための複数の参照マクロブロック画像を記憶する小数精度用参照バンク部とに適応的に割り付けられ、
前記参照画像記憶手段が有する全ての参照バンク部と前記動き検出手段とは、各々個別の信号線で接続されている
ことを特徴とする信号処理装置。
【請求項３】
前記請求項２記載の信号処理装置において、
前記参照画像記憶手段の複数の参照バンク部に記憶された複数の参照マクロブロック画像の転送を制御する転送制御手段を有し、
前記転送制御手段は、
前記整数精度用参照バンク部に記憶された複数の参照マクロブロック画像及び前記小数精度用参照バンク部に記憶された複数の参照マクロブロック画像を同時に前記動き検出手段に転送しながら、前記次サイクル用の複数の参照マクロブロック画像を前記予備転送用参照バンク部に格納するように整数／小数精度探索並列実行制御を行う
ことを特徴とする信号処理装置。
【請求項４】
前記請求項３記載の信号処理装置において、
前記転送制御手段は、
前記整数／小数精度探索並列実行制御に代えて、
前記整数精度用参照バンク部に記憶された複数の参照マクロブロック画像を前記動き検出手段に転送しながら、前記次サイクル用の複数の参照マクロブロック画像を前記予備転送用参照バンク部に格納し、その後、前記整数精度用参照バンク部に記憶された複数の参照マクロブロック画像を小数精度用の複数の参照マクロブロック画像として前記動き検出手段に転送するように整数／小数精度探索直列実行制御を行う
ことを特徴とする信号処理装置。
【請求項５】
前記請求項３記載の信号処理装置において、
前記参照画像記憶手段で使用する参照バンク部の個数をバンク構成として特定するバンク構成特定手段を備え、
前記バンク構成特定手段は、要求される画像の性能に関する情報が入力され、前記入力された要求性能に応じて前記参照画像記憶手段のバンク構成を変更し、
前記転送制御手段は、前記バンク構成特定手段により変更された参照画像記憶手段のバンク構成に応じて、前記整数／小数精度探索並列実行制御と整数／小数精度探索直列実行制御とを切り換える
ことを特徴とする信号処理装置。
【請求項６】
前記請求項３記載の信号処理装置において、
前記参照画像記憶手段で使用する参照バンク部の個数をバンク構成として特定するバンク構成特定手段を備え、
前記バンク構成特定手段は、
要求される画像の性能に関する情報が入力され、前記入力された要求性能に応じて前記参照画像記憶手段のバンク構成を変更し、前記入力された要求性能が高い場合には、前記整数精度用参照バンク部、前記予備転送用参照バンク部及び小数精度用参照バンク部の記憶領域を拡大する
ことを特徴とする信号処理装置。
【請求項７】
前記請求項５又は６記載の信号処理装置において、
前記要求される画像の性能に関する情報は、画像の画質である
ことを特徴とする信号処理装置。
【請求項８】
前記請求項５又は６記載の信号処理装置において、
前記要求される画像の性能に関する情報は、画像サイズである
ことを特徴とする信号処理装置。
【請求項９】
前記請求項５又は６記載の信号処理装置において、
前記要求される画像の性能に関する情報は、画像のフレームレートである
ことを特徴とする信号処理装置。
【請求項１０】
前記請求項３記載の信号処理装置において、
画像の動き検出は、双方向予測により行われ、
前記参照画像記憶手段の整数精度用参照バンク部、予備転送用参照バンク部及び小数精度用参照バンク部は、各々、前方予測専用と後方予測専用とに区別され、
前記前方予測専用の整数精度用参照バンク部、予備転送用参照バンク部及び小数精度用参照バンク部と、後方予測専用の整数精度用参照バンク部、予備転送用参照バンク部及び小数精度用参照バンク部とから、各々、参照マクロブロック画像が同時に前記動き検出手段に転送される
ことを特徴とする信号処理装置。
【請求項１１】
前記請求項１記載の信号処理装置において、
前記動き検出手段による画像の設定範囲での動き検出の予測精度を検出する予測精度検出手段と、
前記参照画像記憶手段で使用する参照バンク部の個数をバンク構成として特定するバンク構成特定手段とを備え、
前記バンク構成特定手段は、
前記予測精度検出手段により検出した予測精度に応じて、前記参照画像記憶手段のバンク構成を変更し、予測精度が低い場合には、使用する参照バンク部の個数を増大する
ことを特徴とする信号処理装置。
【請求項１２】
前記請求項１１記載の信号処理装置において、
前記画像の設定範囲は、画像の１フレームである
ことを特徴とする信号処理装置。
【請求項１３】
前記請求項１２記載の信号処理装置において、
前記バンク構成特定手段は、
前記予測精度検出手段により検出した画像の１フレームでの予測精度に応じて、その予測精度が検出されたフレームの次フレームでの動き検出に使用する参照画像記憶手段の参照バンク部の個数を変更する
ことを特徴とする信号処理装置。
【請求項１４】
前記請求項１１記載の信号処理装置において、
前記画像の設定範囲は、水平方向に複数個のマクロブロックが並ぶブロックラインが垂直方向に複数並ぶ画像の１フレームのうちの１ブロックラインである
ことを特徴とする信号処理装置。
【請求項１５】
前記請求項１４記載の信号処理装置において、
前記バンク構成特定手段は、
前記予測精度検出手段により検出した画像の１ブロックラインでの予測精度に応じて、その予測精度が検出されたブロックラインの次ブロックラインでの動き検出に使用する参照画像記憶手段の参照バンク部の個数を変更する
ことを特徴とする信号処理装置。
【請求項１６】
前記請求項１記載の信号処理装置において、
前記動き検出手段は、各対象マクロブロック画像について動きベクトルを算出し、
前記動き検出手段による画像の設定範囲内での各対象マクロブロック画像についての動きベクトルを基準値と比較する比較手段と、
前記参照画像記憶手段で使用する参照バンク部の個数をバンク構成として特定するバンク構成特定手段とを備え、
前記バンク構成特定手段は、
前記比較手段での比較結果に応じて、前記参照画像記憶手段のバンク構成を変更する
ことを特徴とする信号処理装置。
【請求項１７】
前記請求項１６記載の信号処理装置において、
前記比較手段は、各対象マクロブロック画像についての動きベクトルが前記基準値を越える数を計数し、
前記バンク構成特定手段は、前記比較手段により計数された数が設定数以上のとき、前記参照画像記憶手段で使用する参照バンク部の個数を増大する
ことを特徴とする信号処理装置。
【請求項１８】
前記請求項１６又は１７記載の信号処理装置において、
前記画像の設定範囲は、画像の１フレームである
ことを特徴とする信号処理装置。
【請求項１９】
前記請求項１８記載の信号処理装置において、
前記バンク構成特定手段は、
前記比較手段による比較結果に応じて、動きベクトルが算出された対象マクロブロックを含むフレームの次フレームでの動き検出に使用する参照画像記憶手段の参照バンク部の個数を変更する
ことを特徴とする信号処理装置。
【請求項２０】
前記請求項１６又は１７記載の信号処理装置において、
前記画像の設定範囲は、水平方向に複数個のマクロブロックが並ぶブロックラインが垂直方向に複数並ぶ画像の１フレームのうちの１ブロックラインである
ことを特徴とする信号処理装置。
【請求項２１】
前記請求項２０記載の信号処理装置において、
前記バンク構成特定手段は、
前記比較手段による比較結果に応じて、動きベクトルが算出された対象マクロブロックを含むブロックラインの次ブロックラインでの動き検出に使用する参照画像記憶手段の参照バンク部の個数を変更する
ことを特徴とする信号処理装置。
【請求項２２】
前記請求項１６記載の信号処理装置において、
前記比較手段は、
各対象マクロブロック画像についての動きベクトルの水平方向成分及び垂直方向成分を各々水平方向基準値及び垂直方向基準値と比較し、
前記バンク構成特定手段は、
前記比較手段での水平方向及び垂直方向の比較結果に応じて、前記参照画像記憶手段のバンク構成を変更する
ことを特徴とする信号処理装置。
【請求項２３】
前記請求項１記載の信号処理装置において、
前記参照画像記憶手段で使用する参照バンク部の個数をバンク構成として特定するバンク構成特定手段を備えた
ことを特徴とする信号処理装置。
【請求項２４】
前記請求項２３記載の信号処理装置と、
動画像を撮影し、その画像信号を前記信号処理装置に出力する撮像部とを備え、
前記撮像部は、
前記動画像の撮影時に、画像位置の変化を検出する変化検出手段を有し、
前記信号処理装置に備えるバンク構成特定手段の一部は、前記撮像部に備える変化検出手段により兼用される
ことを特徴とする撮像装置。
【請求項２５】
撮像部を有するネットワークカメラと、
前記ネットワークカメラの撮像部で撮影された動画像の配信を要求し、配信された動画像を表示する画像表示器を各々有する複数の画像端末とを備えたネットワークカメラシステムにおいて、
前記ネットワークカメラは、前記請求項２３記載の信号処理装置を有し、
前記信号処理装置に備えるバンク構成特定手段は、動画像の配信を同時に要求した前記画像端末の個数に応じて、参照画像記憶手段のバンク構成を変更する
ことを特徴とするネットワークカメラシステム。
【請求項２６】
前記請求項２５記載のネットワークカメラシステムにおいて、
前記信号処理装置は、前記請求項３記載の転送制御手段を有し、
前記転送制御手段は、
前記バンク構成特定手段によって変更された参照画像記憶手段のバンク構成において、常に前記整数／小数精度探索並列実行制御を行う
ことを特徴とするネットワークカメラシステム。
【請求項２７】
前記請求項２５記載のネットワークカメラシステムにおいて、
前記信号処理装置は、前記請求項３記載の転送制御手段を有し、
前記転送制御手段は、
前記バンク構成特定手段によって変更された参照画像記憶手段のバンク構成に応じて、前記整数／小数精度探索並列実行制御と前記整数／小数精度探索直列実行制御とを切り換えて行う
ことを特徴とするネットワークカメラシステム。
【請求項２８】
前記請求項２５記載のネットワークカメラシステムにおいて、
前記ネットワークカメラは、
前記複数の画像端末のうち何れかの画像端末に動画像を配信している状況において他の画像端末から動画像の配信要求があった時、前記バンク構成特定手段が前記他の画像端末からの動画像の配信要求に応じて参照画像記憶手段のバンク構成を変更できないときには、前記配信要求をした他の画像端末に対してその旨を通知する
ことを特徴とするネットワークカメラシステム。
【請求項２９】
前記請求項２８記載のネットワークカメラシステムにおいて、
前記配信要求をした他の画像端末は、
前記ネットワークカメラから参照画像記憶手段のバンク構成を変更できない旨の通知を受けたとき、動画像の要求性能を下げた配信要求を前記ネットワークカメラに送信し、
前記ネットワークカメラに備える信号処理装置のバンク構成特定手段は、
前記他の画像端末から動画像の要求性能を下げた配信要求を受けたとき、その要求性能に応じて参照画像記憶手段のバンク構成の変更を試みる
ことを特徴とするネットワークカメラシステム。
【請求項３０】
前記請求項２８記載のネットワークカメラシステムにおいて、
前記ネットワークカメラは、
前記バンク構成特定手段が前記他の画像端末からの動画像の配信要求に応じて参照画像記憶手段のバンク構成を変更できないときには、動画像配信中の画像端末に対して、参照バンク部を前記配信要求をした他の画像端末に優先的に割当てることを許可するかの問い合わせを通知する
ことを特徴とするネットワークカメラシステム。
【請求項３１】
前記請求項３０記載のネットワークカメラシステムにおいて、
前記動画像配信中の画像端末は、前記ネットワークカメラに対して、前記配信要求をした他の画像端末への優先割当ての許可の問い合わせに対して応答し、
前記ネットワークカメラは、
前記動画像配信中の画像端末から、前記配信要求をした他の画像端末への優先的割当ての許可応答を受けたとき、この優先割当てを実行する
ことを特徴とするネットワークカメラシステム。
【請求項３２】
前記請求項１又は２３記載の信号処理装置を含んで画像処理を行う画像処理部と、
前記画像処理部内の信号処理装置へ画像信号を出力するセンサーと、
前記センサーへ光を結像する光学系とを備えた
ことを特徴とする映像システム。
【請求項３３】
前記請求項１又は２３記載の信号処理装置を含んで画像処理を行う画像処理部と、
アナログ値の画像信号が入力され、この画像信号をデジタル値に変換して前記画像処理部内の信号処理装置へ出力するＡ／Ｄ変換部とを備えた
ことを特徴とする映像システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画圧縮方法である動き補償予測符号化において動きベクトルを検出する信号処理装置、及びこの信号処理装置を用いた撮像装置、ネットワークカメラシステム及び映像システムに関し、詳しくは、動き検出処理の高速化及び高符号化効率を図るものに関する。
【背景技術】
【０００２】
今日、画像を高い圧縮率で圧縮できる信号処理技術が発達し、ディジタルカメラやディジタルビデオカメラに使用されている。
【０００３】
動画像の圧縮方法としては、ＭＰＥＧ(Moving Picture Experts Group)が一般的に知られている。このＭＰＥＧでは、被写体の変位と画像の差分データのみを符号化することにより効率良く画像データを圧縮する動き補償予測が用いられている。動き補償予測では、被写体の変位を示す動きベクトルがブロックマッチング法を初めとする算出方法により算出される。
【０００４】
図２７に示したように、前フレーム画像のみを使用するフレーム間予測符号化を例示して説明すると、前フレーム画像を多数のマクロブロックに分割し、そのうち数個のマクロブロックを現フレーム画像内の対象マクロブロックについて動きベクトルを検出するのに参照する参照マクロブロックに指定する。図２８では、（ｘ、ｙ）＝１６画素×１６画素のブロックを１つの参照マクロブロックとして、合計９個の参照マクロブロックが指定され、動き補償後の参照マクロブロックＯと同図中央に位置する参照マクロブロックＲとの離隔が動きベクトルＭ（ＭＶｘ、ＭＶｙ）として算出されている。
【０００５】
以下、対象マクロブロックについて動き検出する動き検出装置の構成を説明する。この構成は例えば特許文献１に記載される。図２９は、従来の動き検出装置の内部構成を示す。
【０００６】
同図において、６１は動き検出装置であって、システムメモリ６２、対象画像メモリ６３、及び参照画像メモリ６４を備える。前記システムメモリ６２は、少なくとも現フレーム画像の１つ前のフレーム画像（参照フレーム画像）を記憶する容量を持つ。対象画像メモリ６３は、現フレーム画像のうち動き検出の対象となる１つのマクロブロック（対象マクロブロック）の画素データ、及びその次に対象となる次対象マクロブロックの画素データを記憶する容量を持つ。また、参照画像メモリ６４は、物理的に１個のメモリから構成され、データの読み出しと書き込みとを同時に行い得るように２ポート型のメモリから成っている。この参照画像メモリ６４は、縦方向に３個、横方向に４個並ぶ合計１２個の参照マクロブロックの画像データを格納できる４列のブロック領域の容量を持ち、前記システムメモリ６２と１本のデータバスＤ１で接続される。前記対象マクロブロック及び参照マクロブロックの各々大きさは、例えば図２８に示したように（ｘ、ｙ）＝１６画素×１６画素である。
【０００７】
また、図２９において、６５は前記対象画像メモリ６３を制御する対象画像メモリ制御回路、６６は前記参照画像メモリ６４を制御する参照画像メモリ制御回路、６７は前記参照画像メモリ制御回路６６からの制御信号を受けてシステムメモリ６２を制御するシステムメモリ制御回路である。更に、６８は動き検出回路であって、前記対象画像メモリ６３及び参照画像メモリ６４と各々バスＤ２、Ｄ３で接続されると共に、前記対象画像メモリ制御回路６５及び参照画像メモリ制御回路６６を制御して、前記対象画像メモリ６３に対象マクロブロック及び次対象マクロブロックの各画像データを読み込むと共にシステムメモリ６２から参照画像メモリ６４に複数個の参照マクロブロックを順次読み込む制御を行いながら、対象画像メモリ６３に読み込んだ対象マクロブロックの画像データ及び前記参照画像メモリ６４に読み込んだ複数の参照マクロブロックの画像データを内部に取り込んで、その複数の参照マクロブロックを参照しながら対象マクロブロックについて動き検出を行い、動きベクトルＭ（ＭＶｘ、ＭＶｙ）及び動き補償後の参照マクロブロックの画像データを出力する。
【０００８】
次に、図２９に示した動き検出装置６１の動作を図３０に基づいて説明する。尚、説明の簡略上、図３０に示したように、（ｘ、ｙ）＝５×３個のマクロブロック（＝８０画素×４８画素）の範囲を１フレームとし、（ｘ、ｙ）＝３×３個のマクロブロックの範囲を動き検出の探索範囲として説明する。この説明では、同図に付した番号のように、番号ｎ（ｎ＝０〜１４）の参照マクロブロックを参照マクロブロック「ｎ」、番号ｎの対象マクロブロックを対象マクロブロック「ｎ」と表現する。
【０００９】
図３０において、ステップ１では、対象マクロブロック「０」の画像データを対象画像メモリ６３に入力する。同時に、対象マクロブロック「０」と同一位置及びその周囲に位置する４個の参照マクロブロック「０」、「１」、「５」及び「６」をシステムメモリ６２から参照画像メモリ６４の第２及び第３列目のブロック領域に格納する。
【００１０】
次いで、ステップ２では、対象画像メモリ６３の対象マクロブロック「０」の画像データを動き検出回路６８に出力すると共に、参照画像メモリ６４内の参照参照マクロブロック「０」、「１」、「５」及び「６」の画像データを動き検出回路６８に出力して、対象マクロブロック「０」についての動き検出を行う。これと並行して、対象画像メモリ６３に次対象マクロブロック「１」の画像データを格納すると共に、この次対象マクロブロック「１」の周囲に位置する参照マクロブロック「０」〜「２」、「５」〜「７」のうち、既に格納された参照マクロブロック以外の参照マクロブロック「２」、「７」をシステムメモリ６２から参照画像メモリ６４の第４列のブロック領域に格納して、次対象マクロブロック「１」の動き検出を準備をしておく。ここで、参照画像メモリ６４では、第２及び第３列目のブロック領域からの画像データの読み出しと第４列目のブロック領域への画像データの書き込みとが同時に行われるが、これ等の読み出し／書き込みは異なる列のブロック領域であること及び参照画像メモリ６４が読み出し及び書き込みの並行動作が可能な２ポート型で構成されているので、これ等の動作は可能である。
【００１１】
対象マクロブロック「０」についての動き検出が終了すると、ステップ３に移行する。このステップ３では、次対象マクロブロック「１」の画像データ及び参照マクロブロック「０」〜「２」、「５」〜「７」の画像データを上記と同様に動き検出回路６８に出力して、対象マクロブロック「１」についての動き検出を行うと共に、次の対象マクロブロック「２」の画像データを対象画像メモリ６３に格納しながら、その次対象マクロブロック「２」と同位置及びその周囲に位置する参照マクロブロック「１」〜「３」、「６」〜「８」のうち既に格納された参照マクロブロック以外の参照マクロブロック「３」、「８」をシステムメモリ２から参照画像メモリ６４の第１列目のブロック領域に格納しておく。
【００１２】
続いて、対象マクロブロック「１」についての動き検出が終了すると、ステップ４では、対象マクロブロック「２」について、参照マクロブロック「１」〜「３」、「６」〜「８」の画像データを参照しつつ、前記と同様に動き検出を行うと共に、その次の対象マクロブロック「３」の画像データを対象画像メモリ６３に格納しながら、その次対象マクロブロックの動き検出に参照すべき参照マクロブロック「４」、「９」をシステムメモリ６２から参照画像メモリ６４の第２列目のブロック領域に新たに格納しておく。
【００１３】
その後、対象マクロブロック「２」についての動き検出が終了すると、ステップ５では、対象マクロブロック「３」について、前記と同様に参照マクロブロック「２」〜「４」、「７」〜「９」の画像データを参照しつつ、動き検出を行うと共に、次の対象マクロブロック「５」の画像データを対象画像メモリ６３に格納しながら、その次対象マクロブロック「５」の動き検出に参照する３個の参照マクロブロック「０」、「５」、「１０」の画像データをシステムメモリ６２から参照画像メモリ６４の第３列目のブロック領域に新たに格納しておく。
【００１４】
以上と同様の動作を繰り返して、以後も対象ブロック「４」〜「１４」について動き検出が行われる。以上の動作では、システムメモリ６２から同一参照マクロブロックの画像データを参照画像メモリ６４に繰り返し転送する必要がないので、能率良く各対象マクロブロックについての動き検出を行うことが可能である。
【００１５】
ところで、動き補償予測符号化では、前記のような動き検出を「整数精度の動き検出」と呼び、この整数精度の動き検出の精度をより高めるように「小数精度の動き検出」が採用される。この小数精度の動き検出は、図３１に示すように、既述した動き検出によって得られた動きベクトルＭ（ＭＶｘ、ＭＶｙ）で動き補償される整数精度の参照画像データ（この画像データの位置を同図において丸印の中に斜線を付して示す）について、各々上下左右に隣接する２つの画像データ同士をフィルタ処理して、これ等の両画像データ間に位置する画像データを生成することを繰り返すことにより、小数精度（半画素精度）の画像データ（この画像データの位置を同図において白抜きの丸印で示す）を得て、例えば動きベクルトＭの先端位置を、整数精度の画像データＰから、その周囲に８個の小数精度の画像データａ〜ｈの何れか１個に変更して、より一層に精度良く動き検出を行うものである。
【特許文献１】特開２００５−２１０６４７号公報
【発明の開示】
【発明が解決しようとする課題】
【００１６】
しかしながら、前記従来の動き検出装置では、次の欠点がある。
【００１７】
すなわち、前記のように整数精度の動き検出に加えて、小数精度の動き検出を行う場合には、最初に整数精度の動き検出を行った後、その整数精度の動き検出に使用した複数の参照マクロブロックの画像データの一部を再利用して小数精度の動き検出を行う必要がある。このため、図３２に示すように、整数精度の動き検出（Motion Estimation of Full pixel precision）のみでは同図（ａ）に示す１タイムスロットは予め設定した所定時間で良いものの、小数精度の動き検出（Motion Estimation of Halfl pixel precision）をも行う場合には、整数精度の動き検出の後に連続して小数精度の動き検出を実行する必要があって、必要とする１タイムスロットを整数精度の動き検出の場合よりも長く設定しなければならない。その結果、動き検出の精度は向上するものの、動き検出に時間を要すると言う欠点が生じる。
【００１８】
また、前記従来の動き検出では、参照画像メモリ６４は、既述したように３個の参照マクロブロック分のブロック領域を４列備え、そのうち３列のブロック領域を対象マクロブロックについての動き検出用に割り付け、残り１列分のブロック領域を次の対象マクロブロックについての動き検出の準備用に割り付けており、これ等の参照画像メモリ６４の使用態様は常に４列のブロック領域であって固定である。このため、画像の動きが激しい場合にも動き検出の探索範囲が狭く固定されてしまい、精度良い動き検出を行い得ないと言う欠点がある。
【００１９】
本発明は、前記の課題に着目し、その目的は、整数精度の動き検出と小数精度の動き検出とを並列実行できると共に、画像の動きの激しさに拘わらず精度良い動き検出を行うことにある。
【課題を解決するための手段】
【００２０】
前記目的を達成するため、本発明では、参照画像メモリの構成自体及び参照画像メモリと動き検出回路との接続関係を工夫して、整数精度及び小数精度の両動き検出を並列実行できると共に、動き検出の探索範囲を可変に設定できる構成を採用する。
【００２１】
すなわち、請求項１記載の発明の信号処理装置は、参照フレーム画像に含まれる複数の参照マクロブロック画像を参照して、対象フレーム画像に含まれる対象マクロブロック画像の動きを検出する信号処理装置であって、前記対象フレーム画像に含まれる対象マクロブロック画像を記憶する対象画像記憶手段と、前記参照フレーム画像を構成する多数の参照マクロブロック画像のうち、前記対象マクロブロック画像に対応する参照マクロブロック画像を中心として水平及び垂直方向に並ぶ複数の参照マクロブロック画像を記憶し、垂直方向に並ぶ所定個の参照マクロブロック画像を記憶する領域毎に物理的に独立して分割された複数の参照バンク部を有する参照画像記憶手段と、前記参照画像記憶手段の複数の参照バンク部に記憶された複数の参照マクロブロックを参照して、前記対象画像記憶手段の対象マクロブロック画像について動き検出する動き検出手段とを備えたことを特徴とする。
【００２２】
請求項２記載の発明は、前記請求項１記載の信号処理装置において、前記参照画像記憶手段の複数の参照バンク部は、少なくとも、対象マクロブロック画像の整数精度の動き検出を行うための複数の参照マクロブロック画像を記憶する整数精度用参照バンク部と、前記対象マクロブロック画像の次のサイクルの対象マクロブロック画像の動き検出を行うための次サイクル用の複数の参照マクロブロック画像を記憶する予備転送用参照バンク部と、前記対象マクロブロック画像の所定サイクル数前の対象マクロブロック画像の小数精度の動き検出を行うための複数の参照マクロブロック画像を記憶する小数精度用参照バンク部とに適応的に割り付けられ、前記参照画像記憶手段が有する全ての参照バンク部と前記動き検出手段とは、各々個別の信号線で接続されていることを特徴とする。
【００２３】
請求項３記載の発明は、前記請求項２記載の信号処理装置において、前記参照画像記憶手段の複数の参照バンク部に記憶された複数の参照マクロブロック画像の転送を制御する転送制御手段を有し、前記転送制御手段は、前記整数精度用参照バンク部に記憶された複数の参照マクロブロック画像及び前記小数精度用参照バンク部に記憶された複数の参照マクロブロック画像を同時に前記動き検出手段に転送しながら、前記次サイクル用の複数の参照マクロブロック画像を前記予備転送用参照バンク部に格納するように整数／小数精度探索並列実行制御を行うことを特徴とする。
【００２４】
請求項４記載の発明は、前記請求項３記載の信号処理装置において、前記転送制御手段は、前記整数／小数精度探索並列実行制御に代えて、前記整数精度用参照バンク部に記憶された複数の参照マクロブロック画像を前記動き検出手段に転送しながら、前記次サイクル用の複数の参照マクロブロック画像を前記予備転送用参照バンク部に格納し、その後、前記整数精度用参照バンク部に記憶された複数の参照マクロブロック画像を小数精度用の複数の参照マクロブロック画像として前記動き検出手段に転送するように整数／小数精度探索直列実行制御を行うことを特徴とする。
【００２５】
請求項５記載の発明は、前記請求項３記載の信号処理装置において、前記参照画像記憶手段で使用する参照バンク部の個数をバンク構成として特定するバンク構成特定手段を備え、前記バンク構成特定手段は、要求される画像の性能に関する情報が入力され、前記入力された要求性能に応じて前記参照画像記憶手段のバンク構成を変更し、前記転送制御手段は、前記バンク構成特定手段により変更された参照画像記憶手段のバンク構成に応じて、前記整数／小数精度探索並列実行制御と整数／小数精度探索直列実行制御とを切り換えることを特徴とする。
【００２６】
請求項６記載の発明は、前記請求項３記載の信号処理装置において、前記参照画像記憶手段で使用する参照バンク部の個数をバンク構成として特定するバンク構成特定手段を備え、前記バンク構成特定手段は、要求される画像の性能に関する情報が入力され、前記入力された要求性能に応じて前記参照画像記憶手段のバンク構成を変更し、前記入力された要求性能が高い場合には、前記整数精度用参照バンク部、前記予備転送用参照バンク部及び小数精度用参照バンク部の記憶領域を拡大することを特徴とする。
【００２７】
請求項７記載の発明は、前記請求項５又は６記載の信号処理装置において、前記要求される画像の性能に関する情報は、画像の画質であることを特徴とする。
【００２８】
請求項８記載の発明は、前記請求項５又は６記載の信号処理装置において、前記要求される画像の性能に関する情報は、画像サイズであることを特徴とする。
【００２９】
請求項９記載の発明は、前記請求項５又は６記載の信号処理装置において、前記要求される画像の性能に関する情報は、画像のフレームレートであることを特徴とする。
【００３０】
請求項１０記載の発明は、前記請求項３記載の信号処理装置において、画像の動き検出は、双方向予測により行われ、前記参照画像記憶手段の整数精度用参照バンク部、予備転送用参照バンク部及び小数精度用参照バンク部は、各々、前方予測専用と後方予測専用とに区別され、前記前方予測専用の整数精度用参照バンク部、予備転送用参照バンク部及び小数精度用参照バンク部と、後方予測専用の整数精度用参照バンク部、予備転送用参照バンク部及び小数精度用参照バンク部とから、各々、参照マクロブロック画像が同時に前記動き検出手段に転送されることを特徴とする。
【００３１】
請求項１１記載の発明は、前記請求項１記載の信号処理装置において、前記動き検出手段による画像の設定範囲での動き検出の予測精度を検出する予測精度検出手段と、前記参照画像記憶手段で使用する参照バンク部の個数をバンク構成として特定するバンク構成特定手段とを備え、前記バンク構成特定手段は、前記予測精度検出手段により検出した予測精度に応じて、前記参照画像記憶手段のバンク構成を変更し、予測精度が低い場合には、使用する参照バンク部の個数を増大することを特徴とする。
【００３２】
請求項１２記載の発明は、前記請求項１１記載の信号処理装置において、前記画像の設定範囲は、画像の１フレームであることを特徴とする。
【００３３】
請求項１３記載の発明は、前記請求項１２記載の信号処理装置において、前記バンク構成特定手段は、前記予測精度検出手段により検出した画像の１フレームでの予測精度に応じて、その予測精度が検出されたフレームの次フレームでの動き検出に使用する参照画像記憶手段の参照バンク部の個数を変更することを特徴とする。
【００３４】
請求項１４記載の発明は、前記請求項１１記載の信号処理装置において、前記画像の設定範囲は、水平方向に複数個のマクロブロックが並ぶブロックラインが垂直方向に複数並ぶ画像の１フレームのうちの１ブロックラインであることを特徴とする。
【００３５】
請求項１５記載の発明は、前記請求項１４記載の信号処理装置において、前記バンク構成特定手段は、前記予測精度検出手段により検出した画像の１ブロックラインでの予測精度に応じて、その予測精度が検出されたブロックラインの次ブロックラインでの動き検出に使用する参照画像記憶手段の参照バンク部の個数を変更することを特徴とする。
【００３６】
請求項１６記載の発明は、前記請求項１記載の信号処理装置において、前記動き検出手段は、各対象マクロブロック画像について動きベクトルを算出し、前記動き検出手段による画像の設定範囲内での各対象マクロブロック画像についての動きベクトルを基準値と比較する比較手段と、前記参照画像記憶手段で使用する参照バンク部の個数をバンク構成として特定するバンク構成特定手段とを備え、前記バンク構成特定手段は、前記比較手段での比較結果に応じて、前記参照画像記憶手段のバンク構成を変更することを特徴とする。
【００３７】
請求項１７記載の発明は、前記請求項１６記載の信号処理装置において、前記比較手段は、各対象マクロブロック画像についての動きベクトルが前記基準値を越える数を計数し、前記バンク構成特定手段は、前記比較手段により計数された数が設定数以上のとき、前記参照画像記憶手段で使用する参照バンク部の個数を増大することを特徴とする。
【００３８】
請求項１８記載の発明は、前記請求項１６又は１７記載の信号処理装置において、前記画像の設定範囲は、画像の１フレームであることを特徴とする。
【００３９】
請求項１９記載の発明は、前記請求項１８記載の信号処理装置において、前記バンク構成特定手段は、前記比較手段による比較結果に応じて、動きベクトルが算出された対象マクロブロックを含むフレームの次フレームでの動き検出に使用する参照画像記憶手段の参照バンク部の個数を変更することを特徴とする。
【００４０】
請求項２０記載の発明は、前記請求項１６又は１７記載の信号処理装置において、前記画像の設定範囲は、水平方向に複数個のマクロブロックが並ぶブロックラインが垂直方向に複数並ぶ画像の１フレームのうちの１ブロックラインであることを特徴とする。
【００４１】
請求項２１記載の発明は、前記請求項２０記載の信号処理装置において、前記バンク構成特定手段は、前記比較手段による比較結果に応じて、動きベクトルが算出された対象マクロブロックを含むブロックラインの次ブロックラインでの動き検出に使用する参照画像記憶手段の参照バンク部の個数を変更することを特徴とする。
【００４２】
請求項２２記載の発明は、前記請求項１６記載の信号処理装置において、前記比較手段は、各対象マクロブロック画像についての動きベクトルの水平方向成分及び垂直方向成分を各々水平方向基準値及び垂直方向基準値と比較し、前記バンク構成特定手段は、前記比較手段での水平方向及び垂直方向の比較結果に応じて、前記参照画像記憶手段のバンク構成を変更することを特徴とする。
【００４３】
請求項２３記載の発明は、前記請求項１記載の信号処理装置において、前記参照画像記憶手段で使用する参照バンク部の個数をバンク構成として特定するバンク構成特定手段を備えたことを特徴とする。
【００４４】
請求項２４記載の発明の撮像装置は、前記請求項２３記載の信号処理装置と、動画像を撮影し、その画像信号を前記信号処理装置に出力する撮像部とを備え、前記撮像部は、前記動画像の撮影時に、画像位置の変化を検出する変化検出手段を有し、前記信号処理装置に備えるバンク構成特定手段の一部は、前記撮像部に備える変化検出手段により兼用されることを特徴とする。
【００４５】
請求項２５記載の発明のネットワークカメラシステムは、撮像部を有するネットワークカメラと、前記ネットワークカメラの撮像部で撮影された動画像の配信を要求し、配信された動画像を表示する画像表示器を各々有する複数の画像端末とを備えたネットワークカメラシステムにおいて、前記ネットワークカメラは、前記請求項２３記載の信号処理装置を有し、前記信号処理装置に備えるバンク構成特定手段は、動画像の配信を同時に要求した前記画像端末の個数に応じて、参照画像記憶手段のバンク構成を変更することを特徴とする。
【００４６】
請求項２６記載の発明は、前記請求項２５記載のネットワークカメラシステムにおいて、前記信号処理装置は、前記請求項３記載の転送制御手段を有し、前記転送制御手段は、前記バンク構成特定手段によって変更された参照画像記憶手段のバンク構成において、常に前記整数／小数精度探索並列実行制御を行うことを特徴とする。
【００４７】
請求項２７記載の発明は、前記請求項２５記載のネットワークカメラシステムにおいて、前記信号処理装置は、前記請求項３記載の転送制御手段を有し、前記転送制御手段は、前記バンク構成特定手段によって変更された参照画像記憶手段のバンク構成に応じて、前記整数／小数精度探索並列実行制御と前記整数／小数精度探索直列実行制御とを切り換えて行うことを特徴とする。
【００４８】
請求項２８記載の発明は、前記請求項２５記載のネットワークカメラシステムにおいて、前記ネットワークカメラは、前記複数の画像端末のうち何れかの画像端末に動画像を配信している状況において他の画像端末から動画像の配信要求があった時、前記バンク構成特定手段が前記他の画像端末からの動画像の配信要求に応じて参照画像記憶手段のバンク構成を変更できないときには、前記配信要求をした他の画像端末に対してその旨を通知することを特徴とする。
【００４９】
請求項２９記載の発明は、前記請求項２８記載のネットワークカメラシステムにおいて、前記配信要求をした他の画像端末は、前記ネットワークカメラから参照画像記憶手段のバンク構成を変更できない旨の通知を受けたとき、動画像の要求性能を下げた配信要求を前記ネットワークカメラに送信し、前記ネットワークカメラに備える信号処理装置のバンク構成特定手段は、前記他の画像端末から動画像の要求性能を下げた配信要求を受けたとき、その要求性能に応じて参照画像記憶手段のバンク構成の変更を試みることを特徴とする。
【００５０】
請求項３０記載の発明は、前記請求項２８記載のネットワークカメラシステムにおいて、前記ネットワークカメラは、前記バンク構成特定手段が前記他の画像端末からの動画像の配信要求に応じて参照画像記憶手段のバンク構成を変更できないときには、動画像配信中の画像端末に対して、参照バンク部を前記配信要求をした他の画像端末に優先的に割当てることを許可するかの問い合わせを通知することを特徴とする。
【００５１】
請求項３１記載の発明は、前記請求項３０記載のネットワークカメラシステムにおいて、前記動画像配信中の画像端末は、前記ネットワークカメラに対して、前記配信要求をした他の画像端末への優先割当ての許可の問い合わせに対して応答し、前記ネットワークカメラは、前記動画像配信中の画像端末から、前記配信要求をした他の画像端末への優先的割当ての許可応答を受けたとき、この優先割当てを実行することを特徴とする。
【００５２】
請求項３２記載の発明の映像システムは、前記請求項１又は２３記載の信号処理装置を含んで画像処理を行う画像処理部と、前記画像処理部内の信号処理装置へ画像信号を出力するセンサーと、前記センサーへ光を結像する光学系とを備えたことを特徴とする。
【００５３】
請求項３３記載の発明の映像システムは、前記請求項１又は２３記載の信号処理装置を含んで画像処理を行う画像処理部と、アナログ値の画像信号が入力され、この画像信号をデジタル値に変換して前記画像処理部内の信号処理装置へ出力するＡ／Ｄ変換部とを備えたことを特徴とする。
【００５４】
以上により、請求項１〜１０記載の発明の信号処理装置では、参照画像記憶手段には、物理的に独立して分割された複数の参照バンク部が備えられ、これ等複数の参照バンク部を、整数精度の動き検出用、小数精度の動き検出用、及び予備転送用との三者に適応的に割り付ければ、これ等の各参照バンク部からの参照マクロブロックを独自の信号線を介して動き検出手段に転送することにより、動き検出手段は、整数精度用の参照マクロブロックと小数精度用の参照マクロブロックとを利用して、整数精度の動き検出と小数精度の動き検出とを並列に実行する。従って、整数精度の動き検出と小数精度の動き検出とを直列に実行する場合と比較して、動き検出を高速に且つ高精度に行うことができる。
【００５５】
ここで、整数精度用として割り付けられた参照バンク部に格納された参照マクロブロックの画像データを用いて整数精度の動き検出が行われた後、これ等の参照マクロブロックの画像データをそのまま保持しておき、これ等の画像データが数サイクル後の対象マクロブロックについての整数精度の動き検出に使用されない状況になると、前記整数精度用として割り付けられた参照バンク部が小数精度用の参照バンク部として機能させて、これ等の参照バンク部に格納された参照マクロブロックの画像データを小数精度の動き検出用として、動き検出手段に転送すれば、同一の参照マクロブロックの画像データを繰り返し参照画像記憶手段に書き込む必要がない。
【００５６】
また、請求項１及び１１〜２３記載の発明の信号処理装置では、動き検出の予測精度や動きベクトルの大小に応じて、参照画像記憶手段のバンク構成が変更される。従って、画像の動きが激しいときには、動き検出の探索範囲を拡大できるので、常に動き検出の精度が高まって、符号化効率が高くなる。
【００５７】
更に、請求項２４記載の発明の撮像装置では、動画像の撮影時での画像位置の変化は、撮像部に備える変化検出手段で検出され、この変化検出手段で検出された画像位置の変化を利用して、信号処理装置に備えるバンク構成特定手段が参照画像記憶手段のバンク構成を変更するので、信号処理装置に別途に変化検出手段を備える必要がない。
【００５８】
加えて、請求項２５〜３１記載のネットワークカメラシステムでは、既述した信号処理装置を備えるので、整数精度の動き検出と小数精度の動き検出とを並列に実行したり、整数精度の動き検出と小数精度の動き検出とを直列に実行することを適応的に切り換えたり、画像の動きに応じて動き検出の探索範囲を拡大／縮小できるので、常に符号化効率が高くなる。
【発明の効果】
【００５９】
以上説明したように、請求項１〜１０記載の発明の信号処理装置によれば、整数精度の動き検出と小数精度の動き検出とを並列に実行できるので、動き検出を高速に且つ高精度に行うことができる。
【００６０】
また、請求項１及び１１〜２３記載の発明の信号処理装置によれば、動き検出の予測精度や動きベクトルの大小に応じて、参照画像記憶手段のバンク構成を変更したので、常に動き検出の精度を高めて、符号化効率の向上を図ることができる。
【００６１】
更に、請求項２４記載の発明の撮像装置によれば、撮像部に備える変化検出手段を利用したので、信号処理装置に別途に変化検出手段を設けることなく、動き検出の探索範囲を変更することができる。
【００６２】
加えて、請求項２５〜３１記載のネットワークカメラシステムによれば、整数精度の動き検出と小数精度の動き検出とを並列に実行したり、整数精度の動き検出と小数精度の動き検出とを直列に実行することを適応的に切り換えたり、画像の動きに応じて動き検出の探索範囲を拡大／縮小して、常に符号化効率を高めることが可能である。
【発明を実施するための最良の形態】
【００６３】
以下、本発明の実施形態を図面に基づいて詳細に説明する。
【００６４】
（第１の実施形態）
図１は、本発明の実施形態の信号処理装置の全体概略構成を示す。同図の信号処理装置は、画像の動き検出装置を示している。
【００６５】
同図の動き検出装置１において、２はシステムメモリ、３は対象画像メモリ、４は参照画像メモリである。前記システムメモリ２は、少なくとも１つのフレーム画像を記憶する容量を持つ。前記対象画像メモリ（対象画像記憶手段）３は、動き検出の対象となる１つのマクロブロック（以下、対象マクロブロックという）の画素データを端子３Ｔから順次与えられ、物理的に独立した１ポート型の５個の対象ブロックメモリ３ａ〜３ｅを備える。ここで、１つのマクロブロックは、例えば図２８に示したように、（ｘ、ｙ）＝１６画素×１６画素のブロックを指称し、この１マクロブロックを横及び縦に例えば８×８個備えた画像データにより１つのフレーム画像（＝１２８画素×１２８画素）を構成する。前記システムメモリ２に記憶される１つのフレーム画像は、対象画像メモリ４の対象マクロブロックの動き検出に参照する１つの参照フレーム画像が格納される。以下、この参照フレーム画像を構成する６４個のマクロブロックを参照マクロブロックという。
【００６６】
前記参照画像メモリ（参照画像記憶手段）４は、物理的に独立し且つ各々が１ポート型の７個のＳＲＡＭから成る参照バンクメモリ（参照バンク部）４ａ〜４ｇを備える。前記参照バンクメモリ４ａ〜４ｇは、各々、（ｘ、ｙ）＝１×３個のマクロブロックの画像データを格納する容量を持つと共に、前記システムメモリ２とは個別に７本のバスＢＳ１によって接続されていて、各参照バンクメモリ４ａ〜４ｇ別に前記システムメモリ２から３つの参照マクロブロックの画像データが独立して供給可能な構成となっている。前記７個の参照バンクメモリ４ａ〜４ｇでは、そのうち何れか３個の参照バンクメモリが整数精度用として割り付けられ、他の任意の３個の参照バンクメモリが小数精度用として割り付けられ、残る１個の参照バンクメモリが予備転送用として割り付けられる。７個のうち何れの参照バンクメモリが整数精度用、小数精度用、予備転送用として割り付けられるかは、後述する動作説明で詳述するように、サイクルの都度変更され、適応的である。
【００６７】
また、図１において、５は対象画像メモリ制御回路、６は参照画像メモリ制御回路、７はシステムメモリ制御回路、８は動き検出回路（動き検出手段）である。前記対象画像メモリ制御回路５は、対象画像メモリ３の５個の対象ブロックメモリ３ａ〜３ｅと５本のバスＢＳ２を介して接続されて、各対象ブロックメモリ３ａ〜３ｅを個別に制御して、対象マクロブロックの画像データを端子３Ｔから対象画像メモリ３内の５個の対象ブロックメモリ３ａ〜３ｅの何れか１個に入力する。また、前記参照画像メモリ制御回路６は、前記参照画像メモリ４の７個の参照バンクメモリ４ａ〜４ｇと７本のバスＢＳ３を介して接続されて、各参照バンクメモリ４ａ〜４ｇを個別に制御して、３つの参照マクロブロックの画像データを前記システムメモリ２から参照画像メモリ４内の７個の参照バンクメモリ４ａ〜４ｇの何れか１個に転送すると共に、システムメモリ２から入力した参照マクロブロックが１フレーム画像内の最後の参照マクロブロックである場合に、システムメモリ制御回路７に制御信号を出力する。前記システムメモリ制御回路７は、前記参照画像メモリ制御回路６からの制御信号を受けて、システムメモリ２から読み出す参照フレームを次のフレームに切り替える。
【００６８】
更に、前記動き検出回路８は、前記対象画像メモリ３の５個の対象ブロックメモリ３ａ〜３ｅと５本のバスＢＳ４を介して接続されていると共に、前記参照画像メモリ４の７個の参照バンクメモリ４ａ〜４ｇと個別に７本のバス（信号線）ＢＳ５を介して接続されている。更に、前記動き検出回路８は、前記対象画像メモリ制御回路５及び参照画像メモリ制御回路６を制御して、前記対象画像メモリ３の５個の対象ブロックメモリ３ａ〜３ｅからの対象マクロブロックの画像データ及び参照画像メモリ４の７個の参照バンクメモリ４ａ〜４ｇからの参照マクロブロックの画像データを個別に自己の動き検出回路８内に転送するように制御する転送制御手段を兼用し、整数／小数精度探索並列実行制御を行う。この整数／小数精度探索並列実行制御は、後述する動作説明で詳述するように、整数精度用に割り付けられた参照バンクメモリに記憶された複数の参照マクロブロックの画像データと、小数精度用に割り付けられた参照バンクメモリに記憶された複数の参照マクロブロックの画像データとを同時に自己の動き検出回路８内に転送しながら、次対象マクロブロックについての動き検出に使用する複数の参照マクロブロックの画像データをシステムメモリ２から予備転送用に割り付けられた参照バンクメモリに転送する制御である。動き検出回路８は、この整数／小数精度探索並列実行制御により、対象マクロブロックについての整数精度の動き検出と、既に整数精度の動き検出を行った対象マクロブロックについての小数精度の動き検出とを同時に行って、その動き補償後の参照マクロブロックの画像データを出力端子９から出力する。
【００６９】
前記動き検出回路８で検出された動きベクトル及び最適参照マクロブロックの画像データの後段の処理を概述すると、次の通りである。得られた動きベクトル及び最適参照マクロブロックの画像データは図示しない動き補償部に送られて、動き補償部により予測画像が生成される。その後、この予測画像と入力画像との差分が演算され、この予測誤差は、ＤＣＴ部（図示せず）でＤＣＴ係数に変換された後、量子化されて、前記動きベクトルと共に可変長符号化され、ビットストリームとして出力される。前記ＤＣＴ係数は、逆量子化及び逆ＤＣＴ化されて予測誤差データとなった後、前記予測画像と加算されて前フレーム画像となり、この前フレーム画像が前記システムメモリ２に格納される。
【００７０】
次に、前記３つの制御回路５〜７及び動き検出回路８による整数精度の動き検出及び小数精度の動き検出について、具体的な動作を図２に基づいて説明する。尚、説明の簡略上、図２に示したように、（ｘ、ｙ）＝７×３個のマクロブロック（＝１１２画素×４８画素）の範囲を１フレームとし、（ｘ、ｙ）＝３×３個のマクロブロックの範囲を動き検出の探索範囲として説明する。この説明では、同図に付した番号のように、番号ｎ（ｎ＝０〜２０）の参照マクロブロックを参照マクロブロック「ｎ」、番号ｎの対象マクロブロックを対象マクロブロック「ｎ」と表現する。
【００７１】
図２において、ステップ１では、対象マクロブロック「０」の画像データを対象画像メモリ３の対象ブロックメモリ３ａに入力する。同時に、対象マクロブロック「０」と同一位置及びその周囲に位置する参照マクロブロック「０」、「１」、「７」及び「８」のうち、垂直方向に位置する２つの参照マクロブロック「０」、「７」をシステムメモリ２から参照画像メモリ４の参照バンクメモリ４ａに格納すると共に、残る垂直方向の２つの参照マクロブロック「１」及び「８」を参照画像メモリ４の参照バンクメモリ４ｂに格納する。従って、このステップ１では、参照バンクメモリ４ａ、４ｂが整数精度用として割り付けられる。
【００７２】
その後、ステップ２では、対象ブロックメモリ３ａ内の対象マクロブロック「０」の画像データを動き検出回路８に出力すると共に、参照バンクメモリ４ａ、４ｂ内の参照マクロブロック参照マクロブロック「０」、「１」、「７」及び「８」の画像データを動き検出回路８に出力して、対象マクロブロック「０」についての整数精度の動き検出を行う。これと並行して、対象画像メモリ３の対象ブロックメモリ３ｂに次の対象マクロブロック「１」の画像データを格納すると共に、この対象マクロブロック「１」と同一位置及びその周囲に位置する参照マクロブロック「０」〜「２」、「７」〜「９」のうち、既に格納された参照マクロブロック以外の参照マクロブロック「２」、「９」をシステムメモリ２から参照画像メモリ４の参照バンクメモリ４ｃに格納して、次の対象マクロブロック「１」の動き検出を準備をしておく。従って、このステップ２では、参照バンクメモリ４ｃが予備転送用として割り付けられる。
【００７３】
次いで、ステップ３では、対象マクロブロック「１」の画像データ及び参照マクロブロック「０」〜「２」、「７」〜「９」の画像データを上記と同様に動き検出回路８に出力して、対象マクロブロック「１」についての整数精度の動き検出を行うと共に、次の対象マクロブロック「２」の画像データを対象画像メモリ３の対象ブロックメモリ３ｃに格納しながら、その対象マクロブロック「２」と同一位置及びその周囲に位置する参照マクロブロック「１」〜「３」、「８」〜「１０」のうち既に格納された参照マクロブロック以外の参照マクロブロック「３」、「１０」をシステムメモリ２から参照画像メモリ４の参照バンクメモリ４ｄに格納しておく。
【００７４】
続いて、ステップ４では、対象マクロブロック「２」について、参照マクロブロック「１」〜「３」、「８」〜「１０」の画像データを参照しつつ、整数精度の動き検出を行うと共に、その次の対象マクロブロック「３」の画像データを対象画像メモリ３の対象ブロックメモリ３ｄに格納しながら、その対象マクロブロックの動き検出に参照すべき参照マクロブロック「４」、「１１」をシステムメモリ２から参照画像メモリ４の参照バンクメモリ４ｅに新たに格納しておく。この時点では、参照画像メモリ４の参照バンクメモリ４ａに格納された垂直方向の２つの参照マクロブロック「０」及び「７」の画像データは、そのまま保持されている。
【００７５】
その後、ステップ５では、対象マクロブロック「３」について、参照マクロブロック「２」〜「４」、「９」〜「１１」の画像データを参照しつつ、整数精度の動き検出を行うと共に、その次の対象マクロブロック「４」の画像データを対象画像メモリ３の対象ブロックメモリ３ｅに格納しながら、その対象マクロブロックの動き検出に参照する参照マクロブロック「５」、「１２」の画像データをシステムメモリ２から参照画像メモリ４の参照バンクメモリ４ｆに新たに格納しておく。従って、このステップ５では、参照バンクメモリ４ｃ〜４ｅが整数精度の動き検出用に割り付けられ、参照バンクメモリ４ｆが予備転送用に割り付けられる。この時点では、参照画像メモリ４の参照バンクメモリ４ａ、４ｂに格納された４つの参照マクロブロック「０」、「１」、「７」及び「８」、即ち、対象マクロブロック「０」の小数精度の動き検出に使用する参照マクロブロックは、前記対象マクロブロック「３」についての整数精度の動き検出に使用されない画像データとなっている。従って、この対象マクロブロック「３」についての整数精度の動き検出と同時に、対象画像メモリ３の対象ブロックメモリ３ａ内の対象マクロブロック「０」の画像データと、参照画像メモリ４の参照バンクメモリ４ａ、４ｂに格納された４つの参照マクロブロック「０」、「１」、「７」及び「８」の画像データとが共に動き検出回路８に出力されて、対象マクロブロック「０」についての小数精度の動き検出が行われる。従って、このステップ５では、参照バンクメモリ４ａ、４ｂは整数精度用から小数精度用に変更して割り付けられたことになる。このように、ステップ５では、対象マクロブロック「３」についての整数精度の動き検出と、この整数精度の動き検出に使用しない参照マクロブロック「０」、「１」、「７」及び「８」を使用した対象マクロブロック「０」についての小数精度の動き検出とが同時に行われる。ここで、この整数精度の動き検出と小数精度の動き検出とを同時に行う関係上、参照画像メモリ４内の参照バンクメモリ４ｃ〜４ｅ及び４ａ、４ｂからは同時に画像データが動き検出回路８に出力されるが、各参照バンクメモリ４ａ〜４ｇはその各々に専用のバスＢＳ５を介して動き検出回路８に接続されているので、画像データの同時出力は可能である。更に、これ等の整数精度の動き検出と小数精度の動き検出とに並行して、次の対象マクロブロック「４」に対する動き検出に使用する参照マクロブロック「５」、「１２」の画像データがシステムメモリ２から参照画像メモリ４の参照バンクメモリ４ｆに転送されるが、この転送は前記整数精度及び小数精度の動き検出に使用されない参照バンクメモリ４ｆへのデータ転送であるので、可能である。
【００７６】
次いで、ステップ６では、対象マクロブロック「４」について、参照マクロブロック「３」〜「５」、「１０」〜「１２」の画像データを参照しつつ、整数精度の動き検出を行うと共に、次の対象マクロブロック「５」の画像データを対象画像メモリ３の対象ブロックメモリ３ａに格納しながら、この対象マクロブロックの動き検出に参照する参照マクロブロック「６」、「１３」をシステムメモリ２から参照画像メモリ４の参照バンクメモリ４ｇに新たに格納しておく。
この時点では、参照画像メモリ４の参照バンクメモリ４ａ〜４ｃに格納された６つの参照マクロブロック「０」〜「２」、「７」〜「９」の画像データは、前記対象マクロブロック「４」についての整数精度の動き検出に使用されない画像データとなっている。従って、この対象マクロブロック「４」についての整数精度の動き検出と同時に、対象画像メモリ３の対象バンクメモリ３ｂ内の対象マクロブロック「１」の画像データと、参照画像メモリ４の参照バンクメモリ４ａ〜４ｃに格納された６つの参照マクロブロック「０」〜「２」、「７」〜「９」の画像データとが共に動き検出回路８に出力されて、対象マクロブロック「１」についての小数精度の動き検出が行われる。
【００７７】
以後、ステップ７〜１０では、前記と同様に、対象マクロブロック「ｋ」（５≦ｋ≦２０）の整数精度の動き検出と、対象マクロブロック「ｋ−３」の小数精度の動き検出とが同時に行われる。
【００７８】
従って、本実施形態においては、動き検出の探索範囲が、対象マクロブロックと同一番号の参照マクロブロックを中心とする合計９個の参照マクロブロックに設定されている場合には、図３（ａ）に示したように、対象マクロブロックの整数精度の動き検出を行いながら、その３タイムスロット前の対象マクロブロックの小数精度の動き検出を同時に行うことができる（同図では、対象マクロブロック「３」の動き検出を行いながら対象マクロブロック「０」の小数精度の動き検出を行う場合を例示している）。よって、同図（ｂ）に示したように同一対象マクロブロックについて整数精度の動き検出と小数精度の動き検出とを直列に順次行う場合に比して、１タイムスロットの時間を短縮できるので、高精度の動き検出の処理速度を効果的に高めることが可能であり、ＨＤＴＶ動画などにおいても高画質符号化が可能である。
【００７９】
尚、本実施形態では、動き検出回路８の動作は、既述の通り、整数精度の動き検出と、小数精度の動き検出と、次対象マクロブロックの動き検出についての参照マクロブロックの画像データの予備転送との三者を並列に行う制御としたが、動き検出の処理速度に余裕がある場合には、その余裕の程度に応じて、図３（ｃ）に示したように整数精度の動き検出のみを行う制御に切り換えたり、同図（ｂ）に示したように整数精度の動き検出と小数精度の動き検出とを直列に行う整数／小数精度探索直列実行制御に切り換えても良いのは、勿論である。この整数／小数精度探索直列実行制御は、具体的には、整数精度用に割り付けられた参照バンクメモリに記憶された複数の参照マクロブロックの画像データを動き検出回路８内に転送しながら、次対象マクロブロックについての動き検出に使用する複数の参照マクロブロックの画像データをシステムメモリ２から予備転送用に割り付けられた参照バンクメモリに転送して、整数精度の動き検出を行い、その後に、前記整数精度用に割り付けられた参照バンクメモリに記憶された複数の参照マクロブロックの画像データを小数精度用の複数の参照マクロブロックの画像データとして動き検出回路８内に転送する制御である。
【００８０】
また、本実施形態では、対象マクロブロックについての動き検出の探索範囲として、（ｘ、ｙ）＝３×３の参照マクロブロックの範囲としたが、５×５、７×７の参照マクロブロックの範囲など、任意の範囲に設定しても良いのは、勿論である。
【００８１】
（第２の実施形態）
次に、本発明の第２の実施形態を説明する。本実施形態は、対象マクロブロックの動き検出の制御方法を固定せず、必要に応じて変更する動き検出装置に関する。
【００８２】
本実施形態の動き検出装置を図４に示す。同図の動き検出装置の全体構成は、図１に示した動き検出装置と同様である。但し、同図では、対象画像メモリ３及び参照画像メモリ４の容量は図１と比べて多容量に設定されている。
【００８３】
図４（ａ）に示した動き検出装置１では、動き検出回路（バンク構成特定手段）８には、ビットレート等の画像の画質、サイズ、又はフレームレートなどの要求される画像の性能に関する要求性能情報Ｉｎｆが入力される。動き検出回路８は、前記入力された要求性能情報Ｉｎｆに基づいて、画像の要求される画質が予め設定した標準画質を越える高画質の場合や、画像のサイズが予め設定した標準サイズを越える大サイズの場合、又はフレームレートが予め設定した標準フレームレートを越える高フレームレートである場合などの画像要求性能が高い場合には、単位時間当りに処理すべき画像データ量が多く、動き検出を高速度で行うべき状況であるので、前記第１の実施形態で説明した整数精度の動き検出と小数精度の動き検出と次対象メモリブロックの動き検出用としての参照メモリブロックの予備転送との三者を並列して行う整数／小数精度探索並列実行制御方式とする。即ち、この制御方式では、同図（ａ）に示したように、参照画像メモリ４内において、３つの参照バンクメモリ４Ｆを整数精度の参照マクロブロック用とし、他の３つの参照バンクメモリ４Ｈを小数精度の参照マクロブロック用とし、他の１つの参照バンクメモリ４Ｐを予備転送用として使用するように、参照バンクメモリのバンク構成を特定する。
【００８４】
一方、画像の要求される画質が標準画質に等しい通常画質の場合や、画像のサイズが標準サイズの通常サイズの場合、又はフレームレートが標準フレームレートである通常フレームレートである場合などの画像要求性能が通常の場合には、動き検出を通常速度で行う状況であるので、整数精度の動き検出を行いながら、次対象メモリブロックの動き検出用としての参照メモリブロックの予備転送を行い、その後に小数精度の動き検出を行う従来の整数／小数精度探索直列実行制御方式に変更する。即ち、この場合には、同図（ｂ）に示したように、参照画像メモリ４内において、任意の３つの参照バンクメモリ４Ｆを整数精度及びその後に行う小数精度の参照マクロブロック用とし、他の１つの参照バンクメモリ４Ｐを予備転送用として使用するように、参照バンクメモリのバンク構成を特定する。
【００８５】
従って、本実施形態では、画像の画質、サイズ又はフレームレートなどのシステム上の画像要求性能に応じて動き検出の制御方法を変更できるので、システム要求にフレキシブルに対応した画像符号化が可能である。
【００８６】
（第３の実施形態）
続いて、本発明の第３の実施形態の動き検出装置を説明する。前記第２の実施形態では対象マクロブロックの動き検出の制御方法を変更したが、本実施形態では動き検出の探索範囲を変更するものである。
【００８７】
図５は本実施形態の動き検出装置１の全体構成を示す。同図の動き検出回路８の動き検出の制御方法は、前記第１の実施形態と同様に、整数精度の動き検出と、小数精度の動き検出と、次対象マクロブロックの動き検出についての参照マクロブロックの画像データの予備転送との三者を並列に行う制御である。前記動き検出回路８には、前記第２の実施形態と同様に、要求画像性能として、画像の画質、サイズ、又はフレームレートなどの要求性能情報Ｉｎｆが入力されていて、動き検出回路８はこれ等の要求性能情報Ｉｎｆに基づいて、システム上の要求画像性能が高いか否かを判定し、要求画像性能が高い場合には、探索範囲をこの要求画像性能に対応して初期設定された初期探索範囲として、対象マクロブロックと同一番号の参照マクロブロックを中心に含む隣接する９個の参照マクロブロックを探索範囲に設定する（水平方向の画素数では−１６〜＋１５．５個の範囲内）。この場合には、同図（ａ）に示すように、対象画像メモリ３内のハッチングを施した５個の対象ブロックメモリ３ｘと、参照画像メモリ４内の整数精度用の３個の参照バンクメモリ４Ｆ、小数精度用の３個の参照バンクメモリ４Ｈ、予備転送用の１個の参照マクロブロック４Ｐとを使用する。
【００８８】
一方、動き検出回路８は、前記要求性能情報Ｉｎｆに基づいて、この要求画像性能が低い場合、即ち、動き検出処理の処理速度に余裕がある場合には、探索範囲を前記隣接する９個の参照マクロブロックより成る初期探索範囲よりも拡大して、例えば、対象マクロブロックと同一番号の参照マクロブロックを中心として上下に３個の参照マクロブロックと、左右に５個の参照マクロブロック（水平方向の画素数では−３２〜＋３１．５個の範囲内）から成る拡大探索範囲とする。従って、この場合には、同図（ｂ）に示すように、参照画像メモリ４内では整数精度用に５個の参照バンクメモリ４Ｆ’と、小数精度用に５個の参照バンクメモリ４Ｈ’と、予備転送用の１個の参照マクロブロック４Ｐとを使用する。このとき、対象画像メモリ３内では、ハッチングを施した７個の対象ブロックメモリ３ｙが使用される。
【００８９】
従って、本実施形態では、システム上の要求画像性能の高低に応じて動き検出の探索範囲を変更するので、その要求画像性能が低い場合には、高い場合よりも探索範囲を拡大し、動き検出に使用する画像データ数を増大させて、余裕のある動き検出能力を有効利用でき、動き検出精度の向上を図ることができる。
【００９０】
（第４の実施形態）
次に、本発明の第４の実施形態の動き検出装置を説明する。本実施形態では、符号化の方法に応じて参照画像メモリ内の各参照バンクメモリへの参照マクロブロックの割り付けを変更するものである。
【００９１】
ＭＰＥＧでは、動き補償予測に際し、前方向予測だけでなく、後方向予測を用いた双方向予測が採用されて、符号化効率を高めている。この双方向予測は、図６に示すように、先ず、Ｉ０ピクチャをフレーム内符号化し、Ｐ３ピクチャについては前方向予測により符号化する。その後、前記Ｉ０及びＰ３ピクチャを使用した双方向予測によりＢ１ピクチャ及びＢ２ピクチャを順次符号化している。本実施形態は、このような双方向予測を用いた符号化と前方向予測のみを行う符号化との符号化方法の相違に応じて、参照画像メモリ内での参照マクロブロックの割り付けを変更する。
【００９２】
図７は本実施形態の動き検出装置１の全体構成を示している。同図の動き検出装置１の構成は、図１の動き検出装置と同様である。動き検出回路８には、前記双方向予測か前方向予測かの符号化方法の情報Ｃが入力される。動き検出回路８は、この入力された符号化方法の情報Ｃに基づいて、符号化方法がＩ及びＰピクチャのみを用いる前方予測の場合には、同図（ａ）に示すように、参照画像メモリ４では、何れか３つの参照バンクメモリ４Ｆを整数精度の参照マクロブロック用とし、他の３つの参照バンクメモリ４Ｈを小数精度の参照マクロブロック用とし、他の１つの参照バンクメモリ４Ｐを予備転送用として使用する。
【００９３】
一方、動き検出回路８は、符号化方法の情報ＣがＩ、Ｐ及びＢピクチャを用いる双方向予測の場合には、同図（ｂ）に示すように、参照画像メモリ４では、３行に並ぶ参照バンクメモリのうち例えば最上行の実線で囲んだ参照バンクメモリを前方予測用ブロックとして割り当てて、３つの参照バンクメモリ４Ｆｆを整数精度の参照マクロブロック用とし、他の３つの参照バンクメモリ４Ｈｆを小数精度の参照マクロブロック用とし、他の１つの参照バンクメモリ４Ｐｆを予備転送用として使用し、一方、破線で囲んだ真ん中の行の参照バンクメモリを後方向予測用ブロックとして割り当てて、そのうち３つの参照バンクメモリ４Ｆｂを整数精度の参照マクロブロック用とし、他の３つの参照バンクメモリ４Ｈｂを小数精度の参照マクロブロック用とし、他の１つの参照バンクメモリ４Ｐｂを予備転送用として使用している。対象画像メモリ３でも、同様に、実線で囲んだ最上行の５個の対象ブロックメモリ３ｆを前方予測用ブロック用に、破線で囲んだ真ん中の行の５個の対象ブロックメモリ３ｂを後方向予測用ブロック用として割り当てられる。
【００９４】
（第５の実施形態）
図８は本発明の第５の実施形態を示す。本実施形態は、動き検出の探索範囲を固定せず、必要に応じて変更するものである。
【００９５】
図８に示した動き検出装置１において、システムメモリ２、対象画像メモリ３、参照画像メモリ４、対象画像メモリ制御回路５、参照画像メモリ制御回路６、システムメモリ制御回路７及び動き検出回路８の構成については、前記図１と同様である。従って、図８の動き検出装置１は、整数精度の動き検出と、小数精度の動き検出と、次対象マクロブロックの動き検出についての参照マクロブロックの画像データの予備転送との三者が並列に行われる。但し、本実施形態での動き検出の制御はこのような三者並列動作を行うが、本発明はこれに限定されず、例えば整数精度の動き検出のみを行う制御や、前記図３２に示したように整数精度の動き検出と小数精度の動き検出とを直列に行う制御を実行する構成としても良い。
【００９６】
図８の動き検出装置１では、動き検出の探索範囲を可変設定する関係上、対象画像メモリ３及び参照画像メモリ４の容量は、図１のそれ等よりも多く設定されていて、対象画像メモリ３では７個の対象ブロックメモリ３ａ〜３ｇが備えられ、参照画像メモリ４では２２個の参照バンクメモリ４ａ〜４ｕが備えられるが、それ等の容量は特に制限されない。
【００９７】
図８の動き検出装置１が図１と異なる点は、図１の構成に加えて、探索範囲設定回路２０、比較回路２１及びカウント回路２２を備える点である。動き検出回路８での動き検出動作の詳細を説明すると、この動き検出動作は、１つの対象マクロブロックと１つの参照マクロブロックとの間で、対応する画素値同士の差分を計算することを２５６個の画素で繰り返し行って、それ等の画素値の差分の絶対値の累積値ＳＡＤを算出し、更にこれ等の動作を繰り返して６４個のマクロブロックから成る１フレームについて行って、マクロブロック別に最終的に得られた画素値の差分の絶対値の累積値ＳＡＤ（Ｎ）（Ｎ＝１〜６４）を得る。
【００９８】
前記比較回路２１は、外部端子２３から前記画素値の差分の絶対値の累積値ＳＡＤの閾値ＳＡＤ（ｍａｘ）を受け、前記動き検出回路８からの画素値の差分の絶対値の累積値ＳＡＤ（Ｎ）と前記外部端子２３からの閾値ＳＡＤ（ｍａｘ）とを比較して、その比較結果を前記カウント回路２２に出力する。カウント回路２２は、前記比較回路２１から受けた比較結果に基づいて、ＳＡＤ（ｍａｘ）＜ＳＡＤ（Ｎ）の場合に限りカウント値に１だけ加算し、そのカウント値ＣＴを前記探索範囲設定回路２０に出力する。探索範囲設定回路２０は、前記外部端子２３から前記カウント回路２２でのカウント値の予め設定された最大値ＣＴ（ｍａｘ）を受けると共に、前記動き検出回路８が１フレームの６４個のマクロブロックについて動き検出を完了した際には、この動き検出回路８からフレーム完了信号を受け、この完了信号を受けた際に、前記外部端子２３からの最大値ＣＴ（ｍａｘ）を前記カウント回路２２からのカウント値ＣＴと比較して、ＣＴ（ｍａｘ）＜ＣＴの場合には、動きが激しいと予測できる予測精度の低い状況と判断して、探索範囲を（ｘ、ｙ）＝３×３のマクロブロックの通常範囲から５×５のマクロブロックの範囲に拡大設定し、参照画像メモリ４のバンク構成を、図９（ａ）に示す７個の参照マクロブロックを範囲とする通常範囲から、図９（ｂ）に示すように全２２個のマクロブロックを範囲とする拡大範囲に変更する。この図９（ｂ）では、水平方向に１１個のマクロブロックが並び且つ垂直方向に５個のマクロブロックが並ぶ範囲を拡大バンク構成として例示している。従って、動きが通常の場合には、探索範囲は（ｘ、ｙ）＝３×３の参照マクロブロックの範囲であるが、動きが激しい予測精度の低い状況では、探索範囲は（ｘ、ｙ）＝５×５の参照マクロブロックの範囲に拡大される。前記比較回路２１及びカウント回路２２により、（ｘ、ｙ）＝３×３の参照マクロブロックの画像設定範囲において、動き検出の予測精度を検出する予測精度検出手段２４を構成している。
【００９９】
次に、本実施形態の動き検出動作を図１０の制御フローチャートに基づいて説明する。
【０１００】
スタートして、ステップＳ１では、動き検出の探索範囲を（ｘ、ｙ）＝３×３のマクロブロックの通常範囲に設定して、参照画像メモリ４のバンク構成を図９（ａ）に示した通常範囲に設定すると共に、外部端子２３から１マクロブロックについての画素値の差分の絶対値の累積値ＳＡＤの閾値ＳＡＤ（ｍａｘ）を比較回路２１に入力し、カウント値の最大値ＣＴ（ｍａｘ）を探索範囲設定回路２０に入力して、初期設定を行う。そして、ステップＳ２において動き検出回路８を起動して、動き検出動作を開始すると共に、ステップＳ３では動き検出を終了したマクロブロックの個数ＮをＮ＝１に初期設定すると共に、カウント回路２２でのカウント値ＣＴをＣＴ＝０に初期設定する。
【０１０１】
その後、ステップＳ４において、最初の対象マクロブロックについて動き検出を行って、１マクロブロックについての画素値の差分の絶対値の累積値ＳＡＤ（Ｎ＝１）を算出する。ステップＳ５では、画素値の差分の絶対値の累積値ＳＡＤを演算している対象マクロブロックが１フレーム内の最後に位置するマクロブロックか否かを判別し、その判別結果は当初はＮＯであるので、ステップＳ６で、今回得られた画素値の差分の絶対値の累積値ＳＡＤ（Ｎ）を閾値ＳＡＤ（ｍａｘ）と比較し、閾値を越えるＳＡＤ（ｍａｘ）＜ＳＡＤ（Ｎ）の場合にはステップＳ７でカウント値ＣＴに１を加算して（ＣＴ＝ＣＴ＋１）ステップＳ８に進み、閾値以下のＳＡＤ（ｍａｘ）≧ＳＡＤ（Ｎ）の場合には直ちにステップＳ８に進んで、動き検出した対象マクロブロックの個数Ｎに１を加算し（Ｎ＝Ｎ＋１）、ステップＳ４に戻る。そして、ステップＳ５において、動き検出している対象マクロブロックが１フレーム内の最後に位置するマクロブロックになるまで以上の動作を繰り返し、最終的に１フレーム内の最後に位置するマクロブロックになれば、ステップＳ９に進む。
【０１０２】
前記ステップＳ９では、１フレームでの動き検出が終了したので、カウント回路２２でのカウント値ＣＴを最大値ＣＴ（ｍａｘ）（設定数）と比較し、ＣＴ（ｍａｘ）≧ＣＴの場合には、予測精度が高いと判断して、ステップＳ１０で探索範囲を（ｘ、ｙ）＝３×３のマクロブロックの通常範囲に設定して、参照画像メモリ４のバンク構成を図９（ａ）に示した通常範囲に設定する一方、ＣＴ（ｍａｘ）＜ＣＴの予測精度が低い場合には、ステップＳ１１で探索範囲を（ｘ、ｙ）＝５×５のマクロブロックの拡大範囲に設定して、参照画像メモリ４のバンク構成を図９（ｂ）に示した拡大範囲に変更する。その後、ステップＳ１２において、動き検出動作を終了するか否かを判断し、終了せずに次フレームでの動き検出に移行する場合にはステップＳ３に戻り、動き検出動作を終了する場合には、直ちに終了する。
【０１０３】
従って、本実施形態では、１フレームについての動き検出の結果、画像の動きが激しくて予測精度が低いと判断された場合には、動き検出の探索範囲が通常範囲よりも拡大されるので、動き検出の予測精度を高めることが可能である。一方、予測精度が高いと判断された場合には、動き検出の探索範囲は通常範囲に維持されるので、拡大範囲に設定する場合と比較して、高い予測精度を保持しながら、拡大範囲での多数の画像データを対象として動き検出することに伴う消費電力の増大を抑制することが可能である。
【０１０４】
（第６の実施形態）
図１１は、本発明の第６の実施形態を示す。前記第５の実施形態では、１フレームについて動き検出を行って予測精度の高低を判断したが、本実施形態では、現在動き検出している対象マクロブロックが含まれる水平方向のブロックラインの１つ上の段のブロックラインについて動き検出を行って、予測精度の高低を判断する実施形態を示す。本実施形態の動き検出装置の全体構成は、前記図８と同一であるので、その説明を省略する。
【０１０５】
図１１に示す動き検出の制御フローチャートにおいて、図１０の制御フローチャートと異なる点は、ステップＳ５’が変更されている点と、ステップＳ１３及びＳ１４が追加されている点である。図１１の制御フローチャートでは、ステップＳ４で動き検出を行った後、前記ステップＳ５’において、動き検出している対象マクロブロックが自己の属するブロックラインの最後のマクロブロックか否かを判断しており、最後のマクロブロックである場合には、直ちにステップＳ９でそのブロックラインでのカウント回路２２のカウント値ＣＴを最大値ＣＴ（ｍａｘ）と比較し、ＣＴ（ｍａｘ）＜ＣＴであればステップＳ１１で探索範囲を拡大する一方、ＣＴ（ｍａｘ）≧ＣＴであればステップＳ１０で探索範囲を初期の標準範囲に設定するようにしている。更に、このように自段のブロックラインでの予測精度に基づいて探索範囲を変更した後は、次段のブロックラインの動き検出を行うように、ステップＳ１３でカウント値ＣＴを初期値（ＣＴ＝０）に戻した後、ステップＳ１４で１フレーム内の最後のマクロブロックか否か、即ち、動き検出を終了したマクロブロックの個数Ｎが最大個数Ｎ（ｍａｘ）（＝６４）か否かを判断し、Ｎ≠Ｎ（ｍａｘ）であればステップＳ４に戻って次段のブロックラインの動き検出を行うようにしている。
【０１０６】
従って、本実施形態では、１つ前のブロックラインでの動き検出の予測精度に基づいて探索範囲を変更するので、前記第５の実施形態のように１つ前のフレームでの予測精度に基づいて探索範囲を変更する場合と比較して、探索範囲の変更頻度を多くして、画像の動きが激しい場合にも符号化効率をより一層に高めることが可能である。
【０１０７】
（第７の実施形態）
続いて、本発明の第７の実施形態を説明する。前記第５の実施形態では１つ前のフレームでの動き検出の予測精度に基づいて探索範囲を変更したが、本実施形態では、動き補償予測として、対応する画素同士の差分値の絶対値の合計値が最も少ない最適予測参照マクロブロックと対象マクロブロックとの間の動き位置情報が動きベクトルとして得られるので、この動きベクトルの大小に基づいて探索範囲を変更するものである。
【０１０８】
本実施形態の動き検出装置１の全体構成を図１２に示す。同図の動き検出装置１の全体構成は、図８に示した第５の実施形態と同様である。図１２の動き検出装置１では、動き検出回路８は、予め設定された画像範囲である（ｘ、ｙ）＝３×３の参照マクロブロックの範囲内において、対象マクロブロックと最適予測参照マクロブロックとの間の動き位置情報として、その最適予測参照マクロブロックから対象マクロブロックへの方向及び距離として動きベクトルＭＶを算出し、この動きベクトルＭＶがＮ個（Ｎ＝６４）の対象マクロブロック別に算出されることを繰り返して、各対象マクロブロック別の動きベクトルＭＶ（Ｎ）を比較回路２１に出力する。前記比較回路２１には、外部端子２３から動きベクトルＭＶの予め設定された最大値ＭＶ（ｍａｘ）（基準値）が入力される。前記比較回路（比較手段）２１は、各対象マクロブロックについての動きベクトルＭＶを設定最大値ＭＶ（ｍａｘ）と比較する。
【０１０９】
図１３は、前記図１２に示した動き検出装置１の動き検出の制御フローチャートを示す。この制御フローチャートは、図１０に示した制御フローチャートとほぼ同様であるが、異なる点は、ステップＳ１’において、動きベクトルの設定最大値ＭＶ（ｍａｘ）が外部端子２３から比較回路２１に入力される点と、ステップＳ６’において、対象マクロブロックＮ（Ｎ＝１〜６４）について動きベクトルＭＶ（Ｎ）が得られる毎に、その動きベクトルＭＶ（Ｎ）を前記設定最大値ＭＶ（ｍａｘ）と比較し、ＭＶ（ｍａｘ）＜ＭＶ（Ｎ）の場合には、ステップＳ７においてカウンタ回路２２でカウント値ＣＴに１を加算する（ＣＴ＝ＣＴ＋１）点である。
【０１１０】
従って、本実施形態においても、動きベクトルの大小に基づいて動き検出の探索範囲を変更するので、前記第５の実施形態と同様に、画像の動きが激しくて予測精度が低い場合には、動き検出の探索範囲の拡大により動き検出の予測精度を高めることが可能であると共に、予測精度が高い場合には、動き検出の探索範囲を通常範囲に維持して、消費電力の増大を抑制することが可能である。
【０１１１】
（第８の実施形態）
次に本発明の第８の実施形態を説明する。
【０１１２】
前記第７の実施形態では１フレームについて動き検出を行って予測精度を判断したが、本実施形態では、前記第６の実施形態と同様に水平方向の１つブロックライン毎に予測精度を判断する実施形態を示す。
【０１１３】
本実施形態を示す図１４の動き検出の制御フローチャートは、前記第６の実施形態で説明した図１１の制御フローチャートと同様であり、異なる点は、図１１の制御フローチャートでは対応する差分値の絶対値の合計値ＳＡＤ（Ｎ）を算出しているのに対し、図１４の制御フローチャートでは動きベクトルＭＶ（Ｎ）を算出している点のみであるので、その詳細な説明を省略する。
【０１１４】
（第９の実施形態）
次に、本発明の第９の実施形態を説明する。前記第８の実施形態では、動きベクトルＭＶが設定最大値ＭＶ（ｍａｘ）を越えると、探索範囲を拡大して、参照画像メモリ４内で使用する参照バンクメモリの個数を増やしたが、本実施形態では、算出された動きベクトルＭＶが水平方向及び垂直方向の何れに大きいかを判定して、その大きい方向にのみ探索範囲を拡大するものである。
【０１１５】
図１５は本実施形態の動き検出装置１の全体構成を示す。同図の動き検出装置１の構成は図１２に示した構成と同様であり、次の点のみが異なる。即ち、動き検出回路８は、算出した動きベクトルＭＶ（Ｎ）の水平方向距離ＭＶＸ（Ｎ）と垂直方向距離ＭＶＹ（Ｎ）とを区別して比較回路２１に出力する。前記比較回路２１には、外部端子２３から動きベクトルの水平方向距離の最大値ＭＶＸ（ｍａｘ）（水平方向基準値）及び垂直方向距離の最大値ＭＶＹ（ｍａｘ）（垂直方向基準値）が入力される。この比較回路２１は、入力された動きベクトルの水平方向距離ＭＶＸ（Ｎ）を水平方向距離の最大値ＭＶＸ（ｍａｘ）と比較し、ＭＶＸ（ｍａｘ）＜ＭＶＸ（Ｎ）の場合に水平方向のカウント値ＣＴＸに１を加えると共に、入力された動きベクトルの素直方向距離ＭＶＹ（Ｎ）を垂直方向距離の最大値ＭＶＹ（ｍａｘ）と比較し、ＭＶＹ（ｍａｘ）＜ＭＶＸ（Ｎ）の場合に垂直方向のカウント値ＣＴＹに１を加えて、それ等のカウント値ＣＴＸ、ＣＴＹを探索範囲設定回路２０に出力する。前記探索範囲設定回路２０は、外部端子２３から前記水平方向及び垂直方向の各カウント値ＣＴＸ、ＣＴＹの最大値ＣＴＸ（ｍａｘ）、ＣＴＹ（ｍａｘ）が入力され、これ等の最大値ＣＴＸ（ｍａｘ）、ＣＴＹ（ｍａｘ）と前記カウンタ回路２２からの水平方向及び垂直方向のカウント値ＣＴＸ、ＣＴＹとを比較して、ＣＴＸ（ｍａｘ）＜ＣＴＸの場合には探索範囲を水平方向に拡大し、ＣＴＹ（ｍａｘ）＜ＣＴＹの場合には探索範囲を垂直方向に拡大するよう、参照画像メモリ制御回路６を制御して、参照画像メモリ４で使用する参照バンクメモリの個数を多く変更すると共に、これに対応するように対象画像メモリ３で使用する対象ブロックメモリ３ａ〜３ｇの個数を多く変更する。
【０１１６】
次に、本実施形態での動き検出の制御の様子を図１６に示した制御フローチャートに基づいて説明する。
【０１１７】
図１６の制御フローチャートにおいて、スタートして、ステップＳ１では、動き検出の探索範囲を（ｘ、ｙ）＝３×３のマクロブロックの通常範囲に設定して、参照画像メモリ４のバンク構成を図１７（ａ）に示したように通常範囲に初期設定する。この通常範囲は、同図（ａ）では水平方向に７個の参照マクロブロックを使用する範囲である。また、このステップＳ１での初期設定では、動きベクトルＭＶの水平方向（Ｘ方向）の最大値ＭＶＸ（ｍａｘ）及び垂直方向（Ｙ方向）の最大値ＭＶＹ（ｍａｘ）を外部端子２３から比較回路２１に入力して初期設定すると共に、カウント回路２２のカウント値ＣＴのＸ方向の最大値ＣＴＸ（ｍａｘ）及びＹ方向の最大値ＣＴＹ（ｍａｘ）を前記外部端子２３から探索範囲設定回路２０に入力して初期設定する。
【０１１８】
そして、ステップＳ２において動き検出回路８を起動して、動き検出動作を開始すると共に、ステップＳ３において動き検出を終了したマクロブロックの個数ＮをＮ＝１に初期設定すると共に、カウント回路２２でのＸ方向及びＹ方向のカウント値ＣＴＸ、ＣＴＹを各々ＣＴＸ＝０、ＣＴＹ＝０に初期設定する。
【０１１９】
その後、ステップＳ４において、最初の対象マクロブロック（Ｎ＝１）について動き検出を行って、動きベクトルＭＶ（Ｎ＝１）を算出する。この動きベクトルＭＶは、水平方向距離ＭＶＸ（Ｎ）と垂直方向距離ＭＶＹ（Ｎ）との合成値で表現される。次いで、ステップＳ５では、動き検出を行っている対象マクロブロックＮが自己の属するフレームの最後のマクロブロックか否かを判定し、最後のマクロブロックでない場合には、ステップＳ６及びＳ７で動きベクトルＭＶの水平方向距離ＭＶＸ（Ｎ）及び垂直方向距離ＭＶＹ（Ｎ）をその設定最大値ＭＶＸ（ｍａｘ）、ＭＶＹ（ｍａｘ）と比較し、ＭＶＸ（ｍａｘ）＜ＭＶＸ（Ｎ）であればステップＳ８で水平方向のカウント値ＣＴＸに１を加算し、ＭＶＹ（ｍａｘ）＜ＭＶＹ（Ｎ）であればステップＳ９で垂直方向のカウント値ＣＴＹに１を加算して、ステップＳ１０で動き検出終了マクロブロック数Ｎに１を加算した後、ステップＳ４に戻って次の対象マクロブロックについての動き検出を繰り返す。
【０１２０】
そして、最終的に１フレーム内の全ての対象マクロブロックについて動き検出が終了すると、ステップＳ５からステップＳ１１に進んで、動き補償の精度を判定することとし、先ず、水平方向のカウント値ＣＴＸを設定最大値ＣＴＸ（ｍａｘ）と比較し、ＣＴＸ（ｍａｘ）≧ＣＴＸであれば、動き補償の精度は良好と判定して、ステップＳ１２で水平方向の探索範囲を標準範囲に設定する。一方、ＣＴＸ（ｍａｘ）＜ＣＴＸであれば、水平方向の動き補償の精度は低いと判定して、ステップＳ１３で水平方向の探索範囲を拡大範囲に設定する。この拡大範囲は、例えば（ｘ、ｙ）＝５×３のマクロブロックの範囲であって、図１７（ｃ）に示すように参照画像メモリ４のバンク構成を水平方向に１１個の参照マクロブロックに設定する。また、ステップＳ１４では、垂直方向のカウント値ＣＴＹを設定最大値ＣＴＹ（ｍａｘ）と比較し、ＣＴＹ（ｍａｘ）≧ＣＴＹであれば、垂直方向の動き補償の精度は良好と判定して、ステップＳ１５で垂直方向の探索範囲を標準範囲に設定するが、ＣＴＹ（ｍａｘ）＜ＣＴＹであれば、垂直方向の動き補償の精度は低いと判定して、ステップＳ１６で垂直方向の探索範囲を拡大範囲に設定する。この拡大範囲は、例えば（ｘ、ｙ）＝３×５のマクロブロックの範囲であって、図１７（ｄ）に示すように垂直方向に２個の参照バンクメモリを使用して、垂直方向に５個の参照マクロブロックで構成される。前記ステップＳ１１及びＳ１４での大小比較の結果、探索範囲をＸ方向及びＹ方向の何れにも拡大することとなる場合には、探索範囲は例えば（ｘ、ｙ）＝５×５のマクロブロックの範囲であって、参照画像メモリ４のバンク構成は、図１７（ｂ）に示すように、Ｘ方向に１１個の参照マクロブロックが使用され、Ｙ方向に５個の参照マクロブロックが使用される範囲となる。
【０１２１】
その後、ステップＳ１７において、動き検出動作を終了するか否かを判断し、終了せずに次フレームでの動き検出に移行する場合にはステップＳ３に戻り、動き検出動作を終了する場合には、直ちに終了する。
【０１２２】
従って、本実施形態では、探索範囲をＸ方向又はＹ方向に区別して予測精度を判別して、その予測精度の低い方向にのみ動き検出の探索範囲を拡大するので、探索範囲は高い予測精度を確保でき得る小範囲に制限される。よって、動き検出に使用する画像データ量を必要以上に増やさず、データ処理時間の増大を招くことなく、予測精度の向上を図ることができる。
【０１２３】
（第１０の実施形態）
図１８は本発明の第１０の実施形態を示す。前記第５〜第９の実施形態では、比較回路２１及びカウント回路２２を設けて、動き検出回路８が検出した画像データの差分値の絶対値の合計値や動きベクトルを設定値と比較し、その比較結果に応じて動き補償の予測精度を判断して、その予測精度の高低に応じて探索範囲を可変に変更したが、本実施形態では、このような比較回路２１及びカウント回路２２を設けず、動き補償の予測精度を示す情報を他の機器から得て、探索範囲を可変設定するものである。
【０１２４】
すなわち、図１８において、２５は画像符号化装置であって、入力された画像信号をエントロピー符号化し、その内部には、図１に示した動き検出装置１と、図８に示した探索範囲設定回路２０とを有する。また、２６は図示しないデジタルカメラやビデオカメラ（撮像部）に内蔵されるカメラ信号処理部であって、内部には手ぶれ検出回路２７が備えられる。前記手ぶれ検出回路（変化検出手段）２７は、操作者がカメラ本体を操作して被写体映像を取り込む際に、カメラ本体の手ぶれに起因して被写体映像の連続するフレーム間に生じた動き（位置変動）を検出する回路であって、前記第７の実施形態で説明した動きベクトルＭＶと同様に、被写体映像の連続する２フレーム間の位置変動を示す情報が得られる。前記手ぶれ検出回路２７は、既述したように例えば画像フレーム間で画像データ同士を比較演算して手ぶれを補正する電子式の手ぶれ補正回路では、その比較演算を行う回路であっても良いし、手ぶれに起因する光軸のズレをレンズで修正する光学式の手ぶれ補正回路では、カメラの傾き等をジャイロセンサーで検出する回路であっても良い。
【０１２５】
前記画像符号化回路２５の探索範囲設定回路２０は、前記カメラ信号処理部２６の手ぶれ検出回路２７からの位置変動情報を受け、この位置変動情報に基づいて、２フレーム間の位置変動が大きい場合には動き検出の探索範囲を拡大し、位置変動が小さい場合には探索範囲を通常範囲に設定する。
【０１２６】
従って、本実施形態では、動き検出装置に探索範囲設定回路２０のみを付加して、探索範囲を可変設定する基となる情報を外部から入力するので、動き検出装置の小型化が可能である。
【０１２７】
（第１１の実施形態）
続いて、第１１の実施形態を説明する。本実施形態は、ネットワークカメラに適用したものである。
【０１２８】
ネットワークカメラは、インターネットやＬＡＮを通じて１箇所又は複数箇所の映像をリアルタイムにパソコンや携帯電話などでモニタリング可能とした例えば監視カメラである。このようなネットワークカメラは、図１９に示すように、１個又は複数個の撮像部（図示せず）を有するネットワークカメラ３０をビデオサーバーとして、このネットワークカメラ３０にインターネット等を通じて接続される複数のクライアント（画像端末）３１ａ、３１ｂ…３１ｎが存在する。何れかのクライアントがネットワークカメラ３０に画像の要求信号を出力した際に、ネットワークカメラ３０は、その要求信号に対する許可信号を出力すると共に、所定の画像信号をその要求したクライアントに送信する。ここで、画像の要求信号を出力したクライアントの数が１つである１チャネルの場合には、図２０に示したように、１タイムスロットの全ての時間を画像信号の符号化及びその符号化データの要求クライアントへの送信に使用できる。しかし、要求信号を出力したクライアント数が増大して、２チャネルや３チャネル等に増えた場合には、１タイムスロットの半分、１／３等、次第に減少した時間で符号化処理を完了しなければならない関係上、画像信号の符号化処理速度を高める必要がある。更に、クライアントの所有する映像機器が携帯電話のカメラであったり、パソコンであるなど、種類が異なることに対応するように、画像サイズや、画像のフレームレートにも応じて符号化処理の方式や探索範囲を変更する必要がある。本実施の形態の動き検出装置は、このような場合に使用される。
【０１２９】
図２１は、本実施形態の動き検出装置の構成を示す。その全体構成は、図１に示した動き検出装置と同様であり、異なる点は、探索範囲設定回路２０と割当て決定回路３５とを備えた点である。
【０１３０】
前記割当て決定回路３５は、外部端子２３から、ネットワークカメラ３０に対して同時に画像の要求信号を出力しているクライアントの数、即ち、チャネル数ＣＮと、各クライアントの映像機器での画像サイズＰＳと、フレームレートＦＲとの情報を受け、これ等の情報に基づいて、要求信号を出力しているクライアントの全て又は一部に許可信号を出力端子３６から出力すると共に、その許可したクライアントの数に応じて動き検出の探索範囲を設定するように、探索範囲設定回路２０に対してチャネル数ＣＮ、画像サイズＰＳ及びフレームレートＦＲを含む制御信号を探索範囲設定回路２０に出力する。
【０１３１】
前記探索範囲設定回路２０は、前記割当て決定回路３５から受けた制御信号に含まれるチャネル数ＣＮに基づいて、チャネル数ＣＮ＝３の場合には探索範囲を対象マクロブロックと同一番号の参照マクロブロックを中心に含む周囲９個の参照マクロブロック（Ｘ及びＹ方向に−１６〜＋１５．５画像分）の通常範囲に設定し、チャネル数ＣＮ＝２の場合には探索範囲をＸ方向に拡大して、対象マクロブロックと同一番号の参照マクロブロックを中心にＸ方向に５個のマクロブロックでＹ方向に３個のマクロブロックから成る合計１５個の参照マクロブロック（Ｘ方向に−３２〜＋３１．５画像分且つＹ方向に−１６〜＋１５．５画素分の範囲）に設定し、チャネル数ＣＮ＝１の場合には探索範囲をＸ及びＹの両方向に拡大して、対象マクロブロックと同一番号の参照マクロブロックを中心に含む周囲２５個のマクロブロック（Ｘ及びＹ方向に−３２〜＋３１．５画像分の範囲）に設定する。
【０１３２】
前記探索範囲設定回路２０による参照画像メモリ４内の参照バンクメモリの割当て（以下、バンク割当てという）を図２２に示す。同図は、参照画像メモリ４が２２個の参照バンクメモリで構成される場合を例示し、同図（ａ）〜（ｃ）に示すバンク割当ては、前記第１〜第３の実施形態で説明した動き検出の方式、即ち、整数精度の動き検出と小数精度の動き検出と次対象マクロブロックの動き検出用としての参照バンクメモリの画像データの予備転送との三者を並列して行う制御方式を採用したバンク割当てを示し、同図（ｃ）に示した通常探索範囲のバンク割当てでは３つの各チャネル別に７個の参照バンクメモリが割り当てられ、同図（ｂ）の水平方向に拡大した探索範囲のバンク割当てでは２つの各チャネル別に１１個の参照バンクメモリが割り当てられ、同図（ａ）の水平及び垂直の両方向に拡大した探索範囲のバンク割当てでは１チャネル専用に２２個の全ての参照バンクメモリが割り当てられている。前記図２２（ｂ）及び（ｃ）は、各チャネル間で画像サイズＰＳ及びフレームレートＦＲが同一の場合を例示しているが、画像サイズＰＳ及びフレームレートＦＲが各チャネル間で異なる場合には、画像サイズＰＳ及びフレームレートＦＲが大きいチャネルに対して割り当てる参照バンクメモリの個数を多く変更すれば良い。
【０１３３】
図２２（ｄ）に示したバンク割当ては、チャネル数ＣＮ＝４の場合を示す。本発明の前記第１の実施形態では整数精度の動き検出と小数精度の動き検出と次対象マクロブロックの動き検出用としての画像データの予備転送との三者を並列に行う動き検出方式である関係上、１チャネル当りの参照バンクメモリの個数は少なくとも７個必要である。このため、チャネル数ＣＮがＣＮ＝４と多い状況では、参照バンクメモリの個数が２２個の条件下で本発明の動き検出方式を採用し難い。従って、同図（ｄ）のチャネル数ＣＮ＝４では、前記図３１で説明した従来の動き検出の方式、即ち、整数精度の動き検出と小数精度の動き検出とを直列に実行する動き検出の方式を採用している。同図（ｄ）のチャネル数ＣＮ＝４では、３つのチャネルで各々６個の参照バンクメモリを使用し、残り１つのチャネルで４個の参照バンクメモリを使用している。
【０１３４】
従って、本実施形態では、符号化するチャネル数に応じて探索範囲を変更し、チャネル数が少なければ探索範囲を拡げて、１チャネル当りの処理時間が多い状況で動き検出の予測精度の向上を図ることができる一方、チャネル数が多い場合には探索範囲を狭く設定し、１チャネル当りのデータ処理量を制限して、全てのチャネルでの動き検出を可能にできる効果を奏する。
【０１３５】
（第１２の実施形態）
次に、第１２の実施形態を説明する。本実施形態は、前記第１１の実施形態のネットワークカメラを更に変形したものである。
【０１３６】
図２３は本実施形態のネットワークカメラを備えたシステムの概略構成を示す。同図では、何れかのクライアント３１ａ〜３１ｎから画像の送信要求があった際には、ネットワークカメラ３０が参照画像メモリ４での参照バンクメモリの割当てを調査した結果、バンク構成に余裕が無くて割当てを変更できない場合に、その旨を送信要求したクライアントに通知する第１の機能と、その送信要求したクライアントに対して参照画像メモリ４の参照バンクメモリを優先的に割り当てたい旨をその送信要求したクライアント以外のクライアントに通知する第２の機能とを付加したものである。
【０１３７】
前記第１の機能について図２４の状態遷移図に基づいて説明する。同図において、ネットワークカメラ３０が動き検出処理を実行している状態Ｆ１で何れかのクライアントから画像の要求信号を受けた際には、ネットワークカメラ３０は、状態Ｆ２に移行してその要求を認めた場合での参照画像メモリ４の参照バンクメモリの割当てを判定し、その結果、バンク構成に余裕があれば、状態Ｆ３にてその要求を認めた場合での参照画像メモリ４の参照バンクメモリの割当てに変更する。一方、バンク構成に余裕がない場合には、状態Ｆ４において画像要求信号を出力した要求元クライアントにその旨通知する。この通知を受けた要求元クライアントが、画像の要求を取り下げると、状態Ｆ１に戻ってネットワークカメラ３０は以前の動き検出処理を続行するが、最初に要求した動画像性能よりも低い画像性能に変更して再度配信要求した場合には、状態Ｆ３においてネットワークカメラ３０はその再要求された画像性能の下でバンク構成の変更を試みて、変更可能と判断するときには、参照画像メモリ４の参照バンクメモリの割当てを変更する。
【０１３８】
次に、前記第２の機能について図２５の状態遷移図に基づいて説明する。図２５では、図２４の状態Ｆ１〜Ｆ４に加えて状態Ｆ５が追加される。この状態Ｆ５では、状態Ｆ２でクライアントからの画像の要求に対応した参照バンクメモリの割当て判定の結果、参照画像メモリ４のバンク構成に余裕がないと判断されれば、その画像要求をした要求元クライアントに参照バンクメモリを優先的に割当てることを許可するかどうかの問い合わせをその要求元クライアント以外の他のクライアントに通知する。そして、前記他のクライアントが前記問い合わせに応答して、要求元クライアントへの参照バンクメモリの優先割当てを許可する旨をネットワークカメラ３０に通知した場合には、ネットワークカメラ３０は状態Ｆ３でその優先割当を実行するように参照画像メモリ４の割当てを変更する。一方、前記他のクライアントが前記優先割当てを許可しない情報を通知した場合には、ネットワークカメラ３０は状態Ｆ４でその旨を要求元クライアントに通知する。
【０１３９】
従って、本実施形態では、ネットワークカメラにおいて、何れかのクライアントに対する画像の符号化及びその符号化画像データの送信を実行している状況で、他のクライアントから画像の要求があった際に、参照画像メモリ４のバンク構成に余裕がなくてその要求元クライアントへの画像送信が困難な場合であっても、その要求元クライアントが画像の要求性能を下げた配信要求を再度行ったり、他のクライアントが要求元クライアントへの参照バンクメモリの優先割当てを許可するときには、参照画像メモリ４のバンク割当てを変更するので、後から画像要求をするクライアントへの画像送信をもできる限り可能にして、一層多くのクライアントへの画像の並列送信を行えて、ネットワークカメラの性能の向上を図ることが可能である。
【０１４０】
（第１３の実施形態）
続いて、本発明の第１３の実施形態を説明する。本実施形態は、以上で説明した動き検出装置を利用した例えばデジタルスチルカメラ等の撮像システム（映像システム）の一例を示す。
【０１４１】
図２６は本実施形態の撮像システムを示す。同図の撮像システムでは、光学系５０を通って入射した画像光はセンサー５１上に結像され、光電変換される。光電変換によって得られた電気信号はＡ／Ｄ変換回路５２によりデジタル値に変換された後、例えば図１に示した動き検出装置１を含む画像処理回路５３に入力される。前記画像処理回路（画像処理部）５３においては、Ｙ／Ｃ処理、エッジ処理、画像の拡大縮小、及びＪＰＥＧやＭＰＥＧ等の画像圧縮／伸張処理等が行われる。画像処理された信号は、記録系／転送系５４においてメディアへの記録又は転送が行われる。記録又は転送された信号は再生系５５により再生される。前記センサー５１及び動き検出装置１はタイミング制御回路５６により制御され、前記光学系５０、記録系／転送系５４、再生系５５及びタイミング制御回路５６は、各々、システム制御回路５７により制御される。
【０１４２】
尚、前記図２６に示した撮像システムでは、光学系５０からの画像光をセンサー５１で光電変換してＡ／Ｄ変換回路５２に入力したカメラ機器等について説明したが、本発明はこれに限定されず、その他、テレビ等のＡＶ機器のアナログ映像入力を直接にＡ／Ｄ変換回路５２に入力しても良いのは勿論である。
【産業上の利用可能性】
【０１４３】
以上説明したように、本発明は、整数精度の動き検出と小数精度の動き検出とを並列実行できたり、動き検出の探索範囲を動き補償の予測精度や動きベクトルなどに応じて可変設定して、短時間で高精度の動き検出を可能にできると共に、データ処理時間を短縮しながら動き検出での符号化効率を高めることができるので、画像の動き検出装置やこれを使用した映像システム等として有用である。
【図面の簡単な説明】
【０１４４】
【図１】本発明の第１の実施形態の信号処理装置である画像の動き検出装置の全体概略構成を示す図である。
【図２】同動き検出装置の動作を説明する図である。
【図３】（ａ）は整数精度の動き検出と小数精度の動き検出とを並列実行する動作説明図、同図（ｂ）は整数精度の動き検出と小数精度の動き検出とを直列実行する動作説明図、同図（ｃ）は整数精度の動き検出のみを行う動作説明図である。
【図４】本発明の第２の実施形態の信号処理装置である画像の動き検出装置の全体概略構成を示し、同図（ａ）は異なる参照バンクメモリを使用して整数精度の動き検出と小数精度の動き検出とを並列に実行する場合を例示した図、同図（ｂ）は同一の参照バンクメモリを使用して整数精度の動き検出と小数精度の動き検出とを直列に実行する場合を例示した図である。
【図５】本発明の第３の実施形態の信号処理装置である画像の動き検出装置の全体概略構成を示し、同図（ａ）は探索範囲が初期範囲に設定された場合の参照画像メモリのバンク割り付けを示す図、同図（ｂ）は探索範囲が拡大範囲に設定された場合の参照画像メモリのバンク割り付けを示す図である。
【図６】ＭＰＥＧでの動き補償予測における前方予測及び後方向予測を用いた双方向予測の様子を説明する図である。
【図７】本発明の第４の実施形態の信号処理装置である画像の動き検出装置の全体概略構成を示し、同図（ａ）は前方向予測のみを用いた符号化方法での参照画像メモリのバンク割り付けを示す図、同図（ｂ）は双方向予測を用いた符号化方法での参照画像メモリのバンク割り付けを示す図である。
【図８】本発明の第５の実施形態の信号処理装置である画像の動き検出装置の全体概略構成を示す図である。
【図９】同動き検出装置に備える参照画像メモリのバンク割り付けを示し、同図（ａ）は探索範囲を通常範囲に設定した場合を示す図、同図（ｂ）は拡大範囲に設定した場合を示す図である。
【図１０】同動き検出装置の動き検出動作を示す制御フローチャート図である。
【図１１】本発明の第６の実施形態の信号処理装置である画像の動き検出装置の動き検出動作を示す制御フローチャート図である。
【図１２】本発明の第７の実施形態の信号処理装置である画像の動き検出装置の全体概略構成を示す図である。
【図１３】同動き検出装置の動き検出動作を示す制御フローチャート図である。
【図１４】本発明の第８の実施形態の信号処理装置である画像の動き検出装置の動き検出動作を示す制御フローチャート図である。
【図１５】本発明の第９の実施形態の信号処理装置である画像の動き検出装置の全体概略構成を示す図である。
【図１６】同動き検出装置の動き検出動作を示す制御フローチャート図である。
【図１７】同動き検出装置に備える参照画像メモリのバンク割り付けを示し、同図（ａ）は探索範囲を通常範囲に初期設定した場合を示す図、同図（ｂ）は探索範囲を水平及び垂直方向に拡大した場合を示す図、同図（ｃ）は探索範囲を水平方向にのみ拡大した場合を示す図、同図（ｄ）は探索範囲を垂直方向にのみ拡大した場合を示す図である。
【図１８】本発明の第１０の実施形態の信号処理装置である画像の動き検出装置の全体概略構成を示す図である。
【図１９】本発明の第１１の実施形態の信号処理装置である画像の動き検出装置を含むネットワークカメラの全体概略構成を示す図である。
【図２０】ネットワークカメラにおいて、符号化するチャネルの数と要求処理速度との関係を示す図である。
【図２１】本実施形態の動き検出装置の全体概略構成を示す図である。
【図２２】同動き検出装置に備える参照画像メモリの参照バンクメモリの割当てを示し、同図（ａ）は符号化するチャネルの数が１の場合のバンク割当てを示す図、同図（ｂ）は符号化するチャネルの数が２の場合のバンク割当てを示す図、同図（ｃ）は符号化するチャネルの数が３の場合のバンク割当てを示す図、同図（ｄ）は符号化するチャネルの数が４の場合のバンク割当てを示す図である。
【図２３】本発明の第１２の実施形態の信号処理装置である画像の動き検出装置を含むネットワークカメラの全体概略構成を示す図である。
【図２４】同ネットワークカメラの制御状態の状態遷移を示し、要求元クライアントへの通知の状態を含む状態遷移図である。
【図２５】同ネットワークカメラの制御状態の状態遷移を示し、他のクライアントへの通知の状態を含む状態遷移図である。
【図２６】本発明の第１３の実施形態の信号処理装置である画像の動き検出装置を含む撮像システムの全体概略構成を示す図である。
【図２７】フレーム間予測符号化における符号化の順序を示す図である。
【図２８】整数精度の動き探索の概念図である。
【図２９】従来の画像の動き検出装置の全体概略構成を示す図である。
【図３０】従来の画像の動き検出装置の動作を説明する図である。
【図３１】小数精度の動き探索の概念図である。
【図３２】従来の画像の動き検出装置の動き検出処理タイミングを示し、同図（ａ）は整数精度の動き検出のみを行う動作説明図、同図（ｂ）は整数精度の動き検出と小数精度の動き検出とを直列実行する動作説明図である。
【符号の説明】
【０１４５】
１                  動き検出装置（信号処理装置）
２                  システムメモリ
３                  対象画像メモリ（対象画像記憶手段）
３ａ〜３ｇ          対象ブロックメモリ
４                  参照画像メモリ（参照画像記憶手段）
４ａ〜４ｕ          参照バンクメモリ（参照バンク部）
５                  対象画像メモリ制御回路
６                  参照画像メモリ制御回路
７                  システムメモリ制御回路
８                  動き検出回路（動き検出回路）
（転送制御回路）（バンク構成特定手段）
ＢＳ１〜ＢＳ５      バス
２０                探索範囲設定回路
２１                比較回路（比較手段）
２２                カウント回路
２４                予測精度検出手段
２５                画像符号化装置
２６                カメラ信号処理部
２７                手ぶれ検出回路（変化検出手段）
３０                ネットワークカメラ
３５                割当て決定回路
５０                光学系
５１                センサー
５２                Ａ／Ｄ変換回路（Ａ／Ｄ変換器）
５３                画像処理回路（画像処理部）
【図１】
2007189518.tif 000003
【図２】
2007189518.tif 000004
【図３】
2007189518.tif 000005
【図４】
2007189518.tif 000006
【図５】
2007189518.tif 000007
【図６】
2007189518.tif 000008
【図７】
2007189518.tif 000009
【図８】
2007189518.tif 000010
【図９】
2007189518.tif 000011
【図１０】
2007189518.tif 000012
【図１１】
2007189518.tif 000013
【図１２】
2007189518.tif 000014
【図１３】
2007189518.tif 000015
【図１４】
2007189518.tif 000016
【図１５】
2007189518.tif 000017
【図１６】
2007189518.tif 000018
【図１７】
2007189518.tif 000019
【図１８】
2007189518.tif 000020
【図１９】
2007189518.tif 000021
【図２０】
2007189518.tif 000022
【図２１】
2007189518.tif 000023
【図２２】
2007189518.tif 000024
【図２３】
2007189518.tif 000025
【図２４】
2007189518.tif 000026
【図２５】
2007189518.tif 000027
【図２６】
2007189518.tif 000028
【図２７】
2007189518.tif 000029
【図２８】
2007189518.tif 000030
【図２９】
2007189518.tif 000031
【図３０】
2007189518.tif 000032
【図３１】
2007189518.tif 000033
【図３２】
2007189518.tif 000034