本发明涉及图像处理领域,特别涉及一种视频绘制方法及系统。
背景技术:
目前,随着互联网科技的飞速发展,远程网络教学,远程网络监控,远程视频会议,远程数据共享等在日常生活中得到了广泛应用。这些应用极大地方便了用户远距离进行交流和沟通,而在这些应用中,都需要发送端实时传输屏幕的每帧图像,然后接收端需要接收并存储这些多个帧图像到本地然后以一定的帧率将其绘制成一个视频动画并显示出来。当有多个发送端的数据需要发送给同一个接收端时,接收端上会同时显示来自多个发送端的多个视频动画。由于视频绘制操作在计算机上需要大量占用cpu处理时间和大量的内存资源,因此在同时显示多个视频动画时,很可能会出现视频卡顿、花屏的问题。因此,如何降低视频绘制过程中cpu和内存资源的占用同时保证视频动画显示的连贯性已经成为需要迫切解决的问题。
技术实现要素:
有鉴于此,本发明提供一种视频绘制系统,其包括:
绘制单元、计算单元、图像存储单元;
所述图像存储单元用于存储至少两组图像帧数据;所述每组图像帧数据包括帧图像;
所述绘制单元用于根据所述图像存储单元中存储的至少两组图像帧数据绘制相应的至少两组视频;每组所述图像帧数据对应一个视频窗口;
所述计算单元用于实时计算视频窗口总分辨率;
所述绘制单元还根据所述视频窗口的总分辨率调整所述视频窗口的绘制帧率。
根据本发明的一些实施例,当所述视频窗口总分辨率大于一阈值分辨率时,所述绘制单元将所述视频窗口的绘制帧率调整为低于正常帧率的第二帧率。
根据本发明的一些实施例,所述正常帧率为30帧/秒。
根据本发明的一些实施例,所述第二帧率为[1-(窗口分辨率总和-分辨率阈值)/分辨率阈值]×正常帧率。
本发明第二方面提供一种视频绘制方法,包括:
根据图像存储单元中存储的每组图像帧数据绘制视频;每组所述图像帧数据对应一个视频窗口;
实时计算全部所述视频窗口的总分辨率;
当所述视频窗口总分辨率大于一阈值分辨率时,所述绘制单元将所述视频窗口的绘制帧率调整为低于正常帧率的第二帧率。
根据本发明的一些实施例,当被遮挡比例大于一阈值时,调整所述被遮挡窗口的绘制帧率为低于正常帧率的第二帧率。
根据本发明的一些实施例,所述正常帧率为30帧/秒。
根据本发明的一些实施例,所述第二帧率为[1-(窗口分辨率总和-分辨率阈值)/分辨率阈值]×正常帧率。
本发明第三方面提供一种计算机设备,其包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现所述的视频绘制方法的步骤。
本发明第四方面提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现所述的视频绘制方法的步骤。
通过本发明实施例的技术方案,可以在cpu资源有限的情况下合理地节省cpu的占用率,大大提高cpu的图像处理速度,减少绘制的整体时间和次数,使得帧图像的绘制更快地完成,也降低对系统图像处理器及系统内存存储资源的占用。
附图说明
图1是根据本发明实施例的视频绘制系统结构图;
图2是根据本发明实施例的三组视频动画窗口示意图;
图3是根据本发明实施例的视频绘制系统的工作流程。
具体实施方式
以下结合具体实施方式进一步详细说明本发明的技术方案。应当理解,此处描述的具体实施方式仅仅用以解释本发明,并不用于限定本发明。
图1所示为根据本发明实施例的视频绘制系统结构图。
其中,本发明实施例的视频绘制系统包括绘制单元1、计算单元2、图像存储单元3;
其中,存储单元3用于存储要绘制视频的多组图像帧数据。其中,所述的多组指的是至少两组。在本实施例中,以三组图像帧数据为例进行说明。三组图像帧数据中,第一组图像帧数据可以包括100帧图像,第二组图像帧数据可以包括200帧图像,第三组图像帧数据可以包括150帧图像。
图3所示为根据本发明实施例的视频绘制系统的工作流程。
其中,在步骤100,绘制单元1用于对图像存储单元3中存储的多组图像帧数据进行绘制;其中,绘制的过程包括根据每组中的帧图像绘制出每组对应的窗口,并以一定的帧率绘制出视频画面并在对应的窗口中显示;本实施例中,如图2所示,以上述三组图像帧数据为例,绘制单元1需要绘制三组视频动画,其中第一组视频动画根据第一组图像帧数据进行绘制,首先绘制出第一组图像帧数据对应的第一视频动画窗口11,然后将100帧图像以正常绘制帧率绘制成连续的视频动画并在第一视频动画窗口11中显示出来;同理,相应于第二组图像帧数据的第二视频动画窗口12、相应于第三组图像帧数据的第三视频动画窗口13均相应绘制出来。其中,所述正常绘制帧率可以根据cpu的性能进行适应性设置,本实施例中以每秒30帧为例。
然后,在步骤101,计算单元2用于实时计算所有视频动画窗口的分辨率总数;
然后,进入步骤102,计算单元2判断是否所有视频窗口的分辨率总数大于一阈值;若有,则通知绘制单元1;
其中,判断是否所有视频窗口的分辨率总数大于一阈值的计算过程包括:
计算所有视频窗口分辨率之和。
例如,图2所示为共绘制了三个视频窗口,第一个视频窗口的分辨率为1680×1050;第二、第三个视频窗口的分辨率均为1080×1920,则视频窗口的分辨率总和为1680×1050 2×1080×1920;
假设系统预设的分辨率阈值为10×1080×1920,则根据上述计算结果可以判断出视频窗口的分辨率总和小于该阈值,则计算单元2不需要通知绘制单元1;
在另一个实施例中,假设共绘制了11个视频窗口,且每个视频窗口的分辨率均为1080×1920,则视频窗口的分辨率总和为11×1080×1920,即大于所述的阈值,则计算单元2通知绘制单元1降低绘制帧率;
然后进入步骤103,绘制单元1根据计算单元2发来的视频画面信息降低绘制帧率。其中,所述第二帧率可以视情况设置,例如,可以设置成一固定帧率值,例如正常帧率的70%;也可以设置成一平均帧率值,例如:
[1-(窗口分辨率总和-分辨率阈值)/分辨率阈值]×正常帧率
本发明进一步提出一种计算机设备,其包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现所述的视频绘制方法的步骤。
本发明进一步提出一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述任一项技术方案中的视频绘制方法的步骤。
通过本发明实施例的技术方案,可以在cpu资源有限的情况下合理地节省cpu的占用率,大大提高cpu的图像处理速度,减少绘制的整体时间和次数,使得帧图像的绘制更快地完成,也降低对系统图像处理器及系统内存存储资源的占用。
以上的实施方式均为本发明的优选实施方式,并非因此限制本发明的专利保护范围。任何本发明所属的技术领域的技术人员,在不脱离本发明所公开的精神和范围的前提下,对本发明的内容所做的等效结构与等效步骤的变换均落入本发明要求保护的专利范围之内。
1.一种视频绘制系统,包括:
绘制单元、计算单元、图像存储单元;
所述图像存储单元用于存储至少两组图像帧数据;所述每组图像帧数据包括帧图像;
所述绘制单元用于根据所述图像存储单元中存储的至少两组图像帧数据绘制相应的至少两组视频;每组所述图像帧数据对应一个视频窗口;
所述计算单元用于实时计算视频窗口总分辨率;
所述绘制单元还根据所述视频窗口的总分辨率调整所述视频窗口的绘制帧率。
2.根据权利要求1所述的系统,其特征在于:
当所述视频窗口总分辨率大于一阈值分辨率时,所述绘制单元将所述视频窗口的绘制帧率调整为低于正常帧率的第二帧率。
3.根据权利要求2所述的系统,其特征在于:
所述正常帧率为30帧/秒。
4.根据权利要求2所述的系统,其特征在于:
所述第二帧率为[1-(窗口分辨率总和-分辨率阈值)/分辨率阈值]×正常帧率。
5.一种视频绘制方法,包括:
根据图像存储单元中存储的每组图像帧数据绘制视频;每组所述图像帧数据对应一个视频窗口;
实时计算全部所述视频窗口的总分辨率;
当所述视频窗口总分辨率大于一阈值分辨率时,所述绘制单元将所述视频窗口的绘制帧率调整为低于正常帧率的第二帧率。
6.根据权利要求5所述的方法,其特征在于:
当被遮挡比例大于一阈值时,调整所述被遮挡窗口的绘制帧率为低于正常帧率的第二帧率。
7.根据权利要求6所述的方法,其特征在于:
所述正常帧率为30帧/秒。
8.根据权利要求6所述的方法,其特征在于:
所述第二帧率为[1-(窗口分辨率总和-分辨率阈值)/分辨率阈值]×正常帧率。
9.一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求5至8中任一项所述的视频绘制方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求5至8中任一项所述的视频绘制方法的步骤。
技术总结