首页> 中国专利> 基于深度学习和ADRC控制的水田除草机自动避苗系统

基于深度学习和ADRC控制的水田除草机自动避苗系统

摘要

本发明公开了一种基于深度学习和ADRC控制的水田除草机自动避苗系统,包括:图像采集模块M0,基于SSD算法的稻苗检测模块M1,苗线拟合模块M2,基于ADRC算法的控制模块M3;通过图像采集模块采集稻苗图像,输入到稻苗检测模块M1中,通过SSD目标检测算法模型进行检测识别,得到识别结果;根据识别结果拟合出苗列线,采用最大最小值间距优化算法,通过输入的苗列线信息对除草轮的位置进行优化,得到除草轮的目标位置y

著录项

  • 公开/公告号CN110134129A

    专利类型发明专利

  • 公开/公告日2019-08-16

    原文格式PDF

  • 申请/专利权人 华南理工大学;

    申请/专利号CN201910440859.7

  • 发明设计人 刘富春;曾一鸣;李向阳;

    申请日2019-05-24

  • 分类号

  • 代理机构深圳市兴科达知识产权代理有限公司;

  • 代理人许尤庆

  • 地址 510000 广东省广州市天河区五山路

  • 入库时间 2024-02-19 13:36:02

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2020-02-14

    授权

    授权

  • 2019-09-10

    实质审查的生效 IPC(主分类):G05D1/02 申请日:20190524

    实质审查的生效

  • 2019-08-16

    公开

    公开

说明书

技术领域

本发明涉及测量装置技术领域,具体涉及一种光感式智能体型维度尺。

背景技术

农田生态系统中,杂草是造成农作物产量下降和品质降低的主要原因之一,因此除草任务变得尤为重要。农田除草方式主要可分为两种:化学除草和机械除草。对于化学除草来说,施用化学除草剂是一种简单高效的稻田杂草防控方式,可是除草剂的大量应用也带来了作物药害、杂草抗药性和环境污染等诸多负面问题。机械除草作为一种环境友好型的绿色除草方式,符合国家提出的质量兴农、绿色兴农的农业产业发展方向。

目前中国的农田除草机械,研究尚处在理论和试验研究阶段,尚未在生产中广泛应用;日本的研究机构和农机生产企业已经开发了一系列的水田除草机,但价格昂贵。由于农田环境的复杂性和农作物密植的农艺特点,采用纯机械除草方式存在着伤苗率高、除草率低、适应性差、作业效率低等问题。因此部分专家和学者提出了软硬件结合的除草方式,在农田除草机械的基础上引入机器视觉的方法,通过图像识别技术降低伤苗率。

然而传统的图像处理方法需要的步骤过多,复杂度较大,并且对于输入图像的质量要求较高,鲁棒性不够好。而单株稻苗的深度学习应用无法满足除草器械的自动避苗的需要。

发明内容

有鉴于此,本发明提供基于深度学习和ADRC控制的水田除草机自动避苗方法,综合运用深度学习、目标检测、自动控制等理论和方法,解决水稻田复杂作业环境下智能、高效、低损机械除草的关键技术问题。

为达到上述目的,本发明的技术方案是这样实现的:一种基于深度学习和ADRC控制的水田除草机自动避苗系统,包括:

图像采集模块M0,由工控机外接的摄像头传感器及其连接线组成。将摄取的实时视频信息流传送给下一个模块;

基于SSD算法的稻苗检测模块M1,包括稻苗目标检测模型M1.0,稻苗目标检测模型M1.0接受模块M0产生的视频信息流,对其中每一帧图像进行检测识别,生成识别结果,传送给下一个模块;识别结果至少包括稻苗坐标信息;

苗线拟合模块M2,接受稻苗目标检测模型M1.0生成的坐标信息,通过稻苗拟合模块拟合出苗列线方程,作为下一个模块输入;

基于ADRC算法的控制模块M3,通过苗线拟合模块M2输入的苗列线信息进行除草轮的位置优化,输出除草轮的目标位置yr

进一步地,识别结果包括每一帧图像中每株稻苗周围产生标识稻苗位置的识别框,坐标信息是指稻苗所在位置的方形识别框的四个角坐标。

进一步地,苗线拟合模块M2通过四个角坐标计算出中点坐标,所述中点坐标代表稻苗所在位置,然后通过稻苗拟合模块拟合出苗列线方程。

进一步地,控制模块M3中输出除草轮的目标位置yr根据苗线拟合模块拟合出的苗线优化得到,优化按照Max-Min间距优化算法,优化计算的方程为:

