1.下载
2.使用技巧
- 针对不使用转台的情况:你可以在拍摄物体周围地面上放置一些有特征明显的物体(标记),以提高运算的精度。你需要在最终计算出的网格上手动删除它们。
- 针对动态、运动的物体:需要子弹时间拍摄系统。
- 针对透明、反射物体:使用偏振滤光片在摄影棚里用闪光灯拍摄你的物体,闪光灯可以抵消反射
- 如果你能把物体放到转台上,可以只拍摄没有反射的部分。
3.步骤
3.1步骤1:图像获取
- 拍摄质量是该过程中最重要和最具挑战性的部分。它对最终网格的质量产生巨大影响。
- 拍摄始终是折衷方案,以适应项目的目标和约束:场景大小,材质属性,纹理质量,拍摄时间,光量,变化的光线或物体,相机设备的质量和设置。
- 主要目标是获得清晰的图像,而没有运动模糊和深度模糊。因此,应使用三脚架或较快的快门速度来避免运动模糊,减小光圈(高f值)以获得较大的景深,并减小ISO以最大程度地减少噪点。
Meshroom依靠摄像机传感器数据库来确定摄像机内部参数并将它们组合在一起。
如果您的图像缺少元数据和/或使用Meshroom未知的设备拍摄,则会显示明确的警告来解释问题。
在所有情况下,该过程都会继续,但结果可能会降低。
3.2 建模
3.3 查看及后处理
路径:
D:\install\Meshroom-2020.1.1-win64\Meshroom-2020.1.1\data\output\MeshroomCache\Texturing\05_suannai
可以用win10自带的3D查看器或meshlab软件打开.obj格式模型文件,查看并处理背景等;
3.4 采用4.1.2稀疏重建参数后的效果
虽然时间多了好几倍,不过可以看到,纹理和清晰度明显提升,很多拍照时肉眼看不到的文字都能很清晰的看出来了。。
4.官网教程
meshroom/wiki/Reconstruction-parameters
4.1 重要参数
- 重建参数
默认参数对于大多数数据集都是最佳的。
同样,许多参数是出于研发目的而公开的,对用户没有用。
它们的一个子集对于高级用户在提高特定数据集的质量方面可能很有用。
第一件事是从您的输入图像中验证重建摄像机的数量。
如果没有大量重建,则应重点关注稀疏重建的选项。
- 稀疏重建
1. FeatureExtraction:DescriberPreset从更改Normal-->**High**
如果数据集不大(<300张图像),则可以使用**High**预设。
该StuctureFromMotion节点将花费更多时间,但可能有助于恢复更多摄像机。
如果图像的数量很少(例如<50张图像),您还可以尝试**Ultra**根据图像内容提高或降低质量。
2. FeatureMatching:启用Guided Matching
此选项将启用匹配过程的第二阶段。在匹配描述符(使用全局距离比测试)和首先进行几何过滤之后,我们检索了几何变换。
引导式匹配使用此几何信息来执行描述符的第二次匹配,但具有新的约束条件来限制搜索。
这种感知几何的方法可防止早期拒绝并提高匹配次数,尤其是对于重复结构。
如果您真的很难找到匹配项,那么使用**BRUTE_FORE_L2**匹配项可能会有所帮助,但这在大多数情况下并不好,因为它效率很低。
3. 启用**AKAZE**为DescriberTypes上FeatureExtraction,FeatureMatching和StructureFromMotion节点可能提高特别是在一些表面(如皮肤实例)。与**SIFT**相比,它还具有仿射不变性,当输入中没有足够的图像时,可以帮助恢复连接。
4. 为了提高初始图像对选择/初始重建的鲁棒性,您可以使用minInputTrackLength设置为3或4的SfM来仅保留最鲁棒的匹配项(并改善比率inlier/outliers)。
然后,您可以使用标准参数链接另一个SfM,因此第二个SfM将再次尝试定位第一个未找到但具有不同参数的摄像机。如果在大型数据集中仅重建了几个摄像机,这将很有用。
- 密集重建
1. **DepthMap**
您可以调整Downscale参数来提高精度/计算时间。如果图像的分辨率不太高,可以将其设置为1以提高精度,但是请注意,计算时间会长约4倍。相反,将其设置为较高的值会降低精度,但会增加计算量。
减少相邻摄像机的数量(SGM: Nb Neighbour Cameras,Refine: Nb NeighbourCameras)将直接线性地减少计算时间,因此,如果您从10更改为5,则将获得2倍的加速。最小值3是必需的,如果您的采集过程的密度足够规律,则在许多情况下4应该已经给出了不错的结果。在难以具有覆盖相同区域的4张图像的大规模环境中,默认值是必需的。
2. **DepthMapFilter** 如果输入的图像不够密集或太模糊,并且输出中有太多孔。分别将Min ConsistentCameras和放松Min Consistent Cameras Bad Similarity到2和3可能会很有用。
3. **Meshing** 如果您的RAM少于16G,则需要降低MaxPointsRAM以适合您的RAM限制。您也可以扩大它,以恢复更密集/更精确的网格。
5. **MeshFiltering** Filter Large Triangles Factor可以调节以避免打孔或在另一侧限制大三角形的数量。
Keep Only The Largest Mesh:如果要检索可能有用的未连接片段,请禁用此选项。
6. **Texturing** 您可以将更Texture Downscale改为1以提高纹理分辨率。
5.使用记录
52张小象:ultra-~7.5h