当前位置: 首页 > news >正文

Label-studio-ml-backend 和YOLOV8 YOLO11自动化标注,目标检测,实例分割,图像分类,关键点估计,视频跟踪

这里写目录标题

    • 1.目标检测 Detection
    • 2.实例分割 segment
    • 3.图像分类 classify
    • 4.关键点估计 Keypoint detection
    • 5.视频帧检测 video detect
    • 6.视频帧分类 video classify
    • 7.旋转目标检测 obb detect
    • 8.替换yolo11模型
  • 给我点个赞吧,谢谢了
    • 附录coco80类名称

笔记本 华为matebook14s,windows系统,cpu
1.装Label-studio
2.装Label-studio-ml-backend
3.装ultralytics
4.装docker desktop 并点击启动
在这里插入图片描述

配置好docker-composel.yml文件32 33行
32表示从docker容器里访问容器外的网址,label-studio默认端口8080
33表示label-studio API KEY ,获取方式

  - LABEL_STUDIO_URL=http://host.docker.internal:8080- LABEL_STUDIO_API_KEY=d3ece86209a6a0ca850d468d6c42fa3d7d78be47

点击label-studio头像-》点击Account & settings-》复制access token
在这里插入图片描述
在这里插入图片描述

然后拉取镜像,第一次耗时一个小时左右。记得科学上网呦

cd label_studio_ml\examples\yolo\
docker-compose up --build

在这里插入图片描述

结果如下就表示启动docker成功:
在这里插入图片描述
在label-studio 后台model处导入label-studio-ml-backend默认网址:
http://localhost:9090
在这里插入图片描述
如果连接成功,会有测试通过,显示connected,否则报错
自行修改参考docker-compose.yml第46行

    ports:- "9090:9090"

1.目标检测 Detection

导入示例标注配置:

<View><Image name="image" value="$image"/><RectangleLabels name="label" toName="image" model_score_threshold="0.25" opacity="0.1"><Label value="Person" background="red"/><Label value="Car" background="blue"/></RectangleLabels>
</View>

最后成功

在这里插入图片描述

2.实例分割 segment

替换分割模型,
只需要在标签处修改:

<View><Image name="image" value="$image"/><PolygonLabels name="label" toName="image" model_score_threshold="0.25" opacity="0.1"><Label value="Car" background="blue"/><Label value="Person" background="red"/></PolygonLabels>
</View>

然后删除目标检测的预测框就可以:
选中图片-》点击左上角 6 Tasks-》Delete Predictions
在这里插入图片描述

然后点击随便一张图片,重新预测结果
在这里插入图片描述

3.图像分类 classify

替换图像分类的标签

<View><Image name="image" value="$image"/><Choices name="choice" toName="image" model_score_threshold="0.25"><Choice value="Airplane" predicted_values="aircraft_carrier,airliner,airship,warplane"/><Choice value="Car" predicted_values="limousine,minivan,jeep,sports_car,passenger_car,police_van"/></Choices>
</View>

结果显示在左下角的分类里。
在这里插入图片描述

4.关键点估计 Keypoint detection

替换标签:

<View><RectangleLabels name="keypoints_bbox" toName="image" model_skip="true"><Label value="person"/></RectangleLabels><KeyPointLabels name="keypoints" toName="image"model_score_threshold="0.75" model_point_threshold="0.5" model_add_bboxes="true" model_point_size="1"model_path="yolov8n-pose.pt"><Label value="nose" predicted_values="person" model_index="0" background="red" /><Label value="left_eye" predicted_values="person" model_index="1" background="yellow" /><Label value="right_eye" predicted_values="person" model_index="2" background="yellow" /><Label value="left_ear" predicted_values="person" model_index="3" background="purple" /><Label value="right_ear" predicted_values="person" model_index="4" background="purple" /><View><Label value="left_shoulder" predicted_values="person" model_index="5" background="green" /><Label value="left_elbow" predicted_values="person" model_index="7" background="green" /><Label value="left_wrist" predicted_values="person" model_index="9" background="green" /><Label value="right_shoulder" predicted_values="person" model_index="6" background="blue" /><Label value="right_elbow" predicted_values="person" model_index="8" background="blue" /><Label value="right_wrist" predicted_values="person" model_index="10" background="blue" /></View><View><Label value="left_hip" predicted_values="person" model_index="11" background="brown" /><Label value="left_knee" predicted_values="person" model_index="13" background="brown" /><Label value="left_ankle" predicted_values="person" model_index="15" background="brown" /><Label value="right_hip" predicted_values="person" model_index="12" background="orange" /><Label value="right_knee" predicted_values="person" model_index="14" background="orange" /><Label value="right_ankle" predicted_values="person" model_index="16" background="orange" /></View></KeyPointLabels><Image name="image" value="$image" />
</View>

