Label Studio 图像椭圆标注实战:image_ellipses 示例的 EllipseLabels 配置、预标注与结果格式解析

发布时间:2026/11/7 4:31:33

Label Studio 图像椭圆标注实战:image_ellipses 示例的 EllipseLabels 配置、预标注与结果格式解析 Label Studio 图像椭圆标注实战:image_ellipses 示例的 EllipseLabels 配置、预标注与结果格式解析【免费下载链接】label-studioLabel Studio is a multi-type data labeling and annotation tool with standardized output format项目地址: https://gitcode.com/GitHub_Trending/la/label-studioLabel Studio 的EllipseLabels标签用于在图像上绘制带类别标签的椭圆边界框,常用于行星、细胞、圆形 UI 元素等非矩形目标的分段标注。本文基于仓库内官方示例 image_ellipses 及其说明文档 START.md,完整讲解椭圆标注环境的安装、服务启动命令、Label 配置 XML、任务数据与预标注结构,并结合编辑器源码剖析椭圆区域(EllipseRegion)的几何字段与最小尺寸校验逻辑,帮助你在项目中直接复用这套椭圆标注方案。示例文件结构与角色image_ellipses示例位于编辑器源码的 examples 目录下,目录结构如下:文件作用START.md安装与启动指南(本文主体)config.xmlLabel 配置:Image EllipseLabels Choicestasks.json标注任务数据,含模型预标注annotations/1.json已完成标注的示例结果index.js将 config/tasks/annotation 统一导出为ImageEllipselabels对象index.js 的导出方式说明该示例可直接被 Playground 或 Storybook 类宿主引用:import config from ./config.xml; import tasks from ./tasks.json; import annotation from ./annotations/1.json; export const ImageEllipselabels { config, tasks, annotation };这种「一个目录 一个可运行标注场景」的组织方式在 examples 目录下贯穿image_bbox、image_polygons、image_keypoints等所有图像示例,是快速上手各类标注任务的官方模板。环境安装(Linux / Ubuntu)START.md 给出的安装步骤基于 Python 3.6 virtualenv 的独立环境:# install python and virtualenv apt install python3.6 pip3 install virtualenv # setup python virtual environment virtualenv -p python3 env3 source env3/bin/activate # install requirements cd backend pip install -r requirements.txt需要注意版本演进带来的路径差异:文档中cd backend对应的是早期仓库布局。在当前仓库中,Label Studio 服务端代码已收敛到 label_studio/ 包,依赖管理改用 pyproject.toml 与uv.lock,因此在新克隆的仓库中按 安装文档 的流程配置环境即可;上述 START.md 步骤仍可作为「用 virtualenv 隔离环境、按 requirements 安装依赖」这一方法论的参考。启动标注服务:server.py 参数解析文档给出的启动命令:python server.py -c config.json -l ../examples/image_ellipses/config.xml -i ../examples/image_ellipses/tasks.json -o output参数含义:-c config.json:服务端本地配置(数据库、认证等);-l:指定 Label 配置文件路径;-i:导入任务文件(JSON);-o:标注输出目录。两点实操提示:路径需按当前仓库结构调整。示例中的../examples/image_ellipses/...是旧布局下的相对路径;当前仓库中该示例实际位于 web/libs/editor/src/examples/image_ellipses/,启动时应把-l与-i指向这两个文件的真实位置,例如config.xml与tasks.json的当前完整路径分别为web/libs/editor/src/examples/image_ellipses/config.xml和web/libs/editor/src/examples/image_ellipses/tasks.json。命令行参数由 label_studio/core/argparser.py 中的parse_input_args解析,服务端入口为 label_studio/server.py,可用于核对参数的完整取值。标注配置:config.xml 逐项解读示例的完整 Label 配置:View Image nameimg value$image/Image EllipseLabels nametag toNameimg fillOpacity0.5 strokeWidth3 Label valuePlanet backgroundyellow/Label Label valueMoonwalker backgroundred/Label /EllipseLabels Choices namechoice toNameimg Choice valueSpace / Choice valueUnderground / /Choices /ViewImage nameimg value$image:图像对象标签,value绑定任务data字段中的$image;它是所有区域控件的标注目标(toNameimg)。EllipseLabels:带类别的椭圆控件。fillOpacity0.5控制椭圆填充透明度,strokeWidth3控制描边宽度;两个子Label定义类别Planet(黄色背景)与Moonwalker(红色背景),background仅影响编辑器 UI 中类别的视觉颜色。Choices:与椭圆并行的图像级单选(如场景为Space/Underground),演示了「区域标注 全局属性标注」组合的场景。从源码结构看,椭圆控件的完整属性定义在 web/libs/editor/src/tags/control/Ellipse.js 的TagAttrs中,包含opacity(默认0.2)、fillColor/strokeColor(默认#f48a42)、strokeWidth(默认1)、canRotate(默认true,控制是否显示旋转手柄)以及smart/smartOnly(智能预标注工具开关)。官方属性参考还可对照 ellipse 标签文档 与 ellipselabels 标签文档。任务数据与模型预标注tasks.json 包含 3 个任务,每个任务的data.image指向一张示例图片。第一个任务额外携带predictions数组,展示模型预标注(Active Learning)的标准结构:{ model_version: model 1, created_ago: 3 hours, result: [ { from_name: tag, to_name: img, type: ellipselabels, value: { x: 50.4, y: 50.763073639274279, ellipselabels: [Planet], rotation: 0, radiusY: 10.672358591248665, radiusX: 13.333333333333334 } } ] }关键约定:type固定为ellipselabels,与 tools/Ellipse.js 中声明的stateTypes一致;from_name/to_name必须与 config.xml 中EllipseLabels nametag和Image nameimg对应,编辑器据此把预标注挂载到正确的控件上;value使用相对坐标(0~100 的百分比体系),而非像素值,因此该预标注在不同分辨率的图片上均可复用。标注结果格式:annotations/1.jsonannotations/1.json 展示了一条完整的人工标注,result数组中有两条记录:{ result: [ { from_name: tag, to_name: img, type: ellipselabels, value: { x: 50.4, y: 50.763073639274279, ellipselabels: [Planet], rotation: 0, radiusY: 10.672358591248665, radiusX: 13.333333333333334 } }, { from_name: choice, type: choices, value: { choices: [Space] } } ] }各几何字段的含义:字段含义x/y椭圆中心点在图像上的百分比坐标radiusX/radiusY沿 X/Y 方向的半轴长(百分比)rotation椭圆旋转角(度)ellipselabels命中的类别值数组注意椭圆区域以「中心 双半径 旋转」表达,与image_bbox示例中「左上角 宽/高」的矩形表达不同——这也是椭圆更适合描述行星、瞳孔、圆形徽标等目标的几何原因。源码实现:Ellipse 工具的绘制与校验逻辑椭圆标注的交互行为由 web/libs/editor/src/tools/Ellipse.js 定义,几个可验证的实现细节:工具注册与快捷键:模型名为EllipseTool,group: segmentation,shortcut: tool:ellipse,即编辑器工具栏中可切换为椭圆工具,快捷键组为tool:ellipse。两点式绘制:工具由types.compose组合了BaseTool、ToolMixin与TwoPointsDrawingTool(见 Ellipse.js 组合),说明用户通过拖拽两个对角点定义椭圆的外接矩形,编辑器再换算出中心与双半径。最小尺寸校验:beforeCommitDrawing 要求radiusX MIN_SIZE.X radiusY MIN_SIZE.Y才允许提交区域,即过小的拖拽不会生成无效标注。区域字段一致性:createRegionOptions 新建区域时初始化为x, y, radiusX: 1, radiusY: 1,与annotations/1.json中的结果字段完全对应。椭圆区域的渲染与交互层在 web/libs/editor/src/regions/EllipseRegion.jsx,并有配套单元测试 EllipseRegion.test.jsx 可查证行为边界;Ellipse与EllipseLabels两个标签均在 tags/control 目录中通过Registry.addTag注册进编辑器。小结与复用要点复现本示例的最小闭环:准备一张图片 URL → 按 config.xml 编写Image EllipseLabels配置 → 按 tasks.json 组装任务 → 用server.py -l config -i tasks启动服务;椭圆结果的标准化输出字段为x / y / radiusX / radiusY / rotation / ellipselabels,下游训练数据管道应按该契约解析;预标注通过predictions[].result注入,字段名必须与控件name一一对应;文档中的安装与启动路径属于早期仓库布局,落地到当前仓库时请按上文「启动标注服务」一节把路径映射到 web/libs/editor/src/examples/image_ellipses/ 的真实位置。【免费下载链接】label-studioLabel Studio is a multi-type data labeling and annotation tool with standardized output format项目地址: https://gitcode.com/GitHub_Trending/la/label-studio创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
延伸阅读

