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

Uploaded Source

Built Distributions

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

Uploaded CPython 3.11

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

Uploaded CPython 3.10

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

Uploaded CPython 3.9

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

Uploaded CPython 3.8

File details

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

File metadata

  • Download URL: torchjpeg-0.9.31.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.31.tar.gz
Algorithm Hash digest
SHA256 f619cd069d20e3b56ed24045c3a01954b7dd3bce930b1b310c6f669e18f10c74
MD5 ac2bf8f6fd3c2f9f98d186d109bb977a
BLAKE2b-256 0b1269c33829cfd21cef67944f7978272ef129968fdbffbe1af6b54b7f03557a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.31-cp311-cp311-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5ea103d84c5a7c4271a62086c328828cbd70b68dd9b0e71cb3a2154b49201b4e
MD5 e1d432a3ec988313931bc62d2f083eba
BLAKE2b-256 84ffd9ce67558eb857c16540b695ffee1e2e0342cc7ce1d4a1a67837587cf1ef

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.31-cp310-cp310-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 34aac65de3ae43735023bf72958a38486cab3fd8fda30ea9ba6abda905fa157b
MD5 02a56252b9aa24dc0000fea2b5994fa7
BLAKE2b-256 43bf4d6decbb3f75289688677cc67116cb4d42395ef11c683fcc42972fe5913f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.31-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0137d976d321c2969ddfdd2836a4ae99eaefab586e16e73b7407367c4f41c07b
MD5 465173860b8c8e079f9fd8ae8d2afd51
BLAKE2b-256 cee9392156fc6554230eb8717cb109bdae1fc92512c223f0b992a9a49d333a5c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.31-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8b2e72219b246d4a11a1eb03b62a7acb215411251d5d98f382836823e71754d1
MD5 286beb9d74455815e6d551314a74ffae
BLAKE2b-256 d8d0fbd53b5b7fa80604a46b33b50d237f2d40f17263e49a74b6224293ec1d40

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