一种用于精细人像图片分割的深度学习模型训练方法与流程

文档序号:21995562发布日期:2020-08-25 19:36阅读:995来源:国知局
一种用于精细人像图片分割的深度学习模型训练方法与流程
本发明涉及了一种用于精细人像分割的训练方法,尤其是涉及了一种基于原始图像与分割预测结果图的图像梯度一致性的图像梯度损失函数及其训练方法。
背景技术
:人像分割算法被广泛运用于视频监控、人像分析、人像编辑等各个领域。然而之前的算法无法满足对于边缘精度要求较高的场合。考虑到基于深度学习的模型对于训练标注的要求非常高,然而标注高精度的人像边缘细节比如:头发丝、衣服边缘非常耗时。标注高精度的人像训练样本往往受限于成本无法大规模实现。于是,探究不依赖与高精度人工标注的训练方法,从图像本身获取监督信息,利用较为粗糙的标注样本获得精细的训练结果有很强的实际意义。技术实现要素:为了解决
背景技术
中的问题,本发明提出了一种用于精细人像图片分割的深度学习模型训练方法。本发明的技术方案包括以下步骤:1)采集获取人像图片,以人像为前景,人像图片中前景区域已标记为1,背景区域已标记为0,形成二值化的人像/背景标注图,构成训练数据集;2)在二值化的人像/背景标注图上使用canny边缘算法检测得到人像与背景之间的边界;3)采用自适应膨胀算子对步骤2)检测得到的边界结果进行扩充形成边缘区域,并得到人像边缘/背景区域标注图mbound,人像边缘/背景区域标注图中,人像与背景之间的边界区域为1,其余区域取0;4)将原始图像输入到任意深度学习模型进行训练处理,训练处理中根据人像边缘/背景区域标注图计算图像梯度损失lgrad,并同时处理计算分割交叉熵损失lseg,结合图像梯度损失lgrad和分割交叉熵损失lseg共同对深度学习模型进行训练优化。所述步骤4)中,根据人像边缘/背景区域标注图计算在边缘区域的图像梯度损失,具体为:4.1)训练过程中对每一张的输入原始图像和分割预测结果图均采用以下方式进行归一化:其中,i表示输入的原始图像/分割预测结果图,imin表示输入的原始图像/分割预测结果图的像素值最小值,imax表示输入的原始图像/分割预测结果图的像素值最大值;4.2)根据如下公式,计算原始图像在x,y轴方向的图像梯度gx和gy:其中,⊙表示卷积操作,in表示输入的原始图像,其中的3*3矩阵表示卷积核;并计算原始图像的梯度幅值为梯度方向为4.3)利用和步骤4.2)中相同的方法,计算分割预测结果图在x,y轴方向的图像梯度,以及分割预测结果图的梯度幅值mpred和梯度方向4.4)按照下列公式求取梯度方向损失ldir:其中,mpred分别为步骤4.2)和4.3)中获得的原始图像的梯度方向、分割预测结果图的梯度方向、分割预测结果图的梯度幅值;vximg,vyimg分别为原始图像的梯度方向在x轴和y轴上的投影,vxpred,vypred分别为分割预测结果图的梯度方向在x轴和y轴上的投影;4.5)按照下面公式求取梯度幅值损失lmag:lmag=max(λ*mimg-mpred,o)其中,mimg、mpred分别表示原始图像的梯度幅值和分割预测结果图的梯度幅值,λ表示图像梯度幅值的放大系数,具体实施中设置为1.5;max()表示取较大值函数;max函数表示为:当λ*mimg-mpred大于0时,lmag取值为λ*mimg-mpred,反之lmag取值为0。4.6)最终按照以下在边缘区域计算获得图像梯度损失lgrad:lgrad=(γ1*ldir+γ2*lmag)*mbound其中,mbound表示步骤3)中得到的人像边缘/背景区域标注图,在人像边缘/背景区域标注图中位于边界区域的像素点mbound=1,位于非边界区域的像素点mbound=0;γ1、γ2分别表示梯度方向损失和梯度幅值损失的权重,具体实施中设置γ1=γ2=0.5;4.7)在整张图像区域采用以下公式计算分割交叉熵损失lseg:其中,为步骤1)中得到的二值化的人像/背景标注图,为深度学习模型输出的分割预测结果图;4.8)将步骤4.7)中的分割交叉熵损失和步骤4.6)中的在人像边界区域的图像梯度损失进行加权处理,得到最终损失函数:ltotal=α*lseg+β*lgrad其中,α和β分别表示分割交叉熵损失和梯度损失的权重;4.9)利用步骤1)构建的数据集针对深度学习模型进行训练,每次训练处理中计算获得原始图像和分割预测结果图之间的最终损失函数ltotal,利用最终损失函数ltotal对模型参数进行迭代优化,使得最终损失函数ltotal收敛最小。所述步骤3)中,自适应膨胀算子具体采用以下公式,边缘区域的膨胀大小ka计算方法为:其中,|gf|、|gb|分别为人像/背景标注图中前景区域和背景区域的像素总个数,kc为标准膨胀区域大小,具体实施中kc的值设置为50。所述深度学习模型在训练过程中,使用随机梯度下降算法进行寻训练,训练分为两个阶段:第一阶段设置α=1,β=0,训练迭代20000次,以获取较好的预测梯度初始化值;第二阶段设置α=β=0.5,训练迭代20000次,使得模型挖掘更多的细节特征。这样上述本发明方法处理训练获得的深度学习模型能够在训练标注边缘质量不高的情况下得到精准的边缘区域预测结果。本发明首先,由手工标注的人像/背景二值化标注数据计算得到人像边缘区域标注;其次,在边缘区域施加图像梯度损失(gradientloss)进行监督;同时在非边缘区域施加二值化交叉熵损失函数。本发明的有益效果是:本发明使用粗糙的人工标注结果,通过“自监督”的方式训练,训练出比人工标注更加精确的分割结果,大大节约人工标注的成本,能够应用于人员监控、人像分析、人像编辑等各种场景。附图说明图1为人像/背景标注图;图2为人像边缘/背景区域标注图;图3为原始图像的图像梯度幅值图;图4为分割预测结果图的图像梯度幅值图;图5为实际预测效果图;图6为实验对比效果图。具体实施方式下面结合附图及具体实施例对本发明作进一步详细说明。按照本发明
发明内容完整方法实施的实施例过程如下:1)采集获取人像图片,以人像为前景,人像图片中前景区域已标记为1,背景区域已标记为0,形成二值化的人像/背景标注图,如图1所示,构成训练数据集;2)在二值化的人像/背景标注图上使用canny边缘算法检测得到人像与背景之间的边界;3)采用自适应膨胀算子对步骤2)检测得到的边界结果进行扩充形成边缘区域,并得到人像边缘/背景区域标注图mbound,如图2所示,人像边缘/背景区域标注图中,人像与背景之间的边界区域为1,其余区域取0;自适应膨胀算子具体采用以下公式,边缘区域的膨胀大小ka计算处理如下:4)将原始图像输入到任意深度学习模型进行训练处理,训练处理中根据人像边缘/背景区域标注图计算图像梯度损失lgrad,并同时处理计算分割交叉熵损失lseg,结合图像梯度损失lgrad和分割交叉熵损失lseg共同对深度学习模型进行训练优化。具体为:4.1)训练过程中对每一张的输入原始图像和分割预测结果图均采用以下方式进行归一化:4.2)根据如下公式,计算原始图像在x,y轴方向的图像梯度gx和gy:并计算原始图像的梯度幅值为梯度方向为结果如图3所示。4.3)利用和步骤4.2)中相同的方法,计算分割预测结果图在x,y轴方向的图像梯度,以及分割预测结果图的梯度幅值mpred和梯度方向结果如图4所示。4.4)按照下列公式求取梯度方向损失ldir:4.5)按照下面公式求取梯度幅值损失lmag:lmag=max(λ*mimg-mpred,0)4.6)最终按照以下在边缘区域计算获得图像梯度损失lgrad:lgrad=(γ1*ldir+γ2*lmag)*mbound4.7)在整张图像区域采用以下公式计算分割交叉熵损失lseg:4.8)将步骤4.7)中的分割交叉熵损失和步骤4.6)中的在人像边界区域的图像梯度损失进行加权处理,得到最终损失函数:ltotal=α*lseg+β*lgrad4.9)利用步骤1)构建的数据集针对深度学习模型进行训练,每次训练处理中计算获得原始图像和分割预测结果图之间的最终损失函数ltotal,利用最终损失函数ltotal对模型参数进行迭代优化,使得最终损失函数ltotal收敛最小。具体实施在训练过程中,使用随机梯度下降算法进行寻训练,训练分为两个阶段:第一阶段设置α=1,β=0,训练迭代20000次,以获取较好的预测梯度初始化值;第二阶段设置α=β=0.5,训练迭代20000次,使得模型挖掘更多的细节特征。实施例具体情况如下:收集图片并构建数据集:实验图片共有1700张,其中用于训练的图片有1300张,测试用例400张。本发明中将每张图片剪裁成256*256的统一大小。例如最终采用本发明方法训练后的深度学习模型对如图5左侧的待测图片进行处理输出如图5右侧的结果图。模型训练:人像分割的深度学习模型选用unet网络,使用普通方法和本发明的方法进行训练进行对比。对照用的普通方法为:仅用步骤5)中提到的分割交叉熵损失进行训练。使用平均交并比(meanintersectionoverunion)作为预测质量评价准则。对比结果如下:表1人像分割结果训练方法meaniou常规方法94.9%发明方法95.8%结果分析:定量对比结果可得,对比与普通的交叉熵损失(表格中常规方法)本文提出的算法对于人像分割结果有在交并比在94.9%的基础上有0.9%的提高较,有明显的提升作用。其他定性结果对比如图6所示。中间图片为用常规交叉熵损失进行训练得到的预测掩膜,右侧图片为使用本专利提出方法训练得到的模型的预测结果。右图在预测边缘区域明显相较于对照方法更为清晰和准确。可见,该发明所提出的训练方法,对于提升分割结果的边缘区域预测质量有显著作用。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1