复杂采空区激光扫描异常点云过滤研究.pdf
复杂采空区激光扫描异常点云过滤研究 ① 鹿 浩, 罗周全, 张文芬, 秦亚光, 曹祖华 (中南大学 资源与安全工程学院, 湖南 长沙 410083) 摘 要 针对复杂采空区激光探测点云数据处理过程中传统过滤方法无法过滤所有异常点的缺陷,综合运用弦高比和周长比判据 及 OpenGL 编程实现了异常点云拾取删除全面过滤。 首先,在分析激光扫描轨迹线点云数据拓扑关系及异常点生成原因的基础上, 综合运用弦高比和周长比判据对点云数据初步过滤;然后运用 OpenGL 编程在显示界面上直接拾取删除异常点,实现了对点云数据 二次精确全面过滤。 工程应用实例表明,该方法不仅有效保留了采空区边界形态的完整性,也为矿山复杂采空区激光探测点云数 据过滤提供了新思路,工程实用价值较高。 关键词 复杂采空区; 激光扫描; 点云数据; 过滤 中图分类号 TG142.71文献标识码 Adoi10.3969/ j.issn.0253-6099.2015.03.004 文章编号 0253-6099(2015)03-0014-04 Filtering of Abnormal Point Cloud from Cavity Laser Scanner LU Hao, LUO Zhou⁃quan, ZHANG Wen⁃fen, QIN Ya⁃guang, CAO Zu⁃hua (School of Resources and Safety Engineering, Central South University, Changsha 410083, Hunan, China) Abstract Due to the problem of abnormal points failed to be filtered with the traditional method during processing point data of underground complex cavity obtained by laser scanning, studies on complete filtering as well as the theory and method were stated. Firstly, based on the analysis of the topological relation of point cloud data on the laser sounding tracks and reason for abnormal point occurrence, preliminary filtration was conducted with the traditional filtering method for point cloud including both chord height ratio and perimeter ratio. Then, programming with OpenGL was used to select and delete those abnormal points that were failed to be filtered out in the previous filtration, leading to an accurate and complete filtration in two steps. The following practical application in engineering project verified that such method can not only effectively retain the boundary integrity of the gob, but also as a new idea for filtering laser scanning point cloud, lay the foundation for the subsequent three⁃dimensional modeling and application. Key words complex gob; laser scanning; point cloud data; filter 金属和非金属地下矿山开采形成的采空区是矿山 重要灾源之一,如何准确获取采空区的实际形态是矿 山空区充填及其灾变监控的重要基础性工作,也是矿 山实施空区周边资源及残矿安全回采的重要依 据[1-3]。 CMS(3D Laser Cavity Monitoring System,三维 激光探测系统)是有效获取矿山采空区点云数据的重要 手段,其获取的点云数据格式简单,后续建模方便快捷。 运用 CMS 探测采空区时,受各种因素影响,获取的 点云数据中含有大量异常点。 目前,国内外学者对异常 点云过滤方法进行了许多相关研究。 这些方法应用于 形态变化不大的采空区时过滤效果较好,但应用于形态 复杂多变的采空区时不能实现异常点的有效过滤。 为实现采空区点云数据快速精确过滤,基于 CMS 探测获取的点云数据,研究复杂采空区探测数据分布 规律及异常点辨识方法;应用传统点云数据过滤方法 进行初步过滤的基础上,在显示界面上直接拾取其他 未被过滤的异常点进行删除;运用修正后的采空区点 云数据生成三角网模型求取采空区体积,通过体积误 差验证点云数据修正方法的准确性和适用性。 1 CMS 探测原理及异常点云特征辨识 1.1 CMS 探测原理 CMS 是直接将探测杆深入空区内部的某一位置, 通过可 360回转并集成有激光测距仪的扫描头实现 ①收稿日期 2014-12-16 基金项目 国家自然科学基金项目(51274250);国家“十二五”科技支撑项目(2012BAK09B02-05) 作者简介 鹿 浩(1983-),男,山东烟台人,博士研究生,研究方向为矿山数字化技术及灾害辨析理论与控制技术。 第 35 卷第 3 期 2015 年 06 月 矿矿 冶冶 工工 程程 MINING AND METALLURGICAL ENGINEERING Vol.35 №3 June 2015 空区数据的测量。 CMS 以扫描圈为单元,扫描头旋转 1 圈,记录下圆周上的坐标点形成 1 个轨迹圈,并将数 据保存到 CMS 存储单元中。 此后每完成 1 圈扫描,自 动增加事先设定的角度,通常为 3~5,进入下一圈的 扫描[2-6],直到扫描过程全部结束。 CMS 探测得到的数据有如下特点 1) 起始扫描时,虽然空区边界离扫描头较远,但 扫描圈的周长较小,导致点云数据较密集。 2) 当扫描头抬升到 20~70时,扫描到的空区边 界变大,探测到的数据点逐渐增多,但由于扫描圈的周 长变大,扫描圈上两点之间的距离逐渐变小。 3) 当扫描头抬升到100~140时,由于探测位置距 离扫描头较近,扫描圈的周长较小,点云数据比较密集。 1.2 异常点云特征辨识 在运用 CMS 探测采空区得到点云数据时,主要有 以下几种情形产生异常点[7-10] 1) CMS 探测系统自身的误差所引起的噪声点。 2) 外界环境变化引起的噪声点,如探测时的温 度、湿度和粉尘浓度。 3) 探测环境引起的误差,如在采空区顶部形成的 大量支护形成遮挡物等。 前两种情形产生的异常点与其他正常点云之间的 差别不大,只能通过选择探测精度较高的仪器或合适 的外界环境来消除异常点云;第三种情形,大量支护的 存在使 CMS 探测激光束打到支护上,此时得到的点云 数据不是表示采空区边界形态和位置的点云数据,而 是表示支护位置的点云数据,这种情形下的异常点在 距离、位置上都与正常点存在较大差异,如图 1 所示。 图 1 轨迹线上的噪声点 2 异常点云过滤 2.1 点云过滤准则 目前,传统噪声点过滤方法按点云数据的结构和 类型可分为无序点云数据的过滤、扫描线点云数据的 过滤和多变型点云数据的过滤[4-5],如图 2 所示。 B;23 6B;2,B;2B;2 6 , * , 4 0 9 , / , 2 B - , - 8 , 1 , - , E 2 3 , 图 2 不同类型点云常用过滤算法分类 2.1.1 弦高比法 弦高比法和弦夹角法的基本原理 是一样的,如图 3(a)所示,扫描轨迹线中的异常点 A 并不是表示采空区边界的点,而是激光束打到支护上 形成的异常点,且点 A 与 B、C 两点形成的夹角较尖 锐,距离线段 BC 也较远。 因此,弦高比和弦夹角运用 一个判据就可以判断出异常点。 ba A A B B CD E .01 .02 θ a h d c b 图 3 轨迹线中的弦夹角 如图 3(b)所示,△abc 中,设 ca 边为向量 A,cb 边 为向量 B,有 h = ad = acsinθ(1) 由 cosθ = AB A∗B = AxBx + A yBy + A zBz Ax2 + A y 2 + A z 2 +Bx2 + B y 2 + B z 2 得 h = 1 - (AxBx + A yBy + A zBz) Ax2 + A y 2 + A z 2 其中h 为边 bc 上的高。 将紧邻两个三角形的 h1、h2作比值,记为 h′= h1/ h2, 当 h′大于 ε1时为异常点,否则为正常点云。 2.1.2 周长比 弦高比法和弦夹角法可以去除夹角较 尖锐的情形,但对于距离扫描头较远的异常点形成的夹 角并不尖锐,反而很大。 这种异常点与其他正常点相 比,与紧邻的前后两点连接形成的三角形周长明显较 51第 3 期鹿 浩等 复杂采空区激光扫描异常点云过滤研究 大,因此可以根据周长的大小判断是否为异常点。 L = (ax - b x) 2 + (ay- by) 2 + (az- bz) 2 + (ax - c x) 2 + (ay- cy) 2 + (az- cz) 2 + (cx - b x) 2 + (cy- by) 2 + (cz- bz) 2 (2) 其中L 为△abc 的周长。 由式(2)可求出三角形的周长 L,将紧邻两三角形 的周长 L1、L2作比值,记为 L′=L1/ L2,当 L′大于 ε2时 为异常点,否则为正常点。 2.1.3 过滤算法阈值选取 根据弦高比法和周长比法 对探测得到的采空区点云数据进行过滤,其步骤如下 1) 根据 CMS 探测的数据读取 XYZ 数据文件,将 点的空间信息存入数据容器中,其空间信息包含空区 边界点的 x、y、z 坐标值以及该点所在圈数的位置。 2) 定义初始圈(一般定义第1 扫描圈为初始圈)。 3) 判断 h′与 ε1以及 L′与 ε2的关系,若 h >ε1且 L>ε2,则该点为异常点,应该过滤。 4) 综合考虑点云数据过滤的效率和过滤后求得 的采空区体积误差,确定两个阈值 ε1和 ε2。 综合运用弦高比和周长比进行异常点过滤的关键 是确定 ε1和 ε2的取值。 ε1和 ε2的取值不仅影响异 常点的过滤效率,对体积的误差也有很大关系。 但在 实际中由于采空区形态复杂、形状各异,特别是距离扫 描头较远且距离顶板较近的位置上的点云本身就比较 稀疏,在运用弦高比和周长比法进行异常点过滤时会 误判为异常点。 如图 4 所示,在运用弦高比和周长比 法进行异常点过滤时,虽然能够过滤大量异常点,但正 常点云也被过滤(图中未被连接的点云即为被过滤的 点云)。 因此,应该在保证过滤后采空区的实际形态 不失真的情况下,尽可能多的过滤异常点。 .58*4B;2.5/ 图 4 两判据删除异常点前后对比 2.2 拾取删除功能的实现 由于采空区形态复杂,运用弦高比和周长比法不能 完全将异常点过滤,需要在 Visual C++编程工具的基础 上,借助 OpenGL 三维图形接口功能,在显示界面上实现 对点云数据的拾取删除功能,实现点云数据的有效建模。 传统 OpenGL 的拾取功能是通过使用后缓存来处 理选择[11-14],其与标准选择机制的功能比较相似,都 是使用标准选择机制运用不同的颜色来显示拾取前后 的点云。 每一组点云数据使用不同的颜色值进行标 识,使用选择功能时,先将选中的场景用设置的颜色值 进行标识,并在后缓存渲染一遍,然后读取帧缓存中所 点选的点的颜色值(获取到颜色后不应交换前后缓 存,而应直接清空后缓存以免该颜色场景被显示出 来) [15],由选取前后显示界面上颜色的变化就可以辨 别出被选中的对象,如图 5 所示。 图 5 点云数据拾取前后对比 3 应用实例 国内某铜矿是大型深部多金属矿山,多年生产形成 了许多形状复杂的采空区,以某矿山 52-16#采场为例, 采空区原始数据通过 CMSPosProcess 处理后将 txt 格式 文件转化为后处理软件能识别的 XYZ 格式文件,按弦 高比和周长比判据对点云数据进行初步过滤。 为确定 实际工程应用中 ε1和 ε2值,本文通过将异常点过滤后 采空区体积的相对误差和运用较为成熟的矿山软件求 得的体积进行对比,通过点云数据过滤的效率和体积相 对误差来确定 ε1和 ε2的取值。 图6 为 ε1和 ε2选取不 同值时,点云数据过滤效率和体积相对误差。 1500 1000 500 0 .5/; - ε22.00 ε22.25 ε22.50 ε22.75 ε23.00 ε22.00 ε22.25 ε22.50 ε22.75 ε23.00 ε1 ε1 0 2 4 6 0 2 4 6 16 12 8 4 0 图 6 不同 ε1和 ε2值时过滤效率及体积误差 61矿 冶 工 程第 35 卷 由图 6 可知 1) ε1、ε2的上限越小,被过滤掉的点云数量越多, 体积相对误差越大。 2) ε1取值在 4.5~6.0 时,过滤的点云数量逐渐趋 于稳定,此时无论 ε2取何值体积误差都保持在 0.5% 的范围之内。 3) 综合考虑异常点的过滤效率以及体积相对误 差,建议在实际应用中 ε1取 4.5~5.0,ε2取 2.5~3.0。 运用复合判据并选取 ε1=4.75,ε2= 2.75 时,点云 数据过滤后的三维显示见图 7。 .5/.58 图 7 运用复合判据进行初步过滤 由图7 可知,综合运用弦高比和周长比判据进行初 步过滤时,虽然能过滤大量的异常点,但却不能实现完全 过滤。 对于未能过滤的异常点,运用 OpenGL 的拾取删除 功能在显示界面上进行拾取删除,如图8 所示。 图 8 OpenGL 的拾取删除效果显示 运用复合判据进行初步删除异常点云,再运用 OpenGL 的拾取删除功能进行异常点的进一步过滤后, 形成的异常点云过滤对比见图 9。 B.58B.5/ 图 9 噪声点过滤效果对比 由图 9 可见, 初步过滤异常点云之后再结合 OpenGL 的拾取删除功能,能将异常点全部过滤掉,实 现了异常点的有效过滤。 4 结 论 针对当前采空区点云数据过滤方法的不足,在运 用传统点云数据过滤方法(弦高比和周长比判据)进 行初步过滤的基础上,编程实现了未过滤点云数据的 拾取删除功能。 研究结论如下 1) 以 CMS 探测得到的点云数据为运算对象,基 于二阶几何连续性提出了弦高比和周长比的判据,并 研究了阈值选择方法,实现了采空区点云数据的初步 过滤。 应用表明,算法具有良好的稳定性和精度,有效 实现了复杂采空区异常点云的初步过滤。 2) 在自主开发的采空区激光探测三维建模可视 化集成系统的显示界面上,实现了 OpenGL 的拾取删 除功能,对于初步过滤后点云数据中的异常点进行拾 取删除,实现对点云数据的精确全面过滤。 3) 通过复合判据对点云数据进行初步过滤以及 OpenGL 拾取功能对点云数据的二次过滤,实现了点云 数据的完全过滤,为后续建模提供了准确的点云数据。 该方法成功克服了传统方法的缺陷,能很好地反映采 空区边界的细节,具有实际工程应用价值,从而为矿山 实施采空区灾害防治及空区周边资源安全开采提供重 要的技术支持。 参考文献 [1] 过 江,古德生,罗周全,等. 金属矿山采空区 3D 激光探测新技 术[J]. 矿冶工程,2006,26(5)16-19. [2] Luo Zhouquan,Liu Xiaoming,Su J H,et al. Deposit 3D modeling and application[J]. Journal of Central South University of Technology, 2007,14(2)225-229. [3] 罗周全,刘晓明,张木毅,等. 大规模采场三维探测及回采指标可视化 计算[J].中南大学学报(自然科学版),2009,40(6)1732-1736. [4] 陆 琰. 地质体三维可视化技术研究与实现[D]. 石家庄石家庄 经济学院信息工程学院,2010. [5] 李绪武. 基于三维扫描工程建模的面部整形点云数据处理方法研 究[D]. 重庆重庆大学机械工程学院,2013. [6] 刘晓明,罗周全,张 保,等. CMS 空区探测的环境影响及误差分 析与纠正[J]. 矿冶工程,2008,28(4)1-5. [7] 罗周全,杨 彪,刘晓明,等. 采用 CMS 辅助矿柱回采爆破设计研 究[J]. 金属矿山,2007(3)15-17. [8] 罗周全,杨 彪,刘晓明,等. 基于 CMS 实测及 Midas⁃FLAC3D耦合 的复杂空区群稳定性分析[J]. 矿冶工程,2010,30(6)1-5. [9] 罗周全,刘晓明,杨 彪,等. 采空区精密探测技术应用研究[J]. 矿业研究与开发,2006,26(z2)87-90. [10] 罗周全,刘晓明,张木毅等.大规模采场三维探测及回采指标可视化 计算[J]. 中南大学学报(自然科学版),2009,40(6)1732-1736. [11] 王 剑,陆国栋,谭建荣,等. 三维场景中图形对象的拾取方法 [J]. 机械,2004,31(7)29-32. [12] 邾继贵,张国全,唐大林,等. 一种新的基于 OpenGL 重绘式物体 拾取方法[J]. 微型机与应用,2005,24(10)53-55. [13] 姚继权,李晓豁. 计算机图形学人机交互中三维拾取方法的研究 [J]. 工程设计学报,2006,13(2)116-120. [14] 刘力强,周明全,耿国华,等. 一种平行透视下的三维拾取方法 [J]. 西北大学学报(自然科学版),2002,32(1)39-42. [15] 阳富民,赵 宁,张 杰,等. 基于 OpenGL 的三维窗口裁剪、拾取算 法研究[J]. 华中科技大学学报(自然科学版),2005,33(4)23-25. 71第 3 期鹿 浩等 复杂采空区激光扫描异常点云过滤研究