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

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

▶ 学校法人立命館の特許一覧

特許7345153飛翔体の地理座標推定装置、地理座標推定システム、地理座標推定方法、及びコンピュータプログラム
<>
  • 特許-飛翔体の地理座標推定装置、地理座標推定システム、地理座標推定方法、及びコンピュータプログラム 図1
  • 特許-飛翔体の地理座標推定装置、地理座標推定システム、地理座標推定方法、及びコンピュータプログラム 図2
  • 特許-飛翔体の地理座標推定装置、地理座標推定システム、地理座標推定方法、及びコンピュータプログラム 図3
  • 特許-飛翔体の地理座標推定装置、地理座標推定システム、地理座標推定方法、及びコンピュータプログラム 図4
  • 特許-飛翔体の地理座標推定装置、地理座標推定システム、地理座標推定方法、及びコンピュータプログラム 図5
  • 特許-飛翔体の地理座標推定装置、地理座標推定システム、地理座標推定方法、及びコンピュータプログラム 図6
  • 特許-飛翔体の地理座標推定装置、地理座標推定システム、地理座標推定方法、及びコンピュータプログラム 図7
  • 特許-飛翔体の地理座標推定装置、地理座標推定システム、地理座標推定方法、及びコンピュータプログラム 図8
  • 特許-飛翔体の地理座標推定装置、地理座標推定システム、地理座標推定方法、及びコンピュータプログラム 図9
  • 特許-飛翔体の地理座標推定装置、地理座標推定システム、地理座標推定方法、及びコンピュータプログラム 図10
  • 特許-飛翔体の地理座標推定装置、地理座標推定システム、地理座標推定方法、及びコンピュータプログラム 図11
  • 特許-飛翔体の地理座標推定装置、地理座標推定システム、地理座標推定方法、及びコンピュータプログラム 図12
  • 特許-飛翔体の地理座標推定装置、地理座標推定システム、地理座標推定方法、及びコンピュータプログラム 図13
  • 特許-飛翔体の地理座標推定装置、地理座標推定システム、地理座標推定方法、及びコンピュータプログラム 図14
  • 特許-飛翔体の地理座標推定装置、地理座標推定システム、地理座標推定方法、及びコンピュータプログラム 図15
  • 特許-飛翔体の地理座標推定装置、地理座標推定システム、地理座標推定方法、及びコンピュータプログラム 図16
  • 特許-飛翔体の地理座標推定装置、地理座標推定システム、地理座標推定方法、及びコンピュータプログラム 図17
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-09-07
(45)【発行日】2023-09-15
(54)【発明の名称】飛翔体の地理座標推定装置、地理座標推定システム、地理座標推定方法、及びコンピュータプログラム
(51)【国際特許分類】
   G05D 1/02 20200101AFI20230908BHJP
