一种图像处理方法和电子设备与流程

文档序号:37355016发布日期:2024-03-18 18:39阅读:12来源:国知局
一种图像处理方法和电子设备与流程

本技术实施例涉及图像处理领域,尤其涉及一种图像处理方法和电子设备。


背景技术:

1、帧预测技术能够通过已经完成渲染的帧图像的相关数据,预测下一帧图像中各个物体的位置。该技术在有插帧需求的显示方案中被广泛应用。

2、目前的帧预测技术可以基于各个像素点的颜色或亮度匹配,确定同一个物体(模型)在不同帧图像中的位置。进而根据位置的变化计算获取各个像素点的运动矢量。基于图像显示的连续性,根据该运动矢量就能够实现对未来帧图像的预测。

3、该方案在实施过程中,对于算力以及功耗也提出了较高的要求。


技术实现思路

1、本技术实施例提供一种图像处理方法和电子设备,可以分别准确快速地对静态网格以及动态网格进行运动矢量的计算,进而准确进行未来帧图像的预测。通过静态网格和动态网格的分别计算,节省矢量计算过程中的算力开销,提升预测效率。

2、为了达到上述目的,本技术实施例采用如下技术方案:

3、第一方面,提供一种图像处理方法,该方法应用于电子设备,该方法包括:该电子设备通过图像渲染得到至少两帧图像,至少两帧该图像中包括动态网格和静态网格,该动态网格对应模型在不同帧图像中的世界坐标系下的坐标不同,该静态网格对应模型在不同帧图像中的世界坐标系下的坐标相同。根据已完成的至少两帧图像的渲染中间变量,确定下一帧图像的静态网格的位置。该渲染中间变量包括对应帧图像的模型-观察-投影mvp矩阵和深度数据。根据已完成的至少两帧图像中,第一模型的坐标数据,确定下一帧图像中,该第一模型的位置。该第一模型对应网格为该图像中的动态网格,该坐标数据包括该第一模型在对应帧图像中的归一化设备ndc坐标以及绘制参数,该ndc坐标包括至少一个顶点坐标该绘制参数用于该电子设备绘制该第一模型。由此,电子设备可以基于下一帧图像的静态网格的位置以及下一帧图像中第一模型的位置,确定所述下一帧图像。可以理解的是,在图像中包括第一模型之外的其他更多动态网格的情况下,则电子设备可以根据对应模型的坐标数据,采用类似于第一模型的处理机制,确定该运动模型在下一帧图像中的位置。结合不同运动物体在下一帧图像中的位置以及静态物体在下一帧图像中的位置,电子设备就可以综合获取下一帧图像,实现未来帧图像的预测。

4、这样,电子设备可以通过mvp矩阵以及深度数据确定静态网格的运动矢量。其中,mvp矩阵以及深度数据可以直接通过应用程序下发的指令流获取,避免在确定静态网格的过程中产生大量的数据计算开销。此外,电子设备还可以通过坐标数据确定每个动态网格的运动矢量。例如,电子设备可以基于坐标数据对动态网格进行匹配,从而避免逐个像素的亮度/颜色匹配产生的算力开销。由此即可通过上述方案实现静态网格以及动态网格的运动矢量的计算。同时能够显著降低算力开销,提升计算效率。

5、可选的,在该图像中包括多个动态网格对应的模型,该根据已完成的至少两帧图像中第一模型的坐标数据,确定下一帧图像中该第一模型的位置,包括:根据已完成的至少两帧图像中第一模型的坐标数据,基于特征哈希值匹配,确定该第一模型在不同帧图像中的坐标数据。其中,该第一模型在不同帧图像中的特征哈希值相同,不同模型在同一帧图像中的特征哈希值不同。根据该第一模型在不同帧图像中的坐标数据,确定下一帧图像中该第一模型的位置。这样,在多个动态网格的较为复杂的图像中,不需要通过像素级别的逐个匹配,即可确定同一个模型在不同帧图像的坐标对应关系。由此显著节省对应的算力开销以及时间开销。

