2012-02-08 12 views

Respuesta

8

Kinect le devuelve un mapa defino matricial que representa la distancia de cualquier superficie al sensor y siguiendo el pinhole camera model es posible alinear cada medida de profundidad con el correspondiente valor RGB. Consideraré que ya sabes cómo correlacionar cada píxel de la matriz de profundidad con sus X, Y, Z en el espacio y su valor RGB. De lo contrario, deberá hacer further research y comprender cómo se realiza la correlación estéreo entre el sensor de profundidad y la cámara RGB.

Ha hecho dos preguntas completamente diferentes aquí. El primero se puede resolver fácilmente con alguna noción de geometría básica, pero es necesario resolver primero el segundo para encontrar la posición del objeto en el espacio.

Hay varios enfoques para encontrar los objetos de colores brillantes. Si su sensor registrará una escena estática, es posible usar Background Subsctraction. Esto le producirá una imagen binaria que representa los píxeles con diferentes valores de un modelo de fondo previamente entrenado. Como sus objetos tendrán explícitamente colores más brillantes que el fondo, puede simplemente aplicar un Thresholding Segmentation. Simplemente convierta el RGB en una imagen HSL y busque valores de Luminancia más altos. Hay varios otros métodos, investigue para ellos si esos no resuelven su problema. Siguiendo ambos métodos le devolverá una imagen binaria con blobs. Puedes utilizar el centro de esos blobs como las coordenadas de la matriz de tus objetos de colores brillantes.

Con 3 Centro de manchas A 'B' y C' usted será capaz de encontrar el avión que usted está buscando, tal como se representa en la siguiente imagen:

Finding the plane

Explicación: Un avión se puede representar como un punto (posición) y una normal (orientación). Considerando que todos sus objetos estarán exactamente en el plano que está tratando de encontrar, todo lo que necesita son 3 puntos, A, B, C que representarán un triángulo dentro de ese plano. Este triángulo normal es igual a (A - B) x (C - B) - aquí x representa el producto cruzado - y es el mismo que el plano. Entonces, tu avión será cualquiera de esos 3 puntos y ese triángulo normal. Si las dimensiones del objeto son significativas, deberá tenerlas en cuenta para definir la posición de su avión.

+0

esta es una gran respuesta, ¿has hecho mucho kinect? –

+0

Bueno. He hecho algunos trabajos con él, y también he realizado algunos proyectos de visión por computadora. ¡Buen aspecto! –

+0

Quiero crear un juego de pong usando balones de fútbol para controlar las paletas. –