当前位置: 首页 > news >正文

labelme可执行程序 标注软件使用 coco yolo格式数据集 标注软件使用 yolo训练

labelme是一个非常强大的图像标注工具,用户可通过图形界面手动标注图像中的目标区域,并生成相应的标注文件。这些标注文件通常以 JSON 格式保存,可以方便地转换为其他格式(如 YOLO、Pascal VOC 等),以便用于深度学习模型的训练。

安装 LabelMe

1. 使用预编译的可执行程序

快速安装并使用labelme,可以下载预编译的可执行程序。以下是步骤:

  • Windows 用户

    • 访问 LabelMe GitHub Releases 页面。
    • 下载最新版本的 Windows 可执行文件(例如labelme-<version>-win64.exe)。
    • 运行下载的.exe文件进行安装。
    • 安装完成后,你可以在开始菜单中找到labelme并运行它。
  • MacOS 和 Linux 用户

    • 对于 MacOS 和 Linux,推荐使用 Python 脚本安装,因为官方没有提供预编译的可执行文件。
2. 使用 Python 脚本安装

或使用 Python 脚本安装labelme,可以按照以下步骤操作:

# 安装依赖库pipinstallpyqt5 lxml# 安装 labelmepipinstalllabelme

安装完成后,你可以通过命令行启动labelme

labelme

使用 LabelMe 进行标注

1. 打开图像文件
  • 启动labelme后,点击File->Open或者直接拖拽图像文件到labelme界面中。
2. 创建标签
  • 在右侧的Label List中添加你需要的标签。例如,在你的截图中,有PLCK两个标签。
3. 绘制多边形
  • 选择左侧工具栏中的Create Polygons工具。
  • 在图像上点击多个点来绘制多边形,最后双击结束绘制。
  • 选择绘制好的多边形,并在右侧的Polygon Labels中选择对应的标签。
4. 保存标注
  • 标注完成后,点击File->Save保存标注结果。默认情况下,labelme会生成一个与图像同名的.json文件。

将 LabelMe JSON 转换为 YOLO 格式

为了将labelme生成的 JSON 文件转换为 YOLO 格式,你可以使用labelme提供的脚本labelme_json_to_dataset.py。以下是详细步骤:

1. 安装额外依赖
pipinstallimgviz pycocotools
2. 转换脚本

创建一个 Python 脚本来批量转换 JSON 文件:

importosimportjsonfromlabelmeimportutilsimportnumpyasnpimportglobimportPIL.Imagedefconvert_labelme_json_to_yolo(json_file,output_dir):withopen(json_file)asf:data=json.load(f)image_path=os.path.join(os.path.dirname(json_file),data['imagePath'])image=np.asarray(PIL.Image.open(image_path))height,width=image.shape[:2]yolo_lines=[]forshapeindata['shapes']:label=shape['label']points=shape['points']# Convert polygon to bounding boxx_coords=[p[0]forpinpoints]y_coords=[p[1]forpinpoints]xmin=min(x_coords)xmax=max(x_coords)ymin=min(y_coords)ymax=max(y_coords)# Normalize coordinatesx_center=(xmin+xmax)/2/width y_center=(ymin+ymax)/2/height w=(xmax-xmin)/width h=(ymax-ymin)/height class_id=label_list.index(label)yolo_line=f"{class_id}{x_center:.6f}{y_center:.6f}{w:.6f}{h:.6f}"yolo_lines.append(yolo_line)txt_file=os.path.splitext(json_file)[0]+'.txt'withopen(txt_file,'w')asf:f.write('\n'.join(yolo_lines))if__name__=='__main__':label_list=['PL','CK']# 根据你的标签列表调整json_files=glob.glob('path/to/json/files/*.json')forjson_fileinjson_files:convert_labelme_json_to_yolo(json_file,'output_dir')
3. 运行脚本

将上述脚本保存为convert_labelme_to_yolo.py,然后运行:

python convert_labelme_to_yolo.py

这将把所有labelme生成的 JSON 文件转换为 YOLO 格式的.txt文件,方便后续的模型训练和推理。

http://www.jsqmd.com/news/1292414/

相关文章:

  • 逾期率_CI上下限
  • 大模型岗位高薪揭秘与零基础入门指南
  • STM32F103唯一ID读取实战:原理、代码实现与高级应用
  • AI搜索时代企业营销困局:流量悄悄流失?全域GEO优化破局新思路
  • C#十六进制格式化ToString(X)与ToString(X2)详解:从原理到实战应用
  • 中山口碑好的贴标机厂家靠谱之选,双诚智能如何?
  • C++高并发在线判题系统架构:负载均衡与微服务实践
  • VMware macOS解锁工具完全指南:在Windows/Linux上运行苹果系统的终极解决方案
  • 从阿波罗到现代:计算能力 8 个数量级飞跃,RAM 见证计算机发展历程!
  • 2026 年现阶段焉耆回族自治专业的毛细管空调系统施工公司怎么联系,夏天在家像裹棉被?这玩意儿竟让你体感比开风扇还舒服-博力久能暖通 - 行业推荐官[官方】--
  • C#配置管理:App.config与.settings文件的原理、实践与演进
  • 深入OWASP ZAP源码:结对编程解析Web安全工具核心架构与插件开发
  • AI与数学定理证明:LongCat-Flash-Prover技术解析
  • PLC编程指令核心解析:从位逻辑到数据操作,构建自动化控制基石
  • 基于Django与人脸识别的智能考勤系统开发实践
  • 照片大小修改:打印店说文件太大时先答三道判断题 - AI测评专家
  • Unity游戏开发实战:BFS、DFS与A*寻路算法性能深度对比与优化
  • Harris角点检测算法原理与Matlab实战实现
  • CODESYS + UaExpert + Qt OPC UA 入门指南
  • 保研全流程实战指南:从信息战到九推系统填报
  • TPFanCtrl2终极指南:ThinkPad风扇智能控制完整解决方案
  • 基于Springboot+Vue的高校竞赛管理系统(源码+lw+部署文档+讲解等)
  • Nginx安装与启动全指南:从源码编译到systemd服务管理
  • CPU、GPU、TPU/NPU/XPU:从架构原理到场景适配的处理器全解析
  • 重测信度:测量工具稳定性的核心评估方法与工程实践
  • 易潮解晶体加工注意事项
  • 相场法模拟金属定向凝固枝晶生长技术解析
  • 【面试题-多线程】什么是 ABA 问题,怎么产生的,怎么解决?
  • 静电旋杯喷枪厂商有哪些
  • Electron与WebView2实战:将网页快速打包为Windows桌面应用