(57)【特許請求の範囲】
【請求項１】
時間的に連続する複数のフレームの画像により構成される動画像のフレーム間隔の間引きを行うフレーム間引き手段と、
前記フレームが間引かれた後の動画像において連続する２つのフレームのうち、時間的に前のフレームの所定の画素に対応する時間的に後のフレームの画素を追尾点として検出する第１の検出手段と、
前記フレームが間引かれた後の動画像の時間的に前のフレームの所定の画素に対応する画素を、前記間引かれたフレームのそれぞれにおいて、時間と同一の方向に順番に検出する順方向検出を行う順方向検出手段と、
前記フレームが間引かれた後の動画像の時間的に後のフレームにおいて前記検出された画素に対応する画素を、間引かれたフレームのそれぞれにおいて、時間と逆の方向に順番に検出する逆方向検出を行う逆方向検出手段と、
前記順方向検出により検出された画素の位置と、前記逆方向検出により検出された画素の位置を表す情報とを用いた演算により、前記間引かれたフレームのそれぞれの所定の画素を追尾点として検出する第２の検出手段と
を備える追尾点検出装置。
【請求項２】
時間的に連続する複数のフレームの画像により構成される動画像を縮小する縮小手段をさらに備え、
フレーム間引き手段が、前記縮小された動画像のフレーム間隔の間引きを行い、
前記第１の検出手段および前記第２の検出手段は、それぞれ前記縮小された動画像のフレームの追尾点を検出する
請求項１に記載の追尾点検出装置。
【請求項３】
前記第２の検出手段により検出された追尾点の画素の位置を、前記縮小されていない動画像のフレームにおける前記追尾点の画素の位置に変換する変換手段をさらに備える
請求項２に記載の追尾点検出装置。
【請求項４】
前記フレームが間引かれた後の動画像の時間的に前のフレームにおいて、候補となる画素を複数設定する候補設定手段をさらに備え、
前記第１の検出手段が、時間的に前のフレームの候補となる画素のそれぞれに対応する時間的に後のフレームの画素のそれぞれを、追尾点候補として検出し、
前記順方向検出手段が、時間的に前のフレームにおいて候補となる画素のそれぞれに対応する画素のそれぞれを、前記間引かれたフレームのそれぞれにおいて順方向検出し、
前記逆方向検出手段が、時間的に後のフレームにおいて前記追尾点候補として検出された画素に対応する画素のそれぞれを、前記間引かれたフレームのそれぞれにおいて逆方向検出し、
前記第２の検出手段が、前記順方向検出により検出されたそれぞれ画素の位置と、前記逆方向検出により検出されたそれぞれの画素の位置を表す情報とを用いた演算により、前記間引かれたフレームのそれぞれにおいて、複数の画素をそれぞれ追尾点候補として検出する
請求項１に記載の追尾点検出装置。
【請求項５】
前記候補設定手段が設定した、前記時間的に前のフレームにおいて前記候補となる複数の画素のうちの所定の画素の位置を表す情報と、
前記第１の検出手段により、前記所定の画素に対応する前記時間的に後のフレームにおける追尾点候補として検出された画素の位置を表す情報と、
前記順方向検出手段により順方向検出された前記所定の画素に対応する前記間引かれたフレームのそれぞれの画素の位置を表す情報と、
前記逆方向検出手段により逆方向検出された前記所定の画素に対応する前記間引かれたフレームのそれぞれの画素の位置を表す情報と、
前記第２の検出手段により、前記所定の画素および前記追尾点候補に対応する前記間引かれたフレームのそれぞれの追尾点候補として検出された画素の位置を表す情報と
を対応付けて１組の追尾点候補群とし、
前記候補設定手段が設定した前記候補となる画素の数と同数の組の追尾点候補群を記憶する記憶手段をさらに備える
請求項４に記載の追尾点検出装置。
【請求項６】
前記第１の検出手段は、
時間的に前のフレームの所定の画素を中心とした画素で構成されるブロックの画素値と、前記時間的に後のフレームにおいて前記所定の画素に対応する位置の画素の周辺の複数の画素のそれぞれを中心とした画素で構成される複数のブロックの画素値の差分絶対値和を演算し、
前記複数のブロックのうち、前記差分絶対値和の値が最小となったブロックの中心となる画素を追尾点として検出する
請求項５に記載の追尾点検出装置。
【請求項７】
前記第１の検出手段は、
前記時間的に前のフレームの所定の画素を中心とした所定領域である動き検出画素範囲内の画素のそれぞれを中心とした画素で構成されるブロックを複数設定し、
前記動き検出画素範囲内の画素のそれぞれに対応する前記追尾点の画素を検出し、
前記動き検出画素範囲内の画素のそれぞれに対応する前記追尾点の画素の座標値に基づいて演算された座標値を、時間的に前のフレームの所定の画素に対応する時間的に後のフレームの追尾点の位置として検出する
請求項６に記載の追尾点検出装置。
【請求項８】
前記時間的に前のフレームよりさらに時間的に前のフレームにおいて、予め検出された追尾点の画素を中心とした所定領域内の画素値と、前記候補設定手段が設定した、前記時間的に前のフレームにおいて前記候補となる複数の画素のそれぞれを中心とした所定領域内の画素値との差分絶対値総和の値を算出する差分値算出手段と、
前記記憶手段に記憶されている前記順方向検出された前記間引かれたフレームのそれぞれの画素の位置を表す情報、および前記逆方向検出された前記間引かれたフレームのそれぞれの画素の位置を表す情報に基づいて、前記間引かれたフレームのうち、時間的に中間に位置するフレームにおける前記順方向検出された画素と、前記逆方向検出された画素との距離を算出する距離算出手段とをさらに備える
請求項７に記載の追尾点検出装置。
【請求項９】
前記算出された差分絶対値総和の値、および前記算出された距離を、それぞれ所定の値と比較することで、
前記候補設定手段が設定した前記候補となる複数の画素の中から、予め設定された条件を満たす画素を複数検出し、
前記予め設定された条件を満たすそれぞれ画素の位置の情報に基づいて、前記候補設定手段が設定した前記候補となる複数の画素の中の１つの画素を特定し、
前記記憶手段が記憶している複数の追尾点群のうち、前記特定された１の画素に対応する追尾点群を、それぞれのフレームにおける追尾点とする
請求項８に記載の追尾点検出装置。
【請求項１０】
前記フレームが間引かれた後の動画像において連続する２つのフレームのうち、時間的に前のフレームの所定の画素を中心とする所定領域内の画素値と、前記第１の検出手段により検出された前記時間的に後のフレームにおける画素を中心とする所定領域内の画素値との差分絶対値総和の値に基づいて、フレーム間引き手段が間引くフレーム間隔を増減させるフレーム間隔増減手段をさらに備える
請求項１に記載の追尾点検出装置。
【請求項１１】
予め撮影された画像をテンプレートとして保持するテンプレート保持手段と、
前記動画像の所定のフレームの画像から、前記テンプレートに表示されていないオブジェクトを抽出するオブジェクト抽出手段と、
前記抽出されたオブジェクトの画像の中から、前記追尾点を検出するための画素を特定する画素特定手段とをさらに備える
請求項１に記載の追尾点検出装置。
【請求項１２】
前記第１の検出手段は、
前記フレームが間引かれた後の動画像において、注目フレーム、注目フレームの時間的に前のフレーム、注目フレームの時間的に後のフレームに基づいて、移動するオブジェクト対応する領域を抽出する領域抽出手段と、
前記領域抽出手段により抽出された領域の中から、前記時間的に前のフレームの所定の画素に対応する前記注目フレームの画素を検出する領域内検出手段と
を備える請求項１に記載の追尾点検出装置。
【請求項１３】
前記領域抽出手段は、
前記注目フレームと前記注目フレームの時間的に前のフレームとの間で得られた画面動きベクトルに基づいて前記注目フレームの画面位置をシフトさせる第１の画面位置シフト手段と、
前記画面位置をシフトさせた注目フレームの画像と、注目フレームの時間的に前のフレームの画像との間で差分を算出する第１のフレーム差分算出手段と、
前記注目フレームと前記注目フレームの時間的に後のフレームとの間で得られた画面動きベクトルに基づいて前記注目フレームの画面位置をシフトさせる第２の画面位置シフト手段と、
前記画面位置をシフトさせた注目フレームの画像と、注目フレームの時間的に後のフレームの画像との間で差分を算出する第２のフレーム差分算出手段と、
前記第１のフレーム差分算出手段により算出された前記差分に対応する画素と、前記第２のフレーム差分算出手段により算出された前記差分に対応する画素とのＡＮＤ領域を、オブジェクト対応する領域として抽出するAND領域抽出手段と
を備える請求項１２に記載の追尾点検出装置。
【請求項１４】
時間的に連続する複数のフレームの画像により構成される動画像のフレーム間隔の間引きを行い、
前記フレームが間引かれた後の動画像において連続する２つのフレームのうち、時間的に前のフレームの所定の画素に対応する時間的に後のフレームの画素を追尾点として検出し、
前記フレームが間引かれた後の動画像の時間的に前のフレームの所定の画素に対応する画素を、前記間引かれたフレームのそれぞれにおいて、時間と同一の方向に順番に検出する順方向検出を行い、
前記フレームが間引かれた後の動画像の時間的に後のフレームにおいて前記検出された画素に対応する画素を、間引かれたフレームのそれぞれにおいて、時間と逆の方向に順番に検出する逆方向検出を行い、
前記順方向検出により検出された画素の位置と、前記逆方向検出により検出された画素の位置を表す情報とを用いた演算により、前記間引かれたフレームのそれぞれの所定の画素を追尾点として検出するステップ
を含む追尾点検出方法。
【請求項１５】
コンピュータを、
時間的に連続する複数のフレームの画像により構成される動画像のフレーム間隔の間引きを行うフレーム間引き手段と、
前記フレームが間引かれた後の動画像において連続する２つのフレームのうち、時間的に前のフレームの所定の画素に対応する時間的に後のフレームの画素を追尾点として検出する第１の検出手段と、
前記フレームが間引かれた後の動画像の時間的に前のフレームの所定の画素に対応する画素を、前記間引かれたフレームのそれぞれにおいて、時間と同一の方向に順番に検出する順方向検出を行う順方向検出手段と、
前記フレームが間引かれた後の動画像の時間的に後のフレームにおいて前記検出された画素に対応する画素を、間引かれたフレームのそれぞれにおいて、時間と逆の方向に順番に検出する逆方向検出を行う逆方向検出手段と、
前記順方向検出により検出された画素の位置と、前記逆方向検出により検出された画素の位置を表す情報とを用いた演算により、前記間引かれたフレームのそれぞれの所定の画素を追尾点として検出する第２の検出手段とを備える追尾点検出装置として機能させる
プログラム。
【請求項１６】
請求項１４に記載のプログラムが記録されている記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、追尾点検出装置および方法、プログラム、並びに記録媒体に関し、特に、所望の追尾対象を簡単かつ確実に追尾させることができるようにする追尾点検出装置および方法、プログラム、並びに記録媒体に関する。
【背景技術】
【０００２】
動画像中でユーザが指定した対象を追尾する技術は、従来から数多くあり、例えば、特許文献１の技術が提案されている。
【０００３】
特許文献１の技術では、最初に指定した追尾対象における動きを検出し、動きに応じて追尾点を動かしていく方式が採用されている。そのため追尾対象において回転や変形が伴うと、回転や変形に動きを合わせようとするため、徐々に追尾点が追尾対象から外れてしまう問題があった。
【０００４】
これに対し、ユーザが所望の追尾結果が得られていないと判断した際に、ユーザが追尾点の修正操作を行うことで、追尾点のずれを補正する技術も提案されている（例えば、特許文献２参照）。
【０００５】
【特許文献１】特開２００５−３０３９８３
【特許文献２】特開２００７−２７４５４３
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献２の技術では、追尾点のずれをユーザが判断しなければならず、また、追尾点のずれを補正する操作もユーザによって行われる。このため、ユーザに多大な労力が必要とされる問題があった。
【０００７】
本発明はこのような状況に鑑みてなされたものであり、所望の追尾対象を簡単かつ確実に追尾させることができるようにするものである。
【課題を解決するための手段】
【０００８】
本発明の一側面は、時間的に連続する複数のフレームの画像により構成される動画像のフレーム間隔の間引きを行うフレーム間引き手段と、前記フレームが間引かれた後の動画像において連続する２つのフレームのうち、時間的に前のフレームの所定の画素に対応する時間的に後のフレームの画素を追尾点として検出する第１の検出手段と、前記フレームが間引かれた後の動画像の時間的に前のフレームの所定の画素に対応する画素を、前記間引かれたフレームのそれぞれにおいて、時間と同一の方向に順番に検出する順方向検出を行う順方向検出手段と、前記フレームが間引かれた後の動画像の時間的に後のフレームにおいて前記検出された画素に対応する画素を、間引かれたフレームのそれぞれにおいて、時間と逆の方向に順番に検出する逆方向検出を行う逆方向検出手段と、前記順方向検出により検出された画素の位置と、前記逆方向検出により検出された画素の位置を表す情報とを用いた演算により、前記間引かれたフレームのそれぞれの所定の画素を追尾点として検出する第２の検出手段とを備える追尾点検出装置である。
【０００９】
時間的に連続する複数のフレームの画像により構成される動画像を縮小する縮小手段をさらに備え、フレーム間引き手段が、前記縮小された動画像のフレーム間隔の間引きを行い、前記第１の検出手段および前記第２の検出手段は、それぞれ前記縮小された動画像のフレームの追尾点を検出するようにすることができる。
【００１０】
前記第２の検出手段により検出された追尾点の画素の位置を、前記縮小されていない動画像のフレームにおける前記追尾点の画素の位置に変換する変換手段をさらに備えるようにすることができる。
【００１１】
前記フレームが間引かれた後の動画像の時間的に前のフレームにおいて、候補となる画素を複数設定する候補設定手段をさらに備え、前記第１の検出手段が、時間的に前のフレームの候補となる画素のそれぞれに対応する時間的に後のフレームの画素のそれぞれを、追尾点候補として検出し、前記順方向検出手段が、時間的に前のフレームにおいて候補となる画素のそれぞれに対応する画素のそれぞれを、前記間引かれたフレームのそれぞれにおいて順方向検出し、前記逆方向検出手段が、時間的に後のフレームにおいて前記追尾点候補として検出された画素に対応する画素のそれぞれを、前記間引かれたフレームのそれぞれにおいて逆方向検出し、前記第２の検出手段が、前記順方向検出により検出されたそれぞれ画素の位置と、前記逆方向検出により検出されたそれぞれの画素の位置を表す情報とを用いた演算により、前記間引かれたフレームのそれぞれにおいて、複数の画素をそれぞれ追尾点候補として検出するようにすることができる。
【００１２】
前記候補設定手段が設定した、前記時間的に前のフレームにおいて前記候補となる複数の画素のうちの所定の画素の位置を表す情報と、前記第１の検出手段により、前記所定の画素に対応する前記時間的に後のフレームにおける追尾点候補として検出された画素の位置を表す情報と、前記順方向検出手段により順方向検出された前記所定の画素に対応する前記間引かれたフレームのそれぞれの画素の位置を表す情報と、前記逆方向検出手段により逆方向検出された前記所定の画素に対応する前記間引かれたフレームのそれぞれの画素の位置を表す情報と、前記第２の検出手段により、前記所定の画素および前記追尾点候補に対応する前記間引かれたフレームのそれぞれの追尾点候補として検出された画素の位置を表す情報とを対応付けて１組の追尾点候補群とし、前記候補設定手段が設定した前記候補となる画素の数と同数の組の追尾点候補群を記憶する記憶手段をさらに備えるようにすることができる。
【００１３】
前記第１の検出手段は、時間的に前のフレームの所定の画素を中心とした画素で構成されるブロックの画素値と、前記時間的に後のフレームにおいて前記所定の画素に対応する位置の画素の周辺の複数の画素のそれぞれを中心とした画素で構成される複数のブロックの画素値の差分絶対値和を演算し、前記複数のブロックのうち、前記差分絶対値和の値が最小となったブロックの中心となる画素を追尾点として検出するようにすることができる。
【００１４】
前記第１の検出手段は、前記時間的に前のフレームの所定の画素を中心とした所定領域である動き検出画素範囲内の画素のそれぞれを中心とした画素で構成されるブロックを複数設定し、前記動き検出画素範囲内の画素のそれぞれに対応する前記追尾点の画素を検出し、前記動き検出画素範囲内の画素のそれぞれに対応する前記追尾点の画素の座標値に基づいて演算された座標値を、時間的に前のフレームの所定の画素に対応する時間的に後のフレームの追尾点の位置として検出するようにすることができる。
【００１５】
前記時間的に前のフレームよりさらに時間的に前のフレームにおいて、予め検出された追尾点の画素を中心とした所定領域内の画素値と、前記候補設定手段が設定した、前記時間的に前のフレームにおいて前記候補となる複数の画素のそれぞれを中心とした所定領域内の画素値との差分絶対値総和の値を算出する差分値算出手段と、前記記憶手段に記憶されている前記順方向検出された前記間引かれたフレームのそれぞれの画素の位置を表す情報、および前記逆方向検出された前記間引かれたフレームのそれぞれの画素の位置を表す情報に基づいて、前記間引かれたフレームのうち、時間的に中間に位置するフレームにおける前記順方向検出された画素と、前記逆方向検出された画素との距離を算出する距離算出手段とをさらに備えるようにすることができる。
【００１６】
前記算出された差分絶対値総和の値、および前記算出された距離を、それぞれ所定の値と比較することで、前記候補設定手段が設定した前記候補となる複数の画素の中から、予め設定された条件を満たす画素を複数検出し、前記予め設定された条件を満たすそれぞれ画素の位置の情報に基づいて、前記候補設定手段が設定した前記候補となる複数の画素の中の１つの画素を特定し、前記記憶手段が記憶している複数の追尾点群のうち、前記特定された１の画素に対応する追尾点群を、それぞれのフレームにおける追尾点とするようにすることができる。
【００１７】
前記フレームが間引かれた後の動画像において連続する２つのフレームのうち、時間的に前のフレームの所定の画素を中心とする所定領域内の画素値と、前記第１の検出手段により検出された前記時間的に後のフレームにおける画素を中心とする所定領域内の画素値との差分絶対値総和の値に基づいて、フレーム間引き手段が間引くフレーム間隔を増減させるフレーム間隔増減手段をさらに備えるようにすることができる。
【００１８】
予め撮影された画像をテンプレートとして保持するテンプレート保持手段と、前記動画像の所定のフレームの画像から、前記テンプレートに表示されていないオブジェクトを抽出するオブジェクト抽出手段と、前記抽出されたオブジェクトの画像の中から、前記追尾点を検出するための画素を特定する画素特定手段とをさらに備えるようにすることができる。
【００１９】
前記第１の検出手段は、前記フレームが間引かれた後の動画像において、注目フレーム、注目フレームの時間的に前のフレーム、注目フレームの時間的に後のフレームに基づいて、移動するオブジェクト対応する領域を抽出する領域抽出手段と、前記領域抽出手段により抽出された領域の中から、前記時間的に前のフレームの所定の画素に対応する前記注目フレームの画素を検出する領域内検出手段とを備えるようにすることができる。
【００２０】
前記領域抽出手段は、前記注目フレームと前記注目フレームの時間的に前のフレームとの間で得られた画面動きベクトルに基づいて前記注目フレームの画面位置をシフトさせる第１の画面位置シフト手段と、前記画面位置をシフトさせた注目フレームの画像と、注目フレームの時間的に前のフレームの画像との間で差分を算出する第１のフレーム差分算出手段と、前記注目フレームと前記注目フレームの時間的に後のフレームとの間で得られた画面動きベクトルに基づいて前記注目フレームの画面位置をシフトさせる第２の画面位置シフト手段と、前記画面位置をシフトさせた注目フレームの画像と、注目フレームの時間的に後のフレームの画像との間で差分を算出する第２のフレーム差分算出手段と、前記第１のフレーム差分算出手段により算出された前記差分に対応する画素と、前記第２のフレーム差分算出手段により算出された前記差分に対応する画素とのＡＮＤ領域を、オブジェクト対応する領域として抽出するAND領域抽出手段とを備えるようにすることができる。
【００２１】
本発明の一側面は、時間的に連続する複数のフレームの画像により構成される動画像のフレーム間隔の間引きを行い、前記フレームが間引かれた後の動画像において連続する２つのフレームのうち、時間的に前のフレームの所定の画素に対応する時間的に後のフレームの画素を追尾点として検出し、前記フレームが間引かれた後の動画像の時間的に前のフレームの所定の画素に対応する画素を、前記間引かれたフレームのそれぞれにおいて、時間と同一の方向に順番に検出する順方向検出を行い、前記フレームが間引かれた後の動画像の時間的に後のフレームにおいて前記検出された画素に対応する画素を、間引かれたフレームのそれぞれにおいて、時間と逆の方向に順番に検出する逆方向検出を行い、前記順方向検出により検出された画素の位置と、前記逆方向検出により検出された画素の位置を表す情報とを用いた演算により、前記間引かれたフレームのそれぞれの所定の画素を追尾点として検出するステップを含む追尾点検出方法である。
【００２２】
本発明の一側面は、コンピュータを、時間的に連続する複数のフレームの画像により構成される動画像のフレーム間隔の間引きを行うフレーム間引き手段と、前記フレームが間引かれた後の動画像において連続する２つのフレームのうち、時間的に前のフレームの所定の画素に対応する時間的に後のフレームの画素を追尾点として検出する第１の検出手段と、前記フレームが間引かれた後の動画像の時間的に前のフレームの所定の画素に対応する画素を、前記間引かれたフレームのそれぞれにおいて、時間と同一の方向に順番に検出する順方向検出を行う順方向検出手段と、前記フレームが間引かれた後の動画像の時間的に後のフレームにおいて前記検出された画素に対応する画素を、間引かれたフレームのそれぞれにおいて、時間と逆の方向に順番に検出する逆方向検出を行う逆方向検出手段と、前記順方向検出により検出された画素の位置と、前記逆方向検出により検出された画素の位置を表す情報とを用いた演算により、前記間引かれたフレームのそれぞれの所定の画素を追尾点として検出する第２の検出手段とを備える追尾点検出装置として機能させるプログラムである。
【００２３】
本発明の一側面においては、時間的に連続する複数のフレームの画像により構成される動画像のフレーム間隔の間引きが行われ、前記フレームが間引かれた後の動画像において連続する２つのフレームのうち、時間的に前のフレームの所定の画素に対応する時間的に後のフレームの画素が追尾点として検出され、前記フレームが間引かれた後の動画像の時間的に前のフレームの所定の画素に対応する画素を、前記間引かれたフレームのそれぞれにおいて、時間と同一の方向に順番に検出する順方向検出が行われ、前記フレームが間引かれた後の動画像の時間的に後のフレームにおいて前記検出された画素に対応する画素を、間引かれたフレームのそれぞれにおいて、時間と逆の方向に順番に検出する逆方向検出が行われ、前記順方向検出により検出された画素の位置と、前記逆方向検出により検出された画素の位置を表す情報とを用いた演算により、前記間引かれたフレームのそれぞれの所定の画素が追尾点として検出される。
【発明の効果】
【００２４】
本発明によれば、所望の追尾対象を簡単かつ確実に追尾させることができる。
【発明を実施するための最良の形態】
【００２５】
以下、図面を参照して、本発明の実施の形態について説明する。
【００２６】
図１は、本発明の一実施の形態に係る画像処理装置の構成例を示すブロック図である。この画像処理装置１００において、図示せぬ入力装置から入力画像信号Ｖｉｎが、初期追尾点決定部１０１、階層化部１０３、第３階層動き検出部１１１、および出力画像生成部１１３へ入力される。
【００２７】
図２は、初期追尾点決定部１０１の詳細な構成例を示すブロック図である。同図に示されるように、初期追尾点決定部１０１は、画像信号提示部１０１０と追尾点指定部１０１１とにより構成されている。
【００２８】
画像信号提示部１０１０は、例えば、ディスプレイなどとして構成され、入力画像信号Ｖｉｎに対応する画像を表示するようになされている。追尾点指定部１０１１は、例えば、マウスなどのポインティングデバイスとして構成され、ユーザの操作などに対応して画像信号提示部１０１０において表示された画像の中の１点（例えば、１画素）を初期追尾点として指定するようになされている。
【００２９】
すなわち、初期追尾点決定部１０１が図２のように構成される場合、初期追尾点はユーザにより指定されるようになされている。例えば、ユーザが、ディスプレイに表示された画像を観察しながら、その画像に表示されている追尾すべきオブジェクトの特徴点を、初期追尾点として指定するのである。
【００３０】
図１に戻って、初期追尾点決定部１０１により決定された初期追尾点の座標（ｘｓ、ｙｓ）は、追尾点更新部１１５に供給されるようになされている。
【００３１】
追尾点更新部１１５は、追尾点の座標（ｘ0，ｙ0）を第１階層動き検出部１０４に供給するようになされている。いまの場合、追尾点更新部１１５は、初期追尾点の座標（ｘｓ、ｙｓ）を、追尾点の座標（ｘ0，ｙ0）として第１階層動き検出部１０４に供給する。
【００３２】
階層化部１０３は、入力画像信号Ｖｉｎに対して階層化の処理を行う。ここで階層化の処理は、例えば、画像の画素数の圧縮（画像サイズの縮小）、入力画像のフレーム間隔（フレームレート）の間引きなどの処理とされる。
【００３３】
図３は、階層化部１０３の詳細な構成例を示すブロック図である。同図に示されるように、階層化部１０３は、縮小画生成部１０３０とフレーム間引き部１０３１とにより構成されている。
【００３４】
階層化部１０３の縮小画生成部１０３０は、入力画像信号の画像について、例えば、ｘ方向で２画素ずつ、ｙ方向で２画素ずつ、計４個の画素の平均値を用いて、１／４の大きさの縮小された画像F２を生成する。これにより、入力画像信号の画像とフレームレートが同一であって、画素数が圧縮され、サイズが１／４に縮小された画像Ｆ２が生成されることになる。
【００３５】
図４は、階層化部１０３の処理を説明する図である。同図において、個々の平行四辺形がそれぞれ１つのフレームを表している。縮小画生成部１０３０の処理により、入力画像の各フレームのサイズが１／４に縮小され、画像F２のフレームとされている。なお、入力画像のフレーム数（いまの場合、１１個）と、画像F２のフレーム数は同じである。
【００３６】
階層化部１０３のフレーム間引き部１０３１は、縮小された画像F2に対して、さらにフレームの間引き処理を行って画像F１の生成を行うようになされている。
【００３７】
これにより、図４に示されるように、入力画像信号のサイズが１／４に縮小され、さらに、フレーム間隔（フレームレート）が１／５に間引かれた画像Ｆ１が生成されることになる。同図に示されるように、画像F１においては、画像F２の左から２番目乃至５番目のフレームが間引かれている。また、画像F１においては、画像F２の左から７番目乃至１０番目のフレームも間引かれている。
【００３８】
なお、階層化部１０３に、縮小画生成部１０３０が設けられないようにしてもよい。すなわち、階層化部１０３においては、フレームの間引き処理のみが行われるようにし、縮小画像を生成しないようにしてもよい。この場合、階層化部１０３は、入力画像信号の画像をそのまま、画像Ｆ２として出力し、画像F2に対して、フレームの間引き処理を行って画像F１の生成を行うことになる。
【００３９】
なお、階層化部１０３において、画素数が圧縮され、サイズが１／４に縮小される場合、初期追尾点の座標（ｘｓ、ｙｓ）は、式（１）および式（２）により変換されて、変換後の座標（ｘｓｍ、ｙｓｍ）が追尾点の座標（ｘ0，ｙ0）とされるようになされている。
【００４０】
【数１】
0004507129.tif 000002
【数２】
0004507129.tif 000003
（式中の［  ］は、切捨て処理を意味している。）
【００４１】
図１に戻って、階層化部１０３から供給される画像F1は、第１階層動き検出部１０４へ入力されるようになされている。また、階層化部１０３から供給される画像Ｆ２は第２階層動き検出部１０５へ入力されるようになされている。
【００４２】
第１階層動き検出部１０４は、画像Ｆ１において、追尾点の座標（ｘ0，ｙ0）が指定されているフレームの画像と、時間的に後のフレームの画像との間で追尾点の動きを検出し、時間的に後のフレームの画像における追尾点の座標を特定するようになされている。
【００４３】
図５は、第１階層動き検出部１０４の詳細な構成例を示すブロック図である。同図に示されるように、第１階層動き検出部１０４は、遅延部１０４０、ブロック位置検出部１０４１、および動き統合部１０４２を有する構成とされている。
【００４４】
遅延部１０４０は、入力された画像Ｆ１のフレームを、例えば、１フレームに対応する時間分保持することで遅延させ、画像Ｆ１の次のフレームが、ブロック位置検出部１０４１に入力されるタイミングで、遅延させたフレームをブロック位置検出部１０４１に供給するようになされている。
【００４５】
ブロック位置検出部１０４１は、例えば、図６Ａに示されるように、遅延させたフレーム（時間的に前のフレーム）の画像の中で、追尾点更新部１１５から供給される座標（ｘ0，ｙ0）により特定された追尾点を中心とする所定の個数の画素で構成されるブロックＢＬを設定する。図６Ａにおいては、座標（ｘ0，ｙ0）により特定された追尾点が図中黒い円で示されている。ここで、黒い円は、１個の画素を示すものとする。そして、例えば、図中黒い円で示された追尾点を中心として９×９の画素で構成されるブロックＢＬが設定されている。
【００４６】
ブロック位置検出部１０４１は、時間的に後のフレームにおいて、前のフレームでのブロックＢＬと同じ位置を中心としたサーチ範囲を設定する。サーチ範囲は、例えば、現フレームでのブロックＢＬと同じ位置を基準とし、水平、垂直方向のそれぞれに−１５乃至＋１５画素分の矩形の領域とされる。
【００４７】
すなわち、ブロック位置検出部１０４１は、図６Ｂに示されるように、時間的に後のフレームの画像において、追尾点更新部１１５から供給される座標（ｘ0，ｙ0）により特定された画素を中心として９×９の画素で構成されるブロックを設定し、そのブロックを図中上下左右方向に１５画素ずつ拡張させたサーチ範囲を設定するのである。すなわち、サーチ範囲としては、後のフレームの画像の中の座標（ｘ0，ｙ0）により特定された画素を中心として３９（＝９＋１５＋１５）×３９の画素で構成される領域が設定される。
【００４８】
そして、ブロック位置検出部１０４１は、前のフレームのブロックＢＬと後のフレームのサーチ範囲内の候補ブロックとの間で、差分絶対値総和の演算を行う。ここで、候補ブロックは、例えば、サーチ範囲（いまの場合、３９×３９の画素で構成される領域）内において抽出可能なブロックＢＬと同じサイズ（いまの場合、９×９の画素で構成されるサイズ）のブロックのそれぞれである。
【００４９】
すなわち、ブロック位置検出部１０４１は、例えば、式（３）に示されるような差分絶対値総和の演算を行う。
【００５０】
【数３】
0004507129.tif 000004
【００５１】
ただしＰijはブロックＢＬの注目画素位置（i,j）の画素値を示し、Ｑijはサーチ範囲内の候補ブロックの注目画素位置（i,j）、すなわち、サーチ範囲内における各候補ブロックの中心となる画素の位置を示し、Ｂはブロックのサイズを示している。
【００５２】
ブロック位置検出部１０４１は、式（３）により演算された差分絶対値総和が最小となった候補ブロックを特定する。すなわち、上述したサーチ範囲内において抽出可能なブロックＢＬと同じサイズのブロックのうち、１つのブロックが特定される。そして、ブロック位置検出部１０４１は、差分絶対値総和が最小となった候補ブロックの中心となる画素位置を特定する座標（ｍｖｘ、ｍｖｙ）を動き統合部１０４２へ供給する。
【００５３】
すなわち、ブロック位置検出部１０４１は、いわゆるブロックマッチング方式により、時間的に前のフレームの追尾点の画素に対応する、時間的に後のフレームの画素を特定するのである。
【００５４】
なお、ブロック位置検出部１０４１が、時間的に前のフレームの画像の中で、追尾点を中心とする所定の個数の画素で構成されるブロックＢＬを設定する際に、図１５Ａを参照して後述するように、動き検出画素範囲をさらに設定するようにしてもよい。
【００５５】
詳細は後述するが、ブロック位置検出部１０４１が、座標（ｘ0，ｙ0）により特定された画素を中心とする動き検出画素範囲をさらに設定するようにすることで、例えば、時間的に前のフレームの追尾点（ｘ0、ｙ0）の画素の位置が、本来の追尾点の画素の位置と微小にずれている場合であっても、オブジェクトを正確に追尾することが可能となる。ブロック位置検出部１０４１が、動き検出画素範囲をさらに設定する場合の処理については、図１４の画像処理装置３００の構成の説明とともに後述する。
【００５６】
図５の動き統合部１０４２では、ブロック位置検出部１０４１から供給される画素位置を特定する座標（ｍｖｘ、ｍｖｙ）と、追尾点更新部１１５から供給される座標（ｘ0，ｙ0）とを対応付けて式（４）および式（５）に示されるように、例えば、ベクトルX1、ベクトルＹ1を生成する。
【００５７】
【数４】
0004507129.tif 000005
【数５】
0004507129.tif 000006
【００５８】
なお、式（４）および式（５）では、ブロック位置検出部１０４１から供給される座標（ｍｖｘ、ｍｖｙ）を、（ｘ５、ｙ５）で表している。
【００５９】
ここでは、ベクトルX1、ベクトルＹ1が生成されると説明したが、必ずしもベクトルとして生成される必要はない。ベクトルX1、ベクトルＹ1は、それぞれ上述したように、ブロック位置検出部１０４１から供給される画素位置を特定する座標、および追尾点更新部１１５から供給される座標のｘ座標とｙ座標とを要素としてもつものであり、要は、それぞれの画素位置を特定することができる情報が得られればよいのである。本発明では、説明を簡単にするために、以下の説明においても適宜、複数の座標を特定するための情報をベクトルとして表現することとする。
【００６０】
このようにして、例えば、図７Ａおよび図７Ｂに示されるように、前のフレームにおける追尾点と、後のフレームにおける追尾点が特定されることになる。なお、この画素位置を特定する座標（ｍｖｘ、ｍｖｙ）は、画像Ｆ１において１フレーム時間的に後のフレームの画素位置に対応するものなので、画像F２、または入力画像信号Ｖｉｎの画像においては、５フレーム時間的に後の画像の画素位置となる。
【００６１】
図７Ａにおいて、時間的に前のフレームの画像の中の座標（ｘ0，ｙ0）により特定された追尾点が図中黒い円で示されている。図７Ｂにおいて、時間的に後のフレームの画像の中の座標（ｘ５、ｙ５）（＝座標（ｍｖｘ、ｍｖｙ））が図中黒い円で示されている。いまの場合、時間的に後のフレームにおいて追尾点が、図中左下方向に移動したことになる。この時間的に後のフレームにおける追尾点（図７Ｂ）が、次のフレームにおいてオブジェクトを追尾するための、次の追尾点として用いられる。
【００６２】
ここまでの処理により、画像Ｆ１において時間的に前のフレームと時間的に後のフレームの追尾点の画素位置が検出されたことになる。すなわち、画像Ｆ２のある１つのフレームと、画像Ｆ２の５フレーム時間的に後のフレームとにおいて追尾点の画素位置が検出されたことになる。本発明では、第２階層動き検出部１０５の処理を施すことにより、階層化部１０３の処理によって間引かれた各フレームにおける追尾点の座標が特定されていくようになされている。
【００６３】
図１に戻って、第１階層動き検出部１０４は、ベクトルX1、およびベクトルＹ1のペア［X1，Y1］を、第２階層動き検出部１０５に供給する。ここで供給されるベクトルX1、およびベクトルＹ1のペアは、例えば、画像F２の所定のフレームの追尾点の座標位置、およびその所定のフレームから５フレーム後のフレームの追尾点の座標位置の組み合わせを表すものとなる。
【００６４】
図８は、第２階層動き検出部１０５の詳細な構成例を示すブロック図である。同図に示される順方向動き検出部１０５１は、画像F２と、画像F２を１フレーム分遅延させる遅延部１０５０から供給される画像を、入力データとして受け付けるようになされている。上述したように、画像F２は、フレーム間隔の間引きが行われていないので、例えば、画像F１の５倍のフレームレートの画像とされる。
【００６５】
順方向動き検出部１０５１は、例えば、図９に示されるように、順方向の動き検出を行う。図９においては、各フレームが平行四辺形で示されており、画像F２を構成する６フレーム分の画像が示されている。同図の横軸は、時間とされ、図中左から右方向に時間が経過していくものとする。図中最も左側のフレームは、画像F１における時間的に前のフレームに対応することになり、図中最も右側のフレームが画像F１における時間的に後のフレームに対応することになる。従って、図９における左から２番目乃至５番目のフレームは、階層化部１０３のフレーム間引き部１０３１によって間引かれたフレームである。
【００６６】
第１階層動き検出部１０４から供給されるベクトルのペア［X1，Y1］により、図中最も左側のフレームにおける追尾点の座標（ｘ0，ｙ0）および図中の最も右側のフレームにおける追尾点の座標（ｘ５、ｙ５）を特定することが可能となる。なお、図中最も左側のフレームにおける追尾点と、図中最も右側のフレームにおける追尾点は、「×」印により示されている。ここで、ベクトルのペア［X1，Y1］は、追尾点群を表す情報として用いられる。
【００６７】
順方向動き検出部１０５１は、図中最も左側のフレームにおける追尾点に基づいて、図中左から２番目のフレームの追尾点、左から３番目のフレームの追尾点、および左から４番目のフレームの追尾点を検出する。すなわち、順方向動き検出部１０５１は、図９の図中上側の矢印で示されるように、時間と同じ方向に、各フレームの中の追尾点を検出していくのである。
【００６８】
順方向動き検出部１０５１による追尾点の検出は、図５のブロック位置検出部１０４１と同様にして行われる。ただし、フレームｉにおける動き統合部１０５２で算出される追尾点（ｘｆｉ、ｙｆi）は、次のフレームにおける動き検出の注目画素位置になるため、動き統合部１０５２の出力が再度順方向動き検出部１０５１へ入力されることになる。
【００６９】
すなわち、順方向動き検出部１０５１は、遅延させたフレーム（時間的に前のフレーム）の画像の中で、座標（ｘ0，ｙ0）により特定された追尾点を中心とする所定の個数の画素で構成されるブロックＢＬを設定し、時間的に後のフレームにおいて、前のフレームでのブロックＢＬと同じ位置を中心としたサーチ範囲を設定する。なお、いまの場合、遅延させたフレームは、例えば、図９の図中最も左側のフレームとなり、時間的に後のフレームは、図９の図中左から２番目のフレームとなる。
【００７０】
そして、順方向動き検出部１０５１は、前のフレームのブロックＢＬと後のフレームのサーチ範囲内の候補ブロックとの間で、差分絶対値総和の演算を行う。差分絶対値総和が最小となった候補ブロックの中心となる画素位置を特定する座標（ｘｆ１、ｙｆ１）が動き統合部１０５２へ供給されることになる。
【００７１】
同様に、順方向動き検出部１０５１は、図９の図中左から２番目のフレームを時間的に前のフレームとし、左から３番目のフレームを時間的に後のフレームとし、時間的に前のフレームにおける追尾点を、上述した画素位置を特定する座標（ｘｆ１、ｙｆ１）により特定し、時間的に後のフレームの画素位置を特定する座標（ｘｆ２、ｙｆ２）を得て、動き統合部１０５２へ供給する。さらに、左から４番目および左から５番目のフレームにおける画素位置を特定する座標（ｘｆ３、ｙｆ３）および座標（ｘｆ４、ｙｆ４）も同様にして動き統合部１０５２へ供給される。
【００７２】
なお、画素位置を特定する座標（ｘｆ１、ｙｆ１）、座標（ｘｆ２、ｙｆ２）、座標（ｘｆ３、ｙｆ３）、および座標（ｘｆ４、ｙｆ４）は、それぞれ差分絶対値総和が最小となった候補ブロックの中心となる画素位置の座標であって、正確には追尾点の座標と言えるものではないが、ここでは説明を簡単にするために、時間的に前のフレームにおける追尾点を特定する座標と称している。
【００７３】
このようにして時間と同じ方向（順方向）の追尾点の検出が、例えば、図９の左から２番目のフレーム、左から３番目のフレーム、左から４番目のフレーム、および左から５番目のフレームについて行われることになる。すなわち、フレーム間引き部１０３１により間引かれたフレーム（いまの場合、４つのフレーム）における追尾点の座標が、順方向に検出されていくのである。
【００７４】
一方、逆方向動き検出部１０５４は、図中最も右側のフレームにおける追尾点に基づいて、図中右から２番目のフレームの追尾点、右から３番目のフレームの追尾点、および右から４番目のフレームの追尾点を検出する。すなわち、逆方向動き検出部１０５４は、図９の図中下側の矢印で示されるように、時間と逆方向に、各フレームの中の追尾点を検出していくのである。
【００７５】
すなわち、逆方向動き検出部１０５４は、時間的に後のフレームの画像の中で、座標（ｘ５，ｙ５）により特定された追尾点を中心とする所定の個数の画素で構成されるブロックＢＬを設定し、時間的に前のフレームにおいて、前のフレームでのブロックＢＬと同じ位置を中心としたサーチ範囲を設定する。なお、いまの場合、時間的に後のフレームは、例えば、図９の図中最も右側のフレームとなり、時間的に後のフレームは、図９の図中右から２番目のフレームとなる。
【００７６】
また、フレーム入替部１０５３が画像F２のフレームのそれぞれを逆方向に並べ替えて逆方向動き検出部１０５４に供給するようになされている。従って、逆方向動き検出部１０５４は、図９の図中最も右側のフレームの追尾点に基づいて、右から２番目のフレームの追尾点を検出し、右から２番目のフレームの追尾点に基づいて、右から３番目のフレームの追尾点を検出し、・・・のように処理を実行することになる。
【００７７】
逆方向動き検出部１０５４の処理は、上述したようにフレームが並べ替えられること以外、順方向動き検出部１０５１の処理と同様である。
【００７８】
すなわち、逆方向動き検出部１０５４は、図９の右から２番目（左から５番目）のフレームの画素位置を特定する座標（ｘｂ４、ｙｂ４）、図９の右から３番目（左から４番目）のフレームの画素位置を特定する座標（ｘｂ３、ｙｂ３）、図９の右から４番目（左から３番目）のフレームの画素位置を特定する座標（ｘｂ２、ｙｂ２）、および図９の右から５番目（左から２番目）のフレームの画素位置を特定する座標（ｘｂ１、ｙｂ１）を動き統合部１０５５へ供給する。
【００７９】
つまり、フレーム間引き部１０３１により間引かれたフレーム（いまの場合、４つのフレーム）における追尾点の座標が逆方向に検出されていくのである。
【００８０】
動き統合部１０５２は、順方向動き検出部１０５１から供給される座標に基づいて、式（６）および式（７）で示されるベクトルＸｆ２およびベクトルＹｆ２を生成する。
【００８１】
【数６】
0004507129.tif 000007
【数７】
0004507129.tif 000008
【００８２】
そして、動き統合部１０５２は、ベクトルＸｆ２およびベクトルＹｆ２のペア［Ｘｆ２，Ｙｆ２］を出力統合部１０５６に供給する。
【００８３】
動き統合部１０５５は、逆方向動き検出部１０５４から供給される座標に基づいて、式（８）および式（９）で示されるベクトルＸｂ２およびベクトルＹｂ２を生成する。
【００８４】
【数８】
0004507129.tif 000009
【数９】
0004507129.tif 000010
【００８５】
そして、動き統合部１０５５は、ベクトルＸｂ２およびベクトルＹｂ２のペア［Ｘｂ２，Ｙｂ２］を出力統合部１０５６に供給する。
【００８６】
出力統合部１０５６は、動き統合部１０５２および動き統合部１０５５からそれぞれ供給されたベクトルのペアに基づいて、それらのベクトルのペアの組み合わせ［Ｘｆ２，Ｙｆ２，Ｘｂ２，Ｙｂ２］を出力するようになされている。
【００８７】
図１に戻って、出力統合部１０５６から出力されるベクトルのペアの組み合わせ［Ｘｆ２，Ｙｆ２，Ｘｂ２，Ｙｂ２］は、ブロック位置決定部１１４に供給される。
【００８８】
ブロック位置決定部１１４は、出力統合部１０５６から供給されるベクトルのペアの組み合わせ［Ｘｆ２，Ｙｆ２，Ｘｂ２，Ｙｂ２］に基づいて、例えば、図１０に示されるように、ベクトルＸ２およびベクトルＹ２を生成する。ブロック位置決定部１１４は、フレーム間引き部１０３１により間引かれたフレーム（いまの場合、４つのフレーム）において、順方向動き検出された追尾点の座標と、逆方向動き検出された追尾点の座標とに基づいて、それぞれのフレームにおける１つの追尾点の座標を決定していく。
【００８９】
すなわち、ブロック位置決定部１１４は、ベクトルのペアの組み合わせ［Ｘｆ２，Ｙｆ２，Ｘｂ２，Ｙｂ２］で特定される図９の各フレームの座標に対して、重み付け演算を行うことにより、追尾点の画素位置として信頼性をより高いものとする。
【００９０】
図１０においては、図中上側にｘ軸座標値の演算例が４行７列の表として示されており、図中下側にy軸座標値の演算例が４行７列の表として示されている。同図の表の最も上の行は、フレーム番号を表しており、例えば、フレーム番号０のフレームは、図９の図中最も左側のフレームに対応し、フレーム番号１のフレームは、図９の図中左から２番目のフレームに対応し、・・・フレーム番号５のフレームは、図９の図中最も右側のフレームに対応する。
【００９１】
また、同図の表の上から２番目の行は、上述したベクトルXｆ２（またはＹｆ２）の各要素を表しており、同図の表の上から３番目の行は、上述したベクトルXｂ２（またはＹｂ２）の各要素を表している。
【００９２】
そして、図１０の表の最も下側の行が、ブロック位置決定部１１４により演算されるベクトルＸ２（またはＹ２）の各要素を表している。
【００９３】
例えば、同図の上側の表において、ベクトルＸ２のフレーム番号１に対応する要素は、
【００９４】
（ｘｆ１＊４＋ｘｂ１＊１）／５
【００９５】
とされている。これは、ベクトルXｆ２のフレーム番号１に対応する要素と、ベクトルXｂ２の要素にそれぞれ重みが乗じられて平均化された演算とされている。
【００９６】
すなわち、ベクトルXｆ２の各要素は、第２階層動き検出部１０５において順方向に検出された各フレームの座標値に対応する値なので、フレーム番号０のフレームを基準とし、その基準のフレームに近いほど大きい値の重み（いまの場合、４）が乗じられるようになされている。また、ベクトルXｂ２の各要素は、第２階層動き検出部１０５において逆方向に検出された各フレームの座標値に対応する値なので、フレーム番号５のフレームを基準とし、その基準のフレームに近いほど大きい値の重み（いまの場合、１）が乗じられるようになされている。
【００９７】
そして、重み付けされたそれぞれの要素が足し合わせられて、ベクトルXｆ２の要素に乗じられた重み（４）と、ベクトルXｂ２に乗じられた重み（１）との合計値（５）により除されることで平均化されている。
【００９８】
すなわち、ブロック位置決定部１１４により演算されるベクトルＸ２とベクトルY２は、式（１０）乃至式（１３）により求めることができる。
【００９９】
【数１０】
0004507129.tif 000011
【数１１】
0004507129.tif 000012
【数１２】
0004507129.tif 000013
【数１３】
0004507129.tif 000014
【０１００】
ただし、式（１０）乃至式（１３）において、ｉはフレーム番号を示し、ＦＮは階層化部１０３で間引かれるフレーム間隔である。例えば、図４に示した例では、ＦＮの値は５となる。
【０１０１】
式（１２）と式（１３）のｐ１乃至ｐ４とｑ１乃至ｑ４により、階層化部１０３のフレーム間引き部１０３１による間引き処理によって間引かれた各フレームの画像における追尾点の画素の位置が特定されることになる。すなわち、ブロック位置決定部１１４は、フレーム間引き部１０３１により間引かれる前の画像の各フレームの追尾点の画素の座標を表す情報を出力するのである。
【０１０２】
このような演算がなされることにより、追尾点の画素位置として信頼性をより高い座標（例えば、図９の各フレームの座標）を得ることができるのである。
【０１０３】
図１に戻って、ブロック位置決定部１１４は、図１０のように演算された、例えば、図９の各フレームの座標値を表すベクトルＸ２およびベクトルＹ２を、第３階層動き検出部１１１に出力する。
【０１０４】
第３階層動き検出部１１１は、ブロック位置決定部１１４から供給されるベクトルのペア［Ｘ２，Ｙ２］に基づいて、最終的な追尾点の座標値のベクトルＸ３およびベクトルＹ３を生成する。
【０１０５】
図１１は、第３階層動き検出部１１１の詳細な構成例を示すブロック図である。同図に示される遅延部１１１０、ブロック位置検出部１１１１、および動き統合部１１１２は、それぞれ図５の遅延部１０４０、ブロック位置検出部１０４１、および動き統合部１０４２と同様のものである。ただし、図１１のブロック位置検出部１１１１は、縮小された画像Ｆ２の画素位置に基づいて、入力画像信号Vｉnの画像の画素位置を求めるようになされており、またブロック位置検出部１１１１におけるサーチ範囲が、図５のブロック位置検出部１０４１の場合と異なることになる。
【０１０６】
ブロック位置検出部１１１１は、ブロック位置決定部１１４から供給されたベクトルのペア［Ｘ２，Ｙ２］により特定される画素位置が、入力画像信号Ｖｉｎの画像を１／４に縮小した画像F２のものである場合、画像Ｆ２上での座標値のベクトルのペア[Ｘ２、Ｙ２]を、入力画像信号Ｖｉｎの画像に置き直した座標値のベクトルのペア[Ｘ２ｄ、Ｙ２ｄ]を、式（１４）および式（１５）により演算する。
【０１０７】
【数１４】
0004507129.tif 000015
【数１５】
0004507129.tif 000016
【０１０８】
図１１のブロック位置検出部１１１１は、時間的に後のフレームにおいて、前のフレームでのブロックＢＬと同じ位置を中心としたサーチ範囲を設定し、そのサーチ範囲は、例えば、現フレームでのブロックＢＬと同じ位置を基準とし、水平、垂直方向のそれぞれに−１乃至＋１画素分の矩形の領域とされる。
【０１０９】
そして、ブロック位置検出部１１１１は、前のフレームのブロックＢＬと後のフレームのサーチ範囲内の候補ブロックとの間で差分絶対値総和の演算を行って、差分絶対値総和が最小となった候補ブロックの中心となる画素位置を特定する座標（ｍｖｘ、ｍｖｙ）を動き統合部１０４２へ供給する。
【０１１０】
図１２は、ブロック位置検出部１１１１の処理を説明する図である。同図においては、縮小された画像F２の各フレームと、入力画像信号Vinの画像の各フレームがそれぞれ平行四辺形で表されている。なお、同図に示されるように、画像F２のフレーム数と、入力画像信号Vinの画像のフレーム数は同じである。
【０１１１】
すなわち、ブロック位置検出部１１１１は、図１２に示されるように、縮小された画像F２の[Ｘ２、Ｙ２]により特定された画素位置に対応する入力画像信号Vinの画像の画素位置を、[Ｘ２ｄ、Ｙ２ｄ]として求める。また、ブロック位置検出部１１１１は、[Ｘ２ｄ、Ｙ２ｄ]により特定された入力画像信号Vinの画像の画素位置に基づいて差分絶対値総和の演算を行って各フレームの追尾点の画素位置を特定するのである。
【０１１２】
動き統合部１１１２は、例えば、図１２の入力画像信号Vinの画像の各フレームの追尾点の画素位置を特定する座標を、ベクトルX３、ベクトルＹ３として出力するようになされている。例えば、フレームｉにおける追尾点を（ｘｉ＿３、ｙｉ＿３）とすると、第３階層動き検出部１１１で算出される追尾点郡のベクトルＸ３、ベクトルＹ３は、それぞれ式（１６）、式（１７）で表されることになる。
【０１１３】
【数１６】
0004507129.tif 000017
【数１７】
0004507129.tif 000018
【０１１４】
すなわち、第３階層動き検出部１１１では、縮小された画像Ｆ２での追尾点に対応する、入力画像信号Ｖｉｎの画像における追尾点を特定するのである。
【０１１５】
このようにして得られたベクトルX３、およびベクトルＹ３により特定される入力画像信号Vinの画像の各フレームの画素位置が、最終的な追尾点として以後の処理に用いられることになる。
【０１１６】
第３階層動き検出部１１１から出力されるベクトルのペア［X３，Ｙ３］は、出力画像生成部１１３および追尾点更新部１１５に供給される。追尾点更新部１１５は、ベクトルのペア［X３，Ｙ３］により特定される、例えば、時間的に最も後のフレーム（例えば、図１２の最も右側のフレーム）の追尾点の座標を新たな追尾点の座標として記憶（更新）する。そして、更新された座標が新たな追尾点の座標（ｘ0，ｙ0）として第１階層動き検出部１０４に供給されることになる。
【０１１７】
出力画像生成部１１３は、第３階層動き検出部１１１から供給されるベクトルX３，ベクトルＹ３により特定される追尾点に基づいて、入力画像に追尾点の情報を表示した画像を生成し、生成された画像の出力画像信号Ｖｏｕｔを出力する。
【０１１８】
なお、階層化部１０３において、フレームの間引き処理のみが行われるようにし、縮小画像を生成しないようにする場合、すなわち、階層化部１０３が、入力画像信号の画像をそのまま、画像Ｆ２として出力し、その画像F2に対して、フレームの間引き処理を行って画像F１の生成を行う場合、図１の第３階層動き検出部１１１は不要である。
【０１１９】
階層化部１０３が、入力画像信号の画像をそのまま、画像Ｆ２として出力し、画像F2に対して、フレームの間引き処理を行って画像F１の生成を行う場合、画像処理装置１００を図１３に示されるように構成することができる。図１３の例では、図１の場合と異なり、第３階層動き検出部１１１が設けられていない。図１３の構成においては、ブロック位置決定部１１４により出力されたベクトルのペア［X２，Ｙ２］により特定される入力画像信号Vinの画像の各フレームの画素位置が、最終的な追尾点として以後の処理に用いられることになる。
【０１２０】
そして、出力画像生成部１１３は、ブロック位置決定部１１４から供給されるベクトルX２，ベクトルＹ２により特定される追尾点に基づいて、入力画像に追尾点の情報を表示した画像を生成し、生成された画像の出力画像信号Ｖｏｕｔを出力することになる。
【０１２１】
図１３のそれ以外の構成は、図１の場合と同様である。
【０１２２】
このようにして追尾点が特定されてオブジェクトが追尾される。このように、本発明においては、与えられた追尾点の画像のフレームから、時間的に離れたフレーム（例えば、５フレーム後のフレーム）における追尾点を特定するようになされている。そして、時間的に離れた２つフレームの間に位置するフレームの追尾点を特定していくようにしたので、より信頼性の高いオブジェクトの追尾が可能となる。
【０１２３】
次に、本発明を適用した画像処理装置の別の構成例について説明する。図１４は、本発明の一実施の形態に係る画像処理装置の別の構成例を示すブロック図である。この画像処理装置３００において、図１の画像処理装置１００の場合と比較して、より正確な追尾点を得ることが可能となるようになされている。なお、図１４において、図１の構成と同一の機能ブロックについては、それぞれ同一の符号が付されている。
【０１２４】
図１４の画像処理装置３００においては、候補点抽出部１０２が設けられており、候補点抽出部１０２により、追尾点の候補となる点（画素）であって、複数の追尾点候補が後述するように抽出される。そして、第１階層動き検出部１０４、および第２階層動き検出部１０５においては、複数の追尾点候補のそれぞれに対して、上述したような、第１階層動き検出部の処理、および第２階層動き検出部の処理が施されるようになされている。
【０１２５】
また、図１４の画像処理装置３００においては、複数の追尾点候補のそれぞれに対して、上述したような、第１階層動き検出部の処理、および第２階層動き検出部の処理の処理結果に基づいて、追尾点乗換決定部１１０が、最終的に１つの画素を追尾点として決定するようになされている。従って、図１４の画像処理装置３００は、図１の画像処理装置１００の場合と比較して、より正確な追尾点を得ることが可能となるのである。
【０１２６】
画像処理装置３００において、図示せぬ入力装置から入力画像信号Ｖｉｎは、初期追尾点決定部１０１、階層化部１０３、第３階層動き検出部１１１、および出力画像生成部１１３へ入力される。
【０１２７】
初期追尾点決定部１０１は、入力画像信号Ｖｉｎから初期追尾点の座標（ｘｓ、ｙｓ）を決定して候補点抽出部１０２に出力するようになされている。なお、初期追尾点決定部１０１の構成は、図２を参照して上述した構成と同様なので、詳細な説明は省略する。
【０１２８】
候補点抽出部１０２は、初期追尾点決定部１０１から入力される初期追尾点（ｘｓ、ｙｓ）、および追尾点更新部１１２から入力される追尾点（ｘｔ、ｙｔ）に基づいて、第１階層動き検出部１０４の処理において用いられる追尾候補点を抽出するようになされている。
【０１２９】
第１階層動き検出部１０４では、入力画像信号Ｖｉｎに対し、１／４の大きさの画像を処理するようになされているため、候補点抽出部１０２では、上述した式（１）、および式（２）を用いて、入力される追尾点を追尾点候補中心（ｘｓｍ、ｙｓｍ）に変換する。なお、式（１）、および式（２）では、入力される追尾点が初期追尾点（ｘｓ、ｙｓ）である場合を示しているが、入力される追尾点が追尾点（ｘｔ、ｙｔ）である場合、式（１）、式（２）の（ｘｓ、ｙｓ）を（ｘｔ、ｙｔ）に置き換えればよい。
【０１３０】
また、候補点抽出部１０２への入力が、追尾点更新部１１２から入力される追尾点（ｘｔ、ｙｔ）である場合、すなわち、候補点抽出部１０２への入力が初期追尾点（ｘｓ、ｙｓ）ではない場合、候補点抽出部１０２は、追尾点候補中心（ｘｓｍ、ｙｓｍ）から、所定の範囲の追尾点候補（ｘ０(w、h)、ｙ０(w、h)）を抽出する。ここで、ｗ、ｈはそれぞれ追尾候補点中心から範囲を示し、ｗはｘ方向の範囲、ｈはｙ方向の範囲を示すものとする。所定の範囲としては、例えば、追尾点候補中心（ｘｓｍ、ｙｓｍ）からｘ方向、ｙ方向ともに±２の範囲を用い、その場合、ｗ、ｈの範囲がそれぞれ±２とされる。ｗ、ｈの範囲がそれぞれ±２である場合、追尾点候補（ｘ０(w、h)、ｙ０(w、h)）は、２５（＝５×５）通り存在することになる。
【０１３１】
例えば、（ｘ０(-1,0)、ｙ０(-1,0)）は、追尾点候補中心（ｘｓｍ、ｙｓｍ）の左隣の画素を示し、（ｘ０(0,1)、ｙ０(0,1)）は、追尾点候補中心（ｘｓｍ、ｙｓｍ）の下の画素を示すものとする。なお、当然のことながら、（ｘ０(0,0)、ｙ０(0,0)）は、追尾点候補中心（ｘｓｍ、ｙｓｍ）と同一である。
【０１３２】
このように、候補点抽出部１０２は、追尾点更新部１１２から、追尾点の座標が供給される都度、その追尾点に対応する２５個の追尾点候補の座標を生成して、それら２５個の追尾点候補の座標を、第１階層動き検出部１０４、差分算出部１０８、およびメモリ１０９に供給するのである。
【０１３３】
候補点抽出部１０２への入力が、初期追尾点決定部１０１から入力される初期追尾点（ｘｓ、ｙｓ）である場合、追尾点候補中心（ｘｓｍ、ｙｓｍ）である（ｘ０(0,0)、ｙ０(0,0)）のみを抽出する。
【０１３４】
候補点抽出部１０２により抽出された追尾点候補（ｘ０(w、h)、ｙ０(w、h)）は、第１階層動き検出部１０４、および差分算出部１０８へ入力される。
【０１３５】
階層化部１０３は、入力画像信号Ｖｉｎに対して階層化の処理を行う。ここで階層化の処理は、例えば、画像の画素数の圧縮（画像サイズの縮小）、入力画像のフレーム間隔（フレームレート）の間引きなどの処理とされる。
【０１３６】
階層化部１０３の構成は、図３を参照して上述した構成と同様なので、詳細な説明は省略する。図４を参照して上述したように、階層化部１０３により、入力画像信号の画像とフレームレートが同一であって、画素数が圧縮され、サイズが１／４に縮小された画像Ｆ２が生成されることになる。また、階層化部１０３により、入力画像信号のサイズが１／４に縮小され、さらに、フレーム間隔が１／５に間引かれた画像Ｆ１が生成されることになる。
【０１３７】
画像Ｆ１は、第１階層動き検出部１０４、差分算出部１０８、およびメモリ１０９に供給され、画像Ｆ２は、第２階層動き検出部１０５に供給される。
【０１３８】
図１４の画像処理装置３００における第１階層動き検出部１０４の構成も、図５を参照して上述した構成と同様であるが、図１の画像処理装置１００における第１階層動き検出部１０４とは、処理の内容が異なる。
【０１３９】
図１４の画像処理装置３００における第１階層動き検出部１０４においては、遅延部１０４０が、入力された画像Ｆ１のフレームを、例えば、１フレームに対応する時間分保持することで遅延させ、画像Ｆ１の次のフレームが、ブロック位置検出部１０４１に入力されるタイミングで、遅延させたフレームをブロック位置検出部１０４１に供給するようになされている。
【０１４０】
ブロック位置検出部１０４１では、候補点抽出部１０２から入力される追尾候補点（ｘ０(w、h)、ｙ０(w、h)）毎に入力信号Ｆ１と、遅延部１０４０から入力される信号との間でブロックの差分絶対値総和の演算を行う。
【０１４１】
ブロック位置検出部１０４１は、遅延部１０４０で遅延された現フレームにおいて、候補点抽出部１０２から入力されるある追尾候補点において、その追尾候補点を中心とする所定の個数の画素で構成されるブロックＢＬを設定する。例えば、追尾候補点の座標（ｘ0，ｙ0）であったとすると、図１５Ａに示されるように、ブロックＢＬが設定される。図１５においては、座標（ｘ0，ｙ0）により特定された追尾候補点が図中黒い円で示されている。ここで、黒い円は、１個の画素を示すものとする。そして、例えば、図中黒い円で示された追尾点を中心として９×９の画素で構成されるブロックＢＬが設定されている。
【０１４２】
そして、ブロック位置検出部１０４１は、その追尾候補点を中心とする動き検出画素範囲を、さらに設定する。動き検出範囲は、例えば、追尾候補点を中心とし、−３乃至＋３画素分の領域であって、７×７画素の範囲とされる。図１５においては、ブロックＢＬの内部の線により動き検出範囲が矩形の領域として示されている。すなわち、ブロック位置検出部１０４１は、ある追尾候補点を中心として、７×７画素の範囲内に含まれる画素のそれぞれを中心としたブロックBLを設定し、１つの追尾候補点に対応して、現フレーム上に４９個のブロックBLが設定されることになる。
【０１４３】
つまり、ブロック位置検出部１０４１が動き検出画素範囲設定する場合、動き検出画素範囲の４９個の画素のそれぞれに対応する時間的に後のフレームにおける４９個の追尾点が、一旦特定されることになる。そして後述する式（１８）および式（１９）の演算により、それら４９個の追尾点の平均となる位置が特定され、時間的に後のフレームにおける追尾点が１つ特定されることになるのである。
【０１４４】
このように動き検出画素範囲を設定することで、例えば、時間的に前のフレームの追尾点（ｘ0、ｙ0）の画素の位置が、本来の追尾点の画素の位置と微小にずれている場合であっても、オブジェクトを正確に追尾することが可能となる。
【０１４５】
ブロック位置検出部１０４１は、時間的に後のフレームにおいて、前のフレームでのブロックＢＬと同じ位置を中心としたサーチ範囲を設定する。サーチ範囲は、例えば、現フレームでのブロックＢＬと同じ位置を基準とし、水平、垂直方向のそれぞれに−１５乃至＋１５画素分の矩形の領域とされる。
【０１４６】
すなわち、ブロック位置検出部１０４１は、図１５Ｂに示されるように、時間的に後のフレームの画像において、候補点抽出部１０２から供給される追尾点候補の座標（いまの場合、座標（ｘ0，ｙ0））により特定された画素を中心として９×９の画素で構成されるブロックを設定し、そのブロックを図中上下左右方向に１５画素ずつ拡張させたサーチ範囲を設定するのである。すなわち、サーチ範囲としては、後のフレームの画像の中の座標（ｘ0，ｙ0）により特定された画素を中心として３９（＝９＋１５＋１５）×３９の画素で構成される領域が設定される。
【０１４７】
そして、ブロック位置検出部１０４１は、前のフレームのブロックＢＬと後のフレームのサーチ範囲内の候補ブロックとの間で、差分絶対値総和の演算を行う。ここで、候補ブロックは、例えば、サーチ範囲（いまの場合、３９×３９の画素で構成される領域）内において抽出可能なブロックＢＬと同じサイズ（いまの場合、９×９の画素で構成されるサイズ）のブロックのそれぞれである。
【０１４８】
すなわち、ブロック位置検出部１０４１は、例えば、上述した式（３）に示されるような差分絶対値総和の演算を行う。
【０１４９】
ブロック位置検出部１０４１は、式（３）により演算された差分絶対値総和が最小となった候補ブロックを特定する。すなわち、上述したサーチ範囲内において抽出可能なブロックＢＬと同じサイズのブロックのうち、１つのブロックが特定される。そして、ブロック位置検出部１０４１は、差分絶対値総和が最小となった候補ブロックの中心となる画素位置を特定する座標（ｍｖｘ、ｍｖｙ）を動き統合部１０４２へ供給する。
【０１５０】
図１４の画像処理装置３００においては、ブロック位置検出部１０４１により、動き検出範囲内の画素のそれぞれを中心としてブロックＢＬが設定されて、前のフレームのブロックＢＬと後のフレームのサーチ範囲内の候補ブロックとの間で、差分絶対値総和の演算を行うのである。
【０１５１】
従って、動き検出画素範囲が−３乃至＋３画素分である場合、動き統合部１０４２へ供給される候補ブロックの中心となる画素位置は、上述したように全部で４９個になる。このように、一旦、動き検出画素範囲の画素のそれぞれに対応する４９個の追尾点が特定されることになる。
【０１５２】
動き統合部１０４２では、ブロック位置検出部１０４１から入力されるブロックの位置（実際には、ブロックの中心となる画素の位置）を、式（１８）、式（１９）の演算により統合する。ただしｍｖｘij、ｍｖｙijは、動き検出画素範囲内の注目画素位置（ｉ、ｊ）から入力される候補ブロックの中心となる画素位置を示し、ｘ５、ｙ５は統合後の候補ブロックの中心となる画素位置を示し、Ｓは動き検出画素範囲を示す。
【０１５３】
【数１８】
0004507129.tif 000019
【数１９】
0004507129.tif 000020
（式中の［  ］は、切捨て処理を意味している。）
【０１５４】
なお、式（１８）、式（１９）は、上述したように得られた４９個の画素位置に基づいて、いわば画素位置の平均を求める演算となる。これにより、時間的に後のフレームの追尾点が１つ特定されたことになる。このように、図１４の画像処理装置３００においては、ブロック位置検出部１０４１により、一旦、４９個の追尾点が特定され、それら４９個の追尾点の画素位置の平均を求めることにより、１つの追尾点が特定されるのである。
【０１５５】
このようにして、図１５Ａおよび図１５Ｂに示されるように、時間的に後のフレームにおいて、統合後のブロックの中心となる画素位置（ｘ５、ｙ５）が得られることになる。ここで、画素位置（ｘ５、ｙ５）は、時間的に後のフレームにおける追尾点の座標を表すものとなる。そして、時間的に前のフレームの追尾点（ｘ0、ｙ0）と、時間的に後のフレームにおける追尾点（ｘ５、ｙ５）の差が、追尾点の移動を表すことになる。
【０１５６】
動き統合部１０４２は、時間的に前のフレームの追尾点（ｘ0、ｙ0）と、時間的に後のフレームにおける追尾点（ｘ５、ｙ５）とを対応付けて、上述した式（４）および式（５）に示されるように、例えば、ベクトルX1、ベクトルＹ1を生成する。
【０１５７】
第１階層動き検出部１０４は、ベクトルX1、およびベクトルＹ1のペア［X1，Y1］を、第２階層動き検出部１０５に供給する。
【０１５８】
以上の処理が、候補点抽出部１０２から入力される追尾点候補（ｘ０(w、h)、ｙ０(w、h)）のそれぞれについて行われる。従って、全ての追尾点候補（ｘ０(w、h)、ｙ０(w、h)）毎に、式（１８）、および式（１９）が生成され、それぞれの演算結果が（ｘ５(w、h)、ｙ５(w、h)）となる。その結果、ベクトルX1、およびベクトルＹ1を、より一般化して記述すると、式（２０）、および式（２１）のように、ベクトルX1(w、h)、およびベクトルＹ1(w、h)として示される。
【０１５９】
【数２０】
0004507129.tif 000021
【数２１】
0004507129.tif 000022
【０１６０】
ｗ、ｈの範囲がそれぞれ±２である場合、式（２０）、および式（２１）により、全部で２５個の追尾点群が生成されることになる。
【０１６１】
図１４に戻って、第１階層動き検出部１０４で検出される追尾点郡を表すベクトルX1(w、h)、およびベクトルＹ1(w、h)は、第２階層動き検出部１０５に供給される。
【０１６２】
図１４の画像処理装置３００における第２階層動き検出部１０５の構成も、図８を参照して上述した構成と同様であるが、図１４の構成における第２階層動き検出部１０５は、上述したように、第１階層動き検出部１０４で検出される追尾点郡のそれぞれに対応して、図９を参照して上述したように、順方向の追尾点の検出、および逆方向の追尾点の検出を行うのである。
【０１６３】
動き統合部１０５２は、順方向動き検出部１０５１から供給される座標に基づいて、上述した式（６）および式（７）で示されるベクトルＸｆ２およびベクトルＹｆ２を生成する。そして、動き統合部１０５２は、ベクトルＸｆ２およびベクトルＹｆ２のペア［Ｘｆ２，Ｙｆ２］を出力統合部１０５６に供給する。
【０１６４】
動き統合部１０５５は、逆方向動き検出部１０５４から供給される座標に基づいて、上述した式（８）および式（９）で示されるベクトルＸｂ２およびベクトルＹｂ２を生成する。そして、動き統合部１０５５は、ベクトルＸｂ２およびベクトルＹｂ２のペア［Ｘｂ２，Ｙｂ２］を出力統合部１０５６に供給する。
【０１６５】
出力統合部１０５６は、動き統合部１０５２および動き統合部１０５５からそれぞれ供給されたベクトルのペアに基づいて、それらのベクトルのペアの組み合わせ［Ｘｆ２，Ｙｆ２，Ｘｂ２，Ｙｂ２］を出力するようになされている。
【０１６６】
以上の処理が、第１階層動き検出部１０４から供給されるベクトルX1(w、h)、およびベクトルＹ1(w、h)に対応する追尾点郡のそれぞれにおいて行われる。従って、ベクトルＸｆ２およびベクトルＹｆ２、並びにベクトルＸｂ２およびベクトルＹｂ２を、より一般化して記述すると、式（２２）乃至式（２５）のように、ベクトルXｆ２(w、h)、およびベクトルＹｆ２(w、h)、並びにベクトルXｂ２(w、h)、およびベクトルＹｂ２(w、h)として示される。
【０１６７】
【数２２】
0004507129.tif 000023
【数２３】
0004507129.tif 000024
【数２４】
0004507129.tif 000025
【数２５】
0004507129.tif 000026
【０１６８】
例えば、ｗ、ｈの範囲が±２である場合、式（２２）乃至式（２５）により、全部で２５個の追尾点群が生成されることになる。
【０１６９】
図１４に戻って、第２階層動き検出部１０５からの出力であるベクトルXｆ２(w、h)、およびベクトルＹｆ２(w、h)、並びにベクトルXｂ２(w、h)、およびベクトルＹｂ２(w、h)は、テーブル１０６と、追尾点距離算出部１０７に供給される。
【０１７０】
テーブル１０６では、ベクトルXｆ２(w、h)、およびベクトルＹｆ２(w、h)、並びにベクトルXｂ２(w、h)、およびベクトルＹｂ２(w、h)で特定される図９の各フレームの座標に対して、重み付け演算を行うことにより、追尾点の画素位置として、信頼性をより高いものとする。
【０１７１】
すなわち、図１０を参照して上述したように、ベクトルXｆ２(w、h)、およびベクトルＹｆ２(w、h)、並びにベクトルXｂ２(w、h)、およびベクトルＹｂ２(w、h)の各要素がベクトルＸ２およびＹ２の各要素と対応付けられた表（テーブル）が生成される。なお、ベクトルＸ２とベクトルY２は、上述した式（１０）乃至式（１３）により求めることができる。
【０１７２】
テーブル１０６は、図１０に示されるような表を、図１４における第２階層動き検出部１０５から供給されるベクトルXｆ２(w、h)、およびベクトルＹｆ２(w、h)、並びにベクトルXｂ２(w、h)、およびベクトルＹｂ２(w、h)に対応する追尾点のそれぞれについて保持する。従って、ベクトルX２、およびベクトルＹ２を、より一般化して記述すると、式（２６）乃至式（２９）により求められる、ベクトルX２(w、h)、およびベクトルＹ２(w、h)として示される。
【０１７３】
【数２６】
0004507129.tif 000027
【数２７】
0004507129.tif 000028
【数２８】
0004507129.tif 000029
【数２９】
0004507129.tif 000030
【０１７４】
例えば、ｗ、ｈの範囲が±２である場合、式（２８）および式（２９）により、全部で２５個の追尾点群が生成されることになり、テーブル１０６で生成されて保持される表（テーブル）の数も２５個になる。テーブル１０６は、これら２５個の表を、第１階層動き検出部１０４から供給されるベクトルX1(w、h)、およびベクトルＹ1(w、h)に対応付けて保持（記憶）する。
【０１７５】
図１４に戻って、追尾点距離算出部１０７は、第２階層動き検出部１０５から供給される、ある追尾点郡のベクトルＸｆ２、およびベクトルＹｆ２、ならびにベクトルＸｂ２、およびベクトルＹｂ２により供給される追尾点群に基づいて、階層化部１０３で生成される画像Ｆ２における順方向動き検出での追尾点と、逆方向動き検出での追尾点の距離を算出する。
【０１７６】
追尾点距離算出部１０７は、例えば、図９に示される画像Ｆ２の６つのフレームの中で、時間軸上の中間位置における、順方向動き検出での追尾点と、逆方向動き検出での追尾点の距離を算出するのである。図９の例では、画像Ｆ２の時間軸上の中間位置は、図中左から３番目のフレームと、図中左から４番目のフレームの中間に位置する、いわば仮想的なフレームとなる。
【０１７７】
追尾点距離算出部１０７は、順方向動き検出での追尾点と、逆方向動き検出での追尾点の距離Ｌｔを、式（３０）乃至式（３４）により、または式（３５）により算出する。ここで、ＦＮは階層化部１０３で間引かれるフレーム間隔である。
【０１７８】
ＦＮが奇数の場合
【数３０】
0004507129.tif 000031
【数３１】
0004507129.tif 000032
【数３２】
0004507129.tif 000033
【数３３】
0004507129.tif 000034
【数３４】
0004507129.tif 000035
【０１７９】
ＦＮが偶数の場合
【数３５】
0004507129.tif 000036
【０１８０】
なお、いまの場合、階層化部１０３で間引かれるフレーム間隔は５なので、ＦＮの値は５であって奇数だから、式（３０）乃至式（３４）により算出されることになる。
【０１８１】
ここで求められる追尾点の距離Ｌｔは、異なる時間方向（順方向と逆方向）から動き検出した結果の中間フレーム付近における差異を示す指標であり、距離が小さいほど、追尾の信頼性が高いと考えられる。
【０１８２】
このような追尾点の距離Ｌｔが、図１４における第２階層動き検出部１０５からの出力であるベクトルXｆ２(w、h)、およびベクトルＹｆ２(w、h)、並びにベクトルXｂ２(w、h)、およびベクトルＹｂ２(w、h)により特定される追尾点のそれぞれについて算出される。従って、追尾点の距離Ｌｔを、より一般化して記述すると、式（３６）乃至式（４０）、または式（４１）により算出される距離Ｌｔ(w、h)として表される。
【０１８３】
ＦＮが奇数の場合
【数３６】
0004507129.tif 000037
【数３７】
0004507129.tif 000038
【数３８】
0004507129.tif 000039
【数３９】
0004507129.tif 000040
【数４０】
0004507129.tif 000041
【０１８４】
ＦＮが偶数の場合
【数４１】
0004507129.tif 000042
【０１８５】
例えば、ｗ、ｈの範囲が±２である場合、式（４０）、または式（４１）により得られる距離の値は、全部で２５個となる。
【０１８６】
図１４に戻って、差分算出部１０８は、階層化部１０３から供給される画像Ｆ１においてこれから追尾を開始するフレーム（現フレームと称する）と、メモリ１０９に保持されている１つ前の追尾開始フレームであるフレームＦ１ｂとの間で差分を算出する。例えば、画像F１のフレーム間隔が１／５に間引かれている場合、フレームF１ｂは、現フレームより５フレーム前のフレームとなる。
【０１８７】
差分算出部１０８は、図１７に示されるように、メモリ１０９に保持されているフレームＦ１ｂにおける、過去の追尾点（ｘｐ、ｙｐ）を中心としたブロックＢＬを設定し、現フレームにおけるある追尾点候補（ｘ０、ｙ０）を中心としたブロックＢＬを設定する。
【０１８８】
図１７Ａは、メモリ１０９に保持されているフレームＦ１ｂを表しており、図中黒い円で示される位置が、過去（１つ前のフレーム）の追尾点の座標（ｘｐ、ｙｐ）とされる。また、追尾点の座標（ｘｐ、ｙｐ）を中心とした矩形の領域であるブロックＢＬが設定されている。
【０１８９】
図１７Ｂは、現フレームを表しており、図中黒い円で示される位置が、候補点抽出部１０２が抽出した２５個の追尾点候補のうちの１つであって、現在の追尾点候補の座標（ｘ０、ｙ０）を表している。
【０１９０】
図１７Ｂにおいて、現在の追尾点候補の座標は、ｗ＝−２、ｈ＝−２として抽出された追尾点候補の座標とされ、候補点抽出部１０２により抽出される２５個の追尾点の範囲を表す矩形の領域（「追尾点候補の範囲」）のうち、図中最も左上に位置する追尾点候補とされている。そして、現在の追尾点候補の座標（ｘ０、ｙ０）を中心とした矩形の領域であるブロックＢＬが設定されている。
【０１９１】
従って、実際には、図１７Ｂの「追尾点候補の範囲」に含まれる２５個の追尾点候補のそれぞれを中心とした２５通りのブロックＢＬが設定されることになる。
【０１９２】
差分算出部１０８は、図１７ＡのブロックＢＬと、図１７ＢのブロックＢＬとの間で、例えば、画素の値の差分絶対値総和を演算する。すなわち、図１７ＡのフレームＦ１ｂのブロックＢＬ（１個）と、図１７Ｂの現フレームのブロックＢＬ（２５個）との間で、２５通りの差分絶対値総和が演算されることになる。ここで、演算される差分絶対値総和の値を、Ｄｔ(w、h)で表すものとする。
【０１９３】
差分算出部１０８により演算される差分絶対値総和の値Ｄｔ(w、h)は、例えば、候補点抽出部１０２が抽出する２５個の追尾点候補のそれぞれが、図９の図中最も左側のフレームにおける追尾点の座標（ｘ0，ｙ0）として相応しいものであったか否かを判定するために用いることができる。例えば、差分絶対値総和の値Ｄｔ(w、h)が、著しく大きい値であれば、その追尾点候補に基づいて、図９の順方向検出、または逆方向検出が行われることは適当とは言えない。
【０１９４】
差分算出部１０８により算出された差分絶対値総和の値Ｄｔ(w、h)は、追尾点乗換決定部１１０に供給される。
【０１９５】
図１４に戻って、追尾点乗換決定部１１０は、候補点抽出部１０２で抽出される全ての追尾点候補に対応する追尾点距離算出部１０７の算出結果Ｌｔ(w、h)と、候補点抽出部１０２で抽出される全ての追尾点候補に対応する差分算出部１０８の結果Ｄｔ(w、h)に基づいて追尾点の乗り換えを行う。
【０１９６】
追尾点乗換決定部１１０は、候補点抽出部１０２が抽出する２５個の追尾点候補の中心の座標を（ｘ０(0,0)、ｙ０(0,0)）とし、式（４２）および式（４３）を満たす追尾点候補を選択する。
【０１９７】
【数４２】
0004507129.tif 000043
【数４３】
0004507129.tif 000044
【０１９８】
すなわち、例えば、２５個の追尾点候補（ｘ０(w、h)、ｙ０(w、h)）のそれぞれにおいて、追尾点候補の中心（ｘ０(0,0)、ｙ０(0,0)）におけるＤｔ（ｘ０(0,0)、ｙ０(0,0)）の値とＤｔ（ｘ０(w、h)、ｙ０(w、h)）との比較を行って、Ｄｔ（ｘ０(0,0)、ｙ０(0,0)）の値以下の値のＤｔ（ｘ０(w、h)、ｙ０(w、h)）に対応し、かつ追尾点候補の中心（ｘ０(0,0)、ｙ０(0,0)）におけるＬｔ（ｘ０(0,0)、ｙ０(0,0)）の値とＬｔ（ｘ０(w、h)、ｙ０(w、h)）との比較を行って、Ｌｔ（ｘ０(0,0)、ｙ０(0,0)）の値以下の値のＬｔ（ｘ０(w、h)、ｙ０(w、h)）に対応する追尾点候補（ｘ０(w、h)、ｙ０(w、h)）を選択するのである。
【０１９９】
式（４２）および式（４３）を満たす追尾点候補のそれぞれは、追尾点候補の中心と比較して、過去の追尾点との相関が同等または高いと考えられ、かつ第２階層動き検出部１０５の処理結果からも、追尾の信頼性が追尾点候補の中心よりも高いと考えられるものとなる。
【０２００】
上述したように、フレームｂ１の過去の追尾点に対して第１階層動き検出部１０４のブロック位置検出部１０４１がブロック位置を検出することにより、現フレームの追尾点候補の中心の座標が特定されることになる。このとき、図１５と図１６を参照して上述したように、第１階層動き検出部１０４のブロック位置検出部１０４１は、所定の追尾候補点を中心とする動き検出画素範囲を設定して、動き検出画素範囲に含まれる全ての画素において検出されたブロック位置の平均の座標値を検出するので、必ずしも追尾点候補の中心が過去の追尾点との相関が最も高いとは限らないのである。
【０２０１】
そこで、追尾点乗換決定部１１０は、式（４４）乃至式（４９）に示される演算を行って、追尾点の乗り換えを行う。ただしｎｔｚは乗り換え後の追尾点を示し、Ｋｎは式（４２）および式（４３）を満たす追尾点候補の総数を示す。
【０２０２】
【数４４】
0004507129.tif 000045
【数４５】
0004507129.tif 000046
【数４６】
0004507129.tif 000047
【数４７】
0004507129.tif 000048
【数４８】
0004507129.tif 000049
【数４９】
0004507129.tif 000050
（式中の［  ］は、切捨て処理を意味している。）
【０２０３】
このように、決定された乗り換え後の追尾点ｎｔｚは、テーブル１０６、およびメモリ１０９に供給される。
【０２０４】
図１４に戻って、テーブル１０６では、追尾点乗換決定部１１０で乗り換えられた追尾点ｎｔｚに該当する追尾点郡に対応するベクトルＸ２、ベクトルＹ２を読み出し、第３階層動き検出部１１１へ入力する。テーブル１０６には、図１０を参照に示される表が２５個保持されているので、テーブル１０６は、乗り換え後の追尾点ｎｔｚの座標を、（ｘ０(w、h)、ｙ０(w、h)）に変換し、ｗ、ｈに対応する表を読み出すのである。
【０２０５】
上述したように、テーブル１０６には、図１０に示されるような表が、それぞれ第１階層動き検出部１０４から供給されるベクトルX1(w、h)、およびベクトルＹ1(w、h)に対応付けられて保持（記憶）されている。そして、ベクトルX1(w、h)、およびベクトルＹ1(w、h)は、上述したように、全ての追尾点候補（ｘ０(w、h)、ｙ０(w、h)）毎に、式（１８）、および式（１９）が生成され、それぞれの演算結果が（ｘ５(w、h)、ｙ５(w、h)）とされ、式（２０）、および式（２１）のように、ベクトルX1(w、h)、およびベクトルＹ1(w、h)として示されたものである。
【０２０６】
式（４９）に示される乗り換え後の追尾点ｎｔｚは、ベクトルX1(w、h)、およびベクトルＹ1(w、h)の要素のうち、追尾点候補の座標（ｘ０(w、h)、ｙ０(w、h)）に対応するものである。テーブル１０６は、乗り換え後の追尾点ｎｔｚのｘ座標値とｙ座標値に基づいて、追尾点候補の座標（ｘ０(w、h)、ｙ０(w、h)）を特定し、特定された追尾点候補の座標（ｘ０(w、h)、ｙ０(w、h)）を含むベクトルX1(w、h)、およびベクトルＹ1(w、h)を特定する。そして、その特定されたベクトルX1(w、h)、およびベクトルＹ1(w、h)に対応付けられて保持されている表に基づいて、追尾点乗換決定部１１０で乗り換えられた追尾点ｎｔｚに該当する追尾点郡の座標を表すベクトルＸ２、ベクトルＹ２が特定されて読み出され、第３階層動き検出部１１１に供給されるのである。
【０２０７】
テーブル１０６から読み出された表は、図１０に示されるように構成されるものなので、図１０の最も下側の行（上から４番目の行）であって、「X２」または「Y２」として示された行の各値を、それぞれベクトルＸ２、ベクトルＹ２の要素とすればよい。テーブル１０６から、ベクトルＸ２、ベクトルＹ２が読み出されたことによって、フレーム間引き部１０３１により間引かれる前の画像の各フレームの追尾点の画素の座標を表す情報が出力されたことになる。
【０２０８】
メモリ１０９は、追尾点乗換決定部１１０で追尾点の乗り換えが決定されると、階層化部１０３で生成される画像Ｆ１の現フレームにおいて、乗り換え後の追尾点ｎｔｚを中心としたブロックＢＬを設定するとともに、その現フレームを、フレームＦ１ｂとしてメモリ１０９に上書きする。
【０２０９】
すなわち、図１８に示されるように、画像Ｆ１の現フレームの追尾点の乗り換えが決定されると、そのフレームをフレームＦ１ｂとして、乗り換え後の追尾点ｎｔｚを過去の追尾点（ｘｐ、ｙｐ）として、新たなフレームの追尾点の乗り換えの処理が実行されるのである。
【０２１０】
なお、候補点抽出部１０２への入力が、初期追尾点（ｘｓ、ｙｓ）であった場合、候補点抽出部１０２からは、追尾点候補の中心（ｘ０(0,0)、ｙ０(0,0)）のみが出力されるので、追尾点乗換決定部１１０では、追尾点の乗り換えが行われない。
【０２１１】
図１４に戻って、テーブル１０６から、ベクトルＸ２、ベクトルＹ２の供給を受けた第３階層動き検出部１１１は、最終的な追尾点の座標値のベクトルＸ３およびベクトルＹ３を生成する。
【０２１２】
図１４の画像処理装置３００における第３階層動き検出部１１１の構成例も、図１１を参照して上述した構成と同様である。
【０２１３】
ブロック位置検出部１１１１は、テーブル１０６から供給されたベクトルＸ２、ベクトルＹ２により特定される画像Ｆ２上での座標値を、入力画像信号Ｖｉｎの画像に置き直した座標値のベクトルＸ２ｄ、ベクトルＹ２ｄを、上述した式（１４）および式（１５）により演算する。
【０２１４】
図１１のブロック位置検出部１１１１は、時間的に後のフレームにおいて、前のフレームでのブロックＢＬと同じ位置を中心としたサーチ範囲を設定し、そのサーチ範囲は、例えば、現フレームでのブロックＢＬと同じ位置を基準とし、水平、垂直方向のそれぞれに−１乃至＋１画素分の矩形の領域とされる。
【０２１５】
そして、ブロック位置検出部１１１１は、前のフレームのブロックＢＬと後のフレームのサーチ範囲内の候補ブロックとの間で差分絶対値総和の演算を行って、差分絶対値総和が最小となった候補ブロックの中心となる画素位置を特定する座標（ｍｖｘ、ｍｖｙ）を動き統合部１０４２へ供給する。
【０２１６】
すなわち、ブロック位置検出部１１１１は、図１２に示されるように、縮小された画像F２の[Ｘ２、Ｙ２]により特定された画素位置に対応する入力画像信号Vinの画像の画素位置を、[Ｘ２ｄ、Ｙ２ｄ]として求める。また、ブロック位置検出部１１１１は、[Ｘ２ｄ、Ｙ２ｄ]により特定された入力画像信号Vinの画像の画素位置に基づいて差分絶対値総和の演算を行って各フレームの追尾点の画素位置を特定するのである。
【０２１７】
動き統合部１１１２は、例えば、図１２の入力画像信号Vinの画像の各フレームの追尾点の画素位置を特定する座標を、ベクトルX３、ベクトルＹ３として出力するようになされている。例えば、フレームｉにおける追尾点を（ｘｉ＿３、ｙｉ＿３）とすると、第３階層動き検出部１１１で算出される追尾点郡のベクトルＸ３、ベクトルＹ３は、それぞれ上述した式（１６）、式（１７）で表されることになる。
【０２１８】
すなわち、第３階層動き検出部１１１では、縮小された画像Ｆ２での追尾点に対応する、入力画像信号Ｖｉｎの画像における追尾点を特定するのである。
【０２１９】
このようにして得られたベクトルX３、およびベクトルＹ３により特定される入力画像信号Vinの画像の各フレームの画素位置が、最終的な追尾点として以後の処理に用いられることになる。
【０２２０】
図１４に戻って、第３階層動き検出部１１１から出力されるベクトルX３，ベクトルＹ３は、出力画像生成部１１３および追尾点更新部１１２に供給される。追尾点更新部１１２は、ベクトルX３，ベクトルＹ３により特定される、例えば、時間的に最も後のフレーム（例えば、図１２の最も右側のフレーム）の追尾点の座標を新たな追尾点の座標として記憶（更新）する。そして、更新された座標が新たな追尾点の座標（ｘｔ，ｙｔ）として候補点抽出部１０２に供給されることになる。
【０２２１】
出力画像生成部１１３は、第３階層動き検出部１１１から供給されるベクトルX３，ベクトルＹ３により特定される追尾点に基づいて、入力画像に追尾点の情報を表示した画像を生成し、生成された画像の出力画像信号Ｖｏｕｔを出力する。
【０２２２】
なお、図１３を参照して上述した場合と同様に、図１４の画像処理装置３００の場合も、階層化部１０３において、フレームの間引き処理のみが行われるようにし、縮小画像を生成しないようにしてもよい。階層化部１０３が、入力画像信号の画像をそのまま、画像Ｆ２として出力し、画像F2に対して、フレームの間引き処理を行って画像F１の生成を行う場合、図１４の第３階層動き検出部１１１は不要である。
【０２２３】
このようにして追尾点が特定されてオブジェクトが追尾される。
【０２２４】
本発明の画像処理装置３００においては、与えられた追尾点の画像のフレームから、時間的に離れたフレーム（例えば、５フレーム後のフレーム）における追尾点を特定するようになされている。そして、時間的に離れた２つフレームの間に位置するフレームの追尾点を特定していくようにしたので、より信頼性の高いオブジェクトの追尾が可能となる。
【０２２５】
また、本発明の画像処理装置３００においては、候補点抽出部１０２により、複数の追尾点候補が設定されて、それぞれの追尾点候補に基づく追尾が行われ、追尾結果を比較して追尾点の乗り換えがなされる。従って、例えば、追尾の処理中に、追尾点が、本来追尾すべきオブジェクトの外部に設定されてしまい、誤ったオブジェクトが追尾されてしまう可能性が低くなる。
【０２２６】
図１９は、図１の画像処理装置１００または図１４の画像処理装置３００の出力画像生成部１１３により生成される出力画像の例を示す図である。同図は、図中縦方向に時間が経過していくものとする。すなわち、図中最も上の画像が、例えば、第１番目のフレームの画像であり、図中上から２番目の画像が、第２番目のフレームの画像であり、図中最も下の画像が、第３番目のフレームの画像である。
【０２２７】
また、図１９においては、分かり易くするため、入力画像と出力画像が並べて示されている。すなわち、図中左側に縦方向に並べられた３つの画像が入力画像信号Ｖｉｎに対応する画像（入力画像）とされ、図中右側に縦方向に並べられた３つの画像が出力画像信号Ｖｏｕｔに対応する画像（出力画像）とされる。
【０２２８】
図１９の画像は、画面を右から左へ移動する人が表示された動画像であり、この例では、人の頭４０１が、追尾すべきオブジェクトとされている。出力画像においては、人の頭４０１にゲート４０２が重ねられて表示されている。このように、追尾するオブジェクトを簡単に識別できるように、出力画像が生成されて表示される。
【０２２９】
また、ゲート４０２とともに追尾点が表示されるようにしてもよい。図１９の出力画像の例においては、ゲート４０２の中央部に十字型の記号により追尾点の位置が示されている。
【０２３０】
図２０と図２１を参照して、本発明の画像処理装置１００または画像処理装置３００の効果について説明する。
【０２３１】
図２０は、従来の画像処理装置によるオブジェクトの追尾の例を示す図である。同図においては、図中横方向に時間が経過していくものとする。すなわち、図中最も左の画像が、例えば、第１番目のフレームの画像であり、図中左から２番目の画像が、第２番目のフレームの画像であり、・・・図中最も右の画像が、第６番目のフレームの画像である。
【０２３２】
また、図２０においては、入力画像と出力画像が並べて示されている。すなわち、図中上側に横方向に並べられた６つの画像が入力画像信号に対応する画像（入力画像）とされ、図中右側に横方向に並べられた６つの画像が出力画像信号に対応する画像（出力画像）とされる。
【０２３３】
図２０の画像は、正面を向いた人が序々に右を向く動画像であり、この例では、人の右目が、追尾すべきオブジェクトの追尾点とされている。
【０２３４】
図２０の出力画像においては、例えば、図中最も右側の画像では、図中十字の記号で示される追尾点が人の顔が離れてしまっている。これは、人が右を向いたことに伴って、右目が画面に表示されなくなったためである。
【０２３５】
このように、追尾点が人の顔が離れた状態でさらに、追尾を続けると、画面内の人以外のオブジェクトが誤って追尾されてしまうおそれがある。
【０２３６】
図２１は、本発明の画像処理装置によるオブジェクトの追尾の例を示す図である。同図においては、図中横方向に時間が経過していくものとする。すなわち、図２１の図中最も左の画像が、例えば、第１番目のフレームの画像であり、図中左から２番目の画像が、第２番目のフレームの画像であり、・・・図中最も右の画像が、第６番目のフレームの画像である。
【０２３７】
また、図２１においては、入力画像ととともに、第１階層動き検出部での追尾点の位置を表す画像と、第２階層動き検出部での追尾点の位置を表す画像が並べて示されている。すなわち、図中最も上側に横方向に並べられた６つの画像が入力画像信号に対応する画像（入力画像）とされ、入力画像の下に、第１階層動き検出部での追尾点の位置を表す画像、第２階層動き検出部での順方向動き検出による追尾点の位置を表す画像、第２階層動き検出部での逆方向動き検出による追尾点の位置を表す画像、および第２階層動き検出部での追尾点の位置を表す画像が表示されている。
【０２３８】
なお、実際にオブジェクトにゲートが重ねられて表示されるのは、第３階層動き検出部の処理を経た出力画像のみであるが、図２１においては、分かり易くするために、第１階層動き検出部での追尾点の位置を表す画像、第２階層動き検出部での順方向動き検出による追尾点の位置を表す画像、第２階層動き検出部での逆方向動き検出による追尾点の位置を表す画像、および第２階層動き検出部での追尾点の位置を表す画像においても、オブジェクトにゲートが重ねられて表示されている。
【０２３９】
図２１の画像も、図２０の例と同様に、正面を向いた人が序々に右を向く動画像であり、この例では、人の右目が、追尾すべきオブジェクトの追尾点とされている。
【０２４０】
図２１に示されるように、本発明の画像処理装置においては、第１階層動き検出部により第１番目のフレームの画像の追尾点に対応する第６番目のフレームの画像の画素位置（追尾点）が特定される。なお、追尾点の位置は、図中十字の記号で示されている。
【０２４１】
第６番目のフレームの画像においては、人の右目が画面に表示されていないが、第１番目のフレームの画像の追尾点の周辺のブロックとの間で行われる差分絶対値総和の演算により、第６番目のフレームの画像においても、人の右目に近い位置が追尾点として特定される。
【０２４２】
そして、図９を参照して上述したように、順方向動き検出および逆方向動き検出により追尾点の位置が特定され、順方向動き検出の処理結果および逆方向動き検出の処理結果に基づいて、第２階層動き検出部での追尾点の位置が特定されることになる。
【０２４３】
その結果、本発明の画像処理装置においては、例えば、動画像の途中のフレームで、追尾するオブジェクトが表示されなくなる場合であっても、そのオブジェクトの追尾点に近い位置に追尾点が設定され、追尾が継続されるようにすることが可能となる。
【０２４４】
例えば、順方向動き検出だけでは、従来の画像処理装置の場合と同様に、追尾点が徐々にずれてしまうおそれがあるが、逆方向動き検出をさらに行うことにより、追尾すべきオブジェクトの追尾点に近い位置の画素が追尾され続けるため、順方向動き検出と逆方向動き検出の両者の重み付き平均である第２階層での最終的な追尾点においては、人の画像から追尾点がずれることはない。
【０２４５】
また、第１階層動き検出部において、次のフレームの画像に対する追尾を行うにあたり、過去の追尾点との相関、および第２階層での追尾の信頼性に基づいて、追尾点の乗り換えを行うようにしたので、画像の中の様々な変動に対してロバストに追尾を行うことができる。
【０２４６】
さらに、第１階層動き検出部および第２階層動き検出部では、平均値を用いた縮小画像が処理されるので、入力画像のノイズ成分や高周波成分の影響を受けにくい動き検出を行うことも可能となる。そして、第３階層動き検出部で動き検出の範囲を限定して、より細かい動き検出を行うようにしたので、最終的にはより詳細に追尾点の調整を行うことができる。
【０２４７】
ところで、図１の画像処理装置１００または図１４の画像処理装置３００において上述した初期追尾点決定部１０１を、図２とは異なる構成とすることも可能である。
【０２４８】
図２２は、初期追尾点決定部１０１の別の構成例を示すブロック図である。図２に示した構成においては、追尾点をユーザが指定するようにしたが、図２２に示される構成においては、追尾点が自動的に指定されるようになされている。
【０２４９】
図２２の初期追尾点決定部１０１において、入力画像信号Ｖｉｎは、オブジェクト抽出部１０１３へ入力される。オブジェクト抽出部１０１３では、入力画像信号Ｖｉｎとテンプレート保持部１０１２に記録されているテンプレート画像との差分からオブジェクトを抽出するようになされている。
【０２５０】
例えば、図２３に示されるような画像がテンプレート保持部１０１２に記録されているものとする。この例では、建物が２つ写った画像がテンプレート画像とされている。
【０２５１】
いま、図２４に示されるような画像が入力画像信号Ｖｉｎの画像としてオブジェクト抽出部１０１３に供給されたものとする。オブジェクト抽出部１０１３は、図２３に示されるテンプレート画像に対し、図２４に示される画像に含まれるテンプレート画像と異なる領域を抽出することになる。例えば、図２５に示されるようにオブジェクトが抽出されることになる。この例では、自動車がオブジェクトとして抽出されている。
【０２５２】
例えば、監視カメラで同じ場所の画像を撮影し続ける場合など、オブジェクトが含まれない状態の画像をテンプレート画像として記録しておけば、何らかのオブジェクトが含まれる画像が撮影されると、テンプレート画像との差分からオブジェクトの領域を抽出することが可能となる。オブジェクトの領域の抽出は、例えばテンプレート画像、入力画像信号Ｖｉｎの画像との間で対応する画素値の差分を演算し、各画素の差分を所定の閾値と比較して、閾値より大きい差分が大きい値となった画素を抽出するようにすればよい。
【０２５３】
また、日照や天候の変化など、オブジェクトが含まれていない画像であっても、テンプレート画像との差分が大きい画素が多い画像が撮影された場合、その入力画像信号Ｖｉｎの画像を、テンプレート画像に上書きするようにしてもよい。
【０２５４】
図２２に戻って、重心算出部１０１４は、オブジェクト抽出部１０１３で抽出された領域の重心を、式（５０）および式（５１）により算出する。ただし（ｘｉ、ｙｉ）は抽出されたオブジェクトの座標、Ｏｎは抽出されたオブジェクトの画素数を示す。
【０２５５】
【数５０】
0004507129.tif 000051
【数５１】
0004507129.tif 000052
【０２５６】
重心算出部１０１４で算出される重心の座標が、初期追尾点（ｘｓ、ｙｓ）として用いられることになる。
【０２５７】
このようにすることで、追尾点が自動的に指定されてオブジェクトの追尾が行われるようにすることができる。
【０２５８】
ところで、追尾点は、通常、画面の中で移動するオブジェクトの中の１点として設定される。従って、例えば、入力画像信号の中で移動するオブジェクトを抽出することが可能であれば、その抽出されたオブジェクトを構成する画素の領域内においてのみ、追尾点の検出を行うことが望ましい。
【０２５９】
図２６は、第１階層動き検出部１０４の別の構成例を示すブロック図である。同図の例では、第１階層動き検出部１０４において、移動するオブジェクトを抽出し、その抽出されたオブジェクトを構成する画素の領域内においてのみ、追尾点の検出を行うようになされている。
【０２６０】
なお、図２６に示される第１階層動き検出部１０４は、例えば、画像の中の所定のオブジェクトを追尾しながら、オブジェクトの動きに合わせてカメラの画角が変化する場合などに用いられるようにすると、特に効果的な構成となる。
【０２６１】
図２６の第１階層動き検出部１０４において、入力される画像Ｆ１は、遅延部１０４０、ブロック位置検出部１０４１、および画面動き検出部１０４３に供給される。遅延部１０４０では、画像Ｆ１を２フレーム遅延させ、ブロック位置検出部１０４１、および画面動き検出部１０４３に供給するようになされている。
【０２６２】
画面動き検出部１０４３では、画像Ｆ１の画面動きを検出する。
【０２６３】
画面動き検出部１０４３は、注目フレームに対し、時間方向で前後のフレームに対し、動き検出を行う。画面動き検出部１０４３は、例えば、図２７に示されるように、画像Ｆ１の１つのフレームの画面全体を８×８のブロックに分割し、それらのブロック毎にブロックマッチングによって動きベクトルを算出する。そして各ブロックの動きベクトルのヒストグラムを作成し、最も頻度の大きい動きベクトルを画面全体の動きベクトルとして用いるようになされている。
【０２６４】
これにより、図２８に示されるように、注目フレームより時間的に前のフレームの画像との間で画面動きベクトルＡｍｖ１が検出され、注目フレームより時間的に後のフレームの画像との間で画面動きベクトルＡｍｖ２が検出される。なお、図２８においては、横軸が時間とされ、図中左から右へ時間が経過するものとする。
【０２６５】
画面動き検出部１０４３により検出された、画面動きベクトルＡｍｖ１および画面動きベクトルＡｍｖ２は、追尾領域検出部１０４４に供給される。
【０２６６】
図２９は、追尾領域抽出部１０４４の詳細な構成例を示すブロック図である。
【０２６７】
追尾領域検出部１０４４は、画面動き検出部１０４３で検出された画面動きベクトルに基づいて、後述する領域内ブロック位置検出部１０４５で動き検出を行うべき領域を検出する。
【０２６８】
画面位置シフト部１０４４０−１、および画面位置シフト部１０４４０−２は、それぞれ、画像F1の注目フレーム、および注目フレームより時間的に後のフレームの画面位置をシフトさせる。
【０２６９】
画面位置シフト部１０４４０−１、および画面位置シフト部１０４４０−２は、例えば、図３０に示されるように、画面動きベクトルＡｍｖ１および画面動きベクトルＡｍｖ２に対して、動きベクトルと逆向きの方向に画面の位置をシフトする。図３０は、図中縦軸が時間とされ、図中上から下に向かって時間が経過するものとし、図中のほぼ中央が注目フレームの時間的位置に対応する。
【０２７０】
このように画面位置をシフトさせることで、画面動き（例えば、カメラの動き）による位相のずれを合わせた画像が生成される。すなわち、時間的に前の画像と時間的に後の画像とにおいて、背景の画像の位置がほぼ一致する位置に移動されるように画面の位置がシフトされる。
【０２７１】
フレーム差分算出部１０４４１−１、画面位置をシフトさせた注目フレームの画像と注目フレームより時間的に前のフレームの画像との間で差分を算出する。また、フレーム差分算出部１０４４１−２は、画面位置をシフトさせた注目フレームの画像と、画面位置をシフトさせた注目フレームより時間的に後のフレームの画像との間で差分を算出する。ここで差分の算出は、例えば差分絶対値を算出し、所定の閾値より大きい値となる画素を抽出することにより行われる。
【０２７２】
フレーム差分算出部１０４４１−１、およびフレーム差分算出部１０４４１−２の処理により、図３０において、「フレーム差分算出」と記された画像の情報が得られることになる。図中のハッチングで示された部分が、それぞれフレーム差分算出部１０４４１−１、およびフレーム差分算出部１０４４１−２算出された差分に対応する。
【０２７３】
AND領域抽出部１０４４２は、フレーム差分算出部１０４４１−１、およびフレーム差分算出部１０４４１−２によりフレーム差分が得られた２つの画像において、共通して抽出された画素（ＡＮＤ領域）を抽出する。これにより、図３０において、「ＡＮＤ領域抽出」と記された画像の情報が得られることになる。図中のハッチングで示された部分が、AND領域として抽出された画素に対応している。いまの場合、オブジェクトである自動車の形状の画像がAND領域として抽出されている。
【０２７４】
このようにすることで、オブジェクトが画面全体の動きとは異なる方向に動いても、オオブジェクトの領域を正確に抽出することができる。また、追尾領域抽出部１０４４では、時間方向で間引かれた画像Ｆ１を処理するようにしたので、例えば、オブジェクトの動きが１フレーム間では小さい場合でも、離れたフレーム同士で差分をとることができ、オブジェクトの領域をより抽出し易くすることができる。
【０２７５】
図２６に戻って、領域内ブロック位置検出部１０４５は、入力される追尾点候補（ここでは、入力される追尾点候補の座標が（ｘ，ｙ）で示されている）と、追尾領域検出部１０４４の検出結果とに基づいて、追尾領域に限定した動き検出を行う。
【０２７６】
領域内ブロック位置検出部１０４５の構成は、図５を参照して上述したブロック位置検出部１０４１の構成と同様であるが、領域内ブロック位置検出部１０４５の処理は、追尾点候補、サーチ範囲に追尾領域が含まれるかどうかで処理が限定される。
【０２７７】
追尾点の座標（ｘ，ｙ）が追尾領域検出部１０４４により検出されたAND領域に含まれる場合、サーチ範囲においてマッチングするブロックも追尾領域（追尾領域検出部１０４４により検出されたAND領域）に含まれているブロックだけを対象とする。
【０２７８】
すなわち、領域内ブロック位置検出部１０４５は、時間的に前のフレームの画像の中で、追尾点を中心とする所定の個数の画素で構成されるブロックＢＬを設定し、時間的に後のフレームにおいて、前のフレームでのブロックＢＬと同じ位置を中心としたサーチ範囲を設定する。追尾点の座標（ｘ，ｙ）が追尾領域検出部１０４４により検出されたAND領域に含まれる場合、このサーチ範囲が、追尾領域内に限られるのである。
【０２７９】
そして、領域内ブロック位置検出部１０４５は、差分絶対値総和が最小となった候補ブロックの中心となる画素位置を特定する座標（ｔｖｘ、ｔｖｙ）を領域内動き統合部１０４６へ供給する。
【０２８０】
入力される全ての追尾点候補が追尾領域に含まれず、かつ全ての追尾点候補に対して設定されたそれぞれのサーチ範囲の中に追尾領域に含まれるブロックが存在しない場合、通常の図５を参照して上述した場合と同様のブロック位置の検出が行われる。この場合、領域内ブロック位置検出部１０４５から、ブロック位置検出部１０４１に処理の要求を表す信号などが送出され、ブロック位置検出部１０４１によりブロック位置が検出される。そして、検出されたブロックの中心となる画素位置を特定する座標（ｍｖｘ、ｍｖｙ）が領域内動き統合部１０４６へ供給される。
【０２８１】
なお、全ての追尾点候補に対して設定されたそれぞれのサーチ範囲の中に追尾領域に含まれるブロックが存在するか否かの判定は、例えば、ブロックの全ての画素が追尾領域に含まれる場合に、「領域内」と判定されるようにしてもよいし、ブロックの８割の画素が追尾領域に含まれる場合に「領域内」と判定されるようにしてもよい。
【０２８２】
領域内動き統合部１０４６は、最終的なブロック位置を決定する。領域内動き統合部１０４６は、領域内ブロック位置検出部１０４５からブロック位置の中心の座標（ｔｖｘ、ｔｖｙ）が供給された場合、例えば、領域内ブロック位置検出部１０４５から供給された（ｔｖｘ、ｔｖｙ）の座標の最頻値を最終的なブロック位置とする。またブロック位置検出部１０４１からブロック位置の中心の座標（ｍｖｘ、ｍｖｙ）が入力された場合は、上述の式（１８）または式（１９）に示される演算を行って座標を特定する。
【０２８３】
第１階層動き検出部１０４を、図２６のように構成することで、移動するオブジェクトを抽出し、その抽出されたオブジェクトを構成する画素の領域内においてのみ、追尾点の検出を行うことが可能となる。その結果、追尾点の検出の処理を、より効率的に行うことが可能となる。
【０２８４】
ところで、図１４の画像処理装置３００の構成において、候補点抽出部１０２から階層化部１０３への入力を追加し、階層化部１０３を、図３を参照して上述した構成とは異なる構成とするようにしてもよい。
【０２８５】
図３１は、本発明の一実施の形態に係る画像処理装置のさらに別の構成例を示すブロック図である。同図に示される画像処理装置５００は、図１４の画像処理装置３００の場合と異なり、候補点抽出部１０２から出力される追尾点候補（ｘ０(w、h)、ｙ０(w、h)）が、階層化部１０３にも供給されている。また、同図に示される画像処理装置５００の階層化部１０３の構成は、後述するように、図３を参照して上述した構成とは異なる構成とされる。図３１のそれ以外の部分の構成は、図１４を参照して上述した構成と同様である。
【０２８６】
図３２は、図３１の階層化部１０３の詳細な構成例を示すブロック図である。図３２の階層化部１０３の構成においては、画像Ｆ１を生成する際に、間引くフレームの間隔を可変とすることができる。
【０２８７】
図３２の縮小画生成部１０３０の構成は、図３を参照して上述した場合と同様なので詳細な説明は省略する。
【０２８８】
図３２のフレーム間引き部１０３２は、まず、予め設定された所定のフレーム間隔（例えば５フレーム）で画像Ｆ２を時間方向に間引くことで、画像Ｆ１を生成し、動き差分算出部１０３４、遅延部１０３３へ供給するようになされている。
【０２８９】
動き差分算出部１０３４は、図５のブロック位置検出部１０４１と同様に、追尾点の動きを検出するものであるが、ブロック位置検出部１０４１のようにブロックの位置を表す座標を出力するものではなく、ブロックの差分絶対値総和の値を出力するものとなる。すなわち、図５のブロック位置検出部１０４１は、差分絶対値総和が最小となった候補ブロックの中心となる画素位置を特定する座標（ｍｖｘ、ｍｖｙ）を出力するが、図３２の動き差分算出部１０３４は、座標（ｍｖｘ、ｍｖｙ）に対応する候補ブロックの差分絶対値総和の値を出力するのである。
【０２９０】
動き差分算出部１０３４は、この差分絶対値総和の値を、候補点抽出部１０２から出力される追尾点候補（ｘ０(w、h)、ｙ０(w、h)）の全てに対して算出し、それぞれの差分絶対値総和の値をフレーム間引き指定部１０３５に供給する。
【０２９１】
フレーム間引き指定部１０３５は、動き差分算出部１０３４から供給される差分絶対値総和の値に対応して間引きフレーム間隔を指定する。
【０２９２】
フレーム間引き指定部１０３５は、全ての追尾候補点における差分絶対値総和の値が所定の閾値より大きい場合、フレームの間引き間隔を１フレーム減らす。全ての追尾候補点における差分絶対値総和の値が所定の閾値より大きい場合、間引いたフレーム同士で追尾点近傍に相関のある箇所がないと考えられ、その場合、いわば、フレームを間引き過ぎたということもできる。そこで、フレーム間引き指定部１０３５は、フレームの間引き間隔を１フレーム減らすのである。
【０２９３】
例えば、図３３に示されるような場合を考える。図３３は、予め設定された所定のフレーム間隔（例えば５フレーム）で画像Ｆ２を時間方向に間引くことで生成された画像Ｆ１の例を示す図である。同図においては、図中の縦軸が時間とされ、図中上から下に向かって時間が経過するものとする。また、同図においては、人の頭部６１１が追尾すべきオブジェクトとされており、人の頭部６１１の中に、図中十字の記号で示された追尾点が設定されている。また、図３３においては、フレーム６０１とフレーム６０２の間で５フレーム間引かれているものとする。
【０２９４】
同図のフレーム６０１においては、追尾すべきオブジェクトである人の頭部６１１とともに、別のオブジェクト６１２が表示されている。フレーム６０２においては、人が図中左方向に移動したことにより、追尾すべきオブジェクトである人の頭部６１１が別のオブジェクト６１２の背後に隠れている。ここでは、オブジェクト６１２の背後に隠れた人の画像が図中の点線で示されている。
【０２９５】
図３３に示されるような場合、フレームの間引き間隔を減らさないと、人の頭部６１１を追尾することができないのである。
【０２９６】
一方、フレーム間引き指定部１０３５は、全ての追尾候補点における差分絶対値総和の値が別の所定の閾値より小さい場合、フレーム間引き間隔を１フレーム増やす。全ての追尾候補点における差分絶対値総和の値が所定の閾値より小さい場合、間引いたフレーム同士でオブジェクトの動きが殆どなかったと考えられ、その場合、いわば、フレームを間引き足りないということもできる。フレーム間引き指定部１０３５は、フレームの間引き間隔を１フレーム増やすのである。
【０２９７】
例えば、図３４に示されるような場合を考える。図３４は、予め設定された所定のフレーム間隔（例えば５フレーム）で画像Ｆ２を時間方向に間引くことで生成された画像Ｆ１の別の例を示す図である。同図においては、図３３と同様に、図中の縦軸が時間とされ、図中上から下に向かって時間が経過するものとする。また、同図においても、人の頭部６１１が追尾すべきオブジェクトとされており、人の頭部６１１の中に、図中十字の記号で示された追尾点が設定されている。図３４においても、フレーム６０１とフレーム６０２の間で５フレーム間引かれているものとする。
【０２９８】
同図のフレーム６０１とフレーム６０２においては、追尾すべきオブジェクトである人の頭部６１１がほとんど動いていない。
【０２９９】
図３４に示されるような場合、フレームの間引き間隔を増やしても、人の頭部６１１を追尾することができるのである。また、図３４に示されるような場合、フレームの間引き間隔を増やすことで、無駄な動き検出を行うことがなくなるのである。
【０３００】
図３２の階層化部１０３は、全ての追尾候補点における差分絶対値総和の値が適切な値となるまで、上述のようにフレームの間引き間隔の増減を繰り返す。そして、全ての追尾候補点における差分絶対値総和の値が適切な値となった場合、すなわち、全ての差分絶対値総和の値が所定の閾値以下であり、かつ全ての差分絶対値総和の値が別の所定の閾値以上となった場合、フレーム間引き間隔が決定され、フレーム間引き部１０３２から画像Ｆ１が出力されることになる。
【０３０１】
このように、図３１に示される画像処理装置５００においては、オブジェクトの追尾を行うにあたって最適なフレーム間引間隔が設定されるようにすることができる。従って、図３１の画像処理装置５００においては、さらに正確、かつ効率的にオブジェクトの追尾を行うことができるのである。
【０３０２】
次に、図３５のフローチャートを参照して、図１の画像処理装置１００によるオブジェクト追尾処理について説明する。
【０３０３】
ステップＳ１０１において、画像処理装置１００は、いま入力される入力画像信号Ｖｉｎの画像のフレームが、オブジェクト追尾処理の処理開始フレームであるか否かを判定し、処理開始フレームであると判定された場合、処理は、ステップＳ１０２に進む。
【０３０４】
ステップＳ１０２において、追尾点指定部１０１１は、初期追尾点を決定する。このとき、例えば、マウスなどのポインティングデバイスを介したユーザの操作などに対応して画像信号提示部１０１０において表示された画像の中の１点（例えば、１画素）が初期追尾点として決定される。
【０３０５】
ステップＳ１０２の処理の後、または、ステップＳ１０１において、いま入力される入力画像信号Ｖｉｎの画像のフレームが、オブジェクト追尾処理の処理開始フレームではないと判定された場合、処理は、ステップＳ１０３に進む。
【０３０６】
ステップＳ１０３において、階層化部１０３は、階層化処理を実行する。ここで、図３６のフローチャートを参照して、図３５のステップＳ１０３の階層化処理の詳細な例について説明する。
【０３０７】
ステップＳ１２１において、縮小画生成部１０３０は、入力画像信号の画像について、例えば、ｘ方向で２画素ずつ、ｙ方向で２画素ずつ、計４個の画素の平均値を用いて、入力画像信号の画像を、１／４の大きさに縮小する。
【０３０８】
ステップＳ１２２において、縮小画生成部１０３０は、画像F２を出力する。このとき、例えば、図４に示されるように、入力画像信号の画像とフレームレートが同一であって、画素数が圧縮され、サイズが１／４に縮小された画像Ｆ２が出力される。
【０３０９】
ステップＳ１２３において、フレーム間引き部１０３１は、ステップＳ１２２の処理で出力された画像F2に対して、さらにフレームの間引き処理を行う。
【０３１０】
ステップＳ１２４において、フレーム間引き部１０３１は、画像Ｆ１を出力する。このとき、例えば、図４に示されるように、入力画像信号のサイズが１／４に縮小され、さらに、フレーム間隔が１／５に間引かれた画像Ｆ１が出力される。
【０３１１】
このようにして階層化処理が行われる。
【０３１２】
図３５に戻って、ステップＳ１０３の処理の後、処理は、ステップＳ１０４に進み、第１階層動き検出部１０４は、第１階層動き検出処理を実行する。ここで、図３７のフローチャートを参照して、図３５のステップＳ１０４の第１階層動き検出処理の詳細な例について説明する。
【０３１３】
ステップＳ１４１において、遅延部１０４０は、入力された画像Ｆ１のフレームを、例えば、１フレームに対応する時間分保持することで遅延させ、画像Ｆ１の次のフレームが、ブロック位置検出部１０４１に入力されるタイミングで、遅延させたフレームをブロック位置検出部１０４１に供給する。
【０３１４】
ステップＳ１４２において、ブロック位置検出部１０４１は、上述した式（３）により演算された差分絶対値総和が最小となった候補ブロックを特定することで、ブロック位置を検出する。このとき、例えば、図６Ａと図６Ｂを参照して上述したように、遅延させたフレーム（時間的に前のフレーム）の画像の中で、追尾点を中心とする所定の個数の画素で構成されるブロックＢＬが設定される。そして、時間的に後のフレームにおいて、前のフレームでのブロックＢＬと同じ位置を中心としたサーチ範囲が設定されて、前のフレームのブロックＢＬと後のフレームのサーチ範囲内の候補ブロックとの間で、差分絶対値総和の演算が行われる。
【０３１５】
ステップＳ１４３において、動き統合部１０４２は、ベクトルX1、ベクトルＹ1を出力する。このとき、ブロック位置検出部１０４１から供給される画素位置を特定する座標（ｍｖｘ、ｍｖｙ）と、追尾点更新部１１５から供給される座標（ｘ0，ｙ0）とを対応付けて式（４）および式（５）に示されるように、例えば、ベクトルX1、ベクトルＹ1が生成されて出力される。
【０３１６】
なお、図１５と図１６を参照して上述したように、動き検出画素範囲が設定される場合、動き統合部１０４２では、ブロック位置検出部１０４１から入力されるブロックの位置を、上述した式（１８）、式（１９）の演算により統合する。そして、統合後のブロックの中心となる画素位置と、追尾点更新部１１５から供給される座標（ｘ0，ｙ0）とを対応付けて式（４）および式（５）に示されるように、例えば、ベクトルX1、ベクトルＹ1が生成されて出力されることになる。
【０３１７】
このようにして、第１階層動き検出処理が行われる。
【０３１８】
図３５に戻って、ステップＳ１０４の処理の後、処理は、ステップＳ１０５に進み、第２階層動き検出部１０５は、第２階層動き検出処理を実行する。ここで、図３７のフローチャートを参照して、図３５のステップＳ１０５の第２階層動き検出処理の詳細な例について説明する。
【０３１９】
ステップＳ１６１において、遅延部１０５０は、ステップＳ１２２の処理で出力された画像F２を１フレーム分遅延させる。
【０３２０】
ステップＳ１６２において、順方向動き検出部１０５１は、例えば、図９を参照して上述したように、順方向の動き検出を行う。このとき、例えば、図９の図中最も左側のフレームにおける追尾点に基づいて、図中左から２番目のフレームの追尾点、左から３番目のフレームの追尾点、および左から４番目のフレームの追尾点が検出される。
【０３２１】
ステップＳ１６３において、動き統合部１０５２は、順方向動き検出部１０５１から供給される座標に基づいて、上述したように、式（６）および式（７）で示されるベクトルＸｆ２およびベクトルＹｆ２を生成して出力する。
【０３２２】
ステップＳ１６４において、フレーム入替部１０５３は、画像F２のフレームのそれぞれを逆方向に並べ替えて逆方向動き検出部１０５４に供給する。
【０３２３】
ステップＳ１６５において、逆方向動き検出部１０５４は、例えば、図９を参照して上述したように、逆方向の動き検出を行う。このとき、例えば、図９の図中最も右側のフレームにおける追尾点に基づいて、図中右から２番目のフレームの追尾点、右から３番目のフレームの追尾点、および右から４番目のフレームの追尾点が検出される。
【０３２４】
ステップＳ１６６において、動き統合部１０５５は、逆方向動き検出部１０５４から供給される座標に基づいて、上述したように、式（８）および式（９）で示されるベクトルＸｂ２およびベクトルＹｂ２を生成する。
【０３２５】
ステップＳ１６７において、出力統合部１０５６は、動き統合部１０５２および動き統合部１０５５からそれぞれ供給されたベクトルに基づいて、それらのベクトルのペアの組み合わせ［Ｘｆ２，Ｙｆ２，Ｘｂ２，Ｙｂ２］を出力する。
【０３２６】
このようにして、第２階層動き検出処理が行われる。
【０３２７】
図３５に戻って、ステップＳ１０５の処理の後、ステップＳ１０６において、第３階層動き検出部１１１は、第３階層動き検出処理を実行する。ここで、図３９のフローチャートを参照して、図３５のステップＳ１０６の第３階層動き検出処理の詳細な例について説明する。
【０３２８】
ステップＳ１８１において、遅延部１１１０は、入力画像信号の画像のフレームを遅延させる。
【０３２９】
ステップＳ１８２において、ブロック位置検出部１１１１は、追尾点の座標値を縮小前の画像の座標値に置き換える。このとき、ブロック位置検出部１１１１は、ステップＳ１６７の処理により出力された情報に基づいて、ブロック位置決定部１１４から供給されたベクトルのペア［Ｘ２，Ｙ２］により特定される画素位置を、上述した式（１４）および式（１５）の演算により、入力画像信号Ｖｉｎの画像に置き換える。
【０３３０】
ステップＳ１８３において、ブロック位置検出部１１１１は、ブロック位置を検出する。このとき、例えば、時間的に後のフレームにおいて、前のフレームでのブロックＢＬと同じ位置を中心としたサーチ範囲が設定される。そして、ブロック位置検出部１１１１は、前のフレームのブロックＢＬと後のフレームのサーチ範囲内の候補ブロックとの間で差分絶対値総和の演算を行って、差分絶対値総和が最小となった候補ブロックの中心となる画素位置を特定する座標（ｍｖｘ、ｍｖｙ）を動き統合部１０４２へ供給する。
【０３３１】
ステップＳ１８４において、動き統合部１１１２は、例えば、図１２の入力画像信号Vinの画像の各フレームの追尾点の画素位置を特定する座標を、ベクトルX３、ベクトルＹ３として出力する。このとき、例えば、上述した式（１６）、式（１７）により表されるベクトルX３、ベクトルＹ３が出力される。
【０３３２】
図３５に戻って、ステップＳ１０６の処理の後、処理は、ステップＳ１０７に進む。ステップＳ１０７において、出力画像生成部１１３は、ステップＳ１８４の処理で出力されたベクトルX３、ベクトルＹ３に基づいて、各フレームの追尾点を特定し、出力画像を生成する。このとき、例えば、図１９を参照して上述したような出力画像が生成されることになる。
【０３３３】
ステップＳ１０８において、全フレームで処理が終了したか否かが判定され、まだ、処理が終了していないと判定された場合、処理は、ステップＳ１０９に進み、追尾点更新部１１５は、ステップＳ１８４の処理で出力されたベクトルX３、ベクトルＹ３に基づいて追尾点を更新する。その後、ステップＳ１０１に戻り、それ以降の処理が繰り返し実行される。このように、ステップＳ１０８において、全フレームで処理が終了したと判定されるまで、ステップＳ１０１乃至ステップＳ１０９の処理が実行される。
【０３３４】
このようにして、オブジェクト追尾処理が実行される。本発明においては、与えられた追尾点の画像のフレームから、時間的に離れたフレーム（例えば、５フレーム後のフレーム）における追尾点を特定するようになされている。そして、時間的に離れた２つフレームの間に位置するフレームの追尾点を特定していくようにしたので、より信頼性の高いオブジェクトの追尾が可能となる。
【０３３５】
なお、画像処理装置を、図１３に示されるように構成する場合、ステップＳ１０６の処理、およびステップＳ１２１の処理は実行されないことになる。
【０３３６】
次に、図４０のフローチャートを参照して、図１４の画像処理装置３００によるオブジェクト追尾処理の例について説明する。
【０３３７】
ステップＳ２０２において、画像処理装置３００は、いま入力される入力画像信号Ｖｉｎの画像のフレームが、オブジェクト追尾処理の処理開始フレームであるか否かを判定し、処理開始フレームであると判定された場合、処理は、ステップＳ２０２に進む。
【０３３８】
ステップＳ２０２乃至ステップＳ２０７の処理は、図３５のステップＳ１０２乃至ステップＳ１０７の処理と同様の処理なので、詳細な説明は省略する。
【０３３９】
ステップＳ２０７の処理の後、処理は、ステップＳ２１７に進む。ステップＳ２１７において、全フレームで処理が終了したか否かが判定され、いまの場合、まだ、全フレームで処理が終了していないので、処理は、ステップＳ２１８に進む。
【０３４０】
ステップＳ２１８において、追尾点更新部１１２は、ステップＳ２０６の処理で出力されたベクトルX３、ベクトルＹ３に基づいて追尾点を更新し、処理は、ステップＳ１０１に戻る。
【０３４１】
いまの場合、ステップＳ２０１では、入力画像信号Ｖｉｎの画像のフレームが、オブジェクト追尾処理の処理開始フレームではないと判定されるので、処理は、ステップＳ２０８に進むことになる。
【０３４２】
ステップＳ２０８において、候補点抽出部１０２は、追尾点候補を抽出する。このとき、上述したように、例えば、追尾点候補中心（ｘｓｍ、ｙｓｍ）からｘ方向、ｙ方向ともに±２の範囲を用い、２５個の追尾点候補（ｘ０(w、h)、ｙ０(w、h)）が抽出されることになる。
【０３４３】
ステップＳ２０９の処理は、図３５のステップＳ１０３と同様の処理なので詳細な説明は省略する。
【０３４４】
ステップＳ２１０において、第１階層動き検出部１０４は、第１階層動き検出処理を実行する。ステップＳ２１０の第１階層動き検出処理は、図３７を参照して上述した処理と同様なので、詳細な説明は省略するが、ステップＳ２１０の処理の場合、ステップＳ２０８で抽出された追尾点候補のそれぞれについて、図３７を参照して上述した処理と同様の第１階層動き検出処理が実行されることになる。
【０３４５】
従って、ステップＳ２１０の処理の結果、上述したように、第１階層動き検出部１０４で検出される追尾点郡を表すベクトルX1(w、h)、およびベクトルＹ1(w、h)が、出力されることになる。
【０３４６】
ステップＳ２１１において、第２階層動き検出部１０５は、第２階層動き検出処理を実行する。ステップＳ２１１の第２階層動き検出処理は、図３８を参照して上述した処理と同様なので、詳細な説明は省略するが、ステップＳ２１１の処理の場合、ステップＳ２０８で抽出された追尾点候補のそれぞれについて、図３８を参照して上述した処理と同様の第１階層動き検出処理が実行されることになる。
【０３４７】
従って、ステップＳ２１１の処理の結果、上述したように、第２階層動き検出部１０５からの出力であるベクトルXｆ２(w、h)、およびベクトルＹｆ２(w、h)、並びにベクトルXｂ２(w、h)、およびベクトルＹｂ２(w、h)が、出力されることになる。
【０３４８】
また、上述したように、テーブル１０６では、ステップＳ２１１の処理で出力されたベクトルXｆ２(w、h)、およびベクトルＹｆ２(w、h)、並びにベクトルXｂ２(w、h)、およびベクトルＹｂ２(w、h)で特定される各フレームの座標に対して、重み付け演算を行う。そして、ベクトルXｆ２(w、h)、およびベクトルＹｆ２(w、h)、並びにベクトルXｂ２(w、h)、およびベクトルＹｂ２(w、h)の各要素がベクトルＸ２およびＹ２の各要素と対応付けられた表（テーブル）が生成される。
【０３４９】
その結果、テーブル１０６は、図１０に示されるような表を、第２階層動き検出部１０５から供給されるベクトルXｆ２(w、h)、およびベクトルＹｆ２(w、h)、並びにベクトルXｂ２(w、h)、およびベクトルＹｂ２(w、h)に対応する追尾点のそれぞれについて保持することになり、例えば、全部で２５個の追尾点群が生成されて保持される。
【０３５０】
ステップＳ２１２において、差分算出部１０８は、ステップＳ２０９の処理により階層化部１０３から供給される画像Ｆ１においてこれから追尾を開始するフレーム（現フレームと称する）と、メモリ１０９に保持されている１つ前の追尾開始フレームであるフレームＦ１ｂとの間で差分を算出する。
【０３５１】
このとき、上述したように、例えば、図１７ＡのブロックＢＬと、図１７ＢのブロックＢＬとの間で、例えば、画素の値の差分絶対値総和が演算される。すなわち、図１７ＡのフレームＦ１ｂのブロックＢＬ（１個）と、図１７Ｂの現フレームのブロックＢＬ（２５個）との間で、２５通りの差分絶対値総和が演算され、差分絶対値総和の値Ｄｔ(w、h)がステップＳ２１２の処理の結果出力されることになる。
【０３５２】
ステップＳ２１３において、追尾点距離算出部１０７は、ステップＳ２１１の処理により第２階層動き検出部１０５から供給される、追尾点郡のベクトルＸｆ２、およびベクトルＹｆ２、ならびにベクトルＸｂ２、およびベクトルＹｂ２により供給される追尾点群に基づいて、階層化部１０３で生成される画像Ｆ２における順方向動き検出での追尾点と、逆方向動き検出での追尾点の距離を算出する。
【０３５３】
このとき、上述したように、例えば、図９に示される画像Ｆ２の６つのフレームの中で、時間軸上の中間位置における、順方向動き検出での追尾点と、逆方向動き検出での追尾点の距離が算出される。そして、追尾点の距離Ｌｔが、ステップＳ２１１の処理により第２階層動き検出部１０５から出力されるベクトルXｆ２(w、h)、およびベクトルＹｆ２(w、h)、並びにベクトルXｂ２(w、h)、およびベクトルＹｂ２(w、h)により特定される追尾点のそれぞれについて算出される。
【０３５４】
その結果、上述した式（３６）乃至式（４０）、または式（４１）により算出される距離Ｌｔ(w、h)として表される距離の値が、例えば、全部で２５個と生成されて、ステップＳ２１３の処理結果として出力される。
【０３５５】
ステップＳ２１４において、追尾点乗換決定部１１０は、ステップＳ２１３の処理により出力された距離の値Ｌｔ(w、h)と、ステップＳ２１２の処理により出力された差分絶対値総和の値Ｄｔ(w、h)に基づいて追尾点の乗り換えを行う。
【０３５６】
このとき、上述したように、式（４２）および式（４３）を満たす追尾点候補が選択され、式（４４）乃至式（４９）に示される演算を行って、追尾点の乗り換えが行われる。そして、乗り換え後の追尾点ｎｔｚが、テーブル１０６、およびメモリ１０９に供給される。
【０３５７】
そして、ステップＳ２１４の処理により乗り換えられた追尾点ｎｔｚに該当する追尾点郡に対応するベクトルＸ２、ベクトルＹ２が、テーブル１０６から読み出され、第３階層動き検出部１１１へ供給される。
【０３５８】
ステップＳ２１５において、第３階層動き検出部１１１は、第３階層動き検出処理を実行する。ステップＳ２１５の第３階層動き検出処理は、図３９を参照して上述した処理と同様の処理なので、詳細な説明は省略する。
【０３５９】
ステップＳ２１６において、出力画像生成部１１３は、ステップＳ２１５の処理により第３階層動き検出部１１１から供給されるベクトルX３，ベクトルＹ３により特定される追尾点に基づいて、入力画像に追尾点の情報を表示した画像を生成し、生成された画像の出力画像信号Ｖｏｕｔを出力する。このとき、例えば、図１９を参照して上述したような出力画像が生成されることになる。
【０３６０】
ステップＳ２１６の処理の後、ステップＳ２１７の判定が行われ、まだ、全フレームで処理が終了していないと判定された場合、処理は、ステップＳ２１８に進み、追尾点が更新されて、処理は、ステップＳ２０１に戻る。
【０３６１】
このように、ステップＳ２１７において、全フレームで処理が終了したと判定されるまで、ステップＳ２０１、ステップＳ２０８乃至ステップＳ２１７の処理が実行される。
【０３６２】
このようにして、オブジェクト追尾処理が実行される。図４０の処理では、複数の追尾点候補が抽出されるようにし、複数の追尾点候補のそれぞれに対して、第１階層動き検出処理、および第２階層動き検出処理が施され、それらの処理結果に基づいて、最終的に１つの画素が追尾点として決定される。従って、図３５を参照して上述したオブジェクト追尾処理の場合と比較して、より正確な追尾点を得ることが可能となるのである。
【０３６３】
なお、画像処理装置３００において、第３階層動き検出部１１１が設けられないようにする場合、ステップＳ２０３またはステップＳ２０９の階層化処理におけるステップＳ１２１の処理、並びにステップＳ２０６およびステップＳ２１５の処理は実行されないことになる。
【０３６４】
次に、図４１のフローチャートを参照して、初期追尾点決定部１０１が図２２に示されるように構成される場合の、初期追尾点決定処理について説明する。この処理は、例えば、図３５のステップＳ１０２、または、図４０のステップＳ２０２の処理に代えて実行される処理である。
【０３６５】
図２２の初期追尾点決定部１０１において、入力画像信号Ｖｉｎは、オブジェクト抽出部１０１３へ入力される。オブジェクト抽出部１０１３では、入力画像信号Ｖｉｎとテンプレート保持部１０１２に記録されているテンプレート画像との差分からオブジェクトを抽出するようになされている。
【０３６６】
ステップＳ３０１において、オブジェクト抽出部１０１３は、オブジェクトを抽出する。このとき、例えば、図２３乃至図２５を参照して上述したように、テンプレート画像と異なる領域がオブジェクトとして抽出される。
【０３６７】
ステップＳ３０２において、重心算出部１０１４は、重心を算出する。このとき、ステップＳ３０１の処理で抽出された領域の重心が、上述した式（５０）および式（５１）により算出される。
【０３６８】
ステップＳ３０３において、ステップＳ３０２の処理で算出された重心の座標が、初期追尾点として決定され、初期追尾点決定部１０１から出力される。
【０３６９】
このようにして、初期追尾点が決定される。このようにすることで、自動的に初期追尾点が決定されるようにすることができる。
【０３７０】
次に、図４２のフローチャートを参照して、図４１の初期追尾点決定処理に対応して実行される第１階層動き検出処理の詳細な例について説明する。この処理は、図２６の第１階層動き検出部１０４により実行され、例えば、図３５のステップＳ１０４、図４０のステップＳ２０４、またはステップＳ２１０の処理として、図３７の処理に代えて実行される処理である。
【０３７１】
ステップＳ３２１において、遅延部１０４０は、画像Ｆ１を２フレーム遅延させる。
【０３７２】
ステップＳ３２２において、画面動き検出部１０４３は、画像Ｆ１の画面動きを検出する。このとき、例えば、図２７に示されるように、ブロック毎にブロックマッチングによって動きベクトルが算出されて動きベクトルのヒストグラムが作成され、最も頻度の大きい動きベクトルが画面全体の動きベクトルとして検出される。その結果、図２８に示されるように、注目フレームより時間的に前のフレームの画像との間で画面動きベクトルＡｍｖ１が検出され、注目フレームより時間的に後のフレームの画像との間で画面動きベクトルＡｍｖ２が検出される。
【０３７３】
ステップＳ３２３において、追尾領域検出部１０４４は、追尾領域抽出処理を実行する。ここで、図４３のフローチャートを参照して、図４２のステップＳ３２３の追尾領域抽出処理の詳細な例について説明する。
【０３７４】
ステップＳ３４１において、画面位置シフト部１０４４０−１は、画像F1の注目フレームの画面位置をシフトさせる。
【０３７５】
ステップＳ３４２において、フレーム差分算出部１０４４１−１は、ステップＳ３４１で画面位置をシフトさせた注目フレームの画像と、注目フレームより時間的に前のフレームの画像との間で差分を算出する。
【０３７６】
ステップＳ３４３において、画面位置シフト部１０４４０−２は、画像F1の注目フレームより時間的に後のフレームの画面位置をシフトさせる。
【０３７７】
ステップＳ３４４において、フレーム差分算出部１０４４１−２は、ステップＳ３４１で画面位置をシフトさせた注目フレームの画像と、ステップＳ３４３で画面位置をシフトさせた注目フレームより時間的に後のフレームの画像との間で差分を算出する。
【０３７８】
これにより、例えば、図３０に示されるように、画面動きベクトルＡｍｖ１および画面動きベクトルＡｍｖ２に基づいて画面の位置がシフトされ、図３０において、「フレーム差分算出」と記された画像の情報が得られることになる。
【０３７９】
ステップＳ３４５において、AND領域抽出部１０４４２は、ステップＳ３４３の処理とステップＳ３４４の処理でフレーム差分が得られた２つの画像において、共通して抽出された画素（ＡＮＤ領域）を抽出する。
【０３８０】
これにより、例えば、図３０において、「ＡＮＤ領域抽出」と記された画像の情報が得られることになる。
【０３８１】
このようにして、追尾領域（AND領域）が抽出される。
【０３８２】
図４２に戻って、ステップＳ３２３の処理の後、処理は、ステップＳ３２４に進む。
【０３８３】
ステップＳ３２４において、領域内ブロック位置検出部１０４５は、全ての追尾点候補が追尾領域に含まれず、かつ全ての追尾点候補に対して設定されたそれぞれのサーチ範囲の中に追尾領域に含まれるブロックが存在しないか否かを判定する。
【０３８４】
ステップＳ３２４において、全ての追尾点候補が追尾領域に含まれず、かつ全ての追尾点候補に対して設定されたそれぞれのサーチ範囲の中に追尾領域に含まれるブロックが存在しないと判定された場合、処理は、ステップＳ３２５に進み、ブロック位置検出部１０４１によりブロック位置が検出される。なお、ステップＳ３２５では、追尾領域内でブロック位置の検出ではなく、通常のブロック位置の検出が行われることになる。
【０３８５】
一方、ステップＳ３２４において、いずれかの追尾点候補が追尾領域に含まれるか、または、いずれかの追尾点候補に対して設定されたそれぞれのサーチ範囲の中に追尾領域に含まれるブロックが存在すると判定された場合、処理は、ステップＳ３２６に進み、領域内ブロック位置検出部１０４５の処理は、追尾領域内でブロック位置を検出する。
【０３８６】
ステップＳ３２７において、領域内動き統合部１０４６は、最終的なブロック位置を決定し、ベクトルX1、ベクトルＹ1を出力する。このとき、領域内動き統合部１０４６は、上述したように、領域内ブロック位置検出部１０４５からブロック位置の中心の座標（ｔｖｘ、ｔｖｙ）が供給された場合、例えば、領域内ブロック位置検出部１０４５から供給された（ｔｖｘ、ｔｖｙ）の座標の最頻値を最終的なブロック位置とし、またブロック位置検出部１０４１からブロック位置の中心の座標（ｍｖｘ、ｍｖｙ）が入力された場合は、上述の式（１８）または式（１９）に示される演算を行って座標を特定して最終的なブロック位置とする。
【０３８７】
このようにして、第１階層動き検出処理が実行される。このようにすることで、移動するオブジェクトが抽出され、その抽出されたオブジェクトを構成する画素の領域内においてのみ、追尾点の検出を行うことが可能となる。その結果、追尾点の検出の処理を、より効率的に行うことが可能となる。
【０３８８】
次に、図４４のフローチャートを参照して、図３２の階層化部１０３により実行される階層化処理の詳細な例について説明する。この処理は、例えば、図３５のステップＳ１０３の処理、図４０のステップＳ２０３の処理、またはステップＳ２０９の処理として、図３６の処理に代えて実行される処理である。
【０３８９】
ステップＳ３６１において、図３２の縮小画生成部１０３０は、画像のサイズを縮小する。
【０３９０】
ステップＳ３６２において、縮小画生成部１０３０は、画像Ｆ２を出力する。
【０３９１】
ステップＳ３６３において、図３２のフレーム間引き部１０３２は、予め設定された所定のフレーム間隔（例えば５フレーム）で画像Ｆ２を時間方向に間引く。
【０３９２】
ステップＳ３６４において、動き差分算出部１０３４は、動き差分を算出する。このとき、上述したように、例えば、座標（ｍｖｘ、ｍｖｙ）に対応する候補ブロックの差分絶対値総和の値が出力される。なお、この処理が図４０のステップＳ２０９の処理として実行される場合、ステップＳ３６４では、この差分絶対値総和の値が、ステップＳ２０８で抽出された追尾点候補（ｘ０(w、h)、ｙ０(w、h)）の全てに対して算出される。
【０３９３】
ステップＳ３６５において、フレーム間引き指定部１０３５は、ステップＳ３６４の処理で算出された動き差分（動き差分算出部１０３４から供給される差分絶対値総和の値）が、所定の閾値の範囲内であるか否かを判定する。
【０３９４】
ステップＳ３６５において、ステップＳ３６４の処理で算出された動き差分が、所定の閾値の範囲内ではないと判定された場合、処理は、ステップＳ３６６に進む。
【０３９５】
ステップＳ３６６において、フレーム間引き指定部１０３５は、フレームの間引き間隔を調整する。
【０３９６】
ステップＳ３６６の処理では、上述したように、全ての追尾候補点における差分絶対値総和の値が所定の閾値より大きい場合、フレームの間引き間隔が、例えば、１フレーム減らされる。また、全ての追尾候補点における差分絶対値総和の値が別の所定の閾値より小さい場合、フレーム間引き間隔が、例えば、１フレーム増やされる。
【０３９７】
その後、ステップＳ３６６の処理を経て調整されたフレームの間引き間隔によって、ステップＳ３６３の処理が実行されることになる。
【０３９８】
このように、ステップＳ３６５において、ステップＳ３６４の処理で算出された動き差分が、所定の閾値の範囲内であると判定されるまで、ステップＳ３６３乃至ステップＳ３６６の処理が繰り返し実行されることになる。
【０３９９】
ステップＳ３６５において、ステップＳ３６４の処理で算出された動き差分が、所定の閾値の範囲内であると判定された場合、処理は、ステップＳ３６７に進み、フレーム間間引き部１０３２は、画像Ｆ１を出力する
【０４００】
このようにして、階層化処理が実行される。このようにすることで、オブジェクトの追尾を行うにあたって最適なフレーム間引間隔が設定されるようにすることができる。従って、さらに正確、かつ効率的にオブジェクトの追尾を行うことができる。
【０４０１】
なお、上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。上述した一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば図４５に示されるような汎用のパーソナルコンピュータ７００などに、ネットワークや記録媒体からインストールされる。
【０４０２】
図４５において、CPU（Central Processing Unit）７０１は、ROM（Read Only Memory）７０２に記憶されているプログラム、または記憶部７０８からRAM（Random Access Memory）７０３にロードされたプログラムに従って各種の処理を実行する。RAM７０３にはまた、CPU７０１が各種の処理を実行する上において必要なデータなども適宜記憶される。
【０４０３】
CPU７０１、ROM７０２、およびRAM７０３は、バス７０４を介して相互に接続されている。このバス７０４にはまた、入出力インタフェース７０５も接続されている。
【０４０４】
入出力インタフェース７０５には、キーボード、マウスなどよりなる入力部７０６、CRT(Cathode Ray Tube)、ＬＣＤ(Liquid Crystal display)などよりなるディスプレイ、並びにスピーカなどよりなる出力部７０７、ハードディスクなどより構成される記憶部７０８、モデム、LANカードなどのネットワークインタフェースカードなどより構成される通信部７０９が接続されている。通信部７０９は、インターネットを含むネットワークを介しての通信処理を行う。
【０４０５】
入出力インタフェース７０５にはまた、必要に応じてドライブ７１０が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア７１１が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部７０８にインストールされる。
【０４０６】
上述した一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、インターネットなどのネットワークや、リムーバブルメディア７１１などからなる記録媒体からインストールされる。
【０４０７】
なお、この記録媒体は、図４５に示される、装置本体とは別に、ユーザにプログラムを配信するために配布される、プログラムが記録されている磁気ディスク（フロッピディスク（登録商標）を含む）、光ディスク（CD-ROM(Compact Disk-Read Only Memory),DVD(Digital Versatile Disk)を含む）、光磁気ディスク（MD（Mini-Disk）（登録商標）を含む）、もしくは半導体メモリなどよりなるリムーバブルメディア７１１により構成されるものだけでなく、装置本体に予め組み込まれた状態でユーザに配信される、プログラムが記録されているROM７０２や、記憶部７０８に含まれるハードディスクなどで構成されるものも含む。
【０４０８】
なお、本明細書において上述した一連の処理を実行するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【図面の簡単な説明】
【０４０９】
【図１】本発明の一実施の形態に係る画像処理装置の構成例を示すブロック図である。
【図２】図１の初期追尾点決定部の構成例を示すブロック図である。
【図３】図１の階層化部の構成例を示すブロック図である。
【図４】階層化部の処理を説明する図である。
【図５】図１の第１階層動き検出部の構成例を示すブロック図である。
【図６】図５のブロック位置検出部の処理を説明する図である。
【図７】図５のブロック位置検出部の処理を説明する図である。
【図８】図１の第２階層動き検出部の構成例を示すブロック図である。
【図９】順方向動き検出と逆方向動き検出を説明する図である。
【図１０】各フレームの追尾点を特定するために用いられるテーブルの例を示す図である。
【図１１】図１の第３階層動き検出部の構成例を示すブロック図である。
【図１２】第３階層動き検出部の処理を説明する図である。
【図１３】本発明の一実施の形態に係る画像処理装置の別の構成例を示すブロック図である。
【図１４】本発明の一実施の形態に係る画像処理装置のさらに別の構成例を示すブロック図である。
【図１５】ブロック位置検出部の処理を説明する図である。
【図１６】ブロック位置検出部の処理を説明する図である。
【図１７】図１４の差分算出部の処理を説明する図である。
【図１８】追尾点の乗り換えを説明する図である。
【図１９】本発明の画像処理装置により出力される出力画像の例を説明する図である。
【図２０】従来のオブジェクト追尾処理の例を説明する図である。
【図２１】本発明の画像処理装置によるオブジェクト追尾処理の効果を説明する図である。
【図２２】初期追尾点決定部の別の構成例を示すブロック図である。
【図２３】図２３の初期追尾点決定部の処理を説明する図である。
【図２４】図２３の初期追尾点決定部の処理を説明する図である。
【図２５】図２３の初期追尾点決定部の処理を説明する図である。
【図２６】第１階層動き検出部の別の構成例を示すブロック図である。
【図２７】図２６の画面動き検出部の処理を説明する図である。
【図２８】画面動きベクトルの例について説明する図である。
【図２９】図２６の追尾領域検出部の構成例を示すブロック図である。
【図３０】図２９の追尾領域検出部の各部の処理を説明する図である。
【図３１】本発明の一実施の形態に係る画像処理装置のさらに別の構成例を示すブロック図である。
【図３２】図３１の階層化部の構成例を示すブロック図である。
【図３３】図３２のフレーム間引指定部の処理を説明する図である。
【図３４】図３２のフレーム間引指定部の処理を説明する図である。
【図３５】図１の画像処理装置により実行されるオブジェクト追尾処理の例を説明するフローチャートである。
【図３６】階層化処理の例を説明するフローチャートである。
【図３７】第１階層動き検出処理の例を説明するフローチャートである。
【図３８】第２階層動き検出処理の例を説明するフローチャートである。
【図３９】第３階層動き検出処理の例を説明するフローチャートである。
【図４０】図１４の画像処理装置により実行されるオブジェクト追尾処理の例を説明するフローチャートである。
【図４１】初期追尾点決定処理の例を説明するフローチャートである。
【図４２】第１階層動き検出処理の別の例を説明するフローチャートである。
【図４３】追尾領域抽出処理の例を説明するフローチャートである。
【図４４】階層化処理の別の例を説明するフローチャートである。
【図４５】パーソナルコンピュータの構成例を示すブロック図である。
【符号の説明】
【０４１０】
１００  画像処理装置，  １０１  追尾点決定部，  １０３  階層化部，  １０４  第1階層動き検出部，  １０５  第２階層動き検出部，  １０６  テーブル，  １０７  追尾点距離算出部，  １０８  差分算出部，  １１０  追尾点乗換決定部，    １１１  第３階層動き検出部，  １１３  出力画像生成部，    １１４  ブロック位置決定部，  ２００  画像処理装置，  ４００  画像処理装置，  ７０１  ＣＰＵ，  ７１１  リムーバブルメディア，  １０１２  テンプレート保持部，  １０１３  オブジェクト抽出部，  １０１４  重心算出部，  １０３２  フレーム間引き部，  １０３４  動き差分算出部，  １０３５  フレーム間引指定部，  １０４１  ブロック位置検出部，  １０４２  動き統合部，  １０４３  画面動き検出部，  １０４４  追尾領域検出部，  １０４５  領域内ブロック位置検出部，  １０５１  順方向動き検出部，１０５２  動き統合部，  １０５４  逆方向動き検出部，  １０５５  動き統合部，  １１１１  ブロック位置検出部，  １１１２  動き統合部，  １０４４０−１，１０４４０−２  画面位置シフト部，  １０４４１−１，１０４４１−２  フレーム差分算出部
【図１】
0004507129.tif 000053
【図２】
0004507129.tif 000054
【図３】
0004507129.tif 000055
【図４】
0004507129.tif 000056
【図５】
0004507129.tif 000057
【図６】
0004507129.tif 000058
【図７】
0004507129.tif 000059
【図８】
0004507129.tif 000060
【図９】
0004507129.tif 000061
【図１０】
0004507129.tif 000062
【図１１】
0004507129.tif 000063
【図１２】
0004507129.tif 000064
【図１３】
0004507129.tif 000065
【図１４】
0004507129.tif 000066
【図１５】
0004507129.tif 000067
【図１６】
0004507129.tif 000068
【図１７】
0004507129.tif 000069
【図１８】
0004507129.tif 000070
【図１９】
0004507129.tif 000071
【図２０】
0004507129.tif 000072
【図２１】
0004507129.tif 000073
【図２２】
0004507129.tif 000074
【図２３】
0004507129.tif 000075
【図２４】
0004507129.tif 000076
【図２５】
0004507129.tif 000077
【図２６】
0004507129.tif 000078
【図２７】
0004507129.tif 000079
【図２８】
0004507129.tif 000080
【図２９】
0004507129.tif 000081
【図３０】
0004507129.tif 000082
【図３１】
0004507129.tif 000083
【図３２】
0004507129.tif 000084
【図３３】
0004507129.tif 000085
【図３４】
0004507129.tif 000086
【図３５】
0004507129.tif 000087
【図３６】
0004507129.tif 000088
【図３７】
0004507129.tif 000089
【図３８】
0004507129.tif 000090
【図３９】
0004507129.tif 000091
【図４０】
0004507129.tif 000092
【図４１】
0004507129.tif 000093
【図４２】
0004507129.tif 000094
【図４３】
0004507129.tif 000095
【図４４】
0004507129.tif 000096
【図４５】
0004507129.tif 000097