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

Uploaded Source

Built Distributions

File details

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

File metadata

  • Download URL: torchjpeg-0.9.18.dev2.tar.gz
  • Upload date:
  • Size: 1.0 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.dev2.tar.gz
Algorithm Hash digest
SHA256 69dd9112c0647213a2c7b9c49e6674ce4df5e5d256949ed14b83cd61759abcb3
MD5 0c1b5ed33900fe1ed4418bc38f4ccc4b
BLAKE2b-256 6445f0f7829b8cde49c1b95b806f0a9ea8e171b5cb7542834837dbd26a112c03

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.18.dev2-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 efeac437a7e8e140e6af62696445150e15f9b3ac8969b0a20300135f73d3261f
MD5 2fe3112451915f3c37226192558f3b77
BLAKE2b-256 aed03cfe201fda3b60ca7a3fc1da9afef97631c0be6d9bf610dd78a12954ad23

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.18.dev2-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 57caae88b9a23efd83284988f5f332f79a50206df22c941ca3fa14775856f542
MD5 9f6d4f1dee9f1d1c9b867dc0673b2d91
BLAKE2b-256 b4a0e787d4426e0207ef9de55a74e692c20948c690c260252b45d7c72a37928c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.18.dev2-cp37-cp37m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 530d728b6a1c52fba041fa67f8a7e60618f59173672130307dc21ff53fbcb15a
MD5 d435f3458870901bed83aba8ad76007b
BLAKE2b-256 fe94d8df195db81999489fd4f74e1406df419f6c5dbdf60e7fd3e7724b3825a6

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