本技术涉及图片处理,特别涉及一种图片加载检测方法、视频渲染检测方法及相关产品。
背景技术:
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、将第一比例值作为缩小比例对所述第二截图进行缩小,得到所述第一截图;
24、所述获取第一占位图,包括:
25、获取第二占位图,所述第二占位图是指在所述目标图片内容加载过程中或所述目标图片内容加载失败的情况下显示的图片;
26、将所述第一比例值作为缩小比例对所述第二占位图进行缩小,得到所述第一占位图。
27、在其中一个实施例中,所述方法还包括:
28、在所述第一占位图的像素点中不同颜色像素点的分布位置和所述第一截图的像素点中不同颜色像素点的分布位置之间的相似度,超过所述第二比例阈值的情况下,确定所述目标图片内容加载失败。
29、在其中一个实施例中,所述方法还包括:
30、在所述第一颜色的像素点的数量值与所述总数量值的比值,超过所述第一比例阈值的情况下,确定所述目标图片内容加载失败。
31、在其中一个实施例中,所述方法还包括:
32、在加载所述第一图片时,启动图片加载监控,以监控加载所述第一图片的过程中是否存在导致加载失败的异常情形;
33、在监控到加载所述第一图片的过程中存在导致加载失败的异常情形的情况下,确定所述目标图片内容加载失败;
34、所述在加载所述第一图片的加载时长达到加载时间阈值时,获取加载所述第一图片得到的第一截图,包括:
35、在未监控到加载所述第一图片的过程中存在导致加载失败的异常情形的情况下,在加载所述第一图片的加载时长达到所述加载时间阈值时,获取加载所述第一图片得到的第一截图。
36、在其中一个实施例中,所述目标图片内容存在至少两种格式;所述方法还包括:
37、在确定所述目标图片内容加载失败的情况下,加载第二图片;
38、在所述第二图片加载成功的情况下,确定所述目标图片内容加载成功;
39、其中,所述第二图片的图片内容为所述目标图片内容,且所述第二图片和所述第一图片的格式不同。
40、第二方面,本技术还提供了一种视频渲染检测方法,所述方法用于检测直播间视频渲染成功,所述方法包括:
41、在未触发首帧回调的情况下,且播放器渲染所述视频的渲染时长达到渲染时间阈值时,获取渲染后的所述视频的视频图像,其中,所述首帧回调是指播放器完成所述视频的渲染后,发送指示信号,以指示清除显示在视频播放界面的预设背景图像并在所述视频播放界面显示所述视频的过程,所述视频图像是指对所述视频渲染完成后的渲染结果进行截取所形成的图片;
42、确定所述视频图像的像素点的总数量值和所述视频图像中第一颜色的像素点的数量值,所述第一颜色是指所述视频图像中数量值最大的像素点的颜色;
43、在所述第一颜色的像素点的数量值与所述总数量值的比值,未超过第一比例阈值的情况下,确定所述视频渲染成功。
44、采用本方面的视频渲染检测方法,未触发首帧回调则表明播放器并未发送指示信号,此时客户端无法直接知晓视频是否渲染完成。因此,在未触发首帧回调的情况下,可借助渲染视频的渲染时长来判断视频是否渲染完成。当播放器渲染视频的渲染时长达到渲染时间阈值时,表明视频已经渲染完成,此时获取播放出来的渲染后的视频的视频图像,即截取视频渲染完成后的渲染结果。由于视频渲染失败时,可能会显示为绿屏、白屏、黑屏等,此种情况下,对视频渲染完成后的渲染结果进行截取的视频图像,即会出现较大比例的像素点为单一的绿色、白色、黑色等。因此,可以通过检测所获取的视频图像的像素点是否有较大比例为绿色、白色、黑色等单一颜色,来检测渲染完成后的视频是否渲染成功。进而,确定视频图像的像素点的总数量值,并以视频图像中数量值最大的像素点的颜色作为第一颜色,确定第一颜色的像素点的数量值。进一步地,在第一颜色的像素点的数量值与所有像素点对应的总数量值的比值,未超过第一比例阈值的情况下,表明视频图像中不存在任何一种颜色的像素点的数量值过于大,此时能够排除视频图像的像素点超过第一比例阈值的比例为绿色、白色、黑色等单一颜色的可能性。基于此,亦能够排除视频渲染完成后视频播放界面显示为绿屏、白屏、黑屏等渲染失败情形的可能性。进而,能够确定视频渲染成功。通过上述视频渲染检测方法,能够检测出直播间视频渲染成功。
45、在其中一个实施例中,所述获取渲染后的所述视频的视频图像,包括:
46、获取渲染后的所述视频的第一图像,所述第一图像是指对所述视频渲染完成后的渲染结果进行截取所形成的图片;
47、将第一比例值作为缩小比例对所述第一图像进行缩小,得到所述视频图像。
48、在其中一个实施例中,所述确定所述视频图像的像素点的总数量值和所述视频图像中第一颜色的像素点的数量值,包括:
49、在遍历所述视频图像的像素点的过程中,对照颜色的rgb数值,计算出所述视频图像的至少一种颜色的像素点的数量值,并计算出所述视频图像的像素点的所述总数量值;
50、从所述至少一种颜色的像素点的数量值中,确定数量值最大的像素点的颜色为所述第一颜色及确定所述第一颜色的像素点的数量值。
51、在其中一个实施例中,所述方法还包括:
52、在所述第一颜色的像素点的数量值与所述总数量值的比值,超过所述第一比例阈值的情况下,确定所述视频渲染失败。
53、在其中一个实施例中,所述方法还包括:
54、在确定所述视频渲染失败的情况下,将点位字段上报至服务器,所述点位字段包括直播房间标识、直播主机标识、用户终端类型、用户终端的操作系统类型、所述第一颜色的rgb数值、所述第一颜色的像素点的数量值与所述总数量值的比值、图像存储地址和日志存储地址中的至少一个;
55、其中,所述图像存储地址和所述日志存储地址是指将所述视频图像和日志上传至内容分发网络后,所述内容分发网络生成并下发的,用于分别存储所述视频图像和所述日志的存储地址,所述日志记录的内容包括获取所述视频图像的时刻、在所述时刻接收到的用户操作指令中的至少一个。
56、第三方面,本技术还提供了一种图片加载检测装置,所述装置包括:
57、图片加载模块,用于响应于针对目标图片内容的加载请求,加载第一图片,所述第一图片的图片内容为所述目标图片内容;
58、截图获取模块,用于在加载所述第一图片的加载时长达到加载时间阈值时,获取加载所述第一图片得到的第一截图;
59、第一确定模块,用于确定所述第一截图的像素点的总数量值和所述第一截图中第一颜色的像素点的数量值,所述第一颜色是指所述第一截图中数量值最大的像素点的颜色;
60、加载成功确定模块,用于在所述第一颜色的像素点的数量值与所述总数量值的比值,未超过第一比例阈值的情况下,确定所述目标图片内容加载成功。
61、在其中一个实施例中,所述装置还包括:
62、首页渲染模块,用于在接收到打开应用程序的指令的情况下,渲染所述应用程序的首页;
63、所述图片加载模块,还用于在渲染出所述应用程序的首页的情况下,响应于针对所述目标图片内容的加载请求,加载所述第一图片;
64、其中,所述目标图片内容被加载完成后显示在所述应用程序的首页的固定区域。
65、在其中一个实施例中,所述第一确定模块,还用于确定所述第一截图的像素点的所述总数量值、所述第一截图中所述第一颜色的像素点的数量值和所述第一截图的像素点中不同颜色像素点的分布位置;
66、所述加载成功确定模块包括:
67、占位图获取单元,用于在所述第一颜色的像素点的数量值与所述总数量值的比值,未超过所述第一比例阈值的情况下,获取第一占位图,所述第一占位图是指在所述目标图片内容加载过程中或所述目标图片内容加载失败的情况下显示的图片;
68、分布位置获取单元,用于确定所述第一占位图的像素点中不同颜色像素点的分布位置;
69、加载成功确定单元,用于在所述第一占位图的像素点中不同颜色像素点的分布位置和所述第一截图的像素点中不同颜色像素点的分布位置之间的相似度,未超过第二比例阈值的情况下,确定所述目标图片内容加载成功。
70、在其中一个实施例中,所述截图获取模块包括:
71、第二截图获取单元,用于获取加载所述第一图片得到的第二截图,所述第二截图是指对所述第一图片加载完成后的加载结果进行截取所形成的图片;
72、第一截图获取单元,用于将第一比例值作为缩小比例对所述第二截图进行缩小,得到所述第一截图;
73、所述占位图获取单元,还用于获取第二占位图,所述第二占位图是指在所述目标图片内容加载过程中或所述目标图片内容加载失败的情况下显示的图片;将所述第一比例值作为缩小比例对所述第二占位图进行缩小,得到所述第一占位图。
74、在其中一个实施例中,所述装置还包括:
75、第一加载失败确定模块,用于在所述第一占位图的像素点中不同颜色像素点的分布位置和所述第一截图的像素点中不同颜色像素点的分布位置之间的相似度,超过所述第二比例阈值的情况下,确定所述目标图片内容加载失败。
76、在其中一个实施例中,所述装置还包括:
77、第二加载失败确定模块,用于在所述第一颜色的像素点的数量值与所述总数量值的比值,超过所述第一比例阈值的情况下,确定所述目标图片内容加载失败。
78、在其中一个实施例中,所述装置还包括:
79、加载监控模块,用于在加载所述第一图片时,启动图片加载监控,以监控加载所述第一图片的过程中是否存在导致加载失败的异常情形;
80、第三加载失败确定模块,用于在监控到加载所述第一图片的过程中存在导致加载失败的异常情形的情况下,确定所述目标图片内容加载失败;
81、所述截图获取模块,还用于在未监控到加载所述第一图片的过程中存在导致加载失败的异常情形的情况下,在加载所述第一图片的加载时长达到所述加载时间阈值时,获取加载所述第一图片得到的第一截图。
82、在其中一个实施例中,所述目标图片内容存在至少两种格式;所述装置还包括:
83、图片加载容错模块,用于在确定所述目标图片内容加载失败的情况下,加载第二图片;在所述第二图片加载成功的情况下,确定所述目标图片内容加载成功;
84、其中,所述第二图片的图片内容为所述目标图片内容,且所述第二图片和所述第一图片的格式不同。
85、第四方面,本技术还提供了一种视频渲染检测装置,所述装置用于检测直播间视频渲染成功,所述装置包括:
86、图像获取模块,用于在未触发首帧回调的情况下,且播放器渲染所述视频的渲染时长达到渲染时间阈值时,获取渲染后的所述视频的视频图像,其中,所述首帧回调是指播放器完成所述视频的渲染后,发送指示信号,以指示清除显示在视频播放界面的预设背景图像并在所述视频播放界面显示所述视频的过程,所述视频图像是指对所述视频渲染完成后的渲染结果进行截取所形成的图片;
87、第二确定模块,用于确定所述视频图像的像素点的总数量值和所述视频图像中第一颜色的像素点的数量值,所述第一颜色是指所述视频图像中数量值最大的像素点的颜色;
88、渲染成功确定模块,用于在所述第一颜色的像素点的数量值与所述总数量值的比值,未超过第一比例阈值的情况下,确定所述视频渲染成功。
89、在其中一个实施例中,所述图像获取模块包括:
90、第一图像获取单元,用于获取渲染后的所述视频的第一图像,所述第一图像是指对所述视频渲染完成后的渲染结果进行截取所形成的图片;
91、视频图像获取单元,用于将第一比例值作为缩小比例对所述第一图像进行缩小,得到所述视频图像。
92、在其中一个实施例中,所述第二确定模块包括:
93、第一数量值确定单元,用于在遍历所述视频图像的像素点的过程中,对照颜色的rgb数值,计算出所述视频图像的至少一种颜色的像素点的数量值,并计算出所述视频图像的像素点的所述总数量值;
94、第二数量值确定单元,用于从所述至少一种颜色的像素点的数量值中,确定数量值最大的像素点的颜色为所述第一颜色及确定所述第一颜色的像素点的数量值。
95、在其中一个实施例中,所述装置还包括:
96、渲染失败确定模块,用于在所述第一颜色的像素点的数量值与所述总数量值的比值,超过所述第一比例阈值的情况下,确定所述视频渲染失败。
97、在其中一个实施例中,所述装置还包括:
98、字段上报模块,用于在确定所述视频渲染失败的情况下,将点位字段上报至服务器,所述点位字段包括直播房间标识、直播主机标识、用户终端类型、用户终端的操作系统类型、所述第一颜色的rgb数值、所述第一颜色的像素点的数量值与所述总数量值的比值、图像存储地址和日志存储地址中的至少一个;
99、其中,所述图像存储地址和所述日志存储地址是指将所述视频图像和日志上传至内容分发网络后,所述内容分发网络生成并下发的,用于分别存储所述视频图像和所述日志的存储地址,所述日志记录的内容包括获取所述视频图像的时刻、在所述时刻接收到的用户操作指令中的至少一个。
100、第五方面,本技术还提供了一种计算机设备,包括:存储器、处理器,其中,所述存储器存储有程序指令;所述程序指令被所述处理器执行时,使所述处理器执行如第一方面,或第一方面的任一实施例,或第二方面,或第二方面的任一实施例中所示的方法。
101、第六方面,本技术还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序;当所述计算机程序在一个或多个处理器上运行时,执行如第一方面,或第一方面的任一实施例,或第二方面,或第二方面的任一实施例中所示的方法。
102、第七方面,本技术还提供了一种计算机程序产品,所述计算机程序产品包括计算机程序或指令;在所述计算机程序或指令在计算机上运行的情况下,使得所述计算机执行如第一方面,或第一方面的任一实施例,或第二方面,或第二方面的任一实施例中所示的方法。
103、可以理解地,上述第三方面提供的图片加载检测装置、第四方面提供的视频渲染检测装置、第五方面提供的计算机设备、第六方面提供的计算机可读存储介质和第七方面提供的计算机程序产品,均用于执行本技术第一方面,或第一方面的任一实施例,或第二方面,或第二方面的任一实施例中所示的方法。因此,其所能达到的有益效果可参考对应方法中的有益效果,此处不再赘述。