Skip to main content

Utilities for JPEG data access and manipulation in pytorch

Project description

TorchJPEG

pipeline status coverage report PyPI License

This package contains a C++ extension for pytorch that interfaces with libjpeg to allow for manipulation of low-level JPEG data. By using libjpeg, quantization results are guaranteed to be consistent with other applications, like image viewers or MATLAB, which use libjpeg to compress and decompress images. This is useful because JPEG images can be effected by round-off errors or slight differences in the decompression procedure. Besides this, this library can be used to read and write DCT coefficients, functionality which is not available from other python interfaces.

Besides this, the library includes many utilities related to JPEG compression, many of which are written using native pytorch code meaning they can be differentiated or GPU accelerated. The library currently includes packages related to the DCT, quantization, metrics, and dataset transformations.

LIBJPEG

Currently builds against: libjpeg-9d. libjpeg is statically linked during the build process. See http://www.ijg.org/files/ for libjpeg source. The full libjpeg source is included with the torchjpeg source code and will be built during the install process (for a source or sdist install).

Install

Packages are hosted on pypi. Install using pip, note that only Linux builds are supported at the moment.

pip install torchjpeg

If there is demand for builds on other platforms it may happen in the future. Also note that the wheel is intended to be compatible with manylinux2014 which means it should work on modern Linux systems, however, because of they way pytorch works, we can't actually build it using all of the manylinux2014 tools. So compliance is not guaranteed and YMMV.

torchjpeg is currently in pre-beta development and consists mostly of converted research code. The public facing API, including any and all names of
parameters and functions, is subject to change at any time. We follow semver for versioning and will adhere to that before making and breaking
changes.

Citation

If you use our code in a publication, we ask that you cite the following paper (bibtex):

Max Ehrlich, Larry Davis, Ser-Nam Lim, and Abhinav Shrivastava. "Quantization Guided JPEG Artifact Correction." In Proceedings of the European Conference on Computer Vision, 2020

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

torchjpeg-0.9.15.tar.gz (1.0 MB view details)

Uploaded Source

Built Distributions

torchjpeg-0.9.15-cp39-cp39-manylinux2014_x86_64.whl (3.9 MB view details)

Uploaded CPython 3.9

torchjpeg-0.9.15-cp38-cp38-manylinux2014_x86_64.whl (3.9 MB view details)

Uploaded CPython 3.8

torchjpeg-0.9.15-cp37-cp37m-manylinux2014_x86_64.whl (3.9 MB view details)

Uploaded CPython 3.7m

File details

Details for the file torchjpeg-0.9.15.tar.gz.

File metadata

  • Download URL: torchjpeg-0.9.15.tar.gz
  • Upload date:
  • Size: 1.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.4 CPython/3.9.1 Linux/4.19.78-coreos

File hashes

Hashes for torchjpeg-0.9.15.tar.gz
Algorithm Hash digest
SHA256 bba8f639ea9c1a5cecad8cf14dcfe4929026627d9446488372cb5bf28f554cdc
MD5 9044edf1ee16557b0d4b9c1a65b76c63
BLAKE2b-256 4c70f90720f78a6f27fde2b36256e1f5c89c3c1c9c7e541e0564ec4d9608b307

See more details on using hashes here.

File details

Details for the file torchjpeg-0.9.15-cp39-cp39-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for torchjpeg-0.9.15-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6a7ef017ee29924dcdcd11eeb5260a081308a443d007f76388dd03bb407a59f1
MD5 969265cfb56e628305294f449ec359e9
BLAKE2b-256 f2539493aea75fe07746df803f9ed6c7cc07a9360ea59fe7829e2afb77eb3447

See more details on using hashes here.

File details

Details for the file torchjpeg-0.9.15-cp38-cp38-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for torchjpeg-0.9.15-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5e8229546387a23dc8ef71e614cad7f077baae8d5bb1159f72d8beec8429daa3
MD5 90091d53dca7c36d7cf268a05495d1bf
BLAKE2b-256 872f5807b5b921bcf3721e26371dffd250ae85542586db1deb5f17f73868b804

See more details on using hashes here.

File details

Details for the file torchjpeg-0.9.15-cp37-cp37m-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for torchjpeg-0.9.15-cp37-cp37m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ed6b5e54e5ea309c3e45b4c3c3933041f2fc207af0d8788d40d3cd5f623f400f
MD5 46cf34cfda428eb4acf38a70e692951d
BLAKE2b-256 7bd4e59c6b1d3d3c6a456ade9ae1e1bce2f18b487ea1f1b4fc25397ba0bc4cbc

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page