[发明专利]基于点云的提取建筑特征线方法和系统有效
申请号: | 201610565366.2 | 申请日: | 2016-07-18 |
公开(公告)号: | CN107633523B | 公开(公告)日: | 2021-04-16 |
发明(设计)人: | 陈成华 | 申请(专利权)人: | 巧夺天宫(深圳)科技有限公司 |
主分类号: | G06T7/13 | 分类号: | G06T7/13 |
代理公司: | 深圳中一联合知识产权代理有限公司 44414 | 代理人: | 李艳丽 |
地址: | 518000 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 提取 建筑 特征 方法 系统 | ||
1.一种基于点云的提取建筑特征线方法,其特征在于,包括:
从海量点云平面数据中取出多个平面;
在所述多个平面中取出两个平面,判断两个平面是否相交;
若所述两个平面相交,则计算并提取所述两个平面的交线;
判断所述多个平面中是否还有其他两个相交的平面,若是,则返回计算并提取所述两个平面的交线的步骤,若否,则结束流程;
所述判断两个平面是否相交具体包括:
计算所述两个平面的夹角,根据所述夹角判断所述两个平面是否平行;
若不平行,则判断所述两个平面在棱线附近是否都存在扫描点;
若所述两个平面的棱线附近都存在扫描点,则说明所述两个平面相交;
所述根据所述夹角判断所述两个平面是否平行,包括:
计算数据点云的法向量,搜索点的k个邻近点,根据k个点的坐标拟合平面,平面拟合方程为
AX+BY+CZ-1=0 (1-1)
对平面上扫描点数为k=3,则平面可唯一确定,如果k3,则要进行最小二乘拟合求解平面特征参数,根据(1-1)式对平面所有的观测,即对“1”观测,观测方程为
式中X,Y,Z是平面上扫描点坐标,误差方程为
平差后平面的单位法线向量为
拟合误差为
式中V=[v1 v2 … vk]T,若拟合误差小于给定的阈值,则将拟合平面的单位法向量n=(n1,n2,n3)作为这k个点的法向量,若拟合误差大于给定的阈值,则该点处在棱角附近或者为噪声点不参与聚类;
每一类点按公式(1-1)拟合一个平面,得到其法向量n,m,按公式(1-6)计算每两个平面法向量的夹角γ:
γ=arccos(n·m) (1-6)
通过夹角γ判断两平面是否平行;
所述判断所述两个平面在棱线附近是否都存在扫描点,具体包括:
E1、E2为两个平面点集,按公式(1-1)拟合平面,得到两个平面的单位法向量为n=(n1,n2,n3)和m=(m1,m2,m3),则两个平面的Hesse标准公式
交线为L=E1∩E2,则交线方程为
交线L的单位法向量l=n×m=(l1,l2,l3);
坐标转化的方式为:将交线法向量l旋转到l0=(0,0,1),旋转矩阵R由下式计算
式中sin H=l1,使用公式(1-8)对E1、E2进行坐标转换,
转换之后同一平面点的x,y坐标在一条直线上,即将转换后两平面点云投影到XOY平面后为两条直线,交线L投影到XOY平面后为一个点g;
E′1、E′2为旋转后的两平面点云在交点g的r邻域内的点集,若E′1、E′2均为非空集合,计算点集E′1、E′2中z坐标的范围,分别为{z|min z1≤z≤max z1}、{z|min z2≤z≤max z2},按公式(1-9)计算两个点集z坐标的范围的交集{z|min z≤z≤max z}:
若min z<max z,则证明两个点集z坐标的范围的交集不为空,则两平面相交;
所述计算并提取所述两个平面的交线具体包括:对E1、E2按公式(1-8)进行旋转,l旋转到l0=(0,0,1),某已知P点旋转后坐标为(xP,yP,zP),E1、E2旋转后为E′1、E′2,这时交线上所有的点的x、y坐标为常数,即xP、yP,只需确定z坐标;
xP、yP的计算方式为:对E′1、E′2中的x,y坐标,分别按公式(1-12)拟合直线,
Ax+By-1=0 (1-12)得到两条直线的参数分别为A1、B1,A2、B2,两条直线的交点坐标即为xP、yP,按下式计算xP、yP的值:
按公式(1-9)计算E′1、E′2中z坐标的范围的交集,设定填补的棱线点间距为S,则填补点个数N为:
则交线的第i个点坐标为:
2.一种基于点云的提取建筑特征线系统,其特征在于,包括:
取出模块,用于从海量点云平面数据中取出多个平面;
第一判断模块,用于在所述多个平面中取出两个平面,判断两个平面是否相交;
交线计算模块,用于判定若所述两个平面相交,则计算并提取所述两个平面的交线;
所述第一判断模块,还用于判断所述多个平面中是否还有其他两个相交的平面,若是,则控制所述交线计算模块计算并提取所述两个相交的平面的交线;
所述第一判断模块具体还包括:
第一判断单元,用于计算所述两个平面的夹角,根据所述夹角判断所述两个平面是否平行;
第二判断单元,用于若两平面不平行,则判断所述两个平面在棱线附近是否都存在扫描点;
若所述两个平面的棱线附近都存在扫描点,则说明所述两个平面相交;
所述第一判断单元具体用于:
计算数据点云的法向量,搜索点的k个邻近点,根据k个点的坐标拟合平面,平面拟合方程为
AX+BY+CZ-1=0 (1-1)
对平面上扫描点数为k=3,则平面可唯一确定,如果k3,则要进行最小二乘拟合求解平面特征参数,根据(1-1)式对平面所有的观测,即对“1”观测,观测方程为
式中X,Y,Z是平面上扫描点坐标,误差方程为
平差后平面的单位法线向量为
拟合误差为
式中V=[v1 v2 … vk]T,若拟合误差小于给定的阈值,则将拟合平面的单位法向量n=(n1,n2,n3)作为这k个点的法向量,若拟合误差大于给定的阈值,则该点处在棱角附近或者为噪声点不参与聚类;
每一类点按公式(1-1)拟合一个平面,得到其法向量n,m,按公式(1-6)计算每两个平面法向量的夹角γ:
γ=arccos(n·m) (1-6)
通过夹角γ判断两平面是否平行;
所述第二判断单元具体用于:
E1、E2为两个平面点集,按公式(1-1)拟合平面,得到两个平面的单位法向量为n=(n1,n2,n3)和m=(m1,m2,m3),则两个平面的Hesse标准公式
交线为L=E1∩E2,则交线方程为
交线L的单位法向量l=n×m=(l1,l2,l3);
坐标转化:将交线法向量l旋转到l0=(0,0,1),旋转矩阵R由下式计算
式中sin H=l1,使用公式(1-8)对E1、E2进行坐标转换,
转换之后同一平面点的x,y坐标在一条直线上,即将转换后两平面点云投影到XOY平面后为两条直线,交线L投影到XOY平面后为一个点g;
E′1、E′2为旋转后的两平面点云在交点g的r邻域内的点集,若E′1、E′2均为非空集合,计算点集E′1、E′2中z坐标的范围,分别为{z|min z1≤z≤max z1}、{z|min z2≤z≤max z2},按公式(1-9)计算两个点集z坐标的范围的交集{z|min z≤z≤max z}:
若min z<max z,则证明两个点集z坐标的范围的交集不为空,则两平面相交,填补两平面的交线点;
所述交线计算模块具体用于:
E1、E2为两个平面点集,按公式(1-1)拟合平面,得到两个平面的单位法向量为n=(n1,n2,n3)和m=(m1,m2,m3),则两个平面的Hesse标准公式
交线为L=E1∩E2,则交线方程为
交线L的单位法向量l=n×m=(l1,l2,l3);
对E1、E2按公式(1-8)进行旋转,l旋转到l0=(0,0,1),某已知P点旋转后坐标为(xP,yP,zP),E1、E2旋转后为E′1、E′2,这时交线上所有的点的x、y坐标为常数,即xP、yP,只需确定z坐标;
xP、yP的计算方式为:对E′1、E′2中的x,y坐标,分别按公式(1-12)拟合直线,
Ax+By-1=0 (1-12)
得到两条直线的参数分别为A1、B1,A2、B2,两条直线的交点坐标即为xP、yP,按下式计算xP、yP的值:
按公式(1-9)计算E′1、E′2中z坐标的范围的交集,设定填补的棱线点间距为Δ,则填补点个数N为:
则交线的第i个点坐标为:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于巧夺天宫(深圳)科技有限公司,未经巧夺天宫(深圳)科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610565366.2/1.html,转载请声明来源钻瓜专利网。