一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种知识与数据共同驱动的人像构图指引方法及装置

2022-06-05 02:24:54 来源:中国专利 TAG:


1.本发明涉及数字摄影领域,尤其涉及一种知识与数据共同驱动的人像构图指引方法及装置。


背景技术:

2.数码相机和智能手机的普及促进了人们对摄影的需求,包含生活记录、旅游纪念等多种需求场景。同时智能手机搭载上即时即连的互联网为社交媒体的蓬勃发展提供了沃土,人们随时随地都可以拍照记录,并在社交媒体上分享,通过他人的互动来获得心理上的满足感,这就促使拍照用户逐渐有了提升自己摄影水平的意愿。一张高质量照片应该具备鲜明的主题、突出的主体、简洁的画面、良好的光线和适当的景深等因素,其中前三个因素可以统称为构图,如果在前期拍摄时没有使用合适的构图,那么即使有后期处理也很难大幅度提升图像的美感,可见构图对于图像美感的好坏通常具有决定性的作用。
3.目前常见的摄影构图规则有三分法、平衡、对称构图、几何构图等,使用这些构图规则基本上就能让拍照用户在前期就拍摄出一张良好的照片。这对于拥有专业知识的摄影师来说并不难,但对于普通用户来讲,仍然具有一定的挑战:既要求普通用户掌握构图的理论基础,还能够将构图理论技巧直接应用于实际拍照操作中,这显然是很困难的。因此在移动端通过技术辅助用户拍摄照片时调整构图是人像构图领域的热点研究问题之一。
4.面对普通用户构图难的问题,研究人员提出了不同的解决方案。现有的人像构图算法主要有三大类:预定义构图规则 人体位置大小计算、生成候选子视图 美学评分网络、构图数据库 图像特征检索匹配。通过对预定义的构图规则建模,结合相机的预览场景计算出得分高的人体站位和比例推荐给用户,这种方法的缺陷是基于固定的预览场景推荐站位和大小,没有考虑到现有场景的构图;生成候选子视图找到最佳视图的方法也是基于固定场景,如果当前场景不具备具有较好构图的子视图那么生成的推荐并非最佳选择得到的是次优结果;而根据构图库进行场景结构或是语义特征匹配推荐的方法过于依赖大量的数据,如果数据中无与预览场景契合的图片,那么推荐的就不准确。
5.深度卷积神经网络的出现和其强大的学习能力和特征表示能力为图像领域的工作带来了新的技术路线。早期的拍摄构图方法较为固定单一,直接在预览图上呈现出定义好的构图线来辅助用户拍摄,在深度卷积神经网络出现后,一些工作依靠预定义的构图规则与前端检测的人脸与预览图的比例来调整构图或是通过网络模型根据预定义的构图模板从数据中学习,再根据预览图像直接预测适合的构图模板提供给前端用户;有的工作是为图像定义各种属性来训练美学打分模型直接在前端显示出美学分数来提示用户修改构图;一部分是直接将图像裁剪的技术应用于前端为用户推荐子视图构图;还有一部分工作是借助于神经网络的特征学习能力学习预览图的构图特征并与后台准好的图库进行特征匹配,根据其构图差异进行推荐。虽然类似于上述基于神经网络技术的方法通过大量数据学习解决了构图单一的问题,但是尚未解决现有的人像构图推荐是基于用户的固定预览场景,推荐的人像构图是基于次优的预览图推荐的次优结果的问题。


技术实现要素:

6.为了解决上述技术问题,本发明提出了一种知识与数据共同驱动的人像构图指引方法及装置,用于辅助用户在拍摄人像照时根据变换信息来修改预览构图,改善最终成片的构图。对于给定的一张输入人像照片,本发明提出的方法能够判断当前图像构图是否应该进行变换、具体应该怎么变换。
7.本发明的技术方案包括:
8.一种知识与数据共同驱动的人像构图指引方法,其步骤包括:
9.对收集到人像照片进行预处理,构建训练数据集;
10.使用所述训练数据集,训练一深度卷积神经网络,得到人像构图指引模型,其中所述深度卷积神经网络包括:语义特征提取网络和预测构图变换类别的分类网络分支、预测构图变换幅度的回归网络分支;
11.将摄像的预览图输入所述人像构图指引模型,得到引导信息;
12.基于引导信息,变换所述预览图的构图。
13.进一步地,所述对收集到人像照片进行预处理,包括:
14.1)对所述人像照片进行数据标注,标签为构图好与构图差;
15.2)对于每一标签为构图好的人像照片i
src
,生成该人像照片i
src
的外扩修复图像i
inpaint
,并将i
src
作为修复图像i
inpaint
的最佳裁剪标签,以构造伪最佳裁剪数据集d
crop-p

