opencv2实现形态学骨架提取
来源:互联网 发布:查看linux版本 编辑:程序博客网 时间:2024/05/02 00:12
因为opencv2中没有形态学骨架提取算法的实现,于是准备在opencv2上实现一个。
首先介绍下骨架提取算法,冈萨雷斯的书上已经说的很清楚了,我再重复一下。
集合A的骨架可以用腐蚀和开操作来表达, 即骨架可以表示为
其中,
式中,B是一个结构元,而 表示对A的连续k次腐蚀:
K是A被腐蚀为空集前的最后一次迭代步骤。换句话说,
其中AB表示用B结构原腐蚀A,
表示开运算
实现步骤:opencv2中已经有了腐蚀函数, 开运算函数,而骨架提取可以表示为有限次腐蚀,开运算操作,只需按照公式码上去就行了,过程比较简单。
这里,我借用了opencv2这些操作,另外要注意的是求集合并集时,可以直接使用Mat 重载后的运算 “|”操作 ,集合相减时也可直接使用Mat的“-”操作。
Mat a, b, c;a = imread("src1.jpg");b = imread("src2.jpg");c = a - b;c = a | b;
下面是使用3*3正方形模板提取的骨架
当我换成3*3十字模板就变成下面这样了
下面两幅图是“真正”的骨架提取
下面是完整的代码下载地址
http://download.csdn.net/detail/dingjiansw101/9544038
0 0
- opencv2实现形态学骨架提取
- 图像骨架提取实现
- 二值图像--形态学处理4 击中,边界提取,孔洞填充,连通分量提取,凸壳,细化,骨架,形态学重建
- 骨架提取
- 三维网格骨架提取形态学调整牙齿模型分割算法应用于医疗正畸软件初步设计效果图
- 提取骨架(细化)
- 骨架提取----细化
- 图像细化、骨架提取
- 骨架提取算法
- 图像的形态学重构与骨架
- 形态学边界提取
- 图象的骨架提取算法
- 三维网格的骨架提取
- opencv 骨架提取/图像细化
- 基于zhang 的骨架提取
- OpenCV2马拉松第21圈——形态学操作实现角点检测
- 两种图像骨架提取算法的研究(2)实现代码
- opencv2.4.3特征提取的实现表示方法
- 【十三】虚析构函数
- HTML事件
- Matlab给系统自动生成的窗体Figure1改名称
- qt creator : error: Exception at 0x772e93d0, code: 0xc0000409: , flags=0x1 (execution cannot be c
- POJ 3481 set水过
- opencv2实现形态学骨架提取
- 链式编程学习(二)
- UVA673 水,模拟栈
- Spark学习系列——在虚拟机上搭建 Spark 集群的两种方法
- 对oop一些的基本操作
- iOS-实战项目笔记总结-打包错误及解决
- restful是什么
- java笔记day22—GUI(1)
- Git使用总结(包含Git Bash和Git GUI的使用)