基于四旋翼无人机激光雷达系统的城市地形三维重建方法与流程

文档序号:17087467发布日期:2019-03-13 23:01阅读:474来源:国知局
基于四旋翼无人机激光雷达系统的城市地形三维重建方法与流程

本发明机器视觉领域,具体的说是一种基于四旋翼无人机lidar系统的城市地形三维重建方法。



背景技术:

随着无人机技术的发展,消费级无人机价格不断下降,以及激光雷达的小型化便携化,中小型无人机搭载激光雷达进行地理测绘成为可能。目前无人机lidar测绘普遍使用地面标靶定位和地面基站配合的方式,但使用起来对不同地貌的适应能力性不强,需要提前人为勘探,去测绘地点周围树立标靶,过程繁琐效率低。同时取得的点云数据需要在基站进行离线处理,实时性不够好。

近年来,随着计算机视觉的发展和图形计算能力的增强,也出现了依靠序列式图像从运动中恢复结构的方法来对城市地形进行三维建模的技术,但通过拍摄图片建模精度不够高,容易出现模型空洞和扭曲,建模后的调整依赖人为参与,进行手工编辑和优化。导致模型不够精准,容易混入人为主观因素。诸如百度地图等地图的三维地图功能也依赖于人工建模,自动化建模比例较低。



技术实现要素:

本发明为了解决上述现有技术存在的不足之处,提供一种基于四旋翼无人机激光雷达系统的城市地形三维重建方法,以期能够快速低成本的对一片目标区域进行扫描,从而实现自动化实时城市地形的三维重建,并保证较高的建模精度和较好的鲁棒性。

为解决上述技术问题,本发明采用如下技术方案是:

本发明一种基于四旋翼无人机激光雷达系统的城市地形三维重建方法的特点是按如下步骤进行:

步骤1、数据获取:

步骤1.1、利用四旋翼无人机上的机载gps实时获取自身rmc格式的定位信息集合并按照顺序逐帧发送给地面基站用于存储,其中任意第α条定位信息包括:第α个gps时间戳rmcα.timestamp,第α个经纬度rmcα.position,第α个航向信息rmcα.track;

步骤1.2、利用四旋翼无人机上的机载激光雷达获取城市地形数据集合d并按照顺序逐帧发送给地面基站用于存储,其中任意第j条城市地形数据dj包含:第j个点号dj.pointid、第j个空间坐标点(xj,yj,zj)、第j个调节时间dj.adjustedtime、第j个方位角dj.azimuth、第j个距离dj.distance、第j个反射强度dj.intensity、第j个雷达通道dj.laser_id、第j个点时间戳dj.timestamp;

步骤2、数据整合:

从所述城市地形数据集合d和定位信息集合中选取满足式(1)的各条城市地形数据和定位信息,从而得到n个数据并构成数据集pfit:

dj.timestamp=rmcα.timestamp(1)

步骤3、坐标系转换:

步骤3.1、利用式(2)将所述数据集pfit中第i个数据中的空间坐标点(xi,yi,zi)平移到第一条数据中的空间坐标点的坐标系中,从而得到平移后的第i个空间坐标点(xi′,yi′,zi′),进而得到平移后的n个空间坐标点:

式(2)中,t(tx,ty,tz)表示平移矩阵,并通过第i条数据中的经纬度获得,i=1,2,…,n;

步骤3.2、利用式(3)将所述数据集pfit中平移后的第i个空间坐标点(x′i,y′i,z′i)绕x轴进行旋转,得到旋转后的第i个空间坐标点(x″i,y″i,z″i),进而得到旋转后的n个空间坐标点:

式(3)中,rx(θ)表示旋转角矩阵,并通过第i条数据中的航向信息获得;

将所述旋转后的n个空间坐标点作为n个点云数据,并记为p={p1,p2,...,pi,...,pn};其中,pi表示旋转后的第i个空间坐标点(x″i,y″i,z″i);

步骤4、点云去噪:

步骤4.1、利用阈值法获得所述n个点云数据pn中的无效点云数据并将所述无效点云数据清零,从而得到去除后的点云数据集;

步骤4.2、利用距离和数量双约束的knn算法来对所述去除后的点云数据集进行去噪和平顺处理,得到去噪后的点云数据集;

步骤5、点云抽稀:

使用基于k-means++聚类的点云精简算法对所述去噪后的点云数据集进行抽稀处理,得到抽稀后的点云数据;

步骤6、对所述稀后的点云数据可视化处理,从而得到城市地形的三维点云模型。

本发明所述的城市地形三维重建方法的特点也在于,所述步骤4.2是按如下过程进行:

步骤4.2.1、初始化m=1,定义参数r;令表示去除后的点云数据集中的任意一点;

步骤4.2.2、利用knn算法搜索处于以为球心,以r为半径的第m个球内的近邻点;

