Кодирование информации. Количество информации.
|
|
Кодирование графической информации. Определение объема графического файла.
Методы кодирования графической информации.
Векторное кодирование.
Векторное кодирование по сути есть создание математической модели графического объекта, при котором графический объект представляют в виде набора математических фигур - точек, отрезков, правильных выпуклых многоугольников, окружностей, и дуг.
Все объекты характеризуются свойствами.
Свойства объекта ТОЧКА:
- координата;
- толщина;
-цвет.
Свойства объекта ЛИНИЯ:
- координата начальной точки;
- координата конечной точки;
- толщина;
- тип;
-цвет.
Свойства объекта ПРАВИЛЬНЫЙ ВЫПУКЛЫЙ МНОГОУГОЛЬНИК:
- центр описанной окружности;
- радиус описанной окружности;
- количество сторон;
- толщина;
- тип;
- цвет.
Свойства объекта ОКРУЖНОСТЬ:
- центр окружности;
- радиус окружности;
- толщина;
- тип;
- цвет.
Свойства объекта ДУГА:
- центр окружности;
- радиус окружности;
- координата начальной точки;
- координата конечной точки;
- толщина;
- тип;
- цвет.
При увеличении рисунок фактически заново перерисовывается, благодаря чему векторный рисунок можно масштабировать без потери качества и не изменяется размер файла.
Перевод сложной фотокомпозиции или художественной картины в векторный вид является крайне трудозатратной задачей, и в любом случае векторизация предполагает некоторое упрощение такой фотографии или картины.
Для работы с векторными файлами требуется специальное программное обеспечение: CorelDraw, Adobe Illustrator, Macromeda FreeHand, Inkscape и др.
Растровое кодирование.
Изображение, состоящее из отдельных точек, каждая из которых имеет свой цвет, называется растровым изображением. Минимальный элемент такого изображения в полиграфии называется растр, а при отображении графики на мониторе минимальный элемент изображения называют пиксель (pix).
Растровая графика – это формат изображения, который содержит информацию о расположении, количестве и цвете пикселей. Этот метод позволяет закодировать практически любой рисунок, вне зависимости от сложности.
Важнейшей характеристикой качества растрового изображения является разрешающая способность - количество пикселей как по горизонтали, так и по вертикали на единицу длины изображения.
Чем меньше размер пикселя, тем больше разрешающая способность и, соответственно, выше качество изображения.
Величина разрешающей способности обычно выражается в dpi (dot per inch - точек на дюйм), т. е. в количестве пикселей в полоске изображения длиной один дюйм (1 дюйм = 2,54см).
Сами пиксели имеют, как правило, квадратную форму. В этом легко убедиться, увеличив масштаб изображения до максимума, в любом графическом редакторе, например: Paint.
Каждый пиксель может быть только одного цвета.
Таким образом:
- растровое изображение есть прямоугольная матрица пикселей, каждый из которых имеет свой цвет.
- пиксель есть минимальный участок изображения, для которого независимым образом задан цвет.
Кодирование цвета.
Для кодировании цвета пикселя выделяется объем памяти, зависящий от цветовой палитры - количества доступных цветов.
При этом, для черно-белой палитры, имеющей только два цвета черный и белый, достаточно 1[bit/pix] в соответствии с формулой:
N=2I,
где N - количество независимых кодируемых событий (здесь - количество цветов в палитре);
I - разрядность двоичного кода.
Код |
Цвет |
0 |
Черный |
1 |
Белый |
У человека в центральной части сетчатки расположены цветочувствительные рецепторы — нервные клетки, которые называются колбочки. Каждый из трёх видов колбочек имеет свой тип цветочувствительного пигмента белкового происхождения. Один тип пигмента чувствителен к красному цвету, другой — к зелёному, третий — к синему.
Поэтому базовыми для кодирования цвета являются цвета КРАСНЫЙ, ЗЕЛЕНЫЙ, СИНИЙ.
Другие цвета образовываются при помощи смешения базовых цветов. Тогда получаем следующий набор цветов:
Таким образом, для восьмицветной палитры необходимо 3[bit/pix].
Шестнадцатицветная палитра требует 4[bit/pix] - 3 бита основных цветов + 1 бит интенсивности. Последний управляет яркостью трех базовых цветов одновременно.
Цвет |
Код |
Красный |
Зеленый |
Синий |
Интенсивность |
Черный |
0 |
0 |
0 |
0 |
Красный |
1 |
0 |
0 |
0 |
Зеленый |
0 |
1 |
0 |
0 |
Синий |
0 |
0 |
1 |
0 |
Желтый |
1 |
1 |
0 |
0 |
Голубой |
0 |
1 |
1 |
0 |
Пурпурный |
1 |
0 |
1 |
0 |
Темно-серый |
0 |
0 |
0 |
1 |
Ярко-красный |
1 |
0 |
0 |
1 |
Ярко-зеленый |
0 |
1 |
0 |
1 |
Ярко-синий |
0 |
0 |
1 |
1 |
Ярко-желтый |
1 |
1 |
0 |
1 |
Ярко-голубой |
0 |
1 |
1 |
1 |
Ярко-пурпурный |
1 |
0 |
1 |
1 |
Ярко-белый |
1 |
1 |
1 |
1 |
При 8 битном кодировании цвета I=8 и в соответствии с формулой
N=28=256,
получаем 256-цветную палитру.
При раздельном управлении интенсивностью основных цветов на каждый цвет выделяется по 8 бит, то есть получаем 24-битную палитру
и в соответствии с формулой:
N=224=16777216,
Значит в палитре 16777216 цветов.
Цвет |
Код |
2 |
16 |
Красный |
Зеленый |
Синий |
Красный |
Зеленый |
Синий |
Черный |
00000000 |
00000000 |
00000000 |
00 |
00 |
00 |
Красный |
11111111 |
00000000 |
00000000 |
FF |
00 |
00 |
Зеленый |
00000000 |
11111111 |
00000000 |
00 |
FF |
00 |
Синий |
00000000 |
00000000 |
11111111 |
00 |
00 |
FF |
Желтый |
11111111 |
11111111 |
00000000 |
FF |
FF |
00 |
Голубой |
00000000 |
11111111 |
11111111 |
00 |
FF |
FF |
Пурпурный |
11111111 |
00000000 |
11111111 |
FF |
00 |
FF |
Белый |
11111111 |
11111111 |
11111111 |
FF |
FF |
FF |
При уменьшении (масштабировании) растрового изображения теряется часть информаци о цвете и количестве пикселей, при увеличении растрового изображения укрупняются пиксели, а изображение огрубляется.
Наиболее распространенные форматы растровой графики: GIF, JPG, PNG, TIF, BMP
Отличие векторной графики от растровой.
1 При масштабировании изменяется качество растрового изображения. Масштабирование векторных изображений не изменяет качества изображения.
2 Перевод сложной фотокомпозиции или художественной картины в векторный вид является крайне трудозатратной задачей, и в любом случае векторизация предполагает некоторое упрощение такой фотографии или картины.
3 Перевести векторный рисунок в растровый не составляет никаких проблем, обратный же процесс фактически требует ручной перерисовки контуров рисунка. Существующие автоматические программы-трассировщики (вроде Corel Trace или Adobe StreamLine) пока успешно справляются только с относительно простыми рисунками с четкими линиями-границами между оттенками.
4 Сферы применения растровых и векторных рисунков несколько различаются, и нельзя сказать, что векторный рисунок во всем лучше растрового.
Информационный объем графического файла
Для определения объема растрового графического изображения Vгф необходимо умножить количество пикселей в изображении Kпикс на информационный объем одного пикселя (число бит на пиксель) V1п:
Vгф = Kпикс * V1п
Задача 1
Определите информационный объем изображения при растровом кодировании черно-белого рисунка, содержащего 120 пикселей
Дано:
V1п = 1[Бит]
Kпикс = 120
Vгф = ?
|
Решение:
1. Объем растрового графического файла определяем по формуле:
Vгф = Kпикс * V1п
Vгф = 120 * 1 = 120 [Бит]
Биты необходимо перевести в байты:
104 [Бит] = 120 : 8 = 15 [Байт]
Ответ: 15 байт
|
Задача 2
Определите информационный объем изображения при растровом кодировании 16-цветного рисунка, размером 15х10см и разрешением 100 пикселей на дюйм
Дано:
Палитра= 16 цветов
Размер=15х10см
Разрешение=100[pix/d]
Kпикс = ?
Vгф = ?
|
Решение:
1. Для 16 красок требуется 4[bit/pix] так как:
16=24,
Значит:
V1п = 4[Бит]
2. Определим количество пикселей в изображении.
1д = 2,5см - в 1 дюйме 2,5см
15/2,5 = 6 - количество дюймов по ширине
6 * 100 = 600 - количество пикселей по ширине
10/2,5 = 4 - количество дюймов по высоте
4 * 100 = 400 - количество пикселей по высоте
400 * 600 = 250000 - количество пикселей в изображении
3. Объем растрового графического файла определяем по формуле:
Vгф = Kпикс * V1п
Vгф = 240000 * 4 = 960000 [Бит]
Биты необходимо перевести в байты:
960000 [Бит] = 960000 : 8 = 120000 [Байт]
120000[Байт] = 120000 : 1024 = 117,1875[КБайт]
Округлить в большую сторону до 3-х знаков после запятой
Ответ: 117,188[КБайт]
|
Задача 3
Определить количество красок в палитре, если файл с информацией о фотографии размером 10х15[см], отсканированный с разрешением 56[pix/d] имеет объем 147[КБайт].
Дано:
Размер=15х10см
Разрешение=56[pix/d]
Vгф = 147[КБайт]
Kпикс = ?
Палитра= ?
|
Решение:
1. Определим количество пикселей в изображении.
1д = 2,5см - в 1 дюйме 2,5см
15/2,5 = 6 - количество дюймов по ширине
6 * 56 = 336 - количество пикселей по ширине
10/2,5 = 4 - количество дюймов по высоте
4 * 56 = 224 - количество пикселей по высоте
336 * 224 = 75264 - количество пикселей в изображении
2. Определим объем одного пикселя.
Объем растрового графического файла определяют по формуле:
Vгф = Kпикс * V1п
Vгф - известен, Kпикс - известно, значит, можно найти V1п
V1п = Vгф / Kпикс
V1п = 147[КБайт] / 75264[пикс]
но объем необходимо из [КБайт] перевести в [Бит]
V1п = 147*1024*8[Бит] /V1п = 1204224[Бит] / 75264[пикс] = 16[Бит/пикс]
3. При 16-битном кодировании в палитре будет:
N=216=65356[красок],
Ответ: 65356[красок]
|
Домашнее задание
1 Определить объем растрового графического файла, имеющего размер (дд x мм)[см] при разрешении(гг)[пикс/дюйм] для 24-х битного кодирования.
Где (дд) - дата вашего рождения, (мм) - месяц вашего рождения, (гг) - год вашего рождения.
2 Определить размер в [см] квадратного растрового изображения, имеющего объем, равный (гг) [КБайт], при разрешении (мм)[пикс/дюйм], для(дд)-битного кодирования.
Где (дд) - дата вашего рождения, (мм) - месяц вашего рождения, (гг) - год вашего рождения.
|
|
|
|
|