Python——目标检测标签中的英文名转化为对应的类别编号

Yolov5进行目标检测流程在下文中已做说明:

Python------一文详解使用yolov5进行目标检测全流程(无需gpu)_yolo不用gpu-CSDN博客

在Yolov5使用中中,标签数据里类别的中文名,需要转换成类别编号。相关代码如下:

python 复制代码
## 将标签中的英文名转化为对应的类别编号
import os

path = r'./datasets/labels/test1/'  # 转换前txt保存的文件夹
save = r'./datasets/labels/test/'  # 转换后txt保存的文件夹

for item in os.listdir(path):  # 遍历文件夹里的文件
    path_item = os.path.join(path, item)
    path_item2 = os.path.join(save, item)  # 保存的路径
    a = []
    with open(path_item, 'r') as f1, open(path_item2, "a") as f2:
        for line in f1:
            a.append(line)
        print(a)
        for i in a:
            if ' ' in str(i):  # 遍历每一行
                b = str(i)   # 提取第i行
                m = b.split(' ')    # 以空格为分隔符,进行切分
                dic = {'airplane': "0",  # 字典对类型进行转换
                       'airport': "1",
                       'baseballfield': "2",
                       'basketballcourt': "3",
                       'bridge': "4",
                       'chimney': "5",
                       'dam': "6",
                       'Expressway-Service-area': "7",
                       'Expressway-toll-station': "8",
                       'golffield': "9",
                       'groundtrackfield': "10",
                       'harbor': "11",
                       'overpass': "12",
                       'ship': "13",
                       'stadium': "14",
                       'storagetank': "15",
                       'tenniscourt': "16",
                       'trainstation': "17",
                       'vehicle': "18",
                       'windmill': "19",
                       }
                m[0] = dic.get(m[0])  # 对每行的第一个变量(即类别),将其替换成相应的值
                b = ' '.join(m)  # 将列表m重新拼接成一个字符串

                print(b)
                f2.write("%s" % (b))
        print('替换完成')
相关推荐
一颗红心丶2 分钟前
Windows系统上离线部署Python运行飞桨(PaddlePaddle) OCR服务
windows·python·paddlepaddle
我爱音乐yyy8 分钟前
pythonday50
pytorch·python·深度学习
white.tie25 分钟前
一个手机请求头的随机库
开发语言·javascript·python
Mikhail_G27 分钟前
Python初学者入门指南
大数据·运维·开发语言·python·数据分析
和我乘风破浪1 小时前
iOS自动化录屏在Chrome浏览器打不开处理方法
python·测试
站大爷IP1 小时前
当生成器遇上异步IO:Python并发编程的十大实战兵法
python
大明者省2 小时前
pycharm2020.2版本给项目选择了虚拟环境解释器,项目文件都运行正常,为什么terminal文件路径的前面没有虚拟解释器的名称
开发语言·python
道传科技上位机2 小时前
深度学习环境搭建(pycharm+yolov5)
深度学习·yolo·pycharm
love530love2 小时前
MSYS2 环境下 Python 开发配置(结合 PyCharm)使用笔记
人工智能·windows·笔记·python·pycharm·virtualenv·uv
站大爷IP2 小时前
用Python 3+Qt打造你的第一个对话框:从零开始的手把手教程
python