Saya perlu menormalkan nilai yang diperoleh dari rasio band ke 0-255. Saya menggunakan QGIS. Bagaimana saya melakukan ini? Ada ide?
Saya perlu menormalkan nilai yang diperoleh dari rasio band ke 0-255. Saya menggunakan QGIS. Bagaimana saya melakukan ini? Ada ide?
Jawaban:
Anda dapat menggunakan utilitas gdal_translate. Gunakan opsi-skala [src_min src_max [dst_min dst_max]] dengan src_min dan src_max sebagai nilai min / max saat ini dari data Anda dan 0,255 sebagai dst_min, dst_max. Tanpa tanda kurung.
Jika Anda telah menginstal QGIS dengan paket OSGeo4W, Anda mungkin memiliki program terminal yang disebut 'MSYS'. Buka itu dan gunakan saja perintah gdal_translate. Jika tidak, dari dalam QGIS pilih Raster -> Conversion -> Translate. Pilih file dan opsi Anda. Di bagian bawah jendela perintah gdal_translate lengkap akan ditampilkan. Klik edit dan tambahkan opsi -scale.
Berikut ini akan meregangkan data Anda menjadi 8-bit (0-255).
smin=0; smax=255
( x - min(x) ) * (smax - smin) / ( max(x) - min(x) ) + smin
Seharusnya cukup mudah untuk menerjemahkan ini ke sintaks aljabar raster pada perangkat lunak pilihan Anda. Anda hanya perlu tahu apa nilai min dan maks dalam raster Anda. Jika raster adalah hasil dari rasio band maka aman untuk mengasumsikan -1 to 1 dan sintaks seharusnya terlihat seperti ini.
NewRaster = ( OldRaster - -1 ) * 255 / ( 1 - -1 ) + 0
smax
Istilah pertama benar-benar harus smax - smin
- dalam contoh (0-255) tidak masalah, tetapi di mana smin
! = 0