留言板

尊敬的读者、作者、审稿人, 关于本刊的投稿、审稿、编辑和出版的任何问题, 您可以本页添加留言。我们将尽快给您答复。谢谢您的支持!

姓名
邮箱
手机号码
标题
留言内容
验证码

基于栅格填充的直角多边形建筑物轮廓规则化方法

王伟玺 杜靖 李晓明 胡翰 许文波 郭晗 丁雨淋

王伟玺, 杜靖, 李晓明, 胡翰, 许文波, 郭晗, 丁雨淋. 基于栅格填充的直角多边形建筑物轮廓规则化方法[J]. 武汉大学学报 ● 信息科学版, 2018, 43(2): 318-324. doi: 10.13203/j.whugis20160071
引用本文: 王伟玺, 杜靖, 李晓明, 胡翰, 许文波, 郭晗, 丁雨淋. 基于栅格填充的直角多边形建筑物轮廓规则化方法[J]. 武汉大学学报 ● 信息科学版, 2018, 43(2): 318-324. doi: 10.13203/j.whugis20160071
WANG Weixi, DU Jing, LI Xiaoming, HU Han, XU Wenbo, GUO Han, DING Yulin. A Grid Filling Based Rectangular Building Outlines Regularization Method[J]. Geomatics and Information Science of Wuhan University, 2018, 43(2): 318-324. doi: 10.13203/j.whugis20160071
Citation: WANG Weixi, DU Jing, LI Xiaoming, HU Han, XU Wenbo, GUO Han, DING Yulin. A Grid Filling Based Rectangular Building Outlines Regularization Method[J]. Geomatics and Information Science of Wuhan University, 2018, 43(2): 318-324. doi: 10.13203/j.whugis20160071

基于栅格填充的直角多边形建筑物轮廓规则化方法

doi: 10.13203/j.whugis20160071
基金项目: 

深圳市数字城市工程专项 [2015]0082

国家自然科学基金 41301439

测绘遥感信息工程国家重点实验室开放基金 15I03

国土资源部城市土地资源监测与仿真重点实验室开放基金 KF-2015-01-052

详细信息
    作者简介:

    王伟玺, 博士, 高级工程师, 主要从事影像三维建模、激光扫描处理、InSAR研究。measurer@163.com

    通讯作者: 李晓明, 博士, 高级工程师。lxmingster@163.com
  • 中图分类号: P231

A Grid Filling Based Rectangular Building Outlines Regularization Method

Funds: 

The Special Fund for Shenzhen Digital City Engineering [2015]0082

the National Natural Science Foundation of China 41301439

the LIESMARS Open Fund 15I03

the Open Fund of Key Laboratory of Urban Land Resources Monitoring and Simulation, Ministry of Land and Resources KF-2015-01-052

More Information
    Author Bio:

    WANG Weixi, PhD, senior engineer, specializes in 3D modeling from image, LiDAR and InSAR. E-mail: measurer@163.com

    Corresponding author: LI Xiaoming, PhD, senior engineer. E-mail: lxmingster@163.com
图(14) / 表(2)
计量
  • 文章访问数:  1354
  • HTML全文浏览量:  133
  • PDF下载量:  538
  • 被引次数: 0
出版历程
  • 收稿日期:  2016-10-10
  • 刊出日期:  2018-02-05

基于栅格填充的直角多边形建筑物轮廓规则化方法

doi: 10.13203/j.whugis20160071
    基金项目:

    深圳市数字城市工程专项 [2015]0082

    国家自然科学基金 41301439

    测绘遥感信息工程国家重点实验室开放基金 15I03

    国土资源部城市土地资源监测与仿真重点实验室开放基金 KF-2015-01-052

    作者简介:

    王伟玺, 博士, 高级工程师, 主要从事影像三维建模、激光扫描处理、InSAR研究。measurer@163.com

    通讯作者: 李晓明, 博士, 高级工程师。lxmingster@163.com
  • 中图分类号: P231

摘要: 智慧城市建设需要以城市全面感知与三维建模作为空间基础,而建筑物轮廓的自动提取和规则化则是建筑物三维建模的关键。现有的规则化方法由于只利用了轮廓的局部信息,存在拐点位置极难准确判断且容易漏判误判,规则化之后的轮廓并非规范正交等问题。提出一种基于栅格填充的规则化方法,利用轮廓的整体信息进行规则化,并利用图像处理中的腐蚀、膨胀算法进行优化,无需定位拐点且规则化结果规范正交。实验分析,该算法对噪声点的抑制力强,规则化结果与实际轮廓相似性高,尤其适用于从激光雷达扫描点云、倾斜摄影密集匹配点云中提取的直角多边形建筑物轮廓的规则化。

