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

2023.4.7 机器学习周报

目录

引言

Abstract

文献阅读

1、题目

2、引言

3、过去方案和Motivation

4、Segment Anything模型

5、创新点

6、实验过程

7、实验结果

1、评价绩效

 2、检测评价

3、跟踪评价

8、 结论

总结

引言

本周阅读了一篇关于高效的任意分割模型的文献,用于自动提取畜牧监测中的掩膜区域。通过结合Segment Anything Model (SAM)、Grounded SAM、Grounding Dino、YOLOv8和DeepOCSort算法进行检测和跟踪,实现了黑色牛的自动提取掩膜区域,并改进了畜牧监测的效果。

Abstract

This week, I read a literature on efficient arbitrary segmentation models for automatically extracting mask regions in livestock monitoring. By combining Segment Anything Model (SAM), Grounded SAM, Grounded Dino, YOLOv8, and DeepOCSort algorithms for detection and tracking, automatic extraction of mask regions for black cattle was achieved, and the effectiveness of livestock monitoring was improved.

文献阅读

1、题目

Efficient Segment-Anything Model for Automatic Mask Region Extraction in Livestock Monitoring

2、引言

本文提出了一种有效的分割模型,用于牲畜跟踪中掩模区域的自动提取。研究的重点是开发和评估用于跟踪黑牛的自动掩模分割模型。主要贡献是一个量身定制的提取分割模型,用于自动提取牛面具区域,利用牲畜跟踪。该方法利用Segment Anything Model(SAM)、Grounded SAM、Grounding Dino、YOLOv8和DeepOCSort算法进行检测和跟踪。实验结果表明,该方法在提取黑牛面具区域和提高牲畜跟踪的有效性。YOLOv8和DeepOCSort的集成确保了跨帧的掩模区域的准确关联和跟踪。这些发现推进了牲畜跟踪,并应用于精准农业。该模型为前景背景分离中掩模区域的自动提取提供了一种有效的工具。

3、过去方案和Motivation

  • 过去方案:传统的图像处理技术和手动标注方法在复杂场景下的效果有限,而现有的模型和数据集也无法准确地处理黑色牛的特征。
  • 论文的Motivation: 鉴于以上问题,本研究旨在结合生成式人工智能模型和先进的检测和跟踪算法,开发一种针对黑色牛的自动分割方法,以提高畜牧监测的准确性和效率。

4、Segment Anything模型

可提示的分割任务和在真实世界使用的目标对模型架构施加了约束。特别是,模型必须支持灵活的提示,需要以平摊实时计算掩模以允许交互使用,并且必须具有模糊性。我们发现一个简单的设计满足所有三个约束条件:一个强大的图像编码器计算图像嵌入,一个提示编码器嵌入提示,然后将两个信息源组合在一个轻量级掩码解码器中来预测分割掩码。将此模型称为Segment Anything,或SAM(如下图所示)。

SAM有三个组件,如上图所示:图像encoder、灵活的提示encoder和快速掩码decoder。建立在Vision Transformer上,对实时性能进行特定的权衡。

1. 图像编码器

基于可扩展和强大的预训练方法,我们使用MAE预训练的ViT,最小限度地适用于处理高分辨率输入。图像编码器对每张图像运行一次,在提示模型之前进行应用。

2. 提示编码器

考虑两组prompt:稀疏(点、框、文本)和密集(掩码)。通过位置编码来表示点和框,并将对每个提示类型的学习嵌入自由形式的文本CLIP中的现成文本编码相加。密集的提示(即掩码)使用卷积进行嵌入,并通过图像嵌入进行元素求和。

3. 掩码解码器

掩码解码器有效地将图像嵌入、提示嵌入和输出token映射到掩码。该设计的灵感来自于DETR,采用了对(带有动态掩模预测头的)Transformer decoder模块的修改。

为了实现自动分割,遵循一步一步的方法。首先,策划了一系列多样化的牛图像,包括各种姿势和一天中的不同时间,包括白天和夜间场景。接下来,使用SAM模型分割每个单独的图像,如下图使用SAM模型的自动注释流程所示。

为了便于与后续训练过程兼容,将这些掩码转换为JSON格式,该格式广泛用于训练对象检测和分割模型,如下图所示。

