今天在Solidot上看到一个无损图像压缩库,据称:它的解压缩图像的速度是PNG的2倍,压缩图像快20多倍,它对自然照片的压缩比接近或好于PNG,对高质量照片的压缩比有时甚至强于JPEG-LS。
于是乎,想一探究竟,用git下来源码(地址),200多K,发现在windows上编译比较困难,于是在ubuntu进行。。
首先
git clone git://gitorious.org/imagezero/imagezero.git
执行
./buildconf.sh生成配置文件可能需要安装一堆编译工具如autoconf,automake,libtool等
然后会生成一系列的配置文件,比较重要的是configure
执行
./configure然后就生成MakeFile了执行
make会生成 .libs 等目录
来一张图:
需要注意的是默认不显示.开头的文件夹。。。
这个里面就是结果了,包括iz_test可执行文件和libiz-0.0.1.so等,
使用make install会把这里头的libiz.a,libiz.la,libiz.so,libiz-0.0.1.so复制到/usr/local/lib文件夹中
直接运行 iz_test测试一下,提示如下错误:
iz_test: error while loading shared libraries: libiz-0.0.1.so: cannot open shared object file: No such file or directory
这是因为没有更新动态链接库,运行一下
ldconfig命令,再执行iz_test就ok了, 提示如下:
Usage: iz_test [c|d] INPUTFILE OUTPUTFILE
Use "iz_test --help" for more information
此工具目前只支持ppm格式的图片压缩与解压,手头没有,
安装netpbm,然后使用bmptopnm工具转换一张bmp图片到ppm格式
bmptopnm ~/Downloads/img9.bmp >> ~/Downloads/img.ppm
然后测试压缩
iz_test c ~/Downloads/img.ppm ~/Downloads/img.iz
我使用的一张图片是1.1M的jpg,转成bmp是6.59M,转成ppm大小6.59,转成png是6.06
压缩成iz格式是3.4M
解压提示
"Segmentation fault",
另外找了一张teapot.ppm(git里头自带的)依然是这个错误
压缩与解压缩的速度我这边是暂时没办法比较了,
呃,成果不多,压缩比高于PNG倒是显而易见,只是无法解压缩,所以不知道压缩出来的的iz文件是否有问题。