使用OpenCV中cvFindContour函数检测轮廓的心得
在使用OpenCV的cvFindContour检测轮廓之前一般首先要对图像进行二值化处理,cvFindContour函数原型为int
cvFindContours( CvArr* image, CvMemStorage* storage, CvSeq** first_contour, int header_size=sizeof(CvContour),
int mode=CV_RETR_LIST, int method=CV_CHAIN_APPROX_SIMPLE, CvPoint offset=cvPoint(0,0) );二值化处理函
数cvThreshold(g_pGrayImage, pBinaryImage, 100, 255, CV_THRESH_BINARY_INV),有时在用
mode=CV_RETR_EXTERNAL寻找最外层轮廓时会出现找到的最外层轮廓是画布的轮廓,这时需要调整cvThreshold的
最后一个参数,即把CV_THRESH_BINARY_INV 改为CV_THRESH_BINARY 或者把CV_THRESH_BINARY 改为
CV_THRESH_BINARY_INV,这是因为cvFindContour是从黑色背景中寻找白色轮廓。
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
