ディープラーニングに基づくドローン飛行エリアの推定 II
Drone Flying Area Estimation Method based on Deep Learning II
浜中 雅俊*1
Masatoshi Hamanaka*1

理化学研究所
RIKEN

This paper describes a method for estimating the flight area of drones based on deep learning. The position of a drone canbe detected by using the global positioning system (GPS). However, GPS sometimes has problems capturing signals fromsatellites that are shielded by mountains and/or buildings. Moreover, GPS signals are very weak and subject to a variety ofdisturbances. Such problems increase the chance of a crash when flying a GPS controlled drone. As a solution to this problem,
we propose a flight area estimation method using a 3D map created on the basis of deep learning. Our method could estimate
the flight area with 98.4 percent accuracy in a field experiment.
位置推定の問題を 2 次元の地表断面形状からラベルを推定する機械学習の問題へ置き換える．これにより計算量を大幅に削減することが可能となる．仮に，ドローンの位置をピンポイントで知りたい場合には，分割されたエリア内で 3 次元地形図と断面形状のパターンマッチングを行い位置の確定を行えばよい．エリア分割については，2.3で述べる．

1. はじめに自動運転中のドローンは，衝突を回避するために物体を発見すると，速度を低下あるいは停止して回避する．しかし，ホバリング中や低速移動中でもドローンはプロペラを回転し続けているため，回避を行うほどエネルギーを消費することになる．そこで
我々は，各ドローンの位置を把握し管制するシステムを構築してドローンのエネルギー効率を向上させること目指している．
従来のドローンでは GPS（グローバル・ポジショニング・システ
ム）による位置検出が行われていたが，ビルの谷間や山の沢や谷では，衛星からの GPS 信号の遮蔽や反射が生じ，正確な位置が求まらない場合があった．また，GPS 信号は微弱であるた
め ， 妨 害 に よ り 受 信 困 難 と な る 場 合 も あ っ た [Kerns 2014,
Urbina 2016] ．
そこで我々は，衛星 3 次元地形図を用いてディープラーニン
グ[LeCun 2015, Amari 2018]に基づき GPS 信号が受信できない場合でもドローンが飛行しているエリアを推定することを可能とする手法を提案し，シミュレーション実験により手法の基本性能の確認を行ってきた[浜中 2016]． 推定手法の特徴は，以下の 3 点である．
 2 次元 LIDER の使用： 飛行エリアの推定は，衛星や航空機が取得した 3 次元地形図と，ドローンが取得する地表面の形状のパターンマッチングにより実現できる．このとき，航空レーザ測量に用いられる 3 次元 LiDAR を用いて 3次元形状どうしのパターンマッチングを行ったほうが簡単な問題となるが，重量が重くドローンに搭載することは難しい．そこで，本研究では，近年自動車の自動運転などに使用させる小型軽量の 2 次元 LiDAR をドローンに搭載し，2 次元の地表断面形状を取得する（図 1）．ドローンによる地表形状ベクトルの取得については 2.1 で述べる．

 ディープラーニングの導入： 機械学習するのはドローン飛行したときに取得する 2 次元の地表断面形状とドローンが飛行しているエリアのラベルであるが，それらは 3 次元地形図から作成される． 3 次元地形図から取得できるデータの量は膨大であるために地表断面形状とそのエリアのラベルとの関係をサポートベクターマシン(SVM) [Vapnik1995]のような手法で求めようとすると，多大な計算時間が必要となるだけでなく，データがメモリに載らず，計算することが困難となる．そこで我々は，機械学習手法としてディープラーニングを導入する．ディープラーニングは，学習データをミニバッチと呼ばれるグループに分割して学習することが可能であるため，多くのデータを用いて学習することが，SVM に比べて容易である．ディープラーニングの一種である MLP（multi-layer perceptron）[Amari 2018]については，3 節で述べる．
本稿では，屋外で実際にドローンを飛行させた場合のエリア推定精度の評価を行う．実験の結果，98.4％の精度でエリア推定が可能であることを確認した．

2次元レーザレーダ

 エリア分割： 衛星や航空機が取得した 3 次元地形図とドローンが取得した 2 次元の地表断面形状のパターンマッチ
ングは，マッチング回数が膨大となり，リアルタイムで処理することが困難である．そこで，我々は推定を行う飛行エリ
アを分割し，分割された各エリアにラベルを付けることで，

図 1: 地表面の断面形状の取得

