fpzip
fpzip是一种支持对高达4维浮点数据进行无损和有损编码的压缩算法。这个包包含Pfthon C++绑定的FPZIP算法(版本1.2.0)。此包的版本号是独立的。支持Python2.7和Python3+。importfpzipimportnumpyasnpdata=np.array(...,dtype=np.float32)# up to 4d float or double array# Compress data losslessly, interpreting the underlying buffer in C (default) or F order.compressed_bytes=fpzip.compress(data,precision=0,order='C')# returns byte string# Back to 3d or 4d float or double array, decode as C (default) or F order.data_again=fpzip.decompress(compressed_bytes,order='C')
安装
pip二进制安装pip install fpzip
如果我们有一个预编译的二进制文件可用,上面的命令应该可以正常工作。但是,如果必须从sounce编译,很不幸必须首先安装numpy,因为python安装过程中有一个怪癖,当numpy安装在同一个过程中完成时,很难识别。有一些黑客,但我还没让他们工作。
pip源安装
^ {EM1}$需要C++编译器。pip install numpy
pip install fpzip
直接安装
^ {EM1}$需要C++编译器。$ pip install numpy
$ python setup.py develop
参考文献
算法和C++代码由Peter Lindstrom和Martin Isenburg编写。威廉西尔弗史密斯的cython接口代码。签出Dr. Lindstrom's site。Peter Lindstrom和Martin Isenburg,“Fast and Efficient Compression of Floating-Point Data,”关于可视化和计算机图形的IEEE事务,12(5):1245-1250,2006年9-10月,DOI:10.1109/TVCG.2006.143。
欢迎加入QQ群-->: 979659372
推荐PyPI第三方库