更多相关文章

2026/11/6 21:19:15

YOLOv7+Transformer多任务检测与分割:C++部署与掩码优化实践

简介:面向计算机、电子信息工程、数学等专业学生,这份基于YOLOv7的Transformer变体改进项目,将检测与分割多任务能力集于一体,可作为课程设计、期末大作业或毕业设计的参考资料。包内共有184个文件,以Python源码&#…

2026/11/7 9:43:30

等差数列判断算法与Python实现详解

1. 等差数列的基本概念与判断标准等差数列是数学中最基础也最重要的数列类型之一。简单来说,等差数列是指从第二项开始,每一项与前一项的差都是同一个常数的数列。这个常数我们称之为"公差",记作d。用数学表达式可以表示为&#xf…

2026/11/7 12:06:48

循环队列的front与rear初始值:从2009年408真题看指针语义

2009年1月,408计算机学科专业基础综合迎来全国统考的第一年。那一年的数据结构选择题里,有一道关于循环队列的题目,题目本身不到五十个字,却让不少考生在考后对答案时犯了难——四个选项看起来都像是某个合理设定下的正确答案。这…

2026/11/7 12:29:16

济阳电工证报名不复习怎么过?考前押题救你忙中抽闲

济阳电工证报名不复习怎么过?考前押题救你忙中抽闲 工地太忙根本没时间复习考试,尤其是像我们这些一线工人,天天在工地上跑,哪还有心思去背那些理论知识?但偏偏电工证是必须的, 济阳电工证报名 不是你想考就能考的, 考前押题…

