[Jderobot] Homografía. Calcular puntos individuales.

Eloy abanibiaboebe en gmail.com
Jue Dic 19 12:16:58 CET 2013


Hola, estoy enderezando imágenes mediante homografía.

Para ello selecciono 4 puntos de la imagen original y un rectángulo en la
imagen destino, entonces aplico:

cv::Mat h = cv::findHomography(homoPoints,rectifiedPoints,0);    

y obtengo una matriz h mediante la cual poder realizar la transformación de
la imagen entera:

cv::warpPerspective(matInput,homography,h,cv::Size(matInput.cols,matInput.rows*2),cv::INTER_LINEAR,cv::BORDER_CONSTANT);

Con esto tengo mi imagen enderezada.

Ahora mi problema es que quiero saber dónde cae un punto en la imagen
rectificada. Para ello utilizo:

cv::perspectiveTransform(homoBlobs,rectifiedBlobs,h);

Donde homoBlobs y rectifiedBlobs son vectores de Point2f.

Obtengo una excepción:

OpenCV Error: Assertion failed (scn + 1 == m.cols && (depth == CV_32F ||
depth == CV_64F)) in perspectiveTransform, file
/home/eloy/opencv-2.4.6.1/modules/core/src/matmul.cpp, line 1926
terminate called after throwing an instance of 'cv::Exception'
  what():  /home/eloy/opencv-2.4.6.1/modules/core/src/matmul.cpp:1926:
error: (-215) scn + 1 == m.cols && (depth == CV_32F || depth == CV_64F) in
function perspectiveTransform

Alguna idea?

He pensado que puede pasar que el punto de la imagen original no tenga
correspondencia en la imagen salida, pero solamente utilizo puntos que se
que están contenidos dentro del rectángulo mediante el cual calculo h.


Un saludo.



--
View this message in context: http://jderobot-developer-list.2315034.n4.nabble.com/Homografia-Calcular-puntos-individuales-tp4641967.html
Sent from the Jderobot Developer List mailing list archive at Nabble.com.


More information about the Jde-developers mailing list