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

Uploaded Source

Built Distributions

File details

Details for the file torchjpeg-0.9.12.dev2.tar.gz.

File metadata

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

File hashes

Hashes for torchjpeg-0.9.12.dev2.tar.gz
Algorithm Hash digest
SHA256 0298cd686b0f03e923ca234b7e26f1568c65ff36167fcc2d58080ece272204d7
MD5 9009318d81e7343cb9c3d4a2bfd3a127
BLAKE2b-256 6ccbb660db61e9272ffda4c2ee8bc4711af2e7c18e043bf4ffb0e177a1ca8f8d

See more details on using hashes here.

File details

Details for the file torchjpeg-0.9.12.dev2-cp38-cp38-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for torchjpeg-0.9.12.dev2-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 06124b640c4d2de9c929b089d6ef6b8cb1ccc60ab154f14ec038411d7409f444
MD5 500512cd3bfe29b1ada6510039100587
BLAKE2b-256 3eec86ed2ab7ad72a3bd077f3fad87dde83aa9a1fee1d679fbd6c49b192e7d45

See more details on using hashes here.

File details

Details for the file torchjpeg-0.9.12.dev2-cp37-cp37m-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for torchjpeg-0.9.12.dev2-cp37-cp37m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f5765a2a9c8b0cba9781e7affdfe36c2b9fe46c12ff908fb463715572c16462d
MD5 50315c0ab199c27b595cd953923763b8
BLAKE2b-256 6022e16b2e99a6cfae090f439a68362c2389d25d6d23ef380d470609fcfca443

See more details on using hashes here.

File details

Details for the file torchjpeg-0.9.12.dev2-cp36-cp36m-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for torchjpeg-0.9.12.dev2-cp36-cp36m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7c6acd3d3b2855933d8abb8b260b066ca2f42171e269f57db878c68657742b3a
MD5 30d539d4a9e87d102f5456ae90c1e85f
BLAKE2b-256 258da9d9361b1335bef4d65dc1f19e667b50ccfebb0646c653a2fc8803045f0a

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