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

Uploaded Source

Built Distributions

File details

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

File metadata

  • Download URL: torchjpeg-0.9.13.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.13.dev1.tar.gz
Algorithm Hash digest
SHA256 b9c3fb43e4cb8aac6b7d72bfaf1dd6952e20859d952d5bf4bf79f56cc1609664
MD5 0f6bd933b585e0da8a9ea06dba5ce06f
BLAKE2b-256 331ae2148aae2d6f362e64b9fea0c00dbb1e4fcc9919a449cdfb299373683a81

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.13.dev1-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 548b13c4bdad0271611226312b485aeafbef3436efe915c834ca26a0863a27fd
MD5 2fa6a99fad39b07ef7feb69b624604ab
BLAKE2b-256 8f19af3476dd9a1313e9a6b5a36d025bd642b7b9a8e80481c355812bff84c706

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.13.dev1-cp37-cp37m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 83a7c0a41146b94be3aad2d992dd54d99e448b64a67310abc21cf5381bd13c71
MD5 855e441c1d14b8e278e3a3febbf8d88c
BLAKE2b-256 7a0ce8876316a576d41dc0189e51b1ed07ea6e055d7f52aed4f27021a8fb4bd0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for torchjpeg-0.9.13.dev1-cp36-cp36m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d11dcffc4d24e90828584df02f8293c00b872c27bd27165f64041c8c9748cf2c
MD5 45e8730c39f0d203aba6ffb7049bbdbc
BLAKE2b-256 66a9daefe86d85e81d7ea73bf3244e980c562118ff05069d25103f5903a2451d

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