news 2026/5/12 22:09:06

json转mask语义分割标签

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
json转mask语义分割标签
importbase64importjsonimportosimportos.pathasospimportPIL.Imagefromlabelmeimportutils# 输入输出目录json_dir=r"E:\data\钻孔摄像\core_iamge\json (1)"out_jpgs_path=r"E:\data\钻孔摄像\core_iamge\new\JPEGImages"out_mask_path=r"E:\data\钻孔摄像\core_iamge\new\SegmentationClass"os.makedirs(out_jpgs_path,exist_ok=True)os.makedirs(out_mask_path,exist_ok=True)# ---------- 第一步:收集所有 JSON 中的标签名称 ----------all_labels=set()forfile_nameinos.listdir(json_dir):ifnotfile_name.endswith(".json"):continuepath=os.path.join(json_dir,file_name)withopen(path)asf:data=json.load(f)forshapeindata["shapes"]:all_labels.add(shape["label"])# ---------- 第二步:构建全局固定的映射 ----------label_name_to_value={"_background_":0}foridx,labelinenumerate(sorted(all_labels),start=1):label_name_to_value[label]=idxprint("全局类别映射:",label_name_to_value)# ---------- 第三步:转换所有 JSON ----------forfile_nameinos.listdir(json_dir):ifnotfile_name.endswith(".json"):continuepath=os.path.join(json_dir,file_name)withopen(path)asf:data=json.load(f)# 获取图片数据imageData=data.get("imageData")ifnotimageData:imagePath=os.path.join(json_dir,data["imagePath"])withopen(imagePath,"rb")asf_img:imageData=base64.b64encode(f_img.read()).decode("utf-8")img=utils.img_b64_to_arr(imageData)# 使用全局映射生成标签矩阵lbl,_=utils.shapes_to_label(img.shape,data["shapes"],label_name_to_value)# 保存原图和标签图basename=file_name.split(".")[0]PIL.Image.fromarray(img).save(osp.join(out_jpgs_path,f"{basename}.jpg"))utils.lblsave(osp.join(out_mask_path,f"{basename}.png"),lbl)print("Done")
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/12 22:08:10

m4s-converter:B站缓存视频无损转换完整指南

m4s-converter:B站缓存视频无损转换完整指南 【免费下载链接】m4s-converter 一个跨平台小工具,将bilibili缓存的m4s格式音视频文件合并成mp4 项目地址: https://gitcode.com/gh_mirrors/m4/m4s-converter 你是否曾经为B站下架的视频感到惋惜&…

作者头像 李华
网站建设 2026/5/12 22:08:10

GTM自动化管理新范式:基于MCP协议构建开发者友好的API适配器

1. 项目概述:当GTM遇上MCP,一个为开发者定制的“翻译官” 如果你是一名经常与Google Tag Manager(GTM)打交道的开发者、数据分析师或营销技术专家,那么你一定对GTM那功能强大但API调用略显繁琐的特性又爱又恨。GTM的W…

作者头像 李华
网站建设 2026/5/12 22:07:18

Halcon实战:dyn_threshold在工业视觉中的高频信号提取与缺陷定位

1. 工业视觉中的高频信号提取挑战 在金属或玻璃制品的生产线上,表面缺陷检测一直是让工程师头疼的问题。那些肉眼几乎不可见的细微划痕、发丝般的裂纹,往往会在产品使用过程中演变成致命弱点。我曾在某汽车零部件厂亲眼见过,由于一个3微米深的…

作者头像 李华
网站建设 2026/5/12 22:06:06

终极实时窗口分辨率调整工具SRWE:打破屏幕限制的完整指南

终极实时窗口分辨率调整工具SRWE:打破屏幕限制的完整指南 【免费下载链接】SRWE Simple Runtime Window Editor 项目地址: https://gitcode.com/gh_mirrors/sr/SRWE 你是否曾为游戏截图分辨率太低而烦恼?是否需要在不同设备上测试UI布局却要反复重…

作者头像 李华
网站建设 2026/5/12 22:05:02

大模型评测实战指南:从基准测试到业务落地的科学评估体系

1. 项目概述:为什么我们需要一个“大模型评测”清单?如果你最近也在关注大语言模型(LLM)的发展,可能会和我有一样的感受:兴奋,但也伴随着巨大的信息过载。几乎每天都有新的模型发布,…

作者头像 李华
网站建设 2026/5/12 22:03:36

AI角色扮演引擎Anima:从LLM对话到图文生成的架构与实现

1. 项目概述:当AI绘画遇上角色扮演最近在AI绘画和角色扮演(Role-Playing, 简称RP)的交叉领域,一个名为“Anima”的项目引起了我的注意。简单来说,Anima是一个基于深度学习的AI角色扮演引擎,它允…

作者头像 李华