Rozszerzona rzeczywistość na podstawie kamery internetowej


#1

Witam,

ciekawi mnie jak fachowo nazywa się taki bajer oraz przede wszystkim jak to działa:

(oficjalna strona, demo) Przykład 2

Drukujemy obrazek, po czym podstawiamy pod kamerę, a na ekranie w tym miejscu pokazuje się model 3d. Magia? :smiley:

Interesuje mnie przede wszystkim strona techniczna: zdaję sobie sprawę, że analiza każdej klatki obrazu pixel po pixelu nie da w tym przypadku żadnych efektów. Jak więc komputer odgaduje miejsce takiego modelu 3d i dodatkowo oblicza jak ma się obrócić?

z góry dziękuję :wink:


(Frankfurterium) #2

Zwykłe wyszukiwanie wzorca w obrazie (każda klatka animacji traktowana osobno). Kiedy już wyodrębni się go z tła, należy znaleźć jego punkty charakterystyczne i dzięki nim wyliczyć orientację i tę samą nadać narzucanemu obiektowi. Tyle.


(etam) #3

http://studierstube.icg.tugraz.at/handh … itplus.php


#4

Nie do końca rozumiem w jaki sposób wyszukuje się wzorzec na obrazie. Mógłby mi ktoś łopatologicznie wytłumaczyć? ^^


(Airborn) #5

Różnie, to zależy od konkretnych wymagań. Czasami wystarczy śledzić kolor, czasami potrzebne są bardziej zaawansowane klasyfikatory. Czasem wyszukuje się po prostu zadany wzorzec np. w taki sposób: http://docs.opencv.org/doc/tutorials/im … ching.html po więcej teorii trzeba by prawdopodobnie zajrzeć do literatury (np. Bradski, Szeliski ew. po polsku Tadusiewicz którego można pobrać tutaj).


(Frankfurterium) #6

To już jest cały dział nauki na styku informatyki i matematyki, a nie coś do łopatologicznego wyjaśniania w jednym poście.


(Brightophidia) #7

Jak wspomniano wyżej teoria stojąca za w ogólności rozpoznawaniem obrazów jest dość obszerna i złożona. W bardzo dużym uproszczeniu polega to na wyszukaniu z obrazu pewnych punktów kluczowych i zbudowaniu wokół obszaru tego punktu tzw. deskryptora. Jest to opis charakterystycznych obszarów w obrazie który będzie podobny lub taki sam dla różnych obrazów zawierających te same lub podobne obiekty. Jeśli nie potrzebujesz zagłębiać się jak to działa a jedynie chcesz użyć w praktyce to zainstaluj sobie bibliotekę OpenCV. Jeśli dobrze pamiętam są tam przykłady do porównywania obrazów za pomocą deskryptora SURF który powinien w miarę rozsądnie działać do pracy z kamerą. Tu masz przykład jaki możesz osiągnąć z OpenCV