[Jderobot] [Jderobot-dev] Duda sobre CameraServer y el modo de servir imágenes

Oscar Garcia oscar.robotica en linaresdigital.com
Dom Jul 21 21:20:51 CEST 2013


El 21/07/13 18:04, Alberto Martin escribió:
> Para ArDroneServer nos gustaría poder recibir las imágenes por 
> separado por lo que hice la siguiente modificación en CameraServer 
> [6], con esto quiero conseguir que en función del modo actual 
> seleccionado para la cámara CameraServer sirva una imagen o la otra. 
> Para la imagen frontal todo funciona como antes, se pude ver el 
> resultado en [7]. Sin embargo para la cámara vertical sucede algo que 
> no entiendo, podéis ver el resultado en [8].
> ¿Alguien sabe a qué se debe este resultado?
> [7] modificado_horinzontal: 
> http://jderobot.org/store/amartinflorido/uploads/images/2_modifcado_hor.png
> [8] modificado_vertical: 
> http://jderobot.org/store/amartinflorido/uploads/images/3_mod_vert.png


Buenas tardes

Tiene toda la pinta que la imagen que obtienes no tiene exactamente las 
medidas que estás poniendo o que, por otro lado, la codificación de bits 
no es la misma. Eso suele ocurrir cuando el número de puntos que esperas 
de una línea no coincide con el real que te mandan. O también puede ser 
porque esperas que un punto tenga un tamaño en bits que luego es diferente.

En tu caso parece que estás forzando un ancho en puntos que no es 
correcto (el real).

Si lo que quieres es recortar la imagen pequeña que hay dentro de la 
grande la forma en la que lo haces NO ES LA CORRECTA.

Para recortar una imagen debes usar ROIs (regiones de interés) y no 
"forzar" el cambio de tamaño como estás haciendo o bien usar el operador 
asignación (=) tal y como muestro y te pongo enlace a la documentación:
http://opencv.willowgarage.com/documentation/cpp/core_basic_structures.html#index-7903

cv::Mat fotograma = (obtienes el fotograma del ardrone);
cv::Mat recorte = fotograma(cv::Range(0, 0),
     cv::Range(D1_VERTSTREAM_WIDTH, D1_VERTSTREAM_HEIGHT));


Un saludo.


More information about the Jde-developers mailing list