【LabelImg】

文章目录
- 1、labelimg
- 2、install
- 3、use
- 4、Hotkeys
- 5、error
1、labelimg
github 源码地址:https://github.com/HumanSignal/labelImg
LabelImg 是一款轻量级、开源的图像标注工具,主要用于目标检测(Object Detection)任务的标注工作。
它支持手动框选图像中的目标物体,并生成符合主流深度学习框架(如YOLO、Pascal VOC等)格式的标注文件。
2、install
pip install labimgimg
安装完成后,打开 cmd ,输入 labelimg 即可启动应用
设定类别,参考 labelImg导入预设标签predefined_classes.txt文件
在labelimg 库目录下,新建 data 文件夹,

在文件夹中新建 predefined_classes.txt

在 txt 中配置好所需的标注类别
标注的时候,需要在标签文件夹中新建一个 classes.txt 类别文件夹
3、use
来自 LabelImg(目标检测标注工具)的安装与使用教程


4、Hotkeys

5、error
drawLine(self, Union[QPointF, QPoint], Union[QPointF, QPoint]): argument 1 has unexpected type ‘float’
解决方法来自:【labelimg标注图片时float报错问题 完美解决方案】argument 1 has unexpected type ‘float‘
修改 labelimg.py 源码,在对应环境的 python 库目录下(Lib\site-packages\labelImg)
在MainWindow类之前粘贴上下面这段代码
class QPainterx(QPainter):def drawLine(self, x1: float, y1: float, x2: float, y2: float):super().drawLine(int(x1), int(y1), int(x2), int(y2))def drawRect(self, x: float, y: float, w: float, h: float):super().drawRect(int(x), int(y), int(w), int(h))def drawText(self, x: float, y: float, s: object):super().drawText(int(x), int(y), s)
修改 MainWindow 的 __init__ 方法
self.canvas = Canvas(parent=self)
下面补充一行内容
self.canvas = Canvas(parent=self)
self.canvas._painter = QPainterx()
修改 scroll_request 方法,set_zoom 方法,zoom_request 方法箭头处

