рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

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

Конспект лекций по дисциплине Компьютерная графика - Конспект Лекций, раздел Философия, Санкт-Петербургский Государственный Электротехнический Университет &...

Санкт-Петербургский Государственный Электротехнический Университет

 

Кафедра Вычислительной Техники

 

 

Конспект лекций по дисциплине «Компьютерная графика»

 

Лектор Шах Владимир Владимирович

 

 

Санкт-Петебург

2001 г.

Введение.

 

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

Основная задача распознавания образов состоит в преобразовании уже имеющегося изображения на формально понятный язык символов. Распознавание образов или система технического зрения (COMPUTER VISION) – совокупность методов, позволяющих получить описание изображения, поданного на вход, либо отнести заданное изображение к некоторому классу (так поступают, например, при сортировке почты). Одной из задач COMPUTER VISION является так называемая склетизация объектов, при которой восстанавливается некая основа объекта, его «скелет».

Обработка изображений (IMAGE PROCESSING) рассматривает задачи в которых и входные и выходные данные являются изображениями. Например, передача изображения с устранением шумов и сжатием данных, переход от одного вида изображения к другому (от цветного к черно белому) и т.д.

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

 

Рис. 1.1

 

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


 

Алгоритмы растровой графики.

Цифровое изображение – набор точек (пикселей) изображения; каждая точка изображения характеризуется координатами x и y и яркостью V(x,y), это… Рис. 2.1.1

Общие требования к изображению отрезка.

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

Рис. 2.4.1.

Изображаемый отрезок проводится из точки (x1, y1) в точку (x2, y2). Пусть первая точка находится ближе к началу координат, тогда перенесем обе точки, T(x1, y1) так, чтобы начальная точка отрезка оказалась в начале координат, тогда конечная окажется в (D x, D y), где D x= x2- x1 , D y= x2- x1. Уравнение прямой теперь имеет вид y=x× D y/Dx. Из рисунка следует, что

поэтому

помножим на D x:

так как D x>0, величину D x(s-t) можно использовать в качестве критерия для выбора пиксела. Обозначим эту величину di :

так как r = xi-1, q = yi-1, получаем:

Известно, что xI - xi-1=1.

Если di >= 0, то выбираем Ti, тогда

Если di <0, то выбираем Si, тогда

Таким образом, мы получили итеративную формулу для вычисления критерия di.
Начальное значение d1=2D y-D x.


Можно построить блок схему алгоритма:

Рис. 2.4.2

 

 

Линейная интерполяция по яркости при построении отрезка по алгоритму Брезенхема получается параметрическим способом, т.е. , где N – длина отрезка в пикселях.


 

2.5. Алгоритмы построения окружности.

 

Рассмотрим окружность с центром в начале координат, для которой x2+y2=R2, или в параметрической форме:

  1. x=R× cos(a);
  2. y=R× sin(a).

То есть легко написать программу рисования окружности:

void Circle (int x, int y, int R, int color)
{

int a;
int x1;
int x2;
int y1;
int y2;
x2=x+R;
y2=y;
for ( int a=1; a<=360; a++)
{

x1=x2; y1=y2;
x2=round(R*cos(a))+x;
y2=round(R*sin(a))+x;
Line (x1, y1, x2, y2, color);

}

}


рис. 2.5.1.

Если воспользоваться симметрией окружности, то можно построить более эффективный алгоритм. Если точка (x, y) лежит на окружности, то легко вычислить семь точек, принадлежащих окружности, симметричных этой. То есть, имея функцию вычисления значения y по x=0..R/SQRT(2) для построения дуги от 00 до 450. Построим процедуру, которая будет по одной координате ставить восемь точек, симметричных центру окружности.


 

void Circle_Pixel(int x0, int y0, int x, int y, int color);
{

putpixel(x0 + x, y0 + y, color);
putpixel(x0 + y, y0 + x, color);
putpixel(x0 + y, y0 - x, color);
putpixel(x0 + x, y0 - y, color);
putpixel(x0 - x, y0 - y, color);
putpixel(x0 - y, y0 - x, color);
putpixel(x0 - y, y0 + x, color);
putpixel(x0 - x, y0 + y, color);

}

Таким образом можно написать программу рисование окружности по точкам:

void Circle (int x0, int y0, int R, int color)
{

for ( int x=0; x<=R/sqrt(2); x++)
{

int y = (int)(sqrt(sqr(R)-sqr(x)));
Circle_Pixel (x0, y0, x, y, color);

}

}

 

2.6. Алгоритм Брезенхема генерации окружности

 

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


рис. 2.6.1

Будем рассматривать сегмент окружности, соответствующий x=x0.. x0+R/sqrt(2). На каждом шаге выбираем точку, ближайшую к реальной окружности. В качестве ошибки возьмем величину D(Pi)=(x2i+ y2i) – R2.

Рассмотрим рис. 2.6.1 , на котором показаны различные возможные способы прохождения истинной окружности через сетку пискселов. Пусть пиксел Pi-1 уже найден как ближайший к реальной изображенной окружности, и теперь требуется определить, какой из пикселов должен быть установлен следующим: Ti или Si. Для этого определим точку, которой соответствует минимальная ошибка:
D(Si)=((q+1)2+ p2 ) – R2, D(Ti)=((q+1)2+ (p+1)2 ) – R2.

Если |D(Si)| < |D(Ti)|, то выбираем Si, иначе - Ti. Введем величину di = |D(Si)| - |D(Ti)|, тогда Si выбирается при di < 0, иначе выбирается Ti. Если рассматривать только часть окружности, дугу от 00 до 450, то D(Si) > 0 так как точкаSi лежит за пределами окружности, а D(Ti) < 0, так как Ti находится внутри окружности, поэтому
di = D(Si) + D(Ti).

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

d1=3-2R.

Если выбираем Si (когда di < 0 ),

Di=4xi-1+6;

если выбираем Ti (когда di >=0 ),

D i=4(xi-1 * yi-1) +10.

Блок-схема этого алгоритма (рис. 2.6.2).


рис. 2.6.2

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

 


2.7. Отсечение по полю вывода

 

На рис.2.7.1. показана плоская сцена и отсекающее окно регулярной формы. Окно задается левым (Л), правым (П), верхним (В) и нижним (Н) двумерными ребрами. Регулярным отсекающим окном является прямоугольник, стороны которого параллельны осям координат объектного пространства или осям координат экрана. Целью алгоритма отсеченияявляется определение тех точек, отрезков или их частей, которые лежат внутри отсекающего окна. Эти точки, отрезки или их части остаются для визуализации. А все остальное отбрасывается.

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

Точки, лежащие внутри отсекающего окна, удовлетворяют условию:

xл <= х <= xп и ун <= у<= ув.

рис. 2.7.1.

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

Отрезок лежит внутри окна и, следовательно, является видимым, если обе его концевые точки лежат внутри окна, например отрезок ab на рис. 2.7.1. Однако если оба конца отрезка лежат вне окна, то этот отрезок не обязательно лежит целиком вне окна, например отрезок gh на рис. 2.7.1. Если же оба конца отрезка лежат справа, слева, выше или ниже окна, то этот отрезок целиком лежит вне окна, а значит, невидим. Проверка последнего условия устранит все отрезки, помеченные ij на рис. 2.7.1. Но она не устранит ни отрезка gh, который видим частично, ни отрезка kl, который целиком невидим.

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


Алгоритм Коэна-Сазерленда

Для решения задачи определения принадлежности отрезка полю вывода используется следующий метод. Пространство разбивается на 9 областей, каждая из областей кодируется бинарным 4-х битным кодом рис. 2.7.2.

«Кодирование пространства» рис. 2.7.2.

 

Для каждого отрезка рассчитываются коды концов (К1, К2) затем производится экспресс анализ:

· Если, тогда отрезок лежит вне поля вывода – отрезок отбрасывается

· Если , тогда отрезок полностью лежит внутри поля вывода – отсечение не нужно, отрезок полностью прорисовывается

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

 

Алгоритм отсечения по прямоугольной области

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

Метод полутонов

Сущность: каждый пиксель исходного изображения заменяется группой пикселей рис.2.8.2. Рис. 2.8.2.

Закраска гранично-связной области

Существует несколько алгоритмов закраски такой области. Рассмотрим два из них.

 

1) Использует рекурсию. Метод прост для программирования, однако крайне неэффективен.

От затравочной точки просматривают все точки. Если они не граничные, закрашивают и посылают в стек. Далее вытаскивают из стека, и если точка не является граничной и закрашенной, делают то же самое.

 

2) См. блок-схему рис.2.9.3.

рис. 2.9.3.

Рис. 2.9.4.

 


 

Алгоритм закраски областей, заданных списком вершин

  Интерполяция яркости при закраске областей О линейной интерполяции яркости при закраски области можно говорить, если закрашиваемая фигура плоская т.е. лежит в…

Алгоритм

2. Выбор первой координаты сканируемой строки: у = min {ymin}; 3. Если у = уmin, то перенос группы из ТР в ТАР.  

Координаты и преобразования

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

Далее большими буквами x, y, z будут обозначаться обычные декартовые координаты, а маленькие буквы X, Y, Z будут использоваться для обозначения т.н. однородных координат.

 

Двумерные геометрические преобразования

  Параллельный перенос в плоском случае имеет вид:

Поворот вокруг фиксированной точки

  Р` = Р·М,

M = m21 m22 0 ; P` = P·M

m31 m32 1

x’ = x · m11 + y · m21 + m31 Перейдём к алгебраическому выражению:

y’ = x · m12 + y · m22 + m32

 


Трехмерные геометрические преобразования

Далее при рассмотрении трехмерных преобразований, в основном, используется общепринятая в векторной алгебре правая система координат (рис. а). При…    

Композиция 3D изображений

P` = P·M; P = P`· М–1    

0 0 0 1

 

M – в общем случае не ортогональная матрица, т.е. М–1≠ МТ,

а R–ортогональная (R–1=RT).

 

В общем виде матрица преобразований имеет вид:

m11 m12 m13 0

m21 m22 m23 0

M = m31 m32 m33 0

m41 m42 m43 1

Координаты точки вычисляются по следующим формулам:

X` = X*m11+Y* m21+ Z* m31+ m41

Y` = X*m12+Y* m22+ Z* m32+ m42

Z` = X*m13+Y* m23+ Z* m33+ m43


Движение по рельефу

    Нормаль к поверхности определяет N2 => a2b2c2

Движение над рельефом

Надо учитывать, что при движении над рельефом наблюдатель приподнят на высоту h.   Z(x,y) – Функция рельефа

Обработка h при непосредственном синтезе изображения.

1. Инициализируем поля V, H = 0. Очищаем поле V (например, делаем его черным). В H записываем минимальное значение, т. е. заполняем его нулями.…    

Процедурные текстуры

Рассмотрим простой пример: есть домик с кирпичными стенами. Решить задачу описания грани домика достаточно сложно. Можно было бы описать стенку, но…      

I

h(i) = h1 + ¾¾ (h2 - h1)

N-1

 

 


При программировании эти формулы можно упростить:

 

I

fx(i) = ¾¾ (xt2 - xt1) (h2 + B); fx(i+1) = fx(i) + Dfx

N-1

 

I

fy(i) = ¾¾ (yt2 - yt1) (h2 + B); fy(i+1) = fy(i) + Dfy

N-1

 

 

(x t2 - x t1) (h2 + B) (y t2 - y t1) (h2 + B)

Dfx = ¾¾¾¾¾¾¾¾ ; Dfy = ¾¾¾¾¾¾¾¾ ;

N-1 N-1

 

 

Тогда будем иметь:

 

fx(i)

xt(i) = xt1 + ¾¾¾

h(i)+B

 

fy(i)

yt(i) = yt1 + ¾¾¾

h(i)+B

 

 

4.3 Билинейная интерполяция

 

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

Задача заключается в нахождении яркости в точке V.

Сначала находится яркость в точке V5 с учетом линейной интерполяции между точками V1 и V4; затем в точке V6 с учетом интерполяции между точками V2 и V3. Затем производится интерполяция между точками V5 и V6 для нахождения яркости в точке V.

V5=V1*(1-Ex) +V4*Ex V6=V2*(1-Ex) +V3*Ex V = V5*(1-Ey) +V6*Ey Ex, EyÎ{0:1}  

 

Рис. 4.3.1

 

 

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

 

Вопрос: как реализовать прозрачность (например, прозрачное окно в доме)?

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

 

 
 


 


окно

 

непрозрачно

a1

a1 - коэффициент прозрачности. a1 Î [0, 1] a1 = 0 => прозрачно a1 = 1 => непрозрачно  

 

 


V2

 

V1

Рис. 4.3.2

 

В этом случае VS = a1V1 + V2 (1-a1)


 

 
 


a1 a2 непрозрачно

 


V2

V3

V1

 

Рис. 4.3.3

 

VS = a1V1 + (1-a1)( a2V2 + V3 (1-a2))

4.4 Виды текстур

 

1. текстуры с мультиразрешением (мультиразрешение –представление с различной степенью детализации)

2. прозрачные текстуры

3. полупрозрачные текстуры

4. текстуры в тумане

5. циклические текстуры

6. динамические текстуры

7. рельефные текстуры


4.4.1. Прозрачные

 

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


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

 


4.4.2. Полупрозрачные

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

Коэффициент прозрачности L = 0…1 , 0 – чисто прозрачная точка, 1 – непрозрачная точка.

Алгоритм обработки точки полупрозрачной текстуры:

 


 

 

Наложение двух полупрозрачных граней:


 


Полупрозрачнсть:

 

H – обычный буфер

A – a- буфер

V – поле изображения

HA – вспомогательный буфер для полупрозрачной грани

VA – яркость полупрозрачной грани

Pj – признак обработки j- ой грани (j = [0;m-1], если m граней)

 

Алгоритм:

 


 

 


Алгоритм обработки грани – сводится к обработке текущей точки:


 

 

Алгоритм учета полупрозрачности - перебор всех точек изображения - для каждой точки с координатами x,y:


4.4.3. Циклические

 

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

 

 

4.4.4. Динамические

 

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

 

4.4.5. Текстуры с мультиразрешением

 

Рассмотрим текстуру шахматного поля:

 

Рис 4.4.5.1

 

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

 


Трилинейная интерполяция:

Суть: использование текстур в зависимости удаления от наблюдателя Р (то есть дистанция D):

 

использование

текстуры Т1 Т2 Т3

 

Р V1 V2 D (S)

 

Smin S1 S S2 Smax

 

Рис 4.4.5.2

 

Проще работать с глубиной отрезка S, но корректнее с D.

 

В точках S1 и S2 при нетрилинейной интерполяции будет происходить резкий скачок из Т2 в Т3. Если мы используем трилинейную интерполяцию, то эти переходы будут плавными, и в точке S будет среднее между Т2 и Т3, причем в большей степени будет содержание Т3:

S-S1

V = V1 + * ( V2 – V1) , при расчете V1 и V2 используется

S2 – S1 билинейная интерполяция

 

y

x

S

P главный луч проектирования

 

r

(x,y)

R Начало координат находится в центре плоскости изображения

 

D

 

Рис 4.4.5.3

 


 

Вычисляем h = H(x,y), а затем – глубину S = A / (h + B).

Для пространственных координат получим:

 

 

 

Величина S вычисляется через буфер глубины: S = A / ( H(x,y) + B).

4.5. Отсечение текстурных координат по полю вывода

 
 


x1,y1, x2,y2,

xt1,yt1, xt2,yt2,

h1 h2

x0

x0,y,xt,yt,h

 
 
A S = ¾¾; h+B  


x0-x1

h = h1 + (h2 - h1) ¾¾¾;

x2-x1

 


(x t2 - x t1) (s - s1)

x t = x t1 + ¾¾¾¾¾¾¾¾

(s2- s1)

 

(y t2 - y t1) (s - s1)

y t = y t1 + ¾¾¾¾¾¾¾¾

(s2- s1)

 

x0-x1 h2 + B

xt = xt1 + (x t2 - x t1) ¾¾¾ ¾¾¾

x2-x1 h + B

 

x0-x1 h2 + B

yt = yt1 + (y t2 - y t1) ¾¾¾ ¾¾¾

x2-x1 h + B

 

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

  Рис5.1

Основные законы освещения

1.2.Закон Ламберта (диффузного отражения)   Если есть некоторая поверхность и в некоторую точку этой поверхности, у которой есть нормаль, направлен луч от…

Рельефные текстуры.

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

Синтез изображения с помощью Y-буфера.

Синтез каркасных изображений с удалением невидимых элементов этого изображения.  

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

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

между двумя соседними сечениями.

 


Трассировка лучей.

 

Всё что было рассмотрено ранее относится к проективным методам синтеза.

Альтернативой им является трассировка лучей, так же как и проективные

методы поддерживается проективно.

 

Суть: отслеживание луча.

Существуют:

1) Обратная трассировка луча (движение на встречу лучу);

2) Прямая трассировка луча (движение в противоположную сторону).

 

Обратная трассировка

 

Надо найти точку пересечения луча с ближайшим многоугольником (с объек-

том трёхмерного изображения).

Эта задача решается с помощью сортировки элементов пространственной сце-. ны.

Недостатки:

1) Для сложных сцен трассировка лучей не эффективена;

3) Струсктура вычислений сложнее, чем в проективных медодах.

 

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

1) Решается система уравнений;

2) Находится точка пересечения;

3) Находится яркость.

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

Так как в этом существует диффузное отражение, которое может быть получено

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

 

 


Синтез стереоизображений.

1) делим изображение на 2, одно для левого глаза другое для правого. Затем на экране синтезируются эти 2 изображения, в результате чего мы ви- дим стерео изображение.

Представление пространственных форм.

Пусть надо изобразить пространственную кривую:  

Параметрические би-кубические поверхности.

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

Отдельно идёт работа по X, по Y, по Z для представления поверхности.     Рассмотрим параметр X: Би-кубическое уравнение для описания Х:

Итерационные способы вычисления полиномов.

;  

Полигональное задание пространственных форм.

Рельефы:

- регулярные;

- нерегулярные.

 

1)

 
 

Представление на регулярных сетках:

Вид сверху:

ТСР-трианулярная регулярная сетка:

а)

 

б) но предпочтительнее правильные треугольники:

 

 

Плюс ТСР:

Простота паостроения.

Недостаток:

Большой обьём данных.

 


 

2)

 
 

ТНС – триангулированная нерегулярная сетка:

 

Здесь все точки могут быть не привязаныт ни к каким дескрипторам.

 

Пример:

 

 

Метод триангуляции Делоне.

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

Области Вороного.

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

ных треугольниках.

 
 

 

Свойство области Вороного:

Область Вороного гарантирует, что любая точка этой области лежит ближе к то-

чке, вокруг которой строилась эта область, чем любая точка, не лежащая в этой

области.

Дуализм проявляется в том , что:

По триангуляции Делоне можно построить области Вороного и наоборот.

 

Представление рельефа с мультиразрешением.

  Основная задача: Сортировка тачек по степени важности.

Объекты.

ния. Как правило создаётся много моделей одного объекта. В этом случае точка удаляется следующим образом:  

Если к одной вершине присоединены несколько треугольников, то квадрик этой

гольников:  

Механизм колабса ребра.

  Во-первых, нам нужно найти квадрики всех вершин, а затем и рёбер.

Гипертриангуляция

Заключает в себе триангуляции всех уровней разрешения. Но выигрыш в её

  Резюме: 1) Существуют:

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

 

 

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

 

.

Яркость (интенсивность)

Для красного цвета lд =700 мм.

Для зелёного цвета lд =546,1 мм.

Для синего цвета lд =435,8 мм.


 

       
 
   
 


X=0.4184*R-0.0912*G+0.009*B

Y=-0.1587*R+0.2524*G-0.0025*B

Z=-0.0828*R+0.0157*G+0.1786*B

Y – яркостная компонента цветового восприятия.    

Сложение цветов

M – пурпурный ; Y – жёлтый ; С – голубой.

Свойства голубого , жёлтого и пурпурного цвета.

Как видно из приведённой выше картинки , иллюстрирующей сложение цветов,

Пурпурный цвет (М) пропускает красный (R) и синий (B).

жёлтый цвет (Y) пропускает зелёный (G) и красный (R)

голубой цвет (С) пропускает зелёный (G) и синий (B).

 

Не трудно заметить , что пурпурный цвет (М) и жёлтый цвет (Y) пропускают красный цвет (R).

Пурпурный цвет (М) и голубой цвет (С) пропускают синий цвет (B).

Голубой цвет (С) и жёлтый цвет (Y) пропускают зелёный цвет (G).

 

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

 


 

Вычитание цветов

  Интенсивность (R , G , B) меняется в диапазоне от 0 до 1.

Коэффициент насыщенности

 
 

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

 

Цветовой треугольник Паскаля.

 


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

Обработка изображений – это деятельность над изображениями  

Амплитудные преобразования

Координаты точек не меняются. - зависит от совокупности точек вокруг точки (в окрестности)

Частные случаи геометрических преобразований

   

Алгоритм ГП.

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

Деформация изображения.

  l =1….L ( пусть у нас l-текстовых точек).  

Классификация амплитудных преобразований

VR(x,y) = f ()

Амплитудные преобразования

           
   
Поточечные (n=0, m=0)
 
Не поточечные (n>0; m>0)
 
 
   
(окрестность вырождается до самой точки)


То есть область исходного

изображения


 

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

(пространственно независимые)

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

Подобное преобразование можно описать

Виды зависимостей

Кусочно – линейные АП.

 

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


 

K(V) – количество кодов , имеющих яркость V.

 

Кусочно – нелинейные АП

Необходимо найти зависимость VR от VS. Для этого строим следующую функцию…

Считаем среднее значение этих точек и в результирующем изображении в точку с координатами (x y) записываем исходную точку.

  1) Усреднённая маска (3*3)

Пример

Q – (2m +1) *(2n+1)

Q’ – N*N.

 

Операция свертки – частный случай линейного преобразования.


Линейные преобразования

F (n1, n2) – двумерная функция. Тогда F – её линейное преобразование. n1, n2, m1, m2 = 0 ……….. N-1.

Обратное преобразование

F(n1, n2) = (m1, m2) ∙B(n1, n2, m1, m2)     ядро обратного преобразования …  

Частные случаи линейных преобразований

1.) Разделимые линейные преобразования   A(n1, n2, m1, m2) = Ac(n1, m1) ∙ As(n2, m2)

Теоретико-числовые преобразования

 

1, при n= 0, N 1, если иначе
Решаем уравнения

 
 


an =

 

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

 

Например, рассмотрим кольцо по модулю 5, т. е. работаем только с числами 0, 1, 2, 3, 4.

M=5

 

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

Пояснение Например если мы выполняем сложение 3+3 =6. То в этой таблице на пересечении соответствующей строки и соответствующего столбца будет 1. Это объясняется тем , что результат сложения делится на модуль (в данном случае =5.) и остаток этого деления заносится в таблицу.(в данном случае остаток =1)
Например, таблица для сложения:

 

+
3

 

 

Рассмотрим функцию Эйлера:

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

 

J(q1;q2) = j(q1) ∙j(q2) –фундаментальное значение в теории чисел.


Теорема Ферма-Эйлера.

В кольце целых чисел всегда существует такое основание a, при котором:

Если a,M не имеют общих множителей.

(a,M) =1 наибольший общий делитель =1.

Тогда имеет место соотношение :

(mod M)

aоснование, Mмодуль, N — количество отсчетов.

Следствие

1. Если число Mпростое, то

Известно N, надо найти M.

aN = aj(M) = 1 - не всякое число M может являться решением данного уравнения.

an =1, если n-делитель .

 

Теорема Ферма-Эйлера –2

aN = 1 по mod M. an=N=1 по mod M. N – это делитель .

Если n=2q , то число является простым

где r = 2q - числа Ферма.

– Конец работы –

Используемые теги: Конспект, лекций, дисциплине, Компьютерная, графика0.076

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

Что будем делать с полученным материалом:

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

Еще рефераты, курсовые, дипломные работы на эту тему:

Компьютерная графика. Достоинства компьютерной графики. ОСНОВЫ КОМПЬЮТЕРНОЙ ГРАФИКИ
Компьютерная графика это наука предметом изучения которой является создание хранение и обработка графической информации с помощью ЭВМ... Компьютерная графика в настоящее время сформировалась как наука об аппаратном... В компьютерной графике рассматриваются следующие задачи...

Конспект лекций По дисциплине Компьютерная графика
Московский государственный строительный университет... Кафедра Информационные системы и технологии управления в строительстве...

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

Психодиагностика. Конспект лекций ЛЕКЦИЯ № 1. Истоки психодиагностики Психодиагностика: конспект лекций
Психодиагностика конспект лекций... А С Лучинин...

КОНСПЕКТ ЛЕКЦИЙ По дисциплине Компьютерные сети и телекоммуникации
Федеральное государственное бюджетное образовательное учреждение... Высшего профессионального образования... Тульский государственный университет...

КОНСПЕКТ ЛЕКЦИЙ по курсу Архитектурное материаловедение Конспект лекций по курсу Архитектурное материаловедение
ФГОУ ВПО ЮЖНЫЙ ФЕДЕРАЛЬНЫЙ УНИВЕРСИТЕТ... ИНСТИТУТ Архитектуры и искусств... КАФЕДРА ИНЖЕНЕРНО строительных ДИСЦИПЛИН...

Дисциплина Эстетико-философские учения Древнего мира и Средних веков наименование дисциплины в соответствии с ФГОС ВПО и учебным планом КОНСПЕКТ ЛЕКЦИЙ
Федеральное государственное образовательное учреждение... Высшего профессионального образования... Сибирский федеральный университет...

По дисциплине Теория организации Краткий конспект лекций по дисциплине
Федеральное государственное бюджетное образовательное учреждение... высшего профессионального образования... Челябинский государственный университет...

Психиатрия. Конспект лекций. ЛЕКЦИЯ № 1. Общая психопатология Психиатрия: конспект лекций
Психиатрия конспект лекций... Текст предоставлен литагентом http litres ru...

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

0.036
Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • По категориям
  • По работам