展示结果:
在这里插入图片描述

5.视频帧检测 video detect

标签

<View><Video name="video" value="$video"/><VideoRectangle name="box" toName="video" model_tracker="botsort" model_conf="0.25" model_iou="0.7" /><Labels name="label" toName="video"><Label value="Person" background="red"/><Label value="Car" background="blue"/></Labels>
</View>

第一次处理视频会比较长,因为他是完整的预测完才加载;后台可以显示当前处理到多少frame
在这里插入图片描述
展示效果如下:
在这里插入图片描述

6.视频帧分类 video classify

标签:

<View><Video name="video" value="$video"/><TimelineLabels name="label" toName="video" model_trainable="false" model_score_threshold="0.25"><Label value="Ball" predicted_values="soccer_ball" /><Label value="hamster" /></TimelineLabels>
</View>

测试失败
在这里插入图片描述

7.旋转目标检测 obb detect

测试失败

8.替换yolo11模型

下载好然后放到models目录下
在这里插入图片描述
修改
\label-studio-ml-backend\label-studio-ml-backend-master\label_studio_ml\examples\yolo\requirements.txt
把ultralytics更新为
ultralytics~=8.3.20
否则不支持yolo11,

重启docker

docker-compose down
docker-compose up --build

就可以了
记得替换标签时,加入model_path=“yolo11n.pt”
例如目标检测:

<View><Image name="image" value="$image"/><PolygonLabels name="label" toName="image" model_score_threshold="0.25" opacity="0.1" model_path="yolo11n.pt"><Label value="Car" background="blue"/><Label value="Person" background="red"/></PolygonLabels>
</View>

在这里插入图片描述

实测下来,
yolo11n.pt
yolo11n-seg.pt
yolo11n-pose.pt
yolo11n-cls.pt
都能用

给我点个赞吧,谢谢了

附录coco80类名称

为了方便大家修改标签信息,我附上coco数据集80类名称,自行参考:

person(人)
bicycle(自行车)
car(轿车)
motorcycle(摩托车)
airplane(飞机)
bus(公共汽车)
train(火车)
truck(卡车)
boat(船)
traffic light(交通灯)
fire hydrant(消防栓)
stop sign(停车标志)
parking meter(停车收费表)
bench(长凳)
bird(鸟)
cat(猫)
dog(狗)
horse(马)
sheep(羊)
cow(牛)
elephant(大象)
bear(熊)
zebra(斑马)
giraffe(长颈鹿)
backpack(背包)
umbrella(雨伞)
handbag(手提包)
tie(领带)
suitcase(手提箱)
frisbee(飞盘)
skis(滑雪板)
snowboard(滑雪单板)
sports ball(体育用球)
kite(风筝)
baseball bat(棒球棒)
baseball glove(棒球手套)
skateboard(滑板)
surfboard(冲浪板)
tennis racket(网球拍)
bottle(瓶子)
wine glass(酒杯)
cup(杯子)
fork(叉子)
knife(刀)
spoon(勺子)
bowl(碗)
banana(香蕉)
apple(苹果)
sandwich(三明治)
orange(橙子)
broccoli(西兰花)
carrot(胡萝卜)
hot dog(热狗)
pizza(披萨)
donut(甜甜圈)
cake(蛋糕)
chair(椅子)
couch(长沙发)
potted plant(盆栽)
bed(床)
dining table(餐桌)
toilet(马桶)
tv(电视)
laptop(笔记本电脑)
mouse(鼠标)
remote(遥控器)
keyboard(键盘)
cell phone(手机)
microwave(微波炉)
oven(烤箱)
toaster(烤面包机)
sink(水槽)
refrigerator(冰箱)
book(书)
clock(时钟)
vase(花瓶)
scissors(剪刀)
teddy bear(泰迪熊)
hair drier(吹风机)
toothbrush(牙刷)

