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

Uploaded Source

Built Distributions

File details

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

File metadata

  • Download URL: torchjpeg-0.9.23.dev1.tar.gz
  • Upload date:
  • Size: 1.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.4 CPython/3.9.13 Linux/5.4.109+

File hashes

Hashes for torchjpeg-0.9.23.dev1.tar.gz
Algorithm Hash digest
SHA256 3a22d3b0925f4f097b816281a56442e8d6e888cdb1e6ec5725c37db7cfa7da03
MD5 ead82493953a7ff99f1e5d69d15dbd34
BLAKE2b-256 bccf2010f27db0323c4c319f04f66bec23c80f0f577c70e08448579751f95e22

See more details on using hashes here.

File details

Details for the file torchjpeg-0.9.23.dev1-cp39-cp39-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for torchjpeg-0.9.23.dev1-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5574cb489141aaf211d53aa79f108e6d7c366de83a3881adb700b126c843ab6b
MD5 fc6c8d76325f1fb2dec4dcaa4626c08e
BLAKE2b-256 eb67ae726e2cb4c4041686e6d1958c2c80bf91f2fd835d7cfdcc44284684acc2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.23.dev1-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 25a068da15a4b3d98ded7215869e6fb6b918ca9ca4d9b4b4dbf0a0416d0cafa2
MD5 e2211f371974b8036c99f9bac42e93fe
BLAKE2b-256 9b0ad57947bf18d6e082930ab211242c343c8072f97ac721d2488d92c43be44a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.23.dev1-cp37-cp37m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3fccad7747f291e7a0d41c885b0c54a0024b652ba61f1fe74d439cf0e8cc5af2
MD5 69eb2b08cfe7adbceaacd0460330b2e7
BLAKE2b-256 986d9eb0c32e6bdf950ba63bc5a27b4a7d0fdbca1222419af11003ccb6174941

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