Me gustaría hacer algo muy simple: copiar un área dentro de una imagen en una nueva área en una nueva imagen. En el cheatsheet OpenCV 2.3, sugieren la siguiente solución:Copiar la región de una imagen a otra región en otra imagen
"Ejemplo 3. Copiar la imagen retorno de la inversión a otra imagen con la conversión"
Rect r(1, 1, 10, 20);
Mat dstroi = dst(Rect(0,10,r.width,r.height));
src(r).convertTo(dstroi, dstroi.type(), 1, 0);
Mi código es el siguiente:
Mat frameO, frameS;
original >> frameO;
stabilized >> frameS;
Mat output(frameO.rows+40, frameO.cols*2+60, CV_32FC3);
output.setTo(0);
Rect r(0,0, frameO.cols, frameO.rows);
Mat destROI = output(Rect(20,20, frameO.cols, frameO.rows));
frameO(r).copyTo(destROI);
Solo quiero copiar la imagen frameO
en la salida en la ubicación Rect(20,20, frameO.cols, frameO.rows)
.
¿Alguien me puede decir por qué esto no funciona?
El fragmento de código que proporciona es incompleto. ¿Podría publicar el código completo, incluida la operación en la que realiza la copia? – ypnos
posible duplicado de [¿Cómo establecer el retorno de la inversión en OpenCV?] (Http://stackoverflow.com/questions/8206466/how-to-set-roi-in-opencv) – karlphillip
y también un posible duplicado de http: // stackoverflow .com/questions/6566295/opencv-c-getting-region-of-interest-roi-using-cvmat – karlphillip