i ruchów użytkownika komputera za i pozycjonujący oczy cyberagenta internetowego na oczach i akcjach użytkownika Promotor: dr Adrian Horzyk



Podobne dokumenty
AKADEMIA GÓRNICZO-HUTNICZA IM. STANISŁAWA STASZICA W KRAKOWIE WYDZIAŁ ELEKTROTECHNIKI, AUTOMATYKI, INFORMATYKI I ELEKTRONIKI PRACA MAGISTERSKA

AUTOMATYCZNE ROZPOZNAWANIE PUNKTÓW KONTROLNYCH GŁOWY SŁUŻĄCYCH DO 3D MODELOWANIA JEJ ANATOMII I DYNAMIKI

Wykrywanie twarzy na zdjęciach przy pomocy kaskad

Akademia Górniczo - Hutnicza im. Stanisława Staszica w Krakowie. Projekt. z przedmiotu Analiza i Przetwarzanie Obrazów

Analiza i przetwarzanie obrazów

Ćwiczenie 1 Automatyczna animacja ruchu

Implementacja filtru Canny ego

ANALIZA I INDEKSOWANIE MULTIMEDIÓW (AIM)

Metody kodowania wybranych cech biometrycznych na przykładzie wzoru naczyń krwionośnych dłoni i przedramienia. Mgr inż.

Cyfrowe przetwarzanie obrazów i sygnałów Wykład 8 AiR III

Analiza i przetwarzanie obrazo w

Parametryzacja obrazu na potrzeby algorytmów decyzyjnych

Algorytmy decyzyjne będące alternatywą dla sieci neuronowych

Detekcja twarzy w obrazie

Reprezentacja i analiza obszarów

WYKŁAD 3 WYPEŁNIANIE OBSZARÓW. Plan wykładu: 1. Wypełnianie wieloboku

POMIARY WIDEO W PROGRAMIE COACH 5

Rozpoznawanie obrazów na przykładzie rozpoznawania twarzy

ADMINISTRACJA STRONĄ EMPIRE MUSIC

Operacje przetwarzania obrazów monochromatycznych

rozpoznawania odcisków palców

Antyaliasing w 1 milisekundę. Krzysztof Kluczek

9. OBRAZY i FILTRY BINARNE 9.1 Erozja, dylatacja, zamykanie, otwieranie

Analiza obrazów - sprawozdanie nr 3

POMOC / INSTRUKCJA OBSŁUGI

CECHY BIOMETRYCZNE: ODCISK PALCA

Specyfikacja mikrobloga na portalu GoldenLine.pl

Ćwiczenie 12 Różdżka, szybkie zaznaczanie i zakres koloru

IRONCAD. TriBall IRONCAD Narzędzie pozycjonujące

Zamiana reprezentacji wektorowej na rastrową - rasteryzacja

Poruszanie się po pulpicie

Podstawy programowanie systemów wizyjnych InSight firmy Cognex. Środowisku InSight Explorer / Spreadshee

Aplikacja projektu Program wycinki drzew i krzewów dla RZGW we Wrocławiu

Łożysko z pochyleniami

Specyfikacja profili na portalu GoldenLine.pl

Rysowanie punktów na powierzchni graficznej

Animacje z zastosowaniem suwaka i przycisku

Zadanie Wstaw wykres i dokonaj jego edycji dla poniższych danych. 8a 3,54 8b 5,25 8c 4,21 8d 4,85

TESTER DO BANKNOTÓW. Glover IRD-1200 INSTRUKCJA OBSŁUGI

Metody wyszukiwania włókien Omówione zostaną dwie wybrane metody wyszukiwania na obrazie rozmieszczonych losowo kształtów okrągłych.

Reprezentacja i analiza obszarów

Agnieszka Nowak Brzezińska

operacje porównania, a jeśli jest to konieczne ze względu na złe uporządkowanie porównywanych liczb zmieniamy ich kolejność, czyli przestawiamy je.

Ćwiczenie pochodzi ze strony

Górnicki Mateusz 17681

Tworzenie i modyfikacja modelu geologicznego

Uwaga! Upadek! Opis zadania konkursowego

SYSTEM BIOMETRYCZNY IDENTYFIKUJĄCY OSOBY NA PODSTAWIE CECH OSOBNICZYCH TWARZY. Autorzy: M. Lewicka, K. Stańczyk

