IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ KDDI株式会社の特許一覧

特許7658939比較用画像検索装置、方法及びプログラム
<>
  • 特許-比較用画像検索装置、方法及びプログラム 図1
  • 特許-比較用画像検索装置、方法及びプログラム 図2
  • 特許-比較用画像検索装置、方法及びプログラム 図3
  • 特許-比較用画像検索装置、方法及びプログラム 図4
  • 特許-比較用画像検索装置、方法及びプログラム 図5
  • 特許-比較用画像検索装置、方法及びプログラム 図6
  • 特許-比較用画像検索装置、方法及びプログラム 図7
  • 特許-比較用画像検索装置、方法及びプログラム 図8
  • 特許-比較用画像検索装置、方法及びプログラム 図9
  • 特許-比較用画像検索装置、方法及びプログラム 図10
  • 特許-比較用画像検索装置、方法及びプログラム 図11
  • 特許-比較用画像検索装置、方法及びプログラム 図12
  • 特許-比較用画像検索装置、方法及びプログラム 図13
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-03-31
(45)【発行日】2025-04-08
(54)【発明の名称】比較用画像検索装置、方法及びプログラム
(51)【国際特許分類】
   G06T 7/70 20170101AFI20250401BHJP
   G06T 17/05 20110101ALI20250401BHJP
