第 4 组减压 - 通过模式是否对参考线或编码线的颜色进行编码?

Group 4 decompression - does a Pass Mode code the color of the reference line or coding line?

我一直在实施第 4 组图像压缩算法,试图转换一些文件(不是 TIFF),类似于这个问题中的人:Algorithm issue with TIFF CCITT Group 4 decompression (T.6)

我已经找到了许多用于执行此操作的重要资源,但我有一个问题。我发现当遇到通过模式时,接下来的位将是 运行-长度 b1b2 的编码。这将采用参考线或编码线的颜色吗?他们会相反,所以我不确定如何对待它。我自然会假设您正在编码的颜色是编码线,所以这就是您所采用的颜色,而且 运行-length 将是参考线颜色的正常长度,这意味着它应该是更好地压缩以使用参考线的颜色代码。

那是哪一个?

以下是我参考的一些链接:

https://www.itu.int/rec/dologin_pub.asp?lang=e&id=T-REC-T.6-198811-I!!PDF-E&type=items http://www.fileformat.info/format/cals/egff.htm http://www.fileformat.info/mirror/egff/ch09_05.htm

https://books.google.com.au/books?id=LHCY4VbiFqAC&lpg=PA253&ots=N3w5NkHek8&dq=group%204%20two%20dimensional%20bit&pg=PA254#v=onepage&q=group%204%20two%20dimensional%20bit&f=false

https://books.google.com.au/books?id=c9OoCAAAQBAJ&lpg=PA96&ots=sGKb9m76a0&dq=group%204%20two%20dimensional%20bit&pg=PA98#v=onepage&q=group%204%20two%20dimensional%20bit&f=false

密码后面没有任何编码位,它只是意味着将当前X位置前进到下一个相同颜色的参考位置。按照G4标准变量名,pass code是这样处理的:

< switch statement on G4 code >
...
case PASS_CODE: // A0 = B2, iRef+=2 
   iReference++; // skip B1
   a0 = pRefLine[iReference++]; // B2 - next reference pos of the same color
   break;