§14 Кодирование графики, звука и видео. Кодирование графики. Кодирование звука. Кодирование видео. Решение задач на кодирование графики, звука и видео.

§ 14. кодирование графики, звука и видео

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 • RtN, где 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 и так далее.

1. Какие два принципа представления графических изображений используются
в компьютерной графике?
2. Из чего состоит растровое изображение?
3. Что представляет собой векторное изображение?
4. Чем отличается растровое изображение от векторного?
5. Графические изображения какого типа выводятся на экран монитора?
6. Что понимается под разрешающей способностью экрана монитора и глубиной
цвета?
7. Как хранятся растровые и векторные изображения в файле?
8. Чем определяется частота дискретизации звука?
9. Что такое разрядность аналого-цифрового преобразователя?
10. Как кодируется видео?

 

Упражнения

1. Создайте матрицу из нулей и единиц для кодирования следующих черно-белых изображений (можно использовать электронные таблицы; для проверки правильности посчитайте суммы по строкам и столбцам). Определите информационный объем изображений.2. Определите информационный объем размещенных ниже растровых изображений (одна клетка — один пиксель).

3. 16-цветный рисунок содержит 500 байт информации. Из скольких точек он состоит?
4. Определите требуемый объем (в мегабайтах) видеопамяти для реализации графического режима монитора с разрешающей способностью 1024 х 768 пикселей при количестве отображаемых цветов 65 536.

5*. На рисунке в примере 14.9 изображена фигура, которая называется «треугольник Серпинского». Для ее построения можно воспользоваться следующим алгоритмом:

  1. Строим равносторонний треугольник (уровень 0).
  2. Соединяем середины сторон построенного треугольника отрезками. Получается 4 новых треугольника. Из исходного треугольника удаляется внутренность срединного треугольника. Получаем 3 треугольника уровня 1.
  3. Поступая точно так же с каждым из треугольников первого уровня, получим множество, состоящее из 9 равносторонних треугольников второго уровня.
  4. Повторяем процесс до нужного уровня.

Реализуйте данный алгоритм в среде программирования.

6. Определите длительность звучания стереоаудиофайла, занимающего 468,75 Кбайт памяти при глубине звука 16 бит и частоте 48 кГц.

7. При переводе в дискретную форму аналогового сигнала длительностью 2 мин 8 с использовалась частота дискретизации 32 Гц и 16 уровней дискретизации. Найти в байтах размер полученного кода аналогового сигнала.

8. Экспериментально было установлено, что на временном отрезке [0; 20] амплитуда звукового сигнала изменялась в соответствии с законом A(t) = 2 sin1,7x • sin0,2x. Используя электронные таблицы, постройте временные диаграммы кодирования звука.

а)диаграмму аналогового сигнала (в Excel можно использовать тип диаграммы — точечная);

б)диаграмму дискретного сигнала (в Excel можно использовать тип диаграммы — гистограмма).

9. Какой объем будет иметь черно-белое видео, передаваемое с разрешением кадра 800 X 600, скоростью воспроизведения 24 кадра в секунду и длительностью 30 мин без звука?

10. Кадры видеозаписи закодированы в режиме истинного цвета (24 бита на пиксель) и сменяются с частотой 25 кадров в секунду. Кадр имеет размеры 720 х 480 пикселей. Частота дискретизации 22 кГц, глубина кодирования звука 16 бит. Оцените объем минуты видеозаписи в мегабайтах (с точностью до десятых), если файл за¬писан с 10-кратной степенью сжатости.

11. Камера снимает видео без звука с частотой 60 кадров в секунду, при этом изображения используют палитру, содержащую 224 цвета. При записи файла на сервер полученное видео преобразуют так, что частота кадров уменьшается до 20, а изображения преобразуют в формат, использующий палитру из 256 цветов. Другие преобразования и иные методы сжатия не используются. 10 секунд преобразованного видео в среднем занимают 512 Кбайт. Сколько Мбайт в среднем занимает 1 минута исходного видео?

 

Проверь себя

Выбор тем