计算;推算;计数设备的制造及其应用技术1.本技术涉及图像处理技术领域,特别是涉及一种视频图像虚化方法、装置、计算机设备和存储介质。背景技术:2.随着计算机技术的发展,计算机的功能变得越来越多,且计算机的形态也发生着翻天覆地的改变,从第一台计算机“埃尼阿克”,到如今各式各样的移动终端,计算机的正逐渐变得方便携带。手机也被称为移动的计算机,目前的手机等移动终端已经可以胜任大部分计算机任务,例如拍摄视频,而目前利用移动终端进行视频拍摄,特别是拍摄人像时,通常会对人像的背景进行虚化,从而达到突出人像的效果,目前对视频人像的虚化方式通常是通过单帧的方式进行虚化,然而,通过单帧的方式虚化,容易导致视频虚化效果产生延迟。3.因此,目前的视频图像虚化方法存在虚化不及时的缺陷。技术实现要素:4.基于此,有必要针对上述技术问题,提供一种能够提高虚化及时性的视频图像虚化方法、装置、计算机设备和存储介质。5.一种视频图像虚化方法,所述方法包括:6.获取至少两帧视频图像对应的至少两帧待处理图像,并缓存所述至少两帧待处理图像;每帧视频图像中包括人像;7.调用第一线程,对已缓存的所述至少两帧待处理图像进行人像分割,并调用第二线程,对人像分割后的所述至少两帧待处理图像进行虚化,并输出虚化后的视频图像帧;其中,所述第一线程和所述第二线程为不同的线程。8.在其中一个实施例中,所述获取至少两帧视频图像对应的至少两帧待处理图像,包括:9.分别获取至少两帧视频图像对应的纹理图像;10.将各纹理图像转换为对应的rgba图像,得到所述至少两帧待处理图像。11.在其中一个实施例中,所述调用第一线程,对已缓存的所述至少两帧待处理图像进行人像分割之前,还包括:12.确定所述至少两帧rgba图像中的稳定帧;所述稳定帧表征该帧rgba图像中的人像相对于已缓存的其他rgba图像中的人像的变化幅度均小于预设阈值;13.对所述稳定帧进行人像分割,得到人像区域。14.在其中一个实施例中,15.所述缓存所述至少两帧待处理图像,包括:依次缓存所述至少两帧rgba图像至处理队列;16.所述确定所述至少两帧待处理图像中的稳定帧,包括:17.若检测到缓存开始时所述处理队列为空,则将缓存至所述处理队列的第一帧rgba图像确定为当前稳定帧;18.若检测到所述处理队列不为空,则根据所述处理队列中的当前稳定帧,以及新缓存至所述处理队列中的rgba图像,重新确定当前稳定帧。19.在其中一个实施例中,所述根据所述处理队列中的当前稳定帧,以及新缓存至所述处理队列中的rgba图像,重新确定当前稳定帧,包括:20.当检测到有新的rgba图像缓存至所述处理队列时,获取所述当前稳定帧对应的rgba图像与所述新的rgba图像间的差异值;21.若所述差异值小于预设阈值,则保持当前稳定帧不更新;22.若所述差异值大于或等于所述预设阈值,将所述新的rgba图像,确定为新的当前稳定帧。23.在其中一个实施例中,所述若检测到缓存开始时所述处理队列为空,则将缓存至所述处理队列的第一帧rgba图像确定为当前稳定帧之后,输出虚化后的视频图像帧之前,还包括:24.若所述处理队列中已缓存的rgba图像的数量小于预设数值,则输出当前稳定帧对应的视频图像帧。25.在其中一个实施例中,若所述处理队列为先进先出队列,所述若所述差异值小于预设阈值,则保持当前稳定帧不更新之后,还包括:26.若检测到所述当前稳定帧已从所述处理队列中移除,则将所述处理队列中已缓存的rgba图像中的中间一帧,确定为新的当前稳定帧。27.在其中一个实施例中,所述对所述稳定帧进行人像分割,得到人像区域,包括:28.根据人像分割算法,获取所述稳定帧中的人像对应的浮点数据,得到所述人像区域。29.在其中一个实施例中,所述调用第一线程,对已缓存的所述至少两帧待处理图像进行人像分割,并调用第二线程,对人像分割后的所述至少两帧待处理图像进行虚化,包括:30.调用第一线程,针对每帧rgba图像,根据所述人像区域对该帧rgba图像进行人像分割,得到该帧rgba图像对应的人像区域;31.调用第二线程,获取所述该帧rgba图像对应的上一帧rgba图像以及所述上一帧rgba图像对应的人像区域,根据所述上一帧rgba图像对应的人像区域确定所述上一帧rgba图像的虚化区域,对所述上一帧rgba图像的虚化区域进行虚化。32.一种视频图像虚化装置,所述装置包括:33.获取模块,用于获取至少两帧视频图像对应的至少两帧待处理图像,并缓存所述至少两帧待处理图像;每帧视频图像中包括人像;34.虚化模块,用于调用第一线程,对已缓存的所述至少两帧待处理图像进行人像分割,并调用第二线程,对人像分割后的所述至少两帧待处理图像进行虚化,并输出虚化后的视频图像帧;其中,所述第一线程和所述第二线程为不同的线程。35.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述的方法的步骤。36.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法的步骤。37.上述视频图像虚化方法、装置、计算机设备和存储介质,通过获取至少两帧包括人像的视频图像对应的至少两帧待处理图像并缓存,利用第一线程,对rgba图像进行人像分割,并利用第二线程对已缓存的至少两帧rgba图像进行虚化,并输出虚化后的视频图像帧。相较于传统的通过单帧虚化等方式进行视频图像的虚化,本方案通过缓存至少两帧rgba图像,并通过第一线程对待处理图像进行人像分割,再通过第二线程基于人像区域对视频图像进行虚化,从而实现了提高虚化及时性的效果。附图说明38.图1为一个实施例中视频图像虚化方法的应用环境图;39.图2为一个实施例中视频图像虚化方法的流程示意图;40.图3为另一个实施例中视频图像虚化方法的流程示意图;41.图4为一个实施例中视频图像虚化装置的结构框图;42.图5为一个实施例中计算机设备的内部结构图。具体实施方式43.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。44.本技术提供的视频图像虚化方法,可以应用于如图1所示的应用环境中。其中,终端102可以获取需要虚化的视频图像,并从视频图像中获取至少两帧视频图像对应的至少两帧待处理图像并缓存,例如至少两帧rgba图像,终端102还可以获取至少两帧rgba图像中的目标帧待处理图像对应的人像区域,例如通过获取至少两帧rgba图像中的稳定帧,并对稳定帧进行人像分割,获取其中的人像区域,并根据人像区域对已缓存的至少两帧rgba图像进行虚化,输出虚化后的视频图像帧。另外,在一个实施例中,还可以包括服务器104,终端102通过网络与服务器104进行通信。终端102可以从服务器104中获取至少两帧视频图像;另外,在终端102对rgba图像虚化完成后,也可以将虚化后的视频图像帧发送至服务器104中进行存储。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机和平板电脑,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。45.在一个实施例中,如图2所示,提供了一种视频图像虚化方法,以该方法应用于图1中的终端为例进行说明,包括以下步骤:46.步骤s202,获取至少两帧视频图像对应的至少两帧待处理图像,并缓存至少两帧待处理图像;每帧视频图像中包括人像。47.其中,当终端102检测到有视频图像存在时,终端102可以获取需要进行虚化的视频图像,该视频图像可以至少包括两帧视频图像。并且,上述至少两帧视频图像可以是包括人像的视频图像,例如在每帧视频图像中均包含人像,即终端102需要对视频图像中人像以外的背景进行虚化。终端102可以获取上述至少两帧视频图像对应的至少两帧待处理图像,例如可以是至少两帧rgba图像,并对获取的至少两帧rgba图像进行缓存;即终端102可以利用视频图像对应的rgba图像对视频图像进行虚化。其中,rgba是代表red(红色)green(绿色)blue(蓝色)和alpha(透明度)的色彩空间,即上述视频图像中的像素可以通过rgba颜色空间进行表达。48.终端102可以通过将视频图像进行转换处理得到对应的rgba图像,例如,在一个实施例中,获取至少两帧视频图像对应的至少两帧待处理图像,包括:分别获取至少两帧视频图像对应的纹理图像;将各纹理图像转换为对应的rgba图像,得到至少两帧待处理图像。本实施例中,上述获取到的至少两帧视频图像可以是视频纹理格式的视频图像,视频纹理相当于2d图像,每一帧视频图像都是opengl(open graphics library,开放图形库)中的一帧纹理。终端102可以分别获取上述至少两帧视频图像对应的纹理图像,即视频图像对应的视频纹理,终端102可以将上述各个纹理图像进行转换,将各个纹理图像转换为对应的rgba图像,从而得到上述的至少两帧待处理图像。需要说明的是,终端102可以使用任意合理的转换算法,将上述视频纹理的纹理图像转换为rgba图像。49.另外,终端102还可以将获取到的rgba图像进行缓存,例如,在一个实施例中,缓存至少两帧待处理图像,包括:依次缓存至少两帧rgba图像至处理队列,终端102可以将上述得到的至少两帧rgba图像缓存至处理队列中,从而终端102可以在处理队列中对上述各个rgba图像进行后续处理。其中,处理队列可以是有设定容量的队列,例如可以是容量为n的队列,其中n的数值可以根据实际情况设定,例如5帧等。上述队列可以用于缓存rgba图像,从而终端102可以在处理队列中对缓存的rgba图像进行处理。50.步骤s204,调用第一线程,对已缓存的至少两帧待处理图像进行人像分割,并调用第二线程,对人像分割后的至少两帧待处理图像进行虚化,并输出虚化后的视频图像帧;其中,第一线程和第二线程为不同的线程。51.其中,待处理图像可以是rgba图像,上述各帧rgba图像中可以包括人像,终端102可以对至少两帧待处理图像进行人像分割,例如利用稳定帧进行人像分割,例如,在一个实施例中,调用第一线程,对已缓存的至少两帧待处理图像进行人像分割之前,还包括:确定至少两帧rgba图像中的稳定帧;稳定帧表征该帧rgba图像中的人像相对于已缓存的其他rgba图像中的人像的变化幅度均小于预设阈值;对稳定帧进行人像分割,得到人像区域。本实施例中的稳定帧可以是表示该稳定帧对应的rgba图像中的人像相较于已缓存的其他rgba图像中的人像的变化幅度均小于预设阈值的一帧,即当稳定帧确定时,则该帧中的人像可以代表视频图像中人像的近似或准确位置,稳定帧变化得越频繁,则说明视频图像中的人像位置变化越频繁,反之,则说明视频图像中的人像位置变化越小。其中,终端102可以采用多种方式确定人像在视频图像中的变化幅度,例如,终端102可以根据人像在上述rgba图像中的像素变化情况确定人像在至少两帧rgba图像中的变化幅度。终端102可以从上述至少两帧rgba图像中确定稳定帧对应的rgba图像,从而终端102可以利用稳定帧对应的rgba图像进行相应的处理。例如,终端102可以在上述处理队列中,从上述至少两帧rgba图像中确定出稳定帧。52.并且,上述稳定帧表示该稳定帧对应的rgba图像中的人像相较于已缓存的其他rgba图像中的人像的变化幅度均小于预设阈值。由此可知,稳定帧的rgba图像中包括有人像,终端102可以通过设定线程对稳定帧进行人像分割,得到其中的人像区域,例如通过第一线程对稳定帧的rgba图像中的人像进行分割。其中,第一线程可以是终端102中的用于进行人像分割的子线程,终端102可以通过多种分割算法对上述稳定帧中的rgba图像进行人像分割。终端102对稳定帧的rgba图像进行人像分割后,可以得到人像区域。53.需要说明的是,人像区域可以通过数据形式表示。例如,在一个实施例中,终端102可以调用第一线程,通过人像分割算法,获取稳定帧中的人像mask,即人像对应的浮点数据,从而实现人像分割,形成人像区域,具体地,上述浮点数据可以为0到1中的任意数值,终端102可以根据数值的不同,确定该区域是否需要进行虚化,例如,数值为1时,则该区域不虚化;数值为0时,则将该区域虚化;数值为0.5时,则将该区域虚化一半等。由于稳定帧表示其相较于其他rgba图像帧的人像差异较小,因此终端102可以将从稳定帧中得到的人像区域作为其他帧rgba图像的人像区域,例如利用上述得到的人像区域对其他帧rgba图像进行虚化处理。其中上述人像分割可以是终端102通过调用设定线程进行的,例如通过调用第一线程实现。54.由于稳定帧中的人像相较于其他帧rgba图像中的人像的变化幅度较小,因此终端102可以根据上述稳定帧中确定的人像区域,对上述已缓存的至少两帧rgba图像进行虚化处理。例如,终端102可以调用第一线程,利用上述稳定帧对应的人像区域,对至少两帧待处理图像中的当前帧待处理图像进行人像分割,得到该帧待处理图像对应的人像区域,并调用第二线程,利用虚化算法对处理队列中的当前帧待处理的rgba图像对应的上一帧待处理的rgba图像中在人像区域外的图像进行虚化处理。其中,第二线程可以是终端102中的用于进行视频图像虚化的子线程,并且该子线程与上述第一线程可以是不同的线程,即第一线程和第二线程可以同时进行。虚化算法可以包括多种,例如可以是render虚化算法等。终端102在对上述各帧rgba图像进行虚化处理后,可以输出虚化后的各帧rgba图像对应的虚化后的视频图像帧,从而实现对视频图像的虚化。例如,终端102可以将虚化后的rgba图像进行格式的转换,从而得到该帧虚化后的rgba图像对应的虚化后的纹理图像,并将虚化后的纹理图像进行输出,实现视频图像的虚化,即终端102可以接收纹理图像,并将纹理图像转换为rgba图像进行中间虚化处理,最终输出虚化后的纹理图像。55.上述视频图像虚化方法中,通过获取至少两帧包括人像的视频图像对应的至少两帧待处理图像并缓存,利用第一线程,对rgba图像进行人像分割,并利用第二线程对已缓存的至少两帧rgba图像进行虚化,并输出虚化后的视频图像帧。相较于传统的通过单帧虚化等方式进行视频图像的虚化,本方案通过缓存至少两帧rgba图像,并通过第一线程对待处理图像进行人像分割,再通过第二线程基于人像区域对视频图像进行虚化,从而实现了提高虚化及时性的效果。56.在一个实施例中,确定至少两帧待处理图像中的稳定帧,包括:若检测到缓存开始时处理队列为空,则将缓存至处理队列的第一帧rgba图像确定为当前稳定帧;若检测到处理队列不为空,则根据处理队列中的当前稳定帧,以及新缓存至处理队列中的rgba图像,重新确定当前稳定帧。57.本实施例中,待处理图像可以是rgba图像,至少两帧rgba图像可以是由至少两帧纹理图像转换而来的rgba格式的图像,终端102可以将至少两帧rgba图像缓存至处理队列中,并且,终端102可以在处理队列中通过多种方式确定至少两帧rgba图像中的稳定帧。例如,可以分为缓存开始和缓存进行中的情况,终端102可以在检测到缓存开始,且处理队列为空的情况时,将缓存至处理队列的第一帧rgba图像确定为当前稳定帧;终端102还可以在缓存进行过程中,根据处理队列中当前稳定帧,以及新缓存至处理队列中的rgba图像,重新确定当前稳定帧,例如,当有新的rgba图像缓存至上述存在当前稳定帧的处理队列中,此时处理队列中已缓存的rgba图像数量已经大于一,即处理队列中已不为空,则终端102可以将当前稳定帧的rgba图像与新缓存至处理队列的rgba图像进行对比,从而重新确定出当前稳定帧。58.通过本实施例,终端102可以根据处理队列中的已缓存rgba图像的数量的不同,采用不同的方式进行当前稳定帧的确定,并且可以根据稳定帧对视频图像进行虚化,从而实现了提高视频图像的虚化及时性的效果。59.在一个实施例中,根据处理队列中的当前稳定帧,以及新缓存至处理队列中的rgba图像,重新确定当前稳定帧,包括:当检测到有新的rgba图像缓存至处理队列时,获取当前稳定帧对应的rgba图像与新的rgba图像间的差异值;若差异值小于预设阈值,则保持当前稳定帧不更新;若差异值大于或等于预设阈值,将新的rgba图像,确定为新的当前稳定帧。60.本实施例中,终端102可以在处理队列中已存在当前稳定帧时,对当前稳定帧进行更新,终端102可以通过对比的方式进行稳定帧的更新,当终端102检测到有新的rgba图像缓存至处理队列时,终端102可以获取处理队列当前稳定帧对应的rgba图像与上述新缓存至处理队列的新的rgba图像间的差异值,并根据差异值确定新的当前稳定帧。例如,终端102可以通过算法比较当前稳定帧的rgba图像与新缓存到处理队列的新的rgba图像间的差异,当终端102检测到差异值小于预设阈值时,例如小于设定的阈值f,则说明当前稳定帧相较于新缓存的rgba图像的差异较小,则终端102可以继续保留当前稳定帧不更新;当终端102检测到差异值大于或等于预设阈值f时,则说明当前稳定帧相较于新缓存至处理队列的新的rgba图像的差异较大,则终端102可以将上述与当前稳定帧对比的新的rgba图像,确定为新的当前稳定帧,从而实现当前稳定帧的更新。其中,终端102将当前稳定帧与新缓存的rgba图像进行比较的算法可以包括多种,例如采用求方差的形式确定当前稳定帧的rgba图像与新缓存的rgba图像间的差异值;也可以是例如计算当前稳定帧的rgba图像与新缓存的rgba图像间的像素点的分布差异,从而得到两者间的差异值;还可以是通过防抖动的光流算法,计算上述当前稳定帧的rgba图像与新缓存的rgba图像间的差异值,从而确定新的当前稳定帧。61.通过本实施例,终端102可以在有新的rgba图像缓存至队列时,通过对比rgba图像的方式确定新的当前稳定帧,从而可以基于稳定帧减少图像的轻微抖动,使得视频更平稳,人像分割更准确,从而提高视频图像的虚化稳定性和及时性。62.在一个实施例中,若检测到缓存开始时处理队列为空,则将缓存至处理队列的第一帧rgba图像确定为当前稳定帧之后,输出虚化后的视频图像帧之前,还包括:若处理队列中已缓存的rgba图像的数量小于预设数值,则输出当前稳定帧对应的视频图像帧。63.本实施例中,终端102可以根据缓存队列中的rgba图像的数量,确定需要输出的视频图像的形式。例如,当缓存刚开始时,处理队列中的图像数量为空,则终端102将缓存至处理队里的第一帧rgba图像确定为当前稳定帧,此时终端102可以进行判断,若此时处理队列中已缓存的rgba图像的数量小于预设数量,则终端102可以输出当前稳定帧对应的视频图像帧,即输出当前稳定帧对应的未经过虚化的纹理图像,减少视频图像的显示延迟。其中,预设数量可以根据实际情况设定,且通常为较小数值,例如3到5;终端102在处理队列中的rgba图像的数量未达到预设数量时,可以直接输出处理队列中的当前稳定帧对应的rgba图像对应的纹理图像,减少视频的滞后感和延迟,并在处理队列中的rgba图像的数量达到预设数量后,开始进行人像虚化处理,并输出虚化后的视频图像,上述预设数量的值可以为小于或等于处理队列的总容量的值,由于预设数量一般较小,因此用户时而关闭时而打开虚化效果时,不会产生突兀。64.通过本实施例,终端102可以在处理队列中的rgba图像数量较少时直接输出当前稳定帧对应的未虚化的纹理图像,减少了视频图像的延迟,并在处理队列中的rgba图像达到预设数量后进行人像虚化,从而提高了视频图像虚化的稳定性和及时性。65.在一个实施例中,若处理队列为先进先出队列,若差异值小于预设阈值,则保持当前稳定帧不更新之后,还包括:若检测到当前稳定帧已从处理队列中移除,则将处理队列中已缓存的rgba图像中的中间一帧,确定为新的当前稳定帧。66.本实施例中,终端102可以不断将rgba图像缓存至处理队列中,同时在处理队列中不断更新当前稳定帧;若当前稳定帧与新缓存至处理队列的rgba图像间的差异值小于预设阈值时,则说明两者差异较小,则终端102可以保留当前稳定帧不更新,然而,若上述处理队列为先进先出队列,当上述当前稳定帧长期保持不更新,即新缓存至处理队列的rgba图像与当前稳定帧的差异值均小于预设阈值时,由于不断有新rgba图像缓存至处理队列,且处理队列的容量有限,不更新的当前稳定帧可能会被移除出处理队列,由于此时处理队列中没有当前稳定帧,因此需要重新确定,由于此时处理队列中的rgba图像与被移除的当前稳定帧之间的差异值均较小,此时终端102可以将处理队列中设定位置的一帧rgba图像确定为新的当前稳定帧,例如将处理队列中已缓存的rgba图像中的中间一帧,确定为新的当前稳定帧。67.通过本实施例,终端102可以在当前稳定帧被移除出处理队列中,重新在处理队列中确定新的当前稳定帧,从而提高视频图像虚化的稳定性和及时性。68.在一个实施例中,调用第一线程,对至少两帧视频图像进行人像分割,并调用第二线程,对人像分割后的至少两帧待处理图像进行虚化,包括:调用第一线程,针对每帧rgba图像,根据所述人像区域对该帧rgba图像进行人像分割,得到该帧rgba图像对应的人像区域;调用第二线程,获取该帧rgba图像对应的上一帧rgba图像以及上一帧rgba图像对应的人像区域,根据上一帧rgba图像对应的人像区域确定上一帧rgba图像的虚化区域,对上一帧rgba图像的虚化区域进行虚化。69.本实施例中,终端102可以利用异步线程分别进行虚化区域的确定和视频虚化。例如,终端102可以在一个线程中对rgba图像进行虚化,在另一个线程中确定rgba图像的虚化区域。其中,上述的两个线程可以是异步线程。具体地,针对处理队列中的每帧rgba图像,终端102可以调用第一线程对当前正在处理的当前帧rgba图像进行人像分割,从而确定人像区域,例如通过上述根据稳定帧确定的人像区域确定该帧rgba图像中的人像区域,并且终端102可以根据人像区域,确定该帧rgba图像中的虚化区域。其中,终端102可以根据上述通过人像分割算法,从稳定帧的rgba图像分割得到的人像区域,确定rgba图像中需要虚化的虚化区域,例如将rgba图像中人像区域以外的区域确定为虚化区域。其中,根据稳定帧确定的人像区域可以用于任意缓存的rgba图像中,作为确定虚化区域的依据。终端102还可以调用第二线程,从缓存中取上述当前正在处理的rgba图像对应的上一帧的rgba图像,并基于利用上一帧rgba图像进行人像分割得到的人像区域,得到对应的虚化区域,并对上述得到的上一帧rgba图像进行虚化,例如通过render虚化算法进行虚化。其中,上述第一线程和第二线程可以是异步线程。另外,终端102还可以将虚化处理后的rgba图像转换为对应的纹理图像并进行纹理图像的输出。70.通过本实施例,终端102利用异步线程跟别进行当前帧的人像分割以及上一帧的视频虚化,从而可以提高算法速度,进而提高视频虚化的稳定性和及时性。71.在一个实施例中,如图3所示,图3为另一个实施例中视频图像虚化方法的流程示意图。包括以下步骤:72.终端102可以将需要虚化的视频图像中的各帧纹理图像转换为rgba图像,并将每帧rgba图像缓存至处理队列中,该过程可以是不断更新的,即不断有新的rgba图像缓存至处理队列中;在处理队列中,终端102可以通过光流算法,确定稳定帧的rgba图像,例如,缓存开始时,处理队列中仅有一帧rgba图像,则终端102可以将该帧rgba图像作为当前稳定帧;当缓存进行中时,不断有新的rgba图像缓存至处理队列,此时终端102可以比较当前稳定帧与新缓存至处理队列的rgba图像之间的差异值,例如通过求方差的方式进行,若差异值小于设定阈值f,则保持当前稳定帧不更新,若差异值大于或等于设定阈值f,则将与当前稳定帧进行比较的新的rgba图像确定为新的当前稳定帧;另外,若处理队列为先进先出队列,由于不断有新的rgba图像缓存至处理队列,若当前稳定帧因此被移除出处理队列,终端102可以在处理队列中重新确定新的当前稳定帧,例如将处理队列中的中间一帧rgba图像确定为新的当前稳定帧。终端102在确定当前稳定帧后,可以根据当前稳定进行人像分割,例如通过人像分割算法对稳定帧中的人像进行分割,得到人像区域并缓存。73.另外,若处理队列中的图像帧的数量小于预设的数量,则终端102可以直接输出当前稳定帧对应的纹理图像,即输出未经虚化的视频图像;当处理队列中的图像帧的数量等于预设的数量时,终端102可以开始进行虚化。其中,终端102可以采用异步线程分别进行rgba图像的人像分割以及视频的虚化。例如,终端102可以调用第一线程,根据上述人像区域,对上述在进行虚化处理的rgba图像进行虚化区域的获取,例如通过人像分割得到该rgba图像的人像区域,并将人像区域外的区域确定为虚化区域;并调用第二线程,获取上述正在进行虚化处理的rgba图像对应的上一帧rgba图像,并利用上一帧rgba图像,以及该上一帧rgba图像对应的人像区域,根据该人像区域得到虚化区域,并对上述上一帧的rgba图像进行虚化处理,例如通过render虚化算法进行虚化。其中,上述第一线程和第二线程可以是异步线程。终端102在对rgba图像虚化处理后,可以将虚化后的rgba图像转换为对应的虚化后的纹理图像,从而输出虚化后的视频图像。74.通过本实施例,终端102通过缓存至少两帧rgba图像,并从中确定稳定帧,利用稳定帧得到人像区域,再利用异步线程,基于人像区域对视频图像进行虚化,从而实现了提高虚化稳定性和及时性的效果。75.应该理解的是,虽然图2-图3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-图3中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。76.在一个实施例中,如图4所示,提供了一种视频图像虚化装置,包括:获取模块500和虚化模块502,其中:77.获取模块500,用于获取至少两帧视频图像对应的至少两帧待处理图像,并缓存至少两帧待处理图像;每帧视频图像中包括人像。78.虚化模块502,用于调用第一线程,对已缓存的至少两帧待处理图像进行人像分割,并调用第二线程,对人像分割后的至少两帧待处理图像进行虚化,并输出虚化后的视频图像帧;其中,第一线程和第二线程为不同的线程。79.在一个实施例中,上述获取模块500,具体用于分别获取至少两帧视频图像对应的纹理图像;将各纹理图像转换为对应的rgba图像,得到至少两帧rgba图像。80.在一个实施例中,上述获取模块500,具体用于依次缓存至少两帧rgba图像至处理队列。81.在一个实施例中,上述装置还包括:确定模块,用于确定至少两帧rgba图像中的稳定帧;稳定帧表征该帧rgba图像中的人像相对于已缓存的其他rgba图像中的人像的变化幅度均小于预设阈值;对稳定帧进行人像分割,得到人像区域。82.在一个实施例中,上述确定模块,具体用于若检测到缓存开始时处理队列为空,则将缓存至处理队列的第一帧rgba图像确定为当前稳定帧;若检测到处理队列不为空,则根据处理队列中的当前稳定帧,以及新缓存至所述处理队列中的rgba图像,重新确定当前稳定帧。83.在一个实施例中,上述确定模块,具体用于当检测到有新的rgba图像缓存至处理队列时,获取当前稳定帧对应的rgba图像与新的rgba图像间的差异值;若差异值小于预设阈值,则保持当前稳定帧不更新;若差异值大于或等于预设阈值,将新的rgba图像,确定为新的当前稳定帧。84.在一个实施例中,上述装置还包括:输出模块,用于若处理队列中已缓存的rgba图像的数量小于预设数值,则输出当前稳定帧对应的视频图像帧。85.在一个实施例中,上述装置还包括:更新模块,用于若处理队列为先进先出队列,若检测到当前稳定帧已从处理队列中移除,则将处理队列中已缓存的rgba图像中的中间一帧,确定为新的当前稳定帧。86.在一个实施例中,上述确定模块,具体用于根据人像分割算法,获取稳定帧中的人像对应的浮点数据,得到人像区域。87.在一个实施例中,上述虚化模块502,具体用于调用第一线程,针对每帧rgba图像,根据所述人像区域对该帧rgba图像进行人像分割,得到该帧rgba图像对应的人像区域;调用第二线程,获取该帧rgba图像对应的上一帧rgba图像以及上一帧rgba图像对应的人像区域,根据所述上一帧rgba图像对应的人像区域确定上一帧rgba图像的虚化区域,对上一帧rgba图像的虚化区域进行虚化。88.关于视频图像虚化装置的具体限定可以参见上文中对于视频图像虚化方法的限定,在此不再赘述。上述视频图像虚化装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。89.在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过wifi、运营商网络、nfc(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种视频图像虚化方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。90.本领域技术人员可以理解,图5中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。91.在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现视频图像虚化方法。92.在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现视频图像虚化方法。93.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-only memory,rom)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(random access memory,ram)或外部高速缓冲存储器。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory,sram)或动态随机存取存储器(dynamic random access memory,dram)等。94.以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。95.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。
图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!
内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,发布内容不收取任何费用也不接任何广告!
免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理,本文部分文字与图片资源来自于网络,部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!
视频图像虚化方法、装置、计算机设备和存储介质与流程
作者:admin
2022-09-27 21:06:45
923
关键词:
计算;推算;计数设备的制造及其应用技术
专利技术