导入栅格数据

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入门相关推荐

  1. 【天池赛事】零基础入门语义分割-地表建筑物识别 Task2:数据扩增方法

    [天池赛事]零基础入门语义分割-地表建筑物识别 Task1:赛题理解与 baseline(3 天) – 学习主题:理解赛题内容解题流程 – 学习内容:赛题理解.数据读取.比赛 baseline 构建 ...

  2. 【天池赛事】零基础入门语义分割-地表建筑物识别 Task1:赛题理解与 baseline

    [天池赛事]零基础入门语义分割-地表建筑物识别 Task1:赛题理解与 baseline(3 天) – 学习主题:理解赛题内容解题流程 – 学习内容:赛题理解.数据读取.比赛 baseline 构建 ...

  3. 【天池赛事】零基础入门语义分割-地表建筑物识别

    https://tianchi.aliyun.com/competition/entrance/531872/introduction [天池赛事]零基础入门语义分割-地表建筑物识别:第一章 赛题及b ...

  4. gdal java api 中文_GDAL API入门

    GDAL API入门 打开文件 在打开GDAL所支持的光栅数据之前需要注册驱动.这里的驱动是针对GDAL支持的所有 数据格式.通常可以通过调用GDALAllRegister()函数来注册所有已知的驱动 ...

  5. 用Construct 2制作入门小游戏~

    今天在软导课上了解到了Construct 2这个神器,本零基础菜鸟决定尝试做一个简单的小游戏(实际上是入门的教程啊= = 首先呢,肯定是到官网下载软件啊,点击我下载~ 等安装完毕后我便按照新手教程开始 ...

  6. Docker入门六部曲——Swarm

    原文链接:http://www.dubby.cn/detail.html?id=8738 准备工作 安装Docker(版本最低1.13). 安装好Docker Compose,上一篇文章介绍过的. 安 ...

  7. Docker入门六部曲——Stack

    原文链接:http://www.dubby.cn/detail.html?id=8739 准备知识 安装Docker(版本最低1.13). 阅读完Docker入门六部曲--Swarm,并且完成其中介绍 ...

  8. Docker入门六部曲——服务

    原文链接:http://www.dubby.cn/detail.html?id=8735 准备 已经安装好Docker 1.13或者以上的版本. 安装好Docker Compose.如果你是用的是Do ...

  9. 【springboot】入门

    简介: springBoot是spring团队为了整合spring全家桶中的系列框架做研究出来的一个轻量级框架.随着spring4.0推出而推出,springBoot可以説是J2SEE的一站式解决方案 ...

  10. SpringBoot (一) :入门篇 Hello World

    什么是SpringBoot Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不 ...

最新文章

  1. 生成对抗网络是什么?
  2. 近一半企业曾遭遇云计算安全问题
  3. python三十二:os模块
  4. Eclipse新建的Maven项目想修改DynamicWebModule,直接去项目目录下修改
  5. 江西理工大学南昌校区cool code竞赛
  6. Windows Embedded CE 6.0开发初体验(七)编译和调试平台
  7. PHP学习方向-进阶2(三) 1
  8. 【第5篇】Python爬虫实战-读取临时邮箱内容
  9. Redis 3.2.4编译安装
  10. win10 uwp 读取保存WriteableBitmap 、BitmapImage
  11. Android学习分享:执行某ViewGroup的动画时,子控件太多导致动画执行卡顿的问题...
  12. 【VS开发】【电子电路技术】VPX技术介绍
  13. qmake,make,nmake
  14. 屏蔽烦人的百度搜索热点
  15. 使用uniapp编写词霸每日一句页面
  16. android全局的dialog,使android的dialog全局显示
  17. 初入Shell编程,了解规范与变量
  18. Linux系统rootfs切换到真正的根文件系统详细源码解析(附工作项目手动制作根文件实例)
  19. springboot工程中限流方式
  20. Sensor Hub

热门文章

  1. This service allows sftp connections only
  2. 好看的皮囊 · 也是大自然的杰作 · 全球高质量 · 美图 · 集中营 · 美女 · 2017-08-22期...
  3. 对c语言课程的建议和意见,对课程的意见和建议
  4. DDD(领域驱动设计)系列主题:DDD战略设计和战术设计分析流程及关键输出物
  5. 机器学习代码整理pLSA、BoW、DBN、DNN
  6. 1--request模块
  7. 如何安装Chrome扩展程序或插件
  8. 钱符号怎么打出来(如何在文档中输入人民币符号?)
  9. C#开源组件之Word文件的操作:一
  10. 数据库系统,数据库应用系统,数据库管理系统,数据库