一种基于TOF相机数据的平面拟合方法与流程

文档序号:18633437发布日期:2019-09-11 21:55
一种基于TOF相机数据的平面拟合方法与流程

本发明涉及计算机图像处理技术领域,特别涉及一种基于TOF相机数据的平面拟合方法。



背景技术:

平面拟合是3D重建和测量领域的重要组成部分。由于几何体的平面特征可以用于点云的配准,在后续建模中简化数据,因此平面拟合是散乱点云表面重建中最基本的步骤,大多数的表面重建算法的提出都是以平面拟合作为基础的。此外,对具有规则特征的平面进行拟合还可以用于测量三维几何物体的尺寸,通过3D计算机视觉识别并计算几何体的形状尺寸,作为工业控制的输入数据,是工业自动化和机器人控制的重要基础。

传统的平面拟合算法基于地面激光扫描所获得的实物表面点云。通过激光扫描得到的点云信息数据量大、精度高,对平面拟合起到了一定程度的帮助作用。然而,激光扫描获取点云的方式设备复杂、采集效率低,一般应用于专业场景。在日常生活中,TOF相机由于其分辨率高、一次能够得到整个视野范围内每个像素的距离信息的特点,比激光扫描的方法更便捷、效率更高,更受到3D研究者们的青睐。随着3D-TOF相机大规模的植入手机,基于TOF相机的深度图像数据的平面拟合算法应用场景大大扩充。TOF相机通过采集的深度图还原点云数据,相较于激光扫描的点云数据而言,精度较低、噪声干扰更多、数据的质量相对较差,因而基于激光扫描的传统平面拟合算法很难胜任基于TOF深度数据的工作。

但现有的基于TOF深度数据的平面拟合方法运算量仍然较大,在3D深度相机上输出的视频序列的实时性仍需进一步改善。



技术实现要素:

本发明的目的在于提供一种基于TOF相机数据的平面拟合方法,以解决现有的基于TOF深度数据的平面拟合方法运算量较大、输出视频序列的实时性较差的问题。

为了实现平面拟合,我们首先需要计算包含平面以及大量背景像素点的全部主方向向量,然后根据主方向向量确定各像素和采样点方向之间的角度,判断是否处于同一待拟合平面,这几个步骤环环相扣,是基于深度图的平面拟合算法不可或缺的环节。

为实现上述目的,本发明提供了一种基于TOF相机数据的平面拟合方法,包括以下步骤:

S1:将TOF相机采集的深度图的数据转换成点云的数据,所述深度图的像素点与所述点云在映射过程保留对应编号;

S2:计算所述深度图的全图各像素点对应的点云的主方向向量,并确定所要拟合的平面上的一个采样点及其对应的主方向向量;

S3:从所述采样点出发通过迭代法逐步扩散,找到全部与所述采样点对应的主方向向量间关系满足预设条件的待拟合像素点,并将所述待拟合像素点每次迭代更新为新的采样点后继续迭代扩散;

S4:连接所有符合预设要求的待拟合像素点拟合成为平面。

较佳地,所述步骤S1具体为:借助所述TOF相机的相机内参,得到相机坐标系和世界坐标系的数学映射关系,并根据所述数学映射关系将所述深度图数据转换成点云数据,同时在一一映射过程中记录所述点云和像素点的对应编号。

较佳地,所述步骤S2具体为:对所述深度图中的每一个像素点取其邻域区域内的邻域像素点,通过求解方程的方法得到所述邻域像素点对应的点云的最佳近似主方向向量,作为该像素点的主方向向量;并手动确认所要拟合的平面上的所述采样点,同时记录所述采样点的主方向向量。

较佳地,所述步骤S3包括:

S31:基于所述全图各像素点的主方向向量,提取所述采样点对应的邻域像素点的主方向向量,分别计算所述邻域各像素点的主方向向量与所述采样点的主方向向量的夹角;

S32:提取所述夹角小于预定阈值的邻域像素点,将其再作为新的采样点,返回步骤S31,直到当前最新的采样点的邻域的其他像素点均不满足其对应的主方向向量与采样点的主方向向量的夹角小于预定阈值,则完成遍历目标拟合平面上的全部像素点,得到全部的待拟合像素点。

