Кодирование цветовой информации. Задачи и решения | MegaDOCs

Кодирование цветовой информации. Задачи и решения

Кодирование изображений

Информация о состоянии каждого пикселя хранится в закодированном виде в памяти компьютера. Код может быть однобитовым, двухбитовым и т.д.

Код пикселя - это информация о цвете пикселя.

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

 

 

Для получения черно-белого изображения пиксель может находится в одном из двух состояний: светится – не светится. Тогда для его кодирования достаточно 1 бита памяти:

1 – белый,

0 – черный.

Задача 1

Сколько бит памяти требуется для хранения черно-белого изображения буквы К? 

 

 

Дано:

Растровая сетка размером 10 х 10 с изображением буквы

Сколько бит памяти требуется для хранения информации?

Решение:

1. Количество пикселов, требующихся для хранения: 10×10=100.

2. Т.к. для хранения 1 пикселя требуется 1 бит памяти, объем памяти = 100 бит.

Ответ: Для хранения информации требуется 100 бит памяти.

Задача 2

Изменится ли объем памяти, необходимой для хранения рисунка, если будет изображена другая картинка? 

 

 

Дано:

Растровая сетка размером 10 х 10 с изображением буквы

Сколько бит памяти требуется для хранения информации?

Решение:

1. Количество пикселов, требующихся для хранения: 10×10=100.

2. Т.к. для хранения 1 пикселя требуется 1 бит памяти, объем памяти = 100 бит.

Ответ: Для хранения информации требуется 100 бит памяти. Объем памяти не изменится.

Задача 3

Черно-белая картинка построена на экране монитора с разрешением 800 х 600. Какой объем памяти она занимает? 

 

 

Дано:

Растровая сетка размером 800 х 600 с изображением картинки.

Какой объем памяти требуется для хранения картинки?

Решение:

1. Количество пикселов, требующихся для хранения: 800 х 600 = 480 000.

2. Т.к. для хранения 1 пикселя требуется 1 бит памяти, объем памяти равен: 800 х 600 бит = 100*600 байт = 58,6 Кбайт

Ответ: Для хранения информации требуется 58,6 Кбайт памяти.

Как получается цветное изображение на экране?

 

 

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

Из сочетания красного, зеленого и синего цветов складывается вся красочная палитра на экране.

Электронная пушка цветного монитора испускает три луча. Каждый луч вызывает свечение точки только одного цвета. Для этого в мониторе используется специальная фокусирующая система.

Кодирование цветного изображения

Как рассчитать объем памяти для хранения цветного изображения? Можно ли в 1 бит записать информацию о цветах палитры? Сколько бит нужно для кодирования одного пикселя на цветном дисплее?

Попробуем ответить на эти вопросы. 

 

 

Мы знаем, что любой цвет на экране получается смешиванием трёх цветов: красногозелёного и синего.

Кодирование цвета в компьютере при помощи трёх составляющих (красной, зелёной и синей) называется RGB (от Red — красный,Green — зелёный, Blue — синий).

Белый цвет получается при смешивании 100% красного, зеленого и синего цвета.

Желтый цвет - это 100% красного и зеленого и 0% синего цвета.

 

Для хранения цвета, состоящего из трех составляющих, требуется трехбитовый двоичный код.

Из трех базовых цветов для трехбитового кода можно получить восемь комбинаций. 

 

 

Цвет

R (красный)

G (зеленый)

B (синий)

 

0

0

0

 

0

0

1

 

0

1

0

 

0

1

1

 

1

0

0

 

1

0

1

 

1

1

0

 

1

1

1

 

Вывод: для кодирования восьмицветного изображения требуются 3 бита памяти на 1 видеопиксель.

Из сказанного, казалось бы, следует вывод: с помощью трех базовых цветов нельзя получить палитру, содержащую больше восьми цветов. Однако, на экранах современных компьютеров получают цветные изображения, составленные из сотен, тысяч и даже миллионов различных красок и оттенков. Как это достигается?

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

Если к трем битам базовых цветов добавить один бит интенсивности, который управляет яркостью всех трех цветов одновременно, то получится шестнадцатицветная палитра.

Цвет

R (красный)

G (зеленый)

B (синий)

И (интенсивность)

 

0

0

0

0

 

0

0

1

0

 

0

1

0

0

 

0

1

1

0

 

1

0

0

0

 

1

0

1

0

 

1

1

0

0

 

1

1

1

0

 

0

0

0

1

 

0

0

1

1

 

0

1

0

1

 

0

1

1

1

 

1

0

0

1

 

1

0

1

1

 

1

1

0

1

 

1

1

1

1

Большое количество цветов получается при раздельном управлении интенсивностью базовых цветов. Причем для интенсивности каждого из базовых цветов можно выделять больше одного бита.

Из всего сказанного можно сделать вывод: для кодирования цветного изображения можно использовать более 3 бит памяти на 1 видеопиксель.

Количество бит, выделенных для записи цвета одного пикселя, называется глубиной цвета.

Максимальное количество цветов зависит от глубины цвета.

Количество цветов (K), и глубина цвета (b) связаны между собой формулой:   K = 2b

Например, для получения цветовой гаммы в 256 цветов требуется 8 битов = 1 байт на каждый пиксель, так как   256 = 28

Объем видеопамяти

Объем необходимой видеопамяти определяется размером графической сетки дисплея и количеством цветов. Минимальный объем видеопамяти должен быть таким, чтобы в нее помещался один кадр (одна страница) изображения.

Задача 4

Рисунок построен с использованием палитры 256 цветов на экране монитора с графическим разрешением 1024 х 768. Рассчитать объем памяти, необходимый для хранения этого рисунка. 

 

 

Дано:

Растровая сетка размером 1024 х 768.

Количество цветов К = 256

Рассчитать объем видеопамяти.

Решение:

1. По формуле K = 2b определяем глубину цвета. 256 = 28. Значит, глубина цвета b = 8 бит.

2. Количество пикселей на экране: 1024 х 768 = 786432.

3. 786432 * 8 бит = 786432 байт = 768 Кбайт

Ответ: Объем видеопамяти - 768 Кбайт.

Задача 5

Какая минимальная глубина цвета требуется для кодирования 20 цветов? 

 

 

Дано:

Количество цветов К = 20

Какова глубина цвета?

Решение:

1. По формуле K = 2b определяем глубину цвета.16 = 24 - это слишком мало.32 = 25 - этого более чем достаточно. Значит, глубина цвета b = 5 бит.

Ответ: Глубина цвета b = 5 бит.