python中利用rasterio库中索引像元坐标以及确定像元范围

本文介绍如何使用rasterio库进行像元坐标与地理坐标的相互转换,包括通过像元的行列号获取像元中心坐标,以及从像元中心坐标反查行列号的方法。此外还介绍了如何确定像元的具体范围。

rasterio库中索引像元坐标

1.根据像元所在行列号查询坐标以及反查询

rasterio库提供了专门用于行列号及像元中心坐标转换的函数,其中dataset.xy可将像元的行列号转化为像元中心坐标,而dataset.index可将像元中心坐标转化为行列号

import rasterio as rs
path=r"C:\Users\Lenovo\Desktop\test_images\images_doys2010_127_37.tif"
dataset=rs.open(path)
#获取波段数
>>>print(Landsat_dataset.count)
26
#获取波段索引号
>>>print(Landsat_dataset.indexes)
 (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26)
#根据row 和col查询具体的像元中心坐标
row=0;col=0
c1=dataset.xy(row,col)
#根据像元中心坐标反查询像元行列号
row,col=dateset.index(*c1)

2.像元所在范围的查询

确定一个像元的范围需要知道像元的左上角坐标以及右下角坐标,rasterio提供的dataset.transform可将获取某个行列号下像元的左上角坐标。

import rasterio as rs
path=r"C:\Users\Lenovo\Desktop\test_images\images_doys2010_127_37.tif"
#获取0行0列像元的左上角以及右下角坐标
>>> Landsat_dataset.transform*(0,0)
(107.17691856995917, 34.224195357442355)
#0行0列像元左上角坐标
>>>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值