• Nie Znaleziono Wyników

Selekcja i klasyfikacja wykrytych punktów charakterystycznych

4. Propozycja autorskiego algorytmu wykrywania punktów charakterystycznych

4.3. Selekcja i klasyfikacja wykrytych punktów charakterystycznych

Wynikiem przeprowadzenia operacji poszukiwania maksimów lokalnych na połączonej macierzy map prawdopodobieństwa, jest zbiór potencjalnych punktów charakterystycznych, tak jak przedstawia przykład z Rys. 25. Selekcja przeprowadzana jest w celu odrzucenia punktów wykrytych w niewłaściwych współrzędnych. Pozostałe punkty poddawane są klasyfikacji w celu określenia ich przynależności do danej grupy punktów.

W celu przystąpienia do selekcji i klasyfikacji wykrytych punktów charakterystycznych należy przygotować następujące dane:

 Pozycja punktów nadgarstka;

 Pozycja dwóch potencjalnych regionów śródręcza wyznaczona z transformaty odległościowej po obu stronach nadgarstka;

 Połączenie obu map prawdopodobieństwa dopasowania wzorca;

 Obraz będący wynikiem transformaty odległościowej z obrazu kierunkowego.

Potencjalnymi punktami, które będą poddawane klasyfikacji są lokalne maksima macierzy prawdopodobieństwa dopasowania wzorców. Każdy wykryty punkt P o współrzędnych (xP,yP) poddawany jest procesowi klasyfikacji, który powstał z połączenia reguł wnioskowania oraz drzew decyzyjnych. Każdy punkt poddawany jest następującym podziałom:

 Wykryty punkt jest odrzucany jeżeli znajduje się zbyt blisko nadgarstka lub konturu. Jeżeli w obrazie transformaty odległościowej z maski dłoni (DT), punkt o tych samych współrzędnych ma wartość mniejszą niż zadany próg, należy odrzucić ten punkt. Region filtracji takich punktów oznaczony jest strefą koloru czerwonego na Rys. 29 oraz opisany wzorem:

𝐷𝑇𝑃(𝑥𝑃,𝑦𝑃) > 𝑡𝐷𝑇 . (16)

 Jeżeli punkt został wykryty powyżej prostej wyznaczonej przez punkty nadgarstka, należy sklasyfikować go do grupy pierwszej, jeżeli poniżej, do grupy drugiej. Na tym etapie numer grupy nie oznacza przynależności punktów do region śródręcza lub regionu przedramienia. Region grupy pierwszej i drugiej oznaczony jest strefą koloru zielonego oraz niebieskiego, (zarówno ciemny jak i jasny) na Rys. 29.

Przynależność do grupy określa się spełnieniem lub niespełnieniem nierówności:

(𝑦𝑃− 𝑦𝑊1)(𝑥𝑊2− 𝑥𝑊1) − (𝑦𝑊2− 𝑦𝑊1)(𝑥𝑃− 𝑥𝑊1) > 0 . (17) P oznacza wykryty punkt, a W1 i W2 są to punkty nadgarstka. Wzór jest zmodyfikowaną wersją wzoru na prostą przechodzącą przez punkty A i B:

(𝑦 − 𝑦𝐴)(𝑥𝐵− 𝑥𝐴) − (𝑦𝐵− 𝑦𝐴)(𝑥 − 𝑥𝐴) = 0 . (18)

 Jeżeli punkt wykryty został wewnątrz okręgu o promieniu pomnożonym przez współczynnik powiększenia strefy śródręcza λ. oznaczony jest on jako część palca zgiętego. Jeżeli wykryty jest na zewnątrz, oznaczony jest jako czubek palca wyprostowanego. Palce zgięte wykrywane będą wewnątrz ciemnego regionu, a palce wyprostowane wewnątrz jasnego na Rys. 29. Aby określić region w programie używa się funkcji wyznaczenia odległości wykrytego punktu P od środka regionu śródręcza S, a następnie porównuje się go do promienia przemnożonego o współczynnik powiększenia strefy śródręcza:

|𝑃𝑆| > 𝑟𝑆∙ 𝜆. (19)

