(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-02-07
(45)【発行日】2022-02-16
(54)【発明の名称】移動体制御システム及びプログラム
(51)【国際特許分類】
G05D 1/10 20060101AFI20220208BHJP
G01C 21/20 20060101ALI20220208BHJP
H04Q 9/00 20060101ALI20220208BHJP
B64C 13/18 20060101ALI20220208BHJP
B64D 47/08 20060101ALI20220208BHJP
B64C 39/02 20060101ALI20220208BHJP
【FI】
G05D1/10
G01C21/20
H04Q9/00 301B
B64C13/18 Z
B64D47/08
B64C39/02
(21)【出願番号】P 2017145742
(22)【出願日】2017-07-27
【審査請求日】2020-06-19
【前置審査】
(73)【特許権者】
【識別番号】597151563
【氏名又は名称】株式会社ゼンリン
(72)【発明者】
【氏名】大原 浩幸
(72)【発明者】
【氏名】秋元 大地
【審査官】堀内 亮吾
(56)【参考文献】
【文献】特開2006-343881(JP,A)
【文献】国際公開第2016/189732(WO,A1)
【文献】特開2009-271650(JP,A)
【文献】特開2007-178223(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05D 1/00- 1/12
G01C 21/20
H04Q 9/00
B64C 13/18
B64D 47/08
B64C 39/02
(57)【特許請求の範囲】
【請求項1】
外部環境に関する情報を検出する検出部を備えた移動体を制御する移動体制御システムであって、
前記検出部が前記外部環境に存在する地物を検出できる範囲である検出範囲を示す範囲特定情報を取得し、前記移動体の位置特定に利用する特徴情報を生成する地図上の範囲を、前記範囲特定情報に基づいて決定する範囲決定部と、
前記範囲決定部において決定された地図上の範囲に含まれる地物に関する地物データを取得し、前記地物データに基づいて、前記特徴情報に含む前記地物に関する特徴を前記地物データの中から選択するデータ生成部と、
前記特徴情報と前記外部環境に関する情報とをマッチングした結果に基づいて、前記移動体の位置を特定する制御部とを備え、
前記検出範囲は、前記検出部の画角、前記検出部の向き、前記検出部と地物までの距離、及び前記移動体の高度の少なくともいずれか一つにより生じる範囲であ
り、
前記データ生成部は、前記移動体の移動速度が速い場合、前記特徴情報に含まれる前記地物に関する特徴を減らす処理を行う、移動体制御システム。
【請求項2】
前記データ生成部は、
前記移動体の処理性能、高度
、前記検出部の性能、前記移動体の周辺状況の少なくともいずれか一つに基づいて処理を行う、請求項1に記載の移動体制御システム。
【請求項3】
前記特徴情報に含む前記地物に関する特徴は、
前記地物における座標点、形状又は色彩を含む
請求項1乃至3の何れか一項に記載の移動体制御システム。
【請求項4】
地物に関連する情報である地物データを、外部環境に関する情報を検出する検出部を備えた移動体の制御を行うコンピュータに参照させる機能を実行するプログラムであって、
前記コンピュータが、
前記検出部が前記外部環境に存在する地物を検出できる範囲である検出範囲を示す範囲特定情報を取得し、前記移動体の位置特定に利用する特徴情報を生成する地図上の範囲を、前記範囲特定情報に基づいて決定する機能と、
前記地図上の範囲に含まれる地物に関する地物データを取得し、前記地物データに基づいて、前記特徴情報に含む前記地物に関する特徴を前記地物データの中から選択する機能と、
前記特徴情報と前記外部環境に関する情報とをマッチングした結果に基づいて、前記移動体の位置を特定する機能と、
前記特徴情報と前記検出部で検出した外部環境に関する情報をマッチングさせることにより、前記移動体の位置を特定する機能とを備え、
前記検出範囲は、前記検出部の画角、前記検出部の向き、前記検出部と地物までの距離、及び前記移動体の高度の少なくともいずれか一つにより生じる範囲であ
り、
前記特徴情報に含む前記地物に関する特徴の選択は、前記移動体の移動速度が速い場合、前記特徴情報に含まれる前記地物に関する特徴を減らすことにより行われる、プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、移動体制御システム及び移動体制御方法に関する。
【背景技術】
【0002】
近年、ドローンや自動車等の移動体の自律走行を制御するために、地物情報とカメラ映像を対比(マッチング)するシステムが開発されている(例えば特許文献1)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
本発明は、移動体の移動に好適な移動体制御システムの提供を行うことを目的とする。
【課題を解決するための手段】
【0005】
本発明の一実施形態による移動体制御システムは、外部環境に関する情報を検出する検出部を備えた移動体を制御する移動体制御システムであって、前記検出部が前記外部環境に存在する地物を検出できる範囲である検出範囲を示す範囲特定情報を取得し、前記移動体の位置特定に利用する特徴情報を生成する地図上の範囲を、前記範囲特定情報に基づいて決定する範囲決定部と、前記範囲決定部において決定された地図上の範囲に含まれる地物に関する地物データを取得し、前記地物データに基づいて、前記特徴情報に含む前記地物に関する特徴を前記地物データの中から選択するデータ生成部と、前記特徴情報と前記外部環境に関する情報とをマッチングした結果に基づいて、前記移動体の位置を特定する制御部とを備え、前記検出範囲は、前記検出部の画角、前記検出部の向き、前記検出部と地物までの距離、及び前記移動体の高度の少なくともいずれか一つにより生じる範囲であり、前記データ生成部は、前記移動体の移動速度が速い場合、前記特徴情報に含まれる前記地物に関する特徴を減らす処理を行う。
【図面の簡単な説明】
【0006】
【
図1】移動体制御システムの構成の一例を示す構成図である。
【
図2】本発明の一実施形態におけるドローンの機能構成の一例を示す機能ブロック図である。
【
図3】本発明の一実施形態における特徴情報の一例を示す模式図である。
【
図4】本発明の一実施形態におけるドローンの処理フローの一例を示すフローチャートである。
【
図5】本発明の一実施形態におけるサーバの機能構成の一例を示す機能ブロック図である。
【
図6】ドローンが搭載するセンサと、ドローンが情報を取得可能な範囲との関係を示す模式図である。
【
図7】ドローンの高度と、ドローンが情報を取得可能な範囲との関係を示す模式図である。
【
図8】ドローンのセンサの方向と、ドローンが情報を取得可能な範囲との関係を示す模式図である。
【
図9】ドローンの高度と、ドローンが情報を取得可能な間隔との関係を示す模式図である。
【
図10】ドローンが搭載するセンサと、ドローンが情報を取得可能な間隔との関係を示す模式図である。
【
図11】本発明の一実施形態におけるサーバの処理フローの一例を示すフローチャートである。
【
図12】本発明の実施形態における移動体制御システムのハードウェア構成の一例を示す図である。
【
図13】本発明の一実施形態における移動体制御システムの処理シーケンスの一例を示すシーケンス図である。
【発明を実施するための形態】
【0007】
[実施形態]
以下、本発明の実施の形態の1つについて詳細に説明する。なお、以下の実施の形態は、本発明を説明するための例示であり、本発明をその実施の形態のみに限定する趣旨ではない。また、本発明は、その要旨を逸脱しない限り、さまざまな変形が可能である。さらに、当業者であれば、以下に述べる各要素を均等なものに置換した実施の形態を採用することが可能であり、かかる実施の形態も本発明の範囲に含まれる。また、以下においては、理解を容易にするべく、情報処理装置を利用して本発明が実現される実施の形態を例にとって説明するが、上述の如く、本発明はそれに限定されない。
【0008】
<1.システムの概要>
図1は、本実施形態に係る移動体制御システム1の構成の一例を示している。
図1に示すように、移動体制御システム1は、サーバ10と移動体(ドローン)20とがネットワークNを介して接続されている。なお、移動体制御システム1は、サーバ10の機能を移動体(ドローン)に組み込むよう構成してもよい。
【0009】
ネットワークNは、無線ネットワークにより構成される。ネットワークNの一例としては、携帯電話網や、PHS(Personal Handy-phone System)網、無線LAN(Local Area Network)、3G(3rd Generation)、LTE(Long Term Evolution)、4G(4th Generation )、WiMax(登録商標)、赤外線通信、Bluetooth(登録商標)、IEEE1394等に準拠したネットワーク等が挙げられる。
【0010】
この移動体制御システム1では、サーバ10がドローン20に対して、当該ドローン20の現在位置を特定可能な情報(以下「特徴情報」という。)を提供する。ドローン20においては提供された特徴情報を用いて、自身が地図上のどの位置を飛行中であるかを特定することができる。
【0011】
なお、本実施形態では移動体の一例として自律飛行を行うドローンを例に説明する。しかし、移動体は自律移動を行うものに限定されず、人によって操作されるものでもよい。この場合、移動体制御システム1は、人の操作を支援することができる。また、移動体は空中を移動するものに限定されず、地上や水中、宇宙、地中等を移動するものでもよい。
【0012】
<2.機能構成>
<2-1.ドローン20>
図2は、ドローン20の機能構成の一例を示す機能ブロック図である。
図2に示すように、ドローン20は、例えば検出部201と、飛行制御部202と、データ通信部203と、位置特定部204と、記憶部230とを有している。
【0013】
記憶部230には、ドローン20が自律飛行を行う際に用いる地物データと飛行経路情報とが記憶されている。地物データは、地物に関連する1つ以上の座標点の情報(以下「座標点情報」ともいう。)である。座標点情報とは、ある地物に含まれる任意の地点の位置情報(絶対座標、相対座標、画像内の画素位置等)と、例えば地物の形状(例えば特徴点)、色彩等とが対応付けられた情報である。より具体的には、地物データは、地物の輪郭を構成する点列ごとに3次元や2次元の座標が対応付けられたデータである。地物データの一例として、地図データや航空写真等が挙げられる。
【0014】
飛行経路情報は、出発地と、目的地と、出発地から目的地までの経路である経路情報とが対応付けられた情報である。なお、飛行経路情報は、後述する経路探索部101によって設定されることが好ましい
【0015】
検出部201は、所定の検出範囲からドローン20の飛行状態や外部の環境に関する情報を取得する。本実施形態では、検出部201は、飛行状態検出機器と、外部環境検出機器とから構成される。飛行状態検出機器は、例えば測距センサや加速度センサ、ジャイロセンサ、サーモセンサ等の各種センサや、高度計、速度計等の各種計測機器等のドローン20の飛行状態に関する情報を検出する検出機器である。他方で、外部環境検出機器は、カメラ、赤外線カメラ、レンジセンサ、測距センサ、Lidar等のドローン20の外部環境に関する情報を検出する検出機器である。
【0016】
なお、検出部201の構成はこれに限定されず、少なくとも外部環境検出機器から構成されていればよい。また、検出部201の検出範囲は検出部201の性能や、ドローン20の高度によって左右される。この点については、
図6乃至
図10を用いて後述する。
【0017】
位置特定部204は、サーバ10から受信した特徴情報を用いて、ドローン20の現在位置の特定を行う。特徴情報は、サーバ10が推定する位置(推定位置)にドローン20が位置している場合に、想定される検出部201の検出範囲と、当該検出範囲に含まれる座標点情報とを対応付けたデータである。位置特定部204は、受信した特徴情報と、センサが取得した情報とをマッチングさせることで現在位置の特定を行う。
【0018】
図3を用いて位置特定部204の処理についてより詳細に説明する。なお、
図3(A)(D)は、ドローン20と地物Bとの位置関係を示している。
図3(A)(D)においては、ドローン20は紙面の法線方向に沿って飛行しているとし、また破線で示す領域Aが検出範囲とする。
図3(B)はサーバ10から受信した特徴情報の一例であり、点Pは地物Bの座標点情報を示している。さらに、
図3(C)(E)は、検出部201が検出範囲のどの位置において、地物Bを検出したかを模式的に示している。なお、
図3(B)(C)(E)においては矢印の方向がドローン20の飛行方向とする。
【0019】
ドローン20と地物Bが
図3(A)に示す位置関係にいる場合、検出部201は、
図3(C)に示す位置に地物Bを検出することができる。このとき、位置特定部204は、サーバ10から送られた特徴情報に含まれる座標点情報P(
図3(B))と、検出した地物Bの情報(
図3(C))とをマッチングすることにより、ドローン20の現在位置が、推定位置と一致していると特定することができる。
【0020】
他方で、ドローン20が地物Bに対して
図3(D)に示す位置を飛行している場合、検出部201では、
図3(E)に示す位置に地物Bを検出することになる。この場合は、位置特定部204は、サーバ10から送られた特徴情報に含まれる座標点情報P(
図3(B))と、検出した地物Bの情報(
図3(E))とをマッチングする。このマッチング結果により、ドローン20の現在位置が、推定位置(
図3(A))からどの程度ずれた位置にあるかを算出することで、現在位置(
図3(D))を特定することができる。なお、この場合には、位置特定部204は、後述する飛行制御部202に通知を行い、地物Bが
図3(C)の位置に検出されるよう、ドローン20の位置を制御させることも可能である。
【0021】
このように、本実施形態に係る位置特定部204は、現在位置の特定を行う際にサーバ10において生成された特徴情報に含まれる座標点情報とのマッチングを行う。これにより、ドローン20では地物データからの特徴抽出処理を行う必要がないため、位置特定に関する処理負荷を低減させることができる。
【0022】
飛行制御部202は、位置特定部204が特定した現在位置と検出部201が取得した情報と記憶部230に記憶された飛行経路情報とに基づいて、ドローン20が定められた飛行経路に沿って飛行するように飛行状態を制御する。なお、
図2では特に示していないが、実際には、ドローン20は、放射状に配置された複数のロータ(回転翼)と、それらの回転翼を回転させるモータ等、一般的に自律飛行を行うドローンが備えるべき機能を備えており、飛行制御部202は、例えば、各回転翼の回転数を制御することにより、ドローン20の移動や姿勢を調節する等、これらの各部の動作を制御することにより、飛行を制御する。
【0023】
データ通信部203は、サーバ10との間で、所定の規格に準拠して無線通信を行う。データ通信部203は、後述する範囲特定情報をサーバ10に送信したり、特徴情報をサーバ10から受信したりすることができる。
【0024】
図4を参照してドローン20における飛行制御処理のフローについて説明する。ドローン20では、飛行制御を行う場合、あらかじめ飛行経路情報が設定され、記憶部230に記憶される。飛行経路情報は後述する経路探索部101によって設定されることが好ましいが、これに限定されず、ドローン20側において、目的地までの経路を探索し、設定する構成でもよい。飛行を開始すると、ドローン20のデータ通信部203は、サーバ10から送信される特徴情報を受信する(S11)。また、検出部から地物の座標点や形状などの特徴点を抽出する(S12)。なお、S12において抽出する情報は特徴点に限らず、地物の色彩であってもよい。
【0025】
位置特定部204が、受信した特徴情報に含まれる座標点情報と、検出部201が検出した地物の特徴点とをマッチングさせ(S13、
図3参照)、現在位置の特定を行う(S14)と、飛行制御部202が特定された現在位置が目的地に一致するまで(S15:YES)、繰り返しS12からの処理を行う。
【0026】
<2-2.サーバ10>
図5は、サーバ10の機能構成の一例を示す機能ブロック図である。
図5に示すようにサーバ10は、例えば記憶部130と、経路探索部101と、外部データ取得部102と、特定用データ生成部103と、データ通信部104とを有している。
【0027】
記憶部130には、ドローン20と同様に地物データと飛行経路情報とが記憶されている。
【0028】
経路探索部101は、出発地から目的地までの経路の情報である飛行経路情報を探索して記憶部130に出力する。このとき経路探索部101はドローン20の記憶部230に対しても探索した経路の情報(飛行経路情報)を出力し設定することができる。経路の探索に関し、経路探索部101は、例えば、ユーザや管理者により入力された経路探索条件に従って、記憶部130に記憶された地物データ、またはネットワークNを介して外部装置から取得した地図データ等を参照し、経路探索を実行することにより、経路の情報を取得する。
【0029】
さらに、図示しない位置推定部は、探索した飛行経路情報に基づいてドローン20の現在位置を推定することができる。例えば経路探索部101は、出発地点の位置情報と経過時間とに基づいて、位置の推定を行うことができる。また、ドローン20から位置特定部204が特定した位置情報を受信し、当該位置情報に基づいて位置の推定をしてもよい。さらにドローン20がGPS等を備える場合には、当該GPSからドローン20の位置情報を取得して、位置の推定を行ってもよい。
【0030】
外部データ取得部102は、ドローン20の検出部201としてのカメラにおいて撮影された撮影画像や、外部サーバ等において検出された天候や気温、交通状況等の外部状況に関する情報を取得する。
【0031】
特定用データ生成部103は、ドローン20に提供するために特徴情報を生成する。特定用データ生成部103は、切り出し範囲決定処理と、データ生成処理との2つの処理を実行する。
【0032】
・切り出し範囲決定処理
切り出し範囲決定処理は、範囲特定情報に基づいて、ドローン20の検出範囲を推定し、特徴情報を生成する地図上の範囲(切り出し範囲)を決定する。範囲特定情報は、ドローン20が搭載するセンサやカメラ(検出部201)の性能や、飛行位置(高度)、センサ方向、センサと地物までの距離等の情報である。
【0033】
図6乃至
図8を用いて、切り出し範囲決定処理の有用性について説明する。なお、
図6乃至
図8においては、ドローン20は、検出部201としてカメラを備えている構成を例に説明する。
【0034】
図6はカメラ(検出部201)の性能と、撮影可能な範囲(検出範囲)との関係を示す模式図である。
図6(A)はドローン20が搭載するカメラの画角が狭い場合を示し、
図6(B)は広い場合を示している。なお、
図6(A)(B)においてその他の条件は同一である。
図6(A)(B)に示すようにカメラの画角が広い方が狭い場合よりもより広範囲の画像を撮影可能になる(すなわち検出範囲が広くなる)。
【0035】
図7及び
図8は、カメラ(検出部201)と地物までの距離と、撮影可能な範囲(検出範囲)との関係を示す模式図である。
図7はカメラが下向きに取り付けられた場合であり、
図7(A)はドローンの飛行高度が低い場合を示し、
図7(B)は高度が高い場合を示している。他方で、
図8はカメラが横向きに取り付けられた場合であり、カメラの向きに沿った方向において、
図8(A)はドローン20と地物とが近い場合を示し、
図8(B)は遠い場合を示している。
図7、
図8に示すように、例えばドローン20が備えるカメラの画角が同一である場合、カメラが撮影する対象物までの距離が遠い(例えば高度が高い)ほど、距離が近い場合(例えば高度が低い場合)に比べ、より広範囲から画像を撮影可能になる(すなわち検出範囲が広くなる)。
【0036】
ドローン20の検出範囲が広く、より広範囲から情報を取得可能な状態にある場合には、特徴情報をより広範囲から生成することでマッチング精度を向上させることができる。他方で、ドローン20の検出範囲が狭く、狭い範囲からしか情報を取得することができない場合について検討する。この場合、仮に広範囲から特徴情報を生成したとしても、当該特徴情報は、ドローン20においてマッチングに用いることができない余剰な座標点情報を含むことになる。そうすると、ドローン20においてマッチング処理を行う際に、本来、位置特定には不要な座標点情報についてもマッチング対象としてしまうこととなり、処理負荷が増加してしまう。
【0037】
本実施形態に係る特定用データ生成部103は、ドローン20において情報を取得可能な範囲に基づいて切り出し範囲を決定することで、過不足のない情報量を含んだ位置特定用のデータを生成することができる。これによってドローン20は、マッチング処理において位置特定の精度の向上に不必要な処理によって、処理負荷が増加してしまうことを防ぐことができる。すなわち、ドローン20の状態に応じた適切な処理負荷、適切な精度で位置特定を行うことができる。
【0038】
なお、特定用データ生成部103は、ドローン20が情報を取得可能な範囲にバッファを持たせた範囲を切り出し範囲としてもよい。この場合、ドローン20の進行方向のバッファをより大きくすることが好ましい。また、特定用データ生成部103は、範囲特定情報をドローン20から取得してもよいし、範囲特定情報として検出部201の性能等の飛行状態によって変化しない情報のみを用いる場合には、あらかじめ記憶しておいてもよい。
【0039】
・データ生成処理
特定用データ生成部103は、切り出し範囲決定処理において切り出した範囲に含まれる地物データから、ドローン20に提供する特徴情報を生成する。このとき特定用データ生成部103は、ドローンの飛行状態(飛行速度や飛行位置、高度等)や性能(センサの性能、処理速度)、周辺状況(輝度、交通情報等の情報の捉えやすさ)等を含むドローン20の状態に応じて特徴情報に含む座標点情報を選択する。
【0040】
図9乃至
図10を用いてこれらの情報に基づいて座標点情報を選択することの意義について説明する。なお、
図9乃至
図10においても、ドローン20は、検出部201としてカメラを備えている構成を例に説明する。
【0041】
図9はドローン20が備えるカメラの性能(解像度等)は同一で、飛行高度が異なる場合に、所定の検出範囲から取得可能な情報量の差を示す図である。
図9(A)はドローンの飛行高度が低い場合を示し、
図9(B)は高度が高い場合を示している。カメラの解像度が同じ場合で、高度が低い場合には、高度が高い場合に比べ、1画素あたりで撮影される範囲が狭くなる。この結果、
図9(A)(B)に示すように高度が低い場合の方が高い場合に比べ、所定の検出範囲からより多くの情報を取得できることが分かる。
【0042】
一方で
図10はドローン20の高度は同一で解像度が異なる場合において、所定の検出範囲から取得可能な情報量の差を示す図である。
図10(A)はドローン20が搭載するカメラの解像度が低い場合を示し、
図10(B)は高い場合を示している。
図9の場合と同様に、カメラの解像度が高い場合には、低い場合に比べ、1画素あたりで撮影される範囲が狭くなる。この結果、
図10(A)(B)に示すように、性能が高い場合の方が狭い場合に比べ、所定の検出範囲からより多くの情報を取得できることが分かる。
【0043】
ドローン20が、所定の検出範囲からより多くの情報を取得可能な場合には、特定用データ生成部103は、特徴情報に含ませる座標点情報をより多く選択することでマッチング精度を向上させることができる。
【0044】
他方で、ドローン20が所定の検出範囲からあまり多くの情報を取得できない場合には、特定用データ生成部103は、特徴情報に含める座標点情報の数を減らすことで、ドローン20におけるマッチング処理において、位置特定の精度向上に結び付かない処理の負荷を低減させることができる。
【0045】
さらに特定用データ生成部103は、ドローン20の状態に応じて、ある地物の座標点情報の数を増やすだけでなく、座標点情報を抽出する対象とする地物を選択することが好ましい。例えば解像度が高いカメラを搭載したドローン20の場合には、より解像度の低いカメラを搭載している場合よりも、標識、建物の模様等より小さな地物とすることが好ましい。他方でより解像度の低いカメラを搭載している場合には、座標点情報を抽出する対象とする地物を、公園や河川、道路形状といった情報の変化が少なく大きな形状の地物とするこが好ましい。
【0046】
また、図には示さないが、同様に、飛行速度が速い場合、短い処理時間で位置特定を行う必要がある。したがって、ドローン20が検出部201から取得した情報とのマッチング処理に割り当てられる時間が短くなってしまう。このため、飛行速度が速い場合には、特徴情報に含まれる座標点情報の数を減らすことが好ましい。
【0047】
さらに特定用データ生成部103は座標点情報を抽出する対象物を外部データ取得部102が取得した情報(例えば輝度や交通量)に基づいて選択することが好ましい。例えば、建物から座標点情報を生成する場合、壁面がガラス張りの場合、太陽光の反射によって抽出される情報の変化が大きく、検出部201が情報を取得することが困難である。したがって、このような場合には、コンクリートや木造の建物が特徴情報を抽出する対象として選択されることが好ましい。もっとも天気が悪い日や夜間などにはこのような問題は生じないため、ガラス張りの建物から座標点情報を抽出することも可能である。
【0048】
次に、道路を対象物とする場合、走行する自動車の量が多い際には、例えば道路の白線等、自動車によって隠されてしまう地物については、検出部201が情報を取得することが困難である。したがってこのような場合には、特定用データ生成部103は、道路標識や道路形状といった自動車によって遮蔽されない地物を、座標点情報を抽出する対象物として選択することが好ましい。なお、走行する自動車の量が少ない場合には、道路の白線等から座標点情報を抽出してもよい。
【0049】
データ通信部104は、ドローン20との間で、所定の規格に準拠して無線通信を行う。データ通信部104は、範囲特定情報をドローン20から受信したり、特徴情報をドローン20に送信したりすることができる。
【0050】
次に、
図11を参照して本実施形態にかかるサーバ10の処理フローについて説明する。サーバ10においては、まずユーザから出発地と目的地の設定がされる(S21)と、経路探索部101が飛行経路情報の探索を行う(S22)。
【0051】
次に、サーバ10は、特徴情報を生成する。このとき、まず特定用データ生成部103は、範囲特定情報を取得する(S23)。範囲特定情報は、ドローン20から取得してもよいし、あらかじめ記憶部130に記憶しておいてもよい。また、このとき外部データ取得部102が外部データを併せて取得する(S24)。特定用データ生成部103は、取得した範囲特定用データと飛行経路情報とに基づいて、切り出し範囲を決定する(S25)。
【0052】
さらに特定用データ生成部103は、記憶部130を参照して、切り出した範囲について、地物データを取得する(S26)。そして、外部データ取得部102が取得した外部の情報と、ドローン20から取得したドローン20の飛行状態や性能等の情報に基づいて、座標点情報を選択する。サーバ10は選択した座標点情報から特徴情報を生成し(S27)、ドローン20に送信する(S28)。
【0053】
なおサーバ10は、S23乃至S28の処理を、ドローン20の飛行中、定期的に行う構成でもよいが、ドローン20から要求があった際に行う構成でもよい。
【0054】
このように、本実施形態に係るサーバ10は、特徴情報を生成して、ドローン20に送信することができる。これによって、ドローン20においては地物データから、特徴点等の情報を抽出する処理を行う必要がなくなるため、マッチング処理に係る処理負荷を低減することができる。さらに、サーバ10側でドローン20の飛行状態や、検出部201の性能等に基づいて、特徴情報に含める座標点情報を選択することにより、ドローン20のマッチング処理において、位置特定の精度の向上には不必要な処理によって、処理負荷が増加してしまうことを防ぐことができる。この結果、ドローン20においては、電力を節約することができ、飛行可能時間を延長させることができる。
【0055】
<3.ハードウェア構成>
以下、
図12を参照しながら、上述してきた移動体制御システム1におけるサーバ10をコンピュータ800により実現する場合のハードウェア構成の一例を説明する。なお、それぞれの装置の機能は、複数台の装置に分けて実現することもできる。
【0056】
図12に示すように、コンピュータ800は、プロセッサ801、メモリ803、記憶装置805、入力I/F部807、データI/F部809、通信I/F部811、及び表示装置813を含む。
【0057】
プロセッサ801は、メモリ803に記憶されているプログラムを実行することによりコンピュータ800における様々な処理を制御する。例えば、サーバ10の経路探索部101や外部データ取得部102、特定用データ生成部103、データ通信部203などは、メモリ803に一時記憶された上で、主にプロセッサ801上で動作するプログラムとして実現可能である。
【0058】
メモリ803は、例えばRAM(Random Access Memory)等の記憶媒体である。メモリ803は、プロセッサ801によって実行されるプログラムのプログラムコードや、プログラムの実行時に必要となるデータを一時的に記憶する。
【0059】
記憶装置805は、例えばハードディスクドライブ(HDD)やフラッシュメモリ等の不揮発性の記憶媒体である。記憶装置805は、オペレーティングシステムや、上記各構成を実現するための各種プログラムを記憶する。この他、記憶装置805は、地物データや飛行経路情報を記憶することも可能である。このようなプログラムやデータは、必要に応じてメモリ803にロードされることにより、プロセッサ801から参照される。
【0060】
入力I/F部807は、ユーザからの入力を受け付けるためのデバイスである。入力I/F部807の具体例としては、キーボードやマウス、タッチパネル、各種センサ、ウェアラブル・デバイス等が挙げられる。入力I/F部807は、例えばUSB(Universal Serial Bus)等のインタフェースを介してコンピュータ800に接続されても良い。
【0061】
データI/F部809は、コンピュータ800の外部からデータを入力するためのデバイスである。データI/F部809の具体例としては、各種記憶媒体に記憶されているデータを読み取るためのドライブ装置等がある。データI/F部809は、コンピュータ800の外部に設けられることも考えられる。その場合、データI/F部809は、例えばUSB等のインタフェースを介してコンピュータ800へと接続される。
【0062】
通信I/F部811は、コンピュータ800の外部の装置と有線又は無線により、インターネットNを介したデータ通信を行うためのデバイスである。通信I/F部811は、コンピュータ800の外部に設けられることも考えられる。その場合、通信I/F部811は、例えばUSB等のインタフェースを介してコンピュータ800に接続される。
【0063】
表示装置813は、各種情報を表示するためのデバイスである。表示装置813の具体例としては、例えば液晶ディスプレイや有機EL(Electro-Luminescence)ディスプレイ、ウェアラブル・デバイスのディスプレイ等が挙げられる。表示装置813は、コンピュータ800の外部に設けられても良い。その場合、表示装置813は、例えばディスプレイケーブル等を介してコンピュータ800に接続される。また、入力I/F部807としてタッチパネルが採用される場合には、表示装置813は、入力I/F部807と一体化して構成することが可能である。
【0064】
[その他の実施形態]
以上説明した各実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更/改良され得るととともに、本発明にはその等価物も含まれる。また、各実施形態は例示であり、異なる実施形態で示した構成の部分的な置換または組み合わせが可能であることは言うまでもなく、これらも本発明の特徴を含む限り本発明の範囲に包含される。
【0065】
例えば、既述の実施形態では、ドローン20にも飛行経路情報及び地物データが記憶される構成について説明した。しかしこれに限定されず、ドローン20にはこれらのデータ(またはこれらの何れかのデータ)は記憶されない構成でもよい。この場合、ドローン20は、自己位置を把握することができないため、サーバ10がドローン20を目的地まで誘導する必要がある。例えばこの場合、サーバ10は、ドローン20の推定位置よりも進行方向に進んだ位置を基準として特徴情報を生成する。
【0066】
この処理について
図3を再度参照してより詳細に説明する。例えば、実際にはドローン20は
図3(D)に示す位置にいるとする。このとき、サーバ10においては、
図3(D)よりもより進んだ
図3(A)の位置にドローン20が移動した場合の検出範囲について、特徴情報を生成する(
図3(B))。このとき、ドローン20における実際の地物Bの検出位置は
図3(E)である。したがって、ドローン20は、
図3(C)に示す位置に地物Bを検出できるように、移動を行う。
【0067】
このように、ドローン20は、検出範囲において検出した情報が、特徴情報とマッチするように、特徴情報を順次辿っていくことで、目的地までの飛行制御を行うことができる。
【0068】
次に、既述の実施形態では、ドローン20が飛行経路に沿って飛行している場合の例について説明したがこれに限定されない。移動体制御システムは、飛行経路を外れてしまったドローン20を、適切な飛行経路に復帰させることも可能である。
図13を用いてこの場合のドローン20の処理フローを及びサーバ10の処理シーケンスについて説明する。
【0069】
図13のシーケンス図は、
図4のS13及びS14においてドローン20がマッチングに失敗し現在位置を特定できなかった場合の処理シーケンスを示している。
図13におけるS31は、
図4におけるS13及びS14に対応している。
【0070】
ドローン20は、マッチングが失敗した場合には、はサーバ10にマッチングに失敗したこと、及び検出部201が取得した情報を送信する(S32)。
【0071】
サーバ10においては、マッチングに失敗した旨の通知をドローン20から取得すると、マッチングに失敗した周辺(すなわち、前回特徴情報を生成した際に地物データを切り出した範囲の周辺)の地物データを記憶部130から取得する(S41)。
【0072】
特定用データ生成部103は、取得した範囲の地物データから再度特徴情報を生成する(S42)。さらに特定用データ生成部103は、受信した検出部201が取得した情報と、特徴情報のマッチングを行い、ドローン20の現在位置を特定する(S43)。なお、S42、及びS43の処理はドローン20の現在位置を特定できるまで繰り返し実行される。
【0073】
サーバ10では、ドローン20の現在位置を特定すると、特定した位置の位置情報をドローン20に送信する(S44)。
【0074】
ドローン20においては、位置情報をサーバ10から取得する(S33)と、取得した位置情報に沿って自己位置の補正を行う(S34)。
【0075】
なお、
図13のS43の処理は、ドローン20側で行ってもよい。同様に
図4のマッチング処理(S13)及び位置特定処理(S14)は、サーバ10側で行う構成でもよい。この場合には、ドローン20はS12において検出部201が抽出した特徴点をサーバ10へ送信する。サーバ10では、受信した特徴点と記憶された地物データとのマッチングを行い、ドローン20の位置を特定し、当該特定した位置の情報をドローン20に送信することになる。
【0076】
また、既述の実施形態においては、ドローン20の高度や速度等の情報は高度計や速度計といった計測機器によって計測する例について説明したがこれに限定されない。例えばドローン20においては、カメラによって撮影した映像をサーバ10に送信し、サーバ10側で取得した映像に基づいて高度や速度を算出する構成でもよい。
【0077】
また、記述の実施形態においては、検出部201の外部環境検出機器としてカメラを採用した場合について説明したが、これにかぎらず、Lidarなど地物の形状(点群情報)を取得する構成でもよい。この場合、特徴情報としては地物の形状に関する情報を採用することとなり、当該特徴情報と点群情報の特徴点とをマッチングさせることにより、ドローン20の位置を特定することとなる。
【0078】
なお、上述した移動体制御システム1におけるドローン20の飛行制御処理は、ドローン20が屋外を飛行中に適用されることに限定されず、屋内(工場や倉庫等)を飛行中のドローン20に適用することも可能である。
【0079】
・本実態形態と特許文献1との対比
上記の特許文献1に記載された発明は、画像処理技術を用いて、移動体の移動経路について予め特徴点の三次元座標を精度良く計測しておき、その三次元座標と、現実の移動体の移動時に撮影されるカメラ映像を対比することにより、移動体のカメラ位置を示す三次元座標をGPSシステムより高精度に求め得ることができ、誤差数cmの範囲で移動体の現在位置を示すことができるナビゲーション装置に関するものである。
【0080】
しかしながら、特許文献1に記載されたような従来の技術では、生成される特徴点の情報は画一的なものであり、移動体に搭載されたカメラの性能等にあわせてその精度を制御することができないという課題が存在する。また、移動体の自律走行の制御には、現在位置を高精度で特定する必要がある反面、移動体における処理負荷を低減させることが重要であり、さらなる改善の余地がある。当該課題を解決するために、上記で説明した実施形態の構成を提供する。それにより、移動体に搭載された検出部の性能や、移動体の飛行(または走行)状態に応じて、自己位置を特定するために過不足のない適切な特徴情報を生成することができる、という効果を奏する。
【0081】
以上、実施形態の全部又は一部に記載された態様は、移動体で行われる、当該移動体の位置特定処理の負荷を低減するためのシステム及びそれに利用可能なデータのデータ構造の提供、処理速度の向上、処理精度の向上、使い勝手の向上、データを利用した機能の向上又は適切な機能の提供その他の機能向上、データ及び/又はプログラムの容量の削減、装置及び/又はシステムの提供、並びにデータ、プログラム、装置又はシステムの製作・製造コストの削減、製作・製造の容易化、製作・製造時間の短縮等のデータ、プログラム、記録媒体、装置及び/又はシステムの製作・製造の適切かのいずれか一つの課題を解決する。
【符号の説明】
【0082】
1 移動体制御システム
10 サーバ
101 経路探索部
102 外部データ取得部
103 特定用データ生成部
130 記憶部
20 ドローン
201 検出部
202 飛行制御部
203 データ通信部
204 位置特定部
230 記憶部