今年3月份的时候,正是我大二的寒假,师兄让我去研究照片扫描技术,并且推荐了一款软件3DF Zephyr,但是这款软件的教程太少了,经过我的调查,我发现Agisoft Photoscan是目前比较成熟的软件,就这样我就进了Photogrammetry的大坑。
Photogrammetry是什么呢?正如上面的软件介绍一样,它是一种通过一系列的照片还原三维模型的技术。
那Photogrammetry有什么优点,对比目前市场上的其他扫描技术又有什么优势和劣势呢?
Photogrammetry的优点
- 通过照片生成模型和纹理,细节丰富到令人发指,模型细腻
- 生成速度快,操作相对简单
- 制作成本低,甚至可以用手机拍照完成流程
- 支持扫描大型物体,甚至是航拍地图
Photogrammetry的缺点
- 无法处理颜色大规模统一的物体(影响图片识别)
- 无法处理随着角度变化的强烈高光(影响图片识别)
- 无法处理透明材质(影响图片识别)
- 无法处理多重相似的图案(影响图片识别)
- 细小的物体难以生成高质量的模型
- 不均匀的光线分布会影响扫描的效果
- 拍摄多角度扫描素材比较繁琐
Photogrammetry与激光扫描的技术对比
- 激光扫描的模型精度与Photogrammetry不相上下
- 激光扫描可以解决Photogrammetry因为图片识别而无法扫描的硬伤
- 高规格的激光扫描方可识别颜色,成本很高
- 激光扫描难以胜任大型物体扫描,特别是航拍
软件下载
3DF Zephyr
链接: https://pan.baidu.com/s/1Rz66Ui1VNWtKZeVh55scmg 密码: xnwn
Agisoft Photoscan
链接: https://pan.baidu.com/s/1eZlWmDIxRNGhM0ZVnpWAQQ 密码: g3ne
Photogrammetry软件操作前期基本流程
软件安装
打开软件安装包,直接安装。然后将破解文件覆盖快捷方式的启动程序。
启动程序即可看到软件界面
正式使用之前务必先打开首选项
首选项这里可以修改语言模式
不习惯英语的可以修改为中文,在下还是依然使用英文。
另外去到GPU的标签 务必开启CUDA显卡加速
开启之后你就能体验飞一样的感觉(GPU运算速度是CPU的好几倍)
原谅我的垃圾手提电脑,N卡940M太低端无法识别
基本流程
点击打开workflow
截图上的操作就是Photogrammetry的基本流程
我们需要一步一步去完成操作
Align Photos (对齐照片)
这里有几个参数需要注意
- Acurray(识别精度) —— 不建议太高,太高会很慢。我一般选择Medium
- Generic Preselection(常用预选) —— 对图片序列识别进行优化,通常都勾选
- Key Point Limit(关键点上限)—— 建议为0,就是不设上限
- Tie Point Limit(点云上限) —— 同样建议为0,就是不设上限
- Adapt Camera model fitting(适应摄像机的位置)—— 一般都要勾选,特别是应用蒙版的情况
设置完成即可运行操作
识别完成之后会生成sparse cloud(稀疏点云)
比较成功的识别结果(图片识别规整)
比较失败的识别结果(图片错位)
图片错位的原因
- Align Photos 的识别精度太低了或太高了
- 照片存在模糊、距离不一、角度偏移等问题
- 物体上存在Photogrammetry无法解决的硬伤
Build Dense Cloud (生成密集点云)
参数说明
- Quality(质量) —— 不建议太高,太高会很慢。我一般选择Medium
- Depth filtering(深度过滤) —— 一般为Aggressive或者默认参数
- Calculate point colors(计算顶点颜色) —— 这个务必要勾选,否则生成模型没有颜色
只要一开始的 sparse cloud 没有太大问题,那么密集点云的步骤也比较顺利
这个步骤需要比较长的运算时间
在生成的过程中软件会生成Depth Map来重新构建照片的深度,从而奠定立体生成的基础(这个需要中断生成步骤才可以看到)
根据流程生成完毕是这样子的(这个效果是建立在Sparse Cloud的基础上的)
总结
Photogrammetry软件操作前期流程
- 通过照片生成稀疏点云
- 通过稀疏点云计算Depth Map,生成密集点云