
- •Оглавление
- •Предисловие
- •1. Компьютерная графика, геометрическое моделирование и решаемые ими задачи
- •Основные понятия и определения
- •1.2. Применение интерактивной графики в информационных системах, графические диалоговые системы
- •Контрольные вопросы и задания
- •2. Представление видеоинформации и ее машинная генерация
- •2.1 Характеристики изображения
- •2.2. Растровая графика
- •2.3. Векторная графика
- •2.4. Представление цвета в компьютерной графике
- •Контрольные вопросы и задания
- •3. Форматы графических файлов
- •3.1. Сжатие изображений
- •3.2. Растровые файлы, метафайлы, графические языки
- •Контрольные вопросы и задания
- •4. Графические объекты, примитивы и их атрибуты
- •4.1.Примитивы
- •4.2. Атрибуты
- •4.3. Модели геометрического представления объектов
- •Контрольные вопросы и задания
- •5. Кривые и криволинейные поверхности
- •5.1. Представление кривых и поверхностей в явной форме
- •5.2. Неявная форма представления кривых и поверхностей
- •5.3. Параметрическая форма представления кривых и поверхностей
- •5.4. Параметрические полиномиальные кривые
- •5.5. Общая характеристика полиномиальной параметрической формы представления
- •5.6. Параметрическая непрерывность
- •5.7. Геометрическая непрерывность
- •5.8. Элементарная кубическая кривая Безье
- •5.10. Поверхности Безье
- •Контрольные вопросы и задания
- •6. Базовая графика. Аффинные преобразования
- •6.1. Однородные координаты
- •6.2. Аффинные преобразования на плоскости
- •6.3. Аффинные преобразования в пространстве
- •6.4. Пространственный поворот относительно точки
- •Контрольные вопросы и задания
- •7. Проективные преобразования
- •Контрольные вопросы и задания
- •8. Алгоритмы отсечения невидимых линий и поверхностей
- •8.1. Алгоритм Коэна-Сазерленда
- •8.2. Отсечение плоских фигур
- •8.3. Алгоритм удаления нелицевых граней
- •8.4. Алгоритм z-буфера
- •8.5. Отсечение пирамидой видимости
- •8.6. Потенциально видимые множества граней
- •8.7. Метод иерархических подсцен
- •Контрольные вопросы и задания
- •9. Растровые алгоритмы
- •9.1. Алгоритмы вывода прямой линии
- •9.2. Алгоритмы закрашивания
- •9.3. Сглаживание ступенчатости линий на изображении
- •Контрольные вопросы и задания
- •10. Свет и материя
- •10.1. Источники света
- •10.2. Модели отражения света
- •10.3. Методы тонирования поверхностей
- •Контрольные вопросы и задания
- •11. Реализация аппаратно-программных модулей графической системы
- •11.1. Архитектура графических терминалов и графических
- •11.2. Современные стандарты компьютерной графики
- •Контрольные вопросы и задания
- •12. Лабораторные работы по курсу «компьютерная графика» Лабораторная работа №1
- •Контрольные вопросы и задания
- •Лабораторная работа №2
- •Контрольные вопросы и задания
- •Лабораторная работа №3
- •Контрольные вопросы и задания
- •Лабораторная работа №4
- •Варианты заданий
- •Контрольные вопросы и задания
- •Библиографический список
- •Учебное пособие
Контрольные вопросы и задания
Какие виды представления видеоинформации Вы знаете?
Что представляет собой битовая глубина?
Что такое разрешающая способность растра?
Какие характеристики влияют на размер изображения?
В чем особенность масштабирования растровых и векторных изображений?
Назовите основные характеристики цвета?
Какие цветовые системы Вы знаете?
Дайте определение аддитивной системе цветов. В каких устройствах она используется?
Что представляет собой система субтрактивных цветов?
Перечислите альтернативные цветовые системы.
3. Форматы графических файлов
3.1. Сжатие изображений
В настоящее время постоянно ведутся работы над новыми методами использования меньшего объема памяти для выполнения одной и той же работы. Когда для уменьшения размеров памяти, занимаемой файлами, применяются программы или математические алгоритмы, говорят, что файл подвергается сжатию. Существуют несколько методов сжатия, и каждый предназначен для работы с определенным типом данных. Но в действительности все методы заменяют повторяющиеся элементы данными, более эффективными для хранения. Сжатие является частью структуры файла и работает внутри него [4] .
Метод RLE (Run Length Encoding – групповое кодирование). При групповом кодировании – одном из наиболее простых и понятных методов сжатия файлов – создающая файл программа считывает значения отдельных пикселов и запоминает их. Само сжатие в RLE происходит за счет того, что в исходном изображении встречаются цепочки одинаковых байт. Замена их на пары <счетчик повторений, значение> уменьшает избыточность данных.
Хотя метод сжатия RLE легко доступен для понимания и сравнительно просто реализуется, он не является эффективным для большинства растровых файлов. Метод RLE лучше всего работает с изображениями, которые содержат ограниченное количество цветов и большие области однотонной закраски, и хуже с фотореалистичными рисунками, так как в них нет длинных строк одинаковых пикселов, которые можно сжать.
Метод LZW. Название алгоритм получил по первым буквам фамилий его разработчиков — Lempel, Ziv и Welch. Метод сжатия LZW использует более сложный алгоритм, чем предыдущий метод. Он основан на поиске шаблонов внутри заданной структуры – в данном случае в растровом графическом изображении – и сохранении их.
Программа считывает значения пикселов растрового рисунка и строит таблицу кодов, которые представляют повторяющиеся пиксельные узоры, найденные ею. Метод имеет те же недостатки, что и предыдущий.
Метод JPEG. Используется для сжатия рисунков фотографического качества. Обеспечивает более высокий коэффициент сжатия, чем другие методы. Этот метод породил новый термин «сжатие с потерями».
Изображение, сжатое с потерями, не обязательно будет выглядеть хуже, чем сжатое без потерь. Формат JPEG использует тот факт, что человеческий глаз очень чувствителен к изменению яркости или интенсивности, но изменения цвета или тона он замечает хуже. Соответственно JPEG запоминает больше информации о разнице между яркостями пикселов и меньше – о разнице между их цветами.
Сжатие с потерями приводит к тому, что резкие линии выглядят мягкими или слегка размытыми, а в областях однотонной окраски появляются переливы. По своей природе изображения фотографического качества не содержат резких линий или областей однотонной окраски, поэтому указанный эффект в них не заметен.
Преобразование данных при записи происходит в несколько этапов. Независимо от исходной цветовой модели изображения все пикселы переводятся в цветовое пространство CIE LAB. Затем отбрасывается не менее половины информации о цвете, спектр сужается до палитры, ориентированной на особенности человеческого зрения.
Далее изображение разбивается на блоки размером 8х8 пикселов. В каждом блоке сначала кодируется информация о "среднем" цвете пикселов, а затем описывается разница между "средним" цветом блока и цветом конкретного пиксела.
Очевидно, что крупные элементы изображения будут представлены меньшим набором чисел, чем мелкие. На этом основан принцип действий на следующем этапе: выбранный уровень качества определяет сохранность мелких элементов. Чем ниже уровень качества, тем более крупные элементы "выбрасываются" из картинки. На последнем этапе кодовая последовательность сжимается методом Хафмана.
Применение компрессии JPEG позволяет до 500 раз уменьшить объем файла по сравнению с обычным bitmap. Вместе с тем искажение цветовой модели и деградация деталей не позволяют использовать этот формат для хранения изображений высокого качества.