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, 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.1
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 and 3.4 are deprecated.
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.1
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.1-cp37-cp37m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ca8e13cbb6df96652cebba56ee0bed67da33649c22cd60a9c80d9bd603f91ee8 |
|
MD5 | a5c8ff3025615cd728700002b41eabd8 |
|
BLAKE2b-256 | d5aa8125882f151b1738f67c4ab3724c8ac05faa85bf8c6a3745d8629157722d |
Hashes for imagecodecs-2019.1.1-cp37-cp37m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f8995096185a6a5e3136edc133ffb54c6aee378a0a2c7f7a13cb8280adca05cb |
|
MD5 | 63c3483dd33019af864f6584f0453866 |
|
BLAKE2b-256 | 86bea9c6140903fd1da8397e39c44b50d6bf129b21a067343b9d25726e3f45d8 |
Hashes for imagecodecs-2019.1.1-cp36-cp36m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 104352470bb8883c471e0a123e425ea4b30898ad2f726e4883a617b8f90c3253 |
|
MD5 | 7a91cd6958ebc95ff15cec0762c706c5 |
|
BLAKE2b-256 | f9de9d904b619d336db7a311909e21e21de2f91affdae913c578b5ea99fc2db1 |
Hashes for imagecodecs-2019.1.1-cp36-cp36m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bcdfcad0a21184a80a63144a45210451e9946db3a0f3710e1b3810b112356e68 |
|
MD5 | 9623ef2ceb634e1c544b2dcc23f066cf |
|
BLAKE2b-256 | 9907f191e048abd098c0b6c199bddf769cdaf98fa9dc97213a0ae784a79c471c |
Hashes for imagecodecs-2019.1.1-cp35-cp35m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 33da6255f25ff660c7630e231e3585f48df3e0f454c1a8e6eca4d9c64894109b |
|
MD5 | 9b4fceafaa3234a811b4b533f5dc69db |
|
BLAKE2b-256 | 63c872030faf38731add1e402a64681634eb15a763a052b7c5084b839843ef0b |
Hashes for imagecodecs-2019.1.1-cp35-cp35m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 255e5c9b23c06ea1c58c43b830f444a09e7f52c035c2056f2c6d6e1207795397 |
|
MD5 | 3b3af0dc00dc52786966574d75c6cefc |
|
BLAKE2b-256 | 766b4e69296e609b477bec85784b1ef26c15650683b6d4d18949735345b05fb7 |
Hashes for imagecodecs-2019.1.1-cp34-cp34m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7ec454676be968c218e242fecc51f3a1e71e29fee63e0a4f7a731cd40972489d |
|
MD5 | 327323390eb8e2847fd3a6acc9c1e742 |
|
BLAKE2b-256 | 9d10a0fcc6795c1e8ca4f11ea695e3e80a7bdd275b093440c24ede330e4ff0d0 |
Hashes for imagecodecs-2019.1.1-cp34-cp34m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 69aed3bbe5e8de9b49626423acab91780a0ee42c3ec30ef5f8856dbdf5e65ac5 |
|
MD5 | 435ce78a6ec0e30bbc23948197de880d |
|
BLAKE2b-256 | a3d642c293156c244190ca8a036c7dc9ff5db5fc72e29738da63f47bb372ebc2 |
Hashes for imagecodecs-2019.1.1-cp27-cp27m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 51167bae3bf0bf7908615a2193045b0df358922f6383501b6a55f9f958d2bd6a |
|
MD5 | 179ce5db1848176b433e87fef9fcf3ef |
|
BLAKE2b-256 | a05b45e5d603b0081d859ca8cb826ea5328634e9e9f69fb4e6391b828d76221d |
Hashes for imagecodecs-2019.1.1-cp27-cp27m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4c11876902489349b98aaf2729ff111fb25a655db00be64105fd10bf95530348 |
|
MD5 | 0056a602d03e4d43c5c4f54e9bbd3e8f |
|
BLAKE2b-256 | 2361a19403b9a9d1a48ad2c91a846cc281f5e6cc1bd7d6a81ffc530a63851667 |