基于双分支并行神经网络的图像处理方法与流程

文档序号:36628323发布日期:2024-01-06 23:19阅读:38来源:国知局
基于双分支并行神经网络的图像处理方法与流程

本发明涉及计算机视觉图像分类,具体涉及了基于双分支并行神经网络的图像处理方法。


背景技术:

1、神经网络作为一种强大的机器学习模型,通过从大量的数据中学习复杂的特征和函数,在图像分类、目标检测和语义分隔等多种视觉任务中取得了优异的效果。为了使网络能够学习足够丰富的数据特征,满足多种复杂场景需求,神经网络的深度和宽度在不断增加,与之伴随的是网络计算量和参数量愈加庞大。轻量化神经网络力求通过更优的模块组合,在满足使用性能的条件下,搭建一个参数量更少和计算资源消耗更低的轻量级网络模型,进而从本质上解决深度神经网络对存储和计算资源消耗严重的问题,推动深度学习的普及和落地。现有的轻量化神经网络大多仅对卷积模块进行优化,将普通的卷积拆解为改变特征图大小的深度卷积和扩展特征图通道数量的1×1卷积组合,以降低神经网络的flops(浮点运算量),尽管当前已取得不错进展,但是大部分工作仅仅对卷积模块进行优化,基本的卷积操作每次都是针对卷积核四周矩形范围内的像素点进行计算,无论网络的深度和宽度如何变化,网络中的特征提取始终限制于局部范围,而不能建立全局图像的长距离连接关系,另一方面,神经网络的容量有限,通过增加数据样本带来的网络收益会逐渐降低。

2、为解决卷积神经感受视野有限,难以捕获全局信息的缺点,如botnet(bottlenecktransformers for visual recognition)网络将transformer和卷积神经网络进行结合,将transform中的自注意力机制融入了传统卷积神经网络的骨干网中,提出名为botbottleneck的新模块,利用resnet-50作为基础网络,将resnet-50中最后三个bottleneck中的3×3卷积替换为类似transformer中的多头自注意力模块(multi-head-self-attention)简称mhsa,其余模块保持不变。网络以传统图像作为输入,经过原始的骨干网提取特征,得到一个2048个通道的特征图,输入到bot bottleneck中,首先1×1的卷积进行通道缩减,之后送入多头自注意力层中。与传统的transformer中的多头自注意力层不同的是,botnet中对于位置编码部分,使用两个向量当做横纵两个维度的空间注意力,将两个向量相加之后,与查询矩阵相乘得到内容位置(content-position),再将content-position与经过查询矩阵和键值矩阵得到的内容编码相乘得到空间铭感的相似性特征,从而当多头自注意力模块关注更加合适的区域,将特征图再次送入1×1的卷积中扩散通道。

3、然而现有的将卷积神经网络和transformer进行结合的技术方案,要么是在开始时使用卷积,要么是将卷积嵌入到每个transformer模块,整个网络依旧是采用串联的设计范式。上述技术方案将两种网络结构进行串接方式使得模块之间的相互依赖性很强,必须充分考虑不同结构的衔接关系和插入位置,网络修改比较困难。此外,现有方案没有考虑到模型的计算复杂度和所带来的的性能提升之间的收益比,构建的网络模型flops高达几个g,部署成本高昂。


技术实现思路

1、本发明意在提供一种基于双分支并行神经网络的图像处理方法,能够解决卷积神经网络和transformer结合时,网络部署成本高昂的问题。

2、本发明提供的基础方案:基于双分支并行神经网络的图像处理方法,包括以下步骤:

3、s1:将输入图像送入第一基础卷积模块和特征嵌入模块,分别进行特征提取和空间向量映射,得到特征x0和空间向量z0;

4、s2:将x0和z0输入到双向桥接模块block中,所述双向桥接模块block包括并行的卷积神经网络模块flexible cnn、transformer网络模块以及第一融合模块和第二融合模块;

5、所述s2包括以下步骤:

6、s2-1:将x0和z0送入第一融合模块中,所述第一融合模块用于完成局部特征和全局特征的融合,输出zhid;

7、s2-2:将zhid输入至transformer网络模块,对图像特征中的低频全局特征进行学习和提取,输出zblock0;

8、s2-3:将x0和zblock0输入flexible cnn中,获取图像特征中的局部特征,输出xhid;

9、s2-4:将xhid和zblock0输入第二融合模块,所述第二融合模块用于将局部特征和全局特征再次融合,输出xblock0;

10、s3:将上一双向桥接模块block输出的xblock0和zblock0作为下一双向桥接模块block的输入,重复步骤s2若干次,最终输出xblock和zblock。

11、本发明的原理及优点在于:本发明的重点在于调整网络的结构为双分支并行结构,将卷积神经网络相对高效的计算操作与transformer模型的全局特征提取能力进行结合。网络由轻量化的卷积分支和模块化的transformer分支组成,每个分支仅需要关注自身的特征提取和模块搭建,降低两种不同网络之间的依赖性。同时,参考自注意力机制构建双向桥接模块,桥接模块分别接收来自卷积分支和transformer分支的特征,在模块内部进行特征融合并输出,以实现不同分支的信息交互,最终得到一个双分支并行的网络结构,从而解决网络部署成本高昂的问题。

12、将卷积神经网络和transformer模型神经网络搭建为并行的结果,并行的卷积神经网络分支和transformer分别进行输入特征的提取,使得两种神经网络相互解耦。同时,参考自注意力机制构建双向桥接模块,将两个分支提取到的特征进行双向融合交互,使得网络能够充分利用卷积神经网络在具备特征捕获与transformer网络在全局信息建模方面的优势。

13、现有技术中,将网络结构设计为串联的形状,在卷积神经网络的头部、中间或者尾部引入transformer模块,这种方式意味着每个模块构建时必须考虑前序和后续模块之间的关联性,使得网络的灵活度不足。本发明中重新审视了现有将卷积神经网络和transformer网络结合的方案的局限性,对网络结构重新设计,并行的方式使网络中的模块更易于修改。

14、进一步,还包括以下步骤:

15、s4:将xblock输入至第二基础卷积模块中,进行通道扩增,输出xtail;

16、s5:将xtail输入自适应池化模块中,xtail的输入大小记为input,期望的输出大小为output,自适应池化模块根据input和output计算池化操作的池化核大小及步长大小,对特征进行降维,输出xpool。

17、为保证池化后输出的一致性,引入自适应池化操作代替常规池化,在池化过程中可以自动调整池化核大小和步长大小,降低网络对输入图像尺寸的限制,以适配不同尺寸的输入图像,提高网络的灵活度。

18、进一步,所述s5包括以下步骤:

19、s501:判断input是否能够整除output,当input可以整除output时,执行s502,当input不能整除output时,执行步骤s503;

20、s502:通过以下公式计算池化核大小k以及步长大小s;

21、

22、s503:通过以下公式计算池化核大小ki以及步长大小si;

23、

24、i表示针对一个特征图中的第i次池化操作,从0开始计算,ceil表示向上取整,floor表示向下取整。

25、当input不能整除ouput时,每次池化操作的步长和池化核大小都在动态的变化,通过向上取整和向下取整计算池化核大小和步长。

26、进一步,还包括以下步骤:

27、s6:将xpool和zblock在通道维度拼接,输出xcat;

28、s7:将xcat输入两层全连接神经网络中,得到最终输出xout。

29、进一步,所述s3包括以下步骤:

30、s301:将上一次双向桥接模块block的输出再次输出双向桥接模块block前,对卷积神经网络模块中的参数进行调整,所述参数包括通道和步长。

31、通过调整参数,使得每个步骤最终输出的特征图通道数量逐渐扩大而特征图尺寸逐渐缩小。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1