Wykryty punkt, jeżeli nie zostanie odrzucony, zostaje sklasyfikowany do grupy pierwszej lub grupy drugiej, w zależności od występowania poniżej lub powyżej punktu nadgarstka. W trakcie wykrywania kolejnych punktów, każda grupa zlicza liczbę punktów do niej należącej.

Skupiając się na ostatnim kryterium, przeanalizujmy co dzieje się w przypadku wykrycia punktu należącego do zgiętego lub wyprostowanego palca. Nowo wykryty punkt P, jeżeli znajduje się poza okręgiem o promieniu pomnożonym przez współczynnik powiększenia strefy śródręcza λ, traktowany jest jako wyprostowany. Palec wyprostowany ma nasadę na granicy strefy śródręcza, którą określa okrąg śródręcza. Aby odnaleźć ten punkt należy przemieszczać się wzdłuż wykrytego palca aż do momentu odnalezienia pary punktów, czyli czubka palca T (ang. finger tip), oraz nasady B (ang. finger base). Te założenia zilustrowano na Rys. 30.

Rys. 29 Podział stref klasyfikacji wykrytych punktów charakterystycznych.

Czerwony – Strefa odrzutu punktów zbyt blisko konturu;

Zielony/niebieski – Podział na regiony dłoni i przedramienia poprzez linię nadgarstka;

Jasny kolor – Punkty klasyfikowane jako palce wystające;

Ciemny kolor – Punkty klasyfikowane jako palce zgięte;

Koła symbolizują strefy śródręcza i powiększone strefy śródręcza.

Najpierw analizowany jest region wykrytego punktu czubka palca T1 w obrazie transformaty odległościowej z obrazu kierunkowego. Na obrazie transformaty odległościowej, na współrzędnych wykrytego punktu T1 i o promieniu równym wartości transformaty w tym punkcie, czyli 𝑟 = 𝐷𝑇𝑃(𝑥𝑃,𝑦𝑃) nanoszone jest koło z wartością 0 kasujące wszelkie potencjalne maksima. Następnie, w promieniu 𝑟2 = 𝐷𝑇𝑃(𝑥𝑃,𝑦𝑃)∙ 𝜆 , szukane jest lokalne maksimum w punkcie B1. Jako że punkt ten nie może być wykryty w najbliższym otoczeniu punktu czubka palca, zostaje on wykryty w bliskiej odległości, na środku palca.

Po wykryciu tego punktu realizowana jest raz jeszcze ta sama procedura. Punkt oraz jego najbliższe sąsiedztwo jest wymazywane, a następnie odnajdywany jest kolejny punkt maksimum podstawiany pod B1. W ten sposób, wędrując po lokalnych maksimach umieszczonych wzdłuż palca, ostatecznie odnajdywany jest taki punkt, który znajduje się wewnątrz okręgu śródręcza. Wcześniej wykryty punkt bazowy B1 staje się ostatecznym punktem nasady palca. Oznacza to, że punkt B1 jest blisko okręgu śródręcza, jednocześnie poza nim, czyli |SB1|≈rS .Ten etap ilustruje Rys. 30 oraz algorytm z Rys. 34.

a) b)

Rys. 30 Przykład wykrycia punktu czubka palca wyprostowanego (żółty krzyżyk) i punktu nasady palca (zielony krzyżyk). a) Punkt wykryty jest na Rys. 25, b) Rys. 26-a służy do wykrycia ścieżki palca.

W przypadku, gdy kolejny punkt czubka palca T2 zostanie wykryty i sklasyfikowany jako zgięty palec, procedura podążania po maksimach transformaty odległościowej jest podobna, jednak kryterium stopu jest inne. Wyróżniane są dwa przypadki, czyli dwa kryteria stopu dla zgiętych palców. Pierwszy przypadek występuje, gdy czubek palca zostanie wykryty wewnątrz obszaru zamkniętego.

a) b)

Rys. 31 Przykład wykrycia punktu palca zgiętego (żółty krzyżyk) i punktu nasady palca (zielony krzyżyk), która aproksymowana jest na końcu danego regionu. a) Punkt wykryty jest na Rys. 25, b) Rys. 26-a służy do wykrycia ścieżki

