14.1. Кодирование графики
В настоящее время при создании и хранении графических объектов в компьютере используются растровое и векторное изображения (примеры 14.1, 14.2).
Растровое изображение — совокупность отдельных точек (пикселей), каждая из которых имеет свой цвет.
В векторном графическом изображении каждый нарисованный элемент является объектом: линия, овал, прямоугольник и др.
Все объекты имеют определенный перечень значений свойств, которые описывают эти объекты (пример 14.3).
Векторное изображение — совокупность графических примитивов (объектов изображения), которые описаны с помощью числовых значений или математических формул.
Различие в представлении растровых и векторных изображений существует лишь для графических файлов.
При выводе на экран монитора изображения растрового или векторного типов, в видеопамяти компьютера формируется информация растрового типа.
Эта информация состоит из двоичных кодов каждого пикселя. Код пикселя — информация о его цвете.
Если на черно-белое изображение наложить сетку и каждой ячейке белого цвета поставить в соответствие 1, а черного цвета — 0 (или наоборот: 1 — черный, 0 — белый), то можно создать матрицу изображения из нулей и единиц (пример 14.4).
Для черно-белого изображения информационный объем пикселя равен одному биту. Соответственно, информационный объем изображения в битах будет равен количеству пикселей в изображении — произведению ширины на длину изображения.
Чем больше цветов в изображении, тем больше битов понадобится для кодирования одной точки (пример 14.5).
На экране монитора цвет пикселя изображения формируется смешением трех цветовых лучей: красного (англ. Red), зеленого (англ. Green) и синего (англ. Blue).
Поэтому при кодировании цветных изображений используется цветовая модель RGB. В современной версии модели RGB на каждый пиксель отводится 24 бита, по 8 бит на каждый из трех основных цветов, что дает возможность закодировать 16,7 млн оттенков.
Если для каждого из основных цветов использовать меньшее количество бит, то, соответственно, можно закодировать и меньшее количество цветовых оттенков.
Кодирование цветов при использовании 16-цветной палитры приведено в примере 14.6.
В этом случае информационный объем каждого пикселя составляет 4 бита.
Качество изображения на экране зависит от разрешающей способности монитора и глубины цвета.
Любое графическое изображение на экране монитора состоит из строк, которые содержат определенное количество пикселей.
Мониторы могут иметь различные разрешающие способности: 1024 х 768, 1280 х1024, 1366 х 768,1920 х 1080 и др. Разрешение экрана может быть изменено. Для этого в контекстном меню Рабочего стола нужно выбрать команду
Разрешение экрана (пример 14.7).
Глубина цвета определяется количеством бит, используемых для кодирования цвета пикселя. Современные мониторы поддерживают глубину цвета 32 бита: 24 бита хранят код цвета в RGB-палитре, еще 8 бит отводятся на хранение значений прозрачности цвета (альфа-канал).
В файле с графическим растровым изображением хранится информация о цвете каждого пикселя изображения. В таком виде сохраняются изображения в формате BMP.
Другие растровые форматы (JPEG, GIF, PNG) хранят изображение в сжатом виде: при сохранении к изображению, которое на экране представлено матрицей пикселей, применяют алгоритмы архивации.
При сохранении в формате GIF количество цветов уменьшается до 256. При сохранении в формате JPEG сохраняется информация не о каждом пикселе, а о группе пикселей, при этом часть информации теряется.
Такое сжатие необратимо, восстановить изображение в исходном виде невозможно. Однако человеческий глаз не всегда способен заметить изменения, поэтому формат JPEG является одним из самых распространенных для компактного хранения фотографий.
При сохранении изображения в формате PNG используется алгоритм сжатия без потерь.
Формат PNG предназначен прежде всего для использования в Интернете.В файле с векторным изображением сохраняются математические значения свойств объектов изображения, которые необходимы для его построения.
Файлы формата SVG можно просматривать и редактировать в текстовом виде — например, в редакторе NotePad (пример 14.8).
Фрактальная графика, как и векторная, основывается на математических вычислениях.
Базовым элементом фрактальной графики является математическая формула.
Это приводит к тому, что в памяти компьютера не хранится никаких объектов, а изображение строится по уравнениям.
При помощи этого способа можно строить как простейшие изображения, так и сложные иллюстрации, имитирующие ландшафты (пример 14.9).
14.2. Кодирование звука Современные компьютерные устройства оснащены устройствами для ввода и вывода звуковой информации.
Понятие звук тесно связано с понятием волна. Как и любая волна, звук имеет амплитуду и частоту.
Амплитуда характеризует громкость звука. Частота определяет тон, высоту. Обычный человек способен слышать звуковые колебания в диапазоне частот от 16—20 Гц до 15—20 кГц.
При оцифровке звук подвергается дискретизации. Аналого-цифровой преобразователь, встроенный в звуковую карту, производит замеры амплитуды звуковой волны через равные промежутки времени. Полученные числовые значения преобразуются в двоичный код и сохраняются (пример 14.10).
Количество измерений за одну секунду определяет частоту дискретизации звука.
Точность преобразования зависит от разрядности АЦП. Разрядность АЦП характеризует количество дискретных значений, которые преобразователь может выдать на выходе.
Например, двоичный 8-разрядный АЦП способен выдать 256 дискретных значений (0…255), 28 = 256. С разрядностью связано разрешение АЦП — минимальное изменение величины аналогового сигнала, которое может быть преобразовано. Разрешение равно разности значений, соответствующих максимальному и минимальному выходному коду, деленной на количество выходных дискретных значений.
Звуковой файл длительностью в 1 с при частоте дискретизации 8 КГц и разрядности 8 бит будет занимать объем в 7,8 Кбайт.
При увеличении частоты дискретизации до 44,1 КГц и разрядности 24 бита объем файла увеличится до 129,2 Кбайт.
Чтобы записать стереозвук, следует одновременно кодировать два независимых канала звука.
Количество каналов может быть большим: 4 (квадро), 6 (Dolby Digital). Сегодня существуют технологии, поддерживающие до 16 звуковых каналов. Воспроизведение многоканальных фонограмм через систему громкоговорителей, расположенных по окружности от слушателя, называют объемным звуком.
Чем выше частота дискретизации и разрядность, тем качественнее получается звук (пример 14.11).
Однако с увеличением частоты возрастает объем памяти, необходимый для хранения цифрового сигнала, а с увеличением разрядности — и вычислительная нагрузка на цифровые преобразователи.
Чтобы уменьшить объем, занимаемый цифровыми аудиоданными, применяют различные методы сжатия (пример 14.12).
При сжатии звука без потерь к исходному звуку применяют алгоритмы архивации. Возможно удаление избыточных данных — связей между соседними отсчетами цифрового звукового сигнала. Сжатие звука с потерями основано на несовершенстве человеческого слуха (человек не воспринимает сверхнизкие и сверхвысокие частоты, более слабый сигнал становится неслышимым на фоне более сильного и др.).
14.3. Кодирование видео
Видео хранится на диске в виде файлов, содержащих видео-, аудио- и другие потоки, а также метаданные. Видеофайл часто называют медиаконтейнером.
В любой момент из контейнера можно вынуть, например, видео- или аудиодорожки, перекодировать их и поместить в другой контейнер, т. е. изменить формат видеофайла.
Существует несколько форматов видеоконтейнеров (пример 14.13).
Кодирование звукового сопровождения видеоинформации ничем не отличается от кодирования звука.
Изображение в видео состоит из отдельных кадров, которые меняются с
определенной частотой.
Кадр кодируется так же, как обычное растровое изображение.
Видеоданные характеризуются частотой кадров и экранным разрешением. Если частота смены кадров равна 25, то для каждой секунды видео необходимо хранить в памяти 25 кадров.
Разрешение для видео обычно составляет 768 х 484 (для стандарта NTSC) или 768 х 576 (для стандартов PAL и SECAM).В основе кодирования цветного видео лежит стандартная модель RGB.
Если представить каждый кадр изображения как отдельный рисунок, то видеоизображение будет занимать очень большой объем.
Например, одна секунда записи в системе PAL будет занимать 25 Мбайт. Поэтому на практике используются различные алгоритмы сжатия для уменьшения объема видеоданных (пример 14.14). Для просмотра такого видео нужен кодек.Кодек (CoDec) — это сокращение слов компрессор и декомпрессор. Кодек — набор файлов, драйверов и библиотек, необходимых для упаковки видео или звукового файла в сжатый формат и воспроизведения сжатого файла.
Кодек может отслеживать массивы точек изображения с одинаковыми значениями (например, синий цвет моря) и вместо того, чтобы запоминать информацию о каждой точке (яркость и цвет), записать лишь первую (ключевую) точку и количество повторений этой точки до момента изменения ее цвета.
14.4. Решение задач на кодирование графики, звука и видео
Пример 14.15. Для хранения изображения размером 128 х 128 точек выделено 4 Кбайт памяти. Определите, какое максимальное число цветов в палитре.
Пример 14.16. Цвет пикселя, формируемого принтером, определяется тремя составляющими: голубой, пурпурной и желтой красками. Под каждую составляющую одного пикселя отвели по 4 бита. В какое количество цветов можно раскрасить пиксель?
Пример 14.17. Фотография размером 10 х 10 см была отсканирована с разрешением 400 dpi при глубине цвета 24 бита. Определите информационный объем полученного растрового файла в килобайтах (принять 1 дюйм = = 2,5 см).
Пример 14.18. Определить информационный объем в Кбайтах моноаудиофайла длительностью звучания 8 с при глубине звука 8 бит и частоте 8 кГц.
Пример 14.19. Рассчитать время звучания стереоаудиофайла, который был закодирован с частотой дискретизации 32 кГц. Разрядность аудиоадаптера — 16 бит, информационный объем файла равен 70 Мбайт.
Пример 14.20. Какой объем будет иметь видео, передаваемое с разрешением кадра 800 х 600 пикселей с 24-битовой глубиной цвета, скоростью воспроизведения 24 кадра в секунду и длительностью 5 мин? Известно, что стереозвук, наложенный на видео, имеет 256 уровней громкости, частота дискретизации равна 11 250 Гц. |
|
Пример 14.1. Растровое изображение.