2026/11/7 12:29:16

灵宝市安监局电工证过期了怎么复审?含金量决定你能否继续干这行

灵宝市安监局电工证过期了怎么复审?含金量决定你能否继续干这行 证书过期了不知道怎么复审延期,这事儿真不是小事。很多电工朋友都在问,灵宝市安监局电工证到底怎么操作?含金量到底有没有水分?别急,下面我从实战角度给你讲透彻,让你看完就能动手。…

2026/11/7 12:29:16

唐河哪里有办电工证 内部消息教你避开报名陷阱

唐河哪里有办电工证 内部消息教你避开报名陷阱 你是不是也像很多人一样, 不知道去哪报名怕被中介坑 ?现在网上各种培训机构、代办公司五花八门,真假难辨。特别是像【唐河哪里有办电工证】这样的关键词,搜索出来的信息更是鱼龙混杂。今天就来…

2026/11/7 12:29:16

通河县电工证叉车证怎么考?官方报名入口在哪?外省证能转吗

通河县电工证叉车证怎么考?官方报名入口在哪?外省证能转吗 之前考的证在外省能不能转过来?你不是一个人,我刚接手漯河那边的学员咨询,就遇到十几个问这个事的。说实话,现在跨省工作是常态,但证书怎么转、怎么考、怎么用,很多人心里没底。特别是【通河…

2026/11/7 12:24:16

安监局电工证分级不?学历不高怕报不上名?值不值得考?

安监局电工证分级不?学历不高怕报不上名?值不值得考? 你是不是也这样想: 学历不高,怕报不上名 ?安监局电工证分级不?是不是只有那些有高学历或者有经验的人才能考?其实不然,很多人和你一样,可能连“电工证分级不”这个说法都搞不懂,更别提报名了…

2026/11/5 15:39:06

面向复杂光照与角度的宠物面部识别鲁棒性增强策略

在智慧养宠时代,基于视觉的宠物身份识别技术正逐步从实验室走向家庭应用。然而,与配合度高的人类不同,宠物是典型的“非合作生物识别对象”——它们不会主动配合摄像头调整姿态,更无法控制光照环境。实际应用中,我们常…

2026/11/6 10:49:01

SSM电子书店源码全解析:结构、原理、部署与排错实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/11/7 0:03:08

郑州报考避坑指南:电工证和钳工证怎么选?实操考试心里没底怕挂科

郑州报考避坑指南:电工证和钳工证怎么选?实操考试心里没底怕挂科 实操考试心里没底怕挂科?你不是一个人。特别是在郑州这样的城市,很多施工企业负责人和一线作业人员在报考电工证和钳工证时都面临着同样的困惑。到底该考哪个证?哪个更适合自己?哪个证书…

2026/11/7 0:03:08

广西电工证办理流程全解析:外省证怎么转?在哪考最靠谱?

广西电工证办理流程全解析:外省证怎么转?在哪考最靠谱? 之前考的证在外省能不能转过来?这个问题我遇到太多了,今天就拿广西电工证办理流程来具体说说,别再走弯路了。广西电工证的报考、复审、继续教育这些环节,如果你不了解,真的会吃大亏,尤其对于从…

2026/11/7 0:03:08

电气电工证都有哪些保姆级教程

电气电工证都有哪些保姆级教程 你是不是正愁不知道去哪报名,怕被中介坑?别急,这篇保姆级教程专为河南初次报考人员准备,帮你搞清楚 电气电工证都有哪些 ,以及如何避开那些坑。 电气电工证都有哪些?别被五花八门的证书搞懵了…

2026/11/5 15:39:06

面向复杂光照与角度的宠物面部识别鲁棒性增强策略

在智慧养宠时代,基于视觉的宠物身份识别技术正逐步从实验室走向家庭应用。然而,与配合度高的人类不同,宠物是典型的“非合作生物识别对象”——它们不会主动配合摄像头调整姿态,更无法控制光照环境。实际应用中,我们常…

2026/11/6 10:49:01

SSM电子书店源码全解析:结构、原理、部署与排错实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