首页 / 专利库 / 广播 / 帧内预测 / 弱纹理物体姿态跟踪方法、系统及装置

弱纹理物体姿态跟踪方法、系统及装置

阅读:1037发布:2020-05-17

专利汇可以提供弱纹理物体姿态跟踪方法、系统及装置专利检索,专利查询,专利分析的服务。并且本 发明 提供一种弱纹理物体 姿态 跟踪 方法、系统及装置,其中方法包括:对输入的当前 帧 图像进行姿态的预测,得到预测的物体姿态:根据预测的物体姿态获取物体轮廓形状数据;根据物体轮廓形状数据,在当前实景图像上进行轮廓形状特征的查找匹配;根据匹配信息进行姿态解算。本发明利用弱纹理物体的3D模型和目标物体的实景图像,无需依赖大量先验的数据进行训练,因此在普通计算设备上能够实现实时姿态跟踪。,下面是弱纹理物体姿态跟踪方法、系统及装置专利的具体信息内容。

1.一种弱纹理物体姿态跟踪方法,其特征在于,包括:
对输入的当前图像进行姿态的预测,得到预测的物体姿态,具体包括:输入当前帧图像;如果当前帧是初始帧,则对系统默认姿态进行调整作为预测的物体姿态旋转矩阵R0=Radjust,平移向量t0=tadjust;或者,如果当前帧不是初始帧,则使用上一帧的姿态作为预测的物体姿态旋转矩阵R0=Rprev,平移向量t0=tprev;
根据预测的物体姿态获取物体轮廓形状数据,具体包括:根据预测的物体姿态进行物体3D模型的投影渲染,并提取投影轮廓;对轮廓信息进行采样,进行轮廓局部颜色信息的统计,获取物体轮廓形状数据;
根据物体轮廓形状数据,在当前实景图像上进行轮廓形状特征的查找匹配;
根据匹配信息进行姿态解算;
所述默认姿态由默认的旋转矩阵和平移向量表示,记为Rinit,tinit,其值根据以下条件优化计算得到:
s.t.Proj(Ori(M);R,t)=Ori(I)
其中,M表示物体3D模型;I表示图像;Ori(M)表示物体3D模型的中心;Ori(I)表示图像的中心;Proj(;R,t)表示按照姿态(R,t)进行投影;Area()表示计算区域面积;
调整默认姿态按照一定的步长(ΔR,Δt)进行:
ΔR=exp(δrx,δry,δrz)T,Δt=(δtx,δty,δtz)T
其中,ΔR是预设的旋转步长,Δt是预设的平移步长;δtx,δty,δtz为单位平移的步长;
δrx,δry,δrz为单位旋转向量的步长;exp()为SO(3)群下的指数映射函数,将旋转量转化为旋转矩阵;
调整后的姿态根据SE(3)群的计算准则为:
Radjust=ΔR*Rinit,tadjust=ΔR*tinit+Δt
则预测的物体姿态(R0,t0)为R0=Radjust,t0=tadjust。
2.根据权利要求1所述的弱纹理物体姿态跟踪方法,其特征在于,所述提取投影轮廓,具体包括:
渲染二值化的前景图,对所述前景图进行2D轮廓的提取。
3.根据权利要求1所述的弱纹理物体姿态跟踪方法,其特征在于,所述对轮廓信息进行采样,具体包括:
设定自适应的采样步长,采用非均匀的采样方式对轮廓信息进行采样;
自适应的采样步长计算方式:
λi=λ0*Weigh(θ),θ=Angle(Pi-1);
其中,λ0为基础步长;θ表示以上一个采样点Pi-1为中心,在轮廓线两侧所形成的夹Angle(Pi-1);Weigh(θ)表示对该夹角的加权系数;
根据自适应采样步长进行轮廓信息采样得到的轮廓点为{Pi(u,v;x,y,z)|i=[1,N]},其中,轮廓点Pi既包含了在物体3D模型中的3D点位置(x,y,z),同时也包含在投影图像上的
2D位置(u,v)。
4.根据权利要求3所述的弱纹理物体姿态跟踪方法,其特征在于,所述进行轮廓局部颜色信息的统计,获取物体轮廓形状数据,具体包括:
计算每个轮廓点Pi的法线方向向量ni:ni=(vi-vi+1,ui+1-ui);
其中,ui,vi是轮廓点Pi的像素坐标;ui+1,vi+1是轮廓点Pi+1的像素坐标;ni与Pi、Pi+1点之间的连线垂直;
沿着法线向量的正方向和反方向统计实景图像上的像素,计算其颜色直方图,作为该轮廓点的局部形状描述,分别记为内部形状和外部形状;
将所有轮廓点的内部形状和外部形状分别叠加,构成物体的轮廓形状数据
Appearanceobj:
Appearanceobj={∑iIntApperancei,∑iExtAppearancei}
其中,Histo()是统计颜色直方图函数;Appearancei表示轮廓点Pi的轮廓形状,IntApperancei代表内部形状,ExtAppearancei代表外部形状;α为步长因子。
5.根据权利要求4所述的弱纹理物体姿态跟踪方法,其特征在于,所述根据物体轮廓形状数据,在当前实景图像上进行轮廓形状特征的查找匹配,具体包括:
将轮廓采样点Pi在当前实景图像上进行投影,沿着轮廓采样点的法线的正方向和反方向在当前实景图像上计算每个像素的梯度;
预先设置像素梯度阈值,如果像素梯度超过阈值,则该像素为候选点,记候选点为{Ci|i=[1,m]};
统计候选点两侧局部颜色信息,与物体轮廓形状数据进行比较;
通过相似性度量找出候选点中最相似的点作为匹配点,或者,预先设置相似度阈值,找出相似度大于阈值的候选点作为匹配点;
将匹配点插入到2D-3D匹配对中,其中2D-3D匹配对中的2D坐标来自匹配点,3D坐标来自对应轮廓采样点在物体3D模型上的坐标。
6.根据权利要求5所述的弱纹理物体姿态跟踪方法,其特征在于,所述根据匹配信息进行姿态解算,具体包括:
根据2D-3D匹配对,利用RANSAC机制求解PnP,根据重投影误差确定内点的个数;
预先设置内点个数阈值,如果内点个数超过阈值,则对当前帧跟踪成功,输出6自由度的姿态。
7.一种弱纹理物体姿态跟踪系统,其特征在于,包括:
图像采集单元,用于采集目标物体实景图像;
人机交互单元,用于将采集到的目标物体实景图显示在显示单元上;
数据存储单元,用于存储物体3D模型;
渲染单元,用于根据预测的物体姿态进行物体3D模型的投影渲染,具体用于:根据预测的物体姿态进行物体3D模型的投影渲染,渲染二值化的前景图,对所述前景图进行2D轮廓的提取;
通讯同步单元,用于将渲染后的平面图像与采集到的目标物体实景图像进行数据同步;
计算单元,用于对输入的当前帧图像进行姿态的预测,得到预测的物体姿态,根据预测的物体姿态获取物体轮廓形状数据,根据物体轮廓形状数据,在当前实景图像上进行轮廓形状特征的查找匹配,并根据匹配信息进行姿态解算;所述计算单元具体用于:判断输入的当前帧图像是否为初始帧;如果当前帧是初始帧,则对系统默认姿态进行调整作为预测的物体姿态旋转矩阵R0=Radjust,平移向量t0=tadjust,具体为:
默认姿态由默认的旋转矩阵和平移向量表示,记为Rinit,tinit,其值根据以下条件优化计算得到:
s.t.Proj(Ori(M);R,t)=Ori(I)
其中,M表示物体3D模型;I表示图像;Ori(M)表示物体3D模型的中心;Ori(I)表示图像的中心;Proj(;R,t)表示按照姿态(R,t)进行投影;Area()表示计算区域面积;
调整默认姿态按照一定的步长ΔR,Δt进行:
T T
ΔR=exp(δrx,δry,δrz) ,Δt=(δtx,δty,δtz)
其中,δtx,δty,δtz为单位平移的步长;δrx,δry,δrz为单位旋转向量的步长;exp()为SO(3)群下的指数映射函数,将旋转量转化为旋转矩阵;
调整后的姿态根据SE(3)群的计算准则为:
Radjust=ΔR*Rinit,tadjust=ΔR*tinit+Δt
则预测的物体姿态为R0=Radjust,t0=tadjust;如果当前帧不是初始帧,则使用上一帧的姿态作为预测的物体姿态旋转矩阵R0=Rprev,平移向量t0=tprev。
8.根据权利要求7所述的弱纹理物体姿态跟踪系统,其特征在于,所述计算单元,还具体用于:
设定自适应的采样步长,采用非均匀的采样方式对轮廓信息进行采样;自适应的采样步长计算方式:
λi=λ0*Weigh(θ),θ=Angle(Pi-1);
其中,λ0为基础步长;θ表示以上一个采样点Pi-1为中心,在轮廓线两侧所形成的夹角;
Weigh(θ)表示对该夹角的加权系数;
根据自适应采样步长进行轮廓信息采样得到的轮廓点为{Pi(u,v;x,y,z)|i=[1,N]},其中,轮廓点Pi既包含了在物体3D模型中的3D点位置(x,y,z),同时也包含在投影图像上的
2D位置(u,v);
计算每个轮廓点Pi的法线方向向量ni:ni=(vi-vi+1,ui+1-ui);
其中,ui,vi是轮廓点Pi的像素坐标;ui+1,vi+1是轮廓点Pi+1的像素坐标;ni与Pi、Pi+1点之间的连线垂直;
沿着法线向量的正方向和反方向统计实景图像上的像素,计算其颜色直方图,作为该轮廓点的局部形状描述,分别记为内部形状和外部形状;
将所有轮廓点的内部形状和外部形状分别叠加,构成物体的轮廓形状数据
Appearanceobj:
Appearanceobj={∑iIntApperancei,∑iExtAppearancei}
其中,Histo()是统计颜色直方图函数;IntApperancei代表内部形状,ExtAppearancei代表外部形状。
9.根据权利要求8所述的弱纹理物体姿态跟踪系统,其特征在于,所述计算单元,还具体用于:
将轮廓采样点Pi在当前实景图像上进行投影,沿着轮廓采样点的法线的正方向和反方向在当前实景图像上计算每个像素的梯度;预先设置像素梯度阈值,如果像素梯度超过阈值,则该像素为候选点,记候选点为{Ci|i=[1,m]};统计候选点两侧局部颜色信息,与物体轮廓形状数据进行比较;通过相似性度量找出候选点中最相似的点作为匹配点,或者,预先设置相似度阈值,找出相似度大于阈值的候选点作为匹配点;将匹配点插入到2D-3D匹配对中,其中2D-3D匹配对中的2D坐标来自将匹配点,3D坐标来自对应轮廓采样点在物体3D模型上的坐标;
根据2D-3D匹配对,利用RANSAC机制求解PnP,根据重投影误差确定内点的个数;预先设置内点个数阈值,如果内点个数超过阈值,则对当前帧跟踪成功,输出6自由度的姿态。
10.一种弱纹理物体姿态跟踪装置,其特征在于,所述装置包括存储器和处理器,其中:
所述存储器,用于存储代码和文档;
所述处理器,用于执行所述存储器中所存储的代码和文档用以实现权利要求1至6任一所述的方法步骤。

