Файл: Анализ методов кодирования данных Автор Анна Евкова.docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 04.12.2023

Просмотров: 90

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.


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

Для кодирования целых чисел от 0 до 255 достаточно иметь 8 разрядов двоичного кода (8 бит). 16 бит позволяют закодировать целые числа от 0 до 65535, а 24 – уже более 16,5 миллионов различных значений.

Для кодирования действительных чисел используют 80-разрядное кодирование. При этом число предварительно преобразовывают в нормализованную форму:

3,1414926 = 0,31415926  101

300 000 = 0,3  106

Первая часть числа называется мантиссой, а вторая – характеристикой. Большую часть из 80 бит отводят для хранения мантиссы (вместе со знаком) и некоторое фиксированное количество разрядов отводят для хранения характеристики.

2.3. Кодирование графических данных

Телевизионный способ представления видеоинфор­мации во многом повлиял на формирование принципов представления графической информации в компьютере. Одной из основополагающих идей телевидения является создание изображения на базе системы точек, «обегае­мых» по очереди, например, электронным лучом. Подоб­ную систему точек принято называть растром. Посмот­рев через лупу на экран телевизора или на фотографию, вы увидите множество точек различных цветов, состав­ляющих растр (см. рис. 1.1).



Рис. 2.2. Растровое изображение под увеличением

 Поскольку линейные координаты и индивидуальные свойства каждой точки (яркость) можно выразить с помощью целых чисел, то можно сказать, что растровое кодирование позволяет использовать двоичный код для представления графических данных. Закодировав каждый цвет каким-нибудь числом, можно представить изображение в виде последователь­ности чисел. Для чёрно-белого изображения на каждую точку будет достаточно одного бита: белый цвет будет обо­значаться единицей, а чёрный — нулём, как показано на рисунке 1.2.

Рис. 2.3. Цифровое представление чёрно-белого изображения

Общепринятым на сегодняшний день считается представление чёрно-белых иллюстраций в виде комбинации точек с 256 градациями серого цвета, и, таким образом, для кодирования яркости любой точки обычно достаточно восьмиразрядного двоичного числа.


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

N = 2i,

где N есть число цветов, а i — необ­ходимое количество битов информации [19, c. 27].

Например, для кодирования 256 градаций серого потребуется 8 битов, то есть 1 байт. В этом случае 0 будет означать чёрный цвет, 255 — белый, а числа от 1 до 254 — серые цвета различной яркости.

Цветные изображения кодируются сложнее. Часто при кодировании цвета используют трёхбайтовое кодирование, когда каждый байт представляет собой интен­сивность одного из трёх базовых цветов — красного, зе­лёного и синего. Это связано с природной цветовой чув­ствительностью глаза человека. Практически любой цвет, воспринимаемый глазом, можно получить, смеши­вая три этих базовых цвета. Например, пурпурный цвет получается от смешения красного и синего, а жёл­тый — от смешения красного и зелёного. Меняя пропор­ции, можно получить различные оттенки. Если смешать все три базовых цвета в одинаковой пропорции, то полу­чится серый цвет. Такой способ кодирования цвета на­зывается RGB (Red, Green, Blue).

Если яркость каждого из базовых цветов кодировать числом от 0 до 255, то потребуется 3 байта (то есть 24 бита) на каждую точку. В этом случае белый цвет бу­дет кодироваться тремя числами (255,255, 255), чёр­ный — (0, 0, 0). Коды (255, 255, 200) будут обозначать блёкло-жёлтый цвет, а (100, 0, 100) — тёмно-фиолетовый.

Режим представления цветной графики с использованием 24 двоичных разрядов называется полноцветным (True Color).

Каждому из основных цветов можно поставить в соответствие дополнительный цвет, т.е. цвет, дополняющий основной цвет до белого. Нетрудно заметить, что для любого из основных цветов дополнительным будет цвет, образованный суммой пары остальных основных цветов. Соответственно дополнительными цветами являются: голубой (Cyan), пурпурный (Magenta) и жёлтый (Yellow). Принцип декомпозиции произвольного цвета на составляющие компоненты можно применять не только для основных цветов, но и для дополнительных, т.е. любой цвет можно представить в виде суммы голубой, пурпурной и жёлтой составляющей. Такой метод кодирования цвета принят в полиграфии, но в полиграфии используется ещё и четвёртая краска – чёрная (Black). Поэтому данная система кодирования обозначается четырьмя буквами CMYK (чёрный цвет обозначается буквой К, потому, что буква В уже занята синим цветом), и для представления цветной графики в этой системе надо иметь 32 двоичных разряда. Такой режим также называется полноцветным.



Если уменьшить количество двоичных разрядов, используемых для кодирования цвета каждой точки, то можно сократить объём данных, но при этом диапазон кодируемых цветов заметно сокращается. Кодирование цветной графики 16-разрядными двоичными числами называется режимом High Color.

Отдельный элемент графического изображения имеет широко распространённое название — пиксель (от англ. picture element — элемент изображения). Чем гу­ще сетка пикселей на мониторе, тем лучше качество изображения. Размер графической сетки обычно пред­ставляется в форме произведения числа точек в гори­зонтальной строке на число строк: MxN. Мы можем настраивать режим работы монитора, например: 800x600 или 1024x768 пикселей.

