(57)【要約】【課題】  分割領域毎に行う特徴点検出処理の負荷を軽減すること。【解決手段】画像の特徴点を検出する画像処理装置は、画像を複数に分割した分割領域ごとに実行する特徴点検出処理を制御するための検出パラメータをユーザー設定情報に従って設定する設定部と、検出パラメータを用いて分割領域内の特徴点を検出する検出部と、を備える。【選択図】  図１
2014229030.tif 000002
【特許請求の範囲】
【請求項１】
画像の特徴点を検出する画像処理装置であって、
画像を複数に分割した分割領域ごとに実行する特徴点の検出処理を制御するための検出パラメータをユーザー設定情報に従って設定する設定手段と、
前記検出パラメータを用いて分割領域内の特徴点を検出する検出手段と、
を備えることを特徴とする画像処理装置。
【請求項２】
前記設定手段は、前記検出パラメータとして、分割領域ごとに検出する特徴点の上限の個数を設定し、
前記検出手段は、前記上限の個数に従って前記分割領域内の特徴点を検出することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記設定手段は、分割領域ごとに検出する特徴点の個数を調整するための閾値を前記検出パラメータとして設定し、
前記検出手段は、前記閾値と分割領域内の画素の特徴点のスコアとの比較結果に応じて、前記分割領域内の特徴点を検出する
ことを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記ユーザー設定情報により、前記画像の周辺より中央に位置する分割領域を優先することが指定される場合に、
前記設定手段は、前記画像の中央に位置する分割領域の特徴点の個数が、前記画像の周辺に位置する分割領域の特徴点の個数よりも多くなるように前記検出パラメータを設定する
ことを特徴とする請求項１乃至３のいずれか１項に記載の画像処理装置。
【請求項５】
前記ユーザー設定情報により、前記画像の中央より周辺に位置する分割領域を優先することが指定される場合に、
前記設定手段は、前記画像の周辺に位置する分割領域の特徴点の個数が、前記画像の中央に位置する分割領域の特徴点の個数よりも多くなるように前記検出パラメータを設定する
ことを特徴とする請求項１乃至３のいずれか１項に記載の画像処理装置。
【請求項６】
前記設定手段は、撮影された前記画像の撮影シーンが、前記画像に被写体を含む撮影シーンであるか、または、前記画像に被写体を含まない撮影シーンであるか、を示すシーンタイプ情報を取得し、
前記ユーザー設定情報により、前記画像に被写体を含む撮影シーンを示すシーンタイプ情報に従って特徴点を検出することが指定されている場合に、
前記設定手段は、前記シーンタイプ情報に従って前記画像に被写体を含む優先領域と、前記被写体を含まない非優先領域と、を前記画像に設定し、
前記設定手段は、前記優先領域の特徴点の検出数が、前記非優先領域の特徴点の検出数よりも多くなるように前記検出パラメータを設定し、
前記ユーザー設定情報により、前記画像に被写体を含まない撮影シーンを示すシーンタイプ情報に従って特徴点を検出することが指定されている場合に、
前記設定手段は、前記シーンタイプ情報に従って全ての分割領域を優先領域とし、それぞれの分割領域の面積に応じて検出する特徴点の個数を配分するように前記検出パラメータを設定する
ことを特徴とする請求項１乃至３のいずれか１項に記載の画像処理装置。
【請求項７】
前記設定手段は、前記画像のフォーカスエリアを示すフォーカス情報を取得し、
前記ユーザー設定情報により、前記フォーカス情報に従って特徴点を検出することが指定されている場合に、
前記設定手段は、前記フォーカス情報に従って前記フォーカスエリアとして特定される位置を含む分割領域を優先領域とし、前記位置を含まない分割領域を非優先領域とし、
前記設定手段は、前記優先領域の特徴点の検出数が、前記非優先領域の特徴点の検出数よりも多くなるように前記検出パラメータを設定する
ことを特徴とする請求項１乃至３のいずれか１項に記載の画像処理装置。
【請求項８】
前記複数に分割した分割領域から少なくとも一つの分割領域を選択する選択手段を更に備え、
前記設定手段は、
前記選択された分割領域を、選択されていない分割領域よりも優先する優先領域とし、前記選択されていない分割領域を非優先領域として設定し、
前記優先領域の特徴点の検出数が、前記非優先領域の特徴点の検出数よりも多くなるように前記検出パラメータを設定することを特徴とする請求項１乃至７のいずれか１項に記載の画像処理装置。
【請求項９】
画像の特徴点を検出する画像処理装置の画像処理方法であって、
前記画像処理装置の設定手段が、画像を複数に分割した分割領域ごとに実行する特徴点の検出処理を制御するための検出パラメータをユーザー設定情報に従って設定する設定工程と、
前記画像処理装置の検出手段が、前記検出パラメータを用いて分割領域内の特徴点を検出する検出工程と、
を有することを特徴とする画像処理方法。
【請求項１０】
前記設定工程は、分割領域ごとに検出する特徴点の上限の個数を設定し、
前記検出工程は、前記上限の個数に従って前記分割領域内の特徴点を検出することを特徴とする請求項９に記載の画像処理方法。
【請求項１１】
前記設定工程は、前記検出パラメータとして、分割領域ごとに検出する特徴点の個数を調整するための閾値を前記検出パラメータとして設定し、
前記検出工程は、前記閾値と分割領域内の画素の特徴点のスコアとの比較結果に応じて、前記分割領域内の特徴点を検出する
ことを特徴とする請求項９または１０に記載の画像処理方法。
【請求項１２】
前記ユーザー設定情報により、前記画像の周辺より中央に位置する分割領域を優先することが指定される場合に、
前記設定工程は、前記画像の中央に位置する分割領域の特徴点の個数が、前記画像の周辺に位置する分割領域の特徴点の個数よりも多くなるように前記検出パラメータを設定する
ことを特徴とする請求項９乃至１１のいずれか１項に記載の画像処理方法。
【請求項１３】
前記ユーザー設定情報により、前記画像の中央より周辺に位置する分割領域を優先することが指定される場合に、
前記設定工程は、前記画像の周辺に位置する分割領域の特徴点の個数が、前記画像の中央に位置する分割領域の特徴点の個数よりも多くなるように前記検出パラメータを設定する
ことを特徴とする請求項９乃至１１のいずれか１項に記載の画像処理方法。
【請求項１４】
前記設定工程は、撮影された前記画像の撮影シーンが、前記画像に被写体を含む撮影シーンであるか、または、前記画像に被写体を含まない撮影シーンであるか、を示すシーンタイプ情報を取得し、
前記ユーザー設定情報により、前記画像に被写体を含む撮影シーンを示すシーンタイプ情報に従って特徴点を検出することが指定されている場合に、
前記設定工程は、前記シーンタイプ情報に従って前記画像に被写体を含む優先領域と、前記被写体を含まない非優先領域と、を前記画像に設定し、
前記設定工程は、前記優先領域の特徴点の検出数が、前記非優先領域の特徴点の検出数よりも多くなるように前記検出パラメータを設定し、
前記ユーザー設定情報により、前記画像に被写体を含まない撮影シーンを示すシーンタイプ情報に従って特徴点を検出することが指定されている場合に、
前記設定工程は、前記シーンタイプ情報に従って全ての分割領域を優先領域とし、それぞれの分割領域の面積に応じて検出する特徴点の個数を配分するように前記検出パラメータを設定する
ことを特徴とする請求項９乃至１１のいずれか１項に記載の画像処理方法。
【請求項１５】
前記設定工程は、前記画像のフォーカスエリアを示すフォーカス情報を取得し、
前記ユーザー設定情報により、前記フォーカス情報に従って特徴点を検出することが指定されている場合に、
前記設定工程は、前記フォーカス情報に従って前記フォーカスエリアとして特定される位置を含む分割領域を優先領域とし、前記位置を含まない分割領域を非優先領域とし、
前記設定工程は、前記優先領域の特徴点の検出数が、前記非優先領域の特徴点の検出数よりも多くなるように前記検出パラメータを設定する
ことを特徴とする請求項９乃至１１のいずれか１項に記載の画像処理方法。
【請求項１６】
前記画像処理装置の選択手段が、前記複数に分割した分割領域から少なくとも一つの分割領域を選択する選択工程を更に有し、
前記設定工程は、
前記選択された分割領域を、選択されていない分割領域よりも優先する優先領域とし、前記選択されていない分割領域を非優先領域として設定し、
前記優先領域の特徴点の検出数が、前記非優先領域の特徴点の検出数よりも多くなるように前記検出パラメータを設定する
ことを特徴とする請求項９乃至１５のいずれか１項に記載の画像処理方法。
【請求項１７】
コンピュータを、請求項１乃至８のいずれか１項に記載の画像処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像の特徴点を検出する画像処理装置、画像処理方法およびプログラムに関するものである。
【背景技術】
【０００２】
コンピュータビジョン分野には、特徴点検出（もしくは、特徴点抽出）と呼ばれる処理がある。非特許文献１によれば、特徴点検出の方式には、ハリス作用素など、様々な方式が存在する。
【０００３】
特徴点検出の応用としては、例えば、連続する画像から特徴点を検出し、画像間で検出した特徴点を対応付けた場合、その相対位置は特徴点の移動量とみなすことができる。この移動量から、特徴点が含まれる被写体や画像全体の動きを求めることが可能となる。
【０００４】
例えば、画像に手ブレによる動きが含まれている場合、移動量を補正する形で、幾何変換を行えば、手ブレ補正処理が行える。また、左右２つの画像から構成されるステレオ画像から特徴点を検出し、画像間で対応付けられた特徴点の相対位置からは、三角測量の原理を使って、特徴点の奥行きを推定することができる。つまり、ステレオ画像から３次元画像を構成することができる。このように、特徴点検出の産業上の利用範囲は広い。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】電子情報通信学会誌  ８７（１２），１０４３−１０４８，２００４−１２−０１
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特徴点検出処理は、画像全画素に対し、特徴点であるか否かの判定処理を行うため、負荷の重い処理である。また、検出する特徴点数が多いと、対応付けなどの後工程の処理負荷も高くなる。一方、特徴点検出数を安易に減らすと対応付けなどの後工程で必要な数の特徴点数が得られず、後工程での処理精度が落ちるという問題があった。
【０００７】
上記の課題を鑑み、本発明は、分割領域毎に行う特徴点検出処理の負荷を軽減することが可能な画像処理技術の提供を目的とする。
【課題を解決するための手段】
【０００８】
上記の目的を達成する本発明の一つの側面に係る画像処理装置は、画像の特徴点を検出する画像処理装置であって、
画像を複数に分割した分割領域ごとに実行する特徴点の検出処理を制御するための検出パラメータをユーザー設定情報に従って設定する設定手段と、
前記検出パラメータを用いて分割領域内の特徴点を検出する検出手段と、
を備えることを特徴とする。
【発明の効果】
【０００９】
本発明によれば、分割領域毎に行う特徴点検出処理の負荷を軽減することが可能になる。
【図面の簡単な説明】
【００１０】
【図１】領域分割を用いた特徴点検出方法を説明する図。
【図２】第１実施形態の分割領域単位の特徴点検出処理を説明する図。
【図３】第２実施形態の分割領域単位の特徴点検出処理を説明する図。
【図４】ユーザー設定情報ＵＩの表示例を説明する図。
【図５】分割領域の優先度の設定例を説明する図。
【図６】特徴点検出部の処理を説明する図。
【図７】（ａ）、（ｂ）特徴点情報生成部の処理を説明する図、（ｃ）特徴点情報のフォーマットの例を説明する図。
【図８】（ａ）画像処理装置の内部構成を説明する図、（ｂ）撮像装置の内部構成を説明する図。
【図９】領域指定ＵＩ画面を説明する図。
【図１０】（ａ）ユーザー設定情報のデータフォーマットの例を説明する図、（ｂ）固定分割パターンにおける分割画像の例を説明する図。
【発明を実施するための形態】
【００１１】
以下、図面を参照して、本発明の実施形態を例示的に詳しく説明する。ただし、この実施形態に記載されている構成要素はあくまで例示であり、本発明の技術的範囲は、特許請求の範囲によって確定されるのであって、以下の個別の実施形態によって限定されるわけではない。
【００１２】
（第１実施形態）
ユーザー設定情報に基づく特徴点検出方法について説明する。本実施形態では、表示装置が接続された画像処理装置内で、ＣＰＵがユーザー設定情報に基づく特徴点の検出処理を行うものとして説明する。以下、画像処理装置の構成と各モジュールの動作について、図８（ａ）を使って説明する。図８（ａ）は、画像処理装置の内部構成を説明する図である。
【００１３】
１００１はバスである。１００２はＲＡＭである。１００３はグラフィックプロセッサである。１００４はディスプレイである。１００５はＣＰＵである。１００６はユーザーインターフェース（Ｉ／Ｆ）である。本実施形態では、ユーザーインターフェース（Ｉ／Ｆ）１００６としてタッチパネルを例として説明するが、これに限定されず、例えば、マウスなどでもよい。１００７は不揮発性の外部ストレージである。
【００１４】
１００８はネットワークインターフェース（Ｉ／Ｆ）である。１００９は外部撮像部（外部カメラ）である。本実施形態では、実行されるプラグラムおよび、データは、外部ストレージ１００７に記録されており、外部ストレージ１００７からプログラムおよびデータをＲＡＭ１００２へ入力し、ＣＰＵ１００５が実行、および、処理する構成をとる。プログラムおよびデータはバス１００１を介して入出力が行われる。画像データを外部ストレージ１００７に格納するフォーマットは、静止画の場合はＥＸＩＦデータ付きのＪＰＥＧ、動画の場合はＭＰＥＧ−２とするが、本発明の趣旨は、ここで説明したフォーマットに限定されるものではない。ＥＸＩＦデータには、フォーカスエリアや画像の撮影シーンを示すシーンタイプなどの撮影時のカメラ情報が記録されている。
【００１５】
また、画像データを入力する場合には、とくに記述がない場合、外部ストレージ１００７が画像データを読み込み、内部画像フォーマット形式に変換して読み込むものとして説明する。また、画像データの入力は外部カメラ１００９やネットワークＩ／Ｆ１００８から行うことも可能である。ディスプレイ１００４（表示部）は、ＵＩ（ユーザーインターフェース）画面や画像データの処理結果を、グラフィックプロセッサ１００３を介して、表示することができる。ユーザーインターフェース（Ｉ／Ｆ）１００６は、ディスプレイ１００４上の任意の座標位置（座標情報）とディスプレイ１００４の表示画面にタッチされたか否かの情報を入力することができる。プログラムは、外部ストレージ１００７またはＲＡＭ１００２に記憶されているデータを他のプログラムと共有して使用することができる。  以下、領域分割を用いた静止画の特徴点検出方法の具体的な処理について、図１を使って説明する。なお、解像度は、１９２０画素×１０８０画素であるものとして説明するが、本発明の趣旨は、ここで説明した解像度に限定されるものではない。
【００１６】
図１は領域分割を用いた特徴点検出方法を説明する図である。ステップＳ１０１では、画面にユーザー設定情報ＵＩを表示し、ユーザー設定情報として、ユーザーに、特徴点検出の優先モードを選択させる。
【００１７】
ユーザー設定情報ＵＩの詳細を、図４を使って説明する。図４（ａ）は、ユーザー設定情報ＵＩとして、優先モード選択ＵＩ画面の表示例を説明する図である。本実施形態では、図４（ａ）に示されるように、中央優先、周辺優先、顔優先、シーンモード連動、フォーカスエリア連動、直接指定から選択する画面を表示する。なお、本実施形態では、ユーザー設定情報ＵＩ画面上に表示されたボタンをタッチすることによって、ユーザーは優先モードを設定することが可能である。尚、優先モードの選択方法は、この例に限定されるものではなく、例えば、マウス操作やその他の入力デバイスによって選択を行ってもよい。フォーカスエリア連動は、画像データからフォーカス情報を取得できる場合、あるいは、外部に存在する撮像部のフォーカス情報を取得できる場合に有効となる。また、直接指定ボタン隣の設定がタッチされた場合、画面は、図９（ａ）の領域指定ＵＩ画面に遷移する。図９の領域指定ＵＩ画面において、網掛け部分は優先領域を示し、白抜き部分は非優先領域を示す。図９（ａ）は領域指定の初期状態を示す図であり、全てが非優先領域となっている。図９（ｂ）は、領域指定を変更した変更後の状態を例示する図である。図９（ｂ）において、領域指定ＵＩ画面の中央部付記の分割領域が優先領域として指定され、網掛け部分として表示されている。
【００１８】
図９で説明される画面では、分割された領域（分割領域）をタッチすることにより、優先して特徴点を検出する領域（優先特徴点検出領域）の設定のＯＮ／ＯＦＦを切り替えることができる。また、背景にサンプル画像が表示される。以下、ユーザーの操作例について説明する。
【００１９】
図９（ａ）の初期状態を示す図には、入口と、入口付近の人とが表示されている。例えば、入口付近について特徴点を検出したい場合、入口付近の領域をユーザー自身がタッチして、優先領域（網掛け）に指定すると、図９（ｂ）のように画面は切替えられる。ＯＫボタンが押された場合には、ユーザー設定情報の一部として、優先領域情報を更新して、図４（ａ）に戻る。キャンセルボタンが押された場合には、優先領域情報を更新せずに、図４（ａ）に戻る。
【００２０】
ここで、ユーザー設定情報のデータフォーマットについて、図１０（ａ）を使って説明する。図１０（ａ）の第一列は、データのシンタックス（入れ子構造を表現する構文）、および、データエントリー名を表している。第二列はデータのサイズをビット値で表現している。本実施形態では、データは符号なし整数で表現されるものとする。ｉｆ，ｆｏｒ文は、Ｃ言語と同等の制御構造を表現するが、命令を記述するのでなく、データエントリー名が記述される。動画モードフラグは、撮像画像が動画であるか静止画であるかを示すフラグである。ファイル、または、カメラから入力される画像が動画の場合、「１」が第二列のデータ欄に設定され、静止画の場合、「０」が第二列のデータ欄に設定される。優先モードは、ステップＳ１０１において、図４（ａ）の優先モード選択ＵＩ画面を介して設定される情報である。シーンタイプは、撮影された画像の撮影シーンを示す情報であり、ポートレート、風景モードなど、ユーザーが指定する撮影モードを示す情報である。この情報をシーンタイプ情報とする。優先領域フラグは、分割領域の優先領域設定のＯＮ／ＯＦＦを示し、図１０（ｂ）で示した分割領域に割り当てられた識別情報（例えば、ＩＤ＝０、１、２、・・・１４）順に格納される情報である。図１０（ｂ）は、固定分割パターンにおける分割画像の例として、各分割領域に割り当てられた識別情報（ＩＤ）を説明する図である。なお、本実施形態では、画像を３（行）×５（列）に分割し、一つの分割領域の大きさは３８４画素×３６０画素であるとして説明する。優先領域フラグは画像の分割数である１５個の数が存在する。なお、分割数や分割のパターンはこれに限定されない。
【００２１】
説明を図１に戻し、ステップＳ１０２では、入力画像に対し、優先領域の領域座標情報を設定する。領域情報は、優先領域の数と各分割領域の領域座標情報（領域左上、右上、左下、右下の座標）とからなる。本実施形態においては、固定の分割パターンによる各分割領域の領域座標情報はプログラム上に埋め込まれた定数として扱うものとして説明している。しかし、これに限定はなく、領域座標情報を外部プログラムから変更可能な変数として扱うことも可能である。
【００２２】
ステップＳ１０３では、ユーザー設定情報に基づいて、特徴点を検出する画像を分割した分割領域ごとに、特徴点検出処理を制御するための特徴点検出パラメータとして上限の特徴点検出数を設定する。本実施形態では、面全体に上限として、例えば、３６０点の特徴点を設定するものとする。ユーザー設定情報には、中央優先、周辺優先、顔優先、直接指定、シーンモード連動、フォーカスエリア連動の何れかを識別する優先モード情報が含まれているため、優先モードによって特徴点検出パラメータの設定方法が異なる。
【００２３】
図５は、優先モードごとの特徴点検出パラメータとして特徴点検出数の設定例を説明する図である。優先モードが中央優先の場合、図５（ａ）の網掛け部分のように、画面中央に優先領域が設定され、優先領域の特徴点検出数が多くなるように各分割領域の特徴点検出数を設定する。図５（ａ）に示すように画面中央に優先領域が設定された場合、５つの優先領域に対し、３６０点の特徴点を面積配分し、１分割領域あたり７２点の特徴点が検出されるように特徴点検出数を設定する。非優先領域に対しては、特徴点検出数を０に設定する。
【００２４】
優先モードが周辺優先の場合、図５（ｂ）の網掛け部分のように画面周辺に優先領域が設定され、優先領域の特徴点検出数が多くなるように各分割領域の特徴点検出数を設定する。図５（ｂ）に示すように画面周辺に優先領域が設定された場合、６つの優先領域に対し、３６０点の特徴点を面積配分し、１つの分割領域あたり６０点の特徴点が検出されるように特徴点検出数を設定する。非優先領域に対しては、特徴点検出数を０に設定する。  
【００２５】
シーンモード連動は、画像データから、シーンタイプ情報を取得して、シーンタイプが想定する主要被写体を含む分割領域に多くの特徴点検出数が設定されるように、各分割領域の上限の特徴点検出数を設定する。以下、シーンタイプごとの動作を説明する。シーンタイプ情報が、ポートレートを示す場合に、画像中央に被写体が存在することが多い。そのため、図５（ａ）の網掛け部分のように、画像中央に優先領域が設定され、優先領域の特徴点検出数が多くなるように各分割領域の特徴点検出数を設定する。図５（ａ）に示すように、５つの優先領域に対し、３６０点の特徴点を面積に応じて配分し、１分割領域あたり７２点の特徴点が検出されるように特徴点検出数を設定する。非優先領域に対しては、特徴点検出数を０に設定する。
【００２６】
風景優先の場合、主要被写体は画面全面になるため図５（ｄ）の網掛け部分にように全分割領域に優先領域が設定される。本実施形態では、３６０点が各分割領域に等配分され、各分割領域には２４点の特徴点が検出されるように特徴点検出数を設定する。なお、シーンタイプ情報は、ＥＸＩＦデータに記録されたデータを利用することができる。
【００２７】
フォーカス連動では、画像データからフォーカスエリア情報を取得して、フォーカスを合わせた位置として特定される位置を含む分割領域から多くの特徴点検出されるように優先領域を設定し、各分割領域の特徴点検出数を設定する。フォーカスエリア情報は、ＥＸＩＦデータに記録されたデータを利用することができる。
【００２８】
直接指定では、図５（ｃ）の網掛け部分のように分割領域を個別に指定する。優先領域を面全体の特徴点数を面積比で配分した個数を検出数として設定する。非優先領域に対しては、特徴点検出数を０に設定する。
【００２９】
本実施形態では、各工程内で、全ての分割領域の処理を実施するように記載しているが、これに限定されない。例えば、分割領域ごとに、各工程の処理を実行し、分割領域の数だけループ処理を実行する構成も可能である。また、上述の説明では、面全体の特徴点検出数を設定し、優先領域に対して配分する構成をとっているが、優先領域の面積に対し、一定の比率の特徴点を検出するように構成してもよい。例えば、３８４画素×３６０画素の優先領域から、その画素数の０．０５％である６９点を検出数とすることもできる。この場合、優先領域の数によって、画面全体の特徴点検出数は変化する。
【００３０】
ステップＳ１０４では、特徴点検出パラメータに基づいて、分割領域内の特徴点を検出する。以下、分割領域単位の特徴点検出処理を、図２を使って説明する。図２は、第１実施形態の分割領域単位の特徴点検出処理を説明する図である。
【００３１】
ステップＳ２０１では、設定された特徴点検出数が１以上であるか否かを判定し、１以上の場合は（Ｓ２０１−Ｙｅｓ）、ステップＳ２０２に処理を進める。一方、ステップＳ２０１の判定で、設定された特徴点検出数が１未満の場合（Ｓ２０１−Ｎｏ）には処理を終了する。
【００３２】
ステップＳ２０２では、分割領域内の画素をラスター順に走査し、画素ごとに特徴点スコアを含む特徴点情報を算出し、特徴点スコアを含む特徴点情報をソートバッファに出力する。ここで、特徴点情報およびソートバッファについて図７（ｃ）を使って説明する。図７（ｃ）は、特徴点情報のフォーマットの例を説明する図である。特徴点情報は、図７（ｃ）に示されるように、特徴点情報は、一つの特徴点ごとに、ｘ座標、ｙ座標（位置情報）、および、特徴点スコアの情報を有する。ソートバッファは、図７（ｃ）に示すような複数の特徴点情報を格納することができるバッファである。
【００３３】
本実施形態では、特徴点スコアは、例えば、ハリス作用素で算出するものとする。ハリス作用素で特徴点スコアを算出する場合、対象となる画像は輝度画像である。入力画像がＲＧＢ画像の場合、あらかじめ輝度画像に変換しておくものとする。
【００３４】
ステップＳ２０３では、ソートバッファ内の特徴点情報を特徴点スコアに基づいてソートする。ソート方式としては、例えば、クイックソートを使用することができるが、ソート方式は、この例に限定されるものではなく、例えば、バブルソートなど、他のソート方式でもよい。なお、ハリス作用素は、そのスコア値が高いほど、コーナーの度合いが高いことを示す作用素である。よって、コーナーの度合いが高い特徴点が図７（ｃ）で示されるバッファ構造の先頭に集まるように、降順でソートする。
【００３５】
ステップＳ２０４では、ソートされた上位の特徴点の特徴点情報を出力する。バッファの先頭から、ステップＳ１０３で設定された特徴点検出数（特徴点情報）を出力する。本実施形態ではハリス作用素を用いたがそれ以外の特徴点スコアの算出方式を適用することも可能である。他の特徴点スコアの算出方式では特徴点スコアの算出方式が低スコア値ほど特徴の度合いが高い場合もあり、その場合は昇順でソートすることになる。画像単位の特徴点情報は配列として記憶され、領域単位の特徴点情報が出力するたびに、配列の末尾に追加されるものとする。ただし、画像の特徴点情報の管理方法はこれに限らない。これらの処理は、動画にも適用することが可能である。その場合、連続画像データに対し、ステップＳ１０２からＳ１０４を繰り返し適用することによって、実現される。
【００３６】
本実施形態によれば、特徴点を検出する領域を優先領域に限定している。つまり、特徴点検出数が０に設定される非優先領域は、特徴点検出処理を実行する必要はなく、処理時間を短縮することができる。ただし、非優先領域から検出する特徴点数の個数は、必ずしも０に設定する必要はない。例えば、画面全体の特徴点検出数の設定を優先領域に固定せず、検出特徴点のうち所定数、例えば、半数の特徴点検出数を非優先領域に設定する構成をとってもよい。この場合も、非優先領域の特徴点検出数と優先領域の特徴点検出数とを同数に設定する場合に比べて、扱う特徴点検出数を減らせるため処理量の軽減を図ることが可能になる。このように、ユーザー設定情報に基づいて特徴点を検出する領域を限定しているため、特徴点の取りこぼしが少なくユーザーの意図に合致した特徴点の検出が可能になる。
【００３７】
特徴点検出を用いて動画のブレを補正する場合の効果を一例として説明する。画面中央を優先領域に設定した場合、構図的に画面中央に存在しがちな主要被写体の特徴点と動き量を求めることができる。一方、背景のブレを防振する場合には、画面周辺に優先領域が設定され、構図的に画面周辺に存在しがちな背景の特徴点とその動き量を求めることができる。これら被写体の動き量から補正を行うことにより、ユーザーが補正したいと考える被写体のブレの補正を行うことができる。また、このユーザー設定は、フォーカスエリア設定に連動させることも可能であるが、フォーカスエリア設定と非連動であってもよい。これにより、主要被写体にフォーカスを合わせつつ、主要被写体でない、例えば、背景を対象としたブレ補正も可能となる。
【００３８】
特徴点検出を用いて動き量を算出したり、ブレ補正をする場合には、ステップＳ１０１の処理で説明したＵＩは、特徴点検出の優先領域を指定するため、動き量を算出する優先領域の指定やブレ補正対象の指定のためのＵＩとしてユーザーに提示される。
【００３９】
（第２実施形態）
第１実施形態では、特徴点検出処理として特徴点検出数の上限を設定する処理を説明したが、本実施形態では、特徴点検出のための閾値を設定し、画素の特徴点スコアと閾値との比較結果に基づいて特徴点を検出する方法を説明する。第１実施形態と共通する内容については説明を省略し、以下、相違する処理について説明する。  第１実施形態で説明した図１のステップＳ１０３では、特徴点検出パラメータとして特徴点検出数を設定する構成を説明した。本実施形態では、特徴点検出パラメータとして特徴点スコアの閾値を、特徴点を検出する画像を分割した分割領域ごとに設定する。特徴点スコアの閾値は、特徴点の検出感度であり、特徴点スコアの閾値が大きいほど特徴点が検出されにくくなる。
【００４０】
特徴点スコアの閾値を基準値に対して変更することによって、特徴点の検出量（検出数）を調整することができる。特徴点スコアが閾値を超えた場合に特徴点が検出される。特徴点スコアの閾値を、基準閾値よりも大きい値に設定した場合、特徴点は検出されにくくなるように特徴点の検出処理が制御される。基準閾値はあらかじめ設定された値であり、基準閾値に係数をかけて特徴点スコアの閾値を算出する。
【００４１】
また、ステップＳ１０４では、特徴点検出パラメータとして、特徴点スコアの閾値に基づいて、分割領域内の特徴点を検出する。優先モードごとの特徴点スコアの閾値の設定を例示的に説明する。優先モードとして、中央優先では、図５（ａ）の網掛けで示されるように画面中央に優先領域が設定され、白抜きの非優先領域は、例えば、基準閾値の２倍の値が特徴点スコアの閾値として設定される。
【００４２】
優先モードとして周辺優先は、図５（ｂ）の網掛けで示されるように画面周辺に優先領域が設定され、白抜きの非優先領域は基準閾値の２倍の値が特徴点スコアの閾値として設定される。優先モードとしてフォーカス連動では、画像データからフォーカスエリア情報を取得して、フォーカスを合わせると指定された位置以外の領域に対し、基準閾値の２倍の値が特徴点スコアの閾値として設定される。優先モードとして直接指定では、図５（ｃ）の網掛け部分が優先領域として示され、非優先領域として指定した網かけなしの領域に対し、基準閾値の２倍の値が特徴点スコアの閾値として設定される。
【００４３】
シーンモード連動の場合、シーンタイプ情報が、ポートレートを示す場合、画面中央に被写体が存在することが多い。図５（ａ）の網掛けで示されるように画面中央に優先領域が設定され、白抜きの非優先領域は基準閾値の２倍の値が特徴点スコアの閾値として設定される。風景優先の場合、主要被写体は画面全面になるため図５（ｄ）の網掛けで示されるように画面全面に優先領域が設定され、白抜きの非優先領域は基準閾値の２倍の値が特徴点スコアの閾値として設定される。以上の処理により、非優先領域の特徴点スコアの閾値は優先領域の特徴点の閾値（基準閾値）に比べて２倍（検出感度は１／２）となる。これにより優先領域に比べて、非優先領域では特徴点は検出されにくくなるように特徴点の検出処理が制御される。
【００４４】
本実施形態の特徴点スコアの閾値の算出処理と特徴点検出処理とを、図３を用いて説明する。ステップＳ３０１では、対象画素を設定し、特徴点スコアを算出する。対象画素の設定は、分割領域内の画素をラスター順に走査することによって行われる。本実施形態では、第１実施形態と同様に特徴点スコアの算出は、ハリス作用素を用いている。
【００４５】
ステップＳ３０２では、特徴点スコアの閾値と、ステップＳ３０１で算出した特徴点スコアとを比較する。比較の結果、特徴点スコアが閾値より大きい場合（Ｓ３０２−Ｙｅｓ）、処理をステップＳ３０３に進める。特徴点スコアが閾値以下の場合（Ｓ３０２−Ｎｏ）、処理をステップＳ３０４に進める。
【００４６】
ステップＳ３０３では、閾値よりも大きいと判定された特徴点情報を出力する。非優先領域の特徴点の閾値は優先領域の特徴点の閾値（基準閾値）に比べて大きい値が設定されている場合、優先領域に比べて非優先領域では特徴点スコアが閾値を超えにくくなる。本実施形態では、非優先領域の特徴点の閾値は基準閾値に比べて２倍の値が設定されている。このため、非優先領域の特徴点情報は、優先領域に比べて出力されにくいように特徴点のの検出個数が調整される。一方、優先領域の特徴点情報は、非優先領域に比べて出力されやすいように特徴点の検出個数が調整される。
【００４７】
ステップＳ３０４では、分割領域内の画素の特徴点検出処理が全て完了したかを判定し、完了の場合には（Ｓ３０４−Ｙｅｓ）、処理を終了させる。一方、分割領域内の全ての画素について特徴点検出処理が終了していない場合（Ｓ３０４−Ｎｏ）、処理をステップＳ３０１に戻し、同様の処理を実行する。
【００４８】
本実施形態によれば、第１実施形態と同様に、分割領域ごとに特徴点の検出個数を制御することができる。これにより、非優先領域の特徴点の検出個数を低減することができ、処理時間の削減を図ることが可能になる。本実施形態で説明した閾値の設定と、第１実施形態で説明した上限の特徴点検出数を設定する構成を組み合わせて、分割領域ごとに特徴点の検出個数を制御することも可能である。
【００４９】
（第３実施形態）
本実施形態では、ユーザー設定情報に基づく特徴点検出処理を実行可能な特徴点検出部と、撮像部と、を有する撮像装置（カメラ）の構成を説明する。以下、カメラの内部構成と各構成要素の動作について、図８（ｂ）を使って説明する。図８（ｂ）は、カメラの内部構成を説明する図である。１００１はバスである。１００２はＲＡＭである。１００３はグラフィックプロセッサである。１００４はディスプレイである。１００５はＣＰＵである。１００６は、ユーザーインターフェース（Ｉ／Ｆ）である。本実施形態では、ユーザーインターフェース（Ｉ／Ｆ）１００６としてタッチパネルを例として説明する。１００７は不揮発性の外部ストレージである。１００８はネットワークインターフェース（Ｉ／Ｆ）である。
【００５０】
特徴点検出部１０１０はユーザー設定情報に基づく特徴点検出処理を実行する。撮像部１０１１は、センサー、光学系、現像処理部を有する。光学系を介してセンサーで撮像されたＲＡＷ画像データは、現像処理部によりデジタル現像処理され、フォーカスエリア情報を含む撮影時のカメラ情報とともに、ＲＡＭ１００２に画像データとして記憶され、各モジュールと共有される。
【００５１】
本実施形態では、ＵＩ画面や処理画像結果などは、グラフィックプロセッサ１００３を介して、ディスプレイ１００４上に表示することができる。ユーザーインターフェース（Ｉ／Ｆ）１００６は、ディスプレイ１００４上の任意の座標位置（座標情報）とディスプレイ１００４の表示画面にタッチされたか否かの情報を入力することができる。また、プログラムは、外部ストレージ１００７またはＲＡＭ１００２に記憶されているデータを他のプログラムと共有して使用することができる。
【００５２】
ＣＰＵ１００５は、第１実施形態で説明した方法と同様の方法で、ユーザー設定情報を生成する。ユーザー設定情報ＵＩは、図４で説明したとおりである。本実施形態では、カメラのユーザーインターフェース（Ｉ／Ｆ）１００６に表示されるメニューボタンを押すことによって、図４（ａ）、（ｂ）、（ｃ）で例示されるＵＩ画面を介して、ユーザーは、種々のモードを説明することができる。
【００５３】
図４（ａ）に示した優先モード選択ＵＩ画面を介して、ユーザーは優先モードを設定する。図４（ｂ）のＵＩ画面を介して、ユーザーは、動画、静止画いずれかの撮影を行うかを選択する。図４（ｃ）のＵＩ画面を介して、ユーザーは、シーンタイプ選択する。シーンタイプには、ポートレートモードや、風景モードがあり、このシーンタイプに応じて、撮影時のフォーカスエリアやホワイトバランスなどが決定される。図４（ａ）、（ｂ）、（ｃ）の画面の表示に関して、階層的なメニュー構成に画面が遷移し表示される。なお、動画、静止画の選択やシーンタイプの選択は、ＵＩ画面による選択に限定されず、カメラが有する物理的な操作部（例えば、ダイアル）の操作により選択することも可能である。以下、静止画像を分割した分割領域ごとに特徴点を検出する特徴点検出部１０１０の処理を、図６を使って説明する。
【００５４】
特徴点検出パラメータ設定部６０１は、被写体に対するフォーカスエリア示すフォーカスエリア情報を含むカメラ情報およびユーザー設定情報の入力を受け付ける。特徴点検出パラメータ設定部６０１はフォーカスエリア情報を含むカメラ情報を撮像部１０１１から取得する。特徴点検出パラメータ設定部６０１は、第１実施形態で説明した方法と同様の方法により、ユーザー設定情報を用いて特徴点検出数を設定する。ここで、ユーザー設定情報がシーンモード連動を示す場合、特徴点検出パラメータ設定部６０１はシーンタイプに基づいて優先領域を設定し、第１実施形態と同様に特徴点検出パラメータとして特徴点の検出個数を設定する。
【００５５】
また、ユーザー設定情報がフォーカス連動を示す場合、撮像部１０１１から取得したカメラ情報に含まれるフォーカスエリア情報を用いて第１実施形態と同様に特徴点検出パラメータとして特徴点検出数を設定する。なお、特徴点検出パラメータ設定部６０１の処理は、汎用的な処理を行うＣＰＵで実行することも可能である。
【００５６】
画像分割部６０２は、予め設定された分割パターンに基づいて、入力された画像を分割し、分割した画像を特徴点情報生成部６０３へ出力する。ここで、予め設定された分割パターンの例を図１０（ｂ）に示す。
【００５７】
特徴点情報生成部６０３は、特徴点検出パラメータ設定部６０１で設定した特徴点検出パラメータに基づいて、画像分割部６０２で分割した分割画像ごとに特徴点を検出し、検出した特徴点情報を出力する。
【００５８】
以下、特徴点情報生成部６０３の処理の詳細を、図７（ａ）を使って説明する。特徴点スコア生成部７０１は、分割画像の画素を走査順に特徴点スコアを計算し、特徴点スコア上位点抽出部７０２へ出力する。本実施形態では、特徴点スコアは、第１実施形態と同様に、例えば、ハリス作用素で算出するものとする。
【００５９】
特徴点スコア上位点抽出部７０２には、特徴点パラメータとして特徴点検出数が設定されており、特徴点検出数だけ特徴点情報（特徴点スコア）を保持する。例えば、優先領域について設定されている特徴点検出の個数がＮ個（Ｎは整数）とする。この場合、保持している上位からＮ番目の特徴点情報よりもスコアが高い特徴点情報が特徴点スコア生成部７０１から入力されると、スコアが低いＮ番目の特徴点情報を破棄する。そして、入力されたスコアが高い特徴点情報をＮ番目の特徴点情報として保持する。分割画像の全画素の処理が終了した時点で、保持していた特徴点情報を出力する。例えば、特徴点検出数がＮ個設定されている場合、最も特徴点情報の値の大きい最上位の特徴点情報から降順にＮ番目までの特徴点情報を出力する。
【００６０】
本実施形態によれば、特徴点を検出する領域を優先領域に限定している。つまり、非優先領域について特徴点検出数が０個の場合には特徴点検出処理を実行する必要はなく、処理時間を短縮することができる。
【００６１】
（第４実施形態）
第３実施形態では、特徴点スコア上位点抽出部７０２に特徴点検出数の上限を設定する処理を説明したが、本実施形態では、特徴点検出のための閾値を設定し、画素の特徴点スコアと閾値との比較結果に基づいて特徴点を検出する方法を説明する。
【００６２】
第３実施形態で説明した図６の特徴点検出パラメータ設定部６０１で設定する特徴点検出パラメータは特徴点検出数であった。本実施形態では、特徴点検出パラメータは特徴点検出数でなく特徴点スコアの閾値である。
【００６３】
本実施形態では、あらかじめ基準閾値が設定されており、基準閾値に係数をかけた特徴点スコアの閾値を、分割領域ごとの特徴点検出パラメータとする。
【００６４】
特徴点検出パラメータ設定部６０１は、フォーカスエリア示すフォーカスエリア情報を含むカメラ情報およびユーザー設定情報の入力を受け付ける。特徴点検出パラメータ設定部６０１は、第２実施形態と同様に分割領域ごとの特徴点検出パラメータとして特徴点スコアの閾値を、特徴点を検出する画像を分割した分割領域ごとに設定する。
【００６５】
ここで、ユーザー設定情報がシーンモード連動示す場合は、特徴点検出パラメータ設定部６０１はシーンタイプに基づいて、特徴点スコアの閾値を第２実施形態で説明したように設定する。また、ユーザー設定情報がフォーカス連動を示す場合、特徴点検出パラメータ設定部６０１は、撮像部１０１１から取得したカメラ情報に含まれるフォーカスエリア情報を取得する。そして、特徴点検出パラメータ設定部６０１はフォーカスを合わせると指定された位置以外の領域に対し、基準閾値よりも大きい値の閾値（例えば、基準閾値の２倍の値）を特徴点スコアの閾値として設定する。その他、ユーザー設定情報に応じた優先モードに応じた特徴点スコアの閾値の設定は第２実施形態で説明したとおりである。特徴点検出パラメータ設定部６０１は、優先領域の特徴点の閾値（基準閾値）に比べて大きい値（例えば、基準閾値の２倍など）を非優先領域の特徴点スコアの閾値として設定する。これにより優先領域に比べて、非優先領域では特徴点は検出されにくくなるように特徴点の検出処理が制御される。
【００６６】
特徴点情報生成部６０３は、特徴点検出パラメータ設定部６０１で設定した特徴点検出パラメータに基づいて、画像分割部６０２で分割した分割画像ごとに特徴点の閾値を設定する。そして、特徴点スコアが閾値を超えた場合に特徴点情報生成部６０３は特徴点を検出し、検出した特徴点情報を出力する。以下、特徴点情報生成部６０３の詳細について、図７（ｂ）を使って説明する。
【００６７】
特徴点スコア生成部８０１は分割画像の画素を走査順に特徴点スコアを計算し、特徴点スコア閾値判定部８０２へ出力する。特徴点スコア閾値判定部８０２は、図３のステップＳ３０２で説明した方法と同様に、特徴点スコアの閾値と、特徴点スコア生成部８０１で生成された特徴点スコアとを比較する。比較の結果、特徴点スコアが閾値より大きい場合、閾値よりも大きいと判定された特徴点スコア（特徴点情報）を出力する。この処理は図３のステップＳ３０３に対応するものである。一方、特徴点スコアが閾値以下の場合、特徴点スコア（特徴点情報）を出力せず、分割領域内の画素の特徴点検出処理が全て完了したかを判定し、完了の場合には、処理を終了する。この処理は図３のステップＳ３０４に対応するものである。
【００６８】
本実施形態によれば、分割領域ごとに特徴点の検出数を制御することができる。これにより、非優先領域の特徴点検出数を低減することができ、処理時間の削減を図ることが可能になる。本実施形態で説明した閾値の設定と、第１実施形態で説明した上限の特徴点検出数を設定する構成を組み合わせて、分割領域ごとに特徴点の検出数を制御することも可能である。
【００６９】
上記の各実施形態によれば、用途やユーザーの設定に応じて、分割領域毎に必要最低限の数の特徴点を検出することによって、特徴点検出処理の負荷を軽減することが可能になる。これにより、後工程での処理精度を落とすことなく、処理負荷を削減することが可能となる。
【００７０】
（その他の実施形態）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2014229030.tif 000003
【図２】
2014229030.tif 000004
【図３】
2014229030.tif 000005
【図４】
2014229030.tif 000006
【図５】
2014229030.tif 000007
【図６】
2014229030.tif 000008
【図７】
2014229030.tif 000009
【図８】
2014229030.tif 000010
【図９】
2014229030.tif 000011
【図１０】
2014229030.tif 000012