智慧农业——InsectMamba利用状态空间模型对害虫进行分类

介绍

论文地址:https://arxiv.org/abs/2404.03611

害虫分类是农业中的一个重要问题。准确识别有害害虫可减少对作物的损害,确保粮食安全和环境的可持续发展。然而,害虫及其自然环境的高度拟态性和物种多样性使得视觉特征的提取极具挑战性。现有方法很难提取出区分近缘害虫物种所需的细节特征。即使采用了最先进的深度学习方法,由于害虫与背景之间存在很大的相似性,挑战依然存在。在此背景下,亟需开发更有效的害虫分类模型。

拟议方法(InsectMamba)

InsectMamba 的核心 "Mix-SSM 块 "是一种巧妙结合了四种视觉编码方法的结构。具体来说是:

状态空间模型(SSM):能有效地模拟随时间变化的视觉特征。善于捕捉长程依赖关系。

卷积神经网络(CNN):提取局部视觉特征的绝佳工具。

3. 多头自我关注(MSA):可捕捉全局上下文信息,补充 CNN 的不足。

4. 多层感知器(MLP):可有效提取信道方向的特征。

通过结合这四种方法的特点,InsectMamba 能够从多个角度捕捉害虫的视觉特征。

此外,所提出的 "选择性模块 "能自适应地整合通过这些编码方法获得的特征表征。通过动态分配每个通道的重要性,可以有效地模拟害虫特征。

因此,InsectMamba 的创新设计为害虫分类难题提供了全面的解决方案。

试验

本文利用五个昆虫危害分类数据集对 InsectMamba 的性能进行了评估。之所以选择这些数据集,是因为它们的昆虫和背景视觉相似度高,物种多样性大,这使得昆虫损伤分类具有挑战性。具体数据集包括

- 农场昆虫:包括 15 种害虫,有 1 368 个训练数据和 160 个测试数据。
- 农业害虫:包括 12 种农业害虫,有 240 个训练数据和 5 254 个测试数据。
- 昆虫识别:包括 24 种昆虫,有 768 个训练数据和 612 个测试数据。
- 林业害虫识别:包括 31 种害虫,599 个训练数据和 6,564 个测试数据。
- IP102:包括 102 种害虫,1,909 个训练数据和 65,805 个测试数据。

利用这些具有挑战性的数据集,InsectMamba 的性能与现有的强大模型(ResNet、DeiT、Swin Transformer 和 Vmamba)进行了对比评估。结果表明,InsectMamba 在所有指标(准确度、精确度、召回率和 F1 分数)上都表现最佳。

尤其值得一提的是图 3 所示的特征整合方法对比实验。在这里,建议的 "选择性模块 "表现最佳,证明了自适应特征整合的重要性。

此外,图 4 还研究了选择性模块卷积核大小的影响:对于农场昆虫数据集,3x3 的结果最佳,而对于 IP102,1x1 的结果最佳。这表明,根据数据集的特点选择适当的核大小非常重要。

而消融实验的结果表明,Mix-SSM 模块中的 SSM、CNN、MSA 和 MLP 每个组件都做出了独特的贡献。这些结果表明,InsectMamba 可以为昆虫害虫分类的挑战提供最有效的解决方案。

结论

本研究提出了一个新模型–InsectMamba,以应对昆虫伤害分类的挑战;InsectMamba 是一个创新的架构,结合了多种视觉编码方法。

实验结果表明,InsectMamba 在五个具有挑战性的昆虫害虫分类数据集上表现出色,明显优于现有的强大模型。此外,通过消融实验,可以清楚地看到,所提出方法的每个要素都有其独特的贡献。分析详细考察了特征整合方法和卷积核大小优化等关键设计方面,结果证明了 InsectMamba 的高度通用性和实用性。

展望未来,重要的是通过在更大的数据集和真实世界环境中进行评估,进一步验证 InsectMamba 的实用性。此外,还将努力实现实际应用,例如研究在硬件限制条件下的高效实施方法。这项研究的成果将为昆虫控制自动化和实现智能农业做出重大贡献。

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

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

