GRAFIKA KOMPUTEROWA 8: Konwersja i mieszanie kolorów



Podobne dokumenty
GRAFIKA KOMPUTEROWA 10: Antyaliasing

Mieszanie kolorów. Dorota Smorawa

GRAFIKA KOMPUTEROWA 7: Kolory i cieniowanie

glwindowpos2d void DrawString (GLint x, GLint y, char *string) { glwindowpos2i (x,y); int len = strlen (string); for (int i = 0; i < len; i++)

6 Przygotował: mgr inż. Maciej Lasota

Janusz Ganczarski. OpenGL Pierwszy program

Spis treści Spis treści 1. Model CMYK Literatura

3 Przygotował: mgr inż. Maciej Lasota

OpenGL Światło (cieniowanie)

Wprowadzenie do programowania z wykorzystaniem biblioteki OpenGL. Dorota Smorawa

Światło. W OpenGL można rozróżnić 3 rodzaje światła

OpenGL Światło (cieniowanie)

OpenGL oświetlenie. Bogdan Kreczmer. Katedra Cybernetyki i Robotyki Wydziału Elektroniki Politechnika Wrocławska

dr inż. Jacek Dąbrowski, KSG

Ćwiczenia z grafiki komputerowej 4 PRACA NA WARSTWACH. Miłosz Michalski. Institute of Physics Nicolaus Copernicus University.

Efekt lustra 3D w OpenGL z wykorzystaniem bufora szablonowego (stencil buffer)

Światła i rodzaje świateł. Dorota Smorawa

Materiały. Dorota Smorawa

Zadanie 1. Ściana. 1. Potrzebne zmienne w dołączonym do zadania kodzie źródłowym

OpenGL przezroczystość

Programowanie gier komputerowych Tomasz Martyn Wykład 6. Materiały informacje podstawowe

0. OpenGL ma układ współrzędnych taki, że oś y jest skierowana (względem monitora) a) w dół b) w górę c) w lewo d) w prawo e) w kierunku do

Zatem standardowe rysowanie prymitywów wygląda następująco:


GRAFIKA KOMPUTEROWA podstawy matematyczne. dr inż. Hojny Marcin pokój 406, pawilon B5 Tel.

6. Algorytmy ochrony przed zagłodzeniem dla systemów Linux i Windows NT.

Druga aplikacja Prymitywy, alpha blending, obracanie bitmap oraz mały zestaw przydatnych funkcji wyświetlających własnej roboty.

MODELE KOLORÓW. Przygotował: Robert Bednarz

Grafika Komputerowa Wybrane definicje. Katedra Informatyki i Metod Komputerowych Uniwersytet Pedagogiczny im. KEN w Krakowie apw@up.krakow.

Elementarne obiekty geometryczne, bufory. Dorota Smorawa

Temat: Transformacje 3D

Szybkie tworzenie grafiki w GcIde

8 Przygotował: mgr inż. Maciej Lasota

ELEMENTY AUTOMATYKI PRACA W PROGRAMIE SIMULINK 2013

Plan wykładu. Akcelerator 3D Potok graficzny

zna wybrane modele kolorów i metody transformacji między nimi zna podstawowe techniki filtracji liniowej, nieliniowej dla obrazów cyfrowych

1. Które składowe klasa posiada zawsze, niezależnie od tego czy je zdefiniujemy, czy nie?

Zadanie 4. W akwarium, w kształcie naczynia prostopadłościennego, znajdowało się 50 litrów wody. Akwarium nie było pełne.

Do opisu kolorów używanych w grafice cyfrowej śluzą modele barw.

Wykorzystanie programów komputerowych do obliczeń matematycznych, cz. 2/2

Modelowanie niezawodności prostych struktur sprzętowych

Przykładowy zestaw zadań nr 2 z matematyki Odpowiedzi i schemat punktowania poziom rozszerzony

Podstawy Processingu. Diana Domańska. Uniwersytet Śląski

Instrukcja konfiguracji programu TV Wall do zarządzania dekoderami IN-IP-5904-MP, IN-IP-5904

Grafika na stronie www

Fotometria i kolorymetria

RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski

Laboratorium grafiki komputerowej i animacji. Ćwiczenie V - Biblioteka OpenGL - oświetlenie sceny

Odwrotna Notacja Polska

Mikrokontrolery wytyczne do projektów

Dokumentacja użytkownika systemu Miniaplikacja Przerwa Serwisowa

Teoria światła i barwy

Janusz Ganczarski CIE XYZ

FUNKCJA LINIOWA. A) B) C) D) Wskaż, dla którego funkcja liniowa określona wzorem jest stała. A) B) C) D)

Wyświetlacz alfanumeryczny LCD zbudowany na sterowniku HD44780

Wykorzystanie programów komputerowych do obliczeń matematycznych, cz. 2/2

Grafika rastrowa (bitmapa)-

PRZEWODNIK PO PRZEDMIOCIE

Studentom zostaną dostarczone wzory lub materiały opisujące. Zachęcamy do wykonania projektów programistycznych w postaci apletów.

ARKUSZ PRÓBNEJ MATURY Z OPERONEM MATEMATYKA

SYLABUS/KARTA PRZEDMIOTU

LABORATORIUM PRZEMYSŁOWYCH SYSTEMÓW STEROWANIA

EGZAMIN MATURALNY Z MATEMATYKI

Warstwa Rysunek bitmapowy Rysunek wektorowy

Julia 4D - raytracing

Adam Korzeniewski p Katedra Systemów Multimedialnych

EGZAMIN MATURALNY Z MATEMATYKI

Co to jest OpenGL? Oprogramowanie i wykorzystanie stacji roboczych. Wykład 5. OpenGL - Achitektura. OpenGL - zalety. olas@icis.pcz.

Ad maiora natus sum III nr projektu RPO /15

Zaawansowana Grafika Komputerowa

Grafika trójwymiarowa

PRÓBNY EGZAMIN MATURALNY Z NOWĄ ERĄ

Cechy formatu PNG Budowa bloku danych Bloki standardowe PNG Filtrowanie danych przed kompresją Wyświetlanie progresywne (Adam 7)

PRÓBNY EGZAMIN MATURALNY Z MATEMATYKI

Materiały dla studentów pierwszego semestru studiów podyplomowych Grafika komputerowa i techniki multimedialne rok akademicki 2011/2012 semestr zimowy

LABORATORIUM PRZEMYSŁOWYCH SYSTEMÓW STEROWANIA

Kompresja obrazów w statycznych - algorytm JPEG

Archiwum DG 2016 PL-SOFT

EGZAMIN MATURALNY Z MATEMATYKI

B Biblioteka GD. B.1 Koncepcja biblioteki GD.

BORKOWSKI J PREKURAT M. FATYGA A. PREKURAT P. SZOSTEK

Język JAVA podstawy. Wykład 5, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

SCENARIUSZ LEKCJI. Wielomiany komputerowe wykresy funkcji wielomianowych

Wrocław, dnia 24 czerwca 2016 r. Poz UCHWAŁA NR XXVI/540/16 RADY MIEJSKIEJ WROCŁAWIA. z dnia 16 czerwca 2016 r.

Grafika komputerowa. Oko posiada pręciki (100 mln) dla detekcji składowych luminancji i 3 rodzaje czopków (9 mln) do detekcji koloru Żółty

INFORMATYKA WSTĘP DO GRAFIKI RASTROWEJ

ANALIZA I INDEKSOWANIE MULTIMEDIÓW (AIM)

Fotografia cyfrowa obsługa programu GIMP. Cz. 18. Tworzenie ramki do zdjęcia. materiały dla osób prowadzących zajęcia komputerowe w bibliotekach

Tematy lekcji informatyki klasa 4a grudzień 2011

x a 1, podając założenia, przy jakich jest ono wykonywalne. x a 1 = x a 2 ( a 1) = x 1 = 1 x.

Plan. Raport. Tworzenie raportu z kreatora (1/3)

Modelowanie bilansu energetycznego pomieszczeń (1)

Dokąd on zmierza? Przemieszczenie i prędkość jako wektory

Anna Barwaniec Justyna Rejek

NOWA FORMUŁA EGZAMIN MATURALNY Z MATEMATYKI POZIOM ROZSZERZONY MMA 2019 UZUPEŁNIA ZDAJĄCY. miejsce na naklejkę

Fotometria i kolorymetria

Praktyka programowania projekt

Grafika komputerowa. Dla DSI II

Transkrypt:

GRAFIKA KOMPUTEROWA 8: Konwersja i mieszanie kolorów http://galaxy.agh.edu.pl/~mhojny Prowadzący: dr inż. Hojny Marcin Akademia Górniczo-Hutnicza Mickiewicza 30 30-059 Krakow pawilon B5/p.406 tel. (+48)12 617 46 37 e-mail: mhojny@metal.agh.edu.pl

1. Cel projektu: Zapoznanie się z podstawowymi technikami mieszania kolorów oraz konwersji modeli barw. 2. Zadanie projektowe: W oparciu o opracowaną aplikację w ramach poprzednich zajęć: a) dodać możliwość wyświetlenia mapy barw w oparciu o wybrany model mieszania b) opracować kalkulator konwersji modelu barw RGB->CMY, CMY->RGB 3. BLENDING Mieszanie kolorów lub też inaczej blending (alfa blending) polega na ustaleniu wynikowego koloru piksela będącego kombinacją koloru źródłowego (Rs, Gs, Bs, As ) oraz koloru przeznaczenia (Rd, Gd, Bd, Ad ) przechowywanego w buforze kolorów. Mieszanie kolorów wykorzystywane jest do uzyskania efektów przezroczystości, antyaliasingu czy też odbicia. Włączanie i wyłączanie mieszania kolorów Aktywacja mieszania (domyślnie wyłączona) kolorów wymaga wywołania funkcji glenable z parametrem GL_BLEND. Wywołanie funkcji gldisable aktywuje wyłączenie mieszania kolorów. Równanie mieszania kolorów Domyślnie kolor wynikowy (R, G, B, A) obliczany jest na podstawie równania mieszania kolorów: = + = + = + = +

Akademia Górniczo - Hutnicza gdzie (Sr, Sg, Sb, Sa ) i (Dr, Dg, Db, Da ) są odpowiednio współczynnikami mieszania dla koloru źródłowego i koloru przeznaczenia. Wartości składowych (R, G, B, A) koloru wynikowego zawężane są do przedziału [0, 1], stąd poprawna matematycznie forma zapisu powyższego równania: = (, + ) = (, + ) = (, + ) = (, + ) Wybór innego równania mieszania kolorów umożliwia funkcja: void glblendequation( GLenum mode ) której parametr mode może przyjąć jedną z poniższych wartości: GL_FUNC_ADD - domyślne równanie mieszania, GL_FUNC_SUBTRACT - równanie mieszania: = (, ) = (, ) = (, ) = (, ) GL_FUNC_REVERSE_SUBTRACT - równanie mieszania:

Akademia Górniczo - Hutnicza = (, ) = (, ) = (, ) = (, ) GL_MIN - równanie mieszania: = (, ) = (, ) = (, ) = (, ) GL_MAX - równanie mieszania: = (, ) = (, ) = (, ) = (, ) Współczynniki mieszania kolorów Powyższe równania mieszania korzystają ze współczynników mieszania kolorów dla koloru źródłowego (Sr, Sg, Sb, Sa ) oraz koloru przeznaczenia (Dr, Dg, Db, Da ). W celu określania wartości tych współczynników można wykorzystać podstawową funkcję w bibliotece OpenGL:

void glblendfunc( GLenum src, GLenum dst ) Parametry funkcji src oraz dst określają sposób obliczania współczynników mieszania kolorów: parametr współczynnik mieszania GL_ZERO (0, 0, 0, 0) GL_ONE (1, 1, 1, 1) GL_SRC_COLOR (Rs, Gs, Bs, As ) GL_ONE_MINUS_SRC_COLOR (1, 1, 1, 1) (Rs, Gs, Bs, As ) GL_DST_COLOR (Rd, Gd, Bd, Ad ) GL_ONE_MINUS_DST_COLOR (1, 1, 1, 1) (Rd, Gd, Bd, Ad ) GL_SRC_ALPHA (As, As, As, As ) GL_ONE_MINUS_SRC_ALPHA (1, 1, 1, 1) (As, As, As, As ) GL_DST_ALPHA (Ad, Ad, Ad, Ad ) GL_ONE_MINUS_DST_ALPHA (1, 1, 1, 1) (Ad, Ad, Ad, Ad ) GL_CONSTANT_COLOR (Rc, Gc, Bc, Ac) GL_ONE_MINUS_CONSTANT_COLOR (1, 1, 1, 1) (Rc, Gc, Bc, Ac) GL_CONSTANT_ALPHA (Ac, Ac, Ac, Ac) GL_ONE_MINUS_CONSTANT_ALPHA (1, 1, 1, 1) (Ac, Ac, Ac, Ac) GL_SRC_ALPHA_SATURATE (f, f, f, 1), f = min (As, 1 Ad )

Wartość początkowa dla parametru src wynosi GL_ONE a dla parametru dst wynosi GL_ZERO. Ostatnia stała GL_SRC_ALPHA_SATURATE może być stosowana wyłącznie jako wartość parametru src. Przykładowy fragment kodu: void Draw() { glclearcolor( 0.0, 1.0, 0.0, 1.0 ); // kolor tła - zawartość bufora koloru glclear( GL_COLOR_BUFFER_BIT ); // czyszczenie bufora koloru glenable( GL_BLEND ); // włączenie mieszania kolorów glblendfunc( GL_ONE, GL_ONE ); // współczynniki mieszania kolorów glblendequation( GL_FUNC_ADD ); // równanie GL_FUNC_ADD glblendequation( GL_MIN ); // równanie GL_MIN glblendequation( GL_MAX ); // równanie GL_MAX glblendequation( GL_FUNC_SUBTRACT ); // równanie GL_FUNC_SUBTRACT glblendequation( GL_FUNC_REVERSE_SUBTRACT ); // równanie GL_FUNC_REVERSE_SUBTRACT 4. KONWERSJA MODELI BARW RGB na CMY C = 1 - R M = 1 - G Y = 1 - B CMY na RGB R = 1 - C G = 1 - M B = 1 Y RGB na CMYK K = 1 - max{r, G, B} C = (1 - R - K) / (1 - K) M = (1 - G - K) / (1 - K) Y = (1 - B - K) / (1 - K) CMYK na RGB R = (1 - C) * (1 - K) G = (1 - M) * (1 - K) B = (1 - Y) * (1 - K) 5. Co na następnych zajęciach: Przeźroczystość.