Реферат: Основные понятия компьютерной графики. Open Library - открытая библиотека учебной информации Что такое графика на компьютере

💖 Нравится? Поделись с друзьями ссылкой

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

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

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

1. Представление изображения в компьютерной графике;

2. Подготовка изображения к визуализации;

3. Создание изображения;

4. Осуществление действий с изображением.

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

1940-1970гг. – время больших компьютеров (эра до персональных компьютеров). Графикой занимались только при выводе на принтер. В этот период заложены математические основы. Особенности: пользователь не имел доступа к монитору, графика развивалась на математическом уровне и выводилась в виде текста, напоминающего на большом расстоянии изображение. Графопостроители появились в конце 60-х годов и практически были не известны.

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

1986-1990гг. – появление технологии Multimedia (Мультимедиа). К графике добавились обработка звука и видеоизображения, общение пользователя с компьютером расширилось. Особенности: появление диалога пользователя с персональным компьютером; появление анимации и возможности выводить цветное изображение.

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

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

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

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

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

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

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

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

Лекция №2. Виды компьютерной графики. Графические редакторы.

1) Виды КГ.

2) Графические редакторы.

3) Основные понятия КГ.

1. Существует несколько разновидностей КГ:

Двумерная графика,

Трехмерная (3D) графика.

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

Векторную

Растровую,

Фрактальную.

Они отличаются принципами формирования изображения при отображении на экране монитора или при печати на бумаге.

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

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

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

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

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

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

Трёхмерная графика (3D) и анимация. Трёхмерная графика оперирует с объектами в трехмерном пространстве. Обычно результаты представляют собой плоскую картинку, проекцию. Трёхмерная компьютерная графика широко используется в кино, компьютерных играх.

В трехмерной компьютерной графике все объекты обычно представляются как набор поверхностей или частиц. Минимальную поверхность называют полигоном. В качестве полигона обычно выбирают треугольники. Всеми визуальными преобразованиями в 3D-графике управляют матрицы.

2. Графический редактор - программа, позволяющая создавать и редактировать изображения с помощью компьютера. Существует два вида графических редакторов: растровые и векторные. К растровым относятся Paint, Adobe Photoshop, Photostyler, GIMP и др.

Ряд растровых редакторов, например, Paint, ориентирован непосредственно на процесс рисования. В них акцент сделан на использование удобных инструментов рисования и на создание новых художественных инструментов и материалов.

Некоторый класс растровых графических редакторов предназначен не для создания изображений «с нуля», а для обработки готовых рисунков с целью улучшения их качества и реализации творческих идей. К таким программам, в частности, относятся Adobe Photoshop, Photostyler, GIMP и др.

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

К простейшим векторным графическим редакторам относятся Kompas, Auto Cad, Adobe Illustrator, CorelDraw и др.

Определение и основные виды компьютерной графики

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

Существует 3 основных вида КГ:

1) Растровая – вид КГ, в котором изучается работа растром (прямоугольная матрица одинаковых элементов, образующая изображение)

2) Векторная – вид КГ, в котором изучаются изображения созданные на основе элементарных геометрических объектов, таких как: точки, линии, сплайны и многоугольники.

3) Фрактальная – раздел КГ, в котором изучаются изображения построенные на основе фракталов (самоповторяющийся рисунок)

Основные области применения компьютерной графики

1) Графические интерфейсы

2) Визуализация данных

3) Компьютерные игры

4) Системы автоматизированного проектирования

5) Искусство – дизайн, кинематограф

Фрактальная графика

Фрактальная графика – раздел КГ, в котором изучаются изображения построенные на основе фракталов (самоповторяющийся рисунок)

Двухмерная и трёхмерная компьютерная графика

Двухмерная (2D - от англ. two dimensions - «два измерения») компьютерная графика классифицируется по типу представления графической информации, и следующими из него алгоритмами обработки изображений. Обычно компьютерную графику разделяют на векторную и растровую, хотя обособляют ещё и фрактальный тип представления изображений.

Трёхмерная графика (3D - от англ. three dimensions - «три измерения») оперирует с объектами в трёхмерном пространстве. Обычно результаты представляют собой плоскую картинку, проекцию. Трёхмерная компьютерная графика широко используется в кино, компьютерных играх.

Трехмерная графика бывает полигональной и воксельной. Воксельная графика, аналогична растровой. Объект состоит из набора трехмерных фигур, чаще всего кубов. А в полигональной компьютерной графике все объекты обычно представляются как набор поверхностей, минимальную поверхность называют полигоном. В качестве полигона обычно выбирают треугольники.

