(57)【要約】【課題】オブジェクトの追尾中において、ユーザからの補正指示に応じた所定の位置に追尾点を補正することができるようにする。【解決手段】撮像部２１がオブジェクトの周囲の画像を撮像し、移動するオブジェクトの追尾点を追尾対象検出部２２が検出する。オブジェクト追尾部２３は、オブジェクトの追尾点を追尾し、追尾結果を追尾位置補正部２４に出力する。追尾位置補正部２４は、指示入力部２９を介してユーザから追尾位置の補正が指示された場合、オブジェクト追尾部２３からの追尾結果にユーザからの補正値を反映し、その補正状況に応じた拡大率で拡大して画像ディスプレイ２５に出力する。本発明は、監視カメラシステムに適用できる。【選択図】図１
2009010453.tif 000002
【特許請求の範囲】
【請求項１】
移動するオブジェクトを追尾する画像処理装置において、
画像の中の前記オブジェクトの移動を追尾する追尾手段と、
前記追尾手段による前記オブジェクトの追尾中に前記オブジェクト上の追尾点の補正が指示された場合、前記オブジェクトの追尾処理を継続しつつその補正指示を追尾結果に反映する反映手段と、
前記補正が指示された場合、前記画像の表示の拡大率を自律的な判断で調整し、調整後の拡大率で前記画像を拡大表示させる表示制御手段と
を備える画像処理装置。
【請求項２】
前記表示制御手段は、前記拡大率の調整として、前記補正が開始された場合、前記拡大率を第１の拡大率から第２の拡大率まで小さくしていき、前記拡大率を前記第２の拡大率で保持し、前記補正が終了された場合、前記拡大率を前記第２の拡大率から前記第１の拡大率まで大きくしていく
請求項１に記載の画像処理装置。
【請求項３】
前記表示制御手段は、
前記第１の拡大率から前記第２の拡大率までの第１の期間における前記拡大率の調整については、前記第１の期間中の拡大率の変化速度に基づいて前記拡大率を算出し、
前記第２の拡大率から前記第１の拡大率までの第２の期間における前記拡大率の調整については、前記第２の期間中の拡大率の変化速度に基づいて前記拡大率を算出する
請求項２に記載の画像処理装置。
【請求項４】
前記第１の期間および前記第２の期間は予め定義されており、
前記表示制御手段は、
前記第１の期間における前記拡大率の調整については、前記第１の期間に基づいて前記変化速度を算出し、その変化速度を用いて前記拡大率を算出し、
前記第２の変化の期間における前記拡大率の調整については、前記第２の期間に基づいて前記変化速度を算出し、その変化速度を用いて前記拡大率を算出する
請求項３に記載の画像処理装置。
【請求項５】
前記第１の期間中の前記変化速度および前記第２の期間中の変化速度は予め定義されている
請求項３に記載の画像処理装置。
【請求項６】
前記表示制御手段は、前記第２の拡大率を可変させて、前記拡大率を調整する
請求項２に記載の画像処理装置。
【請求項７】
前記表示制御手段は、
前記第１の拡大率から前記第２の拡大率までの第１の期間中の拡大率の変化速度を可変させて、前記第１の期間中の前記拡大率を調整し、
前記第２の拡大率から前記第１の拡大率までの第２の期間中の拡大率の変化速度を可変させて、前記第２の期間中の前記拡大率を調整する
請求項２に記載の画像処理装置。
【請求項８】
前記補正指示に基づく補正値を算出する算出手段をさらに備える
請求項１に記載の画像処理装置。
【請求項９】
前記反映手段は、前記算出手段により算出された前記補正値を、前記画像の座標系に対する相対値として前記追尾結果に反映する
請求項８に記載の画像処理装置。
【請求項１０】
前記反映手段は、前記算出手段により算出された前記補正値を、前記追尾対象に対する相対値として前記追尾結果に反映する
請求項８に記載の画像処理装置。
【請求項１１】
前記反映手段により前記補正指示が反映された後、前記追尾点を前記オブジェクトの重心位置になるように微調整する微調整手段をさらに備える
請求項１に記載の画像処理装置。
【請求項１２】
移動するオブジェクトを追尾する画像処理装置の画像処理方法において、
画像の中の前記オブジェクトの移動を追尾し、
前記オブジェクトの追尾中に前記オブジェクト上の追尾点の補正が指示された場合、前記オブジェクトの追尾処理を継続しつつその補正指示を追尾結果に反映し、
前記補正が指示された場合、前記画像の表示の拡大率を自律的な判断で調整し、調整後の拡大率で前記画像を拡大表示させる
ステップを含む画像処理方法。
【請求項１３】
移動するオブジェクトを追尾する画像処理装置の画像処理をコンピュータに実行させるプログラムにおいて、
画像の中の前記オブジェクトの移動を追尾し、
前記オブジェクトの追尾中に前記オブジェクト上の追尾点の補正が指示された場合、前記オブジェクトの追尾処理を継続しつつその補正指示を追尾結果に反映し、
前記補正が指示された場合、前記画像の表示の拡大率を自律的な判断で調整し、調整後の拡大率で前記画像を拡大表示させる
ステップを含むプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置および方法並びにプログラムに関し、特に、オブジェクトの追尾中において、ユーザからの補正指示に応じた所定の位置に追尾点を補正することができるようにした画像処理装置および方法並びにプログラムに関する。
【背景技術】
【０００２】
従来、動画像として表示される画像の中で、ユーザが指示した対象を追尾する方法が多く提案されている。それらのほとんどは、最初に追尾対象を指示した後、全自動で追尾処理を行うというものである。
【０００３】
しかしながら、実際には画像のノイズや長時間のオクルージョンなどの外乱によって、全自動処理で所望の追尾結果を得ることができない。
【０００４】
そこで、追尾結果をユーザが補正する方法がいくつか提案されている。例えば、特許文献１には、画像中の移動体を自動的に検出・追尾し、所望の結果が得られていない場合はユーザが手動で操作するというものである。また例えば、特許文献２には、追尾結果に対してユーザからの補正を受け付け、再度追尾処理を行うというものである。
【特許文献１】特開２００５−２４４５６２号公報
【特許文献２】特開２００５−１６５９２９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、特許文献１は、自動的な対象の検出を行うものであり、所望の対象を指示して追尾することができなかった。また自動的な検出・追尾からユーザによる操作に切り替わるというだけであり、ユーザによる所望の補正指示をその後の追尾処理に反映させることはできなかった。
【０００６】
また、特許文献２において補正指示を反映させるには、追尾処理を中断して補正を反映させた後、再び追尾処理開始を指示する必要があり、リアルタイムに補正することができなかった。
【０００７】
以上のように、追尾処理中にユーザから対象の補正指示があった場合、その指示をリアルタイムに反映しながら追尾処理を継続することができなかった。
【０００８】
本発明はこのような状況に鑑みてなされたものであり、オブジェクトの追尾中において、ユーザからの補正指示に応じた所定の位置に追尾点を補正することができるようにするものである。
【課題を解決するための手段】
【０００９】
本発明の一側面の画像処理装置は、移動するオブジェクトを追尾する画像処理装置であって、画像の中の前記オブジェクトの移動を追尾する追尾手段と、前記追尾手段による前記オブジェクトの追尾中に前記オブジェクト上の追尾点の補正が指示された場合、前記オブジェクトの追尾処理を継続しつつその補正指示を追尾結果に反映する反映手段と、前記補正が指示された場合、前記画像の表示の拡大率を自律的な判断で調整し、調整後の拡大率で前記画像を拡大表示させる表示制御手段とを備える。
【００１０】
前記表示制御手段は、前記拡大率の調整として、前記補正が開始された場合、前記拡大率を第１の拡大率から第２の拡大率まで小さくしていき、前記拡大率を前記第２の拡大率で保持し、前記補正が終了された場合、前記拡大率を前記第２の拡大率から前記第１の拡大率まで大きくしていく。
【００１１】
前記表示制御手段は、前記第１の拡大率から前記第２の拡大率までの第１の期間における前記拡大率の調整については、前記第１の期間中の拡大率の変化速度に基づいて前記拡大率を算出し、前記第２の拡大率から前記第１の拡大率までの第２の期間における前記拡大率の調整については、前記第２の期間中の拡大率の変化速度に基づいて前記拡大率を算出する。
【００１２】
前記第１の期間および前記第２の期間は予め定義されており、前記表示制御手段は、前記第１の期間における前記拡大率の調整については、前記第１の期間に基づいて前記変化速度を算出し、その変化速度を用いて前記拡大率を算出し、前記第２の変化の期間における前記拡大率の調整については、前記第２の期間に基づいて前記変化速度を算出し、その変化速度を用いて前記拡大率を算出する。
【００１３】
前記第１の期間中の前記変化速度および前記第２の期間中の変化速度は予め定義されている。
【００１４】
前記表示制御手段は、前記第２の拡大率を可変させて、前記拡大率を調整する。
【００１５】
前記表示制御手段は、前記第１の拡大率から前記第２の拡大率までの第１の期間中の拡大率の変化速度を可変させて、前記第１の期間中の前記拡大率を調整し、前記第２の拡大率から前記第１の拡大率までの第２の期間中の拡大率の変化速度を可変させて、前記第２の期間中の前記拡大率を調整する。
【００１６】
前記補正指示に基づく補正値を算出する算出手段をさらに備える。
【００１７】
前記反映手段は、前記算出手段により算出された前記補正値を、前記画像の座標系に対する相対値として前記追尾結果に反映する。
【００１８】
前記反映手段は、前記算出手段により算出された前記補正値を、前記追尾対象に対する相対値として前記追尾結果に反映する。
【００１９】
前記反映手段により前記補正指示が反映された後、前記追尾点を前記オブジェクトの重心位置になるように微調整する微調整手段をさらに備える。
【００２０】
本発明の一側面の画像処理方法およびプログラムは、上述した本発明の一側面の画像処理装置に対応する画像処理方法およびプログラムである。
【００２１】
本発明の一側面の画像処理装置および方法並びにプログラムにおいては、画像の中のオブジェクトの移動が追尾され、前記オブジェクトの追尾中に前記オブジェクト上の追尾点の補正が指示された場合、前記オブジェクトの追尾処理が継続されつつその補正指示が追尾結果に反映される。また、前記補正が指示された場合、前記画像の表示の拡大率が装置の自律的な判断で調整され、調整後の拡大率で前記画像が拡大表示される。
【発明の効果】
【００２２】
以上のごとく、本発明の一側面によれば、オブジェクトの追尾中において、ユーザからの補正指示に応じた所定の位置に追尾点を補正することができる。
【発明を実施するための最良の形態】
【００２３】
以下に本発明の実施の形態を説明するが、本発明の構成要件と、発明の詳細な説明に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、発明の詳細な説明に記載されていることを確認するためのものである。従って、発明の詳細な説明中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
【００２４】
さらに、この記載は、発明の実施の形態に記載されている具体例に対応する発明が、請求項に全て記載されていることを意味するものではない。換言すれば、この記載は、発明の実施の形態に記載されている具体例に対応する発明であって、この出願の請求項には記載されていない発明の存在、すなわち、将来、分割出願されたり、補正により追加される発明の存在を否定するものではない。
【００２５】
本発明の一側面の画像処理装置（例えば図１の監視カメラシステム１）は、
移動するオブジェクトを追尾する画像処理装置であって、
画像の中の前記オブジェクトの移動を追尾する追尾手段（例えば図１のオブジェクト追尾部２３）と、
前記追尾手段による前記オブジェクトの追尾中に前記オブジェクト上の追尾点の補正が指示された場合、前記オブジェクトの追尾処理を継続しつつその補正指示を追尾結果に反映する反映手段（例えば図２６の補正値反映部１６２）と、
前記補正が指示された場合、前記画像の表示の拡大率を自律的な判断で調整し、調整後の拡大率で前記画像を拡大表示させる表示制御手段（例えば図１の制御部２７）と
を備える画像処理装置。
【００２６】
前記表示制御手段は、前記拡大率の調整として、前記補正が開始された場合（例えば図３９の時刻t0の場合）、前記拡大率を第１の拡大率（例えば図３９の拡大率Za）から第２の拡大率（例えば図３９の拡大率Zb）まで小さくしていき（例えば図３９の時刻t0から時刻t1までの期間参照）、前記拡大率を前記第２の拡大率で保持し（例えば図３９の時刻t1から時刻t2までの期間参照）、前記補正が終了された場合（例えば図３９の時刻t2の場合）、前記拡大率を第２の拡大率から第１の拡大率まで大きくしていく（例えば図３９の時刻t2から時刻t3までの期間参照）。
【００２７】
また、前記補正指示に基づく補正値を算出する算出手段（例えば図２６の補正値算出部１６１）をさらに備える。
【００２８】
また、前記反映手段により前記補正指示が反映された後、前記追尾点を前記オブジェクトの重心位置になるように微調整する微調整手段（例えば図２６の微調整部１６３）をさらに備える
【００２９】
本発明の一側面の画像処理方法は、
移動するオブジェクトを追尾する画像処理装置（例えば図１の監視カメラシステム１）の画像処理方法であって、
画像の中の前記オブジェクトの移動を追尾し（例えば図５のステップＳ１１）、
前記オブジェクトの追尾中に前記オブジェクト上の追尾点の補正が指示された場合（例えば図３６のステップＳ１５４の処理でＹＥＳであると判定された場合）、前記オブジェクトの追尾処理を継続しつつその補正指示を追尾結果に反映し（例えば図３６のステップＳ１５６）、
前記補正が指示された場合、前記画像の表示の拡大率を自律的な判断で調整し、調整後の拡大率で前記画像を拡大表示させる（例えば図３６のステップＳ１５７とＳ１５８）
ステップを含む。
【００３０】
本発明の一側面のプログラムは、上述した本発明の一側面の情報処理方法に対応するプログラムであって、例えば図４２のコンピュータにより実行される。
【００３１】
以下、本発明の実施の形態について図を参照して説明する。
【００３２】
図１は、本発明を監視カメラシステムに適用した場合の構成例を表している。
【００３３】
撮像部２１は、例えば、CCD（Charge Coupled Device）ビデオカメラ等よりなり、撮像した画像を画像ディスプレイ２５に表示させる。追尾対象検出部２２は、撮像部２１より入力された画像から追尾対象を検出し、検出結果をオブジェクト追尾部２３に出力する。
【００３４】
オブジェクト追尾部２３は、撮像部２１より供給された画像中の、追尾対象検出部２２により指定された追尾点を追尾するように動作する。またオブジェクト追尾部２３は、追尾結果を追尾位置補正部２４に出力するとともに、追尾結果に基づいて、移動したオブジェクトを撮像できるようにカメラ駆動部２６を制御する。追尾位置補正部２４は、指示入力部２９を介してユーザから追尾位置の補正が指示された場合、オブジェクト追尾部２３からの追尾結果にユーザからの補正値を反映し、その補正結果を画像ディスプレイ２５に出力するとともに、オブジェクト追尾部２３に補正結果を供給する。これにより、オブジェクト追尾部２３は、補正された追尾点を次のフレームから追尾するように動作することができる。カメラ駆動部２６は、オブジェクト追尾部２３からの制御に基づいて、撮像部２１が追尾点を中心とする画像を撮影するように撮像部２１を駆動する。
【００３５】
制御部２７は、例えば、マイクロコンピュータなどにより構成され、各部を制御する。また制御部２７には、半導体メモリ、磁気ディスク、光ディスク、または光磁気ディスクなどにより構成されるリムーバブルメディア２８が必要に応じて接続され、プログラム、その他各種のデータが必要に応じて供給される。指示入力部２９は、各種のボタン、スイッチ、あるいは赤外線や電波を用いたリモートコントローラなどにより構成され、ユーザからの指示に対応する信号を制御部２７に出力する。
【００３６】
次に、図２のフローチャートを参照して、図１に示した監視カメラシステムが実行する監視処理について説明する。この処理は、監視システム１の電源がオンされているとき、撮像部２１により監視する領域が撮像され、その撮像して得られた画像が追尾対象検出部２２およびオブジェクト追尾部２３を介して画像ディスプレイ２５に出力されて開始される。
【００３７】
ステップＳ１において、追尾対象検出部２２は、撮像部２１から入力された画像から追尾対象を検出する処理を実行する。例えば、入力画像に動く物体が存在する場合、追尾対象検出部２２は、その動く物体を追尾対象として検出するとともに、追尾対象の中から、最も輝度の高い点あるいは追尾対象の中心の点などを追尾点として検出し、検出結果をオブジェクト追尾部２３に出力する。なお、追尾対象は、ユーザが指示入力部２９を介して所定の位置を指定して設定することももちろん可能である。
【００３８】
ステップＳ２において、オブジェクト追尾部２３は、ステップＳ１の処理で検出された追尾点を追尾する追尾処理を実行する。追尾処理の詳細については、図５を参照して後述するが、この処理により、撮像部２１により撮像された画像の中の追尾対象となるオブジェクト（例えば、人、動物など）の中の追尾点（例えば、目、頭の中心）が追尾され、追尾結果が制御部２７に出力されるとともに、追尾位置を表す位置情報が追尾位置補正部２４に出力される。
【００３９】
ステップＳ３において、制御部２７は、ステップＳ２の処理による追尾結果に基づいて、画像ディスプレイ２５に、撮像部２１により撮像された画像に追尾位置を表すマークなどを重畳して表示させる。
【００４０】
ステップＳ４において、オブジェクト追尾部２３は、ステップＳ２の処理による追尾結果に基づいて、オブジェクトの移動を検出し、移動したオブジェクトを撮像できるようにカメラを駆動させるカメラ駆動信号を生成し、カメラ駆動部２６に出力する。ステップＳ５において、カメラ駆動部２６は、オブジェクト追尾部２３からのカメラ駆動信号に基づいて撮像部２１を駆動する。これにより撮像部２１は、追尾点が画面から外れてしまうことがないようにカメラをパンまたはチルトする。
【００４１】
ステップＳ６において、制御部２７は、指示入力部２９を介したユーザからの指示に基づいて監視処理を終了するか否かを判定し、ユーザから終了が指示されていない場合には、ステップＳ１に戻り、それ以降の処理を繰り返し実行する。そして、ステップＳ６において、ユーザから監視処理の終了が指示されたと判定された場合、制御部２７は監視処理を終了する。
【００４２】
図３Ａ乃至図３Ｃは、このとき画像ディスプレイ２５に表示される画像の例を、時系列に示した図である。図３Ａは、撮像部２１により、追尾対象となるオブジェクト４１が撮像された画像の例であり、この例では、図中左方向に走って移動する人が、オブジェクト４１として撮像されている。図３Ｂでは、オブジェクト４１が、図３Ａの位置から図中左に移動しており、図３Ｃでは、オブジェクト４１が、図３Ｂの位置からさらに左に移動している。
【００４３】
追尾対象検出部２２は、図２のステップＳ１で、オブジェクト４１を検出し、このオブジェクト４１である人の目を、追尾点４１Ａとしてオブジェクト追尾部２３に出力する。ステップＳ２ではオブジェクト追尾部２３により追尾処理が行われる。
【００４４】
次に、図１のオブジェクト追尾部２３の詳細な構成例と、その動作について説明する。
【００４５】
図４は、オブジェクト追尾部２３の機能的構成例を示すブロック図である。図４に示されるように、オブジェクト追尾部２３は、テンプレートマッチング部５１、動き推定部５２、シーンチェンジ検出部５３、背景動き推定部５４、領域推定関連処理部５５、乗り換え候補保持部５６、追尾点決定部５７、テンプレート保持部５８、および制御部５９により構成されている。
【００４６】
テンプレートマッチング部５１は、入力画像と、テンプレート保持部５８に保持されているテンプレート画像のマッチング処理を行う。動き推定部５２は、入力画像の動きを推定し、推定の結果得られた動きベクトルと、その動きベクトルの確度を、シーンチェンジ検出部５３、背景動き推定部５４、領域推定関連処理部５５、および追尾点決定部５７に出力する。シーンチェンジ検出部５３は、動き推定部５２より供給された動きベクトルとその動きベクトルの確度に基づいて、シーンチェンジを検出する。
【００４７】
背景動き推定部５４は、動き推定部５２より供給された動きベクトルとその動きベクトルの確度に基づいて背景動きを推定する処理を実行し、推定結果を領域推定関連処理部５５に供給する。領域推定関連処理部５５は、動き推定部５２より供給された動きベクトルとその動きベクトルの確度、背景動き推定部５４より供給された背景動き、並びに追尾点決定部５７より供給された追尾点情報に基づいて、領域推定処理を行う。また領域推定関連処理部５５は、入力された情報に基づいて乗り換え候補を生成し、乗り換え候補保持部５６へ供給し、保持させる。さらに領域推定関連処理部５５は、入力画像に基づいてテンプレートを作成し、テンプレート保持部５８に供給し、保持させる。
【００４８】
追尾点決定部５７は、動き推定部５２より供給された動きベクトルとその動きベクトルの確度、および乗り換え候補保持部５６より供給された乗り換え候補に基づいて、追尾点を決定し、決定された追尾点に関する情報を領域推定関連処理部５５に出力する。
【００４９】
制御部５９は、追尾対象検出部２２から出力された追尾点の情報に基づいて、テンプレートマッチング部５１乃至テンプレート保持部５８の各部を制御して、検出された追尾対象を追尾させるとともに、画像ディスプレイ２５に表示される画面の中に、追尾点が表示されるようにカメラ駆動部２６に制御信号を出力し、撮像部２１の駆動を制御する。これにより、追尾点が画面の外に出ないように制御される。また制御部５９は、追尾点の画面上での位置の情報などの追尾結果を、追尾位置補正部２４および制御部２７などに出力する。
【００５０】
次に、オブジェクト追尾部２３の動作について説明する。
【００５１】
図５は、図２のステップＳ２におけるオブジェクト追尾部２３が実行する追尾処理の詳細を説明するフローチャートである。
【００５２】
図５に示されるように、オブジェクト追尾部２３は、基本的に通常処理と例外処理を実行する。すなわち、ステップＳ１１で通常処理が行われる。この通常処理の詳細は、図９のフローチャートを参照して後述するが、この処理により追尾対象検出部２２により検出された追尾点を追尾する処理が実行される。
【００５３】
ステップＳ１１の通常処理において追尾点の追尾ができなくなったとき、ステップＳ１２において、例外処理が実行される。この例外処理の詳細は、図１２のフローチャートを参照して後述するが、この例外処理により、追尾点が画像から見えなくなったとき、テンプレートマッチングにより通常処理への復帰処理が実行される。例外処理によって追尾処理を継続することができなくなった、すなわち、通常処理へ復帰することができなくなったと判定された場合には処理が終了されるが、テンプレートマッチングによる復帰処理の結果、通常処理への復帰が可能と判定された場合には、処理は再びステップＳ１１に戻る。このようにして、ステップＳ１１の通常処理とステップＳ１２の例外処理が、各フレーム毎に順次繰り返し実行される。
【００５４】
本実施の形態においては、この通常処理と例外処理により、図６乃至図８に示されるように、追尾対象が回転したり、オクルージョンが発生したり、シーンチェンジが発生する等、追尾点が一時的に見えなくなった場合においても、追尾が可能となる。
【００５５】
図６の例では、フレームｎ−１において、追尾対象としての人の顔７４が表示されており、この人の顔７４は、右目７２と左目７３を有している。ユーザが、このうちの、例えば右目７２（正確には、その中の１つの画素）を追尾点７１として指定したとする。図６の例においては、次のフレームｎにおいて、追尾対象としての人が図中左方向に移動しており、さらに次のフレームｎ＋１においては、人の顔７４が時計方向に回動している。その結果、今まで見えていた右目７２が表示されなくなり、追尾ができなくなる。そこで、上述した図５のステップＳ１１の通常処理においては、右目７２と同一の対象物としての顔７４上の左目７３が新たな追尾点として選択され、追尾点が左目７３に乗り換えられる。これにより追尾が可能となる。
【００５６】
図７の例では、フレームｎ−１において、追尾対象としての人の顔７４の図中左側からボール８１が移動してきており、次のフレームｎにおいて、ボール８１がちょうど顔７４を覆う状態となっている。この状態においては、追尾点７１として指定されていた右目７２を含む顔７４が表示されていない。このようなオクルージョンが起きると、対象物としての顔７４が表示されていないので、追尾点７１に代えて追尾する乗り換え点もなくなり、以後、追尾点を追尾することが困難になる。そこで本実施の形態においては、追尾点７１としての右目７２を含むフレームｎ−１（実際には時間的にもっと前のフレーム）の画像がテンプレートとして予め保存され、ボール８１がさらに右側に移動し、フレームｎ＋１において、追尾点７１として指定された右目７２が再び現れると、上述した図５のステップＳ１２の例外処理により、追尾点７１としての右目７２が再び表示されたことがテンプレートに基づいて確認され、右目７２が再び追尾点７１として追尾されることになる。
【００５７】
図８の例では、フレームｎ−１において、追尾対象としての人の顔７４が表示されているが、次のフレームｎにおいて、自動車９１が人の顔７４を含む全体を覆い隠している。すなわち、この場合、シーンチェンジが起きたことになる。そこで本実施の形態においては、このようにシーンチェンジが起きて追尾点７１が画像から存在しなくなっても、自動車９１が移動して、フレームｎ＋１において再び右目７２が表示されると、上述した図５のステップＳ１２の例外処理により、追尾点７１としての右目７２が再び出現したことがテンプレートに基づいて確認され、この右目７２を再び追尾点７１として追尾することが可能となる。
【００５８】
次に、図９のフローチャートを参照して、図５のステップＳ１１の通常処理の詳細について説明する。
【００５９】
ステップＳ２１において、追尾点決定部５７は、通常処理の初期化処理を実行する。その詳細は、図１０のフローチャートを参照して後述するが、この処理によりユーザから追尾するように指定された追尾点を基準とする領域推定範囲が設定される。この領域推定範囲は、ユーザにより指定された追尾点と同一の対象物（例えば、追尾点が人の目である場合、目と同様の動きをする剛体としての人の顔、または人の体など）に属する点の範囲を推定する際に参照する範囲である。乗り換え点は、この領域推定範囲の中の点から選択される。
【００６０】
ステップＳ２２において、制御部５９は、次のフレームの画像の入力を待機するように各部を制御する。ステップＳ２３において、動き推定部５２は、追尾点の動きを推定する。すなわち、ユーザにより指定された追尾点を含むフレーム（ここでは前フレームという）より時間的に後のフレーム（ここでは後フレームという）をステップＳ２２の処理で取り込むことで、結局連続する２フレームの画像が得られたことになるので、ステップＳ２３において、前フレームの追尾点に対応する後フレームの追尾点の位置を推定することで、追尾点の動きが推定される。
【００６１】
なお、時間的に前または後とは、入力の順番や処理の順番をいう。通常、撮像の順番に各フレームの画像が入力されるので、その場合、より時間的に前に撮像されたフレームが前フレームとなるが、時間的に後に撮像されたフレームが先に処理される場合には、時間的に後に撮像されたフレームが前フレームとなる。
【００６２】
ステップＳ２４において、動き推定部５２は、ステップＳ２３の処理の結果、追尾点が推定可能であったか否かを判定する。追尾点が推定可能であったか否かは、例えば、動き推定部５２が生成、出力する動きベクトル（後述）の確度の値を、予め設定されている閾値と比較することで判定される。具体的には、動きベクトルの確度が閾値以上であれば推定が可能であり、閾値より小さければ推定が不可能であると判定される。すなわち、ここにおける可能性は比較的厳格に判定され、実際には推定が不可能ではなくても確度が低い場合には、不可能と判定される。これにより、より確実な追尾処理が可能となる。
【００６３】
なお、ステップＳ２４では、追尾点での動き推定結果と追尾点の近傍の点での動き推定結果が、多数を占める動きと一致する場合には推定可能、一致しない場合には推定不可能と判定するようにすることも可能である。
【００６４】
ステップＳ２４において、追尾点の動きが推定可能であると判定された場合、つまり、追尾点が同一対象物上の対応する点上に正しく設定されている確率が比較的高い場合、ステップＳ２５に進む。より具体的には、図６の例において右目７２が追尾点７１として指定された場合、右目７２が正しく追尾されている確率が比較的高い場合には追尾点の動きが推定可能であると判定される。
【００６５】
ステップＳ２５において、追尾点決定部５７は、ステップＳ２３の処理で得られた推定動き（いわゆる動きベクトル）の分だけ追尾点をシフトする。これにより、前フレームの追尾点の追尾後の後フレームにおける追尾の位置が決定されることになる。
【００６６】
ステップＳ２５の処理の後、ステップＳ２６において、領域推定関連処理が実行される。この領域推定関連処理の詳細は、本出願人が先に提案している特開２００５−３０３９８３号公報に開示されている。この処理により、ステップＳ２１の通常処理の初期化処理で指定された領域推定範囲が更新される。また対象物体が回転するなどして、追尾点が表示されない状態になった場合に、追尾点を乗り換えるべき点としての乗り換え点としての候補（乗り換え候補）が、まだ追尾が可能な状態において予め抽出され、乗り換え候補保持部５６で保持される。さらに乗り換え候補への乗り換えもできなくなった場合、追尾は一旦中断されるが、追尾点が再び出現することで再び追尾が可能になったことを確認するためのテンプレートが予め作成され、テンプレート保持部５８で保持される。
【００６７】
ステップＳ２６の領域推定関連処理が終了した後、処理は再びステップＳ２２に戻り、それ以降の処理が繰り返し実行される。
【００６８】
このように、ユーザから指定された追尾点の動きが推定可能である限り、ステップＳ２２乃至ステップＳ２６の処理がフレーム毎に繰り返し実行され、追尾が行われることになる。
【００６９】
これに対して、ステップＳ２４において、追尾点の動きが推定不可能であると判定された場合、すなわち、上述したように、例えば動きベクトルの確度が閾値以下であるような場合には、処理はステップＳ２７に進む。
【００７０】
ステップＳ２７において、追尾点決定部５７は、ステップＳ２６の領域推定関連処理で生成された乗り換え候補が乗り換え候補保持部５６に保持されているので、その中から、元の追尾点に最も近い乗り換え候補を１つ選択する。追尾点決定部５７は、ステップＳ２８で乗り換え候補が選択できたか否かを判定し、乗り換え候補が選択できた場合には、ステップＳ２９に進み、追尾点をステップＳ２７の処理で選択した乗り換え候補に乗り換える（変更する）。これにより、乗り換え候補の点が新たな追尾点として設定される。
【００７１】
ステップＳ２９の処理の後、処理はステップＳ２３に戻り、乗り換え候補の中から選ばれた追尾点の動きを推定する処理が実行される。そして、ステップＳ２４において新たに設定された追尾点の動きが推定可能であるか否かが再び判定され、推定可能であれば、ステップＳ２５において追尾点を推定動き分だけシフトする処理が行われ、ステップＳ２６において領域推定関連処理が実行される。その後、処理は再びステップＳ２２に戻り、それ以降の処理が繰り返し実行される。
【００７２】
ステップＳ２４において、新たに設定された追尾点も推定不可能であると判定された場合には、再びステップＳ２７に進み、乗り換え候補の中から、元の追尾点に次に最も近い乗り換え候補が選択され、ステップＳ２９において、その乗り換え候補が新たな追尾点として設定される。その新たな追尾点について、再びステップＳ２３以降の処理が繰り返される。
【００７３】
乗り換え候補保持部５６で保持されているすべての乗り換え候補を新たな追尾点としても、追尾点の動きを推定することができなかった場合には、ステップＳ２８において、乗り換え候補が選択できなかったと判定され、この通常処理は終了される。そして、図５のステップＳ１２の例外処理に処理が進むことになる。
【００７４】
次に、図１０のフローチャートを参照して、図９のステップＳ２１の通常処理の初期化処理の詳細について説明する。
【００７５】
ステップＳ４１において、制御部５９は、今の処理は例外処理からの復帰の処理であるか否かを判定する。すなわち、図５のステップＳ１２の例外処理を終了した後、再びステップＳ１１の通常処理に戻ってきたのか否かが判定される。最初のフレームの処理においては、まだステップＳ１２の例外処理は実行されていないので、例外処理からの復帰ではないと判定され、処理はステップＳ４２に進む。
【００７６】
ステップＳ４２において、追尾点決定部５７は、追尾点を追尾点指示の位置に設定する処理を実行する。すなわち、入力画像の中で、例えば、最も輝度の高い点が追尾点として設定される。
【００７７】
なお、追尾点は、ユーザによる指定など、他の方法により設定されるようにしてもよい。ユーザによる指定とは、例えば、ユーザが指示入力部２９を操作することで、制御部５９に対して、入力画像の中の所定の点を追尾点として指定することにより行われることである。追尾点決定部５７は、設定した追尾点の情報を領域推定関連処理部５５に供給する。
【００７８】
ステップＳ４３において、領域推定関連処理部５５は、ステップＳ４２の処理で設定された追尾点の位置情報に基づき、領域推定範囲を設定する。この領域推定範囲は、追尾点と同じ剛体上の点を推定する際の参照範囲であり、予め追尾点と同じ剛体部分が領域推定範囲の大部分を占めるように、より具体的には、追尾点と同じ剛体部分に推定領域範囲の位置や大きさが追随するように設定することで、領域推定範囲の中で最も多数を占める動きを示す部分を追尾点と同じ剛体部分であると推定できるようにするためのものである。ステップＳ４３では、初期値として、例えば、追尾点を中心とする予め設定された一定の範囲が領域推定範囲とされる。その後、処理は図９のステップＳ２２に進むことになる。
【００７９】
一方、ステップＳ４１において、現在の処理が、図５のステップＳ１２の例外処理からの復帰の処理であると判定された場合、ステップＳ４４に進む。ステップＳ４４において、追尾点決定部５７は、図１２のフローチャートを参照して後述する例外処理によるテンプレートにマッチした位置に基づき追尾点と領域推定範囲を設定する。例えば、テンプレート上の追尾点とマッチした現フレーム上の点が追尾点とされ、その点から予め設定されている一定の範囲が領域推定範囲とされる。その後、処理は図９のステップＳ２２に進む。
【００８０】
以上の処理を、図１１を参照して説明すると次のようになる。
【００８１】
図１０のステップＳ４２において、例えば、図１１に示されるように、フレームｎ−１の人の右目７２が追尾点７１として指定されると、ステップＳ４３において、追尾点７１を含む所定の領域が領域推定範囲１０１として指定される。図９のステップＳ２４において、領域推定範囲１０１の範囲内のサンプル点が次のフレームにおいて推定可能であるか否かが判定される。図１１の例の場合、フレームｎの次のフレームｎ＋１においては、領域推定範囲１０１のうち、右目７２を含む図中左側半分の領域１０２がボール８１で隠されているため、フレームｎの追尾点７１の動きを、次のフレームｎ＋１において推定することができない。そこで、このような場合においては、時間的に前のフレームｎ−１で乗り換え候補として予め用意されていた領域指定範囲１０１内（右目７２を含む剛体として
の顔７４内）の点の中から１つの点（例えば、顔７４に含まれる左目７３（正確には、その中の１つの画素））が選択され、その点がフレームｎ＋１における、新たな追尾点とされる。
【００８２】
次に、図１２のフローチャートを参照して、図５のステップＳ１１の通常処理に続いて行われる、ステップＳ１２の例外処理の詳細について説明する。この処理は、上述したように、図９のステップＳ２４において追尾点の動きを推定することが不可能と判定され、さらにステップＳ２８において追尾点を乗り換える乗り換え候補が選択できなかったと判定された場合に実行されることになる。
【００８３】
ステップＳ５１において、制御部５９は、例外処理の初期化処理を実行する。ここで、図１３のフローチャートを参照して、例外処理の初期化処理の詳細について説明する。
【００８４】
ステップＳ６１において、制御部５９は、追尾点の動きを推定することが不可能で、かつ、追尾点を乗り換える乗り換え候補が選択できなかった際にシーンチェンジが起きていたか否かを判定する。シーンチェンジ検出部５３は、動き推定部５２の推定結果に基づいてシーンチェンジがあったか否かを常に監視しており、制御部５９は、そのシーンチェンジ検出部５３の検出結果に基づいて、ステップＳ６１の判定処理を実行する。シーンチェンジ検出部５３の具体的処理については、図２４と図２５を参照して後述する。
【００８５】
シーンチェンジが起きている場合、制御部５９は、追尾ができなくなった理由がシーンチェンジが発生したことによるものと推定して、ステップＳ６２においてモードをシーンチェンジに設定する。これに対して、ステップＳ６１においてシーンチェンジが発生していないと判定された場合には、制御部５９は、ステップＳ６３においてモードをその他のモードに設定する。
【００８６】
ステップＳ６２またはステップＳ６３の処理の後、ステップＳ６４においてテンプレートマッチング部５１は、時間的に最も古いテンプレートを選択する処理を実行する。具体的には、図１４に示されるように、例えばフレームｎからフレームｎ＋１に移行するとき、例外処理が実行されるものとすると、フレームｎ−ｍ＋１からフレームｎに関して生成され、テンプレート保持部５８に保持されているｍ個のフレームのテンプレートの中から、時間的に最も古いテンプレートであるフレームｎ−ｍ＋１に関して生成されたテンプレートが選択される。
【００８７】
このように例外処理への移行直前のテンプレート（図１４の例の場合フレームｎに関して生成されたテンプレート）を用いずに、時間的に少し前のテンプレートを選択するのは、次のような理由からである。つまり、追尾対象のオクルージョンなどで例外処理への移行が発生した場合には、移行の直前には追尾対象が既にかなり隠れており、その時点のテンプレートでは、追尾対象を充分に大きく捉えることができない可能性が高いからである。従って、このように時間的に若干前のフレームにおけるテンプレートを選択することで、確実な追尾が可能となる。
【００８８】
図１３の説明に戻る。ステップＳ６５において、テンプレートマッチング部５１は、テンプレート探索範囲を設定する処理を実行する。テンプレート探索範囲は、例えば、例外処理に移行する直前の追尾点の位置がテンプレート探索範囲の中心となるように設定される。
【００８９】
すなわち、図１５に示されるように、フレームｎにおいて被写体の顔７４の右目７２が追尾点７１として指定されている場合において、図中左方向からボール８１が飛んできて、フレームｎ＋１において追尾点７１を含む顔７４が隠れ、フレームｎ＋２において、再び追尾点７１が現れる場合を想定する。この場合において、テンプレート範囲１１１に含まれる追尾点７１を中心とする領域がテンプレート探索範囲１１２として設定される。
【００９０】
ステップＳ６６において、テンプレートマッチング部５１は、例外処理への移行後の経過フレーム数およびシーンチェンジ数を０にリセットする。このフレーム数とシーンチェンジ数は、後述する図１２のステップＳ５５における継続判定処理（図１６のステップＳ７１，Ｓ７３，Ｓ７５，Ｓ７７）において使用される。
【００９１】
以上のようにして、例外処理の初期化処理が終了した後、図１２のステップＳ５２において、制御部５９は次のフレームの画像の入力を待機する処理を実行する。ステップＳ５３において、テンプレートマッチング部５１は、テンプレート探索範囲内においてテンプレートマッチング処理を行う。
【００９２】
ステップＳ５４においてテンプレートマッチング部５１は、通常処理への復帰が可能であるか否かを判定する。すなわち、テンプレートマッチング処理により、数フレーム前のテンプレート（図１５のテンプレート範囲１１１内の画素）と、テンプレート探索範囲内のマッチング対象の画素の差分の絶対値和が演算される。
【００９３】
より詳細には、テンプレート範囲１１１内の所定のブロックと、テンプレート探索範囲内の所定のブロックにおけるそれぞれの画素の差分の絶対値和が演算される。ブロックの位置がテンプレート範囲１１１内で順次移動され、各ブロックの差分の絶対値和が加算され、そのテンプレートの位置における値とされる。そして、テンプレートをテンプレート探索範囲内で順次移動させた場合における差分の絶対値和が最も小さくなる位置とその値が検索される。ステップＳ５４において、検索された最小の差分の絶対値和が、予め設定されている所定の閾値と比較される。差分の絶対値和が閾値以下である場合には、テンプレートに含まれている追尾点を含む画像が再び出現したことになるので、通常処理への復帰が可能であると判定され、処理は図５のステップＳ１１の通常処理に戻る。
【００９４】
そして、上述したように、図１０のステップＳ４１において、例外処理からの復帰であると判定され、ステップＳ４４において、差分絶対値和が最小となる位置をテンプレートのマッチした位置として、このマッチした位置とテンプレートに対応して保持してあったテンプレート位置と追尾点領域推定範囲の位置関係から、追尾点と領域推定範囲の設定が行われる。
【００９５】
図１２のステップＳ５４における通常処理への復帰が可能であるか否かの判定は、最小の差分絶対値和をテンプレートのアクティビティで除算して得られる値を閾値と比較することで行うようにしてもよい。この場合におけるアクティビティは、後述する図１７のアクティビティ算出部１２２により、図１８のステップＳ９３において算出された値を用いることができる。
【００９６】
あるいはまた、今回の最小の差分絶対値和を１フレーム前における最小の差分絶対値和で除算することで得られた値を所定の閾値と比較することで、通常処理への復帰が可能であるか否かを判定するようにしてもよい。この場合、アクティビティの計算が不要となる。すなわち、ステップＳ５４では、テンプレートとテンプレート探索範囲の相関が演算され、相関値と閾値の比較に基づいて判定が行われる。
【００９７】
ステップＳ５４において、通常処理への復帰が可能ではないと判定された場合、ステップＳ５５に進み、継続判定処理が実行される。継続判定処理の詳細は、図１６のフローチャートを参照して後述するが、この処理により、例外処理が継続可能であるか否かの判定が行われる。
【００９８】
ステップＳ５６において、制御部５９は、ステップＳ５５の継続判定処理による例外処理での追尾点の追尾が継続可能であるか否かの継続判定結果に基づいて（後述する図１６のステップＳ７６，Ｓ７８で設定されたフラグに基づいて）判定する。例外処理での追尾点の追尾処理が継続可能であると判定された場合、処理はステップＳ５２に戻り、それ以降の処理が繰り返し実行される。すなわち、追尾点が再び出現するまで待機する処理が繰り返し実行される。
【００９９】
これに対して、ステップＳ５６において、例外処理での追尾点の追尾処理が継続可能ではないと判定された場合（後述する図１６のステップＳ７５の処理で追尾点が消失した後の経過フレーム数が閾値THfr以上と判定されるか、または、ステップＳ７７の処理でシーンチェンジ数が閾値THsc以上と判定された場合）、もはや例外処理は不可能であるとして、追尾処理は終了される。なお、追尾処理を終了するのではなく、保持しておいた追尾点を用いて再度通常処理に戻るようにすることも考えられる。この場合の処理については、図３６のフローチャートを参照して後述する。
【０１００】
次に、図１６のフローチャートを参照して、図１２のステップＳ５５における継続判定処理の詳細について説明する。
【０１０１】
ステップＳ７１において、制御部５９は、変数としての経過フレーム数に１を加算する処理を実行する。経過フレーム数は、図１２のステップＳ５１の例外処理の初期化処理（図１３のステップＳ６６）において、予め０にリセットされている。
【０１０２】
次にステップＳ７２において、制御部５９は、シーンチェンジがあるか否かを判定する。シーンチェンジがあるか否かは、シーンチェンジ検出部５３が、常にその検出処理を実行しており、その検出結果に基づいて判定が可能である。シーンチェンジがあると判定された場合にはステップＳ７３に進み、制御部５９は、変数としてのシーンチェンジ数に１を加算する。このシーンチェンジ数も、図１３のステップＳ６６の初期化処理において０にリセットされている。通常処理から例外処理への移行時にシーンチェンジが発生していないと判定された場合には、ステップＳ７３の処理はスキップされる。
【０１０３】
次に、ステップＳ７４において、制御部５９は、現在設定されているモードがシーンチェンジであるか否かを判定する。このモードは、図１３のステップＳ６２またはＳ６３において設定されたものである。現在設定されているモードがシーンチェンジであると判定された場合にはステップＳ７７に進み、制御部５９は、シーンチェンジ数が予め設定されている閾値THscより小さいか否かを判定する。制御部５９は、ステップＳ７７において、シーンチェンジ数が閾値THscより小さいと判定した場合にはステップＳ７６に進み、継続可のフラグを設定し、シーンチェンジ数が閾値THsc以上であると判定した場合にはステップＳ７８に進み、継続不可のフラグを設定する。
【０１０４】
一方、ステップＳ７４において、モードがシーンチェンジではないと判定された場合（モードがその他であると判定された場合）、ステップＳ７５に進み、制御部５９は、経過フレーム数が閾値THfrより小さいか否かを判定する。この経過フレーム数も、図１３の例外処理の初期化処理のステップＳ６６において、予め０にリセットされている。制御部５９は、ステップＳ７５において、経過フレーム数が閾値THfrより小さいと判定された場合にはステップＳ７６に進み、継続可のフラグを設定し、経過フレーム数が閾値THfr以上であると判定された場合にはステップＳ７８に進み、継続不可のフラグを設定する。
【０１０５】
このように、テンプレートマッチング処理時におけるシーンチェンジ数が閾値THsc以上になるか、または経過フレーム数が閾値THfr以上になった場合には、それ以上の例外処理は不可能とされる。
【０１０６】
なお、モードがその他である場合には、シーンチェンジ数が０であるという条件も加えて、継続が可能であるか否かを判定するようにしてもよい。
【０１０７】
以上においては、画像のフレームを処理単位とし、すべてのフレームを用いることを前提としたが、フィールド単位で処理したり、すべてのフレームまたはフィールドを利用するのではなく、所定の間隔で間引いて抽出されたフレームまたはフィールドを用いるようにすることも可能である。
【０１０８】
次に、図１７を参照して、図４の動き推定部５２の構成例について説明する。図１７に示されるように、評価値算出部１２１、アクティビティ算出部１２２、および動きベクトル検出部１２３には、入力画像が供給されている。
【０１０９】
評価値算出部１２１は、動きベクトルにより対応付けられる両対象の一致度に関する評価値を算出し、正規化処理部１２５に供給する。アクティビティ算出部１２２は、入力画像のアクティビティを算出し、閾値判定部１２４と正規化処理部１２５に供給する。動きベクトル検出部１２３は、入力画像から動きベクトルを検出し、評価値算出部１２１と統合処理部１２６に供給する。
【０１１０】
閾値判定部１２４は、アクティビティ算出部１２２より供給されたアクティビティを所定の閾値と比較し、その判定結果を統合処理部１２６に供給する。正規化処理部１２５は、評価値算出部１２１より供給された評価値を、アクティビティ算出部１２２より供給されたアクティビティに基づいて正規化し、得られた値を統合処理部１２６に供給する。
【０１１１】
統合処理部１２６は、正規化処理部１２５から供給された正規化情報と、閾値判定部１２４より供給された判定結果に基づいて、動きベクトルの確度を演算し、得られた確度を動きベクトル検出部１２３より供給された動きベクトルとともに出力する。
【０１１２】
次に、図１８のフローチャートを参照して、動き推定部５２が実行する動き推定処理について説明する。動きベクトルは、点に対するものとして求められているが、その確度は、動きベクトルにより対応付けられる２つの点の近傍の、例えば点を中心とする、小ブロックの画像データを用いて計算される。
【０１１３】
ステップＳ９１において、動きベクトル検出部１２３は、入力画像から動きベクトルを検出する。この検出には、例えばブロックマッチング方式や勾配法が用いられる。検出された動きベクトルは、評価値算出部１２１と統合処理部１２６に供給される。
【０１１４】
ステップＳ９２において、評価値算出部１２１は、ステップＳ９１の処理で検出された動きベクトルにより対応付けられる両対象の一致度に関する評価値を算出する。具体的には、例えば、動きベクトルで対応付けられる２つの点を中心とする２つのブロックの画素値の差分絶対値和が算出される。すなわち、ステップＳ９１の処理で動きベクトル検出部１２３により検出された動きベクトルＶ（ｖｘ，ｖｙ）と、それに基づく時間的に前のフレームの画像Ｆｉ上の点Ｐ（Ｘｐ，Ｙｐ）、並びに時間的に後のフレームの画像Ｆｊ上の点Ｑ（Ｘｑ，Ｙｑ）の関係は次式（１）で表される。
【０１１５】
【数１】
2009010453.tif 000003
【０１１６】
評価値算出部１２１は点Ｐを中心とするブロックと、点Ｑを中心とするブロックについて、次式（２）に基づいて評価値Ｅｖａｌ（Ｐ，Ｑ，ｉ，ｊ）を演算する。
【０１１７】
【数２】
2009010453.tif 000004
【０１１８】
各ブロックは、１辺が２Ｌ＋１画素の正方形とされている。上記式（２）における総和ΣΣは、ｘが−ＬからＬについて、ｙが−ＬからＬについて、対応する画素同士で行われる。従って、例えば、Ｌ＝２である場合、９個の差分が得られ、その絶対値の総和が演算される。評価値は、その値が０に近づくほど、２つのブロックがよく一致していることを表している。
【０１１９】
評価値算出部１２１は、算出した評価値を正規化処理部１２５に供給する。
【０１２０】
ステップＳ９３において、アクティビティ算出部１２２は、入力画像からアクティビティを算出する。アクティビティは、画像の複雑さを表す特徴量であり、図１９に示されるように、各画素毎に注目画素Ｙ（ｘ，ｙ）と、それに隣接する８画素Ｙ（ｘ＋ｉ，ｙ＋ｊ）との差分絶対値和の平均値が、注目画素位置のアクティビティActivity(x,y)として次式（３）に基づいて演算される。
【０１２１】
【数３】
2009010453.tif 000005
【０１２２】
図１９の例の場合、３×３画素のうち、中央に位置する注目画素Ｙ（ｘ，ｙ）の値は１１０であり、それに隣接する８個の画素の値は、それぞれ８０，７０，７５，１００，１００，１００，８０，８０であるから、アクティビティActivity(x,y)は次式で表される。
【０１２３】
Activity(x,y)  ＝｛｜８０−１１０｜＋｜７０−１１０｜＋｜７５−１１０｜＋｜１００−１１０｜＋｜１００−１１０｜＋｜１００−１１０｜＋｜８０−１１０｜＋｜８０−１１０｜｝／８  ＝２４．３７５となる。
【０１２４】
同様の処理が、そのフレームのすべての画素について実行される。
【０１２５】
ブロック単位で動きベクトル確度を算出するため、次式（４）で表されるブロック内の全画素のアクティビティの総和が、そのブロックのアクティビティ（ブロックアクティビティ）Blockactivity(i,j)と定義される。
【０１２６】
【数４】
2009010453.tif 000006
【０１２７】
なお、アクティビティとしては、この他、分散値、ダイナミックレンジなどとすることも可能である。
【０１２８】
ステップＳ９４において、閾値判定部１２４は、ステップＳ９３の処理で算出されたブロックアクティビティを予め設定されている所定の閾値と比較する。そして、入力されたブロックアクティビティが閾値より大きいか否かを表すフラグを統合処理部１２６に出力する。
【０１２９】
具体的には、実験の結果、ブロックアクティビティと評価値は、動きベクトルをパラメータとして、図２０に示される関係を有する。図２０において、横軸はブロックアクティビティBlockactivity(i,j)を表し、縦軸は評価値Evalを表している。
【０１３０】
動きが正しく検出されている場合（正しい動きベクトルが与えられている場合）、そのブロックアクティビティと評価値の値は、曲線１３１より図中下側の領域Ｒ１に分布する。これに対して誤った動き（不正解の動きベクトル）が与えられた場合、そのブロックアクティビティと評価値の値は、曲線１３２より、図中左側の領域Ｒ２に分布する。なお、曲線１３２より上側の領域Ｒ２以外の領域と曲線１３１より下側の領域Ｒ１以外の領域には殆ど分布がない。曲線１３１と曲線１３２は、点Ｐにおいて交差しており、この点Ｐにおけるブロックアクティビティの値が閾値THaとされる。閾値THaは、ブロックアクティビティの値がそれより小さい場合には、対応する動きベクトルが正しくない可能性があることを意味する（この点については後に詳述する）。閾値判定部１２４は、アクティビティ算出部１２２より入力されたブロックアクティビティの値が、この閾値THaより大きいか否かを表すフラグを統合処理部１２６に出力する。
【０１３１】
ステップＳ９５において、正規化処理部１２５は、ステップＳ９２の処理で算出された評価値を、ステップＳ９３の処理で算出されたアクティビティに基づいて正規化する。具体的には、正規化処理部１２５は、次式（５）に従って動きベクトル確度VCを演算する。
【０１３２】
【数５】
2009010453.tif 000007
【０１３３】
但し、動きベクトル確度VCの値が０未満となる場合にはその値を０に置き換える。動きベクトル確度VCのうち、評価値をブロックアクティビティで割り算して得られた値は、その値によって規定される図２０のグラフ上の位置が、原点Ｏと点Ｐを結ぶ傾きが１の直線１３３より、図中下側の領域内であるのか、図中上側の領域内であるのかを表す。すなわち、直線１３３の傾きは１であり、評価値をブロックアクティビティで割り算して得られた値が１より大きければ、その値に対応する点は、直線１３３の上側の領域に分布する点であることを意味する。そしてこの値を１から減算して得られる動きベクトル確度VCは、その値が小さい程、対応する点が領域Ｒ２に分布する可能性が高いことを意味する。
【０１３４】
これに対して、評価値をブロックアクティビティで割り算して得られた値が１より小さければ、その値に対応する点は、直線１３３の図中下側の領域に分布することを意味する。そして、そのときの動きベクトル確度VCは、その値が大きい程（０に近い程）、対応する点が領域Ｒ１に分布することを意味する。正規化処理部１２５は、このようにして演算して得られた動きベクトル確度VCを統合処理部１２６に出力する。
【０１３５】
ステップＳ９６において、統合処理部１２６は、統合処理を実行する。この統合処理の詳細は、図２１のフローチャートに示されている。
【０１３６】
ステップＳ１０１において、統合処理部１２６は、ブロックアクティビティが閾値THa 以下か否かを判定する。この判定は、閾値判定部１２４より供給されたフラグに基づいて行われる。統合処理部１２６は、ブロックアクティビティが閾値THa以下であると判定した場合、ステップＳ１０２において、正規化処理部１２５が算出した動きベクトル確度VCの値を０に設定する。ステップＳ１０１において、アクティビティの値が閾値THaより大きいと判定された場合には、ステップＳ１０２の処理はスキップされ、正規化処理部１２５で生成された動きベクトル確度VCの値が、そのまま動きベクトルとともに出力される。
【０１３７】
これは、正規化処理部１２５において演算された動きベクトルの確度VCの値が正であったとしても、ブロックアクティビティの値が閾値THaより小さい場合には、正しい動きベクトルが得られていない可能性があるからである。すなわち、図２０に示されるように、原点Ｏと点Ｐの間においては、曲線１３２が、曲線１３１より図中下側に（直線１３３より下側に）突出することになる。ブロックアクティビティの値が閾値Thaより小さい区間であって、曲線１３１と曲線１３２において囲まれる領域Ｒ３においては、評価値をブロックアクティビティで割り算して得られる値は、領域Ｒ１とＲ２の両方に分布し、正しい動きベクトルが得られていない可能性が高い。
【０１３８】
そこで、このような分布状態である場合には、動きベクトルの確度は低いものとして処理するようにする。このため、ステップＳ１０２において、動きベクトル確度VCは、その値が正であったとしても、閾値Thaより小さい場合には、０に設定される。このようにすることで、動きベクトル確度VCの値が正である場合には、正しい動きベクトルが得られている場合であることを確実に表すことが可能となる。しかも、動きベクトル確度VCの値が大きい程、正しい動きベクトルが得られている確率が高くなる（分布が領域Ｒ１に含まれる確率が高くなる）。
【０１３９】
このことは、一般的に、輝度変化が少ない領域（アクティビティが小さい領域）では信頼性が高い動きベクトルを検出することが困難であるとの経験上の法則とも一致する。
【０１４０】
次に、図２２を参照して、図４の背景動き推定部５４の構成例について説明する。図２２に示されるように、背景動き推定部５４は、頻度分布算出部１４１と背景動き決定部１４２により構成されている。
【０１４１】
頻度分布算出部１４１は、動きベクトルの頻度分布を算出する。ただし、この頻度には、図４の動き推定部５２より供給される動きベクトル確度VC を用いることで、確からしい動きに重みが与えられるように、重み付けが行われる。背景動き決定部１４２は、頻度分布算出部１４１により算出された頻度分布に基づいて、頻度が最大となる動きを背景動きとして決定する処理を行い、図４の領域推定関連処理部５５へ出力する。
【０１４２】
図２３のフローチャートを参照して、背景動き推定部５４が実行する背景動き推定処理について説明する。
【０１４３】
ステップＳ１１１において、頻度分布算出部１４１は、動き頻度分布を算出する。具体的には、頻度分布算出部１４１は、背景動きの候補としての動きベクトルのｘ座標とｙ座標がそれぞれ基準点から±１６画素分の範囲で表されるとすると、１０８９個（＝１６×２＋１）×（１６×２＋１））の箱、すなわち動きベクトルがとり得る値に対応する座標分の箱を用意し、動きベクトルが発生した場合、その動きベクトルに対応する座標に１を加算する。このようにすることで、動きベクトルの頻度分布を算出することができる。
【０１４４】
ただし、１個の動きベクトルが発生した場合、１を加算していくと、確度が低い動きベクトルの発生頻度が多い場合、その確実性が低い動きベクトルが背景動きとして決定されてしまう恐れがある。そこで、頻度分布算出部１４１は、動きベクトルが発生した場合、その動きベクトルに対応する箱（座標）に、値１を加算するのではなく、値１に動きベクトル確度VC を乗算した値（＝動きベクトル確度VC の値）を加算する。動きベクトル確度VC の値は、０から１の間の値として正規化されており、その値が１に近いほど確度が高い値である。従って、このようにして得られた頻度分布は、動きベクトルをその確度に基づいて重み付けした頻度分布となる。これにより、確度の低い動きが背景動きとして決定される恐れが少なくなる。
【０１４５】
次に、ステップＳ１１２において、頻度分布算出部１４１は、動き頻度分布を算出する処理を全ブロックについて終了したか否かを判定する。まだ処理していないブロックが存在すると判定された場合、ステップＳ１１１に戻り、次のブロックについて動き頻度分布が算出される。
【０１４６】
以上のようにして、全画面に対して動き頻度分布算出処理が行われ、ステップＳ１１２において、全ブロックの処理が終了したと判定された場合、ステップＳ１１３に進み、背景動き決定部１４２は、頻度分布の最大値を検索する処理を実行する。すなわち、背景動き決定部１４２は、頻度分布算出部１４１により算出された頻度の中から最大の頻度のものを選択し、その頻度に対応する動きベクトルを背景動きの動きベクトルとして決定する。この背景動きの動きベクトルは、図４の領域推定関連処理部５５に供給され、全画面動きと背景動きが一致するか否かの判定処理に用いられる。
【０１４７】
次に、図２４を参照して、図４のシーンチェンジ検出部５３の構成例について説明する。図２４に示されるように、シーンチェンジ検出部５３は、動きベクトル確度平均算出部１５１と閾値判定部１５２により構成されている。
【０１４８】
動きベクトル確度平均算出部１５１は、図４の動き推定部５２より供給された動きベクトル確度VC の全画面の平均値を算出し、閾値判定部１５２に出力する。閾値判定部１５２は、動きベクトル確度平均算出部１５１より供給された平均値を、予め定められている閾値と比較し、その比較結果に基づいて、シーンチェンジであるか否かを判定し、判定結果を図４の制御部５９に出力する。
【０１４９】
図２５のフローチャートを参照して、シーンチェンジ検出部５３が実行するシーンチェンジ検出処理について説明する。
【０１５０】
ステップＳ１２１において、動きベクトル確度平均算出部１５１は、動きベクトル確度の総和を算出する。具体的には、動きベクトル確度平均算出部１５１は、動き推定部５２の統合処理部１２６より出力された各ブロック毎に算出された動きベクトル確度VCの値を加算する処理を実行する。
【０１５１】
ステップＳ１２２において、動きベクトル確度平均算出部１５１は、動きベクトル確度VCの総和を算出する処理が全ブロックについて終了したか否かを判定し、まだ終了していない場合には、ステップＳ１２１の処理を繰り返す。この処理を繰り返すことで、１画面分の各ブロックの動きベクトル確度VCの総和が算出される。
【０１５２】
ステップＳ１２２において、１画面全部についての動きベクトル確度VCの総和の算出処理が終了したと判定された場合、ステップＳ１２３に進み、動きベクトル確度平均算出部１５１は、動きベクトル確度VCの平均値を算出する処理を実行する。具体的には、ステップＳ１２１の処理で算出された１画面分の動きベクトル確度VCの総和を、足し込まれたブロック数で除算して得られた値が平均値として算出される。
【０１５３】
ステップＳ１２４において、閾値判定部１５２は、ステップＳ１２３の処理で動きベクトル確度平均算出部１５１により算出された動きベクトル確度VCの平均値を、予め設定されている閾値と比較し、閾値より小さいか否かを判定する。一般的に、動画中の時刻が異なる２フレーム間でシーンチェンジが発生すると、対応する画像が存在しないため、動きベクトルを算出しても、その動きベクトルは確からしくないことになる。そこで、閾値判定部１５２は、動きベクトル確度VCの平均値が閾値より小さいと判定した場合にはステップＳ１２５に進み、シーンチェンジフラグをオンし、閾値以上であると判定した場合にはステップＳ１２６に進み、シーンチェンジフラグをオフにする。シーンチェンジフラグのオンは、シーンチェンジがあったことを表し、シーンチェンジフラグのオフは、シーンチェンジが無いことを表す。
【０１５４】
このシーンチェンジフラグは、制御部５９へ供給され、図１３のステップＳ６１におけるシーンチェンジの有無の判定、並びに図１６のステップＳ７２のシーンチェンジの有無の判定に利用される。
【０１５５】
以上のように、図１のオブジェクト追尾部２３を構成することにより、追尾すべきオブジェクト４１（図３）が回転したり、オクルージョンが発生したり、あるいはシーンチェンジにより、オブジェクト４１の追尾点４１Ａが一時的に表示されなくなるような場合でも、画像の中で移動するオブジェクト４１の追尾点４１Ａを正確に追尾することができる。
【０１５６】
また、このようにして追尾されるオブジェクト４１の追尾点４１Ａの位置情報が、図１のオブジェクト追尾部２３による追尾結果として追尾位置補正部２４に出力される。すなわち、ユーザは、オブジェクト追尾部２３により追尾処理が行われたにもかかわらず所望の追尾結果が得られない場合、指示入力部２９を介して追尾位置の補正を指示することにより、その指示を受けた追尾位置補正部２４は、オブジェクト追尾部２３から供給された追尾結果としての位置情報を補正することができる。
【０１５７】
次に、図１の追尾位置補正部２４の詳細な構成例と、その動作について説明する。
【０１５８】
図２６は、追尾位置補正部２４の機能的構成例を示すブロック図である。図２６に示されるように、追尾位置補正部２４は、補正値算出部１６１、補正値反映部１６２、および微調整部１６３により構成されている。
【０１５９】
補正値算出部１６１は、指示入力部２９を介してユーザより追尾位置の補正が指示された場合、その補正値を算出する。例えば、指示入力部２９が上、下、右、左方向を指示することが可能な十字方向ボタンで構成されており、それらのボタンの１回の押下に応じて所定の補正量が予め設定されている場合、ボタンの押下回数に応じてユーザの補正値Δｕが算出される。また例えば、指示入力部２９が所定方向を指示することが可能なレバーで構成されており、レバーの傾斜角度に応じて所定の補正量が予め設定されている場合、レバーの倒し具合に応じてユーザの補正値Δｕが算出される。
【０１６０】
補正値反映部１６２は、オブジェクト追尾部２３から供給された追尾結果としての位置情報に、補正値算出部１６１から供給されたユーザの補正値Δｕを反映する。
【０１６１】
ここでは、ブロックマッチング方式などで算出された追尾対象としての追尾点に、ユーザの補正値Δｕを反映する例について説明する。
【０１６２】
図２７に示されるように、ブロックマッチング方式によれば、現フレームｔ＝ｔと次のフレームｔ＝ｔ＋１との間の差分ベクトルΔｘが算出される。上述したようにしてオブジェクト追尾部２３により通常の追尾処理が行われる場合には、次式（６）に基づいて、次のフレームｔ＝ｔ＋１の追尾点ｘ（ｔ＋１）が算出される。ｘ（ｔ）は現フレームｔ＝ｔの追尾点である。
【０１６３】
【数６】
2009010453.tif 000008
【０１６４】
例えば、算出された差分ベクトルΔｘを考慮せず、ユーザの補正値Δｕのみを反映させる第１の方法の場合、次式（７）に基づいて、次のフレームｔ＝ｔ＋１の追尾点ｘ（ｔ＋１）が算出される。
【０１６５】
【数７】
2009010453.tif 000009
【０１６６】
図２８は、第１の方法によりユーザの補正値を反映させる例を示している。図２８に示されるように、位置ｘ（ｔ）から位置ｘ（ｔ＋２）の間に行われたユーザによる補正が終了した後、補正後の追尾点はｘ（ｔ＋３）の位置とされる。このように、ユーザによる補正値Δｕは、画像の座標系に対する相対的な位置として追尾点に反映される。
【０１６７】
また例えば、算出された差分ベクトルΔｘを用いた追尾点と、ユーザの補正値Δｕによる追尾点とを別々に保持し、ユーザによる補正が終了した時点でブロックマッチング処理に反映させる第２の方法の場合、次式（８）に基づいて、補正開始時の追尾点ｕ（ｔ）が算出される。
【０１６８】
【数８】
2009010453.tif 000010
【０１６９】
また次式（９）に基づいて、補正中の追尾点が算出される。
【０１７０】
【数９】
2009010453.tif 000011
【０１７１】
さらに次式（１０）に基づいて、補正終了時の追尾点ｘ（ｔ＋１）が算出される。
【０１７２】
【数１０】
2009010453.tif 000012
【０１７３】
この場合、補正中に出力される追尾点はｘ'とされるが、オブジェクト追尾部２３の内部におけるブロックマッチング処理ではｘを用いることがポイントである。
【０１７４】
図２９は、第２の方法によりユーザの補正値を反映させる例を示している。図２９に示されるように、位置ｘ（ｔ）から位置ｘ（ｔ＋２）の間に行われたユーザによる補正が終了した後、補正後の追尾点はｘ（ｔ＋３）＋ｕ（ｔ＋３）の位置とされ、この位置が改めてｘ（ｔ＋３）となる。このように、ユーザによる補正値Δｕは、追尾対象に対する相対的な位置として反映される。
【０１７５】
なお、指示入力部２９に補正量変更ボタンを設けることにより、例えば、ユーザが、補正量変更ボタンを押下しつつ十字方向ボタンやレバーを操作することで、予め設定された補正量を大きく変更することができる。これにより、まず補正量変更ボタンを押下しつつ十字方向ボタンやレバーを操作して大雑把に追尾位置を補正し、その後、補正量変更ボタンを離して十字方向ボタンやレバーを操作して細部の追尾位置を補正することで、短時間で所望の追尾点に補正することが可能である。これは、画像サイズが大きい場合に特に有効である。
【０１７６】
図２６の説明に戻る。微調整部１６３は、補正値反映部１６２で第１の方法または第２の方法によりユーザの補正値Δｕが反映された追尾点をさらに微調整する。
【０１７７】
ここでは、追尾対象としてのオブジェクトの重心位置に追尾点を微調整する例について説明する。
【０１７８】
例えば、図３０に示されるように、位置ｘ（ｔ）から位置ｘ'（ｔ＋１）へ、上述した第１の方法を用いてユーザによる補正がなされた場合、補正後の位置ｘ'（ｔ＋１）が属しているオブジェクトの範囲２０１が算出され、そのオブジェクトの重心ｘ（ｔ＋１）へ追尾点が微調整される。以後、微調整された追尾点ｘ（ｔ＋１）の位置から追尾処理が継続される。
【０１７９】
ここで、色という画素値（色情報）に基づいて追尾点が属するオブジェクトの範囲を求め、その重心を算出する方法について説明する。
【０１８０】
（１）まず、位置ｘ'（ｔ＋１）のＲＧＢ色（ｒ'，ｇ'，ｂ'）を算出する。なお、表色系はＲＧＢでなくてもよい。
【０１８１】
（２）ＲＧＢ色が算出された位置ｘ'（ｔ＋１）の周辺画素について、位置ｘ'（ｔ＋１の色に近い色を持つ画素を同じオブジェクトに属していると判断する。例えば、次式（１１）で表されるΔｃが所定の値より小さい画素が位置ｘ'（ｔ＋１）と同じオブジェクトに属していると判断される。ｒ、ｇ、ｂは各周辺画素の色である。
【０１８２】
【数１１】
2009010453.tif 000013
【０１８３】
（３）位置ｘ'（ｔ＋１）と同じオブジェクトに属している画素の位置から、次式（１２）に基づいて、オブジェクトの重心ｘ（ｔ＋１）を算出する。Ｘｉは、同じオブジェクトに属している各画素の位置であり、ｎは、同じオブジェクトに属している画素の総数である。
【０１８４】
【数１２】
2009010453.tif 000014
【０１８５】
以上のようにして、色情報を用いる方法で追尾点が属するオブジェクトの範囲を求め、その重心位置を算出することにより、追尾点を、追尾点が属するオブジェクトの重心位置に微調整することが可能である。
【０１８６】
なお、このように色情報を用いる方法に限らず、例えば、動きベクトルや輝度値などをもとにしてオブジェクトの範囲を求め、その重心位置を算出するようにしてもよい。例えば、動きベクトルを用いる場合、位置ｘ'（ｔ＋１）の動きベクトルと同じまたは似ているベクトルを持つものを同じオブジェクトに属していると判断し、次のようにしてオブジェクトの範囲を求め、その重心を算出することができる。
【０１８７】
（１）動きベクトル検出
図３１に示されるように、追尾点２１１を中心とした領域２１２内で、サンプリング間隔（ｓｘ，ｓｙ）毎に動きベクトルを検出する。領域２１２の大きさは、サンプル数ｍ，ｎとして、ｓｘ・ｍ×ｓｙ・ｎとなる。動きベクトルの検出には、例えばブロックマッチング方式や勾配法が用いられる。
【０１８８】
（２）動きベクトルの頻度分布算出
例えば、処理範囲内の動きの候補を−１６＜＝ｖｘ＜＝１６、−１６＜＝ｖｙ＜＝１６の整数値（ｖｘは水平動き、ｖｙは垂直動き）で表すとすると、３３（＝１６×２＋１）画素×３３画素＝１０８９個の箱、すなわち動きベクトルがとり得る値に対応する座標分の箱を用意し、あるサンプル点で（ｖｘ，ｖｙ）＝（２，２）のとき、（２，２）の箱に１を加算する。この処理を処理範囲内の全サンプル点に対して行うことで、動きベクトルの頻度分布を算出することができる。
【０１８９】
（３）追尾対象のサンプル点抽出
図３２に示されるように、領域２１２内で多数を占める動き（図３２の例においては、左斜め下方向の動き）と類似する動きを示すサンプル点を追尾対象上の点として抽出する。
【０１９０】
（４）サンプル点の重心算出
領域２１２内において追尾対象上のサンプル点であるか否かを表すフラグをflag（ｉ，ｊ）（１＜＝i＜＝ｍ，１＜＝j ＜＝n）として設定する。（３）で追尾対象上のサンプル点として抽出された場合、１に設定され、（３）で追尾対象上のサンプル点として抽出されていない場合、０に設定される。そして、サンプル点の重心Ｇ（ｘ，ｙ）は、次式（１３）に基づいて、サンプル点Ｐ（ｘ，ｙ）として算出される。
【０１９１】
【数１３】
2009010453.tif 000015
【０１９２】
以上のようにして、動きベクトルを用いる方法で追尾点が属するオブジェクトの範囲を求め、その重心位置を算出することも可能である。ユーザによる補正に加え、微調整された先の追尾点は、外乱に対してロバスト性の高い、つまり追尾処理しやすいことを特徴としている。
【０１９３】
上述したような追尾補正処理について、図３３のフローチャートを参照して説明する。
【０１９４】
ステップＳ１３１において、制御部５９は、ユーザにより指示入力部２９が用いられ、追尾対象の位置が指定され追尾開始が指示されたか否かを判定し、追尾開始が指示されるまで待機する。そして、ステップＳ１３１において、追尾対象の位置が指定され追尾開始が指示されたと判定された場合、処理はステップＳ１３２に進む。
【０１９５】
ステップＳ１３２において、制御部５９は、次のフレームの画像の入力を待機するように各部を制御する。ステップＳ１３３において、追尾点決定部５７は、次のフレームにおける対象位置を算出する。例えば、図２７に示したように、ブロックマッチング方式によれば、現フレームと次のフレームとの間の差分ベクトルΔｘが算出され、上記式（６）に基づいて、次のフレームの対象位置である追尾点が算出される。
【０１９６】
ステップＳ１３４において、制御部２７は、指示入力部２９を介してユーザにより位置補正が指示されたか否かを判定し、位置補正が指示されていないと判定した場合、ステップＳ１３５に進む。ステップＳ１３５において、追尾点決定部５７は、ステップＳ１３３の処理で算出した対象位置をそのまま次のフレームの対象位置とする。
【０１９７】
一方、ステップＳ１３４において、ユーザにより位置補正が指示されたと判定された場合、ステップＳ１３６に進み、制御部５９は、追尾点決定部５７からの追尾結果を追尾位置補正部２４に出力する。追尾位置補正部２４は、入力された追尾結果にユーザによる補正値を反映したものを次のフレームの対象位置とする。
【０１９８】
具体的には、補正算出部１６１により、ユーザからの指示入力部２９の操作量（例えば、ボタンの押下回数やレバーの倒し具合）に応じた補正値が算出される。そして、補正値反映部１６２により、図２８を参照して説明した第１の方法、あるいは、図２９を参照して説明した第２の方法で、追尾結果にユーザの補正値が反映される。さらに、微調整部１６３により、追尾対象としてのオブジェクトの重心位置に追尾点が微調整される。
【０１９９】
ステップＳ１３７において、制御部２７は、ステップＳ１３５またはＳ１３６の処理による追尾結果に基づいて、画像ディスプレイ２５に、撮像部２１により撮像された画像に追尾位置を表すマークなどを重畳して表示させる。
【０２００】
図３４の上側図は、撮像部２１により撮像された入力画像の例を示し、図３４の下側図は、その入力画像の追尾処理が行われた場合の出力画像の例を示している。図３４の上側図には、撮像部２１により撮像された追尾対象となるオブジェクト２２１が示されている。図３４の下側図には、オブジェクト２２１の追尾処理が行われ、オブジェクト２２１の追尾点上にマーク２２１Ａが重畳表示されている。
【０２０１】
図３３の説明に戻る。ステップＳ１３８において、ユーザにより追尾終了が指示されたか否かを判定し、まだ追尾終了が指示されていないと判定した場合、ステップＳ１３２に戻り、上述した処理を繰り返す。そして、ステップＳ１３８において、追尾終了が指示されたと判定された場合、この追尾位置補正処理は終了される。
【０２０２】
このように、追尾処理において、ユーザによる補正に加え、追尾対象の重心位置に微調整されるようにしたので、外乱に対してロバスト性が高くなる。
【０２０３】
ところで、ステップＳ１３７の処理の別例として、制御部２７は、図３５の上側図に示されるように、オブジェクト２２１の追尾点を中心とした入力画像を切り取り、それを図３５の下側図に示されるように拡大したズーム画像として、画像ディスプレイ２５に表示させることもできる。即ち、追尾対象の拡大表示も可能である。
【０２０４】
具体的には例えば、制御部２７等は、追尾対象の拡大表示を行う場合には、図３６の追尾補正処理を実行すればよい。即ち、図３６は、追尾補正処理の一例であって、図３３とは別の例について説明するフローチャートである。
【０２０５】
なお、図３６のステップＳ１５１乃至Ｓ１５６までの処理は、図３３のステップＳ１３１乃至Ｓ１３６までの処理と基本的に同様の処理である。よって、ここではその説明を省略する。そこで、以下、ステップＳ１５７以降の処理の例を説明する。
【０２０６】
ステップＳ１５７において、制御部２７は、補正の状況に応じて拡大率を算出する。なお、拡大率の算出手法の詳細については後述する。
【０２０７】
ステップＳ１５８において、制御部２７は、対象位置を拡大表示して出力する。即ち、制御部２７は、ステップＳ１５５またはＳ１５６の処理（図３３のステップＳ１３５またはＳ１３６と同様の処理）による追尾結果に基づいて、撮像部２１により撮像された画像から、対象位置を含むように切り取った画像（図３５の例では、上側図の点線枠内の画像）を、ステップＳ１５７の処理で算出された拡大率で拡大して、画像ディスプレイ２５に表示させる。
【０２０８】
これにより、ステップＳ１５８の処理が終了し、処理はステップＳ１５９に進む。なお、ステップＳ１５９以降の処理は、図３３のステップＳ１３８以降の処理と基本的に同様の処理である。よって、ここではその説明を省略する。
【０２０９】
さらに以下、図３６のステップＳ１５７とＳ１５８の処理（以下、拡大表示処理と称する）の詳細について説明していく。
【０２１０】
先ず、拡大表示における対象位置の表示手法の例について説明する。
【０２１１】
例えば上述した図３５の下側図のように、オブジェクト２２１の対象位置である追尾点上にマーク２２１Ａを重畳表示させる手法を採用することができる。
【０２１２】
また例えば、図３７に示されるように、オブジェクト２２１の対象位置である追尾点を示すべく、４つのマーク２２１Ｌ，２２１Ｒ，２２１Ｕ，２２１Ｄを画像の四隅に表示させる手法を採用できる。即ち、水平の２つのマーク２２１Ｌ，２２１Ｒを結ぶ線分と、垂直の２つのマーク２２１Ｕ，２２１Ｄを結ぶ線分との交点が、オブジェクト２２１の対象位置である追尾点を示す。
【０２１３】
なお、拡大表示における対象位置の表示手法は、上述した例に特に限定されないことはいうまでも無い。もっとも、上述した例の様に、画像中の対象位置をユーザが容易に視認できる手法であると好適である。
【０２１４】
次に、拡大率について説明する。
【０２１５】
拡大率は、例えば次式（１４）のように定義される。かかる定義によれば、拡大率の最小値は１になる。
【０２１６】
拡大率  ＝  出力画像の大きさ／切り取った画像の大きさ      ・・・（１４）
【０２１７】
例えば、図３６のステップＳ１５７の処理で拡大率として４が算出された場合、次のステップＳ１５８の処理で、切り取った画像の大きさの４倍のズーム画像が生成されて、画像ディスプレイ２５に表示されることになる。
【０２１８】
この拡大率は、補正の指示をしていない時等に、ユーザが任意の値に設定できるようにしておこくこともできる。
【０２１９】
また、当然ながら、拡大率を固定しておくこともできる。しかしながら、ユーザが補正する際にも常に拡大率が一定であるとすると、オブジェクト２２１の周囲の状況が見えづらくなるときもある。その結果、ユーザにとっては、補正操作がしにくくなってしまうこともある。
【０２２０】
例えば上述した図３５の上側図において、追尾対象であるオブジェクト２２１と、別オブジェクト２２２との相対位置に基づいて、追尾対象であるオブジェクト２２１の位置の補正を行いたいとユーザが所望する場合がある。かかる場合に、図３５の下側図に示されるような拡大表示がなされた場合、別オブジェクト２２２は全く見えなくなる。その結果、ユーザは、別オブジェクト２２２との相対位置を把握できず、補正操作がしにくくなってしまう。
【０２２１】
そこで、制御部２７は、周囲の状況を見やすくしてユーザの補正操作の容易化を支援すべく、補正時に拡大率を自動的に調整することができる。
【０２２２】
ここで、拡大率の自動的な調整とは、ユーザの指示操作を介在せずに、制御部２７が自律的な判断で拡大率を算出し、その拡大率で画像を拡大表示させることをいう。
【０２２３】
換言すると、ユーザが位置を補正しながら拡大率を手動操作で調整するといった手動調整に対する調整が、拡大率の自動的な調整である。即ち、拡大率の調整として、手動調整を採用することもできる。ただし、この場合、ユーザは、拡大率の手動調整を行うのと同時に、複数の別の操作をしなければならない。即ち、ユーザは非常に困難で煩雑な操作をしなければならない。よって、手動調整を採用した場合には、ユーザの補正操作の容易化という目的に反することになる。そこで、本実施の形態では、拡大率の調整として、自動調整を採用して、ユーザの複雑な操作を省力化するようにしているのである。
【０２２４】
以下、自動調整についてさらに詳しく説明していく。
【０２２５】
図３８は、自動調整の基本的な概念を説明する図である。図３８の上側の画像、即ち、時刻taにおいて表示されている画像は、補正がなされていない時の画像を示している。
【０２２６】
その時刻taの後、補正が開始されたとする。即ち、各フレームについて図３６のステップＳ１５４の処理でＹＥＳであると判定されたとする。この場合、制御部２７は、各フレームについてのステップＳ１５７とＳ１５８の拡大表示処理で、拡大率を自動的に小さくしていく。即ち、一連の各画像（各フレームの画像）が拡大率が小さくなりつつ出力されていくことになる。従って、ユーザにとっては、オブジェクト２２１はだんだんと縮小されていく代わりに、周囲の状況がだんだんと見えるようになってくる。例えば、図３８の中央の画像、即ち、時刻tbにおいて表示されている画像が、拡大率が自動的に小さくされ、別オブジェクト２２２等の周囲の状況が見えるようになった画像（所定フレームの画像）の一例を示している。
【０２２７】
その時刻tbの後、補正が終了されたとする。即ち、図３６のステップＳ１５４の処理でＮＯであると判定されるようになったとする。この場合、制御部２７は、それ以降の各フレームについてのステップＳ１５７とＳ１５８の拡大表示処理で、拡大率を自動的に大きくしていき、最終的に元の拡大率まで戻す。即ち、一連の各画像（各フレームの画像）が拡大率が大きくなりつつ出力されていくことになる。従って、ユーザにとっては、今度は、オブジェクト２２１はだんだんと拡大されていき、元の大きさに戻るように見えることになる。例えば、図３８の下側の画像、即ち、時刻tcにおいて表示されている画像が、オブジェクト２２１の大きさが元に戻った画像（拡大率が元に戻った段階の所定フレームの画像）の一例を示している。
【０２２８】
具体的には例えば、拡大率は、図３９に示されるように変化していく。即ち、図３９は、自動調整時の拡大率の時間変化の一例を示している。
【０２２９】
図３９において、横軸は時間軸を示しており、縦軸は拡大率を示している。
【０２３０】
また、拡大率に関して、Zaは、通常時の拡大率、即ち補正なし時の拡大率を示している。Zbは、自動調整時における拡大率の規定値を示している。即ち、拡大率Zbとは、自動的に拡大率を変化させる時の下限値を示している。拡大率Zbは、後述するように可変することも可能であるが、ここでは説明の簡略上、あらかじめ定義された固定値が採用されているとする。
【０２３１】
また、時間に関しては、t0は、ユーザが補正を始めた時刻を示している。t1は、拡大率が規定値に到達する時刻を示している。t2は、ユーザが補正を終えた時刻を示している。t3は、元の拡大率に戻る時刻を示している。
【０２３２】
この場合、制御部２７は、時刻t0乃至t1間の各フレームおよび時刻t2乃至t3間の各フレームについての各ステップＳ１５７の処理として、制御部２７は、例えば次のようにして、各フレームの拡大率をそれぞれ算出することができる。
【０２３３】
例えば、制御部２７は、自動調整の所要時間を定義することで、各フレームの拡大率をそれぞれ算出することができる。
【０２３４】
具体的には例えば、次式（１５）に示される時刻t0乃至t1間の所要時間△T01と、次式（１６）に示される時刻t1乃至t2間の所要時間△T23について、あらかじめ定義した時間を設定しておく。
【０２３５】
△T01  ＝t1−t0      ・・・（１５）
△T23  ＝t3−t2      ・・・（１６）
【０２３６】
そして、制御部２７は、次の式（１７）と式（１８）とを用いて、拡大率の変化速度（単位時間あたりの拡大率の変化量）△V01および△V23 を算出する。
【０２３７】
△V01  ＝  （Zb  −  Za）／△T01      ・・・（１７）
△V23  ＝  （Za  −  Zb）／△T23      ・・・（１８）
【０２３８】
最終的に、制御部２７は、この算出された変化速度△V01および△V23 に従って拡大率を決定する。これにより、定義されている所要時間△T01または△T23で、拡大率の変化を完了させることができるようになる。ただし、拡大率の変化速度は補正前の拡大率Zaによって左右される点に留意する。
【０２３９】
なお、時刻t0乃至t1間の各フレームおよび時刻t2乃至t3間の各フレームの拡大率の算出手法は、上述した式（１５）乃至式（１８）を用いる手法に特に限定されない。その他例えば、拡大率の変化速度(単位時間あたりの拡大率の変化量)を定義しておき、この定義された変化速度に基づいて拡大率を決定する、という手法を採用することができる。かかる手法を採用した場合には、定義された変化速度で拡大率を変化させることができるようになる。ただし、所要時間△T01，△T23は補正前の拡大率Zaによって左右される点に留意する。
【０２４０】
また、時刻t0乃至t1間および時刻t2乃至t3間の拡大率の変化のパターンは、図３９の例に特に限定されない。即ち、拡大率を直線的に変化させるパターンに特に限定されない。その他例えば、曲線的に変化させるパターンを採用することもできる。
【０２４１】
また、拡大率Zbは、上述した例では固定されていたが、次に示す各種手法を採用することで可変することもできる。なお、次に示す各種手法は、組み合わせることもできる。
【０２４２】
拡大率Zbの可変手法の例としては、例えば、ユーザによる指定手法、オブジェクトに応じた自動調整手法、および、補正量に応じた拡大率手法といった手法が考えられる。以下、これらの手法について個別に説明していく。
【０２４３】
はじめに、ユーザによる指定手法について説明する。
【０２４４】
ユーザによる指定手法とは、拡大率Zbをユーザが直接指定できる手法をいう。ユーザによる指定手法の具体例としては、例えば、絶対値による指定手法や、相対値による指定手法を採用することができる。
【０２４５】
絶対値による指定方法とは、ユーザが、所望する拡大率Zbを、例えば「1.0」というように数値そのもの（絶対値）によって直接指定したり、入力画像の座標系における画素数を示す数値（絶対値）によって指定する手法をいう。
【０２４６】
相対値による指定方法とは、ユーザが、所望する拡大率Zbを、例えば「元の拡大率Zaの1/2倍」というように元の拡大率Zaに対する相対値によって指定したり、入力画像の座標系における画素数に対する割合といった相対値によって指定する手法をいう。
【０２４７】
なお、拡大率Zbの数値として、絶対値換算して1未満となる数値を指定することもできる。ただし、その場合の画像表示には、操作のし易さの観点からはあまり意味はないと思われる。即ち、操作のし易さとは別の目的がある場合に、拡大率Zbの数値として、絶対値換算して1未満となる数値を指定できるようにするとよい。
【０２４８】
また、上述した例では、Zb≦Zaであることが前提とされていた。従って、この前提が成り立たない場合には、例外的な措置、例えば強制的に拡大率Zb=Zaと変更する等の措置が必要である点留意する。
【０２４９】
次に、オブジェクトに応じた自動調整手法について説明する。
【０２５０】
オブジェクトに応じた自動調整手法とは、拡大率Zbを、現在追尾しているオブジェクトの大きさに応じて自動的に調整する手法をいう。
【０２５１】
例えば図４０は、オブジェクトに応じた自動調整手法の一例を説明する図である。図４０の上側の画像、即ち、時刻tαにおいて表示されている画像は、補正がなされていない時の画像を示している。即ち、補正がなされていないときの元の拡大率Zaの状態では、オブジェクト２２１が出力画像からはみ出していることが前提となっている。
【０２５２】
その時刻tαの後、補正が開始されたとする。即ち、各フレームについて図３６のステップＳ１５４の処理でＹＥＳであると判定されるようになったとする。この場合、制御部２７は、各フレームについてのステップＳ１５７とＳ１５８の拡大表示処理で、拡大率を自動的に小さくしていく。その際、制御部２７は、補正時である図４０の時刻tβには、図４０の中央の画像が表示されるように、即ち、補正時にはオブジェクト２２１がちょうど出力画像いっぱいに表示されるように、拡大率Zbを自動調整する。
【０２５３】
なお、その時刻tβの後、補正が終了されたとする。即ち、図３６のステップＳ１５４の処理でＮＯであると判定されるようになったとする。この場合、制御部２７は、それ以降の各フレームについてのステップＳ１５７とＳ１５８の拡大表示処理で、拡大率を自動的に大きくしていき、最終的に元の拡大率Zaまで戻す。即ち、一連の各画像（各フレームの画像）が拡大率が大きくなりつつ出力されていくことになる。従って、ユーザにとっては、オブジェクト２２１はだんだんと拡大されていき、元の大きさに戻るように見えることになる。例えば、図４０の下側の画像、即ち、時刻tγにおいて表示されている画像が、オブジェクト２２１の大きさが元に戻った画像（元の拡大率Zaに戻った段階の所定フレームの画像）の一例を示している。
【０２５４】
この場合、ユーザによる指定手法と組み合わせて、例えばオブジェクト２２１の大きさの1/2というように、オブジェクト２２１の大きさに対する相対値で拡大率Zbを指定できるようにしてもよい。
【０２５５】
その他、オブジェクトに応じた自動調整手法としては、例えば、追尾点(図４０の例等ではオブジェクト２２１)の動き量△xに応じて拡大率Zbを自動調整するという手法も採用できる。具体的には例えば、動き量△xが大きいときは拡大率Zbを小さくし、動き量が小さいときは拡大率Zbを大きくするという手法を採用できる。この手法は、動きが大きい(速い)場合はより広範囲な画像を表示した方が操作しやすいだろうし、逆に遅い場合はあまり拡大率を変える必要もないだろうという理由に基づく手法である。
【０２５６】
次に、補正量に応じた拡大率手法について説明する。
【０２５７】
補正量に応じた拡大率手法とは、ユーザは追尾点たる対象位置の補正を行う場合、この補正量△uに応じて拡大率Zbを自動的に調整する手法をいう。例えば、補正量△uが大きいときは拡大率Zbを小さくし、補正量△uが小さいときは拡大率Zbを大きくするという手法が、補正量に応じた拡大率手法の一例である。この例の手法は、大きな補正を行う場合は、より広範囲な画像を表示した方が操作しやすいだろうし、逆に小さな補正を行う場合はあまり拡大率を変えない方がいいだろうという理由に基づく手法である。
【０２５８】
以上、拡大率Zbの可変手法について説明した。
【０２５９】
以上説明した拡大率Zbの可変と同様に、拡大率の変化量を可変することもできる。即ち、拡大率の変化量は、上述した例では固定されていたが、次に示す各種手法を採用することで可変することもできる。なお、次に示す各種手法は、組み合わせることもできる。
【０２６０】
拡大率の変化量の可変手法の例としても、拡大率Zbの可変手法と同様に、ユーザによる指定手法、オブジェクトに応じた自動調整手法、および、補正量に応じた拡大率手法といった手法が考えられる。
【０２６１】
例えば、ユーザによる指定手法としては、直線的に変化する方法、滑らかに変化する(例えばスプライン曲線など)方法、といった複数の選択肢からユーザが選べるようにしておく手法を採用できる。
【０２６２】
例えば、オブジェクトに応じた自動調整手法としては、拡大率Zbの可変手法によってオブジェクトの大きさに応じた拡大率Zbが算出された場合、この拡大率Zbと拡大率Zaとの差に応じて拡大率の変化量を調整する、という手法を採用できる。具体的には例えば、その差(Za−Zb)が大きい場合は拡大率の変化量を大きくし、その差が小さい場合には拡大率の変化量を小さくするという手法を採用できる。この手法は、オブジェクトの全体像が見えにくくなっている(差が大きい)場合には速く見えるようにしてやった方が操作しやすいだろうし、逆の場合も同様であるという理由に基づく手法である。
【０２６３】
また例えば、オブジェクトに応じた自動調整手法としては、追尾点(オブジェクト)の動き量△xに応じて拡大率の変化量を自動調整する手法を採用できる。具体的には例えば、動き量△xが大きいときは拡大率の変化量を大きくし、動き量△xが小さいときは拡大率の変化量を小さくするという手法を採用できる。この手法は、動きが大きい(速い)場合はより広範囲な画像を速く表示した方が操作しやすいだろうし、逆の場合も同様であるという理由に基づく手法である。
【０２６４】
例えば、補正量に応じた拡大率手法としては、ユーザの追尾位置の補正におけるその補正量△uが大きいときは拡大率の変化量を大きくし、補正量△uが小さいときは拡大率の変化量を小さくするという手法を採用できる。この手法は、大きな補正を行う場合は、より広範囲な画像を速く表示した方が操作しやすいだろうし、逆の場合も同様であるという理由に基づく手法である 。
【０２６５】
次に、図４１のフローチャートを参照して、図５のステップＳ１１の通常処理に続いて行われる、ステップＳ１２の例外処理の他の例について説明する。この処理は、基本的に、図１２の処理と同様の処理であり、図９のステップＳ２４において追尾点の動きを推定することが不可能と判定され、さらにステップＳ２８において追尾点を乗り換える乗り換え候補が選択できなかったと判定された場合に実行される。
【０２６６】
ステップＳ１７１乃至Ｓ１７５の処理は、上述した図１２のステップＳ５１乃至Ｓ５５の処理と同様であるため、その説明は簡略する。すなわち、ステップＳ１７１において、例外処理の初期化処理が実行され、ステップＳ１７２において、次のフレームの画像の入力が待機され、ステップＳ１７３において、テンプレート探索範囲内においてテンプレートマッチング処理が行われ、ステップＳ１７４において、通常処理への復帰が可能であるか否かが判定され、通常処理への復帰が可能であると判定された場合、図５のステップＳ１１の通常処理に戻され、通常処理への復帰が可能ではないと判定された場合、ステップＳ１７５において、継続判定処理が実行される。
【０２６７】
そして、ステップＳ１７６において、制御部５９は、ステップＳ１７５の継続判定処理による例外処理での追尾点の追尾が継続可能であるか否かの継続判定結果に基づいて（図１６のステップＳ７６，７８で設定されたフラグに基づいて）判定する。追尾点の追尾処理が継続可能であると判定された場合、処理はステップＳ１７２に戻り、それ以降の処理が繰り返し実行される。すなわち、追尾点が再び出現するまで待機する処理が繰り返し実行される。
【０２６８】
これに対して、ステップＳ１７６において、例外処理での追尾点の追尾処理が継続可能ではないと判定された場合（図１６のステップＳ７５の処理で追尾点が消失した後の経過フレーム数が閾値THfr以上と判定されるか、または、ステップＳ７７の処理でシーンチェンジ数が閾値THsc以上と判定された場合）、ステップＳ１７７に進み、制御部５９は、追尾点決定部５７を制御し、保持しておいた追尾点を設定させる。その後、処理は図５のステップＳ１１の通常処理に戻る。
【０２６９】
このように、例外処理での追尾点の追尾が不可能になった場合には、保持しておいた追尾点を用いて再度通常処理に戻ることができるようにしたので、追尾処理を継続的に行うことが可能となる。
【０２７０】
以上においては、追尾処理によって所望の結果が得られていないと判断された場合、ユーザによる補正指示に基づいて、リアルタイムにユーザ補正が反映されるため、継続的に追尾処理を行うことができる。これにより、追尾点の指定や修正時の負荷が軽減し、より好適な追尾結果を得ることが可能となる。
【０２７１】
また以上においては、監視カメラシステムに適用した場合の例について説明したが、これに限らず、例えば、テレビジョン受像機など各種の画像処理装置に適応することが可能である。
【０２７２】
さらに以上においては、画像の処理単位をフレームとしたが、フィールドを処理単位とすることももちろん可能である。
【０２７３】
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【０２７４】
図４２は、上述した一連の処理をプログラムにより実行するパーソナルコンピュータの構成の例を示すブロック図である。
【０２７５】
図４２において、CPU（Central Processing Unit）３０１は、ROM（Read Only Memory）３０２、または記憶部３０８に記憶されているプログラムに従って各種の処理を実行する。RAM（Random Access Memory）３０３には、CPU３０１が実行するプログラムやデータなどが適宜記憶される。これらのCPU３０１、ROM３０２、およびRAM３０３は、バス３０４により相互に接続されている。
【０２７６】
CPU３０１にはまた、バス３０４を介して入出力インタフェース３０５が接続されている。入出力インタフェース３０５には、キーボード、マウス、マイクロホンなどよりなる入力取得部３０６、ディスプレイ、スピーカなどよりなる出力部３０７が接続されている。CPU３０１は、入力取得部３０６から入力される指令に対応して各種の処理を実行する。そして、CPU３０１は、処理の結果を出力部２０７に出力する。
【０２７７】
入出力インタフェース３０５に接続されている記憶部３０８は、例えばハードディスクからなり、CPU３０１が実行するプログラムや各種のデータを記憶する。通信部３０９は、インターネットやローカルエリアネットワークなどのネットワークを介して外部の装置と通信する。
【０２７８】
また、通信部３０９を介してプログラムを取得し、記憶部３０８に記憶してもよい。
【０２７９】
入出力インタフェース３０５に接続されているドライブ３１０は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア３１１が装着されたとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。取得されたプログラムやデータは、必要に応じて記憶部３０８に転送され、記憶される。
【０２８０】
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを格納するプログラム記録媒体は、図４２に示されるように、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)を含む）、光磁気ディスク、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア３１１若しくは図１のリムーバブルメディア２８、または、プログラムが一時的もしくは永続的に格納されるROM３０２や、記憶部３０８を構成するハードディスクなどにより構成される。プログラム記録媒体へのプログラムの格納は、必要に応じてルータ、モデムなどのインタフェースである通信部３０９を介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の通信媒体を利用して行われる。
【０２８１】
なお、本明細書において、プログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０２８２】
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【図面の簡単な説明】
【０２８３】
【図１】本発明を適用した監視カメラシステムの構成例を示すブロック図である。
【図２】監視処理の例を説明するフローチャートである。
【図３】図１の監視カメラシステムにより表示される画像の例を示す図である。
【図４】図１のオブジェクト追尾部の構成例を示すブロック図である。
【図５】追尾処理の例を説明するフローチャート図である。
【図６】追尾対象が回転する場合の追尾を説明する図である。
【図７】オクルージョンが起きる場合の追尾を説明する図である。
【図８】シーンチェンジが起きる場合の追尾を説明する図である。
【図９】通常処理の例を説明するフローチャートである。
【図１０】通常処理の初期化処理の例を説明するフローチャートである。
【図１１】通常処理の初期化処理の例を説明する図である。
【図１２】例外処理の例を説明するフローチャートである。
【図１３】例外処理の初期化処理の例を説明するフローチャートである。
【図１４】テンプレートの選択を説明する図である。
【図１５】探索範囲の設定を説明する図である。
【図１６】継続判定処理の例を説明するフローチャートである。
【図１７】動き推定部の構成例を示すブロック図である。
【図１８】動き推定処理の例を説明するフローチャートである。
【図１９】アクティビティの算出を説明する図である。
【図２０】評価値とアクティビティの関係を説明する図である。
【図２１】統合処理の例を説明するフローチャートである。
【図２２】背景動き推定部の構成例を示すブロック図である。
【図２３】背景動き推定処理の例を説明するフローチャートである。
【図２４】シーンチェンジ検出部の構成例を示すブロック図である。
【図２５】シーンチェンジ検出処理の例を説明するフローチャートである。
【図２６】図１の追尾位置補正部の機能的構成例を示すブロック図である。
【図２７】ブロックマッチング方式を説明する図である。
【図２８】ユーザの補正値を反映させる例を説明する図である。
【図２９】ユーザの補正値を反映させる他の例を説明する図である。
【図３０】追尾点を微調整する例を説明する図である。
【図３１】動きベクトル検出処理の例を説明する図である。
【図３２】追尾対象のサンプル点抽出処理の例を説明する図である。
【図３３】追尾補正処理の例を説明するフローチャートである。
【図３４】入力画像と追尾処理後の出力画像の例を示す図である。
【図３５】入力画像と、追尾処理および拡大表示処理後の出力画像の例を示す図である。
【図３６】追尾補正処理の別の例を説明するフローチャートである。
【図３７】追尾補正処理における拡大表示処理を説明する図である。
【図３８】追尾補正処理における拡大表示処理を説明する図である。
【図３９】追尾補正処理における拡大表示処理を説明する図である。
【図４０】追尾補正処理における拡大表示処理を説明する図である。
【図４１】他の例の例外処理の例を説明するフローチャートである。
【図４２】本発明を適用した監視カメラシステムの少なくとも一部をパーソナルコンピュータで構成した場合の構成例を示すブロック図である。
【符号の説明】
【０２８４】
１  監視カメラシステム，  ２１  撮像部，  ２２  追尾対象検出部，  ２３  オブジェクト追尾部，  ５１  テンプレートマッチング部，  ５２  動き推定部，  ５３  シーンチェンジ検出部，  ５４  背景動き推定部，  ５５  領域推定関連処理部，  ５６  乗り換え候補保持部，  ５７  追尾点決定部，  ５８  テンプレート保持部，  １６１  補正値算出部，  １６２  補正値反映部，  １６３  微調整部
【図１】
2009010453.tif 000016
【図２】
2009010453.tif 000017
【図３】
2009010453.tif 000018
【図４】
2009010453.tif 000019
【図５】
2009010453.tif 000020
【図６】
2009010453.tif 000021
【図７】
2009010453.tif 000022
【図８】
2009010453.tif 000023
【図９】
2009010453.tif 000024
【図１０】
2009010453.tif 000025
【図１１】
2009010453.tif 000026
【図１２】
2009010453.tif 000027
【図１３】
2009010453.tif 000028
【図１４】
2009010453.tif 000029
【図１５】
2009010453.tif 000030
【図１６】
2009010453.tif 000031
【図１７】
2009010453.tif 000032
【図１８】
2009010453.tif 000033
【図１９】
2009010453.tif 000034
【図２０】
2009010453.tif 000035
【図２１】
2009010453.tif 000036
【図２２】
2009010453.tif 000037
【図２３】
2009010453.tif 000038
【図２４】
2009010453.tif 000039
【図２５】
2009010453.tif 000040
【図２６】
2009010453.tif 000041
【図２７】
2009010453.tif 000042
【図２８】
2009010453.tif 000043
【図２９】
2009010453.tif 000044
【図３０】
2009010453.tif 000045
【図３１】
2009010453.tif 000046
【図３２】
2009010453.tif 000047
【図３３】
2009010453.tif 000048
【図３４】
2009010453.tif 000049
【図３５】
2009010453.tif 000050
【図３６】
2009010453.tif 000051
【図３７】
2009010453.tif 000052
【図３８】
2009010453.tif 000053
【図３９】
2009010453.tif 000054
【図４０】
2009010453.tif 000055
【図４１】
2009010453.tif 000056
【図４２】
2009010453.tif 000057