1.findContours()
findContours用来寻找图像的轮廓,在OpenCV中有两种定义形式
- 第一种定义形式
void cv::findContours ( InputOutputArray image,
OutputArrayOfArrays contours,
OutputArray hierarchy,
int mode,
int method,
Point offset = Point()
)
参数说明:
InputOutputArray image:输入图像,必须为8位单通道图像,图像中的非零像素被视为1,0像素保留其像素值,故加载后图像将自动转换为二值图像。可以使用cv::compare,cv::inRange,cv::threshold,cv::adaptive Threshold,cv::Canny等函数来创建二值图像,如果第四个参数为RETR_CCOMP或RETR_FLOODFILE,输入图像可以是32位整形图像CV_32SC1
OutputArrayOfArrays contours:检测到的轮廓,每个轮廓以点向量的形式进行存储,定义为vector<vector<Point>> contours,向量内每个元素保存了一组由连续点构成的向量,每一组Point就是一个轮廓
OutoutArray hierarchy:关于输出图像的拓扑信息