基于侧影轮廓的三维模型构建
建模过程
图像的获取
由于待建模物体具有较多细节,因此选择在同一个方向拍摄两个角度的照片(手机倾斜角大约为60度和45度,如下图所示),以及顶部细节照片,最终拍摄的有效照片为35张。
模型构建
新建项目,并导入所有拍摄的照片
照片掩饰
可以先采用自动掩饰工具将物体轮廓从背景上大致分离出来,但是由于拍摄条件限制,物体下部分轮廓与垫板背景的区分度不够,因此自动掩饰的效果较差。
后采用套索工具发现工作量较大,而且掩饰效果也没有达到预期效果,仍需要大量修改细节部分。
通过网络搜索发现可以使用魔法标记工具(Magic Highlighter Tool)在对象边界周围粗略绘制后,直接填充背景即可获得较好的掩饰效果,且大大提高了工作效率。
模型体积生成
生成线架构模型
生成的线架构模型已具有草莓熊玩偶的雏形,但其表面的尖锐凸起相对较多。
优化体积
优化后将一些明显的尖锐或突变部分加以消除,但其依然存在一定数量的尖锐地带,与真实物体形态还存在一定差异。
细化表面
可以发现细化表面这一步骤中将物体的可见外壳进一步细化了,表面线条更加流畅,接近真实物体的形态。
纹理映射
利用前面拍摄的多角度图像对模型进行纹理映射
模型展示
模型各角度展示
外形:可以看到草莓熊玩偶的外部细节都被清晰刻画出,且没有发生太明显的畸变,例如草莓熊的刘海、手臂、脚。
纹理:由于拍摄时在室内拍摄,光线照射不均匀,所以模型给人一种一边两一边暗的感觉。同时也存在一些缺陷,例如草莓熊背后的拉环建模较差,推测是由于在多角度图像中缺少这个部位的具体信息。此外草莓熊玩偶背后的标签在建模后仅留下了根部,其余部分均消失。推测是由于对标签的拍摄角度过少导致的。
物体部位尺寸测量:
测量前,在系统中设置的所用定标垫的单位长度(经实际测量为72mm)。
草莓熊模型两手尖之间的距离为11.7cm
草莓熊模型两脚尖之间的的距离为3.7cm
草莓熊模型头顶到屁股的距离为10.2cm
问题与思考
模型存在问题
建模后模型底部的纹理混乱,且被映射了顶部的纹理。与其它同学交流发现也存在这个问题,推测是由于缺少物体底部的照片,系统将同一方位的顶部纹理映射至底部。解决办法可以仿照实验案例中的土豆拍摄方式,使用体积尽量小的材料作为物体支架,使得待建模物体的底部充分暴露出来,且可以被拍摄到,从而获得物体底部的照片。
底部图片与顶部图片问题
顶部与底部图像并不属于“多角度图像”范畴,因此相对位置这一限定对其而言并无要求。此外,进一步思考还可以发现,在利用顶部与底部图片进行纹理手动匹配时,我们需要手动调整图像中目标物体与已有模型的相对位置——这一步在一些角度上可以认为是通过“人工”的方式进行了顶部或底部图像的“定标”;而之所以要求前述多角度图像相对位置不变正是由于软件需要借助其与定标垫的位置关系加以自动进行定标。因此,便可以解释底部图片(包括顶部图片)无需规定相对位置不变的原因。但实际上因为我们很难保证在颠倒后角度和相对位置不变,特别是对于本次实验中的这类比较复杂的问题,因此颠倒可能导致纹理更加混乱
薄面物体的建模问题
草莓熊玩偶背后的标签在建模后仅留下了根部,其余部分均消失,推测是由于对标签的拍摄角度过少导致的。在拍摄时应遵循如下原则:
- 只要眼睛能通过物体(包括狭小的缝隙)看到背景,就要对该方向的物体进行拍摄。
- 只要视线与诸如标签这样的薄面物体平行, 就要拍下该方向的照片
侧影轮廓建模方法
基本原理
三维模型重建的方法可分为主动方法和被动方法两大类。主动方法主要以仪器直接去测量物体表面的三维信息,获得三维点云, 再用点云算法重建物体的表面以及获得三维模型,主动方法可以提供较高精度的三维模型,但需要非常昂贵的设备。被动的方法主要研究如何根据相机在不同视角拍摄的图像序列进行物体的三维模型重建[1]。而侧影轮廓建模方法就属于被动的建模方法。
侧影轮廓是物体投影在成像平面上图像的外形线条,它从特定角度描述了物体的几何形状。当以透视投影的方式从多个视角观察某一空间物体时,在每个视角的画面上都会得到一条该物体的侧影轮廓线,这条侧影轮廓线和对应的透视投影中心共同确定了三维空间中一个一般形状的锥体,而所观察对象物体便位于这一立体锥体内部。而所有这些空间锥体的交则构成了一个包含该物体的空间包络[4],这个空间包络被称为物体的可见外壳。因此,当观察视角足够多时,可使得这个可见外壳不断逼近对象物体表面,从而实现目标物体的空间三维的可视化。因此基于侧影轮廓的三维重建技术只需对普通数码相机围绕物体拍摄得到的多幅图像进行处理,即可重建出复杂曲面模型[2]。
为确定多角度图像的相对位置,相机标定是这类三维重建技术的必要步骤。通常使用标定装置(如已标定的固定相机或标记点)辅助标定[3]。本实验中的相机定标借助定标垫来完成。定标垫由15组共线的四点组组成,呈放射状排布。每一组点的大小分两个等级,过各点组圆心的直线相交于圆心。每组点集的大小排列顺序不同,不同点集组合唯一确定一个方向。因此可以根据各图像中不同点集合的位置,来确定对应相机的拍摄方位,并进一步将若干多角度图像位置关系加以求解。
基本流程
参考文献
[1]阮孟贵,章毓晋.基于侧影轮廓的三维模型快速重建[J].计算机应用,2010,30(11):2998-3001.
[2]谷月霞,张维忠,王晓燕,油世明,王静.基于未标定图像的三维重建算法[J].计算机工程,2010,36(08):214-216.
[3]刘钢,彭群生,鲍虎军.基于图像建模技术研究综述与展望[J].计算机辅助设计与图形学学报,2005(01):18-27.
[4]曹煜陈秀宏. 基于侧影轮廓的图像三维重建方法[J]. 计算机工程, 2012, 038(005):224-226,229.
[5]蔡高剑. 基于无人机航拍的三维重建技术研究[D].长安大学,2017.