![見出し画像](https://assets.st-note.com/production/uploads/images/84451531/rectangle_large_type_2_58e0433dfaffab872460afc1ac104883.png?width=1200)
Google Earth Engineで水域を可視化してみる
夜間、曇天、雨天に強い合成開口レーダー(SAR)
衛星には以前紹介したLANDSATのような主として太陽光からの反射光を観測する光学衛星があります。ただその観測原理上、夜間にはデータが取れない、曇りや雨など雲がかかっていると地上が見えないためデータが取れないというものがあります。※熱画像などの例外はあります。
その弱点を克服するものとして、レーダー衛星の使用が進んでいます。実際には分解能(解像度とも)を上げる工夫としての合成開口という仕組みも使っているのですが、その原理はかなり高度な話になるので「合成開口 衛星」などと検索してみてください。
その合成開口レーダー、英語ではSAR(Synthetic Aperture Radar)といいますが、日本のJAXAを含め各機関で衛星の打ち上げと運用がなされています。
それぞれ、観測波長、観測時間帯、観測可能偏波、観測モードなどが異なっていますので、こちらも興味ある方は「SAR 衛星」などと検索してみてください。
Sentinel-1の特徴と利用分野
さて、主題であるGoogle Earth Engineでは欧州宇宙機関(European Space Agency: ESA)が運用しているSentinel-1という衛星データが利用できます。
Sentinel-1の諸元を運用機関であるESAのウェブサイトで調べて見ると、特徴(What?)には以下のようにあります。
The first in the Copernicus Sentinel series, a constellation of two identical radar imagery satellites in the same orbit, providing an all-weather, day-and-night supply of images of Earth’s surface
2基の同一軌道を通るレーダー衛星のコンステレーションによって全天候、昼夜観画像の提供が行われるものとなっています。なおコンステレーション(Constellation)という言葉とても好きなのですが、本来は星座という意味ですが、群れという意味もあり、よく複数衛星による運用システムに使用されています。
さて、利用分野(Applications)としては以下のようにあります。
Monitoring sea ice and icebergs monitoring of land ice (glaciers, ice sheets, ice caps) river and lake ice monitoring oil spills and ships marine winds & waves land-use change, agriculture, deforestation land deformation and support to emergency management such as floods and earthquakes
様々な利用分野がありますが、最後に、emergency management such as floods and earthquakesという語があります。日本に住む以上、地震や地殻変動、火山活動は気になりますし、また個人的に、森林伐採や土地利用変化、農業利用も気になるところですが、今回は主に洪水に触れたいと思います。
Google Earth EngineでのSentinel-1利用
前置きが長くなりましたがここからが本題です。まずは以下の画像を見てください。
これは2022/8/3からの大雨で浸水被害のあったと報道されている最上川流域の山形県川西町周辺です。7/23と8/4(日本時間)の2つのSentinel-1データをGoogle Earth Engineを使って合成し、変化部分が青や赤(赤はこの画面では存在が見えないですが)になるように色をつけたものです。なおフィルタリング効果をかけて少し画像が見やすくなるようにしています。
観測時間はいずれも日本時間の朝5:43となっています。
※オリジナルでは1日前の20:43のデータ(UTC)として表記されています。
![](https://assets.st-note.com/img/1660192054343-K7O414Kl1i.png?width=1200)
この元となっているデータ画像を1時期ずつ表示したものが以下の画像です。
![](https://assets.st-note.com/img/1660194358215-K6vEm5ubMS.png?width=1200)
![](https://assets.st-note.com/img/1660194527997-GOIJxw7e9N.png?width=1200)
両者には2週間程度の違いしか無く、ほどんどの場所で大きな変化がありませんが、8/4のデータ画像では最上川河川沿いに、黒い地域が広がっているのがわかります。
さて、両方の画像の北西(左上)端には、こちらにも細長く黒い地域が広がっています。「ながい百秋湖」(下の地図参照)の湖面が見えています。レーダー観測において水面はこのように黒く映ることが多くなります。
衛星側から発出されたレーダーは湖面で反対側に反射されて、衛星に戻ってこない(鏡面反射ともいいます)ため、結果として信号が小さくなってこうみえるのですが、この特徴を使って水面を検出する利用がよく行われます。2022/8/4のデータ画像ではこの水面の範囲が広がっていると考えられるわけです。
![](https://assets.st-note.com/img/1660194718939-Pqrt4gFH8Q.png?width=1200)
下記にGoogle Earth Engineのサンプルコードを載せておきます。検索位置Geometry.Pointや取得日のfilterDateの数値を変えることで別の場所や期間にも適用できます。検索時期には幅を持たせていますが、このコードで検索抽出されたデータはそれぞれ1データだけでした。
Image.catは1つの白黒データ画像をRGB(赤、緑、青)の順に割り当てるものですが、このようにすることで、最初に示したような発色にすることが出来ます。一見逆に見えますが、水面相当の黒い部分を青く表示するためにこのようにしています。
フィルタリングはしてもしなくてもいいのですが、SARのデータを可視化すると細かいノイズ(スペックルノイズと言われます)が多くみられるので、画像の可読性をよくするために実施しています。
// 画像の検索位置
var aoipoint = ee.Geometry.Point(140.09,38.03);
// VV偏波を取得
var SARcollection = ee.ImageCollection('COPERNICUS/S1_GRD')
.filterBounds(aoipoint)
.filter(ee.Filter.listContains('transmitterReceiverPolarisation', 'VV'))
.select('VV');
// データ取得日で抽出
var before = SARcollection
.filterDate('2022-07-21', '2022-08-03')
.sort('system:time_start',false)//日付降順(遅い方)
.first();
var after = SARcollection
.filterDate('2022-08-03', '2022-08-10')
.sort('system:time_start',true)//昇順(速い方)
.first();
// 参考に画像情報を表示
print(before);
print(after);
// 画像のmedianでフィルタリングして画像を見やすくする
var SMOOTHING_RADIUS = 30;//画像のmedianを取る範囲仮に30m
var beforeSmoothing=before.focal_median(SMOOTHING_RADIUS, 'circle', 'meters')
var afterSmoothing=after.focal_median(SMOOTHING_RADIUS, 'circle', 'meters')
var sarcomposite = ee.Image.cat(afterSmoothing,beforeSmoothing,beforeSmoothing);//2時期の画像を合成
// 画像表示
Map.centerObject(aoipoint,12);//画像中心表示
Map.addLayer(beforeSmoothing, {min:-30,max:0}, '2022/07/22 20:43(UTC)(7/23 5:43 JST)');
Map.addLayer(afterSmoothing, {min:-30,max:0}, '2022/08/03 20:43(UTC)(8/4 5:43 JST)');
Map.addLayer(sarcomposite, {min:-30, max: 0},"2時期合成画像");
このコードで検索される範囲は実際にはこの範囲となっています。かなり広い範囲が1つのデータ画像に含まれていることがわかります。
追記)上の図は拡大したものでしたが、実際には、この範囲が同時に写っています。つまり、広域のそのときの状態を一度に見ることが出来るわけです。この広域性、同時性は衛星観測の特徴の1つです(もう1つ周期性というのもあります)。海や湖(南にある猪苗代湖)も黒く写っています。海が真っ黒ではなく灰色に写っているのは波などの影響もあります。
![](https://assets.st-note.com/img/1660197570602-ww40EH5A8u.png?width=1200)
画像使用上の注意、留意事項等
この画像はあくまでSAR画像の重ね合わせ結果を可視化しただけのものであり、必ずしも被害を示したものではありません。タイトルで浸水想定域とも書かずに単に水域と書いたのもそのためです。
短期的な水域変化には、ダム湖の水位変動や遊水施設への河川水の誘導などがあります。また春先などには、水田への水入れがあり、それが画像データで大きな変化となって見られることもあります。そのため、現場情報を加味して多角的に図を判断することが必要です。
また、衛星が観測されてからそれが利用できるようになるまでは、どうしても時間がかかります。観測機関ではその時間がなるべく短くなるように努力されていますが、上空を通る時間は予め決まっているため、リアルタイムで任意の場所が見られるかと言うと難しいところです。
1つの衛星では1日2回の観測が可能なので、それを別機関の衛星と組み合わせながら使用することでそのGAPを埋める努力がなされています。
海外で起きる大規模な洪水では、とても平坦かつ広い範囲で、相対的にゆっくりと進行する(じわじわ水位が上がる)ものも多いので、地形条件や災害の特徴に応じて様々に使用されているようです。
今後台風シーズンを迎えます。災害が起きないのが一番いいのですが、このようなデータは日頃から見慣れていないと使えないものなので、その意味でこのようなデータハンドリングをする環境があるのは貴重だと思っています。
最後に、このたびの大雨災害において被害に合われた方々に心よりお見舞いを申し上げます。
この記事が気に入ったらサポートをしてみませんか?