CN117974814A - 用于图像处理的方法、装置及存储介质 - Google Patents
用于图像处理的方法、装置及存储介质 Download PDFInfo
- Publication number
- CN117974814A CN117974814A CN202211319597.7A CN202211319597A CN117974814A CN 117974814 A CN117974814 A CN 117974814A CN 202211319597 A CN202211319597 A CN 202211319597A CN 117974814 A CN117974814 A CN 117974814A
- Authority
- CN
- China
- Prior art keywords
- pixel
- full
- color image
- image
- grid layer
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 149
- 238000012545 processing Methods 0.000 title claims abstract description 119
- 230000008569 process Effects 0.000 claims abstract description 94
- 239000013598 vector Substances 0.000 claims abstract description 78
- 230000003068 static effect Effects 0.000 claims description 105
- 238000004422 calculation algorithm Methods 0.000 claims description 64
- 238000005070 sampling Methods 0.000 claims description 38
- 238000004590 computer program Methods 0.000 claims description 17
- 238000009877 rendering Methods 0.000 description 52
- 238000010586 diagram Methods 0.000 description 22
- 238000004364 calculation method Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 11
- 238000004891 communication Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 5
- 230000003190 augmentative effect Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 238000002156 mixing Methods 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 229920001621 AMOLED Polymers 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 2
- 210000000988 bone and bone Anatomy 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 239000002096 quantum dot Substances 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/60—Memory management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Image Processing (AREA)
Abstract
一种用于图像处理的方法、装置及存储介质,能够提高预测帧的画面质量。该方法包括:根据第一真实帧和第二真实帧之间的运动矢量信息,对第一真实帧的颜色图像进行至少一轮扭曲处理,以得到预测帧的第一目标颜色图像;其中,每轮扭曲处理包括:生成覆盖第一真实帧的全屏网格层;根据运动矢量信息,对全屏网格层中的至少部分网格进行扭曲处理;根据扭曲后的全屏网格层以及第一真实帧的颜色图像,输出每轮扭曲处理对应的颜色图像;对预测帧的第一目标颜色图像中的空白区域进行填充,得到预测帧的第二目标颜色图像,第二目标颜色图像为预测帧的显示图像。通过采用扭曲全屏网格层的方式得到预测帧的颜色图像,能够提高预测帧的精确程度。
Description
技术领域
本申请涉及信息技术领域,尤其涉及用于图像处理的方法、装置及存储介质。
背景技术
随着图像处理技术的高速发展,在一些对视频画面的画质要求较高的场景中,比如游戏界面、虚拟现实(virtual reality,VR)界面、增强现实(Augmented Reality,AR)界面等,播放视频的屏幕刷新率和渲染分辨率在逐渐提高。例如,屏幕刷新率从60Hz提高到120Hz甚至更高,渲染分辨率从720p提高至2k甚至更高。这使得电子设备在性能和功耗上面临着更大的挑战,为了降低功耗,帧预测技术被应用到视频数据的处理过程中。
帧预测技术是指根据真实帧的运动矢量等数据预测并插入预测帧的技术,预测帧的插入能够提升显示图像的帧率,减少卡顿感以及降低视频渲染功耗。在生成预测帧的过程中,由于前后两个真实帧之间存在很多相似性,因此通过计算像素之间的相似程度可以获取像素在两个真实帧之间的运动矢量。根据运动矢量预测像素在预测帧中的位置,从而将像素放置于相应的位置。对于无法在两个真实帧之间确定匹配关系的像素区域,则需要根据像素填充算法预测填充该像素区域的图像数据。视频帧由于场景不同、环境不同以及画面风格不同,其具有的图像信息分布特征也不同,因此,若采用固定的预测帧生成方案,可能会出现预测帧的图像质量较差的问题。
为了解决上述问题,业界着力于研究一种能够在节省功耗和算力的基础上,提高预测帧的画面质量和精确度的方法。
发明内容
本申请实施例提供一种用于图像处理的方法、装置及存储介质,能够提高生成的预测帧的图像质量。
第一方面,本申请实施例提出一种用于图像处理的方法,该方法包括:根据第一真实帧和第二真实帧之间的运动矢量信息,对所述第一真实帧的颜色图像进行至少一轮扭曲处理,以得到预测帧的第一目标颜色图像,所述预测帧的第一目标颜色图像包括所述至少一轮扭曲处理导致的空白区域;其中,所述至少一轮扭曲处理中的每轮扭曲处理包括:生成覆盖所述第一真实帧的全屏网格层,所述全屏网格层中包括多个网格,每个网格中包括多个像素;根据所述运动矢量信息,对所述全屏网格层中的至少部分网格进行扭曲处理;根据扭曲后的所述全屏网格层以及所述第一真实帧的颜色图像,输出每轮扭曲处理对应的颜色图像;对所述预测帧的第一目标颜色图像中的空白区域进行填充,得到预测帧的第二目标颜色图像,所述第二目标颜色图像为所述预测帧的显示图像。
这样,在预测帧的生成过程中生成覆盖第一真实帧的全屏网格层,并根据两个真实帧之间的运动矢量,通过对全屏网格层的一轮或者多轮扭曲处理,得到包括空白区域的颜色图像。通过采用扭曲全屏网格层的方式得到预测帧的颜色图像,而不是以像素为单位进行像素位移,能够精简计算资源以及提高预测帧的精确程度。
结合第一方面,在一种可能的实现方式中,所述至少一轮扭曲处理包括多轮扭曲处理,所述多轮扭曲处理分别对应于多种扭曲种类,所述多种扭曲种类包括以下至少一项:对静态物体执行的扭曲操作;对动态物体执行的扭曲操作;对远景中的静态物体执行的扭曲操作;对近景中的动态物体执行的扭曲操作;对远景中的动态物体执行的扭曲操作;对近景中的静态物体执行的扭曲操作。
这样,在每轮扭曲处理中,通过区分每轮处理的对象属于静态物体、动态物体、远景图像或者近景图像,对图像中的不同类型的对象进行扭曲,可以提高最终得到的颜色图像的精确程度,从而进一步提高图像质量。
结合第一方面,在一种可能的实现方式中,所述至少一轮扭曲处理包括多轮扭曲处理,所述多轮扭曲处理中的至少两轮扭曲处理对应的全屏网格层的分辨率不同。
这样,可以根据每轮扭曲处理的对象灵活选择全屏网格层的分辨率,达到节省算力和功耗,提高预测帧的计算效率的目的。
结合第一方面,在一种可能的实现方式中,所述方法还包括:在所述至少一轮扭曲处理中的第i轮处理的对象为远景中的静态物体的情况下,将所述第i轮处理中采用的全屏网格层的分辨率设置为第一分辨率,i为大于等于1的整数;在所述至少一轮扭曲处理中的第i轮处理的对象为近景中的静态物体或者动态物体的情况下,将所述第i轮处理中采用的全屏网格层的分辨率设置为第二分辨率,所述第一分辨率低于所述第二分辨率。
这样,对于远景中的静态物体,由于其在两个视频帧之间的变化量较小,因此可以使用分辨率更低的全屏网格层进行扭曲操作。而由于动态物体处于运动状态中,近景图像距离相机更近,受到运动矢量的预测误差的影响更大,因此需要采用较高的分辨率进行网格扭曲,才能获取更精确的预测图像。通过细化每轮扭曲操作的对象,并根据每轮扭曲处理的对象灵活选择全屏网格层的分辨率,达到节省算力和功耗,提高预测帧的计算效率的目的。
结合第一方面,在一种可能的实现方式中,所述至少一轮扭曲处理包括多轮扭曲处理,所述多轮扭曲处理中的第一轮扭曲处理包括:生成覆盖所述第一真实帧的第一全屏网格层;根据静态物体的运动矢量信息,对所述第一全屏网格层中的网格顶点进行偏移,得到扭曲后的第一全屏网格层;根据所述扭曲后的第一全屏网格层,将所述第一真实帧的颜色图像中的静态物体的像素输出至空白图像中,以得到第一颜色图像。
结合第一方面,在一种可能的实现方式中,所述将所述第一真实帧的颜色图像中的静态物体的像素输出至空白图像中,以得到第一颜色图像,包括:根据所述第一真实帧的全屏语义图像,判断第一像素是属于静态物体还是动态物体,所述第一像素为所述第一真实帧的颜色图像中的任一像素;在所述第一像素属于静态物体的情况下,将所述第一像素输出至所述空白图像中的第一位置中,以得到所述第一颜色图像,所述第一位置是所述第一像素在所述扭曲后的第一全屏网格层中的对应位置;在所述第一像素属于动态物体的情况下,不向所述空白图像输出所述第一像素。
结合第一方面,在一种可能的实现方式中,所述多轮扭曲处理中的第二轮扭曲处理包括:生成覆盖所述第一真实帧的第二全屏网格层;根据动态物体的运动矢量信息,对所述第二全屏网格中的网格顶点进行偏移,得到扭曲后的第二全屏网格层;根据所述扭曲后的第二全屏网格层,将所述第一真实帧的颜色图像中的动态物体的像素输出至所述第一颜色图像中,以得到所述第一目标颜色图像。
结合第一方面,在一种可能的实现方式中,所述根据所述扭曲后的第二全屏网格层,将所述第一真实帧的颜色图像中的动态物体的像素输出至所述第一颜色图像中,以得到所述第一目标颜色图像,包括:根据所述第一真实帧的全屏语义图像,判断第二像素是属于静态物体还是动态物体,所述第二像素为所述第一真实帧的颜色图像中的任一像素;在所述第二像素属于动态物体的情况下,将所述第二像素输出至所述第一颜色图像中的第二位置中,以得到所述第一目标颜色图像,所述第二位置是所述第二像素在所述扭曲后的第二全屏网格层中的对应位置;在所述第二像素属于静态物体的情况下,不向所述第一颜色图像输出所述第二像素。
结合第一方面,在一种可能的实现方式中,所述至少一轮扭曲处理包括多轮扭曲处理,所述多轮扭曲处理中的第一轮扭曲处理包括:生成覆盖所述第一真实帧的第一全屏网格层;根据远景中的静态物体的运动矢量信息,对所述第一全屏网格层中的网格顶点进行偏移,得到扭曲后的第一全屏网格层;根据所述扭曲后的第一全屏网格层,将所述第一真实帧的颜色图像中的远景中的静态物体的像素输出至空白图像中,以得到第一颜色图像。
结合第一方面,在一种可能的实现方式中,所述根据所述扭曲后的第一全屏网格层,将所述第一真实帧的颜色图像中的远景中的静态物体的像素输出至空白图像中,以得到第一颜色图像,包括:根据所述第一真实帧的全屏语义图像,判断第一像素是属于静态物体还是动态物体,所述第一像素为所述第一真实帧的颜色图像中的任一像素;在所述第一像素属于静态物体的情况下,根据所述第一真实帧的场景深度图,确定所述第一像素的深度是否大于预设深度阈值;在所述第一像素的深度大于所述预设深度阈值D的情况下,将所述第一像素输出至所述空白图像中的第一位置中,以得到所述第一颜色图像,所述第一位置是所述第一像素在所述扭曲后的第一全屏网格层中的对应位置;在所述第一像素的深度小于所述预设深度阈值D的情况下,不向所述空白图像输出所述第一像素;在所述第一像素属于动态物体的情况下,不向所述空白图像输出所述第一像素。
结合第一方面,在一种可能的实现方式中,所述多轮扭曲处理中的第二轮扭曲处理包括:生成覆盖所述第一真实帧的第二全屏网格层;根据近景中的静态物体的运动矢量信息,对所述第二全屏网格层中的网格顶点进行偏移,得到扭曲后的第二全屏网格层;根据所述扭曲后的第二全屏网格层,将所述第一真实帧的颜色图像中的近景中的静态物体的像素输出至所述第一颜色图像中,以得到第二颜色图像。
结合第一方面,在一种可能的实现方式中,所述多轮扭曲处理中的第三轮扭曲处理包括:生成覆盖所述第一真实帧的第三全屏网格层;根据远景中的动态物体的运动矢量信息,对所述第三全屏网格层中的网格顶点进行偏移,得到扭曲后的第三全屏网格层;根据所述扭曲后的第三全屏网格层,将所述第一真实帧的颜色图像中的动态物体的像素输出至所述第二颜色图像中,以得到第三颜色图像。
结合第一方面,在一种可能的实现方式中,所述多轮扭曲处理中的第四轮扭曲处理包括:生成覆盖所述第一真实帧的第四全屏网格层;根据近景中的动态物体的运动矢量信息,对所述第四全屏网格层中的网格顶点进行偏移,得到扭曲后的第四全屏网格层;根据所述扭曲后的第四全屏网格层,将所述第一真实帧的颜色图像中的动态物体的像素输出至所述第三颜色图像中,以得到所述第一目标颜色图像。
结合第一方面,在一种可能的实现方式中,所述对所述预测帧的第一目标颜色图像中的空白区域进行填充,得到预测帧的第二目标颜色图像,包括:确定所述第一真实帧和第二真实帧之间的相机夹角所属的阈值范围;根据所述相机夹角所属的阈值范围,从至少两个候选像素填充算法中选择目标像素填充算法;根据所述目标像素填充算法,对所述第一目标颜色图像中的空白区域进行填充,以得到所述第二目标颜色图像。
这样,在对第一目标颜色图像中的空白区域进行填充时,可以根据相机夹角所属的阈值范围,从多个候选像素填充算法中选择目标像素填充算法,以进行空白区域的填充。由于不同的像素填充算法适合于不同的场景,因此,根据相机夹角的阈值灵活地选择进行空白区域填充的像素填充算法,能够提高预测帧的显示图像的预测精确程度和图像质量。
结合第一方面,在一种可能的实现方式中,所述根据所述相机夹角所属的阈值范围,从至少两个候选像素填充算法中选择目标像素填充算法,包括:在所述相机夹角小于第一夹角阈值的情况下,选择第一像素填充算法为所述目标像素填充算法,其中,所述第一像素填充算法通过采样待填充像素周围的静态物体的像素实现像素填充;在所述相机夹角大于所述第一夹角阈值的情况下,选择第二像素填充算法为所述目标像素填充算法,其中,所述第二像素填充算法通过采样待填充像素周围的静态物体以及动态物体的像素实现像素填充。
第二方面,本申请实施例提供一种用于图像处理的方法,包括:获取第一真实帧和第二真实帧之间的运动矢量信息;根据所述运动矢量信息,对所述第一真实帧的颜色图像进行扭曲处理,以得到预测帧的第一目标颜色图像,其中,所述扭曲处理包括:生成覆盖所述第一真实帧的全屏网格层,所述全屏网格层中包括多个网格,每个网格中包括多个像素;根据所述运动矢量信息,对所述全屏网格层中的网格进行扭曲处理;根据扭曲后的所述全屏网格层以及所述第一真实帧的颜色图像,得到扭曲后的颜色图像。
结合第二方面,在一种可能的实现方式中,所述扭曲处理包括多轮扭曲处理,述多轮扭曲处理分别对应于多种扭曲种类,所述多种扭曲种类包括以下至少一项:对静态物体执行的扭曲操作;对动态物体执行的扭曲操作;对远景中的静态物体执行的扭曲操作;对近景中的动态物体执行的扭曲操作;对远景中的动态物体执行的扭曲操作;对近景中的静态物体执行的扭曲操作。
结合第二方面,在一种可能的实现方式中,所述扭曲处理包括多轮扭曲处理,所述多轮扭曲处理中的至少两轮扭曲处理对应的全屏网格层的分辨率不同。
结合第二方面,在一种可能的实现方式中,所述方法还包括:在所述多轮扭曲处理中的第i轮处理的对象为远景中的静态物体的情况下,将所述第i轮处理中采用的全屏网格层的分辨率设置为第一分辨率,i为大于等于1的整数;在所述至少一轮扭曲处理中的第i轮处理的对象为近景中的静态物体或者动态物体的情况下,将所述第i轮处理中采用的全屏网格层的分辨率设置为第二分辨率,所述第一分辨率低于所述第二分辨率。
结合第二方面,在一种可能的实现方式中,所述方法还包括:对所述预测帧的第一目标颜色图像中的空白区域进行填充,得到预测帧的第二目标颜色图像,所述第二目标颜色图像为所述预测帧的显示图像。
第三方面,本申请实施例提供用于图像处理的装置,该装置包括:处理器和存储器;存储器存储计算机执行指令;处理器执行存储器存储的计算机执行指令,使得终端设备执行如第一方面或第二方面的方法。
第四方面,本申请实施例提供一种计算机可读存储介质,计算机可读存储介质存储有计算机程序。计算机程序被处理器执行时实现如第一方面或第二方面的方法。
第五方面,本申请实施例提供一种计算机程序产品,计算机程序产品包括计算机程序,当计算机程序被运行时,使得计算机执行如第一方面或第二方面的方法。
第六方面,本申请实施例提供了一种芯片,芯片包括处理器,处理器用于调用存储器中的计算机程序,以执行如第一方面或第二方面所述的方法。
应当理解的是,本申请的第二方面至第六方面与本申请的第一方面的技术方案相对应,各方面及对应的可行实施方式所取得的有益效果相似,不再赘述。
附图说明
图1是本申请一实施例的生成预测帧的原理示意图;
图2是本申请一实施例的用于图像处理的装置100的软件架构框图;
图3是本申请实施例中的用于图像处理的方法的流程示意图;
图4是本申请一实施例的对第一真实帧的颜色图像进行扭曲处理的示意图;
图5是本申请又一实施例的对第一真实帧的颜色图像进行扭曲处理的示意图;
图6是本申请一实施例的第一像素填充算法的流程示意图;
图7是本申请一实施例的第二像素填充算法的流程示意图;
图8是本申请一实施例的进行渲染过程的流程示意图;
图9是本申请一实施例的用于图像处理的装置900的硬件结构示意图;
图10是本申请一实施例用于图像处理的装置1000的结构示意图;
图11是本申请又一实施例的用于图像处理的装置1100的硬件结构示意图。
具体实施方式
为了便于清楚描述本申请实施例的技术方案,本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
本申请实施例中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
需要说明的是,本申请实施例中的“在……时”,可以为在某种情况发生的瞬时,也可以为在某种情况发生后的一段时间内,本申请实施例对此不作具体限定。此外,本申请实施例提供的显示界面仅作为示例,显示界面还可以包括更多或更少的内容。
图1是本申请一实施例的生成预测帧的原理示意图。如图1所示,预测帧可以指根据两个真实帧的运动矢量等信息生成的预测图像,预测帧可用于插入至两个真实帧之间、之前或者之后,本申请实施例对此不作限定。上述两个真实帧通常可以指连续的两个真实帧。图1中以两个真实帧为第一真实帧和第二真实帧为例进行说明。
在生成预测帧之前,首先需获取两个真实帧的相关信息,例如,真实帧的颜色图像、两个真实帧之间的运动矢量图、真实帧的场景深度信息、两个真实帧的相机夹角等信息等。这些信息可以通过对两个真实帧的渲染过程中获取,例如,可通过渲染指令流获取。
根据两个真实帧之间的运动矢量图,可以预测真实帧的颜色图像的像素在预测帧中的位置,然后将像素放置于预测帧中的相应位置,以得到预测帧的第一目标颜色图像。在根据运动矢量图移动像素的过程中,可能会出现一些无法在两个真实帧之间找到匹配关系的空白区域,对于这些空白区域,可以根据像素填充算法计算填充空白区域的像素,从而得到最终显示的预测帧的颜色图像。其中,像素填充算法是指一种将图像中的受损区域内部像素进行恢复和重建的过程。作为示例而非限定,像素填充算法可包括图像修复算法(image inpainting)等。
图2是本申请一实施例的用于图像处理的装置100的软件架构框图。分层架构将装置100的软件系统分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,可以将软件系统分为四层,分别为应用程序层(applications)、应用程序框架层(application framework)、系统库和硬件层。应理解,图2中仅示出与本申请实施例的用于图像处理的方法相关的功能模块,在实践中,装置100中可包括更多或更少的功能模块,或者部分功能模块也可以被其它功能模块替代。
应用程序层可以包括一系列应用程序包。如图2所示,应用程序层中包括游戏应用、AR应用、VR应用等。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。如图2所示,应用程序框架层可以包括应用框架。应用框架(FrameWork)可以为应用层提供封装众多可以调用的功能模块与API接口。
如图2所示,系统库中可包括渲染模块,渲染模块可用于实现三维图形绘图,图像渲染,合成和图层处理等。作为示例而非限定,渲染模块包括但不限于以下至少一项:开放图形库(open graphics library,OpenGL)、开源计算机视觉库(open source computervision library,OpenCV)、开放运算语言库(open computing language library,OpenCL)。
硬件层包括内存(memory)、图形处理器(GPU)。内存可用于暂时存放中央处理器(central processing unit,CPU)中的运算数据,和与硬盘等外部存储器交换的数据。
GPU是执行图像和图形相关运算工作的处理器。在本申请实施例中,装置100利用渲染模块进行图形处理的过程可通过GPU完成。
在应用程序(例如游戏应用)需要播放视频时,可向应用框架发送发送视频帧的渲染指令,应用框架调用渲染模块进行图像渲染,在渲染过程中,渲染模块可通过GPU对图像进行渲染计算,得到渲染后的画面数据,该画面数据可存储至内存中。在需要显示某一图像时,应用框架可以从内存中读取该图像的画面数据,并发送至显示屏的缓存区域,从而实现图像的显示。
可选地,在本申请实施例中,装置100可以指具有图像处理功能的电子设备。作为示例,装置100可包括但不限于:手机、平板电脑、掌上电脑、笔记本电脑、可穿戴设备,虚拟现实(virtual reality,VR)设备、增强现实(augmented reality,AR)设备等,本申请实施例对此并不限定。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以独立实现,也可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。
如前文所述,为了改善生成预测帧的显示图像质量问题,本申请实施例提供了一种用于图像处理的方法和装置,在该方法中,在预测帧的生成过程中生成覆盖真实帧的全屏网格层,并根据两个真实帧之间的运动矢量,通过对全屏网格层的一轮或者多轮扭曲处理,得到包括空白区域的颜色图像。通过采用扭曲全屏网格层的方式得到预测帧的颜色图像,能够提高预测帧的精确程度。进一步地,在每轮扭曲处理中,可以对图像中的不同类型的对象进行扭曲,并根据多次扭曲的结果得到预测帧的图像,进一步提高预测帧的精确程度和图像质量。
图3是本申请实施例中的图像处理的方法的流程示意图。该方法可以由图2中的装置100执行。如图3所示,该方法包括以下内容。
S301.根据第一真实帧和第二真实帧之间的运动矢量信息,对第一真实帧的颜色图像进行至少一轮扭曲处理,以得到预测帧的第一目标颜色图像,预测帧的第一目标颜色图像包括至少一轮扭曲处理导致的空白区域。
其中,至少一轮扭曲处理中的每轮扭曲处理包括:生成覆盖第一真实帧的全屏网格层,全屏网格层中包括多个网格,每个网格中包括多个像素;根据运动矢量信息,对全屏网格层中的至少部分网格进行扭曲处理;根据扭曲后的全屏网格层以及第一真实帧的颜色图像,输出每轮扭曲处理对应的颜色图像。
可选地,上述第一真实帧和第二真实帧可以包括连续的真实帧,也可以包括不连续的真实帧。上述预测帧可以插入第一真实帧和第二真实帧之间、之前或者之后。
可选地,上述第一真实帧可以指两个真实帧中的前帧图像,也可以指后帧图像。
在一些示例中,上述第一真实帧和第二真实帧之间的运动矢量信息可以在对第一真实帧和第二真实帧的渲染过程中获取。作为示例,上述运动矢量信息可包括不同的类型。例如,运动矢量信息可包括静态物体的运动矢量信息和动态物体的运动矢量信息。动态物体的运动矢量信息可包括普通动态物体的运动矢量信息和带骨骼动画的动态物体的运动矢量信息。
可选地,上述多轮扭曲处理可对应于多种扭曲种类,不同的扭曲种类针对第一真实帧中的不同对象进行扭曲操作。作为示例,上述扭曲种类包括以下至少一项:对静态物体执行的扭曲操作;对动态物体执行的扭曲操作;对远景中的静态物体执行的扭曲操作;对近景中的动态物体执行的扭曲操作;对远景中的动态物体执行的扭曲操作;对近景中的静态物体执行的扭曲操作。
应理解,在每轮扭曲处理时,可选择第一真实帧中的相同属性的对象进行扭曲操作,例如,对静态物体进行扭曲操作,或者对动态物体进行扭曲操作等。
在每轮扭曲处理中,可以对图像中的不同对象进行扭曲,并根据多次扭曲的结果得到预测帧的图像,在每次扭曲操作中只针对一种对象进行操作,而舍弃其余部分,并经多次扭曲的结果合成为一个带有空白区域的颜色图像。根据不同种类的对象进行扭曲操作,可以提高最终得到的颜色图像的精确程度,从而进一步提高图像质量。
上述全屏网格层可以用于铺满整个屏幕画面。每个网格可以为正方形或者矩形。全屏网格层中的网格的密度可以用分辨率来表示。全屏网格层中的网格越多越密,则分辨率越高,反之则分辨率越低。每个网格中包括若干个像素,网格的分辨率越高,则每个网格中包括的像素个数越少。每个网格包括的像素可以用m×m表示,m为大于1的整数。例如,每个网格包括的像素可以为6×6,或者8×8。即每个网格中包括6行×6列像素,或者8行×8列像素。
可选地,可以为全屏网格层设置多种分辨率,每轮扭曲处理中生成的全屏网格层的分辨率可以相同,也可以不同。这可以根据每轮扭曲处理中进行扭曲操作的对象确定。例如,对于远景图像或者静态物体,可以设置较低的全屏网格层的分辨率。对于近景图像或者动态物体,可以设置较高的全屏网格层的分辨率。由于动态物体处于运动状态中,近景图像距离相机更近,受到运动矢量的预测误差的影响更大,因此需要采用较高的分辨率进行网格扭曲,才能获取更精确的预测图像。
其中,近景图像是指场景中的物体处于距离相机较近的位置,远景图像是指场景中的物体处于距离相机比较远的位置。在本申请实施例中,相机是指渲染场景中的虚拟相机,通过该虚拟相机可以从某一角度以及某一方向观察三维场景,以获取三维场景的显示画面。通过改变该虚拟相机的角度和朝向,可以看到三维场景的不同显示画面。
可选地,可以通过第一真实帧的场景深度图,判断扭曲操作的对象是近景图像还是远景图像。其中,场景深度图用于指示第一真实帧中的像素的深度信息。例如,若该扭曲操作的对象的大部分像素的深度大于某一预设阈值,则判断该对象为远景图像。若该扭曲操作的对象的大部分像素的深度小于该预设阈值,则判断该对象为近景图像。
可选地,可以根据第一真实帧的全屏语义图像,判断扭曲操作的对象是动态物体还是静态物体。其中,全屏语义图像也可以称为掩膜图像,是指用于标记第一真实帧的不同种类区域的图像,可以通过对第一真实帧进行掩膜遮挡得到。通过采样全屏语义图像,可以确定第一真实帧中的任一像素的种类。例如,在全屏语义图像中,可以将静态物体所在区域的像素值标记为0,将普通动态物体所在区域的像素值标记为1,将带骨骼动画的动态物体的像素值标记为2。
在一些示例中,在确定使用的全屏网格层的分辨率的方案中,多轮扭曲操作对应的全屏网格层可以使用固定分辨率,也可以使用可变分辨率。例如,在多轮扭曲操作中均使用分辨率较高的网格。或者为了节省算力和功耗,可以根据每轮扭曲操作的对象不同,确定使用的分辨率。例如,若一轮扭曲处理的对象为远景且为静态物体,则可以采用较低分辨率,其余情况下则采用较高分辨率。
例如,在至少一轮扭曲处理中的第i轮处理的对象为远景中的静态物体的情况下,将第i轮处理中采用的全屏网格层的分辨率设置为第一分辨率,i为大于等于1的整数;在至少一轮扭曲处理中的第i轮处理的对象为近景中的静态物体或者动态物体的情况下,将第i轮处理中采用的全屏网格层的分辨率设置为第二分辨率,第一分辨率低于第二分辨率。
其中,关于每轮扭曲处理的具体实现,可参考下文中的图4和图5中的相关描述。
S302.对预测帧的第一目标颜色图像中的空白区域进行填充,得到预测帧的第二目标颜色图像,第二目标颜色图像为预测帧的显示图像。
可选地,在对第一目标颜色图像中的空白区域进行填充时,可以采用固定的像素填充算法,也可以根据相机夹角所属的阈值范围,从多个候选像素填充算法中选择目标像素填充算法,以进行空白区域的填充。由于不同的像素填充算法适合于不同的场景,因此,根据相机夹角的阈值灵活地选择进行空白区域填充的像素填充算法,能够提高预测帧的显示图像的预测精确程度和图像质量。
例如,确定第一真实帧和第二真实帧之间的相机夹角所属的阈值范围;根据相机夹角所属的阈值范围,从至少两个候选像素填充算法中选择目标像素填充算法;根据目标像素填充算法,对第一目标颜色图像中的空白区域进行填充,以得到第二目标颜色图像。
在一些示例中,可以设置第一候选像素填充算法和第二候选像素填充算法,分别适用于相机夹角较大和相机夹角较小的情形。例如,在相机夹角小于第一夹角阈值的情况下,选择第一像素填充算法为目标像素填充算法,第一像素填充算法通过采样待填充像素周围的静态物体的像素实现像素填充;在相机夹角大于第一夹角阈值的情况下,选择第二像素填充算法为目标像素填充算法,第二像素填充算法通过采样待填充像素周围的静态物体以及动态物体的像素实现像素填充。其中,第一夹角阈值的具体取值可根据实践确定,此处不再赘述。关于像素填充算法的具体实现可以参考下文中的图6和图7中的相关描述。
如前文,上述至少一轮扭曲处理中的每轮扭曲处理针对的对象的类型不同,可根据扭曲处理的对象类型,确定扭曲处理的轮数。接下来以图4和图5为例,描述本申请实施例中的对图像进行扭曲处理的具体过程。
图4是本申请一实施例的对第一真实帧的颜色图像进行扭曲处理的示意图。如图4所示,上述至少一轮扭曲处理包括两轮扭曲处理。其中,第一轮扭曲处理是针对静态物体的扭曲处理,第二轮扭曲处理是针对动态物体的扭曲处理。可选地,本申请实施例对扭曲处理的对象的次序不作限定。也可以先执行针对动态物体的扭曲处理,再执行针对静态物体的扭曲处理。
可选地,两轮扭曲处理中分别对应的第一全屏网格层和第二全屏网格层的分辨率可以相同,也可以不同。例如,在分辨率相同的情况下,第一全屏网格层的分辨率和第二全屏网格层的分辨率均为8×8。或者,在分辨率不同的情况下,第一全屏网格层的分辨率低于第二全屏网格层,例如,第一全屏网格层的分辨率为16×16,第二全屏网格层的分辨率为8×8。
具体地,在第一轮扭曲处理中,可以包括以下步骤:
S401.生成覆盖第一真实帧的第一全屏网格层。
S402.根据静态物体的运动矢量信息,对第一全屏网格层中的网格顶点进行偏移,得到扭曲后的第一全屏网格层。
其中,在网格扭曲过程中,根据静态物体的运动矢量信息只对网格顶点进行偏移拉伸,而不是针对每个像素进行偏移拉伸,可以提高扭曲操作的计算效率。
S403.根据扭曲后的第一全屏网格层,将第一真实帧的颜色图像中的静态物体的像素输出至空白图像中,以得到第一颜色图像。
其中,该空白图像可以是新建空白图像。在获取第一颜色图像的过程中,可以根据第一真实帧的全屏语义图像,判断第一真实帧的颜色图像中的每个像素是否属于静态物体的像素,若属于,则将该像素输出至空白图像中,若不属于,则放弃该像素。即只向空白图像中输出静态物体的像素,而放弃其余类型的对象的像素。
例如,得到第一颜色图像的具体过程包括:根据第一真实帧的全屏语义图像,判断第一像素是属于静态物体还是动态物体,第一像素为第一真实帧的颜色图像中的任一像素;在第一像素属于静态物体的情况下,将第一像素输出至空白图像中的第一位置中,以得到第一颜色图像,第一位置是第一像素在扭曲后的第一全屏网格层中的对应位置;在第一像素属于动态物体的情况下,不向空白图像输出第一像素。
在第二轮扭曲处理中,可以包括以下步骤:
S404.生成覆盖第一真实帧的第二全屏网格层。
S405.根据动态物体的运动矢量信息,对第二全屏网格中的网格顶点进行偏移,得到扭曲后的第二全屏网格层。
其中,在网格扭曲过程中,根据动态物体的运动矢量信息只对网格顶点进行偏移拉伸,而不是针对每个像素进行偏移拉伸,可以提高扭曲操作的计算效率。
可选地,上述动态物体的运动矢量信息可包括普通动态物体的运动矢量信息和带骨骼动画的动态物体的运动矢量信息。
S406.根据扭曲后的第二全屏网格层,将第一真实帧的颜色图像中的动态物体的像素输出至第一颜色图像中,以得到第一目标颜色图像。
在获取第一目标颜色图像的过程中,可以根据第一真实帧的全屏语义图像,判断第一真实帧的颜色图像中的每个像素是否属于动态物体的像素,若属于,则将该像素输出至第一颜色图像中,若不属于,则放弃该像素。即只向第一颜色图像中输出动态物体的像素,而放弃其余类型的对象的像素。
例如,得到第一目标颜色图像的具体过程包括:根据第一真实帧的全屏语义图像,判断第二像素是属于静态物体还是动态物体,第二像素为第一真实帧的颜色图像中的任一像素;在第二像素属于动态物体的情况下,将第二像素输出至第一颜色图像中的第二位置中,以得到第一目标颜色图像,第二位置是第二像素在扭曲后的第二全屏网格层中的对应位置;在第二像素属于静态物体的情况下,不向第一颜色图像输出第二像素。
图5是本申请又一实施例的对第一真实帧的颜色图像进行扭曲处理的示意图。如图5所示,上述至少一轮扭曲处理包括四轮扭曲处理。其中,第一轮扭曲处理是针对远景中的静态物体的扭曲处理,第二轮扭曲处理是针对近景中的静态物体的扭曲处理。第三轮扭曲处理是针对远景中的动态物体的扭曲处理,第四轮扭曲处理是针对近景中的动态物体的扭曲处理。可选地,本申请实施例对扭曲处理的对象的次序不作限定。上述多轮扭曲处理针对的对象的次序也可以改变。
可选地,上述四轮扭曲处理对应的第一全屏网格层至第四全屏网格层的分辨率可以相同,也可以不同。在分辨率不同的情况下,第一全屏网格层的分辨率可低于其余三个全屏网格层。例如,第一全屏网格层的分辨率为16×16,第二全屏网格层至第四全屏网格层的分辨率为8×8。
具体地,第一轮扭曲处理是针对远景中的静态物体的扭曲处理,在第一轮扭曲处理中,可以包括以下步骤:
S501.生成覆盖第一真实帧的第一全屏网格层。
S502.根据远景中的静态物体的运动矢量信息,对第一全屏网格层中的网格顶点进行偏移,得到扭曲后的第一全屏网格层。
S503.根据扭曲后的第一全屏网格层,将第一真实帧的颜色图像中的远景中的静态物体的像素输出至空白图像中,以得到第一颜色图像。
可选地,在获取第一颜色图像的过程中,可以根据第一真实帧的全屏语义图像,判断第一真实帧的颜色图像中的每个像素是否属于静态物体的像素,若属于,则进一步根据场景深度图判断该像素是否属于远景图像,若属于远景图像,则将该像素输出至空白图像中。若不属于静态物体或者不属于远景图像,则放弃该像素。即只向空白图像中输出远景中的静态物体的像素,而放弃其余类型的对象的像素。
例如,根据第一真实帧的全屏语义图像,判断第一像素是属于静态物体还是动态物体,第一像素为第一真实帧的颜色图像中的任一像素;在第一像素属于静态物体的情况下,根据第一真实帧的场景深度图,确定第一像素的深度是否大于预设深度阈值D;在第一像素的深度大于预设深度阈值D的情况下,将第一像素输出至空白图像中的第一位置中,以得到第一颜色图像,第一位置是第一像素在扭曲后的第一全屏网格层中的对应位置;在第一像素的深度小于预设深度阈值D的情况下,不向空白图像输出第一像素;在第一像素属于动态物体的情况下,不向空白图像输出第一像素。
可选地,若第一像素的深度大于预设深度阈值D,则表示该第一像素属于远景图像;若小于预设深度阈值D,则表示该第一像素属于近景图像。上述预设深度阈值D的具体赋值可以根据实践确定。
第二轮扭曲处理是针对近景中的静态物体的扭曲处理,在第二轮扭曲处理中,可以包括以下步骤:
S504.生成覆盖第一真实帧的第二全屏网格层。
S505.根据近景中的静态物体的运动矢量信息,对第二全屏网格层中的网格顶点进行偏移,得到扭曲后的第二全屏网格层。
S506.根据扭曲后的第二全屏网格层,将第一真实帧的颜色图像中的近景中的静态物体的像素输出至第一颜色图像中,以得到第二颜色图像。
可选地,在获取第二颜色图像的过程中,可以根据第一真实帧的全屏语义图像,判断第一真实帧的颜色图像中的每个像素是否属于静态物体的像素,若属于,则进一步根据场景深度图判断该像素是否属于近景图像,若属于近景图像,则将该像素输出至第一颜色图像中。对于不属于静态物体或者不属于近景图像的情形,则放弃该像素。即只向第一颜色图像中输出近景中的静态物体的像素,而放弃其余类型的对象的像素。
第三轮扭曲处理是针对远景中的动态物体的扭曲处理,在第三轮扭曲处理中,可以包括以下步骤:
S507.生成覆盖第一真实帧的第三全屏网格层。
S508.根据远景中的动态物体的运动矢量信息,对第三全屏网格层中的网格顶点进行偏移,得到扭曲后的第三全屏网格层。
S509.根据扭曲后的第三全屏网格层,将第一真实帧的颜色图像中的远景中的动态物体的像素输出至第二颜色图像中,以得到第三颜色图像。
在获取第三颜色图像的过程中,可以根据第一真实帧的全屏语义图像,判断第一真实帧的颜色图像中的每个像素是否属于动态物体的像素,若属于,则进一步根据场景深度图判断该像素是否属于远景图像,若属于远景图像,则将该像素输出至第二颜色图像中,若不属于,则放弃该像素。即只向第二颜色图像中输出远景中的动态物体的像素,而放弃其余类型的对象的像素。
第四轮扭曲处理是针对近景中的动态物体的扭曲处理,在第四轮扭曲处理中,可以包括以下步骤:
S510.生成覆盖第一真实帧的第四全屏网格层。
S511.根据近景中的动态物体的运动矢量信息,对第四全屏网格层中的网格顶点进行偏移,得到扭曲后的第四全屏网格层。
S512.根据扭曲后的第四全屏网格层,将第一真实帧的颜色图像中的近景中的动态物体的像素输出至第三颜色图像中,以得到第一目标颜色图像。
在获取第一目标颜色图像的过程中,可以根据第一真实帧的全屏语义图像,判断第一真实帧的颜色图像中的每个像素是否属于动态物体的像素,若属于,则进一步根据场景深度图判断该像素是否属于近景图像,若属于近景图像,则将该像素输出至第三颜色图像中,若不属于,则放弃该像素。即只向第三颜色图像中输出近景中的动态物体的像素,而放弃其余类型的对象的像素。
接下来结合图6和图7介绍像素填充算法。需要说明的是,像素填充算法的原理是:以预测帧的第一目标颜色图像中的待填充的当前像素为起始点P_0,根据随机的采样偏移值offset多次采样起始点P_0周围的像素的颜色值,并根据多次采样结果进行取均值,得到填充的像素的颜色值。在相机夹角较小的情况下,考虑到动态物体在视频帧之间变化程度较大,而静态物体的变化的程度较小,因此为了填充像素的准确性,可通过采样静态物体的像素填充空白区域,而放弃动态物体的像素。而在相机夹角较大的情况下,静态物体的变化程度也变大,仅通过采样静态物体的像素可能导致无法采样到有效像素,因此,第二像素填充算法中可同时采样静态物体和动态物体的像素,以填充空白区域。
图6是本申请一实施例的第一像素填充算法的流程示意图。其中,图6中的第一像素填充算法适用于相机夹角较小的情况。参见图6,第一像素填充算法包括以下内容。
S601.确定待填充的第一像素,将第一像素的坐标点确定为起始点P_0。
其中,第一像素为第一目标颜色图像中的空白区域中的任一像素。
S602.获取随机采样偏移序列和采样次数N。
其中,随机采样偏移序列用于提供随机的采样偏移值offset,以便于为每次像素采样提供采样的偏移步长和采样方向。例如,采样偏移值可表示为(Δx,Δy)。采样次数N用于规定针对第一像素采样其周围像素的次数,N为大于1的整数。
S603.根据随机采样偏移序列,对第一像素周围的像素进行N次采样,以获取N次采样的像素的颜色值之和color。
例如,在N次采样中的第i次采样中,可依次从随机采样序列中获取采样偏移值offset_i,计算采样坐标P_i=P_0+offset_i。i为大于等于1的整数。1≤i≤N。
根据采样坐标P_i采样第一目标颜色图像和全屏语义图像,如果采样到的全屏语义图像的像素表示是静态像素,则将采样第一目标颜色图像的像素的颜色值结果累加到color中。如果采样全屏语义语义图像表示是动态像素,则不做任何操作。
S604.获取N次采样的像素的颜色值的均值color’。
其中,均值color’可表示为:color’=color/N。
S605.输出N次采样的像素的颜色值的均值color’作为第一像素的颜色值。
需要说明的是,图6是第一像素填充算法的示例性说明,在实践中可对图6中的步骤进行适当的变形或者增删,得到的方案依然落入本申请实施例的保护范围。
图7是本申请一实施例的第二像素填充算法的流程示意图。图7适应于相机夹角较大的情况。参见图7,第二像素填充算法包括以下内容。
S701.确定待填充的第一像素,将第一像素的坐标点确定为起始点P_0。
其中,第一像素为第一目标颜色图像中的空白区域中的任一像素。
S702.获取随机采样偏移序列和采样次数N。
其中,随时采样偏移序列用于提供随机的采样偏移值offset,以便于为每次像素采样提供采样的偏移步长和采样方向。例如,采样偏移值可表示为(Δx,Δy)。采样次数N用于规定针对第一像素采样其周围像素的次数,N为大于1的整数。
S703.根据随机采样偏移序列,对第一像素周围的像素进行N次采样,以获取N次采样的像素的颜色值之和color,在N次采样中只采样静态物体的像素。
例如,在N次采样中的第i次采样中,可依次从随机采样序列中获取采样偏移值offset_i,计算采样坐标P_i=P_0+offset_i。i为大于等于1的整数。1≤i≤N。
根据采样坐标P_i采样第一目标颜色图像和全屏语义图像,如果采样到的全屏语义图像的像素表示是静态像素,则将采样第一目标颜色图像的像素的颜色值结果累加到color中。如果采样全屏语义语义图像表示是动态像素,则不做任何操作。
S704.若color不等于0,则输出N次采样的像素的颜色值的均值color’作为第一像素的颜色值。
其中,均值color’可表示为:color’=color/N。
S705.若color等于0,则重新对第一像素周围的像素进行M次采样,得到M次采样的颜色值之和color。在M次采样中可采样静态物体和动态物体的像素,M为大于1的整数。
S706.根据M次采样得到的颜色值之和color,获取M次采样的像素的颜色值的均值color’。
S707.输出M次采样的像素的颜色值的均值color’作为第一像素的颜色值。
需要说明的是,图7是第二像素填充算法的示例性说明,在实践中可对图7中的步骤进行适当的变形或者增删,得到的方案依然落入本申请实施例的保护范围。
图8是本申请一实施例的进行渲染过程的流程示意图。图8中以渲染游戏应用中的显示界面为例进行说明。如图8所示,该方法包括以下内容。
S801.游戏应用向渲染模块发送渲染指令流,上述渲染指令流用于指示渲染游戏中的视频帧。
其中,渲染模块在处理渲染指令流的过程中,可获取用户界面(user interface,UI)指令。例如,渲染模块可根据游戏渲染指令特性,识别用于绘制游戏UI的指令。UI指令包括但不限于:资源绑定指令,状态设置指令和绘制指令等。并将这些指令保存在指令流缓冲区中以备后续使用。
S802.渲染模块根据渲染指令流,调用GPU绘制真实帧。
S803.在绘制真实帧的过程中,获取两个真实帧的全屏语义图像、场景深度图以及颜色图。
其中,在绘制真实帧的过程中,可以根据游戏渲染指令特性,材质信息以及指令调用规律等,对每一个渲染指令进行动静判别。如果是静态物体的绘制,则设置该渲染指令的stencil value是0。stencil value表示模板值。如果是普通动态物体绘制,设置该渲染指令的stencil value是1。如果是带骨骼动画的动态物体绘制,则将连续两帧的模型三维空间坐标信息保存到一个缓冲区中,用于后续的运动矢量计算,同时设置该渲染指令的stencil value是2。
渲染指令完成之后,可生成一张全屏语义图,其中静态物体覆盖的像素值是0,普通动态物体覆盖的像素值是1,带骨骼动画的动态物体的像素值是2。
S804.根据两个真实帧的相机夹角,确定生成预测帧的策略。
其中,若相机夹角小于或等于第二预设夹角,则可以执行策略1。若相机夹角大于或等于第三预设夹角,则可以执行策略2。若相机夹角处于第二预设夹角和第三预设夹角之间,则执行策略3。
其中,第三预设夹角大于第二预设夹角,第二预设夹角和第三预设夹角的具体取值可根据实践确定,此处不作限定。作为示例,第二预设夹角可以为2°,第三预设夹角可以为6°。
策略1包括步骤S805~S808:
S805.获取两个真实帧之间的运动矢量图。
可选地,对于获取运动矢量图的具体方式,本申请实施例不作限定。
作为示例,在获取运动矢量图的过程中,可以利用不同的计算方法分别获取带骨骼动画的动态物体的运动矢量、普通动态物体的运动矢量、静态物体的运动矢量,并将以上三种类型的运动矢量合并在一起,得到运动矢量图。
通过不同的计算方法计算不同类型的对象的运动矢量,能够提高每种类型的对象的运动矢量的精确程度,进而提高合并后的运动矢量图的精确程度。
例如,对于静态物体,可以利用场景深度图和虚拟相机的变化矩阵计算运动矢量。具体地,可通过采样场景深度图对应位置的深度值和采样位置的图像坐标,构建标准化设备坐标(normalized device coordinates,NDC)。在获取NDC坐标之后,通过两个真实帧之间的相机空间矩阵和投影矩阵,计算出当前像素的世界空间坐标在预测帧图像上的图像坐标,从而获取逐像素的运动矢量数据。
对于带骨骼动画的动态物体,可以根据其模型计算运动矢量。例如,可以从真实帧的渲染指令流中标记出每个带骨骼动画的模型渲染指令,每个带骨骼动画的模型具有对应的变换反馈缓存(Transform feedback buffer)。修改真实帧的带骨骼动画模型的渲染算法,增加将坐标变换后的每个模型顶点的NDC坐标保存到对应的变换反馈缓存中的功能,则得到在两个真实帧中的带骨骼动画模型的每个顶点的图像空间坐标。创建新的渲染指令,计算带骨骼动画模型的每个顶点的运动矢量,然后利用GPU的光栅化功能,对顶点覆盖的像素区域内的每个像素通过顶点运动矢量的线性插值的方式得到像素对应的运动矢量。
对于普通动态物体,可以通过采样第一真实帧的颜色图像对应位置的颜色值以及周围一定区域的颜色值分布,通过迭代优化的匹配算法在第二真实帧的颜色图像上寻找最接近该图像分布的图像数据,以估计出运动矢量。首先根据带骨骼动画的动态物体的顶点数据,分别计算在图像空间下的坐标,利用差值计算逐顶点的运动矢量,然后光栅化插值成像素数据渲染到运动矢量图像上。
利用颜色图像,语义图像以及深度图像计算运动矢量。对待计算的运动矢量图像上的每个像素,采样语义图像上对应位置的数据,获得语义信息。
S806.对第一真实帧进行至少一轮扭曲处理,得到预测帧的第一目标颜色图像。
其中,对于进行至少一轮扭曲处理的具体描述,可参考图3至图5中的相关内容,为了简洁,此处不再赘述。
S807.填充第一目标颜色图像中的空白区域,以得到预测帧的第二目标颜色图像,第二目标颜色图像是预测帧的显示图像。
其中,关于填充第一目标颜色图像中的空白区域的具体过程,可参考图3、图6以及图7中的相关内容,为了简洁,此处不再描述。
S808.进行UI渲染,以形成预测帧的送显图像。
作为示例,UI渲染包括:将预测帧的显示图像作为渲染目标,在该渲染目标之上执行S801中存储的UI渲染指令流,将UI信息绘制到预测帧的显示图像上,形成一帧可用于送显的完整视频帧。
策略2包括步骤S809和S810:
S809.利用图像复用或者图像混合获取预测帧的颜色图像。
其中,图像复用是指将两个真实帧中的任意一个真实帧作为预测帧的颜色图像输出。图像混合是指将两个真实帧的图像按照进行半透明混合,并将混合得到的图像作为预测帧的颜色图像输出。
应理解,策略2适用于两个真实帧之间的相机夹角较大的情形。若相机夹角大于或等于第三预设夹角,则表示当前游戏画面处于大幅晃动的状态,因此预测帧计算所需的信息缺失过大,算法生成的结果将不准确,因此可以采用图像复用或者图像混合的方式获取预测帧。
S810.进行UI渲染,以形成预测帧的送显图像。
作为示例,UI渲染包括:将预测帧的显示图像作为渲染目标,在该渲染目标之上执行S801中存储的UI渲染指令流,将UI信息绘制到预测帧的显示图像上,形成一帧可用于送显的完整视频帧。
策略3包括步骤S811:
S811.终止生成预测帧的过程。
应理解,若两个真实帧之间的相机夹角在第二夹角阈值和第三夹角阈值之间的范围之内,则表明当前场景下算法无法生成画质可接受的预测帧图像,因此退出帧预测方案,恢复游戏的正常渲染。
上面结合图1-图8,对本申请实施例提供的用于图像处理的方法进行了说明,下面对本申请实施例提供的执行上述方法的装置进行描述。
为了能够更好地理解本申请实施例,下面对本申请实施例的用于图像处理的装置的结构进行介绍。
图9示出了用于图像处理的装置900的硬件结构示意图。用于图像处理的装置900可以包括处理器110,外部存储器接口120,内部存储器121,传感器模块180,显示屏194。
可以理解的是,本申请实施例示意的结构并不构成对用于图像处理的装置900的具体限定。在本申请另一些实施例中,用于图像处理的装置900可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),视频编解码器等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,是示意性说明,并不构成对用于图像处理的装置900的结构限定。在本申请另一些实施例中,用于图像处理的装置900也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
装置900通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像、显示视频和接收滑动操作等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organiclight-emittingdiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diod,AMOLED),柔性发光二极管(flex light-emittingdiode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dotlightemitting diodes,QLED)等。在一些实施例中,装置900可以包括1个或N个显示屏194,N为大于1的正整数。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展用于图像处理的装置900的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,可执行程序代码包括指令。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储用于图像处理的装置900使用过程中所创建的数据(比如音频数据,电话本等)等。
传感器模块180可以包括压力传感器,触摸传感器等。
图10为本申请实施例提供的一种用于图像处理的装置1000的结构示意图,该装置1000可以包括电子设备,或者也可以包括电子设备内的芯片或芯片系统。装置1000包括执行图3至图8中的用于图像处理的方法的功能单元。
如图10所示,装置1000包括扭曲单元1010和填充单元1020。
扭曲单元1010用于根据第一真实帧和第二真实帧之间的运动矢量信息,对第一真实帧的颜色图像进行至少一轮扭曲处理,以得到预测帧的第一目标颜色图像,预测帧的第一目标颜色图像包括至少一轮扭曲处理导致的空白区域。其中,至少一轮扭曲处理中的每轮扭曲处理包括:生成覆盖第一真实帧的全屏网格层,全屏网格层中包括多个网格,每个网格中包括多个像素;根据运动矢量信息,对全屏网格层中的至少部分网格进行扭曲处理;根据扭曲后的全屏网格层以及第一真实帧的颜色图像,输出每轮扭曲处理对应的颜色图像。
填充单元1020用于对预测帧的第一目标颜色图像中的空白区域进行填充,得到预测帧的第二目标颜色图像,第二目标颜色图像为预测帧的显示图像。
图11是本申请实施例提供的另一种用于图像处理的装置1100的硬件结构示意图,如图11所示,该装置1100包括处理器1101,通信线路1104以及至少一个通信接口(图11中示例性的以通信接口1103为例进行说明)。
处理器1101可包括通用中央处理器(central processing unit,CPU)、微处理器、特定应用集成电路(application-specific integrated circuit,ASIC)、GPU或一个或多个用于控制本申请方案程序执行的集成电路。
通信线路1104可包括在上述组件之间传送信息的电路。
通信接口1103,使用任何收发器一类的装置,用于与其他设备或通信网络通信,如以太网,无线局域网(wireless local area networks,WLAN)等。
可能的,该用于图像处理的装置还可以包括存储器1102。
存储器1102可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compactdisc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过通信线路1104与处理器相连接。存储器也可以和处理器集成在一起。
其中,存储器1102用于存储执行本申请方案的计算机执行指令,并由处理器1101来控制执行。处理器1101用于执行存储器1102中存储的计算机执行指令,从而实现本申请实施例所提供的用于视频裁剪的方法。
可能的,本申请实施例中的计算机执行指令也可以称之为应用程序代码,本申请实施例对此不作具体限定。
如图11所示,在具体实现中,作为一种实施例,处理器1101可以包括一个或多个CPU,也可以包括一个或多个GPU。
本申请实施例提供一种电子设备,该电子设备包括:处理器和存储器;存储器存储计算机执行指令;处理器执行存储器存储的计算机执行指令,使得电子设备执行上述用于图像处理的方法。
本申请实施例提供一种芯片。芯片包括处理器,处理器用于调用存储器中的计算机程序,以执行上述实施例中的用于图像处理的方法。其实现原理和技术效果与上述相关实施例类似,此处不再赘述。
本申请实施例还提供了一种计算机可读存储介质。计算机可读存储介质存储有计算机程序。计算机程序被处理器执行时实现上述方法。上述实施例中描述的方法可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。如果在软件中实现,则功能可以作为一个或多个指令或代码存储在计算机可读介质上或者在计算机可读介质上传输。计算机可读介质可以包括计算机存储介质和通信介质,还可以包括任何可以将计算机程序从一个地方传送到另一个地方的介质。存储介质可以是可由计算机访问的任何目标介质。
一种可能的实现方式中,计算机可读介质可以包括RAM,ROM,只读光盘(compactdisc read-only memory,CD-ROM)或其它光盘存储器,磁盘存储器或其它磁存储设备,或目标于承载的任何其它介质或以指令或数据结构的形式存储所需的程序代码,并且可由计算机访问。而且,任何连接被适当地称为计算机可读介质。例如,如果使用同轴电缆,光纤电缆,双绞线,数字用户线(Digital Subscriber Line,DSL)或无线技术(如红外,无线电和微波)从网站,服务器或其它远程源传输软件,则同轴电缆,光纤电缆,双绞线,DSL或诸如红外,无线电和微波之类的无线技术包括在介质的定义中。如本文所使用的磁盘和光盘包括光盘,激光盘,光盘,数字通用光盘(Digital Versatile Disc,DVD),软盘和蓝光盘,其中磁盘通常以磁性方式再现数据,而光盘利用激光光学地再现数据。上述的组合也应包括在计算机可读介质的范围内。
本申请实施例提供一种计算机程序产品,计算机程序产品包括计算机程序,当计算机程序被运行时,使得计算机执行上述方法。
本申请实施例是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程设备的处理单元以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理单元执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
以上的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
Claims (18)
1.一种用于图像处理的方法,其特征在于,包括:
根据第一真实帧和第二真实帧之间的运动矢量信息,对所述第一真实帧的颜色图像进行至少一轮扭曲处理,以得到预测帧的第一目标颜色图像,所述预测帧的第一目标颜色图像包括所述至少一轮扭曲处理导致的空白区域;
其中,所述至少一轮扭曲处理中的每轮扭曲处理包括:生成覆盖所述第一真实帧的全屏网格层,所述全屏网格层中包括多个网格,每个网格中包括多个像素;根据所述运动矢量信息,对所述全屏网格层中的至少部分网格进行扭曲处理;根据扭曲后的所述全屏网格层以及所述第一真实帧的颜色图像,输出每轮扭曲处理对应的颜色图像;
对所述预测帧的第一目标颜色图像中的空白区域进行填充,得到预测帧的第二目标颜色图像,所述第二目标颜色图像为所述预测帧的显示图像。
2.如权利要求1所述的方法,其特征在于,所述至少一轮扭曲处理包括多轮扭曲处理,所述多轮扭曲处理分别对应于多种扭曲种类,所述多种扭曲种类包括以下至少一项:
对静态物体执行的扭曲操作;
对动态物体执行的扭曲操作;
对远景中的静态物体执行的扭曲操作;
对近景中的动态物体执行的扭曲操作;
对远景中的动态物体执行的扭曲操作;
对近景中的静态物体执行的扭曲操作。
3.如权利要求1或2所述的方法,其特征在于,所述至少一轮扭曲处理包括多轮扭曲处理,所述多轮扭曲处理中的至少两轮扭曲处理对应的全屏网格层的分辨率不同。
4.如权利要求1至3中任一项所述的方法,其特征在于,所述方法还包括:
在所述至少一轮扭曲处理中的第i轮处理的对象为远景中的静态物体的情况下,将所述第i轮处理中采用的全屏网格层的分辨率设置为第一分辨率,i为大于等于1的整数;
在所述至少一轮扭曲处理中的第i轮处理的对象为近景中的静态物体或者动态物体的情况下,将所述第i轮处理中采用的全屏网格层的分辨率设置为第二分辨率,所述第一分辨率低于所述第二分辨率。
5.如权利要求1至4中任一项所述的方法,其特征在于,所述至少一轮扭曲处理包括多轮扭曲处理,所述多轮扭曲处理中的第一轮扭曲处理包括:
生成覆盖所述第一真实帧的第一全屏网格层;
根据静态物体的运动矢量信息,对所述第一全屏网格层中的网格顶点进行偏移,得到扭曲后的第一全屏网格层;
根据所述扭曲后的第一全屏网格层,将所述第一真实帧的颜色图像中的静态物体的像素输出至空白图像中,以得到第一颜色图像。
6.如权利要求5所述的方法,其特征在于,所述将所述第一真实帧的颜色图像中的静态物体的像素输出至空白图像中,以得到第一颜色图像,包括:
根据所述第一真实帧的全屏语义图像,判断第一像素是属于静态物体还是动态物体,所述第一像素为所述第一真实帧的颜色图像中的任一像素;
在所述第一像素属于静态物体的情况下,将所述第一像素输出至所述空白图像中的第一位置中,以得到所述第一颜色图像,所述第一位置是所述第一像素在所述扭曲后的第一全屏网格层中的对应位置;
在所述第一像素属于动态物体的情况下,不向所述空白图像输出所述第一像素。
7.如权利要求5或6所述的方法,其特征在于,所述至少一轮扭曲处理中的第二轮扭曲处理包括:
生成覆盖所述第一真实帧的第二全屏网格层;
根据动态物体的运动矢量信息,对所述第二全屏网格中的网格顶点进行偏移,得到扭曲后的第二全屏网格层;
根据所述扭曲后的第二全屏网格层,将所述第一真实帧的颜色图像中的动态物体的像素输出至所述第一颜色图像中,以得到所述第一目标颜色图像。
8.如权利要求7所述的方法,其特征在于,所述根据所述扭曲后的第二全屏网格层,将所述第一真实帧的颜色图像中的动态物体的像素输出至所述第一颜色图像中,以得到所述第一目标颜色图像,包括:
根据所述第一真实帧的全屏语义图像,判断第二像素是属于静态物体还是动态物体,所述第二像素为所述第一真实帧的颜色图像中的任一像素;
在所述第二像素属于动态物体的情况下,将所述第二像素输出至所述第一颜色图像中的第二位置中,以得到所述第一目标颜色图像,所述第二位置是所述第二像素在所述扭曲后的第二全屏网格层中的对应位置;
在所述第二像素属于静态物体的情况下,不向所述第一颜色图像输出所述第二像素。
9.如权利要求1至4中任一项所述的方法,其特征在于,所述至少一轮扭曲处理包括多轮扭曲处理,所述多轮扭曲处理中的第一轮扭曲处理包括:
生成覆盖所述第一真实帧的第一全屏网格层;
根据远景中的静态物体的运动矢量信息,对所述第一全屏网格层中的网格顶点进行偏移,得到扭曲后的第一全屏网格层;
根据所述扭曲后的第一全屏网格层,将所述第一真实帧的颜色图像中的远景中的静态物体的像素输出至空白图像中,以得到第一颜色图像。
10.如权利要求9所述的方法,其特征在于,所述根据所述扭曲后的第一全屏网格层,将所述第一真实帧的颜色图像中的远景中的静态物体的像素输出至空白图像中,以得到第一颜色图像,包括:
根据所述第一真实帧的全屏语义图像,判断第一像素是属于静态物体还是动态物体,所述第一像素为所述第一真实帧的颜色图像中的任一像素;
在所述第一像素属于静态物体的情况下,根据所述第一真实帧的场景深度图,确定所述第一像素的深度是否大于预设深度阈值;
在所述第一像素的深度大于所述预设深度阈值D的情况下,将所述第一像素输出至所述空白图像中的第一位置中,以得到所述第一颜色图像,所述第一位置是所述第一像素在所述扭曲后的第一全屏网格层中的对应位置;
在所述第一像素的深度小于所述预设深度阈值D的情况下,不向所述空白图像输出所述第一像素;
在所述第一像素属于动态物体的情况下,不向所述空白图像输出所述第一像素。
11.如权利要求9或10所述的方法,其特征在于,所述多轮扭曲处理中的第二轮扭曲处理包括:
生成覆盖所述第一真实帧的第二全屏网格层;
根据近景中的静态物体的运动矢量信息,对所述第二全屏网格层中的网格顶点进行偏移,得到扭曲后的第二全屏网格层;
根据所述扭曲后的第二全屏网格层,将所述第一真实帧的颜色图像中的近景中的静态物体的像素输出至所述第一颜色图像中,以得到第二颜色图像。
12.如权利要求11所述的方法,其特征在于,所述多轮扭曲处理中的第三轮扭曲处理包括:
生成覆盖所述第一真实帧的第三全屏网格层;
根据远景中的动态物体的运动矢量信息,对所述第三全屏网格层中的网格顶点进行偏移,得到扭曲后的第三全屏网格层;
根据所述扭曲后的第三全屏网格层,将所述第一真实帧的颜色图像中的动态物体的像素输出至所述第二颜色图像中,以得到第三颜色图像。
13.如权利要求12所述的方法,其特征在于,所述多轮扭曲处理中的第四轮扭曲处理包括:
生成覆盖所述第一真实帧的第四全屏网格层;
根据近景中的动态物体的运动矢量信息,对所述第四全屏网格层中的网格顶点进行偏移,得到扭曲后的第四全屏网格层;
根据所述扭曲后的第四全屏网格层,将所述第一真实帧的颜色图像中的动态物体的像素输出至所述第三颜色图像中,以得到所述第一目标颜色图像。
14.如权利要求1至13中任一项所述的方法,其特征在于,所述对所述预测帧的第一目标颜色图像中的空白区域进行填充,得到预测帧的第二目标颜色图像,包括:
确定所述第一真实帧和第二真实帧之间的相机夹角所属的阈值范围;
根据所述相机夹角所属的阈值范围,从至少两个候选像素填充算法中选择目标像素填充算法;
根据所述目标像素填充算法,对所述第一目标颜色图像中的空白区域进行填充,以得到所述第二目标颜色图像。
15.如权利要求14所述的方法,其特征在于,所述根据所述相机夹角所属的阈值范围,从至少两个候选像素填充算法中选择目标像素填充算法,包括:
在所述相机夹角小于第一夹角阈值的情况下,选择第一像素填充算法为所述目标像素填充算法,其中,所述第一像素填充算法通过采样待填充像素周围的静态物体的像素实现像素填充;
在所述相机夹角大于所述第一夹角阈值的情况下,选择第二像素填充算法为所述目标像素填充算法,其中,所述第二像素填充算法通过采样待填充像素周围的静态物体以及动态物体的像素实现像素填充。
16.一种用于图像处理的装置,其特征在于,所述装置包括:
处理器和存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,使得所述装置执行如权利要求1-15中任一项所述的方法。
17.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-15中任一项所述的方法。
18.一种计算机程序产品,其特征在于,包括计算机程序,当所述计算机程序被运行时,使得计算机执行如权利要求1-15中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211319597.7A CN117974814A (zh) | 2022-10-26 | 2022-10-26 | 用于图像处理的方法、装置及存储介质 |
PCT/CN2023/120794 WO2024087971A1 (zh) | 2022-10-26 | 2023-09-22 | 用于图像处理的方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211319597.7A CN117974814A (zh) | 2022-10-26 | 2022-10-26 | 用于图像处理的方法、装置及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117974814A true CN117974814A (zh) | 2024-05-03 |
Family
ID=90829983
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211319597.7A Pending CN117974814A (zh) | 2022-10-26 | 2022-10-26 | 用于图像处理的方法、装置及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN117974814A (zh) |
WO (1) | WO2024087971A1 (zh) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3516872A4 (en) * | 2016-09-21 | 2020-04-15 | Kakadu R & D Pty Ltd | MODELS AND INFERENCE FOR COMPRESSION AND UPSAMPLING OF VIDEO AND MULTIPLE VIEW IMAGES ANCHORED ON THE BASE |
CN109672886B (zh) * | 2019-01-11 | 2023-07-04 | 京东方科技集团股份有限公司 | 一种图像帧预测方法、装置及头显设备 |
US20240005526A1 (en) * | 2020-11-20 | 2024-01-04 | Huawei Technologies Co., Ltd. | Device and Method for Optimizing Power Consumption During Frames Rendering |
US11831909B2 (en) * | 2021-03-11 | 2023-11-28 | Qualcomm Incorporated | Learned B-frame coding using P-frame coding system |
-
2022
- 2022-10-26 CN CN202211319597.7A patent/CN117974814A/zh active Pending
-
2023
- 2023-09-22 WO PCT/CN2023/120794 patent/WO2024087971A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2024087971A1 (zh) | 2024-05-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230053462A1 (en) | Image rendering method and apparatus, device, medium, and computer program product | |
US9613463B2 (en) | Augmented reality extrapolation techniques | |
US11270492B2 (en) | Graphics processing systems | |
US8913664B2 (en) | Three-dimensional motion mapping for cloud gaming | |
US11704883B2 (en) | Methods and systems for reprojection in augmented-reality displays | |
KR20100103704A (ko) | 그래픽스 처리 시스템의 오프-스크린 표면을 위한 멀티-버퍼 지원 | |
US20170213394A1 (en) | Environmentally mapped virtualization mechanism | |
CN112184575A (zh) | 图像渲染的方法和装置 | |
US12020442B2 (en) | Graphics processing systems | |
US11468629B2 (en) | Methods and apparatus for handling occlusions in split rendering | |
CN114531553B (zh) | 生成特效视频的方法、装置、电子设备及存储介质 | |
CN113469930A (zh) | 图像处理方法、装置、及计算机设备 | |
CN116091329B (zh) | 图像处理方法、装置、设备及存储介质 | |
Somraj et al. | Temporal view synthesis of dynamic scenes through 3D object motion estimation with multi-plane images | |
CN117974814A (zh) | 用于图像处理的方法、装置及存储介质 | |
CN112419147B (zh) | 图像渲染方法及装置 | |
KR100848687B1 (ko) | 3차원 그래픽 처리 장치 및 그것의 동작 방법 | |
CN118135079B (zh) | 基于云端融合的三维场景漫游绘制方法、装置及设备 | |
RU2810701C2 (ru) | Гибридный рендеринг | |
US20230360333A1 (en) | Systems and methods for augmented reality video generation | |
CN116664376A (zh) | 图形处理器、图形处理系统及方法、装置与存储介质 | |
CN117670641A (zh) | 数据处理方法、装置、设备及存储介质 | |
CN117496023A (zh) | 注视点渲染方法、设备、介质和程序 | |
CN116916028A (zh) | 使用虚拟分辨率调整的视频流缩放 | |
CN117596406A (zh) | 利用光流进行帧速率上转换 |
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 |