python - TIFF 文件具有奇怪的元信息,特别是图像大小
问题描述
我有一些 tiff 图像文件,它们在一个 tiff 文件中有多个页面。
我试图通过使用 libtiff 和一些 python 库读取图像元信息来制作分离的图像文件,但图像大小似乎很奇怪。
下面是使用 tiffinfo 对页面的描述。
TIFF Directory at offset 0x67ca (26570)
Image Width: 1728 Image Length: 1131
Resolution: 204, 98 pixels/inch
Bits/Sample: 1
Compression Scheme: LZW
Photometric Interpretation: min-is-white
FillOrder: lsb-to-msb
Orientation: row 0 top, col 0 lhs
Samples/Pixel: 1
Rows/Strip: 1131
Planar Configuration: single image plane
Page Number: 0-8
ImageDescription: 0512464945
但实际上,如果我用图像查看器(对我来说,我只使用默认的 Windows 图像查看器程序)看到这个图像,它的高度比宽度长。
每当我将此图像更改为单独的 TIFF 图像时,它看起来与原始 TIF 文件相同。
但是当我将此图像更改为 PNG 时,它会缩小并且看起来大小已更改。
无论使用 LZW 或 CCITT 等压缩方法还是 OpenCV、pillow、tiffimage 等 python 库,都会发生此问题。
为什么会如此不同?以及在转换 PNG 格式时如何调整此图像大小?
由于图片中的个人信息导致样本图片不佳,敬请见谅
解决方案
Resolution: 204, 98 pixels/inch
这是您需要合并的信息。
Image Width: 1728 Image Length: 1131
>>> 1728 / 204, 1131 / 98
(8.47, 11.54) # inches
推荐阅读
- java - 导航组件:从全局操作传递参数会导致 NullPointerException
- ios - FirstResponder 只能在 textView 的一小部分中被点燃
- corda - 不支持同时使用多个模拟网络
- bash - bash 脚本中多个函数的计时执行时间
- sql - 如何拆分多个字符串并插入 SQL Server FN_SplitStr
- java - 将数据从活动传递到底部导航栏的片段
- reactjs - 可以从一台服务器向另一台服务器发出请求 - “错误:请求失败,状态码 401”
- c# - 从.NetCore2.1更改TargetFramework时如何替换Database.ExecuteSqlQuery
- ios - == 运算符什么时候依赖于 Equatable,什么时候不依赖?
- javascript - 如何使用 php 向数据库表中插入多个值?