Любой полигон можно представить в виде набора из координат его вершин. Так, у треугольника будет 3 вершины. Координаты каждой вершины представляют собой вектор (x, y, z). Умножив вектор на соответствующую матрицу, мы получим новый вектор. Сделав такое преобразование со всеми вершинами полигона, получим новый полигон, а преобразовав все полигоны, получим новый объект, повёрнутый/сдвинутый/масштабированный относительно исходного.

5. Дополнительные виды компьютерной графики (пиксельная, ASCII, псевдографика)

Пи́ксельная гра́фика (от англ. pixel - сокращение от pix element) - форма цифрового изображения, созданного на компьютере с помощью растрового графического редактора, где изображение редактируется на уровне пикселей (точек), а разрешение изображения настолько мало, что отдельные пиксели чётко видны. На старых (или на неполнофункциональных) компьютерах, в играх для Game Boy, играх для старых игровых приставок и многих играх для мобильных телефонов в основном используется пиксельная графика, так как это единственный способ сделать чётким небольшое изображение при малом разрешении экранов, характерном для этих устройств.

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

6. Определение и основные понятия растровой графики

Элементы растра:

1) Для вывода 2D растровой графики на экран используется пиксель (picture element). Как правило пиксель имеет форму многоугольника, так как в такую фигуру проще вписать элемент вывода.

2) Если растр выводится на печатающее устройство, то используется термин точка (dot).

3) В 3D графике используется термин воксель (voxel) – объемный пиксель.

Разрешение растра…

Глубина цвета – диапазон цветовой гаммы, который используется для закрашивания растра.

Объем растра – произведение разрешения на глубину цвета.

Разрешение растрового изображения

Разрешение растра – количество элементов растра в самом растре.

Измерения разрешения:

1) Принятое измерение разрешение экрана выводимое на монитор (320х240px)

2) Плотность пикселей – ppi – pixel per inch

3) Реальное количество пикселей Mpx, Gxp

4) Плотность вывода точек на печать – DPI – dot’s per inch

Разрешение цифрового видео, развёртка и соотношение сторон кадра

Цифровое видео – вид растровой графики, в котором используется растровое изображение, состоящее из нескольких кадров. Основной характеристикой цифрового видео является разрешение. DVD – 576i, 480i; PAL – 720x576; NTSC – 720x480. «i» говорит о том, что вывод строк при воспроизведении происходит через одну. Каждый кадр содержит либо четные, либо нечетные строки. Это называется черезстрочная развертка кадра. «р» - прогрессивная развертка кадров, при ней происходит вывод каждой строки в кадре.

Представление цветов в компьютерной графике, цветовая модель

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

Аддитивные и субтрактивные цветовые модели

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

Смешивая три основных цвета: красный, зелёный и синий - в определенном соотношении, можно воспроизвести большинство воспринимаемых человеком цветов.

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

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

Цветовая модель RGB

Цветовая модель соответствует физической модели восприятия цвета человеком(красном, заленом и синем).

Человеческий глаз наиболее восприимчив к зеленому цвету, затем к красному, и в последнюю очередь к синему.

Для записи цвета используется, как правило, значение до 8 бит в десятиричной или шестнадцатиричной форме.

Числовое представление RGB

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

(0,0,0) #000000 – черный

(255,255,255) #FFFFFF – белый

В RGB отводится по 2 бита на каждый из цветов(8бит/ RGB=2бита), при этом цвета делятся в соотношении красный:зеленый:синий = 3:3:2

В SVGA – Super-VGA отводится по 8 бит на каждый цвет, так как на цветовую модель отводится 24 бита.

8 бит = 256 цветов

24 бита = 16 777 216 цветов = True Color

16 бит = 65 536 цветов = Hight Color

Человек в среднем воспринимает от 7 до 8 миллионов оттенков.

RGBA –четырехканальная цветовая модель, в котором четвертый канал – это a канал и служит для определения прозрачности.

Компрессия цифрового видео

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

Если же видео вводится в компьютер с цифровой камеры, то такую операцию принято называть захватом (capture). Впрочем, оцифровку аналоговых записей также часто называют термином «захват». В процессе захвата цифровой сигнал может быть преобразован в другой формат.

Одна секунда «захваченной» видеозаписи без звука занимает свыше 30 Мбайт дискового пространства. Это означает, что двухчасовой фильм займет свыше 100 Гбайт, а на диске DVD емкостью 4,7 Гбайт поместится всего 156 секунд видео. Кроме того, для воспроизведения такого фильма необходимо обеспечить скорость передачи данных свыше 200 Мбит/сек, что является весьма сложной задачей для современной аппаратуры. Поэтому для уменьшения объема цифровых данных видеосигнал при захвате перед записью на жесткий диск подвергается сжатию (компрессии). При этом используется преимущественно компрессия по алгоритмам MPEG.

Стандарты MPEG разработаны Экспертной группой кинематографии (Moving Picture Experts Group - MPEG). MPEG - это стандарт сжатия звука и видео в более удобный для хранения, загрузки или пересылки, например через Интернет, формат.
MPEG состоит из трех частей: Audio, Video, System (объединение и синхронизация двух других). Существуют разные стандарты: MPEG-1, MPEG-2, MPEG-3, MPEG-4, MPEG-7.
Компрессия MPEG-1 используется в основном на дисках VideoCD HXVCD. Более совершенный стандарт - MPEG-2, обеспечивающий значительно лучшее качество, стал не только нормой европейского цифрового телевещания, но и был принят как стандарт сжатия для записи изображения на DVD. Этот стандарт используется также для записи дисков Super VideoCD, CVD, XSVCD и некоторых других. Для записи видеодисков формата DivX используется компрессия MPEG-4.

Алгоритм де Кастельжопа

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

Достоинством алгоритма является его более высокая вычислительная устойчивость по сравнению с прямым методом.

Линейные кривые

Параметр t в функции, описывающей линейный случай кривой Безье, определяет, где именно на расстоянии от P0 до P1 находится B(t). Например, при t = 0,25 значение функции B(t) соответствует четверти расстояния между точками P0 и P1. Параметр t изменяется от 0 до 1, а B(t) описывает отрезок прямой между точкамиP0 и P1.

Квадратичные кривые

Для построения квадратичных кривых Безье требуется выделение двух промежуточных точек Q0 и Q1 из условия, чтобы параметр t изменялся от 0 до 1:

Кривые высших степеней

Для построения кривых высших порядков соответственно требуется и больше промежуточных точек. Для кубической кривой это промежуточные точки Q0, Q1 и Q2, описывающие линейные кривые, а также точки R0 и R1, которые описывают квадратичные кривые: более простое уравнение p0q0/p0q1=q1p1/p1p2=bq0/q1q0

33. Аффинное преобразование и его матричное представление

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

Преобразование называется взаимно однозначным, если

Разные точки переходят в разные;

В каждую точку переходит какая-то точка.

Например, сжатие 0 разжатие, поворот, перенос и тд

Матрица 3x3, последний столбец которой равен (0 0 1)T, задает аффинное преобразование плоскости:

По одному из свойств, аффинное преобразование можно записать в виде:

f(x) = x * R + t,

где R – обратимая матрица 2x2, а t – произвольный вектор.

34. Виды аффинных преобразований

Сжатие, растяжение, поворот, перенос, движение, наклон, отображение

Кривые поверхности

Обычно под кривыми поверхностями понимается полигональная модель.

Полигональная модель – кривая поверхность построенная с помощью графических примитивов, обычно треугольник или четырёх угнольник.

Примитивы – геометрические объекты, объёмные поля, которые составляют векторный рисунок:

· Многоугольник;

· Тела вращения.

Уравнение рендеринга

· - длина волны света.

· - время.

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

· - излучённый свет.

· - интеграл по полусфере входящих направлений.

· - двунаправленная функция распределения отражения, количество излучения отражённого от к в точке , во время , на длине волны

· - длина волны по входящему направление к точке из направления во время .

· - поглощение входящего излучения по заданному углу.

Графический конвейер

Графический конвейер (graphic pipeline) - это некоторое программно-аппаратное средство, которое преобразует описание объектов в «мире» приложения в матрицу ячеек видеопамяти растрового дисплея. Его задача - создать иллюзию, о которой говорили выше.
В глобальных координатах приложение создает объекты, состоящие из трехмерных примитивов. В этом же пространстве располагаются источники освещения, а также определяются точка зрения и направление взгляда наблюдателя. Естественно, что наблюдателю видна только часть объектов: любое тело имеет как видимую (обращенную к наблюдателю), так и невидимую (обратную) сторону. Кроме того, тела могут полностью или частично перекрывать друг друга. Взаимное расположение объектов относительно друг друга и их видимость для зафиксированного наблюдателя обрабатываются на первой стадии графического конвейера, называемой трансформацией (transformation). На этой стадии выполняются вращение, перемещение и масштабирование объектов, а затем и преобразование из глобального пространства в пространство наблюдения (world-to-viewspace transform), а из него и преобразование в «окно» наблюдения (viewspace-to-window transform), включая и проецирование с учетом перспективы. Попутно с преобразованием из глобального пространства в пространство наблюдения (до него или после) происходит удаление невидимых поверхностей, что значительно сокращает объем информации, участвующей в дальнейшей обработке. На следующей стадии конвейера (lighting) определяется освещенность (и цвет) каждой точки проекции объектов, обусловленная установленными источниками освещения и свойствами поверхностей объектов. И наконец, на стадии растеризации (rasterization) формируется растровый образ в видеопамяти. На этой стадии на изображения поверхностей наносятся текстуры и выполняется интерполяция интенсивности цвета точек, улучшающая восприятие сформированного изображения. Весь процесс создания растрового изображения трехмерных объектов называется рендерингом (rendering).

Шейдеры, шейдерные языки

Ше́йдер (англ. Shader; схема затемнения, программа построения теней) - это программа для одной из ступеней графического конвейера, используемая втрёхмерной графике для определения окончательных параметров объекта или изображения. Она может включать в себя произвольной сложности описание поглощения и рассеяния света, наложения текстуры, отражение и преломление, затемнение, смещение поверхности и эффекты пост-обработки.

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

Чтобы понять, что такое шейдер, разберемся для начала, как видео карта рисует примитивы (треугольники, полигоны и др.) На вход поступают данные о каждой вершине примитива. Например, положение вершины в пространстве, нормаль и текстурные координаты. Эти данные называются вершинными атрибутами (vertex attributes). GPU на их основе вычисляет выходные значения: положение вершины в экранных координатах, цвет вершины, рассчитанный в зависимости от освещения и т.д. До выхода видео карт GeForce 3 и Radeon 8500 этот процесс был неуправляемым. Если вас, например, не устраивали те формулы, по которым считается освещение в OpenGL, и вы хотели применить свои, то ничего нельзя было поделать. Приходилось либо довольствоваться тем, что умеет GPU, либо выполнять расчеты для каждой вершины на процессоре, что намного медленнее. Решением этой проблемы стали вертексные программы (в Direct3D они называются вертексные шейдеры). Вертексная программа - это программа, написанная на специальном языке низкого уровня, которая выполняется на GPU и преобразует входные вертексные атрибуты в выходные, которые поступают на вход пиксельного шейдера. Важной особенностью вертексных и пиксельных программ является то, что все инструкции работают с векторами. Например, чтобы посчитать скалярное произведение, надо выполнить всего лишь одну инструкцию, а не 5 (2 сложения и 3 умножения), как на CPU. Благодаря этому можно выполнить массу операций небольшим числом инструкций. Например, умножение матрицы на вектор - всего 4 инструкции. А если инструкций мало, то скорость выполнения такой программы довольно высокая.
Значения, вычисленные в вертексном шейдере, интерполируются по треугольнику. На видео картах, не поддерживающих пиксельные шейдеры, для каждого пикселя определяется его цвет и цвет текстуры (или нескольких текстур) в данной точке. Потом эти цвета умножаются или складываются, в зависимости от параметров выполненной ранее функции glTexEnv(), и результат записывается в буфер кадра. Если же видео карта поддерживает пиксельные шейдеры, то все намного интереснее. Интерполированные по треугольнику значения поступают на вход некоторой программы, называемой пиксельным шейдером. Это программа, состоящая из ряда арифметических и других инструкций, рассчитывает цвет пикселя, который записывается в буфер кадра. По сравнения с вертексными программами, скорость выполнения пиксельных шейдеров намного выше. Можно почти моментально выполнять штук 10 векторных инструкций для каждого пикселя! На CPU такое сделать просто невозможно.
Пиксельные и вертексные шейдеры позволяют на аппаратном уровне создавать потрясающие эффекты: освещение на пиксельном уровне, bump mapping, отражение и преломление, волны на воде, скелетная анимация персонажей, тени и многое другое!

Шейдерные языки

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

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

Профессиональный рендеринг

Данные шейдерные языки ориентированы на достижение максимального качества визуализации. Описание свойств материалов сделано на максимально абстрактном уровне, для работы не требуется особых навыков программирования или знания аппаратной части. Такие шейдеры обычно создаются художниками с целью обеспечить «правильный вид», подобно наложению текстуры, источников света и другим аспектам их работы.

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

Шейдерный язык RenderMan

Шейдерный язык RenderMan, описанный в Спецификации интерфейса RenderMan, является фактическим стандартом для профессионального рендеринга. APIRenderMan, разработанный Робом Куком, используется во всех работах студии Pixar. Он также является первым из реализованных шейдерных языков.

Шейдерный язык Gelato

NVIDIA Gelato представляет собой оригинальную гибридную систему рендеринга изображений и анимации трехмерных сцен и объектов, использующую для расчетов центральные процессоры и аппаратные возможности профессиональных видеокарт серии Quadro FX.

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

Open Shading Language

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

OSL - был разработан Sony Pictures Imageworks для использования в своем внутреннем рендере и используется для анимационных фильмов и визуальных эффектов.

