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

Uploaded Source

Built Distributions

File details

Details for the file torchjpeg-0.9.18.dev4.tar.gz.

File metadata

  • Download URL: torchjpeg-0.9.18.dev4.tar.gz
  • Upload date:
  • Size: 1.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.4 CPython/3.9.5 Linux/4.19.78-coreos

File hashes

Hashes for torchjpeg-0.9.18.dev4.tar.gz
Algorithm Hash digest
SHA256 411b2a52c05c6453cb31702de180f6f5e211a92334e01f52e0302a1b0a85c59a
MD5 4c697ef1b717bba06b992bddb7271cc3
BLAKE2b-256 f595db34a113345f74c96f93499f3ee42793f0a2f850c83670f1af6fa46875a6

See more details on using hashes here.

File details

Details for the file torchjpeg-0.9.18.dev4-cp39-cp39-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for torchjpeg-0.9.18.dev4-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9d65ad6cff137f368eb3574d7c91af088bcc87484e3c6ba998d16e95311fd472
MD5 b5477276a006625dd9227ec5121b7ca7
BLAKE2b-256 85fc1fc0eedf223a4e6a5c202c737ab0479707345510d218d3b280221ae46658

See more details on using hashes here.

File details

Details for the file torchjpeg-0.9.18.dev4-cp38-cp38-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for torchjpeg-0.9.18.dev4-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b31692c97a5e25d550be611d89624ed345e9e52e77fe7ffeec535b953748a378
MD5 1e0ede0124ecc01f190e5735731be682
BLAKE2b-256 d25a94f95b8db8d3e167c4cfd925a0686fe69452e64d24207e1eafdd5c5f5bb2

See more details on using hashes here.

File details

Details for the file torchjpeg-0.9.18.dev4-cp37-cp37m-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for torchjpeg-0.9.18.dev4-cp37-cp37m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a8e2a1e682ca158ce4aeb386b3efa974b2302555f63e54045d30cd8cfdb4d989
MD5 c3c9906159b379e8bb15957e6ed0ad6a
BLAKE2b-256 3c057378815c7e72e577be2e6deed45a1127be920fe1e4d9174308e09f7548bf

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