Setelah mengetahui cara memuat dan menampilkan gambar, kini saatnya menerapkan komputasi padanya.
Misalnya, Anda dapat menghitung kemiringan medan dengan meneruskan gambar elevasi SRTM ke
metode slope
dari paket ee.Terrain
.
Code Editor (JavaScript)
// Load the SRTM image. var srtm = ee.Image('CGIAR/SRTM90_V4'); // Apply an algorithm to an image. var slope = ee.Terrain.slope(srtm); // Display the result. Map.setCenter(-112.8598, 36.2841, 9); // Center on the Grand Canyon. Map.addLayer(slope, {min: 0, max :60}, 'slope');
Perhatikan bahwa dalam kode ee.Terrain.slope(srtm)
, gambar srtm
disediakan sebagai argumen untuk algoritma kemiringan. Hasilnya akan terlihat seperti
Gambar 3.

Matematika gambar
Ada juga metode di class ee.Image
yang dapat dipanggil pada
objek gambar. Misalnya, Anda ingin melakukan perhitungan matematika menggunakan band gambar (terkadang
disebut band math atau map algebra). Misalnya, Anda mungkin tertarik dengan
operasi trigonometri pada gambar aspek. Untuk melakukannya, konversi terlebih dahulu
gambar aspek ke radian, lalu panggil sin()
di gambar tersebut. Menggunakan kembali gambar srtm
kami,
Code Editor (JavaScript)
// Get the aspect (in degrees). var aspect = ee.Terrain.aspect(srtm); // Convert to radians, compute the sin of the aspect. var sinImage = aspect.divide(180).multiply(Math.PI).sin(); // Display the result. Map.addLayer(sinImage, {min: -1, max: 1}, 'sin');
Hasilnya akan terlihat seperti Gambar 4. Ada baiknya kita mempelajari kode aspect.divide(180).multiply(Math.PI).sin()
lebih lanjut. Dengan menggabungkan beberapa metode
seperti ini, kode mengatakan, 'bagi aspek dengan 180, kalikan hasilnya dengan
π, dan terakhir ambil sin'. Anda dapat melakukan operasi matematika yang kompleks pada
gambar dengan menggabungkan metode dengan cara ini. Lihat
dokumen Image
untuk mengetahui daftar lengkap operasi
matematika, add()
, subtract()
, multiply()
, dll.

Statistik gambar
Kelas operasi lain yang berguna pada gambar melibatkan penghitungan statistik piksel di area gambar, atau overlay raster-vektor. Untuk menghitung statistik di Earth Engine, gunakan
reducer seperti yang diwakili oleh class dalam
paket ee.Reducer
. Misalnya, Anda tertarik dengan rata-rata ketinggian di suatu wilayah. Anda dapat menentukan region dengan
menggambar poligon menggunakan alat gambar geometri.
Untuk menggambar wilayah secara interaktif, dapatkan alat gambar poligon
(), lalu digitalkan poligon di atas
area yang diinginkan dan klik Keluar setelah selesai. Perhatikan bahwa objek
ee.Geometry
yang dihasilkan otomatis diberi nama geometry
dan ditambahkan
sebagai impor di bagian atas skrip Anda. Ganti nama variabel tersebut menjadi 'polygon' dengan mengklik
nama variabel dalam impor dan mengetik nama baru.
Selanjutnya, dapatkan nilai piksel rata-rata dalam poligon menggunakan kode berikut:
Code Editor (JavaScript)
// Compute the mean elevation in the polygon. var meanDict = srtm.reduceRegion({ reducer: ee.Reducer.mean(), geometry: polygon, scale: 90 }); // Get the mean from the dictionary and print it. var mean = meanDict.get('elevation'); print('Mean elevation', mean);
Ada beberapa hal yang perlu diperhatikan di sini. Pertama, perhatikan bahwa reduceRegion()
adalah
metode yang tersedia untuk objek Image
(pelajari
lebih lanjut cara mengurangi wilayah di sini). Kedua, argumen metode disediakan dalam
objek JavaScript yang diteruskan sebagai satu argumen. (Secara khusus, kunci objek
adalah nama parameter metode. Nilainya adalah argumen untuk
metode). Ketiga, parameter reducer
menentukan jenis statistik yang akan
dihitung dan parameter geometry
menentukan region tempat statistik
akan dihitung. Parameter scale
adalah ukuran piksel dalam meter yang akan digunakan. Untuk
menghindari ambiguitas, Anda harus selalu menentukan skala saat melakukan pengurangan karena Earth Engine
mungkin tidak dapat menentukan skala yang sesuai secara otomatis dari input.
(Pelajari skala di Earth Engine lebih lanjut).
Terakhir, nilai yang ditampilkan oleh reduceRegion()
adalah kamus
yang kuncinya adalah nama band dan nilainya adalah statistik piksel untuk band. Metode
get()
pada kamus menampilkan nilai yang sesuai dengan kunci
yang diberikan sebagai argumen. Dalam hal ini, gambar srtm
memiliki satu band,
'elevation', sehingga kode contoh mendapatkan statistik tersebut dari kamus dan mencetaknya.
Saat menjalankan kode ini, jika Anda mendapatkan error yang terlihat seperti:
Jangan khawatir! Ada beberapa hal yang dapat Anda lakukan untuk mengatasi error tersebut. Metode
reduceRegion()
memiliki pemeriksaan untuk memastikan Anda mempertimbangkan apakah Anda
benar-benar ingin menyertakan begitu banyak piksel dalam komputasi Anda. Tindakan ini dimaksudkan untuk mencegah Anda melakukan sesuatu yang tidak masuk akal secara tidak sengaja, seperti mencoba menghitung rata-rata setiap piksel satu meter di dunia (jangan lakukan itu). Untuk mengatasi error, tetapkan parameter
bestEffort
ke true
dengan menambahkan bestEffort: true
ke kamus parameter, atau tetapkan parameter maxPixels
ke nilai
yang lebih tinggi dari default 10 juta piksel, atau keduanya. Jika bestEffort
adalah
benar (true), Earth Engine akan otomatis menghitung ulang skala sehingga maxPixels
tidak terlampaui.
Penyimpangan: Skala di Earth Engine
Pada contoh sebelumnya, scale
ditetapkan ke sekitar resolusi native
gambar SRTM. Anda dapat menemukan resolusi asli gambar dengan:
Code Editor (JavaScript)
var scale = srtm.projection().nominalScale(); print('SRTM scale in meters', scale);
Jika Anda menentukan skala yang lebih kecil dari resolusi asli, Earth Engine akan dengan senang hati melakukan pengambilan sampel ulang gambar input menggunakan tetangga terdekat, lalu menyertakan semua piksel yang lebih kecil tersebut dalam penghitungan. Jika Anda menyetel skala menjadi lebih besar, Earth Engine akan menggunakan piksel input dari versi input yang diagregasi (yaitu, mendapatkan piksel dari tingkat piramida gambar yang lebih tinggi). Pelajari lebih lanjut cara Earth Engine menangani skala dalam dokumen ini.
Sejauh ini, Anda telah bekerja dengan satu gambar dengan satu band. Di halaman berikutnya, Anda akan mempelajari gambar multi-band dan kumpulan gambar.