基于专家系统的穴盘苗品种识别算法设计与试验

2019-08-10 03:46何彦虎武传宇童俊华贺磊盈王荣杨杨太玮
江苏农业科学 2019年4期
关键词:穴盘苗推理机专家系统

何彦虎 武传宇 童俊华 贺磊盈 王荣杨 杨太玮

摘要:为提高穴盘苗品种识别准确率,确保全自动穴盘苗移栽的实施,设计基于专家系统的识别算法。首先对采集穴盘苗图像进行K均值聚类算法图像分割、二值化和形态图像处理,获得0.6L-0.4(R+B+G)/3、0.3b-0.7a、H+0.2S、0.3L-0.7a等4个颜色特征值向量和长宽比、椭圆扁率、矩形度、傅里叶描述子等4个形状特征向量。然后对图像特征进行语义转换,构建穴盘苗知识模型,并设计苗的知识库及推理机,推理采用了不确定推理算法及学习算法。系统采集了120盘10个品种的穴盘苗,采用专家系统识别试验,成功率达到了98.3%,而相同样本采用支持向量机(support vector machine,简称SVM)的识别率是84.0%,采用粒子群优化支持向量机(particle-swarm optimization SVM,简称PSOSVM)的识别率是86.3%,采用反向传递(back propagation,简称BP)神经网络的识别率是62.0%,证明基于专家系统的识别方法可以满足自动移栽作业要求。

关键词:穴盘苗;图像识别;专家系统;不确定性推理;推理机

中图分类号: TP391.41  文献标志码: A  文章编号:1002-1302(2019)04-0176-06

为改善劳动条件,穴盘苗自动移栽技术得到广泛研究,由于穴盘苗的种类繁多,形态各异,在全自动穴盘苗移栽时,要对不同品种的苗采用不同的移栽方法,因此,穴盘苗品种识别是自动移栽的技术需求之一。目前常用的识别方法是通过图像处理,得到穴盘苗特征,通过苗叶面积、形状、颜色等特征进行识别。胡飞等采用1.8G-1.5R-1.8B颜色分量对番茄穴盘苗图像进行灰度化处理,并采用最大类间方差进行图像分割,实现对弱苗的识别[1]。贺磊盈等提出了1种基于机器视觉用椭圆拟合的方法恢复幼苗叶面,提取叶面轮廓并根据轮廓上的拐点,应用椭圆拟合的方法参数化叶面形状,提取幼苗的叶面参数[2]。程玉柱采用分数阶微积分理论的主动轮廓模型(ACM,active contours model)对分数阶ACM图像分割算法进行研究,发现对玉米苗的图像分割效果优于阈值分割[3]。童俊华开发了穴盘苗健康信息检测方法,通过灰度增强降噪等处理技术将穴盘苗与背景分割,提高了苗叶识别可靠性[4]。蒋焕煜等采用(3G-R-B)/3色差法及分水岭分割算法分割番茄苗叶[5]。尹建军等采用(R-G)色差对番茄图像进行动态分割[6]。胡建平等通过辣椒穴盘苗的颜色、颈粗、面积等特征来识别健康苗[7]。近年来,许多研究者开始采用智能化的识别方法。李浩采用红绿蓝(red green blue,简称RGB)及色饱和强度(hue saturationb intensity,简称HSI)颜色模型并采用贝叶斯判别法建立烟叶分组判别模型[8]。刘念等采用多特征融合和深度信念网络对植物叶片品种进行识别,识别率为95.6%[9]。

智能化识别通过视觉提取苗的外形、颜色、纹理等信息,然后采用神经网络、贝叶斯、卷积神经网络等算法进行分类。因穴盘苗存在层次不齐、黏连重叠等现象,且光照变化对苗叶颜色和形状特征的获取影响较大,造成识别误差较大,鲁棒性和稳定性较差。本研究提出了1种基于专家系统决策的识别算法,并对10种类型的穴盘苗进行识别验证,以证明该算法可有效提高穴盘苗品种的识别准确率。

1 设备与材料

1.1 试验设备

