Komputerowe obrazowanie medyczne -...

27
20120524 1 Komputerowe obrazowanie medyczne Część II Przetwarzanie i analiza obrazów medycznych W grafice wektorowej obrazy i rysunki składają się z szeregu punktów, przez które prowadzi się linie proste i krzywe. Obiekty te definiuje się za pomocą równań algebraicznych (wektorów). Obraz wektorowy najprościej ujmując zapamiętany jest w postaci wzorów matematycznych. Program, który je wyświetla i pozwala edytować, przelicza wzory. W praktyce kreowanie takiego obrazu polega na utworzeniu niezależnych od siebie obiektów, z których każdy posiada takie właściwości jak kontur, rozmiar, kolor i stanowi odrębną całość. Utworzone obiekty układa się w odpowiednią kompozycję, w wyniku której powstaje obraz. Obrazy i rysunki wektorowe możemy poddawać skalowaniu i modelowaniu bez utraty ich jakości. Przykładem grafiki wektorowej są ClipArty z pakietu MS Office. Grafika rastrowa i wektorowa W grafice rastrowej obrazy tworzone są z położonych regularnie obok siebie małych elementów zwanych pikselami. Posiadają one żne kolory lub odcienie szarości. Tworzone w ten sposób obrazy i rysunki zwykło się nazywać mapami bitowymi (bitmapami).

Transcript of Komputerowe obrazowanie medyczne -...

2012‐05‐24

1

Komputerowe obrazowanie medyczne

Część II

Przetwarzanie i analiza obrazów medycznych

W grafice wektorowej obrazy i rysunki składają się z szeregu punktów, przez które prowadzi się linie proste i krzywe. Obiekty te definiuje się za pomocą równań algebraicznych (wektorów). Obraz wektorowy najprościej ujmując zapamiętany jest w postaci wzorów matematycznych. Program, który je wyświetla i pozwala edytować, przelicza wzory. W praktyce kreowanie takiego obrazu polega na utworzeniu niezależnych od siebie obiektów, z których każdy posiada takie właściwości jak kontur, rozmiar, kolor i stanowi odrębną całość. Utworzone obiekty układa się w odpowiednią kompozycję, w wyniku której powstaje obraz. Obrazy i rysunki wektorowe możemy poddawać skalowaniu i modelowaniu bez utraty ich jakości. Przykładem grafiki wektorowej są ClipArty z pakietu MS Office.

Grafika rastrowa i wektorowa

W grafice rastrowej obrazy tworzone są z położonych regularnie obok siebie małych elementów zwanych pikselami. Posiadają one różne kolory lub odcienie szarości. Tworzone w ten sposób obrazy i rysunki zwykło się nazywać mapami bitowymi (bitmapami).

2012‐05‐24

2

Tworzenie obrazu cyfrowego - dyskretyzacja (digitalizacja)

X

y

Szerokość obrazu

Wysokość obrazu

Dyskretyzacja (digitalizacja)

obrazu

1     2      3      4     5      6

1     2      3      4     5    

Szerokość obrazu

Wysokość obrazu

Digitalizacja obiektu rzeczywistego (analogowego):

1. Dyskretyzacja wymiarów (próbkowanie) – obraz cyfrowy jest złożony z regularnie ułożonych elementów zwanych pikselami (Picture Element). O liczbie pikseli decyduje gęstość próbkowania (rozmiar siatki rastru). Liczba pikseli decyduje o rozdzielczości obrazu.

2. Dyskretyzacja jasności obrazu (kwantyzacja) – piksele obrazu cyfrowego przyjmują skończoną liczbę poziomów jasności (szarości, intensywności). Najczęściej spotykana liczba poziomów jasności to 256 (obraz 8 bitowy).

Obraz cyfrowy monochromatyczny, to funkcja

I(x,y)

gdzie }1,...,2,1,0{},,...,2,1{},,...,2,1{ LIMYyNXx

Obrazy cyfrowe barwne – modele barw

Dla obrazu barwnego funkcja I jest funkcją wektorową

I=[I1, I2, I3,…, Ik].

Rozmiar wektora (k) oraz znaczenie składowych, zależą od przyjętego modelu barw. Dwa najczęściej spotykane modele, są złożone z 3 barw podstawowych, z których – poprzez ich mieszanie (sumowanie) można uzyskać dowolną barwę z tzw. trójkąta barw (również czerń, biel i odcienie szarości).1. Model RGB: jako barwy podstawowe przyjęto w nim Czerwień (Red), Zieleń (Green) i Niebieski (Blue) :

I=[IR, IG, IB].

Model stosowany w urządzeniach wyświetlających (monitorach) –suma 3 barw o najwyższym poziomie daje biel .2. Model CMY - barwy podstawowe : Niebiesko-zielona (Cyan), Purpurowa (Magenta) i Żółta (Yellow)

I=[IC, IM, IY].

Model stosowany w urządzeniach drukujących – suma trzech barw o najwyższym poziomie daje czerń. Dla poprawy jakości wydruku, do modelu dodano Czerń tworząc model CMYK (blacK).

2012‐05‐24

3

Zmiana liczby poziomów kwantyzacji obrazu monochromatycznego

Obrazy cyfrowe

Zmiana rozdzielczości obrazu barwnego (zmiana jednostki rastru w procesie próbkowania obrazu rzeczywistego)

Przetwarzanie obrazów

Obraz cyfrowy Opis (model)

Grafika

Analiza

Przetwarzanie(przekształcanie)

KLKlasa

Znaczenie semantyczne 

Rozpoznawanie

Interpretacja

2012‐05‐24

4

Obrazowanie medyczne – przetwarzanie obrazu

Filtracja Segmentacja

Wygładzanie kształtu

Wyznaczenie konturuSzkieletyzacja

Normalizacja

Etapy przetwarzania

Przetwarzanie obrazu – przykład segmentacji

2012‐05‐24

5

Automatyczna analiza obrazu

Analiza obrazu – wyznaczanie określonych liczbowych cech charakteryzujących właściwości obrazu (obiektu na obrazie).

Wynik analizy powinien wystarczyć do podjęcia diagnozy (bez konieczności przechowywania obrazu)

Kontur zmiany melanocytowej Analiza - cechy morfometryczne kształtu: - długość,

- polaryzacja,

- indeks kształtu

Obraz morfologii krwiAnaliza – morfologia:

- liczba krwinek czerwonych

- liczba krwinek białych

- Hemoglobina

- Hematokryt

- ……..

Operacje jednopunktowe ustalają nowe wartości (poziomy jasności) poszczególnych pikseli, zgodnie z zasadą, iż wartość każdego piksela obrazu wynikowego zależy wyłącznie od wartości odpowiadającego mu piksela w obrazie źródłowym (lub pikseli w obrazach źródłowych) :

I2(x,y)=Φ[I1(x,y)], Φ - funkcja przekształcenia

Przykłady operacji jednopunktowych:

1. Logiczne

2. Arytmetyczne

3. Geometryczne

4. Z tablicami przekształcenia (korekcji) - LUT (Look up table)

5. Wyrównywanie histogramu

6. Binaryzacja

Jednopunktowe metody przetwarzanie obrazów(operacje na pikselach)

2012‐05‐24

6

Wykonywane na pikselach obrazów binarnych i realizujące typowe operatory logiczne: negacja (NOT), suma logiczna (OR), iloczyn logiczny (AND), różnica logiczna (SUB), suma rozłączna (XOR)

Przetwarzanie obrazów - operacje logiczne

NOT

AND

OR

SUB

XOR

=

=

=

=

=

Wartość piksela nowego obrazu jest wynikiem określonej operacji arytmetycznej wykonanej na wartości odpowiadającego mu piksela w obrazie źródłowym, lub pikseli na wielu obrazach źródłowych.

1. Suma obrazów: I3(x,y) = I1(x,y) + I2(x,y)

2. Różnica obrazów: I3(x,y) = I1(x,y) - I2(x,y)

3. Iloczyn obrazów: I3(x,y) = I1(x,y) · I2(x,y)

4. Kombinacja liniowa obrazów: I3(x,y) = p · I1(x,y) + (1-p) · I2(x,y)

5. Przemnożenie obrazu przez stałą: I3(x,y) = p · I1(x,y)

Przy wykonywaniu operacji arytmetycznych należy zwrócić uwagę na wartości pikseli obrazu wynikowego. Może się bowiem zdarzyć, że wartości te znajdą się poza dopuszczalnym zakresem (dla typowej skali jasności 0 – 255).

W takim przypadku obraz należy znormalizować: I4(x,y) = a · I3(x,y) + b

a = 255/(I3MAX – I3MIN) b = 255 · I3MIN /(I3MAX – I3MIN)

Przetwarzanie obrazów – operacje arytmetyczne

2012‐05‐24

7

W operacjach geometrycznych zmieniane jest położenie piksela (x, y) zgodnie z zadaną relacją matematyczną, a jego wartość nie ulega zmianie.

Przetwarzanie obrazów – operacje geometryczne

Przesunięcie Skalowanie

Obrót Odbicie symetryczne

Złożone operacje geometryczne

2012‐05‐24

8

Tablice przekształcenia - LUT (Look-Up Table)

Funkcja przekształcenia jednopunktowego Φ jest przedstawiona w postaci dwukolumnowej tablicy: pierwsza kolumna zawiera wszystkie wartości obrazu należące do aktualnej palety (np. 0 – 255), a druga – nowe wartości, jakim będą one odpowiadały po przekształceniu. Technikę LUT stosuje się wtedy, gdy funkcji Φ nie da się opisać wzorem matematycznym. Stosowana często w tzw. pseudokolorowaniu w celu poprawy percepcji obrazu monochromatycznego.

Przed Po

0 (0,0,0)

1 (10,0,0)

2 (0,10,0)

…..

255 (255,255,255)

Histogram – funkcja reprezentująca udział liczby pikseli o danej wartości (poziomie jasności) w całej zawartości obrazu. Wartość funkcji dla j-tego poziomu jasności wynosi

Hj = nj /N·M,

gdzie nj oznacza liczbę pikseli o j-tym poziomie jasności, a N·M jest całkowitą liczbą pikseli w obrazie.

Histogram ma postać wykresu słupkowego.

Przetwarzanie obrazów – wyrównywanie histogramu

Stopień jasności

Względna liczba pikseli

0 255

2012‐05‐24

9

Przykłady histogramów

Obraz ciemny Obraz jasny

Obraz o niskim kontraście Obraz o wysokim kontraście

Obrazy  o takim samym histogramie

Przykład histogramu

2012‐05‐24

10

Przykłady histogramów

Wyrównywanie histogramuMetoda polega na poprawianiu kontrastu analizowanego obrazu z wykorzystaniem jego histogramu. Idealnie równy histogram(odpowiadający obrazowi o największej dynamice) to taki, gdy każdemu możliwemu poziomowi jasności odpowiada taka sama liczba punktów na obrazie. Operacja wyrównywania histogramu pozwala skorygować te obrazy, w których rozkład wartości pikseli znacząco odbiega od teoretycznego zakresu dynamiki wynikającego z obliczenia średniej liczby punktów, jaka powinna przypadać na jeden poziom jasności . Operacja wyrównywania histogramu pozwala zbliżyć się do idealnego histogramu na tyle, na ile jest to możliwe.

Histogram pierwotny Histogram po wyrównaniu

Histogram idealny

Do wyrównywania histogramu stosuje się następującą funkcję transformującą:

j

kkHLjT

0)1()(

T(j) oznacza nowy poziom jasności pikseli o dotychczasowym poziomie j (j=0,1,…,L).

2012‐05‐24

11

Wyrównywanie histogramu - przykład

Obraz ciemny

Wyrównywanie histogramu - przykład

2012‐05‐24

12

Wyrównywanie histogramu - przykład

Wyrównywanie histogramu - przykład

2012‐05‐24

13

Przykłady histogramów

Wyrównywanie histogramu - przykład

2012‐05‐24

14

Wyrównywanie histogramu - przykład

BinaryzacjaPrzekształcenie obrazu wielotonalnego w obraz binarny według formuły:I2(x,y)=0 jeśli I1(x,y) < a, I2(x,y)=255 w przeciwnym wypadku (dla obrazu 8 bitowego).Wyznaczanie progu a zależy od celu binaryzacji – można się tu posłużyć histogramem (lokalne minimum histogramu).

a1a2 a3

2012‐05‐24

15

Binaryzacja

a1 a2

Binaryzacja

a1 a2

2012‐05‐24

16

Kontekstowe (lokalne) metody przetwarzania obrazówFiltracja

Operacje kontekstowe (będziemy je w dalszym ciągu nazywać filtracją) – nowa wartość piksela jest wyznaczana na podstawie wartości tego piksela oraz pikseli w jego otoczeniu (sąsiedztwie) na obrazie źródłowym. Rodzaje sąsiedztwa piksela (x,y)

Możliwe są inne modele sąsiedztwa, zarówno kwadratowe (np. (7x7), (9x9), itd.), jak i prostokątne (asymetryczne (np. (3x5), (9x15),itp.), jednak stosuje się je rzadko, z uwagi na duży koszt obliczeniowy.

x‐2   x‐1    x    x+1   x+2

y‐2

y‐1

y

y+1

y+2

x‐1    x    x+1

y‐1  

y  

y+1  

Model sąsiedztwa 3 x 3Model sąsiedztwa 5 x 5

Maska filtruFunkcję filtru, decydującą o jego własnościach, wygodnie jest przedstawić w formie tzw. maski filtru. Stanowi ją tablica o rozmiarach odpowiadających sąsiedztwu z wpisanymi w poszczególne pola wartościami liczbowymi w(i,j). Dla takiego opisu filtru wartość piksela (poziom jasności) po filtracji I2(x,y) (ogólnie – po przekształceniu kontekstowym) wyznacza się za pomocą funkcji splotu (konwolucji) obrazu wyjściowego I1 (w obrębie sąsiedztwa) oraz maski filtru (K – oznacza obszar sąsiedztwa):

Przykładowo, dla obszaru sąsiedztwa 3x3 oraz maski

),(),(),(,

12 jiwjyixIyxIKji

1 1 1

1 12

1 1 1

Wynik działania filtru jest następujący:I2(x,y)= [I1(x-1,y-1)+I1(x,y-1) +I1(x+1,y-1)+I1(x-1,y)+2I1(x,y)+I1(x+1,y)+

+I1(x-1,y+1)+I1(x,y+1)+I1(x+1,y+1)]/10.

Wynik operacji konwolucji został podzielony przez 10 (suma wszystkich wartości w masce). Taka normalizacja jest potrzebna, aby podczas przekształcenia nie wyjść poza dopuszczalny zakres wartości pikseli obrazu (gdy wartości maski są ujemne, normalizacji należy dokonać poprzez przeskalowanie poziomów jasności).

2012‐05‐24

17

Filtracja – problem krawędzi obrazu

Filtracja dolnoprzepustowa

Obraz ciemny Obraz jasny

2 2 2

2 3 2

2 2 2

1 1 1

1 2 1

1 1 1

Obraz oryginalny

2012‐05‐24

18

Filtracja dolnoprzepustowa

Obraz ciemny Obraz jasny

1 1 1 1 1

1 2 2 2 1

1 2 5 2 1

1 2 2 2 1

1 1 1 1 1

2 2 2

2 5 2

2 2 2

Obraz oryginalny

Filtracja dolnoprzepustowa

1 1 1

1 2 1

1 1 1

Obraz oryginalnyObraz   zaszumiony

2012‐05‐24

19

Filtracja dolnoprzepustowa

2 2 2

2 5 2

2 2 2

Obraz oryginalnyObraz   zaszumiony

Filtracja dolnoprzepustowa

1 1 1 1 1

1 2 2 2 1

1 2 5 2 1

1 2 2 2 1

1 1 1 1 1

Obraz oryginalnyObraz   zaszumiony

2012‐05‐24

20

Krawędź – linia oddzielająca obszary o różnej jasności.

Idea wyznaczania krawędzi metodą przekształcania kontekstowego (filtracji) polega na wyznaczaniu pochodnych poprzez odpowiednio uformowana maskę

Filtracja wykrywająca krawędzie

Obraz

Profil linii poziomej

Pierwsza pochodna

Druga pochodna

Wykrywanie krawędzi  ‐ filtry gradientowe

‐1 ‐1 ‐1

0 0 0

1 1 1

1 1 1

0 0 0

‐1 ‐1 ‐1

‐1 0 1

‐1 0 1

‐1 0 1

1 0 ‐1

1 0 ‐1

1 0 ‐1

‐1 ‐1 0

‐1 0 1

0 1 1

1 1 0

1 0 ‐1

0 ‐1 ‐1

0 ‐1 ‐1

1 0 ‐1

1 1 0

0 1 1

‐1 0 1

‐1 ‐1 0

Maska Previtta  Maska Sobela

1 1 1

0 0 0

‐1 ‐1 ‐1

1 2 1

0 0 0

‐1 ‐2 ‐1

2012‐05‐24

21

Wykrywanie krawędzi  ‐maska Sobela

1 2 1

0 0 0

‐1 ‐2 ‐1

Wykrywanie krawędzi  ‐ filtry gradientowe

0 1 2

‐1 0 1

‐2 ‐1 0

2012‐05‐24

22

Wykrywanie krawędzi  ‐ filtry gradientowe

‐1 0 1

‐2 0 2

‐1 0 1

Wykrywanie krawędzi  ‐ filtry gradientowe

‐2 ‐1 0

‐1 0 1

0 1 2

2012‐05‐24

23

Wykrywanie krawędzi  ‐ filtry gradientowe

‐1 ‐2 ‐1

0 0 0

1 2 1

Wykrywanie krawędzi  ‐ filtry gradientowe

0 ‐1 ‐2

1 0 ‐1

2 1 0

2012‐05‐24

24

Wykrywanie krawędzi  ‐ filtry gradientowe

1 0 ‐1

2 0 ‐2

1 0 ‐1

Wykrywanie krawędzi  ‐ filtry gradientowe

2 1 0

1 0 ‐1

0 ‐1 ‐2

2012‐05‐24

25

Zastosowanie maski Sobela

‐1 ‐2 ‐1

0 0 0

1 2 1

1 2 1

0 0 0

‐1 ‐2 ‐1

Zastosowanie maski Sobela

‐1 0 1

‐2 0 2

‐1 0 1

1 0 ‐1

2 0 ‐2

1 0 ‐1

2012‐05‐24

26

Zastosowanie maski Sobela

‐2 ‐1 0

‐1 0 1

0 1 2

2 1 0

1 0 ‐2

0 ‐1 ‐1

Zastosowanie maski Sobela

0 ‐1 ‐2

1 0 ‐1

2 1 0

0 1 2

‐1 0 1

‐2 ‐1 0

2012‐05‐24

27

Filtracja górnoprzepustowa (wyostrzanie)

Obraz oryginalny