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.17.dev2.tar.gz (1.0 MB view details)

Uploaded Source

Built Distributions

File details

Details for the file torchjpeg-0.9.17.dev2.tar.gz.

File metadata

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

File hashes

Hashes for torchjpeg-0.9.17.dev2.tar.gz
Algorithm Hash digest
SHA256 39b07c6084e06b490f8f99e22965d925c4a779048464ab75dac1453f16aff865
MD5 ed5f64c5640f9db9665a81b7b5636894
BLAKE2b-256 6c49e142f1bf7fd4a6eb1a0bfb354f1d823ed87916d3e52e6c279a1c47532e7b

See more details on using hashes here.

File details

Details for the file torchjpeg-0.9.17.dev2-cp39-cp39-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for torchjpeg-0.9.17.dev2-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1cf1536168dcdf40a52f865ed360416992931e368003fd0bdc806d6e5df01d46
MD5 29909ab4110ed7d1304e37e623f1a5f8
BLAKE2b-256 8d801db25a4c393c0d32616a6e5cd0df594ad33f1906abe90b95da2e749ab0e6

See more details on using hashes here.

File details

Details for the file torchjpeg-0.9.17.dev2-cp38-cp38-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for torchjpeg-0.9.17.dev2-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b4625a0370cd2dccdc482f4b3808315454277fa652a3211596af464f483002f1
MD5 27166355e3f90b47c792666b6e0f49b8
BLAKE2b-256 31e0f4b4378a2d0bea4826d1e3a23fa31720a806eedb772fe6ecca3445a1d059

See more details on using hashes here.

File details

Details for the file torchjpeg-0.9.17.dev2-cp37-cp37m-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for torchjpeg-0.9.17.dev2-cp37-cp37m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f3353cfa98ca98eb8257d67fc00117d2dda84dfc4ec82097169db290a6374adf
MD5 93275cce353ece1bf0ab1e4d67ee1e47
BLAKE2b-256 f0d90d7fa29871012655184b9f1d2ce764eaa09848c355eaea96cb29bafeb78b

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