步骤4.2.3、如果第m个球内的近邻点数少于所设定的阀值数量n,则表示任意一点为噪声点并去除,再执行步骤4.2.5;否则执行步骤4.2.4;

步骤4.2.4、计算第m个球内所有点的重心om,并计算任意一点到重心oi的距离dis(om,pm),如果dis(om,pm)<c×r,则不作处理,否则,利用式(4)将任意一点按概率和权重w向重心移动,得到移动后的第m个点

式(4)中,c和w是分别处于0到1之间的一个常数,d是随机数阀值;

步骤4.2.5、将m+1赋值给m,m≥n是否成立,若成立,则表示得到去噪后的点云数据集,记为否则,返回步骤4.2.2。

所述步骤5是按如下过程进行:

步骤5.1、定义变量v,并初始化v=1;利用式(5)得到聚类中心的个数k;

式(5)中,g是一个比例系数,且为大于1的常数,ceil(·)表示向上取整函数;

步骤5.2、从去噪后的点云数据集中随机选取第v个点cv加入初始点集c;

步骤5.3、计算第m个点与第v个点cv之间的距离平方sm,v,从而得到m个点与所选取的点cv之间的距离平方集合sv={s1,v,s2,v,…,sm,v,…,sm,v};

步骤5.4、从距离平方集合sv中选取最大值所对应的点作为第v+1个点cv+1并加入初始点集c;

步骤5.5、判断v+1>k是否成立,若成立,则执行步骤5.6;否则,返回步骤5.3;

步骤5.6、利用k-means算法对所述初始点集c进行聚类,得到k个聚类中心,记为c'={c′1,c′2,...,c′v,...,c′k}并作为抽稀后的点云数据集。

与现有技术相比,本发明有益效果体现在:

1、本发明使用电驱无人机和激光雷达采集点云,不需要油动飞行器和飞行员即可完成每一架次采集任务,使用成本低,采集周期短;软件自动处理和建模,不需要复杂的前期勘探和后期模型制作,从而避免了人工干预带来的误差,鲁棒性高;

2、本发明采用时间戳数据整合方法可以有效的匹配gps数据和激光雷达数据,加快了数据整合的速度,提高了从海量点云数据中提取有效数据的效率,可以对不同类型的地形进行三维重建。

3、本发明采用距离和数量双约束的knn算法可以自动去除离群点和噪点,同时能够对点云进行一定程度的平滑,加快了去燥速度。

4、本发明采用基于k-means++聚类的点云精简算法可以很好的保持原点云的几何特征和宏观外形,减少了相邻帧扫描点云的重叠度,克服了匹配误差和近表面噪点带来的点云夹层化问题。

附图说明

图1为本发明方法流程示意图;

图2为本发明方法实施系统示意图;

图中标号:1无人机平台;2激光雷达;3gps模块;4无线发射模块;5计算机;6地表。

具体实施方式

本实施例中,如图1所示,一种基于四旋翼无人机激光雷达系统的城市地形三维重建方法是按如下步骤进行:

步骤1、数据获取:

步骤1.1、利用四旋翼无人机上的机载gps实时获取自身rmc格式的定位信息集合并按照顺序逐帧发送给地面基站用于存储,其中任意第α条定位信息包括:第α个gps时间戳rmcα.timestamp,第α个经纬度rmcα.position,第α个航向信息rmcα.track;

步骤1.2、利用四旋翼无人机上的机载激光雷达获取城市地形数据集合d并按照顺序逐帧发送给地面基站用于存储,其中任意第j条城市地形数据dj包含:第j个点号dj.pointid、第j个空间坐标点(xj,yj,zj)、第j个调节时间dj.adjustedtime、第j个方位角dj.azimuth、第j个距离dj.distance、第j个反射强度dj.intensity、第j个雷达通道dj.laser_id、第j个点时间戳dj.timestamp,其中空间坐标点所处笛卡尔坐标系是以雷达质心为原点,雷达质心与扫描90度的连线为x轴正方向,雷达质心与扫描0度的连线为y轴正方向,垂直激光发射器旋转台的旋转平面向下方向为z轴正方向,每条数据坐标点的空间坐标系都以雷达质心此刻位置为原点;

步骤2、数据整合:

从城市地形数据集合d和定位信息集合中选取满足式(1)的各条城市地形数据和定位信息,从而得到n个数据并构成数据集pfit,pfit中任意第i条城市地形数据包含:第i个点号第i个空间坐标点(xi,yi,zi)、第i个调节时间第i个方位角第i个距离第i个反射强度第i个雷达通道第i个点时间戳第i个经纬度第i个航向信息即pfit为p中满足式(1)的数据与rmc中满足式(1)的数据的并集:

dj.timestamp=rmcα.timestamp(1)

步骤3、坐标系转换:将每一帧点云数据统一转换到第一帧的坐标系中,先平移再旋转

