(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-04
(45)【発行日】2024-03-12
(54)【発明の名称】平面射影変換行列生成装置、制御方法、及びプログラム
(51)【国際特許分類】
G06T 7/33 20170101AFI20240305BHJP
G06V 10/46 20220101ALI20240305BHJP
【FI】
G06T7/33
G06V10/46
(21)【出願番号】P 2022561739
(86)(22)【出願日】2020-11-10
(86)【国際出願番号】 JP2020041962
(87)【国際公開番号】W WO2022101998
(87)【国際公開日】2022-05-19
【審査請求日】2023-04-28
(73)【特許権者】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100103894
【氏名又は名称】家入 健
(72)【発明者】
【氏名】中野 学
【審査官】山田 辰美
(56)【参考文献】
【文献】特開2015-138413(JP,A)
【文献】特開2020-057182(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00-7/90
G06V 10/46
(57)【特許請求の範囲】
【請求項1】
第1画像と第2画像から、互いに対応する特徴点のペアである特徴点ペアを2組以上検出する第1検出部と、
各前記特徴点ペアについて、その特徴点ペアに含まれる前記第1画像上の点から第1方向に第1距離離れた点と、その特徴点ペアに含まれる前記第2画像上の点から第2方向に第2距離離れた点とのペアである派生点ペアを検出する第2検出部と、
各前記検出された特徴点ペア及び派生点ペアを利用して、前記第1画像上の点から前記第2画像上の点への平面射影変換を表す平面射影変換行列を生成する生成部と、を有し、
前記第1方向と前記第1距離はそれぞれ、前記特徴点ペアに含まれる前記第1画像上の点について算出された
スケール不変特徴量の主軸方向とスケールの長さに基づいて定まり、
前記第2方向と前記第2距離はそれぞれ、前記特徴点ペアに含まれる前記第2画像上の点について算出された
スケール不変特徴量の主軸方向とスケールの長さに基づいて定まる、平面射影変換行列生成装置。
【請求項2】
第1画像と第2画像から、互いに対応する特徴点のペアである特徴点ペアを2組以上検出する第1検出部と、
各前記特徴点ペアについて、その特徴点ペアに含まれる前記第1画像上の点から第1方向に第1距離離れた点と、その特徴点ペアに含まれる前記第2画像上の点から第2方向に第2距離離れた点とのペアである派生点ペアを検出する第2検出部と、
各前記検出された特徴点ペア及び派生点ペアを利用して、前記第1画像上の点から前記第2画像上の点への平面射影変換を表す平面射影変換行列を生成する生成部と、を有し、
前記第1方向と前記第1距離はそれぞれ、前記特徴点ペアに含まれる前記第1画像上の点について算出されたアフィン不変特徴量の特定の軸方向及びその軸の長さに基づいて定まり、
前記第2方向と前記第2距離はそれぞれ、前記特徴点ペアに含まれる前記第2画像上の点について算出されたアフィン不変特徴量の特定の軸方向及びその軸の長さに基づいて定まる、平面射影変換行列生成装置。
【請求項3】
前記派生点ペアの検出に利用する前記特徴点ペアを変更しながら、前記平面射影変換行列の生成を繰り返し行い、生成された複数の前記平面射影変換行列のうち、最も精度が高いものを出力する、請求項1
又は2に記載の平面射影変換行列生成装置。
【請求項4】
前記特徴点ペアと前記派生点ペアから2つの点を抽出して符号付面積の算出を行い、当該算出された符号付面積の符号に基づいて、前記平面射影変換行列の生成を行うか否かを判定する、請求項1から
3いずれか一項に記載の平面射影変換行列生成装置。
【請求項5】
コンピュータによって実行される制御方法であって、
第1画像と第2画像から、互いに対応する特徴点のペアである特徴点ペアを2組以上検出する第1検出ステップと、
各前記特徴点ペアについて、その特徴点ペアに含まれる前記第1画像上の点から第1方向に第1距離離れた点と、その特徴点ペアに含まれる前記第2画像上の点から第2方向に第2距離離れた点とのペアである派生点ペアを検出する第2検出ステップと、
各前記検出された特徴点ペア及び派生点ペアを利用して、前記第1画像上の点から前記第2画像上の点への平面射影変換を表す平面射影変換行列を生成する生成ステップと、を有し、
前記第1方向と前記第1距離はそれぞれ、前記特徴点ペアに含まれる前記第1画像上の点について算出された
スケール不変特徴量の主軸方向とスケールの長さに基づいて定まり、
前記第2方向と前記第2距離はそれぞれ、前記特徴点ペアに含まれる前記第2画像上の点について算出された
スケール不変特徴量の主軸方向とスケールの長さに基づいて定まる、制御方法。
【請求項6】
コンピュータによって実行される制御方法であって、
第1画像と第2画像から、互いに対応する特徴点のペアである特徴点ペアを2組以上検出する第1検出ステップと、
各前記特徴点ペアについて、その特徴点ペアに含まれる前記第1画像上の点から第1方向に第1距離離れた点と、その特徴点ペアに含まれる前記第2画像上の点から第2方向に第2距離離れた点とのペアである派生点ペアを検出する第2検出ステップと、
各前記検出された特徴点ペア及び派生点ペアを利用して、前記第1画像上の点から前記第2画像上の点への平面射影変換を表す平面射影変換行列を生成する生成ステップと、を有し、
前記第1方向と前記第1距離はそれぞれ、前記特徴点ペアに含まれる前記第1画像上の点について算出されたアフィン不変特徴量の特定の軸方向及びその軸の長さに基づいて定まり、
前記第2方向と前記第2距離はそれぞれ、前記特徴点ペアに含まれる前記第2画像上の点について算出されたアフィン不変特徴量の特定の軸方向及びその軸の長さに基づいて定まる、制御方法。
【請求項7】
第1画像と第2画像から、互いに対応する特徴点のペアである特徴点ペアを2組以上検出する第1検出ステップと、
各前記特徴点ペアについて、その特徴点ペアに含まれる前記第1画像上の点から第1方向に第1距離離れた点と、その特徴点ペアに含まれる前記第2画像上の点から第2方向に第2距離離れた点とのペアである派生点ペアを検出する第2検出ステップと、
各前記検出された特徴点ペア及び派生点ペアを利用して、前記第1画像上の点から前記第2画像上の点への平面射影変換を表す平面射影変換行列を生成する生成ステップと、をコンピュータに実行させ、
前記第1方向と前記第1距離はそれぞれ、前記特徴点ペアに含まれる前記第1画像上の点について算出された
スケール不変特徴量の主軸方向とスケールの長さに基づいて定まり、
前記第2方向と前記第2距離はそれぞれ、前記特徴点ペアに含まれる前記第2画像上の点について算出された
スケール不変特徴量の主軸方向とスケールの長さに基づいて定まる、プログラム。
【請求項8】
第1画像と第2画像から、互いに対応する特徴点のペアである特徴点ペアを2組以上検出する第1検出ステップと、
各前記特徴点ペアについて、その特徴点ペアに含まれる前記第1画像上の点から第1方向に第1距離離れた点と、その特徴点ペアに含まれる前記第2画像上の点から第2方向に第2距離離れた点とのペアである派生点ペアを検出する第2検出ステップと、
各前記検出された特徴点ペア及び派生点ペアを利用して、前記第1画像上の点から前記第2画像上の点への平面射影変換を表す平面射影変換行列を生成する生成ステップと、をコンピュータに実行させ、
前記第1方向と前記第1距離はそれぞれ、前記特徴点ペアに含まれる前記第1画像上の点について算出されたアフィン不変特徴量の特定の軸方向及びその軸の長さに基づいて定まり、
前記第2方向と前記第2距離はそれぞれ、前記特徴点ペアに含まれる前記第2画像上の点について算出されたアフィン不変特徴量の特定の軸方向及びその軸の長さに基づいて定まる、プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は平面射影変換行列の生成に関する。
【背景技術】
【0002】
或る画像上の点から別の画像上の点への平面射影変換を表す平面射影変換行列を生成する技術が開発されている。例えば特許文献1は、被写体が斜めの角度から撮像された撮像画像から、被写体を垂直上方から見た俯瞰画像を得ることができるように、平面射影変換行列を生成する技術が開示されている。特許文献1では、2つの画像から互いに対応する特徴点のペアを4組以上検出し、検出した特徴点のペアの集合から、RANSAC(RAndom SAmple Consensus)のようなロバスト推定アルゴリズムを利用して、平面射影変換行列が生成される。
【先行技術文献】
【特許文献】
【0003】
【非特許文献】
【0004】
【文献】D. Barath 及び Z. Kukelova、「Homography from two orientation- and scale-covariant features」、Computer Research Repository、arXiv:1906.11927、2019年6月27日
【発明の概要】
【発明が解決しようとする課題】
【0005】
本発明者は、平面射影変換行列を生成する新たな技術を検討した。本開示の目的は、平面射影変換行列を生成する新たな技術を提供することである。
【課題を解決するための手段】
【0006】
本開示の平面射影変換行列生成装置は、第1画像と第2画像から、互いに対応する特徴点のペアである特徴点ペアを2組以上検出する第1検出部と、各前記特徴点ペアについて、その特徴点ペアに含まれる前記第1画像上の点から第1方向に第1距離離れた点と、その特徴点ペアに含まれる前記第2画像上の点から第2方向に第2距離離れた点とのペアである派生点ペアを検出する第2検出部と、各前記検出された特徴点ペア及び派生点ペアを利用して、前記第1画像上の点から前記第2画像上の点への平面射影変換を表す平面射影変換行列を生成する生成部と、を有する。前記第1方向と前記第1距離はそれぞれ、前記特徴点ペアに含まれる前記第1画像上の点について算出された特徴量に基づいて定まる。前記第2方向と前記第2距離はそれぞれ、前記特徴点ペアに含まれる前記第2画像上の点について算出された特徴量に基づいて定まる。
【0007】
本開示の制御方法は、コンピュータによって実行される。当該制御方法は、第1画像と第2画像から、互いに対応する特徴点のペアである特徴点ペアを2組以上検出する第1検出ステップと、各前記特徴点ペアについて、その特徴点ペアに含まれる前記第1画像上の点から第1方向に第1距離離れた点と、その特徴点ペアに含まれる前記第2画像上の点から第2方向に第2距離離れた点とのペアである派生点ペアを検出する第2検出ステップと、各前記検出された特徴点ペア及び派生点ペアを利用して、前記第1画像上の点から前記第2画像上の点への平面射影変換を表す平面射影変換行列を生成する生成ステップと、を有する。前記第1方向と前記第1距離はそれぞれ、前記特徴点ペアに含まれる前記第1画像上の点について算出された特徴量に基づいて定まる。前記第2方向と前記第2距離はそれぞれ、前記特徴点ペアに含まれる前記第2画像上の点について算出された特徴量に基づいて定まる。
【0008】
本開示のコンピュータ可読媒体は、本開示の制御方法をコンピュータに実行させるプログラムを格納している。
【発明の効果】
【0009】
本開示によれば、平面射影変換行列を生成する新たな技術が提供される。
【図面の簡単な説明】
【0010】
【
図1】実施形態1の平面射影変換行列生成装置の動作の概要を例示する図である。
【
図2】特徴点ペアと派生点ペアを例示する図である。
【
図3】実施形態1の平面射影変換行列生成装置の機能構成を例示するブロック図である。
【
図4】平面射影変換行列生成装置を実現するコンピュータのハードウエア構成を例示するブロック図である。
【
図5】実施形態1の平面射影変換行列生成装置によって実行される処理の流れを例示するフローチャートである。
【
図6】RANSAC を用いる平面射影変換行列生成装置によって実行される処理の流れを例示するフローチャートである。
【
図7】
図6のフローチャートに、符号付面積を利用して平面射影変換行列の生成を行うか否かを判定する処理が加えられたものを例示する図である。
【発明を実施するための形態】
【0011】
以下では、本開示の実施形態について、図面を参照しながら詳細に説明する。各図面において、同一又は対応する要素には同一の符号が付されており、説明の明確化のため、必要に応じて重複説明は省略される。また、特に説明しない限り、所定値や閾値などといった予め定められている値は、その値を利用する装置からアクセス可能な記憶装置などに予め格納されている。
【0012】
図1は、実施形態1の平面射影変換行列生成装置2000の動作の概要を例示する図である。ここで、
図1は、平面射影変換行列生成装置2000の概要の理解を容易にするための図であり、平面射影変換行列生成装置2000の動作は、
図1に示したものに限定されない。
【0013】
平面射影変換行列生成装置2000は、第1画像10及び第2画像20を取得し、第1画像10上の点を第2画像20上の点へ射影変換するための行列である平面射影変換行列40を生成する。平面射影変換行列40は、例えば以下の式(1)で表される。
【数1】
ここで、点 m は第1画像10上の点である。H は平面射影変換行列40であり、そのサイズは 3x3 である。点 n は、点 m を行列 H によって第2画像20上に射影した点である。~は、左辺が右辺の定数倍に等しいことを表している。なお、点m とn はいずれも 3x1 の斉次座標系の座標で表されている。
【0014】
平面射影変換行列生成装置2000は、上記平面射影変換行列40を算出するために、第1画像10と第2画像20との間で互いに対応する点(対応点)のペアを4組以上生成する。以下、対応点のペアを対応点ペアと呼ぶ。ここで、対応点ペアに含まれる第1画像10上の点と第2画像20上の点は、互いに実空間上の同一の場所を表す点である。
【0015】
平面射影変換行列生成装置2000は、以下の方法で対応点ペアを検出する。まず平面射影変換行列生成装置2000は、第1画像10から検出される特徴点と第2画像20から検出される特徴点とから、互いに対応する特徴点のペア(特徴点ペア)を検出する。すなわち、第1画像10上の或る特徴点と、その特徴点に対応する第2画像20上の特徴点とが、特徴点ペアとして検出される。ここで、少なくとも2組の特徴点ペアが、平面射影変換行列40の生成に利用する対応点ペアとして検出される。
【0016】
平面射影変換行列生成装置2000は、上述の方法で検出した特徴点ペアを利用して、さらに対応点ペアを検出する。具体的には、平面射影変換行列生成装置2000は、特徴点ペアに含まれる第1画像10上の特徴点から第1方向に第1距離離れた派生点と、その特徴点ペアに含まれる第2画像20上の特徴点から第2方向に第2距離離れた派生点とのペアを検出する。以下、このようにして検出される派生点のペアを、派生点ペアとも呼ぶ。
【0017】
第1方向、第1距離、第2方向、及び第2距離は、特徴点について算出される特徴量を利用して決定される。例えば特徴量として、SIFT などといったスケールと主軸方向について不変な特徴量(以下、スケール不変特徴量)が利用されるとする。この場合、第1方向としては、例えば、第1画像10上の特徴点について算出された特徴量において定まる主軸方向が利用される。同様に、第2方向としては、例えば、第2画像20上の特徴点について算出された特徴量において定まる主軸方向が利用される。また、第1距離としては、例えば、第1画像10上の特徴点について算出された特徴量において定まるスケールの大きさが利用される。同様に、第2距離としては、例えば、第2画像20上の特徴点について算出された特徴量において定まるスケールの大きさが利用される。
【0018】
図2は、特徴点ペアと派生点ペアを例示する図である。
図2の例では、(m1,n1)と(m2,n2)がそれぞれ特徴点ペアとして検出されている。ここで、m1 と m2 はそれぞれ第1画像10上の特徴点であり、n1 と n2 はそれぞれ第2画像20上の特徴点である。また、特徴点 m1 について算出されたスケール不変特徴量により、スケール a1 と主軸方向α1が定まっている。同様に、特徴点 n1 について算出されたスケール不変特徴量により、スケール b1 と主軸方向β1が定まっている。なお、この例において、方向は、画像の水平方向右向きを基準の0度とする角度で表されている。
【0019】
平面射影変換行列生成装置2000は、特徴点 m1 について、その特徴量における主軸方向α1 へ a1 移動させた派生点 p1 を検出する。また、平面射影変換行列生成装置2000は、特徴点 n1 について、その特徴量における主軸方向β1 へ b1 移動させた派生点 q1 を検出する。その結果、派生点 p1 と派生点 q1 のペア(p1,q1)が、派生点ペアとして検出される。なお、派生点 p1 は、特徴点 m1 を中心とする半径 a1 の円周上において主軸方向にある点とも表現できる。派生点 q1 についても同様である。
【0020】
同様の方法により、平面射影変換行列生成装置2000は、第1画像10上の特徴点 m2 について、その特徴量における主軸方向α2 へ a2 移動させた派生点 p2 を検出する。また、平面射影変換行列生成装置2000は、第2画像20上の特徴点 n2 について、その特徴量における主軸方向β2 へ b2 移動させた派生点 q2 を検出する。その結果、派生点ペア(p2,q2)が検出される。
【0021】
平面射影変換行列生成装置2000は、検出した4組以上の対応点ペア(2組以上の特徴点ペア、及びそれらそれぞれを用いて検出される派生点ペア)を用いて、平面射影変換行列40を生成する。
【0022】
<作用効果の例>
特許文献1の発明では、代表画像と従属画像(本開示における第1画像10と第2画像20に相当)について、特徴点のペアを4組以上利用して、平面射影変換行列40の生成が行われる。これに対し、本実施形態の平面射影変換行列生成装置2000では、特徴点ペアと派生点ペアが合計で4組以上あれば、平面射影変換行列40を生成できる。そのため、画像から検出する必要がある特徴点ペアの最小数は2組である。よって、特許文献1の発明と比較し、画像から検出する必要がある特徴点ペアの数が少ないという利点がある。
【0023】
以下、本実施形態の平面射影変換行列生成装置2000について、より詳細に説明する。
【0024】
<機能構成の例>
図3は、実施形態1の平面射影変換行列生成装置2000の機能構成を例示するブロック図である。平面射影変換行列生成装置2000は、第1検出部2020、第2検出部2040、及び生成部2060を有する。第1検出部2020は、第1画像10及び第2画像20から、2組以上の特徴点ペアを検出する。第2検出部2040は、2組以上の特徴点ペアそれぞれを用いて、第1画像10及び第2画像20から、2組以上の派生点ペアを検出する。生成部2060は、検出した特徴点ペアと派生点ペアを用いて、平面射影変換行列40を生成する。
【0025】
<ハードウエア構成の例>
平面射影変換行列生成装置2000の各機能構成部は、各機能構成部を実現するハードウエア(例:ハードワイヤードされた電子回路など)で実現されてもよいし、ハードウエアとソフトウエアとの組み合わせ(例:電子回路とそれを制御するプログラムの組み合わせなど)で実現されてもよい。以下、平面射影変換行列生成装置2000の各機能構成部がハードウエアとソフトウエアとの組み合わせで実現される場合について、さらに説明する。
【0026】
図4は、平面射影変換行列生成装置2000を実現するコンピュータ500のハードウエア構成を例示するブロック図である。コンピュータ500は、任意のコンピュータである。例えばコンピュータ500は、PC(Personal Computer)やサーバマシンなどといった、据え置き型のコンピュータである。その他にも例えば、コンピュータ500は、スマートフォンやタブレット端末などといった可搬型のコンピュータである。コンピュータ500は、平面射影変換行列生成装置2000を実現するために設計された専用のコンピュータであってもよいし、汎用のコンピュータであってもよい。
【0027】
例えば、コンピュータ500に対して所定のアプリケーションをインストールすることにより、コンピュータ500で、平面射影変換行列生成装置2000の各機能が実現される。上記アプリケーションは、平面射影変換行列生成装置2000の機能構成部を実現するためのプログラムで構成される。なお、上記プログラムの取得方法は任意である。例えば、当該プログラムが格納されている記憶媒体(DVD ディスクや USB メモリなど)から、当該プログラムを取得することができる。その他にも例えば、当該プログラムが格納されている記憶装置を管理しているサーバ装置から、当該プログラムをダウンロードすることにより、当該プログラムを取得することができる。
【0028】
コンピュータ500は、バス502、プロセッサ504、メモリ506、ストレージデバイス508、入出力インタフェース510、及びネットワークインタフェース512を有する。バス502は、プロセッサ504、メモリ506、ストレージデバイス508、入出力インタフェース510、及びネットワークインタフェース512が、相互にデータを送受信するためのデータ伝送路である。ただし、プロセッサ504などを互いに接続する方法は、バス接続に限定されない。
【0029】
プロセッサ504は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、又は FPGA(Field-Programmable Gate Array)などの種々のプロセッサである。メモリ506は、RAM(Random Access Memory)などを用いて実現される主記憶装置である。ストレージデバイス508は、ハードディスク、SSD(Solid State Drive)、メモリカード、又は ROM(Read Only Memory)などを用いて実現される補助記憶装置である。
【0030】
入出力インタフェース510は、コンピュータ500と入出力デバイスとを接続するためのインタフェースである。例えば入出力インタフェース510には、キーボードなどの入力装置や、ディスプレイ装置などの出力装置が接続される。
【0031】
ネットワークインタフェース512は、コンピュータ500をネットワークに接続するためのインタフェースである。このネットワークは、LAN(Local Area Network)であってもよいし、WAN(Wide Area Network)であってもよい。
【0032】
ストレージデバイス508は、平面射影変換行列生成装置2000の各機能構成部を実現するプログラム(前述したアプリケーションを実現するプログラム)を記憶している。プロセッサ504は、このプログラムをメモリ506に読み出して実行することで、平面射影変換行列生成装置2000の各機能構成部を実現する。
【0033】
平面射影変換行列生成装置2000は、1つのコンピュータ500で実現されてもよいし、複数のコンピュータ500で実現されてもよい。後者の場合において、各コンピュータ500の構成は同一である必要はなく、それぞれ異なるものとすることができる。
【0034】
<処理の流れ>
図4は、実施形態1の平面射影変換行列生成装置2000によって実行される処理の流れを例示するフローチャートである。第1検出部2020は第1画像10及び第2画像20を取得する(S102)。第1検出部2020は、第1画像10及び第2画像20を用いて、2組以上の特徴点ペアを検出する(S104)。第2検出部2040は、第1画像10及び第2画像20を用いて、各特徴点ペアについての派生点ペアを検出する(S106)。生成部2060は、特徴点ペアと派生点ペアを用いて、平面射影変換行列40を生成する(S108)。
【0035】
<第1画像10と第2画像20について>
第1画像10と第2画像20は、任意のカメラによって生成された任意の撮像画像である。ただし、第1画像10と第2画像20は、少なくともその一部に、互いに同一の場所が撮像された画像領域が含まれている。例えば、同じ建物や人物を互いに異なる位置や角度から撮像することにより、第1画像10と第2画像20が生成される。
【0036】
<第1画像10と第2画像20の取得:S102>
第1検出部2020は、第1画像10及び第2画像20を取得する(S102)。第1検出部2020が第1画像10と第2画像20を取得する方法は任意である。例えば第1検出部2020は、第1画像10と第2画像20を、それぞれが格納されている記憶装置から取得する。なお、第1画像10と第2画像20は、同じ記憶装置に格納されていてもよいし、互いに異なる記憶装置に格納されていてもよい。その他にも例えば、第1検出部2020は、第1画像10を生成したカメラと第2画像20を生成したカメラのそれぞれから、第1画像10と第2画像20を取得してもよい。
【0037】
<特徴点ペアの検出:S104>
第1検出部2020は、第1画像10と第2画像20から特徴点ペアを2組以上検出する(S104)。そのために、第1検出部2020は、第1画像10と第2画像20のそれぞれから、特徴点の検出を行う。ここで、第1画像10と第2画像20から検出する特徴点は、任意の種類の特徴点でよい。また、画像から特徴点を検出する技術には、既存の技術を利用することができる。
【0038】
また、第1検出部2020は、第1画像10と第2画像20のそれぞれから検出された特徴点について、その特徴点を含む領域の特徴量を算出する。ここで算出される特徴量は、例えば、SIFT などのようなスケール不変特徴量や、Hessian-Affine や Affine-SIFT などのようなアフィン変形について不変な特徴量(以下、アフィン不変特徴量)である。これらの特徴量の算出方法についても、既存の技術を利用することができる。
【0039】
第1検出部2020は、各特徴点について算出した特徴量を利用して、第1画像10上の複数の特徴点と第2画像20上の複数の特徴点との間で、特徴点マッチングを行う。すなわち、第1検出部2020は、第1画像10上の特徴点と第2画像20上の特徴点とを、特徴量の類似度合いに基づいて互いに対応づける。このように、特徴点マッチングによって対応づけられた第1画像10上の特徴点と第2画像20上の特徴点が、特徴点ペアとして利用できる。なお、特徴点マッチングによって2つの画像から対応点を検出する技術には、既存の技術を利用することができる。
【0040】
第1検出部2020は、このようにして対応づけられる第1画像10上の特徴点と第2画像20上の特徴点のペアのうち、任意の2組以上をそれぞれ特徴点ペアとして検出する。例えば第1検出部2020は、第1画像10から検出された特徴点のうちの1つを任意に選択し、その特徴点と特徴点マッチングによって対応づけられる第2画像20上の特徴点を特定する。すなわち、第1検出部2020は、第1画像10から抽出した特徴点について算出された特徴量と十分に類似する(特徴量の類似度が閾値以上である)第2画像20上の特徴点を特定し、特定した特徴点と第1画像10から抽出した特徴点とのペアを、特徴点ペアとして検出する。第1検出部2020は、当該処理を任意の回数繰り返すことで、任意の数の特徴点ペアを検出する。
【0041】
なお、特徴点ペアを検出する処理の流れは、上述した流れに限定されない。例えば第1検出部2020は、第2画像20から検出された特徴点のうちの1つを任意に選択し、その特徴点と対応する特徴点を第1画像10から検出することで、特徴点ペアを検出してもよい。
【0042】
<派生点ペアの検出:S106>
第2検出部2040は、各特徴点ペアについて、派生点ペアを検出する(S106)。第1画像10上の特徴点から検出される派生点は、第1画像10上の特徴点から第1方向に第1距離離れた点である。一方、第2画像20上の特徴点から検出される派生点は、第2画像20上の特徴点から第2方向に第2距離離れた点である。
【0043】
前述したように、第1方向、第1距離、第2方向、及び第2距離は、特徴点について算出される特徴量を利用して決定される。例えば前述したように、スケール不変特徴量を利用する場合、第1方向としては、例えば、第1画像10上の特徴点について算出された特徴量における主軸方向が利用される。同様に、第2方向としては、例えば、第2画像20上の特徴点について算出された特徴量における主軸方向が利用される。
【0044】
ただし、第1方向と第2方向はそれぞれ、主軸方向を基準として定まる方向であればよく、主軸方向とは異なる方向であってもよい。例えば第1方向と第2方向はそれぞれ、主軸方向と逆方向(180度異なる方向)や、主軸方向から所定角度(例えば、+90度)回転した方向などであってもよい。
【0045】
ここで、第1方向は、或る特徴点ペアに含まれる第1画像10上の特徴点とその派生点、及び別の特徴点ペアに含まれる第1画像10上の特徴点とその派生点のいずれもが同一の直線を通らないように定められることが好適である。この場合、2つの特徴点及び2つの派生点で形成されるべき四角形が直線へと縮退してしまうためである。
【0046】
そこで例えば第2検出部2040は、第1画像10上の2つの特徴点と2つの派生点が同一の直線上に位置するか否かを判定し、1つの直線上に位置する場合には、第1方向を変更して派生点の検出を再度行ってもよい。例えば、第1方向の初期値を主軸方向に設定した状態で、派生点の検出が行われる。そして、第1画像10上の2つの特徴点と2つの派生点が同一の直線上に位置する場合には、第2検出部2040は、第1方向を主軸方向から所定方向ずらした上で、再度派生点の検出を行う。なお、複数の点が1つの直線上に位置するか否かを判定する技術には、既存の技術を利用することができる。
【0047】
上述した縮退は、第2画像20でも同様に発生しうる。そこで第2検出部2040は、同様の方法で、第2画像20から検出する特徴点と派生点についても、1つの直線上に位置しないようにすることが好適である。
【0048】
第1距離としては、第1画像10上の特徴点について算出された特徴量におけるスケールの大きさの所定倍が利用される。同様に、第2距離としては、第2画像20上の特徴点について算出された特徴量におけるスケールの大きさの所定倍が利用される。第1距離の算出に利用する所定倍と第2距離の算出に利用される所定倍は、互いに等しい値とする。所定倍=1倍とすれば、スケールの値がそのまま利用される。
図1の例は、所定倍=1倍とした例である。
【0049】
特徴量は、スケール不変特徴量には限定されず、アフィン不変特徴量であってもよい。この場合、第1方向としては、例えば、第1画像10上の特徴点について算出された特徴量について定まる特定軸の方向が利用される。同様に、第2方向としては、例えば、第2画像20上の特徴点について算出された特徴量について定まる特定軸の方向が利用される。特定軸は、例えば、短軸又は長軸である。ただし、第1方向と第2方向はそれぞれ、短軸方向又は長軸方向の逆方向(180度異なる方向)や、短軸方向又は長軸方向所定角度回転した方向であってもよい。ただし、第1方向と第2方向は、互いに同じ種類の方向とする。すなわち、第1方向を短軸方向とした場合には第2方向も短軸方向とし、第1方向を長軸方向とした場合には第2方向も長軸方向とする。
【0050】
第1距離としては、第1画像10上の特徴点について算出された特徴量について定まる特定軸の長さの所定倍が利用される。同様に、第2距離としては、第2画像20上の特徴点について算出された特徴量について定まる特定軸の長さの所定倍が利用される。第1距離の算出に利用する所定倍と第2距離の算出に利用される所定倍は、互いに等しい値とする。
【0051】
第2検出部2040は、1つの特徴点ペアから2組以上の派生点ペアを検出してもよい。例えばスケール不変特徴量を利用するケースにおいて、第2検出部2040が、特徴点ペアに含まれる第1画像10上の特徴点から、2つの派生点を検出するとする。この場合、例えば、一方の派生点 p11 については、「第1方向=主軸方向、第1距離=スケールの k1 倍」とし、他方の派生点 p12 については、「第1方向=主軸と逆方向、第1距離=スケールの k2 倍」とする。ここで、k1 と k2 は等しくてもよいし、等しくなくてもよい。同様に、第2検出部2040は、特徴点ペアに含まれる第2画像20上の特徴点からも、2つの派生点を検出する。一方の派生点 q11 については、「第2方向=主軸方向、第2距離=スケールの k1 倍」とし、他方の派生点 q12 については、「第2方向=主軸と逆方向、第2距離=スケールの k2 倍」とする。そして、第2検出部2040は、(p11,q11)と(p12,q12)をそれぞれ、派生点ペアとして検出する。
【0052】
その他にも例えば、アフィン不変特徴量を利用するケースにおいて、第2検出部2040が、特徴点ペアに含まれる第1画像10上の特徴点から、4組の派生点を検出するとする。この場合、例えば、派生点 p11 については、「第1方向=短軸方向、第1距離=短軸の長さの k1 倍」とし、派生点 p12 については、「第1方向=短軸方向と逆方向、第1距離=短軸の長さの k2 倍」とし、派生点 p13 については、「第1方向=長軸方向、第1距離=長軸の長さの k3 倍」とし、派生点 p14 については、「第1方向=長軸方向と逆方向、第1距離=長軸の長さの k4 倍」とする。ここで、k1、k2、k3 及び k4 は、それぞれ等しくてもよいし、等しくなくてもよい。
【0053】
同様に、第2検出部2040は、特徴点ペアに含まれる第2画像20上の特徴点からも、4組の派生点 q11、q12、q13、及び q14 を検出する。派生点 q11 については、「第2方向=短軸方向、第2距離=短軸の長さの k1 倍」とし、派生点 q12 については、「第2方向=短軸方向と逆方向、第2距離=短軸の長さの k2 倍」とし、派生点 q13 については、「第2方向=長軸方向、第2距離=長軸の長さの k3 倍」とし、派生点 q14 については、「第2方向=長軸方向と逆方向、第2距離=長軸の長さの k4 倍」とする。
【0054】
そして、第2検出部2040は、(p11,q11)、(p12,q12)、(p13,q13)、及び(p14,q14)をそれぞれ、派生点ペアとして検出する。
【0055】
<平面射影変換行列40の生成:S108>
生成部2060は、4組以上の対応点ペア(特徴点ペアと派生点ペア)を用いて、平面射影変換行列40を生成する。ここで、対応点ペアを4組以上用いて平面射影変換行列を算出する技術には、既存の技術を利用することができる。
【0056】
例えば平面射影変換行列40は、以下の式(2)で表される最適化問題を解くことによって算出される。
【数2】
ここで、ベクトル h は行列 H のベクトル表現、行列 M はベクトル m とベクトル n から構成される係数行列である。
【0057】
なお、式(2)は、ラグランジュ未定乗数法を用いることで、線形最小二乗法に帰着することが知られている。そして、線形最小二乗法による計算方法には、DLT(Direct Linear Transform)法などが利用できる。
【0058】
ここで、生成部2060は、対応点ペアに含まれる各点の座標をそのまま利用する代わりに、正規化した座標を利用してもよい。こうすることで、数値計算の誤差を低減することができる。例えば座標の正規化としては、座標値の平均がゼロ、かつ、分散が√2となるような相似変換を施す手法がある。このように正規化した座標値を用いる場合、生成部2060は、DLT 法等の手法によって得られた行列に対して、相似変換の逆変換を施すことで、平面射影変換行列40を生成することができる。
【0059】
ここで、派生点ペアの検出を行う前に、特徴点ペアの各点の座標の正規化が行われてもよい。この場合、第2検出部2040は、スケール不変特徴量のスケールの大きさや、アフィン不変特徴量の特定軸の長さについても同様の変換を施した上で、派生点ペアの検出を行う。
【0060】
<結果の出力>
平面射影変換行列生成装置2000は、生成した平面射影変換行列40を含む情報(以下、出力情報)を出力する。出力情報の出力態様は任意である。例えば平面射影変換行列生成装置2000は、出力情報を、平面射影変換行列生成装置2000からアクセス可能なディスプレイ装置に表示させる。その他にも例えば、平面射影変換行列生成装置2000は、出力情報を、平面射影変換行列生成装置2000からアクセス可能な記憶装置に格納する。その他にも例えば、平面射影変換行列生成装置2000は、出力情報を、平面射影変換行列生成装置2000と通信可能に接続されている他の装置へ送信する。
【0061】
出力情報は、平面射影変換行列40のみを含んでもよいし、平面射影変換行列40以外の情報をさらに含んでもよい。例えば出力情報には、平面射影変換行列40が、どの画像からどの画像への射影変換に用いられる行列なのかが把握可能な情報も含まれることが好適である。そこで例えば、出力情報は、変換元の画像の識別子(例えば、ファイル名や画像データそのもの)として第1画像10の識別子を含み、かつ、変換先の画像の識別子として第2画像20の識別子を含む。
【0062】
<平面射影変換行列40の精度の向上>
平面射影変換行列生成装置2000は、以下の手法により、より精度の高い平面射影変換行列40を生成してもよい。ここでいう平面射影変換行列40の精度とは、第1画像10上の点 mi を平面射影変換行列40を用いて第2画像20上に射影した場合に、当該射影により得られた第2画像20上の点 ci と、第1画像10上の点 mi に対応する第2画像20上の点 ni との間の誤差の小ささを意味する。これらの誤差が小さいほど、平面射影変換行列40によって、第1画像10上の点が第2画像20上の点へ正確に射影されていることとなるため、平面射影変換行列40の精度が高いと言える。
【0063】
平面射影変換行列生成装置2000は、平面射影変換行列40の生成に利用する対応点ペアを様々に変えながら、平面射影変換行列40を複数生成する。そして、平面射影変換行列生成装置2000は、それら複数の平面射影変換行列40の中から最も精度が高いものを選択し、当該選択した平面射影変換行列40を含む出力情報を出力する。
【0064】
例えば平面射影変換行列生成装置2000は、RANSAC を利用して、精度の高い平面射影変換行列40の生成を実現する。
図6は、RANSAC を用いる平面射影変換行列生成装置2000によって実行される処理の流れを例示するフローチャートである。
【0065】
第1検出部2020は、第1画像10及び第2画像20を取得する(S202)。S204からS218は、その実行回数が最大反復回数Nに達するまで繰り返し実行されるループ処理L1である。S204において、平面射影変換行列生成装置2000は、ループ処理L1の実行回数が最大反復回数N以上であるか否かを判定する。ループ処理L1の実行回数が最大反復回数N以上である場合、
図6の処理はS220に進む。一方、ループ処理L1の実行回数が最大反復回数N以上でない場合、
図6の処理はS206に進む。
【0066】
第1検出部2020は、第1画像10及び第2画像20から、複数の特徴点ペアを検出する(S206)。第2検出部2040は、S206で検出された特徴点ペアの中から任意の2組の特徴点ペアを選択し、選択した各特徴点ペアについて派生点ペアを検出する(S208)。生成部2060は、選択した2組の特徴点ペア、及びそれらを用いて検出された2組の派生点ペアを用いて、平面射影変換行列40を生成する(S210)。
【0067】
平面射影変換行列生成装置2000は、S206で検出された複数の特徴点ペアのうち、平面射影変換行列40によって正しく変換される特徴点ペアの個数を特定する(S212)。ここで、「特徴点ペアが平面射影変換行列40によって正しく変換される」とは、特徴点ペアに含まれる第1画像10上の点 mi を、平面射影変換行列40によって第2画像20上に射影した場合に、当該射影変換により得られた第2画像20上の点 ci と、特徴点ペアに含まれる第2画像20上の点 ni との間の誤差が十分に小さい(例えば、閾値未満である)ことを意味する。なお、2つの点の誤差は、例えば、これらの距離の長さで表される。以下、平面射影変換行列40によって正しく変換される特徴点ペア(上記誤差が閾値未満となる特徴点ペア)を「正しい特徴点ペア」と呼び、平面射影変換行列40によって正しく変換されない特徴点ペア(上記誤差が閾値以上となる特徴点ペア)を、「正しくない特徴点ペア」と呼ぶ。
【0068】
正しい特徴点ペアの個数を特定するために、平面射影変換行列生成装置2000は、各特徴点ペアについて、1)特徴点ペアに含まれる第1画像10上の点 mi を平面射影変換行列40で射影変換することで第2画像20上の点 ci を算出し、2)算出した第2画像20上の点 ci と、特徴点ペアに含まれる第2画像20上の点 mi との誤差を算出し、3)算出した誤差が閾値未満であるか否かを判定する。そして、平面射影変換行列生成装置2000は、誤差が閾値未満となった特徴点ペア(すなわち、正しい特徴点ペア)の個数を特定する。
【0069】
S214において、平面射影変換行列生成装置2000は、正しい特徴点ペアの個数が、これまでに実行されたループ処理L1で算出された個数の中で最大であるか否かを判定する。正しい特徴点ペアの個数が、これまでに算出された個数の中で最大でない場合(S214:NO)、
図6の処理はS218に進む。一方、正しい特徴点ペアの個数が、これまでに算出された個数の中で最大である場合(S214:YES)、平面射影変換行列生成装置2000は、ループ処理L1の最大反復回数を更新する(S216)。
【0070】
ここで、最大反復回数は、例えば以下の式(3)で表される。
【数3】
ここで、N は最大反復回数を表す。p は N 回中に1回は、平面射影変換行列40によって正しく変換される特徴点ペアが存在する確率を表す。s は、平面射影変換行列40の生成に利用した対応点ペアの個数(前述の例では4)を表す。εは、特徴点ペアの総数に占める、正しくない特徴点ペアの割合である。
【0071】
ここで、εの真の値は未知であるため、その推定値が利用される。具体的には、平面射影変換行列生成装置2000は、これまでに実行したループ処理L1において算出された正しい特徴点ペアの個数のうち、最大の個数を利用して推定される。この最大個数を Km と表記し、かつ、特徴点ペアの総数を Kall と表記すれば、εは (Kall-Km)/Kall と推定することができる。
【0072】
S218はループ処理L1の終端であるため、
図6の処理はS204に戻る。
【0073】
ループ処理L1の繰り返し実行が終了すると、
図6の処理はS220に進む。S220において、平面射影変換行列生成装置2000は、複数回実行されたループ処理L1それぞれで生成された平面射影変換行列40のうち、正しい特徴点ペアの個数が最大であったループ処理L1において生成された平面射影変換行列40を、出力情報に含めて出力する。こうすることで、複数生成された平面射影変換行列40のうち、精度が最大である平面射影変換行列40が出力されるようになる。
【0074】
ここで、本実施形態の平面射影変換行列生成装置2000では、特徴点ペアを利用して派生点ペアを検出するため、RANSAC の1回の試行(
図6のループ処理L1の1回の実行)で必要とされるサンプル点の数が2(式(3)において s=2)となる。そのため、特許文献1の発明のように4つのサンプル点を必要とするケース(式(3)において s=4 となるケース)と比較し、最大反復回数 N がの値が指数関数的に減少する。よって、RANSAC の計算量が削減される。
【0075】
なお、4組よりも少ない対応点ペアで平面射影変換行列を生成する方法として、スケール不変特徴点を2組用いる方法が、非特許文献1に記載されている。非特許文献1に記載されている方法では、スケール不変特徴点をより自由度の高いアフィン不変特徴点へと変換するための拘束条件を解くことで、平面射影変換行列を算出している。
【0076】
非特許文献1の手法では、対応点ペアの数が2組であるため、RANSAC の最大反復回数が、本実施形態の平面射影変換行列生成装置2000と同等となる。しかしながら、本実施形態の平面射影変換行列生成装置2000には、非特許文献1の手法と比較し、全体的な計算量が少なくなるという利点がある。例えば、特徴点ペアを選択してから平面射影変換行列40を生成するまでの処理に要する計算量が2割少ない。また、特徴点ペアについての誤差計算の回数が、最大で4分の1となる。
【0077】
<<平面射影変換行列40の生成の省略>>
平面射影変換行列生成装置2000は、ループ処理L1において毎回平面射影変換行列40の生成を行うのではなく、特定の条件が満たされた場合のみ、平面射影変換行列40の生成を行うようにしてもよい。具体的には、平面射影変換行列生成装置2000は、S206で選択された2組の特徴点ペア、及びそれらを用いて検出された2組の派生点ペアを利用して、符号付面積を算出する。そして、符号付き面積の符号の正しさに基づいて、平面射影変換行列40の生成を行うか否かを判定する。以下、具体的に説明する。
【0078】
まず、3点の斉次化した画像座標 {x1, x2, x3} が与えられたとき、符号付面積は以下の式(4)で表される。
【数4】
【0079】
式(4)は、いわゆる 3x3 行列の行列式に等しい。4組の対応点ペアが与えられたとき、それらがいずれも正しい対応点ペアであれば4組の中から任意の3組を選んで式(4)を計算すると、その符号は必ず互いに同符号となる。例えば、選択された特徴点ペアが(m1,n1)と(m2,n2)であり、これらを用いて検出された派生点ペアが(p1,q1)と(p2,q2)であるとする。この場合において、例えば、(m1,n1)、(m2,n2)、及び(p1,q1)の3組を符号付面積の算出対象として選べば、det(m1,m2,p1) と det(n1,n2,q1) が算出される。そして、4組の対応点ペアがいずれも正しい対応点ペアなのであれば、算出された2つの符号付面積の符号は、互いに同符号となる。
【0080】
そこで平面射影変換行列生成装置2000は、4組の対応点ペアから3組の対応点ペアを選び、それらについて上述した符号付面積の算出を行って、算出された2つの符号付面積の符号が等しいか否かを判定する。そして、符号付面積の符号が正しい場合、平面射影変換行列生成装置2000は、S210以降の処理を実行する。一方、符号付面積の符号が正しくない場合、平面射影変換行列生成装置2000は、平面射影変換行列40の生成を行わず、ループ処理L1の先頭に戻る。
図7は、
図6のフローチャートに、符号付面積を利用して平面射影変換行列40の生成を行うか否かを判定する処理が加えられたものを例示する図である。当該判定の処理はS302である。
【0081】
ここで、4組の対応点ペアから3組の対応点ペアを選ぶ場合、4通りの選び方がある。平面射影変換行列生成装置2000はこれら4通りの選び方のいずれか1つ以上についてそれぞれ、前述した符号付面積の算出を行って、符号が互いに同一であるか否かを判定する。例えば平面射影変換行列生成装置2000は、4通り全てについて当該判定を行う。そして、平面射影変換行列生成装置2000は、全てのケースにおいて、算出される2つの符号付面積の符号が互いに等しい場合に、平面射影変換行列40の生成を行う(S302において、符号付面積の符号が正しいと判定する)。
【0082】
<<RANSAC 以外の利用>>
平面射影変換行列40の精度を高める方法は、RANSAC を利用する方法に限定されない。例えば、RANSAC には様々な派生が存在するため、それらを選択的に組み合わせることが可能である。例えば、PROSAC(Progressive Sample Consensus)を用いる場合、特徴量のマッチングスコアが小さい順に特徴点ペアが選択される。すなわち、S208において、特徴点ペアがランダムに選択される代わりに、特徴量のマッチングスコアが小さい(すなわち、互いの特徴量の類似度合いが大きい)順に特徴点ペアが選択される。
【0083】
その他にも例えば、LO-RANSAC(Locally Optimized RANSAC)を用いてもよい。この場合、S214において、正しい特徴点ペアの個数が最大であると判定された場合(S214:YES)に、対応点ペアを用いて式(2)を解くように構成された生成部2060に処理を実行させてもよいし、M-estimatorなどの重みづけ最小二乗法を用いてもよい。
【0084】
以上、実施の形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【0085】
なお、上述の例において、プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに提供することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えば、フレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば、光磁気ディスク)、CD-ROM、CD-R、CD-R/W、半導体メモリ(例えば、マスク ROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM)を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに提供されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【0086】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)
第1画像と第2画像から、互いに対応する特徴点のペアである特徴点ペアを2組以上検出する第1検出部と、
各前記特徴点ペアについて、その特徴点ペアに含まれる前記第1画像上の点から第1方向に第1距離離れた点と、その特徴点ペアに含まれる前記第2画像上の点から第2方向に第2距離離れた点とのペアである派生点ペアを検出する第2検出部と、
各前記検出された特徴点ペア及び派生点ペアを利用して、前記第1画像上の点から前記第2画像上の点への平面射影変換を表す平面射影変換行列を生成する生成部と、を有し、
前記第1方向と前記第1距離はそれぞれ、前記特徴点ペアに含まれる前記第1画像上の点について算出された特徴量に基づいて定まり、
前記第2方向と前記第2距離はそれぞれ、前記特徴点ペアに含まれる前記第2画像上の点について算出された特徴量に基づいて定まる、平面射影変換行列生成装置。
(付記2)
前記第1方向と第1距離はそれぞれ、前記第1画像上の点について算出されたスケール不変特徴量の主軸方向とスケールの長さに基づいて決定され、
前記第2方向と第2距離はそれぞれ、前記第2画像上の点について算出されたスケール不変特徴量の主軸方向とスケールの長さに基づいて決定される、付記1に記載の平面射影変換行列生成装置。
(付記3)
前記第1方向と第1距離はそれぞれ、前記第1画像上の点について算出されたアフィン不変特徴量の特定の軸方向及びその軸の長さに基づいて決定され、
前記第2方向と第2距離はそれぞれ、前記第2画像上の点について算出されたアフィン不変特徴量の特定の軸方向及びその軸の長さに基づいて決定される、付記1に記載の平面射影変換行列生成装置。
(付記4)
前記派生点ペアの検出に利用する前記特徴点ペアを変更しながら、前記平面射影変換行列の生成を繰り返し行い、生成された複数の前記平面射影変換行列のうち、最も精度が高いものを出力する、付記1から3いずれか一項に記載の平面射影変換行列生成装置。
(付記5)
前記特徴点ペアと前記派生点ペアから2つの点を抽出して符号付面積の算出を行い、当該算出された符号付面積の符号に基づいて、前記平面射影変換行列の生成を行うか否かを判定する、付記1から4いずれか一項に記載の平面射影変換行列生成装置。
(付記6)
コンピュータによって実行される制御方法であって、
第1画像と第2画像から、互いに対応する特徴点のペアである特徴点ペアを2組以上検出する第1検出ステップと、
各前記特徴点ペアについて、その特徴点ペアに含まれる前記第1画像上の点から第1方向に第1距離離れた点と、その特徴点ペアに含まれる前記第2画像上の点から第2方向に第2距離離れた点とのペアである派生点ペアを検出する第2検出ステップと、
各前記検出された特徴点ペア及び派生点ペアを利用して、前記第1画像上の点から前記第2画像上の点への平面射影変換を表す平面射影変換行列を生成する生成ステップと、を有し、
前記第1方向と前記第1距離はそれぞれ、前記特徴点ペアに含まれる前記第1画像上の点について算出された特徴量に基づいて定まり、
前記第2方向と前記第2距離はそれぞれ、前記特徴点ペアに含まれる前記第2画像上の点について算出された特徴量に基づいて定まる、制御方法。
(付記7)
前記第1方向と第1距離はそれぞれ、前記第1画像上の点について算出されたスケール不変特徴量の主軸方向とスケールの長さに基づいて決定され、
前記第2方向と第2距離はそれぞれ、前記第2画像上の点について算出されたスケール不変特徴量の主軸方向とスケールの長さに基づいて決定される、付記6に記載の制御方法。
(付記8)
前記第1方向と第1距離はそれぞれ、前記第1画像上の点について算出されたアフィン不変特徴量の特定の軸方向及びその軸の長さに基づいて決定され、
前記第2方向と第2距離はそれぞれ、前記第2画像上の点について算出されたアフィン不変特徴量の特定の軸方向及びその軸の長さに基づいて決定される、付記6に記載の制御方法。
(付記9)
前記派生点ペアの検出に利用する前記特徴点ペアを変更しながら、前記平面射影変換行列の生成を繰り返し行い、生成された複数の前記平面射影変換行列のうち、最も精度が高いものを出力する、付記6から8いずれか一項に記載の制御方法。
(付記10)
前記特徴点ペアと前記派生点ペアから2つの点を抽出して符号付面積の算出を行い、当該算出された符号付面積の符号に基づいて、前記平面射影変換行列の生成を行うか否かを判定する、付記6から9いずれか一項に記載の制御方法。
(付記11)
プログラムが格納されているコンピュータ可読媒体であって、
前記プログラムは、コンピュータに、
第1画像と第2画像から、互いに対応する特徴点のペアである特徴点ペアを2組以上検出する第1検出ステップと、
各前記特徴点ペアについて、その特徴点ペアに含まれる前記第1画像上の点から第1方向に第1距離離れた点と、その特徴点ペアに含まれる前記第2画像上の点から第2方向に第2距離離れた点とのペアである派生点ペアを検出する第2検出ステップと、
各前記検出された特徴点ペア及び派生点ペアを利用して、前記第1画像上の点から前記第2画像上の点への平面射影変換を表す平面射影変換行列を生成する生成ステップと、を実行させ、
前記第1方向と前記第1距離はそれぞれ、前記特徴点ペアに含まれる前記第1画像上の点について算出された特徴量に基づいて定まり、
前記第2方向と前記第2距離はそれぞれ、前記特徴点ペアに含まれる前記第2画像上の点について算出された特徴量に基づいて定まる、コンピュータ可読媒体。
(付記12)
前記第1方向と第1距離はそれぞれ、前記第1画像上の点について算出されたスケール不変特徴量の主軸方向とスケールの長さに基づいて決定され、
前記第2方向と第2距離はそれぞれ、前記第2画像上の点について算出されたスケール不変特徴量の主軸方向とスケールの長さに基づいて決定される、付記11に記載のコンピュータ可読媒体。
(付記13)
前記第1方向と第1距離はそれぞれ、前記第1画像上の点について算出されたアフィン不変特徴量の特定の軸方向及びその軸の長さに基づいて決定され、
前記第2方向と第2距離はそれぞれ、前記第2画像上の点について算出されたアフィン不変特徴量の特定の軸方向及びその軸の長さに基づいて決定される、付記11に記載のコンピュータ可読媒体。
(付記14)
前記コンピュータに、前記派生点ペアの検出に利用する前記特徴点ペアを変更しながら、前記平面射影変換行列の生成を繰り返し行い、生成された複数の前記平面射影変換行列のうち、最も精度が高いものを出力するステップを実行させる、付記11から13いずれか一項に記載のコンピュータ可読媒体。
(付記15)
前記コンピュータに、前記特徴点ペアと前記派生点ペアから2つの点を抽出して符号付面積の算出を行い、当該算出された符号付面積の符号に基づいて、前記平面射影変換行列の生成を行うか否かを判定するステップを実行させる、付記11から14いずれか一項に記載のコンピュータ可読媒体。
【符号の説明】
【0087】
10 第1画像
20 第2画像
40 平面射影変換行列
500 コンピュータ
502 バス
504 プロセッサ
506 メモリ
508 ストレージデバイス
510 入出力インタフェース
512 ネットワークインタフェース
2000 平面射影変換行列生成装置
2020 第1検出部
2040 第2検出部
2060 生成部