Пример 14.2. Векторное изображение.

Пример 14.3. Свойства отрезка и круга в векторном изображении.
Отрезок:
- начало и конец отрезка — две пары чисел, определяющих координаты точек на координатной плоскости;
- значения, определяющие цвет, толщину и тип линии (сплошная, пунктирная и др.).
Таким образом, для описания отрезка необходимо 7 числовых значений, описывающих его свойства. Этих значений достаточно для описания отрезка любого размера, цвета и толщины.
Круг:
- координаты центра круга и его радиус;
- значения ширины контурной линии, цвета контура, типа линии контура окружности;
- цвет заливки внутренней области, ограниченной окружностью.
Для описания свойств круга может использоваться 3—7 числовых значений. Координаты центра и радиус являются обязательными параметрами, остальные параметры могут отсутствовать.
Пример 14.4. Кодирование чернобелого изображения:

Размер изображения 7 × 8 пикселей, информационный объем изображения равен 8 • 7 • 1 бит = 56 бит = 7 байт.
Пример 14.5. Кодирование одного пикселя изображения.

Пример 14.6. Кодирование цвета при использовании палитры из 16 цветов.

Пример 14.7. Изменение разрешения экрана.

Научная дисциплина, изучающая вопросы измерения цветовых характеристик, называется колориметрией (или метрологией цвета).
Научную основу колориметрии как сочетание нескольких основных цветов положил Исаак Ньютон. Он в 1676 г. с помощью трехгранной призмы разложил белый солнечный свет на цветовой спектр и выделил семь основных цветов: красный, оранжевый, желтый, зеленый, голубой, синий и фиолетовый.
В 1756 г. М. В. Ломоносов сформулировал трехкомпонентную теорию цвета. До этого считалось, что цвет состоит из семи составляющих.
Спустя столетие Герман Грассман ввел для нее математический аппарат.
Пример 14.8. Рисунок в Inkscape:
Просмотр файла рисунка в NotePad:

