查找轮廓:
0.1 findContours()函数
作用:
函数FindContours()从二值图像中寻找轮廓,其处理的图像可以是从Canny()函数得到有边缘像素的图像,或者是从Threshold()得到的图像,这时的边缘是正和负区域之间的边界。
函数及其参数说明:
findContours(
InputOutputArray binImg, //输入8bit图像(二值图像)
OutputArrayOfArrays contours, //输出找到的轮廓对象
OutputArray, hierachy // 图像的拓扑结构
int mode, //轮廓返回的模式(RETR_TREE等)
int method, //发现方法(CHAIN_APPROX_SIMPLE等)
Point offset=Point() //轮廓像素的位移(默认没有位移(0, 0))
)
(1)在输入图像中查找轮廓时,FindContours()函数会对输入图像进行修改,建议输入原图的拷贝图像。
(2)contours这个参数就是内存存储器,函数找到的轮廓就记录在此内存里。
(3) mode参数表面返回的轮廓的“连接方法”,
0.1 drawContours()函数
作用:
一个经常使用的功能是在屏幕上绘制检测到的轮廓。绘制可以使用drawContours()函数完成;
drawContours(
InputOutputArray binImg, // 输出图像
OutputArrayOfArrays contours, //找到的全部轮廓对象
Int contourIdx, //轮廓索引号