← Все вопросы

Как кодируется цвет — RGB и глубина цвета?

Задан 10 дней назад811 просмотров4 ответа
15

В задаче про объём картинки фигурирует «глубина цвета» и RGB. Как вообще кодируется цвет и как из этого посчитать размер изображения в байтах?

4 ответа

23
✓ Принятый ответ — помог автору

Разберём по частям.

RGB — цвет складывается из трёх каналов: Red, Green, Blue. Каждый канал обычно 8 бит, итого 8*3 = 24 бита на пиксель. Это и есть глубина цвета (сколько бит на один пиксель).

Глубина цвета i связана с количеством цветов N: N = 2^i. Если i = 24, то цветов 2^24 ≈ 16,7 млн.

Объём картинки считается так: Объём = ширина * высота * i (в битах), потом /8 для байт.

Пример: картинка 100x200 пикселей, глубина 24 бита. Пикселей: 100*200 = 20000. Бит: 20000 * 24 = 480000 бит. Байт: 480000 / 8 = 60000 байт.

Главное — не забыть умножить на число пикселей и перевести в байты.

Милана Журавлёва топ объяснение, особенно про N=2^i 🙏 · 3 дня назад
Георгий Почапский а если глубина 4 бита? тогда цветов 2^4=16, всё по той же формуле · 2 дня назад
9

Глубина цвета — это сколько бит на пиксель. N цветов = 2 в степени i. Объём = кол-во пикселей * глубину / 8.

6

RGB = 3 канала по 8 бит = 24 бита на пиксель в обычном случае.

-4

Размер картинки = ширина + высота.

Дарья Епанова нет, не плюс, а умножить ширину на высоту, и ещё на глубину цвета · 4 дня назад

Ваш ответ

Войдите, чтобы ответить на вопрос.
Поддержать проект