Earth Engine triển khai các phép toán hình thái dưới dạng phép toán tiêu điểm, cụ thể là các phương thức thực thể focalMax()
, focalMin()
, focalMedian()
và focalMode()
trong lớp Image
. (Đây là các phím tắt cho reduceNeighborhood()
chung hơn, có thể nhập các pixel trong một hạt nhân vào bất kỳ trình giảm nào có đầu ra dạng số. Hãy xem trang này để biết thêm thông tin về việc giảm số lượng khu vực lân cận). Các toán tử hình thái học rất hữu ích cho việc thực hiện các thao tác như xói mòn, giãn nở, mở và đóng. Ví dụ: để thực hiện thao tác mở, hãy sử dụng focalMin()
theo sau là focalMax()
:
Trình soạn thảo mã (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');
Lưu ý rằng trong ví dụ trước, một đối số hạt nhân được cung cấp cho toán tử hình thái. Các pixel được bao phủ bởi các phần tử khác 0 của hạt nhân được dùng trong quá trình tính toán. Đối số số lần lặp cho biết số lần áp dụng toán tử.