2025年10月18日土曜日

LiDARデータから樹高データを出す

当方初心者です。Qgisの白帯を持っているくらいで。


そもそもなぜ樹高データが欲しくなったのかといえば、森林簿のデータに首をかしげていたから。過去にやった主伐時の毎木データを見ると、林分蓄積が森林簿データと50%くらいズレていた。
50%をそのまま係数として他の森林で考えてもいいのだろうけれど、どうせなら樹高から林分材積を再現したほうが、もう少し確からしいような気がした。

材料はChatGPTとLiDARデータ、ターミナル、そしてQgisの3点になります。

ChatGPTは僕の代わりにソリューションを考えてもらう役割。Qgisは実際に図化したものを視認するためのソフトウェア。
QgisのGUIでdemから標高を取り出すことも可能で、どうする?とGPTに訊かれたんだけど、ターミナルで処理することにした。理由は今後、少なくとも100枚程度はどうようの処理をする必要があることと、処理過程のファイルも保持しておきたかったこと。付け加えると、Qgis経由の処理があまり安定しなかった(パソコンスペックの問題)もある。もう処理は独立してやったほうがいいだろうという判断。

demから樹高を取り出す考え方をかいつまんで説明。
LiDARはレーザー測量で、飛行機とかから地上にレーザーパルスを照射し、地上からの返りを測定する。照射されたパルスは、樹冠で返るものもあれば、地上に到達して返ってくるものもある。この返ってきたデータがdem。demを解析して、樹冠と地上の差分が取れればおおよその樹高データが取れるでしょ、という流れ。

で、素材となるdemはこちら
東京都デジタルツイン 多摩地域点群データ
こちらがなんと無料。すばらしい。4点/m2以上パルスが飛んでいれば、ある程度それらしい絵になると聞いたことがあったけど、こちらのデータは16点/m2とのこと。すばらしい。データは重いですけどね。

ターミナル、windowsではコマンドプロンプト、を介した作業方法については略記。
・lasファイルのダウンロード
・地表面の正規化(地面と上空の切り分け)
・上空と地面の差分の抽出、1m四方のグリッドに集約して図化

地表面の正規化について少しだけ説明。

  絶対標高(未正規化)
250m ──────────────── 樹冠の点(DSM)
      │       ●
      │     ●
200m ──────────────── 地面の点(DTM)
      │
      └── 地面からの高さが混ざっている状態

      ↓

  正規化後(地面を0mに揃える)
  50m ──────────────── 樹冠(HAG=50)
      │       ●
      │     ●
   0m ──────────────── 地面(基準)
      │
      └── 地面をゼロにして高さだけ残した状態

地表面は当然場所によって異なる。ここでいう正規化とはデータの標高を0mに統一する作業。これによって、さまざまな場所の樹木について統一した物差しで樹高を取り出すことができる。
実際の作業は月20ドル払って丁寧に教えてもらったほうがいい。僕が説明するよりずっと丁寧だ。金はかかるけど捗るぞ。


その後はQgis上の作業。出来上がったファイルをインポートしてカラーバンド図化。赤が高いところ、青が低いところ。

下の青い部分はR3に皆伐した箇所。右下の赤丸がポイントの樹高。26.98m。本当かどうかは知らん。でもさ、測棹ポールを15mまで伸ばしてさらに高い木の樹高を睨むよりはまだ確からしい数字な予感はある。
なんだろう。この作業は何かしらの爽快感がある。やったった!みたいな。実作業上、僕は特になにもしていなくて。コマンドをコピーして打ち込む、せいぜい伝書鳩くらいの役割しかないのだが。
あと、どのへんに大物があるんだい。という素朴な疑問に答えてくれる。特に面積があると埋まっていた秘宝が見つかるかもしれない。

これで話はひとまずおしまい。ようやく夏休みの自由研究が終わりました。


ただ、結論として樹高データから想定材積の算出はうまくいっていない。その林に何本の木があるのかが、このデータからではわからないからだ。
東京都の収穫予想表を片手に、樹高データから材積推定を行ったけど、せいぜい10%程度の誤差しか見いだせなかった。
そもそも成立本数は収穫予想表から「あてはまりのいい」データ準用しているから、当たり前といえばそのとおりではある。たぶん、森林簿よりもいくらか樹高は高い。でも50%も高くないのだ。「あてはまりのいい本数」よりも現実の森林は相当本数が多い。これが誤差が残る理由だろう。
理由は、過去間伐があんまり入っていない(と思われること)と、以前の管理人が下層植栽をたくさん行っていたこと。
一方、demから本数を推定するのは樹高よりも難しいみたい。上の図を見るともこもことしていて本数を数えられそうなんだけど。下層木はたぶん上層樹高末端くらいまでは大きくなっていて、林分構造が上から見ただけだとうまく把握できないんだろう。個人的な仮説ですけど。

そうすると、やっぱり乱暴に係数50%(ちょっと怖いので30%くらい)で積んでおいて、施業前にプロット調査をやって補正するっていう感じなのかな、と思っています。

あと、この種の処理をするとパソコンスペック的な不安がある。処理速度的にも容量的にも。Qgis上でchmデータを動かすとさすがにヌルヌルとは動かない。代表理事さまにもう少し賢いパソコンを所望したいと思うのだけれど、どうなんですかね。かなりコストは抑えていると思うんですけどね。


余談なんだけど、前職でLiDARデータほしいなあ、と思っていて、でも手持ちのdemはないし、近隣の砂防事務所とかでは1点/m2とかすごく荒いのしかなくて。治山事業で、ひこーき飛ばしましょうよって焚き付けていたことを思い出した。放火魔を始めた時はすでに担当が変わっていて、下心が見えすぎていたせいでまったく火がつかなかった。

もし僕が治山技術者として純粋培養されていたら絶対やってたな。崩壊地形判読できるし、予算要求前のヒヤリング前の測量とかいらなくなるんだぜ。
11月末の初冬。みぞれ混じりの雨だったりする日。悴む手で間縄と赤白ポールを握る日々を思い出せばそれくらいの効率化は図られてしかるべしと思うんだけど。ようやく測量して事務所に帰ったから、ダムの方向がなんか変だったとか、わりと笑えない手戻りが発生したりするんだ。


当時、人はこれからどんどん減っていくから使えるものは何でも使ったほうがいいですよ、と僕は言っていたんだけど、今でもそう思っている。