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

Uploaded Source

Built Distributions

torchjpeg-0.9.11-cp37-cp37m-manylinux2014_x86_64.whl (3.7 MB view details)

Uploaded CPython 3.7m

torchjpeg-0.9.11-cp36-cp36m-manylinux2014_x86_64.whl (3.7 MB view details)

Uploaded CPython 3.6m

File details

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

File metadata

  • Download URL: torchjpeg-0.9.11.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.tar.gz
Algorithm Hash digest
SHA256 71627cf50f25afbf3939cce4ee4b870a0f45a0a0addada1508975f65f38b9e97
MD5 1c8087ea2c6ef639c16734af9a6ad26f
BLAKE2b-256 de0ee72f02b90f3a15f192d97c9323a983538ff09055cea6f407ef1ae492ffd1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.11-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3fab9038ab6d7cc715270298d5e36e59bd814be0cb03e3c492c7bb5550e80294
MD5 79df232cf97db560469c1a3e021b1d24
BLAKE2b-256 05ec91d5959a642113d82e6f2901bf0f85632f09a01c8bd06fb4c8cc5fac4152

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.11-cp37-cp37m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 175d701c237c663ee486b733c984eba80a8509bd0201fbcff1b67c6138dff65c
MD5 d964ccc707209391438bb080d2209c56
BLAKE2b-256 62eb46291979e302e4f91b3f04b121a511d8787886fd6d159d46571b80790f8b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.11-cp36-cp36m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 729bf19ce905398413bc2328454224fd8f6a0c4f7e256cf57d06f49dc4f27e01
MD5 29824f074208a8106511f4d04fe324a5
BLAKE2b-256 f9ce934b3027d33f365606964ef386e8175eb9dbccae7c0877af8cefeab56e70

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