本文是对论文《Real-Time 3D Model Acquisition》的阅读梳理,该工作来自Princeton University和Stanford University,被发表在计算机图形学顶级会议ACM SIGGRAPH 2002。
目录
4.1 实时结构光范围扫描(Real-Time Range Scanning Pipeline)
4.2 快速三维配准(Fast 3D Registration)
4.3 合并与渲染(Merging and Rendering)
5 锚点扫描和重启对准 (Anchor Scans and Restarting Alignment)
1 摘要
本工作基于一个消费级的结构光测距仪(60Hz)、一个消费者视频摄像机、一个用于配准的算法ICP(迭代最接近点)的实时变体,以及基于点的对齐(Registration)、合并和渲染算法,设计了一个新的三维模型采集系统,允许用户用手旋转物体,并在扫描物体时看到一个不断更新的模型。这种紧密的反馈回路使用户能够实时发现和填补模型中的漏洞,并确定物体何时被完全覆盖。基于收集的数据,使用高质量的离线全局注册和表面重建算法来产生一个最终的模型。
2 动机
- 首先,大多数的范围图像注册算法需要用户提供一个初始猜测,将新的扫描结果与现有的三维模型大致对齐。
- 然后,所有的扫描都被渲染在一起,操作者使用这些信息来进行视图规划(例如,寻找洞)。这种对准/视图规划周期的每一次迭代都很耗时,在进行下一次扫描和对准之前,无法得到关于扫描仪位置有效性的反馈。
3 贡献
提出一个快速廉价的交互式三维模型采集系统。系统消除了对昂贵的校准运动控制阶段的需求,并且消除了离线视图规划算法所带来的时间延迟,允许用户用手旋转物体,并在扫描物体时看到一个不断更新的模型。
4 方法
4.1 实时结构光范围扫描(Real-Time Range Scanning Pipeline)
-
标记一个代码,使每一 对相邻的条纹在一段时间内有一个独特的代码,通过查看边界两侧的开 / 关状 态来获得两个比特的信息 ,而不是每一帧获得一个比特的信息
-
" 边界 "不会在每一 帧都是可见的,因为该边界两边的条纹可能都是开启或关闭的
4.2 快速三维配准(Fast 3D Registration)
-
依赖于已知的运动:物体和扫描仪通过一个旋转或平移的台上相对移动,实现实时配准
-
在物体或扫描仪上放置一个跟踪器(无论哪一个相对于另一个移动),基于跟踪器数据配准
由于精度和成本方面的考虑,作者并没有使用上述方法,而使用ICP算法的变种。
ICP [Besl和McKay1992](迭代最接近点),它被广泛用于三维模型的几何排列。在实时测距仪应用中,两个连续的测距图像之间的相对运动很小,所以在最简单的情况下,我们可以简单地将每个测距图像与前一个图像对齐。
ICP要求相对姿势的初始估计值是已知的,从两个网格和对其相关刚体变换的初始猜测开始,并通过反复生成网格上的对应点对和最小化误差度量来迭代完善变换。其算法步骤如下,
作者使用的变体算法步骤如下,这种算法可以在几毫秒内完成扫描的对齐,速度快到可以纳入本系统的实时管道。与其他大多数类似ICP的算法相比,其主要的速度优势来自于使用基于投影的匹配
4.3 合并与渲染(Merging and Rendering)
4.3.1 合并
首先对每个新的范围图像进行三角化,并计算每个顶点的表面法线。接下来,在对准范围图像后,作者抛弃了连接信息,只根据点本身进行合并。这包括将所有的点量化为一个三维网格,并将所有映射到该网格中相同位置的点进行合并。每个网格单元都保持一个运行平均的法线,以便在渲染时使用。
4.3.2 渲染
渲染是用一种叫做 "splatting "的方法完成的[Rusinkiewicz and Levoy 2000; Pfister et al.2000]在这种技术中,为每个点绘制一个与屏幕对齐的图案 (例如,一个阿尔法混合的高斯或一个不透明的圆形或方形 ),按比例调整,使相邻点的图案重叠而不留空隙。当这些点有规律地排列在一个网格上时,比如在这个应用中,它们的间距是预先知道的,为一个给定的视角选择一个花板的大小是很简单的,它可以保证相邻的样本的花板重叠而不留下空隙。因此,产生的渲染结果可以提供一个合并后的表面的外观,而不需要对各点进行三角测量或重建一个一致的多边形网格。图7说明了合并和渲染的算法。
为了进行这种基于体素的合并和重构,有必要选择一个适当的网格大小。较小的网格单元会带来更多的细节,但代价是更大的内存使用量、更低的帧率和对噪声更敏感。较大的网格可以提供更高的帧率,但单个的“splats”变得更加明显。此外,当使用较大的网格时,用户可能无法看到数据中的小孔。在实验中,作者使用的网格大小与测距扫描仪给出的采样间隔的数量级相同;更高的网格分辨率会导致帧率大大降低,而感知质量却没有相应的提高。
4.4 离线配准与表明重建(Offlfline Registration and Surface Reconstruction)
5 锚点扫描和重启对准 (Anchor Scans and Restarting Alignment)
- 锚点扫描应该足够大,使用户能够识别,并且ICP能够可靠地运行。
- 我们希望锚点之间的重叠度相对较低,这样它们就能尽可能多地覆盖物体。
6 实验展示
硬件上:该系统使用一台康柏MP1800 DLP投影机,最大分辨率为1024x768。由于需要与录像机同步,我们目前向投影机发送S-Video信号,限制了我们的分辨率为640x240的间隔。我们使用的摄像机是一台索尼DXC-LS1NTSC摄像机,快门速度为1/500秒。视频由Pinnacle Stu-dioDC10+采集卡进行数字化处理,产生60Hz的640x240交错视频场。
CPU的使用。使用一个双CPU系统,由英特尔奔腾III至强处理器以1GHz速度运行。一个CPU用于范围扫描管道的前几个阶段,即抓取视频帧,寻找条纹边界,跨时间匹配边界,并从累积的照明历史中识别边界。第二个CPU进行三角测量以找到三维点,使用快速ICP算法对准扫描,将测距图像整合到三维网格中,并渲染更新的网格。这条流水线的第一部分以全速运行(60赫兹),而第二部分的运行速度较慢,约为10赫兹。
结果示例
7 讨论与思考
1)准确度和精确度
- 系统中的sample spacing噪声是0.5-0.75毫米。这些样本中的噪声主要是由于定位条纹边界的误差,,这可能是由于相机和数字化仪的噪声或物体纹理造成的 。对于没有高频纹理的表面,我们可以以亚像素的精度找到条纹边界的位置,我们估计每个样本的噪声低于0.1毫米。(我们估计每个样本的噪声在0.1毫米以下(暂时不考虑外差和失真)。这几乎完全是由于相机和采集卡的噪声造成的:使用更高质量的相机和数字化仪(东芝IK-TU40A3- CCD相机和DPS- 465数字化仪),我们得到更低的每个样本的噪声-- 低于0.03毫米。
-
使用高质量的相机和数字化仪,对可实现的最小局部噪声的限制取决于两个因素。首先是相机和投影仪的焦点 。使用较小的光圈(特别是在投影仪上 -- 大多数市售型号使用大光圈)将允许更好地定位条纹的边界 。对这个系统的准确性的第二个主要限制是场景纹理。当表面的反射率快速变化时(与相机像素间距的数量有关),系统无法进行准确的子像素估计,因此每个样本的误差会大大增加,大约为 0.2 毫米。
2)校准和翘曲(Calibration and Warping)
扫描精度因校准错误导致的扫描失真而降低了。作者采用了一个校准程序,用法罗臂触摸探头测量场景中的已知三维点,并找到它们的u v相机位置以及pro-jector p坐标。最佳的内在和外在的校准参数是通过最小化所有参数的误差来找到的。 u v p x y z的映射同时进行。 虽然我们可以直接从最小化算法的收敛性来估计校准中的误差,但考虑到同一物体在各种不同位置和方向上拍摄的测距图像之间的最大错位,会产生一个更加平均的估计。对于图10的海龟数据集,我们观察到大约0.5毫米的错位。每一次扫描中由于校准错误而造成的失真相当小,但这种失真的影响很容易从一帧增加到另一帧。
3)配准漂移和对扫描策略的影响
尽管使用了锚点扫描(可将该问题的发生率降低一大截),在某些情况下,这种漂移足够严重,以至于使用该系统完全围绕一个物体进行扫描变得大幅失真。解决登记漂移问题的另一种方法是将我们的系统与传统的6 - DOF跟踪器结合起来,这些跟踪器要么放在物体上,要么放在扫描仪上,取决于哪一个相对于另一个的移动。使用这样的跟踪器(无论是联合数字化臂还是无绳系统)将允许扫描仪应用于更大的物体或环境,因为它消除了由于噪音或校准错误而产生的注册误差。此外,这将使系统在存在退化的几何体(如平面或圆柱体)时更加稳定,因为ICP无法确定所有六个自由度的排列。