Image transformation, compression, and decompression codecs
Project description
Imagecodecs is a Python library that provides block-oriented, in-memory buffer transformation, compression, and decompression functions for use in the tifffile, czifile, and other scientific imaging modules.
Decode and/or encode functions are currently implemented for Zlib DEFLATE, ZStandard, Blosc, LZMA, BZ2, LZ4, LZW, LZF, ZFP, NPY, PNG, WebP, JPEG 8-bit, JPEG 12-bit, JPEG SOF3, JPEG LS, JPEG 2000, JPEG XR, PackBits, Packed Integers, Delta, XOR Delta, Floating Point Predictor, and Bitorder reversal.
- Author:
- Organization:
Laboratory for Fluorescence Dynamics. University of California, Irvine
- Version:
2019.1.14
Requirements
This release has been tested with the following requirements and dependencies (other versions may work):
libjpeg-turbo 2.0.1 (8 and 12-bit)
Required for testing:
Notes
Imagecodecs is currently developed, built, and tested on Windows only.
The API is not stable yet and might change between revisions.
Works on little-endian platforms only.
Python 2.7, 3.4, and 32-bit are deprecated.
The Microsoft Visual C++ Redistributable Packages are required on Windows.
Refer to the imagecodecs/licenses folder for 3rd party library licenses.
This software is based in part on the work of the Independent JPEG Group.
This software includes modified versions of dcm2niix’s jpg_0XC3.cpp and openjpeg’s color.c.
To install the requirements for building imagecodecs from source on Debian based Linux distributions, run:
$ sudo apt-get install build-essential python3-dev cython3 python3-setuptools python3-pip python3-wheel python3-numpy libz-dev libblosc-dev liblzma-dev liblz4-dev libzstd-dev libpng-dev libwebp-dev libbz2-dev libopenjp2-7-dev libjpeg62-turbo-dev libjxr-dev liblcms2-dev libtiff-dev
Other Python packages providing imaging or compression codecs:
Revisions
- 2019.1.14
Pass 2123 tests. Add ZFP codecs via zfp library (WIP). Add numpy NPY and NPZ codecs. Fix some static codechecker errors.
- 2019.1.1
Update copyright year. Do not install package if Cython extension fails to build. Fix compiler warnings.
- 2018.12.16
Pass 1537 tests. Reallocate LZW buffer on demand. Ignore integer type output arguments for codecs returning images.
- 2018.12.12
Enable decoding of subsampled J2K images via conversion to RGB. Enable decoding of large JPEG using patched libjpeg-turbo. Switch to Cython 0.29, language_level=3.
- 2018.12.1
Add J2K encoder (WIP). Use ZStd content size 1 MB if it cannot be determined. Use logging.warning instead of warnings.warn or print.
- 2018.11.8
Pass 1323 tests. Decode LSB style LZW. Fix last byte not written by LZW decoder (bug fix). Permit unknown colorspaces in JPEG codecs (e.g. CFA used in TIFF).
- 2018.10.30
Add JPEG 8-bit and 12-bit encoders. Improve color space handling in JPEG codecs.
- 2018.10.28
Rename jpeg0xc3 to jpegsof3. Add JPEG LS codec via libcharls. Fix missing alpha values in jxr_decode. Fix decoding JPEG SOF3 with multiple DHTs.
- 2018.10.22
Add Blosc codecs via libblosc.
- 2018.10.21
Builds on Ubuntu 18.04 WSL. Include liblzf in srcdist. Do not require CreateDecoderFromBytes patch to jxrlib.
- 2018.10.18
Improve jpeg_decode wrapper.
- 2018.10.17
Add JPEG SOF3 decoder based on jpg_0XC3.cpp.
- 2018.10.10
Add PNG codecs via libpng. Add option to specify output colorspace in JPEG decoder. Fix Delta codec for floating point numbers. Fix XOR Delta codecs.
- 2018.9.30
Add LZF codecs via liblzf.
- 2018.9.22
Add WebP codecs via libwebp.
- 2018.8.29
Pass 396 tests. Add PackBits encoder.
- 2018.8.22
Add link library version information. Add option to specify size of LZW buffer. Add JPEG 2000 decoder via openjpeg. Add XOR Delta codec.
- 2018.8.16
Link to libjpeg-turbo. Support Python 2.7 and Visual Studio 2008.
- 2018.8.10
Initial alpha release. Add LZW, PackBits, PackInts and FloatPred decoders from tifffile.c module. Add JPEG and JPEG XR decoders from czifile.pyx module.
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 Distribution
Built Distributions
Hashes for imagecodecs-2019.1.14-cp37-cp37m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 27e8c19a692ed792aa07d8d295872563cafaec5f40d67b9e8df37192b1ecdf19 |
|
MD5 | 405ed34505720a70738934306ab7b090 |
|
BLAKE2b-256 | a1c25babf2791312c3c3a0eeb503de3e08876236bbb160f02e44756d99dda423 |
Hashes for imagecodecs-2019.1.14-cp37-cp37m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a0c03204f9998f74fd3b0114a1a627e5e630c2722b5f1dfec9e2bd16811562f6 |
|
MD5 | b921a7e4322382cb7d5dbcf65e1bfe4f |
|
BLAKE2b-256 | f0e330dfd955bdb851178af544e59ebdda08c5ed17affbb2e5b378c1d7cf39f8 |
Hashes for imagecodecs-2019.1.14-cp36-cp36m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0d255c1fa03b6c0f38f64f9947c5fdad7274b8d1cdc2ae5ec1acf85f02bd28a9 |
|
MD5 | 1cf4993066ecff594d09536787b7ee48 |
|
BLAKE2b-256 | ac7e639686569c5e438a928fe95ab9b193c11816499c5c35c9d093a6e1fbacfe |
Hashes for imagecodecs-2019.1.14-cp36-cp36m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e4af3fd1a55f612e7f924d759c6badeccc7ba1472bacc031fd9e75519d54e3a1 |
|
MD5 | dfeee1bf2f574f8ec9ae1dc1a1a6358f |
|
BLAKE2b-256 | d0f0e9aaffc319b9198ec78e3e33f702327b3e91aab71224a0a42d0067ecf873 |
Hashes for imagecodecs-2019.1.14-cp35-cp35m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6e7c81edec8428ca8b8d964ad7179a3c2890a52b0beb5f32d03a3e0a647119db |
|
MD5 | e43539fd155c4f445302c6e26f6d918b |
|
BLAKE2b-256 | e72ffe62c0a663a133816d9bda6fd70128b63c1ace5d3bc890a284d643eab671 |
Hashes for imagecodecs-2019.1.14-cp35-cp35m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9709732bd44ca630faf8c0958660430e65edba38f1826078a3ee87aff768b949 |
|
MD5 | 172b005feb0321df45e8b26f3a6bd338 |
|
BLAKE2b-256 | 0bb96e56e975f605c981f9191ac6b3063adabb74db4970f387142afdaef8b0a5 |
Hashes for imagecodecs-2019.1.14-cp34-cp34m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1bd066460eeae7382559b336e15458079a81cd5ec92916460f6077f3e96e667c |
|
MD5 | dea76f723c0fdcf669f063893e6f289e |
|
BLAKE2b-256 | d9fd0c50c8e1f4383c2cfcf18526dc7f0e021adf20d4fdfee09023db84a28149 |
Hashes for imagecodecs-2019.1.14-cp34-cp34m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e67b9a2594455229f06135718b9f8391cd6085347c34cf1e1762da5566d1067b |
|
MD5 | 57a8f7a2a2e3222c573450243991b207 |
|
BLAKE2b-256 | 819aadfb6846eef296fc3f73fa0a126c42e76b5efc3f9161f0e1e149c74eae00 |
Hashes for imagecodecs-2019.1.14-cp27-cp27m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 324548ae2e38c7ab674f1ee93eae84f38e185f58cd494f2d08298dcafc2129b2 |
|
MD5 | 321dd9e6f49602457dfadd956b976b1b |
|
BLAKE2b-256 | 4414c5bb622858c5e8e45e0045b0a8d0570bf23e7f61ea6ab80b47f722b2a2d2 |
Hashes for imagecodecs-2019.1.14-cp27-cp27m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cd4a057c6aa7cfa2b87b31a8aa8118ae3675221dca3950e716831bd5f0c3dbe6 |
|
MD5 | 032456ee0942dce640784e4d41e8e71f |
|
BLAKE2b-256 | af155b009cdbe4dd22f2c53e17e1ee275645370b8a65a70bb7118b814377dad5 |