Podczas laboratoriów zajęliśmy się omawianiem rozbarwianiem obrazka. Niestety znowu nie było licencji na Matlaba wiec na teorii się skończyło. Jako że nie było mnie na zajęciach, kiedy należało oddać prace postanowiłem całość zrobić sam. Po 2h pracy z matlabem skończyłem.
Na początek trochę teorii:
RGB - jeden z modeli przestrzeni barw, opisywanej współrzędnymi RGB. Jego nazwa powstała ze złożenia pierwszych liter angielskich nazw barw: R - red (czerwonej), G - green (zielonej) i B - blue (niebieskiej), z których model ten się składa. Jest to model wynikający z właściwości odbiorczych ludzkiego oka, w którym wrażenie widzenia dowolnej barwy można wywołać przez zmieszanie w ustalonych proporcjach trzech wiązek światła o barwie czerwonej, zielonej i niebieskiej
CMYK - zestaw czterech podstawowych kolorów farb drukarskich stosowanych powszechnie w druku kolorowym w poligrafii i metodach pokrewnych (atramenty, tonery i inne materiały barwiące w drukarkach komputerowych, kserokopiarkach itp.). Na zestaw tych kolorów mówi się również barwy procesowe lub kolory triadowe (kolor i barwa w jęz. polskim to synonimy). CMYK to jednocześnie jedna z przestrzeni barw w pracy z grafiką komputerową.
CMYK - zestaw czterech podstawowych kolorów farb drukarskich stosowanych powszechnie w druku kolorowym w poligrafii i metodach pokrewnych (atramenty, tonery i inne materiały barwiące w drukarkach komputerowych, kserokopiarkach itp.). Na zestaw tych kolorów mówi się również barwy procesowe lub kolory triadowe (kolor i barwa w jęz. polskim to synonimy). CMYK to jednocześnie jedna z przestrzeni barw w pracy z grafiką komputerową. Skrót CMYK powstał jako złożenie pierwszych liter angielskich nazw kolorów prócz koloru czarnego, z którego wzięto literę ostatnią, ponieważ litera B jest skrótem jednego z podstawowych kolorów w analogicznym skrócie RGB. (Inne, mniej popularne rozwinięcia skrótu K to Key color, Karbon lub Kontur.)
YUV - model barw, w którym Y odpowiada za jasność obrazu (luminancję), a pod UV zaszyta jest barwa - dwie chrominancje.Model YUV był wykorzystywany w czasie przechodzenia od telewizorów czarno-białych na kolorowe. Czarno-białe odbiorniki wyświetlały jedynie jasność obrazu, a kolorowe dodawały kolor, co pozwoliło posiadaczom czarno-białych nie pozbywać się odbiorników od razu. Y - luminacja (dla obrazu czarno-białego) U - przeskalowana składowa B V - przeskalowana składowa R
Y=0.299 *R + 0.587*G +0.114 *B
U = R - Y
V = B - Y
W moim sprawozdaniu znajdują się : rozbarwienie RGB, przekształcenie RGB do CMY, przekształcenie CMY do CMYK oraz RGB do YUV.
Obrazek podstawowy:
Rozbarwienie RGB.
RED GREEN
BLUE
Konwersja RGB do CMY
CYJAN MAGNETA
YELLOW
CYM
Konwersja z CMY do CMYK.
(obrazki są małe, ponieważ mam mało czarnego tuszu).
CYJAN MAGNETA YELOW
BLACK
Konwersja z RGB do YUV.
(obrazki są małe, ponieważ mam mało czarnego tuszu).
Y U V
YUV
WNIOSKI:
Nie ukrywam, że podczas pisania w rozwiązywaniu problemów pomagał mi kolega. Na początku miałem problem z błędem :
„??? Error using ==> -
Function '-' is not defined for values of class 'uint8'.”.
Pojawiającym się podczas polecenia np c=255-r;.Bardzo mnie zdziwiło, że jak skorzystałem z uczelnianego Matlaba błąd zniknął od tak sobie. Dzięki temu mogłem skończyc prace nad sprawozdaniem.
Najbardziej podobały mi się obrazki z konwersi do CMY i CMYK. Byłem ciekawy czy nie będą one przypadkiem bardzo podobne do tych, które otrzymałem podczas rozbarwiania RGB.
W przeciwieństwie do nich wszystkie obrazki różniły się dość znacznie.
Sądzę, że osoby z naszą wiedzą na temat Matlaba nie miały by szans na pokonanie wszystkich problemów, jakie można było napotkac po drodze. Na szczęście jako takie doświadczenie z c++ pomogło mi uniknąć problemów związanych z np. brakiem średnika.
Jeśli chodzi o teorie to niestety odwołałem się tylko do wikipedi, ale przeczytałem treści z tej strony.
KODY:
Rozbarwienie:
rgb = imread('I:\GI\5.jpg');
r = rgb(:,:,1);
r = rgb(:,:,1);
g = rgb(:,:,1);
b = rgb(:,:,3);
b = rgb(:,:,2);
imshow(r);
imshow(g);
imshow(b);
Konwersja RGB do CMY:
c = 255-r;
m = 255-g;
y = 255-b;
obraz_cmy(:,:,1) = c;
obraz_cmy(:,:,2) = m;
obraz_cmy(:,:,3) = y;
imshow(c);
imshow(m);
imshow(y);
imshow(obraz_cmy);
Konwersja CMY do CMYK:
x=min(c,m);
k=min(x,y);
c=c-k;
m=m-k;
y=y-k;
imshow(c);
imshow(m);
imshow(y);
imshow(k);
Konwersja RGB do YUV:
y = .299*r+.587*g+.114*b;
x=b-y;
u=.193*x;
x=r-y;
v=.877+x;
imshow(y);
imshow(u);
imshow(v);
imshow(v);
v=.877*x;
imshow(v);
yuv(:,:,1)=y;
yuv(:,:,2)=u;
yuv(:,:,3)=v;
imshow(yuv)
POLITECHNIKA SZCZECIŃSKA
WYDZIAŁ INFORMATYKI
ZARZĄDZANIE I INŻUNIERIA PRODUKCJI
LABORATORIUM 1:
ROZBARWIANIE I MODELE BARW
Wykonał:
xxx
Zip-20