Формат JPEG: характеристики и особенности¶
JPEG (сокращение от англ. Joint Photographic Experts Group) — это растровый формат сжатия изображений с потерями, разработанный одноимённым комитетом экспертов в 1992 году. Стандарт описан в рекомендациях ITU-T T.81 и ISO/IEC 10918-1. Формат стал одним из самых распространённых способов хранения и передачи фотографий и сложных цветных изображений в цифровой технике и интернете.
¶История создания
Разработка формата велась с 1986 года совместным комитетом экспертов, объединившим представителей МККТТ (ITU-T) и Международной организации по стандартизации (ISO). Работа шла над алгоритмом, который позволил бы существенно уменьшить объём файла фотографического изображения при сохранении приемлемого визуального качества — задача была актуальна в связи с высокой стоимостью хранения и низкой пропускной способностью каналов связи конца 1980-х годов.
Первая версия стандарта JPEG была опубликована в 1992 году. Формат быстро вытеснил альтернативные решения и стал промышленным стандартом для фотографий. В 1994 году была принята дополнительная версия JFIF (JPEG File Interchange Format), определившая контейнер для хранения JPEG-данных вместе с минимальными метаданными — так называемый файл с расширением .jpg или .jpeg.
¶Принцип сжатия
JPEG использует сжатие с потерями: часть информации об изображении необратимо удаляется при сохранении файла. Алгоритм основан на нескольких операциях:
- Цветовое пространство YCbCr. Исходные RGB-данные преобразуются в модель, где Y — яркость, а Cb и Cr — две цветоразностные компоненты. Человеческий глаз чувствителен к изменениям яркости гораздо сильнее, чем к изменениям цвета, что позволяет агрессивнее сжимать цветовые компоненты.
- Разбиение на блоки 8×8 пикселей. Изображение делится на квадратные блоки, к каждому применяется дискретное косинусное преобразование (DCT).
- Квантование. Коэффициенты после DCT делятся на значения из таблицы квантования. Именно на этом этапе происходит основная потеря информации. Степень потерь определяется пользователем через параметр «качество» (обычно от 1 до 100).
- Энтропное кодирование. Квантованные коэффициенты кодируются методами Хаффмана или арифметического кодирования, что обеспечивает дополнительное беспотерное уменьшение объёма.
Типичное сжатие фотографии позволяет уменьшить размер файла в 10–20 раз при визуально незаметных искажениях. Однако при повторном сохранении JPEG-файла потери накапливаются — эффект известен как «деградация при повторном сжатии».
¶Характеристики и ограничения
| Параметр | Значение |
|---|---|
| Тип сжатия | С потерями |
| Максимальное разрешение | 65 535 × 65 535 пикселей |
| Глубина цвета | 8 бит на компоненту (24 бит на пиксель в RGB) |
| Расширения файлов | .jpg, .jpeg, .jpe, .jfif |
| Поддержка прозрачности | Нет (в классической версии) |
| Анимация | Нет |
Ключевые ограничения JPEG:
- Отсутствие поддержки прозрачности. Классический JPEG не умеет хранить альфа-канал. Для этого в 2000-х годах были предложены расширения JPEG 2000 и JPEG XR, но они не получили широкого распространения.
- Плохая работа с текстом и резкими границами. Алгоритм предполагает плавные градиенты; на контрастных переходах появляются артефакты «блоковость» и «ringing».
- Непригодность для редактирования. Из-за потерь при каждом сохранении JPEG рекомендуется использовать для финальной публикации, а не для хранения исходников.
¶JPEG 2000 и другие расширения
В 2000 году был опубликован стандарт JPEG 2000 (ISO/IEC 15444), использующий вейвлет-преобразование вместо DCT. Он поддерживает сжатие без потерь, прозрачность и более эффективное масштабирование, однако из-за сложности алгоритмов и отсутствия поддержки в браузерах практически не вытеснил классический JPEG.
Другие вариации: JPEG-LS — упрощённый алгоритм для быстрого сжатия без потерь; JPEG XR — формат от Microsoft с поддержкой HDR и расширенного динамического диапазона; MPO (Multi-Picture Object) — контейнер для стереопар, используемый в некоторых камерах.
¶Применение
JPEG является де-факто стандартом для хранения фотографий в цифровых камерах, смартфонах и интернете. Формат поддерживается всеми без исключения графическими редакторами, браузерами и операционными системами. В вебе JPEG применяется для фотографий и сложных изображений, тогда как для графики с прозрачностью и текстом обычно используется PNG.
В профессиональной фотографии исходники хранят в форматах RAW или TIFF, а JPEG применяется для публикации и распространения. Многие цифровые камеры позволяют сохранять одновременно JPEG и RAW-файл.
¶Историческое значение
JPEG стал одним из немногих стандартов, определивших облик цифровой эпохи. По оценкам, подавляющее большинство изображений в интернете хранится именно в этом формате. Разработчики алгоритма получили в 2001 году премию Эдварда Медсона за вклад в развитие технологий обработки изображений.
