- •Аппаратное обеспечение компьютерной графики Графическая плата
- •Графические форматы
- •Методы сжатия изображений
- •Лекция №4 Трехмерная графика
- •Графический конвейер
- •Геометрические преобразования
- •Стадия рендеринга
- •Сортировка по z-буферу и смешение текстур
- •Закраска треугольников
- •Наложение текстуры
- •Сглаживание
- •Архитектура Direct3d компании Microsoft
- •Заключение
- •Лекция 5. Компьютерная анимация
- •Лекция 6. Технология Flash
- •Лекция 10. Цифровое видеоизображение
- •Основные характеристики видео Качество изображения
- •Смысл графиков psnr/Frame size
- •Количество кадров в секунду (частота кадра)
- •Чересстрочная развёртка
- •Разрешение
- •Соотношение сторон экрана
- •Количество цветов и цветовое разрешение (глубина цвета)
- •Ширина видеопотока (для цифрового видео)
- •Цифровые видеостандарты
- •Аналоговые видеостандарты
- •Лекция 11. Методы и форматы сжатия цифрового видео
- •Технологии сжатия цифрового видео
- •Для сжатия видео используют различные кодеки
- •Технологии и алгоритмы сжатия видео
- •Лекция 12. Аппаратное и программное обеспечение для обработки видеоданных Видеокарта
- •Основные параметры видеокарты:
- •Проигрыватели мультимедиа
- •Программы для обработки видеоданных
- •Видеозахват
Заключение
С распространением недорогих аппаратных средств для трехмерной графики и стандартизации интерфейса приложений, такого как Direct3D, в течение пары лет использование трехмерной графики станет повсеместным. Можно ожидать широкого применения трехмерной графики в науке и в деловых приложениях с целью отображения сложных структур данных. Трехмерная графика обогатит и традиционные приложения, такие как архитектура и дизайн. Тренажеры могут быть дополнены спецэффектами трехмерной графики для имитации реальной среды. Другими важными областями распространения трехмерной графики являются браузеры для intranet/Internet и содержание Web-страниц. Следует ожидать, что трехмерная графика станет общепринятым компонентом операционных систем и многочисленных приложений для персональных компьютеров.
Лекция 5. Компьютерная анимация
Неподвижные изображения пригодны для некоторых программ-приложений компьютерной графики, но иногда возникает необходимость в движущихся изображениях. Так, например, имитаторы полета и видео игры постоянно меняют экран, создавая объекты и даже целые сцены, показываемые в движении. Иллюзия движения, достигаемая стремительной сменой изображения на экране, называется анимацией.
Любая компьютерная анимация выполняется обычно следующим образом: вносятся изменения в изображение на экране с быстротой, достаточной для того, чтобы последовательность изображений казалась движущейся картинкой. По научным данным, для того, чтобы успеть увидеть и осознать содержание изображения, человеческому мозгу необходимо не менее четверти секунды. Когда вы смотрите фильм в кинотеатре, вы видите 24 разных изображений, или кадров каждую секунду. Каждый кадр показывается в течении 1/24 секунды. Ваш ум не успевает осознать отдельно взятый кадр, он воспринимает движущуюся картинку. Компьютерная анимация работает по тем же принципам, причем приемлемое качество может быть получено и при существенно меньшей скорости. Уловка состоит в показе максимально возможного числа кадров и сокращения до минимума времени на перерисовку кадра. Общее впечатление сильно ухудшается, если пользователь может видеть, как перерисовываются кадры.
Одним из форматов, поддерживающих анимацию, является формат GIF.
Формирование анимированных GIF-изображений основано на одном из старейших принципов анимации – быстрой смене картин, слегка отличающихся друг от друга. Как правило, все анимированные GIF-файлы содержат ряд отдельных кадров, при последовательном просмотре которых создается иллюзия движения. Главная проблема состоит в том, что необходимость сохранения последовательности изображений может привести к созданию файлов очень большого размера. Есть несколько стандартных приемов, позволяющих уменьшить размер GIF-изображения. К ним относятся сокращение числа цветов в изображении, числа и размеров кадров, а также отказ от полутонов.
Замедление (или ускорение) анимации
Формат GIF 89A позволяет определять задержку между отдельными кадрами (указывается с шагом в 0,01 с), что дает возможность управлять темпом анимации. Без учета эстетических соображений во многих случаях оказывается, что замедление анимации (или ее ускорение) позволяет снизить общее число кадров в файле.
Например, анимация, содержащая текст, должна оставаться на экране достаточно долго, чтобы зритель без труда смог прочесть его. Можно либо сформировать четыре идентичных кадра, каждый из которых отображается в течение заданного по умолчанию времени (0,2 с), либо сделать один кадр и задать для него точное время задержки 0,8 с. Исключение трех кадров из четырехкадровой анимации приводит к уменьшению размера GIF-файла на 75% без применения других способов оптимизации.
Аналогичный прием может быть применен и в обратном направлении. Зачастую можно создать более правдоподобный эффект движения, снизив для нескольких кадров время задержки до 0,1 с или менее. Чтобы увидеть эту теорию в действии, посмотрите на анимацию со словами "Иллюзия движения", в которой первый кадр отображается в течение 0,6 с, а остальные три – в течение 0,1 с каждый.
С помощью визуальных трюков, которые традиционно применяют мультипликаторы, движение имитируется минимальным числом кадров. В данном примере на нескольких последовательных кадрах для создания иллюзии движения применяются размывка движением и наклон. |
Отсечение избыточных частей изображения
На первом кадре GIF-анимации обычно определяются полные размеры изображения, а последующие кадры могут быть меньше. Таким образом удается отсечь избыточные данные об изображении и уменьшить полный размер файла.
Слои в анимации
Можно получать GIF-файлы поразительно малых размеров, если воспользоваться двумя другими возможностями данного формата: в GIF-файлах допускается наличие прозрачных участков и задание способа перерисовки или очистки каждого кадра анимации. Если создавать анимацию, просто накладывая слои с новым изображением поверх старого, причем допускать просвечивание фрагментов предыдущего кадра, можно формировать кадры с протяженными прозрачными участками. Прозрачные области хорошо упаковываются, поскольку в алгоритме сжатия они рассматриваются как участки сплошного однородного цвета.
Интересные анимации можно создавать, накладывая небольшие изображения на статичный фон. В данном примере три желтые линии появляются на кадрах 13, 15 и 17 для проведения черты вдоль экрана. |
В нашем простом примере анимации с наложением текста, который состоит из 17 кадров, происходит много действий, тем не менее размер файла составляет менее 6 Кбайт. На приводимой здесь иллюстрации выбрано несколько кадров анимации, чтобы продемонстрировать, как мало данных добавляется с каждым новым кадром.
Уменьшение числа цветов в палитре
Чем меньше цветов в палитре, тем короче файлы. Для хранения небольших палитр требуется меньше места. Так для палитры из 16 цветов требуется только 4 бита, тогда как для палитры из 128 цветов уже 7 битов. Не удивительно, что изображения, составленные из однородно окрашенных участков (особенно текст, логотипы и компьютерная графика), лучше работают с небольшими палитрами. При создании анимированных GIF-изображений не стоит применять фотографии или файлы с градиентной заливкой, поскольку они содержат множество различных цветов, что увеличивает размер палитры.
Создание иллюзии движения
В конце концов, анимация – это всего лишь иллюзия, когда быстрая смена последовательных статичных кадров обманывает глаз, создавая видимость движения. Однако есть несколько визуальных трюков – их мультипликаторы применяют много лет, – усиливающих или ослабляющих движение в минимальном числе кадров.
Размывка движением (motion blur), которую можно применить в качестве фильтра в большинстве программ редактирования графики, ловко вводит в заблуждение глаз, имитируя несуществующее движение. Еще один замечательный визуальный трюк для показа движения – изменение наклона изображения вперед или назад. Объект с наклоном в направлении движения, выглядит, как ускоряющийся, а наклоненный назад похож на тормозящий. К другим примерам относятся штрихи, способные во многих случаях заменить размывку движением, или прозрачные следы, подразумевающие так быстро движущийся объект, что его можно видеть в двух местах одновременно.
Работа по созданию aнимационного GIF файла включает в себя два этапа - подготовка кадров и объединение их в анимационный GIF файл. На первом этапе используются графические редакторы CorelDraw, Photoshop и др. На втором - специальная программа для создания GIF анимации, например GifCon, Construction Set, Ulead GIF Animator, Active GIF Creator и др.
Рассмотрим пример.
Kak это сделать. Подготовка кадров в CorelDraw. |
|
|
Запустите CorelDraw. Откройте новый файл. Введите текст "inet". Для этого нажмите мышью кнопку Text Tool на панели графики, установите курсор в поле документа, нажмите левую кнопку мыши и введите текст. |
|
Отредактируйте введенный текст следующим образом. Выделите редактируемый текст, для че-го нажмите мышью кнопку Pick Tool на панели графики, кликните по редактируемому тексту. С помощью панели свойств установите размер шрифта 36, включите свойства полужирный ( кнопка В ) и курсив ( кнопка I ). |
Преобразуйте текст в кривые. Для этого нажмите правой кнопкой мыши на тексте. Выберите в выпадающем меню команду Convert To Curvers. Используйте кнопку Zoom Tool для получения удобного для работы масштаба. |
|
|
Измените цвет объекта "inet". Для этого предварительно выделив его (кнопка Pick Tool ), вызовите окно градиентной заливки (кнопка Fill Tool на панели графики + Fountain Fill Dialog ). В появившемся окне выберите настройки по своему вкусу, нажмите кнопку ОК. |
Сделайте семь копий с полученного обьекта и разместите их последовательно в одну горизонтальную линию. При этом испольуйте команды Edit|Copy и Edit|Paste. Поверните обьекты со второго по восьмой на соответственно 45, 90, 135,180, 225, 270, 315 градусов. Для этого выделив объект вводите в поле Angle of Rotation значение угла поворота. В результате у Вас должна получиться следующая картинка. |
|
|
|
Kak это сделать. Создание живой картинки с помощью GifCon32. |
|
Запустите GifCon32. Откройте новый файл с помощью команды File|New. Добавьте в документ модуль Loop. Для этого выполните команду Insert|Loop. Добавьте в документ модуль Image. Для этого выполните команду Insert|Image. В открывшемся окне выберите файл 1.gif и нажмите ОК. В следующем окне установите переключатель в положение Use a local palette for this image и нажмите ОК. Аналогично добавьте остальные семь картинок. Убедитесь, что модули Image расположены в документе последовательно от 1 до 8. Вставьте перед модулем Image1 модуль Control. Для этого выделите в документе модуль Loop и выполните команду Insert|Control. Аналогично вставьте еще семь модулей Control перед остальными модулями Image. В результате долен получиться следующий документ: |
|
HESDER GIF98a Screen (640 x 480) LOOP CONTROL IMAGE 1.gif54 x 32. 256 colors CONTROL IMAGE 2.gif54 x 32. 256 colors . . . . . . CONTROL IMAGE 8.gif54 x 32. 256 colors |
|
Отредактируйте свойства модулей Control. Для этого выделите один из модулей и выполните команду Blok|Edit. В открывшемся окне включите переключатель Transparent color. Нажмите кнопку с указателем и в открывшемся окне кликните мышью в картинке по тому цвету, который должен стать прозрачным ( белый цвет фона ). В строке Remove by установите Background. В поле Delay установите значение 20. Нажмите кнопку ОК. Проделайте тоже самое с остальными модулями Control. Отредактируйте свойства модулей Image. Для этого выделите первый модуль и выполните команду Blok|Edit. Установите свойства Image left и Image top - соответственно 0 и 40. Нажмите кнопку ОК. Проделайте тоже самое с остальными модулями Image, установив следующие значения: Image2 - 7/3, Image3 - 40/0, Image4 - 3/7, Image5 - 0/40, Image6 - 7/3, Image7 - 40/0, Image8 - 3/7. |
|
|
Нажмите кнопку View для просмотра результатов своей работы. |
Чтобы отменить показ - нажмите правую кнопку мыши. Сохраните файл, а затем откройте его с помощью брoузера. Для уменьшения размеров полученного Gif файла воспользуйтесь программой сжатия, например SmartSaver Pro или Advanced GIF Optimizer или Web Graphics Optimizer . |
|
