YOLOv8分割训练及分割半自动标注
YOLOv8是基于目标检测算法YOLOv5的改进版,它在YOLOv5的基础上进行了优化和改进,加入了一些新的特性和技术,如切片注意力机制、骨干网络的选择等。
本文以yolov8-seg为基准,主要整理分割训练流程及使用v8分割模型进行半自动标注的过程。
一、v8-seg训练
1.1 环境配置
github下载项目:https://github.com/ultralytics/ultralytics
anaconda新建虚拟环境(python3.8及以上)后,进入项目根目录,
执行pip install -r requirements.txt,另外需要安装cuda版的torch和torchvision,本人安装版本:torch-1.8.1+cu101, torchvision-0.9.1+cu101
1.2 数据集准备
labelme标注的json数据,需要转换为yolo的txt格式,以及划分训练、验证、测试数据集
1.2.1 分割数据的json转txt
json2txt.py如下所示:
# -*- coding: utf-8 -*-
import json
import os
import argparse
from tqdm