Politechnika Świętokrzyska. Laboratorium. Przetwarzanie obrazów medycznych. Ćwiczenie 12. Wykorzystanie transformacji Radona i Hougha.

Podobne dokumenty
Politechnika Świętokrzyska. Laboratorium. Cyfrowe przetwarzanie sygnałów. Ćwiczenie 6. Transformata cosinusowa. Krótkookresowa transformata Fouriera.

Informatyka I stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny) kierunkowy (podstawowy / kierunkowy / inny HES)

Elektronika i Telekomunikacja I stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny)

Cyfrowe przetwarzanie obrazów i sygnałów Wykład 9 AiR III

Odczytywanie i zapisywanie obrazów rastrowych do plików, operacje punktowe na tablicach obrazów

Politechnika Świętokrzyska. Laboratorium. Cyfrowe przetwarzanie sygnałów. Ćwiczenie 8. Filtracja uśredniająca i statystyczna.

Komunikacja Człowiek-Komputer

Ćwiczenie 4. Filtry o skończonej odpowiedzi impulsowej (SOI)

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

PRZEWODNIK PO PRZEDMIOCIE

Laboratorium. Cyfrowe przetwarzanie sygnałów. Ćwiczenie 9. Przetwarzanie sygnałów wizyjnych. Politechnika Świętokrzyska.

9. Dyskretna transformata Fouriera algorytm FFT

Cyfrowe Przetwarzanie Obrazów i Sygnałów

Opis efektów kształcenia dla modułu zajęć

Teoria sygnałów Signal Theory. Elektrotechnika I stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny)

Obraz jako funkcja Przekształcenia geometryczne

Przetwarzanie obrazów rastrowych macierzą konwolucji

Dyskretne układy liniowe. Funkcja splotu. Równania różnicowe. Transform

PRZEWODNIK PO PRZEDMIOCIE

Analiza obrazu. wykład 1. Marek Jan Kasprowicz Uniwersytet Rolniczy Marek Jan Kasprowicz Analiza obrazu komputerowego 2009 r.

Zygmunt Wróbel i Robert Koprowski. Praktyka przetwarzania obrazów w programie Matlab

Obraz cyfrowy. Radosław Mantiuk. Wydział Informatyki Zachodniopomorski Uniwersytet Technologiczny w Szczecinie

2. Próbkowanie Sygnały okresowe (16). Trygonometryczny szereg Fouriera (17). Częstotliwość Nyquista (20).

PRZEWODNIK PO PRZEDMIOCIE

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

Laboratorium Przetwarzania Sygnałów Biomedycznych

Cyfrowe przetwarzanie sygnałów. Wykład 10. Transformata cosinusowa. Falki. Transformata falkowa. dr inż. Robert Kazała

PRZEWODNIK PO PRZEDMIOCIE

Politechnika Łódzka. Instytut Systemów Inżynierii Elektrycznej

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

AiR_CPS_1/3 Cyfrowe przetwarzanie sygnałów Digital Signal Processing

Cyfrowe Przetwarzanie Obrazów i Sygnałów

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

Techniki Jądrowe w Diagnostyce i Terapii Medycznej

KARTA PRZEDMIOTU. Kod przedmiotu Nazwa przedmiotu w języku. M INF _05.15 Analiza obrazów medycznych Analysis of medical images. polskim angielskim

przedmiot kierunkowy (podstawowy / kierunkowy / inny HES) obieralny (obowiązkowy / nieobowiązkowy) polski semestr VI

Spośród licznych filtrów nieliniowych najlepszymi właściwościami odznacza się filtr medianowy prosty i skuteczny.

DYSKRETNA TRANSFORMACJA FOURIERA

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej. Instrukcja do zajęć laboratoryjnych z przedmiotu:

Ćwiczenia z przetwarzania tablic 2D

Ćwiczenie 12/13. Komputerowy hologram Fouriera. Wprowadzenie teoretyczne

Ćwiczenie 11. Wprowadzenie teoretyczne

Laboratorium Przetwarzania Sygnałów

Ćwiczenie 3. Właściwości przekształcenia Fouriera

Podstawy biblioteki Matplotlib

Wprowadzenie do Python

E-I2G-2008-s1. Informatyka II stopień (I stopień / II stopień) Ogólnoakademicki (ogólno akademicki / praktyczny)

Analiza obrazów - sprawozdanie nr 2

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

CYFROWE PRZETWARZANIE SYGNAŁÓW

Diagnostyka obrazowa

Próbkowanie (ang. sampling) - kwantyzacja. Rastrowa reprezentacja obrazu 2D. Generowanie obrazu rastrowego 2D. Próbkowanie i integracja

Dane obrazowe. R. Robert Gajewski omklnx.il.pw.edu.pl/~rgajewski

Przetwarzanie obrazu

Rok akademicki: 2017/2018 Kod: RIA s Punkty ECTS: 2. Poziom studiów: Studia I stopnia Forma i tryb studiów: Stacjonarne

Laboratorium Przetwarzania Sygnałów Biomedycznych

Ćwiczenie 6. Transformacje skali szarości obrazów

Przetwarzanie sygnałów

Egzamin / zaliczenie na ocenę*

FFT i dyskretny splot. Aplikacje w DSP

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania. Podstawy Automatyki

BIBLIOTEKA NUMPY, CZĘŚĆ 1

Politechnika Łódzka. Instytut Systemów Inżynierii Elektrycznej

Politechnika Łódzka. Instytut Systemów Inżynierii Elektrycznej. Laboratorium cyfrowej techniki pomiarowej. Ćwiczenie 3

1. Synteza automatów Moore a i Mealy realizujących zadane przekształcenie 2. Transformacja automatu Moore a w automat Mealy i odwrotnie

Laboratorium Cyfrowego Przetwarzania Obrazów

Laboratorium Cyfrowego Przetwarzania Obrazów

Diagnostyka obrazowa

Obrazowanie rentgenowskie. tomografia, mikroskopia, kontrast fazowy

Przetwarzanie i transmisja danych multimedialnych. Wykład 7 Transformaty i kodowanie. Przemysław Sękalski.

Diagnostyka obrazowa

Układy i Systemy Elektromedyczne

Analizy Ilościowe EEG QEEG

System Labview The Labview System. Elektrotechnika II stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny)

Według raportu ISO z 1988 roku algorytm JPEG składa się z następujących kroków: 0.5, = V i, j. /Q i, j

PROCESORY SYGNAŁOWE - LABORATORIUM. Ćwiczenie nr 04

Podstawy OpenCL część 2

Przekształcenia widmowe Transformata Fouriera. Adam Wojciechowski

INSTYTUT CYBERNETYKI TECHNICZNEJ POLITECHNIKI WROCŁAWSKIEJ ZAKŁAD SZTUCZNEJ INTELIGENCJI I AUTOMATÓW

Transformata Fouriera i analiza spektralna

BIBLIOTEKA PROGRAMU R - BIOPS. Narzędzia Informatyczne w Badaniach Naukowych Katarzyna Bernat

Przekształcenia kontekstowe. Filtry nieliniowe Typowy przykład usuwania zakłóceń z obrazu

Filtracja nieliniowa obrazu

Jacek Lesiak 1, Leszek Królicki 2

Ćwiczenie 6 Projektowanie filtrów cyfrowych o skończonej i nieskończonej odpowiedzi impulsowej

Rekonstrukcja obrazu (Image restoration)

Laboratorium Przetwarzania Sygnałów Biomedycznych

Zastowowanie transformacji Fouriera w cyfrowym przetwarzaniu sygnałów

Kompresja dźwięku w standardzie MPEG-1

Informatyki i Nauki o Materiałach. Informatyczne systemy dla medycyny. Tomografia komputerowa, rekonstrukcja, przetwarzanie obrazów

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

