位置: IT常识 - 正文

YOLOv5 txt标签转图像标签(多个标签)(yolov5标签格式)

编辑:rootadmin
YOLOv5 txt标签转图像标签(多个标签) Python YOLOv5 txt标签转图像标签(多个标签txt的数据如图所示1.读原始图像以及对应的txt文件2.获得原始图像的大小3.生成一张大小相同,黑色背景的图片4.读取txt文件,循环的增加标签5.获得不规则图形(标签)6.完整代码7.示例txt的数据如图所示

推荐整理分享YOLOv5 txt标签转图像标签(多个标签)(yolov5标签格式),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:yolov5文档,yolo标签含义,yolo中文标签,yolo xml转txt,yolov5标签格式,yolo xml转txt,yolo xml转txt,yolov5标签格式,内容如对您有帮助,希望把文章链接给更多的朋友!

这里每一行是一个标签,原始的图片如图所示 这里有五个龋齿

1.读原始图像以及对应的txt文件YOLOv5 txt标签转图像标签(多个标签)(yolov5标签格式)

我这里图像和txt的名称是相同的

def init_func(): # txt文件夹操作 folder_type = 'train' # folder_type = 'val' img_dir = '../teeth_data/' + folder_type + '/image' txt_dir = '../teeth_data/' + folder_type + '/txt' save_dir = '../teeth_data/' + folder_type + '/mask' files = os.listdir(img_dir) for file in files: name = file[0:-4] img_path = img_dir + '/' + name + '.png' txt_path = txt_dir + '/' + name + '.txt'

这样我就能得到对应的图像和txt文件了,然后我需要获得原始图像的大小

2.获得原始图像的大小img = cv2.imread(img_path) # 读取图片信息img_x = img.shape[0]img_y = img.shape[1]3.生成一张大小相同,黑色背景的图片img_save = np.zeros((img_x, img_y, 1)) # 黑色背景4.读取txt文件,循环的增加标签# 打开文件file = open(txt_path, "r")# 逐行读取文件内容for line in file: data = txt2mask_new(img_x, img_y, line) # 获得不规则图形 color = 225 cv2.fillPoly(img_save, # 原图画板 [data], # 多边形的点 color=color)save_path = save_dir + '/' + name + '.png'cv2.imwrite(save_path, img_save)5.获得不规则图形(标签)def txt2mask_new(img_x, img_y, line): # 处理每一行的内容 data = line.split('\n')[0] d = data.split(' ', -1) # d[-1] = d[-1][0:-1] data = [] for i in range(1, int(len(d) / 2) + 1): data.append([img_y * float(d[2 * i - 1]), img_x * float(d[2 * i])]) data.append(data[0]) data = np.array(data, dtype=np.int32) return data

这样就能实现所有功能啦!完整的代码如下:

6.完整代码def txt2mask_new(img_x, img_y, line): # 处理每一行的内容 data = line.split('\n')[0] d = data.split(' ', -1) # d[-1] = d[-1][0:-1] data = [] for i in range(1, int(len(d) / 2) + 1): data.append([img_y * float(d[2 * i - 1]), img_x * float(d[2 * i])]) data.append(data[0]) data = np.array(data, dtype=np.int32)return datadef init_func(): # txt文件夹操作 folder_type = 'train' # folder_type = 'val' img_dir = '../teeth_data/' + folder_type + '/image' txt_dir = '../teeth_data/' + folder_type + '/txt' save_dir = '../teeth_data/' + folder_type + '/mask' files = os.listdir(img_dir) for file in files: name = file[0:-4] img_path = img_dir + '/' + name + '.png' txt_path = txt_dir + '/' + name + '.txt' img = cv2.imread(img_path) # 读取图片信息 img_x = img.shape[0] img_y = img.shape[1]img_save = np.zeros((img_x, img_y, 1)) # 黑色背景# 打开文件 file = open(txt_path, "r") # 逐行读取文件内容 for line in file: data = txt2mask_new(img_x, img_y, line) color = 225 cv2.fillPoly(img_save, # 原图画板 [data], # 多边形的点 color=color) save_path = save_dir + '/' + name + '.png' cv2.imwrite(save_path, img_save) # 关闭文件 file.close()if __name__ == '__main__': init_func()

最终输出的图像如下:

7.示例

本文链接地址:https://www.jiuchutong.com/zhishi/295343.html 转载请保留说明!

上一篇:vue使用scss(vue使用scss报错)

下一篇:百度地图API的使用(附案例)(百度地图api的使用)

  • 小型微利企业所得税减免政策
  • 学生兼职怎么交个人所得税吗
  • 生产调味料用什么手续
  • 两地发工资个税处理
  • 库存商品结转成本摘要怎么写
  • 房租雇东不开发票只有收据怎么处理?
  • 蔬菜开税票纳税吗
  • 农产品核定扣除增值税进项税额计算表
  • 转出未交增值税是借方还是贷方
  • 结构性存款是
  • 社保缴纳已超标准
  • 增值税普通发票需要交税吗
  • 股东分红利息
  • 应付账款扣除商业折扣
  • 现金存入银行会计摘要怎么写
  • 企业所得税业务费扣除标准
  • 企业垫付土地补偿款
  • 律师事务所日常管理松懈混乱整改措施
  • 部队收礼怎么处罚
  • 营改增后租金如何交税
  • 工商年报填错了能改吗
  • 2016年172号
  • 子公司与总公司的关系说明书
  • 财政收据可以抵税吗
  • 生产企业出租设备如何开票
  • 委托进口代理协议
  • win10蓝牙驱动程序下载
  • 汇算清缴租赁费包括物业管理吗
  • 收到增值税进项税增量留抵退税如何列报
  • 建筑工程简易计税可以抵扣吗
  • 年度汇算清缴收入应该填什么
  • 电脑bios找不到vt
  • .exe是什么文件
  • 文竹怎么养才能更旺盛浇点醋
  • php yeid
  • 保险公司应收账款管理现状及存在的问题
  • 材料暂估入账
  • 固定资产终止确认的会计处理
  • php unicode
  • php短信验证免费接口配置
  • mysql的间隙锁与排他锁
  • 二分查找和折半查找一样吗
  • 注销的公司需要清算吗
  • jdbc描述
  • mysql主要支持哪些数据类型?
  • 小规模纳税人的条件
  • sql2005安装步骤
  • mysql基本查询
  • 去银行打对账单和回执单需要拿什么
  • 银行存款日记账是企业的还是银行的
  • 白酒消费税计税价格由谁核定
  • 库存股处理方法有哪些
  • 公司在建厂房图片大全
  • 产业扶持资金管理办法
  • 运费开什么发票
  • 债务重组的会计例题
  • 企业转让固定资产发生的费用
  • 房地产开发企业土地增值税怎么计算
  • 旅游饮食服务企业会计核算的特点包括
  • win10禁用系统uac
  • windows 专业版10安装后文件会丢失嘛
  • bios没有usb启动项解决方法联想
  • pkg-config命令
  • win7玩穿越火线电脑应该怎么设置
  • win8 休眠
  • javascript基于什么的语言
  • js限制数组长度
  • windows运行bat文件命令
  • python2.7多进程
  • unity中time.time
  • 获取nodejs命令行信息
  • Node.js中的全局对象有
  • JavaScript获取网址之后跳转
  • js辅助器下载
  • 把下一行的数字去掉
  • unity如何成一组
  • js原生dialog
  • android开源小项目
  • 如何查询自己电子邮件地址
  • 江苏省常州市国事业单位国企招录测绘工程研究生公告
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设