(57)【要約】【課題】追跡先の特徴点が画像内で偏在した場合に、ベクトル検出精度の低下を抑えつつ、所定の期間内に処理を完了させることを可能にすることを課題とする。【解決手段】第１のＲＤＤＭＡＣ（２２１）は画像を複数の領域に分割する。新規特徴点算出部（２０２）は、分割された各領域内の特徴点を抽出する。マッチング処理部（２０３）は、特徴点を基に動きベクトルの値を検出する。追跡先特徴点決定部（２０５）は、前フレームから得られた動きベクトルの値と特徴点とを基に、次のフレームの動きベクトル検出に用いられる追跡先特徴点を算出する。また、追跡先特徴点決定部（２０５）は、追跡先特徴点が予め定めた条件に該当する場合に追跡先特徴点の少なくとも一部を破棄し、新規特徴点を追跡先特徴点として補填する。【選択図】図２
2019020839.tif 000002
【特許請求の範囲】
【請求項１】
フレームの画像を複数の領域に分割する分割手段と、
前記複数に分割された各領域内で画像の特徴点を抽出する抽出手段と、
前記特徴点を基に動きベクトルを検出する検出手段と、
前フレームから検出された前記動きベクトルの値と特徴点とを基に、次のフレームの動きベクトル検出に用いられる追跡先特徴点を算出する算出手段と、
前記追跡先特徴点が予め定めた条件に該当する場合に、前記追跡先特徴点の少なくとも一部を破棄して、前記抽出手段にて抽出された新規特徴点を追跡先特徴点として補填する補填手段と、
を有することを特徴とする画像処理装置。
【請求項２】
前記分割された複数の領域を計数領域区分と補填領域区分とに区分けする区分手段と、
前記計数領域区分のなかの前記追跡先特徴点の数を計数する計数手段と、をさらに有し、
前記補填手段は、前記計数領域区分のなかの前記追跡先特徴点の数が所定の設定数を超えた場合、前記計数領域区分のなかで追跡先特徴点を破棄して、前記抽出手段にて抽出された新規特徴点を追跡先特徴点として前記補填領域区分のなかに補填することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記補填手段は、前記計数領域区分のなかで前記設定数を超えた数の追跡先特徴点を破棄し、前記破棄された追跡先特徴点の数に応じた前記新規特徴点を前記補填領域区分のなかに補填することを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記区分手段は、前記動きベクトルの検出に使用される画像の生成が先に行われる領域区分を、前記補填領域区分として設定することを特徴とする請求項２または３に記載の画像処理装置。
【請求項５】
前記区分手段は、前記動きベクトルの検出で使用される画像の生成が前記補填領域区分よりも後に行われる領域区分を、前記計数領域区分として設定することを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記動きベクトルの検出に使用される画像の生成はラスタスキャン順に行われることを特徴とする請求項４または５に記載の画像処理装置。
【請求項７】
前記補填手段は、前記破棄の対象となる追跡先特徴点を、前記計数領域区分のなかの複数の追跡先特徴点のうち特徴値が低い順に選定するすることを特徴とする請求項２から６の何れか１項に記載の画像処理装置。
【請求項８】
前記補填手段は、前記補填の対象となる新規特徴点を、前記補填領域区分のなかの複数の新規特徴点のうち特徴値が高い順に選定することを特徴とする請求項２から７の何れか１項に記載の画像処理装置。
【請求項９】
前記抽出された特徴点を基に追跡範囲を設定する範囲設定手段を、さらに有し、
前記算出手段は、前記追跡範囲のなかから前記追跡先特徴点を算出し、
前記補填手段は、前記算出した前記追跡先特徴点が前記追跡範囲を外れる場合、前記追跡範囲から外れた追跡先特徴点を破棄して、前記追跡範囲のなかで前記抽出手段にて抽出された新規特徴点を追跡先特徴点として前記追跡範囲のなかに補填することを特徴とする請求項１に記載の画像処理装置。
【請求項１０】
前記範囲設定手段は、前記フレームの画像の読み出し順序の設定に応じて、前記追跡範囲を設定することを特徴とする請求項９に記載の画像処理装置。
【請求項１１】
前記範囲設定手段は、前記フレームの画像の読み出し順序の設定に応じて、前記追跡範囲を前記フレームの画像範囲よりも狭めるように設定することを特徴とする請求項１０に記載の画像処理装置。
【請求項１２】
前記範囲設定手段は、前記フレームの画像の読み出し順序の設定が、前記画像の水平方向への読み出し順序の設定である場合、前記水平方向への読み出し順序の設定に応じて、前記画像の垂直方向で前記追跡範囲を前記狭めるように設定することを特徴とする請求項１１に記載の画像処理装置。
【請求項１３】
前記範囲設定手段は、前記フレームの画像の読み出し順序の設定が、前記画像の垂直方向への読み出し順序の設定である場合、前記垂直方向への読み出し順序の設定に応じて、前記画像の水平方向で前記追跡範囲を前記狭めるように設定することを特徴とする請求項１１に記載の画像処理装置。
【請求項１４】
前記画像の読み出し順序の設定は、前記フレームの画像を撮像する撮像手段からの読み出し順序の設定であることを特徴とする請求項９から１３の何れか１項に記載の画像処理装置。
【請求項１５】
複数の追跡先特徴点間の距離を算出する距離算出手段を、さらに有し、
前記算出手段は、前記追跡先特徴点間で算出された前記距離に基づいて前記追跡先特徴点を算出し、
前記補填手段は、前記追跡先特徴点間で算出された前記距離が所定の閾値未満である場合に、前記距離が算出された２点の追跡先特徴点のうち一方を破棄し、前記抽出手段にて抽出された新規特徴点を追跡先特徴点として所定の領域区分のなかに補填することを特徴とする請求項１に記載の画像処理装置。
【請求項１６】
前記破棄される追跡先特徴点は、前記算出された距離が前記閾値未満となっている２点の追跡先特徴点の、特徴値と座標位置との少なくとも一方に基づいて、決定されることを特徴とする請求項１５に記載の画像処理装置。
【請求項１７】
前記閾値は、前記動きベクトルを検出するのに用いる矩形領域の大きさに基づいて決定された値であることを特徴とする請求項１５または１６に記載の画像処理装置。
【請求項１８】
前記閾値は、複数の追跡先特徴点の座標位置に基づいて決定された値であることを特徴とする請求項１５または１６に記載の画像処理装置。
【請求項１９】
前記分割された複数の領域を追跡領域区分と非追跡領域区分とに区分けする区分手段を、さらに有し、
前記検出手段は、前記追跡領域区分では前記追跡先特徴点に基づいて動きベクトルを検出し、前記非追跡領域区分では前記抽出手段にて抽出された新規特徴点に基づいて動きベクトルを算出し、
前記補填手段は、前記追跡先特徴点が前記非追跡領域区分のなかにある場合には前記追跡先特徴点を破棄して、前記抽出手段により抽出された前記新規特徴点を補填することを特徴とする請求項１に記載の画像処理装置。
【請求項２０】
前記補填手段は、前記追跡領域区分から前記抽出手段により抽出された前記新規特徴点を前記補填することを特徴とする請求項１９に記載の画像処理装置。
【請求項２１】
前記非追跡領域区分は、フレームの画像範囲の下部の領域、左部の領域、上部の領域、右部の領域の、少なくとも一つである、ことを特徴とする請求項１９または２０に記載の画像処理装置。
【請求項２２】
前記非追跡領域区分は、フレームの画像範囲内に分散して配置されることを特徴とする請求項１９から２１の何れか１項に記載の画像処理装置。
【請求項２３】
画像を複数の領域に分割する分割手段と、
前記複数に分割された各領域内で画像の特徴点を抽出する抽出手段と、
前記特徴点に基づくテンプレートマッチングにより動きベクトルを検出する検出手段と、
前フレームから検出された前記動きベクトルの値と特徴点とを基に、次のフレームの動きベクトル検出に用いられる追跡先特徴点を算出する算出手段と、
前記分割された複数の領域を第１の領域区分と第２の領域区分とに区分けする区分手段と、を有し、
前記検出手段は、前記追跡先特徴点が前記第１の領域区分と第２の領域区分の何れの領域区分に属するかに応じて、前記動きベクトルの検出のテンプレートマッチングに用いるテンプレートの大きさを決定することを特徴とする画像処理装置。
【請求項２４】
前記区分手段は、
画像読み出し順の終盤に読み出しが行われる領域区分を、前記第１の領域区分として設定し、
画像読み出し順の初期に読み出しが行われる領域区分を、前記第２の領域区分として設定することを特徴とする請求項２３に記載の画像処理装置。
【請求項２５】
前記検出手段は、前記追跡先特徴点が前記第１の領域区分に属する場合に、前記テンプレートマッチングに用いるテンプレートの大きさを変更することを特徴とする請求項２３または２４に記載の画像処理装置。
【請求項２６】
前記分割された領域ごとに追跡先特徴点の数を計数する計数手段を有し、
前記検出手段は、前記分割された領域の追跡先特徴点が前記第１の領域区分に属し、且つ、前記領域について計数された追跡先特徴点の数が所定の閾値を超えた場合に、テンプレートマッチングを用いるテンプレートの大きさを小さく変更することを特徴とする請求項２４または２５に記載の画像処理装置。
【請求項２７】
ベクトル検出の処理時間を算出する時間算出手段を有し、
前記検出手段は、前記算出された処理時間が所定の時間内に収まるようになるまで前記テンプレートの大きさの変更を繰り返すことを特徴とする請求項２３から２６の何れか１項に記載の画像処理装置。
【請求項２８】
フレームの画像を複数の領域に分割する分割工程と、
前記複数に分割された各領域内で画像の特徴点を抽出する抽出工程と、
前記特徴点を基に動きベクトルを検出する検出工程と、
前フレームから検出された前記動きベクトルの値と特徴点とを基に、次のフレームの動きベクトル検出に用いられる追跡先特徴点を算出する算出工程と、
前記追跡先特徴点が予め定めた条件に該当する場合に、前記追跡先特徴点の少なくとも一部を破棄して、前記抽出工程にて抽出された新規特徴点を追跡先特徴点として補填する補填工程と、
を有することを特徴とする画像処理装置の画像処理方法。
【請求項２９】
画像を複数の領域に分割する分割工程と、
前記複数に分割された各領域内で画像の特徴点を抽出する抽出工程と、
前記特徴点に基づくテンプレートマッチングにより動きベクトルを検出する検出工程と、
前フレームから検出された前記動きベクトルの値と特徴点とを基に、次のフレームの動きベクトル検出に用いられる追跡先特徴点を算出する算出工程と、
前記分割された複数の領域を第１の領域区分と第２の領域区分とに区分けする区分工程と、を有し、
前記検出工程では、前記追跡先特徴点が前記第１の領域区分と第２の領域区分の何れの領域区分に属するかに応じて、前記動きベクトルの検出のテンプレートマッチングに用いるテンプレートの大きさを決定することを特徴とする画像処理装置の画像処理方法。
【請求項３０】
コンピュータを、請求項１から２７の何れか１項に記載の画像処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像の動きを検出する画像処理装置、画像処理方法、及びプログラムに関する。
【背景技術】
【０００２】
デジタルスチルカメラやデジタルビデオカメラ等の撮像装置を用いて撮影された映像に対して手ぶれ補正を施すためには、フレーム画像間の動き量を検出して複数枚の画像に対して位置合わせを行う必要がある。フレーム画像間の動き量を検出する方法としては、ジャイロセンサのような外部機器の情報を用いたり、撮影されたフレーム画像から動き量を推定したりする方法等がある。
【０００３】
フレーム画像を用いた動き量推定の方法は従来から種々提案されているが、その代表的なものとしてテンプレートマッチングによる動きベクトル検出がある。テンプレートマッチングでは、まず映像中の連続した２枚のフレーム画像の一方を原画像、もう一方を参照画像とする。そして、原画像上に配置した所定の大きさの矩形領域をテンプレートブロックとし、参照画像の各位置においてテンプレートブロック内の画素値の分布との相関を求める。このとき、参照画像中で最も相関が高くなる位置がテンプレートブロックの移動先であり、原画像上でのテンプレートブロックの位置を基準とした時の移動先への向きと移動量が動きベクトルとなる。
【０００４】
動きベクトルの検出率を向上させるため、特徴点を抽出し、抽出した特徴点にテンプレートブロックを配置して、フレーム画像間でテンプレートマッチングを行う技術がある。ここで、画像全体で特徴点抽出を行うと、特徴点の分布は不均一になることが多い。分布が不均一な特徴点に対して得られた動きベクトルを手ぶれ補正の用途で使用する場合、特徴点の集中した領域が主となる手ぶれ補正となってしまう。
【０００５】
そこで、特徴点を均一に分布させるため、画像をグリッド状に分割して、特徴の大きさを表す特徴値を画素ごとに計算し、各グリッド内で特徴値が最も大きい画素を特徴点として抽出する技術がある（例えば特許文献１）。
さらに動きベクトルの検出率を向上させるため、特徴点を追跡する技術がある。特徴点追跡は、画像から抽出された特徴点の動きベクトルを、連続する複数のフレーム画像に渡って逐次検出することで実現できる（例えば特許文献２）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００８−１９２０６０号公報
【特許文献２】特開２００７−３３４６２５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ところで、前述したように特徴点の追跡処理が行われる場合、追跡先の特徴点が、画像内の一部の領域に偏在してしまうことがある。このように追跡先の特徴点が一部の領域に偏在すると、動きベクトル検出性能の低下や、所定の期間内に処理を完了させることができなくなるという問題が生ずることがある。
【０００８】
そこで、本発明は、追跡先の特徴点が画像内で偏在した場合に、ベクトル検出精度の低下を抑えつつ、所定の期間内に処理を完了させることを目的とする。
【課題を解決するための手段】
【０００９】
本発明は、フレームの画像を複数の領域に分割する分割手段と、前記複数に分割された各領域内で画像の特徴点を抽出する抽出手段と、前記特徴点を基に動きベクトルを検出する検出手段と、前フレームから検出された前記動きベクトルの値と特徴点とを基に、次のフレームの動きベクトル検出に用いられる追跡先特徴点を算出する算出手段と、前記追跡先特徴点が予め定めた条件に該当する場合に、前記追跡先特徴点の少なくとも一部を破棄して、前記抽出手段にて抽出された新規特徴点を追跡先特徴点として補填する補填手段と、を有することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、追跡先の特徴点が画像内で偏在した場合に、ベクトル検出精度の低下を抑えつつ、所定の期間内に処理を完了させることが可能となる。
【図面の簡単な説明】
【００１１】
【図１】本実施形態の画像処理装置を備えたデジタルカメラのブロック図である。
【図２】第１の実施形態のベクトル検出部のブロック図である。
【図３】グリッド配置、特徴点、テンプレートマッチング領域の説明図である。
【図４】特徴点追跡処理の概要の説明図である。
【図５】テンプレートマッチング処理タイミングの説明図である。
【図６】テンプレートマッチング処理タイミングの遅延例の説明図である。
【図７】第１の実施形態のベクトル検出部の処理フローチャートである。
【図８】第１の実施形態の新規特徴点算出部のブロック図である。
【図９】第１の実施形態の精度判定部における判定処理の説明に用いる図である。
【図１０】第１の実施形態の追跡先特徴点決定部のブロック図である。
【図１１】追跡先特徴点と新規特徴点の位置関係を示す図である。
【図１２】第１の実施形態の追跡先特徴点決定部の処理フローチャートである。
【図１３】画像処理部における処理タイミングを示す図である。
【図１４】第２の実施形態のベクトル検出部のブロック図である。
【図１５】第２の実施形態の追跡先特徴点決定部のブロック図である。
【図１６】範囲判定部の処理の説明に用いる図である。
【図１７】第２の実施形態の追跡先特徴点決定部の処理フローチャートである。
【図１８】範囲判定部と新規特徴点補填部の処理の説明に用いる図である。
【図１９】第３の実施形態のベクトル検出部のブロック図である。
【図２０】第３の実施形態における補填領域区分の説明に用いる図である。
【図２１】第３の実施形態の追跡先特徴点決定部のブロック図である。
【図２２】２点の追跡先特徴点の位置関係の説明に用いる図である。
【図２３】第３の実施形態の追跡先特徴点決定部の処理フローチャートである。
【図２４】第４の実施形態の追跡先特徴点決定部のブロック図である。
【図２５】第４の実施形態における追跡先特徴点の位置関係を示す図である。
【図２６】第４の実施形態の追跡先特徴点決定部の処理フローチャートである。
【図２７】第４の実施形態における処理タイミングを示す図である。
【図２８】第５の実施形態のマッチング処理部のブロック図である。
【図２９】マッチング処理部の処理フローチャートである。
【図３０】第５の実施形態の領域区分部の処理の説明に用いる図である。
【図３１】サイズ変更部と推定部の処理の説明に用いる図である。
【発明を実施するための形態】
【００１２】
以下、添付図面を参照して本発明の好適な実施形態について説明する。
＜第１の実施形態＞
図１は実施形態の画像処理装置の一適用例としてのデジタルカメラの概略構成例を示す図である。なお、本実施形態の画像処理装置は、デジタルカメラの他にも、例えばデジタルビデオカメラ、カメラ機能を備えたスマートフォンやタブレット端末等の各種携帯端末、工業用カメラ、車載カメラ、医療用カメラ等の各種撮像装置にも適用可能である。また、図２は、本実施形態の画像処理装置に係る画像処理部１０４が有する動きベクトル検出部の概略構成を示した図である。なお、図２にはベクトル検出に関連した他の構成も含まれている。
【００１３】
図１において、結像光学部１０１は、レンズ及び絞りなどを備えており、撮影の際にはフォーカス調節及び露出調節を行い、撮像素子１０２に光学像を結像させる。撮像素子１０２は、光学像を電気信号（アナログ画像信号）に変換する光電変換機能を有し、ＣＣＤやＣＭＯＳセンサ等で構成される。Ａ／Ｄ変換部１０３は、撮像素子１０２からのアナログ画像信号をデジタル画像データに変換する。
【００１４】
ＤＲＡＭ１０７は、データを記憶するメモリであり、所定枚数の静止画像や所定時間の動画像、音声等のデータ、ＣＰＵ１１２の動作用の定数、プログラム等を記憶するのに十分な記憶容量を備えている。メモリ制御部１０６は、ＣＰＵ１１２或いはデータ転送部１０５からの指示に応じて、ＤＲＡＭ１０７へのデータ書き込みやデータ読み出しを行う。
【００１５】
不揮発性メモリ制御部１０８は、ＣＰＵ１１２からの指示に応じて、ＲＯＭ１０９へのデータの書き込みや読み出しを行う。ＲＯＭ１０９は、電気的に消去・記録可能な不揮発性メモリであり、ＥＥＰＲＯＭ等が用いられる。ＲＯＭ１０９には、ＣＰＵ１１２の動作用の定数、プログラム等が格納されている。
【００１６】
ＣＰＵ１１２は、デジタルカメラ全体の制御を司るマイクロコンピュータ等で構成され、各機能ブロックに対して動作指示を行い、各種の制御処理を実行する。ＣＰＵ１１２は、バス１１４を介して、画像処理部１０４、データ転送部１０５、メモリ制御部１０６、不揮発性メモリ制御部１０８、表示制御部１１０、操作部１１３、撮像素子１０２等を制御する。また、ＣＰＵ１１２は、撮像素子１０２を制御してＡ／Ｄ変換部１０３にアナログ信号を読み出す際の設定を、読み出し順序設定としてＲＯＭ１０９に記憶する。更にＣＰＵ１１２は、ＲＯＭ１０９に記録されている読み出し順序設定を読み込み、その設定に応じて画像処理部１０４の各種画像処理を制御することができる。ＣＰＵ１１２のマイクロコンピュータは、ＲＯＭ１０９に記録されたプログラムを実行することにより、本実施形態に係る各処理の制御を実現する。バス１１４はシステムバスであり、バス１１５は画像データバスである。
【００１７】
表示部１１１は、液晶モニタ等から成り、表示制御部１１０により制御され、各種画像等を表示部１１１に表示する。操作部１１３は、ユーザにより操作されるスイッチやボタン等を含み、電源のＯＮ／ＯＦＦ、シャッタのＯＮ／ＯＦＦ等の操作に使用される。
【００１８】
画像処理部１０４は、各種の画像処理を行う構成及びバッファメモリ等を有して構成されており、各種画像処理には図２に示す動きベクトル検出部にて行われるベクトル検出処理も含まれる。図２に示すベクトル検出部の説明については後述する。データ転送部１０５は、データ転送を行う複数のＤＭＡＣ（Direct Memory Access Controller）を有して構成されており、バス１１５を介して、ＤＲＡＭ１０７へのデータの書き込みや読み出しを行う。
【００１９】
以下、動きベクトル検出処理の概要について説明する。
動きベクトル検出処理としては、前述したようなテンプレートマッチングを用いた動きベクトル検出処理が知られている。動きベクトル検出処理の際には、ベクトル検出率を向上させるために、前述したように画像をグリッド状に分割して特徴点を抽出する処理、特徴点を追跡する処理等が行われる。
【００２０】
図３は、ベクトル検出処理の際のグリッド配置と特徴点、テンプレートマッチング領域の関係説明に用いる図である。ベクトル検出処理の際には、フレームの画像が、複数のグリッドに分割される。各グリッドは、予め設定されたサイズの特徴抽出グリッド３０２及び周辺グリッド３０１（図３中のドット模様が付されたグリッド）として、水平，垂直方向にそれぞれ設定された個数分配置される。そして、特徴抽出グリッド３０２毎に、特徴点３０３が一つ抽出される。周辺グリッド３０１は、各特徴抽出グリッド３０２からなる特徴抽出グリッド群の周囲に配置される。周辺グリッド３０１は、テンプレートマッチングには使用されるが、特徴点の抽出は行われない。テンプレートマッチング処理の際には、特徴点３０３を中心として、予め決めたサイズの矩形状のサーチ領域３０５及びテンプレート領域３０４が設定される。なお、テンプレートマッチング処理の際のサーチ領域３０５及びテンプレート領域３０４は、撮像素子１０２のセンサ出力におけるいわゆるラスタスキャン順に合わせて順に設定される。
【００２１】
図４（ａ）は、抽出された特徴点を用いた追跡処理の概要説明に用いる図である。図４（ａ）において、特徴点追跡処理の際には、先ず、現フレームの画像に対し、前述した特徴抽出グリッド１０１０及び周辺グリッド１０１１が設定される。そして、特徴抽出グリッド１０１０内で特徴点１００１が抽出され、さらにサーチ領域１００５とテンプレート領域１００３が設定されてテンプレートマッチングが行われることにより、動きベクトルのベクトル値１００４が算出される。次のフレームの処理では、前フレームで算出されたベクトル値１００４を特徴点１００１に加算することで、追跡先となる特徴点（追跡先特徴点１００２とする。）が算出され、その追跡先特徴点１００２を中心にテンプレートマッチングが実施される。以後、複数のフレームにわたって順番に前述同様の処理が行われ、各フレームで順に算出された追跡先特徴点に対してベクトル値が順に加算されることにより、特徴点の追跡が実現される。
【００２２】
図５（ａ）は、撮像素子１０２の画像出力（以下、センサ出力とする。）からテンプレートマッチング処理の終了までのタイミングチャートを示す図である。また、図５（ｂ）は、図４（ａ）と同様の特徴抽出グリッド１０１０、周辺グリッド１０１１、サーチ領域１００５、テンプレート領域１００３、追跡先特徴点１００２を表した図である。図５（ｂ）には、いわゆるラスタスキャン１０２０を表す矢印と、テンプレートマッチング処理を開始できる最初（一番初め）のテンプレート位置１１０１も示されている。図５（ａ）において、撮像素子１０２の画像出力（センサ出力）は１フレームの垂直同期信号ＶＤのパルス間隔の周期内（フレーム周期）で行われ、そのセンサ出力の画像データを基にテンプレートマッチング用画像が生成される。テンプレートマッチング用画像の生成は、ラスタスキャン順のセンサ出力に合わせて開始され、画像生成処理に要する時間分だけ遅延したタイミングで完了する。テンプレートマッチング処理はテンプレートマッチング用画像を用いて行われ、図５（ａ）中の期間Ｔ１〜Ｔ８の各期間は、それぞれが追跡先特徴点に対応したテンプレートマッチングの処理に要する時間を表している。なお、テンプレートマッチング処理に要する時間は、テンプレート領域のサイズに応じて増減する。
【００２３】
図５（ｂ）の例では、特徴抽出グリッド１０１０として８個のみを図示し、それら各特徴抽出グリッド１０１０にそれぞれ１個の追跡先特徴点１００２が得られている。このため、図５（ａ）には、それら８個の追跡先特徴点１００２のそれぞれに対するテンプレートマッチング処理に要する時間として、８個の期間Ｔ１〜Ｔ８が表されている。また、１フレームの期間におけるテンプレートマッチング処理は、図５（ｂ）に示すように、ラスタスキャン順で最初（一番目）となる追跡先特徴点１００２に対して設定されたテンプレート位置１１０１から開始される。そして、テンプレートマッチング処理は、８個の追跡先特徴点１００２にそれぞれ対応した各期間Ｔ１〜Ｔ８の全ての処理が終了した時点で完了する。
【００２４】
ところで、前述のような特徴点追跡処理が行われた場合、複数の追跡先特徴点が、フレームの画像範囲内の例えば一部の領域に偏在してしまうようになることがある。図４（ｂ）は、追跡先特徴点がフレームの画像範囲内の下部領域に集中するように偏在した例を示している。図４（ｂ）に示すように、追跡先特徴点がフレームの画像範囲内の下部領域に集中するように偏在する状態は、例えばデジタルカメラの撮影時にカメラがチルティングされた場合などに生ずることが多い。なお、図４（ｂ）には、図４（ａ）と同様の特徴抽出グリッド１０１０、周辺グリッド１０１１、サーチ領域１００５、テンプレート領域１００３、追跡先特徴点１００２も示している。
【００２５】
図６（ａ）は、図５（ａ）と同様、センサ出力からテンプレートマッチング処理の終了までのタイミングチャートを示した図であり、図４（ｂ）のように下部領域に多数の追跡先特徴点が集中した場合の処理タイミングを表している。図６（ｂ）は、前述の図５（ｂ）と同様の特徴抽出グリッド１０１０、周辺グリッド１０１１、サーチ領域１００５、テンプレート領域１００３、追跡先特徴点１００２を表した図である。また、図６（ｂ）には、図５（ｂ）と同様に、ラスタスキャン１０２０を表す矢印と、テンプレートマッチング処理を開始できる最初（一番初め）のテンプレート位置１２０１も示されている。図６（ｂ）の例では、８個の追跡先特徴点１００２が、フレームの画像範囲内の下部領域に集中するように偏在している。そして、図６（ａ）の８個の期間Ｔ１〜Ｔ８は、図６（ｂ）の８個の追跡先特徴点１００２のそれぞれに対するテンプレートマッチング処理に要する時間を表している。
【００２６】
テンプレートマッチング処理は、前述のようにセンサ出力のラスタスキャン順に合わせて行われるため、フレームの画像範囲内の下部領域は、ラスタスキャン順では終盤に処理が行われる領域となる。図４（ｂ）や図６（ｂ）のように下部領域に多数の追跡先特徴点が集中した場合、図６（ａ）に示すように、垂直同期信号ＶＤのパルス間隔の期間内に、期間Ｔ１〜Ｔ８の全てのテンプレートマッチング処理を完了できなくなることがある。つまり、下部領域に追跡先特徴点が集中した場合、図６（ｂ）に示すように、テンプレートマッチング処理が開始される最初のテンプレート位置１２０１は、ラスタスキャン順の終盤に相当する位置になる。そして、ラスタスキャン順の終盤に相当するテンプレート位置１２０１からテンプレートマッチング処理が始まると、図６（ａ）に示すように、期間Ｔ１〜Ｔ８の処理の開始までの期間１２００が長くなる。このため、期間Ｔ１〜Ｔ８の処理が完了する前に、垂直同期信号ＶＤの次のパルスが来てしまって処理を完了できなくなることがある。
【００２７】
ここで、本実施形態のデジタルカメラのように、撮影時の手ぶれ補正に動きベクトルを用いる場合、１フレーム期間内にテンプレートマッチング処理を完了させて動きベクトルを検出し、その動きベクトルを次のフレームの処理にフィードバックする必要がある。
前述した図５（ａ）及び図５（ｂ）の例の場合、１フレーム分の周期内で期間Ｔ１〜Ｔ８の全ての処理が終了し、テンプレートマッチング処理が完了している。このため、動きベクトルを次のフレームの処理にフィードバックでき、その結果、デジタルカメラの撮影時の手ぶれ補正も正しく行える。
これに対し、図６（ａ）及び図６（ｂ）の例のように、１フレームの期間内でテンプレートマッチング処理を完了できない場合、正しい動きベクトルを次のフレームの処理にフィードバックすることができなくなる。この場合、ベクトル検出性能が低下し、その結果、デジタルカメラ等の撮影時の手ぶれ補正性能も低下してしまうことになる。
【００２８】
そこで、第１の実施形態に係るベクトル検出部では、フレームの画像範囲内で追跡先特徴点が偏在する場合、所定領域内の追跡先特徴点の数に応じた追跡先特徴点の破棄補填処理を行うことにより、１フレーム期間などの所定期間内に処理を完了させるようにする。
【００２９】
図７は、本実施形態に係る図２に示したベクトル検出部及び関連した構成における処理の流れを示すフローチャートである。なお、図７のフローチャートの処理は、ソフトウェア構成のみ、或いはハードウェア構成のみにより実行されてもよいし、一部がソフトウェア構成で残りがハードウェア構成により実現されてもよい。ソフトウェア構成により処理が実行される場合、図７のフローチャートの処理は、例えばＲＯＭ１０９に記憶されているプログラムをＣＰＵ１１２が実行することにより実現されてもよい。本実施形態に係るプログラムは、ＲＯＭ１０９に予め用意されていてもよく、また着脱可能な半導体メモリ等から読み出されたり、不図示のインターネット等のネットワークからダウンロードされたりしてもよい。また以下の説明では、図７の各処理のステップＳ４０１〜ステップＳ４０９をＳ４０１〜Ｓ４０９と略記する。これらのことは後述する他のフローチャートにおいても同様とする。
【００３０】
以下、図７のフローチャートを参照しながら、図２に示したベクトル検出部及び関連した構成により行われる処理の概要を説明する。
先ず、Ｓ４０１の処理として、図１のデータ転送部１０５が具備している第１のＲＤＤＭＡＣ２２１は、バス１１５を介して、ＤＲＡＭ１０７からベクトル検出処理の対象となる現フレームの画像データ２４１を読み出す。なお、以下の説明では、データ転送部１０５から転送されるデータがバス１１５を介することの記載は省略する。このとき読み出されるデータは前述したグリッド単位のデータとなされ、図３に示した特徴抽出グリッド３０２や周辺グリッド３０１毎にデータの読み出しが行われる。なお、画像データ２４１には、画像処理部１０４による他の各種画像処理が実施されているとする。第１のＲＤＤＭＡＣ２２１によりグリッド単位で読み出された画像データ２４１は、マッチング用画像生成部２０１及び新規特徴点算出部２０２に送られる。また、第１のＲＤＤＭＡＣ２２１は、読み出したグリッドの座標位置を示すグリッド座標情報２５２を、後述する追跡先特徴点決定部２０５に出力する。Ｓ４０１の後、ベクトル検出部の処理は、Ｓ４０２に遷移する。
【００３１】
Ｓ４０２の処理として、マッチング用画像生成部２０１は、第１のＲＤＤＭＡＣ２２１によりグリッド単位で読み出された画像データ２４１から、ベクトル検出時のテンプレートマッチングに使用するテンプレートマッチング用画像を生成する。マッチング用画像生成部２０１は、例えばバンドパスフィルタ回路を有し、画像データ２４１から、テンプレートマッチング処理に不要な画像信号の高周波成分と低周波成分とをカットする。そして、マッチング用画像生成部２０１は、現フレームについて生成したテンプレートマッチング用画像を、データ転送部１０５が具備するＷＲＤＭＡＣ２３１に出力する。Ｓ４０２の後、ベクトル検出部の処理は、Ｓ４０３に遷移する。
【００３２】
Ｓ４０３の処理として、ＷＲＤＭＡＣ２３１は、現フレームで生成されたテンプレートマッチング用画像データ２４２を、ＤＲＡＭ１０７に対して書き込む処理を行う。なお、このときのＤＲＡＭ１０７には、前フレームで生成されたテンプレートマッチング用画像データ２４３も格納されているとする。Ｓ４０３の後、ベクトル検出部の処理は、Ｓ４０５に遷移する。
【００３３】
また、前述したＳ４０２、Ｓ４０３の処理と並列に、Ｓ４０４の処理として、新規特徴点算出部２０２は、現フレームの画像から特徴抽出グリッド毎に新規特徴点を算出する。新規特徴点とは、前述した動きベクトル値の加算により算出される追跡先特徴点とは異なり、現フレームの画像から特徴抽出グリッド毎に一つずつ新規に抽出される特徴点である。Ｓ４０４の後、ベクトル検出部の処理は、Ｓ４０５に遷移する。
図８は、新規特徴点算出部２０２の概略的な構成例を示すブロック図である。新規特徴点算出部２０２は、特徴フィルタ部５０１、特徴評価部５０２、特徴点決定部５０３を有する。
【００３４】
特徴フィルタ部５０１は、バンドパスフィルタ、水平微分フィルタ、垂直微分フィルタ、平滑化フィルタなど、複数のフィルタを有して構成される。特徴フィルタ部５０１は、バンドパスフィルタにより画像データ２４１から不要な高周波成分と低周波成分をカットし、さらに、そのバンドパスフィルタ処理後の画像データに対し、水平方向の微分フィルタ処理と、垂直方向の微分フィルタ処理とを施す。そして、特徴フィルタ部５０１は、水平方向の微分フィルタ処理を施した画像データと、垂直方向の微分フィルタ処理を施した画像データとの、各々に対して平滑化フィルタ処理を施し、特徴評価部５０２に出力する。
【００３５】
特徴評価部５０２は、特徴フィルタ部５０１によるフィルタ処理後のグリッド単位の画像データから特徴値を算出する。具体的には、特徴評価部５０２は、画素ごとに、所定の特徴評価式を用いた演算を行い、二つのエッジの交点や曲率が極大である曲線状の点など、画素の周辺の微分値が多方向に大きい点を、特徴点として算出する。
【００３６】
以下、例えばいわゆるＳｈｉ ａｎｄ Ｔｏｍａｓｉの手法を例に挙げて、本実施形態の特徴評価部５０２における特徴値の算出例について説明する。
特徴評価部５０２は、先ず、前述した水平方向の微分フィルタ処理が施されたデータと垂直方向の微分フィルタ処理が施されたデータとを用い、式（１）に示す演算式により、自己相関行列Ｈを作成する。式（１）は、Ｉｘが水平方向の微分フィルタ処理を施した結果を表し、Ｉｙが垂直方向の微分フィルタを施した結果を表しており、ガウシアンフィルタＧを畳み込む演算式となされている。
【数１】
2019020839.tif 000003
【００３７】
そして、特徴評価部５０２は、式（２）に示すＳｈｉ ａｎｄ Ｔｏｍａｓｉの特徴評価式を用いて特徴値を算出する。式（２）は、式（１）の自己相関行列Ｈの固有値（λ１，λ２）のうち、小さい方の固有値を特徴値とすることを表している。
Ｓｈｉ ａｎｄ Ｔｏｍａｓｉ＝ｍｉｎ（λ１，λ２）        式（２）
このようにして特徴評価部５０２にて画素ごとに算出された特徴値は、特徴点決定部５０３に送られる。
【００３８】
特徴点決定部５０３は、特徴評価部５０２にてグリッド内の各画素について算出された特徴値の中で最も大きい値を持つ画素を、そのグリッド内の特徴点として新規に決定する。本実施形態の場合、特徴点の情報は、グリッドの左上端を座標（０，０）とした相対座標（ＰＸ，ＰＹ）が用いられる。なお、特徴点の座標は、フレーム画像における座標により表現されてもよい。そして、特徴点決定部５０３により新規に決定された特徴点座標情報は、新規特徴点算出部２０２が具備している内部メモリに格納される。この内部メモリは、前フレームから取得された各特徴点座標情報と現フレームから取得された各特徴点座標情報とを格納できるだけの容量を有している。
【００３９】
新規特徴点算出部２０２は、マッチング処理部２０３にて対応するグリッドのテンプレートマッチング処理が開始される際に、前フレームと現フレームとで夫々算出した特徴点座標情報２５１を、内部メモリから読み出して追跡先特徴点決定部２０５に出力する。
追跡先特徴点決定部２０５は、その追跡先特徴点座標情報２５７を、データ転送部１０５が具備している第２のＲＤＤＭＡＣ２２２に出力する。
【００４０】
図７のフローチャートと図２に説明を戻す。
Ｓ４０５の処理として、第２のＲＤＤＭＡＣ２２２は、ＤＲＡＭ１０７内のテンプレートマッチング用画像データ２４２及び２４３から、追跡先特徴点座標情報２５７を中心とし、それぞれ予め設定されたサイズの矩形領域のデータを読み出す。すなわち、現フレームで生成されたテンプレートマッチング用画像データ２４２からは、図３のサーチ領域３０５のデータが、一方、前フレームで生成されたテンプレートマッチング用画像データ２４３からは、テンプレート領域３０４のデータが読み出される。そして、それら読み出されたサーチ領域画像データ２５３とテンプレート領域画像データ２５４は、マッチング処理部２０３へ送られる。ただし、最初のテンプレートマッチング処理では、前フレームから追跡先特徴点座標を算出することができないため、全て現フレームで算出された新規特徴点座標を用いた処理が実施される。Ｓ４０５の後、ベクトル検出部の処理は、Ｓ４０６に遷移する。
【００４１】
Ｓ４０６の処理として、マッチング処理部２０３は、入力されたサーチ領域画像データ２５３、テンプレート領域画像データ２５４を用いて、相関値を算出し、その相関値を基にベクトル値を算出する。Ｓ４０６の後、ベクトル検出部の処理は、Ｓ４０７に遷移する。
【００４２】
本実施形態では、相関値の算出方法として、差分絶対値和（Ｓｕｍ  ｏｆ  Ａｂｓｏｌｕｔｅ  Ｄｉｆｆｅｒｅｎｃｅ、以下ＳＡＤと略す。）を使用する。式（３）はＳＡＤの算出式である。
【数２】
2019020839.tif 000004
【００４３】
式（３）において、ｆ（ｉ，ｊ）はテンプレート領域画像データ２５４における座標（ｉ，ｊ）の画素値を表しており、ｇ（ｉ，ｊ）はサーチ領域画像データ２５３において相関値算出の対象領域（以下、相関値算出領域とする。）内の各画素値を表している。相関値算出領域は、テンプレート領域画像データ２５４における領域と同じ大きさである。そして、マッチング処理部２０３は、それら領域の各画素値ｆ（ｉ，ｊ）及びｇ（ｉ，ｊ）について差の絶対値を計算し、それらの総和を求めることで相関値Ｓ＿ＳＡＤを算出する。ここで、相関値Ｓ＿ＳＡＤの値が小さいほど両領域間の輝度値の差分が小さい、つまりテンプレート領域画像データ２５４と相関値算出領域内のテクスチャとが類似していることになる。なお、本実施形態では、相関値の一例としてＳＡＤを使用しているが、これに限るものではなく、例えば、差分二乗和（ＳＳＤ）や正規化相互相関（ＮＣＣ）等の他の相関値が用いられてもよい。
【００４４】
そして、マッチング処理部２０３は、相関値の最小値の位置を、グリッドの動きベクトル値として求める。マッチング処理部２０３は、前述のようにして算出したベクトル値及び相関値情報２５５を、精度判定部２０４に出力する。
【００４５】
Ｓ４０７の処理として、精度判定部２０４は、Ｓ４０６の処理で算出されたベクトル値及び相関値情報２５５のうち、相関値を用いて、相関値の最大値、最小値、平均値、極小値を求める。そして、精度判定部２０４は、それら相関値の最大値、最小値、平均値、極小値を用いて、以下に説明するような低コントラスト判定、画素値の最大値突出判定、繰り返しパターン判定の処理を行う。Ｓ４０７の後、ベクトル検出部の処理は、Ｓ４０８に遷移する。
【００４６】
図９（ａ）〜図９（ｄ）は、相関値の最大値、最小値、平均値、極小値と、それらを用いた判定例との関係説明に用いるグラフである。ただし、本実施形態の場合、相関値が小さいほど類似度が高いことになるため、図９（ａ）〜図９（ｄ）において、画素値の最大値は相関値では最小値、画素値の最小値は相関値では最大値、画素値の極大値は相関値では極小値を表す。
図９（ａ）は、それぞれの判定結果が良好な結果となる例を示している。
【００４７】
図９（ｂ）は、低コントラスト判定において低コントラストと判定される例を示している。低コントラスト判定とは、相関値算出領域内が低コントラストであるか否かを判定する処理である。本実施形態における低コントラスト判定では、相関値算出領域内の相関値の最大値と最小値との差分が、予め設定されている所定の閾値よりも小さい場合に、相関値算出領域内は低コントラストであると判定される。図９（ｂ）の場合、図９（ａ）と比べて、画素値の最大値と最小値との差が少なく、相関値算出領域内の相関値の最大値と最小値の差分も所定の閾値より小さいとする。したがって、図９（ｂ）の場合、精度判定部２０４は、相関値算出領域内の相関値の最大値と最小値の差分が所定の閾値よりも小さいため、相関値算出領域内は低コントラストであると判定する。
【００４８】
図９（ｃ）は、画素値の最大値突出判定において低ピークと判定される例を示している。画素値の最大値突出判定とは、相関値算出領域内の相関値の最小値がどれだけ際立っているかを判定する処理である。本実施形態における画素値の最大値突出判定では、画素値の最大値と平均値との差分と、画素値の最大値と最小値との差分との除算結果の値が、予め設定されている所定の閾値よりも小さい場合に、相関値算出領域内は低ピークであると判定される。一方、除算結果の値が所定の閾値よりも大きい場合、相関値算出領域内は高ピークであると判定される。図９（ｃ）の場合、図９（ａ）と比べて、画素値の最大値と平均値との差分と、画素値の最大値と最小値との差分との除算結果の値が小さく、閾値よりも小さいとする。したがって、図９（ｃ）の場合、精度判定部２０４は、除算結果の値が所定の閾値より小さいため、相関値算出領域内は低ピークであると判定する。
【００４９】
図９（ｄ）は、繰り返しパターン判定で繰り返しパターンと判定される例を示している。繰り返しパターン判定とは、画素値が繰り返し変動しているか否かを判定する処理である。本実施形態における繰り返しパターン判定では、相関値算出領域内の画素値の最大値と極大値との差分が、予め設定されている所定の閾値よりも小さい場合に、繰り返しパターンであると判定される。図９（ｄ）の場合、図９（ａ）と比べて、画素値の最大値と極大値との差分が小さく、所定の閾値よりも小さいとする。したがって、図９（ｄ）の場合、精度判定部２０４は、相関値算出領域内の画素値の最大値と極大値との差分が所定の閾値より小さいため、繰り返しパターンであると判定する。
【００５０】
図７のフローチャートと図２に説明を戻す。
Ｓ４０８の処理として、精度判定部２０４は、前述した低コントラスト、低ピーク、繰り返しパターンの各判定情報及びベクトル情報２５６を、ＳＲＡＭ２０６に書き込む。これにより、ＳＲＡＭ２０６の格納領域２４４にはそれら各情報が格納される。Ｓ４０８の後、ベクトル検出部の処理は、Ｓ４０９に遷移する。
【００５１】
Ｓ４０９の処理として、追跡先特徴点決定部２０５は、次フレームのテンプレートマッチング処理に用いるための追跡先特徴点の算出を行う。
ここで、図１０は、図２の追跡先特徴点決定部２０５の概略構成例を示すブロック図である。図１０に示すように、追跡先特徴点決定部２０５は、カウント部７０１、カウント数比較部７０２、新規特徴点補填部７０３を有する。なお、図１０には、追跡先特徴点決定部２０５における追跡先特徴点決定処理に関連した他の構成（新規特徴点算出部２０２、ＳＲＡＭ２０６、第２のＲＤＤＭＡＣ２２２）も示されている。また、図１１は、追跡先特徴点決定部２０５が処理する追跡先特徴点と新規特徴点の位置関係を示す図である。さらに、図１２は、本実施形態に係る追跡先特徴点決定部２０５の処理のフローチャートである。図１３は、本実施形態の画像処理装置における処理タイミングチャートを示す図である。
【００５２】
以下、図１０〜図１３を参照しながら、追跡先特徴点決定部２０５における追跡先特徴点決定処理の概要を説明する。なお、図１１のグリッド配置では、特徴抽出グリッドの個数が２５となる例が示されている。したがって、新規特徴点算出部２０２では、グリッド数と同数の２５個の新規特徴点座標と、それら各座標における特徴値とが算出される。同様にテンプレートマッチング処理では、各追跡先特徴点座標を中心として、グリッド数と同数の２５個のベクトル値が算出されるとする。また、図１１において、各特徴点９０１，９０２，９０３はそれぞれ追跡先特徴点を表しており、各特徴点９０１は後述するように追跡先特徴点として補填される新規特徴点を、各特徴点９０３は後述するように破棄される追跡先特徴点を表しているとする。
【００５３】
先ず、図１２のＳ９０１の処理として、追跡先特徴点決定部２０５は、ＳＲＡＭ２０６からベクトル値及び前述の判定情報２５８を取得する。追跡先特徴点決定部２０５は、取得したベクトル値を用いて現フレームの追跡先特徴点を算出し、更にその追跡先特徴点座標を中心としてテンプレートマッチング処理を行い算出したベクトル値を加算して、次フレームの追跡先特徴点の座標を算出する。図１１に示したグリッド配置の例の場合、合計２５個の追跡先特徴点座標が算出される。Ｓ９０１の後、追跡先特徴点決定部２０５の処理はＳ９０２に遷移する。
【００５４】
次に、Ｓ９０２の処理として、追跡先特徴点決定部２０５は、ＳＲＡＭ２０６から取得した前述の判定情報を基に、Ｓ９０１で算出された追跡先特徴点が、次フレームのテンプレートマッチング処理に使用可能な有効な追跡先特徴点であるか否かを判定する。追跡先特徴点決定部２０５は、低コントラスト判定で低コントラストと判定、又は、画素値の最大値突出判定で低ピークと判定、又は、繰り返しパターン判定で繰り返しパターンと判定されている場合、追跡先特徴点は有効でないと判定（ＮＧ判定）する。一方、追跡先特徴点決定部２０５は、低コントラスト、低ピーク、繰り返しパターンの何れでもない場合には、追跡先特徴点は有効であると判定（ＯＫ判定）する。そして、追跡先特徴点決定部２０５は、Ｓ９０２において、ＮＧ判定とした場合（ＮＯ）にはＳ９０４に処理を進め、一方、ＯＫ判定とした場合（ＹＥＳ）にはＳ９０３に処理を進める。
【００５５】
Ｓ９０３の処理として、追跡先特徴点決定部２０５は、Ｓ９０１で算出された追跡先特徴点座標が、フレームの画像範囲内（画角内）であるか否か判定する。具体的には、追跡先特徴点決定部２０５は、追跡先特徴点座標を中心とするテンプレート領域が周辺グリッドの内側に収まっている場合にはＯＫ判定とし、周辺グリッドの内側に収まっていない場合にはＮＧ判定とする。そして、追跡先特徴点決定部２０５は、Ｓ９０３において、ＮＧ判定とした場合（ＮＯ）にはＳ９０４に処理を進め、一方、ＯＫ判定とした場合（ＹＥＳ）にはＳ９０５に処理を進める。
【００５６】
Ｓ９０４に進むと、追跡先特徴点決定部２０５は、Ｓ９０２又はＳ９０３でＮＧ判定された座標位置に該当する追跡先特徴点座標を削除する。そして、追跡先特徴点決定部２０５は、削除された追跡先特徴点座標を、現フレームにおいて一番初めに新規特徴点が算出された位置の特徴点抽出グリッドの該当位置で算出された新規特徴点座標により置き換える処理を行う。Ｓ９０４の後、追跡先特徴点決定部２０５の処理は、ステップＳ９０５に遷移する。
【００５７】
Ｓ９０５に進むと、追跡先特徴点決定部２０５は、特徴抽出グリッド数分の全ての追跡先特徴点座標が算出されたか否か判定する。Ｓ９０５において、追跡先特徴点決定部２０５は、全ての追跡先特徴点座標が算出されたと判定（ＹＥＳ）した場合にはＳ９０６に処理を進める。一方、追跡先特徴点決定部２０５は、Ｓ９０５において、全ての追跡先特徴点座標が算出されていないと判定（ＮＯ）した場合にはＳ９０１に処理を戻して前述の処理を行う。Ｓ９０１からＳ９０５までの処理は、Ｓ９０５において全ての追跡先特徴点座標が算出されたと判定（ＹＥＳ）されるまで反復される。図１１の例の場合、２５個の追跡先特徴点座標の算出処理が行われるため、Ｓ９０１から９０５までの処理は２５回反復されることになる。
【００５８】
次に、Ｓ９０６に進むと、追跡先特徴点決定部２０５が具備するカウント部７０１は、所定の領域区分内に追跡先特徴点座標が何個あるかを計数する。本実施形態の場合、図１１の各特徴抽出グリッド群が、図中の破線９５７よりも下側の領域区分と、図中の破線９５４よりも上側の領域区分とに区分けされる。そして、カウント部７０１は、所定の領域区分として、破線９５７より下側の領域区分（以下、計数領域区分とする。）内にある追跡先特徴点座標の数をカウントする。すなわち、破線９５７より下側の計数領域区分は、ラスタスキャン順で終盤に処理が行われる領域であり、この領域内に多数の追跡先特徴点が集中した場合、１フレーム期間内にテンプレートマッチング処理を完了できなくなる可能性のある領域である。図１１の例の場合、計数領域区分の追跡先特徴点座標数は、合計１７個となっている。後述するように、これら１７個の追跡先特徴点は、後に破棄対象となる追跡先特徴点９０３と、破棄対象ではない追跡先特徴点９０２とに分けられる。なお、図１１中の破線９５４より上側の領域区分の詳細については後述する。
【００５９】
図１３のタイミングチャートを用いて、追跡先特徴点決定部２０５における処理の詳細を説明する。図１３の時刻１９５３〜１９５９は、図１１の各々破線９５３〜９５９で示される各領域がＤＲＡＭ１０７上に順に生成されるタイミングを表している。
【００６０】
ここで、一つのテンプレート領域に対してテンプレートマッチング処理を実施するために必要な時間は、テンプレート領域のサイズにより一意に決まる。図１３内の期間９２０内の各区切りで表される各期間は、それぞれが個々のテンプレートマッチング処理に要する処理期間を表している。前述した図１１の例の場合、破線９５７より下側の計数領域区分にある追跡先特徴点座標数は合計１７個であり、このためテンプレート領域としては１７個が設定される。しがたって、図１３の期間９２０の各区切りの数（処理期間数）は、それら１７個のテンプレート領域に対するテンプレートマッチング処理数に相当する１７個となっている。
【００６１】
一方で、１フレーム分の全テンプレートマッチング処理は、垂直同期信号ＶＤのパルス間隔の周期内（１フレーム期間内）、つまり次のフレームの処理が開始される前に完了させなければならない。図１３のタイミング例の場合、次のフレームの処理が開始される前に処理を終了できるのは、期間９２０内の１２処理期間分までとなる。すなわち、図１３のタイミング例の場合、図１１の破線９５７より下側の計数領域区分内の追跡先特徴点座標数が１２個までであるならば次のフレームの処理開始前にテンプレートマッチング処理を完了することができる。しかしながら、図１１の例の場合、追跡先特徴点座標数が１７個であるため、図１３の期間９２１に示すように、１３個目以降の５個分の処理期間に相当するテンプレートマッチング処理については、次のフレームの処理開始前に完了させることができない。
【００６２】
このため、本実施形態において、追跡先特徴点決定部２０５のカウント数比較部７０２は、Ｓ９０７の処理として、Ｓ９０６でカウントされた追跡先特徴点座標数（前述した計数領域区分内の追跡先特徴点座標数）が所定の設定数以下か否かを判定する。図１１及び図１３の例では、次フレームの処理開始前に処理可能な追跡先特徴点座標数は１２個であるため、所定の設定数としては１２が用いられる。そして、Ｓ９０７において、カウント数比較部７０２により追跡先特徴点座標数が設定数以下（１２以下）であると判定（ＮＯ）された場合、追跡先特徴点決定部２０５は、図１２のフローチャートの処理を終了する。一方、Ｓ９０７において、カウント数比較部７０２により追跡先特徴点座標数が設定数を超える（１３以上）と判定（ＹＥＳ）された場合、追跡先特徴点決定部２０５の処理は、Ｓ９０８に遷移する。なお、図１１及び図１３の例の場合、追跡先特徴点座標数は１７であり、設定数の１２を超えるため、追跡先特徴点決定部２０５の処理はＳ９０８に進むことになる。
【００６３】
Ｓ９０８に進むと、追跡先特徴点決定部２０５の新規特徴点補填部７０３は、追跡先特徴点の破棄と新規特徴点の補填とを行う破棄補填処理を実施する。図１１及び図１３の例の場合、新規特徴点補填部７０３は、計数領域区分内の各追跡先特徴点の中から、所定の設定数（１２個）を越える個数（５個）の追跡先特徴点（追跡先特徴点９０３）を選定して破棄する。そして、新規特徴点補填部７０３は、新規特徴点算出部２０２にて算出された新規特徴点を、指定された領域に追跡先特徴点として補填する。図１１の例の場合、新規特徴点補填部７０３は、図１１中の破線９５４より上側である領域区分（以下、補填領域区分とする。）に、破棄された数に対応した５個の新規特徴点９０１を補填する。破線９５４より上側の補填領域区分は、ラスタスキャン順で初期に処理が行われる領域であり、この領域区分内に新規特徴点を補填したとしても、１フレーム期間内にテンプレートマッチング処理を完了できなくなることは無いと考えられる領域である。
【００６４】
このような破棄補填処理により追跡先特徴点として補填された５個の新規特徴点９０１の各特徴点座標に対するテンプレートマッチング処理に要する処理期間は、図１３中の期間９３０で表すことができる。すなわち、前述した期間９２０の１７処理期間分の処理は、１フレーム期間の前半部にて行われる５処理期間分の期間９３０と、１フレーム期間の後半部にて行われる残りの１２処理期間分の期間９３１とに分散されることになる。したがって、本実施形態において、合計１７個分の追跡先特徴点座標数に相当するテンプレート処理は、次のフレームの処理が開始される前に完了することになる。
【００６５】
なお、図１１中の破線９５７より下側の計数領域区分内の各追跡先特徴点のなかで、何れの追跡先特徴点を破棄対象にするか決定する場合、例えば、各追跡先特徴点の有する特徴値の小さいものから順に破棄対象として選定する手法を用いることができる。また、補填対象となる特徴点を決定する際には、例えば、図１１中の破線９５４より上側の補填領域区分にある新規特徴点のなかで、特徴値の大きいものから順に補填対象として選定するような手法を用いることができる。
【００６６】
以上が、第１の実施形態におけるベクトル検出処理の流れである。本実施形態では、１フレーム分の処理を例に挙げて説明したが、前述した１フレーム分の処理は毎フレームに対して同様に行われ、毎フレームでベクトル値が算出される。
【００６７】
また、本実施形態において、前述した特徴点座標数をカウントする際の対象領域（計数領域区分）や前述の設定数は、画像処理装置の処理能力に応じて決めることができる。例えば、画像処理装置におけるテンプレートマッチング用画像の生成処理速度やテンプレートマッチングの処理速度を基に、画像処理装置が一定処理期間内に処理を完了できるように、計数領域区分や設定数を決めることができる。
【００６８】
また本実施形態では、図１１中の破線９５７より下側の計数領域区分において追跡先特徴点座標数をカウントして、１フレーム期間内に処理が完了するか否かを判定していたが、この例には限定されるものではない。例えば、追跡先特徴点決定部２０５は、図１１の破線９５５から破線９５６まで、破線９５６から破線９５７まで、破線９５７から破線９５８までの３領域区分内の追跡先特徴点数をカウントして、それら領域区分ごとに設定数と比較してもよい。そして、追跡先特徴点決定部２０５は、それらカウントした各領域区間の追跡先特徴点数が設定数より大きい場合に、前述同様に追跡先特徴点の破棄補填処理を行うようにする。また、追跡先特徴点決定部２０５は、領域区分の数を増やして領域を細かく区分けして、１フレーム期間内におけるテンプレートマッチング処理をフレームの画像範囲内（画角内）で、より均一に分散させることようにしてもよい。これにより、より多くのテンプレートマッチング数や、より大きいテンプレートサイズでの処理が行われる場合であっても、１フレーム期間内に処理が完了させることが可能となる。
【００６９】
また本実施形態では、撮像素子１０２の読み出し順がラスタスキャン順である場合を例に挙げたため、特徴点座標数をカウントする計数領域区分がフレームの画像範囲（画角）の下側の領域区分となされたが、これには限定されない。例えば撮像素子１０２の読み出し順が左側から垂直方向に順に走査される場合、特徴点座標数をカウントする計数領域区分は、フレームの画像範囲内の右側の領域区分となされてもよい。同様に、撮像素子１０２の読み出し順が左側から垂直方向に順に走査される場合、新規特徴点を追跡先特徴点として補填する補填領域区分は、フレームの画像範囲内の左側の領域区分となされてもよい。すなわち、本実施形態においては、追跡先特徴点の破棄補填の際、動きベクトルの検出に使用される画像の生成が先に行われる領域区分が、補填領域区分として設定される。一方、本実施形態においては、追跡先特徴点の破棄補填の際、動きベクトルの検出で使用される画像の生成が補填領域区分よりも後に行われる領域区分が、計数領域区分として設定される。
【００７０】
第１の実施形態の画像処理装置は、特徴点追跡を行うベクトル検出において、フレームの画像範囲内で追跡先特徴点が偏在した場合、所定領域内の追跡先特徴点数をカウントして破棄補填処理を行うことにより、所定期間内に処理を完了させることができる。したがって、第１の実施形態の画像処理装置によれば、追跡先特徴点がフレームの画像範囲内で偏在した場合でも、ベクトル検出性能の低下を防止しつつ、ベクトル検出を高速化し、所定期間内に処理を完了させることが可能となる。
【００７１】
＜第２の実施形態＞
以下、第２の実施形態について説明する。
第２の実施形態の画像処理装置が適用されるデジタルカメラの構成は、図１に示した第１の実施形態のデジタルカメラと同様であるため、その図示と説明は省略する。
第２の実施形態の画像処理装置は、抽出された特徴点を基に追跡する範囲を設定し、その設定された範囲内から追跡先特徴点を算出する。すなわち、第２の実施形態では、特徴点追跡を行うベクトル検出において特徴点の初期座標から追跡範囲を設定し、追跡範囲を超えた場合に追跡先特徴点の破棄補填処理を行うことで、１フレーム期間内など所定期間内に処理を完了させる。第２の実施形態における追跡範囲とは、特徴点の追跡が行われる範囲を表しており、追跡範囲を外れた追跡先特徴点は破棄される。
【００７２】
図１４は、第２の実施形態の画像処理部１０４に含まれるベクトル検出部の概略構成例を示すブロック図である。なお、図１４において、第１の実施形態の図２に示した構成と同じ構成には同一の参照符号を付してそれらの説明は省略する。また、第２の実施形態のベクトル検出部における処理のフローチャートは、前述した第１の実施形態の図７のフローチャートと概ね同様であり、また前述の図８、図９についても第１の実施形態と同様であるためそれらの図示と説明は省略する。
【００７３】
第２の実施形態の場合、図７のＳ４０１において、第１のＲＤＤＭＡＣ２２１は、ＤＲＡＭ１０７から読み出したグリッドの左上座標位置を示すグリッド座標情報２５２を、第２のＲＤＤＭＡＣ２２２に出力する。
また、第２の実施形態のベクトル検出部の場合、図７のＳ４０９において、追跡先特徴点決定部２０５は、算出した追跡先特徴点の座標情報を、追跡先特徴点座標情報２５７として第２のＲＤＤＭＡＣ２２２に出力するとともに、ＳＲＡＭ２０６へも出力する。
【００７４】
以下、図１４に示した第２の実施形態の追跡先特徴点決定部２０５の構成とその処理内容について、図１５から図１８を参照しながら説明する。図１５は、第２の実施形態における追跡先特徴点決定部２０５の概略構成を示すブロック図である。図１５に示すように、第２の実施形態の追跡先特徴点決定部２０５は、特徴点管理部８０１、範囲設定部８０２、範囲判定部８０３、新規特徴点補填部８０４を有する。図１６（ａ）及び図１６（ｂ）は、図１５の追跡先特徴点決定部２０５が備えている範囲判定部８０３の処理の説明に用いる図である。図１７は、第２の実施形態の追跡先特徴点決定部２０５の処理を示すフローチャートである。図１８は、図１５の追跡先特徴点決定部２０５が備えている範囲判定部８０３と新規特徴点補填部８０４の処理の説明に用いる図である。
【００７５】
先ず、図１７のＳ１７０１の処理として、特徴点管理部８０１は、ＳＲＡＭ２０６から入力された現フレームのベクトル情報と前フレームの追跡先特徴点座標情報とを基に、現フレームの追跡先特徴点座標情報の更新を行う。具体的には、特徴点管理部８０１は、前フレームの追跡先特徴点座標に対して現フレームのベクトル値を加算することにより、現フレームの追跡先特徴点座標情報の更新を行う。そして、特徴点管理部８０１は、その更新した現フレームの追跡先特徴点座標情報を内部のメモリに格納する。なお、特徴点管理部８０１の内部メモリは、少なくとも現フレームの追跡先特徴点座標情報と、その追跡先特徴点座標情報に関連付けられた特徴点の初期座標とを格納できる容量を有している。
【００７６】
次のＳ１７０２の処理として、特徴点管理部８０１は、Ｓ１７０１で更新した追跡先特徴点座標情報に関連付けられた特徴点の初期座標が、内部メモリ内に格納されているか否かを判定する。特徴点管理部８０１は、Ｓ１７０２において、関連付けられた特徴点の初期座標が存在する（内部メモリ内に格納されている）と判定（ＹＥＳ）した場合にはＳ１７０４に処理を進める。一方、特徴点管理部８０１は、Ｓ１７０２において、関連付けられた特徴点の初期座標が存在しないと判定（ＮＯ）した場合にはＳ１７０３に処理を進める。
【００７７】
Ｓ１７０３に進むと、特徴点管理部８０１は、今回更新した追跡先特徴点座標情報が初期座標であると判断し、Ｓ１７０１で更新した現フレームの追跡先特徴点座標を初期座標とし、今回更新した追跡先特徴点座標情報と関連付けた後、Ｓ１７０４に遷移する。具体的には、特徴点管理部８０１は、関連付けの処理として、初期座標と今回更新した追跡先特徴点座標情報に共通のＩＤを付加する処理を行う。これにより、特徴点管理部８０１は、追跡先特徴点座標情報に付加されているＩＤを参照することで、関連付けられた特徴点の初期座標が存在するか否かを判定することができる。
【００７８】
Ｓ１７０４に進むと、特徴点管理部８０１は、内部のメモリに格納されている現フレームの追跡先特徴点座標情報を範囲判定部８０３と新規特徴点補填部８０４とに出力し、特徴点の初期座標を範囲設定部８０２に出力する。Ｓ１７０４の後、追跡先特徴点決定部２０５の処理は、Ｓ１７０５に遷移する。
【００７９】
Ｓ１７０５に進むと、範囲設定部８０２は、入力された特徴点の初期座標を基に、追跡範囲（ＳＸ，ＳＹ）〜（ＥＸ，ＥＹ）を設定する。この設定された追跡範囲の情報は、範囲判定部８０３に送られる。Ｓ１７０５の後、追跡先特徴点決定部２０５の処理は、Ｓ１７０６に遷移する。
【００８０】
ここで、図１６（ａ）及び図１６（ｂ）を用いて、第２の実施形態における追跡範囲（ＳＸ，ＳＹ）〜（ＥＸ，ＥＹ）の設定方法を具体的に説明する。
図１６（ａ）は、現フレームの画像を水平方向に５分割、垂直方向に５分割して計２５個のグリッドを設定した場合の座標系と、現フレームの画像読み出し順序を示す概念図である。各グリッドは、前述した特徴抽出グリッド３０２、周辺グリッド３０１からなる。図１６（ａ）の場合、水平方向ＧＸ、垂直方向ＧＹの座標（ｇｘ，ｇｙ）毎にグリッドが区切られている。図１６（ａ）の座標系では、左上角の特徴抽出グリッドの左上端の座標が（０，０）、右上角の特徴抽出グリッドの右上端の座標が（５ｇｘ，０）となる。また、左下角の特徴抽出グリッドの左下端の座標が（０，５ｇｙ）、右下角の特徴抽出グリッドの右下端の座標が（５ｇｘ，５ｇｙ）となる。なお、現フレームにおけるグリッドの画像読み出し順は、図１６（ａ）中の矢印１６０１で示すようにラスタスキャン方式に応じた読み出し順となされる。
【００８１】
図１６（ｂ）は、範囲設定部８０２が、図１のＲＯＭ１０９に記録されている読み出し順序設定を読み込んで、追跡範囲を設定した一例を示した図である。図１６（ｂ）では、現フレームを水平方向に５分割、垂直方向に５分割した計２５個のグリッドに区切った場合の各グリッドにおける垂直方向の追跡範囲が、ＳＹとＥＹの値により設定される例を示している。第２の実施形態の場合、例えば追跡先特徴点が垂直方向の下部領域に集中して所定期間内に処理が終了しなくなるのを防止するために、ラスタスキャン方式の読み出し順序設定に従って垂直方向下部で特徴点の追跡が行われる範囲を狭めている。言い換えると、第２の実施形態における追跡範囲は、ラスタスキャン順で終盤に処理が行われる領域では追跡が行われないようにする範囲として設定されている。
【００８２】
図１６（ｂ）のグリッド４４１を例に挙げた場合、範囲設定部８０２は、入力された特徴点の初期座標の属するグリッド４４１に設定された追跡範囲の値を読み出して、追跡範囲（ＳＸ，ＳＹ）〜（ＥＸ，ＥＹ）を設定する。図１６（ｂ）の例では、グリッド４４１の追跡範囲の値としてＳＹ：０、ＥＹ：３ｇｙが設定されているため、範囲設定部８０２は、追跡範囲（ＳＸ，ＳＹ）〜（ＥＸ，ＥＹ）を（０，０）〜（５ｇｘ，３ｇｙ）に設定する。つまり、追跡範囲は、図１６（ａ）の座標系の特徴抽出グリッド群の範囲（０，０）〜（５ｇｘ，５ｇｙ）よりも狭められた、追跡範囲（０，０）〜（５ｇｘ，３ｇｙ）に設定される。
【００８３】
なお、第２の実施形態では、撮像素子１０２の読み出し順がラスタスキャン（水平方向）の場合を説明したが、これには特に限定しない。例えば撮像素子１０２の読み出し順が左側から垂直方向に順に走査される場合、範囲設定部８０２は、その読み出し順に応じて水平方向の追跡範囲を狭めてもよい。この例の場合、例えば追跡先特徴点が水平方向の右側領域に集中した場合であっても、水平方向の追跡範囲を狭めることで、所定の期間内に処理が終了しなくなることを防止することができる。
【００８４】
図１７に説明を戻す。
図１７のＳ１７０６の処理に進むと、範囲判定部８０３は、入力された現フレームの追跡先特徴点座標が追跡範囲を超えるか否か（追跡範囲を外れるか否か）を判断する。そして、Ｓ１７０６において、範囲判定部８０３は、追跡範囲を超えると判断した場合には判定結果ＮＧの情報を、一方、追跡範囲を超えないと判断した場合には判定結果ＯＫの情報を、新規特徴点補填部８０４に出力する。
【００８５】
図１８を参照し、追跡範囲（０，０）〜（５ｇｘ，３ｇｙ）の例を用いて、範囲判定部８０３における判断処理を説明する。図１８では、図中の斜線部分の各グリッドが追跡範囲のグリッドを表し、それ以外は追跡範囲外のグリッドを表している。また、図１８の例において、入力された現フレームの追跡先特徴点座標１８０３は追跡範囲外であるとする。したがって、図１８の例の場合、範囲判定部８０３は、現フレームの追跡先特徴点座標１８０３については判定結果ＮＧとし、その判定結果ＮＧの情報を、新規特徴点補填部８０４に出力する。Ｓ１７０６の後、追跡先特徴点決定部２０５の処理は、Ｓ１７０７に遷移する。
【００８６】
Ｓ１７０７に進むと、新規特徴点補填部８０４は、範囲判定部８０３から送られてきた判定結果に基づいて、現フレームの追跡先特徴点座標情報に対して補填処理を行うか否かを判定する。そして、新規特徴点補填部８０４は、範囲判定部８０３から判定結果ＯＫが送られてきた場合にはＳ１７０９に処理を進め、判定結果ＮＧが送られてきた場合にはＳ１７０８に処理を進める。
【００８７】
Ｓ１７０８の処理に進むと、新規特徴点補填部８０４は、現フレームの追跡先特徴点座標から追跡先特徴点を破棄して、新規特徴点座標情報で補填して、Ｓ１７０９に処理を進める。前述した図１８の例の場合、新規特徴点補填部８０４は、現フレームの追跡先特徴点座標１８０３を破棄して、図１６（ｂ）のグリッド４４１の位置で算出された新規特徴点座標１８０４を追跡先特徴点座標として補填する。Ｓ１７０８の後、追跡先特徴点決定部２０５の処理は、Ｓ１７０９に遷移する。
【００８８】
Ｓ１７０９に進むと、追跡先特徴点決定部２０５は、現フレームの全ての追跡先特徴点座標（特徴抽出グリッド数分の追跡先特徴点座標）が算出されたか否かを判定する。そして、追跡先特徴点決定部２０５は、全ての追跡先特徴点座標が算出されたと判定（ＹＥＳ）した場合には図１７のフローチャートの処理を終了する。一方、Ｓ１７０９において、現フレームの全ての追跡先特徴点座標が算出されていないと判定（ＮＯ）した場合、追跡先特徴点決定部２０５は、Ｓ１７０１に処理を戻し、Ｓ１７０１以降の前述した処理を行う。Ｓ１７０１からＳ１７０９までの処理は、Ｓ１７０９において全ての追跡先特徴点座標が算出されたと判定（ＹＥＳ）されるまで反復される。
【００８９】
以上が、第２の実施形態の追跡先特徴点決定部２０５における処理の流れである。本実施形態では、１フレーム分の処理を例に挙げて説明したが、前述した１フレーム分の処理は毎フレームに対して同様に行われ、毎フレームでベクトル値が算出される。
また、第２の実施形態における追跡範囲設定は、画像処理装置の処理能力に応じて決めることができる。例えば、画像処理装置におけるテンプレートマッチング用画像の生成処理速度やテンプレートマッチングの処理速度を基に、画像処理装置が一定処理期間内に処理を完了できるように、追跡範囲の設定を行うことができる。
【００９０】
第２の実施形態の画像処理装置は、特徴点追跡を行うベクトル検出において特徴点の初期座標を基に追跡範囲を設定し、追跡範囲を超えた場合に、追跡先特徴点の破棄補填処理を行うことで、１フレーム期間など所定期間内に処理を完了させることができる。したがって、第２の実施形態の画像処理装置によれば、追跡先特徴点がフレームの画像範囲内で偏在した場合でも、ベクトル検出性能の低下を防止しつつ、ベクトル検出を高速化し、所定期間内に処理を完了させることが可能となる。
【００９１】
＜第３の実施形態＞
以下、第３の実施形態について説明する。
第３の実施形態の画像処理装置が適用されるデジタルカメラの構成は、図１に示した第１の実施形態のデジタルカメラと同様であるため、その図示と説明は省略する。
第３の実施形態の画像処理装置は、各追跡先特徴点の座標情報を基に追跡先特徴点間の距離を算出し、その算出した距離に基づいて追跡先特徴点の破棄補填処理を行うことにより、１フレーム期間内など所定期間内に処理を完了させる。第３の実施形態の場合、例えば二つの追跡先特徴点間の距離が近い場合に一方を破棄し、新規特徴点を追跡先特徴点として補填する。
【００９２】
図１９は、第３の実施形態の画像処理部１０４に含まれるベクトル検出部の概略構成例を示すブロック図である。なお、図１９において、第１の実施形態の図２に示した構成と同じ構成には同一の参照符号を付してそれらの説明は省略する。図１９では図示していないが、図１４と同様、グリッド座標情報は、第２のＲＤＤＭＡＣ２２２を介してマッチング処理部２０３に送られる。また、第３の実施形態のベクトル検出部の処理フローチャートは、前述した図７のフローチャートと概ね同様であり、前述の図８、図９についても前述同様であるためそれらの図示と説明は省略する。
【００９３】
図２０は、第３の実施形態におけるベクトル検出処理の際のグリッド配置と、特徴点、テンプレートマッチング領域の関係説明に用いる図である。図２０において、特徴抽出グリッド３０２、周辺グリッド３０１、サーチ領域３０５、テンプレート領域３０４は、前述した図３で説明したものと同様である。図２０の図中斜線部分で表された各グリッドからなる領域は、新規特徴点が追跡先特徴点として補填される領域であり、第３の実施形態ではこの領域を補填領域区分３１０と表記する。補填領域区分３１０は、動きベクトルの検出に使用される画像の生成が先に行われる領域（ラスタスキャン順で初期に処理が行われる領域）に設定される。
【００９４】
図２１は、第３の実施形態に係る追跡先特徴点決定部２０５の概略構成例を示すブロック図である。第３の実施形態の追跡先特徴点決定部２０５は、距離算出部７１５、処理判定部７１６、新規特徴点補填部７１７を有する。なお、図２１において、前述した図１０と同じ構成には同一の参照符号を付してそれらの説明は省略する。また、図２２は、第３の実施形態の追跡先特徴点決定部２０５が処理する追跡先特徴点の位置関係の説明に用いる図である。図２２の例では、図を見やすくするために、１グリッド分とその周囲のグリッドの一部のみを図示している。さらに、図２３は、第３の実施形態に係る追跡先特徴点決定部２０５の処理フローチャートである。第３の実施形態における処理タイミングは、前述の図１３の例と同様であるため、その図示と説明は諸略する。
【００９５】
以下、図２０から図２３を参照して、第３の実施形態の追跡先特徴点決定部２０５における構成と処理の概要を説明する。なお、図２３のＳ９０１〜Ｓ９０５までの処理は前述の図１２のＳ９０１〜Ｓ９０５の処理と同様であるためそれらの説明は省略し、図１２とは異なる処理であるＳ２３０１〜Ｓ２３０４について説明を行う。
図２３のフローチャートにおいて、Ｓ９０５の後、追跡先特徴点決定部２０５の処理は、Ｓ２３０１に遷移する。
【００９６】
Ｓ２３０１に進むと、追跡先特徴点決定部２０５の距離算出部７１５は、各追跡先特徴点の２点間の距離を算出する。具体的には、図２２に示すように、２点の追跡先特徴点２２１０，２２１１の座標をそれぞれ（Ｘ１，Ｙ１）、（Ｘ２，Ｙ２）とした場合、距離算出部７１５は、それら２点の追跡先特徴点間の距離Ｄを、下記の式（４）により算出する。Ｓ２３０１の後、追跡先特徴点決定部２０５の処理は、Ｓ２３０２に遷移する。
【数３】
2019020839.tif 000005
【００９７】
Ｓ２３０２に進むと、追跡先特徴点決定部２０５の処理判定部７１６は、距離算出部７１５で求めた２点の追跡先特徴点間の距離Ｄに基づき、それら２点の追跡先特徴点に対する破棄補填処理を行うか否か判定する。具体的には、処理判定部７１６は、Ｓ２３０１で求めた２点の追跡先特徴点の距離Ｄが所定の閾値Ｄｔｈより小さいか否かを判定する。閾値Ｄｔｈは、２点の追跡先特徴点について破棄補填処理を行うかどうかを判断する際の指標である。第３の実施形態の場合、閾値Ｄｔｈは、例えば図２２のテンプレート領域３０４の一辺の長さの半分の距離２２０２とする。なお、本実施形態において、閾値Ｄｔｈを距離２２０２としたのは、２点の追跡先特徴点間の距離Ｄがテンプレート領域の一辺の長さの半分より短ければ（近ければ）、一つのテンプレート領域内に２点の特徴点が入ることになるためである。そして、Ｓ２３０２において、処理判定部７１６は、２点の追跡先特徴点間の距離Ｄが、閾値以上（Ｄ≧Ｄｔｈ）である場合（ＮＯ）にＳ２３０４へ処理を進め、一方、閾値未満（Ｄ＜Ｄｔｈ）である場合（ＹＥＳ）にはＳ２３０３へ処理を進める。
【００９８】
なお、テンプレートマッチング処理を１フレーム期間内に完了できるように、閾値Ｄｔｈを調整してもよい。例えば、テンプレートマッチング処理を分散させるように、複数の追跡先特徴点の密集度合いを評価し、密集度が高いほど閾値Ｄｔｈの値を大きくして、追跡先特徴点に対する破棄補填処理がなされ易くしてもよい。また、テンプレートマッチング処理がフレームの画像範囲内（画角内）の下部領域に集中しないように、追跡先特徴点の座標を評価し、フレームの画像範囲の下端部に近づくほど閾値Ｄｔｈを大きくして、追跡先特徴点に対する破棄補填処理がなされ易くしてもよい。
【００９９】
Ｓ２３０３に進むと、追跡先特徴点決定部２０５の新規特徴点補填部７１７は、第３の実施形態における追跡先特徴点の破棄、及び新規特徴点を追跡先特徴点として補填する破棄補填処理を実施する。先ず、新規特徴点補填部７１７は、２点の追跡先特徴点における特徴値の大小比較を行う。そして、新規特徴点補填部７１７は、特徴値が小さい方の追跡先特徴点を破棄対象とする。なお、特徴値ではなく、２点の追跡先特徴点の座標を基に破棄対象を選定してもよい。例えば、２点の追跡先特徴点の座標を基に、何れの追跡先特徴点座標がフレームの画像範囲の下部領域側になっているかを判断し、下部領域側となっている方を破棄対象として選定する。そして、新規特徴点補填部７１７は、追跡先特徴点の１点を破棄した後、図２０に示した補填領域区分３１０の特徴抽出グリッドに対し、新規特徴点を追跡先特徴点として補填する。この破棄補填処理により、前述した図１３で説明したのと同様に、補填された追跡先特徴点に対するテンプレートマッチング処理に要する期間９３０が、１フレーム期間の前半に分散されることになる。Ｓ２３０３の後、追跡先特徴点決定部２０５の処理は、Ｓ２３０４に遷移する。
【０１００】
Ｓ２３０４に進むと、追跡先特徴点決定部２０５は、Ｓ２３０１からＳ２３０３までの処理を全ての追跡先特徴点間に対して実施したか否か判定する。そして、Ｓ２３０４において、全ての追跡先特徴点間に対する処理が実施されていないと判定（ＮＯ）した場合、追跡先特徴点決定部２０５は、Ｓ２３０１に処理を戻してＳ２３０１からＳ２３０３までの前述した破棄補填処理を行う。一方、Ｓ２３０４において、全ての追跡先特徴点間に対する処理が実施されたと判定（ＹＥＳ）した場合、追跡先特徴点決定部２０５は、図２３の処理を終了する。
【０１０１】
以上が、第３の実施形態の追跡先特徴点決定部２０５における処理の流れである。本実施形態では、１フレーム分の処理を例に挙げて説明したが、前述した１フレーム分の処理は毎フレームに対して同様に行われ、毎フレームでベクトル値が算出される。
【０１０２】
第３の実施形態における破棄補填処理の指標となる閾値Ｄｔｈや補填領域区分３１０は、画像処理装置の処理能力に応じて決めることができる。例えば、画像処理装置におけるテンプレートマッチング用画像の生成処理速度やテンプレートマッチングの処理速度を基に、画像処理装置が一定処理期間内に処理を完了できるように、閾値Ｄｔｈや補填領域区分３１０の設定を行うことができる。
【０１０３】
また、追跡先特徴点決定部２０５は、複数の追跡先特徴点のうち、距離を算出する２点の追跡先特徴点を選定する際、例えば特徴値の小さい追跡先特徴点から優先的に破棄されるように、特徴値が小さい追跡先特徴点順の２点の追跡先特徴点から選定してもよい。
また、追跡先特徴点決定部２０５は、複数の追跡先特徴点の全ての追跡先特徴点間の距離を求めなくてもよい。例えば、追跡先特徴点決定部２０５は、テンプレートマッチング処理の完了時間に影響を及ぼし易い、前述した下部領域の追跡先特徴点群のみを距離算出の対象とされてもよい。また例えば、一部の領域のみで追跡先特徴点が密集し、それ以外の画像範囲では追跡先特徴点が広く分散している場合、追跡先特徴点決定部２０５は、図２３のＳ２３０１〜Ｓ２３０４の処理をスキップして破棄補填処理を実施しないようにしてもよい。このように、破棄補填処理をスキップした場合、画像処理部１０４の処理負担が軽減され、処理の高速化が可能となる。
その他にも、追跡先特徴点決定部２０５は、補填領域区分に新規特徴点を補填する際、特徴値が大きなものから優先的に補填するようにしてもよい。また、追跡先特徴点決定部２０５は、補填領域区分に新規特徴点を補填する際、追跡先特徴点の分布をより広く分散させるように、上部領域側のグリッドから優先的に新規特徴点を補填するようにしてもよい。
【０１０４】
第３の実施形態の画像処理装置は、複数の追跡先特徴点間の距離を基に、追跡先特徴点の破棄補填処理を行うことで、１フレーム期間など所定期間内に処理を完了させることができる。したがって、第３の実施形態の画像処理装置によれば、追跡先特徴点がフレームの画像範囲内で偏在した場合でも、ベクトル検出性能の低下を防止しつつ、ベクトル検出を高速化し、所定期間内に処理を完了させることが可能となる。
【０１０５】
＜第４の実施形態＞
以下、第４の実施形態について説明する。
第４の実施形態の画像処理装置が適用されるデジタルカメラの構成は、図１に示した第１の実施形態のデジタルカメラと同様であるため、その図示と説明は省略する。
第４の実施形態の画像処理装置は、前述した複数の特徴抽出グリッドを、非追跡領域区分と追跡領域区分とに区分けし、追跡領域区分では追跡先特徴点を基に動きベクトルを検出し、非追跡領域区分では新規特徴点を基に動きベクトルを検出する。
【０１０６】
第４の実施形態の画像処理部１０４に含まれるベクトル検出部の構成は、前述した第３の実施形態の図１９に示したものと同様であるため、その図示と説明は省略する。また、第４の実施形態のベクトル検出部における処理フローチャートは、前述した図７のフローチャートと概ね同様であり、また前述の図８、図９についても前述同様であるためそれらの図示と説明は省略する。
【０１０７】
図２４は、第４の実施形態の追跡先特徴点決定部２０５の概略構成例を示すブロック図である。第４の実施形態の追跡先特徴点決定部２０５は、領域判定部７２０、新規特徴点補填部７２１を有する。なお、図２４において、前述した図１０と同じ構成には同一の参照符号を付してそれらの説明は省略する。図２５は、第４の実施形態の追跡先特徴点決定部２０５が処理する追跡先特徴点と新規特徴点、並びに追跡領域区分と非追跡領域区分の位置関係の説明に用いる図である。なお、図２５の特徴点２５０１、追跡先特徴点２５０２、ベクトル値２５０３、特徴抽出グリッド２５０４、周辺グリッド２５０５は前述同様のものである。
【０１０８】
また、第４の実施形態では、図２５の下部領域の複数の特徴抽出グリッド群が非追跡領域区分２５０６となされ、それ以外の特徴抽出グリッド群が追跡領域区分となされる。第４の実施形態の追跡先特徴点決定部２０５は、追跡先特徴点が、非追跡領域区分２５０６内に入った場合には、その追跡先特徴点を破棄する。また、本実施形態の場合、マッチング処理部２０３は、非追跡領域区分２５０６の各グリッド（図２５の例では５個の特徴抽出グリッド）については、新規特徴点算出部２０２で算出した新規特徴点座標２５０７を中心としたテンプレートマッチングを実施する。
【０１０９】
図２６は、第４の実施形態に係る追跡先特徴点決定部２０５の処理フローチャートである。さらに、図２７は、第４の実施形態における処理タイミングチャートを示す図である。なお、図２６において、前述の図１２と同様の処理については図１２と同一の参照符号を付してそれらの説明は省略する。また、図２７においても前述の図１３と同じ部分については図１３と同一の参照符号を付してそれらの説明は省略する。
【０１１０】
図２７に示した処理タイミングにおいて、一つのテンプレート領域に対してテンプレートマッチング処理を実施するために必要な時間は、前述したようにテンプレート領域のサイズにより一意に決まる。例えば前述した図１１の例のように、フレームの画像範囲内の下部領域（第４の実施形態の非追跡領域区分）に１７個の追跡先特徴点が集中した場合、それら１７個分のテンプレートマッチング処理は、図２７の時刻１９５９のタイミングで開始する。また、前述したように、時刻１９５９からフレーム期間が終わるまでの時間９１０（次のフレーム期間が開始するまでの時間）内では、それら１７個分の全てのテンプレートマッチング処理は完了しない。図２７の例の場合、期間９２１に示すように、少なくとも５個分の追跡先特徴点におけるテンプレートマッチング処理が終了しないことになる。
【０１１１】
このため、第４の実施形態の追跡先特徴点決定部２０５は、図２５に示した５グリッド分の非追跡領域区分２５０６を設定し、この非追跡領域区分２５０６の追跡先特徴点を破棄する。したがって、非追跡領域区分２５０６の追跡先特徴点が破棄された場合、テンプレートマッチング処理は、非追跡領域区分２５０６を除く追跡領域区分内の追跡先特徴点のみを用いたテンプレートマッチング処理となる。非追跡領域区分２５０６を除く追跡領域区分内の追跡先特徴点のみを用いたテンプレートマッチング処理は、最大でも（最も時間がかかったとしても）期間２０００のタイミングで完了することになる。つまり、非追跡領域区分に１７個の追跡先特徴点が在った場合、それら追跡先特徴点が破棄されて処理不要となるため、追跡領域区分の追跡先特徴点の処理に、ある程度時間が掛かったとしても、期間２０００までには処理は終了する。
【０１１２】
一方、第４の実施形態の場合、追跡先特徴点決定部２０５は、非追跡領域区分２５０６の５個のグリッドで新規特徴点算出部２０２がそれぞれ一つ抽出した新規特徴点（５個）を基に動きベクトルを検出してテンプレートマッチング処理が行われる。図２７の場合、期間９３０が、５個の新規特徴点に基づくテンプレートマッチング処理に要する期間を表している。そして、期間２０００からフレーム期間の終了までの時間２０１０（次フレーム期間開始までの時間）は、非追跡領域区分２５０６の５個の新規特徴点についてテンプレートマッチング処理（期間９３０の処理）を行うのには十分な時間である。したがって、第４の実施形態の場合、１フレーム期間内に、テンプレートマッチング処理による動きベクトル値の検出までの処理を終えることができる。
【０１１３】
以下、図２４から図２７を参照しながら、第４の実施形態の追跡先特徴点決定部２０５における構成と処理の概要を説明する。図２６のＳ９０１〜Ｓ９０５までの処理は前述の図１２の処理と同様であり、ここでは図１２とは異なっている処理であるＳ２６０１〜Ｓ２６０３について説明を行う。
【０１１４】
なお、図１１の例は非追跡領域区分２５０６に１７個の追跡先特徴点が存在する例であったが、以下、説明を判り易くするために、非追跡領域区分２５０６の５グリッドに計５個の追跡先特徴点が入り、それら５個の追跡先特徴点を破棄する例を挙げる。このため、追跡領域区分内に在って追跡対象となる追跡先特徴点の数は２０個であるとする。したがって、Ｓ９０１で算出される追跡先特徴点座標は２０個となる。一方、非追跡領域区分２５０６の５個のグリッドからは、新規特徴点算出部２０２により５個の新規特徴点が抽出される。したがって、ベクトル値については、非追跡領域区分２５０６で抽出された５個の新規特徴点と、追跡領域区分内の２０個の追跡先特徴点とを用いたテンプレートマッチング処理の実施により、２５個分が算出されることになる。
【０１１５】
図２６のＳ９０３でＹＥＳと判定された場合、又は、Ｓ９０４の処理の後、追跡先特徴点決定部２０５の処理は、Ｓ２６０１に遷移する。
Ｓ２６０１に進むと、追跡先特徴点決定部２０５の領域判定部７２０は、Ｓ９０１で算出された追跡先特徴点座標が、図２５の非追跡領域区分２５０６内に侵入したか否かを判定する。具体的には、領域判定部７２０は、追跡先特徴点の垂直座標の値が、非追跡領域区分２５０６の上端座標の値以上である場合に、非追跡領域区分２５０６内にあると判定（ＹＥＳ）してＳ２６０２に処理を進める。一方、領域判定部７２０は、追跡先特徴点の垂直座標が、非追跡領域区分２５０６の上端座標の値未満である場合、非追跡領域区分２５０６内にないと判定（ＮＯ）してＳ２６０３に処理を進める。
【０１１６】
Ｓ２６０２に進んだ場合、新規特徴点補填部７２１は、Ｓ２６０１で非追跡領域区分２５０６内にあると判定された追跡先特徴点座標を破棄し、新規特徴点算出部２０２にて算出された新規特徴点座標に置き換える。なお、追跡先特徴点決定部２０５は、削除された追跡先特徴点座標を、現フレームにおいて一番初めに新規特徴点が算出された位置の特徴点抽出グリッドの該当位置で算出された新規特徴点座標により置き換えてもよい。Ｓ２６０２の後、追跡先特徴点決定部２０５の処理は、Ｓ２６０３に遷移する。
【０１１７】
Ｓ２６０３に進むと、追跡先特徴点決定部２０５は、全ての追跡先特徴点座標の算出が終わったか否か判定する。そして、Ｓ２６０３において、追跡先特徴点決定部２０５は、全ての追跡先特徴点座標の算出が終わっていないと判定（ＮＯ）した場合には、Ｓ９０１に処理を戻して、Ｓ９０１以降の処理を行う。図２５の例の場合、２０個の追跡先特徴点座標の算出処理が行われるため、Ｓ９０１からステップ２６０３までの処理は２０回反復されることになる。一方、追跡先特徴点決定部２０５は、Ｓ２６０３において、全ての追跡先特徴点座標の算出が終わったと判定（ＹＥＳ）した場合、図２６のフローチャートの処理を終了する。
【０１１８】
以上が、第４の実施形態の追跡先特徴点決定部２０５における処理の流れである。本実施形態では、１フレーム分の処理を例に挙げて説明したが、前述した１フレーム分の処理は毎フレームに対して同様に行われ、毎フレームでベクトル値が算出される。
【０１１９】
第４の実施形態における非追跡領域区分や追跡領域区分は、画像処理装置の処理能力に応じて決めることができる。例えば、画像処理装置におけるテンプレートマッチング用画像の生成処理速度やテンプレートマッチングの処理速度を基に、画像処理装置が一定処理期間内に処理を完了できるように、非追跡領域区分や追跡領域区分の設定を行うことができる。
【０１２０】
また、第４の実施形態では、非追跡領域区分を設けることでテンプレートマッチング処理期間を分散させるようにしており、非追跡領域区分は下部領域となされている。非追跡領域区分は、任意の領域に設定することも可能であり、例えば、フレームの画像範囲の上部領域、右部領域、左部領域、中央部領域等の、少なくとも一つに設定可能である。さらに、記非追跡領域区分は、フレームの画像範囲内に分散して配置されてもよい。
また、第４の実施形態において、補填する新規特徴点は、新規特徴点が補填される領域内のグリッドのうち特徴値が大きなものから優先的に補填してもよいし、分散し易いように上部領域のグリッドで算出したものから優先的に補填してもよい。
【０１２１】
第４の実施形態の画像処理装置は、追跡領域区分と非追跡領域区分とを設け、追跡領域区分では追跡先特徴点を基に動きベクトルを検出され、非追跡領域区分では新規特徴点を基に動きベクトルを検出する。これにより、第４の実施形態の画像処理装置は、追跡先特徴点がフレームの画像範囲内で偏在した場合でも、ベクトル検出性能の低下を防止しつつ、ベクトル検出を高速化し、所定期間内に処理を完了させることが可能となる。
【０１２２】
＜第５の実施形態＞
以下、第５の実施形態について説明する。
第５の実施形態の画像処理装置が適用されるデジタルカメラの構成は、図１に示した第１の実施形態のデジタルカメラと同様であるため、その図示と説明は省略する。
第５の実施形態の画像処理装置は、複数の特徴抽出グリッド群を第１の領域区分と第２の領域区分の少なくとも二つの領域区分に、区分けする。そして、第５の実施形態の画像処理装置は、追跡先特徴点のベクトル値と他のベクトル値を基に、追跡先特徴点が、何れの領域区分に属するかを判定し、その判定結果に応じてテンプレートマッチング処理に用いるテンプレートサイズ（大きさ）を決定する。
【０１２３】
第５の実施形態の画像処理部１０４のベクトル検出部の構成は、例えば前述した第２の実施形態の図１４に示したものと同様であるため、その図示と説明は省略する。また、第５の実施形態のベクトル検出部における処理のフローチャートは、前述した図７のフローチャートと概ね同様であり、また前述の図８、図９についても前述同様であるためそれらの図示と説明は省略する。
【０１２４】
図２８は、第５の実施形態におけるマッチング処理部２０３の概略構成を示した図である。図２８に示すように、第５の実施形態のマッチング処理部２０３は、領域区分部２８０１、カウント部２８０２、サイズ変更部２８０３、推定部２８０４、処理実行部２８０５を有する。図２９は、第５の実施形態のマッチング処理部２０３におけるテンプレートマッチング処理の流れを示すフローチャートである。図３０（ａ）、図３０（ｂ）は、マッチング処理部２０３内の領域区分部２８０１の処理の説明に用いる図である。図３１（ａ）、図３１（ｂ）は、マッチング処理部２０３内のサイズ変更部２８０３と推定部２８０４の処理の説明に用いる図である。
【０１２５】
以下、図２８から図３１を参照しながら、第５の実施形態のマッチング処理部２０３における構成と処理の概要について説明する。
第５の実施形態において、第２のＲＤＤＭＡＣ２２２からは、前述したサーチ領域画像データ２５３、テンプレート領域画像データ２５４とともに、グリッド座標情報２５２も読み出されて、マッチング処理部２０３にも送られる。
【０１２６】
マッチング処理部２０３の領域区分部２８０１は、Ｓ２９０１の処理として、現フレームの複数の特徴抽出グリッドを、第１の領域区分と第２の領域区分の少なくとも二つの領域区分に、区分けする。具体的には、領域区分部２８０１は、現フレームのグリッド座標情報を基に、それぞれ特徴抽出グリッドが属する領域区分を算出する。Ｓ２９０１の後、マッチング処理部２０３の処理は、Ｓ２９０２に遷移する。
【０１２７】
ここで、図３０（ａ）、図３０（ｂ）を用いて、領域区分部２８０１における領域区分の算出設定方法について具体的に説明する。図３０（ａ）は、現フレームを水平方向に５分割、垂直方向に５分割して計２５個のグリッドに区切った場合の画像読み出し順序を示す概念図である。また図３０（ａ）に示すように、現フレームの画像読み出しは、図中の矢印に示すようにラスタスキャン方式により行われる。図３０（ｂ）は、ラスタスキャン方式において、２５個の各グリッドに対して割り当てられる領域区分を示す概念図である。領域区分部２８０１は、図３０（ｂ）の下端より上側の２行分の特徴抽出グリッド群（ラスタスキャンの後半部）を第１の領域区分として設定する。すなわち、第１の領域区分は、前記動きベクトルの検出に使用される画像の生成が後に行われる領域区分であり、言い換えると画像読み出し順の終盤に読み出しが行われる領域区分である。また、領域区分部２８０１は、図３０（ｂ）の上端より下側の３行分の特徴抽出グリッド群（ラスタスキャンの前半部）を第２の領域区分として設定する。すなわち、第２の領域区分は、前記動きベクトルの検出に使用される画像の生成が先に後に行われる領域区分であり、言い換えると画像読み出し順の初期に読み出しが行われる領域区分である。なお、図３０（ｂ）の例では、下端より上側の２行分の特徴抽出グリッド群を第１の領域区分としたが、これには限定されず、任意の領域を第１の領域区分、第２の領域区分に設定することも可能である。
【０１２８】
Ｓ２９０２に処理に進むと、マッチング処理部２０３は、テンプレートマッチング処理対象となっているテンプレート領域画像データが属している特徴抽出グリッドが、第１の領域区分内の特徴抽出グリッドであるか否かを判定する。マッチング処理部２０３は、第１の領域区分でないと判別（ＮＯ）した場合には、現状のテンプレート領域画像データを、サイズ変更部２８０３を介して処理実行部２８０５に送る。その後、マッチング処理部２０３の処理はＳ２９０９に遷移する。一方、マッチング処理部２０３は、Ｓ２９０２にて第１の領域区分であると判別（ＹＥＳ）した場合には、Ｓ２９０３に処理を進める。なお、特徴抽出グリッドが第１の領域区分か否かの判定は、図１のＣＰＵ１１２により行われてもよい。
【０１２９】
マッチング処理部２０３のカウント部２８０２は、グリッドごとに追跡先特徴点を計数するカウンタである。Ｓ２９０３の処理に進んだ場合、カウント部２８０２は、現フレームのグリッド座標情報から、該当するグリッド内の追跡先特徴点を計数してカウンタ値を更新する。Ｓ２９０３の後、マッチング処理部２０３の処理はＳ２９０４に遷移する。
【０１３０】
Ｓ２９０４に進むと、マッチング処理部２０３は、図１のＲＯＭ１０９内に格納されている所定の閾値を用い、カウント部２８０２によりグリッド内で計数された追跡先特徴点数が所定の閾値を超えるか否かを判断する。マッチング処理部２０３は、グリッド内の追跡先特徴点数が閾値を超えないと判定（ＮＯ）した場合には、サイズ変更部２８０３を介して、現状のテンプレート領域画像データを処理実行部２８０５に送った後、Ｓ２９０９に処理を進める。一方、マッチング処理部２０３は、グリッド内の追跡先特徴点数が閾値を超えると判定（ＹＥＳ）した場合には、Ｓ２９０５に処理を進める。なお、グリッド内の追跡先特徴点数が閾値を超えるか否かの判定は、図１のＣＰＵ１１２により行われてもよい。また、閾値は、予めグリッド毎に設定されており、撮影条件などに応じて適宜更新可能となされている。なお、撮影条件などに応じた閾値の更新は、図１のＣＰＵ１１２により行われる。
【０１３１】
Ｓ２９０５に進むと、マッチング処理部２０３は、入力されたテンプレート領域画像データのテンプレートサイズが、予め決められた最少サイズか否かを判定する。マッチング処理部２０３は、テンプレートサイズが最少サイズであると判定（ＹＥＳ）した場合、所定期間内に処理を完了させることはできないと判断して、図２９のフローチャートの処理を終了する。一方、マッチング処理部２０３は、テンプレートサイズが最少サイズではないと判定（ＮＯ）場合にはＳ２９０６に処理を進める。なお、テンプレートサイズが予め決められた最少サイズか否かの判断は、ＣＰＵ１１２により行われてもよい。
【０１３２】
Ｓ２９０６に進むと、サイズ変更部２８０３は、入力されたテンプレート領域画像データのサイズ（つまりテンプレートの大きさ）を縮小し、その縮小したテンプレート領域画像データを推定部２８０４に出力する。Ｓ２９０６の後、マッチング処理部２０３の処理はＳ２９０７に遷移する。
【０１３３】
図３１（ａ）を用いて、サイズ変更部２８０３におけるテンプレートサイズの変更処理について説明する。図３１（ａ）はテンプレートサイズの例を表した図である。本実施形態においてテンプレートマッチングで使用するテンプレート領域は例えば正方形であり、図３１（ａ）の例では１辺がｎ、２ｎ、３ｎ（ｎは複数の画素数）となる計３種類をサイズ例に挙げている。サイズ変更部２８０３は、入力されたテンプレート領域画像データが１辺３ｎのテンプレート領域である場合、Ｓ２９０７において、テンプレート領域の中心に対して上下左右の領域をトリミングして１辺２ｎのテンプレート領域画像に縮小する。なお、サイズ変更部２８０３は、１辺３ｎのテンプレート領域を１辺ｎのテンプレート領域画像に縮小してもよい。
【０１３４】
Ｓ２９０７の処理に進むと、推定部２８０４は、入力されたテンプレート領域画像のサイズを基に、処理時間を推定するための処理時間係数を算出する。Ｓ２９０７の後、マッチング処理部２０３の処理はＳ２９０８に遷移する。
【０１３５】
図３１（ｂ）を用いて、推定部２８０４における時間算出の処理について説明する。図３１（ｂ）は、推定部２８０４における処理時間係数算出例の説明に用いる図である。本実施形態においてテンプレート領域は、図３１（ａ）に示したように正方形であり、図３１（ｂ）のｎ、２ｎ、３ｎはテンプレート領域の１辺のサイズを表している。また、図３１（ｂ）のＳＡＤ演算量は、テンプレートマッチングで相関値を算出する際の演算量を示しており、ＳＡＤ演算は前述した式（３）により行われる。相関値算出ではテンプレート領域内の全画素値に対する演算が行われるため、テンプレートサイズの１辺がｎ、２ｎ、３ｎのように大きくなるにつれて、ＳＡＤ演算量は、図３１（ｂ）のｎ、４ｎ、９ｎで表されるように増加する。また、図３１（ｂ）の処理時間係数は、テンプレート領域の１辺のサイズがｎの場合のテンプレートマッチング処理の処理時間係数を１として表している。したがって、テンプレート領域の１辺がｎ、２ｎ、３ｎのように大きくなるにつれて、処理時間係数は１、４、９のように多く（時間が長く）なる。一方、サイズ変更部２８０３よりテンプレート領域が例えば１辺３ｎのサイズから１辺ｎのサイズに変更されたとすると、テンプレートマッチング処理の処理時間係数は１から９に減り、処理時間が１／９に短縮されることになる。
【０１３６】
Ｓ２９０８の処理に進むと、マッチング処理部２０３は、推定部２８０４にて算出された処理時間係数を基に、追跡先特徴点を中心としたテンプレートマッチングの処理が所定の時間内（１フレーム期間内）に終了するか否かを判断する。マッチング処理部２０３は、所定の時間内に処理が終了すると判断（ＹＥＳ）した場合、サイズ変更部２８０３にて縮小されたテンプレート領域画像データを、処理実行部２８０５に送った後、Ｓ２９０９に処理を進める。一方、マッチング処理部２０３は、所定の時間内に終了しないと判断（ＮＯ）した場合には、更にテンプレートサイズを縮小する処理を継続するために、Ｓ２９０５に処理を戻す。すなわち、Ｓ２９０５からＳ２９０８までで行われるテンプレートサイズの変更の処理は、テンプレートマッチングに要する処理時間が１フレーム期間のような所定の時間に収まるようになるまで繰り返される。なお、テンプレートマッチングの処理が所定の時間内に終了するか否かの判断は、ＣＰＵ１１２により行われてもよい。
【０１３７】
Ｓ２９０９の処理に進むと、処理実行部２８０５は、入力されたテンプレート領域画像データとサーチ領域画像データとを用いて相関値を算出し、その相関値を基に動きベクトルを検出する。そして、マッチング処理部２０３は、その検出した動きベクトルのベクトル値情報と相関値情報とを、前述の精度判定部２０４に出力する。その後、マッチング処理部２０３は、図２９のフローチャートの処理を終了する。
【０１３８】
以上が、第５の実施形態のマッチング処理部２０３における処理の流れである。本実施形態では、１フレーム分の処理を例に挙げて説明したが、前述した１フレーム分の処理は毎フレームに対して同様に行われ、毎フレームでベクトル値が算出される。
【０１３９】
以上説明したように、第５の実施形態の画像処理装置は、サイズ変更部２８０３によりテンプレート領域のサイズを縮小することで前述した相関値算出領域を縮小することにより、ＳＡＤ計算量を削減する。これにより、第５の実施形態の画像処理装置は、１フレームの期間内にテンプレートマッチング処理を完了することができるようになる。したがって、第５の実施形態の画像処理装置は、追跡先の特徴点がフレームの画像範囲内で偏在した場合でも、ベクトル検出性能の低下を防止しつつ、ベクトル検出を高速化し、所定期間内に処理を完了させることが可能となる。
【０１４０】
＜その他の実施形態＞
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【０１４１】
上述の実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明は、その技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【０１４２】
１０４：画像処理部、１０７：ＤＲＡＭ、１１２：ＣＰＵ、２２１：第１のＲＤＤＭＡＣ、２０１：マッチング用画像生成部、２０２：新規特徴点算出部、２０３：マッチング処理部、２０４：精度判定部、２０５：追跡先特徴点決定部、２０６：ＳＲＡＭ、２２２：第２のＲＤＤＭＡＣ、２３１：ＷＲＤＭＡＣ
【図１】
2019020839.tif 000006
【図２】
2019020839.tif 000007
【図３】
2019020839.tif 000008
【図４】
2019020839.tif 000009
【図５】
2019020839.tif 000010
【図６】
2019020839.tif 000011
【図７】
2019020839.tif 000012
【図８】
2019020839.tif 000013
【図９】
2019020839.tif 000014
【図１０】
2019020839.tif 000015
【図１１】
2019020839.tif 000016
【図１２】
2019020839.tif 000017
【図１３】
2019020839.tif 000018
【図１４】
2019020839.tif 000019
【図１５】
2019020839.tif 000020
【図１６】
2019020839.tif 000021
【図１７】
2019020839.tif 000022
【図１８】
2019020839.tif 000023
【図１９】
2019020839.tif 000024
【図２０】
2019020839.tif 000025
【図２１】
2019020839.tif 000026
【図２２】
2019020839.tif 000027
【図２３】
2019020839.tif 000028
【図２４】
2019020839.tif 000029
【図２５】
2019020839.tif 000030
【図２６】
2019020839.tif 000031
【図２７】
2019020839.tif 000032
【図２８】
2019020839.tif 000033
【図２９】
2019020839.tif 000034
【図３０】
2019020839.tif 000035
【図３１】
2019020839.tif 000036