uc22-025

ドローンリアルタイム・ナビゲーションシステム

実施事業者株式会社A.L.I. Technologies
実施場所山梨県甲府市
実施期間2022年4月〜2023年3月
Share

3D都市モデルを活用したSLAM技術によるドローンの高精度な自律飛行を実現。自律飛行型ドローンの社会実装を促進する。

実証実験の概要

2022年度からドローンのレベル4飛行(有人地帯での補助者なし目視外飛行)が解禁され、ドローン運用の安全性の要請が一層高まっている。そのためには、汎用的で信頼度の高い3D地図上にドローンの飛行位置情報を精度高く三次元的にマッピングする技術が必要となる。また、3D地図上への三次元マッピングには大容量の演算処理が必要であるが、エッジ(ドローン機体上)の演算負荷を低減させるストリーミング技術も未確立である。

今回の実証実験では、3D都市モデルを活用したドローンの自己位置を高精度に推定する自己位置測位システムを開発する。また、それらの処理をサーバーで処理してエッジに配信する技術検証を行う。

実現したい価値・目指す世界

ドローンのレベル4飛行解禁に伴い、今後有人地帯での目視外飛行が一般化していくことが予想される中、ドローン同士の衝突や事故を防ぐため、飛行するドローンの高精度な自己位置推定の必要性が高まっている。また、高精度な自己位置推定には高い演算能力が求められるが、航行時間やペイロードの観点からエッジ(ドローン機体上)には可能な限りデータ取得するためのデバイスやセンサーのみを載せたいというニーズがあり、エッジではなく通信を介してサーバー上で演算処理等を行うなど効率的な手法の確立が求められている。

今回の実証実験では、3D都市モデルの形状をマップデータとしたLiDAR SLAMおよびVisual SLAMによって自己位置推定を行うシステムを開発し、3D都市モデルを3D地図としたドローン航行ナビゲーションシステムと組み合わせることで、都市部における安全な自律飛行・目視外飛行の実現を目指す。また、飛行に必要な演算処理をエッジではなく、サーバー上で中央集権的に行うドローンオペレーションシステムを構築し、エッジ側と比較検証を行う。

将来的には、全国展開される3D都市モデルを活用することで、あらゆる場所で効率的にドローンのレベル4飛行を実現し、自律飛行型ドローンの社会実装を促進することを目指す。

対象エリアの地図(2D)

検証や実証に用いた方法・データ・技術・機材

本実証実験では、3D都市モデルのLOD2建築物モデルのジオメトリとテクスチャを活用したドローンの自律飛行を実現するため、エッジ側に搭載可能なLiDAR SLAMシステムとVisual SLAMシステムの開発を行った。さらに、ドローンのペイロードの増加を目的とした両SLAMの演算処理をサーバー側で行う仕組みを構築した。

SLAMとはLiDARセンサーやカメラ映像から自己位置の推定と自己位置推定に必要な3D地図の作成を同時に行うものである。このうち、LiDAR SLAMでは、レーザー光を使用して距離データを取得し、3D地図と比較することで自己位置推定を行う。Visual SLAMでは、カメラ画像を使用して3D地図と比較することで自己位置推定を行う。Visual SLAMで用いるカメラはLiDAR SLAMに利用するLiDARセンサーと比較して低コストであるが、照明条件に敏感であり、移動物体や反射物によって影響を受けることがある。今回は事前地図として3D都市モデルを利用し、SLAMで作成した地図とマッチングさせることで高精度な自己位置推定を行うシステムを構築した。

