假设我有以下图片:
我感兴趣的区域如下:
我希望得到以下结果:
如何知道ROI由四点表示,我怎样才能实现这一点:
Point pt1(129,9);
Point pt2(284,108);
Point pt3(223,205);
Point pt4(67,106);
答案 0 :(得分:3)
我的想法是使用fillPoly()
将旋转矩形/多边形内的所有像素填充到0,255,否则:
Mat mask = cv::Mat(img.size(), CV_8UC1, Scalar(255)); // suppose img is your image Mat
vector<vector<Point>> pts = { { pt1, pt2, pt3, pt4 } };
fillPoly(mask, pts, Scalar(0)); // <- do it here