Proyecto Fin de Carrera

Robótica, software y telecomunicaciones.

Point Cloud Library

Point Cloud Library (PCL) es un framework para trabajar con nube de puntos, ¿pero qué es una nube de puntos?

Se considera una nube de puntos a una serie de datos en un espacio de cualquier número de dimensiones que se encuentran dispersos. Típicamente hablamos de nube de puntos en espacios 2D/3D cuando nos referimos a los datos (profundidad, color, textura, forma…) que obtenemos mediante sensores (cámaras, láseres, sónares…).

Esto es muy común porque normalmente los datos capturados en el espacio 3D son representados en un plano 2D, de este modo si queremos pasar del plano 2D al espacio 3D, nos encontramos con que hay muchos puntos del espacio 3D para los que no temenos información de forma que en el espacio 3D sólo tenemos información de algunos puntos salteados, en ese caso, esos puntos forman una nueba de puntos.

PCL pone a nuestra disposición una serie de algoritmo para filtrar esa nube de puntos e intentar la reconstrucción o reconocimiento de objetos a partir de dicha nube.

Hace ya tiempo que Luis J. Manso me recomendó PCL para trabajar con la Kinect, aunque aún lo tengo en mi lista de tareas pendientes, espero que con esta entrada me anime a echarle un vistazo con más profundidad.

Si tú has usado PCL o tienes algo que anotar no dudes en escribirme un comentario, si por el contrario estás interesado en saber más de PCL a continuación dejo el enlace a la API y otro con Documentación y tutoriales sobre PCL:

http://docs.pointclouds.org/trunk/

http://www.pointclouds.org/documentation/tutorials/

Anuncios

31 mayo 2011 Posted by | all | , , , | Deja un comentario

Documentación en la API de RoboComp

En una entrada anterior mostraba un esquema con las relaciones entre las funciones del worker de mi componente, y os contaba cómo escribiendo doxygen Doxyfile se nos generaba automáticamente toda la documentación y se nos guardaba en un nuevo directorio doc.

Pero lo ideal es que esa documentación esté integrada en la API de RoboComp junto a la información de los demás componentes. Es una lástima que Doxygen no soporte ICE de forma que  mostrase los proxies, puertos e interfaces. Pero al menos la gente de RoboComp tiene un scrip que genera los archivos *.cpp y *.h a partir de los *.ICE para que Doxygen pueda enterarse de algo.

Realmente subir la documentación a la API lo hace ese script que se genera en el servidor, por lo cual se necesita que algún administrador dé de alta tu componente, después de esto, todo es automático. El script está programado para ejecutarse una vez a la semana, mientras que nosostros simplemente tenemos que escribir comentarios en nuestro código con el formato de Doxygen.

De momento la documentación de mi componente ya está publicada, ahora queda comentar bien para que sea útil.

¡Ah! Se me olvidaba, por si no ha quedado claro, no seais tan bestias de subir la documentación con un svn ci porque eso sólo te serviría como copia de seguridad, pero son demasiados archivos y cada vez que alguien haga un svn up de tu componente se los tendría que bajar, cuando es más rápido generarlos desde el propio código. Hacer doxygen Doxyfile te puede venir bien para comprobar cómo sería si se generase en el servidor, o para llevártela a otro ordenador, imprimirla, etc.

19 abril 2011 Posted by | all | , , , | Deja un comentario

   

A %d blogueros les gusta esto: