windows下使用labelImg标注图像

本文详细介绍了一款名为labelImg的图像标注工具,适用于深度学习数据集的创建。内容包括工具的下载、基本操作方法及快捷键,适合初学者快速上手。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

       工作中遇到一个更好用的标注软件,速度快,操作方便,分享一下:

https://blog.youkuaiyun.com/python_pycharm/article/details/102685591

用于深度网络训练的数据集做标注的方法和工具有好多,像Labelme、labelImg、yolo_mark、Vatic、Sloth等等,此处暂时只介绍其中的一种标注工具:labelImg。等到后期熟悉其他的标注工具会一一介绍。废话不多说,直接进入正题!

       此篇先介绍在windows下使用已经编译好的labelImg。

  一、labelImg工具下载:

         链接:https://pan.baidu.com/s/1hB-WxbBhhRDVYOBs7h961w 
        提取码:c8lc

         下载的文件是编译好的,可执行的labelImg.exe文件。直接将文件放在windows环境下,双击可执行。

                                             

 二、labelImg工具使用方法:

       1.双击labelImg执行文件图标,会出现操作界面:

       

       出现这样的窗口界面,说明labelImg已经正常开启,背景黑色的窗口是终端界面,不要理会.......

       在labelImg窗口的左边,有一些操作的功能,其中:“Open”是打开单个图像,“Open Dir” 打开文件夹,"Change Save Dir" 

       图像保存的路径,“Next Image” 切换到下一张图像,“Prev Image”切换到上一张图像,“Verify Image”校验图像,“Save”

       保存图像,“Create RectBox”画标注框一个,“Duplicate RectBox”重复标注框,“Delete RectBox”删除标注框,“Zoom In”

       放大图像,“Zoom Out” 缩小图像,“Fit Window”图像适用窗口,“Fit Width”图像适应宽度。

       当然,使用操作按钮不是很方便,下面介绍一些快速的快捷键,为无聊的标注工作节省一些时间。

       Hotkeys:

ctrl +Q退出软件ctrl + -缩小
ctrl + oopenfilectrl + =原始大小
ctrl + uopenDirctrl + Ffitwindow
ctrl + rChangeSaveDirctrl + E编辑标签
ctrl + s保存ctrl + shift + o打开的文件夹只显示.xml文件
ctrl + LboxlineColorctrl + shift + s 
ctrl + Jmove and edit Boxesctrl + shift + FfitWidth
ctrl + D复制框dnextImg
ctrl + H隐藏所有的框apreImg
ctrl + A显示所有的框space标记当前图片已标记
ctrl + +放大w画框
  Delete删除框

   三、开始图像数据标注:

         一般操作的顺序:“open file ”  -----"create rectbox " -----"输入类别名称 "-----“change save dir ”-----"Save"

         最后在保存文件的路径下生成.xml文件,.xml文件的名字是和标注照片的名字一样,如果要修改已经标注过

         的图像,.xml中的信息也会随之改变。得到的.xml 和PASCAL VOC所用格式一样!

                 

                                                    

       

         文章到这里,关于labelImg工具的使用基本结束了,要是你想在Linux系统、Ubantu、或者是MAC系统中使用labelImg,

         可以参考一个教程:https://github.com/tzutalin/labelImg/  

         这个项目里有具体的安装和使用教程,亲可以去实践一下。本人最近在做深度学习方面的工作,有正在从事或者想做这

         方面工作的朋友,可以留言共同交流。好的东西之所以能成为好,不是它本身有多好,而是在于它能被分享。

   

   

      

### LabelImg 标注完成后的保存方式 在使用 LabelImg 进行图像标注时,可以通过设置选项来决定保存的数据格式。以下是关于如何保存为 Pascal VOC 和 YOLO 格式的具体说明: #### 1. Pascal VOC 格式保存 当选择保存为 Pascal VOC 格式时,LabelImg 将生成一个 XML 文件,该文件包含了每张图片中的对象类别及其边界框的位置信息。这些位置通常以绝对像素坐标的形式表示。 要保存为 Pascal VOC 格式,在标注过程中可以选择默认的保存选项或者手动调整配置[^2]。每次完成一张图片的标注后,点击 **"Save"** 或者快捷键 **Ctrl+S** 即可自动生成对应的 `.xml` 文件。 #### 2. YOLO 格式保存 对于 YOLO 格式,LabelImg 可以直接将每张图片的标签信息存储在一个单独的 TXT 文件中。YOLO 的标注数据采用相对坐标系,这意味着所有的位置参数都相对于整个图像的高度和宽度进行标准化处理[^1]。 为了切换至 YOLO 模式并保存相应的 TXT 文件,需进入菜单栏中的 **Preferences -> Format** 并选中 “Yolo”。之后再执行保存操作,则会按照 YOLO 所需的标准格式创建文本记录文件[^3]。 #### 转换注意事项 如果需要实现两者之间的互相转换,比如从已有的 Pascal VOC 格式转成适合训练模型所需的 YOLO 形式或其他反之亦然的情况,也可以借助脚本程序辅助完成批量修改工作。例如 Python 编写的自动化工具能够读取原始 XML 文档解析出必要字段后再重组为目标框架下的新结构化文档形式输出。 ```python import xml.etree.ElementTree as ET def convert_voc_to_yolo(voc_file, img_width, img_height): tree = ET.parse(voc_file) root = tree.getroot() yolo_lines = [] for obj in root.findall('object'): bndbox = obj.find('bndbox') xmin = float(bndbox.find('xmin').text) xmax = float(bndbox.find('xmax').text) ymin = float(bndbox.find('ymin').text) ymax = float(bndbox.find('ymax').text) x_center = ((xmin + xmax) / 2) / img_width y_center = ((ymin + ymax) / 2) / img_height width = (xmax - xmin) / img_width height = (ymax - ymin) / img_height class_id = int(obj.find('name').text) # 假设类名已被映射为整数ID line = f"{class_id} {x_center:.6f} {y_center:.6f} {width:.6f} {height:.6f}" yolo_lines.append(line) with open(f'{voc_file[:-4]}.txt', 'w') as f: f.write('\n'.join(yolo_lines)) ``` 上述代码片段展示了如何通过解析 Pascal VOC XML 文件将其转化为 YOLO TXT 文件的一个简单例子。
评论 228
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值