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

Uploaded Source

Built Distributions

torchjpeg-0.9.10-cp38-cp38-manylinux2014_x86_64.whl (3.7 MB view details)

Uploaded CPython 3.8

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

Uploaded CPython 3.7m

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

Uploaded CPython 3.6m

File details

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

File metadata

  • Download URL: torchjpeg-0.9.10.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.10.tar.gz
Algorithm Hash digest
SHA256 72ea02b58edbbbc458bf7f83a045d68deeaa280b7ba37f93f1194616c10c2ab4
MD5 94cfb4ab2e5bc8987184e72f9c99df18
BLAKE2b-256 c389fd57718a1f82c793353a1e4fce33bc5545e1c2ff99f36b37eedd7c95ae1f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.10-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 12e9f081fb1516b9e8e5820268cc4ad033724d98c6ec0d2ef10f2c35cd703d5f
MD5 53f0ef420d8ee17d3f76922fca953c7a
BLAKE2b-256 f1da225f99d0e112949378ce04fafe722f6118b5d3af6e4487a462da4bd2da03

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.10-cp37-cp37m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 76ce8e00c6fac4597673bfd7f1fa87cd981441b49ca464353142e798dde37d7a
MD5 2fa2179e565f06c78c661a11d50bf631
BLAKE2b-256 82d369a9d994831dde88a21f69ba913724f875f4b8525b327cd498ca8cbea308

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.10-cp36-cp36m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4088e5f1217d87b295a1e57eb29a1e34402dafd4060ff8541d1bc2b9938fdc96
MD5 9f06ef3a55d94401b183f9b4e24b346a
BLAKE2b-256 9c14b0a08dbe3acea958f7a5135083b84c611c3ba5312ebfa1ead59c51a5c5f3

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