发明名称 一种从地面LiDAR数据中提取建筑物轮廓和角点的方法
摘要 本发明涉及一种从地面LiDAR数据中提取建筑物轮廓和角点的方法,首先使用分层次的格网密度方法从地面LiDAR数据中提取建筑物轮廓;在此基础上使用轮廓延伸密度方法对提取的建筑物轮廓进行恢复,即得到完整的建筑物轮廓;若需提取角点则将完整的建筑物轮廓投影到三维坐标系的XY平面内寻找二维相交点,如果任两条构成相交点的轮廓的高程差小于1m,则判定两条轮廓在实际的三维空间中相交,两条轮廓的相交点为一个地面角点,并将所述两条轮廓的高程均值作为该地面角点的高程。本发明所用的格网密度方法、格网密度阈值的理论估计确定方法、轮廓密度延伸的方法,保证了从地面LiDAR数据中提取准确的建筑物轮廓线段和高精度的地面角点;并且实现了自动化提取,大大提高了数据处理效率。
申请公布号 CN103020342B 申请公布日期 2015.07.15
申请号 CN201210512462.2 申请日期 2012.12.04
申请人 南京大学 发明人 李满春;程亮;童礼华;陈焱明;刘永学;王结臣;钟礼山;张雯;陈小雨;孙越凡
分类号 G06F17/50(2006.01)I 主分类号 G06F17/50(2006.01)I
代理机构 南京同泽专利事务所(特殊普通合伙) 32245 代理人 石敏
主权项 一种从地面LiDAR数据中提取建筑物轮廓的方法,包括如下步骤:1a)地面LiDAR点云投影至XY平面——将地面LiDAR点云投影至三维坐标系的XY平面,并保留各个点的X、Y、Z属性;1b)提取粗略轮廓格网——构建1m*1m的粗略格网,计算每个粗略格网中LiDAR投影点的数量,即得到该粗略格网的格网密度,根据建筑物边缘轮廓处的粗略格网密度阈值对所述粗略格网进行筛选,保留格网密度大于所述粗略格网密度阈值的粗略格网,得到粗略轮廓格网;1c)提取精确轮廓格网——在粗略轮廓格网中构建0.2m*0.2m的精细格网,计算精细格网内LiDAR投影点的数量即得到精细格网的格网密度,根据建筑物边缘轮廓处的精细格网密度阈值对所述精细格网进行筛选,保留格网密度大于所述精细格网密度阈值的精细格网,得到精确轮廓格网;1d)格网高差筛选——遍历所有精确轮廓格网,如果精确轮廓格网内的最高LiDAR点和最低LiDAR点的高差大于相应实验区建筑最低高程则保留该精确轮廓格网,否则剔除;1e)获取轮廓线段——对筛选后的精确轮廓格网使用Hough变换得到二维矢量轮廓线段;1f)二维轮廓转化为三维轮廓——寻找步骤1e)中获得的二维矢量轮廓线段周边1m范围内格网,将寻找到的所有格网内LiDAR点最大高程的平均值作为二维矢量轮廓线段的高程,将二维矢量轮廓线段变换为三维建筑物轮廓线段;步骤1b)和1c)中的格网密度阈值的确定方法如下:假设O点为仪器中心点,A点为水平垂直于仪器的墙面点,扫描仪对准A点时的角度为0°,B点为格网靠近仪器一侧,C点为格网远离仪器一侧,D点为B点竖直方向上墙面最高点,设OA=D<sub>V</sub>,CO=D<sub>M</sub>,水平方向格网的边长为D<sub>G</sub>,建筑高H<sub>B</sub>,仪器高H<sub>L</sub>,在A点处水平向相邻两LiDAR点的间距为D<sub>R</sub>,则格网密度计算方法如下:2a)计算水平方向格网内LiDAR点的列数,记α为扫描仪每次旋转角度的一半,<img file="FDA0000713845040000021.GIF" wi="423" he="141" />记格网中水平方向上最靠近于B点的角度为β,<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><mi>&beta;</mi><mo>=</mo><mrow><mo>(</mo><mn>2</mn><mo>*</mo><mo>[</mo><mfrac><mrow><mi>arctan</mi><mrow><mo>(</mo><mrow><mo>(</mo><msqrt><msubsup><mi>D</mi><mi>M</mi><mn>2</mn></msubsup><mo>-</mo><msubsup><mi>D</mi><mi>V</mi><mn>2</mn></msubsup></msqrt><mo>-</mo><msub><mi>D</mi><mi>G</mi></msub><mo>)</mo></mrow><mo>/</mo><msub><mi>D</mi><mi>V</mi></msub><mo>)</mo></mrow><mo>-</mo><mi>&alpha;</mi></mrow><mrow><mn>2</mn><mo>*</mo><mi>&alpha;</mi></mrow></mfrac><mo>]</mo><mo>+</mo><mn>3</mn><mo>)</mo></mrow><mo>*</mo><mi>&alpha;</mi></mrow>]]></math><img file="FDA0000713845040000022.GIF" wi="1108" he="190" /></maths>则线段BC上LiDAR点数为<img file="FDA0000713845040000023.GIF" wi="689" he="160" />则水平方向格网内LiDAR点的列数为N<sub>col</sub>;2b)计算每一列LiDAR点的数量,第i列LiDAR点的数量为<maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><msubsup><mi>N</mi><mi>row</mi><mi>i</mi></msubsup><mo>=</mo><mo>[</mo><mfrac><mrow><mi>arctan</mi><mrow><mo>(</mo><mfrac><mrow><msub><mi>H</mi><mi>B</mi></msub><mo>-</mo><msub><mi>H</mi><mi>L</mi></msub></mrow><mrow><msub><mi>D</mi><mi>V</mi></msub><mo>/</mo><mi>cos</mi><mrow><mo>(</mo><mi>&beta;</mi><mo>+</mo><mi>i</mi><mo>*</mo><mn>2</mn><mo>*</mo><mi>&alpha;</mi><mo>)</mo></mrow></mrow></mfrac><mo>)</mo></mrow><mo>-</mo><mi>&alpha;</mi></mrow><mrow><mn>2</mn><mo>*</mo><mi>&alpha;</mi></mrow></mfrac><mo>]</mo><mo>+</mo><mo>[</mo><mfrac><mrow><mi>arctan</mi><mrow><mo>(</mo><mfrac><msub><mi>H</mi><mi>L</mi></msub><mrow><msub><mi>D</mi><mi>V</mi></msub><mo>/</mo><mi>cos</mi><mrow><mo>(</mo><mi>&beta;</mi><mo>+</mo><mi>i</mi><mo>*</mo><mn>2</mn><mo>*</mo><mi>&alpha;</mi><mo>)</mo></mrow></mrow></mfrac><mo>)</mo></mrow><mo>-</mo><mi>&alpha;</mi></mrow><mrow><mn>2</mn><mo>*</mo><mi>&alpha;</mi></mrow></mfrac><mo>]</mo><mo>+</mo><mn>3</mn><mo>;</mo></mrow>]]></math><img file="FDA0000713845040000024.GIF" wi="1726" he="305" /></maths>2c)将每列LiDAR点数量相加得到格网处LiDAR点总数<img file="FDA0000713845040000025.GIF" wi="284" he="130" />格网密度阈值threshod=rate*N,其中参数rate为描述墙面凹凸、窗户多少的阈值,墙面凹凸越多、窗户越多,则该参数越小,rate的取值范围为0.2‑1。
地址 210093 江苏省南京市鼓楼区汉口路22号