(57)【要約】【課題】撮影範囲の中の複数の処理領域の各々の内部で特徴点を追跡する場合に、特徴点が他の処理領域の方向へ移動して追跡に失敗する（消失する）可能性を低減する技術を提供する。【解決手段】被写体の移動方向を判定する判定手段と、撮影範囲の中に、前記移動方向と異なる方向に並ぶ複数の処理領域を設定する設定手段と、所定の撮影画像の各処理領域において追跡対象点を選択する選択手段と、各処理領域の内部で、前記所定の撮影画像の後に撮影される１以上の撮影画像にわたって前記追跡対象点を追跡する追跡手段と、を備えることを特徴とする画像処理装置を提供する。【選択図】図１０
2019175112.tif 000002
【特許請求の範囲】
【請求項１】
被写体の移動方向を判定する判定手段と、
撮影範囲の中に、前記移動方向と異なる方向に並ぶ複数の処理領域を設定する設定手段と、
所定の撮影画像の各処理領域において追跡対象点を選択する選択手段と、
各処理領域の内部で、前記所定の撮影画像の後に撮影される１以上の撮影画像にわたって前記追跡対象点を追跡する追跡手段と、
を備えることを特徴とする画像処理装置。
【請求項２】
前記設定手段は、各処理領域の中に複数の選択対象領域を設定し、
前記選択手段は、前記所定の撮影画像の各処理領域の各選択対象領域において前記追跡対象点を選択する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記１以上の撮影画像のうちの特定の撮影画像において、前記追跡手段が前記所定の撮影画像の特定の選択対象領域において選択された特定の追跡対象点の追跡に失敗した場合、前記選択手段は、前記特定の撮影画像の前記特定の選択対象領域において前記特定の追跡対象点を代替する新たな追跡対象点を選択する
ことを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記１以上の撮影画像のうちの特定の撮影画像において、前記追跡手段が前記所定の撮影画像の特定の処理領域において選択された特定の追跡対象点の追跡に失敗した場合、前記選択手段は、前記特定の撮影画像の前記特定の処理領域の複数の選択対象領域のうちの特定の選択対象領域において前記特定の追跡対象点を代替する新たな追跡対象点を選択し、
前記特定の選択対象領域は、他の処理領域の隣にある又は少なくとも一部が重複する１以上の選択対象領域のうちのいずれかである
ことを特徴とする請求項２に記載の画像処理装置。
【請求項５】
前記被写体が前記特定の撮影画像の前記特定の処理領域の中に入る方向に移動している場合、前記特定の選択対象領域は、他の処理領域の隣にある又は少なくとも一部が重複する前記１以上の選択対象領域のうちの、前記被写体が入ってくる位置にある選択対象領域である
ことを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記設定手段は、各処理領域の中で前記被写体が存在する位置に前記複数の選択対象領域を設定する
ことを特徴とする請求項２乃至５のいずれか１項に記載の画像処理装置。
【請求項７】
前記所定の撮影画像及び前記１以上の撮影画像は、撮像素子を用いる動画撮影により生成され、
前記設定手段は、
前記複数の処理領域が前記撮像素子の上下方向に並ぶ場合に１つの撮影画像における前記追跡手段による前記追跡対象点の追跡が前記動画撮影の１フレーム期間内に完了するか否かを判定し、
前記追跡対象点の追跡が前記１フレーム期間内に完了しない場合、前記移動方向に関わらず、前記撮像素子の左右方向に並ぶように前記複数の処理領域を設定する
ことを特徴とする請求項１乃至６のいずれか１項に記載の画像処理装置。
【請求項８】
撮影範囲の中に複数の処理領域を設定し、各処理領域の中に複数の選択対象領域を設定する設定手段と、
所定の撮影画像の各処理領域の各選択対象領域において追跡対象点を選択する選択手段と、
各処理領域の内部で、前記所定の撮影画像の後に撮影される１以上の撮影画像にわたって前記追跡対象点を追跡する追跡手段と、
を備え、
前記１以上の撮影画像のうちの特定の撮影画像において、前記追跡手段が前記所定の撮影画像の特定の処理領域において選択された特定の追跡対象点の追跡に失敗した場合、前記選択手段は、前記特定の撮影画像の前記特定の処理領域の複数の選択対象領域のうちの特定の選択対象領域において前記特定の追跡対象点を代替する新たな追跡対象点を選択し、
前記特定の選択対象領域は、他の処理領域の隣にある又は少なくとも一部が重複する１以上の選択対象領域のうちのいずれかである
ことを特徴とする画像処理装置。
【請求項９】
請求項１乃至８のいずれか１項に記載の画像処理装置と、
前記所定の撮影画像及び前記１以上の撮影画像を生成する撮像手段と、
を備えることを特徴とする撮像装置。
【請求項１０】
画像処理装置が実行する画像処理方法であって、
被写体の移動方向を判定する判定工程と、
撮影範囲の中に、前記移動方向と異なる方向に並ぶ複数の処理領域を設定する設定工程と、
所定の撮影画像の各処理領域において追跡対象点を選択する選択工程と、
各処理領域の内部で、前記所定の撮影画像の後に撮影される１以上の撮影画像にわたって前記追跡対象点を追跡する追跡工程と、
を備えることを特徴とする画像処理方法。
【請求項１１】
画像処理装置が実行する画像処理方法であって、
撮影範囲の中に複数の処理領域を設定し、各処理領域の中に複数の選択対象領域を設定する設定工程と、
所定の撮影画像の各処理領域の各選択対象領域において追跡対象点を選択する選択工程と、
各処理領域の内部で、前記所定の撮影画像の後に撮影される１以上の撮影画像にわたって前記追跡対象点を追跡する追跡工程と、
を備え、
前記１以上の撮影画像のうちの特定の撮影画像において、前記追跡工程が前記所定の撮影画像の特定の処理領域において選択された特定の追跡対象点の追跡に失敗した場合、前記選択工程は、前記特定の撮影画像の前記特定の処理領域の複数の選択対象領域のうちの特定の選択対象領域において前記特定の追跡対象点を代替する新たな追跡対象点を選択し、
前記特定の選択対象領域は、他の処理領域の隣にある又は少なくとも一部が重複する１以上の選択対象領域のうちのいずれかである
ことを特徴とする画像処理方法。
【請求項１２】
コンピュータを、請求項１乃至８のいずれか１項に記載の画像処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、撮像装置、画像処理方法、及びプログラムに関する。
【背景技術】
【０００２】
デジタルビデオカメラ等の撮像装置を用いて撮影された映像に対して手ぶれ補正を施すためには、フレーム画像間の動き量を検出して複数枚の画像に対して位置合わせを行う必要がある。フレーム画像間の動き量を検出する方法としては、ジャイロセンサのような外部機器の情報を用いたり、撮影されたフレーム画像から動き量を推定したりする方法等がある。
【０００３】
フレーム画像を用いた動き量推定の方法は従来から種々提案されているが、その代表的なものとしてテンプレートマッチングによる動きベクトル検出がある。テンプレートマッチングでは、まず映像中のある２枚のフレーム画像の一方を原画像、もう一方を参照画像とする。そして、原画像上に配置した所定の大きさの矩形領域をテンプレートブロックとし、参照画像の各位置においてテンプレートブロック内の画素値の分布との相関を求める。このとき、参照画像中で最も相関が高くなる位置がテンプレートブロックの移動先であり、原画像上でのテンプレートブロックの位置を基準とした時の移動先への向きと移動量が動きベクトルとなる。
【０００４】
動きベクトルの検出率を向上させるため、フレーム画像から特徴点を抽出し、抽出した特徴点にテンプレートブロックを配置してテンプレートマッチングを行う技術がある。ここで、画像全体で特徴点抽出を行うと、特徴点の分布は不均一になることが多い。不均一な特徴点に対して得られた動きベクトルを手ぶれ補正の用途で使用する場合、特徴の集中した領域が主となる手ぶれ補正となってしまう。そこで、特許文献１が開示するように、特徴点を均一に分布させるため、画像をグリッド状に分割して、特徴の大きさを表す特徴値を画素ごとに計算し、各グリッド内で特徴値が最も大きい画素を特徴点として抽出する技術が知られている。
【０００５】
また、特許文献２が開示するように、動きベクトルの検出率を向上させるために、特徴点を追跡する技術が知られている。特徴点追跡は、画像から抽出された特徴点の動きベクトルを、連続する複数のフレーム画像にわたって逐次検出することで実現できる。
【０００６】
図１４は、特徴点追跡処理の概略を示す図である。撮像装置は、特徴点抽出を行うための特徴点抽出グリッド１４０４内で特徴点１４０１を抽出し、テンプレート領域１４０３を設定する。そして、撮像装置は、テンプレートマッチング領域１４０６内でテンプレートマッチングを実施してベクトル値１４０７を算出する。特徴点抽出グリッド１４０４の周囲には、特徴点抽出は実施されないがテンプレートマッチングで使用される周辺グリッド１４０５が配置される。
【０００７】
次のフレームの処理では、撮像装置は、算出されたベクトル値１４０７を特徴点１４０１に加算することにより得られる追跡先特徴点１４０２を中心にテンプレートマッチングを実施する。以後、撮像装置は、複数フレームにわたって、追跡先特徴点に対して、ベクトル値を加算して次の追跡先特徴点を検出する処理を繰り返す。
【０００８】
また、特許文献３及び特許文献４が開示するように、追跡対象の移動方向などに基づいて追跡の範囲を制限する技術も知られている。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００８−１９２０６０号公報
【特許文献２】特開２００７−３３４６２５号公報
【特許文献３】特許第４５０４１５８号公報
【特許文献４】特開２０１２−７３９９７号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
撮影範囲に含まれる複数の領域の各々に対して独立して特徴点追跡処理が行われる場合がある。このような場合の例として、特徴点追跡処理を行うハードウェアにより構成される複数の動きベクトル検出部を撮像装置が備える場合が挙げられる。
【００１１】
例えば、図１５（ａ）に示すように、撮像装置は、１つの画像に２つの処理領域を設定し、各処理領域を異なる動きベクトル検出部で処理する。図１５（ａ）において、第１の動きベクトル検出部は、左側の実線で囲まれた処理領域１５０１を処理し、第２の動きベクトル検出部は、右側の破線で囲まれた処理領域１５０２を処理する。重複領域１５００は、処理領域１５０１と処理領域１５０２とが重なり合う領域である。第１の動きベクトル検出部で検出された特徴点１５１０〜１５１４は、実線で囲まれた処理領域１５０１の右端の特徴点抽出グリッドの中に位置している。ここで、図１５（ａ）に示すように特徴点１５１０〜１５１４が右側へ移動した場合、移動先に対応するテンプレートマッチング領域は処理領域１５０１からはみ出すためテンプレートマッチングを行うことができず、特徴点が消失してしまう。
【００１２】
図１５（ｂ）を参照して、特徴点の消失について更に詳細に説明する。図１５（ｂ）において、被写体１５０４は矢印１５０３に示されるように右側に移動する。この場合、第１の動きベクトル検出部により被写体１５０４の周囲で検出された特徴点１５２０〜１５２７も右側に移動する。この場合、特徴点１５２０〜１５２７は、重複領域１５００付近まで追跡された後、処理領域１５０１の追跡可能範囲から外れるため、最終的には消失してしまう。
【００１３】
このように、被写体の移動方向と同じ方向に複数の処理領域を並べた場合、特徴点が他の処理領域の方向へ移動して追跡に失敗する（消失する）可能性が上昇する。その結果、動きベクトル検出性能が低下してしまうといった課題が発生する。
【００１４】
本発明はこのような状況に鑑みてなされたものであり、撮影範囲の中の複数の処理領域の各々の内部で特徴点を追跡する場合に、特徴点が他の処理領域の方向へ移動して追跡に失敗する（消失する）可能性を低減する技術を提供することを目的とする。
【課題を解決するための手段】
【００１５】
上記課題を解決するために、本発明は、被写体の移動方向を判定する判定手段と、撮影範囲の中に、前記移動方向と異なる方向に並ぶ複数の処理領域を設定する設定手段と、所定の撮影画像の各処理領域において追跡対象点を選択する選択手段と、各処理領域の内部で、前記所定の撮影画像の後に撮影される１以上の撮影画像にわたって前記追跡対象点を追跡する追跡手段と、を備えることを特徴とする画像処理装置を提供する。
【発明の効果】
【００１６】
本発明によれば、撮影範囲の中の複数の処理領域の各々の内部で特徴点を追跡する場合に、特徴点が他の処理領域の方向へ移動して追跡に失敗する（消失する）可能性を低減することが可能となる。
【００１７】
なお、本発明のその他の特徴及び利点は、添付図面及び以下の発明を実施するための形態における記載によって更に明らかになるものである。
【図面の簡単な説明】
【００１８】
【図１】画像処理装置を含むデジタルカメラ１００の構成を示すブロック図。
【図２】動きベクトル検出部１２１〜１２２の構成を示すブロック図。
【図３】動きベクトル検出部１２１〜１２２が処理するグリッド配置、特徴点、及びテンプレート領域などの関係を示す図。
【図４】特徴点追跡処理のフローチャート。
【図５】新規特徴点算出部２０２の詳細な構成を示すブロック図。
【図６】低コントラスト判定、画素値の最大値突出判定、及び繰り返しパターン判定を説明する図。
【図７】第１の実施形態に係る追跡先特徴点算出処理（図４のＳ４０９）の詳細を示すフローチャート。
【図８】デジタルカメラ１００を横方向にして撮影を行う場合の処理領域の設定例を示す図。
【図９】デジタルカメラ１００を縦方向にして撮影を行う場合の処理領域の設定例を示す図。
【図１０】第１の実施形態に係る分割方向決定処理（図４のＳ４００）の詳細を示すフローチャート。
【図１１】第２の実施形態に係る処理領域の設定例を示す図。
【図１２】第２の実施形態に係るテンプレートマッチング処理のタイミングチャート。
【図１３】第２の実施形態に係る分割方向決定処理（図４のＳ４００）の詳細を示すフローチャート。
【図１４】特徴点追跡処理の概略を示す図。
【図１５】撮影範囲の中の複数の処理領域の各々の内部で特徴点を追跡する処理を説明する図。
【図１６】第３の実施形態に係る追跡先特徴点算出処理（図４のＳ４０９）の詳細を示すフローチャート。
【図１７】新規特徴点の選択方法を説明する図。
【図１８】デジタルカメラ１００が４個の動きベクトル検出部を備え、４つの処理領域を設定する場合を説明する図。
【図１９】デジタルカメラ１００が被写体が入り込むグリッドに限定して補填優先グリッドを設定する場合を説明する図。
【図２０】（ａ）デジタルカメラ１００が動きベクトル検出を画面全体で行う場合を示す図、（ｂ）デジタルカメラ１００が被写体領域に限定して動きベクトル検出を行う場合を示す図。
【発明を実施するための形態】
【００１９】
以下、添付図面を参照して、本発明の実施形態を説明する。添付図面の全体を通じて、同一の参照符号が付与された要素は、同一又は同様の要素を表す。なお、本発明の技術的範囲は、特許請求の範囲によって確定されるのであって、以下の個別の実施形態によって限定されるわけではない。また、実施形態の中で説明されている特徴の組み合わせすべてが、本発明に必須とは限らない。また、別々の実施形態の中で説明されている特徴を適宜組み合せることも可能である。
【００２０】
［第１の実施形態］
図１は、画像処理装置を含むデジタルカメラ１００の構成を示すブロック図である。図１において、結像光学部１０１はレンズ及び絞りなどを備えている。撮影の際、結像光学部１０１はフォーカス調節及び露出調節を行い、撮像素子１０２に光学像を結像する。撮像素子１０２は、光学像を電気信号（アナログ画像信号）に変換する光電変換機能を有し、ＣＣＤやＣＭＯＳセンサ等で構成される。Ａ／Ｄ変換部１０３は撮像素子１０２からのアナログ画像信号をデジタル画像信号に変換する。
【００２１】
ＣＰＵ１１２は、デジタルカメラ１００全体の制御を司るマイクロコンピュータ等で構成され、各機能ブロックに対して動作指示を行い、各種の制御処理を実行する。バス１１４はシステムバスであり、バス１１５は画像データバスである。
【００２２】
ＤＲＡＭ１０７は、データを記憶するメモリであり、所定枚数の静止画像、所定時間の動画像、音声等のデータや、ＣＰＵ１１２の動作用の定数、プログラム等を格納するのに十分な記憶容量を備える。メモリ制御部１０６は、ＣＰＵ１１２或いはデータ転送部１０５からの指示に応じて、ＤＲＡＭ１０７へのデータ書き込み及びデータ読み出しを行う。
【００２３】
不揮発性メモリ制御部１０８は、ＣＰＵ１１２からの指示に応じて、ＲＯＭ１０９にデータの書き込み及び読み出しを行う。ＲＯＭ１０９は、電気的に消去・記録可能なメモリであり、ＥＥＰＲＯＭ等が用いられる。ＲＯＭ１０９には、ＣＰＵ１１２の動作用の定数、プログラム等が記憶される。
【００２４】
ＣＰＵ１１２は、バス１１４を介して画像処理部１０４、データ転送部１０５、メモリ制御部１０６、不揮発性メモリ制御部１０８、表示制御部１１０、操作部１１３、撮像素子１０２を制御する。ＣＰＵ１１２は、ＲＯＭ１０９に記録されたプログラムを実行することにより、本実施形態の各処理を実現する。
【００２５】
表示部１１１は、液晶モニタ等から成り、表示制御部１１０により制御され、各種画像データ等を表示する。操作部１１３は、ユーザにより操作されるスイッチやボタン等を含み、電源のＯＮ／ＯＦＦ、シャッターのＯＮ／ＯＦＦ等の操作に使用される。
【００２６】
画像処理部１０４は、各種画像処理回路及びバッファメモリ等から構成されており、動きベクトル検出部１２１、動きベクトル検出部１２２、及び被写体検出部１２３を備える。動きベクトル検出部１２１と動きベクトル検出部１２２とは同一の機能を有し、各々独立して動きベクトル検出を行う。被写体検出部１２３は、被写体の顔部分や物体部分などの特徴量や動き量を検出し、主となる被写体を検出する。
【００２７】
データ転送部１０５は、データ転送を行う複数のＤＭＡＣ（Direct Memory Access Controller）で構成されている。ジャイロセンサ１１６は、デジタルカメラ１００の姿勢（横位置、縦位置など）や動き方向を検出し、ＣＰＵ１１２へ通知する。
【００２８】
図３は、動きベクトル検出部１２１〜１２２が処理するグリッド配置、特徴点、及びテンプレート領域などの関係を示す図である。以下の説明は、動きベクトル検出部１２１〜１２２に共通である。
【００２９】
設定されたサイズの特徴点抽出グリッド３０２（図３中の白色グリッド）と周辺グリッド３０１（図３中の網点グリッド）が、水平、垂直方向に設定された個数分配置されている。特徴点３０３が、各特徴点抽出グリッド３０２に１つ抽出される。周辺グリッド３０１は、特徴点抽出グリッド３０２の周囲に配置され、特徴点抽出は実施されないが、テンプレートマッチングで使用される領域である。抽出された特徴点３０３を中心として、設定されたサイズの矩形状のサーチ領域３０５及びテンプレート領域３０４が設けられる。
【００３０】
次に、図２及び図４を参照して、特徴点追跡処理について説明する。図２は、動きベクトル検出部１２１〜１２２の構成を示すブロック図であり、図４は、特徴点追跡処理のフローチャートである。なお、図２においては、説明の便宜上、実際には動きベクトル検出部１２１〜１２２に含まれないブロックであっても、特徴点追跡処理のために利用されるブロック（例えば、ＤＲＡＭ１０７）については、動きベクトル検出部１２１〜１２２の内部に図示する。また、データの流れを分かりやすくするために、同じブロック（例えば、ＤＲＡＭ１０７）を複数の位置に図示する場合もある。画像処理部１０４に対する撮影画像の入力が開始すると、図４のフローチャートの処理が実行される。
【００３１】
Ｓ４００で、ＣＰＵ１１２は、ジャイロセンサ１１６及び被写体検出部１２３からの情報に基づいて処理領域の分割方向を決定し、決定した分割方向を分割方向設定部２６０に設定する。分割方向設定部２６０は、設定された分割方向に基づき、撮影範囲の中に対象とする処理領域を設定する。なお、Ｓ４００の処理の詳細については、図１０を参照して後述する。
【００３２】
Ｓ４０１で、データ転送部１０５が具備するＲＤＤＭＡＣ２２１は、ベクトル検出対象となる現フレームの入力画像２４１を、バス１１５を介してＤＲＡＭ１０７から読み出す。読み出すデータ量は、図３に示されるように設定された特徴点抽出グリッド３０２及び周辺グリッド３０１のサイズに従う。なお、入力画像２４１は、画像処理部１０４で各種画像処理が実施されている。ＲＤＤＭＡＣ２２１によりグリッド単位で読み出された入力画像２４１は、テンプレートマッチング画像生成部２０１及び新規特徴点算出部２０２に出力される。また、ＲＤＤＭＡＣ２２１は、読み出したグリッドの座標位置を示すグリッド座標情報２５２を後述する追跡先特徴点決定部２０５に出力する。
【００３３】
Ｓ４０２で、テンプレートマッチング画像生成部２０１は、ベクトル検出時のテンプレートマッチングに使用するテンプレートマッチング画像を生成し、データ転送部１０５が具備するＷＲＤＭＡＣ２３１に出力する。テンプレートマッチング画像生成部２０１は、バンドパスフィルタ回路を含み、テンプレートマッチング処理に不要な画像信号の高周波成分と低周波成分をカットする。
【００３４】
Ｓ４０３で、データ転送部１０５が具備するＷＲＤＭＡＣ２３１は、入力されたテンプレートマッチング画像（以下、テンプレートマッチング画像２４２と呼ぶ）を、バス１１５を介してＤＲＡＭ１０７に書き出す。また、ＤＲＡＭ１０７には、前フレームで生成されたテンプレートマッチング画像（以下、テンプレートマッチング画像２４３と呼ぶ）が格納されている。
【００３５】
Ｓ４０４で、新規特徴点算出部２０２は、現フレームの新規特徴点（新規の追跡対象点）を算出する。なお、Ｓ４０４の処理は、Ｓ４０２及びＳ４０３の処理と並行して実行可能である。
【００３６】
ここで、図５を参照して、新規特徴点算出部２０２の詳細について説明する。新規特徴点算出部２０２は、特徴フィルタ部５０１、特徴評価部５０２、特徴点決定部５０３を含む。
【００３７】
特徴フィルタ部５０１は、バンドパスフィルタ、水平微分フィルタ、垂直微分フィルタ、平滑化フィルタなど、複数のフィルタから構成される。本実施形態においては、バンドパスフィルタが、入力画像（グリッド単位）の不要な高周波成分と低周波成分をカットする。その後、水平微分フィルタにより水平方向の微分フィルタ処理を施した信号と、垂直微分フィルタにより垂直方向の微分フィルタ処理を施した信号とが生成される。そして、各方向の微分フィルタ処理が施された信号に対して、平滑化フィルタにより平滑化フィルタ処理が施される。特徴フィルタ部５０１は、こうして得られた信号を、各方向の特徴画像として出力する。
【００３８】
特徴評価部５０２は、特徴フィルタ部５０１によりフィルタ処理された特徴画像（グリッド単位）に対し、画素ごとに、２つのエッジの交点や曲率が極大である曲線状の点など画素の周辺の微分値が多方向に大きい点を、特徴評価式により特徴値として算出する。以下、Ｓｈｉ  ａｎｄ  Ｔｏｍａｓｉの手法を例に、特徴値の算出について説明する。特徴評価部５０２は、水平微分フィルタと垂直微分フィルタを施した結果から、式１に示す自己相関行列Ｈを作成する。
2019175112.tif 000003
式１においてＩｘは水平微分フィルタを施した結果、Ｉｙは垂直微分フィルタを施した結果を表しており、ガウシアンフィルタＧを畳み込む演算が行われる。Ｓｈｉ  ａｎｄ  Ｔｏｍａｓｉの特徴評価式を式２に示す。
Ｓｈｉ  ａｎｄ  Ｔｏｍａｓｉ＝ｍｉｎ（λ１，λ２）・・・（２）
式２は、式１の自己相関行列Ｈの固有値λ１，λ２のうちの小さい方を特徴値とすることを示す。
【００３９】
特徴点決定部５０３は、各グリッド（特徴点の選択対象領域）について、特徴評価部５０２によって画素ごとに算出された特徴値のうち最も大きい特徴値Ｐｃを持つ画素を特徴点として決定（選択）する。本実施形態においては、特徴点の座標は、グリッドの左上端を（０，０）とした相対座標（ＰＸ，ＰＹ）で表現するが、画像信号における絶対座標で表現してもよい。
【００４０】
なお、算出された新規特徴点の座標（ＰＸ，ＰＹ）及び特徴値Ｐｃは、新規特徴点算出部２０２が具備するメモリに格納される。メモリは、前フレーム及び現フレームの特徴点の座標（ＰＸ，ＰＹ）及び特徴値Ｐｃを格納するための容量を有している。テンプレートマッチング処理部２０３にて、対応するグリッドのテンプレートマッチング処理が開始される際に、新規特徴点２５１が特徴値Ｐｃと共に追跡先特徴点決定部２０５へ出力される。
【００４１】
Ｓ４０５で、ＲＤＤＭＡＣ２２２は、前フレームで算出された追跡先特徴点２５７を中心として、設定されたサイズの矩形領域を、現フレームのテンプレートマッチング画像２４２及び前フレームのテンプレートマッチング画像２４３から読み出す。追跡先特徴点２５７は、追跡先特徴点決定部２０５から入力される。但し、最初にテンプレートマッチング処理を行う際には、前フレームで追跡先特徴点が算出されていないため、追跡先特徴点２５７の代わりに前フレームの新規特徴点２５１が使用される。
【００４２】
なお、現フレームのテンプレートマッチング画像２４２から読み出される矩形領域はサーチ領域３０５に対応し、前フレームのテンプレートマッチング画像２４３から読み出される矩形領域はテンプレート領域３０４に対応する。サーチ領域３０５に対応する矩形領域の画像及びテンプレート領域３０４に対応する画像は、それぞれ、サーチ領域画像２５３及びテンプレート領域画像２５４として、テンプレートマッチング処理部２０３へ出力される。
【００４３】
Ｓ４０６で、テンプレートマッチング処理部２０３は、サーチ領域画像２５３及びテンプレート領域画像２５４を用いて相関値を算出し、その相関値に基づいてベクトル値を算出する。本実施形態では、相関値の算出方法として、式３に示す差分絶対値和（Ｓｕｍ  ｏｆ  Ａｂｓｏｌｕｔｅ  Ｄｉｆｆｅｒｅｎｃｅ、ＳＡＤ）を使用することができる。
Ｓ＿ＳＡＤ＝ΣｉΣｊ｜ｆ（ｉ，ｊ）−ｇ（ｉ，ｊ）｜  ・・・  （３）
式３において、ｆ（ｉ，ｊ）はテンプレート領域画像２５４内の座標（ｉ，ｊ）における画素値を表し、ｇ（ｉ，ｊ）はサーチ領域画像２５３において相関値算出の対象となる領域内の対応する画素値を表す。相関値算出対象領域は、テンプレート領域画像２５４と同じ大きさである。そしてＳＡＤでは、両ブロック内の各画素値ｆ（ｉ，ｊ）及びｇ（ｉ，ｊ）について差の絶対値を計算し、その総和を求めることで相関値Ｓ＿ＳＡＤを得ることができる。従って、相関値Ｓ＿ＳＡＤの値が小さいほど両ブロック間の輝度値の差分が小さい、つまりテンプレート領域画像２５４と相関値算出領域内とでテクスチャが類似していることを表している。
【００４４】
なお、本実施形態では、相関値の一例としてＳＡＤを使用しているが、これに限るものではなく、差分二乗和（ＳＳＤ）や正規化相互相関（ＮＣＣ）等の他の相関値を用いてもよい。テンプレートマッチング処理部２０３は、相関値の最小値の位置に基づいて、前フレームの追跡先特徴点のベクトル値を算出する。テンプレートマッチング処理部２０３は、ベクトル情報２５５（算出されたベクトル値及び相関値）を精度判定部２０４に出力する。
【００４５】
Ｓ４０７で、精度判定部２０４は、Ｓ４０６において算出された相関値に基づいて相関値の最大値、最小値、平均値、極小値を算出し、低コントラスト判定、画素値の最大値突出判定、及び繰り返しパターン判定を行う。
【００４６】
図６に、画素値と各判定の関係をグラフで示す。但し、本実施形態では相関値が小さいほど類似度が高いため、図６において、画素値の最大値は相関値では最小値を表し、画素値の最小値は相関値では最大値を表し、画素値の極大値は相関値では極小値を表す。
【００４７】
低コントラスト判定では、相関値算出領域内の相関値の最大値と最小値の差分が予め設定されている閾値よりも小さい場合に、相関値算出領域は低コントラストであると判定される。画素値の最大値突出判定では、相関値算出領域内の相関値の最小値がどれだけ際立っているかが判定される。画素値の最大値と平均値の差分と、画素値の最大値と最小値の差分の除算結果が、予め設定されている閾値よりも小さい場合、相関値算出領域は低ピークであると判定される。除算結果が閾値よりも大きい場合、相関値算出領域は高ピークであると判定される。繰り返しパターン判定では、相関値算出領域内の画素値の最小値と極小値の差分が予め設定されている閾値よりも小さい場合に、相関値算出領域は繰り返しパターンであると判定される。
【００４８】
図６（ａ）は、各判定の結果が良好な場合を示す。図６（ｂ）は、低コントラスト判定により相関値算出領域が低コントラストであると判定される場合を示す。図６（ａ）に比べて、図６（ｂ）では画素値の最大値と最小値の差が少ない。図６（ｃ）は、画素値の最大値突出判定により相関値算出領域が低ピークであると判定される場合を示す。図６（ａ）に比べて、図６（ｃ）では画素値の最大値と平均値の差分と、画素値の最大値と最小値の差分の除算結果が小さい。図６（ｄ）は、繰り返しパターン判定により相関値算出領域が繰り返しパターンであると判定される場合を示す。図６（ａ）に比べて、図６（ｄ）では画素値の最大値と極大値の差分が小さい。
【００４９】
Ｓ４０８で、精度判定部２０４は、低コントラスト判定、最大値突出判定、及び繰り返しパターン判定の判定結果を含むベクトル情報２５６をＳＲＡＭ２０６に出力する。ベクトル情報２５６は、ベクトルデータ２４４としてＳＲＡＭ２０６に格納される。
【００５０】
Ｓ４０９で、追跡先特徴点決定部２０５は、前フレームの追跡先特徴点２５７及びベクトルデータ２４４に基づいて、次フレームのテンプレートマッチング処理に用いるための、現フレームの追跡先特徴点を算出する。ここで算出された追跡先特徴点は、次にＳ４０５においてテンプレートマッチング処理が実行される際に、前フレームの追跡先特徴点２５７として使用される。なお、Ｓ４０９の処理の詳細については、図７を参照して後述する。
【００５１】
以上の処理により、現フレームのテンプレートマッチング処理（即ち、現フレームにおいて前フレームの特徴点を追跡する処理）が完了する。その後、画像処理部１０４に次フレームの撮影画像が入力されると、次フレームの画像を現フレームの画像として、Ｓ４０１〜Ｓ４０９の処理が再び実行される。従って、本実施形態では、基準となる所定の撮影画像（例えば、最初の撮影画像）の後に撮影される１以上の撮影画像にわたって特徴点を追跡する処理が行われる。また、図４の特徴点追跡処理は、動きベクトル検出部１２１〜１２２により処理領域ごとに独立して行われる。従って、本実施形態では、各処理領域の内部で、特徴点を追跡する処理が行われる。
【００５２】
次に、図７を参照して、Ｓ４０９の処理の詳細について説明する。Ｓ７０１で、追跡先特徴点決定部２０５は、ＳＲＡＭ２０６からベクトルデータ２４４を取得する。そして、追跡先特徴点決定部２０５は、前フレームの追跡先特徴点２５７の座標に対してベクトルデータ２４４が示すベクトル値を加算することにより、現フレームの追跡先特徴点の座標を算出する。なお、Ｓ７０１及び続くＳ７０２〜Ｓ７０５の処理は、追跡先特徴点ごとに実行される。
【００５３】
Ｓ７０２で、追跡先特徴点決定部２０５は、ベクトルデータ２４４に含まれる判定結果（Ｓ４０７の判定結果）に基づき、Ｓ７０１で算出された追跡先特徴点が有効であるか否か（次フレームのテンプレートマッチング処理に使用可能であるか否か）を判定する。低コントラスト判定により相関値算出領域が低コントラストであると判定された場合、追跡先特徴点は有効でないと判定される。また、最大値突出判定で相関値算出領域が低ピークであると判定された場合、及び、繰り返しパターン判定で相関値算出領域が繰り返しパターンであると判定された場合にも、追跡先特徴点は有効でないと判定される。それ以外の場合には、追跡先特徴点は有効であると判定される。追跡先特徴点が有効である場合、処理はＳ７０３に進み、追跡先特徴点が有効でない場合、処理はＳ７０４に進む。
【００５４】
Ｓ７０３で、追跡先特徴点決定部２０５は、Ｓ７０１で算出された追跡先特徴点が処理領域の内部に含まれるか否かを判定する。Ｓ７０１で算出された追跡先特徴点が処理領域の内部に含まれる場合、処理はＳ７０５に進み、そうでない場合、処理はＳ７０４に進む。なお、テンプレートマッチング処理（図４のＳ４０６）において相関値算出領域が常に処理領域の内部に設定される場合は、追跡先特徴点も常に処理領域の内部に含まれることになる。
【００５５】
Ｓ７０４で、追跡先特徴点決定部２０５は、Ｓ７０１で算出された追跡先特徴点を、図４のＳ４０４で算出された現フレームの新規特徴点で置き換える。即ち、Ｓ７０２又はＳ７０３で「ＮＯ」と判定された場合、追跡先特徴点決定部２０５は、特徴点の追跡に失敗したと判断し、前フレームの追跡先特徴点を代替する新たな特徴点を現フレームにおいて選択する。この時、追跡先特徴点決定部２０５は、Ｓ４０４で算出された複数の新規特徴点のうち、追跡に失敗した特徴点が最初に算出された特徴点抽出グリッドにおいて算出された新規特徴点を、追跡に失敗した特徴点を代替する新たな特徴点として選択する。例えば、最初の撮影画像の特定の特徴点抽出グリッドにおいて算出された特定の特徴点について、後続の特定の撮影画像において追跡に失敗した場合を考える。この場合、この特定の撮影画像を現フレームとして用いるＳ４０４の処理によりこの特定の特徴点抽出グリッドにおいて算出された新規特徴点が、追跡に失敗したこの特定の特徴点を代替する。
【００５６】
Ｓ７０５で、追跡先特徴点決定部２０５は、全ての追跡先特徴点が処理されたか否かを判定する。全ての追跡先特徴点が処理された場合、本フローチャートの処理は完了する。未処理の追跡先特徴点が残っている場合、次の未処理の追跡先特徴点について、同様にＳ７０１以降の処理が行われる。
【００５７】
次に、図８乃至図１０を参照して、Ｓ４００の処理の詳細について説明する。図８は、デジタルカメラ１００を横方向にして撮影を行う場合の処理領域の設定例を示す図である。図９は、デジタルカメラ１００を縦方向にして撮影を行う場合の処理領域の設定例を示す図である。図１０は、Ｓ４００の処理の詳細を示すフローチャートである。
【００５８】
図８（ａ）に示すように、デジタルカメラ１００を横位置に構えたときに処理領域を上下に分割する分割方式を分割方式Ａと呼び、図８（ｂ）に示すように、デジタルカメラ１００を横位置に構えたときに処理領域を左右に分割する分割方式を分割方式Ｂと呼ぶ。図９（ａ）に示すように、デジタルカメラ１００を縦位置に構えたときに処理領域を上下に分割する分割方式は、図８（ｂ）と同様に分割方式Ｂと呼ぶ。図９（ｂ）に示すように、デジタルカメラ１００を縦位置に構えたときに処理領域を左右に分割する分割方式は、図８（ａ）と同様に分割方式Ａと呼ぶ。
【００５９】
Ｓ１００２で、ＣＰＵ１１２は、ジャイロセンサ１１６からの情報に基づいてデジタルカメラ１００の向きが横位置であるか否かを判定する。横位置の場合、処理はＳ１００３に進み、そうでない場合、処理はＳ１００４に進む。なお、デジタルカメラ１００が斜めを向いている場合などには、ＣＰＵ１１２は、デジタルカメラ１００の向きが横方向に近いか縦方向に近いかを判定して、横方向に近い場合にデジタルカメラ１００の向きが横位置であると判定する。
【００６０】
Ｓ１００３で、ＣＰＵ１１２は、被写体検出部１２３からの情報に基づいて被写体の移動方向が横向きであるか否かを判定する。横向きの場合、処理はＳ１００５に進み、そうでない場合、処理はＳ１００６に進む。なお、被写体の移動方向が斜め方向の場合には、ＣＰＵ１１２は、横向きの移動成分が多いか、縦向きの移動成分が大きいかを判定して、横向きの移動成分が大きい場合に被写体の移動方向が横向きであると判定する。
【００６１】
Ｓ１００４で、ＣＰＵ１１２は、被写体検出部１２３からの情報に基づいて被写体の移動方向が横向きであるか否かを判定する。この判定処理は、Ｓ１００３の判定処理とほぼ同じであるが、被写体の移動方向の縦横は重力方向を基準に定められる。
【００６２】
Ｓ１００５で、ＣＰＵ１１２は、動きベクトル検出部１２１〜１２２の分割方向設定部２６０を制御することにより、分割方式Ａにより処理領域を設定する。例えば、図８（ａ）は、処理がＳ１００３からＳ１００５へ遷移する場合の例を示す。図８（ａ）のように画面８０５に対して被写体８０４が矢印８０３に示される横向きに移動していた場合は、処理領域８０１及び処理領域８０２が縦方向に並ぶように設定される。また、図９（ｂ）は、処理がＳ１００４からＳ１００５へ遷移する場合の例を示す。図９（ｂ）のように、画面９１５に対して被写体９１４が矢印９１３に示される縦向きに移動していた場合は、処理領域９１１及び処理領域９１２が横方向に並ぶように設定される。
【００６３】
Ｓ１００６で、ＣＰＵ１１２は、動きベクトル検出部１２１〜１２２の分割方向設定部２６０を制御することにより、分割方式Ｂにより処理領域を設定する。例えば、図８（ｂ）は、処理がＳ１００３からＳ１００６へ遷移する場合の例を示す。図８（ｂ）のように画面８１５に対して被写体８１４が矢印８１３に示される縦向きに移動していた場合は、処理領域８１１及び処理領域８１２が横方向に並ぶように設定される。また、図９（ａ）は、処理がＳ１００４からＳ１００６へ遷移する場合の例を示す。図９（ａ）のように、画面９０５に対して被写体９０４が矢印９０３に示される横向きに移動していた場合は、処理領域９０１及び処理領域９０２が縦方向に並ぶように設定される。
【００６４】
Ｓ１００５又はＳ１００６の処理が行われた後、動きベクトル検出部１２１〜１２２がそれぞれ独立して、設定された２つの処理領域のうちの１つについて図４のＳ４０１以降の処理を実行する。なお、図８及び図９においては、２つの処理領域が隣接し、その間に重複領域は存在しないように示されている。しかしながら、２つの処理領域は、被写体の移動方向と異なる方向に並んでいる限り、隣接せずに離れていてもよいし、図１５の重複領域１５００のような重複領域を含んでいてもよい。また、設定される処理領域の数は、２つに限定されない。デジタルカメラ１００がより多くの処理領域を独立して処理可能な場合は、デジタルカメラ１００は、処理能力に応じてより多くの処理領域を設定してもよい。
【００６５】
以上説明したように、第１の実施形態によれば、デジタルカメラ１００は、被写体の移動方向を判定し、撮影範囲の中に、被写体の移動方向と異なる方向に並ぶ複数の処理領域を設定する。これにより、特徴点が他の処理領域の方向へ移動して追跡に失敗する（消失する）可能性を低減することが可能となる。
【００６６】
なお、上の説明では、デジタルカメラ１００は、デジタルカメラ１００の位置情報（横位置か縦位置か）と被写体の動き情報（横方向か縦方向か）に基づいて分割方式を決定するものとした。しかしながら、デジタルカメラ１００は、デジタルカメラ１００の移動方向情報、複数個の特徴点の移動方向を平均した情報、複数の動きベクトルを平均したベクトル情報なども参照して分割方式を決定してもよい。
【００６７】
デジタルカメラ１００の移動方向情報が横方向の場合には、特徴点の移動方向も横方向となる可能性が高まる。そのため、デジタルカメラ１００は、デジタルカメラ１００が横位置の場合には分割方式Ａ、デジタルカメラ１００が縦位置の場合には分割方式Ｂを選択する。また、デジタルカメラ１００の移動方向情報が縦方向の場合には、特徴点の移動方向も縦方向となる可能性が高まる。そのため、デジタルカメラ１００は、デジタルカメラ１００が横位置の場合には分割方式Ｂ、デジタルカメラ１００が縦位置の場合には分割方式Ａを選択する。デジタルカメラ１００の移動方向が斜めの場合は、デジタルカメラ１００は、横方向の移動成分が縦方向の移動成分より大きい場合は、横方向と判定する。
【００６８】
複数個の特徴点の移動方向を平均した情報が横方向の場合には、デジタルカメラ１００は、デジタルカメラ１００が横位置の場合には分割方式Ａ、デジタルカメラ１００が縦位置の場合には分割方式Ｂを選択する。複数個の特徴点の移動方向を平均した情報が縦方向の場合には、デジタルカメラ１００は、デジタルカメラ１００が横位置の場合には分割方式Ｂ、デジタルカメラ１００が縦位置の場合には分割方式Ａを選択する。複数個の特徴点の移動方向を平均した情報が斜め方向の場合は、デジタルカメラ１００は、横方向の移動成分が縦方向の移動成分より大きい場合は、横方向と判定する。
【００６９】
複数の動きベクトルを平均したベクトル情報が横方向の場合には、特徴点の移動方向も横方向となる可能性が高まる。そのため、デジタルカメラ１００は、デジタルカメラ１００が横位置の場合には分割方式Ａ、デジタルカメラ１００が縦位置の場合には分割方式Ｂを選択する。複数の動きベクトルを平均したベクトル情報が縦方向の場合には、特徴点の移動方向も縦方向となる可能性が高まる。どのため、デジタルカメラ１００は、デジタルカメラ１００が横位置の場合には分割方式Ｂ、デジタルカメラ１００が縦位置の場合には分割方式Ａを選択する。複数の動きベクトルを平均したベクトル情報が斜め方向の場合は、デジタルカメラ１００は、横方向の移動成分が縦方向の移動成分より大きい場合は、横方向と判定する。
【００７０】
［第２の実施形態］
第２の実施形態では、処理領域の分割方向を決定する処理（図４のＳ４００）の他の例について説明する。本実施形態において、デジタルカメラ１００の基本的な構成は、第１の実施形態と同様である（図１及び図２参照）。以下、主に第１の実施形態と異なる点について説明する。
【００７１】
図１１は、第２の実施形態に係る処理領域の設定例を示す図である。図１１（ａ）は、第１の実施形態の分割方式Ａに相当し、画面１１００の上半分が動きベクトル検出部１２１により処理され、下半分が動きベクトル検出部１２２により処理される。動きベクトル検出部１２１では、特徴点１１０１〜１１１２を中心として、１２個のテンプレートマッチング処理が実施される。動きベクトル検出部１２２では、特徴点１１２１〜１１３２を中心として、１２個のテンプレートマッチング処理が実施される。
【００７２】
図１１（ｂ）は、第１の実施形態の分割方式Ｂに相当し、画面１１００の左半分が動きベクトル検出部１２１により処理され、右半分が動きベクトル検出部１２２により処理される。動きベクトル検出部１２１では、特徴点１１５１〜１１６２を中心として、１２個のテンプレートマッチング処理が実施される。動きベクトル検出部１２２では、特徴点１１７１〜１１８２を中心として、１２個のテンプレートマッチング処理が実施される。
【００７３】
図１２は、第２の実施形態に係るテンプレートマッチング処理のタイミングチャートである。図１２（ａ）は、図１１（ａ）に示す分割方式Ａに対応し、図１２（ｂ）は、図１１（ｂ）に示す分割方式Ｂに対応する。
【００７４】
図１２（ａ）において、映像の１フレーム（１Ｖ）期間に、ＤＲＡＭ１０７に入力画像２４１が画像の上端部から入力される。入力画像２４１の入力が開始すると、画像の上半分を処理する動きベクトル検出部１２１において、ＲＤＤＭＡＣ２２１が入力画像２４１を読み出し、テンプレートマッチング画像生成部２０１がテンプレートマッチング画像２４２を生成する。テンプレートマッチング画像２４２は、ＷＲＤＭＡＣ２３１によりＤＲＡＭ１０７に書き込まれる。続いて、ＲＤＤＭＡＣ２２２が、特徴点１１０１〜１１１２を中心とした画像領域を読み出し、テンプレートマッチング処理が実線で囲まれる期間１〜１２の間に実施される。
【００７５】
次に、ＤＲＡＭ１０７に対して入力画像２４１の下半分の入力が開始すると、画像の下半分を処理する動きベクトル検出部１２２において、動きベクトル検出部１２１と同様の処理が行われる。動きベクトル検出部１２２において、ＲＤＤＭＡＣ２２２が特徴点１１２１〜１１３２を中心とした画像領域を読み出し、テンプレートマッチング処理が破線で囲まれる期間１３〜２４の間に実施される。
【００７６】
なお、テンプレートマッチング処理の所要時間は、サーチ領域が大きい程、マッチング回数が多くなるため長くなる。そのため、図１２（ａ）のように１Ｖ期間内にテンプレートマッチング処理が完了しなくなる場合がある。特に、下半分の処理を行う動きベクトル検出部１２２は、入力画像２４１の下半分が入力されるまで処理開始が待たされるため、１Ｖ期間内にテンプレートマッチング処理が完了しない場合が増える。
【００７７】
一方、図１２（ｂ）に示すように、分割方式Ｂの場合は、動きベクトル検出部１２１及び動きベクトル検出部１２２は共に、ＤＲＡＭ１０７に入力画像２４１が入力され始めてからすぐにテンプレートマッチング処理を開始できる。動きベクトル検出部１２１において、ＲＤＤＭＡＣ２２２が特徴点１１５１〜１１６２を中心とした画像領域を読み出し、テンプレートマッチング処理が実線で囲まれる期間１〜１２の間に実施される。動きベクトル検出部１２２において、ＲＤＤＭＡＣ２２２が特徴点１１７１〜１１８２を中心とした画像領域を読み出し、テンプレートマッチング処理が破線で囲まれる期間１３〜２４の間に実施される。このように、分割方式Ｂの場合は、２個の動きベクトル検出部が１Ｖ期間の始めのタイミングから処理を開始することができる。そのため、分割方式Ａでは１Ｖ期間内に処理が完了しなかったサーチ領域サイズの場合でも、１Ｖ期間内に処理を完了させることが可能となる場合がある。
【００７８】
図１３は、第２の実施形態に係る分割方向決定処理（図４のＳ４００）の詳細を示すフローチャートである。
【００７９】
Ｓ１３０１で、ＣＰＵ１１２は、被写体検出部１２３からの情報に基づいて被写体の移動量を認識し、被写体の移動量に基づいてテンプレートマッチング処理のサーチ領域サイズを判定する。被写体の移動量が大きいほど動きベクトル値が大きくなるため、必要なサーチ範囲を確保するためにサーチ領域サイズも大きくなる。
【００８０】
Ｓ１３０２で、ＣＰＵ１１２は、分割方式Ａの場合（複数の処理領域が撮像素子１０２の上下方向に並ぶ場合）のテンプレートマッチング処理の所要時間を算出する。図１２（ａ）において、テンプレートマッチング処理の期間１〜２４はサーチ領域サイズに応じて変化する。また、図１２（ａ）では、期間１〜１２は連続するように示されているが、各回のテンプレートマッチング処理が必要なテンプレート画像の生成前に完了する場合、各回のテンプレートマッチング処理の間にテンプレートマッチング処理が行われない期間が生じる。これは、期間１３〜２４についても同様である。
【００８１】
Ｓ１３０３で、ＣＰＵ１１２は、Ｓ１３０２において算出した所要時間に基づき、１Ｖ期間内（動画撮影の１フレーム期間内）にテンプレートマッチング処理を完了できるか否かを判定する。１Ｖ期間内にテンプレートマッチング処理を完了できる場合、処理はＳ１００５に進み、そうでない場合、処理はＳ１００６に進む。
【００８２】
以上説明したように、第２の実施形態によれば、デジタルカメラ１００は、分割方式Ａにおいて１Ｖ期間内にテンプレートマッチング処理を完了できるか否かを判定する。分割方式Ａにおいて１Ｖ期間内にテンプレートマッチング処理を完了できない場合、デジタルカメラ１００は、被写体の移動方向に関わらず、複数の処理領域が撮像素子１０２の左右方向に並ぶ分割方式Ｂを選択する。これにより、１Ｖ期間内にテンプレートマッチング処理を完了できない可能性を低減することが可能となる。
【００８３】
なお、サーチ領域サイズが大きい場合、分割方式Ｂにおいても１Ｖ期間内にテンプレートマッチング処理を完了できない可能性がある。この場合、デジタルカメラ１００は、例えば図１２（ｂ）の期間１２及び期間２４におけるテンプレートマッチング処理を省略することなどにより、１Ｖ期間内にテンプレートマッチング処理を完了させる。
【００８４】
［第３の実施形態］
第３の実施形態では、追跡先特徴点算出処理（図４のＳ４０９）における特徴点補填処理（図７のＳ７０４）の変形例について説明する。本実施形態において、デジタルカメラ１００の基本的な構成は、第１の実施形態と同様である（図１及び図２参照）。以下、主に第１の実施形態と異なる点について説明する。
【００８５】
図１６は、第３の実施形態に係る追跡先特徴点算出処理（図４のＳ４０９）の詳細を示すフローチャートである。図１６では、第１の実施形態の場合（図７）と比べて、Ｓ７０４がＳ１６０１に置き換わっている。
【００８６】
Ｓ１６０１で、追跡先特徴点決定部２０５は、Ｓ７０１で算出された追跡先特徴点を、図４のＳ４０４で算出された現フレームの新規特徴点で置き換える。即ち、Ｓ７０２又はＳ７０３で「ＮＯ」と判定された場合、追跡先特徴点決定部２０５は、特徴点の追跡に失敗したと判断し、前フレームの追跡先特徴点を代替する新たな特徴点を現フレームにおいて選択する。この時、追跡先特徴点決定部２０５は、Ｓ４０４で算出された複数の新規特徴点のうち、他の処理領域の隣にある又は少なくとも一部が重複する特徴点抽出グリッド（補填優先グリッド）において算出された新規特徴点を優先的に用いる。また、補填優先グリッドが複数存在する場合、追跡先特徴点決定部２０５は、複数の補填優先グリッドにおいて算出された新規特徴点のうち、特徴値Ｐｃが最大の新規特徴点を、前フレームの追跡先特徴点を代替する新たな特徴点を現フレームにおいて選択する。これにより、追跡に失敗した特徴点との関連性が高い可能性の高い新規特徴点を選択することが可能となり、動きベクトルの検出精度を向上させることが可能となる。
【００８７】
図１７（ａ）は、分割方式Ａにおける新規特徴点の選択方法を説明する図である。画像領域１７００に対し、動きベクトル検出部１２１は処理領域１７０１を処理し、動きベクトル検出部１２２は処理領域１７０２を処理する。動きベクトル検出部１２１は、処理領域１７０１に含まれる特徴点抽出グリッドのうち、処理領域１７０２と部分的に重複する下端グリッド群１７０３を、補填優先グリッドとして設定する。動きベクトル検出部１２２は、処理領域１７０２に含まれる特徴点抽出グリッドのうち、処理領域１７０１と部分的に重複する上端グリッド群１７０４を、補填優先グリッドとして設定する。その結果、各補填優先グリッドで算出される新規特徴点１７０５−１〜１７０５−４及び１７０６−１〜１７０６−４が、Ｓ１６０１において補填のために優先的に選択される。
【００８８】
図１７（ｂ）は、分割方式Ｂにおける新規特徴点の選択方法を説明する図である。画像領域１７００に対し、動きベクトル検出部１２１は処理領域１７０７を処理し、動きベクトル検出部１２２は処理領域１７０８を処理する。動きベクトル検出部１２１は、処理領域１７０７に含まれる特徴点抽出グリッドのうち、処理領域１７０８と部分的に重複する右端グリッド群１７０９を、補填優先グリッドとして設定する。動きベクトル検出部１２２は、処理領域１７０８に含まれる特徴点抽出グリッドのうち、処理領域１７０７と部分的に重複する左端グリッド群１７１０を、補填優先グリッドとして設定する。その結果、各補填優先グリッドで算出される新規特徴点１７０９−１〜１７０９−４及び１７１０−１〜１７１０−４が、Ｓ１６０１において補填のために優先的に選択される。
【００８９】
なお、第３の実施形態においては、設定される複数の処理領域は、必ずしも被写体の移動方向と異なる方向に並ぶ必要はない。
【００９０】
また、上の説明では、デジタルカメラ１００が２個の動きベクトル検出部を備えるものとした。しかしながら、本実施形態は、デジタルカメラ１００が３個以上の動きベクトル検出部を備える場合に対しても適用可能である。図１８は、デジタルカメラ１００が４個の動きベクトル検出部を備え、４つの処理領域を設定する場合を説明する図である。図１８に示すように、４つの処理領域が設定される場合も、他の処理領域と部分的に重複する特徴点抽出グリッドを補填優先グリッドとして設定することで、同様の効果を得ることが可能となる。図１８の例では、第１の動きベクトル検出部の処理領域１８０１において、補填優先グリッドは右端グリッド群１８０１−１と下端グリッド群１８０１−２である。第２の動きベクトル検出部の処理領域１８０２において、補填優先グリッドは左端グリッド群１８０２−１と下端グリッド群１８０２−２である。第３の動きベクトル検出部の処理領域１８０３において、補填優先グリッドは上端グリッド群１８０３−１と右端グリッド群１８０３−２である。第４の動きベクトル検出部の処理領域１８０４において、補填優先グリッドは上端グリッド群１８０４−１と左端グリッド群１８０４−２である。
【００９１】
また、デジタルカメラ１００は、被写体検出部１２３を用いて被写体領域（大きさ）を算出し、他の処理領域の隣にある又は少なくとも一部が重複する特徴点抽出グリッドのうち、被写体が入り込むグリッドに限定して補填優先グリッドを設定してもよい。図１９は、デジタルカメラ１００が被写体が入り込むグリッドに限定して補填優先グリッドを設定する場合を説明する図である。図１９において、動きベクトル検出部１２１の処理領域１９０１から動きベクトル検出部１２２の処理領域１９０２に向かって被写体１９０４が矢印１９０３の方向に移動している。デジタルカメラ１００は、被写体検出部１２３を用いて被写体１９０４の被写体領域を算出する。そして、デジタルカメラ１００は、他の処理領域の隣にある又は少なくとも一部が重複する特徴点抽出グリッド群１９００のうち、被写体が入り込む特徴点抽出グリッド１９１０及び特徴点抽出グリッド１９１１を補填優先グリッドとして設定する。これにより、被写体１９０４で検出される優良な特徴点が処理領域の境界で消失することなく追跡できる確率が高まり、動きベクトル検出性能を向上させることが可能となる。
【００９２】
また、上の説明では、デジタルカメラ１００は動きベクトル検出を画面全体で行うものとした。しかしながら、デジタルカメラ１００は、被写体検出部１２３で検出された被写体領域に限定して、動きベクトル検出を行ってもよい。図２０（ａ）は、デジタルカメラ１００が動きベクトル検出を画面全体で行う場合を示し、図２０（ｂ）は、デジタルカメラ１００が被写体領域に限定して動きベクトル検出を行う場合を示す。図２０（ｂ）では、被写体領域に特徴点抽出グリッドが設定されており、被写体が存在しない領域は周辺グリッドになっている。デジタルカメラ１００は、図２０（ｂ）の配置の場合のみ、上で説明した補填優先グリッドを設定する。図２０（ｂ）の例では、補填優先グリッド２０００が、動きベクトル検出部１２１の処理領域と動きベクトル検出部１２２の処理領域とが部分的に重複している領域に配置されている。このように、被写体領域に限定して動きベクトル検出及び補填優先グリッドの配置を行うことで、被写体で検出される優良な特徴点が処理領域の境界で消失することなく追跡できる確率が高まり、動きベクトル検出性能を向上させることが可能となる。一方、図２０（ａ）では、被写体領域に限定せず、広域な範囲で特徴点の補填を行うことで、画面全体の動きベクトル値を取得できる。このように、ユースケースに応じて、補填優先グリッドの配置を使い分けることが可能である。
【００９３】
［その他の実施形態］
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００９４】
１００…デジタルカメラ、１０２…撮像素子、１０４…画像処理部、１０７…ＤＲＡＭ、１０９…ＲＯＭ、１１１…表示部、１１２…ＣＰＵ、１２１…動きベクトル検出部、１２２…動きベクトル検出部、１２３…被写体検出部
【図１】
2019175112.tif 000004
【図２】
2019175112.tif 000005
【図３】
2019175112.tif 000006
【図４】
2019175112.tif 000007
【図５】
2019175112.tif 000008
【図６】
2019175112.tif 000009
【図７】
2019175112.tif 000010
【図８】
2019175112.tif 000011
【図９】
2019175112.tif 000012
【図１０】
2019175112.tif 000013
【図１１】
2019175112.tif 000014
【図１２】
2019175112.tif 000015
【図１３】
2019175112.tif 000016
【図１４】
2019175112.tif 000017
【図１５】
2019175112.tif 000018
【図１６】
2019175112.tif 000019
【図１７】
2019175112.tif 000020
【図１８】
2019175112.tif 000021
【図１９】
2019175112.tif 000022
【図２０】
2019175112.tif 000023