贾凯华,李和志,吴泽敏
(江西科技学院 南昌市材料研究与结构检测重点实验室,江西 南昌 330098)
一种新的窗户特征提取方法研究
贾凯华,李和志,吴泽敏
(江西科技学院 南昌市材料研究与结构检测重点实验室,江西 南昌 330098)
摘要:在建筑物立面重建中,窗户提取、结构识别是学者们研究的热点。针对建筑物特征提取的应用需求,文中提出一种基于局部搜索算法——爬山法的窗户信息提取方法,介绍研究中采用的一些原理、方法,从而可以准确有效地从激光扫描数据中提取出建筑物的窗户信息。利用本方案对地面激光扫描系统获取的建筑物实验数据进行具体的处理,并给出可视化表达结果。
关键词:建筑物;激光扫描;特征提取;爬山法
随着地面三维激光扫描技术的发展,获取高密度点云成为可能,建筑物的细节结构如窗户、门框等特征信息也可以被识别。然而,对于窗户,通常只有少数可利用的激光点,这是由于窗户框边是整个墙壁上相对较小的部分,并且窗户上玻璃不能反射激光束。原始激光信息的不足,使得在没有人际交互的情况下很难恢复可靠真实的窗户几何体。
许多研究者都致力于从激光点云中提取几何特征的领域。文献[1]介绍基于“空洞”的窗户识别方法,该方法利用每个窗户的轮廓点拟合出代表窗户结构的矩形,得出的结论是拟合出的窗户会出现过大或过小的现象,很显然,这种利用窗户点云识别的方法是不可靠的;文献[2]中提出格网化的窗户识别方法,但该方法不能有效提取点云缺失较严重的窗户。针对以上研究现状,本文提出一种利用爬山法,从地面三维激光点云数据中提取建筑物窗户信息的方法。
1算法
由于激光扫描获取的建筑物点云数据量非常大,直接对点云的几何数据进行特征识别比较困难,因此,考虑将三维点云转换为一幅平面的二维图像,借助成熟的数字图像处理知识可以直接在图像上提取有用特征,解决三维点数据检索处理较难的问题。将点云转换为深度图像后,借助已获取的数字图像处理的算法可以从此影像上直接提取窗户特征信息,但由于原始点云边缘不规则的缺陷,导致得到的边缘轮廓也不是水平或铅垂的直线,与实际规则的矩形不符,因此非常有必要进行优化,这也是窗户识别过程中非常重要的环节。
1.1建筑物平面点云图像生成
传统的图像生成算法,无论是针对车载点云数据还是针对机载点云数据,大部分都是采用深度图像的生成原理。若直接将墙面点云转换成深度图像会出现实景物体扭曲、几何失真的现象。如图1(b)所示,实景中本是规则矩形的物体,转换成深度图像后发生扭曲变形,产生这种现象的原因是深度图像是以扫描仪中心作为观察点,且是基于球面投影的。当扫描视场角较大时,图像自然会出现一定的弧度,角度越大,弧度越大,扭曲变形越严重。这样的距离图像显然不能满足复杂建筑物中包含丰富立面信息的特征提取要求,尤其是本文欲提取到边缘规则且是矩形的窗户,这种图像生成方法更不适合。针对该问题,本文采用文献[3]中投影变换的方法来生成点云图像。首先将三维点投影到所在的拟合平面上,便可求得空间点在拟合平面上的投影点坐标,这样,每个点在平面上都有一个对应的投影点,结果如图2(b)所示,与直接生成的图像图2(a)相比,采用本文方法生成的图像与实景基本一致,无扭曲、变形,阳台点云呈现较规则的矩形,可看出基于投影变换的图像生成方法更能直观地反映建筑物表面的几何分布特征。
图1 某建筑物外墙的深度图
图2 空间点向平面投影示意图
1.2窗户信息矢量化
以上得到的窗户斑块没有任何属性信息,不同的优化方法会得出不同的结果,在这种情况下,有必要预先为窗户定义一个十分明确的、唯一的、可定量化的矢量参数,标明每个窗户在对应立面上的位置和几何特征,借助具体的参数信息来定量分析研究。本文结合实际情况,采用文献[4]中距离变换的方法来进行窗户矢量化得到窗户的边缘属性信息,过程如图3所示,表1记录了窗户编号、窗户中心位置、宽度值h和高度值w。
表1 窗户属性信息
图3 窗户矢量化过程
由图3可知,矢量化方法得到的窗户边界光滑平直,是规则的矩形,与实景较接近,但该方法的缺点在于处理过程中依据的是窗户点云,而由于每个窗户区域得到的原始点云本身就不规则、不统一,由于只考虑单个窗户的情况,忽略整体特征,因此导致在实景中原本完全相同的窗户,属性信息却有所不同,尽管偏差较小,但为与实际更加接近,也必须进行优化。
1.3基于爬山法的窗户信息优化算法
爬山法(Hill-Climbing)[2]是一种局部搜索迭代求出最优解的一种算法,首先选取某个可行解为初始解,并通过逐步迭代来改善解的精确性,在每次迭代中,算法依据邻域函数在当前解的邻域内寻找更优解来改善当前解的质量,即所谓的局部搜索,这种迭代求解算法,原理浅显易懂,容易实现,如图4所示。
图4 爬山法原理示意图
设爬山者最初位于O点,目标是爬上峰顶,为此可有4种走法,即向东、向南、向西、向北,爬山法要求在每走一步之前,先计算分别向4个方向走一步后到达的新位置与原位置高度之差,即启发信息;然后根据这一信息决定向哪个方向走,一般选高度差最大的方向作为即将走步的方向,每走一步都要有预先计算的启发信息作引导,当到达某点时,若4个方向的高度差计算结果都导致高度下降,则认为该点就是峰顶,搜索结束,由于每一步都是向梯度最陡的方向前进,而非盲目攀登,因而爬山法对求解单峰问题是相当有效的。
只需事先定义初始值、能量函数,就可以在邻域范围内搜索,并快速收敛于局部最优解,但搜索算法是否能找到全局最优解,与初始点的位置有很大的依赖关系,容易陷入局部最优,这由于它是基于贪婪思想持续在当前解的邻域中进行搜索的。针对爬山法固有的缺陷,改进的爬山算法逐渐发展起来,通常有两种:一种是增多爬山者的个数,确保至少有一个爬到全局最优点;另一种是根据某种启发式信息,跳出局部最优点,继续爬山过程。
1)选择当前每个窗户的初始参数,若所有都处理完毕,则结束程序;
2)初始化迭代次数t=1;
3)初始变量:窗户的中心坐标(x,y)和高h,宽w,分别记为Vk,索引号k取1,2,3,4;
4)选取变量和能量函数E;
7)t=t+1,若t 8)得到最优矢量化值。 通过以上步骤,就可以找到窗户各个变量的局部最优解。 2实验 实验采用由美国天宝公司生产的TrimbleGXTM 三维激光扫描仪,它使用高速激光和摄像机捕获坐标和图像信息。以某大学校园内一幢教学楼获取的点云数据进行实验,在主频为1.79GHz,内存为1.5G,Windows2000的PC机上,通过Matlab软件编程实现整个运算过程。如图5(a)实际场景中某些建筑物立面信息比较丰富,一个立面可能包含两个或多个平面,窗户区域的点云形状不规则且大小不一,这给窗户提取工作带来很大难度。 图5 窗户提取过程 通过数据采集,得到一共2 782 748个原始点,为研究方便,截取其中一部分进行实验,如图5(b)所示。这些原始数据是散乱无序的,包含的参数有点的三维坐标和RGB强度值及像素信息。不同的生产厂家有各自定义的数据格式,天宝公司的数据读写格式一般为ASCII格式文件,每行记录一个扫描点数据,对本文的研究,主要使用的是点的三维坐标信息。 在窗户特征提取前,首先要对原始点云进行一系列的预处理,下边详细说明:图5(c)是采用RANSAC算法提取出的窗户点云数据;图5(d)为窗户点云生成的二值图,由于二值图像仍是孤立的像素点,存在一些小的孔洞,很难达到预想的提取结果,针对这一情况,采用成熟的形态学闭运算来填充细小孔洞、凹坑,且不改变凸边界,从而将离散像素点连接成为一个连续整体;图5(e)为填充效果,填充后窗户斑块完整清晰,然后利用matlab中的imfill函数填充图像中较大的“空洞”(窗户);图5(f)所示,然后对前两个步骤的运算结果取差运算,便可得到窗户区域,但窗户位置、大小,虽然与实际已经非常接近,但还不能达到完全一致,为此,采用本文算法对窗户信息进行优化,在定义能量函数时,将相同的窗户作为一个整体进行优化,并且加入建筑物中窗户的形状先验约束条件:①窗户尺寸大小相同,即宽度和高度相同;②中心点对齐,即实景中处于同行的窗户行号相同,处于同列的列号相同;③相同窗户的行、列间距要相等,即同一水平方向的窗户之间水平间隔要相同,处于同一垂直方向的窗户竖直间隔要相同,从而与实际更接近,也避免窗户不一致的情况,如图5(g)是本文整体优化后的窗户的轮廓信息,与实景对比,识别效果较好。 经过以上处理,建筑物立面上依次排列的15个规则的窗户都被准确地识别出来。在投影时记录图像中每个单元格对应点的三维坐标信息,因此,通过图像和点云的对应关系,利用窗户矢量参数就可以轻松地反求出其对应的外轮廓点云,如图5(h)所示。得到窗户模型角点对应的点云和点坐标后,便可以方便地实现窗户区域和整个平面的重建工作。 3结论 地面三维激光扫描系统能快速获取建筑物立面的细节信息,在建立详细建筑物三维模型、数字城市等方面有较大的优势和灵活性。本文详细叙述基于地面激光扫描数据的窗户识别方法,先将三维点云数据转化为二维图像进行处理,避免大量的几何计算,而且可以充分借鉴图像处理的一些方法,提高数据处理的效率。针对传统深度图会发生失真的情况,采用一种基于投影变换的新的点云图像生成方法,生成的图像是正视建筑物立面的观测效果,能够很好地反映墙面和窗户的几何分布特征,结合建筑物的形状先验信息,实现窗户的识别。为与实际更接近,引入人工智能领域的启发式搜索算法,有效解决窗户矢量化的优化问题。本文窗户识别方法受窗户点云质量影响较小,对复杂场景也是可行、有效的。 参考文献: [1]PUS,VOSSELMANG.Extractingwindowsfromterrestriallaserscanning,InternationalArchivesofPhotogrammetry[J].RemoteSensingandSpatialInformationSciences,vol.36,part3/W52,Spook,Finland,September12-14,2007:320-325. [2]杨洋.基于车载LIDAR数据的建筑物立面重建技术研究[D].郑州:信息工程大学,2010. [3]杜月阳.三维激光测量系统点云数据的区域提取、模型重构及锻件尺寸测量研究[D].上海:上海交通大学,2012. [4]ROSENFELDA,PFALTZJ.Sequentialoperationsindigitalpictureprocessing[J].JournalofAssociationforComputingMachinery,1966,13(4):471-494. [5]张会霞,陈宜金,刘国波.基于三维激光扫描仪的校园建筑物建模研究[J].测绘工程,2010,19(1):32-34. [6]吴静,靳奉祥,王健.基于三维激光扫描数据的建筑物三维建模[J].测绘工程,2007,26(5):57-60. [7]魏征,董震,李清泉.车载LiDAR点云中建筑物立面位置边界的自动提取[J].武汉大学学报(信息科学版),2012,37(11):1311-1315. [8]黄磊.基于激光扫描数据的建筑物立面信息提取[D].青岛:山东科技大学,2007. [9] 马敏杰,杨洋,范爱平,等.复杂建筑物三维激光扫描与室内外精细建模[J].测绘与空间地理信息,2015,38(1):111-113. [10] 蔡庆生.地面三维激光扫描仪测距检校与精度评定[J].测绘与空间地理信息,2015,38(1):217-218. [11] 马宁,姚吉利,贾象阳,等.三维激光扫描测量精度评定的讨论[J].测绘与空间地理信息,2015,38(11):120-122. [12] 万怡平,习晓环,温奇,等.地面点云数据快速重建建筑模型的分层方法[J].测绘工程,2015,24(5):47-51. [13] 朱宁宁.三维激光扫描在地铁隧道形变监测中的应用[J].测绘工程,2015,24(5):63-68. [责任编辑:张德福] DOI:10.19349/j.cnki.issn1006-7949.2016.10.013 收稿日期:2015-06-03;修回日期:2015-11-29 基金项目:江西科技学院2014年度校级自然科学研究项目(ZR14QN05);2010年江西省特色专业建设项目 作者简介:贾凯华(1975-),女,硕士研究生. 中图分类号:P204 文献标识码:A 文章编号:1006-7949(2016)10-0064-05 A new window feature extraction method JIA Kaihua,LI hezhi,WU Zemin (NanchangKeyLaboratoryofMaterialandStructureDetection,JiangxiUniversityofTechnology,Nanchang330029,China) Abstract:It is a hot topic for scholars on windows extraction and structure identification in the reconstruction of building facades.As to the application requirement of character extraction,this paper puts forward a set of local search algorithms-climbing for window information extraction method,and introduces the principle and method,which can accurately and effectively extract the laser scanning data information window.This method of ground laser scanning system can process the test data in details,and propose a visual expression for the results . Key words:buildings;laser scanning;feature extraction;climbing method