uc23-17-2

3D都市モデルとBIMを活用したモビリティ自律運航システム(車両)v2.0

実施事業者株式会社竹中工務店 / アダワープジャパン株式会社
実施場所大阪市夢舞地区周辺 / 横浜市みなとみらい
実施期間2023年10月~2023年11月
Share

3D都市モデルをマップとして利用した無人搬送車両(AGV)の自律走行システムを構築。自律走行型AGVの社会実装を目指す

実証実験の概要

都市部における大規模な再開発が活性化する一方、建築資材の運搬を担う物流業界では慢性的な人手不足が課題となっており、自律走行が可能な無人搬送車両(AGV)活用への期待が高まっている。
無人搬送車両における自律走行システムは、LiDARSLAMを用いる方法が近年主流になりつつあるが、この手法は点群マップの事前取得が必要となるため、煩雑かつ高コストなプロセスや、走行ルート設定の柔軟性が低いといった課題がある。このため、2022年度に「3D都市モデルとBIMを活用したモビリティ自律運行システム」では、事前の点群マップ取得を不要とする無人搬送車両の自律走行システムを開発し、有用性と課題を明らかにした。

今回の実証実験では、昨年度のシステムをさらに発展させ、点群生成プロセスの精緻化や、3D都市モデルを配置した仮想空間内での点群マップ取得プロセスの汎用化等の改修を行う。これにより、無人搬送車両の自律走行システムの汎用性と可用性を高めることを目指す。

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

資材運搬や物流等を担う搬送車両の自律走行システムとしては、GPS測位による自己位置測位技術を用いることが一般的だが、ビルの間など受信環境が悪い場所での精度担保が難しく、公道での安全な自律走行の確立には至っていない。他方、LiDAR SLAMを用いた自己位置測位は高い精度を担保することが可能だが、点線マップの事前取得のコストやルート選定の硬直性が課題となっている。
そのため、2022年度に「3D都市モデルとBIMを活用したモビリティ自律運行システム」では、3D都市モデルを配置した仮想空間の中で仮想車両及び仮想LiDARを稼働させることで想定ルート上の点群データを取得し、これを用いて現実空間の自己位置測位を行うシステムを開発した。このシステムを用いた実証では、建物の壁面や特徴点が多い場所では自己位置測位が成功することがわかったが、駐車場の植え込みやフェンスなど3D都市モデルで再現されていない都市設備の影響によって現実世界と3D都市モデルを配置した仮想空間が乖離する場合は自律走行が難しいという課題が残った。

今回の実証実験では、これらの課題を克服するため、自己位置測位の精度向上や仮想点群生成プロセスの汎用化に向けた改修を行う。精度向上については、3D都市モデルから仮想LiDARを用いて点群マップを生成するアルゴリズムの改良を行い、異なる都市特性や3D都市モデルの各LODに対応した点群マップ生成アルゴリズムの実現を目指す。また、仮想点群生成プロセスの汎用化については、3D都市モデルを配置した仮想空間内で想定ルートの生成や仮想LiDARの稼働にゲームエンジンを用いて簡易的な実行が可能なシステムを構築する。

これにより、従来手法による自律走行システムの課題を克服しつつ、3D都市モデルのみから生成した点群マップによる汎用的かつ高精度の自己位置測位手法を確立し、無人搬送車両の自律走行システムの社会実装を目指す。

大阪府大阪市此花区(2D)
大阪府大阪市此花区(3D)
神奈川県横浜市西区(2D)
神奈川県横浜市西区(3D)

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

今回の実証実験では、仮想点群生成プロセスの汎用化を実現するため、3D都市モデルから仮想LiDARを用いて点群マップを生成する「PLATEAU PCL Generator」を開発した。

PLATEAU PCL Generatorは点群マップを出力するにあたり、具体的には、
「①3D都市モデルの配置機能」「②ルート作成機能」「③車両パラメータ設定機能」「④LiDARパラメータ設定機能」「⑤点群取得機能」の5つの機能を新規開発した。