masatoshi.hamanaka@riken.jp
http://gttm.jp/hamanaka/

図 1: 地表面の断面形状の取得-1-2. 学習・評価データの作成

2.3 学習データの作成

ドローンの飛行エリアの推定は 2 つのステップからなる．まず，ドローンに 2 次元 LiDAR を搭載し，地表面の断面形状を取得する．次に，3 次元地形図を用いて学習したネットワークに，LiDAR から取得した断面形状を入力することでエリアを推定する．本節では，学習・評価用データの作成について述べる．

200 メートル四方の飛行エリアを縦横 5 等分に分割し，分割で生じた 40 メートルの正方形にそれぞれ異なるラベルを付与する．
次に，ドローンの位置からその時の地表形状ベクトルを 3 次元地形図から算出したものと，ドローンがいるエリアのラベルの組を学習データとする．学習データが大きすぎて GPGPU 上のメモリに乗らない場合には，計算時間が多大となることから，本稿では，ドローンの向きを北向きに，高度を 3 次元地形図の平均高度から 35 メートル上空に固定することにした．向きや高度を固定しない場合でも推定可能であることは確認済である[浜中2016]．
ドローンは 200 メートル四方の範囲を飛行し，LiDAR のスキャン幅は 50 メートルである．また，3 次元地形図の解像度は 1 メートルである．したがって，地表形状ベクトルとラベルのセットは3 万件（=200x150）作成した(図 4)．

2.1 地表面形状の取得
SICK 社の LD-MRS をドローンの鉛直下向きに搭載し地表断面の形状を取得する．ドローンは 50 メートル以上の高度を飛行することができるが，ドローンに搭載可能な小型軽量のLiDAR の測定範囲は，地表の反射率によって異なるがおおよそ 50 メートルである[SICK 2018]．そこで，ドローンの飛行高度は 50 メータ以下とした．
2.2 で述べる 3 次元地形図の分解能は 1 メートルであるため，地表の高度変化を測定する点は，1 メートル間隔で左右 25 点ずつ，合計 50 点の計測点を用意し，その 50 点とドローンとの高度差を 50 次元の地表形状ベクトルとして取得する．

150m

2.2 3 次元地形図の作成

200m

群馬県昭和村における北緯 36.6217 から 36.619900 まで，東経 139.1090 から 139.111240 の 200 メートル四方に LiDAR（SICK 社 LD-MRS）を搭載したドローン(DJI 社 Matrice600)を10 回飛行させ，3 次元地形図を作成した(図 2)．Matrice600 に搭載の GPS は 1 メートル程度の誤差があるから，解像度を 1 メートルとして，複数回の平均を求めた[DJI 2018]（図 3）.

50m

50m

200m

50m

200m50m

図 4: 飛行範囲

2.4 評価データの作成

図 2: ドローン(Dji 社 Matrice600)と LiDAR (SICK 社 LD-MRS)

ドローンを高度 35 メートルで 20 分間飛行させ，2 秒ごとに取得した地表形状ベクトルと，そのときの GPS ポイントから得たラベルの組を，評価データとした．評価データの作成は，ドローンを 5 回飛行させて行ったためデータ件数は 3000 件（5 回ｘ20 分ｘ60 秒/2 秒）である．
オープンな条件での評価とするため，3 万件の学習データから評価データ 3000 件の各ポイントから最も近いデータを除き，学習には 2 万 7 千件を用いることにした．

3. 実験結果

図 3: 3 次元地形図

位置推定精度は，MLP の隠れ層の層数およびユニット数によって変化する（図 5）．層数およびユニット数をランダムに変化させて精度を比較したところ，深層に向かって徐々にユニット数が減少していくネットワークで精度が向上する傾向があることがわかった．
適切な層数およびユニット数を求めるため，深層に向かって一定の割合でユニット数が減少するネットワークに限定して探索を行う．層数は 1 から 7 まで，ユニット数の減少率は，0.3 から1.0 まで 0.1 刻みで全探索した．ユニット数の最大は 3000 である．たとえば，3 層で減少率 0.5 のネットワークでは，1 層目が-2-

1500（3000x0.5）ユニット，2 層目が 750（1500x0.5）ユニット，3 層目が 375（750x0.5）ユニットである．
深層学習には多大な時間がかかることから，段階的に探索エリアを絞っていくことにした．表 1 は，2000 エポックまでの学習でのエリアが正しく推定できた精度である．精度が 0.5 以下のセルの背景を灰色としている．精度が低いのは，以下の 3 つのいずれかの場合である．
• 層数およびユニット数の両方が大きい• 層数が 1 である• 出力層の前の層のユニット数が非常に少ない
中間層n-1 中間層n

