C++实现超分辨 FALSR(2)之深度卷积

FALSR中除了用到4分组卷积外,也有2分组卷积,这个只要把前面的 4 换成 2 就可以了。

这里说一说“深度卷积“,就是说每个深度通道只用一个卷积核。

比如:

96通道特征图 应用 3x3核 输出 96通道图

普通卷积层 需要 96X96 个核

深度卷积层 只要       96 个核

实现:

void 深度卷积(卷积层 & si,卷积层 & di,层数据 * 层)//DepthwiseConv2dNative
{
	int wid=si.width;
	int hei=si.height;
	int wh=wid*hei;
	int d=si.depth;

	if(层->输入维度 !=si.depth || 层->输出维度 !=1)
		cout<<"出错了,深度卷积!!!\n";
	if(层->输出维度 *层->输入维度 != di.depth || di.width != wid || di.height != hei)
		Resize卷积层(di,wid,hei,层->输出维度 *层->输入维度);


	//*
	层数据 t1;
	t1.权重长度=层->权重长度/d;
	t1.权重_数据=层->权重_数据;
	t1.偏移长度=1;
	t1.偏移_数据=层->偏移_数据;
	t1.核宽=层->核宽;
	t1.输入维度=层->输入维度/d;
	t1.输出维度=1;

	int w2=t1.核宽*t1.核宽;

		
	卷积层 st(wid,hei);
	st.data=si.data;

	卷积层 dt(wid,hei);
	dt.data=di.data;
	for(int i=0;i<d;i++)
	{
			vl_nnconv(&st,&dt,&t1 ,1,1,1,1,1,1);

			st.data+=wh;
			dt.data+=wh;

			t1.权重_数据+=w2;


	}
	//*/
	vl_nnrelu(&di);
}

一句话,就是 一个通道用一个核。

深度卷积:96个通道 需要 96 次 矩阵乘法(小矩阵)。

普通卷积:96个通道 只需   1 次 矩阵乘法(大矩阵)。

谁速度更快?

这里和前面的WDSRx2比一比效果和速度:

小图

FALSR

WDSR

看上去WDSR 更光顺一点,FALSR稍粗糙点。

速度 WDSR 16.1 秒 ,FALSR 9.6 秒,差不多快一倍。

当然,这个是基础模型,还有参数更多,效果更好的,速度也应该慢点吧。

下载:

快速超分辨率重建 FALSR(2倍)win程序

快速超分辨率重建 FALSR(2倍)win程序 ,由《FALSR-master》中的 FALSR-C.pb 模型改编而来

https://download.csdn.net/download/juebai123/11171422

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 基于深度卷积神经网络的手写体字符识别系统是一种利用深度学习技术来识别手写体字符的系统。该系统的核心是深度卷积神经网络,通过多层卷积和池化层的组合,可以有效地提取手写体字符的特征。 首先,该系统需要大量的手写体字符样本作为训练集。这些样本会被用来训练深度卷积神经网络,并将其内部的权重和偏置参数进行更新,从而使网络能够自动学习到不同手写体字符的特征。 在训练过程中,深度卷积神经网络会通过多次前向传播和反向传播来优化网络的参数。前向传播通过将输入的手写体字符图像从第一层传递到最后一层,最后生成分类的概率分布。反向传播则通过比较网络的输出和真实标签之间的差异,来计算损失函数,并将该误差从最后一层传播到第一层,从而更新网络的参数。 当深度卷积神经网络训练完毕后,就可以对新的手写体字符图像进行预测了。输入一个手写体字符图像,系统会通过前向传播生成对应的分类概率分布,然后选择概率最高的字符作为预测结果。 该系统相比传统的手写体字符识别方法具有许多优点。首先,深度卷积神经网络能够自动学习特征,无需手动提取,可以适应不同字体、笔迹的手写体字符。其次,该系统可以处理大规模的手写体字符数据集,并且具有较高的准确率。最后,该系统还可以进行端到端的训练和预测,简化了手写体字符识别的流程。 综上所述,基于深度卷积神经网络的手写体字符识别系统是一种高效、准确的手写体字符识别方法,有着广泛的应用前景。 ### 回答2: 基于深度卷积神经网络的手写体字符识别系统是一种利用机器学习算法来自动识别手写字符的系统。该系统使用了深度卷积神经网络作为主要的分类器和特征提取器。其工作流程如下: 首先,系统需要进行数据预处理。手写字符图像经过采集后,会进行图像增强和降噪处理。这些处理包括对图像进行灰度化、二值化,以及去除噪声等操作。这样处理后的图像能够更容易被网络识别和处理。 接下来,预处理后的图像会经过深度卷积神经网络的前向传播过程。该网络有多个卷积层和池化层,用于提取图像的特征。卷积层可以提取图像的局部特征,而池化层则能够减小图像的维度,提取图像的全局特征。通过多层的卷积和池化操作,网络可以学习到更高级别的特征。 在特征提取的过程中,网络会采用梯度下降等优化方法来最小化损失函数,使得网络的输出与真实标签尽可能地一致。通过多次迭代训练,网络可以自动地学习到识别手写字符的模式和规律。 最后,经过训练的网络可以用于识别新的手写字符。当一张新的手写字符图像输入到网络中时,网络会对其进行前向传播,得到一个概率分布。系统会选择概率最高的字符作为识别结果。 基于深度卷积神经网络的手写体字符识别系统具有较高的识别准确率和较好的鲁棒性。它可以广泛应用于自动化识别、智能货物分类等领域。然而,该系统对于图像质量和字符多样性仍然存在一定的限制,需要进一步研究和改进。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值