【FI】
G06T7/70 Z
G06T17/05
【請求項の数】 9
(21)【出願番号】P 2022124812
(22)【出願日】2022-08-04
(65)【公開番号】P2024021747
(43)【公開日】2024-02-16
【審査請求日】2024-07-08
(73)【特許権者】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(74)【代理人】
【識別番号】100092772
【弁理士】
【氏名又は名称】阪本 清孝
(74)【代理人】
【識別番号】100119688
【弁理士】
【氏名又は名称】田邉 壽二
(72)【発明者】
【氏名】花岡 洋平
(72)【発明者】
【氏名】小森田 賢史
【審査官】山田 辰美
(56)【参考文献】
【文献】特開2013-182523(JP,A)
【文献】特表2022-533309(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00-7/90
G06T 17/05
IEEE Xplore
(57)【特許請求の範囲】
【請求項1】
三次元地図から1つ以上のカメラ位置姿勢において予めレンダリングされて得られている画像、及び/又は、前記三次元地図の対象となる実世界で1つ以上のカメラ位置姿勢において予め撮影されて得られている画像を含むリファレンス用画像集合から選択される各回の比較用画像集合と、クエリ画像との間で画像マッチングを行うことにより、前記クエリ画像の前記三次元地図におけるカメラ位置姿勢を各回のものとして推定することを繰り返し、
当該繰り返す各回において、前回のものとして推定したカメラ位置姿勢に基づいて、前記リファレンス用画像集合から選択される今回の比較用画像集合と、前記クエリ画像との間で画像マッチングを行うことにより、前記クエリ画像の前記三次元地図におけるカメラ位置姿勢を今回のものとして推定することを収束判定が得られるまで繰り返し、
前記収束判定が得られた回で用いた比較用画像集合を出力することを特徴とする比較用画像検索装置。
【請求項2】
今回の比較用画像集合と、前回の比較用画像集合と、の変化が小さいと判定される場合に、前記収束判定が得られたものとすることを特徴とする請求項1に記載の比較用画像検索装置。
【請求項3】
今回のものとして推定されたカメラ位置姿勢における位置及び/または姿勢と、前回のものとして推定されたカメラ位置姿勢における位置及び/または姿勢と、の変化が小さいと判定される場合に、前記収束判定が得られたものとすることを特徴とする請求項1に記載の比較用画像検索装置。
【請求項4】
前回のものとして推定したカメラ位置姿勢の位置に、位置が近いと判定されるものを、前記リファレンス用画像集合の中から選択することで、今回の比較用画像集合を決定することを特徴とする請求項1に記載の比較用画像検索装置。
【請求項5】
前回のものとして推定したカメラ位置姿勢の姿勢に、姿勢が近いと判定されるものを、前記リファレンス用画像集合の中から選択することで、今回の比較用画像集合を決定することを特徴とする請求項1に記載の比較用画像検索装置。
【請求項6】
前回のものとして推定したカメラ位置姿勢に、位置姿勢が近いと判定されるものを、前記リファレンス用画像集合の中から選択することで、今回の比較用画像集合を決定することを特徴とする請求項1に記載の比較用画像検索装置。
【請求項7】
前回のものとして推定したカメラ位置姿勢におけるカメラ視野内に、位置があると判定されるものを、前記リファレンス用画像集合の中から選択することで、今回の比較用画像集合を決定することを特徴とする請求項1に記載の比較用画像検索装置。
【請求項8】
三次元地図から1つ以上のカメラ位置姿勢において予めレンダリングされて得られている画像、及び/又は、前記三次元地図の対象となる実世界で1つ以上のカメラ位置姿勢において予め撮影されて得られている画像を含むリファレンス用画像集合から選択される各回の比較用画像集合と、クエリ画像との間で画像マッチングを行うことにより、前記クエリ画像の前記三次元地図におけるカメラ位置姿勢を各回のものとして推定することを繰り返し、
当該繰り返す各回において、前回のものとして推定したカメラ位置姿勢に基づいて、前記リファレンス用画像集合から選択される今回の比較用画像集合と、前記クエリ画像との間で画像マッチングを行うことにより、前記クエリ画像の前記三次元地図におけるカメラ位置姿勢を今回のものとして推定することを収束判定が得られるまで繰り返し、
前記収束判定が得られた回で用いた比較用画像集合を出力することを特徴とすることを特徴とする比較用画像検索方法。
【請求項9】
コンピュータを請求項1ないし7のいずれかに記載の比較用画像検索装置として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像に基づくカメラの姿勢推定において用いるのに適した比較用画像を検索する比較用画像検索装置、方法及びプログラムに関する。
【背景技術】
【0002】
画像に基づくカメラの姿勢推定は、VPS(Visual Positioning System)と呼ばれ、ロボティクスや拡張現実など、様々な分野におけるコア技術として利用されている。特許文献1では、三次元点群地図と、後から撮影したクエリ画像をマッチングし、地図中におけるクエリ画像の姿勢を推定するVPSに関する技術が開示されている。特許文献2では、三次元点群地図の代わりに、汎用的な三次元メッシュ地図を用いてクエリ画像の姿勢を推定するために、三次元メッシュ地図におけるクエリ画像のおおよそのカメラ姿勢を推定し、推定したおおよそのカメラ姿勢をもとに三次元メッシュから二次元の比較用画像をレンダリングし、比較用画像とクエリ画像をマッチングする技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2021-174285号公報
【文献】特願2022-063059号
【発明の概要】
【発明が解決しようとする課題】
【0004】
クエリ画像とデータベースに蓄積された画像を比較する際に、データベースから比較に適した画像を抽出する必要がある。しかしながら、画像の類似度から抽出する方法では、その精度が不十分であった。特許文献2では、さらに、GPS(全地球測位システム)情報や地磁気センサーを利用することも想定しているが、使用可能な場所が限られる。
【0005】
前記従来技術の課題に鑑み、本発明は、画像に基づくカメラの姿勢推定において用いるのに適した比較用画像を検索することのできる比較用画像検索装置、方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
上記目的を達成するため、本発明は、比較用画像検索装置であって、三次元地図から1つ以上のカメラ位置姿勢において予めレンダリングされて得られている画像、及び/又は、前記三次元地図の対象となる実世界で1つ以上のカメラ位置姿勢において予め撮影されて得られている画像を含むリファレンス用画像集合から選択される各回の比較用画像集合と、クエリ画像との間で画像マッチングを行うことにより、前記クエリ画像の前記三次元地図におけるカメラ位置姿勢を各回のものとして推定することを繰り返し、当該繰り返す各回において、前回のものとして推定したカメラ位置姿勢に基づいて、前記リファレンス用画像集合から選択される今回の比較用画像集合と、前記クエリ画像との間で画像マッチングを行うことにより、前記クエリ画像の前記三次元地図におけるカメラ位置姿勢を今回のものとして推定することを収束判定が得られるまで繰り返し、前記収束判定が得られた回で用いた比較用画像集合を出力することを特徴とする。また前記装置に対応する方法及びプログラムであることを特徴とする。
【発明の効果】
【0007】
本発明によれば、収束判定が得られるまで繰り返し処理でカメラ位置姿勢を更新して推定し、この際、このカメラ位置姿勢に基づいてリファレンス用画像集合から選択された比較用画像集合を更新して利用することで、最終的にクエリ画像と比較すべき画像集合として適切なものを出力することができる。
【図面の簡単な説明】
【0008】
図1】実施形態に係る比較用画像検索装置の機能ブロック図である。
図2】実施形態に係る比較用画像検索装置の動作のフローチャートである
図3】三次元地図からの比較用画像のレンダリングを模式的に表した図である。
図4】複数の比較用画像のレンダリングを行うことで比較用画像集合が得られることの模式図である。
図5】推定カメラ姿勢の模式図である。
図6】画像マッチング部で得られた対応点ペアをもとに、推定カメラ姿勢を算出するまでの各処理を模式的に表した図である。
図7】収束判定の結果がNGだったときの状態を模式的に示した図である。
図8】三次元地図の三次元座標と比較用画像の二次元座標の対応点ペアを求める手法を模式的に示した図である。
図9】最適な比較用画像の選択手法(5-1)を模式的に示した図である。
図10】最適な比較用画像の選択手法(5-2)を模式的に示した図である。
図11】最適な比較用画像の選択手法(5-4)を模式的に示した図である。
図12】二次元座標(uj,vj)と(width,height)の関係の例を示す図である。
図13】一般的なコンピュータ装置におけるハードウェア構成の例を示す図である。
【発明を実施するための形態】
【0009】
図1は、実施形態に係る三次元地図との画像マッチングにおける最適な比較用画像検索装置10の機能ブロック図である。比較用画像検索装置10は、比較用画像レンダリング部11と、初回比較用画像選択部12と、画像マッチング部13と、推定カメラ姿勢算出部14と、最適比較用画像選択部15と、収束判定部16と、を備える。
【0010】
図2は、実施形態に係る比較用画像検索装置10の動作のフローチャートである。以下、図2の各ステップを説明しながら、図1の比較用画像検索装置10の各機能部の動作の詳細について説明する。
【0011】
なお、図2のフローに関して、ステップS3~S7の処理をステップS7での収束判定が成立するまで繰り返すという構造を取る。この繰り返し回数をN(N=1が初回で、繰り返しによりN=1,2,3,…と回数Nが増える)として参照し、図2のフローの説明における現在の繰り返し回数を任意のNとして、1つ前の過去のN-1回目や、1つ後の未来のN+1回目と区別して説明する。ここで、ステップS1,S2は、N=1の初回のみに属するステップとなる。
【0012】
(1)ステップS1…比較用画像レンダリング部11
ステップS1では、比較用画像レンダリング部11が、リファレンス画像のデータベース全体を構築する処理として多数のm枚の比較用画像集合PS={P(i)|i=1,2,…,m}(リファレンス画像集合PS)をレンダリングしてから、ステップS2へと進む。
【0013】
具体的に、比較用画像レンダリング部11は、入力データとして予め用意しておく三次元地図Mから、複数の比較用画像PSをレンダリングする。レンダリングされた比較用画像PSは、後述する初回比較用画像選択部12に出力され、クエリ画像との画像マッチングに利用される。また、レンダリングされた比較用画像PSは、後述する最適比較用画像選択部15に出力され、選択される比較用画像の候補となる。
【0014】
図3に、三次元地図Mからの比較用画像P(i)のレンダリングを模式的に表した図を示す。比較用画像集合PSに属する比較用画像P(i)(i=1,2,…,m)の各々につき、三次元地図Mの世界座標における外部パラメータEX(i)(カメラの位置姿勢に対応)と、内部パラメータIN(i)とを与えることにより、三次元CG(コンピュータグラフィックス)における既存手法を用いて比較用画像P(i)の各々をレンダリングすることができる。なお、三次元地図Mには地図を構成する構造物について、例えばポリゴン頂点座標とポリゴンのテクスチャを用意しておくことで、当該レンダリングが可能となる。
【0015】
こうして、図4に示すように、比較用画像集合PSに属する全ての比較用画像P(i)についてそれぞれレンダリングを行うことで、複数m枚で構成される比較用画像集合PSを得ることができる。(なお、図4では模式例として、比較用画像集合PSの一部である比較用画像P(1)~P(13)を示している。)
【0016】
外部パラメータEX(i)で与えられるレンダリング位置は、クエリ画像Qが撮影されると想定される地表高や、構造物のない空間(実世界における道路などの空間)にランダムに決めてよい。(比較用画像集合PSと照合することでクエリ画像Qの位置姿勢が推定可能なように、三次元地図Mが定義されている空間範囲内において網羅的に、外部パラメータEX(i)の各々を設定しておけばよい。)内部パラメータIN(i)は、所定の設定の中からランダムに選んだものを用いてもよいし、クエリ画像Qの内部パラメータと同じものを全ての比較用画像P(i)(i=1,2,…,m)に対して用いるようにしてもよい。
【0017】
また、比較用画像集合PSを構成するレンダリング画像の全部又は一部に関して、比較用画像レンダリング部11でレンダリングして生成したレンダリング画像を用いることに代えて、三次元地図Mの生成時に使用する実写真(三次元地図Mの作成される対象である街角等の実世界で撮影された実写真)を用いるようにしてもよい。また、リファレンス画像データベースとしての比較用画像集合PSについては、比較用画像検索装置10での内部処理として比較用画像レンダリング部11の処理を実行することに代えて、予め、三次元地図Mに対応する比較用画像集合PSを外部サーバ等で用意しておき、この外部サーバから比較用画像集合PSを比較用画像検索装置10で読み込む(初回比較用画像選択部12及び最適比較用画像選択部15で読み込む)ようにすることで、比較用画像レンダリング部11の処理を省略するようにしてもよい。
【0018】
(2)ステップS2…初回比較用画像選択部12
ステップS2では、初回比較用画像選択部12が、N=1の初回用の比較用画像集合PS[1]を、比較用画像レンダリング部11で得た比較用画像集合PSから選択して、(すなわち、PS[1]⊂PSとなるものとして選択して、)ステップS3へと進む。
【0019】
具体的に、初期比較用画像選択部12は、初期比較用画像レンダリング部11でレンダリングした複数の比較用画像(比較用画像集合PS全体)の中から、後述する画像マッチング部13(N=1の初回)でのクエリ画像Qとの画像マッチングに適した比較用画像を選択して集合PS[1]を得る。選択した比較用画像は、N=1の初回の処理のために、後述する画像マッチング部13に出力する。ここで、選択する比較用画像は、1個のみ選択してもよいし、複数個を選択してもよい。
【0020】
(3)ステップS3…画像マッチング部13
ステップS3では、画像マッチング部13が、当該繰り返し回数Nに対応する比較用画像集合PS[N]とクエリ画像Qとを画像マッチングして対応点ペアを得てから、ステップS4へと進む。
【0021】
具体的に、画像マッチング部13は、N=1の初回においては初期比較用画像選択部12で選択された比較用画像集合PS[1]と、クエリ画像Qとを画像マッチングし、N≧2の2回目以降においては、後述する最適比較用画像選択部15で選択された比較用画像集合PS[N]と、クエリ画像Qとを画像マッチングする。
【0022】
回数Nに応じてマッチング対象集合PS[N]が上記のように異なるが、画像マッチング処理自体は回数Nに依らず共通であり、クエリ画像Qの二次元座標と比較用画像P(i)∈PS[N]の二次元座標の対応点ペアを求める。得られた対応点ペアは、後述する推定カメラ姿勢算出部14に出力する。画像マッチングは、非特許文献1に記載の技術や、前掲の特許文献2に記載の技術を利用してもよい。
[非特許文献1] 「Wang, Qianqian, et al. "Learning feature descriptors using camera pose supervision." European Conference on Computer Vision. Springer, Cham, 2020.」
【0023】
なお、複数個の比較用画像が入力された場合は、1個のクエリ画像に対して、各比較用画像それぞれと画像マッチングを行い、その結果を後述の推定カメラ姿勢算出部14に出力する。例えば、5個の比較用画像がある場合、5回分の画像マッチングを行い、5回分の対応点ペアを後述の推定カメラ姿勢推定部14に出力する。ただし、画像マッチングを複数回行った結果得られた複数回分の対応点ペアを、1回分の結果として集約して、後述の推定カメラ姿勢推定部14に出力してもよい。
【0024】
(4)ステップS4…推定カメラ姿勢算出部14
ステップS4では、推定カメラ姿勢算出部14が、画像マッチング部13での結果(対応点ペア)からクエリ画像Qの推定カメラ姿勢を算出して、ステップS5へと進む。
【0025】
具体的に、推定カメラ姿勢算出部14は、画像マッチング部13で得られたクエリ画像PSと比較用画像P(i)∈PS[N]の対応点ペアをもとに、三次元地図Mの三次元座標とクエリ画像の二次元座標の対応点ペアを求め、これを用いてクエリ画像Qの推定カメラ姿勢を算出する。前記画像マッチング部13から、複数回分の画像マッチングの結果が入力された場合は、その回数分の推定カメラ姿勢の算出を行い、より良いカメラ姿勢(最善と判定される1つのカメラ姿勢)を1つ推定カメラ姿勢として採用する。より良いカメラ姿勢の判定方法は、例えば、カメラ姿勢を推定した際に、非特許文献4(後述)に記載のRansac(ランダムサンプル投票)を適用し、算出したインライアの数が多い方としてもよい。
【0026】
こうして、画像マッチング部13では、単一結果に統合した画像マッチング結果または複数回分の画像マッチング結果を得ることができるが、いずれの場合も、推定カメラ姿勢算出部14では、当該N回目の結果として、1つの外部パラメータEX[N]に対応する1つの推定カメラ姿勢を得ることができる。
【0027】
算出したクエリ画像Qの推定カメラ姿勢は、後述する最適比較用画像選択部15に出力し、初期比較用画像レンダリング部11でレンダリングした複数の比較用画像PSの中から、最適な比較用画像(次回のN+1回目用の比較用画像集合PS[N+1])を選択するために利用される。クエリ画像Qの推定カメラ姿勢は、まず三次元地図Mの三次元座標とクエリ画像の二次元座標の対応点ペアを算出し、その後、非特許文献2に記載の技術であるPnP(Perspective-n-Point)問題を解くことで求める。
[非特許文献2]:「Lepetit, Vincent, Francesc Moreno-Noguer, and Pascal Fua. "Epnp: An accurate o (n) solution to the pnp problem." International journal of computer vision 81.2 (2009): 155.」
【0028】
図5に、算出したクエリ画像Qの推定カメラ姿勢を模式的に表した図を示すように、レンダリングに関して説明した図3と同様に、当該N回目の推定カメラ姿勢を、三次元地図Mが定義される世界座標内におけるカメラの位置姿勢である外部パラメータEX[N]として推定することができる。
【0029】
なお、三次元地図の三次元座標とクエリ画像の二次元座標の対応点ペアは、比較用画像の二次元座標とクエリ画像の二次元座標の対応点ペアと、三次元地図の三次元座標と比較用画像の二次元座標の対応点ペアをもとに、比較用画像の二次元座標を経由して求めることができる。
【0030】
図6に、画像マッチング部13で得られた対応点ペアをもとに、推定カメラ姿勢を算出するまでの各処理p1~p4を模式的に表した図を示す。処理p1が画像マッチング部13の結果であり、この処理p1の結果(比較用画像P(i)の二次元座標とクエリ画像Qの二次元座標の対応点ペア)に対し、処理p2に示されるように、対応点ペアのうち比較用画像P(i)の二次元座標は、元の三次元地図Mを参照することで対応する三次元座標が定まる。従って、処理p1,p2の結果を照合して、処理p3に示されるように、対応点ペアのうちクエリ画像Qの二次元座標に対応する三次元座標が定まる。これにより、処理p4に示されるPnP問題を解くことで、クエリ画像Qのカメラ姿勢が推定できる。
【0031】
(5)ステップS5…最適比較用画像選択部15
ステップS5では、最適比較用画像選択部15が、次回(N+1回目)に向けた最適な比較用画像集合PS[N+1]を選択してから、ステップS6へと進む。
【0032】
具体的に、最適比較用画像選択部15は、推定カメラ姿勢算出部14で推定したクエリ画像Qの推定カメラ姿勢(外部パラメータEX[N]として推定した今回の推定カメラ姿勢)をもとに、比較用画像レンダリング部11でレンダリングした複数の比較用画像(比較用画像集合PS)の中から、次回N+1回目に向けた最適な比較用画像の集合PS[N+1]を選択する。選択された最適な比較用画像集合PS[N+1]は、後述する収束判定部16に出力し、収束判定に利用する。(なお、収束判定の結果、今回のN回目で処理を終了するのではなく、次のN+1回目の処理も繰り返すこととなった場合、今回のN回目で得た集合PS[N+1]が、次のN+1回目のステップS3での画像マッチング部13でのクエリ画像Qとのマッチング処理の対象として利用されることとなる。)
【0033】
比較用画像の集合PS[N+1]として選択する比較用画像は、1個を選択してもよいし、複数個を選択してもよい。なお、最適比較用画像選択部15の処理の詳細については、実施例としてさらに後述する。
【0034】
(6)ステップS6,S7,S8…収束判定部16
ステップS6では、収束判定部16が収束判定を行ってからステップS7へと進む。ステップS7では、ステップS6の判定結果が収束成立であればステップS8へ進み、収束不成立であればステップS3に戻り、次のN+1回目の処理として、以上のステップS3以降の処理を繰り返す。ステップS8では、比較用画像検索装置10における検索結果として比較用画像PS[N+1](PS[N]でもよい)を出力して、図2のフローを終了する。
【0035】
具体的に、収束判定部16では、最適比較用画像選択部15で選択された比較用画像集合PS[N+1]に対して収束判定を行う。収束判定の結果、OK(収束した判定)の場合は、選択されている最新の比較用画像集合PS[N+1]を出力する。NG(収束していない判定)の場合は、「ステップS6→S7→S3」と進み、機能ブロック構成においては、画像マッチング部13に戻り、選択されている最新の比較用画像PS[N+1]を(今回N+1回目のものとして)用いて再度、画像マッチングを行ったうえで推定カメラ姿勢算出部14においてクエリ画像Qの推定カメラ姿勢を算出する。その後、推定カメラ姿勢算出部14で算出されるクエリ画像の推定カメラ姿勢(外部パラメータEX[N+1])をもとに、最適比較用画像選択部15で比較用画像の再選択が行われ、再度、収束判定部16に比較用画像集合PS[(N+1)+1]=PS[N+2]が出力される。
【0036】
図2のフロー構造に関しても前述した通り、このサイクルは、収束判定部16の判定結果がOKとなるまで繰り返される。収束判定は、最新(N回目)の比較用画像PS[N+1]と、直前(N-1回目)に選択された比較用画像PS[N]が同じと判定される場合、収束したと判定してよい。同じことの判定は、画像集合PS[N+1],PS[N]の重複割合(同一画像が存在する割合)が閾値以上であることによって判定してよい。
【0037】
あるいは、最新(N回目)のクエリ画像Qの推定カメラ位置姿勢(外部パラメータEX[N])と、直前(N-1回目)のクエリ画像Qの推定カメラ姿勢の位置姿勢(外部パラメータEX[N-1])との変化が閾値以内であった場合、収束したと判定してもよい。閾値は、位置に関して例えば1mなど自由に設定してよい。ただし、N=1回目の場合は、直前(N-1回目)の結果が存在しないため、必ずNGと判定され、画像マッチング部13に分岐する。(なお、位置姿勢による収束判定ではなく、集合PS[N+1],PS[N]の重複割合等による収束判定の場合、偶然により、N=1の初回で収束判定が得られることもありうる。)なお、変化の閾値判定に関して、推定カメラ位置姿勢は位置要素(並進成分)と姿勢要素(回転要素)で構成されるが、位置要素と姿勢要素の両方の変化を閾値判定の対象として用いてもよいし、いずれか片方のみ(例えば位置のみ)の変化を閾値判定の対象として用いてもよい。
【0038】
図7は、収束判定の結果がNGだったときの状態を模式的に示した図であり、今回のN回目の比較用画像集合PS[N+1]と、前回のN-1回目の比較用画像集合PS[N]とが一致しないと判定されることから、収束していないと判定されている。
【0039】
以上、図2の各ステップを説明しながら、図1の各機能ブロックについて説明した。以下ではさらに、図1の各機能ブロックの処理の実施例について説明する。
【0040】
(2)初回比較用画像選択部12での比較用画像集合PSの選択には、
(2-1)非特許文献3に記載のImage Retrievalの技術を利用してもよいし、
(2-2)前掲の非特許文献1に記載の技術や特許文献2に記載の技術で画像マッチングを行った際に、非特許文献4に記載のRansac(ランダムサンプル投票)を適用し、算出した外れ値(アウトライア)以外の値(インライア)の数が多い比較用画像を選択してもよいし、
(2-3)前掲の非特許文献1に記載の技術や特許文献2に記載の技術で画像マッチング行った後に、さらに非特許文献2の技術を用いてクエリ画像のカメラ姿勢を推定した際に、非特許文献4に記載のRansacを適用し、算出したインライアの数が多い比較用画像を選択してもよい。
[非特許文献3]:「Revaud, J., Almazan, J., Rezende, R. S., & Souza, C. R. D. (2019). Learning with average precision: Training image retrieval with a listwise loss. In Proceedings of the IEEE/CVF International Conference on Computer Vision (pp. 5107-5116).」
[非特許文献4]:「M. A. Fischler and R. C. Bolles, ``Random Sample Consensus: A Paradigm for Model Fitting with Applications to Image Analysis and Automated Cartography,'' Communications of the ACM 24(6):381-395 (1981)」
【0041】
(4)推定カメラ姿勢算出部14での三次元地図Mの三次元座標と比較用画像P(i)の二次元座標の対応点ペアを求める際には、
(4-1)図8に示すように、比較用画像P(i)のカメラ姿勢の位置Pos(i)(比較用画像レンダリング部11でのレンダリングの際の、並進成分及び回転成分で構成される外部パラメータEX(i)において並進成分として与えられており、レンダリング画像ではなく実写画像の場合も同様の外部パラメータEX(i)を撮影時に予め紐づけて取得しておけばよい)と、比較用画像P(i)の二次元座標とを結ぶ直線を延長した先で、三次元地図M(における構造物)と交差する点から求めてもよいし、
(4-2)画像マッチングに特許文献2に記載の手法を用いる場合は、比較用画像P(i)のカメラ姿勢をもとに、三次元地図の三次元座標を比較用画像上の二次元座標に変換することで求めてもよい。
【0042】
(5)最適比較用画像選択部15での最適な比較用画像(集合PS[N+1])の選択手法について、種々の実施例を以下に説明する。
(5-1)例えば、図9に示すように、クエリ画像Qの推定カメラ姿勢の位置(外部パラメータEX[N]の並進成分)から近い範囲R内に位置する比較用画像を選択してもよい。クエリ画像Qの推定姿勢の三次元地図における座標(XQ,YQ,ZQ)は、クエリ画像Qの推定カメラ姿勢(回転行列RQと並進ベクトルtQ)を用いて、
【0043】
【数1】
【0044】
と表せる。
比較用画像P(i)のカメラ姿勢の三次元地図における座標(Xi,Yi,Zi)は、比較用画像レンダリング部11で比較用画像をレンダリングした際に使用した値(実写画像であれば撮影時に予め紐づけられている値)を利用する。クエリ画像Qの推定姿勢の座標(XQ,YQ,ZQ)と、比較用画像P(i)のカメラ姿勢の座標(Xi,Yi,Zi)の2点間の距離dlを求め、距離dlがより小さい場合に、距離が近いと判定してもよい。また、比較用画像(集合PS[N+1])を選択する個数は、dlが一番小さい1個選択してもよいし、距離dlが小さい方から複数個を選択してもよい。
【0045】
(5-2)例えば、図10に示すように、クエリ画像Qの推定カメラ姿勢の回転(外部パラメータEX[N]の回転成分)が、比較用画像のカメラ姿勢の回転と類似している比較用画像を選択してもよい。カメラの姿勢の回転が類似していることの判定は、クエリ画像Qの推定カメラ姿勢のクォータニオン表現における回転角θQと、比較用画像P(i)のカメラ姿勢のクォータニオン表現における回転角θiの差分dθを取り、差分dθがより小さい場合に類似していると判定してもよい。また、比較用画像(集合PS[N+1])を選択する個数は、dθが一番小さい1個選択してもよいし、d_θが小さい方から複数個を選択してもよい。
【0046】
(5-3)例えば、(5-1)の方法で求めたクエリ画像の推定姿勢の位置と比較用画像の姿勢の位置の距離dlと、(5-2)の方法で求めたクエリ画像の姿勢のクォータニオン表現における回転角と比較用画像の姿勢のクォータニオン表現における回転角の差分dθを用いて、加重平均
【0047】
【数2】
【0048】
が小さい比較用画像を選択してもよい。ここで、wlおよびwθは、調整可能なパラメータであり、wlを小さくすれば、dlの影響が大きくなるため、よりクエリ画像の位置に近い位置にある比較用画像が選択されやすくなり、wθを小さくすれば、dθの影響が大きくなるため、よりクエリ画像の回転角との差分が小さい比較用画像が選択されやすくなる。また、比較用画像(集合PS[N+1])を選択する個数は、Wが一番小さい1個選択してもよいし、dθが小さい方から複数個を選択してもよい。
【0049】
(5-4)例えば、図11に示すように、クエリ画像Qの推定カメラ姿勢の視野V内に、比較用画像のカメラ姿勢が存在している場合、その比較用画像を選択してもよい。以下の式(3),(4)を同時に満たす場合、クエリ画像Qの推定姿勢(外部パラメータEX[N]として推定した姿勢)を使ったレンダリング画像内(すなわち、視野V内)に、比較用画像P(j)∈PS[N+1]のカメラ姿勢が存在していると判定してもよい。(すなわち、式(3),(4)のいずれかが成立しない場合、この比較用画像P(j)については、「P(j)∈PS[N+1]」ではないものと判定される。)
0≦uj≦width …(3)
0≦vj≦height …(4)
【0050】
ただし、(width,height)は、クエリ画像Qの画像サイズにおける幅及び高さであり、(uj,vj)は、クエリ画像Qのカメラ座標系における、比較用画像P(j)(PS[N+1]に属するか否かを判定される各候補画像P(j))のカメラ姿勢の位置である。二次元座標(uj,vj)と(width,height)の関係の例を、図12に示す。(uj,vj)は、透視投影行列P(クエリ画像Qの内部パラメータの情報に相当する行列P)を用いて、候補としての比較用画像P(j)のカメラ姿勢の三次元地図Mにおける座標(Xj,Yj,Zj)から変換することができる。
【0051】
【数3】
【0052】
ただし、投影行列Pは、比較用画像をレンダリングした際のカメラの回転行列R、並進ベクトルt、内部パラメータKを用いて、
P=K[R t] …(6)
と表せる。クエリ画像の推定カメラ姿勢の視野内に、1つも比較用画像のカメラ姿勢が存在しない場合は、(5-1)、または(5-2)、または(5-3)の方法のいずれかを用いて、比較用画像を選択してもよい。
【0053】
以上、本発明の各実施形態や実施例によれば、クエリ画像の推定カメラ姿勢の算出と、最適な比較用画像の選択を繰り返すことで、画像マッチングに適した比較用画像を選択できることで、GPSや地磁気センサーが利用できない場所においても、事前に用意した複数の候補の中から最適な比較用画像を選択することができる。繰り返し処理については以上の説明通りであるが、一実施形態では例えば以下のような結果となることがありうる。
●N=1(初回)で、リファレンス用画像集合PSから比較用画像集合PS[1]を選択し、集合PS[1]から推定カメラ姿勢EX[1]を推定し、次回N=2に向けた比較用画像集合PS[2]をリファレンス用画像集合PSから選択し、集合PS[1],PS[2]の重複が小さいことから収束していないものと判定する。
●N=2で、集合PS[2]から推定カメラ姿勢EX[2]を推定し、次回N=3に向けた比較用画像集合PS[3]をリファレンス用画像集合PSから選択し、集合PS[2],PS[3]の重複が大きいことから収束しているものと判定し、結果としてPS[3]を出力する。(なお、結果としてPS[N+1](この例ではPS[3])ではなくPS[N](この例ではPS[2])を出力してもよい。)
【0054】
特に、最初に用意しておくリファレンス用画像集合PSが密であって多数の画像に渡るものである場合(例えば、各画像P(i)の位置姿勢に相当する外部パラメータEX(i)の間隔が、1cm間隔/3軸の回転をすべて1°間隔などといったように密であり、結果として画像集合PSの構成画像数も多数に渡るような場合)にはより顕著に、本発明の各実施形態や実施例による繰り返しによりPS[1]→PS[2]→PS[3]→…と各回N=1,2,3,…で選択される比較用画像集合PS[N]が変化して行くことにより、より適切な比較用画像集合PS[N]が選択されるようになり、最終的には適切な集合PS[N]に収束することが期待される。
【0055】
以下、種々の補足例、代替例、追加例等について説明する。
【0056】
<1> 本実施形態の比較用画像検索装置10は、VPS等の要素技術として、GPS等を使用しない状況においても、ロボットの自己位置推定精度の向上に寄与することができる。これにより遠隔ロボットの利便性が向上され、遠隔の現場へと指導者等が移動することを必須とせず、ユーザ移動に必要となるエネルギー資源を節約することで二酸化炭素排出量を抑制できることから、国連が主導する持続可能な開発目標(SDGs)の目標13「気候変動とその影響に立ち向かうため、緊急対策を取る」に貢献することが可能となる。
【0057】
(14) 図13は、一般的なコンピュータ装置70におけるハードウェア構成の例を示す図である。比較用画像検索装置10は、このような構成を有する1台以上のコンピュータ装置70として実現可能である。なお、2台以上のコンピュータ装置70で比較用画像検索装置10を実現する場合、ネットワーク経由で処理に必要な情報の送受を行うようにしてよい。コンピュータ装置70は、所定命令を実行するCPU(中央演算装置)71、CPU71の実行命令の一部又は全部をCPU71に代わって又はCPU71と連携して実行する専用プロセッサとしてのGPU(グラフィックス演算装置)72、CPU71(及びGPU72)にワークエリアを提供する主記憶装置としてのRAM73、補助記憶装置としてのROM74、通信インタフェース75、ディスプレイ76、マウス、キーボード、タッチパネル等によりユーザ入力を受け付ける入力インタフェース77、カメラ78と、これらの間でデータを授受するためのバスBSと、を備える。
【0058】
比較用画像検索装置10の各機能部は、各部の機能に対応する所定のプログラムをROM74から読み込んで実行するCPU71及び/又はGPU72によって実現することができる。なお、CPU71及びGPU72は共に、演算装置(プロセッサ)の一種である。ここで、表示関連の処理が行われる場合にはさらに、ディスプレイ76が連動して動作し、データ送受信に関する通信関連の処理が行われる場合にはさらに通信インタフェース75が連動して動作する。比較用画像検索装置10による処理結果等はディスプレイ76で表示して出力してよい。
【符号の説明】
【0059】
10…比較用画像検索装置、11…比較用画像レンダリング部、12…初回比較用画像選択部、13…画像マッチング部、14…推定カメラ姿勢算出部、15…最適比較用画像選択部、16…収束判定部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13