CN116229066A - 人像分割模型的训练方法及相关装置 - Google Patents
人像分割模型的训练方法及相关装置 Download PDFInfo
- Publication number
- CN116229066A CN116229066A CN202310113365.4A CN202310113365A CN116229066A CN 116229066 A CN116229066 A CN 116229066A CN 202310113365 A CN202310113365 A CN 202310113365A CN 116229066 A CN116229066 A CN 116229066A
- Authority
- CN
- China
- Prior art keywords
- image
- loss function
- human body
- training
- layer
- 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 221
- 238000000034 method Methods 0.000 title claims abstract description 106
- 238000012549 training Methods 0.000 title claims abstract description 106
- 230000006870 function Effects 0.000 claims description 214
- 238000007781 pre-processing Methods 0.000 claims description 45
- 230000004913 activation Effects 0.000 claims description 36
- 230000015654 memory Effects 0.000 claims description 27
- 238000005065 mining Methods 0.000 claims description 25
- 230000004927 fusion Effects 0.000 claims description 23
- 238000000605 extraction Methods 0.000 claims description 22
- 238000004422 calculation algorithm Methods 0.000 claims description 19
- 238000010606 normalization Methods 0.000 claims description 17
- 238000010586 diagram Methods 0.000 claims description 14
- 230000001174 ascending effect Effects 0.000 claims description 4
- 230000010339 dilation Effects 0.000 claims description 3
- 238000011156 evaluation Methods 0.000 claims description 3
- 238000012545 processing Methods 0.000 abstract description 16
- 238000013528 artificial neural network Methods 0.000 description 30
- 238000003709 image segmentation Methods 0.000 description 27
- 239000011159 matrix material Substances 0.000 description 14
- 230000008569 process Effects 0.000 description 10
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 6
- 230000009466 transformation Effects 0.000 description 6
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 5
- 238000001514 detection method Methods 0.000 description 5
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 210000002569 neuron Anatomy 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 241000282326 Felis catus Species 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 210000003423 ankle Anatomy 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 239000003086 colorant Substances 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 210000003127 knee Anatomy 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 210000000707 wrist Anatomy 0.000 description 2
- 241001465754 Metazoa Species 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000005452 bending Methods 0.000 description 1
- 210000004027 cell Anatomy 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 239000012535 impurity Substances 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 230000003278 mimic effect Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000013598 vector Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/26—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/34—Smoothing or thinning of the pattern; Morphological operations; Skeletonisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/80—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
- G06V10/806—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of extracted features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Image Analysis (AREA)
Abstract
本申请实施例涉及图像处理技术领域,公开了一种人像分割模型的训练方法及相关装置,该人像分割模型包括数据预处理模块、四输入编码模块和解码模块,该训练方法通过基于损失函数与在线难例挖掘策略对人像分割模型进行训练,该损失函数包括均方差损失函数和交叉熵损失函数,使得四输入编码模块对人体特征信息图像进行特征提取和融合,并将得到的特征图像作用于解码模块,得到主体目标高精度分割图,从而使得本申请能够提高人像分割的稳定性和准确性。
Description
技术领域
本申请实施例涉及图像处理技术领域,特别是涉及一种人像分割模型的训练方法及相关装置。
背景技术
随着消费者对在线试衣的需求日渐强烈,虚拟试衣也成为现代计算机视觉领域的重要的方向。目前线下智能试装多采用的是互动试衣镜设备,购物者站在试衣镜前选择试穿服装,试衣镜会根据用户的基本特征和服装款式进行整体的着装展示;线上试装一般通过拍摄用户图像,选择系统提供的目标服饰,进行自动替换。
无论是智能试衣镜还是线上虚拟试装,现有技术大多通过采集人体数据经三维建模的方式重塑用户形象。然而在现实场景的拍照过程中,图像里往往会有多个人体目标出现,而只有其中的主体目标是需要获取的,其它人体目标的存在会导致虚拟试衣无法完成。
现有技术通常采用基于像素差值二值化的分割算法或者基于卷积网络的生成模型对图像进行分割以提取图像中的主体目标,然而这两种方法都会分割全部的前景目标,残留相近颜色的人体或杂物,无法实现精准保留图像中的主体目标。
发明内容
本申请实施例旨在提供一种人像分割模型的训练方法及相关装置,以提高人像分割的稳定性和准确性。
本申请实施例提供以下技术方案:
第一方面,本申请实施例提供一种人像分割模型的训练方法,该人像分割模型包括数据预处理模块、四输入编码模块和解码模块,该方法包括:
获取图像数据集,其中,图像数据集包括多个目标的人物图像;
基于数据预处理模块,对每一人物图像进行数据预处理,以得到每一人物图像对应的人体特征信息图像;
基于四输入编码模块,对人体特征信息图像进行特征提取和融合,以得到特征图像;
基于解码模块,对特征图像进行解码,以得到主体目标高精度分割图;
构建损失函数,基于损失函数与在线难例挖掘策略对人像分割模型进行训练,直至损失函数收敛,其中,损失函数包括均方差损失函数和交叉熵损失函数。
在一些实施例中,数据预处理模块包括人体高精度分割网络和人体实例分割网络;
人体特征信息图像包括人体高精度分割图和人体实例分割图;
基于数据预处理模块,对每一人物图像进行数据预处理,以得到每一人物图像对应的人体特征信息图像,包括:
基于人体高精度分割网络对每一人物图像进行人像轮廓特征提取,得到每一人物图像对应的人体高精度分割图;
基于人体实例分割网络对每一人体高精度分割图进行分割,得到每一人体高精度分割图对应的人体实例分割图。
在一些实施例中,人体特征信息图像还包括人体关键点图像;
基于数据预处理模块,对每一人物图像进行数据预处理,以得到每一人物图像对应的人体特征信息图像,还包括:
通过人体姿态评估算法对每一人物图像进行检测,得到每一人物图像对应的人体关键点图像。
在一些实施例中,基于四输入编码模块,对人体特征信息图像进行特征提取和融合,以得到特征图像,包括:
基于四输入编码模块,对每一人物图像与人物图像对应的人体关键点图像、人体高精度分割图、人体实例分割图进行特征提取和融合,以得到特征图像,其中,四输入编码模块包括扩张卷积层、卷积层、激活函数层和批归一化层。
在一些实施例中,四输入编码模块包括:
其中,表示第x+1层的第i个特征图像,BN表示批归一化操作,表示Swish激活函数,/> 表示Relu激活函数,Fix表示第x层的第i个特征图像,Gix+1表示第x+1层的扩张卷积核,/>表示第x+1层的标准卷积核,/>表示偏置项。
在一些实施例中,解码模块包括转置卷积层、激活函数层和批归一化层;
损失函数包括:
Loss=LMSE+λ1LBCE
其中,Loss表示损失函数,LMSE表示均方差损失函数,λ1表示超参数,LBCE表示交叉熵损失函数。
在一些实施例中,均方差损失函数包括:
在一些实施例中,交叉熵损失函数,包括:
其中,LBCE表示交叉熵损失函数,n表示样本数量,yi表示第i个真实样本的分类标签,pi表示第i个预测样本的分类标签。
在一些实施例中,基于损失函数与在线难例挖掘策略对人像分割模型进行训练,直至损失函数收敛,包括:
获取每一批次的样本,其中,样本包括人物图像;
计算当前批次的每一样本的损失函数值;
根据损失函数值,对当前批次的全部样本进行排序,确定当前批次的困难样本;
基于困难样本,对人像分割模型进行训练;
保存每次训练的损失函数值;
当迭代次数大于预设次数时,对当前训练得到的损失函数值与已保存的损失函数值进行升序排列;
若当前训练得到的损失函数值的排序名次大于预设序列值,则损失函数收敛。
第二方面,本申请实施例提供一种人物图像的分割方法,包括:
获取待分割的人物图像;
将待分割的人物图像输入人像分割模型,得到待分割的人物图像对应的主体目标高精度分割图,其中,人像分割模型是基于第一方面的人像分割模型的训练方法进行训练得到的。
第三方面,本申请实施例提供一种电子设备,包括:
至少一个处理器,以及
与至少一个处理器通信连接的存储器,其中,
存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行第一方面的人像分割模型的训练方法或第二方面的人物图像的分割方法。
第四方面,本申请实施例提供一种非易失性计算机可读存储介质,非易失性计算机可读存储介质存储有计算机可执行指令,计算机可执行指令用于使电子设备执行第一方面的人像分割模型的训练方法或第二方面的人物图像的分割方法。
本申请实施例的有益效果:区别于现有技术的情况,本申请实施例提供一种人像分割模型的训练方法,该人像分割模型包括数据预处理模块、四输入编码模块和解码模块,该方法包括:获取图像数据集,其中,图像数据集包括多个目标的人物图像;基于数据预处理模块,对每一人物图像进行数据预处理,以得到每一人物图像对应的人体特征信息图像;基于四输入编码模块,对人体特征信息图像进行特征提取和融合,以得到特征图像;基于解码模块,对特征图像进行解码,以得到主体目标高精度分割图;构建损失函数,基于损失函数与在线难例挖掘策略对人像分割模型进行训练,直至损失函数收敛,其中,损失函数包括均方差损失函数和交叉熵损失函数。
通过基于损失函数与在线难例挖掘策略对人像分割模型进行训练,该损失函数包括均方差损失函数和交叉熵损失函数,使得四输入编码模块对人体特征信息图像进行特征提取和融合,并将得到的特征图像作用于解码模块,得到主体目标高精度分割图,从而使得本申请能够提高人像分割的稳定性和准确性。
附图说明
一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
图1是本申请实施例提供的一种应用环境的示意图;
图2是本申请实施例提供的一种电子设备的结构示意图;
图3是本申请实施例提供的一种人像分割模型的训练方法的流程示意图;
图4是图3中的步骤S302的细化流程示意图:
图5是图3中的步骤S302的另一细化流程示意图:
图6是图3中的步骤S303的细化流程示意图:
图7是本申请实施例提供的一种获得主体目标高精度分割图的示意图:
图8是图3中的步骤S305的细化流程示意图:
图9是本申请实施例提供的一种人物图像的分割方法的流程示意图;
图10是本申请实施例提供的一种人像分割模型的训练装置的结构示意图。
具体实施方式
下面结合具体实施例对本申请进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本申请,但不以任何形式限制本申请。应当指出的是,对本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进。这些都属于本申请的保护范围。
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。
需要说明的是,如果不冲突,本申请实施例中的各个特征可以相互结合,均在本申请的保护范围之内。另外,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。此外,本文所采用的“第一”、“第二”、“第三”等字样并不对数据和执行次序进行限定,仅是对功能和作用基本相同的相同项或相似项进行区分。
除非另有定义,本说明书所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本说明书中在本申请的说明书中所使用的术语只是为了描述具体的实施方式的目的,不是用于限制本申请。本说明书所使用的术语“和/或”包括一个或多个相关的所列项目的任意的和所有的组合。
此外,下面所描述的本申请各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
在介绍本申请实施例前,先对本申请发明人所知晓的人像分割方法进行简单介绍,使得后续便于理解本申请实施例。
在一些人像分割方法中,采用基于像素差值二值化分割的方法:根据人像分割模型生成结果将图片划分为背景区、待确定区和前景区;对待确定区采用颜色梯度分析,确定待确定区每一个像素属于前景区还是背景区;将图片放大至与原始图片大小匹配,再进行二值化与滤波,得到处理后的图片数据。
在一些人像分割方法中,采用基于卷积网络的生成模型对图像中的人像目标进行分割。
然而本申请发明人所知晓的技术,无论是基于像素差值二值化分割还是基于卷积网络的生成模型对图像进行分割,都会保留全部的人像目标轮廓,而且会残留相近颜色的杂物,无法精准地保留主体目标,从而无法完成虚拟试衣操作,缺乏一定的实用性。
针对上述问题,本申请实施例提供一种人像分割模型的训练方法,该人像分割模型包括数据预处理模块、四输入编码模块和解码模块,该方法包括:获取图像数据集,其中,图像数据集包括多个目标的人物图像;基于数据预处理模块,对每一人物图像进行数据预处理,以得到每一人物图像对应的人体特征信息图像;基于四输入编码模块,对人体特征信息图像进行特征提取和融合,以得到特征图像;基于解码模块,对特征图像进行解码,以得到主体目标高精度分割图;构建损失函数,基于损失函数与在线难例挖掘策略对人像分割模型进行训练,直至损失函数收敛,其中,损失函数包括均方差损失函数和交叉熵损失函数。
通过基于损失函数与在线难例挖掘策略对人像分割模型进行训练,该损失函数包括均方差损失函数和交叉熵损失函数,使得四输入编码模块对人体特征信息图像进行特征提取和融合,并将得到的特征图像作用于解码模块,得到主体目标高精度分割图,使得本申请能够精准保留图像中的主体目标,去除其余的人体和杂物的残留,从而提高人像分割的稳定性和准确性。
在本申请实施例中,该人像分割模型的训练方法和人物图像的分割方法可以由具有计算处理能力的电子设备执行,下面说明本申请实施例提供的用于训练人像分割模型或用于分割人物图像的电子设备的示例性应用,可以理解的是,电子设备既可以训练人像分割模型,也可以采用该人像分割模型对人物图像进行分割。
在本申请实施例中,该电子设备可以是服务器,例如部署在云端的服务器。当服务器用于训练人像分割模型时,根据其他设备或者本领域技术人员提供的图像数据集、数据预处理模块、四输入编码模块和解码模块等构建人像分割模型,并采用损失函数与在线难例挖掘策略对该人像分割模型进行迭代训练,以确定最终的模型参数。当服务器用于分割人物图像时,调用内置的人像分割模型,对其他设备或者用户提供的待分割的人物图像,进行相应的处理,得到该待分割的人物图像对应的主体目标高精度分割图。
在本申请实施例中,该电子设备还可以是笔记本电脑、台式计算机或移动设备等各种类型的终端。当终端用于训练人像分割模型时,本领域技术人员将准备好的图像数据集输入终端,在终端上设计数据预处理模块、四输入编码模块和解码模块,并构建损失函数,以使终端采用损失函数与在线难例挖掘策略对该人像分割模型进行迭代训练,以确定最终的模型参数。当终端用于分割人物图像时,调用内置的人像分割模型,对用户输入的待分割的人物图像,进行相应的处理,得到该待分割的人物图像对应的主体目标高精度分割图。
在对本申请进行详细说明之前,对本申请实施例中涉及的名词和术语进行说明,本申请实施例中涉及的名词和术语适用于如下的解释:
(1)神经网络,也简称为神经网络(NNs)或称作连接模型(Connection Model),它是一种模仿动物神经网络行为特征,进行分布式并行信息处理的算法数学模型。神经网络依靠系统的复杂程度,通过调整内部大量节点之间相互连接的关系,从而达到处理信息的目的。具体的,神经网络可以是由神经单元组成的,具体可以理解为具有输入层、隐含层、输出层的神经网络,一般来说第一层是输入层,最后一层是输出层,中间的层数都是隐含层。其中,具有很多层隐含层的神经网络则称为深度神经网络(deep neural network,DNN)。神经网络中的每一层的工作可以用数学表达式y=a(W·x+b)来描述,从物理层面,神经网络中的每一层的工作可以理解为通过五种对输入空间(输入向量的集合)的操作,完成输入空间到输出空间的变换(即矩阵的行空间到列空间),这五种操作包括:1、升维/降维;2、放大/缩小;3、旋转;4、平移;5、“弯曲”。其中1、2、3的操作由“W·x”完成,4的操作由“+b”完成,5的操作则由“a()”来实现这里之所以用“空间”二字来表述是因为被分类的对象并不是单个事物,而是一类事物,空间是指这类事物所有个体的集合,其中,W是神经网络各层的权重矩阵,该矩阵中的每一个值表示该层的一个神经元的权重值。该矩阵W决定着上文的输入空间到输出空间的空间变换,即神经网络每一层的W控制着如何变换空间。训练神经网络的目的,也就是最终得到训练好的神经网络的所有层的权重矩阵。因此,神经网络的训练过程本质上就是学习控制空间变换的方式,更具体的就是学习权重矩阵。
需要注意的是,在本申请实施例中,基于机器学习任务所采用的模型,本质都是神经网络。神经网络中的常用组件有卷积层、扩张卷积层、激活函数层和批归一化层等,通过组装神经网络中的这些常用组件,设计得到模型,当确定模型参数(各层的权重矩阵)使得模型误差满足预设条件或调整模型参数的数量达到预设阈值时,模型收敛。
其中,卷积层配置有多个卷积核、每个卷积核设置有对应的步长,以对图像进行卷积运算。卷积运算的目的是提取输入图像的不同特征,第一层卷积层可能只能提取一些低级的特征如边缘、线条和角等层级,更深的卷积层能从低级特征中迭代提取更复杂的特征。
扩张卷积层通过在标准的卷积核中注入空洞,以此增加模型的感受野。扩张卷积层配置有扩张卷积核,既保证卷积神经网络的参数数量不发生增长,同时让感受野指数式的扩大。相比于卷积层,扩张卷积层多了一个参数:扩张系数,又称为扩张率,其定义了扩张卷积核中值之间的间距。
激活函数层用于使神经网络中的每个神经元接受上一层的输出值作为本神经元的输入值,并将处理结果传递给下一层。激活函数层常用的激活函数包括但不限于修正线性单位(Rectified Linear Unit,Relu)函数、Swish函数、带参数的修正线性单位(ParametricRectified Linear Unit,PRelu)函数等。
批归一化层(Batch Normalization,BN层),用于对网络中某层特征进行标准化处理,其目的是解决深层神经网络中的数值不稳定的问题,即解决随着网络层数加深,训练过程中参数的更新容易造成靠近输出层的特征输出产生剧烈地变化,不利于训练出有效的神经网络的问题。
(2)损失函数,指的是是将随机事件或其有关随机变量的取值映射为非负实数以表示该随机事件的“风险”或“损失”的函数。损失函数是一个非负实数函数,用来量化模型预测的预测标签和真实标签之间的差异。在应用中,损失函数通常作为学习准则与优化问题相联系,即通过最小化损失函数求解和评估模型。例如在统计学和机器学习中被用于模型的参数估计(parametric estimation)。在训练神经网络的过程中,因为希望神经网络的输出尽可能的接近真正想要预测的值,可以通过比较当前网络的预测值和真正想要的目标值,再根据两者之间的差异情况来更新每一层神经网络的权重矩阵(然,在第一次更新之前通常会有初始化的过程,即为神经网络中的各层预先配置参数),比如,如果网络的预测值高了,就调整权重矩阵让它预测低一些,不断的调整,直到神经网络能够预测出真正想要的目标值。因此,就需要预先定义“如何比较预测值和目标值之间的差异”,这便是损失函数(loss function)或目标函数(objective function),它们是用于衡量预测值和目标值的差异的重要方程。其中,以损失函数举例,损失函数的输出值(loss)越高表示差异越大,那么神经网络的训练就变成了尽可能缩小这个loss的过程。
下面结合说明书附图具体阐述本申请的技术方案。
请参阅图1,图1是本申请实施例提供的一种应用环境的示意图;
如图1所示,该应用环境100,包括:电子设备10以及服务器20,其中,电子设备10通过网络通信连接服务器20,其中,该网络包括有线网络和/或无线网络。可以理解的是,该网络包括2G、3G、4G、5G、无线局域网、蓝牙等无线网络,也可以包括串口线、网线等有线网络。
在本申请实施例中,该电子设备10,通信连接该服务器20,用于获取图像数据集、构建数据预处理模块、四输入编码模块和解码模块,例如,本领域技术人员可以在电子设备上下载包括多个目标的人物图像,以及,构建数据预处理模块、四输入编码模块和解码模块。可以理解的是,该电子设备10也可以被用来获取待分割的人物图像,例如,用户通过输入界面输入待分割的人物图像,输入完成后,电子设备自动获取待分割的人物图像;例如,该电子设备10具备摄像头,通过摄像头采集人物图像,或者,该电子设备10内存储有人物图像库,用户可以从人物图像库中选择待分割的人物图像。本申请实施例的电子设备包括但不限于:笔记本电脑、台式计算机或移动设备等各种具有计算处理能力的终端。优选地,该电子设备为智能手机。
在本申请实施例中,该服务器20,通信连接电子设备10,用于训练人像分割模型,或者,获取电子设备10发送的用户在电子设备10上输入的待分割的人物图像,并调用内置的人像分割模型对待分割的人物图像,进行相应的处理,得到该待分割的人物图像对应的主体目标高精度分割图,然后将主体目标高精度分割图发送给电子设备10。该服务器20的数量也可以为多个,多个服务器可构成服务器集群,例如:该服务器集群包括:第一服务器、第二服务器,…,第N服务器,或者,该服务器集群可以是一个云计算服务中心,该云计算服务中心包括若干台服务器。本申请实施例中的服务器包括但不限于:塔式服务器、机架式服务器、刀片式服务器、云服务器。优选地,该服务器为云服务器(Elastic Compute Service,ECS)。
可以理解的是,在本申请实施例中,该电子设备10还用于在接收到服务器发送的主体目标高精度分割图后,将主体目标高精度分割图显示在自身的显示界面上,以告知用户,或者,本地执行本申请实施例提供的人像分割模型的训练方法或人物图像的分割方法。
实施例一
请参阅图2,图2是本申请实施例提供的一种电子设备的结构示意图;
如图2所示,该电子设备200包括一个或多个处理器201以及存储器202。其中,图2中以一个处理器201为例。
处理器201和存储器202可以通过总线或者其他方式连接,图2中以通过总线连接为例。
处理器201,用于提供计算和控制能力,以控制电子设备200执行相应任务,例如,控制电子设备200执行下述任一方法实施例中的人像分割模型的训练方法,包括:获取图像数据集,其中,图像数据集包括多个目标的人物图像;基于数据预处理模块,对每一人物图像进行数据预处理,以得到每一人物图像对应的人体特征信息图像;基于四输入编码模块,对人体特征信息图像进行特征提取和融合,以得到特征图像;基于解码模块,对特征图像进行解码,以得到主体目标高精度分割图;构建损失函数,基于损失函数与在线难例挖掘策略对人像分割模型进行训练,直至损失函数收敛,其中,损失函数包括均方差损失函数和交叉熵损失函数。
或者,控制电子设备200执行下述任一方法实施例中的人物图像的分割方法,包括:获取待分割的人物图像;将待分割的人物图像输入人像分割模型,得到待分割的人物图像对应的主体目标高精度分割图,其中,人像分割模型是基于下述任一实施例中的人像分割模型的训练方法进行训练得到的。
处理器201可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)、硬件芯片或者其任意组合;还可以是数字信号处理器(Digital Signal Processing,DSP)、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、可编程逻辑器件(programmable logic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complex programmable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gate array,FPGA),通用阵列逻辑(genericarray logic,GAL)或其任意组合。
存储器202作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态性计算机可执行程序以及模块,如本申请实施例中的人像分割模型的训练方法或者人物图像的分割方法对应的程序指令/模块。处理器201通过运行存储在存储器202中的非暂态软件程序、指令以及模块,可以实现下述任一方法实施例中的人像分割模型的训练方法或者人物图像的分割方法。具体地,存储器202可以包括易失性存储器(volatile memory,VM),例如随机存取存储器(random access memory,RAM);存储器202也可以包括非易失性存储器(non-volatile memory,NVM),例如只读存储器(read-only memory,ROM),快闪存储器(flash memory),硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD)或其他非暂态固态存储器件;存储器202还可以包括上述种类的存储器的组合。
存储器202可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器202可选包括相对于处理器201远程设置的存储器,这些远程存储器可以通过网络连接至处理器201。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
一个或者多个模块存储在存储器202中,当被一个或者多个处理器201执行时,执行下述任意方法实施例中的人像分割模型的训练方法或者人物图像的分割方法,例如,执行以下描述的图3所示的各个步骤,或者,执行以下描述的图10所示的各个步骤。
在本申请实施例中,电子设备200还可以具有有线或无线网络接口、输入输出接口等部件,以便进行输入输出,电子设备200还可以包括其他用于实现设备功能的部件,在此不做赘述。
下面结合本申请实施例提供的电子设备的示例性应用和实施,说明本申请实施例提供的人像分割模型的训练方法。
请参阅图3,图3是本申请实施例提供的一种人像分割模型的训练方法的流程示意图;
其中,该人像分割模型的训练方法,应用于电子设备,例如:终端、服务器,具体的,该人像分割模型的训练方法的执行主体为电子设备中的一个或至少两个处理器,下面以服务器为例说明该人像分割模型的训练方法;
具体的,该人像分割模型包括数据预处理模块、四输入编码模块和解码模块。
如图3所示,该人像分割模型的训练方法,包括:
步骤S301:获取图像数据集;
具体的,图像数据集包括多个目标的人物图像,其中,每一目标为一个人物,在图像数据集的总样本中至少60%的人物图像是每张图像至少包括两个人物,20%的人物图像是每张图像至少包括3个人物,每一人物图像的大小要求在1024*1024以上。
具体的,通过电子设备从互联网上下载包括多个目标的人物图像组成图像数据集,其中,该图像数据集包括的人物图像的数量可以为万级,例如可以为20000,也可以由本领域技术人员根据实际情况确定人物图像的数量。
步骤S302:基于数据预处理模块,对每一人物图像进行数据预处理,以得到每一人物图像对应的人体特征信息图像;
具体的,数据预处理模块包括人体高精度分割网络和人体实例分割网络,人体特征信息图像包括人体高精度分割图和人体实例分割图。
请参阅图4,图4是图3中的步骤S302的细化流程示意图:
如图4所示,步骤S302:基于数据预处理模块,对每一人物图像进行数据预处理,以得到每一人物图像对应的人体特征信息图像,包括:
步骤S3021:基于人体高精度分割网络对每一人物图像进行人像轮廓特征提取,得到每一人物图像对应的人体高精度分割图;
具体的,人体高精度分割网络用于对每一人物图像中的所有人物进行总体人像轮廓特征提取,得到每一人物图像对应的人体高精度分割图,其中,人体高精度分割图包括总体人体轮廓掩膜,总体人体轮廓掩膜用于确定一张人物图像中的所有人物的总体轮廓。
具体的,人体高精度分割网络包括U2-NET网络,U2-NET网络是一个两层嵌套的U型结构,其在底层设计了一种新的U型残差块(ReSidual U-blocks,RSU)结构,并在顶层设计了一种类似U-Net的结构,其中每一级都由RSU填充,RSU用U-Net代替了普通的单流卷积,并用一个权重层构成的局部特征代替了原始特征,这种设计变化使网络能够直接从每个残差块的多个尺度中提取特征。
具体的,U2-Net网络由三部分构成:六级编码器、五级解码器、显著图融合模块,显著图融合模块与解码器和最后一级编码器相连。其中,六级编码器包括:En_1、En_2、En_3、En_4、En_5和En_6,五级解码器包括:De_1、De_2、De_3、De_4和De_5。
其中,在编码器En_1,En_2,En_3和En_4中,分别使用RSU-7、RSU-6、RSU-5、RSU-4的RSU结构。前面的数字如7、6、5、4是RSU的高度L。L通常根据输入特征图的空间分辨率进行配置。在En_5和En_6中,特征图的分辨率相对较低,进一步对这些特征图进行下采样会导致有用上下文的丢失。因此,在RSU-5和RSU-6阶段,使用RSU-4F,其中F表示RSU是一个扩展的版本,用扩展卷积来代替合并和上采样操作。这意味着RSU-4F的所有中间特征图都与其输入的特征图具有相同的分辨率。
其中,解码阶段具有与En_6中对称编码阶段相似的结构。在De_5中,还使用了扩展板的RSU-4F,这与在编码阶段En_5,En_6中使用的类似,每个解码器阶段将来自前一级的上采样特征映射和来自其对称编码器阶段的特征映射的级联作为输入。
其中,显著图融合模块用于生成显著概率映射图。U2-NET网络首先通过3x3卷积和Sigmoid函数从En_6,De_5,De_4,De_3,De_2和De_1生成6个输出显著概率图,然后将输出的显著图的逻辑图(卷积输出,Sigmoid函数之前)向上采样至与输入图像大小一致,并通过级联操作相融合,然后通过1x1卷积层和一个Sigmoid函数,以生成最终的显著性概率映射图,即人物图像对应的人体高精度分割图。
在本申请实施例中,通过采用U2-NET网络作为人体高精度分割网络,本申请能够融合不同尺度的感受野的特征,捕捉更多的上下文信息,并且能够在没有显著增加计算成本的条件下增加整个架构的深度。
步骤S3022:基于人体实例分割网络对每一人体高精度分割图进行分割,得到每一人体高精度分割图对应的人体实例分割图。
具体的,人体实例分割网络用于对每一人体高精度分割图中的总体人体轮廓掩膜进行分割,区分出每一人物各自的人体轮廓掩膜区域,从而得到每一人体高精度分割图对应的人体实例分割图,其中,人体实例分割图包括每一人物各自的人体轮廓掩膜区域。
具体的,人体实例分割网络包括自由检测人体实例分割(Detection Free HumanInstance Segmentation,Pose2Seg)网络,Pose2Seg网络是一种基于姿势的人体实例分割框架,可以获得更好的准确性并且可以更好地处理遮挡。
Pose2Seg网络主要由仿射对齐(Affine-Align)模块、骨架特征(Skeletonfeatures)提取模块和分段模块(SegModule)三部分组成。其中,仿射对齐模块用于基于人物姿态执行仿射变换,以将每个姿势对齐为统一大小;骨架特征提取模块用于进行身体关节点检测,并将关节点进行连接,得到图像中每个实例的骨架特征;分段模块用于对图中的每个人体进行分割。
具体的,Pose2Seg网络将具有人体姿态的图像作为输入,用基础网络提取特征,通过仿射变换将姿势对齐为统一大小,同时为图中的每个人体生成骨架特征,然后基于姿势和骨架特征对图中每个人体进行分割,最后通过仿射变换矩阵对图中人物反转对齐,得到最终分割结果,即人体高精度分割图对应的人体实例分割图。
请参阅图5,图5是图3中的步骤S302的另一细化流程示意图:
在本申请实施例中,人体特征信息图像还包括人体关键点图像。
如图5所示,步骤S302:基于数据预处理模块,对每一人物图像进行数据预处理,以得到每一人物图像对应的人体特征信息图像,还包括:
步骤S3023:通过人体姿态评估算法对每一人物图像进行检测,得到每一人物图像对应的人体关键点图像。
具体的,人体姿态评估算法包括但不限于人体骨骼关键点检测(OpenPose)算法。优选地,在本申请实施例中采用OpenPose算法。
具体的,OpenPose算法是依赖于卷积神经网络和监督学习实现人体姿态评估的算法,其主要的优点在于适用于多人二维姿态检测开源实时系统,能够精准和迅速地识别人体关键点。
具体的,OpenPose算法将整个人物图像作为网络的输入,然后预测用于身体部位检测的置信度图和用于部位关联的部件关联场(Part Affinity Fields,PAF),之后通过解析步骤对关联的身体部位候选者执行一组二部匹配,最后进行人体骨骼搭建以连接人体关键点并将它们组装成图像中所有人的完整姿势,得到每一人物图像对应的人体关键点图像。
其中,人体关键点总共分成25类,每一类别分别用0-24进行标识,人体关键点的类别有:{0,“鼻子(Nose)”},{1,“脖子(Neck)”},{2,“右上臂(RShoulder)”},{3,“右肘部(RElbow)”},{4,“右手腕(RWrist)”},{5,“左上臂(LShoulder)”},{6,“左肘部(LElbow)”},{7,“左手腕(LWrist)”},{8,“中臀(MidHip)”},{9,“右臀(RHip)”},{10,“右膝(RKnee)”},{11,“右脚踝(Rankle)”},{12,“左臀(Lhip)”},{13,“左膝(LKnee)”},{14,“左脚踝(LAnkle)”},{15,“右眼睛(Reye)”},{16,“左眼睛(Leye)”},{17,“右耳(Rear)”},{18,“左耳(Lear)”},{19,“左大脚趾(LBigToe)”},{20,“左小脚趾(LSmallToe)”},{21,“左脚后跟(LHeel)”},{22,“右大脚趾(RBigToe)”},{23,“右小脚趾(RSmallToe)”}{24,“右脚后跟(Rheel)”}。
步骤S303:基于四输入编码模块,对人体特征信息图像进行特征提取和融合,以得到特征图像;
具体的,人体特征信息图像包括人体关键点图像、人体高精度分割图和人体实例分割图,每一人物图像对应一个人体关键点图像、一个人体高精度分割图和一个人体实例分割图。
请参阅图6,图6是图3中的步骤S303的细化流程示意图:
如图6所示,步骤S303:基于四输入编码模块,对人体特征信息图像进行特征提取和融合,以得到特征图像,包括:
步骤S3031:基于四输入编码模块,对每一人物图像与人物图像对应的人体关键点图像、人体高精度分割图、人体实例分割图进行特征提取和融合,以得到特征图像。
具体的,四输入编码模块是以U-net网络模块为基础,以人物图像与人物图像对应的人体关键点图像、人体高精度分割图、人体实例分割图为四个输入图像,以一个特征图像作为输出的卷积神经网络。其中,U-net网络模块是一个用于二维图像分割的卷积神经网络,在下采样阶段和上采样阶段采用了相同数量层次的卷积操作,网络结构中只有卷积层和池化层,没有全连接层,网络中较浅的高分辨率层用来解决像素定位的问题,较深的层用来解决像素分类的问题,从而可以实现图像语义级别的分割。
具体的,四输入编码模块包括扩张卷积层、卷积层、激活函数层和批归一化层,对应的数学表达公式如下:
其中,表示第x+1层的第i个特征图像,BN表示批归一化操作,/>表示Swish激活函数,/> 表示Relu激活函数,Fix表示第x层的第i个特征图像,Gix+1表示第x+1层的扩张卷积核,/>表示第x+1层的标准卷积核,/>表示偏置项。
具体的,四输入编码模块包括四个编码模块和一个融合模块,每一编码模块包括:第一扩张卷积层(扩张卷积核的个数为32)、第一卷积层(标准卷积核的个数为32)、第一激活函数层、第一批归一化层、第二扩张卷积层(扩张卷积核的个数为64)、第二卷积层(标准卷积核的个数为64)、第二激活函数层、第二批归一化层、第三扩张卷积层(扩张卷积核的个数为128)、第三卷积层(标准卷积核的个数为128)、第三激活函数层、第三批归一化层、第四扩张卷积层(扩张卷积核的个数为256)、卷积层(标准卷积核的个数为256)、第四激活函数层、第四批归一化层、第五扩张卷积层(扩张卷积核的个数为512)、第五卷积层(标准卷积核的个数为512)、第五激活函数层、第五批归一化层、第六扩张卷积层(扩张卷积核的个数为1024)、第六卷积层(标准卷积核的个数为1024)、第六激活函数层、第六批归一化层。
其中,每一编码模块的每一扩张卷积层的扩张卷积核的大小为5*5,扩张系数为2,步长为2;每一编码模块的每一卷积层的标准卷积核的大小为3*3,步长为2;激活函数层采用的激活函数包括Swish激活函数和Relu激活函数;每一编码模块采用的卷积(padding)策略均为相同(same)模式,以使输出大小尽可能与输入大小成比例,其中,same模式即先对原图像进行填充,再做卷积,填充值须根据卷积核大小及滑动步长决定。
在本申请实施例中,通过加入扩张卷积层,本申请能够更好地获取图像的空间特征。
进一步地,四个编码模块分别对四个输入图像进行特征提取,得到四个8*8*1024大小的特征图,其中,一个编码模块仅对一个输入图像进行特征提取,得到一个特征图。然后融合模块通过拼接函数对四个8*8*1024大小的特征图进行连接操作,得到一个8*8*4096大小的特征图像。其中,拼接函数可以采用在基于计算机编程语言(Python)的科学计算软件包(pytorch)中的拼接函数torch.cat(输入,拼接维数),拼接函数torch.cat能够在给定维度上对输入的张量序列进行连接操作,括号内的参数:输入(inputs)表示待连接的张量序列,拼接维数(dim)表示选择的扩维数值,即可沿着此维连接张量序列。
在本申请实施例中,通过基于四输入编码模块对人体特征信息图像进行特征提取和融合,得到特征图像,本申请能够分别提取每一人物图像以及人物图像对应的人体关键点图像、人体高精度分割图、人体实例分割图中的特征信息并进行融合,提高人像分割的稳定性和准确性。
步骤S304:基于解码模块,对特征图像进行解码,以得到主体目标高精度分割图;
具体的,解码模块用于对特征图像进行解码,得到主体目标高精度分割图,其中,主体目标高精度分割图包括主体目标的人物高精度掩膜。解码模块是以四输入编码模块输出的8*8*4096大小的特征图像作为输入,以1024*1024*1大小的灰度图像作为输出的卷积神经网络,包括转置卷积层、激活函数层和批归一化层。
具体的,解码模块包括第一转置卷积层(卷积核的个数为2048)、第一激活函数层、第一批归一化层、第二转置卷积层(卷积核的个数为1024)、第二激活函数层、第二批归一化层、第三转置卷积层(卷积核的个数为512)、第三激活函数层、第三批归一化层、第四转置卷积层(卷积核的个数为256)、第四激活函数层、第四批归一化层、第五转置卷积层(卷积核的个数为128)、第五激活函数层、第五批归一化层、第六转置卷积层(卷积核的个数为32)、第六激活函数层、第六批归一化层、第七转置卷积层(卷积核的个数为1)、第七激活函数层、第七批归一化层。其中,每一转置卷积层的卷积核大小为3*3,步长为2,激活函数层采用的激活函数包括PRelu激活函数。
请参阅图7,图7是本申请实施例提供的一种获得主体目标高精度分割图的示意图:
如图7所示,人物图像与对应的人体关键点图像、人体高精度分割图、人体实例分割图经过四输入编码模块与解码模块后输出主体目标高精度分割图。其中,四输入编码模块包括四个编码模块和一个融合模块。
步骤S305:构建损失函数,基于损失函数与在线难例挖掘策略对人像分割模型进行训练,直至损失函数收敛。
具体的,构建损失函数,该损失函数与在线难例挖掘策略用于对人像分割模型进行训练,调整人像分割模型的参数,直至损失函数收敛,将此时的人像分割模型作为训练完成的人像分割模型。
具体的,在线难例挖掘(Online Hard Example Mining,OHEM)策略用于自动选择困难样本作为训练的样本从而改善网络参数效果,其中,困难样本指的是有多样性和高损失的样本,也可以理解为,同一个训练集样本数量(batch size)里面,难学的样本(模型难以区分的样本)就是困难样本。OHEM策略具有如下优点:对于数据的类别不平衡问题不需要采用设置正负样本比例的方式来解决,这种在线选择方式针对性更强;当数据集增大,算法可以在原来基础上提升更大。
具体的,损失函数包括均方差损失函数和交叉熵损失函数,损失函数可由如下公式表示:
Loss=LMSE+λ1LBCE
其中,Loss表示损失函数,LMSE表示均方差损失函数,λ1表示超参数,设置为100,LBCE表示交叉熵损失函数。
其中,均方差损失函数包括:
可以理解的是,真实样本包括图像数据集中的人物图像对应的主体目标高精度分割图,预测样本包括人像分割模型预测的人物图像对应的主体目标高精度分割图。
其中,交叉熵损失函数,包括:
其中,LBCE表示交叉熵损失函数,n表示样本数量,yi表示第i个真实样本的分类标签,pi表示第i个预测样本的分类标签。
可以理解的是,真实样本的分类标签是人工进行标注好的。真实样本的分类标签包括图像数据集中的人物图像对应的主体目标高精度分割图对应的矩阵,该矩阵为0和1组成的矩阵,其中,0表示主体目标高精度分割图中的背景区域,1表示主体目标高精度分割图中的人像区域。
同理,预测样本的分类标签包括人像分割模型预测的人物图像对应的主体目标高精度分割图对应的矩阵,该矩阵为0和1组成的矩阵,其中,0表示主体目标高精度分割图中的背景区域,1表示主体目标高精度分割图中的人像区域。
请参阅图8,图8是图3中的步骤S305的细化流程示意图:
如图8所示,步骤S305:构建损失函数,基于损失函数与在线难例挖掘策略对人像分割模型进行训练,直至损失函数收敛,包括:
步骤S3051:获取每一批次的样本;
具体的,样本包括图像数据集中的人物图像。
步骤S3052:计算当前批次的每一样本的损失函数值;
具体的,损失函数值包括均方差损失函数值与交叉熵损失函数值之和。
步骤S3053:根据损失函数值,对当前批次的全部样本进行排序,确定当前批次的困难样本;
具体的,根据OHEM策略,对同一批次的全部样本对应的损失函数值按照由高到低的顺序进行排序,并为每一样本赋予权重,每一样本的权重为按照损失函数值进行排序的排序名次的倒数,例如:样本按照损失函数值进行排序的排序名次为第十名,其权重为1/10。可以理解的是,损失函数值越大的样本赋予的权重越高,当前批次的困难样本为损失函数值大的样本即权重高的样本。
进一步地,当前批次的困难样本数量为总样本数量与当前批次的样本数量之比,按照当前批次的困难样本数量在按照损失函数值进行排序的排序名次中从前到后选取相应数量的样本作为当前批次的困难样本,或者,按照当前批次的困难样本数量在当前批次的全部样本中选取相应数量的权重最高的样本作为当前批次的困难样本。例如:当前批次的困难样本数量为10个,则选取按照损失函数值排序的名次为前10的样本作为当前批次的困难样本,或者,选取10个权重最高的样本作为当前批次的困难样本。
步骤S3054:基于困难样本,对人像分割模型进行训练;
具体的,人像分割模型重点训练当前批次的困难样本。
在本申请实施例中,采用Adam算法(Adaptive Moment Estimation Algorithm)来优化模型参数。例如:迭代次数的上线设置为10万次,初始化学习率设置为0.0005,权重衰减设置为0.0008。在得到Adam算法输出的调整模型参数后,利用该调整模型参数进行下一次训练,直到损失函数收敛。可以理解的是,损失函数收敛指的是均方差损失函数与交叉熵损失函数之和收敛。
可以理解的是,Adam算法(Adaptive Moment Estimation Algorithm),可以看作动量法和RMSprop算法的结合,不但使用动量作为参数更新方向,而且可以自适应调整学习率。
在本申请实施例中,在采用Adam算法优化模型参数的同时,实时监控损失函数值曲线,如果在损失函数值曲线在预设次数内没有明显的下降,则损失函数收敛,标志着人像分割模型训练完成,输出此时的人像分割模型的模型参数,从而得到训练完成的人像分割模型。
步骤S3055:保存每次训练的损失函数值;
步骤S3056:当迭代次数大于预设次数时,对当前训练得到的损失函数值与已保存的损失函数值进行升序排列;
具体的,预设次数可以为500次,当迭代次数大于500次时,对当前训练得到的损失函数值与已保存的损失函数值进行升序排列,得到当前训练得到的损失函数值的排序名次。
步骤S3057:若当前训练得到的损失函数值的排序名次大于预设序列值,则损失函数收敛。
具体的,预设序列值可以为500,若当前训练得到的损失函数值的排序名次大于第500名,则表明损失函数值曲线在500次迭代内没有明显的下降,损失函数收敛。
进一步地,若损失函数收敛,则标志着人像分割模型训练完成,输出此时的人像分割模型的模型参数,从而得到训练完成的人像分割模型。此时可以通过调用该训练后的人像分割模型,对待分割的人物图像进行分割,得到对应的主体目标高精度分割图。
在本申请实施例中,通过基于损失函数与在线难例挖掘策略对人像分割模型进行训练,直至损失函数收敛,能够使人像分割模型更好地对困难样本进行训练,提高人像分割的稳定性和准确性。
在通过本申请实施例提供的人像分割模型的训练方法进行训练得到人像分割模型后,可以利用该人像分割模型对人物图像进行分割。本申请实施例提供的人物图像的分割方法可以由各种类型具有计算处理能力的电子设备实施,例如智能终端和服务器等。
在本申请实施例中,通过提供一种人像分割模型的训练方法,该人像分割模型包括数据预处理模块、四输入编码模块和解码模块,该方法包括:获取图像数据集,其中,图像数据集包括多个目标的人物图像;基于数据预处理模块,对每一人物图像进行数据预处理,以得到每一人物图像对应的人体特征信息图像;基于四输入编码模块,对人体特征信息图像进行特征提取和融合,以得到特征图像;基于解码模块,对特征图像进行解码,以得到主体目标高精度分割图;构建损失函数,基于损失函数与在线难例挖掘策略对人像分割模型进行训练,直至损失函数收敛,其中,损失函数包括均方差损失函数和交叉熵损失函数。
通过基于损失函数与在线难例挖掘策略对人像分割模型进行训练,该损失函数包括均方差损失函数和交叉熵损失函数,使得四输入编码模块对人体特征信息图像进行特征提取和融合,并将得到的特征图像作用于解码模块,得到主体目标高精度分割图,从而使得本申请能够提高人像分割的稳定性和准确性。
实施例二
在通过上述实施例中提供的人像分割模型的训练方法后,得到训练之后的人像分割模型,可利用该人像分割模型对人物图像进行分割。
可以理解的是,上述实施例一是对人像分割模型的训练阶段,本申请实施例二是利用该人像分割模型对人物图像进行分割阶段,以得到待分割的人物图像对应的主体目标高精度分割图。
下面结合本申请实施例提供的终端的示例性应用和实施,说明本申请实施例提供的人物图像的分割方法。
请参阅图9,图9是本申请实施例提供的一种人物图像的分割方法的流程示意图;
如图9所示,该人物图像的分割方法,包括:
步骤S901:获取待分割的人物图像;
具体的,通过电子设备获取待分割的人物图像,例如,用户通过输入界面输入待分割的人物图像,输入完成后,电子设备自动获取待分割的人物图像,或者,该电子设备具备摄像头,通过摄像头采集人物图像,又或者,该电子设备内存储有人物图像库,用户可以从人物图像库中选择待分割的人物图像,再或者,电子设备接收用户通过网络上传的待分割的人物图像。
步骤S902:将待分割的人物图像输入人像分割模型,得到待分割的人物图像对应的主体目标高精度分割图。
具体的,人像分割模型是基于实施例一的人像分割模型的训练方法进行训练得到的。
将待分割的人物图像输入训练完成的人像分割模型中,得到人像分割模型输出的主体目标高精度分割图,该主体目标高精度分割图中包括主体目标的人物高精度掩膜。
可以理解的是,该人像分割模型是通过上述实施例中人像分割模型的训练方法训练得到,与上述实施例中人像分割模型具有相同的结构和功能,在此不再一一赘述。
在本申请实施例中,通过将待分割的人物图像输入人像分割模型,得到待分割的人物图像对应的主体目标高精度分割图,能够在多人物或者单人物的图像中精准保留主体目标,去除其余的人体和杂物的残留,实现人像精准分割。
实施例三
请参阅图10,图10是本申请实施例提供的一种人像分割模型的训练装置的结构示意图;
其中,该人像分割模型的训练装置,应用于电子设备,具体的,该人像分割模型的训练装置应用于电子设备的一个或至少两个处理器。
其中,该人像分割模型包括数据预处理模块、四输入编码模块和解码模块。
如图10所示,该人像分割模型的训练装置101,包括:
获取单元1011,用于获取图像数据集,其中,图像数据集包括多个目标的人物图像;
数据处理单元1012,用于基于数据预处理模块,对每一人物图像进行数据预处理,以得到每一人物图像对应的人体特征信息图像;
特征图像单元1013,用于基于四输入编码模块,对人体特征信息图像进行特征提取和融合,以得到特征图像;
图像解码单元1014,用于基于解码模块,对特征图像进行解码,以得到主体目标高精度分割图;
模型训练单元1015,用于构建损失函数,基于损失函数与在线难例挖掘策略对人像分割模型进行训练,直至损失函数收敛,其中,损失函数包括均方差损失函数和交叉熵损失函数。
在本申请实施例中,人像分割模型的训练装置亦可以由硬件器件搭建成的,例如,人像分割模型的训练装置可以由一个或两个以上的芯片搭建而成,各个芯片可以互相协调工作,以完成上述各个实施例所阐述的人像分割模型的训练方法。再例如,人像分割模型的训练装置还可以由各类逻辑器件搭建而成,诸如由通用处理器、数字信号处理器(DigitalSignal Process,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field Programmable Gate Array,FPGA)、单片机、ARM处理器(Advanced RISC Machines,ARM)或其它可编程逻辑器件、分立门或晶体管逻辑、分立的硬件组件或者这些部件的任何组合而搭建成。
本申请实施例中的人像分割模型的训练装置可以是装置,也可以是终端中的部件、集成电路、或芯片。该装置可以是移动电子设备,也可以为非移动电子设备。示例性的,移动电子设备可以为手机、平板电脑、笔记本电脑、掌上电脑、车载电子设备、可穿戴设备、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本或者个人数字助理(personal digital assistant,PDA)等,非移动电子设备可以为服务器、网络附属存储器(Network Attached Storage,NAS)、个人计算机(personal computer,PC)、电视机(television,TV)、柜员机或者自助机等,本申请实施例不作具体限定。
本申请实施例中的人像分割模型的训练装置可以为具有操作系统的装置。该操作系统可以为安卓(Android)操作系统,可以为ios操作系统,还可以为其他可能的操作系统,本申请实施例不作具体限定。
本申请实施例提供的人像分割模型的训练装置能够实现图3实现的各个过程,为避免重复,这里不再赘述。
需要说明的是,上述人像分割模型的训练装置可执行上述实施例所提供的人像分割模型的训练方法,具备执行方法相应的功能模块和有益效果。未在人像分割模型的训练装置实施例中详尽描述的技术细节,可参见上述实施例所提供的人像分割模型的训练方法。
在本申请实施例中,通过提供一种人像分割模型的训练装置,该人像分割模型包括数据预处理模块、四输入编码模块和解码模块,该人像分割模型的训练装置包括:获取单元,用于获取图像数据集,其中,图像数据集包括多个目标的人物图像;数据处理单元,用于基于数据预处理模块,对每一人物图像进行数据预处理,以得到每一人物图像对应的人体特征信息图像;特征图像单元,用于基于四输入编码模块,对人体特征信息图像进行特征提取和融合,以得到特征图像;图像解码单元,用于基于解码模块,对特征图像进行解码,以得到主体目标高精度分割图;模型训练单元,用于构建损失函数,基于损失函数与在线难例挖掘策略对人像分割模型进行训练,直至损失函数收敛,其中,损失函数包括均方差损失函数和交叉熵损失函数。
通过基于损失函数与在线难例挖掘策略对人像分割模型进行训练,该损失函数包括均方差损失函数和交叉熵损失函数,使得四输入编码模块对人体特征信息图像进行特征提取和融合,并将得到的特征图像作用于解码模块,得到主体目标高精度分割图,从而使得本申请能够提高人像分割的稳定性和准确性。
实施例四
本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令用于使电子设备执行上述实施例提供的人像分割模型的训练方法,例如,如图3所示的人像分割模型的训练方法,或上述实施例提供的人物图像的分割方法,例如,如图9所示的人物图像的分割方法。
在本申请实施例中,存储介质可以是FRAM、ROM、PROM、EPROM、EE PROM、闪存、磁表面存储器、光盘、或CD-ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
在本申请实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
作为示例,可执行指令可以但不一定对应于文件系统中的文件,可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(Hyper TextMarkupLanguage,HTML)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
作为示例,可执行指令可被部署为在一个计算设备(包括智能终端和服务器在内的设备)上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点通过通信网络互连的多个计算设备上执行。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,计算机程序包括程序指令,程序指令当被电子设备执行时使电子设备执行如上述实施例中的人像分割模型的训练方法或人物图像的分割方法。
本申请实施例还提供了一种计算机程序产品,该计算机程序产品包括一条或多条程序代码,该程序代码存储在计算机可读存储介质中。电子设备的处理器从计算机可读存储介质读取该程序代码,处理器执行该程序代码,以完成上述实施例中提供的人像分割模型的训练方法或人物图像的分割方法的方法步骤。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来程序代码相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
通过以上的实施方式的描述,本领域普通技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程是可以通过计算机程序来指令相关的硬件来完成,程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;在本申请的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上的本申请的不同方面的许多其它变化,为了简明,它们没有在细节中提供;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (11)
1.一种人像分割模型的训练方法,其特征在于,所述人像分割模型包括数据预处理模块、四输入编码模块和解码模块,所述方法包括:
获取图像数据集,其中,所述图像数据集包括多个目标的人物图像;
基于所述数据预处理模块,对每一所述人物图像进行数据预处理,以得到每一所述人物图像对应的人体特征信息图像;
基于所述四输入编码模块,对所述人体特征信息图像进行特征提取和融合,以得到特征图像;
基于所述解码模块,对所述特征图像进行解码,以得到主体目标高精度分割图;
构建损失函数,基于所述损失函数与在线难例挖掘策略对所述人像分割模型进行训练,直至所述损失函数收敛,其中,所述损失函数包括均方差损失函数和交叉熵损失函数。
2.根据权利要求1所述的方法,其特征在于,所述数据预处理模块包括人体高精度分割网络和人体实例分割网络;
所述人体特征信息图像包括人体高精度分割图和人体实例分割图;
所述基于所述数据预处理模块,对每一所述人物图像进行数据预处理,以得到每一所述人物图像对应的人体特征信息图像,包括:
基于所述人体高精度分割网络对每一所述人物图像进行人像轮廓特征提取,得到每一所述人物图像对应的人体高精度分割图;
基于所述人体实例分割网络对每一所述人体高精度分割图进行分割,得到每一所述人体高精度分割图对应的人体实例分割图。
3.根据权利要求2所述的方法,其特征在于,所述人体特征信息图像还包括人体关键点图像;
所述基于所述数据预处理模块,对每一所述人物图像进行数据预处理,以得到每一所述人物图像对应的人体特征信息图像,还包括:
通过人体姿态评估算法对每一所述人物图像进行检测,得到每一所述人物图像对应的人体关键点图像。
4.根据权利要求3所述的方法,其特征在于,所述基于所述四输入编码模块,对所述人体特征信息图像进行特征提取和融合,以得到特征图像,包括:
基于所述四输入编码模块,对每一所述人物图像与所述人物图像对应的人体关键点图像、人体高精度分割图、人体实例分割图进行特征提取和融合,以得到特征图像,其中,所述四输入编码模块包括扩张卷积层、卷积层、激活函数层和批归一化层。
6.根据权利要求1-4任一项所述的方法,其特征在于,所述解码模块包括转置卷积层、激活函数层和批归一化层;
所述损失函数包括:
Loss=LMSE+1LBCE
其中,Loss表示损失函数,LMSE表示均方差损失函数,λ1表示超参数,LBCE表示交叉熵损失函数。
9.根据权利要求1、7或8任一项所述的方法,其特征在于,所述基于所述损失函数与在线难例挖掘策略对所述人像分割模型进行训练,直至所述损失函数收敛,包括:
获取每一批次的样本,其中,所述样本包括所述人物图像;
计算当前批次的每一所述样本的损失函数值;
根据所述损失函数值,对当前批次的全部样本进行排序,确定当前批次的困难样本;
基于所述困难样本,对所述人像分割模型进行训练;
保存每次训练的损失函数值;
当迭代次数大于预设次数时,对当前训练得到的损失函数值与已保存的损失函数值进行升序排列;
若所述当前训练得到的损失函数值的排序名次大于预设序列值,则所述损失函数收敛。
10.一种人物图像的分割方法,其特征在于,所述方法包括:
获取待分割的人物图像;
将所述待分割的人物图像输入人像分割模型,得到所述待分割的人物图像对应的主体目标高精度分割图,其中,所述人像分割模型是基于权利要求1-9任一项所述的方法进行训练得到的。
11.一种电子设备,其特征在于,包括:
至少一个处理器,以及
与所述至少一个处理器通信连接的存储器,其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-10任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310113365.4A CN116229066A (zh) | 2023-01-31 | 2023-01-31 | 人像分割模型的训练方法及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310113365.4A CN116229066A (zh) | 2023-01-31 | 2023-01-31 | 人像分割模型的训练方法及相关装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116229066A true CN116229066A (zh) | 2023-06-06 |
Family
ID=86588626
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310113365.4A Pending CN116229066A (zh) | 2023-01-31 | 2023-01-31 | 人像分割模型的训练方法及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116229066A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116664730A (zh) * | 2023-06-14 | 2023-08-29 | 北京百度网讯科技有限公司 | 感知模型的生成方法、装置、计算机设备及存储介质 |
CN116777935A (zh) * | 2023-08-16 | 2023-09-19 | 天津市肿瘤医院(天津医科大学肿瘤医院) | 基于深度学习自动分割前列腺全腺体方法及系统 |
-
2023
- 2023-01-31 CN CN202310113365.4A patent/CN116229066A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116664730A (zh) * | 2023-06-14 | 2023-08-29 | 北京百度网讯科技有限公司 | 感知模型的生成方法、装置、计算机设备及存储介质 |
CN116777935A (zh) * | 2023-08-16 | 2023-09-19 | 天津市肿瘤医院(天津医科大学肿瘤医院) | 基于深度学习自动分割前列腺全腺体方法及系统 |
CN116777935B (zh) * | 2023-08-16 | 2023-11-10 | 天津市肿瘤医院(天津医科大学肿瘤医院) | 基于深度学习自动分割前列腺全腺体方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110020620B (zh) | 一种大姿态下的人脸识别方法、装置及设备 | |
CN107545262B (zh) | 一种在自然场景图像中检测文本的方法及装置 | |
CN116229066A (zh) | 人像分割模型的训练方法及相关装置 | |
CN111783779B (zh) | 图像处理方法、装置和计算机可读存储介质 | |
CN116416416A (zh) | 虚拟试衣模型的训练方法、虚拟试衣方法及电子设备 | |
CN112560980A (zh) | 目标检测模型的训练方法、装置及终端设备 | |
CN111915618B (zh) | 基于峰值响应增强的实例分割算法、计算设备 | |
CN114332473B (zh) | 目标检测方法、装置、计算机设备、存储介质及程序产品 | |
CN116109892A (zh) | 虚拟试衣模型的训练方法及相关装置 | |
CN115272822A (zh) | 训练解析模型的方法、虚拟试衣方法及相关装置 | |
CN114359289A (zh) | 一种图像处理方法及相关装置 | |
CN117475258A (zh) | 虚拟试衣模型的训练方法、虚拟试衣方法及电子设备 | |
CN115439308A (zh) | 训练试衣模型的方法、虚拟试衣方法及相关装置 | |
AU2022392233A1 (en) | Method and system for analysing medical images to generate a medical report | |
CN118212028A (zh) | 虚拟试衣方法、装置、电子设备及可读存储介质 | |
CN114037678A (zh) | 一种基于深度学习的尿液有形成分检测方法及装置 | |
CN117036851A (zh) | 训练虚拟试衣模型的方法、生成试衣图像的方法及相关装置 | |
CN115439179A (zh) | 训练试衣模型的方法、虚拟试衣方法及相关装置 | |
CN115439309A (zh) | 训练衣服变形模型的方法、虚拟试衣方法及相关装置 | |
CN116229143A (zh) | 一种图像处理方法、装置及计算设备 | |
CN114821244A (zh) | 训练服装分类模型的方法、服装分类方法及相关装置 | |
CN113033263B (zh) | 一种人脸图像年龄特征识别方法 | |
CN114462491A (zh) | 一种行为分析模型训练方法、行为分析方法及其设备 | |
CN112183299A (zh) | 行人属性预测方法、装置、电子设备及存储介质 | |
CN114913388B (zh) | 训练试衣模型的方法、生成试衣图像的方法及相关装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |