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(牙刷)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/474781.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

图像处理学习笔记-20241118

文章目录 霍夫变换基本原理霍夫变换的步骤使用 OpenCV 实现直线检测示例&#xff1a;标准霍夫变换 示例&#xff1a;概率霍夫变换参数解释霍夫变换检测圆 基于GAN的样本生成GAN的基本原理基于GAN的数据增广流程实现代码示例 同态滤波&#xff08;Homomorphic Filtering&#xf…

视频融合×室内定位×数字孪生

随着物联网技术的迅猛发展&#xff0c;室内定位与视频融合技术在各行各业中得到了广泛应用。不仅能够提供精确的位置信息&#xff0c;还能通过实时视频监控实现全方位数据的可视化。 与此同时&#xff0c;数字孪生等技术的兴起为智慧城市、智慧工厂等应用提供了强大支持&#…

当科技照进现实 机器人带着机器狗乘空轨

湖北日报讯&#xff08;记者魏铼、通讯员张璨龙&#xff09;11月14日&#xff0c;武汉东湖高新区空轨高新大道站&#xff0c;在光谷装上“智慧大脑”的人形机器人&#xff0c;乘空轨&#xff0c;看AI展&#xff0c;与小朋友在生态大走廊斗舞。 京天博特&#xff1a;光谷“智慧大…

freertos任务调度学习

首先创建任务&#xff0c;创建好任务后&#xff0c;开启任务调度器&#xff0c;任务才能执行 1.开启任务调度器 2.启动第一个任务 3.任务切换

蓝桥杯每日真题 - 第16天

题目&#xff1a;&#xff08;卡牌&#xff09; 题目描述&#xff08;13届 C&C B组C题&#xff09; 解题思路&#xff1a; 题目分析&#xff1a; 有 n 种卡牌&#xff0c;每种卡牌的现有数量为 a[i]&#xff0c;所需的最大数量为 b[i]&#xff0c;还有 m 张空白卡牌。 每…

MySQL系列之数据授权(privilege)

导览 前言Q&#xff1a;如何对MySQL数据库进行授权管理一、MySQL的“特权”1. 权限级别2. 权限清单 二、授权操作1. 查看权限2. 分配权限3. 回收权限 结语精彩回放 前言 看过博主上一篇的盆友&#xff0c;可以Get到一个知识点&#xff1a;数据授权&#xff08;eg&#xff1a;g…

C++为函数提供的型特性——缺省参数与函数重载

目录 一、缺省参数 二、函数重载 一、缺省参数 C为函数提供了一项新的特性——缺省参数。缺省参数指的是当前函数调用中省略了实参自动使用的一个值。这极大地提高了函数的灵活性 缺省参数是声明或定义函数时为函数的参数指定⼀个缺省值 。在调⽤该函数时&#xff0c;如果没有…

android 使用MediaPlayer实现音乐播放--权限请求

在Android应用中&#xff0c;获取本地音乐文件的权限是实现音乐扫描功能的关键步骤之一。随着Android版本的不断更新&#xff0c;从Android 6.0&#xff08;API级别23&#xff09;开始&#xff0c;应用需要动态请求权限&#xff0c;而到了android 13以上需要的权限又做了进一步…

go-zero(一) 介绍和使用

go-zero 介绍和使用 一、什么是 go-zero&#xff1f; go-zero 是一个基于 Go 语言的微服务框架&#xff0c;提供了高效、简单并易于扩展的 API 设计和开发模式。它主要目的是为开发者提供一种简单的方式来构建和管理云原生应用。 1.go-zero 的核心特性 高性能&#xff1a; g…

Orcad 输出有链接属性的PDF

安装adobe pdf安装Ghostscript修改C:\Cadence\SPB_16.6\tools\capture\tclscripts\capUtils\capPdfUtil.tcl ​ 设置默认打印机为 Adobe PDF ​ 将Ghostscript的路径修改正确 打开cadence Orcad &#xff0c;accessories->candece Tcl/Tk Utilities-> Utilities->PD…

.NET6 WebApi第1讲:VSCode开发.NET项目、区别.NET5框架【两个框架启动流程详解】

一、使用VSCode开发.NET项目 1、创建文件夹&#xff0c;使用VSCode打开 2、安装扩展工具 1>C# 2>安装NuGet包管理工具&#xff0c;外部dll包依靠它来加载 法1》&#xff1a;NuGet Gallery&#xff0c;注意要启动科学的工具 法2》NuGet Package Manager GUl&#xff0c…

#define定义宏(3)

大家好&#xff0c;今天来给大家介绍一下宏实现的原理以及缺点&#xff0c;还有宏和函数的一些区别&#xff08;下一期给大家详细介绍宏和函数的区别&#xff09;&#xff0c;那么话不多说&#xff0c;我们现在开始。 1.宏和参数不是计算之后传进去&#xff0c;而是替换进去的…

AJAX笔记 (速通精华版)

AJAX&#xff08;Asynchronous Javascript And Xml&#xff09; 此笔记来自于动力节点最美老杜 传统请求及缺点 传统的请求都有哪些&#xff1f; 直接在浏览器地址栏上输入URL。点击超链接提交 form 表单使用 JS 代码发送请求 window.open(url)document.location.href urlwi…

3D Gaussian Splatting 代码层理解之Part2

现在让我们来谈谈高斯分布。我们已经在Part1介绍了如何根据相机的位置获取 3D 点并将其转换为 2D。在本文中,我们将继续处理高斯泼溅的高斯部分,这里用到的是代码库 GitHub 中part2。 我们在这里要做的一个小改动是,我们将使用透视投影,它利用与上一篇文章中所示的内参矩阵…

【YOLOv8】安卓端部署-2-项目实战

文章目录 1 准备Android项目文件1.1 解压文件1.2 放置ncnn模型文件1.3 放置ncnn和opencv的android文件1.4 修改CMakeLists.txt文件 2 手机连接电脑并编译软件2.1 编译软件2.2 更新配置及布局2.3 编译2.4 连接手机 3 自己数据集训练模型的部署4 参考 1 准备Android项目文件 1.1…

进程其他知识点

/* #include <stdlib.h> void exit(int status); #include <unistd.h> void _exit(int status); status 参数&#xff1a;是进程退出时的一个状态信息。父进程回收子进程资源的时候可以获取到。 */ #include <stdio.h> #include <stdlib.h> #include &…

深度解析FastDFS:构建高效分布式文件存储的实战指南(上)

文章目录 一、FastDFS简介1.1 概述1.2 特性 二、FastDFS原理架构2.1 FastDFS角色2.2 存储策略2.3 上传过程2.4 文件同步2.5 下载过程 三、FastDFS适用场景四、同类中间件对比4.1 FastDFS和集中存储方式对比4.2 FastDFS与其他文件系统的对比 五、FastDFS部署5.1 单机部署5.1.1 使…

hhdb数据库介绍(9-21)

计算节点参数说明 checkClusterBeforeDnSwitch 参数说明&#xff1a; PropertyValue参数值checkClusterBeforeDnSwitch是否可见否参数说明集群模式下触发数据节点高可用切换时&#xff0c;是否先判断集群所有成员正常再进行数据节点切换默认值falseReload是否生效是 参数设…

每日一练:【动态规划算法】斐波那契数列模型之第 N 个泰波那契数(easy)

1. 第 N 个泰波那契数&#xff08;easy&#xff09; 1. 题目链接&#xff1a;1137. 第 N 个泰波那契数 2. 题目描述 3.题目分析 这题我们要求第n个泰波那契Tn的值&#xff0c;很明显的使用动态规划算法。 4.动态规划算法流程 1. 状态表示&#xff1a; 根据题目的要求及公…

网页抓取API,让数据获取更简单

网页抓取的过程通常分为以下步骤&#xff0c;尤其是在面对静态网页时&#xff1a; 获取页面 HTML&#xff1a;使用 HTTP 客户端下载目标页面的 HTML 内容。解析 HTML&#xff1a;将下载的 HTML 输入解析器&#xff0c;准备提取内容。提取数据&#xff1a;利用解析器功能&#…