USB摄像头双目视觉胸径测量实证研究
2016-12-19李亚东冯仲科李长青
李亚东,冯仲科,李长青
(1.北京工业职业技术学院,北京 100042;2. 北京林业大学 精准林业北京市重点实验室,北京 100083)
USB摄像头双目视觉胸径测量实证研究
李亚东1,2,冯仲科2,李长青1
(1.北京工业职业技术学院,北京 100042;2. 北京林业大学 精准林业北京市重点实验室,北京 100083)
立木胸径是森林资源清查中的一项重要指标,它是计算森林蓄积量和衡量林木生长状况的重要依据。三维重建测量物体是近年来计算机视觉领域研究的新热点。将低成本的USB摄像头双目视觉尝试运用到立木胸径测量中,通过摄像机标定参数和视差图获取三维点云,用C++语言结合OpenCV实现了从三维点云中提取和计算胸径的方法。并选取华北落叶松进行胸径测量,将测量结果与胸径尺进行比较结果表明胸径测量精度可达到95.3%,可满足国家对森林资源清查的精度要求。
立木;胸径;双目视觉;测量
森林资源调查是摸清森林资源的数量、质量与分布的重要手段。在森林资源调查中,立木的胸径测量是最重要的项目之一[1]。胸径测量也是评价立地条件与林木生长状况的重要依据之一[2]。传统的活立木胸径测量方法有卡尺测量、轮尺测量、直径卷尺测量等,但这些接触性测量方法的效率低、劳动强度大。尤其在野外森林资源调查时,由于地形复杂,调查人员无法到达立木附近进行接触性测量,因此非接触式的测量方式成为实际需求。为了适应我国林业智能化发展要求,研究者们先后开发了如林业数字式测径仪[3]、林业数字式测高测距仪[4]、电子测树枪[5]、电子角规[6]、电子经纬仪[7]、全站仪[8-9]、双目定焦相机[10]等胸径测量方法。
USB摄像头双目视觉胸径测量方法在前人研究基础上,为森林精准计测领域引入了新的技术方法。本研究首次将低成本短焦距USB摄像头尝试运用到了立木胸径测量中,对乔木树种华北落叶松胸径进行了测量实验,并将实验结果与胸径尺测量结果进行了比较分析。
1 原理与方法
1.1 双目视觉原理
双目立体视觉(Binocular Stereo Vision)是基于视差原理,利用双目成像设备从不同角度采集具有重叠区域的被测物体两幅图像,通过计算两幅图像同名点之间的坐标差,获取被测物体的三维坐标信息的方法。融合两张像对获取的图像并计算它们之间的差别,可以获得明显的深度感,建立特征点的对应关系,将同一空间物理点在不同图像中的映像点对应起来,即可得到视差(Disparity)图(见图1)。
图1 USB双目摄像头示意Fig. 1 Binocular stereo web camera
本研究采用焦距f为4.3 mm-∞的Web Camera摄像头。将两个摄像头按3.4 cm基线长固定为一个刚体,通过USB连接线与笔记本电脑相连。在笔记本电脑上,借助OpenCV相关函数同时采集两个摄像头的实时图像。并在笔记本电脑上处理获取的点云,从中提取被测树木的点集,进而计算出立木胸径。
1.2 胸径测量方法
1.2.1 相机标定
摄像头标定是利用双目视觉三维测量的基础,主要确定摄像机的参数[11]。本研究采用张正友标定法[12],摄像机的模型采用引入透镜的径向畸变和切向畸变的针孔模型,图像点和空间点之间的一个映射关系公式[13-15]为:
式(1)、式(2)中Xw= (X,Y,Z )为世界坐标系中的点;s为未知常数;M1为内参数矩阵;M2为外参数矩阵。
借助OpenCV库的cvFindChessboardCorners和cvFindCornerSubPix函数可从方格标定板图像中检测到亚像素级的角点特征进行匹配,获取到左右像片上对应的像方坐标。基于方格板平面及格子边长等已知约束条件,借助OpenCV库中提供的标定函数cvCalibrateCamera2()求出包含以像素为单位的焦距(fx,fy)、图像中心点坐标(cx,cy)、畸变系数的摄像头内部参矩阵M1以及包含旋转矩阵、移矢量的外部参数矩阵M2。
1.2.2 视差图获取
OpenCV提供了从双目摄像头获取视差图(disparity map)的相关函数,本研究基于OpenCV利用C++语言自行开发了辅助测量胸径的小型应用程序。测量胸径时,将双目摄像头通过USB连接线与PC笔记本相连,在笔记本上需要安装自行开发的辅助测量程序(见图2)。
图2 双目摄像头扫描立木胸径Fig. 2 The schematic diagram of scanning diameter at breast height by double web camera
观测时将双目摄像头对准被测立木主干,让纵轴与树干保持平行,摄像头中心线与树干垂直。适当上下调整,使视场下边界处于地面与树干连接处,确保摄像头与树干之间无任何遮挡物。当在PC屏幕中出现完整清晰的视差图时,点击应用程序中相应按钮,将视差图保存到PC端,供内业后处理(见图3)。
图3 USB双目摄像头获取的立木胸径视差Fig. 3 The disparity map of scanning diameter at breast height by double web camera
1.2.3 三维点云处理
扫描树木胸径获得的二维视差图上的像素代表了树干到摄像头的真实距离,胸径提取需将视差图转化为世界坐标系中三维点云。相机标定后可确定相机参数Q矩阵,有了Q矩阵和视差图后,就可以根据下面公式计算出每个像素坐标对应的世界坐标XYZ[16](见图4)。
图4 视差图获取XYZ世界坐标原理Fig. 4 XYZ world coordinates principle of getting depth map
式(3)和式(4)中f为焦距;T为基线长;cx和cy分别为左右像平面的坐标系与世界坐标系中原点的偏移;d为视差。假设x,y为目标点在左视图中的坐标,则目标点在左摄像头光心为原点的世界坐标系中的坐标为XYZ。
运用C++和Open CV调 用reProjectImageTo3D()函数实现了视差图到三维点云的转换。图5为点云在OpenGL中的显示效果。
图5 树干三维点云Fig. 5 3D point cloud of the measured tree
通过胸径扫描可以获取三维点云,如何分离三维点云中的背景、地面和被测树木是提取胸径的关键。本研究采用如图6所示流程提取胸径。
图6 胸径提取流程Fig. 6 The flowchart of extracting diameter at breast height
(1)点云预处理
本研究采用的双目摄像头水平视场角为57 °、垂直视角为43 °,景深镜头感应距离1.2 ~3.5 m。在郁闭度0.6以上的成熟乔木林地,胸径测量的最佳距离是1.8~3 m。点云预处理主要是在XY方向上缩小点云范围,剔除与胸径无关的地面和阴影等信息。
(2)Z轴方向剔除背景
由于在摄像头与被观测立木之间无遮挡物,所以深度数据中很容易确定立木在景深方向的Z最小值,在被测立木点云Z最小值基础上很容易确定其Z值范围。采用直方图分割法剔除了背景。
(3)多距离空间聚类分析
林地内获取影像背景较复杂,经过以上处理仍然在被测木左右(X轴)存在干扰点的概率很大。ArcGIS Engine提供的多距离空间聚类分析方法可对一定距离范围内的空间相关性进行汇总。该方法适用于从超大研究区域中收集数据,但仅分析数据集合边界内更小的区域[17]。
同一林分的胸径差值一般不大,其胸径最大值是可预测的。通过预测值可以构造出搜索边界,根据摄像头扫描结果推算出扫描平均间距值。本研究将经过上步处理的点云数据在Y方向上投影到胸径平面(Y=1.3 m)上,运用ArcGIS Engine多距离空间聚类分析中的REDUCE_ANALYSIS_AREA函数,提取被测木点的ID集合。通过ID在三维点云中查询被测木的所有点,结果如图7所示。
图7 被测木点云侧视Fig. 7 Selected target points
(4)点云Z值最大化至同一平面
将查询到的点云Z值最大化至同一平面(图8中AB所在的垂直平面),计算出A和B两点的三维坐标。在对柱形物体观测时,光线反射回的物体直径是观测光线与树干在胸高平面上相切的两点连线,如图8所示。因此,需要进一步计算得到真正的立木胸径D。
图8 立木胸径改正示意Fig. 8 The corrected schematic diagram of stumpage diameter at breast height
图8中S为摄影中心;A,B分别为观测光线与树干相切的两点;O为胸径高度平面上树心坐标中心点;D为立木胸径。
由A,B两点的坐标计算获得A,B两点间距离SAB,利用三角函数原理计算出α角和胸径D。
2 结果与分析
落叶松属林木在我国有10余种,在大兴安岭林区占用材林总蓄积量的67%[18]。落叶松胸径测量研究具有很重要的现实意义。本研究选取10株华北落叶松,对每株华北落叶松用双目摄像头和胸径尺分别测量并对比测量结果,计算出绝对误差、相对误差及平均相对误差。
表1 胸径计算结果误差分析†Table 1 Measuring results and calculating results about diameter at breast height
本研究将胸径尺测量值作为真值计算,双目摄像头胸径测量的平均相对误差为4.70%,按森林资源三类调查每木检尺法中2 cm径阶检尺的精度要求评价,本方法精度为100%。
3 结论与讨论
本研究采用USB双目摄像头对立木胸径测量进行了探讨。利用摄像机标定参数和视差图获取了三维点云,借助C++语言结合OpenCV和ArcGIS Engine的空间聚类法实现了从三维点云中提取和计算胸径。选取占全国森林资源蓄积量较大比重的乔木树种华北落叶松进行实验,结果表明USB双目摄像头胸径测量精度可达到95.3%,可满足国家对森林资源清查的精度要求。从径阶精度来看,完全满足三类调查的2 cm径阶检尺的精度要求。USB摄像头双目视觉胸径测量方法研究具有以下优点和意义:
(1)与胸径尺比较,实现了自动统计计算,具有非接触性测量优势。天然林地的腐殖质凋落物较厚,每木检尺时森调人员体力消耗较大,非接触式测量方法具有很大的现实意义。
(2)与电子经纬仪、全站仪等光学测量仪器的胸径测量方法比较,在仪器安置方面没有特定要求、无需对中整平等繁琐操作。
(3)与双目定焦数码相机相比较,成本低、体积小、携带方便,测量结果可直接进入计算机实时处理。
(4)USB摄像头更容易集成到移动终端。OpenCV已在安卓平台上提供了相应版本的函数库,支持USB摄像头的安卓开发板也已普及,这为USB摄像头胸径测量方法移植到安卓手机或平板提供了有利的软硬件保障。
从计算机视觉角度研究立木胸径测量,对树木三维重构建模研究、无人机林下自动蔽障飞行等方面也具有一定的参考价值。但由于时间和实验条件限制,仍然有很多不足和改进的地方,如基线长大小对测量精度的影响,胸径径阶大小对测量精度的影响等方面有待进一步研究。
[1] 孟宪宇.测树学[M].北京:中国林业出版社, 1998.
[2] 冯仲科,赵春江,聂玉藻,等.精准林业[M].北京:中国林业出版社, 2002: 10-30.
[3] 鄢前飞.林业数字式测径仪的研制[J].中南林业科技大学学报, 2008, 28(2): 95-99.
[4] 鄢前飞.林业数字式测测高测距仪的研制[J].中南林业科技大学学报, 2007, 27(5): 66-70.
[5] 徐伟恒,冯仲科,苏志芳,等.手持式数字化多功能电子测树枪的研制与试验[J].农业工程学报, 2013, 29(3): 90-99.
[6] 冯仲科,徐祯祥,杰林德•罗斯纳尔.电子角规测试仪及自动测树方法[P].中国专利: 1570557, 2005-01-26.
[7] 曹 忠,冯仲科,徐伟恒.电子经纬仪无损立木材积测量方法及精度分析[J].中南林业科技大学学报.2015,35(4):7-13.
[8] 冯仲科,姚 山.全站仪量测树高方法[P].中国专利:101021416, 2007-08-22.
[9] 冯仲科,王 佳.一种测树型超站仪及其使用方法[P].中国专利: 102466476A, 2012-05-23.
[10] 樊仲谋,冯仲科,李亚东,等.基于双目相机的森林样地调查方法研究[J].农业机械学报, 2015, 46(5):293-299.
[11] 李 跃,汪亚明,黄文清,等.基于OpenCV 的摄像机标定方法研究[J].浙江大学学报, 2010, 27(3): 417-421.
[12] ZHANG Zhengyou.Flexible camera calibration viewing aplane from unknown orientations[C]/ /Proc International Conference on Computer Vision(ICCV’99).Corfu,Greece,1999,1:666-673.
[13] 高文娟,李 健.基于OpenCV的摄像机标定问题研究[J].计算机与数字工程, 2008, 36(12): 128-130.
[14] 刘睿祯,于仕琪.OpenCV教程[M].北京:北京航空航天大学出版社, 2009: 394-400.
[15] 韩 峥,刘华平,黄文炳,等.基于Kinect的机械臂目标抓取[J].智能系统学报,2013,8(2):149-155.
[16] 章海兵,刘士荣,张波涛.H--S直方图反向投影结合特征点提取的双目视觉定位算法[J].控制理论与应用, 2014, 11(5):614-622.
[17] Esri.ArcGIS Resources[EB/OL].[2016-04-18]http://resources.arcgis.com/zh-cn/help/main/10.2/index.html
[18] 林 岩.落叶松资源的开发与利用[J].农村实用科技信息,2012(5): 43-43.
Empircal study on diameter at breast height measurement of binocular vision in USB camera
LI Ya-dong1,2, FENG Zhong-ke2, LI Chang-qing1
(1. Beijing Polytechnic College, Beijing 100042,China; 2. Beijing Key Laboratory of Precision Forestry of Beijing Forestry University,Beijing 100083, China)
Diameter at breast height is an important indicator of forest inventory, which is an important basis for the calculation of forest stock and measurement of forest growth conditions. It is a new hot research spot in the computer vision field in recent years which measure the object by using three-dimensional reconstruction. In this article, using USB camera binocular vision to measure the Diameter at breast height, and in order to get the 3D point cloud, using camera to calibrate parameters and get deep images. At the same time, using OpenCV and C ++ get the methods for extracting and calculating Diameter at breast height from the 3D point cloud. This trial measured 10 Larix principis-rupprechtii, and compared measurement results with DBH ( diameter at breast height) ruler, as a result,measurement accuracy of Diameter at breast height by binocular vision can reach 95.3%, and it is fully meet the country’s accuracy request of forest inventory.
standing trees; diameter at breast height; binocular vision; measurements
S758.5;S24
A
1673-923X(2016)08-0001-05
10.14067/j.cnki.1673-923x.2016.08.001
2016-04-25
国家科技支撑计划项目“倾斜测量、地面LiDAR和野外测绘装备国产化”(2012BAH34B01)
李亚东,讲师,博士研究生
冯仲科,教授,博士生导师;E-mail:fengzhongke@126.com
李亚东,冯仲科,李长青. USB摄像头双目视觉胸径测量实证研究[J].中南林业科技大学学报,2016, 36(8): 1-5.
[本文编校:文凤鸣]