1 / 47

KINECT

KINECT. Krystian Chrystowicz Tomasz Rokicki. AGENDA. Kinec t – co to jest i jak działa? Sensory ruchu Kinect SDK – wstęp Natural User Interface Ciekawe projekty z wykorzystaniem kontrolera. Kinect.

kolya
Download Presentation

KINECT

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. KINECT Krystian ChrystowiczTomasz Rokicki

  2. AGENDA • Kinect – co to jest i jak działa? • Sensory ruchu • Kinect SDK – wstęp • Natural UserInterface • Ciekawe projekty z wykorzystaniem kontrolera

  3. Kinect Sensor pozwalający na interaktywną rozrywkę bez potrzeby wykorzystania dodatkowych kontrolerów. Zaprojektowany pierwotnie dla konsoli Xbox 360, dostępny jest jednak również osobna wersja dla komputerów PC.

  4. Budowa Emiter podczerwieni Kamera RGB Kamera głębokości Automatyczny kontroler nachylenia Zestaw mikrofonów

  5. Kamera RGB Pion Poziom

  6. Określanie odległości Odległość określana jest za pomocą emitera promieni podczerwonych, których prędkość odbicia od obiektu pozwala na określenie odległości danego punktu.

  7. 0.4m/1.3 ft 0.8m/2.6 ft Tryb bliski (nearmode) Domyślnie

  8. Odległość – Kinect Beta Stopy 1.3’ 2.6’ 9.8’ 13.1’ 26.2’ Metry .4 .8 3 4 8 Tryb domyślny Tryb bliski Nieznana Dobra

  9. Odległość – Kinect 1+ Stopy 1.3’ 2.6’ 9.8’ 13.1’ 26.2’ Metry .4 .8 3 4 8 Tryb domyślny Tryb bliski Nieznana Za blisko Dobra Za daleko

  10. SkeletonTracking - prawdopodobieństwo

  11. RamięŚrod Głowa RamięPrawe Ramię Lewę Łokieć Prawy ŁokiećLewy NadgarstekPrawy NadgarstekLewy Kręgosłup Dłoń prawy BiodroŚrod Dłoń Lewa BiodroLewe BiodroPrawe KolanoPrawe KolanoiLewe • Maksymalnie dwie osoby przez Kinecta • Zalecane 6graczy KostkaPrawa KostkaLewa StopaPrawa StopaLewa

  12. Koordynacja w trój wymiarze • Stawy metr od kamery + Oś Y Oś Z + Oś X - -

  13. Śledzenie ruchu - połączenia • Połączenia mogą mieć następujące stany: • Śledzone, nie śledzone , zasłonięte • Inferred - Occluded, clippedlub low confidence joints Kinect przetwarza wygładzenie używając tzw. Metody Wygładzenia Wykładniczego

  14. Zaczynamy!

  15. Wymagania sprzętowe • Komputer z procesorem co najmniej dual-core 2.66-GHz • 2 GB RAM (rekomendowane 4 GB) • Karta graficzna kompatybilna z Windows 7 i wspierająca DirectX 9.0c • Kontroler Kinect wraz z zasilaczem

  16. Wymagane oprogramowanie • System operacyjny Windows 7 / 8 (x86 lub x64) • Środowisko Microsoft Visual Studio® 2010 / 2012 w dowolnej wersji • Zainstalowana platforma Microsoft .NET Framework 4.0 • Dla przykładów opartych o C++ • Microsoft DirectX® SDK - Lipiec 2010 lub późniejszy • Dla przykładówz rozpoznawaniemmowy (Speech API): • Microsoft Speech Platform Runtime, wersja10.2 lub późniejsza • Microsoft Speech Platform - Software Development Kit, wersja 10.2 lub późniejsza’ • Kinect for Windows SDK

  17. Co warto wiedzieć, że: • Aplikacje piszemy w środowisku MS Visual Studio .NET • Nagłówki oraz przykłady dostępne są w językach • C++ .NET / Visual Basic .NET / C# .NET • Korzystamy z przestrzeni nazw Microsoft.Kinect (wcześniej Microsoft.Research.Kinect) • Podstawowe operację realizujemy za pomocą • NUI (ang. Natural UserInerface)

  18. NUI – Natural User Interface • NUI jest interfejsem pomiędzy użytkownikiem a aplikacją, który pozwala na ich wzajemną interakcję, bez potrzeby korzystania z dodatkowych urządzeń wskazujących. Ma pozwalać użytkownikom na korzystanie z aplikacji w sposób naturalny dla człowieka. • dostęp do sensora Kinect, podłączonego do komputera, • dostęp do danych, pochodzących z kamer RGB i głębokości w środowisku programowym, • dostarczenie narzędzi, umożliwiające tzw. skeletaltracking, czyli płynne reagowanie na zachowania, wywołane ruchem szkieletu człowieka. • Do pojedynczego sensora Kinect, w danym czasie, posiada jedynie jedna aplikacja.

  19. Podstawowe operacje • Zmiana stanu Kinecta • Do połączenia się z sensorem i pobieranie danych używamy metody start() obiektu KinectSensor, w celu rozłączenia anoglocznie metody stop() • Do dyspozycji mamy następujące obiekty: • ColorStream – obsługa otoczenia / kamery • DepthStream – strumień głębokości • SkeletonStream – kości • AudioStream – rozpoznawanie mowy, dźwięku otoczenia

  20. ColorStream Obraz jest przetwarzany tak jak w przypadku tradycyjnych kamer multimedialnych. Kinect zwraca nam obraz w dwóch możliwych rozdzielczościach – pierwsza 640x480 (przy 30 ramkach na sekundę) i 1280x1024 (ale przy użyciu 15 ramek na sekundę).

  21. Dane z kamery - przypomnienie

  22. ColorStream DEMKO

  23. DepthStream – odległość • Zwraca odległość i ilość graczy podczas gry • Wymiary: 320 x 240 = 76,800 pikseli • Odległość • Odległość w mm od Kinecta, np..: 2,000mm (6.56 stopy) • Ilość graczy • 1-6 graczy • Odległość jest zmienną typu short (ImageFrame.Image.Bits) Odległość Indeks gracza

  24. Definicja odległości • Zakres: od850 mm do4000 mm • Odległość - 0 oznacza odległość nieznaną • Kinect SDK umożliwia uzyskanie odległości dla dwóch graczy jednocześnie. Przyjmowanie są następujące wartości: • 0 – brak gracza • 1 – gracz 0 • 2 – gracz 1

  25. Bufor głębokości • ImageFrame.Image.Bits • Tablica bajtówpublic byte[] Bits; • punkt startu – lewy górny róg obrazka, • zapis danych – od lewej do prawej, a potem krok w dół, • mówi nam o odległości każdego piksela w mm

  26. DepthStream DEMKO

  27. Skeleton Tracking NUI Skeleton API dostarcza informacji o położeniu dwóch postaci, znajdujących się naprzeciwko sensora Kinect. Dane, pobierane przez sensor, dostarczają informacji o położeniu 20 części ciała, pozwalają one na określenie ich współrzędnych względem sensora.

  28. tryb pasywny • - położenie • tryb aktywny • - dane każdego punktu- położenie punktów

  29. NUI Skeleton API dostarcza algorytmy, pomagające w filtrowaniu i wygładzaniu ruchów obiektów programu, będących odwzorowaniem poszczególnych punktów (Joint). Objawia się to tym, iż po przekazaniu odpowiednio ustawionych atrybutów wygładzania, dane pochodzące z sensora są uśredniane, co powoduje zanik efektu wibrowania, spowodowany czułością czujnika. Aby wyeliminować ten problem, możemy użyć następującego kodu:

  30. Skeleton Tracking DEMKO

  31. Face Recognition – Rozpoznawanie Twarzy Kinect dla Windows oprócz sylwetki postaci umożliwia dokładne rozponanie twarzy. Możliwe jest zidentyfikowanie ponad 80 różnych unikalnych punktów.

  32. Face Recognition DEMKO

  33. Audio API Dla przypomnienia kinect posiada on 4 mikrofony, co pozwala na wykorzystanie urządzenia, po poprawnym zainstalowaniu go na komputerze, nie tylko jako zwykłego mikrofonu.

  34. Speech API umożliwia: • redukcja szumów i efektu echo • przechwytywanie dźwięku wysokiej jakości • lokalizacja źródła dźwięku (z dokładnością 10 stopni) • rozpoznawanie mowy.

  35. Zrzut okiem na klasę

  36. SPEECH RECOGNITION GRAMMAR Biblioteki, odpowiedzialne za dźwięk w Kinect SDK, są zgodne ze standardem SRGS, który jest powszechnie wykorzystywany w portalach głosowych do przeprowadzania dialogu z użytkownikiem

  37. SPE, a sprawa polska Do obsługi języka polskiego potrzebny jest dodatek TTS (Text-to-Speech) Oficjalnie wg. danych obiektów RecognizerInfo.AdditionalInfoKinect nie jest wspierany, możemy jednak wymusić jego wykorzystanie. Rozpoznawanie dialekty polskiego podczas naszych testów działało dobrze 

  38. Audio Basic DEMKO

  39. Kółko i Krzyżyk DEMKO

  40. Kinect Studio Kinect Studio wchodzi w skład Kinect SDK 1.5 jest narzędziem umożliwiającym odtwarzanie wcześniej zarejestrowanych strumieni danych.

  41. KINECT JAKO SKANER 3D • ReconstructMe jest jedna z wielu aplikacji pozwalających na skanowanie obiektów 3D w czasie rzeczywistym

  42. ReconstructMe DEMKO

  43. KINECT W DRONIE Grupa studentów z MIT wbudowała Kinecta w dronę razem z IMU (InertialMesuring Unit). Bazuje na chmurze punktów wytworzonej przez kontroler.

  44. Air Presenter for Kinect Air Presenter umożliwia sterowanie prezentacjami Power Point pakietu Microsoft Office za pomocą gestów.

  45. Air Presenter DEMKO

  46. Przydatne materiały- Ta prezentacja - MSDN http://msdn.microsoft.com/pl-pl/library/kinect-sdk--wprowadzenie.aspx- http://www.codeplex.com

  47. Dziękujemy 

More Related