【FI】
G05D1/02 J
【請求項の数】 19
(21)【出願番号】P 2018242629
(22)【出願日】2018-12-26
(65)【公開番号】P2020106919
(43)【公開日】2020-07-09
【審査請求日】2021-12-10
(73)【特許権者】
【識別番号】593006630
【氏名又は名称】学校法人立命館
(74)【代理人】
【識別番号】100111567
【弁理士】
【氏名又は名称】坂本 寛
(72)【発明者】
【氏名】柴田 史久
(72)【発明者】
【氏名】池田 聖
【審査官】影山 直洋
(56)【参考文献】
【文献】米国特許出願公開第2017/0328716(US,A1)
【文献】特開2018-146946(JP,A)
【文献】特開2018-128386(JP,A)
【文献】特開2017-044562(JP,A)
【文献】特許第6324649(JP,B1)
【文献】特開2009-070357(JP,A)
【文献】特開2017-076302(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05D 1/02
(57)【特許請求の範囲】
【請求項1】
複数のマーカデータを有するマーカ管理テーブルが格納されるメモリであって、前記マーカデータは、マーカが設置された位置の地理座標を示すマーカ地理座標を含む、メモリと、
プロセッサと、を備え、
前記プロセッサは、
飛翔体の第1地理座標を取得し、
前記マーカ管理テーブルに含まれる複数のマーカデータのうち、取得した前記第1地理座標から決定される範囲にある1又は複数の撮影可能マーカに関する第1の撮影可能マーカデータを選択し、
前記第1の撮影可能マーカデータのうちから、前記飛翔体に搭載されたカメラの視野データに基づいて第2の撮影可能マーカデータを抽出し、
前記カメラにより撮影された画像中の前記撮影可能マーカを認識することで、前記画像における前記撮影可能マーカの画像座標を求め、
前記第2の撮影可能マーカデータに含まれる前記マーカ地理座標と、前記画像座標と、に基づいて、前記飛翔体における第2地理座標を推定するよう動作する
飛翔体の地理座標推定装置。
【請求項2】
前記第1地理座標は、経度及び緯度を含み、
前記プロセッサは、前記範囲を、前記緯度及び前記経度に基づいて決定する
請求項1に記載の地理座標推定装置。
【請求項3】
前記第1地理座標は、高度を更に含み、
前記プロセッサは、前記範囲を、更に、前記高度に基づいて決定する
請求項2に記載の地理座標推定装置。
【請求項4】
前記第1地理座標は、前記飛翔体に搭載される受信機によって前記飛翔体外部から受信した信号に基づいて取得される
請求項1から3のいずれか1項に記載の地理座標推定装置。
【請求項5】
前記受信機は、GNSS受信機である
請求項4に記載の地理座標推定装置。
【請求項6】
前記視野データは、前記カメラの姿勢を含む
請求項1から5のいずれか1項に記載の地理座標推定装置。
【請求項7】
前記視野データは、前記カメラの画角を含む
請求項1から6のいずれか1項に記載の地理座標推定装置。
【請求項8】
前記プロセッサは、前記画像から、マーカ遮蔽物を検出するよう更に動作し、
前記プロセッサは、前記第1の撮影可能マーカデータのうちから、前記マーカ遮蔽物によって遮蔽されるマーカに関するマーカデータが除かれた1又は複数の前記第2の撮影可能マーカデータを決定する
請求項1から7のいずれか1項に記載の地理座標推定装置。
【請求項9】
前記プロセッサは、
前記画像においてマーカが現れないマーカ非出現範囲を検出し、
前記マーカ非出現範囲においては前記撮影可能マーカを認識するよう動作せず、前記画像における前記マーカ非出現範囲を除く範囲において、前記撮影可能マーカを認識するよう動作をする
請求項1から8のいずれか1項に記載の地理座標推定装置。
【請求項10】
前記プロセッサは、前記撮影可能マーカの種別に応じた認識方式によって、前記撮影可能マーカを認識する
請求項1から9のいずれか1項に記載の地理座標推定装置。
【請求項11】
前記プロセッサは、
前記第2の撮影可能マーカデータに含まれる前記マーカ地理座標から、前記画像におけるマーカ探索範囲を決定し、
前記マーカ探索範囲において前記撮影可能マーカを認識するよう動作する
請求項1から10のいずれか1項に記載の地理座標推定装置。
【請求項12】
前記プロセッサは、前記画像から複数の前記撮影可能マーカを認識した場合は、認識された複数の前記撮影可能マーカに対応する前記マーカ地理座標に基づいて、前記飛翔体における第2地理座標を推定する
請求項1から11のいずれか1項に記載の地理座標推定装置。
【請求項13】
前記プロセッサは、前記第2の撮影可能マーカデータに含まれる前記マーカ地理座標と、前記画像座標と、に基づいて、前記飛翔体における姿勢を推定する
請求項1から12のいずれか1項に記載の地理座標推定装置。
【請求項14】
前記マーカデータは、マーカ設置時刻データを更に含み、
前記マーカ設置時刻データは、前記マーカ地理座標の精度を識別するために前記プロセッサにより用いられる
請求項1から13のいずれか1項に記載の地理座標推定装置。
【請求項15】
前記マーカデータは、マーカ種別を示すマーカ種別データを更に含み、
前記マーカ種別データは、前記撮影可能マーカを認識するための認識アルゴリズムを決定するために前記プロセッサにより用いられる
請求項1から14のいずれか1項に記載の地理座標推定装置。
【請求項16】
前記マーカデータは、マーカパターンを示すパターンデータを更に含み、
前記パターンデータは、前記撮影可能マーカを認識するために前記プロセッサにより用いられる
請求項1から15のいずれか1項に記載の地理座標推定装置。
【請求項17】
飛翔体に搭載されるカメラと、
前記飛翔体外部から信号を受信する受信機と、
複数のマーカデータを有するマーカ管理テーブルが格納されるメモリであって、前記マーカデータは、マーカが設置された位置の地理座標を示すマーカ地理座標を含む、メモリと、
プロセッサと、
を備え、
前記プロセッサは、
前記受信機により受信した信号に基づいて前記飛翔体の第1地理座標を取得し、
前記マーカ管理テーブルに含まれる複数のマーカデータのうち、取得した前記第1地理座標から決定される範囲にある1又は複数の撮影可能マーカに関する第1の撮影可能マーカデータを選択し、
前記第1の撮影可能マーカデータのうちから、前記カメラの視野データに基づいて第2の撮影可能マーカデータを抽出し、
前記カメラにより撮影された画像中の前記撮影可能マーカを認識することで、前記画像における前記撮影可能マーカの画像座標を求め、
前記第2の撮影可能マーカデータに含まれる前記マーカ地理座標と、前記画像座標と、に基づいて、前記飛翔体における第2地理座標を推定するよう動作する
飛翔体の地理座標推定システム。
【請求項18】
マーカ管理テーブルに含まれる複数のマーカデータのうち、飛翔体が取得した第1地理座標から決定される範囲にある1又は複数の撮影可能マーカに関する第1の撮影可能マーカデータを選択し、
前記第1の撮影可能マーカデータのうちから、前記飛翔体に搭載されたカメラの視野データに基づいて第2の撮影可能マーカデータを抽出し、
前記カメラにより撮影された画像中の前記撮影可能マーカを認識することで、前記画像における前記撮影可能マーカの画像座標を求め、
前記第2の撮影可能マーカデータに含まれるマーカ地理座標と、前記画像座標と、に基づいて、前記飛翔体における第2地理座標を推定する
ことを含む地理座標推定方法。
【請求項19】
マーカ管理テーブルに含まれる複数のマーカデータのうち、飛翔体が取得した第1地理座標から決定される範囲にある1又は複数の撮影可能マーカに関する第1の撮影可能マーカデータを選択し、
前記第1の撮影可能マーカデータのうちから、前記飛翔体に搭載されたカメラの視野データに基づいて第2の撮影可能マーカデータを抽出し、
前記カメラにより撮影された画像中の前記撮影可能マーカを認識することで、前記画像における前記撮影可能マーカの画像座標を求め、
前記第2の撮影可能マーカデータに含まれるマーカ地理座標と、前記画像座標と、に基づいて、前記飛翔体における第2地理座標を推定する
ようコンピュータを動作させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、飛翔体の地理座標推定装置、地理座標推定システム、地理座標推定方法、及びコンピュータプログラムに関する。
【背景技術】
【0002】
特許文献1は、ランドマークを観測して自己の位置を同定する自己位置同定装置を備えた移動体を開示している。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2008-165275号公報
【発明の概要】
【0004】
ドローンなどの飛翔体は、GPS又は慣性航法などの測位技術を活用した位置・姿勢算出機能を有している。しかし、GPS又は慣性航法などの測位技術を活用しても大まかな位置・姿勢を算出することしかできない。これに対して、本発明者らは、より高精度に飛翔体の自己位置を求めるため、設置位置が既知であるマーカを利用するという着想を得た。例えば、マーカを撮像した画像上でのマーカ位置(2次元位置)と、既知のマーカ設置位置(3次元位置)と、がわかれば、PnP問題を解くことで、画像を撮像したカメラの位置・姿勢を求めることができる。
【0005】
設置位置が既知であるマーカを利用した自己位置推定においては、カメラによって撮像されるマーカが、どの位置に設置されたマーカであるのかを識別して認識する必要がある。自己位置推定装置が、ごく限られた空間内で移動するのであれば、その空間内に設置されるマーカの数も限られるため、画像中のマーカ識別する処理の負荷は小さい。しかし、様々な場所へ移動する可能性がある飛翔体の自己位置推定を、マーカを利用して行おうとすると、処理負荷が非常に大きくなるおそれがある。
【0006】
つまり、飛翔体は、非常に広域な領域における様々な場所を飛行できるため、マーカは、飛翔体が飛行し得る様々な場所に設置される必要がある。したがって、設置すべきマーカの数は膨大となる。この結果、マーカを利用した自己位置推定においては、飛翔体に搭載されたカメラによって撮像された画像において認識すべきマーカ候補が膨大であり、処理負荷が増大する。
【0007】
したがって、認識すべきマーカ候補が膨大であっても、効率的にマーカを認識する手法が望まれる。
【0008】
本開示のある態様は、飛翔体の地理座標推定装置である。開示の地理座標推定装置は、マーカ管理テーブルに含まれる複数のマーカデータのうち、飛翔体に搭載されたカメラによる撮影可能範囲にある1又は複数の撮影可能マーカに関する撮影可能マーカデータを、前記飛翔体の第1地理座標に基づいて決定し、前記カメラにより撮影された画像中の前記撮影可能マーカを認識することで、前記画像における前記撮影可能マーカの画像座標を求め、前記撮影可能マーカデータに含まれるマーカ地理座標と、前記画像座標と、に基づいて、前記飛翔体における第2地理座標を推定する。
【図面の簡単な説明】
【0009】
図1図1は、地理座標推定システムのブロック図である。
図2図2は、地理座標推定処理のフローチャートである。
図3図3は、マーカ管理テーブルを示す図である。
図4図4は、単独マーカの説明図である。
図5図5は、単独マーカの例を示す図である。
図6図6は、複合マーカの説明図である。
図7図7は、呼応マーカの説明図である。
図8図8は、撮影可能範囲の説明図である。
図9図9は、雲が映った画像である。
図10図10は、雲がマーカ遮蔽物又はマーカ非出現範囲として検出されることの説明図である。
図11図11は、撮影可能マーカ及び撮影可能マーカデータの説明図である。
図12図12は、マーカ探索範囲の説明図である。
図13図13は、河川等がマーカ非出現範囲として検出されることの説明図である。
図14図14は、撮影可能マーカ認識処理の説明図である。
図15図15は、第1利用例を示すフローチャートである。
図16図16は、第2利用例を示すフローチャートである。
図17図17は、第3利用例を示すフローチャートである。
【発明を実施するための形態】
【0010】
<飛翔体の地理座標推定装置、地理座標推定システム、地理座標推定方法、及びコンピュータプログラムの概要>
【0011】
(1)実施形態に係る飛翔体に地理座標推定装置は、メモリを備える。メモリは、複数のマーカデータを有するマーカ管理テーブルが格納される。前記マーカデータは、マーカが設置された位置の地理座標を示すマーカ地理座標を含む。
【0012】
地理座標推定装置は、プロセッサを備える。前記プロセッサは、前記マーカ管理テーブルに含まれる複数のマーカデータのうち、飛翔体に搭載されたカメラによる撮影可能範囲にある1又は複数の撮影可能マーカに関する撮影可能マーカデータを、前記飛翔体の第1地理座標に基づいて決定するよう動作する。第1地理座標は、GPSなどから得られる低精度の地理座標で足りる。第1地理座標は、2次元座標(例えば、緯度及び経度)であってもよいし、3次元座標(例えば、緯度、経度、及び高度)であってもよい。
【0013】
プロセッサは、前記カメラにより撮影された画像中の前記撮影可能マーカを認識することで、前記画像における前記撮影可能マーカの画像座標を求め、前記撮影可能マーカデータに含まれる前記マーカ地理座標と、前記画像座標と、に基づいて、前記飛翔体における第2地理座標を推定するよう動作する。第2地理座標は、撮影可能マーカの認識により高精度に推定される。また、撮影可能マーカデータは、第1地理座標によって予め絞り込みされるため、マーカ管理テーブルに登録されているマーカデータの数が膨大であっても、処理負荷の増加を抑えることができる。
【0014】
なお、「前記飛翔体における第2地理座標」とは、飛翔体自体の地理座標であってもよいし、飛翔体に搭載された機器(カメラなど)の地理座標であってもよい。
【0015】
(2)前記第1地理座標は、経度及び緯度を含み、前記プロセッサは、前記撮影可能範囲を、前記緯度及び前記経度に基づいて決定するのが好ましい。この場合、撮影可能範囲は、緯度及び経度に応じた適切な位置に決定される。
【0016】
(3)前記第1地理座標は、高度を更に含み、前記プロセッサは、前記撮影可能範囲を、更に、前記高度に基づいて決定するのが好ましい。この場合、撮影可能範囲は、高度に応じた適切な広さに決定される。
【0017】
(4)前記第1地理座標は、前記飛翔体に搭載される受信機によって前記飛翔体外部から受信した信号に基づいて取得されてもよい。この場合、第1地理座標を容易に得られる。
【0018】
(5)前記受信機は、GNSS受信機であってもよい。
【0019】
(6)前記プロセッサは、前記撮影可能マーカデータを、更に、前記カメラの視野データに基づいて決定するのが好ましい。この場合、カメラ視野に応じた適切な撮影可能マーカデータが決定される。
【0020】
(7)前記視野データは、前記カメラの姿勢を含むのが好ましい。この場合、カメラの姿勢に応じた適切な撮影可能マーカデータが決定される。
【0021】
(8)前記視野データは、前記カメラの画角を含むのが好ましい。この場合、カメラの画角に応じた適切な撮影可能マーカデータが決定される。
【0022】
(9)前記プロセッサは、前記画像から、マーカ遮蔽物を検出するよう更に動作し、前記プロセッサは、前記マーカ遮蔽物によって遮蔽されるマーカに関するマーカデータが除かれた1又は複数の前記撮影可能マーカデータを決定するのが好ましい。この場合、マーカ遮蔽物によって画像に現れないマーカを除外することができる。
【0023】
(10)前記プロセッサは、前記画像においてマーカが現れないマーカ非出現範囲を検出し、前記マーカ非出現範囲においては前記撮影可能マーカを認識するよう動作せず、前記画像における前記マーカ非出現範囲を除く範囲において、前記撮影可能マーカを認識するよう動作をするのが好ましい。この場合、マーカ非出現範囲を除いて効率的にマーカ認識の動作をすることができる。
【0024】
(11)前記プロセッサは、前記撮影可能マーカの種別に応じた認識方式によって、前記撮影可能マーカを認識するのが好ましい。この場合、マーカ種別に応じた認識をすることができる。
【0025】
(12)前記プロセッサは、前記撮影可能マーカデータに含まれる前記マーカ地理座標から、前記画像におけるマーカ探索範囲を決定し、前記マーカ探索範囲において前記撮影可能マーカを認識するよう動作するのが好ましい。この場合、効率的にマーカを探索できる。
【0026】
(13)前記プロセッサは、前記画像から複数の前記撮影可能マーカを認識した場合は、認識された複数の前記撮影可能マーカに対応する前記マーカ地理座標に基づいて、前記飛翔体における第2地理座標を推定することができる。この場合、より高精度に第2地理座標を推定できる。
【0027】
(14)前記プロセッサは、前記撮影可能マーカデータに含まれる前記マーカ地理座標と、前記画像座標と、に基づいて、前記飛翔体における姿勢を推定するのが好ましい。なお、「前記飛翔体における姿勢」とは、飛翔体自体の姿勢であってもよいし、飛翔体に搭載された機器(カメラなど)の姿勢であってもよい。
【0028】
(15)前記マーカデータは、マーカ設置時刻データを更に含み、前記マーカ設置時刻データは、前記マーカ地理座標の精度を識別するために前記プロセッサにより用いられるのが好ましい。
【0029】
(16)前記マーカデータは、マーカ種別を示すマーカ種別データを更に含み、前記マーカ種別データは、前記撮影可能マーカを認識するための認識アルゴリズムを決定するために前記プロセッサにより用いられるのが好ましい。
【0030】
(17)前記マーカデータは、マーカパターンを示すパターンデータを更に含み、前記パターンデータは、前記撮影可能マーカを認識するために前記プロセッサにより用いられるのが好ましい。
【0031】
(18)実施形態に係る地理座標推定システムは、飛翔体に搭載されるカメラと、前記飛翔体外部から信号を受信する受信機と、複数のマーカデータを有するマーカ管理テーブルが格納されるメモリであって、前記マーカデータは、マーカが設置された位置の地理座標を示すマーカ地理座標を含む、メモリと、プロセッサと、を備え、前記プロセッサは、前記マーカ管理テーブルに含まれる複数のマーカデータのうち、前記カメラによる撮影可能範囲にある1又は複数の撮影可能マーカに関する撮影可能マーカデータを、前記受信機により受信した信号から得られる前記飛翔体の第1地理座標に基づいて決定し、前記カメラにより撮影された画像中の前記撮影可能マーカを認識することで、前記画像における前記撮影可能マーカの画像座標を求め、前記撮影可能マーカデータに含まれる前記マーカ地理座標と、前記画像座標と、に基づいて、前記飛翔体における第2地理座標を推定するよう動作する。
【0032】
(19)実施形態に係る地理座標推定方法は、マーカ管理テーブルに含まれる複数のマーカデータのうち、飛翔体に搭載されたカメラによる撮影可能範囲にある1又は複数の撮影可能マーカに関する撮影可能マーカデータを、前記飛翔体の第1地理座標に基づいて決定し、前記カメラにより撮影された画像中の前記撮影可能マーカを認識することで、前記画像における前記撮影可能マーカの画像座標を求め、前記撮影可能マーカデータに含まれるマーカ地理座標と、前記画像座標と、に基づいて、前記飛翔体 における第2地理座標を推定することを含む。
【0033】
(20)実施形態に係るコンピュータプログラムは、マーカ管理テーブルに含まれる複数のマーカデータのうち、飛翔体に搭載されたカメラによる撮影可能範囲にある1又は複数の撮影可能マーカに関する撮影可能マーカデータを、前記飛翔体の第1地理座標に基づいて決定し、前記カメラにより撮影された画像中の前記撮影可能マーカを認識することで、前記画像における前記撮影可能マーカの画像座標を求め、前記撮影可能マーカデータに含まれるマーカ地理座標と、前記画像座標と、に基づいて、前記飛翔体における第2地理座標を推定するようコンピュータを動作させる。コンピュータプログラムは、例えば、記憶媒体に格納される。記憶媒体は、コンピュータ読み取り可能な、非一時的な記憶媒体である。
【0034】
<飛翔体の地理座標推定装置、地理座標推定システム、地理座標推定方法、及びコンピュータプログラムの例>
【0035】
図1は、飛翔体11に搭載される地理座標推定システム10を示している。ここでの飛翔体11は、無人航空機(Unmanned Aerial Vehicle; UAV, いわゆるドローン)である。実施形態の地理座標推定システム10は、飛翔体11における地理座標(地球上における絶対3次元位置座標)を推定する。実施形態の地理座標推定システム10は、地理座標のほか、飛翔体11における姿勢を推定することもできる。なお、実施形態においては、飛翔体11に搭載されたカメラ61(後述)の地理座標及び姿勢を推定する。
【0036】
ただし、地理座標推定システム10は、飛翔体11に搭載された他のカメラ62(後述)の地理座標及び姿勢を推定してもよいし、飛翔体11自体の地理座標及び姿勢を推定してもよいし、飛翔体11に搭載された他の機器の地理座標及び姿勢を推定してもよい。他のカメラ62,飛翔体11自体、又は他の機器の地理座標及び姿勢は、カメラ61との既知の相対位置関係を用いて、カメラ61の地理座標及び姿勢から算出可能である。
【0037】
ここで、ドローンなどの飛翔体11に搭載されたカメラによって撮像された画像を利用する際には、飛翔体11(より正確には、飛翔体11に搭載されたカメラ)の地球上での正確な絶対位置情報(及び姿勢)が必要とされることがある。例えば、本発明者らは、拡張現実(Augmented Reality; AR)/複合現実(Mixed Reality; MR)のため、飛翔体11に搭載されたカメラによって撮像された画像(現実世界画像)に、他の画像(CG画像など)を重ね合わせるという着想を得た。他の画像は、例えば、各種地図・地形図・地形を撮影した過去の撮像画像などである。具体的には、大災害の現場を、飛翔体に搭載されたカメラで撮像し、撮像された画像に、各種地図・地形図・過去の撮像画像(災害前の撮像画像)を重畳させることが考えられる。このような重畳画像は、災害現場の正確な状況把握又は避難誘導に活用できる。
【0038】
上記のような重畳画像を得るには、カメラの正確な位置(及び姿勢)の把握が必要となる。一般的に、ドローンなどの飛翔体は、GPS又は慣性航法などの測位技術を活用した位置・姿勢算出機能を有している。しかし、GPS又は慣性航法などの測位技術では、大まかな位置・姿勢しか得られず、画素単位で画像間位置整合が要求されるような用途には不適である。
【0039】
実施形態においては、飛翔体における地理座標及び姿勢の推定のため、マーカ認識による位置決定技術が用いられる。ここで、マーカ認識による位置決定技術は、AR/MRにおいて利用されている技術である。現実世界に設置されたマーカをカメラで撮像することにより、マーカとカメラとの間の相対位置・姿勢を決定することができる。決定された相対位置・姿勢を利用して、現実世界と仮想世界との位置合わせが行われる。
【0040】
しかし、飛翔体に搭載されたカメラによって撮像された画像に他の画像を重畳する場合には、マーカとカメラとの間の相対位置では足りず、カメラ(飛翔体)の地球上での正確な絶対位置情報(地理座標)及び姿勢が必要となる。そこで、実施形態の地理座標推定システム10は、マーカ認識によって、飛翔体11における地理座標及び姿勢を推定する。飛翔体11における正確な地理座標及び姿勢がわかれば、カメラによって撮像された画像と他の画像とを、地球上の絶対3次元位置座標において位置合わせをすることができる。例えば、飛翔体に搭載されたカメラによって災害現場を撮影した画像と、その現場を災害前に撮影した画像と、を、地球上の絶対3次元位置座標において正確に位置合わせをすることができる。位置合わせされた画像から、災害による地勢の変化を容易に把握することが可能となる。
【0041】
図1に示すように、実施形態の地理座標推定システム10は、地理座標推定装置15を備える。実施形態の地理座標推定装置15は、コンピュータによって構成される。コンピュータは、プロセッサ20及びプロセッサ20に接続されたメモリ30を備える。実施形態において、地理座標推定装置15は、飛翔体11に搭載される。ただし、地理座標推定装置15は、飛翔体11との間で無線通信可能に、飛翔体11外(例えば、地上)に設けられていてもよい。例えば、地理座標推定装置15は、飛翔体11の操作者が有するモバイル端末によって構成されていてもよい。
【0042】
メモリ30には、コンピュータを地理座標推定装置15として機能させるコンピュータプログラム50が格納されている。プロセッサ20は、メモリ30に格納されたコンピュータプログラム50を読み出して実行する。コンピュータプログラム50は、プロセッサ20に、図2に示す地理座標推定処理(後述)を実行させる。なお、メモリ30は、一次記憶装置であってもよいし、二次記憶装置であってもよいし、三次記憶装置であってもよい。
【0043】
メモリ30には、地理座標推定処理に用いられるマーカ管理テーブル31が格納されている。マーカ管理テーブル31については、後述する。
【0044】
地理座標推定システム10は、第1カメラ61を備える。第1カメラ61は、飛翔体11に搭載されている。第1カメラ61は、現実世界に設置されたマーカを撮像する。マーカを撮像した画像は、地理座標及び姿勢の推定に用いられる。
【0045】
地理座標推定システム10は、第2カメラ62を備える。第2カメラ62は、飛翔体11に搭載されている。第2カメラ62は、観測用画像を撮像する。観測用画像は、例えば、災害現場などの観測画像である。観測画像には、例えば、AR/MR技術により、他の画像(CG画像・過去撮影画像)が重畳される。なお、第1カメラ61と第2カメラ62とは単一のカメラによって構成されてもよい。ただし、マーカ撮像と観測とを別のカメラで行うことにより、マーカ撮像に適した画像と観測に適した画像とを別個に得ることができる。例えば、第1カメラによりマーカ設置場所を撮像しつつ、第2カメラによりマーカ設置場所から少し離れた災害現場を撮像することができる。
【0046】
地理座標推定システム10は、航法衛星システム(Navigation Satellite System; NSS)受信機71を備える。NSS受信機71は、飛翔体11に搭載されている。航法衛星システム(NSS)は、例えば、GPSなどの全地球航法衛星システム(GNSS)である。NSS受信機71は、飛翔体11外部にある衛星から受信した信号に基づいて、飛翔体11の地理座標(例えば、緯度、経度、及び高度)を取得することができる。
【0047】
NSS受信機71は、地理座標推定装置15に接続されている。NSS受信機71が取得した地理座標を含むNSSデータは、地理座標推定装置15へ与えられる。地理座標推定装置15は、NSS受信機71から取得した地理座標を暫定地理座標(第1地理座標)として扱う。
【0048】
地理座標推定システム10は、慣性計測装置(inertial measurement unit; IMU)72を備える。IMU72は、飛翔体に搭載されている。IMU72は、飛翔体11の3次元の角度と加速度とを計測する。3次元の角度と加速度とはIMUデータとして、地理座標推定装置15へ与えられる。地理座標推定装置15は、IMU72から取得したIMUデータから、飛翔体11の姿勢を算出する。地理座標推定装置15は、IMUデータから算出された姿勢を、暫定姿勢(第1姿勢)として扱う。
【0049】
地理座標推定システム10は、高度計73を備える。高度計73は、飛翔体11に搭載されている。高度計73は、飛翔体11の高度を計測する。高度計73から出力された高度データは、地理座標推定装置15へ与えられる。暫定地理座標に含まれる高度は、高度計73により測定された高度であってもよい。
【0050】
地理座標推定システム10は、無線通信機74を備える。無線通信機74は、地理座標推定装置15が、飛翔体11外部と通信するために用いられる。
【0051】
実施形態の地理座標推定装置15は、暫定地理座標(第1地理座標)よりも高精度な第2地理座標及び第2姿勢を推定(算出)する。実施形態においては、第2地理座標及び第2姿勢は、画像におけるマーカ認識により算出される。実施形態において、カメラ61により撮像されるマーカが設置されている場所の3次元地理座標(緯度、経度、及び高度)は既知である。地理座標が既知であるマーカをカメラ61により撮像した画像において認識することで、画像におけるマーカの画像座標(画像における2次元座標)を求めることができる。そして、マーカの地理座標と画像座標とを用いて、PnP問題を解くことで、カメラ(飛翔体11)の地理座標(第2地理座標)及び姿勢(第2姿勢)を推定することができる。
【0052】
図3は、地理座標(第2地理座標)及び姿勢(第2姿勢)の推定に用いられるマーカを管理するためのマーカ管理テーブル31を示している。実施形態におけるマーカは、実世界において事前に配置される静止マーカである。マーカは、飛翔体が飛行する可能性のある場所に事前に設置される。マーカ管理テーブル31は、複数のマーカそれぞれのマーカデータを有する。なお、マーカは、マーカとして機能するようデザインされた専用の物であってもよいし、ビル・電柱・看板・橋など、現実の世界においてマーカとしての用途以外の用途のために既に存在する物(ランドマーク)であってもよい。
【0053】
実施形態のマーカデータは、各地に多数設置された複数のマーカそれぞれのID35を有する。ID35は、マーカそれぞれの識別子である。
【0054】
実施形態のマーカデータは、ID35に対応付けられたマーカ地理座標36を有する。マーカ地理座標36は、例えば、緯度、経度、高度を含む。マーカ地理座標は、マーカの姿勢を含んでもよい。図2において、例えば、ID35が0001であるマーカの既知のマーカ地理座標36として、緯度Lat0001、経度Lng0002、高度Alt0001が格納されている。マーカ地理座標36は、事前に何らかの測位方法で、時間をかけて高精度に測定されたものである。測位方法は、例えば、GPSなどのNNSによる測位である。GPSなどのNNSによる測位であっても、時間をかけることで高精度の測位データを得ることができる。なお、図3に示すマーカ地理座標は、世界測地系であるが、3次元の地理座標を表現できれば、他の測地系であってもよい。
【0055】
実施形態のマーカデータは、ID35に対応付けられたマーカ種別データ37を有する。マーカ種別データ37は、マーカ種別を示す。マーカ種別は、マーカ方式の種類を示す。実施形態においては、マーカ方式として単独マーカ方式、複合マーカ方式、呼応マーカ方式の3種類が採用されている。マーカ種別が異なれば、画像からマーカを認識するための認識アルゴリズム(認識方式)が異なることになる。マーカ種別データ37は、ID35で示されるマーカをどの認識アルゴリズムで認識すればよいかをプロセッサ20が決定するために用いられる。
【0056】
実施形態のマーカデータは、ID35に対応付けられたパターンデータ38を有する。パターンデータ38は、マーカパターンを示す。マーカパターンは、マーカがどのような形状・配置を有するかを示し、プロセッサ20がマーカを画像認識して検出するために用いられる。マーカの画像認識においては、パターンデータ38と一致するパターンを有する画像領域がマーカとして認識される。
【0057】
実施形態のマーカデータは、ID35に対応付けられたマーカ設置時刻データ39を有する。マーカ設置時刻データ39は、マーカが、マーカ地理座標36で示す位置に設置された時刻(日時)を示す。マーカ設置時刻データ39は、プロセッサ20が、マーカ地理座標36の精度を識別するために用いられる。マーカ地理座標36は、時間をかけることで精度よく測定されるため、設置直後におけるマーカ地理座標36は、精度が低い。このため、第2地理座標及び第2姿勢を算出する際には、精度が低いマーカ地理座標36を用いないか、用いるとしても重視しないことで、算出される第2地理座標及び第2姿勢の精度低下を防止できる。
【0058】
図4及び図5は、単独マーカ方式の例を示している。単独マーカ方式においては、一つのマーカが、上空からの観測で識別できるだけの面積を持ち、マーカの形状及びパターンが観測画像から識別できるだけの解像度を有している。マーカパターンは、個々のマーカを他のマーカから区別して同定できるようにデザイン・描画されている。マーカは、例えば、ビルの屋上又は地上の平坦な場所に配置される。単独マーカ方式におけるマーカは、それ一つだけがカメラで撮像された画像に映ると、マーカとカメラ61(飛翔体11)との相対的3次元位置・姿勢を計算できるようにパターンがデザインされている。マーカには、マーカ地理座標が対応付けられているため、マーカとカメラ61との相対的3次元位置・姿勢がわかれば、マーカ地理座標36を用いて、カメラ61(飛翔体11)の絶対位置姿勢(第2地理座標及び第2姿勢)を計算することができる。
【0059】
一例として、図4においては、マーカA100がビルの屋上に配置されている。このマーカA100は、図3に示すマーカ管理テーブル31において、ID35が0001であるマーカデータとして管理されている。ID35が0001のマーカデータにおいて、マーカ種別37として「A(単独)」が設定され、パターンデータ38として「A1」が設定されている。ここで、Aは、単独マーカ方式においてさらにパターン毎に分類された種別を示す。また、パターンデータ38としてのA1は、A(単独)であるマーカ種別において、具体的なパターンが図5に示すパターンA1であることを示す。
【0060】
なお、図3のマーカ管理テーブル31においては、ID35が、0003であるマーカデータのパターンデータ38は、C1である。パターンデータ38としてのC1は、具体的なパターンが、図5に示すパターンC1であることを示す。また、ID35が、0123であるマーカデータのパターンデータ38は、C2である。パターンデータ38としてのC2は、具体的なパターンが、図5に示すパターンC2であることを示す。
【0061】
なお、単独マーカ方式においては、飛翔体11の高度が高くなると、地理座標及び姿勢の推定精度が低下することがある。推定精度低下防止のため、複数の単独マーカを、近隣に設置してもよい。
【0062】
図6は、複合マーカ方式の例を示している。複合マーカ方式においては、複数のマーカによって、マーカが同定される。複合マーカ方式を構成する複数のマーカそれぞれは、単体では、どのマーカかを同定するためのパターンを持たない。複合マーカ方式では、複数のマーカの組の配置パターンが、マーカ同定のための一つのパターンとして認識される。単独マーカ方式では、一つのマーカ単体が、ユニークに同定されるのに対して、複合マーカ方式では、複数のマーカが示すパターンが、ユニークに同定される。複合マーカ方式を構成する複数のマーカそれぞれは、点又は単純図形などシンプルなものでよい。つまり複合マーカ方式を構成する複数のマーカそれぞれは、単独マーカよりもシンプルなものでよい。
【0063】
複合マーカ方式におけるマーカは、高い高度からでも認識しやすいため、観測を行う飛翔体11の高度が高い場合に有利である。また、複合マーカ方式は、単独マーカが設置できる適切な場所がない場合にも設置可能である。さらに、複合マーカ方式においては、ビル・電柱・看板・橋などの複数のランドマークの組み合わせを一つの複合マーカとして利用することができる。
【0064】
図6では、複数のビルの屋上それぞれに、マーカB101,B102,B103,B104,B105,B106が設置されている。図6の例では、6個のマーカB101,102,103,104,105,106により一つの複合マーカB100が構成される。図6に示すように、複合マーカB100を構成する各マーカは、同一平面内にある必要はなく、異なる高さに設置されていてもよい。マーカ管理テーブル31は、複合マーカB100を構成する複数のマーカB101,102,103,104,105,106それぞれのマーカデータを有する。
【0065】
カメラ61により撮像された画像において、一つの複合マーカが同定されると、複合マーカを構成する複数のマーカそれぞれのマーカ地理座標データ36から、カメラ61(飛翔体11)の第2地理座標及び第2姿勢を高精度に算出することができる。
【0066】
なお、複合マーカB100を構成する複数のマーカの数は、複合マーカB100同定するのに必要な最低限の数よりも十分に多くされ、冗長性を持つのが好ましい。複合マーカB100を構成する複数のマーカが冗長性を有することで、複数のマーカのいくつかが認識できない場合にも、複合マーカの同定が可能となる。
【0067】
図7は、呼応マーカ方式の例を示している。呼応マーカ方式におけるマーカD101,D102,D103は、飛翔体11からのリクエストに応じて、識別パターンを出力する。呼応マーカ方式におけるマーカD101,D102,D103は、例えば、発光器、識別のための色を表示する表示器である。識別パターンは、例えば、発光パターン、色の表示パターン、発光又は色の変化パターンである。呼応マーカ方式におけるマーカD101,D102,D103は、ビルの屋上などに設置される。呼応マーカ方式のマーカD101,D102,D103は、飛翔体11からのリクエスト(無線通信によるリクエスト)を受信し、リクエストに応答する機構(発光器・表示器など)を有している必要がある。ただし、呼応マーカ方式では、能動的にパターンを出力できるため、出力されるパターンに情報を付加してマーカ識別精度を向上させることができる。
【0068】
上述のように、実施形態においては、複数のマーカ種別(単独マーカ方式、複合マーカ方式、呼応マーカ方式)が採用されているが、プロセッサ20は、いずれのマーカ種別であるかを、マーカ管理テーブル31のマーカ種別データ37によって識別することができる。また、特定のマーカ種別、例えば、単独マーカであっても、図5に示すように複数のパターンが存在するが、プロセッサ20は、いずれのパターンであるかを、マーカ管理テーブル31のパターンデータ38によって識別することができる。
【0069】
図2に戻り、プロセッサ20は、マーカ管理テーブル31を用いて、第2地理座標を算出する地理座標推定処理を実行する。図2に示す処理は、コンピュータプログラム50に従い、プロセッサ20により実行される。なお、図2に示す処理では、第2地理座標の推定のため、暫定地理座標(第1地理座標)だけでなく、暫定姿勢(第1姿勢)も用いられる。また、図2に示す処理では、第2地理座標だけでなく、暫定姿勢(第1姿勢)よりも高精度な第2姿勢も推定される。
【0070】
図2のステップS110において、プロセッサ20は、第1地理座標及び第1姿勢を推定する。第1地理座標及び第1姿勢は、例えば、NSS受信機71から取得したNSSデータ、IMU72から取得したIMUデータ、及び高度計73から取得した高度データに基づいて算出される。NSSデータ等から得られる第1地理座標及び第1姿勢は、比較的誤差が大きい。したがって、第1地理座標及び第1姿勢は、暫定値である。
【0071】
ステップS121において、プロセッサ20は、マーカ管理テーブル31から、撮影可能マーカ(マーカ候補)のマーカデータを選択する(撮影可能マーカの第1選択)。選択される撮影可能マーカは、飛行中の飛翔体11に搭載されたカメラ61による撮影可能範囲にある1又は複数のマーカである。すなわち、選択される撮影可能マーカは、カメラ61により撮像された画像において認識される可能性のあるマーカ候補である。
【0072】
マーカ管理テーブル31には、非常に広域な範囲に設置された多数のマーカが登録されているが、飛翔体11のカメラ61から撮像可能なマーカはそのうちのごく一部である。そこで、地理座標推定装置15は、撮影可能範囲内にある撮影可能マーカのマーカデータを絞り込み、絞り込まれたマーカデータをマーカ管理テーブル31から抽出する。
【0073】
ステップS121において、撮影可能範囲内にある撮影可能マーカの絞り込みは、第1地理座標を用いて行われる。プロセッサ20は、第1地理座標から撮影可能範囲80を決定する。図8に示すように、撮影可能範囲80は、例えば、第1地理座標に含まれる緯度及び経度が示す場所を中心Cとする円形範囲として決定される。したがって、撮影可能範囲80は、飛翔体11の撮影時点における2次元位置(緯度及び経度)に応じた適切な位置に決定される。
【0074】
円形の撮影可能範囲80の半径は、第1地理座標に含まれる高度に応じて決定される。高度が高ければ撮影可能範囲80は広くなり、高度が低ければ撮影可能範囲80は狭くなる。したがって、撮影可能範囲80は、飛翔体11の撮影時点における高度に応じた適切な大きさに決定される。
【0075】
プロセッサ20は、マーカ管理テーブル31に登録されているマーカのうち、マーカ地理座標36が示す2次元位置(緯度、経度)が、撮影可能範囲80内にあるマーカ(撮影可能マーカ)のマーカデータを選択する。
【0076】
続いて、ステップS122において、プロセッサ20は、カメラ61の視野データに基づいて撮影可能マーカを抽出する(撮影可能マーカの第2選択)。選択される撮影可能マーカは、ステップS121において選択された撮影可能マーカのうち、撮影時点においてカメラ61の視野(撮影可能範囲)81内にあると推測されるマーカである。
【0077】
カメラ61の視野は、カメラ61の姿勢に応じて決まる。カメラ61の姿勢は、飛翔体11の撮影時点の第1姿勢によって決まる。また、カメラ61の視野は、カメラ61の画角に応じて決まる。そこで、実施形態においては、プロセッサ20は、第1姿勢及びカメラ61の画角を視野データ82として、カメラ61の視野(撮影可能範囲)81を決定する。撮影可能範囲81は、第1地理座標から決まる撮影可能範囲80内において、視野データに応じた範囲として決定される。
【0078】
また、プロセッサ20は、撮影可能範囲81を決定するにあたり、マーカ遮蔽物を検出する(ステップS120)。マーカ遮蔽物は、例えば、雲のように、飛翔体11とマーカの間に存在して、飛翔体11からみたときにマーカを遮蔽してしまう物である。プロセッサ20は、カメラ61により撮像した画像において、マーカ遮蔽物となり得る物(例えば、雲)を画像認識により検出する。例えば、図9に示すように、カメラ61により撮像された画像90に雲200が写っている場合、雲200が存在する範囲にはマーカは写らない。そこで、プロセッサ20は、画像90において雲200が存在する範囲を決定する。この場合、プロセッサ20は、図10に示すように、視野データから決定された撮影可能範囲81のうち、雲(マーカ遮蔽物)が存在する範囲を除外した範囲を、最終的な撮影可能範囲81として決定する。なお、マーカ遮蔽物が存在する範囲は、後述のマーカ非出現範囲として扱うこともできる。
【0079】
そして、プロセッサ20は、ステップS121において決定された撮影可能マーカ(撮影可能範囲80内のマーカ)のうち、マーカ地理座標36が示す2次元位置(緯度、経度)が、撮影可能範囲81内にある撮影可能マーカデータを抽出する(ステップS122)。
【0080】
図11は、ステップS122において抽出された撮影可能マーカデータの例を示している。図12では、飛翔体11の撮影可能範囲81内に、第1撮影可能マーカ101、第2撮影可能マーカ102、第3撮影可能マーカ103が存在している。
【0081】
第1撮影可能マーカ101は、単独マーカ方式のマーカである。第1撮影可能マーカ101は、ID35として、“0123”を持つ。第2撮影可能マーカ102は、複合マーカ方式のマーカである。第2撮影可能マーカ102は、ID35が“0235”であるマーカと、ID35が“0236”であるマーカと、ID35が“0237”であるマーカと、から構成されている。第3撮影可能マーカ103は、呼応マーカ方式のマーカである。第3撮影可能マーカ103は、IDとして“0261”を持つ。
【0082】
ステップS131において、プロセッサ20は、カメラ61により撮像された画像90から、マーカの認識処理を行って、撮影可能マーカを検出する。実施形態のプロセッサ20は、撮影可能マーカ101,102,103それぞれを検出する際に、画像90全体を探索するのではなく、撮影可能マーカ101,102,103毎のマーカ探索範囲91,92,93を探索する
【0083】
マーカ探索範囲91,92,93は、画像90において、撮影可能マーカ101,102,130のマーカ地理座標36が示す位置に対応した範囲としてプロセッサ20により決定される。実施形態においては、図12に示すように、マーカ探索範囲は、マーカ地理座標36が示す位置を中心とした矩形範囲として設定される。図12に示す第1マーカ探索範囲91は、第1撮影可能マーカ101のための探索範囲である。第2マーカ探索範囲92は、第2撮影可能マーカ102のための探索範囲である。第3マーカ探索範囲93は、第3撮影可能マーカ103のための探索範囲である。
【0084】
また、プロセッサ20は、マーカ非出現範囲を検出するよう動作し(図2のステップS130)、マーカの非出現範囲は、マーカ探索範囲91,92,93から除外される。マーカ非出現範囲は、図11においてグレーの範囲で示すように、例えば、河川、海など、マーカの設置場所として想定されていないマーカ非設置場所である。マーカ非出現範囲は、雲などのマーカ遮蔽物が存在する範囲を含んでもよい。マーカ非出現範囲は、地図データに基づいて検出されてもよいし、画像90において、河川・海などを画像認識することで検出されてもよい。雲などのマーカ遮蔽物が存在する範囲は、前述のように、雲などの画像認識により検出される。
【0085】
図14に示すように、ステップS131の撮影可能マーカ認識処理では、マーカ種別37に応じた認識方式(認識アルゴリズム)によって、撮影可能マーカを認識する。認識アルゴリズムとしては、例えば、単独マーカ方式用の第1認識アルゴリズム、複合マーカ方式用の第2認識アルゴリズム、呼応マーカ方式用の第3認識アルゴリズムなどが予め用意されている。プロセッサ20は、認識しようとする撮影可能マーカのマーカデータにおけるマーカ種別37を参照し、認識しようとする撮影可能マーカのマーカ種別を識別する。プロセッサ20は、マーカ種別に応じた認識アルゴリズムを選択する(ステップS135)。
【0086】
例えば、プロセッサ20は、第1マーカ探索範囲91内において、第1撮影可能マーカ101のマーカ種別37(単独マーカ方式)に応じた第1認識アルゴリズムにより、パターンデータ38が示すパターン(A10)を認識するよう動作する。プロセッサ20は、画像90における第1マーカ探索範囲91外の範囲では、第1撮影可能マーカ101を検出する動作を行わない。
【0087】
また、プロセッサ20は、第2マーカ探索範囲92内において、第2撮影可能マーカ102のマーカ種別37(複合マーカ方式)に応じた第2認識アルゴリズムにより、パターンデータ38が示すパターン(B11,B12,B13)を認識するよう動作する。プロセッサ20は、画像90における第2マーカ探索範囲92外の範囲では、第2撮影可能マーカ102を検出する動作を行わない。
【0088】
さらに、プロセッサ20は、第3マーカ探索範囲93内において、第3撮影可能マーカ103のマーカ種別37(呼応マーカ方式)に応じた第3認識アルゴリズムにより、パターンデータ38が示すパターン(D12)を認識するよう動作する。プロセッサ20は、画像90における第3マーカ探索範囲93外の範囲では、第3撮影可能マーカ103を検出する動作を行わない。
【0089】
ステップS131において、プロセッサ20は、画像90における各撮影可能マーカ101,102,103の画像座標を求める。プロセッサ20は、各撮影可能マーカ101,102,103のマーカ地理座標36は、撮影可能マーカデータ(図11)から把握できる。したがって、プロセッサ20は、マーカ地理座標と、画像座標と、に基づいて、PnP問題を解く演算を行うことで、カメラ61の第2地理座標及び第2姿勢を算出することができる。
【0090】
なお、カメラ61の第2地理座標及び第2姿勢は、撮影可能マーカ101,102,103のうちのいずれか一つのマーカを認識できれば求めることができる。ただし、複数の撮影可能マーカ101,102,103が認識できている場合には、プロセッサ20は、全ての撮影可能マーカ101,102,103のマーカ地理座標36を用いて第2地理座標及び第2姿勢を演算することで、演算精度が向上する。
【0091】
また、マーカ設置時刻データ39が示す時刻が、撮影時点に近いマーカのマーカ地理座標36は、地理座標の精度が低い。そこで、プロセッサは、複数の撮影可能マーカ101,102,103が認識できた場合であっても、精度の低いマーカ地理座標36は、第2地理座標及び第2姿勢の演算に使用しないか、重みを小さくして使用することで、演算精度の低下を防止できる。
【0092】
実施形態によれば、画像90内においては、選択された撮影可能マーカの認識をすれば足り、マーカ管理テーブル31に登録されたマーカ全てについて画像90内での存在の有無を判断する必要がないため、処理負荷が小さい。また、実施形態においては、各撮影可能マーカが、画像90の全範囲で探索されるのではなく、撮影可能マーカ毎に決定された局所的なマーカ探索範囲91,92,93においてのみ探索されるため、処理負荷が小さい。さらに、各マーカ探索範囲91,92,93においては、対応する撮影可能マーカのマーカ種別37に応じた認識アルゴリズムだけを動作させればよく、他の認識アルゴリズムを動作させる必要がないため、処理負荷が小さい。
【0093】
なお、ステップS131において算出された第2地理座標及び第2姿勢は、飛翔体11が大きく移動しない間は、第1地理座標及び第1姿勢として、繰り返しにより実行されるその後のステップS121の処理に用いられてもよい。
【0094】
ステップ140において、プロセッサ20は、第2カメラ62から得られた観測用画像85に対する処理を行う。観測用画像85に対する処理は、例えば、観測用画像85にCG画像などの他の画像を重畳させるMR画像生成し、出力する処理である。
【0095】
図15は、以上説明した地理座標推定システム10の変形的な第1利用例を示している。図16は、第2利用例を示し、図17は、第3利用例を示している。
【0096】
図15に示す第1利用例は、静的に配置された定点マーカが存在しない、又はマーカ地理座標の信頼性が低下した場合に、臨時のマーカを設置し、利用後はマーカを回収する方式である。
【0097】
第1利用例では、地表面を撮影する飛翔体11(マスター飛翔体;Master-UAV)以外に、マスター飛翔体11から観測できるマーカを搭載した飛翔体(スレーブ飛翔体;Slave-UAV)を用意する。スレーブ飛翔体の上部には、臨時マーカとなるマーカパターンが描かれているか、又は臨時マーカが装着されている。スレーブ飛翔体は、臨時マーカを設置したい場所(地上又はビルの屋上)へ飛行させ、その場所に着地させておく(ステップS201)。臨時マーカが設置される対象地域は、例えば、被災地である。臨時マーカは、例えば、GPSが観測しやすく、かつ、マスター飛翔体から観測されやすい場所である。
【0098】
スレーブ飛翔体は、着地後、静止し、一定時間をかけて、GPS測位を行い、測位結果に含まれる誤差を平均化して、安定した高精度な絶対位置(地理座標)を取得する(ステップS202)。スレーブ飛翔体は、取得した地理座標を含むマーカデータを、マスター飛翔体11が有する地理座標推定装置15へ無線送信する(ステップS203)。送信されるマーカデータには、臨時マーカのマーカID35、臨時マーカのマーカ種別37、臨時マーカのパターンデータ38、臨時マーカのマーカ設置時刻データ39と、が含まれる。地理座標推定装置15は、受信したマーカデータを、マーカ管理テーブル31に追加登録する。
【0099】
マスター飛翔体11は、スレーブ飛翔体に搭載された臨時マーカを検出することで、第2地理座標及び第2姿勢を推定する(ステップS204)。なお、臨時マーカは、単独マーカであってもよいし、複合マーカを構成する一つのマーカであってもよいし、呼応マーカであってもよい。臨時マーカとして複合マーカを利用する場合、複数のスレーブ飛翔体が用いられる。
【0100】
図16に示す第2利用例は、車両上に搭載されたマーカ(Car Roof Top Marker; C-RTM)を利用する方式である。第2利用例は、例えば、定点マーカが存在せず、スレーブ飛翔体も利用可能でないが、自らの絶対位置を確定できる自動車なら配車できる場合に適している。第2利用例においては、屋根にマーカ(C-RTM)が描かれている、又は搭載された自動車が用いられる。
【0101】
第2利用例に用いられる自動車は、車載LiDAR(Light Detection and Ranging、Laser Imaging Detection and Ranging)等で自己位置を高精度に推定する機能を持つ。LiDARは、光により対象までの距離等を測定する。また、この自動車は、走行中の周辺地区の3次元地図や付帯情報を取得することができる。3次元地図等は、自己位置の推定に用いられる。
【0102】
そこで、まず、C-RTM搭載自動車が、飛翔体(UAV)から観測できる位置で停車する。そして、3次元地図とLiDAR観測データとのマッチングで、自車両の位置(地理座標)及び姿勢を高精度に計測する(ステップS301)。
【0103】
C-RTM搭載自動車は、計測した地理座標を含むC-RTMマーカデータを、飛翔体11が有する地理座標推定装置15へ無線送信する(ステップS302)。地理座標推定装置15は、受信したマーカデータを、マーカ管理テーブル31に追加登録する。
【0104】
飛翔体11は、C-RTMを検出することで、飛翔体とC-RTMとの間の相対位置及び姿勢を決定する(ステップS303)。そして、C-RTMのマーカデータに含まれるマーカ地理座標36を用いて、飛翔体11の第2地理座標及び第2姿勢が推定される(ステップS304)。
【0105】
図17に示す第3利用例は、第2利用例とは逆の着想に基づくものである。第3利用例では、飛翔体(UAV)11から、C-RTM搭載自動車へ、絶対位置(地理座標)及び姿勢が伝達される。第3利用例では、C-RTM搭載自動車が、自己完結的に自己位置・姿勢を決定する機能を有していなくても、飛翔体11からのデータにより、自己位置・姿勢を決定することができる。
【0106】
第3利用例において、飛翔体11に搭載された地理座標推定装置15は、既に説明した手法により、自己の絶対位置・姿勢(第2地理座標及び第2姿勢)を推定する(ステップS401)。
【0107】
飛翔体11に搭載された地理座標推定装置15は、C-RTMを識別して、C-RTM搭載自動車と飛翔体11との相対位置・姿勢を推定する(ステップS402)。さらに、地理座標推定装置15は、飛翔体11の絶対位置・姿勢と、ステップS402で推定された相対位置・姿勢とから、C-RTM搭載自動車の絶対位置・姿勢を推定する(ステップS403)。
【0108】
C-RTM搭載自動車の絶対位置・姿勢は、飛翔体11からC-RTM搭載自動車へ伝送される。C-RTM搭載自動車は、走行中である場合には、推定時刻との差を考慮し、自動車に搭載された加速度センサなどの情報を組み合わせて、受信した絶対位置・姿勢を補正する。これにより、C-RTM搭載自動車は、絶対位置・姿勢を得ることができる。
【0109】
<付記>
【0110】
本発明は、上記実施形態に限定されるものではなく、様々な変形が可能である。
【符号の説明】
【0111】
10 :地理座標推定システム
11 :飛翔体
15 :地理座標推定装置
20 :プロセッサ
30 :メモリ
31 :マーカ管理テーブル
35 :マーカID
36 :マーカ地理座標データ
36 :マーカ地理座標
37 :マーカ種別
37 :マーカ種別データ
38 :パターンデータ
39 :マーカ設置時刻データ
50 :コンピュータプログラム
61 :第1カメラ
62 :第2カメラ
71 :NSS受信機
72 :IMU
73 :高度計
74 :無線通信機
80 :撮影可能範囲
81 :撮影可能範囲
85 :観測用画像
90 :画像
91 :第1マーカ探索範囲
92 :第2マーカ探索範囲
93 :第3マーカ探索範囲
101 :第1撮影可能マーカ
102 :第2撮影可能マーカ
103 :第3撮影可能マーカ
104 :マーカ
105 :マーカ
106 :マーカ
130 :撮影可能マーカ
200 :雲
A100 :マーカ
B100 :複合マーカ
B101 :マーカ
B102 :マーカ
B103 :マーカ
B104 :マーカ
B105 :マーカ
B106 :マーカ
C :中心
D101 :マーカ
D102 :マーカ
D103 :マーカ
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17