今回はこのニュースから。
【独自】山の所有者激怒「間伐」のはずが…ヒノキ6000本“勝手に”伐採 災害リスクも
https://news.tv-asahi.co.jp/news_society/articles/000257322.html
間伐を依頼したつもりだったのが、どういうわけか意図しない形状の伐採が行われたという話。
まあ、もし散髪で暑いからちょっと髪、スイておきますねと言われて、トラ刈りにされたら、まあ怒ると思うので、所有者の気持ちはわかる。
とはいえ、どんな経緯で、いつから、そうなったのかもきになる所。
経緯については不明だが、衛星画像でみると、いつごろからそうなったかはすぐわかる。
いつものように sentinel-hub で検索。
オクシズというのは初めて知ったが、場所はこの辺りらしい。
2021/05/12
遡るところ2021年の5月までいくと、この時点ではまだ目立った伐採は行われていないようである。
左上に茶色い部分が結構あるが、その辺は落葉樹なのだろう。
尚、標準のカラー画像(通常の色に近い雰囲気に調整されている画像)だと把握しにくいが、NDVIを選ぶと、植物の状態が一気にわかりやすくなる。
右側の緑色の画像がNDVI 用の画像である。
これが、2021年8月の画像に行くと、突如恐竜の化石みたいな模様が出現。
左のカラー画像でいうと、中央に茶色い部分が出現している。
2021/08/10
さらに、これが、直近ではどうなっているかというと
2022/5/22
と言う感じで、たしかにさらにくっきりしているように見える。追加で伐採された可能性が見て取れる。
しかし、もしここ数ヶ月で追加の伐採があったとしても、この線状の伐採は、昨年の8月ぐらいの写真に出現しているので、トラ刈り自体は、すでにその時点で行われていたのだろう。
画像で見ただけでも、十分、分かるのだが、今回は、pythonも使ってみようということで、まずは、差分をだしてみる。
差分を出すコードは
import cv2
import numpy as npimg1 = cv2.imread('t20210512-ndvi.png',0)
#img1 = img1[0:500, 0:500]#トリミングしたければ
img2 = cv2.imread('t20220530-ndvi.png',0)
#img2 = img2[0:500, 0:500]
diff = cv2.absdiff(img1,img2)
cv2.imwrite("diff.png", diff)
という感じで至って単純。
左側が、ビフォアアフターの差分画像だが、これだと逆にわかりにくい。
なぜわかりにくいかというと、2つの時期が異なる人工衛星の画像は、「気象上の要素(雲)」と「環境の変化(主に植生の変化を想定)」という要素が含まれていてそれが差分になってしまうからである。
それを除去するのに、今回は、2021年の画像と、それに近い日付の画像をとってきてマスクを作ることで対応した。
マスクの作り方はざっというと、小さな差分を残して大きな差分をばっさり消した感じ。マスクの作成コードは割愛するが、ピクセルをある程度の塊にして、一定の閾値を設ける事でノイズの除去をしようとしている。
上記の右側の画像が作成したマスク画像である。
それを組み合わせて、作成した画像がこちら
先ほどの、差分画像に対し、マスクを使い可能な範囲の不要な要素を削除。
残った部分より対照部分を赤にした画像を作成、カラー画像と重ね合わせるとこんな感じとなる。
最近の画像に着色してもよかったのだろうが、イメージはできると思う。
尚、単純な差分解析なので、関係ない部分も着色されていると考えてください。
ところで、森林伐採というと、CO2排出がーという人がいるが、CO2の観点で言うと、実は木というのは伐採しても、また新たに植ええれば良いものである。
もっとも植林においては、適切な間伐方法があるし、森の豊かさをまもるという観点で、森林保護も重要だ。
とはいえ、木を植えるとCO2が減るみたいな、誤ったイメージは適度に修正しておくことが、正しいSDGsのためには重要だと思う。
参考:
木を植えても二酸化炭素は減らない。カーボン・ニュートラルの話