Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
306.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
336 Кб
Скачать
☆

3. Кодирование и обработка графической информации

Графическая информация может храниться в растровом и векторном форматах.

Векторное изображение – это набор геометрических фигур, которые можно описать математическими зависимостями.

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

Глубина цвета – это количество бит на пиксель (обычно от 1 до 24 бит на пиксель).

В режиме истинного цвета (true color) информация о цвете каждого пикселя растрового изображения хранится в виде набора его rgb-составляющих (red, green, blue); каждая из rgb-составляющих – целое число (яркость) в интервале [0,255] (всего 256 вариантов), занимающее в памяти 1 байт или 8 бит (так как 28 = 256); таким образом, на каждый пиксель отводится 3 байта = 24 бита памяти (глубина цвета – 24 бита); нулевое значение какой-то составляющей означает, что ее нет в этом цвете, значение 255 – максимальная яркость; в режиме истинного цвета можно закодировать 2563 = 224 = 16 777 216 различных цветов.

Палитра – это ограниченный набор цветов, которые используются в изображении (обычно не более 256); при кодировании с палитрой выбираются n любых цветов (из полного набора 16 777 216 цветов), для каждого из них определяется rgb-код и уникальный номер от 0 до n-1; тогда информация о цвете пикселя – это номер его цвета в палитре; при кодировании с палитрой количество бит на 1 пиксель (k) зависит от количества цветов в палитре n, они связаны формулой: ; объем памяти на все изображение вычисляется по формуле , где – число бит на пиксель, а – общее количество пикселей2 .

Полезно знать на память таблицу степеней двойки: она показывает, сколько вариантов n (а данном случае – сколько цветов) можно закодировать с помощью k бит:

K, бит

1

2

3

4

5

6

7

8

9

10

N, вариантов

2

4

8

16

32

64

128

256

512

1024

цвет на Web-страницах кодируется в виде RGB-кода в шестнадцатеричной системе: #RRGGBB, где RR, GG и BB – яркости красного, зеленого и синего, записанные в виде двух шестнадцатеричных цифр; это позволяет закодировать 256 значений от 0 (0016) до 255 (FF16) для каждой составляющей; коды некоторых цветов:

  • #FFFFFF – белый,

  • #000000 – черный,

  • #CCCCCC и любой цвет,где R = G = B, – это серый разных яркостей

  • #FF0000 – красный,

  • #00FF00 – зеленый,

  • #0000FF – синий,

  • #FFFF00 – желтый,

  • #FF00FF – фиолетовый,

  • #00FFFF – цвет морской волны.

Примеры типовых решений Задача №1

Тема: Кодирование текстовой информации. Кодировка ASCII. Основные кодировки кириллицы.

Что нужно знать:

  • все символы кодируются одинаковым числом бит3 (алфавитный подход);

  • чаще всего используют кодировки, в которых на символ отводится 8 бит (8-битные) или 16 бит (16-битные);

  • при измерении количества информации принимается, что в одном байте 8 бит, а в одном килобайте (1 кбайт) – 1024 байта, в мегабайте (1Мбайт) – 1024 кбайта4;

  • после знака препинания внутри (не в конце!) текста ставится пробел;

  • чтобы найти информационный объем текста I, нужно умножить количество символов N на число бит на символ K: I = N * K;

  • две строчки текста не могут занимать 100 кбайт в памяти.

Пример 1. Определите информационный объем текста

Бамбарбия! Кергуду!

1) 38 бит

2) 144 бита

3) 152 бита

4) 19 бит

Решение:

  1. в этом тексте 19 символов (обязательно считать пробелы и знаки препинания);

  2. если не дополнительной информации, считаем, что используется 8-битная кодировка (чаще всего явно указано, что кодировка 8- или 16-битная) ;

  3. поэтому в сообщении 19*8 = 152 бита информации (ответ 3).

Пример 2. Автоматическое устройство осуществило перекодировку информационного сообщения на русском языке, первоначально записанного в 16-битном коде Unicode, в 8-битную кодировку КОИ-8. При этом информационное сообщение уменьшилось на 480 бит. Какова длина сообщения в символах?

Решение:

  1. обозначим количество символов через N;

  2. при 16-битной кодировке объем сообщения – 16*N бит;

  3. когда его перекодировали в 8-битный код, его объем стал равен– 8*N бит;

  4. таким образом, сообщение уменьшилось на 16*N – 8*N = 8*N = 480 бит;

  5. отсюда находим N = 480/8 = 60 символов.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]