应用启动耗时统计除了有通过代码来计算,还有一种方案就是通过录屏,然后查看视频,一帧一帧的人工识别启动帧和加载完成的帧,并且用时间戳相减,从而得到启动耗时时间。
这种方案如果多次人工识别就很繁琐,所以我们引入机器学习
这是一个典型的图像识别,因此选择了SVM模型训练数据,通过有监督学习,建立图像和labal之间的对应关系。
框架选择方面,这是传统的机器学习,所以用的是Scikit-learn框架
iOS的启动过程:
将训练视频按帧分割,这里用的是cv2的库
生成几个阶段的文件夹,然后将分割好的图片放入对应的阶段
减少数据大小,将图片缩小10倍,导入标签
用SVM训练,得到model
将测试视频输入后按帧分割,进行识别,记录启动时和加载完成的时间戳,将时间戳一减便能得到启动时间