试验设备如图1所示,该设备由4条苗盘输送带、1个视觉箱、3个伺服轴、1套移栽末端执行器、伺服控制系统、图像处理模块、专家系统识别模块组成。视觉箱里包括相机及灯光,相机采用grey point公司的GRAS-50S5C,镜头是Sony ICX625AQ 2 448×2 048 CCD,接口是IEEE-1394,PCIeBus Speed是2.5 GT/s。灯光布置成4×4个灯带(4层,每层4个)。相机与上位机相连接,上位机上安装了图像采集卡、专家识别系统。设备的工作过程为:在进料输送带上放入待识别的穴盘苗,通过视觉箱采集穴盘苗图像,并经过图像处理模块获得苗特征向量,该特征向量被上位机的专家系统捕获,专家系统识别出苗的品种,然后根据该品种苗的移栽閾值(这里仅取面积阈值验证)实施移栽。移栽穴盘苗通过输送带1(可在导轨3前后移动)传送到输送带5处,XYZ伺服系统带动末端执行器9动作,将苗从输送带5处的穴盘里移栽到输送带6处的穴盘中。

1.2 试验材料

2017年6—10月从浙江理工大学、浙江大学、浙江省现代农业园区采集穴盘苗样本共120盘10个品种,在样本的选择上,考虑了相似样本的选择,也考虑了光照、拍摄位置、苗龄等多个因素,具体样本情况是:三色堇苗S1(S11~S14)共4个样本,分别在4、3、2、1层灯带发光下采集;一串红苗S2(S21~S24)共4个样本,在不同放置角度下采集(测试拍照角度对系统的影响);黄瓜苗S3共66个样本,其中7 d苗(S301~S310)10个,8 d苗(S311~S320)10个,9 d苗(S321~S330)10个,10 d苗(S331~S340)10个,11 d苗(S341~S350)10个,12 d苗(S351~S360)10个,13 d苗(S361~S366)6个;番茄苗S4共20个样本,分别是6、8、17、24 d的样本;辣椒苗S5共6个样本,分别是17、24 d的样本;另外还有吉利红星苗S6、蒲瓜苗S7、茄子苗S8、西葫芦S9、有机花菜苗S10各4个样本。算法的主要目标是在整个样本空间下,进行苗品种判别。

2 识别算法

2.1 识别框架设计

实现穴盘苗品种识别的关键是设计专家系统识别算法,该算法按照层次化构建识别框架,分别为图像特征获取层、语义转换层和专家系统识别层。图像特征获取层的主要作用是获取苗叶的颜色和形状特征;语义转换层主要完成与知识库的对接,把苗的特征信息表达成知识库的格式存储。专家推理层主要完成对这些知识的推理与再学习。专家系统主要由知识库、推理机、数据库、人机交互等组成,穴盘苗的专家识别总体方案设计如图2所示。

2.2 图像特征获取

2.2.1 颜色值提取 不同品种穴盘苗的外在形态在重叠程度、疏密程度、健康程度等方面各有不同,须要在不同颜色空间下寻找颜色的组合特征,目前常用的颜色模型有RGB模型、HIS模型、Lab(luminosity,a表示从红色至绿色的范围,b表示从蓝色至黄色的范围)模型、CMYK(cyan magenta yellow black)模型。通过K均值聚类进行图像分割,然后获取R、G、B、L、a、b、H、S各分量的颜色值。

2.2.2 形状特征获取 穴盘苗的形状特征需与叶片的大小和方向无关。选取的特征参数有:矩形度(R),描述苗叶与苗叶外接矩形的接近程度,如式(1)所示;椭圆扁率(u),指苗叶的狭长程度,如式(2)所示;长宽比(P),叶片外接矩形长宽的比值如式(3)所示。

式中:A表示面积;W是外接矩形的宽;L是外接矩形的长;a是椭圆长轴;b是椭圆短轴,图像处理中,采用的单位都是像素点数。形状特征获取算法的关键是在苗叶重叠情况下,在畸变苗叶中找到形状接近度高的理想苗叶集,以获取较准确的形状特征,算法流程为

Step1:采用K均值在Lab颜色空间下分割出苗叶,并用最大类间方差法(OTSU)去除噪点。

