首页> 中国专利> 一种基于lsd‑slam的实景三维重建方法

一种基于lsd‑slam的实景三维重建方法

摘要

本发明公开了一种基于lsd‑slam的实景三维重建方法,包括以下步骤:S1,对待建模场景进行录像,采集覆盖建模场景的视频数据;S2,通过lsd‑slam建模技术从关键帧解算出关键帧姿态得到恢复三维信息的图像,并生成三维空间点云;S3,从恢复了三维信息的图像中按照空间位置关系选择出可以拼合成全景的图像,并生成全景图像;S4,将全景图像与三维空间点云纳入相同的空间参考系,并对三维数据进行单体化处理。获取并分析视频数据得到关键帧,分析关键帧以生成三维空间点云和全景图像,通过三维空间点云与全景图像实现三维重建,不对设备进行标定,不依赖硬件设备,同时采集全景数据和模型数据,解决目前三维重建存在的问题。

著录项

  • 公开/公告号CN106251399A

    专利类型发明专利

  • 公开/公告日2016-12-21

    原文格式PDF

  • 申请/专利权人 广州市绯影信息科技有限公司;

    申请/专利号CN201610755833.8

  • 发明设计人 陆子龙;

    申请日2016-08-30

  • 分类号G06T17/00(20060101);

  • 代理机构44253 广州致信伟盛知识产权代理有限公司;

  • 代理人伍嘉陵

  • 地址 510800 广东省广州市花都区新华街宝华路海关西街5号三层自编3A16室

  • 入库时间 2023-06-19 01:11:34

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-04-16

    授权

    授权

  • 2019-03-19

    著录事项变更 IPC(主分类):G06T17/00 变更前: 变更后: 申请日:20160830

    著录事项变更

  • 2017-01-18

    实质审查的生效 IPC(主分类):G06T17/00 申请日:20160830

    实质审查的生效

  • 2016-12-21

    公开

    公开

说明书

技术领域

本发明涉及计算机视觉领域的三维重建方法,尤其涉及一种基于lsd-slam的实景三维重建方法。

背景技术

三维重建是指对三维物体建立适合计算机表示和处理的数学模型,是在计算机环境下对其进行处理、操作和分析其性质的基础,也是在计算机中建立表达客观世界的虚拟现实的关键技术。通常的三维重建方法是先对摄像机进行标定, 即计算出摄像机的图象坐标系与世界坐标系的关系.然后利用多个二维图象中的信息重建出三维信息,基于摄影测量的三维重建方法在相片的光束法平差过程中,由于对残差进行分配,因此导致了光线的扭曲,使得三维模型的纹理出现扭曲变形,直观展示效果不如全景图像。

为保证三维重建的效果满足展示需求,目前通常使用全景图像进行三维重建,但是,全景图像的三维重建需要利用深度信息,目前深度信息的获取基本依赖于全景摄像机和RGB-D摄像机,这就直接导致了目前的全景图像三维重建硬件设备依赖性强,需要全景摄像机和RGB-D摄像机(具有测距传感器的摄像机)难以普及。其次,目前全景图像的三维重建依旧需要对全景摄像机和RGB-D摄像机进行标定,增加了工作量的同时累积了误差。并且,目前全景图像三维重建的全景数据和模型数据分开采集,效率低,基于sift算法的运算速度较慢。最后,目前全景图像的三维重建结果没有实现单体化,无法对三维实体进行对象化管理,难以满足深层次的应用需求。对此,目前全景图像的三维重建依旧存在前述种种亟待解决的问题。

发明内容

本发明提供了一种基于lsd-slam的实景三维重建方法,旨在提供一种不对设备进行标定,不依赖硬件设备,同时采集全景数据和模型数据的三维重建方法,进一步提供一种可对重建结果实现单体化的三维重建方法,解决目前全景图像的三维重建存在的问题。

本发明所述一种基于lsd-slam的实景三维重建方法,包括以下步骤:

S1,对待建模场景进行录像,采集覆盖建模场景的视频数据;

S2,通过lsd-slam建模技术从关键帧解算出关键帧姿态得到恢复三维信息的图像,并生成三维空间点云;

S3,从恢复了三维信息的图像中按照空间位置关系选择出可以拼合成全景的图像,并生成全景图像;

