Menghitung seluruh statistik untuk raster, termasuk histogram dan persentil.
Sintaksis
raster ST_ComputeStatistics(raster raster_obj,
cstring sampleOption default '{}')
raster ST_ComputeStatistics(raster raster_obj,
cstring bands,
cstring sampleOption default '{}',
cstring parallelOption default '{}')
Parameter
| Parameter | Deskripsi |
|---|
| raster_obj | Objek raster. |
| bands | ID band yang akan diproses. Contoh: '0,1-3,6,8'. ID band dimulai dari 0. Untuk memproses semua band, atur parameter ini ke ''. |
| sampleOption | String JSON berisi opsi pengambilan sampel. Lihat tabel parameter sampleOption. Nilai default-nya adalah '{}'. |
| parallelOption | String JSON berisi opsi eksekusi paralel. Lihat tabel parameter parallelOption. Nilai default-nya adalah '{}'. |
Parameter sampleOption
| Parameter | Tipe | Default | Deskripsi |
|---|
| approx | Boolean | false | Menentukan apakah akan menggunakan pengambilan sampel perkiraan. Jika diatur ke true, pengambilan sampel diterapkan tetapi hasilnya mungkin tidak akurat. |
| factor | integer | 4 | Faktor pengambilan sampel, dinyatakan sebagai jumlah piksel per unit sampel. Semua bilangan bulat positif valid. Parameter ini hanya berlaku ketika approx bernilai true. |
| exclusive_nodata | Boolean | true | Menentukan apakah nilai NoData disertakan. Nilai yang valid: true dan false. |
Parameter parallelOption
| Parameter | Tipe | Default | Deskripsi |
|---|
| parallel | integer | ganos.parallel.degree | Tingkat paralelisme. Nilai yang valid: 1 hingga 64. |
Contoh
-- Gunakan pengaturan default.
UPDATE raster_table SET raster_obj = ST_ComputeStatistics(raster_obj) WHERE id = 1;
-- Tentukan band dan nonaktifkan pengambilan sampel perkiraan.
UPDATE raster_table SET raster_obj = ST_ComputeStatistics(rast,'0-2','{"approx":false}') WHERE id = 1;
-- Nonaktifkan pengambilan sampel perkiraan tanpa menentukan band.
UPDATE raster_table SET raster_obj = ST_ComputeStatistics(rast,'{"approx":false}') WHERE id = 1;
-- Tentukan band, aktifkan pengambilan sampel perkiraan dengan faktor kustom, dan atur tingkat paralelisme.
UPDATE raster_table SET raster_obj = ST_ComputeStatistics(raster_obj,'0-2','{"approx":true, "factor":5}', '{"parallel":4}') WHERE id = 1;