Федорков Е.Д., Скрипченко Ю.С., Кольцов А.С. Компьютерная графика (учебное пособие с грифом УМО) - файл n1.doc

приобрести
Федорков Е.Д., Скрипченко Ю.С., Кольцов А.С. Компьютерная графика (учебное пособие с грифом УМО)
скачать (2053 kb.)
Доступные файлы (1):
n1.doc2053kb.07.07.2012 01:24скачать

n1.doc

  1   2   3   4   5   6   7   8   9   ...   12


Е.Д. Федорков, Ю.С. Скрипченко А.С. Кольцов
Компьютерная графика


Учебное пособие


Воронеж 2004

УДК 659.305.8: 681.3.07
Компьютерная графика: Учеб. пособие / Е.Д. Федорков, Ю.С. Скрипченко, А.С. Кольцов. Воронеж. гос. техн. ун-т.

Воронеж, 2004. 244 с.
В учебном пособии рассматриваются основные вопросы компьютерной графики и основ геометрического моделирования. Рассмотрены основные вопросы базовой и пространственной графики, особенности представления и обработки видеоинформации, реализация аппаратно-программных модулей графических систем и прочие разделы курса «Компьютерная графика». Издание предназначено для студентов специальности 230104 «Системы автоматизированного проектирования» дневной формы обучения.

Табл. 25. Ил.20. Библиогр.: 10.

Рецензенты: ВГУ, канд. физ. мат наук, зав каф. «Программирования и информационных технологий» Тюкачев Н.А.;

д-р техн. наук, проф. О.Н. Чопоров.
Печатается по решению редакционно-издательского совета Воронежского государственного технического университета

©

Федорков Е.Д. Скрипченко Ю.С., Кольцов А.С., 2004

©

Оформление Воронежского государственного технического университета, 2004




  1. Компьютерная графика

Компьютерная графика - интенсивно развивающаяся в настоящее время область применения средств вычислительной техники. Подавляющая часть вопросов, рассматриваемых под общим наименованием «компьютерная графика», фактически представляет собой приложение к другим областям применения вычислительной техники, в том числе к структурам данных, операционным системам и разработкам аппаратного обеспечения.

Компьютерная графика в настоящее время уже вполне сформировалась как наука. Существует аппаратное и программное обеспечение для получения разнообразных изображений - от простых чертежей до реалистичных образов естественных объектов. Компьютерная графика используется почти во всех научных и инженерных дисциплинах для наглядности восприятия и передачи информации. Знание её основ в наше время необходимо любому ученому или инженеру. Компьютерная графика властно вторгается в бизнес, медицину, рекламу, индустрию развлечений. Применение во время деловых совещаний демонстрационных слайдов, подготовленных методами компьютерной графики и другими средствам автоматизации конторского труда, считается нормой. В медицине становится обычным получение трехмерных изображений внутренних органов по данным компьютерных томографов. В наши дни телевидение и другие рекламные предприятия часто прибегают к услугам компьютерной графики и компьютерной мультипликации. Использование компьютерной графики в индустрии развлечений охватывает такие несхожие области как видеоигры и полнометражные художественные фильмы.

На сегодняшний день создано большое количество программ, позволяющих создавать и редактировать трёхмерные сцены и объекты. Среди наиболее популярных, можно назвать такие как PhotoShop, CorelDraw и, наконец, 3DStudioMax, которая позволяет трёхмерные компьютерные ролики. Область её применения в основном реклама, мультипликация и оформление телевизионных передач. Другой не менее популярный пакет программ это AutoCAD. Он применяется в основном инженерами и проектировщиками для создания чертежей и пространственных моделей. Кроме этих существует множество других специализированных программных пакетов охватывающих практически все стороны человеческой жизни.

Среди многообразия возможностей, предоставляемых современными вычислительными средствами, те, что основаны на пространственно-образном мышлении человека, занимают особое место. Современные программно-оперативные средства компьютерной графики представляют собой весьма эффективный инструмент поддержки такого мышления при выполнении работ самых разных видов. С другой стороны именно пространственно-образное мышление является неформальной творческой основой для расширения изобразительных возможностей компьютеров. Это важное обстоятельство предполагает взаимно обогащающее сотрудничество всё более совершенной техники и человека со всем богатством знания, накопленного предшествующими поколениями. Глаз и раньше был эффективным средством познания человеком мира и себя. Поэтому столь привлекательной оказывается компьютерная визуализация, особенно визуализация динамическая, которую следует рассматривать как важнейший инструмент для обучения наукам.
Направления компьютерной графики

В нынешнем, устоявшемся состоянии принято разделять компьютерную графику на следующие направления:

Изобразительная компьютерная графика

Объекты: синтезированные изображения. Задачи:

Обработка и анализ изображений

Объекты: дискретное, числовое представление фотографий. Задачи:

Итак, в основе обработки и анализа изображений лежат методы представления, обработки и анализа изображений плюс, естественно, изобразительная компьютерная графика хотя бы для того, чтобы представить результаты.

Анализ сцен

Предмет: исследование абстрактных моделей графических объектов и взаимосвязей между ними. Объекты могут быть как синтезированными, так и выделенными на фотоснимках.

Первый шаг в анализе сцены - выделение характерных особенностей, формирующих графический объект(ы).

Примеры: машинное зрение (роботы), анализ рентгеновских снимков с выделением и отслеживанием интересующего объекта, например, сердца.

Итак, в основе анализа сцен (перцептивной компьютерной графики) находятся изобразительная графика + анализ изображений + специализированные средства.

Когнитивная компьютерная графика

Это компьютерная графика для научных абстракций, способствующая рождению нового научного знания. База - мощные. Общая последовательность познания заключается в, возможно циклическом, продвижении от гипотезы к модели (объекта, явления) и решению, результатом которого является знание (рис. 1).


Рисунок 1 - Последовательность процесса познания
Человеческое познание использует два основных механизма мышления, за каждым из которых закреплена половина мозга:

Первоначально ЭВМ имели малую производительность процессоров и средств компьютерной графики, т.е. по сути дела имели возможность работы только с символами (некоторый упрощенный аналог логического мышления).

С появлением супер-ЭВМ, производительностью в миллиард и более операций в секунду и графических супер-станций, производительностью до сотен миллионов операций в секунду, появилась возможность достаточно эффективного манипулирования образами (картинами).

Важно отметить, что мозг не только умеет работать с двумя способами представления информации, причем с образами он работает иначе и эффективнее чем ЭВМ, но и умеет соотносить эти два способа и совершать (каким-то образом) переходы от одного представления к другому.

В этом контексте основная проблема и задача когнитивной компьютерной графики - создание таких моделей представления знаний, в которых можно было бы однообразно представлять как объекты, характерные для логического (символического, алгебраического) мышления, так и объекты, характерные для образного мышления.

Другие важнейшие задачи:

Появление когнитивной компьютерной графики - сигнал о переходе от эры экстенсивного развития естественного интеллекта к эре интенсивного развития, характеризующегося глубоко проникающей компьютеризацией, рождающей человеко-машинную технологию познания, важным моментом которой является непосредственное, целенаправленное, активирующее воздействие на подсознательные интуитивные механизмы образного мышления.
Приложения компьютерной графики

Как уже отмечалось, компьютерная графика стала основным средством взаимодействия человека с ЭВМ. Важнейшими сформировавшимися областями приложений являются:

В настоящее время появилось новое, очень интересное приложение компьютерной графики - виртуальная реальность.

Виртуальная реальность

Виртуальная реальность - новейшее направление приложений компьютерной графики, позволяющее имитировать окружающую действительность с новым уровнем взаимодействия человек-ЭВМ. Основа систем виртуальной реальности - высокопроизводительная графическая рабочая станция, обладающая достаточным быстродействием и изобразительными возможностями для формирования высокореалистичных цветных полутоновых изображений. Устройства отображения в различных системах могут быть самыми различными - от обычных мониторов высокого разрешения до экранов во всю стену, используемых в имитаторах боевых действий, или же стереоскопических систем отображения, в том числе и в виде специальных очков, вмонтированных в шлем, надеваемый на голову.

Одно из важнейших отличий систем виртуальной реальности от других систем отображения - наличие средств воздействия не только на зрение, но и на другие органы чувств. В первую очередь это системы стереозвука, имитирующие требуемое распределение и интенсивности источников звука в пространстве. Наиболее дорогие системы обеспечивают воздействие и на осязание за счет использования специальных шлемов, перчаток и костюмов, которые за счет встроенных в них устройств не только определяют положение головы, направление взгляда, положение рук, пальцев, тела, но и имитируют прикосновения, сопротивление или "податливость" ручек и т.д. Можно почувствовать прикосновение к объекту существующему лишь в памяти компьютера! Осталось сымитировать запахи.

Из-за большой сложности и дороговизны разработка систем виртуальной реальности во всем мире финансируется, в основном, по военным программам. Первые шаги в этом направлении были сделаны еще в 60-е годы при разработке компьютерных тренажеров для летчиков. Но в них обеспечивалось воздействие только на зрение. К таким системам, например, принадлежат системы "Аксай" и "Альбатрос", разработанные Институтом Автоматики и электрометрии. Известны также и т.н. полунатурные системы моделирования, имитирующие вибрации, тряску и эволюции самолета и работу бортового оборудования. Обучаемый при этом находится в кабине самолета, укрепленной на системе перемещающихся направляющих. Конечно, тренажеры очень дороги, так только один специальный шлем в тренажерах для военных летчиков стоит около 1 млн долларов.

Сейчас работы по виртуальной реальности на Западе рассматриваются как главное направление развития компьютерной отрасли в будущем, которое окажет важное влияние на конкурентоспособность стран. В целом пик развития этого направления ожидается в начале грядущего тысячелетия.
Вопросы для самоконтроля

  1. Перечислите основные направления использования компьютерной графики

  2. Перечислите наиболее популярные программы создания и редактирования графических изображений.

  3. Какими системами, как правило, пользуются инженеры и проектировщики для создания чертежей и пространственных моделей?

  4. Перечислите основные направления компьютерной графики, дайте характеристику каждому из них.

  5. Какие задачи выполняет направление анализа и обработки изображений.

  6. Что является предметом исследования анализа сцен?

  7. Что входит в понятие «компьютерная графика для научных абстракций»?

  8. Какие существуют области приложения компьютерной графики?

  9. Что такое виртуальная реальность?

  10. Что является основой систем виртуальной реальности?

2. Геометрическое моделирование и решаемые ими задачи
Во многих приложениях машинной графики возникает потребность в представлении трехмерных тел (вычислительный эксперимент, автоматизация проектирования, роботизация, вычислительная томография, тренажеры, видеографика и т.д.).

Можно выделить две основные задачи, связанные с представлением трехмерных тел, - построение модели уже существующего объекта и синтез модели заранее не существовавшего объекта.

При решении первой задачи в общем случае может потребоваться задание бесконечного количества координат точек. Чаще же всего объект с той или иной точностью аппроксимируют некоторым конечным набором элементов, например, поверхностей, тел и т.п.

При решении второй задачи, выполняемой чаще всего в интерактивном режиме, основное требование к средствам формирования и представления модели - удобство манипулирования.

Используются три основных типа 3D моделей:

Важно отметить, что 3D системы существенно ориентируются на область приложений так как многие характерные для них задачи, выполняемые программным путем, стоят очень дорого и сильно зависят от выбора возможных моделей. Типичными такими задачами, в частности, являются получение сечений и удаление невидимых частей изображения. Обычно имеется много вариантов реализации различных моделей в большей или меньшей степени эффективных в зависимости от различных областей приложений и решаемых задач. Поэтому в 3D системах стремятся использовать многообразие моделей и поддерживать средства перехода от одной модели к другой.

Другим важным обстоятельством является то, что для современных систем характерно стремление моделировать логику работы, принятую пользователем. Это требует наличия средств перехода от модели, удобной для пользователя, к модели удобной для визуализации (модели тел в виде граней).
Элементы моделей

При формировании 3D модели используются:

Из этих элементов с помощью различных операций формируется внутреннее представление модели.
Методы построения моделей

Используются два основных способа формирования геометрических элементов моделей - это построение по заданным отношениям (ограничениям) и построение с использованием преобразований.

Построение с использованием отношений

Построение с использованием отношений заключается в том, что задаются:

Например, построение прямой, проходящей через точку пересечения двух других прямых и касательную к окружности.

Используется два способа реализации построения по отношениям - общий и частный.

При общем способе реализации построение по заданным отношениям можно представить в виде двухшаговой процедуры:

Очевидное достоинство такого способа - простота расширения системы - для введения нового отношения достаточно просто написать соответствующие уравнения.

Основные проблемы такого способа заключаются в следующем:

В связи с отмеченными проблемами общий подход реализован только в наиболее современных системах и при достаточно высоком уровне разработчиков в области вычислительной математики.

Большинство же систем реализует частный подход, первым приходящий в голову и заключающийся в том, что для каждой триады, включающей строящийся элемент, тип отношения и иные элементы, затрагиваемые отношением, пишется отдельная подпрограмма (например построение прямой, касательной к окружности в заданной точке). Требуемое построение осуществляется выбором из меню и тем или иным вводом требуемых данных.

