(57)【要約】【課題】ボカシ度の異なる複数の画像を利用した特徴点の検出処理を高速化すること。【解決手段】被写体２２を撮像する撮像装置２０の焦点位置を制御する制御部１２と、被写体２２に合焦する第１の焦点位置とは異なる複数の第２の焦点位置ｆ０、ｆ１、ｆ２、ｆ３でそれぞれ該被写体２２を撮像した複数の画像Ｐ０、Ｐ１、Ｐ２、Ｐ３を撮像装置２０から取得し、第２の焦点位置が隣り合う画像のペア毎に生成した画像差分ｐＤ１、ｐＤ２、ｐＤ３に基づいて画像の特徴点を検出する演算部１３とを有する、画像処理装置１０が提供される。【選択図】図１
2016212813.tif 000002
【特許請求の範囲】
【請求項１】
被写体を撮像する撮像装置の焦点位置を制御する制御部と、
前記被写体に合焦する第１の焦点位置とは異なる複数の第２の焦点位置でそれぞれ該被写体を撮像した複数の画像を前記撮像装置から取得し、前記第２の焦点位置が隣り合う前記画像のペア毎に生成した画像差分に基づいて前記画像の特徴点を検出する演算部と
を有する、画像処理装置。
【請求項２】
前記第１の焦点位置で撮像された画像を平滑化フィルタで平滑化した場合のボカシ度と、前記第２の焦点位置で撮像された画像のボカシ度との比較に基づいて生成された、前記平滑化フィルタのボカシ度を表す設定値と、前記第２の焦点位置との対応関係を示す情報を記憶する記憶部を有する
請求項１に記載の画像処理装置。
【請求項３】
前記演算部は、
前記記憶部が記憶する情報を参照し、
設定された閾値より小さいボカシ度に対応する前記設定値を設定した前記平滑化フィルタと前記第１の焦点位置で撮像された画像とを用いて、該ボカシ度に対応する前記第２の焦点位置で撮像された画像と同じボカシ度を有する画像を生成し、
前記閾値より大きいボカシ度に対応する前記第２の焦点位置で撮像された画像と、前記平滑化フィルタを用いて生成した画像とを用いて前記画像差分を生成する
請求項２に記載の画像処理装置。
【請求項４】
前記演算部は、前記平滑化フィルタを用いて生成した画像のペアで前記画像差分を生成する処理と、前記撮像装置から取得した画像のペアで前記画像差分を生成する処理とを並行して実行する
請求項３に記載の画像処理装置。
【請求項５】
前記演算部は、
前記記憶部が記憶する情報を参照し、
最大のボカシ度から順にボカシ度を選択し、選択したボカシ度を第１のボカシ度として前記記憶部に格納し、該第１のボカシ度に対応する前記設定値を設定した前記平滑化フィルタと前記第１の焦点位置で撮像された画像とを用いて、該ボカシ度に対応する前記第２の焦点位置で撮像された画像と同じボカシ度を有する画像を生成する第１の処理と、
最小のボカシ度から順にボカシ度を選択し、選択したボカシ度を第２のボカシ度として前記記憶部に格納し、該第２のボカシ度に対応する前記第２の焦点位置で撮像された画像を取得する第２の処理と、を並行して実行し、
前記第１及び第２の処理を、前記記憶部に格納された前記第１のボカシ度が、前記第２のボカシ度より小さくなった場合に終了させる
請求項２に記載の画像処理装置。
【請求項６】
コンピュータが、
被写体を撮像する撮像装置の焦点位置を制御し、
前記被写体に合焦する第１の焦点位置とは異なる複数の第２の焦点位置でそれぞれ該被写体を撮像した複数の画像を前記撮像装置から取得し、
前記第２の焦点位置が隣り合う前記画像のペア毎に生成した画像差分に基づいて前記画像の特徴点を検出する
画像処理方法。
【請求項７】
コンピュータに、
被写体を撮像する撮像装置の焦点位置を制御し、
前記被写体に合焦する第１の焦点位置とは異なる複数の第２の焦点位置でそれぞれ該被写体を撮像した複数の画像を前記撮像装置から取得し、
前記第２の焦点位置が隣り合う前記画像のペア毎に生成した画像差分に基づいて前記画像の特徴点を検出する
処理を実行させる、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理方法、及びプログラムに関する。
【背景技術】
【０００２】
撮像画像とテンプレート画像とを比較して撮像画像から人物や物体を認識する物体認識技術が広く利用されている。例えば、人物の顔を撮像した撮像画像と、予め登録された顔のテンプレート画像とを照合して認証を行う顔認証や、撮像画像に含まれる建造物などを特定してＡＲ（Augmented Reality）情報を表示する情報表示などに物体認識技術が利用されている。
【０００３】
物体認識の処理は、照合させる各画像の特徴点を検出する処理、及び特徴点毎に特徴量を比較して両画像の一致度を評価する処理を含む。一般に、撮像画像に含まれる物体のサイズや向きは画像毎に異なる。そのため、物体のサイズや向きに対する依存性の低い特徴点を検出できれば、物体認識の精度を高めることができる。物体のサイズに依存しない特徴点を検出する方法としては、ＳＩＦＴ（Scale-Invariant Feature Transform）がある。ＳＩＦＴの中で、物体のサイズに依存しない特徴点はキーポイントと呼ばれる。
【０００４】
キーポイントの検出には、ボカシ度が異なる複数の画像（ボカシ画像）が利用される。ＳＩＦＴでは、ボケのない画像に、スケールが異なるガウシアンフィルタをかけて平滑化することで、複数のボカシ画像を得る方法が採用されている。ガウシアンフィルタは、スケールを幅とするガウス関数で表現される。そのため、スケールが大きいガウシアンフィルタを利用するほど、ボカシ度が大きいボカシ画像が得られる。
【０００５】
なお、移動平均フィルタを利用して画像のボカシ度を評価し、ピントのずれを判断する方法が提案されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００１−１２８０６７号公報
【非特許文献】
【０００７】
【非特許文献１】David G.Lowe, "Distinctive Image Features from Scale-Invariant Keypoints", International Journal of Computer Vision, 2004.
【発明の概要】
【発明が解決しようとする課題】
【０００８】
ガウシアンフィルタや移動平均フィルタなどの平滑化フィルタを用いた処理は、スケールが大きくなるほど処理負荷が高くなる。例えば、ガウシアンフィルタの処理は、画像のデータとガウス関数との畳み込み積分を含むため、スケールが大きくなるほど畳み込む範囲が広くなり処理負荷が高くなる。ボカシ度の大きなボカシ画像を利用すれば物体のサイズに依存しない特徴点を精度良く検出することができるが、平滑化フィルタを利用してボカシ画像を得る方法を採用すると処理負荷が高く、長い処理時間がかかる。
【０００９】
一態様によれば、本発明の目的は、ボカシ度の異なる複数の画像を利用した特徴点の検出処理を高速化することが可能な画像処理装置、画像処理方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【００１０】
一態様によれば、被写体を撮像する撮像装置の焦点位置を制御する制御部と、被写体に合焦する第１の焦点位置とは異なる複数の第２の焦点位置でそれぞれ該被写体を撮像した複数の画像を撮像装置から取得し、第２の焦点位置が隣り合う画像のペア毎に生成した画像差分に基づいて画像の特徴点を検出する演算部とを有する、画像処理装置が提供される。
【発明の効果】
【００１１】
一態様によれば、ボカシ度の異なる複数の画像を利用した特徴点の検出処理を高速化することができる。
【図面の簡単な説明】
【００１２】
【図１】第１実施形態に係る画像処理装置の一例を示した図である。
【図２】第２実施形態に係るシステムの一例を示した図である。
【図３】第２実施形態に係る制御装置のハードウェアの一例を示した図である。
【図４】ＳＩＦＴについて説明するための図である。
【図５】第２実施形態に係る制御装置が有する機能の一例を示した図である。
【図６】第２実施形態に係るボカシ度情報の一例を示した図である。
【図７】第２実施形態に係るボカシ度情報の生成処理の流れを示したフロー図である。
【図８】第２実施形態に係る特徴点の検出処理の流れを示した第１のフロー図である。
【図９】第２実施形態に係る特徴点の検出処理の流れを示した第２のフロー図である。
【図１０】平滑化フィルタによるボカシ画像の生成処理時間と、撮像処理によるボカシ画像の生成処理時間とを比較した図である。
【図１１】第２実施形態の一変形例（フィルタ処理を併用する例）に係る特徴点の検出処理の流れを示したフロー図である。
【図１２】第２実施形態の一変形例（並行処理の例）に係る特徴点の検出処理の流れを示した第１のフロー図である。
【図１３】第２実施形態の一変形例（並行処理の例）に係る特徴点の検出処理の流れを示した第２のフロー図である。
【図１４】第２実施形態の一変形例（並行処理の効率化）に係る特徴点の検出処理の流れを示した第１のフロー図である。
【図１５】第２実施形態の一変形例（並行処理の効率化）に係る特徴点の検出処理の流れを示した第２のフロー図である。
【発明を実施するための形態】
【００１３】
以下に添付図面を参照しながら、本発明の実施形態について説明する。なお、本明細書及び図面において実質的に同一の機能を有する要素については、同一の符号を付することにより重複説明を省略する場合がある。
【００１４】
＜１．第１実施形態＞
図１を参照しながら、第１実施形態について説明する。第１実施形態は、焦点位置を移動可能な焦点可変光学系を利用してボカシ画像を取得し、取得したボカシ画像を利用して特徴点を検出する技術に関する。図１は、第１実施形態に係る画像処理装置の一例を示した図である。図１に示した画像処理装置１０は、第１実施形態に係る画像処理装置の一例である。
【００１５】
画像処理装置１０は、記憶部１１、制御部１２、及び演算部１３を有する。
なお、記憶部１１は、ＲＡＭ（Random Access Memory）などの揮発性記憶装置、或いは、ＨＤＤ（Hard Disk Drive）やフラッシュメモリなどの不揮発性記憶装置である。制御部１２及び演算部１３は、ＣＰＵ（Central Processing Unit）やＤＳＰ（Digital Signal Processor）などのプロセッサである。但し、制御部１２及び演算部１３は、ＡＳＩＣ（Application Specific Integrated Circuit）やＦＰＧＡ（Field Programmable Gate Array）などの電子回路であってもよい。制御部１２及び演算部１３は、例えば、記憶部１１又は他のメモリに記憶されたプログラムを実行する。
【００１６】
画像処理装置１０は、撮像装置２０に接続される。撮像装置２０は、焦点可変光学系２１を有する。また、撮像装置２０は、ＣＣＤ（Charge Coupled Device）やＣＭＯＳ（Complementary Metal-Oxide-Semiconductor）などの撮像素子（非図示）及び撮像素子が出力した電気信号から撮像画像を生成する信号処理回路（非図示）を有する。焦点可変光学系２１は、撮像装置２０による制御に応じて焦点位置を移動させるフォーカス調整機構を有する。
【００１７】
制御部１２は、被写体２２を撮像する撮像装置２０の焦点位置を制御する。制御部１２は、例えば、記憶部１１が記憶する情報１１ａに基づいて焦点位置を制御する。情報１１ａは、被写体２２に合焦する第１の焦点位置で撮像された画像を平滑化フィルタで平滑化した場合のボカシ度を表す設定値ｂ０、ｂ１、ｂ２、ｂ３と、第１の焦点位置とは異なる第２の焦点位置ｆ０、ｆ１、ｆ２、ｆ３との対応関係を示す。
【００１８】
情報１１ａが示す対応関係は、例えば、第１の焦点位置で撮像された画像から平滑化フィルタを用いて生成された画像と、第１の焦点位置から焦点位置を移動させながら撮像した画像とを順次比較して両画像の一致を判定することによって特定できる。つまり、記憶部１１は、情報１１ａとして、両画像が一致した場合の設定値と、焦点位置（第２の焦点位置）とを対応付けて記憶する。
【００１９】
演算部１３は、第２の焦点位置ｆ０、ｆ１、ｆ２、ｆ３でそれぞれ被写体２２を撮像した画像Ｐ０、Ｐ１、Ｐ２、Ｐ３を撮像装置２０から取得する。そして、演算部１３は、第２の焦点位置が隣り合う画像のペア毎に画像差分ｐＤ１、ｐＤ２、ｐＤ３を生成する。画像差分ｐＤ１は、画像Ｐ０、Ｐ１の差分である。画像差分ｐＤ２は、画像Ｐ１、Ｐ２の差分である。画像差分ｐＤ３は、画像Ｐ２、Ｐ３の差分である。
【００２０】
また、演算部１３は、画像差分ｐＤ１、ｐＤ２、ｐＤ３に基づいて画像の特徴点（局所特徴点）を検出する。例えば、演算部１３は、画像差分ｐＤ２の画素を注目画素として選択し、画像差分ｐＤ２上で注目画素の近傍にある複数の画素（近傍画素）を特定する。また、演算部１３は、画像差分ｐＤ１、ｐＤ３上で、注目画素及び近傍画素に対応する位置にある画素（近傍画素）を特定する。
【００２１】
図１の例では、画像差分ｐＤ２上でハッチングを施した画素が注目画素であり、画像差分ｐＤ１、ｐＤ２、ｐＤ３上において太枠で囲った範囲内の注目画素を除く画素が近傍画素である。演算部１３は、注目画素及び全ての近傍画素のうち画素の値が最大となる画素を検出する（極値検出）。そして、演算部１３は、検出した画素を局所特徴点の候補として抽出する。演算部１３は、注目画素の位置を変えながら同様に極値検出を実行し、局所特徴点の候補を抽出する。
【００２２】
また、演算部１３は、抽出した局所特徴点の候補のうち、画像差分の画素の値が、設定した閾値よりも小さいもの及びエッジ上にあるものを候補から除外し、残りの候補を局所特徴点とする。このように、候補を絞り込むことで、ノイズの影響などを受けにくい局所特徴点が得られる。
【００２３】
上記のように、第１実施形態によれば、焦点可変光学系２１を制御して撮像したボカシ画像を利用して特徴点を検出することで、ガウシアンフィルタなどの平滑化フィルタに比べて高速に処理を実行することができる。平滑化フィルタはスケールが大きくなるにつれてボカシ画像１枚あたりの処理時間が長くなるが、撮像装置２０による撮像処理はボカシ度にかかわらず処理時間が同じであるため、多くのボカシ画像を利用するほど、第１実施形態の適用によるメリットは大きくなる。
【００２４】
以上、第１実施形態について説明した。
＜２．第２実施形態＞
次に、第２実施形態について説明する。第２実施形態は、被写体に合焦する焦点位置からずれた焦点位置で撮像された複数の撮像画像を利用して、該被写体を撮像した撮像画像の特徴点を検出する技術に関する。この技術は、ＳＩＦＴなどの特徴点検出技術に比べて高速な処理を実現することができる。
【００２５】
［２−１．システム］
第２実施形態に係る特徴点検出技術は様々なシステムに適用可能であるが、ここでは一例として、被写体から特定の領域（部品など）を認識するシステムに適用する例を示す。図２は、第２実施形態に係るシステムの一例を示した図である。図２に示すシステムは、カメラ５０、電圧制御装置６０、照明７０及び制御装置１００を含む。
【００２６】
カメラ５０は、計測対象の対象物８０を撮像し、撮像画像のデータを制御装置１００に送信する。カメラ５０は、フォーカス調整機構を含む光学系５１を有する。光学系５１には、電圧制御装置６０が接続されている。電圧制御装置６０は、光学系５１に制御電圧を加えて光学系５１の焦点位置を制御する。また、電圧制御装置６０は、制御装置１００から受けた制御信号に応じて制御電圧を出力する。照明７０は、対象物８０の撮像面に光を照射する。
【００２７】
光学系５１は、例えば、可変焦点レンズの一種であるダイナモルフレンズを有する。
ダイナモルフレンズは、屈折率の異なる２種類の液体が充填された容器と、ピエゾアクチュエータとを有する。ピエゾアクチュエータは、電圧制御装置６０から印加された制御電圧に応じて伸縮する。ピエゾアクチュエータの伸縮は、ダイナモルフレンズに充填された液体の体積を変化させる。この液体の体積変化は、液体の界面形状を変形させる。そして、液体の界面形状の変化は、ダイナモルフレンズを通る光の屈折角を変化させ、ダイナモルフレンズの焦点位置を可変させる。
【００２８】
ダイナモルフレンズを光学系５１に採用した場合、制御装置１００は、制御信号を電圧制御装置６０に入力し、電圧制御装置６０からピエゾアクチュエータに印加される制御電圧を調整することで光学系５１の焦点位置を制御する。なお、光学系５１を有するカメラ５０と電圧制御装置６０とを含む撮像システムに代えて、ガラス製レンズやＡＦ（Auto Focus）機構などを搭載したデジタルカメラを適用してもよい。
【００２９】
制御装置１００は、電圧制御装置６０を制御して対象物８０に合焦する焦点位置から、光学系５１の焦点位置をずらしつつカメラ５０に対象物８０を撮像させる。カメラ５０は、各焦点位置で撮像した撮像画像を制御装置１００に入力する。後述するように、制御装置１００は、カメラ５０から入力された複数の撮像画像から、対象物８０を撮像した撮像画像の特徴点を検出する。
【００３０】
以上、第２実施形態に係るシステムの一例について説明した。
［２−２．ハードウェア］
図３は、第２実施形態に係る制御装置のハードウェアの一例を示した図である。制御装置１００は、例えば、図３に示すようなコンピュータとして実現される。
【００３１】
制御装置１００は、プロセッサ１０１によって装置全体が制御されている。プロセッサ１０１は、マルチプロセッサであってもよい。プロセッサ１０１は、例えばＣＰＵ、ＭＰＵ（Micro Processing Unit）、ＤＳＰ、ＡＳＩＣ、又はＰＬＤ（Programmable Logic Device）である。またプロセッサ１０１は、ＣＰＵ、ＭＰＵ、ＤＳＰ、ＡＳＩＣ、ＰＬＤのうちの２以上の要素の組み合わせであってもよい。
【００３２】
プロセッサ１０１には、バス１０９を介して、ＲＡＭ１０２と複数の周辺機器が接続されている。
ＲＡＭ１０２は、制御装置１００の主記憶装置として使用される。ＲＡＭ１０２には、プロセッサ１０１に実行させるＯＳ（Operating System）プログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭ１０２には、プロセッサ１０１による処理に必要な各種データが格納される。
【００３３】
バス１０９に接続されている周辺機器としては、ＨＤＤ１０３、グラフィック処理装置１０４、入力インタフェース１０５、読み取り装置１０６、ネットワークインタフェース１０７及び通信インタフェース１０８がある。
【００３４】
ＨＤＤ１０３は、制御装置１００の補助記憶装置として使用される。ＨＤＤ１０３には、ＯＳプログラム、アプリケーションプログラム、及び各種データが格納される。なお、補助記憶装置としては、ＳＳＤ（Solid State Drive）などの他の種類の不揮発性記憶装置を使用することもできる。
【００３５】
グラフィック処理装置１０４には、表示装置１０４ａが接続されている。グラフィック処理装置１０４は、プロセッサ１０１からの命令にしたがって、画像を表示装置１０４ａの画面に表示させる。表示装置としては、ＣＲＴ（Cathode Ray Tube）を用いた表示装置や液晶表示装置などがある。
【００３６】
入力インタフェース１０５には、入力装置１０５ａが接続されている。入力インタフェース１０５は、入力装置１０５ａから出力される信号をプロセッサ１０１に送信する。入力装置１０５ａとしては、キーボードやポインティングデバイスなどがある。ポインティングデバイスとしては、マウス、タッチパネル、タブレット、タッチパッド、トラックボールなどがある。
【００３７】
読み取り装置１０６には、可搬型記録媒体１０６ａが脱着される。読み取り装置１０６は、可搬型記録媒体１０６ａに記録されたデータを読み取ってプロセッサ１０１に送信する。可搬型記録媒体１０６ａとしては、光ディスク、光磁気ディスク、半導体メモリなどがある。
【００３８】
ネットワークインタフェース１０７は、ネットワーク１０７ａを介して他の装置との間でデータを送受信する。通信インタフェース１０８は、接続された外部デバイスとの間でデータを送受信する。
【００３９】
例えば、上記のカメラ５０及び電圧制御装置６０は、通信インタフェース１０８に接続される。カメラ５０から撮像画像のデータを受信した場合、通信インタフェース１０８は、受信したデータをプロセッサ１０１に送信する。また、プロセッサ１０１は、通信インタフェース１０８を介して電圧制御装置６０に制御信号を送信する。
【００４０】
以上、制御装置１００の機能を実現可能なハードウェアについて説明した。
［２−３．ＳＩＦＴの概要］
ここで、図４を参照しながら、ＳＩＦＴの概要として、ＳＩＦＴにおける特徴点の検出処理について説明する。図４は、ＳＩＦＴについて説明するための図である。
【００４１】
ＳＩＦＴのアルゴリズムは、特徴点の検出及び特徴点の記述という２段階の処理を有する。ここでは主に特徴点の検出に係る処理について説明する。特徴点の検出は、平滑化画像生成、差分画像生成、極値検出、及びローカライズの工程を有する。
【００４２】
平滑化画像生成は、スケールを変えながら元の画像をガウシアンフィルタで平滑化し、スケールに応じたボカシ度を有する複数のボカシ画像を生成する工程である。差分画像生成は、平滑化画像生成で生成された複数のボカシ画像のうち、スケールが隣り合うボカシ画像のペアを順次選択してボカシ画像同士の差分演算を実行し、差分画像を生成する工程である。
【００４３】
極値検出は、差分画像上の画素（注目画素）を選択し、注目画素の近傍にある同じ差分画像上の画素（近傍画素）と、当該近傍画素及び注目画素に対応する隣り合う差分画像上の画素（近傍画素）とを特定する第１の工程を含む。さらに、極値検出は、注目画素及び全ての近傍画素のうち、画素の値（対応するボカシ画像ペアの輝度差；以下、差分出力値）が最大となる画素を特定する第２の工程を含む。第２の工程で特定された画素は、局所特徴点の候補となる。
【００４４】
ローカライズは、局所特徴点の候補を絞り込む工程である。差分出力値が小さい点やエッジ上の点を局所特徴点とするとノイズの影響などを受けやすくなるため、ローカライズの工程では、差分出力値が閾値より小さいものやエッジ上のものは候補から除外される。そして、残った候補が局所特徴点（検出結果）となる。ＳＩＦＴでは、回転に不変な特徴量となるように、検出結果として得られた局所特徴点に回転に関する情報（オリエンテーションの情報）を加えて特徴量が記述される。
【００４５】
ここで、ガウシアンフィルタを用いたボカシ画像の生成方法について、さらに説明する。
ボカシ画像上の画素値Ｌ（ｘ，ｙ，Ｓ）は、下記の式（１）で与えられる。（ｘ，ｙ）は、ボカシ画像上での画素の位置を表す座標である。Ｓは、ガウシアンフィルタによる平滑化の強度（ボカシ度）を表すスケールである。Ｉ（ｘ，ｙ）は、元の画像の座標（ｘ，ｙ）における画素値である。Ｇ（ｘ，ｙ，Ｓ）は、スケールＳのガウス関数であり、下記の式（２）で与えられる。記号「＊」は、畳み込み積分を表す。
【００４６】
【数１】
2016212813.tif 000003
【００４７】
上記の式（２）のように、スケールＳは、ガウス関数の幅を表す。上記の式（１）に含まれる畳み込み積分を実行する際、スケールＳが大きいほど、畳み込みの対象となる範囲が拡がるため、演算量が増大する。ＳＩＦＴでは、図４に示すように、スケールの基準値Ｓ０及び増加率ｋに基づいてスケールＳを増大させつつ、互いに異なるボカシ度を有するボカシ画像ＯＰ０、ＯＰ１、…、ＯＰｎが生成される。そして、これらボカシ画像ＯＰ０、ＯＰ１、…、ＯＰｎの差分演算により差分画像ＤＰ１、ＤＰ２、…、ＤＰｎが生成される。
【００４８】
上記のように、ＳＩＦＴではガウシアンフィルタを利用してボカシ画像を生成する。そのため、ボカシ度が大きなボカシ画像を生成する処理の負荷が高く、平滑化画像生成に長い時間がかかる。これに対し、後述する制御装置１００の機能は、平滑化画像生成にかかる処理時間を短縮する方法を提供する。
【００４９】
なお、平滑化画像生成にかかる処理時間を短縮するために、スケールの大きな領域では元の画像を縮小した縮小画像を利用してボカシ画像を生成する方法もあるが、この方法では元の画像を縮小する際に量子化誤差が生じて情報が失われる分だけ精度が低下する。後述する制御装置１００の機能は、こうした精度の低下を招くことなく処理時間を短縮する方法を提供する。
【００５０】
［２−４．制御装置の機能］
図５を参照しながら、制御装置１００の機能について説明する。図５は、第２実施形態に係る制御装置が有する機能の一例を示した図である。
【００５１】
図５に示すように、制御装置１００は、記憶部１１１、撮像制御部１１２、焦点位置決定部１１３、及び特徴点検出部１１４を有する。
なお、記憶部１１１の機能は、上述したＲＡＭ１０２やＨＤＤ１０３などを利用して実現可能である。撮像制御部１１２、焦点位置決定部１１３、及び特徴点検出部１１４の機能は、上述したプロセッサ１０１の機能を利用して実現可能である。
【００５２】
記憶部１１１は、ボカシ度情報１１１ａを有する。ボカシ度情報１１１ａは、実現するボケの大きさに対応し、ボカシの度合いを表すボカシ度と、そのボカシ度を実現できる光学系５１の焦点位置とを対応付ける情報である。ボカシ度は、ガウシアンフィルタを利用して合焦画像を平滑化した場合のボカシ度を示すスケールＳを用いて表現することができる。また、図６に示すように、上述したスケールの基準値Ｓ０の係数をボカシ度として用いてもよい。図６は、第２実施形態に係るボカシ度情報の一例を示した図である。
【００５３】
撮像制御部１１２は、カメラ５０及び電圧制御装置６０を制御する。撮像制御部１１２は、電圧制御装置６０に制御信号を入力して光学系５１に印加される制御電圧を制御する。例えば、撮像制御部１１２は、ボカシ度情報１１１ａに記載された焦点位置となるように、電圧制御装置６０を介して光学系５１のフォーカス調整機構を制御する。また、撮像制御部１１２は、カメラ５０に対象物８０を撮像させ、その撮像画像をカメラ５０から取得する。
【００５４】
焦点位置決定部１１３は、ボカシ度情報１１１ａを生成する。なお、ボカシ度情報１１１ａの生成は、任意の対象物８０について特徴点の検出を実行する前に、予め用意された対象物８０について事前に実行される。
【００５５】
焦点位置決定部１１３は、撮像制御部１１２を介して、対象物８０に合焦する焦点位置（合焦位置）で撮像した撮像画像（合焦画像）を取得する。そして、焦点位置決定部１１３は、ボカシ度情報１１１ａに登録する各ボカシ度について、取得した合焦画像をガウシアンフィルタで平滑化してボカシ画像を生成する。
【００５６】
また、焦点位置決定部１１３は、撮像制御部１１２を介して、合焦位置から焦点位置をずらしながら撮像した撮像画像を取得する。そして、焦点位置決定部１１３は、ガウシアンフィルタを用いて生成したボカシ画像と、取得した撮像画像とを比較する。ボカシ画像と撮像画像とが一致した場合、焦点位置決定部１１３は、そのボカシ画像の生成に用いたボカシ度と、その撮像画像の撮像時に設定した焦点位置とを対応付けてボカシ度情報１１１ａに登録する。これらの処理を繰り返すことでボカシ度情報１１１ａが生成される。
【００５７】
特徴点検出部１１４は、任意の対象物８０の撮像画像から局所特徴点を検出する。特徴点検出部１１４は、差分計算部１１４ａ、極値検出部１１４ｂ、及び特徴点決定部１１４ｃを有する。差分計算部１１４ａは、ボカシ度情報１１１ａに登録された焦点位置で撮像された撮像画像のうち、焦点位置が隣り合う撮像画像のペアから差分画像を生成する。
【００５８】
極値検出部１１４ｂは、図４の差分画像生成と同様に、差分計算部１１４ａが生成した差分画像から差分出力値の極値を検出する。特徴点決定部１１４ｃは、極値検出によって検出された局所特徴点の候補から、差分出力値が閾値より小さい候補やエッジ上の候補を除外し、残った候補を局所特徴点（検出結果）とする。
【００５９】
上記のように、制御装置１００は、光学系５１のフォーカス調整機構を制御し、カメラ５０を用いてボカシ画像を取得する。そのため、ガウシアンフィルタを用いてボカシ画像を生成する場合に比べて高速に特徴点を検出することができる。また、ガウシアンフィルタを利用して平滑化する場合のボカシ度と、光学系５１の焦点位置とを対応付けておくことで、ＳＩＦＴと同様の仕組みで差分画像生成及び極値検出を実現することができる。
【００６０】
以上、制御装置１００の機能について説明した。制御装置１００によれば、合焦位置から焦点位置をずらして撮像した複数の撮像画像を利用して特徴点が検出されるため、ソフトウェア処理でボカシ画像を得るＳＩＦＴなどの特徴点検出技術に比べて高速な処理を実現することができる。
【００６１】
［２−５．処理フロー］
次に、制御装置１００が実行する処理の流れについて説明する。
（ボカシ度情報の生成処理）
図７を参照しながら、ボカシ度情報１１１ａの生成処理の流れについて説明する。図７は、第２実施形態に係るボカシ度情報の生成処理の流れを示したフロー図である。
【００６２】
（Ｓ１０１）焦点位置決定部１１３は、撮像制御部１１２を介して、対象物８０に合焦した状態で撮像された画像（合焦画像）をカメラ５０から取得する。このとき、撮像制御部１１２は、電圧制御装置６０を制御して対象物８０に合焦させ、カメラ５０に対象物８０を撮像させる。そして、撮像制御部１１２は、カメラ５０から合焦画像を取得し、焦点位置決定部１１３に入力する。
【００６３】
（Ｓ１０２）焦点位置決定部１１３は、ボカシ度情報１１１ａに登録するために予め設定されたボカシ度の中から未選択のボカシ度を１つ選択する。ボカシ度は、例えば、ガウシアンフィルタに設定されるスケールＳや、スケールＳの基準値Ｓ０にかける係数で表現できる（図６を参照）。また、特徴点の検出に用いるボカシ画像の数だけボカシ度が設定される。
【００６４】
（Ｓ１０３）焦点位置決定部１１３は、平滑化フィルタで合焦画像を平滑化し、平滑化画像（平滑化フィルタで生成したボカシ画像）を生成する。これまでは平滑化フィルタとしてガウシアンフィルタを例に説明しているが、例えば、移動平均フィルタなどの他の平滑化フィルタを利用することもできる。
【００６５】
（Ｓ１０４）焦点位置決定部１１３は、撮像制御部１１２を介して、合焦画像を撮像した焦点位置（合焦位置）から焦点位置をずらして撮像した画像（ボカシ画像）を取得する。
【００６６】
例えば、焦点位置決定部１１３は、予め設定されたズレ量だけ焦点位置をずらしてボカシ画像を撮像するように撮像制御部１１２を制御する。撮像制御部１１２は、焦点位置決定部１１３による制御に応じて、上記のズレ量だけ合焦位置から遠い方へ焦点位置をずらすように電圧制御装置６０を介して光学系５１の焦点位置を移動させ、各焦点位置で対象物８０を撮像するようにカメラ５０を制御する。そして、撮像制御部１１２は、カメラ５０から各焦点位置に対応するボカシ画像を取得し、取得したボカシ画像を焦点位置決定部１１３に入力する。
【００６７】
（Ｓ１０５）焦点位置決定部１１３は、Ｓ１０３で生成した平滑化画像と、撮像制御部１１２から入力されたボカシ画像とが一致するか否かを判定する。例えば、焦点位置決定部１１３は、平滑化画像とボカシ画像との差分を計算し、差分量が予め設定した閾値より小さい場合に両画像が一致したと判定する。差分量としては、例えば、輝度差の絶対値和などを利用することができる。両画像が一致した場合、処理はＳ１０６へと進む。一方、両画像が不一致である場合、処理はＳ１０４へと進む。
【００６８】
なお、焦点位置決定部１１３は、ＳＩＦＴ、ＳＵＲＦ（Speeded Up Robust Features）、ＢＲＩＥＦ（Binary Robust Independent Elementary Feature）、ＯＲＢ（Oriented FAST and Rotated BRIEF）、ＢＲＩＳＫ（Binary Robust Invariant Scalable Keypoints）などの特徴量に基づく画像マッチング技術を利用して両画像の一致度を判定してもよい。
【００６９】
（Ｓ１０６）焦点位置決定部１１３は、選択したボカシ度と、Ｓ１０４でボカシ画像を取得する際に用いた焦点位置とを対応付けてボカシ度情報１１１ａに追加する。
（Ｓ１０７）焦点位置決定部１１３は、ボカシ度を選択し終えたか否かを判定する。ボカシ度を選択し終えた場合、図７に示した一連の処理は終了する。一方、未選択のボカシ度がある場合、処理はＳ１０２へと進む。
【００７０】
以上、ボカシ度情報１１１ａの生成処理の流れについて説明した。
（特徴点の検出処理）
次に、図８及び図９を参照しながら、特徴点の検出処理の流れについて説明する。図８は、第２実施形態に係る特徴点の検出処理の流れを示した第１のフロー図である。図９は、第２実施形態に係る特徴点の検出処理の流れを示した第２のフロー図である。
【００７１】
（Ｓ１１１）撮像制御部１１２は、ボカシ度情報１１１ａに登録されているボカシ度の中から未選択のボカシ度を１つ選択する。このとき、撮像制御部１１２は、ボカシ度が小さい順に未選択のボカシ度を選択する。そして、撮像制御部１１２は、ボカシ度情報１１１ａを参照し、選択したボカシ度に対応する焦点位置を特定する。
【００７２】
（Ｓ１１２）撮像制御部１１２は、光学系５１の焦点位置がＳ１１１で特定した焦点位置となるように電圧制御装置６０を制御する。そして、撮像制御部１１２は、その焦点位置でカメラ５０に対象物８０を撮像させ、カメラ５０からボカシ画像を取得する。撮像制御部１１２は、取得したボカシ画像を記憶部１１１に格納する。
【００７３】
（Ｓ１１３）差分計算部１１４ａは、差分計算の対象となるボカシ画像がある場合、ボカシ画像の差分を計算して差分画像を生成する。そして、差分計算部１１４ａは、生成した差分画像を記憶部１１１に格納する。
【００７４】
差分画像は、焦点位置が隣り合うボカシ画像の差分である。つまり、差分計算部１１４ａは、撮像制御部１１２が取得したボカシ画像と、Ｓ１１１で特定した焦点位置より合焦位置に近い焦点位置で撮像されたボカシ画像との差分画像が生成される。そのため、Ｓ１１１で特定した焦点位置より合焦位置に近い焦点位置で撮像されたボカシ画像が記憶部１１１にない場合にはＳ１１３の処理はスキップされる。
【００７５】
（Ｓ１１４）撮像制御部１１２は、ボカシ度情報１１１ａに登録されているボカシ度を選択し終えたか否かを判定する。ボカシ度を選択し終えた場合、処理は図９のＳ１１５へと進む。一方、未選択のボカシ度がある場合、処理はＳ１１１へと進む。
【００７６】
（Ｓ１１５）極値検出部１１４ｂは、記憶部１１１に格納された差分画像の中から、ボカシ度が小さい未選択の差分画像を１つ選択する。
（Ｓ１１６）極値検出部１１４ｂは、Ｓ１１５で選択した差分画像内の画素（注目画素）を１つ選択する。
【００７７】
（Ｓ１１７）極値検出部１１４ｂは、注目画素と同じ差分画像内で注目画素の近傍にある画素を近傍画素として特定する。近傍画素の範囲は、例えば、注目画素を囲む８画素などと予め設定されている（図４の差分画像ＤＰ２の太枠参照）。また、極値検出部１１４ｂは、注目画素がある差分画像とボカシ度が隣り合う差分画像の画素の中から、注目画素がある差分画像内の注目画素及び近傍画素に位置が対応する画素を近傍画素として特定する（図４の差分画像ＤＰ１、ＤＰ３の太枠参照）。
【００７８】
また、極値検出部１１４ｂは、注目画素と、特定した近傍画素とを含む画素の集合から、極値をとる画素を特定する。つまり、極値検出部１１４ｂは、この集合に含まれる各画素の値（差分出力値）を比較し、局所特徴点の候補（特徴点候補）として、差分出力値が最大となる画素を特定する。極値検出部１１４ｂは、特徴点候補の情報を記憶部１１１に格納する。
【００７９】
なお、極値検出に用いる差分画像の数は予め設定される。例えば、差分画像の数が３枚（図４を参照）に設定され、注目画素を含む差分画像よりも対応するボカシ度が小さい差分画像と、対応するボカシ度が大きい差分画像とが極値検出に用いられる。もちろん、極値検出に用いる差分画像の数は４枚以上であってもよい。
【００８０】
（Ｓ１１８）極値検出部１１４ｂは、注目画素として、Ｓ１１５で選択した差分画像内の画素を選択し終えたか否かを判定する。全ての画素を選択し終えた場合、処理はＳ１１９へと進む。一方、未選択の画素がある場合、処理はＳ１１６へと進む。
【００８１】
（Ｓ１１９）極値検出部１１４ｂは、記憶部１１１に格納されている差分画像を選択し終えたか否かを判定する。差分画像を選択し終えた場合、処理はＳ１２０へと進む。一方、未選択の差分画像がある場合、処理はＳ１１５へと進む。
【００８２】
（Ｓ１２０）特徴点決定部１１４ｃは、記憶部１１１に格納された特徴点候補の情報を参照し、差分出力値が予め設定された閾値より小さい特徴点候補やエッジ上の特徴点候補を除外する。そして、特徴点決定部１１４ｃは、除外後に残った特徴点候補を局所特徴点に決定する。なお、決定された局所特徴点の情報は、例えば、回転に不変な特徴量となるように、回転に関する情報（オリエンテーションの情報）を加えた形で記述される。
【００８３】
Ｓ１２０の処理が完了すると、図８及び図９に示した一連の処理は終了する。
以上、特徴点の検出処理の流れについて説明した。この特徴点の検出処理によれば、合焦位置から焦点位置をずらして撮像した複数の撮像画像を利用して特徴点が検出されるため、ソフトウェア処理でボカシ画像を得るＳＩＦＴなどの特徴点検出技術に比べて高速な処理を実現することができる。
【００８４】
［２−６．変形例］
次に、第２実施形態の変形例について説明する。
既に説明したように、ガウシアンフィルタを利用したボカシ画像の生成処理にかかる時間（平滑化処理時間）は、スケールが大きくなるほど長くなる。一方、第２実施形態では、焦点位置を合焦位置からずらして撮像した撮像画像をボカシ画像として利用するため、ボカシ画像の生成時間（撮像処理時間）はボカシ度によらず一定である。そのため、図１０に示すように、ボカシ度が大きい領域では平滑化処理時間に比べて撮像処理時間の方が短くなる。
【００８５】
図１０は、平滑化フィルタによるボカシ画像の生成処理時間と、撮像処理によるボカシ画像の生成処理時間とを比較した図である。なお、図１０では横軸をガウシアン直径としているが、これは上述したスケールＳに相当する量であり、ボカシ度の大きさを表す。また、図１０の矢印（ａ）は、平滑化処理時間と撮像処理時間とが一致する点におけるガウシアン直径（以下、分岐点）を指す。
【００８６】
図１０に示したグラフは試験的に用意した環境で実験した結果であるが、ボカシ度の増加に対して平滑化処理時間が増加する傾向は、上記の式（１）及び式（２）からも理論的に明らかである。また、撮像処理時間は、ダイナモルフレンズを利用した計測システムに適用する場合だけでなく、デジタルカメラなどの汎用機材を利用した場合でも誤差の範囲で一定になる。これらの傾向から既に説明した制御装置１００を適用することで、特徴点の検出処理が高速化されることは明らかである。
【００８７】
但し、分岐点以下では、平滑化処理時間が撮像処理時間より短くなる。そこで、第２実施形態の一変形例として、分岐点よりボカシ度が大きな領域では撮像処理によるボカシ画像の生成を実施し、分岐点よりボカシ度が小さな領域では平滑化処理によるボカシ画像の生成を実施する併用方式を提案する。なお、分岐点より小さい領域の処理時間が全体に占める割合が小さい場合には、併用方式を採用せず、撮像処理によるボカシ画像の生成を単独で実施する方式の方がアルゴリズムが簡単化される点でメリットがある。
【００８８】
（フィルタ処理を併用する例）
併用方式を採用する場合、特徴点の検出処理は、図１１のように変形される。図１１は、第２実施形態の一変形例（フィルタ処理を併用する例）に係る特徴点の検出処理の流れを示したフロー図である。
【００８９】
（Ｓ２０１）撮像制御部１１２は、ボカシ度情報１１１ａに登録されているボカシ度の中から未選択のボカシ度を１つ選択する。このとき、撮像制御部１１２は、ボカシ度が小さい順に未選択のボカシ度を選択する。
【００９０】
（Ｓ２０２）撮像制御部１１２は、Ｓ２０１で選択したボカシ度が、分岐点を判定するために予め設定した閾値より大きいか否かを判定する。この閾値は、分岐点におけるボカシ度の値、又はボカシ度情報１１１ａに登録されたボカシ度のうち分岐点の前後に位置するボカシ度を判定できる値に設定される。ボカシ度が閾値より大きい場合、処理はＳ２０３へと進む。一方、ボカシ度が閾値より大きくない場合、処理はＳ２０５へと進む。
【００９１】
（Ｓ２０３）撮像制御部１１２は、ボカシ度情報１１１ａを参照し、Ｓ２０１で選択したボカシ度に対応する焦点位置を特定する。
（Ｓ２０４）撮像制御部１１２は、光学系５１の焦点位置がＳ２０１で特定した焦点位置となるように電圧制御装置６０を制御する。そして、撮像制御部１１２は、その焦点位置でカメラ５０に対象物８０を撮像させ、カメラ５０からボカシ画像を取得する。撮像制御部１１２は、取得したボカシ画像を記憶部１１１に格納する。Ｓ２０４の処理が完了すると、処理はＳ２０６へと進む。
【００９２】
（Ｓ２０５）特徴点検出部１１４は、平滑化フィルタで合焦画像を平滑化し、平滑化フィルタで生成したボカシ画像（平滑化画像）を生成する。特徴点検出部１１４は、例えば、ガウシアンフィルタや移動平均フィルタなどを利用してボカシ画像を生成する。特徴点検出部１１４は、生成したボカシ画像を記憶部１１１に格納する。
【００９３】
なお、合焦画像は、撮像制御部１１２により事前に取得され、記憶部１１１に格納されている。つまり、図１１の処理を開始する前に、撮像制御部１１２は、電圧制御装置６０を制御して対象物８０に合焦させ、カメラ５０に対象物８０を撮像させる。そして、撮像制御部１１２は、カメラ５０から合焦画像を取得し、合焦画像を記憶部１１１に格納する。
【００９４】
（Ｓ２０６）差分計算部１１４ａは、差分計算の対象となるボカシ画像がある場合、ボカシ画像の差分を計算して差分画像を生成する。そして、差分計算部１１４ａは、生成した差分画像を記憶部１１１に格納する。なお、上述したＳ１１３と同様、Ｓ２０３で特定した焦点位置より合焦位置に近い焦点位置に対応するボカシ画像（取得又は生成されたボカシ画像）が記憶部１１１にない場合にはＳ２０６の処理はスキップされる。
【００９５】
（Ｓ２０７）撮像制御部１１２は、ボカシ度情報１１１ａに登録されているボカシ度を選択し終えたか否かを判定する。ボカシ度を選択し終えた場合、処理は図９のＳ１１５へと進む（Ｓ１１５以降の処理は同じである）。一方、未選択のボカシ度がある場合、処理はＳ２０１へと進む。
【００９６】
以上、併用方式における特徴点の検出処理について説明した。併用方式を適用することで、さらに特徴点の検出処理を高速化することができる。
（並行処理の例）
上記の併用方式を採用する場合、撮像処理でボカシ画像を取得する間は主に電圧制御装置６０やカメラ５０に負荷がかかり、平滑化処理でボカシ画像を生成する間は主にプロセッサ１０１に負荷がかかる。つまり、両処理で負荷がかかる対象が異なるため、これら２つの処理を並行して実行すれば、ほとんど負荷の増大を招くことなく処理をさらに高速化することができる。ここでは第２実施形態の更なる変形例として、並行処理方式を提案する。
【００９７】
並行処理方式を採用する場合、特徴点の検出処理は、図１２及び図１３のように変形される。図１２は、第２実施形態の一変形例（並行処理の例）に係る特徴点の検出処理の流れを示した第１のフロー図である。図１３は、第２実施形態の一変形例（並行処理の例）に係る特徴点の検出処理の流れを示した第２のフロー図である。
【００９８】
処理が開始されると、Ｓ３０１及び図１３のＳ３０６の処理が並行して実行される。
（Ｓ３０１）撮像制御部１１２は、ボカシ度情報１１１ａに登録されているボカシ度の中から未選択のボカシ度を１つ選択する。このとき、撮像制御部１１２は、上述した分岐点に対応する閾値以上の範囲にあるボカシ度から、小さい順に未選択のボカシ度を選択する。この閾値は、分岐点におけるボカシ度の値、又はボカシ度情報１１１ａに登録されたボカシ度のうち分岐点の前後に位置するボカシ度を判定できる値に設定され、記憶部１１１に格納される。
【００９９】
（Ｓ３０２）撮像制御部１１２は、ボカシ度情報１１１ａを参照し、Ｓ３０１で選択したボカシ度に対応する焦点位置を特定する。
（Ｓ３０３）撮像制御部１１２は、光学系５１の焦点位置がＳ３０１で特定した焦点位置となるように電圧制御装置６０を制御する。そして、撮像制御部１１２は、その焦点位置でカメラ５０に対象物８０を撮像させ、カメラ５０からボカシ画像を取得する。撮像制御部１１２は、取得したボカシ画像を記憶部１１１に格納する。
【０１００】
（Ｓ３０４）差分計算部１１４ａは、差分計算の対象となるボカシ画像がある場合、ボカシ画像の差分を計算して差分画像を生成する。そして、差分計算部１１４ａは、生成した差分画像を記憶部１１１に格納する。なお、上述したＳ２０６と同様、Ｓ３０２で特定した焦点位置より合焦位置に近い焦点位置に対応するボカシ画像（取得又は生成されたボカシ画像）が記憶部１１１にない場合にはＳ３０４の処理はスキップされる。
【０１０１】
（Ｓ３０５）撮像制御部１１２は、分岐点に対応する閾値以上の範囲内にあるボカシ度を選択し終えたか否かを判定する。当該範囲内にあるボカシ度を選択し終えた場合、処理は図１３のＳ３１０へと進む。一方、未選択のボカシ度がある場合、処理はＳ３０１へと進む。
【０１０２】
（Ｓ３０６）特徴点検出部１１４は、ボカシ度情報１１１ａに登録されているボカシ度の中から未選択のボカシ度を１つ選択する。このとき、特徴点検出部１１４は、上述した分岐点に対応する閾値未満の範囲にあるボカシ度から、小さい順に未選択のボカシ度を選択する。なお、特徴点検出部１１４は、記憶部１１１を参照し、Ｓ３０１で撮像制御部１１２が用いた閾値と同じ閾値を用いる。
【０１０３】
（Ｓ３０７）特徴点検出部１１４は、平滑化フィルタで合焦画像を平滑化し、平滑化フィルタで生成したボカシ画像（平滑化画像）を生成する。特徴点検出部１１４は、例えば、ガウシアンフィルタや移動平均フィルタなどを利用してボカシ画像を生成する。特徴点検出部１１４は、生成したボカシ画像を記憶部１１１に格納する。
【０１０４】
なお、合焦画像は、撮像制御部１１２により事前に取得され、記憶部１１１に格納されている。つまり、図１２及び図１３の処理を開始する前に、撮像制御部１１２は、電圧制御装置６０を制御して対象物８０に合焦させ、カメラ５０に対象物８０を撮像させる。そして、撮像制御部１１２は、カメラ５０から合焦画像を取得し、合焦画像を記憶部１１１に格納する。
【０１０５】
（Ｓ３０８）差分計算部１１４ａは、差分計算の対象となるボカシ画像がある場合、ボカシ画像の差分を計算して差分画像を生成する。そして、差分計算部１１４ａは、生成した差分画像を記憶部１１１に格納する。なお、Ｓ３０６で選択したボカシ度より小さいボカシ度に対応するボカシ画像（取得又は生成されたボカシ画像）が記憶部１１１にない場合にはＳ３０８の処理はスキップされる。
【０１０６】
（Ｓ３０９）撮像制御部１１２は、分岐点に対応する閾値未満の範囲内にあるボカシ度を選択し終えたか否かを判定する。当該範囲内にあるボカシ度を選択し終えた場合、処理はＳ３１０へと進む。一方、未選択のボカシ度がある場合、処理はＳ３０６へと進む。
【０１０７】
（Ｓ３１０）差分計算部１１４ａは、閾値前後のボカシ度に対応するボカシ画像のペアについてＳ３０４又はＳ３０８で差分画像が生成されていない場合、当該ペアの差分を計算して差分画像を生成する。そして、差分計算部１１４ａは、生成した差分画像を記憶部１１１に格納する。Ｓ３１０の処理が完了すると、処理は図９のＳ１１５へと進む（Ｓ１１５以降の処理は同じである）。
【０１０８】
以上、並行処理方式における特徴点の検出処理について説明した。並行処理方式を適用することで、さらに特徴点の検出処理を高速化することができる。
（並列処理の効率化）
上記の並列処理方式は、並列処理の対象となるボカシ度の範囲を処理毎に閾値で分けている。そのため、アルゴリズムがシンプルな分、システムの設計や運用が容易となるメリットがある。但し、プロセッサ１０１などのリソースの負荷は処理の実行時の状況によって異なるため、並行して処理を担当する複数のリソースに対して均等に処理対象となるボカシ度の範囲が振り分けられれば、さらなる効率化が期待できる。
【０１０９】
ここでは、図１４及び図１５を参照しながら、上記の並列処理方式の効率をさらに高めた変形例について説明する。図１４は、第２実施形態の一変形例（並行処理の効率化）に係る特徴点の検出処理の流れを示した第１のフロー図である。図１５は、第２実施形態の一変形例（並行処理の効率化）に係る特徴点の検出処理の流れを示した第２のフロー図である。
【０１１０】
（Ｓ３３１）撮像制御部１１２は、ボカシ度情報１１１ａに登録されているボカシ度の中から処理対象とする範囲（対象範囲）を設定する。Ｓ３３１の処理が完了すると、Ｓ３３２及び図１５のＳ３３８の処理が並行して実行される。
【０１１１】
（Ｓ３３２）撮像制御部１１２は、対象範囲の中で最大のボカシ度Ｓmaxを選択し、選択したボカシ度をパラメータＳHに設定する。撮像制御部１１２は、パラメータＳHを記憶部１１１に格納する。
【０１１２】
（Ｓ３３３）撮像制御部１１２は、ボカシ度情報１１１ａを参照し、パラメータＳHと同じボカシ度に対応する焦点位置を特定する。
（Ｓ３３４）撮像制御部１１２は、光学系５１の焦点位置が、Ｓ３３３で特定した焦点位置となるように電圧制御装置６０を制御する。そして、撮像制御部１１２は、その焦点位置でカメラ５０に対象物８０を撮像させ、カメラ５０からボカシ画像を取得する。撮像制御部１１２は、取得したボカシ画像を記憶部１１１に格納する。
【０１１３】
（Ｓ３３５）差分計算部１１４ａは、差分計算の対象となるボカシ画像がある場合、ボカシ画像の差分を計算して差分画像を生成する。そして、差分計算部１１４ａは、生成した差分画像を記憶部１１１に格納する。なお、Ｓ３３４で特定した焦点位置より合焦位置に近い焦点位置に対応するボカシ画像が記憶部１１１にない場合にはＳ３３５の処理はスキップされる。
【０１１４】
（Ｓ３３６）撮像制御部１１２は、ボカシ度情報１１１ａを参照し、現在パラメータＳHに設定されているボカシ度の次に小さいボカシ度を選択する。そして、撮像制御部１１２は、選択したボカシ度を新たにパラメータＳHに設定する。また、撮像制御部１１２は、記憶部１１１に格納されているパラメータＳHを新たに設定したパラメータＳHに更新する。
【０１１５】
（Ｓ３３７）撮像制御部１１２は、記憶部１１１を参照し、パラメータＳHと、後述するＳ３３８以降の処理で設定されているパラメータＳSとを比較し、ＳHがＳS未満であるか否かを判定する。ＳHがＳS未満である場合、処理は図９のＳ１１５へと進む（Ｓ１１５以降の処理は同じである）。一方、ＳHがＳS未満でない場合、処理はＳ３３３へと進む。
【０１１６】
（Ｓ３３８）特徴点検出部１１４は、対象範囲の中で最小のボカシ度Ｓminを選択し、選択したボカシ度をパラメータＳSに設定する。撮像制御部１１２は、パラメータＳSを記憶部１１１に格納する。
【０１１７】
（Ｓ３３９）特徴点検出部１１４は、ボカシ度としてパラメータＳSを設定した平滑化フィルタで合焦画像を平滑化し、平滑化フィルタで生成したボカシ画像（平滑化画像）を生成する。特徴点検出部１１４は、例えば、ガウシアンフィルタや移動平均フィルタなどを利用してボカシ画像を生成する。特徴点検出部１１４は、生成したボカシ画像を記憶部１１１に格納する。
【０１１８】
なお、合焦画像は、撮像制御部１１２により事前に取得され、記憶部１１１に格納されている。つまり、図１４及び図１５の処理を開始する前に、撮像制御部１１２は、電圧制御装置６０を制御して対象物８０に合焦させ、カメラ５０に対象物８０を撮像させる。そして、撮像制御部１１２は、カメラ５０から合焦画像を取得し、合焦画像を記憶部１１１に格納する。
【０１１９】
（Ｓ３４０）差分計算部１１４ａは、差分計算の対象となるボカシ画像がある場合、ボカシ画像の差分を計算して差分画像を生成する。そして、差分計算部１１４ａは、生成した差分画像を記憶部１１１に格納する。なお、パラメータＳSより小さいボカシ度に対応するボカシ画像が記憶部１１１にない場合にはＳ３４０の処理はスキップされる。
【０１２０】
（Ｓ３４１）撮像制御部１１２は、ボカシ度情報１１１ａを参照し、現在パラメータＳSに設定されているボカシ度の次に大きいボカシ度を選択する。そして、撮像制御部１１２は、選択したボカシ度を新たにパラメータＳSに設定する。また、撮像制御部１１２は、記憶部１１１に格納されているパラメータＳSを新たに設定したパラメータＳSに更新する。
【０１２１】
（Ｓ３４２）撮像制御部１１２は、記憶部１１１を参照し、パラメータＳHと、パラメータＳSとを比較し、ＳHがＳS未満であるか否かを判定する。ＳHがＳS未満である場合、処理は図９のＳ１１５へと進む（Ｓ１１５以降の処理は同じである）。一方、ＳHがＳS未満でない場合、処理はＳ３３９へと進む。
【０１２２】
以上、並行処理方式の変形例について説明した。この変形例では、ボカシ度の大きい方から順に撮像処理（ハードウェア処理）に基づくボカシ画像の生成が実施され、ボカシ度の小さい方から順に平滑化処理（ソフトウェア処理）に基づくボカシ画像の生成が実施される。そして対象範囲に設定した全てのボカシ度についてボカシ画像が得られたタイミングで両処理が終了するため、リソースを無駄なく利用することができる。その結果、さらなる処理の効率化が実現できる。
【０１２３】
（その他の変形例）
（１）上記のように、ボカシ画像が蓄積されると差分画像の生成処理が実行可能になり、差分画像が蓄積されると極値検出の処理が実行可能になる。そのため、ボカシ画像の取得／生成処理を進めながら、蓄積されたボカシ画像を利用して差分画像を生成する処理を進めることができる。また、ボカシ画像の取得／生成処理及び差分画像の生成処理を進めながら、蓄積された差分画像を利用して極値検出の処理を進めることができる。そのため、ボカシ画像の取得／生成処理、差分画像の生成処理、極値検出の処理を並行実施するように変形することで、更なる高速化を図ることができる。
【０１２４】
（２）これまではＳＩＦＴと同様に差分画像から検出した極値に基づいて局所特徴点を抽出する処理について説明してきたが、例えば、段階的にボカシ度が異なるボカシ画像の二次微分画像のゼロ交差に基づいて輪郭線を検出する方法などにも第２実施形態の技術を応用することができる。つまり、第２実施形態の技術は、段階的にボカシ度が異なる多数のボカシ画像を利用して画像を処理する技術に広く応用することが可能である。こうした変形例についても第２実施形態の技術的範囲に属する。
【０１２５】
以上、第２実施形態について説明した。
【符号の説明】
【０１２６】
１０  画像処理装置
１１  記憶部
１１ａ  情報
１２  制御部
１３  演算部
２０  撮像装置
２１  焦点可変光学系
２２  被写体
ｂ０、ｂ１、ｂ２、ｂ３  設定値
ｆ０、ｆ１、ｆ２、ｆ３  第２の焦点位置
Ｐ０、Ｐ１、Ｐ２、Ｐ３  画像
ｐＤ１、ｐＤ２、ｐＤ３  画像差分
【図１】
2016212813.tif 000004
【図２】
2016212813.tif 000005
【図３】
2016212813.tif 000006
【図４】
2016212813.tif 000007
【図５】
2016212813.tif 000008
【図６】
2016212813.tif 000009
【図７】
2016212813.tif 000010
【図８】
2016212813.tif 000011
【図９】
2016212813.tif 000012
【図１０】
2016212813.tif 000013
【図１１】
2016212813.tif 000014
【図１２】
2016212813.tif 000015
【図１３】
2016212813.tif 000016
【図１４】
2016212813.tif 000017
【図１５】
2016212813.tif 000018