# JPEG

JPEG ([Joint Photographic Experts
Group](https://www.w3.org/Graphics/JPEG/itu-t81.pdf)) is a lossy image
compression format for opaque, still images.

The ["Making Software - Image
Compression"](https://www.makingsoftware.com/chapters/image-compression) book
chapter also has a good overview of a number of image formats, including JPEG.


# Further Reading

Web pages:

- [DCT and DFT for 1D and 2D Signals](https://ekrem-7-fidan.medium.com/dct-and-dft-for-1d-and-2d-signals-discrete-cosine-transform-and-discrete-fourier-transform-59feb837441d) by Ekrem Fidan.
- [How JPEG works](https://cgjennings.ca/articles/jpeg-compression/) by Christopher G. Jennings.
- [How JPG Works](https://www.freecodecamp.org/news/how-jpg-works-a4dbd2316f35/) by Colt McAnlis.
- [JPEG compression](https://www.sophielwang.com/blog/jpeg) by Sophie Wang.
- [JPEG Series, Part I: Visualizing the Inverse Discrete Cosine Transform](https://alexdowad.github.io/visualizing-the-idct/) by Alex Dowad.
- [JPEG Series, Part II: Huffman Coding](https://alexdowad.github.io/huffman-coding/) by Alex Dowad.
- [Not so fast, Mr. Fourier!](https://lcamtuf.substack.com/p/not-so-fast-mr-fourier) by Michał Zalewski.
- [Understanding and Decoding a JPEG Image using Python](https://yasoob.me/posts/understanding-and-writing-jpeg-decoder-in-python/) by Yasoob Khalid.
- [Unraveling the JPEG](https://parametric.press/issue-01/unraveling-the-jpeg/) by Omar Shehata.
- [Wikipedia's JPEG Encoding page](https://en.wikipedia.org/wiki/JPEG#Encoding).

YouTube videos:

- [JPEG DCT, Discrete Cosine Transform (JPEG Pt2)- Computerphile](https://www.youtube.com/watch?v=Q2aEzeMDHMA).
- [The Unreasonable Effectiveness of JPEG: A Signal Processing Approach](https://www.youtube.com/watch?v=0me3guauqOU).

Books:

You may be able to find these books at your local university's science library.

- [Compressed Image File Formats: JPEG, PNG, GIF, XBM, BMP](https://amazon.com/dp/0201604434), also known as the white book.
- [JPEG: Still Image Data Compression Standard](https://amazon.com/dp/0442012721), also known as the pink book.

Link collections:

- [https://pinboard.in/u:thakis/t:jpeg/](https://pinboard.in/u:thakis/t:jpeg/)
