之前通过百度大脑的官网实现了人脸识别的训练和图片识别,然后就一直想尝试摄像头识别,所以买了一个摄像头,来试一下识别的效果,先来测试一下官方的Demo吧。
2.准备工作
首先需要有一个DP转VGA的线,还需要一个摄像头,这是硬件条件,摄像头我购买的是一款国产某牌的720p。
图1
图2
硬件条件都有了,那么就开始准备测试环境,我购买了三瓶水,分别是可乐、农夫和怡宝,还附带了两个干扰项,一个2L的农夫和一个1.25L的雪碧。
图3
还需要准备一个纯色的背景,这样可以防止被背景所干扰,由于只找到了纸盒,所以就拿纸盒做背景。测试环境有了,那么就开始测试吧。
3.测试
首先通过ssh连接上开发板【ssh root@192.168.31.195】,这里的IP自行查询。
图4
然后使用【startx】开启桌面。
图5
图6
通过命令【v4l2-ctl -D】使用驱动查询一下摄像头的信息,如果没有信息说明摄像头未被识别。
图7
然后打开摄像头试一下,输入指令【ffplay -i /dev/video0】。
图8
可以看到摄像头中的内容如下,在这个期间摄像头的内容非常卡顿。
图9
最后进入测试分别识别模型的路径输入指令【./vdeo_classify ../configs/resent50/drink.json】开始进行摄像头内容识别。
图10
然后终端不停的输出检测结果。
图11
分别识别五种水,可以看到结果如下图所示,左上角的数值是识别出来的结果,越接近1则表示可信度越高。
图12
图13
图14
图15
图16
可以看到,两个干扰项识别的结果不是很满意,这其实就有些难受了,识别过程中视频帧率还是比较高的,感觉可以达到30HZ。
4.总结
通过测试,可以得出识别效果还是非常不错的,正常的测试项都是在0.98以上,但是对于干扰项的识别就不尽人意了,当然这个肯定是可以优化的,这也是这次测评的最后一篇帖子了,以后如果有机会,训练一个人脸跟踪的SDK然后拿来测试一下。
求分享经验啊