Henry Roth等人则针对原始KinectFusion算法采用固定虚拟立方体存储全局数据因此只能重建固定场景的问题,提出了一种基于移动虚拟立方体的数据存储方式。该算法可以随着摄像机的移动,对虚拟立方体进行移动和旋转,使之能够重建更大的场景。机器人或其他自主导航设备能够利用该算法在运动过程中实时创建场景模型,扩大了原始算法的适用性。
Hao Li等人设计的三维自拍系统是近年来比较杰出的工作之一,该扫描系统操作简单,系统非常便携。用户根据语音提示,站在由三脚架支撑的Kinect设备面前,自主完成8次旋转-静止运动。每次静止后,Kinect在俯仰电机的控制下,对目标进行自上而下的扫描,同时剔除背景并进行单晌融合。扫描完成之后,对每个视角采集到的数据进行非刚体配准,配准完成后,使用泊松重建和visual hull算法进行三角网格的生成并填补孔洞。
这种自拍系统,虽然操作简单,效果良好,但也有着比较大的局限化一方面,OpenNI等开源驱动没有能力操作Kinect的马达控制防nect进行俯仰运动,使用Kinect SDK则不具有良好的可移植性,如需开发跨平台应用,则必须改造设备,加装躯机进行控制。另一方面,被妇描对象需要自主运动,用户体验差,也不能够扫描静物。当然,其本身是一套"自拍"系统,这么做也无可厚非。
国内对基于深度摄像机的三维扫描系统的研究也非常多,童晶利用多台Kinect对人体进行快速三维重建,该一方案可以有效的提高扫描精度和速度。三台Kinect交错布置于人体的前后两侧,这种摄像机布置方案利用被扫描对象对摄像机的遮挡,巧妙的避免了多台设备之间红外光斑投射所产生的相互干扰,提高了多台摄像机协同工作时数据的精确度和可靠性。该系统首先将采集到的数据进行去噪,背景分割处理,然后估计出人体参数化模型,找到采集数据和模型数据的直接对应点,利用这些点求解人体体型和姿态参数,并迎过迭代的方式逐步获取精确的人体模型。
上海交通大学朱笑笑等口W提出了一种改进的KinectFusion算法,分析了原始算法ICP定位失效和累计误差这两个问题,并提出了利用环境中的边线特征点匹配来提高定位鲁棒性的方案,同时通过在模型中预设一个地面来降低了累计误差,提高了数据精度。王欢利用开源驱动和类库,针对KinectFusion对GPU依赖较高这一问题,编写了一款基于CPU的三维扫描软件,搭建了Kinect数据采集平台,并与KinectFusion系统进行了对比试验,结果表明同样可以获取比较准确的三维重建模型。
尽管国内外已经在基于Kinect的三维重建领域开展了相当多的工作,但大多数研究均偏向于理论研究,考虑如何通过优化算法来提高重建的可靠性和精细度,而对于如何利用该算法开发一套的三维扫描系统,仍缺乏相关的工程实践经验。因此,从系统集成、软件开发等工程实践角度出发,探索和研究了相关技术的应用方式,对相关系统的开发具有非常好的参考价值。