图像处理模型的训练方法、装置、图像处理方法及模型与流程

文档序号:23705418发布日期:2021-01-23 12:59阅读:54来源:国知局
图像处理模型的训练方法、装置、图像处理方法及模型与流程

[0001]
本发明涉及神经网络技术领域,尤其涉及一种图像处理模型的训练方法、装置、图像处理方法及模型,计算设备及存储介质。


背景技术:

[0002]
图像分割是计算机视觉领域的一项基础且重要的研究,图像分割也是视频分割的基础,通过将视频帧视为单个图像,可以将问题转化为图像分割。它要求模型根据灰度、彩色、空间纹理、几何形状等特征把图像划分成若干个互不相交的区域,即将目标从背景中分离出来。图像分割在图像处理、视频处理、计算机视觉领域等有很广泛的应用,例如医学影像(medical imaging)、人脸识别(face recognition)、指纹识别(fingerprint recognition)、自动驾驶(autonomous driving)等,均需基于先将目标进行图像分割出后,再对目标进行分类、识别等处理;又如应用到图像或视频上的目标(目标可以是人体、建筑物、天空、河流等)的背景替换时,也是基于先将目标进行图像分割出后,再将目标与其他背景进行融合。
[0003]
相对于基于数字图像处理的传统的图像分割方法,基于深度神经网络的图像分割方法实现了基于语义的图像分割,大大提升了图像分割的性能,例如通过卷积神经网络提取图像的特征图(即语义特征),再使用图像的像素级分割和类别(例如前景或背景二分类)作为监督信号对模型进行端对端的训练。比较典型的神经网络模型包括fcn,u-net,mask-rcnn等。fcn提出了全卷积网络和反卷积层,它将传统卷积网络中的全连接网络替换成了卷积网络,使得网络可以接受任意大小的图片,并使用反卷积从特征图输出和原图一样大小的分割图。u-net是典型的编码模块-解码模块结构,通过编码模块提取整个图形的语义信息,再融合浅层的高分辨率信息进行分割。mask-rcnn同时解决目标检测和图像分割两个任务。
[0004]
图像分割的准确性,特别是目标边缘区域的准确性,例如基于语义分割的基础上生成的蒙版(mask)图像的边缘区域分割的准确性,是图像分割的关键技术。图像分割的准确性也会影响后续任务的效果,如果被分割出来的图像不准确,边缘噪声过多,则后续任务中对该部分图像识别精度会带来问题,或带来与其他背景图融合时带来真实度低等问题,或者会导致后续对该图像的分析带来更多的运算量。因此,如何提高图像分割的准确性,是目前在持续改进的技术问题。


技术实现要素:

[0005]
鉴于现有技术的以上问题,本申请提供一种图像处理模型的训练方法、装置、图像处理方法及模型,计算设备及存储介质,其能够提高图像分割的准确性。
[0006]
为达到上述目的,本申请第一方面提供一种图像处理模型的训练方法,该图像处理模型包括第一模块、第二模块和/或第三模块,该方法包括:
[0007]
将第一图像和第二图像输入第一模块生成第一特征图;所述第一图像中包含目标
对象图像;
[0008]
由第二模块根据所述第一特征图生成第二特征图,并根据第二特征图生成蒙版图像;所述蒙版图像对应所述目标对象图像;
[0009]
由第三模块根据所述第一特征图和第二特征图生成第三图像;所述第三图像是包含目标对象图像与第二图像的预测合成图;
[0010]
根据生成第三图像的损失函数和生成蒙版图像的损失函数进行所述图像处理模型的训练。
[0011]
其中,第一模块可为一编码模块,用于从图像生成特征图,第二、三模块可为不同的解码模块,用于从特征图还原图像。由上,由于根据生成第三图像的损失函数和生成蒙版图像的损失函数进行所述图像处理模型的训练,并且采用反向传播的方式进行训练,这样第二模块会传递与生成蒙版图像相关的第二特征图特征至第三模块学习,训练中第三模块反向修正第二模块,即第二模块、第三模块协同训练,从而提高第二模块的图像分割准确性,相应的,也提高了第三模块进行图像合并的准确性。
[0012]
作为第一方面的一种可能的实现方式,所述第二模块和第三模块分别包括至少一个反向特征提取层;所述反向特征提取层用于从低分辨率特征图还原出高分辨率特征图;
[0013]
由第二模块的不同的反向特征提取层生成不同的第二特征图;
[0014]
将至少一个第二特征图传递给第三模块对应的至少一个反向特征提取层;
[0015]
所述由第三模块根据所述第一特征图和第二特征图生成第三图像,是由第三模块根据所述第一特征图,和其所述至少一个反向特征提取层分别收到并融合到该层原输入特征图的第二特征图来生成第三图像。
[0016]
由上,通过多个第二特征图的传递,使得第二模块的不同级别的特征图可传递至第三模块学习,由于传递的特征参数多,且是不同级别的特征参数,训练中第三模块反向修正第二模块时会更准确,从而进一步提高第二模块的图像分割准确性。
[0017]
作为第一方面的一种可能的实现方式,所述由第三模块根据所述第一特征图和第二特征图生成第三图像包括:
[0018]
根据第二特征图生成对应的亲和力图;亲和力图用于表示该第二特征图中至少一个像素和其他至少一个像素的关系;
[0019]
由第三模块根据所述第一特征图和亲和力图生成所述第三图像。
[0020]
由上通过亲和力图将第二特征图中更多的上下文信息传递给第三模块学习,由于传递的参数融合了更多的上下文信息,训练中第三模块反向修正第二模块时会更准确,从而进一步提高第二模块的图像分割准确性。
[0021]
作为第一方面的一种可能的实现方式,所述第二模块和第三模块分别包括至少一个反向特征提取层;
[0022]
由第二模块的不同的反向特征提取层生成不同的第二特征图;
[0023]
根据至少一个第二特征图生成对应的至少一个亲和力图,并传递给第三模块对应的至少一个反向特征提取层;
[0024]
所述由第三模块根据所述第一特征图和亲和力图生成第三图像,是由第三模块根据所述第一特征图,和其所述至少一个反向特征提取层分别收到并融合到该层原输入特征图的亲和力图来生成第三图像。
[0025]
由上,通过更多的亲和力图进一步将第二特征图中更多的上下文信息传递给第三模块学习,由于传递的参数融合了进一步更多的上下文信息,训练中第三模块反向修正第二模块时会更准确,从而进一步提高第二模块的图像分割准确性。
[0026]
作为第一方面的一种可能的实现方式,所述根据第二特征图生成对应的亲和力图包括:
[0027]
将该第二特征图和该第二特征图的转置相乘后,经激活函数运算得到该第二特征对应的所述亲和力图。
[0028]
由上方式实现过程变成简便,实现起来开发成本低。
[0029]
作为第一方面的一种可能的实现方式,所述融合到该层原输入特征图包括以下之一:
[0030]
与该层的原输入特征图进行相乘运算,其结果再与该层的原输入特征图进行对位求和,其结果作为融合后的输入特征图;
[0031]
与该层的原输入特征图进行相乘运算,其结果作为融合后的输入特征图;
[0032]
与该层的原输入特征图进行对位求和;其结果作为融合后的输入特征图。
[0033]
由上方式灵活实现特征图的融合,可根据需要选择其中之一。
[0034]
作为第一方面的一种可能的实现方式,所述根据生成第三图像的损失函数和生成蒙版图像的损失函数进行所述图像处理模型的训练包括:训练中使用下述损失函数:
[0035]
loss=生成蒙版图像的损失函数+生成第三图像的损失函数
[0036]
=seg loss+(image level loss+feature level loss);
[0037]
seg loss指图像分割网络损失函数;
[0038]
image level loss为预测合成图和gt合成图的损失函数;
[0039]
feature level loss为预测合成图特征和gt合成图特征的损失函数;
[0040]
所述预测合成图指第三图像;所述gt合成图指用已知的gt蒙版、包所述第一图像和第二图像所获得的合成图;gt蒙版指人为标注的蒙版图像。
[0041]
由上,采用了图像级别的损失函数与特征级别的损失函数,模型训练过程中即考虑到语义特征(整体)又考虑到图像级别的细节之处,有利于提高第二模块的图像分割准确性。
[0042]
作为第一方面的一种可能的实现方式,所述根据生成第三图像的损失函数和生成蒙版图像的损失函数进行所述图像处理模型的训练包括:训练中使用下述损失函数:
[0043]
loss=生成蒙版图像的损失函数+生成第三图像的损失函数
[0044]
=seg loss+(image level loss+feature level loss)*(1+w);
[0045]
seg loss指图像分割网络损失函数;
[0046]
image level loss为预测合成图和gt合成图的损失函数;
[0047]
feature level loss为预测合成图特征和gt合成图特征的损失函数;
[0048]
所述预测合成图指第三图像;所述gt合成图指用已知的gt蒙版、包所述第一图像和第二图像所获得的合成图;gt蒙版指人为标注的蒙版图像;
[0049]
w是一个和gt蒙版同尺寸的二维图像,其像素取值范围为0至1,是通过对gt蒙版膨胀腐蚀的方法获取的对应目标对象的边缘区域的图像。
[0050]
由上,通过w的引入,加大了对边缘区域的惩罚,从而在模型训练时,能够反传更多
的在错误区域的损失值,从而修正这些错误的地方,进一步提高了图像分割的准确性,由于w是与蒙版图像相关,故尤其提高了边缘区域分割的准确性。
[0051]
作为第一方面的一种可能的实现方式,所述第一图像和第二图像来自于训练用的数据集的一数据对;该数据集中包括多个数据对,该多个数据对是由同一个第一图像和多个不同的第二图像构成的多个数据对。
[0052]
由上,同一前景匹配不同的背景进行合成,错误区域会在不同背景合成图上加强了错误地方的惩罚,从而在模型训练时,能够反传更多的在错误区域的损失值,从而修正这些错误的地方,提高了图像分割的准确性。
[0053]
本申请第二方面提供一种图像处理模型的训练装置,该图像处理模型包括第一模块、第二模块和/或第三模块,该装置包括:
[0054]
第一特征图生成单元,用于将第一图像和第二图像输入第一模块生成第一特征图;所述第一图像中包含目标对象图像;
[0055]
蒙版图像生成单元,用于由第二模块根据所述第一特征图生成第二特征图,并根据第二特征图生成蒙版图像;所述蒙版图像对应所述目标对象图像;
[0056]
第三图像生成单元,用于由第三模块根据所述第一特征图和第二特征图生成第三图像;所述第三图像是包含目标对象图像与第二图像的预测合成图;
[0057]
训练单元,用于根据生成第三图像的损失函数和生成蒙版图像的损失函数进行所述图像处理模型的训练。
[0058]
作为第二方面的一种可能的实现方式,所述第二模块和第三模块分别包括至少一个反向特征提取层;所述反向特征提取层用于从低分辨率特征图还原高分辨率特征图;
[0059]
所述蒙版图像生成单元是由第二模块的不同的反向特征提取层生成不同的第二特征图;
[0060]
还包括特征图传递模块,用于将至少一个第二特征图传递给第三模块对应的至少一个反向特征提取层;
[0061]
所述第三图像生成单元是由第三模块根据所述第一特征图,和其所述至少一个反向特征提取层分别收到并融合到该层原输入特征图的第二特征图来生成第三图像。
[0062]
作为第二方面的一种可能的实现方式,还包括亲和力模块,用于根据第二特征图生成对应的亲和力图;亲和力图用于表示该第二特征图中至少一个像素和其他至少一个像素的关系;
[0063]
所述第三图像生成单元是由第三模块根据所述第一特征图和亲和力图生成所述第三图像。
[0064]
作为第二方面的一种可能的实现方式,所述第二模块和第三模块分别包括至少一个反向特征提取层;
[0065]
由第二模块的不同的反向特征提取层生成不同的第二特征图;
[0066]
所述亲和力模块为至少一个,用于将根据至少一个第二特征图生成对应的至少一个亲和力图;
[0067]
还包括亲和力图传递模块,用于将所述至少一个亲和力图传递给第三模块对应的至少一个反向特征提取层;
[0068]
所述第三图像生成单元是由第三模块根据所述第一特征图,和其所述至少一个反
向特征提取层分别收到并融合到该层原输入特征图的亲和力图来生成第三图像。
[0069]
作为第二方面的一种可能的实现方式,所述亲和力模块具体用于将该第二特征图和该第二特征图的转置相乘后经激活函数运算得到所述亲和力图。
[0070]
作为第二方面的一种可能的实现方式,所述第三模块的所述融合到该层原输入特征图包括以下之一:
[0071]
与该层的原输入特征图进行相乘运算,其结果再与该层的原输入特征图进行对位求和,其结果作为融合后的输入特征图;
[0072]
与该层的原输入特征图进行相乘运算,其结果作为融合后的输入特征图;
[0073]
与该层的原输入特征图进行对位求和,其结果作为融合后的输入特征图。
[0074]
作为第二方面的一种可能的实现方式,所述训练单元具体使用下述损失函数进行所述图像处理模型的训练:
[0075]
loss=生成蒙版图像的损失函数+生成第三图像的损失函数
[0076]
=seg loss+(image level loss+feature level loss);
[0077]
seg loss指图像分割网络损失函数;
[0078]
image level loss为预测合成图和gt合成图的损失函数;
[0079]
feature level loss为预测合成图特征和gt合成图特征的损失函数;
[0080]
所述预测合成图指第三图像;所述gt合成图指用已知的gt蒙版、包所述第一图像和第二图像所获得的合成图;gt蒙版指人为标注的蒙版图像。
[0081]
作为第二方面的一种可能的实现方式,所述训练单元具体使用下述损失函数进行所述图像处理模型的训练:
[0082]
loss=生成蒙版图像的损失函数+生成第三图像的损失函数
[0083]
=seg loss+(image level loss+feature level loss)*(1+w);
[0084]
seg loss指图像分割网络损失函数;
[0085]
image level loss为预测合成图和gt合成图的损失函数;
[0086]
feature level loss为预测合成图特征和gt合成图特征的损失函数;
[0087]
所述预测合成图指第三图像;所述gt合成图指用已知的gt蒙版、包所述第一图像和第二图像所获得的合成图;gt蒙版指人为标注的蒙版图像;
[0088]
w是一个和gt蒙版同尺寸的二维图像,其像素取值范围为0至1,是通过对gt蒙版膨胀腐蚀的方法获取的对应目标对象的边缘区域的图像。
[0089]
作为第二方面的一种可能的实现方式,还包括一训练用的数据集,包括多个由同一个第一图像和多个不同的第二图像构成的多个数据对,所述第一图像和第二图像来自于该数据集的一数据对。
[0090]
本申请第三方面提供一种图像处理方法,包括:
[0091]
将第一图像输入第一模块生成第一特征图;所述第一图像中包含目标对象图像;
[0092]
由第二模块根据所述第一特征图生成第二特征图,并根据第二特征图生成蒙版图像;所述蒙版图像对应所述目标对象图像;
[0093]
所述第一模块和第二模块经本申请第一方面提供的图像处理模型的训练方法中的任一可能的实现方式的方法进行训练。
[0094]
由上,通过该图像处理方法,可以实现图像较为准确的分割,即实现蒙版图像生成
的准确性,尤其是边缘处的准确性。
[0095]
本申请第四方面提供一种图像处理模型,包括:
[0096]
第一模块,用于接收第一图像,并生成第一特征图;所述第一图像中包含目标对象图像;
[0097]
第二模块,用于根据所述第一特征图生成第二特征图,并根据第二特征图生成蒙版图像;所述蒙版图像对应所述目标对象图像;
[0098]
所述第一模块和第二模块经本申请第一方面提供的图像处理模型的训练方法中的任一可能的实现方式的方法进行训练。
[0099]
本申请第五方面提供一种图像处理方法,包括:
[0100]
将第一图像和第二图像输入第一模块生成第一特征图;所述第一图像中包含目标对象图像;
[0101]
由第二模块根据所述第一特征图生成第二特征图;
[0102]
根据所述第一特征图和第二特征图生成第三图像;所述第三图像是包含目标对象图像与第二图像的预测合成图;
[0103]
所述第一模块、第二模块和第三模块经本申请第一方面提供的图像处理模型的训练方法中的任一可能的实现方式的方法进行训练。
[0104]
由上,通过该图像处理方法,可以实现两图像合成时,目标对象图像提取时较为准确的提取,从而合成的图像更准确性。
[0105]
作为第五方面的一种可能的实现方式,还由所述第二模块根据所述第二特征图生成蒙版图像;所述蒙版图像对应所述目标对象图像。
[0106]
由上,通过该图像处理方法,还可以实现图像较为准确的分割,即蒙版图像生成的准确性,尤其是边缘处的准确性。
[0107]
作为第五方面的一种可能的实现方式,所述根据第一特征图和第二特征图生成第三图像包括:
[0108]
根据第二特征图生成亲和力图;亲和力图用于表示特征图中至少一个像素和其他至少一个像素的关系;
[0109]
由第三模块根据所述第一特征图和亲和力图生成第三图像。
[0110]
由上,由于采用亲和力图结构的图像处理模型,可以实现两图像合成时,目标对象图像提取时较为准确的提取,从而合成的图像更准确。
[0111]
本申请第六方面提供一种图像处理模型,包括:
[0112]
第一模块,用于接收第一图像和第二图像,并生成第一特征图;所述第一图像中包含目标对象图像;
[0113]
第二模块,用于根据所述第一特征图生成第二特征图;
[0114]
第三模块,用于根据所述第一特征图和第二特征图生成第三图像;所述第三图像是包含目标对象图像与第二图像的预测合成图;
[0115]
所述第一模块、第二模块和第三模块经本申请第一方面提供的图像处理模型的训练方法中的任一可能的实现方式的方法进行训练。
[0116]
作为第六方面的一种可能的实现方式,所述第二模块还用于根据所述第二特征图生成蒙版图像;所述蒙版图像对应所述目标对象图像。
[0117]
作为第六方面的一种可能的实现方式,还包括:
[0118]
亲和力模块,用于根据第二特征图生成对应的亲和力图;亲和力图用于表示特征图中至少一个像素和其他至少一个像素的关系;
[0119]
所述第三模块根据所述第一特征图和亲和力图生成所述第三图像。
[0120]
本申请第七方面提供一种计算设备,包括:
[0121]
总线;通信接口,其与所述总线连接;至少一个处理器,其与所述总线连接;以及至少一个存储器,其与所述总线连接并存储有程序指令,所述程序指令当被所述至少一个处理器执行时使得所述至少一个处理器执行上述各方面的方案中的任一所述的方法。
[0122]
本申请第八方面提供一种计算机可读存储介质,其上存储有程序指令,所述程序指令当被计算机执行时使得所述计算机执行上述各方面的方案中的任一所述的方法。
[0123]
另外,相对于具体实施方式中的现有技术一,本申请方案计算量小,速度快,可部署在用户终端侧的极小网络模块,由于训练过程中第二、三模块协同训练,且第三模块可获取第二模块提供的与蒙版图像相关的特征图,尤其提供更多上下文信息时,从图5a和图5b可以看出,经本申请训练的模型的分割的细节更为提升,同时又会能关注整体,进而镂空分割更好,图像分割时对边缘处更为准确,边缘过度更自然。
[0124]
另外,相对于具体实施方式中的现有技术二,本申请的信息源不同,不会如现有技术二采用原始图像背景导致的实用性低,本方案是用多组可随机生成的虚拟背景,训练过程无限制,可生成大量的训练样本对;通过建立不同的上下文关系(尤其是在边缘处的)反馈优化分割方法,可以增强分割分支学习上下文信息,从图5a和图5b可以看出,经本申请训练的模型,提高了对边缘区域识别的准确度。
[0125]
总之,本申请提高了前景区域的分割的准确性,特别是边缘区域,进而提高了后续任务的效果。并且,经测试,本申请在提供了分割准确性前提下,运算速度快实时性高,基本未提高运算量,可以实现在用户终端侧运行。
[0126]
本发明的这些和其它方面在以下(多个)实施例的描述中会更加简明易懂。
附图说明
[0127]
以下参照附图来进一步说明本发明的各个特征和各个特征之间的联系。附图均为示例性的,一些特征并不以实际比例示出,并且一些附图中可能省略了本申请所涉及领域的惯常的且对于本申请非必要的特征,或是额外示出了对于本申请非必要的特征,附图所示的各个特征的组合并不用以限制本申请。另外,在本说明书全文中,相同的附图标记所指代的内容也是相同的。具体的附图说明如下:
[0128]
图1a为本申请图像处理模型第一实施例的结构示意图;
[0129]
图1b为本申请图像处理模型第一实施例中特征图和特征图融合的原理示意图;
[0130]
图2a为本申请图像处理模型第二实施例的结构示意图;
[0131]
图2b为本申请图像处理模型第二实施例的一具体实施方式的结构示意图;
[0132]
图2c为本申请中生成亲和力图的原理示意图;
[0133]
图2d为本申请中特征图与亲和力图融合的原理示意图;
[0134]
图3为本申请图像处理模型的训练方法的第一实施例的流程图;
[0135]
图4a为本申请图像处理模型的训练装置的第一实施例;
[0136]
图4b为本申请图像处理模型的训练装置的第二实施例;
[0137]
图4c为本申请图像处理模型的训练装置的第三实施例;
[0138]
图4d为本申请图像处理模型的训练装置的第四实施例;
[0139]
图5a是各方法的分割结果图的比较示意图;
[0140]
图5b是本申请第二实施例的一具体实施方式与现有技术二的分割结果图的比较示意图;
[0141]
图6是本申请计算设备的示意图;
[0142]
图7a是现有技术一的流程示意图;
[0143]
图7b是现有技术二的流程示意图。
具体实施方式
[0144]
说明书和权利要求书中的词语“第一、第二、第三等”或模块a、模块b、模块c等类似用语,仅用于区别类似的对象,不代表针对对象的特定排序,可以理解地,在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
[0145]
在以下的描述中,所涉及的表示步骤的标号,如s110、s120
……
等,并不表示一定会按此步骤执行,在允许的情况下可以互换前后步骤的顺序,或同时执行。
[0146]
说明书和权利要求书中使用的术语“包括”不应解释为限制于其后列出的内容;它不排除其它的元件或步骤。因此,其应当诠释为指定所提到的所述特征、整体、步骤或部件的存在,但并不排除存在或添加一个或更多其它特征、整体、步骤或部件及其组群。因此,表述“包括装置a和b的设备”不应局限为仅由部件a和b组成的设备。
[0147]
本说明书中提到的“一个实施例”或“实施例”意味着与该实施例结合描述的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,在本说明书各处出现的用语“在一个实施例中”或“在实施例中”并不一定都指同一实施例,但可以指同一实施例。
[0148]
语义分割(semantic segmentation):语义分割是在像素级别上的分类,属于同一类的像素都要被归为一类,因此语义分割是从像素级别来理解图像的。实现语义分割的神经网络通常包括编码模块(encoder),解码模块(decoder)两个部分。encoder用于提取输入图像特征,例如可以基于卷积神经网络(cnn)实现图像特征的提取,也可以采用残差网络(resnet)、resnext网络、密级卷积网络(densenet)、特征金字塔网络(fpn)等特征提取网络。decoder用于融合encoder提出的不同分辨率的特征,并恢复到原输入大小,可以通过卷积组实现。
[0149]
反向特征提取,是相对于特征提取而言,反向特征提取,指从从低分辨率特征图还原高分辨率特征图,常应用于解码模块中的上采样步骤,可以通过反卷积(或称为转置卷积)实现。
[0150]
上下文亲和力图(cab,context affinity map),或简称为亲和力图(affinity map),用于表示特征图中每个像素和其余像素的关系响应,即表示像素间相互关系(也就是分割里常说的上下文信息的建立)。
[0151]
整形(reshape):用于将一定维度的多维矩阵重新排列构造一个新的保持同样元素数量但是不同维度尺寸的矩阵,reshape操作不改变原各元素的数据。
[0152]
卷积层(convolution):用于对输入的图像矩阵进行卷积操作,以提取图像特征,输出特征图(feature map)。
[0153]
softmax:激活函数的一种。
[0154]
池化层(pooling):用于对数据进行下采样,减少数据处理量同时保留有用信息。
[0155]
跳跃连接结构(skip connection):对应包含编码模块和解码模块网络,这种结构的网络典型的包括u型结构网络(u-net),通过skip connection,能够使得在解码模块网络在每一级(level)或某些级的上采样过程中,将编码模块对应位置的特征图在通道上进行融合,即解码模块在解码过程中,将编码模块对应位置的特征矩阵与其特征矩阵进行级联,作为所要使用的特征矩阵。通过底层特征与高层特征的融合,使得网络能够保留更多高层特征图蕴含的高分辨率细节信息,从而提高了图像分割精度。
[0156]
蒙版(mask):也称遮罩、掩膜,指遮住部分图像的部分,通常采用全黑的像素表示。
[0157]
反向传播(backpropagation pass):是训练神经网络模型的通用的方法之一。反向传播是相对于前向传播(feedforward pass)而言,前向传播是根据输入的样本,网络各层依次做运算最终输出预测值(predit label)的过程,由于得到的预测值与真实值(label)之间必然是存在误差(通常以损失(loss)函数的值来表示),因此通过反向传播,即将存在的损失误差信息回传给每一层,使这些层修改他们的模型参数,如修改权重矩阵w的各权值和偏差b,以降低损失误差(loss)。基于反向传播算法对神经网络模型的迭代训练过程,即通过每次的正向、反向传播,不断更新每层的权重矩阵w的各权值和偏差b,使损失函数值不断下降并收敛(即使预测值与真实值之间的误差逐渐降低),直至达到训练目标,模型结束训练,获得最终的各权重矩阵w和各偏差b。采用反向传播算法训练模式时,通常采用梯度下降法更新权值。
[0158]
损失(loss)函数:在训练深度神经网络的过程中,因为希望深度神经网络的输出尽可能的接近真正想要预测的值,所以可以通过比较当前网络的预测值和真正想要的目标值,再根据两者之间的差异情况来更新每一层神经网络的权重向量(当然,在第一次更新之前通常会有初始化的过程,即为深度神经网络中的各层预先配置参数),比如,如果网络的预测值高了,就调整权重向量让它预测低一些,不断地调整,直到深度神经网络能够预测出真正想要的目标值或与真正想要的目标值非常接近的值。因此,就需要预先定义“如何比较预测值和目标值之间的差异”,这便是损失函数或目标函数,它们是用于衡量预测值和目标值的差异的重要方程。其中,以损失函数举例,损失函数的输出值(loss)越高表示差异越大,那么深度神经网络的训练就变成了尽可能缩小这个loss的过程。预测值和目标值之间的差异可以称为神经网络的损失值。
[0159]
l1范数损失函数(l1_loss),也被称为最小绝对值偏差(lad),最小绝对值误差(lae)。它是把目标值与估计值的绝对差值的总和最小化。l1_loss公式如下:
[0160][0161]
l2范数损失函数(l2_loss),也被称为最小平方误差(lse)。它是把目标值与估计值的差值的平方和最小化。l1_loss公式如下:
[0162]
[0163]
交叉熵损失函数,用于度量例如目标值与估计值两个概率分布间的差异性信息,交叉熵越小说明两者之间越接近。n个样本的交叉熵loss公式如下:
[0164][0165]
均方误差损失函数(mse loss),均方误差是指参数估计值与参数值之差平方的期望值。mse是衡量“平均误差”的一种较方便的方法,mse可以评价数据的变化程度,mse的值越小,说明预测模型具有更好的精确度。
[0166]
膨胀与腐蚀(dilation and erosion),膨胀是通过将像素添加到该图像中的对象的感知边界,扩张放大图像中的明亮白色区域。腐蚀则相反,是沿着物体边界移除像素并缩小物体的大小。通常这两个操作是按顺序执行的,以增强重要的对象特征,如图像边缘的特征。
[0167]
模型的训练阶段、模型的推理阶段:分别指通过已有样本数据训练模型(或算法)的阶段,及在设备中执行训练好的模型(或算法)以处理数据的阶段。
[0168]
【对现有技术的分析】
[0169]
现有技术一:技术方案如图7a所示,采用抠图(matting)方法提升边缘分割精度,其处理过程主要包括:首先获得初步分割结果;进而通过直接或间接的方式获得非确定区域;然后将rgb图像或底层特征、初步分割结果以及非确定区域输入网络获得最终蒙版结果。
[0170]
现有技术一所存在的缺陷:1)如果进行端到端的抠图(matting),由于matting对细节、局部过于注重,容易导致内部出现镂空;2)由于非确定区的存在,在视频上更容易导致边缘抖动,即边缘区域的准确性的稳定度低;2)流程复杂所以运行起来速度慢。
[0171]
现有技术二:技术方案如图7b所示,采用真实背景输入方法提升边缘分割精度,即使用原始无前景的背景图输入辅助提升分割效果,其处理过程主要包括输入rgb图、先验(原图无人的背景图),且分别输入不同的encoder,然后使用上下文切换(context switching)模块融合两个encoder得到的语义特征;再将融合后的语义特征输入给两支decoder,一支用来前景重建,一支用来生成蒙版(mask);然后进行重建前景与背景图的合成,即通过αf+(1-α)b进行合成,其中α表示不透明度、f表示前景色、b表示背景色;并最终使用判别器(discriminator)判断合成图的好坏。
[0172]
现有技术二所存在的缺陷:1)需要单独采集无人的背景图、且需要背景对齐,实用性低,特别是针对手持可移动的设备,手持导致的背景会发生变动,或背景存在其他人的走动导致发生变动,因此难以确保能采集到所需的无人的背景图,导致该方式的不可用,或者需采集后对有人/无人背景图的图像进行缩放、旋转的匹配再使用本方式,但会导致实现方法的复杂度的提高;2)前景分支和分割分支提取信息冗余度较高;3)使用判别器训练,由于判别器本身对于细小差异的区分度不敏感,因此会导致对边缘区域的准确度不会很敏感。4)上下文切换(context switching)模块,由于该模块采用了简单的特征叠加和卷积的结构,因此学习指引性较弱。5)整体网络具有极高的算法复杂度,在用户终端侧上使用起来不够现实。
[0173]
基于现有技术所存在的缺陷,本申请提供了一种图像分割方法,可以提高分割边缘精度。基本原理是,输入原rgb图像和虚拟背景对,在模型训练时,通过生成蒙版图像(或
称为分割图像)的第二模块引出合成图的第三模块,获取预测合成图,第三模块辅助提升第二模块的分割精度;推理时,只保留第二模块,使用训练后的模型得到分割结果,即蒙版图像。本申请在蒙版生成时,在基本不增加计算量的情况下,分割边缘精度进行了提升。另外,还通过构件亲和力模块,在训练过程中可将更多的上下文关系回传至第二模块,进一步使分割边缘精度进行了提升。
[0174]
【图像处理模型应用场景举例】
[0175]
本申请的图像处理模型可以生成蒙版图像,基于此可用于图像分割领域,即将目标从背景中分离出来。可应用于图像处理、视频处理、计算机视觉领域等,例如应用于医学影像(medical imaging)中,对核磁共振图像中的病灶部位的图像识别,例如应用于人脸识别(face recognition)中,从图像中识别出人脸,例如应用于指纹识别(fingerprint recognition)中,从图像中识别出指纹纹理,或指纹区域,例如应用于自动驾驶(autonomous driving)中,从采集的前方图像或视频中识别出行人、建筑物、障碍物、或交通设置等,这些均需基于先将目标进行图像分割出后,再对目标进行分类、识别等处理;又如,还可应用到图像或视频上的目标对象(目标对象可以是人体、建筑物、天空、河流等)的背景替换时,也是基于先将包含目标对象的图像进行图像分割出后,再将分割出的目标对象图像与其他背景图像进行融合,对应背景替换应用时,背景图像也可以采用虚拟背景(虚拟背景指非真实图像),如卡通背景、自动生成的背景、动态背景等。
[0176]
另一方面,本申请图像处理模型还可直接针对两张图像,将一张图像上识别出的目标对象作为前景,将另一张图像作为背景图像进行合成,即可直接应用于上述识别的目标对象与背景图像的融合的应用。
[0177]
下面进一步以一些具体应用的举例说明本申请图像处理模型的一些应用场景:
[0178]
用户利用终端等设备进行人像实时视频语义分割,进而实现背景虚化或背景替换、直播制作、电影或动画制作等功能。例如,用户在手机端开启视频通话功能,在视频通话过程中,对画面中的人像实时进行人像分割后,将人像选取为前景,用户选择一虚拟背景,将替换原背景为虚拟背景,例如虚拟背景可以是虚拟的历史场景或未来场景,从而可实现时空变幻、背景穿越的效果。又如对背景中天空区域的识别分割,并以虚拟的天空替换原图中的天空区域,当虚拟的天空为设计的动态魔幻天空时,则可以实现在用户终端侧的画面或视频的魔法天空的效果。
[0179]
【图像处理模型第一实施例】
[0180]
在介绍本申请图像处理模型的训练方法之前,首先对要训练的图像处理模型进行介绍,
[0181]
如图1a示出了图像处理模型第一实施例,同时参考图2b示出的图像处理模型第二实施例的一具体实施方式,对本发明图像处理模型第一实施例进行描述,该图像处理模型包括:
[0182]
第一模块110,用于接收第一图像和第二图像,并生成第一特征图;所述第一图像中包含目标对象的图像。
[0183]
在一些实施例中,第一模块110可以由编码模块实现,编码模块包括至少一特征提取层,各特征提取层依次耦合,各特征提取层分别对上一层输出的特征图进行更高级的特征的提取,从而各特征提取层依次提取出低级特征图(low-level feature map)到高级特
征图(high-level feature map),其中低级特征图对应分辨率高的特征图,高级特征图对应低分辨率的特征图,该特征提取过程也可以称为编码模块的下采样过程。其中,第一模块110可以基于卷积神经网络(cnn)、残差网络(resnet)、resnext网络、密级卷积网络(densenet)、特征金字塔网络(fpn)等实现,或上述各网络的任意组合实现。
[0184]
在本实施例中,第一模块110可基于cnn结构实现,该第一模块110包括依次耦合的多个卷积层,通过多个卷积层完成下采样过程。各个卷积层或部分卷积层之后还可以设置池化层(pooling)进行下采样来减少数据量。在本实施例中,第一特征图是指下采样过程的最后一次采样所得到的特征图。
[0185]
其中第一图像包含的目标对象图像可以是该第一图像中的人体、建筑物、天空、河流或可与周围像素区分的一区域等。第二图像可以是任一图像,例如可以是照片,也可以是自动随机生成的图像,例如自动随机生成的虚拟背景图像。
[0186]
第二模块120,用于根据所述第一特征图生成第二特征图;所述第二模块120还用于根据所述第二特征图生成蒙版图像;所述蒙版图像对应第一图像中的目标对象图像。
[0187]
在一些实施例中,第二模块120可以由一解码模块实现,该解码模块包括至少一反向特征提取层(反向特征提取,指从低分辨率特征图还原高分辨率特征图),各反向特征提取层依次耦合,各反向特征提取层分别对上一层输出的低分辨率特征图生成高分辨率的特征图,即进行高分辨率特征图的还原,从而可以从低分辨率特征图依次还原出更高分辨率的特征图,该特征图还原过程也可以称为该解码模块的上采样过程。其中,第二模块120可以基于卷积神经网络(cnn)、残差网络(resnet)、resnext网络、密级卷积网络(densenet)、特征金字塔网络(fpn)等实现,或上述各网络的任意组合实现。
[0188]
在本实施例中,第二模块120基于cnn结构实现,该第二模块120包括多个卷积层,通过多个卷积层的反向卷积运算(或称为转置卷积运算)实现上采样过程。各个卷积层或部分卷积层之后还可以设置上池化层(up-pooling)进行上采样以进一步填充数据量,以提高特征图的分辨率。在本实施例中,第二特征图是第二模块120执行上采样过程中任意一次采样所得到特征图。在另一些实施例中,第二特征图有不同的多个,是第二模块120执行上采样过程中对应不同卷积层或上池化层的采样所分别得到的特征图。
[0189]
第三模块130,用于根据所述第一特征图和第二特征图生成第三图像;所述第三图像是包含目标对象图像与第二图像的预测合成图。
[0190]
在一些实施例中,第三模块130可以由另一解码模块实现,该解码模块包括至少一反向特征提取层,各反向特征提取层依次耦合,各反向特征提取层分别对上一层输出的特征图生成分辨率更高的特征图,即进行更高分辨率特征图的还原,从而可以从低分辨率特征图依次还原出更高分辨率特征图,该特征还原过程也可以称为该解码模块的上采样过程。其中,第三模块130可以基于卷积神经网络(cnn)、残差网络(resnet)、resnext网络、密级卷积网络(densenet)、特征金字塔网络(fpn)等实现,或上述各网络的任意组合实现。
[0191]
在本实施例中,第三模块130基于cnn结构实现,该第三模块130包括多个卷积层,通过多个卷积层的反向卷积运算(或称为转置卷积运算)实现上采样过程。各个卷积层或部分卷积层之后还可以设置上池化层(up-pooling)进行上采样以进一步填充数据量,以提高特征图的分辨率。在本实施例中,将上采样过程中任意一次采样输出的特征图融合所述第二特征图作为下一次采样的输入(或者说,在上采样过程中执行任意一次采样时,将上一次
采样输出的特征图融合所述第二特征图作为本次采样的输入)。在另一些实施例中,第二特征图有不同的多个,会分别融合到第三模块130执行上采样过程中对应的不同卷积层或上池化层的原输入的特征图上。
[0192]
如图1b所示,本实施例中所述的融合的实现方式可以为:将上一次采样输出的特征图与所述第二特征图相乘运算,再与该上一次采样输出的特征图进行对位求和(element-wise sum),其结果作为本次采样的输入。其中,为了实现所述相乘运算和对位求和运算,运算前、后各特征图可进行整形(reshape)操作。
[0193]
在其他一些实施例中,所述的融合的实现方式还可以为:将上一次采样输出的特征图与所述第二特征图相乘运算,其结果作为本次采样的输入;或者,将上一次采样输出的特征图与所述第二特征图进行对位求和,其结果作为本次采样的输入。其中,为了实现所述相乘运算和对位求和运算,运算前、后各特征图可进行整形(reshape)操作。
[0194]
在其他一些实施例中,还有一些其他融合方式,例如将上一次采样输出的特征图与所述第二特征图进行级联作为本次采用的输入。
[0195]
在本实施例的一实施方式中,第一模块110与第三模块130可如图2b所示,构成了u型网络(u-net),下采样和上采样的对应的各网络层,或部分网络层设置有跳跃连接结构(skip connect),使得上采样过程中的网络层能够接收下采样中蕴含的高分辨率细节信息的特征图,级联到该网络层原输入的特征图上作为其输入。通常级联需要两特征图相同的分辨率,若不相同则可以先通过整形(reshape)进行调整。跳跃连接结构提高了图像分辨率还原的精度,进而提高了图像分割的精度。
[0196]
当在模型训练阶段时,第一图像与第二图像构成图像对,作为训练样本输入到第一模块110。当在模型推理阶段,且用于生成第一图像的蒙版图像时,可仅将第一图像输入第一模块110,这种情况下,图像处理模型可不包括第三模块130。当在模型推理阶段,且用于生成第一图像中的目标对象与第二图像的合成图像时,或者还同时生成第一图像的蒙版图像时,第一图像与第二图像构成图像对输入第一模块110。
[0197]
【图像处理模型第二实施例】
[0198]
如图2a示出了图像处理模型第二实施例的结构示意图,下面,仅对与图像处理模型第一实施例不同之处进行说明,图像处理模型第二实施例中还包括上下文亲和力模块(cab),简称亲和力模块(affinity block)140,用于根据第二特征图生成亲和力图(affinity map);亲和力图用于表示特征图中至少一个像素和其他至少一个像素的关系。在一些实施例中,亲和力模块140的实现方式为:将第二特征图和该第二特征图的转置相乘后,经激活函数运算生成该第二特征图的亲和力图。
[0199]
对应图像处理模型第一实施例不同之处,还在于上述融合所述第二特征图的方式,本实施例中第三模块130中,融合所述第二特征图不是如图像处理模型第一实施例中直接融合,而是融合由第二特征图生成的亲和力图,通过该方式间接融合了第二特征图,并且由于亲和力图表示特征图中至少一个像素和其他至少一个像素的关系(即上下文关系),因此其能表示用于生成蒙版图像的第二特征图的上下文关系,由于第二特征图与蒙版图像相关,因此其能很好的表示目标对象图像边缘处的所述上下文关系,在训练过程中不断增强第二模块120学习的上下文信息,进而提高对边缘区域识别的准确度。
[0200]
在本实施例中,亲和力模块140的原理,即亲和力图的生成过程,参照图2c所示,其
中,以通过第二模块120的一特征图a得到该特征图的亲和力图s的过程为例进行描述,该原理如下:
[0201]
由第二模块120特征图a得到矩阵b、c,维度均为c*h*w。将b、c都整形(reshape)到c*n维,(n=h*w,表示像素数量);然后将c的转置与b相乘到n*n维的矩阵,对于矩阵的每一个点进行softmax激活函数处理得到sji,亲和力图s以公式描述如下:
[0202]
其中sji度量第i个位置对第j个位置的影响,也就是像素第i个位置和第j个位置之间的关系(即上下文关系),或称关联程度/相关性,越大越相似。
[0203]
在其他一些实施例中,亲和力图的生成也可以采用其他方式,例如通过神经网络来生成各元素的关系矩阵,或基于如cpnet中描述的结构,来生成各元素关系的矩阵,或者在像素位置的基础上进一步结合不同通道的特性进行亲和力图的生成。
[0204]
其中,第三模块130中,特征图融合亲和力图s的过程,以第三模块130的一特征图a