其中,xij为除草轮与两边苗线的距离,xij是yr的函数,yr是除草轮的左右移动位移;i为除草轮编号,j=1时,xi1表示除草轮i离左边苗线的距离,j=2时,xi2表示除草轮i离右边苗线的距离;

上述方程的约束条件为:

di是苗线提取后获得的相邻两根苗线的间距。

进一步地,控制模块M3中通过ADRC控制器来控制所述除草轮的目标位置yr,ADRC控制器包括由跟踪微分器、扩张状态观测器和比例微分控制器组成。

进一步地,基于SSD算法的稻苗检测模块包括以下步骤:

一、建立SSD目标检测算法模型,预训练得到预训练模型;

二、采集稻面图像,构建稻苗图像数据库;

三、在预训练模型基础上训练,得到稻苗目标检测模型;

四、将验证数据输入到稻苗目标检测模型,得到识别结果。

其中步骤一包括以下具体步骤:

S0:建立SSD目标检测算法模型;

S1:在微软开源的COCO数据集上进行预训练;

S2:通过使用步骤S1中的公开数据集进行预训练得出相应的结构和权重;

S3:得到预训练模型。

其中步骤二包括以下具体步骤:

S4:通过人工采集的方式,在稻苗水田中采集稻苗图像数据,每张图像包含两个苗列,与除草机械上安装的摄像头传感器获得的稻苗图像信息一致。

S5:需要进行图像预处理;

S6:所述步骤S5中所包含的图像预处理步骤分别为尺寸归一化、旋转、去除模糊或非感兴趣区域图像;

S7:经过所述步骤S6预处理之后的图像组成稻苗图像数据库。

其中步骤三包括以下具体步骤:

S8:将图像数据库先划分为标注图像与未标注图像;

S9:所述步骤S8中的标注图像,组成训练数据用于模型的训练;未标注图像组成验证数据,用于训练后得到的模型的效果验证;

S10:所述步骤S9中的训练数据,进一步分为训练集和测试集;

S11:在所述步骤S3的预训练模型的基础上,使用所述步骤S10划分的数据集进行训练;

S12:所述步骤S11完成后生成最终的稻苗目标检测模型。

其中步骤四包括以下具体步骤:

S13:将所述步骤S9的验证数据输入到稻苗目标检测模型,得到识别结果,结果包括三部分:稻苗图像中每株稻苗周围产生标识稻苗位置的识别框、识别框上方将显示识别出来的种类名、置信度百分比。

有益效果:

本发明综合运用深度学习、目标检测、自动控制等理论和方法,本发明提出了除草过程的基于SSD算法的目标检测方案,与纯机械除草方案和机械-传统图像处理方案相比,加入了深度学习方法;结合迁移学习方法的稻苗检测模型的小样本训练方法,采用预训练模型为基础,用少量稻苗图片即可高效训练出效果很好的稻苗检测模型,避免了从零开始长时间训练;根据检测识别结果拟合出除草过程的苗列线;根据最大最小值间距优化算法,通过输入的苗列线信息对除草轮的位置进行优化,得到除草轮的目标位置yr;并通过ADRC控制器实现除草过程的自抗扰控制,最大限度地降低伤苗率,且在不增加传感器情况下,提高控制精度,降低除草机的制造成本;解决水稻田复杂作业环境下智能、高效、低损机械除草的关键技术问题。

附图说明

附图1为SSD算法网络结构图;

附图2为本发明的系统整体架构图;

附图3为本发明的基于SSD算法的稻苗检测模块;

附图4为本发明的采集到的图像示例图;

附图5为本发明的苗列检测效果示例图;

附图6为本发明的苗带线拟合结果示例图;

附图7为本发明的ADRC控制模块架构图;

附图8为本发明的除草机除草ADRC控制器内部结构图;

附图9为本发明的嵌入式除草控制器结构图。

具体实施方式

下面将结合附图和实施例对本发明进一步说明:

本发明提出了一种基于MobileNet框架下的SSD目标检测算法的多株稻苗定位并拟合苗列中心线的方法,解决了除草机械自动避苗的苗带引导需求。同时,采用了迁移学习中的预训练的思想,在公开数据集训练的模型的基础上进行自定义数据集的训练,从而实现小样本的前提下效果较好的目标检测结果。SSD算法即Single Shot MultiBox Detector作为one-stage类型的算法,它在保证一定精度的前提下,极大地提高了目标检测速率。SSD算法网络结构如图1所示,SSD基于一个前向传播卷积神经网络,产生一系列固定大小的检测框,以及每一个检测框中包含物体实例的可能性,即置信度。之后,进行一个非极大值抑制操作得到最终的预测。

本发明的系统整体结构如图2所示。包括图像采集模块M0,基于SSD 算法的稻苗检测模块M1,苗线拟合模块M2,基于ADRC算法的控制模块M3。其中每个模块的功能和作用如下:

模块M0:为图像采集模块,由工控机外接的摄像头传感器及其连接线组成。将摄取的实时视频信息流传送给下一个模块。

模块M1:为基于SSD算法的稻苗检测模块,该模块通过图3所示的一系列步骤,生成M1.0的稻苗目标检测模型,该模型接受模块M0产生的视频信息流,对其中每一帧图像进行检测,生成图3S13所述的信息,传送给下一个模块。

模块M2:为苗线拟合模块,该模块接受M1.0生成的坐标信息(所述坐标信息是指稻苗所在位置的方形识别框的四个角坐标),然后通过四个角坐标计算出中点坐标,即代表稻苗所在位置。然后通过稻苗拟合模块拟合出苗列线方程,作为下一个模块输入。

模块M3:基于ADRC算法的控制模块,通过给定苗列线信息进行除草轮的位置优化,最后输出除草轮的目标位置yr。

(一)、基于SSD算法的稻苗检测模块

如图3为所述的基于SSD算法的稻苗检测模块,具体步骤说明如下:

步骤S0:在tensorflow开源框架下,考虑到稻苗除草的控制场景具有一定的实时性要求,因此建立MobileNet架构下的SSD目标检测算法模型,MobileNet主要是为了适用于移动端而提出的一种轻量级深度学习网络,使用了深度可分离卷积的方法减少了计算量。

步骤S1:在微软开源的COCO数据集上进行预训练。

步骤S2:通过使用步骤S1中的公开数据集进行预训练得出相应的结构和权重。这里结合迁移学习方法,实现了稻苗检测模型的小样本训练。后面的步骤将以预训练模型为基础,用少量稻苗图片即可高效训练出效果很好的稻苗检测模型,避免了从零开始长时间训练。

步骤S3:得到预训练模型,应用到我们的稻苗检测问题。

步骤S4:通过人工采集的方式,在稻苗水田中采集稻苗图像数据,原始数据尺寸为3648x 2048,采集对象为两到三周的水田稻苗图像,每张图像包含两个苗列,与除草机械上安装的摄像头传感器获得的稻苗图像信息一致。

步骤S5:如图4是采集到的稻苗数据举例,由于人工采集到的图像横竖角度不一致,并且由于采集设备像素很高,所得的图像尺寸过大,会造成深度学习模型处理的时间过长,不满足系统的实时性要求。因此需要进行图像预处理。

步骤S6:所述步骤S5中所包含的图像预处理步骤分别为尺寸归一化、旋转、去除模糊或非感兴趣区域图像,从而得到尺度为1280x 719、横向且无明显模糊的图像。

步骤S7:经过所述步骤S6预处理之后的图像组成稻苗图像数据库。图片数量总共为282张。

步骤S8:将图像数据库先划分为两部分:标注图像与未标注图像。其中取出200张图像,用开源工具Labelimg进行手工标注。剩余82张图像为未标注图像。

步骤S9:所述步骤S8中200张标注图像,将组成训练数据用于模型的训练。未标注的82张图像组成验证数据,用于训练后得到的模型的效果验证。

步骤S10:所述步骤S9中的训练数据,进一步分为两部分:训练数据中的80%组成训练集(train),剩余的20%组成测试集(test)。

步骤S11:在所述步骤S3的预训练模型的基础上,使用所述步骤S10 划分的数据集进行训练。本发明软件的实现采用开源的Tensorflow架构和Python脚本语言,硬件配置GPU采用NVIDIA TITAN X(Pascal),显存为12189MiB。基于该硬件配置算法运行速度可达到0.1s/幅1280x 719 大小的图像。

步骤S12:所述步骤S11完成后生成最终的稻苗目标检测模型。

步骤S13:将所述步骤S9的验证数据输入到稻苗目标检测模型,即可得到识别结果,结果包括三部分:稻苗图像中每株稻苗周围产生标识稻苗位置的识别框、识别框上方将显示识别出来的种类名(该任务中只有一种,即稻苗rice)、种类名右侧会显示出置信度百分比。其识别效果如图5所示。

(二)、苗线拟合

在模块M1基于SSD算法的稻苗检测模块完成稻苗检测识别后,该模块接受M1.0中步骤S13生成的坐标信息,然后通过四个角坐标计算出中点坐标,即代表稻苗所在位置。然后通过稻苗拟合模块拟合出苗列线方程。

在如图6所示绿色框为稻苗检测识别框,左上角标注有识别种类(稻苗rice)及其置信度百分比。红色点为通过角坐标计算出来中点,点之间的红色线为最小二乘法拟合的苗列线,最终可得到两条苗列线的直线方程。而苗列之间的蓝色中线为除草轮的理想轨迹。

