路 艳,杨红云,周 琼,孙玉婷,殷 华
(1.江西农业大学 计算机与信息工程学院,江西 南昌 330045; 2.江西省高等学校农业信息技术重点实验室,江西 南昌 330045; 3.江西农业大学 软件学院,江西 南昌 330045)
植株形态结构是育种表型分析中的重要表型性状,植株叶片几何参数测量分析是作物超高产育种研究的重要环节之一,准确获取叶片几何参数,分析作物生长状况,有利于指导农业生产研究[1-2]。传统的叶片几何参数测量方法有直尺法[3]、网格法[4-5]和叶面积仪法[6-7]等,但这些方法耗时长,价格高昂,影响植株正常生长,不利于育种工作开展[8-10]。不少学者为能快速、准确获取植株几何参数做了大量研究[11-15]。刘浩等[16]通过扫描仪获取叶片图像,使用图像处理软件AutoCAD获取叶长和叶宽,发现图像处理软件与实测方法测定结果呈显著相关性。牛珂[17]采用基于图像处理的植物叶片参数测量系统获取叶长和叶宽,测定得到叶长和叶宽与实测平均相对误差小于3.15%。基于计算机的图像处理方法,图像获取多依赖数码相机和扫描仪等精密仪器,价格昂贵,且操作复杂,不易于推广[18-20]。随着智能手机的普及,基于Android系统获取叶片形态特征参数的应用也越来越多[21-23]。夏永泉等[24]基于智能手机根据叶片表征进行病害识别,识别效果较好。周超超[25]依据叶片颜色特征建立了玉米叶片含氮量检测系统,可以指导玉米正确、合理施氮。王洋洋等[26]基于Android拍摄柽柳照片,计算柽柳俯视面积,实现了无损、快速估测柽柳生物量。目前,基于Android获取植物叶片几何参数研究也较多。龚爱平等[27]基于Android获取叶片面积,测量精度达到0.001 cm2,具备良好的叶面积测量能力,但需借助工字架等工具,不适用于野外操作,而且采集图像时为保证叶片完全舒展,采用亚克力板压平叶片,操作不当,易损伤叶片。徐义鑫等[28]使用手机智能相机获取叶片图像,根据植物叶片轮廓求叶片、叶宽,与实际值相比,误差小于2%,具备精度高、成本低、无损测量等优点,但野外环境下图像获取易受光照、角度、参照物和拍摄背景等因素影响,对图像获取条件要求较高,非专业人员操作复杂,不易推广。虽已有人对叶片几何参数进行了大量研究,但利用手势路径获取叶片几何参数的研究还鲜见报道。本研究提供基于B样条的水稻叶片几何参数测量系统,采用Android智能相机获取水稻叶片自然生长状态图像,前期图像获取简便,无需对获取后图像进行预处理,通过绘制手势轨迹曲线计算叶长和叶宽,提供了一种准确、无损的植株叶片几何参数测量方法,可为水稻超高产育种提供参考。
水稻田间试验于2018年在江西农业大学农学试验站进行,以自然状态下水稻叶片为研究对象。选用Android智能手机在自然光照下获取水稻叶片活体图像,其型号是m2 note2,版本5.1,处理器八核1.3 GHz,摄像头分辨率1920 pixel×1080 pixel,运行内存2 GB。App应用在win7操作系统下使用Android SDK+JDK+Eclipse+ADT开发完成。
系统工作流程如图1所示。结合Android SDK类提供的Linear Layout、Spinner类,采用ImageView、TextView等实现水稻叶片几何参数测量系统人机交互界面。系统功能分为图像获取、曲线操作和叶片几何参数计算3大部分。
图1 系统流程图Fig.1 Workflow of system
1.2.1 叶片图像获取
水稻叶片图像分为相机和相册2种获取方式。经反复试验,现提出以下图像采集标准:
(1)选择参照物。本文参照物是2.5 cm×2.5cm的黑色正方形,参照物形状、大小可人工干预。
(2)设置相机参数。相机分辨率设置为1 920×1 080,相机分辨率可调,关闭闪光灯减少干扰。
(3)获取图像。无需规定最佳拍摄时间段,可全天进行拍摄。拍摄时尽量保持相机与参照物平行,获取水稻长度时,获取水稻大致轮廓即可,获取水稻宽度仅需拍摄包含水稻最大宽度部分。拍摄距离不限,得到被测物体与参照物清晰完整图像即可。具体操作方式如图2所示。
1.2.2 轨迹曲线实现原理
轨迹平滑处理采用的曲线多为抛物样条曲线和参数样条曲线,但这2种方法在曲线平滑度处理上存在一定缺陷[29]。本文拟采用B样条曲线绘制手势轨迹曲线,获取水稻叶片几何参数。B样条曲线兼备贝塞尔曲线的一切优点,同时克服了贝塞尔曲线无法进行局部修改的缺点[30]。其由一组控制点求得,改变控制点,叶片轨迹曲线也会发生变化[31]。B样条曲线数学定义为:
(1)
式(1)中,ct(t=0,1,...,n)为样条曲线的控制顶点,Vt,k(t=0,1,...,n)为k次B样条基函数,基函数由非递减参数序列U:u0≤u1≤…≤un+k+1决定,其Cox-deBoor递归公式定义为:
图2 手机相机获取图像Fig.2 Image acquisition by phone camera
(2)
(3)
公式(2)(3)分别表示若次数k为0,基函数为阶梯函数;当k大于0时,Vt,k基于Vt,k-1和Vt+1,k-1进行计算。
1.2.3 轨迹曲线实现过程
(1)调整控制点。采用B样条曲线依据水稻叶片形态绘制叶脉和最大叶宽轨迹曲线,B样条控制点坐标可调,保证曲线最大程度贴合叶片叶脉与最大叶宽(如图3所示)。曲线控制点调整原理为:所有的控制点保存至集合,获取当前手势点坐标,遍历集合中所有控制点,使用欧氏距离[32-33]计算当前点与集合中所有点的距离,当距离小于一定范围时,则认为当前点与集合中满足条件的点为相同点,移动当前手势点,将移动结束时的点坐标覆盖原先集合中满足条件的点坐标,达到调整样条轨迹曲线的目的。
(4)
公式(4)中,d为当前点(c1,r1)到集合中控制点(c2,r2)间的距离。
(2) 删除、清空控制点。曲线操作除控制点可调外,还包括删除控制点和清空曲线2大功能(如图4所示)。基于控制点绘制手势轨迹曲线易偏离目标轨迹,为减小误差,点击删除控制点按钮可对当前最新控制点进行删除,及时矫正曲线走向。采用B样条曲线获取水稻叶片几何参数,需借助参照物,清空曲线操作用于绘制完叶片长度轨迹后,对曲线进行清空,进而对参照物长度进行绘制,第2次进行清空时,界面将会显示叶片长度数据,叶片最大宽度同理可得。
a,调整前;b,调整后。a, Unadjusted; b, Adjusted.图3 调整控制点Fig.3 Adjustment of control points
1.2.4 几何参数算法设计
根据水稻形态结构选取恰当阶数的B样条曲线。水稻叶片具有“长、窄”的特征[34],易产生弯曲,4阶3次B样条曲线可得到平滑度较好的连续曲线,适用于叶片长度获取。水稻叶片宽度过窄,为保证测定结果的准确性,采用符合水稻叶片宽度特征的2阶1次B样条曲线(2个控制点确定1条直线)进行获取。其中4阶3次B样条曲线基函数和拟合曲线分别为公式(5)和公式(6)。水稻叶片轨迹曲线示意图如图5所示。
4阶3次B样条曲线基函数为
(5)
4阶3次B样条拟合曲线为:
E(u)=c0×V0,3(u)+c1×V1,3(u)+c2×V2,3(u)+c3×V3,3(u)。
(6)
其中,公式(5)函数伪代码如下:
if(0<=u)And(u<1)
then return a*u*u*u
else if(1<=u)And(u<2)
then return a*(-3*Math.pow(u-1,3)+3*Math.pow(u-1,2)+3*(u-1)+1)
else if(2<=u && u<3)
then return a*(3*Math.pow(u-2,3)-6*Math.pow(u-2,2)+4)
else if(3<=u && u<4)
then return a*Math.pow(4-u,3)
else return 0;
end if
手势轨迹曲线绘制完成后,计算水稻叶片和参照物长、宽轨迹曲线长度,参照物实际长、宽已知,通过比例计算获取叶片真实长度和最大叶宽。叶长、叶宽计算公式为公式(7)(8)。水稻叶片几何参数获取结果如图6所示。
(7)
a,叶长轨迹曲线;b,叶宽轨迹曲线。a, Trajectory curve of leaf length; b, Trajectory curve of leaf width.图5 叶片几何参数轨迹曲线示意图Fig.5 Image of blade geometry parameter trajectory curve
a,叶长计算结果;b,叶宽计算结果。a, Calculation result of leaf length; b, Calculation result of leaf width.图6 叶片几何参数计算结果Fig.6 Results of blade geometric parameters
(8)
公式(7)(8)中,L、W、L1、W1分别代表叶片和参照物实际长宽,L0、W0、L2、W2分别为叶片与参照物轨迹曲线的长度和宽度。
精确性是对同一物体进行重复多次测量,测量结果彼此间的接近程度。变异系数为多组数据标准差与平均值之比,采用变异系数(CV)对系统精确度进行衡量,变异系数越小,表明系统测量结果越稳定,精确度越高。表1是采用本文测量方法对同一叶片进行10次重复测量的测定结果。由表1可知,使用系统方法获取水稻叶片几何参数,叶长变异系数为2.4%,最大叶宽变异系数为5.4%,均小于15%,表明数据正常,测试结果稳定。
准确性是系统测试结果与叶片实测值的差异度量,为验证系统准确性,以系统测量得到的水稻数据为分析样本,随机选取30组,与人工测量获取得到的叶长、叶宽进行回归分析(图7),以拟合精度评估参数均方根误差,以R2评估系统获取几何参数的准确性。结果显示,叶长线性拟合模型与叶宽线性拟合模型的决定系数分别为0.973 2和0.770 5,均方根误差分别为1.534 cm和0.101 9 cm。通过决定系数可发现系统获取叶片几何参数与叶片实际几何参数的数据模型拟合度高,表明系统具有较好的数据处理和预测能力。
表1 精确性测试结果
Table1Result of accuracy test
参数12345678910CV/%叶长Length/cm24.2723.5324.1423.8425.3624.9123.8324.3924.7625.162.4叶宽Width/cm1.171.271.291.181.271.121.151.261.101.195.4
a,叶长线性拟合模型;b,叶宽线性拟合模型。a, Linear fitting model of leaf length; b, Linear fitting model of leaf width.图7 水稻叶片几何参数线性拟合模型Fig.7 Linear fitting models of rice leaf geometry parameters
本文方法与基于轮廓最小邻接矩形获取水稻叶片几何参数的方法进行比较。基于B样条曲线测量过的图片,采用基于轮廓获取水稻叶片几何参数的方法进行处理,发现前期图像获取对于光照、角度、拍摄背景要求较高,需将水稻平展开,要求拍摄完整清晰水稻叶片和参照物图像,从图8-c可以看出,拍摄背景较为复杂,参照物和目标叶片受到遮挡情况下,无法准确识别、获取目标叶片几何参数。本研究系统方法对环境要求低,无需干扰水稻自然生长状态,拍摄水稻完整图片即可手势获取目标水稻叶片几何参数,拍摄条件简单,操作简便。
a,叶长轨迹曲线;b,基于B样条曲线叶长计算结果;c,提取叶片轮廓;d,基于轮廓计算结果。a, Trajectory curve of leaf length; b, Calculation result of leaf length based on B-spline curve; c, Extracting leaf contours; d, Calculation result based on leaf contour.图8 不同方法对复杂背景下图片处理结果Fig.8 Image processing results by different methods for complex environments
单一背景下,如图9所示,对同一叶片分别使用轮廓最小邻接矩形和系统方法进行测量,获取30片水稻叶片几何数据,对2组数据进行分析研究,比较各自性能,比较结果见表2。
由表2看出,2种方法测定结果平方相关系数、均方根误差非常相近,基于B样条曲线获取水稻叶片几何参数,叶长的决定系数和均方根误差分别为99.19%和0.542 8,叶宽的决定系数和均方根误差分别为80.96%和0.054 7,整体略优于基于轮廓获取叶片几何参数方法。时间为拍摄到结果获取总时间,系统方法获取叶片几何参数时间小于2 min,基于轮廓获取几何参数前期图像获取拍摄要求较高,非专业人员操作困难,获取有效图像需耗费大量时间;系统方法前期图像获取,操作简便,可节省大量时间。
a, 基于B样条曲线计算结果; b, 基于轮廓计算结果。a, Calculation result of leaf length based on B-spline curve; b, Calculation result based on leaf contour.图9 不同方法对单一背景下图片处理结果Fig.9 Image processing results by different methods for clean environments
表2 不同方法结果比较
Table2Comparison of results of different acquisition methods
测量方法Measurementmethod叶长Length/cm决定系数R2/%均方根误差RMSE/cm时间t/min叶宽Width/cm决定系数R2/%均方根误差RMSE/cm时间t/min最小邻接矩形98.900.6162<578.490.0545<5B-spline曲线99.190.5428<280.960.0547<2
本研究提出基于B样条曲线的水稻叶片几何参数测量方法,使用matlab建立系统预测值与实测值回归拟合模型,结果表明,系统预测结果良好。目前植物叶片几何参数获取方法研究较多。朱波等[35]使用直尺测量法获取铁皮石斛叶长、叶宽,为计算叶面积提供了可靠的依据。采用传统方法获取叶片几何参数有利有弊,虽能很大程度保证数据的准确性,但费时费工,且操作复杂。本研究基于Android获取水稻几何参数,手机拍照采集水稻图像即可获取水稻几何参数。郭斯羽等[36]基于叶片骨架提取叶长,测量误差低于10%,但对叶片外部状态要求较高,要求叶片外部形态完整且对称,不可发生弯曲,否则将会产生较大的误差。基于骨架获取叶片几何参数,对被测物体环境也具有严格的要求,若叶片较为茂盛,相互重合,或被测物体与背景颜色融合,需人工干预作物正常生长状态获取所需图像,易对植物叶片造成损害,影响作物后期生长。基于B样条获取叶长、叶宽,对叶片外部形态要求低,不干预水稻叶片自然生长状态也能较好地获取叶片几何参数。徐义鑫等[28]采用Android基于OpenCV无损获取叶片几何参数,借助叶片轮廓最小外接矩形获取叶片几何参数,长、宽误差小于2%,但易受光照、角度等因素影响,还需利用拍摄背景和胶带等外部手段辅助拍摄完整、平坦的叶片图像,操作过程复杂。本研究通过绘制水稻叶片主脉和最大叶宽处手势轨迹曲线获取叶片几何参数,背景对叶片影响较小,获取叶片大致轮廓与走向即可准确获取叶长、叶宽,无需借助拍摄背景且受光照、角度的影响较小,操作简便。
基于B样条曲线的水稻叶片几何参数测量系统,采集水稻叶片图像无需干扰水稻叶片自然生长状态,拍摄参照物和水稻叶片的完整清晰轮廓无需预处理即可获取叶长、叶宽,且受光照影响较小,通过1次B样条曲线交互绘制最大叶宽处手势轨迹曲线,基于3次B样条曲线绘制叶脉轨迹曲线,获取水稻叶片长、宽。计算叶片几何参数变异系数,分析系统精确度,结果均小于15%,测试结果稳定;建立预测值与实测值之间的线性回归拟合模型,发现系统预测值和实测值呈显著性相关,水稻叶长均方根误差为1.534 0 cm,叶宽均方根误差为0.101 9 cm,表明基于B样条曲线获取水稻叶片几何参数的方法测量结果准确,为后期叶面积的预测提供了精准数据,同时也为视觉获取水稻叶片几何参数及其他农作物的数据测量提供了新的理论研究,具有较好的实用价值和应用前景。