救急救命センターと連携する
交通事故自動通報システムによる交通弱者の被害軽減― 平成 29 年度（中間報告） タカタ財団助成研究論文 ―ISSN 2185-8950

研究代表者

中山 功一

研究実施メンバー

研究代表者

国立大学法人 佐賀大学
工学系研究科 准教授

研究協力者

中山 功一

国立大学法人 佐賀大学
医学部 教授

阪本 雄一郎国立大学法人 佐賀大学
産学・地域連携機構 教授

佐藤 三郎

国立大学法人 佐賀大学
工学系研究科 客員研究員

大島 千佳

報告書概要平成 29 年度は，事故検知／通報アプリケーションの改良と，ドローンによる事故状況
確認システム，および救急隊の到着時間を短縮するための救急車自動追従システムを開発した．
具体的には，①落下時による衝撃を誤検知しない事故判別アルゴリズムを構築，②事
故発生時の音声データの取得機能を開発／実装，③スマートフォンの加速度センサ情報
から，移動モードを判別する機能の開発を行った．これらの成果により，事故発生時の状況をより詳細に検知／通報できるようにした．これらの機能を，スマートフォンを所持させたダミー人形と自動車との衝突実験により，有効に機能することを確認した．
事故現場上空からの撮影データを用いて，事故現場の 3 次元モデルを試験的に作成した．また，事故現場までの飛行ルートを，ドローンが落下しても危険性の少ない河川やクリーク上空を選んで飛行するアルゴリズムを開発した．この結果，佐賀市内で発生した事故に対して飛行する場合，そのルートの約 90％が，落下しても安全な地点の上空となることがシミュレータ上で確認できた．さらに，緊急移動する救急車を常に追従する
自動飛行アルゴリズムにより，事故現場へと向かう救急車が，運転手からは見えない距
離にある進路前方の交通状況を，助手席から常に確認できるようになった．これにより，渋滞を避けて，事故現場への移動が可能になると期待される．
歩行者や自転車の運転者が，自ら通報できないような事故にあった場合でも，本研究で提案した交通事故の救急システムにより，事故の発生とその位置や音声，移動モードなどの情報を，自動で通報できるようになった．また，通報された位置情報に従い，ドローンを事故現場まで安全なルートで自動飛行させ，上空から事故の様子を動画で撮影
し，3 次元モデルを作成できるようになった．これらのシステムは試験段階であり，実用化までに解決すべきいくつかの課題はある．これらの課題を踏まえつつ，交通事故の被害を軽減につながる救命システムの開発を継続する．

2/33

目

次

救急救命センターと連携する
交通事故自動通報システムによる交通弱者の被害軽減
第 1 章 はじめに
第 2 章 スマートフォンによる自動通報
2.1

アプリケーションの目的

2.2

アプリの概要

2.3

アプリの改良１：誤 検 知 の 防 止

2.4

アプリの改良２：事故状況の推測に必要なデータの記録

2.5

アプリの改良３：移動モードの識別アルゴリズム

2.6

衝突実験

2.7

実験結果

第 3 章 飛行マップ作成アルゴリズムの開発
3.1

ドローンによる確認システムの目的

3.2

システム全体の概要

3.3

クリークマップの作成アルゴリズムの開発

3.4

クリークマップの評価

第 4 章 自動追従アプリケーションの開発
4.1 開発環境
4.2 アプリケーションの概要
4.3 アプリケーションの詳細
4.4 車両の自動追従実験
4.5 考察第 5 章 まとめと今後の課題
参考文献

3/33

第1章
はじめに
佐賀県の人身事故発生件数は，5 年連続で全国ワーストであった[1][2]．図 1.1 に示すよ
うに，人身交通事故発生件数は，平成 28 年は 7,783 件，29 年は 6,765 件と減少してきたが，それでも全国で 2 番目に多い[3]．さらに人口 10 万人あたりのけが人は平成 29 年も 1079 人と，11 年連続でワーストである[3]．特に歩行時や自転車運転時の被害が顕著である．その中でも佐賀市は，常に全国でワーストを競っている状況である．

図 1.1

交通事故発生件数の推移（出典：佐賀市役所「佐賀市における交通事故発生状況について」）

4/33