这种格式可以简化注释,从而实现与YOLOv8模型的无缝集成。通过定制数据集,可以专门为准确和高效的牛分割而量身定制。通过这个自动分割模型,目标是减轻与手动注释和传统的图像处理技术的挑战。

5、创新点

  • 本研究通过引入一种新的方法来追踪黑色牛的方法,为黑色牛追踪提供了强大而准确的跟踪能力。
  • 通过结合SAM模型和YOLOv8与Deep OCSORT模型的综合能力,有效地融合了运动和外观信息,从而实现了显著的多目标跟踪效果。
  • 该方法在复杂的牛场场景中的应用表明其在实际牛类监测中的潜力,为牲畜管理和相关应用提供了有价值的解决方案

6、实验过程

在训练YOLOv8分割模型时,数据集划分为80%的训练数据和20%的验证数据。训练过程中使用了2500张图像,包含40000个实例,使用批量大小为8进行训练。模型使用随机梯度下降(SGD)进行优化,动量为0.937,并使用yolov8x-seg权重文件进行初始化。模型的训练持续时间为46分钟74秒。在验证阶段,YOLOv8分割模型每张图像的处理速度为0.2毫秒,表明其适用于牲畜跟踪任务的实时应用。此外,还将HSV颜色模型、平移、缩放和应用马赛克效果等增强技术整合到训练过程中,以提高模型处理对象外观、大小和方向变化的能力。

7、实验结果

1、评价绩效

为了评估所提出的自动分割模型的性能,对不同的黑牛图像数据集进行了广泛的实验。评估的重点是比较融合的结果,接地SAM模型,和SAM的唯一模型的自动检测和分割牛对象的能力。总体流程图如下图所示。

首先,分析了融合模型的结果。融合模型结合了多个分割模型(包括SAM模型)的输出,以提高整体分割精度。

接下来,检查了接地SAM模型的性能。这个模型利用了Grounding Dino模型,它只需要类的文本输入就可以有效地运行。

相比之下,仅SAM模型在分割性能方面表现出限制。尽管SAM模型最初检测并分割了大量的牛对象,但在某些情况下,它在帧中遗漏了一些对象。因此,需要对剩余实例进行手动重新注释以获得令人满意的分割结果。这意味着仅仅依靠SAM模型可能不足以进行准确和全面的牛分割。

需要注意的是,通过手动重新注释任何剩余的实例,仍然可以有效地使用SAM only模型,尽管需要额外的工作和时间。总体而言,融合方法和扎根SAM模型为解决牛分割挑战做出了宝贵贡献,最终提高了牲畜管理实践和农业技术。比较结果如下图所示。

 2、检测评价

从各种YOLOv 8检测模型中获得的结果,每个模型都设计了特定的配置,以解决不同方面的性能问题。这些模型的评估包括三个关键指标:精度、在0.5至0.95的交集/并集(IOU)范围内计算的平均精度(mAP)和推理时间。提供这些指标的全面比较,揭示了每个YOLOv 8模型的优势和局限性如下表所示。

其中精度Precision和平均精度maP公式如下:

3、跟踪评价

在研究中,采用了多目标跟踪精度(MOTA)指标来彻底评估我们的跟踪方法在黑牛数据集上的有效性。

如下表所示,通过这个指标,对关键参数进行了定量分析,包括定位精度、身份转换、假阳性和假阴性。使用MOTA确保了标准化的评估,促进了与其他尖端方法的有意义的比较,并为算法在黑牛数据集上的性能提供了有价值的见解。MOTA能够测量三种类型的跟踪错误-假阳性(FP)、假阴性(FN)和ID开关(IDSW)-进一步丰富了评估,能够衡量跟踪解决方案的准确性和稳健性,从而为现代农业实践中牲畜监测和管理技术的进步做出贡献。

8、 结论