PL B BUP 16/04. Kleczkowski Piotr,Kraków,PL WUP 04/09

Laboratorium. Cyfrowe przetwarzanie sygnałów. Ćwiczenie 11. Filtracja sygnałów wizyjnych

ĆWICZENIE III ANALIZA WIDMOWA SYGNAŁÓW DYSKRETNYCH. ver.3

EKSTRAKCJA CECH TWARZY ZA POMOCĄ TRANSFORMATY FALKOWEJ

Przetwarzanie sygnałów z zastosowaniem procesorów sygnałowych - opis przedmiotu

Przekształcenie Fouriera i splot

Transkrypt:

Politechnika Świętokrzyska Laboratorium Przetwarzanie obrazów medycznych Ćwiczenie 12 Wykorzystanie transformacji Radona i Hougha. Cel ćwiczenia Celem ćwiczenia jest nabycie umiejętności wykorzystywania transformacji Rodona i Hougha do rekonstrukcji obrazów i wykrywania linii. dr inż Robert Kazała

Wprowadzenie Sinogram jest tablicą danych uzyskanych podczas tomografii komputerowej (np. PET). Uzyskuje się go poprzez zapisanie w wierszach tabeli kolejnych wyników projekcji (każda projekcja wykonywana jest pod innym kątem). Nazwa 'sinogram' wywodzi się od sinusoidalnego wyglądu zmian intensywności przedstawionych w tej tablicy. Sinogram nie jest wykorzystywany do diagnostyki, na jego podstawie w wyniku procesu rekonstrukcji uzyskiwany jest obraz przekroju badanego obiektu. Do odtwarzania wykorzystywana jest odwrotna transformata Radona. Sinogram mozna utworzyć dla dowolnego zarejestrowanego obrazu wykonując transformację Radona. W celu rekonstrukcji obrazu wykorzystywane jest odwrotne przekształcenie Radona. Obrazy testowe - Shepp-Logan phantom W celu ułatwienia rozwoju i zapewnienia możliwości porównania algorytmów rekonstrukcji wykorzystuje się specjalne obrazy testowe o znanych właściwościach. Jednym z najczęściej wykorzystywanych jest Shepp-Logan phantom przypominający przekrój ludzkiej głowy, zawierający elipsy z różnymi stopniami pochłaniania. Shepp Logan phantom Radon transform Inverse Radon transform Transformacja Radona Funkcje modułu scikits-image realizujące prostą i odwrotną transformatę Radona. radon skimage.transform.radon(image, theta=none) Funkcja wyliczająca transformatę Radona obrazu dla określonych kątów projekcji.

Parametry wejściowe: image obraz wejściowy theta kąty projekcji w stopniach (domyslnie np.arange(180)) Wyjście : output transformata Radona (sinogram) iradon skimage.transform.iradon(radon_image, theta=none, output_size=none, filter='ramp', interpolation='linear') Funkcja wyznaczająca odwrotną transformatę Radona, wykorzystująca algorytm filtrowanej projekcji wstecznej (ang. filtered back projection algorithm) Parametry wejściowe: radon_image obraz zawierający sinogram, w którym każda kolumna odpowiada projekcji wzdłuż innego kąta, theta kąty pod jakimi dokonywana jest rekonstrukcja, domyślnie od 1 do 180 stopni output_size liczba wierszy i kolumn w rekonstruowanym obrazie, filter filtr stosowany do filtrowania w dziedzinie częstotliwości, dostępne filtry to ramp, shepp-logan, cosine, hamming, hann, interpolation metoda interpolacji stosowana w rekonstrukcji, dostępne metody to nearest, linear. Wyjście : output zrekonstruowany obraz frt2 skimage.transform.frt2(a) Funkcja wyliczająca 2-wymiarową skończoną transformatę Radona (FRT) dla tablicy liczb całkowitych o rozmiarze nxn. Parametry wejściowe: a tablica liczb całkowitych o wymiarach nxn Wyjście: tablica zawierająca współczynniki transformaty o wymiarach (n+1) x n.

