Dane obrazowe

Transkrypt

Dane obrazowe
Przetwarzanie danych obrazowych
Dane obrazowe
! Przetwarzanie danych
obrazowych przyjmuje trzy
formy:
!
!
!
R. Robert Gajewski
omklnx.il.pw.edu.pl/~rgajewski
www.il.pw.edu.pl/~rg
[email protected]
Grafikę komputerową,
Przetwarzanie obrazów,
Rozpoznawanie obrazów.
Przetwarzanie
obrazu
Obraz
Grafika
Rozpoznawanie
obrazu
Opis
2
05
©2004 R. Robert ‘RoG@j’ Gajewski
Grafika komputerowa
Przetwarzanie obrazów
! Zajmuje się tworzeniem obrazów na podstawie
! Dotyczy zagadnień, w których dane
informacji nieobrazowej. Przykłady to:
!
!
!
wejściowe i wyniki mają postać obrazów.
Wykresy funkcji i danych eksperymentalnych,
CAD,
Symulacje komputerowe.
!
!
! Plastyka i animacja komputerowa to dwie dziedziny,
które wymagają poza wiedzą techniczna także
talentów artystycznych.
! Grafika interakcyjna dotyczy systemów, w których
dane wejściowe użytkownika podawane są w postaci
graficznej.
3
05
©2004 R. Robert ‘RoG@j’ Gajewski
! Przykład zaawansowany to konstruowanie
obrazów przekroju ciała ludzkiego na
podstawie rentgenogramów.
4
05
©2004 R. Robert ‘RoG@j’ Gajewski
Rozpoznawanie obrazów
Formy danych obrazowych
! Są to metody tworzenia opisu obrazu wejściowego
! Rozważając przetwarzanie obrazów wygodnie jest je
lub zakwalifikowanie obrazu do jakiejś szczególnej
klasy.
! W pewnym sensie jest to zagadnienie odwrotne do
grafiki komputerowej - proces zaczyna się od obrazu
a kończy się abstrakcyjnym zbiorem opisującym go.
! Przetwarzanie obrazów zajmuje się znajdywaniem
konturów a równoważnym działaniem w grafice jest
wypełnianie konturów - są to operacje odwrotne i
pewne zagadnienia teoretyczne są wspólne.
5
05
Przesyłanie obrazów wraz z kompresją,
Poprawa jakości obrazów (kontrast,
luminancja)
©2004 R. Robert ‘RoG@j’ Gajewski
podzielić na cztery klasy odnoszące się raczej do
sposobu ich przedstawiania i przetwarzania niż do
rzeczywistej formy wizualnej.
!
!
!
!
6
05
Obrazy o pełnej gradacji kontrastów i kolorowe
(klasa_1)
Obrazy dwupoziomowe lub "kilkukolorowe" (klasa 2)
Krzywe ciągłe i linie proste (klasa 3)
Punkty lub wieloboki (klasa 4)
©2004 R. Robert ‘RoG@j’ Gajewski
1
Klasa 1
Klasa 2
! Obrazy o pełnej gradacji kontrastów i kolorowe (klasa
! Obrazy dwupoziomowe lub "kilkukolorowe"
(klasa 2)
1)
!
!
Są one dokładnym przedstawieniem rzeczywistości.
Są one reprezentowane jako macierze z elementami
całkowitymi nazywanymi element obrazu, pixel lub pel.
Do reprezentowania obrazów kolorowych mogą służyć
trzy macierze lub jedna macierz, w której różne bity
każdego elementu odpowiadają poszczególnym
kolorom.
7
05
©2004 R. Robert ‘RoG@j’ Gajewski
Przykładem takiego obrazu może być strona
tekstu.
! Obrazy tej klasy mogą być reprezentowane
jako macierze z jednym bitem na element a
także jako "mapy" ponieważ zawierają
jednoznacznie określone obszary jednego
koloru.
!
8
05
©2004 R. Robert ‘RoG@j’ Gajewski
Klasa 3
Kody łańcuchowe
! Krzywe ciągłe i linie proste (klasa 3)
! Kody łańcuchowe polegają na tym, że wektor
łączący dwa kolejne punkty jest określony jednym
symbolem ze skończonego zbioru symboli.
! Różnicowe kody łańcuchowe są bardziej efektywną
metodą, gdzie reprezentacją każdego punktu jest
różnica między dwoma kolejnymi kodami
bezwzględnymi (dla krzywych gładkich te różnice są
niewielkie!)
Kontury obszarów lub wykresów są
przykładami takich obrazów.
! Dane są ciągami punktów, które mogą być
reprezentowane jako ich współrzędne - jest to
jednak metoda nieefektywna.
!
1
0
9
05
©2004 R. Robert ‘RoG@j’ Gajewski
10
05
Klasa 4
©2004 R. Robert ‘RoG@j’ Gajewski
Wprowadzanie obrazów
! Aby obraz analogowy mógł być przetwarzany komputerowo
! Punkty lub wieloboki (klasa 4)
! Obrazy tej klasy składają się ze zbioru oddzielnych
punktów, które są tak od siebie oddalone, że nie mogą
być reprezentowane przez kod łańcuchowy.
! W zamian należy zastosować tablice ich
współrzędnych.
! Obrazy tego typu są najczęściej stosowane w grafice
komputerowej. Chociaż same obrazy są klasy 2 lub 1
to ich wewnętrzna reprezentacja jest klasy 4.
11
05
7
©2004 R. Robert ‘RoG@j’ Gajewski
zamieniamy go na tablicę liczb.
! Proces dyskretyzacji składa się z:
Próbkowania - wyboru zbioru punktów z pola obserwacji,
pomiaru parametrów obrazu i stosowania tego w analizie
całego obrazu.
! Kwantowania - opisu danych pomiarowych za pomocą
skończonej liczby cyfr.
! Rozdzielczość przestrzenna dotyczy gęstości punktów
próbkowania.
! Rozdzielczość poziomów jasności lub koloru dotyczy wierności
przedstawienia danych pomiarowych.
!
12
05
©2004 R. Robert ‘RoG@j’ Gajewski
2
Grafika wektorowa
Grafika wektorowa
! Urządzenia grafiki wektorowej tworzą obrazy klasy 3
! Obraz pamiętany jest i interpretowany w postaci
lub 4. Elementarne rozkazy mają postać:
obiektów takich jak:
P(x,y) - ustaw plamkę świetlna w punkcie (x,y)
S(z) - ustaw jasność zgodnie z wartością z
!
! Aby wyświetlić obiekt należy utworzyć odpowiednia
!
sekwencję tego typu rozkazów.
! Zaleta tej grafiki to oddzielenie opisu obiektu od
ekranu.
!
!
!
!
!
Punkty, linie,
Okręgi, elipsy, krzywe,
Trójkąty, wieloboki,
Linie wymiarowe, linie tekstu,
Powierzchnie, bryły.
! Stosowana jest w systemach wspomagania
projektowania obiektów technicznych.
13
05
©2004 R. Robert ‘RoG@j’ Gajewski
14
05
©2004 R. Robert ‘RoG@j’ Gajewski
Grafika rastrowa
Obraz cyfrowy i analogowy
! Urządzenia grafiki rastrowej tworzą obrazy
! Fotografia wykonana aparatem
małoobrazkowym jest przykładem obrazu
analogowego –
klasy 1 lub 2.
! Zasadniczą cechą urządzeń rastrowych jest
duża pojemność pamięci.
! Wszystkie parametry obrazu są
przechowywane w odpowiednich komórkach
pamięci.
15
05
©2004 R. Robert ‘RoG@j’ Gajewski
!
zapisana w nim informacja ma charakter
ciągły we wszystkich kierunkach.
! Obraz cyfrowy uzyskuje się poprzez
próbkowanie obrazu analogowego w
regularnych odstępach w celu dyskretyzacji
informacji.
16
05
Dyskretyzacja
©2004 R. Robert ‘RoG@j’ Gajewski
Kodowanie
! Kodowanie obrazu polega na redukcji liczby bitów
potrzebnych do reprezentacji obrazu poprzez kody o
zmiennej długości.
! Kodowanie o zmiennej długości słowa wykorzystuje:
!
!
krótsze kody dla symboli częściej występujących
(bardziej prawdopodobnych),
dłuższe dla rzadziej występujących (mniej
prawdopodobnych)
! Prowadzi to do zmniejszenia średniej długości słowa
kodowego.
17
05
©2004 R. Robert ‘RoG@j’ Gajewski
18
05
©2004 R. Robert ‘RoG@j’ Gajewski
3
Kodowanie metodą Huffmana
Przykład kodowania
! Wszystkim symbolom należy przypisać puste słowa
!
!
!
!
kodowe
Dołączyć 0 do słowa kodowego najbardziej
prawdopodobnego symbolu
Dołączyć 1 do słowa kodowego każdego z
pozostałych symboli w zbiorze S
Usunąć najbardziej prawdopodobny symbol z listy
symboli
Powyższe kroki powtarzać aż do chwili, aż lista
zostanie zredukowana do jednego symbolu.
19
05
©2004 R. Robert ‘RoG@j’ Gajewski
20
05
Dyskretna transformata Fouriera
∞
∞
i =1
i =1
3
0.1
4
0.1
5
0.2
Krok 1
1
0
0
1
2
1
3
1
4
1
5
1
Krok 2
0
10
2
11
3
11
4
11
5
11
Krok 3
5
110
2
111
3
111
4
111
Krok 4
2
1110
3
1111
4
1111
Krok 5
3
11110
4
11111
10
0
1110
11110
11111
110
©2004 R. Robert ‘RoG@j’ Gajewski
obszarów, gdzie kolor lub jasność są w przybliżeniu
jednakowe.
! Klasa 2 w 3 - znajdywanie konturu i ścienianie.
! Klasa 3 w 4 - segmentacja krzywych mająca na celu
znalezienie punktów krytycznych na konturze.
! Klasa 4 w 3 - interpolacja, w której krzywa gładka
jest rysowana przez zbiór punktów i aproksymacja,
gdzie krzywa gładka ma przechodzić blisko zadanych
punktów.
można zastosować również dla funkcji
dwuwymiarowych do kompresji obrazów cyfrowych.
! Należy wykorzystać składowe kosinusowe w celu
przekształcenia obrazu o wymiarach n*n na pewną
liczbę składowych.
22
05
©2004 R. Robert ‘RoG@j’ Gajewski
Przekształcenia obrazów (2)
Przekształcenia obrazów (3)
! Klasa 3 w 2 - gdy na wejściu mamy kontur powstaje
! Przekształcenia z klasy niższej do wyższej
wówczas zagadnienie jego wypełnienia, które jest
opisywane podobnie jak zagadnienie cieniowania.
! Klasa 2 w 1 - obraz może sprawiać wrażenie mało
estetycznego, gdy widać kontury kolorów; płynniejsze
przejście można uzyskać stosując filtry
dolnoprzepustowe bądź dodatkowe zakłócające
drżenie kolorów.
23
05
2
0.1
! Klasa 1 w 2 - segmentacja, czyli identyfikacja
! Technikę jednowymiarowej transformaty Fouriera
©2004 R. Robert ‘RoG@j’ Gajewski
1
0.4
Przekształcenia obrazów (1)
f ( x) = a0 + ∑ ai cos(ix) + ∑ bi sin(ix )
21
05
0
0.2
©2004 R. Robert ‘RoG@j’ Gajewski
należą do rozpoznawania obrazów.
! Przekształcenia z klasy wyższej do niższej to
grafika komputerowa.
! Przetwarzanie obrazów zajmuje się
obydwoma typami przekształceń.
24
05
©2004 R. Robert ‘RoG@j’ Gajewski
4