提取内部轮廓(洞)的OpenCV
答
你可以使用类似这样与C接口:
cvFindContours(tmp, storage, &srcSeq, sizeof(CvContour),
CV_RETR_LIST, CV_CHAIN_APPROX_SIMPLE);
while (srcSeq)
{
if (CV_IS_SEQ_HOLE(srcSeq))
{
// do something with the hole
}
srcSeq = srcSeq->h_next;
}
如果您使用的是C++接口,那么你将不得不使用从FindContours()层次结构参数,看轮廓是一个洞。
都能跟得上它没有工作... 我想是通过使用cvDrawContours(SRC1,C,红,蓝,1,0.25,8)来显示轮廓; 我不能从外部轮廓单独的孔......外部和内部轮廓有相同的标志大部分的时间 的......只有极少数的外部轮廓有不同的标志...... 总之它同时显示外部轮廓和孔的我们的代码情况下...感谢您的帮助反正;) – Saleh 2012-01-03 09:58:31
那么只绘制你的“如果”,你将不得不调用cvDrawContours与maxLevel参数= 0。像这样的事情已经检查孔:cvDrawContours(SRC1, srcSeq,红色,蓝色,0,0.25,8); – Adrian 2012-01-03 10:09:19
烨得到了它...... thanku这么多... Saleh 2012-01-04 04:37:22