2018/06/04

文系のための「GEEの幾何オブジェクト(Geometry)」

Google Earth Engine(GEE)でリモートセンシングを行う上で、
幾何情報を上手く扱うことも重要である。
そこで、今回は ee.Geometry について理解を進めたいと思う。

ee.GeometryGEEオブジェクトの一つであり、
GISにおけるベクトルデータを格納するためのクラスのである。
取得した衛星画像のImageCollecitionのフィルタに用いる場合にも使う。

ee.Geometry を作る方法はいくつかある。
まずは、プログラムから座標値を使って入力する方法
最も単純な点(ポイント)からはじめてみる。

まず、点(ポイント)データを作成するには座標値が必要となる。
奈良と言えば「平城宮跡」ということで、平城宮跡の座標値を用いる。
東経が135.795度、北緯が34.6905度。かなり適当…。

この値を使ってee.GeometryのPointを作るには以下のようにする。

var heijou_pt = ee.Geometry.Point(135.795, 34.6905);

実際に作った幾何オブジェクトを使って簡単な処理を行ってみる。
まず、このオブジェクトが地図の中心に移動するようにし、
次に、このオブジェクトを地図上に表示してみる。

Map.centerObject(heijou_pt,15);
Map.addLayer(heijou_pt);

一行目の「Map.centerObject()」の部分では、
現在のマップオブジェクトについて、
中心となるオブジェクトを「heijou_pt」に指定している。

ふたつ目のパラメータの「15」ズームレベル。縮尺範囲を指定できる。

二行目の「Map.centerObject()」の部分では、
現在のマップオブジェクトについて、
heijou_pt」を地図上に新しいレイアとして追加している。

次に、面(Polygon)についても実験してみる。
今度は、平城宮跡の範囲を面として描き、
先ほどの続きとして、レイヤに追加する。

var heijou_pl = ee.Geometry.Polygon(
    [
      [135.7888270,34.6864400],
      [135.8011865,34.6864400],
      [135.8011865,34.6940265],
      [135.7888270,34.6940265],
      [135.7888270,34.6864400],
    ]
  );

Map.addLayer(heijou_pl, {color:"green"}, "平城宮跡");

今度はレイヤに追加する際にちょっとパラメータを追加している。
可視化パラメータとして、「{color:"green"}」を追加し、
レイヤ名として「"平城宮跡"」をパラメータに追加している。

実際に続けてコードを書くと以下のようになる。



そして、出力結果は以下の通り。




0 件のコメント:

コメントを投稿