python gdal 寫GeoTiff文件


1.gdal數據類型

(1)GDT_Byte(int8)  (2)GDT_UInt16 (3)GDT_Int16  (4)GDT_UInt32  (5)GDT_Int32  (6)GDT_Float32  (7)GDT_Float64

2.寫GeoTiff文件

from osgeo import  gdal

#讀取某一類型的數據,需要先載入數據驅動,初始化一個對象

driver = gdal.GetDriverByName("GTiff")

#創建空文件,並確定開辟多大內存;每個像素都有一個對應的值,這個值得類型用數據類型指定。這里的數據類型是gdal數據類型。

dataset = driver.Create("fdem_new.tif", 柵格矩陣的列數, 柵格矩陣的行數, 波段數, 數據類型) 

#設置頭文件信息

#(1)寫入仿射變換參數

dataset.SetGeoTransform(左上角x坐標,東西方向上圖像的分辨率,地圖的旋轉角度,左上角y坐標,地圖的旋轉角度,南北方向上地圖的分辨率)

#(2)寫入投影信息(這里我所用的投影是從上一篇文章里的tif文件讀來的)

dataset.SetProjection(im_proj)

#寫入數據體

#為了方便,這里的im_bands是從上一篇文章里的tif文件所讀取到的波段數,im_data是從上一篇文章里的tif文件所讀取到的數據

if im_bands == 1:
  dataset.GetRasterBand(1).WriteArray(im_data) #寫入數組數據
else:
  for i in range(im_bands):
    dataset.GetRasterBand(i+1).WriteArray(im_data[i])

#釋放內存空間

del dataset

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM