基于SFM算法的山核桃生长发育三维模型研究
2018-11-01夏其表姜广宇王洁尹建新
夏其表 姜广宇 王洁 尹建新
摘要:论文以山核桃树为研究对象,提出通过基于两张图像的快速SFM算法,建立树木的3D模型,并分析各个树龄段的山核桃树木模型,为模拟真实山核桃树的生长过程打下基础。它可以帮助研究者通过图形方式更有效地观察与解释山核桃生长中的结构与功能、生长发育等各种规律,增强对问题的洞察与见解能力,并加快模型验证工作。
关键词:三维重建;运动恢复结构(SFM);生长模型
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2018)18-0252-03
Research on Three Dimensional Model of Hickory Trees Growth and Development Based on SFM Algorithm
XIA Qi-biao1, JIANG Guang-yu1,WANG Jie2, YIN Jian-Xin1
(1. School of Information Engineering, Zhejiang A & F University, Linan 311300, China; 2. School of Foreign Language, Zhejiang A & F University, Linan 311300, China)
Abstract: In this paper, a fast SFM algorithm based on two images was proposed to establish the 3D model of trees and to analyze the model of hickory trees in different tree ages, which lays a foundation for simulating the growth process of real hickory trees. The findings not only can contribute to effective observation and explanation of the rules of growth of hickory trees, but also can accelerate the model verification.
Key words: Three-dimensional reconstruction; structure from motion algorithm; growth model
1 引言
树木的三维结构不仅反映树木的生长状况,同时也决定和影响着树木的生长发育[1]。树木生长发育分析是林业科学研究的一项基本的和常见的操作,包括对树高,冠幅,生物量等因子的测量和计算。山核桃是浙江省特色名优干果,是我国特有的高档干果和木本油料植物。现实中对山核桃生长发育研究单一静止,主要是数据的测量和图表绘制,无法动态立体反映山核桃农户的经营管理效果,并且不利于经验的交流。
隨着计算机辅助设计与图形学(CAD&CG;)的深入研究,树木三维结构模拟作为其中的分支得到迅猛发展[2],树木三维结构重建技术日趋成熟,模型已广泛应用于城市规划和设计、森林经营决策、森林景观等方面。鉴于树木受自身固有几何学复杂性和外界环境的交互影响,树木三维结构重建成为计算机视觉领域中热衷研究的难点问题[3]。现如今树木三维结构重建技术主要分为两大类:基于分形的方法和基于图像的方法。
几何分形是进行树木建模比较成熟的技术,使用一些数学模型模拟树木生长,通过少量的参数产生复杂的树结构,不同的树种模拟可能需要使用不同的数学模型[4-7]。
基于图像的建模是使用数码相机拍摄的照片来模拟三维树木模型,采用尽量少的操作重建三维环境,克服了基于几何分形建模方法的许多缺陷,是获取特定物体三维模型的一种方法。近年来基于图像重建树木的三维结构模型的方法,因其科学合理,重建后和现实树木的相似度高,而受到研究者关注[8-11]。
SFM算法 (structure from motion algorithm)是指基于运动图像或者图像序列恢复三维信息,其中包括成像摄像机的运动参数以及场景的结构信息的一种方法,常用于快速重建物体的三维模型[12]。目前的SFM算法大都需要一系列角度拍摄的多张图像,在生成物体的三维模型时要考虑非常多的复杂因素,特别是在模拟树木的三维模型时,由于树叶和树枝的遮挡性会导致重建树木的全貌非常困难。而且,林业中实际应用的树木结构并不要求将每片叶子和每条枝杈都现场重建,而只要将树木的树干结构和树冠轮廓描述清楚即可。因此本论文希望通过两张图像的对比,最终重建树木(山核桃)的三维树干(结构)模型,将模型算法大大简化。
基于多视点的运动恢复结构(structure from motion algorithm)算法,主要利用一系列相互重叠的影像集,通过特征匹配来恢复相机的姿态参数及三维几何信息。该算法在重建过程中可实现相机的自标定,对影像要求低,且不依赖于特定的假设条件,通用性好,目前已得到广泛应用[13]。
2 研究方法与方案
计算机图像处理技术和SFM算法在重建树木三维结构上的应用,为山核桃生长发育三维结构的研究提供可能。因此本项目首先收集和消化有关树木三维结构重建的技术方法,然后加以改进,将其引入到山核桃生长发育的动态研究上来。其次将建立的模型作为山核桃生物学研究的辅助工具。通过重建模型和实际测量的数据做配对检测,在验证数据准确的基础上计算人工难以测量的数据,并演示山核桃空间结构的动态变化,保证数据和演示效果准确科学合理。最终建立山核桃生长发育三维结构模型,反演山核桃生长发育变化,为山核桃经营管理提供可视化的辅助工具。
3 实验论证
研究以临安市某山核桃示范区中不同树龄的山核桃为研究对象,在夏季和冬季分别对同一棵树拍摄获得山核桃有叶和枝干图片。在拍摄的基础上,利用摄像机自动跟踪系统提取树木点源,通过编程语言重建树干结构和抽取树冠三维点源,两者结合重建不同年龄段山核桃树木的三维结构,进而模拟出山核桃生长动态变化的三维可视图。计算人工难以测量的山核桃生长数据,辅助其生物学的研究;反演上山核桃生长发育过程,为山核桃经营管理提供可视化模型。具体包括:
(1) 图像获得和求解(本项目研究基础)
基于图像的山核桃生长发育模型的基础是获得准确可靠的山核桃图片信息。由于山核桃为多年生山地阔叶树种,获得准确可靠的不同树龄段的清晰图片是重建模型的基础和前提。从图片中求解点云信息和摄像机参数,为重建模型提供技术支持。其内容包括:
①重建山核桃三维模型所拍摄照片均来自临安市某山核桃示范区。海拔300-500m,阴坡的占62%。土层厚度在30-40cm的占44%,大于40cm的占56%;坡位在中,下坡位的占85%;坡度在0-10°之间的85%;坡形以平为主,约占80%;母岩以花岗岩为主。根据示范基地种植的资料数据,在技术人员的带领下对树龄在5年、8年、11年、15年、20年和20年以上的山核桃进行拍摄,获得同一棵树有叶(夏季)和无叶(冬季)图片。
②利用高清摄像机绕山核桃拍摄一周得到的连续图像序列。并选取其中两张角度稍有不同的树木图像作为SFM分析的对象。
(2) 树干二维模型(项目研究基础)
①由于野外拍摄背景复杂,我们必须利用图像分割技术去除两张图像中的噪声点(背景点)和树叶,只留下构成树木的主干。
②利用图像参数,建立树干模型。树干模型主要用于计算人工难以测量的树木数据,辅助林木生物学的研究和经营管理。树干模型的重建中,其中最为重要的为关键点的选取。关键点是一段树木的起点和终点,也就是树枝的分叉点或者树枝的最终端点。通过树枝关键点,两个关键点可以确定一段树枝,可以构建一棵树的主干,建立主干模型,并生成点云数据,如图2所示。
(3)相机自标定程序
相机自标定程序是SFM算法中比较重要的一个环节,它的主要原理是通过提供几幅存在一定通讯关系的图像,计算相机的内在参数和外在参数。
相机自标定程序可以标记为如下公式:
其中p表示照相机的投影矩阵。m是相应的二维图像点。K为照相机的标定矩阵,其中F是焦距,S代表照相机方位,α是不规则斜率像素点,(u0,v0)表示图像焦点,即光轴与图像平面的焦点。
在我们的实验中使用的测试图像都是由数码相机拍摄的,图像尺寸一般为640像素*480像素。因为我们需要相机焦距保持不变,在我们的算法中,我们的测试图像都是在固定摄像机下拍摄的,即没有重新聚焦和缩放。通过匹配局部区域搜索两张图片的共同点和区分点,从而分析山核桃树的模型结构。
(3) 三维结构模型
提取出树木的主干模型(二维)模型后,我们利用SFM算法,并结合摄像机自标定算法(摄像机定位参数)和最小曲率约束条件等,将树干分成很多个多边形网格进行计算,并通过比对两张图像的网格数据(另外一张图像主要用于比对相似点上的网格曲率,计算三维形状),其他序列图片再加以验证,最终生成山核桃树木的三维模型,如下图所示。
(4)山核桃生长发育模型
分别重建不同树龄段的山核桃树木的三维结构图,并通过相似山核桃树推演山核桃树的生长发育情况,为山核桃的生产经营提供帮助。
4 结束语
将计算机图形学技术和SFM算法引入山核桃生物学研究。山核桃树干高耸,树冠狭小,长期以来其树高、冠幅、枝干长度等生物学因子都依靠手工测量,肉眼观察,时间跨度和工作量大,测量结果也仅仅是一组数据而已,且对于以树龄为参照的树木动态生长过程的分析不直观不方便。利用计算机辅助设计和图形学,辅助林木生物学研究,计算人工难以测量的数据。
建立山核桃生长发育模型,反演山核桃生长变化规律。山核桃生长周期长,时间跨度大,而建立山核桃生长发育三维模型不仅可以克服时间跨度大的问题,还可以作为经营管理可视化的辅助工具。
结合林木生物学知识和计算机辅助设计和图形学技术,设计一个能够描述树木形态的通用模型。
参考文献:
[1] 常树红,葛寒松,.谭同德.三维树木模拟研究与应用 [J].河南科技大学学报(自然科学版),2012,2(1):41-44.
[2] 颜君萍,陈宇拓.基于图像的树木三维建模[J] 电脑编程技巧与维护.2013.02:73-75.
[3] 汤孟平. 森林空间经营理论和实践[M].北京:中国林业出版社, 2007.
[4] 熊启明,杨柳青,陈伟.基于GIS的树木三维模型研究[J].中南林业科技大学,2011,4(31):174-177.
[5] P.Prusmkiewicz, L.Mundermann, R.Karwowski, at al. The Use of Positional Information in the Modeling of Plants[J] In ACM SIGGRAPH,2001:289-300.
[6] C. Pradal, F. Boudon, C. Nouguier, J. Chopardb, C. Godin. PlantGL: A Python-based geometric library for 3D plant modeling at different scales[J].Graphical Models, 2009,71:1–21.
[7] X.Chen,B.Neubert,Y.Q.Xu.Sketch-Based Tree Modeling Using Markov Random Field[J].ACM Trans.Graph, 2008,27(5):109.
[8] I.Shlyakhter,M.Rozenoer, J.Dorsey,et al.Reconstructing 3D Tree Models from Instrumented Photographs. [J] IEEE Computer Graphics and Applications,2001,21(2):53-60.
[9] 刘彦宏,王洪斌,杜威.基于图像的树类物体的三维重建. [J] 计算机学报,2004,25(9):930-935.
[10]B. Neubert, T. Franken, O. Deussen. Approximate image-based tree modeling using particle flows. [J] ACM SIGGRAPH,2007.
[11] P.Tan,T.Fang,J.X.Xiao,et al.Sing Image Tree Modeling[J].ACM Transaction on Graphics.2008, 27(5):108-113.
[12]王洋,張涛,李欢利,等.应用SFM和多视图面片实现牙模三维重建[J] 计算机测量与控制,2013,21(4):1067-1070.
[13] 许志华,吴立新,等. 顾及影像拓扑的SfM 算法改进及其在灾场三维重建中的应用[J].武汉大学学报(信息科学版),2015.5(40):599-606.