16.3)将公开的裁剪数据集中图像的最佳裁剪或是分数最高的裁剪作为最佳裁剪标签,以构造真实最佳裁剪数据集d
crop-r

17.4)合并所述伪最佳裁剪数据集d
crop-p
与真实最佳裁剪数据集d
crop-r
,得到最佳裁剪数据集d
crop
,其中所述最佳裁剪数据集d
crop
中每一图像ib的最佳裁剪标签为的最佳裁剪标签为的最佳裁剪标签为为图像ib的最佳裁剪图像中一角l的坐标值,wb为该最佳裁剪图像的宽,hb为该最佳裁剪图像的高;
18.5)通过对每一所述图像ib的最佳裁剪图像进行图像联合扰动,得到扰动后的子图像ik;
19.6)将数据(ib,ik,yk,dk)作为所述训练数据集中的训练数据,其中yk为构图变换信息标签,dk为图像变换幅度。
20.进一步地,所述生成该人像照片的外扩修复图像i
inpaint
,包括:
21.1)生成一空白图像,其中所述空白图像的尺寸大小为该人像照片的α倍,α》1;
22.2)将该人像照片填充至一空白图像的中心,周围的空白填充为0像素,以生成该人像照片的掩码图;
23.3)使用图像修复算法,对所述掩码图进行四周内容修复,得到该人像照片的伪最佳裁剪图像i
inpaint

24.进一步地,所述语义特征提取网络包括:一轻量级神经网络mobilenetv2、一金字塔空间池化层和两层全连接层。
25.进一步地,所述预测构图变换类别的分类网络分支包括:垂直变换分类网络、水平变换分类网络和缩放变换分类网络。
26.进一步地,所述训练一深度卷积神经网络时的损失函数
其中l
sj
为分类网络分支的损失函数,j∈{1,2,3}且代表垂直变换分类网络、水平变换分类网络或缩放变换分类网络,l4为回归网络分支的损失函数。
27.进一步地,分类网络分支的损失函数n代表所述训练数据集中的样本数量,c代表构图变换类别的数量,y(i)代表第i个样本所属类别,l
i,y(i)
为神经网络对第i个样本在y(i)类的全连接层输出。
28.进一步地,回归网络分支的损失函数n代表所述训练数据集中的样本数量,yi代表第i个样本的幅度值标签,f(xi)代表回归预测值。
29.一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一所述方法。
30.一种电子设备,其特征在于,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一所述方法。
31.与现有技术相比,本发明至少具有以下优点:
32.1、本发明采用了4分支结构来学习人像构图信息并基于此为用户提供拍摄的构图建议,对图像数据的内容进行扩增,将构图任务拆分为4个子任务,设计独特的网络结构来共同训练损失函数得到构图变换预测模型,这种方法不受限于预定义的构图规则,能够从大量摄影图像中学习到潜在的构图规律。
33.2、本发明可将基于深度模型的人像构图变换引导系统部署到移动端app中,将前端的预览图送进神经网络模型中生成构图变换信息,系统根据变换信息生成构图引导信息,用户根据在预览画面显示的构图引导信息对当前预览图进行变换生成新的预览图,用户满意即进行最终拍摄。
34.3、本发明是从大量摄影中学习全面多样的构图规律,而不只是局限于其他现有技术中预定义有限的构图模板,在实际应用时能够根据不同场景信息为用户提供多种多样的构图变换信息,并且在实际系统中将构图变换信息生成拍摄引导,这样能够辅助用户进行更直观拍摄操作。
附图说明
35.图1图像修补示例图。
36.图2样本生成示意图。
37.图3模型结构示意图。
38.图4拍摄构图变换指引系统。
具体实施方式
39.下面将结合附图,对本发明实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式仅仅是本发明特定实施方式,而不是全部的实施方式。基于本发明中的实施方式,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施方式,都属于本发明保护的范围。
40.本发明采用了一种轻量级易部署在移动端的深度卷积神经网络作为骨干网,骨干
网络用于学习提取系统输入图像的语义特征,再以提取的语义特征作为输入分别构建4个网络分支以学习图像构图的不同层面信息,最后基于训练好的网络模型对输入的图像进行构图变换信息预测并指示用户来修改现有构图,提高拍摄前期构图质量。
41.由于在训练构图信息网络时,带最佳裁剪标签的数据集不仅数量小也并非纯粹的人像数据,数据噪声多,因此本发明提出了一种扩增标签数据的方法,使用对抗生成神经网络对收集的构图良好的人像照片进行外翻式等比扩增,原始图像就是扩增修复图像的伪最佳裁剪标签;对真实最佳裁剪数据和制作的伪最佳裁剪标签数据进行联合式图像扰动,如平移、缩放,图像逆扰动作为扰动后图像的构图变换信息标签。该方法能够扩大图像的语义信息,丰富标签数据的多样性。
42.一、训练数据准备
43.获取公开的裁剪标签数据集并从摄影网站上收集人像照片,首先将这些数据处理为最佳裁剪标签数据集d
crop
,然后根据数据扰动制作构图变换信息标签数据d
comp
。具体处理步骤为:
44.步骤1.1:对预定义的通用构图规则进行数学建模,作为约束对从摄影网站收集的人像照进行第一轮筛选,再对每一张人像照片进行数据标注,标签为构图好与构图差;
45.步骤1.2:如图1所示,对于步骤1.1标签为构图好的图像数据i
src
,生成一张空白图像,尺寸大小为i
src
的α倍,将i
src
填充进该空白图像中心,周围的空白填充为0像素,生成的图像称为掩码图m
src
;根据图像修复算法对图像m
src
进行四周内容修复,生成内容完整的新图像i
inpaint
,尺寸大小是原始图像i
src
的α倍(α取值1.5);图像i
inpaint
的最佳裁剪标签为i
src
,从而制作出伪最佳裁剪数据集d
crop-p

