Libtiff读写三维tiff图像块(16位、8位)

文章探讨了使用libtiff库处理图像时遇到的数据类型与位深对应问题,以及16位图像相对于8位图像在读写过程中的差异。重点在于TIFFStripSize函数的理解,16位图像的内存布局,以及读写代码示例,特别是内存分配和图像数据的读取策略。
摘要由CSDN通过智能技术生成

我踩过的坑(问题/原理)

1.数据类型需要和图像位深一一对应,否则会出现奇怪的错误(其实就是因为libtiff的内存存储原理不明白,后总结规律就是需要数据类型和位深一一对应)

8位——uint8,16位——uint16,32位——uint32

2.16位图像相较于8位图像的读入和写出方式中“*2”的问题:

根源之一:TIFFStripSize函数返回的到底是什么??C++ TIFFStripSize函数代码示例 - 纯净天空 (vimsky.com)

根源之二:Tiff中不同位深的图像在内存中的布局到底是怎样的?这样的布局和读写之间有着怎样的调用关系??

根源之三:Tiff库对图像数据存储的布局方式??

写出时:16位和8位图像在写出时有个2倍的关系

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值