Meshlab 中模型对齐教程笔记

10 分钟 · 中文笔记YouTube 标准许可

本教程演示了在 Meshlab 中对两个网格模型进行对齐的操作流程。该步骤通常是在进行定量网格比较(Mesh Comparison)前的必要准备。视频中使用了两个分辨率不同的鹿牙表面扫描模型作为示例,通过选取匹配点、应用变换矩阵并冻结矩阵,实现了模型的精确对齐,并展示了如何保存项目文件以记录变换数据。

你会学到

  • 在对齐前,需明确哪个模型保持不动(Glue),哪个模型需要移动。通常选择分辨率较高或作为基准的模型保持不动。
  • 使用 Point based glueing 功能时,必须在两个模型上选取至少 4 对匹配点。
  • 选取的匹配点应分布在模型的不同区域,避免集中在一条直线上,以确保对齐的稳定性。
  • 如果模型大小一致,无需允许缩放(Scaling);若使用摄影测量等可能产生尺寸差异的方法,则需开启缩放选项。
  • 对齐完成后,必须对发生变换的模型执行 Freeze current Matrix 操作,否则导出或后续处理时变换可能丢失。
  • 保存 Meshlab 项目文件(.mlp)可以记录应用的变换矩阵,便于后续查看或复用。

步骤与时间轴

  1. 0:00 · 准备模型与背景介绍
    导入两个需要比较的网格模型。视频中示例为两个鹿牙表面扫描模型,一个高分辨率(约 970,000 顶点),一个低分辨率(约 223 顶点)。为了演示,故意将两者位置错开。可以通过点击模型并在属性中修改颜色以便区分。
  2. 1:29 · 设置对齐工具
    点击工具栏上的 Align 按钮(图标为大写字母 A)。在弹出的对话框中,首先选择保持不动的模型(Glue mesh),即高分辨率模型。然后选择需要移动的模型(低分辨率模型),并选择 Point based glueing 选项。
  3. 2:44 · 选取匹配点
    在弹出的窗口中,提示需选择至少 4 对匹配点。首先调整视图,使两个模型大致重叠以便识别对应点。在两个模型上依次双击选取对应的特征点(如边缘、凹陷处等)。注意选取顺序需一致(例如先选模型 A 的点 0,再选模型 B 的点 0)。底部选项栏可调整 False color(伪彩色)、Point rendering(点渲染)以及是否允许 Scaling(缩放)。本例中模型尺寸一致,故未开启缩放。
  4. 6:18 · 处理与审查
    确认选取的点后,点击 OK。系统会自动计算变换,低分辨率模型会大致移动到高分辨率模型的位置。随后点击 Process 按钮进行精化对齐。检查默认设置(IP settings),如有需要可调整。此时可查看两个模型的重叠情况,并复制对齐数据。
  5. 7:27 · 保存项目与矩阵
    对齐完成后,主窗口底部信息栏显示第一个模型为 Identity Matrix(单位矩阵,无变化),第二个模型显示具体的变换数值。首先通过 File > Save project as 保存当前项目文件(.mlp),该文件包含变换矩阵记录。接着,右键点击发生变换的模型,选择 Freeze current Matrix。执行后,变换矩阵信息消失,表示变换已固化到模型几何中。最后导出对齐后的模型文件。
  6. 9:01 · 验证对齐结果
    打开新的 Meshlab 项目,导入之前保存的对齐项目文件,可查看记录的变换矩阵。随后导入原始模型和对齐后的模型,通过改变颜色对比,确认两个模型在空间中已正确重叠,验证对齐成功。

要点与注意

  • 选取匹配点时,不必追求像素级的完美,模型上的纹理、颜色或几何特征(如孔洞、裂缝)可作为辅助识别依据。
  • 如果模型带有纹理或颜色,可关闭 False color 选项,利用原始纹理辅助找点。
  • 虽然最少需要 4 个点,但如果点分布不够分散,建议增加更多匹配点以提高对齐精度。
  • 在对齐前,可根据实际应用场景决定哪个模型移动。如果后续需要设定特定坐标系,可能需要再次移动模型。

适合谁看

需要进行网格比较、逆向工程或 3D 扫描后处理的 CG 从业者,特别是使用 Meshlab 进行模型配准的用户。

本页是根据公开视频整理的中文学习笔记,视频版权归原作者 Terrie Simmons-Ehrhardt 所有。如有问题请联系我们。

© 版权声明

相关文章