エリア3
エリア4……………...

……………...

エリア2……..
図 5：位置推定のための MLP
表 1: 2000 エポックまでの結果
ユニット数の減少率
層数0.3

0.4

0.5

0.6

0.7

0.8

0.9

1.0

1

0.51

0.50

0.50

0.49

0.49

0.46

0.49

0.50

20.67

0.71

0.75

0.76

0.74

0.74

0.73

0.66

30.610.67

0.66

0.69

0.70

0.70

0.64

0.63

4

0.57

0.62

0.61

0.61

0.59

0.66

0.30

0.05

5

0.55

0.60

0.62

0.58

0.61

0.05

0.05

0.06

6

0.36

0.60

0.61

0.66

0.58

0.05

0.05

0.05

7

0.19

0.49

0.63

0.66

0.05

0.05

0.05

0.05

8

0.14

0.23

0.05

0.05

0.05

0.05

0.05

0.06

表 2 は，表 1 で精度 0.4 以上だったものについて 1.5 万エポックまでの学習した結果である．
表 2: 15000 エポックまでの結果
ユニット数の減少率
層数

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1.0

1

0.65

0.65

0.64

0.65

0.65

0.640.64

0.65

2

0.83

0.87

0.85

0.85

0.87

0.87

0.87

0.84

3

0.83

0.90

0.93

0.95

0.95

0.92

0.93

0.89

4

0.80

0.91

0.94

0.94

0.93

0.91

5

0.77

0.91

0.95

0.93

0.88

6

0.53

0.91

0.94

0.93

0.85

0.81

0.95

0.94

7

ユニット数の減少率
層数

0.5

3
4

0.961550.96706

0.9756

7

0.97590.6

0.7

0.97620.97050.96070.9669出力
エリア1……………...

……………...

……………...

地表形状
ベクトル（50次元）

中間層1……..

入力層

表 3: 30000 エポックまでの結果

表 3 は，表 2 で精度 0.94 以上だったものに対して 3 万エポックまで学習した結果である．図 6 は，その学習曲線である．3 層で減少率 0.6 のネットワークでは，20509 エポックで精度 0.9762，7 層で減少率 0.5 のネットワークでは，29677 エポックで精度0.98757 となった．

ディープラーニングでは，データオーギュメンテーションにより認識性能が向上することが知られている[Lv 2017]．我々は，地表断面ベクトルの各要素に一様乱数を付加することで学習データを拡張することを試みた．
拡張した学習データは，オリジナルの学習データ 2.7 万件に，ランダムを付加した 2.7 万件の合計 5.4 万件である．付加するランダムノイズ値が±0.25m，±0.50m，±1.00m となる 3 種類の拡張学習データを作成した．学習には，表 3 で高性能だった，3 層で減少率 0.6 のネットワークおよび 7 層で減少率 0.5 のネッ
トワークの 2 種類を試みた．
その結果，7 層で減少率 0.5 のネットワークでノイズレベルが±0.50m の場合に 22119 エポックで精度 0.9838 となり最も高性
能 と な っ た （ 表 4 ） ． 学 習 時 間 は ， GPGPU (NVIDIA GTX1080Ti)を用いて 7 時間であった．
表 4: ランダムノイズを加えて拡張学習データでの精度
ノイズレベル層数および減少率±0.25m±0.50m±1.00m3 層で減少率 0.60.9730

0.9721

0.97127 層で減少率 0.5

0.97820.98380.9813

4. おわりに
我々はこれまで，ディープラーニングを用いてドローンに搭載した小型軽量の 2 次元 LiDAR が取得した地表断面ベクトルからドローンが飛行しているエリアを推定する手法について提案し，シミュレーション実験により手法の基本性能を確認してきた．本稿において達成したのは以下の 3 点である．
 手法の実世界における性能評価： 群馬県昭和村における200 メ ー ト ル 四 方 を 実 験 場 所 と し て ， ド ロ ー ン 搭 載 のLiDAR を用いて 3 次元地形図を作成した．そして，その 3次元地形図を用いて 2 万 7 千件の学習データを作成し，MLP で学習を行った結果，ドローンが取得した地表面ベクトルからエリア推定が可能であることを確認した．
 ネットワーク構成の検討: MLP によるエリア推定精度はネットワーク構成により変化する．MLP の層数およびユニット数をランダムで変化させて試行を繰り返した結果，深層に向かって徐々にユニット数が減少する構成で性能が高いことが分かった．そこで，深層に向かって一定の割合でユニット数が減少する構成に限定して適切なネットワークを探索したところ，深層に向かってユニット数が 1800，1080，648と変化する 3 層で減少率 0.6 のネットワークおよび，ユニット数が 1500，750，375，187，93，46，23 と変化する 7 層で減少率 0.5 のネットワークで精度 0.976 となり高い性能を示した．

