label-studio批量上传本地数据

前言

Label Studio是一个非常好用的开源数据标注工具,拥有对包括音频、文本、图片、视频和时间序列等各种数据类型的标注能力,有简单易用的UI设计和多导出格式的支持,能够有利于数据准备和利用已有训练数据提升机器学习模型精度。
在这里插入图片描述
本文内容简要介绍如何在label-studio中批量上传本地数据。

实现

当我们希望在label-studio中批量上传本地数据时,可以通过将本地数据以http服务的方式暴露给label-studio访问。

以下以Ubuntu系统为例进行说明。

将本地数据(如待批量导入的图片)放在运行label-studio服务的远程机器上的某个路径(例如/data/dataset/),新增一个批量导入的脚本:

# 切到python的label_studio包路径下
cd /data/miniconda3/lib/python3.7/site-packages/label_studio
# 新增sh脚本
vi serve_local_files.sh

添加以下内容:

#!/usr/bin/env bash


INPUT_DIR=$1

WILDCARD=${2}

OUTPUT_FILE=${3:-"files.txt"}

PORT=${4:-8081}



echo "Usage: sh serve_local_files.sh INPUT_DIR WILDCARD OUTPUT_FILE PORT"

echo "This script scans INPUT_DIR directory with WILDCARD filter [all files by default],"

echo "generates OUTPUT_FILE [files.txt by default] with a file list,"

echo "starts web server on the port PORT [8081 by default] that serves files from INPUT_DIR"

echo



echo "Scanning ${INPUT_DIR} ..."

FIND_CMD="find ${INPUT_DIR} -type f"

if [ -z "$WILDCARD" ]; then

echo "Files wildcard is not set. Serve all files in ${INPUT_DIR}..."

else

FIND_CMD="${FIND_CMD} -name ${WILDCARD}"

fi



echo "Replacing ${INPUT_DIR} to http://localhost:${PORT} ..."

INPUT_DIR_ESCAPED=$(printf '%s\n' "$INPUT_DIR" | sed -e 's/[\/&]/\\&/g')

eval $FIND_CMD | sed "/${INPUT_DIR_ESCAPED}/s//http:\/\/localhost:${PORT}/" > $OUTPUT_FILE



green=`tput setaf 2`

reset=`tput sgr0`

echo "${green}File list stored in '${OUTPUT_FILE}'. Now import it directly from Label Studio UI${reset}"



echo "Running web server on the port ${PORT}"

cd $INPUT_DIR

python3 -m http.server $PORT

执行导入脚本:

bash serve_local_files.sh /data/dataset/  *.jpg  files.txt 8082

关于参数支持可见脚本内容和参考资料[3]。

执行后在/data/miniconda3/lib/python3.7/site-packages/label_studio路径下会生成files.txt文件。
在这里插入图片描述

将生成的files.txt下载到本机上并将files.txt文件中的localhost批量替换为远程机器的实际ip

在label-studio服务的网页中,在新建project中使用import功能上传files.txt文件。即可正常访问批量导入的数据。
在这里插入图片描述
在这里插入图片描述

版权说明

本文为原创文章,独家发布在blog.csdn.net/TracelessLe。未经个人允许不得转载。如需帮助请email至tracelessle@163.com或扫描个人介绍栏二维码咨询。
在这里插入图片描述

参考资料

[1] heartexlabs/label-studio: Label Studio is a multi-type data labeling and annotation tool with standardized output format
[2] Label Studio – Open Source Data Labeling
[3] Label Studio Documentation — Import Data into Label Studio
[4] label-studio/serve_local_files.sh at master · heartexlabs/label-studio

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TracelessLe

❀点个赞加个关注再走吧❀

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值