项目地址:poly-yolo
论文地址:poly-yolo论文

1、 Format of data for training

Generally, YOLO uses notation of one image per line. One line includes all the boxes inside an image.

path_to\image1.jpg x1,y1,x2,y2,class,p1x,p1y,pnx,pny x1,y1,x2,y2,class,p1x,p1y,pnx,pny
path_to\image2.jpg x1,y1,x2,y2,class,p1x,p1y,pnx,pny

Where x1,y1 denote top-left of a bounding box and x2,y2 denote bottom-right. p1x,p1y … pnx,pny are coordinates of bounding box vertices.
Script labels_to_yolo_format.py converts IDD and Cityscapes dataset annotations to yolo format. The generated annotation file is put to the provided image folder. Use ‘–help’ for script parameters description.

2、 训练网络结构

2.1 首先需要准备数据集。

我们将coco的 val2014数据集转成poly-yolo需要的数据集,脚本如下。将val2014的coco数据集通过下面数据集转换之后就可以得到一个train.txt存储这我们需要的训练标签。标签格式(path_to\image1.jpg x1,y1,x2,y2,class,p1x,p1y,pnx,pny x1,y1,x2,y2,class,p1x,p1y,pnx,pny)

import json
from collections import defaultdictname_box_id = defaultdict(list)
name_segmentation_id = defaultdict(list)
id_name = dict()
f = open("instances_val2014.json",encoding='utf-8')
data = json.load(f)annotations = data['annotations']
for ant in annotations:id = ant['image_id']name = 'coco/train2014/COCO_val2014_%012d.jpg' % idcat = ant['category_id']if cat >= 1 and cat <= 11:cat = cat - 1elif cat >= 13 and cat <= 25:cat = cat - 2elif cat >= 27 and cat <= 28:cat = cat - 3elif cat >= 31 and cat <= 44:cat = cat - 5elif cat >= 46 and cat <= 65:cat = cat - 6elif cat == 67:cat = cat - 7elif cat == 70:cat = cat - 9elif cat >= 72 and cat <= 82:cat = cat - 10elif cat >= 84 and cat <= 90:cat = cat - 11name_box_id[name].append([ant['bbox'], cat,ant['segmentation']])f = open('train.txt', 'w')
for key in name_box_id.keys():f.write(key)box_infos = name_box_id[key]for info in box_infos:x_min = int(info[0][0])y_min = int(info[0][1])x_max = x_min + int(info[0][2])y_max = y_min + int(info[0][3])box_info = " %d,%d,%d,%d,%d," % (x_min, y_min, x_max, y_max, int(info[1]))#print(info[2])#print('*********************************')if isinstance(info[2],list):if len(info[2])==1:f.write(box_info)lista = []for i in info[2][0]:i = int(i)lista.append(i)f.write(str(lista))      f.write('\n')
f.close()

2.2将calss类别修改成coco的80类别,运行训练模型。

python poly-yolo.py

网络就开始训练了。

参考:将POLY-YOLO代码跑起来的环境配置,poly-yolo训练自己的数据集