Пример 14.9. Фрактальная графика.
Слово фрактал образовано от латинского fractus и в переводе означает «состоящий из фрагментов». Оно было предложено математиком Бенуа Мандель-Бротом в 1975 г. для обозначения самоподобных структур.
Пример 14.10. Временная диаграмма кодирования звука: 1 — аналоговый сигнал; 2 — дискретный сигнал.

Для кодирования будем использовать трехразрядный двоичный код. С помощью такого кода можно закодировать 8 различных значений. Разобьем диапазон изменения амплитуды сигнала на 8 уровней. Каждому отсчету сигнала присвоим ближайший к нему номер от 0 до 7. Далее выполним кодирование полученных значений сигнала трехразрядным двоичным кодом (в таблице приведены первые 6 значений).

Максимальное и минимальное значения амплитуды сигнала равны 2 и 0 соответственно. Разрешение АЦП в данном случае определяется как 2 / 8 = 0,25.
В многоканальном звуке один канал используют для низкочастотных эффектов (выводится на сабвуфер). Поскольку диапазон частот этого канала очень ограничен (по сравнению с другими каналами), то часто его обозначают «.1». Тогда обозначение 5.1 говорит о том, что это 5 каналов с полным диапазоном частот и 1 канал для низкочастотных эффектов. Общее количество каналов 6.
Пример 14.11. Используемые частоты дискретизации звука.

