1 / 48

System obsługi prezentacji multimedialnej wykorzystujący kamerę cyfrową

System obsługi prezentacji multimedialnej wykorzystujący kamerę cyfrową. Szymon Kossak Opieka naukowa: prof. dr hab. inż. Przemysław Rokita. Plan prezentacji. Prezentacja multimedialna Architektura systemu Opis działania Plany i możliwości rozwoju Pytania i odpowiedzi.

hasana
Download Presentation

System obsługi prezentacji multimedialnej wykorzystujący kamerę cyfrową

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. System obsługi prezentacji multimedialnej wykorzystujący kamerę cyfrową Szymon Kossak Opieka naukowa: prof. dr hab. inż. Przemysław Rokita

  2. Plan prezentacji • Prezentacja multimedialna • Architektura systemu • Opis działania • Plany i możliwości rozwoju • Pytania i odpowiedzi Politechnika Warszawska Warszawa 2007

  3. Prezentacja multimedialna • Prezentacja jest to proces przekazywania słuchaczom treści o zadanej tematyce • Prezentacja jest to dokument w postaci elektronicznej przedstawiający dany temat Politechnika Warszawska Warszawa 2007

  4. Prezentacja multimedialna (2) • Co jest potrzebne: • Komputer (lub inne źródło): • Oprogramowanie (PowerPoint, Keynote) • Plik z prezentacją • Interfejs • Projektor cyfrowy • Wskaźnik • … Politechnika Warszawska Warszawa 2007

  5. Prezentacja multimedialna (3) • Co może sprawiać problemy? • Komputer (lub inne źródło) • Oprogramowanie • Plik z prezentacją • Interfejs (?) • Projektor cyfrowy(?) • Wskaźnik Politechnika Warszawska Warszawa 2007

  6. Prezentacja multimedialna (4) Wybrane zagadnienia: • Umiejscowienie projektora • … Politechnika Warszawska Warszawa 2007

  7. Prezentacja multimedialna (4) Wybrane zagadnienia: • Umiejscowienie projektora • Możliwość w pełni automatycznej korekcji zniekształceń perspektywicznych Politechnika Warszawska Warszawa 2007

  8. Prezentacja multimedialna (4) Wybrane zagadnienia: • Umiejscowienie projektora • Możliwość w pełni automatycznej korekcji zniekształceń perspektywicznych • Niska rozdzielczość • … Politechnika Warszawska Warszawa 2007

  9. Prezentacja multimedialna (4) Wybrane zagadnienia: • Umiejscowienie projektora • Możliwość w pełni automatycznej korekcji zniekształceń perspektywicznych • Niska rozdzielczość • Zbudowanie dużego obrazu przy pomocy kilku rzutników + automatyczna ich kalibracja Politechnika Warszawska Warszawa 2007

  10. Prezentacja multimedialna (4) Wybrane zagadnienia: • Umiejscowienie projektora • Niska rozdzielczość • Obsługa prezentacji • ? Politechnika Warszawska Warszawa 2007

  11. Prezentacja multimedialna (5) • Obsługa prezentacji – obserwacje: • Mało intuicyjna lub skomplikowana obsługa • Mamy swoje przyzwyczajenia i nawyki • Ręczna obsługa • Ręczne wskazywanie, zaznaczanie i pisanie • Bezpośredni kontakt • Ruch budzi zainteresowanie Politechnika Warszawska Warszawa 2007

  12. Prezentacja multimedialna (5) • Dobry system powinien zapewniać (w jak największym stopniu): • Intuicyjność • Ergonomię i swobodę obsługi • Bezpośredni kontakt Politechnika Warszawska Warszawa 2007

  13. Plan prezentacji • Prezentacja multimedialna • Architektura systemu • Opis działania • Plany i możliwości rozwoju • Pytania i odpowiedzi Politechnika Warszawska Warszawa 2007

  14. Architektura systemu • Koncepcja Politechnika Warszawska Warszawa 2007

  15. Architektura systemu (2) • Niezbędne elementy systemu: • Komputer • Projektor cyfrowy • Kamera usb • Wskaźnik laserowy • Działanie: • Rejestrowanie obrazu z kamery • Rozpoznawanie ruchu wskaźnika • Sterowanie prezentacją Politechnika Warszawska Warszawa 2007

  16. Architektura systemu (3) • Typowa kamera internetowa • Interfejs USB • Matryca CCD 0,3MPix • 30fps przy rozdzielczości VGA Politechnika Warszawska Warszawa 2007

  17. Architektura systemu (3) • Typowa kamera internetowa • Interfejs USB • Matryca CCD 0,3MPix • 30fps przy rozdzielczości VGA • Wskaźnik laserowy • Niewielkie rozmiary • Niedrogi i popularnie wykorzystywany podczas prezentacji • Punkt wskaźnika jest wyraźnie widoczny na tle rzucanego przez projektor obrazu Politechnika Warszawska Warszawa 2007

  18. Architektura systemu (4) • OpenCV - biblioteka funkcji wykorzystywanych podczas obróbki obrazu, opartą o otwarty kod i zapoczątkowaną przez firmę Intel. • Ważne cechy: • Wieloplatformowość • Zoptymalizowana dla przetwarzania obrazu w czasie rzeczywistym • Umożliwia prostą obsługę kamery • Wspomaga obróbkę i segmentację obrazu • Wiele innych Politechnika Warszawska Warszawa 2007

  19. Architektura systemu (5) • SharperCV– projekt prowadzony przez Computer Science Department,Rhodes University. • Założenia: • Opakowanie najbardziej przydatnych funkcji OpenCV • Nowoczesne języki i środowiska programistyczne(C# i platforma .NET) • Wydajność możliwie zbliżona do OpenCV • Przyjazność i prostota (wygodne klasy, garbage collector) • Niestety zaprzestano prac nad projektem. Politechnika Warszawska Warszawa 2007

  20. Plan prezentacji • Prezentacja multimedialna • Architektura systemu • Opis działania • Plany i możliwości rozwoju • Pytania i odpowiedzi Politechnika Warszawska Warszawa 2007

  21. Opis działania systemu • Kalibracja • Położenia ekranu względem kamery • Jasności • Obsługa gestów • Segmentacja i rozpoznawanie • Rejestrowanie ruchu • Proste gesty Politechnika Warszawska Warszawa 2007

  22. Opis działania - Kalibracja • Lokalizacja ekranu projekcji na obrazie z kamery i znalezienie odwzorowania homograficznego(na ekran komputera) • Stabilizacja obrazui wyznaczenie progujasności Politechnika Warszawska Warszawa 2007

  23. Kalibracja położenia • Algorytm detekcji narożników Harris’a/Plessey’a • Analiza wartości własnych λ1 i λ2 macierzy M wykazała, że dla miejsc obrazu zawierających narożniki, obie wartości λ1 i λ2 przyjmują duże wartości Macierz składa się z sum (w otoczeniu 3x3) gradientów funkcji jasności I Politechnika Warszawska Warszawa 2007

  24. Kalibracja położenia (2) • Użyty algorytm detekcji narożników: • Dla każdego punktu oblicz min(λ1,λ2) tworząc obraz wartości własnych E • Na obrazie E pozostaw jedynie lokalne maksima (w najbliższym sąsiedztwie 3x3) • Odnajdź największą wartość max(E) i odrzuć wszystkie mniejsze od 0,1 • max(E) • Odnajdź 4 punkty o największych wartościach własnych, aby odległości między nimi przekraczały 80 pikseli (metryka euklidesowa) Politechnika Warszawska Warszawa 2007

  25. Kalibracja położenia (3) • System wykorzystuje możliwość wyświetlania na ekranie dowolnych kształtów • Algorytm detekcji narożników pracuje na obrazie różnicowym powstałym z obrazów przed i po wyświetleniu obrazu kalibrującego • Cechy dobrego obrazu kalibrującego: • Powinien wyraźnie wskazać systemowi jedynie4 punkty na obrazie z kamery • Nie może rozświetlać otoczenia ekranu Politechnika Warszawska Warszawa 2007

  26. Kalibracja położenia (4) • Wykrywanie narożników Obraz tła Obraz różnicowy Politechnika Warszawska Warszawa 2007

  27. Kalibracja położenia (5) • Wykrywanie narożników Obraz z oznaczonymi narożnikami ekranu projekcji Politechnika Warszawska Warszawa 2007

  28. Kalibracja położenia (6) • Odnalezienie przekształcenia homograficznego – pozwoli wyznaczyć pozycję wskaźnika na ekranie komputera • Rzutowanie punktu (perspektywa): • 8 niewiadomych • Założenie: dysponujemy 4 różnymi punktamimamy więc 8 współrzędnych Politechnika Warszawska Warszawa 2007

  29. Kalibracja położenia (7) • Wyznaczanie a, b, c, d, e, f, g i h • (xi, yi), i = 1..3 – cztery znane nam punkty • W, H – rozdzielczość rzucanego obrazu Politechnika Warszawska Warszawa 2007

  30. Kalibracja jasności • Pozwala na: • Zminimalizowanie wpływu • Oświetlenia pomieszczenia • Jasności projektora • Stabilizacja jasności obrazu – poprzez blokadę automatycznej regulacji ekspozycjikamery –wyłączenie jej po osiągnięciu możliwie niskiej wartości • Ustalenie progu jasności, poniżej którego obraz traktowany jest jako tło Politechnika Warszawska Warszawa 2007

  31. Opis działania systemu • Kalibracja • Położenia ekranu względem kamery • Jasności • Obsługa gestów • Segmentacja i rozpoznawanie • Rejestrowanie ruchu • Proste gesty Politechnika Warszawska Warszawa 2007

  32. Obsługa gestów • Segmentacja i rozpoznawanie • Obserwacja 1: punkt wskaźnika laserowego na obrazie z kamery osiąga bardzo wysoką jasność(niemal biel, najintensywniejsza składowa czerwona) • Obserwacja 2: jeśli na obrazie znajduje się taki punkt, to najjaśniejszy piksel go lokalizuje Politechnika Warszawska Warszawa 2007

  33. Obsługa gestów • Segmentacja i rozpoznawanie • Obserwacja 1: punkt wskaźnika laserowego na obrazie z kamery osiąga bardzo wysoką jasność(niemal biel, najintensywniejsza składowa czerwona) • Obserwacja 2: jeśli na obrazie znajduje się taki punkt, to najjaśniejszy piksel go lokalizuje • Krok 1: Pobranie składowej czerwonej obrazu • Krok 2: Odrzucenie tła przez progowanie (przy użyciu wartości odnalezionej podczas kalibracji) • Krok 3: Odnalezienie najjaśniejszego punktu Politechnika Warszawska Warszawa 2007

  34. Obsługa gestów (2) • Rejestrowanie ruchu • Ruch lasera rejestrowany na potrzeby rozpoznawania gestów powinien być ciągły(nieprzerwany kształt stworzony jednym ‘pociągnięciem’) Politechnika Warszawska Warszawa 2007

  35. Obsługa gestów (2) • Rejestrowanie ruchu • Ruch lasera rejestrowany na potrzeby rozpoznawania gestów powinien być ciągły(nieprzerwany kształt stworzony jednym ‘pociągnięciem’) • W rzeczywistości jest on często zbiorem oderwanych, pojedynczych punktów - tak na obrazie, jak i w wymiarze czasu (wynika to z niedoskonałości czasu reakcji niedrogich matryc) Politechnika Warszawska Warszawa 2007

  36. Obsługa gestów (3) • Rejestrowanie ruchu • System działa w 2 trybach: • Oczekiwanie na ruch – test każdej napływającej ramki decyduje o zmianie trybu • Rejestrowanie ruchu – pozytywny wynik testu zawsze interpretowany jest jako kontynuacja ruchu – negatywny wynik ignorowany jest przez pewną ustaloną liczbę ramek (zliczanie ramek ‘pustych’) – dopiero po przekroczeniu tej liczby następuje decyzja o zakończeniu się ruchu Politechnika Warszawska Warszawa 2007

  37. Obsługa gestów (4) • ‘Proste gesty’ • Klasa Gesture – główne założenia: • Nagrywanie ruchu/ gestu Politechnika Warszawska Warszawa 2007

  38. Obsługa gestów (4) • ‘Proste gesty’ • Klasa Gesture – główne założenia: • Nagrywanie ruchu/ gestu • Porządkowanie punktów oraz normalizacja rozmiaru i położenia Politechnika Warszawska Warszawa 2007

  39. Obsługa gestów (4) • ‘Proste gesty’ • Klasa Gesture – główne założenia: • Nagrywanie ruchu/ gestu • Porządkowanie punktów oraz normalizacja rozmiaru i położenia • Udostępnienie różnych form reprezentacji gestu: – Podstawowe parametry: kierunek i zwrot – Zbiór punktów (uporządkowany w czasie) – Binarna reprezentacja kształtu - bitmapa – Reprezentacje wektorowe (np. współrzedne wektora lub kierunek i długość wektora) Politechnika Warszawska Warszawa 2007

  40. Obsługa gestów (5) • ‘Proste gesty’ • Do klasyfikacji tych gestów wystarczy znać kąt wektora rozpiętego pomiędzy punktami początku i końca ruchu Politechnika Warszawska Warszawa 2007

  41. Obsługa gestów (5) • ‘Proste gesty’ • Do klasyfikacji tych gestów wystarczy znać kąt wektora rozpiętego pomiędzy punktami początku i końca ruchu • Możliwe użycie innych prostych właściwości jak na przykład środek ciężkości Politechnika Warszawska Warszawa 2007

  42. Opis działania systemu • Kalibracja • Położenia ekranu względem kamery • Jasności • Obsługa gestów • Segmentacja i rozpoznawanie • Rejestrowanie ruchu • Proste gesty Politechnika Warszawska Warszawa 2007

  43. Plan prezentacji • Prezentacja multimedialna • Architektura systemu • Opis działania • Plany i możliwości rozwoju • Pytania i odpowiedzi Politechnika Warszawska Warszawa 2007

  44. Plany i możliwości rozwoju • Plany w ramach pracy naukowej • Eksperymenty w ramach obsługi gestów (testy skuteczności, spostrzeżenia, wnioski) • Dla różnych reprezentacji gestu • Dla różnych metod klasyfikacji Politechnika Warszawska Warszawa 2007

  45. Plany i możliwości rozwoju • Plany w ramach pracy naukowej • Eksperymenty w ramach obsługi gestów (testy skuteczności, spostrzeżenia, wnioski) • Dla różnych reprezentacji gestu • Dla różnych metod klasyfikacji • Dalsze plany • Gadżety • Zaawansowana segmentacja (pozwalająca wykryć szybki ruch wskaźnika) Politechnika Warszawska Warszawa 2007

  46. Pytania Politechnika Warszawska Warszawa 2007

  47. Dziękuję za uwagę ! Politechnika Warszawska Warszawa 2007

  48. Bibliografia • Raskar R., Beardsley P., A Self Correcting Projector, IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR), grudzień 2001, ss. 504-508 • Popovich E., Karni Z. [red. Gotsman C.], PresenterMouse LASER-Pointer Tracking System, www.mpi-inf.mpg.de/~karni/presentermouse/report.pdf, 26 maj 2007 • Parks D., Gravel J-P. of Faculty of Engineering at McGill University, Corner Detectors - Harris/Plessey Operator, www.cim.mcgill.ca/~dparks/CornerDetector/harris.htm, 5 czerwiec 2008 • Prof. Wentworth P., Zhao X., Computer Science Dept,  Rhodes University, SharperCV Project, www.cs.ru.ac.za/research/groups/SharperCV, 5 czerwiec 2008 Politechnika Warszawska Warszawa 2007

More Related