Python gdal tif图加坐标信息


import gdal

# 读文件
YG_dataset = gdal.Open(r'D:\lppyqtdata\yuantu2\zhangzha1.tif')  # 打开文件,用这个tif图的投影信息
YG_geotrans = YG_dataset.GetGeoTransform()  # 仿射矩阵
print(YG_geotrans)
YG_proj = YG_dataset.GetProjection()  # 地图投影信息
print(YG_proj)

# 读文件
YG2_dataset = gdal.Open(r'D:\lppyqtdata\yuantu\yuantu.tif')  # 打开文件,用这个tif图的数值信息
YG2_width = YG2_dataset.RasterXSize  # 栅格矩阵的列数
YG2_height = YG2_dataset.RasterYSize  # 栅格矩阵的行数
YG2_data = YG2_dataset.ReadAsArray(0, 0, YG2_width, YG2_height)  # 将数据写成数组,对应栅格矩阵
b1 = YG2_data[0,0:YG2_height,0:YG2_width]#获取第1波段
b2 = YG2_data[1,0:YG2_height,0:YG2_width]#获取第2波段
b3 = YG2_data[2,0:YG2_height,0:YG2_width]#获取第3波段

# 创建tif文件
driver = gdal.GetDriverByName("GTiff")
# 这里的5,5就是创建一个5x5大小的tif,后面的5是波段数YG2_widthYG2_height
New_YG_dataset = driver.Create(r'D:\lppyqtdata\yuantu\yuantu2.tif', YG2_width, YG2_height, 3, gdal.GDT_Int32)
New_YG_dataset.SetGeoTransform(YG_geotrans)
New_YG_dataset.SetProjection(YG_proj)

band1 = New_YG_dataset.GetRasterBand(1)
band1.WriteArray(b1 * 1) # 原图是整数,乘个0.1,与浮点数可以相加
band2 = New_YG_dataset.GetRasterBand(2)
band2.WriteArray(b2 * 1)
band3 = New_YG_dataset.GetRasterBand(3)
band3.WriteArray(b3 * 1)

 

  • 4
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值