CN117635925A - 图像语义分割方法和装置 - Google Patents
图像语义分割方法和装置 Download PDFInfo
- Publication number
- CN117635925A CN117635925A CN202210957936.8A CN202210957936A CN117635925A CN 117635925 A CN117635925 A CN 117635925A CN 202210957936 A CN202210957936 A CN 202210957936A CN 117635925 A CN117635925 A CN 117635925A
- Authority
- CN
- China
- Prior art keywords
- feature
- feature map
- image
- matrix
- module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000011218 segmentation Effects 0.000 title claims abstract description 103
- 238000000034 method Methods 0.000 title claims abstract description 82
- 238000012545 processing Methods 0.000 claims abstract description 43
- 238000000605 extraction Methods 0.000 claims abstract description 18
- 239000011159 matrix material Substances 0.000 claims description 154
- 230000015654 memory Effects 0.000 claims description 51
- 238000011176 pooling Methods 0.000 claims description 38
- 238000004590 computer program Methods 0.000 claims description 6
- 239000000758 substrate Substances 0.000 claims 1
- 238000004364 calculation method Methods 0.000 abstract description 11
- 230000000694 effects Effects 0.000 abstract description 10
- 238000013528 artificial neural network Methods 0.000 description 26
- 230000008569 process Effects 0.000 description 26
- 238000013527 convolutional neural network Methods 0.000 description 25
- 238000010606 normalization Methods 0.000 description 23
- 238000010586 diagram Methods 0.000 description 22
- 239000013598 vector Substances 0.000 description 17
- 238000012549 training Methods 0.000 description 16
- 230000006870 function Effects 0.000 description 13
- 238000013500 data storage Methods 0.000 description 8
- 238000013473 artificial intelligence Methods 0.000 description 7
- 230000002776 aggregation Effects 0.000 description 6
- 238000004220 aggregation Methods 0.000 description 6
- 230000004913 activation Effects 0.000 description 5
- 238000013135 deep learning Methods 0.000 description 5
- 239000000284 extract Substances 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000013480 data collection Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 210000000056 organ Anatomy 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 102100031786 Adiponectin Human genes 0.000 description 2
- 101000775469 Homo sapiens Adiponectin Proteins 0.000 description 2
- MHABMANUFPZXEB-UHFFFAOYSA-N O-demethyl-aloesaponarin I Natural products O=C1C2=CC=CC(O)=C2C(=O)C2=C1C=C(O)C(C(O)=O)=C2C MHABMANUFPZXEB-UHFFFAOYSA-N 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 239000000872 buffer Substances 0.000 description 2
- 230000000747 cardiac effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000003745 diagnosis Methods 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 210000002569 neuron Anatomy 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000002861 ventricular Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 238000013475 authorization Methods 0.000 description 1
- 238000005452 bending Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 210000004027 cell Anatomy 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000008034 disappearance Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 210000005240 left ventricle Anatomy 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002107 myocardial effect Effects 0.000 description 1
- 210000004165 myocardium Anatomy 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 210000005241 right ventricle Anatomy 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 210000001519 tissue Anatomy 0.000 description 1
Landscapes
- Image Analysis (AREA)
Abstract
本申请公开了一种图像语义分割方法和装置,该方法包括:利用特征金字塔网络FPN对第一图像进行特征提取,得到多个特征图;该多个特征图是分别由FPN中的不同网络层输出得到的;对多个特征图进行融合,得到第一特征图,并利用解码器Decoder对第一特征图进行处理,得到第一图像的语义分割结果。FPN包括第一网络层,第一网络层包括变换器模块,变换器模块包括第一自注意力模块和第一卷积模块;第一网络层输出的特征图是基于第一自注意力模块输出的第三特征图和第一卷积模块输出的第四特征图生成的。通过本申请,可兼顾全局和局部语义的提取,从而提升图像语义分割的精度和效果;同时还可大幅降低计算复杂度。
Description
技术领域
本申请涉及大数据中的人工智能(Artificial Intelligence,AI)技术领域,尤其涉及一种图像语义分割方法和装置。
背景技术
人工智能AI是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式作出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
图像语义分割是计算机视觉领域重要的基础子领域,其主要是对输入图像在像素级别进行分类。目前基于深度学习的图像语义分割方法主要可以分为:基于卷积神经网络的分割方法和基于变换器Transformer模型的分割方法。基于卷积神经网络的分割方法通过编码器提取多尺度特征,然后使用解码器对提取到的特征进行特征聚合。由于卷积运算的局部性,无法进行有效的全局上下文学习,缺乏全局感受野,容易产生分割不连续等问题。而基于Transformer模型的分割方法虽然能够有效地使用Transformer的自注意力机制进行全局上下文学习,但其计算复杂度较高,且无法完成局部特征的学习。
因此,如何实现更加高效的全局注意力学习,以使得整个框架更加高效、鲁棒是目前基于Transformer模型的分割算法亟需解决的问题。
发明内容
本申请实施例提供了一种图像语义分割方法和装置,可以兼顾全局和局部语义信息的提取,从而提升图像语义分割的精度和效果;此外,还通过引入池化操作,可以大幅降低计算复杂度,提升图像语义分割效率。
第一方面,本申请提供了一种图像语义分割方法,所述方法包括:利用特征金字塔网络FPN对第一图像进行特征提取,得到多个特征图;其中,所述多个特征图分别用于描述所述第一图像不同尺度的特征,所述多个特征图是分别由所述FPN中的不同网络层输出得到的;对所述多个特征图进行融合,得到第一特征图,并利用解码器Decoder对所述第一特征图进行处理,得到所述第一图像的语义分割结果;其中,所述FPN包括第一网络层,所述第一网络层为所述FPN包含的多个网络层中的任意一层,所述第一网络层包括变换器模块,所述变换器模块包括并联的第一自注意力模块和第一卷积模块;所述第一自注意力模块用于对输入所述变换器模块的第二特征图的全局语义进行提取,得到第三特征图;所述第一卷积模块用于对所述第二特征图的局部语义进行提取,得到第四特征图;所述第一网络层输出的特征图是基于所述第三特征图和所述第四特征图生成的。
从技术效果上看,本申请利用变换器模块中的自注意力模块来进行全局语义信息的提取,同时利用并行的卷积模块(即第一卷积模块)来进行局部语义信息的提取,实现在FPN的每个网络层中同时提取全局和局部语义信息,从而有效提升模型的学习能力,进而显著提升语义分割的准确度。
在一种可行的实施方式中,所述第三特征图是基于池化后的键值Key矩阵、池化后的价值Value矩阵和询问Query矩阵生成的;所述池化后的Key矩阵、所述池化后的Value矩阵是通过对Key矩阵和Value矩阵分别进行池化操作得到的;所述Key矩阵、所述Value矩阵和所述Query矩阵是通过对所述第二特征图进行特征提取得到的。
从技术效果上看,在自注意力模块中通过对Key矩阵和Value矩阵进行池化操作,可以有效降低池化后的Key矩阵和Value矩阵的维度和复杂度,从而可以有效降低后续利用池化后的Key矩阵和池化后的Value矩阵生成第三特征图过程中的计算量,进而降低FPN中每个网络层的计算复杂度,提升语义分割效率。
在一种可行的实施方式中,所述池化后的Key矩阵中的每个元素为所述Key矩阵中的每行元素或者每列元素的均值,所述池化后的Value矩阵中的每个元素为所述Value矩阵中的每行元素或者每列元素的均值。
从技术效果上看,对Key矩阵和Value矩阵采用平均值的方式进行池化,可以使得池化后的Key矩阵和池化后的Value矩阵最大程度地保留对应的语义信息,从而使得在进行池化的同时还可以最大程度地保留所提取的语义信息,也即在实现降低语义分割计算复杂度的同时,保证语义分割结果的准确度。
在一种可行的实施方式中,所述第一网络层还包括第二卷积模块,所述第二卷积模块用于对输入所述第一网络层的第五特征图进行特征提取,得到所述第二特征图。
从技术效果上看,在变换器模块进行全局语义和局部语义的提取之前,首先由网络层中的第二卷积模块进行初步特征提取,可以提升后续变换器模块的语义提取效果。
在一种可行的实施方式中,所述对所述多个特征图进行融合,得到第一特征图,包括:对所述多个特征图分别进行归一化,得到归一化后的所述多个特征图;对所述归一化后的所述多个特征图进行级联,得到所述第一特征图。
从技术效果上看,将FPN中每个网络层所提取到的全局-局部信息进行融合,得到包含不同尺度特征的第一特征图,从而为后续解码器进行精确地语义分割提供基础。
在一种可行的实施方式中,所述解码器包括第二自注意力模块和第三卷积模块;所述第二自注意力模块用于提取所述第一特征图中的全局语义信息,所述第三卷积模块用于提取所述第一特征图中的局部语义信息。
从技术效果上看,在解码器中,通过第二自注意力模块来进行全局语义聚合,第三卷积模块用于进行局部语义聚合,从而实现全局-局部特征的聚合,进而得到精确的语义分割结果。
在一种可行的实施方式中,所述语义分割结果用于表征所述第一图像上每个像素点属于不同物体类别的概率。
第二方面,本申请提供了一种图像语义分割装置,所述装置包括:编码单元,用于利用特征金字塔网络FPN对第一图像进行特征提取,得到多个特征图;其中,所述多个特征图分别用于描述所述第一图像不同尺度的特征,所述多个特征图是分别由所述FPN中的不同网络层输出得到的;解码单元,用于对所述多个特征图进行融合,得到第一特征图,并利用解码器Decoder对所述第一特征图进行处理,得到所述第一图像的语义分割结果;其中,所述FPN包括第一网络层,所述第一网络层为所述FPN包含的多个网络层中的任意一层,所述第一网络层包括变换器模块,所述变换器模块包括并联的第一自注意力模块和第一卷积模块;所述第一自注意力模块用于对输入所述变换器模块的第二特征图的全局语义进行提取,得到第三特征图;所述第一卷积模块用于对所述第二特征图的局部语义进行提取,得到第四特征图;所述第一网络层输出的特征图是基于所述第三特征图和所述第四特征图生成的。
在一种可行的实施方式中,所述第三特征图是基于池化后的键值Key矩阵、池化后的价值Value矩阵和询问Query矩阵生成的;所述池化后的Key矩阵、所述池化后的Value矩阵是通过对Key矩阵和Value矩阵分别进行池化操作得到的;所述Key矩阵、所述Value矩阵和所述Query矩阵是通过对所述第二特征图进行特征提取得到的。
在一种可行的实施方式中,所述池化后的Key矩阵中的每个元素为所述Key矩阵中的每行元素或者每列元素的均值,所述池化后的Value矩阵中的每个元素为所述Value矩阵中的每行元素或者每列元素的均值。
在一种可行的实施方式中,所述第一网络层还包括第二卷积模块,所述第二卷积模块用于对输入所述第一网络层的第五特征图进行特征提取,得到所述第二特征图。
在一种可行的实施方式中,在所述对所述多个特征图进行融合,得到第一特征图的方面,所述解码单元具体用于:对所述多个特征图分别进行归一化,得到归一化后的所述多个特征图;对所述归一化后的所述多个特征图进行级联,得到所述第一特征图。
在一种可行的实施方式中,所述解码单元包括第二自注意力模块和第三卷积模块;所述第二自注意力模块用于提取所述第一特征图中的全局语义,所述第三卷积模块用于提取所述第一特征图中的局部语义。
在一种可行的实施方式中,所述语义分割结果用于表征所述第一图像上每个像素点属于不同物体类别的概率。
第三方面,本申请实施例提供了一种电子设备,所述电子设备包括至少一个处理器,存储器和接口电路,所述存储器、所述接口电路和所述至少一个处理器通过线路互联,所述至少一个存储器中存储有指令;所述指令被所述处理器执行时,上述第一方面中任一所述的方法得以实现。
第四方面,本申请实施例提供了一种芯片系统,所述芯片系统包括至少一个处理器,存储器和接口电路,所述存储器、所述接口电路和所述至少一个处理器通过线路互联,所述至少一个存储器中存储有指令;所述指令被所述处理器执行时,上述第一方面中任一所述的方法得以实现。
第五方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,该计算机程序被执行时,上述第一方面中任意一项所述的方法得以实现。
第六方面,本申请实施例提供了一种计算机程序,该计算机程序包括指令,当该计算机程序被执行时,上述第一方面中任意一项所述的方法得以实现。
附图说明
以下对本申请实施例用到的附图进行介绍。
图1A-图1C为本申请实施例提供的几种用于图像语义分割的系统架构示意图;
图2为本申请实施例提供的另一种图像语义分割系统的架构示意图;
图3为本申请实施例提供的一种卷积神经网络的结构示意图;
图4为本申请实施例提供的另一种卷积神经网络的结构示意图;
图5为本申请实施例提供的一种芯片硬件结构示意图;
图6为本申请实施例提供的一种图像语义分割方法的流程示意图;
图7为本申请实施例提供的一种语义分割模型的结构示意图;
图8为本申请实施例提供的一种语义分割模型中Transformer模块的结构示意图;
图9为本申请实施例提供的一种卷积操作的过程示意图;
图10为本申请实施例提供的一种图像语义分割装置的结构示意图;
图11为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面结合本申请实施例中的附图对本申请实施例进行描述。其中,在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;文本中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况,另外,在本申请实施例的描述中,“多个”是指两个或多于两个。
本申请的说明书和权利要求书及所述附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
首先对本申请中的相关术语进行解释
(1)全局语义:也可称为全局特征Global Feature。其是指图像的整体属性,常见的全局语义包括颜色特征、纹理特征、线特征和形状特征,比如强度直方图等。由于是像素级的低层可视特征,因此,全局语义具有良好的不变性、计算简单、表示直观等特点,但特征维数高、计算量大则是其弱点。
(2)局部语义:也可称为局部特征Local Feature。其是指从图像局部区域中抽取的特征,包括边缘、角点、线、曲线和特别属性的区域等。与全局语义相比,局部语义具有在图像中蕴含数量丰富,特征间相关度小,遮挡情况下不会因为部分特征的消失而影响其他特征的检测和匹配等特点。
下面举例介绍本申请中图像语义分割方法所适用的几种典型的应用场景,应当理解,其不构成对本申请中方法所适用场景范围的限定。
(1)自动驾驶。在车辆进行自动驾驶过程中,车辆上摄像头会对道路环境进行拍摄,此时,可以利用本申请中的图像语义分割方法对采集的道路或环境图像数据进行语义分割,从而识别出相应道路环境中的交通标志、车辆、行人或其它障碍物等,从而为车辆行驶提成提供决策。
(2)医疗辅助。由于医生等专业人员的职业特性与成长周期,专家级别的医生数量较少。在医疗领域,可以利用本申请中的图像语义分割方法来识别医学影像中的器官和组织,为医生的诊断提供相应的辅助和参考。
(3)数据标注。当前人工智能(Artificial Intelligence,AI)领域训练数据的标注是一件非常耗时和高成本的任务。在AI中,可以利用本申请中的图像语义分割方法来识别训练集中各图像中的物体类别,从而对训练集中的图像数据进行标注,从而大幅提升数据标注效率。
请参见图1A-图1C,图1A-图1C为本申请实施例提供的几种用于图像语义分割的系统架构示意图,其可以用于执行本申请中的图像语义分割方法。
其中,图1A所示的图像语义分割系统包括用户设备110以及数据处理设备120(服务器)。用户设备110包括手机、个人电脑、车载终端或者信息处理中心等智能终端。用户设备110为图像数据处理的发起端,作为图像语义分割请求的发起方,通常用户通过用户设备110发起请求。
数据处理设备120可以是云服务器、网络服务器、应用服务器以及管理服务器等具有数据处理功能的设备或服务器。数据处理设备120通过交互接口接收来自用户设备110的图像数据处理请求,再通过存储数据的存储器以及数据处理的处理器环节进行数据训练、机器学习、深度学习、搜索、推理、决策等方式的图像处理,来执行本申请中的图像语义分割方法,最后将图像语义分割结果通过网络传递到用户设备110上,以供用户使用。所述存储器可以是一个统称,包括本地存储以及存储历史数据的数据库,所述数据库可以再数据处理设备上,也可以在其它网络服务器上。
图1B所示的图像语义分割系统中的用户设备110直接作为数据处理设备,直接接收来自用户的图像处理请求,然后直接由用户设备110本身的硬件进行处理,具体过程与图1A相似,可参考上面的描述,在此不再赘述。
图1C所示的图像语义分割系统包括至少一个本地设备(如本地设备301和本地设备302)、执行设备210和数据存储系统250。其中,本地设备相当于图1A和图1B中的用户设备110,执行设备210相当于数据处理设备120,数据存储系统250可以集成在执行设备210上,也可以设置在云上或其它网络服务器上。
请参见图2,图2为本申请实施例提供的另一种图像语义分割系统的架构示意图。如图2所示,数据采集设备260用于采集图像数据和/或视频数据并存入数据库230,训练设备220基于数据库230中维护的图像数据和/或视频数据生成语义分割模型201(下文图7实施例中模型)。用户设备240向执行设备210发送用户请求(即图像处理请求),执行设备210通过语义分割模型201对输入的图像数据和/或视频数据进行处理,生成对应的语义分割结果。执行设备210还可以基于语义分割结果生成特定应用场景的决策(例如,自动驾驶路径决策)。最后,执行设备210将生成的语义分割结果/决策通过输入/输出(Input/Output,I/O)接口212发送到用户设备240,其中,用户请求中可以包括需要进行图像语义分割的视频数据和/或图像数据。
图2也是图像语义分割结果生成过程中的功能模块图,在其对应图1A-图1C中的图像语义分割系统(即实际应用场景图)时,用户设备240可以是图1A-图1C中的用户设备110或本地设备,执行设备210以及数据存储系统250在用户设备110数据处理能力比较强大时,可以集成在用户设备110或本地设备内。在一些实施例中,也可以将执行设备210以及数据存储系统250集成在图1A中的数据处理设备120上。数据库230、训练设备220以及数据采集设备260可以对应集成在图1A中的数据处理设备120上,或设置在云上或网络上的其它服务器上,本申请对此不限定。
其中,数据采集设备260可以是终端设备,也可以是服务器或者云的输入输出接口,用于获取查询语句以及返回答复语句的交互层(interface)。
下面将简要介绍本申请中语义分割模型的训练和推理原理。
语义分割模型的架构可以是深度神经网络。深度神经网络中的每一层的工作可以用数学表达式来描述:从物理层面深度神经网络中的每一层的工作可以理解为通过五种输入空间(输入向量的集合)的操作,完成输入空间到输出空间的变换(即矩阵的行空间到列空间),这五种操作包括:1、升维/降维;2、放大/缩小;3、旋转;4、平移;5、“弯曲”。其中1、2、3的操作由/>完成,4的操作由+b完成,5的操作则由a()来实现。这里之所以用“空间”二字来表述是因为被分类的对象并不是单个事物,而是一类事物,空间是指这类事物所有个体的集合。其中,W是权重向量,该向量中的每一个值表示该层神经网络中的一个神经元的权重值。该向量W决定着上文所述的输入空间到输出空间的空间变换,即每一层的权重W控制着如何变换空间。训练深度神经网络的目的,也就是最终得到训练好的神经网络的所有层的权重矩阵(由很多层的向量W形成的权重矩阵)。因此,神经网络的训练过程本质上就是学习控制空间变换的方式,更具体的就是学习权重矩阵。
因为希望深度神经网络的输出尽可能的接近真正想要预测的值,所以可以通过比较当前网络的预测值和真正想要的目标值,再根据两者之间的差异情况来更新每一层神经网络的权重向量(当然,在第一次更新之前通常会有初始化的过程,即为深度神经网络中的各层预先配置参数),比如,如果网络的预测值高了,就调整权重向量让它预测低一些,不断的调整,直到神经网络能够预测出真正想要的目标值。因此,就需要预先定义“如何比较预测值和目标值之间的差异”,这便是损失函数(loss function)或目标函数(objectivefunction),它们是用于衡量预测值和目标值的差异的重要方程。其中,以损失函数举例,损失函数的输出值(loss)越高表示差异越大,那么深度神经网络的训练就变成了尽可能缩小这个loss的过程。
在图2中,训练设备220得到的语义分割模型201可以应用不同的系统或设备中。执行设备210配置有I/O接口212,与外部设备进行数据交互,“用户”可以通过用户设备240向I/O接口212输入数据,即用户请求,包括需要进行图像语义分割的视频数据和/或图像数据。
执行设备210可以调用数据存储系统250中的数据、代码等,也可以将数据、指令等存入数据存储系统250中。
计算模块211使用语义分割模型201对待处理图像/视频数据进行处理,从而生成对应的语义分割结果。此外,还可以基于语义分割结果生成特定应用场景的决策(例如,自动驾驶路径决策)。
最后,I/O接口212将生成的语义分割结果/决策返回给用户设备240,并在用户设备240上呈现给用户。
在图2中所示情况下,用户可以手动指定输入执行设备210中的数据,例如,在I/O接口212提供的界面中操作。另一种情况下,用户设备240可以自动地向I/O接口212输入数据并获得结果,如果用户设备240自动输入数据需要获得用户的授权,用户可以在用户设备240中设置相应权限。用户可以在用户设备240查看执行设备210输出的结果。用户设备240也可以作为数据采集端将采集到视频和图像数据存入数据库230中供训练过程使用。
值得注意的,图2仅是本发明实施例提供的一种系统架构的示例,图2中所示设备、器件、模块等之间的位置关系不构成任何限制,例如,在图2中,数据存储系统250相对执行设备210是外部存储器,在其它情况下,也可以将数据存储系统250置于执行设备210中。
请参见图3,图3为本申请实施例提供的一种卷积神经网络的结构示意图,用于表征本申请中语义分割模型(下文图7实施例中模型)中卷积模块的内部结构。
卷积神经网络(Convolutional Neural Network,CNN)是一种带有卷积结构的深度神经网络,是一种深度学习(deep learning)架构。深度学习架构是指通过机器学习的算法,在不同的抽象层级上进行多个层次的学习。作为一种深度学习架构,CNN是一种前馈(feed-forward)人工神经网络,该前馈人工神经网络中的各个神经元对输入其中的图像中的重叠区域作出响应。
如图3所示,卷积神经网络(CNN)100可以包括输入层110,卷积层/池化层120,其中池化层为可选的,以及神经网络层130。
卷积层:
如图3所示,卷积层/池化层120可以包括如示例121-126层。在一种实现中,121层为卷积层,122层为池化层,123层为卷积层,124层为池化层,125为卷积层,126为池化层;在另一种实现方式中,121、122为卷积层,123为池化层,124、125为卷积层,126为池化层。即卷积层的输出可以作为随后的池化层的输入,也可以作为另一个卷积层的输入以继续进行卷积操作。
以卷积层121为例,卷积层121可以包括很多个卷积算子,卷积算子也称为核,其在本申请中的作用相当于一个从输入的语音或语义信息中提取特定信息的过滤器,卷积算子本质上可以是一个权重矩阵,这个权重矩阵通常被预先定义。
这些权重矩阵中的权重值在实际应用中需要经过大量的训练得到,通过训练得到的权重值形成的各个权重矩阵可以从输入视频图像中提取信息,从而帮助卷积神经网络100进行正确的预测。
当卷积神经网络100有多个卷积层的时候,初始的卷积层(例如121)往往提取较多的一般特征,该一般特征也可以称之为低级别的特征;随着卷积神经网络100深度的加深,越往后的卷积层(例如125)提取到的特征越来越复杂,比如高级别的语义之类的特征,语义越高的特征越适用于待解决的问题。
池化层:
由于常常需要减少训练参数的数量,因此卷积层之后常常需要周期性的引入池化层,即如图3中120所示例的121-126各层,可以是一层卷积层后面跟一层池化层,也可以是多层卷积层后面接一层或多层池化层。在自然语言数据处理过程中,池化层的唯一目的就是减少数据的空间大小。
神经网络层130:
在经过卷积层/池化层120的处理后,卷积神经网络100还不足以输出所需要的输出信息。因为如前所述,卷积层/池化层120只会提取特征,并减少输入数据带来的参数。然而为了生成最终的输出信息(所需要的类信息或别的相关信息),卷积神经网络100需要利用神经网络层130来生成一个或者一组所需要的类的数量的输出。因此,在神经网络层130中可以包括多层隐含层(如图3所示的131、132至13n)以及输出层140,该多层隐含层中所包含的参数可以根据具体的任务类型的相关训练数据进行预先训练得到,例如该任务类型可以包括语音或语义识别、分类或生成等等。
在神经网络层130中的多层隐含层之后,也就是整个卷积神经网络100的最后层为输出层140,该输出层140具有类似分类交叉熵的损失函数,具体用于计算预测误差,一旦整个卷积神经网络100的前向传播(如图3由110至140的传播为前向传播)完成,反向传播(如图3由140至110的传播为反向传播)就会开始更新前面提到的各层的权重值以及偏差,以减少卷积神经网络100的损失及卷积神经网络100通过输出层输出的结果和理想结果之间的误差。
需要说明的是,如图3所示的卷积神经网络100仅作为一种卷积神经网络的示例,在具体的应用中,卷积神经网络还可以以其他网络模型的形式存在,例如,如图4所示的多个卷积层/池化层并行,将分别提取的特征均输入给神经网络层130进行处理。
在本方案中,具有图3和图4所示结构的语义分割模型可以对输入图像进行特征提取和特征聚合处理,识别出输入图像中每个像素点的物体类别,从而得到输入图像中所包含的不同类别的物体,以及每个物体的轮廓。
举例来说,上述具有图3和图4结构的语义分割模型可以部署在自动驾驶场景下的车载终端中。在车载终端接收到用户的路径规划/导航或其它请求后,可通过对车载摄像头/传感器采集到的环境/道路图像数据、从服务器上获取到的相关环境/道路数据,进行图像语义分割处理,并基于语义分割结果得出相应决策,供用户参考。或者在车载终端接收到用户的路径规划/导航或其它请求后,车载终端可以将车载摄像头/传感器采集到的环境/道路图像数据发送到服务器,请求服务器进行图像语义分割,并基于语义分割结果得出相应决策,最后将决策发送给车载终端。
请参见图5,图5为本申请实施例提供的一种芯片硬件结构示意图。如图5所示,神经网络处理器(Neural-Networks Processing Unit,NPU)50作为协处理器挂载到主CPU(Host CPU)上,由Host CPU分配任务。NPU的核心部分为运算电路503,控制器504控制运算电路503提取存储器(权重存储器或输入存储器)中的数据并进行运算。
在一些实现中,运算电路503内部包括多个处理单元(Process Engine,PE)。在一些实现中,运算电路503是二维脉动阵列。运算电路503还可以是一维脉动阵列或者能够执行例如乘法和加法这样的数学运算的其它电子线路。在一些实现中,运算电路503是通用的矩阵处理器。
举例来说,假设有输入矩阵A,权重矩阵B,输出矩阵C。运算电路从权重存储器502中取矩阵B相应的数据,并缓存在运算电路中每一个PE上。运算电路从输入存储器501中取矩阵A数据与矩阵B进行矩阵运算,得到的矩阵的部分结果或最终结果,保存在累加器508accumulator中。
向量计算单元507可以对运算电路的输出做进一步处理,如向量乘,向量加,指数运算,对数运算,大小比较等等。例如,向量计算单元507可以用于神经网络中非卷积/非FC层的网络计算,如池化(Pooling),批归一化(Batch Normalization),局部响应归一化(Local Response Normalization)等。
在一些实现种,向量计算单元507能将经处理的输出的向量存储到统一存储器506。例如,向量计算单元507可以将非线性函数应用到运算电路503的输出,例如累加值的向量,用以生成激活值。在一些实现中,向量计算单元507生成归一化的值、合并值,或二者均有。在一些实现中,处理过的输出的向量能够用作到运算电路503的激活输入,例如用于在神经网络中的后续层中的使用。
统一存储器506用于存放输入数据以及输出数据。
存储单元访问控制器505(Direct Memory Access Controller,DMAC)将外部存储器中的输入数据搬运到输入存储器501和/或统一存储器506、将外部存储器中的权重数据存入权重存储器502,以及将统一存储器506中的数据存入外部存储器。
总线接口单元(Bus Interface Unit,BIU)510,用于通过总线实现主CPU、DMAC和取指存储器509之间进行交互。
与控制器504连接的取指存储器(Instruction Fetch Buffer)509,用于存储控制器504使用的指令。
控制器504,用于调用取指存储器509中缓存的指令,实现控制该运算加速器的工作过程。
一般地,统一存储器506,输入存储器501,权重存储器502以及取指存储器509均为片上(On-Chip)存储器,外部存储器为该NPU外部的存储器,该外部存储器可以为双倍数据率同步动态随机存储器(Double Data Rate Synchronous Dynamic Random AccessMemory,简称DDR SDRAM)、高带宽存储器(High Bandwidth Memory,HBM)或其他可读可写的存储器。
请参见图6,图6为本申请实施例提供的一种图像语义分割方法的流程示意图,该方法包括步骤S610和S620。此方法可以位于前述实施例中的用户设备110、或数据处理设备120上。
步骤S610:利用特征金字塔网络FPN对第一图像进行特征提取,得到多个特征图;其中,所述多个特征图分别用于描述所述第一图像不同尺度的特征,所述多个特征图是分别由所述FPN中的不同网络层输出得到的。
具体地,特征金字塔(Feature Pyramid Networks,FPN)可以包括多个网络层,每个网络层分别用于提取输入图像(即第一图像)在不同层次的特征,并输出对应的特征图。在如图7所示的特征金字塔中,从底部往顶部,每个网络层提取第一图像在不同尺度的特征。
进一步地,上述每个网络层提取第一图像在不同尺度的特征,具体包括:每个网络层首先通过网络层中的第二卷积模块对输入该层的特征图进行降采样,以对输入的特征图尺寸进行缩小,得到缩小后的特征图;然后利用变换器模块对缩小后的特征图进行特征提取,即提取缩小后的特征图上的全局语义和局部语义。最后由变换器模块以特征图的形式输出由该网络层所提取的特征,即上述多个特征图中的一个。
下面结合图7所示的语义分割模型,并以其上FPN中的第一网络层为对象来描述FPN在图像语义分割中的特征提取过程:
所述FPN包括第一网络层,所述第一网络层为所述FPN包含的多个网络层中的任意一层,所述第一网络层包括第二卷积模块和变换器模块。
即第一网络层可以为图7所示FPN中网络层1-网络层N中的任意一个网络层,每个网络层中包含第二卷积模块和变换器模块,且第二卷积模块与变换器模块串联。
其中,上述第二卷积模块可以是部分重叠图像块融合(Overlap Patch Merging)网络,用于对输入第一网络层的第五特征图进行降采样,得到第二特征图。
应当理解,FPN中每个网络层中第二卷积模块所包含的卷积核的大小和数量可以是不同的,即可以基于具体的场景进行设定。
其中,所述变换器模块包括并联的第一自注意力模块和第一卷积模块;所述第一自注意力模块用于对输入所述变换器模块的第二特征图的全局语义进行提取,得到第三特征图;所述第一卷积模块用于对所述第二特征图的局部语义进行提取,得到第四特征图;所述第一网络层输出的特征图是基于所述第三特征图和所述第四特征图生成的。
可选地,所述第一网络层还包括第二卷积模块,所述第二卷积模块用于对输入所述第一网络层的第五特征图进行特征提取,得到所述第二特征图。
具体地,下面结合图8来描述变换器Transformer模块对第二卷积模块输出第二特征图的处理过程:如图8所示,在第二特征图输入变换器模块后,首先由归一化层进行归一化处理。然后通过第一自注意力模块进行全局语义提取,得到第三特征图,由第一卷积模块进行局部语义提取,得到第四特征图。将第三特征图和第四特征图进行特征融合,得到第六特征图,并对第六特征图进行归一化处理和卷积处理(由第四卷积模块进行),得到第一网络层输出的特征图(即上述多个特征图中的一个)。
其中,上述图8中的归一化层可以是执行层归一化(Layer Normalization,LN)处理或其它类型的归一化处理,本申请对此不限定。
其中,上述第一卷积模块执行的可以是深度可分离卷积或常规卷积等卷积操作,本申请对此不限定。
其中,上述第四卷积模块可以是卷积前馈神经网络(Convolution-Feed ForwardNetworks,Conv-FFN)或其它可行的神经网络,本申请对此不限定。
其中,上述第一自注意力模块进行全局语义提取的过程如下:
在一种可行的实施方式中,所述第三特征图是基于池化后的键值Key矩阵、池化后的价值Value矩阵和询问Query矩阵生成的;所述池化后的Key矩阵、所述池化后的Value矩阵是通过对Key矩阵和Value矩阵分别进行池化操作得到的;所述Key矩阵、所述Value矩阵和所述Query矩阵是通过对所述第二特征图进行特征提取得到的。
具体地,第一自注意力模块首先对第二特征图进行特征提取,得到Key矩阵、Value矩阵和Query矩阵,然后对Key矩阵和Value矩阵分别进行池化操作,得到池化后的Value矩阵和池化后的Key矩阵。最后将池化后的Key矩阵、池化后的Value矩阵和Query矩阵相乘,并利用激活函数(例如Softmax函数等)对矩阵相乘得到的结果进行处理,得到第三特征图。
可选地,上述对Key矩阵和Value矩阵进行池化的方式可以是最大池化,平均池化或全局最大池化等,本申请对此不限定。
例如,可以采用基于坐标的平均池化方式来进行池化处理,具体如下:
在一种可行的实施方式中,所述池化后的Key矩阵中的每个元素为所述Key矩阵中的每行元素或者每列元素的均值,所述池化后的Value矩阵中的每个元素为所述Value矩阵中的每行元素或者每列元素的均值。
具体地,在一个通道中,池化后的Key矩阵中的每个元素是通过对Key矩阵中一行或一列元素计算平均值得到的。
例如,Key矩阵为3*4*4的矩阵,通道数为3,矩阵长和宽分别为4。此时,对Key矩阵中一个通道进行池化时,得到池化后的矩阵中元素个数为8,即这8个元素是通过对4*4的矩阵中每行和每列元素分别计算均值得到的。对三个通道分别池化,即得到池化后的Key矩阵。
再例如,在图8中,输入第一自注意力模块的第二特征图大小为C*H*W,即通道数为C,长和宽分别为H和W。首先对第二特征图进行特征提取后,得到Key矩阵、Value矩阵和Query矩阵的大小分别为C*H*W,即大小和通道数与第二特征图相同。然后对Key矩阵和Value矩阵分别进行平均池化处理,得到池化后的Key矩阵和池化后的Value矩阵为C*(H+W),其表示池化后的Key矩阵和池化后的Value矩阵的通道数仍为C,每个通道上矩阵包含的元素的数量为H+W个。
在一种可行的实施方式中,FPN可以包含四个网络层。例如,从底部到顶部依次为:网络层1、网络层2、网络层3和网络层4。输入的第一图像的尺寸为C*H*W,即通道数为C长和宽分别为H和W。经过网络层1输出的特征图的尺寸为C1*H/4*W/4,即网络层1中的第二卷积模块对第一图像进行降采样后,特征图尺寸缩小为原始图像的1/4,C1为通道数,也等于网络层1中第二卷积模块所包含卷积核的数量。经过网络层2输出的特征图的尺寸为C2*H/8*W/8,C2为通道数。经过网络层3输出的特征图的尺寸为C3*H/16*W/16,C3为通道数。经过网络层4输出的特征图的尺寸为C4*H/32*W/32,C4为通道数。
步骤S620:对所述多个特征图进行融合,得到第一特征图,并利用解码器Decoder对所述第一特征图进行处理,得到所述第一图像的语义分割结果。
具体地,首先对多个特征图进行融合,得到包含不同层次语义信息的第一特征图,然后利用解码器Decoder对第一特征图进行全局语义和局部语义的特征聚合和提取,并通过分割头基于提取的语义特征进行预测,得到第一图像的语义分割结果。
其中,上述对所述多个特征图进行融合,得到第一特征图,包括:对所述多个特征图分别进行归一化,得到归一化后的所述多个特征图;对所述归一化后的所述多个特征图进行级联,得到所述第一特征图。
具体地,上述对多个特征图分别进行归一化,包括:对上述多个特征图中的每个特征图分别进行通道维度归一化和分辨率归一化,或者进行通道维度归一化。可选地,具体处理方式可以是:对FPN中底部的一个网络层输出的特征图进行通道维度归一化;对于FPN中其它网络层输出的特征图而言,先后进行通道维度归一化和分辨率归一化(即特征图的长和宽归一化),得到分辨率相同的归一化后的特征图,且归一化后的特征图的分辨率(即长和宽)等于FPN中底部网络层所输出特征图的分辨率。
其中,上述分辨率归一化可以是通过上采样操作完成的。其中,上采样的具体操作方式可以是插值或反卷积等,本申请对此不限定。
可选地,所述解码器包括第二自注意力模块和第三卷积模块;所述第二自注意力模块用于提取所述第一特征图中的全局语义,所述第三卷积模块用于提取所述第一特征图中的局部语义。
可选地,第二自注意力模块也可以执行与上述第一自注意力模块的相同的池化操作。
具体地,如图7所示,解码器包括两个归一化层、第二自注意力模块和第三卷积模块。其中,第二自注意力模块可以是多头自注意力网络。第三卷积模块可以包括至少一个卷积网络。最后,将第三卷积模块提取的特征输入分割头(图7未示出)中进行预测,得到第一图像的语义分割结果。
其中,上述语义分割结果用于表征所述第一图像上每个像素点属于不同物体类别的概率。
其中,上述解码器中的归一化层可以是执行层归一化LN处理的归一化层。
请参见图9,图9为本申请实施例提供的一种卷积操作的过程示意图,用于描述本申请实施例中相应的常规卷积操作(非深度可分离卷积)的过程。
图9描述了利用两个3维卷积核对3通道的特征图(N*N*3)进行卷积处理的过程。卷积核1对特征图进行卷积处理后,得到第一矩阵;卷积核2对特征图进行卷积处理后,得到第二矩阵。对第一矩阵加上偏差系数b1,并进行激活处理,得到第三矩阵;对第二矩阵加上偏差系数b2,并进行激活处理,得到第四矩阵。将第三矩阵和第四矩阵进行级联,即得到了卷积处理结果,即一个两通道的特征图。
请参见表1,表1展示了不同的图像语义分割方法(对应不同语义分割模型)在自动心脏诊断挑战(Automated Cardiac Diagnosis Challenge,ACDC)数据集上的分割性能。可以看出,相比于单纯通过卷积神经网络CNNs和变换器Transformer来进行图像语义分割的方法而言,本方案中,利用三种不同体量(或称为模型大小)的语义分割模型(TransAED-Tiny、TransAED-small、TransAED-Medium)来分别对不同器官的医疗影像数据进行语义分割。从表1中可以看出,利用体量分别为Tiny、Small和Medium三种体量的模型分别进行图像语义分割时,得到的骰子相似系数(Dice Similarity Coefficient,DSC)分别为90.66%、91.43%和91.35%,效果明显优于利用CNNs和Transformer模型进行语义分割时的效果。
其中,所使用的图像数据分别为左心室(Left Ventricle,LV),右心室(RightVentricle,RV)和心肌(Myocardium,Myo)图像。利用TransAED-Tiny模型进行语义分割时的DSC-90.66是通过其分别对左心室、右心室和心肌三种器官图像语义分割,所得到的DSC取均值得到的。
表1多种算法在ACDC数据集上的分割性能
请参见图10,图10为本申请实施例提供的一种图像语义分割装置的结构示意图。该装置包括编码单元1010和解码单元1020。其中,
编码单元1010,用于利用特征金字塔网络FPN对第一图像进行特征提取,得到多个特征图;其中,所述多个特征图分别用于描述所述第一图像不同尺度的特征,所述多个特征图是分别由所述FPN中的不同网络层输出得到的;解码单元1020,用于对所述多个特征图进行融合,得到第一特征图,并利用解码器Decoder对所述第一特征图进行处理,得到所述第一图像的语义分割结果;其中,所述FPN包括第一网络层,所述第一网络层为所述FPN包含的多个网络层中的任意一层,所述第一网络层包括变换器模块,所述变换器模块包括并联的第一自注意力模块和第一卷积模块;所述第一自注意力模块用于对输入所述变换器模块的第二特征图的全局语义进行提取,得到第三特征图;所述第一卷积模块用于对所述第二特征图的局部语义进行提取,得到第四特征图;所述第一网络层输出的特征图是基于所述第三特征图和所述第四特征图生成的。
在一种可行的实施方式中,所述第三特征图是基于池化后的键值Key矩阵、池化后的价值Value矩阵和询问Query矩阵生成的;所述池化后的Key矩阵、所述池化后的Value矩阵是通过对Key矩阵和Value矩阵分别进行池化操作得到的;所述Key矩阵、所述Value矩阵和所述Query矩阵是通过对所述第二特征图进行特征提取得到的。
在一种可行的实施方式中,所述池化后的Key矩阵中的每个元素为所述Key矩阵中的每行元素或者每列元素的均值,所述池化后的Value矩阵中的每个元素为所述Value矩阵中的每行元素或者每列元素的均值。
在一种可行的实施方式中,所述第一网络层还包括第二卷积模块,所述第二卷积模块用于对输入所述第一网络层的第五特征图进行特征提取,得到所述第二特征图。
在一种可行的实施方式中,在所述对所述多个特征图进行融合,得到第一特征图的方面,所述解码单元具体用于:对所述多个特征图分别进行归一化,得到归一化后的所述多个特征图;对所述归一化后的所述多个特征图进行级联,得到所述第一特征图。
在一种可行的实施方式中,所述解码单元包括第二自注意力模块和第三卷积模块;所述第二自注意力模块用于提取所述第一特征图中的全局语义,所述第三卷积模块用于提取所述第一特征图中的局部语义。
在一种可行的实施方式中,所述语义分割结果用于表征所述第一图像上每个像素点属于不同物体类别的概率。
具体地,上述图像语义分割装置运行的具体过程可以参见前述方法实施例中的对应描述,此处不再赘述。
请参见图11,图11为本申请实施例提供的一种电子设备的结构示意图,其可以是图1A-图1C实施例中的用户设备或者数据处理设备。如图11所示,该设备包括处理器1101、存储器1102、接口电路1103和总线1104。
处理器1101,用于通过接口电路1103获取第一图像。处理器1101还用于通过特征金字塔网络FPN对第一图像进行特征提取,得到多个特征图;其中,所述多个特征图分别用于描述所述第一图像不同尺度的特征,所述多个特征图是分别由所述FPN中的不同网络层输出得到的。处理器1101还用于对所述多个特征图进行融合,得到第一特征图,并通过解码器Decoder对所述第一特征图进行处理,得到所述第一图像的语义分割结果;其中,所述FPN包括第一网络层,所述第一网络层为所述FPN包含的多个网络层中的任意一层,所述第一网络层包括变换器模块,所述变换器模块包括并联的第一自注意力模块和第一卷积模块;所述第一自注意力模块用于对输入所述变换器模块的第二特征图的全局语义进行提取,得到第三特征图;所述第一卷积模块用于对所述第二特征图的局部语义进行提取,得到第四特征图;所述第一网络层输出的特征图是基于所述第三特征图和所述第四特征图生成的。
存储器1102用于存储第一图像的语义分割结果。
应当理解,本申请实施例中电子设备上处理器和存储器的具体运行过程可以参见前述方法实施例中的对应过程,此处不再赘述。
本申请实施例提供了一种芯片系统,所述芯片系统包括至少一个处理器,存储器和接口电路,所述存储器、所述接口电路和所述至少一个处理器通过线路互联,所述至少一个存储器中存储有指令;所述指令被所述处理器执行时,上述方法实施例中记载的任意一种的部分或全部步骤得以实现。
本申请实施例提供了一种计算机存储介质,所述计算机存储介质存储有计算机程序,该计算机程序被执行时,使得上述方法实施例中记载的任意一种的部分或全部步骤得以实现。
本申请实施例提供了一种计算机程序,该计算机程序包括指令,当该计算机程序被处理器执行时,使得上述方法实施例中记载的任意一种的部分或全部步骤得以实现。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可能可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (17)
1.一种图像语义分割方法,其特征在于,所述方法包括:
利用特征金字塔网络FPN对第一图像进行特征提取,得到多个特征图;其中,所述多个特征图分别用于描述所述第一图像不同尺度的特征,所述多个特征图是分别由所述FPN中的不同网络层输出得到的;
对所述多个特征图进行融合,得到第一特征图,并利用解码器Decoder对所述第一特征图进行处理,得到所述第一图像的语义分割结果;
其中,所述FPN包括第一网络层,所述第一网络层为所述FPN包含的多个网络层中的任意一层,所述第一网络层包括变换器模块,所述变换器模块包括并联的第一自注意力模块和第一卷积模块;所述第一自注意力模块用于对输入所述变换器模块的第二特征图的全局语义进行提取,得到第三特征图;所述第一卷积模块用于对所述第二特征图的局部语义进行提取,得到第四特征图;所述第一网络层输出的特征图是基于所述第三特征图和所述第四特征图生成的。
2.根据权利要求1所述的方法,其特征在于,
所述第三特征图是基于池化后的键值Key矩阵、池化后的价值Value矩阵和询问Query矩阵生成的;所述池化后的Key矩阵、所述池化后的Value矩阵是通过对Key矩阵和Value矩阵分别进行池化操作得到的;所述Key矩阵、所述Value矩阵和所述Query矩阵是通过对所述第二特征图进行特征提取得到的。
3.根据权利要求1或2所述的方法,其特征在于,
所述池化后的Key矩阵中的每个元素为所述Key矩阵中的每行元素或者每列元素的均值,所述池化后的Value矩阵中的每个元素为所述Value矩阵中的每行元素或者每列元素的均值。
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述第一网络层还包括第二卷积模块,
所述第二卷积模块用于对输入所述第一网络层的第五特征图进行特征提取,得到所述第二特征图。
5.根据权利要求1-4中任一项所述的方法,其特征在于,所述对所述多个特征图进行融合,得到第一特征图,包括:
对所述多个特征图分别进行归一化,得到归一化后的所述多个特征图;
对所述归一化后的所述多个特征图进行级联,得到所述第一特征图。
6.根据权利要求1-5中任一项所述的方法,其特征在于,所述解码器包括第二自注意力模块和第三卷积模块;
所述第二自注意力模块用于提取所述第一特征图中的全局语义,所述第三卷积模块用于提取所述第一特征图中的局部语义。
7.根据权利要求1-6中任一项所述的方法,其特征在于,
所述语义分割结果用于表征所述第一图像上每个像素点属于不同物体类别的概率。
8.一种图像语义分割装置,其特征在于,所述装置包括:
编码单元,用于利用特征金字塔网络FPN对第一图像进行特征提取,得到多个特征图;其中,所述多个特征图分别用于描述所述第一图像不同尺度的特征,所述多个特征图是分别由所述FPN中的不同网络层输出得到的;
解码单元,用于对所述多个特征图进行融合,得到第一特征图,并利用解码器Decoder对所述第一特征图进行处理,得到所述第一图像的语义分割结果;
其中,所述FPN包括第一网络层,所述第一网络层为所述FPN包含的多个网络层中的任意一层,所述第一网络层包括变换器模块,所述变换器模块包括并联的第一自注意力模块和第一卷积模块;所述第一自注意力模块用于对输入所述变换器模块的第二特征图的全局语义进行提取,得到第三特征图;所述第一卷积模块用于对所述第二特征图的局部语义进行提取,得到第四特征图;所述第一网络层输出的特征图是基于所述第三特征图和所述第四特征图生成的。
9.根据权利要求8所述的装置,其特征在于,
所述第三特征图是基于池化后的键值Key矩阵、池化后的价值Value矩阵和询问Query矩阵生成的;所述池化后的Key矩阵、所述池化后的Value矩阵是通过对Key矩阵和Value矩阵分别进行池化操作得到的;所述Key矩阵、所述Value矩阵和所述Query矩阵是通过对所述第二特征图进行特征提取得到的。
10.根据权利要求8或9所述的装置,其特征在于,
所述池化后的Key矩阵中的每个元素为所述Key矩阵中的每行元素或者每列元素的均值,所述池化后的Value矩阵中的每个元素为所述Value矩阵中的每行元素或者每列元素的均值。
11.根据权利要求8-10中任一项所述的方法,其特征在于,所述第一网络层还包括第二卷积模块,
所述第二卷积模块用于对输入所述第一网络层的第五特征图进行特征提取,得到所述第二特征图。
12.根据权利要求8-11中任一项所述的装置,其特征在于,在所述对所述多个特征图进行融合,得到第一特征图的方面,所述解码单元具体用于:
对所述多个特征图分别进行归一化,得到归一化后的所述多个特征图;
对所述归一化后的所述多个特征图进行级联,得到所述第一特征图。
13.根据权利要求8-12中任一项所述的装置,其特征在于,所述解码单元包括第二自注意力模块和第三卷积模块;
所述第二自注意力模块用于提取所述第一特征图中的全局语义,所述第三卷积模块用于提取所述第一特征图中的局部语义。
14.根据权利要求8-12中任一项所述的装置,其特征在于,
所述语义分割结果用于表征所述第一图像上每个像素点属于不同物体类别的概率。
15.一种电子设备,其特征在于,所述电子设备包括至少一个处理器,存储器和接口电路,所述存储器、所述接口电路和所述至少一个处理器通过线路互联,所述至少一个存储器中存储有指令;所述指令被所述处理器执行时,权利要求1-7中任一所述的方法得以实现。
16.一种芯片系统,其特征在于,所述芯片系统包括至少一个处理器,存储器和接口电路,所述存储器、所述接口电路和所述至少一个处理器通过线路互联,所述至少一个存储器中存储有指令;所述指令被所述处理器执行时,权利要求1-7中任一所述的方法得以实现。
17.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,该计算机程序被执行时,权利要求1-7中任意一项所述的方法得以实现。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210957936.8A CN117635925A (zh) | 2022-08-10 | 2022-08-10 | 图像语义分割方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210957936.8A CN117635925A (zh) | 2022-08-10 | 2022-08-10 | 图像语义分割方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117635925A true CN117635925A (zh) | 2024-03-01 |
Family
ID=90016800
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210957936.8A Pending CN117635925A (zh) | 2022-08-10 | 2022-08-10 | 图像语义分割方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117635925A (zh) |
-
2022
- 2022-08-10 CN CN202210957936.8A patent/CN117635925A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112446270B (zh) | 行人再识别网络的训练方法、行人再识别方法和装置 | |
CN111291809B (zh) | 一种处理装置、方法及存储介质 | |
CN109902548B (zh) | 一种对象属性识别方法、装置、计算设备及系统 | |
WO2021147325A1 (zh) | 一种物体检测方法、装置以及存储介质 | |
WO2022001805A1 (zh) | 一种神经网络蒸馏方法及装置 | |
CN111368972B (zh) | 一种卷积层量化方法及其装置 | |
CN112288011B (zh) | 一种基于自注意力深度神经网络的图像匹配方法 | |
CN110222718B (zh) | 图像处理的方法及装置 | |
CN113705769A (zh) | 一种神经网络训练方法以及装置 | |
CN111782840B (zh) | 图像问答方法、装置、计算机设备和介质 | |
CN111695673B (zh) | 训练神经网络预测器的方法、图像处理方法及装置 | |
CN113065645B (zh) | 孪生注意力网络、图像处理方法和装置 | |
CN112183718A (zh) | 一种用于计算设备的深度学习训练方法和装置 | |
CN114255361A (zh) | 神经网络模型的训练方法、图像处理方法及装置 | |
WO2021129668A1 (zh) | 训练神经网络的方法和装置 | |
CN113807183A (zh) | 模型训练方法及相关设备 | |
US20240135174A1 (en) | Data processing method, and neural network model training method and apparatus | |
CN112464930A (zh) | 目标检测网络构建方法、目标检测方法、装置和存储介质 | |
US20230401838A1 (en) | Image processing method and related apparatus | |
CN114764856A (zh) | 图像语义分割方法和图像语义分割装置 | |
CN117217280A (zh) | 神经网络模型优化方法、装置及计算设备 | |
CN111104911A (zh) | 一种基于大数据训练的行人重识别方法及装置 | |
CN116432736A (zh) | 神经网络模型优化方法、装置及计算设备 | |
CN114792401A (zh) | 行为识别模型的训练方法、装置、设备及存储介质 | |
CN113128285A (zh) | 一种处理视频的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |