Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лекции по компьютерной графике

.pdf
Скачиваний:
60
Добавлен:
16.03.2015
Размер:
1.48 Mб
Скачать

МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

САМАРСКИЙ ГОСУДАРСТВЕННЫЙ АЭРОКОСМИЧЕСКИЙ УНИВЕРСИТЕТ ИМЕНИ АКАДЕМИКА С.П. КОРОЛЕВА

КОМПЬЮТЕРНАЯ ГРАФИКА

(курс лекций)

(версия от 16.07.2004) (версия от 21.07.2004)

Составитель:

доцент кафедры информационных систем и технологий, к.т.н. Климентьев К.Е.

САМАРА 2004

Климентьев К.Е. Компьютерная графика (курс лекций).

ТЕМА 1. ОСНОВНЫЕ ПОНЯТИЯ, ОПРЕДЕЛЕНИЯ И ПРИНЦИПЫ КГ

1.1. ОПРЕДЕЛЕНИЕ ПОНЯТИЯ КГ, ЦЕЛИ И ЗАДАЧИ КУРСА

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

Цель курса - обзор основных методов, применяемых в КГ.

Классификация задач КГ:

А. Изобразительная графика:

-построение графической модели объекта (в виде мат. модели);

-генерация изображения объекта (при помощи к/л устройства);

-преобразование модели и изображения.

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

-повышение качества изображения;

-оценка параметров объекта по изображению.

В. Перецептивная графика:

- распознавание изображений (текста, лиц и т.п.).

Г. Когнитивная графика:

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

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

а) Нумерация точек плоскости

б) расположение простых чисел

Рисунок 1. Иллюстрация спирали Улама.

1.2. КЛАССИФИКАЦИИ ИЗОБРАЖЕНИЙ

По способу представления:

-растровые (в виде множества точек, заданных координатами);

-векторные (в виде элементов геометрических объектов, заданных формулами).

По виду:

штриховые (состоящие из линий и точек);

полноцветные или полутоновые (содержащие плавные переходы между цветами);

2

Климентьев К.Е. Компьютерная графика (курс лекций).

cartoon-ы (в виде больших фрагментов, закрашенных без полутонов).

a) полутоновое б) штриховое в) cartoon

Рисунок 2. Разные виды изображений

1.3. ЗРИТЕЛЬНЫЙ АППАРАТ ЧЕЛОВЕКА

Рисунок 3. Разрез глаза

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

На сетчатке располагаются светочувствительные рецепторы:

-6.5 млн. колбочек для дневного (цветного) зрения;

-100 млн. палочек для ночного (черно-белого) зрения.

Колбочки: синие, зеленые

и красные, -

это

клетки светочувствительного

пигмента, на

которых при освещении светом с соответствующей длиной волны

возбуждается

электрический

потенциал. Пониженное

число зеленых и красных -

дальтонизм. Желтое пятно – место максимальной концентрации рецепторов. Слепое пятно - место отсутствия рецепторов, поэтому на изображении в мозгу всегда есть "провал", который "убирается" рефлекторными движениями глаза. Изображение на сетчатке - перевернутое, это "убирается" при распознавании изображения в мозгу.

3

Климентьев К.Е. Компьютерная графика (курс лекций).

ТЕМА 2. ТЕХНИЧЕСКИЕ СРЕДСТВА ФОРМИРОВАНИЯ ИЗОБАЖЕНИЙ

2.1. ПРИНЦИПЫ ГЕНЕРАЦИИ ЦВЕТА

Классификация средств генерации изображений:

- активные или самосветящиеся (электронно-лучевая трубка дисплея или телевизора); - пассивные или светоотражающие (бумага с изображением, ж/к дисплей и т.п).

Соответственно, используются две цветовые модели: для активных устройств и средств - RGB, и для пассивных - CMY.

2.1.1. МОДЕЛЬ RGB

Любой цвет может быть сгенерирован смешением трех цветов: RED, GREEN, BLUE. Пусть интенсивность изменяется на интервале 0..1. Примеры цветов:

R G B

-------------

1 0 0

- красный

0 1 0

- зеленый

0 0 1

- синий

0 0 0

- черный

1 1 1

- белый

1 1 0

- желтый (именно так!!!)

x y z - если x=y=z - оттенки серого.

Чтобы с учетом чувствительности глаза к разным цветам преобразовать RGB-изображение в “серое” (например, цветную фотографию в черно-белую), надо:

R=G=B= 0.3r + 0.59g + 0.11b .

2.1.2. МОДЕЛЬ CMY

Любой цвет может быть сгенерирован поглощением ("отнятием" от WHITE) трех цветов: CYAN, MAGENTA, YELLOW. Поэтому правило преобразования:

[R, G, B] = [1, 1, 1] - [C, M, Y]

Примеры цветов:

C M Y

-----

0 0 0 - белый

1 1 1 - черный

1 0 1 - зеленый

Эта схема принята в полиграфии. Но на практике C=M=Y=1 дает грязный цвет, поэтому добавляют чисто черный (blacK), и модель трансформируется в CMY(K).

4

Климентьев К.Е. Компьютерная графика (курс лекций).

2.2. ПРИНЦИПЫ ФОРМИРОВАНИЯ ИЗОБРАЖЕНИЙ

2.2.1. ЭЛЕКТРОННО-ЛУЧЕВЫЕ ТРУБКИ (ЭЛТ)

Источник пучка электронов - катод.

Пучок

проходит

через фокусирующую

систему, которая сжимает его в тонкий луч.

Луч проходит через отклоняющую систему,

которая изменяет его направление. Потом луч попадает

на экран,

покрытый светящимся

веществом (люминофором). В цветных ЭЛТ используются три пучка электронов, а экран покрыт мозаикой из трех разных люминофоров.

Рисунок 4. Электронно-лучевая трубка

Изображение рисуется последовательно, точка за точкой. Но глаз не замечает этого, если кадр успевает нарисоваться за время T < 1/24 сек. Современные мониторы ПЭВМ имеют частоту развертки 1/70 - 1/100 сек., это более комфортно для глаза.

Недостаток: излучения.

2.2.2. Ж/К ЭКРАНЫ

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

Рисунок 5. ЖК-экран

ЖК-экран состит из двух прозрачных пластин с тонкими длинными насечками, повернутыми на 90 градусов относительно друг друга. На сложенных вместе пластинах насечки образуют ряд изолированных емкостей, в которые наливаются жидкие кристаллы. На краях пластин к насечкам припаиваются электроды. За экраном располагаются лампы (это не обязательно, например, ж/к индикаторы наручных часов и калькуляторов работают в отраженном внешнем свете).

Достоинства: 1) высокая четкость изображения в видеорежиме, соответствующем количеству точек на экране; 2) отсутствие излучений. Недостатки: 1) низкое качество в других видеорежимах; 2) низкая яркость изображения; 3) малая скорость обновления изображений; 4) узкий угол, в котором видно изображение.

2.2.3. ПЛАЗМЕННЫЕ ЭКРАНЫ

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

5

Климентьев К.Е. Компьютерная графика (курс лекций).

Достоинства: как у ж/к экранов. Недостатки: 1) возможность применения только на больших плоскостях (в "плазменных панелях"); 2) невысокий ресурс, т.к. электроды на лампочках со временем "выгорают".

2.2.4. МАТРИЧНЫЕ ПРИНТЕРЫ

Принцип действия: оттискивание изображений на бумаге через ленту с красителем. "Штамп" символа формируется в электромагнитной головке из иголочек, которых бывает 9 или 24.

Рисунок 6. Матричная печать

Достоинства: 1) дешевизна расходных материалов; 2) формирование углублений на бумаге (важно при проверке подлинности изображения – цифр на чеке, подписи под документом и т.п.). Недостатки: 1) шум; 2) невысокая скорость печати: 3) невысокая разрешающая способность изображения.

2.2.5. ЛАЗЕРНЫЕ ПРИНТЕРЫ

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

Рисунок 7. "Лазерная" печать

Достоинство: 1) высокая разрешающая способность; 2) высокая скорость. Недостатки: 1) высокая стоимость расходных материалов; 2) нестойкость изображения (можно "стереть" в микроволновой печи).

Примечание: этот же принцип печати применяется в "ксероксах".

2.2.6. СТРУЙНЫЕ ПРИНТЕРЫ

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

6

Климентьев К.Е. Компьютерная графика (курс лекций).

Рисунок 8. Струйная печать

Достоинства: простота организации цветной печати. Недостатки: 1) специальные требования к чернилам и бумаге; 2) сложность схемы управления выбрасыванием чернил; 3) сложность в обслуживании.

2.2.7. УСТРОЙСТВА ТЕРМОПЕЧАТИ

Принцип действия: похож на принцип матричной печати, отличия: 1) иголочки нагреваются; 2) лента с красителем отсутствует, вместо нее используется специальная термочувствительная бумага.

Достоинства: как у матричных принтеров. Недостатки: 1) как у матричных принтеров; 2) нестойкость изображения (темнеет от времени, на свету, при нагревании).

2.2.8. ГРАФОПОСТРОИТЕЛИ (ПЛОТТЕРЫ)

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

Достоинство: дешевизна расходных материалов. Недостатки: 1) невысокая скорость; 2) невысокая разрешающая способность.

2.3. ВИДЕОПОДСИСТЕМА ПЭВМ

Видеоподсистема ПЭВМ состоит из двух устройств:

видеоконтроллер (видеоадаптер, видеокарта, видеоплата);

дисплей (ЭЛТ или Ж/К).

2.3.1. ГЕНЕРАЦИЯ ИЗОБРАЖЕНИЯ НА ЭЛТ-ДИСПЛЕЕ

Изображение формируется в результате построчного перемещения по люминофору световой точки (луча). Типичное количество строк в телевизоре = 625, на компьютерных дисплеях от 200 до 2048. При прорисовке кадра на прямой ход луча затрачивается 80-95% общего времени.

Рисунок 9. Перемещение луча по экрану

7

Климентьев К.Е. Компьютерная графика (курс лекций).

2.3.2. УСТРОЙСТВО ВИДЕОКОНТРОЛЛЕРА

Видеоконтроллер состоит из следующих функциональных блоков (см. рис. 10).

Рисунок 10. Функциональная схема видеоподсистемы ПЭВМ

Видеопамять. Это набор ячеек памяти, делящийся на три части:

1)основная видеопамять;

2)служебная видеопамять;

3)видео-BIOS.

В технических характеристиках видеокарты обычно указывается суммарный объем видеопамяти, например: 16 Мб.

В основной памяти формируется “образ” изображения. В общем случае (это зависит от видеорежима) основная память разделена на несколько страниц и несколько слоев (см. рис. 10).

Одна из страниц может быть назначена активной (текущей), любое изменение информации на ней сразу же отображается на экране. Нулевой слой видеопамяти является частью адресного пространства ПЭВМ в районе адресов A000h:0 – B000h:FFFFh (см. табл. 1).

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

ВидеоBIOS - защищенный от записи фрагмент памяти с адресами 0C000h:0 - E000h:FFFFh (см.табл. 1), который содержит процедуры для управления видеоконтроллером. Они программно доступны через прерывание 10h.

Рисунок 10. Общая структура основной видеопамяти

8

Климентьев К.Е. Компьютерная графика (курс лекций).

Таблица 1

Типичное распределение памяти ПЭВМ

С адреса

По адрес

Назначение

0:0

0:3FFh

Вектора прерываний

40h:0

40h:FFh

Временные переменные BIOS и видеоBIOS

50h:0h

???

Ядро DOS

???

9000h:FFFFh

Свободная память для программ

A000h:0

B000h:FFFFh

Основная видеопамять

C000h:0

E000h:FFFFh

ВидеоBIOS (прерывание 10h)

F000h:0

F000h:FFFFh

BIOS (диск – 13h, COM-порты – 14h, клава – 16h, и пр.)

10000h:0

10000h:FFFFh

HMA – high memory area

10000h:FFFFh

???

Расширенная память – для Windows

Схема декодирования конвертирует информацию об изображении в числа, пропорциональные управляющим напряжениям. ЦАП конвертирует числа в управляющие напряжения для ЭЛТ.

2.3.3. ТИПЫ ВИДЕОКОНТРОЛЛЕРОВ

Таблица 2

Наиболее распространенные видеоконтроллеры

Год создания

Модель

Предельные возможности

1981 г.

MDA

2-хцветные алфавитно-цифровые изображения

1982 г.

CGA

4-цветные графические изображения

1984 г.

EGA

16-цветные графические изображения

1987 г.

VGA

256-цветные графические изображения

1991 г.

SVGA

24- и 32-битные графические изображения

1996 г.

3D Voodoo

Видеопроцессор и поддержка алгоритмов 3D-графики

Старшие модели поддерживают режимы работы всех более младших моделей.

2.3.4. ОБЗОР ВИДЕРЕЖИМОВ

Видеорежим – стандартизованный набор установок видеоконтроллера, позволяющий формировать изображение с определенными характеристиками. Обычно описывается как X× Y×C, где X- максимальное количество знаков или точек по горизонтали; Y максимальное количество знаков или точек по вертикали; C – максимальное количество цветов.

2.3.4.1. ТЕКСТОВЫЕ ВИДЕОРЕЖИМЫ

Режимы 0 и 1. Алфавитно-цифровой 40х25х16.

Режим 2 и 3. Алфавитно-цифровой 80х25х16. Это стандартный режим для Ms-Dos.

Видеопамять имеет 1 слой и 8 страниц. По умолчанию активна страница 0, ее стартовый адрес B800h:0. Один знак на экране кодируется двумя соседними байтами:

четный (0, 2, 4…) байт содержит числовой код знака;

нечетный (1, 3, 5…) байт содержит описание цвета знака и цвета фона.

9

Климентьев К.Е. Компьютерная графика (курс лекций).

Формат байта атрибутов:

7

6

5

4

3

2

1

0

B3

B2

B1

B0

S3

S2

S1

S0

Биты S0-S3 кодируют один из 16 цветов знака (0 – черный, 1-синий,… 7-светло-серый, 8- темно-серый, 9-голубой, … 15-белый). Биты B0-B2 кодируют один из 8 цветов фона. Бит B3 либо является дополнительным битом цвета фона (тогда фон может выбираться не из 8, а из 16 цветов), либо кодирует признак мерцания знака (1-мерцает, 0-нет). Режим бита B3 переключается с цвета на мерцание функцией видеоBIOS с номером 1003h:

r.ax:=$1003;

r.bl:= 0 – цвет; 1-мигание. Intr($10, r);

На самом деле изображение знака аппаратно (при помощи знакогенератора) моделируется матрицей светящихся точек, на CGA: 8x8, на EGA 8x14, на VGA 8x16 или 9х16. ВидеоBIOS хранит внутри таблицы с описаниями формы всех знаков (без русских букв!). Эти таблицы могут быть перепрограммированы (см. далее).

2.3.4.2. ГРАФИЧЕСКИЕ ВИДЕОРЕЖИМЫ

Режим 4. Графический 320x200x4. Четверка цветов может выбираться (при помощи функции 0Bh видеоBIOS) из одного из двух предопределенных наборов: 1) черный, зеленый, красный, желтый; 2) черный, cyan, magentа, белый.

r.ah:=$0B; r.bh:=1;

r.bl:= номер цветового набора, 0 или 1 Intr($10, r);

Видеопамять имеет 1 слой и 1 страницу, разделенную на две части. Первая часть начинается по адресу 0B800h:0 и содержит описания четных (0, 2, 4…) строк, вторая – с адреса 0B800:2000h и содержит описания нечетных (1, 3, 5…) строк изображения. Цвет каждой точки кодируется двумя соседними битами (рис 12).

Рис. 12. Видеопамять в режиме 4

Формулы для расчета:

Nбайта = 50h*((y-1)/2)+(x/4) – для четных строк; Nбайта=Nбайта+2000h – для нечетных строк; Nбита= 7 – (x mod 4)*2.

10