2012-02-08 10 views

Odpowiedz

8

Kinect zwraca do ciebie mapę matrycy, która reprezentuje odległość dowolnej powierzchni od czujnika i podążając za pinhole camera model, można wyrównać każdą miarę głębokości z odpowiednią wartością RGB. Rozważę, że już wiesz, jak powiązać każdy piksel macierzy głębokości z jej X, Y, Z na przestrzeni i jego wartości RGB. Jeśli nie, musisz wykonać further research i zrozumieć, w jaki sposób korelacja stereo odbywa się między czujnikiem głębokości a kamerą RGB.

Zadałeś tutaj dwa zupełnie różne pytania. Pierwsza z nich jest łatwa do rozwiązania z pewnym podstawowym pojęciem geometrii, ale jest niezbędna do rozwiązania drugiej, aby znaleźć pozycję obiektu w przestrzeni.

Istnieje kilka podejść do wyszukiwania obiektów o jaskrawych kolorach. Jeśli twój czujnik zarejestruje statyczną scenę, można użyć Background Subsctraction. Spowoduje to utworzenie binarnego obrazu przedstawiającego piksele o różnych wartościach z wcześniej wytrenowanego modelu tła. Ponieważ obiekty będą wyraźnie jaśniejsze niż tło, możesz je łatwo zastosować Thresholding Segmentation. Po prostu przekonwertuj obraz RGB na obraz HSL i sprawdź wyższe wartości Luminancji. Istnieje kilka innych metod, dla nich badania, jeśli te nie rozwiązują twojego problemu. Po obu tych metodach powróci do ciebie binarny obraz z obiektami typu blob. Możesz użyć środka tych obiektów jako współrzędnych macierzy kolorowych obiektów.

Z 3 środkowego BLOB A „B” i C”będzie można znaleźć płaszczyznę, że szukasz, jak przedstawiono na rysunku poniżej:

Finding the plane

Objaśnienie: Płaszczyznę można przedstawić jako punkt (położenie) i normalny (orientacja). Biorąc pod uwagę, że wszystkie twoje obiekty będą dokładnie na płaszczyźnie, którą próbujesz znaleźć, potrzebujesz tylko 3 punktów, A, B, C, które będą reprezentować trójkąt w tej płaszczyźnie. Ten trójkąt normalny jest równy (A - B) x (C - B) - tutaj x reprezentuje produkt krzyżowy - i jest taki sam jak płaszczyzna. Twój samolot będzie więc dowolnym z tych 3 punktów i tym trójkątem normalnym. Jeśli wymiary obiektu są znaczące, należy je wziąć pod uwagę, aby określić położenie samolotu.

+0

to świetna odpowiedź, czy zrobiłeś wiele kinect? –

+0

Dobrze. Zrobiłem z nim trochę pracy i wykonałem też kilka projektów z zakresu wizji komputerowej. Dobry wygląd! –

+0

Chcę stworzyć grę w ponga używając piłek do sterowania wiosłami. –

Powiązane problemy