社区首页 > 教程 > 文章详细

为什么三维重建效果这么差?——探探那些被忽略的拍照要求和技巧

如初小编 2019-01-22 10:16:22    587

一、照片采集的实用概念

根据照片进行三维重建的过程中,有人没怎么遇到坑,有人被坑的不轻。可能是模型的纹理失真,模型的法线错了,模型会生成我们各种也想不到的结果,那么,是什么导致三维重建效果这么差的?是建模操作中哪一步设置错了?还是航拍之前的航带准备不充分还是天气光照的影响?今天我将和大家一起好好说说建模前期都有哪些拍照要求和技巧。

首先,在这之前,我先说明几个专业词汇概念,有助于后面文章的理解。

【内方位元素】:指的是相机的内部参数,包括相机传感器的尺寸、镜头焦距、像平面主点的位置坐标、镜头畸变。

【外方位元素】:指的是相机光学中心的三维坐标位置和三个姿态角参数。

【同名点】:两个或多个不同照片的像素对应场景中同一物理位置的投影。

【影像组】:由具有相同内方位元素的影像组成。

【CCD感光元件】:电荷耦合元件是一种半导体器件,能够把光学影像转化为数字信号。

二、影像获取的注意点

照片的采集是整个三维模型重建过程中非常重要的一步,重建结果的好坏往往与照片采集有很大的关系,而不是软件操作的问题,跟采集的航拍影像关系较大,影像分辨率高、重叠度大、清晰度高,拍摄光照条件好,建成的三维模型效果自然会好。下面从几个方面对照片采集的基础知识和一些细节要求做些说明:

  • 拍摄

模型重建对象的每一部分应至少3个不同的视点(但比较接近)进行拍摄。一般来说,连续影像之间的重叠部分应该超过60%。物体的同一部分的不同拍摄点间的分隔应该小于15度。

 

对于简单的小物件,单反或手机拍摄可以环绕式地从物体周围均匀分隔地采集至少大约30-50张影像。为了保留更多的物体细节,需要保证一定的重叠度,如下图:

为了最大程度地还原照片重建后的纹理信息,在采集拍照的时候要注意分层,可以由远至近拍三个距离,但是太多的拍照层次又会使得照片在进行空三运算时失败,这也是为啥要拍三个层次,让中间层联系远近两层的原因了。示意图如下:

对于有一定高度的小物件,比如说一个雕像,需要从高度上分层次拍照,如下图:

还有,遇到的建模对象纹理比较单一的,我们需要在拍摄范围中加一个背景,这样可以使每张照片的相对位置不同,有利于空三计算和点云生成,比如下面的这只羊的纹理是比较没有区分度的,我们需要在下面放本书或者放张报纸作为背景参照:

在做人物建模时,人的头发是很难被正确建模的,所以可别忘了在头顶加一圈拍照,除此之外,还需要保证尽可能减少拍摄范围中的背景,尽可能增加人物在影像中的范围,示意图如下:

对于航空摄影,建议采集航向重叠不小于80%,旁向重叠不小于50%的影像。如下图所示: 

为实现更好的效果,更好地还原建筑物外立面、狭窄的街道和各种庭院,建议同时采集垂直和倾斜影像。虽然如初对非系统化乱序采集的图像具有非常强的适用性,但还是仍然建议先准备合适的飞行计划以系统化获取影像而避免疏漏。

  • 影像精度

影像精度指的是由传统航空摄影的地面分辨率扩展到更加广义(而不仅仅是航空图像)的获取图像的分辨率设置。生成三维模型的精度和分辨率与采集的影像精度直接相关。为达到预定的影像精度,必须使用准确的焦距及拍摄距离来采集影像。相关计算公式如下:

 

影像精度(米/像素) × 焦距(毫米) × 图像的最大尺寸(像素) = 传感器宽度(毫米) × 拍摄距离(米)

 

可以看到,传感器的宽度、焦距、图像的像素是固定的,那么,想要多少的影像精度,就可以通过拍摄距离来调整。

  • 焦距

整个图像获取过程采用固定的焦距。

如果需要获得非统一的影像精度,可以调整拍摄距离来实现。如果无法避免使用不同的焦距设置,比如拍摄距离的限制等因素,应在每个焦距设置下各采集一定数量的影像组,避免某个焦距只有非常少量的影像的情况。

当使用可变焦距镜头,应需保持在一组影像上使用同一焦距,可以利用胶带将手动可变焦距镜头固定住。注意不要使用数码变焦,避免使用超广角镜头或鱼眼镜头,因为很难计算出极端的镜头畸变。

  • 曝光

尽量选用可避免重影、散焦与噪声、曝光过度或不足等的曝光设置,因为这些问题将会严重影响三维建模质量。手动曝光设置能有效降低3D模型贴图产生色差的可能性,所以如果摄影技术允许,同时有比较稳定和统一的光照条件时,推荐使用手动曝光。如果不具备条件,自动曝光获取的影像也能被处理。

这里推荐关闭光学或数码图像稳定功能。

  • 光照

相对于直射光和(或)不断变化的光照,稳定的环境光源是更好的选择,因为前者增加了曝光过度和曝光不足的风险。室内拍照时,固定光源比试用闪光灯更好;室外拍摄时,多云的天气比大晴天更好。如果必须在晴天拍摄,最好选择中午左右使阴影区域最小化。