CN117241065B - 视频插帧图像生成方法、装置、计算机设备和存储介质 - Google Patents

视频插帧图像生成方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN117241065B
CN117241065B CN202311510522.1A CN202311510522A CN117241065B CN 117241065 B CN117241065 B CN 117241065B CN 202311510522 A CN202311510522 A CN 202311510522A CN 117241065 B CN117241065 B CN 117241065B
Authority
CN
China
Prior art keywords
image
pixel
video frame
intermediate frame
pixel point
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202311510522.1A
Other languages
English (en)
Other versions
CN117241065A (zh
Inventor
叶虎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202311510522.1A priority Critical patent/CN117241065B/zh
Publication of CN117241065A publication Critical patent/CN117241065A/zh
Application granted granted Critical
Publication of CN117241065B publication Critical patent/CN117241065B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Image Analysis (AREA)

Abstract

本申请涉及一种视频插帧图像生成方法、装置、计算机设备和存储介质。所述方法包括:基于两个视频帧图像和两个视频帧图像之间的第一光流信息,得到预测中间帧图像;针对两个视频帧图像中的每一视频帧图像,确定所针对视频帧图像与预测中间帧图像之间的第二光流信息;根据第二光流信息,从所针对视频帧图像中,确定分别与预测中间帧图像中各图像像素点对应的图像块;基于预测中间帧图像中各图像像素点对应的图像块,分别对预测中间帧图像中各图像像素点处的像素值进行更新,得到所针对视频帧图像对应的更新中间帧图像;融合两个视频帧图像各自对应的更新中间帧图像,得到融合中间帧图像。采用本方法能够提高中间帧图像的图像质量。

Description

视频插帧图像生成方法、装置、计算机设备和存储介质
技术领域
本申请涉及计算机技术领域,特别是涉及一种视频插帧图像生成方法、装置、计算机设备、存储介质和计算机程序产品。
背景技术
随着计算机技术的发展,出现了视频插帧技术,视频插帧技术是一种在现有视频帧图像之间生成中间帧图像的技术,用于提高视频的帧率,使视频播放更加流畅,或者用于视频修复和编辑。
传统技术中,视频插帧主要是基于光流法,通过前后帧图像之间的光流信息来估计中间帧图像与前后帧图像的光流信息,然后根据中间帧图像与前后帧图像的光流信息用图像扭曲来进一步计算中间帧图像。
然而,传统方法,光流估计的准确性受到许多因素的影响,如光照变化、遮挡、运动模糊等,这可能导致估计的光流信息不准确,从而导致所生成的中间帧图像的图像质量差。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高中间帧图像的图像质量的视频插帧图像生成方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供了一种视频插帧图像生成方法。所述方法包括:
获取两个视频帧图像,确定所述两个视频帧图像之间的第一光流信息;
基于所述两个视频帧图像和所述第一光流信息,预测所述两个视频帧图像之间的中间帧图像,得到预测中间帧图像;
针对所述两个视频帧图像中的每一视频帧图像,确定所针对视频帧图像与所述预测中间帧图像之间的第二光流信息;
根据所述第二光流信息,从所述所针对视频帧图像中,确定分别与所述预测中间帧图像中各图像像素点对应的图像块;
基于所述预测中间帧图像中各图像像素点对应的图像块,分别对所述预测中间帧图像中各图像像素点处的像素值进行更新,得到所述所针对视频帧图像对应的更新中间帧图像;
将所述两个视频帧图像各自对应的更新中间帧图像进行融合,得到用于在所述两个视频帧图像之间插入的融合中间帧图像。
第二方面,本申请还提供了一种视频插帧图像生成装置。所述装置包括:
第一光流计算模块,用于获取两个视频帧图像,确定所述两个视频帧图像之间的第一光流信息;
预测模块,用于基于所述两个视频帧图像和所述第一光流信息,预测所述两个视频帧图像之间的中间帧图像,得到预测中间帧图像;
第二光流计算模块,用于针对所述两个视频帧图像中的每一视频帧图像,确定所针对视频帧图像与所述预测中间帧图像之间的第二光流信息;
图像块选取模块,用于根据所述第二光流信息,从所述所针对视频帧图像中,确定分别与所述预测中间帧图像中各图像像素点对应的图像块;
更新模块,用于基于所述预测中间帧图像中各图像像素点对应的图像块,分别对所述预测中间帧图像中各图像像素点处的像素值进行更新,得到所述所针对视频帧图像对应的更新中间帧图像;
融合模块,用于将所述两个视频帧图像各自对应的更新中间帧图像进行融合,得到用于在所述两个视频帧图像之间插入的融合中间帧图像。
第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取两个视频帧图像,确定所述两个视频帧图像之间的第一光流信息;
基于所述两个视频帧图像和所述第一光流信息,预测所述两个视频帧图像之间的中间帧图像,得到预测中间帧图像;
针对所述两个视频帧图像中的每一视频帧图像,确定所针对视频帧图像与所述预测中间帧图像之间的第二光流信息;
根据所述第二光流信息,从所述所针对视频帧图像中,确定分别与所述预测中间帧图像中各图像像素点对应的图像块;
基于所述预测中间帧图像中各图像像素点对应的图像块,分别对所述预测中间帧图像中各图像像素点处的像素值进行更新,得到所述所针对视频帧图像对应的更新中间帧图像;
将所述两个视频帧图像各自对应的更新中间帧图像进行融合,得到用于在所述两个视频帧图像之间插入的融合中间帧图像。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取两个视频帧图像,确定所述两个视频帧图像之间的第一光流信息;
基于所述两个视频帧图像和所述第一光流信息,预测所述两个视频帧图像之间的中间帧图像,得到预测中间帧图像;
针对所述两个视频帧图像中的每一视频帧图像,确定所针对视频帧图像与所述预测中间帧图像之间的第二光流信息;
根据所述第二光流信息,从所述所针对视频帧图像中,确定分别与所述预测中间帧图像中各图像像素点对应的图像块;
基于所述预测中间帧图像中各图像像素点对应的图像块,分别对所述预测中间帧图像中各图像像素点处的像素值进行更新,得到所述所针对视频帧图像对应的更新中间帧图像;
将所述两个视频帧图像各自对应的更新中间帧图像进行融合,得到用于在所述两个视频帧图像之间插入的融合中间帧图像。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
获取两个视频帧图像,确定所述两个视频帧图像之间的第一光流信息;
基于所述两个视频帧图像和所述第一光流信息,预测所述两个视频帧图像之间的中间帧图像,得到预测中间帧图像;
针对所述两个视频帧图像中的每一视频帧图像,确定所针对视频帧图像与所述预测中间帧图像之间的第二光流信息;
根据所述第二光流信息,从所述所针对视频帧图像中,确定分别与所述预测中间帧图像中各图像像素点对应的图像块;
基于所述预测中间帧图像中各图像像素点对应的图像块,分别对所述预测中间帧图像中各图像像素点处的像素值进行更新,得到所述所针对视频帧图像对应的更新中间帧图像;
将所述两个视频帧图像各自对应的更新中间帧图像进行融合,得到用于在所述两个视频帧图像之间插入的融合中间帧图像。
上述视频插帧图像生成方法、装置、计算机设备、存储介质和计算机程序产品,通过获取两个视频帧图像,确定两个视频帧图像之间的第一光流信息,能够基于两个视频帧图像和第一光流信息,实现对两个视频帧图像之间的中间帧图像的预测,得到预测中间帧图像,通过针对两个视频帧图像中的每一视频帧图像,确定所针对视频帧图像与预测中间帧图像之间的第二光流信息,根据第二光流信息,从所针对视频帧图像中,确定分别与预测中间帧图像中各图像像素点对应的图像块,基于预测中间帧图像中各图像像素点对应的图像块,分别对预测中间帧图像中各图像像素点处的像素值进行更新,能够通过隐式的图像和特征对齐的方式,学习到相邻视频帧图像之间的形态特征和动力学特征,从而更好地建模相邻视频帧图像的动态变化和演化进程,得到图像质量高的所针对视频帧图像对应的更新中间帧图像,进而可以通过将两个视频帧图像各自对应的更新中间帧图像进行融合的方式,得到用于在所述两个视频帧图像之间插入的融合中间帧图像,能够提高所生成的中间帧图像的图像质量。
附图说明
图1为一个实施例中视频插帧图像生成方法的应用环境图;
图2为一个实施例中视频插帧图像生成方法的流程示意图;
图3为一个实施例中光流信息的示意图;
图4为一个实施例中目标像素位置和目标像素点的示意图;
图5为另一个实施例中目标像素位置和目标像素点的示意图;
图6为一个实施例中所选取的图像块的示意图;
图7为另一个实施例中所选取的图像块的示意图;
图8为又一个实施例中所选取的图像块的示意图;
图9为一个实施例中基于线性运动模型建模光流进行插帧的示意图;
图10为一个实施例中非线性运动模型光流预测中间帧示意图;
图11为一个实施例中图像扭曲操作的示意图;
图12为一个实施例中transformer(一种深度学习模型)模型的示意图;
图13为一个实施例中基于transformer结构的隐式对齐的示意图;
图14为一个实施例中视频插帧图像生成方法的应用示意图;
图15为一个实施例中视频插帧图像生成装置的结构框图;
图16为一个实施例中计算机设备的内部结构图。
具体实施方式
本申请涉及计算机视觉技术(Computer Vision ,CV),计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、OCR、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。可以理解,在本申请的视频插帧图像生成方法,就是基于计算机视觉技术,利用所获取到的两个视频帧图像生成在两个视频帧图像之间插入的融合中间帧图像。
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的视频插帧图像生成方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他服务器上。终端102从服务器104获取两个视频帧图像,确定两个视频帧图像之间的第一光流信息,基于两个视频帧图像和第一光流信息,预测两个视频帧图像之间的中间帧图像,得到预测中间帧图像,针对两个视频帧图像中的每一视频帧图像,确定所针对视频帧图像与预测中间帧图像之间的第二光流信息,根据第二光流信息,从所针对视频帧图像中,确定分别与预测中间帧图像中各图像像素点对应的图像块,基于预测中间帧图像中各图像像素点对应的图像块,分别对预测中间帧图像中各图像像素点处的像素值进行更新,得到所针对视频帧图像对应的更新中间帧图像,将两个视频帧图像各自对应的更新中间帧图像进行融合,得到用于在两个视频帧图像之间插入的融合中间帧图像。
其中,终端102可以但不限于是各种台式计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种视频插帧图像生成方法,该方法可以由终端或服务器单独执行,也可以由终端和服务器协同执行。在本申请实施例中,以该方法应用于终端为例进行说明,包括以下步骤:
步骤202,获取两个视频帧图像,确定两个视频帧图像之间的第一光流信息。
其中,视频帧图像是指从视频中获取的帧图像,即从视频中获取的某一帧的图像。两个视频帧图像是指从视频中获取的两帧图像,包括第一视频帧图像和第二视频帧图像,其中,第一视频帧图像是第二视频帧图像的前向帧,也就是说,第一视频帧图像和第二视频帧图像是视频中的前后两帧图像,且第一视频帧图像在视频中的时序在第二视频帧图像之前。需要说明的是,第一视频帧图像和第二视频帧图像可以是连续的前后两帧图像,也可以是不连续的前后两帧图像。
其中,光流是空间运动物体在观察成像平面上的像素运动的瞬时速度,也有人将二维平面图像内特定像素点的灰度/亮度的瞬时变化率定义为光流,当时间间隔很小时(比如视频的连续前后两帧图像之间)也等同于空间点在成像平面内投影点的位移。一般而言,光流是由于场景中前景目标本身的移动、相机的运动,或者两者的共同运动导致发生了相对运动所产生的。通俗点来说,当人的眼睛观察运动物体时,物体的景象在人眼的视网膜上形成一系列连续变化的图像,这一系列连续变化的信息不断“流过”视网膜(即图像平面),好像是一种光的“流”,故称之为光流。也可以理解为图像中像素强度的流动。光流表达了图像的变化,由于它包含了目标运动的信息,因此可以被观察者用来确定目标的运动情况。第一光流信息用于描述两个视频帧图像中像素点的运动情况,即两个视频帧图像上的像素运动的瞬时速度,当两个视频帧图像为连续的前后两帧图像时,第一光流信息具体可以为两个视频帧图像中像素点的位移。
具体的,终端会获取两个视频帧图像,确定两个视频帧图像之间的第一光流信息。在具体的应用中,终端可以先获取到视频,再从视频中获取两个视频帧图像,所获取的两个视频帧图像可以是连续的前后两帧图像,也可以是不连续的前后两帧图像。在获取到两个视频帧图像的情况下,终端会基于两个视频帧图像中像素点的位移,确定两个视频帧图像之间的第一光流信息。
在一个具体的应用中,第一光流信息包括前向光流信息和后向光流信息,其中,前向光流信息是指从较早时刻的视频帧图像到较晚时刻的视频帧图像的光流信息,后向光流信息是指从较晚时刻的视频帧图像到较早时刻的视频帧图像的光流信息。举例说明,假设两个视频帧图像包括第一视频帧图像和第二视频帧图像,且第一视频帧图像是第二视频帧图像的前向帧,则前向光流信息是指从第一视频帧图像到第二视频帧图像的光流信息,后向光流信息是指从第二视频帧图像到第一视频帧图像的光流信息。
在一个具体的应用中,在确定两个视频帧图像之间的第一光流信息时,若确定的是前向光流信息,针对较早时刻的视频帧图像中每个像素点,终端会基于所针对像素点在较早时刻的视频帧图像中的位置以及在较晚时刻的视频帧图像中的位置,确定所针对像素点,从较早时刻的视频帧图像到较晚时刻的视频帧图像的位置变化,得到所针对像素点的光流信息,基于每个像素点的光流信息,得到前向光流信息。
在一个具体的应用中,若确定的是后向光流信息,针对较晚时刻的视频帧图像中每个像素点,终端会基于所针对像素点在较晚时刻的视频帧图像中的位置以及在较早时刻的视频帧图像中的位置,确定所针对像素点,从较晚时刻的视频帧图像到较早时刻的视频帧图像的位置变化,得到所针对像素点的光流信息,基于每个像素点的光流信息,得到后向光流信息。
在一个具体的应用中,如图3所示,假设两个视频帧图像包括第一视频帧图像和第二视频帧图像,且第一视频帧图像是第二视频帧图像的前向帧,以第一视频帧图像中的像素点A为例,其在第一视频帧图像中的位置为(x1,y1),经过运动在第二视频帧图像中的位置为(x2,y2),则在计算前向光流信息时,像素点A的光流信息可以为(ux,uy)=(x2,y2)-(x1,y1),向量(ux,uy)就是像素点A产生的光流信息,其包含x方向和y方向的运动,光流的值是亚像素的浮点数值,如图3所示,箭头表示的是第一视频帧图像和第二视频帧图像之间的像素点A的光流矢量。
步骤204,基于两个视频帧图像和第一光流信息,预测两个视频帧图像之间的中间帧图像,得到预测中间帧图像。
其中,视频帧图像是指在两个视频帧图像之间插入的中间帧的图像。预测中间帧图像是指通过预测的方式所确定的中间帧图像。
具体的,基于第一光流信息中的前向光流信息和后向光流信息,以及中间帧图像所对应的中间帧时刻,终端可以通过光流估计的方式,估计与两个视频帧图像各自对应的中间帧光流信息,进而可以基于两个视频帧图像和与两个视频帧图像各自对应的中间帧光流信息,来预测两个视频帧图像之间的中间帧图像,得到预测中间帧图像。
在具体的应用中,中间帧时刻是指中间帧图像在视频中对应的时刻,可以理解的是,由于中间帧图像是两个视频帧图像之间的帧图像,因此中间帧时刻为两个视频帧图像所对应的两个时刻之间的时刻。举例说明,在两个视频帧图像包括第一视频帧图像和第二视频帧图像,且第一视频帧图像为第二视频帧图像的前向帧的情况下,中间帧时刻是指第一视频帧图像在视频中对应的第一时刻和第二视频帧图像在视频中对应的第二时刻之间的时刻。举例说明,在第一时刻为1分钟且第二时刻为1分30秒的情况下,中间帧时刻可以为1分钟到1分30秒之间的任意时刻,如1分10秒、1分15秒、1分20秒等。
在具体的应用中,终端还可以通过预训练的中间帧图像预测模型,来预测两个视频帧图像之间的中间帧图像,通过将两个视频帧图像和第一光流信息输入至预训练的中间帧图像预测模型,该中间帧图像预测模型即可输出预测中间帧图像。其中,预训练的中间帧图像预测模型主要是通过多次卷积处理,来预测两个视频帧图像之间的中间帧图像的,具体的模型结构可按照实际应用场景进行选择,本实施例中在此处对此不做限定。
步骤206,针对两个视频帧图像中的每一视频帧图像,确定所针对视频帧图像与预测中间帧图像之间的第二光流信息。
其中,第二光流信息用于描述所针对视频帧图像和预测中间帧图像中像素点的运动情况,即所针对视频帧图像和预测中间帧图像上的像素运动的瞬时速度,第二光流信息具体可以为所针对视频帧图像和预测中间帧图像中像素点的位移。
具体的,针对两个视频帧图像中的每一视频帧图像,终端会确定所针对视频帧图像与预测中间帧图像之间的第二光流信息。在具体的应用中,第二光流信息可以为从所针对视频帧图像到预测中间帧图像的光流信息,也可以为从预测中间帧图像到所针对视频帧图像的光流信息。
在一个具体的应用中,若第二光流信息为从所针对视频帧图像到预测中间帧图像的光流信息,针对所针对视频帧图像中每个像素点,终端会基于所针对像素点在所针对视频帧图像中的位置以及在预测中间帧图像中的位置,确定所针对像素点,从所针对视频帧图像到预测中间帧图像的位置变化,得到所针对像素点的光流信息,基于每个像素点的光流信息,得到第二光流信息。
在一个具体的应用中,若第二光流信息为从预测中间帧图像到所针对视频帧图像的光流信息,针对预测中间帧图像中每个图像像素点,终端会基于所针对图像像素点在预测中间帧图像中的位置以及在所针对视频帧图像中的位置,确定所针对图像像素点,从预测中间帧图像到所针对视频帧图像的位置变化,得到所针对图像像素点的光流信息,基于每个图像像素点的光流信息,得到第二光流信息。
步骤208,根据第二光流信息,从所针对视频帧图像中,确定分别与预测中间帧图像中各图像像素点对应的图像块。
其中,图像像素点是指预测中间帧图像上的像素点。图像块是指所针对视频帧图像上与图像像素点对应的部分图像,可以理解的是,图像块包括至少一个像素点,即图像块由所针对视频帧图像上至少一个像素点形成。
具体的,针对预测中间帧图像中每一图像像素点,终端可以从第二光流信息中,获取到所针对图像像素点相应的位置偏移量,进而可以根据位置偏移量,从所针对视频帧图像中,选取所针对图像像素点对应的图像块。其中,位置偏移量是指所针对图像像素点在所针对视频帧图像和预测中间帧图像之间的位置偏移,即所针对图像像素点在所针对视频帧图像和预测中间帧图像之间的位移。需要说明的是,在第二光流信息中包括预测中间帧图像中每一图像像素点相应的位置偏移量,终端只要直接获取即可。
在具体的应用中,图像块的大小可按照实际应用场景进行配置。比如,图像块具体可以为N个像素点形成的图像块,N为正整数,则终端根据位置偏移量,会从所针对视频帧图像中,选取所针对图像像素点对应的N个像素点,作为所针对图像像素点对应的图像块。
步骤210,基于预测中间帧图像中各图像像素点对应的图像块,分别对预测中间帧图像中各图像像素点处的像素值进行更新,得到所针对视频帧图像对应的更新中间帧图像。
具体的,针对预测中间帧图像中每一图像像素点,终端会基于所针对图像像素点对应的图像块,对所针对图像像素点处的像素值进行更新,得到所针对图像像素点处的更新像素点,根据预测中间帧图像中每一图像像素点处的更新像素值,得到所针对视频帧图像对应的更新中间帧图像。可以理解的是,本实施例中的,所针对视频帧图像对应的更新中间帧图像,是指利用所针对视频帧图像上各图像像素点对应的图像块,分别对各图像像素点处的像素值进行更新之后所得到的中间帧图像。
在具体的应用中,所针对图像像素点对应的图像块包括多个图像块像素点,终端可以基于多个图像块像素点处的像素值,对所针对图像像素点处的像素值进行更新。在一个具体的应用中,终端基于多个图像块像素点处的像素值,可以分别得到多个图像块像素点对应的像素点特征,进而可以利用多个图像块像素点对应的像素点特征,来更新所针对图像像素点对应的像素点特征,从而可以通过所更新的像素点特征,来得到所针对图像像素点处的更新像素值。
在具体的应用中,由于所针对图像像素点在预测中间帧图像中的位置,和所针对图像像素点对应的图像块在所针对视频帧图像中的位置是有关联的,因此,在对所针对图像像素点处的像素值进行更新时,终端会从所针对视频帧图像中,获取所针对图像像素点对应的图像块的位置信息,再基于所针对图像像素点对应的图像块以及位置信息,对所针对图像像素点处的像素值进行更新。
在一个具体的应用中,在所针对图像像素点对应的图像块包括多个图像块像素点的情况下,位置信息包括多个图像块像素点各自的像素点位置,则终端可以基于多个图像块像素点处的像素值以及多个图像块像素点各自的像素点位置,来对所针对图像像素点处的像素值进行更新。
步骤212,将两个视频帧图像各自对应的更新中间帧图像进行融合,得到用于在两个视频帧图像之间插入的融合中间帧图像。
具体的,终端将两个视频帧图像各自对应的更新中间帧图像进行融合,就可以得到用于在两个视频帧图像之间插入的融合中间帧图像。可以理解的是,通过将两个视频帧图像各自对应的更新中间帧图像进行融合,能够使得更新中间帧图像的特征互补,得到特征丰富且图像质量更高的融合中间帧图像,能够 提高所生成的中间帧图像的图像质量。
在具体的应用中,在进行融合时,终端会分别对两个视频帧图像各自对应的更新中间帧图像进行特征提取,得到两个视频帧图像各自对应的更新中间帧图像特征,再对两个视频帧图像各自对应的更新中间帧图像特征进行融合,得到用于在两个视频帧图像之间插入的融合中间帧图像。
上述视频插帧图像生成方法,通过获取两个视频帧图像,确定两个视频帧图像之间的第一光流信息,能够基于两个视频帧图像和第一光流信息,实现对两个视频帧图像之间的中间帧图像的预测,得到预测中间帧图像,通过针对两个视频帧图像中的每一视频帧图像,确定所针对视频帧图像与预测中间帧图像之间的第二光流信息,根据第二光流信息,从所针对视频帧图像中,确定分别与预测中间帧图像中各图像像素点对应的图像块,基于预测中间帧图像中各图像像素点对应的图像块,分别对预测中间帧图像中各图像像素点处的像素值进行更新,能够通过隐式的图像和特征对齐的方式,学习到相邻视频帧图像之间的形态特征和动力学特征,从而更好地建模相邻视频帧图像的动态变化和演化进程,得到图像质量高的所针对视频帧图像对应的更新中间帧图像,进而可以通过将两个视频帧图像各自对应的更新中间帧图像进行融合的方式,得到用于在所述两个视频帧图像之间插入的融合中间帧图像,能够提高所生成的中间帧图像的图像质量。
在一个实施例中,基于预测中间帧图像中各图像像素点对应的图像块,分别对预测中间帧图像中各图像像素点处的像素值进行更新,得到所针对视频帧图像对应的更新中间帧图像包括:
针对预测中间帧图像中每一图像像素点,从所针对视频帧图像中,获取所针对图像像素点对应的图像块的位置信息;
基于所针对图像像素点对应的图像块以及位置信息,对所针对图像像素点处的像素值进行更新,得到所针对图像像素点处的更新像素值;
根据预测中间帧图像中每一图像像素点处的更新像素值,得到所针对视频帧图像对应的更新中间帧图像。
其中,位置信息用于描述图像块在所针对视频帧图像中的位置,可以通过图像块中图像块像素点在所针对视频帧图像中的像素点位置得到。比如,当图像块为单个图像块像素点,位置信息可以为单个图像块像素点在所针对视频帧图像中的像素点位置。当图像块包括多个图像块像素点,位置信息可以为多个图像块像素点各自的像素点位置。
具体的,针对预测中间帧图像中每一图像像素点,由于所针对图像像素点在预测中间帧图像中的位置,和所针对图像像素点对应的图像块在所针对视频帧图像中的位置是有关联的,因此,在对所针对图像像素点处的像素值进行更新时,终端会从所针对视频帧图像中,获取所针对图像像素点对应的图像块的位置信息,再基于所针对图像像素点对应的图像块以及位置信息,对所针对图像像素点处的像素值进行更新,得到所针对图像像素点处的更新像素值。在得到预测中间帧图像中每一图像像素点处的更新像素值后,就可以根据预测中间帧图像中每一图像像素点处的更新像素值,得到所针对视频帧图像对应的更新中间帧图像,即对预测中间帧图像中每一图像像素点处的像素值进行更新后所得到的中间帧图像。
在具体的应用中,终端可以先基于所针对图像像素点对应的图像块以及位置信息进行特征提取,得到图像块对应的图像块特征,并生成所针对图像像素点对应的像素点特征,再利用图像块特征对所针对图像像素点对应的像素点特征进行更新,通过所更新的像素点特征,来对所针对图像像素点处的像素值进行更新,得到所针对图像像素点处的更新像素值。
其中,利用图像块特征对所针对图像像素点对应的像素点特征进行更新,可以理解为对图像块特征和所针对图像像素点对应的像素点特征进行隐式的特征对齐,通过图像块特征来表征所针对图像像素点对应的像素点特征。
在一个具体的应用中,当图像块为单个图像块像素点,位置信息可以为单个图像块像素点在所针对视频帧图像中的像素点位置,则终端会基于单个图像块像素点处的像素值和单个图像块像素点的像素点位置进行特征提取,得到图像块特征。当图像块包括多个图像块像素点,则需要结合多个图像块像素点处的像素值和多个图像块像素点各自的像素点位置,来确定图像块特征。
本实施例中,针对预测中间帧图像中每一图像像素点,通过从所针对视频帧图像中,获取所针对图像像素点对应的图像块的位置信息,能够结合所针对图像像素点对应的图像块以及位置信息,实现对所针对图像像素点处的像素值的准确更新,进而可以根据预测中间帧图像中每一图像像素点处的更新像素值,实现对所针对视频帧图像对应的更新中间帧图像的确定,得到图像质量高的更新中间帧图像,以便基于该更新中间帧图像,生成图像质量高的融合中间帧图像。
在一个实施例中,所针对图像像素点对应的图像块包括多个图像块像素点,位置信息包括多个图像块像素点各自的像素点位置;
基于所针对图像像素点对应的图像块以及位置信息,对所针对图像像素点处的像素值进行更新,得到所针对图像像素点处的更新像素值包括:
针对多个图像块像素点中每一图像块像素点,基于所针对图像块像素点处的像素值和所针对图像块像素点的像素点位置进行特征提取,得到所针对图像块像素点对应的像素点特征;
基于多个图像块像素点各自对应的像素点特征,对所针对图像像素点处的像素值进行更新,得到所针对图像像素点处的更新像素值。
其中,所针对图像块像素点对应的像素点特征,是指用于表征所针对图像块像素点的特征。比如,所针对图像块像素点对应的像素点特征,具体可以为用于表征所针对图像块像素点的特征向量。
具体的,所针对图像像素点对应的图像块包括多个图像块像素点,且位置信息包括多个图像块像素点各自的像素点位置,则在基于所针对图像像素点对应的图像块以及位置信息,对所针对图像像素点处的像素值进行更新时,针对多个图像块像素点中每一图像块像素点,终端会基于所针对图像块像素点处的像素值和所针对图像块像素点的像素点位置进行特征提取,得到所针对图像块像素点对应的像素点特征,并生成所针对图像像素点对应的像素点特征,再基于多个图像块像素点各自对应的像素点特征,对所针对图像像素点对应的像素点特征进行更新,通过所更新的像素点特征,来对所针对图像像素点处的像素值进行更新,得到所针对图像像素点处的更新像素值。
在具体的应用中,终端可以通过预训练的像素点特征提取网络,来对所针对图像块像素点处的像素值和所针对图像块像素点的像素点位置进行特征提取,通过将像素值和像素点位置输入预训练的像素点特征提取网络,即可得到所针对图像块像素点对应的像素点特征。其中,预训练的像素点特征提取网络可按照实际应用场景进行配置。此外,终端也可以通过先分别对所针对图像块像素点处的像素值和所针对图像块像素点的像素点位置进行特征提取,再将所提取到的两个特征进行融合的方式,来得到所针对图像块像素点对应的像素点特征。
在具体的应用中,基于多个图像块像素点各自对应的像素点特征,对所针对图像像素点对应的像素点特征进行更新,也可以理解为对多个图像块像素点各自对应的像素点特征和所针对图像像素点对应的像素点特征进行隐式的特征对齐,参考所针对图像像素点对应的像素点特征,用多个图像块像素点各自对应的像素点特征来对其进行表征。
本实施例中,针对多个图像块像素点中每一图像块像素点,通过利用所针对图像块像素点处的像素值和所针对图像块像素点的像素点位置进行特征提取,能够得到可以准确表征所针对图像块像素点的像素点特征,进而可以利用多个图像块像素点各自对应的像素点特征进行隐式的特征对齐,对所针对图像像素点处的像素值进行更新,得到所针对图像像素点处的更新像素值。
在一个实施例中,基于所针对图像块像素点处的像素值和所针对图像块像素点的像素点位置进行特征提取,得到所针对图像块像素点对应的像素点特征包括:
对所针对图像块像素点处的像素值进行编码,得到所针对图像块像素点对应的像素值编码,并对所针对图像块像素点的像素点位置进行编码,得到所针对图像块像素点对应的位置编码;
将所针对图像块像素点对应的像素值编码以及位置编码进行融合,得到所针对图像块像素点对应的像素点特征。
具体的,为了得到所针对图像块像素点对应的像素点特征,终端会对所针对图像块像素点处的像素值进行编码,得到所针对图像块像素点对应的像素值编码,并对所针对图像块像素点的像素点位置进行编码,得到所针对图像块像素点对应的位置编码,最后将所针对图像块像素点对应的像素值编码以及位置编码进行融合,就可以得到所针对图像块像素点对应的像素点特征。
在具体的应用中,终端可以通过预训练的第一编码网络对像素值进行编码,得到像素值编码,并通过预训练的第二编码网络对像素点位置进行编码,得到位置编码。其中,预训练的第一编码网络和预训练的第二编码网络可按照实际应用场景进行训练,本实施例中在此处,不对第一编码网络和第二编码网络的训练进行限定。
在具体的应用中,终端可以通过将所针对图像块像素点对应的像素值编码以及位置编码进行拼接的方式,来将所针对图像块像素点对应的像素值编码以及位置编码进行融合,得到所针对图像块像素点对应的像素点特征,即所针对图像块像素点对应的像素点特征,可以为像素值编码+位置编码的形式。
本实施例中,通过对所针对图像块像素点处的像素值进行编码,能够得到所针对图像块像素点对应的像素值编码,通过对所针对图像块像素点的像素点位置进行编码,能够得到所针对图像块像素点对应的位置编码,进而可以通过将像素值编码和位置编码进行融合的方式,实现对所针对图像块像素点对应的像素点特征的获取。
在一个实施例中,基于多个图像块像素点各自对应的像素点特征,对所针对图像像素点处的像素值进行更新,得到所针对图像像素点处的更新像素值包括:
基于所针对图像像素点处的像素值和所针对图像像素点相应的位置偏移量进行特征提取,得到所针对图像像素点对应的像素点特征;
基于注意力机制,对多个图像块像素点各自对应的像素点特征和所针对图像像素点对应的像素点特征进行卷积处理,得到所针对图像像素点处的更新像素值。
其中,注意力机制是在计算能力有限的情况下,将计算资源分配给更重要的任务,同时解决信息超载问题的一种资源分配方案。在神经网络学习中,一般而言模型的参数越多则模型的表达能力越强,模型所存储的信息量也越大,但这会带来信息过载的问题。那么通过引入注意力机制,在众多的输入信息中聚焦于对当前任务更为关键的信息,降低对其他信息的关注度,甚至过滤掉无关信息,就可以解决信息过载问题,并提高任务处理的效率和准确性。本实施例中,即聚焦于多个图像块像素点各自对应的像素点特征中对所针对图像像素点对应的像素点特征而言更为关键的信息,以准确更新所针对图像像素点处的像素值。
具体的,在对所针对图像像素点处的像素值进行更新时,终端会先基于所针对图像像素点处的像素值和所针对图像像素点相应的位置偏移量进行特征提取,得到所针对图像像素点对应的像素点特征,再基于注意力机制,对多个图像块像素点各自对应的像素点特征和所针对图像像素点对应的像素点特征进行卷积处理,得到所针对图像像素点处的更新像素值。
在具体的应用中,终端可以通过预训练的像素点特征提取网络,来对所针对图像像素点处的像素值和所针对图像像素点相应的位置偏移量进行特征提取,通过将像素值和位置偏移量输入预训练的像素点特征提取网络,即可得到所针对图像像素点对应的像素点特征。其中,预训练的像素点特征提取网络可按照实际应用场景进行配置。此外,终端也可以通过先分别对所针对图像像素点处的像素值和所针对图像像素点相应的位置偏移量进行特征提取,再将所提取到的两个特征进行融合的方式,来得到所针对图像像素点对应的像素点特征。
在具体的应用中,基于注意力机制,对多个图像块像素点各自对应的像素点特征和所针对图像像素点对应的像素点特征进行卷积处理,可以得到所针对图像像素点对应的更新像素点特征,进而可以通过更新像素点特征,得到所针对图像像素点处的更新像素值。
在一个具体的应用中,在注意力机制为多头注意力机制的情况下,针对多头注意力机制中每一头注意力机制,终端会基于所针对注意力机制,对多个图像块像素点各自对应的像素点特征和所针对图像像素点对应的像素点特征进行卷积处理,得到所针对注意力机制对应的像素点特征,通过对每一头注意力机制对应的像素点特征进行融合,即可得到所针对图像像素点对应的更新像素点特征。
其中,注意力机制的实现主要依赖于三个向量:查询向量、键向量和值向量,这三个向量都是输入数据的线性变换,本实施例中,输入数据包括多个图像块像素点各自对应的像素点特征和所针对图像像素点对应的像素点特征。其中,查询向量、键向量和值向量的作用和交互方式如下:查询向量:用于表示当前的输入元素,用于查询其他相关的元素。键向量:用于表示所有的输入元素,用于被查询。值向量:用于表示所有的输入元素,当某个元素被查询到时,其对应的值向量将被用于计算输出。
在一个具体的应用中,基于注意力机制的变换矩阵,分别对多个图像块像素点各自对应的像素点特征进行线性变换,可以得到多个图像块像素点各自对应的键向量和值向量,同时,基于注意力机制的变换矩阵,对所针对图像像素点对应的像素点特征进行线性变换,可以得到所针对图像像素点的查询向量,进而可以通过查询向量、键向量和值向量的交互,更新所针对图像像素点对应的像素点特征。其中,注意力机制的变换矩阵包括查询向量变换矩阵、键向量变换矩阵以及值向量变换矩阵,分别与查询向量、键向量和值向量相应。
本实施例中,通过利用所针对图像像素点处的像素值和所针对图像像素点相应的位置偏移量进行特征提取,能够得到可以准确表征所针对图像像素点对应的像素点特征,进而可以通过基于注意力机制,对多个图像块像素点各自对应的像素点特征和所针对图像像素点对应的像素点特征进行卷积处理的方式,对所针对图像像素点处的像素值进行更新,得到所针对图像像素点处的更新像素值。
在一个实施例中,基于所针对图像像素点处的像素值和所针对图像像素点相应的位置偏移量进行特征提取,得到所针对图像像素点对应的像素点特征包括:
对所针对图像像素点处的像素值进行编码,得到所针对图像像素点对应的像素值编码,并对所针对图像像素点相应的位置偏移量进行编码,得到所针对图像像素点对应的位置编码;
将所针对图像像素点对应的像素值编码和位置编码进行融合,得到所针对图像像素点对应的像素点特征。
具体的,为了得到所针对图像像素点对应的像素点特征,终端会对所针对图像像素点处的像素值进行编码,得到所针对图像像素点对应的像素值编码,并对所针对图像像素点相应的位置偏移量进行编码,得到所针对图像像素点对应的位置编码,最后将所针对图像像素点对应的像素值编码和位置编码进行融合,就可以得到所针对图像像素点对应的像素点特征。
在具体的应用中,终端可以通过预训练的第一编码网络对像素值进行编码,得到像素值编码,并通过预训练的第二编码网络对位置偏移量进行编码,得到位置编码。其中,预训练的第一编码网络和预训练的第二编码网络可按照实际应用场景进行训练,本实施例中在此处,不对第一编码网络和第二编码网络的训练进行限定。
在具体的应用中,终端可以通过将所针对图像像素点对应的像素值编码和位置编码进行拼接的方式,来将所针对图像像素点对应的像素值编码和位置编码进行融合,得到所针对图像像素点对应的像素点特征,即所针对图像像素点对应的像素点特征,可以为像素值编码+位置编码的形式。
本实施例中,通过对所针对图像像素点处的像素值进行编码,能够得到所针对图像像素点对应的像素值编码,通过对所针对图像像素点相应的位置偏移量进行编码,能够得到所针对图像像素点对应的位置编码,进而可以通过将所针对图像像素点对应的像素值编码和位置编码进行融合的方式,实现对所针对图像像素点对应的像素点特征的获取。
在一个实施例中,基于注意力机制,对多个图像块像素点各自对应的像素点特征和所针对图像像素点对应的像素点特征进行卷积处理,得到所针对图像像素点处的更新像素值包括:
基于注意力机制的变换矩阵,分别对多个图像块像素点各自对应的像素点特征进行线性变换,得到多个图像块像素点各自对应的键向量和值向量,并对所针对图像像素点对应的像素点特征进行线性变换,得到所针对图像像素点的查询向量;
根据多个图像块像素点各自对应的键向量和所针对图像像素点的查询向量进行注意力权重计算,获得多个图像块像素点各自对应的注意力权重;
基于多个图像块像素点各自对应的注意力权重,对多个图像块像素点各自对应的值向量进行加权,得到所针对图像像素点的更新像素点特征;
基于所针对图像像素点的更新像素点特征,得到所针对图像像素点处的更新像素值。
其中,注意力机制的变换矩阵包括查询向量变换矩阵、键向量变换矩阵以及值向量变换矩阵,分别与查询向量、键向量和值向量相应。
具体的,终端会基于注意力机制的变换矩阵中键向量变换矩阵,分别对多个图像块像素点各自对应的像素点特征进行线性变换,得到多个图像块像素点各自对应的键向量,并基于注意力机制的变换矩阵中值向量变换矩阵,分别对多个图像块像素点各自对应的像素点特征进行线性变换,得到多个图像块像素点各自对应的值向量。同时,终端会基于注意力机制的变换矩阵中查询向量变换矩阵,对所针对图像像素点对应的像素点特征进行线性变换,得到所针对图像像素点的查询向量。
具体的,在得到查询向量、键向量和值向量的基础上,终端可以通过查询向量、键向量和向量的交互,更新所针对图像像素点对应的像素点特征,得到所针对图像像素点的更新像素点特征。具体来说,终端会根据多个图像块像素点各自对应的键向量和所针对图像像素点的查询向量进行注意力权重计算,获得多个图像块像素点各自对应的注意力权重,基于多个图像块像素点各自对应的注意力权重,对多个图像块像素点各自对应的值向量进行加权,得到所针对图像像素点的更新像素点特征。在得到所针对图像像素点的更新像素点特征后,终端可以通过特征映射的方式,得到所针对图像像素点处的更新像素值。
在具体的应用中,终端可以通过缩放点积进行注意力权重计算,即先计算所针对图像像素点的查询向量和多个图像块像素点各自对应的键向量的相似度,获得点积,再对点积进行缩放,得到多个图像块像素点各自对应的注意力权重。
在具体的应用中,针对多个图像块像素点中每一个图像块像素点,终端会将所针对图像块像素点对应的注意力权重,作为所针对图像块像素点对应的值向量的加权系数,对多个图像块像素点各自对应的值向量进行加权,得到所针对图像像素点的更新像素点特征。
在具体的应用中,在通过注意力机制的变换矩阵,对多个图像块像素点各自对应的像素点特征和所针对图像像素点对应的像素点特征进行线性变换之前,终端可以分别对多个图像块像素点各自对应的像素点特征和所针对图像像素点对应的像素点特征进行层归一化,使得多个图像块像素点各自对应的像素点特征和所针对图像像素点对应的像素点特征的分布相对稳定,便于更好的进行基于注意力机制的卷积处理。
本实施例中,能够基于注意力机制的变换矩阵,通过线性变换的方式,实现对多个图像块像素点各自对应的键向量和值向量以及所针对图像像素点的查询向量的确定,通过根据多个图像块像素点各自对应的键向量和所针对图像像素点的查询向量进行注意力权重计算,能够获得多个图像块像素点各自对应的注意力权重,从而可以通过基于多个图像块像素点各自对应的注意力权重,对多个图像块像素点各自对应的值向量进行加权,得到所针对图像像素点的更新像素点特征,进而可以基于所针对图像像素点的更新像素点特征,实现对所针对图像像素点处的更新像素值的确定。
在一个实施例中,将两个视频帧图像各自对应的更新中间帧图像进行融合,得到用于在两个视频帧图像之间插入的融合中间帧图像包括:
分别对两个视频帧图像各自对应的更新中间帧图像进行特征提取,得到两个视频帧图像各自对应的更新中间帧图像特征;
对两个视频帧图像各自对应的更新中间帧图像特征进行融合,得到融合特征;
基于融合特征,得到用于在两个视频帧图像之间插入的融合中间帧图像。
具体的,终端会分别对两个视频帧图像各自对应的更新中间帧图像进行特征提取,得到两个视频帧图像各自对应的更新中间帧图像特征,再对两个视频帧图像各自对应的更新中间帧图像特征进行融合,得到融合特征,最后通过基于融合特征进行特征映射,可以得到用于在两个视频帧图像之间插入的融合中间帧图像。在具体的应用中,融合特征包括融合中间帧图像中各像素点的像素点特征,通过分别对各像素点的像素点特征进行特征映射,即可得到各像素点处的像素值。在一个具体的应用中,各像素点的像素点特征具体可以为像素值编码,则通过解码的方式,即可得到各像素点处的像素值。
在具体的应用中,本实施例中的图像融合过程可以通过预训练的图像融合网络执行,通过将两个视频帧图像各自对应的更新中间帧图像同时输入预训练的图像融合网络,该图像融合网络就可以输出融合中间帧图像。其中,预训练的图像融合网络可按照实际应用场景进行训练,可以理解的是,在图像融合网络中,包括特征提取层、特征融合层以及特征映射层,用于分别执行特征提取、对特征进行融合以及基于融合特征,得到用于在两个视频帧图像之间插入的融合中间帧图像。
本实施例中,通过将两个视频帧图像各自对应的更新中间帧图像进行融合,能够使得更新中间帧图像的特征互补,得到特征丰富且图像质量更高的融合中间帧图像,能够提高所生成的中间帧图像的图像质量。
在一个实施例中,根据第二光流信息,从所针对视频帧图像中,确定分别与预测中间帧图像中各图像像素点对应的图像块包括:
针对预测中间帧图像中每一图像像素点,从第二光流信息中,获取所针对图像像素点相应的位置偏移量;
根据位置偏移量,从所针对视频帧图像中,确定与所针对图像像素点对应的目标像素位置;
基于目标像素位置,从所针对视频帧图像中,选取与所针对图像像素点对应的图像块。
其中,位置偏移量是指所针对图像像素点在所针对视频帧图像和预测中间帧图像之间的位置偏移,即所针对图像像素点在所针对视频帧图像和预测中间帧图像之间的位移。
具体的,针对预测中间帧图像中每一图像像素点,终端从第二光流信息中,可以直接获取到所针对图像像素点相应的位置偏移量,进而可以根据位置偏移量,从所针对视频帧图像中,确定与所针对图像像素点对应的目标像素位置,从而可以基于目标像素位置以及图像块的大小,从所针对视频帧图像中,选取与所针对图像像素点对应的图像块。
在具体的应用中,所针对图像像素点的像素点位置,可以通过像素点坐标表示,则根据像素点坐标和位置偏移量,可以从所针对视频帧图像中,定位出与所针对图像像素点对应的目标像素位置。在一个具体的应用中,以像素点坐标为(x,y)且位置偏移量为(dx,dy)为例,目标像素位置可以表示为(x+dx,y+dy)。需要说明的是,若根据像素点坐标和位置偏移量,无法从所针对视频帧图像中,定位出与所针对图像像素点对应的目标像素位置,终端会直接根据图像块的大小,对所针对图像像素点对应的图像块进行设置,所设置的图像块中,每个图像块像素点处的像素值为0。
在具体的应用中,在确定目标像素位置的基础上,可以基于目标像素位置,从所针对视频帧图像中,确定目标像素点,进而可以基于图像块的大小,从所针对视频帧图像中,选取与所针对图像像素点对应的图像块,该图像块包括目标像素点。
在一个具体的应用中,由于位置偏移量可能为浮点数,则根据像素点坐标和位置偏移量,所定位出的目标像素位置处的像素坐标也可能为浮点数,因此,需要基于目标像素位置,从所针对视频帧图像中,确定出目标像素点。可以理解的是,目标像素点是指距离目标像素位置最近的像素点。若位置偏移量不为浮点数,则根据像素点坐标和位置偏移量,所定位出的目标像素位置即为目标像素点的位置。
举例说明,如图4所示,在所针对视频帧图像中,以每个小方格表示一个像素点,小方格的正中心表示像素点的像素坐标,若所定位出的目标像素位置不为小方格的正中心,则表示目标像素位置处的像素坐标为浮点数,会将距离目标像素位置最近的像素点,作为目标像素点。进一步举例说明,如图5所示,若所定位出的目标像素位置为小方格的正中心,则表示目标像素位置即为目标像素点的位置。
在一个具体的应用中,图像块的大小可按照实际应用场景进行配置,在基于图像块的大小,从所针对视频帧图像中,选取与所针对图像像素点对应的图像块时,选取规则也可以按照实际应用场景进行配置。比如,选取规则具体可以为以目标像素点为起始点向左进行选取,也可以为以目标像素点为中心点进行选取。举例说明,以图像块的大小为4个像素点,且以目标像素点为起始点向左进行选取为例,所得到的图像块可以如图6所示(图6中用加粗小方块表示被选取的像素点)。又举例说明,以图像块的大小为9个像素点,且以目标像素点为中心点进行选取为例,所得到的图像块可以如图7(图7中用加粗小方块表示被选取的像素点)所示。
需要说明的是,本实施例中,在选取图像块时,若选取范围处于所针对视频帧图像的边缘,可能会存在无法选取完全的情况,此时,终端会在无法选取的图像边缘区域衬垫像素点,所衬垫的像素点处的像素值为0。举例说明,以图像块的大小为9个像素点,且以目标像素点为中心点进行选取为例,如图8所示,在以目标像素点为中心点进行选取时,选取范围处于所针对视频帧图像的边缘,只能从所针对视频帧图像中选取出6个像素点(图8中用加粗小方块表示),此时,终端会在无法选取的图像边缘区域衬垫像素点(图8中用边框为虚线的小方块表示),所衬垫的像素点处的像素值为0,以使得图像块的大小不变。
本实施例中,针对预测中间帧图像中每一图像像素点,通过从第二光流信息中,获取所针对图像像素点相应的位置偏移量,能够利用位置偏移量,从所针对视频帧图像中,实现对与所针对图像像素点对应的目标像素位置的确定,进而可以基于目标像素位置,从所针对视频帧图像中,实现对与所针对图像像素点对应的图像块的选取。
在一个实施例中,基于两个视频帧图像和第一光流信息,预测两个视频帧图像之间的中间帧图像,得到预测中间帧图像包括:
基于第一光流信息中的前向光流信息和后向光流信息,以及中间帧时刻,估计与两个视频帧图像各自对应的中间帧光流信息;
基于两个视频帧图像和与两个视频帧图像各自对应的中间帧光流信息,预测两个视频帧图像之间的中间帧图像,得到预测中间帧图像。
其中,中间帧时刻是指中间帧图像在视频中对应的时刻,可以理解的是,由于中间帧图像是两个视频帧图像之间的帧图像,因此中间帧时刻为两个视频帧图像所对应的两个时刻之间的时刻。中间帧光流信息是指通过光流估计所确定的中间帧图像与视频帧图像之间的光流信息。
其中,前向光流信息是指从较早时刻的视频帧图像到较晚时刻的视频帧图像的光流信息,后向光流信息是指从较晚时刻的视频帧图像到较早时刻的视频帧图像的光流信息。举例说明,假设两个视频帧图像包括第一视频帧图像和第二视频帧图像,且第一视频帧图像是第二视频帧图像的前向帧,则前向光流信息是指从第一视频帧图像到第二视频帧图像的光流信息,后向光流信息是指从第二视频帧图像到第一视频帧图像的光流信息。
具体的,终端会基于第一光流信息中的前向光流信息和后向光流信息,以及中间帧时刻,来估计与两个视频帧图像各自对应的中间帧光流信息,在得到与两个视频帧图像各自对应的中间帧光流信息的基础上,终端就可以基于两个视频帧图像和与两个视频帧图像各自对应的中间帧光流信息,预测两个视频帧图像之间的中间帧图像,得到预测中间帧图像。
在具体的应用中,假设两个视频帧图像分别为第一视频帧图像I0和第二视频帧图像I1,且第一视频帧图像I0为第二视频帧图像I1的前向帧,且中间帧时刻为t∈[0, 1](假设第一视频帧图像I0对应时刻0,第二视频帧图像I1对应时刻1),为了获得预测中间帧图像It,需要计算中间帧光流信息和/>,其中/>代表从中间帧时刻t到时刻0的中间帧光流信息,/>代表从中间帧时刻t到时刻1的中间帧光流信息,在得到中间帧光流信息的基础上,就可以通过反向图像扭曲的方式,来预测两个视频帧图像之间的中间帧图像,得到预测中间帧图像。
在具体的应用中,可以基于线性运动模型来建模帧间的运动,基于线性运动模型建模光流进行插帧的示意图可以如图9所示,若单向考虑,可以采用如下公式来进行估计:
或者/>
其中,(1-t)和t为权重系数,与中间帧时刻对应,可以理解为t越靠近0,在计算中所占的权重更高,是指前向光流信息,即第一视频帧图像I0到第二视频帧图像I1的光流信息,/>是指后向光流信息,即第二视频帧图像I1到第一视频帧图像I0的光流信息,/>是指与第二视频帧图像对应的中间帧光流信息。p是指像素点的像素点位置,即像素点坐标。
进一步的,结合双向关系可以进一步推导估计中间帧光流信息的公式为:
其中,为与第一视频帧图像对应的中间帧光流信息,/>为与第二视频帧图像对应的中间帧光流信息,(1-t)和t为权重系数,与中间帧时刻对应,可以理解为t越靠近0,在计算中所占的权重更高,/>是指前向光流信息,/>是指后向光流信息。
最终,预测中间帧图像It可通过如下方式计算得到:
其中,(1-t)和t为权重系数,表示基于第一视频帧图像I0和与其对应的中间帧光流信息进行图像扭曲操作,/>表示基于第二视频帧图像I1和与其对应的中间帧光流信息进行图像扭曲操作。
在具体的应用中,可以基于非线性运动模型来建模帧间的运动,相比较于上述提及的线性运动建模,这种方式主要考虑二阶非线性关系,考虑更为复杂的运动,为了更真实的刻画物体的运动,假设物体的运动是匀加速运动,则非线性运动模型光流预测中间帧示意图可以如图10所示,对于匀加速运动建模,同样可以基于前向光流信息和后向光流信息来进行光流估计,以计算与图10中帧图像0对应的中间帧光流信息即为例,我们可以得到如下二次积分公式:
其中,t为权重系数,与中间帧时刻对应,k为参数,与中间帧时刻对应,为第一视频帧图像中图像像素点的速度,/>为第一视频帧图像中图像像素点的加速度。
匀加速运动后的可以为:/>
其中,为图10中帧图像0到帧图像1的光流信息,/>为图10中帧图像0到帧图像-1的光流信息,t为权重系数,与中间帧时刻对应,可以理解为t越靠近0,在计算中所占的权重更高。
需要说明的是,上述公式中的权重系数t可以通过中间帧时刻,以及两个视频帧图像所对应的两个时刻得到。具体来说,假设两个视频帧图像所对应的两个时刻中较早时刻为t1、较晚时刻为t2,中间帧时刻为t3,则权重系数t可以通过公式权重系数t=(t3-t2)/(t1-t2)得到。
本实施例中,基于第一光流信息中的前向光流信息和后向光流信息,以及中间帧时刻进行光流估计,能够得到与两个视频帧图像各自对应的中间帧光流信息,从而可以利用两个视频帧图像和与两个视频帧图像各自对应的中间帧光流信息,预测两个视频帧图像之间的中间帧图像,得到预测中间帧图像。
在一个实施例中,基于两个视频帧图像和与两个视频帧图像各自对应的中间帧光流信息,预测两个视频帧图像之间的中间帧图像,得到预测中间帧图像包括:
针对两个视频帧图像中的每一视频帧图像,基于所针对视频帧图像和与所针对视频帧图像对应的中间帧光流信息,预测两个视频帧图像之间的中间帧图像,得到与所针对视频帧图像对应的预测图像;
将两个视频帧图像各自对应的预测图像进行融合,得到预测中间帧图像。
具体的,针对两个视频帧图像中每一视频帧图像,终端会将所针对视频帧图像和所针对视频帧图像对应的中间帧光流信息进行图像扭曲操作,预测两个视频帧图像之间的中间帧图像,得到与所针对视频帧图像对应的预测图像,再将两个视频帧图像各自对应的预测图像进行融合,得到预测中间帧图像。
在具体的应用中,如图11所示,图像扭曲操作包括前向图像扭曲操作和后向图像扭曲操作,其中,前向图像扭曲操作是指基于两个视频帧图像中时刻较早的视频帧图像(如图11所示为第一视频帧图像)和与其对应的中间帧光流信息来进行预测,得到预测图像。后向图像扭曲操作是指基于两个视频帧图像中时刻较晚的视频帧图像(如图11所示为第二视频帧图像)和与其对应的中间帧光流信息来进行预测,得到预测图像。
其中,图像扭曲操作本质上是一种图像插值方案,这种图像插值一般是双线性插值或者最近邻插值,而双线性插值或者最近邻插值本质上都是一种近似的显示建模,即把相邻帧图像的运动变化建模成线性运动来处理,因此这种近似的显示建模往往只能取得很一般的效果,对于复杂运动场景,或者光照变化等场景,这种近似建模方法就会失效,因此,本申请中,在得到预测中间帧图像后,会通过对预测中间帧图像的进一步处理,来生成图像质量高的融合中间帧图像。
本实施例中,针对两个视频帧图像中的每一视频帧图像,基于所针对视频帧图像和与所针对视频帧图像对应的中间帧光流信息,能够实现对两个视频帧图像之间的中间帧图像的预测,得到与所针对视频帧图像对应的预测图像,进而可以通过将两个视频帧图像各自对应的预测图像进行融合,得到预测中间帧图像。
发明人认为,传统方法主要是基于光流法显示地来计算中间帧图像进行视频插帧,然而,基于光流的方法主要描述刚体目标图像较为明显的运动,并且有两个很强的假设,第一个假设是目标的像素值在不同视频帧图像间基本保持不变,第二个假设是相邻像素有着基本相似的运动(也就是光流基本上是类似的)。此外,光流估计的准确性受到许多因素的影响,如光照变化、遮挡、运动模糊等,这可能导致估计的光流不准确,从而影响视频插帧的质量。再者,光流估计可能在处理快速或复杂运动时遇到困难。例如,当物体在两帧之间的运动超过了一个像素时,光流估计可能无法准确地捕捉到这种运动。最后,基于光流估计的插帧技术可能会引入一些视觉伪影,如模糊、抖动等。这是因为光流估计是一种插值技术,它可能无法完全捕捉到两帧图像之间的所有细微变化。
基于此,本申请提出了一种视频插帧图像生成方法,该视频插帧图像生成方法可以理解为一种基于transformer结构的隐空间对齐方案。针对复杂和非线性运动和复杂光照条件下的视频插帧场景,隐空间对齐能够较好的学习到相邻视频帧图像间的形态特征和动力学特征,从而更好地建模相邻视频帧图像的演化进程,并给出更优的动态材质插帧效果。
在一个实施例中,本申请中的视频插帧图像生成方法,采用的是隐式的建模方法,即直接通过神经网络来建模视频帧中的运动变化。在获取到两个视频帧图像的基础上,在本申请中,会先预测两个视频帧图像之间的中间帧图像,得到预测中间帧图像,针对两个视频帧图像中的每一视频帧图像,确定所针对视频帧图像与预测中间帧图像之间的第二光流信息,再基于所针对视频帧图像、预测中间帧图像以及所针对视频帧图像与预测中间帧图像之间的第二光流信息,来生成所针对视频帧图像对应的更新中间帧图像,通过将两个视频帧图像各自对应的更新中间帧图像进行融合,就可以得到用于在两个视频帧图像之间插入的融合中间帧图像。
需要说明的是,本申请中不是采用传统的双线性插值或者最近邻建模方法,而是通过transformer结构隐式的学习这种中间帧生成的过程。具体来说,本申请中,得到所针对视频帧图像对应的更新中间帧图像的过程,可以通过如下公式来描述:Implicit_warp =function(I_ref, I_target, flow),其中,Implicit_warp是指更新中间帧图像,function()表示神经网络的功能,即生成更新中间帧图像,I_ref是指所针对视频帧图像,I_target是指预测中间帧图像,flow是指所针对视频帧图像与预测中间帧图像之间的第二光流信息。
在一个具体的应用中,本申请中,基于所针对视频帧图像、预测中间帧图像以及所针对视频帧图像与预测中间帧图像之间的第二光流信息,来生成所针对视频帧图像对应的更新中间帧图像的过程,可以通过预训练的神经网络来实现,该预训练的神经网络可以执行上述实施例中生成更新中间帧图像的步骤。该预训练的神经网络可按照实际应用场景进行训练,本实施例中在此处对此不做限定。
其中,transformer是一种深度学习模型,其模型示意图可以如图12所示,主要包括多头注意力机制、残差连接&归一化、前馈层等部分,主要用于处理序列数据,如自然语言处理任务和图像块序列的处理。它的核心是自注意力机制,这种机制能够捕捉序列中的长距离依赖关系。在transformer中,自注意力机制的实现主要依赖于三个向量:查询向量(Query,Q)、键向量(Key,K)和值向量(Value,V)。这三个向量都是输入数据的线性变换。如图12所示,在自注意力机制中,首先计算Q和K的点积,得到一个注意力分数矩阵,表示每个元素与其他元素的相关性。然后,通过softmax函数将这些分数转化为权重,这样每个元素的权重和为1,表示其对其他元素的注意力分布。最后,这些权重与对应的V向量相乘并求和,得到输出。这样,每个输出元素都是输入元素的加权和,权重表示了输入元素对输出元素的贡献程度。
下面介绍transformer结构如何用于做隐式对齐。如图13所示,图13的左边是传统的线性插值,主要是对插值点周围的4个像素点进行处理,对4个像素点处的像素值进行显示的双线性插值,其中,光流信息主要引导寻找上述的4个像素点。图13的右边就是本申请中提出的基于transformer结构的隐式对齐方法,在本申请的方案中,光流一样的辅助用于定位大概的对齐区域,即针对预测中间帧图像中每一图像像素点,从第二光流信息中,获取所针对图像像素点(如图13所示为I(x,y))相应的位置偏移量,根据位置偏移量,从所针对视频帧图像中,确定与所针对图像像素点对应的目标像素位置(如图13所示为I(x+dx,y+dy))。在确定目标像素位置的基础上,可以基于目标像素位置,从所针对视频帧图像中,选取与所针对图像像素点对应的图像块。具体的,终端可以先选取一个图像窗口块,该图像窗口块的大小可以为2个像素点或者3个像素点,进而可以根据图像窗口块,来选取图像块,当图像窗口块的大小为2个像素点时,如图13所示,图像块包括4个像素点,当图像窗口块的大小为3个像素点时,图像块包括9个像素点。
进一步的,transformer结构处理图像块(如图13所示为M)时,一般还需要加入位置编码(PEM)的信息,用于学习该图像块在全局图像中的位置信息,本申请中,即针对预测中间帧图像中每一图像像素点,需要从所针对视频帧图像中,获取所针对图像像素点对应的图像块的位置信息,再基于所针对图像像素点对应的图像块以及位置信息,对所针对图像像素点处的像素值进行更新,得到所针对图像像素点处的更新像素值,根据预测中间帧图像中每一图像像素点处的更新像素值,得到所针对视频帧图像对应的更新中间帧图像。
在一个实施例中,以图像块包括4个图像块像素点为例,如图13所示,针对4个图像块像素点中每一个图像块像素点,终端会基于所针对图像块像素点处的像素值和所针对图像块像素点的像素点位置进行特征提取,得到所针对图像块像素点对应的像素点特征,基于多个图像块像素点各自对应的像素点特征(如图13所示为PEM+M),对所针对图像像素点处的像素值进行更新,得到所针对图像像素点处的更新像素值(如图13所示为)。
在一个实施例中,终端会对所针对图像块像素点处的像素值进行编码,得到所针对图像块像素点对应的像素值编码,并对所针对图像块像素点的像素点位置进行编码,得到所针对图像块像素点对应的位置编码,将所针对图像块像素点对应的像素值编码以及位置编码进行融合,得到所针对图像块像素点对应的像素点特征。
在一个实施例中,在对所针对图像像素点处的像素值进行更新时,终端会基于所针对图像像素点处的像素值和所针对图像像素点相应的位置偏移量(如图13所示为())进行特征提取,得到所针对图像像素点对应的像素点特征,再基于注意力机制的变换矩阵,分别对多个图像块像素点各自对应的像素点特征进行线性变换,得到多个图像块像素点各自对应的键向量(如图13所示为PK)和值向量(如图13所示为PV),并对所针对图像像素点对应的像素点特征进行线性变换,得到所针对图像像素点的查询向量(PQ),对键向量、值向量和查询向量进行交互,得到所针对图像像素点处的更新像素值。
其中,对键向量、值向量和查询向量进行交互,得到所针对图像像素点处的更新像素值的方式为,根据多个图像块像素点各自对应的键向量和所针对图像像素点的查询向量进行注意力权重计算,获得多个图像块像素点各自对应的注意力权重,基于多个图像块像素点各自对应的注意力权重,对多个图像块像素点各自对应的值向量进行加权,得到所针对图像像素点的更新像素点特征,基于所针对图像像素点的更新像素点特征,得到所针对图像像素点处的更新像素值。
在一个实施例中,终端会对所针对图像像素点处的像素值进行编码,得到所针对图像像素点对应的像素值编码,并对所针对图像像素点相应的位置偏移量进行编码,得到所针对图像像素点对应的位置编码,将所针对图像像素点对应的像素值编码和位置编码进行融合,得到所针对图像像素点对应的像素点特征。
在一个实施例中,本申请的视频插帧图像生成方法,主要应用于视频超分辨,而视频超分辨广泛应用于在线和离线内容播放,直播和点播等场景,老片修复,RTC(Real-TimeCommunications,实时通信)超分等领域。既可以面向研究者做上述各个领域的进一步研究和探索,也可以面向消费者,融合进本地端进行视频的插帧,从而提高视频内容的帧率,增加视频的流畅度。而动态内容在视频中占据相当大的比重,而传统插帧方法对动态内容的插帧效果往往欠佳,因此本申请中提出的视频插帧图像生成方法对动态场景的插帧能够有效地提升该领域的应用效果。
在一个实施例中,如图14所示,本申请中提供的一种视频插帧图像生成方法,可以应用于动态场景插帧,动态场景插帧作为一种底层的技术,能够与视频超分等其他底层技术(如图14所示还包括去噪、锐化、人脸检测等)共同构建底层代码,然后可以抽象出各种应用场景并总结实践算法,如点播/直播RTC超分、点播/直播SDR(Standard Dynamic Range,标准动态范围)增强、点播/直播HDR(High Dynamic Range Imaging,高动态范围成像)增强、UGC(UserGenerated Content,用户生成内容)画质增强等领域,应用于各种业务上的需求(如图14所示包括视频软件、视频云、在线会议、视频号、即时通信软件、广告等)。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的视频插帧图像生成方法的视频插帧图像生成装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个视频插帧图像生成装置实施例中的具体限定可以参见上文中对于视频插帧图像生成方法的限定,在此不再赘述。
在一个实施例中,如图15所示,提供了一种视频插帧图像生成装置,包括:第一光流计算模块1502、预测模块1504、第二光流计算模块1506、图像块选取模块1508、更新模块1510和融合模块1512,其中:
第一光流计算模块1502,用于获取两个视频帧图像,确定两个视频帧图像之间的第一光流信息;
预测模块1504,用于基于两个视频帧图像和第一光流信息,预测两个视频帧图像之间的中间帧图像,得到预测中间帧图像;
第二光流计算模块1506,用于针对两个视频帧图像中的每一视频帧图像,确定所针对视频帧图像与预测中间帧图像之间的第二光流信息;
图像块选取模块1508,用于根据第二光流信息,从所针对视频帧图像中,确定分别与预测中间帧图像中各图像像素点对应的图像块;
更新模块1510,用于基于预测中间帧图像中各图像像素点对应的图像块,分别对预测中间帧图像中各图像像素点处的像素值进行更新,得到所针对视频帧图像对应的更新中间帧图像;
融合模块1512,用于将两个视频帧图像各自对应的更新中间帧图像进行融合,得到用于在两个视频帧图像之间插入的融合中间帧图像。
上述视频插帧图像生成装置,通过获取两个视频帧图像,确定两个视频帧图像之间的第一光流信息,能够基于两个视频帧图像和第一光流信息,实现对两个视频帧图像之间的中间帧图像的预测,得到预测中间帧图像,通过针对两个视频帧图像中的每一视频帧图像,确定所针对视频帧图像与预测中间帧图像之间的第二光流信息,根据第二光流信息,从所针对视频帧图像中,确定分别与预测中间帧图像中各图像像素点对应的图像块,基于预测中间帧图像中各图像像素点对应的图像块,分别对预测中间帧图像中各图像像素点处的像素值进行更新,能够通过隐式的图像和特征对齐的方式,学习到相邻视频帧图像之间的形态特征和动力学特征,从而更好地建模相邻视频帧图像的动态变化和演化进程,得到图像质量高的所针对视频帧图像对应的更新中间帧图像,进而可以通过将两个视频帧图像各自对应的更新中间帧图像进行融合的方式,得到用于在所述两个视频帧图像之间插入的融合中间帧图像,能够提高所生成的中间帧图像的图像质量。
在一个实施例中,更新模块还用于针对预测中间帧图像中每一图像像素点,从所针对视频帧图像中,获取所针对图像像素点对应的图像块的位置信息,基于所针对图像像素点对应的图像块以及位置信息,对所针对图像像素点处的像素值进行更新,得到所针对图像像素点处的更新像素值,根据预测中间帧图像中每一图像像素点处的更新像素值,得到所针对视频帧图像对应的更新中间帧图像。
在一个实施例中,所针对图像像素点对应的图像块包括多个图像块像素点,位置信息包括多个图像块像素点各自的像素点位置,更新模块还用于针对多个图像块像素点中每一图像块像素点,基于所针对图像块像素点处的像素值和所针对图像块像素点的像素点位置进行特征提取,得到所针对图像块像素点对应的像素点特征,基于多个图像块像素点各自对应的像素点特征,对所针对图像像素点处的像素值进行更新,得到所针对图像像素点处的更新像素值。
在一个实施例中,更新模块还用于对所针对图像块像素点处的像素值进行编码,得到所针对图像块像素点对应的像素值编码,并对所针对图像块像素点的像素点位置进行编码,得到所针对图像块像素点对应的位置编码,将所针对图像块像素点对应的像素值编码以及位置编码进行融合,得到所针对图像块像素点对应的像素点特征。
在一个实施例中,更新模块还用于基于所针对图像像素点处的像素值和所针对图像像素点相应的位置偏移量进行特征提取,得到所针对图像像素点对应的像素点特征,基于注意力机制,对多个图像块像素点各自对应的像素点特征和所针对图像像素点对应的像素点特征进行卷积处理,得到所针对图像像素点处的更新像素值。
在一个实施例中,更新模块还用于对所针对图像像素点处的像素值进行编码,得到所针对图像像素点对应的像素值编码,并对所针对图像像素点相应的位置偏移量进行编码,得到所针对图像像素点对应的位置编码,将所针对图像像素点对应的像素值编码和位置编码进行融合,得到所针对图像像素点对应的像素点特征。
在一个实施例中,更新模块还用于基于注意力机制的变换矩阵,分别对多个图像块像素点各自对应的像素点特征进行线性变换,得到多个图像块像素点各自对应的键向量和值向量,并对所针对图像像素点对应的像素点特征进行线性变换,得到所针对图像像素点的查询向量,根据多个图像块像素点各自对应的键向量和所针对图像像素点的查询向量进行注意力权重计算,获得多个图像块像素点各自对应的注意力权重,基于多个图像块像素点各自对应的注意力权重,对多个图像块像素点各自对应的值向量进行加权,得到所针对图像像素点的更新像素点特征,基于所针对图像像素点的更新像素点特征,得到所针对图像像素点处的更新像素值。
在一个实施例中,融合模块还用于分别对两个视频帧图像各自对应的更新中间帧图像进行特征提取,得到两个视频帧图像各自对应的更新中间帧图像特征,对两个视频帧图像各自对应的更新中间帧图像特征进行融合,得到融合特征,基于融合特征,得到用于在两个视频帧图像之间插入的融合中间帧图像。
在一个实施例中,图像块选取模块还用于针对预测中间帧图像中每一图像像素点,从第二光流信息中,获取所针对图像像素点相应的位置偏移量,根据位置偏移量,从所针对视频帧图像中,确定与所针对图像像素点对应的目标像素位置,基于目标像素位置,从所针对视频帧图像中,选取与所针对图像像素点对应的图像块。
在一个实施例中,预测模块还用于基于第一光流信息中的前向光流信息和后向光流信息,以及中间帧时刻,估计与两个视频帧图像各自对应的中间帧光流信息,基于两个视频帧图像和与两个视频帧图像各自对应的中间帧光流信息,预测两个视频帧图像之间的中间帧图像,得到预测中间帧图像。
在一个实施例中,预测模块还用于针对两个视频帧图像中的每一视频帧图像,基于所针对视频帧图像和与所针对视频帧图像对应的中间帧光流信息,预测两个视频帧图像之间的中间帧图像,得到与所针对视频帧图像对应的预测图像,将两个视频帧图像各自对应的预测图像进行融合,得到预测中间帧图像。
上述视频插帧图像生成装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,也可以是服务器,以该计算机设备是终端为例,其内部结构图可以如图16所示。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种视频插帧图像生成方法。该计算机设备的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或虚拟现实成像装置,显示屏可以是液晶显示屏或电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图16中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

Claims (22)

1.一种视频插帧图像生成方法,其特征在于,所述方法包括:
获取两个视频帧图像,确定所述两个视频帧图像之间的第一光流信息;
基于所述两个视频帧图像和所述第一光流信息,预测所述两个视频帧图像之间的中间帧图像,得到预测中间帧图像;
针对所述两个视频帧图像中的每一视频帧图像,确定所针对视频帧图像与所述预测中间帧图像之间的第二光流信息;
根据所述第二光流信息,从所述所针对视频帧图像中,确定分别与所述预测中间帧图像中各图像像素点对应的图像块;
基于所述预测中间帧图像中各图像像素点对应的图像块,分别对所述预测中间帧图像中各图像像素点处的像素值进行更新,得到所述所针对视频帧图像对应的更新中间帧图像;
分别对所述两个视频帧图像各自对应的更新中间帧图像进行特征提取,得到所述两个视频帧图像各自对应的更新中间帧图像特征;
对所述两个视频帧图像各自对应的更新中间帧图像特征进行融合,得到融合特征;
基于所述融合特征进行特征映射,得到用于在所述两个视频帧图像之间插入的融合中间帧图像。
2.根据权利要求1所述的方法,其特征在于,所述基于所述预测中间帧图像中各图像像素点对应的图像块,分别对所述预测中间帧图像中各图像像素点处的像素值进行更新,得到所述所针对视频帧图像对应的更新中间帧图像包括:
针对所述预测中间帧图像中每一图像像素点,从所述所针对视频帧图像中,获取所针对图像像素点对应的图像块的位置信息;
基于所述所针对图像像素点对应的图像块以及所述位置信息,对所述所针对图像像素点处的像素值进行更新,得到所述所针对图像像素点处的更新像素值;
根据所述预测中间帧图像中每一图像像素点处的更新像素值,得到所述所针对视频帧图像对应的更新中间帧图像。
3.根据权利要求2所述的方法,其特征在于,所述所针对图像像素点对应的图像块包括多个图像块像素点,所述位置信息包括所述多个图像块像素点各自的像素点位置;
所述基于所述所针对图像像素点对应的图像块以及所述位置信息,对所述所针对图像像素点处的像素值进行更新,得到所述所针对图像像素点处的更新像素值包括:
针对所述多个图像块像素点中每一图像块像素点,基于所针对图像块像素点处的像素值和所述所针对图像块像素点的像素点位置进行特征提取,得到所述所针对图像块像素点对应的像素点特征;
基于所述多个图像块像素点各自对应的像素点特征,对所述所针对图像像素点处的像素值进行更新,得到所述所针对图像像素点处的更新像素值。
4.根据权利要求3所述的方法,其特征在于,所述基于所针对图像块像素点处的像素值和所述所针对图像块像素点的像素点位置进行特征提取,得到所述所针对图像块像素点对应的像素点特征包括:
对所针对图像块像素点处的像素值进行编码,得到所述所针对图像块像素点对应的像素值编码,并对所述所针对图像块像素点的像素点位置进行编码,得到所述所针对图像块像素点对应的位置编码;
将所述所针对图像块像素点对应的像素值编码以及位置编码进行融合,得到所述所针对图像块像素点对应的像素点特征。
5.根据权利要求3所述的方法,其特征在于,所述基于所述多个图像块像素点各自对应的像素点特征,对所述所针对图像像素点处的像素值进行更新,得到所述所针对图像像素点处的更新像素值包括:
基于所述所针对图像像素点处的像素值和所述所针对图像像素点相应的位置偏移量进行特征提取,得到所述所针对图像像素点对应的像素点特征;
基于注意力机制,对所述多个图像块像素点各自对应的像素点特征和所述所针对图像像素点对应的像素点特征进行卷积处理,得到所述所针对图像像素点处的更新像素值。
6.根据权利要求5所述的方法,其特征在于,所述基于所述所针对图像像素点处的像素值和所述所针对图像像素点相应的位置偏移量进行特征提取,得到所述所针对图像像素点对应的像素点特征包括:
对所述所针对图像像素点处的像素值进行编码,得到所述所针对图像像素点对应的像素值编码,并对所述所针对图像像素点相应的位置偏移量进行编码,得到所述所针对图像像素点对应的位置编码;
将所述所针对图像像素点对应的像素值编码和位置编码进行融合,得到所述所针对图像像素点对应的像素点特征。
7.根据权利要求5所述的方法,其特征在于,所述基于注意力机制,对所述多个图像块像素点各自对应的像素点特征和所述所针对图像像素点对应的像素点特征进行卷积处理,得到所述所针对图像像素点处的更新像素值包括:
基于注意力机制的变换矩阵,分别对所述多个图像块像素点各自对应的像素点特征进行线性变换,得到所述多个图像块像素点各自对应的键向量和值向量,并对所述所针对图像像素点对应的像素点特征进行线性变换,得到所述所针对图像像素点的查询向量;
根据所述多个图像块像素点各自对应的键向量和所述所针对图像像素点的查询向量进行注意力权重计算,获得所述多个图像块像素点各自对应的注意力权重;
基于所述多个图像块像素点各自对应的注意力权重,对所述多个图像块像素点各自对应的值向量进行加权,得到所述所针对图像像素点的更新像素点特征;
基于所述所针对图像像素点的更新像素点特征,得到所述所针对图像像素点处的更新像素值。
8.根据权利要求1至7任意一项所述的方法,其特征在于,所述根据所述第二光流信息,从所述所针对视频帧图像中,确定分别与所述预测中间帧图像中各图像像素点对应的图像块包括:
针对所述预测中间帧图像中每一图像像素点,从所述第二光流信息中,获取所针对图像像素点相应的位置偏移量;
根据所述位置偏移量,从所述所针对视频帧图像中,确定与所述所针对图像像素点对应的目标像素位置;
基于所述目标像素位置,从所述所针对视频帧图像中,选取与所述所针对图像像素点对应的图像块。
9.根据权利要求1至7任意一项所述的方法,其特征在于,所述基于所述两个视频帧图像和所述第一光流信息,预测所述两个视频帧图像之间的中间帧图像,得到预测中间帧图像包括:
基于所述第一光流信息中的前向光流信息和后向光流信息,以及中间帧时刻,估计与所述两个视频帧图像各自对应的中间帧光流信息;
基于所述两个视频帧图像和与所述两个视频帧图像各自对应的中间帧光流信息,预测所述两个视频帧图像之间的中间帧图像,得到预测中间帧图像。
10.根据权利要求9所述的方法,其特征在于,所述基于所述两个视频帧图像和与所述两个视频帧图像各自对应的中间帧光流信息,预测所述两个视频帧图像之间的中间帧图像,得到预测中间帧图像包括:
针对所述两个视频帧图像中的每一视频帧图像,基于所针对视频帧图像和与所述所针对视频帧图像对应的中间帧光流信息,预测所述两个视频帧图像之间的中间帧图像,得到与所述所针对视频帧图像对应的预测图像;
将所述两个视频帧图像各自对应的预测图像进行融合,得到预测中间帧图像。
11.一种视频插帧图像生成装置,其特征在于,所述装置包括:
第一光流计算模块,用于获取两个视频帧图像,确定所述两个视频帧图像之间的第一光流信息;
预测模块,用于基于所述两个视频帧图像和所述第一光流信息,预测所述两个视频帧图像之间的中间帧图像,得到预测中间帧图像;
第二光流计算模块,用于针对所述两个视频帧图像中的每一视频帧图像,确定所针对视频帧图像与所述预测中间帧图像之间的第二光流信息;
图像块选取模块,用于根据所述第二光流信息,从所述所针对视频帧图像中,确定分别与所述预测中间帧图像中各图像像素点对应的图像块;
更新模块,用于基于所述预测中间帧图像中各图像像素点对应的图像块,分别对所述预测中间帧图像中各图像像素点处的像素值进行更新,得到所述所针对视频帧图像对应的更新中间帧图像;
融合模块,用于分别对所述两个视频帧图像各自对应的更新中间帧图像进行特征提取,得到所述两个视频帧图像各自对应的更新中间帧图像特征,对所述两个视频帧图像各自对应的更新中间帧图像特征进行融合,得到融合特征,基于所述融合特征进行特征映射,得到用于在所述两个视频帧图像之间插入的融合中间帧图像。
12.根据权利要求11所述的装置,其特征在于,所述更新模块还用于针对所述预测中间帧图像中每一图像像素点,从所述所针对视频帧图像中,获取所针对图像像素点对应的图像块的位置信息,基于所述所针对图像像素点对应的图像块以及所述位置信息,对所述所针对图像像素点处的像素值进行更新,得到所述所针对图像像素点处的更新像素值,根据所述预测中间帧图像中每一图像像素点处的更新像素值,得到所述所针对视频帧图像对应的更新中间帧图像。
13.根据权利要求12所述的装置,其特征在于,所述所针对图像像素点对应的图像块包括多个图像块像素点,所述位置信息包括所述多个图像块像素点各自的像素点位置;所述更新模块还用于针对所述多个图像块像素点中每一图像块像素点,基于所针对图像块像素点处的像素值和所述所针对图像块像素点的像素点位置进行特征提取,得到所述所针对图像块像素点对应的像素点特征,基于所述多个图像块像素点各自对应的像素点特征,对所述所针对图像像素点处的像素值进行更新,得到所述所针对图像像素点处的更新像素值。
14.根据权利要求13所述的装置,其特征在于,所述更新模块还用于对所针对图像块像素点处的像素值进行编码,得到所述所针对图像块像素点对应的像素值编码,并对所述所针对图像块像素点的像素点位置进行编码,得到所述所针对图像块像素点对应的位置编码,将所述所针对图像块像素点对应的像素值编码以及位置编码进行融合,得到所述所针对图像块像素点对应的像素点特征。
15.根据权利要求13所述的装置,其特征在于,所述更新模块还用于基于所述所针对图像像素点处的像素值和所述所针对图像像素点相应的位置偏移量进行特征提取,得到所述所针对图像像素点对应的像素点特征,基于注意力机制,对所述多个图像块像素点各自对应的像素点特征和所述所针对图像像素点对应的像素点特征进行卷积处理,得到所述所针对图像像素点处的更新像素值。
16.根据权利要求15所述的装置,其特征在于,所述更新模块还用于对所述所针对图像像素点处的像素值进行编码,得到所述所针对图像像素点对应的像素值编码,并对所述所针对图像像素点相应的位置偏移量进行编码,得到所述所针对图像像素点对应的位置编码,将所述所针对图像像素点对应的像素值编码和位置编码进行融合,得到所述所针对图像像素点对应的像素点特征。
17.根据权利要求15所述的装置,其特征在于,所述更新模块还用于基于注意力机制的变换矩阵,分别对所述多个图像块像素点各自对应的像素点特征进行线性变换,得到所述多个图像块像素点各自对应的键向量和值向量,并对所述所针对图像像素点对应的像素点特征进行线性变换,得到所述所针对图像像素点的查询向量,根据所述多个图像块像素点各自对应的键向量和所述所针对图像像素点的查询向量进行注意力权重计算,获得所述多个图像块像素点各自对应的注意力权重,基于所述多个图像块像素点各自对应的注意力权重,对所述多个图像块像素点各自对应的值向量进行加权,得到所述所针对图像像素点的更新像素点特征,基于所述所针对图像像素点的更新像素点特征,得到所述所针对图像像素点处的更新像素值。
18.根据权利要求11至17任意一项所述的装置,其特征在于,所述图像块选取模块还用于针对所述预测中间帧图像中每一图像像素点,从所述第二光流信息中,获取所针对图像像素点相应的位置偏移量,根据所述位置偏移量,从所述所针对视频帧图像中,确定与所述所针对图像像素点对应的目标像素位置,基于所述目标像素位置,从所述所针对视频帧图像中,选取与所述所针对图像像素点对应的图像块。
19.根据权利要求11至17任意一项所述的装置,其特征在于,所述预测模块还用于基于所述第一光流信息中的前向光流信息和后向光流信息,以及中间帧时刻,估计与所述两个视频帧图像各自对应的中间帧光流信息,基于所述两个视频帧图像和与所述两个视频帧图像各自对应的中间帧光流信息,预测所述两个视频帧图像之间的中间帧图像,得到预测中间帧图像。
20.根据权利要求19所述的装置,其特征在于,所述预测模块还用于针对所述两个视频帧图像中的每一视频帧图像,基于所针对视频帧图像和与所述所针对视频帧图像对应的中间帧光流信息,预测所述两个视频帧图像之间的中间帧图像,得到与所述所针对视频帧图像对应的预测图像,将所述两个视频帧图像各自对应的预测图像进行融合,得到预测中间帧图像。
21.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至10中任一项所述的方法的步骤。
22.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至10中任一项所述的方法的步骤。
CN202311510522.1A 2023-11-14 2023-11-14 视频插帧图像生成方法、装置、计算机设备和存储介质 Active CN117241065B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311510522.1A CN117241065B (zh) 2023-11-14 2023-11-14 视频插帧图像生成方法、装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311510522.1A CN117241065B (zh) 2023-11-14 2023-11-14 视频插帧图像生成方法、装置、计算机设备和存储介质

Publications (2)

Publication Number Publication Date
CN117241065A CN117241065A (zh) 2023-12-15
CN117241065B true CN117241065B (zh) 2024-03-08

Family

ID=89084611

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311510522.1A Active CN117241065B (zh) 2023-11-14 2023-11-14 视频插帧图像生成方法、装置、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN117241065B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112104830A (zh) * 2020-08-13 2020-12-18 北京迈格威科技有限公司 视频插帧方法、模型训练方法及对应装置
CN113542651A (zh) * 2021-05-28 2021-10-22 北京迈格威科技有限公司 模型训练方法、视频插帧方法及对应装置
CN114071223A (zh) * 2020-07-30 2022-02-18 武汉Tcl集团工业研究院有限公司 基于光流的视频插帧的生成方法、存储介质及终端设备
CN115002379A (zh) * 2022-04-25 2022-09-02 武汉大学 视频插帧方法、训练方法、装置、电子设备和存储介质
CN116980549A (zh) * 2023-03-08 2023-10-31 腾讯科技(深圳)有限公司 视频帧处理方法、装置、计算机设备和存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114071223A (zh) * 2020-07-30 2022-02-18 武汉Tcl集团工业研究院有限公司 基于光流的视频插帧的生成方法、存储介质及终端设备
CN112104830A (zh) * 2020-08-13 2020-12-18 北京迈格威科技有限公司 视频插帧方法、模型训练方法及对应装置
WO2022033048A1 (zh) * 2020-08-13 2022-02-17 北京迈格威科技有限公司 视频插帧方法、模型训练方法及对应装置
CN113542651A (zh) * 2021-05-28 2021-10-22 北京迈格威科技有限公司 模型训练方法、视频插帧方法及对应装置
CN115002379A (zh) * 2022-04-25 2022-09-02 武汉大学 视频插帧方法、训练方法、装置、电子设备和存储介质
CN116980549A (zh) * 2023-03-08 2023-10-31 腾讯科技(深圳)有限公司 视频帧处理方法、装置、计算机设备和存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
An Implicit Alignment for Video Super-Resolution;Kai Xu等;《arXiv:2305.00163v1 [cs.CV] 29 Apr 2023》;第3-4节,图2 *

Also Published As

Publication number Publication date
CN117241065A (zh) 2023-12-15

Similar Documents

Publication Publication Date Title
CN114339409B (zh) 视频处理方法、装置、计算机设备及存储介质
CN111723707B (zh) 一种基于视觉显著性的注视点估计方法及装置
Zhang et al. A flexible recurrent residual pyramid network for video frame interpolation
Hu et al. Capturing small, fast-moving objects: Frame interpolation via recurrent motion enhancement
Li et al. Deep sketch-guided cartoon video inbetweening
CN114429555A (zh) 由粗到细的图像稠密匹配方法、系统、设备及存储介质
Zhang et al. Multi-frame pyramid refinement network for video frame interpolation
Zhao et al. Towards image-to-video translation: A structure-aware approach via multi-stage generative adversarial networks
Liu et al. Facial image inpainting using attention-based multi-level generative network
Mehl et al. M-fuse: Multi-frame fusion for scene flow estimation
Yuan et al. A novel deep pixel restoration video prediction algorithm integrating attention mechanism
Hara et al. Enhancement of novel view synthesis using omnidirectional image completion
Hou et al. Joint learning of image deblurring and depth estimation through adversarial multi-task network
Jung et al. Multi-task learning framework for motion estimation and dynamic scene deblurring
CN114998814B (zh) 目标视频生成方法、装置、计算机设备和存储介质
CN117241065B (zh) 视频插帧图像生成方法、装置、计算机设备和存储介质
Hu et al. Enhancing quality of pose-varied face restoration with local weak feature sensing and gan prior
WO2022247394A1 (zh) 图像拼接方法及装置、存储介质及电子设备
CN115564639A (zh) 背景虚化方法、装置、计算机设备和存储介质
Li et al. Hybrid warping fusion for video frame interpolation
Zhu et al. MFNet: Real-time motion focus network for video frame interpolation
Haji-Esmaeili et al. Large-scale Monocular Depth Estimation in the Wild
Qi A multi-path attention network for non-uniform blind image deblurring
Li et al. Enhanced spatial-temporal freedom for video frame interpolation
Xu et al. Color Guided Depth Map Super-Resolution with Nonlocla Autoregres-Sive Modeling

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40097770

Country of ref document: HK