偶然在测试中发现,经过一段时间的工作,在环境不变化的情况下,摄像头输出的画面会闪烁一下,也就是亮->暗->亮的过程,时间比较短,经过分析确认为暗下来的画面只有一帧,而且出现的概率不是很高,对验证的工作来说,是个费眼睛和时间的活,因此,工具来干。
一、现象
通过下面的三张图片,我们就能轻松的发现问题,这里捕捉了异常,以及前后各一张文章源自陈学虎-https://chenxuehu.com/article/2022/03/7952.html
变暗前的:文章源自陈学虎-https://chenxuehu.com/article/2022/03/7952.html
文章源自陈学虎-https://chenxuehu.com/article/2022/03/7952.html
变暗后的
文章源自陈学虎-https://chenxuehu.com/article/2022/03/7952.html
恢复正常亮度的:
文章源自陈学虎-https://chenxuehu.com/article/2022/03/7952.html
文章源自陈学虎-https://chenxuehu.com/article/2022/03/7952.html
也可以去查看视频效果文章源自陈学虎-https://chenxuehu.com/article/2022/03/7952.html
文章源自陈学虎-https://chenxuehu.com/article/2022/03/7952.html
二、分析
由于从视觉上能明显的看出来亮度的差异,因此自动化测试,采用 python 脚本,利用 CV2 工具实现。文章源自陈学虎-https://chenxuehu.com/article/2022/03/7952.html
文章源自陈学虎-https://chenxuehu.com/article/2022/03/7952.html
三、实现
思路,就是利用 CV2 工具,检测每一帧的亮度,挑出异常的帧,并保存前后相关的帧的图片。
四、效果
通过脚本运行窗口,显示出检测异常的情况
然后将异常图片,以及前后相关帧的图片保存下来
五、图表
如果加入图表是不是会更明显呢,那来完善下:
这样我们就能直接通过图表去观察测试的效果了。
这样就能快速的去验证整个是否有效果了,煲机几个小时,将视频文件录制下来,让脚本自动检测,省时省力!
评论