Red de conocimiento informático - Espacio del host - Quiero usar el rectángulo más pequeño fuera de la imagen en opencv y luego recortar esta parte rectangular.

Quiero usar el rectángulo más pequeño fuera de la imagen en opencv y luego recortar esta parte rectangular.

Pruébelo aquí hay algunos parámetros que deben cambiarse. Esto es c

vectorlt;vectorlt;Pointgt;gt;vecContour;

vectorlt;Vec4igt;hierarcy;

findContours (dst1, vecContour, CV_RETR_LIST, CV_CHAIN_APPROX_SIMPLE); //busca contornos

RectboundRect //almacena el rectángulo exterior

RotatedRect rorect;/almacena el rectángulo exterior más pequeño

Point2f rect[4];

//vectorlt; vectorlt; gt; .size(), CV_8UC1);

for (int i = 0; i lt; vecContour.size(); i )

{

boundRect = boundingRect(Mat (vecContour[i]));

if (boundRect.width lt; 200 | |boundRect.height lt; 200)

continuar;

círculo( dst1, Point(rorect.x, rorect.center.y), 5, Scalar(0, 255, 0), -1, 8); //traza el centro del menor centro del rectángulo exterior

rorect.points(rect); //copia los cuatro puntos finales del rectángulo exterior más pequeño a la matriz rect

rectángulo(dst1, Point(boundRect.x,boundRect.y), Point (boundRect. xboundRect.width,boundRect.yboundRect.height), Scalar(0, 255, 0), 2, 8);

for (int j = 0; j lt; 4; j )

p>

{

línea(dst1, rect[j], rect[(j 1) ), rect[(j 1) ), rect[(j 1) ) , rect[(j 1) ), rect[(j 1) ), rect[(j 1) ) rect[(j 1) 4], Escalar(255, 0, 0), 2, 8);

}

}

}

}