论文阅读:基于语义分割的非结构化田间道路场景识别
论文地址:DOI: 10.11975/j.issn.1002-6819.2021.22.017
概要
环境信息感知是智能农业装备系统自主导航作业的关键技术之一。农业田间道路复杂多变,快速准确地识别可通行区域,辨析障碍物类别,可为农业装备系统高效安全地进行路径规划和决策控制提供依据。
本文提出了一种基于深度学习的田间非结构化道路场景语义分割模型,旨在通过图像识别技术对农业田间道路进行高效、准确的语义分割。通过对不同环境条件下采集的田间道路图像进行处理,模型能够识别动态和静态物体,支持自动化农业导航系统的路径规划和动态避障。本文模型结合了轻量级卷积神经网络(MobileNetV2)、混合扩张卷积、通道注意力机制和金字塔池化模块,优化了分割精度和运行效率,适用于农业导航系统中复杂的田间道路场景。
Motivation
随着农业自动化技术的发展,田间道路识别成为农业自动导航系统中的一项关键技术。
- 传统的田间道路图像识别受限于复杂的环境条件,如不同光照、天气、路面类型等,导致识别效果不稳定。
- 非结构化的农业道路(如园区道路、乡村道路)由于形态不规则、存在多种障碍物,给传统算法带来较大挑战。
因此,提出一种高效、鲁棒的田间道路场景语义分割模型,能够准确识别各种动态和静态对象,为农业自动化导航提供精准的场景理解和决策支持。
系统框架
本文的语义分割模型由编码器和解码器两部分组成,采用轻量级卷积神经网络(MobileNetV2)进行特征提取,辅以混合扩张卷积、通道注意力模块和金字塔池化模块以增强模型的分割能力和准确度。具体框架如下:
- 编码器:使用MobileNetV2作为轻量级特征提取网络,通过卷积和池化操作提取图像的低级特征。
- 混合扩张卷积:引入混合扩张卷积来扩大感受野,避免信息丢失,确保细节恢复。
- 通道注意力机制:结合低级和高级特征信息,利用通道注意力机制提升特征融合效果,提高预测准确性。
- 金字塔池化模块:通过多个尺度的池化操作聚合不同区域的信息,增强全局场景上下文信息,提升分割性能。
- 解码器:上采样输出的特征图,并进行像素级分类得到最终的语义分割结果。
技术细节
本文田间道路场景语义分割模型属于全监督学习类型,需要使用人工精细标注的语义图像作为训练样本。采集的图像本身没有标签和语义,利用 Lableme 工具对图像中需要训练的类别进行语义标注,标注后的文件以.jason 格式存储,然后通过批量转换文件将标注文件转换为.png 格式的标签图像。
-
轻量特征提取网络:使用MobileNetV2网络进行图像特征提取,改进了传统的深度卷积神经网络,使得模型在保证准确率的同时,具备较低的计算复杂度和较快的推理速度。MobileNetV2去除了全局池化和分类层,仅使用卷积层提取图像特征。
-
混合扩张卷积:采用混合扩张卷积(Hybrid Dilated Convolution)代替传统的扩张卷积,通过设置不同扩张率(1, 2, 3)来避免信息丢失和感受野出现空间间隙。
-
通道注意力模块:利用通道注意力机制,结合低级和高级特征进行融合,通过权重调整提升重要特征的权重,减少无关特征对结果的干扰,增强类内一致性。
-
金字塔池化模块:采用金字塔池化模块,结合不同尺度的信息来增强全局上下文信息,提升模型在复杂场景中的分割精度。
-
损失函数:结合交叉熵损失和Dice系数损失,使得模型在进行像素级分类时,既能够优化每个像素类别的准确性,又能够提高整体分割质量,特别是针对类别不平衡问题。
小结
根据表 1 的数据,可以得出以下几点分析:
-
静态物体识别(道路、天空、建筑、植被、土壤、水域): 这些对象具有明显的纹理、颜色和形状特征,因此它们的识别准确率较高。由于静态物体在不同环境中的外观变化较小,且在图像中通常具有较为稳定的特征,这使得深度学习模型能够有效提取并识别这些物体。
-
动态物体识别(车辆、行人): 车辆和行人属于动态障碍物,其识别准确率相对较低。动态物体的出现和运动会受到诸如距离、运动方向、速度等因素的影响,这些因素使得它们的外观变化更加不稳定,从而导致模型在分割时出现一定的困难。因此,车辆和行人通常需要更多的上下文信息和动态建模才能提高识别准确度。
-
地面覆盖物识别: 地面覆盖物(如泥土、草地等)的外观在不同季节和环境下变化较大,特征信息复杂多样。随着环境条件的变化,地面覆盖物的纹理、颜色、形状等特征会发生显著变化,给模型带来挑战。因此,这类物体的识别准确率通常较低。
-
小目标识别(线杆): 线杆等小目标在图像中的面积较小,经过多次下采样操作后,特征图的分辨率会显著降低,导致部分像素的空间位置信息丢失。这些小目标在恢复时容易出现不完全的分割或目标丢失的情况。即使通过上采样方法恢复特征图,模型仍难以恢复其准确的位置,因而导致识别准确率较低。
各类对象的识别准确率受到不同因素的影响,静态物体相对容易识别,而动态物体、地面覆盖物及小目标的准确度较低。针对这些问题,未来的研究可以在模型中加入更多的上下文信息、动态建模以及针对小目标的特征增强方法,进一步提升这些对象的识别精度。
根据表 2 的数据分析,可以得出以下结论:
-
HDC 模块的影响:
- 采用 HDC(高效深度卷积)模块替代普通扩张卷积,显著提升了模型的 PA(像素准确率)和 MAP(均值平均精度),分别达到 89.82% 和 85.68%。
- 这一提升表明,HDC 模块通过增大感受野并保留更多的像素空间位置信息,能够有效提高模型在像素预测方面的性能,尤其在处理具有复杂背景的图像时尤为有效。
- 尽管 HDC 模块增加了计算复杂度,但其对模型的整体影响相对较小,参数量增加了 5.35%,检测速度降低了 10.70%。
-
CAB 模块的影响:
- 引入通道注意力模块(CAB)后,模型的 PA 和 MAP 分别提升至 92.46% 和 88.72%。
- CAB 模块利用高级阶段的强语义信息来引导低级阶段提取更具判别性的特征,从而增强了类内预测的一致性,并提升了分割效果。
- 然而,CAB 模块带来了较大的参数量增加,模型的参数量增加了 39.28%,检测速度下降了 22.25%。
-
PPM 模块的影响:
- 添加金字塔池化模块(PPM)使模型的 PA 和 MAP 达到最高值,分别为 94.85% 和 90.38%。
- PPM 模块通过聚合不同区域的信息,增强了模型获取全局上下文的能力,提升了像素级别的预测精度。
- 然而,PPM 模块对模型的计算开销影响较大,模型参数量增加了 54.48%,检测速度降低了 31.41%。
-
总结与对比:
- HDC 模块对模型的性能提升贡献最大,但对计算效率的影响最小,是最优的平衡点。
- CAB 模块虽然显著提高了分割效果,但增加的计算成本较高,影响了检测速度。
- PPM 模块对分割效果的提升作用最大,但其引入的计算开销也最大,导致检测速度下降明显。
因此,综合考虑模型性能和计算效率,HDC 模块的加入是最有效的,而 CAB 和 PPM 模块则在提升性能的同时,增加了较大的计算负担。在实际应用中,需根据具体需求权衡性能和效率。
本文提出了一种基于深度学习的田间非结构化道路语义分割模型,并在不同环境条件下进行数据采集和处理,证明该模型能够在农业导航系统中有效识别和分割复杂的道路场景。通过融合轻量级卷积神经网络、混合扩张卷积、通道注意力机制和金字塔池化模块,本文模型在保证较低计算复杂度的同时,显著提升了分割精度。实验结果表明,该模型能够实现高效的动态物体识别与路径规划,为农业自动导航系统提供可靠的道路场景解析支持。
相关文章:
论文阅读:基于语义分割的非结构化田间道路场景识别
论文地址:DOI: 10.11975/j.issn.1002-6819.2021.22.017 概要 环境信息感知是智能农业装备系统自主导航作业的关键技术之一。农业田间道路复杂多变,快速准确地识别可通行区域,辨析障碍物类别,可为农业装备系统高效安全地进行路径规…...
linux部分问题以及解决方式
目录 1.ubuntu桌面不显示了,只有命令行1.1启动gdm3服务1.2安装lightdm桌面管理包 1.ubuntu桌面不显示了,只有命令行 有如下两种解决方式。 1.1启动gdm3服务 这种方法只能临时生效,每次重启都要手动启动 sudo service gdm3 restart 1.2安装…...
qt QTreeWidget详解
1、概述 QTreeWidget 是 Qt 框架中的一个类,用于以树形结构展示数据。它基于 QTreeView 并提供了更高级别的接口,使得添加、删除和管理树形结构中的项变得更加简单。QTreeWidget 支持多级嵌套,每个项(QTreeWidgetItem)…...
注意力机制的目的:理解语义;编码器嵌入高纬空间计算;注意力得分“得到S*V”;解码器掩码和交叉注意力层用于训练;最终的编码器和输出实现大模型
目录 注意力机制的目的:理解语义中的它是小白兔 词编码器嵌入高纬空间 计算注意力得分“得到S*V” 权重QKV:连接权重 训练阶段使用解码器:翻译后的语句 解码器掩码和交叉注意力层用于训练 最终的编码器和输出实现大模型 Transformer模型中,QKV QKV的作用 举例说明…...
[java][jdk]JDK各个版本的核心特性
JDK 8至JDK 21的主要新特性概览: JDK 8 Lambda表达式:引入了函数式编程的特性,使得代码更加简洁和灵活。Stream API:提供了一种新的抽象,可以让你以声明性方式处理集合数据。新的日期和时间API:引入了jav…...
双十一”买买买!法官告诉你注意这些法律问题
“双十一”等购物节来临之际,某些电商平台为了吸引消费者提前下单预订商品,通过大力宣传付定金可享受更多优惠等方式开启预售模式。那么,如果消费者在支付定金后,因各种原因最终没有支付尾款,能否要求商家退还定金&…...
PyQt5
基于PyQt5的重绘机制实现加载页面 效果预览代码说明控件初始化超时回调重绘事件缩放事件 代码获取 效果预览 直接看图,效果展现为跟随黑点顺时针转动,且有明暗变化 代码说明 控件初始化 initUI主要用于初始化用户界面(UI)。它创建了一个具有特定样式…...
【Linux】常用命令(2.6万字汇总)
文章目录 Linux常用命令汇总1. 基础知识1.1. Linux系统命令行的含义1.2. 命令的组成 2. 基础知识2.1. 关闭系统2.2. 关闭重启2.3. 帮助命令(help)2.4. 命令说明书(man)2.5. 切换用户(su)2.6.历史指令 3.目录…...
Vue3-06_路由
路由 后台路由是根据请求url,匹配请求处理的后台模块(路径) 前台根据访问路径,决定显示的内容。 路由就是: 访问hash 与内容的对应关系 路由的工作方式 用户点击页面的路由链接导致url地址栏中的Hash值发生了变化前…...
物理验证Calibre LVS | SMIC Process过LVS时VNW和VPW要如何做处理?
SMIC家工艺的数字后端实现PR chipfinish写出来的带PG netlist如下图所示。我们可以看到标准单元没有VNW和VPW pin的逻辑连接关系。 前几天小编在社区星球上分享了T12nm ananke_core CPU低功耗设计项目的Calibre LVS案例,就是关于标准单元VPP和VBB的连接问题。 目前…...
量化分析工具日常操作日记-5-通合科技
使用量化分析微信小程序工具“梦想兔企业智能风险分析助手”日常操作日记-5-军工-通合科技(300491)。 周末国家新政策,要大力支持军工行业,我用工具挖掘了两个低位股,供大家参考。通合科技(300491ÿ…...
windows和linux验证MD5码方式
一、linux linux自带MD5码验证: $ md5sum target_file.txt 二、windows windows自带的MD5码验证: $ certutil -hashfile target_file.txt MD5...
构造函数原型对象语法、原型链、原型对象
目录 一、前言 二、编程思想 面向过程 面向对象 三、构造函数 四、原型对象 constructor 属性 对象原型 原型继承 原型链 一、前言 通过本篇博客,我们将了解面向对象编程的一般特征,掌握基于构造函数原型对象的逻辑封装,掌握基于原…...
鸿蒙UI开发——自定义UI绘制帧率
1、概 述 随着设备屏幕的不断演进,当前主流设备采用LTPO屏幕(可变刷新率屏幕),此类屏幕支持在多个档位之间切换屏幕帧率。 对于快速变化的内容,如射击游戏,交互动画等,显示帧率越高࿰…...
鸿蒙基本组件结构
组件结构 1. 认识基本的组件结构 ArkTS通过装饰器Component 和Entry 装饰 struct 关键字声明的数据结构,构成一个自定义组件 自定义组件中提供了一个build函数,开发者需要在函数内以链式调用的方式进行基本的UI描述,UI描述的方法请参考UI描述…...
柔性鞋材振动刀智能视觉裁切机市场报告:未来几年年复合增长率CAGR为5.4%
震动刀切割设备是一种利用振动刀片在各种非金属材料表面上切割的设备,振动刀切割机利用刀片高频振动和360度旋转,能保证每分钟上万次的振动频率,可在平面进行垂直切割,锋利裁剪。震动刀切割设备切割速度快,可以单层切割…...
【计算机网络】基础知识,常识应用知识
局域网使用的是广播技术,广域网使用的是点对点技术,使用的协议不同。局域网工作在数据链路层,可以不要网络层,不存在路由选择问题。1968年6月,世界上最早的计算机网络是ARPAnet服务原语:请求、指示、相应、…...
【Linux进程篇1】认识冯·诺依曼体系结构(引出进程详解)
--------------------------------------------------------------------------------------------------------------------------------- 每日鸡汤: 用这生命中的每一秒,给自己一个不后悔的未来。 -----------------------------------------------…...
使用iviewui组件库的坑
背景 使用view-design组件库的Input组件的时候,按照产品的要求,输入框中只能键入正整数。 使用效果 如果直接使用组件的type属性,设置类型为number时,乍一看没啥问题,但是当我们键入 小数点(.) 或者 e/E 后面没有跟任…...
高级sql使用技巧
窗口函数(Window Functions): 窗口函数可以在结果集的行之间进行计算,例如计算移动平均值、排名等。在使用时,可以使用 OVER() 语句来定义窗口。例如: sql SELECT employee_id,salary,AVG(salary) OVER (P…...
403 Request Entity Too Lager(请求体太大啦)
昨天收到 QA 的生产报障,说是测试环境的附件上传功能报了 403 的错误,错误信息:403 Request Entity Too Lager。我尝试复现问题,发现传个几兆的文件都费劲啊,一传一个失败。不用说,项目用到 ng 代理&#x…...
Flutter 正在切换成 Monorepo 和支持 workspaces
其实关于 Monorepo 和 workspaces 相关内容在之前《Dart 3.5 发布,全新 Dart Roadmap Update》 和 《Flutter 之 ftcon24usa 大会,创始人分享 Flutter 十年发展史》 就有简单提到过,而目前来说刚好看到 flaux 这个新进展,所以就再…...
小白初入Android_studio所遇到的坑以及怎么解决
1. 安装Android_studio 参考:Android Studio 安装配置教程 - Windows(详细版)-CSDN博客 Android Studio超级详细讲解下载、安装配置教程(建议收藏)_androidstudio-CSDN博客 想下旧版本的android_studio的地址(仅供参考…...
NetCore使用Aop和内存缓存对接口、方法进行数据缓存
通过Aop内存缓存对接口、方法进行缓存 源码地址https://gitee.com/wangbenchi66/nuget 1. nuget包引入 必须引入包 至少在2024.11.7以上 <PackageReference Include"WBC66.Cache.Core" Version"2024.11.7" />必须开启内存缓存 否则后续步骤无法正…...
playwright学习记录2--定位方式
快捷导航 定位方式:元素操作断言方式自动等待 定位方式: csspage.get_by_role() 通过显式和隐式可访问性属性进行定位。page.get_by_text() 按文本内容定位。page.get_by_label() 通过关联标签的文本定位表单控件。page.get_by_placeholder() 通过占位符…...
响应式网页设计--html
一,HTML 文档的基本结构 一个典型的 HTML 文档包含了几个主要部分,基本结构如下(本文以下出现的所有代码都可以套入下面示例进行测试): <!DOCTYPE html> <html lang"zh"> <head><meta charset"UTF-8&q…...
C#核心(8) 静态成员
前言 先前我们已经学习了成员变量以及成员属性。 静态成员对于在整个应用程序中共享数据和功能非常有用。它们可以用于跟踪全局状态、共享常量和实现单例模式等。但是需要注意的是,过度使用静态成员可能导致代码变得难以维护和测试,因此应谨慎使用。其…...
关于git使用的图文教程(包括基本使用,处理冲突问题等等)超详细
目录 用户签名,初始化git git提交流程图 提交到本地库 版本穿梭 分支操作 分支合并冲突 团队协作 github的使用 推送代码 克隆 拉取代码 团队协作冲突 团队协作之分支管理 推送分支到分支: 拉去远程库分支到本地库: 本地删除远程分支&am…...
Axios 的 responseType 属性详解及 Blob 与 ArrayBuffer 解析
在前端开发的广阔天地中,Axios 犹如一颗璀璨的明星,为我们与服务器之间的通信搭建起坚实的桥梁。其中,responseType 属性更是赋予了我们灵活处理服务器响应的强大能力。 一、Axios 的 responseType 属性值及示例 1.arraybuffer 当我们将 r…...
redis集群介绍
1. 节点(Node): • Redis集群中的单个Redis服务器实例。每个节点都运行一个Redis服务器进程,并维护自己的数据。 2. 分片(Sharding): • 将数据集分割成多个部分,并分布到不同的节点…...
动画形式的h5在哪个网站做/培训学校网站
转载请注明出处。谢谢http://blog.csdn.net/harryweasley/article/details/42121485 当想到要计算差值。我们肯定想的是“2014.12.14”-“2014.12.20”4,这个方案,可是java并没有直接给我们这个方案,所以我想的是,将字符串转化为D…...
国外免费搭建网站源码/seo推广营销公司
day07 Elasticsearch搜索引擎3 1、数据聚合 聚合(aggregations)可以让我们极其方便的实现对文档数据的统计、分析、运算。例如: 什么品牌的手机最受欢迎?这些手机的平均价格、最高价格、最低价格?这些手机每月的销售…...
android studio中文怎么设置/网站优化外包顾问
当年我们写过最牛逼的代码是什么呢?“Hello World!”那么就让我在终端上实现这个功能吧! 代码如下: #include <stdlib.h> #include <unistd.h> #include <curses.h>int main() {initscr();move(5,15);printw(&…...
做公司网站要注意哪些问题/如何做好一个品牌推广
一、为什么不用github而使用码云? 私有——免费,速度快 二、怎么用? 1.下载安装好git. 2.去码云官网注册个账号。官网:https://git.oschina.net/ 3.创建项目。项目创建好后,你会发现,可以直接通过上传文件…...
新公司网站建设分录/今日新闻热点大事件
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼怎么一大堆问题????Compiling...模板 - 副本 - 副本.cppC:\Users\Administrator\Desktop\模板 - 副本 - 副本.cpp(27) : error C2146: syntax error : missing ) before identifier x…...
wordpress标志/网络营销与传统营销有哪些区别
开源解决方案供应商红帽公司日前宣布,公司现已推出红帽虚拟化4的虚拟化平台最新版本。红帽虚拟化4为基于Linux和Windows的工作负载提供了全面开放、高性能、更安全且集中管理的平台,从而挑战专有虚拟化解决方案的经济性和复杂性。该款产品融合了经过更新…...