实验结果表明,所提出的方法在提取黑色牛口罩区域和改进整体牲畜监测过程方面具有潜力和效率。实验评估重点比较了融合结果、基于Grounding Dino模型的Grounded SAM模型和仅基于SAM模型的能力来自动检测和分割牛对象。融合模型将多个分割模型的输出结合起来,表现出优越的性能,成功检测和分割了更多的牛对象。基于Grounding Dino模型的Grounded SAM模型也表现出良好的性能,能够准确地检测和分割牛对象,无需额外的修改。另一方面,仅基于SAM模型的分割性能有限,需要对一些实例进行手动重新注释才能获得令人满意的结果。总体而言,融合结果和基于Grounding Dino模型的Grounded SAM模型在自动牛检测和分割方面优于仅基于SAM模型。这些模型为高效准确地分割黑色牛提供了有希望的解决方案,推动了牲畜跟踪和相关应用的发展。

总结

本周在阅读论文的同时,还对SAM分割模型进行了进行了学习,之后会在此基础上深入学习和对代码的复现。

相关文章:

2023.4.7 机器学习周报

目录 引言 Abstract 文献阅读 1、题目 2、引言 3、过去方案和Motivation 4、Segment Anything模型 5、创新点 6、实验过程 7、实验结果 1、评价绩效 2、检测评价 3、跟踪评价 8、 结论 总结 引言 本周阅读了一篇关于高效的任意分割模型的文献,用于自…...

如何将平板或手机作为电脑的外接显示器?

先上官网链接:ExtensoDesk 家里有一台华为平板,自从买回来以后除了看视频外,基本没什么作用,于是想着将其作为我电脑的第二个屏幕,提高我学习办公的效率,废物再次利用。最近了解到华为和小米生态有多屏协同…...

Tuxera NTFS for Mac2023绿色免费版 免费的ntfs for mac 免费读写硬盘U盘工具

Tuxera NTFS 2023 Mac免费版是款适合Mac用户使用的磁盘读写工具。Tuxera NTFS 2023 Mac可以很好的帮助用户在Mac上打开、编辑、复制、移动或删除存储在Windows NTFS格式的USB驱动器上的文件。并且Tuxera NTFS 2023 Mac还可以无阻碍地使用各种文件系统磁盘,还能解决磁…...

使用阿里云试用Elasticsearch学习:3.6 处理人类语言——同义词

词干提取是通过简化他们的词根形式来扩大搜索的范围,同义词 通过相关的观念和概念来扩大搜索范围。 也许没有文档匹配查询 “英国女王“ ,但是包含 “英国君主” 的文档可能会被认为是很好的匹配。 用户搜索 “美国” 并且期望找到包含 美利坚合众国 、…...

018——红外遥控模块驱动开发(基于HS0038和I.MX6uLL)

目录 一、 模块介绍 1.1 简介 1.2 协议 二、 驱动代码 三、 应用代码 四、 实验 五、 程序优化 一、 模块介绍 1.1 简介 红外遥控被广泛应用于家用电器、工业控制和智能仪器系统中,像我们熟知的有电视机盒子遥控器、空调遥控器。红外遥控器系统分为发送端和…...

【学习心得】Python中的queue模块使用

一、Queue模块的知识点思维导图 二、Queue模块常用函数介绍 queue模块是内置的,不需要安装直接导入就可以了。 (1)创建一个Queue对象 import queue# 创建一个队列实例 q queue.Queue(maxsize20) # 可选参数,默认为无限大&am…...

ubuntu-server部署hive-part4-部署hive

参照 https://blog.csdn.net/qq_41946216/article/details/134345137 操作系统版本:ubuntu-server-22.04.3 虚拟机:virtualbox7.0 部署hive 下载上传 下载地址 http://archive.apache.org/dist/hive/ apache-hive-3.1.3-bin.tar.gz 以root用户上传至…...

贪心算法|135.分发糖果

力扣题目链接 class Solution { public:int candy(vector<int>& ratings) {vector<int> candyVec(ratings.size(), 1);// 从前向后for (int i 1; i < ratings.size(); i) {if (ratings[i] > ratings[i - 1]) candyVec[i] candyVec[i - 1] 1;}// 从后…...

c# wpf template itemtemplate+ListBox

1.概要 2.代码 <Window x:Class"WpfApp2.Window7"xmlns"http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x"http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d"http://schemas.microsoft.com/expression/blend/…...

关于JVM-三色标记算法剖析

相关系列 深入理解JVM垃圾收集器-CSDN博客 深入理解JVM垃圾收集算法-CSDN博客 深入理解jvm执行引擎-CSDN博客 jvm优化原则-CSDN博客 jvm流程图-CSDN博客 三色标记产生的原因&#xff1f; 在并发标记的过程中&#xff0c;因为标记期间应用线程还在继续跑&#xff0c;对象间的引…...

怎么看有没有装python

windows系统&#xff0c;运行——cmd&#xff0c;进入dos窗口&#xff0c;输入python&#xff0c;安装成功的话可以看到版本信息并进入编程模式。 如下图&#xff08;我安装的版本是python 3.5.1&#xff09;&#xff1a;...

VS CODE环境安装和hello world

SAP UI5 demo walkthrough tutorial step1 hello word 首先要安装nodejs&#xff0c;然后才能执行下面的操作 nodejs vscode 安装ui5 npm install --global ui5/cli报错解决: idealTree:npm: sill idealTree buildDeps 这个信息说明npm正在构建&#xff0c;如一直停留在这个…...

mysql性能索引调优易混点总结

文章目录 一、 前言二、explain相关三、索引优化相关联合索引索引下推排序和分组相关优化分页优化表关联优化嵌套循环连接 Nested-Loop Join(NLJ) 算法in和exsits优化 一、 前言 近几年看了很多和mysql相关的书&#xff0c;文章或视频&#xff0c;但仍然有一些点&#xff0c;看…...

区块链与数字身份:探索Facebook的新尝试

在数字化时代&#xff0c;随着区块链技术的崛起&#xff0c;数字身份成为了一个备受关注的话题。作为全球最大的社交媒体平台之一&#xff0c;Facebook一直在探索如何利用区块链技术来改善数字身份管理和用户数据安全。本文将深入探讨Facebook在这一领域的新尝试&#xff0c;探…...

【pycharm】在debug循环时,如何快速debug到指定循环次数

【pycharm】在debug循环时&#xff0c;如何快速debug到指定循环次数 【先赞后看养成习惯】求关注收藏点赞&#x1f600; 在 PyCharm 中&#xff0c;可以使用条件断点来实现在特定循环次数后停止调试。这可以通过在断点处右键单击&#xff0c;然后选择 “Add Breakpoint” -&g…...

【蓝桥杯每日一题】4.8 公约数

题目来源&#xff1a; 4199. 公约数 - AcWing题库 问题描述&#xff1a; ​ 找到最大整数x&#xff0c;需满足下面两个条件 x x x是 a a a, b b b的公约数 l < x < r l<x<r l<x<r 思路&#xff1a; 找到 a a a, b b b两个数的最大公约数 g c g c d (…...

【MySQL学习】MySQL的慢查询日志和错误日志

꒰˃͈꒵˂͈꒱ write in front ꒰˃͈꒵˂͈꒱ ʕ̯•͡˔•̯᷅ʔ大家好&#xff0c;我是xiaoxie.希望你看完之后,有不足之处请多多谅解&#xff0c;让我们一起共同进步૮₍❀ᴗ͈ . ᴗ͈ აxiaoxieʕ̯•͡˔•̯᷅ʔ—CSDN博客 本文由xiaoxieʕ̯•͡˔•̯᷅ʔ 原创 CSDN …...

# C++之functional库用法整理

C之functional库用法整理 注&#xff1a;整理一些突然学到的C知识&#xff0c;随时mark一下 例如&#xff1a;忘记的关键字用法&#xff0c;新关键字&#xff0c;新数据结构 C 的function库用法整理 C之functional库用法整理一、functional库的内建仿函数1. 存储和调用函数2. 存…...

查看MySQL版本的方式

文章目录 一、使用cmd输入命令行查看二、在mysql客户端服务器里查询 一、使用cmd输入命令行查看 1、打开 cmd &#xff0c;输入命令行&#xff1a; mysql --version 2、还是打开cmd&#xff0c;输入命令行&#xff1a;mysql -V (注意了&#xff0c;此时的V是个大写的V) 二、…...

k8s_入门_命令详解

命令详解 kubectl是官方的CLI命令行工具&#xff0c;用于与 apiserver进行通信&#xff0c;将用户在命令行输入的命令&#xff0c;组织并转化为 apiserver能识别的信息&#xff0c;进而实现管理k8s各种资源的一种有效途径 1. 帮助 2. 查看版本信息 3. 查看资源对象等 查看No…...

腾讯、阿里、字节….等大厂都更喜欢什么样的简历?

我985毕业&#xff0c;为什么筛选简历时输给了一个普通一本&#xff1f; 我投了20份简历&#xff0c;为什么没有一个大厂回我&#xff1f; 每次HR收到简历就没下文了&#xff0c;是我的简历有问题吗&#xff1f; 诚然&#xff0c;在求职时&#xff0c;简历往往就是我们给予H…...

OpenHarmony实战:帆移植案例(中)

OpenHarmony实战&#xff1a;帆移植案例&#xff08;上&#xff09; Audio服务介绍 服务节点 基于ADM框架的audio驱动对HDI层提供三个服务hdf_audio_render、hdf_audio_capture、hdf_audio_control。 开发板audio驱动服务节点如下&#xff1a; console:/dev # ls -al hdf_au…...

武汉星起航:创始人张振邦智慧领航,孵化伙伴共绘跨境新蓝图!

在风起云涌的跨境电商行业中&#xff0c;武汉星起航电子商务有限公司如同一颗璀璨的明星&#xff0c;引领着众多创业者迈向成功的彼岸。而这一切的背后&#xff0c;都离不开公司创始人张振邦先生的卓越领导与深厚经验。他凭借着在电子商务行业多年的深耕与积累&#xff0c;为武…...

上下收缩、折叠面板

效果&#xff1a; 上下收缩、折叠面板&#xff0c;类似QQ好友列表那种。原理就是在一个布局中&#xff0c;通过button来实现一个独立widget的visible/disable 实现&#xff1a; 1.分组按钮 #ifndef EXPANDPANEL_H #define EXPANDPANEL_H#include <QWidget>class…...

XC7A35T-2FGG484 嵌入式FPGA现场可编程门阵列 Xilinx

XC7A35T-2FGG484 是一款由Xilinx&#xff08;赛灵思&#xff09;制造的FPGA&#xff08;现场可编程门阵列&#xff09;芯片 以下是XC7A35T-2FGG484 的主要参数&#xff1a; 1. 系列&#xff1a;Artix-7 2. 逻辑单元数量&#xff1a;33280个 3. 工艺技术&#xff1a;28nm 4. …...

淘宝订单API接口:电商业务自动化的新选择

淘宝订单API接口在电商业务自动化中扮演了至关重要的角色。首先&#xff0c;通过API接口&#xff0c;商家可以自动化地查询、创建、修改和删除订单&#xff0c;极大地提高了订单处理效率&#xff0c;减少了人工操作&#xff0c;降低了错误率。其次&#xff0c;商家可以实时获取…...

识典百科词条创建技巧,教你如何轻松创建热门识典百科词条!

网络已经成为人们获取知识和信息的主要途径。在这样一个背景下&#xff0c;识典百科作为一个综合性的网络百科全书&#xff0c;在为读者们提供各种知识的同时&#xff0c;也给广大用户提供了一个创建、编辑和分享知识的平台。如何在识典百科上创建一个高质量的词条&#xff0c;…...

iOS 开发中上传 IPA 文件的方法(无需 Mac 电脑)

引言 在 iOS 开发中&#xff0c;将 IPA 文件上传到苹果开发者中心是一个重要的步骤。通常情况下&#xff0c;我们需要使用 Mac 电脑上的 Xcode 或 Application Loader 工具来完成这个任务。然而&#xff0c;如果你没有 Mac 电脑&#xff0c;也没有关系&#xff0c;本文将介绍一…...

2024-04-08 问AI: 介绍一下AI 大神 吴恩达

文心一言 吴恩达&#xff08;Andrew Ng&#xff09;是AI领域的一位重要人物&#xff0c;他的贡献和影响力在学术界、工业界以及在线教育领域都极为显著。 吴恩达出生于1976年&#xff0c;是一位华裔美国人&#xff0c;他在斯坦福大学担任计算机科学系和电子工程系的副教授&am…...

Leetcode面试经典150_Q12整数转罗马数字

题目&#xff1a; 罗马数字包含以下七种字符&#xff1a; I&#xff0c; V&#xff0c; X&#xff0c; L&#xff0c;C&#xff0c;D 和 M。 字符 数值 I 1 V 5 X 10 L 50 C 100 D 500 M …...