(57)【特許請求の範囲】
【請求項１】
蓄電器を電源とする無人航空機の位置を推定する無人航空機位置推定方法であって、
飛行エリアの３次元地形図を複数の仮想直方体セルによって構成される３次元格子によって所定の間隔で分割して複数の３次元格子エリアを仮定し、１つの前記３次元格子エリア内の所定位置に前記無人航空機が存在していると仮定して前記所定位置が含まれる分割された１つの仮想直方体セルを評価データとし、前記所定位置から地表を２次元レーザレーダからのレーザで走査したと仮定したときに得られる２次元測定データを前記３次元地形図のデータから得て学習データとする学習データ取得ステップを、前記複数の３次元格子エリアの全てについて実施する学習データ収集ステップと、
前記学習データ収集ステップで得た複数の前記学習データ及び複数の前記評価データをニューラルネットワークの入力層の複数のユニット及び出力層の複数のユニットに入力し、前記ニューラルネットワーク内の複数の中間層内の複数のユニット間の枝の重みおよびユニットのバイアスを調整する学習を実行して学習済みニューラルネットワークを構築する学習ステップと、
前記無人航空機に２次元レーザレーダを搭載し、前記飛行エリア内にある前記無人航空機から前記２次元レーザレーダで地表にレーザ走査を実際に行って、２次元測定データを取得する測定データ取得ステップと、
前記２次元測定データを前記学習済みニューラルネットワークの前記入力層に入力して前記出力層から前記無人航空機の推定位置情報を得る位置推定ステップとからなる無人航空機の位置推定方法。
【請求項２】
前記学習ステップでは、前記３次元格子エリアを構成する前記複数の仮想直方体セルのそれぞれについて前記仮想直方体セル内の外周領域に所定のマージンを設定し、前記マージン内に前記無人航空機がある場合の学習データを除外して学習を実行することを特徴とする請求項１に記載の無人航空機の位置推定方法。
【請求項３】
前記位置推定ステップが、前記無人航空機を操作するための操作用コントローラ内で実施される請求項１または２に記載の無人航空機の位置推定方法。
【請求項４】
前記無人航空機がドローンである請求項１乃至３のいずれか１項に記載の無人航空機の位置推定方法。
【請求項５】
蓄電器を電源とする無人航空機の位置を推定する無人航空機位置推定システムであって、
飛行エリアの３次元地形図を複数の仮想直方体セルによって構成される３次元格子によって所定の間隔で分割して複数の３次元格子エリアを仮定し、１つの前記３次元格子エリア内の所定位置に前記無人航空機が存在していると仮定して前記所定位置が含まれる分割された１つの仮想直方体セルを評価データとし、前記所定位置から地表を２次元レーザレーダからのレーザで走査したと仮定したときに得られる２次元測定データを前記３次元地形図のデータから得て学習データとする学習データ取得ステップを、前記複数の３次元格子エリアの全てについて実施して得た複数の前記学習データ及び複数の前記評価データをニューラルネットワークの入力層の複数のユニット及び出力層の複数のユニットに入力して、前記ニューラルネットワーク内の複数の中間層内の複数のユニット間の枝の重み及びユニットのバイアスを調整する学習を実行して得た学習済みニューラルネットワークと、
前記無人航空機に搭載された２次元レーザレーダと、
前記飛行エリア内にある前記無人航空機から前記２次元レーザレーダで地表にレーザ走査を実際に行って、２次元測定データを取得する測定データ取得部と、
前記２次元測定データを前記学習済みニューラルネットワークの前記入力層に入力して前記出力層から前記無人航空機の推定位置情報を得る位置推定部とからなる無人航空機の位置推定システム。
【請求項６】
前記ニューラルネットワークの前記学習では、前記３次元格子エリアを構成する前記複数の仮想直方体セルのそれぞれについて前記仮想直方体セル内の外周領域に所定のマージンを設定し、前記マージン内に前記無人航空機がある場合の学習データを除外して学習を実行することを特徴とする請求項５に記載の無人航空機の位置推定システム。
【請求項７】
前記位置推定部が、前記無人航空機を操作するための操作用コントローラ内にある請求項５または６に記載の無人航空機の位置推定方法。
【請求項８】
前記無人航空機がドローンである請求項５乃至７のいずれか１項に記載の無人航空機の位置推定システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、蓄電器を電源とする無人航空機の位置を推定する無人航空機位置推定方法及びシステムに関するものである。
【背景技術】
【０００２】
ドローンは、蓄電器を電源とする無人航空機として広く知られている。しかしながら衝突を回避するために自動運転中のドローンは、物体を発見すると、速度を低下あるいは停止して回避する。しかし、ホバリング中や低速移動中でもドローンはプロペラの回転を続けているため、回避を行えば行うほどエネルギーを消費することになる。そこで各ドローンの位置を把握し管制するシステムを構築してドローンのエネルギー効率を向上させることが望まれる。従来のドローンでは、GPS（グローバル・ポジショニング・システム）による位置検出が行われていたが、ビルの谷間や山の沢や谷では、衛星からのGPS信号が遮蔽や反射を起こし、正確な位置が求まらない場合があった。また、GPS信号は微弱であるため、妨害により受信困難となる場合もあった[非特許文献１]。
【０００３】
また特開2014-122019号公報（特許文献１）には、ドローンの位置を推定するために全地球測位システム受信機からの位置情報を利用する位置推定技術が開示されている。この技術では、同時場所特定地図作成により、全地球測位システム受信機からの位置情報を、同時場所特定地図作成システムからの場所情報と結合されている。そしてこの同時場所特定地図作成システムでは、可視光線カメラ、ステレオグラフィックカメラ、光検出及び測距システム、及び／又は無人航空機の他のセンサからのセンサ情報を結合して、位置推定を行っている。
【０００４】
さらに自車両の絶対位置を精度良く検出する場合には、レーザレーダを利用している（特許文献２）。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】内山他：都市区画におけるGPS衛星の見通し判定を用いた位置精度向上法の提案、 情報処理学会論文誌、 Vol．55、 No．1、 pp．389-398、 2014
【特許文献】
【０００６】
【特許文献１】特開２０１４−１２２０１９号公報
【特許文献２】特開２００７−３０３８４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１に示されるような複数のセンサ情報を利用してドローン（無人航空機）の位置を推定することは、ドローンに搭載する各種のセンサが多くなって、ドローンの重量を増大させるとともに、消費電力を増加させることになるために、ドローンの飛行距離を伸ばすことの障害になる。そこで発明者は、特許文献２に記載の技術で採用されているような３Ｄレーザレーダをドローンに搭載し、３Ｄレーザレーダの出力と一般に入手できる３Ｄ地図データとのマッチングを行って、位置の推定をすることを考えたが、３Ｄレーザレーダの重量は非常に重く、特許文献１に記載の技術と同様に、ドローンの重量を増大させるとともに、消費電力を増加させることになるために、ドローンの飛行距離を伸ばすことの障害になる問題がある。
【０００８】
本発明の目的は、無人航空機の重量を大幅に増加させることなく、GPS信号が受信できない場合でも無人航空機が飛行している位置を推定することを可能とする無人航空機位置推定方法及びシステムを提供することにある。
【課題を解決するための手段】
【０００９】
本発明は、蓄電器を電源とする無人航空機の位置を推定する無人航空機位置推定方法である、本発明の方法では、学習データ収集ステップと、学習ステップと、測定データ取得ステップと、位置推定ステップとから無人航空機の位置を推定する。まず学習データ収集ステップでは、飛行エリアの３次元地形図を複数の仮想直方体セルによって構成される３次元格子によって所定の間隔で分割して複数の３次元格子エリアを仮定する。そして１つの３次元格子エリア内の所定位置に無人航空機が存在していると仮定して所定位置が含まれる分割された１つの仮想直方体セルを評価データとし、この所定位置から地表を２次元レーザレーダからのレーザで走査したと仮定したときに得られる２次元データを３次元地形図のデータから得て学習用２次元データとする学習データ取得ステップを、複数の３次元格子エリアの全てについて実施する。そして学習ステップでは、学習データ収集ステップで得た複数の学習データ及び複数の評価データをニューラルネットワークの入力層の複数のユニット及び出力層の複数のユニットに入力し、ニューラルネットワーク内の複数の中間層内の複数のユニット間の枝の重みおよびユニットのバイアスを調整する学習を実行して学習済みニューラルネットワークを構築する。測定データ取得ステップでは、無人航空機に２次元レーザレーダを搭載し、飛行エリア内にある無人航空機から２次元レーザレーダで地表にレーザ走査を実際に行って、２次元測定データを取得する。そして位置推定ステップでは、２次元測定データを学習済みニューラルネットワークの入力層に入力して出力層から無人航空機の推定位置情報を得る。
【００１０】
本発明によれば、無人航空機には３Ｄレーザデータと比べて軽量で、且つ消費電力が少ない２次元レーザレーダを搭載し、無人航空機が飛行している地表から２次元測定データを取得して、２次元測定データを予め準備してある学習済みニューラルネットワークに入力することにより、３次元格子エリアのどこにいるかを迅速に調べることができるため、求まったエリア内で２次元測定データとのパターンマッチングを行うことで位置をピンポイントで迅速に特定することが可能である。なおニューラルネットワークによって求まったエリアを用いずに、３次元地形図の全域と２次元測定データとのパターンマッチングを行った場合には、データ量が非常に大きいために、時間が掛かかって位置推定をリアルタイムで行うことが難しいだけでなく、位置推定の精度を高めることができない。
【００１１】
学習ステップでは、３次元格子エリアを構成する複数の仮想直方体セルのそれぞれについて仮想直方体セル内の外周領域に所定のマージンを設定し、マージン内に無人航空機がある場合の学習データを除外して学習を実行する。仮想直方体セル間の境界付近での学習は、信頼度が低いため、このようにすると位置の推定精度を高めることができる。なおこのようなマージンを設けても、巨視的に見れば、無人航空機は常時位置を変位させているため位置推定に大きな障害は生じない。
【００１２】
位置推定ステップは、無人航空機を操作するための操作用コントローラ内で実施されるのが好ましい。このようにすれば、無人航空機内の蓄電器を利用せずに、しかも高速の演算装置を用いて短い時間で位置の推定を行える。
【００１３】
無人航空機は、ドローンであっても、その他の種類のものであってもよい。
【００１４】
本発明は、蓄電器を電源とする無人航空機の位置を推定する無人航空機位置推定システムとしても特定できる。この無人航空機位置推定システムは、学習済みニューラルネットワークと、無人航空機に搭載された２次元レーザレーダと、測定データ取得部と、位置推定部とから構成される。学習済みニューラルネットワークは、飛行エリアを複数の仮想直方体セルによって構成される３次元格子によって所定の間隔で分割して複数の３次元格子エリアを仮定し、１つの３次元格子エリア内の所定位置に無人航空機が存在していると仮定して所定位置が含まれる１つの仮想直方体セルを評価データとし前記所定位置を中心から地表を２次元レーザレーダのレーザで走査したと仮定したときに得られる２次元データを３次元地形図のデータから得て学習用２次元データとする学習データ取得ステップを、複数の３次元格子エリアの全てについて実施して得た複数の前記学習データ及び複数の前記評価データをニューラルネットワークの入力層の複数のユニット及び出力層の複数のユニットに入力して、前記ニューラルネットワーク内の複数の中間層内の複数のユニット間の枝の重みおよびユニットのバイアスを調整する学習を実行して得る。測定データ取得部は、飛行エリア内にある無人航空機から２次元レーザレーダで地表にレーザ走査を実際に行って、２次元測定データを取得する。そして位置推定部は、２次元測定データを学習済みニューラルネットワークの入力層に入力して出力層から無人航空機の推定位置情報を得る。
【図面の簡単な説明】
【００１５】
【図１】本発明の無人航空機位置推定ステムの実施の形態の一例の構成を示すブロック図である。
【図２】２次元レーザレーダで地表を走査する場合の説明に用いる図である。
【図３】３次元格子エリアを説明するために用いる図である。
【図４】（Ａ）は飛行エリアを複数の仮想直方体セルによって構成される３次元格子Ｇによって所定の間隔で分割して複数の３次元格子エリアを仮定することを説明するために用いる図であり、（Ｂ）は３次元格子エリア内の所定位置に無人航空機であるドローンが存在していると仮定してこの所定位置が含まれる分割された１つの仮想直方体セルを評価データとし、この所定位置から地表を２次元レーザレーダのレーザＬＳで走査したと仮定したときに得られる２次元データを３次元地形図のデータから得る場合の説明に用いる図である。
【図５】１つの３次元格子エリア内の所定位置から地表を２次元レーザレーダのレーザで走査することを説明するために用いる図である。
【図６】３次元格子エリアを構成する複数の仮想直方体セルのそれぞれについて仮想直方体セル内の外周領域に所定のマージンを設定することを説明するための図である。
【図７】RBMを用いた学習を説明するために用いる図である。
【図８】実験条件を示す表である。
【図９】実験結果を示すグラフである。
【発明を実施するための形態】
【００１６】
以下図面を参照して、蓄電器を電源とする無人航空機の位置を推定する本発明の無人航空機位置推定方法を実施する無人航空機位置推定ステムの実施の形態を詳細に説明する。図１は、本発明の無人航空機位置推定ステムの実施の形態の一例の構成を示すブロック図である。衝突を回避するために自動運転中の無人航空機は、物体を発見すると、速度を低下あるいは停止して回避する。しかし、ドローンのようにホバリングできる無人航空機の場合には、ホバリング中や低速移動中でもプロペラの回転を続けているため、回避を行えば行うほどエネルギーを消費することになる。そこで本実施の形態では、無人航空機が飛行している位置を推定することを可能にして、無人航空機の管制を容易にする無人航空機の推定位置情報を推定するシステムを構築してドローンのエネルギー効率を向上させる。
【００１７】
図１において、符号１は、ドローンのように蓄電器を電源とする無人航空機を示しており、この無人航空機には２次元レーザレーダ２が搭載されている。この無人航空機位置推定システムは、学習済みニューラルネットワーク３と、測定データ取得部４と、位置推定部５とを備えている。
【００１８】
本実施の形態では、無人航空機１であるドローンの飛行エリアの推定を２つのステップから実行する。まず、無人航空機１に２次元レーザレーダ２を搭載し、地表面の断面形状を取得する（図２参照）。次に、取得した断面形状と人工衛星あるいは航空測量された３次元地形図データとのパターンマッチングをしてエリアを推定する。２次元レーザレーダ２は、角度分解能が０．１２５度であるSICK 社のLD-MRS（商標）をドローンの鉛直下向きに搭載した場合、上空１００メートルを飛行中であれば約２０センチ間隔の地表の高度変化を測定することが可能である。そこで、２０センチおきに左右に５０点ずつ、合計１００点の計測点を用意し、その１００点とドローンとの高度差を１００次元の地表形状ベクトルとして取得する。
【００１９】
学習済みニューラルネットワーク３を準備するためには、まず図４（Ａ）に示すように３次元地図のデータ上で飛行エリアＦＡを複数の仮想直方体セルＣによって構成される３次元格子Ｇ（図３）によって所定の間隔で分割して複数の３次元格子エリアＧＡを仮定する。そして図４（Ｂ）に示すように１つの３次元格子エリア（ＧＡ）内の所定位置Ｐに無人航空機であるドローンが存在していると仮定してこの所定位置が含まれる分割された１つの仮想直方体セルを評価データとし、この所定位置から地表を２次元レーザレーダのレーザＬＳで走査したと仮定したときに得られる２次元データを３次元地形図のデータから得て学習用２次元データとする（学習データ取得ステップ）。複数の３次元格子エリアＧＡの全てについて複数回実施して得た複数の学習データ及び複数の評価データを図５に示すニューラルネットワークＮＮＷの入力層の複数のユニットｕ01〜ｕom及び出力層の複数のユニットＵ1〜Ｕxに入力して、ニューラルネットワークＮＮＷ内の複数の中間層１〜中間層ｎ内の複数のユニット（ｕ11〜ｕnm）間の枝ｂの重み及びユニット（ｕ11〜ｕnm）のバイアス（感度）を調整する学習を実行して、学習済みニューラルネットワーク３を得る。なお実際には、３次元格子Ｇを構成する直方体のセルＣにはそれぞれ異なるラベルを付与する。次に、１つの３次元格子エリアＧＡ内のドローンの位置をランダムに決定し、その時の地表形状ベクトルを３Ｄ地形図のデータから算出したものと、ドローンがいるセルＣのラベルの組を学習データとする。セルＣの縦横高さごとの分解能は２０センチとする。
【００２０】
図１の測定データ取得部４は、飛行エリアＦＡ内にある無人航空機（ドローン）１から２次元レーザレーダ２で地表にレーザ走査を実際に行って、２次元測定データを取得する。そして位置推定部５は、２次元測定データを学習済みニューラルネットワーク３の入力層に入力して出力層から無人航空機の推定位置情報を得る。本実施の形態によれば、無人航空機１には３Ｄレーザデータと比べて軽量で、且つ消費電力が少ない２次元レーザレーダ２を搭載し、無人航空機１が飛行している地表から２次元測定データを取得して、２次元測定データを予め準備してある学習済みニューラルネットワーク３に入力することにより、２次元測定データと３次元地形図とのパターンマッチングを行ったことと同様の結果を迅速に行って、位置の推定を行うことができる。なおニューラルネットワークを用いずに、パターンマッチングを行った場合には、データ量が非常に大きいために、時間が掛かかって位置推定をリアルタイムで行うことが難しいだけでなく、位置推定の精度を高めることができない。
【００２１】
学習の際には、図６に示すように、３次元格子エリアを構成する複数の仮想直方体セルＣのそれぞれについて仮想直方体セルＣ内の外周領域に所定のマージンを設定し、マージン内に無人航空機１がある場合の学習データを除外して学習を実行する。仮想直方体セルＣ間の境界付近での学習は、信頼度が低いため、このようにすると位置の推定精度を高めることができる。なおこのようなマージンを設けても、巨視的に見れば、無人航空機は常時位置を変位させているため位置推定に大きな障害は生じない。
【００２２】
位置推定部５は、無人航空機１内に搭載してもよいが、無人航空機１を操作するための操作用コントローラ内で配置されるのが好ましい。このようにすれば、無人航空機１内の蓄電器を利用せずに、しかも高速の演算装置を用いて短い時間で位置の推定を行える。
【００２３】
（より具体的なニューラネットワークの学習）
具体的なニューラルネットワークの学習は、Restricted Boltzmann Machine (RBM)を用いたプレトレーニング(Pre Training)とファインチューニングという２つの段階からなる。なお、プレトレーニングはRBMの代わりにAuto Encoderを使うこともできる。
【００２４】
（RBMを用いた学習）
図７に示すように、RBMは、可視層（Visible Layer）と隠れ層（Hidden Layer）からなる２層構造のネットワークで、可視層にデータを入れて学習させると、隠れ層に入力データの特徴を反映させたパラメータが学習される。可視層と隠れ層は、それぞれ複数の可視ユニットあるいは隠れユニットを持ち、可視ユニットviには０または１あるいは０から１の範囲の実数が入力され、隠れユニットhjは０または１の値を出力する。
【００２５】
RBMのパラメータには、可視ユニットに付随するバイアスbi、隠れユニットに付随するバイアスcjと可視ユニットと隠れユニットの結合重みwi, jがある。可視ユニットの活性化（値）が与えられた場合、隠れユニットの活性化確率は次式の通りになる。
【００２６】
【数１】
0006663606.tif 000002
一方、隠れユニットの活性化（値）が与えられた場合、可視ユニットの活性化確率は次式の通りになる。
【００２７】
【数２】
0006663606.tif 000003
このとき、重みベクトルwi, jを最適化するためにHintonらの提案したCD（contractive divergence）法を用いる。CD法の１ステップは以下の通りである。
【００２８】
１．可視ユニットに入力されるデータセットから一部を訓練用サンプルvを取り出し、サンプルを使って隠れユニットの確率を計算し、この確率分布から隠れユニットの活性化ベクトルhを得る。
【００２９】
２．vと hの外積を計算し勾配１とする。
【００３０】
３．hから再度、可視ユニットの確率を計算し、この確率分布から可視ユニットの活性化ベクトルv’を得る。
【００３１】
４．さらに１と同じ手順で、v’からh’を得る。
【００３２】
５．v’と h’の外積を計算し勾配２とする。
【００３３】
６．勾配１と勾配２の差分と学習率との積を用いて重みwi, jを更新する。eは学習率である。学習率は大きくするほど、一回で更新する値が大きくなるが、大きくしすぎると学習結果が収束しづらくなるため、適切な値を設定する。実験では、０．１とした。
【００３４】
【数３】
0006663606.tif 000004
７．vとv’の差分と学習率との積を用いてバイアスbiを更新する。
【００３５】
【数４】
0006663606.tif 000005
８．hとh’の差分と学習率との積を用いてバイアスcjを更新する。
【００３６】
【数５】
0006663606.tif 000006
上記を、wi, j、bi、cjの値が値の更新が起きなくなり収束するまで繰り返す。なかなか収束しない場合には、学習率eを小さく設定することで収束しやすくなる。なお、１ステップごとに更新する場合で説明したが、複数ステップ分をまとめて更新しても良い。
【００３７】
（プレトレーニング）
RBMの学習には、可視層の入力データ（教師なしデータ）が必要になるため、n層の中間層を持つDBNにおけるプレトレーニングでは、入力層から順に学習していき、学習したネットワークを用いて次の層の可視層の入力データを作成していく。すなわちまず、入力層と中間層１との間にRBMを構成して学習を行う。次に、中間層１と中間層２との間にRBMを構成して学習を行う。この中間層間の学習を、中間層ｎ−１と中間層ｎまで行う。ｎは、任意の整数で値が大きいほどネットワークが複雑となり学習能力が高くなり性能が高くなるが、あまりに大きくするとその学習に多くのデータが必要となり、データの不足により逆に性能が低くなる。評価実験では、中間層数は７とした。
【００３８】
（ファインチューニング）
RBMを用いたプレトレーニングが終了すると、出力層を加える。中間層の最終段と出力層との接続は、ロジスティック回帰（Logistic Regression）を用いるが、サポートベクターマシン（SVM）などを用いることもできる。ファインチューニングでは、ネットワークをニューラルネットとして扱い、入力データと出力データの両方を持つデータ（教師ありデータ）を使って、誤差逆伝搬学習（BP：Back Propagation）を用いてネットワーク全体の尤度を最大化するように微調節を行う。誤差逆伝搬学習は以下の４ステップを収束するまで繰り返す。
１．教師ありデータから、データを１件とり、入力層から順伝搬を計算し全ての出力を計算する。すべての層の出力と入力を保存しておく。
【００３９】
【数６】
0006663606.tif 000007
２．出力層の値と教師信号（出力データ）sjの値から出力層の誤差Δhjを求める。
【００４０】
【数７】
0006663606.tif 000008
３．出力側の層から順次前の層の誤差を求めていく。
【００４１】
【数８】
0006663606.tif 000009
４．重みとバイアスを更新する。
【００４２】
【数９】
0006663606.tif 000010
（実際の利用形態）
事前準備
（１）ドローンの離陸地，着陸地から飛行予定の経路を設定する。飛行経路は、離陸地の上空と着陸地の上空を直線で結んだものでも良いし、山や高い建物を避けて燃費が向上するように曲線・直線を組み合わせたものでもよい。また、複数の離着陸地を設定してそれらをネットワーク状にした経路網でも良い。
【００４３】
（２）データベースから経路あるいは経路網周辺の三次元地形図のデータを計算サーバ上にダウンロードし、ドローンが飛行すると想定されるエリアに上下左右に等間隔（たとえば１メートルおき）に点をうち、その点が図３に示した５×５×５の３次元格子エリアの中心となるようにして３次元格子エリアの分割を行い、２次元レーザレーダで取得した２次元測定データ（地表形状ベクトル）から３次元格子エリア内の仮想直方体セルが推定できるように学習を行う。学習はドローンとは独立の計算サーバで行う。学習の結果、エリアの中心ごとに学習済みのネットワークが取得される。
【００４４】
飛行開始前の準備
（３）ドローンに離陸地、着陸地、およびこれから飛行を行う経路を入力する。
【００４５】
（４）経路付近の衛星３次元地形図のデータをドローンの搭載するコンピュータにダウンロードする。
【００４６】
（５）計算サーバからこれから飛行を行う経路周辺の学習済みネットワークをドローンの搭載するコンピュータにダウンロードする。
【００４７】
飛行中の処理
（６）２次元レーザレーダ２で現在の地表断面ベクトル（２次元測定データ）を一定の間隔（たとえば０．１秒おき）に取得する。
【００４８】
（７）ドローンが直前にいた位置および、ドローンの直前の移動方向・移動速度から、移動方向、移動速度の変化がなかった場合に現在いる位置を算出する（ドローンの速度は最大でも毎秒５０メートルであるため、０．１秒での移動は５メートル以内）。
【００４９】
（８）５×５×５に分割した仮想直方体セルの中心が、７で算出した位置に最も近い学習済みネットワークに、（５）で取得した地表断面ベクトル（２次元測定データ）を入力して、ドローンが現在いるエリアを予測する。
【００５０】
（９）予測されたエリアが５×５×５の中心の仮想直方体セルであった場合は、（１２）へ。
【００５１】
（１０）予測された仮想直方体セルが５×５×５の中心のセルから隣接されるセルであった場合には、予測されたセルの中心が５×５×５の中心となるようなネットワークを使って再度予測を行い、予測されたセルが正しいことを確認する。正しいことが確認できた場合には（１１）へ。再度違ったセルとなった場合には、（１２）へ。
【００５２】
（１１）推定されたセルの３次元地形図と地表断面ベクトル（２次元測定データ）のマッチングを取り、マッチした点を現在位置とする。マッチングは、ドローンの取得してきた地表断面ベクトル（２次元測定データ）と、三次元地形図上に上下左右等間隔（たとえば２０センチ間隔）に点を打ち、その点にドローンがいた場合の地表断面ベクトル（２次元測定データ）を計算し、両者が一致したものを求める。現在位置がわかったら、その前にいた位置との差分により、移動方向、移動速度を算出する。そして、（６）に戻り同じ処理を繰り返す。
【００５３】
（１２）５×５×５の分割前の仮想直方体セルの全域の３次元地形図データと地表断面ベクトル（２次元測定データ）のマッチングを取り、マッチした位置を現在位置とする。GPSから精度が低くても位置情報が取れている場合には、GPSの示す位置に近い、エリアを先にマッチングを取ることで計算時間を短縮しても良い。現在位置がわかったら、その前にいた位置との差分により、移動方向、移動速度を算出する。そして、（６）に戻り同じ処理を繰り返す。
【００５４】
（評価実験）
本実施の形態の評価をする実験を行った。この実験は、基本性能を確認するのが目的であるため、評価データも学習データと同様に、位置をランダムに決定して３Ｄ地形図データから作成する。その際、同じデータが重複しないように、ドローンの位置が同じものは除外した。仮想直方体セルの境界付近では、類似した地形情報でラベルが異なる場合が生じるため識別が難しい。そこで学習データについては、仮想直方体セルの幅に対して１０％の幅のマージンを周囲に設け、マージン内にドローンがある場合を学習データから除外することで、性能向上を試みた。各仮想直方体セルは、マージンとマージン以外に分かれている。
【００５５】
３Ｄ地形図データとして陸域観測技術衛星「だいち」のものを用いた。１０ｃｍ程度の高分解能の航空地形図もあるが、「だいち」は分解能が３０ｍであるため、１／１５０にすることで、疑似的に分解能２０ｃｍの地形図として使用する。３次元格子エリアは、一辺３０ｍの立方体で、各方向にそれぞれ５個重ねて、１２５個のセルを生成した（図３）。実験では、東経 135°40’00”から 135°52’29”、北緯 35°00’00” から 35°12’29”の衛星３Ｄ地図データを用い、高さは地上１００ｍから２５０ｍの範囲とした。２．４DBNを用いた飛行エリアの推定３Ｄ地形図データと２次元レーザで取得する地表面形状（２次元測定データ）とのパターンマッチは、マッチング回数が非常に多くなるため、通常の方法ではリアルタイムで行うことが難しい。そこでディープラーニング（ニューラルネットワーク）の一手法であるDBN（Deep Belief Networks）[ Hinton、 G. E.、 Osindero、 S. & Teh、 Y.-W. A fast learning algorithm for deep belief nets. Neural Comp. 18、 pp. 1527-1554、 2006]を用いてリアルタイムで地表面形状から飛行エリアを推定した。
【００５６】
入力は１００次元の地表形状ベクトル、出力は各セルエリアを表すラベルである（図３）。
【００５７】
（実験結果）
図８に示す条件で、図９に示すように、学習／評価データにマージン内のデータを含む場合と含まない場合のデータを作成し評価した。学習データは１６万件、評価データは４万件である。DBNの中間層数は７、ユニット数は各６０、学習Epoch数は３０００とした。その結果、(a)に比べ(b)が高いことから、マージンのデータで検出誤りが多いことが確認できた。(d)が最も高いことから、GPSなどで位置を把握していて、その確認のためのエリア推定であれば、学習データにマージを含まないほうが良いことが確認された。一方、(c）の場合に非常に性能が低くなったことから、無人航空機（ドローン）の位置を本実施の形態のみで求める場合には、学習データにマージンを含んで学習したネットワークを用いるのが良いことが確認された。また３０ｍ立方のエリアを１２５個生成し実験した結果、１０％のマージンを設定することで性能が向上することを確認した。
【産業上の利用可能性】
【００５８】
本発明によれば、無人航空機には３Ｄレーザデータと比べて軽量で、且つ消費電力が少ない２次元レーザレーダを搭載し、無人航空機が飛行している地表から２次元測定データを取得して、２次元測定データを予め準備してある学習済みニューラルネットワークに入力することにより、２次元測定データと３次元地形図とのパターンマッチングを行ったことと同様の結果を迅速に行って、位置の推定を行うことができる。
【符号の説明】
【００５９】
１  無人航空機
２  ２次元レーザレーダ
３  学習済みニューラルネットワーク
４  測定データ取得部
５  位置推定部
【図１】
0006663606.tif 000011
【図２】
0006663606.tif 000012
【図３】
0006663606.tif 000013
【図４】
0006663606.tif 000014
【図５】
0006663606.tif 000015
【図６】
0006663606.tif 000016
【図７】
0006663606.tif 000017
【図８】
0006663606.tif 000018
【図９】
0006663606.tif 000019