较佳地,所述步骤S4具体为:基于所述待拟合像素点,确定其中和所述采样点处在一个连通域的像素点,将满足条件的像素点作为拟合平面的像素点输出。

本发明方法基于TOF相机输出的深度图数据,利用深度图中各个像素点对应的点云进行分析计算从而达到空间平面拟合的目的。该方法运算量较小、输出视频序列的实时性较好。

附图说明

图1为本发明方法总体流程图;

图2为本发明方法选取的邻域区域示意图;

图3A为迭代法平面拟合各步骤示意图;

图3B为迭代法平面拟合各步骤示意图;

图3C为迭代法平面拟合各步骤示意图;

图3D为迭代法平面拟合各步骤示意图;

图3E为迭代法平面拟合各步骤示意图。

具体实施方式

以下将结合本发明的附图,对本发明实施例中的技术方案进行清楚、完整的描述和讨论,显然,这里所描述的仅仅是本发明的一部分实例,并不是全部的实例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明的保护范围。

为了便于对本发明实施例的理解,下面将结合附图以具体实施例为例作进一步的解释说明,且各个实施例不构成对本发明实施例的限定。

参考图1所示,本实施例提供了一种基于TOF相机数据的平面拟合方法,包括以下步骤:

S1:将TOF相机采集的深度图的数据转换成点云的数据,其中,深度图的像素点与点云在映射过程保留对应编号;

S2:计算深度图的全图各像素点对应的点云的主方向向量,并确定所要拟合的平面上的一个采样点及其对应的主方向向量;

S3:从上述的采样点出发通过迭代法逐步扩散,找到全部与采样点对应的主方向向量间关系满足预设条件的待拟合像素点,并将待拟合像素点每次迭代更新为新的采样点后继续迭代扩散;

S4:连接所有符合预设要求的待拟合像素点拟合成为平面。

其中,步骤S1具体为:借助TOF相机的相机内参,得到相机坐标系和世界坐标系的数学映射关系,并根据所述数学映射关系将所述深度图数据还原成点云数据,同时在一一映射过程中记录点云和像素点的对应编号。这里具体采用如下方法:

遍历深度图的每一个像素点,按照编号=(行数-1)×总列数+(列数-1)的方式进行标号,依据式(1)的坐标映射关系将其映射成点云数据:

其中,x,y,z为点云的空间坐标,u和v分别是像素点在深度图中的水平和垂直方向的像素坐标,d为深度图在(u,v)位置的像素对应的深度,fx,fy,cx,cy是相机的内参,fx,fy分别是相机在x轴和y轴方向上的焦距乘感光器件的分辨率,cx,cy是相机光圈中心的坐标。对每一个像素点映射成的点云,保留原像素点的编号。

进一步地,上述的步骤S2具体为:对深度图中的每一个像素点取其邻域区域内的邻域像素点,通过求解方程的方法得到邻域像素点对应的点云的最佳近似主方向向量,作为该像素点的主方向向量;并手动确认所要拟合的平面上的采样点,同时记录所述采样点的主方向向量。

具体地,计算点云的统计主方向向量需要点云的空间坐标和深度图像素的邻域信息,则步骤S2首先根据像素点与点云的映射关系生成图像点云表示形式,这里根据点云-像素编号关系生成新的图像点云表示形式;然后,将深度图中每一像素点的值更换为该像素点对应的点云的空间坐标,形成新的矩阵img_pcl,即img_pcl(m,n)=(xmn,ymn,zmn),其中,(m,n)表示像素点的位置,(xmn,ymn,zmn)为像素点(m,n)对应点云的空间位置;再拆分img_pcl为三个分别表示x,y,z坐标的矩阵pcx,pcy,pcz,即pcx(m,n)=xmn,pcy(m,n)=ymn,pcz(m,n)=zmn。并对pcx,pcy,pcz分别计算每一个像素邻域区域的均值作为该邻域中心点的新值,得到新矩阵pcx_mean,pcy_mean,pcz_mean。参考图2所示,本实施例的像素邻域区域取(0,4),(-2,2),(2,2),(-4,0),(0,0),(4,0),(-2,-2),(2,-2),(0,-4)。根据公式(2)-(7)计算获得新的矩阵xx,yy,zz,xy,xz,yz:

