(57)【特許請求の範囲】
【請求項１】
移動するオブジェクトを表示させる画像処理装置において、
時間的に前の処理単位の画像上の移動するオブジェクトの追尾点としての第１の点の時間的に後の処理単位における追尾点としての第２の点の位置への動きを推定する動き推定手段と、
前記後の処理単位における前記第２の点の位置への動きが推定可能でない場合、前記第１の点の乗り換え候補としての推定点の中から他の第１の点を選択する選択手段と、
前記選択手段により選択された前記他の第１の点について推定された前記第２の点の位置への動きに基づいて、前記後の処理単位における前記第２の点を決定する決定手段と、
前記第１の点の位置および前記他の第１の点の位置に基づいて提示位置を算出する提示位置算出手段と、
前記提示位置算出手段により算出された前記提示位置に基づいて表示画像を作成する表示画像作成手段と、
前記表示画像作成手段により作成された前記表示画像の表示を制御する表示制御手段と
を備え、
前記提示位置算出手段は、
前記第１の点の位置および前記他の第１の点の位置から得られる乗り換え量が所定量以上であるか否かを判定する比較判定手段と、
前記比較判定手段により前記乗り換え量が所定量以上であると判定された場合、前記乗り換え量のうちの前記所定量だけを反映させて、前記他の第１の点について推定された前記第２の点の位置への動きに基づき、前記提示位置を設定する提示位置設定手段とを備える
画像処理装置。
【請求項２】
移動するオブジェクトを表示させる画像処理装置の画像処理方法において、
時間的に前の処理単位の画像上の移動するオブジェクトの追尾点としての第１の点の時間的に後の処理単位における追尾点としての第２の点の位置への動きを推定する動き推定ステップと、
前記後の処理単位における前記第２の点の位置への動きが推定可能でない場合、前記第１の点の乗り換え候補としての推定点の中から他の第１の点を選択する選択ステップと、
選択された前記他の第１の点について推定された前記第２の点の位置への動きに基づいて、前記後の処理単位における前記第２の点を決定する決定ステップと、
前記第１の点の位置および前記他の第１の点の位置に基づいて提示位置を算出する提示位置算出ステップと、
算出された前記提示位置に基づいて表示画像を作成する表示画像作成ステップと、
作成された前記表示画像の表示を制御する表示制御ステップと
を含み、
前記提示位置算出ステップの処理によって、
前記第１の点の位置および前記他の第１の点の位置から得られる乗り換え量が所定量以上であるか否かを判定し、
前記乗り換え量が所定量以上であると判定された場合、前記乗り換え量のうちの前記所定量だけを反映させて、前記他の第１の点について推定された前記第２の点の位置への動きに基づき、前記提示位置を設定する
画像処理方法。
【請求項３】
移動するオブジェクトを表示させる処理をコンピュータに行わせるプログラムであって、
時間的に前の処理単位の画像上の移動するオブジェクトの追尾点としての第１の点の時間的に後の処理単位における追尾点としての第２の点の位置への動きを推定する動き推定ステップと、
前記後の処理単位における前記第２の点の位置への動きが推定可能でない場合、前記第１の点の乗り換え候補としての推定点の中から他の第１の点を選択する選択ステップと、
選択された前記他の第１の点について推定された前記第２の点の位置への動きに基づいて、前記後の処理単位における前記第２の点を決定する決定ステップと、
前記第１の点の位置および前記他の第１の点の位置に基づいて提示位置を算出する提示位置算出ステップと、
算出された前記提示位置に基づいて表示画像を作成する表示画像作成ステップと、
作成された前記表示画像の表示を制御する表示制御ステップと
を含み、
前記提示位置算出ステップの処理によって、
前記第１の点の位置および前記他の第１の点の位置から得られる乗り換え量が所定量以上であるか否かを判定し、
前記乗り換え量が所定量以上であると判定された場合、前記乗り換え量のうちの前記所定量だけを反映させて、前記他の第１の点について推定された前記第２の点の位置への動きに基づき、前記提示位置を設定する
プログラム。
【請求項４】
請求項３に記載のプログラムが記録されている記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置および方法、プログラム、並びに記録媒体に関し、特に、追尾点を他の候補に乗り換えて追尾して表示する場合に、乗り換えにより生じる違和感を軽減することができるようにした画像処理装置および方法、プログラム、並びに記録媒体に関する。
【背景技術】
【０００２】
動画像中でユーザが指定した対象を追尾する技術は、従来から多く提案されている。しかしながら、従来の技術においては、追尾対象が他の物体により一時的に隠れてしまうオクルージョンが発生したり、あるいはシーンチェンジなどにより追尾対象が一時的に表示されなくなるような場合、ロバストな追尾を行うことが困難であった。
【０００３】
そこで、予め追尾点の候補を求めておき、追尾対象が回転して追尾点が一時的に見えなくなったり、オクルージョンやシーンチェンジが発生した場合などに、追尾点を、予め求められている追尾点の候補に乗り換えることで、追尾対象の追尾をより確実に行うことを、本出願人が、先に出願した特許文献１において提案している。
【０００４】
【特許文献１】特開２００５−３０３９８３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に記載のオブジェクト追尾においては、追尾結果をそのまま表示していた。したがって、追尾点を追尾候補に乗り換えた場合、その追尾結果の表示においては、乗り換えによる違和感が生じてしまうことがあった。この違和感は、特に、特許文献１に記載のオブジェクト追尾を、その追尾点を中心としてズームして表示するアプリケーションに適用させた場合に顕著に生じるものである。
【０００６】
本発明は、このような状況に鑑みてなされたものであり、追尾点を他の候補に乗り換えて追尾して表示する場合に、乗り換えにより生じる違和感を軽減することができるようにするものである。
【課題を解決するための手段】
【０００７】
本発明の一側面の画像処理装置は、移動するオブジェクトを表示させる画像処理装置において、時間的に前の処理単位の画像上の移動するオブジェクトの追尾点としての第１の点の時間的に後の処理単位における追尾点としての第２の点の位置への動きを推定する動き推定手段と、前記後の処理単位における前記第２の点の位置への動きが推定可能でない場合、前記第１の点の乗り換え候補としての推定点の中から他の第１の点を選択する選択手段と、前記選択手段により選択された前記他の第１の点について推定された前記第２の点の位置への動きに基づいて、前記後の処理単位における前記第２の点を決定する決定手段と、前記第１の点の位置および前記他の第１の点の位置に基づいて提示位置を算出する提示位置算出手段と、前記提示位置算出手段により算出された前記提示位置に基づいて表示画像を作成する表示画像作成手段と、前記表示画像作成手段により作成された前記表示画像の表示を制御する表示制御手段とを備え、前記提示位置算出手段は、前記第１の点の位置および前記他の第１の点の位置から得られる乗り換え量が所定量以上であるか否かを判定する比較判定手段と、前記比較判定手段により前記乗り換え量が所定量以上であると判定された場合、前記乗り換え量のうちの前記所定量だけを反映させて、前記他の第１の点について推定された前記第２の点の位置への動きに基づき、前記提示位置を設定する提示位置設定手段とを備える。
【００１４】
本発明の一側面の画像処理方法は、移動するオブジェクトを表示させる画像処理装置の画像処理方法において、時間的に前の処理単位の画像上の移動するオブジェクトの追尾点としての第１の点の時間的に後の処理単位における追尾点としての第２の点の位置への動きを推定する動き推定ステップと、前記後の処理単位における前記第２の点の位置への動きが推定可能でない場合、前記第１の点の乗り換え候補としての推定点の中から他の第１の点を選択する選択ステップと、選択された前記他の第１の点について推定された前記第２の点の位置への動きに基づいて、前記後の処理単位における前記第２の点を決定する決定ステップと、前記第１の点の位置および前記他の第１の点の位置に基づいて提示位置を算出する提示位置算出ステップと、算出された前記提示位置に基づいて表示画像を作成する表示画像作成ステップと、作成された前記表示画像の表示を制御する表示制御ステップとを含み、前記提示位置算出ステップの処理によって、前記第１の点の位置および前記他の第１の点の位置から得られる乗り換え量が所定量以上であるか否かを判定し、前記乗り換え量が所定量以上であると判定された場合、前記乗り換え量のうちの前記所定量だけを反映させて、前記他の第１の点について推定された前記第２の点の位置への動きに基づき、前記提示位置を設定する。
【００１５】
本発明の一側面のプログラムは、移動するオブジェクトを表示させる画像処理装置の画像処理方法において、時間的に前の処理単位の画像上の移動するオブジェクトの追尾点としての第１の点の時間的に後の処理単位における追尾点としての第２の点の位置への動きを推定する動き推定ステップと、前記後の処理単位における前記第２の点の位置への動きが推定可能でない場合、前記第１の点の乗り換え候補としての推定点の中から他の第１の点を選択する選択ステップと、選択された前記他の第１の点について推定された前記第２の点の位置への動きに基づいて、前記後の処理単位における前記第２の点を決定する決定ステップと、前記第１の点の位置および前記他の第１の点の位置に基づいて提示位置を算出する提示位置算出ステップと、算出された前記提示位置に基づいて表示画像を作成する表示画像作成ステップと、作成された前記表示画像の表示を制御する表示制御ステップとを含み、前記提示位置算出ステップの処理によって、前記第１の点の位置および前記他の第１の点の位置から得られる乗り換え量が所定量以上であるか否かを判定し、前記乗り換え量が所定量以上であると判定された場合、前記乗り換え量のうちの前記所定量だけを反映させて、前記他の第１の点について推定された前記第２の点の位置への動きに基づき、前記提示位置を設定する。
【００１６】
本発明の一側面の記録媒体に記録されているプログラムは、移動するオブジェクトを表示させる画像処理装置の画像処理方法において、時間的に前の処理単位の画像上の移動するオブジェクトの追尾点としての第１の点の時間的に後の処理単位における追尾点としての第２の点の位置への動きを推定する動き推定ステップと、前記後の処理単位における前記第２の点の位置への動きが推定可能でない場合、前記第１の点の乗り換え候補としての推定点の中から他の第１の点を選択する選択ステップと、選択された前記他の第１の点について推定された前記第２の点の位置への動きに基づいて、前記後の処理単位における前記第２の点を決定する決定ステップと、前記第１の点の位置および前記他の第１の点の位置に基づいて提示位置を算出する提示位置算出ステップと、算出された前記提示位置に基づいて表示画像を作成する表示画像作成ステップと、作成された前記表示画像の表示を制御する表示制御ステップとを含み、前記提示位置算出ステップの処理によって、前記第１の点の位置および前記他の第１の点の位置から得られる乗り換え量が所定量以上であるか否かを判定し、前記乗り換え量が所定量以上であると判定された場合、前記乗り換え量のうちの前記所定量だけを反映させて、前記他の第１の点について推定された前記第２の点の位置への動きに基づき、前記提示位置を設定する。
【００１７】
本発明の一側面においては、時間的に前の処理単位の画像上の移動するオブジェクトの追尾点としての第１の点の時間的に後の処理単位における追尾点としての第２の点の位置への動きが推定され、前記後の処理単位における前記第２の点の位置への動きが推定可能でない場合、前記第１の点の乗り換え候補としての推定点の中から他の第１の点が選択され、選択された前記他の第１の点について推定された前記第２の点の位置への動きに基づいて、前記後の処理単位における前記第２の点が決定される。そして、前記第１の点の位置および前記他の第１の点の位置に基づいて、提示位置が算出され、算出された前記提示位置に基づいて表示画像が作成され、作成された前記表示画像の表示が制御される。また、提示位置の算出の際には、前記第１の点の位置および前記他の第１の点の位置から得られる乗り換え量が所定量以上であるか否かが判定され、前記乗り換え量が所定量以上であると判定された場合、前記乗り換え量のうちの前記所定量だけを反映させて、前記他の第１の点について推定された前記第２の点の位置への動きに基づき、前記提示位置が設定される。
【発明の効果】
【００１８】
本発明によれば、追尾点を他の候補に乗り換えて追尾し表示する場合に、乗り換えにより生じる違和感を軽減することができる。これにより、追尾点をズームして表示する場合であっても、乗り換えによる違和感が緩和された表示を行うことができる。
【発明を実施するための最良の形態】
【００２５】
以下、図面を参照して、本発明の実施の形態について説明する。
【００２６】
図１は、本発明をテレビジョン受像機に適用した場合の構成例を表している。このテレビジョン受像機１は、チューナ２１、画像処理部２２、オブジェクト追尾部２３、ズーム画像作成部２４、選択部２５、画像ディスプレイ２６、音声処理部２７、スピーカ２８、制御部２９、リモートコントローラ３０、およびリムーバブルメディア３１で構成されている。
【００２７】
チューナ２１は、RF信号を入力し、復調して画像信号と音声信号とに分離し、画像信号を画像処理部２２に出力し、音声信号を音声処理部２７に出力する。
【００２８】
画像処理部２２は、チューナ２１より入力された画像信号を復調し、オブジェクト追尾部２３、ズーム画像作成部２４、および選択部２５に出力する。オブジェクト追尾部２３は、入力画像からユーザにより指定されたオブジェクトの追尾点を追尾する処理を実行し、その追尾点に基づいて、追尾されたオブジェクトの提示の基準とする提示位置を求め、その提示位置に関する座標情報を、ズーム画像作成部２４に出力する。ズーム画像作成部２４は、提示位置に基づいて、ズーム画像（すなわち、ズームした表示画像）を作成する。選択部２５は、画像処理部２２より供給された画像またはズーム画像作成部２４より供給された画像の一方をユーザからの指示に基づいて選択し、画像ディスプレイ２６に出力し、表示させる。
【００２９】
音声処理部２７は、チューナ２１より入力された音声信号を復調し、スピーカ２８に出力する。
【００３０】
制御部２９は、例えば、マイクロコンピュータなどにより構成され、ユーザの指示に基づいて各部を制御する。リモートコントローラ３０は、ユーザにより操作され、その操作に対応する信号を制御部２９に出力する。リムーバブルメディア３１は、半導体メモリ、磁気ディスク、光ディスク、光磁気ディスクなどにより構成され、必要に応じて装着され、制御部２９に、プログラム、その他各種のデータを提供する。
【００３１】
次に、テレビジョン受像機１の処理について、図２のフローチャートを参照して説明する。
【００３２】
ステップＳ１において、チューナ２１は、図示せぬアンテナを介して受信したRF信号から、ユーザにより指示されたチャンネルの信号を復調して、画像信号を画像処理部２２に出力し、音声信号を音声処理部２７に出力する。音声信号は、音声処理部２７で復調された後、スピーカ２８から出力される。
【００３３】
画像処理部２２は、入力された画像信号を復調し、オブジェクト追尾部２３、ズーム画像作成部２４、および選択部２５に出力する。
【００３４】
ステップＳ２において、オブジェクト追尾部２３は、追尾が指示されたか否かを判定し、追尾が指示されていないと判定された場合、ステップＳ３，Ｓ４の処理をスキップする。ステップＳ５において、選択部２５は、画像処理部２２より供給される画像信号と、ズーム画像作成部２４より入力される画像信号のいずれか一方を制御部２９からの制御に基づいて選択する。いまの場合、ユーザから特に指示がなされていないので、制御部２９は、選択部２５に画像処理部２２からの画像信号を選択させる。ステップＳ６において画像ディスプレイ２６は、選択部２５により選択された画像を表示する。
【００３５】
ステップＳ７において、制御部２９は、ユーザの指示に基づいて画像表示処理を終了するか否かを判定する。すなわちユーザは、画像表示処理を終了するとき、リモートコントローラ３０を操作して、制御部２９にそれを指示する。ユーザから終了が指示されていない場合、処理はステップＳ１に戻り、それ以降の処理が繰り返し実行される。
【００３６】
以上のようにして、チューナ２１により受信された信号に対応する画像をそのまま表示する通常の処理が実行される。
【００３７】
ユーザは、画像ディスプレイ２６に表示されている画像を見て追尾したいと思う画像が表示されたとき、リモートコントローラ３０を操作することで、その画像を指定する。この操作がなされたとき、ステップＳ２において制御部２９は、追尾が指示されたと判定し、オブジェクト追尾部２３を制御する。オブジェクト追尾部２３は、この制御に基づいて、ユーザにより指定された追尾点の追尾処理を開始する。
【００３８】
追尾処理の詳細については、図４を参照して後述するが、この処理により、ユーザにより指定された追尾点、例えば、画像の中の追尾対象となるオブジェクト（例えば、人、動物など）の中の追尾点（目、頭の中心など）が追尾され、その追尾点に基づいて、追尾を行ったオブジェクトを提示する際にその提示の基準となる提示位置が算出され、その提示位置を表す位置情報が、提示位置情報として、ズーム画像作成部２４に出力される。
【００３９】
ステップＳ４において、ズーム画像作成部２４は、オブジェクト追尾部２３により求められた提示位置に基づいて、ズーム画像を生成し、選択部２５に出力する。すなわち、ズーム画像作成部２４は、オブジェクト追尾部２３により求められた提示位置を中心として、ズーム画像を生成する。すなわち、提示位置は、ズームの提示中心点とも言える。
【００４０】
このズーム画像作成処理は、本出願人が先に提案しているクラス分類適応処理を利用して行うことができる。例えば、特開２００２−１９６７３７公報には、予め学習して得た係数を用いて、５２５ｉ信号を１０８０ｉ信号に変換する処理が開示されている。この処理は、垂直方向と水平方向の両方に９／４倍に画像を拡大する処理と実質的に同様の処理である。ただし、画像ディスプレイ２６は、画素数が一定であるため、ズーム画像作成部２４は、例えば９／４倍の画像を作成する場合、５２５ｉ信号を１０８０ｉ信号に変換した後、提示位置を中心とする所定の数の画素（画像ディスプレイ２６に対応する数の画素）を選択することでズーム画像を作成することができる。
【００４１】
この原理に基づいて、任意の倍率のズーム画像を生成することができる。
【００４２】
追尾が指示されている場合、ステップＳ５において選択部２５は、ズーム画像作成部２４により作成されたズーム画像を選択する。その結果、ステップＳ６において、画像ディスプレイ２６は、ズーム画像作成部２４により作成されたズーム画像を表示することになる。
【００４３】
以上のようにして、画像ディスプレイ２６には、ユーザが指定した追尾点に基づいて求められる提示位置を中心とするズーム画像が表示される。なお、倍率が１に設定された場合には、提示位置を基準とした、ズームなしの表示画像が作成されて、表示される。
【００４４】
次に、図１のオブジェクト追尾部２３の詳細な構成例と、その動作について説明する。図３はオブジェクト追尾部２３の機能的構成例を示すブロック図である。この例では、オブジェクト追尾部２３は、追尾処理部４１と提示位置算出部４２により構成されている。
【００４５】
追尾処理部４１は、入力画像の動きを推定し、推定の結果得られた動きベクトルなどに基づいて、追尾点を算出する。そして、追尾処理部４１は、算出した追尾点の位置情報などの追尾結果と、推定の結果得られた、追尾結果に対応する動きベクトルを提示位置算出部４２に供給する。
【００４６】
提示位置算出部４２は、追尾処理部４１により供給された追尾結果および動きベクトルに基づいて、オブジェクトの追尾（すなわち、追尾結果）を提示する際の基準となる提示位置を算出し、算出した提示位置に関する情報を、ズーム画像作成部２４、および制御部２９などに出力する。
【００４７】
次に、オブジェクト追尾部２３の動作について説明する。図４は、図２のステップＳ３において、オブジェクト追尾部２３が実行する追尾処理の詳細を説明するフローチャートである。
【００４８】
まず、ステップＳ２１において、オブジェクト追尾部２３の追尾処理部４１は、ステップＳ２で指定された追尾点を追尾することで、追尾点を算出する追尾点算出処理を実行する。この追尾点算出処理は、図５に示されるように、基本的に通常処理と例外処理で構成される。
【００４９】
すなわち、追尾処理部４１は、まず、ステップＳ５１において、通常処理を実行する。この通常処理の詳細は、図１０を参照して後述するが、この処理によりユーザにより指定された追尾点を追尾する処理が実行される。ステップＳ５１の通常処理において追尾点の乗り換えができなくなったとき、追尾処理部４１は、ステップＳ５２において、例外処理を実行する。この例外処理の詳細は、図２５を参照して後述するが、この例外処理により、追尾点が画像から見えなくなったとき、テンプレートマッチングにより通常処理への復帰処理が実行される。
【００５０】
例外処理によって追尾処理を継続することができなくなった（通常処理へ復帰することができなくなった）と判定された場合には処理が終了されるが、テンプレートによる復帰処理の結果、通常処理への復帰が可能と判定された場合には、処理は再びステップＳ５１に戻る。このようにして、ステップＳ５１の通常処理とステップＳ５２の例外処理が、フレーム毎に順次繰り返し実行される。
【００５１】
この通常処理と例外処理により、本発明においては、図６乃至図８に示されるように、追尾対象が回転したり、オクルージョンが発生したり、シーンチェンジが発生する等、追尾点が一時的に見えなくなった場合においても、追尾が可能となる。
【００５２】
すなわち、例えば、図６に示されるように、フレームｎ−１には追尾対象（オブジェクト）としての人の顔１０４が表示されており、この人の顔１０４は、右目１０２と左目１０３を有している。ユーザが、このうちの、例えば右目１０２（正確には、その中の１つの画素）を追尾点１０１として指定したとする。図６の例においては、次のフレームｎにおいて、人が図中左方向に移動しており、さらに次のフレームｎ＋１においては、人の顔１０４が時計方向に回動している。その結果、今まで見えていた右目１０２が表示されなくなり、いままでの方法では、追尾ができなくなる。そこで、上述したステップＳ５１の通常処理においては、右目１０２と同一の対象物としての顔１０４上の左目１０３が選択され、追尾点が左目１０３に乗り換えられる（設定される）。これにより追尾が可能となる。
【００５３】
図７の表示例では、フレームｎ−１において、顔１０４の図中左側からボール１２１が移動してきて、次のフレームｎにおいては、ボール１２１がちょうど顔１０４を覆う状態となっている。この状態において、追尾点１０１として指定されていた右目１０２を含む顔１０４が表示されていない。このようなオクルージョンが起きると、対象物としての顔１０４が表示されていないので、追尾点１０１に代えて追尾する乗り換え点もなくなり、以後、追尾点を追尾することが困難になる。しかし、本発明においては、追尾点１０１としての右目１０２をフレームｎ−１（実際には時間的にもっと前のフレーム）の画像がテンプレートとして予め保存されており、ボール１２１がさらに右側に移動し、フレームｎ＋１において、追尾点１０１として指定された右目１０２が再び現れると、上述したステップＳ５２の例外処理により、追尾点１０１としての右目１０２が再び表示されたことが確認され、右目１０２が再び追尾点１０１として追尾されることになる。
【００５４】
図８の例では、フレームｎ−１においては、顔１０４が表示されているが、次のフレームｎにおいては、自動車１１１が人の顔を含む全体を覆い隠している。すなわち、この場合、シーンチェンジが起きたことになる。本発明では、このようにシーンチェンジが起きて追尾点１０１が画像から存在しなくなっても、自動車１１１が移動して、フレームｎ＋１において再び右目１０２が表示されると、ステップＳ５２の例外処理で、追尾点１０１としての右目１０２が再び出現したことがテンプレートに基づいて確認され、この右目１０２を再び追尾点１０１として追尾することが可能となる。
【００５５】
図４に戻って、上述したようにステップＳ２１の追尾点算出処理においては、例外処理により追尾処理を継続することができなくなるまで、ユーザにより指定された追尾点、あるいは、追尾点を乗り換えるべき点としての乗り換え点に乗り換えられた結果の追尾点が決定される。このとき、決定された追尾点に関する情報（例えば、追尾点の位置情報や、乗り換えの履歴情報など）と、その追尾点に対応する動きベクトルが、提示位置算出部４２に供給される。
【００５６】
ステップＳ２２において、提示位置算出部４２は、このステップＳ２１で決定された追尾点に関する情報に基づいて、さらに、オブジェクトの追尾（すなわち、追尾結果）を提示する際の基準となる提示位置、すなわち、ズーム画像作成部２４がズーム画像を作成するときに、その中心とする提示位置を算出する提示位置算出処理を実行する。
【００５７】
この提示位置算出処理の詳細は、図４１を参照して後述するが、この処理により、ステップＳ２１で求められた現在の追尾点が乗り換えられたものであり、過去の追尾点の位置から、乗り換え点の位置への動き量である乗り換えベクトルが、所定の動き量を超えている場合、過去の提示位置に、その乗り換えベクトルのうち、所定の動き量だけが反映されて、現在の提示位置が算出される。この場合、反映されなかった残りの動き量（以下、乗り換え残りベクトルとも称する）は、次のフレームの処理に反映される。
【００５８】
一方、ステップＳ２１で求められた現在の追尾点が乗り換えられたものでなく、かつ、前フレームからの乗り換え残りベクトルがない場合には、ステップＳ２１で求められた現在の追尾点が、現在の提示位置として設定される。
【００５９】
この提示位置算出処理により、オブジェクトの追尾（すなわち、追尾結果）を提示する際の基準となる提示位置、すなわち、ズーム画像を作成する時のズームの中心となる提示位置が求められるので、本発明においては、追尾点が乗り換えられたことにより、表示される画像に従来生じていた違和感を軽減することができる。
【００６０】
次に、図３の追尾処理部４１の詳細な構成例と、その動作について説明する。図９は追尾処理部４１の機能的構成例を示すブロック図である。この例では、追尾処理部４１は、テンプレートマッチング部５１、動き推定部５２、シーンチェンジ検出部５３、背景動き推定部５４、領域推定関連処理部５５、乗り換え候補保持部５６、追尾点決定部５７、テンプレート保持部５８、および制御部５９により構成されている。
【００６１】
テンプレートマッチング部５１は、入力画像と、テンプレート保持部５８に保持されているテンプレート画像のマッチング処理を行う。動き推定部５２は、入力画像の動きを推定し、推定の結果得られた動きベクトルと、その動きベクトルの確度を、シーンチェンジ検出部５３、背景動き推定部５４、領域推定関連処理部５５、および追尾点決定部５７に出力する。シーンチェンジ検出部５３は、動き推定部５２より供給された確度に基づいて、シーンチェンジを検出する。
【００６２】
背景動き推定部５４は、動き推定部５２より供給された動きベクトルと確度に基づいて背景動きを推定する処理を実行し、推定結果を領域推定関連処理部５５に供給する。領域推定関連処理部５５は、動き推定部５２より供給された動きベクトルと確度、背景動き推定部５４より供給された背景動き、並びに追尾点決定部５７より供給された追尾点情報に基づいて、領域推定処理を行う。また、領域推定関連処理部５５は、入力された情報に基づいて乗り換え候補を生成し、乗り換え候補保持部５６へ供給し、保持させる。さらに、領域推定関連処理部５５は、入力画像に基づいてテンプレートを作成し、テンプレート保持部５８に供給し、保持させる。
【００６３】
追尾点決定部５７は、動き推定部５２より供給された動きベクトルと確度、並びに乗り換え候補保持部５６より供給された乗り換え候補に基づいて、追尾点を決定し、決定された追尾点に関する情報を領域推定関連処理部５５に出力する。
【００６４】
制御部５９は、制御部２９から指定された追尾点の情報に基づいて、テンプレートマッチング部５１乃至テンプレート保持部５８の各部を制御して、指示された追尾対象を追尾させるとともに、追尾点の画面上での位置の情報などの追尾結果と、決定された追尾点に対応する動きベクトルを、提示位置算出部４２などに出力する。すなわち、追尾点決定部５７により決定された追尾点に関する情報などの追尾結果と、決定された追尾点に対応する、動き推定部５２からの動きベクトルが提示位置算出部４２に供給される。
【００６５】
次に、図１０のフローチャートを参照して、図５のステップＳ５１の通常処理の詳細について説明する。ステップＳ１２１において、追尾点決定部５７により通常処理の初期化処理が実行される。その詳細は、図１１を参照して後述するが、この処理によりユーザから追尾するように指定された追尾点を基準とする領域推定範囲が指定される。この領域推定範囲は、ユーザにより指定された追尾点と同一の対象物（例えば、追尾点が人の目である場合、目と同様の動きをする剛体としての人の顔、または人の体など）に属する点の範囲を推定する際に参照する範囲である。乗り換え点は、この領域推定範囲の中の点から選択される。
【００６６】
次に、ステップＳ１２２において、制御部５９は、次のフレームの画像の入力を待機するように各部を制御する。ステップＳ１２３において、動き推定部５２は、追尾点の動きを推定する。すなわち、ユーザにより指定された追尾点を含むフレーム（前フレーム）より時間的に後のフレーム（後フレーム）をステップＳ１２２の処理で取り込むことで、結局連続する２フレームの画像が得られたことになるので、ステップＳ１２３において、前フレームの追尾点に対応する後フレームの追尾点の位置を推定することで、追尾点の動きが推定される。
【００６７】
なお、時間的に前とは、処理の順番（入力の順番）をいう。通常、撮像の順番に各フレームの画像が入力されるので、その場合、より時間的に前に撮像されたフレームが前フレームとなるが、時間的に後に撮像されたフレームが先に処理（入力）される場合には、時間的に後に撮像されたフレームが前フレームとなる。
【００６８】
ステップＳ１２４において、動き推定部５２は、ステップＳ１２３の処理の結果、追尾点が推定可能であったか否かを判定する。追尾点が推定可能であったか否かは、例えば、動き推定部５２が生成、出力する動きベクトル（後述）の確度の値を、予め設定されている閾値と比較することで判定される。具体的には、動きベクトルの確度が閾値以上であれば推定が可能であり、閾値より小さければ推定が不可能であると判定される。すなわち、ここにおける可能性は比較的厳格に判定され、実際には推定が不可能ではなくても確度が低い場合には、不可能と判定される。これにより、より確実な追尾処理が可能となる。
【００６９】
なお、ステップＳ１２４では、追尾点での動き推定結果と追尾点の近傍の点での動き推定結果が、多数を占める動きと一致する場合には推定可能、一致しない場合には推定不可能と判定するようにすることも可能である。
【００７０】
追尾点の動きが推定可能であると判定された場合（追尾点が同一対象物上の対応する点上に正しく設定されている確率（右目１０２が追尾点１０１として指定された場合、右目１０２が正しく追尾されている確率）が比較的高い場合）、ステップＳ１２５に進み、追尾点決定部５７は、ステップＳ１２３の処理で得られた推定動き（動きベクトル）の分だけ追尾点をシフトする。すなわち、これにより、前フレームの追尾点の追尾後の後フレームにおける追尾の位置が決定されることになる。
【００７１】
そして、決定された追尾点に関する情報（例えば、追尾点の位置情報や、乗り換えの履歴情報など）が提示位置算出部４２に出力され、図４のステップＳ２２（後述する図４１および図４２）の提示位置算出処理において用いられる。
【００７２】
ステップＳ１２５の処理の後、ステップＳ１２６において、領域推定関連処理が実行される。この領域推定関連処理の詳細は、図１４を参照して後述するが、この処理により、ステップＳ１２１の通常処理の初期化処理で指定された領域推定範囲が更新される。さらに、対象物体が回転するなどして、追尾点が表示されない状態になった場合に、追尾点を乗り換えるべき点としての乗り換え点としての候補（乗り換え候補）が、この状態（まだ追尾が可能な状態）において、予め抽出（作成）される。また、乗り換え候補への乗り換えもできなくなった場合、追尾は一旦中断されるが、再び追尾が可能になった（追尾点が再び出現した）ことを確認するために、テンプレートが予め作成される。
【００７３】
ステップＳ１２６の領域推定関連処理が終了した後、処理は再びステップＳ１２２に戻り、それ以降の処理が繰り返し実行される。
【００７４】
すなわち、ユーザから指定された追尾点の動きが推定可能である限り、ステップＳ１２２乃至ステップＳ１２６の処理がフレーム毎に繰り返し実行され、追尾が行われることになる。
【００７５】
これに対して、ステップＳ１２４において、追尾点の動きが推定可能ではない（不可能である）と判定された場合、すなわち、上述したように、例えば動きベクトルの確度が閾値以下であるような場合、処理はステップＳ１２７に進む。ステップＳ１２７において、追尾点決定部５７は、ステップＳ１２６の領域推定関連処理で生成された乗り換え候補が乗り換え候補保持部５６に保持されているので、その中から、元の追尾点に最も近い乗り換え候補を１つ選択する。追尾点決定部５７は、ステップＳ１２８で乗り換え候補が選択できたか否かを判定し、乗り換え候補が選択できた場合には、ステップＳ１２９に進み、追尾点をステップＳ１２７の処理で選択した乗り換え候補に乗り換える（変更する）。すなわち、乗り換え候補の点が新たな追尾点として設定される。このとき、例えば、乗り換えを行ったことを示す乗り換えフラグなどの乗り換えの履歴情報が記憶される。その後、処理はステップＳ１２３に戻り、乗り換え候補の中から選ばれた追尾点の動きを推定する処理が実行される。
【００７６】
ステップＳ１２４において新たに設定された追尾点の動きが推定可能であるか否かが再び判定され、推定可能であれば、ステップＳ１２５において追尾点を推定動き分だけシフトする処理が行われ、ステップＳ１２６において、領域推定関連処理が実行される。その後、処理は再びステップＳ１２２に戻り、それ以降の処理が繰り返し実行される。なお、
ステップＳ１２９の処理において記憶された乗り換えの履歴情報は、例えば、ステップＳ１２２に戻るときにリセットされる。
【００７７】
ステップＳ１２４において、新たに設定された追尾点も推定不可能であると判定された場合には、再びステップＳ１２７に戻り、乗り換え候補の中から、元の追尾点に次に最も近い乗り換え候補が選択され、ステップＳ１２９において、その乗り換え候補が新たな追尾点とされる。その新たな追尾点について、再びステップＳ１２３以降の処理が繰り返される。
【００７８】
用意されているすべての乗り換え候補を新たな追尾点としても、追尾点の動きを推定することができなかった場合には、ステップＳ１２８において、乗り換え候補が選択できなかったと判定され、この通常処理は終了される。そして、図５のステップＳ５２の例外処理に処理が進むことになる。
【００７９】
次に、図１１のフローチャートを参照して、図１０のステップＳ１２１の通常処理の初期化処理の詳細について説明する。
【００８０】
ステップＳ１４１において、制御部５９は、今の処理は例外処理からの復帰の処理であるのか否かを判定する。すなわち、図５のステップＳ５２の例外処理を終了した後、再びステップＳ５１の通常処理に戻ってきたのか否かが判定される。最初のフレームの処理においては、まだステップＳ５２の例外処理は実行されていないので、例外処理からの復帰ではないと判定され、処理はステップＳ１４２に進む。ステップＳ１４２において、追尾点決定部５７は、追尾点を、ユーザにより指定された入力画像の中の所定の点である追尾点指示の位置に設定する処理を実行する。
【００８１】
なお、ユーザによる指定がない場合、入力画像の中で、例えば、最も輝度の高い点が追尾点として設定することもできる。追尾点決定部５７は、設定した追尾点の情報を領域推定関連処理部５５に供給する。
【００８２】
ステップＳ１４３において、領域推定関連処理部５５は、ステップＳ１４２の処理で設定された追尾点の位置に基づき、領域推定範囲を設定する。この領域推定範囲は、追尾点と同じ剛体上の点を推定する際の参照範囲であり、予め追尾点と同じ剛体部分が領域推定範囲の大部分を占めるように、より具体的には、追尾点と同じ剛体部分に推定領域範囲の位置や大きさが追随するように設定することで、領域推定範囲の中で最も多数を占める動きを示す部分を追尾点と同じ剛体部分であると推定できるようにするためのものである。ステップＳ１４３では初期値として、例えば、追尾点を中心とする予め設定された一定の範囲が領域推定範囲とされる。
【００８３】
その後処理は、図１０のステップＳ１２２に進むことになる。
【００８４】
一方、ステップＳ１４１において、現在の処理が、図５のステップＳ５２の例外処理からの復帰の処理であると判定された場合、ステップＳ１４４に進み、追尾点決定部５７は、後述する図２５を参照して後述する処理により、テンプレートにマッチした位置に基づき追尾点と領域推定範囲を設定する。例えば、テンプレート上の追尾点とマッチした現フレーム上の点が追尾点とされ、その点から予め設定されている一定の範囲が領域推定範囲とされる。その後、処理は図１０のステップＳ１２２に進む。
【００８５】
以上の処理を、図１２を参照して説明すると次のようになる。すなわち、図１１のステップＳ１４２において、例えば、図１２に示されるように、フレームｎ−１の人の目１０２が追尾点１０１として指定されると、ステップＳ１４３において、追尾点１０１を含む所定の領域が領域推定範囲１３３として指定される。ステップＳ１２４において、領域推定範囲１３３の範囲内のサンプル点が次のフレームにおいて推定可能であるか否かが判定される。図１２の例の場合、フレームｎの次のフレームｎ＋１においては、領域推定範囲１３３のうち、左目１０２を含む図中左側半分の領域１３４がボール１２１で隠されているため、フレームｎの追尾点１０１の動きを、次のフレームｎ＋１において推定することができない。そこで、このような場合においては、時間的に前のフレームｎ−１で乗り換え候補として予め用意されていた領域指定範囲１３３内（右目１０２を含む剛体としての顔１０４内）の点の中から１つの点（例えば、顔１０４に含まれる左目１０３（正確には、その中の１つの画素））が選択され、その点がフレームｎ＋１における、追尾点とされる。
【００８６】
領域推定関連処理部５５は、図１０のステップＳ１２６における領域推定関連処理を実行するために、図１３に示されるような構成を有している。すなわち、領域推定関連処理部５５の領域推定部１６１には、動き推定部５２より動きベクトルと確度が入力され、背景動き推定部５４より背景動きが入力され、そして追尾点決定部５７より追尾点の位置情報が入力される。乗り換え候補抽出部１６２には、動き推定部５２より動きベクトルと確度が供給される他、領域推定部１６１の出力が供給される。テンプレート作成部１６３には、入力画像が入力される他、領域推定部１６１の出力が入力される。
【００８７】
領域推定部１６１は、入力に基づいて、追尾点を含む剛体の領域を推定し、推定結果を乗り換え候補抽出部１６２とテンプレート作成部１６３に出力する。乗り換え候補抽出部１６２は入力に基づき乗り換え候補を抽出し、抽出した乗り換え候補を乗り換え候補保持部５６へ供給する。テンプレート作成部１６３は入力に基づきテンプレートを作成し、作成したテンプレートをテンプレート保持部５８へ供給する。
【００８８】
図１４は、領域推定関連処理部５５により実行される領域推定関連処理（図１０のステップＳ１２６の処理）の詳細を表している。最初にステップＳ１６１において、領域推定部１６１により領域推定処理が実行される。その詳細は、図１５を参照して後述するが、この処理により、追尾点が属する対象と同一の対象（追尾点と同期した動きをする剛体）に属すると推定される画像上の領域の点が領域推定範囲の点として抽出される。
【００８９】
ステップＳ１６２において、乗り換え候補抽出部１６２により乗り換え候補抽出処理が実行される。その処理の詳細は、図２０を参照して後述するが、領域推定部１６１により領域推定範囲として推定された範囲の点から乗り換え候補の点が抽出され、乗り換え候補保持部５６に保持される。
【００９０】
ステップＳ１６３においてテンプレート作成部１６３によりテンプレート作成処理が実行される。その詳細は、図２１を参照して後述するが、この処理によりテンプレートが作成される。
【００９１】
次に、図１５のフローチャートを参照して、図１４のステップＳ１６１の領域推定処理の詳細について説明する。
【００９２】
最初に、ステップＳ１８１において、領域推定部１６１は、追尾点と同一の対象に属すると推定される点の候補の点としてのサンプル点を決定する。
【００９３】
このサンプル点は、例えば図１６に示されるように、図中、白い四角形で示されるフレームの全画面における画素のうち、固定された基準点２０１を基準として、水平方向および垂直方向に、所定の画素数ずつ離れた位置の画素をサンプル点（図中、黒い四角形で表されている）とすることができる。図１６の例においては、各フレームの左上の画素が基準点２０１とされ（図中基準点２０１は×印で示されている）、水平方向に５個、並びに垂直方向に５個ずつ離れた位置の画素がサンプル点とされる。すなわち、この例の場合、全画面中に分散した位置の画素がサンプル点とされる。また、この例の場合、基準点は、各フレームｎ，ｎ＋１において固定された同一の位置の点とされる。
【００９４】
なお、基準点２０１は、各フレームｎ，ｎ＋１毎に異なる位置の点となるように、動的に変化させることもできる。
【００９５】
また、図１６の例においては、サンプル点の間隔が各フレームにおいて固定された値とされているが、フレーム毎にサンプル点の間隔を、例えば、フレームｎにおいては５画素、フレームｎ＋１においては８画素と可変とすることもできる。このときの間隔の基準としては、追尾点と同一の対象に属すると推定される領域の面積を用いることができる。具体的には、領域推定範囲の面積が狭くなれば間隔も短くなる。
【００９６】
あるいはまた、１つのフレーム内においてサンプル点の間隔を可変とすることもできる。このときの間隔の基準としては、追尾点からの距離を用いることができる。すなわち、追尾点に近いサンプル点ほど間隔が小さく、追尾点から遠くなるほど間隔が大きくなる。
【００９７】
以上のようにしてサンプル点が決定されると、次にステップＳ１８２において、領域推定部１６１は、領域推定範囲（図１１のステップＳ１４３，Ｓ１４４の処理、または、後述する図１７のステップＳ２０６，Ｓ２０８の処理で決定されている）内のサンプル点の動きを推定する処理を実行する。すなわち、領域推定部１６１は、動き推定部５２より供給された動きベクトルに基づいて、領域推定範囲内のサンプル点に対応する次のフレームの対応する点を抽出する。
【００９８】
ステップＳ１８３において、領域推定部１６１は、ステップＳ１８２の処理で推定したサンプル点のうち、確度が予め設定されている閾値より低い動きベクトルに基づく点を対象外とする処理を実行する。この処理に必要な動きベクトルの確度は、動き推定部５２より供給される。これにより、領域推定範囲内のサンプル点のうち、確度が高い動きベクトルに基づいて推定された点だけが抽出される。
【００９９】
ステップＳ１８４において、領域推定部１６１は、領域推定範囲内の動き推定結果での全画面動きを抽出する。全画面動きとは、同一の動きに対応する領域を考え、その面積が最大となる動きのことを意味する。具体的には、各サンプル点の動きに、そのサンプル点におけるサンプル点間隔に比例する重みを付けて動きのヒストグラムを生成し、この重み付け頻度が最大となる１つの動き（１つの動きベクトル）が全画面動きとして抽出される。なお、ヒストグラムを生成する場合、例えば、動きの代表値を画素精度で準備し、画素精度で１個となる値を持つ動きについてもヒストグラムへの加算を行うようにすることもできる。
【０１００】
ステップＳ１８５において、領域推定部１６１は、全画面動きを持つ領域推定範囲内のサンプル点を領域推定の結果として抽出する。この場合における全画面動きを持つサンプル点としては、全画面動きと同一の動きを持つサンプル点はもちろんのこと、全画面動きとの動きの差が予め設定されている所定の閾値以下である場合には、そのサンプル点もここにおける全画面動きを持つサンプル点とすることも可能である。
【０１０１】
このようにして、ステップＳ１４３，Ｓ１４４，Ｓ２０６，Ｓ２０８の処理で決定された領域推定範囲内のサンプル点のうち、全画面動きを有するサンプル点が、追尾点と同一対象に属すると推定される点として最終的に抽出（生成）される。
【０１０２】
次に、ステップＳ１８６において、領域推定部１６１は、領域推定範囲の更新処理を実行する。その後、処理は、図１０のステップＳ１２２に進む。
【０１０３】
図１７は、図１５のステップＳ１８６の領域推定範囲の更新処理の詳細を表している。ステップＳ２０１において、領域推定部１６１は、領域の重心を算出する。この領域とは、図１５のステップＳ１８５の処理で抽出されたサンプル点で構成される領域（追尾点と同一対象に属すると推定される点で構成される領域）を意味する。すなわち、この領域には１つの動きベクトル（全画面動き）が対応している。例えば、図１８Ａに示されるように、図中白い四角形で示されるサンプル点のうち、領域推定範囲２２１内のサンプル点の中から、図１５のステップＳ１８５の処理で全画面動きを持つサンプル点として、図１８Ａにおいて黒い四角形で示されるサンプル点が抽出され、そのサンプル点で構成される領域が、領域２２２として抽出（推定）される。そして、領域２２２の重心２２４がさらに算出される。具体的には、各サンプル点にサンプル点間隔の重みを付けたサンプル点重心が領域の重心として求められる。この処理は、現フレームにおける領域の位置を求めるという意味を有する。
【０１０４】
次にステップＳ２０２において、領域推定部１６１は、領域の重心を全画面動きによりシフトする処理を実行する。この処理は、領域推定範囲２２１を領域の位置の動きに追従させ、次フレームにおける推定位置に移動させるという意味を有する。図１８Ｂに示されるように、現フレームにおける追尾点２２３が、その動きベクトル２３８に基づいて次フレームにおいて追尾点２３３として出現する場合、全画面動きベクトル２３０が、追尾点の動きベクトル２３８にほぼ対応しているので、現フレームにおける重心２２４を動きベクトル２３０（全画面動き）に基づいてシフトすることで、追尾点２３３と同一のフレーム（次フレーム）上の点２３４が求められる。この点２３４を中心として領域推定範囲２３１を設定すれば、領域推定範囲２２１を領域２２２の位置の動きに追従させて、次のフレームにおける推定位置に移動させることになる。
【０１０５】
ステップＳ２０３において、領域推定部１６１は、領域推定結果に基づき、次の領域推定範囲の大きさを決定する。具体的には、領域と推定された全てのサンプル点に関するサンプル点の間隔（図１８Ａにおける領域２２２の中の黒い四角形で示される点の間隔）の２乗和を領域２２２の面積と見なし、この面積よりも少し大きめの大きさとなるように、次フレームにおける領域推定範囲２３１の大きさが決定される。すなわち、領域推定範囲２３１の大きさは、領域２２２の中のサンプル点の数が多ければ広くなり、少なければ狭くなる。このようにすることで、領域２２２の拡大縮小に追従することができるばかりでなく、領域推定範囲２２１内の全画面領域が追尾対象の周辺領域となるのを防ぐことができる。
【０１０６】
図１５のステップＳ１８４で抽出された全画面動きが、背景動きと一致する場合には、動きにより背景と追尾対象を区別することができない。そこで、背景動き推定部５４は背景動き推定処理を常に行っており、ステップＳ２０４において、領域推定部１６１は、背景動き推定部５４より供給される背景動きと、図１５のステップＳ１８４の処理で抽出された全画面動きとが一致するか否かを判定する。全画面動きと背景動きが一致する場合には、ステップＳ２０５において、領域推定部１６１は、次の領域推定範囲の大きさを、今の領域推定範囲の大きさが最大となるように制限する。これにより、背景が追尾対象として誤認識され、領域推定範囲の大きさが拡大してしまうようなことが抑制される。
【０１０７】
ステップＳ２０４において、全画面動きと背景動きが一致しないと判定された場合には、ステップＳ２０５の処理は必要がないのでスキップされる。
【０１０８】
次に、ステップＳ２０６において、領域推定部１６１は、シフト後の領域重心を中心として次の領域推定範囲の大きさを決定する。これにより、領域推定範囲が、その重心が既に求めたシフト後の領域重心と一致し、かつ、その大きさが領域の広さに比例するように決定される。
【０１０９】
図１８Ｂの例では、領域推定範囲２３１が、動きベクトル（全画面動き）２３０に基づくシフト後の重心２３４を中心として、領域２２２の面積に応じた広さに決定されている。
【０１１０】
領域推定範囲２３１内での全画面動きを有する領域が追尾対象（例えば、図１２の顔１０４）の領域であることを担保する（確実にする）必要がある。そこで、ステップＳ２０７において、領域推定部１６１は、追尾点が次の領域推定範囲に含まれるか否かを判定し、含まれていない場合には、ステップＳ２０８において、追尾点を含むように次の領域推定範囲をシフトする処理を実行する。追尾点が次の領域推定範囲に含まれている場合には、ステップＳ２０８の処理は必要がないのでスキップされる。
【０１１１】
この場合における具体的なシフトの方法としては、移動距離が最小となるようにする方法、シフト前の領域推定範囲の重心から追尾点に向かうベクトルに沿って追尾点が含まれるようになる最小距離だけ移動する方法などが考えられる。
【０１１２】
なお、追尾のロバスト性を重視するために、領域に追尾点を含むようにするためのシフトを行わない方法も考えられる。
【０１１３】
図１８Ｃの例においては、領域推定範囲２３１が追尾点２３３を含んでいないので、領域推定範囲２４１として示される位置（追尾点２３３をその左上に含む位置）に領域推定範囲２４１がシフトされる。
【０１１４】
図１８Ａ乃至図１８Ｃは、ステップＳ２０８のシフト処理が必要な場合を示しているが、図１９Ａ乃至図１９Ｃは、ステップＳ２０８のシフト処理が必要でない場合（ステップＳ２０７において追尾点が次の領域推定範囲に含まれると判定された場合）の例を表している。
【０１１５】
図１９Ａ乃至図１９Ｃに示されるように、領域推定範囲２２１内のすべてのサンプル点が領域の点である場合には、図１７のステップＳ２０８のシフト処理が必要なくなることになる。
【０１１６】
図１８Ａ乃至図１８Ｃと図１９Ａ乃至図１９Ｃは、領域推定範囲が矩形である例を示したが、領域推定範囲は円形とすることも可能である。
【０１１７】
以上のようにして、図１７（図１５のステップＳ１８６）の領域推定範囲の更新処理により、次フレームのための領域推定範囲の位置と大きさが追尾点を含むように決定される。
【０１１８】
図１７の領域推定範囲の更新処理においては、領域推定範囲を矩形（または円形）の固定形状としたが、可変形状とすることも可能である。
【０１１９】
次に図１４のステップＳ１６２における乗り換え候補抽出処理について、図２０のフローチャートを参照して説明する。
【０１２０】
ステップＳ２６１において、乗り換え候補抽出部１６２は、全画面動きの領域と推定されたすべての点につき、それぞれに対応する推定動きでの点のシフト結果を乗り換え候補として保持する。すなわち、領域推定結果として得られた点をそのまま用いるのではなく、それらを次のフレームでの使用のために、それぞれの動き推定結果に基づきシフトされた結果を抽出する処理が行われ、その抽出された乗り換え候補が、乗り換え候保持部５６に供給され、保持される。
【０１２１】
この処理を、図１２を参照して説明すると、次のようになる。すなわち、図１２の例において、フレームｎ−１，ｎでは追尾点１０１が存在するが、フレームｎ＋１においては、図中左側から飛んできたボール１２１により隠されてしまい、追尾点１０１が存在しない。そこでフレームｎ＋１において、追尾点を追尾対象としての顔１０４上の他の点（例えば、左目１０３（実際には右目１０２にもっと近接した点））に乗り換える必要が生じる。そこで、乗り換えが実際に必要になる前のフレームで、乗り換え候補を予め用意しておくのである。
【０１２２】
具体的には、図１２の例の場合、フレームｎからフレームｎ＋１への領域推定範囲１３３内での動き推定結果は、領域推定範囲１３３において乗り換えが必要なことから、正しく推定できない確率が高いことが予想される。すなわち、図１２の例では、乗り換えが追尾点と、それと同一の対象物の一部が隠れることに起因して起きる。その結果、フレームｎでの領域推定範囲１３３のうち、フレームｎ＋１で対象が隠れる部分（図１２において影を付した部分）１３４については、動きが正しく推定されず、動きの確度が低いことが推定されるか、または確度が低くないと推定され、かつ、動き推定結果としては意味のないものが得られることになる。
【０１２３】
このような場合には、領域推定の際に用いることが可能な動き推定結果が減少する、あるいは誤った動き推定結果が混入するなどの理由で、領域推定が誤る可能性が高まる。一方、このような可能性は、一般的に、より時間的に前のフレームｎ−１からフレームｎの間での領域推定においては、フレームｎからフレームｎ＋１での間での推定に比較して低くなることが予想される。
【０１２４】
そこで、リスク低減のため、領域推定結果をそのまま用いるのではなく、前のフレームｎ−１（あるいは、時間的にもっと前のフレーム）で求めた領域推定結果を、その次のフレームでの移動先の乗り換え候補として用いるのが性能向上の上で望ましい。
【０１２５】
ただし、領域推定結果をそのまま用いることも可能である。
【０１２６】
図２１は、図１４のステップＳ１６３におけるテンプレート作成処理の詳細を表している。ステップＳ２８１においてテンプレート作成部１６３は、領域（全画面動きの領域）と推定されたすべての点につき、それぞれに対応する小領域を決定する。図２２の例においては、領域の点３２１に対応して小領域３２２が決定されている。
【０１２７】
ステップＳ２８２において、テンプレート作成部１６３は、ステップＳ２８１の処理で決定された小領域の和の領域をテンプレート範囲に設定する。図２２の例においては、小領域３２２の和の領域がテンプレート範囲３３１とされている。
【０１２８】
次にステップＳ２８３において、テンプレート作成部１６３は、ステップＳ２８２において設定したテンプレート範囲の情報と画像情報からテンプレートを作成し、テンプレート保持部５８に供給し、保持させる。具体的には、テンプレート範囲３３１内の画素データがテンプレートとされる。
【０１２９】
図２３は、領域の点３２１に対応する小領域３４１が、図２２における小領域３２２に較べてより大きな面積とされている。その結果、小領域３４１の和の領域のテンプレート範囲３５１も、図２２のテンプレート範囲３３１に較べてより広くなっている。
【０１３０】
小領域の大きさは、サンプル点の間隔に比例させることが考えられるが、その際の比例定数は、面積がサンプル点間隔の自乗になるように決めることもできるし、それより大きくまたは小さく決めることも可能である。
【０１３１】
なお、領域推定結果を用いず、例えば追尾点を中心とする固定の大きさや形状の範囲をテンプレート範囲として用いることも可能である。
【０１３２】
図２４は、テンプレートと領域推定範囲の位置関係を表している。テンプレート範囲４０３には、追尾点４０５が含まれている。テンプレート範囲４０３に外接する外接矩形４０１の図中左上の点がテンプレート基準点４０４とされている。テンプレート基準点４０４から追尾点４０５に向かうベクトル４０６、並びにテンプレート基準点４０４から領域推定範囲４０２の図中左上の基準点４０８に向かうベクトル４０７が、テンプレート範囲４０３の情報とされる。テンプレートは、テンプレート範囲４０３に含まれる画素で構成される。ベクトル４０６，４０７は、テンプレートと同じ画像が検出された際の通常処理への復帰に用いられる。
【０１３３】
以上の処理においては、乗り換え候補の場合と異なり、範囲、画素ともに、現フレームに対応するものをテンプレートとする例を説明したが、乗り換え候補の場合と同様に、次フレームでの移動先をテンプレートとして用いることも可能である。
【０１３４】
以上のようにして、追尾点を含む画素データからなるテンプレートが乗り換え候補と同様に、通常処理中に、予め作成される。
【０１３５】
以上に説明した図５のステップＳ５１の通常処理に続いて行われるステップＳ５２の例外処理の詳細について、図２５のフローチャートを参照して説明する。この処理は、上述したように、図１０のステップＳ１２４において追尾点の動きを推定することが不可能と判定され、さらにステップＳ１２８において追尾点を乗り換える乗り換え候補が選択できなかったと判定された場合に実行されることになる。
【０１３６】
ステップＳ４０１において、制御部５９は、例外処理の初期化処理を実行する。この処理の詳細は図２６のフローチャートに示されている。
【０１３７】
ステップＳ４２１において、制御部５９は、追尾点の追尾ができなくなった際（追尾点の動きを推定することが不可能かつ、追尾点を乗り換える乗り換え候補が選択できなかった際）にシーンチェンジが起きていたか否かを判定する。シーンチェンジ検出部５３は、動き推定部５２の推定結果に基づいてシーンチェンがあったか否かを常に監視しており、制御部５９は、そのシーンチェンジ検出部５３の検出結果に基づいて、ステップＳ４２１の判定を実行する。シーンチェンジ検出部５３の具体的処理については、図３８と図３９を参照して後述する。
【０１３８】
シーンチェンジが起きている場合、追尾ができなくなった理由が、シーンチェンジが発生したことによるものと推定して、ステップＳ４２２において制御部５９は、モードをシーンチェンジに設定する。これに対して、ステップＳ４２１においてシーンチェンジが発生していないと判定された場合には、制御部５９は、ステップＳ４２３においてモードをその他のモードに設定する。
【０１３９】
ステップＳ４２２またはステップＳ４２３の処理の後、ステップＳ４２４においてテンプレートマッチング部５１は、時間的に最も古いテンプレートを選択する処理を実行する。具体的には、図２７に示されるように、例えばフレームｎからフレームｎ＋１に移行するとき、例外処理が実行されるものとすると、フレームｎ−ｍ＋１からフレームｎに関して生成され、テンプレート保持部５８に保持されているｍ個のフレームのテンプレートの中から、時間的に最も古いテンプレートであるフレームｎ−ｍ＋１に関して生成されたテンプレートが選択される。
【０１４０】
このように例外処理への移行直前のテンプレート（図２７の例の場合フレームｎに関して生成されたテンプレート）を用いずに、時間的に少し前のテンプレートを選択するのは、追尾対象のオクルージョンなどで例外処理への移行が発生した場合には、移行の直前には追尾対象が既にかなり隠れており、その時点のテンプレートでは、追尾対象を充分に大きく捉えることができない可能性が高いからである。従って、このように時間的に若干前のフレームにおけるテンプレートを選択することで、確実な追尾が可能となる。
【０１４１】
次に、ステップＳ４２５において、テンプレートマッチング部５１は、テンプレート探索範囲を設定する処理を実行する。テンプレート探索範囲は、例えば、例外処理に移行する直前の追尾点の位置がテンプレート探索範囲の中心となるように設定される。
【０１４２】
すなわち、図２８に示されるように、フレームｎにおいて被写体の顔１０４の右目１０２が追尾点１０１として指定されている場合において、図中左方向からボール１２１が飛んできて、フレームｎ＋１において追尾点１０１を含む顔１０４が隠れ、フレームｎ＋２において、再び追尾点１０１が現れる場合を想定する。この場合において、追尾点１０１（テンプレート範囲４１１に含まれる）を中心とする領域がテンプレート探索範囲４１２として設定される。
【０１４３】
ステップＳ４２６において、テンプレートマッチング部５１は、例外処理への移行後の経過フレーム数およびシーンチェンジ数を０にリセットする。このフレーム数とシーンチェンジ数は、後述する図２５のステップＳ４０５における継続判定処理（図３０のステップＳ４６１，Ｓ４６３，Ｓ４６５，Ｓ４６７）において使用される。
【０１４４】
以上のようにして、例外処理の初期化処理が終了した後、図２５のステップＳ４０２において、制御部５９は次のフレームを待つ処理を実行する。ステップＳ４０３において、テンプレートマッチング部５１は、テンプレート探索範囲内においてテンプレートマッチング処理を行う。ステップＳ４０４においてテンプレートマッチング部５１は、通常処理への復帰が可能であるか否かを判定する。
【０１４５】
具体的には、テンプレートマッチング処理により、数フレーム前のテンプレート（図２８のテンプレート範囲４１１内の画素）と、テンプレート探索範囲内のマッチング対象の画素の差分の絶対値和が演算される。より詳細には、テンプレート範囲４１１内の所定のブロックと、テンプレート探索範囲内の所定のブロックにおけるそれぞれの画素の差分の絶対値和が演算される。ブロックの位置がテンプレート範囲４１１内で順次移動され、各ブロックの差分の絶対値和が加算され、そのテンプレートの位置における値とされる。そして、テンプレートをテンプレート探索範囲内で順次移動させた場合における差分の絶対値和が最も小さくなる位置とその値が検索される。ステップＳ４０４において、最小の差分の絶対値和が、予め設定されている所定の閾値と比較される。差分の絶対値和が閾値以下である場合には、追尾点（テンプレートに含まれている）を含む画像が再び出現したことになるので、通常処理への復帰が可能であると判定され、処理は図５のステップＳ５１の通常処理に戻る。
【０１４６】
そして上述したように、図１１のステップＳ１４１において、例外処理からの復帰であると判定され、ステップＳ１４４において、差分絶対値和が最小となる位置をテンプレートのマッチした位置として、このマッチした位置とテンプレートに対応して保持してあったテンプレート位置と追尾点領域推定範囲の位置関係から、追尾点と領域推定範囲の設定が行われる。すなわち、図２４を参照して上述したように、追尾点４０５を基準とするベクトル４０６，４０７に基づいて、領域推定範囲４０２が設定される。
【０１４７】
ただし、図１４のステップＳ１６１の領域推定処理において、領域推定範囲を用いない手法を用いる場合には、領域推定範囲の設定は行われない。
【０１４８】
図２５のステップＳ４０４における通常処理への復帰が可能であるか否かの判定は、最小の差分絶対値和をテンプレートのアクティビティで除算して得られる値を閾値と比較することで行うようにしてもよい。この場合におけるアクティビティは、後述する図３１のアクティビティ算出部６０２により、図３２のステップＳ６０３において算出された値を用いることができる。
【０１４９】
あるいはまた、今回の最小の差分絶対値和を１フレーム前における最小の差分絶対値和で除算することで得られた値を所定の閾値と比較することで、通常処理への復帰が可能であるか否かを判定するようにしてもよい。この場合、アクティビティの計算が不要となる。すなわち、ステップＳ４０４では、テンプレートとテンプレート探索範囲の相関が演算され、相関値と閾値の比較に基づいて判定が行われる。
【０１５０】
ステップＳ４０４において、通常処理への復帰が可能ではないと判定された場合、ステップＳ４０５に進み、継続判定処理が実行される。継続判定処理の詳細は、図３０を参照して後述するが、これにより、例外処理が継続可能であるか否かの判定が行われる。
【０１５１】
ステップＳ４０６において、制御部５９は、例外処理（例外処理での追尾点の追尾）が継続可能であるか否かを継続判定処理の結果に基づいて（後述する図３０のステップＳ４６６，Ｓ４６８で設定されたフラグに基づいて）判定する。例外処理が継続可能である場合には、処理はステップＳ４０２に戻り、それ以降の処理が繰り返し実行される。すなわち、追尾点が再び出現するまで待機する処理が繰り返し実行される。
【０１５２】
これに対して、ステップＳ４０６において、例外処理が継続可能ではないと判定された場合（後述する図３０のステップＳ４６５で、追尾点が消失した後の経過フレーム数が閾値THfr以上と判定されるか、または、ステップＳ４６７でシーンチェンジ数が閾値THsc以上と判定された場合）、最早、追尾処理は不可能として、追尾処理は終了される。なお、追尾処理を終了するのではなく、保持しておいた追尾点を用いて再度通常処理に戻るようにすることも考えられる。この場合の例外処理は、図２９に示されている。なお、図２９のステップＳ４４１乃至Ｓ４４５の処理は、図２５のステップＳ４０１乃至Ｓ４０５と同様の処理であるので、その説明を省略する。
【０１５３】
すなわち、ステップＳ４４５の継続判定処理により、例外処理が継続可能であるか否かの判定が行われると、その後、ステップＳ４４６において、制御部５９は、例外処理（例外処理での追尾点の追尾）が継続可能であるか否かを継続判定処理の結果に基づいて（後述する図３０のステップＳ４６６，Ｓ４６８で設定されたフラグに基づいて）判定する。例外処理が継続可能である場合には、処理はステップＳ４４２に戻り、それ以降の処理が繰り返し実行される。すなわち、追尾点が再び出現するまで待機する処理が繰り返し実行される。
【０１５４】
これに対して、ステップＳ４４６において、例外処理が継続可能ではないと判定された場合（後述する図３０のステップＳ４６５で、追尾点が消失した後の経過フレーム数が閾値THfr以上と判定されるか、または、ステップＳ４６７でシーンチェンジ数が閾値THsc以上と判定された場合）、最早、例外処理は不可能として、処理は図５のステップＳ１０５１の通常処理に戻る。
【０１５５】
そして、この場合、上述したように、図１１のステップＳ１４１において、例外処理からの復帰であると判定され、ステップＳ１４４において、保持しておいた例外処理に移行する直前の追尾点の位置に基づき、追尾点と領域推定範囲が設定される。
【０１５６】
図３０は、図２５のステップＳ４０５（または図２９のステップＳ４４５）における継続判定処理の詳細を表している。ステップＳ４６１において、制御部５９は、変数としての経過フレーム数に１を加算する処理を実行する。経過フレーム数は、図２５のステップＳ４０１の例外処理の初期化処理（図２６のステップＳ４２６）において、予め０にリセットされている。
【０１５７】
次にステップＳ４６２において、制御部５９は、シーンチェンジがあるか否かを判定する。シーンチェンジがあるか否かは、シーンチェンジ検出部５３が、常にその検出処理を実行しており、その検出結果に基づいて判定が可能である。シーンチェンジがある場合には、ステップＳ４６３に進み、制御部５９は変数としてのシーンチェンジ数に１を加算する。このシーンチェンジ数も、図２６のステップＳ４２６の初期化処理において０にリセットされている。通常処理から例外処理への移行時にシーンチェンジが発生していない場合には、ステップＳ４６３の処理はスキップされる。
【０１５８】
次に、ステップＳ４６４において、制御部５９は、現在設定されているモードがシーンチェンジであるか否かを判定する。このモードは、図２６のステップＳ４２２，Ｓ４２３において設定されたものである。現在設定されているモードがシーンチェンジである場合には、ステップＳ４６７に進み、制御部５９は、シーンチェンジ数が予め設定されている閾値THscより小さいか否かを判定する。シーンチェンジ数が閾値THscより小さい場合には、ステップＳ４６６に進み、制御部５９は継続可のフラグを設定し、シーンチェンジ数が閾値THsc以上である場合には、ステップＳ４６８に進み、継続不可のフラグを設定する。
【０１５９】
一方、ステップＳ４６４において、モードがシーンチェンジではないと判定された場合（モードがその他であると判定された場合）、ステップＳ４６５に進み、制御部５９は、経過フレーム数が閾値THfrより小さいか否かを判定する。この経過フレーム数も、図２６の例外処理の初期化処理のステップＳ４２６において、予め０にリセットされている。経過フレーム数が閾値THfrより小さいと判定された場合には、ステップＳ４６６において、継続可のフラグが設定され、経過フレーム数が閾値THfr以上であると判定された場合には、ステップＳ４６８において、継続不可のフラグが設定される。
【０１６０】
このように、テンプレートマッチング処理時におけるシーンチェンジ数が閾値THsc以上になるか、または経過フレーム数が閾値THfr以上になった場合には、それ以上の例外処理は不可能とされる。
【０１６１】
なお、モードがその他である場合には、シーンチェンジ数が０であるという条件も加えて、継続が可能であるか否かを判定するようにしてもよい。
【０１６２】
以上においては、画像のフレームを処理単位とし、すべてのフレームを用いることを前提としたが、フィールド単位で処理したり、すべてのフレームまたはフィールドを利用するのではなく、所定の間隔で間引いて抽出されたフレームまたはフィールドを用いるようにすることも可能である。
【０１６３】
また、以上においては、乗り換え候補として、推定した領域内の点の移動先を用いるようにしたが、この場合、全画面動きが（０，０）であったとしても、領域内の各点が、（−１，１）、（１，０）等の動きを持っているときは、それぞれの動きの分だけシフトされる。移動先の点をそのまま乗り換え候補として用いるのではなく、予め求められたサンプル点のうち、最も近い点を乗り換え候補とすることも可能である。勿論、処理負荷軽減のため、各点を、全画面動きの分だけシフトしてもよい。
【０１６４】
さらに、乗り換え候補として、推定した領域内の点の移動先を用いるのではなく、領域内の点をそのまま用いるようにすることも可能である。
【０１６５】
次に、図３１を参照して、図３の動き推定部５２の構成例について説明する。この実施の形態においては、入力画像が、評価値算出部６０１、アクティビティ算出部６０２、および動きベクトル検出部６０６に供給されている。評価値算出部６０１は、動きベクトルにより対応付けられる両対象の一致度に関する評価値を算出し、正規化処理部６０４に供給する。アクティビティ算出部６０２は、入力画像のアクティビティを算出し、閾値判定部６０３と正規化処理部６０４に供給する。動きベクトル検出部６０６は、入力画像から動きベクトルを検出し、評価値算出部６０１と統合処理部６０５に供給する。
【０１６６】
正規化処理部６０４は、評価値算出部６０１より供給された評価値を、アクティビティ算出部６０２より供給されたアクティビティに基づいて正規化し、得られた値を統合処理部６０５に供給する。閾値判定部６０３は、アクティビティ算出部６０２より供給されたアクティビティを所定の閾値と比較し、その判定結果を統合処理部６０５に供給する。統合処理部６０５は、正規化処理部６０４から供給された正規化情報と、閾値判定部６０３より供給された判定結果に基づいて、動きベクトルの確度を演算し、得られた確度を動きベクトル検出部６０６より供給された動きベクトルとともに出力する。
【０１６７】
次に、図３２のフローチャートを参照して、動き推定部５２の動き推定処理について説明する。動きベクトルは、点に対するものとして求められているが、その確度は、動きベクトルにより対応付けられる２つの点の近傍の、例えば点を中心とする、小ブロックの画像データを用いて計算される。ステップＳ６０１において、動きベクトル検出部６０６は、入力画像から動きベクトルを検出する。この検出には、例えばブロックマッチング方式や勾配法が用いられる。検出された動きベクトルは、評価値算出部６０１と統合処理部６０５に供給される。
【０１６８】
ステップＳ６０２において、評価値算出部６０１は評価値を算出する。具体的には、例えば、動きベクトルで対応付けられる２つの点を中心とする２つのブロックの画素値の差分絶対値和が算出される。すなわち、ステップＳ６０１で動きベクトル検出部６０６により検出された動きベクトルＶ（ｖｘ，ｖｙ）と、それに基づく時間的に前のフレームの画像Ｆｉ上の点Ｐ（Ｘｐ，Ｙｐ）、並びに時間的に後のフレームの画像Ｆｊ上の点Ｑ（Ｘｑ，Ｙｑ）の関係は次式で表される。
【０１６９】
【数１】
0004826316.tif 000002
【０１７０】
評価値算出部６０１は点Ｐを中心とするブロックと、点Ｑを中心とするブロックについて、次式に基づいて評価値Ｅｖａｌ（Ｐ，Ｑ，ｉ，ｊ）を演算する。
【０１７１】
【数２】
0004826316.tif 000003
【０１７２】
各ブロックは、１辺が２Ｌ＋１画素の正方形とされている。上記式における総和ΣΣは、ｘが−ＬからＬについて、ｙが−ＬからＬについて、対応する画素同士で行われる。従って、例えば、Ｌ＝２である場合、９個の差分が得られ、その絶対値の総和が演算される。評価値は、その値が０に近づくほど、２つのブロックがよく一致していることを表している。
【０１７３】
評価値算出部６０１は、生成した評価値を正規化処理部６０４に供給する。
【０１７４】
ステップＳ６０３において、アクティビティ算出部６０２は、入力画像からアクティビティを算出する。アクティビティは、画像の複雑さを表す特徴量であり、図３３に示されるように、各画素毎に注目画素Ｙ（ｘ，ｙ）と、それに隣接する８画素Ｙ（ｘ＋ｉ，ｙ＋ｊ）との差分絶対値和の平均値が、注目画素位置のアクティビティActivity(x,y)として次式に基づいて演算される。
【０１７５】
【数３】
0004826316.tif 000004
【０１７６】
図３３の例の場合、３×３画素のうち、中央に位置する注目画素Ｙ（ｘ，ｙ）の値は１１０であり、それに隣接する８個の画素の値は、それぞれ８０，７０，７５，１００，１００，１００，８０，８０であるから、アクティビティActivity(x,y)は次式で表される。
【０１７７】
Activity(x,y)  ＝｛｜８０−１１０｜＋｜７０−１１０｜＋｜７５−１１０｜＋｜１００−１１０｜＋｜１００−１１０｜＋｜１００−１１０｜＋｜８０−１１０｜＋｜８０−１１０｜｝／８  ＝２４．３７５となる。
【０１７８】
同様の処理が、そのフレームのすべての画素について実行される。
【０１７９】
ブロック単位で動きベクトル確度を算出するため、次式で表されるブロック内の全画素のアクティビティの総和が、そのブロックのアクティビティ（ブロックアクティビティ）Blockactivity(i,j)と定義される。
【０１８０】
【数４】
0004826316.tif 000005
【０１８１】
なお、アクティビティとしては、この他、分散値、ダイナミックレンジなどとすることも可能である。
【０１８２】
閾値判定部６０３は、ステップＳ６０４において、アクティビティ算出部６０２により算出されたブロックアクティビティを予め設定されている所定の閾値と比較する。そして、入力されたブロックアクティビティが閾値より大きいか否かを表すフラグを統合処理部６０５に出力する。
【０１８３】
具体的には、実験の結果、ブロックアクティビティと評価値は、動きベクトルをパラメータとして、図３４に示される関係を有する。図３４において、横軸はブロックアクティビティBlockactivity(i,j)を表し、縦軸は評価値Evalを表している。動きが正しく検出されている場合（正しい動きベクトルが与えられている場合）、そのブロックアクティビティと評価値の値は、曲線６２１より図中下側の領域Ｒ１に分布する。これに対して誤った動き（不正解の動きベクトル）が与えられた場合、そのブロックアクティビティと評価値の値は、曲線６２２より、図中左側の領域Ｒ２に分布する（曲線６２２より上側の領域Ｒ２以外の領域と曲線６２１より下側の領域Ｒ１以外の領域には殆ど分布がない）。曲線６２１と曲線６２２は、点Ｐにおいて交差する。この点Ｐにおけるブロックアクティビティの値が閾値THaとされる。閾値THaは、ブロックアクティビティの値がそれより小さい場合には、対応する動きベクトルが正しくない可能性があることを意味する（この点については後に詳述する）。閾値判定部６０３は、アクティビティ算出部６０２より入力されたブロックアクティビティの値が、この閾値THaより大きいか否かを表すフラグを統合処理ブロック６０５に出力する。
【０１８４】
ステップＳ６０５において、正規化処理部６０４は、正規化処理を実行する。具体的には、正規化処理部６０４は、次式に従って動きベクトル確度VCを演算する。
【０１８５】
【数５】
0004826316.tif 000006
【０１８６】
但し、動きベクトル確度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の平均値が閾値より小さい場合には、ステップＳ６８５において、閾値判定部６７２はシーンチェンジフラグをオンし、閾値より小さくない場合（閾値以上である場合）、ステップＳ５８６において、シーンチェンジフラグをオフにする。シーンチェンジフラグのオンは、シーンチェンジがあったことを表し、そのオフは、シーンチェンジが無いことを表す。
【０２０６】
このシーンチェンジフラグは、制御部５９へ供給され、図２６のステップＳ４２１におけるシーンチェンジの有無の判定に利用される。
【０２０７】
次に、図４０を参照して、図３の提示位置算出部４２の詳細な構成例と、その動作について説明する。図４０は提示位置算出部４２の機能的構成例を示すブロック図である。この例では、提示位置算出部４２は、乗り換え量算出部７０１、追尾点記憶部７０２、反映乗り換え量算出部７０３、中心点設定部７０５、および中心点記憶部７０６により構成される。
【０２０８】
提示位置算出部４２の乗り換え量算出部７０１および中心点設定部７０５には、追尾処理部４１からの追尾点に関する情報（追尾点情報）およびその追尾点に対応する動きベクトル（すなわち、動き量）が入力される。追尾点に関する情報は、例えば、追尾点の位置情報やその乗り換えの履歴情報などで構成される。
【０２０９】
乗り換え量算出部７０１は、入力に基づいて、追尾処理部４１の追尾点決定部５７により決定された追尾点が、乗り換え点に乗り換えられたものであるか否かを判定し、判定結果に応じて、追尾点決定部５７により現フレームにおいて決定された追尾点（以下、現在追尾点とも称する）の位置情報、追尾点記憶部７０２に記憶される前フレームにおいて求められた追尾点（以下、過去追尾点とも称する）の位置情報、並びに、現在追尾点に対応する動きベクトルに基づき、乗り換えベクトルを算出する。
【０２１０】
すなわち、乗り換えベクトルとは、過去追尾点および乗り換え点に基づいて求められる、過去追尾点から乗り換え点への動き量である。なお、図４０の例においては、乗り換えベクトルを算出する例が示されているが、追尾処理部４１から、乗り換えベクトルそのものを取得し、その乗り換えベクトルを用いることもできる。
【０２１１】
追尾点記憶部７０２には、乗り換え量算出部７０１に入力された現在追尾点の位置情報が、次のフレームの演算のため、過去追尾点の位置情報として記憶される。
【０２１２】
反映乗り換え量算出部７０３は、乗り換え量算出部７０１により算出された乗り換えベクトル、乗り換え残り量記憶部７０４に記憶されている前フレームにおける乗り換え残りベクトル、および制御部２９などにより予め設定されている１フレームの演算において反映可能な動き量、すなわち、最大反映乗り換えベクトルであるステップ量に基づいて、乗り換えベクトルのうち、現在のフレームに反映させる反映乗り換えベクトルと、次のフレームに残す乗り換え残りベクトルを算出する。
【０２１３】
反映乗り換え量算出部７０３により算出された乗り換え残りベクトルは、次のフレームの演算のために、乗り換え残り量記憶部７０４に記憶される。
【０２１４】
乗り換え残り量記憶部７０４には、反映乗り換え量算出部７０３により前フレームにおいて算出された乗り換え残りベクトルが記憶されている。
【０２１５】
中心点設定部７０５は、反映乗り換え量算出部７０３により算出された反映乗り換えベクトルに基づいて、オブジェクトの追尾（すなわち、追尾結果）を提示する際の基準となる提示位置、すなわち、ズーム画像を作成する時のズームの中心となる提示中心点を算出する。
【０２１６】
具体的には、中心点設定部７０５は、反映乗り換え量算出部７０３により算出された反映乗り換えベクトルに基づいて、追尾処理部４１の追尾点決定部５７により決定された現在追尾点、または、中心点記憶部７０６に記憶されている前のフレームにおける提示中心点（以下、過去中心点と称する）、反映乗り換え量算出部７０３により算出された反映乗り換えベクトル、および、追尾処理部４１の動き推定部５２からの動きベクトルを用いて、現在のフレームにおける提示中心点（以下、現在中心点と称する）を算出する。中心点設定部７０５により算出された現在中心点の位置情報は、提示位置情報として、ズーム画像作成部２４に出力される。
【０２１７】
中心点記憶部７０６には、算出された現在中心点の位置情報が、次のフレームの演算のため、過去中心点の位置情報として記憶される。
【０２１８】
次に、図４１および図４２のフローチャートを参照して、図４のステップＳ２２の提示位置算出処理の詳細について説明する。
【０２１９】
ステップＳ７０１において、制御部２９は、乗り換え残りベクトルｆ，過去中心点Ｒn-1，過去追尾点Ｐn-1に初期値を設定する。すなわち、乗り換え残り量記憶部７０４の乗り換え残りベクトルｆには、０が設定され、中心点記憶部７０６の過去中心点Ｒn-1および追尾点記憶部７０２の過去追尾点Ｐn-1には、初期追尾設定点が設定される。
【０２２０】
図１０のステップＳ１２５において追尾点決定部５７より追尾点が決定されると、決定された追尾点に関する情報が入力される。すなわち、乗り換え量算出部７０１および中心点設定部７０５には、追尾点に関する情報として、上述したように、追尾点の位置情報、並びに、決定された追尾点が、図１０のステップＳ１２９で乗り換えられたものであるか否かを示す追尾点の乗り換え履歴情報などが入力される。
【０２２１】
ステップＳ７０２において、乗り換え量算出部７０１は、入力された追尾点に関する情報に基づいて、追尾点決定部５７により決定された現在追尾点Ｐnが、乗り換えられたものであるか否かを判定する。ステップＳ７０２において、現在追尾点Ｐnが乗り換えられたものであると判定された場合、処理は、ステップＳ７０３に進み、乗り換え量算出部７０１は、現在追尾点Ｐn、追尾点記憶部７０２に記憶されている過去追尾点Ｐn-1、および、動き推定部５２からの動きベクトルｍを用いて、乗り換えベクトルｄを算出する。
【０２２２】
図４３に示されるように、現在追尾点Ｐnが乗り換えられたものである場合、現在追尾点Ｐnは、過去追尾点Ｐn-1が、図１０のステップＳ１２４において推定可能ではないとされ、ステップＳ１２９において乗り換え点Ｑに乗り換えられて、ステップＳ１２３に戻って、乗り換え点Ｑについて動きベクトルｍが推定され、ステップＳ１２５において、推定された動きベクトルｍの分だけシフトされたものであり、乗り換えベクトルｄは、現在追尾点Ｐnから、過去追尾点Ｐn-1を引き、さらに、動きベクトルｍを引いて求められる。
【０２２３】
すなわち、現在追尾点Ｐnは、乗り換え点Ｑが動きベクトルｍの分シフトされたものであることから、乗り換えベクトルｄは、過去追尾点Ｐn-1と乗り換え点Ｑに基づいて求められる、過去追尾点Ｐn-1の位置から、乗り換え点Ｑの位置への動き量ともいえる。
【０２２４】
このように、ステップＳ７０３においては、乗り換えベクトルｄ（＝現在追尾点Ｐn−過去追尾点Ｐn-1−動きベクトル）が算出される。
【０２２５】
一方、現在追尾点Ｐnが乗り換えられたものではない、すなわち、図１０のステップＳ１２２乃至Ｓ１２５の処理が連続して行われた結果求められた追尾点である場合、処理は、ステップＳ７０４に進み、乗り換え量算出部７０１は、０（０ベクトル）を乗り換えベクトルｄとする。
【０２２６】
ステップＳ７０３またはＳ７０４で求められた乗り換えベクトルｄは、反映乗り換え量算出部７０３に入力される。
【０２２７】
ステップＳ７０５において、反映乗り換え量算出部７０３は、乗り換え量算出部７０１からの乗り換えベクトルｄと、乗り換え残り量記憶部７０４から読み出した前フレームにおける乗り換え残りベクトルｆn-1の和の絶対値が、ステップ量以上であるか否かを判定する。ステップＳ７０５において、乗り換えベクトルｄと乗り換え残りベクトルｆn-1の和の絶対値がステップ量以上であると判定された場合、処理は、ステップＳ７０６に進み、さらに、反映乗り換え量算出部７０３は、乗り換えベクトルｄと乗り換え残りベクトルｆn-1の和が０よりも大きいか否かを判定する。
【０２２８】
ステップＳ７０６において、乗り換えベクトルｄと乗り換え残りベクトルｆn-1の和が０よりも大きい（すなわち、マイナスの動きではない）と判定された場合、処理は、ステップＳ７０７に進み、反映乗り換え量算出部７０３は、今回反映させる最大反映乗り換えベクトルであるステップ量を用いて、反映乗り換えベクトルｅを求め、乗り換えベクトルｄと前フレームの乗り換え残りベクトルｆn-1の和から、ステップ量を引いた差分を用いて、乗り換え残りベクトルｆnを求める。
【０２２９】
すなわち、ステップＳ７０７においては、反映乗り換えベクトルｅ（＝ステップ量）および乗り換え残りベクトルｆn（＝乗り換えベクトルｄ＋乗り換え残りベクトルｆn-1−ステップ量）が算出される。
【０２３０】
ステップＳ７０６において、乗り換えベクトルｄと乗り換え残りベクトルｆn-1の和が０以下である（すなわち、動きがマイナスである）と判定された場合、処理は、ステップＳ７０８に進み、反映乗り換え量算出部７０３は、−ステップ量を用いて、反映乗り換えベクトルｅを求め、乗り換えベクトルｄと前フレームの乗り換え残りベクトルｆn-1の和に、ステップ量を加算したものを用いて、乗り換え残りベクトルｆnを求める。
【０２３１】
すなわち、ステップＳ７０８においては、反映乗り換えベクトルｅ（＝−ステップ量）および乗り換え残りベクトルｆn（＝乗り換えベクトルｄ＋乗り換え残りベクトルｆn-1＋ステップ量）が算出される。
【０２３２】
一方、ステップＳ７０５において、乗り換えベクトルｄと乗り換え残りベクトルｆn-1の和の絶対値がステップ量より小さいと判定された場合、処理は、ステップＳ７０９に進み、乗り換えベクトルｄと前フレームの乗り換え残りベクトルｆn-1の和を用いて、反映乗り換えベクトルｅを求め、０（０ベクトル）を、乗り換え残りベクトルｆnとする。
【０２３３】
すなわち、ステップＳ７０９においては、反映乗り換えベクトルｅ（＝乗り換えベクトルｄ＋乗り換え残りベクトルｆn-1）および乗り換え残りベクトルｆn（＝０）が算出される。
【０２３４】
ステップＳ７０７,７０８,または７０９で求められた反映乗り換えベクトルｅは、中心点設定部７０５に入力される。なお、このとき、乗り換え残りベクトルｆｎは、前フレームの乗り換え残りベクトルｆn-1として、乗り換え残り量記憶部７０４に記憶される。
【０２３５】
図４２のステップＳ７１０において、中心点設定部７０５は、反映乗り換え量算出部７０３により求められた反映乗り換えベクトルｅが０であるか否かを判定し、反映乗り換えベクトルｅが０であると判定した場合、ステップＳ７１１において、現在追尾点Ｐnを、現在中心点Ｒnとする。
【０２３６】
すなわち、現在追尾点Ｐnは、乗り換えられたものでないので、乗り換えベクトルｄもなく、さらに、前フレーム以前からの乗り換え残りベクトルｆn-1も残っていないので、追尾点決定部５７により求められた現在追尾点Ｐnは、そのまま、現在中心点Ｒnとして設定される。
【０２３７】
一方、反映乗り換えベクトルｅが０ではないと判定された場合、ステップＳ７１２において、中心点設定部７０５は、現在中心点Ｒnを、中心点記憶部７０６から読み出した過去中心点Ｒn-1に、反映乗り換えベクトルｅを反映させて、動き推定部５２からの動きベクトルｍに基づいて求める。
【０２３８】
すなわち、ステップＳ７１２においては、現在中心点Ｒn（＝過去中心点Ｒn-1＋反映乗り換えベクトルｅ＋動きベクトルｍ）が設定される。
【０２３９】
図４３の例においては、初回、または、前フレームのステップＳ７１１において現在中心点Ｒn＝現在追尾点Ｐnと設定された場合が示されている。この場合には、過去追尾点Ｐn-1＝過去中心点Ｒn-1であるので、反映乗り換えベクトルｅが０ではない場合、図４３に示されるように、過去追尾点Ｐn-1に、ステップ量、または、乗り換えベクトルｄと前フレームの乗り換え残りベクトルｆn-1の和から求められた反映乗り換えベクトルｅと動きベクトルｍが加算された点が、現在中心点Ｒｎとして設定される。
【０２４０】
ただし、前フレームのステップＳ７１２において現在中心点Ｒn（＝過去中心点Ｒn-1＋反映乗り換えベクトルｅと動きベクトルｍ）が設定された場合、現在のフレームのステップＳ７１２においても、過去追尾点Ｐn-1ではなく、過去中心点Ｒn-1に、反映乗り換えベクトルｅと動きベクトルｍが加算された点が、現在中心点Ｒｎとして設定される。
【０２４１】
ステップ７１１またはステップＳ７１２において、設定された現在中心点Ｒnの位置情報は、提示位置情報として、ズーム画像作成部２４に出力される。
【０２４２】
ステップＳ７１３において、中心点設定部７０５は、現在中心点Ｒnを、過去中心点Ｒn-1として、中心点記憶部７０６に記憶させ、乗り換え量算出部７０１は、現在追尾点Ｐnを、過去追尾点Ｐn-1として追尾点記憶部７０２に記憶させる。ステップＳ７１３の後、処理は、ステップＳ７０２に戻り、ユーザにより追尾終了が指示されるまで、次のフレームについての処理が繰り返される。
【０２４３】
なお、上述したように、ステップ量を予め設定される今回反映させる最大反映乗り換えベクトルとして説明したが、ステップ量は、現時点で後どのくらいのステップで追尾点とズーム点が一致するかの度合いに応じて可変に算出することもできる。
【０２４４】
また、ステップ量を、図１１のステップＳ１４３，Ｓ１４４の処理、または、後述する図１７のステップＳ２０６，Ｓ２０８の処理で決定されている領域推定範囲の大きさと連動した大きさにすることもできる。
【０２４５】
さらに、上記説明においては、動き量としてのベクトルを用いてズーム点を算出するように説明したが、絶対距離を用いてズーム点を算出することもできる。
【０２４６】
以上のように、オブジェクト追尾部２３に、追尾点とは別に、追尾結果を提示する際に基準となる（すなわち、ズーム画像が提示される場合には、その中心となる）提示位置を設け、追尾点の乗り換えの際には、追尾点が乗り換えた動き量すべてを、現在のフレームの提示位置に反映させるのではなく、追尾点が乗り換えた動き量のうちの所定量ずつ段階的に反映させるようにしたので、追尾点が乗り換えられたことにより、表示される画像に生じる違和感を軽減することができる。
【０２４７】
図４４は、従来の方法と本発明によるズーム画像における提示位置の座標軌跡が示されている。横軸は時間方向のフレーム番号０乃至２０を表し、縦軸は０乃至４５０の座標値を表している。
【０２４８】
図４４の例においては、点線は、上から順に、追尾点を提示位置とした従来の方法による提示位置のｘ座標およびｙ座標の軌跡をそれぞれ表し、実線は、上から順に本発明による提示位置のｘ座標およびｙ座標の軌跡をそれぞれ表している。
【０２４９】
ｘ座標およびｙ座標のどちらの軌跡についても、従来の方法の場合、点線に示されるように、座標値が急激に変化するフレームがあるのに対して、本発明の方法の場合、実線に示されるように、急激に変化することのない、なだらかな軌跡となっている。
【０２５０】
すなわち、ステップＳ２１の追尾点算出処理において求められた追尾点を、そのまま、画像を生成する際の基準となる提示位置（ズーム画像を拡大する際の中心となる提示位置）に用いる従来の方法では、追尾点の乗り換えの際には、提示位置が、過去の追尾点から現在の追尾点にそのまま乗り換えられてしまうため、図４４の点線に示されるように、座標値が急激に変化してしまい、表示する際、特に拡大表示する際に、違和感を生じてしまうことがあった。
【０２５１】
これに対して、本発明においては、追尾点とは別に、提示位置が設けられており、追尾点の乗り換えの際には、この提示位置が、過去の追尾点に対応する提示位置から、現在の追尾点に対応する提示位置に段階的に乗り換えられるように構成されている。これにより、本発明においては、図４４の実線に示されるように、提示位置が急激に変化することがないので、従来の方法で追尾点の乗り換えの際に表示される画像に対してユーザが感じていた違和感を軽減することができる。これは、画像をズームさせて表示する場合に特に効果的である。
【０２５２】
以上のように、図１のオブジェクト追尾部２３を構成することにより、追尾すべきオブジェクトが回転したり（図６）、オクルージョンが発生したり（図７）、あるいはシーンチェンジにより、オブジェクトの追尾点が一時的に表示されなくなる（図８）ような場合でも、画像の中で移動するオブジェクト（追尾点）を正確に追尾することができる。
【０２５３】
そして、このようにして正確に追尾されるオブジェクトの追尾点に基づいて、提示位置を算出し、算出した提示位置の情報を、図１のオブジェクト追尾部２３による追尾結果としてズーム画像作成部２４に出力されることにより、ズーム画像作成部２４によって、段階的に反映させるように求められた提示位置を中心として、ズーム画像が作成される。これにより、図４４のグラフを参照して上述したように、ユーザにおいては、画像ディスプレイ２６に表示される画像に違和感を感じてしまうことが軽減される。
【０２５４】
すなわち、従来においては、ズーム率が１で作成される画像の場合よりも、ズーム率が大きいズーム画像のほうが、より違和感が生じていたので、本発明は、ズーム率が１で作成される画像の場合よりも、ズーム率が大きいズーム画像に対して、より効果がある。
【０２５５】
本発明は、テレビジョン受像機に限らず、監視カメラシステムや、各種の画像処理装置に適応することが可能である。
【０２５６】
なお、以上においては、画像の処理単位をフレームとしたが、フィールドを処理単位とする場合にも本発明は適用が可能である。
【０２５７】
なお、上述した一連の処理をハードウェアで実現するか、ソフトウェアで実現するかは問わない。上述した一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、汎用のパーソナルコンピュータなどに、ネットワークやリムーバブルメディアなどの記録媒体からインストールされる。
【０２５８】
また、本明細書において上述した一連の処理を実行するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【図面の簡単な説明】
【０２５９】
【図１】本発明を適用したテレビジョン受像機の構成例を示すブロック図である。
【図２】図１のテレビジョン受像機の画像表示処理を説明するフローチャートである。
【図３】図１のオブジェクト追尾部の構成例を示すブロック図である。
【図４】追尾処理を説明するフローチャートである。
【図５】追尾点算出処理を説明するフローチャートである。
【図６】追尾対象が回転する場合の追尾を説明する図である。
【図７】オクルージョンが起きる場合の追尾を説明する図である。
【図８】シーンチェンジが起きる場合の追尾を説明する図である。
【図９】図３の追尾処理部の構成例を示すブロック図である。
【図１０】通常処理を説明するフローチャートである。
【図１１】通常処理の初期化処理を説明するフローチャートである。
【図１２】乗り換え候補抽出処理を説明する図である。
【図１３】領域推定関連処理部の構成例を示すブロック図である。
【図１４】領域推定関連処理を説明するフローチャートである。
【図１５】領域推定処理を説明するフローチャートである。
【図１６】サンプル点を決定する処理を説明する図である。
【図１７】領域推定範囲の更新処理を説明するフローチャートである。
【図１８】領域推定範囲の更新を説明する図である。
【図１９】領域推定範囲の更新を説明する図である。
【図２０】乗り換え候補抽出処理を説明するフローチャートである。
【図２１】テンプレート作成処理を説明するフローチャートである。
【図２２】テンプレート作成を説明する図である。
【図２３】テンプレート作成を説明する図である。
【図２４】テンプレートと追尾点の位置関係を説明する図である。
【図２５】例外処理を説明するフローチャートである。
【図２６】例外処理の初期化処理を説明するフローチャートである。
【図２７】テンプレートの選択を説明する図である。
【図２８】探索範囲の設定を説明する図である。
【図２９】例外処理の初期化処理の他の例を説明するフローチャートである。
【図３０】継続判定処理を説明するフローチャートである。
【図３１】動き推定部の構成例を示すブロック図である。
【図３２】動き推定処理を説明するフローチャートである。
【図３３】アクティビティの算出を説明する図である。
【図３４】評価値とアクティビティの関係を説明する図である。
【図３５】統合処理を説明するフローチャートである。
【図３６】背景動き推定部の構成例を示すブロック図である。
【図３７】背景動き推定処理を説明するフローチャートである。
【図３８】シーンチェンジ検出部５３の構成例を示すブロック図である。
【図３９】シーンチェンジ検出処理を説明するフローチャートである。
【図４０】図３の提示位置算出部の構成例を示すブロック図である。
【図４１】提示位置算出処理を説明するフローチャートである。
【図４２】提示位置算出処理を説明するフローチャートである。
【図４３】提示位置算出処理を説明する図である。
【図４４】提示位置の軌跡を説明する図である。
【符号の説明】
【０２６０】
１  テレビジョン受像機，  ２３  オブジェクト追尾部，  ２４  ズーム画像作成部，  ２６  画像ディスプレイ，  ２９  制御部，  ３０  リモートコントローラ，  ４１  追尾処理部，  ４２  提示位置算出部，  ５１  テンプレートマッチング部，  ５２  動き推定部，  ５３  シーンチェンジ検出部，  ５４  背景動き推定部，  ５５  領域推定関連処理部，  ５６  乗り換え候補保持部，  ５７  追尾点決定部，  ５８  テンプレート保持部，  ５９  制御部，７０１  乗り換え量算出部，  ７０２  追尾点記憶部，  ７０３  反映乗り換え量算出部，  ７０４  乗り換え残り量記憶部，  ７０５  中心点設定部，  ７０６  中心点記憶部
【図１】
0004826316.tif 000007
【図２】
0004826316.tif 000008
【図３】
0004826316.tif 000009
【図４】
0004826316.tif 000010
【図５】
0004826316.tif 000011
【図６】
0004826316.tif 000012
【図７】
0004826316.tif 000013
【図８】
0004826316.tif 000014
【図９】
0004826316.tif 000015
【図１０】
0004826316.tif 000016
【図１１】
0004826316.tif 000017
【図１２】
0004826316.tif 000018
【図１３】
0004826316.tif 000019
【図１４】
0004826316.tif 000020
【図１５】
0004826316.tif 000021
【図１６】
0004826316.tif 000022
【図１７】
0004826316.tif 000023
【図１８】
0004826316.tif 000024
【図１９】
0004826316.tif 000025
【図２０】
0004826316.tif 000026
【図２１】
0004826316.tif 000027
【図２２】
0004826316.tif 000028
【図２３】
0004826316.tif 000029
【図２４】
0004826316.tif 000030
【図２５】
0004826316.tif 000031
【図２６】
0004826316.tif 000032
【図２７】
0004826316.tif 000033
【図２８】
0004826316.tif 000034
【図２９】
0004826316.tif 000035
【図３０】
0004826316.tif 000036
【図３１】
0004826316.tif 000037
【図３２】
0004826316.tif 000038
【図３３】
0004826316.tif 000039
【図３４】
0004826316.tif 000040
【図３５】
0004826316.tif 000041
【図３６】
0004826316.tif 000042
【図３７】
0004826316.tif 000043
【図３８】
0004826316.tif 000044
【図３９】
0004826316.tif 000045
【図４０】
0004826316.tif 000046
【図４１】
0004826316.tif 000047
【図４２】
0004826316.tif 000048
【図４３】
0004826316.tif 000049
【図４４】
0004826316.tif 000050