三维场景的重建方法和装置制造方法及图纸

技术编号:15792917 阅读:69 留言:0更新日期:2017-07-10 02:31
本发明专利技术提供一种三维场景的重建方法和装置,包括:根据当前帧的深度图像以及参考帧的深度图像,获取当前帧的第一相机姿态;根据当前帧的灰度图像以及参考帧的灰度图像,估计当前帧的第二相机姿态;根据当前帧的第一相机姿态以及当前帧的第二相机姿态,获取当前帧的融合后的相机姿态;根据当前帧的深度图像和当前帧的融合后的相机姿态,生成当前帧对应的三维场景模型。本实施例的三维场景的重建方法,通过将基于深度信息的第一相机姿态估计和基于灰度信息的第二相机姿态估计进行融合,缩小了相机姿态估计中的累计误差,在不同场景下表现更加稳定,使得重建的三维场景更准确。

【技术实现步骤摘要】
三维场景的重建方法和装置
本专利技术实施例涉及图像处理技术,尤其涉及一种三维场景的重建方法和装置。
技术介绍
三维重建是指对三维物体建立适合计算机表示和处理的数学模型,是在计算机中建立表达客观世界的虚拟现实的关键技术。实现三维重建的技术主要有KinectFusion技术,其是基于彩色和深度图像的实时姿态定位匹配(SimultaneousLocalizationandMapping,简称SLAM)技术,即利用Kinect摄像机围绕待重建的三维物体进行拍摄,从而实时重建物体的三维模型。但是KinectFusion的工作场景大小和分辨率由图形处理器GPU的显存大小决定,对于超出该显存大小的场景将无法计算处理。另一种三维重建技术Kintinous技术,是在KinectFusion的基础上,扩展到大场景下的一种三维重建技术。与KinectFusion相比,Kintinous主要解决了KinectFusion由于GPU显存限制而导致的场景限制问题。Kintinous在实时的姿态估计过程中,基于之前的相机姿态获取当前的相机姿态,并根据当前的相机姿态,更新三维场景模型。虽然Kintinous解决了KinectFusion三维场景受限的问题,但当系统长时间运行时,由于Kintinous中相机姿态的都是基于前一帧的姿态轨迹进行估计得到,当其中某一帧中相机的姿态轨迹出现误差时,会导致后续帧中相机的姿态轨迹产生累计误差,因而相机的姿态轨迹偏离真实轨迹,导致重建的三维场景不准确。
技术实现思路
本专利技术实施例提供一种三维场景的重建方法和装置,缩小了相机姿态估计中的累计误差。第一方面,本专利技术实施例提供一种三维场景的重建方法,包括:根据当前帧的深度图像以及参考帧的深度图像,获取所述当前帧的第一相机姿态,所述第一相机姿态包括用于获取所述当前帧的深度图像的相机的位置信息以及朝向信息;根据所述当前帧的灰度图像以及所述参考帧的灰度图像,估计所述当前帧的第二相机姿态,所述第二相机姿态包括用于获取所述当前帧的灰度图像的相机的位置信息以及朝向信息;根据所述当前帧的第一相机姿态以及所述当前帧的第二相机姿态,获取所述当前帧的融合后的相机姿态;根据所述当前帧的深度图像和所述当前帧的融合后的相机姿态,生成当前帧对应的三维场景模型。其中,所述第一相机姿态为:根据当前帧的深度图像和参考帧的深度图像,利用迭代最近点法ICP算法获得的相机姿态。第二相机姿态为:根据当前帧的灰度图像和参考帧的灰度图像,利用特征点匹配算法估计得到的当前帧的相机姿态。结合第一方面,在第一方面的第一种可能的实现方式中,所述根据当前帧的深度图像以及参考帧的深度图像,获取所述当前帧的第一相机姿态包括:将所述当前帧的深度图像中的像素与所述参考帧的深度图像中的像素进行匹配,根据匹配的像素点对以及所述参考帧的第一相机姿态,获取所述当前帧的第一相机姿态;相应的,所述根据所述当前帧的第一相机姿态以及所述当前帧的第二相机姿态,获取所述当前帧的融合后的相机姿态包括:根据所述匹配的像素点对的个数以及所述当前帧的像素点个数,获取匹配成功率;判断所述匹配成功率是否小于或等于第一阈值;若所述匹配成功率小于或等于所述第一阈值,将所述当前帧的第二相机姿态作为初始姿态,基于所述初始姿态、所述当前帧的灰度图像以及所述参考帧的灰度图像,迭代获取所述当前帧的第二优化相机姿态;将所述当前帧的第二优化相机姿态和所述当前帧的第一相机姿态进行融合,从而获取所述当前帧的融合后的相机姿态。本实施例中,根据当前帧的深度图像中的像素与所述参考帧的深度图像中的像素进行匹配计算当前帧的第一相机姿态,并计算该过程中的匹配成功率,当匹配成功率小于预设第一阈值时,采用当前帧的第二相机姿态作为当前帧的初始姿态,基于参考帧的第二相机姿态、当前帧的灰度图像以及参考帧的灰度图像,迭代获取当前帧的第二优化相机姿态,从而根据第二优化相机姿态和第一相机姿态进行融合获取融合后的相机姿态,通过判断获取第一相机姿态过程中的匹配成功率,从而可以合理选择初始姿态,使得融合时的相机姿态更准确。结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述根据所述当前帧的第一相机姿态以及所述当前帧的第二相机姿态融合,获取所述当前帧的融合后的相机姿态还包括:若所述匹配成功率大于所述第一阈值,将所述当前帧的第一相机姿态作为初始姿态,基于所述初始姿态、所述当前帧的灰度图像以及所述参考帧的灰度图像,迭代获取所述当前帧的第二优化相机姿态;将所述当前帧的第二优化相机姿态和所述当前帧的第一相机姿态进行融合,从而获取所述当前帧的融合后的相机姿态。本实施例中,当相机姿态变化较小,场景几何信息丰富的情况下,由于ICP算法具有精度高速度快,不受光照影响的优点,因此,当获取第一相机姿态时的匹配成功率大于预设第一阈值时,采用当前帧的第一相机姿态作为当前帧的初始姿态,缩短了特征匹配计算第二相机姿态算法消耗的时间,满足实时性的要求。结合第一方面的第一种可能的实现方式,在第一方面的第三种可能的实现方式中,所述根据所述当前帧的灰度图像以及所述参考帧的灰度图像,估计所述当前帧的第二相机姿态包括:提取所述当前帧的灰度图像中的特征点;提取所述参考帧的灰度图像中的特征点;将所述当前帧的灰度图像中的特征点与所述参考帧的灰度图像中的特征点进行匹配,根据匹配获得的特征点对以及所述参考帧的第二相机姿态,获取所述当前帧的第二相机姿态;相应的,所述将所述当前帧的第二相机姿态作为初始姿态,基于所述初始姿态、所述当前帧的灰度图像以及所述参考帧的灰度图像,迭代获取所述当前帧的第二优化相机姿态包括:根据所述当前帧的第二相机姿态和所述参考帧的第二相机姿态,将所述当前帧的灰度图像的特征点投影到所述参考帧的灰度图像,获取所述当前帧的灰度图像的特征点到所述参考帧的灰度图像的特征点的第一投影误差;根据所述当前帧的第二相机姿态和参考帧的第二相机姿态,将所述参考帧的灰度图像的特征点投影到所述当前帧的灰度图像,获取所述参考帧的灰度图像的特征点到所述当前帧的灰度图像的特征点的第二投影误差;建立所述第一投影误差以及所述第二投影误差均小于第二阈值的第一特征点对的第一能量模型,所述第一能量模型指示所述第一投影误差以及所述第二投影误差的大小;迭代求解所述第一能量模型得到所述当前帧的第二优化相机姿态。本实施例中,通过对提取当前帧和参考帧的灰度图像的特征点并进行匹配,然后计算双向投影误差,建立能量模型,从而对第二相机姿态进行优化,使得获得的第二相机姿态更准确。结合第一方面的第一至第三种任一种可能的实现方式,在第一方面的第四种可能的实现方式中,所述融合后的相机姿态包括所述融合后的相机姿态的平移矩阵,所述将所述当前帧的第二优化相机姿态和所述当前帧的第一相机姿态进行融合,从而获取所述当前帧的融合后的相机姿态包括:根据公式T=wicp·Ticp+wrgb·Trgb获取融合后的相机姿态的平移矩阵,其中,Ticp为所述第一相机姿态的平移矩阵,Trgb为所述第二相机姿态的平移矩阵,T为融合后的相机姿态的平移矩阵;其中,wicp=wicp'/(wicp'+wrgb'),wrgb=1-wicp,wicp为所述第一相机姿态的权重,wrgb所述第二相机姿本文档来自技高网...
三维场景的重建方法和装置