说明书全文

弱纹理物体姿态跟踪方法、系统及装置

技术领域

[0001] 本发明实施方式涉及计算机视觉领域,尤其涉及一种弱纹理物体姿态跟踪方法、系统及装置。

背景技术

[0002] 三维物体姿态追踪是计算机视觉领域一个典型的任务,它通过实时地计算三维物体在场景中的6自由度(R,t)姿态数据,使得外界对场景中的三维物体的位置和朝向有一个清晰认识,在增强现实、工业辅助、机器人等领域有着非常多的应用。三维物体按表面纹理丰富程度可分为富纹理和弱纹理。
[0003] 富纹理因为具有比较丰富的纹理信息,因此可以利用成熟的计算机视觉算法对其进行视觉特征的提取和描述,然后通过2D图像特征匹配等方法得到与3D模型之间的匹配对,进行姿态估计和跟踪,最后得到物体的6自由度姿态。
[0004] 弱纹理物体也是非常常见的一类物体,小到生产车间的螺丝、扳手、各种零部件,大到生活中的几乎所有家用电器汽车消费电子产品等,可以说弱纹理物体充斥着我们的日常生活和社会生产。对弱纹理物体进行6自由度的姿态跟踪,可以解决很多非常实用的问题,比如日常生活中对家用电器进行虚拟的按钮标注以实现说明书的功能,比如对汽车进行虚拟的装修以实现多维度展示的功能,比如工业上辅助工人进行零部件的装配、辅助机器人进行物件的精确抓取等等。这些增强现实的应用或者工业生产上的应用都需要实时获得弱纹理物体的6自由度姿态信息,这样才能把辅助的数字内容或标签精确地放置在物体的真实位置上,从而让使用者可以在同一个视野中快速获得有用信息,提高生产和生产效率。但是,弱纹理物体的表面往往颜色单一,没有丰富的纹理,甚至带有高光、镜面反射等特性,非常缺乏甚至没有可靠的视觉特征,使得传统的计算机视觉算法不能够很好的解决对这类物体的6自由度姿态的跟踪问题。
[0005] 现有技术1的中国专利申请CN107679537A公开了一种基于轮廓点ORB特征匹配的无纹理空间目标姿态估计算法,其使用ORB特征对无纹理物体的多视点投影图像的轮廓进行特征提取,将待检测的目标图像中的ORB特征与之进行特征匹配,从而得到2D-3D的匹配信息。最后结合特征匹配的正确度辅助求解姿态参数。
[0006] 现有技术2的美国专利US9892543B2公开了一种用于估计无纹理对象的姿态的系统和方法,通过机器学习的方法对弱纹理物体进行姿态的估计。首先将弱纹理物体的3D模型进行投影渲染,该渲染尽可能地穷举不同的视点、不同的光照条件、不同的尺度距离,得到一系列的训练数据集。训练的时候采用树结构将目标物体在图像中的区进行索引。对于输入的待检测的目标图像,将其与上述数据集进行匹配检索,最后推导出当前图像中目标物体的6自由度姿态。
[0007] 但是,在实施本发明的过程中,发明人发现现有技术至少存在如下问题:
[0008] 现有技术1的中国专利申请CN107679537A使用的是传统的计算机视觉算法,其缺点是对于绝大部分无纹理物体的投影图像的轮廓来说,利用ORB特征无法提取出足够的可靠视觉特征。在与待检测图像进行ORB特征匹配过程中,由于现实环境的图像中物体轮廓信息非常容易受噪声、背景、遮挡等干扰,导致特征独特性差,特征匹配外点率极高。因此在真实的环境中进行6自由度的姿态求解时非常容易失败。
[0009] 现有技术2的美国专利US9892543B2使用了较新的机器学习算法,其缺点是对于每一个弱纹理物体均需要构建数据量非常巨大的训练数据集以尽可能地覆盖常见的各种情形和姿态。该方法的成功率和精度非常依赖训练数据集的规模,因此在实用领域其成本很高,不具有方便的可扩展性,无法快速套用到另一个弱纹理物体上。该方法另一个缺点在于其匹配和姿态推理的过程需要依赖大量计算资源,并且比较耗时,因此不具备在一般计算设备上(如智能手机、AR眼镜等)进行实时的姿态跟踪的能力。
[0010] 另外,现实环境中的弱纹理物体通常还需要面临遮挡、背景干扰、高光材质、镜面反射等严重影响计算机视觉或机器学习算法发挥的情形,现有技术的方法对上述问题均没有比较好的系统鲁棒性,容易在使用过程中发生跟踪失败或者姿态错误等情况出现。
[0011] 应该注意,上面对技术背景的介绍只是为了方便对本发明的技术方案进行清楚、完整的说明,并方便本领域技术人员的理解而阐述的。不能仅仅因为这些方案在本发明的背景技术部分进行了阐述而认为上述技术方案为本领域技术人员所公知。