OSL используется в пакете для создания трёхмерной компьютерной графики Blender.

Шейдерный язык Cg

Разработан nVidia совместно с Microsoft (такой же по сути язык от Microsoft называется HLSL, включён в DirectX 9). Cg расшифровывается как C for Graphics. Язык действительно очень похож на C, он использует схожие типы (int, float, а также специальный 16-битный тип с плавающей запятой - half). Поддерживаются функции и структуры. Язык обладает своеобразными оптимизациями в виде упакованных массивов (packed arrays) - объявления типа «float a» и «float4 a» в нём соответствуют разным типам. Второе объявление и есть упакованный массив, операции с упакованным массивом выполняются быстрее, чем с обычными. Несмотря на то, что язык разработан nVidia, он без проблем работает и с видеокартами ATI. Однако следует учесть, что все шейдерные программы обладают своими особенностями, о которых можно узнать из специализированных источников.

Шейдерные языки DirectX

Типы шейдеров

В настоящее время шейдеры делятся на три типа: вершинные, геометрические и фрагментные (пиксельные).
Вершинные шейдеры (Vertex Shader)
Вершинный шейдер оперирует данными, сопоставленными с вершинами многогранников. К таким данным, в частности, относятся координаты вершины в пространстве, текстурные координаты, тангенс-вектор, вектор бинормали, вектор нормали. Вершинный шейдер может быть использован для видового и перспективного преобразования вершин, генерации текстурных координат, расчета освещения и т. д.
Геометрические шейдеры (Geometry Shader)
Геометрический шейдер, в отличие от вершинного, способен обработать не только одну вершину, но и целый примитив. Это может быть отрезок (две вершины) и треугольник (три вершины), а при наличии информации о смежных вершинах (adjacency) может быть обработано до шести вершин для треугольного примитива. Кроме того, геометрический шейдер способен генерировать примитивы «на лету», не задействуя при этом центральный процессор. Впервые начал использоваться на видеокартах Nvidia серии 8.
Пиксельные шейдеры (Pixel Shader)
Фрагментный шейдер работает с фрагментами изображения. Под фрагментом изображения в данном случае понимается пиксель, которому поставлен в соответствие некоторый набор атрибутов, таких как цвет, глубина, текстурные координаты. Фрагментный шейдер используется на последней стадии графического конвейера для формирования фрагмента изображения.

57. Определение, основные понятия и методы текстурирования

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

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

Традиционно термином texture mapping или тектурирование в трехмерном моделировании называют процесс наложения двухмерной текстуры на трехмерный объект (текстура как бы натягивается на объект) для придания ему соответствующего внешнего вида. Таким образом, например, производится "раскрашивание" моделей монстров и игроков в трехмерных играх типа Quake и др.

Методы текстурирования

Bump mapping(рельефное текстурирование) - простой способ создания эффекта рельефной поверхности с детализацией большей, чем позволяет полигональная поверхность. Эффект главным образом достигается за счет освещения поверхности источником света и черно-белой (одноканальной) карты высот, путем виртуального смещения пикселя (как при методе Displace mapping) как если бы там был вертекс(только без физического и визуального сдвига), за счет чего таким же образом изменяется ориентация нормалей использующихся для расчета освещенности пикселя (затенение по Фонгу), в результате получаются по-разному освещенные и затененные участки. Как правило Bump mapping позволяет создать не очень сложные бугристые поверхности, плоские выступы или впадины, на этом его использование заканчивается. Для более детальных эффектов в последствии был придуман Normal mapping.

MIP-текстурирование (англ. MIP mapping) - метод текстурирования, использующий несколько копий одной текстуры с разной детализацией. Название происходит от лат. multum in parvo - «много в малом».

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

Принцип действия

Создаётся так называемая MIP-пирамида - последовательность текстур с разрешением от максимального до 1×1. Например: 1×1, 2×2, 4×4, 8×8, 16×16, 32×32, 64×64, 128×128, 256×256, 512×512 и 1024×1024. Каждая из этих текстур называется MIP-уровнем (англ. MIP level) или уровнем детализации - LOD (англ. level of detail).

На всех этих текстурах находится одно и то же изображение. Таким образом, MIP-текстурирование увеличивает расход видеопамяти на треть:

.

При наложении текстур вычисляется расстояние до объекта и номер текстуры находится по формуле:

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

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

Недостатки

Расход видеопамяти увеличивается на треть. Впрочем, типичные объемы видеопамяти в начале 2010ых составляют 1-3 ГБ. К тому же, если объект далеко, его детальную текстуру можно выгрузить в оперативную память.

