Yolov7, Yolov8使用

YOLOV7

1. 安装和测试:

【小白教学】如何用YOLOv7训练自己的数据集 - 知乎

YOLOv7——训练自己的数据集 - 代码网

conda create --name=yolov7 python=3.8 #the version of your python3 

*** 这里需要注意如果 torch 和torchvion版本太高,会导致GPU不可用,因为GPU drive版本太低。可以使用低版本的: pip install torch==1.12.1 torchvision==0.13.1

将/home/xumin/yolov7/utils/dataloaders.py修改

#sa, sb = f'{os.sep}images{os.sep}', f'{os.sep}labels{os.sep}'  # /images/, /labels/ substrings
sa, sb = f'{os.sep}JPEGImages{os.sep}', f'{os.sep}labels{os.sep}'

其他和Yolov5一样(数据准备,配置等)。。。

需要注意的是

(1)yolov7.yaml中的参数设置要yolov5s一致(如果做对比实验)

# parameters
nc: 1  # number of classes
depth_multiple: 0.33  # model depth multiple
width_multiple: 0.50  # layer channel multiple

(2) hyp.scratch-low.yaml可以直接copy和使用yolov5的

(3) 如果与yolov5对比,设置optimizer为SGD

Train commands:

python train.py --img 640 --batch 4 --epoch 600 --data data/aphid_voc.yaml --cfg cfg/training/yolov7.yaml --weights weights/yolov7.pt --save_period 100

Test:

python test.py --img 640 --batch-size 1 --data data/aphid_voc.yaml --weights runs/train/yolov7/weights/best.pt

test.py中的‘val’需要修改为‘test’,参考Yolov5

YOLOV8

1. 安装测试

下载:https://github.com/ultralytics/ultralytics

conda create --name=yolov8 python=3.8 #the version of your python3 

安装:

pip install ultralytics

下载模型:

YOLOv8(2023年8月版本)安装配置!一条龙傻瓜式安装,遇到问题评论区提问_yolov8下载-CSDN博客

测试:

yolo predict model=yolov8n.pt source='ultralytics/assets/bus.jpg'

*** 这里需要注意如果 torch 和torchvion版本太高,会导致GPU不可用,因为GPU drive版本太低。可以使用低版本的: pip install torch==1.12.1 torchvision==0.13.1

2. 训练自己的模型

参考:

YOLOv8(2023年8月版本)安装配置!一条龙傻瓜式安装,遇到问题评论区提问_yolov8下载-CSDN博客

YOLOv8训练自己的数据集(超详细)-CSDN博客

YOLOv8 保姆级教程(训练自己的数据集)-CSDN博客

YOLOv8实现缺陷目标检测(附代码和数据集) - 知乎

将/home/xumin/yolov8/ultralytics/data/utils.py修改

#sa, sb = f'{os.sep}images{os.sep}', f'{os.sep}labels{os.sep}'  # /images/, /labels/ substrings
sa, sb = f'{os.sep}JPEGImages{os.sep}', f'{os.sep}labels{os.sep}'

其他和Yolov5一样(数据准备,配置等)。。。

(1)数据集(新建datasets文件夹)

/home/xumin/yolov8/ultralytics/datasets,将数据集放置于该文件夹下,需要注意的是,需要将/home/xumin/yolov8/ultralytics/datasets/voc2011/labels 中的标注文件放置于/home/xumin/yolov8/ultralytics/datasets/voc2011/JPEGImages 文件夹下,否则会出现

LOGGER.warning(f"WARNING ⚠️ No labels found in {cache_path}

(2) 配置文件

/home/xumin/yolov8/ultralytics/cfg/datasets下新建aphid_voc.yaml(直接复制yolov5的也可以)

path: ../datasets/VOC
train: /home/xumin/yolov8/ultralytics/datasets/2011_train.txt
  
val: /home/xumin/yolov8/ultralytics/datasets/2011_val.txt

test: /home/xumin/yolov8/ultralytics/datasets/2011_test.txt

# Classes
nc: 1  # number of classes
names: ['aphid']  # class names

#names:
#  0: aphid

/home/xumin/yolov8/ultralytics/cfg/models/v8中找到yolov8.yaml并修改

nc: 1  # number of classes

(3)修改ultralytics/cfg/default.yaml (可以设置为yolov5的,如果做对比实验)

YOLOv8 保姆级教程(训练自己的数据集)-CSDN博客

(4)安装wandb,之后可以监控训练过程

pip install wandb

Train commands:

yolo train data=/home/xumin/yolov8/ultralytics/cfg/datasets/aphid_voc.yaml model=yolov8s.pt epochs=600 imgsz=640 batch=4 workers=8 optimizer=SGD device=0 patience=0

Test commands:

#需要修改ultralytics/cfg/default.yaml中的 Val/Test settings -

yolo val data=/home/xumin/yolov8/ultralytics/cfg/datasets/aphid_voc.yaml model=/home/xumin/runs/detect/yolov8/weights/best.pt epochs=600 imgsz=640 batch=1 workers=8 optimizer=SGD device=0 split=test

你可能感兴趣的:(YOLO)