李书钦,刘海龙,诸叶平 *,李世娟,刘升平,张红英,李中阳
(1.中国农业科学院农业信息研究所,农业部农业信息服务技术重点实验室,北京 100081;2.北方工业大学信息中心,北京 100144;3.中国农业科学院农田灌溉研究所,河南 新乡 453002)
基于实测数据和NURBS曲面的小麦叶片三维可视化
李书钦1,2,刘海龙1,诸叶平1*,李世娟1,刘升平1,张红英1,李中阳3
(1.中国农业科学院农业信息研究所,农业部农业信息服务技术重点实验室,北京100081;2.北方工业大学信息中心,北京100144;3.中国农业科学院农田灌溉研究所,河南新乡453002)
小麦三维可视化在农业生产、作物生长预测等领域具有重要应用价值,将为作物株型选育,高产、高效栽培等提供有力技术支撑。针对小麦叶片三维形态不易模拟的问题,基于田间试验实测数据和NURBS自由曲面造型技术,构建小麦叶片主脉控制点构造算法,计算小麦叶片NURBS曲面控制点坐标,并借助OpenGL图形库实现了不同控制点序列下的小麦叶片曲面模拟。试验结果表明,该方法计算效率较高,绘制的小麦叶片模型具有较高平滑度和真实感。
实测数据;NURBS曲面;三维可视化;控制点
作物器官几何形态模拟是虚拟作物研究的关键技术之一,小麦三维可视化研究将为小麦作物株型设计、栽培管理调控、生长动态预测等提供形象逼真的可视化工具,目前,国内外在作物器官形态模拟以及植株三维可视化方面做了较多研究工作。郭新宇等[1]提出基于生长模型的玉米形态模拟及三维可视化方法,实现了玉米冠层三维形态结构的模拟及玉米植株的三维重建。Runions等[2]模拟植物叶片的动态生长过程,对叶脉的生长进行建模和可视化。邓旭阳等[3]提出基于Cardinal 样条插值、构造叶片三角面片的静态建模方法,该方法使用的特征点较少,叶片的细节特征无法准确模拟。El-Latif等[4]采用B 样条方法确定叶片格局,利用标志叶片边缘的4个点参数,得到了简洁的作物叶片重构模型。陆声链等[5]利用B样条曲线描述叶片的主脉和边缘轮廓,然后用Delaunay三角化方法网格化叶片曲面,实现了植物叶片的精确几何建模。Quan等[6]从多幅图像恢复植物表面点的三维信息,实现了叶片和枝干的三维重建,但对于拍摄设备精确度要求较高,特征点匹配计算量较大。Mundermann 等[7]通过拍摄单幅叶片图像,提取叶片轮廓,对植物叶片进行三维重建。胡少军等[8]采用边缘检测法提取小麦叶片边缘数据,给出了不带约束的叶片模型和带约束的叶片扭曲及卷曲模型。Loch 等[9]使用三维激光扫描仪采集叶片表面大量数据点集,进行叶片精确建模,但该方法仅适用于对单个叶片的高度真实重建。Oqielat 等[10]基于三维激光扫描仪获取大量三维数据,将CT 与RBF(radial basis function)相结合以获得真实感更高的叶片三维模型。孙智慧等[11]提出基于点云数据的作物叶片曲面重构方法,实现了作物叶片的高精度网格曲面重建。
以上研究主要围绕特征明显、形态结构单一的作物展开,部分研究实现了作物器官的高精度重建,但专门针对小麦的三维可视化研究较少,并且三维可视化的过程无法和作物自身形态特征数据紧密耦合,不易模拟作物各个生长阶段的真实形态。
本研究基于田间实测小麦形态数据,提取具有明确生物学意义的小麦器官形态特征参数,建立小麦叶片主脉控制点构造算法,借助NURBS曲面建模构建叶片曲面网格模型,并基于OpenGL图形库实现了小麦叶片形态模拟,最终构建出具有较高的平滑度和真实感的小麦叶片模型。
试验地点选择中国农业科学院新乡综合试验基地,新乡基地位于河南新乡七里营镇(113°54′E,35°18′N),该试验田土壤为重壤土,其理化性质为:pH 8.63,全氮0.78 g·kg-1,全磷0.52 g·kg-1,有效磷0.19 g·kg-1,有效钾183.57 mg·kg-1,有机质22.6 g·kg-1。
1.1试验设计
供试作物为冬小麦,品种为“偃展4110”,2015年11月29日种植,采用机器播种,小麦行间距20 cm,单位播种量为150 kg·hm-2。每公顷施肥量为:P:90 kg、K:90 kg、N:180 kg,磷肥、钾肥和50%的氮肥作底肥一次性施入,50%的氮肥作追肥在拔节期追施。在田间选择2个小区,每个小区面积9 m2(3 m×3 m),设计2个处理:一个不施用保水剂,另一个施用保水剂作对照,保水剂施用量为60 kg·hm-2。保水剂直接撒施,然后翻耕混入小区土壤。
1.2测定项目与方法
从出苗开始,在每个小区内选取长势接近的3株小麦,作为3次重复定点定株测量。测量周期:出苗到越冬期每15 d测量1次,越冬期30 d测量1次,返青期15 d测量1次,拔节到抽穗7 d测量1次,抽穗到乳熟10 d测量1次。
在各个生长阶段测量小麦叶片、叶鞘、茎秆等器官的形态数据,主要包括:叶长、叶宽、茎叶夹角、茎节长度、茎秆直径、株高等指标。其中,叶长、叶宽、茎节长度和株高用直尺测量,测量叶宽时沿着叶长方向每隔2 cm测量1次,用量角器测量茎叶夹角,用游标卡尺测量茎秆直径。用数码相机(佳能EOS-5D)拍摄各个生长阶段小麦个体和群体的生长状态、纹理细节等,为小麦叶片模拟模型提供对照。将每次测量的形态数据记入小麦形态数据记录表,并将拍摄的形态照片标记日期和处理保存。
1.3小麦叶片几何建模
在实测小麦形态数据的基础上,采用基于NURBS曲面的几何建模方法,重建小麦叶片三维形态。小麦叶片生长于茎秆两侧的茎节根部,叶片为披针形,展于空间。小麦叶片的几何空间形态主要由叶脉曲线、叶边缘和叶形特征决定[12]。
1.3.1NURBS曲面在STEP国际标准中,非均匀有理B样条NURBS(Non-Uniform Rational B-Spline)被作为定义工业产品几何形状的唯一数学方法。NURBS既可以精确表示二次曲线弧与二次曲面,又可以描述自由型曲线曲面,并能通过改变控制点和权因子来灵活地改变曲线或曲面形状[13]。
一张u向为k次、v向为l次的k×l次NURBS曲面表示如下[14]:
在公式中,Ni,k(u)和Nj,l(v) 是分别定义在节点矢量U和V上的非均匀有理B样条基函数,节点矢量,。控制点Pi,j(i=0,1,…,m;j=0,1,…,n) 构成了2个方向的控制网格,ωi,j(i=0,1,…,m;j=0,1,…,n)是与顶点对应的权因子。
由公式可知,如欲构造NURBS曲面,需明确的参数包括:控制点Pi,j及其对应的权因子ωi,j,u向节点矢量U与v向节点矢量V,u向次数k,v向次数l。因此,可将小麦叶片形态数据与控制点Pi,j建立联系,构建小麦叶片NURBS曲面模型,还可以通过移动控制点或改变权因子来局部地修改NURBS曲面的形状。
1.3.2构建叶片NURBS曲面每张小麦叶片由1个NURBS曲面构成,将叶长方向定为u向,叶宽方向定为v向,采用双3次NURBS曲面构建小麦叶片曲面模型,如何确定叶片曲面控制点坐标,是NURBS曲面建模的关键。
小麦叶片主脉决定了叶片的空中伸展状态,假设叶片基部中心点为局部坐标系原点(0,0,0),则叶片主脉控制点的z坐标等于0。假设叶片处于理想状态(不发生卷曲、扭曲等形变),则叶片主脉控制点的x、y坐标与同一行其他控制点的x、y坐标相同,但每行控制点的z坐标由叶宽来决定。因此,本研究利用实测小麦形态数据(叶长、叶宽、茎叶夹角等),构造算法确定叶片主脉控制点坐标,进而根据叶形特征和叶宽,确定整个叶片NURBS曲面控制点坐标。
在小麦生长周期中,主要有2种叶形,生长初期近似直立叶形,生长中后期靠近叶尖部分下垂弯曲,呈弯曲叶形。对于直立叶形,假定茎叶夹角为α,叶片长度为L,叶片主脉上一共有n个控制点,如图1所示。
对于直立叶形,计算主脉控制点Pi(xi,yi,0)(0≤i 数据输入:叶片长度L,茎叶夹角α,主脉控制点数目n 数据输出:主脉上任一控制点Pi(0≤i 1)Ifi=0,xi=0,yi=0;//叶片主脉与茎秆连接处控制点P0的x、y坐标。 2)fori=1 ton-1 do;//计算其余n-1个控制点Pi的x、y坐标。 5)end for 6)输出xi,yi 对于弯曲叶形,叶片主脉一共有n个控制点,引入叶片弯曲度β,假设靠近茎秆的前m个控制点位于叶片主脉的直立部分,则其余n-m个控制点位于叶片主脉的弯曲部分,如图2所示。 计算弯曲叶形叶片主脉控制点Pi(xi,yi,0)(0≤i 数据输入:叶片长度L,茎叶夹角α,叶片弯曲度β,主脉控制点数目n,主脉直立部分控制点数目m 数据输出:主脉上任一控制点Pi(0≤i 1)Ifi=0,xi=0,yi=0;//叶片主脉与茎秆连接处控制点P0的x、y坐标。 2)fori=1 tom-1 do;//计算叶片直立部分控制点的x、y坐标。 5)end for 6)fori=mton-1 do; //计算叶片弯曲部分n-m个控制点的x、y坐标 9) end for 10) 输出xi,yi 由以上算法可知,基于田间实测小麦形态数据(叶长L,茎叶夹角α,叶片弯曲度β等),即可确定叶片主脉上控制点的坐标,再根据叶形特征和叶宽即可确定叶片NURBS曲面其余控制点的坐标。 1.4基于OpenGL的NURBS曲面构建 在确定了小麦叶片NURBS曲面控制点的基础上,借助OpenGL图形库可以实现叶片NURBS曲面的绘制。在OpenGL实用库GLU(OpenGL Utility Library)中,给出了非均匀有理B样条绘制函数,输入控制点数组和节点序列,借助gluNurbsSurface函数即可实现小麦叶片曲面的绘制,主要实现过程如图3所示。 整个绘制过程中,gluNurbsSurface()函数最为重要,定义如下[15]: gluNurbsSurface(theNurbs, GLint uknot_count, GLfloat *uknot, GLint vknot_count, GLfloat *vknot, GLint u_stride, GLint v_stride, GLfloat *ctlarray, GLint uorder, GLint vorder, GLenum type); 其中,theNurbs 指定NURBS对象,ctlarray指向包含了控制点的数组,uorder和vorder分别为u向、v向NURBS曲面的阶数,uknot_count 指定u向节点数目,uknot 指定u向包含uknot_count个节点的非递减数组,vknot_count 指定v向节点数目,vknot 指定v向包含vknot_count个节点的非递减数组,u_stride指定u向顺序两控制点间的偏移量,v_stride指定v向顺序两控制点间的偏移量, type指定曲面的类型(GL_MAP2_VERTEX_3或GL_MAP2_VERTEX_4)。各参数间满足如下关系: uorder=u向次数+1; vorder=v向次数+1; u向控制点数量=uknot_count-uorder; v向控制点数量=vknot_count-vorder; NURBS曲面控制点总数=(uknot_count-uorder)×(vknot_count-vorder)。 因此,若要绘制小麦叶片模型,只要给出控制点数组ctlarray、u向和v向节点矢量,按上述步骤即可构造相应的小麦叶片NURBS曲面。 在Windows7操作系统上,以Microsoft Visual Studio 2010作为开发工具,借助C++编程语言和OpenGL图形库,分别采用4*4,5*5,7*7三种控制点序列构造小麦叶片曲面模型进行对比分析。 2.14*4控制点小麦叶片模型 基于实测数据和小麦叶片主脉控制点构造算法,计算4*4控制点数组ctlarray,u向节点矢量{0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0},v向节点矢量{0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0},在OpenGl中调用gluNurbsSurface函数进行绘制,得到的小麦叶片曲面模型如图4所示。 2.25*5控制点小麦叶片模型 同理,计算5*5控制点数组ctlarray,u向节点矢量{0.0, 0.0, 0.0,0.0,0.5, 1.0, 1.0, 1.0, 1.0},v向节点矢量{0.0, 0.0, 0.0,0.0,0.5, 1.0, 1.0, 1.0, 1.0},构造小麦叶片曲面模型如图5所示。 2.37*7控制点小麦叶片模型 同上,计算7*7控制点数组ctlarray,u向节点矢量{0.0, 0.0, 0.0,0.0,0.2,0.5, 0.8,1.0, 1.0, 1.0, 1.0},v向节点矢量{0.0, 0.0, 0.0,0.0,0.2,0.5, 0.8,1.0, 1.0, 1.0, 1.0},在OpenGl中用gluNurbsSurface函数进行绘制,模拟小麦叶片曲面模型如图6所示。 由以上3种控制点构造的叶片曲面模型可以看出,7*7控制点构造的小麦叶片曲面模型效果最佳,叶片的顶点数和三角面片数最多,模型细节最明显。为了对比3种控制点坐标构造小麦曲面模型的效率,表1给出了3种情况下的内存使用量。 表1 3种小麦叶片模型内存使用量 由表1可以看出,从4*4控制点到7*7控制点,内存使用量逐渐增多,但差别并不明显。因此,为保证模型渲染的逼真度,在不占用过多内存的前提下,优先选择7*7控制点进行叶片曲面模型的绘制。 本研究以小麦作物为对象,田间试验采集小麦形态数据,提取小麦叶片形态特征参数,建立小麦叶片主脉控制点构造算法,构建叶片NURBS曲面,并借助OpenGL图形库重建了不同控制点坐标下的小麦叶片几何模型。本研究选取的小麦器官形态参数容易获取,易于转换为NURBS曲面控制点坐标,构建的小麦叶片模型较逼真。本研究表明,在保证较高计算效率和较低内存消耗的前提下,增加NURBS曲面控制点数目可以提高模型渲染的逼真度。 基于实测数据和NURBS曲面的小麦叶片三维可视化,对其他禾谷类作物的三维可视化具有借鉴意义。但本研究还有一些不足之处,例如没有考虑小麦叶片的卷曲、扭曲等局部形变,没有对小麦麦穗、根系进行可视化表达等。下一步,拟对整株小麦进行形态建模,并结合小麦生长数字化模型[16],对小麦整个生长过程进行动态模拟,以实现小麦个体和群体的生长可视化。 [1]郭新宇,赵春江,刘洋,等. 基于生长模型的玉米三维可视化研究[J].农业工程学报,2007,23(3):121-125. [2]ADAM R, MARTIN F, BRENDAN L, et al. Modeling and visualization of leaf venation patterns[J]. ACM Transactions on Graphics (TOG),2005,24(3):702-711. [3]邓旭阳,周淑秋,郭新宇,等.基于Cardinal样条插值和三角面片的叶片静态建模[J].计算机工程与应用,2004,(25):199-204. [4]ABD E,YASSER M.A new model for the structure of leaves[J].J Software,2011,6(4):670-677. [5]陆声链, 郭新宇, 李长锋. 3维植物叶片精确建模和绘制技术研究[J].中国图象图形学报,2009,14(4):731-737. [6]QUAN L, TAN P, ZENG G, et al. Image-based plant modeling[J].ACM Transactions on Graphics, 2006, 25(3): 599-604. [7]MUNDERMANN L, MACMURCHY P, PIVOVAROV J, et al. Modeling lobed leaves[C]//The Proceedings of the Computer Graphics International. Tokyo: CGI Press,2003:60-65. [8]胡少军, 何东健, 耿楠, 等. 基于图像处理的小麦叶片形态的三维重建[J]. 农业工程学报,2007,23(1):150-154. [9]LOCH B.Surface fitting for the modeling of plant leaves[D].Brisbane:University of Queensland,Doctor Dissertation,2004:26-38. [10]OQIELAT M N,BELWARD J A,TUMER I W,et al. A hybridclough-tocher radial basis function method for modeling leaf surfaces[C]//Proceedings of MODSIM 2007 International Congress on Modelling and Simulation. New Zealand,2007,400-406. [11]孙智慧,陆声链,郭新宇,等.基于点云数据的作物叶片曲面重构方法[J].农业工程学报,2012,28(3):184-190. [12]赵春江,郭新宇,陆声链.农林作物生长系统虚拟设计与仿真[M].北京:科学出版社,2010:318-323. [13]PIEGL, L,TILLER W.非均匀有理B样条:第2版[M]北京:清华大学出版社.2010:86-90. [14]施法中.计算机辅助几何设计与非均匀有理B样条:修订版[M].北京:高等教育出版社,2013:218-220. [15]DAVE,S.OpenGL编程指南[M].北京:机械工业出版社,2010:358-360. [16]刘丹,诸叶平,刘海龙,等.植物三维可视化研究进展[J].中国农业科技导报, 2015,17(1): 23-31. (责任编辑:林海清) 3-D Visualization of Wheat Leaves Using Measured Data and NURBS Surface LI Shu-qin1,2, LIU Hai-long1, ZHU Ye-ping1*, LI Shi-juan1, LIU Sheng-ping1, ZHANG Hong-ying1, LI Zhong-yang3 (1.AgriculturalInformationInstitute,ChineseAcademyofAgriculturalSciences,KeyLaboratoryofAgri-InformationServiceTechnology,MinistryofAgriculture,Beijing100081,China; 2.InformationCenter,NorthChinaUniversityofTechnology,Beijing100144,China;3.FarmlandIrrigationResearchInstitute,ChineseAcademyofAgriculturalSciences,Xinxiang,He′nan453002,China) 3-D visualizationis valuable for forecasting wheat production, as well as the breeding, yield, and cultivation of the crop. However, developing the technique to virtually simulate wheat leaves faced difficult challenges in the past. This study attempted to overcome the obstacle by applying selected measurements on the leaves to feed in the Non-uniform rational Basis spline(NURBS) mathematic model for a 3-D graphic representation of the leaves. Firstly, the algorithm for control points of the main veins on a wheat leaf was established. Secondly, the coordinates for the NURBS surface control points were calculated. And, finally, a simulation model under different control point sequence was constructed with the aid of open Graphics Library(OpenGL). The resulting algorithm was found to be highly efficient, and the simulated image sexceedingly smooth and realistic. mesured data; NURBS; 3-D visualization; control point 2016-04-02初稿;2016-05-10修改稿 李书钦(1984-),男,博士生,主要从事作物三维可视化和虚拟现实研究 诸叶平(1959-),女,研究员,主要从事农业信息技术研究(E-mail: zhuyeping@caas.cn) 国家863计划项目(2013AA102305);中国农业科学院创新工程项目(CAAS-ASTIP-2016-AII-03) S 512.1,TP 391.9 A 1008-0384(2016)07-777-06 李书钦,刘海龙,诸叶平,等.基于实测数据和NURBS曲面的小麦叶片三维可视化[J].福建农业学报,2016,31(7):777-782. LI S-Q,LIU H-L,ZHU Y-P,et al.3-D Visualization of Wheat Leaves Using Measured Data and NURBS Surface[J].FujianJournalofAgriculturalSciences,2016,31(7):777-782.2 结果与分析
3 讨论与结论