首页 > 其他分享 >rasterio的安装和使用

rasterio的安装和使用

时间:2023-02-18 18:33:02浏览次数:34  
标签:安装 波段 rasterio red 使用 ndvi data 影像

rasterio安装

rasterio需要依赖很多第三方库,按下面的顺序依次安装即可。

pyproj
Shapely
GDAL
Fiona
geopandas
rasterio

rasterio使用

一是能读取到各个影像波段的数据,二是经过一些处理后,能再将数据存为影像。

这里以landsat影像为例,读取数据后,计算NDVI值,然后保存到本地。

rasterio的安装和使用_第三方库

使用open函数就可以读取影像数据,count属性就是影像的波段数(landsat全色是7个波段)。

import rasterio

data = rasterio.open('yingxiang.tif')
print(data.count)

7

当然还有很多其他的影像属性。

width 宽度
height 高度
bounds 地理范围
transform 反射变化参数
crs 坐标参考系

当然我们最关心的是如何读取波段数据,其实很简单,用read函数即可。

rasterio的安装和使用_读取数据_02

这里我们需要计算NDVI,我们只需要读取红波段和近红外波段即可。

red = data.read(4).astype('float64')
nir_red = data.read(5).astype('float64')
ndvi = (nir_red-red)/(nir_red+red)
ndvi

最后,写入到新的栅格即可。

new_dataset = rasterio.open('ndvi.tif',
'w',
driver='GTiff',
height=data.height,
width=data.width,
count=1,
dtype='float64',
crs=data.crs,
transform=data.transform)
new_dataset.write(ndvi, 1)
new_dataset.close()

rasterio的安装和使用_读取数据_03

标签:安装,波段,rasterio,red,使用,ndvi,data,影像
From: https://blog.51cto.com/u_14682436/6065486

相关文章

  • LinkedList的使用
    importjava.util.Iterator;importjava.util.LinkedList;importjava.util.ListIterator;publicclassDemo01{publicstaticvoidmain(String[]args){......
  • 安装window server虚拟机详细步骤
    下载操作系统的网站:https://msdn.itellyou.cn/在里面搜索找到对应的操作系统,使用迅雷下载(比网盘快多了......
  • 类Unix系统下Java使用JNI调用类C方法
    https://github.com/moocstudent/java-jni-unixlike-test通过切换到java目录执行javac-h./JniSample.java编译源文件并生成head文件JniSample.h在类UNIX系统下,使......
  • 使用Pandas补全缺失值
      在大多数情况下,使用fillna来补全缺失值,调用fillna时可以使用一个常数作为参数来替代缺失值:df=pd.DataFrame(np.random.rand(7,3))df.iloc[2:5,1]=Nonedf.iloc......
  • Vector的使用
    importjava.util.Enumeration;importjava.util.Vector;publicclassDemo01{publicstaticvoidmain(String[]args){Vector:数组结构实现,查询快。增删......
  • RabbitMQ的基础安装与使用
    安装主机部署http://www.rabbitmq.com/install-rpm.html选择RPM包下载,选择对应平台,本次安装在CentOS7,其它平台类似。由于使用了erlang语言开发,所以需要erlang的包。er......
  • 1.Linux系统安装
    0.操作系统版本[root@yuanzj~]#cat/etc/redhat-releaseCentOSrelease6.10注意:在安装Oracle10g版本数据库时候,需要修改版本号为[root@yuanzj~]#cat/etc/redhat-......
  • List实现类----ArrayList的使用
    importjava.util.ArrayList;importjava.util.Iterator;importjava.util.ListIterator;publicclassDemo01{publicstaticvoidmain(String[]args){/......
  • 错误:[ERROR] 不再支持源选项 5。请使用 6 或更高版本。 [ERROR] 不再支持目标选项 1.5
    解决方案pom.xml文件中增加maven编译的java.versionjdk版本设置,以及maven.compiler.source 资源编译jdk版本设置和maven.compiler.target 资源构建jdk版本设置For JA......
  • eNSP的安装和使用​
    第一章:eNSP的安装和使用华为eNSP模拟器(EnterpriseNetworkSimulationPlatform)是华为官方推出的一款强大的图形化网络仿真工具平台,eNSP模拟器主要对企业网路由器、交换机......