发明内容

[0012] 针对上述问题,本发明实施方式的目的在于提供一种弱纹理物体姿态跟踪方法、系统及装置,利用弱纹理物体的3D模型和目标物体的实景图像,无需依赖大量先验的数据进行训练,因此在普通计算设备上能够实现实时姿态跟踪。
[0013] 为实现上述目的,本发明实施方式提供一种弱纹理物体姿态跟踪方法,包括:对输入的当前图像进行姿态的预测,得到预测的物体姿态,具体包括:输入当前帧图像;如果当前帧是初始帧,则对系统默认姿态进行调整作为预测的物体姿态旋转矩阵R0=Radjust,平移向量t0=tadjust,所述默认姿态由默认的旋转矩阵和平移向量表示,记为Rinit,tinit,其值根据以下条件优化计算得到:
[0014]
[0015] 其中,M表示物体3D模型;I表示图像;Ori(M)表示物体3D模型的中心;Ori(I)表示图像的中心;Proj(;R,t)表示按照姿态(R,t)进行投影;Area()表示计算区域面积;
[0016] 调整默认姿态按照一定的步长(ΔR,Δt)进行:
[0017] ΔR=exp(δrx,δry,δrz)T,Δt=(δtx,δty,δtz)T
[0018] 其中,ΔR是预设的旋转步长,Δt是预设的平移步长;δtx,δty,δtz为单位平移的步长;δrx,δry,δrz为单位旋转向量的步长;exp()为SO(3)群下的指数映射函数,将旋转量转化为旋转矩阵;
[0019] 调整后的姿态根据SE(3)群的计算准则为:
[0020] Radjust=ΔR*Rinit,tadjust=ΔR*tinit+Δt
[0021] 则预测的物体姿态(R0,t0)为R0=Radjust,t0=tadjust;或者,如果当前帧不是初始帧,则使用上一帧的姿态作为预测的物体姿态旋转矩阵R0=Rprev,平移向量t0=tprev;根据预测的物体姿态获取物体轮廓形状数据,具体包括:根据预测的物体姿态进行物体3D模型的投影渲染,并提取投影轮廓;对轮廓信息进行采样,进行轮廓局部颜色信息的统计,获取物体轮廓形状数据;根据物体轮廓形状数据,在当前实景图像上进行轮廓形状特征的查找匹配;根据匹配信息进行姿态解算。
[0022] 本发明实施方式还提供一种弱纹理物体姿态跟踪系统,包括:图像采集单元,用于采集目标物体实景图像;人机交互单元,用于将采集到的目标物体实景图显示在显示单元上;数据存储单元,用于存储物体3D模型;渲染单元,用于根据预测的物体姿态进行物体3D模型的投影渲染,具体用于:根据预测的物体姿态进行物体3D模型的投影渲染,渲染二值化的前景图,对所述前景图进行2D轮廓的提取;通讯同步单元,用于将渲染后的平面图像与图像采集单元采集的图像进行数据同步;计算单元,用于对输入的当前帧图像进行姿态的预测,得到预测的物体姿态,根据预测的物体姿态获取物体轮廓形状数据,根据物体轮廓形状数据,在当前实景图像上进行轮廓形状特征的查找匹配,并根据匹配信息进行姿态解算;所述计算单元具体用于:判断输入的当前帧图像是否为初始帧;如果当前帧是初始帧,则对系统默认姿态进行调整作为预测的物体姿态旋转矩阵R0=Radjust,平移向量t0=tadjust,所述默认姿态由默认的旋转矩阵和平移向量表示,记为Rinit,tinit,其值根据以下条件优化计算得到:
[0023]
[0024] 其中,M表示物体3D模型;I表示图像;Ori(M)表示物体3D模型的中心;Ori(I)表示图像的中心;Proj(;R,t)表示按照姿态(R,t)进行投影;Area()表示计算区域面积;
[0025] 调整默认姿态按照一定的步长(ΔR,Δt)进行:
[0026] ΔR=exp(δrx,δry,δrz)T,Δt=(δtx,δty,δtz)T
[0027] 其中,ΔR是预设的旋转步长,Δt是预设的平移步长;δtx,δty,δtz为单位平移的步长;δrx,δry,δrz为单位旋转向量的步长;exp()为SO(3)群下的指数映射函数,将旋转量转化为旋转矩阵;
[0028] 调整后的姿态根据SE(3)群的计算准则为:
[0029] Radjust=ΔR*Rinit,tadjust=ΔR*tinit+Δt
[0030] 则预测的物体姿态(R0,t0)为R0=Radjust,t0=tadjust;如果当前帧不是初始帧,则使用上一帧的姿态作为预测的物体姿态旋转矩阵R0=Rprev,平移向量t0=tprev。
[0031] 本发明实施方式又提供一种弱纹理物体姿态跟踪装置,所述装置包括存储器和处理器,其中:所述存储器,用于存储代码和文档;所述处理器,用于执行所述存储器中所存储的代码和文档用以实现前述方法步骤。
[0032] 由上可见,本发明实施方式结合了弱纹理物体3D模型的投影轮廓以及实景图像上的颜色信息进行局部形状特征的统计描述,轮廓的提取并不在实景图像上进行,因此可以应对现实图像中的噪声对边缘轮廓信息的干扰;其次,本发明实施方式在对物体轮廓周围局部特征进行统计时进行了离散化的有条件间隔采样,保留强结构的局部区域,淡化弱结构、平坦的局部区域,因此可以很好地应对背景干扰、遮挡等情形;再次,由于整个系统仅依赖物体的外轮廓,而不需要依赖物体内部表面,因此本发明实施方式对于高光材质、镜面反射等复杂情形,可以将这类干扰的影响降到最低,具有很高的系统鲁棒性;此外,本发明实施方式中系统的输入仅需要弱纹理物体的3D模型和目标物体的实景图像,不需要依赖大量先验的数据进行训练,具有很高的扩展性和适应性。所使用的局部特征统计方法相比传统的ORB、SIFT等算子计算复杂度低,可以在普通的计算设备上(例如智能手机、AR眼镜等)达到实时地姿态跟踪。附图说明
[0033] 为了更清楚地说明本发明实施方式或现有技术中的技术方案,下面将对实施方式或现有技术描述中所需要使用的附图逐一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0034] 图1为本发明实施方式提供的弱纹理物体姿态跟踪方法的流程示意图;
[0035] 图2为本发明实施方式提供的对输入的当前帧图像进行姿态的预测的流程示意图;
[0036] 图3为本发明实施方式提供的根据预测的物体姿态获取物体轮廓形状数据的流程示意图;
[0037] 图4为本发明实施方式提供的在当前实景图像上进行轮廓形状特征的查找匹配的流程示意图;
[0038] 图5为本发明实施方式提供的根据匹配信息进行姿态解算的流程示意图
[0039] 图6为本发明实施方式提供的一种弱纹理物体姿态跟踪系统的架构示意图;
[0040] 图7为本发明实施方式提供的另一种弱纹理物体姿态跟踪装置的结构示意图。

