4. 标注工具选型与实操环境搭建
煤岩识别数据标注与通用目标检测标注有一个显著差异:煤岩图像往往来自井下低照度、高粉尘、强反光环境,煤块与岩块的边界模糊,同一张图上可能同时存在“煤”“岩”“夹矸”“阴影干扰”等多种需要区分的对象,且标注结果要能直接服务于分割或检测模型的训练。因此,工具选型不能只看“能不能画框”,而要看它是否支持多边形/掩膜标注、是否便于多人分工与审核、是否能导出与训练框架匹配的格式。本节围绕 Labelme 与 CVAT 两类主流工具展开对比,并给出可落地的安装配置与团队协作初始化流程。
一、两类工具的定位差异
Labelme 是轻量级桌面标注工具,核心优势是安装简单、离线可用、原生支持多边形与掩膜标注,输出 JSON 中直接记录每个多边形的顶点坐标和标签,非常适合小团队快速启动分割类标注。它的短板在于协作能力弱:没有内置的任务分配、进度统计和审核机制,多人标注时通常靠“分文件夹 + 约定命名”来管理,版本一致性依赖人工纪律。
CVAT 是面向团队的 Web 标注平台,支持多用户、任务切分、角色权限、审核(review)流程和多种导出格式,适合标注量较大、需要质量控制的场景。它的代价是部署与运维成本更高,需要服务端环境,团队要有人负责账号、项目和数据管理。对于煤岩识别这类需要“标注—复核—返修”闭环的任务,CVAT 的流程优势在数据量上升后会明显体现。
选型时可参考下面的判断关系:如果团队不超过 3 人、数据量在数千张以内、以离线环境为主,Labelme 足够;如果数据量上万、需要多人并行和审核留痕,优先 CVAT。两者并非互斥,常见做法是先用 Labelme 快速验证标注规范,规范稳定后再迁移到 CVAT 做规模化生产。
二、Labelme 的安装与配置
Labelme 基于 Python,推荐在独立虚拟环境中安装,避免与训练环境的依赖冲突。以 Python 3.9 为例,在命令行执行:
python -m venv labelme_env
labelme_env\Scripts\activate # Windows
# source labelme_env/bin/activate # Linux / macOS
pip install labelme==5.4.1
labelme
启动后通过“文件—打开目录”载入图像文件夹。煤岩标注建议在“编辑—首选项”中关闭自动保存,改为手动保存,避免误操作覆盖;同时把标签文件默认保存到图像同目录,便于后续脚本批量转换。标注时用“创建多边形”沿煤块或岩块轮廓逐点勾画,闭合后输入标签名。标签名必须与团队约定的标签体系完全一致,例如统一使用 coal、rock、gangue、shadow,不要出现“煤”“煤炭”“coal_block”混用,否则后续合并数据集时会出现标签分裂。
Labelme 的 JSON 结构包含 shapes 数组,每个元素有 label 和 points 字段,points 是图像坐标系下的多边形顶点(原点在左上角,x 向右、y 向下)。批量转换时可用官方脚本 labelme2coco.py 生成 COCO 格式,命令形如:
python labelme2coco.py coal_imgs coal_coco --labels labels.txt
其中 labels.txt 每行一个标签名,顺序决定类别 id。转换后应抽查一张图的 annotations,确认 category_id 与标签对应关系正确,再进入训练流程。
三、CVAT 的部署与项目初始化
CVAT 官方提供 Docker Compose 部署方式,适合在团队内网服务器上搭建。基本步骤是克隆仓库、拉取镜像并启动:
git clone https://github.com/opencv/cvat
cd cvat
docker compose up -d
docker exec -it cvat_server bash -ic 'python3 manage.py createsuperuser'
启动后浏览器访问服务器地址的 8080 端口,用超级用户登录。随后按“项目—任务—作业”的层级组织数据:先建项目并定义标签集合(煤、岩、夹矸、阴影干扰),再在项目下创建任务并上传图像,最后把任务切分为若干作业分配给标注员。CVAT 的标签颜色建议与煤岩语义对应,例如煤用深灰、岩用浅灰、夹矸用橙色,减少标注时的视觉误判。
团队协作初始化的关键动作是“试标校准”:从数据集中抽取约 20 张覆盖不同工况(强反光、粉尘遮挡、边界模糊)的图像,让所有标注员各自标注,再由审核员逐张比对。重点检查三类分歧:边界点取在煤岩过渡带的哪一侧、夹矸厚度小于多少像素时不计入、阴影区域是否单独成类。把结论写进标注规范文档,作为后续全量标注的依据。这一步看似费时,但能显著降低后期返修率。
四、协作流程与质量控制要点
无论使用哪种工具,团队协作都应落实几条纪律:图像按批次编号,标注文件与图像同名同目录,禁止跨批次混放;每个作业完成后由审核员抽检,抽检比例在项目初期可设为 100%,规范稳定后降到 20%~30%;发现系统性偏差时暂停后续作业,先统一标准再继续。CVAT 可直接在作业上标记“拒绝/返修”,Labelme 则需借助共享表格记录返修清单。
完成本节的环境搭建后,团队应能稳定产出格式统一、标签一致的标注文件,并具备可追溯的审核记录。这是后续混淆矩阵评估能够可信的前提——如果标注本身存在标签混用或边界标准不一,混淆矩阵反映的将是标注噪声而非模型真实性能。