①3D都市モデルの配置機能は、CityGML形式の3D都市モデルを読み込み、Unityシーン上に配置する。実装にはPLATEAU SDK for Unityを用いた。

②ルート作成機能は、Unityシーン内の3D都市モデル空間を車両が走行するルートを設定する。実装にはPLATEAU SDK for Unityで読み込んだ道路モデルをベースとして、道路モデル上にWayPointのオブジェクトを配置し、そのWayPointオブジェクトを繋げたコースを仮想車両が走行するルートとして設定するプログラムを開発した。

③車両パラメータ設定機能は、仮想LiDARを搭載した車両を②で作成したルートで走行させることで走行ルート周辺の空間の三次元点群測量を行う。仮想空間上で実際に車両を走行させることにより、現実空間における点群測量と同じ状況を再現することができる。車両の横幅や車高といった形状や走行速度、LiDAR取付け位置等を設定することができる。実装にはシーン上に配置された車両オブジェクトを対象に、PLATEAU PCL Generator上のダイアログに直接数値を入力することでFloat型のデータとして車幅、高さ、長さに反映するUIを開発した。

④LiDARパラメータ設定機能は、③の機能と連携し、仮想空間上の車両に搭載するLiDARの照射飛距離や角度、周波数やステップ数を設定する。実装にはシーン上に配置されたLiDARオブジェクトを対象として、③の実装と同様にPLATEAU PCL Generator上のダイアログに直接入力された数値を照射飛距離や角度、周波数やステップ数を反映できるUIを開発した。

⑤点群取得機能は、③及び④と連携し、LiDARを搭載した車両が走行する際の点群の照射をシミュレートすることで、仮想空間上で点群が照射された建物モデル、道路モデル、都市設備モデル、植栽モデルの点群を取得する。実装にはLiDARシミュレーションライブラリであるRobotec GPU LiDARを用いた。

これらの機能により、昨年度の実証実験における課題であった仮想点群生成のプロセスを汎用化し、3D都市モデルが整備されている都市であれば、仮想空間内のシミュレーション結果を基にPCD形式(※)で点群マップを簡易に出力することが可能になる。
※:3D点群データの処理と可視化のためのオープンソースのライブラリである、Point Cloud Libraryで開発されたファイル形式

PLATEAU PCL Generatorで作成した点群マップは、現実空間を走行する車両から取得した点群データとリアルタイムでマッチングさせることで、自律走行オペレーションのための自己位置測位を行う。自律走行のオペレーションシステムとしてAutowareの点群マッチング機能を使用する。データ処理のリアルタイム性の向上のため、出力された点群マップを事前にCloud Compareを用いて軽量化した上でAutowareに読み込みを行った。

自動走行用の自己位置測位システムとして、Autowareの機能であるAutoware-sensing及びAutoware-localizationを用いた。まず、Autoware-sensingはLiDARから取得した点群データをAutowareに取り込む役割を担う。具体的には、LiDARから取得した点群データを取り込み、Autowareで処理するためにROS(Robot Operating System)メッセージに変換の上、Autoware-localizationへ出力する。

次に、Autoware-localization は先述したAutoware-sensing から出力された点群データと、あらかじめ仮想空間上で生成した点群マップを突合するスキャンマッチングという手法を用いて自己位置測位を行う機能を担う。スキャンマッチングには、代表的な2つの手法、ICP(Iterative Closest Point)とNDT(Normal Distributions Transform)がある。ICPは地図データ群とセンサデータ群の2つの点群間の最近傍点を対応点とし、対応関係にある点間の距離の合計が最小になる箇所をマッチングする手法である。課題点として、ICPは対応関係にある各点の距離を計算する必要があるため、入力点群の数が多くなると計算量が増大してしまうことが挙げられる。一方、NDTは仮想空間で生成した点群マップをボクセルごとに区切って正規分布を計算し、LiDARセンサーから得られた点群データとマッチングする手法である。課題となる計算量も、ボクセルごとのマッチングのため、低く抑えることができる。そこで、今回の実証実験では、自律走行への活用を見据えてリアルタイム性が必要なことから、計算速度が速く、点群データのノイズに強いNDTスキャンマッチングを採用した。

