小波变换的C++实现

本文介绍了如何在C++中实现小波变换。作者在代码中详细展示了如何将图像划分为16*16的块,并对每个块进行小波变换,通过两次迭代计算得到四个区域,然后计算空间能量并存储为SVM训练样本。
摘要由CSDN通过智能技术生成
</pre><pre name="code" class="cpp"><p><span style="font-family:KaiTi_GB2312;font-size:14px;">看完小波变换的理论后想实现一线,同时发现opencv中并没有小波变换的函数(还是新版的有了,我不知道啊,please give Me a feedback if U guy know)</span></p><p>...............省略线。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。</p><p>	int N = 16;</p>	//该部分首先将图划分为16*16的block区域
	//在每一个循环当中,在每一次循环的所有的操作中,都表示在一个block的操作
	//其中包括一次小波变换得到四个区域
	//一次空间Spatial Energy计算,将每个Block的能量块保存到EnergyBlock([8,8]大小)中
	//并且将这些能量块的数值保存为vector作为SVM的训练样本
	for (int x=0;x<inputImage.rows;x+=N)
	{
		Mat ROIBlock = inputImage(Range(x,x+N),Range(x,x+N));

		//小波变换:
		//waveletblockLH为LH列变换后的结果
		//waveletblock为waveletblock的LH行变换的结果
		Mat WaveletBlockLH=Mat::zeros(16, 16, ROIBlock.type());
		Mat WaveletBlock=Mat::zeros(16, 16, ROIBlock.type());
		Mat En
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值