C# 基于OpenCv的视觉工作流-章14-轮廓提取
本章目标:
一、轮廓提取;
二、绘制轮廓;

一、轮廓提取;
OpenCv轮廓提取可如下使用:
Mat matDst = new Mat();
Cv2.FindContours(image, out contours, out hierarchy, RetrievalModes.External, ContourApproximationModes.ApproxNone);
其中:参数1,image为输入图像;
参数2,为输出轮廓;
参数3,为轮廓层级关系;
参数4,为查找轮廓模式(External、CComp、List、Tree);
参数5,为轮廓近似方法(如取所有点、仅取角点);
External轮廓提取模式,提取外部轮廓,效果如下。

CComp轮廓提取模式,提取所有轮廓,每层最多两层,外部轮廓,内部孔,效果如下。

List轮廓提取模式,提取所有轮廓,不建立等级关系,效果如下。

Tree轮廓提取模式,提取所有轮廓,建立树形关系,效果如下。

二、轮廓绘制;
OpenCv轮廓绘制可如下使用:
Mat matDst = new Mat();
Cv2.DrawContours(image, contours, -1, new Scalar(0,255,0), 2);
其中:参数1,image为图像;
参数2,为轮廓数组;
参数3,为轮廓ID序号;
参数4,为绘制颜色;
参数5,为绘制线大小;
"VisionTool 探迹"免费视觉工具
下载地址:https://pan.baidu.com/s/11tktKOSnepLNIEqNbvnv6w?pwd=qv5i
"VisionTool Halcon"付费视觉工具
下载地址:https://pan.baidu.com/s/1v832KTonDYS6oNnWG2iZtQ?
对应系列文章"C# 基于Halcon的视觉工作流",欢迎前往阅读。
上述内容需要一定的技术功底,本章至此已结束,欢迎阅读下章,谢谢!