掌桥专利:专业的专利平台
掌桥专利
首页

图像处理方法、装置、电子设备及存储介质

文献发布时间:2024-01-17 01:26:37


图像处理方法、装置、电子设备及存储介质

技术领域

本申请涉及图像处理技术领域,更具体地,涉及一种图像处理方法、装置、电子设备及存储介质。

背景技术

在图像处理技术领域,通过深度学习模型确定的分割掩膜对包括绿幕图像进行前景提取,得到包括目标对象的前景区域,然后驱动前景区域中的目标对象做出需求的动作(例如驱动背景替换图像中的人嘴部呈现发“a”音的状态)后,得到驱动图像,再复用驱动前的分割掩膜对驱动图像进行分割,得到动作驱动后以目标对象作为前景的前景图像。

但是,对背景替换图像中目标对象中的某个部位(例如嘴部)动作后,可能导致驱动图像中目标对象所在的区域与原始图像中目标对象所在的区域实际上位置并不重合,复用驱动前的分割掩膜对驱动图像进行分割,容易导致分割出的前景图像中的目标对象不准确,存在从驱动图像中分割出的前景效果较差的问题。

发明内容

有鉴于此,本申请实施例提出了一种图像处理方法、装置、电子设备及存储介质。

第一方面,本申请实施例提供了一种图像处理方法,方法包括:将绿幕图像对应的预分割掩膜以及绿幕图像融合,得到包含前景区域和背景区域的合成图像,前景区域中具有目标对象;从合成图像中确定包括目标部位的目标区域;目标部位为目标对象中包括驱动部位的部位;对目标区域中的驱动部位进行驱动,以得到驱动图像;根据驱动图像的像素和背景区域的像素,提取驱动图像中与目标部位对应的驱动后的目标部位;根据驱动后的目标部位和前景区域中除目标部位以外的区域,得到目标对象对应的目标前景区域。

第二方面,本申请实施例提供了一种图像处理装置,装置包括:融合模块,用于将绿幕图像对应的预分割掩膜以及绿幕图像融合,得到包含前景区域和背景区域的合成图像,前景区域中具有目标对象;确定模块,用于从合成图像中确定包括目标部位的目标区域;目标部位为目标对象中包括驱动部位的部位;驱动模块,用于对目标区域中的驱动部位进行驱动,以得到驱动图像;提取模块,用于根据驱动图像的像素和背景区域的像素,提取驱动图像中与目标部位对应的驱动后的目标部位;获得模块,用于根据驱动后的目标部位和前景区域中除目标部位以外的区域,得到目标对象对应的目标前景区域。

可选地,确定模块,还用于将合成图像中背景区域中像素点的像素值替换为目标像素值,得到背景替换图像;从背景替换图像中确定包括目标部位的目标区域;相应的,提取模块,还用于根据驱动图像的像素的像素值和目标像素值,提取驱动图像中与目标部位对应的驱动后的目标部位。

可选地,提取模块,还用于根据驱动图像中每个像素点的像素值和目标像素值之间的差异,确定驱动图像对应的第一分割掩膜;利用第一分割掩膜提取驱动图像中与目标部位对应的驱动后的目标部位。

可选地,提取模块,还用于根据驱动图像中每个像素点的像素值和目标像素值之间的差异,确定驱动图像中每个像素点各自对应的掩膜值;根据驱动图像中每个像素点各自对应的掩膜值,确定驱动图像对应的第一分割掩膜。

可选地,提取模块,还用于若驱动像素点的像素值与目标像素值之间的差异大于第一阈值,确定驱动像素点的掩膜值为第一值;驱动像素点为驱动图像中任意一个像素点;若驱动像素点的像素值与目标像素值之间的差异小于第二阈值,确定驱动像素点的掩膜值为第二值;第一值大于第二值;若驱动像素点的像素值与目标像素值之间的差异不大于第一阈值且不小于第二阈值,根据驱动像素点的像素值与目标像素值之间的差异、第一阈值以及第二阈值,确定驱动像素点的掩膜值。

可选地,提取模块,还用于对第一分割掩膜中目标部位的边缘进行边缘向内腐蚀处理,得到驱动图像对应的第二分割掩膜;利用第二分割掩膜提取驱动图像中与目标部位对应的驱动后的目标部位。

可选地,提取模块,还用于通过目标尺寸的卷积核对第一分割掩膜中目标部位的边缘进行卷积处理,得到驱动图像对应的第三分割掩膜;通过模糊核对第三分割掩膜中目标部位的边缘进行平滑处理,得到驱动图像对应的第二分割掩膜。

可选地,绿幕图像为目标视频中包括的视频帧;提取模块,还用于获取相邻绿幕图像中包括目标部位的相关区域对应的相关分割掩膜,相邻绿幕图像是指目标视频中与绿幕图像相邻的且包括目标对象的视频帧;相关分割掩膜用于指示驱动相关区域中的驱动部位后目标部位所在的区域;根据相关分割掩膜对第二分割掩膜进行时序平滑处理,得到驱动图像对应的目标分割掩膜;利用目标分割掩膜提取驱动图像中与目标部位对应的驱动后的目标部位。

可选地,提取模块,还用于将相邻绿幕图像对应的预分割掩膜以及相邻绿幕图像融合,得到包含相关前景区域和相关背景区域的相关合成图像,相关前景区域中具有目标对象;将相关合成图像中相关背景区域中像素点的像素值替换为目标像素值,得到相关背景替换图像;从相关背景替换图像中确定包括目标部位的相关目标区域;对相关目标区域中的驱动部位进行驱动,以得到相关驱动图像;根据相关驱动图像的像素和目标像素值,确定相关目标区域对应的相关分割掩膜。

可选地,相邻绿幕图像包括在目标视频中位于绿幕图像之前的第一相邻绿幕图像,和位于绿幕图像之后的第二相邻绿幕图像;相关分割掩膜包括第一相邻绿幕图像对应的第一相关分割掩膜以及第二相邻绿幕图像对应的第二相关分割掩膜;提取模块,还用于对第一相关分割掩膜、第二相关分割掩膜以及第二分割掩膜进行加权求和,得到目标分割掩膜。

可选地,获得模块,还用于将预置背景图像作为目标前景区域的背景,对目标前景区域以及预置背景图像进行融合,得到目标背景替换图像。

可选地,提取模块,还用于从绿幕图像对应的预分割掩膜中获取与目标区域对应的区域分割掩膜;将区域分割掩膜与驱动图像进行融合,得到融合驱动图像;若融合驱动图像不满足预设条件,根据驱动图像的像素和背景区域的像素,提取驱动图像中与目标部位对应的驱动后的目标部位。

第三方面,本申请实施例提供了一种电子设备,包括处理器以及存储器;一个或多个程序被存储在存储器中并被配置为由处理器执行以实现上述的方法。

第四方面,本申请实施例提供了一种计算机可读存储介质,计算机可读存储介质中存储有程序代码,其中,在程序代码被处理器运行时执行上述的方法。

第五方面,本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。电子设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该电子设备执行上述的方法。

