Program do rekonstrukcji obrazu z tomografu komputerowego z ...

43
Kraków 2011 WYDZIAŁ ELEKTROTECHNIKI, AUTOMATYKI, INFORMATYKI I ELEKTRONIKI KATEDRA ELEKTRONIKI Projekt dyplomowy inżynierski Program do rekonstrukcji obrazu z tomografu komputerowego z zastosowaniem transformacji Radona. A software tool for tomographic image reconstruction using Radon transform. Imię i nazwisko Łukasz Mitka Kierunek studiów Elektronika i Telekomunikacja Opiekun pracy dr inż. Jakub Gałka

Transcript of Program do rekonstrukcji obrazu z tomografu komputerowego z ...

Page 1: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

Kraków 2011

WYDZIAŁ ELEKTROTECHNIKI, AUTOMATYKI,

INFORMATYKI I ELEKTRONIKI

KATEDRA ELEKTRONIKI

Projekt dyplomowy

inżynierski

Program do rekonstrukcji obrazu z tomografu komputerowego

z zastosowaniem transformacji Radona.

A software tool for tomographic image reconstruction using

Radon transform.

Imię i nazwisko Łukasz Mitka

Kierunek studiów Elektronika i Telekomunikacja

Opiekun pracy dr inż. Jakub Gałka

Page 2: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

2

Kraków, 7 styczeń 2011

Imię i nazwisko: Łukasz Mitka

Nr albumu: 212781

Kierunek studiów: Elektronika i Telekomunikacja

OŚWIADCZENIE

Oświadczam, świadomy odpowiedzialności karnej za poświadczenie nieprawdy, że

niniejszą pracę dyplomową wykonałem osobiście i samodzielnie i że nie korzystałem ze

źródeł innych niż wymienione w pracy.

Jednocześnie oświadczam, że dokumentacja projektu inżynierskiego nie narusza praw

autorskich w rozumieniu ustawy z dnia 4 lutego 1994 roku o prawie autorskim i prawach

pokrewnych (Dz. U. z 2006 r. Nr 90 poz. 631 z późniejszymi zmianami) oraz dóbr osobistych

chronionych prawem cywilnym. Nie zawiera ona również danych i informacji, które

uzyskałam w sposób niedozwolony. Wersja dokumentacji dołączona przeze mnie na nośniku

elektronicznym jest w pełni zgodna z wydrukiem przedstawionym do recenzji.

Zaświadczam także, że niniejszy projekt inżynierski nie był wcześniej podstawą żadnej

innej urzędowej procedury związanej z nadawaniem dyplomów wyższej uczelni lub tytułów

zawodowych.

Łukasz Mitka

………………………………..

Page 3: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

3

I. Spis treści

I. Spis treści ............................................................................................................ 3

II. Wstęp .................................................................................................................. 4

III. Tomografia komputerowa .................................................................................... 5

1. Historia ............................................................................................................. 5

2. Zasada działania tomografu .............................................................................. 6

3. Konstrukcja tomografów ................................................................................... 8

4. Generacje tomografów ...................................................................................... 9

5. Rekonstrukcja obrazu...................................................................................... 11

6. Tomogramy .................................................................................................... 16

IV. Realizacja projektu ............................................................................................ 19

1. Założenia i wybór metody ............................................................................... 19

2. Filtrowana projekcja wsteczna ........................................................................ 19

3. Wykonanie w środowisku MATLAB .............................................................. 23

4. Interfejs użytkownika...................................................................................... 25

V. Rekonstrukcja obrazu z syntetycznych danych ................................................... 28

1. Generacja danych pomiarowych ..................................................................... 28

2. Odtworzenie obrazu z wygenerowanych danych ............................................. 29

3. Wpływ zmiennych na jakość rekonstrukcji ..................................................... 31

VI. Podsumowanie ................................................................................................... 40

VII. Bibliografia........................................................................................................ 41

VIII. Załączniki .......................................................................................................... 42

1. irad.m ............................................................................................................. 42

Page 4: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

4

II. Wstęp

Tomografia komputerowa jest jednym z podstawowych narzędzi diagnostycznych

stosowanych we współczesnej medycynie. Pozwala na zobrazowanie wnętrza ludzkiego ciała

w sposób bezbolesny i nieinwazyjny. Medycyna nie jest oczywiście jedyną płaszczyzną

wykorzystującą tę metodę obrazowania. Znalazła ona również zastosowanie w przemyśle,

np. wykorzystywana jest do kontroli jakości.

Otrzymanie obrazu z tomografu jest skomplikowanym procesem, a jego opracowanie

zajęło wiele lat. Jednym z jego kluczowych etapów jest rekonstrukcja obrazu – przetworzenie

danych z pojedynczych prześwietleń w graficzną reprezentację przekroju. Faza ta jest

tematem tej pracy. Wybór tematu związany był z zainteresowaniem na temat działania

tomografu komputerowego, a praca nad projektem dała możliwość pogłębienia znajomości

tego zagadnienia. Nie bez znaczenia była także rola, jaką odgrywa tomografia

we współczesnej medycynie.

Celem projektu było stworzenie oprogramowania umożliwiającego rekonstrukcję

obrazu tomograficznego. Jako dane wejściowe przyjęto informacje o pochłanianym przez

próbkę promieniowaniu. Wykonanie projektu oparte zostało na metodzie filtrowanej projekcji

wstecznej, która jest jedną z dyskretnych realizacji odwrotnej transformacji Radon. Program

napisany został w środowisku MATLAB. Dodatkowo utworzono graficzny interfejs

ułatwiający użytkownikowi korzystanie z programu. W interfejsie możliwe jest, między

innymi, przeprowadzenie symulacji procesu prześwietlania oraz rekonstrukcja obrazu

z powstałych w ten sposób danych.

Początkowe rozdziały poświęcone zostały podstawowym informacjom dotyczącym

tomografów komputerowych. Wprowadzenie to ma na celu zarysowanie historii tomografii,

metod podziału oraz wyjaśnienie zasady działania i konstrukcji tomografów. Wiadomości

te przydatne są w zrozumieniu zagadnienia rekonstrukcji obrazu z tomografu

komputerowego. Podrozdział Rekonstrukcja obrazu przybliża podstawowe metody realizacji

tytułowego procesu. W rozdziale IV opisane są założenia projektowe oraz metoda realizacji

wykonanego programu. Rozdział ostatni jest prezentacją działania wykonanego

oprogramowania oraz jego analizą jakościową.

Page 5: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

5

III. Tomografia komputerowa

1. Historia [1]

Powstanie tomografii komputerowej jest ogromnym sukcesem. Rozdział ten

poświęcono najważniejszym faktom i osobom związanym ze stworzeniem i udoskonaleniem

tego urządzenia.

Podstawy tej metody badania można znaleźć już w 1895 roku, kiedy to Röentgen

opublikował swoje odkrycie związane z promieniowaniem rentgenowskim. Przy pomocy

lampy katodowej oraz bardzo wysokich napięć (40-60kV) udało mu się przypadkiem

wytworzyć niespotykane do tej pory promieniowanie, które przenikało przez materię stojącą

na jego drodze. Zaobserwował on także podstawowe własności tego promieniowania:

zależność od grubości i gęstości prześwietlanego obiektu oraz zdolność do zaczernienia kliszy

fotograficznej. Ostatnią właściwość została następnie wykorzystana do utrwalania obrazów

z prześwietlanych przedmiotów. Dzięki swoim właściwościom promieniowanie to stało się

idealnym sposobem do nieinwazyjnego zobrazowania wnętrza ludzkiego organizmu.

Odkrycie to i możliwości nowopoznanego promieniowania w błyskawicznym tempie stały się

powszechnie znane. Jego znaczenie zostało podkreślone poprzez uhonorowanie Röentgena

Nagrodą Nobla z dziedziny fizyki w 1901.

W niedługiej przyszłości zdano sobie sprawę z niedoskonałości tej metody i podjęto

próby uzyskania lepszego wglądu w ludzkie ciało. Jednym z wykorzystywanych sposobów

były zdjęcia stereoskopowe dające złudzenie trójwymiarowości oglądanego obrazu. Nie

dawały one jednak zadawalających rezultatów, co niejako zmusiło do dalszych prac nad

obrazowaniem wnętrza ludzkiego ciała.

