1. 读取 TIFF 格式文件(主要是GeoTiff)

from osgeo import gdaldata = gdal.Open("文件地址")im_width = data.RasterXSize  # 获取宽度,数组第二维,左右方向元素长度,代表经度范围im_height = data.RasterYSize  # 获取高度,数组第一维,上下方向元素长度,代表纬度范围im_bands = data.RasterCount  # 波段数"""
GeoTransform 的含义:影像左上角横坐标:im_geotrans[0],对应经度影像左上角纵坐标:im_geotrans[3],对应纬度遥感图像的水平空间分辨率(纬度间隔):im_geotrans[5]遥感图像的垂直空间分辨率(经度间隔):im_geotrans[1]通常水平和垂直分辨率相等如果遥感影像方向没有发生旋转,即上北下南,则 im_geotrans[2] 与 im_geotrans[4] 为 0计算图像地理坐标:若图像中某一点的行数和列数分别为 row 和 column,则该点的地理坐标为:经度:xGeo = im_geotrans[0] + row * im_geotrans[1] + column * im_geotrans[2]纬度:yGeo = im_geotrans[3] + row * im_geotrans[4] + column * im_geotrans[5]
"""
im_geotrans = data.GetGeoTransform()  # 获取仿射矩阵,含有 6 个元素的元组im_proj = data.GetProjection()  # 获取地理信息"""
GetRasterBand(bandNum),选择要读取的波段数,bandNum 从 1 开始
ReadAsArray(xoff, yoff, xsize, ysize),一般就按照下面这么写,偏移量都是 0 ,返回 ndarray 数组
"""
im_data = data.GetRasterBand(1).ReadAsArray(xoff=0, yoff=0, xsize=im_width, ysize=im_height)

2. 写出GeoTiff文件

from osgeo import gdaldriver = gdal.GetDriverByName("GTiff")  # 加载驱动output = driver.Create("文件地址", im_width, im_height, 1, gdal.GDT_Float32)  # 1 是写死的,表示输出一个波段output.SetGeoTransform(im_geotrans)  # 一般不用自己创建,读取文件里提取出来传入即可
output.SetProjection(im_proj)  # 一般不用自己创建,读取文件里提取出来传入即可
output.GetRasterBand(1).WriteArray(array)  # 选取第一个波段,将数据写入,这里array是二维数组del output  # 刷新缓存

『GDAL』读写TIFF文件相关推荐

  1. 『WPF』实现拖动文件到窗体(控件)

    前言 实现从窗口外部拖文件到窗口内部并自动捕获文件地址. 第一步 开启属性 启用底层Window的AllowDrop属性,添加Drop事件. Drop事件:当你拖动文件到对应控件后,松开触发. 除Dr ...

  2. 『dos』使用bat文件打开jupyter lab

    最近在学习使用dos命令来编写bat文件,联想到自己每次打开 jupyterlabjupyter labjupyterlab 都要经过两个步骤(启动 AnacondaPromptAnaconda Pr ...

  3. 『Linux』/etc/inittab文件详解

    文章目录 inittab文件简介 inittab文件内容 Default Runlevel System Initialization Trap CTRL-ALT-DELETE Powerfail C ...

  4. 『Linux』默认头文件存储路径/usr/include

    文章目录 /usr/include 引用 完 /usr/include linux系统编程往往需要引用c头文件,linux下,头文件一般存储到/usr/include 例如最常见的几个头文件: 又比如 ...

  5. GDAL读写Tiff、DEM文件

    Gdal库读取和生成图像数据 https://blog.csdn.net/u012273127/article/details/53309750?utm_medium=distribute.pc_re ...

  6. python读取tiff文件进行波段计算_python+tifffile之tiff文件读写方式

    背景 使用python操作一批同样分辨率的图片,合并为tiff格式的文件. 由于opencv主要用于读取单帧的tiff文件,对多帧的文件支持并不好. 通过搜索发现了两个比较有用的包:TiffCaptu ...

  7. 『Java』Zip中Excel文件的解析

    前言 永远相信美好的事情即将发生 背景 自从上一次尝试使用 EasyExcel 对文件下载接口进行解析从而完成数据的爬取之后,我便放弃了最开始使用的数据接口解析爬取,转而投入到了 Excel 的怀抱( ...

  8. Python 标准库之 shutil 高阶文件操作『详细』

    Python标准库之 shutil 高阶文件操作『详细』 文章目录 Python标准库之 shutil 高阶文件操作『详细』 一.Python shutil介绍

  9. python读取tiff影像_python+tifffile之tiff文件读写方式

    背景 使用python操作一批同样分辨率的图片,合并为tiff格式的文件. 由于opencv主要用于读取单帧的tiff文件,对多帧的文件支持并不好. 通过搜索发现了两个比较有用的包:TiffCaptu ...

  10. gdal处理tiff文件的小问题

    问题一 :ERROR 1: TIFFResetField:xxxxxxxx: Could not find tag 273. 使用gdal读取tiff文件时遇到的,把dataset用GDALclose ...

最新文章

  1. DynamicPropertyAccessor Expression lambda
  2. linux下安装oracle集群,【Oracle 集群】Linux下Oracle RAC集群搭建之Oracle DataBase安装(八)...
  3. dubbo provider异步_dubbo九连问你知道多少?
  4. 从中心到边缘,IoT正变为互联网之上的一张大网
  5. 基于Docker搭建分布式消息队列Kafka
  6. 安装Node和NPM
  7. PaddleOCR文字识别使用
  8. ARM-ELF文件格式与GNU ARM Linker机制
  9. web_MDN学习资源导航_js初学者快速入门指南项目/javascript高级程序设计vsMDN javascript教程/指南(official)
  10. 以前我劝你们努力,今天我劝你们放弃
  11. erroe C1083:无法打开包括文件(源文件)
  12. 主成分分析法(PCA方法)计算OBB包围盒
  13. SPSS篇—方差分析
  14. 1212 无向图最小生成树
  15. 量化金融模型ARCH模型官方例程(中文翻译版)
  16. 苹果在旧设备中修复了两个 iOS 零日漏洞
  17. Cadence OrCAD Capture 修改添加阵列PIN的递增方向的方法
  18. C++模拟手机调查问卷
  19. 计算机的数学知识的手抄报图片大全,【数学小报图片大全】数学小报简单又漂亮_简单数学小报图片大全_亲亲宝贝网...
  20. 冒泡排序的实现(Java)

热门文章

  1. 值得推荐的C/C++框架和库
  2. 微软官方Windows_Hello生物识别驱动设计指南
  3. slack 聊天机器人_无法筹集资金的Slack机器人
  4. SitePoint / Flippa Hack Day:入侵我们的第一个物联网项目
  5. 计算机视觉术语,计算机视觉常用术语中英文对照
  6. mac/macbook teamviewer 使用 trackpad 触控板双指滑动出问题/出bug/无法控制/无法滚动/速度过快
  7. MySQL-5-MySQL的使用
  8. 【第一阶段 day25 面向对象】 多态
  9. 速读《现代软件工程——构建之法》有感
  10. Google 2019开发者大会速读