#include "stdafx.h"
#include <iostream>
#include <opencv2/opencv.hpp>
using namespace cv;
using namespace std;
int main()
{
Mat src = imread("02.jpg");
Point root_points[1][6];
root_points[0][0] = Point(215, 220);
root_points[0][1] = Point(460, 225);
root_points[0][2] = Point(466, 450);
root_points[0][3] = Point(235, 465);
root_points[0][4] = Point(260, 390);
root_points[0][5] = Point(96, 310);
const Point* ppt[1] = { root_points[0] };
int npt[] = { 6 };
polylines(src, ppt, npt, 1, 1, Scalar(0,0,0), 1, 8, 0);
imshow("Test", src);
cv::Mat mask_ann, dst;
src.copyTo(mask_ann);
mask_ann.setTo(cv::Scalar::all(0));
fillPoly(mask_ann, ppt, npt, 1, Scalar(255, 255, 255));
imshow("mask_ann", mask_ann);
src.copyTo(dst, mask_ann);
imshow("dst", dst);
waitKey();
return 0;
}
Taily老段的微信公众号,欢迎交流学习
https://blog.csdn.net/taily_duan/article/details/81214815