Jedną z ważniejszych osób, które przyczyniły się do stworzenia tomografii

komputerowej był Johann Radon. W 1917 roku przedstawił on transformację całkową, która

jest matematyczną podstawą tomografii. Stworzył on także transformację odwrotną, która

teoretycznie umożliwia odwrócenie procesu – rekonstrukcję obrazu [5].

Do stworzenia tomografu komputerowego przyczynił się także rozwój elektroniki.

Umożliwiła ona zbudowanie wydajnych i niezawodnych maszyn liczących. Komputery były

potrzebne ze względu na złożony obliczeniowo proces rekonstrukcji obrazu.

Osobami bezpośrednio odpowiedzialnymi za stworzenie tomografu komputerowego

są Allan McLeod Cormack i Godfrey N. Hounsfield – obaj uhonorowani wspólną Nagrodą

Page 6: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

6

Nobla w dziedzinie fizyki (1975) [1]. Istotny jest fakt, iż pracowali niezależne od siebie.

Cormack prowadził badania na Uniwersytecie w Harwardzie. W 1956 zajął się rekonstrukcją

obrazu z prześwietleń rentgenowskich. W 1963 roku skonstruował urządzenie tomograficzne

służące mu do dalszych badań. Dla Cormack’a najważniejsze było stworzenia samego

urządzenia, a nie zastosowanie go w praktyce. Dopiero w 1967 roku Hounsfield rozpoczął

własną pracę nad tą tematyką. Ogromnym postępem było zastosowanie przez niego

komputera, który wykonywał skomplikowane obliczenia matematyczne. W 1968 roku

opatentował działające urządzenie, a w 1971 roku zainstalowano pierwszy tomograf

komputerowy EMI Mark I. Urządzenie to było bardzo niedoskonałe – czas skanowania

to ok. 4,5 minuty, a rozdzielczość obrazu wynosiła 80x80 pikseli.

W najbliższym czasie nastąpił bardzo szybki postęp w dziedzinie tomografii.

Poprawiono ich parametry oraz prędkość działania. EMI Ltd. przestała być jedyną firmą

produkującą takie urządzenia. Konkurencja przyczyniła się do dalszego rozwoju, stosunkowo

szybko pojawiły się urządzenia z wachlarzową wiązką promieniowania, a po kilkunastu

latach stworzono tomograf spiralny. Następnym krokiem w rozwoju tomografii było

zwiększanie liczby warstw, które tomograf spiralny prześwietlał przy jednym skoku.

2. Zasada działania tomografu

Działanie tomografu opiera się na próbie odtworzenia wewnętrznej struktury

prześwietlanego obiektu, poprzez zobrazowanie jego przekroju. Nie jest możliwe pozyskanie

takiego obrazu w sposób bezpośredni. Aby go otrzymać konieczne jest wykonanie serii

prześwietleń równoległych do obrazowanego przekroju. Prześwietlenia te obrazują ilość

Rys. 1 Schemat przedstawiający budowę pierwszego tomografu, tzw. EMI scanner.

1 - lampa rentgenowska, 2 - detektor odniesienia, 3 - obrotowy statyw, 4 – woda, 5 -

podpórka pod głowę, 6 – detektory, 7 - miejsce na głowę, 8 - przesłona gumowa [2]

Page 7: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

7

pochłanianego promieniowania na drodze padających promieni. Ilość pochłanianego

promieniowania określa wzór (1).

( ) ( ) ∫ ( )

(1)

gdzie:

( ) – natężenie promieniowania po przejściu drogi S,

( ) – natężenie początkowe promieniowania,

( ) – funkcja opisująca przestrzenny rozkład pochłania promieniowania.

Stąd można określić związek opisujący projekcję jako:

( ) ( ( )

( )) ∫ ( )

(2)

gdzie:

( ) – Wartość projekcji dla wiązki równoległej po przejściu drogi S.

Rys. 2 Pomiar pochłaniania promieniowania dla wiązki równoległej [3 za A.Rosenfeld, A. C. Kak, Digital Picture Processing, 2nd ed. New York, NY: Academic Press, 1982]

Page 8: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

8

Kolejnym krokiem jest przetworzenie zebranych danych i odtworzenie przekroju –

obrazu reprezentującego stopień pochłaniania promieniowania w danym miejscu. Tak

zrekonstruowany obraz może być już wykorzystany, np. w celach diagnostycznych. Następną

fazą jest przesunięcie prześwietlanego obiektu w płaszczyźnie horyzontalnej i wykonanie

kolejnego przekroju.

3. Konstrukcja tomografów

W skład tomografu komputerowego możemy wliczyć lampę rentgenowska, urządzenia

zbierające dane, komputery je przetwarzające, system zasilania, urządzenie wyświetlające

oraz system archiwizacji danych.

Rys. 3 Schemat budowy rentgenowskiego tomografu komputerowego [4]

Promieniowanie X zostaje wytworzone w lampie rentgenowskiej, a następnie

formowane jest w odpowiednią wiązkę przez kolimator1. Rodzaj wiązki zależy od generacji

tomografu, w którym jest używana. Następnie promienie przenikają przez badany obiekt.

Promieniowanie jest osłabiane zależnie od parametrów materiału przez który przechodzi.

Na końcu wiązka rejestrowana zostaje przez detektory odpowiedzialne za zbieranie danych.

Matryca detektorów służy do zamiany natężenia promieniowania rentgenowskiego na sygnał

elektryczny. W tej postaci może zostać poddany cyfrowej obróbce. Lampa oraz detektory

mieszczą się wewnątrz „bramy” (gantry). W środku bramy jest otwór gdzie umieszczane

1 Kolimator – przyrząd przetwarzający padające światło lub strumień cząstek w równoległą wiązkę

(skolimowaną) lub w wiązkę o określonej zbieżności [za: Kolimator, http://pl.wikipedia.org/wiki/Kolimator,

(odwiedzona 10.12.2010)]

Page 9: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

9

są prześwietlane obiekty. Do umieszczania obiektu, np. pacjenta wewnątrz bramy, służy

ruchomy stół. Pozwala on na centrowanie obiektu oraz przesuwanie go, w celu wykonania

kolejnego przekroju. Konsola pozwala na sterowanie systemem przez operatora, a monitor

służy do wyświetlania aktualnych danych pomiarowych.

4. Generacje tomografów [1]

Sposób zbierania danych przez tomografy znacząco zmieniał się z biegiem czasu.

Proces ten determinuje możliwości oraz obszary zastosowań tomografii komputerowej. Jest

to wystarczająca przesłanka do dokonania klasyfikacji tomografów ze względu na sposób

akwizycji danych dzielący je na generacje.

I generacja

Generację I charakteryzuje prostota układu prześwietlającego i zbierającego.

Promieniowanie jest formowane w wąską, równoległą wiązkę padającą na jeden detektor.

Wykonanie projekcji polega na ruchu translacyjno-obrotowym. Lampa i detektor przesuwają

się wspólnie, aby prześwietlić na szerokość cały badany obiekt (translacja). Translacja

potrzebna jest do wykonania jednej projekcję. Następnie wykonywany jest obrót o zadany kąt

i proces prześwietlania jest powtarzany. Kolejnym etapem jest ruch stołu, prostopadły

do płaszczyzny prześwietlenia. Pozwala on na zobrazowanie kolejnego przekroju.

Rys. 4 Schemat działania tomografów I generacji [2]

Ten sposób działania tomografu jest oczywiście bardzo czasochłonny. Natomiast

budowa urządzenia tego typu jest stosunkowo prosta, tak samo jak rekonstrukcja obrazu

z danych przez niego zebranych.

II generacja

W 1972 roku pojawiła się wiązka częściowo wachlarzowa oraz zwiększona liczba

detektorów (od 3 do 52). Promieniowanie nadal obejmowało tylko fragment obserwowanego

Page 10: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

10

obiektu, dlatego stosowano metodę translacyjno-obrotową. Zmniejszono jednak liczbę

pojedynczych prześwietleń, co pozwoliło na skrócenie czasu badania.

Rys. 5 Schemat działania tomografów II generacji [2]

III generacja

W tej generacji (1976) wprowadzono przełomowe rozwiązanie, zastosowano

wachlarzową wiązkę promieniowania. Wiązkę na tyle szeroką, aby objąć cały obiekt przy

jednym prześwietleniu. Takie rozwiązanie wymagało zastosowania dużej liczby detektorów,

jednocześnie pozwala na wyeliminowanie ruchu translacyjnego, co znacznie skróciło czas

skanowania.

Rys. 6 Schemat działania tomografów III generacji [2]

IV generacja

W 1978 roku udoskonalono tomografy poprzez modyfikację matrycy detektorów.

Do tej pory poruszała się ona wraz z lampą rentgenowską. W tej generacji zastosowano

Page 11: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

11

nieruchomą matrycę detektorów umieszczoną na całym obwodzie. Poruszała się tylko lampa.

Wymagało to zastosowania bardzo dużej liczby detektorów, ale uprościło urządzenie pod

względem mechanicznym.

Rys. 7 Schemat działania tomografów IV generacji [2]

Tomografia spiralna

Kolejnym krokiem było połączenie ruchu obrotowego z jednoczesnym płynnym

przesuwaniem pacjenta. Superpozycją tych ruchów jest spirala, stąd nazwa tego rodzaju

tomografii. Początkowo zastosowano pojedynczy przekrój, zbierany z wykorzystaniem

wiązki wachlarzowej. W następnych latach wykorzystano wiązkę stożkową, co umożliwiło

wprowadzenie wieloprzekrojowej projekcji. Do zbierania danych wykorzystano

wielorzędową matrycę detektorów. Przy jej pomocy można szybko zeskanować cały badany

obszar oraz stworzyć model 3D.

5. Rekonstrukcja obrazu

Dane zebrane przez tomograf trzeba przetworzyć na postać zrozumiałą dla ludzi –

obraz. Przy pomocy algorytmów rekonstrukcyjnych odtwarzany jest przekrój skanowanego

obiektu. W tym celu można skorzystać z różnych metod. Tutaj zostaną omówione

podstawowe metody wykorzystywane przy rekonstrukcji obrazu dla równolegle padającej

wiązki promieniowania.

Metoda algebraiczna

Metoda ta polega na utworzeniu, a następnie rozwiązaniu dużej liczby niezależnych

równań. Równania tworzone są dla wszystkich pomiarów w każdej projekcji. Skanowany

obszar dzielony jest na N pól, a rekonstrukcja polega na rozwiązaniu układu równań

z N niewiadomymi. Niestety dla wysokich rozdzielczości złożoność obliczeniowa jest bardzo

Page 12: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

12

duża. Kolejną wadą tej metody jest wpływ drogi przebytej przez padający promień, w celu

jego zniwelowania konieczne jest stosowanie zestawu wag. Wagi dobierane są na podstawie

geometrii obiektu i rodzaju projekcji. Pociąga to za sobą kolejne utrudnienia, dlatego

w praktyce częściej stosowane są inne metody.

Metoda iteracyjna

Metoda iteracyjna polega na stopniowym odtwarzaniu obrazu, który będzie możliwie

podobny do rzeczywistego. Podobieństwo jest liczone na podstawie, np. błędu

średniokwadratowego, którego minimalizacja prowadzi do coraz wierniejszej rekonstrukcji.

Początkowo obierane jest pierwsze przybliżenie, następnie dla każdego kroku wyliczana jest

wartość korekty. Przykładowy przebieg pokazany został na Rys. 8.

Rys. 8 Zasada działania metody iteracyjnej [2]

Metody analityczne

Metody analityczne są obecnie najbardziej rozpowszechnionymi rozwiązaniami

dającymi bardzo dobre rezultaty. Jednocześnie są one bardziej skomplikowane obliczeniowo

od pozostałych przedstawionych tutaj metod. Należy jednak zaznaczyć, że moc obliczeniowa

współczesnych komputerów jest wystarczając, aby poradzić sobie z tym zadaniem.

Page 13: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

13

Zasada działania tych metod opiera się na matematycznym opisie zjawisk zachodzących

podczas projekcji oraz na odwróceniu tego procesu przy pomocy odpowiednich

przekształceń. Do metod analitycznych zaliczamy metodę wykorzystującą teorię przekroju

Fouriera oraz filtrowaną wsteczną projekcję.

Transformacja Radona

Transformacja Radona jest matematycznym opisem procesu projekcji. Funkcję rzutu

można przedstawić jako

( ) ∫ ∫ ( ) ( )

(3)

gdzie:

( ) – funkcja opisująca przestrzenny rozkład pochłania promieniowania,

-dystrybucja delta Diraca,

– kąt prześwietlenia,

– przesunięcie względem środka,

– współrzędne punktu przeniesione do układu współrzędnych projekcji,

( ) – wartość funkcji rzutu dla kąta ϕ, i przesunięcia t.

Odwrotna transformacja Radona opisana jest wzorem (4).

( ) ( ( ))

∫ ∫

( ( ))

( )

(4)

gdzie:

( ) – szukana funkcja reprezentująca rozkład pochłaniania promieniowania,

– Odwrotna transformacja Radona,

– pochodna kierunkowa po zmiennej t.

Przy pomocy wzoru (4) możliwe jest odtworzenie funkcji pochłaniania. W praktyce

jednak nie stosuje się tego wzoru lecz jego dyskretne odpowiedniki. Na podstawie odwrotnej

transformacji Radon zostały stworzone opisane dalej metody analityczne.

Teoria przekroju Fouriera

Teoria ta mówi, iż rzutując dwuwymiarową funkcję ( ) na jednowymiarową linię

(transformacja Radona) i wykonując transformację Fouriera tej projekcji, otrzymuje się ten

Page 14: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

14

sam wynik co gdyby przyjąć tą samą funkcję ( ), wykonać na niej dwuwymiarową

transformację Fouriera i wybrać z niej przekrój równoległy do linii projekcji [6].

Zapis symboliczny przedstawionej teorii wygląda następująco:

(5)

gdzie:

F1 – jednowymiarowa transformacja Fouriera,

P1 – projekcja dwuwymiarowej funkcji na jednowymiarową prostą,

F2 – dwuwymiarowa transformacja Fouriera,

S1 – przekrój przez dwuwymiarową transformatę Fouriera.

Rys. 9 prezentuje zachodzący proces:

Rys. 9 Schemat teorii przekroju Fouriera [4]

Dla tak opisanej zależności można wyprowadzić wzór na funkcję opisującą przekrój:

( ) ( ( )) ∫ ∫ ( ) ( )

( ( )) ( )

(6)

gdzie:

( ) – jednowymiarowa transformata Fouriera funkcji rzutu (projekcji),

F1 – jednowymiarowa transformacja Fouriera,

( ) – projekcja dwuwymiarowej funkcji na prostą,

{

– zamiana układu współrzędnych,

F2 – dwuwymiarowa transformacja Fouriera,

( ) – funkcja osłabienia promieniowania,

( ) – dwuwymiarowa transformata Fouriera funkcji ( ), uzyskana

z jednowymiarowych transformacji projekcji.

Page 15: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

15

Stąd przy pomocy wzoru na odwrotną dwuwymiarową transformację Fouriera można

wyznaczyć:

( ) ∫ ∫ ( ) ( )

(7)

Wzór ten jest prawdziwy dla nieskończonej ilości prześwietleń. Nie jest to jednak

możliwe do zrealizowania, dlatego funkcja ( ) ma bardzo dużo elementów w zakresie

niskich częstotliwości, mało dla wysokich. Konieczne jest stosowanie interpolacji dla

brakujących fragmentów. To poważna wada tej metody, ponieważ daje niepoprawne wyniki

rekonstrukcji, obserwowane jako efekt rozmycia na obrazie przekroju.

Filtrowana projekcja wsteczna

Wykorzystanie teorii przekroju Fouriera nie przynosi oczekiwanych rezultatów, dlatego

konieczne jest wprowadzenie modyfikacji w tej metodzie. Problemem są niedokładności

w reprezentacji wysokich częstotliwości – wspomniany wcześniej efekt rozmycia. W celu

jego usunięcia, należy połączyć teorię przekroju Fouriera z transformacją Radona. W ten

sposób można wyprowadzić wzory zakładające dodatkową filtrację projekcji.

( ) ∫ ∫ ( )| | ( )

∫ (| | ( ))

∫ (| |) ( )

(8)

gdzie:

( ) – szukana funkcja osłabienia promieniowania,

( ) – transformata projekcji funkcji szukanej,

– współrzędne punktu przeniesione do układu współrzędnych projekcji,

– odwrotna transformacja Fouriera.

Na podstawie tego wzoru widać, iż uzyskane projekcje są poddawane filtracji

z modułem pulsacji. Filtr ten można przedstawić jako

( ) ( ( )) ∫| |

(9)

gdzie:

( ) – odpowiedź impulsowa filtru w dziedzinie przestrzeni.

Page 16: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

16

Z jego pomocą można przedstawić szukaną funkcję jako

( ) ∫ ∫ ( ) ( )

(10)

6. Tomogramy

Tomogram to obraz powstały w procesie rekonstrukcji danych z tomografu

komputerowego. Obraz podzielony jest na pixele – najmniejsze jego elementy. Każdy pixel

w obrazie reprezentuje najmniejszą objętość voxel. Do każdego voxela przypisywana jest

liczba opisująca stopień pochłaniania promieniowania rentgenowskiego. Idea voxeli wynika

z faktu, iż wiązka promieniowania ma skończoną grubość, więc detektory rejestrują ilość

promieniowania pochłoniętego przez objętość na drodze padającego promienia.

Przykładowy tomogram zaprezentowano na Rys. 10. Przedstawia on przekrój jamy

brzusznej, a wykonany został przy użyciu tomografu GE HiSpeed NX/i.

Wyliczane w procesie rekonstrukcji obrazu współczynniki przeliczane są na skalę

Hounsfielda.

(11)

gdzie:

HU – wartość pochłaniania w skali Hounsfielda,

Rys. 10 Jama brzuszna [8]

Page 17: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

17

– zmierzone osłabienie promieniowania,

– osłabienie promieniowania dla wody.

Skala ta pozwala na łatwą reprezentację zmierzonych danych w odniesieniu do wody,

która jest podstawowym składnikiem tkanek zwierzęcych.

W obrazowaniu biomedycznym stosowana jest także metoda okien. Polega ona

na wyborze przedziału wartości HU, który będzie prezentowany na tomogramie. Wybór

dotyczy środka okna (L) oraz jego szerokości (W). Metoda ta ma na celu poprawę jakości

wyświetlanych obrazów w zależności od stopnia pochłaniania promieniowania. Tkanki gęste

(np. kości) pochłaniają promieniowanie mocniej od rzadkich (np. płuc). Ich prezentacja ich

na jednym tomogramie powoduje brak wystarczającej szczegółowości dla obu przypadków.

Metoda okien pozwala na wybór zakresu prezentacji. Przykład wpływu wyboru okna

na zawartość tomogramu zaprezentowany został na Rys. 11.

Rys. 11 Różne prezentacje tego samego zbioru danych odpowiednio dla okien (L=-700, W=1000) (L=350, W=2000) (L=40, W=400) [4]

Page 18: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

18

Zagadnienie okien oraz jednostek Hounsfielda ma ważne znaczenie dla diagnostyki

medycznej. Projekt ten dotyczy jednak rekonstrukcji obrazu, dlatego zagadnienia te nie będą

poruszane w dalszej części pracy.

Page 19: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

19

IV. Realizacja projektu

1. Założenia i wybór metody

W rozdziale dotyczącym metod rekonstrukcji obrazu omówiony został związek (2)

opisujący matematyczną reprezentację procesu prześwietlania (transformacja Radona).

W celu rekonstrukcji należy odwrócić zachodzący proces. Odwrotną transformację Radona

przedstawia zależność (3). Zawarte we wzorze pochodne oraz mianownik, którego wartość

dąży do nieskończoności dla interesujących nas zmiennych, utrudniają realizację algorytmu

z wykorzystaniem (3). Lepszym rozwiązaniem opisywanego problemu jest zastosowanie

innej metody rekonstrukcji, mianowicie filtrowanej projekcji wstecznej. Jest ona tożsama

z odwrotną transformacją Radona, jednak mniej skomplikowana obliczeniowo, dlatego

właśnie została wybrana do realizacji projektu.

2. Filtrowana projekcja wsteczna

Wzór (7) jest matematycznym opisem filtrowanej projekcji wstecznej. Polega ona

na filtracji projekcji uzyskanych z tomografu i następnym ich wstecznym rzutowaniu.

Ze wzoru (7) wynika także, że filtracja może odbyć się na dwa sposoby:

filtracja w dziedzinie częstotliwości przestrzennej,

filtracja w dziedzinie przestrzeni z wykorzystaniem splotu.

W projekcie wykorzystana zostanie metoda filtracji w dziedzinie częstotliwości

przestrzennej.

Podstawy teoretyczne

Filtrowaną projekcje wsteczną można zapisać przy pomocy wzoru (12) [1].

( ) ∫ (| | ( ))

∫ (| | ( ( )))

( (| | ( ( ))))

(12)

gdzie:

( ) – dwuwymiarowa funkcja pochłaniania promieniowania,

– odwrotna transformacja Fouriera,

Page 20: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

20

| | – moduł pulsacji,

( ) – projekcja w dziedzinie częstotliwości,

– transformacja Fouriera,

( ) – projekcja (transformata Radona),

– przesunięcie względem środka, ,

– projekcja wsteczna.

Filtracja

Dobór filtru nie jest bez znaczenia. Źle dobrany filtr może nie usunąć rozmycia, albo

wzmocnić szum obecny na prześwietleniach. W podrozdziale Podstawy teoretyczne

omówiony został wzór pozwalający na rekonstrukcję obrazu. Przyjęto tam założenie,

że filtracja dokonywana jest przez moduł pulsacji. Jest to podstawowy filtr Ram-Lak

(od nazwisk autorów – Ramachandran i Lakshiminarayanan), zakłada on ograniczenie pasma

do pulsacji granicznej. Jego reprezentacja w dziedzinie częstotliwości to:

( ) {| | | | | |

(13)

gdzie:

– pulsacja graniczna, zależna od ( ).

Można także wyznaczyć odpowiedź filtru w dziedzinie przestrzeni t

( ) ( ( ))

∫ ( )

∫ | |

( ( ) (

))

(14)

gdzie:

- częstotliwość graniczna

.

Poza filtrem Ram-Lak istnieją oczywiście inne filtry np. Shepp-Logan, Hamminga, czy

niskopasmowy cosinusowy. Reprezentacja tych filtrów, w zależności od filtru Ram-Lak,

została umieszczona w Tab. 1. Należy jednak pamiętać, że mają one inne jądro

przekształcenia, przez co w odmienny sposób traktują częstotliwości zawarte w sygnale.

Page 21: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

21

Tab. 1 Zestawienie wykorzystanych filtrów

Filtr Funkcja opisująca

Shepp-Logan HSL(ω)=HRL(ω)·sinc(ω/2)

Hamming HH(ω)=HRL(ω)·(η+(1-η)cos(ω)

Niskopasmowy cosinusowy HLC(ω)=HRL(ω) cos(ω/2)

Algorytm

Dla tak sformułowanego wzoru rekonstrukcyjnego oraz filtrów możliwe jest stworzenie

algorytmu odtwarzającego obraz z projekcji. Schematyczne można go zapisać w następujący

sposób.

1. Wczytanie zestawu projekcji dla wszystkich kątów prześwietleń.

2. Utworzyć filtr.

3. Dokonać filtracji.

4. Dokonać wstecznej projekcji.

5. Przeskalować otrzymane dane.

6. Wyświetlić wynik.

Szukaną funkcję można zapisać w postaci dyskretnej jako:

( ) ( (| | ( ( )))) (15)

gdzie:

( ) – dyskretna postać funkcji osłabienia promieniowania,

( ) – dyskretna postać funkcji projekcji,

– dyskretna wartość przesunięcia w układzie, w którym wykonywana jest projekcja,

– dyskretna wartość kąta, pod którym wykonywana jest projekcja,

| | – moduł współrzędnej opisującej dziedzinę pulsacji przestrzennej,

– jednowymiarowa dyskretna transformacja Fouriera względem współrzędnej k,

– odwrotna jednowymiarowa dyskretna transformacja Fouriera.

– dyskretny operator wstecznej projekcji.

Filtracja

Filtracja odbywa się w dziedzinie częstotliwości, więc konieczne jest przekształcenie

projekcji do tej postaci przy pomocy dyskretnej transformacji Fouriera (16) [7].

Page 22: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

22

( ) ( ( )) ∑ ( )

(16)

gdzie:

( ) – dyskretne projekcje,

( ) – dyskretna transformata Fouriera projekcji.

Filtr można przedstawić jako:

( ) | | (

) (17)

gdzie:

( ) – współczynniki filtru w dziedzinie pulsacji,

– funkcja okna prostokątnego, funkcja przyjmuje wartość 1 dla | | , a 0 dla

| | .

– pulsacja graniczna.

Filtracja polega na wymnożeniu funkcji projekcji w dziedzinie pulsacji

z współczynnikami filtru.

( ) ( ) ( ) (18)

gdzie:

( ) – przefiltrowana transformata projekcji.

W następnych etapach konieczne jest zastosowanie projekcji w dziedzinie przestrzeni.

Wykorzystuje się odwrotną dyskretną transformację Fouriera [7]:

( ) ( ( ))

∑ ( )

(19)

gdzie:

( ) – dyskretne przefiltrowane projekcje w dziedzinie przestrzeni.

Wsteczna projekcja

Wstecznej projekcji dokonuje się z wykorzystaniem przekształcenia (20) [7]:

( ) ( ( ))

∑ ( )

(20)

gdzie:

Page 23: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

23

– dyskretna wartość kąta pod jakim próbkowane były projekcje.

Interpolacja

Ponieważ wartości wyliczone z użyciem (21) nie są wartościami całkowitymi i nie

pokrywają się z wartościami , konieczne jest zastosowanie interpolacji.

(21)

Wykorzystane zostały dwie metody:

Najbliższy sąsiad

Wartość obliczona z użyciem (21), jest zaokrąglana do najbliższej wartości

całkowitej.

Liniowa

Stosowany jest wzór (22) opisujący interpolację liniową [10]

( ) ( ) ( ) ( ) ( )

(22)

gdzie:

– wartość obliczona przy użyciu (21),

( ) – interpolowana wartość funkcji dla argumentu ,

– wartość zaokrąglona w dół do najbliższej istniejącej wartości,

- wartość zaokrąglona w górę,

( ) – wartość funkcji dla istniejących dyskretnych argumentów.

3. Wykonanie w środowisku MATLAB

W realizacji projektu posłużono się środowiskiem MATLAB. Program ten zapewnia

wiele wbudowanych funkcji oraz prostą składnię języka, dzięki czemu możliwa jest szybka

realizacja własnych projektów. Kod napisany w ramach tego projektu wraz z komentarzami

znajduje się w Załączniku 1. Poza programem wykonującym rekonstrukcję w ramach projektu

został stworzony graficzny interfejs użytkownika. Jego działanie zostało opisane

w podrozdziale Interfejs użytkownika.

Dane

Program realizowany w tym projekcie znajduje się w pliku irad.m i jest wywoływany

funkcją irad. Funkcja przyjmuje wartości w formacie double, na takich też operuje oraz

takie pojawiają się na jej wyjściu. Funkcja wywoływana jest z następującymi parametrami:

obraz = irad(projekcje, theta, filtr), gdzie:

Page 24: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

24

projekcje – macierz danych projekcji (sinogram), wiersze zawierają wartości

projekcji, natomiast kolumny odpowiadają kolejnym kątom, pod którymi

wykonywane były projekcje,

theta – wektor zawierający wartości kątów (w stopniach), pod którymi

wykonywane były projekcje,

filtr – pozwala na wybór filtru realizującego filtrowanie. Do wyboru są ‘ram-

lak’, ‘shepp-logan’, ‘cosine’, ‘hamming’. Podstawowym filtrem jest ‘ram-lak’.

interpol – wybór metody interpolacji. Do wyboru ‘nearest’, ‘linear’,

obraz – macierz zawierająca zrekonstruowany obraz, wartości zapisane są

w postaci liczb zmiennoprzecinkowych o podwójnej precyzji.

Filtracja

Filtracja realizowana jest poprzez funkcję filtrowanie zawartą w pliku irad.m.

Pierwszym krokiem było stworzenie filtru w dziedzinie częstotliwości o wartościach

odpowiadającym modułowi częstotliwości. Dodatkowo rząd filtru dobierany jest

na podstawie rozdzielczości wykonanych projekcji. Tworzony jest także wektor

częstotliwości pomocny przy tworzeniu innego filtru oraz zerowaniu górnych częstotliwości

| | .

Przejście do dziedziny częstotliwości realizowane jest poprzez poddanie wszystkich

projekcji operacji fft. Wbudowana funkcja fft pozwala na rozszerzenie widma, w celu

dopasowania go do wielkości filtru. Następnie następuje mnożenie ze stworzonym wcześniej

filtrem. Kolejnym krokiem jest operacja ifft i przycięcie przefiltrowanej projekcji

do poprzedniego rozmiaru. Otrzymane w ten sposób projekcje można poddać procesowi

wstecznej projekcji. Funkcja filtracji została wykonana na podstawie funkcji zawartej w pliku

iradon.m (Copyright 1993-2006 The MathWorks, Inc.).

Oprócz podstawowego filtru Ram-Lak zaimplementowane zostały filtry Shepp-Logan,

Hamminga, niskopasmowy cosinusowy. Otrzymane one zostały poprzez wymnożenie filtru

Ram-Lak przez odpowiednie współczynniki opisane w Tab. 1.

Wsteczna projekcja

W pierwszej fazie tworzone są wektory m i n zawierające indeksy wynikowego obrazu

przesunięte względem środka tak, aby możliwe było wyliczenie wartości k (21).

Zostały utworzone także wektory , aby można było się odwoływać

do ich wartości poprzez indeksowanie, a nie wyliczać je za każdym razem.

Page 25: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

25

Wsteczna projekcja została wykonana na podstawie wzoru (20) przy użyciu 3 pętli

iteracyjnych. Dla każdej wartości m i n w generowanym obrazie i dla każdej wartości

obliczana jest wartość k (21), ta wartość wybiera z przekroju dla danej wartość osłabienia

w punkcie ( ). Po wykonaniu projekcji wstecznej dla każdej zmiennej, otrzymujemy

zrekonstruowany obraz.

Interpolacja

Zaimplementowana zostały dwie metody interpolacji: najbliższy sąsiad (‘nearest’,

zerowy rząd) i liniowa (‘linear’, 1. rząd). Obie zostały zaimplementowane przy użyciu

algorytmów opisanych w podrozdziale Algorytm.

4. Interfejs użytkownika

Interfejs graficzny ma na celu zapewnienie użytkownikowi prostej obsługi

zrealizowanego projektu. Został on wykonany przy pomocy wbudowanego kreatora GUIDE.

Interfejs stanowi dodatek do funkcji irad, która odpowiedzialna jest za realizację

rekonstrukcji obrazu. Interfejs umożliwia między innymi generację syntetycznych danych

pomiarowych, które mogą być następnie poddane rekonstrukcji.

Uruchamianie

W celu uruchomienia GUI (Graphical User Interface) należy w bieżącym katalogu

programu MATLAB umieścić pliki:

irad.m

irad_gui.m

irad_gui.fig

abdom.jpg

head.jpg

Uruchamianie interfejsu następuje poprzez wpisanie w oknie komend MATLAB’a

polecenia irad_gui.

Page 26: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

26

Opis interfejsu

1. Interfejs pozwala na wybór obrazu, który ma zostać poddany symulacji

prześwietlenia. Ma to na celu generację syntetycznych danych pomiarowych.

Do wyboru są 3 predefiniowane obrazy:

Fantom Sheppa-Logana,

Tomogram jamy brzusznej,

Tomogram głowy,

Oprócz nich interfejs pozwala na wskazanie własnego obrazu, który ma zostać

poddany wirtualnej tomografii. Operacja dokonywana jest z wykorzystaniem

funkcji radon z pakietu MATLAB. W tym celu należy kliknąć przycisk

Otwórz obraz. Jako źródło może służyć obraz w jednym z formatów: jpg, tif,

png, gif, bmp. Obrazy w formacie RGB zostaną automatyczne

przekonwertowane na skalę szarości. Zalecane jest, aby obrazy miały rozmiar

o proporcji kwadratu. Dla innych formatów działanie algorytmu

rekonstruującego nie jest całkowicie poprawne.

Obrazy predefiniowane mają rozdzielczość 256x256 pixeli. Te, wprowadzane

przez użytkownika, mogą mieć dowolną rozdzielczość. Jeżeli będzie ona

większa niż 512x512 pixeli, zostaną one przeskalowane do takiej właśnie

wielkości. Ma to na calu ograniczenie czasu wykonywania rekonstrukcji

2. W tym miejscu wyświetlany jest podgląd wybranego obrazu.

3. Parametry rekonstrukcji:

Page 27: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

27

Liczba projekcji – ilość wykonywanych prześwietleń – im większa

liczba tym lepsza jakość zrekonstruowanego obrazu, ale rekonstrukcja

zajmuje więcej czasu. Parametr można wpisać przy pomocy pola

tekstowego lub przy pomocy suwaka. Wartość domyślna to 180

projekcji, co oznacza, że projekcja jest wykonywana co 1°.

Filtr – wybór filtru zastosowanego podczas wykonywania algorytmu

filtrowanej projekcji wstecznej. Do wyboru: Ram-Lak, Shepp-Logan,

Niskopasmowy cosinusowy, Hamminga, Brak filtrowania. Domyślnie

wybrany jest filtr Ram-Lak.

Metoda interpolacji – wybór metody interpolacji zastosowanej podczas

wykonywanych obliczeń. Do wyboru: Liniowa, Najbliższy sąsiad.

4. Przycisk służący do uruchomienia rekonstrukcji. Po jego naciśnięciu dokonany

zostanie proces symulacji tomografii – utworzony zostanie sinogram (p. 5).

Następnie sinogram poddany zostanie procesowi rekonstrukcji. Efektem

końcowym jest wyświetlenie obrazu końcowego (p. 6).

5. Sinogram – prezentacja projekcji uzyskanych w procesie symulacji tomografii.

6. Zrekonstruowany obraz. Pod obrazem wyświetlana jest także wartość

współczynnika PSNR.

7. Możliwe jest zapisanie uzyskanego w procesie rekonstrukcji obrazu. W tym celu

należy kliknąć Zapisz jako pod zrekonstruowanym tomogramem. Obsługiwane

typy plików: jpg, tif, png, gif, bmp.

8. Interfejs użytkownika dopuszcza także rekonstrukcję na podstawie innego źródła

danych. Możliwe jest wczytanie gotowego sinogramu (powstałego

w zewnętrznym procesie symulacji prześwietleń lub w rzeczywistym

tomografie) i rekonstrukcja obrazu z jego wykorzystaniem. W tym celu należy

kliknąć przycisk Wczytaj sinogram i wybrać plik do importu. Obsługiwane

są pliki w formacie macierzy zapisanej z użyciem znaków ascii. Na tak

wczytanym sinogramie można przeprowadzić proces rekonstrukcji (przycisk

Rekonstrukcja).

Możliwe jest także wyeksportowanie sinogramu do pliku. W tym celu należy

kliknąć przycisk Zapisz sinogram i wybrać plik docelowy.

9. Narzędzia umożliwiające powiększanie, pomniejszanie i przesuwanie

wyświetlanych obrazów.

Page 28: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

28

V. Rekonstrukcja obrazu z syntetycznych danych

Działanie napisanego programu zostanie zaprezentowane z wykorzystaniem

syntetycznie stworzonych danych. W celu weryfikacji poprawności działania programu,

odtworzone obrazy zostaną porównane z ich oryginałami oraz zostanie policzony

współczynnik PSNR2.

1. Generacja danych pomiarowych

W celu generacji danych pomiarowych, które pełniłyby funkcję danych z tomografu

komputerowego, wykorzystana została funkcja radon z pakietu MATLAB. Pozwala ona

z zadaną dokładności na wykonanie wirtualnego prześwietlenia i jako wynik podaje

współczynniki osłabienia dla danego kąta padania wiązki. Jako wejście funkcja przyjmuje

obrazy w skali szarości. Na wyjściu zwraca transformatę Radona (sinogram), którą można

wykorzystać w procesie rekonstrukcji.

Jako źródło wykorzystane zostały 3 obrazy, które następnie poddano transformacji

Radona z wykorzystaniem funkcji radon. Pierwsze źródło to wbudowana funkcja phantom.

Przy jej pomocy można wygenerować obraz fantomu Shepp’a-Logan’a o zadanym rozmiarze.

Drugie to, już zrekonstruowany, obraz z tomografu komputerowego przedstawiający jamę

brzuszną [8]. Trzeci , również zrekonstruowany, tomogram głowy [9]. Wszystkie obrazy

zostały wygenerowane w rozmiarze 256x256 i podwójną precyzją wartości. W Tab. 2

zaprezentowane zostały wykorzystane obrazy. Poniżej każdego obrazu pokazany został jego

sinogram (transformata Radona) wykonany co 1°.

Tab. 2 Wykorzystane obrazy i ich sinogramy

1 2 3

[8]

[9]

2 Peak Signal-to-Noise Ratio – szczytowy stosunek sygnału do szumu.

Page 29: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

29

1 2 3

2. Odtworzenie obrazu z wygenerowanych danych

Przy pomocy funkcji irad można otrzymać zrekonstruowany obraz. Przykładowe

odtworzone obrazy wraz z parametrami rekonstrukcji zostały zaprezentowane w Tab. 3.

Tab. 3 Zrekonstruowane obrazy i ich parametry

Zrekonstruowany obraz Ilość

projekcji

Wykorzystany

filtr Interpolacja

23 ‘ram-lak’ linear

(degrees)

t

0 50 100 150

-150

-100

-50

0

50

100

150

(degrees)

t

0 50 100 150

-150

-100

-50

0

50

100

150

(degrees)

t

0 50 100 150

-150

-100

-50

0

50

100

150

Page 30: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

30

Zrekonstruowany obraz Ilość

projekcji

Wykorzystany

filtr Interpolacja

90 ‘ram-lak’ ‘linear’

90 ‘cosine’ ‘linear’

90 ‘none’ ‘linear’

Page 31: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

31

Zrekonstruowany obraz Ilość

projekcji

Wykorzystany

filtr Interpolacja

180 ‘hamming’ ‘nearest’

Na podstawie zaprezentowanych obrazów można stwierdzić, że wykonany program

działa poprawnie i daje oczekiwane rezultaty. Podczas procesu rekonstrukcji zauważa się,

że czas jego wykonywania jest długi. Dzieje się tak, ponieważ algorytm wykorzystany przy

wstecznej projekcji jest opisany 3 pętlami iteracyjnymi, co wpływa na dużą liczbę

wykonywanych obliczeń.

Parametry wykonywanych rekonstrukcji mają duży wpływ na jakość obrazu.

W podrozdziale Wpływ zmiennych na jakość rekonstrukcji przeprowadzona zostanie

jakościowa analiza wpływu tych parametrów.

3. Wpływ zmiennych na jakość rekonstrukcji

Rozdział ten ma na celu zbadanie wpływu parametrów rekonstrukcji na jakość

uzyskanego obrazu. Przeprowadzona w nim została również analiza otrzymanych wyników.

Liczba projekcji

Wszystkie projekcje w tym podrozdziale zostały wykonane z liniową interpolacją oraz

filtrem ram-lak. Zmiennym parametrem była liczba wykonanych projekcji. W Tab. 4

umieszczono zestawienie zrekonstruowanych obrazów (dla tomogramu głowy, obraz 3)

w zależności od ilości wykonanych projekcji. Obok każdego z nich umieszczono różnicę

pomiędzy obrazem oryginalnym, a zrekonstruowanym oraz wartość współczynnika PSNR.

Tab. 4 Graficzne zestawienie wpływu liczby projekcji na jakość rekonstruowanego obrazu

Liczba

projekcji Zrekonstruowany obraz

Błąd pomiędzy oryginalnym

obrazem a zrekonstruowanym

PSNR

[dB]

Page 32: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

32

Liczba

projekcji Zrekonstruowany obraz

Błąd pomiędzy oryginalnym

obrazem a zrekonstruowanym

PSNR

[dB]

10

6,09

20

10,20

45

15,83

Page 33: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

33

Liczba

projekcji Zrekonstruowany obraz

Błąd pomiędzy oryginalnym

obrazem a zrekonstruowanym

PSNR

[dB]

90

21,78

180

25,72

360

26,28

Na zaprezentowanych w Tab. 4 obrazach wyraźnie widać, że przy zbyt małej liczbie

projekcji jakość obrazu jest bardzo niska. Wraz z wzrostem tej liczby jakość ulega szybkiej

poprawie. Pomiędzy liczbą projekcji 180, a 360 nie widać różnicy. Dla dużej liczby projekcji

obrazy prezentujące błąd pomiędzy oryginałem a rekonstrukcją wyraźnie zaznaczają miejsca

o dużym kontraście. Dzieje się tak ponieważ są to miejsca gdzie występują duże

częstotliwości, a te zostały odcięte przy pomocy filtrów.

Page 34: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

34

Ze względu na czytelność w Tab. 4 zostały zaprezentowane jedynie przykładowe

obrazy, które mają pokazać wpływ analizowanego parametru. Wyniki pozostałych

rekonstrukcji zestawione zostały w tabeli Tab. 5 i wykresie Rys. 12.

Tab. 5 Wpływ liczby projekcji na jakość rekonstruowanego obrazu

Liczba

projekcji

Wartość PSNR

dla obrazu 1 [dB]

Wartość PSNR

dla obrazu 2 [dB]

Wartość PSNR

dla obrazu 3 [dB]

10 10,00 10,68 6,09

20 14,36 14,66 10,20

30 17,30 17,71 12,77

45 20,61 20,95 15,83

60 22,91 23,49 18,09

75 24,77 25,70 20,12

90 25,87 27,43 21,78

110 26,16 28,83 22,98

135 26,85 30,32 24,49

180 27,34 31,58 25,72

225 27,48 31,84 26,08

270 27,57 31,91 26,22

315 27,57 31,89 26,21

360 27,62 31,98 26,28

Czytelniejszą formą prezentacji tych danych będzie wykres przedstawiony na Rys. 12

Page 35: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

35

Rys. 12 Wykres wpływu liczby projekcji na jakość rekonstruowanego obrazu

Z wykresu (Rys.12) można odczytać dwie ważne informacje. Dla każdego obrazu

występuje nasycanie się funkcji, powyżej ok. 180 projekcji poprawa jakości jest nieznaczna.

Ze względu na tą właściwość dla pozostałych parametrów wykonane przyjęta zostanie liczba

projekcji wynosząca 180. Drugą obserwacją jest to, że dla takich samych parametrów, każdy

z obrazów charakteryzuje się innym PSNR.

Zastosowana interpolacja

Tab. 6 Graficzne zestawienie wpływu interpolacji na jakość rekonstrukcji

Interpol

acja Zrekonstruowany obraz

Różnica pomiędzy oryginałem

a rekonstrukcją

PSNR

[dB]

Liniowa

31,58

Page 36: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

36

Najbliższy

sąsiad

30,31

Tab. 7 Zestawienie wpływu interpolacji na jakość rekonstruowanego obrazu

Metoda interpolacji Obraz 1

PSNR [dB] Obraz 2

PSNR [dB] Obraz 3

PSNR [dB] Średnia

PSNR [dB]

Liniowa 27,34 31,58 26,34 28,42

Najbliższy sąsiad 26,84 30,31 25,12 27,42

Z Tab. 7 wyraźnie wynika, że zastosowanie interpolacji liniowej daje lepsze rezultaty

dla każdego z wykorzystanych obrazów. Zastosowanie tej metody interpolacji wiąże się także

z większą liczbą wykonywanych obliczeń, co wydłuża czas rekonstrukcji.

Filtr i szum

Podczas tej analizy zmiennymi parametrami będą wykorzystany filtr oraz ilość szumu

w projekcjach. Jako stałe przyjęte zostały metoda interpolacji (liniowa) i liczba projekcji

(180). Dodanie szumu ma na celu odtworzenie rzeczywistych warunków prześwietlenia.

Został on dodany z wykorzystaniem funkcji awgn dla każdego przekroju z osobna.

Tab. 8 Graficzne zestawienie wpływu wyboru filtru na jakość rekonstruowanego obrazu

Zastoso-

wany filtr

i szum

Zrekonstruowany obraz Różnica pomiędzy oryginałem,

a rekonstrukcją

PSNR

[dB]

Ram-Lak,

SNR=10d

B

26,87

Page 37: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

37

Zastoso-

wany filtr

i szum

Zrekonstruowany obraz Różnica pomiędzy oryginałem,

a rekonstrukcją

PSNR

[dB]

Shepp-

Logan,

SNR=0dB

26,47

Niskopas

mowy

cosinusow

y, SRN=-

10dB

20,22

Hamming,

SNR=-

20dB

14,13

Page 38: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

38

Zastoso-

wany filtr

i szum

Zrekonstruowany obraz Różnica pomiędzy oryginałem,

a rekonstrukcją

PSNR

[dB]

Brak

filtrowani

a, brak

szumu

12,81

Tab. 9 Wpływ wyboru filtru na jakość rekonstruowanego obrazu

SNR [dB] ram-lak

PSNR [db] shepp-logan

PSNR [db] cosine

PSNR [db] hamming PSNR [db]

brak PSNR [db]

brak szumu 28,21 27,51 26,12 25,15 9,84

20 28,34 27,66 26,29 25,31 9,85

15 28,19 27,58 26,26 25,30 9,86

10 27,75 27,31 26,19 25,26 9,85

5 26,60 26,59 25,94 25,13 9,85

0 24,28 24,95 25,26 24,77 9,86

-5 20,73 22,00 23,68 23,82 9,86

-10 16,37 17,98 20,85 21,74 9,90

-15 11,58 13,32 16,84 18,43 9,89

-20 6,65 8,47 12,21 14,13 9,99

W tabeli Tab. 9 zestawione zostały wartości współczynników PSNR w zależności

od szumu i zastosowanego filtru. Prezentowane wartości to średnia wartość PSNR wszystkich

3 analizowanych obrazów dla danego filtru i wartości szumu. Na wykresie Rys. 13 dane

zostały zaprezentowane w ten sam sposób.

Page 39: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

39

Rys. 13 Wykres zestawiający wpływ zastosowanego filtru oraz szumu na jakość rekonstrukcji

Zauważyć można, że zastosowanie jakiejkolwiek filtracji daje duży zysk jakości

tomogramu. Obraz nie poddany filtracji jest rozmyty i nie nadaje się do wykorzystania.

Ze względu na już złą jakość obrazu dodatkowy szum w projekcjach nic nie zmienił.

Przy małych wartościach szumu (SNR większe od 10dB) nie obserwuje się szumu

na jakość zrekonstruowanych obrazów. Dla takich wartości szumu można zauważyć,

że najlepsze wyniki daje filtr Ram-Lak, po nim Sheppa-Logana, następnie niskopasmowy

cosinusowy, a najgorsze filtr Hamminga. Natomiast dla dużej zawartości szumu w sygnale

kolejność jest odwrotna i najlepszy okazuje się filtr Hamminga, a Ram-Lak najgorszy. Dzieje

się tak, ponieważ filtr Hamminga jest bardziej zaporowy dla wyższych częstotliwości niż

Ram-Lak.

Wnioski

Dobór parametrów rekonstrukcji jest bardzo istotnym zagadnieniem w procesie

tomografii. Dobór ten jest kompromisem pomiędzy jakością a szybkością realizacji tego

zadania. W tej kwestii szczególne znaczenie ma liczba wykonanych prześwietleń. Jeśli będzie

ona za mała, jakość obrazu będzie niezadowalająca, za duża zaś znacznie wydłuży proces

akwizycji danych oraz rekonstrukcji. Metoda interpolacji ma także znaczny wpływ na jakość

obrazu. Dobór filtru zależy od parametrów wykonywanych pomiarów pochłaniania

promieniowania i decyduje o zawartości szumów w sygnale.

0,00

5,00

10,00

15,00

20,00

25,00

30,00

brakszumu

20 15 10 5 0 -5 -10 -15 -20

PSN

R [

dB

]

Szum (SNR) [dB]

Jakośd zrekonstruowanego obrazu w zależności od szumu i zastosowanego filtru

ram-lak

shepp-logan

cosine

hamming

brak

Page 40: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

40

VI. Podsumowanie

Celem tego projektu było stworzenie programu do rekonstrukcji obrazów z tomografu

komputerowego. W literaturze [1], [2], [3], [4] można spotkać się z wieloma możliwościami

rozwiązani postawionego problemu. Każda z nich ma oczywiście swoje wady i zalety.

Na podstawie tez przedstawionych w [4] do realizacji projektu wybrana została metoda

filtrowanej projekcji wstecznej. Metoda ta pozwala na dyskretną realizację odwrotnej

transformacji Radona oraz daje zadowalające wyniki rekonstrukcji.

W początkowych etapach prac nad projektem pojawiło się wiele trudności związanych

ze skomplikowanym procesem leżącym u podstaw rekonstrukcji obrazu. Po rozwiązaniu

problemów pojawiających się podczas realizacji projektu, stworzony został program

działający w pełni poprawnie. Kolejnym etapem wykonania projektu było stworzenie

graficznego interfejsu umożliwiającego proste korzystanie ze stworzonego algorytmu

rekonstruującego. Dodatkową cechą nakładki graficznej jest opcja symulacji procesu

tomografii. Daje ona możliwość wprowadzenia dowolnego obrazu i wykonania na nim

procesu prześwietlania i rekonstrukcji obrazu. Poza tym możliwe jest oczywiście

bezpośrednie wprowadzenie danych z prześwietleń.

Jakość uzyskiwanych tomogramów również była zadowalająca. Dowodem mogą być

obrazy prezentowane w rozdziale Rekonstrukcja obrazu z syntetycznych danych. W tym

samym rozdziale przeprowadzona została także analiza jakości otrzymywanych obrazów

w zależności od parametrów rekonstrukcji. Do najważniejszych obserwacji należy zaliczyć

fakt, iż powyżej pewnej liczby prześwietleń (ok. 180) jakość ulega tylko nieznacznej

poprawie oraz fakt, że wybór filtru ma bardzo duże znaczenie na zawartość szumów

w sygnale.

Projekt ten mimo, iż jest kompletny i funkcjonalny, ma jeszcze wiele możliwych dróg

dalszego rozwoju. Niewątpliwie konieczne jest dopracowanie algorytmu wykonującego

wsteczną projekcję. W obecnej formie wykonuje się on powoli i przy większych obrazach

wejściowych czas potrzebny na dokonanie rekonstrukcji jest zbyt długi. Kolejnym krokiem

w rozwoju byłoby wprowadzenie rzeczywistych danych z tomografu komputerowego i próba

rekonstrukcji obrazu. W tym celu konieczne byłoby także dodanie możliwości rekonstrukcji

obrazu z wiązki wachlarzowej, ponieważ we współczesnych tomografach dane są zbierane

właśnie w ten sposób.

Page 41: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

41

VII. Bibliografia

[1] Cierniak R., Tomografia komputerowa : budowa urządzeń CT : algorytmy

rekonstrukcyjne. Warszawa: EXIT; 2005, s. 13-199.

[2] Tomografia Komputerowa,

http://pl.wikipedia.org/w/index.php?title=Tomografia_komputerowa (odwiedzona

17.12.2010).

[3] Kak A. C. and Slaney M., Algorithms for Reconstruction with Nondiffracting Sources,

http://rvl4.ecn.purdue.edu/~malcolm/pct/CTI_Ch03.pdf (odwiedzona 17.12.2010)

[4] Rumiński J., Rentgenowska tomografia komputerowa. W:, Chmielewski L.,

Kulikowski J.L., Nowakowski A., (ed.) Obrazowanie biomedyczne. Warszawa: EXIT;

2003.

[5] Radon transform, http://en.wikipedia.org/w/index.php?title=Radon_transform

(odwiedzona 17.12.2010).

[6] Projection-slice theorem, http://en.wikipedia.org/w/index.php?title=Projection-

slice_theorem (odwiedzona 17.12.2010).

[7] Algorytmy rekonstrukcji,

http://www.ire.pw.edu.pl/biomedyczni/index.php?option=com_remository&Itemid=3

4&func=startdown&id=80, (odwiedzona 17.12.2010).

[8] Tomogram jamy brzusznej, własność H. Kusarek-Mitka.

[9] Tomogram głowy, własność A. Mitka.

[10] Linear interpolation, http://en.wikipedia.org/wiki/Linear_interpolation, (odwiedzona

7.1.2011).

Page 42: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

42

VIII. Załączniki

1. irad.m

function obraz= irad(p,theta,filtr,interpol) %funkcja realizujaca wsteczna projekcje - odwrotną transformację Radona %p - projekcje %theta - wartości kątów dla których zostały wykonane projekcje %filter - filtr 'ram-lak', 'shepp-logan', 'cosine', 'hamming %interpol - metoda interpolacji 'nearest', 'linear'

%filtracja projekcja = filtrowanie(p,filtr);

N = 4*floor(size(p,1)/(4*sqrt(2)) ); %Rozmiar wyjściowy obraz=zeros(N); %alokacja pamięci srodek_o = floor((N + 1)/2); %wyznaczenie środka obrazu m = (1:N) - srodek_o; %wektory współrzędnych obrazu n = (-1:-1:-N) + srodek_o; if theta==0 theta=0:180/size(p,2):179.99; end theta=pi*theta/180; %przeliczenie theta na radiany costheta = cos(theta); %wektory, aby uprościć obliczenia sintheta = sin(theta); srodek_t=ceil(size(p,1)/2); %środek projekcji

%Projekcja wsteczna if strcmp(interpol, 'nearest') %interpolacja najbliższy sąsiad for mi=1:length(m) %petla dla m for ni=1:length(n) %petla dla n for i=1:length(theta) %petla dla theta t = round(m(mi)*costheta(i) + n(ni)*sintheta(i));

%wyliczamy t obraz(ni,mi)=obraz(ni,mi)+projekcja(t+srodek_t,i);

%wybieramy wartosc projekcji dla obliczonego t end end end elseif strcmp(interpol, 'linear') %interpolacja liniowa for mi=1:length(m) for ni=1:length(n) for i=1:length(theta) t = m(mi)*costheta(i) + n(ni)*sintheta(i); t_dol=floor(t); obraz(ni,mi)=obraz(ni,mi)+(t_dol+1-

t)*projekcja(t_dol+srodek_t,i) + (t-t_dol)*projekcja(t_dol+1+srodek_t,i); end end end else error('Nie ma takiej interpolacji'); end obraz = obraz*pi/(2*length(theta)); %skalowanie wartości

function [p]=filtrowanie(p_we,filtr) p=p_we; %dobór rzędu filtru w zaleśności od wielkości obrazu rzad =2^nextpow2(2*size(p,1)); if strcmpi(filtr, 'none')

Page 43: Program do rekonstrukcji obrazu z tomografu komputerowego z ...

43

return; %bez filtrowania end

%tworzymy filtr ram-lak H = 2*( 0:(rzad/2) )./rzad; %tylko połowa filtru w = 2*pi*(0:size(H,2)-1)/rzad; % oś częstotliwości do Nyquist

switch filtr case 'ram-lak' %juz jest case 'shepp-logan' H(2:end) = H(2:end) .* (sin(w(2:end)/2)./(w(2:end)/2)); case 'cosine' H(2:end) = H(2:end) .* cos(w(2:end)/2); case 'hamming' H(2:end) = H(2:end) .* (.54 + .46 * cos(w(2:end))); %n=0.54 otherwise eid = sprintf('Images:%s:invalidFilter',mfilename); msg = 'Niepoprawna nazwa filtru'; error(eid,'%s',msg); end

H(w>pi) = 0; %powyżej częstotliwości granicznej zerujemy wartości H = [H' ; H(end-1:-1:2)']; % Dodajemy drugą połowę filtru, symetryczną

p = fft(p,length(H)); %fft projekcji, rozszerzone aby dopasować do H

for i = 1:size(p,2) p(:,i) = p(:,i).*H; % filtrowanie w dziedzinie częstotliwości end

p = real(ifft(p)); %ifft przefiltrowanych projekcji p(size(p_we,1)+1:end,:) = []; %przycinanie zbędnych 0 w projekcji