Общее введение в компьютерную графику
Предмет и область применения компьютерной графики
Компьютерная графика - это область информатики, которая охватывает все стороны формирования изображений с помощью компьютера. Появившись в 1950-х годах, она поначалу давала возможность выводить лишь несколько десятков отрезков на экране. В наши дни средства компьютерной графики позволяют создавать реалистические изображения, не уступающие фотографическим снимкам. Создано разнообразное аппаратное и программное обеспечение для получения изображений самого различного вида и назначения - от простых чертежей до реалистических образов естественных объектов. Компьютерная графика используется практически во всех научных и инженерных дисциплинах для наглядности восприятия и передачи информации. Применение ее для подготовки демонстрационных слайдов уже считается нормой. Трехмерные изображения используются в медицине (компьютерная томография), картографии, полиграфии, геофизике, ядерной физике и других областях. Телевидение и другие отрасли индустрии развлечений используют анимационные средства компьютерной графики (компьютерные игры, фильмы). Общепринятой практикой считается также использование компьютерного моделирования при обучении пилотов и представителей других профессий (тренажеры). Знание основ компьютерной графики сейчас необходимо и инженеру, и ученому.
Конечным результатом применения средств компьютерной графики является изображение, которое может использоваться для различных целей. Поскольку наибольшее количество информации человек получает с помощью зрения, уже в древние времена появились схемы и карты, используемые при строительстве, в географии и в астрономии.
Современная компьютерная графика - это достаточно сложная, основательно проработанная и разнообразная научно-техническая дисциплина. Некоторые ее разделы, такие как геометрические преобразования, способы описания кривых и поверхностей, к настоящему времени уже исследованы достаточно полно. Ряд областей продолжает активно развиваться: методы растрового сканирования, удаление невидимых линий и поверхностей, моделирование цвета и освещенности, текстурирование, создание эффекта прозрачности и полупрозрачности и др.
Сфера применения компьютерной графики включает четыре основных области.
1. Отображение информации
Проблема представления накопленной информации (например, данных о климатических изменениях за продолжительный период, о динамике популяций животного мира, об экологическом состоянии различных регионов и т.п.) лучше всего может быть решена посредством графического отображения.
Ни одна из областей современной науки не обходится без графического представления информации. Помимо визуализации результатов экспериментов и анализа данных натурных наблюдений существует обширная область математического моделирования процессов и явлений, которая просто немыслима без графического вывода. Например, описать процессы, протекающие в атмосфере или океане, без соответствующих наглядных картин течений или полей температуры практически невозможно. В геологии в результате обработки трехмерных натурных данных можно получить геометрию пластов, залегающих на большой глубине.
В медицине в настоящее время широко используются методы диагностики, использующие компьютерную визуализацию внутренних органов человека. Томография (в частности, ультразвуковое исследование) позволяет получить трехмерную информацию, которая затем подвергается математической обработке и выводится на экран. Помимо этого применяется и двумерная графика: энцефалограммы, миограммы, выводимые на экран компьютера или графопостроитель.
2. Проектирование
В строительстве и технике чертежи давно представляют собой основу проектирования новых сооружений или изделий. Процесс проектирования с необходимостью является итеративным, т.е. конструктор перебирает множество вариантов с целью выбора оптимального по каким-либо параметрам. Не последнюю роль в этом играют требования заказчика, который не всегда четко представляет себе конечную цель и технические возможности. Построение предварительных макетов - достаточно долгое и дорогое дело. Сегодня существуют развитые программные средства автоматизации проектно-конструкторских работ (САПР), позволяющие быстро создавать чертежи объектов, выполнять прочностные расчеты и т.п. Они дают возможность не только изобразить проекции изделия, но и рассмотреть его в объемном виде с различных сторон. Такие средства также чрезвычайно полезны для дизайнеров интерьера, ландшафта.
3. Моделирование
Под моделированием в данном случае понимается имитация различного рода ситуаций, возникающих, например, при полете самолета или космического аппарата, движении автомобиля и т.п. В английском языке это лучше всего передается термином simulation. Но моделирование используется не только при создании различного рода тренажеров. В телевизионной рекламе, в научно-популярных и других фильмах теперь синтезируются движущиеся объекты, визуально мало уступающие тем, которые могут быть получены с помощью кинокамеры. Кроме того, компьютерная графика предоставила киноиндустрии возможности создания спецэффектов, которые в прежние годы были попросту невозможны. В последние годы широко распространилась еще одна сфера применения компьютерной графики - создание виртуальной реальности.
4. Графический пользовательский интерфейс
На раннем этапе использования дисплеев как одного из устройств компьютерного вывода информации диалог "человек-компьютер" в основном осуществлялся в алфавитно-цифровом виде. Теперь же практически все системы программирования применяют графический интерфейс. Особенно впечатляюще выглядят разработки в области сети Internet. Существует множество различных программ-браузеров, реализующих в том или ином виде средства общения в сети, без которых доступ к ней трудно себе представить. Эти программы работают в различных операционных средах, но реализуют, по существу, одни и те же функции, включающие окна, баннеры, анимацию и т.д.
В современной компьютерной графике можно выделить следующие основные направления: изобразительная компьютерная графика, обработка и анализ изображений, анализ сцен (перцептивная компьютерная графика), компьютерная графика для научных абстракций (когнитивная компьютерная графика, т.е. графика, способствующая познанию).
Изобразительная компьютерная графика своим предметом имеет синтезированные изображения. Основные виды задач, которые она решает, сводятся к следующим:
- построение модели объекта и формирование изображения;
- преобразование модели и изображения;
- идентификация объекта и получение требуемой информации.
Обработка и анализ изображений касаются в основном дискретного (цифрового) представления фотографий и других изображений. Средства компьютерной графики здесь используются для:
- повышения качества изображения;
- оценки изображения - определения формы, местоположения, размеров и других параметров требуемых объектов;
- распознавания образов - выделения и классификации свойств объектов (при обработке аэрокосмических снимков, вводе чертежей, в системах навигации, обнаружения и наведения).
Анализ сцен связан с исследованием абстрактных моделей графических объектов и взаимосвязей между ними. Объекты могут быть как синтезированными, так и выделенными на фотоснимках. К таким задачам относятся, например, моделирование "машинного зрения" (роботы), анализ рентгеновских снимков с выделением и отслеживанием интересующего объекта (внутреннего органа), разработка систем видеонаблюдения.
Когнитивная компьютерная графика - только формирующееся новое направление, пока еще недостаточно четко очерченное. Это - компьютерная графика для научных абстракций, способствующая рождению нового научного знания. Технической основой для нее являются мощные ЭВМ и высокопроизводительные средства визуализации.
Одним из наиболее ранних примеров использования когнитивной компьютерной графики является работа Ч.Страуса "Неожиданное применение ЭВМ в чистой математике" (ТИИЭР, т. 62, № 4, 1974, с.96-99). В ней показано, как для анализа сложных алгебраических кривых используется "n-мерная" доска на основе графического терминала. Пользуясь устройствами ввода, математик может легко получать геометрические изображения результатов направленного изменения параметров исследуемой зависимости. Он может также легко управлять текущими значениями параметров, "углубляя тем самым свое понимание роли вариаций этих параметров". В результате получено "несколько новых теорем и определены направления дальнейших исследований".
В настоящем курсе предполагается рассмотреть следующие вопросы:
- представление изображения в компьютерной графике;
- способы подготовки изображения к визуализации;
- методы вывода изображения на экран;
- методы работы с изображением;
- методы вычислительной геометрии.