我有一个形象面具,有一些我从Canny那里得到的轮廓。 我可以计算一个边界矩形(具有固定的给定角度)。
现在我需要将这两个区域分离到该矩形的左侧和右侧。 我怎样才能做到这一点?
请注意,我想要处理矩形内的区域,而不是轮廓的像素。
编辑
这是我如何从掩码获取每个边界矩形:cv::Mat img_edges; // mask with contours
// Apply clustering to the edge mask from here
// http://stackoverflow.com/questions/33825249/opencv-euclidean-clustering-vs-findcontours?noredirect=1#comment55433731_33825249
// Find boundary rectangle
for (auto &contour: contours) { // Iterate over every contour cluster
cv::Mat Srot = cv::getRotationMatrix2D(cv::Point2f(float(img_edges.cols) / 2., float(img_edges.rows) / 2.), -ILLUMINATION_ANGLE_DEG, 1.0);
cv::transform(contour, contour, Srot);
float min_x, min_y, max_x, max_y;
min_x = min_y = std::numeric_limits::max();
max_x = max_y = -std::numeric_limits::max();
// Simply find edges of al