具体实施方式

[0041] 为使本发明实施方式的目的、技术方案和优点更加清楚,下面将结合本发明实施方式中的附图,对本发明实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式是本发明一部分实施方式,而不是全部的实施方式。基于本发明中的实施方式,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施方式,都属于本发明保护的范围。
[0042] 本发明实施方式提供了一种弱纹理物体姿态跟踪方法,主要包括物体姿态预测、物体轮廓形状数据获取、实景图像轮廓形状查找匹配、和姿态解算。如图1所示,具体包括以下步骤:
[0043] 步骤1,对输入的当前帧图像进行姿态的预测,得到预测的物体姿态。
[0044] 本步骤的详细方式可以参看图2所示。
[0045] 步骤101,更新预测的物体姿态。
[0046] 步骤102,输入当前帧图像。
[0047] 步骤103,判断当前帧是否为初始帧,如果是,进入步骤104;如果否,进入步骤105。
[0048] 在本实施方式中,如果系统从未进入过跟踪流程,例如刚打开摄像头等情况,或者系统上一帧的跟踪状态为失败,则当前帧被认为是初始帧,否则,为非初始帧。
[0049] 步骤104,对系统默认姿态进行调整作为预测的物体姿态。
[0050] 在本实施方式中,针对初始帧,对系统默认姿态进行调整作为预测的物体姿态,即(R0,t0)为(Radjust,tadjust),其中R0=Radjust,t0=tadjust,R表示旋转矩阵,t表示平移向量。
[0051] 默认姿态调整的方法如下:
[0052] 默认姿态由默认的旋转矩阵和平移向量表示,记为Rinit,tinit,其值根据以下条件优化计算得到:
[0053]
[0054] 其中,M表示物体3D模型;I表示图像;Ori(M)表示物体3D模型的中心;Ori(I)表示图像的中心;Proj(;R,t)表示按照姿态(R,t)进行投影;Area()表示计算区域面积。
[0055] 默认姿态Rinit,tinit是满足模型M经过投影后,其中心正好位于图像中心,且其投影区域在画面中所占的面积最大。
[0056] 调整默认姿态按照一定的步长(ΔR,Δt)进行:
[0057] ΔR=exp(δrx,δry,δrz)T,Δt=(δtx,δty,δtz)T
[0058] 其中,ΔR是预设的旋转步长,Δt是预设的平移步长;δrx,δry,δrz为单位旋转向量的步长;δtx,δty,δtz为单位平移的步长;exp()为SO(3)群下的指数映射函数,将旋转量转化为旋转矩阵,其中,SO(3)为3维特殊正交群,任何3维旋转矩阵都属于SO(3),其运算也遵循SO(3)的运算法则。
[0059] 调整后的姿态根据SE(3)群的计算准则为:
[0060] Radjust=ΔR*Rinit,tadjust=ΔR*tinit+Δt
[0061] 其中,SE(3)为3维特殊欧式群,表示刚体变换,即旋转加平移。
[0062] 则预测的物体姿态(R0,t0)为(Radjust,tadjust),其中R0=Radjust,t0=tadjust。
[0063] 步骤105,使用上一帧的姿态作为预测的物体姿态。
[0064] 在本实施方式中,针对非初始帧,则可以直接使用上一帧的姿态(Rprev,tprev)作为预测的物体姿态(R0,t0),其中R0=Rprev,t0=tprev。
[0065] 步骤2,根据预测的物体姿态获取物体轮廓形状数据。
[0066] 本步骤的详细方式可以参看图3所示。
[0067] 步骤201,更新预测的物体姿态。
[0068] 步骤202,根据预测的物体姿态进行物体3D模型的投影渲染。
[0069] 在本实施方式中,根据预测的物体姿态R0=Radjust,t0=tadjust或者R0=Rprev,t0=tprev进行物体3D模型的投影渲染。
[0070] 步骤203,提取投影轮廓。
[0071] 在本实施方式中,为了减少计算的复杂度,可以仅渲染二值化的前景图Fg,然后对该前景图Fg进行2D轮廓的提取。优选地仅提取外轮廓,可以采用轮廓提取方法,例如Topological Structural Analysis of Digitized Binary Images by Border Following,当然也可以采用其他方法,并不作限制。
[0072] 值得注意的是,在本实施方式中,由于轮廓提取是在投影的二值化图像上进行,而不是在实景目标图像上,因此不会受到实景图像噪声的干扰,得到的轮廓可以保证准确。
[0073] 步骤204,对轮廓信息进行采样。
[0074] 在本实施方式中,得到投影的2D轮廓后,需要对轮廓进行信息采样。
[0075] 在实际操作过程中,任何采样均会带来一定程度的形状信息丢失。现有通常使用的简单采样方式是沿着轮廓线进行均匀间隔采样,得到一系列的2D轮廓采样点。然而这种均匀间隔采样方式忽略了物体在实际视野中的形状特性,不能很好的保留结构特征。例如,当采样较稀疏时,形状损失较大;而当采样较密集时,计算量会成倍上升。
[0076] 值得注意的是,在本实施方式中,采用一种非均匀的采样方式,即根据轮廓局部的结构特征,设定自适应的采样步长,保留强结构特征,淡化平坦区域、弱结构区域,最大限度的保留原始形状,又不提高采样的密集程度。
[0077] 自适应的采样步长计算方式如下:
[0078] λi=λ0*Weigh(θ),θ=Angle(Pi-1)
[0079] 其中,λi为自适应的采样步长;λ0为基础步长;θ表示以上一个采样点Pi-1为中心,在轮廓线两侧所形成的夹Angle(Pi-1);Weigh(θ)表示对该夹角的加权系数。
[0080] 夹角θ越接近于180°表示该区域结构性越弱、越平坦,反之表示该区域结构性越强、越尖锐。根据夹角θ的不同,设定不同的加权系数,结构性强的区域设定较小的系数,结构性弱的区域设定较大的系数。
[0081] 步骤205,进行轮廓局部颜色信息的统计,获取物体轮廓形状数据。
[0082] 在本实施方式中,根据上述自适应采样步长进行轮廓信息采样得到的轮廓点为{Pi(u,v;x,y,z)|i=[1,N]},共有N个轮廓点。其中,轮廓点Pi既包含了在物体3D模型中的3D点位置(x,y,z),同时也包含在投影图像上的2D位置(u,v)。
[0083] 在得到N个轮廓点后需要进行轮廓局部颜色信息的统计,得到最终需要的物体轮廓形状数据。在本实施方式中,统计是在上一帧目标物体的实景图像上进行的。
[0084] 首先,计算每个轮廓点Pi的法线方向向量ni:
[0085] ni=(vi-vi+1,ui+1-ui)
[0086] 其中,ui,vi是轮廓点Pi的像素坐标;ui+1,vi+1是轮廓点Pi+1的像素坐标;该法线计算公式就是表示ni与Pi、Pi+1点之间的连线垂直。
[0087] 然后,沿着该法线向量的正方向和反方向,统计实景图像上的像素,计算其颜色直方图,作为该轮廓点的局部形状描述,分别记为内部形状和外部形状。
[0088] 最后,将所有轮廓点的内部形状和外部形状分别叠加,构成物体的轮廓形状数据Appearanceobj:
[0089]
[0090] Appearanceobj={∑iIntApperancei,∑iExtAppearancei}
[0091] 其中,Appearancei表示轮廓点Pi的轮廓形状,IntApperancei代表内部形状,ExtAppearancei代表外部形状;Histo()是统计颜色直方图函数;α为步长因子。
[0092] 沿着法线向量的正方向和反方向,分别统计L个像素,则该点的形状特征就由2L+1个像素所描述。因此总共需要考察的点数为N*(2L+1),与传统的ORB、SIFT等局部特征需要对整幅图像进行特征提取计算来说,计算量成几何级数下降,因此本实施方式中进行轮廓局部颜色信息的统计是非常高效的。
[0093] 步骤3,根据物体轮廓形状数据,在当前实景图像上进行轮廓形状特征的查找匹配。
[0094] 本步骤的详细方式可以参看图4所示。
[0095] 步骤301,更新预测的物体姿态。
[0096] 步骤302,将轮廓采样点Pi在当前实景图像上进行投影。
[0097] 在本实施方式中,根据预测的物体姿态R0=Radjust,t0=tadjust或者R0=Rprev,t0=tprev,将轮廓采样点{Pi(u,v;x,y,z)|i=[1,N]}在当前实景图像上进行投影。
[0098] 步骤303,沿着轮廓采样点的法线的正方向和反方向在当前实景图像上计算每个像素的梯度。
[0099] 在本实施方式中,根据前述步骤205的方法计算每个轮廓采样点Pi的法线方向向量ni,沿着该法线的正方向和反方向在当前实景图像上计算每个像素的梯度。
[0100] 步骤304,判断像素梯度是否超过阈值,如果是,则进行步骤305;如果否,则返回步骤303。
[0101] 在本实施方式中,预先设置像素梯度阈值。如果像素梯度超过阈值,则认为该像素为候选点;而如果像素梯度没有超过阈值,则返回继续沿着法线查找满足梯度阈值的候选点。记候选点为{Ci|i=[1,m]},可以设定共找到m个候选点。
[0102] 步骤305,将该像素作为候选点,统计候选点两侧局部颜色信息,与物体轮廓形状数据进行比较,根据相似度找出匹配点。
[0103] 在本实施方式中,以每个候选点Ci为中心,统计法线两侧的颜色直方图,得到候选点局部的形状数据Appearancec,将其与已计算好的物体轮廓形状数据Appearanceobj进行相似性度量。相似性度量的方法是综合评定两个事物之间相近程度的一种度量。两个事物越接近,它们的相似性度量也就越大,而两个事物越疏远,它们的相似性度量也就越小。相似性度量的方法种类繁多,一般根据实际问题进行选用。例如在本实施方式中可以采用L1或L2距离或者其他方式,在此并不作具体限制。
[0104] 在本实施方式中,通过相似性度量找出候选点中最相似的点,也可以设置相似度阈值,当相似性度量超过阈值时,则可以作为匹配点。
[0105] 步骤306,将找出的匹配点插入到2D-3D匹配对中。
[0106] 在本实施方式中,将找出的匹配点插入到2D-3D匹配对中。2D-3D匹配对中的2D坐标来自匹配点,而3D坐标则来自对应轮廓采样点在物体3D模型上的坐标。
[0107] 步骤4,根据匹配信息进行姿态解算。
[0108] 本步骤的详细方式可以参看图5所示。
[0109] 步骤401,根据2D-3D匹配对,利用RANSAC机制求解PnP。
[0110] 在本实施方式中,PnP(pespective-n-point)求解算法是指通过多个2D-3D匹配对,计算出其投影关系,从而获得物体的位置和姿态。RANSAC(RANdom SAmple Consensus,随机抽样一致)可以从一组包含内点(构建模型的数据)和外点(不能适应该模型的数据)的观测数据集中,通过迭代方式估计最优数学模型的参数。
[0111] 步骤402,判断内点的个数是否超过预先设置的阈值,如果超过,进入步骤403;则对当前帧跟踪成功,输出6自由度的姿态;如果没有超过,对当前帧跟踪失败,则返回更新预测姿态重复上述过程。
[0112] 在本实施方式中,利用RANSAC机制求解PnP后,根据重投影误差确定内点的个数,并判断内点个数是否超过预先设置的阈值,例如8个。
[0113] 步骤403,对当前帧跟踪成功,输出6自由度的姿态;
[0114] 步骤404,输入下一帧。
[0115] 如图6所示,本发明实施方式还提供了一种弱纹理物体姿态跟踪系统,该系统的输入为图像采集单元采集到的目标物体实景图像。目标物体实景图像经过人机交互单元显示在设备的显示单元中,物体3D模型存储在数据存储单元。在进行姿态跟踪时,渲染单元负责将物体3D模型进行投影渲染,渲染后的平面图像通过通讯同步单元与图像采集单元采集到的目标物体实景图像进行数据同步,在计算单元中与目标物体实景图像一起进行6自由度的姿态跟踪的计算,最终得到目标物体的姿态数据。
[0116] 其中,计算单元具体用于对输入的当前帧图像进行姿态的预测,得到预测的物体姿态,根据预测的物体姿态获取物体轮廓形状数据,根据物体轮廓形状数据,在当前实景图像上进行轮廓形状特征的查找匹配,并根据匹配信息进行姿态解算。
[0117] 需要注意的是,上述的涉及到的弱纹理物体姿态跟踪系统中具体技术细节和弱纹理物体姿态跟踪方法类似,尤其是计算单元在物体姿态预测、物体轮廓形状数据获取、实景图像轮廓形状查找匹配、6自由度姿态解算的过程中所涉及到的新型的非均匀自适应步长的轮廓点采样算法和高效的物体轮廓的形状特征描述和匹配算法都和前述的弱纹理物体姿态跟踪方法类似,故不再具体赘述。
[0118] 如图7所示,本发明实施方式还提供一种弱纹理物体姿态跟踪装置,包括存储器和处理器,其中:
[0119] 存储器701,用于存储代码和文档;
[0120] 处理器702,用于执行所述存储器中所存储的代码和文档用以实现如前所述的弱纹理三维物体姿态估计的方法。
[0121] 上述的涉及到的弱纹理物体姿态跟踪装置具体技术细节和前述弱纹理物体姿态跟踪方法类似,故不再具体赘述。
[0122] 由上可见,本发明实施方式结合了弱纹理物体3D模型的投影轮廓以及实景图像上的颜色信息进行局部形状特征的统计描述,轮廓的提取并不在实景图像上进行,因此可以应对现实图像中的噪声对边缘轮廓信息的干扰;其次,本发明实施方式在对物体轮廓周围局部特征进行统计时进行了离散化的有条件间隔采样,保留强结构的局部区域,淡化弱结构、平坦的局部区域,因此可以很好地应对背景干扰、遮挡等情形;再次,由于整个系统仅依赖物体的外轮廓,而不需要依赖物体内部表面,因此本发明实施方式对于高光材质、镜面反射等复杂情形,可以将这类干扰的影响降到最低,具有很高的系统鲁棒性;此外,本发明实施方式中系统的输入仅需要弱纹理物体的3D模型和目标物体的实景图像,不需要依赖大量先验的数据进行训练,具有很高的扩展性和适应性。所使用的局部特征统计方法相比传统的ORB、SIFT等算子计算复杂度低,可以在普通的计算设备上(例如智能手机、AR眼镜等)达到实时地姿态跟踪。
[0123] 本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0124] 本说明书中的各个实施方式均采用递进的方式描述,各个实施方式之间相同相似的部分互相参见即可,每个实施方式重点说明的都是与其他实施方式的不同之处。
[0125] 最后应说明的是:上面对本发明的各种实施方式的描述以描述的目的提供给本领域技术人员。其不旨在是穷举的、或者不旨在将本发明限制于单个公开的实施方式。如上所述,本发明的各种替代和变化对于上述技术所属领域技术人员而言将是显而易见的。因此,虽然已经具体讨论了一些另选的实施方式,但是其它实施方式将是显而易见的,或者本领域技术人员相对容易得出。本发明旨在包括在此已经讨论过的本发明的所有替代、修改、和变化,以及落在上述申请的精神和范围内的其它实施方式。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