首先在YOLO项目下新建一个文件夹 可命名为TXToCOCO 在该文件下新增txt2coco.py文件、class.txt文件,在数据集文件夹下新建annotations文件夹
txt2coco.py文件用于将yolo格式的数据集转化为coco格式并生成json文件
class.txt用来存放每个类别的名字
txt2coco.py文件如下---只需修改路径即可
import os
import json
import cv2
import random
import time
from PIL import Image
# 部分同学都用的autodl, 用antodl举例
# 使用绝对路径
#数据集 txt格式-labels标签文件夹
txt_labels_path='改为自己数据集val的标签所在路径'
#数据集图片images文件夹
datasets_img_path='改为自己数据集val的图片所在路径'
# 这里 voc 为数据集文件名字,可以改成自己的路径
# xx.json生成之后存放的地址
save_path='dataset/annotations/'#指定生成的json文件的存放路径
classes_txt='/TXToCOCO/class.txt改为class.txt文件所在路径'
with open(classes_txt,'r') as fr:
lines1=fr.readlines()
categories=[]
for j,label in enumerate(lines1):
label=label.strip()
categories.append({'id':j,'name':label,'supercategory':'None'})
print(categories)
write_json_co