Detekcja twarzy w obrazach cyfrowych

23
Detekcja twarzy w obrazach cyfrowych z wykorzystaniem algorytmów heurystycznych Piotr Latusek latusekpiotr@gmai l.com

description

Detekcja twarzy w obrazach cyfrowych. z wykorzystaniem algorytmów heurystycznych. Piotr Latusek [email protected]. PLAN. • Detekcja twarzy i problemy pokrewne • Wyzwania • Heurystyka, kategorie heurystyk • Wybrane podejście • Filtry • Łączenie wyników. - PowerPoint PPT Presentation

Transcript of Detekcja twarzy w obrazach cyfrowych

Page 1: Detekcja twarzy w obrazach cyfrowych

Detekcja twarzy w obrazach cyfrowychz wykorzystaniem algorytmów heurystycznych

Piotr [email protected]

Page 2: Detekcja twarzy w obrazach cyfrowych

PLAN

• Detekcja twarzy i problemy pokrewne• Wyzwania• Heurystyka, kategorie heurystyk• Wybrane podejście• Filtry• Łączenie wyników

Page 3: Detekcja twarzy w obrazach cyfrowych

DETEKCJA TWARZYI PROBLEMY POKREWNE

• Detekcja twarzy:„ Na postawie zdjęcia ustalić czy znajdują się na

nim twarze, a jeśli tak to w którym miejscu i jaki jest ich rozmiar”

• Lokalizacja twarzy• Rozpoznawanie twarzy

Page 4: Detekcja twarzy w obrazach cyfrowych

WYZWANIA I PROBLEMY

• Poza twarzy• Przysłanianie

• Mina

• Obecność lub brak elementów strukturalnych

• Kąt

• Warunki środowiskowe

Page 5: Detekcja twarzy w obrazach cyfrowych

HEURYSTYKA

„Heurystyka - w informatyce metoda znajdowania rozwiązań, dla której nie ma gwarancji znalezienia rozwiązania optymalnego, a często nawet prawidłowego.”

„Rozwiązań tych używa się np. wtedy, gdy pełny algorytm jest z przyczyn technicznych zbyt kosztowny, lub gdy jest nieznany.”

www.wikipedia.pl

Page 6: Detekcja twarzy w obrazach cyfrowych

KATEGORIE HEURYSTYK

• Metody oparte na ogólnej wiedzy• Metody zakładające niezmienność cech

• Metody dopasowujące do wzorców• Metody dopasowujące do modelu

Do 2002 roku powstało ponad 150różnych metod detekcji twarzy.

M. H. Yang, D. J. Kriegman, N. Ahuja, „Detecting Faces in Images”.

Page 7: Detekcja twarzy w obrazach cyfrowych

WYBRANE PODEJŚCIE

H. A. Rowley, S. Baluja, T. Kanade, „Neural Network-Based Face Detection”.

Page 8: Detekcja twarzy w obrazach cyfrowych

WYBRANE PODEJŚCIE

H. A. Rowley, S. Baluja, T. Kanade, „Neural Network-Based Face Detection”.

• Skalowanie• Maska 20 x 20 pikseli• Przetwarzanie wstępne: - eliminacja wariancji oświetlenia, - wyrównywanie histogramu• Właściwy filtr• Łączenie wyników

Page 9: Detekcja twarzy w obrazach cyfrowych

WYBRANE PODEJŚCIE

• Skalowanie gwarantuje wykrycie twarzy niezależnie od jej wielkości - co z rotacją?

• Przetwarzanie wstępne ujednolica obraz na wejściu filtrów – m.in. niweluje wpływ różnic w oświetleniu

• Możliwość jednoczesnego zastosowania wielu filtrów

Page 10: Detekcja twarzy w obrazach cyfrowych

WYBRANE PODEJŚCIE

Dla obrazu o rozmiarach

3072 x 2304 (ok. 7 Mpix)

właściwy filtr musi być zastosowany do

19 140 875 ramek 20 x 20 pix.

Page 11: Detekcja twarzy w obrazach cyfrowych

FILTRY

• Sieci neuronowe

• Najbliższy sąsiad - Linear discriminant analysis, Fisherfaces - Samoorganizujące się mapy Kohonena (SOM)

Page 12: Detekcja twarzy w obrazach cyfrowych

FILTRY - SIECI NEURONOWE

• Perceptron - kilka zm. wejściowych i jedna zm. wyjściowa - jak dobrać wagi W? - jak dobrać funkcję f?

• Organizacja perceptronów w sieć - ile warstw?

Page 13: Detekcja twarzy w obrazach cyfrowych

FILTRY - SIECI NEURONOWE

• Sieć neuronowa jest modelem

• Parametrami modelu są wagi perceptronów

• Dopasowujemy obraz wejściowy do modelu

Page 14: Detekcja twarzy w obrazach cyfrowych

FILTRY - NAJBLIŻSZY SĄSIAD

• Baza wzorców zawierająca obrazy twarzy i innych obiektów nie będących twarzami

• Dopasowujemy obraz wejściowy do wzorców

(tzn. znajdujemy w bazie obraz najbardziej podobny do wejściowego i sprawdzamyczy jest oznaczony jako twarz czy nie-twarz)

Page 15: Detekcja twarzy w obrazach cyfrowych

FILTRY - NAJBLIŻSZY SĄSIAD

• Jak mierzyć podobieństwo? Najprościej: suma kwadratów różnic między pikselami

mało skuteczne

• Standardowo obraz 20 x 20 jest reprezentowany jako punkt w przestrzeni 400 wymiarowej

• Ten sposób reprezentacji powoduje niską skuteczność

Page 16: Detekcja twarzy w obrazach cyfrowych

FILTRY - NAJBLIŻSZY SĄSIAD

Jak zwiększyć skuteczność?

• znaleźć lepszą reprezentację obrazu

np. redukcja wymiarów przy użyciuAnalizy Liniowych Wyróżników(Linear Discriminant Analysis)

Page 17: Detekcja twarzy w obrazach cyfrowych

FILTRY - NAJBLIŻSZY SĄSIAD

• Nowe wymiary są liniową kombinacją starych

• Analiza Liniowych Wyróżników automatycznie dobiera wymiary, które pozwalają najłatwiej rozróżnić twarz od nie-twarzy

• Zbędne informacje są usuwane

• Przykład twarzy zrzutowanej na nowe wymiary, a następnie z powrotem do pierwotnej postaci:

• Twarze w nowej reprezentacji nazywają się Fisherfaces

Page 18: Detekcja twarzy w obrazach cyfrowych

FILTRY - NAJBLIŻSZY SĄSIAD

• Aby ograniczyć ilość twarzy w bazie można zastosować Samoorganizujące się mapy Kohonena (SOM)

• SOM znajduje reprezentantów grup spośród wielu obrazów

Reprezentacyjne obrazyznalezione przy użyciu SOM:

Page 19: Detekcja twarzy w obrazach cyfrowych

ŁĄCZENIE WYNIKÓW

• W wyniku dotychczasowych działań otrzymujemy wiele potencjalnych miejsc zawierających twarz

• Czas odsiać błędne wyniki i scalić pozostałe

Page 20: Detekcja twarzy w obrazach cyfrowych

ŁĄCZENIE WYNIKÓW• Progowanie – usuwanie pojedynczych wystąpień

• Łączenie sąsiadujących wystąpień w jedno - uśrednianie lokalizacji i skali

• Eliminacja nakładających się wystąpień - decyduje ilość

Page 21: Detekcja twarzy w obrazach cyfrowych

ŁĄCZENIE WYNIKÓW• Scaliliśmy wyniki pojedynczego filtra, pozostało scalenie wyników wszystkich filtrów

• Możemy mieć kilka różnych sieci neuronowych i kilka innych filtrów co pozwala zredukować liczbę błędnych wskazań

• Najprostsze scalanie w tym wypadku to AND lub OR

• Można też użyć sieci neuronowej

Page 22: Detekcja twarzy w obrazach cyfrowych

ŁĄCZENIE WYNIKÓW

Page 23: Detekcja twarzy w obrazach cyfrowych

DZIĘKUJĘ ZA UWAGĘ.

Pytania?