融合亲和力图得到融合后的特征图a”为例,参照图2d所示,说明如下:
[0205]
由第三模块130特征图a

得到矩阵d,将d也整形(reshape)到c*n维,(n=h*w,表示像素数量),然后将d与亲和力图s相乘操作,然后整形(reshape)到c*h*w维,与第三模块130的原特征图a

进行元素的对位求和(element-wise sum)得到融合后的特征图a”,以公式描述如下表示:
[0206]
a

∈r
c
×
h
×
w
:α表示尺度系数,初始化为0,并逐渐地学习分配到更大的权重。
[0207]
由上可以看出第三模块130的特征图a”中,融合了由第二模块120获得的与所有位置相关的亲和力图s和第三模块130原始特征图a

。当正向训练时,第二模块120的亲和力图s的各特征加强于第三模块130特征图上,第三模块130特征融合第二模块120的亲和力图s的各特征获取最终合成图预测结果;合成图建立需要更多地去学习前景边缘和虚拟背景之间像素关系建立,因此在第三模块130损失函数反传的过程中必定会反过来修正这个亲和力图s,即修正第二模块120上下文关系,尤其是边缘处,从而优化第二模块120的模型。
[0208]
另外需要说明的是,图2d中示出的第二模块的特征图a、第三模块的特征图a