S4,将全景图像与三维空间点云纳入相同的空间参考系,并对三维数据进行单体化处理。

本发明所述一种基于lsd-slam的实景三维重建方法,利用单反、手机等任意能获取视频的设备对待建模场景进行连续的环形录像获取视频数据,分析视频数据获取关键帧姿态,利用关键帧姿态生成三维空间点云即得到三维模型数据,通过对关键帧序列的分析提取摄相机位置,投影关键帧图像至拟合摄影中心为中心的平面,拼合不同帧以得到全景图像,将全景图像与三维空间单元纳入相同的空间参考系即完成对全景图像的三维重建。本方法通过的关键帧的分析提取摄相机位置,无需对设备进行标定,降低工作量的同时也避免了累积误差;利用关键帧姿态生成三维空间点云无需通过硬件提供深度信息,区别于现有的基于RGB-D摄像机获得的深度信息完成全景图像的三维重建,无需利用特种设备,任意可获取视频数据的设备均可,不存在设备依赖性;通过分析关键帧生成三维空间点云(即模型数据)和全景图像,同时采集了全景数据和模型数据,效率更高,并且本发明使用surf作为sift的改进算法,运算速度有较大提升。此外,本发明所述的基于lsd-slam的实景三维重建方法还对三维数据进行单体化处理,将单体对象(如桌椅、电器、管线)从无序的三维模型中提取出来,并与相应属性数据库关联起来,以供查询管理使用,解决了目前全景图像的三维重建无法对三维实体进行对象化管理,难以满足深层次的应用需求的问题。

本发明所述一种基于lsd-slam的实景三维重建方法的实施装置,包括:

数据采集单元,对待建模场景进行录像,采集覆盖建模场景的视频数据,并将采集到的视频数据发至lsd-slam建模单元分析;

lsd-slam建模单元,分析接收到的视频数据,通过lsd-slam建模技术从关键帧解算出关键帧姿态得到恢复三维信息的图像,将恢复三维信息的图像发送至全景数据建模单元,并生成三维空间点云发送至三维场景融合单元;

全景数据建模单元,接收恢复三维信息的图像,从恢复了三维信息的图像中按照空间位置关系选择出可以拼合成全景的图像,并生成全景图像,发送全景图像三维场景融合单元;

三维场景融合单元,接收全景图像和三维空间点云,将全景图像与三维空间点云纳入相同的空间参考系,并对三维数据进行单体化处理。

本发明所述一种基于lsd-slam的实景三维重建方法的实施装置,利用数据采集单元获取待建模场景的视频数,lsd-slam建模单元分析视频数据得到关键帧并解算出关键帧姿态以生成三维空间点云(即模型数据),全景数据建模单元分析关键帧以提取摄相机位置,投影关键帧图像至拟合摄影中心为中心的平面,拼合不同帧以得到全景图像,三维场景融合单元将接收到的全景图像和三维空间点云(即三维模型数据)纳入相同的空间参考系即完成对全景图像的三维重建。本装置利用全景数据建模单元分析关键帧以提取摄相机位置,无需对设备进行标定,降低工作量的同时也避免了累积误差;通过lsd-slam建模单元解算得到关键帧姿态并生成三维空间点云(即三维模型数据),无需通过硬件获取深度信息,则无需使用可获取深度信息的RGB-D摄像机等特种设备,任意可获取视频数据的设备均可,不存在设备依赖性;lsd-slam建模单元分析关键帧生成三维空间点云(即模型数据),全景数据建模单元分析关键帧生成全景图像,利用数据采集单元同时采集了全景数据和模型数据,效率更高,并且本发明装置中使用surf作为sift的改进算法,运算速度有较大提升。此外,本发明所述的三维场景融合单元还对三维数据进行单体化处理,将单体对象(如桌椅、电器、管线)从无序的三维模型中提取出来,并与相应属性数据库关联起来,以供查询管理使用,解决了目前全景图像的三维重建无法对三维实体进行对象化管理,难以满足深层次的应用需求的问题。

附图说明

图1为一种基于lsd-slam的实景三维重建方法的工作流程图;

图2为一种基于lsd-slam的实景三维重建方法的实施装置的系统框图。

具体实施方式

