沈向前,杜年春,谢 翔,黄 毅
(1.中国有色金属长沙勘察设计研究院有限公司,湖南 长沙 410117;2.湖南省矿山安全智能化监控技术与装备工程技术研究中心,湖南 长沙 410117)
作为金属冶炼废弃物的堆存设施,排泥库是矿山企业堆存生产过程中产生的泥浆的主要场所,也是金属或非金属矿山的重大危险源[1]。排泥库里面的泥浆含有多种重金属离子,一旦发生泄漏事故,泥浆可能会进入周边环境,给人民群众的生产和生活带来威胁,甚至还可能污染地下水,破坏生态环境[2]。土工布是一种防渗材料,由于其具有抗拉强度高、防渗性能好、变形能力强、质量轻、施工方便、造价低等优点,被广泛应用于排泥库作为防渗材料。为了防止泥浆泄漏,排泥库四周铺挂土工布应及时,土工布的高度应始终高于泥浆面2~3 m[3],同时需要定时巡检土工布,在发现土工布高度过低时及时修补[4]。目前主要通过人工巡检方式对排泥库土工布进行巡检,巡检人员需乘船绕行土工布进行巡视,不仅作业效率低,还存在较高的安全风险。
为了克服人工巡检存在的不足,相关技术人员已经开始研究使用无人机对排泥库进行航测巡检[5],无人机搭载可见光相机拍摄高清的排泥库影像,通过解译正射影像和实景三维模型,评价库区安全情况,确定库区存在的安全隐患。无人机巡检作业方法有效降低了人工巡检的作业强度,为排泥库土工布巡检提供了新思路。
本文针对排泥库土工布人工巡检的不足,基于无人机倾斜摄影生成的加密彩色三维点云,设计了一种土工布中心线自动提取方法,包含土工布点云识别和中心线计算两部分。首先从三维点云中识别出土工布点云,在严苛的颜色特征阈值条件下筛选出白色的点云,并计算出土工布点云分布的高程区间作为高程特征阈值条件,综合颜色特征和高程特征识别土工布点云;然后将提取好的土工布点云数据转换为二值图像,采用改进的Zhang-Suen算法[6]提取土工布骨架;最后删除骨架上的毛刺获取干净的土工布中心线数据。
无人机倾斜摄影后通过三维重建能够生成密集的彩色三维点云数据,每一个三维点都有X、Y、Z、R、G、B属性信息,其中X、Y、Z为点云的空间坐标,R、G、B分别表示点云的颜色信息,分别表示红、绿、蓝。土工布是白色且带状环绕排泥库水线边缘,因此,本文通过颜色特征和高程特征将土工布点云从整个排泥库的点云中提取出来[7],具体步骤为:
1)点云数据分块处理。若点云的坐标系为地理坐标系(经纬度),则将其转换为投影坐标系(即平面坐标系);然后对点云数据进行分块处理,以提高后续计算的速度。
2)直方图正规化处理。对分块后的点云数据的R、G、B三个通道进行直方图正规化处理,以减弱光照等条件对点云颜色信息的影响,处理后的点云数据记为OriginPt。设输入点云R通道值范围为[Rmin,Rmax]、G通道值范围为[Gmin,Gmax]、B通道值范围为[Bmin,Bmax],输出R、G、B三个通道值范围均为[Omin,Omax],输入点云Pi为[Ri,Gi,Bi],输出点云P为[R,G,B],计算公式如下:
(1)
3)初步筛选。根据颜色特征对点云进行初步筛选,土工布的颜色是白色的,使用式(2)作为阈值条件,其中E(R,G,B)表示颜色的均值、σ(R,G,B)为颜色值的标准差,e1和μ分别为颜色均值阈值和颜色标准差阈值,保留满足阈值条件的点云。
(2)
5)二次筛选。对OriginPt进行二次筛选,使用式(3)作为判断条件,其中e2为二次筛选的颜色均值阈值,保留满足阈值的点云。此时的颜色判断条件与初步筛选不同,不再使用颜色值的标准差作为判断条件,以消除阴影等环境因素对土工布点云色彩的影响。
(3)
式中:“∧”表示逻辑与。
6)去噪处理。二次筛选获得的点云绝大多数都是土工布点云,但是也混杂有少量噪声,使用DBSCAN算法对点云进行聚类,删除噪声点。
使用上述方法提取出来的土工布点云,将其转化为二值图像,然后依次进行形态学运算、提取骨架、剔除毛刺等操作,能够自动提取出土工布中心线,具体步骤为:
1)点云转化为二值图像。具体方法如下:a)计算土工布点云的平面四至点坐标,左上点(xmin,ymin)、右上点(xmax,ymin)、左下点(xmin,ymax)、右下点(xmax,ymax);b)设置图像网格边长pixelSize,初始化二值图像,图像的尺寸大小由式(4)确定,图像所有像素点的像素值设为0;c)遍历所有的土工布点云,计算其对应的像素坐标,将对应像素点的像素值设为1。
(4)
2)进行形态学运算。先进行闭运算,填补由于土工布点云密度不均匀造成的空洞;然后进行开运算,消除图像里面小颗粒噪声。
3)土工布骨架提取。使用改进的Zhang-Suen算法提取骨架,具体方法如下:a)遍历所有值为1的像素,标记满足式(5)所有条件的像素点,并将被标记的像素点删除;b)遍历所有值为1的像素,标记满足式(6)所有条件的像素点,并将被标记的像素点删除;c)循环执行a)和b),直到两个循环步骤中都没有像素被标记为删除为止;d)遍历所有值为1的像素,标记满足式(7)中任一条件的像素点,并将被标记的像素点删除。
(5)
(6)
(7)
式中:P1表示像素值为1的像素点;A(P1)表示P1的8个邻域P2,P3,…,P9像素值非零(即1)的个数;B(P1)表示以P2~P3,P3~P4,…,P9~P2为序时,这些点的像素值出现0→1变化的累计次数。
像素的分布如图1所示。
图1 像素邻域图
4)删除骨架上的毛刺。由于土工布有一定宽度且边缘不光滑,经过细化算法提取的骨架会有很多细小的毛刺。图2显示了一段提取出来的土工布骨架,图上的实心点为“端点”、空心点为“交点”。删除毛刺后即可获得正确的土工布中心线,具体方法如下:a)计算端点和交点的数量,如果端点的数量大于2或交点的数量大于0,执行b)和c),否则停止算法,完成毛刺删除;b)执行计算过程:i)遍历所有“端点”-“端点”的线段,记录线段的坐标序列Linei{q1,q2,…,qm},其中,q1、qm为“端点”,计算此线段对应的长度lenLinei;ii)遍历所有“端点”-“交点”的线段,记录线段的坐标序列Segi{q1,q2,…,qm},其中,q1为“端点”,qm为“交点”,计算此线段对应的长度lenSegi;c)执行删除过程:i)对所有“端点”-“端点”的线段,保留lenLine值最大的Line,删除其他线段;ii)对于所有“端点”-“交点”的线段,如果某一个交点对应多个端点(≥2)时,删除此交点对应的线段中lenSeg值最小的Seg。
图2 骨架图
本文实验区域为广西某铝土矿排泥库,采用大疆精灵4 RTK无人机对排泥库进行倾斜摄影,相机影像传感器为1英寸CMOS,有效像素2 000万。倾斜摄影后使用ContextCapture软件进行三维重建,获取排泥库周边的彩色三维点云,点云坐标系为投影坐标系(平面坐标系),本文以此数据进行实验。
图3为实验区点云的整体图和局部放大图,包含植被、道路、水体、土工布等丰富的地物信息。
图3 实验区点云
首先对原始点云数据进行分块并对颜色进行直方图正规化处理,输出R、G、B三个通道值范围均为[0,255]。然后根据颜色信息进行初步筛选,其中e1取值范围为[200,240],μ的取值范围为[2,15]。在获取土工布高程区间[Zmin,Zmax]后进行二次筛选,e2的取值范围为[120,200],初步筛选和二次筛选的点云见图4。最后使用DBSCAN进行去噪,扫描半径eps=0.4 m,最小包含点数minPts=8,去噪效果见图5。
图4 土工布点云提取结果
图5 土工布点云去噪效果图
使用提取好的土工布点云数据,将其网格化后转化为二值图像,图像网格边长pixelSize大小为0.1 m。随后对二值图像依次进行闭运算和开运算,使用的卷积核为矩形,卷积核的尺寸为(5,5)。然后使用改进的Zhang-Suen算法提取骨架,并对骨架上的毛刺进行删除,从而得到土工布中心线,如图6所示。
图6 土工布中心线
本文基于无人机倾斜摄影三维重建生成的彩色三维点云数据,提出了一种排泥库土工布中心线自动提取方法。此方法能够从三维点云中识别出土工布点云,并自动生成土工布中心线,土工布点云提取和中心线识别的精度高、速度快,并且能够有效克服阴影等环境因素的不利影响,为后续计算土工布高度、提取水岸线、识别土工布破损等提供数据支撑,对于提高排泥库安全巡检的信息化、自动化水平具有积极意义。