Numpy wrapper for fpzip algorithm (P. Lindstrom & M. Isenburg, 2006) RMS Fork
Project description
Introduction
This is a fork of https://github.com/seung-lab/fpzip with changes to allow it to work with Python 3.11 and 3.12; it also has a different test and PyPI deployment system. We are grateful to William Silversmith for all of the hard work necessary to make this project in the first place.
This fork is maintained by the Ring-Moon Systems Node of NASA's Planetary Data System.
fpzip
fpzip is a compression algorithm supporting lossless and lossy encoding for up to 4 dimensional floating point data. This package contains Python C++ bindings for the fpzip algorithm (version 1.3.0). The version number for this package is independent. Python 3.9+ is supported. This package works with both NumPy 1.x and 2.x.
import fpzip
import numpy as np
data = 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')
Installation
pip
Binary Installation
pip install rms-fpzip
If we have a precompiled binary available the above command should just work. However, if you have to compile from source, it's unfortunately necessary to install numpy first because of a quirk in the Python installation procedure that won't easily recognize when a numpy installation completes in the same process. There are some hacks, but I haven't gotten them to work.
pip
Source Installation
Requires C++ compiler.
pip install numpy
pip install rms-fpzip
Direct Installation
Requires C++ compiler.
$ pip install numpy
$ python setup.py develop
References
Algorithm and C++ code by Peter Lindstrom and Martin Isenburg. Cython interface code by William Silversmith. Check out Dr. Lindstrom's site or the fpzip Github page.
- Peter Lindstrom and Martin Isenburg, "Fast and Efficient Compression of Floating-Point Data," IEEE Transactions on Visualization and Computer Graphics, 12(5):1245-1250, September-October 2006, doi:10.1109/TVCG.2006.143.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Hashes for rms_fpzip-1.3.2-cp312-cp312-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2004ad09e6e1b681cd96189038c2a5f8b05bdf655c97a6bdd1be99c5cef329c8 |
|
MD5 | 32d8481e715b3f728e58b27264a5d45e |
|
BLAKE2b-256 | fa0ebf690c773038abb8daa3cd6e41f801bf4f070949eed3cf68d952551e0cf0 |
Hashes for rms_fpzip-1.3.2-cp312-cp312-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6488dc849a4bf0423ad40e0721f5e12ad61b772abfb4148cc567e675a45fd335 |
|
MD5 | 65d6f90a812aae484c401aecedc6e353 |
|
BLAKE2b-256 | fc06bbd83abf81da1d7500240b73135900dea57fe9a52117b66725888747821b |
Hashes for rms_fpzip-1.3.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9a26697ff963eb3ac6f8d3d84ad3448705bf5c550bffbce0b0edd5c24d8bc496 |
|
MD5 | 9e3f5f234756e2f0f9f51e8fc5f759fd |
|
BLAKE2b-256 | a2ddf330c42edcfb8203079ca2fbba7bec184bedaf51a6e25c93351c5ba0b90a |
Hashes for rms_fpzip-1.3.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | eb6cc1aa9c97378c74dae080144aaab0d4904cb0c4c100293aec97cc02d6356c |
|
MD5 | f0a2d6383052115adad71a8d56ce2ccf |
|
BLAKE2b-256 | ce1ccfb46daf6b30dde3f8a918e1da65b46d75a5aba2a5c7015a7609e321188d |
Hashes for rms_fpzip-1.3.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a9a401e73224cfb71df80cd6fe0760f685e01492c8f8b3af1af3d8f34bfc6cbe |
|
MD5 | a3c8fb86fe3d08e16f612e31e5aa8356 |
|
BLAKE2b-256 | 0fdf61eb1111ad8cc8db9aec036b980818a1b4f0e27f0aaf4dea925465277749 |
Hashes for rms_fpzip-1.3.2-cp312-cp312-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3ef69807ff07f1024655bb6d2fc615ca59b0fc961f9e618fd1989f2977787748 |
|
MD5 | 30128ab15e0c1f49f4baa337e21aba5c |
|
BLAKE2b-256 | 408cd17b642416a759d1721f5d07ba39fb6df99ec6b4743dd36935c7543bb818 |
Hashes for rms_fpzip-1.3.2-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d2364a5ec765a22fb304afc06e2ac4c967a12907d02872e68935dd3597e9d873 |
|
MD5 | 3e329ac92c8a4c71281bae0f7ad0942c |
|
BLAKE2b-256 | 9e8811f3a8d3f14b30f5780a5b43cadb8e4bd8fc507b8da9e1db311ec0a36d3e |
Hashes for rms_fpzip-1.3.2-cp311-cp311-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2a7093e0ced35e3267c6b63fa903bbbc57a4d39b81948a9ffdcad83149e7a2dd |
|
MD5 | c3c69dd174e964ae3326e53d25981f91 |
|
BLAKE2b-256 | c810ff2895a7b2a94f9842397bbde36914cba9dd62178870d379b29d8c12f9ae |
Hashes for rms_fpzip-1.3.2-cp311-cp311-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 673eb0633a910be15e4d6574f6b7223f539564bbecfbe551cf36663846ab7703 |
|
MD5 | 5804e2cf7287a9d38e0c68c2f30aba7c |
|
BLAKE2b-256 | ead5ed282596c66d09ec1424db3b2cef7f25a439e72e0543a2ff9c085789ee8a |
Hashes for rms_fpzip-1.3.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 09828cd3c150c8ae0379efff80c53e8adc3aaeed540ca1ce51ca245aa3b76b07 |
|
MD5 | 1cf6131d93dc706e7fbf59b6436828db |
|
BLAKE2b-256 | 7698aa7e97687c30bb98a226616aaf3ee634ab2da938b77d191372edbbfcf0d3 |
Hashes for rms_fpzip-1.3.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cd952ae425a137d43d974277a5d5de483e2cd5987d5475da5b0574ab091d12b7 |
|
MD5 | 6b39ca9954efa0ff3d912700fe46e8c5 |
|
BLAKE2b-256 | fb99a16f3b2c3ca7df68183fd29e1a85d9583ea9017a761112b04be3bbb128da |
Hashes for rms_fpzip-1.3.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 79eeffccc812de4255f26180bce3238e7b4e371e11aef3d1cdc44ed193982fc5 |
|
MD5 | 373152c1cd428bce4ce9e5472afa220f |
|
BLAKE2b-256 | 45238d89c0da275d9404175d7ba23ec0a5473fb5981e2f90fd38552dbd4f4f72 |
Hashes for rms_fpzip-1.3.2-cp311-cp311-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ec8c9957969939b2e6c4419485653d81c431c54de301179772f4693e3fcd3c36 |
|
MD5 | 2691cdb975cbb5a6d044a6b6d08bf38a |
|
BLAKE2b-256 | c5a8467623f383c019dc90103bf0bd60f6b9a1427ff122ff09332b3284ad1762 |
Hashes for rms_fpzip-1.3.2-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5e4db49c326b72736b07e11d90ae16ee38e6a606fbdd957a06346d6e53b7e752 |
|
MD5 | d9170e592fd217a9b9bd977f69b3d436 |
|
BLAKE2b-256 | 9b5bfa375993dd0843e26c3474325084a5b9cc0bf20a4e4309fcc824fc4d8a38 |
Hashes for rms_fpzip-1.3.2-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6bd5f46a53a78b95a62315f19de62127392515b6b51883d1cffd849d19afbbb0 |
|
MD5 | e59afc0ffb4537e0665a1f9ac3abbc40 |
|
BLAKE2b-256 | d87e83bb251c02613a8610af1bf5413da90a79d0c063755d41113a4b31aa0b30 |
Hashes for rms_fpzip-1.3.2-cp310-cp310-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2aa5324772c1f2827bcef164c347fda3029c38db01fcd1e4f70cecbd31ad0d2d |
|
MD5 | 3e28428b79157c6d8e7b2961f103521c |
|
BLAKE2b-256 | b961718c9e56a66a7a2ea212adf798db147428ab6d820a3fb39ece13d774d2e8 |
Hashes for rms_fpzip-1.3.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ff385dc4f255258f583d41d0231a2e7427235b55279475dd4534e4c561cbc8aa |
|
MD5 | 7c56526cccb35d0cd473620489c540ca |
|
BLAKE2b-256 | 2474a9b6c96c064eafd715942caef03b49dcbd7e8f742738c117a0bce10933a8 |
Hashes for rms_fpzip-1.3.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3a411d0a22be9c4eae348af761424f63cb9281df963e8e532f64b9556015964f |
|
MD5 | b585831d94dfa610d86c500405b745b5 |
|
BLAKE2b-256 | afece71b157a64dea686c77c1033991f6ebf406119001bac34cec984537175c1 |
Hashes for rms_fpzip-1.3.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b12edd844ef466c60709f0dcd73ca010671e2523b250e1fab7ebe87570d7aef0 |
|
MD5 | b6f731db19f6e88bd559cb8130a1d5c1 |
|
BLAKE2b-256 | 98d5542325bde572a1f57279ad1c1c373d98abfbbe65a2df954d837c23b337d1 |
Hashes for rms_fpzip-1.3.2-cp310-cp310-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2e8bef7c3d12ca7dc5cf76e37c8bd988061e3146c1239ef2294ffb8b8f4b5559 |
|
MD5 | 189673380c3b7be7ab678866326b0d42 |
|
BLAKE2b-256 | 08eee0a3c5a217d31d91f065c4fc01b19b8f42b484d77627c6768234c0f50d53 |
Hashes for rms_fpzip-1.3.2-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 234dc1f70579102ec4bcff8a140c4e429b56929d8375ea52c5684dded03e27f3 |
|
MD5 | 49c96860f16fd85a6fb8431365d49e6c |
|
BLAKE2b-256 | b3b52891a366a4326d9747b3107ec6a0d0174b53faa23bd647e1b7912d7f95db |
Hashes for rms_fpzip-1.3.2-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 749d80a5a5c5db8d0feefa83e4a98a54ebff4a1deb110756e030bdb56b5b071c |
|
MD5 | 26246541de025100a53351978fd5a4f9 |
|
BLAKE2b-256 | e80af99bc7edb42a0994f7f55002f22de2936792e937ec5e9667d8e27b3983a2 |
Hashes for rms_fpzip-1.3.2-cp39-cp39-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bd82d9d5b9a75eefce3965ea88c1454c8aba9cfff85e552606c2e849cd14c833 |
|
MD5 | 2be5299a8b440cbba3fb9843a443c5eb |
|
BLAKE2b-256 | 1c7eac6185c22e392709165b5938afb77c25106e9613547db7385f3ac56c117a |
Hashes for rms_fpzip-1.3.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 17abc8cb3f62fae69cd10f22ef809aabccdce3c885c88d0cb9ca3da79df04d91 |
|
MD5 | b698512f3c34f53bc515b144303af7b0 |
|
BLAKE2b-256 | 5d515fbfe4e35f7e5407f596cddee337bfa7eed15b3042c58a6306bfc594d0ca |
Hashes for rms_fpzip-1.3.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e4017a6881902a2a485e721a75aac5dc8dc3740fac50dcee4ca649e7a3b612ef |
|
MD5 | 821db2b8da7c125e8bf51dd90671dadf |
|
BLAKE2b-256 | 1cc5e99ceb02ba9c268c7de1878921f0469b3144d41b55bcad5120974329499b |
Hashes for rms_fpzip-1.3.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bcf1920b8ac0e7e2e3b6e321fb65dbbb997bcc9717696e177fafeac4a98c460f |
|
MD5 | 2f9458c486bf84ba05cacb97354590a5 |
|
BLAKE2b-256 | fc598fc30469ada12d2fd18a16ebdb9022988199628c52e30b0960d6fe8e1ce4 |
Hashes for rms_fpzip-1.3.2-cp39-cp39-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 29860a5cf83dd98430a6e5954464cb6512d99e48dc819065d3c6f4d5cde63795 |
|
MD5 | 07197d4b6e7a691aa9a9d93e865f57d2 |
|
BLAKE2b-256 | 2a955e00023dedde7c31af1f228388a0f85ec893b0e41a7989671e8907b46f9c |
Hashes for rms_fpzip-1.3.2-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5452e21aae4170034479cd79bce60323ab1af8d53f804538dc0e5896c0f16188 |
|
MD5 | a5837473fc2d2155cb980ea91e45017e |
|
BLAKE2b-256 | f62bbabb5f568dbc598561d420e3051d2217ddd5a90878093579015d7a22f6a0 |