ifrt2 skimage.transform.ifrt2(a) Funkcja wyliczająca 2-wymiarową odwrotną skończoną transformatę Radona dla tablicy o wymiarach (n+1) x n. Parametry wejściowe: a tablica wejściowa o wymiarach (n+1) x n Wyjście : output - tablica o wymiarach nxn Przykład Przykład pokazujący wykorzystanie transformat Radona. import matplotlib.pyplot as plt from skimage.io import imread from skimage import data_dir from skimage.transform import radon, iradon image = imread(data_dir + "/phantom.png", as_grey=true) #image = rescale(image, scale=0.4) plt.figure(figsize=(8, 8.5)) plt.subplot(221) plt.title("original"); plt.imshow(image, cmap=plt.cm.greys_r) plt.subplot(222) projections = radon(image, theta=[0, 45, 90]) plt.plot(projections); plt.title("projections at\n0, 45 and 90 degrees") plt.xlabel("projection axis"); plt.ylabel("intensity"); projections = radon(image) plt.subplot(223) plt.title("radon transform\n(sinogram)"); plt.xlabel("projection axis"); plt.ylabel("intensity"); plt.imshow(projections) reconstruction = iradon(projections) plt.subplot(224) plt.title("reconstruction\nfrom sinogram") plt.imshow(reconstruction, cmap=plt.cm.greys_r) plt.subplots_adjust(hspace=0.4, wspace=0.5) plt.show()

Transformacja Hougha Transformacja Hougha (ang. Hough transform) jest szczególnym przypadkiem transformaty Radona i wykorzystywana jest do wykrywania regularnych kształtów w obrazach. Oryginalna metoda Hougha służy do wykrywania prostych. Metodę tę później uogólniono na wykrywanie kształtów dających się opisać analitycznie np. okręgów oraz na wykrywanie dowolnych kształtów. Funkcje modułu scikit-image realizujące transformatę Hougha. hough_circle hough_ellipse hough_line hough_line_peaks Przykład Przykład pokazujący wykorzystanie transformaty Hougha import numpy as np import matplotlib.pyplot as plt from skimage.transform import hough img = np.zeros((100, 150), dtype=bool) img[30, :] = 1 img[:, 65] = 1 img[35:45, 35:50] = 1 for i in range(90): img[i, i] = 1 img += np.random.random(img.shape) > 0.95 out, angles, d = hough(img) plt.subplot(1, 2, 1) plt.imshow(img, cmap=plt.cm.gray) plt.title('input image') plt.subplot(1, 2, 2) plt.imshow(out, cmap=plt.cm.bone, extent=(d[0], d[-1],

np.rad2deg(angles[0]), np.rad2deg(angles[-1]))) plt.title('hough transform') plt.xlabel('angle (degree)') plt.ylabel('distance (pixel)') plt.subplots_adjust(wspace=0.4) plt.show() Literatura Lyons R. G.: Wprowadzenie do cyfrowego przetwarzania sygnałów, WKŁ, Warszawa 1999. Oppenheim A. V., Schafer R. W.: Cyfrowe przetwarzanie sygnałów, WKŁ, Warszawa 1976. Tadeusiewicz R., Korohoda P.: Komputerowa analiza i przetwarzanie obrazów, Społeczeństwo Globalnej Informacji, Kraków 1997. Zadania 1. Uruchomić i zmodyfikować przykład transformaty znajdujące się w instrukcji. 2. Dla przykładu transformaty Radona znajdującego się w instrukcji dokonać transformaty i rekonstrukcji dla różnych wartości kątów projekcji. 3. Wykonać transformację Rodona dla własnych obrazów. 4. Dla własnych obrazów testowych wykorzystać transformację Hougha do wyznaczenia linii o okręgów w obrazie.