OpenCV之小技巧

mac2022-06-30  150

文章目录

一、画线成圈二、图像清除


一、画线成圈

多用在轮廓识别中

复杂版本:

//hull是一个vector点集 vector<Size> hull{Size(100,200),Size(300,200),Size(300,400),Size(100,400)}; //连接相邻两个点 for(int i=0;i<hull.size()-1;i++) { line(image,hull[i],hull[i+1],Scalar::all(255),2); } //最后一个点和第一个点连起来 line(image,hull[hull.size()-1],hull[0],Scalar::all(255),2);

优化版本:

优化思路:使用%n回到0

//hull是一个vector点集 vector<Size> hull{Size(100,200),Size(300,200),Size(300,400),Size(100,400)}; //连接相邻两个点 for(int i=0;i<hull.size();i++) { line(image,hull[i],hull[(i+1)%hull.size()],Scalar::all(255),2); }

二、图像清除

已经有一个特定尺寸的Mat类图像,要求让它变成全黑。

复杂版本

image=Mat::zeros(image.size(),image.type());

优化版本:

image=Scalar::all(0);
最新回复(0)