46.步骤1.3:将公开的裁剪数据集中图像的最佳裁剪或是分数最高的裁剪作为最佳裁剪标签,制作出真实最佳裁剪数据集d
crop-r

47.步骤1.4:将步骤1.2与步骤1.3生成真实最佳裁剪数据集d
crop-r
和伪最佳裁剪数据集d
crop-p
合并为最佳裁剪数据集d
crop
,裁剪标签形式为crop=(x
l
,y
l
,w,h);
48.x
l
和y
l
分别表示最佳裁剪的左上角坐标值,w和h表示最佳裁剪的宽和高;
49.步骤1.5:图像联合扰动:本发明定义的图像扰动即对图像做出平移缩放变换,根据扰动类别的互斥与依赖关系将扰动分为3类:垂直扰动、水平扰动、缩放扰动,联合扰动就是将三类不同的变换应用到图像中。将联合扰动定义为perturb=(p1,p2,p3),p1代表上下扰动、p2代表左右扰动、p3代表缩放扰动;其中pi(i=1,2,3)的取值范围是{0,1,2},0代表pi类不扰动、1代表上/左/缩小扰动、2代表下/右/放大扰动;三类扰动的幅度值定义为d=(d1,d2,d3),di值在区间[a,b]内随机选取,d1代表上下扰动值,幅度值范围为[0.10,0.25],d2代表左右扰动值,幅度值范围为[0.10,0.25],d3代表缩放扰动值,幅度值范围为[0.20,0.40];
[0050]
步骤1.6:训练样本生成:步骤1.4生成的最佳裁剪数据集d
crop
中图像ib的最佳裁剪标签为根据步骤1.5定义的图像联合扰动对最佳裁剪crop进行联合扰动。首先每个扰动pi在离散区间[0,1,2]内随机取值,并在每个扰动类别的幅度值区间内随机取值得到对应扰动的幅度值d∈[a,b];其次对pi的值进行判断,并将上下扰动(0,dy,0,0)、左右扰动(d
x
,0,0,0)、缩放扰动(0,0,dz,0)应用到最佳裁剪上(操作见公式(1)),生成样
本图像(见图2),对应的构图变换信息标签yk为逆扰动,幅度值标签为d,则样本可表示为(ib,ik,yk,dk),其中构图变换信息标签yk为的集合,为构图变换类别,图像变换幅度dk为的集合,为变换类别对应的幅度值。
[0051][0052]
二、模型搭建与训练
[0053]
本发明构造4分支结构的深度卷积神经网络模型,用于学习人像图像的构图规律,根据一张输入人像照片,能够判断当前图像构图是否应该进行变换、具体应该怎么变换,本发明将上述问题拆分建模为预测构图变换操作类型和预测变换操作幅度值,即输入一张图像,能够预测图像需要变换的操作类型和变换幅度值。该方法用多分支网络来解决这个多任务学习问题。
[0054]
如图3所示,本发明采用了轻量级神经网络mobilenetv2作为模型的骨干网络结构,将mobilenetv2模型的最后一个卷积层输出用作人像图像的语义特征图fc;特征图fc后连接一个金字塔空间池化层(1
×
1,2
×
2,5
×
5),使用两层1024维的全连接层,每个全连接层后使用relu激活函数。
[0055]
本发明构造了4个网络分支,三个分支是分类任务用来预测构图变换类别,垂直变换预测、水平变换预测、缩放变换预测;一个分支是回归任务负责预测变换幅度值。构图变换有6类:上、下、左、右、缩小、放大,根据类别的矛盾依赖关系将类别组合为(上、下)(左、右)(缩小、放大),每个组合分别由一个分支来预测;预测值对应样本标签值为(0,1,2),0代表分支类别不变换,1代表预测的变换类别为上/左/缩小,2代表预测的变换类别为下/右/放大。预测变换幅度值是回归任务,由3个回归器预测对应分支类别变换的幅度值d=(d1,d2,d3),d1是上下分支的幅度值,d2是左右分支的幅度值,d3是缩放分支的幅度值;
[0056]
定义损失函数,对上述神经网络模型进行训练。对于构图变换类别的三个多分类分支,设计softmax作为神经网络的最后一层,然后计算交叉熵损失,多分类损失函数可写为:
[0057][0058]
其中,j取值为(1,2,3)代表三分支网络的损失函数。n代表训练样本数量,c代表类别数量,y(i)代表第i个样本所属类别,log后面的分式为第i个样本对y(i)类的预测概率;l
i,y(i)
为神经网络对第i个样本在y(i)类的全连接层输出;
[0059]
对于幅度值预测回归分支,定义回归损失函数l1loss,写为:
[0060][0061]
其中,n代表训练样本数量,yi是第i个样本的幅度值标签,f(xi)是模型的回归预测值;
[0062]
最终的损失函数为上述四个损失函数之和:
[0063][0064]
基于上述的数据收集、处理、样本生成、模型搭建训练、损失函数的定义和描述,本发明对搭建的深度卷积神经网络模型进行训练的具体流程如图3所示,可以表示为:
[0065]
步骤2.1:按照上述描述的数据处理的前四个步骤对收集的人像图像进行处理,生成最佳裁剪数据d
crop

[0066]
步骤2.2:准备开始模型的一次迭代训练,首先根据上述描述的数据处理的生成构图变换样本(ib,ik,yk,dk);
[0067]
步骤2.3:将构图变换样本分160为一批次同时送进网络中;
[0068]
步骤2.4:然后根据上述定义的网络模型进行前向传播,然后根据公式(4)计算损失;根据损失函数计算的梯度值进行反向传播,来更新神经网络的参数值;
[0069]
步骤2.5:返回步骤2.3,直到一轮迭代完全结束则进行步骤2.6;
[0070]
步骤2.6:结束一轮迭代后,返回步骤2.2,进行下一轮迭代,直至预设的迭代次数全部训练完成。
[0071]
在一示例中,本发明首先从摄影网站收集了50w人像照片与带裁剪标签的数据一起进行数据处理,使用生成的样本训练网络模型,并将训练好的模型应用到人像构图变换引导系统中,基于该训练模型,按图4进行人像构图变换引导,得到了良好的构图效果。
[0072]
以上所述仅为本发明的较佳实施方式而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献