(57)【要約】【課題】画像間での特徴点のペアのそれぞれについて対応付けが正しいか否かを簡易な処理で判定可能にする。【解決手段】画像処理装置１０において、制御部１２は、画像１と画像２とを並列させた状態において、画像１から抽出された複数の特徴点１ａ，１ｂ，１ｃ，１ｄのそれぞれと、画像２から抽出された複数の特徴点２ａ，２ｂ，２ｃ，２ｄのそれぞれとを一対一で対応付けて生成された複数の特徴点ペアのそれぞれについて、各特徴点ペアに含まれる特徴点同士を結ぶ直線の傾きを算出する。制御部１２は、算出された傾きの頻度に基づいて、複数の特徴点ペアのそれぞれについて特徴点同士の対応付けが正しいかを判定する。【選択図】図１
2014126892.tif 000002
【特許請求の範囲】
【請求項１】
画像処理装置が、
第１の画像と第２の画像とを並列させた状態において、前記第１の画像から抽出された複数の特徴点のそれぞれと、前記第２の画像から抽出された複数の特徴点のそれぞれとを一対一で対応付けて生成された複数の特徴点ペアのそれぞれについて、各特徴点ペアに含まれる特徴点同士を結ぶ直線の傾きを算出し、
算出された傾きの頻度に基づいて、前記複数の特徴点ペアのそれぞれについて特徴点同士の対応付けが正しいかを判定する、
ことを特徴とする画像処理方法。
【請求項２】
前記判定では、前記傾きの頻度が特定の範囲に一定割合以上集中して分布している場合、前記複数の特徴点ペアのうち、算出された直線の傾きが前記特定の範囲に含まれる特徴点ペアを、特徴点同士の対応付けが正しい特徴点ペアと判定する、
ことを特徴とする請求項１記載の画像処理方法。
【請求項３】
前記判定では、前記傾きの頻度が特定の角度に一定割合以上集中して分布している場合、前記複数の特徴点ペアのうち、算出された直線の傾きが前記特定の角度である特徴点ペアを、特徴点同士の対応付けが正しい特徴点ペアと判定する、
ことを特徴とする請求項２記載の画像処理方法。
【請求項４】
前記特定の範囲は、前記第１の画像と前記第２の画像とを並列させる方向に応じて決定される、
ことを特徴とする請求項２記載の画像処理方法。
【請求項５】
前記特定の範囲は、前記第１の画像と前記第２の画像とを並列させる方向に応じて決定される基準角度から正方向または負方向に一定の角度の範囲である、
ことを特徴とする請求項４記載の画像処理方法。
【請求項６】
前記第１の画像と前記第２の画像をそれぞれの上端または下端を揃えて水平方向に並列させた場合、前記基準角度は水平方向に沿った角度である、
ことを特徴とする請求項５記載の画像処理方法。
【請求項７】
前記第１の画像と前記第２の画像をそれぞれの右端または左端を揃えて垂直方向に並列させた場合、前記基準角度は垂直方向に沿った角度である、
ことを特徴とする請求項５記載の画像処理方法。
【請求項８】
前記特定の範囲は、前記第１の画像と前記第２の画像とを並列させる方向に応じて決定される基準角度を中心とした所定の幅の範囲であり、前記所定の幅は、前記傾きの頻度が前記一定割合以上含まれるように算出される、
ことを特徴とする請求項４記載の画像処理方法。
【請求項９】
前記直線の傾きの算出およびその算出結果に基づく前記判定を、前記第１の画像に対して前記第２の画像を並列させる方向を変化させて複数回実行する、
ことを特徴とする請求項１乃至８のいずれか１項に記載の画像処理方法。
【請求項１０】
前記第１の画像に対して前記第２の画像を第１の方向に並列させた状態で、前記直線の傾きの算出およびその算出結果に基づく前記判定を実行した結果、特徴点同士の対応付けが正しいと判定された特徴点ペアを処理対象として、前記第１の画像に対して前記第２の画像を第２の方向に並列させた状態で、前記直線の傾きの算出およびその算出結果に基づく前記判定を実行する、
ことを特徴とする請求項９記載の画像処理方法。
【請求項１１】
前記判定により特徴点同士の対応付けが正しいと判定された特徴点ペアに基づいて、前記第１の画像と前記第２の画像との第１の画像第２の画像位置合わせを実行する、
ことを特徴とする請求項１乃至１０のいずれか１項に記載の画像処理方法。
【請求項１２】
第１の画像から抽出された複数の特徴点のそれぞれと、第２の画像から抽出された複数の特徴点のそれぞれとを一対一で対応付けて生成された複数の特徴点ペアに関する情報を記憶する記憶部と、
前記第１の画像と前記第２の画像とを並列させた状態において、特徴点ペアに含まれる特徴点同士を結ぶ直線の傾きを、前記複数の特徴点ペアのそれぞれについて算出し、算出された傾きの頻度に基づいて、前記複数の特徴点ペアのそれぞれについて特徴点同士の対応付けが正しいかを判定する制御部と、
を有することを特徴とする画像処理装置。
【請求項１３】
コンピュータに、
第１の画像と第２の画像とを並列させた状態において、前記第１の画像から抽出された複数の特徴点のそれぞれと、前記第２の画像から抽出された複数の特徴点のそれぞれとを一対一で対応付けて生成された複数の特徴点ペアのそれぞれについて、各特徴点ペアに含まれる特徴点同士を結ぶ直線の傾きを算出し、
算出された傾きの頻度に基づいて、前記複数の特徴点ペアのそれぞれについて特徴点同士の対応付けが正しいかを判定する、
処理を実行させることを特徴とする画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理方法、画像処理装置および画像処理プログラムに関する。
【背景技術】
【０００２】
複数の画像間の差分を抽出するために、当該複数の画像の特徴点を用いて画像同士の位置合わせを行う技術がある。特徴点とは、画像から抽出された代表的な画像位置を示す点である。特徴点の抽出には、例えば、画像に含まれる建物等の物体の角や交差点等の部分が用いられる。画像から抽出した特徴点と他の画像の特徴点とを対応付け、対応付けられた特徴点同士の位置を合わせることで、複数の画像間の位置合わせが行われる。
【０００３】
また、画像の特徴点を用いた技術としては、例えば、旧空中写真画像と新空中写真画像から特徴点を抽出し、新旧空中写真画像の特徴点の対応関係を特定することによって旧空中写真画像と新空中写真画像との位置合わせのためのパラメータを計算する技術がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−１７３１２８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
画像間で特徴点同士を対応付ける際には、一方の画像におけるすべての特徴点について、他方の画像の特徴点との対応付けが正しいことは少なく、対応付けが不正な特徴点のペアが存在する。対応付けが不正な特徴点のペアが多いほど、位置合わせの精度は低下する。しかしながら、対応付けが不正な特徴点のペアを特定して除去するための処理は複雑であり、処理負荷が高く、処理に長時間を要するという問題があった。
【０００６】
一側面では、本発明は、画像間での特徴点の対応付けが正しいかを簡易な処理で判定可能な画像処理方法、画像処理装置および画像処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
１つの案では、画像処理装置によって次のような処理が行われる画像処理方法が提供される。この画像処理方法において、画像処理装置は、第１の画像から抽出された複数の特徴点のそれぞれと、第２の画像から抽出された複数の特徴点のそれぞれとを一対一で対応付けて生成された複数の特徴点ペアを取得し、第１の画像と第２の画像とを並列させた状態において、特徴点ペアに含まれる特徴点同士を結ぶ直線の傾きを、複数の特徴点ペアのそれぞれについて算出し、算出された傾きの頻度に基づいて、複数の特徴点ペアのそれぞれについて含まれる特徴点同士の対応付けが正しいか否かを判定する。
【０００８】
また、１つの案では、上記の画像処理方法と同様の処理を実行する画像処理装置が提供される。
更に、１つの案では、上記の画像処理方法と同様の処理をコンピュータに実行させる画像処理プログラムが提供される。
【発明の効果】
【０００９】
一側面では、画像間での特徴点の対応付けが正しいかを簡易な処理で判定可能となる。
【図面の簡単な説明】
【００１０】
【図１】第１の実施の形態の画像処理装置の機能構成例および動作例を示す図である。
【図２】第２の実施の形態の画像処理装置のハードウェア構成例を示すブロック図である。
【図３】画像処理装置の機能構成の例を示すブロック図である。
【図４】特徴点ペアテーブルの例を示す図である。
【図５】特徴点ペアについての傾きの頻度情報に基づくヒストグラムの例を示す図である。
【図６】被写体が平行移動の関係にあるときのヒストグラムの例を示す図である。
【図７】画像が拡大縮小の関係にあるときのヒストグラムの例を示す図である。
【図８】被写体が回転の関係にあるときのヒストグラムの例を示す図である。
【図９】第２の実施の形態の画像処理の例を示すフローチャートである。
【図１０】第３の実施の形態の処理例を示す図である。
【図１１】被写体が平行移動の関係にあるときのヒストグラムの例を示す図である。
【図１２】画像が拡大縮小の関係にあるときのヒストグラムの例を示す図である。
【図１３】被写体が回転の関係にあるときのヒストグラムの例を示す図である。
【図１４】第３の実施の形態の画像処理の例を示すフローチャートである。
【発明を実施するための形態】
【００１１】
以下、本実施の形態を図面を参照して説明する。
［第１の実施の形態］
図１は、第１の実施の形態の画像処理装置の機能構成例および動作例を示す図である。画像処理装置１０は、例えば、画像処理を行うコンピュータである。画像処理装置１０は、記憶部１１および制御部１２を有する。
【００１２】
記憶部１１は、例えば、ＲＡＭ（Random Access Memory）等の揮発性メモリ、あるいは、ＨＤＤ（Hard Disk Drive）やフラッシュメモリ等の不揮発性記憶装置によって実現される。記憶部１１は、画像１（第１の画像）から抽出された複数の特徴点１ａ，１ｂ，１ｃ，１ｄのそれぞれと、画像２（第２の画像）から抽出された複数の特徴点２ａ，２ｂ，２ｃ，２ｄのそれぞれとを一対一で対応付けて生成された複数の特徴点ペアに関する情報を記憶する。
【００１３】
制御部１２は、例えば、ＣＰＵ（Central Processing Unit）やＤＳＰ（Digital Signal Processor）等のプロセッサや、ＡＳＩＣ（Application Specific Integrated Circuit）やＦＰＧＡ（Field Programmable Gate Array）等のその他の電子回路を用いて実現される。
【００１４】
制御部１２は、記憶部１１から複数の特徴点ペアに関する情報を取得する。制御部１２は、画像１と画像２とを並列させた状態において、特徴点ペアに含まれる特徴点同士を結ぶ直線の傾きを、複数の特徴点ペアのそれぞれについて算出する。そして、制御部１２は、算出された傾きの頻度に基づいて、複数の特徴点ペアのそれぞれについて特徴点同士の対応付けが正しいかを判定する。
【００１５】
各特徴点ペアに含まれる特徴点同士を結ぶ直線の傾きの頻度の分布には、各画像に含まれる被写体同士の関係性に応じて、特有の性質が現れる。制御部１２は、このような性質に鑑み、各特徴点ペアに含まれる特徴点同士を結ぶ直線の傾きの頻度に基づくことで、各特徴点ペアについて特徴点同士の対応付けが正しいかを正確に判定することができる。
【００１６】
また、特徴点同士が間違って対応付けられた特徴点ペアを排除する方法としては、ＲＡＮＳＡＣ（Random Sample Consensus）法やＬＭｅｄＳ（Least Median Square）法を用いた方法が知られている。これらの方法では、一方の画像の特徴点と他方の画像の特徴点とのほぼすべての組合せの数だけ繰り返し演算が行われるため、処理負荷が大きい。例えば、特徴点の数が１００であり、その中から対応付けが正しい特徴点のペアを４組抽出する場合に、すべての特徴点の組合せについて演算を行うものとすると、100Ｃ4＝３９２１２２５回の演算が実行されることになる。
【００１７】
これに対して、制御部１２は、直線の傾きの算出を各画像の特徴点の数だけ繰り返すため、処理負荷が大きく低減される。特徴点の数が１００の場合には、傾きの計算の回数は１００回に低減される。すなわち、本実施の形態の画像処理装置１０によれば、画像間での特徴点の対応付けが正しいかを簡易な処理で判定可能となる。
【００１８】
制御部１２は、例えば、傾きの頻度が特定の角度の範囲に一定割合以上集中して分布している場合に、複数の特徴点ペアのうち、算出された直線の傾きがその特定の範囲に含まれる特徴点ペアを正しい特徴点ペアと判定する。例えば、制御部１２は、傾きの頻度がある１つの特定の角度に一定割合以上集中して分布している場合に、算出された直線の傾きがその特定の角度である特徴点ペアを、特徴点同士の対応付けが正しい特徴点ペアと判定する。また、上記の特定の角度の範囲は、第１の画像と第２の画像とを並列させる方向に応じて決定されてもよい。
【００１９】
ここで、図１には、画像１に含まれる被写体を上方向に平行移動した被写体が画像２に含まれる場合の例を示す。画像１からは、特徴点１ａ，１ｂ，１ｃ，１ｄが検出され、画像２からは、特徴点２ａ，２ｂ，２ｃ，２ｄが検出されたものとする。また、特徴点１ａと特徴点２ａ、特徴点１ｂと特徴点２ｂ、特徴点１ｃと特徴点２ｃおよび特徴点１ｄと特徴点２ｄは、各画像の特徴点同士が一対一で対応付けられた特徴点ペアである。更に、特徴点１ａと特徴点２ａ、特徴点１ｂと特徴点２ｂおよび特徴点１ｃと特徴点２ｃの対応付けは正しく、特徴点１ｄと特徴点２ｄの対応付けは不正であるものとする。
【００２０】
制御部１２は、画像１，２を例えば水平方向に並列させて処理を行うものとする。ここで、ヒストグラム３は、制御部１２により算出された、特徴点ペアに含まれる特徴点同士を結ぶ直線の傾きの頻度の分布を示す。図１の例では、特徴点１ａと特徴点２ａ、特徴点１ｂと特徴点２ｂおよび特徴点１ｃと特徴点２ｃを結ぶ直線の傾きは共に１５°付近であり、１５°付近の傾きの頻度は３となる。一方、特徴点１ｄと特徴点２ｄを結ぶ直線の傾きは３５９°付近であり、３５９°付近の傾きの頻度は１となる。この場合、傾きの頻度の分布は傾き１５°に集中していると判定される。
【００２１】
このとき、算出された傾きが、傾きの頻度の分布が集中している１５°である特徴点ペア、または１５°を中心とした所定範囲に含まれるような特徴点ペアが、特徴点同士の対応付けが正しいものとして判定される。すなわち、特徴点１ａと特徴点２ａ、特徴点１ｂと特徴点２ｂおよび特徴点１ｃと特徴点２ｃの対応付けは、正しいと判定される。一方、算出された傾きが、傾きの頻度の分布が集中していない３５９°付近である特徴点ペアに含まれる特徴点１ｄと特徴点２ｄの対応付けは、不正と判定される。
【００２２】
以上の第１の実施の形態の画像処理装置１０によれば、画像１と画像２とを並列させた状態で、特徴点ペアに含まれる特徴点同士を結ぶ直線の傾きを算出し、算出した傾きの頻度に基づいて特徴点ペアのそれぞれについて、対応付けが正しいか否かを判定する。これにより、画像間での特徴点ペアのそれぞれについて、対応付けが正しいか否かを簡易な処理で判定可能となる。
【００２３】
［第２の実施の形態］
図２は、第２の実施の形態の画像処理装置のハードウェア構成例を示すブロック図である。画像処理装置１００は、画像処理機能を有するコンピュータである。
【００２４】
画像処理装置１００は、位置合わせを行う２つの画像のデータを、例えばクライアント４０から受信する。画像処理装置１００は、２つの画像間で類似する特徴量を有する特徴点同士を一対一で対応付けて複数の特徴点ペアを生成し、対応付けた特徴点間の位置関係に基づいて２つの画像の位置合わせを行う。また、画像処理装置１００は、複数の特徴点ペアのそれぞれについて、特徴点同士の対応付けが正しいか否かを判定する機能を有する。画像処理装置１００は、特徴点同士の対応付けが正しいと判定された特徴点のみ用いて位置合わせを行う。
【００２５】
画像処理装置１００は、プロセッサ１０１、ＲＡＭ１０２、ＨＤＤ１０３、画像信号処理部１０４、入力信号処理部１０５、ディスクドライブ１０６および通信インタフェース１０７を有する。
【００２６】
プロセッサ１０１は、プログラムの命令を実行する演算器を含む。プロセッサ１０１は、ＨＤＤ１０３に記憶されているプログラムやデータの少なくとも一部をＲＡＭ１０２にロードしてプログラムを実行する。なお、プロセッサ１０１は複数のプロセッサコアを備えてもよい。また、画像処理装置１００は、複数のプロセッサを備えてもよい。また、画像処理装置１００は、複数のプロセッサまたは複数のプロセッサコアを用いて並列処理を行ってもよい。また、２以上のプロセッサの集合、ＦＰＧＡやＡＳＩＣ等の専用回路、２以上の専用回路の集合、プロセッサと専用回路の組合せ等を「プロセッサ」と呼んでもよい。
【００２７】
ＲＡＭ１０２は、プロセッサ１０１が実行するプログラムやプログラムから参照されるデータを一時的に記憶する揮発性メモリである。なお、画像処理装置１００は、複数個の揮発性メモリを備えてもよい。
【００２８】
ＨＤＤ１０３は、ＯＳ（Operating System）やファームウェアやアプリケーションソフトウェア等のソフトウェアのプログラムおよびデータを記憶する不揮発性の記憶装置である。なお、画像処理装置１００は、ＳＳＤ（Solid State Drive）等の他の種類の記憶装置を備えてもよく、複数個の不揮発性の記憶装置を備えてもよい。
【００２９】
画像信号処理部１０４は、プロセッサ１０１からの命令に従って、画像処理装置１００に接続されたディスプレイ２１に画像を出力する。ディスプレイ２１としては、ＣＲＴ（Cathode Ray Tube）ディスプレイや液晶ディスプレイ等を用いることができる。
【００３０】
入力信号処理部１０５は、画像処理装置１００に接続された入力デバイス２２から入力信号を取得し、プロセッサ１０１に通知する。入力デバイス２２としては、マウスやタッチパネル等のポインティングデバイス、キーボード等を用いることができる。
【００３１】
なお、ディスプレイ２１や入力デバイス２２は、画像処理装置１００の筐体と一体に形成されていてもよい。
ディスクドライブ１０６は、記録媒体２３に記録されたプログラムやデータを読み取る駆動装置である。記録媒体２３として、例えば、フレキシブルディスク（ＦＤ：Flexible Disk）やＨＤＤ等の磁気ディスク、ＣＤ（Compact Disc）やＤＶＤ（Digital Versatile Disc）等の光ディスク、光磁気ディスク（ＭＯ：Magneto-Optical disk）を使用できる。ディスクドライブ１０６は、プロセッサ１０１からの命令に従って、記録媒体２３から読み取ったプログラムやデータをＲＡＭ１０２またはＨＤＤ１０３に格納する。なお、画像処理装置１００はディスクドライブ１０６を備えていなくてもよい。
【００３２】
通信インタフェース１０７は、ネットワーク３０を介して、クライアント４０などの他の情報処理装置と通信を行う。
図３は、画像処理装置の機能構成の例を示すブロック図である。画像処理装置１００は、画像情報記憶部１１０、特徴点ペア算出部１２０、特徴点情報記憶部１３０、特徴点ペア判定部１４０、頻度情報記憶部１５０および位置合わせ処理部１６０を有する。
【００３３】
画像情報記憶部１１０は、位置合わせを行う２つの画像を示す情報を記憶する。なお、本実施の形態では、位置合わせを行う２つの画像はいずれも写真であるものとする。
特徴点ペア算出部１２０は、画像情報記憶部１１０に記憶された画像情報に基づいて、各画像の特徴点を抽出する。次に、特徴点ペア算出部１２０は、一方の画像の特徴点と他方の画像の特徴点とを対応付けた特徴点ペアを複数生成し、生成された特徴点ペアに関する情報を特徴点情報記憶部１３０に格納する。特徴点ペアには、互いの特徴量が類似する特徴点同士が対応付けられる。
【００３４】
特徴点情報記憶部１３０は、特徴点ペア算出部１２０によって生成された各特徴点ペアに関する情報を記憶する。
特徴点ペア判定部１４０は、位置合わせを行う各画像を所定方向に並列させた状態において、生成された複数の特徴点ペアのそれぞれについて、各特徴点ペアに含まれる特徴点同士を結ぶ直線の傾きを算出する。算出される傾きとは、特徴点ペアに含まれる特徴点同士を結ぶ直線と所定の基準線との角度である。本実施の形態では、基準線を水平線とし、注目点から水平線に沿って右方向を０°とし、左回り方向を正の回転方向、右回り方向を負の回転方向とする。特徴点ペア判定部１４０は、各特徴点ペアについて算出した傾きの頻度情報を生成して、頻度情報記憶部１５０に格納する。
【００３５】
特徴点ペア判定部１４０は、生成した頻度情報に基づいて、特徴点ペアのそれぞれについて、含まれる特徴点同士の対応付けが正しいか否かを判定し、対応付けが誤っていると判定された特徴点ペアの情報を特徴点ペアテーブルから削除する。
【００３６】
頻度情報記憶部１５０は、特徴点ペア判定部１４０により生成された、特徴点ペアについて算出された傾きの頻度情報を一時的に記憶する。
位置合わせ処理部１６０は、特徴点ペアテーブルに登録されている各特徴点ペアに含まれる特徴点同士の位置関係に基づいて、画像間の位置合わせを行う。
【００３７】
図４は、特徴点ペアテーブルの例を示す図である。特徴点ペアテーブル１３１は、各特徴点ペアに関する情報を特徴点ペア毎に格納するテーブルである。特徴点ペアテーブル１３１は、特徴点情報記憶部１３０に記憶されている。
【００３８】
特徴点ペアテーブル１３１は、ＩＤ、特徴点＃１、特徴点＃２および傾きの項目を有する。ＩＤの項目には、特徴点ペアを識別するための番号が設定される。特徴点＃１には、２つの画像のうちの一方の画像における特徴点の座標が設定される。特徴点＃２には、２つの画像のうちの他方の画像における特徴点の座標が設定される。
【００３９】
同一ＩＤに対応付けられた、特徴点＃１，＃２に設定された２つの特徴点により、１組の特徴点ペアが構成される。位置合わせの対象となる各画像からは同数の特徴点が抽出され、一方の画像の特徴点のそれぞれと他方の画像の特徴点のそれぞれとが一対一で対応付けられる。これにより、一方の画像から抽出された特徴点と同じ数の特徴点ペアが生成される。
【００４０】
傾きの項目には、２つの画像が並んだ状態において、特徴点ペアについて算出された傾きが設定される。
図５は、特徴点ペアについての傾きの頻度情報に基づくヒストグラムの例を示す図である。ヒストグラム１５１は、各特徴点ペアについての傾きの頻度情報に基づくヒストグラムである。ヒストグラム１５１に対応する頻度情報は、頻度情報記憶部１５０に記憶されている。ヒストグラム１５１において、ｘ軸は特徴点ペアについて算出された傾きを示し、ｙ軸は当該傾きの頻度を示す。
【００４１】
次に、水平方向に画像を並べた場合において、２つの画像の被写体の状態と傾きの頻度情報との関係について説明する。なお、以下の図６〜図９において、破線矢印は、特徴点ペアに含まれる特徴点同士を結んだ直線を示す。
【００４２】
図６は、被写体が平行移動の関係にあるときのヒストグラムの例を示す図である。画像１１３は、画像１１２に含まれる被写体１１１が右下方向に平行移動された画像である。
画像１１２からは、特徴点１１２ａ，１１２ｂ，１１２ｃ，１１２ｄが抽出され、画像１１３からは、特徴点１１３ａ，１１３ｂ，１１３ｃ，１１３ｄが抽出されたものとする。特徴点１１２ａと特徴点１１３ａ、特徴点１１２ｂと特徴点１１３ｂ、特徴点１１２ｃと特徴点１１３ｃは、それぞれ特徴点ペアとして対応付けられ、対応付けが正しいものとする。一方、特徴点１１２ｄと特徴点１１３ｄは、特徴点ペアとして対応付けられたが、対応付けが不正であるものとする。
【００４３】
特徴点ペア判定部１４０は、各特徴点ペアについて特徴点同士を直線で結び、それらの直線の傾き（角度）を算出する。図６で示すように、画像１１２，１１３を水平方向に並べた状態では、対応付けが正しい各特徴点ペアについて算出された傾きは同一となる。このため、対応付けが正しい特徴点ペアについての傾きは、ヒストグラム１５２のように１つの値に集中する。一方、特徴点１１２ｄ，１１３ｄの特徴点ペアのような対応付けが不正な特徴点ペアについては、算出される直線の傾きは不定であるため、１つの値に集中せずに分散する。その結果、対応付けが正しい特徴点ペアの傾きの頻度は、他の傾きの頻度と比べ突出し、頻度の分布には顕著なピークが現れる。
【００４４】
したがって、水平方向に画像を並べたとき、傾きの頻度の分布に顕著なピークが現れる場合、ピークに対応する傾きが算出された特徴点ペアを、特徴点同士の対応付けが正しい特徴点ペアを判定できる。なお、例えば、画像の歪みを考慮して、算出された傾きがピークを中心とした一定幅に含まれるような特徴点ペアを、特徴点同士の対応付けが正しい特徴点ペアと判定してもよい。
【００４５】
図７は、画像が拡大縮小の関係にあるときのヒストグラムの例を示す図である。画像１１４，１１５には、同一の被写体１１１が含まれている。また、画像１１５は、画像１１４を拡大した画像である。
【００４６】
画像１１４からは、特徴点１１４ａ，１１４ｂ，１１４ｃ，１１４ｄが抽出され、画像１１５からは、特徴点１１５ａ，１１５ｂ，１１５ｃ，１１５ｄが抽出されたものとする。特徴点１１４ａと特徴点１１５ａ、特徴点１１４ｂと特徴点１１５ｂ、特徴点１１４ｃと特徴点１１５ｃは、それぞれ特徴点ペアとして対応付けられ、対応付けが正しいものとする。一方、特徴点１１４ｄと特徴点１１５ｄは、特徴点ペアとして対応付けられたが、対応付けが不正であるものとする。
【００４７】
図７で示すように、画像１１４，１１５の上端を揃えて水平方向に並べた状態では、対応付けが正しい各特徴点ペアについて算出された傾きは、２７０°〜０°（３６０°）の範囲内となる。一方、特徴点１１４ｄ，１１５ｄの特徴点ペアのような対応付けが不正な特徴点ペアの傾きは、不定であるため、各特徴点ペアについて算出された傾きにばらつきが生じる。そのため、上記の場合の特徴点ペアについて算出された傾きの頻度は、ヒストグラム１５３のように２７０°〜０°の範囲内に集中する。したがって、画像１１４，１１５を上端を揃えて水平方向に並べたとき、２７０°〜０°（３６０°）の範囲内に傾きの頻度の分布が集中する場合には、算出された傾きが当該範囲に含まれない特徴点ペアについては特徴点同士の対応付けが正しくないと推定される。
【００４８】
なお、例えば、画像１１４，１１５の下端を揃えて水平方向に並べた状態では、対応付けが正しい各特徴点ペアについて算出された傾きは、０°〜９０°の範囲内となる。したがって、画像１１４，１１５を下端を揃えて水平方向に並べたとき、０°〜９０°の範囲内に傾きの頻度の分布が集中する場合には、算出された傾きが当該範囲に含まれない特徴点ペアについては特徴点同士の対応付けが正しくないと推定される。
【００４９】
また、以上の説明は、他方の画像１１５が一方の画像１１４を拡大したものであるケースであるが、例えば、他方の画像が一方の画像を縮小したものである場合は、次のように判定される。各画像を上端を揃えて水平方向に並べたとき、０°〜９０°の範囲内に傾きの頻度の分布が集中する場合には、算出された傾きが当該範囲に含まれない特徴点ペアについては特徴点同士の対応付けが正しくないと推定される。一方、各画像を下端を揃えて水平方向に並べたとき、２７０°〜０°（３６０°）の範囲内に傾きの頻度の分布が集中する場合には、算出された傾きが当該範囲に含まれない特徴点ペアについては特徴点同士の対応付けが正しくないと推定される。
【００５０】
また、図示していないが、例えば、右側に配置した画像内の被写体が、左側に配置した同サイズの画像内の被写体を当該画像の左端より左外側の点を基準として右回りに回転させたものである場合、対応付けが正しい各特徴点ペアについて算出された傾きは、２７０°〜０°の範囲内となる。一方、右側に配置した画像内の被写体が、左側に配置した同サイズの画像内の被写体を当該画像の左端より左外側の点を基準として左回りに回転させたものである場合、対応付けが正しい各特徴点ペアについて算出された傾きは、０°〜９０°の範囲内となる。
【００５１】
また、右側に配置した画像内の被写体が、左側に配置した同サイズの画像内の被写体を当該画像の右端より右外側の点を基準として左回りに回転させたものである場合、対応付けが正しい各特徴点ペアについて算出された傾きは、２７０°〜０°の範囲内となる。一方、右側に配置した画像内の被写体が、左側に配置した同サイズの画像内の被写体を当該画像の右端より右外側の点を基準として右回りに回転させたものである場合、対応付けが正しい各特徴点ペアについて算出された傾きは、０°〜９０°の範囲内となる。
【００５２】
したがって、同サイズの画像を水平方向に並べたとき、２７０°〜０°または０°〜９０°のいずれかの範囲内に傾きの頻度の分布が集中する場合は、算出された傾きが当該範囲に含まれない特徴点ペアについては特徴点同士の対応付けが正しくないと推定される。
【００５３】
図８は、被写体が回転の関係にあるときのヒストグラムの例を示す図である。画像１１７は、画像１１６に含まれる被写体１１１が画像１１６の内部の一点を中心として回転された画像である。
【００５４】
画像１１６からは、特徴点１１６ａ，１１６ｂ，１１６ｃ，１１６ｄが抽出され、画像１１７からは、特徴点１１７ａ，１１７ｂ，１１７ｃ，１１７ｄが抽出されたものとする。特徴点１１６ａと特徴点１１７ａ、特徴点１１６ｂと特徴点１１７ｂ、特徴点１１６ｃと特徴点１１７ｃは、それぞれ特徴点ペアとして対応付けられ、対応付けが正しいものとする。一方、特徴点１１６ｄと特徴点１１７ｄは、特徴点ペアとして対応付けられたが、対応付けが不正であるものとする。
【００５５】
図８で示すように、画像１１６，１１７を水平方向に並べた状態では、対応付けが正しい各特徴点ペアについて算出された傾きは、０°（３６０°）−ｎ°〜０°＋ｎ°（ただし、０＜ｎ＜９０）の範囲内となる。一方、特徴点１１６ｄ，１１７ｄの特徴点ペアのように対応付けが不正な特徴点ペアの傾きは、不定であるため、各特徴点ペアについて算出された傾きにばらつきが生じる。そのため、上記の場合の特徴点ペアについて算出された傾きの頻度は、ヒストグラム１５４のように０°（３６０°）−ｎ°〜０°＋ｎ°の範囲内に集中する。なお、ｎがとり得る範囲は理論上０＜ｎ＜９０であるが、対応付けが正しい特徴点ペアについて算出された傾きが９０°に近づくケースは希である。そのため、実用上は、ｎの最大値を４５°程度に設定してもよい。
【００５６】
以上より、水平方向に画像を並べたとき、０°（３６０°）−ｎ°〜０°＋ｎ°の範囲内に傾きの頻度の分布が集中する場合は、算出された傾きが当該範囲内に含まれない特徴点ペアについては特徴点同士の対応付けが正しくないと推定される。
【００５７】
図９は、第２の実施の形態の画像処理の例を示すフローチャートである。以下、図９に示す処理をステップ番号に沿って説明する。
（ステップＳ１１）特徴点ペア算出部１２０は、画像情報記憶部１１０に記憶された各画像の情報に基づいて、各画像から特徴点を抽出する。特徴点の抽出は、例えば、建物の角や交差点等の点を用いて抽出してもよい。また、特徴点の抽出は、ＳＩＦＴ（Scale Invariant Feature Transform）やＳＵＲＦ（Speeded Up Robust Feature）等を用いて行ってもよい。
【００５８】
（ステップＳ１２）特徴点ペア算出部１２０は、一方の画像の特徴点のそれぞれと、他方の画像の特徴点のそれぞれとを一対一で対応付けた特徴点ペアを生成する。そして、生成した特徴点ペアに関する情報を特徴点情報記憶部１３０に記憶する。
【００５９】
特徴点の対応付けの手順としては、例えば、特徴点ペア算出部１２０はまず、抽出した各特徴点について特徴点の情報を示す特徴量を算出する。特徴量には、例えば、抽出した特徴点での特徴ベクトルを特徴量として抽出したＳＩＦＴ特徴量やＳＵＲＦ特徴量等がある。また、特徴量は、特徴点を中心とした所定の領域内における各画素の輝度の平均値や分散値に基づいて算出してもよい。
【００６０】
次に、特徴点ペア算出部１２０は、一方の画像の特徴点の特徴量と最も類似度の高い特徴量を有する特徴点を他方の画像から特定する。そして、特定した特徴点と一方の画像の特徴点を対応付けることで特徴点ペアを生成する。
【００６１】
（ステップＳ１３）特徴点ペア判定部１４０は、各画像を所定の方向（ここでは、水平方向）に並べた状態において、各特徴点ペアについて、特徴点ペアに含まれる特徴点同士を結んだ直線の傾きを算出する。このとき、特徴点ペア判定部１４０は、各画像の上端または下端が水平方向で一致するように画像を並列させる。また、傾きは、一方の画像の特徴点から他方の画像の特徴点に向かう方向と、水平線に沿った右方向とがなす角度である。
【００６２】
特徴点ペア判定部１４０は、算出した傾きを、特徴点ペアテーブル１３１における対応する特徴点ペアの傾きとして登録する。そして、特徴点ペア判定部１４０は、特徴点ペアテーブル１３１の各特徴点ペアの傾きの頻度を示す情報に基づいて頻度情報を生成し、頻度情報記憶部１５０に登録する。
【００６３】
（ステップＳ１４）特徴点ペア判定部１４０は、頻度情報に基づき、算出された傾きが１つの角度に集中しているか（すなわち、頻度の分布に顕著なピークがあるか）判定する。傾きが１つの角度に集中している場合、処理をステップＳ１５へ進める。傾きが１つの角度に集中していない場合、処理をステップＳ１６へ進める。
【００６４】
傾きが１つの角度に集中しているか否かは、ヒストグラムにおいて顕著なピークが存在するか否かによって判断できる。例えば、１番高い頻度が２番目に高い頻度に対して数倍（例えば、３倍）以上か否かにより判断できる。また、全頻度の合計に対して１番高い頻度が所定の割合（例えば、４０％）以上か否かにより判断してもよい。
【００６５】
（ステップＳ１５）特徴点ペア判定部１４０は、算出された傾きが、１番高い頻度である傾き（顕著なピークに対応する傾き）を中心とした一定範囲に含まれる特徴点ペアのそれぞれについて、含まれる特徴点同士の対応付けが正しいと判定する。１番高い頻度である傾きを中心とした範囲は、例えば、当該傾き−３°〜当該傾き＋３°の範囲である。特徴点ペア判定部１４０は、対応付けが正しいと判定されなかった特徴点ペアの情報を特徴点ペアテーブル１３１から削除する。
【００６６】
（ステップＳ１６）特徴点ペア判定部１４０は、頻度情報に基づき、０°〜９０°の範囲に頻度の分布が集中しているか判定する。当該範囲に頻度の分布が集中している場合、特徴点ペア判定部１４０は、角度範囲を０°〜９０°に設定する。そして、処理をステップＳ１９へ進める。一方、当該範囲に頻度の分布が集中していない場合、処理をステップＳ１７へ進める。
【００６７】
頻度の分布が集中しているか否かは、例えば、０°〜９０°の範囲の頻度の合計が、０°〜９０°以外の範囲の頻度の合計の数倍（例えば、２倍）以上か否かにより判断できる。
【００６８】
（ステップＳ１７）特徴点ペア判定部１４０は、頻度情報に基づき、２７０°〜３６０°の範囲に頻度の分布が集中しているか判定する。当該範囲に頻度の分布が集中している場合、特徴点ペア判定部１４０は、角度範囲を２７０°〜３６０°に設定する。そして、処理をステップＳ１９へ進める。一方、当該範囲に頻度の分布が集中していない場合、処理をステップＳ１８へ進める。
【００６９】
頻度の分布が集中しているか否かは、例えば、２７０°〜３６０°の範囲の頻度の合計が、２７０°〜３６０°以外の範囲の頻度の合計の数倍（例えば、２倍）以上か否かにより判断できる。
【００７０】
（ステップＳ１８）特徴点ペア判定部１４０は、頻度情報に基づき、０°を中心として傾きの頻度の分布が集中する範囲を算出する。当該範囲の算出は、０°（３６０°）−ｎ°〜０°＋ｎ°（ｎは、１以上の整数）の範囲の頻度の合計が全頻度の合計に対して所定の割合（例えば、５０％）になるようにｎを算出することで実現できる。なお、前述のように、ｎの範囲は理論上は０＜ｎ＜９０であるが、実用上は０＜ｎ＜４５程度とすることができる。特徴点ペア判定部１４０は、算出したｎの値を用いて、角度範囲を０°（３６０°）−ｎ°〜０°＋ｎ°に設定する。
【００７１】
（ステップＳ１９）特徴点ペア判定部１４０は、ステップＳ１６乃至ステップＳ１８のいずれかで設定された角度範囲に含まれる傾きが算出された特徴点ペアのそれぞれについて、含まれる特徴点同士の対応付けが正しいと判定する。特徴点ペア判定部１４０は、対応付けが正しいと判定されなかった特徴点ペアの情報を特徴点ペアテーブル１３１から削除する。
【００７２】
（ステップＳ２０）位置合わせ処理部１６０は、特徴点ペアテーブル１３１に現時点で登録されている特徴点ペアの位置関係に基づいて各画像の位置合わせを実施する。また、位置合わせ処理部１６０は、位置合わせを行った状態で、各画像間で差分が大きい領域を検出し、その領域を示す情報を出力してもよい。
【００７３】
なお、以上の図９の処理において、ステップＳ３４，Ｓ３５の処理順は変更可能である。ただし、ステップＳ３２の判定処理は、ステップＳ３４，Ｓ３５の判定処理より優先されることが望ましい。また、ステップＳ３４，Ｓ３５の判定処理は、ステップＳ３６の判定処理より優先されることが望ましい。
【００７４】
第２の実施の形態の画像処理装置によれば、水平方向に並べた２つの画像について、特徴点ペアについて算出された傾きの頻度の分布が顕著なピークを持つ場合や特定の範囲に集中している場合、ピークに対応する傾きが算出された特徴点ペア、あるいは当該特定の範囲に含まれる傾きが算出された特徴点ペアに含まれる特徴点同士の対応付けが正しいと判定する。これにより、ＲＡＮＳＡＣ法やＬＭｅｄＳ法を用いた方法と比べ、対応付けが正しいかの判定を簡易な処理で実現できる。したがって、判定処理の負荷が軽減され、またその処理速度が向上する。
【００７５】
また、これにより、特徴点ペア全体に対する対応付けが正しい特徴点同士を含む特徴点ペアの割合が小さい場合でも、対応付けが正しい特徴点同士を含む特徴点ペアを精度よく判定できる。例えば、ＲＡＮＳＡＣ法やＬＭｅｄＳ法によって特徴点ペアの組合せの中から最も座標のずれが少ない特徴点ペアの組合せを用いる方法では、対応付けが正しい特徴点同士を含む特徴点ペアが全体の半分以上を占めない場合、対応付けが不正である特徴点ペアの特定の精度が落ちる場合がある。一方、画像処理装置１００を用いると、例えば、平行移動した画像同士について特徴点ペアを特定する場合、１番高い傾きの頻度が２番目に高い傾きの頻度の数倍（例えば、３倍）または全体の４０％程度でも、対応付けが不正である特徴点ペアを特定できる。よって、１番高い傾きの頻度がそれ以外の傾きの頻度と比べ低い場合でも、対応付けが不正である特徴点同士を含む特徴点ペアを精度よく除去できる。
【００７６】
また、画像処理装置１００は、水平方向に画像を並べたとき、１つの傾きに頻度の分布に顕著なピークが現れる場合、顕著なピークに対応する角度を中心とした一定範囲に含まれる傾きが算出された特徴点ペアを、対応付けが正しい特徴点同士を含む特徴点ペアと判定する。これにより、被写体が平行移動の関係にある２つの画像から抽出された特徴点ペアについて、特徴点ペアの対応付けが正しいか否かを判定できる。
【００７７】
また、画像処理装置１００は、２７０°〜０°または０°〜９０°のいずれかの範囲内のみに当該傾きの頻度の分布が集中する場合、当該範囲内の傾きが算出された特徴点ペアを対応付けが正しい特徴点同士を含む特徴点ペアと判定する。これにより、拡大・縮小の関係にある２つの画像から抽出された特徴点ペアについて、特徴点ペアの対応付けが正しいか否かを判定できる。
【００７８】
また、画像処理装置１００は、（３６０°）−ｎ°〜０°＋ｎ°の範囲内に当該傾きの頻度の分布が集中する場合、当該範囲内の傾きが算出された特徴点ペアを対応付けが正しい特徴点同士を含む特徴点ペアと判定する。これにより、被写体が画像内の一点を中心とした回転の関係にある２つの画像から抽出された特徴点ペアについて、特徴点ペアの対応付けが正しいか否かを判定できる。
【００７９】
なお、以上の第２の実施の形態では、画像を水平方向に並列させた場合について説明したが、画像を並列させる方向は水平方向に限らず、例えば、画像を垂直方向に並列させることもできる。なお、画像を垂直方向に並列させた場合の判定条件は、次の第３の実施の形態で説明する判定条件と同様である。
【００８０】
［第３の実施の形態］
次に、第３の実施の形態について説明する。第３の実施の形態の画像処理装置は、第２の実施の形態の画像処理装置１００による処理の一部を変形したものである。
【００８１】
図１０は、第３の実施の形態の処理例を示す図である。画像２１２は、画像２１１に含まれる被写体１１１を右方向に平行移動した画像である。
画像２１１からは、特徴点２１１ａ，２１１ｂ，２１１ｃが抽出され、画像２１２からは、特徴点２１２ａ，２１２ｂ，２１２ｃが抽出されたものとする。特徴点２１１ａと特徴点２１２ａ、特徴点２１１ｂと特徴点２１２ｂは、それぞれ特徴点ペアとして対応付けられ、対応付けが正しいものとする。一方、特徴点２１１ｃと特徴点２１２ｃは、特徴点ペアとして対応付けられたが、対応付けが不正であるものとする。特徴点２１１ｃ，２１２ｃは、ｘ座標のみが異なる座標に存在する。
【００８２】
図１０上段のように画像２１１，２１２を水平方向に並列させた状態では、対応付けが不正である特徴点ペア（特徴点２１１ｃと特徴点２１２ｃ）について算出された傾きは、対応付けが正しい特徴点同士を含む特徴点ペアについて算出された傾きと同一となる。このため、特徴点２１１ｃと特徴点２１２ｃとを含む特徴点ペアは、対応付けが不正であるにもかかわらず、対応付けが不正な特徴点ペアとして判定されない。
【００８３】
一方、図１０下段のように画像２１１，２１２を垂直方向に並列させた状態では、対応付けが不正である特徴点ペア（特徴点２１１ｃと特徴点２１２ｃ）について算出された傾きは、対応付けが正しい特徴点同士を含む特徴点ペアについて算出された傾きと異なる。このため、特徴点２１１ｃと特徴点２１２ｃとを含む特徴点ペアは、対応付けが不正な特徴点ペアとして正確に判定されない。
【００８４】
このように、各画像を並列させる方向により対応付けが不正な特徴点ペアを正確に判定できない場合がある。
そこで、第３の実施の形態では、各画像を複数の方向に並べ、それぞれの並列状態において特徴点ペアに含まれる特徴点の対応付けが正しいかを判定することで、判定精度を向上させる。本実施の形態では、各画像を水平方向に加えて垂直方向にも並列させるものとする。
【００８５】
以下の説明では、第３の実施の形態の画像処理装置の構成要素について、第２の実施の形態の画像処理装置１００と同様の符号を用いて示す。そして、第２の実施の形態と同様の機能・構成については説明を省略する。
【００８６】
まず、垂直方向に画像を並べた場合において、２つの画像の被写体の状態と傾きの頻度情報との関係について説明する。
図１１は、被写体が平行移動の関係にあるときのヒストグラムの例を示す図である。画像２１４は、画像２１３に含まれる被写体１１１が右下方向に平行移動された画像である。
【００８７】
画像２１３からは、特徴点２１３ａ，２１３ｂ，２１３ｃ，２１３ｄが抽出され、画像２１４からは、特徴点２１４ａ，２１４ｂ，２１４ｃ，２１４ｄが抽出されたものとする。特徴点２１３ａと２１４ａ、特徴点２１３ｂと２１４ｂ、特徴点２１３ｃと２１４ｃは、それぞれ特徴点ペアとして対応付けられ、対応付けが正しいものとする。一方、特徴点２１３ｄ，２１４ｄは、特徴点ペアとして対応付けられたが、対応付けが不正であるものとする。
【００８８】
図１１で示すように、画像２１３，２１４を垂直方向に並べた状態では、対応付けが正しい各特徴点ペアについて算出された傾きは同一となる。一方、特徴点２１３ｄ，２１４ｄの特徴点ペアのような対応付けが不正である特徴点ペアの傾きは、不定であるため、各特徴点ペアについて算出された傾きにばらつきが生じる。そのため、上記の場合の特徴点ペアについて算出された傾きの頻度は、ヒストグラム２５１のように１つの角度に集中し、頻度の分布には顕著なピークが現れる。
【００８９】
したがって、垂直方向に画像を並べたとき、傾きの頻度の分布に顕著なピークが現れる場合は、ピークに対応する傾き、またはそのピークを中心とした一定幅に含まれる傾きが算出された特徴点ペアを、対応付けが正しい特徴点同士を含む特徴点ペアと判定できる。
【００９０】
なお、画像を水平方向に並べた場合、頻度の分布が集中する傾きは０°付近となる確率が高くなる。一方、画像を垂直方向に並べた場合、頻度の分布が集中する傾きは２７０°付近となる確率が高くなる。このように、垂直方向に画像を並べたときは、頻度の分布が集中する傾きが画像を水平方向に並べた場合と異なる。
【００９１】
図１２は、画像が拡大縮小の関係にあるときのヒストグラムの例を示す図である。画像２１５，２１６には、同一の被写体１１１が含まれている。画像２１６は、画像２１５を拡大した画像である。
【００９２】
画像２１５からは、特徴点２１５ａ，２１５ｂ，２１５ｃ，２１５ｄが抽出され、画像２１６からは、特徴点２１６ａ，２１６ｂ，２１６ｃ，２１６ｄが抽出されたものとする。特徴点２１５ａと特徴点２１６ａ、特徴点２１５ｂと特徴点２１６ｂ、特徴点２１５ｃと特徴点２１６ｃは、それぞれ特徴点ペアとして対応付けられ、対応付けが正しいものとする。一方、特徴点２１５ｄと特徴点２１６ｄは、特徴点ペアとして対応付けられたが、対応付けが不正であるものとする。
【００９３】
図１２で示すように、画像２１５，２１６の左端を揃えて垂直方向に並べた状態では、対応付けが正しい各特徴点ペアについて算出された傾きは、２７０°〜０°（３６０°）の範囲内となる。一方、特徴点２１５ｄ，２１６ｄの特徴点ペアのような対応付けが不正である特徴点ペアの傾きは不定であるため、傾きにばらつきが生じる。そのため、上記の場合の特徴点ペアについて算出された傾きの頻度は、ヒストグラム２５２のように２７０°〜０°の範囲内に集中する。したがって、画像２１５，２１６を左端を揃えて垂直方向に並べたとき、２７０°〜０°（３６０°）の範囲内に傾きの頻度の分布が集中する場合には、算出された傾きが当該範囲に含まれない特徴点ペアについては特徴点同士の対応付けが正しくないと推定される。
【００９４】
なお、画像２１５，２１６の右端を揃えて垂直方向に並べた状態では、対応付けが正しい各特徴点ペアについて算出された傾きは、１８０°〜２７０°の範囲内となる。したがって、画像２１５，２１６を右端を揃えて垂直方向に並べたとき、１８０°〜２７０°の範囲内に傾きの頻度の分布が集中する場合には、算出された傾きが当該範囲に含まれない特徴点ペアについては特徴点同士の対応付けが正しくないと推定される。
【００９５】
また、以上の説明は、他方の画像２１６が一方の画像２１５を拡大したものであるケースであるが、例えば、他方の画像が一方の画像を縮小したものである場合は、次のように判定される。各画像を左端を揃えて垂直方向に並べたとき、１８０°〜２７０°の範囲内に傾きの頻度の分布が集中する場合には、算出された傾きが当該範囲に含まれない特徴点ペアについては特徴点同士の対応付けが正しくないと推定される。一方、各画像を右端を揃えて垂直方向に並べたとき、２７０°〜０°（３６０°）の範囲内に傾きの頻度の分布が集中する場合には、算出された傾きが当該範囲に含まれない特徴点ペアについては特徴点同士の対応付けが正しくないと推定される。
【００９６】
また、図示していないが、例えば、下側に配置した画像内の被写体が、上側に配置した同サイズの画像内の被写体を当該画像の下端より下の外側の点を基準として右回りに回転させたものである場合、対応付けが正しい各特徴点ペアについて算出された傾きは、２７０°〜０°（３６０°）の範囲内となる。一方、下側に配置した画像内の被写体が、上側に配置した同サイズの画像内の被写体を当該画像の下端より下外側の点を基準として左回りに回転させたものである場合、対応付けが正しい各特徴点ペアについて算出された傾きは、１８０°〜２７０°の範囲内となる。
【００９７】
また、下側に配置した画像内の被写体が、上側に配置した同サイズの画像内の被写体を当該画像の上端より上の外側の点を基準として左回りに回転させたものである場合、対応付けが正しい各特徴点ペアについて算出された傾きは、１８０°〜２７０°の範囲内となる。一方、下側に配置した画像内の被写体が、上側に配置した同サイズの画像内の被写体を当該画像の上端より上の外側の点を基準として右回りに回転させたものである場合、対応付けが正しい各特徴点ペアについて算出された傾きは、２７０°〜０°（３６０°）の範囲内となる。
【００９８】
したがって、同サイズの画像を垂直方向に並べたとき、２７０°〜０°または０°〜９０°のいずれかの範囲内に傾きの頻度の分布が集中する場合は、算出された傾きが当該範囲に含まれない特徴点ペアについては特徴点同士の対応付けが正しくないと推定される。この場合、水平方向に並列させる場合とは、対応付けが正しい特徴点同士を含む特徴点ペアと判定する傾きの範囲が異なる。
【００９９】
図１３は、被写体が回転の関係にあるときのヒストグラムの例を示す図である。画像２１８は、画像２１７に含まれる被写体１１１が画像２１７の内部の一点を中心として回転された画像である。
【０１００】
画像２１７からは、特徴点２１７ａ，２１７ｂ，２１７ｃ，２１７ｄが抽出され、画像２１８からは、特徴点２１８ａ，２１８ｂ，２１８ｃ，２１８ｄが抽出されたものとする。特徴点２１７ａと特徴点２１８ａ、特徴点２１７ｂと特徴点２１８ｂ、特徴点２１７ｃと特徴点２１８ｃは、それぞれ特徴点ペアとして対応付けられ、対応付けが正しいものとする。一方、特徴点２１７ｄと特徴点２１８ｄは、特徴点ペアとして対応付けられたが、対応付けが不正であるものとする。
【０１０１】
図１３で示すように、画像２１７，２１８を垂直方向に並べた状態では、対応付けが正しい各特徴点ペアについて算出された傾きは、２７０°−ｎ°〜２７０°＋ｎ°（ただし、０＜ｎ＜９０）の範囲内となる。一方、特徴点２１７ｄ，２１８ｄの特徴点ペアのように対応付けが不正である特徴点ペアの傾きは、不定であるため、傾きにばらつきが生じる。そのため、上記の場合の特徴点ペアについて算出された傾きの頻度は、ヒストグラム２５３のように２７０°−ｎ°〜２７０°＋ｎ°の範囲内に集中する。なお、図８と同様に、ｎがとり得る範囲は理論上０＜ｎ＜９０であるが、実用上はｎの最大値を４５°程度に設定してもよい。
【０１０２】
以上より、垂直方向に画像を並べたとき、２７０°−ｎ°〜２７０°＋ｎ°の範囲内に傾きの頻度の分布が集中する場合は、算出された傾きが当該範囲に含まれない特徴点ペアについては特徴点同士の対応付けが正しくない特徴点ペアと推定される。この場合、水平方向に並列させる場合とは、傾きの取り得る範囲が、０°−ｎ°〜０°＋ｎ°ではなく２７０°−ｎ°〜２７０°＋ｎ°である点で異なる。
【０１０３】
図１１〜図１３で示すように、画像を水平方向に並べた状態と垂直方向に並べた状態とでは、各特徴点ペアの判定において、対応付けが正しい特徴点同士を含む特徴点ペアと判定する傾きの範囲が異なる。
【０１０４】
図１４は、第３の実施の形態の画像処理の例を示すフローチャートである。図１４で説明する処理は、図９で説明したステップＳ１５またはステップＳ１９と、ステップＳ２０との間に実行される。以下、図１４に示す処理をステップ番号に沿って説明する。
【０１０５】
（ステップＳ３１）特徴点ペア判定部１４０は、各画像をステップＳ１３と異なる方向（ここでは、垂直方向）に並列させた状態において、各特徴点ペアについて、特徴点ペアに含まれる特徴点同士を結んだ直線の傾きを算出する。このとき、特徴点ペア判定部１４０は、各画像の左端または右端が垂直方向で一致するように画像を並列させる。
【０１０６】
特徴点ペア判定部１４０は、算出した傾きで特徴点ペアテーブル１３１の特徴点ペアの傾きを更新する。そして、特徴点ペア判定部１４０は、特徴点ペアテーブル１３１の各特徴点ペアの傾きの頻度を示す情報に基づいて頻度情報を生成する。
【０１０７】
なお、ステップＳ３１の実行開始時点では、図９のステップＳ１５またはステップＳ１９によって、特徴点同士の対応付けが不正と判定された特徴点ペアの情報は、特徴点ペアテーブル１３１から削除されている。したがって、ステップＳ３１では、特徴点ペアテーブル１３１に登録された残りの特徴点ペアについてのみ傾きが算出されるので、処理負荷が軽減される。
【０１０８】
（ステップＳ３２）特徴点ペア判定部１４０は、図９のステップＳ１４と同様に、頻度情報に基づき、算出された傾きが１つの角度に集中しているか（すなわち、頻度の分布に顕著なピークがあるか）判定する。傾きが１つの角度に集中している場合、処理をステップＳ３３へ進める。傾きが１つの角度に集中していない場合、処理をステップＳ３４へ進める。
【０１０９】
（ステップＳ３３）特徴点ペア判定部１４０は、図９のステップＳ１５と同様に、算出された傾きが、１番高い頻度である傾き（顕著なピークに対応する傾き）を中心とした一定範囲に含まれる特徴点ペアのそれぞれについて、含まれる特徴点同士の対応付けが正しいと判定する。特徴点ペア判定部１４０は、対応付けが正しいと判定されなかった特徴点ペアの情報を特徴点ペアテーブル１３１から削除する。
【０１１０】
（ステップＳ３４）特徴点ペア判定部１４０は、頻度情報に基づき、１８０°〜２７０°の範囲に頻度の分布が集中しているか判定する。当該範囲に頻度の分布が集中している場合、特徴点ペア判定部１４０は、角度範囲を１８０°〜２７０°に設定する。そして、処理をステップＳ３７へ進める。一方、当該範囲に頻度の分布が集中していない場合、処理をステップＳ３５へ進める。
【０１１１】
頻度の分布が集中しているか否かの判断は、図９のステップＳ１６と同様に行う。
（ステップＳ３５）特徴点ペア判定部１４０は、頻度情報に基づき、２７０°〜３６０°の範囲に頻度の分布が集中しているか判定する。当該範囲に頻度の分布が集中している場合、特徴点ペア判定部１４０は、角度範囲を２７０°〜３６０°に設定する。そして、処理をステップＳ３７へ進める。一方、当該範囲に頻度の分布が集中していない場合、処理をステップＳ３６へ進める。
【０１１２】
頻度の分布が集中しているか否かの判断は、図９のステップＳ１７と同様に行う。
（ステップＳ３６）特徴点ペア判定部１４０は、頻度情報に基づき、２７０°を中心として傾きの頻度の分布が集中する範囲を算出する。当該範囲の算出は、図９のステップＳ１８と同様の手順により、２７０°−ｎ°〜２７０°＋ｎ°（ｎは、１以上の整数）の範囲の頻度の合計が全頻度の合計に対して所定の割合（例えば、５０％）になるようにｎを算出することで実現できる。ｎの範囲は理論上は０＜ｎ＜９０であるが、実用上は０＜ｎ＜４５程度とすることができる。特徴点ペア判定部１４０は、算出したｎの値を用いて、角度範囲を２７０°−ｎ°〜２７０°＋ｎ°に設定する。
【０１１３】
（ステップＳ３７）特徴点ペア判定部１４０は、ステップＳ３４乃至ステップＳ３６のいずれかの範囲で設定された角度範囲に含まれる傾きが算出された特徴点ペアを、対応付けが正しい特徴点同士を含む特徴点ペアと判定する。特徴点ペア判定部１４０は、対応付けが正しいと判定されなかった特徴点ペアの情報を特徴点ペアテーブル１３１から削除する。この後、図９のステップＳ２０の位置合わせ処理が実行される。
【０１１４】
以上の第３の実施の形態では、各画像を所定の方向に並列させた状態で、特徴点ペアについての傾きの算出およびその算出結果に基づく特徴点同士の対応付けを判定する。次に、判定した結果、特徴点同士の対応付けが正しいと判定された特徴点ペアを処理対象として、各画像を当該所定の方向と異なる方向に並列させた状態で、当該直線の傾きの算出およびその算出結果に基づく当該判定を実行する。これにより、各画像を所定の方向に並べた状態では対応付けが不正であると判定できなかった特徴点ペアを、不正と判定できる。したがって、全体として、特徴点の対応付けの精度を向上させることができる。
【０１１５】
なお、上記の第３の実施の形態では、画像を水平方向に並列させた状態での判定によって特徴点同士の対応付けが正しいと判定された特徴点ペアのみが、画像を垂直方向に並列させた状態での判定に用いられた。しかしながら、他の処理例として、特徴点ペア算出部１２０によって生成されたすべての特徴点ペアについて、画像を水平方向に並列させた状態での判定と、画像を垂直方向に並列させた状態での判定の両方を行い、両方の判定によって特徴点同士の対応付けが正しいと判定された特徴点ペアを、位置合わせに利用するようにしてもよい。
【０１１６】
なお、上記各実施の形態の画像処理装置が実行する処理の少なくとも一部は、コンピュータにプログラムを実行させることで実現できる。このようなプログラムは、コンピュータ読み取り可能な記録媒体（例えば、記録媒体２３）に記録しておくことができる。記録媒体としては、例えば、磁気ディスク、光ディスク、光磁気ディスク、半導体メモリ等を使用できる。磁気ディスクには、ＦＤおよびＨＤＤが含まれる。光ディスクには、ＣＤ、ＣＤ−Ｒ（Recordable）／ＲＷ（Rewritable）、ＤＶＤおよびＤＶＤ−Ｒ／ＲＷが含まれる。
【０１１７】
プログラムを流通させる場合、例えば、当該プログラムを記録した可搬記録媒体が提供される。また、プログラムを他のコンピュータの記憶装置に格納しておき、ネットワーク３０経由でプログラムを配布することもできる。コンピュータは、例えば、可搬記録媒体に記録されたプログラムまたは他のコンピュータから受信したプログラムを、記憶装置（例えば、ＨＤＤ１０３）に格納し、当該記憶装置からプログラムを読み込んで実行する。ただし、可搬記録媒体から読み込んだプログラムを直接実行してもよく、他のコンピュータからネットワーク３０を介して受信したプログラムを直接実行してもよい。また、上記の情報処理の少なくとも一部を、ＤＳＰ、ＡＳＩＣ、ＰＬＤ（Programmable Logic Device）等の電子回路で実現することも可能である。
【符号の説明】
【０１１８】
１，２  画像
１ａ，１ｂ，１ｃ，１ｄ，２ａ，２ｂ，２ｃ，２ｄ  特徴点
３  ヒストグラム
１０  画像処理装置
１１  記憶部
１２  制御部
【図１】
2014126892.tif 000003
【図２】
2014126892.tif 000004
【図３】
2014126892.tif 000005
【図４】
2014126892.tif 000006
【図５】
2014126892.tif 000007
【図６】
2014126892.tif 000008
【図７】
2014126892.tif 000009
【図８】
2014126892.tif 000010
【図９】
2014126892.tif 000011
【図１０】
2014126892.tif 000012
【図１１】
2014126892.tif 000013
【図１２】
2014126892.tif 000014
【図１３】
2014126892.tif 000015
【図１４】
2014126892.tif 000016