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.22.dev1.tar.gz (1.1 MB view details)

Uploaded Source

Built Distributions

File details

Details for the file torchjpeg-0.9.22.dev1.tar.gz.

File metadata

  • Download URL: torchjpeg-0.9.22.dev1.tar.gz
  • Upload date:
  • Size: 1.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.4 CPython/3.9.7 Linux/5.4.109+

File hashes

Hashes for torchjpeg-0.9.22.dev1.tar.gz
Algorithm Hash digest
SHA256 2497d4eb5d5d54ffc146b8a8b5b99a69efbe96ed7b7c92a5820eea710c9437bc
MD5 2f8d72617bcb84f6691c92e67bf7841b
BLAKE2b-256 69969455e57161a7c8be6dfd2ca8ed5c4b791b6a183caba429a87e8f43b1dc1d

See more details on using hashes here.

File details

Details for the file torchjpeg-0.9.22.dev1-cp39-cp39-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for torchjpeg-0.9.22.dev1-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f48d903460cb590d673699b184cbcd097507bd0077248b5d8db34303da1be880
MD5 05810625792fb23bad0d98bd31251ba4
BLAKE2b-256 8194b24ba744320786d8dd276ab6665a58352edcd7a3c8bfae5dc70334cb0c60

See more details on using hashes here.

File details

Details for the file torchjpeg-0.9.22.dev1-cp38-cp38-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for torchjpeg-0.9.22.dev1-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b3640ed59137b255fe50b244539955ded70971cfff9db4c6aabf8a21d285bbf1
MD5 bb5e22c90cc782df732cf9984173f6ae
BLAKE2b-256 e5a75b175bc5b33b3569a26e0aaf303d01fa0f2cf5d3e4c2fc8505541b5ef01f

See more details on using hashes here.

File details

Details for the file torchjpeg-0.9.22.dev1-cp37-cp37m-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for torchjpeg-0.9.22.dev1-cp37-cp37m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f8a04a3c1903584595829164823132531ab14b97f7ccdb7bc5365b07ae10e564
MD5 10eb038e1cf30fd95c1338da52fedb51
BLAKE2b-256 659a8b91cd1cde60bdba9534232897b15c72d61d301baee971de880e69f5007c

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