相关文章:

Label-studio-ml-backend 和YOLOV8 YOLO11自动化标注,目标检测,实例分割,图像分类,关键点估计,视频跟踪

这里写目录标题 1.目标检测 Detection2.实例分割 segment3.图像分类 classify4.关键点估计 Keypoint detection5.视频帧检测 video detect6.视频帧分类 video classify7.旋转目标检测 obb detect8.替换yolo11模型 给我点个赞吧&#xff0c;谢谢了附录coco80类名称 笔记本 华为m…...

Elasticsearch Windows版的安装及启动

一、下载 https://www.elastic.co/cn/downloads/past-releases#elasticsearch 如下图 选择版本 我用的是7.17.5 你换成你需要的版本 二 使用 1.解压 解压完如图 2.启动 进入 bin 文件目录&#xff0c;双击运行 elasticsearch.bat 文件启动 ES 服务 出现报错 Cause…...

解决 VMware 嵌套虚拟化提示 关闭“侧通道缓解“

最近给电脑做了新版的 Windows 11 LTSC操作系统&#xff0c;在启动VMware Workstation时&#xff0c;提示"此虚拟机已启用侧通道缓解&#xff0c;可增强安全性&#xff0c;但也会降低性能"&#xff0c;但是我没有启用 Hyper-V 相关的任何功能以及 WSL&#xff0c; 从…...

基于Redis实现的手机短信登入功能

目录 开发准备 注册阿里短信服务 依赖坐标 阿里短信 依赖 mybatis-plus 依赖 redis 依赖 配置文件 导入数据库表 短信发送工具类 生成随机验证码的工具类 校验合法手机号的工具类 ThreadLocal 线程工具类 消息工具类 基于 session 的短信登录的问题 开发教程 Redis 结构设计 …...

C# NetworkStream用法

一、注意事项&#xff1a; NetworkStream 是稳定的&#xff0c;面向连接的&#xff0c;所以它只适合 TCP 协议的环境下工作所以一旦在 UDP环境中&#xff0c;虽然编译不会报错&#xff0c;但是会跳出异常。如果用构造产生NetworkStream的实例&#xff0c;则必须使用连接的Socke…...

华三预赛从零开始学习笔记(每日编辑,复习完为止)

知识点分布 路由交换技术基础 计算机网络基本概念 计算机网络基本概念&#xff1a; 很多电脑和设备通过电线或无线信号连在一起&#xff0c;可以互相“说话”和“分享东西” 网络的主要形式和发展历程&#xff1a; 诞生阶段-最早的计算机网络是以单个计算机为中心的联机系统-终…...

MySQL基础大全(看这一篇足够!!!)

文章目录 前言一、初识MySQL1.1 数据库基础1.2 数据库技术构成1.2.1 数据库系统1.2.2 SQL语言1.2.3 数据库访问接口 1.3 什么是MySQL 二、数据库的基本操作2.1 数据库创建和删除2.2 数据库存储引擎2.2.1 MySQL存储引擎简介2.2.2 InnoDB存储引擎2.2.3 MyISAM存储引擎2.2.4 存储引…...

[ 应急响应进阶篇-2 ] Linux创建后门并进行应急处置-1:超级用户帐号后门

&#x1f36c; 博主介绍 &#x1f468;‍&#x1f393; 博主介绍&#xff1a;大家好&#xff0c;我是 _PowerShell &#xff0c;很高兴认识大家~ ✨主攻领域&#xff1a;【渗透领域】【数据通信】 【通讯安全】 【web安全】【面试分析】 &#x1f389;点赞➕评论➕收藏 养成习…...

【无人机/平衡车/机器人】详解STM32+MPU6050姿态解算—卡尔曼滤波+四元数法+互补滤波

详解STM32+MPU6050姿态解算—卡尔曼滤波+四元数法+互补滤波 效果: 更多单片机项目,单片机项目合集列表目录与专栏说明: 单片机项目合集列表与专栏说明——Excel合集列表目录查阅(持续更新)-CSDN博客​编辑https://archie.blog.csdn.net/article/details/142381401https:/…...

数据结构-8.Java. 七大排序算法(上篇)

