1.使用pycharm打开yolov5项目
2.选择虚拟环境
File -> Settings -> Project:yolov5 -> Python Interpreter -> add -> Conda Enviroment -> Existing Enviroment -> 选择你的虚拟环境路径 -> ok
设置成功后,在pycharm的右下角,会出现你的虚拟环境名字
测试代码是否能够正常运行
这时,你运行train.py,代码会自动帮你下载演示数据集以及预训练模型,并且开始训练。
若运行正常,则说明环境安装正确。
3.训练自己的数据(数据准备)
数据集格式介绍:
dataset #(数据集名字)
pahid文件夹下面创建两个文件夹images和labels,images文件夹下面两个文件夹放训练集图片的train文件夹和放验证集图片的val,labels文件夹下面两个文件夹放训练集标注文件的train文件夹和放验证集标注文件的val
txt中存放标签数据,每一行数字分别表示:目标类别,x,y,w,h
其中
x,y是目标的中心坐标,width,height是目标的宽和高。这些坐标是通过归一化的,其中x,width是使用原图的width进行归一化;而y,height是使用原图的height进行归一化。
4.训练自己的数据(添加数据配置文件)
在yolov5/data文件夹下新建aphid.yaml。
内容如下所示:
# Train/val/test sets as 1) dir: path/to/imgs, 2)aphid: path/to/imgs.txt, or 3) list: [path/to/imgs1, path/to/imgs2, ..]
path: D:/graduation project/aphid # dataset root dir
train: images/train # train images (relative to 'path')
val: images/val # val images (relative to 'path')
test: # test images (optional)
# Classes
nc: 1 # number of classes
names: ['aphid'] # class names
其中:
path:数据集的根目录
train:训练集与path的相对路径
val:验证集与path的相对路径
nc:类别数量,因为这个数据集只有一个类别(aphid),nc即为1。
names:类别名字。
5.下载预训练模型
现在,我们准备好了数据,接下来,下载好预训练模型,即可开始训练了!
预训练模型地址:https://github.com/ultralytics/yolov5/releases
选择你所需要的模型下载即可,这里我选择yolov5s.pt下载。
模型下载完成后,将xx.pt复制在yolov5文件夹下。
6.开始训练
打开命令行,点击train -> Edit Configurations:
在Parameters,输入对应参数命令
--weights yolov5s.pt --data data/aphid.yaml --workers 1 --batch-size 8
至此,运行train.py模型则开始训练
中间的可视化结果以及训练好的模型保存在runs文件夹下
7.模型测试
模型训练完成后,将runs/exp/weights下的模型(best.pt)复制在yolov5文件夹下。
开始测试
python detect.py文件中
parser.add_argument('--weights', nargs='+', type=str, default=ROOT / 'best.pt', help='model path or triton URL') 改为best.py
把要测试的图片放到D:\graduation project\yolov5\data\images下,然后运行detect.py
测试结果保存在runs/detect下