MIP-текстурирование не решает проблему текстур, находящихся под острым углом к зрителю (например, дорога в автосимуляторе). У таких текстур разрешение по одной оси сильно отличается от разрешения по другой - и, например, по оси X изображение явно размыто, в то время как по оси Y видны мерцания, свойственные завышенному разрешению текстуры. Есть сразу несколько способов решения этого (начиная с наименее качественного):

Установить в видеодрайвере наиболее комфортное значение mip bias - числа́, которое отвечает за выбор номера текстуры в пирамиде. Если оно отрицательное, видеоплата берёт более детальные текстуры, если положительное - менее детальные.

Многие игры сами устанавливают подходящий mip bias для разных типов объектов. Например, в Live for Speed mip bias устанавливается пользователем отдельно для автомобилей, препятствий и дороги.

Воспользоваться анизотропной фильтрацией - методом текстурирования, который направлен именно на решение этой проблемы.

Наконец, видна чёткая граница между MIP-уровнями. Это решается трилинейной фильтрацией.

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

Лучше всего процесс процедурного текстурирования представить в виде блоков (операторов). Существует три типа блоков:

генераторы

вспомогательные

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

Для создания «природных» текстур, таких как дерево, гранит, металл, камни, лава в качестве фильтров используютсяфрактальный шум (англ. fractal noise) и ячеистые текстуры (англ. cellular textures).

Свойства процедурных текстур:

Обратимость. В процедурной текстуре сохраняется вся история ее создания.

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

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

Масштабируемость до любого размера (зависит от процедурного движка/библиотеки).

Одновременно с итоговой текстурой очень легко получаются alpha-, bump-, reflect-карты.

Детальное текстурирование (англ. Detail mapping) - программная техника в трёхмерной компьютерной графике, которая позволяет улучшить детализацию текстур на близком расстоянии от камеры. Конечный результат создаёт иллюзию использования текстуры огромного разрешения.

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

Базовая текстура оставляется в разумном среднем разрешении

Создаётся детальная текстура с крупномасштабным изображением мелких деталей (отдельные травинки, галька, структура древесины и т. д.)

Полученная текстура обесцвечивается

Фильтром верхних частот удаляется всё, кроме самых мелких деталей

Фильтром коррекции гистограммы устанавливается средняя яркость на уровне 0.5

Обе текстуры смешиваются в пиксельном шейдере

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

Для снижения заметности повторений детальной текстуры масштаб выбирается нецелочисленным

Цвет базовой текстуры умножается на цвет детальной, умноженный на 2 (для сохранения исходной яркости)

Рельефное текстурирование

Рельефное текстурирование - метод в компьютерной графике для придания более реалистичного и насыщенного вида поверхности объектов.

Bump mapping - простой способ создания эффекта рельефной поверхности с детализацией большей, чем позволяет полигональная поверхность. Эффект главным образом достигается за счет освещения поверхности источником света и черно-белой (одноканальной) карты высот, путем виртуального смещения пикселя (как при методе Displace mapping) как если бы там был вертекс(только без физического и визуального сдвига), за счет чего таким же образом изменяется ориентация нормалей использующихся для расчета освещенности пикселя (затенение по Фонгу), в результате получаются по-разному освещенные и затененные участки. Как правило Bump mapping позволяет создать не очень сложные бугристые поверхности, плоские выступы или впадины, на этом его использование заканчивается. Для более детальных эффектов в последствии был придуман Normal mapping.

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

Карты нормалей обычно бывают двух типов:

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

tangent-space - применяется для возможности деформировать объекты, например персонажей.

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

Parallax mapping

Данная технология также использует карты нормалей, но, в отличие от normal mapping, она реализует не только освещение с учётом рельефа, но и сдвигает координаты диффузной текстуры. Этим достигается наиболее полный эффект рельефа, особенно при взгляде на поверхность под углом.

Введение

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

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

Объект - история создания спецэффектов и широкое их использование в современном мире методом создания новейших компьютерных технологий.

Предмет - компьютерная графика и один из ее видов - спецэффект.

1. Проанализировать литературы про спецэффекты и компьютерную графику.

2. Исследовать компьютерную графику на протяжении всего развития.

3. Рассмотреть развитие спецэффектов от начала их формирования и до наших дней.

4. Показать на практике использование компьютерной графики и спецэффектов.

Гипотеза: Существует ли граница в создании спецэффектов и развитии компьютерной графики?

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

Понятие и виды компьютерной графики

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

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

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

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

В зависимости от способа формирования изображений компьютерную графику подразделяют на несколько видов:

Растровая графика

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

количество пикселей -- размер. Может указываться отдельно количество пикселей по ширине и высоте или же (редко) общее количество пикселей (часто измеряется в мегапикселях); количество используемых цветов или глубина цвета;