Пример 14.12. Звуковые форматы.

Пример 14.13. Форматы видеофайлов.

Пример 14.14. Стандарты сжатия видео.
MPEG
(Moving Pictures Expert Group)Один из основных стандартов сжатия. Имеет разновидности:MPEG-1 — формат сжатия для компакт-дисков (CD-ROM);MPEG-2 — формат сжатия для DVD- дисков, цифрового телевидения;MPEG-4 — формат, который уменьшает видеопоток сильнее, чем MPEG-2, но сохраняет хорошее качество.
HD
High Definition — формат высокого разрешения и особой четкости. Может использовать разрешение 1920 X 1080.
Windows Media
Разработан компанией Microsoft и предназначен для хранения сжатого видео и звука.
Пример 14.15. Изображение состоит из 128 • 128 = 27 • 27 = 214 пикселей. Для хранения изображения выделено 4 Кбайт = 4 • 210 байт = 212 байт = 215 бит. Значит, информационный объем одного пикселя равен 215 / 214 = 2 бит. С помощью 2 бит можно закодировать 22 = 4 цвета.
Пример 14.16. Информационный объем одного пикселя равен 3 • 4 = 12. Количество цветов 212 = 4096.
Пример 14.17. Размер фотографии в дюймах 4 X 4, т. к. 10 / 2,5 = 4.Количество пикселей4 • 4 • 400 • 400 = 28 • 10000.Информационный объем28 • 10000 • 24 бит = 28 • 24 • 625 • 23 • 3 бит = 215 • 3 • 54 бит = 212 • 3 • 54 байт = 4 • 3 • 54 Кбайт = 7500 Кбайт.
Или V = 10/2.5*10/2.5*400*400*24/1024/8 = 7500 Кбайт.
Пример 14.18. При частоте 8 кГц за 1 с производится 8000 измерений. Чтобы сохранить одно измерение, нужно 8 бит. Тогда для всех измерений:8 • 8 • 8000 = 29 • 1000 бит = 26 • 1000 байт = 62,5 Кбайт.
Или V = 8*8*8000/1024/8 = 62,5 Кбайт.
Пример 14.19. Информационный объем стереоаудиофайла вычисляют по формуле: V = 2 • R • t • N, где V — объем аудиофайла, R — разрядность аудиоадаптера, N — частота дискретизации, t — время звучания, умножение на 2 показывает, что кодируются два канала. Тогда
Или t = 70*1024*1024*8/(2*32*1000*16)/60 = 9,56 мин
Пример 14.20. Найдем объем графики:
800 • 600 • 24 бит = 11520000 бит ≈ 1,38 Мбайт. Размер видео: 1,38 • 24 х (5 • 60) = 9936 Мбайт. Разрядность при кодировании звука равна 8, т. к. 256 = 28. Размер звука: 11250 • 8 • 2 • (5 • 60) = 54000000 бит ≈ 6,4 Мбайт. Объем видеофайла: 9936 + 6,4 = 9942,4 Мбайт ≈ 9,7 Гигабайт.
Или V = 800*600*24*24*5*60/1024/1024/8+11250*8*5*60*2/1024/1024/8 = 9894 Мбайт.
где 8 это количество разрядов в числе уровней громкости 256.
Если уровней громкости 512 то количество разрядов 9.
1024 – 10, 2048 – 11, 4096 – 12 и так далее.
|