6、可选的,该已完成帧图像包括第n帧图像以及第n-1帧图像,该下一帧图像为第n+1帧图像。该根据已完成的至少两帧图像的渲染中间变量,确定下一帧图像的静态网格的位置,包括:根据该第n-1帧图像的第一mvp矩阵以及第一深度数据,该第n帧图像的第二mvp矩阵以及第二深度数据,确定该第n帧图像中的静态网格的运动矢量。根据该静态网格在该第n帧图像中的位置,以及该静态网格的运动矢量,确定该第n+1帧图像中该静态网格的位置。这样,以当前帧图像为第n帧图像为例,电子设备可以在当前帧图像完成渲染后,获取第n帧图像中的相关数据,结合第n-1帧图像中的数据,进行第n+1帧图像的预测。应当理解的是,在另一些实现中,已经完成的帧图像也可以是不连续的两帧图像,如第n帧图像以及第n-2帧图像等。

7、可选的,该电子设备的存储器中配置有渲染中间变量缓存,在该根据已完成的至少两帧图像的渲染中间变量,确定下一帧图像的静态网格的位置之前,该方法还包括:获取该第一mvp矩阵、该第一深度数据、该第二mvp矩阵以及该第二深度数据,将获取的数据存储在该渲染中间变量缓存中。该根据已完成的至少两帧图像的渲染中间变量,确定下一帧图像的静态网格的位置,包括:从该渲染中间变量缓存中读取该第一mvp矩阵、该第一深度数据、该第二mvp矩阵以及该第二深度数据,并确定第n+1帧图像中该静态网格的位置。

8、可选的,该应用程序下发第一指令流指示该电子设备进行第n-1帧图像的渲染。该渲染中间变量缓存包括第一渲染中间变量缓存。该获取并存储该第一mvp矩阵,包括:该电子设备拦截该第一指令流中,用于传输该第一mvp矩阵的第一指令段,根据该第一指令段,将该第一mvp矩阵存储在该第一渲染中间变量缓存中。

9、可选的,该电子设备根据第一预设标识,拦截该第一指令流的该第一指令段。

10、可选的,该第一预设标识为uniform参数。

11、这样,电子设备可以在进行第n-1帧图像的渲染过程中,通过上述方案将后续需要使用的第一mvp矩阵备份存在存储器中的预设位置,例如渲染中间变量缓存中。以便后续调用。

12、可选的,该应用程序下发第一指令流指示该电子设备进行第n-1帧图像的渲染。该渲染中间变量缓存包括第二渲染中间变量缓存。该获取并存储该第一深度数据,包括:该电子设备拦截该第一指令流中,与该第一深度数据相关的第二指令段,根据该第二指令段,将该第一深度数据存储在该第二渲染中间变量缓存中。

13、可选的,该与该第一深度数据相关的第二指令段用于指示该电子设备进行多目标渲染mrt。

14、这样,电子设备可以在进行第n-1帧图像的渲染过程中,通过上述方案将后续需要使用的第一深度数据备份存在存储器中的预设位置,例如渲染中间变量缓存中。以便后续调用。

15、可选的,该应用程序下发第二指令流指示该电子设备进行第n帧图像的渲染。该渲染中间变量缓存包括第三渲染中间变量缓存。该获取并存储该第二mvp矩阵,包括:该电子设备拦截该第二指令流中,用于传输该第二mvp矩阵的第三指令段,根据该第三指令段,将该第二mvp矩阵存储在该第三渲染中间变量缓存中。

16、可选的,该应用程序下发第二指令流指示该电子设备进行第n帧图像的渲染。该渲染中间变量缓存包括第四渲染中间变量缓存。该获取并存储该第二深度数据,包括:该电子设备拦截该第二指令流中,与该第二深度数据相关的第四指令段,根据该第四指令段,将该第二深度数据存储在该第四渲染中间变量缓存中。

17、应当理解的是,电子设备可以在执行每一帧图像的渲染过程中,执行上述mvp矩阵以及深度数据的备份存储,例如在第n-1帧图像以及第n帧图像的渲染过程中分别执行上述方案,由此使得后续进行未来帧预测时,能够顺利调用到上述备份存储的mvp矩阵和深度数据,用来确定未来帧中的静态网格的位置。

