• Nie Znaleziono Wyników

gramatyka ac-swETPL(k)

W dokumencie Index of /rozprawy2/10347 (Stron 85-93)

5 Rozpoznawanie podpisów w oparciu o bazę wzorców

Definicja 5.7 gramatyka ac-swETPL(k)

Definicja 5.7 – gramatyka ac-swETPL(k)

Statystyczną osłabioną gramatyką grafową klasy ETPL(k) sterowaną atrybutowo (ang. attribute-controlled stochastic weakly) oznaczaną jako ac-swETPL(k)) nad zbiorami atry-butów A, B nazywamy szóstkę G = (Σ, Δ, Ž, Ρ, Ζ, fZ) gdzie:

a) Σ, Δ, Ž, Ζ są określone jak dla gramatyki swETPL(k) zgodnie z definicją B.19, b) fZ : A,B(D){TRUE,FALSE} jest predykatem startowym, gdzie graf Z powstaje

z symbolu startowego Z przez usunięcie wierzchołków nieterminalnych, c) P jest zbiorem produkcji postaci p=(l, D, C, f) gdzie:

– (l, D, C) jest probabilistyczną produkcją zgodnie z definicją gramatyki sTLP (definicja B.11),

57 Rozkład prawdopodobieństwa i dane statystyczne są przydatne np. przy ocenie rozpoznawczej dokładności i jakości wykonania wyrobów poprzez wykorzystanie analizy obrazów w procesie technologicznym [103] . Dla kategorii danych (obrazów) biometrycznych istotne są informacje o cechach dystynktywnych a nie sama statystyka rozkładu wariantów cech. Rozkłady prawdopodobieństw stanowią informację pomocniczą, która może być wykorzystana do uzyskania ewentualnych dodatkowych informacji o poddawanej analizie próbce.

ROZDZIAŁ 5:AUTOMATYCZNA ANALIZA PODPISÓW W OPARCIU O BAZĘ WZORCÓW 86 f : A,B(D){TRUE,FALSE}58

jest predykatem stosowalności produkcji p, gdzie graf D powstaje z grafu D przez usunięcie wierzchołków nieter-minalnych.

Sterowanie atrybutowe polega na tym, iż zdefiniowane dla potrzeb gramatyki predykaty stosowalności pozwalają określić na podstawie kontekstu semantycznego (wartości atrybu-tów, w tym przypadku jest to zbiór momentów Zernike’a, ale generalnie może to być do-wolny zbiór parametrów) czy na danym etapie wywodu konkretna produkcja może być zastosowana. Tym samym na każdym etapie analizy syntaktycznej są wykorzystywane dodatkowe (wbudowane) informacje o kształtach poszczególnych składowych pierwotnych składających się na rozpoznawaną scenę (parametry, atrybuty) i mają one bezpośredni wpływ na jednoznaczny wybór produkcji możliwej do zastosowania. Predykat stosowalno-ści f (predykat startowy) jest wyznaczany także dla elementu startowego gramatyki, aby Z móc określić czy badany graf może być w ogóle wywiedziony z aksjomatu Z. Aby zilu-strować działanie tego mechanizmu w praktyce wróćmy do analizowanego wcześniej wy-wodu i momentu wyboru produkcji właściwej do zastosowania. Na rys. 5.10 umieszczono graf 1-TL(H,3,4) reprezentujący strukturę uchwytu uzyskanego z wywodzonego grafu H (por. rys. 5.10a) oraz izomorficzne z nim grafy ze zbioru OTLN(A) reprezentujące odpo-wiednie produkcje gramatyki probabilistycznej sterowanej atrybutowo ac-swETPL(k) (por. rys. 5.10b-d). Dla potrzeb przykładu oznaczmy te grafy symbolami D (graf uchwytu) oraz

1

