Help us understand the problem. What is going on with this article?

Google Earth Engine覚書1 〜よく使う関数〜

More than 3 years have passed since last update.

ee.ImageCollection.size()

Integer返してくれるって書いてあるけど、実際にはNumberの形で返ってくる。.size()の使い方もee.Number参照。

ee.Number

Numberというオブジェクトは、imageCollection.size() + 1みたいなことはできない。
imageCollection.size().add(1)とすればおk。
四則演算とか簡単な計算は以下のとおり。

四則演算.js
.add(right) //rightと足し算
.subtract(right) //rightを引き算する
.multiply(right) //掛け算
.divide(right) //rightで割り算。0で割ると0になる。
.mod(right) //剰余

ここで問題なのはif文とかで分岐したい時。
もちろんif(ee.Number==0)とかはできない。
if使いたいときはee.Algorithms.Ifを使用する。

if文.js
var landsat5=ee.ImageCollection(ee.Algorithms.If(size.mod(2).eq(0),load_L5.merge(allone_col),load_L5));

new Date()

var date_ymd=new Date(year,month,date);

ここで問題なのは引数の値。
yearは年をそのままいれればいいんだけど、month,dateはちょっとへん。
monthは0が1月、dateは2が1日を指す。
それで時間はなぜかそのままにすると15:00:00となる。

reduceNeighborhood()

imageにかけるもの。
それぞれのピクセルの周りのピクセルをみて何かするためのもの。

image.reduceNeighborhood(reducer, kernel, inputWeight)

引数として、
reducerには任意のreducerを、
kernelには任意のkernel(丸とか四角とか、あるピクセルの周りのどの範囲をreduceの対象にするか)を、
inputweightにはウェイトをmaskとかkernelの形で渡す。

例えば、

var landsat5=ee.Image(/*なんかの画像*/);
var edge_mask=landsat5.reduceNeighborhood({
    reducer: ee.Reducer.count(),
    kernel:ee.Kernel.square(1,"pixels"),
  });

こんな感じにしておけば、
すべてのピクセルにおいて、周りの有効ピクセルが何個あるかを確認できる。ただし自分のピクセルもカウントされて、最大9になる。
要は端っこを抽出できるってこと。

ee.Kernel.square

単位を"pixels"にしておくと、ズームの度合いに応じて変化してしまう。
"meters"でも同様。
原因はピクセルの大きさがズームレベルによって変化するから。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away