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

Uploaded Source

Built Distributions

File details

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

File metadata

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

File hashes

Hashes for torchjpeg-0.9.11.dev1.tar.gz
Algorithm Hash digest
SHA256 efdcc1eb34682738f6b9d4186e5b09372fa43dd876a77b1ceeea1bd64552bf28
MD5 47a015c2d8fb4a3518c70b3056cf1934
BLAKE2b-256 3b71f893a3f59fdfb0e5fd0b7b0d78268732770fdd4dd42d9521612cb184affe

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.11.dev1-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e0eda06c4d25d6141df9f114bc6a13b7ad2470e8fa6476fe67031fd9641d1b35
MD5 ebe1ef15229c44340e8b5e4023109c1c
BLAKE2b-256 4653e7f4255c8ddb654f1153a04cc408e0139d67fee980c2708e546f9c2605b2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.11.dev1-cp37-cp37m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7796f730a7eba919dac8d90c127cb7a0ab33bff943e52059cc08a9a34a3e00e7
MD5 7aa58126fab5b4014e74ee20de40a74c
BLAKE2b-256 089bba7d8d7a5fdf1b263001939d56f7da004d5a5926dca76b95e6c30629fa9c

See more details on using hashes here.

File details

Details for the file torchjpeg-0.9.11.dev1-cp36-cp36m-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for torchjpeg-0.9.11.dev1-cp36-cp36m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b31d077352e4d0bd0068591b594002fb9553bdad1f2abe9def7036a4a1d26b09
MD5 213ea93b1a73b9cb9b7787f62775fc3c
BLAKE2b-256 46c337d19dd17c97907aef4569c5ecf33991842b1e81b9dd322174b3cff116a6

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