(57)【要約】【課題】エッジ近傍の特徴点を用いた類似度判定の精度を向上させる。【解決手段】画像処理システム１０は、探索部１１、特定部１２および算出部１３を備える。探索部１１は、対象物を含む第１の画像内のエッジの近傍に存在する第１の特徴点について、第２の画像内のエッジの近傍に存在する第２の特徴点の中から類似特徴点の探索を行う。特定部１２は、類似特徴点の探索結果に基づいて、第２の画像内に対象物が位置する対象物範囲を特定する。算出部１３は、対象物範囲に含まれる第２の特徴点のうち、探索によって類似すると判定された特徴点の数と、相違すると判定された特徴点の数とに基づいて、第１の画像と第２の画像との類似度を算出する。【選択図】図１
2017072940.tif 000002
【特許請求の範囲】
【請求項１】
対象物を含む第１の画像内のエッジの近傍に存在する第１の特徴点について、第２の画像内のエッジの近傍に存在する第２の特徴点の中から類似特徴点の探索を行う探索部と、
前記類似特徴点の探索結果に基づいて、前記第２の画像内に前記対象物が位置する対象物範囲を特定する特定部と、
前記対象物範囲に含まれる前記第２の特徴点のうち、前記探索によって類似すると判定された特徴点の数と、相違すると判定された特徴点の数とに基づいて、前記第１の画像と前記第２の画像との類似度を算出する算出部と、
を有する画像処理システム。
【請求項２】
前記特定部は、前記類似特徴点の探索結果に基づいて、前記第２の画像に含まれる前記第１の画像に相当する領域の中心位置を特定するための投票処理を行い、投票された位置に基づいて前記対象物範囲を特定する、
請求項１記載の画像処理システム。
【請求項３】
前記特定部は、前記投票処理によって投票された位置に基づいて前記対象物範囲の候補を複数特定し、
前記算出部は、前記各候補について前記類似度を算出する、
請求項２記載の画像処理システム。
【請求項４】
前記特定部は、前記投票処理によって投票された複数の位置のうち、投票数が所定の閾値以上の位置について前記候補を特定する、
請求項３記載の画像処理システム。
【請求項５】
前記探索部は、前記第１の画像内に所定間隔で配置された特徴点の中から前記第１の特徴点を選択し、前記第２の画像内に所定間隔で配置された特徴点の中から前記第２の特徴点を選択する、
請求項１乃至４のいずれか１項に記載の画像処理システム。
【請求項６】
コンピュータが、
対象物を含む第１の画像内のエッジの近傍に存在する第１の特徴点について、第２の画像内のエッジの近傍に存在する第２の特徴点の中から類似特徴点の探索を行い、
前記類似特徴点の探索結果に基づいて、前記第２の画像内に前記対象物が位置する対象物範囲を特定し、
前記対象物範囲に含まれる前記第２の特徴点のうち、前記探索によって類似すると判定された特徴点の数と、相違すると判定された特徴点の数とに基づいて、前記第１の画像と前記第２の画像との類似度を算出する、
画像処理方法。
【請求項７】
コンピュータに、
対象物を含む第１の画像内のエッジの近傍に存在する第１の特徴点について、第２の画像内のエッジの近傍に存在する第２の特徴点の中から類似特徴点の探索を行い、
前記類似特徴点の探索結果に基づいて、前記第２の画像内に前記対象物が位置する対象物範囲を特定し、
前記対象物範囲に含まれる前記第２の特徴点のうち、前記探索によって類似すると判定された特徴点の数と、相違すると判定された特徴点の数とに基づいて、前記第１の画像と前記第２の画像との類似度を算出する、
処理を実行させる画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理システム、画像処理方法および画像処理プログラムに関する。
【背景技術】
【０００２】
近年、様々な分野で画像のマッチング技術が広く利用されている。画像同士のマッチング方法の例として、第１画像の特徴点における局所特徴量と、第２画像の特徴点における局所特徴量とを比較して、第１画像の特徴点に対応する第２画像の特徴点（以下、「対応点」と呼ぶ）を探索する手法が利用される。探索により発見された対応点の集合を統計処理することで、第２画像における第１画像の存在や第１画像の位置を認識できる。
【０００３】
また、上記のような対応点の探索に利用される局所特徴量をバイナリコードで表す方法がある。その代表例として、ＢＲＩＥＦ（Binary Robust Independent Elementary Features）がある。ＢＲＩＥＦは、特徴点の周囲に設定された複数の画素ペアのそれぞれについて計算された画素間の輝度差に基づく局所特徴量で表現される。例えば、輝度差の符号（正負）に対応するビット値の集合が局所特徴量として利用される。このように局所特徴量をバイナリコードで表す方法では、ハミング距離による高速な計算によって特徴点同士の類似度を算出できるというメリットがある。
【０００４】
一方、特徴量同士の類似度判定を行う画像処理技術の例として、モデル画像のエッジ上の点における特徴量であるモデル画像特徴量と、入力画像のエッジ上の点における特徴量である入力画像特徴量とのマッチングを行う画像処理方法が提案されている。
【０００５】
また、参照画像において、基準点から方位に存在するエッジまでの距離とエッジの向きとによって算出された局所特徴量と、任意画像において、該距離と該向きによって算出された局所特徴量との一致度合いを判定する画像処理方法が提案されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００８−２４３１７５号公報
【特許文献２】特開２０１０−１５２５４３号公報
【非特許文献】
【０００７】
【非特許文献１】M. Calonder, V. Lepetit, C. Strecha, and P. Fua., "BRIEF: Binary Robust Independent Elementary Features", In Proceedings of the European Conference on Computer Vision (ECCV), 2010
【発明の概要】
【発明が解決しようとする課題】
【０００８】
上記のような特徴点同士の類似度判定では、エッジ近傍の特徴点を用いることで、マッチングに用いるための全体の特徴点の数を減らすことできる。しかし、エッジ近傍の特徴点を用いた判定では、エッジ部分だけが類似すれば類似度が高くなるので、画像によっては誤判定が生じやすく、類似度判定の精度が低下するという問題がある。
【０００９】
１つの側面では、本発明は、エッジ近傍の特徴点を用いた場合の類似度判定の精度の向上を図った画像処理システム、画像処理方法および画像処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
１つの案では、画像処理システムが提供される。画像処理システムは、対象物を含む第１の画像内のエッジの近傍に存在する第１の特徴点について、第２の画像内のエッジの近傍に存在する第２の特徴点の中から類似特徴点の探索を行う探索部と、前記類似特徴点の探索結果に基づいて、前記第２の画像内に前記対象物が位置する対象物範囲を特定する特定部と、前記対象物範囲に含まれる前記第２の特徴点のうち、前記探索によって類似すると判定された特徴点の数と、相違すると判定された特徴点の数とに基づいて、前記第１の画像と前記第２の画像との類似度を算出する算出部とを有する。
【００１１】
また、１つの案では、上記の画像処理システムに基づく処理と同様の処理を実行する画像処理方法が提供される。
さらに、１つの案では、上記の画像処理システムに基づく処理と同様の処理を実行する画像処理プログラムが提供される。
【発明の効果】
【００１２】
１つの側面では、エッジ近傍の特徴点を用いた類似度判定の精度を向上させることができる。
【図面の簡単な説明】
【００１３】
【図１】第１の実施の形態に係る画像処理システムの構成例および処理例を示す図である。
【図２】第２の実施の形態に係る画像処理装置のハードウェア構成例を示す図である。
【図３】画像処理装置が備える処理機能の構成例を示すブロック図である。
【図４】画素ペア管理テーブルの構成例を示す図である。
【図５】局所特徴量を算出する処理の例を示す図である。
【図６】特徴量管理テーブルの構成例を示す図である。
【図７】投票処理を説明するための図である。
【図８】投票結果に基づく類似画像の判定処理について説明するための図である。
【図９】エッジ近傍の特徴点を用いた類似度判定の評価について説明するための図である。
【図１０】エッジ近傍の特徴点を用いた類似度判定の評価について説明するための図である。
【図１１】エッジ近傍の特徴点を用いた類似度判定の評価について説明するための図である。
【図１２】エッジ近傍の特徴点を用いた類似度判定の評価について説明するための図である。
【図１３】対象物範囲の特定について説明するための図である。
【図１４】類似度評価について説明するための図である。
【図１５】類似度評価について説明するための図である。
【図１６】評価結果を示す図である。
【図１７】画像認識処理の例を示すフローチャートである。
【図１８】対象物範囲の特定および類似度評価の処理例を示すフローチャートである。
【図１９】第３の実施の形態に係る画像処理システムの構成例を示す図である。
【図２０】端末装置のハードウェア構成例を示す図である。
【図２１】端末装置およびサーバ装置の処理機能の構成例を示すブロック図である。
【発明を実施するための形態】
【００１４】
以下、本発明の実施の形態について図面を参照して説明する。
［第１の実施の形態］
図１は、第１の実施の形態に係る画像処理システムの構成例および処理例を示す図である。図１に示す画像処理システム１０は、探索部１１、特定部１２および算出部１３を有する。探索部１１、特定部１２および算出部１３の処理は、例えば、プロセッサが所定のプログラムを実行することで実現される。また、探索部１１、特定部１２および算出部１３は、例えば、それぞれ別の装置のプロセッサにおいて実現されていてもよい。
【００１５】
画像処理システム１０内の図示しない記憶装置には、対象物を含むモデル画像（第１の画像）と、認識対象の画像である対象画像（第２の画像）とが記憶されている。図１では例として、モデル画像２０および対象画像２１、２２が記憶されている。
【００１６】
画像処理システム１０は、モデル画像２０と対象画像２１の類似度判定、モデル画像２０と対象画像２２の類似度判定を行う。類似度判定は、類似特徴点探索、対象物範囲特定および類似度評価の各処理を含む。
【００１７】
探索部１１は、上記の類似特徴点探索の処理を実行する。この処理では、モデル画像２０内のエッジの近傍に存在する特徴点（第１の特徴点）と、対象画像２１、２２のそれぞれにおいてエッジの近傍に存在する特徴点（第２の特徴点）とが用いられる。以下の図１の説明では、エッジの近傍にある特徴点を単に「特徴点」と記載する。探索部１１は、モデル画像２０内の特徴点について、対象画像２１、２２のそれぞれに含まれる特徴点の中から類似する特徴点（類似特徴点）の探索を行う。
【００１８】
なお、図１の各画像中に配列している複数の丸印は、特徴点を示している。黒丸は、モデル画像と対象画像との間で類似する特徴点を示している。白丸は、モデル画像と対象画像との間で相違する（類似しない）特徴点を示している。モデル画像２０内の黒丸は、第１の特徴点の例である。対象画像２１、２２内の黒丸及び白丸は、第２の特徴点の例である。
【００１９】
次に、特定部１２は、上記の対象物範囲特定の処理を実行する。特定部１２は、類似特徴点の探索結果に基づいて、対象画像２１、２２内に対象物が位置する対象物範囲を特定する。図１の例では、対象画像２１、２２に対して、対象物範囲２１ａ、２２ａがそれぞれ特定されている。
【００２０】
なお、対象物範囲は、例えば、モデル画像と対象画像との間で類似する特徴点同士の位置関係に基づいて特定される。また、対象物範囲は、例えば、モデル画像において特徴点を含むように設定された領域（例えば、矩形領域）が、対象画像のどの領域に写っているかを示す範囲として定義される。また、例えば、画面一杯に対象物が写っているような認識処理専用のモデル画像が用意されている場合には、対象物範囲は、モデル画像が対象画像のどの領域に写っているかを示す範囲として定義されてもよい。
【００２１】
次に、算出部１３は、上記の類似度評価の処理を実行する。算出部１３は、対象物範囲に含まれる特徴点（第２の特徴点のうち対象物範囲に含まれるもの）のうち、類似特徴点探索によって、類似すると判定された特徴点の数と、相違する（類似しない）と判定された特徴点の数とに基づいて、モデル画像と対象画像との類似度を評価する。
【００２２】
図１の例では、対象画像２１の対象物範囲２１ａに含まれる、類似すると判定された特徴点（対象物範囲２１ａ内の黒丸）の数は、８である。また、対象画像２１の対象物範囲２１ａに含まれる、相違すると判定された特徴点（対象物範囲２１ａ内の白丸）の数は、８である。
【００２３】
一方、対象画像２２の対象物範囲２２ａに含まれる、類似すると判定された特徴点（対象物範囲２２ａ内の黒丸）の数は、７である。また、対象画像２２の対象物範囲２２ａに含まれる、相違すると判定された特徴点（対象物範囲２２ａ内の白丸）の数は、１である。
【００２４】
算出部１３は、対象物範囲に含まれる特徴点のうち、類似すると判定された特徴点の数が多いほど類似度は高く、相違すると判定された特徴点の数が少ないほど類似度は高いと判定する。図１の例では、対象画像２２の方が、相違すると判定された特徴点の数が対象画像２１よりも少ないので、算出部１３は、モデル画像２０と対象画像２１との類似度より、モデル画像２０と対象画像２２との類似度の方が高い値を出力する。
【００２５】
ここで、例えば、モデル画像と対象画像との間で類似すると判定された特徴点の数だけに基づいて画像間の類似度を算出した場合には、画像間でエッジ部の近傍だけが類似していれば、それ以外の領域が類似していなくても、高い類似度が算出される。このため、対象物と類似する他の物体が対象画像に写っている場合に、その対象画像とモデル画像との類似度として高い値が算出され、モデル画像に対象物が写っていると誤認識されてしまう可能性がある。
【００２６】
これに対して、画像処理システム１０は、エッジ近傍の特徴点を用いた画像認識を行う際に、対象画像において対象物が位置する範囲を特定し、特定された範囲内で、モデル画像の特徴点に類似する特徴点の数に加えて、相違する特徴点の数も考慮して、モデル画像と対象画像との類似度を算出する。これにより、類似度判定の精度の向上を図ることができ、誤認識の発生を抑制することができる。さらに、特徴点の数のカウント処理のみで判定を行うことができるため、処理を高速化させることが可能になる。
【００２７】
［第２の実施の形態］
次に、第２の実施の形態として、モデル画像と類似するシーンの対象画像を画像認識により検出する画像処理装置について説明する。なお、第２の実施の形態では、画像の特徴量としてＢＲＩＥＦを用いるが、例えば、ＯＲＢ（Oriented Fast and Rotated BRIEF）、ＢＲＩＳＫ（Binary Robust Invariant Scalable Keypoints）など、特徴点付近に設定した画素ペア間の輝度差を２値化することで得られる他の種類のバイナリ特徴量を用いることもできる。
【００２８】
図２は、第２の実施の形態に係る画像処理装置のハードウェア構成例を示す図である。第２の実施の形態に係る画像処理装置１００は、例えば、図２に示すようなコンピュータとして実現される。
【００２９】
画像処理装置１００は、プロセッサ１０１によって装置全体が制御されている。プロセッサ１０１は、マルチプロセッサであってもよい。プロセッサ１０１は、例えばＣＰＵ（Central Processing Unit）、ＭＰＵ（Micro Processing Unit）、ＤＳＰ（Digital Signal Processor）、ＡＳＩＣ（Application Specific Integrated Circuit）、またはＰＬＤ（Programmable Logic Device）である。またプロセッサ１０１は、ＣＰＵ、ＭＰＵ、ＤＳＰ、ＡＳＩＣ、ＰＬＤのうちの２以上の要素の組み合わせであってもよい。
【００３０】
プロセッサ１０１には、バス１０８を介して、ＲＡＭ（Random Access Memory）１０２と複数の周辺機器が接続されている。
ＲＡＭ１０２は、画像処理装置１００の主記憶装置として使用される。ＲＡＭ１０２には、プロセッサ１０１に実行させるＯＳ（Operating System）プログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭ１０２には、プロセッサ１０１による処理に必要な各種データが格納される。
【００３１】
バス１０８に接続されている周辺機器としては、ＨＤＤ（Hard Disk Drive）１０３、グラフィック処理装置１０４、入力インタフェース１０５、読み取り装置１０６および通信インタフェース１０７がある。
【００３２】
ＨＤＤ１０３は、画像処理装置１００の補助記憶装置として使用される。ＨＤＤ１０３には、ＯＳプログラム、アプリケーションプログラム、および各種データが格納される。なお、補助記憶装置としては、ＳＳＤ（Solid State Drive）などの他の種類の不揮発性記憶装置を使用することもできる。
【００３３】
グラフィック処理装置１０４には、表示装置１０４ａが接続されている。グラフィック処理装置１０４は、プロセッサ１０１からの命令にしたがって、画像を表示装置１０４ａに表示させる。表示装置としては、液晶ディスプレイや有機ＥＬ（Electroluminescence）ディスプレイなどがある。
【００３４】
入力インタフェース１０５には、入力装置１０５ａが接続されている。入力インタフェース１０５は、入力装置１０５ａから出力される信号をプロセッサ１０１に送信する。入力装置１０５ａとしては、キーボードやポインティングデバイスなどがある。ポインティングデバイスとしては、マウス、タッチパネル、タブレット、タッチパッド、トラックボールなどがある。
【００３５】
読み取り装置１０６には、可搬型記録媒体１０６ａが脱着される。読み取り装置１０６は、可搬型記録媒体１０６ａに記録されたデータを読み取ってプロセッサ１０１に送信する。可搬型記録媒体１０６ａとしては、光ディスク、光磁気ディスク、半導体メモリなどがある。
【００３６】
通信インタフェース１０７は、ネットワーク１０７ａを介して他の装置との間でデータの送受信を行う。
以上のようなハードウェア構成によって、画像処理装置１００の処理機能を実現することができる。
【００３７】
上記の画像処理装置１００の記憶装置（例えば、ＨＤＤ１０３）には、複数の撮像画像のデータが記憶される。これらの撮像画像は、撮像装置によって撮像された画像である。これらの撮像画像のデータは、例えば、可搬型記録媒体１０６ａを用いて画像処理装置１００の記憶装置に格納されてもよいし、あるいは、ネットワーク１０７ａを介して画像処理装置１００の記憶装置に格納されてもよい。
【００３８】
画像処理装置１００は、例えば、複数の撮像画像の中からモデル画像を選択し、モデル画像を除く画像（対象画像）から、モデル画像と類似するシーンの撮像画像を検出する。
例えば、写真管理ソフトウェアが実行されることで次のような処理が行われる。ユーザの入力操作により、記憶装置内の複数の撮像画像からモデル画像が選択される。すると、画像処理装置１００は、記憶装置内の複数の撮像画像のうちモデル画像を除く対象画像から、モデル画像と類似するシーンの撮像画像を抽出する。
【００３９】
例えば、モデル画像に含まれる対象物と同じ対象物が写っていると推定される対象画像が、モデル画像と類似するシーンの撮像画像として抽出される。これにより、ユーザは、素材として必要な画像を画像処理装置１００内から検索したり、同じイベントの開催時の写真を集めて自動的に整理したりすることができる。したがって、ユーザに利便性や娯楽性を提供することができる。
【００４０】
このような画像処理装置１００は、例えば、パーソナルコンピュータ、スマートフォンなどのユーザによって操作される端末装置として実現される。また、画像処理装置１００は、ネットワーク上のサーバ装置として実現されてもよい。この場合、撮像画像のデータは、例えば、ユーザの端末装置からネットワークを介して画像処理装置１００にアップロードされる。
【００４１】
なお、画像処理装置１００の画像認識機能は、上記のような撮像画像の管理の他、プレゼンテーション資料などの文書コンテンツの管理に利用することもできる。例えば、画像処理装置１００の記憶装置に複数の文書のデータが記憶され、これらの中からキー文書が選択される。画像処理装置１００は、文書表示時の見た目がキー文書と似ている文を含む文書をその他の文書の中から抽出することもできるし、あるいは、キー文書と同じ画像や表、グラフなどを含む文書をその他の文書の中から抽出することもできる。これにより、文書を探すための作業時間を低減できる。また、過去の文書資産の再利用が推進され、業務の効率化を図ることもできる。
【００４２】
また、画像処理装置１００の画像認識機能は、医療画像管理システムの付加機能として利用することもできる。例えば、複数の時期に撮影されたＣＴ（Computed Tomography）画像や、ＭＲＩ（Magnetic Resonance Imaging）画像上の患部を自動的に位置合わせして、患部の画像の経時変化を判断するために利用できる。
【００４３】
さらに、画像処理装置１００の画像認識機能は、ＡＲ（Augmented Reality：拡張現実）における物体認識にも利用することができる。例えば、現実の世界に携帯端末のカメラなどを向けたときに、モデル画像に一致する、その場にある物体を認識して、関連情報をディスプレイ上に表示する。このように、カメラに映し出された物体を自動認識するので、２次元コードのような専用マーカを用いずとも、現実空間に合わせたＡＲ情報の表示を行うことができる。また、エッジ近傍の特徴点を用いた画像認識処理によって、１枚のモデル画像が保持すべき特徴点を低減できるので、モデル画像の登録枚数も増やすことができる。
【００４４】
図３は、画像処理装置が備える処理機能の構成例を示すブロック図である。画像処理装置１００は、記憶部１１０、画像取得部１２０、エッジ近傍特徴点抽出部１３０、特徴量算出部１４０および画像認識部１５０を有する。また、画像認識部１５０は、位置投票部１５１、対象物範囲特定部１５２および類似度評価部１５３を含む。
【００４５】
記憶部１１０は、画像処理装置１００が備える記憶装置（例えば、ＲＡＭ１０２またはＨＤＤ１０３）の記憶領域として実装され、画像処理に要する各種データや処理結果を格納する。記憶部１１０には、例えば、画像データ１１１ａ、１１１ｂ、画素ペア管理テーブル１１２および特徴量管理テーブル１１３が記憶される。
【００４６】
画像データ１１１ａは、モデル画像を示し、画像データ１１１ｂは、対象画像を示す。記憶部１１０には、画像データ１１１ａ、１１１ｂがそれぞれ複数記憶される。画素ペア管理テーブル１１２には、局所特徴量を算出するために利用される画素ペアの座標が登録される。特徴量管理テーブル１１３は、撮像画像ごとに用意される。特徴量管理テーブル１１３には、撮像画像内の特徴点ごとの局所特徴量が登録される。
【００４７】
画像取得部１２０、エッジ近傍特徴点抽出部１３０、特徴量算出部１４０および画像認識部１５０の処理は、例えば、所定のプログラムがプロセッサ１０１に実行されることによって実現される。
【００４８】
画像取得部１２０は、モデル画像の画像データ１１１ａおよび対象画像の画像データ１１１ｂを取得して記憶部１１０に格納する。例えば、画像取得部１２０は、画像データ１１１ａ、１１１ｂを可搬型記録媒体１０６ａを介して、あるいはネットワーク１０７ａを介して取得する。なお、モデル画像としては、背景をできるだけ排除した、対象物体が大きく写った画像とすることが望ましい。また、モデル画像および対象画像の画像フォーマットは、ビットマップのような未圧縮の形式でも、ＪＰＥＧ（Joint Photographic Experts Group）のような圧縮形式でもあってもよい。
【００４９】
エッジ近傍特徴点抽出部１３０は、モデル画像および対象画像の特徴点の中からエッジ近傍の特徴点を抽出する。特徴量算出部１４０は、画像データ１１１ａ、１１１ｂおよび画素ペア管理テーブル１１２を参照しながら、撮像画像内のエッジ近傍特徴点についての局所特徴量を算出し、算出した局所特徴量を特徴量管理テーブル１１３に登録する。
【００５０】
画像認識部１５０は、特徴量管理テーブル１１３を参照しながら、例えば、モデル画像の選択操作を受け付け、対象画像の中から、選択されたモデル画像と類似する対象画像を検索する。画像認識部１５０内の各構成部の動作については後述する。
【００５１】
＜エッジ近傍の特徴点の抽出＞
次に、エッジ近傍特徴点抽出部１３０による、エッジ近傍特徴点の抽出処理について詳しく説明する。
【００５２】
エッジ近傍特徴点抽出部１３０は、まず、モデル画像上および対象画像上に特徴点を設定する。特徴点は、各画像で共通に設定される。本実施の形態では例として、画像上に等間隔（例えば、２４画素間隔）で特徴点を設定するＤｅｎｓｅ  Ｓａｍｐｌｉｎｇを用いる。
【００５３】
この場合、ｉ番目の特徴点のＸ座標位置をＸi、Ｙ座標位置をＹiとし、例えば、等間隔で特徴点の位置を決める。例えば、２４画素間隔で特徴点を設定するならば、（Ｘ0，Ｙ0）＝（０，０）、（Ｘ1，Ｙ0）＝（２４，０）、（Ｘ2，Ｙ0）＝（４８，０）となる。
【００５４】
次に、エッジ近傍特徴点抽出部１３０は、画像からエッジを抽出する。この場合、例えば、Canny Edge検出手法を適用することができる。Canny Edge検出では、２つの閾値（例えば、高レベル閾値と低レベル閾値）を与えて、エッジ点であるかを判定する。
【００５５】
この場合、エッジ近傍特徴点抽出部１３０は、画像上の各画素のエッジ強度を算出し、そのエッジ強度が高レベル閾値以上の画素点をエッジ点として検出する。そして、検出したエッジ点の周辺に、低レベル閾値以上の画素がある場合には、その画素もエッジを形成するものとして、検出されたエッジ点と連結していく。これにより、ノイズなどの影響で、ある画素のエッジ強度が大きくなってしまった場合でも、高レベル閾値を越えなければ、その画素をエッジ点と判定しなくなる。また、線の一部がかすれているような場合でも、低レベル閾値以上の画素であるならばエッジとして繋げることができる。
【００５６】
このような処理を行うことで、エッジとして繋がった線を抽出することができる。上記のCanny Edge手法は、画像からエッジを抽出する際、特徴点の数を減らしてノイズの影響を除外するために有効である。なお、Canny Edge手法に限定されるものではなく、Canny Edge以外の手法でエッジ抽出を行ってもよい。
【００５７】
次に、エッジ近傍特徴点抽出部１３０は、上記手順により等間隔で設定された特徴点の中から、エッジ近傍の特徴点を抽出する。この場合、エッジ近傍特徴点抽出部１３０は、特徴点の位置周辺のエッジ点の個数を取得し、それがあらかじめ指定した個数以上の場合は、エッジ近傍の特徴点とする。具体的には以下の手順で行う。
【００５８】
エッジ近傍特徴点抽出部１３０は、座標位置ｘ、ｙについて、エッジ点かどうかの情報をｅ（ｘ，ｙ）とし、エッジ点である場合は１、エッジ点でない場合は０を選択するものとする。ここで、ｉ番目の特徴点（Ｘi，Ｙi）について、距離ｄ以内のエッジ点の個数Ｅ（ｉ）は、以下の式（１）で算出される。
【００５９】
【数１】
2017072940.tif 000003
【００６０】
式（１）では、縦方向の距離と横方向の距離を同じｄにしたが、例えば、ｘ側をｄｘ、ｙ側をｄｙと設定してもよい。また、矩形範囲で選択しているが、それ以外の例えば、半径ｒの円内（（ｘ2＋ｙ2）1/2≦ｒ2）などとしてもよい。
【００６１】
エッジ近傍特徴点抽出部１３０は、このＥ（ｉ）があらかじめ指定した閾値以上の場合は、エッジ近傍の特徴点とする。例えば、閾値を１とすれば、１つの点でもエッジ点があればエッジ近傍の特徴点として扱う。エッジ近傍特徴点抽出部１３０は、以上の手順で抽出したエッジ近傍特徴点に対応するレコードを特徴量管理テーブル１１３に作成し、そのレコードにエッジ近傍特徴点の座標を登録する。
【００６２】
画像処理装置１００は、上記のように等間隔に設定された特徴点の中からエッジ近傍の特徴点だけを使用して、画像認識処理のための画像間の類似度判定を行う。これにより、処理負荷の軽減および高速処理が可能になる。
【００６３】
なお、エッジ近傍特徴点抽出部１３０は、例えば、モデル画像内に第１間隔で仮設定した特徴点の中からエッジ近傍特徴点を抽出し、また第１間隔とは長さが異なる第２間隔で仮設定した特徴点の中からエッジ近傍特徴点を抽出してもよい。対象画像についても同様である。
【００６４】
このように、間隔を変化させながら設定した特徴点から、エッジ近傍特徴点を抽出することで、複数パターンのエッジ近傍特徴点が得られる。これにより、各パターンのエッジ近傍点に対して対象物範囲を特定し、各対象物範囲から類似度評価を行って複数の評価値を得ることができる。
【００６５】
＜特徴量算出処理＞
次に、特徴量算出部１４０による特徴量算出処理について詳しく説明する。
特徴量算出部１４０は、エッジ近傍特徴点についての局所特徴量を算出する。ＢＲＩＥＦは、各特徴点を中心とする一定領域（以下、「特徴領域」と呼ぶ）ごとの局所特徴量として算出される。特徴領域は、例えば、特徴点を中心とする４８画素四方の矩形領域とされる。また、特徴領域の内部には、複数の画素ペアがあらかじめ設定される。ある特徴点の局所特徴量は、対応する特徴領域内の各画素ペアの輝度差に基づく符号を組み合わせて構成されたビット列として算出される。
【００６６】
図４は、画素ペア管理テーブルの構成例を示す図である。画素ペアを構成する各画素の座標は、画素ペア管理テーブル１１２にあらかじめ登録されている。図４に示すように、画素ペア管理テーブル１１２には、画素ペアを識別するためのＩＤと、画素ペアを構成する第１画素および第２画素の各座標とが登録される。画素ペアは、例えば、ランダムに設定される。画素ペア管理テーブル１１２に登録された画素ペアの情報は、すべての特徴領域に対して共通に適用される。
【００６７】
図５は、局所特徴量を算出する処理の例を示す図である。図５では、画像２００における各特徴点の局所特徴量を、この画像２００に対応する特徴量管理テーブル１１３に登録する処理の例を示す。
【００６８】
例えば、画像２００に設定された特徴点２０１の局所特徴量は、次のようにして算出される。特徴量算出部１４０は、特徴点２０１に対応する特徴領域２０２について、各画素ペアの輝度差を計算する（ステップＳ１１）。画素ペアの輝度差は、例えば、画素ペア管理テーブル１１２における第１画素の輝度値から第２画素の輝度値を減算することで得られる。
【００６９】
特徴量算出部１４０は、算出された輝度差の符号に応じたビット値を組み合わせることでビット列２０３を生成する（ステップＳ１２）。例えば、特徴量算出部１４０は、画素ペア順に、輝度差が正値の場合にはビット値“１”を、輝度差が０以下の場合にはビット値“０”をビット列に付加する。例えば、Ｍ組の画素ペアが設定されている場合、Ｍビットのビット列が生成される。特徴量算出部１４０は、生成されたビット列２０３を、特徴点２０１の局所特徴量として特徴量管理テーブル１１３に登録する（ステップＳ１３）。
【００７０】
図６は、特徴量管理テーブルの構成例を示す図である。前述のように、図６に示す特徴量管理テーブル１１３は、撮像画像ごとに用意される。
特徴量管理テーブル１１３には、画像内のエッジ近傍特徴点ごとにレコードが登録される。各レコードには、ＩＤ、特徴点座標および局所特徴量が登録される。ＩＤは、画像内のエッジ近傍特徴点を識別するための識別番号を示す。特徴点座標は、エッジ近傍特徴点の座標を示す。局所特徴量の項目には、エッジ近傍特徴点の局所特徴量を示すビット列が登録される。
【００７１】
＜位置投票処理＞
次に、位置投票部１５１による投票処理について詳しく説明する。
位置投票部１５１は、エッジ近傍の特徴点を用いて、対象画像の特徴点の中から、モデル画像の各特徴点に類似する特徴点（対応点）を探索する。そして、位置投票部１５１は、モデル画像上の特徴点と対象画像上の対応点とが一致するように対象画像にモデル画像を重ねた場合の、対象画像におけるモデル画像の中心位置を推定する。位置投票部１５１は、対象画像の各画素のうち、推定された中心位置の画素に対して投票する。
【００７２】
図７は、投票処理を説明するための図である。図７では、モデル画像２１０の特徴点２１１と類似する対象画像２２０の対応点を探索する処理の例を示す。位置投票部１５１は、例えば、モデル画像２１０の特徴点２１１の局所特徴量と、対象画像２２０の各特徴点の局所特徴量とのハミング距離を計算することで、対応点を探索する（ステップＳ２１）。
【００７３】
モデル画像２１０の特徴点２１１に対する対応点として、対象画像２２０の特徴点２２１が抽出されたものとする。このとき、位置投票部１５１は、特徴点２１１と特徴点２２１（対応点）とが一致するように対象画像２２０にモデル画像２１０を重ねた場合の、対象画像２２０におけるモデル画像２１０の中心位置２１２を推定する（ステップＳ２２）。
【００７４】
ここで、対象画像の横幅および高さの画素数をそれぞれｗｉ、ｈｉとし、モデル画像の横幅および高さの画素数をそれぞれｗｒ、ｈｒとする。モデル画像の特徴点（ｘｒ，ｙｒ）に対応する対象画像の対応点として対象画像の特徴点（ｘｉ，ｙｉ）が探索されたとすると、対象画像におけるモデル画像の中心点の位置（ｘｖ，ｙｖ）は、次の式（２−１）、（２−２）を用いて算出される。
【００７５】
ｘｖ＝ｘｉ・ｘｒ＋（ｗｒ／２）      ・・・（２−１）
ｙｖ＝ｙｉ・ｙｒ＋（ｈｒ／２）      ・・・（２−２）
図７の特徴点２１１と特徴点２２１との対応関係に基づいて対象画像２２０におけるモデル画像２１０の中心位置として画素２２２が推定されたとすると、位置投票部１５１は、対象画像２２０の画素のうち、画素２２２に対して投票する。この投票処理には、例えば、対象画像２２０の各画素に対応するエントリを有する投票マップ１１４が用いられる。投票マップ１１４の各エントリの初期値は０とされる。図７の処理では、投票マップ１１４における画素２２２に対応するエントリに１が加算される（ステップＳ２３）。
【００７６】
なお、実際には、位置投票部１５１は、例えば、画素２２２を中心とした所定領域（例えば、１０画素四方の矩形領域）に含まれる各画素に投票してもよい。これにより、モデル画像２１０と対象画像２２０との違いに対してある程度ロバストな認識処理を行うことが可能になる。
【００７７】
図８は、投票結果に基づく類似画像の判定処理について説明するための図である。図８に示す投票マップ１１４ａは、図７に示すような処理がモデル画像２１０の各特徴点について実行された後の投票マップ１１４の状態を示す。
【００７８】
ここで、投票マップ１１４の利用法の参考例としては、次のようなものがある。この例では、投票マップ１１４ａにおける各画素についての投票数のうちの最大値が抽出され、この最大値が所定の閾値を超えているかが判定される。
【００７９】
モデル画像２１０と対象画像２２０とに同じ対象物が写っている場合、モデル画像２１０の特徴点と対象画像２２０の対応点との位置関係が、モデル画像の特徴点間で同じ場合が多い。この場合、投票マップ１１４ａにおける同じ画素に対応するエントリに投票数が集中する。一方、モデル画像２１０と対象画像２２０との関連性が低い場合、モデル画像２１０の特徴点と対象画像２２０の対応点との位置関係が、モデル画像２１０の特徴点間で異なる場合が多い。この場合、投票マップ１１４ａにおいて投票数が分散する。
【００８０】
したがって、投票マップ１１４ａにおける投票数の最大値が閾値を超えた場合には、投票数が同じ画素に集中していると推定される。このため、投票数の最大値が閾値を超えた場合、モデル画像２１０と対象画像２２０とに同じ対象物が写っている可能性が高いと判断される。
【００８１】
なお、実際には、対象画像２２０における特徴点の数によって投票数の最大値が影響を受けることから、例えば、対象画像２２０における特徴点の数で投票数を除算するなどの正規化処理が行われた上で、閾値との比較が行われることが望ましい。
【００８２】
また、上記の参考例のように投票マップ１１４を用いた画像間の類似判定は、本実施の形態では実行されない。本実施の形態での投票マップ１１４の利用法については、後に詳しく説明する。
【００８３】
＜エッジ近傍の特徴点を用いた類似特徴点の探索の評価＞
上記のように、エッジ近傍の特徴点だけを用いた画像間の類似判定処理では、エッジ部分だけが類似すれば類似度が高いと判断してしまうため、画像によっては誤判定が生じやすいという問題がある。この問題点について、図９〜図１２を用いて説明する。
【００８４】
図９、図１０は、エッジ近傍の特徴点を用いた類似度判定の評価について説明するための図である。図９、図１０では、モデル画像４０と対象画像４１とで、エッジ近傍特徴点を用いた類似度判定を行う例を示している。
【００８５】
図９において、モデル画像４０には、１６個の特徴点が等間隔に設定されている。１６個の特徴点のうち、特徴点ａ１〜ａ８は、モデル画像４０に写されている物体のエッジ近傍に位置しているものとする。
【００８６】
対象画像４１には、３０個の特徴点が等間隔に設定されている。３０個の特徴点のうち、特徴点ｂ１〜ｂ８、ｂ１１〜ｂ２１は、対象画像４１に写されている物体のエッジ近傍に位置しているものとする。なお、特徴点の間隔は、モデル画像４０および対象画像４１共に同一であるとする。
【００８７】
図１０において、モデル画像４０におけるエッジ近傍の特徴点ａ１〜ａ８に対応する特徴領域ｒ１〜ｒ８が示され、対象画像４１のエッジ近傍の特徴点ｂ１〜ｂ８に対応する特徴領域ｒ１１〜ｒ１８が示されている。特徴領域ｒ１〜ｒ８の各形状と、特徴領域ｒ１１〜ｒ１８の各形状とはそれぞれ同一であるとする。
【００８８】
このような、モデル画像４０と対象画像４１に対して、エッジ近傍の特徴点を用いた類似度判定を行う。この場合、特徴領域ｒ１〜ｒ８の形状と、特徴領域ｒ１１〜ｒ１８の形状とはそれぞれ同一であるから、モデル画像４０におけるエッジ近傍の特徴点ａ１〜ａ８の各局所特徴量と、対象画像４１におけるエッジ近傍の特徴点ｂ１〜ｂ８の各局所特徴量とはそれぞれ等しい。したがって、特徴点ａ１〜ａ８と、特徴点ｂ１〜ｂ８とがそれぞれ類似することになる。
【００８９】
ここで、モデル画像から利用するエッジ近傍の特徴点の数をＡ、モデル画像から利用する該特徴点に類似する対象画像の中のエッジ近傍の特徴点の数をｂとする。このとき、類似度の評価指標となる評価値ｖは、例えば、ｖ＝ｂ／Ａで算出される。ｖの値は０≦ｖ≦１．０の範囲にあって、ｖの値が１．０に近いほど類似度は高く、１．０より小さくなるにつれて類似度は低いと判断される。
【００９０】
図９、図１０の例の場合、モデル画像４０から利用するエッジ近傍の特徴点は、特徴点ａ１〜ａ８であるので、利用される特徴点の数は８個であり、Ａ＝８となる。また、特徴点ａ１〜ａ８に対して特徴点ｂ１〜ｂ８がそれぞれ類似するので、対象画像４１に写っている物体のエッジ近傍の特徴点のうち、類似する特徴点の数は８個であり、ｂ＝８となる。したがって、評価値ｖは、１．０（＝８／８）と算出される。
【００９１】
図１１、図１２は、エッジ近傍の特徴点を用いた類似度判定の評価について説明するための図である。モデル画像４０と、対象画像４２とで、エッジ近傍特徴点を用いた類似度判定を行う例を示している。
【００９２】
図１１において、対象画像４２には、２０個の特徴量が等間隔に設定されている。２０個の特徴点のうち、特徴点ｃ１〜ｃ８、ｃ１１、ｃ１２は、対象画像４２に写されている物体のエッジ近傍に位置しているものとする。なお、特徴点の間隔は、モデル画像４０および対象画像４２共に同一であるとする。
【００９３】
図１２において、モデル画像４０の特徴領域ｒ１〜ｒ７の各形状と、対象画像４２の特徴領域ｒ２１〜ｒ２７の各形状とはそれぞれ同一であり、モデル画像４０の特徴領域ｒ８の形状と、対象画像４２の特徴領域ｒ２８の形状とは異なるとする。
【００９４】
このような、モデル画像４０と対象画像４２に対して、エッジ近傍の特徴点を用いた類似度判定を行う。この場合、特徴領域ｒ１〜ｒ７の形状と、特徴領域ｒ２１〜ｒ２７の形状とはそれぞれ同一であるから、モデル画像４０におけるエッジ近傍の特徴点ａ１〜ａ７の各局所特徴量と、対象画像４２におけるエッジ近傍の特徴点ｃ１〜ｃ７の各局所特徴量とはそれぞれ等しい。したがって、特徴点ａ１〜ａ７と、特徴点ｃ１〜ｃ７とがそれぞれ類似することになる。
【００９５】
一方、特徴領域ｒ８の形状と、特徴領域ｒ２８の形状とは異なるから、モデル画像４０におけるエッジ近傍の特徴点ａ８の局所特徴量と、対象画像４２におけるエッジ近傍の特徴点ｃ８の局所特徴量とは異なる。したがって、特徴点ａ８と、特徴点ｃ８とは相違する。
【００９６】
この例の場合の評価値ｖを算出すると、モデル画像４０から利用するエッジ近傍の特徴点は、特徴点ａ１〜ａ８であるので、利用される特徴点の数は８個であり、Ａ＝８となる。また、特徴点ａ１〜ａ８のうち、特徴点ｃ１〜ｃ７が特徴点ａ１〜ａ７と類似し、特徴点ｃ８と特徴点ａ８は相違するので、対象画像４２に写っている物体のエッジ近傍の特徴点のうち、類似する特徴点の数は７個であり、ｂ＝７となる。したがって、評価値ｖは、０．８７（≒７／８）と算出される。
【００９７】
ここで、モデル画像４０に対して、図９に示した対象画像４１と、図１１に示した対象画像４２とを比較した場合、実際には、対象画像４２の方が対象画像４１よりもモデル画像４０に類似している。
【００９８】
しかし、上記のように、図９の類似度判定の評価値は１．０となり、図１１の類似度判定の評価値は０．８７となっており、図９に示した対象画像４１の方が、図１１に示した対象画像４２よりもモデル画像４０に類似するという逆の結果（誤った結果）になっている。このように、エッジ近傍の特徴点を用いた類似度判定では、画像によっては誤判定が生じやすく、判定精度の低下を引き起こすことになる。例えば、対象画像に対象物体と似た形状の他の物体が写っている場合に、画像間の類似度が不当に高く算出されてしまう可能性がある。
【００９９】
これに対して、本実施の形態では、エッジ近傍の特徴点を用いた類似特徴点探索および投票を行った上で、対象画像で対象物体が写っている範囲を特定し、その範囲内の特徴点が、モデル画像の特徴点に類似したかどうかを判別する。この場合、特定された範囲内で、類似すると判定された特徴点の数と、相違すると判定された特徴点の数とに基づいて類似度の評価を行う。これにより、画像によって誤判定が生じるといった問題を改善することが可能になり、エッジ近傍の特徴点を用いた類似度判定の精度を向上させることができる。
【０１００】
＜対象物範囲特定＞
次に、対象物範囲特定部１５２による、対象物範囲特定処理について詳しく説明する。
前述の参考例では、投票マップ１１４ａにおける各画素についての投票数のうちの最大値が抽出され、この最大値が画像間の類似度として算出される。しかし、エッジ近傍の特徴点のみ用いてこの方法で類似度が算出された場合には、上記の理由で類似度が正確でない可能性がある。
【０１０１】
そこで、画像認識部１５０は、少なくとも、投票空間において投票数が最大である画素について、後述する計算手順により類似度の評価値を算出する。これにより、正確性の高い評価値を算出する。
【０１０２】
また、画像認識部１５０は、投票数が最大である上記画素を含む、投票空間内の複数の画素について、類似度の評価値を算出してもよい。この場合、例えば、その中で評価値が最大の画素を特定し、その画素の評価値を最終的な類似度として出力する。この方法によれば、対象物またはそれに形状が類似する他の物体の、対象画像での写り方（例えば、撮像方向など）の違いによって、対象物範囲に誤差が発生した場合でも、類似度の評価値を正確に算出することができる。
【０１０３】
以下の例では、画像認識部１５０は、投票空間内の画素のうち、投票された特徴点の数があらかじめ与えられた閾値以上である画素について、類似度の評価値を算出するものとする。これにより、投票数が比較的大きく、その投票数が正確な類似度を示している可能性の高い画素だけに絞って、類似度の評価を効率的に行うことができる。
【０１０４】
対象物範囲特定部１５２は、投票空間内の画素のうち、投票された特徴点の数があらかじめ与えられた閾値以上である画素について、対象物が位置する範囲である対象物範囲を対象画像において特定する。これにより、条件に合致する画素ごとに対象物範囲が特定される。
【０１０５】
図１３は、対象物範囲の特定について説明するための図である。この例では、「モデル画像の範囲」そのものを対象物範囲とする場合を示しており、対象物範囲特定部１５２は、モデル画像４０の範囲そのものを、対象物範囲Ｒ１として対象画像４１、４２上に特定している。
【０１０６】
この場合、対象物範囲は、モデル画像のサイズと中心位置（すなわち、投票された位置）の座標から以下のように求めることができる。例えば、モデル画像の横、縦のサイズを（ｗ，ｈ）、投票された位置を（ｘ，ｙ）とする。この場合、対象物範囲は、左上座標（ｘ−ｗ／２，ｙ−ｈ／２）〜右下座標（ｘ＋ｗ／２，ｙ＋ｈ／２）で表される長方形（辺がＸ軸、またはＹ軸に平行な長方形）で表すことができる。なお、サイズ可変とするために、モデル画像のサイズを拡大縮小した場合は、拡大縮小した結果のサイズが（ｗ，ｈ）として使用される。
【０１０７】
対象物範囲特定部１５２は、対象物範囲を特定すると、対象画像のエッジ近傍特徴点の中から、この対象物範囲内にある特徴点のリストを取得し、記憶部１１０に格納する。例えば、特徴点の位置を（Ｆｘ，Ｆｙ）とした場合、ｘ−ｗ／２≦Ｆｘ≦ｘ＋ｗ／２、かつｙ−ｈ／２≦Ｆｙ≦ｙ＋ｈ／２を満たす座標（Ｆｘ，Ｆｙ）を対象物範囲内のエッジ近傍特徴点として取得することができる。
【０１０８】
なお、対象物範囲を特定する他の例としては、モデル画像４０に一般画像を用いる場合、対象画像において、モデル画像内の対象物の範囲が写っている範囲を、対象物範囲としてもよい。この場合、対象物範囲特定部１５２は、例えば、モデル画像内の対象物の範囲を、モデル画像内のエッジ近傍特徴点を含む矩形範囲として特定する。そして、対象画像において、矩形範囲の画像が写っている範囲を、対象物範囲として特定する。この場合、対象画像における対象物範囲の位置は、モデル画像における該当特徴点と矩形範囲（例えば、その４頂点の位置）との位置関係、および、モデル画像での該当特徴点の位置と対象画像での対応点の位置との位置関係に基づいて、算出される。
【０１０９】
なお、単純に格子状に特徴点を取得する場合は、対象物範囲特定部１５２は、２次元配列をあらかじめ生成し、Ｘ座標を行、Ｙ座標を列にして特徴量を配列に割り当てる。これにより、対象物範囲内にある特徴点を配列の行番号、列番号で判定できるため、対象物範囲内の特徴点のリストを高速に取得することができる。
【０１１０】
＜類似度評価＞
次に、類似度評価部１５３による、類似度評価処理について詳しく説明する。類似度評価部１５３は、投票空間内の画素のうち、投票された特徴点の数があらかじめ与えられた閾値以上である画素のそれぞれについて、対象物範囲の中で類似する特徴点の数、および対象物範囲の中で相違する特徴点の数に基づいて類似度評価を行う。具体的には、以下の評価値算出を行って類似度評価を行う。また、投票空間の画素のうち、上記条件を満たす画素が複数存在し、それぞれについて対象物範囲が特定されている場合には、各画素について評価値を算出する。
【０１１１】
ここで、モデル画像内のエッジ近傍の特徴点の数をＡとする。また、対象物範囲内に存在する対応点（モデル画像内のエッジ近傍の特徴点に類似する対象画像の中のエッジ近傍の特徴点）の数をＢとする。さらに対象物範囲内に存在する、対応点以外のエッジ近傍の特徴点（モデル画像内のエッジ近傍の特徴点と相違する対象画像の中のエッジ近傍の特徴点）の数をＣ（＝Ａ−Ｂ）とする。
【０１１２】
このとき、類似度評価部１５３は、類似度の評価指標となる評価値Ｖを、Ｖ＝Ｂ／（Ａ＋Ｃ）で算出する。評価値の算出対象画素が複数存在する場合には、複数の評価値の中から最も高い評価値を選択して、最終的な類似度として出力する。なお、Ｖの値は０≦Ｖ≦１．０の範囲にあって、Ｖの値が１．０に近いほど類似度は高く、１．０より小さくなるにつれて類似度は低いと判断される。
【０１１３】
図１４は、類似度評価について説明するための図である。モデル画像４０と対象画像４１との類似度判定における評価値Ｖの算出を示している。モデル画像４０内のエッジ近傍の特徴点は、特徴点ａ１〜ａ８の８個あるので、Ａ＝８である。また、対象画像４１の対象物範囲Ｒ１の中で、特徴点ａ１〜ａ８それぞれに類似する特徴点は、特徴点ｂ１〜ｂ８の８個あるので、Ｂ＝８となる。さらに、対象画像４１の対象物範囲Ｒ１の中で、特徴点ａ１〜ａ８に対して相違する特徴点は、特徴点ｂ１１〜ｂ１８の８個あるので、Ｃ＝８となる。したがって、評価値をＶ１とすれば、Ｖ１＝０．５（＝８／（８＋８））と算出される。
【０１１４】
図１５は、類似度評価について説明するための図である。モデル画像４０と対象画像４２との類似度判定における対象画像４２の評価値Ｖの算出を示している。モデル画像４０内のエッジ近傍の特徴点は、特徴点ａ１〜ａ８の８個あるので、Ａ＝８である。また、対象画像４２の対象物範囲Ｒ１の中で、特徴点ａ１〜ａ８それぞれに類似する特徴点は、特徴点ｃ１〜ｃ７の７個あるので、Ｂ＝７となる。さらに、対象画像４２の対象物範囲Ｒ１の中で、特徴点ａ１〜ａ８に対し相違する特徴点は、特徴点ｃ８の１個なので、Ｃ＝１となる。したがって、評価値をＶ２とすれば、Ｖ２＝０．７８（＝７／（８＋１））と算出される。
【０１１５】
なお、以上の図１４、図１５では、説明を簡単にするために、対象画像４１、４２のそれぞれにおいて、対象物範囲Ｒ１を、投票数が最大の投票位置についてのみ特定した場合を示している。
【０１１６】
上記のように、モデル画像４０と対象画像４１に対する類似度判定の評価値Ｖ１は０．５となり、モデル画像４０と対象画像４２に対する類似度判定の評価値Ｖ２は０．７８となっている。したがって、Ｖ１＜Ｖ２であり、対象画像４２の方が、対象画像４１よりもモデル画像４０に類似するという正しい結果を得られている。
【０１１７】
なお、各対象画像について対象物範囲の候補が複数特定されている場合は、各候補について評価値を算出し、最も高い評価値を用いて類似判定が行われる。これにより、評価精度をより高めることが可能になる。
【０１１８】
＜評価結果＞
図１６は、評価結果を示す図である。テーブルＴ１は、類似度判定として、等間隔に設定した全部の特徴点を用いた場合、エッジ近傍の特徴点のみを用いた場合、および本実施の形態を用いた場合の各評価値の比較結果を示している。
【０１１９】
全部の特徴点を用いた場合、モデル画像４０と対象画像４１との類似度判定では、モデル画像４０の特徴点数Ａ＝１６、対象画像４１の類似した特徴点数Ｂ＝８なので、評価値Ｖａは０．５（＝８／１６）になる。また、モデル画像４０と対象画像４２との類似度判定では、モデル画像４０の特徴点数Ａ＝１６、対象画像４２の類似した特徴点数Ｂ＝１５なので、評価値Ｖｂは０．９３７（＝１５／１６）になる。対象画像４２の方が対象画像４１よりも、モデル画像４０に類似しているが、評価値もＶａ＜Ｖｂとなっており、正しい類似度判定結果が得られている。
【０１２０】
また、処理速度は、モデル画像４０の１６個の特徴点と、対象画像４１の３０個の特徴点とのマッチング回数、およびモデル画像４０の１６個の特徴点と、対象画像４２の２０個の特徴点とのマッチング回数の和によって表され、１６×（３０＋２０）回となる。
【０１２１】
一方、エッジ近傍の特徴点のみを用いた場合、モデル画像４０と対象画像４１との類似度判定では、モデル画像４０のエッジ近傍の特徴点数Ａ＝８、対象画像４１の類似した特徴点数Ｂ＝８なので、評価値Ｖａは１．０（＝８／８）になる。また、モデル画像４０と対象画像４２との類似度判定では、モデル画像４０のエッジ近傍の特徴点数Ａ＝８、対象画像４２の類似した特徴点数Ｂ＝７なので、評価値Ｖｂは０．８７（＝７／８）になる。
【０１２２】
対象画像４２の方が対象画像４１よりも、モデル画像４０に類似しているが、評価値はＶｂ＜Ｖａとなっており、誤った類似度判定結果が得られている。なお、処理速度は、モデル画像４０の８個の特徴点と、対象画像４１の１９個の特徴点とのマッチング回数、およびモデル画像４０の１６個の特徴点と、対象画像４２の１０個の特徴点とのマッチング回数の和によって表され、８×（１９＋１０）回となる。
【０１２３】
一方、本実施の形態を用いた場合、モデル画像４０と対象画像４１との類似度判定では、モデル画像４０のエッジ近傍の特徴点数Ａ＝８、対象物範囲内で類似した対象画像４１の特徴点数Ｂ＝８、対象物範囲内で相違する対象画像４１の特徴点数Ｃ＝８なので、評価値Ｖａは０．５（＝８／（８＋８））になる。また、モデル画像４０と対象画像４２との類似度判定では、モデル画像４０のエッジ近傍の特徴点数Ａ＝８、対象物範囲内で類似した対象画像４２の特徴点数Ｂ＝７、対象物範囲内で相違する対象画像４２の特徴点数Ｃ＝１なので、評価値Ｖｂは０．７８（＝７／（８＋１））になる。
【０１２４】
対象画像４２の方が対象画像４１よりも、モデル画像４０に類似しているが、評価値もＶａ＜Ｖｂとなっており、正しい類似度判定結果が得られている。なお、処理速度は、モデル画像４０の８個の特徴点と、対象画像４１の１９個の特徴点とのマッチング回数、およびモデル画像４０の１６個の特徴点と、対象画像４２の１０個の特徴点とのマッチング回数の和によって表され、８×（１９＋１０）回となる。
【０１２５】
上記のように、本実施の形態によれば、エッジ近傍の特徴点を用いた場合の類似度判定の精度の向上を図ることができる。また、すべての特徴点を用いた類似度判定と比べて処理速度を向上させることができる。
【０１２６】
＜フローチャート＞
次に、画像処理装置１００の処理についてフローチャートを用いて説明する。
図１７は、画像認識処理の例を示すフローチャートである。
【０１２７】
〔ステップＳ３１〕エッジ近傍特徴点抽出部１３０は、対象画像のエッジ近傍の特徴点を抽出する。
〔ステップＳ３２〕特徴量算出部１４０は、対象画像から抽出された特徴点の局所特徴量を算出する。
【０１２８】
〔ステップＳ３３〕エッジ近傍特徴点抽出部１３０は、モデル画像のエッジ近傍の特徴点を抽出する。
〔ステップＳ３４〕特徴量算出部１４０は、モデル画像から抽出された特徴点の局所特徴量を算出する。
【０１２９】
これ以後、ステップＳ３１、Ｓ３３で抽出されたエッジ近傍の特徴点が、処理の対象となる。
〔ステップＳ３５〕位置投票部１５１は、モデル画像の各特徴点に類似する特徴点（対応点）を、対象画像の特徴点から探索する。なお、特徴点間の類似度は、局所特徴量のハミング距離によって算出される。
【０１３０】
〔ステップＳ３６〕位置投票部１５１は、モデル画像の特徴点を１つ選択し、選択した特徴点と対応点との位置関係に基づいて、投票処理を行う。
〔ステップＳ３７〕位置投票部１５１は、モデル画像の全特徴点について処理済みかを判定する。処理済みでない特徴点がある場合、ステップＳ３６に戻り、他の特徴点が選択される。一方、すべての特徴点について処理済みの場合、ステップＳ３８の処理が実行される。
【０１３１】
〔ステップＳ３８〕対象物範囲特定部１５２は、対象物範囲の特定処理を行い、類似度評価部１５３は、類似度評価処理を行う。
図１８は、対象物範囲の特定および類似度評価の処理例を示すフローチャートである。この図１８の処理は、図１７のステップＳ３８の処理に対応する。なお、図１８の処理において、記憶部１１０には、最大評価値および中心位置が一時的に記憶される。図１８の処理開始時点では、記憶部１１０の最大評価値および中心位置はクリアされている。
【０１３２】
〔ステップＳ３８ａ〕対象物範囲特定部１５２は、投票点（投票空間の画素）を１つ選択する。
〔ステップＳ３８ｂ〕対象物範囲特定部１５２は、投票点の投票数が閾値以上かを判定する。閾値以上の場合、ステップＳ３８ｃの処理が実行され、閾値以上でない場合、ステップＳ３８ｈの処理が実行される。
【０１３３】
〔ステップＳ３８ｃ〕対象物範囲特定部１５２は、対象画像に対象物範囲を特定する。
〔ステップＳ３８ｄ〕類似度評価部１５３は、対象物範囲内のエッジ近傍の特徴点を特定し、それらの中から、類似した特徴点数と、相違する特徴点数を求める。
【０１３４】
〔ステップＳ３８ｅ〕類似度評価部１５３は、モデル画像内のエッジ近傍の特徴点数Ａと、類似した特徴点数Ｂと、相違する特徴点数Ｃとから、Ｂ／（Ａ＋Ｃ）により評価値を算出する。
【０１３５】
〔ステップＳ３８ｆ〕類似度評価部１５３は、ステップＳ３８ｅで算出された評価値が、記憶部１１０に記憶された最大評価値より大きいか（すなわち、算出された評価値が図１８での現在までの処理の中で最大か）を判定する。算出された評価値が最大評価値より大きい場合、ステップＳ３８ｇの処理が実行され、最大評価値以下の場合、ステップＳ３８ｈの処理が実行される。
【０１３６】
〔ステップＳ３８ｇ〕類似度評価部１５３は、記憶部１１０に記憶された最大評価値をステップＳ３８ｅで算出された評価値によって上書きする。また、記憶部１１０に記憶された中心位置を、ステップＳ３８ａで選択した投票点の位置によって上書きする。
【０１３７】
なお、図１８の処理の開始後、ステップＳ３８ｆが１回目に実行されたときには、記憶部１１０には最大評価値と中心位置が記憶されていない。このため、ステップＳ３８ｇでは、ステップＳ３８ｅで算出された評価値と、ステップＳ３８ａで選択した投票点の位置とが、それぞれ最大評価値および中心位置として記憶部１１０に記録される。
【０１３８】
〔ステップＳ３８ｈ〕類似度評価部１５３は、全投票点について処理済みかを判定する。処理済みでない投票点がある場合、ステップＳ３８ａに戻り、他の投票点が選択される。一方、すべての投票点について処理済みの場合、ステップＳ３８ｉの処理が実行される。
【０１３９】
〔ステップＳ３８ｉ〕類似度評価部１５３は、画像認識結果を出力する。この時点で記憶部１１０に記憶された最大評価値が、モデル画像と対象画像との類似度を示し、類似度が所定の閾値以上の場合、対象画像は、対象物体が認識された画像であると判断される。類似度評価部１５３は、記憶部１１０に記憶された最大評価値が閾値以上の場合に、例えば、対象画像が、対象物体が認識された画像であることを示す情報を出力する。このとき、類似度評価部１５３は、記憶部１１０に記憶された中心位置に基づいて、対象画像において対象物体が写っている範囲を示す情報を出力してもよい。また、類似度評価部１５３は、記憶部１１０に記憶された最大評価値を、モデル画像と対象画像との類似度として出力してもよい。
【０１４０】
［第３の実施の形態］
図３に示した画像処理装置１００の機能については、すべてが同一の装置に実装される必要はなく、少なくともそれらの一部が別の装置に実装されていてもよい。そこで、第３の実施の形態では、画像処理装置１００における特徴量の算出機能とその特徴量を用いた画像認識機能とが、別の装置に実装される場合の例について示す。
【０１４１】
図１９は、第３の実施の形態に係る画像処理システムの構成例を示す図である。図１９に示す画像処理システムは、端末装置３００とサーバ装置４００とを含む。
端末装置３００は、例えば、携帯電話、スマートフォン、デジタルカメラ、パーソナルコンピュータなどである。端末装置３００は、ネットワークを介してサーバ装置４００にアクセスすることができる。端末装置３００は、画像の撮像機能を有するとともに、撮像画像の特徴量を算出することができる。そして、端末装置３００は、撮像画像に特徴量を付加してサーバ装置４００に送信する。
【０１４２】
サーバ装置４００は、端末装置３００から送信された撮像画像を蓄積する。また、サーバ装置４００は、撮像画像とともに受信した特徴量を用いて画像認識を行い、蓄積している撮像画像の間で類似する撮像画像のペアを判別する機能を有する。
【０１４３】
上記の画像処理システムは、例えば、ユーザが端末装置３００を利用して撮像した撮像画像をサーバ装置４００が管理する写真管理サービスなどに適用できる。この場合、サーバ装置４００は、撮像画像を単に蓄積するだけでなく、類似する撮像画像を検索することで、同じ対象物が写っている撮像画像にタグ付けするなどの付加サービスを提供することもできる。
【０１４４】
図２０は、端末装置のハードウェア構成例を示す図である。端末装置３００は、プロセッサ３０１によって装置全体が制御されている。プロセッサ３０１は、マルチプロセッサであってもよい。プロセッサ３０１は、例えばＣＰＵ、ＭＰＵ、ＤＳＰ、ＡＳＩＣまたはＰＬＤである。また、プロセッサ３０１は、ＣＰＵ、ＭＰＵ、ＤＳＰ、ＡＳＩＣ、ＰＬＤのうちの２以上の要素の組み合わせであってもよい。
【０１４５】
プロセッサ３０１には、バス３０９を介して、ＲＡＭ３０２と複数の周辺機器が接続されている。
ＲＡＭ３０２は、端末装置３００の主記憶装置として使用される。ＲＡＭ３０２には、プロセッサ３０１に実行させるＯＳプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭ３０２には、プロセッサ３０１による処理に必要な各種データが格納される。
【０１４６】
バス３０９に接続されている周辺機器としては、フラッシュメモリ３０３、カメラ３０４、表示装置３０５、入力装置３０６、読み取り装置３０７および通信インタフェース３０８がある。
【０１４７】
フラッシュメモリ３０３は、端末装置３００の補助記憶装置として使用される。フラッシュメモリ３０３には、ＯＳプログラム、アプリケーションプログラム、および各種データが格納される。なお、補助記憶装置としては、ＨＤＤなどの他の種類の不揮発性記憶装置を使用することもできる。
【０１４８】
表示装置３０５は、プロセッサ３０１からの命令にしたがって画像を表示する。表示装置３０５としては、液晶ディスプレイや有機ＥＬディスプレイなどがある。
入力装置３０６は、ユーザによる入力操作に応じた信号をプロセッサ３０１に送信する。入力装置３０６としては、キーボードやポインティングデバイスなどがある。ポインティングデバイスとしては、マウス、タッチパネル、タブレット、タッチパッド、トラックボールなどがある。
【０１４９】
読み取り装置３０７には、可搬型記録媒体３０７ａが脱着される。読み取り装置３０７は、可搬型記録媒体３０７ａに記録されたデータを読み取ってプロセッサ３０１に送信する。可搬型記録媒体３０７ａとしては、光ディスク、光磁気ディスク、半導体メモリなどがある。
【０１５０】
通信インタフェース３０８は、ネットワークを介して他の装置（例えば、サーバ装置４００）との間でデータの送受信を行う。
以上のようなハードウェア構成によって、端末装置３００の処理機能を実現することができる。なお、図示を省略するが、サーバ装置４００は、例えば、図２に示した画像処理装置１００と同様のハードウェア構成を有するコンピュータとして実現される。
【０１５１】
図２１は、端末装置およびサーバ装置の処理機能の構成例を示すブロック図である。なお、図２１では、図３と同様の構成要素については同じ符号を付して示し、その説明を省略する。
【０１５２】
端末装置３００は、記憶部３１０、画像撮像部３２１、特徴量算出部３２２および送信部３２３を有する。
記憶部３１０は、端末装置３００が備える記憶装置（例えば、ＲＡＭ３０２またはフラッシュメモリ３０３）の記憶領域として実装される。記憶部３１０には、画像データ１１１、画素ペア管理テーブル１１２および特徴量管理テーブル１１３が記憶される。なお、画像データ１１１は、画像撮像部３２１によって撮像された撮像画像のデータである。
【０１５３】
画像撮像部３２１、特徴量算出部３２２および送信部３２３の処理は、例えば、所定のプログラムがプロセッサ３０１に実行されることによって実現される。
画像撮像部３２１は、カメラ３０４を制御することで画像を撮像する。画像撮像部３２１は、撮像された撮像画像についての画像データ１１１を記憶部３１０に格納する。
【０１５４】
特徴量算出部３２２は、図３の特徴量算出部１４０と同様の処理を実行する。すなわち、特徴量算出部３２２は、画像データ１１１および画素ペア管理テーブル１１２を参照しながら、撮像画像内の各特徴点についての局所特徴量を算出し、算出した局所特徴量を特徴量管理テーブル１１３に登録する。
【０１５５】
送信部３２３は、記憶部３１０に記憶された各画像データ１１１を、特徴量管理テーブル１１３に記録された対応する特徴量情報とともにサーバ装置４００に送信する。
一方、サーバ装置４００は、記憶部４１０、受信部４２１および画像認識部４２２を有する。
【０１５６】
記憶部４１０は、サーバ装置４００が備える記憶装置の記憶領域として実装される。記憶部４１０には、端末装置３００から受信した画像データ１１１およびこれらに対応する特徴量情報が記憶される。なお、受信した特徴量情報の記憶の仕方は特に限定されないが、図２１では例として、受信した特徴量情報は、端末装置３００の特徴量管理テーブル１１３と同様の形式で管理されている。
【０１５７】
受信部４２１および画像認識部４２２の処理は、例えば、所定のプログラムがサーバ装置４００のプロセッサに実行されることによって実現される。
受信部４２１は、端末装置３００から特徴量情報とともに送信された画像データ１１１を受信する。受信部４２１は、受信した画像データ１１１を記憶部４１０に格納するとともに、受信した特徴量情報を記憶部４１０の特徴量管理テーブル１１３に登録する。
【０１５８】
画像認識部４２２は、図３の画像認識部１５０と同様の処理を実行する。すなわち、画像認識部４２２は、特徴量管理テーブル１１３を参照しながら、選択されたモデル画像以外の撮像画像の中からモデル画像と類似する対象画像を検索する。なお、モデル画像は、ユーザの操作によって選択されてもよいし、画像認識部４２２が記憶部４１０に記憶された撮像画像から自動的に順番にモデル画像を選択していってもよい。また、モデル画像は、端末装置によって撮像された撮像画像とは別に用意されてもよい。
【０１５９】
なお、上記の各実施の形態に示した装置（画像処理装置１、１００、端末装置３００およびサーバ装置４００）の処理機能は、コンピュータによって実現することができる。その場合、各装置が有すべき機能の処理内容を記述したプログラムが提供され、そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記憶装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記憶装置には、ハードディスク装置（ＨＤＤ）、フレキシブルディスク（ＦＤ）、磁気テープなどがある。光ディスクには、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ、ＣＤ−ＲＯＭ（Compact Disc-Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）などがある。光磁気記録媒体には、ＭＯ（Magneto-Optical disk）などがある。
【０１６０】
プログラムを流通させる場合には、例えば、そのプログラムが記録されたＤＶＤ、ＣＤ−ＲＯＭなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【０１６１】
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムまたはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、ネットワークを介して接続されたサーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。
【０１６２】
上記については単に本発明の原理を示すものである。さらに、多数の変形、変更が当業者にとって可能であり、本発明は上記に示し、説明した正確な構成および応用例に限定されるものではなく、対応するすべての変形例および均等物は、添付の請求項およびその均等物による本発明の範囲とみなされる。
【符号の説明】
【０１６３】
１０  画像処理システム
１１  探索部
１２  特定部
１３  算出部
２０  モデル画像
２１、２２  対象画像
２１ａ、２２ａ  対象物範囲
【図１】
2017072940.tif 000004
【図２】
2017072940.tif 000005
【図３】
2017072940.tif 000006
【図４】
2017072940.tif 000007
【図５】
2017072940.tif 000008
【図６】
2017072940.tif 000009
【図７】
2017072940.tif 000010
【図８】
2017072940.tif 000011
【図９】
2017072940.tif 000012
【図１０】
2017072940.tif 000013
【図１１】
2017072940.tif 000014
【図１２】
2017072940.tif 000015
【図１３】
2017072940.tif 000016
【図１４】
2017072940.tif 000017
【図１５】
2017072940.tif 000018
【図１６】
2017072940.tif 000019
【図１７】
2017072940.tif 000020
【図１８】
2017072940.tif 000021
【図１９】
2017072940.tif 000022
【図２０】
2017072940.tif 000023
【図２１】
2017072940.tif 000024