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

Uploaded Source

Built Distributions

File details

Details for the file torchjpeg-0.9.15.dev3.tar.gz.

File metadata

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

File hashes

Hashes for torchjpeg-0.9.15.dev3.tar.gz
Algorithm Hash digest
SHA256 71062d115305b65983db5c645ba63057e5070c51eaa92043867ccede6467939c
MD5 f149da7638f83489809d5c526680fe87
BLAKE2b-256 cfc8141f21881f7d397111915948392d4d50827868efcd3f0863d1022d08404e

See more details on using hashes here.

File details

Details for the file torchjpeg-0.9.15.dev3-cp39-cp39-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for torchjpeg-0.9.15.dev3-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0430da4e3e9740aad225f89f5497083e06da3c8e0b55e6e603b5d46d9d813e74
MD5 51202f33d6f7928687906ee44dd8de47
BLAKE2b-256 5d2e2db8ef91faed600a6fa9f04934d37a5c8743ee3a000e873b2efe0fa65225

See more details on using hashes here.

File details

Details for the file torchjpeg-0.9.15.dev3-cp38-cp38-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for torchjpeg-0.9.15.dev3-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0ade84878d8ee2d0af23ee2b35c326fa05bead12743adbe853bd64eae16cbd19
MD5 4e1a312f799b23dd56c5b42f8ed03748
BLAKE2b-256 9a011137d9addef103557a0b39e7d7d44588c600ad52ba4535c247fd6ca7eaa6

See more details on using hashes here.

File details

Details for the file torchjpeg-0.9.15.dev3-cp37-cp37m-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for torchjpeg-0.9.15.dev3-cp37-cp37m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5c5fee5b5c8af65d90bbd505eafd598a0393eb6ce67047499ec4ed9aa7f9feea
MD5 3490ed6fffd2625c08a1fe0b6bb0570d
BLAKE2b-256 ee64e0e442addd7fcdcce35ef5adf7631a406dfae33c2301e5cccf5066fd5ee7

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