步骤3.1、利用式(2)将数据集pfit中第i个数据中的空间坐标点(xi,yi,zi)平移到第一条数据中的空间坐标点的坐标系中,从而得到平移后的第i个空间坐标点(x′i,y′i,z′i),进而得到平移后的n个空间坐标点:

式(2)中,t(tx,ty,tz)表示平移矩阵,并通过第i条数据中的经纬度获得,i=1,2,…,n;

步骤3.2、利用式(3)将数据集pfit中平移后的第i个空间坐标点(xi′,yi′,zi′)绕x轴进行旋转,得到旋转后的第i个空间坐标点(x″i,y″i,z″i),进而得到旋转后的n个空间坐标点:

式(3)中,rx(θ)表示旋转角矩阵,并通过第i条数据中的航向信息获得;

将旋转后的n个空间坐标点作为n个点云数据,并记为p={p1,p2,...,pi,...,pn};其中,pi表示旋转后的第i个空间坐标点(x″i,y″i,z″i);

步骤4、点云去噪:

步骤4.1、利用阈值法获得n个点云数据pn中的无效点云数据,本实例中将雷达扫描平面的上半面,即方位角azimuth处于180°到360°的点,以及离雷达距离过近,即距离值distance小于1m的不符合要求的点云数据清零从而得到去除后的点云数据集;

步骤4.2、利用距离和数量双约束的knn算法来对去除后的点云数据集进行去噪和平顺处理,得到去噪后的点云数据集;

步骤4.2.1、初始化m=1,定义参数r;令表示去除后的点云数据集中的任意一点;

步骤4.2.2、利用knn算法搜索处于以为球心,以r为半径的第m个球内的近邻点;

步骤4.2.3、如果第m个球内的近邻点数少于所设定的阀值数量n,则表示任意一点为噪声点并去除,再执行步骤4.2.5;否则执行步骤4.2.4;

步骤4.2.4、计算第m个球内所有点的重心om,并计算任意一点到重心oi的距离dis(om,pm),如果dis(om,pm)<c×r,则不作处理,否则,利用式(4)将任意一点按概率和权重w向重心移动,得到移动后的第m个点

式(4)中,c和w是分别处于0到1之间的一个常数,d是随机数阀值,引入概率是为了防止出现过度聚集,分别通过距离c×r和数量n对点云数据进行双重约束;

步骤4.2.5、将m+1赋值给m,m≥n是否成立,若成立,则表示得到去噪后的点云数据集,记为否则,返回步骤4.2.2;

步骤5、点云抽稀:

使用基于k-means++聚类的点云精简算法对去噪后的点云数据集进行抽稀处理,得到抽稀后的点云数据;具体的说,

步骤5.1、定义变量v,并初始化v=1;利用式(5)得到聚类中心的个数k;

式(5)中,m是点云总数量,k为抽稀后的点云个数,可以通过g来调节抽稀的效果,g是一个比例系数,且为大于1的常数,ceil(·)表示向上取整函数;

步骤5.2、从去噪后的点云数据集中随机选取第v个点cv加入初始点集c;

步骤5.3、计算第m个点与第v个点cv之间的距离平方从而得到m个点与所选取的点cv之间的距离平方集合sv={s1,v,s2,v,…,sm,v,…,sm,v};

步骤5.4、从距离平方集合sv中选取最大值所对应的点作为第v+1个点cv+1并加入初始点集c;

步骤5.5、判断v+1>k是否成立,若成立,则执行步骤5.6;否则,返回步骤5.3;

步骤5.6、利用k-means算法对初始点集c进行聚类,得到k个聚类中心,记为c'={c′1,c′2,...,c′v,...,c′k}并作为抽稀后的点云数据集;

其中k-means聚类过程是:

步骤5.6.1首先将上述初始点集c={c1,c2,...,cv,...,ck}作为初始聚类中心;

步骤5.6.2然后分别计算周围点到这些聚类中心的距离,按照距离的靠近程度将剩余点划分到不同的类中,计算类中各点到聚类中心的距离方差;

步骤5.6.3针对每一个类别ci,重新计算聚类中心即属于该类的所有点的质心,用该质心替换初始聚类中心,

步骤5.6.4重复步骤5.6.2,得到聚类中心位置不再变化的k个聚类中心。

步骤6、对稀后的点云数据可视化处理,从而得到城市地形的三维点云模型。点云rgb值按照坐标系z轴高程值由小到大,由蓝色向红色逐渐渐变。

图2所示为本发明方法实施系统示意图,无人机平台1搭载激光雷达2、gps模块3和无线发射模块4,对地表6发射激光并接收,将gps的rmc数据和地形点云数据通过无线发射模块4传输给计算机5,在计算机5中按本发明方法进行数据处理,最终获得地表的三维重建模型。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1