连通域分析——去除宽度和高度过小的连通域

该程序专注于连通域分析,通过保留较大的连通区域并去除宽度和高度过小的连通域来实现图像去噪。此方法在图像处理中有广泛应用。
摘要由CSDN通过智能技术生成

        本程序功能是将较大的连通域保留,将较小的去除,可用于图像去噪等方面。

#include <vector>
using namespace std;
void ConnectRegionAnalyze(TImage* OrgGrayImg)
{
	int i,j;
	int ImgHeight = OrgGrayImg->nHeight;
	int ImgWidth = OrgGrayImg->nWidth;
	unsigned char * Img = OrgGrayImg->pImage;

	// Mask是与图像相同大小的缓存
	// 为1表示背景点
	// 为0表示未访问的前景点
	// 为2表示已访问的前景点
	// 为3表示保留点
	unsigned char *Mask = new unsigned char[ImgHeight * ImgWidth];
	memset(Mask,1,sizeof(unsigned char) * ImgHeight * ImgWidth);
	unsigned char *mask0 = Mask;
	int totalPt = 0;
	// 统计黑色像素点个数
	for (i = 1; i < ImgHeight - 1; i++)
	{
		unsigned char *imgdata = Img + i * ImgWidth;
		unsigned char *mdata = mask0 + i * ImgWidth;
		for (j = 1; j < ImgWidth - 1; j++)
		{
			if (imgdata[j] < 180)
			{
				mdata[j] = 0;
				totalPt ++;
			}
		}
	}

	POINT * seq;
	seq = new POINT [to
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值