相关文章

Centos7.9 使用 Kubeadm 自动化部署 K8S 集群(一个脚本)

文章目录 一、环境准备1、硬件准备(虚拟主机)2、操作系统版本3、硬件配置4、网络 二、注意点1、主机命名格式2、网络插件 flannel 镜像拉取2.1、主机生成公私钥2.2、为啥有 Github 还用 Gitee2.3、将主机公钥添加到 Gitee2.3.1、复制主机上的公钥2.3.2、…

< 微积分Calculus >

微积分 微分是把整体分拆为小部分来求它怎样改变 积分是把小部分连接在一起来求整体有多大,可以用来求面积、体积、中点和很多其他有用的东西。 lim极限 函数f(x) -> Q(x) y:x变量,f函数,Q(x)函数体(多项式&am…

【Paper Reading】结合 NanoFlow 研究,优化大语言模型服务效率的探索

作者 王伟 PAI引擎团队 近年来,人工智能领域的快速发展推动了大型语言模型的广泛应用,随之而来的是对其服务效率的迫切需求。论文《NanoFlow:Towards Optimal Large Language Model Serving Throughput》提出了一种突破性的新型服务框架&…

CTF 技能树 LOG -GIT泄露 笔记

log 使用虚拟机kali操作 python2 安装 apt-get install python2 进入root用户,下载克隆git hack库 git clone https://github.com/BugScanTeam/GitHack sudo passwd root 修改root 命名密码为root 切换登录 su root 终端进入home/kali/GitHack/ python GitH…

2024年 AI大模型我该买一张什么卡?

有钱啥也不用说,买张最贵的就是了。对囊中羞涩的我还说,我该买张什么样的显卡呢? 我的旧显卡RTX1060 6G,满负荷消耗功率110多瓦,几乎达到设计最大TDP,周日时拿了朋友的RTX3060Ti 8G,发现是锁算…

【中国留学网-注册_登录安全分析报告】

前言 由于网站注册入口容易被黑客攻击,存在如下安全问题: 暴力破解密码,造成用户信息泄露短信盗刷的安全问题,影响业务及导致用户投诉带来经济损失,尤其是后付费客户,风险巨大,造成亏损无底洞…

手机在网状态查询接口如何用C#进行调用?

一、什么是手机在网状态查询接口? 手机在网状态查询接口是利用实时数据来对手机号码在运营商网络中的状态进行查询的工具,包括正常使用状态、停机状态、不在网状态、预销户状态等。 二、手机在网状态查询适用哪些场景? 例如:商…

Android RecyclerView 实现 GridView ,并实现点击效果及方向位置的显示

效果图 一、引入 implementation com.github.CymChad:BaseRecyclerViewAdapterHelper:2.9.30 二、使用步骤 1.Adapter public class UnAdapter extends BaseQuickAdapter<UnBean.ResultBean, BaseViewHolder> {private int selectedPosition RecyclerView.NO_POSITIO…

51单片机——LED灯篇

一、LED与单片机P2管脚相连 二、点亮一个LED灯 #include <STC89C5xRC.H> void main() { P2 0xFE; //1111 1110 } P2有8个管脚&#xff0c;对应8个二进制位。 LED灯右侧接电源是正极&#xff08;1&#xff09;&#xff0c;左侧给负极&#xff08;0&#xff09;即可…

C++学习指南(六)----list

欢迎来到繁星的CSDN。本期内容主要包括&#xff0c;list的介绍、使用以及与vector的优缺点。 一、什么是list 在先前的C语言学习中&#xff0c;我们接触到了顺序表和链表&#xff0c;而在C中&#xff0c;这正好对应了vector&#xff08;动态增长顺序表&#xff09;和l…

linux第三课(linux中安装nginx与redis及SpringBoot集成redis)

目录 一.nginx引入 二.关于nginx 1.什么是nginx 2.nginx的特点 3.在nginx中安装nginx 三.关于redis 1.背景引入 2.什么是redis 3.redis的特点 4.在linux下的docker中安装redis 四.redis中的数据结构 (1)String(字符串) (2)Hash (3)list(列表) (5)zset(sorted se…

Python模拟鼠标轨迹[Python]

一.鼠标轨迹模拟简介 传统的鼠标轨迹模拟依赖于简单的数学模型&#xff0c;如直线或曲线路径。然而&#xff0c;这种方法难以捕捉到人类操作的复杂性和多样性。AI大模型的出现&#xff0c;能够通过深度学习技术&#xff0c;学习并模拟更自然的鼠标移动行为。 二.鼠标轨迹算法实…

博睿谷IT认证-订阅试学习

在这个信息爆炸的时代&#xff0c;拥有一张IT认证证书&#xff0c;就像拿到了职场晋升的通行证。博睿谷&#xff0c;作为IT认证培训的佼佼者&#xff0c;帮你轻松拿下华为、Oracle等热门认证。下面&#xff0c;让我们一起看看博睿谷如何助你一臂之力。 学习时间&#xff0c;你说…

C++入门基础知识82(实例)——实例7【 判断一个数是奇数还是偶数】

成长路上不孤单&#x1f60a;&#x1f60a;&#x1f60a;&#x1f60a;&#x1f60a;&#x1f60a; 【14后&#x1f60a;///C爱好者&#x1f60a;///持续分享所学&#x1f60a;///如有需要欢迎收藏转发///&#x1f60a;】 今日分享关于C 实例 【判断一个数是奇数还是偶数】相…

java重点学习-总结

十五 总结 https://kdocs.cn/l/crbMWc8xEZda &#xff08;总结全部的精华&#xff09; 1.面试准备 企业筛选简历规则简历编写注意事项(亮点)项目怎么找&#xff0c;学习到什么程度面试过程(表达结构、什么样的心态去找工作) 2.redis 缓存相关(缓存击穿、穿透、雪崩、缓存过期淘…

传输层协议 —— TCP协议(上篇)

目录 1.认识TCP 2.TCP协议段格式 3.可靠性保证的机制 确认应答机制 超时重传机制 连接管理机制 三次握手 四次挥手 1.认识TCP 在网络通信模型中&#xff0c;传输层有两个经典的协议&#xff0c;分别是UDP协议和TCP协议。其中TCP协议全称为传输控制协议&#xff08;Tra…

远程升级频频失败?你可能忽略了模组差分包…

去年开发的一个项目产品&#xff0c;用的是合宙4G-Cat.1低功耗模块Air780E。 最近有客户反馈在乡村里频繁出现掉线的情况。通过换货、换SIM卡对比排查测试&#xff0c;发现只有去年5月22号采购的那批模块在客户环境附近会出现掉线的情况&#xff0c;而今年4月份采购的模块批次…

【Go】Go 环境下载与安装教程(Windows系统)

引言 Go&#xff0c;也被称为Golang&#xff0c;是一种静态类型&#xff0c;编译型的编程语言&#xff0c;由Google设计和开发。Go语言的设计目标是“解决软件开发中的一些问题”&#xff0c;特别是在大规模软件系统的构建和维护方面。 下载安装包 打开官网下载页面&#xff…

03 添加并发请求

03 添加并发请求 我们通过两种方式演示发起多个请求&#xff1a; 使用 async 和 await 方式使用 Promise.all() 方式 首先使用async 和 await 方式发送请求&#xff0c;使用 async 和 await 能够控制异步任务以同步的流程执行&#xff0c;代码如下&#xff0c;这时候就会产生…

Git 提交规范

一、Git 提交规范的基本格式 通常&#xff0c;Git 提交信息采用以下格式&#xff1a; <type>: <subject><body><footer>type&#xff08;提交类型&#xff09;&#xff1a;用于说明提交的性质&#xff0c;常见的类型有以下几种&#xff1a; feat&…