基于YOLO的目标识别检测

本文最后更新于:2022年2月9日 上午

基于YOLO的目标识别检测

性能目标:

*   目标识别准确率大于90%

*   机载相机的有效地空检测距离大于10米

*   所选取相机能实现自主或结合机载电脑实时处理目标识别

感受下基于树莓派的YOLO目标检测算法(可见光):

独家 | 在树莓派+Movidius NCS上运用YOLO和Tiny-YOLO完成目标检测(附代码下载)_数据派THU-CSDN博客


在树莓派4使用YOLO v3 Tiny进行实时对象检测_weixin_43878078的博客-CSDN博客_树莓派yolo目标检测


方法论证与实践

(1条消息) 在树莓派4使用YOLO v3 Tiny进行实时对象检测_weixin_43878078的博客-CSDN博客_树莓派yolo目标检测

YOLO算法在树莓派3B+、4B上实现

  • 步骤

    • 准备Python和Pi相机
    • 安装 Ninja Building tool(控制编译的工具,它相对于Makefile这套工具更注重于编译速度)
    • 安装修改后的 NNPACK(加速神经网络计算的加速包,NNPACK可以在多核CPU平台上提高卷积层计算性能)
    • 安装darknet-nnpack(目的是给树莓派配置yolo模型,Darknet是一个小众的深度学习框架)
  • 存在问题

    • 安装完成,使用树莓派摄像头进行测试。从摄像头获取图像,通过YOLO算法实时的识别物体类别,使用usb摄像头会比CSI(Camera Serial Interface)接口的摄像头慢很多。无法识别摄像头,原因可能是:
       ①摄像头硬件有问题
      
       ②树莓派上的摄像头驱动等存在问题
      

YOLOV3在Windows10(OpenCV3.4+CUDA11.4(CUDNN)+VisualStudio2017)下的实现

(1条消息) Windows10+YOLOV3+VisualStudio2017最新版本超详细过程_【秋名鱼酱的博客】-CSDN博客_win yolov3

  • 步骤

    • 安装最新版本的cuda和cudnn(CUDA是NVIDIA推出的用于自家GPU的并行计算框架,CUDNN是NVIDIA打造的针对深度神经网络的加速库,是一个用于深层神经网络的GPU加速库)
    • 安装OpenCV3.4(通过OpenCV调用dll实时检测)
    • 安装vs2017(使用本身2017对YOLOV3中的darknet项目文件进行编译)
  • 测试

    • 在测试效果之前还需要添加以下官网上下载训练好的权重文件
    • 权重文件保存的就是训练好的网络各层的权值,也就是通过训练集训练出来的。训练好之后,应用时只要加载权值就可以,不再需要训练集了
    • 输入检测程序命令,实现对JPG、avi文件以及调用摄像头的实时目标检测

实验结果

使用官方提供的权重文件检测对一下目标进行检测

视频检测

视频检测效果

制作训练集

  • YOLO有自己训练好的数据集,在YOLO v2 中,数据集可检测的类别达9000种以上,但是9000毕竟不是全部,它能涵盖大部分的物体识别,但是可能对于某些用户来说是不够的,所以我们需要学习它的数据集制作方法。

  • 数据集分为以下几个部分:

    • 1.数据集的搜集,这一部分主要是在网上搜集整理相关数据集的图片,比如我要做某种猫的数据集,我需要上网上查找这种猫的图片;我需要做自己做的手工艺品的数据集,那我需要自己拍摄等等。
    • 2.数据集的标注,计算机去认识一个物体,需要人去告诉他,哪个物体,是什么。就像我们在小时候,我们的父母会一点一点耐心教我们,什么是桌子,什么是椅子,什么是筷子,什么是树,什么是花……数据集的标注就是一个“教授”的过程。
    • 3.数据集的训练,不是别人一教,你就能学会的,你需要不断地练习,比如说话,小时候父母不厌其烦的教我们;比如写汉字,中国人最应该骄傲的就是我们学会了世界上最难的一门语言,并且能够熟练应用。这就是因为我们从上学开始,老师就教我们写字,一写就是好几十遍……计算机也是如此,想让计算机明白什么是花,什么是自行车,就要让他“训练”,让他学会。
    • 4.数据集的应用,我们学会说话,学会认识物体,目的就是为了应用,学会说话,我们可以交流,认识自行车,是我们能够方便交通……数据集也一样,训练好的数据集的目的就是为了应用,或者说,我们训练数据集是因为我们需要应用这个数据集,例如,我们需要检测人流量,首先我们需要识别人,当然现在就有很多人体识别的算法,如果我们要采用数据集来识别,我们需要先制作一个数据集,然后在应用数据集完成我们需要的功能