如图1所示,一种基于lsd-slam的实景三维重建方法,包括以下步骤:S1,对待建模场景进行录像,采集覆盖建模场景的视频数据;S2,通过lsd-slam建模技术从关键帧解算出关键帧姿态得到恢复三维信息的图像,并生成三维空间点云;S3,从恢复了三维信息的图像中按照空间位置关系选择出可以拼合成全景的图像,并生成全景图像;S4,将全景图像与三维空间点云纳入相同的空间参考系,并对三维数据进行单体化处理。获取并分析视频数据得到关键帧,分析关键帧以生成三维空间点云和全景图像,通过三维空间点云与全景图像实现三维重建,不对设备进行标定,不依赖特殊硬件设备,同时采集全景数据和模型数据的三维重建方法,进一步提供一种可对重建结果实现单体化的三维重建方法,解决目前全景图像的三维重建存在的问题。

该种基于lsd-slam的实景三维重建方法所述的步骤S2包括以下步骤:S21,把视频的第一帧作为初始关键帧插入序列,采用Surf算法提取初始帧特征;S22,对视频后续帧逐帧进行检测,提取新加入帧的特征,并将新加入帧Fi与关键帧序列F的最后一帧Fn进行运动估计,获取相邻图像之间的旋转和平移向量;S23,以获取的相邻图像之间的旋转和平移向量作为关键帧序列F中最后一帧Fn与新加入帧Fi的相对运动e,将相对运动e与阈值进行比较,保留阈值内的Fi将其作为新的关键帧,加入关键帧序列,相对运动e记为新加入帧Fi与关键帧序列F中最后一帧Fn之间的运动向量Ti-1,i>,用于获取关键帧姿态即恢复图像的三维信息;S24:在获取了关键帧的准确姿态之后,进行关键帧之间的光束法平差,计算出像方同名点在物方的空间坐标,从而得到了具有空间坐标的三维空间点云。该步骤对获取的视频数据进行分析,确定关键帧并解算关键帧姿态得到恢复三维信息的图像,并生成三维空间点云,实现从视频数据中获取模型数据。

由于在运动累积的过程中,误差的累积是不可避免的。本方法中后续帧的姿态依赖着前面的姿态,想要保证建模的准确,必须要保证每次匹配都精确无误,而这是难以实现的,需要对累积的运动误差进行全局的优化处理,故而在步骤S23与步骤S24之间还存在累积误差处理的步骤。本实施例中采用姿态图优化来处理累积误差。

Xi为关键帧姿态,包含三个线元素和三个角元素,以姿态矩阵描述如下(其中R为3*3正交旋转矩阵,Xt为平移向量):

Tij为通过帧间匹配产生的运动向量,为4*4矩阵,表示第i帧到第j帧运动。xi=Ti,jxj

G={V,E}:优化图,由边和节点组成,每一个节点代表一个关键帧。理论上有xi=Ti,jxj由于误差的存在,实际情况为:ei,j=(xi-Ti,jxj)通过对误差定义一个二范数,得到优化问题的目标函数:对其求解即可得到优化结果。

该种基于lsd-slam的实景三维重建方法所述的步骤S21包括以下步骤:S211,对初始关键帧的像素点进行高斯滤波;S212,对滤波后的像素点进行Hessian矩阵处理得到初步特征点;S213,剔除小于阈值的初步特征点,采用三维线性插值法获取亚像素级的特征点;S214,确定特征点的主方向;S215,构造surf特征点描述算子,得到初始帧特征。

步骤S21是为了初始化关键帧序列,把视频的第一帧作为出书关键帧插入序列,然后采用Surf算法提取初始帧特征。Hessian矩阵是Surf算法的核心。为了保证特征点具备尺度无关性,所以在进行Hessian矩阵构造前,需要对其进行高斯滤波。经过滤波后在进行Hessian的计算,其公式如下:

其特征点变换式如下:

上式中A为常数,本实施例中选取A为一个常用的经验值0.9。

