coords=ct.TransformPoint(lon, lat)returncoords[:2]defimagexy2geo(dataset, row, col):'''根据GDAL的六参数模型将影像图上坐标(行列号)转为投影坐标或地理坐标(根据具体数据的坐标系统转换) :param dataset: GDAL地理数据 :param row: 像素的行号 :param col: 像素的列号 :return: 行列号(row, col)对应...
栅格数据每个像素的地理/投影坐标是由仿射矩阵六参数和像素坐标计算得来的,所以先将仿射矩阵六参数进行转换,之后对栅格数据重采样即可。下面以WGS84坐标转UTM投影为例:def raster_WGS2UTM(raster_path, UTM_raster_path, longitude, is_north): raster_ds = gdal.Open(raster_path) raster_type = raster...
#像素坐标和地理坐标仿射变换 def CoordTransf(Xpixel,Ypixel,GeoTransform): XGeo = GeoTransform[0]+GeoTransform[1]*Xpixel+Ypixel*GeoTransform[2]; YGeo = GeoTransform[3]+GeoTransform[4]*Xpixel+Ypixel*GeoTransform[5]; return XGeo,YGeo 搞定!编辑...
将地理坐标转换为像素坐标:使用GDAL库的gdal.InvGeoTransform()函数可以将地理坐标转换为像素坐标。 其中,x和y是地理坐标。 读取像素值:使用数据集对象的ReadAsArray()方法可以读取指定像素位置的像素值。 读取像素值:使用数据集对象的ReadAsArray()方法可以读取指定像素位置的像素值。 这里使用int()函数将像素坐标...
gdal.AllRegister() filePath='/home/theone/Data/GreatKhingan/DEM/Slope_GreatKhingan_500m.tif'dataset=gdal.Open(filePath) adfGeoTransform=dataset.GetGeoTransform()#左上角地理坐标print(adfGeoTransform[0])print(adfGeoTransform[3]) nXSize= dataset.RasterXSize#列数nYSize = dataset.RasterYSize#行数arr...
其中,raster2array()用于将栅格数据文件读取为numpy库的数组,get_geotransform()用于获取栅格数据文件的地理转换参数,get_pixel_size()用于从地理转换参数中提取像素大小,pixel2coordinate()用于将像素坐标转换为地理坐标。 接下来,我们即可开始读取待处理的数据。在上述代码中,gf_开头的数据就是前文中提到的...
print(gdal) 1. 2. 3. 4. GDAL's version is:2.3.3 <module 'osgeo.gdal' from 'C:\\Users\\Dash\\Anaconda3\\lib\\site-packages\\osgeo\\gdal.py'> 1. 2. 我们使用上面这种办法来引入gdal模块 可以看到,我的GDAL版本是2.3.3 我们引入gdal子模块之后,我们就可以使用GDAL提供的API了 ...
gdal.AllRegister()filePath='/home/theone/Data/GreatKhingan/DEM/Slope_GreatKhingan_500m.tif'dataset=gdal.Open(filePath)adfGeoTransform=dataset.GetGeoTransform()# 左上角地理坐标print(adfGeoTransform[0])print(adfGeoTransform[3])nXSize=dataset.RasterXSize #列数 ...