スキャンマッチングは代表的な2つの手法であるICP(Iterative Closest Point)とNDT(Normal Distributions Transform)を比較し、採用を検討した。ICPは地図データ群とセンサデータ群の2つの点群間の最近傍点を対応点とし、対応関係にある点間の距離の合計が最小になる箇所をマッチングする手法であり、NDTは仮想空間で生成した点群マップをボクセルごとに区切って正規分布を計算し、LiDARセンサーから得られた点群データとマッチングする手法である。ICPは、対応関係にある各点の距離を計算する必要があるため、入力点群の数が多くなると計算量が増大する一方、NDTはボクセルごとのマッチングのため計算量を抑えることができる。今回の実証実験では、自律走行への活用を見据えてリアルタイム性が必要なことから、計算速度が速く、点群データのノイズに強いNDTスキャンマッチングを採用した。

開発したシステムの有用性検証として、PLATEAU PCL Generatorを用いて、3つの観点から検証を行った。第1に、3D都市モデルから自動運転走行において有用性のある点群マップの出力が出来るのか。第2に、仮想空間から出力された点群マップと現実空間での点群データをマッチングさせることにより自己位置測位の精度が昨年度に比べて向上するのか。第3に、都市部と郊外による沿道の建物数の差で自己位置測位の精度に差が生じるのか。以上である。なお検証では、無人搬送車両を想定し、実車両を用いた走行では、トラック車両に全方位LiDARのOS1(Ouster社製)を搭載することで点群データの取得を行った。

PLATEAU SDK for Unityを用いて読み込んだ横浜市みなとみらい地区のシーン
PLATEAU PCL Generator ルート設定の様子
PLATEAU PCL Generator 車両設定の様子
PLATEAU PCL Generatorで仮想車両が走行している様子
PLATEAU PCL Generatorから出力された点群マップ
走行検証で利用した車両

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

PLATEAU PCL Generatorで出力された点群マップの精度検証として、現実空間でLiDARを搭載した車両が走行した点群マップとの自己位置推定の精度を比較した。

PLATEAU PCL Generatorを用いて作成した点群マップと、現実空間で3D LiDARを搭載したトラック車両を走行させて取得した点群の二種類の点群を用いてマッチング精度を検証した結果、3D都市モデルを活用した自己位置推定の精度には、エリア内の建物の密集度、都市設備モデルの有無、3D都市モデルの更新頻度に大きく左右されることが明らかになった。

まず、対象エリア沿道において建物が密集して建ち並び、都市設備モデルのLOD3が整備されているみなとみらいエリアでは、自己位置推定の精度が全体的に高かった。具体的には、都市設備モデルのLOD3と建築物モデルのLOD2が整備されているエリアでは、マッチング可能な点群データが多いため、車両の自律運航に必要な基準値を超える数値が安定していた。また、都市設備モデルがなく建築物モデルLOD2が整備されているエリアにおいても、狭い路地では自己位置推定の精度が高かったものの、幅員が広い道路に出ると精度が下がる傾向もあった。これは現実空間の点群取得において、片側に複数の走行車線があるため両側に他の車が走行することでレーザーが遮られ、建物の点群が連続的に取得できずマッチングの精度が落ちることが原因と考えられる。

次に、対象エリア沿道に建物が間隔を空けて建ち並び、都市設備LOD3が整備されている舞洲エリアでは、全体的に精度が低い値となった。精度低下の原因は、舞洲エリアでは3D都市モデルの地物と現実の地物に大きな差異があったこと挙げられる。具体的には、夢舞大橋の一部の箇所は3D都市モデルでは片側2車線で、1車線はガードレールで塞がれ走行不能(※2:画像参照)だったが、現実空間(2023年12月時点)では、片側3車線で、ガードレールが撤去(※3:画像参照)されていた。しかし、建物が少ない場所でも、都市設備(ガードポール、ガードレール)がある箇所ではマッチングの精度が自己位置推定可能な基準を上回る数値まで上昇したことから都市設備も精度向上に重要な要素であることが判明した。

