本帖最后由 zzx1997 于 2021-3-13 22:39 编辑
本次将尝试官方的目标检测demo,操作过程与上一篇文章类似,对于目标检测网络同样有类似的网络配置文件,以vgg-ssd为例,该网络的配置文件如下所示:
下面为网络参数的说明:
同样首先运行下述命令:
cd /home/root/workspace/PaddleLiteSample/detection
// 如果没有build目录,创建一个
mkdir build
cd build
rm -rf *
// 调用cmake 创建 Makefile
cmake ..
// 编译工程。
make
其实用arm的Cmake进行编译还是比较慢,正常的开发过程可以在电脑上编译好再在开发板上运行,可以看到编译顺利通过:
然后运行一下命令,看一下效果:
./image_detection ../configs/yolov3/screw.json
可以看到识别基本正确:
插入USB摄像头,查看设备连接情况:
ls /dev/video*
可以看到已经成功检测到摄像头,然后接入DP接口,这注意需要使用主动式的DP转HDMI的线,要不会接不到信号,打开界面,看到如下效果:
然后尝试使用摄像头进行目标检测的模式:
可以看到可以成功检测到螺钉,但是在使用摄像仪的模式下,偶尔会出现误检测的情况。本次测评完成了对目标检测demo的实验,官方给出的demo较为简单,仅能检测螺钉和螺母,并且感觉模型的鲁棒性还有待提高。如果需要训练自己的demo可以使用百度提供的EasyDL、飞浆和AI stdio等平台,利用上述平台可以实现模型的训练和部署的闭环,十分方便,并且支持caffe和tensorflow的模型转换,但是目前还不支持pytorch。但是看到EasyDL属于收费的平台,这对普通开发者较为不便,下一期测评将对板卡进行二次开发,以更加灵活的支持神经网络应用。