本技术涉及图像处理,具体而言,涉及一种点位帧数据的处理方法、装置、点位帧数据的渲染方法、电子设备、存储介质计算机程序产品。
背景技术:
1、在图像处理领域,插帧是指在原有画面显示的每两帧画面中增加一帧,缩短每帧之间的显示时间,从而提高屏幕显示的刷新频率,提高画面稳定性。现有的插帧方法大多是针对固定的输入帧率和固定的输出帧率进行的插帧,即在插帧时需要重置输入帧率,以通过重置的输入帧率来适应实际输入帧率的变化,从而通过该重置的输入帧率进行插帧。
2、但是,该通过重置的输入帧率的插帧方式无法适应实际输入帧率的实时变化,重置操作存在不及时的问题,会导致重置的输入帧率和实际的输入帧率误差大,从而在插帧时导致无帧可用,或点位帧数据处理卡住或者是不满足插帧条件导致输出帧率降低、插帧失败等情况的发生,引起插针渲染效率低下的问题。
技术实现思路
1、为解决上述技术问题,本技术的实施例提供了一种点位帧数据的处理方法、装置、点位帧数据的渲染方法、电子设备、存储介质计算机程序产品。
2、根据本技术实施例的一个方面,提供了一种点位帧数据的处理方法,包括:获取队列中点位帧数据的相对时间戳,所述相对时间戳用于表征对应的点位帧数据在所述队列中的停留时间;检测当前渲染时间点与所述相对时间戳之间的时间间隔;若所述当前渲染时间点与所述相对时间戳之间的时间间隔的数值小于预设数值,则基于所述点位帧数据进行插帧处理,并将插帧处理后所得到的插帧数据进行渲染。
3、根据本技术实施例的一个方面,提供了一种点位帧数据的处理装置,包括:相对时间戳获取模块,配置为获取队列中点位帧数据的相对时间戳,所述相对时间戳用于表征对应的点位帧数据在所述队列中的停留时间;时间间隔获取模块,配置为检测当前渲染时间点与所述相对时间戳之间的时间间隔;插帧渲染处理模块,配置为若所述当前渲染时间点与所述相对时间戳之间的时间间隔的数值小于预设数值,则基于所述点位帧数据进行插帧处理,并将插帧处理后所得到的插帧数据进行渲染。
4、在一实施例中,所述队列中包括多个点位帧数据;相对时间戳获取模块,包括:入队时间戳获取单元,配置为获取所述队列中各点位帧数据进入所述队列的入队时间戳;帧间抖动延时获取单元,配置为基于所述队列中各点位帧数据的入队时间戳,获取帧间抖动延时;相对时间戳获取单元,配置为基于所述帧间抖动延时和各点位帧数据的入队时间戳,获取各点位帧数据的相对时间戳。
5、在一实施例中,帧间抖动延时获取单元包括:差值获取子单元,配置为计算所述队列中相邻两帧点位帧数据的入队时间戳之间的时间差值,得到多个差值数据;帧间抖动延时获取子单元,配置为将所述多个差值数据进行平滑统计处理,得到所述帧间抖动延时。
6、在一实施例中,相对时间戳获取单元包括:首帧入队时间戳获取子单元,配置为获取所述队列中的首帧入队时间戳;相对时间戳获取子单元,配置为基于所述队列中除第一帧点位帧数据外的其他点位帧数据的入队时间戳与所述首帧入队时间戳之间的差值,以及所述帧间抖动延时,获取所述其他点位帧数据的相对时间戳。
7、在一实施例中,首帧入队时间戳获取子单元包括:第一首帧入队时间戳确定板块,配置为若进入所述队列的点位帧数据为首帧点位帧数据,则将所述首点位帧数据的入队时间作为所述首帧入队时间戳;渲染判断板块,配置为若进入所述队列的点位帧数据不为首帧点位帧数据,则检测进入所述队列的点位帧数据的上一帧点位帧数据是否已被渲染;第二首帧入队时间戳确定板块,配置为若进入所述队列的点位帧数据的上一帧点位帧数据没有被渲染,则将进入所述队列的点位帧数据作为新的首帧点位帧数据,并将进入所述队列的点位帧数据的入队时间作为所述首帧入队时间戳。
8、在一实施例中,点位帧数据的处理装置还包括:首帧渲染判断模块,配置为检测所述队列中的点位帧数据是否为进行首帧渲染的点位帧数据;渲染模块,配置为若所述点帧位数据为进行首帧渲染的点位帧数据,则渲染所述点位帧数据;跳转模块,配置为若所述点帧位数据不为进行首帧渲染的点位帧数据,则执行所述检测当前渲染时间点与所述相对时间戳之间的时间间隔的步骤。
9、在一实施例中,点位帧数据的处理装置还包括:首帧渲染时间戳获取模块,配置为获取所述队列中进行首帧渲染的点位帧数据的首帧渲染时间戳;当前渲染时间点获取模块,配置为以所述首帧渲染时间戳为参照点,基于所述首帧渲染时间戳以及当前时间计算所述当前渲染时间点。
10、在一实施例中,若所述时间间隔不小于所述预设数值,则将所述点位帧数据作为过期帧;插帧渲染处理模块包括:渲染判断单元,配置为若所述队列中除所述点位帧数据外为空,则检测所述点位帧数据的前一帧点位帧数据是否已被渲染;过期帧的数量过去单元,配置为若所述点位帧数据的前一帧点位帧数据没有被渲染,则渲染所述点位帧数据的前一帧点位帧数据,并获取所述队列中过期帧的数量;更新判断单元,配置为若所述过期帧的数量大于预设阈值,则更新所述相对时间戳。
11、在一实施例中,插帧渲染处理模块包括:前帧数据获取单元,配置为若所述队列中除所述点位帧数据外不为空,则获取所述点位帧数据的前一帧点位帧数据的相对时间戳;插帧单元,配置为若所述点位帧数据的前一帧点位帧数据的相对时间戳与所述当前渲染时间点之间的时间间隔的数值不大于所述预设数值,则基于所述点位帧数据以及所述点位帧数据的前一帧点位帧数据获取插帧数据,并进行所述插帧数据的渲染。
12、在一实施例中,插帧单元包括:渲染判断子单元,配置为检测所述点位帧数据的前一帧点位帧数据是否已被渲染;前帧渲染子单元,配置为若所述点位帧数据的前一帧点位帧数据没有被渲染,则渲染所述点位帧数据的前一帧点位帧数据;插帧数据获取子单元,配置为基于所述点位帧数据以及所述点位帧数据的前一帧点位帧数据获取所述插帧数据。
13、在一实施例中,插帧数据获取子单元包括:运动矢量方向夹角获取板块,配置为基于所述点位帧数据以及所述点位帧数据的前一帧点位帧数据,获取所述点位帧数据以及所述点位帧数据的前一帧点位帧数据之间运动矢量方向夹角;第一插帧数据获取板块,配置为基于所述运动矢量方向夹角、所述点位帧数据以及所述点位帧数据的前一帧点位帧数据获取所述插帧数据。
14、在一实施例中,插帧数据获取子单元包括:插帧系数获取板块,配置为基于所述点位帧数据的相对时间戳、所述点位帧数据的前一帧点位帧数据的相对时间戳以及所述当前渲染时间点计算插帧系数;第二插帧数据获取板块,配置为基于所述插帧系数、所述点位帧数据以及所述点位帧数据的前一帧点位帧数据获取所述插帧数据。
15、在一实施例中,插帧系数获取板块包括:权重系数获取子版块,配置为基于所述点位帧数据的相对时间戳与所述当前渲染时间点之间的时间间隔,以及所述点位帧数据的前一帧点位帧数据的相对时间戳与所述当前渲染时间点之间的时间间隔,分别确定所述点位帧数据的插帧权重系数以及所述点位帧数据的前一帧点位帧数据的插帧权重系数;插帧系数获取子版块,配置为将所述点位帧数据的插帧权重系数以及所述点位帧数据的前一帧点位帧数据的插帧权重系数作为所述插帧系数。
16、在一实施例中,点位帧数据的处理装置还包括:丢包指标发送模块,配置为向发送端发送丢包指标,以使得所述发送端基于所述丢包指标所对应的重发次数,重复发送所述点位帧数据至缓冲区;出帧速率获取模块,配置为基于所述缓冲区的尺寸获取出帧速率;队列获取模块,配置为基于所述出帧速率将接收到的点位帧数据送入所述队列。
17、根据本技术实施例的一个方面,提供了一种点位帧数据的渲染方法,应用于第一终端,所述方法包括:采集视频帧,并对所述视频帧进行动作检测处理,得到第一点位帧数据;基于所述第一点位帧数据生成第一队列;接收第二终端所发送的第二点位帧数据,所述第二点位帧数据为针对所述第二终端所采集的视频帧进行动作检测处理后所得到的点位帧数据;基于所述第二点位帧数据生成第二队列,并分别针对第一队列以及第二队列中的点位帧数据执行上所述的点位帧数据的处理方法,以基于所述第一队列以及第二队列中的点位帧数据分别进行渲染。
18、根据本技术实施例的一个方面,提供了一种电子设备,包括一个或多个处理器;存储装置,用于存储一个或多个计算机程序,当所述一个或多个计算机程序被所述一个或多个处理器执行时,使得所述电子设备实现如上所述的点位帧数据的处理方法。
19、根据本技术实施例的一个方面,提供了一种计算机可读存储介质,其上存储有计算机可读指令,当所述计算机可读指令被计算机的处理器执行时,使计算机执行如上所述的点位帧数据的处理方法。
20、根据本技术实施例的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各种可选实施例中提供的点位帧数据的处理方法。
21、根据本技术实施例的一个方面,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如上所述的点位帧数据的处理方法中的步骤。
22、在本技术的实施例所提供的技术方案中,引入了相对时间戳,通过相对时间戳的变化来自适应对应点位帧数据输入帧率的变化,同时引入当前渲染时间,通过时间轴上,渲染时间点和相对时间戳的变化,来判断过期帧和需进行插帧的点位帧数据,无需重置输入帧率来适应实际输入帧率的变化,而是可以自适应输入帧率的实时变化进行插帧计算,高效进行插帧渲染处理。
23、应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术。