位置: 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的使用)

  • 个体户申报重复申报怎么办
  • 客票服务主要包括
  • 现金流量为负的隐患
  • 已投入使用的机器设备才能计提折旧对吗
  • 填写三季度预缴所得税申报表应关注哪些事项
  • 所得税费用和应交税费的关系
  • 多开的增值税发票交多少税
  • 购入材料过程中支付运费
  • 境外中资企业转中资企业
  • 别人送我免费赠品
  • 黄金以旧换新工费多少钱一克
  • 返利抵扣货款
  • 期末数未分配利润为负数的会计分录怎么处理?
  • 支付证明单打印版
  • 公司亏损没有收入怎么办
  • 预缴税款后怎么开票
  • 环境保护税法什么时候出台
  • 车间改造用的材料有哪些
  • 收到退回留抵退款的短信
  • 资产处置损益借贷方向表示什么
  • 1697508857
  • 最新w10系统专业版
  • 苹果系统如何访问相册
  • 一般纳税人进项税额转出会计分录
  • 英雄联盟中该如何加好友
  • u盘装机大师怎么用
  • mac怎么airdrop给ipad
  • php中const
  • php怎么创建数据表
  • 编译报错place 30-681
  • runservice.exe - runservice是什么进程 有什么用
  • 安全生产责任险保障范围
  • thinkphp curl
  • PHP:imagecolorclosestalpha()的用法_GD库图像处理函数
  • 企业代扣代缴个人所得税会计分录
  • 支付税控服务费的账务处理
  • 收到现金货款存入银行会计分录
  • 代订住宿费报销
  • php获取表单数据的方法和区别
  • 杭州西湖古风
  • 购车的进项税怎么抵扣
  • vue3动态路由权限
  • 强大到无需疼无需宠,却幸运到有人宠有人疼什么意思
  • 小规模纳税人增值税税率
  • python获取字符串中汉字的个数
  • 交易所转交易所手续费是多少
  • 有合同没有发票怎么入账
  • 负债总计是负数
  • python统计出现次数并排序
  • 金蝶软件如何新增账套
  • 小企业会计准则调整以前年度费用分录
  • 固定资产盘盈为什么计入管理费用
  • 个人开咨询费 有哪些税
  • 销售商品发生的销售退回属于期间费用吗
  • 对外投资如何做帐
  • 小规模纳税人如何申请专票
  • 哪些可以做进项税
  • 收到退回多付的材料退款
  • 地方教育附加申报
  • 怎么设置现金流
  • mysql 5.7.11 winx64初始密码修改
  • Linux(Ubuntu)下Mysql5.6.28安装配置方法图文教程
  • win8的应用商店在哪
  • Vista下WMC不能播放RMVB解决办法
  • 电脑输入systeminfo
  • hyper-v搭建
  • win10下安装office2007
  • linux历史操作
  • 有趣的linux命令
  • linux系统的
  • js数据的基本类型有哪些
  • dos批处理实例800例
  • 如何编写一个完整的教学目标
  • jquery获取元素css
  • js中文本框设置的代码
  • javascript delete 使用示例代码
  • javascript学习指南
  • 如何查询纳税信用等级证明
  • 长安cs752016款2.0手动
  • 山东省合格考密码
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设