※2:3D都市モデルの夢舞大橋 ガードレールがあり、片側2車線となっている
※3:現実世界の夢舞大橋 ガードレールの位置が変わっており、片側3車線となっている

別の観点として、車両の速度が精度に与える影響を確認するために、現実空間での検証用車両の走行は時速15km/h、30km/h、40km/hと速度を変えて実験を行った。15km/h、30km/hでは、みなとみらい・舞洲ともに精度に大きな差異は見られなかったが、40km/hで走行した場合、建物が少ない舞洲エリアでは、自己位置推定の精度が顕著に減少した。これは移動速度に対して、マッチングや自己位置推定の処理が間に合わず特徴点となる数少ない地物を通過してしまうため点群データのマッチングが出来ていない可能性が高いことが原因である。そのため、自己位置推定機能を具備した自動運転車両の走行速度を上げる際にも、精度面の検証結果と同様にエリア内の建物の多さが影響することが分かった。

今回開発したシステムの有用性検証としては、PLATEAU PCL Generatorを使用した点群マップの作成方法や、実際の実証結果をもとに、自動運転用のマップを制作する事業者に対してヒアリングを行った。仮想空間上を車両が走行することでPCD形式の点群マップが自動的に生成されることへの利便性の高さや、それを用いた自律運航の精度の高さについては一定の評価が得られた。一方で、より実用的な運用を目指して、仮想空間内での交通量や通行量のシミュレーション機能の付加や、業界内で使用されている他のソフトウェアへの対応による汎用性の向上について高機能化の余地があることが確認できた。

Autowareにて自己位置の測定をしている様子 俯瞰ビュー
Autowareにて自己位置の測定をしている様子 上空ビュー
自己位置推定 リアルタイム精度監視グラフ

参加ユーザーからのコメント

ユーザーヒアリングに参加した地図製作事業者からのコメント

・PLATEAU PCL Generatorを使用し、現実空間に近い仕様にパラメータを設定した上で点群マップがPCD形式で直接出力できる機能は使いやすい。
・PLATEAU PCL Generatorを使用する際に、現実空間に近づけるために車の交通量や人の通行量などのシナリオを入力する機能があるとよい。拡張的な用途として自動運転時のLiDARの評価や危険な場所の事前検証に活用出来そう。
・Autowareだけでなく、他の自動運転のソフトウェアにも応用可能となると汎用性が広がる。
・3D都市モデルの更新頻度は課題だが、3Dモデルとして読み込んだ後に、仮想空間上で読み込んだ地物の変更を行えるとより良いのではないか。

今後の展望

都市部における大規模な再開発が活性化し、自律走行が可能な無人搬送車両活用への期待が高まっているが、GPS測位、LiDAR 共に精度面や効率面で汎用的なサービスとしては課題が残っている。これらの課題解決策として、今回の実証では昨年度開発した車両用の自律走行システムをベースに、汎用性と可用性の向上に向けた点群生成プロセスの精緻化や仮想空間内での点群マップ取得プロセスの汎用化に向けた改修を行った。実用化に向けては、今回の新たに抽出した課題を迅速に解決し、より高精度な運搬サービスを生み出すと共に、本システムの更なる高機能化を志向したい。

3D都市モデルを活用したPLATEAU PCL Generatorを開発し、3D都市モデルが整備されている地域であれば、仮想空間内で自律運航に必要な高精度な点群マップを作成することを可能にした。今年度開発したシステムによって昨年度課題となった15km/hを超える車両速度でのマッチング精度については良好な結果が得られ、また、今年度は都市部のような建物の密集するエリアでの検証も行い、汎用性の高さを確認した。

課題として抽出された3D都市モデルと現実空間の乖離の影響や、建物数が少ないエリアでより速度を上げた場合(40㎞/h)の精度向上は、仮想空間内で取り込んだ3D都市モデルに対する事前処理や自己位置推定の計算時間短縮などを引き続き検証し、従来手法による課題を克服しつつ、3D都市モデルのみから生成した点群マップによる高精度かつ低コストな自律走行システムとしての社会実装を目指す。