m_avrina
@m_avrina
Студентота.

Обработка разнобитных bmp картинок, в чем конкретная разница?

привет всем!
собственно сабж в заголовке.
Написал обработку (негатив,грэйстал,гамма-коррекцию) для 24 битного изображения, а в чем разница в других битностях(2,4,8,16,24)не понял:c
  • Вопрос задан
  • 292 просмотра
Пригласить эксперта
Ответы на вопрос 2
15432
@15432
Системный программист ^_^
В случае 24 бит, на каждый пиксель приходится по 3 байта - значения для красного, зелёного и синего цветов.
Для 16 бит на пиксель приходится уже 2 байта, придётся "выдёргивать" цвета уже побитно (на красный и синий отводится 5 бит данных, на зелёный 6 бит)
8 бит - один байт на пиксель, либо оттенки серого, либо в заголовке будет таблица соответствий цветов, в которой каждому значению байта соответствует 24-битное значение цвета. Всё это придётся расшифровывать.
2 и 4 бита аналогично 8 бит, только ещё меньше цветов.
Помимо всего этого, может присутствовать RLE сжатие, которое придётся распаковывать и запаковывать. Сжатие примитивное, но всё же экономит место.

P.S. Если вы используете BMP библиотеку, которая любой формат вам превращает в набор значений RGB, заморачиваться и не нужно, либа сделает всё за вас.
Ответ написан
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
В формате BMP в режимах 32, 24 и 16 bpp каждая группа байтов хранит непосредственно цвет пиксела. В режимах 1, 4 и 8 bpp хранится номер цвета из палитры.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы