Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- LUT
- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- clc
- clear all
- close all
- load funkcjeLUT
- % figure(1);
- % plot(kwadratowa);
- %
- % x = imread("lena.bmp");
- %
- % figure(2)
- % imshow(x);
- %
- % y = intlut(x,kwadratowa);
- %
- % figure(3)
- % imshow(y);
- x = imread("lena.bmp");
- figure('Name','logarytmiczna');
- LUT2(x,log);
- figure('Name','odw logarytmiczna');
- LUT2(x,odwlog);
- figure('Name','wykladnicza');
- LUT2(x,wykladnicza);
- figure('Name','kwadratowa');
- LUT2(x,kwadratowa);
- figure('Name','pierwiastkowa');
- LUT2(x,pierwiastkowa);
- figure('Name','odwrotna');
- LUT2(x,odwrotna);
- figure('Name','pila');
- LUT2(x,pila);
- function LUT(obraz,przekodowanie)
- y = intlut(obraz,przekodowanie);
- subplot(3,1,1)
- plot(przekodowanie);
- title("WYKRES")
- subplot(3,1,2)
- imshow(obraz)
- title("Oryginal")
- subplot(3,1,3)
- imshow(y)
- title("Przekodowany")
- end
- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- Operacje arytmetyczne
- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- clc
- clear all
- close all
- x = imread("lena.bmp");
- y = imread("jet.bmp");
- % figure('Name','Lena');
- % imshow(x);
- %
- % figure('Name','Jet');
- % imshow(y);
- figure('Name','Dodawanie');
- % add = imadd(x,y);
- add = imadd(x,y,'uint16');
- imshow(add,[]);
- % Wynik sumowania nie jest satysfakcjonujący. Jest rozjaśniony. Dzieje się
- % tak, ponieważ liczby dodane z macierzy obrazu sprawiają, że poszczególne
- % pixele się rozjaśniają. Po dodaniu uint16 wynik jest dobry.
- figure('Name','Kombinacja liniowa');
- comb = imlincomb(1,x,1,y,'uint16');
- imshow(comb,[]);
- figure('Name','Odejmowanie');
- % sub = imsubtract(x,y);
- % imshow(sub);
- x16=int16(x);
- y16=int16(y);
- sub2 = imsubtract(x16,y16);
- imshow(sub2,[]);
- % Podobnie jak przy dodawaniu, tylko teraz zamiast dodawać liczby z macierzy
- % odejmujemy je, przez co obraz staje się coraz ciemniejszy. Po zmianie
- % typu danych wynik jest już dobry, obraz staje się czytelny.
- figure('Name','Mnozenie');
- mul = immultiply(x,y);
- imshow(mul);
- % Taki efekt powoduje, ze obraz jest cały biały. Dzieje sie tak ponieważ pixele
- % po wymnozeniu wychodzą poza skale - 255 to biel.
- figure('Name','Mnozenie-stala');
- mulcons = immultiply(x, 2);
- imshow(mulcons);
- % Obraz tak jak się można było spodziewać - rozjaśnił się ponieważ przemnożyliśmy przez 2
- figure('Name','Mnozenie-maska');
- kolo = imread("kolo.bmp");
- mask = boolean(kolo);
- mulmask = immultiply(x,mask);
- imshow(mulmask);
- figure('Name','Negatyw');
- neg = imcomplement(x);
- imshow(neg);
- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- Operacje logiczne
- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- clear all;
- close all;
- clc
- kolo=imread('kolo.bmp');
- kwadrat=imread('kwadrat.bmp');
- kolo=boolean(kolo);
- kwadrat=boolean(kwadrat);
- figure('Name','Kolo');
- imshow(kolo);
- figure('Name','Kwadrat');
- imshow(kwadrat);
- figure('Name','Not Kolo');
- imshow(~kolo);
- figure('Name','Not Kwadrat');
- imshow(~kwadrat);
- figure('Name','AND')
- imshow(kolo & kwadrat);
- figure('Name','OR');
- imshow(kolo | kwadrat);
- figure('Name','XOR');
- x = xor(kolo,kwadrat);
- imshow(x);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement