文章目录[隐藏]
目录
一、依赖安装
sudo apt-get install -y gfortran
sudo apt-get install -y libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler
sudo apt-get install -y --no-install-recommends libboost-all-dev
sudo apt-get install -y libgflags-dev libgoogle-glog-dev liblmdb-dev libatlas-base-dev
二、下载并编译ncnn
git clone -b 20210525 git://github.com/Tencent/ncnn
cd ncnn
mkdir build
cd build
cmake ..
make -j8
make install
三、测试yolov4
利用darknet2ncnn生成param和bin文件
先下载yolov4项目:
git clone git://github.com/AlexeyAB/darknet.git
准备yolov4.cfg和yolov4.weights
cfg在v4项目根目录下的cfg文件夹下,weights模型下载地址:https://github.com/AlexeyAB/darknet/releases/download/darknet_yolo_v3_optimal/yolov4.weights
生成param和bin文件
上边ncnn根目录下创建Model文件夹,把cfg和weights两个文件copy到Model下,然后到上边编译出来的目录下
cd 你的ncnn目录/ncnn/build/tools/darknet
./darknet2ncnn ../../../Model/yolov4.cfg ../../../Model/yolov4.weights ../../../Model/yolov4.param ../../../Model/yolov4.bin
这样就在Model目录下生成了param和bin文件:
ncnnoptimize优化
cd ../../../Model
../build/install/bin/ncnnoptimize yolov4.param yolov4.bin yolov4-opt.param yolov4-opt.bin 65536
测试
Model目录下把param和bin文件拿过来并重命名(yolov4里调用的名字)
mv yolov4-opt.bin yolov4-tiny-opt.bin
mv yolov4-opt.param yolov4-tiny-opt.param
然后复制到build/example目录下
找一张图片放到examples目录下然后
cd ../build/examples
./yolov4 000000024021.jpg
因为我的ubuntu没有桌面不能imshow结果,会包如此提示:
...Can't initialize GTK backend in function 'cvInitSystem...
因此我们改一下脚本重新编译ncnn,我们这里改yolov4.cpp,在ncnn根目录下的example下,把imshow注释,咱们给他imwrite一下:
重新编译完后再次测试build/example下的yolov4,图片会生成在当前目录:
3.01ms,真是爽的一匹~
参考:树莓派部署yolo fastest ncnn记录_小俊俊的博客-CSDN博客_yolofastest 树莓派
版权声明:本文为CSDN博主「RayChiu_Labloy」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/RayChiu757374816/article/details/122307707
暂无评论