本发明涉及图像处理领域,尤其涉及一种动态壁纸的显示方法、设备及存储介质。
背景技术:
1、在互联网快速发展的背景下,人们对视频的需求越来越高,同时,以视频为背景的动态壁纸在win上也越来越受欢迎。视频传递、播放无不离不开视频的编解码,而作为动态壁纸,播放视频往往是不断循环播放的,实时解码的性能消耗巨大。
2、目前的视频编解码,如h264和h265(hevc)等,在编码和解码的过程中往往需要消耗较多的硬件资源。如果直接应用为桌面壁纸,相当于在后台不断进行编解码操作,会持续消耗计算机资源。造成了计算资源的浪费。
技术实现思路
1、本发明的主要目的在于解决目前的视频编解码造成了计算资源的浪费的技术问题。
2、本发明第一方面提供了一种动态壁纸的显示方法,所述动态壁纸的显示方法包括:
3、检测到动态壁纸时,将所述动态壁纸的第1帧作为目标动态壁纸的基准帧进行存储,并判断所述动态壁纸的第n+1帧是否与所述动态壁纸的第n+2帧相同,所述n为由0开始递增的整数;
4、若所述动态壁纸的第n+1帧与所述动态壁纸的第n+2帧不相同,对所述动态壁纸的第n+1帧和所述动态壁纸的第n+2帧执行差异区域计算,得到差异区域;
5、将所述差异区域作为所述目标动态壁纸的第n+2帧进行存储,其中,所述动态壁纸中各个帧均完成判断时,得到所述目标动态壁纸;
6、检测到显示请求时,将所述目标动态壁纸中的第1帧作为画布底色;
7、将所述目标动态壁纸的第m+1帧显示在所述画布上,以响应所述显示请求,所述m为由1开始递增的整数且所述m小于等于n+1。
8、可选的,在本发明第一方面的第一种实现方式中,所述将所述动态壁纸的第1帧作为基准帧进行存储,并判断第n+1帧是否与第n+2帧相同的步骤之后,所述方法还包括:
9、若所述动态壁纸的第n+1帧与所述动态壁纸的第n+2帧相同,标识所述动态壁纸的第n+2帧与所述动态壁纸的第n+1帧相同。
10、可选的,在本发明第一方面的第二种实现方式中,所述若所述第n+1帧与所述第n+2帧不相同,对所述第n+1帧和所述第n+2帧执行差异区域计算,得到差异区域的步骤包括:
11、将所述动态壁纸的第n+1帧与所述动态壁纸的第n+2帧执行差异判断,得到初始差异区域;
12、将所述初始差异区域在所述动态壁纸的第n+1帧中对应的第一区域分割为第一碎片集合,并将所述初始差异区域在所述动态壁纸的第n+2帧中对应的第二区域分割为第二碎片集合;
13、在所述第二碎片集合中提取出与所述第一碎片集合存在差异的第三碎片集合;
14、对所述第三碎片集合执行拼接操作,得到所述差异区域。
15、可选的,在本发明第一方面的第三种实现方式中,所述将所述初始差异区域在所述动态壁纸的第n+1帧中对应的第一区域分割为第一碎片集合,并将所述初始差异区域在所述动态壁纸的第n+2帧中对应的第二区域分割为第二碎片集合的步骤包括:
16、根据预设形状,将所述初始差异区域在所述动态壁纸的第n+1帧中对应的第一区域分割为第一碎片集合,并根据预设形状,将所述初始差异区域在所述动态壁纸的第n+2帧中对应的第二区域分割为第二碎片集合。
17、可选的,在本发明第一方面的第四种实现方式中,所述若所述第n+1帧与所述第n+2帧不相同,对所述第n+1帧和所述第n+2帧执行差异区域计算,得到差异区域的步骤包括:
18、将所述动态壁纸的第n+1帧与所述动态壁纸的第n+2帧执行像素点关联,得到像素对应关系;
19、将所述动态壁纸的第n+1帧分割为第一碎片集合,并将所述动态壁纸的第n+2帧对应分割为第二碎片集合;
20、根据所述像素对应关系,在所述第二碎片集合中提取出与所述第一碎片集合存在差异的第三碎片集合;
21、根据所述像素对应关系,对所述第三碎片集合执行拼接操作,得到所述差异区域。
22、可选的,在本发明第一方面的第五种实现方式中,所述检测到动态壁纸时的步骤之前,所述方法还包括:
23、检测到动态壁纸的设置请求时,提取所述设置请求携带的视频;
24、将所述视频作为所述动态壁纸。
25、可选的,在本发明第一方面的第六种实现方式中,所述将所述视频作为所述动态壁纸的步骤包括:
26、调用mediainfo工具检测所述视频的视频格式;
27、若所述视频格式不为rgb格式,根据所述视频格式,在预设转换算法中选择目标转换算法;
28、根据所述目标转换算法,对所述视频执行格式转换操作,得到rgb格式的目标视频,并将实施目标视频作为动态壁纸。
29、可选的,在本发明第一方面的第七种实现方式中,所述检测到动态壁纸时,将所述动态壁纸的第1帧作为目标动态壁纸的基准帧进行存储的步骤之后,所述方法还包括:
30、检测到附加信息的添加指令时,提取所述添加指令携带的文本信息;
31、对所述文本信息执行语义分析,得到分析结果;
32、判断所述分析结果是否在预设的语义类型中对应有目标语义类型;
33、若所述分析结果在预设的语义类型中对应有目标语义类型,在所述基准帧中确定所述目标语义类型关联的目标区域坐标;
34、将所述附加信息渲染至所述目标区域坐标,以更新所述基准帧。
35、本发明第二方面提供了一种动态壁纸的显示设备,包括:存储器和至少一个处理器,所述存储器中存储有指令,所述存储器和所述至少一个处理器通过线路互连;所述至少一个处理器调用所述存储器中的所述指令,以使得所述动态壁纸的显示设备执行上述的动态壁纸的显示方法。
36、本发明的第三方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述的动态壁纸的显示方法。
37、在本发明实施例中,检测到动态壁纸时,动态壁纸的显示设备首先会捕获动态壁纸的第一帧,并将其作为后续比较和处理的基础。后续会逐帧比较动态壁纸的内容,以判断两帧是否相同。当发现两帧内容不同时,会计算这两帧之间的差异区域。将差异区域作为目标动态壁纸的第n+2帧进行存储,这意味着动态壁纸的显示设备会将计算出的差异区域作为新的帧存储起来,从而构建出一个新的动态壁纸。当需要显示动态壁纸时,动态壁纸的显示设备会将第一帧作为画布的背景颜色。将目标动态壁纸的第m+1帧显示在画布上,以响应显示请求。当检测到连续的两帧不同时,只计算这两帧之间的差异区域,而不是重新计算整个画布的内容。大减少了不必要的计算量,特别是对于大面积变化的区域。由于只存储与前一帧有差异的部分,而不是整个新帧,因此存储资源的使用也得到了优化。在大量连续帧的场景下,可以显著减少存储空间的需求。在显示动态壁纸时,动态壁纸的显示设备只更新发生变化的区域,而不是整个画布。避免了不必要的重绘或闪烁,从而减少了gpu和cpu的计算负担。由于可以自动检测动态壁纸内容的变化,因此,能够根据壁纸的实际变化情况调整计算资源的分配。更高效地应对了各种动态内容的变化,进一步减少了计算资源的浪费。