轮廓处理在图像识别中经常用到,在工业中机器视觉用得最多的就是对轮廓进行处理,从而得到我们需要的数据。对于opencv中轮廓函数的了解可以帮助我们更好的学习图像视觉处理,下面只是函数的一些解释,要想更深入了解轮廓函数的实现,还需要安装opencv的运行环境,直接查看源码构成。
CreateContourTree
创建轮廓的继承表示形式
复制
CvContourTree* cvCreateContourTree( const CvSeq* contour, CvMemStorage* storage, double threshold );
- contour
- 输入的轮廓
- storage
- 输出树的容器
- threshold
- 逼近精度
函数 cvCreateContourTree 为输入轮廓 contour 创建一个二叉树,并返回树根的指针。如果参数 threshold 小于或等于 0 ,则函数创建一个完整的二叉树。如果 threshold 大于 0 , 函数用 threshold 指定的精度创建二叉树:如果基线的截断区域顶点小于threshold,该数就停止生长并作为函数的最终结果返回。
ContourFromContourTree
由树恢复轮廓
复制
CvSeq* cvContourFromContourTree( const CvContourTree* tree, CvMemStorage* storage, CvTermCriteria criteria );
- tree
- 轮廓树
- storage
- 重构的轮廓容器
- criteria
- 停止重构的准则
函数 cvContourFromContourTree 从二叉树恢复轮廓。参数 criteria 决定了重构的精度和使用树的数目及层次。所以它可建立逼近的轮廓。 函数返回重构的轮廓。
MatchContourTrees
用树的形式比较两个轮廓
复制
double cvMatchContourTrees( const CvContourTree* tree1, const CvContourTree* tree2, int method, double threshold );
- tree1
- 第一个轮廓树
- tree2
- 第二个轮廓树
- method
- 相似度。仅支持 CV_CONTOUR_TREES_MATCH_I1 。
- threshold
- 相似度阈值
函数 cvMatchContourTrees 计算两个轮廓树的匹配值。从树根开始通过逐层比较来计算相似度。如果某层的相似度小于 threshold, 则中断比较过程,且返回当前的差值。
评论 (0)