Глубина цвета 24 бита¶
24 бит — это глубина цвета, при которой на один пиксель изображения отводится 24 бита информации, что позволяет кодировать 16 777 216 различных цветов (2²⁴). Такая глубина широко используется в цифровой фотографии, видео, компьютерной графике и дисплеях и часто обозначается как «True Color» (истинный цвет) или «RGB888», поскольку каждый из трёх цветовых каналов (красный, зелёный, синий) кодируется восемью битами.
¶Расчёт количества цветов
При 24-битной глубине цвета каждый канал RGB получает 8 бит, то есть 2⁸ = 256 уровней яркости. Общее число возможных комбинаций составляет 256 × 256 × 256 = 16 777 216. Для сравнения: человеческий глаз в нормальных условиях различает около 10 миллионов оттенков, поэтому 24-битная палитра считается достаточной для большинства практических задач и воспринимается как «бесконечная» для наблюдателя.
¶Структура кодирования
Существует несколько способов упаковки 24-битного цвета:
- RGB888 — последовательное размещение трёх байт: красный, зелёный, синий. Широко используется в форматах BMP, TGA, PNG (Truecolor).
- BGR888 — обратный порядок каналов, применяемый в некоторых API (например, в Windows GDI и DirectDraw).
- XRGB8888 / ARGB8888 — 24-битный цвет, размещённый в 32-битном слове с дополнительным байтом (прозрачность или резервный канал). Такая раскладка удобна для процессоров, работающих с 32-битными словами, и фактически вытеснила чистый 24-битный формат в оперативной памяти.
¶Отличие от 32-битного цвета
Термин «32-битный цвет» часто понимается неверно: в большинстве случаев цветовая информация по-прежнему занимает 24 бита, а оставшиеся 8 бит отводятся под альфа-канал (прозрачность) либо не используются. Поэтому 24-битный и 32-битный режимы визуально идентичны, если в последнем альфа-канал не задействован.
¶Применение
¶Графика и изображения
Форматы PNG (Truecolor), JPEG, TIFF и безсжатые растровые форматы работают с 24-битным цветом по умолчанию. При сжатии JPEG используется модель YCbCr, где 24 бита распределяются как 8 бит на яркость и по 4 бита на цветовые разности, что соответствует восприятию человека.
¶Видео и телевидение
Стандарты видеосжатия (MPEG-2, H.264, H.265) используют 8-битную цветовую модель 4:2:0, что в пересчёте на пиксель даёт около 12 бит, но при декодировании изображение восстанавливается в 24-битном RGB-пространстве для вывода на экран. Профессиональные стандарты (ProRes 4444, CinemaDNG) поддерживают более высокую глубину — 10, 12 и 16 бит на канал.
¶Дисплеи
Большинство потребительских мониторов и телевизоров физически ограничены 8 битами на канал, то есть 24 битами на пиксель. Модели с 10-битной панелью (1024 уровня на канал, около 1,07 миллиарда цветов) относятся к категории HDR-дисплеев и поддерживают стандарты Rec. 2020 и HDR10.
¶Цветовые пространства
24-битная глубина обычно связана с пространством sRGB, введённым Microsoft и HP в 1996 году. Для более широких гамут (Adobe RGB, DCI-P3) 8 бит на канал могут быть недостаточны из-за постеризации — видимых полос на градиентах, поэтому в профессиональной обработке применяют 16-битные каналы.
¶Историческая справка
Термин «True Color» закрепился в 1990-х годах с распространением видеокарт с 24-битным аппаратным ускорением. Ранние системы (EGA, первые VGA) поддерживали лишь 16 или 256 цветов, поэтому 16,7 миллиона оттенков воспринимались как качественный скачок. Стандарт X Window System изначально поддерживал 24-битные экраны, а формат GIF с палитрой в 256 цветов стал альтернативой для веб-графики вплоть до появления PNG.
¶Ограничения
Главный недостаток 24-битного цвета — постеризация при обработке: повторные преобразования (яркость, контраст, наложение слоёв) приводят к потере точности, поскольку 256 уровней на канал недостаточны для накопления ошибок. В фото- и видеомонтаже поэтому используют 16-битные (48-битные) рабочие пространства, а 24 бита применяют только на этапе вывода.
Источники:
- «Цифровая обработка изображений» — Р. Гонсалес, Р. Вудс
- Спецификация PNG (ISO/IEC 15948)
- Стандарт sRGB (IEC 61966-2-1)
- Руководства по цветовым моделям Rec. 709 и Rec. 2020 (ITU-R)