BIBLIOTEKA PROGRAMU R - BIOPS. Narzędzia Informatyczne w Badaniach Naukowych Katarzyna Bernat

Agnieszka Nowak Brzezińska Wykład III

Wahadło. Celem ćwiczenia jest zapoznanie się z zasadą dokonywania wideopomiarów w systemie Coach 6 oraz obserwacja modelu wahadła matematycznego.

Analiza i przetwarzanie obrazów

R o g e r A c c e s s C o n t r o l S y s t e m 5

ANALIZA SEMANTYCZNA OBRAZU I DŹWIĘKU

Przenoszenie, kopiowanie formuł

Przetwarzanie obrazów wykład 4

Wykład 2. Statystyka opisowa - Miary rozkładu: Miary położenia

1 TEMAT LEKCJI: 2 CELE LEKCJI: 3 METODY NAUCZANIA 4 ŚRODKI DYDAKTYCZNE. Scenariusz lekcji. Scenariusz lekcji. 2.1 Wiadomości: 2.

Automatyczne tworzenie trójwymiarowego planu pomieszczenia z zastosowaniem metod stereowizyjnych

Animacja. Instrukcja wykonania animacji metodą klatek kluczowych. Autor: Bartosz Kowalczyk. Blender 2.61

Samochodowy system detekcji i rozpoznawania znaków drogowych. Sensory w budowie maszyn i pojazdów Maciej Śmigielski

Misja#3. Robimy film animowany.

Rysunek 1: Okno timeline wykorzystywane do tworzenia animacji.

INSTRUKCJA PRZYGOTOWANIA ZDJĘĆ DO

Klasyfikatory: k-nn oraz naiwny Bayesa. Agnieszka Nowak Brzezińska Wykład IV

Szacowanie wartości monet na obrazach.

Polski Kurs Blendera: Animacja: Dopesheet Opublikowany

Modelowanie krawędziowe detalu typu wałek w szkicowniku EdgeCAM 2009R1

WYKŁAD 12. Analiza obrazu Wyznaczanie parametrów ruchu obiektów

JAK ZAPROJEKTOWAĆ WYGLĄD STRONY INTERNETOWEJ W KREATORZE CLICK WEB?

Metoda określania pozycji wodnicy statków na podstawie pomiarów odległości statku od głowic laserowych

Statystyka. Wykład 9. Magdalena Alama-Bućko. 7 maja Magdalena Alama-Bućko Statystyka 7 maja / 40

b) Dorysuj na warstwie pierwszej (1) ramkę oraz tabelkę (bez wymiarów) na warstwie piątej (5) według podanego poniżej wzoru:

Rotoss Advance. One Color. Instrukcja użytkowania i montażu. Binary Helix S.A. Tychy

C3A/C6A Kolposkop video. EDAN INSTRUMENTS, INC.

Wstawianie filmu i odtwarzanie go automatycznie

Część II Wyświetlanie obrazów

DARMOWA PRZEGLĄDARKA MODELI IFC

Wymiarowanie i teksty. Polecenie:

DOKŁADNOŚĆ POMIARU DŁUGOŚCI

Ćwiczenie 1 Galeria zdjęć

Analiza obrazu. wykład 3. Marek Jan Kasprowicz Uniwersytet Rolniczy 2009

Instrukcja przygotowania zdjęć do elektronicznej legitymacji studenckiej (ELS) oraz informacja o opłacie za jej wydanie

KADD Minimalizacja funkcji

DM-902 Wszelkie kopiowanie, odtwarzanie i rozpowszechnianie niniejszej instrukcji wymaga pisemnej zgody firmy Transfer Multisort Elektronik.

Agnieszka Nowak Brzezińska Wykład III

Dane ergonomiczne do projektowania stanowisk pracy. Strefa pracy kończyn górnych. Wymiary. PN-N 08018: 1991

Jak dodać własny szablon ramki w programie dibudka i dilustro

Podstawy Informatyki Wykład V

Aleksandra Zając. Raport. Blender. Pokemon: Eevee

Ćwiczenie 5 Animacja tekstu

Temat Zasady projektowania naziemnego pomiaru fotogrametrycznego. 2. Terenowy rozmiar piksela. 3. Plan pomiaru fotogrametrycznego

Instrukcja przygotowania zdjęć do elektronicznej legitymacji studenckiej (ELS) oraz informacja o opłacie za jej wydanie

Inteligentna Platforma CCTV IP inteligentna analiza obrazu. Inteligentna Platforma CCTV IP. CarR analiza tablic rejestracyjnych

Tworzenie szablonów użytkownika

Badanie ruchu złożenia

Oprogramowanie wspierające kalibrację kamer 3D oraz analizę głębi obrazu stereoskopowego. Piotr Perek. Łódź, 7 grudnia Politechnika Łódzka

1 Wstęp teoretyczny. Temat: Obcinanie odcinków do prostokąta. Grafika komputerowa 2D. Instrukcja laboratoryjna Prostokąt obcinający

KRAJOWA MAPA ZAGROŻEŃ BEZPIECZEŃSTWA INSTRUKCJA OBSŁUGI

Transkrypt:

System śledzenia oczu, twarzy i ruchów użytkownika komputera za pośrednictwem kamery internetowej i pozycjonujący oczy cyberagenta internetowego na oczach i akcjach użytkownika Mirosław ł Słysz Promotor: dr Adrian Horzyk

Cel pracy System śledzenia twarzy użytkownika komputera za pomocą kamery internetowej szybki i efektywny algorytm lokalizacji twarzy lokalizacja partii twarzy (oczu i ust) rozpoznawanie mimiki Animacja cyberagenta internetowego pozycjonowanie oczu na użytkowniku komputera odpowiedź na uśmiech użytkownika komputera, uśmiechem cyberagenta odpowiedź na mrugnięcie użytkownika komputera, mrugnięciem cyberagenta Program zrealizowany jako aplikacja Program zrealizowany jako aplikacja internetowa

Założenia ł ż dla algorytmu lokalizacji li twarzy Wydajny (konieczność lokalizacji twarzy w czasie rzeczywistym na obrazie video) Efektywny dla obrazów z kamery internetowej niskiej jakości, wykonanych w otoczeniu o nierównym oświetleniuś Obraz o nierównym oświetleniu, wykonany w pomieszczeniu, w którym po jednej ze stron komputera znajduje się okno

Algorytm lokalizacji twarzy Opracowany algorytm lokalizacji twarzy oparty został o cechy, które można wskazać na obrazie w skali szarości oraz na obrazie binarnym Przykład: Obszar zawierający oczy, na obrazie w skali szarości posiada niższą wartość (jest ciemniejszy) od obszaru położonego pod oczami

Algorytm lokalizacji twarzy c.d. Twarz poszukiwana jest na całej powierzchni badanego obrazu 320x240 pikseli sprawdzając części (klatki) o rozmiarach od 50x50 do 180x180 pikseli z krokiem 5 pikseli Algorytm lokalizacji twarzy składa się z 25 etapów (klasyfikatorów), w których sprawdzane są empirycznie dobrane cechy

Algorytm lokalizacji twarzy c.d. Kaskadowa forma algorytmu zapewnia wysoką wydajność. Jeżeli w badanej części obrazu nie zostanie odnaleziona cecha jednego z etapów, to zostaje uznane, że dana część nie zawiera twarzy

Algorytm lokalizacji twarzy c.d. Cechy poszukiwane są na obrazie w skali szarości oraz obrazie binarnym Wartości piksela (x,y) obrazu w skali szarości wylicza się ze wzoru gray(x,y)=0.3*r(x,y)+0.59*g(x,y)+0.11*b(x,y) gdzie R, B, G wartości składowe obrazu w formacie RGB Wartość piksela (x,y) obrazu binarnego wylicza się na podstawie wartości danego piksela na obrazie skali szarości, porównując tę wartość z pewnym progiem (treshold) 1 gdy gray(x, y) <= threshold(x, y) binary(x, y) = 0 w innym przypadku

Algorytm lokalizacji twarzy c.d. Po binaryzacji standardową metodą obrazu wykonanego w otoczeniu o równym oświetleniu wyraźnie zaznaczają się rysy twarzy. Można to wykorzystać do ustalenia wielu cech Obraz po binaryzacji Obraz po binaryzacji standardową metodą

Algorytm lokalizacji twarzy c.d. Po binaryzacji obrazu wykonanego w otoczeniu o nierównym oświetleniu rysy twarzy nie zostają wyłonione Obraz o nierównym oświetleniu po binaryzacji standardową metodą

Algorytm lokalizacji twarzy c.d. Pomimo nierównego oświetlenia pewne informację zostają zachowane wartość pikseli obszaru oczu na obrazie w skali szarości posiadają najniższą wartość w swym lokalnym otoczeniu. Wykorzystując tę własności, opracowano algorytm binaryzacji ze zmiennym progiem, wyliczanym dla każdego piksela obrazu. Pozwala to wyłonić cechy twarzy również dla zdjęć wykonanych w pomieszczeniu o nierównym oświetleniu

Algorytm lokalizacji twarzy c.d. Wartość pikseli obrazu binarnego wyliczana jest ze wzoru: binary(x, y) = 1 gdy gray(x, y) <= 0.95 * 0 w innym przypadku srednia(x, y) srednia(x,y) średnia wartość powierzchni obrazu w skali szarości, ś o rozmiarze 7x77 pikseli, o środku w punkcie (x,y)

Algorytm lokalizacji twarzy c.d. Obraz o nierównym oświetleniu po binaryzacji metodą ą ze zmiennym progiem

Etapy algorytmu lokalizacji twarzy Na poszczególnych etapach algorytmu lokalizacji twarzy wyliczane są klasyfikatory - wartości obszarów o określonych rozmiarach i położeniu Suma klasyfikatorów wyznacza wartość klatki na jej podstawie wybierana jest najlepsza klatka w przypadku, gdy dla jednej twarzy znaleziono kilka klatek Klasyfikatory dzielą się na: klasyfikatory mocne ich wartość musi spełniać pewną zależność, w przeciwnym wypadku klatka zostaje odrzucona klasyfikatory słabe ich wartość służy do sumarycznej oceny badanej klatki

Etapy algorytmu lokalizacji twarzy c.d. Analiza wartości badanej klatki na obrazie binarnym A li t ś i b d j kl tki b i Analiza wartości badanej klatki na obrazie binarnym

Etapy algorytmu lokalizacji twarzy c.d. Analiza dużego obszaru oczu oraz pod oczami na obrazie binarnym A li ł h b ó d Analiza małych obszarów oczu oraz pod oczami na obrazie binarnym

Etapy algorytmu lokalizacji twarzy c.d. Analiza małych obszarów oczu oraz pod oczami na obrazie w skali szarości Analiza lewych ćwiartek klatki na obrazie w Analiza lewych ćwiartek klatki na obrazie w skali szarości

Etapy algorytmu lokalizacji twarzy c.d. Analiza prawych ćwiartek klatki na obrazie w skali szarości A li i h łó k kl tki Analiza pionowych połówek klatki na obrazie w skali szarości

Etapy algorytmu lokalizacji twarzy c.d. Analiza poziomych połówek klatki na obrazie w skali szarości A li t ś i b ó i b i Analiza wartości obszarów oczu i brwi na obrazie binarnym

Etapy algorytmu lokalizacji twarzy c.d. Analiza obszarów policzków na obrazie binarnym Analiza regionów oczu na obrazie binarnym

Etapy algorytmu lokalizacji twarzy c.d. Analiza regionu nosa na obrazie binarnym Analiza obszaru ust na obrazie binarnym

Etapy algorytmu lokalizacji twarzy c.d. Analiza różnicy wartości obszaru ust i policzków na obrazie binarnym Analiza zewnętrznych części obszarów oczu Analiza zewnętrznych części obszarów oczu - w poziomie na obrazie binarnym

Etapy algorytmu lokalizacji twarzy c.d. Analiza zewnętrznych części obszarów oczu w pionie na obrazie binarnym A li t h ś i b t Analiza zewnętrznych części obszaru ust w pionie na obrazie binarnym

Etapy algorytmu lokalizacji twarzy c.d. Analiza bocznych krawędzi ramki na obrazie binarnym A li b i i d i Analiza obszaru oczu i pomiędzy oczami na obrazie binarnym

Etapy algorytmu lokalizacji twarzy c.d. Analiza obszaru oczu oraz czoła na obrazie binarnym A li b i b i b i Analiza obszaru oczu i brwi na obrazie binarnym

Lokalizacja twarzy w czasie rzeczywistym Dla zwiększenia wydajności algorytmu wprowadzono wykrywanie ruchu W celu lokalizacji twarzy przeszukiwane są jedynie obszary, w których wystąpił ruch Jeżeli w otoczeniu ramki ze zlokalizowaną twarzą ą nie wystąpił ruch, twarz zostaje zachowana w poprzednim położeniu

Lokalizacja twarzy w czasie rzeczywistym c.d. 1) Wyznaczenie binarnego obrazu ruchu - =

Lokalizacja twarzy w czasie rzeczywistym c.d. 2) Wyliczenie i wartości ś otoczenia ramki ze zlokalizowaną twarzą na binarnym obrazie ruchu Kolor czerwony wykryta ramka z twarzą Wartość obszaru pomiędzy zielonymi ramkami na binarnym obrazie ruchu określa czy twarz uległa przemieszczeniu 3) Jeżeli wystąpił ruch ponownie zlokalizuj twarz

Lokalizacja ust Na jednym z etapów algorytmu lokalizacji twarzy wyznaczane jest przybliżone położenie ust. W pobliżu wyznaczonej pozycji poszukiwany jest zespół trzech prostokątów, dla których suma stosunków prostokąta środkowego do górnego oraz środkowego do dolnego posiada najmniejszą wartość. Środkowy prostokąt z trzech odnalezionych wyznacza pozycję przestrzeni pomiędzy ustami.

Określanie kształtu ust Wyznaczenie środka ust współrzędna x środek ramki zawierającej twarz współrzędna y wyznaczona przez pozycję środkowego prostokąta z trzech odnalezionych Śledzenie najciemniejszych sąsiadujących pikseli po lewej i prawej stronie od środka ust Wykryty kształt ust

Wykrywanie uśmiechu Wystąpienie uśmiechu ustalane w zależności od kształtu ust Krańcowe punkty kształtu ust powyżej środka ust wykryto uśmiech Jeżeli kształt ust odpowiada uśmiechowi i na obrazie zlokalizowany zostanie obszar zawierający zęby to uśmiech zostaje uznany za otwarty Obszar nad zlokalizowaną pozycją środka ust posiada wysoką wartość na obrazie w skali szarości na obrazie są widoczne zęby

Lokalizacja oczu 1) Wyliczenie wartości prostokątów o wysokości 1, leżących wzdłuż obszaru zawierającego oczy Kolor zielony przeszukiwany obszar Kolor czerwony przykład prostokąta, dla którego obliczana jest wartość

Lokalizacja oczu c.d. 2) Analiza wyliczonych wartości drugie minimum lokalne od góry badanego obszaru wyznacza górną krawędź oka Wartość górnej Wartość górnej krawędzi oka

Lokalizacja oczu c.d. 3) Binaryzacja obszaru oka 4) Wyznaczenie obszaru o największej ilości pikseli o wartości ś 1 na obrazie binarnym Kolor zielony piksele o wartości 1 na obrazie binarnym Kolor czerwony ramka z wykrytym okiem

Określanie stanu oczu Stan oka (zamknięte/otwarte) wyznaczane jest na podstawie stosunku wartości powierzchni wykrytego oka oraz powierzchni nad o pod nią Powierzchnie, na podstawie których wartości określany jest stan oka Stan oka ustalony jako zamknięte

Animacja postaci Zrealizowana jako seria szybko zmienianych klatek obrazu W celu ograniczenia ilości wykorzystywanych obrazów, twarz cyberagenta podzielona została na częściś A, B, E niezmienne obszary C i D animacja oczu F animacja uśmiechu G animacja ruchu źrenicy oka

Zrealizowane animacje Ruch źrenicy oka przemieszczanie bitmapy ze źrenicą Mrugnięcie zwykłe realizowane w losowo wybranym czasie (symuluje natruralny odruch mrugania) Mrugnięcie specjalne tzw oczko

Zrealizowane animacje c.d. Uśmiech zamknięty

Zrealizowane animacje c.d. Uśmiech otwarty

Zrealizowane animacje c.d. Przejście pomiędzy uśmiechem otwartym a zamkniętym

Aplikacja Zrealizowana w języku Java jako Applet Dodatkowo przygotowana strona internetowa t

Testy aplikacji Skuteczna i szybka lokalizacja twarzy Szybka odpowiedź cyberagenta na ruch oraz mimikę ik użytkownika ż komputera

Zrealizowane cele Skuteczny i wydajny algorytm lokalizacji twarzy, efektywny w złych warunkach oświetlenia Skuteczna lokalizacja i określanie stanu oczu oraz ust Płynna animacja postaci cyberagenta zachowane pewne naturalne odruchy ludzkie

Koniec Dziękuję za uwagę