周玉晨,李 昀,林珂卉,沈皓晴,朱 琳,王佐铭
(北京林业大学 信息学院,北京 100083)
森林调查是获取森林信息,为林业管理决策和经营方案制订提供依据的重要工作。尽管各种先进的遥感技术在林业调查中被广泛应用[1-2],但地面人工外业调查仍是不可或缺的信息采集方式。随着信息化的发展,包括从早期的掌上电脑PDA到现在的智能手机、平板电脑在内的各种智能终端设备被引入到了野外调查的数据采集记录中[3-8],取代了传统以纸质媒介记录数据的方式,大大提高了数据采集的效率。
随着技术进步和智能终端设备性能的提升,利用智能设备内置的各种传感器采集信息并集成到数据采集软件中的相关文献也不断涌现,如从地理坐标和高程信息的采集、记录[1,3-7],到实现树高测量[7],更有研究提出利用智能手机内置相机实现虚拟角规的原理[8]。本文正是在此原理基础上设计并实现了一款基于Android的森林调查数据采集软件,实现了虚拟角规的功能,同时利用触摸屏实现了在胸径-树高散点图上绘制随手曲线的功能,为标准地调查提供了方便手段,本系统集数据采集、存储和处理于一体,适合于生产、科研和教学等实际应用。
考虑到外业和内业的分工,本系统设计为移动端模块和PC端模块两部分,移动端软件主要负责数据的采集和简单的数据处理等外业工作,而PC端则是和移动端对接,获取移动端采集的数据后实现数据的整合、存储和复杂的数据处理等内业工作。移动端APP软件主要分为三大功能,即数据采集、数据处理和软件设置;PC端软件同样有三大功能,即数据导入,数据存储和数据处理。具体各个部分的功能可参见系统整体功能结构图(图1)。
图1 系统功能结构图
1) 在移动端三大模块中,数据采集模块的功能是根据小班调查过程中所需要采集的数据内容进行设计的。根据实际调查需要,本系统在制表界面提供胸径表、树高表、角规表这3种基本表的记录存储功能,并在算表界面的其他子界面提供了郁闭度的测算记录以及标准木信息的记录存储功能,如图2、图3所示。虚拟角规测量所得到的数据同样记录在角规表中。根据李轶涛[9]调查数据的存储方法,所有基本表均选择Excel作为数据文件存储格式,且考虑并实现了满足不同Excel版本的兼容性要求。系统会利用手机存储卡的不同目录对不同类型的基础数据文件进行组织存储。并且每个数据文件将以测量时间、测量地点和样地号等信息作为文件名,方便用户对测量记录进行查看检索。
2) 数据处理模块满足了小班调查中对数据的简单处理需求。制表界面提供了径阶表的自动生成功能,通过对原始胸径表和树高表的自动径阶整化得到径阶表。算表界面的常用子界面提供了平均胸径、平均树高、平均胸断面积和蓄积量的计算功能,其他子界面则提供了徒手曲线的绘制功能。
图2 制表界面图
图3 算表界面其他子界面图
3) 软件设置模块分为生成总表、蓝牙分享、参数设置和意见反馈4部分。生成总表功能用于该次小班调查结束后,将所调查样木的原始胸径树高信息按样木号进行汇总,并完成与PC端软件的数据无缝对接工作。蓝牙分享通过调用手机蓝牙功能实现不同移动终端数据文件的共享。参数设置则用于角规常数的设置,根据不同林地的实际情况和测量精度要求,用户可选择0.5,1,2,4等4种角规常数,通过改变角规常数值,虚拟角规缺口大小会发生相应变化。角规常数缺省值为1。
PC客户端使用C#语言在Microsoft Visual Studio平台上进行开发,同时也运用了VBA和SQL编程语言,实现了与移动端的无缝对接,配套使用。可将移动端测得的林分基础数据以Excel文档格式导入客户端及数据库进行处理。此外,PC端也可新建基础表并保存于本地实现独立使用。相对移动端而言,PC端进行更加复杂的林分数据处理,可实现径阶整化,树高曲线拟合及多种方式的林分蓄积量计算等。其中,多数计算功能由SQL语句及存储过程实现。树高曲线则是借助Excel拟合功能通过宏来实现,由整化后的径阶表拟合得到的指数、对数、多项式、乘幂等4种不同胸径树高曲线,每种曲线对应的方程可求出一个林分平均高。用户可根据Excel给出的拟合优度R2大小或自身经验选择一种树高曲线并将相应林分平均高填入对话框用于计算。林分蓄积量计算包括了4种常用方法,分别为平均标准木法、标准表法、平均实验形数法及一元材积表法。树高曲线拟合效果及平均标准木法对话框如图4、图5所示。
图4 树高曲线拟合效果
图5 平均标准木法对话框
在数据采集模块中,除提供胸径、树高测量等数据的记录外,主要设计实现了角规测树功能。刘羽等[8]根据凸透镜的成像原理,提出将手机摄像头看成一组等同于凸透镜的镜片组,并给出了虚拟角规实际尺寸的转换公式:
(1)
式中:l′为角规的实像尺寸;f为手机摄像头的物理焦距;BAF为角规常数也称为断面积系数,通常取值为0.5,1,2,4,本文以此作为实现虚拟角规的理论基础。
手机摄像头获取到的影像是先采集并呈现在感光元件上,再通过等比例映射显示到手机屏幕上的。而整个手机屏幕又是像素点的阵列集合,每一个显示在屏幕中的图像均由若干个像素点构成。因此,只需求出虚拟角规在屏幕中所占的像素点个数便可在屏幕中画出该角规缺口。由于智能手机需要调用硬件摄像头预览界面进行测量,而公式(1)给出的虚拟角规实际尺寸是相较于感光元件尺寸大小的,不能直接换算成屏幕像素点个数,需要通过公式(2)先求出屏幕呈现的角规尺寸与感光元件尺寸的比例关系:
K=l′/(s×p)
(2)
式中:K为比例值;l′为虚拟角规实际尺寸;s为感光元件单位像素尺寸;p为感光元件横轴分辨率。
有了该比例关系,再利用屏幕分辨率,便可将虚拟角规相对于感光元件大小的实际尺寸转化为角规缺口所占屏幕像素点个数:
N=K×p′
(3)
式中:N为像素点个数;K为上述求得的比例值;p′为手机屏幕分辨率。成像原理如图6所示,虚线为辅助线,无实际意义。
图6 虚拟角规成像原理
为了在硬件摄像头预览图像上绘制出虚拟角规缺口,整个测量功能需要采用frameLayout布局,该布局特点是能进行覆盖堆叠。在底层图层的View中获得手机摄像头的预览界面,同时利用顶层图层绘制虚拟角规缺口,通过图层的覆盖叠加来模拟人眼进行角规测量时的影像。Android封装好的SurfaceView类中拥有可以用于自定义绘制界面的Surface,通过调整属性值可以自由控制其格式和尺寸,因此利用其作为手机摄像头预览界面显示的底层类是很好的选择。利用setPreviewSize()方法可以调整与手机屏幕相匹配的摄像头预览界面尺寸,保证预览界面的可视性。在获得预览画面时,需要利用Camera.cancelAutoFocus()来实现自动调焦,提高预览界面的清晰程度。由于手机摄像头受手机机身尺度的影响,不能进行光学变焦,自动调焦所改变的虚拟角规尺寸投影到屏幕不到一个像素点,因此可将手机摄像头视为固定物理焦距的镜片组,即自动调焦对手机摄像头的物理焦距无明显影响,转换公式仍可行[8]。
通过读取相应配置文件得到角规常数,并结合上述转换公式便可计算出虚拟角规缺口所占像素个数,便可在手机中央静态绘制出虚拟角规缺口。由于手机型号不同,相应手机参数不同,因此绘制的虚拟角规缺口也不尽相同。在此,有2种设计思想:一是将各个型号的手机参数提前写在配置文件中,当需要绘制虚拟角规时让用户选择手机型号,进行静态绘制;二是不提前创建配置文件,所有手机参数让用户自己输入,动态绘制虚拟角规缺口。考虑到手机型号的多样化,本系统采用第2种设计思想,即用户自己输入相应手机参数,动态绘制虚拟角规缺口。本文实验过程中选择了小米3和魅族MX2两款不同型号的手机进行虚拟角规缺口的绘制和实现,由手机产品说明书可知小米3手机摄像头的物理焦距为3.51mm,单位像素尺寸为1.12μm,横轴屏幕分辨率为1 080,感光元件横轴分辨率为3 120;魅族MX2手机摄像头的物理焦距为4mm,单位像素实际尺寸为1.4μm,横轴屏幕分辨率为800,感光元件横轴分辨率为2 464。
利用虚拟角规功能进行实际测量时,根据角规测量的技术规程,系统设置了正反转检测,若正反转结果相差超过1则需重新测量,不超过1则可记录当前测量值,减少因测量产生的误差。
随手曲线是外业调查过程中根据径阶整化表随手绘制的胸径树高曲线,其主要用于反映胸径树高之间的关系,完成标准木的选取工作。传统方法是手工在坐标纸上进行绘制,工作效率低。考虑目前的智能手机和平板电脑的触摸屏能够采集手在屏幕上划过的轨迹,将其和已录入的数据散点图功能相结合就可以实现绘制曲线。本文在移动端软件中,通过调用软件记录的样地胸径、树高数据,经自动径阶整化后得到径阶表,并在手机屏幕上静态绘制坐标轴和所得径阶表中的数据点,用户可根据所给的数据点手动在手机屏幕中画出随手曲线。绘制完成后,系统会根据计算得出的平均胸径找到曲线上对应的树高值,并在屏幕上显示平均胸径和平均树高,以用于标准木的选取。在实现过程中,通过调用Path.quadTo()方法为手指移动的轨迹绘制贝塞尔曲线,利用bitmap.getPixel()方法获取曲线上与平均胸径横坐标相同的像素点在系统坐标系中的纵坐标,再转换成自定义坐标系中的纵坐标,就可以得出平均树高。图7给出了随手曲线示例。
图7 树高胸径随手曲线
森林资源调查工作中,数据的记录存储、相关数据的求算和标准木的筛选是野外工作人员必需完成的任务。基于Android的角规测树及数据处理软件充分利用智能手机屏幕分辨率高、记录方便的特点,实现了记录测算的无纸化,减少了数据处理的工作量。而在同一片样地测量的APP使用者之间能通过蓝牙实现数据传输共享,更好地分配测量工作,减少测量次数,为提高工作效率提供了有力的技术支持。同时PC客户端辅助功能使得后期数据的处理更加便捷和多样化,为信息提供了更加安全的存储功能。该款软件是智能手机应用于林业行业的一次实践,同时也可为林业相关生产、教学和科研提供工具。
[1] 冯仲科,黄晓东,刘芳.森林调查装备与信息化技术发展分析[J].农业机械学报,2015,46(9):257-265.
[2] 付凯婷.无人机遥感技术估算桉树蓄积量的研究[D].南宁:广西大学,2015.
[3] 刘新.基于PDA的森林资源样地调查软件的研建[D].北京:北京林业大学,2009.
[4] 张雪芹,张旭,马琰,等.基于RFID和Android的林木调查系统[J].物联网技术,2014(5):38-41.
[5] 刘丽芳,苏亚林,任晓东,等.森林资源二类调查外业小班采集系统基于平板电脑在调查中的运用[J].林业调查规划,2016,41(1):6-10.
[6] 朱煜.基于Android的森林资源数据外业采集系统研建[D].北京:北京林业大学,2014.
[7] 李亚东,冯仲科,曹明兰,等.Android智能手机树高测量APP开发与试验[J].中南林业科技大学学报,2016,36(10):78-82.
[8] 刘羽,赵天忠,张慕博.智能手机实现虚拟角规的原理与设计[J].林业资源管理,2015(3):166-169.
[9] 李轶涛.基于智能手机平台的林分平均胸径计算和标准木选取的方法研究[J].林业科技通讯,2015(11):72-76.