0
点赞
收藏
分享

微信扫一扫

gdal中shapefile坐标度转换到栅格米


python gdal读取(ogr)shapefile的坐标表示为度,栅格数据的坐标为米。
以下代码展示读取shapefile文件的度坐标并转换为依赖栅格数据投影的坐标米。

from osgeo import gdal,ogr

def world2Pixel(padfTransform, x, y):
pixel = padfTransform[0] + x*padfTransform[1] + y*padfTransform[2]
line = padfTransform[3] + x*padfTransform[4] + y*padfTransform[5]
return (pixel, line)


dataset = gdal.Open("E:/RS_data/caijian1214/res_data.tif")

driver = ogr.GetDriverByName("ESRI Shapefile")
dataSource = driver.Open(u"E:\RS_data\caijian1214\LastOutput_Clip.shp")

layer = dataSource.GetLayer(0)

minX, maxX, minY, maxY = layer.GetExtent()
print("原边界(坐标系度):",minX,maxX,maxY,minY)

geoTrans = dataset.GetGeoTransform()
ulX, ulY = world2Pixel(geoTrans, minX, maxY)
lrX, lrY = world2Pixel(geoTrans, maxX, minY)
print("新边界:(坐标系米)",ulX,ulY,lrX,lrY)

输出结果如下:

gdal中shapefile坐标度转换到栅格米_python


举报

相关推荐

0 条评论