1 / 18

Camera fighter

Camera fighter. Prowadzący: prof nzw dr hab. Przemysław Rokita. Michał Grędziak. Projekt. Cel projektu Stworzenie interaktywnej gry wykorzystującej technikę Motion Capture. Podział projektu. Camera fighter.

andres
Download Presentation

Camera fighter

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Camera fighter Prowadzący: prof nzw dr hab. Przemysław Rokita Michał Grędziak

  2. Projekt • Cel projektu • Stworzenie interaktywnej gry wykorzystującej technikę Motion Capture

  3. Podział projektu Camera fighter Odwzorowanie fizycznego ruchu gracza w sposób umożliwiający odtworzenie tego ruchu w 3D Stworzenie wirtualnej rzeczywistości

  4. Czym jest MotionCapture? • Motion Capture jest techniką dzięki której można naśladować ruch żywych postaci w wirtualnej rzeczywistości Rodzaje Motion Capture • Mechaniczne • Elektromagnetyczne • optyczne

  5. Funkcjonalny podział projektu

  6. Akwizycja • Jest zamiana energii świetlnej na sygnał elektryczny dogodny do rejestracji • Dla obrazu akwizycja polega na dyskretyzacji przestrzeni , zapisie informacji o poziomie jasności w formie elektrycznej a następnie jej skwantyzowanie • Najpopularniejszym urządzeniem dokonującym akwizycji jest układ CCD

  7. Przetwarzanie wstępne(1) • Redukcja szumów Obraz powstały z przesłonięcia obiektywu Obraz wejściowy Obraz wynikowy • Redukcja zniekształceń geometrycznych

  8. Przetwarzanie wstępne(2) • Problem: Zmieniająca się jasność otoczenia oraz kąt padania światła ma wpływ na wartość składowych RGB • Rozwiązanie: uniezależnienie się od jasności przez przejście z RGB do systemu np. HSV(Hue Saturation Value) • HSV nawiązuje do sposobu w jaki widzi ludzkie oko • Wszystkie barwy wywodzą się od koloru białego

  9. Ekstrakcja tła (1) • Rozwiązanie: • Znalezienie wartości średniej m(x,y) każdego piksela w obrazie • Wyznaczenie różnicy „m(x,y) – p(x,y)” pomiędzy pikselem z aktualnej ramki p(x,y) a zapisanym uśrednionym pikselem • Progowanie: podjęcie decyzji czy piksel należy do tła czy nie - Odchylenie standardowe c - stała N – liczba klatek „uczących”

  10. Ekstrakcja tła (1) Problem: zmieniające się tło ( zmiana natężenia światła otoczenia) Rozwiązanie: Aktualizacja wartości pikseli tła ( adaptacja )

  11. Detekcja markerów(1) Założenie: Markery mają znaną barwę np. niebieską Detekcja przez progowanie w dziedzinie składowej H (Hue) P(x,y) = marker else P(x,y) = nie_marker

  12. Detekcja markerów(2) • Po znalezieniu piksela należącego do markera należy znaleźć wszystkie pozostałe by wyznaczyć jego środek • Algorytm „floodfill” • Punktem centralnym markera jest „środek ciężkości” przestrzeni ograniczonej zakresem barw konkretnego markera czyli jego krawędziami • Wykorzystanie momentów do wyznaczenia środka ciężkości markera Współrzędne markera = 1 jeżeli piksel należy do markera, w przeciwnym wypadku wynosi 0

  13. Śledzenie markerów • Mając znaleziony na obrazie zbiór markerów należy śledzić każdy z osobna. • Zgubienie markerów kosztuje utratę mapy przynależności markerów do części ciała • Najlepszym rozwiązaniem jest wykorzystanie filtru Kalmana • Każdy marker jest traktowany jako obiekt posiadający jeden z wielu stanów • Na zbiór stanów składa się prędkość, przyśpieszenie oraz pozycja środka ciężkości • Mając stany markera z aktualnej ramki i ramki poprzedniej można estymować przyszły stan markera

  14. Implementacja • Cele : • Użycie 3 kamer przez 1 maszynę ( wydajność ) • Przenośność aplikacji • Biblioteki do przechwytywania obrazów: • Microsoft DirectShow • Java Media Framwework • OpenCV

  15. DirectShow • Stworzona przez Microsoft biblioteka przeznaczona dla developerów pracujących nad aplikacjami multimedialnymi. • Jest następczynią Video for Windows (WfV). • Wcześniej DS był częścią DirectX SDK. Teraz jest częścią Windows SDK. • Plany zastąpienia DS przez Media Foundation. • Budowanie aplikacji DirecShow opiera sie na budowaniu ciągów ( filtrów )które łączy się ze sobą by wykonać zadania związane z odtwarzaniem, kompresją, zapisem,..itd. • Problem: • Działa tylko pod Windows • jest uważana za najbardziej skomplikowaną biblioteką Microsoft'u

  16. OpenCV (1) • opracowana przez Intel'a • zaprojektowana w sposób by zmaksymalizować efektywność algorytmów przez wykorzystanie architektury procesorów Intel. • wspomaganie systemów wizyjnych w takich dziedzinach jak robotyka, automatyka, systemy zabezpieczeń • Wykorzystuje inne biblioteki dostępu do urządzeń zewnętrznych ( USB, FireWire) ukrywając implementacje np. DirectShow • Problem: brak wsparcia ze strony twórcy – Intela,

  17. OpenCV (2) • Biblioteka jest podzielona na 3 części • CV - Zawiera narzędzia przydatne przy przetwarzaniu obrazów: filtry, funkcje wyznaczające histogramy, wykrywanie krawędzi, porównywanie wzorców, śledzenie obiektów • CXCore - Zawiera definicje struktur oraz funkcje matematyczne przydatne w przetwarzaniu obrazów (statystyczne, algebraiczne, arytmetyczne, specyficzne struktury danych jak drzewa, grafy, zbiory) • HighGUI - Zawiera funkcje wysokiego poziomu przydatne przy odczytywaniu, zapisywaniu do pliku, wizualizacji danych, wyświetlania obrazów pochodzących z kamery

  18. Dziękuję za uwagę Mail: mgredziak@gmail.com

More Related