-3-Sandberg, “Limiting the Impact of Stealthy Attacks onIndustrial Control Systems,” Proceedings of the 2016 ACM
SIGSAC Conference on Computer and Communications
Security, pp. 1092-1105, 2016.
[LeCun 2015] Y. LeCun, Y. Bengio, G. E. Hinton, “DeepLearning,” Nature, Vol. 521, Issue 7553, pp. 436-444, 2015.
[Amari 2018] Amari S, Ozeki T, Karakida R, Yoshida Y, Okada
M, Dynamics of Learning in MLP: Natural Gradient andSingularity Revisited, Neural Comput, Vol. 30, Issue 1, pp.
1-33, 2018.
[浜中 2016] 浜中雅俊, 塩見英樹, 小田雄一: ディープラーニン
グに基づくドローン飛行エリアの推定, 人工知能学会全国大会, 3E4-5, 2016.
[Vapnik 1995] V.Vapnik, The Nature of Statistical Learning
Theory, Springer, 1995.
[SICK 2018] SICK, The LD-MRS family – compact laser
scanersforoutdoor
use,
from:
https://www.comtrol.com/elements/uploads/fckeditor/file/LD-MRS_4001021.pdf, 2018.
[DJI 2018] Dji, Matrice600, fromhttps://www.dji.com/matrice600, 2018.
[Lv 2017] JJ. Lv, XH. Shao, JS. Huang, XD. Zhou, and X. Zhou,“Data augmentation for face recognition, Journal ofNeurocomputing," Vol. 230, Issue C, pp. 184-196, 2017.

 拡張データによる評価: ディープラーニングでは，データオーギュメンテーションにより認識性能が向上することから，地表断面ベクトルの各要素にランダムにノイズを付加したデータを作成し，性能を評価した．その結果，オリジナルのデータ 2.7 万件に，ノイズのサイズが±0.50m になるようノイズを負荷したデータ 2.7 万件を加えた 5.4 万件のデータを用いて 7 層で減少率 0.5 のネットワークを学習させたところ，精度が 0.984 となり高い性能を示した．
今後，陸域観測技術衛星だいち 2 号（ALOS-2）の PALSAR2 (Phased Array type L-band Synthetic Aperture Radar 2)から得られるデータを用いて，広範囲のエリアを MLP に学習させて性能評価を行っていきたい．

謝辞
本研究の一部は，JSPS 科研費 17K19972 の助成を受けたものです．

参考文献[Kerns 2014] A. J. Kerns, D. P. Shepard, J. A. Bhatti, and T. E.
Humphreys, “Unmanned Aircraft Capture and Control Via
GPS Spoofing,” Journal of Field Robotics, Vol. 31, Issue 4,pp. 617-636, 2014.
[Urbina 2016] D. I. Urbina, J. A. Giraldo, A. A. Cardenas, N. O.
Tippenhauer, J. Valente, M. Faisal, J. Ruths, R. Candell, H.
[Accuracy]
0.977

0.9762 (3層減少率0.6, 20,509エポック)

0.9759 (7 層減少率0.5, 26,779 エポック)

0.975
0.973
0.971
0.969
0.967
0.965

105000
5001

10000
10001

15000
15001

20000
20001

25000
25001

30000
[Epochs]

25000
25001

30000
[Epochs][Accuracy]
10.9

3層減少率0.6 : 0.9762

0.8

3層減少率0.7 : 0.9705

0.7

4層減少率0.5 : 0.9615

0.6

4層減少率0.6 : 0.9607

0.5

5層減少率0.5 : 0.9670

0.4

6層減少率0.5 : 0.9756

0.3

7層減少率0.5 : 0.9759

0.2

7層減少率0.6 : 0.9669

0.1
001

5000
5001

10000
10001

15000
15001

20000
20001

図 6：30000 エポックまでの学習曲線-4-