我正试图压缩一个类似的JPG图像的大型存档。到目前为止,我发现的最好的压缩算法是fp8fp8。在这个问题中,我展示了我的测试,并要求提供更好的选项。但fp8是迄今为止我发现的最好的。它将我的数据集缩小到其大小的80%,比任何其他传统压缩实用程序(zip、z7、rar、tar、bz2等)都要好得多,即使它仍然不理想(如果您有更好的选项建议,请访问那个问题 )。
然而,fp8似乎是我只为windows找到的一个废弃的实用程序(我已经在葡萄酒下运行了测试)。
的fp8算法实现的实用工具吗?
我在Ubuntu存储库中找到了zpaq,这也提供了PAQ压缩的一个实现。然而,它在类似的JPG图像上的表现要差得多。这就是为什么我专门寻找的fp8或具有类似的o更好的性能与类似的JPG图像。
发布于 2018-04-08 17:03:18
FP8格式似乎是因其作者赞成ZPAQ格式而退休格式,这就是为什么您找不到较新的版本:
ZPAQ旨在以类似或更好的可移植标准格式取代PAQ及其变体(PAQ8、PAQ9A、LPAQ、LPQ1等)。当前版本的PAQ中断存档兼容性与每次压缩改进。ZPAQ旨在解决这个问题。我不再维护旧的PAQ代码。
ZPAQ 似乎已经过时了的Ubuntu发行版,所以您可能希望使用ZPAQ网站上的版本来升级:https://pkgs.org/download/zpaq。更新版本支持更多关于压缩行为的选项(来自ZPAQ文档):
-mtype[Blocksize[.pre.argcomp.arg]…]]-methodtype[Blocksize[.pre.argcomp.arg]…]]使用add,选择一个压缩方法。类型可以是0、1、2、3、4、5、x或s。可选的Blocksize可能是0..11,在类型之后没有空格,比如-m10或-method 511。其余的参数,以句点或逗号分隔,没有空格,仅允许类型为x或s,例如-mx4.3ci1。如果类型为数字,则较高的数字压缩效果更好,但速度较慢。默认情况是-m1。建议备份。-m2压缩速度较慢,但解压缩速度与1一样快。建议将档案压缩一次,并多次解压缩,例如下载。-m0存储的是去重复,但没有进一步的压缩。Blocksize说要将碎片打包到高达2^Blocksize MiB的块中。使用更大的块可以提高压缩,但需要更多的内存,而且速度可能更慢,因为每个块被单独的线程压缩或解压缩。对于级别4和级别5的线程,每个线程最多需要8倍的块大小。类型0和1的默认块大小为4 (16 MiB),否则为6 (64 MiB)。...
首先,我将尝试通过-m2通过-m5来查看是否可以获得类似的压缩(-m1是默认的,并且是为大小和速度之间的平衡而设计的:它等同于其他程序中的-1 )。
您还可以使用其他一些调整(检查文档),但是除非您必须有一个特定的设置,如-method x6.1.4.0.5.27.1 ("64 MiB块(6),不带E8E9的可变长度LZ77 (1),最小匹配长度4,没有二次搜索(0),搜索深度2^5 = 32在后缀数组的每个方向(27 =6+ 21),以及1字节向前查找“从文件里!),不要担心;预定义的设置可能很好。
如果您绝对必须拥有原始的FP8程序,那么它是可用的在GitHub上以源形式出现.,您将需要git、nasm和32位GCC工具链(这些程序有32位的汇编文件,这使得它们不能作为64位程序构建)。
发布于 2018-04-10 01:46:54
经过一些额外的研究,我发现最新一代的paq8算法( fp8是其中的一个版本)正在paq8pxd软件中开发。git存储库是这里,以前版本的历史是这里。基准测试、二进制文件和更多信息经常在Paq8pxd切分螺纹 at encode.ru上发布。
paq8包含一个JPG模型,因此它可以将JPG文件压缩到原始大小的70-80%。然而,尽管zpaq是一个较新的包,但它没有包含这样的模型,这说明它在JPG图像上的性能要低得多。
关于zpaq,Ubuntu存储库中的版本非常过时(v1.10)。最新的版本(v7.14)可以找到这里,它包含一个Makefile,它使在Ubuntu中编译非常容易。但是,它仍然不包括JPG模型,因此,它在jpg文件上做得不太好,而且在这个特定的应用程序中,基于paq8的旧包的性能优于jpg模型。
https://unix.stackexchange.com/questions/436365
复制相似问题