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

Uploaded Source

Built Distributions

File details

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

File metadata

  • Download URL: torchjpeg-0.9.9.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.5 Linux/4.19.78-coreos

File hashes

Hashes for torchjpeg-0.9.9.dev1.tar.gz
Algorithm Hash digest
SHA256 d965be7595bef5dd703b581c62ca7ffb65d1755e7cbb3a8405d01c692f7050df
MD5 3b7c0c5bf9162b6f2b601b9fd99261a7
BLAKE2b-256 e3c1de94124139571aa1d6d31ebdc6b5df117b813a0c5da2c9509e79178a9470

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.9.dev1-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 007fa7834e39d73e2ab6920b0a3404c085733e4c1be761791a35caef3331aaee
MD5 4ac2a3b1e6487ec5081a581e81e48647
BLAKE2b-256 99ce6205f5155b45de82bb760d8aa4b0b6928b0190bf19b8d5afe2b2f194dffb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.9.dev1-cp37-cp37m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 785b66743fafd6c01b3e414e803b61682459d6efb1d9d8e755145188d421f874
MD5 53c2d79e2d7cad384027e788bf2413ec
BLAKE2b-256 3de420658bb17fbeb57b39bb19214be5a10cec624c70123a3e9263e97f728ac3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.9.dev1-cp36-cp36m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8d946c039fda435e35deaca870b419ef0efe7f63ffa674ccc429b3a2ebd45544
MD5 dcf72eb898439ca1da6c0c15fbdc133b
BLAKE2b-256 b5c0f71f89bb0c9283d92d8c4558fa29921b979f7ed405c39bb4fd8e1bee61e3

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