Введение: удалить незамеченное
Когда вы смотрите на фотографию в браузере, слушаете музыку в наушниках или стримите видео — вы воспринимаете не оригинал. Часть информации удалена навсегда.
Но вы этого не замечаете. Именно в этом суть.
JPEG, MP3 и MPEG — три разных стандарта, три разных десятилетия, три разных отрасли. Но за всеми тремя стоит одна математика, один принцип и одно понимание: человеческое восприятие имеет пределы, и эти пределы можно использовать.
📐 ДКП: один инструмент для всех трёх
Насир Ахмед, 1974
В 1972 году инженер Насир Ахмед читал доклад о функциях Уолша и подумал: а что, если заменить их косинусами? Два года экспериментов — и в 1974 году он опубликовал дискретное косинусное преобразование (ДКП, DCT).
Идея: любой сигнал можно представить как сумму косинусных волн разных частот. ДКП — это способ найти, какие частоты присутствуют в сигнале и с какой амплитудой.
В результате сигнал превращается из временно́го представления (значения в каждой точке) в частотное представление (амплитуды частот). Это важно: в большинстве реальных сигналов — изображений, звука, видео — низкие частоты несут основную информацию, а высокие — детали, которые часто незаметны.
ДКП «упаковывает» информацию в несколько первых коэффициентов. Остальные — малы. Именно поэтому их можно выбросить или огрубить.
👉 Связь: Компьютерные шрифты — кривые Безье тоже описывают форму через «частоты» (управляющие точки)
🖼 JPEG: глаз не видит высоких частот
Стандарт 1992 года
Аббревиатура расшифровывается как Joint Photographic Experts Group — комитет, принявший стандарт в 1992 году. Математика — ДКП Ахмеда 1974 года.
Шаг 1: цветовое пространство YCbCr
Первое, что делает JPEG — переводит изображение из RGB в YCbCr:
- Y — яркость (luma)
- Cb, Cr — цветовая разность (chroma)
Затем — субдискретизация цвета (4:2:0): каналы Cb и Cr уменьшаются вдвое по каждому направлению. На каждые 4 пикселя яркости — 1 пиксель цвета.
Почему это работает: зрительная система человека намного чувствительнее к яркостным деталям, чем к цветовым. Это открыли Хьюбел и Визел (Нобель 1981) — клетки зрительной коры настроены прежде всего на контрастные границы яркости. JPEG использует эту асимметрию: цвет сжимается сильнее, яркость — аккуратнее.
👉 Связь: Цветовое смешение — та же разница между яркостным и цветовым каналами
Шаг 2: блоки 8×8 и ДКП
Изображение разбивается на блоки 8×8 пикселей. К каждому блоку применяется двумерное ДКП. Результат — 64 коэффициента: один «постоянный» (DC, средняя яркость блока) и 63 «переменных» (AC, пространственные частоты от низких к высоким).
Низкочастотные коэффициенты (левый верхний угол) — это крупные формы. Высокочастотные (правый нижний) — мелкие детали.
Шаг 3: квантование
Каждый коэффициент делится на число из таблицы квантования и округляется. Числа в таблице для высоких частот — большие. Результат: высокочастотные коэффициенты округляются грубо или обнуляются.
Таблица квантования не случайна — она построена на основе функции контрастной чувствительности (CSF) человеческого зрения. Для частот, которые глаз видит плохо — большой шаг квантования, много потерь. Для частот, которые глаз видит хорошо — маленький шаг.
Шаг 4: энтропийное кодирование
После квантования большинство высокочастотных коэффициентов — нули. Зигзагообразное сканирование блока собирает их в длинную последовательность. Длинные серии нулей эффективно кодируются кодированием длин серий (RLE), затем — кодом Хаффмана (коды Хаффмана 1952 года — более короткие коды для частых символов).
Итог: фотография 24-мегапиксельного RAW (~69 МБ) → JPEG качества 80% → ~4–6 МБ. Коэффициент сжатия 10–15:1 при визуально приемлемом качестве.
🎵 MP3: ухо не слышит замаскированного
Карлхайнц Брандебург и Фраунгоферовский институт, 1987–1993
MP3 — это MPEG-1 Audio Layer III. Разработан командой Карлхайнца Брандебурга в Эрлангене (Германия). В основе — психоакустическая модель, уходящая корнями к работам Эберхарда Цвикера по критическим полосам слуха (1960-е–1980-е).
Критические полосы и маскировка
Ухо не воспринимает все частоты одинаково. Кохлея (улитка) разделяет звук на критические полосы — около 24 полос по всему слышимому диапазону (шкала Барк). Ширина каждой полосы — примерно 100 Гц в низкочастотной области и до 5 кГц — в высокочастотной.
Главное свойство: маскировка. Громкий звук на одной частоте делает тихие звуки на соседних частотах неслышимыми:
- Одновременная маскировка: громкий тон при 1000 Гц маскирует тихие звуки в диапазоне ±200–300 Гц
- Временна́я маскировка: громкий звук маскирует тихие звуки за 5–20 мс до него (пре-маскировка) и за 50–200 мс после (пост-маскировка)
MP3 вычисляет порог маскировки для каждого момента времени. Всё, что ниже этого порога — выбрасывается: ухо всё равно не услышит. Биты распределяются туда, где они нужны — в незамаскированные компоненты.
«Том’с Дайнер» как эталон
При разработке MP3 Брандебург использовал запись Сюзанны Вега «Tom’s Diner» (1987) — a cappella, только голос. Это один из самых трудных материалов для кодека: нет инструментального «шума», который маскирует артефакты. Если MP3 звучит прилично на этой записи — алгоритм работает.
МДКП
Вместо обычного ДКП MP3 использует модифицированное ДКП (MDCT) — 576 частотных подполос для каждого окна (~26 мс). Это даёт лучшее частотное разрешение, чем JPEG. Коэффициенты квантуются в соответствии с порогом маскировки, затем кодируются кодом Хаффмана.
Итог: аудио CD (1411 кбит/с, WAV) → MP3 128 кбит/с → сжатие 11:1. При 192–320 кбит/с большинство людей не отличает MP3 от оригинала на слух.
🎬 MPEG: видео не меняется целиком
Межкадровое предсказание
Видео — это последовательность изображений. В статичной сцене между соседними кадрами почти ничего не меняется. MPEG использует это: вместо передачи каждого кадра целиком — передаются только изменения.
MPEG вводит три типа кадров:
| Тип | Описание | Размер |
|---|---|---|
| I-кадр (Intra) | Полный кадр, как JPEG | 100% |
| P-кадр (Predictive) | Разница с предыдущим I или P | ~30% |
| B-кадр (Bidirectional) | Разница с предыдущим и следующим | ~10% |
Последовательность кадров — GOP (Group of Pictures): обычно I → B → B → P → B → B → P → … → I.
Компенсация движения
Если объект в кадре движется — его пиксели не «изменились», они просто сместились. P-кадр не хранит разницу пикселей напрямую: он хранит вектор движения — куда сместился каждый блок 16×16 пикселей. Вектор (dx, dy) весит намного меньше, чем сам блок.
Остаток (разница после компенсации движения) сжимается ДКП — как в JPEG.
Поколения: от VCD до 8K
| Стандарт | Год | Применение | Улучшение |
|---|---|---|---|
| MPEG-1 | 1993 | VCD, MP3 | Базовый |
| MPEG-2 | 1996 | DVD, ТВ | Интерлейс, высокое разрешение |
| H.264/AVC | 2003 | YouTube, Blu-ray | Вдвое эффективнее MPEG-2 |
| H.265/HEVC | 2013 | 4K, стриминг | Вдвое эффективнее H.264 |
| H.266/VVC | 2020 | 8K, VR | Вдвое эффективнее H.265 |
Каждое поколение — примерно двукратный выигрыш в эффективности при том же качестве. H.264 используется в 90% видео в интернете сегодня.
📡 Предел Шеннона: стена, которую нельзя пробить
Все эти алгоритмы — лишь приближение к теоретическому пределу. В 1948 году Клод Шеннон доказал: невозможно сжать данные ниже их информационной энтропии. Это не техническое ограничение, а математический закон природы.
Энтропия изображения, звука, видео — это минимальный размер, который они могут занимать при безу́потерном сжатии. JPEG, MP3, MPEG — методы потерного сжатия: они перешагивают предел Шеннона за счёт того, что часть информации объявляется «незначимой» для восприятия и удаляется.
JPEG XL (2022), Opus (2012), AV1 (2018) — современные стандарты, всё ближе подбирающиеся к психоперцептивному пределу: точке, где никакой алгоритм не сможет сжать сильнее без видимых/слышимых артефактов.
Итог: карта открытий
| Компонент | Открытие | Нобель | Год |
|---|---|---|---|
| ДКП (основа всех трёх) | Насир Ахмед | — | 1974 |
| Таблицы квантования JPEG | Хьюбел и Визел (CSF) | ✅ 1981 | 1960-е |
| Психоакустика MP3 | Эберхард Цвикер (критические полосы) | — | 1960-е |
| Предел сжатия | Клод Шеннон (теорема) | — | 1948 |
| Субдискретизация цвета | Цветовые пространства (телевидение) | — | 1950-е |
| Код Хаффмана | Дэвид Хаффман | — | 1952 |
| Межкадровое предсказание | Комитет MPEG | — | 1988 |
Три стандарта, которые сформировали цифровой мир — интернет-фотографии, музыкальные стриминги, видеосвязь — построены на одной идее: человек воспринимает не все данные, а значит, незамеченное можно не хранить.