【技术保护点】
一种三维场景的重建方法,其特征在于,包括:根据当前帧的深度图像以及参考帧的深度图像,获取所述当前帧的第一相机姿态,所述第一相机姿态包括用于获取所述当前帧的深度图像的相机的位置信息以及朝向信息;根据所述当前帧的灰度图像以及所述参考帧的灰度图像,获取所述当前帧的第二相机姿态,所述第二相机姿态包括用于获取所述当前帧的灰度图像的相机的位置信息以及朝向信息;根据所述当前帧的第一相机姿态以及所述当前帧的第二相机姿态,获取所述当前帧的融合后的相机姿态;根据所述当前帧的深度图像和所述当前帧的融合后的相机姿态,生成当前帧对应的三维场景模型。

【技术特征摘要】
1.一种三维场景的重建方法,其特征在于,包括:根据当前帧的深度图像以及参考帧的深度图像,获取所述当前帧的第一相机姿态,所述第一相机姿态包括用于获取所述当前帧的深度图像的相机的位置信息以及朝向信息;根据所述当前帧的灰度图像以及所述参考帧的灰度图像,获取所述当前帧的第二相机姿态,所述第二相机姿态包括用于获取所述当前帧的灰度图像的相机的位置信息以及朝向信息;根据所述当前帧的第一相机姿态以及所述当前帧的第二相机姿态,获取所述当前帧的融合后的相机姿态;根据所述当前帧的深度图像和所述当前帧的融合后的相机姿态,生成当前帧对应的三维场景模型。2.根据权利要求1所述的方法,其特征在于,所述根据当前帧的深度图像以及参考帧的深度图像,获取所述当前帧的第一相机姿态包括:将所述当前帧的深度图像中的像素与所述参考帧的深度图像中的像素进行匹配,根据匹配的像素点对以及所述参考帧的第一相机姿态,获取所述当前帧的第一相机姿态;相应的,所述根据所述当前帧的第一相机姿态以及所述当前帧的第二相机姿态,获取所述当前帧的融合后的相机姿态包括:根据所述匹配的像素点对的个数以及所述当前帧的像素点个数,获取匹配成功率;判断所述匹配成功率是否小于或等于第一阈值;若所述匹配成功率小于或等于所述第一阈值,将所述当前帧的第二相机姿态作为初始姿态,基于所述初始姿态、所述当前帧的灰度图像以及所述参考帧的灰度图像,迭代获取所述当前帧的第二优化相机姿态;将所述当前帧的第二优化相机姿态和所述当前帧的第一相机姿态进行融合,从而获取所述当前帧的融合后的相机姿态。3.根据权利要求2所述的方法,其特征在于,所述根据所述当前帧的灰度图像以及所述参考帧的灰度图像,估计所述当前帧的第二相机姿态包括:提取所述当前帧的灰度图像中的特征点;提取所述参考帧的灰度图像中的特征点;将所述当前帧的灰度图像中的特征点与所述参考帧的灰度图像中的特征点进行匹配,根据匹配获得的特征点对以及所述参考帧的第二相机姿态,获取所述当前帧的第二相机姿态;相应的,所述将所述当前帧的第二相机姿态作为初始姿态,基于所述初始姿态、所述当前帧的灰度图像以及所述参考帧的灰度图像,迭代获取所述当前帧的第二优化相机姿态包括:根据所述当前帧的第二相机姿态和所述参考帧的第二相机姿态,将所述当前帧的灰度图像的特征点投影到所述参考帧的灰度图像,获取所述当前帧的灰度图像的特征点到所述参考帧的灰度图像的特征点的第一投影误差;根据所述当前帧的第二相机姿态和参考帧的第二相机姿态,将所述参考帧的灰度图像的特征点投影到所述当前帧的灰度图像,获取所述参考帧的灰度图像的特征点到所述当前帧的灰度图像的特征点的第二投影误差;建立所述第一投影误差以及所述第二投影误差均小于第二阈值的第一特征点对的第一能量模型,所述第一能量模型指示所述第一投影误差以及所述第二投影误差的大小;迭代求解所述第一能量模型得到所述当前帧的第二优化相机姿态。4.根据权利要求2或3所述的方法,其特征在于,所述融合后的相机姿态包括所述融合后的相机姿态的平移矩阵,所述将所述当前帧的第二优化相机姿态和所述当前帧的第一相机姿态进行融合,从而获取所述当前帧的融合后的相机姿态包括:根据公式T=wicp·Ticp+wrgb·Trgb获取融合后的相机姿态的平移矩阵,其中,Ticp为所述第一相机姿态的平移矩阵,Trgb为所述第二相机姿态的平移矩阵,T为融合后的相机姿态的平移矩阵;其中,wicp=wicp'/(wicp'+wrgb'),wrgb=1-wicp,wicp为所述第一相机姿态的权重,wrgb所述第二相机姿态的权重;其中,ncicp为所述当前帧的深度图像中的像素和所述参考帧的深度图像中的像素之间匹配的像素点个数,nticp为当前帧的深度图像中的所有像素点的个数,a,b为系数;ncrgb为所述当前帧的灰度图像中的特征点与所述参考帧的灰度图像中的特征点之间匹配的特征点个数,ntrgb为所述当前帧的灰度图像中的所有特征点个数,c,d为系数。5.根据权利要求2至4任意一项所述的方法,其特征在于,所述融合后的相机姿态包括所述融合后的相机姿态的旋转矩阵,所述将所述当前帧的第二优化相机姿态和所述当前帧的第一相机姿态进行融合,从而获取所述当前帧的融合后的相机姿态包括:根据公式获取融合后的相机姿态的旋转矩阵,其中,为所述第一相机姿态的旋转矩阵,为所述第二相机姿态的旋转矩阵,Rq为所述融合后的相机姿态的旋转矩阵,teta为从的朝向到的朝向的夹角;其中,wicp=wicp'/(wicp'+wrgb'),wicp为所述第一相机姿态的权重;ncicp为所述当前帧的深度图像中的像素和所述参考帧的深度图像中的像素之间匹配的像素点个数,nticp为当前帧的深度图像中的所有像素点的个数,a,b为系数;ncrgb为所述当前帧的灰度图像中的特征点与所述参考帧的灰度图像中的特征点之间匹配的特征点个数,ntrgb为所述当前帧的灰度图像中的所有特征点个数,c,d为系数。6.根据权利要求1至5任一项所述的方法,其特征在于,所述根据所述当前帧的深度图像和所述当前帧的融合后的相机姿态,生成当前帧对应的三维场景模型包括:若第二特征点对的个数小于第三阈值时,将所述当前帧加入到所述参考帧所在的关键帧序列从而得到更新后的关键帧序列,所述第二特征点对通过将所述当前帧的灰度图像中的特征点与所述参考帧的灰度图像中的特征点进行匹配获得;根据所述更新后的关键帧序列,获取所述更新后的关键帧序列对应的三维点云,所述三维点云中的点与所述更新后的关键帧序列中灰度图像的特征点对应;根据所述当前帧的融...

【专利技术属性】
技术研发人员:陈子冲章国锋吕朝阳吕培
申请(专利权)人:杭州华为数字技术有限公司
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1