цветовое пространство (цветовая модель). Например - RBG;

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

Наименьшим элементом является точка.

Векторная графика

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

линия.

Преимущества векторного способа описания графики над растровой графикой:

Размер, занимаемой описательной частью, не зависит от реальной величины объекта, что позволяет, используя минимальное количество информации, описать сколько угодно большой объект файлом минимального размера.

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

Параметры объектов хранятся и могут быть легко изменены.

Также это означает что перемещение, масштабирование, вращение, заполнение и т. д. не ухудшает качества рисунка.

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

Недостатки векторной графики

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

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

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

Трехмерная графика

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

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

Наименьшим элементом является плоскость.

Фрактальная графика

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

Увеличение масштаба не ведёт к упрощению структуры, на всех шкалах мы увидим одинаково сложную картину.

Является самоподобной или приближённо самоподобной.

Обладает дробной размерностью.

Наименьшим элементом является треугольник.

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

Фракталы, особенно на плоскости, популярны благодаря сочетанию красоты с простотой построения при помощи компьютера.

Первые примеры фрактальной графики с необычными свойствами появились в XIX веке. Термин «фрактал» был введён Бенуа Мандельбротом в 1975 году и получил широкую популярность с выходом в 1977 году его книги «Фрактальная геометрия природы».

Символьная графика устарела и на сегодняшний день практически не используется.

Введение

1. Пиксели, разрешение, размер изображения

2. Типы изображений

3. Форматы файлов

4. Цвет и его модели

Заключение

Список литературы


Введение

Компьютерная графика имеет дело с изображениями. Ее основное назначение визуализация построение изображения графического объекта по его описанию (прикладной модели). Другими видами обработки графической информации являются преобразование изображений и распознавание изображений.

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

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

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

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

Цель реферата – рассмотреть основные понятия компьютерной графики.


1. Пиксели, разрешение, размер изображения

Изображение на экране состоит из маленьких ячеек. Каждая из них может иметь определенный цвет. Такая ячейка получила название пикселя (pixel). Совокупность пикселов составляет матрицу и образует изображение на экране. В зависимости от модели монитора параметры матрицы в пикселях могут изменяться: 640х480, 800х600, 1024х768, 1600х1200...

Величина матрицы не влияет на физический размер экрана и не зависит от него. Чем больше матрица на одном и том же экране, тем размер ячейки меньше, а, стало быть, качество изображения лучше.

Следует четко различать:

· разрешение экрана

· разрешение печатающего устройства

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

Разрешение экрана - это свойство компьютерной системы (зависит от монитора и видеокарты) и операционной системы (зависит от настроек Windows). Разрешение экрана измеряется в пикселях и определяет размер изображения, которое может поместиться на экране целиком.

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

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

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

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

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


2. Типы изображений

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

Черно-белые штриховые изображения

На каждый пиксел такого изображения отводится один бит информации. Одним битом кодируются два состояния, в данном случае это два цвета: черный и белый. Этот тип изображения называется Bitmap (Битовый). Глубина цвета такого изображения - один бит.

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

Полутоновые изображения

Пиксель полутонового изображения (grayscale) кодируется 8 битами (8 бит составляют 1 байт). Глубина цвета изображения данного типа составляет, таким образом, восемь бит, а каждый его пиксель может принимать 256 различных значений. Значения, принимаемые пикселями, называются серой шкалой. Серая шкала имеет 256 градаций серого цвета, каждая из которых характеризуется значением яркости в диапазоне от 0 (черный) до 255 (белый). Этого вполне достаточно, чтобы правильно отобразить черно-белое полутоновое изображение, например, черно-белую фотографию.

В Photoshop 4.0 появилась поддержка изображений с 16-битными каналами, позволяющими увеличить количество передаваемых цветов или оттенков серого. Так, в режиме с 16-битными каналами полутоновое изображение может содержать не 256, а 65 536 оттенков серого. С другой стороны, размер файла с 16-битными каналами в два раза больше, чем с традиционными, 8-битными. Размер файла и место в оперативной памяти - дорогая плата за глубину цвета.

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

Индексированные цвета

Первые цветные мониторы работали с ограниченной цветовой гаммой: сначала 16, затем 256 цветов. Они кодировались 4 битами (16 цветов) или 8 битами (256 цветов). Такие цвета называются индексированными (indexed color). Разумеется, 16 (и даже 256) цветами невозможно убедительно передать цветовую гамму фотоизображений.

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

Индексированные цвета кодируются обычно четырьмя или восемью битами в виде так называемых цветовых таблиц. Глубина индексированного цвета может составлять 2-8 бит. Например, графическая среда Windows 95 поддерживает цветовую таблицу из восьми бит на пиксель, она называется системной палитрой (system palette). В этой таблице цвета уже предопределены, как мелки в коробке пастели, и вам остается только использовать то, что есть в коробке, то есть в таблице.

Полноцветные изображения

К полноцветным (true color) относятся типы изображений с глубиной цвета не менее 24 бит, то есть каждый пиксель такого изображения кодируется как минимум 24 битами, что дает возможность отобразить не менее 16,7 миллиона оттенков. Поэтому иногда полноцветные типы изображение называют True Color (истинный цвет).

Битовый объем каждого пикселя распределяется по цветовым составляющим: каждый цвет кодируется 8 битами. Цветовые составляющие в программе организуются в виде каналов, совмещенное отображение каналов и определяет цвет изображения.

Полноцветные изображения являются многоканальными. К изображениям этого класса относятся RGB, CMYK, L*a*b и другие. Они отличаются по глубине цвета и по способу математического описания цветов, то есть по цветовой модели.


3. Форматы файлов

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

Без формата информации не существует. Ее нельзя сохранить и передать. Соответствие форматов - это как разговор на одном языке. Форматов файлов очень много. Для каждого вида компьютерной деятельности существуют стандартные форматы, то есть самые удобные, или часто применяемые. Для текстов такими форматами является DOC, ТХТ, для полиграфической продукции - TIFF, Р1СТ, для графики в Интернет - GIF, JPEC и т. д.

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


4. Цвет и его модели

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

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

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

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

Изучив материал данной главы, студент должен:

знать

  • историю развития программных средств для работы с графикой;
  • области применения компьютерной графики;
  • классификацию компьютерной графики, типы представления графической информации;
  • основные виды описания графики, их достоинства и недостатки;

уметь

  • разбираться в графических форматах;
  • ориентироваться в среде различной цифровой графики и оптимально ее использовать;
  • применять полученные знания для освоения графических программ;

владеть

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

Понятие, история развития, области применения и виды компьютерной графики

Понятие и история компьютерной графики

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

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

В 1961 г. программист С. Рассел возглавил проект по созданию первой компьютерной игры с графикой. Игра Spacewar была создана на машине PDP-1.

В 1963 г. американский ученый Айвен Сазерленд создал программноаппаратный комплекс Sketchpad , который позволял рисовать точки, линии и окружности на трубке цифровым пером (световое перо (англ. light реп ) – один из инструментов ввода графических данных в компьютер, разновидность манипуляторов). Поддерживались базовые действия с примитивами – перемещение, копирование и др. По сути, это был первый векторный редактор , реализованный на компьютере. Также программу можно назвать первым графическим интерфейсом, причем она являлась таковой еще до появления самого термина.

В середине 1960-х гг. появились разработки в промышленных приложениях компьютерной графики. Так, под руководством Т. Мофетта и Н. Тейлора фирма Itek разработала цифровую электронную чертежную машину. В 1964 г. General Motors представила систему автоматизированного проектирования DAC-1, разработанную совместно с IBM.

В 1964 г. группой под руководством II. II. Константинова была создана компьютерная математическая модель движения кошки. Машина БЭСМ-4, выполняя написанную программу решения дифференциальных уравнений, рисовала мультфильм "Кошечка", который для своего времени являлся прорывом. Для визуализации использовался алфавитно-цифровой принтер.

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

Области применения цифровой графики

Научная графика – первые компьютеры использовались лишь для решения научных и производственных задач. Чтобы лучше представить полученные результаты, производилась их графическая обработка, строились графики, диаграммы, чертежи рассчитанных конструкций. Первые графики на машине получали в режиме символьной печати. Затем появились специальные устройства – графопостроители (плоттеры) для вычерчивания чертежей и графиков чернильным пером на бумаге. Современная научная компьютерная графика дает возможность проводить вычислительные эксперименты с наглядным представлением их результатов.

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

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

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

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

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

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

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

Виды компьютерной графики

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

Двумерная графика (2D – от англ. two dimensions два измерения) – это изображение на плоскости, имеющее длину и ширину. Двумерная компьютерная графика классифицируется по типу представления графической информации и следующими из него алгоритмами обработки изображений. Обычно компьютерную графику разделяют на векторную и растровую, хотя обособляют еще и фрактальный тип представления изображений.

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

  • Примитив (графический примитив) – простейшая геометрическая фигура.
  • Векторный редактор – программа для создания и редактирования векторных изображений.
  • Фрактал (от лат. fractus – состоящий из фрагментов) – структура, формирующаяся из нерегулярных отдельных элементов, которые подобны целому. Описать такой объект можно всего лишь несколькими математическими уравнениями.
Рассказать друзьям