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

Uploaded Source

Built Distributions

File details

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

File metadata

  • Download URL: torchjpeg-0.9.21.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.6 Linux/5.4.109+

File hashes

Hashes for torchjpeg-0.9.21.dev1.tar.gz
Algorithm Hash digest
SHA256 5830b0a0481a409a98966551dffaf586f8198aa83adcf34c085bff4cc2e64bc4
MD5 f6f00bd10492670043dd9bc0a6361a39
BLAKE2b-256 92e4cfd6c694a39d94a329507a5e38a7edd5c66fbb753b1db9810a420e729ad5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.21.dev1-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 61012a5dc4972dae730c46ff75a928e579b79a55c102f4cba4264cdc9821c1d1
MD5 62c755b56ef11826eaa28d347d14b054
BLAKE2b-256 5619c59ebd91cd9b256fa1d7622d3f7f460013deeffc2b1b9cc63956e8a48d55

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.21.dev1-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e9f041631dcad87ebee84ca1cca75748202fef7b97e0920e38ffa82ce2002062
MD5 3dec5a58be39fc1fde62742962ba8647
BLAKE2b-256 47ef09c391374520375ae430a97be30a5352f4485bc05cebddc2372e6db2d4a1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.21.dev1-cp37-cp37m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e43a9f0760b8aad718a943158c509b50ef205bc3ccb04fc68c3f43a0178a0d39
MD5 3e6655612f100f2be38bb81ddef4874a
BLAKE2b-256 0ce1e03c2dd28c31928e62fafb0fb8294973913452964c160bbbd538c6f63f0c

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