Реферат по предмету "Информатика, программирование"


Отримання зображень з допомогою комп’ютерної графіки

МІНІСТЕРСТВО ОСВІТИ УКРАЇНИ
Бердичівський політехнічний коледж
Контрольна робота
з предмета “Комп’ютерна графіка”
(варіант №5)
Виконав:студент групи ПЗС-504
ЖуравськаО.О.
Перевірив
викладач:Козік В.Ю.
м. Бердичів — 2007 р.

Зміст
1.Колірна модель CMY та CMYK
/>2. Туман, тінь, відбиття в бібліотеці Opengl
3.Засобами бібліотеки Opengl забезпечити зміну кольору створеного трикутника приподвійному натисненні лівої кнопки миші
4.Для попереднього практичного завдання вашого варіанту забезпечити операцію масштабуваннявикористовуючи клавіші “+” та “-“
Списоквикористаної літератури

1. Колірна модель CMY та CMYK
Використовується для опису кольору при отриманні зображеньна пристроях, що реалізують принцип поглинання кольорів. У першу чергу, вонавикористовується в пристроях, що друкують на папері [16]. Назва даної моделіскладається з назв основних субтрактивних кольорів: блакитного (Cyan),пурпурного (Magenta) та жовтого (Yellow) (рис. 1.27).
/>
Для того, щоб розібратися з поглинанням кольорів,розглянемо рис. 1.28.
/>
Нанесення жовтої фарби на білий папір означає, щопоглинається відбитий синій колір. Блакитна фарба поглинає червоний колір.Пурпурна фарба — зелений. Комбінування фарб дозволяє отримати кольори, щозалишилися — зелений, червоний, синій та чорний. Чорний відповідає поглинаннювсіх кольорів при відбитті (рис. 1.29).
На практиці добитися чорного змішуванням важко черезнеідеальність фарб, тому у принтерах використовують ще й фарбу чорного кольору(blаск). Тоді модель називається CMYK.
Необхідно також відзначити, що не усякі фарби забезпечуютьвказане вище віднімання кольорів CMY. Докладніше про це в [10].
/>
У таблиці 1.2 для порівняння надамо опис деяких кольорів умоделях RGB та CMY.
/>
Співвідношення для перекодування кольору з моделі CMY вRGB:
/>
І зворотне — з моделі RGB в CMY:
/>

Тут вважається, що компоненти кодуються числами в діапазонівід 0 до 1. Для іншого діапазону чисел можна записати відповідніспіввідношення.
Для вирішення проблеми від'ємних коефіцієнтів, що існуваладля моделі RGB, в 1931 році Міжнародною Комісією по Освітленню (МКО) булаприйнята колориметрична система XYZ (рис. 1.30). У системі МКО XYZ в якостіосновних кольорів були прийняті також три кольори, однак вони є умовними,нереальними [1, 14].
Розглянуті вище моделі так або інакше використовуютьзмішування деяких основних кольорів. Тепер розглянемо колірну модель, яку можнавіднести до іншого, альтернативного типу.
У моделі HSV колір описується наступними параметрами —колірний тон Н (hue), насиченість S (saturation), яскравість або світлота V{value) [28]. Значення Н вимірюється у градусах від 0 до 360, оскільки туткольори розташовуються вздовж кола в такому порядку:
червоний, жовтогарячий, жовтий, зелений, блакитний, синій,фіолетовий (відоме прислів'я російською мовою — «каждый охотник желаетзнать, где сидят фазаны» — красный, оранжевый, желтый, зеленый, голубой,синий, фиолетовый). Значення S та V знаходяться в діапазоні (0… 1).
/>
Наведемо приклади кодування кольорів для моделі HSV (рис.1.31). При S = 0 (тобто на осі V) — сірі тони. Значення V= 0 відповідаєчорному. Білий колір кодується як S = 0, V=1. Кольори, які розташовані вздовжкола один проти одного, тобто які відрізняються по Я на 180 градусів, єдоповняльними [28]. Завдання кольорів за допомогою параметрів HSV досить частовикористовується у графічних системах, причому зазвичай демонструєтьсярозгортка конуса.
/>
Існують інші колірні моделі, побудовані аналогічно HSV, наприклад,модель HLS (Hue, Lighting, Saturation) також використовує колірний конус.
У [48] є відомості про колірну модель СІЕ L*a*b*, яка булаприйнята МКО.
Усе перераховані вище колірні моделі описують колір трьомапараметрами. Вони описують колір у досить широкому діапазоні. Тепер розглянемоколірну модель, у якій колір задається одним числом, але вже для обмеженогодіапазону кольорів (відтінків).
На практиці часто використовуються чорно-білі (сірі)напівтонові зображення. Сірі кольори в моделі RGB описуються однаковимизначеннями компонентів, тобто ri = gi = bi. Таким чином, для сірих зображеньнемає потреби використовувати трійки чисел — достатньо і одного числа. Цедозволяє спростити колірну модель. Кожна градація визначається яскравістю Y.Значення Y— 0 відповідає чорному, максимальне значення Y відповідає білому.
В якості прикладу розглянемо перетворення кольоровихзображень, представлених у моделі RGB, у чорно-білі напівтонові зображення уградаціях сірого (подібно до того, як показуються кольорові фільми на екранічорно-білого телевізора). Для цього можна скористатися співвідношенням

/>
де коефіцієнти при R, G та В враховують різну чутливістьзору до відповідних кольорів, а крім того, їхня сума дорівнює одиниці.Зазвичай, обернене перетворення R = Y, G = Y, В = Y не дасть ніяких іншихкольорів, окрім градацій сірого.
Ще один приклад використання різних колірних моделей. Призапису кольорових фотографій в графічний файл формату JPEG виконуєтьсяперетворення опису кольорів з моделі RGB в модель (Y, СЬ, Сr). Цевикористовується для подальшого ущільнення обсягів інформації растровогозображення. При читанні файлів JPEG виконується обернене перетворення в RGB.Різноманітність моделей обумовлена різними областями їх використання. Кожна ізколірних моделей була розроблена для ефективного виконання окремих операцій:вводу зображень, візуалізації на екрані, друку на папері, обробці зображень,зберігання в файлах, колориметричних розрахунків та вимірів. Перетворенняоднієї моделі в іншу може призвести до викривлення.
2.Туман, тінь, відбиття в бібліотеці Opengl
В OpenGL передбачено декілька функцій длямоделювання розповсюдження світла в об'ємі напівпрозорого середовища. Ви,напевно, помічали, що в тумані чим більша відстань від точки спостереження дооб'єктів, тим більше колір об'єктів змішується з кольором туману. Починаючи здеякої відстані, об'єктів не видно зовсім — це можна вважати як повну замінукольору віддалених об'єктів на колір туману (наприклад, сірий). Для цього можнавикористати функцію glFog. Цяфункція дозволяє визначити властивість змішування кольорів об'єктів і туману взалежності від відстані до об'єкту.
Змішування виконуєтьсязгідно з формулою: С =fCo + (1-f )Сf ,
де Со — колір об'єкту,Сf— колір туману, С — коліррезультату, f— функція, якавраховує відстань точки об'єкта до точки спостереження, а також густинусередовища. В OpenGL передбаченідекілька різновидів функції/ Розглянемо це.
Для визначення типуфункції / треба викликати glFog ізпараметром GL_FOG_MODE, наприклад, так:
/>
Що це означає?Експоненціальний варіант описується так:
/>
/>

/>
/>

3.Засобами бібліотеки Opengl забезпечити зміну кольору створеного трикутника приподвійному натисненні лівої кнопки миші
Я взяла для виконання свого завдання програму Delphi і побудувала трикутникна формі придавши їй червоного кольору, при натиску змінює на рожевий, листингпрограми матиме такий вигляд:
/>
(мал. №1 )
/>
(мал. №2 )
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls,Forms, Dialogs,
OpenGL;
type
TfrmGL = class(TForm)
procedure FormCreate(Sender: TObject);
procedure FormPaint(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure FormKeyPress(Sender: TObject; var Key: Char);
private
hrc: HGLRC;
h: GLfloat;
end;
var
frmGL: TfrmGL;
Vert:array[1..6,1..10] of GLfloat;
mx,my:byte; //коефіцієнти збільшення/зменшення
implementation
{$R *.DFM}
procedure TfrmGL.FormPaint(Sender: TObject);
begin
wglMakeCurrent(Canvas.Handle, hrc);
glViewPort (0, 0, ClientWidth, ClientHeight);
glClearColor (0.5, 0.5, 0.75, 1.0);
glClear (GL_COLOR_BUFFER_BIT);
glColor3f (2.0, 0.0, 0.8); // текущий цвет примитивов
glBegin (GL_TRIANGLES);
glVertex3f (-1, -1, h);
glVertex3f (-1, 1, h);
glVertex3f (1, 0, h);
glEnd;
SwapBuffers(Canvas.Handle); // содержимое буфера — на экран
wglMakeCurrent(0, 0);
end;
procedure SetDCPixelFormat (hdc: HDC);
var
pfd: TPixelFormatDescriptor;
nPixelFormat: Integer;
begin
FillChar (pfd, SizeOf (pfd), 0);
pfd.dwFlags := PFD_DRAW_TO_WINDOW or PFD_SUPPORT_OPENGL orPFD_DOUBLEBUFFER;
nPixelFormat := ChoosePixelFormat (hdc, @pfd);
SetPixelFormat (hdc, nPixelFormat, @pfd);
end;
procedure TfrmGL.FormCreate(Sender: TObject);
begin
SetDCPixelFormat(Canvas.Handle);
hrc := wglCreateContext(Canvas.Handle);
h := 0.0;
end;
procedure TfrmGL.FormDestroy(Sender: TObject);
begin
wglDeleteContext(hrc);
end;
procedure TfrmGL.FormKeyDown(Sender: TObject; var Key:Word;
Shift: TShiftState);
begin
If Key = VK_ESCAPE then Close;
If Key = VK_SPACE then
begin
If ssShift in Shift
then h := h + 1
else h := h — 1;
Caption := Floattostr (h);
Refresh
end;
end;
procedure TfrmGL.FormKeyPress(Sender: TObject; var Key:Char);
begin
if key = '-' then mx:=mx+1;
if key = '+' then mx:=mx-1;
FormPaint(Sender);
end;
end.
4. Для попереднього практичного завдання вашого варіантузабезпечити операцію масштабування використовуючи клавіши “+” та “-“
Потім для точного виконання завдання виконала слідуючийалгоритм дій при цьому використала згідно варіанту клавіші «+» та «-», що поумові завдання виконують наближення та відділення фігури на фоні:
procedure TfrmGL.FormKeyPress(Sender: TObject; var Key:Char);
begin
if key = '-' then mx:=mx+1;
if key = '+' then mx:=mx-1;
InvalidateRect(Handle, nil, False);
end;
end.

Список використаної літератури
1.Блінова Т.О., Порєв В.М. Комп’ютерна графіка / За ред. В.М.Горєва. – К.:Видавництво “Юніор”, 2004. – 456с., іл.
2.С.В.Глушаков, Г.А.Крабе Компютерная графика, Харьков 2002
3.OpenGl, технология ставшая символов, Учебник в примерах.
4.Конспект лекцій.


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

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

Пишем реферат самостоятельно:
! Как писать рефераты
Практические рекомендации по написанию студенческих рефератов.
! План реферата Краткий список разделов, отражающий структура и порядок работы над будующим рефератом.
! Введение реферата Вводная часть работы, в которой отражается цель и обозначается список задач.
! Заключение реферата В заключении подводятся итоги, описывается была ли достигнута поставленная цель, каковы результаты.
! Оформление рефератов Методические рекомендации по грамотному оформлению работы по ГОСТ.

Читайте также:
Виды рефератов Какими бывают рефераты по своему назначению и структуре.