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

Uploaded Source

Built Distributions

torchjpeg-0.9.32-cp311-cp311-manylinux2014_x86_64.whl (4.1 MB view details)

Uploaded CPython 3.11

torchjpeg-0.9.32-cp310-cp310-manylinux2014_x86_64.whl (4.1 MB view details)

Uploaded CPython 3.10

torchjpeg-0.9.32-cp39-cp39-manylinux2014_x86_64.whl (4.1 MB view details)

Uploaded CPython 3.9

torchjpeg-0.9.32-cp38-cp38-manylinux2014_x86_64.whl (4.1 MB view details)

Uploaded CPython 3.8

File details

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

File metadata

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

File hashes

Hashes for torchjpeg-0.9.32.tar.gz
Algorithm Hash digest
SHA256 c4699e470244ae599dfe1bb03ccb6375aefd951ec0dc39366170c4f612185fc4
MD5 dedd75a3f8c1ec4b0adcf9cd0bbb6afd
BLAKE2b-256 9f6df29c9c06dafbc2bf059b337a996cc3ad408dc78993f1a85f2cf651da9b2c

See more details on using hashes here.

File details

Details for the file torchjpeg-0.9.32-cp311-cp311-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for torchjpeg-0.9.32-cp311-cp311-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f23f38b097a0c9a19c7e19ba8b25c41b66617ee42d2b2b834fc43dd4f1f2b39d
MD5 f26674ddf3c18ed1b4f428ffc2ac6265
BLAKE2b-256 ad5d3d36f40f094484e284bf807372d7c00c841ab82ffff8fcc030b52cd89839

See more details on using hashes here.

File details

Details for the file torchjpeg-0.9.32-cp310-cp310-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for torchjpeg-0.9.32-cp310-cp310-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a56e67558ded58fb2dd0c53eece046e5063a424039eaa5353f84838836157e30
MD5 3f358dbe7e577ec44a3f67e1b4407539
BLAKE2b-256 9b3c2cf51867e38ed73222ad17e5b99b5206480c1ea117bc6f71858371c3c05f

See more details on using hashes here.

File details

Details for the file torchjpeg-0.9.32-cp39-cp39-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for torchjpeg-0.9.32-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 90f3218d2d8ff5373acad50cb42c06f3a8911f15c491aa7bae13f80d6815f1a4
MD5 173b0446364c55b6a363e1f0c2f0e761
BLAKE2b-256 48c8e2555da940ac46d982e505abafeadc5b9b9d2f3f8b7eac2593d31e654ccf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.32-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fb61f0b0d067b6e97a3fc1fb8eae4278a827cdcdb650379be52bfd12ca6474cf
MD5 069755d6260964e90f388a8ec9172236
BLAKE2b-256 a69b235af55f0d0746d6d7271584191ad479773da38f64ab100db0f0d0621540

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