基于葡萄种植图像识别技术的智慧农业应用
2025-02-01杨振盛
摘" 要:在智慧农业的众多技术中,图像识别技术的重要性日益凸显。该文介绍图像识别技术在葡萄种植过程中对病虫害进行识别,采用轮廓边缘检测算法和U-Net算法在葡萄不同生长期病害特征标定识别中的应用,阐述如何利用简单的图像数理模型进行数据分析,并最终实现各花期病变的自动甄别,提升葡萄种植的管理效率。希望读者通过该文能够理解图像识别技术如何与传统农业相结合,为推动智慧农业的发展提供新思路。
关键词:智慧农业;图像识别;Sobel算法;U-Net算法;RGB数值
中图分类号:S663.1" " " 文献标志码:A" " " " " 文章编号:2096-9902(2025)01-0018-04
Abstract: Among the various technologies in smart agriculture, the importance of image recognition is increasingly evident. This paper introduces the application of image recognition technology in grape planting, using contour edge detection algorithm and U-Net algorithm in the calibration and identification of disease characteristics in different growth periods of grape. It expounds how to use simple image mathematical models to carry out data analysis and ultimately realize the automatic identification of various flowering diseases to improve the management efficiency of grape planting. Through this paper, readers can gain a clear understanding of how image recognition technology can be integrated with traditional agriculture, which offers new insights for advancing smart agriculture.
Keywords: smart agriculture; image recognition; Sobel algorithm; U-Net algorithm; RGB values
现代信息技术经过几十年的演进,已经深度融合到人们的日常生活及生产活动中,其中包括农业等传统产业领域。特别是随着物联网等先进信息技术的发展,农业领域的智慧农业成为现代农业发展的重要趋势。在乡村振兴战略的推动下,我国智慧农业产业的建设步伐显著加快,诸如农作物环境信息监测系统、节水灌溉控制系统、空天地一体化监控系统、水肥一体化监控系统等一系列技术产品的自主研发成绩斐然。然而,这些系统在人工智能和基于机器视觉的图像识别技术的整合应用方面尚存不足。本文旨在探讨图像识别技术在葡萄种植过程中对病虫害的识别应用,进而探讨其在智慧农业领域中的实际应用价值。
1" 平台搭建
本研究旨在探讨一种基于机器视觉的图像识别技术在葡萄种植中的智慧农业应用。该应用系统的架构采纳了当前主流的物联网平台三层架构模式,包括感知层、网络层以及应用层。在平台搭建方面,本研究使用C语言负责平台系统底层的数据处理逻辑,确保系统具备基本的识别及其他操作功能。系统的操作界面基于B/S架构设计,即所有核心算法和功能均部署在服务器端,用户通过浏览器端登录访问,无需在本地安装任何客户端软件,这种设计显著降低了客户端与服务器端的维护成本。文章重点讨论了感知层在图像识别应用中的实现。在该系统中,用户可通过智能手机拍摄并上传葡萄的病害图片至系统,系统将能迅速并准确地识别出葡萄的病害类型,并提供科学合理的处理建议及种植指导。
2" 葡萄病虫害特征的识别
本系统方案旨在通过图像识别技术实现葡萄病虫害特征的准确识别。该方案的核心在于对葡萄图像中的病害区域进行精确识别,再将识别得到的数据进行有效归类并标注,最终利用深度学习算法对这些数据进行学习,形成一个标准的识别模型。此过程将以单个像素点作为最小的数据处理单元,对图像(像素集)中三原色的RGBW(红、绿、蓝和白)4个通道的色阶数据进行细致处理。最终将处理好的图像(像素集)中的像素点数量进行分类统计和数理分析,进而实现病虫害特征的准确识别。图像(像素集)识别流程具体如图1所示。
在处理模糊或色彩对比度不明显的图像时,系统首先执行色彩增强操作,旨在突显图像的关键特征并抓取颜色特征。色彩增强的基本原理是对图像的灰度级别进行重新分配,这些灰度级别代表了图像中的不同亮度水平。通过这种重新分配,使得图像的灰度分布更加均匀,暗处变亮,亮处相对变暗,以此来增强RGB颜色的对比度。这样的处理有利于后续对RGB各通道的色彩像素点进行更准确的统计和分类。
在捕捉图像的外形轮廓方面,系统采用了Canny边缘检测算法。
1)通过高斯滤波对图像进行降噪处理。高斯滤波可以平滑图像,通过模糊处理降低图像的噪声,为边缘检测创造更清晰的轮廓基础。
2)系统使用Sobel算法来计算图像每一个像素点的梯度值。其作用是可以有效地检测出图像中的图形边缘结构。Sobel算法能够分别计算出图像在水平和垂直方向上的梯度值。通过结合这2个方向上的梯度,可以得到每个像素点的梯度幅值及其方向。Sobel算法的具体公式包括梯度幅值和梯度方向的计算,它通过对图像中每个像素点周围的像素值进行操作,得到该点在水平和垂直方向上的边缘强度和方向,从而实现对图像边缘的精确检测。其公式如下
梯度幅值:G= ,
式中:Gx和Gy分别表示该像素点在水平和垂直方向上的梯度值。
梯度方向:θ=arctan2(Gy,Gx),
式中:arctan2是反正切函数,它可以根据Gx和Gy的值计算出正确的梯度方向。
3)系统采用非极大值抑制(Non-Maximum Suppression, NMS)算法来进一步增强图像轮廓的边缘清晰度。非极大值抑制的核心思想是在梯度图像中,只保留梯度值局部最大的像素点,而抑制(即减弱或去除)其他非局部最大的像素点。这样的处理使得图像的边缘部分变得更加细腻和锐利,显著增强了图像轮廓的清晰度,为后续的边缘检测奠定了基础。
4)系统应用双阈值检测算法对图像中的像素进行分类。这一步骤中,通过算法将它们分为强边缘、弱边缘和非边缘3种类型,算法根据预先设定的高阈值和低阈值来判断。梯度幅值超过高阈值的像素被标记为强边缘;梯度幅值处于高阈值和低阈值之间的像素被标记为弱边缘;而梯度幅值低于低阈值的则被认定为非边缘。这种分类方法有助于进一步明确边缘的界限,为边缘轮廓的准确抽取提供重要依据。
5)连接强边缘像素来形成完整的边缘轮廓。这一过程主要依赖于边缘连接技术,将那些被标记为强边缘的像素点相连接,从而形成闭合的边缘轮廓。通过这种方式,系统能够准确地描绘出图像中的物体轮廓。此过程不仅识别了图像的轮廓,还对于后续的图像识别和分析,尤其是在葡萄病虫害特征识别中,提供了清晰且连贯的边缘信息,大大提高了识别的准确性和效率。
6)对图像特征进行采集后的图片数据,通过颜色,轮廓形状等进行归类。例如:特征色彩白色为一类;特征棕褐色为一类;特征轮廓为圆归一类;特征轮廓为方归一类。再对归类的图像进行病虫害类型标注。例如:大圆形包含多个小圆形定义为甲虫,大矩形包含多个小矩形为毛虫。
7)对归类、标注好的数据集,通过多种图片特征相似度数据进行采样和对比,利用人工智能算法进行深度学习,建立一个标准的数据对比模型,最终形成完整且多样的病虫害数据库。表1为葡萄不同生长期常见的病害特征数据集示例。
3" 葡萄花期的识别
葡萄种植的花期分为前期、中期、后期,其开花的花序依次为中部、基部、顶部。因此,根据葡萄开花的这一特征,采用U-Net模型对葡萄叶片和花絮特征进行分割识别,区分出果叶和花絮。再通过数据统计计算,计算出葡萄花絮在基部、中部和顶部的排布数量,从而识别出葡萄的花期。
3.1" 葡萄叶片和花絮图像的分割
U-Net算法模型是一种深度学习模型,特别设计用于图像分割任务,能够准确地识别图像中的各种对象和结构。它通过使用对称的收缩路径(用于捕获上下文信息)和扩展路径(用于精确定位),能够在较少的数据上也达到较好的分割效果。因此非常适用于葡萄叶片和花絮特征进行分割识别,可将葡萄的花期进行有效的区分归类,为下一步进行数据统计分析奠定基础。其大致步骤如下。
3.1.1" 图像数据采集和预处理
U-Net算法模型需要基本的图像数据才能进行计算。因此,需要收集包含葡萄叶子和花絮的图像,这些图像可以来源于实地拍摄的葡萄园照片,且需要对拍摄收集到的图像进行预处理,即人工标注,确定哪些部分是叶子,哪些是花絮。在形成数据模型后,就无需人工标注,只需设定一个相似度参数,达到设定值的图像自动标注。
3.1.2" 模型训练
建立基本U-Net算法模型,初始化模型网络结构,调整数据网络学习的深度和特征抓取的通道数量等。将标注好的葡萄图像数据(即真实的分割图)输入到U-Net算法模型中,使用交叉熵损失函数对图像进行对比计算,得出数据网络模型与真实图像标注之间的差异参数。利用SGD算法对模型进行网络优化,调整网络参数,减小参数差异,完成模型训练和优化。
3.1.3" 图像分割
将新的葡萄图像输入模型进行前向传播,与训练完成的模型进行对比,得到每个像素属于叶子或花絮的概率。设置一个阈值,将低于这个阈值的像素分类为叶。例如设置一个阈值为100%,输入新图像与模型对比得出的一个像素点属于叶子的概率为20%,那属于花絮的概率为80%,即判定该像素点属于花絮,从而完成图像的切割。
3.2" 数据分析
通过葡萄图像的分割,就能将葡萄不同部位的花絮数量采集出来,运用数量占比法进行数据统计分析,就能判断出葡萄的花期,其简单的数学分析原理如下。
在一张拍摄的图像中,通过模型分割出葡萄3个部位(基部、中部、顶部)开花的数量,将这些特征的数量定义为:花开在葡萄花絮中部的数量设为x1,花开在葡萄花絮基部数量为x2,花开在葡萄花絮顶部数量为x3,则设花絮总数量为Q,则Q=x1+x2+x3。由此可绘出图2。
将不同部位的花絮总数与总花絮数进行对比,由此得出:当x1/Q最大时,为花开的前期;当(x1+x2)/Q最大时,为花开的前中期;当x2/Q最大时,为花开的中期,当(x2+x3)/Q最大时,为花开的中后期;当x3/Q最大时,为花开的后期。由此,通过以上简单数据模式,就能将葡萄开花至下而上,花开的数量从基部到顶部逐渐爬升的过程体现出来,再将其转换成数据对比,从而实现图片像素分辨转变成数字化分析,再通过定义数值,实现葡萄花期的分辨。
4" 葡萄果实采摘期的识别
通过以上对葡萄花期识别的简单介绍,已经对葡萄如何实现图片到数据的量化分析有了初步的了解,但是在葡萄的整个种植过程中,要实现病虫害的识别,还需要对葡萄结果时期进行有效判断,本系统以紫葡萄为例,阐述其简单的数据分析原理,步骤如下。
4.1" 拍摄整串葡萄的图片
这一步骤是整个分析过程的基础,通过高清晰度的图像捕捉,确保后续处理的准确性。利用图像算法模型,对葡萄果实和叶片进行分割。分割过程中,基于图像的轮廓算法(Sobel算法),能够有效地区分果实与叶片。果实通常表现为具有一定弧度的形状,而叶片则相对平坦。通过这种方式,可以精确地将葡萄果实与叶片分离,并统计出每一张图片中葡萄果实的总数量。
4.2" 定义颜色红绿蓝三原色通道(RGB)的数值
葡萄果实在成熟过程中,其颜色会发生显著变化,通常由绿色逐渐变为粉色,最终变为紫色。为了准确判断果实的成熟度,我们需要对不同颜色的葡萄果实进行精确的RGB数值定义。例如,紫色的RGB数值可以设定为(150,60,150),并给出一定的容差范围,设定为RGB数值(140-160,50-70,140-160)。这一设定确保在分析过程中,即便由于光照或其他环境因素导致颜色轻微变化,也能被归为同一种颜色。
4.3" 进行像素对比
在这一步骤中,系统将已经判定为果实的图像中的每一个像素点的RGB数值与预设的RGB范围进行对比。假设一个像素点的RGB数值为(140,60,160),由于该像素的RGB数值都在预设的容差范围内,因此被认定为有效像素点,并记为1。相反,如果另一个像素点的RGB数值为(139,60,160),由于R通道的颜色数值不在容差范围内,该像素点将被认定为无效像素点,并记为0。
4.4" 进行像素统计,定义有效葡萄果实
本系统通过前面3步的图像分割,已有效得到每一个葡萄果实的总像素点数量,同时也通过像素对比,得到了有效的像素点数量。接下来,需要设定一个有效像素点与总像素点的占比阈值,以此来定义是否为有效果实。例如,若某一葡萄果实的总像素点数为1 000,而判定为紫色的有效像素点数为600,如果系统参数设定的占比阈值为50%,那么这个葡萄果实将被认定为有效果实,即果实已经达到成熟期。
4.5" 判断葡萄的坐果期
通过前面的步骤,本系统已经可以统计出葡萄变成紫色时的果实数量。为了进一步判断葡萄的采摘期,只需将已经判定为紫色的果实数量与整张图片中的总果实数量进行对比。如果大部分果实都已变成紫色,那么葡萄已经进入最佳采摘期。当然,这里以紫色为例,实际应用中,还需要对绿色和粉色果实进行类似的分析,从而将葡萄病害与不同的花期、结果期进行绑定,形成完整的数据链。整个结果期涉及不同颜色果实的判断,具体设置的比例阈值需要结合实地考察,才能得到更为准确的判断。
5" 预呈现效果
本系统通过图像识别算法和图像数据分析的应用,可以有效地识别出葡萄各种类别的病虫害特征以及葡萄种植周期中的不同花期,再结合2个数据特征进行葡萄病虫害在各个花期、果期中分布的分析,就能更准确地识别出葡萄的病虫害。针对不同时期呈现的不同病害特征进行归类建立更深、更准确的数据模型,如图3所示。
5.1" 生长期归类
将葡萄不同生长周期的病害进行归类,如图3所示,将花开期和采集期出现的病害白腐病、霜霉病归为一类,将花开期至坐果期的黑痘病和灰霉病归为一类,这样做的目的是为了更好地区分出同种病变特征下的不同时期的病害,提高识别率。
5.2" 病变特征识别
对葡萄生长同时期果肉、叶片的病变外表轮廓、形状、颜色等特征进行抓取。例如:白腐病果肉颜色为绿色或淡褐色,形状为水渍状;霜霉病果肉颜色为灰色,叶片为黄色或者红褐色。通过特征抓取,达到诊断葡萄病变的类型,从而给农户推荐相应的生产防护措施和解决措施。
6" 结束语
在葡萄的种植与管理过程中,季节性环境变化和生长周期的差异往往会导致病虫害的发生,这对葡萄的生长产生不利影响。传统的病虫害防治方法,由于缺乏专家的指导与建议,农户通常依靠经验用药或盲目用药,这不仅可能无法有效解决问题,还可能对葡萄的正常生长造成影响。因此,本文探讨图像识别技术在葡萄种植过程中的应用,不仅仅局限于简单的花期和病虫害类型识别,更重要的是提升了葡萄种植的管理水平。利用基于机器视觉的图像识别技术,可以实现葡萄种植的多方面预警,如花开前期的病虫害预警、环境监测预警,以及针对不同生长阶段的人工授粉、土壤和肥料准备、掐顶和套袋等管理措施的预警,起到了“专家”指导农户种植的作用。依托这类人工智能图像识别技术,实现单一管理者监控多个园区,从而能够提前规划生产、作出相应决策,提高生产效率,降低劳动强度,并节省劳动成本。
值得注意的是,虽然本文简要介绍了基于图像识别技术的应用模型,实际上构建的数学模型和进行深度学习需要更加复杂和细致的分类处理,每个类别之间都存在相互关联。这意味着,要真正实现图像识别技术在葡萄种植管理中的高效应用,还需要不断优化和发展更精准的算法模型,以便能够更加准确地识别和处理各种病虫害问题,从而提升葡萄种植的整体质量和效率。
参考文献:
[1] 赵春江.智慧农业发展现状及战略目标研究[J].农业工程技术,2019,1(1):1-7.
[2] 朱立学,赖颖杰,张世昂,等.基于改进U-Net的火龙果采摘图像分割和姿态估计方法[J].农业机械学报,2023,54(11):180-188.
[3] 杨莎,熊纬,张昭,等.一种基于自适应阈值Canny算法的输变电设备图像检测方法研究[J].电子设计工程,2019,27(15):31-36.
作者简介:杨振盛(1993-),男。研究方向为机器视觉应用、物联网及电气自动化。