19
Geometria obrazu Wykład 8 Zastosowania triangulacji Delaunay cd. 1. Przerzedzanie triangulacji – modelowanie terenu, – kompresja danych. 2. Badanie odcisków palców

Geometria obrazu Wykład 8

  • Upload
    kisha

  • View
    49

  • Download
    0

Embed Size (px)

DESCRIPTION

Geometria obrazu Wykład 8. Zastosowania triangulacji Delaunay cd. Przerzedzanie triangulacji – modelowanie terenu, – kompresja danych. 2.Badanie odcisków palców. Przerzedzanie triangulacji. - PowerPoint PPT Presentation

Citation preview

Page 1: Geometria obrazu Wykład 8

Geometria obrazuWykład 8

Zastosowania triangulacji Delaunay cd.

1. Przerzedzanie triangulacji

– modelowanie terenu,

– kompresja danych.

2. Badanie odcisków palców

Page 2: Geometria obrazu Wykład 8

Przerzedzanie triangulacji.

Niech X = {x1, x2, ... , xN} R2 będzie danym zbiorem na płaszczyźnie, a fX = (f(x1), f(x2), ... , f(xN)) RN oznacza odpowiadający X ciąg wartości nieznanej funkcji f : R2 R.

Algorytm przerzedzania triangulacji polega na rekurencyjnym usuwaniu punktów ze zbioru X zgodnie z ustalonymi wcześniej kryteriami.

Niech n oznacza liczbę usuwanych elementów. Wtedy algorytm przyjmuje następującą ogólną postać:

XN:=X;

for k:=1 to n do

begin

zlokalizuj usuwalny punkt x XN-k+1 ;

XN-k := XN-k+1\ x ;

end

Page 3: Geometria obrazu Wykład 8

W wyniku działania tego algorytmu otrzymujemy ciąg zbiorów punktów wyznaczających kolejne triangulacje:

XN-n ... XN-1 XN = X .

Po usunięciu punktu powstały w ten sposób wielokąt ponownie triangulujemy tak, aby ponownie otrzymać triangulację Delaunay.

Ponieważ zaburzenie triangulacji Delaunay ma tylko charakter lokalny, wystarczy tylko striangulować wielokąt wyznaczany przez sąsiadów usuwanego punktu.

Page 4: Geometria obrazu Wykład 8

Głównym problemem jest zdefiniowanie kryteriów określających usuwalność punktów.

Modelowaną powierzchnię przybliżamy funkcjami sklejanymi (spline) będącymi funkcjami liniowymi na każdym trójkącie triangulacji.

Dla każdego podzbioru zbioru Y X możemy zdefiniować taką funkcję

SY = {s: s C(CH(Y)) oraz s|T jest liniowa na każdym T DT(Y)}.

Fakt.

Dla każdego wektora fY liniowy spline L(Y,f) taki, że L(Y,f)(y) = f(y) dla każdego y Y, jest jednoznacznie określony.

Page 5: Geometria obrazu Wykład 8

Definicja.

Dla danej normy |||| w RN błędem aproksymacji funkcji f na zbiorze X przez spline określony na zbiorze Y = Xr X nazywamy wartość

(Y,X) = ||L(Y,f)|X – fX||.

W zależności od rozpatrywanej normy otrzymujemy np.

(Y,X) = maxxX |L(Y,f)(x) – f(x)| lub

2(Y,X) = (xX |L(Y,f)(x) – f(x)|2)1/2 .

Chcielibyśmy dla N-n < k < N znaleźć zbiór Y* X taki, że

|Y*| = k oraz (Y*,X) = minYX, |Y| = k (Y,X).

Page 6: Geometria obrazu Wykład 8

Niestety tak sformułowany problem jest NP-trudny.

Dlatego wykorzystując metodę zachłanną będziemy poszukiwać jak najlepszego rozwiązania.

Kryterium usuwalności AT.

Dla Y X punkt y* Y jest usuwalny z Y wtedy i tylko wtedy, gdy

(Y \ y*,X) = minyY (Y \ y,X).

Wartość e(y) = (Y \ y,X) nazywamy przewidywanym błędem.

W zależności od zastosowania stosuje się różne kryteria usuwalności, które wpływają na postać przewidywanych błędów.

Page 7: Geometria obrazu Wykład 8

Modelowanie terenu.

Kryterium usuwalności AT.

Dla Y X punkt y* Y jest usuwalny z Y wtedy i tylko wtedy, gdy

(Y \ y*,X) = minyY (Y \ y,X) (określamy minimalne odchylenie).

Niech C(y) określa obszar wyznaczany przez sąsiadów punktu y oraz e1(y) = (Y \ y,X C(y)).

Kryterium usuwalności AT1.

Dla Y X punkt y* Y jest usuwalny z Y wtedy i tylko wtedy, gdy

e1(y*) = minyY e1(y).

Page 8: Geometria obrazu Wykład 8

Przykład.

AT AT1.

0

-3

0

-1

5

0

2,5

-1,1

Page 9: Geometria obrazu Wykład 8

Aby przyspieszyć obliczenia możemy nieco uprościć powyższą definicję.

Niech e’(y) = (Y \ y,Y). Wtedy możemy zdefiniować kryterium usuwalności AT2 w następujący sposób:Dla Y X punkt y* Y jest usuwalny z Y wtedy i tylko wtedy, gdy

e’(y*) = minyY e’(y).

Powyższe kryteria odnoszą się do algorytmów przerzedzania dopasowa-nego, tzn. uwzględniającego wartości funkcji f. Można też upraszczać model terenu stosując metody niedopasowane, tzn. bazujące tylko na danych dotyczących zbioru punktów X. Jednym z tego typu kryteriów jest NAT, w którym priorytet wyboru punktów usuwalnych określany jest przez stosunek

minyX \ x d(x, y) / min d(x, ), gdzie d( ) jest funkcją odległości a oznacza brzeg obszaru zawiera-jącego X.

Page 10: Geometria obrazu Wykład 8

Przykład.

Modele gór Hurrungane (Norwegia) w NAT i AT1 i odpowiadające im siatki.

[L. Demaret et al. „Adaptive thinning for terrain modeling and image compression”]

Page 11: Geometria obrazu Wykład 8

Kompresja obrazu.

W tym przypadku będziemy starać się minimalizować błąd średnio-kwadratowy ((2(Y,X))2/N).

Niech e(y) = (2(Y \ y,X))2 dla y Y. Minimalizacja e(y) jest równoważna minimalizacji

e(y) = (2(Y \y,X C(y)))2 – (2(Y,X C(y)))2 dla y Y.

Zdefiniujmy kryterium usuwalności AT2:Dla Y X punkt y* Y jest usuwalny z Y wtedy i tylko wtedy, gdy

e(y*) = minyY e(y).

Fakt.

Algorytmy wykorzystujące kryteria NAT, AT1, AT2 działają w czasie O(N log N).

Page 12: Geometria obrazu Wykład 8

Niech X będzie zbiorem pikseli 2q x 2q a przedział [0, 2r-1] określa skalę barw. Definiujemy miarę zniekształcenia przy kompresji obrazu PSNG (Peak Signal to Noise Ratio) jako

10*log10(2r x 2r x N/ (2(Y,X))2).

Postępując podobnie jak poprzednio obliczamy aproksymację L*(Y,F) SY, gdzie F = f|Y, spełniającą warunek

(i,j)X |L*(Y,F)(i,j) – f(i,j)|2 = mins (i,j)X |s(i,j) – f(i,j)|2 , gdzie s SY.

Postępując odwrotnie do kodowania obliczamy wartości funkcji f.

Notka.

SPIHT (Set Partitioning Into Hierarchical Trees) – metoda kompresji bazująca na transformacjach falkowych.

Page 13: Geometria obrazu Wykład 8

Przykład.

Porównanie kompresji i dekompresji wykonanych z pomocą SPIHT (b) i AT2 (d) oraz triangulacja najbardziej znaczących punktów obrazu (c).

[L. Demaret et al. „Adaptive thinning for terrain modeling and image compression”]

Page 14: Geometria obrazu Wykład 8

Badanie odcisków palców.

Na odcisku palca określamy zbiór istotnych punktów.

Zwykle są to końce linii papilarnych lub punkty, w których się one łączą. Dla danego zbioru punktów tworzymy triangulację Delaunay.

[G. Bebis et al. „Fingerprint Identyfication Using Delaunay Triangulation”]

Page 15: Geometria obrazu Wykład 8

Każdy trójkąt triangulacji jest opisany za pomocą trzech zmiennych. Niech l1, l2, l3 oznaczają długości boków danego trójkąta w porządku niemalejącym. Niech α będzie katem przeciwległym do krawędzi o maksymalnej długości.

Wtedy zmienne z1, z2, z3 przyjmują wartość:

0 ≤ z1 = l1/l3 ≤ 1,

0 ≤ z2 = l2/l3 ≤ 1,

-1 ≤ z3 = cos α ≤ 1.

Następnie skalujemy zmienne, określając odpowiednie progi tak, aby zmienne były liczbami całkowitymi.

Page 16: Geometria obrazu Wykład 8

Badamy odpowiednie triangulacje dla wzorca i danych z bazy.

Dla trójkątów opisanych tymi samymi zmiennymi zapamiętujemy parametry odpowiedniego przekształcenia w przestrzeni transformacji.

Obszar w przestrzeni transformacji, w którym znajduje się najwięcej punktów odpowiadających odwzorowaniom różnych trójkątów wskazuje na przekształcenie, które najlepiej dopasowuje oba obrazy.

Po dokonaniu takiego przekształcenia, można z pomocą przekształcenia afinicznego dodatkowo dopasować trójkąty, które niewiele się różnią.

Procentową zgodność dopasowania określa formuła 200n/(p+q), gdzie n oznacza liczbę pokrywających się punktów, a p i q są liczbami wierz-chołków badanych triangulacji.

Page 17: Geometria obrazu Wykład 8

Przykład.

Dopasowane dwie triangulacje przed i po afinicznej korekcie.

[G. Bebis et al. „Fingerprint Identyfication Using Delaunay Triangulation”]

Page 18: Geometria obrazu Wykład 8

Dziękuję za uwagę.

Page 19: Geometria obrazu Wykład 8

Ćwiczenia.

1. Dany jest zbiór punktów P i zbiór nieprzecinających się krawędzi E.

Jaki jest najniższy rząd triangulacji P zawierającej krawędzie z E ?

Otwarty problem: Znajdź efektywny algorytm obliczający taką triangulację.

2. Jak umieścić dodatkowe punkty na krawędziach z E, aby zmniejszyć rząd triangulacji do danego k (np. k = 0) ?