LiDAR SLAMシステムのエッジ構成としては、アトラックラボ社製ドローン「HIYOKO18」をベースとした基本構成に、LiDARセンサー(Ouster社製OS-128)を搭載した。コンパニオンコンピューターとしてNvidia社製のJetsonを搭載しており、ドローンが飛行中に取得するデータ処理に利用している。LiDAR SLAMシステムは、ROSをベースに、LiDAR SLAMのライブラリであるamcl3dを利用して構築した。このシステムが用いる3D地図として、3D都市モデル(LOD2建築物モデル)を元に軽量化のために3次元グリッドマップ化を行ったマップデータをプリロード(事前地図化)している。3次元グリッドマップの生成には、OctoMapライブラリを利用した。OctoMapを利用することで3次元空間を八分木構造(立方体空間を2x2x2の小さな空間に再帰的に分割する構造)で表現することができ、軽量かつ効率的な地図を作成することができる。またOctoMapはROSとの統合が容易であり、様々なロボットアプリケーションで適用することができる。自己位置推定にはamcl3dライブラリを利用し、適応的モンテカルロ位置推定と呼ばれるパーティクルフィルタを用いた手法を利用している。この手法では、多数の粒子を空間上に分布させ、各粒子の尤度(尤もらしさ)を演算したうえでその重みづけ平均として自己位置を推定する。この尤度を計算する際に、各粒子の位置でLiDAR点群データを取得したと仮定し、事前に準備したOctoMap化された3D都市モデルの形状との比較を行うことでその粒子位置の尤度を演算する。

Visual SLAMシステムのエッジ構成では、LiDAR SLAMのシステムと同機体にIntel社製のステレオカメラを搭載した。自己位置推定には、Visual SLAM用のROSライブラリであるORB-SLAM3を用いた。3D都市モデルの使用方法として、まず仮想空間上に3D都市モデルを配置し、その中でORB-SLAM3を含めたシミュレーション環境における仮想飛行を実施する。この仮想飛行によって得られた映像から仮想的な環境地図情報を作成する。このようなシミュレーション環境上での事前飛行を実施することで、現地での飛行なしに環境地図情報を作成することができる。なお、ORB-SLAM3では事前地図がなくても自己位置推定や周辺地図作成は可能だが、事前の環境情報がない場合、環境や使い方によって精度や安定性に課題が生じることがある。具体的には、センサー誤差の積み重ねにより地図や移動経路に歪みが生じることや、一時的に自己位置をロストした場合にロスト前後の相互関係を把握するのが難しいということなどが挙げられる。本実証実験では3D都市モデルを事前地図として活用することで、こういった課題にアプローチした。

両SLAMシステムによる自己位置推定状況を可視化するシステムとして、Rviz(ロボット位置、計測データ、3D地図等、ロボットシステムに関連するデータを視覚化するためのツール)とA.L.I. Technologiesが独自に開発したドローン運航管理システム(UTM)である「COSMOS*」を使用した。COSMOS上で自己位置推定の結果を可視化するため、位置データの繋ぎ込みや3D都市モデルを表示させるための追加実装を行った。 Rvizは、SLAMで使用するセンサーから得られる生データの視覚化を目的として利用した。一方、COSMOSは SLAMの自己位置推定情報に加え、GPS情報や3D都市モデルとドローン及びその軌跡、フライトルート等、様々なドローンに携わる情報を表示できるため、より視覚的にドローンを運航させることを目的として使用される。

*COSMOS: Centralized Operating System for Managing Open Sky

また、両SLAMシステムによる自己位置推定を実現するためには大きなコンピューティング能力が必要となる。このため、飛行中のデータ処理はエッジ側では行わず、外部の演算処理サーバーで行うクラウドコンピューティングの仕組みも構築した。この仕組みは、ドローンに搭載したデータ転送用のコンピュータとクラウド上に存在する演算サーバーをインターネット経由で接続し、VPN経由でROSのMaster/Slave構造を構築することで効率的かつセキュアな通信を目指したものである。地上側の通信デバイスとしてはdocomoの5G回線が利用可能なモバイル5Gルータを使用し、演算処理サーバーと最大限の通信速度で通信ができる体制を確立した。

実証実験のフィールドとなった山梨県甲府市 山梨県庁舎敷地内での飛行
LiDARSLAMシステムを搭載したドローン

検証で得られたデータ・結果・課題