По существу, кодирование цветов отдельных пиксе­лей аналогично кодированию символов текста. Таблица нумерации цветов есть своеобразный алфавит, пользу­ясь которым, компьютер записывает графическую ин­формацию. В итоге, как и в случае с текстом, получается последовательность целых чисел, которая стандартным образом сохраняется в памяти.

С практической точки зрения очень важно понимать, что количество используемых на рисунке цветов сущест­венным образом сказывается на размере графического файла. Для записи чёрно-белого изображения, имеющего 100 точек по вертикали и 100 точек по горизонтали, по­требуется 100x100 = 10000 битов (1250 байтов). Изобра­жение такого же размера, но использующее 256 града­ций серого цвета, потребует 100 х 100 х 8 = 80 000 битов (10000 байтов). Изображение, использующее 24-битный код, потребует:

100x100x24 = 240 000 битов (30 000 байтов).

2.4. Кодирование звуковой информации

Информация, в том числе графическая и звуковая, может быть пред­ставлена в аналоговой или дискретной форме. При аналоговом представлении физическая величина при­нимает бесконечное множество значений, причем ее значения изменяются непрерывно. При дискретном представлении физическая величина принимает ко­нечное множество значений, причем ее величина изме­няется скачкообразно. Примером аналогового представления графической информации может служить, скажем, живописное по­лотно, цвет которого изменяется непрерывно, а дис­кретного — изображение, напечатанное с помощью струйного принтера и состоящее из отдельных точек разного цвета. Примером аналогового хранения звуковой инфор­мации является виниловая пластинка (звуковая до­рожка изменяет свою форму непрерывно), а дискрет­ного — аудиокомпакт-диск (звуковая дорожка которого содержит участки с различной отражающей способностью). Звуковая информация из аналоговой формы в дискретную преобразуется путем дискрети­зации, т.е. разбиения непрерывного (аналогового) звукового сигнала на отдельные элементы. В процессе дискретиза­ции производится кодирование, т. е. присвоение каждо­му элементу конкретного значения в форме кода.


Дискретизация — это преобразование непрерыв­ных изображений и звука в набор дискретных значе­ний, каждому из которых присваивается значение его кода.

Как известно из курса физики, звук — это колебания среды, непрерывный сигнал с меняющейся амплитудой (рис. 1.3).



Рис.2.4. Звуковая волна

При кодировании звука этот сигнал надо предста­вить в виде последовательности нулей и единиц. Как, например, это происходит в микрофоне? Через равные промежутки времени, очень часто (десятки тысяч раз в секунду) измеряется амплитуда колебаний. Каждое из­мерение производится с ограниченной точностью и запи­сывается в двоичном виде. Частота, с которой записыва­ется амплитуда, называется частотой дискретизации [19. c. 29].

Полученный ступенчатый сигнал сначала сглаживается посредством аналогового фильтра, а затем преобразует­ся в звук с помощью усилителя и динамика.

На качество воспроизведения закодированного звука в основном влияют два параметра: частота дискретиза­ции— количество измерений амплитуды за секунду в герцах и глубина кодирования звука — размер в битах, отводимый под запись значения амплитуды.

Например, при записи на компакт-диски (CD) используются 16-разрядные значения, а частота дискретизации равна 44 032 Гц. Эти параметры обеспечивают превосходное качество звучания речи и музыки. Для стереозвука отдельно записывают данные для левого и для правого канала.

Приёмы и методы работы со звуковой информацией пришли в вычислительную технику наиболее поздно. К тому же, в отличие от числовых, текстовых и графических данных, у звукозаписей не было столь же длительной и проверенной истории кодирования. В итоге методы кодирования звуковой информации двоичным кодом далеки от стандартизации. Множество отдельных компаний разработали свои корпоративные стандарты, но среди них можно выделить два основных направления [6. c. 115].

1. Метод FM (Frequency Modulation) основан та том, что теоретически любой сложный звук можно разложить на последовательность простейших гармонических сигналов разных частот, каждый из которых представляет собой правильную синусоиду, а, следовательно, может быть описан числовыми параметрами, т.е. кодом. В природе звуковые сигналы имеют непрерывный спектр, т.е. являются аналоговыми. Их разложение в гармонические ряды и представление в виде дискретных цифровых сигналов выполняют специальный устройства – аналогово-цифровые преобразователи (АЦП). Обратное преобразование для воспроизведения звука, закодированного числовым кодом, выполняют цифро-аналоговые преобразователи (ЦАП). При таких преобразованиях неизбежны потери информации, связанные с методом кодирования, поэтому качество звукозаписи обычно получается не вполне удовлетворительным и соответствует качеству звучания простейших электромузыкальных инструментов с окрасом характерным для электронной музыки. В то же время данный метод копирования обеспечивает весьма компактный код, поэтому он нашёл применение ещё в те годы, когда ресурсы средств вычислительной техники были явно недостаточны.


2. Метод таблично волнового (Wave-Table) синтеза лучше соответствует современному уровню развития техники. В заранее подготовленных таблицах хранятся образцы звуков для множества различных музыкальных инструментах. В технике такие образцы называют сэмплами. Числовые коды выражают тип инструмента, номер его модели, высоту тона, продолжительность и интенсивность звука, динамику его изменения, некоторые параметры среды, в которой происходит звучание, а также прочие параметры, характеризующие особенности звучания. Поскольку в качестве образцов исполняются реальные звуки, то его качество получается очень высоким и приближается к качеству звучания реальных музыкальных инструментов.