Dipicu oleh Mike Toews pointer ke GetGeoTransform , saya berhasil membuat skrip python gdal kecil yang membangun file dunia untuk setiap raster georeferensi yang didukung (saya pikir). Kode lengkap di sini: gdal-makeworld.py
. Bit penting adalah:
geotransform = dataset.GetGeoTransform()
if geotransform is not None:
x, x_size, x_rot, y, y_rot, y_size = geotransform
# correct for centre vs corner of pixel
x = x_size/2+x
y = y_size/2+y
world_file.write('%s\n' % x_size)
world_file.write('%s\n' % x_rot)
world_file.write('%s\n' % y_rot)
world_file.write('%s\n' % y_size)
world_file.write('%s\n' % x)
world_file.write('%s\n' % y)
world_file.close()
''' geotransform tuple key:
[0] /* top left x */
[1] /* w-e pixel resolution */
[2] /* rotation, 0 if image is "north up" */
[3] /* top left y */
[4] /* rotation, 0 if image is "north up" */
[5] /* n-s pixel resolution */
'''
Terima kasih tambahan kepada Schuyler Erle yang telah menulis gdalcopyproj.py
yang saya gunakan sebagai titik awal.
Kiat ujung @AlisterH untuk "mengoreksi pusat vs sudut piksel" , 2019-05-30