P
pro·school.ru
Каталог школ

Кодирование чёрно-белого изображения

💻 Информатика · 7 класс

Кодирование чёрно-белого изображения

Самый простой способ закодировать рисунок в памяти компьютера — представить его в виде чёрно-белого изображения, где каждая точка может быть только одного из двух цветов. Такое изображение легко перевести в нули и единицы, поэтому именно с него удобно начинать изучение кодирования графики. Освоив этот случай, легче понять и более сложное кодирование цветных картинок.

Растр из точек

Изображение разбивают на сетку из мелких квадратиков — пикселей. Такой способ представления называют растровым. Если пиксель чёрный, его кодируют единицей, а если белый — нулём (можно договориться и наоборот, главное — соблюдать правило по всей картинке). Так весь рисунок превращается в таблицу из нулей и единиц, которую компьютер хранит в памяти.

Правило: для двухцветного изображения на каждый пиксель нужен ровно 1 бит. Это связано с тем, что два цвета — это два возможных состояния, а одно состояние из двух как раз и кодируется одним битом по формуле N = 2^i.

Разбор примера

Закодируем маленькую картинку размером 4 на 4 пикселя, на которой чёрные точки образуют крестик. Обозначим чёрный цвет как 1, а белый как 0, и запишем рисунок по строкам:

0 1 1 0 0 1 1 0 1 1 1 1 0 1 1 0

Эта таблица из нулей и единиц полностью описывает рисунок. Чтобы восстановить картинку, компьютер читает биты по строкам слева направо и закрашивает соответствующие клетки чёрным или оставляет белыми. Так из кода снова получается изображение.

Объём изображения

Объём чёрно-белого рисунка равен числу пикселей в нём, ведь на каждый пиксель отводится 1 бит. Чтобы найти число пикселей, перемножают ширину и высоту картинки. Рассмотрим несколько размеров:

РазмерЧисло пикселейОбъём
4 × 41616 бит = 2 байта
8 × 86464 бита = 8 байт
10 × 10100100 бит
32 × 3210241024 бита = 128 байт

От двух цветов к большему

Если цветов нужно больше, на каждый пиксель отводят больше битов. Двумя битами можно закодировать 4 цвета, тремя — 8, а восемью битами (одним байтом) — целых 256 разных оттенков. Так чёрно-белый случай естественно обобщается на цветные изображения.

Где встречается такое кодирование

Чёрно-белое растровое кодирование используют там, где важна простота и малый объём: в значках, штрихкодах, простых схемах и шрифтовых символах. Каждый знак на экране — это, по сути, маленькая чёрно-белая картинка из точек, заданная единицами и нулями. Поняв, как кодируется такая картинка, легко перейти к изображениям в оттенках серого и к полноцветной графике, где принцип остаётся тем же, но битов на пиксель отводится больше.

Частая ошибка: считать, что для двух цветов нужен целый байт. Двум цветам достаточно одного бита; байт из 8 бит позволяет закодировать уже 256 оттенков, что во много раз больше необходимого.

Кратко о главном

  • Изображение разбивают на сетку пикселей — это растр.
  • Для двух цветов каждый пиксель кодируется одним битом.
  • Чёрный и белый обозначают единицей и нулём.
  • Объём чёрно-белой картинки равен числу пикселей в битах.