使用 LZW 解压缩解码 tiff 文件时,编码比特流中的前 9 位应为“256”,即明码。
但是当我读到它时,我得到了一个 128,我就是想不通。我用GDAL创建了文件。
我读取文件的代码是:
val res = (for {
i <- 0 until next
if (bitSet.get(i + index))
} yield (1 << i)).sum
索引是编码比特流中的索引,接下来是我应该读取多少位(从 9 开始)。
所以我的问题是为什么我读的是 128 而不是 256?打印比特流输入时,设置为 1 的第一位是第 8 位(索引 7)。
有问题的文件是:https ://dl.dropboxusercontent.com/u/42266515/aspect_lzw.tif
谢谢!