Step2:形态运算分离苗叶。首先设定1个2×2的矩阵模板,对图像进行腐蚀,增大苗叶距离。然后进行填充孔洞运算,最后采用圆形为1的模板对图像开运算。

Step3:理想苗叶筛选。首先采用面积阈值法除去大面积粘连区域,再计算面积均值和方差,选择小于“面积均值+方差”并大于“面积均值-方差”的区域。最后统计椭圆扁率u的频次,凡是频次出现高的被保留,频次低的一般是非理想苗叶形状,予以滤出。

Step4:傅里叶描述子精选理想苗叶。经过第3步的筛选,已将大面积的粘连苗叶、残缺苗叶、重叠苗叶除去,但仍偶然出现不理想苗叶,甚至畸形苗叶没有被滤出,因此再采用傅里叶描述子进行辨识与分离。设单独的1个苗叶是由N个像素组成的封闭边界,则边界上任意一点的坐标可以用复数表示为式(4)。

式中:fx表示匹配情况,fx为0表示匹配不成功,大于0表示匹配成功。这时就形成了C(i,j)个类,最终被选为理想苗叶算法的是最小误差法,即计算每一个类的傅里叶“误差和”,“误差和”最小的类被选中,说明该类中苗叶非常相似。最后计算出目标苗叶的长宽比、矩形度、椭圆扁率、傅里叶描述子等平均值作为形状特征值。

2.3 专家系统识别

穴盘苗的专家识别算法包括穴盘苗特征的语义转换、知识表示与推理机的设计。

2.3.1 穴盘苗特征语义映射 穴盘苗特征主要包括颜色和形状,颜色的语义映射主要是将颜色数据转变成颜色语义,便于推理机的识别。形状特征的语义映射主要是将苗特征值转换成推理机可识别的语义信息。这里采用一个三元组表达,如式(7)所示。

式中:i=1,2,3,…,n,N是特征名称,V是该特征对应的数值;δ表示允许误差,即当前采样值与知识库中知识特征值的差。(+,-,*,/)表示特征可以按照该运算组成新的特征。

2.3.2 穴盘苗建模 在推理过程中,还须要建立穴盘苗的知识模型,用于对苗特征的表征与推理,实现对不同苗的识别。1个完整的穴盘苗具有颜色、形状等特征,模型要能表达这些特征,据此定义穴盘苗模型如式(8)所示。

式中:SEEDi表示穴盘苗的模型;SNi表示第i盘苗的名称;Aij表示第i盘苗的第j个特征名称;Vij表示第i盘苗的第j个特征的特征值;δij为接近度,即第i盘苗的第j个特征的采样值与知识特征值的差值;(OR,AND)表示这些特征可以进行“或”运算或者“与”运算;wij为客观可信度,表示穴盘苗某特征对穴盘苗支持的客观可信度,是客观存在的,该参数一般在知识库中是静态存在的,由领域专家确定;CFij为Aij特征的学习可信度,在学习的过程中,可以改变自身的值,一些对穴盘苗支持程度高的特征,其CF值随着学习不断加强,支持度小的CF值则不断减小和弱化,其随着学习更加趋近合理;SCFi为穴盘苗的总体可信度;λi为可信度阈值。

2.3.3 知识模型及推理机设计 语义映射完成的穴盘苗特征将成为专家系统的事实,是专家系统辨识穴盘苗的依据,因采集环境以及图像处理中的信息丢失等影响,采集信息存在模糊性、随机性等强非线性因素,具有不完备和不精确性。对于这类问题在专家系统中都归一到不确定性推理框架,常见的推理模型有D-S证据理论、贝叶斯网络、权重逻辑推理(weighted logical inference,简称WLI)[10],针对穴盘苗特征构建的事实,提出不确定推理模型。推理知识表示如式(9)所示。

式中:m为穴盘苗数量;n为某一个穴盘苗的特征数,wi1+wi2+,…,win=1;λ为阈值,范围为[0,1]。

