数据标注开源框架 Label Studio(中文版)

Label Studio
最灵活的数据标注平台,可用于传统模型的数据标注如计算机视觉,NLP,TTS等标注。目前还支持了LLM的数据标注。有需要的小伙伴可以从文章底部获取开源链接
安装
labelstudio提供了多种安装方式如:docker,pip,本地运行。这里我们以pip方式为例进行安装
# 首先创建conda环境
conda create -n labelstudio python=3.11
# 进入虚拟环境
conda activate labelstudio
# 安装
pip install label-studio
# 启动,默认8080端口
label-studio start
# 指定端口启动
label-studio start --port 9001
执行label-studio start命令会看到如下页面

然后访问http://localhost:8080页面

首次使用的小伙伴需要进行注册账号来进行登录,登录成功以后会看到首页

点击创建项目,我们开始创建第一个项目进行标注
1.创建项目名称

2.数据导入

3.选择标注模板

这里可以通过两种方式进行设置标签
1.代码式
2.可视化操作
这里以边界框目标检测为例,以可视化操作进行添加标签名称

配置说明:
标注的时候可以添加组件进行帮助标注
1.区域边框宽度设置的是在标注的时候显示标注的宽度
2.设置图像缩放
3.显示图像旋转
4.设置标签所在的位置,上下左右
5.设置标签多的时候进行筛选标签
创建完以后,如下图显示项目列表

选中图片或者点击标注所有任务就可以进行标注了

选中填写的标签名就可以在页面进行标注了
自动标注
labelstudio还有一项叫自动标注,就是通过模型对数据进行预测然后在页面上呈现出来
模型推理端
Label Studio提供了Label Studio ML backend开源项目来支持快速开发自动标注。如果小伙伴们有开发能力也可以使用其他的pythonweb框架如fastapi,django等。只要响应格式以及对应的接口路径相符合即可
https://github.com/HumanSignal/label-studio-ml-backend 这是Label Studio ML backend的开源项目地址,大家可以看官方文档,官方文档中提供了很多的案例如;目标检测,语义分割,OCR等算法示例。
运行算法示例的方法有两种(具体可看label-studio-ml-backend的ReadMe即可安装成功)
1.下载label-studio-ml项目进行安装启动
2.使用docker运行镜像容器示例
这里我封装了一个yolo8的目标检测镜像,可以让大家快速体验一下自动标注功能
docker run -d -p 9999:9090 -e "LABEL_STUDIO_URL=ip:端口" -e "LABEL_STUDIO_API_KEY=Access Token" --name yolo-cloud registry.cn-hangzhou.aliyuncs.com/arm-demo/yolo8-object-detection:v1.0
运行docker容器的时候需要传递两个参数LABEL_STUDIO_URL和LABEL_STUDIO_API_KEY
LABEL_STUDIO_URL:访问labelstudio地址的如:http://192.168.101.9:8080
LABEL_STUDIO_API_KEY:是访问labelstudio的数据集的访问标识Access Token
Access Token从账户的页面进行获取

启动容器成功以后可以在本地进行测试一下:
使用ip+端口在浏览器上进行访问页面,如果显示以下页面则说明启动成功

接下来我们就可以在labelstudio中进行自动标注了,点击项目中的设置按钮

点击模型菜单显示如下

点击连接模型按钮显示如下,后端url就是容器部署得到的接口url

填写模型名称,后端接口地址,选择身份验证方式等参数,填写完以后点击验证保存即可。
回到项目列表

点击图片打开标注页面,需要勾上自动标注的按钮才可以进行标注

以上就是labelstudio的标注方式,labelstudio中包含了很多的标注模板都可以让大家快速进行标注工作。
中文版labelstudio:https://github.com/MindAsAI/lab