本发明涉及一种ar(augmentreality,增强现实)沙盘投影映射方法,尤其涉及了一种基于棋盘格图案的ar沙盘校准模型计算方法。
背景技术:
随着谷歌眼镜在2013年4月份的发布,增强现实(augmentedreality,简称ar)的概念和技术在最近几年受到了越来越多的关注。简单的说,增强现实技术是一种实时地计算摄影机的位置及角度,从而在真实影像上叠加合理的图像、视频或3d模型的技术。这种技术能够通过为用户提供基于真实场景的虚拟影像,增强用户的现实世界体验,提供沉浸式的全新交互方式。由于完全颠覆了现有的人机交互方式,增强现实技术被认为是一项具有革命性意义的技术。ar沙盘是增强现实技术的一项重要落地应用,主要应用场景是早教中心或幼儿园的寓教于乐式的互动课程教学。
ar沙盘通过悬挂在沙盘上方的rgb-d传感器获取沙盘中沙子高低不平的高度信息,在计算机中进行三维重建后,将合理的虚拟影像通过投影仪投射到沙子上,并且在沙子高度发生变化时能够实时地改变投影内容,即具备实时交互的能力,能够达到增强现实式的沉浸体验。ar沙盘的核心技术难点在于正确且快速的投影映射,即根据沙子的高度变化合理且实时地投影出正确的图像。现有的ar沙盘主要基于圆盘检测来构建用于投影映射的校准模型,操作过程繁琐且容易出错,校准精度也不高,难以实现正确的投影映射,无法实现良好的寓教于乐的教学效果。
技术实现要素:
针对现有ar沙盘校准模型计算方法中存在的问题,本发明的目的在于提供一种基于棋盘格图案的ar沙盘校准模型计算方法。
本发明包括ar沙盘校准模型的计算以及在实时互动中的具体应用。提出的ar沙盘校准模型计算方法是在校准模型理论数学表达推导的基础上,通过特定的交互操作进行采样、最小二乘拟合后计算得到。在ar沙盘的实时互动中,校准模型用于将rgb-d传感器采集到的原始深度数据进行正确且实时地映射,保证ar沙盘互动体验的高沉浸感和极佳的用户体验。
本发明方法采用的技术方案是主要分为以下几步,通过以下特定的交互操作和计算获得:
首先处理获得ar沙盘的基本信息,然后在沙盘通过投影仪投影标准棋盘格图案,并通过采集投影图像进行计算处理得到ar沙盘的校准模型。本发明实施获得校准模型后,还通过特殊方式验证校准模型的精度和实时性。
所述ar沙盘的基本信息的获得具体为:在ar沙盘中用沙子堆一个最高点,并挖一个最低点,然后用rgb-d传感器俯拍采集得到沙盘的rgb图像中标记出沙盘边界,同时提取并记录沙盘中沙子的最高点和最低点深度信息。
rgb-d传感器包括rgb相机和深度相机,rgb相机和深度相机俯拍分别采集到rgb图像和深度图像,本发明主要用到了深度相机及其深度图像。
所述的ar沙盘的基本信息具体采用以下方式获得:
1)在ar沙盘中用沙子堆一个高点,并挖一个低点,在rgb-d传感器采集得到沙盘的rgb图像中标记出沙盘区域的边界,记录沙盘区域的左上角和右下角在rgb图像中的像素坐标值(x1,y1)和(x2,y2);
2)根据rgb-d传感器采集得到沙盘的深度图像记录沙盘区域中的最高点和最低点的深度值dmax、dmin。
根据权利要求1所述的一种基于棋盘格图案的ar沙盘校准模型计算方法,其特征在于:
所述校准模型的获得具体为:将ar沙盘中的沙子铺平,控制投影仪向沙子上投射若干个标准棋盘格图案,将白色纸板置于沙盘中使棋盘格图案显示在白色纸板上,利用rgb-d传感器在白色纸板高低间隔交替布置下采集若干组采样信息,拟合计算后得到校准模型。
所述的校准模型具体采用以下方式进行计算:
1)将ar沙盘中的沙子铺平,控制投影仪在沙子上依次投射m个标准棋盘格图案,投射下一个棋盘格图案时隐藏上一个棋盘格图案,保证同一时刻沙盘区域内只有一个棋盘格图案;每个标准棋盘格图案投射时的显示投射位置处放置白色纸板,白色纸板置于沙盘上方且水平面布置,使棋盘格图案完整投射在白色纸板上,白色纸板的大小覆盖到整个标准棋盘格图案;
2)利用rgb-d传感器在白色纸板高低间隔交替布置下收集m个标准棋盘格图案对应的m组采样信息,采样信息包括rgb图像和深度图像;
3)基于最小二乘拟合方法构建以下目标函数e:
其中,m是采样信息组数的总数,k是采样信息组数的序数,ak表示第k组采样信息的第一系数,bk表示第k组采样信息的第二系数,ck表示第k组采样信息的第三系数;
每组采样信息的第一系数a、第二系数b和第三系数c采用以下公式表示:
a=q9zcxd+q10zcyd+q11zc+q12
b=q1zcxd+q2zcyd+q3zc+q4
c=q5zcxd+q6zcyd+q7zc+q8
其中,xd,yd分别表示标准棋盘格图案中的固定点在rgb-d传感器采集的深度图像中的平面坐标,zc表示标准棋盘格图案中的固定点在rgb-d传感器采集的深度图像中的深度值,q1、q2、q3、q4、q5、q6、q7、q8、q9、q10、q11、q12分别表示校准模型的第一~第十二参数;
4)利用k组采样信息对目标函数进行求解获得如下线性方程组:
mq=0
q=(q1q2q3q4q5q6q7q8q9q10q11q12)t
其中,m是线性方程组的维度为12×12的系数矩阵,mk表示第k组采样信息在系数矩阵中的计算分量,
求解上述线性方程组的非零解得到参数集合q;
5)在ar沙盘的实际互动体验中,对于从rgb-d传感器采集的深度图像中获取的任意一点作为待投影点,采用以下公式表示的从rgb-d传感器的深度相机空间到投影仪屏幕空间的校准模型计算,获得待投影点在投影仪屏幕空间中的理论平面坐标puv(us,vs),用理论坐标输入投影仪进行投影:
其中,us,vs分别表示待投影点在投影仪屏幕空间中的理论平面坐标,xd,yd分别表示待投影点在rgb-d传感器采集的深度图像中的平面坐标,zc表示待投影点在rgb-d传感器采集的深度图像中的深度值。
得到的校准模型用于ar沙盘的实时互动体验,校准模型能够将rgb-d传感器采集到的原始深度数据进行正确且实时地映射。
所述步骤2)具体为:将沙盘区域按类似于国际象棋的黑白格方式分为m个区域块,每个区域块对应投射一个标准棋盘格图案;如国际象棋的黑白格方式,将对角线连接的各个区域块组成一组,从而将沙盘区域的所有区域块分为两组,两组区域块投射标准棋盘格图案时的白色纸板的布置高度不同,白色纸板在两组区域块分别处于低位和高位的两种高度位置,低位时白色纸板直接水平的放置在沙子铺平的沙面上,高位时白色纸板和沙盘的沙面之间的平面垂直距离为20-30cm。
标准棋盘格图案中的固定点为人工事先选定,在标准棋盘格图案中相对位置固定,可在标准棋盘格图案中进行标记。本发明方法处理计算时固定点代表了任意一点。
所述步骤2)中的每组采样信息包括:标准棋盘格图案中的固定点在rgb-d传感器采集的深度图像中的平面坐标pd(xd,yd)和深度值zc以及标准棋盘格图案中固定点实际在投影仪屏幕空间中的平面坐标ps(xs,ys)。
所述步骤1)中,若干个标准棋盘格图案的图案相同,均为类似于国际象棋的多个黑白格构成的长方形图案。
所述m个标准棋盘格图案投射到沙盘区域的位置不同,且所有位置总和刚好覆盖整个沙盘区域。
本发明的有益效果是:
1、本发明方法解决了现有ar沙盘校准模型计算方法得到的校准模型精度不高的问题,提出的校准方法能够得到精确的校准模型,校准模型能够正确地用于ar沙盘的投影映射。
2、本发明方法的具体实施过程简洁高效、易于操作,能够满足ar沙盘的实时交互要求。在ar沙盘虚拟场景的实时渲染过程中,得到的校准模型能够实时地将rgb-d传感器采集到的原始深度数据正确且实时地映射到投影仪的屏幕空间,从而保证ar沙盘互动体验的沉浸感和极佳的用户体验。
附图说明
图1是本实施例中所采用的ar沙盘示意图。
图2是本实施例在校准过程中标记出沙盘区域示意图。
图3是本实施例在校准过程中按照一定顺序投射出的15个标准棋盘格示意图。
图4是本实施例在校准过程中通过白色纸板收集采样信息的示意图。
图5是本实施例在校准完成后用印有标准棋盘格图案的纸板验证校准模型精度的示意图。
图中:沙盘座1、沙子2、投影仪3、rgb-d传感器4、白色纸板5、标准棋盘格图案6。
具体实施方式
下面结合附图及具体实施例对本发明作进一步详细说明。
如图1所示,ar沙盘包括沙盘座1、沙子2、投影仪3和rgb-d传感器4,沙子2铺设于沙盘座1的沙盘容器中,投影仪3和rgb-d传感器4布置在沙盘座1上方,具体实施通过一根侧面的支架杆固定安装,投影仪3和rgb-d传感器4均朝向正下方拍摄采集。
本发明的具体实施例如下:
在本实施方案中使用的ar沙盘如图1所示。实际运行时的具体工作过程为,投影仪将虚拟图像投射到高低不平的沙子表面,实现增强现实式的体验效果,rgb-d传感器获取沙盘中沙子高低不平的高度信息,用于计算机进行三维重建,沙子是虚拟图像叠加在现实世界中的媒介,虚拟图像能够根据沙子高度的变化实时改变。
1、ar沙盘的基本信息具体采用以下方式获得:
1)在ar沙盘中用沙子堆一个最高点,并挖一个最低点,在rgb-d传感器采集得到的rgb图像中标记出沙盘边界;
2)确定无误后,记录沙盘区域的左上角和右下角在rgb图像中的像素坐标值(x1,y1)、(x2,y2),分别为(116,128)、(492,433),同时记录最高点和最低点深度信息,dmax为1790mm,dmin为1615mm。
2、校准模型具体采用以下方式进行计算:
1)将ar沙盘中的沙子铺平,控制投影仪在沙子上按照从左到右、从上到下的顺序投射3行、每行5个共15个标准棋盘格图案6,如图3所示,投射下一个棋盘格图案时隐藏上一个棋盘格图案,保证同一时刻沙盘区域内只有一个棋盘格图案;每个标准棋盘格图案投射时的显示投射位置处放置白色纸板5,白色纸板置于沙盘上方且水平面布置,使棋盘格图案完整投射在白色纸板5上,白色纸板的大小覆盖到整个标准棋盘格图案6。
2)每个棋盘格显示在对应的投射位置处时,将白色纸板置于沙盘中,使棋盘格显示在纸板上如图4所示,利用rgb-d传感器按照高低间隔的方式收集15组采样信息;
以棋盘格右上角的一点为固定点,每组采样信息包括:标准棋盘格图案中的固定点在rgb-d传感器采集的深度图像中的平面坐标pd(xd,yd)和深度值zc。
3)基于最小二乘拟合方法构建目标函数:
其中,15是2)中所述的采样信息组数,k是其中第k组采样信息;
每组采样信息的第一系数a、第二系数b和第三系数c采用以下公式表示:
a=q9zcxd+q10zcyd+q11zc+q12
b=q1zcxd+q2zcyd+q3zc+q4
c=q5zcxd+q6zcyd+q7zc+q8
4)对目标函数进行求解可得到如下线性方程组:
mq=0
q=(q1q2q3q4q5q6q7q8q9q10q11q12)t
求解该线性方程组的非零解即可得到校准模型的参数为q=(14.50.507-302-254370.0926-20.851268766.15ε-43.29ε-40.85-21.1)t。
5)在ar沙盘的实际互动体验中,对于从rgb-d传感器采集的深度图像中获取的待投影的任意一点,采用以下公式表示的从rgb-d传感器的深度相机空间到投影仪屏幕空间的校准模型计算,获得其在投影仪屏幕空间中的理论平面坐标puv(us,vs),用理论坐标输入投影仪进行投影:
3、ar沙盘校准模型验证具体采用以下方式进行:
本发明验证校准模型分为两步:第一步计算校准模型在采样点处的均方差,第二步是将印有标准棋盘格图案的纸板水平放置到沙盘上方,并上下左右移动来验证校准模型的精度和实时性。具体采用以下方式进行:
将15组采样信息中的实际坐标和根据校准模型计算得到对应的理论坐标采用以下公式计算校准模型的误差值,误差值为校准模型在15组采样信息处的均方差:
e是计算得到的校准模型误差,计算结果为1.2610。
校准模型误差值的物理意义是在投影仪的屏幕空间中,待投影点的实际平面坐标与根据校准模型计算得到的理论平面坐标之间的距离,e的单位为像素个数,误差值在2.0左右时能够基本满足精度要求。e=1.2610代表了误差为1.2610像素个数,满足要求。
将印有标准棋盘格图案的纸板水平放置到沙盘区域中,观察棋盘格图案中的固定点(实际点)与投影仪投射出的红色十字线的交叉点(理论点)是否基本重合,上下左右移动纸板,观察纸板移动时红色十字线的交叉点是否能够快速跟着棋盘格图案移动且无明显延迟,据此可以验证校准模型的精度和实时性。
综上所述,本发明提出的ar沙盘校准模型计算方法能够通过简单的交互操作和特定的数学计算,得到ar沙盘的校准模型,对rgb-d传感器采集到的原始深度数据进行正确且实时的映射,保证ar沙盘互动体验的沉浸感和极佳的用户体验,带来了显著的效果。