筆 者 ら の 所 属 す る 佐 賀 大 学 で は ， 先 進 事 故 自 動 通 報 シ ス テ ム （ Advanced Automatic
Collision Notification : AACN）とドクターヘリシステム[4]を連動させる救急ヘリ病院ネットワーク(HEM-Net）[5]を導入している．自動車には AACN などの通報装置が装備されつつある．自転車や歩行者が事故にあった場合にも，自動で救急通報され，適切に救急救命されるシステムが期待される．
本研究では，交通事故の救急システムを提案している．まず，スマートフォンを用いて，歩行者や自転車の運転者が，自ら通報できないような事故にあった場合でも，自動で事故発
生とその位置情報を通報する Android アプリケーション（以下，自動通報アプリ）を開発す
る．次に，通報された位置情報に従い，小型の無人飛行機「ドローン」を事故現場まで自動飛行させ，上空から事故の様子を動画で撮影し，救命センターに送信する Android アプリケーション（以下，自動操縦アプリ）を開発する．救命センターでは，自動通報アプリからの通報と，自動操縦アプリから送信される上空からの映像をもとに，救急車やドクターヘリの出動を判断する．
筆者らが提案している交通事故救急システムを図 1.2 に示す．図中の青枠で示した自動通報アプリを 2 章で，赤枠で示したドローンの自動操縦アプリ，およびドローンによる撮影について 3 章でそれぞれ述べ，4 章でまとめる．

図 1.2

救急システムの概念

5/33

第2章
スマートフォンによる自動通報
2.1

アプリケーションの目的

自動車には，通報装置が次々と実装されている．一方，歩行者や自転車な
どの交通弱者に対する通報装置が少ない．そのため，交通事故が起きたときに通報が遅れ，交通弱者が亡くなる場合も多い．この問題を解決するため，
本研究では，事故を検知して，自動で，仲介サーバに位置情報を送り，病院に事故情報を送る「自動通報アプリ」を開発した．

2.2

アプリの概要このアプリは，スマートフォンの加速度セン
サなどのデータから事故を検知する．事故を検知すると，自動で仲介サーバに位置情報（G PS
デ ー タ ） を送り，病院に事故情報（加速度データ／音声データ／事故前後の G PS データ）を送る．仲介サーバの G PS データをもとに，ドローンを事故現場まで自動飛行させ，事故状況を上空から撮影させる．病院側は撮影された映像を見て，適切な対処法を検討する．
アプリは，約 20 秒間の加速度データと GPS データを常に保持し続ける．交通事故が起きたと
き，交通弱者が持つスマートフォンには，異常な加速度が生じる．アプリは，異常な加速度を検知すると，アラームが鳴る．自力で通報できる人や，スマートフォンを落としたことによる異常な加速度の検知の場合には，10 秒以内にボタンを押してアラームを止める．これにより，誤通報を防ぐ．
図 2.1
2.3

自動通報アプリの画面

アプリの改良１：誤検知の防止

落下など事故ではない衝撃を，事故として誤検知しない判別アルゴリズムを構築した．図
2.2 に，スマートフォンを落下させた場合の加速度センサの値の推移を示す．例えば 20cm
6/33

の高さから落下させた場合，地面に衝突するまでに約 0.2 秒間の滞空時間がある．図 2.2に示された通り，この間のスマートフォンは加速度がゼロの無重力状態となる．一方，図2.3 に示した事故を想定した衝突実験における加速度データの推移から分かるように，事故における衝撃は，重力加速度である約 10m/s2 の加速度を検知し続けた状態から，強い衝撃を受けている．この 2 つの加速度の推移の違いを検知するアルゴリズムを実装したことで，落下時の衝撃を事故と誤検知することがほぼなくなった．

図 2.2

落下実験における加速度データの推移

図 2.3

衝突実験における加速度データの推移

7/33

2.4

アプリの改良２：事故状況の推測に必要なデータの記録

平成 28 年度までのアプリでは，事故の検知と位置情報の通報は可能であったが，今年度はさらに，事故発生前も含めた情報を保存できるように改良した．
具体的には，事故発生前後の音声データの記録により，自動車が事故直前に急ブレーキを踏んだかどうかが判定できるようになると期待される．また，事故発生前後の GPS データの記録により，被害者がどの方向にどの程度の速度で移動している最中に事故に遭ったのかが判定できると期待される．
図 2.4

事故データを記録した

csv ファイルの確認画面
2.5

アプリの改良３：移動モードの識別アルゴリズム

スマートフォンの加速度センサ情報から，移動モード（徒歩移動／自転車移動）を判別す
る機能を開発した．データ判別機には，サポートベクターマシーン（SVM）を用いた．歩行時と自転車走行時の 1 分間のデータを取得して学習させた SVM で分類したところ，98％の精度で，スマートフォンを持つユーザが歩行中か自転車移動中かの識別に成功した．
現時点では，移動モードを事故の検知や被害状況の推定などには用いていない．今後，移動モードに応じた事故検知アルゴリズムや，被害状況の推定アルゴリズムに応用できると期
待される．

2.6

衝突実験

本年度は，7 月と 12 月の 2 回にわたり，スマートフォンを装着したダミー人形を乗せた自転
車と自動車の衝突実験を行った．その様子を図
2.5～2.8 に示す．これらの実験の目的は，事故の判断基準となる加速度データの取得と，改良したアプリケーションの機能確認である．自転車に乗せたダミー人形の腰に，スマートフォン（Google：Nexus 5X，COVIA NETWORKS：FleaPhone
CP-D02）をそれぞれ 1 台ずつ設置した状態で，衝突実験を行った．
図 2.5

7 月の衝突実験における衝突時の様子8/33

図 2.67 月の衝突実験における衝突後の様子

図 2.7

12 月の衝突実験における衝突時の様子

図 2.8

12 月の衝突実験における衝突後の様子
9/33

2.7

実験結果

7 月の衝突実験時における加速度の推移の例として，衝突時を図 2.9 に，衝突後を図 2.10に，それぞれ示す．

図 2.9

7 月の衝突実験における衝突時の加速度の推移

図 2.107 月の衝突実験における衝突後の加速度の推移

10/33

12 月の衝突実験時における加速度の推移の例として，スマホを腰に装着した場合を図 2.11に，スマホを自転車の前かごに設置した場合を図 2.12 に，それぞれ示す．

図 2.11

図 2.1212 月の衝突実験における腰に装着したスマホの加速度の推移

12 月の衝突実験における自転車の前カゴに装着したスマホの加速度の推移

いずれも，加速度が重量加速度に近い 10m/s2 程度の値から，その 10 倍程度の衝撃を検知している．さらに，事故後，1.0 秒前後にかけて，跳ね飛ばされて着地した際の衝撃を検知している．衝突実験の結果から，自転車などの交通弱者が事故の被害にあった場合に，スマホのセンサデータから，スマホアプリが事故を検知できることが確認できた．また，事故を検知した際に，事故発生前後の音声データや，GPS データが記録できることも確認した．

11/33

第3章
飛行マップ作成アルゴリズムの開発
3.1 ドローンによる確認システムの目的
火災や事故が発生すると，消防車や救急車といった緊急車両が出動する．
火 災 や 事 故 現 場 の 周 辺 で は ，交 通 の 混 雑 が 発 生 す る [6]．交 通 状 況 が 把 握 で きなければ，緊急車両の到着までに時間のロスが発生する．上空からの情報があれば，交通の混雑を避けて経路選択ができ，緊急車両が到着するまでの時
間短縮が見込める．
本研究では，佐賀市を対象として，ドローンを用いた緊急車両の自動追従システムを提案する．佐賀市は，クリーク（小川）が張り巡らされた地形である．ドローンの墜落時のリスクを抑えるため，本システムで扱うドローン
は，クリーク上を飛行しながら緊急車両を追従し，上空から移動経路の状況
把 握 を 支 援 す る ． 本 研 究 で は ， よ り 正 確 な 交 通 状 況 の 把 握 と ， 1秒 で も 早 い 緊
急車両の現場到着を目的とする．
3.2 システム全体の概要
本システムでは，救命救急活動の支援による救命率の向上を目的としている ． シ ス テ ム の 全 体 像 を 図 3.1に 示 す ． 交 通 事 故 が 発 生 す る と ， 交 通 弱 者 の 持
つスマートフォンが事故を検知し，サーバに事故の位置情報が送信される．
いち早く現場に向かい，先着するドローン（現場先着ドローン）は，写真を撮影しサーバへ送信する．事故現場の画像は，サーバを介して病院へ送信され，事故状況の把握に用いられる．緊急車両追従ドローンは，事故現場の位
置 情 報 を 受 け 取 り ，ク リ ー ク 上 を 飛 行 し な が ら 救 急 車 を 追 従 す る ．追 従 時 に ，上空から救急車の進路をカメラで撮影し，救急車に送信することで，交通状況の把握を支援する．
本研究では，緊急車両追従ドローン（以下，ドローン）の研究開発に取り組む．ドローンの安全な飛行経路を選択するためのクリークマップを作成するアルゴリズムの研究開発と，ドローンに搭載する車両を自動追従するアプ
リケーションの研究開発を行った．

12/33

図 3.1 事故救命支援システムの全体像

システム全体のうち，本研究では，図 3.2 に示すように，ドローンの緊急車両追従飛行に関係する部分を開発する．本システムは，クリークマップ，自動追従アプリケーション，サーバ，ドローンで構成される．緊急車両内には，ドローンのコントローラであるプロポ（送信機）と，プ
ロポに接続した Android タブレット端末を載せる．自動追従アプリケーションは，Android タブ
レット端末上で動作する．クリークマップは，自動追従アプリケーション内に含まれ，CSV 形式で保存されている．ドローンは，プロポを介して自動追従アプリケーションと通信しながら，緊
急車両付近のクリーク上を飛行する．サーバは，インターネットを介して自動追従アプリケーシ
ョンと通信を行う．
自動追従アプリケーションは，サーバから火災・事故現場の位置情報を取得し，付近のクリークを目的地として設定する．自動追従アプリケーションは，クリークマップをドローンの飛行経路の選択に用いる．自動追従アプリケーションは，プロポを介してドローンの位置情報とカメラ映像を受け取りつつ自動追従の指示を与え，ドローンを指定された目的地までクリーク上で飛行させながら，緊急車両を追従させる．

13/33

図 3.2 本システムの構成

3.3 クリークマップの作成アルゴリズムの開発開発するアルゴリズムによるクリークマップ作成の手順を以下に示す．
1.

地 図 （ 図 3.3） を ク リ ー ク 部 分 と そ の 他 の 二 値 画 像 に 変 更 （ 図 3.4）

2.

二 値 画 像 に 対 し て 幅 1ピ ク セ ル に 細 線 化 処 理 （ 図 3.5）

3.

端 点 ・ 交 点 ・ 角 点 を 検 出 し ， ノ ー ド と し て 登 録 （ 図 3.6）

4.

橋 で 途 切 れ た と 推 定 さ れ る 端 点 を リ ン ク で 接 続 （ 図 3.7）5.

距離が遠すぎるノード間に新規ノードを追加

6.

ノ ー ド の 位 置 と 接 続 関 係 を CSV形 式 で 出 力
現在は，佐賀市内を網羅するクリークマップを作成中である．

14/33

図 3.3

地 図 ： OpenStreetMapか ら 保 存 し た 画 像

図 3.4

クリークの二値画像

15/33

図 3.5

Zhang-Suenの 細 線 化 ア ル ゴ リ ズ ム に よ る 細 線 化 画 像

図 3.6

端点と交点を検出した拡大画像

16/33

図 3.7

接続関係を修復した拡大画像

図 3.8

視覚化したクリークマップ

17/33

3.4

クリークマップの評価

作 成 し た ク リ ー ク マ ッ プ （ 図 3.8） と ク リ ー ク 二 値 画 像 （ 図 3.4） の 差 分 をとり，クリークマップの評価を行った．その結果，作成したクリークマップの 89.8％ は ，実 際 の ク リ ー ク 上 に 位 置 し て い た ．約 10%が ク リ ー ク 上 に 位 置 しな か っ た 理 由 は ， 2つ 考 え ら れ る ． 1つ 目 は ， 地 図 上 で ク リ ー ク が 途 切 れ た 部
分 を 接 続 し た 際 に ，ク リ ー ク で は な い 部 分 に 新 た な 線 分 が で き た た め で あ る ．
こ れ は ，ク リ ー ク マ ッ プ の ノ ー ド 間 の 接 続 を 保 証 す る 上 で 必 要 な 線 分 で あ り ，
減 ら す こ と は 困 難 で あ る ． 2つ 目 は ， 角 点 検 出 の 精 度 で あ る ． 現 在 ， 角 点 の 検
出は，カーブしているクリークの角度から判定している．また，ノードが近くに存在する場合，新たな角点は追加できないようにしている．これらが原因となり，あるべきカーブが検出されていない箇所や，緩やかなカーブをう
まくトレースできていない箇所がある．そのため，クリークマップの精度が低下していると考えられる．角点検出の方法を見直すことで，クリークマッ
プの精度向上が期待できる．
クリークマップに従って追従することで，道路上をそのまま追従するのに
比 べ て 墜 落 リ ス ク を 1/10程 度 ま で 低 減 で き る ．

18/33

第4章
自動追従アプリケーションの開発
4.1 開発環境
表 4.1 に自動飛行のアプリケーションの開発に要した環境を示す．Android/iOS の開発が可能であるが，開発・デバッグが容易な Android アプリケーションとして開発を行った．本研究で対象とするドローンは，DJI Phantom4 と DJI Inspire1+Zenmuse Z3 である．DJI Phantom4のスペックを表 4.2 に，DJI Inspire1+Zenmuse Z3 のスペックを表 4.3 に示す．アプリケーシ
ョンは，接続先のドローン機種を識別し，機種に応じて指示を変更できる．そのため，接続先が DJI 社製のドローンであり DJI Mobile SDK に対応していれば，機種やカメラジンバル（カメラのブレを自動補正する装置）に依存することなく飛行指示を出すことが可能である．
表 4.1 アプリケーションの開発・デバッグ環境
開発環境 OSWindows10

IDE

Android Studio 2.x

デバッグ端末ASUS ZenPad3

デバッグ端末の OS

Android 7.1

使用 SDK

DJI Mobile SDK for Android[7]Google Map API[8]表 4.2

DJI Phantom4 のスペック

最大飛行速度

72km/h最大フライト時間

28min

GPS 精度±0.3m~1.5m

最大伝送距離3.5km

撮影画像解像度

4K

ズームデジタル 2 倍

ジンバル制御

Pitch
表 4.3

DJI Inspire1+Zenmuse Z3 のスペック

最大飛行速度

79km/h最大フライト時間

19min

GPS 精度±2.5m

最大伝送距離3.5km

撮影画像解像度

4K

ズーム

光学 3.5 倍，デジタル 2 倍

ジンバル制御Roll，Pitch，Yaw
19/33

4.2

アプリケーションの概要
自動追従アプリケーションの概要を図 4.1 に示す．本アプリケーションは，MainActivity.java，

Dijkstra.java，CSVRead.java という 3 つの Java クラスからなる．CSVRead.java は，クリークマップを読み込み，各クラスにデータを返す．Dijkstra.java は，受け取ったクリークマップ
を無向グラフとして読み取り，ドローンの現在位置から目的地までの最短経路を探索する．
MainActivity.java は，受け取ったデータを使いドローンを自動操縦する．それぞれのクラスの詳細については，次節で説明する．

図 4.1 自動追従アプリケーションの概要

4.3

アプリケーションの詳細

4.3.1 CSVRead.java
本システムにおいてクリークマップは，全ノードの座標を保持するノードマップと，ノード同士の接続関係を保持するリンクマップから構成される．CSVRead.java は，それぞれのマップを読み，全データを配列に格納して返す．また，与えられた緯度経度座標に最も近いノードを返すメソッドを有する．

20/33

4.3.2 Dijkstra.java
Dijkstra.java では，受け取ったクリークマップを無向グラフとして読み込み，ダイクスト
ラ法[9]による最短経路探索を行う．ダイクストラ法とは，グラフ理論においてリンクの重みが負でない場合の単一始点最短経路問題を解くための最良優先探索によるアルゴリズムである．
グラフをプログラムで扱う場合，隣接リストとして実装する方法と，隣接行列として実装する方法の 2 つがある．隣接リストでは，ノードごとにリンクを格納して管理し，隣接行列
では，行列を使いリンクを管理する．隣接リストでは，グラフが疎である場合に，存在しないリンクを表すメモリ領域を必要としない．一般にダイクストラ法では，隣接リストを使った方がより効率が良いとされている．Dijkstra.java では，隣接リストを用いたダイクストラ
法による経路探索を実装した．
探索の重みは，ノード間の距離(m)を小数点以下で切り上げ，それぞれのリンクのコストとして設定している．佐賀市南部のクリークマップを使いダイクストラ法で経路探索を行った
結果を図 4.2 に示す．このクリークマップは，3 章で作成したものとは異なり，簡単のためにノード数を極力減らしたものである．ここでは，車両位置に依存しない経路探索を行っているため，純粋な最短経路を導出している．図 4.2 では，全てのノードが接続しているように見えるが，実際にはクリークが途切れている箇所があり，接続関係にないノードが存在する．そのため，ダイクストラ法による経路探索結果が遠回りしているように見えるが，接続しているクリークを辿る経路の中から，正しく最短経路を導出している．
本システムでは，ドローンは車両を追従しながら目的地まで向かう．そのため，「ドローンの位置から，車両に近いノードを経由し，目的地へ至る最短経路」の探索を行い，探索結果のうち車両に近いノードまでを飛行することが望ましい．追従時に飛行するのは車両に近いノードまであるが，目的地までの最短経路が保証された状態で車両追従を行うことで，ドローンは効率的に経路選択ができる．
現段階では，車両から 200m 以内にあるリンクのコストを 1/8 に，車両から 400m 以内にあるリンクのコストを 1/4 に，車両から 600m 以内にあるリンクのコストを 1/2 に変更している．このように，車両位置に応じて動的にリンクのコストを変更することで，経路探索結
果が車両位置付近のノードを経由するようにしている．車両位置によって動的に重みづけを変更した経路探索結果を図 4.3 に示す．車両位置に応じて動的にリンクのコストを変更すると，探索結果はドローンの位置から目的地までの最短経路ではなくなるが，車両付近を経由しつつ目的地へ向かう最短経路を得ることができる．もし，目的地を考慮せずにドローンの位置から車両付近への経路探索と追従飛行を繰り返したとすると，ドローンに最も近いノードが行き止まりのクリークだった場合，ドローンは一度通ったクリークを後戻りしなければならず，飛行経路に無駄が生じる．
「ドローンの位置を始点に，車両に近いノードを経由して目的地へ至る最短経路」が常に保証される本手法では，目的地までスムーズに経路探索と追従ができると考える．

21/33

図 4.2 ダイクストラ法による経路探索結果

22/33

図 4.3 車両位置によって動的に重みづけを変更した経路探索結果

23/33

4.3.3 MainActivity.java
MainActivity.java では，アプリケーション画面の表示とドローンの自動追従制御全般を実行する．自動追従制御アルゴリズムを図 4.4 に示す．このアルゴリズムに沿って機能の実装を行った．アプリケーションを起動すると，1 秒おきにサーバとの通信が行われる．事故や火災の位置情報がサーバに JSON 形式でアップロードされると，アプリケーションは，目的地の緯度経度情報を取得し，目的地に最も近いノードをゴールとして設定する．また，画面上の地図タップでも同様に，タップした位置に最も近いノードをゴールに設定することができる．ドローンのプロポと端末を接続すると，アプリケーションはドローンの種類，位置，
正面方向，飛行速度等にアクセスできるようになる．
プロポと端末を接続し，ゴールノードが設定された状態で“GO”ボタンを押すと，自動追従スレッドが実行される．ドローンは，高度 120m まで自動で上昇し，現在位置から最も近いノードへ移動する．車両が移動すると，ドローンは，ゴールノードまでの経路探索を行い，選択されたノードリストのうち，現在のノードから車両位置に最も近いノードまでを辿る飛行を実行する．これを目的地まで繰り返すことで，車両の自動追従を実現する．ゴールノードに到達したドローンは，自動追従スレッドを停止し，その場でホバリングし続ける．
プロポと端末を接続し，アプリケーションが実験用ドローンである Inspire1 を検出すると，
カメラジンバルの自動制御が実行される．ドローンの緯度経度と高度と向き，車両の緯度経度から，車両が画面中心になる向きを計算し，カメラの向く方向を修正する．車両とドロー
ンが 240m 以上離れると，距離に応じて段階的に光学ズームを実行する．これらの機能によって，“GO”ボタン押下以降一切ドローンの操作をすることなく，アプリケーション画面に車両周辺の交通状況を映すことができる．
開発の初期段階では，自動飛行の実行には DJI Mobile SDK に実装されている Waypoint
Mission を用いた．Waypoint Mission とは，指定した緯度経度高度リストを順に自動飛行させる機能であり，実装が容易である．しかし，この機能は拡張性に欠ける上，車両追従実験
1 において速度面で不足があった．そのため，Waypoint Mission と同等の機能を有し拡張性のある自動飛行機能を作成した．この機能を T-Waypoint Mission と名付ける．
T-Waypoint Mission は，ドローンの姿勢を直接制御する．T-Waypoint Mission のフローを図 4.5 に示す．機体を前進させる場合は Pitch 値を，機体を回転させる場合は Yaw 値を変化 さ せ る ． こ れ は ， DJI Mobile SDK に 実 装 さ れ て い る 仮 想 コ ン ト ロ ー ラ で あ る
VirtualStickMode を介して実行できる．ドローンは，ノードに到達すると次のノードに向けて回転する．次のノード方向への誤差が±0.5 度未満になると回転をやめ，前進を開始する．
ドローンは，前進しながら常に次のノード方向との誤差を計算し，誤差が±0.1 度以上になった場合，飛行しながら少しだけ回転し方向の修正を行う．ドローンは，次のノードのまでの距離が 3m 未満になると前進をやめ，更に次のノードに向け回転を開始する．これを繰り返しゴールノードまで自動飛行するのが T-Waypoint Mission である．
ノード上での回転角度が大きい場合，ドローンは停止する必要があるが，大きな回転を必要としない場合，ノードに到達する度に停止するのは時間のロスに繋がる． そのため
T-Waypoint Mission では，ドローンの現在位置と次のノードと更に次のノードのなす角が15 度未満の場合，ノード上で停止することなく旋回しながら先のノードに向けて飛行する．
自動飛行シミュレート中のアプリケーション画面を図 4.6 に示す．画面右下の地図では，
24/33

ドローン本体の位置と向きを赤いドローンアイコンで，車両の位置を黄色の車両アイコンで，ゴールの位置を青の G アイコンで表している．複数立っている青いピンは，経路探索結果のうち車両付近までのノードであり，T-Waypoint Mission の飛行経路である．

1.

目的地の緯度経度を取得

2.

目的地に最も近いノードを目的地ノードに設定

3.

ドローンを飛行させ，最も近いクリークマップのノードへ移動

4.

While(現在ノード!=目的地ノード)

4.1. 現在ノードから目的地ノードへの経路探索を行う
4.2. 探索結果のルート上にあるノードから車両の位置に最も近いノードを選び移動
5.

自動飛行終了図 4.4 自動追従制御アルゴリズム

25/33

図 4.5

T-Waypoint Mission のフロー

26/33

4.4

車両の自動追従実験

ドローンによる車両の自動追従飛行を実行し，実用上の問題の有無を評価する．ドローンの飛行高度を 120m に設定し，クリーク上を飛行しながらの車両追従を行う．使用したドローンは DJI
Inspire1，カメラジンバルは DJI Zenmuse Z3 である．アプリケーションの追従方式としてT-Waypoint Mission を採用し，画面の GO ボタン押下後ドローンは離陸し，クリーク上を飛行しながら車両を追従する．また，カメラジンバルを自動制御し車両周辺状況のストリーミングを行う．GO ボタン押下後，操縦者はプロポを一切操作しない．
ドローンを車両の後方に設置し， GO ボタン押下後は，操縦者はドローンの操作を一切行っていない．ドローンは，自動的に離陸し，経路探索を行い，追従を開始した．カメラジンバルは，
ドローンの 3 次元座標と車両の 2 次元座標から，車両をカメラ中央に捉える角度を計算し，車両の方向を向き続けた．ドローンと車両の距離が近い時は，カメラは自動的にズームアウトし，車両周辺をより広く映した．ドローンと車両の距離が遠い時は，カメラは自動でズームインし，車両周辺をより大きく映した．ドローンは，車両が移動するたびに経路探索とクリーク上の飛行を繰り返し，車両を追従した．ドローンは，車両を見失うことなく 434 秒間クリーク上を飛行し，目的地に到達した．車両を画面に捉えた時のアプリケーション画面を図 4.6 に示す．画面中央が車両の位置である．図 4.6 から，車両周辺の交通状況が把握できたことがわかる．
自動追従アプリケーションは，車両追従中のドローンと車両のログデータを 1 秒おきに記録する．自動追従を停止するときに“STOP・CLEAR”ボタンを押すと，ログデータは，アプリケー
ションを実行しているタブレット端末内に CSV ファイルとして保存される．このログデータをグラフ化した．
図 4.7 にドローンと車両間の距離グラフを示す．横軸が時間（秒）を表し，縦軸が距離（m）を表す．距離グラフから，ドローンと車両間の距離の移り変わりと，ドローンと車両間の平均距
離が読み取れる．ドローンが追従を開始すると，ドローンと車両は 106m まで接近したが，その後は，ドローンと車両間の距離が 883m になるまで離れ続けた．以降は，ドローンが車両に徐々に接近し，目的地に到達している．ドローンと車両間の平均距離は，476m だった．Zenmuse Z3の望遠端では，ドローンと車両間の距離が 1100m まで車両の識別が可能であった．また，映像と操作の項目では，ドローンと車両間の距離が 700m 以上で映像の乱れや操作の安定性の低下が確認された．今回の実験では，常にドローンは画像での識別が可能な距離にあったが，映像や操作の安定性が保証できない距離まで離れることがあった．
図 4.8 にドローンと車両の速度グラフを示す．横軸が時間（秒）を表し，縦軸が速度（km/h）を表す．速度グラフから，ドローンと車両それぞれの速度の移り変わりと，平均速度が読み取れ
る．車両の最高速度は 57km/h，平均速度は 21km/h，ドローンの最高速度は 54km/h，平均速度は 18km/h だった．今回の実験で用いた DJI Inspire1 は，カタログスペックでは最高速度が79km/h である．カタログスペックの示す最高速度は，手動操縦で飛行モードを“スポーツモー
ド”に設定した場合のものであり，プログラムによる自動操縦では，54km/h が最高速度となる仕様である．ドローン・車両共に平均速度が低く出ているのは，それぞれ待機時間が長かったためだと考えられる．車両が経路探索可能な位置へ移動するまで，ドローンがクリークのノード上で長時間停止し待機することが 4 度あった．車両の動き待ちによるドローンの停止時間は，合計
141 秒間であった．車両は，目的地に到達後，ドローンが目的地に到達に到達するまでの 76 秒間を停止して待機していた．ドローンの飛行速度と車両の走行速度は，ほぼ同じであった．ドロー
27/33

ンと車両間の平均距離が 476m と大きく離れたのは，車両の動き待ちによるドローンの停止時間が長かったためである．
図 4.9 にドローンと車両が辿った経路を示す．横軸が経度であり，縦軸が緯度である．出発地
が右下，目的地が左上である．出発地では，ドローンと車両をほぼ同じ位置からスタートさせたが，ドローンの目的地は，目的地として設定した位置から最も近いクリーク上のノードであるた
め，車両の目的地とは異なる位置である．ドローンは，車両追従開始直後は，車両位置に最も近いクリークを選択し飛行した．車両は，2 度進路を変えた後，遠回りして目的地へ向かった．その間，ドローンは，車両に合わせて遠回りせずに，ほぼ最短経路で目的地へ向かう経路選択をし，また，飛行進路が決定した状態で頻繁に待機した．

図 4.6 車両を画面に捉えた時のアプリケーション画面

28/33

1
14
27
40
53
66
79
92
105
118
131
144
157
170
183
196
209
222
235
248
261
274
287
300
313
326
339
352
365
378
391
404
417
430
443
1
14
27
40
53
66
79
92
105
118
131
144
157
170
183
196
209
222
235
248
261
274
287
300
313
326
339
352
365
378
391
404
417
430
443

1000
ドローン-車両間距離

ドローン速度
車両速度

ドローン-車両間距離（平均）

900

800

700

600

500

400

300

200

100

0

図 4.7 ドローンと車両間の距離グラフ

ドローン速度（平均）

図 4.8 ドローンと車両の速度グラフ

29/33
車両速度（平均）

60

50

40

30

20

10

0

33.194

ドローン経路車両経路

33.19233.19

33.18833.18633.18433.18233.18

33.17833.176130.258130.26130.262130.264130.266

図 4.9 ドローンと車両が辿った経路

30/33

130.268130.27

4.5

考察

ドローンは，ほぼ最短経路で目的地へ向かう経路選択をし，緊急車両に合わせた遠回りを行えなかった．また，飛行進路が決定した状態で頻繁に待機した．これらの原因には 2 つ考えられる．
1 つ目は，飛行判定である．車両が信号待ちなどで停止している間にドローンが車両に最も近いノードへ追いついた場合，ドローンはその位置で待機しなければならない．ドローンが次のノードへ飛行を待機する判定基準を，「現在のノードから車両までの距離＜次のノードから車両までの距離」とした．この飛行判定が，本来想定していた車両の停止ではないところでドローンの動きを止めた．対策として，車両とドローンの距離が遠い場合は，飛行判定を行わず，車両に接近する飛行を行うということが挙げられる．
2 つ目は，クリークマップの動的重みづけ手法である．現段階では，車両から 200m 以内にあるリンクのコストを 1/8 に，車両から 400m 以内にあるリンクのコストを 1/4 に，車両から 600m以内にあるリンクのコストを 1/2 に変更している．今回の実験のように，探索を行うタイミングと，車両・ドローン・目的地の位置関係によって，ドローンの飛行経路を車両方向へ誘導できなくなる場合がある．対策として，現在採用しているクリークマップの動的重みづけ手法を改善することが挙げられる．または，動的重みづけ手法を撤廃し，ドローン位置から車両位置，車両位置から目的地といったように，二段階の経路探索を行い，それぞれの結果からドローンが最も効率よく目的地まで飛行できる経路を選択するという新手法の実装が考えられる．
またドローンは，実験場所である佐賀市南部の“干潟よか公園”周辺のクリークは，ほぼすべてが直線であるにも関わらず，ドローンの飛行ログを見ると，蛇行している箇所があった．この箇所でドローンがクリークマップからコースアウトしている．実験当日は地上で 6m/s の風が吹いていた．一般に，高度が上がるにつれて風は強くなるため，上空 120m ではより強い風が吹いていたと考えられる．ドローンが風に流されながら飛行中の方向修正を繰り返したため，蛇行したと考えられる．
これらの実験結果から，ドローンによる車両の自動追従飛行システムは，現時点では，視界のひらけた人口密集地外であれば，実用できると考える．現時点で人口密集地における実用性を断言できないのは，ドローンと車両間の平均距離が 476m と遠いためである．ズームカメラの性能
上，車両と周辺の交通状況を識別するには十分な距離であるといえる．しかし，人口密集地ではドローンと車両が離れれば離れるほど，車両や車両の選択する経路が建物の陰に隠れる確率が高くなる．ドローンと車両の距離が離れるにつれて，カメラの向きが垂直から水平に近くなり，建物や街路樹といった障害物の高さが無視できなくなるためである．そのため，人口密集地で実用するには，ドローンと車両間の平均距離が更に近くなるように，システムを改善する必要がある．
また，ドローンと車両間の距離が 200m 以内であるときのドローンの録画データは，車両と周辺の交通状況がわかりやすかった．カメラの角度がより垂直に近いため，車両をほぼ真上から俯瞰する映像となっていたことや，車両とドローンの距離が十分に近いため，カメラはズームする必要がなく，広角端で周囲の状況を広く見ることができたことなどがその理由に挙げられる．よって，ドローンと車両間の平均距離が 200m 以内となるようシステムを改善する．

31/33

第5章
まとめと今後の課題
本研究では，事故検知／通報アプリケーションの改良と，ドローンによる事故状況確認システム，および救急隊の到着時間を短縮するための緊急車両
自動追従システムを開発した．
落 下 時 に よ る 衝 撃 を 誤 検 知 し な い 事 故 判 別 ア ル ゴ リ ズ ム を 構 築 し た ．ま た ，
事故発生時の音声データの取得機能を開発／実装した．さらに，スマートフ
ォンの加速度センサ情報から，移動モードを判別する機能を開発した．これ
らの成果により，事故発生時の状況をより詳細に検知／通報できるようにした．これらの機能を，スマートフォンを所持させたダミー人形と自動車との衝突実験により，有効に機能することを確認した．
事 故 現 場 上 空 か ら の 撮 影 デ ー タ を 用 い て ，事 故 現 場 の 3 次 元 モ デ ル を 試 験 的に作成した．また，事故現場までの飛行ルートを，ドローンが落下しても危険性の少ない河川やクリーク上空を選んで飛行するアルゴリズムを開発した．
この結果，佐賀市内で発生した事故に対して飛行する場合，そのルートの約90％ が ， 落 下 し て も 安 全 な 地 点 の 上 空 と な る こ と が シ ミ ュ レ ー タ 上 で 確 認 できた．さらに，緊急移動する救急車を常に追従する自動飛行アルゴリズムにより，事故現場へと向かう救急車が，運転手からは見えない距離にある進路
前方の交通状況を，助手席から常に確認できるようになった．これにより，事故現場への移動の際に渋滞を避けた移動が可能になると期待される．
本研究で提案した交通事故の救急システムにより，歩行者や自転車の運転者が，自ら通報できないような事故にあった場合でも，自動で事故発生とその位置や音声，移動モードなどの情報を，自動通報できるようになった．また，通報された位置情報に従い，ドローンを事故現場まで安全なルートで自動 飛 行 さ せ ，上 空 か ら 事 故 の 様 子 を 動 画 で 撮 影 し ，3次 元 モ デ ル を 作 成 で き るようになった．これらのシステムは試験段階であり，実用化までに解決すべ
き課題はいくつもある．これらを踏まえつつ，交通事故の被害を軽減につながる救命システムの開発を継続する．

32/33

[1] 佐賀新聞 Live（2016 年 1 月 28 日付）＜http://www.saga-s.co.jp/news/saga/10101/272951＞[2] 佐賀新聞 Live（2017 年 1 月 5 日付）＜http://www.saga-s.co.jp/news/saga/10101/392405＞[3] 朝日新聞デジタル（2018 年 2 月 16 日付）＜https://www.asahi.com/articles/ ASL2H40ZLL2HTTHB006.html＞[4] 佐賀県医務課，佐賀県ドクターヘリの概要について＜https://www.pref.saga.lg.jp/web/var/rev0/0143/2475/201416144154.pdf＞[5] 特定 NPO 法人救急ヘリ病院ネットワーク，HEM-Net <http://www.hemnet.jp/where/>[6] 2017 年 5 月 24 日，佐賀広域消防にてインタビュー[7] DJI Mobile SDK for Android Reference＜https://developer.dji.com/iframe/mobile-sdk-doc/android/reference/packages.html＞[8] Google Maps API＜https://developers.google.com/maps/?hl=ja＞[9] K.メールホルン，P.サンダース，“アルゴリズムとデータ構造 基礎のツールボックス”，
丸善出版株式会社 201233/33