其中,中点计算公式如下:

(三)、基于ADRC算法的控制模块M3

如图7所示为基于ADRC算法的控制模块,具体步骤说明如下:

步骤S0:为Max-Min间距优化算法,除草轮-苗带间距的最大最小值(Max-Min)的优化按照式(2)进行优化:

式(2)和式(3)中xij为除草轮与两边苗线的距离,它是yr的函数,>r是除草轮的左右移动位移;i为除草轮编号,j=1时,xi1表示除草轮i>i2表示除草轮i离右边苗线的距离;式(3)>i是苗线提取后获得的相邻两根苗线的间距;通过优化变量yr使得各个除草轮与其相邻苗线的距离xij中的最小值达到最大,此时的优化值yr作为除草轮控制回路的控制目标,除草轮的实时位置通过连杆机构来调节。

步骤S1:为ADRC控制器。其内部结构如图8所示。

ADRC控制器主要由TD(跟踪微分器)、ESO(扩张状态观测器)和 PD(比例微分控制器)组成,b0是被控对象连杆和除草轮的控制增益的粗略估计。

TD用于安排过渡过程,把实时参考苗线yr进行光滑处理,得到其光滑的过渡曲线及其导数r1和r2用于后续PD控制器前的求差运算;此外,>3用于设定值前馈控制。为了保证有限时间收敛,采用非线性>

其中sgn()为符号函数,R的取值表示yr的跟踪快慢,取4,具体数值可以根据连杆机构和除草轮调整,该非线性TD对其取值不敏感。

ESO把连杆结构和除草过程的输入u(通过b0放大)和输出y经过ESO 算法得到z1和z2以及等效到输入侧的系统总扰动z3,其中z1和z2用于求取跟踪误差及其导数,z3用于直接对扰动进行补偿。在保证性能的情况下,为了简化计算,采用线性ESO,系统方程如式(5)所示。

其中β1、β2和β3是多项式(s+ωo)3=s31s22s+β3的系数,取ωo=2,具体数值可由连杆机构和除草轮调整。

采用线性PD控制器得到u0,PD控制器方程如式(6)所示。

u0=k1(r1-Z1)+k2(r2-Z2)>

其中k1和k2是多项式(s+ωc)2=s2+k1s+k2的系数,取ωc=1,具体数值可由连杆机构和除草轮调整。最终的系统控制输入为:

从式(7)可以看出,最终的控制量包括前馈控制量r3、补偿控制量z3和反馈控制量u0,因此比普通的PID控制能够更好地保证和提高控制系统性能。

为了降低生产成本和保证控制系统可靠性,控制器采用嵌入式系统的方式实现。选用STM32F466RE作为MCU,其内核ARM Cortex-M4含DSP 和FPU指令,支持浮点运算,工作频率高达180MHz,Flash/RAM为 512KB/128KB,具有ADC输入、USART通信接口,DAC和PWM输出,满足除草控制的需求。图9给出了其硬件结构图。

图9的硬件电路包括用于位移测量的电位器测量电路及其校正电路,输出电路包括DAC输出驱动电路和PWM输出驱动电路,设置两种不同的输出电路方便不同的液压驱动接口,通过RS422电路与图像采集和识别设计接口,通过LED指示和按钮输入电路实现简单的人机界面。采用实时操作系统FreeRTOS,一个任务周设置为30毫秒,保证实时控制。

步骤S2:所述除草过程的执行机构部分由液压模块驱动。

步骤S3:所述除草过程所用的除草轮采用连杆机构设计。

步骤S4:为精密塑料电位器接近开关。采用精密塑料电位器测量连杆机构(与除草轮刚性连接)的位移,应用塑料电位器的耐磨特性保证除草机工作的可靠性,并采用接近开关进行精密塑料电位器的自动刻度校正,简化除草机的安装、调试,方便普通农民大众使用。在除草过程中,除草机不断抖动、液压压力波动、连杆机构磨损和变形、因速度变化引起的延时变化等都影响控制质量,除了采用经典的滤波技术外,还创新地应用了ADRC技术实现在不增加传感器情况下,提高控制精度。控制器通过精密塑料电位器获得除草轮的实时位置后,与除草轮位置设定值进行比较获得测到误差,控制器采用ADRC(自抗扰控制)算法实现 Max-Min的优化控制。

以上所述仅为本发明的较佳实施方式,本发明并不局限于上述实施方式,在实施过程中可能存在局部微小的结构改动,如果对本发明的各种改动或变型不脱离本发明的精神和范围,且属于本发明的权利要求和等同技术范围之内,则本发明也意图包含这些改动和变型。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号