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

Uploaded Source

Built Distributions

torchjpeg-0.9.13-cp38-cp38-manylinux2014_x86_64.whl (3.9 MB view details)

Uploaded CPython 3.8

torchjpeg-0.9.13-cp37-cp37m-manylinux2014_x86_64.whl (3.8 MB view details)

Uploaded CPython 3.7m

torchjpeg-0.9.13-cp36-cp36m-manylinux2014_x86_64.whl (3.8 MB view details)

Uploaded CPython 3.6m

File details

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

File metadata

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

File hashes

Hashes for torchjpeg-0.9.13.tar.gz
Algorithm Hash digest
SHA256 1cc6f063b47fb9c78082b15bce34ae9fec112cae5a07a8c50bbc97b4ef37a0f8
MD5 bbe1e000ab65bad6e52d42ab0b944764
BLAKE2b-256 038ed8289bd09fdb31d228963c5de2f143d859ff8ddab2073c831fcd694184b1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.13-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 506fdb2d2c03f43bf4579c437718326be366c410f26636512b9d16f3d3103e0b
MD5 88af0d3d0305ebf04c3fe695f18d14a0
BLAKE2b-256 c8ef78035b07f1b43aa71d5fc92723ce015c2c5694341f2caeda719b2cc5100c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.13-cp37-cp37m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fa5ad737a9ed8417d34e44c0f631ec8b31514785322f2db9e82200a9b3d1671b
MD5 26dd11212304f1005448b426264f450d
BLAKE2b-256 997230d6ff7e90e09b8329081ac25604a6c91a23debb6f98b41e721301c1123e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.13-cp36-cp36m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6c7b602502c113d76855ba27511c46a08fdb20f0c9239158a9125db01d961197
MD5 6ad8690e690dbba8eb57cfa32057ad02
BLAKE2b-256 0a40162fb661756f4dc28c5ac373e08c3bda084c409417af6f27395cd023e6f5

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