18、可选的,该已完成帧图像包括第n帧图像以及第n-1帧图像,该下一帧图像为第n+1帧图像。该根据已完成的至少两帧图像中,第一模型的坐标数据,确定下一帧图像中,该第一模型的位置,包括:根据该第一模型在该第n-1帧图像中的第一坐标数据,以及该第一模型在该第n帧图像中的第二坐标数据,确定该第一模型的运动矢量。根据该静态网格在该第n帧图像中的位置,以及该第一模型的运动矢量,确定该第n+1帧图像中该第一模型的位置。由此,该方案提供了一种确定动态网格的运动矢量的实现。可以理解的是,在帧图像中可以包括多个动态网格,对应多个运动物体。那么,针对每个动态网格,电子设备都可以执行该方案,由此确定各个动态网格的运动矢量。以下示例中,以第一模型为例进行说明。

19、可选的,该电子设备中配置有ndc缓存,在根据该第一模型的坐标数据确定该第一模型的运动矢量之前,该方法还包括:获取该第一模型的该第一坐标数据以及该第二坐标数据,将该第一坐标数据以及该第二坐标数据存储在该ndc缓存中。该根据该第一模型的坐标数据确定该第一模型的运动矢量,包括:从该ndc缓存中读取该第一模型的第一坐标数据以及该第二坐标数据,根据该第一坐标数据以及该第二坐标数据,确定该第一模型的运动矢量。通过动态网格渲染过程中,将坐标数据备份存储在预先设置的ndc缓存中。以便于后续未来帧的预测使用。

20、可选的,该应用程序下发第一指令流指示该电子设备进行第n-1帧图像的渲染。该述ndc缓存包括第一ndc缓存。该获取该第一模型的该第一坐标数据,包括:在开始该第n-1帧图像中该第一模型的绘制之前,使能enable变换反馈功能,该电子设备的gpu基于该变换反馈功能,在执行该第一模型的绘制时,向该电子设备反馈该第一坐标数据,该第一坐标数据包括该第一模型在该第n-1帧图像中的第一ndc坐标数据,以及该第一模型在该第n-1帧图像中对应的第一绘制参数。该电子设备将该第一坐标数据存储在该第一ndc缓存中。该示例提供了一种具体的获取坐标数据的方案。比如,通过使能变换反馈功能,使得gpu可以将渲染获取的坐标数据反馈给电子设备,以便于电子设备对该坐标数据进行备份存储。

21、可选的,该方法还包括:关闭该变换反馈功能。可以理解的是,在完成一个drawcall对应的动态网格的坐标数据的存储后,电子设备可以关闭该变换反馈功能。这样如果下一个drawcall对应绘制静态网格时,就不需要回调对应的坐标数据。

22、可选的,该应用程序下发第二指令流指示该电子设备进行第n帧图像的渲染。该述ndc缓存包括第二ndc缓存。该获取该第一模型的该第二坐标数据,包括:在开始该第n帧图像中该第一模型的绘制之前,使能enable变换反馈功能,该电子设备的gpu基于该变换反馈功能,在执行该第一模型的绘制时,向该电子设备反馈该第二坐标数据,该第二坐标数据包括该第一模型在该第n帧图像中的第二ndc坐标数据,以及该第一模型在该第n帧图像中对应的第二绘制参数。该电子设备将该第二坐标数据存储在该第二ndc缓存中。类似于mvp矩阵以及深度数据的获取,针对每一帧图像的渲染过程,电子设备都可以针对其中各个drawcall执行该方案,由此使得帧图像中的所有动态网格的坐标数据都能够被获取并存储。

23、可选的,在该获取该第一模型的该第一坐标数据以及该第二坐标数据之前,该方法还包括:确定该第一模型的网格为动态网格。

24、可选的,该确定该第一模型的网格为动态网格,包括:在该第一模型在当前帧图像中的坐标数据被更新的情况下,确定该第一模型的网格为动态网格。

25、示例性的,电子设备可以在接收到对一个模型的渲染指令时,判断该渲染指令指示的存放坐标数据的帧缓冲中的数据是否在该帧图像被更新,如果是则表明对应模型为运动模型,对应动态网格。反之,如果未被更新,则表明对应模型为静态模型,对应静态网格。

