击中式细化图像,提取图像骨架。

本文深入探讨了图像细化过程,重点介绍了如何通过算法精确地提取图像的骨架,为图像处理和分析提供了关键步骤。内容包括不同细化方法的比较、应用场景及其实现技巧。
摘要由CSDN通过智能技术生成
#include <cv.h>
#include <highgui.h>

/
/  击打式细化图像
/  binaryImage - 需要细化的图像,必须是二值图像。灰度图也可以蒙混过关,但是没有用。
/  refColor - 关键颜色,也就是需要细化的颜色。0,黑色或者是 255白色。
/  返回值:返回细化后的图像,细化的结果需要自己释放去。
IplImage* HitRefinementImage(const IplImage* binaryImage, const unsigned char refColor = 0)
{
	//必须是一个通道的,也就是必须是二值图,当然也你可以提供灰度图,可想而知得不到什么有用的结果的。
	assert(binaryImage->nChannels == 1);

	//击中表。循环判断是否有击中其中的项目。
	static const unsigned char hitTable[256] = {
		0,0,0,0,0,0,0,1,	0,0,1,1,0,0,1,1,
		0,0,0,0,0,0,0,0,	0,0,1,1,1,0,1,1,
		0,0,0,0,0,0,0,0,	1,0,0,0,1,0,1,1,
		0,0,0,0,0,0,0,0,	1,0,1,1,1,0,1,1,
		0,0,0,0,0,0,0,0,	0,0,0,0,0,0,0,0,
		0,0,0,0,0,0,0,0,	0,0,0,0,0,0,0,0,
		0,0,0,0,0,0,0,0,	1,0,0,0,1,0,1,1,
		1,0,0,0,0,0,0,0,	1,0,1,1,1,0,1,1,
		0,0,1,1,0,0,1,1,	0,0,0,1,0,0,1,1,
		0,0,0,0,0,0,0,0,	0,0,0,1,0,0,1,1,
		1,1,0,1,0,0,0,1,	0,0,0,0,0,0,0,0,
		1,1,0,1,0,0,0,1,	1,1,0,0,1,0,0,0,
		0,1,1,1,0,
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值