其中,(i,j)为其邻域像素的相对位置,同上取(0,4),(-2,2),(2,2),(-4,0),(0,0),(4,0),(-2,-2),(2,-2),(0,-4)。根据公式(8)-(10)计算得到各像素点对应点云统计主方向向量:

nx(m,n)=[xy2(m,n)+yy2(m,n)+yz2(m,n)]

*[xx(m,n)*xz(m,n)+xy(m,n)*yz(m,n)+xz(m,n)*zz(m,n)]

-[xx(m,n)*xy(m,n)+xy(m,n)*yy(m,n)+xz(m,n)*yz(m,n)]

*[xy(m,n)*xz(m,n)+yy(m,n)*yz(m,n)+yz(m,n)*zz(m,n)]

(8)

ny(m,n)=[xx2(m,n)+xy2(m,n)+xz2(m,n)]

*[xy(m,n)*xz(m,n)+yy(m,n)*yz(m,n)+yz(m,n)*zz(m,n)]

-[xx(m,n)*xy(m,n)+xy(m,n)*yy(m,n)+xz(m,n)*yz(m,n)]

*[xx(m,n)*xz(m,n)+xy(m,n)*yz(m,n)+xz(m,n)*zz(m,n)]

(9)

nz(m,n)=[xx(m,n)*xy(m,n)+xy(m,n)*yy(m,n)+xz(m,n)*yz(m,n)]2

-[xx2(m,n)+xy2(m,n)+xz2(m,n)]

*[xy2(m,n)+yy2(m,n)+yz2(m,n)]

(10)

其中,nx(m,n),ny(m,n),nz(m,n)分别表示(m,n)位置的像素点对应点云的向量x,y,z方向。为便于计算,这里取归一化的单位向量作为点云的统计主方向向量参考公式(11):

则进一步地,步骤S3包括:

S31:基于所述全图各像素点的主方向向量,提取所述采样点对应的邻域像素点的主方向向量,分别计算邻域各像素点的主方向向量与所述采样点的主方向向量的夹角;

S32:提取所述夹角小于预定阈值的邻域像素点,将其再作为新的采样点,返回步骤S31,直到当前最新的采样点的邻域的其他像素点均不满足其对应的主方向向量与采样点的主方向向量的夹角小于预定阈值,则完成遍历目标拟合平面上的全部像素点,得到全部的待拟合像素点。

具体地,参考图3A至3E所示,在简化形式的深度图中,不规则的白色区域为待拟合平面像素,浅灰色区域为背景像素,在步骤S2中已获取全部像素点对应的点云的主方向向量。

如图3A所示,选取待拟合平面上任一点作为采样点(黑色点),取其5-邻域区域的其他像素点,通过公式分别计算邻域像素点对应点云的主方向向量与采样点对应点云的主方向向量的夹角θij。如图3B和图3C所示,如果θij大于预先设定的门限θtk,则认为邻域点(i,j)不在待拟合平面上,如图3C的深灰色区域;如果θij小于预先设定的门限θtk,则认为邻域点(i,j)与采样点处于同一平面,如图3C的黑色区域,记录该点的编号,并将该点作为下一个采样点,重复步骤S3的上述流程。直到全部被记录编号的点其邻域全部的像素点均不满足主方向向量的夹角小于阈值时,该方法即认为已找到待拟合平面全部的像素点,如图3D所示。

进一步优选地,上述的步骤S4具体为:基于待拟合像素点,确定其中和所述采样点处在一个连通域的像素点,将满足条件的像素点作为拟合平面的像素点输出。

为了实现平面拟合,这里首先计算包含平面以及大量背景像素点的全部主方向向量,然后根据主方向向量确定各像素和采样点方向之间的角度,判断是否处于同一待拟合平面,再进行拟合。该方法简单易行,每个步骤的具体执行过程都在运算量上进行了优化,能够在3D深度相机输出视频序列上实时完成。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何本领域的技术人员在本发明揭露的技术范围内,对本发明所做的变形或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述的权利要求的保护范围为准。

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