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

Uploaded Source

Built Distributions

File details

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

File metadata

  • Download URL: torchjpeg-0.9.17.dev1.tar.gz
  • Upload date:
  • Size: 1.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.4 CPython/3.9.2 Linux/4.19.78-coreos

File hashes

Hashes for torchjpeg-0.9.17.dev1.tar.gz
Algorithm Hash digest
SHA256 6d5a2a8625316fe6b888a2a904c17a4e82667023636bd8ce5590e367a37a4507
MD5 8aa28ab05a9760a41d554d505ce1e2aa
BLAKE2b-256 3256b264a0391d841c05db21bf8ce8cffa7aa04e610bd3377baa269f45c667f6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.17.dev1-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9c1b3fd8e69cbf1c0b329ec18d82110e3209270def30dbcb4880a2da7a48401d
MD5 1e1f34a35d109840ff60a47e8675b607
BLAKE2b-256 35556313bbf0fe801410b054a2cb36181b8831dcd68c008382efb85c06053bb0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.17.dev1-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a382604816c1d6bdb23e4ce857aa22f7c598f6b59edbdfda970c9d41a3c2176c
MD5 5bd5c1aaab077f6816d5c90039082a31
BLAKE2b-256 ac8a7e95ac49ead83c48d2cd22777541a89df628971b8858af1a3309c793ced7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.17.dev1-cp37-cp37m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 944765c715a97f0e363ff7e09ac0c4aaad919b90834a3954b163820c310b754f
MD5 f07c94d59015a2b8a6f2988f2222cb0f
BLAKE2b-256 2393b3bed4062bbb7459d28f372e9e644b920299b1c65c1730bdd63f5b836d97

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