我正在处理用于图像压缩的 TIFF 图像。
我想知道实际的原始图像数据(即 R、G、B 组件)是如何组织/存储在 TIFF 文件中的。
它是否存储为 G0B0R0G1B1R1...(每个颜色分量各 1 个字节,所有分量交错)
或者是其他方式,即。平面格式还是其他?
谢谢你。
-广告。
TIFF 规定:
页面属性包括以下属性:
换句话说,TIFF 文件可能包含使用许多不同编码方案中的任何一种进行编码的数据。
我一直在做同样的事情,使用 tiff 文件查看多分辨率 tiff。
Adobe在其网站上有 TIFF 6 文档。
您应该能够通过 c# 或 vb.net在LibTiff上使用P/Invoke 。
它们有许多类型的压缩,其中一些是专有的。
查看 tomassao 提供的文档,我发现未压缩的 RGB 只是可能的 tiff 编码之一。
看起来数据没有交错。实际上,您可以为每个像素指定超过 3 个样本(但 RGB 为 3),并且您可以为每个样本指定不同的位数(但常见的是 8、8、8)。
我假设你已经知道标题是如何工作的。如果您不这样做,该文件将涵盖它。
Tiff 压缩可通过 libtiff 或 ImageMagick 免费获得,并内置于 .NET 和 Java 中。如果您需要高级功能,像我这样的公司 ( Atalasoft ) 会提供对精确编码的更多控制(支持切片或条带、旧式 JPEG 编码、更轻松的 tiff 标签访问等)。