ImageCollection
で表される画像の時系列の中央値を取得する必要がある例について考えてみましょう。ImageCollection
を減らすには、imageCollection.reduce()
を使用します。これにより、図 1 に示すように、画像のコレクションが個々の画像に減らされます。具体的には、出力はピクセル単位で計算され、出力の各ピクセルは、その位置にあるコレクション内のすべての画像の中央値で構成されます。平均、合計、分散、任意のパーセンタイルなどの他の統計情報を取得するには、適切な Reducer を選択して適用する必要があります。(現在利用可能なすべてのリデューサーの一覧については、コードエディタの [ドキュメント] タブをご覧ください)。最小値、最大値、平均値などの基本統計情報の場合、ImageCollection
には、min()
、max()
、mean()
などのショートカット メソッドがあります。これらのメソッドは、reduce()
を呼び出す場合とまったく同じように機能しますが、結果のバンド名にレジューサーの名前が追加されることはありません。

ImageCollection
を削減する例として、パスと行でフィルタされた Landsat 5 画像のコレクションについて考えてみましょう。次のコードでは、reduce()
を使用してコレクションを 1 つの Image
に減らしています(ここでは、説明を目的として中央値 Reducer を使用しています)。
コードエディタ(JavaScript)
// Load an image collection, filtered so it's not too much data. var collection = ee.ImageCollection('LANDSAT/LT05/C02/T1') .filterDate('2008-01-01', '2008-12-31') .filter(ee.Filter.eq('WRS_PATH', 44)) .filter(ee.Filter.eq('WRS_ROW', 34)); // Compute the median in each band, each pixel. // Band names are B1_median, B2_median, etc. var median = collection.reduce(ee.Reducer.median()); // The output is an Image. Add it to the map. var vis_param = {bands: ['B4_median', 'B3_median', 'B2_median'], gamma: 1.6}; Map.setCenter(-122.3355, 37.7924, 9); Map.addLayer(median, vis_param);
import ee import geemap.core as geemap
Colab(Python)
# Load an image collection, filtered so it's not too much data. collection = ( ee.ImageCollection('LANDSAT/LT05/C02/T1') .filterDate('2008-01-01', '2008-12-31') .filter(ee.Filter.eq('WRS_PATH', 44)) .filter(ee.Filter.eq('WRS_ROW', 34)) ) # Compute the median in each band, each pixel. # Band names are B1_median, B2_median, etc. median = collection.reduce(ee.Reducer.median()) # The output is an Image. Add it to the map. vis_param = {'bands': ['B4_median', 'B3_median', 'B2_median'], 'gamma': 1.6} m = geemap.Map() m.set_center(-122.3355, 37.7924, 9) m.add_layer(median, vis_param) m
これにより、マルチバンドの Image
が返されます。各ピクセルは、そのピクセル位置の ImageCollection
内のすべてのマスクされていないピクセルの中央値です。具体的には、入力画像のバンドごとにレジューサーが繰り返されます。つまり、各バンドで中央値が独立して計算されます。バンド名には、'B1_median'
、'B2_median'
などのレジューサー名が付加されています。出力は図 2 のようになります。
画像コレクションの削減の詳細については、ImageCollection
のドキュメントの削減セクションをご覧ください。特に、ImageCollection
を縮小して生成された画像には投影がありません。つまり、ImageCollection
リダクションによって出力された計算画像を含む計算では、スケールを明示的に設定する必要があります。