palca.

Obszar zamknięty to taki, w którym obraz kierunkowy tworzy zamknięty kontur, a lokalne maksima transformaty odległościowej otoczone są ze wszystkich stron wartościami 0. Region zamknięty można zaobserwować na Rys. 30 w obszarze palca serdecznego. Rys. 31 przedstawia procedurę odnalezienia nasady palca, w miejscu odnalezienia ostatniego lokalnego maksimum w danym rejonie.

W przypadku wykrycia punktu czubka palca T3, wewnątrz obszaru, który nie jest zamknięty, poszukiwanie kolejnych maksimów transformaty odległościowej wzdłuż palca mogłoby powodować wymazywanie regionów, które powinny być w przyszłości sklasyfikowane jako nowe punkty charakterystyczne. Dlatego wyznaczono statystycznie średnią długość palca zgiętego, która w przybliżeniu równa jest promieniowi regionu śródręcza. Kryterium stopu dla tego przypadku jest osiągnięte gdy punkt nasady palca oddali się od punktu czubka palca o odległość rS. Wykrywanie palców zgiętych realizowane jest zgodnie z algorytmem przedstawionym na Rys. 35.

a) b)

Rys. 32 Przykład wykrycia punktu palca zgiętego (żółty krzyżyk) i wnioskowania nasady palca (zielony krzyżyk), która aproksymowana jest na postawie odległości. a) Punkt wykryty jest na Rys. 25, b) Rys. 26-a służy do wykrycia ścieżki palca.

Procedura wykrywania punktów charakterystycznych realizowana jest tak długo aż zostanie wykryta zadeklarowana wcześniej odpowiednia liczba punktów, lub gdy wykrycie nowych nie będzie możliwe. Wymazywanie przeanalizowanych już danych nanoszone jest również na obraz źródłowy, aby w miejscu wykrycia palców nie wykrywać nowych punktów charakterystycznych. Każda para punktów klasyfikowana jest do odpowiadającej sobie grupy, w zależności od tego, po której stronie nadgarstka została wykryta. Obserwacje wskazały, że region dłoni jest mniej jednorodny, co sprawia, że więcej punktów jest wykrywanych po stronie dłoni niż po stronie przedramienia. Dlatego ostatecznie ta grupa, która jest liczniejsza, klasyfikowana jest jako grupa zawierająca punkty charakterystyczne dłoni.

Pozostała grupa jest odrzucana jako zbiór błędnie wykrytych punktów w regionie przedramienia.

Podsumowując zbiór reguł można utworzyć drzewo decyzyjne przedstawione na Rys. 33.

Rys. 33 Drzewo decyzyjne klasyfikacji wykrytych punktów charakterystycznych

W zależności od tego, czy punkt wykryty został wewnątrz strefy śródręcza, czy poza nią, realizowany jest algorytm *1 przedstawiony na Rys. 34 lub *2 przedstawiony na Rys. 35.

Obie metody różnią się w sposobie odnajdywania pary punktów T i B z wykrytego punktu P.

Ostateczne przypisanie punktów do grup odbywa się na podstawie tego samego kryterium.

Podsumowując, celem przedstawionej metody jest wykrycie pary punktów T i B za pomocą odnalezionego punktu ekstremum P lub porzucenie tego punktu. W przypadku wykrycia punktów T i B dodatkowym celem jest przypisanie ich do grupy 1 lub grupy 2. Po wykryciu FN punktów, mniej liczna grupa zostaje usunięta.

𝑃(𝑥, 𝑦)

Usuń P 𝐷𝑇𝑥𝑃,𝑦𝑃> 𝑡𝐷𝑇

Tak Nie

|𝑃𝑊| > |𝑆𝑊|

Tak Nie

Usuń P

|𝑃𝑆| < 𝑟𝑆𝜆 Tak Nie

𝑇(𝑥𝑇, 𝑦𝑇) 𝐵(𝑥𝐵, 𝑦𝐵)

𝑇(𝑥𝑇, 𝑦𝑇) 𝐵(𝑥𝐵, 𝑦𝐵) Algorytm

*2)

Algorytm *1)

(𝑦𝑃− 𝑦𝑊1)(𝑥𝑊2− 𝑥𝑊1) − (𝑦𝑊2− 𝑦𝑊1)(𝑥𝑃− 𝑥𝑊1) > 0 Tak Nie

𝑇, 𝐵 ∈ 𝐺𝑟. 1 𝑇, 𝐵 ∈ 𝐺𝑟. 2

// Zakłada się punkt startowy P.

// Początkowo punkty T i B przyjmują // współrzędne punktu P.

// Wartość promienia r pobierana jest // z wartości transformaty

// odległościowej w punkcie B.

// Na obraz transformaty

// odległościowej DT, nanoszone jest // koło w punkcie B, o promieniu r, // i wartości 0

// Nowy punkt B odnajdywany jest jako // maksimum w okręgu o promieniu rσ, // środku T i wartościami z DT

// Czy w regionie poszukiwań

// odnajdywane maksima dążą do 0?

// Następuje przesunięcie punktu B // bliżej środka śródręcza S oraz wyjście // z potencjalnego zapętlenia.

// Czy odległość pomiędzy punktami TB // jest większa niż promień śródręcza?

// Koniec,

// odnaleziono parę punktów T i B

Rys. 34 Schemat blokowy algorytmu poszukiwania punktów palca wzniesionego.

𝑃(𝑥𝑃, 𝑦𝑃)

𝑇(𝑥𝑇, 𝑦𝑇) ≔ 𝑃(𝑥𝑃, 𝑦𝑃) 𝐵(𝑥𝐵, 𝑦𝐵) ≔ 𝑃(𝑥𝑃, 𝑦𝑃)

𝑊𝑠𝑡𝑎𝑤𝐾𝑜𝑙𝑜(𝑫𝑻, 𝐵, 𝑟, 0) 𝑟 ≔ 𝑫𝑻𝑥𝐵,𝑦𝐵

𝑇 ≔ 𝑀𝑎𝑥(𝑫𝑻, 𝐵, 𝑟 ∙ 𝛿)

|𝐵𝑆| > 𝑟𝑆 𝑟 ≈ 0

𝑇(𝑥𝑇, 𝑦𝑇) 𝐵(𝑥𝐵, 𝑦𝐵) Nie

Tak

Tak

Nie

*1)

𝐵 ≔ 𝐵 + 𝐵𝑆 ∙ 𝜏

// Zakłada się punkt startowy P.

// Początkowo punkty T i B przyjmują // współrzędne punktu P.

// Wartość promienia r pobierana jest // z wartości transformaty

// odległościowej w punkcie T.

// Na obraz transformaty

// odległościowej DT, nanoszone jest // koło w punkcie T, o promieniu r, // i wartości 0

// Nowy punkt T odnajdywany jest jako // maksimum w okręgu o promieniu rσ, // środku T i wartościami z DT

// Czy w regionie poszukiwań

// odnajdywane maksima dążą do 0?

// Czy odległość pomiędzy punktami TB // jest większa niż promień śródręcza?

// Koniec,

// odnaleziono parę punktów T i B

Rys. 35 Schemat blokowy algorytmu poszukiwania punktów palca zdjętego

𝑃(𝑥𝑃, 𝑦𝑃)

𝑇(𝑥𝑇, 𝑦𝑇) ≔ 𝑃(𝑥𝑃, 𝑦𝑃) 𝐵(𝑥𝐵, 𝑦𝐵) ≔ 𝑃(𝑥𝑃, 𝑦𝑃)

𝑊𝑠𝑡𝑎𝑤𝐾𝑜𝑙𝑜(𝑫𝑻, 𝑇, 𝑟, 0) 𝑟 ≔ 𝑫𝑻𝑥𝑇,𝑦𝑇

𝑇 ≔ 𝑀𝑎𝑥(𝑫𝑻, 𝑇, 𝑟 ∙ 𝛿)

|𝑇𝐵| > 𝑟𝑆 𝑟 ≈ 0

𝑇(𝑥𝑇, 𝑦𝑇) 𝐵(𝑥𝐵, 𝑦𝐵) Tak

Nie

Nie

Tak

*2)