D ,D i2 D (kandydujące grafy OTL). Na ilustracji zostały również zaznaczone odpowied-3 nie zbiory atrybutów skojarzone z etykietami węzłowymi grafów reprezentujących pro-dukcje i grafu sterującego wywodem D – dla uproszczenia przykładu założono, iż zbiory atrybutów będę 5-cio elementowe i skojarzone tylko z etykietami węzłowymi, aby spełniać założenia z rozdz. 4.2. W praktyce dla potrzeb omawianego w pracy zagadnienia rozpo-znawania podpisów liczebność zbioru atrybutów jest znacznie większa i wykorzystywane są parametry w postaci liczb zespolonych (por. rozdz. 4.1 i 4.2).

ROZDZIAŁ 5:AUTOMATYCZNA ANALIZA PODPISÓW W OPARCIU O BAZĘ WZORCÓW 87 s c 1 d 2 1-TL(H,3,4) c s 1 d 2 (2-3) s c 1 d 2 (2-4) c s 1 d 2 (2') a) c) b) d) 4 0 2 9 -4 5 1 3 7 -1 3 0 3 4 -1 3 0 1 5 -1 2 2 1 5 -2 6 3 1 1 -1 2 4 1 1 -1 3 3 1 2 -2 3 3 1 1 -2 3 4 1 2 -3 4 0 1 1 -1 3 1 1 6 -2 4 2 1 7 -1 4 1 1 4 -2 4 0 2 5 -1 5 2 1 7 -3 3 0 1 7 -2 2 5 0 0 -1

Rysunek 5.10. Atrybutowane grafy IE wykorzystywane do wskazania właściwej produkcji na danym etapie

wywodu: a) graf Dreprezentujący uchwyt, b-d) grafyD1,D2iD3 reprezentujące produkcje.

Sama w sobie definicja 5.7 nie nakłada żadnych szczególnych ograniczeń formalnych na postać funkcji ukonkretniającej wartości predykatów stosowalności. Można ją dobrać indywidualnie dla konkretnego zastosowania aplikacyjnego. Jedynym silnym warunkiem jest zastrzeżenie, aby przywyznaczaniu wartości predykatu uwzględniać tylko te wierz-chołki prawych stron produkcji, które są wierzchołkami terminalnymi (definicja 5.7c). W omawianym przypadku wykorzystana zostanie miara podobieństwa zaproponowana w rozdz. 4.1 (por. wzór 4.10). Ponadto zakłada się, iż wektory atrybutów zaznaczone na rys. 5.10 są postaci V {aF,v1,v2,v3,v4}, gdzie pierwszy element wektora reprezentuje współ-czynnik Fereta związany z przestrzenną orientacją elementu sceny a pozostałe parametry to współczynniki kształtu. W celu wyznaczenia wartości predykatu stosowalności f dla poszczególnych grafów reprezentujących produkcje kandydujące do wyboru obliczany jest w pierwszej kolejności poziom podobieństwa pomiędzy grafem uchwytu D (rys. 5.10a) a poszczególnymi wersjami grafów OTL (rys. 5.10b-d). Dla danego grafu Dk poziom ten jest obliczany jako suma minimalnych podobieństw pomiędzy odpowiadającymi sobie węzłami tworzącymi te grafy. W związku z koniecznością uwzględniania tylko wierzchoł-ków terminalnych powiązanych z produkcjami obliczenia stopnia podobieństwa będą wy-konywane dla wierzchołka o indeksie 1 dla produkcji (2) (por. rys. 5.2b) oraz dla

wierz-ROZDZIAŁ 5:AUTOMATYCZNA ANALIZA PODPISÓW W OPARCIU O BAZĘ WZORCÓW 88 chołków o indeksach 1 i 2 produkcji (2’) (por. rys. 5.3.b). Przyjmując następujące ozna-czenia:

V (V1,..,Vn) - zbiór wektorów atrybutów dla węzłów grafu D reprezentu-jącego uchwyt,

W (W1,..,Wn)- zbiory wektorów atrybutów dla węzłów grafu Dk repre-zentującego kandydującą produkcję,

Wi (Wi1,..,Wim)- zbiór wektorów atrybutów dla danego węzła grafu zwią-zanego z produkcją.

można zapisać wzór na poziom podobieństwa pomiędzy grafem D a Dkw postaci funkcji ) , (D Dk GSD określonej formułą 5.1:

i w v j k j i i SD D D GSD( , ) (min , ) (5.1) gdzie, j i iw v SD

, oznacza współczynnik podobieństwa pomiędzy węzłem V grafu D repre-i zentującego uchwyt a jtym wektorem atrybutów przypisanym do odpowiadającego mu węzła Wi w izomorficznym grafie Dk ze zbioru OTLN(A) (zgodnie ze wzorem 4.10). Suma minimalnych wartości podobieństwa pomiędzy wszystkimi węzłami tych grafów daje w efekcie całościowy (ang. global) poziom podobieństwa pomiędzy uchwytem a ba-danym grafem produkcji. Przykładowe obliczenia dla grafów z rys. 5.10 zostały zebrane w tabeli 5.1.

Tabela 5.1. Wartości współczynników podobieństwa pomiędzy uchwytem a poszczególnymi grafami OTL.

Minimalne sumy cząstkowe dla węzłów zostały wyróżnione poprzez pogrubienie, dla produkcji (2) nie uwzględniamy węzła d2 – warunek terminalności.

Graf Współczynnik podobieństwa dla węzła c1

Współczynnik podobieństwa dla węzła d2 ) , (D Dk GSD 1 D 6 2.8 11.3 - - - 2.8 2 D 5.1 5.2 9 - - - 5.1 3 D 2.1 5.2 1 2.7 3.1

Na podstawie uzyskanych wyników można określić wartość predykatów stosowalności dla poszczególnych produkcji wg następującej reguły określonej wzorem 5.2:

ROZDZIAŁ 5:AUTOMATYCZNA ANALIZA PODPISÓW W OPARCIU O BAZĘ WZORCÓW 89 D k k k D TRUE GSD D D T f ( )  ( , ) (5.2)

gdzie, f oznacza predykat stosowalności dla produkcji reprezentowanej przez graf k D a k parametr T wyznacza minimalny próg podobieństwa (dokładność) akceptowalny dla da-D nego języka opisu kształtów sceny. Wartość tego współczynnika jest ustalana dla danej gramatyki i nie zmienia się w czasie wywodu. Przyjmując w rozważanym przykładzie

3

D

T pozytywna wartość predykatu stosowalności f1TRUE zostałaby uzyskana dla grafu D1 reprezentującego produkcję (2). Gdyby kilka grafów uzyskało pozytywną war-tość predykatu stosowalności to do dalszego wywodu wybiera się produkcję o najmniejszej wartości poziomu podobieństwa.

Kończąc rozważania teoretyczne zdefiniujmy formalnie algorytm parsingu dla tego typu gramatyk. W tym celu wprowadzone zostaną następujące oznaczenia:

G- gramatyka grafowa klasy ac-swETPL(k)

H (VH,EH,,,H,VH,EH) – poddawany analizie atrybutowany graf aIE,

R(VR,ER,,,R,VR,ER)– losowy atrybutowany graf arIE wywodzony podczas parsingu,

Z – aksjomat gramatyki G,

PCEL – lista potencjalnie kontekstowo identycznych krawędzi dochodzących do wierzchołków nieterminalnych,

VELi – lista niezatwierdzonych (ang. unfixed) krawędzi dochodzących do wierz-chołka o indeksie i,

T – zbiór TTLN określony w danym kroku wywodu,

O – zbiór OTLN określony w danym kroku wywodu,

R(i) – etykieta wierzchołka należącego do grafu R i mającego indeks i,

n – liczba wierzchołków w grafie H .

Ponadto zakłada się istnienie następujących procedur i funkcji wykorzystywanych przez parser, a szczegółowo opisanych w przeprowadzonej w tym rozdziale dyskusji teoretycz-nej:

GiveMaxInd(R) – zwraca liczbę wierzchołków grafu R,

ROZDZIAŁ 5:AUTOMATYCZNA ANALIZA PODPISÓW W OPARCIU O BAZĘ WZORCÓW 90

GenerateTTLN(A) – zwraca zbiór terminalnych dwupoziomowych losowych gra-fów generowanych z nieterminala A,

GenerateOTLN(W, T) – zwraca zbiór terminalnych dwupoziomowych wyniko-wych grafów generowanych ze zbioru TTLN,

ChooseProduction(W, O, p)

wybiera ze zbioru O wszystkie grafy hj, które są izomorficzne z grafem

W,

dla wszystkich grafów hjoblicza poziomy podobieństwa w oparciu o wek-tory atrybutów oraz wyznacza predykaty stosowalności fjdla każdego gra-fu hj

spośród grafów h znajduje graf j hm, który minimalizuje wartość funkcji podobieństwa i dla którego predykat stosowalności f przyjmuje wartość m pozytywną,

do zmiennej p zapisuje numer produkcji związanej z wybranym grafem

m

h lub 0 jeśli taki graf nie istnieje

ApplyProduction(R, i, p) – stosuje produkcję o numerze p do wierzchołka o in-deksie i należącego do grafu R,

CheckCI(H, R, i) : error – sprawdza czy wierzchołki o indeksie i grafów H i R

są kontekstowo identyczne, zwraca wartość 0/1 (prawda/fałsz),

CheckPCI(H, R, i, error) – sprawdza czy wierzchołki o indeksie i grafów

H i Rsą potencjalnie kontekstowo identyczne, jeśli tak to uzupełniona zostaje lista

PCEL o potencjalnie kontekstowe krawędzie postaci (q,i,), zmienna error ustawiana jest na wartość 0/1 (prawda/fałsz),

CompleteUE(H, R, i) – jeśli wierzchołek o indeksie i grafu Rjest nieterminalny to uzupełniona zostaje odpowiednia lista VELi przechowująca informacje o kontek-ście poprzedzającym tego wierzchołka w postaci par (q,)opisujących krawędzie niezatwierdzone (ang. unfixed),

TestPCI(PCEL, R, error) – sprawdza czy dla krawędzi z listy PCEL znajdują się w grafie Rodpowiadające im krawędzie losowe, jeśli tak to są usuwane z listy, zmienna error ustawiana jest na wartość 0/1 (prawda/fałsz),

ROZDZIAŁ 5:AUTOMATYCZNA ANALIZA PODPISÓW W OPARCIU O BAZĘ WZORCÓW 91

TestUE(VELi, R, error) – sprawdza czy dla krawędzi z listy VELi znajdują się w grafie Rodpowiadające im krawędzie losowe (po ewentualnej zmianie losowego etykietowania przez transformacje osadzenia), jeśli tak to są usuwane z listy, zmienna error ustawiana jest na wartość 0/1 (prawda/fałsz),

TestAxiomAP(H, R, error) – oblicza poziom podobieństwa i wyznacza wartość predykatu stosowalności f dla grafu startowego (wierzchołka terminalnego o in-Z deksie 1), zmienna error ustawiana jest na wartość 0/1 (prawda/fałsz) w zależności od wartości fZTRUE/FALSE.

W efekcie algorytm parsingu deterministycznych atrybutowanych grafów IE dla stero-wanych atrybutowo probabilistycznych gramatyk klasy ac-swETPL(k)59 przyjmuje postać jak na rys. 5.11. R:=Z; PCEL=Ø; error:=0; TestAxiomAP(H,R,error); for i:=1 to n do if error=0 then begin

if фR(i) is a nonterminal node then Begin VEL(i)=Ø; CompleteUE(H,R,i); m:=GiveMaxInd(R)+1; Construct_k-TL(H,i,m,W); T:=GenerateTTLN(ф R(i)); O:=GenerateOTLN(W,T); ChooseProduction(W,O,p);

if p=0 then error:=1 else ApplyProduction(R,i,p); end;

if not CheckCI(H,R,i) then CheckPCI(H,R,i,error); TestPCI(PCEL,R,error);

TestUE(VEL(i),R,error); end;

Rysunek 5.11. Algorytm parsingu deterministycznych atrybutowanych grafów IE dla gramatyk

probabi-listycznych klasy ac-swETPL(k)

59 Analogiczny algorytm może zostać wykorzystany dla gramatyk ac-sETPL(k). Jego dostosowanie do kano-nicznej gramatyki ac-sETPL(k) wymaga jedynie usunięcia procedur odpowiedzialnych za obsługę krawędzi niezatwierdzonych (ang. unfixed). Złożoność obliczeniowa pozostanie na tym samym poziomie.

ROZDZIAŁ 5:AUTOMATYCZNA ANALIZA PODPISÓW W OPARCIU O BAZĘ WZORCÓW 92 Proponowany schemat parsingu jest jednoprzebiegowy typu generacyjnego bez nawro-tów, a główna pętla wykonuje się dokładnie n razy, gdzie n oznacza rozmiar (liczbę wierz-chołków) poddawanego analizie grafu. Aby ocenić złożoność obliczeniową tak skonstruo-wanego algorytmu oszacowana zostanie złożoność obliczeniowa poszczególnych funkcji i procedur.

 Funkcja GiveMaxInd(R) – nie zależy od liczby wierzchołków grafu, ograni-czona przez stałą, O(1),

 Procedura Construct_k-TL(H, i, m, W) – konstruowany podgraf składa się z co najwyżej k+1 wierzchołków, gdzie k jest stałe dla danej gramatyki grafowej, O(1),

 Funkcja GenerateTTLN(A) – nie zależy od liczby wierzchołków grafu, ogra-niczone przez stałą, O(1),

 Funkcja GenerateOTLN(W, T) – nie zależy od liczby wierzchołków grafu, ograniczone przez stałą, O(1),

 Procedura ChooseProduction(W, O, p) – nie zależy od liczby wierzchołków grafu, ograniczone przez stałą, O(1),

 Procedura ApplyProduction(R, i, p) – zastosowanie produkcji p gramatyki G do wierzchołka o indeksie i losowego grafu R wymaga połączenia wierzchoł-ków grafu prawej strony tej produkcji z maksymalnie n-1 wierzchołkami wy-wodzonego grafu R, całość proporcjonalna do n, O(n),

 Funkcja CheckCI(H, R, i) : error – zgodnie z oszacowaniem w [143] O(n),  Procedura CheckPCI(H, R, i, error) – zgodnie z oszacowaniem w [143] O(n),  Procedura CompleteUE(H, R, i) – dla danego wierzchołka maksymalna liczba

krawędzi wchodzących, które potencjalnie stanowią zbiór VELi wynosi n1, O(n),

 Procedura TestPCI(PCEL, R, error) – dla danego wierzchołka maksymalna ilość elementów listy PCEL wymagających sprawdzenia wynosi d i spełnia warunek dn, O(n),

 Procedura TestUE(VELi, R, error) – podobnie jak dla CompleteUE(H, R, i) proporcjonalna do n, O(n),

 Procedura TestAxiomAP(H, R, error) – nie zależy od liczby wierzchołków grafu, ograniczone przez stałą, O(1).

ROZDZIAŁ 5:AUTOMATYCZNA ANALIZA PODPISÓW W OPARCIU O BAZĘ WZORCÓW 93 Podsumowując powyższe rozważania pojedynczy etap wywodu w gramatyce ac-swETPL(k) posiada pesymistyczną złożoność rzędu O(n). Parsing wymaga wykonania dokładnie n kroków więc ostateczne oszacowanie złożoności czasowej pełnego algorytmu parsera dla sterowanej atrybutowo gramatyki swETPL(k) wynosi O(n2) podobnie jak in-nych algorytmów dostępin-nych dla języków klasy ETPL(k).

5.2 Kompleksowa analiza scen w oparciu o grafy hierarchiczne

Mając do dyspozycji efektywny mechanizm parsingu dla języków opisujących lokalnie strukturę obrazów podpisów na poziomie grafemów (poziom II w grafie hierarchicznym) w postaci zdefiniowanych w rozdz. 5.1 gramatyk klasy as-swETPL(k) można przejść do kwestii analizy syntaktycznej podpisu, jako całości. Wymaga to określenia gramatyki zdolnej do generowania języka w postaci hierarchicznych grafów HrIE opisujących prze-strzenny układ części składowych podpisu w ujęciu globalnym (por. rozdz. 4.3). Poniżej (definicja 5.8) zaproponowana jest gramatyka hierarchiczna spełniająca te wymagania.

W dokumencie Index of /rozprawy2/10347 (Stron 85-93)