本実証実験では、3D都市モデルとSLAM技術の組み合わせにより、これまで難しいと考えられてきた都市部における高精度の自己位置推定を実現し得ることが明らかとなった。高層建築物が密集する都市部では、従来型のGNSS単独の自己位置測位ではマルチパス誤差(衛星からの電波が建物や地表等で反射し複数の経路で受信されることで発生)の発生などにより精度担保が困難と考えられてきたが、3D都市モデル・SLAM・ドローンの組み合わせによりGNSSの電波状況に依存しない自己位置推定が可能となった。さらに、このような高負荷のコンピューティングをサーバー側での演算処理によって行うことにより、エッジ側のコンピュータ性能に限定されない安定的な自己位置測位を実現し得ることもわかった。

LiDAR SLAMシステムは、誤差数センチメートルの測位が可能なRTK測位の位置情報と比較することで精度検証を行い、その位置誤差は1m以内であった。GPSの精度が概ね数m~10m程度であることを考慮すると、3D都市モデルとLiDAR SLAMを用いることでGPSを超える位置推定精度が得られる可能性が示された。また、LiDAR SLAMにおける位置推定精度をさらに向上させるためには、事前地図データのグリッドをさらに細かくする必要があることが分かった。より汎用的で自己位置推定精度の高いシステムを開発するためには、ハードウェアのアップグレードによる演算処理性能の向上、それに伴う供給電源の強化、さらには後述のサーバー側でのデータ処理技術の確立が必要となると考えられる。

Visual SLAMシステムの精度検証は、同様にRTKと比較を行い、誤差は0.3m以内であった。Visual SLAMで高精度な位置推定を行うためには現状整備されている3D都市モデルの精度では十分ではない可能性が確認された。具体的にはテクスチャの解像度が十分ではない箇所やLOD2では表現しきれない形状の箇所では自己位置推定がうまくいかない場合が多くみられた。

通信を介したサーバー側での演算処理での検証においても、エッジ側とサーバー側とのデータ転送を行いながらサーバー側での演算処理を行うことで、自己位置推定精度を維持できることが確認できた。

サーバー上での処理による自己位置推定が可能になることで、都市部での飛行に必要不可欠な基盤データとなる3D都市モデルをサーバー上に集約させておくことが可能になり、エッジ側への負荷が軽くなると考えられる。これによってエッジ側に搭載できるペイロードが増え、積み込めるハードウェアの選択肢も増えることで様々な処理への対応が可能となり、より多様なユースケースでの活用の幅が広がるというメリットが考えられる。一方で、今回のようなシステムは飛行するフィールド上空の通信強度に依存することになるため、通信環境によっては処理がタイムアウトするなどの課題も明確となった。

LiDAR SLAM飛行において周囲の環境を把握しながらドローンが自己位置を測位する様子
Visual SLAM飛行においてカメラ映像の特徴点から自己位置を測位する様子
ドローンの運航状況を遠隔管理システムCOSMOSからモニタリング

今後の展望

本実証実験ではLiDAR SLAMとVisual SLAMの自己位置推定における、3D都市モデルの有用性を確認することができた。また、サーバー側での演算処理においても同様の結果が得られたことからドローンの社会実装及び事業化に向け、特にペイロードの増加に有利と考えられる軽量な一般的なカメラが利用可能なVisual SLAMとサーバーを介した演算処理システムを組み合わせたドローンシステムの検討を進めていきたい。

具体的には、3D都市モデルによるVisual SLAMシステムの更なる精度向上が挙げられる。高精度な自己位置推定のためには、より精度の高い形状やテクスチャを持つ3D都市モデルが必要となる。例えば、LOD3データや高精細なテクスチャデータなどのリッチなデータを活用することで、精度向上を図れると考えられる。一方でデータ量の増加に合わせてハードウェアのアップグレードや軽量なアルゴリズムの検討も同時に進める必要がある。また、サーバーを介した演算処理システムは、通信速度に依存するという課題があるものの、上空の通信状況や強度を事前に調査・把握し視覚的に把握することで、安定した処理が可能な航路を事前に特定することで活用が進められると考えている。

3D都市モデル×ドローンというコンセプトに基づき、レベル4飛行に向けた安全・安心を担うシステムとして高度化を図り、今後もドローンの社会実装の実現を加速させていく。