1.本发明涉及图像处理技术领域,尤其涉及一种绿幕抠像方法、装置。
背景技术:2.传统的绿幕抠像方法有色度抠像、色差抠像、亮度抠像、三角抠像等方法,许多专业绿幕抠像软件都是基于这些传统方法进行改良而生成的。专业绿幕抠像软件虽然效果较好,但是参数的设置需要专业人士进行处理,这将花费大量的人力成本和时间成本。此外,传统绿幕抠像方法通常将绿幕抠像和去除绿色溢出分为两个独立的步骤进行处理,较为繁琐。自然图像抠像是对自然场景下拍摄的图像进行抠像,不需要考虑绿色溢出问题,因此用于绿幕抠像时效果并不自然,而且很少有方案可以达到自动且实时的效果。
技术实现要素:3.针对现有技术的不足,本发明提出一种绿幕抠像方法、装置,该方法能够自动且实时实现绿幕抠像处理,不需要人工参与,且有效的去除绿色溢出现象,达到视觉上更为逼真的效果。
4.为了实现上述目的,本发明一方面提供一种绿幕抠像方法,包括:
5.构建绿幕抠像数据集和绿幕背景数据集,所述绿幕抠像数据集包含绿溢信息;
6.从所述绿幕抠像数据集中随机选取第一前景图像,以及所述第一前景图像对应的第一alpha图像,所述第一前景图像包含绿溢信息;
7.从所述绿幕背景数据集随机选取绿幕背景图像;
8.将所述第一前景图像、所述第一alpha图、所述绿幕背景图像合成,生成初始绿幕图像;
9.利用所述初始绿幕图像生成目标绿幕背景图像;
10.利用所述初始绿幕图像与所述目标绿幕背景图像,输入至深度学习模型中进行训练,输出第二前景图像以及所述第二前景图像对应的第二alpha图像,所述第二前景图像不包含绿溢信息。
11.可选的,采用不同的绿色像素信息模拟不同的绿幕拍摄场景,构建所述绿幕背景数据集。
12.可选的,将所述第一前景图像、所述第一alpha图像以及所述绿幕背景图像均进行几何增强处理与像素增强方法处理。
13.可选的,生成的所述初始绿幕图像为:
14.c=f
×
α+b
×
(1-α)
15.其中,f表示包含有绿溢信息的所述第一前景图像,α表示所述第一前景图像对应的第一alpha图像,b表示所述绿幕背景图像,c表示所述初始绿幕图像。
16.可选的,所述利用所述初始绿幕图像生成目标绿幕背景图像,包括:
17.将所述初始绿幕图像从rgb颜色空间转换为hsv颜色空间;
18.基于hsv颜色空间,对所述初始绿幕图像进行二值图像处理,生成二值化绿幕图像;
19.将所述初始绿幕图像与所述二值化绿幕图像合成,得到初始绿幕背景图像,所述初始绿幕背景图像包含绿色像素信息和黑色像素信息;
20.对所述初始绿幕背景图像进行聚类处理,得到所述目标绿幕背景图像,所述目标绿幕背景图像包含绿色像素信息。
21.可选的,生成的所述二值化绿幕图像为:
[0022][0023]
其中,migreen、magreen分别表示hsv颜色空间设置的最小阈值与最大阈值;
[0024]
将所述初始绿幕图像与所述二值化绿幕图像合成,得到所述初始绿幕背景图像为:
[0025]
b'=c
×
(1-mask)
[0026]
其中,c表示所述初始绿幕图像。
[0027]
可选的,所述深度学习模型采用轻量级深度学习模型。
[0028]
可选的,计算所述第二alpha图像的损失函数,
[0029][0030]
其中,表示第一损失函数,表示第二损失函数,所述第一损失函数与所述第二损失函数结合用于训练所述第二alpha图像,所述第一损失函数用于衡量预测的第二alpha图像αi和所述第二alpha图像对应的真实数据之间的差异,所述第二损失函数为梯度损失,
[0031]
计算所述第二前景图像的损失函数,
[0032][0033]
其中,fi表示预测的所述第二前景图像,表示所述第二前景图像对应的真实数据。
[0034]
可选的,按照不透明类、半透明类、透明类、以及复杂结构类的不同分类,构建绿幕抠像数据集和绿幕背景数据集。
[0035]
本发明另一方面还提供一种绿幕抠像装置,采用上述的绿幕抠像方法,所述装置至少包括:
[0036]
数据集构建模块,用于构建绿幕抠像数据集和绿幕背景数据集,所述绿幕抠像数据集包含绿溢信息;
[0037]
图像合成模块,用于从所述绿幕抠像数据集中随机选取第一前景图像,以及所述第一前景图像对应的第一alpha图像,所述第一前景图像包含绿溢信息;
[0038]
从所述绿幕背景数据集随机选取绿幕背景图像;
[0039]
将所述第一前景图像、所述第一alpha图、所述绿幕背景图像合成,生成初始绿幕
图像;
[0040]
利用所述初始绿幕图像生成目标绿幕背景图像;
[0041]
图像训练模块,用于利用所述初始绿幕图像与所述目标绿幕背景图像,输入至深度学习模型中进行训练,输出第二前景图像以及所述第二前景图像对应的第二alpha图像,所述第二前景图像不包含绿溢信息。
[0042]
本发明另一方面还提供一种存储介质,用于存储一种用于执行上述的绿幕抠像方法的计算机程序。
[0043]
本发明另一方面还提供一种电子设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的绿幕抠像方法。
[0044]
由以上方案可知,本发明的优点在于:
[0045]
本发明提供的本实施例提供的绿幕抠像方法,通过构建包含绿溢信息的多样化绿幕抠像数据集和绿幕背景数据集的方法,使得可以通过网络训练的方式处理绿幕抠像和去除绿溢问题。同时,通过从绿幕抠像数据集中随机选取包含绿溢信息的第一前景图像,以及对应的第一alpha图像;并将所述第一前景图像、所述第一alpha图与绿幕背景图像合成,生成初始绿幕图像;然后利用初始绿幕图像自动生成目标绿幕背景图像作为辅助信息,初始绿幕图像与目标绿幕背景图像结合,使得抠像质量更为精细,同时实现了自动化,避免了人工调节参数的需要,在不需要人工参与的条件下保证了抠像精度。然后,利用所述初始绿幕图像与所述目标绿幕背景图像,输入至构建的深度学习模型中进行训练,输出不包含绿溢信息的第二前景图像以及对应的第二alpha图像,使得不仅在同一模型中解决了绿幕抠像和去除绿溢两个问题,轻量级网络结构的使用在保证抠像精度的同时提升处理速度,达到实时。
附图说明
[0046]
图1为本发明实施例提供的绿幕抠像方法的流程示意图;
[0047]
图2为图1中提供的绿幕抠像方法步骤s4的具体流程示意图;
[0048]
图3为将本发明的绿幕抠像方法与自然图像抠像方法cf、knn、fba、modnet、lfp、bgmv2、aim的对比结果;
[0049]
图4为将本发明的绿幕抠像方法与专业抠像软件keylight、aximmetry的对比结果;
[0050]
图5为本发明的绿幕抠像装置的框架图;
[0051]
图6为电子设备的结构示意图;
[0052]
其中:
[0053]
400-绿幕抠像装置;
[0054]
401-数据集构建模块;
[0055]
402-图像合成模块;
[0056]
403-图像训练模块;
[0057]
500-电子设备;
[0058]
501-处理器;
[0059]
502-存储器。
具体实施方式
[0060]
为让本发明的上述特征和效果能阐述的更明确易懂,下文特举实施例,并配合说明书附图作详细说明如下。
[0061]
如前所述,现有的传统的绿幕抠像方法中需要专业人士调整大量参数、整体处理速度慢且步骤繁琐的问题,本发明提供了一种基于深度学习的可去除绿溢的实时自动绿幕抠像方法,使用用户提供的绿幕图像或视频帧作为输入,无需人为调节参数即可同时完成绿幕抠像和去除绿色溢出任务。该绿幕抠像方法可以直接用于影视剧拍摄、虚拟演播厅、网红直播带货、vr线下体验馆等应用。
[0062]
具体的,参考图1中所示,图1示出了本实施例提供的绿幕抠像方法的流程示意图;
[0063]
一种绿幕抠像方法,包括:
[0064]
s1、构建绿幕抠像数据集和绿幕背景数据集,所述绿幕抠像数据集包含绿溢信息。
[0065]
本实施例中,通过在真实绿幕场景下拍摄多种类型的绿幕素材并在ground truth中增加一项带有绿色溢出的前景图,从而构建包含绿溢的绿幕抠像数据集和绿幕背景数据集。
[0066]
在具体实现中,对于绿幕抠像数据集,绿幕抠像数据集中包含绿溢信息,可以按照不透明类、半透明类、透明类、以及复杂结构类的不同分类多样化前景对象,构建绿幕抠像数据集。例如,不透明类如不同颜色服装、不同姿态的人物(发丝)、桌椅等;半透明类、透明类如纱布、矿泉水瓶、眼镜等;复杂结构类如缠绕的线、网状结构等。
[0067]
对于绿幕背景数据集,可以采用不同的绿色像素信息模拟不同的绿幕拍摄场景,构建所述绿幕背景数据集。
[0068]
s2、从所述绿幕抠像数据集中随机选取第一前景图像,以及所述第一前景图像对应的第一alpha图像,所述第一前景图像包含绿溢信息;以及
[0069]
从所述绿幕背景数据集随机选取绿幕背景图像。
[0070]
在具体实现中,利用keylight处理,从所述绿幕抠像数据集中随机选取包含绿溢信息的第一前景图像,以及生成所述第一前景图像对应的第一alpha图像,其中包含绿溢信息的第一前景图像为本实施例新增加的数据集,便于网络深度学习模型学习绿色溢出的特征。
[0071]
s3、将所述第一前景图像、所述第一alpha图、所述绿幕背景图像合成,生成初始绿幕图像。
[0072]
在具体实现中,将所述第一前景图像、所述第一alpha图、所述绿幕背景图像合成,生成初始绿幕图像为:
[0073]
c=f
×
α+b
×
(1-α)
[0074]
其中,f表示包含有绿溢信息的所述第一前景图像,α表示所述第一前景图像对应的第一alpha图像,b表示所述绿幕背景图像,c表示所述初始绿幕图像。
[0075]
对于绿色溢出的去除问题,本实施例在所述绿幕抠像数据集中增加了一项带有绿色溢出的图像,即包含绿溢信息的第一前景图像,通过将其和绿幕背景数据集合成以及同时预测alpha图和前景图的方式,使得能够学习绿色溢出的特征并对其进行有效的去除,从
而达到视觉上逼真的效果。
[0076]
此外,可以预先将所述第一前景图像、所述第一alpha图像以及所述绿幕背景图像均进行几何增强处理与像素增强方法处理,增强数据集的多样性,以便于后续进行合成,生成初始绿幕图像。其中,几何增强处理包括上下翻转、左右翻转、旋转、平移、缩放等操作;像素增强方法包括对比度调节、饱和度调节、色度调节、亮度调节等操作。
[0077]
s4、利用所述初始绿幕图像生成目标绿幕背景图像。
[0078]
在具体实现中,如图2中所示,图2显示了步骤s4的具体流程示意图,利用所述初始绿幕图像生成目标绿幕背景图像具体包括:
[0079]
s41、将所述初始绿幕图像从rgb颜色空间转换为hsv颜色空间;
[0080]
s42、基于hsv颜色空间,对所述初始绿幕图像进行二值图像处理,生成二值化绿幕图像,生成的所述二值化绿幕图像为:
[0081][0082]
其中,migreen、magreen分别表示hsv颜色空间设置的最小阈值与最大阈值。
[0083]
s43、将所述初始绿幕图像与所述二值化绿幕图像合成,得到初始绿幕背景图像,所述初始绿幕背景图像包含绿色像素信息和黑色像素信息,得到所述初始绿幕背景图像为:
[0084]
b'=c
×
(1-mask)
[0085]
其中,c表示所述初始绿幕图像。
[0086]
s44、对所述初始绿幕背景图像进行聚类处理,得到所述目标绿幕背景图像,所述目标绿幕背景图像包含绿色像素信息。本实施例中可以具体采用k-means聚类法聚成两类,选择其中包含绿色像素信息的一类背景图像作为目标绿幕背景图像b”。
[0087]
本实施例中,利用所述初始绿幕图像自动生成目标绿幕背景图像,有效地提升了绿幕抠像的精细程度,并避免了传统方法中的人工调节。
[0088]
s5、利用所述初始绿幕图像与所述目标绿幕背景图像,输入至深度学习模型中进行训练,输出第二前景图像以及所述第二前景图像对应的第二alpha图像,所述第二前景图像不包含绿溢信息。
[0089]
在具体实现中,将所述初始绿幕图像c与所述目标绿幕背景图像b”一起输入构建的深度学习模型中进行训练,其中深度学习模型结构采用轻量级深度学习模型,由编码器、aspp模块、跳跃连接和解码器组成,编码器采用轻量级mobilenetv2模型来提取图像特征,轻量级mobilenetv2模型为将标准mobilenetv2模型轻量化处理,本实施例在标准mobilenetv2模型的最后一个模块上使用膨胀以保持输出stride为16,并删除了最初用于分类的分类器模块。aspp模块是指空洞空间卷积池化金字塔,它对所给定的输入以不同采样率的空洞卷积并行采样,相当于以多个比例捕捉图像的上下文,即在不改变分辨率的前提下增大网络感受野,从而增强网络获得多尺度上下文的能力。跳跃连接使得解码器能同时获得高阶语义特征和低阶细节特征,实现方式为在mobilenetv2的forward方法中返回所有分辨率的特征图以供解码器使用。解码器融合高低阶特征并同时预测alpha和去除绿色溢出的前景图,本实施例中,对解码器网络使用简单的结构来减少参数数量并加快训练速度。解码器网络有四个卷积层,除最后一层外每个卷积层后边都是bn层和relu激活函数。在
每个卷积层前,采用双线性上采样,并与来自编码器的跳跃连接特征进行拼接。
[0090]
本实施例,采用采用轻量级的深度学习模型,使得模型在保持抠像精度的同时,极大地提升了处理速度,达到实时性的要求。
[0091]
此外,本实施例中通过计算所述第二alpha图像的损失函数与所述第二前景图像的损失函数,通过所述第二alpha图像的损失函数与所述第二前景图像的损失函数结合,进行模型训练,以评估所述第二alpha图像和去除绿色溢出后的前景图,即所述第二前景图像,实现了可去除绿溢的实时自动绿幕抠像处理。
[0092]
其中,所述第二alpha图像的损失函数包括两部分,即其中,所述第二alpha图像的损失函数包括两部分,即表示第一损失函数,表示第二损失函数,所述第一损失函数与所述第二损失函数结合用于训练所述第二alpha图像,所述第一损失函数用于衡量预测的第二alpha图像αi和所述第二alpha图像对应的真实数据之间的差异,所述第二损失函数为梯度损失,
[0093]
所述第二前景图像的损失函数表示为:其中,fi表示预测的所述第二前景图像,表示所述第二前景图像对应的真实数据。
[0094]
综上,本实施例提供的绿幕抠像方法,基于深度学习方法,通过构建包含绿溢信息的多样化绿幕抠像数据集和绿幕背景数据集的方法,使得可以通过网络训练的方式处理绿幕抠像和去除绿溢问题。同时,通过从绿幕抠像数据集中随机选取包含绿溢信息的第一前景图像,以及对应的第一alpha图像;并将所述第一前景图像、所述第一alpha图与绿幕背景图像合成,生成初始绿幕图像;然后利用初始绿幕图像自动生成目标绿幕背景图像作为辅助信息,初始绿幕图像与目标绿幕背景图像结合,使得抠像质量更为精细,同时实现了自动化,避免了人工调节参数的需要,在不需要人工参与的条件下保证了抠像精度。然后,利用所述初始绿幕图像与所述目标绿幕背景图像,输入至构建的深度学习模型中进行训练,输出不包含绿溢信息的第二前景图像以及对应的第二alpha图像,使得不仅在同一模型中解决了绿幕抠像和去除绿溢两个问题,轻量级网络结构的使用在保证抠像精度的同时提升处理速度,达到实时。相较于现有的绿幕抠像方法,本发明提供的绿幕抠像方法,在发光不均匀等挑战性的场景下表现较好,且本方法是自动且实时的,不需要人工参与,且有效的去除绿色溢出现象,达到视觉上更为逼真的效果,且本方法不需要trimap或背景作为额外输入,效率更高。
[0095]
下面将本实施例提供的绿幕抠像方法与现有的自然图像抠像方法cf、knn、fba、modnet、lfp、bgmv2、aim进行对比,以及与现有的专业抠像软件keylight、aximmetry进行对比,进行效果验证。
[0096]
具体的,与自然图像抠像方法cf、knn、fba、modnet、lfp、bgmv2、aim对比结果如图3中所示。具体选择了5张人类和半透明的真实绿幕图像来展示提出方法的有效性。cf预测精细的边界细节,但在具有小孔的区域表现不佳。knn的表现优于cf,但在某些半透明场景中可能会抠像失败。由于仅在人像数据集上进行训练,modnet无法抠像其他类型。这三种方法
在预测前景方面都表现不佳,因为它们没有考虑绿幕抠像中的一个关键问题:绿色溢出。虽然aim是一种自动抠像方法,但它通常预测粗糙的边缘。bgmv2由于对输入背景的泛化能力较弱以及无法去除绿色溢出而表现不佳。fba和lfp方法通常在预测alpha图方面表现更好。然而,它们去除绿色溢出的能力非常有限。相比之下,本发明提供的绿幕抠像方法能够显示出视觉上更真实的抠像性能。
[0097]
与现有的专业抠像软件keylight、aximmetry对比结果如图4中所示。由于专业绿幕抠像软件在一般绿幕场景中表现良好,因此选择了3张具有挑战性的绿幕数据进行比较,其中展示了具有不同类型发丝的人体图像,由图中可以看出,本发明提供的绿幕抠像方法可以获得比专业绿幕抠像软件更多的发丝细节。专业绿幕抠像软件在某些情况下效果不佳,因为它们试图调整参数以获得干净的背景,而这会导致边缘细节粗糙。而本发明基于深度学习的方法实现绿幕抠像和去除绿溢,首先创建包含绿溢的绿幕抠像数据集和绿幕背景数据集,然后将初始绿幕图像和自动生成的目标绿幕背景图像输入搭建的网络模型中,模型同时输出输出不包含绿溢信息的第二前景图像以及对应的第二alpha图像,从而同时解决绿幕抠像和去除绿溢两个问题。
[0098]
本发明上述实施例可以应用于绿幕抠像方法功能的终端设备中,该终端设备可以包括个人终端、以及上位机终端等,本发明实施例对此不加以限制。该终端可以支持windows、android(安卓)、ios、windowsphone等操作系统。
[0099]
参照图5,图5示出了一种绿幕抠像装置400,应用于绿幕抠像方法可应用于个人终端、以及上位机终端设备中,其可实现通过如图1、图2所示的方法,本技术实施例提供的绿幕抠像装置能够实现上述绿幕抠像方法实现的各个过程。
[0100]
一种绿幕抠像装置400,采用上述的绿幕抠像方法,所述装置至少包括:
[0101]
数据集构建模块401,用于构建绿幕抠像数据集和绿幕背景数据集,所述绿幕抠像数据集包含绿溢信息;
[0102]
图像合成模块402,用于从所述绿幕抠像数据集中随机选取第一前景图像,以及所述第一前景图像对应的第一alpha图像,所述第一前景图像包含绿溢信息;
[0103]
从所述绿幕背景数据集随机选取绿幕背景图像;
[0104]
将所述第一前景图像、所述第一alpha图、所述绿幕背景图像合成,生成初始绿幕图像;
[0105]
利用所述初始绿幕图像生成目标绿幕背景图像;
[0106]
图像训练模块403,用于利用所述初始绿幕图像与所述目标绿幕背景图像,输入至深度学习模型中进行训练,输出第二前景图像以及所述第二前景图像对应的第二alpha图像,所述第二前景图像不包含绿溢信息。
[0107]
本实施例提供的绿幕抠像装置,能够自动且实时实现绿幕抠像处理,不需要人工参与,且有效的去除绿色溢出现象,达到视觉上更为逼真的效果,效率更高。
[0108]
应当理解,对绿幕抠像方法的各描述同样适用于根据本技术实施例的绿幕抠像装置400,为避免重复,不再详细描述。
[0109]
此外,应当理解,在根据本技术实施例的绿幕抠像装置400中,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即绿幕抠像装置400可划分为与上述例示出的模块不同的功能模块,以完成以上描述
的全部或者部分功能。
[0110]
图6是本技术实施例提供的电子设备的结构示意图。
[0111]
如图6中所示,本技术实施例还提供了一种电子设备500,包括处理器501,存储器502,存储在存储器502上并可在所述处理器501上运行的程序或指令,该程序或指令被处理器501执行时实现上述绿幕抠像方法的步骤,且能达到相同的技术效果。
[0112]
需要注意的是,本技术实施例中的电子设备可包括移动电子设备和非移动电子设备。
[0113]
本技术实施例还提供一种可读存储介质,所述可读存储介质上存储有程序或指令,该程序或指令被处理器执行时实现上述绿幕抠像方法的步骤,且能达到相同的技术效果。
[0114]
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本技术实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以施加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。
[0115]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以计算机软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,或者网络设备等)执行本技术各个实施例所述的方法。
[0116]
上面结合附图对本技术的实施例进行了描述,但是本技术并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本技术的启示下,在不脱离本技术宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本技术的保护之内。