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

Uploaded Source

Built Distributions

File details

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

File metadata

  • Download URL: torchjpeg-0.9.14.dev1.tar.gz
  • Upload date:
  • Size: 1.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.10 CPython/3.8.7 Linux/4.19.78-coreos

File hashes

Hashes for torchjpeg-0.9.14.dev1.tar.gz
Algorithm Hash digest
SHA256 50784555dff4b6afe604cedbf197b9be968e157ad7207e60bd8319a0d73f1d83
MD5 a64f054af4fe8a19a29423f60a25995a
BLAKE2b-256 331e4d4970ea52d18369e0e03371ede1c37ace70c0f753b2aa0648a912f3ccb7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.14.dev1-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 61b5d071122933d3e5ef835cf77d642a0ba2a1e31ef089ae604565638ebfdc2f
MD5 73efb6dd241fd6a7e09b36535baca89f
BLAKE2b-256 f06dea66c9ed3a336bc759c1018042fc927c7ac954b0c48485228ac0d64629f0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.14.dev1-cp37-cp37m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 08f259e116e1ab581f452647a2ea37b371925d632bd749c82bd33ab17b81ad01
MD5 6548651abc66b297a9ca08cfb8666e25
BLAKE2b-256 f0d6ff8e6f3e2923e1c3307ef9ea6e75f830a69e98b4b0ecfc434d5324d8a895

See more details on using hashes here.

File details

Details for the file torchjpeg-0.9.14.dev1-cp36-cp36m-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for torchjpeg-0.9.14.dev1-cp36-cp36m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 384dae0d2fd2908d5eb6f3ef2857b3fe67c2b83124a970d73dd90673c2324824
MD5 215fff64c89053a3ce4552787bb28506
BLAKE2b-256 bf50dd18f4f2e2a6064ff94e0d685f3f06e7333c485514af75359bd0d0df633b

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