本申请实施例提供的一种图像处理方法、装置、电子设备及存储介质,在本申请中,对目标区域中的驱动部位进行驱动,得到驱动图像,利用驱动图像的像素和背景区域的像素,提取驱动图像中与目标部位对应的驱动后的目标部位,而不是直接复用驱动前绿幕图像对应的预分割掩膜对驱动图像进行分割,因此,本申请避免了复用预分割掩膜对驱动图像进行分割导致分割出的驱动后的目标部位包括背景区域中的像素点的情况以及驱动后的目标部位缺少了部分像素点的情况发生,提高了分割出的目标前景区域的准确率,进而提高了分割效果。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1示出了相关技术中人脸分割的示意图;

图2 示出了本申请实施例适用的应用场景的示意图;

图3示出了本申请一个实施例提出的一种图像处理方法的流程图;

图4示出了本申请实施例中一种绿幕图像的融合过程示意图;

图5示出了本申请实施例中又一种绿幕图像的融合过程示意图;

图6示出了本申请又一个实施例提出的一种图像处理方法的流程图;

图7示出了本申请再一个实施例提出的一种图像处理方法的流程图;

图8示出了本申请实施例中一种绿幕图像的背景替换流程的示意图;

图9示出了本申请一个实施例提出的一种图像处理装置的框图;

图10示出了用于执行根据本申请实施例的图像处理方法的电子设备的结构框图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。根据本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

在以下的描述中,所涉及的术语“第一\第二”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。

除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。

需要说明的是:在本文中提及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。

本申请公开了一种图像处理方法、装置、电子设备及存储介质,涉及人工智能技术。