English Abstract

王伟玺, 杜靖, 李晓明, 胡翰, 许文波, 郭晗, 丁雨淋. 基于栅格填充的直角多边形建筑物轮廓规则化方法[J]. 武汉大学学报 ● 信息科学版, 2018, 43(2): 318-324. doi: 10.13203/j.whugis20160071
引用本文: 王伟玺, 杜靖, 李晓明, 胡翰, 许文波, 郭晗, 丁雨淋. 基于栅格填充的直角多边形建筑物轮廓规则化方法[J]. 武汉大学学报 ● 信息科学版, 2018, 43(2): 318-324. doi: 10.13203/j.whugis20160071
WANG Weixi, DU Jing, LI Xiaoming, HU Han, XU Wenbo, GUO Han, DING Yulin. A Grid Filling Based Rectangular Building Outlines Regularization Method[J]. Geomatics and Information Science of Wuhan University, 2018, 43(2): 318-324. doi: 10.13203/j.whugis20160071
Citation: WANG Weixi, DU Jing, LI Xiaoming, HU Han, XU Wenbo, GUO Han, DING Yulin. A Grid Filling Based Rectangular Building Outlines Regularization Method[J]. Geomatics and Information Science of Wuhan University, 2018, 43(2): 318-324. doi: 10.13203/j.whugis20160071
  • 智慧城市建设需要首先实现对城市的全面泛在感知和精细化三维建模,建立具有地理空间实体特征的城市三维实体模型,这是智慧城市建设的数据之源和空间基础[1]。而作为构筑城市主体的建筑物,其三维建模与表达成为城市空间三维建模的关键,建筑物轮廓的自动提取和规则化成为建筑物高效三维建模的必要前提。尽管现有很多方法提取建筑物轮廓,有基于高分遥感图像的[2],或是基于点云数据的[3-4],但提取的轮廓线都存在变形,若直接利用初提取的轮廓将严重影响工作成果的质量,若对其进行手工修复将大大降低工作效率。因此,需要一种方法对轮廓进行自动规则化。

    现有方法一般利用轮廓的局部信息对轮廓进行规则化,确定轮廓中的拐点位置及顺序再将拐点顺次连接构成轮廓线,或是提取轮廓中的直线再用直线组合轮廓[5]。事实上对轮廓中各直线端点的确定即是确定轮廓中的拐点,因此两种方法本质上都是定位轮廓中的拐点。如管子算法利用管子将曲折的轮廓线拟合成直线,其过程复杂且噪声抑制力不强[6];道格拉斯-普客算法的迭代端点法,迭代搜索轮廓线中距离大于阈值的点作为拐点,算法操作简单、效率高,但是阈值难以恰当设定,没有考虑多边形之间的邻接关系[7];迭代端点拟合法将轮廓分割成若干段,每段拟合成一条或两条直线,算法操作简单但效果不明显[8];矩形外接圆法以轮廓外接圆与轮廓对角线的交点作为拐点确定轮廓,算法简单效果好但只适应于矩形轮廓[9];另一种解决方式利用移动测量系统(mobile mapping system,MMS)的车载激光雷达,获取建筑物的立面点云[10],采用点投影密度法估计边界,由于车载激光雷达具有较高的精度和密度,所以正则化处理相对简单,但该方法局限性也十分明显,仅可估计道路两旁立面边界。

    轮廓中点与点之间的位置关系复杂并存在一些噪声点,轮廓线曲折且拐点处存在严重变形,因此准确定位轮廓拐点十分困难且容易漏判误判,规则化结果中各条边并非规范正交,这是目前算法共有的缺陷。为此,本文提出一种基于栅格填充的轮廓规则化方法,针对各边为直线且拐角为直角的轮廓,无需先定位拐点,直接提取填充到轮廓中的栅格的边界线作为初步规则化结果[11]; 针对初步规则化结果中边缘呈锯齿状问题,以栅格的角点为像素构建轮廓的二值图像,利用图像处理中的腐蚀、膨胀算法做进一步优化,最后利用二值图像边界提取算法提取优化结果。优化结果中的轮廓线与栅格的边界线重合,因此轮廓中的各条边规范正交。

    • 利用栅格填充法对轮廓进行规则化,主要思想是求出包含在轮廓内部的所有栅格,这些栅格可以拼成一个与原始轮廓相似的多边形,该多边形各条边均为直线且所有拐角均为直角,该多边形的外部轮廓即为原始轮廓规则化结果。该方法简单有效,但原始轮廓需要满足一定的条件才能有更好的效果。

      由于栅格按照水平和垂直方向划分,利用栅格填充法对轮廓进行规则化时,若轮廓的主方向非垂直或者水平,规则化结果中原本仅为一条直线的边将呈锯齿状。若主方向垂直或者水平,规则化结果则比较平整,如图 1所示。

      图  1  轮廓方向对规则化结果的影响

      Figure 1.  Influence of the Contour Direction on the Regularization Results

      若原始轮廓线近似直线,则轮廓内栅格组成的多边形即可作为轮廓规则化结果,但一般情况下原始轮廓各条边是十分曲折的,特别是从点云数据中提取的轮廓,轮廓中的直线实为若干条小线段连接而成。利用栅格填充方法对轮廓进行规则化时结果可能会存在凸点或者凹陷,这是由于轮廓线向外弯曲时可能恰好包含一个多余点,或者向内弯曲时恰好遗漏某个点,此时提取的轮廓中各条边将呈锯齿状,如图 2所示。

      图  2  锯齿状轮廓线

      Figure 2.  Jagged Contour Line

      为了使该算法更具有普适性,先对轮廓进行旋转,使轮廓主方向水平或者垂直之后再对轮廓进行填充,再以栅格的角点为像素构造轮廓的二值图像,对该图像进行腐蚀、膨胀操作使边界更平整,整个流程如图 3所示。

      图  3  栅格填充法算法流程

      Figure 3.  Process of Raster Filling Algorithm

    • 多边形的外接矩形一般有两种形式,其一是最小绑定矩形,即以多边形顶点中的最大、最小坐标确定的矩形;其二是最小面积外接矩形。本文规定轮廓的主方向为其最小面积外接矩形长或宽的方向。当轮廓旋转某一角度之后,其最小绑定矩形面积达到最小,此时本文认为已将轮廓主方向旋转至水平或者垂直方向。如图 4所示。

      图  4  多边形外接矩形

      Figure 4.  Polygon Circumscribed Rectangle

      确定轮廓主方向的步骤为:①从0°~90°以5°为步长旋转轮廓;②每个角度求一次最小绑定矩形面积;③使最小绑定矩形面积最小的角度为轮廓主方向的互余角。

      得到轮廓主方向的互余角之后,将轮廓主方向旋转至水平或者垂直之后再进行规则化,然后将规则化结果旋转至原来方向即可。轮廓旋转实为轮廓线上所有点的坐标旋转,旋转公式如式(1)所示,其中(x, y)为原始坐标,(x', y')为旋转后坐标。

      $$ \left[\begin{array}{l} {x'}\\ {y'} \end{array} \right] = \left[{\begin{array}{*{20}{c}} {\cos \left( \theta \right)}&{-\sin \left( \theta \right)}\\ {\sin \left( \theta \right)}&{\cos \left( \theta \right)} \end{array}} \right]\left[\begin{array}{l} x\\ y \end{array} \right] $$ (1)
    • 栅格是一个具有4个顶点的正方形,判断一个栅格是否在轮廓内部即是判断栅格的4个顶点是否都包含在轮廓内,因此求所有包含在轮廓内的栅格的问题可以转化为求所有包含在轮廓内的栅格交点的问题。依次选取所有的栅格交点,然后进一步将问题简化为一个二值问题:在二维坐标系中,给点一个定点P再依次给出一个多边形的所有顶点,判断点P是否在多边形内部,若在则进行标记。本文采用射线判断法。

      以点P为端点,向右方做射线L,由于多边形是有界的,所以射线L的右端一定在多边形外部,考虑沿着L从无穷远处开始自右向左移动。遇到和多边形的第一个交点的时候,进入到了多边形的内部,遇到第二个交点的时候,离开了多边形, 依此类推, 因而当L和多边形的交点数目m是奇数时P在多边形内,是偶数则P在多边形外,如图 5所示。

      图  5  射线法判断点是否在多边形内部

      Figure 5.  Judging Whether the Point Falls Inside of the Polygon with Ray Method

    • 对建筑物轮廓所有内部点标记完成后,要确定最外围点并确定其顺序。本文采用的边界跟踪算法思路为:边界跟踪从左上角的栅格交点开始逐点扫描,当遇到目标点时开始顺序跟踪,直到跟踪的后续点回到起始点[12]。设当前点P为一个边界点,则下一个边界点必定在点P的8邻域内,该邻域内8个点位置的坐标表示和编码表示如图 6所示。

      图  6  8邻域位置表示

      Figure 6.  The Eight Neighboring Location Expression

      根据前一点和当前点的相互位置可以大致确定出边界的走向,因此在对下一点的搜寻时不必再对当前点的8邻域进行计算比较,而可以根据前一点C和当前点P在位置上的不同(共8种可能的方向),对边缘方向上的5个像素按逆时针方向逐一进行计算比较即可,第一个搜索到的目标点即为下一个轮廓点,如图 7所示。

      图  7  候选点位置与前一点位置关系

      Figure 7.  Relationship Between Candidate Point and Previous Point

      本文的8邻域边界跟踪算法执行步骤如下。

      1) 轮廓外部点标记为0,内部点标记为1;

      2) 从左到右自上而下扫描图像,发现第一个像素为1的点即为边界的起始点P0,将其存入边界点序列表,位置编码设为0;

      3) 按如下准则搜索下一边界点:设当前点P在上一边界点C的8邻域内的位置编码为n,则从该位置逆时针方向移动2个像素的位置就是下一边界点的起始搜索位置。若不是边界点,则从搜索的起始点开始按照顺时针方向顺次搜索,最多搜索5次便可以找到下一个边界点,将边界点存入边界点列表并设置位置编码;

      4) 若当前边界点为P0则结束跟踪,否则重复步骤3);

      5) 最后将边界点列表中的点顺次连接即为规则化结果。

    • 原始轮廓各条边十分曲折时规则化之后提取的轮廓线会呈锯齿状,要解决该问题,只需将填充后包含的多余点删除、遗漏点补足即可。首先将所有内部点标记为1,外部点标记为0,以此构造二值化图像,如图 8所示。

      图  8  构造二值图像

      Figure 8.  Construct Binary Image

      构造二值图像之后利用8邻域腐蚀算子与膨胀算子对图像进行腐蚀、膨胀操作。

      腐蚀:依次扫描所有点,若某一点标记为1且该点8邻域内所有点都为1,则该点保持标记1,否则标记为0;

      膨胀:扫描所有标记为1的点,将该点8邻域内的点全部标记为1。

      经腐蚀膨胀之后图像中的多余点被剔除。将图像取反,进行腐蚀膨胀之后再取反,即可补充遗漏点,最后利用边界跟踪算法提取出边界,即为最后的规则化结果如图 9所示。

      图  9  根据腐蚀膨胀结果提取边界

      Figure 9.  Extract Boundary According to Erosion Expansion Results

    • 为了验证本文算法的有效性,选取深圳某区域点云数据中提取的建筑物轮廓进行规则化试验,首先对点云进行滤波,分离出地面点与非地面点,然后对非地面点进行分类,分离出屋顶点云,最后利用α-shape法提取出屋顶轮廓,将结果保存为shp文件。

      该区域中共提取出57个建筑物轮廓,每个轮廓由大量点组成,呈各种不规则形状且主方向各不相同,轮廓线曲折及其拐角处变形严重,如图 10(b)所示。进行规则化时栅格尺寸的选择将直接影响规则化结果,由于每个轮廓大小不同,形变程度不同,无法设置统一的栅格尺寸,因此根据每个轮廓的周长设置不同的尺寸。栅格尺寸越小,规则化轮廓与原始轮廓误差越小但轮廓线越曲折;尺寸越大,规则化轮廓越规整但与原始轮廓误差越大, 如图 10(c)~(f),栅格尺寸分别取轮廓的0.01倍、0.015倍、0.02倍、0.025倍,以在规则化程度与误差大小之间取平衡的方式选择栅格尺寸。针对试验中使用的数据,将栅格尺寸设为各轮廓周长的0.015倍时效果较好,结果如图 10(d)所示。原始轮廓与规则化轮廓10(d)对比如图 11所示。

      图  10  原始建筑物轮廓与规则化后建筑物轮廓栅格尺寸

      Figure 10.  Original Contour and Regular Contour with the Size of the Grid is 0.01 times, 0.015times, 0.02 times, 0.025 Times of the Circumference

      图  11  原始轮廓图 10(b)与规则化轮廓图 10(d)对比

      Figure 11.  Comparison Between Original Contour(b) and Regular Contour(d)

      同时对德国斯图加特某地区的建筑物轮廓进行规则化试验,轮廓提取方法与深圳市数据相同,从点云数据中分离出屋顶点云,最后利用α-shape法提取出屋顶轮廓。试验结果如图 12所示。

      图  12  原始轮廓与规则化轮廓及其对比

      Figure 12.  Comparison Between Original Contour and Regular Contour

      规则化之后轮廓中的每个点,在原始轮廓中搜索一个距离最小的点,两点距离记为d,利用式(2)计算均方根值(RMS),以RMS作为规则化轮廓与原始轮廓相似度的评价指标。

      $$ {\rm{RMS}} = \sqrt {\frac{{\sum {{d^2}} }}{N}} $$ (2)

      表 1  深圳市数据计算结果(部分)

      Table 1.  Shenzhen Data Calculation Results(Part)

      轮廓(周长大于150 m) 轮廓(周长小于150 m)
      总计轮廓数:27 总计轮廓数:30
      平均RMS:1.71 平均RMS:1.29
      合计
      总计轮廓数:57
      平均RMS:1.49

      表 2  斯图加特数据计算结果(部分):

      Table 2.  Stuttgart Data Calculation Results(Part)

      轮廓(周长大于60 m) 轮廓(周长小于60 m)
      总计轮廓数:98 总计轮廓数:126
      平均RMS:1.496 平均RMS:0.735
      合计
      总计轮廓数:224
      平均RMS:1.068

      根据实验结果可以看出,规则化之后的轮廓与原始轮廓相似性较高,当周长增大时栅格边长也增大,导致相似性降低。由于轮廓在规则化过程中,要先旋转到主方向,在从主方向旋转到原始方向,两次旋转过程中坐标计算结果有精度丢失,导致规则化之后的轮廓相比原始轮廓在位置上有少量偏移,这也导致RMS值增大。

      从点云中提取的原始轮廓与真实轮廓有误差,而规则化轮廓与原始轮廓同样有误差,两个误差可能会叠加,导致规则化轮廓与真实轮廓误差远远大于原始轮廓与真实轮廓的误差,因此需要将规则化轮廓、原始轮廓分别与真实轮廓进行对比,验证两个误差是否叠加在一起。真实轮廓为对照正射影像手工勾画,确保与真实建筑物轮廓保持一致,得到真实轮廓图,以及真实轮廓与原始轮廓、规则化轮廓的对比如图 13所示。

      图  13  真实轮廓与原始提取轮廓及规则化后轮廓对比

      Figure 13.  Comparison Between Real Contour and Original Contour and Regular Contour

      深圳数据对比结果如下:

      管子算法的规则化轮廓与真实轮廓对比结果为:轮廓数为57;平均RMS为2.38。为了对比本文算法与其他算法的效果,本文对管子算法[6]进行了解算,并同样对图 10(b)所示原始轮廓进行规则化,规则化结果以及与真实轮廓对比如图 14所示。

      图  14  管子算法规则化轮廓与真实轮廓对比

      Figure 14.  Comparison Between the Regular Contour of Sleeve Algorithm and Real Contour

      从结果对比来看,真实轮廓的拐角中存在一些钝角或者锐角,本文算法规则化之后轮廓中的拐角被强制规则化为直角,而管子算法规则化之后轮廓中的拐角保持原来角度,因此相比管子算法, 本文算法规则化轮廓与真实轮廓误差稍大一些。虽然将轮廓拐角规则化为直角增加了误差,但规则化之后轮廓皆为直角多边形。

    • 本文介绍的基于栅格填充的轮廓规则化算法,可以有效地对建筑物轮廓进行规则化,尤其适用于轮廓线由大量点表示、轮廓线本身十分曲折的轮廓,且方法简单容易实现,不需要复杂的计算过程。规则化过程与轮廓线中点的数量、点之间的位置关系无关,对噪声点的抑制力强,尤其适用于由点云提取的建筑物轮廓的规则化。但规则化之后轮廓中的拐角只能是直角,因此当轮廓存在钝角或者锐角时,规则化结果会出现阶梯状轮廓线。

参考文献 (12)

目录

    /

    返回文章
    返回