12.07.2015 Views

sprawozdanie nr 1 - Fatcat

sprawozdanie nr 1 - Fatcat

sprawozdanie nr 1 - Fatcat

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Krystian Hodurek – Ćwiczenie 1Temat: Wyszukiwanie podobnych elementów obrazu metodą szybkiejtransformacji FourieraCelem ćwiczenia było rozpoznanie takich samych elementów na obrazku/zdjęciu stosującszybką transformatę Fouriera. Pomocą w odpowiednich przekształceniach były funkcję ztoolbox’a Image Processing pakietu MATLAB 7.1.Elementami wyszukiwanymi były w obu przypadkach monety. Pierwszym etapem byłowczytanie obrazka do programu. Za pomocą funkcji Imcrop został wybrany wzorzec dowyszukiwaniu na zdjęciu. W celu polepszenia procesu wyszukiwania. Użycie funkcji Edgewyodrębniło, we wzorcu oraz źródle, krawędzie. Użycie funkcji do obliczeń transformatFouriera – fft2 do wzorca źródła, oraz przemnożenie elementów obu macierzy obrazów przezsiebie pozwoliło wyznaczyć najbardziej „intensywne” elementy na obrazku. Przez wybórmaksymalnych wartości z powstałej macierzy na obrazku źródłowym zostały wyznaczoneszukane elementy. W kolejnym etapie przy tej samych ustawieniach, obraz źródłowy zostałzaszumiany. Efektem tego była niemożność odnalezienia szukanych wzorców na obrazie.Obraz źródłowy


Obraz źródłowy nie jest w oryginalnym rozmiarze. Ponadto podczas wczytywania doprogramy Matlab, aby utworzone macierze były kwadratowe został on również „obcięty”.Obraz wzorcowyObraz wzorcowy po powiększeniu jest „rozmazany”.Po „wyeksponowaniu” krawędzi:Dokładniej przyglądając się obrazkowi źródłowemu z wyraźnymi krawędziami możnazauważyć iż elementy wyglądające podobnie do siebie na zdjęciu oryginalnym dosyćznacznie się od siebie różnią. Efekt ten zdecydował o dosyć dużej tolerancji przy wyborze


maksymalnych wartości z macierzy po transformacji. Jest to uwidocznione w ostatnichlinijkach kodu.WynikAnalizując wyniki wyszukiwania zauważamy że pomimo ustawienia dosyć dużej tolerancjijedna z monet nie została odnaleziona. Świadczy to jak bardzo złożony jest obraz, co możnarównież zauważyć we wcześniej wyznaczonych krawędziach.Korzystając z funkcji fspecial oraz imfilter obraz został zaszumiany.


Przeprowadzając podobną procedurę, przy tej samej „tolerancji” otrzymany wynik już niepozwala poprawnie zidentyfikować elementów obrazu.


Wynik jest ciągiem przypadkowych elementów w miejscach pojawiania się monet różnegorodzaju.Kod źródłowyclear alltemp = imread('18.gif');%wielkosc obrazka 1185 x 1314obraz = temp(158:595,1:438);%wielkosc obrazka 1185 x 1185zrodlo = imcrop(obraz);H = fspecial('disk',10);obraz = imfilter(obraz,H,'replicate');imshow(obraz);pauseclosefigure, imshow(zrodlo);pauseclosekr_obraz = edge(obraz,'prewitt');kr_zrodlo = edge(zrodlo,'prewitt');imshow(kr_obraz);pauseclose


imshow(kr_zrodlo);pausecloseC = real(ifft2(fft2(kr_obraz) .* fft2(rot90(kr_zrodlo,2),438,438)));figure, imshow(C,[]);war_thresh = max(C(:))thresh = war_thresh-(war_thresh*0.75);figure, imshow(C > thresh);

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!