人工智能(Artificial Intelligence, AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。

人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。

机器学习(Machine Learning, ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。

随着人工智能(Artificial Intelligence,简称AI)的发展,诞生了一种新的虚拟对象——数智人,所谓“数智人”,就是能像真人一样跟用户交流、执行工作任务的AI虚拟人,“数智人”整合了语音交互、自然语言理解、图像识别等AI能力,外观形象更鲜活,与人之间的对话更自然,将人机交互从单纯的对话工具转变为真正的沟通交流。与数字人相比,更加智能、人性化。

目前,可以获取拍摄某一人物的原始视频,针对原始视频中的每个视频帧,通过绿幕分割技术确定的分割掩膜将视频帧中的人物以及背景分开,之后驱动视频帧中的人物做出需求的动作后,得到驱动图像,再通过绿幕分割技术确定的新的分割掩膜对驱动图像进行分割,以提取出驱动图像中人物的前景区域,之后,再将驱动图像中人物的前景区域以外的区域进行背景替换,实现对驱动图像中人物的背景的替换,从而实现数智人直播。

绿幕分割技术是一种在电影、电视剧以及游戏里面设计到特效生成中被大量使用,它通过在拍摄时将主体和背景隔开,再通过图像处理技术将背景替换为另一个图像或视频,来实现虚拟背景和现实前景混合的效果。

目前,可以通过深度学习模型分析图像的纹理、色彩等特征,确定分割掩膜,再通过分割掩膜来分割图像中的人物和背景,但是,通过深度学习模型确定分割掩膜需要耗费大量的算力,导致分割掩膜的确定速度较慢,导致分割效率较低。

也可以通过图像处理软件内置的绿幕抠图功能,来分割驱动图像中的人物,但是,图像处理软件内置的绿幕抠图功能需要用户设置去选取背景同时调整边缘羽化以及容差等参数,使得设置参数的时长较长,设置参数的效率较低,导致分割效率较低。

另外,还可以基于HSV(Hue(色相) Saturation(饱和度), Value(色明度))空间判断图像的色相区间,从而实现从图像中分割出人物,然而,在色相空间内对前景和背景分离的处理方式中,边缘上的处理效果较为差,导致分割结果的准确率较低。

相关技术中,还可以通过驱动前的分割掩膜对驱动后的驱动图像进行分割,从而可以不再需要重新确定分割掩膜,大大提高了分割效率。然而,采用该方法,通过分割掩膜对驱动图像分割时,分割准确率较低。

如图1所示,通过头部区域的分割掩膜102对驱动前的图像中头部区域进行分割,其中,驱动前的脸部的如101所示;在通过“大”对脸部进行文本驱动得到驱动图像,驱动图像中的脸部如103所示,继续复用分割掩膜102对驱动图像进行分割,得到脸部的分割结果为104,在分割结果104中包括了驱动图像中背景的部分内容105和106,导致分割结果不准确。

基于此,发明人提出了本申请的图像处理方法,对目标区域中的驱动部位进行驱动,得到驱动图像,利用驱动图像的像素和背景区域的像素,提取驱动图像中与目标部位对应的驱动后的目标部位,而不是直接复用驱动前绿幕图像对应的预分割掩膜对驱动图像进行分割,因此,本申请避免了复用预分割掩膜对驱动图像进行分割导致分割出的驱动后的目标部位包括背景区域中的像素点的情况以及驱动后的目标部位缺少了部分像素点的情况发生,提高了分割出的目标前景区域的准确率,进而提高了分割效果。

同时,根据驱动图像的像素和背景区域的像素,提取驱动图像中与目标部位对应的驱动后的目标部位,不需要通过深度学习模型本来确定目标分割掩膜,大大减少了分割时长,从而提高了根据驱动图像的像素和背景区域的像素,以及提高了提取驱动图像中与目标部位对应的驱动后的目标部位的效率。

如图2所示,本申请实施例所适用的应用场景包括终端20和服务端10,终端20和服务端10通过有线网络或者无线网络通信连接。终端20可以是智能手机、平板电脑、笔记本电脑、台式电脑、智能家电、车载终端、飞行器、可穿戴设备终端、虚拟现实设备以及其他可以进行页面展示的终端设备,或者运行其他可以调用页面展示应用的其他应用(例如即时通讯应用、购物应用、搜索应用、游戏应用、论坛应用、地图交通应用等)。

服务端10可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。服务端10可以用于为终端20运行的应用提供服务。

其中,终端20可以向服务端10发送绿幕图像,服务端10可以根据绿幕图像对应的预分割掩膜以及绿幕图像进行融合得合成图像,从合成图像中确定包括目标部位的目标区域;目标部位为目标对象中包括驱动部位的部位;对目标区域中的驱动部位进行驱动,以得到驱动图像;根据驱动图像的像素和背景区域的像素,提取驱动图像中与目标部位对应的驱动后的目标部位;根据驱动后的目标部位和前景区域中除目标部位以外的区域,得到目标对象对应的目标前景区域,最后,服务端10可以根据目标前景区域确定背景替换后的目标背景替换图像,再将目标背景替换图像返回给终端20。

绿幕图像可以是指包括目标对象且背景为绿幕背景的图像,目标对象可以是人、动物或者机械设备等。目标部位是指目标对象中的一个部位,驱动部位为目标部位的一部分,例如,目标对象是人时,目标部位可以是头部,驱动部位可以是头部中的脸部(可以包括嘴巴);又如,目标对象是狗时,目标部位的可以是狗的屁股,驱动部位可以是尾巴。

服务端10可以通过基于深度学习的分割模型确定绿幕图像的预分割掩膜。其中,服务端10可以通过包括目标对象的样本图像以及样本图像对应的掩膜图像对初始分割模型进行训练,得到分割模型。

在另一实施方式中,终端20可以用于执行本申请的方法,在获得包括目标对象的目标前景区域后,终端20根据目标前景区域确定背景替换后的目标背景替换图像。

可以理解的是,终端20也可以是通过基于深度学习的分割模型确定绿幕图像的预分割掩膜。服务端10获取到分割模型之后,可以将分割模型存储在分布式云存储系统,由终端20从分布式云存储系统中获取分割模型,以在获取到分割模型之后,根据分割模型确定预分割掩膜。

为了方便表述,下述各个实施例中,以图像处理由电子设备执行为例进行说明。

请参阅图3,图3示出了本申请一个实施例提出的一种图像处理方法的流程图,该方法可以应用于电子设备,电子设备可以是图2中的终端20或服务端10,该方法包括:

S110、将绿幕图像对应的预分割掩膜以及绿幕图像融合,得到包含前景区域和背景区域的合成图像,前景区域中具有目标对象。

可以对以绿幕为背景的目标对象进行拍摄,得到绿幕图像;也可以对以绿幕为背景的目标对象进行拍摄,得到拍摄视频,再从拍摄的视频中获取任意一个视频帧或特定视频帧(特定的视频帧例如可以是每十帧中的第一帧等)作为一个绿幕图像。

绿幕图像以目标对象作为前景,即,将绿幕图像中目标对象所在的区域作为前景,绿幕图像中除目标对象所在区域以外的绿幕区域作为背景。在一些实施例中可以是通过分割模型确定绿幕图像的预分割掩膜,然后对绿幕图像以及绿幕图像对应的预分割掩膜进行融合,得到合成图像;合成图像中目标对象所在的区域为前景区域,合成图像中除去除目标对象所在区域以外的绿幕区域作为前景区域。

绿幕图像对应的预分割掩膜(掩膜又叫做alphamask)包括绿幕图像中每个像素点对应的掩膜值,可以将绿幕图像中每个像素点的像素值乘以对应的掩膜值,得到合成图像,以实现绿幕图像以及绿幕图像对应的预分割掩膜的融合。

例如,如图4所示,图4中的a为一个绿幕图像,图4中的b为图4中的a所示的绿幕图像对应的预分割掩膜,图4中的c为图4中的a以及图4中的b融合后得到的合成图像。又如,如图5所示,图5中的a为又一个绿幕图像,图5中的b为图5中的a所示的绿幕图像对应的预分割掩膜,图5中的c为图5中的a和图5中的b融合后得到的合成图像。

S120、从合成图像中确定包括目标部位的目标区域;目标部位为目标对象中包括驱动部位的部位。

在本实施例中,目标部位是目标对象的一部分,驱动部位为目标部位中的一部分。获取合成图像中目标部位所在的区域作为目标区域。例如,合成图像中的目标对象为人,且目标部位为头部时,驱动部位是指脸部(包括嘴巴),从合成图像中获取包括头部的部分图像作为目标区域。

S130、对目标区域中的驱动部位进行驱动,以得到驱动图像。

可以通过预置的目标动作对目标区域中的驱动部位进行驱动,目标区域中目标对象的驱动部位的姿态变为执行目标动作对应的姿态,在驱动部位的姿态变为执行目标动作对应的姿态时目标部位的图像作为驱动图像,也即,驱动图像是指驱动部位做出目标动作时的目标区域。目标动作是指目标对象的驱动部位所需要做出的动作,例如,驱动部位为人的脸部(包括嘴巴)时,目标动作可以是指人说出“你”字的驱动文本、例如发“a”音的驱动文本。

示例性的,目标对象为人,目标部位为头部,驱动部位为脸部(包括嘴巴),目标区域中人的脸部的姿态为说出“你”时头部的图像,目标动作为说 “今”字,根据目标动作驱动目标区域中的人的脸部,得到人说出“今”时头部的图像,作为驱动图像。

由于驱动部位姿态改变后,可能带动驱动部位周围的其他部位发生改变,因此,在本申请中确定范围大于驱动部位的目标部位,从而在对驱动部位对应的部分图像处理时,也实现了对驱动部位以外的其他部位所对应的图像进行处理,从而可以提高对驱动后的目标部位分割的准确率。

S140、根据驱动图像的像素和背景区域的像素,提取驱动图像中与目标部位对应的驱动后的目标部位。

可以根据驱动图像中每个像素点的像素值与背景区域中的像素点的像素值之间的差异,确定驱动图像中每个像素点各自的掩膜值,汇总驱动图像中每个像素点各自的掩膜值,得到用于分割驱动后的目标部位的分割掩膜,再根据分割驱动后的目标部位的分割掩膜从驱动图像中提取目标部位所在的区域,作为驱动后的目标部位。其中,掩膜值是指在0-1之间的数值。提取目标部位所在的区域可以是指指将驱动图像中每个像素点乘以各自的掩膜值。

驱动图像中每个像素点的像素值与背景区域中的像素点的像素值之间差异可以是指目标对象对应的驱动图像中每个像素点的像素值与背景区域中的像素点的像素值之间的欧氏距离、余弦相似度、欧式距离的平方等。

作为一种实施方式,S120之前,方法可以包括:将合成图像中背景区域中像素点的像素值替换为目标像素值,得到背景替换图像,相应的,S120可以包括:从背景替换图像中确定包括目标部位的目标区域;S140可以包括:根据驱动图像的像素的像素值和目标像素值,提取驱动图像中与目标部位对应的驱动后的目标部位。

其中,目标像素值可以为绿幕色对应的像素值 RGB(0,124,0)。可以将合成图像中背景区域中像素点的像素值替换为目标像素值,得到合成图像对应的背景替换图像,背景替换图像中背景的像素点的像素值均为绿幕色,相较于合成图像,背景替换图像中背景的像素点的像素值更加均匀,从而使得根据驱动图像的像素的像素值和目标像素值提取的驱动后的目标部位的准确率更高。

得到背景替换图像后,背景替换图像中背景区域的像素点的像素值均为目标像素值,此时,可以从背景替换图像中确定包括目标部位的区域作为目标区域,再对目标区域中的驱动部位进行驱动,以得到驱动图像,之后,即可根据驱动图像的像素和目标像素值,提取驱动图像中与目标部位对应的驱动后的目标部位。

可以根据驱动图像中每个像素点的像素值与目标像素值之间的差异,确定驱动图像中每个像素点各自的掩膜值,汇总驱动图像中每个像素点各自的掩膜值,得到用于分割驱动后的目标部位的分割掩膜,再根据分割驱动后的目标部位的分割掩膜从驱动图像中提取目标部位所在的区域,作为驱动后的目标部位。

目标像素值是背景替换图像中表示背景的像素点的像素值,而且,在步骤S130中是基于背景替换图像为基础,驱动背景替换图像中确定的目标区域中目标对象的驱动部位,因此,驱动图像中表示背景的像素点的像素值也是目标像素值。这样,根据目标对象对应的驱动图像中每个像素点的像素值与目标像素值之间的差异来确定分割驱动后的目标部位的分割掩膜,该分割驱动后的目标部位的分割掩膜可以呈现驱动图像中目标部位所在的区域,以及背景所在的区域,相当于实现了基于驱动图像中的前景中像素点与背景中像素点之间的差异进行前景分割。

作为一种实施方式,S140之前,方法可以包括:绿幕图像对应的预分割掩膜中获取与目标区域对应的区域分割掩膜;将区域分割掩膜与驱动图像进行融合,得到融合驱动图像;S140包括:若融合驱动图像不满足预设条件,根据驱动图像的像素和背景区域的像素,提取驱动图像中与目标部位对应的驱动后的目标部位。其中,预设条件可以包括融合驱动图像不包括驱动图像中的背景中的像素点以及融合驱动图像不缺失目标部位的像素点。

得到驱动图像之后,可以从绿幕图像对应的预分割掩膜中获取用于分割目标区域中的目标部位的部分掩膜作为区域分割掩膜。若目标区域是从合成图像中确定的,则区域分割掩膜是分割合成图像中的目标区域的部分掩膜,同理,若目标区域是从背景替换图像中确定的,则区域分割掩膜是分割背景替换图像中的目标区域的部分掩膜。

直接复用绿幕图像对应的预分割掩膜中与目标区域对应的区域分割掩膜,对区域分割掩膜与驱动图像进行融合,得到融合驱动图像。由于,驱动图像是根据目标区域得到的,因此,用于分割目标区域的区域分割掩膜与驱动图像的尺寸相同,由于区域分割掩膜包括目标区域中每个像素点各自的掩膜值,因此,区域分割掩膜可以包括驱动图像中每个像素点各自的掩膜值,对区域分割掩膜与驱动图像进行融合可以是指将目标区域中每个像素点乘以各自的掩膜值。

若融合驱动图像不满足预设条件,表明融合驱动图像包括驱动图像中的背景中的像素点或融合驱动图像缺失目标部位的像素点,此时,继续按照本申请S140的方法继续进行处理。其中,融合驱动图像包括驱动图像中的背景中的像素点可能是由于驱动后的目标部位变小导致的,融合驱动图像缺失目标部位的像素点可能是由于驱动后的目标部位变大导致的。

若融合驱动图像满足预设条件,表明融合驱动图像不包括驱动图像中的背景中的像素点以及融合驱动图像未缺失目标部位的像素点,此时,可以将融合驱动图像作为驱动后的目标部位,并继续执行后续S150的步骤。

S150、根据驱动后的目标部位和前景区域中除目标部位以外的区域,得到目标对象对应的目标前景区域。

得到驱动后的目标部位后,可以获取在合成图像中的前景区域,并获取前景区域中除目标部位以外的区域,再将驱动后的目标部位以及前景区域中除目标部位以外的区域进行拼接,得到拼接后的结果作为目标前景区域。目标前景区域中目标对象的驱动部位的姿态为输出目标动作后的姿态。

可以理解的是,由于目标对象除去目标部位以外的部分未作出姿态的改变,因此,可以直接获取合成图像中前景区域中除目标部位以外的区域,直接将前景区域中除目标部位以外的区域与驱动后的目标部位拼接,以拼接为驱动部位的姿态发生改变的目标对象。

作为一种实施方式,S150之后,方法可以包括:将预置背景图像作为目标前景区域的背景,对目标前景区域以及预置背景图像进行融合,得到目标背景替换图像。

在本实施例中,预置背景图像可以是任意图像,可以是风景图像、建筑物图像或动物图像,预置背景图像可以包括目标对象也可以不包括目标对象,且预置背景图像的尺寸与目标对象对应的驱动图像的尺寸是相同的。

可以获取到任意图像作为背景图像,并将背景图像调整为与目标对象对应的驱动图像的尺寸相同的预置背景图像。

在本实施例中,可以将预置背景图像作为目标前景区域的背景,将目标前景区域叠加在预置背景图像之上,在重叠部分保留目标前景区域中像素点的像素值,在未重叠部分保留预置背景图像中像素点的像素值,得到目标背景替换图像。

本实施例中,对目标区域中的驱动部位进行驱动,得到驱动图像,利用驱动图像的像素和背景区域的像素,提取驱动图像中与目标部位对应的驱动后的目标部位,而不是直接复用驱动前绿幕图像对应的预分割掩膜对驱动图像进行分割,因此,本申请避免了复用预分割掩膜对驱动图像进行分割导致分割出的驱动后的目标部位包括背景区域中的像素点的情况以及驱动后的目标部位缺少了部分像素点的情况发生,提高了分割出的目标前景区域的准确率,进而提高了分割效果。

同时,直接将前景区域中除目标部位以外的区域与驱动后的目标部位拼接,并不需要对目标对象的合成图像的全部进行处理,仅需要对目标部位所在的目标区域对应的驱动图像进行处理,大大减少了数据处理量,同时,复用了通过预分割掩膜确定的前景区域中除目标部位以外的区域,进一步提高了分割目标前景区域的效率。

另外,还可以将绿幕图像对应的预分割掩膜中获取与目标区域对应的区域分割掩膜;将区域分割掩膜与驱动图像进行融合,得到融合驱动图像若融合驱动图像满足预设条件,直接获取融合驱动图像作为驱动后的目标部位,不再利用驱动图像的像素和背景区域的像素重新提取驱动后的目标部位,提高了目标部位的提取效率,进而提高了目标前景区域的分割效率。

请参阅图6,图6示出了本申请又一个实施例提出的一种图像处理方法的流程图,该方法可以应用于电子设备,电子设备可以是图2中的终端20或服务端10,该方法包括:

S210、将绿幕图像对应的预分割掩膜以及绿幕图像融合,得到包含前景区域和背景区域的合成图像;将合成图像中背景区域中像素点的像素值替换为目标像素值,得到背景替换图像;从背景替换图像中确定包括目标部位的目标区域。

其中,S210的描述参照上文S110-S130的描述,此处不再赘述。

S220、根据驱动图像中每个像素点的像素值和目标像素值之间的差异,确定驱动图像对应的第一分割掩膜。

可以根据驱动图像中每个像素点的像素值和目标像素值之间的差异,确定驱动图像中每个像素点各自对应的掩膜值;根据驱动图像中每个像素点各自对应的掩膜值,确定驱动图像对应的第一分割掩膜。

示例性的,可以确定根据驱动图像中每个像素点的像素值和目标像素值之间的差异与预设差异之间的比对结果,根据该比对结果,确定驱动图像中每个像素点各自的掩膜值。其中,预设差异可以是基于需求设定的值,例如,若驱动像素点的像素值与目标像素值之间的差异可以是指驱动像素点的像素值与目标像素值之间的欧式距离的平方,预设差异可以是指一个用于指示欧式距离的平方的阈值。

若驱动像素点的像素值与目标像素值之间的差异是指驱动像素点的像素值与目标像素值之间的欧式距离的平方,则驱动像素点的像素值与目标像素值之间的差异的计算过程参照公式一,公式一如下:

D=(x-p1)^2+(y-p2) ^2+(z-p3)^2                     (一)

其中,D是指驱动像素点的像素值与目标像素值之间的欧式距离的平方,(x,y,z)是指驱动像素点的RGB像素值,(p1,p2,p3)是指目标像素点的RGB像素值。

示例性的,预设差异包括第一阈值以及第二阈值,第一阈值大于第二阈值;针对目标对象对应的驱动图像中的每个像素点,若像素点的像素值与目标像素值之间差异大于第一阈值,确定像素点的掩膜值为第一值,若像素点的像素值与目标像素值之间差异小于第而差异,确定像素点的掩膜值为第二值,若像素点的像素值与目标像素值之间的差异不大于第一阈值且不小于第二阈值,可以根据第一值、第二值以及像素点的像素值与目标像素值之间的差异,计算像素点的掩膜值。其中,第一值可以是1,第二值可以是0,第一阈值可以是20,第二阈值可以是40。

目标对象对应的驱动图像中的每个像素点,根据第一值、第二值以及像素点的像素值与目标像素值之间的差异,计算像素点的掩膜值可以包括: 将像素点的像素值与目标像素值之间的差异与第二阈值的差作为第一结果,计算第一阈值与第二阈值的差作为第二结果,第一结果与第二结果作比值,作为像素点的掩膜值。

如上,驱动像素点的掩膜值的计算过程可以表述为公式二,公式二如下:

Alpha=c1, D>Dmax;

Alpha=c2, D

Alpha= (D-Dmin)/( Dmax-Dmin), Dmin

其中,Alpha为驱动像素点的掩膜值,D为驱动像素点的像素值与目标像素值之间的差异(也就是欧氏距离的平方),Dmin为第二阈值,Dmax;为第一阈值,c1为第一值,c2为第二值。

S230、利用第一分割掩膜提取驱动图像中与目标部位对应的驱动后的目标部位。

得到第一分割掩膜之后,可以将第一分割掩膜与驱动图像进行融合,以实现对驱动图像进行分割,得到目标对象中的目标部位对应的区域,该区域即为驱动后的目标部位,驱动后的目标部位的姿态是执行目标动作的姿态。

第一分割掩膜可以包括驱动图像中每个像素点各自的掩膜值,此时,将第一分割掩膜与驱动图像进行融合可以是指将驱动图像中每个像素点的像素值乘以各自对应的掩膜值。

作为一种实施方式,S230之前,方法还包括:对第一分割掩膜中目标部位的边缘进行边缘向内腐蚀处理,得到驱动图像对应的第二分割掩膜;相应的,S230包括:利用第二分割掩膜提取驱动图像中与目标部位对应的驱动后的目标部位。

第一分割掩膜中目标部位的边缘可以是指第一分割掩膜中目标部位的轮廓线。边缘向内腐蚀处理可以是指对第一分割掩膜中目标部位的边缘进行平滑处理,以使得第一分割掩膜中目标部位的边缘两侧的像素值的变化更加的平滑连续。

在一些实施例中,可以是对第一分割掩膜中目标部位的全部边缘,或者部分边缘进行向内腐蚀处理。例如,在目标部位为头部的情况下,通常用户关注较高的区域为脸部,在该种情况下,可以将目标部位中脸部的边缘进行向内腐蚀处理,而不需要对目标部位中除脸部的边缘外的其他边缘进行向内腐蚀处理,由此可以节省处理资源,和节省向内腐蚀处理的用时。

其中,对第一分割掩膜中目标部位的边缘进行边缘向内腐蚀处理,得到驱动图像对应的第二分割掩膜,包括:通过目标尺寸的卷积核对第一分割掩膜中目标部位的边缘进行卷积处理,得到驱动图像对应的第三分割掩膜;通过模糊核对第三分割掩膜中目标部位的边缘进行平滑处理,得到驱动图像对应的第二分割掩膜。目标尺寸可以是指3x3,模糊核可以是指5x5的模糊核(blur kernel)。

第二分割掩膜可以包括驱动图像中每个像素点各自的掩膜值,利用第一分割掩膜提取驱动图像中与目标部位对应的驱动后的目标部位可以是指指将驱动图像中每个像素点的像素值乘以各自对应的掩膜值,以得到驱动后的目标部位。

S240、根据驱动后的目标部位和前景区域中除目标部位以外的区域,得到目标对象对应的目标前景区域。

其中,S240的描述参照上文S150的描述,此处不再赘述。

本实施例中,根据驱动图像中每个像素点的像素值和目标像素值之间的差异,确定第一分割掩膜,再通过卷积核和模糊核对第一分割掩膜中目标部位的边缘处理,实现对第一分割掩膜中目标部位的边缘的平滑处理,可以保证后续基于第一分割掩膜进行分割所得到目标前景区域目标部位的边缘是平滑的,可以保证后续所得到目标前景区域的效果,实现了提高图像分割效果的目的。

此外,在本申请中,考虑到驱动目标对象的驱动部位的情况下,可能导致驱动部位附近其他关联部位联动,在如上的实施例中,从背景替换图像中获取包含驱动部位的目标部位所在的目标区域,然后以此为基础进行动作驱动,而不是从或背景替换图像中仅获取驱动部位所在的区域进行动作驱动,进而保证后续确定的第二分割掩膜可以准确表达驱动后的驱动部位所在的区域、以及驱动后与驱动部位动作发生联动的部位所在的区域,进而保证后续基于第二分割掩膜进行分割的准确性。

另外,通过卷积核和模糊核对第一分割掩膜中目标部位的边缘处理,实现对第一分割掩膜中目标部位的边缘的平滑处理,可以保证后续基于第二分割掩膜进行分割所得到目标前景区域中目标部位的边缘是平滑的,可以保证后续所得到目标前景区域的效果,实现了提高图像分割效果的目的。

请参阅图7,图7示出了本申请再一个实施例提出的一种图像处理方法的流程图,该方法可以应用于电子设备,电子设备可以是图2中的终端20或服务端10,该方法包括:

S310、确定绿幕图像对应的第二分割掩膜。

其中,S310的描述参照上文S210-S230的描述,此处不再赘述。

S320、获取相邻绿幕图像中包括目标部位的相关区域对应的相关分割掩膜。

其中,相邻绿幕图像是指目标视频中与绿幕图像相邻的且包括目标对象的视频帧;相关分割掩膜用于指示驱动相关区域中的驱动部位后目标部位所在的区域。

可以在目标视频中确定需要被调整的视频帧作为绿幕图像,目标视频中在绿幕图像前面与绿幕图像相邻且包括目标对象的视频帧或目标视频中在绿幕图像后面与绿幕图像相邻且包括目标对象的视频帧作为相邻绿幕图像。需要被调整的视频帧是指视频帧中的目标对象的目标部位需要进行驱动的视频帧。

相关区域可以是指相邻绿幕图像中包括目标部位的区域。例如,相邻绿幕图像为包括人物的视频帧,目标部位为人的头部,相关区域则是指相邻绿幕图像中人的头部所在的区域。

相关分割掩膜则可以是指在驱动相关区域中的驱动部位后,分割驱动后的相关区域中的目标部位的分割掩膜,相关分割掩膜可以是与相关区域尺寸相同的掩膜图像。相关分割掩膜可以包括相关区域中每个像素点对应的掩膜值。

作为一种实施方式,S320可以包括:将相邻绿幕图像对应的预分割掩膜以及相邻绿幕图像融合,得到包含相关前景区域和相关背景区域的相关合成图像,相关前景区域中具有目标对象;将相关合成图像中相关背景区域中像素点的像素值替换为目标像素值,得到相关背景替换图像;从相关背景替换图像中确定包括目标部位的相关目标区域;对相关目标区域中的驱动部位进行驱动,以得到相关驱动图像;根据相关驱动图像的像素和目标像素值,确定相关目标区域对应的相关分割掩膜。

相邻绿幕图像中包括目标对象的区域作为相关前景区域,不包括目标对象的区域作为相关背景区域,可以是通过分割模型确定相邻绿幕图像的预分割掩膜,然后对相邻绿幕图像以及相邻绿幕图像对应的预分割掩膜进行融合,得到相关合成图像;再通过目标像素值对相关合成图像中除去目标对象所在的相关前景区域以外的相关背景区域中的像素点的像素值进行替换,得到相关背景替换图像。

相关目标区域可以是指相关背景替换图像中包括目标部位的区域。例如,相关背景替换图像为包括人物的图像,目标部位为人的头部,相关目标区域则是指相关背景替换图像中人的头部所在的区域。

在一些实施方式中,可以是根据相关动作驱动相关目标区域中的驱动部位,相关目标区域中目标对象的驱动部位的姿态变为执行相关动作对应的姿态,在驱动部位的姿态变为执行相关动作对应的姿态时目标部位的图像作为相关驱动图像,也即,相关驱动图像是指驱动部位做出相关动作时的相关目标区域。

相关动作是指驱动相关目标区域中目标对象的驱动部位的动作,与目标动作的含义相同,不再赘述。例如,驱动部位为人的脸部(包括嘴巴)时,相关动作可以是指人说出“你”的动作。

示例性的,相关目标区域中目标对象为人,驱动部位为脸部(包括嘴巴),相关目标区域中人的脸部的姿态为说出“我”时的图像,相关动作为说 “们”字,根据相关动作驱动相关目标区域中的人的脸部,得到人说出“们”的图像,作为相关驱动图像。

可以根据目标对象对应的相关驱动图像中每个像素点的像素值与目标像素值之间的差异,确定相关驱动图像中每个像素点各自的掩膜值,汇总相关驱动图像中每个像素点各自的掩膜值,得到相关分割掩膜。

可以理解的是,相关驱动图像是基于相关目标区域确定的,因此,相关驱动图像与相关目标区域是尺寸相同的。相关区域是相邻绿幕图像中包括目标部位的区域,相关目标区域是相关背景替换图像中包括目标部位的区域,而相关背景替换图像与相邻绿幕图像的区别在于背景中的像素点的像素值,因此,相关目标区域与相关区域也是尺寸相同的,且相关目标区域与相关区域的区别在于背景中的像素点的像素值。因此,在驱动相关区域中的驱动部位后,也可以通过相关分割掩膜分割驱动相关区域中的驱动部位后的目标部位。

作为一种实施方式,可以确定相关驱动图像中每个像素点的像素值与目标像素值之间差异与预设差异的比对结果,根据该比对结果,确定相关驱动图像中每个像素点各自的掩膜值。目标对象对应的相关驱动图像中每个像素点的像素值与目标像素值之间差异可以是指目标对象对应相关的驱动图像中每个像素点的像素值与目标像素值之间的欧氏距离、余弦相似度等。

示例性的,例如,预设差异包括第一阈值以及第二阈值,第一阈值大于第二阈值;针对相关驱动图像中的每个像素点,若像素点的像素值与目标像素值之间差异大于第一阈值,确定像素点的掩膜值为第一值,若像素点的像素值与目标像素值之间差异小于第而差异,确定像素点的掩膜值为第二值,若像素点的像素值与目标像素值之间的差异不大于第一阈值且不小于第二阈值,可以根据第一值、第二值以及像素点的像素值与目标像素值之间的差异,计算像素点的掩膜值。

针对目标对象对应的相关驱动图像中的每个像素点,根据第一值、第二值以及像素点的像素值与目标像素值之间的差异,计算像素点的掩膜值可以包括:将像素点的像素值与目标像素值之间的差异与第二阈值的差作为第三结果,计算第一阈值与第二阈值的差作为第二结果,第三结果与第二结果作比值,得到像素点的掩膜值。

作为一种实施方式,还可以确定相关驱动图像中每个像素点的像素值与目标像素值之间差异与预设差异的比对结果,根据该比对结果,确定相关驱动图像中每个像素点各自的掩膜值,汇总定相关驱动图像中每个像素点各自的掩膜值得到相关区域掩膜,对相关区域掩膜中目标部位的边缘进行边缘向内腐蚀处理,得相关分割掩膜。

相关区域掩膜中目标部位的边缘可以是指相关区域掩膜中目标部位的轮廓线。边缘向内腐蚀处理可以是指对相关区域掩膜中目标部位的边缘进行平滑处理,以使得相关区域掩膜中目标部位的边缘两侧的像素值的变化更加的平滑连续。

在一些实施例中,可以是对相关区域掩膜中目标部位的全部边缘,或者部分边缘进行向内腐蚀处理。例如,在目标部位为头部的情况下,通常用户关注较高的区域为脸部,在该种情况下,可以将目标部位中脸部的边缘进行向内腐蚀处理,而不需要对目标部位中除脸部的边缘外的其他边缘进行向内腐蚀处理,由此可以节省处理资源,和节省向内腐蚀处理的用时。

其中,对相关区域掩膜中目标部位的边缘进行边缘向内腐蚀处理,得到相关分割掩膜,包括:通过目标尺寸的卷积核对相关区域掩膜中目标部位的边缘进行卷积处理,得到预处理掩膜;通过模糊核对预处理掩膜中目标部位的边缘进行平滑处理,得到相关分割掩膜。目标尺寸可以是指3x3,模糊核可以是指5x5的模糊核(blur kernel)。

S330、根据相关分割掩膜对第二分割掩膜进行时序平滑处理,得到驱动图像对应的目标分割掩膜。

通过相关分割掩膜对第二分割掩膜进行时序平滑处理,以避免根据目标掩膜分割出的目标前景区域在目标视频的时序之间过分的抖动,使得相邻绿幕图像的分割结果以及绿幕图像的分割结果中目标对象的目标部位的掩膜更加流畅连续。

其中,相邻绿幕图像包括在目标视频中位于绿幕图像之前的第一相邻绿幕图像,和位于绿幕图像之后的第二相邻绿幕图像;相关分割掩膜包括第一相邻绿幕图像对应的第一相关分割掩膜以及第二相邻绿幕图像对应的第二相关分割掩膜;S330可以包括:对第一相关分割掩膜、第二相关分割掩膜以及第二分割掩膜进行加权求和,得到目标分割掩膜。第一相关分割掩膜、第二相关分割掩膜以及第二分割掩膜的权重可以基于需求设定,且第二分割掩膜的权重最大。

例如,第一相关分割掩膜的权重为0.1,第二相关分割掩膜的权重为0.1,第二分割掩膜的权重为0.8。此时,绿幕图像的目标分割掩膜的确定过程为:A21=0.1*A1+0.8*A2 +A3*0.1,其中,A21为绿幕图像的第二分割掩膜,A1为第一相关分割掩膜,A3为第二相关分割掩膜。

S340、利用目标分割掩膜提取驱动图像中与目标部位对应的驱动后的目标部位。

得到目标分割掩膜之后,可以将目标分割掩膜与驱动图像进行融合,以实现对驱动图像进行分割,得到驱动后的目标部位,驱动后的目标部位中驱动部位的姿态是输出目标动作的姿态。

目标分割掩膜包括驱动图像中每个像素点各自的掩膜值,此时,将目标分割掩膜与驱动图像进行融合可以是指将驱动图像中每个像素点的像素值乘以各自对应的掩膜值。

S350、根据驱动后的目标部位和前景区域中除目标部位以外的区域,得到目标对象对应的目标前景区域。

其中,S350的描述参照上文S150的描述,此处不再赘述。

继续参照图8,对绿幕图像以及绿幕图像对应的预分割掩膜进行融合,得到合成图像,再将合成图像中的背景区域的像素点的像素值替换为目标像素值,得到背景替换图像。由于,绿幕图像是仅包括目标部位(头部)的图像,因此可以直接将背景替换图像确定为包括目标部位的目标区域。

然后对目标区域进行人脸驱动,得到对应的驱动图像,再根据驱动图像中每个像素点的像素值与背景替换图像中的背景中的像素点的目标像素值之间的差异,确定初始的分割掩膜81,初始的分割掩膜81的边缘局部区域811的放大图812所示,初始的分割掩膜81的边缘不够平滑连续。继续对初始的分割掩膜81进行边缘向内以及时序平滑处理,得到目标分割掩膜82,目标分割掩膜82的边缘局部区域821放大后的结果为822,目标分割掩膜82边缘平滑且连续。

最后,可以通过目标分割掩膜82对驱动图像进行分割,得到驱动后的目标部位83。由于,合成图像对应的背景替换图像作为目标区域,合成图像的前景区域中不再包括目标部位(头部)以外的区域,因此,得到的驱动后的目标部位83可以作为目标前景区域。

本实施例中,针对目标视频中的绿幕图像进行处理时,根据相邻绿幕图像对应的相关分割掩膜对绿幕图像的第二分割掩膜进行时序平滑处理,使得得到的目标分割掩膜的准确率更高,从而提高了根据目标分割掩膜提取的驱动后的目标部位的准确率,进而提高了确定的目标前景区域的效果。

为了更加清楚的解释本申请的技术方案,下面结合一示例性场景对本申请的图像处理方法进行解释,在该场景中,目标视频为2分钟的视频,目标视频为数智人讲话的视频,讲话内容为A,需要对目标视频的讲话内容调整为B,并将调整后的视频作为直播视频进行直播。

针对目标视频中的任意一个视频帧P2,确定其作为一个目标视频帧,并获取P1的前一个视频帧以及后一个视频帧P3,其中,P1的相关动作为说“你”、P2的目标动作为说“们”以及P3的相关动作为说“好”,驱动部位为脸部(包括嘴巴),目标部位为头部;目标对象可以是数智人。

P1的相关分割掩膜的获取过程:

通过基于深度学习的分割掩膜对P1进行处理,得到P1对应的预分割掩膜P12,对P1以及P12进行融合,得到相关合成图像P13,将P13中人以外的背景区域的像素值调整为目标像素值RGB(0,124,0),得到相关背景替换图像P14,在P14中确定头部区域对应的相关目标区域P15,在按照说“你”的动作驱动P15中的脸部,来获得头部对应的相关驱动图像P16,根据P16中各个像素点的像素值与目标像素值的差异,按照公式一以及公式二的方式,确定P16中各个像素点的掩膜值,再汇总P16中各个像素点的掩膜值,得到P15对应的相关区域掩膜P17。

之后,可以通过目标尺寸的卷积核对P17中头部的边缘进行卷积处理,得到P17对应的预处理掩膜P18;通过模糊核对P18中头部的边缘进行平滑处理,得到P1的相关分割掩膜。

P2的第二分割掩膜的获取过程:

通过基于深度学习的分割掩膜对P2进行处理,得到P2对应的预分割掩膜P22,对P2以及P22进行融合,得到合成图像P23,将P23中人以外的背景区域的像素值调整为目标像素值RGB(0,124,0),得到背景替换图像P24,在P24中确定头部对应的目标区域P25,在按照说“们”的动作驱动P25中的脸部,实现人脸部驱动,来获得头部对应的驱动图像P26,根据P26中各个像素点的像素值与目标像素值的差异,按照公式一以及公式二的方式,确定P26中各个像素点的掩膜值,再汇总P26中各个像素点的掩膜值,得到第一分割掩膜P27。

之后,可以通过目标尺寸的卷积核对P27中头部的边缘进行卷积处理,得到第三分割掩膜P28;通过模糊核对P28中头部的边缘进行平滑处理,得到P2的第二分割掩膜。

P3的相关分割掩膜的获取过程:

通过基于深度学习的分割掩膜对P3进行处理,得到P3对应的预分割掩膜P32,对P3以及P32进行融合,得到相关合成图像P33,将P33中人以外的背景区域的像素值调整为目标像素值RGB(0,124,0),得到相关背景替换图像P34,在P34中确定头部区域对应的相关目标区域P35,在按照说“好”的动作驱动P35中的脸部,来获得头部对应的相关驱动图像P36,根据P36中各个像素点的像素值与目标像素值的差异,按照公式一以及公式二的方式,确定P36中各个像素点的掩膜值,再汇总P36中各个像素点的掩膜值,得到相关目标区域P35对应的相关区域掩膜P37。

之后,可以通过目标尺寸的卷积核对P37中头部的边缘进行卷积处理,得到P37对应的预处理掩膜P38;通过模糊核对P38中头部的边缘进行平滑处理, 得到P3的相关分割掩膜。

至此,确定出P1相关分割掩膜、P2的第二分割掩膜以及P3的相关分割掩膜,按照P1相关分割掩膜的权重0.1、P2的第二分割掩膜的权重0.8以及P3的相关分割掩膜的权重0.1,对P1相关分割掩膜、P2的第二分割掩膜以及P3的相关分割掩膜,进行加权求和,得到求和结果,求和结果即为目标分割掩膜P0。

通过目标分割掩膜P0对驱动图像P26进行分割,得到驱动后的头部P29,从合成图像的前景区域中确定除去头部以外的区域P210,将P29以及P210拼接为目标对象,得到目标前景区域。

之后,获取预置背景图像,将预置背景图像作为目标前景区域的背景,将目标前景区域叠加在预置背景图像之上,得到P2对应的目标背景替换图像。得到P2对应的目标背景替换图像之后,可以将目标背景替换图像以直播的方式播放,实现对数智人直播。

该场景中,提出了一种适用于数智人直播场景的快速驱动后分割方案,助力于高效的数智人直播场景。不需要像之前的绿幕抠图算法需要人工介入调整参数。除外,该专利合理运用了预分割的结果,仅仅改变头部区域的分割掩膜(alpha),最终获得精细化的抠图效果。在时间耗时上仅仅需要3ms每一张图,满足了直播的需求。

同时,克服了因为驱动嘴形引起脸颊大小变化,导致之前复用的分割掩膜(mask)不准确的问题,影响数智人的直播效果。且只针对驱动的头部去做驱动后分割,可优化CPU(Central Processing Unit,中央处理器)分割时间到3毫秒/图,可给动作驱动留有充足的时间。

驱动后分割算法根据色域信息进行了边缘腐蚀以及欧空时序平滑流程,可以获得精细化且在时序上稳定的抠图效果,从而修正复用原始分割图导致的驱动后脸部露边的问题。

请参阅图9,图9示出了本申请一个实施例提出的一种图像处理装置的框图,装置1000包括:

融合模块910,用于将绿幕图像对应的预分割掩膜以及绿幕图像融合,得到包含前景区域和背景区域的合成图像,前景区域中具有目标对象;

确定模块920,用于从合成图像中确定包括目标部位的目标区域;目标部位为目标对象中包括驱动部位的部位;

驱动模块930,用于对目标区域中的驱动部位进行驱动,以得到驱动图像;

提取模块940,用于根据驱动图像的像素和背景区域的像素,提取驱动图像中与目标部位对应的驱动后的目标部位;

获得模块950,用于根据驱动后的目标部位和前景区域中除目标部位以外的区域,得到目标对象对应的目标前景区域。

可选地,确定模块920,还用于将合成图像中背景区域中像素点的像素值替换为目标像素值,得到背景替换图像;从背景替换图像中确定包括目标部位的目标区域;相应的,提取模块940,还用于根据驱动图像的像素的像素值和目标像素值,提取驱动图像中与目标部位对应的驱动后的目标部位。

可选地,提取模块940,还用于根据驱动图像中每个像素点的像素值和目标像素值之间的差异,确定驱动图像对应的第一分割掩膜;利用第一分割掩膜提取驱动图像中与目标部位对应的驱动后的目标部位。

可选地,提取模块,还用于根据驱动图像中每个像素点的像素值和目标像素值之间的差异,确定驱动图像中每个像素点各自对应的掩膜值;根据驱动图像中每个像素点各自对应的掩膜值,确定驱动图像对应的第一分割掩膜。

可选地,提取模块940,还用于若驱动像素点的像素值与目标像素值之间的差异大于第一阈值,确定驱动像素点的掩膜值为第一值;驱动像素点为驱动图像中任意一个像素点;若驱动像素点的像素值与目标像素值之间的差异小于第二阈值,确定驱动像素点的掩膜值为第二值;第一值大于第二值;若驱动像素点的像素值与目标像素值之间的差异不大于第一阈值且不小于第二阈值,根据驱动像素点的像素值与目标像素值之间的差异、第一阈值以及第二阈值,确定驱动像素点的掩膜值。

可选地,提取模块940,还用于对第一分割掩膜中目标部位的边缘进行边缘向内腐蚀处理,得到驱动图像对应的第二分割掩膜;利用第二分割掩膜提取驱动图像中与目标部位对应的驱动后的目标部位。

可选地,提取模块940,还用于通过目标尺寸的卷积核对第一分割掩膜中目标部位的边缘进行卷积处理,得到驱动图像对应的第三分割掩膜;通过模糊核对第三分割掩膜中目标部位的边缘进行平滑处理,得到驱动图像对应的第二分割掩膜。

可选地,绿幕图像为目标视频中包括的视频帧;提取模块940,还用于获取相邻绿幕图像中包括目标部位的相关区域对应的相关分割掩膜,相邻绿幕图像是指目标视频中与绿幕图像相邻的且包括目标对象的视频帧;相关分割掩膜用于指示驱动相关区域中的驱动部位后目标部位所在的区域;根据相关分割掩膜对第二分割掩膜进行时序平滑处理,得到驱动图像对应的目标分割掩膜;利用目标分割掩膜提取驱动图像中与目标部位对应的驱动后的目标部位。

可选地,提取模块940,还用于将相邻绿幕图像对应的预分割掩膜以及相邻绿幕图像融合,得到包含相关前景区域和相关背景区域的相关合成图像,相关前景区域中具有目标对象;将相关合成图像中相关背景区域中像素点的像素值替换为目标像素值,得到相关背景替换图像;从相关背景替换图像中确定包括目标部位的相关目标区域;对相关目标区域中的驱动部位进行驱动,以得到相关驱动图像;根据相关驱动图像的像素和目标像素值,确定相关目标区域对应的相关分割掩膜。

可选地,相邻绿幕图像包括在目标视频中位于绿幕图像之前的第一相邻绿幕图像,和位于绿幕图像之后的第二相邻绿幕图像;相关分割掩膜包括第一相邻绿幕图像对应的第一相关分割掩膜以及第二相邻绿幕图像对应的第二相关分割掩膜;提取模块940,还用于对第一相关分割掩膜、第二相关分割掩膜以及第二分割掩膜进行加权求和,得到目标分割掩膜。

可选地,获得模块950,还用于将预置背景图像作为目标前景区域的背景,对目标前景区域以及预置背景图像进行融合,得到目标背景替换图像。

可选地,提取模块940,还用于从绿幕图像对应的预分割掩膜中获取与目标区域对应的区域分割掩膜;将区域分割掩膜与驱动图像进行融合,得到融合驱动图像;若融合驱动图像不满足预设条件,根据驱动图像的像素和背景区域的像素,提取驱动图像中与目标部位对应的驱动后的目标部位。

需要说明的是,本申请中装置实施例与前述方法实施例是相互对应的,装置实施例中具体的原理可以参见前述方法实施例中的内容,此处不再赘述。

图10示出了用于执行根据本申请实施例的图像处理方法的电子设备的结构框图。该电子设备可以是图2中的终端20或服务端10等,需要说明的是,图10示出的电子设备的计算机系统1200仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。

如图10所示,计算机系统1200包括中央处理单元(Central Processing Unit,CPU)1201,其可以根据存储在只读存储器(Read-Only Memory,ROM)1202中的程序或者从存储部分1208加载到随机访问存储器(Random Access Memory,RAM)1203中的程序而执行各种适当的动作和处理,例如执行上述实施例中的方法。在RAM 1203中,还存储有系统操作所需的各种程序和数据。CPU1201、ROM1202以及RAM 1203通过总线1204彼此相连。输入/输出(Input/Output,I/O)接口1205也连接至总线1204。

以下部件连接至I/O接口1205:包括键盘、鼠标等的输入部分1206;包括诸如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid Crystal Display,LCD)等以及扬声器等的输出部分1207;包括硬盘等的存储部分1208;以及包括诸如LAN(Local AreaNetwork,局域网)卡、调制解调器等的网络接口卡的通信部分1209。通信部分1209经由诸如因特网的网络执行通信处理。驱动器1210也根据需要连接至I/O接口1205。可拆卸介质1211,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1210上,以使于从其上读出的计算机程序根据需要被安装入存储部分1208。

特别地,根据本申请的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1209从网络上被下载和安装,和/或从可拆卸介质1211被安装。在该计算机程序被中央处理单元(CPU)1201执行时,执行本申请的系统中限定的各种功能。

需要说明的是,本申请实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。

附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。

作为另一方面,本申请还提供了一种计算机可读存储介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读存储介质承载计算机可读指令,当该计算机可读存储指令被处理器执行时,实现上述任一实施例中的方法。

根据本申请实施例的一个方面,提供了计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。电子设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该电子设备执行上述任一实施例中的方法。

应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。

通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本申请实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台电子设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本申请实施方式的方法。

本领域技术人员在考虑说明书及实践这里公开的实施方式后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。

最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不驱使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

相关技术
  • 夜景图像处理方法、装置、电子设备及存储介质
  • 人脸图像的处理方法及装置、电子设备和存储介质
  • 图像处理方法和装置、电子设备、计算机可读存储介质
  • 图像处理方法、装置、电子设备及计算机可读存储介质
  • 图像处理方法、装置、存储介质及电子设备
  • 图像处理方法、图像处理装置、电子设备和存储介质
  • 图像处理方法、图像处理装置、电子设备和可读存储介质
技术分类

06120116212207