谷歌街景数据可以拿来制作3D城市点云模型,这里跟大家讲讲这么做的算法后的评估吧。
评估
投射以及位置精确度
虽然我们还没有制定任何精确的公制来进行优化,但由于设定的虚拟单位和米之间的呼应,我们倒也能以一种较为粗犷的角度来进行观察。
尽管以我们的方式能够制造出传达优美几何意识的非真representation,但是要说到更多纹理和色彩的3D创建时,我们还是有一些小问题的。
例如,如图,我们能够发现深度地图和RGB全景图片之间的不协调:建筑的边缘,被旁边的淡蓝色天空给扰乱了。
另外,平面上投射的点同时也包括了代表天空的点,而后者按理说应该是定义为无穷远,因此不应该出现的。
关于这点,此前有专家(Branislav Micusik)的项目使用了异常值消除,而其使用的场景是更复杂的机器学习算法。
另一个问题是较远的点,当每个全景图片载入时,最远的点变得更加稀少并且精确度消失。当组合多个点云时,有些就是不能匹配,并在重建的模型上留下噪点,
如图所示。一个简单的祛除的方式,就是在合成多个全景图片时,根据他们的距离来祛除。
最后,当单个全景的方向和维度看起来已经匹配的时候,经度方向依然有几米的误差,以至于合成多个全景图片时会出现垂直方向的“重影”效果。这个可以归咎于第四个步骤中方程式的不精确。
探索空间
为了完成上述评估,我们认为需要建立一个特定的用户交互,让他们能从不同角度探索这个重建的世界。为此,我们加上了3个camera:
·1个静止的俯瞰的摄像机,当算法联系载入全景图片时,能够一步一步的观察重建过程。这个相机永远根据最新载入的点云而变化,但同时旋转保持不变。
·1个沿椭圆形轨道旋转的相机,能够给用户一个广阔的视角来观察建造起来的点云。它的运动会根据每一帧定义为:
算法5:计算机轨道计算
·1个互动相机,可以让用户自由的在空间中移动。摄像机根据键盘方向以及鼠标移动的[x,y]平面进行移动。
另外,一个简化的菜单,让用户可以改变FOV,将全景图片重新投射在一个球面上。
最后一个特性尤其重要,因为它可以让用户匹配全景图片和点云。
网友评论