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

Uploaded Source

Built Distributions

File details

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

File metadata

  • Download URL: torchjpeg-0.9.18.dev5.tar.gz
  • Upload date:
  • Size: 1.1 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.dev5.tar.gz
Algorithm Hash digest
SHA256 5e919b5845d8d78efc5ca60e382b98aaadd16f75c1d20004f8f9de9879c150b1
MD5 051aa8abc1a289cc84f5d46c6dec6017
BLAKE2b-256 6a2720b962f4cbe6c4e4bd945c89647f2d13bb9c23ec06d06eff2326c555b79d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.18.dev5-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7626cfc37d7c5405631e06c038a9bb5e8eda101686709df1c8902d201c79e673
MD5 db01382efd3445681c8fbf4e36e29933
BLAKE2b-256 00ba3aa0f4572ba1b1078b333d06b72745663497358b977610ff5a87689f7c43

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.18.dev5-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 351d26382901b4e1f521c2c8afea1d44d898b2e6d84d7a80835ab78bbe75a081
MD5 da5900f1bc1a3d94341d6c7cdf2dd323
BLAKE2b-256 804864502165ef24854ddb3f250caa13948355863e4b7210a01ecbac4e68a365

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.18.dev5-cp37-cp37m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 bcdd5601404c0913d99c9f35bff5977dd525935d727604ef31b2d2c624fb9981
MD5 22edd517e01250b1f1348387b6dd1361
BLAKE2b-256 a2406f8a5278987ea6b0138f9b5af88b7291c2d1b086ef74905bea4240a7063c

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