mmyolo训练yolov5~ppyoloe

使用mmyolo检测工具箱,完成yolo系列算法的训练,包括环境的搭建及yolo系列算法的配置文件等。

mmyolo官方地址:https://github.com/open-mmlab/mmdeploy

相关文档:​​​​​​​ https://github.com/open-mmlab/mmdeploy/blob/dev-1.x/docs/zh_cn/get_started.md

一、环境搭建

 1.创建虚拟环境

conda create --name mmyolo python=3.8 -y

激活虚拟环境:

conda activate mmyolo

2.安装pytorch、torchvision

根据自己的配置安装相应版本

pip install torch==1.7.1+cu101 torchvision==0.8.2+cu101 -f https://download.pytorch.org/whl/torch_stable.html

或手动下载,地址:https://download.pytorch.org/whl/torch_stable.html

3.下载I MMEngine 、 MMCV和MMDET3.x

pip install -U openmim
mim install mmengine
mim install 'mmcv>=2.0.0rc1'
mim install "mmdet>=3.0.0rc5,<3.1.0"

4.下载mmyolo并编译
git clone https://github.com/open-mmlab/mmyolo.git
cd mmyolo
# Install albumentations
pip install -r requirements/albu.txt
# Install MMYOLO
mim install -v -e .

二、训练yolo系列算法(以yolo6和yolox为例)

yolo5~yolo8训练的config大致相同,yolox略有不同

1.构造数据集

使用coco格式数据集进行训练,使用labelme标注,然后使用如下代码进行转换:

# -*- coding:utf-8 -*-
# !/usr/bin/env python
 
import argparse
import json
import matplotlib.pyplot as plt
import skimage.io as io
import cv2
from labelme import utils
import numpy as np
import glob
import PIL.Image
 
class MyEncoder(json.JSONEncoder):
 def default(self, obj):
  if isinstance(obj, np.integer):
   return int(obj)
  elif isinstance(obj, np.floating):
   return float(obj)
  elif isinstance(obj, np.ndarray):
   return obj.tolist()
  else:
   return super(MyEncoder, self).default(obj)
 
class labelme2coco(object):
 def __init__(self, labelme_json=[], save_json_path='./tran.json'):
  &
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值