Earth Engine では、形態学的オペレーションを焦点オペレーションとして実装しています。具体的には、Image
クラスの focalMax()
、focalMin()
、focalMedian()
、focalMode()
インスタンス メソッドです。(これらは、より一般的な reduceNeighborhood()
のショートカットです。これは、数値出力を持つ任意の Reducer にカーネル内のピクセルを入力できます。地域の削減について詳しくは、こちらのページをご覧ください。形態学演算子は、侵食、拡大、開口、閉鎖などのオペレーションの実行に役立ちます。たとえば、開くオペレーションを実行するには、focalMin()
の後に focalMax()
を使用します。
コードエディタ(JavaScript)
// Load a Landsat 8 image, select the NIR band, threshold, display. var image = ee.Image('LANDSAT/LC08/C02/T1_TOA/LC08_044034_20140318') .select(4).gt(0.2); Map.setCenter(-122.1899, 37.5010, 13); Map.addLayer(image, {}, 'NIR threshold'); // Define a kernel. var kernel = ee.Kernel.circle({radius: 1}); // Perform an erosion followed by a dilation, display. var opened = image .focalMin({kernel: kernel, iterations: 2}) .focalMax({kernel: kernel, iterations: 2}); Map.addLayer(opened, {}, 'opened');
上記の例では、カーネル引数が形態学演算子に指定されています。計算には、カーネルのゼロ以外の要素で覆われているピクセルを使用します。iterations 引数は、演算子を適用する回数を示します。