26、可选的,该第n帧图像中包括至少两个网格为动态网格的模型,该第一模型包括在该至少两个网格为动态网格的模型中,该ndc缓存中存储有各个模型对应与不同帧图像的坐标数据,该方法还包括:确定该ndc缓存中,该第一模型在不同帧图像中对应的两个坐标数据。

27、可以理解的是,在一个帧图像中可以包括多个动态网格。不同动态网格的运动矢量可以不同。而通过前述的数据备份存储后,在ndc缓存中可以分别存储有两组坐标数据。如第一ndc缓存中的第n-1帧图像的所有动态网格的坐标数据。又如第二ndc缓存中的第n帧图像的所有动态网格的坐标数据。那么,在计算每个模型的运动矢量之前,就需要先匹配确定同一个模型在不同帧图像中的坐标数据。继续以第一模型为例。

28、可选的,该确定该ndc缓存中,该第一模型在不同帧图像中对应的两个坐标数据,包括:根据该ndc缓存中,存储的各个坐标数据中包括的绘制参数,确定各个坐标数据对应的特征哈希值。将该ndc缓存中,与该第一坐标数据对应的特征哈希值相同的坐标数据,确定为该第二坐标数据。本示例提供了一种简便的相同模型在不同帧图像中的坐标匹配机制。比如,针对第一ndc缓存和第二ndc缓存中的任一个坐标数据,将其中的绘制参数对应到一个唯一的特征哈希值。这样,只需要在第一ndc缓存中和第二ndc缓存中,查找具有相同特征哈希值的坐标数据,即可作为同一个模型在不同帧图像中的匹配坐标数据。

29、可选的,该确定该ndc缓存中,该第一模型在不同帧图像中对应的两个坐标数据,包括:根据该ndc缓存中,存储的各个坐标数据中包括的绘制参数,确定各个坐标数据对应的特征哈希值。将该ndc缓存中与该第一坐标数据对应的特征哈希值相同,并且两个坐标数据中的第一个顶点坐标之间的距离小于预设距离的坐标数据,确定为该第二坐标数据。本示例提供了一种更加准确并且渐变的坐标匹配机制。在该示例中,通过特征哈希值匹配后,还可以结合两个坐标数据中携带的多个顶点坐标之间的欧式距离,进一步验证两个坐标数据的匹配度。可以理解的是,对于同一个模型,在相邻或相近帧图像中的运动距离是有限的。因此,对于同一个模型的同一个顶点,在不同帧图像中的距离可以小于预设距离。这样能够进一步提升坐标匹配的准确度。由此提升基于坐标数据的运动矢量的计算准确度。

30、可选的,该绘制参数包括以下中的至少一项:顶点标识id,索引id,绘制数量,偏移量。

31、第二方面,提供一种电子设备,电子设备包括一个或多个处理器和一个或多个存储器;一个或多个存储器与一个或多个处理器耦合,一个或多个存储器存储有计算机指令;当一个或多个处理器执行计算机指令时,使得电子设备执行如上述第一方面以及各种可能的设计中任一种的方法。

32、第三方面,提供一种芯片系统,芯片系统包括接口电路和处理器;接口电路和处理器通过线路互联;接口电路用于从存储器接收信号,并向处理器发送信号,信号包括存储器中存储的计算机指令;当处理器执行计算机指令时,芯片系统执行如上述第一方面以及各种可能的设计中任一种的方法。

33、第四方面,提供一种计算机可读存储介质,计算机可读存储介质包括计算机指令,当计算机指令运行时,执行如上述第一方面以及各种可能的设计中任一种的方法。

34、第五方面,提供一种计算机程序产品,计算机程序产品中包括指令,当计算机程序产品在计算机上运行时,使得计算机可以根据指令执行如上述第一方面以及各种可能的设计中任一种的方法。

35、应当理解的是,上述第二方面,第三方面,第四方面,以及第五方面提供的技术方案,其技术特征均可对应到第一方面及其可能的设计中提供的技术方案,因此能够达到的有益效果类似,此处不再赘述。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1