TIFF文件读取总结
去年工作中,有用到tiff图像处理。开始的时候直接用QT的Qimage进行图像加载。然后发现大的TIFF图像用这个加载不进去。寻找原因,是由于TIFF图像分为标准TIFF和BIG TIFF两种格式,而QT的Qimage只支持标准的格式。
然后,用GDAL库支持BIG TIFF格式读取。然后发现在TIFF文件很大的时候在new内存的时候,常常发生电脑卡死的情况。又开始了分块读入TIFF图像。
最终的读取方式:
.........
GDALAllRegister(); CPLSetConfigOption("GDAL_FILENAME_IS_UTF8", "NO"); //支持中文路径GDALDataset* poDataset = (GDALDataset *)GDALOpen(imgPath, GA_ReadOnly);if (poDataset == nullptr){// "Can't Open Image!" this->allowClose = true;return ;}..........poDataset->RasterIO(GF_Read, ImgK_Px_min, ImgK_Py_max, crop_width, crop_height,data3, crop_width, crop_height, GDT_Byte, band_count, pBandMap, band_count, crop_width*band_count, 1);............
从(ImgK_Px_min,ImgK_Py_max)点读取长宽为(crop_width,crop_height)的一块矩形图像。RasterIO(…,band_count, crop_width*band_count, 1)代表的是按照一行一行的进行数据存储到data3这个buffer里面。
另外,在调试过程中,注意,最后一块和开头一块的起始和结束位置。起始像素是(0,0),结束像素是(imgWidth-1,imgHeight-1)。
TIFF文件读取总结相关推荐
- tiff文件读取若干问题
tiff文件读取使用开源的libtiff库,可以在官网上下载相关代码,win下编译可以参考网上教程,总之编译与路径设置过程不复杂,这里主要是使用库文件报错的解决办法. 1.找不到msvcr90.dll ...
- python读取tiff文件进行波段计算_python+tifffile之tiff文件读写方式
背景 使用python操作一批同样分辨率的图片,合并为tiff格式的文件. 由于opencv主要用于读取单帧的tiff文件,对多帧的文件支持并不好. 通过搜索发现了两个比较有用的包:TiffCaptu ...
- GeoTools读取Tiff文件
最近有个需求,要使用GeoServer自动发布InSAR处理的Tiff文件结果,基本思路: (1)上传TIFF文件,通过GeoServer REST API发布成WMTS服务: (2)使用GeoToo ...
- python读取tiff影像_python+tifffile之tiff文件读写方式
背景 使用python操作一批同样分辨率的图片,合并为tiff格式的文件. 由于opencv主要用于读取单帧的tiff文件,对多帧的文件支持并不好. 通过搜索发现了两个比较有用的包:TiffCaptu ...
- python读取tiff文件_python+tifffile之tiff文件读写方式
背景 使用python操作一批同样分辨率的图片,合并为tiff格式的文件. 由于opencv主要用于读取单帧的tiff文件,对多帧的文件支持并不好. 通过搜索发现了两个比较有用的包:TiffCaptu ...
- [MATLAB学习tip3]geotiff(tif/tiff)文件读取、使用与保存
tiff文件简述: tif和tiff是同类文件不同表述,仅是拓展名写法不同:但是geotiff文件与tiff文件存在轻微不同,如下: 在tiff格式上加载了地理信息,就成为了我们使用频繁的geotif ...
- python批量读取tiff文件_Python图像分析:从共焦显微镜读取多维TIFF文件
我不确定'hyperstack to stack'函数是否是您想要的.超stack是简单的多维图像,可以是4D或5D(宽度.高度.切片.通道(例如,3个用于RGB)和时间帧).在ImageJ中,每个维 ...
- 后缀为.adf 文件读取,转化为tiff(shp)格式,并输出netcdf格式的数据
.adf文件读取,转化为shp或者tif格式,并输出Netcdf格式的数据文件 使用工具为arcgis,本人安装的是arcgis10.8,安装包可自行下载,或者私信我. 以海报高度地形数据的读取为例 ...
- Java GUI编程:swing实现上传tiff文件至hdfs功能
上传tiff文件至hdfs pom <?xml version="1.0" encoding="UTF-8"?> <project xmlns ...
- 保存多序列tiff文件_解码TIFF文件
0 引言 最近想在Unity中加载一张TIFF图片,因为该图片存储的是海洋流场数据,所以每个像素存的是四通道的32位float,并且还采用了LZW压缩.在网上找了很多读取TIFF文件的代码,也试了下载 ...
最新文章
- 捣鼓 Subversion
- 自动控制matlab实验,自动控制matlab实验.doc
- Product not scheduled in sales organization XXX,distribution channel
- NeHe OpenGL第四十六课:全屏反走样
- 小米9疑似入网工信部 官宣暗示发布时间
- [贪心算法] 例6.2 今年暑假不AC
- 【洛谷P3369】【模板】普通平衡树题解
- 应届毕业生如何打破面试焦虑
- Asymptotic efficiency of nonparametric tests笔记(正在进行中)
- c++中引用、指针、值的区别与用途详解
- arduino期末考试题
- 弘辽科技:拼多多店铺层级会掉吗?怎么划分?
- nginx 开机启动报错An error occurred.
- Swift 标准库源码 第三方,Almofire,Kingfisher,SwiftyJson,KakaJson,单元测试 request
- 关于 使用python向qq好友发送消息(对爬虫的作用----当程序执行完毕或者报错无限给自己qq发送消息,直到关闭)...
- java csv下载_java实现csv文件下载
- C语言:如何判断回文数
- 浏览器输入baidu.com加载的过程是什么,听完我的回答和尚摇了摇头,就这?
- PHP_thinkPHP框架(1)
- r语言读取C盘的csv文件,R语言开发之CSV文件的读写操作实现