Karta modułu - Śledzenie ruchu 1 / 5 Nazwa modułu: Śledzenie ruchu Rocznik: 2012/2013 Kod: IIN-2-103-s Punkty ECTS: 3 Wydział: Informatyki, Elektroniki i Telekomunikacji Poziom studiów: Studia II stopnia Specjalność: Systemy rozproszone i sieci komputerowe Kierunek: Informatyka Semestr: 1 Profil Ogólnoakademicki (A) Język Polski kształcenia: wykładowy: Forma i tryb studiów: Osoba odpowiedzialna: Osoby prowadzące: Stacjonarne Strona www: - Kwolek Bogdan (bkwolek@prz.edu.pl) Kwolek Bogdan (bkwolek@prz.edu.pl) Opisy efektów kształcenia dla modułu Kod EKM Student, który zaliczył moduł wie/umie/potrafi Powiązania z EKK Wiedza Sposób weryfikacji efektów kształcenia (forma zaliczeń) M_W001 Ma wiedzę w zakresie śledzenia ruchu obiektów IN2A_W01 Kolokwium, Referat M_W002 Zna metody modelowania i reprezentacji ruchu IN2A_W02 Kolokwium, Referat M_W003 M_W004 M_U001 M_U002 M_K001 Zna metody przetwarzania i analizy obrazów (chmury punktów) Ma wiedzę w zakresie programowania sensorów wykorzystywanych w analizie ruchu Umiejętności Potrafi zaprojektować i zbudować filtr Kalmana oraz filtr cząsteczkowy oraz zaprogramować algorytm do śledzenia obiektu Potrafi zaprogramować algorytm do śledzenia ruchu obiektu z wykorzystaniem algorytmów optymalizacji roju Kompetencje społeczne Ma świadomość i potrzebę stałego dokształcania się w zakresie technik śledzenia ruchu i ich zastosowań w IT. Potrafi pracować w zespole, rozumie korzyści płynące z pracy w zespole. Orientuje się w metodach filtracji Bayesowskiej oraz metodach przetwarzania i analizy obrazów oraz chmury punktów, ich zastosowaniach do śledzenia ruchu, potrafi efektywnie z nich korzystać. IN2A_W03 IN2A_W04 IN2A_U08 IN2A_U02, IN2A_U08, IN2A_U18 IN2A_K03 Kolokwium, Referat Referat Wykonanie projektu, Wykonanie ćwiczeń laboratoryjnych Wykonanie projektu, Wykonanie ćwiczeń laboratoryjnych Zaangażowanie w pracę zespołu
Karta modułu - Śledzenie ruchu 2 / 5 Matryca efektów kształcenia w odniesieniu do form zajęć Kod EKM Student, który zaliczył moduł wie/umie/potrafi Forma zajęć Wykład audyt. lab. proj. Konw. Zaj. sem. Zaj. prakt. Inne E- learning Wiedza M_W001 Ma wiedzę w zakresie śledzenia ruchu obiektów + - - - - - - - - M_W002 Zna metody modelowania i reprezentacji ruchu + - - - - - - - - M_W003 M_W004 M_U001 M_U002 M_K001 Zna metody przetwarzania i analizy obrazów (chmury punktów) Ma wiedzę w zakresie programowania sensorów wykorzystywanych w analizie ruchu Umiejętności Potrafi zaprojektować i zbudować filtr Kalmana oraz filtr cząsteczkowy oraz zaprogramować algorytm do śledzenia obiektu Potrafi zaprogramować algorytm do śledzenia ruchu obiektu z wykorzystaniem algorytmów optymalizacji roju Kompetencje społeczne Ma świadomość i potrzebę stałego dokształcania się w zakresie technik śledzenia ruchu i ich zastosowań w IT. Potrafi pracować w zespole, rozumie korzyści płynące z pracy w zespole. Orientuje się w metodach filtracji Bayesowskiej oraz metodach przetwarzania i analizy obrazów oraz chmury punktów, ich zastosowaniach do śledzenia ruchu, potrafi efektywnie z nich korzystać. + - - - - - - - - + - - - - - - - -
Karta modułu - Śledzenie ruchu 3 / 5 Treść modułu kształcenia (program wykładów i pozostałych zajęć) Wykład 1. Wprowadzenie do problematyki śledzenia ruchu (2 godz.) Znaczenie rynku śledzenia ruchu (gry, medycyna/rehabilitacja, biomechanika, sport, produkcja filmowa, reklamy). Urządzenia do akwizycji ruchu: elektromechaniczne, inercyjne, akcelerometry/żyroskopy, rękawice, systemy oparte o aktywne markery, systemy oparte o pasywne markery. Przegląd rozwiązań komercyjnych. Systemy Motion Capture, skanery 3D. Potok śledzenia ruchu (ang. motion capture pipeline), Problematyka bezmarkerowego śledzenia ruchu. 2. Modelowanie ruchu postaci ludzkiej (2 godz.) Modele matematyczne kinematyki i dynamiki ruchu postaci ludzkiej. Pojęcia podstawowe: szkielet, model hierarchiczny, poza postaci ludzkiej, trajektoria póz, kwaterniony, kąty Eulera. Łąńcuchy Markowa. Modele ruchu liniowe i nieliniowe. Modele postaci ludzkiej. 3. Estymacja ruchu postaci ludzkiej (4 godz.) Filtracja Bayesowska, filtr Kalmana, algorytmy kondensacji stanu, filtry cząsteczkowe. Algorytmy przepróbkowania (ang. resampling). Typowe modele ruchu i obserwacji. 4. Metody optymalizacji w odtwarzaniu ruchu 3D postaci ludzkiej (4 godz.) Wprowadzenie do optymalizacji dynamicznej. Optymalizacja za pomocą roju cząstek. Funkcje celu. Zmodyfikowane algorytmy optymalizacji za pomocą roju cząstek. Metody hybrydowe: filtry cząsteczkowe i algorytmy optymalizacji roju. 5. Markerowe systemy do odtwarzania ruchu 3D (2 godz.) Przegląd systemów i rozwiązań. Ograniczenia systemów. Formaty plików oraz reprezentacja ruchu. Wizualizacja ruchu. 6. Estymacja konfiguracji 3D postaci ludzkiej w systemie jednokamerowym (2 godz.) Przegląd technik i narzędzi, klasyfikacja metod. Określenie konfiguracji w oparciu o metody regresyjne, nearest neighbor regression. Metody estymacji wykorzystujące korespondencje między cechami. Zastosowanie technik detekcji do estymacji konfiguracji 3D. Metody oparte o analizę kształtu sylwetki. 7. Bezmarkerowe śledzenie ruchu w układzie wielokamerowym (2 godz.) Przegląd technik i narzędzi. Kalibracja systemu wielokamerowego. Podstawowe algorytmy przetwarzania obrazów: detekcja tła, segmentacja postaci, detekcja krawędzi, mapy odległości. Modele ruchu. Modele obserwacji, funkcje celu. Pomiary jakości śledzenia. 8. Detekcja i analiza ruchu z wykorzystaniem akcelerometru i żyroskopu, Playstation Move (2 godz.) Budowa akcelerometru i żyroskopu. Analiza i przetwarzanie sygnałów, filtracja szumu, ekstrakcja cech. Zastosowanie urządzeń mobilnych do detekcji i analizy ruchu, sterowanie i interakcja z urządzeniami, detekcja upadku. System Android i oprogramowanie do obsługi akcelerometru i żyroskopu. Playstation Move i urządzenia pokrewne. 9. Sensor Kinect (2 godz.) Budowa urządzenia. Kalibracja kamer. Biblioteki MS Kinect SDK oraz OpenNI+NITE. 10. Algorytmy i techniki przetwarzania chmury punktów (2 godz.) Przegląd wybranych algorytmów. Biblioteka Point Cloud Library (PCL). Śledzenie obiektów 3D z wykorzystaniem PCL. 11. Śledzenie ruchu z wykorzystaniem algorytmów redukcji wymiarowości (2 godz.)
Karta modułu - Śledzenie ruchu 4 / 5 Przegląd technik redukcji wymiarowości i ich zastosowań do śledzenia ruchu. Redukcja wymiarowości metodą GPLVM, śledzenie ruchu z wykorzystaniem GPLVM, przegląd technik wizualizacji ruchu. 12. Śledzenie pozy 3D twarzy (2 godz.) Śledzenie punktów charakterystycznych twarzy. Estymacja pozy 3D twarzy metodą perspective-n-point (PnP). Estymacja pozy twarzy w oparciu o model 3D. 13. Wykład podsumowujący (2 godz.) Aktualne i przyszłe kierunki rozwoju technik śledzenia ruchu. Rozwój metod i technik opartych o analizę chmury punków. Obliczenia na GPU. Ćwiczenia laboratoryjne 1. Program Blender modelowanie postaci (2 godz.). 2. Budowa modelu szkieletowego postaci ludzkiej. Implementacja uproszczonego modelu 3D postaci ludzkiej (wybranej części ciała) (2 godz.). 3. Wstępne przetwarzanie obrazu dla potrzeb śledzenia ruchu. Detekcja tła, detekcja krawędzi, mapa odległości. Biblioteka OpenCV (2 godz.). 4. Śledzenie obiektu 2D w oparciu o filtr Kalmana (2 godz.). 5. Śledzenie obiektu 2D w oparciu o algorytm kondensacji stanu (2 godz.). 6. Śledzenie obiektu 3D w oparciu o algorytm kondensacji stanu (2 godz.). 7. Śledzenie obiektu 2D lub 3D z wykorzystaniem algorytmów optymalizacji roju (2 godz.). 8. Śledzenie twarzy (dłoni) w sekwencji obrazów (2 godz.). 9. Estymacja pozy postaci ludzkiej na obrazie (sekwencji obrazów z jednej kamery) (2 godz.). 10. Pozyskiwanie obrazów z sensora Kinect (2 godz.). 11. Segmentacja (detekcja) postaci ludzkiej w mapie głębokości pobranej z sensora Kinect (2 godz.). 12. Śledzenie ruchu postaci ludzkiej z wykorzystaniem sensora Kinect (2 godz.). 13. Biblioteka Point Cluoud Library (PCL) (2 godz.). 14. Zaawansowane programowanie Kinect z wykorzystaniem bibliotek PCL oraz OpenCV (2 godz.). 15. Śledzenie ruchu postaci ludzkiej z wykorzystaniem sensora Kinect oraz bibliotek PCL oraz OpenCV (1 godz.). Podsumowanie (1 godz.).
Karta modułu - Śledzenie ruchu 5 / 5 Sposób obliczania oceny końcowej 1. Aby uzyskać pozytywną ocenę końcową niezbędne jest uzyskanie pozytywnej oceny z laboratorium. 2. Wyznaczmy ocenę końcową na podstawie zależności: if sr>4.75 then OK:=5.0 else if sr>4.25 then OK:=4.5 else if sr>3.75 then OK:=4.0 else if sr>3.25 then OK:=3.5 else OK:=3 3. Jeżeli pozytywną ocenę z laboratorium uzyskano w pierwszym terminie oraz ocena końcowa jest mniejsza niż 5.0 to ocena końcowa jest podnoszona o 0.5 Wymagania wstępne i dodatkowe Znajomość matematyki, podstawowa znajomość programowania w C/C++, Java Zalecana literatura i pomoce naukowe 1. Klette and Tee: Understanding Human Motion: A Historic Review, 2008. 2. David J. Fleet: Motion Models for People Tracking. Visual Analysis of Humans 2011: 171-198. 3. Meredith and Maddock: Motion Capture File Formats Explained, 2011. 4. Huiyu Zhou, Huosheng Hu: Human motion tracking for rehabilitation A survey (2008) Uwagi Brak Nakład pracy studenta (bilans punktów ECTS) Forma aktywności studenta Udział w wykładach Samodzielne studiowanie tematyki wykładów Udział w laboratoriach Realizacja samodzielnie wykonywanych zadań Sumaryczne obciążenie pracą studenta Punkty ECTS za moduł Obciążenie studenta 30 godz 10 godz 30 godz 15 godz 85 godz 3 ECTS