本篇博客给大家带来的是排序的知识点, 由于时间有限, 分两天来写, 上篇主要实现 前四种排序算法: 直接插入, 希尔, 选择, 堆排。 文章专栏: Java-数据结构 若有问题 评论区见 欢迎大家点赞 评论 收藏 分享 如果你不知道分享给谁,那就分享给薯条. 你们的支持是我不断创作的动力 …...

YOLOV5/rknn生成可执行文件部署在RK3568上

接上一篇文章best-sim.rknn模型生成好后&#xff0c;我们要将其转换成可执行文件运行在RK3568上&#xff0c;这一步需要在rknpu上进行&#xff0c;在强调一遍&#xff01;&#xff01;rknpu的作用是可以直接生成在开发板上运行的程序 退出上一步的docker环境 exit1.复制best-…...

java http body的格式 ‌application/x-www-form-urlencoded‌不支持文件上传

在Java中&#xff0c;HTTP请求的body部分可以包含多种格式的数据&#xff0c;主要包括以下几种‌&#xff1a; ‌application/x-www-form-urlencoded‌&#xff1a;这种格式将数据编码成键值对的形式&#xff0c;键和值都进行了URL编码&#xff0c;键值对之间用&符号连接。…...

GPU服务器厂家:为什么要选择 GPU 服务器?

文章来源于百家号&#xff1a;GPU服务器厂家 嘿&#xff0c;各位小伙伴们&#xff01;今天咱来聊聊为啥要选择 GPU 服务器&#xff0c;特别是定制化的那种哦。 你们知道吗&#xff1f;现在定制化 GPU 服务器那可是超火的&#xff0c;简直就是科研项目的超强 “外挂”&#x…...

Python操作neo4j库py2neo使用之py2neo 删除及事务相关操作(三)

Python操作neo4j库py2neo使用之py2neo 删除及事务相关操作&#xff08;三&#xff09; py2neo 删除 1、连接数据库 from py2neo import Graph graph Graph("bolt://xx.xx.xx.xx:7687", auth(user, pwd), nameneo4j)2、删除节点 # 删除单个节点 node graph.node…...

Idea忽略提交文件、Idea设置文件隐藏、Idea提交时隐藏部分文件、git提交时忽略文件

文章目录 一、在idea中commit文件时隐藏文件方式一&#xff1a;创建.gitignore文件&#xff08;推荐&#xff09;方式二&#xff1a;‌通过File Types设置隐藏文件方式三&#xff1a;通过Git配置忽略文件‌&#xff08;不推荐&#xff09;总结 二、可能遇到的问题2.1、.gitigno…...

python如何使用spark操作hive

文章目录 1、服务启动2、修改配置3、验证4、开发环境编写代码操作hive 1、服务启动 # 启动hdfs和yarn start-all.sh # 日志服务也需要启动一下 mapred --daemon start historyserver # 启动spark的日志服务 /opt/installs/spark/sbin/start-history-server.sh #启动hive的meta…...

观察者模式和订阅模式

观察者模式和订阅模式在概念上是相似的&#xff0c;它们都涉及到一个对象&#xff08;通常称为“主题”或“发布者”&#xff09;和多个依赖对象&#xff08;称为“观察者”或“订阅者”&#xff09;之间的关系。然而&#xff0c;尽管它们有相似之处&#xff0c;但在某些方面也…...

基于ToLua的C#和Lua内存共享方案保姆级教程

C#和Lua内存共享方案保姆级教程 前言 在介绍C#和Lua内存共享方案之前,先介绍下面两个点来支撑这个方案的必要性 跨语言交互很费 Lua和C#交互最早是基于反射的方式实现的,后来为了提升性能发展成Luajit+C#静态方法导出注入到lua虚拟机的方式至此Lua+Unity的性能才达到了实…...

OpenCV与AI深度学习|16个含源码和数据集的计算机视觉实战项目(建议收藏!)

本文来源公众号“OpenCV与AI深度学习”&#xff0c;仅用于学术分享&#xff0c;侵权删&#xff0c;干货满满。 原文链接&#xff1a;分享&#xff5c;16个含源码和数据集的计算机视觉实战项目 本文将分享16个含源码和数据集的计算机视觉实战项目。具体包括&#xff1a; 1. 人…...

Vue 如何简单更快的对 TypeScript 中接口的理解?应用场景?

TypeScript 中接口&#xff08;Interface&#xff09;的理解与应用 在 TypeScript 中&#xff0c;接口&#xff08;Interface&#xff09; 是一种用来定义对象的结构或形状的方式。接口可以指定对象中应该包含哪些属性、这些属性的类型以及它们的函数签名。接口帮助我们在代码…...

JavaSec-RCE

简介 RCE(Remote Code Execution)&#xff0c;可以分为:命令注入(Command Injection)、代码注入(Code Injection) 代码注入 1.漏洞场景&#xff1a;Groovy代码注入 Groovy是一种基于JVM的动态语言&#xff0c;语法简洁&#xff0c;支持闭包、动态类型和Java互操作性&#xff0c…...

练习(含atoi的模拟实现,自定义类型等练习)

一、结构体大小的计算及位段 &#xff08;结构体大小计算及位段 详解请看&#xff1a;自定义类型&#xff1a;结构体进阶-CSDN博客&#xff09; 1.在32位系统环境&#xff0c;编译选项为4字节对齐&#xff0c;那么sizeof(A)和sizeof(B)是多少&#xff1f; #pragma pack(4)st…...

关于nvm与node.js

1 安装nvm 安装过程中手动修改 nvm的安装路径&#xff0c; 以及修改 通过nvm安装node后正在使用的node的存放目录【这句话可能难以理解&#xff0c;但接着往下看你就了然了】 2 修改nvm中settings.txt文件配置 nvm安装成功后&#xff0c;通常在该文件中会出现以下配置&…...

全球首个30米分辨率湿地数据集(2000—2022)

数据简介 今天我们分享的数据是全球30米分辨率湿地数据集&#xff0c;包含8种湿地亚类&#xff0c;该数据以0.5X0.5的瓦片存储&#xff0c;我们整理了所有属于中国的瓦片名称与其对应省份&#xff0c;方便大家研究使用。 该数据集作为全球首个30米分辨率、覆盖2000–2022年时间…...

Python实现prophet 理论及参数优化

文章目录 Prophet理论及模型参数介绍Python代码完整实现prophet 添加外部数据进行模型优化 之前初步学习prophet的时候&#xff0c;写过一篇简单实现&#xff0c;后期随着对该模型的深入研究&#xff0c;本次记录涉及到prophet 的公式以及参数调优&#xff0c;从公式可以更直观…...

Keil 中设置 STM32 Flash 和 RAM 地址详解

文章目录 Keil 中设置 STM32 Flash 和 RAM 地址详解一、Flash 和 RAM 配置界面(Target 选项卡)1. IROM1(用于配置 Flash)2. IRAM1(用于配置 RAM)二、链接器设置界面(Linker 选项卡)1. 勾选“Use Memory Layout from Target Dialog”2. 查看链接器参数(如果没有勾选上面…...

JVM暂停(Stop-The-World,STW)的原因分类及对应排查方案

JVM暂停(Stop-The-World,STW)的完整原因分类及对应排查方案,结合JVM运行机制和常见故障场景整理而成: 一、GC相关暂停​​ 1. ​​安全点(Safepoint)阻塞​​ ​​现象​​:JVM暂停但无GC日志,日志显示No GCs detected。​​原因​​:JVM等待所有线程进入安全点(如…...

力扣-35.搜索插入位置

题目描述 给定一个排序数组和一个目标值&#xff0c;在数组中找到目标值&#xff0c;并返回其索引。如果目标值不存在于数组中&#xff0c;返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 class Solution {public int searchInsert(int[] nums, …...

RSS 2025|从说明书学习复杂机器人操作任务:NUS邵林团队提出全新机器人装配技能学习框架Manual2Skill

视觉语言模型&#xff08;Vision-Language Models, VLMs&#xff09;&#xff0c;为真实环境中的机器人操作任务提供了极具潜力的解决方案。 尽管 VLMs 取得了显著进展&#xff0c;机器人仍难以胜任复杂的长时程任务&#xff08;如家具装配&#xff09;&#xff0c;主要受限于人…...

Caliper 负载(Workload)详细解析

Caliper 负载(Workload)详细解析 负载(Workload)是 Caliper 性能测试的核心部分,它定义了测试期间要执行的具体合约调用行为和交易模式。下面我将全面深入地讲解负载的各个方面。 一、负载模块基本结构 一个典型的负载模块(如 workload.js)包含以下基本结构: use strict;/…...