Rasterio入门
导入栅格数据
import rasterio as ras
img = ras.open(r'F:\\data\\NDVI\\ndvi2016a')
rasterio的open()函数接受一个路径字符串或类似路径的对象,并返回一个打开的数据集对象。路径可以指向任何支持的栅格格式的文件。Rasterio将使用适当的gdal格式驱动程序打开它。数据集对象具有与Python文件对象相同的一些属性。
print(img.name)
print(img.mode)
print(img.closed)
数据集属性
存储在示例geotiff中的栅格数据的属性可以通过打开的数据集对象的属性访问。数据集对象有条带,此示例的条带计数为1。
img.count
数据集带有一个值数组,表示二维空间中单个变量的部分分布。
print(img.width)
print(img.height)
一些数据集属性通过一个值元组(每个值带一个)公开所有数据集带区的属性。要获取带索引到变量数据类型的映射,请将字典理解应用于zip()数据集indexes和dtypes属性。
{i: dtype for i, dtype in zip(img.indexes, img.dtypes)}
数据集的地理参考
地理信息系统栅格数据集不同于普通图像;其元素(或“像素”)映射到地球表面的区域。数据集的每个像素都包含在空间边界框中。
img.bounds
bounds属性来自一个更基本的属性:数据集的地理空间转换。
img.transform
可以通过矩阵变化分别获得左上角和左下角的数据
img.transform * (0, 0) # (-4034269.5606833654, 6383233.52177437)
img.transform * (img.width, img.height) # (3458718.681326859, 1560943.9108939096)
img.crs # 输出参考坐标系
展示所有相关信息
img2.meta
读取栅格数据
img.indexes
band1 = img.read(1)
band1
以写入模式打开数据集
调用rasterio.open()使用要创建的新文件的路径,'w’指定写入模式和几个关键字参数。
- 驱动:所需格式驱动程序的名称
- 宽度:数据集的列数
- 高度 :数据集的行数
- 计数:数据集带区计数
- 类型:数据集类型
- crs :坐标参考系标识符或描述
- transform:仿射变换矩阵
#写影像,包括 路径/名称 高度 宽度 数据值 条带名称 仿射变换矩阵
def writeImage(image_save_path,height1,width1,para_array,bandDes,transform1):with ras.open(image_save_path,'w', # 文件打开模式driver='GTiff', # 保存类型height=height1, # 数据集高度width=width1, # 数据集宽度count=1, # 数据集带区计数dtype=para_array.dtype, # 数据集类型crs='+proj=latlong', # 坐标参考系标识符或描述transform=transform1, # 仿射变换矩阵) as dst:dst.write_band(1,para_array) # 将带数与数值组合,使其变成三维【band,height,width】dst.set_band_description(1,bandDes) # 设置条带的名称del dst
坐标参考系是 ‘+proj=latlong’ 它描述了一个以十进制度数为单位的等矩形坐标参考系。
Rasterio入门相关推荐
- 【天池赛事】零基础入门语义分割-地表建筑物识别 Task2:数据扩增方法
[天池赛事]零基础入门语义分割-地表建筑物识别 Task1:赛题理解与 baseline(3 天) – 学习主题:理解赛题内容解题流程 – 学习内容:赛题理解.数据读取.比赛 baseline 构建 ...
- 【天池赛事】零基础入门语义分割-地表建筑物识别 Task1:赛题理解与 baseline
[天池赛事]零基础入门语义分割-地表建筑物识别 Task1:赛题理解与 baseline(3 天) – 学习主题:理解赛题内容解题流程 – 学习内容:赛题理解.数据读取.比赛 baseline 构建 ...
- 【天池赛事】零基础入门语义分割-地表建筑物识别
https://tianchi.aliyun.com/competition/entrance/531872/introduction [天池赛事]零基础入门语义分割-地表建筑物识别:第一章 赛题及b ...
- gdal java api 中文_GDAL API入门
GDAL API入门 打开文件 在打开GDAL所支持的光栅数据之前需要注册驱动.这里的驱动是针对GDAL支持的所有 数据格式.通常可以通过调用GDALAllRegister()函数来注册所有已知的驱动 ...
- 用Construct 2制作入门小游戏~
今天在软导课上了解到了Construct 2这个神器,本零基础菜鸟决定尝试做一个简单的小游戏(实际上是入门的教程啊= = 首先呢,肯定是到官网下载软件啊,点击我下载~ 等安装完毕后我便按照新手教程开始 ...
- Docker入门六部曲——Swarm
原文链接:http://www.dubby.cn/detail.html?id=8738 准备工作 安装Docker(版本最低1.13). 安装好Docker Compose,上一篇文章介绍过的. 安 ...
- Docker入门六部曲——Stack
原文链接:http://www.dubby.cn/detail.html?id=8739 准备知识 安装Docker(版本最低1.13). 阅读完Docker入门六部曲--Swarm,并且完成其中介绍 ...
- Docker入门六部曲——服务
原文链接:http://www.dubby.cn/detail.html?id=8735 准备 已经安装好Docker 1.13或者以上的版本. 安装好Docker Compose.如果你是用的是Do ...
- 【springboot】入门
简介: springBoot是spring团队为了整合spring全家桶中的系列框架做研究出来的一个轻量级框架.随着spring4.0推出而推出,springBoot可以説是J2SEE的一站式解决方案 ...
- SpringBoot (一) :入门篇 Hello World
什么是SpringBoot Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不 ...
最新文章
- 生成对抗网络是什么?
- 近一半企业曾遭遇云计算安全问题
- python三十二:os模块
- Eclipse新建的Maven项目想修改DynamicWebModule,直接去项目目录下修改
- 江西理工大学南昌校区cool code竞赛
- Windows Embedded CE 6.0开发初体验(七)编译和调试平台
- PHP学习方向-进阶2(三) 1
- 【第5篇】Python爬虫实战-读取临时邮箱内容
- Redis 3.2.4编译安装
- win10 uwp 读取保存WriteableBitmap 、BitmapImage
- Android学习分享:执行某ViewGroup的动画时,子控件太多导致动画执行卡顿的问题...
- 【VS开发】【电子电路技术】VPX技术介绍
- qmake,make,nmake
- 屏蔽烦人的百度搜索热点
- 使用uniapp编写词霸每日一句页面
- android全局的dialog,使android的dialog全局显示
- 初入Shell编程,了解规范与变量
- Linux系统rootfs切换到真正的根文件系统详细源码解析(附工作项目手动制作根文件实例)
- springboot工程中限流方式
- Sensor Hub
热门文章
- This service allows sftp connections only
- 好看的皮囊 · 也是大自然的杰作 · 全球高质量 · 美图 · 集中营 · 美女 · 2017-08-22期...
- 对c语言课程的建议和意见,对课程的意见和建议
- DDD(领域驱动设计)系列主题:DDD战略设计和战术设计分析流程及关键输出物
- 机器学习代码整理pLSA、BoW、DBN、DNN
- 1--request模块
- 如何安装Chrome扩展程序或插件
- 钱符号怎么打出来(如何在文档中输入人民币符号?)
- C#开源组件之Word文件的操作:一
- 数据库系统,数据库应用系统,数据库管理系统,数据库