Преимущества такого подхода ясны - проще писать систему. Не менее очевидны и недостатки, когда пользователю требуется использовать сильно разветвленные меню и/или запоминать мало вразумительные сокращения или пиктограммы, так как обычно число требуемых вариантов построения исчисляется сотнями. Расширение системы, реализуемое добавлением новой подпрограммы, требует ее перепроектирования, по крайней мере в части обеспечения доступа пользователя к новым возможностям. В некотором смысле предельный пример этого подхода - система AutoCAD фирмы Autodesk. Авторы даже гордятся сложностью системы: "AutoCAD предоставляет эту крайне сложную технологию" (Предисловие к Справочному руководству AutoCAD версии 2004).

Понятно, что перспективы за общим подходом с разумным использованием частных решений. Вместе с тем устаревшие системы типа AutoCad скорее всего также будут продолжать использоваться в силу распространенности, сложившегося круга обученных пользователей и т.п.

Построение с использованием преобразований

Построение нового объекта с использованием преобразований заключается в следующем:

Построение кривых

Важное значение при формировании как 2D, так и 3D моделей имеет построение элементарных кривых. Кривые строятся, в основном, следующими способами:

В качестве последних обычно используются параметрические кубические кривые, так как это наименьшая степень при которой обеспечиваются:

Параметрическое представление кривых выбирается по целому ряду причин, в том числе потому, что зачастую объекты могут иметь вертикальные касательные. При этом аппроксимация кривой y = f(x) аналитическими функциями была бы невозможной. Кроме того кривые, которые надо представлять, могут быть неплоскими и незамкнутыми. Наконец, параметрическое представление обеспечивает независимость представления от выбора системы координат и соответствует процессу их отображения на устройствах: позиция естественным образом определяется как две функции времени x(t) и y(t).

В общем виде параметрические кубические кривые можно представить в форме:

x(t) =




A11   t3




+




A12   t2




+




A13   t




+




A14




y(t) =




A21   t3




+




A22   t2




+




A23   t




+




A24




z(t) =




A31   t3




+




A32   t2




+




A33   t




+




A34





(1)

где параметр t можно считать изменяющимся в диапазоне от 0 до 1, так как интересуют конечные отрезки.

Существует много методов описания параметрических кубических кривых. К наиболее применяемым относятся:

В форме Безье кривая в общем случае задается в виде полинома Бернштейна:


P(t) = яi = 0n Cmi   ti   (1-t)m-1   Pi



где Pi - значения координат в вершинах ломаной, используемой в качестве управляющей ломаной для кривой, t - параметр,


Cmi =

m!

i!  (m-i)!






При этом крайние точки управляющей ломаной и кривой совпадают, а наклоны первого и последнего звеньев ломаной совпадают с наклоном кривой в соответствующих точках.

Предложены различные быстрые схемы для вычисления кривой Безье.

В более общей форме B-сплайнов кривая в общем случае задается соотношением:


P(t) = i = 0n Pi   Nim(t)



где Pi - значения координат в вершинах ломаной, используемой в качестве управляющей ломаной для кривой, t - параметр, Nim - весовые функции, определяемые рекуррентным соотношением:


Ni,1 =









1,




если   xi       t       xi+1




0,




в   других  случаях















Ni,k(t) =

(t - xi) Ni,k-1(t)

xi+k-1 - xi

+

(xi+k - t) Ni+1,k-1(t)

xi+k - xi+1

.



Используются и многие другие методы, например, метод Эрмита, при котором задаются положения конечных точек кривой и значения первой производной в них.

Общее в упомянутых подходах состоит в том, что искомая кривая строится с использованием набора управляющих точек.

Построение поверхностей

Основные способы построения поверхностей:

Широко используется бикубические параметрические куски, с помощью которых сложная криволинейная поверхность аппроксимируется набором отдельных кусков с обеспечением непрерывности значения функции и первой (второй) производной при переходе от одного куска к другому. В общем случае представление бикубического параметрического куска имеет вид (приведена формула для x-координаты, для других координат формула аналогична):


x(s,t) =


A11   s3   t3




+




A12  s3   t2




+




A13   s3   t




+




A14  s3




+




A21   s2   t3




+




A22  s2   t2




+




A23   s2   t




+




A24  s2




+




A31   s   t3




+




A32  s   t2




+




A33   s   t




+




A34  s




+




A41   t3




+




A42  t2




+




A43   t




+




A44.

















Аналогично случаю с параметрическими кубическими кривыми, наиболее применимыми являются:

  1   2   3   4   5   6   7   8   9   ...   12


Учебный материал
© nashaucheba.ru
При копировании укажите ссылку.
обратиться к администрации