1.本技术涉及图像处理技术领域,尤其涉及一种图像处理方法、装置、及计算机设备。
背景技术:2.目前,在图像处理的过程中,可能存在需基于已知的图像帧,预测生成新的图像帧的情况。例如,当某视频的帧率较低时,便需要基于该视频中已有的图像帧预测生成新的图像帧,以提升视频的帧率;又如,在游戏场景中,也可利用已有的游戏画面(即图像帧)预测合成新的游戏画面,从而提升游戏画面的显示流畅度,等等。基于此,如何利用已知的图像帧预测生成新的图像帧,是当前亟待解决的一个技术问题。
技术实现要素:3.本技术实施例提出了一种图像处理方法、装置、计算机设备及存储介质,可以基于渲染完成的参考图像帧、投影场景流和目标光流进行图像重建,预测得到目标图像帧,从而提高目标图像帧的准确性。
4.一方面,本技术实施例提供一种图像处理方法,该方法包括:响应于生成目标图像帧的触发事件,获取渲染完成的图像帧作为目标图像帧的参考图像帧,目标图像帧和参考图像帧通过相机进行呈现;根据参考图像帧的图像信息以及针对目标图像帧给定的图像信息,预测出投影场景流;投影场景流用于描述:在相机发生运动的情况下,参考图像帧和目标图像帧之间需满足的运动信息;根据用于进行光流估计的参考信息,估计出目标光流;目标光流用于指示:在可运动的对象发生运动的情况下,参考图像帧和目标图像帧之间需满足的运动信息;基于参考图像帧、投影场景流和目标光流进行图像重建,得到目标图像帧。
5.一方面,本技术实施例提供一种图像处理装置,该装置包括:获取单元,用于响应于生成目标图像帧的触发事件,获取渲染完成的图像帧作为目标图像帧的参考图像帧,目标图像帧和参考图像帧通过相机进行呈现;处理单元,用于根据参考图像帧的图像信息以及针对目标图像帧给定的图像信息,预测出投影场景流;投影场景流用于描述:在相机发生运动的情况下,参考图像帧和目标图像帧之间需满足的运动信息;处理单元,还用于根据用于进行光流估计的参考信息,估计出目标光流;目标光流用于指示:在可运动的对象发生运动的情况下,参考图像帧和目标图像帧之间需满足的运动信息;处理单元,还用于基于参考图像帧、投影场景流和目标光流进行图像重建,得到目标图像帧。
6.在一种可能的实现方式中,处理单元在基于参考图像帧、投影场景流和目标光流
进行图像重建,得到目标图像帧时,具体执行以下操作:根据投影场景流对参考图像帧进行图像扭曲处理,得到目标场景转换帧;根据目标光流对参考图像帧进行图像扭曲处理,得到目标光流转换帧;基于目标场景转换帧和目标光流转换帧进行图像重建,得到目标图像帧。
7.在一种可能的实现方式中,投影场景流描述的运动信息包括:参考图像帧中的各个像素点,在参考图像帧和目标图像帧之间的位移信息;处理单元在根据投影场景流对参考图像帧进行图像扭曲处理,得到目标场景转换帧时,具体执行以下操作:根据各个像素点在参考图像帧中的参考像素坐标,确定各个像素点在参考图像帧中所处的参考像素位置;根据投影场景流所描述的运动信息中的各个像素点的位移信息,将各个像素点从相应的参考像素位置移动至对应的目标像素位置;任一像素点对应的目标像素位置是指:任一像素点在目标图像帧中需处于的像素位置;根据各个像素点的像素值,确定各个目标像素位置的像素值;并采用各个目标像素位置的像素值,生成目标场景转换帧。
8.在一种可能的实现方式中,参考图像帧的图像信息包括:参考图像帧对应的参考深度图;处理单元在根据各个像素点的像素值,确定各个目标像素位置的像素值时,具体执行以下操作:针对任一目标像素位置,若任一目标像素位置处存在一个像素点,则将任一目标像素位置处的像素点的像素值,确定为任一目标像素位置的像素值;若任一目标像素位置处存在至少两个像素点,则采用任一目标像素位置处的每个像素点的权重,对任一目标像素位置处的每个像素点的像素值进行加权处理,得到任一目标像素位置的像素值。
9.在一种可能的实现方式中,若任一目标像素位置处存在至少两个像素点,则处理单元还执行以下操作:根据参考图像帧对应的参考深度图,确定任一目标像素位置处的每个像素点的深度值;按照深度值和权重成负相关的原则,根据任一目标像素位置处的每个像素点的深度值,确定任一目标像素位置处的每个像素点的权重。
10.在一种可能的实现方式中,处理单元在基于目标场景转换帧和目标光流转换帧进行图像重建,得到所述目标图像帧时,具体执行以下操作:计算目标场景转换帧和目标光流转换帧之间的一致性,得到目标一致性结果;根据目标一致性结果对参考图像帧中的各个像素点进行场景分割处理,得到目标分割掩膜,目标分割掩膜用于指示各个像素点为静态点的概率;基于目标场景转换帧、目标光流转换帧以及目标分割掩膜进行图像重建,得到目标图像帧。
11.在一种可能的实现方式中,参考图像帧是渲染完成的n个图像帧中的一个图像帧,n个图像帧中的每个图像帧均对应一个一致性结果,n为大于1的整数;
处理单元在根据目标一致性结果对参考图像帧中的各个像素点进行场景分割处理,得到目标分割掩膜时,具体执行以下操作:获取n个图像帧中除参考图像帧以外的n
‑
1个图像帧,所对应的n
‑
1个一致性结果;根据n
‑
1个一致性结果和目标一致性结果,对n个图像帧中的全部像素点进行场景分割处理,得到目标分割掩膜;全部像素点至少包括:参考图像帧中的各个像素点。
12.在一种可能的实现方式中,处理单元在根据n
‑
1个一致性结果和目标一致性结果,对n个图像帧中的全部像素点进行场景分割处理,得到目标分割掩膜时,具体执行以下操作:对n
‑
1个一致性结果和目标一致性结果进行堆叠处理,得到堆叠结果;调用场景分割神经网络根据堆叠结果,对n个图像帧中的全部像素点进行场景分割处理,得到目标分割掩膜。
13.在一种可能的实现方式中,处理单元在根据n
‑
1个一致性结果和目标一致性结果,对n个图像帧中的全部像素点进行场景分割处理,得到目标分割掩膜时,具体执行以下操作:根据n
‑
1个一致性结果中的各个一致性结果,分别对相应的图像帧中的像素点进行场景分割处理,得到n
‑
1个分割掩膜;根据目标一致性结果,对参考图像帧中的像素点进行场景分割处理,得到参考图像帧对应的分割掩膜;对n
‑
1个分割掩膜和参考图像帧对应的分割掩膜进行融合处理,得到目标分割掩膜。
14.在一种可能的实现方式中,参考图像帧是渲染完成的n个图像帧中的一个图像帧,n个图像帧中的每个图像帧均对应一个场景转换帧和光流转换帧,n为大于1的整数;处理单元在基于目标场景转换帧、目标光流转换帧以及目标分割掩膜进行图像重建,得到目标图像帧时,具体执行以下操作:采用目标场景转换帧,以及n个图像帧中除参考图像帧以外的各个图像帧所对应的场景转换帧,构建一个场景转换帧组;采用目标光流转换帧,以及n个图像帧中除参考图像帧以外的各个图像帧所对应的光流转换帧,构建一个光流转换帧组;基于场景转换帧组、光流转换帧组以及目标分割掩膜进行图像重建,得到目标图像帧。
15.在一种可能的实现方式中,参考图像帧的图像信息包括:参考图像帧对应的参考深度图和参考相机参数;针对目标图像帧给定的图像信息包括:目标深度图和目标相机参数;处理单元在根据参考图像帧的图像信息以及针对目标图像帧给定的图像信息,预测出投影场景流具体时,具体执行以下操作:确定参考图像帧中的各个像素点,在参考图像帧中的参考像素坐标;根据参考深度图和参考相机参数,以及各个像素点的参考像素坐标,恢复出各个像素点对应的场景点在三维世界坐标系中的三维世界坐标;基于三维世界坐标系中的场景点处于静止状态的假设,根据各个像素点对应的场
景点的三维世界坐标,目标深度图和目标相机参数,预测各个像素点在目标图像帧中的目标像素坐标;基于各个像素点的参考像素坐标和对应的目标像素坐标之间的差异,预测出投影场景流。
16.在一种可能的实现方式中,参考图像帧是n个图像帧中的一个图像帧,n个图像帧属于渲染完成的图像帧序列,n为大于1的整数;参考信息包括:参考图像帧和关联图像帧之间的光流;其中,关联图像帧是指:图像帧序列中位于参考图像帧之后的一个图像帧;处理单元在根据用于进行光流估计的参考信息,估计出目标光流时,具体执行以下操作:根据参考图像帧和关联图像帧之间的光流,以及参考图像帧和关联图像帧之间的时间间隔,计算单位时间内的光流;根据参考图像帧和目标图像帧之间的时间间隔,以及单位时间内的光流,估计出目标光流。
17.在一种可能的实现方式中,参考图像帧和目标图像帧是在目标应用中显示的图像帧,参考信息包括:目标应用的处理引擎提供的候选光流;处理单元在根据用于进行光流估计的参考信息,估计出目标光流时,具体执行以下操作:将处理引擎提供的候选光流,确定为目标光流。
18.一方面,本技术实施例提供一种计算机设备,该计算机设备包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述的图像处理方法。
19.一方面,本技术实施例提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被计算机设备的处理器读取并执行时,使得计算机设备执行上述的图像处理方法。
20.一方面,本技术实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述的图像处理方法。
21.本技术实施例在需预测生成目标图像帧之后,可以获取渲染完成的图像帧作为目标图像帧的参考图像帧,参考图像帧和目标图像帧均可通过相机呈现。其次,可根据参考图像帧的图像信息以及针对目标图像帧给定的图像信息,预测出投影场景流;以及,根据用于进行光流估计的参考信息估计出目标光流。然后,可基于参考图像帧、投影场景流和目标光流进行图像重建;这样可使得图像重建时所参考的运动信息较为丰富,从而提升重建得到的目标图像帧的准确性。并且,由于投影场景流描述的是:在相机发生运动的情况下,参考图像帧和目标图像帧之间需满足的运动信息;而目标光流描述的是:在可运动的对象(如相机、参考图像帧中的物体对象等)发生运动的情况下,参考图像所对应的运动信息。因此,通过综合考虑投影场景流所描述的运动信息和目标光流所描述的运动信息进行图像重建,可在一定程度上消除由相机运动引起的光流与三维场景流之间的歧义,从而进一步提升目标图像帧的准确性。
附图说明
22.为了更清楚地说明本技术实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
23.图1a是本技术实施例提供的一种图像处理系统的结构示意图;图1b是本技术实施例提供的一种显示目标图像帧的场景示意图;图2是本技术实施例提供的一种图像处理方法的流程示意图;图3a是本技术实施例提供的一种像素点和场景点之间的对应关系示意图;图3b是本技术实施例提供的生成目标图像帧的流程示意图;图4是本技术实施例提供的一种对参考图像帧进行图像扭曲处理的示意图;图5是本技术实施例提供的一种图像处理模型的结构示意图;图6是本技术实施例提供的一种训练图像处理模型的流程示意图;图7是本技术实施例提供的一种图像处理装置的结构示意图;图8是本技术实施例提供的一种计算机设备的结构示意图。
具体实施方式
24.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
25.随着人工智能(artificial intelligence,ai)技术的研究和进步,计算机视觉技术(computer vision,cv)作为人工智能技术中的一个重要研究方向,也随之得到了相应的发展进步。所谓的人工智能是指是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。计算机视觉技术则是一门研究如何使机器“看”的科学;更进一步的说,计算机视觉就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。计算机视觉技术通常可包括图像处理技术,该图像处理技术具体可包括多种插帧技术,如帧外插技术。所谓的帧外插技术,在本质上可理解成是一种帧预测方法;该方法假定过去帧中存在的模式也持续存在在未来帧中,并且这些模式是有规律的,可以被捕获和测量。换言之,帧外插技术可以利用过去已有的图像帧的模式来预测未来的图像帧;即通过帧外插技术可实现利用历史渲染完成的图像帧,预测生成新的图像帧。
26.基于上述所提及的计算机视觉技术中的帧外插技术,本技术实施例提出了一种图像处理方案,以实现基于已知的图像帧预测生成新的图像帧。具体的,该图像处理方案的大致原理如下:在需要预测生成一个虚拟的目标图像帧时,可以获取历史时间段内已经渲染完成的图像帧作为参考图像帧,任一图像帧可通过相机进行呈现。其次,还可以获取参考图像帧的图像信息(如参考图像帧的深度图以及相机参数等信息),以及获取基于用户需求或者场景需求针对目标图像帧给定的图像信息(如目标图像帧的深度图以及相机参数等信息)。然后,可根据参考图像帧的图像信息以及目标图像帧的图像信息,预测出投影场景流以描述在相机发生运动的情况下,参考图像帧和目标图像帧中之间需满足的运动信息;以及,可估计出目标光流以描述在可运动的对象发生运动的情况下(例如相机发生运动、物体
本身发生运动、或者相机和物体均在运动等情况),参考图像帧和目标图像帧之间需满足的运动信息。最后,可综合考虑投影场景流所描述的运动信息以及目标光流所描述的运动信息,并结合参考图像帧来进行图像重建,以预测生成目标图像帧(即新的图像帧)。
27.在一种具体实现中,该图像处理方案可由一个计算机设备执行;该计算机设备可以是终端设备或服务器,对此不作限定。此处所提及的终端设备可以包括但不限于:手机、平板电脑、笔记本电脑、掌上电脑、移动互联网设备(mid,mobile internet device)、智能语音交互设备、车载终端、路边设备、飞行器、可穿戴设备、智能家电、或者例如智能手表、智能手环、计步器等具有图像处理功能的可穿戴设备,等等。服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn(content delivery network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器,等等。
28.进一步的,该计算机设备可以位于区块链网络内,也可以位于区块链网络外,对此不作限定;所谓的区块链网络是一种由点对点网络(p2p网络)和区块链所构成的网络,而区块链则是指一种分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式,其本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块(或称为区块)。当计算机设备位于区块链网络内,或者与区块链网络存在通信连接时,计算机设备可将内部数据(如渲染完成的参考图像帧,预测生成的目标图像帧等)上传至区块链网络的区块链中进行存储,以防止计算机设备的内部数据被篡改,从而提升内部数据的安全性。
29.另一种具体实现中,本技术实施例提供的图像处理方案可以由终端设备和服务器共同执行;其中,终端设备和服务器之间可以通过有线或无线通信方式进行直接或间接地连接。在此情况下,终端设备和服务器可以构成一个图像处理系统,如图1a所示。在执行该图像处理方案时,终端设备可以负责获取参考图像帧、参考图像帧的图像信息以及目标图像帧的图像信息等数据,并负责将获取到的这些数据发送至服务器。相应的,服务器则可负责在接收到这些数据之后,基于这些数据执行投影场景流和目标光流的预测操作,从而基于参考图像帧、投影场景流和目标光流,进行图像重建以得到目标图像帧。可选的,服务器在得到目标图像帧后,还可将目标图像帧下发给终端设备;使得终端设备在接收到该目标图像帧后,可通过相机(一种用于将内容显示给用户的组件)显示该目标图像帧,如图1b所示。
30.应理解的是,上述只是示例性地说明了终端设备和服务器所负责执行的各个步骤,并不对此进行限定。例如,在其他实施例中,也可以是由终端设备来执行投影场景流和目标光流的预测操作;此情况下,终端设备可以不向服务器发送参考图像帧的图像信息和目标图像帧的图像信息,而是向服务器发送参考图像帧、投影场景流和目标光流,使得服务器基于这三个数据执行图像重建的操作。又如,在其他实施例中,终端设备向服务器发送参考图像帧、参考图像帧的图像信息以及目标图像帧的图像信息后,服务器可负责基于这三个数据执行投影场景流和目标光流的预测操作,然后将投影场景流和目标光流发送给终端设备,由终端设备基于参考图像帧、投影场景流和目标光流,进行图像重建以得到目标图像帧,等等。
31.经实践表明,本技术实施例所提出的图像处理方案可具有如下有益效果:
①
基于参考图像帧、投影场景流和目标光流进行图像重建,可使得图像重建时所参考的运动信息较为丰富,从而提升重建得到的目标图像帧的准确性。
32.②
由于投影场景流描述的是:在相机发生运动的情况下,参考图像帧和目标图像帧之间需满足的运动信息;而目标光流描述的是:在可运动的对象(如相机、参考图像帧中的物体对象等)发生运动的情况下,参考图像所对应的运动信息。因此,通过综合考虑投影场景流所描述的运动信息和目标光流所描述的运动信息进行图像重建,可在一定程度上消除由相机运动引起的光流与三维场景流之间的歧义,从而进一步提升目标图像帧的准确性。
33.③
在实际应用中,通过利用渲染完成的图像帧进行图像重建,可使得在重建得到目标图像帧后,直接通过相机显示该目标图像,无须进一步通过渲染引擎进行图像帧渲染;这样可有效提升图像显示效率、降低相机的消耗成本以节省处理资源。
34.需要说明的是,本技术实施例所提出的图像处理方案可适用于多种应用场景,如云游戏场景、视频播放场景,等等。其中,云游戏(cloud gaming)又可称为游戏点播(gaming on demand),是一种以云计算技术为基础的在线游戏技术。云游戏技术使图形处理与数据运算能力相对有限的轻端设备(thin client)能运行高品质游戏。在云游戏场景下,游戏并不在玩家游戏终端,而是在云端的游戏服务器中运行,并由云端的游戏服务器将游戏场景渲染为视频音频流,通过网络传输给玩家游戏终端。玩家游戏终端无需拥有强大的图形运算与数据处理能力,仅需拥有基本的流媒体播放能力与获取玩家输入指令并发送给云端的游戏服务器的能力即可。
35.当将该图像处理方案运用到云游戏场景中时,可由云端的游戏服务器执行该图像处理方案;具体的,在云游戏的运行过程中,云端的游戏服务器可获取渲染完成的游戏画面作为参考图像帧;然后采用本技术实施例提出的图像处理方案,基于参考图像帧预测生成新的游戏画面作为目标图像帧。相较于需要对云游戏场景中的每一图像帧(即每个游戏画面)都进行完整的3d(3 dimensions,三维)渲染,本技术实施例可实现在对一部分游戏画面进行3d渲染后,通过采用本技术实施例提出的图像处理方案基于已渲染完成的游戏画面,预测生成新的游戏画面以进行显示,这样可减少3d渲染所涉及的帧数,实现以较低的帧率对云游戏的游戏画面进行3d渲染,从而降低云计算成本。
36.基于上述图像处理方案的相关描述,本技术实施例提出了一种图像处理方法;该图像处理方法可由上述所提及的计算机设备执行,也可由上述所提及的终端设备和服务器共同执行。为便于阐述,后续均以计算机设备执行该图像处理方法为例进行说明;参见图2所示,该图像处理方法可包括步骤s201
‑
s204:s201:响应于生成目标图像帧的触发事件,获取渲染完成的图像帧作为目标图像帧的参考图像帧。
37.其中,触发事件是指:触发生成目标图像帧的事件。例如,该触发事件可以是:检测到用户输入的针对渲染完成的图像帧序列的帧率提升操作的事件;此处所提及的图像帧序列可以是由目标游戏所涉及的多帧游戏画面所构成的帧序列,也可以是指任一视频(如影视剧视频、短视频等)所对应的帧序列,对此不作限定。又如,该触发事件可以是:检测到渲染完成的图像帧序列的帧率不满足显示帧率需求的事件;如渲染完成的图像帧序列的帧率
为30帧/秒,而显示帧率需求指示每秒需显示40帧图像帧,此时可确定图像帧序列的帧率不满足显示帧率需求,那么需对图像帧序列进行帧外插以提升图像帧序列的帧数,从而提升图像帧的帧率,使得提升后的帧率满足显示帧率需求。再如,该触发事件可以是:在渲染完成某图像帧后,接收到针对该渲染完成的图像帧进行帧外插处理的图像处理指令的事件,等等。需要说明的是,本技术实施例只是示例性地列举了三种触发事件,并非穷举。
38.在具体实现中,计算机设备在检测到生成目标图像帧的触发事件后,可获取在历史时间段内已经渲染完成的图像帧作为目标图像帧的参考图像帧。其中,所谓的历史时间段可以是指在确定需要生成目标图像帧之前的时间段。应理解的是,若在历史时间段内已渲染完成一个图像帧序列,则计算机设备获取到的参考图像帧可以是该图像帧序列中的其中一帧图像帧;若在历史时间段内只渲染完成一帧图像帧,则计算机设备获取到的参考图像帧为渲染完成的这一帧图像帧。为便于阐述,后续均以参考图像帧为图像帧序列中的一个图像帧为例进行说明。
39.需要说明的是,参考图像帧和目标图像帧均可通过相机进行呈现,该相机可以例如是针孔相机;且参考图像帧具体可以表示为:高度为h、宽度为w和通道数为l的图像。其中,当l=1时,表示参考图像帧为灰度图像;当l=3时,表示参考图像帧为任意色彩空间中的彩色图像,例如该参考图像帧可以是rgb图像(r表示红色(red)、g表示绿色(green)、b表示蓝色(blue)),也可以是yuv图像(y表示亮度信号、u表示色差信号、v表示色差信号),还可以是hsv图像(h表示色相(hue)、s表示饱和度(saturation)、v表示明度(value))图像,等等。
40.s202:根据参考图像帧的图像信息以及针对目标图像帧给定的图像信息,预测出投影场景流。
41.在具体实现过程中,计算机设备可先获取参考图像帧的图像信息以及针对目标图像帧给定的图像信息,然后再执行步骤s202。其中,参考图像帧的图像信息可以包括:参考图像帧对应的参考深度图和参考相机参数。其中,参考深度图可以包括参考图像帧中的各个像素点的深度值;参考相机参数是指在呈现参考图像帧时,所使用的相机参数。目标图像帧的图像信息可以是用户根据场景需求或者用户需求设置的,该目标图像帧的图像信息可以包括:目标深度图和目标相机参数。同样的,目标深度图可以包括需要生成的目标图像帧中的各个像素点的深度值;目标相机参数是指在呈现目标图像帧时,所需使用的相机参数。
42.需要说明的是,本技术实施例所提及的任一相机参数(如参考相机参数、目标相机参数等)可包括但不限于:内部矩阵(由光学中心、焦距等组成),以及包括旋转参数和翻转参数在内的6个相机位姿自由度(degree
‑
of
‑
freedom,dof)。其中,光学中心可具体包括:相机沿宽度轴的光学中心,以及相机沿高度轴的光学中心;同理,焦距可具体包括:相机沿宽度轴的焦距和相机沿高度轴的焦距。
43.基于上述描述,计算机设备在执行步骤s202的过程中,可具体执行如下步骤s11
‑
s14:s11,确定参考图像帧中的各个像素点,在参考图像帧中的参考像素坐标。其中,一个像素点均对应一个场景点;所谓的场景点是指:位于三维空间中,且与二维平面上的像素点存在对应关系的点。例如,参见图3a所示:在三维空间中存在一个点a,若将其投影到二维平面上得到了像素点a,则可认为点a和像素点a具有对应关系,且点a为像素点a对应的场景点。为便于后续描述,本技术实施例将三维空间中处于静止状态的场景点称为静态场景点,
并将静态场景点对应的像素点称为静态点;将三维空间中处于运动状态的场景点称为动态场景点,并将动态场景点对应的像素点称为动态点。
44.s12,根据参考深度图和参考相机参数,以及各个像素点的参考像素坐标,恢复出各个像素点对应的场景点在三维世界坐标系中的三维世界坐标。
45.具体的,计算机设备可先根据参考深度图和参考相机参数,以及各个像素点的参考像素坐标,恢复出各个像素点对应的场景点在相机坐标系中的参考相机坐标;然后,再基于相机坐标系和三维世界坐标系之间的对应关系,根据各个像素点对应的场景点的参考相机坐标,恢复出各个像素点对应的场景点在三维世界坐标系中的三维世界坐标。其中,所谓的相机坐标系是指:以相机的光学中心为原点,以光轴为z轴建立的三维直角坐标系;而世界坐标系又可称为基准坐标系,是为了描述相机的位置而被引入的一个直角坐标系。
46.以针孔相机为例,采用表示参考深度图,采用表示参考图像帧中的任一像素点的参考像素坐标。采用表示参考相机参数中的旋转参数,采用表示参考相机参数中的翻转参数。采用表示参考相机参数中的光学中心,其具体可包括:相机沿宽度轴的光学中心和相机沿高度轴的光学中心。采用表示参考相机参数中的焦距,其具体可包括:相机沿宽度轴的焦距和相机沿高度轴的焦距。那么,任一像素点对应的场景点在相机坐标系中的参考相机坐标(采用表示)可通过下述公式1.1计算得到;任一像素点对应的场景点在三维世界坐标系中的三维世界坐标(采用表示)可通过下述公式1.2计算得到:1.11.2s13,基于三维世界坐标系中的场景点处于静止状态的假设,根据各个像素点对应的场景点的三维世界坐标,目标深度图和目标相机参数,预测各个像素点在目标图像帧中的目标像素坐标。
47.其中,基于三维世界坐标系中的场景点处于静止状态的假设的含义是指:假设各个像素点对应的场景点均为静态场景点;也就是说,在此假设下,任一像素点对应的场景点的三维世界坐标保持不变。那么在具体实施过程中,可先基于此假设,基于相机坐标系和三维世界坐标系之间的对应关系,根据各个像素点对应的场景点的三维世界坐标,预测出各个像素点对应的场景点在相机坐标系中的目标相机坐标;然后,根据各个像素点对应的场景点的目标相机坐标、目标深度图和目标相机参数,计算出各个像素点在目标图像帧中的目标像素坐标。
48.仍以针孔相机为例,采用表示目标参考深度图;目标相机参数中的旋转参数采用表示,目标相机参数中的翻转参数采用表示;目标相机参数中的光学中心采用
表示,其具体可包括:相机沿宽度轴的光学中心和相机沿高度轴的光学中心;目标相机参数中的焦距采用表示,其具体可包括:相机沿宽度轴的焦距和相机沿高度轴的焦距。那么,任一像素点对应的场景点在相机坐标系中的目标相机坐标(采用表示)可通过下述公式1.3计算得到;任一像素点在目标图像帧中的目标像素坐标(采用表示)可通过下述公式1.4计算得到:1.3 1.4s14,基于各个像素点的参考像素坐标和对应的目标像素坐标之间的差异,预测出投影场景流。
49.在具体实施过程中,计算机设备可根据各个像素点的参考像素坐标和对应的目标像素坐标,计算各个像素点在参考图像帧和目标图像帧之间的位移信息;任一像素点对应的位移信息用于表示该任一像素点的参考像素坐标和对应的目标像素坐标之间的差异。然后,计算机设备可基于计算得到的各个像素点对应的位移信息,构建投影场景流;具体的,该投影场景流(projected scene flow,psf)可如下述公式1.5所示:1.5其中,表示投影场景流,表示任一像素点的参考像素坐标 和对应的目标像素坐标之间的位移信息。由于任一像素点在不同图像帧之间的位移信息,通常是由以下至少一种运动引起的:一种是相机的运动,另一种则是图像帧中的物体对象的运动;而由前述可知,任一像素点的目标像素坐标是在假设任一像素点对应的场景点处于静止状态的情况下计算得到的,各个像素点对应的场景点处于静止状态可表示参考图像帧中的物体对象处于静止状态。因此,基于各个像素点的参考像素坐标和对应的目标像素坐标,所计算出的投影场景流可用于描述:在相机发生运动的情况下,参考图像帧和目标图像帧中之间需满足的运动信息;投影场景流所描述的运动信息可包括:参考图像帧中的各个像素点,在参考图像帧和目标图像帧之间的位移信息。
50.s203:根据用于进行光流估计的参考信息,估计出目标光流。
51.其中,目标光流用于描述:在可运动的对象发生运动的情况下,参考图像帧和目标图像帧之间需满足的运动信息。本技术实施例中,可运动的对象可以:相机和参考图像帧中的物体对象中的一种或多种;此处的物体对象是指参考图像帧中可运动的任一对象,例如,参考图像帧为云游戏场景中中的游戏画面,那么,物体对象可以是指游戏角色或游戏道具等。其中,光流刻画了空间物体的运动在2d视觉平面上引发的改变,此改变是基于像素粒度的,因此采用光流法对图像帧进行运动估计可以从像素水平上来刻画物体的运动信息。若给定两个视频帧,2d光流可以通过计算每个像素的运动矢量,获得从一帧到另一帧的运动信息。需要说明的是,当相机和参考图像帧中的物体对象均在运动时,目标光流描述的是:
在融合了相机运动以及物体对象运动的情况下,目标图像帧和参考图帧需满足的运动信息;当只有相机运动时(即场景点为静态场景点时),目标光流描述的是:在相机运动的情况下,目标图像帧和参考图像帧需满足的运动信息,即在场景点为静态场景点时,目标光流和前述提及的投影场景流应当相同。
52.在一种可能的实现方式中,参考图像帧是n个图像帧中的一个图像帧,n个图像帧属于渲染完成的图像帧序列;具体的,n个图像帧可以是渲染完成的图像帧序列中除最后一个图像帧以外的部分或全部图像帧,n为大于1的整数。参考信息包括:参考图像帧和关联图像帧之间的光流;其中,关联图像帧是指:图像帧序列中位于参考图像帧之后的一个图像帧。例如,图像帧序列中包括10个图像帧,则n个图像帧可以是图像帧序列中的前9个图像帧,而参考图像帧可以为前9个图像帧中的任一图像帧;如参考图像帧为图像帧序列中的第1个图像帧,关联图像帧可以为图像帧序列中的第2
‑
第10个图像帧中的任一图像帧。其中,关联图像帧与参考图像帧可以为相邻图像帧,也可以为不相邻图像帧,本技术实施例对此不做具体限定。
53.具体实现时,在一种可能的实现方式中,计算机设备根据用于进行光流估计的参考信息,估计出目标光流,可以包括:首先,根据参考图像帧和关联图像帧之间的光流,以及参考图像帧和关联图像帧之间的时间间隔,计算单位时间内的光流。然后,根据参考图像帧和目标图像帧之间的时间间隔,以及单位时间内的光流,估计出目标光流。
54.举例来说,可以利用光流神经网络(optical flow neural network,of nn)计算参考图像帧和关联图像帧这两个图像帧之间的光流。其中,光流神经网络通常是由卷积层、残差块等组成的神经网络。例如,光流神经网络可以包括但不限于:rnn(recurrent neural network,循环神经网络)模型,lstm(lstm,long short
‑
term memory,长短期记忆网络),gru(gated recurrent neural network,门控循环神经网络)模型等,本技术实施例不对使用的光流神经网络的框架做任何限制。
55.进一步地,在确定了参考图像帧和关联图像帧这两个图像帧之间的光流之后,本技术实施例可以基于运动预测模型,如线性运动模型、二次运动模型或像卡尔曼滤波器这样的在线自适应运动轨迹预测模型,并根据参考图像帧,关联图像帧和目标图像帧的时间戳估计到的光流(目标光流)。例如,若使用线性运动模型,则和间的时间间隔为,则目标光流可以如公式1.6所示:1.6需要说明的是,在实际处理过程中,常常会计算一组光流,其中,是指由参考图像帧生成目标图像帧时对应的光流。
56.在另一种可能的实现方式中,参考图像帧和目标图像帧是在目标应用中显示的图像帧,参考信息包括:目标应用的处理引擎提供的候选光流。那么,计算机设备根据用于进行光流估计的参考信息,估计出目标光流,可以包括:计算机设备将处理引擎提供的候选光流,确定为目标光流。例如,目标应用为游戏应用,则处理引擎可以为游戏引擎,游戏引擎可
以根据参考图像帧中的特殊对象(例如游戏角色等对象)或特定区域(如图像帧的中央区域),提供对应的候选光流,本技术实施例中可以直接将候选光流确定为目标光流。
57.s204:基于参考图像帧、投影场景流和目标光流进行图像重建,得到目标图像帧。
58.在步骤s204的一种实现方式中,计算机设备可先基于投影场景流所描述的在相机运动情况下,参考图像帧和目标图像帧之间需满足的运动信息,以及目标光流所描述的在可运动的对象发生运动的情况下,参考图像帧和目标图像帧之间需满足的运动信息,对运动信息融合处理,得到融合运动信息。接下来,基于融合运动信息对参考图像帧进行图像扭曲处理,从而得到目标图像帧。
59.具体实现时,投影场景流描述的运动信息可以包括:参考图像帧中的各个像素点,在参考图像帧和目标图像帧之间的位移信息。目标光流描述的运动信息可以包括:参考图像帧中的各个像素点,在参考图像帧和目标图像帧之间的位移信息。接下来,计算机设备对投影场景流所描述的位移信息和目标光流所描述的位移信息进行融合处理,得到参考图像帧中的各个像素点所对应的融合位移信息。其中,融合位移信息包括:参考图像帧中的各个像素点,在参考图像帧和目标图像帧之间的位移信息。最后,根据融合位移信息,对参考图像帧进行图像扭曲处理,从而得到目标图像帧。例如,假设投影场景流所描述的位移信息包括像素点a的位移信息(1,2),目标光流所描述的位移信息包括像素点a的位移信息(3,4)。那么,针对对投影场景流所描述的关于像素点a的位移信息(1,2)和光流所描述的关于像素点a的位移信息(3,4)进行融合处理后,所得到的融合位移信息可以为(2,3)。
60.本技术实施例在需预测生成目标图像帧之后,可以获取渲染完成的图像帧作为目标图像帧的参考图像帧,参考图像帧和目标图像帧均可通过相机呈现。其次,可根据参考图像帧的图像信息以及针对目标图像帧给定的图像信息,预测出投影场景流;以及,根据用于进行光流估计的参考信息估计出目标光流。然后,可基于参考图像帧、投影场景流和目标光流进行图像重建;这样可使得图像重建时所参考的运动信息较为丰富,从而提升重建得到的目标图像帧的准确性。并且,由于投影场景流描述的是:在相机发生运动的情况下,参考图像帧和目标图像帧之间需满足的运动信息;而目标光流描述的是:在可运动的对象(如相机、参考图像帧中的物体对象等)发生运动的情况下,参考图像所对应的运动信息。因此,通过综合考虑投影场景流所描述的运动信息和目标光流所描述的运动信息进行图像重建,可在一定程度上消除由相机运动引起的光流与三维场景流之间的歧义,从而进一步提升目标图像帧的准确性。
61.需要说明的是,上述实施例只是示例性地列出了步骤s204的一种实施方式;为了提升目标图像帧的准确性,本技术实施例针对步骤s204,还提出了另一种实施方式。下面结合图3b所示的流程图,对上述步骤s204的第二种实现方式进行具体阐述;参见图3b所示,该步骤s204可具体包括以下步骤s21
‑
s23:s21:根据投影场景流对参考图像帧进行图像扭曲处理,得到目标场景转换帧。
62.在一种可能的实现方式中,投影场景流描述的运动信息包括:参考图像帧中的各个像素点,在参考图像帧和目标图像帧之间的位移信息。具体实现时,根据投影场景流对参考图像帧进行图像扭曲处理,得到目标场景转换帧的流程,可以包括:首先,根据各个像素点在参考图像帧中的参考像素坐标,确定各个像素点在参考图像帧中所处的参考像素位置。然后,根据投影场景流所描述的运动信息中的各个像素点的位移信息,将各个像素点从
相应的参考像素位置移动至对应的目标像素位置;任一像素点对应的目标像素位置是指:任一像素点在目标图像帧中需处于的像素位置。最后,根据各个像素点的像素值,确定各个目标像素位置的像素值;并采用各个目标像素位置的像素值,生成目标场景转换帧。
63.举例来说,如图4所示,图4是本技术实施例提供的一种对参考图像帧进行图像扭曲处理的示意图。可以基于像素点x1、像素点x2、以及像素点x3在参考图像帧中的参考像素坐标,确定像素点x1、像素点x2、以及像素点x3在参考图像帧中所处的参考像素位置。如图3a所示,投影场景流所描述的运动信息中的各个像素点的位移信息可以用于指示:像素点x1、像素点x2、以及像素点x3均从相应的参考像素位置移动至目标图像帧中的目标像素位置y1处。
64.在一种可能的实现方式中,上述提及的根据各个像素点的像素值,确定各个目标像素位置的像素值的流程,可以包括:针对任一目标像素位置,若任一目标像素位置处存在一个像素点,则将任一目标像素位置处的像素点的像素值,确定为任一目标像素位置的像素值。若任一目标像素位置处存在至少两个像素点,则采用任一目标像素位置处的每个像素点的权重,对任一目标像素位置处的每个像素点的像素值进行加权处理,得到任一目标像素位置的像素值。
65.举例来说,如图3a所示,目标图像帧中的目标像素位置y2处存在一个像素点x4,那么将像素点x4的像素值作为y2处的像素值。又如,目标图像帧中的目标像素位置y1处存在三个像素点x1、x2和x3,那么可以根据像素点x1的像素值、x2的像素值和x3的像素值,确定目标像素位置y1的像素值。
66.在一种可能的实现方式中,若任一目标像素位置处存在至少两个像素点,则可以根据参考图像帧对应的参考深度图,确定任一目标像素位置处的每个像素点的深度值。然后,按照深度值和权重成负相关的原则,根据任一目标像素位置处的每个像素点的深度值,确定任一目标像素位置处的每个像素点的权重。
67.具体来说,在实例中,参考图像帧对应的参考深度图也会被用于计算目标场景转换帧。如图4所示,由于在进行3d到2d的投影时可能出现多个3d场景点被投影到同一个2d像素位置而产生歧义的问题,在这种情况下,场景点对像素点的影响应该根据它们的深度值进行加权。由此,在目标场景转换帧中一个像素位置处的像素值是参考图像帧中扭曲到该像素位置处的所有像素点的像素值的加权结合,其中,权重与其像素点的深度值成反比。
68.在另一种可能的实现方式中,上述提及的任一目标像素位置处的每个像素点的权重,除了可以根据参考图像帧对应的参考深度图确定外,还可以根据其他信息确定。例如还可以根据参考图像帧中的各个像素点的位置信息进行确定,即位置越偏的像素点所对应的权重越低,如像素点a处于参考图像帧中的中心位置处,像素点b处于参考图像帧中的边缘位置处,则像素点a所对应的权重可以高于像素点b所对应的权重。又如,可以根据像素点所描述的图像内容的重要性进行确定,即越重要的像素点其对应的权重越高,如参考图像帧是一张包含狗的图像帧,像素点c所描述的图像内容为狗的某个身体部位(例如狗头),像素点d所描述的图像内容为背景内容,则像素点c所对应的权重可以高于像素点b所对应的权重。
69.s22:根据目标光流对参考图像帧进行图像扭曲处理,得到目标光流转换帧。
70.在一种可能的实现方式中,目标光流描述的运动信息包括:参考图像帧中的各个像素点,在参考图像帧和目标图像帧之间的位移信息。需要说明的是,若参考图像帧中的各个像素点对应的场景点均为静态场景点,则目标光流和投影场景流应当相同。
71.具体实现时,根据目标光流对参考图像帧进行图像扭曲处理,得到目标光流转换帧的流程,可以包括:首先,根据各个像素点在参考图像帧中的参考像素坐标,确定各个像素点在参考图像帧中所处的参考像素位置。然后,根据目标光流中的各个像素点的位移信息,将各个像素点从相应的参考像素位置移动至对应的目标像素位置;任一像素点对应的目标像素位置是指:任一像素点在目标图像帧中需处于的像素位置。最后,根据各个像素点的像素值,确定各个目标像素位置的像素值;并采用各个目标像素位置的像素值,生成目标场景转换帧。
72.需要说明的是,本技术实施例中,根据目标光流对参考图像帧进行图像扭曲处理,得到目标光流转换帧的流程,详细可参见上述步骤所描述的,根据投影场景流对参考图像帧进行图像扭曲处理,得到目标场景转换帧的流程,本技术实施例在此不做具体限定。
73.s23:基于目标场景转换帧和目标光流转换帧进行图像重建,得到目标图像帧。
74.在一种可能的实现方式中,目标场景转换帧中包括k个场景像素点,目标光流转换帧中包括p个光流像素点,k和p均为正整数。那么,计算机设备基于目标场景转换帧和目标光流转换帧进行图像重建,得到目标图像帧,可以包括:针对目标场景转换帧包括的k个场景像素点和目标光流转换帧包括的p个光流像素点,可以按照k个场景像素点和p个光流像素点中相同像素坐标处的各个像素值进行融合的融合策略,对场景转换帧和光流转换帧进行图像融合处理,得到目标图像帧。在另一种可能的实现方式中,也可以根据目标场景转换帧和目标光流转换帧,选取特定区域(例如图像帧中左上角1/4处的区域和图像帧中右上角1/4处的区域)所对应的目标场景转换帧中的场景像素点的像素值,和该区域所对应的目标光流转换帧中的光流像素点的像素值进行融合,然后将融合后的像素值作为目标图像帧中对应区域的目标像素值。
75.在另一种可能的实现方式中,计算机设备基于目标场景转换帧和目标光流转换帧进行图像重建,得到目标图像帧,可以包括:首先,计算目标场景转换帧和目标光流转换帧之间的一致性,得到目标一致性结果。然后,根据目标一致性结果对参考图像帧中的各个像素点进行场景分割处理,得到目标分割掩膜,目标分割掩膜用于指示各个像素点为静态点的概率。最后,基于目标场景转换帧、目标光流转换帧以及目标分割掩膜进行图像重建,得到目标图像帧。
76.具体实现时,目标场景转换帧和目标光流转换帧之间的一致性可以用和之间的相似性(或差异)来衡量,而和间的相似性(或差异)可以由任何相似性(或距离)算法计算。例如,相似性(或距离)算法可以包括但不限于:cosine similarity(余弦相似度)方法、欧氏距离计算方法、以及皮尔逊相关系数(pearson correlation coefficient)计算方法等等,本技术实施例对此不做具体限定。
77.具体实现时,可以通过调用重建神经网络(reconstruction neural network,reconstruction nn)对目标场景转换帧、目标光流转换帧以及目标分割掩膜进行图像重建,得到目标图像帧。其中,重建神经网络通常是一个由多个卷积层、残差块等组成的神经
网络,这里可以使用任何图像/视频恢复/重建网络作为本技术实施例中的重建神经网络,例如重建神经网络可以为flvar(flow
‑
agnostic video representations for fast frame interpolation,用于快速帧内插的流感知视频表示网络)等,本技术实施例对重建神经网络的网络框架不做任何限制。
78.在另一种可能的实现方式中,参考图像帧是渲染完成的n个图像帧中的一个图像帧,n个图像帧中的每个图像帧均对应一个一致性结果,n为大于1的整数。那么,计算机设备根据目标一致性结果对参考图像帧中的各个像素点进行场景分割处理,得到目标分割掩膜,可以包括:首先,获取n个图像帧中除参考图像帧以外的n
‑
1个图像帧,所对应的n
‑
1个一致性结果。然后,根据n
‑
1个一致性结果和目标一致性结果,对n个图像帧中的全部像素点进行场景分割处理,得到目标分割掩膜。
79.需要说明的是,确定n个图像帧中除参考图像帧以外的n
‑
1个图像帧所对应的一致性结果的详细步骤,具体可以参考本技术实施例中针对参考图像帧所对应的目标一致性结果的详细步骤。意思是说,针对除参考图像帧以外的n
‑
1个图像帧中的任一图像帧而言,可以先预测得到对应的投影场景流,然后基于投影场景流对相应的图像帧进行图像扭曲处理,得到对应的场景转换帧;然后,估计得到对应的光流,并基于光流对相应的图像帧进行图像扭曲处理,得到对应的光流转换帧;最后,基于场景转换帧和光流转换帧,即可利用相似度算法计算对应的一致性结果。其中,每个步骤的详细执行过程,可以参考前述实施例中对参考图像帧所描述的详细流程,本技术实施例在此不再赘述。
80.其中,全部像素点至少包括:参考图像帧中的各个像素点。意思是说,n个图像帧的显示内容相同的情况下,每个图像帧包括的像素点可以是相同的,此时的全部像素点就只包括参考图像帧中的各个像素点。在n个图像帧中存在内容不完全相同的图像帧时,每个图像帧包括的像素点可能不同,此时的全部像素点除了包括参考图像帧中的各个像素点以外,还可包括其他像素点。例如,假设有三个图像帧,这三个图像帧的显示内容均相同,那么,这三个图像帧中每个图像帧均可以包括10个像素点,当然,这10个像素点在不同的图像帧中的像素坐标直接可以不相同,那么,此时全部像素点是指这10个像素点。又如,三个图像帧中有两个图像帧的显示内容相同,且都存在10个像素点,另一个图像帧所显示的内容与这两个图像帧不相同,该图像帧包括新的对象,因此该图像帧中可以包括15个像素点,并且这15个像素点中有5个像素点是和另外两张图像帧中包括的5个像素点相同。那么,此时全部像素点是指:这三张图像帧中的共同的5个像素点和除去共同像素点以外各自图像帧中所包括的像素点,总共20个像素点。
81.在一种可能的实现方式中,计算机设备根据n
‑
1个一致性结果和目标一致性结果,对n个图像帧中的全部像素点进行场景分割处理,得到目标分割掩膜,可以包括:首先,对n
‑
1个一致性结果和目标一致性结果进行堆叠处理,得到堆叠结果。其中,所谓堆叠处理是指将n
‑
1个一致性结果和目标一致性结果进行拼接组合。然后,调用场景分割神经网络(scene segmentation neural network,scene segmentation nn)根据堆叠结果,对n个图像帧中的全部像素点进行场景分割处理,得到目标分割掩膜。其中,场景分割神经网络可以是由多个卷积层、残差块等组成的神经网络。例如,光流神经网络可以包括但不限于:rnn网络、fcn网络(fully convolutional networks for semantic segmentation,用于语义分割的全卷积网络)等等都可以用作本技术实施例中的场景分割神经网络,本技术实施例并不对场
景分割神经网络的结构进行限定。
82.在另一种可能的实现方式中,计算机设备根据n
‑
1个一致性结果和目标一致性结果,对n个图像帧中的全部像素点进行场景分割处理,得到目标分割掩膜,还可以包括:首先,根据n
‑
1个一致性结果中的各个一致性结果,调用场景分割神经网络分别对相应的图像帧中的像素点进行场景分割处理,得到n
‑
1个分割掩膜。然后,根据目标一致性结果,对参考图像帧中的像素点进行场景分割处理,得到参考图像帧对应的分割掩膜。最后,对n
‑
1个分割掩膜和参考图像帧对应的分割掩膜进行融合处理,得到目标分割掩膜。
83.其中,对n
‑
1个分割掩膜和参考图像帧对应的分割掩膜进行融合处理的方式可以为:对n
‑
1个分割掩膜和参考图像帧对应的分割掩膜进行均值运算,得到均值分割掩模,然后将均值分割掩模作为目标分割掩模。另外,对n
‑
1个分割掩膜和参考图像帧对应的分割掩膜进行融合处理的方式也可以为:从n
‑
1个分割掩膜和参考图像帧对应的分割掩膜中随机选取任一分割掩模作为目标分割掩模。或者,从n
‑
1个分割掩膜和参考图像帧对应的分割掩膜中选择满足预设要求的掩模作为目标分割掩模。其中,预设要求可以包括指定n个图像帧中某一固定帧所对应的分割掩模作为目标分割掩模。例如,假设有10个图像帧,根据上述方法,可以确定除10个分割掩模,然后,可以指定第5个图像帧对应的分割掩模为目标分割掩模。
84.在另一种可能的实现方式中,参考图像帧是渲染完成的n个图像帧中的一个图像帧,n个图像帧中的每个图像帧均对应一个场景转换帧和光流转换帧,n为大于1的整数。那么,计算机设备基于目标场景转换帧、目标光流转换帧以及目标分割掩膜进行图像重建,得到目标图像帧,可以包括:首先,采用目标场景转换帧,以及n个图像帧中除参考图像帧以外的各个图像帧所对应的场景转换帧,构建一个场景转换帧组。然后,采用目标光流转换帧,以及n个图像帧中除参考图像帧以外的各个图像帧所对应的光流转换帧,构建一个光流转换帧组。最后,基于场景转换帧组、光流转换帧组以及目标分割掩膜进行图像重建,得到目标图像帧。
85.具体实现时,针对n个图像帧中除参考图像视频帧之外的n
‑
1个图像帧中的任一图像帧,均可以通过上述实施例所描述的方法,计算得到一个对应的场景转换帧以及光流转换帧。那么,采用计算得到的所有场景转换帧,所得到的场景转换帧组中可以包括n个场景转换帧。同理,采用计算得到的所有光流转换帧,所得到的光流转换帧组中也可以包括n个光流转换帧。最后,调用重建神经网络对n个场景转换帧、n个光流转换帧和目标分割掩模进行图像重建,得到目标图像帧。
86.需要说明的是,上述所提及的光流神经网络、场景分割神经网络以及重建神经网络可以分别构成一个单独的网络模型,也可以共同构成一个图像处理模型。接下来,为方便阐述,以光流神经网络、场景分割神经网络以及重建神经网络共同构成一个图像处理模型为例进行详细说明。请参见图5,图5是本技术实施例提供的一种图像处理模型的结构示意图。接下来,结合图5对本技术实施例所提供的图像处理方法进行进一步举例说明。其中,图5所示的图像处理模型可以包括场景变换(scene transform)模块、光流估计(optical flow estimation)模块、静态/动态场景分离(static/dynamic scene separation)模块、帧合成(frame synthesis)模块。其中,光流估计模块可以包括光流神经网络,静态/动态场景分离可以包括场景分割神经网络,帧合成模块可以包括重建神经网络。基于前述实施例
的相关描述,下面对各个模块的作用进行说明:
①
场景变换模块主要用于:根据完成渲染的参考图像帧以及参考图像帧的图像信息(包括参考相机参数和参考深度图),预测得到投影场景流。在实际应用中,假设可以获取到一个包括n个图像帧构成的图像帧序列,其中,参考图像帧可以表示为。以及图像帧序列对应的深度图(包括每个图像帧对应的深度图)和相机参数(包括每个图像帧对应的相机参数);那么,场景变换模块还可以根据n个图像帧中除参考图像帧以外的n
‑
1个图像帧、以及每个图像帧对应的深度图和相机参数,预测得到另外的n
‑
1个投影场景流,从而得到一组投影场景流。其中,该组投影场景流中包括:根据参考图像帧所确定的投影场景流以及根据n
‑
1个图像帧中各个图像帧所确定的n
‑
1个投影场景流,其中,一个图像帧对应一个投影场景流,因此一组投影场景流包括n个投影场景流。并且,根据n
‑
1个图像帧中每个图像帧所确定对应的投影场景流的执行过程,均可以参考根据参考图像帧确定对应的投影场景流的执行过程,本技术在此不再赘述。
87.②
光流估计模块主要用于:根据用于进行光流估计的参考信息(包括参考图像帧和关联图像帧之间的光流),估计出目标光流。其中,在光流估计模块估计目标光流的过程中,可以通过调用光流神经网络来执行,光流神经网络的具体执行过程参见前述内容,在此不再赘述。在实际应用中,针对给定的包括n个图像帧构成的图像帧序列,光流估计模块还可以根据n个图像帧中除参考图像帧以外的n
‑
1个图像帧、以及每个图像帧对应参考信息,预测得到另外的n
‑
1个光流,从而得到一组光流。其中,该组光流中包括:根据参考图像帧所确定的目标光流以及根据n
‑
1个图像帧中各个图像帧所确定的n
‑
1个光流,其中,一个图像帧对应一个光流,因此一组光流包括n个光流。并且,根据n
‑
1个图像帧中每个图像帧所确定对应的光流的执行过程,均可以参考根据参考图像帧确定对应的光流的执行过程,本技术在此不再赘述。
88.③
静态/动态场景分离模块主要用于:计算投影场景流和光流之间的一致性,得到目标一致性结果,并根据目标一致性结果对参考图像帧中的各个像素点进行场景分割处理,得到目标分割掩膜。静态/动态场景分离模块可以包括:计算根据参考图像帧预测得到的投影场景流与估计得到的目标光流之间的一致性,得到目标一致性结果。该目标一致性结果用于确认位于处的像素点为静态点还是动态点。在实际应用中,静态/动态场景分离模块也可以根据前述得到的一组投影场景流和一组光流,分别得到n个图像帧中除所述参考图像帧以外的n
‑
1个图像帧,所对应的n
‑
1个一致性结果,其中,n个图像帧中的每个图像帧均对应一个一致性结果。进一步地,静态/动态场景分离模块还用于:生成分割掩模mt,mt在每个处的值对应了一个概率值(或二进制值),表明在位置处的像素点有多大概率(或是否)为一个静态点。其中,在生成分割掩模的过程中,可以通过调用场景分割神经网络来执行,场景分割神经网络的具体执行过程参见前述内容,在此不再赘述。
89.④
帧合成模块主要用于:基于目标场景转换帧、目标光流转换帧以及目标分割掩膜进行图像重建,得到目标图像帧。在实际应用中,帧合成模块还用于根据一组投影场景流、一组光流、包括n个图像帧的图像帧序列和目标分割掩模mt,预测目标图像帧。具体来说,帧合成模块可基于投影场景流扭曲输入帧以计算场景转换帧。同样地,帧合成模块可基于光流扭曲输入帧以计算光流转换帧。随后,基于重建神经网络以、和mt作为输入,生成目标图像帧。
90.基于图5所示的图像处理模型的结构示意图,模型包括光流神经网络、场景分割神经网络和重建神经网络。那么,请参见图6,图6是本技术实施例提供的一种训练图像处理模型的流程示意图。接下来,本技术实施例对如何训练图像处理模型中的各个神经网络进行详细说明。
91.图6所示的模型训练过程,主要目的是为了学习光流神经网络、场景分割神经网络和重建神经网络的网络参数。在训练过程中,图像处理模型中的各个神经网络的处理流程具体可以参考上述实施例中各个神经网络的处理流程,本技术实施例在此不再赘述。其中,对于每一个预测得到的目标图像帧,都有一个真实图像帧,则失真计算(compute distortion)模块会计算一个失真损失。失真损失例如可以包括mse(mean squared error)均方误差损失、ssim(structural similarity index)结构相似性损失、psnr(peak signal
‑
to
‑
noise ratio)峰值信噪比损失等等。在一些实例中,对于每个训练真实帧,都有一个与之关联的真实分割掩模,对此,分割误差计算(compute segmentation error)模块会计算一个分割损失,例如,可以通过iou(intersection
‑
over
‑
union)度量的方式计算分割损失。在一些实例中,本技术实施例还给出了真实光流,则光流误差计算(compute flow error)模块会计算光流损失,例如计算真实光流和预测光流矢量间的平均欧式距离作为光流损失。
92.接下来,通过在反向传播和模型更新(backpropagation & model update)模块中计算失真损失、分割损失和光流损失的梯度,然后更新光流神经网络、场景分割神经网络和重建神经网络的模型参数。需要说明的是,光流神经网络、场景分割神经网络和重建神经网络可以在不同时间以不同的学习率进行更新。例如,在一个只包含真实的数据集中,光流神经网络和场景分割神经网络可能不会更新或仅以比重建神经网络低得多的频率更新。同样地,在模型训练时候也可以选择仅更新光流神经网络、场景分割神经网络和重建神经网络的部分模型参数。
93.在一种可能的实现方式中,在每次训练过程中,可以同时训练光流神经网络、场景分割神经网络和重建神经网络,若训练后的光流神经网络、场景分割神经网络和重建神经网络均满足模型收敛条件,则可以停止对图像处理模型的训练。其中,所谓模型收敛条件可
以是指:当神经网络模型的训练次数达到预设训练阈值时,例如100次,则可以认为神经网络模型满足模型收敛条件。当模型预测的图像帧和真实的图像帧之间的误差小于误差阈值时,则可以认为神经网络模型满足模型收敛条件。当神经网络模型相邻两次训练得到的图像帧之间的变化小于变化阈值时,则可以认为神经网络模型满足模型收敛条件。其中,神经网络模型可以是指光流神经网络、场景分割神经网络、或者重建神经网络。
94.在另一种可能的实现方式中,本技术实施例提供的光流神经网络、场景分割神经网络和重建神经网络也可以分开训练,例如,可以先训练好光流神经网络之后,再对场景分割神经网络进行训练,最后才对重建神经网络进行训练。当然,三个网络分开训练时,并不对其训练顺序进行限定。总结来说,本技术实施例并不对优化方法、模型更新的频率或要更新的模型参数的百分比做任何限制。
95.本技术实施例中,图6所示的图像处理模型仅仅为一个网络框架的示例,并不对其进行限定。在其他可行的实施例中,光流神经网络、场景分割神经网络、以及重建神经网络之间的相互链接关系可以适应性调整。并且,由于本技术实施例对光流神经网络、场景分割神经网络、以及重建神经网络的网络结构均不做具体限定,因此使用灵活,应用场景较广。
96.请参见图7,图7是本技术实施例提供的一种图像处理装置的结构示意图。该图像处理装置700可应用于图2对应的方法实施例中的计算机设备。图像处理装置700可以是运行于轻量节点中的一个计算机程序(包括程序代码),例如该图像处理装置700为一个应用软件;该装置可以用于执行本技术实施例提供的方法中的相应步骤。该图像处理装置700可包括:获取单元701,用于响应于生成目标图像帧的触发事件,获取渲染完成的图像帧作为目标图像帧的参考图像帧,目标图像帧和参考图像帧通过相机进行呈现;处理单元702,用于根据参考图像帧的图像信息以及针对目标图像帧给定的图像信息,预测出投影场景流;投影场景流用于描述:在相机发生运动的情况下,参考图像帧和目标图像帧之间需满足的运动信息;处理单元702,还用于根据用于进行光流估计的参考信息,估计出目标光流;目标光流用于指示:在可运动的对象发生运动的情况下,参考图像帧和目标图像帧之间需满足的运动信息;处理单元702,还用于基于参考图像帧、投影场景流和目标光流进行图像重建,得到目标图像帧。
97.在一种可能的实现方式中,处理单元702在基于参考图像帧、投影场景流和目标光流进行图像重建,得到目标图像帧时,具体执行以下操作:根据投影场景流对参考图像帧进行图像扭曲处理,得到目标场景转换帧;根据目标光流对参考图像帧进行图像扭曲处理,得到目标光流转换帧;基于目标场景转换帧和目标光流转换帧进行图像重建,得到目标图像帧。
98.在一种可能的实现方式中,投影场景流描述的运动信息包括:参考图像帧中的各个像素点,在参考图像帧和目标图像帧之间的位移信息;处理单元702在根据投影场景流对参考图像帧进行图像扭曲处理,得到目标场景转换帧时,具体执行以下操作:根据各个像素点在参考图像帧中的参考像素坐标,确定各个像素点在参考图像帧
中所处的参考像素位置;根据投影场景流所描述的运动信息中的各个像素点的位移信息,将各个像素点从相应的参考像素位置移动至对应的目标像素位置;任一像素点对应的目标像素位置是指:任一像素点在目标图像帧中需处于的像素位置;根据各个像素点的像素值,确定各个目标像素位置的像素值;并采用各个目标像素位置的像素值,生成目标场景转换帧。
99.在一种可能的实现方式中,处理单元702在根据各个像素点的像素值,确定各个目标像素位置的像素值时,具体执行以下操作:针对任一目标像素位置,若任一目标像素位置处存在一个像素点,则将任一目标像素位置处的像素点的像素值,确定为任一目标像素位置的像素值;若任一目标像素位置处存在至少两个像素点,则采用任一目标像素位置处的每个像素点的权重,对任一目标像素位置处的每个像素点的像素值进行加权处理,得到任一目标像素位置的像素值。
100.在一种可能的实现方式中,参考图像帧的图像信息包括:参考图像帧对应的参考深度图;若任一目标像素位置处存在至少两个像素点,则处理单元702还执行以下操作:根据参考图像帧对应的参考深度图,确定任一目标像素位置处的每个像素点的深度值;按照深度值和权重成负相关的原则,根据任一目标像素位置处的每个像素点的深度值,确定任一目标像素位置处的每个像素点的权重。
101.在一种可能的实现方式中,处理单元702在基于目标场景转换帧和目标光流转换帧进行图像重建,得到所述目标图像帧时,具体执行以下操作:计算目标场景转换帧和目标光流转换帧之间的一致性,得到目标一致性结果;根据目标一致性结果对参考图像帧中的各个像素点进行场景分割处理,得到目标分割掩膜,目标分割掩膜用于指示各个像素点为静态点的概率;基于目标场景转换帧、目标光流转换帧以及目标分割掩膜进行图像重建,得到目标图像帧。
102.在一种可能的实现方式中,参考图像帧是渲染完成的n个图像帧中的一个图像帧,n个图像帧中的每个图像帧均对应一个一致性结果,n为大于1的整数;处理单元702在根据目标一致性结果对参考图像帧中的各个像素点进行场景分割处理,得到目标分割掩膜时,具体执行以下操作:获取n个图像帧中除参考图像帧以外的n
‑
1个图像帧,所对应的n
‑
1个一致性结果;根据n
‑
1个一致性结果和目标一致性结果,对n个图像帧中的全部像素点进行场景分割处理,得到目标分割掩膜;全部像素点至少包括:参考图像帧中的各个像素点。
103.在一种可能的实现方式中,处理单元702在根据n
‑
1个一致性结果和目标一致性结果,对n个图像帧中的全部像素点进行场景分割处理,得到目标分割掩膜时,具体执行以下操作:对n
‑
1个一致性结果和目标一致性结果进行堆叠处理,得到堆叠结果;调用场景分割神经网络根据堆叠结果,对n个图像帧中的全部像素点进行场景分
割处理,得到目标分割掩膜。
104.在一种可能的实现方式中,处理单元702在根据n
‑
1个一致性结果和目标一致性结果,对n个图像帧中的全部像素点进行场景分割处理,得到目标分割掩膜时,具体执行以下操作:根据n
‑
1个一致性结果中的各个一致性结果,分别对相应的图像帧中的像素点进行场景分割处理,得到n
‑
1个分割掩膜;根据目标一致性结果,对参考图像帧中的像素点进行场景分割处理,得到参考图像帧对应的分割掩膜;对n
‑
1个分割掩膜和参考图像帧对应的分割掩膜进行融合处理,得到目标分割掩膜。
105.在一种可能的实现方式中,参考图像帧是渲染完成的n个图像帧中的一个图像帧,n个图像帧中的每个图像帧均对应一个场景转换帧和光流转换帧,n为大于1的整数;处理单元702在基于目标场景转换帧、目标光流转换帧以及目标分割掩膜进行图像重建,得到目标图像帧时,具体执行以下操作:采用目标场景转换帧,以及n个图像帧中除参考图像帧以外的各个图像帧所对应的场景转换帧,构建一个场景转换帧组;采用目标光流转换帧,以及n个图像帧中除参考图像帧以外的各个图像帧所对应的光流转换帧,构建一个光流转换帧组;基于场景转换帧组、光流转换帧组以及目标分割掩膜进行图像重建,得到目标图像帧。
106.在一种可能的实现方式中,参考图像帧的图像信息包括:参考图像帧对应的参考深度图和参考相机参数;针对目标图像帧给定的图像信息包括:目标深度图和目标相机参数;处理单元702在根据参考图像帧的图像信息以及针对目标图像帧给定的图像信息,预测出投影场景流具体时,具体执行以下操作:确定参考图像帧中的各个像素点,在参考图像帧中的参考像素坐标;根据参考深度图和参考相机参数,以及各个像素点的参考像素坐标,恢复出各个像素点对应的场景点在三维世界坐标系中的三维世界坐标;基于三维世界坐标系中的场景点处于静止状态的假设,根据各个像素点对应的场景点的三维世界坐标,目标深度图和目标相机参数,预测各个像素点在目标图像帧中的目标像素坐标;基于各个像素点的参考像素坐标和对应的目标像素坐标之间的差异,预测出投影场景流。
107.在一种可能的实现方式中,参考图像帧是n个图像帧中的一个图像帧,n个图像帧属于渲染完成的图像帧序列,n为大于1的整数;参考信息包括:参考图像帧和关联图像帧之间的光流;其中,关联图像帧是指:图像帧序列中位于参考图像帧之后的一个图像帧;处理单元702在根据用于进行光流估计的参考信息,估计出目标光流时,具体执行以下操作:根据参考图像帧和关联图像帧之间的光流,以及参考图像帧和关联图像帧之间的
时间间隔,计算单位时间内的光流;根据参考图像帧和目标图像帧之间的时间间隔,以及单位时间内的光流,估计出目标光流。
108.在一种可能的实现方式中,参考图像帧和目标图像帧是在目标应用中显示的图像帧,参考信息包括:目标应用的处理引擎提供的候选光流;处理单元702在根据用于进行光流估计的参考信息,估计出目标光流时,具体执行以下操作:将处理引擎提供的候选光流,确定为目标光流。
109.本技术实施例在需预测生成目标图像帧之后,可以获取渲染完成的图像帧作为目标图像帧的参考图像帧,参考图像帧和目标图像帧均可通过相机呈现。其次,可根据参考图像帧的图像信息以及针对目标图像帧给定的图像信息,预测出投影场景流;以及,根据用于进行光流估计的参考信息估计出目标光流。然后,可基于参考图像帧、投影场景流和目标光流进行图像重建;这样可使得图像重建时所参考的运动信息较为丰富,从而提升重建得到的目标图像帧的准确性。并且,由于投影场景流描述的是:在相机发生运动的情况下,参考图像帧和目标图像帧之间需满足的运动信息;而目标光流描述的是:在可运动的对象(如相机、参考图像帧中的物体对象等)发生运动的情况下,参考图像所对应的运动信息。因此,通过综合考虑投影场景流所描述的运动信息和目标光流所描述的运动信息进行图像重建,可在一定程度上消除由相机运动引起的光流与三维场景流之间的歧义,从而进一步提升目标图像帧的准确性。
110.请参见图8,图8是本技术实施例提供的一种计算机设备的结构示意图,该计算机设备800用于执行图2对应的方法实施例中计算机设备所执行的步骤,该计算机设备800包括:一个或多个处理器810;一个或多个输入设备820,一个或多个输出设备830和存储器840。上述处理器810、输入设备820、输出设备830和存储器840通过总线850连接。存储器840用于存储计算机程序,所述计算机程序包括程序指令,处理器810用于执行存储器840存储的程序指令,执行以下操作:响应于生成目标图像帧的触发事件,获取渲染完成的图像帧作为目标图像帧的参考图像帧,目标图像帧和参考图像帧通过相机进行呈现;根据参考图像帧的图像信息以及针对目标图像帧给定的图像信息,预测出投影场景流;投影场景流用于描述:在相机发生运动的情况下,参考图像帧和目标图像帧之间需满足的运动信息;根据用于进行光流估计的参考信息,估计出目标光流;目标光流用于指示:在可运动的对象发生运动的情况下,参考图像帧和目标图像帧之间需满足的运动信息;基于参考图像帧、投影场景流和目标光流进行图像重建,得到目标图像帧。
111.在一种可能的实现方式中,处理器810在基于参考图像帧、投影场景流和目标光流进行图像重建,得到目标图像帧时,具体执行以下操作:根据投影场景流对参考图像帧进行图像扭曲处理,得到目标场景转换帧;根据目标光流对参考图像帧进行图像扭曲处理,得到目标光流转换帧;基于目标场景转换帧和目标光流转换帧进行图像重建,得到目标图像帧。
112.在一种可能的实现方式中,投影场景流描述的运动信息包括:参考图像帧中的各
个像素点,在参考图像帧和目标图像帧之间的位移信息;处理器810在根据投影场景流对参考图像帧进行图像扭曲处理,得到目标场景转换帧时,具体执行以下操作:根据各个像素点在参考图像帧中的参考像素坐标,确定各个像素点在参考图像帧中所处的参考像素位置;根据投影场景流中所描述的运动信息包括的各个像素点的位移信息,将各个像素点从相应的参考像素位置移动至对应的目标像素位置;任一像素点对应的目标像素位置是指:任一像素点在目标图像帧中需处于的像素位置;根据各个像素点的像素值,确定各个目标像素位置的像素值;并采用各个目标像素位置的像素值,生成目标场景转换帧。
113.在一种可能的实现方式中,处理器810在根据各个像素点的像素值,确定各个目标像素位置的像素值时,具体执行以下操作:针对任一目标像素位置,若任一目标像素位置处存在一个像素点,则将任一目标像素位置处的像素点的像素值,确定为任一目标像素位置的像素值;若任一目标像素位置处存在至少两个像素点,则采用任一目标像素位置处的每个像素点的权重,对任一目标像素位置处的每个像素点的像素值进行加权处理,得到任一目标像素位置的像素值。
114.在一种可能的实现方式中,参考图像帧的图像信息包括:参考图像帧对应的参考深度图;若任一目标像素位置处存在至少两个像素点,则处理器810还执行以下操作:根据参考图像帧对应的参考深度图,确定任一目标像素位置处的每个像素点的深度值;按照深度值和权重成负相关的原则,根据任一目标像素位置处的每个像素点的深度值,确定任一目标像素位置处的每个像素点的权重。
115.在一种可能的实现方式中,处理器810在基于目标场景转换帧和目标光流转换帧进行图像重建,得到所述目标图像帧时,具体执行以下操作:计算目标场景转换帧和目标光流转换帧之间的一致性,得到目标一致性结果;根据目标一致性结果对参考图像帧中的各个像素点进行场景分割处理,得到目标分割掩膜,目标分割掩膜用于指示各个像素点为静态点的概率;基于目标场景转换帧、目标光流转换帧以及目标分割掩膜进行图像重建,得到目标图像帧。
116.在一种可能的实现方式中,参考图像帧是渲染完成的n个图像帧中的一个图像帧,n个图像帧中的每个图像帧均对应一个一致性结果,n为大于1的整数;处理器810在根据目标一致性结果对参考图像帧中的各个像素点进行场景分割处理,得到目标分割掩膜时,具体执行以下操作:获取n个图像帧中除参考图像帧以外的n
‑
1个图像帧,所对应的n
‑
1个一致性结果;根据n
‑
1个一致性结果和目标一致性结果,对n个图像帧中的全部像素点进行场景分割处理,得到目标分割掩膜;全部像素点至少包括:参考图像帧中的各个像素点。
117.在一种可能的实现方式中,处理器810在根据n
‑
1个一致性结果和目标一致性结
果,对n个图像帧中的全部像素点进行场景分割处理,得到目标分割掩膜时,具体执行以下操作:对n
‑
1个一致性结果和目标一致性结果进行堆叠处理,得到堆叠结果;调用场景分割神经网络根据堆叠结果,对n个图像帧中的全部像素点进行场景分割处理,得到目标分割掩膜。
118.在一种可能的实现方式中,处理器810在根据n
‑
1个一致性结果和目标一致性结果,对n个图像帧中的全部像素点进行场景分割处理,得到目标分割掩膜时,具体执行以下操作:根据n
‑
1个一致性结果中的各个一致性结果,分别对相应的图像帧中的像素点进行场景分割处理,得到n
‑
1个分割掩膜;根据目标一致性结果,对参考图像帧中的像素点进行场景分割处理,得到参考图像帧对应的分割掩膜;对n
‑
1个分割掩膜和参考图像帧对应的分割掩膜进行融合处理,得到目标分割掩膜。
119.在一种可能的实现方式中,参考图像帧是渲染完成的n个图像帧中的一个图像帧,n个图像帧中的每个图像帧均对应一个场景转换帧和光流转换帧,n为大于1的整数;处理器810在基于目标场景转换帧、目标光流转换帧以及目标分割掩膜进行图像重建,得到目标图像帧时,具体执行以下操作:采用目标场景转换帧,以及n个图像帧中除参考图像帧以外的各个图像帧所对应的场景转换帧,构建一个场景转换帧组;采用目标光流转换帧,以及n个图像帧中除参考图像帧以外的各个图像帧所对应的光流转换帧,构建一个光流转换帧组;基于场景转换帧组、光流转换帧组以及目标分割掩膜进行图像重建,得到目标图像帧。
120.在一种可能的实现方式中,参考图像帧的图像信息包括:参考图像帧对应的参考深度图和参考相机参数;针对目标图像帧给定的图像信息包括:目标深度图和目标相机参数;处理器810在根据参考图像帧的图像信息以及针对目标图像帧给定的图像信息,预测出投影场景流具体时,具体执行以下操作:确定参考图像帧中的各个像素点,在参考图像帧中的参考像素坐标;根据参考深度图和参考相机参数,以及各个像素点的参考像素坐标,恢复出各个像素点对应的场景点在三维世界坐标系中的三维世界坐标;基于三维世界坐标系中的场景点处于静止状态的假设,根据各个像素点对应的场景点的三维世界坐标,目标深度图和目标相机参数,预测各个像素点在目标图像帧中的目标像素坐标;基于各个像素点的参考像素坐标和对应的目标像素坐标之间的差异,预测出投影场景流。
121.在一种可能的实现方式中,参考图像帧是n个图像帧中的一个图像帧,n个图像帧属于渲染完成的图像帧序列,n为大于1的整数;参考信息包括:参考图像帧和关联图像帧之
memory,ram)等。
127.以上所揭露的仅为本技术较佳实施例而已,当然不能以此来限定本技术之权利范围,因此依本技术权利要求所作的等同变化,仍属本技术所涵盖的范围。