2026/11/3 1:26:41

从散图到可训练数据集:用 Labelme 一个下午完成图像标注全流程

从散图到可训练数据集:用 Labelme 一个下午完成图像标注全流程 从散图到可训练数据集用 Labelme 一个下午完成图像标注全流程【免费下载链接】labelmeImage annotation with Python. Supports polygon, rectangle, circle, line, point, and AI-assisted annotation.项目地址: https://gitcode.com/gh_mirrors/la/labelme图是攒了一堆可模型还饿着肚子——因为标注一个字都没标。Labelme 是一个基于 Python 与 Qt 的桌面图像标注工具干的就是这件事把散落的照片逐张标注、按图存成 JSON再经一条命令批量转成 VOC 或 COCO 数据集直接对接训练流程。整个过程不需要写一行代码。先判断它适不适合你的项目上手之前花一分钟确认边界开源协议是 GPL-3.0-only。只在自己团队内部标数据完全没问题一旦基于它做二次开发还要把软件分发出去就得按 GPL 条款走拿不准就问一句法务。64 位 macOS、Windows、Linux 都能跑Python 要求 3.12 及以上。可标的形状有五种多边形、矩形、圆形、线条、点另支持图像级 flags整张图挂一个类别标记分类和质检场景用得上。产物是逐图的 JSON再经仓库自带的转换脚本可得到 VOC 的 XML 与分割掩码或 COCO 的annotations.json。你的任务落在这几种形状里训练框架吃 VOC 或 COCO它就没问题。安装 Labelme 并打开第一个目录git clone https://gitcode.com/gh_mirrors/la/labelme cd labelme pip install -e .装完别急着标自己的图。examples 示例目录 里备好了目标检测、语义分割、分类、视频标注等成套样例先用现成的练手感最省事labelme examples/instance_segmentation/data_annotated窗口打开后先认一遍地盘左侧竖条是按形状分组的创建工具中间是画布右侧从上到下是 Label List全局可用标签、Polygon Labels当前图内的标注、File List整个目录的文件清单。标题栏写着当前第几张 / 共几张你随时知道自己标到哪。上图中多边形已经闭合标签对话框正等着填类别名对话框下方还预填了上一次用过的标签。标出第一个多边形就着打开的这张沙发照片标第一个人物这是最核心的工作流。点左侧Create Polygons进入标注模式光标变成十字。沿人物轮廓逐点单击每落一个点画布上就多出一个绿色小圆点折线把各点依次连起来实时描出你当前的进度。别急着闭合——发现前一个点偏了按CtrlZ退掉它再点一次就行。绕回到起点附近双击或按 Enter闭合。这时屏幕上会弹出一个标签对话框输入类别名比如person点 OK多边形立刻换成该标签对应的颜色和填充色。最后CtrlS保存窗口状态里能看到保存动作完成的提示。一张图上的第一个人物到这一步就算真正落袋了。保存的到底是什么图旁的同名 JSON很多人标完第一张就去翻目录其实答案很简单每张图的标注就是它旁边那个同名的.json文件和图片同目录。保存时它被新建或覆盖打开看一下shapes数组里每个形状都有label、顶点坐标points、group_id外加图片自身的imagePath、宽高和文件大小——信息量足以还原图上任何一个形状。回看右侧 File List带勾选标记的图就是已经有标注的没勾选的说明还没标。每保存一次对应图旁的 JSON 就多一分完整。批量标注时这个清单就是你的进度表。一条命令转成 VOC 或 COCO 数据集标注攒够一批后用 examples 目录 里现成的脚本把整个标注目录一次转掉cd examples/instance_segmentation ./labelme2voc.py data_annotated data_dataset_voc --labels labels.txt ./labelme2coco.py data_annotated data_dataset_coco --labels labels.txt前者产出 VOC 结构JPEGImages、Annotations矩形框的 XML、SegmentationClass等掩码目录后者产出JPEGImages加一个annotations.jsonbbox 字段就在里面。两种结构主流训练框架都认。转换只是前半程后半程是校验。打开生成目录里的 Visualization 图片逐张看掩码是否贴住了目标、每个类别的颜色是否对得上标签表。这张就是转换后的像素级可视化每个类别一种颜色右下角图例给出数值与类别的对应方便逐像素核对。发现某个多边形偏了回 Labelme 里改掉、重存、再跑一遍脚本——来回一次只要几十秒闭环成本很低。从能用到顺手想标得快一些有三件事值得先做。把标签清单预置到项目里在图片目录放一个labels.txt每行一个合法标签启动时加--labels labels.txt载入再配--validate-label exact强制校验拼错或漏写的标签在对话框里就会被挡下。换一批图片时带着同一份labels.txt重新开目录标签体系就复用了。键盘流是熟练后的默认状态CtrlS保存、CtrlZ撤销、Delete删掉选中形状D和A切下一张、上一张CtrlF让画面适应窗口。标到几十张之后你会发现鼠标只在落顶点时才需要动。目标轮廓大又规则时顶部工具栏的 AI-Assisted Annotation 面板能省掉大部分描边时间选一个 SAM 系列模型在图上点一下它就自动产出多边形或掩码你只负责修边。视频场景同理用D键逐帧推进每帧各存各的 JSON。图中 File List 是一串连续帧当前帧上标好了 track 和 car按D就推进到下一帧继续。标错了、想复用、要保质量怎么办标错了怎么回退CtrlZ是万能后悔药画多边形时每按一次退掉最后一个顶点画完了就退掉整个形状Delete则把选中形状整个删掉改标签选CtrlE打开标签编辑。质量怎么保证源头靠--validate-label exact把拼写问题挡在对话框里过程靠 File List 的勾选标记追踪进度交付前重跑一次转换脚本抽查 Visualization 即可。批量标注最怕的就是错误在最后一刻集中暴露前两步能把它压散。分类任务也要画形状吗不用。flags 面板可以直接给整张图挂标签整图即样本适合分类和质检。给自己布置一个可验收的小作业挑一张自己的图完整走一遍标注 → 保存 → 转换 → 校验标两三个形状CtrlS落盘看一眼同名的.json是否生成把它放进一个标注目录跑一次labelme2voc.py或labelme2coco.py打开产物目录确认JPEGImages、Annotations或annotations.json都在Visualization 里掩码也贴得住。再对照你的训练脚本读目录的方式确认字段对得上。全部对上了这套流程就算真正跑通剩下的只是把同样的动作重复到整个数据集上。【免费下载链接】labelmeImage annotation with Python. Supports polygon, rectangle, circle, line, point, and AI-assisted annotation.项目地址: https://gitcode.com/gh_mirrors/la/labelme创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考