将经过hessian矩阵处理过的每个像素点与其直径为3个像素的三维空间邻域的其他26个点进行大小比较,如果它是这26个点中的极值,则保留改点作为初步的特征点。然后采用3维线性插值法得到亚像素级的特征点,同时剔除小于阈值的初步特征点。在特征点的二维邻域(尺度为s)内,统计一个60度扇形内所有点的水平haar小波特征和垂直haar小波特征总和。然后将此60度扇形以一定间隔进行旋转,最后将最大值那个扇形的方向作为该特征点的主方向。最后构造surf特征点描述算子。以特征点为中心取8×8像素的窗口。求出每个像素的梯度幅值与梯度方向,然后用高斯窗口对其进行加权运算,每个像素对应一个向量,长度为,为该像素点的高斯权值。然后在每4×4像素的小块上计算8个方向的梯度方向直方图,绘制每个梯度方向的累加值,即可形成一个种子点。则每一个特征点由2×2共4个种子点组成,每个种子点有8个方向向量信息。这种邻域方向性信息联合的思想增强了算法抗噪声的能力,同时对于含有定位误差的特征匹配也提供了较好的容错性。

该种基于lsd-slam的实景三维重建方法所述的步骤S22包括以下步骤:S221,提取新加入帧的特征,以surf提取的特征作为样本,从样本集中随机抽选一个RANSAC样本,即4个匹配点对;S222,根据这4个匹配点对计算变换矩阵M ;S223,根据样本集,变换矩阵M,和误差度量函数计算满足当前变换矩阵的一致集,并返回一致集中元素个数;S224,根据当前一致集中元素个数判断是否最优(最大)一致集,若是则更新当前最优一致集;S225,更新当前错误概率p,若p大于允许的最小错误概率则重复步骤S221至步骤S224继续迭代,直到当前错误概率p小于最小错误概率,以此估计图像的运动,获取相邻图像之间的旋转和平移向量。该步骤对视频后续帧逐帧进行检测,提取新加入帧特征,与关键帧序列的最后一帧进行运动估计。根据surf提取的特征进行匹配,并用“随机采样一致性”(Random Sample Consensus)方法估计图像的运动,获取相邻图像之间的旋转和平移向量。

该种基于lsd-slam的实景三维重建方法所述的步骤S23具体为,对于新加入的一帧Fi,计算F中最后一帧Fn与Fi的相对运动e,并根据阈值进行判断。

若e>emax,即运动太大,可能是匹配失败或是相机剧烈运动,丢弃该帧;

若e<emin,说明离前一个关键帧太近,丢弃该帧;

若emin≤e≤emax,则说明匹配结果较好,运动估算无误,同时又离上一个关键帧有一定距离,则把Fi作为新的关键帧,加入关键帧序列。

在关键帧序列中,由相邻图像之间的运动累积可以计算出任意一帧图像相对于原点的位置。对于任意一帧Fi与Fi+1,其相对运动为Ei,i+1,则有

从而把不同角度、不同坐标采集到的图像对齐到一个坐标系中。

该种基于lsd-slam的实景三维重建方法所述的步骤S3包括以下步骤:S31,对关键帧序列中的图像外方位线元素(即拍摄瞬间摄影中心坐标)进行ISODATA聚类分析;S32,对于聚类结果中落在一组的关键帧,检测其三维覆盖范围,满足全景影像拼接范围,则以最小二乘法拟合该组摄影中心,并将各关键帧图像投影到以拟合后的摄影中心为摄影中心的平面上;S33,对同一组关键帧内的图像进行Surf特征提取,根据匹配后的结果将不同帧拼合,生成全景图像。该步骤从图像中提取摄像机位置,拟合摄相机中心,将各关键帧图像投影到以拟合后的摄影中心为摄影中心的平面上,拼合不同帧以得到全景图像。为保证全景图像的过渡自然,接边处可采用羽化处理。

该种基于lsd-slam的实景三维重建方法所述的步骤S31包括以下步骤:S311,指定初始聚类参数;S312,计算各类中诸样本的距离指标函数;S313,按给定的要求,将前一次获得的聚类集进行分裂和合并处理,从而获得新的聚类中心;S314,重新进行迭代运算,计算各项指标,判断聚类结果是否符合要求,经过多次迭代后,若结果收敛,则运算结束。该步骤提取摄相机位置,进行方位判断,拟合摄相机中心,进行影像纠正。

