赞
踩
1、首先,到github上下载YOLOV5包,下载地址为https://github.com/ultralytics/yolov5
在code的下拉箭头中,点击Download ZIP,即可进行下载
2、下载好之后,解压,用pycharm打开
可以看到,在model中,提供了四个模型,每个模型的大小和精度都不一样,源码中用的是yolov5s.yaml
3、打开detect.py,直接运行,如果不报错的话,运行结束之后,会把inference/images中的图片bus.jpg和zidane.jpg进行目标侦测,然后生成一个output的文件夹
但是,有可能会报错,pycharm界面会提示把pytorch,numpy,torchvision等等库升级到最新的版本,否则不能执行,这时候,就要把库进行升级一下。库升级好之后,可能还会报“OSError: [WinError 126] 找不到指定的模块”的错误,这个时候,报错行会提示安装Visual C++的链接,点击链接,自动下载安装,之后就没有问题了。
4、检测视频
if __name__ == '__main__':
parser = argparse.ArgumentParser()
parser.add_argument('--weights', nargs='+', type=str, default='yolov5s.pt', help='model.pt path(s)')
parser.add_argument('--source', type=str, default='inference/images', help='source') # file/folder, 0 for webcam
在detect.py的151行,有这几行程序,–weights那一行,是可以选择不同的模型进行测试。–source这一行,就是来源的意思,就是要进行检测的图片或视频,default=‘inference/images’,可以把自己想测试的MP4视频放进这个文件夹
5、开启摄像头检测
把第四步中的default=‘inference/images’改成default=‘0’,便可开启摄像头,进行动态的实时检测。
4、尝试用train.py训练自己的数据集
下面,我们运行train.py,会提示下载coco数据集,如果自动下载下载不下来,就用提示的下载链接进行下载,下载好解压放在yolov5同级的文件夹下
我们打开数据集,观察数据集的特征。随便打开一张图片,我这里用000000000165.jpg的图片,是这样的
打开与之对应的标签label,
很明显,这张图片里面有4个目标,就用第二行的0 0.687836 0.600877 0.598703 0.798246
这几个数,看看这到底代表了什么含义(第一个数0是类别)。(总共80类,0就是person)
假设不正确,可以看出来,(x1,y1)不是框左上角的点,其实是中心点的坐标,正确的如下
验证一下
总结:所以,如果想用自己的训练集来训练网络,在造数据集的标签时,
第一个数是:类别
第二个数是:中心点横坐标/图片宽
第三个数是:中心点纵坐标/图片高
第四个数是:框宽/图片宽
第四个数是:框高/图片高
按照上面的规则造好标签,就可以用来训练网络了(图片名和标签名要一样)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。