当前位置:   article > 正文

yolov3预训练权重_YoloV3 教程

yolov3预训练权重

45fbb8763659dba842027846d4c2a028.png

yoloV3是实时目标检测算法yolo的第三个版本,其本身基于darknet构建的神经网络算法.

官网:YOLO: Real-Time Object Detection

1.实例演示

  1. #获取源码
  2. git clone https://github.com/pjreddie/darknet
  3. cd darknet
  4. make
  5. #获取预训练的参数权重
  6. wget https://pjreddie.com/media/files/yolov3.weights
  7. #执行
  8. ./darknet detect cfg/yolov3.cfg yolov3.weights data/dog.jpg

在darknet文件夹下的predictions.jpg即是检测后的结果,如图:

3b5abc918a86a27222f5eb13cb368884.png

2. 利用GPU

Darknet在进行图像目标检测时,可以使用GPU进行运算加速,比单独使用CPU要快500倍以上.

前提:具有NVIDIA 显卡、显卡驱动已安装、CUDA已安装、CUDNN已安装

上述的前提的安装过程较为繁琐,请参考阿弎:ubuntu安装tensorflow gpu版本

假设上述前提已准备好,则修改darknet根目录下的Makefile文件:

  1. GPU=1
  2. CUDNN=1 #若安装了cudnn设置为1,也可以不设置.安装了cuda其实就可以使用GPU了

#注意makefile中如下的配置 请确认是否与你安装的目录一致

  1. ifeq ($(GPU), 1)
  2. COMMON+= -DGPU -I/usr/local/cuda/include/
  3. CFLAGS+= -DGPU
  4. ifeq ($(OS),Darwin) #MAC
  5. LDFLAGS+= -L/usr/local/cuda/lib -lcuda -lcudart -lcublas -lcurand
  6. else
  7. LDFLAGS+= -L/usr/local/cuda/lib64 -lcuda -lcudart -lcublas -lcurand
  8. endif
  9. endif
  10. ifeq ($(CUDNN), 1)
  11. COMMON+= -DCUDNN
  12. ifeq ($(OS),Darwin) #MAC
  13. CFLAGS+= -DCUDNN -I/usr/local/cuda/include
  14. LDFLAGS+= -L/usr/local/cuda/lib -lcudnn
  15. else
  16. CFLAGS+= -DCUDNN -I/usr/local/cudnn/include
  17. LDFLAGS+= -L/usr/local/cudnn/lib64 -lcudnn
  18. endif
  19. endif

再次使用make重新编译

使用GPU版测试dog.jpg 耗时0.20秒

./darknet detect cfg/yolov3.cfg yolov3.weights data/dog.jpg #默认使用第1块GPU

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/728002
推荐阅读
  

闽ICP备14008679号