该种基于lsd-slam的实景三维重建方法所述的步骤S4包括以下步骤:S41,对于每一幅全景图像,以其归一化摄影中心在空间中位置为球心,以拍摄空间半径为半径建立球体,并将全景图像映射到球体内表面,使得全景数据脱离二维平面,被纳入进三维点云所确定的空间参考系;S42,此基础之上通过模型单体对象化建模,将单体对象从无序的三维模型中提取出来,进行单体化处理。该步骤将全景数据与三维模型纳入相同的空间参考系实现全景图像的三维重建,并对三维数据进行单体化处理以满足满足深层次应用需求。

如图2所示,一种基于lsd-slam的实景三维重建方法的实施装置,包括:数据采集单元,对待建模场景进行录像,采集覆盖建模场景的视频数据,并将采集到的视频数据发至lsd-slam建模单元分析;lsd-slam建模单元,分析接收到的视频数据,通过lsd-slam建模技术从关键帧解算出关键帧姿态得到恢复三维信息的图像,将恢复三维信息的图像发送至全景数据建模单元,并生成三维空间点云发送至三维场景融合单元;全景数据建模单元,接收恢复三维信息的图像,从恢复了三维信息的图像中按照空间位置关系选择出可以拼合成全景的图像,并生成全景图像,发送全景图像三维场景融合单元;三维场景融合单元,接收全景图像和三维空间点云,将全景图像与三维空间点云纳入相同的空间参考系,并对三维数据进行单体化处理。通过数据采集单元获取待建模场景的视频数,利用lsd-slam建模单元生成三维空间点云(即三维模型数据),全景数据建模单元生成全景图像,三维场景融合单元将接收到的全景图像和三维空间点云(即模型数据)纳入相同的空间参考系即完成对全景图像的三维重建,不对设备进行标定,不依赖硬件设备,同时采集全景数据和模型数据的三维重建方法,进一步提供一种可对重建结果实现单体化的三维重建方法,解决目前全景图像的三维重建存在的问题。

该种基于lsd-slam的实景三维重建方法的实施装置所述的lsd-slam建模单元包括,初始化关键帧序列模块,把视频的第一帧作为初始关键帧插入序列,采用Surf算法提取初始帧特征;运动计算模块,对视频后续帧逐帧进行检测,提取新加入帧的特征,并将新加入帧Fi与关键帧序列F的最后一帧Fn进行运动估计,获取相邻图像之间的旋转和平移向量并发送至关键帧对齐模块;关键帧对齐模块,接收相邻图像之间的旋转和平移向量将其作为关键帧序列F中最后一帧Fn与新加入帧Fi的相对运动e,将相对运动e与阈值进行比较,保留阈值内的Fi将其作为新的关键帧,加入关键帧序列,相对运动e记为新加入帧Fi与关键帧序列F中最后一帧Fn之间的运动向量Ti-1,i>,用于获取关键帧姿态即恢复图像的三维信息,将关键帧姿态发送至点云生成模块;点云生成模块,接收关键帧姿态,对关键帧进行光束法平差,计算出像方同名点在物方的空间坐标,得到具有空间坐标的三维空间点云。该单元对获取的视频数据进行分析,确定关键帧并解算关键帧姿态得到恢复三维信息的图像,并生成三维空间点云,实现从视频数据中获取模型数据。

该种基于lsd-slam的实景三维重建方法的实施装置所述的全景数据建模单元包括,全景影像检测模块,对关键帧序列中的图像外方位线元素(即拍摄瞬间摄影中心坐标)进行ISODATA聚类分析,将聚类结果发送至摄影中心拟合模块;摄影中心拟合模块,接收并分析聚类结果,对于聚类结果中落在一组的关键帧,检测其三维覆盖范围,满足全景影像拼接范围,则以最小二乘法拟合该组摄影中心,并将各关键帧图像投影到以拟合后的摄影中心为摄影中心的平面上;图像镶嵌模块,对同一组关键帧内的图像进行Surf特征提取,根据匹配后的结果将不同帧拼合,生成全景图像。该单元从图像中提取摄像机位置,拟合摄相机中心,将各关键帧图像投影到以拟合后的摄影中心为摄影中心的平面上,拼合不同帧以得到全景图像。为保证全景图像的过渡自然,接边处可采用羽化处理。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号