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

Uploaded Source

Built Distributions

File details

Details for the file torchjpeg-0.9.18.dev3.tar.gz.

File metadata

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

File hashes

Hashes for torchjpeg-0.9.18.dev3.tar.gz
Algorithm Hash digest
SHA256 f65859213288288eaf8e7e038d497432329068c824130b3b6c40ca5a1d4081b1
MD5 ad95e9596aea150966e91ddf00af0e43
BLAKE2b-256 03580f329bf51d0d18447d9ce833ca397ba61f83bea32601a44ca881e2dc33a8

See more details on using hashes here.

File details

Details for the file torchjpeg-0.9.18.dev3-cp39-cp39-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for torchjpeg-0.9.18.dev3-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a88c612eb1007b7c88abad0df9b5a43c250da93d47a0036ef36fbf7796807706
MD5 d510a1756e50dffd3bba37a3850cfe73
BLAKE2b-256 620027877d6e14bed9aa076875b2faee78d6c1375c5c619f962a4e24cd5be7f2

See more details on using hashes here.

File details

Details for the file torchjpeg-0.9.18.dev3-cp38-cp38-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for torchjpeg-0.9.18.dev3-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6d856d9f34449b14cdbb277e5f16d9b4b7d13e8d4bd75dec38ce5b091780b258
MD5 ad5906817bb015186b178d8dd725653e
BLAKE2b-256 76dff9869a7f10d77e6e93a540f6859de1f9276203d85451a45d92d2c6c2f704

See more details on using hashes here.

File details

Details for the file torchjpeg-0.9.18.dev3-cp37-cp37m-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for torchjpeg-0.9.18.dev3-cp37-cp37m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 83ef6632dabf5335e763de766797f06ae13a76806929fa44be908d203ab0e3de
MD5 34fdd705ef34d9e425badb6d89bc1665
BLAKE2b-256 88d6217b6d327b8c39c664d6fd33b37e30e092e1ca72f20b0dbfde3d65bd0d21

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