Share
Embed
点群ライブラリPDALをGoogleColabにて実行する方法の紹介
2025年3月12日に開催されたオンライン勉強会 AIMTG にて PDAL や GoogleColab を利用した地表面抽出について発表しました。
発表動画
https://www.youtube.com/watch?v=ckoaf4ANTt0&t=2204s
Kenta Itakura
March 11, 2025
Transcript
18 slides
-
3次元点群からの地表面抽出について 1 • 樹木や建物の高さ計算や 物体認識のヒントに有効 3次元点群の前処理として地表面抽出は重要 地表面抽出の事例はこちらをご参照ください:点群から道跡の検出を行った事例 (奈良文化財研究所高田様との取り組み)
https://speakerdeck.com/kentaitakura/dian-qun-karadao-ji-nojian-chu-woxing-tutashi-li 東京都デジタルツイン実現プロジェクトによる公開データを使用しています https://info.tokyo-digitaltwin.metro.tokyo.lg.jp/ • 森林の道跡検出に有効 -
地表面抽出の実行について SMRFはMATLABで利用可能(簡単に実装可能・ライセンス必要) 地表面:茶色 画像出典: • https://www.mathworks.com/help/lidar/ref/segmentgroundsmrf.html • https://pdal.io/en/2.8.4/ 3
PDALでもSMRFフィルタが実装されており、Pythonから呼び出し可能 (簡単に実装可能・無料のオープンソースライブラリ) -
PDALおよびGDALについて 4 PDAL (Point Data Abstraction Library) • 点群データを処理するためのオープンソースライブラリ
GDAL (Geospatial Data Abstraction Library) • 地理空間データの読み込み、書き出し、変換、解析を行うためのオープンソース ライブラリ 画像出典: • https://pdal.io/en/2.8.4/ • https://gdal.org/en/stable/ -
Google Colabについて 5 Google Colaboratory (Google Colab) • Googleが提供するクラウドベースのJupyter
Notebook環境 • Pythonをブラウザ上で簡単に実行でき、特に機械学習やデータ分析の用途で広く 利用可能 • ローカルPCの性能に依存せず、大規模なデータ処理や機械学習が可能 • 手軽に利用できリンクによる共有も可能 -
Google Colabを利用したPDALの実行:環境構築 6 PDALを利用するにはcondaによるAnacondaの環境構築が有用(※) • Google Colabにてcondaを利用することを想定 ※以下のPDALのページでは、Dockerなどの他の方法よりcondaが便利と書い ています:https://pdal.io/en/stable/workshop/conda.html
画像出典:https://github.com/conda-incubator/condacolab condacolabというGoogleColab上でcondaを使うためのライブラリがある • Google Colabにcondacolabをインストールして利用 -
Google Colabを利用したPDALの実行:地表面抽出 8 PDALではJSON形式のファイルを用いて処理の流れを定義 • JSONファイルの内容は以下の通り ① ② ③
④ ⑤ ① 入力ファイル名の指定 ② 指定した条件で外れ値(ノイズ)をフィルタリング ③ 外れ値を除去 ④ SMRFによる地表面抽出を実行 ⑤ 分類結果を再フィルタリングし出力ファイル名を指定 -
Google Colabを利用したPDALの実行:SMRFによる地表面抽出 9 SMRF (Simple Morphological Filter) • 地形の形状とスケールに基づくフィルタリングを組み合わせた地表面抽出方法
詳細は以下の資料をご参照ください • スライド:https://speakerdeck.com/kentaitakura/di-biao-mian-chou-chu-nofang-fa-dearusmrfnituiteshao-jie • 動画:https://www.youtube.com/live/VGPjSKqM8lM?t=1756s -
Google Colabを利用したPDALの実行:CSFによる地表面抽出 10 CSF (Cloth Simulation Filter) 「上下を反転させた地形の上に空から布を落とす」ことをシミュレーションするアルゴ
リズム Wuming Zhang, Jianbo Qi, Peng Wan, Hongtao Wang, Donghui Xie, Xiaoyan Wang & Guangjian Yan (2016). An Easy-to-Use Airborne LiDAR Data Filtering Method Based on Cloth Simulation, remote sensing, 8, 501. • 地面の上では布は接触して止まるため 布が接触した場所を地面とみなす • JSON フ ァ イ ル で “type”:”filters.csf” のように定義 -
Google Colabを利用したPDALの実行:実行例 11 実行例① • 東京都のデータでの実行例 対象の点群データ 地表面抽出の結果 •
地表面が適切に分類され、地表面付近の植え込みとも分離されている 東京都デジタルツイン実現プロジェクトによる公開データを使用しています https://info.tokyo-digitaltwin.metro.tokyo.lg.jp/ -
GoogleColabを利用したPDALの実行:実行例 13 実行例③ • 静岡県の山間部のデータでの実行例 • 山の地形に合わせて地表面抽出され、赤丸のようにギャップとみられる箇所も適切 に分類できている 対象の点群データ
地表面抽出の結果 東京都デジタルツイン実現プロジェクトによる公開データを使用しています https://info.tokyo-digitaltwin.metro.tokyo.lg.jp/ -
Google Colabを利用したPDALの実行:まとめ 16 Google Colab上でPDALを用いてSMRFを実行する方法について解説 ポイントは以下の通り • PDAL:オープンソースの点群処理ライブラリで、フィルタリングや地表面抽出が可能
• Google Colab:conda環境を構築することで、クラウド上でPDALを利用できる オープンデータを用いて、PDALによる地表面抽出を実行 • PDALは都市計画やインフラ維持管理など幅広い分野で活用できる • JSON形式ファイル:PDALでの処理の流れを定義する • SMRF:点群データからの地表面抽出アルゴリズムで、JSONファイルによって定義 • SMRF:点群データからの地表面抽出アルゴリズム