poly-yolo训练自己的数据相关推荐

  1. [2G显卡]使用darknet/YOLO训练自己的数据

    本文主要针对用显存较小的电脑上训练自己的YOLO数据,在clone了最新的darknet后结果只能跑得动yolov2,使用的是yolo.cfg与yolo.weights做的初始测试.随后修改配置文件, ...

  2. yolo训练自己的数据所用到的标记图片的工具

    1.https://github.com/tzutalin/labelImg 上图 通过此工具可以生成XML文件

  3. ubuntu18.04下用yolo训练自己的数据集

    ubuntu18.04下用yolo训练自己的数据集并进行检测 收集数据集并标注 数据集的量对于检测的准确度有很高的影响,所以应该尽可能的获取较多的数据集.这里,我从百度图片上获得了92张夏洛特中的动漫 ...

  4. Yolo v5 训练自己的数据从训练到调参实战详解

    主要分3章,第一章先跑通模型代码,熟悉yolo v5的输入和输出:第二章训练自己的数据:第三章讲解模型参数部分 文章目录 一.跑通模型 1.代码下载 2.环境配置 3.参数路径调整 3.运行detec ...

  5. YOLO-v5训练自己的数据+TensorRT推理部署(2)

    YOLO-v5训练自己的数据+TensorRT推理部署(2) 代码下载地址:下载地址 YOLO v5转TensorRT模型并调用 0.pt模型转wts模型 python3 gen_wts.py # 注 ...

  6. YOLO-v5训练自己的数据+TensorRT推理部署(1)

    YOLO-v5训练自己的数据+TensorRT推理部署(1) 代码下载地址:下载地址 YOLO v5在医疗领域中消化内镜目标检测的应用 YOLO v5训练自己数据集详细教程

  7. YOLOv3: 训练自己的数据(绝对经典版本1)

    为什么80%的码农都做不了架构师?>>>    windows版本:请参考:https://github.com/AlexeyAB/darknet linux       版本:请参 ...

  8. yolov3训练自己的数据_YOLOv4 训练自己的数据集

    1.克隆仓库下来. git clone https://github.com/AlexeyAB/darknet 2.对darknet文件夹下的Makefile进行修改.(主要是增加自己nvcc的路径, ...

  9. Yolov3:win10下训练自己的数据(GPU版)(详细步骤)

    前言       最近在做用yolov3进行目标识别,关于前期已经成功检测成功了,大家有兴趣的可以看我之前写的一篇博客:VS2015+opencv3.4.2+yolov3成功检测,这篇博客主要介绍如何 ...

  10. pytorch 图像分割DeepLabv3+ 训练自己的数据

    参考资料:1.https://blog.csdn.net/qq_43492938/article/details/111183906 2.https://blog.csdn.net/qq_302637 ...

最新文章

  1. html如何将段落对齐,如何用CSS设置段落的垂直对齐(附代码)
  2. nyoj239月老的难题
  3. 程序练习:Matlab 实现最小二乘法
  4. 在DelayQueue中更改延迟,从而更改顺序
  5. bugku 杂项 就五层你能解开吗_长春老旧小区加装电梯,你家符合条件吗?_媒体_澎湃新闻...
  6. php dm,DM_cp.php
  7. 巴菲特:伯克希尔没有所谓的5G核心能力 子公司会涉足相关行业
  8. python正则表达式提取c语言中的函数,Python正则表达式匹配C语言函数
  9. (Scrapy框架)爬虫2021年CSDN全站综合热榜标题热词 | 爬虫案例
  10. 计算机效果图线稿的制作方法,如何只用PS将线稿图变成高大上的效果图?
  11. linux redis-连接命令
  12. 《人类简史:从动物到上帝》读书活动策划
  13. Go 初识微信订阅号(测试号)
  14. 【产品】项目管理的五大阶段
  15. 口令破解(web安全入门07)
  16. 区块链入门者的五本必读书籍
  17. 修正逆解文章——六轴UR机械臂正逆运动学求解_MATLAB代码(标准DH参数表)
  18. WVGA与HVGA、QVGA详细解答
  19. Paging3 分页库的使用
  20. 手把手教你Masonry的理解

热门文章

  1. python 检测文件编码_[常用] 在Python中检测网页编码
  2. 本科毕业设计之文献翻译
  3. 基于php的学生公寓管理系统,php毕业设计学生公寓管理系统
  4. 采样模型外表面点云之曲线救国方法
  5. 2542: 弟弟的作业
  6. java replica set_Kubernetes对象之ReplicaSet
  7. Nodejs+Express项目使用JWT
  8. 子查询 和 连接查询谁快
  9. 域格 ASR CAT1 系列 模块驱动安装及升级
  10. 洗衣店小程序,共享洗衣小程序,干洗店小程序毕设作品