是同样尺寸和通道的。若尺寸和通道不相同,可以通过整形(reshape)的方式调整为同样即可。
[0209]
在其他一些实施例中,所述的融合的实现方式还可以为:第三模块130将上一次采样输出的特征图a

与所述亲和力图s相乘运算,其结果作为本次采样的输入a”;或者,将上一次采样输出的特征图a

与所述亲和力图s进行对位求和,其结果作为本次采样的输入a”。其中,为了实现所述相乘运算和对位求和运算,运算前、后各特征图可进行整形(reshape)操作。
[0210]
在其他一些实施例中,还有一些其他融合方式,例如将上一次采样输出的特征图a

与所述亲和力图s进行级联作为本次采用的输入a”。
[0211]
如图2b所示,为在图像处理模型第二实施例中,第一模块与第三模块构成了u型网络的一实施例的结构示意图,其中第一模块110与第三模块130构成了u型网络(u-net),下采样和上采样的对应的各网络层,或部分网络层还设置有跳跃连接结构(skip connect)。
[0212]
【图像处理模型的训练方法的第一实施例】
[0213]
如上介绍了本申请提供的图像处理模型,下面参照图3示出的本申请的图像处理模型的训练方法的第一实施例的流程图,对该图像处理模型的训练方法的第一实施例进行详细介绍,该训练方法包括以下步骤:
[0214]
s310、将第一图像和第二图像输入第一模块生成第一特征图;所述第一图像中包含目标对象图像。
[0215]
其中第一图像包含的目标对象图像可以是该第一图像中的人体、建筑物、天空、河流或可与周围像素可区分的一区域等。第二图像可以是任一图像,例如可以是照片,也可以是自动随机生成的图像,例如自动随机生成的虚拟背景图像。
[0216]
当采用虚拟背景图时,由于虚拟背景图像可无限制的随机生成,因此可生成足够数量的虚拟背景图像分别与所述第一图像构成足够数量的图像对,从而满足训练用的数据集。当第一图像与每个虚拟背景构成一图像对,即同一前景匹配不同的虚拟背景构成图像对,其好处在于,同一前景匹配不同的虚拟背景进行合成,错误区域会在不同背景合成图上加强了错误地方的惩罚,从而在模型训练时,能够反传更多的在错误区域的损失值,从而修正这些错误的地方。
[0217]
在本实施例中,虚拟背景图像在生成时,图像格式、分辨率可根据所述rgb图像生成,即生成同样分辨率的同样rgb格式图像,这样可以减少预处理步骤,例如免去为了进行图像的大小对齐而进行的缩放或裁减等处理。
[0218]
在其他一些实施例中,当虚拟背景图像生成的图像格式、分辨率与所述rgb图像不同时,则需要进行图像格式的转换、图像的缩放或裁减等预处理。
[0219]
另外,即使在图像大小对齐的情况下,也可以对虚拟背景图像和/或原rgb图像进行预处理,该预处理包括上述的格式转换、缩放、裁减,还可包括旋转、平移、去噪声、亮度调整、灰度调整、对比度调整、色温调整等预处理。
[0220]
s320、由第二模块根据所述第一特征图生成第二特征图,并根据第二特征图生成蒙版图像;所述蒙版图像对应所述目标对象图像。
[0221]
在本实施例中,所述第一特征图作为第二模块的输入,第二模块执行上采样过程,第二特征图是第二模块执行上采样过程中任意一次采样所得到特征图,蒙版图像是第二模块的输出
[0222]
在另一些实施例中,第二特征图有不同的多个,是第二模块执行上采样过程中不同网络层的进行的不同级别的采样所分别得到的特征图。
[0223]
s330、由第三模块根据所述第一特征图和第二特征图生成第三图像;所述第三图像是包含目标对象图像与第二图像的预测合成图。
[0224]
在一些实施例中,所述第一特征图作为第三模块的输入,第三模块执行上采样过程,将上采样过程中任意一次采样输出的特征图融合所述第二特征图作为下一次采样的输入,或者说,在上采样过程中执行任意一次采样时,将上一次采样输出的特征图融合所述第二特征图作为本次采样的输入。
[0225]
在另一些实施例中,第二特征图有不同的多个,会分别融合到第三模块执行上采样过程中对应的不同级别采样时输入的特征图上。
[0226]
在另一些实施例中,对于上述融合所述第二特征图的方式,未采用上述直接融合第二特征图,而是融合由第二特征图生成的亲和力图,通过该方式间接融合第二特征图。
[0227]
s340、根据生成第三图像的损失函数和生成蒙版图像的损失函数进行所述图像处理模型的训练。
[0228]
在一些实施例中,可以采用反向传播的方式进行训练,这样第二模块会传递第二模块提取的像素的特征图,或像素间的上下文关系特征至第三模块学习,训练中第三模块反向修正第二模块。其中,采用反向传播的方式进行训练时,可以采用梯度下降法进行训练。
[0229]
在一些实施例中,最终的损失函数(loss)包括第二模块的损失函数与第三模块的损失函数。其中第三模块的损失函数包括了图像级别和特征级别的损失,并加大边缘处的权重。其中以公式描述损失函数可如下:
[0230]
loss=loss_第二模块+loss_第三模块
[0231]
=seg loss+(image level loss+feature level loss)*(1+w)
[0232]
上述loss_第二模块,可为常用的图像分割网络损失函数(seg loss),如使用交叉熵loss、mse loss等不限。
[0233]
上述loss_第三模块,包括图像级别的合成损失函数(image level loss)和特征级别的合成损失函数(feature level loss)。
[0234]
其中,image level loss为预测合成图(如本申请中所述第三图像)和gt合成图的l1_loss或l2_loss。
[0235]
feature level loss为预测合成图特征和gt合成图特征的l1_loss或l2_loss。预测合成图特征和gt合成图特征可通过预训练好的特征提取器提取;
[0236]
公式中的(1+w),是表示在loss_第三模块上加大了对边缘区域的惩罚,采用对gt蒙版膨胀腐蚀的方法获取前景的边缘区域,记为w。w为一个和gt蒙版同尺寸大小的二维图像,其像素取值范围为0至1。
[0237]
其中,上述gt蒙版指人为标注的前景蒙版,其取值范围为0至1;gt合成图指用已知的gt蒙版、包含前景图(即目标对象图像)的第一图像和作为背景图的第二图像通过融合算法获得的合成图,可能需要对边缘区域再做人工调整。
[0238]
在其他一些实施例中,上述最终的损失函数(loss)的公式中未包括(1+w)部分,同样可以用于模型的训练。
[0239]
【图像处理模型的训练装置的第一实施例】
[0240]
如图4a公开了本申请提供的一种图像处理模型的训练装置的第一实施例,该图像处理模型第一模块、第二模块和/或第三模块,该训练装置包括:
[0241]
第一特征图生成单元410,用于将第一图像和第二图像输入第一模块生成第一特征图;所述第一图像中包含目标对象图像;
[0242]
蒙版图像生成单元420,用于由第二模块根据所述第一特征图生成第二特征图,并根据第二特征图生成蒙版图像;所述蒙版图像对应所述目标对象图像;
[0243]
第三图像生成单元430,用于由第三模块根据所述第一特征图和第二特征图生成第三图像;所述第三图像是包含目标对象图像与第二图像的预测合成图;
[0244]
训练单元440,用于根据生成第三图像的损失函数和生成蒙版图像的损失函数进行所述图像处理模型的训练。
[0245]
【图像处理模型的训练装置的第二实施例】
[0246]
如图4b公开了图像处理模型的训练装置的第二实施例,该实施例是基于上述图像处理模型的训练装置的第一实施例的变化,所述第二模块和第三模块分别包括至少一个反向特征提取层;所述反向特征提取层用于从低分辨率特征图还原高分辨率特征图;
[0247]
所述蒙版图像生成单元420是由第二模块的不同的反向特征提取层生成不同的第二特征图;
[0248]
还包括特征图传递模块450,用于将至少一个第二特征图传递给第三模块对应的至少一个反向特征提取层;
[0249]
所述第三图像生成单元430是由第三模块根据所述第一特征图,和其所述至少一个反向特征提取层分别收到并融合到该层原输入特征图的第二特征图来生成第三图像。
[0250]
【图像处理模型的训练装置的第三实施例】
[0251]
如图4c公开了图像处理模型的训练装置的第三实施例,该实施例是基于上述图像处理模型的训练装置的第一实施例的变化,还包括亲和力模块460,用于根据第二特征图生成对应的亲和力图;亲和力图用于表示该第二特征图中至少一个像素和其他至少一个像素的关系;
[0252]
所述第三图像生成单元430是由第三模块根据所述第一特征图和亲和力图生成所述第三图像。
[0253]
【图像处理模型的训练装置的第四实施例】
[0254]
如图4d公开了图像处理模型的训练装置的第四实施例,该实施例是基于上述图像处理模型的训练装置的第三实施例的变化,所述第二模块和第三模块分别包括至少一个反向特征提取层;由第二模块的不同的反向特征提取层生成不同的第二特征图;
[0255]
所述亲和力模块460为至少一个,用于将根据至少一个第二特征图生成对应的至少一个亲和力图;
[0256]
还包括亲和力图传递模块470,用于将所述至少一个亲和力图传递给第三模块对应的至少一个反向特征提取层;
[0257]
所述第三图像生成单元430是由第三模块根据所述第一特征图,和其所述至少一个反向特征提取层分别收到并融合到该层原输入特征图的亲和力图来生成第三图像。
[0258]
在一些实施例中,所述亲和力模块460具体用于将该第二特征图和该第二特征图的转置相乘后经激活函数运算得到所述亲和力图。
[0259]
在一些实施例中,所述第三模块的所述融合到该层原输入特征图包括:与该层的原输入特征图进行相乘,其结果再与该层的原输入特征图进行对位求和,其结果作为融合后的输入特征图;或,与该层的原输入特征图进行相乘,其结果作为融合后的输入特征图;或,与该层的原输入特征图进行对位求和,其结果作为融合后的输入特征图。
[0260]
【本申请的有益效果】
[0261]
如下表所示,在人像分割数据集上进行测试,下表分别展示了分割网络(对应本申请中由第一、第二模块构成的模型)、分割网络加合成分支(对应本申请中第一、第二、第三模块构成的模型),以及外加cab(指外加亲和力模块,对应本申请中第一、第二、第三模块,及亲和力模块构成的模型)的收益。最终在推理计算量基本不变的情况下,整体miou提升1.1%,边缘细节处提升0.9%。对应的各方法的分割结果图,可参见图5a所示。
[0262][0263][0264]
更多的可视化效果如图5b所示的人像分割可视化结果,各方案比较结果可以看出,在之前很多细节难点处的分割均有比价大的提升,如手指、带手链的有遮挡的手臂、反光强烈的头发、手持物体、耳朵等等。
[0265]
也和现有技术二的方案,即使用原始无前景的背景图输入方法做了简单对比,下表示了比较结果,从复现的效果上来看,本申请方法训练的图像模型,在边缘、小镂空等细节处有很大的优势,并且计算量小还不需要一张无人的真实背景图。从实测换背景效果看,在边缘过度上也比较自然。
[0266][0267]
图6是本申请实施例提供的一种计算设备1500的结构性示意性图。该计算设备1500包括:处理器1510、存储器1520、通信接口1530、总线1540。
[0268]
应理解,图6所示的计算设备1500中的通信接口1530可以用于与其他设备之间进行通信。
[0269]
其中,该处理器1510可以与存储器1520连接。该存储器1520可以用于存储该程序代码和数据。因此,该存储器1520可以是处理器1510内部的存储单元,也可以是与处理器1510独立的外部存储单元,还可以是包括处理器1510内部的存储单元和与处理器1510独立的外部存储单元的部件。
[0270]
可选的,计算设备1500还可以包括总线1540。其中,存储器1520、通信接口1530可以通过总线1540与处理器1510连接。总线1540可以是外设部件互连标准(peripheral component interconnect,pci)总线或扩展工业标准结构(extended industry standard architecture,eisa)总线等。所述总线1540可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条线表示,但并不表示仅有一根总线或一种类型的总线。
[0271]
应理解,在本申请实施例中,该处理器1510可以采用中央处理单元(central processing unit,cpu)。该处理器还可以是其它通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field programmable gate array,fpga)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。或者该处理器1510采用一个或多个集成电路,用于执行相关程序,以实现本申请实施例所提供的技术方案。
[0272]
该存储器1520可以包括只读存储器和随机存取存储器,并向处理器1510提供指令
和数据。处理器1510的一部分还可以包括非易失性随机存取存储器。例如,处理器1510还可以存储设备类型的信息。
[0273]
在计算设备1500运行时,所述处理器1510执行所述存储器1520中的计算机执行指令执行上述方法的操作步骤。
[0274]
应理解,根据本申请实施例的计算设备1500可以对应于执行根据本申请各实施例的方法中的相应主体,并且计算设备1500中的各个模块的上述和其它操作和/或功能分别为了实现本实施例各方法的相应流程,为了简洁,在此不再赘述。
[0275]
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
[0276]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0277]
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0278]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0279]
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
[0280]
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0281]
本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时用于执行一种多样化问题生成方法,该方法包括上述各个实施例所描述的方案中的至少之一。
[0282]
本申请实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是,但不限于,电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或
者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
[0283]
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
[0284]
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括、但不限于无线、电线、光缆、rf等等,或者上述的任意合适的组合。
[0285]
可以以一种或多种程序设计语言或其组合来编写用于执行本申请操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0286]
注意,上述仅为本申请的较佳实施例及所运用的技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明的构思的情况下,还可以包括更多其他等效实施例,均属于本发明的保护范畴。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1