推理机是专家系统的关键,本系统采用的专家系统是CLIPS,CLIPS是用C语言实现的高效产生式系统,因效率高、可移植性强而得到广泛的应用[11]。它构成的专家系统包括:规则(defrule)、事实(deffacts)、推理。推理机不断地扫描规则,并把匹配成功的规则激活,放入议程之中[12]。CLIPS既可以独立编程,也可以嵌入到VC中,知识库可以随时填入知识而不影响其他程序结构。CLIPS的推理循环可分为4个阶段:模式匹配、冲突消解、激活规则、动作[12]。推理机的推理过程为

Step1:系统相机拍照,并将图像传入图像处理模块,分别计算出该穴盘苗图像的特征值V={v1,v2,v3,…,vn,n为特征数},其对应的特征名称为A={A1,A2,A3,…,An}。

Step2:推理机启动,打开并搜索知识库,与所有知识进行匹配。假设匹配苗S11,则根据特征名A,可以匹配得到:特征值VB={VB1,VB2,VB3,…,VBn,n为特征数}、允许误差δ={δ1,δ2,δ3,…,δn,n为特征数}、客观可信度w={w1,w2,w3,…,wn,n為特征数}、学习可信度CF={CF1,CF2,CF3,…CFn,n为特征数},然后计算VB与V的差值并与δ比较,凡是小于δ的特征被保留,并计算出每一个特征的可信度,则苗S11的总可信度SCF11如式(10)所示。

说明第j条知识正好是第k个苗的知识,即识别成功苗的总可信度在整个样本空间中最大。

2.3.4 学习算法 学习分首次学习和再学习。当穴盘苗知识库中没有某种苗知识时,通过首次学习,建立该苗的“苗知识”。再学习是通过改变CF的权重值,提高识别能力。现设存在苗S11的知识,其差异度为{h11,h12,…h1n,n为特征数},再设苗S12为待学习的苗,其差异度表示为{h21,h22,…,h2n},再学习算法的步骤为

式中:m为目标搜索空间;c1和c2为学习因子;r1和r2为[0,1]范围内的均匀随机数;w为惯性因子;Vim为速度;Pim为个体最优位置;Pgm为全局最优值;CFim为第i个穴盘的第m个特征的可信度。这样,在搜索的过程中,CF的值被优化,接近度高的权重得以加强,接近度低的予以抑制。

3 结果与分析

通过信号采集,首先获得120个穴盘苗特征向量,然后用专家系统识别测试。软件主要采用了VC+ +(6.0)、MATLAB(2013a)、图像采集软件、CLIPS专家推理系统(版本为6.22)。

3.1 图像特征提取与分析

3.1.1 理想苗叶筛选测试 把苗S330(图3-a)用K均值聚类后得到图3-b,同时得到颜色特征的均值,然后进行二值化得到图3-c,采用面积过滤筛除粘连的大块面积得到图 3-d,然后用参量u进行筛选得到图3-e,最后用傅里叶描述子聚类分离得到图3-f,并求出其形状特征的均值。从图3可以看出,特征获取算法能在苗叶粘连的情况下,滤除畸形苗叶,得到理想苗叶,证明该算法合理有效。

3.1.2 特征值选择及效果 通过分析同类苗的R、G、B、L、a、b、H、S等颜色值发现,在Lab空间中,L随着采集灯光的减弱而减弱,a值随着亮度的增加而逐步转向深绿,b值随亮度的变化反应不规律;在RGB颜色空间中,R、G、B的值随着亮度的增大逐步增大;在HIS颜色空间中,H虽然随着光照度的增大而增大,但增大的幅值非常小,而S却随着光照度的增强而降低。在特征值的选择中发现,对不同颜色进行组合后,可得到较稳定的特征量,因此选取0.6L-0.4(R+B+G)/3、03b-0.7a、H+0.2S、0.3L-0.7a等颜色特征作为特征值。形状特征值选择长宽比、椭圆扁率、矩形度及傅里叶描述子4个参数。现设特征F1=0.6L-0.4(R+B+G)/3,并以苗S3的40个样本为例分析,其特征分布情况如图4所示,可以看出,生长期相近的苗特征基本相近,特征值相对稳定,波动较小。

3.2 专家系统识别试验

3.2.1 不同品种穴盘苗识别测试

3.2.1.1 可信度识别结果分析 根据苗品种及生长期的不同,建立多条苗的知识,本试验采用苗S11、S21、S301、S320、S351、S361、S401、S407、S414、S501、S506、S6、S7、S8、S9、S10的知识,对所有穴盘苗进行识别测试,通过可信度值进行统计识别情况,图5-a是第1类苗S1的4盘穴盘苗的识别结果,图5-b是第2类穴盘苗S2的识别情况。

由图5可知,在苗S1和苗S2中的8个样本中,每一个苗的总体可信度在整个样本空间中最大,说明识别成功。表2是苗S3、S4、S5的识别情况,可以看出,苗S301构建的知识能识别生长期为7、8 d的苗。苗S320构建的知识能识别9、10、11 d的苗。在生长期早的苗叶中,识别率非常高,这主要是由于生长期早的苗叶没有重叠或有轻微的重叠,容易取到理想的样本,也说明推理机与知识库设计合理。识别出现错误的主要是生长期比较晚的苗叶如S356号苗(12 d)和S419号苗(24 d),主要是因为这些苗为严重重叠苗,形态复杂,苗叶畸形造成形态特征值误差太大。苗S6、S7、S8、S9、S10识别全部正确。

3.2.1.2 移栽结果分析 本研究只采用面积阈值验证专家系统识别结果,专家系统识别成功后,根据该苗的移栽面积阈值实施移栽,面积阈值存储在知识库中,当检测到当前苗的面积在知识库中阈值面积范围内时,说明匹配成功,则发送移栽命令,通过测试发现,S356号苗移栽动作没有发生,S419号虽然苗的识别错误,但却发生了移栽动作。分析其原因,苗S3的S356号苗的叶面积是651,但专家系统识别结果是苗S6(错误结果),S6的面积阈值是226~310,与S356的面积651匹配不成功,无法启动移栽命令,因此没有动作;苗S4的第S419号苗的叶面积是447,专家系统识别结果是苗S3(错误结果),但苗S3的阈值面积包含了447,因此,实施了移栽动作。综上测试说明,通过专家系统可信度识别错误的穴盘苗,也有发生移栽的可能,主要原因是不同苗叶面积阈值相近造成的,因此在实践应用中,还要通过其他的阈值条件进行限定,以确保移栽可靠性。

3.2.2 光照影响下穴盘苗识别测试 不同的光照会影响特征值的采集,因此,需要测试光照影响下专家系统的识别率。现以S11、S12、S13、S14为例测试,这4个是同种苗,但光照度减弱,现以F11(seed11)特征值构建知识,当输入F12、F13、F14几个采集特征值时,各个苗的总可信度如表4所示,可以看出,采集特征值F12、F13、F14在同种苗S1上的信任度远远高于在其他苗上产生的信任度,说明尽管穴盘苗的采集特征值在变化,但依然能准确地识别同类型的穴盘苗。

3.2.3 学习可信度学习测试 为了提高识别的鲁棒性,并测试学习的效果,现对S1的知识进行学习,改变其学习可信度的权值,S1学习前后信任度对比如图6所示。

由图6可知,经过学习后,采集特征值F12、F13、F14在同种苗的总信任度高于没有学习时的信任度,这说明识别同类苗的能力大大增强。

3.2.4 相似度大小对识别的影响测试 相似度的取值要求能区分其他穴盘苗,本研究通过逐步增大相似度取值,分析相似度大小对苗识别的影响(以S1为例)。由图7可知,逐步增大苗S1的相似度值时,除了S11因构建知识,相似度不变外,S12、S13等总可信度随着相似度值的增大而增大,但到一定值時,就不再增大。同时可以看出,对苗3等其他苗的总可信度没有影响。对任意一个穴盘苗知识库中知识的相似度而言,不易设置过大,一般设置在可信度曲线转平前的拐点附近,如图7中的[4,5]区间,相似度大小一般由领域专家确定。

3.2.5 几种识别算法比较 本研究在样本特征值保持不变的情况下,将样本分成训练样本70个,测试样本50个,采用反向传递(back propageation,简称BP)神经网络、支持向量机(support vector machine,简称SVM)网络、粒子群优化支持向量机(particle-swarm optimizaion,简称PSOSVM)进行识别测试。BP神经网络的识别率为62.0%,其中目标误差是 0.001,训练次数是9 000次;支持向量机SVM的识别率为840%,其中SVM的惩罚参数c取2,核函数参数g取1,工具箱版本是libsvm 3.12;基于粒子群优化的支持向量机识别率为86.3%,其中惩罚参数c优化值为 1.642 6,核函数参数g优化值为9.786 4,目标误差0.001,PSO的迭代次数200次,种群20;本研究专家系统的识别率为98.3%,总样本数为120个,其中学习样本数16个,识别失败样本2个(分别是S356号苗和S419号苗),成功118个。

4 结论

在穴盘苗专家系统识别算法中,采用了8个特征向量,可以识别生长期相近的穴盘苗品种,不需要训练。专家系统的知识库容易管理,对新增加的穴盘苗,不需要改变推理机,只要在知识库中增添一条知识即可进行识别,知识库独立性强。

在穴盘苗特征向量获取算法中,采用组合颜色特征的方法以及形状特征均值的方法,并采用傅里叶描述子聚类算法获得理想苗叶集,尤其在苗叶有重叠的情况下,仍能取得较为理想的苗叶特征。

通过测试在光照影响下、拍照角度影响下、不同苗期苗叶形态不同的影响下穴盘苗的识别,证明基于专家系统识别的有效性。

参考文献:

[1]胡 飞,尹文庆,陈彩蓉,等. 基于机器视觉的穴盘幼苗识别与定位研究[J]. 西北农林科技大学学报(自然科学版),2013,41(5):183-188.

[2]贺磊盈,蔡丽苑,武传宇. 基于机器视觉的幼苗自动嫁接参数提取[J]. 农业工程学报,2013,29(24):190-195.

[3]程玉柱. 分数阶ACM图像分割算法及其在杂草图像中的应用[D]. 南京:南京林业大学,2014.

[4]童俊华. 蔬菜钵苗穴盘间移栽执行器设计、移栽信息检测与路径规划[D]. 杭州:浙江大学,2014.

[5]蒋焕煜,施经挥,任 烨,等. 机器视觉在幼苗自动移钵作业中的应用[J]. 农业工程学报,2009,25(5):127-131.

[6]尹建军,毛罕平,王新忠,等. 不同生长状态下多目标番茄图像的自动分割方法[J]. 农业工程学报,2006,22(10):149-153.

[7]胡建平,侯 硕. 温室钵苗移栽机器人健康苗图像识别技术研究[D]. 镇江:江苏大学,2015.

[8]李 浩. 基于数字图像处理技术的烤烟烟叶自动分组模型研究[D]. 武汉:华中农业大学,2007.

[9]刘 念,阚江明. 基于多特征融合和深度信念网络的植物叶片识别[J]. 北京林业大学学报,2016,38(3):110-119.

[10]董春玲,张 勤. 用于不确定性故障诊断的权重逻辑推理算法研究[J]. 自动化学报,2014,40(12):2766-2781.

[11]何彦虎,左希庆,张晓通,等. 基于CBR-FAT的液压机故障诊断专家系统构建[J]. 机床与液压,2016,44(13):191-196.

[12]Giarratano J,Riley G. 专家系统原理与编程[M]. 北京:机械工业出版社,2000.孫潇鹏,林 建,刘灿灿,等. 水稻收割机的割台轻量化设计及经济性分析[J]. 江苏农业科学,2019,47(4):182-186.

猜你喜欢
穴盘苗推理机专家系统
“红颜”草莓穴盘苗在温室栽培中的应用效果
基于高速摄影技术穴盘苗抛投运动试验与分析
立体花坛穴盘苗工艺用植物的应用与发展
不同移栽苗对甜叶菊生长及产量的影响
面向对象的几何定理推导系统的设计与实现
数控机床液压系统故障诊断专家系统的研究
继电保护整定计算模块的设计
白绒山羊疾病诊断专家系统推理机的设计