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

Uploaded Source

Built Distributions

File details

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

File metadata

  • Download URL: torchjpeg-0.9.34.dev1.tar.gz
  • Upload date:
  • Size: 1.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.6 Linux/5.15.154+

File hashes

Hashes for torchjpeg-0.9.34.dev1.tar.gz
Algorithm Hash digest
SHA256 b0b7665e4eeba4a8756aa78c8fd71473a227e3f8d367f0d2aefe0b9f4b230a94
MD5 8ca249dd257f931eb825b7e013f1d42e
BLAKE2b-256 ce6c7bb0bbe7e980911f18e1434c38d4e40ac9782fe7ca38fc1a5e4bb05682be

See more details on using hashes here.

File details

Details for the file torchjpeg-0.9.34.dev1-cp312-cp312-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for torchjpeg-0.9.34.dev1-cp312-cp312-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8aa03f2dc373b720a46dad69c09593efedebcb4d069b0d3bdc6d0d1e75c1d339
MD5 34a021651421fce114f91ea15c3bd098
BLAKE2b-256 a9ae0d5e1757a3b91cfe1fdee1de24fc797ba9ab5a3d812720e21909f498abd9

See more details on using hashes here.

File details

Details for the file torchjpeg-0.9.34.dev1-cp311-cp311-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for torchjpeg-0.9.34.dev1-cp311-cp311-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d87b9791efed9f1e91f4954eeb0d313a78b6d7736ca8182279d235a7a4e88e15
MD5 cdafa8b7fb21db17e670c22180a30370
BLAKE2b-256 4992aa6c7c4ba8504e8afc5813d7cd4ab92bd3328a245a6499ce871c34d111f2

See more details on using hashes here.

File details

Details for the file torchjpeg-0.9.34.dev1-cp310-cp310-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for torchjpeg-0.9.34.dev1-cp310-cp310-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 58431ac32eead29e565b00107806bbeb44eb28eca912ff96018cba76d6b1c723
MD5 a6a87d84fcdb7d076277c0b883fdfc97
BLAKE2b-256 ae272d259d44fb80296f86b4d7a16eece4a91a1c15345f70428a7f345d8402f5

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