【PFTrack教程】如何从静帧图像中创建三角网格模型?(图文详解)

VFX大学 PFtrack,3DEqualizer,Mocha追踪 【PFTrack教程】如何从静帧图像中创建三角网格模型?(图文详解)

标签: ,

正在查看 13 条回复
  • 作者
    帖子
    • #30678

      追光
      参与者
      机构认证

      之前发过一个帖子,讲使用 PFTrack 摄影测量工具解算单个场景中的多个摄像机运动的。

      【PFTrack教程】如何使用Photogrammetry摄影测量(图文详解)

      昨天有V友提出能不能使用 PFTrack 进行图片建模。今天我们就接着之前的帖子继续深入学习,追光来和大家讲讲如何使用我们上次讲到的这些工具创建带纹理贴图的三角面网格模型。

       

    • #30682

      追光
      参与者
      机构认证

      这次教程主要用到如下知识点:

      1. Photo Mesh 节点 -> 2. 使用遮罩 -> 3. 生成深度图 -> 4. 创建网格 -> 5. 使用网格 -> 6. 除了摄影测量的第二种方法。

      练习素材下载链接:

      PFTrack图片建模练习素材百度云下载

    • #30683

      追光
      参与者
      机构认证

      一、Photo Mesh 节点(图片网格节点)

      我们可以从 Photo Mesh 节点中的一个(或以上)解算的摄像机或 Photo Survey 点云中创建密集三角网格。不过要注意,如果我们使用了多个输入,要确保每个输入的摄像机都处于同一个坐标系。

      从 Photogrammetry 组中创建一个 Photo Mesh 节点,然后将它连到 Photo Survey 节点下面的 Orient Scene 节点上。

    • #30684

      追光
      参与者
      机构认证

      二、使用遮罩

      在上个教程中用到的图片,有许多包含大量的蓝天,所以我们需要将天空圈出去,创建严格的前景(如果素材是绿幕,也最好先抠像)。Fuzzy Selection 遮罩可以快速为天空创建遮罩,因为它们会为色彩相似的区域创建遮罩。所以在 Photo Mesh 节点上,点击 Mask 按钮打开遮罩面板。

      ——————

      使用 Fuzzy Selection 遮罩(模糊选择遮罩)

      点击 Fuzzy Selection 按钮创建遮罩,然后将中心点移到天空区域,我们可以看到与中心点色彩相近的像素都自动进入遮罩了。

      Colour Falloff 值控制像素色彩与中心点相似到何种程度就会被包含在遮罩中。调节纵向 Colour Falloff 手柄,直至天空全部被覆盖。实际需要的 Colour Falloff 值取决于我们放置中心点的位置。

      在大多数图片中,天空区域是被钟塔割裂的,所以我们可以再添加一个 Fuzzy Selection 遮罩,或者按 Shift +左键创建第二个选区点。

      创建遮罩时,我们要注意关键帧,注意每个遮罩的入点和出点,避免将模型部分圈进遮罩。每个我们改变遮罩属性的帧都会创建新的关键帧。

      下面是一个遮罩选区实例(不一定和大家操作的一样),我们可能会创建多个遮罩。

      圈出照片中所有的天空部分后,可以再次点击 Mask 按钮关闭遮罩面板。

    • #30686

      追光
      参与者
      机构认证

      三、生成深度图

      在 Photo Mesh 节点中创建网格模型包含两步,首先我们需要为每一帧都生成深度图,然后从深度图中生成几何体。创建深度图之前,我们可以调节场景边界框来指定场景中的兴趣区域。

      ——————

      指定场景边界框

      选择 Edit 开始编辑边界框。

      一般我们会在同时开启4个视图查看场景,白色边缘定义边界框。点击并拖拽作践可以调节边界框最近的、高亮显示的面;按住 Command/Ctrl 键可以调节其相反面(比如最近的面是前面,那么按 Command/Ctrl 调节的就是后面)。

      注意⚠️,为了获得最佳效果,边界框应该与场景的主要的坐标轴对齐。出于这个原因,可能需要在 Photo Mesh 节点前使用 Orient Scene 节点调节整体场景方向,确保 y 轴向上,x 和 z 轴在主要水平方向上对齐。追光在之前的帖子里面已经做过此操作了。

      编辑边界框使其适合教堂结构,且不包含多余的东西。下面是一个边界框示例。

      完成后取消选择 Edit

      ——————

      创建深度图

      接下来我们点击 Create 为每张图片创建深度图。创建深度图后,我们将在透视或正交视图以及 Depth Maps 表中的列表中看到它们。

      创建深度图涉及到非常复杂的运算,尽管这些算法利用了所有可用的 GPU 和 CUP 资源,但依旧是一个耗时的过程。得到深度图后,我们可以在透视或正交视图中更详细地检查它们。当我们查看图像时,看到当前深度图的顶点是有颜色的。

    • #30687

      追光
      参与者
      机构认证

      四、建立网格模型

      从深度图建立网格模型前,我们可以点击 Mesh 选区中的 Edit 按钮,为网格模型调节一个单独的边界框(显示为紫色)。如果我们只想从深度图的局部创建网格模型,这就很有用。不过本例不需要啦。

      点击 Create 按钮开始创建网格。

      网格创建完成后,我们可以在 Cinema 和 3D 视窗中近距离观看。Cinema 的左上角会显示关于网格的一些信息,比如顶点数和三角面数量。

      开启着色  并关闭顶点颜色  可以更好地查看网格细节。

    • #30689

      追光
      参与者
      机构认证

      五、使用网格

      我们可以从 Photo Mesh 节点中导出全分辨率的网格,或者让它传递到下游,在跟踪节点树中使用最简单的版本。

      ——————

      导出全分辨率网格模型

      全分辨率的网格模型通常包含成百上千万级的顶点和三角面,往往数据量太大而无法传递到下游的跟踪节点树。不过我们可以直接从 Photo Mesh 节点中将它导出来,可用的导出格式包括 FBX、Open Alembic、OBJ 和 PLY。点击 … 按钮打开文件浏览器,选择导出位置和魏建明,然后点击 Export Mesh 导出网格。

      ————

      简化网格模型

      如果我们需要一个较低分辨率的模型,或者将模型传递到下游的跟踪树中,我们可以在 Simplification 选项卡中简化它。

      简化过程中,我们还可以生成纹理贴图、发现贴图、遮挡图和置换贴图,这些贴图可以帮我们尽可能多地保留简化的模型的表面细节。

      我们可以在 Mesh name 字段中为简化的模型命名,通过这个名字我们可以引用简化的模型。选择目标三角面数量以及纹理贴图的分辨率,然后根据需要选择 Colour map、Normal map 和 Displacement map。最后点击 Simplify 开始简化处理。

      完成后,我们可以在视角中切换 Show simplified 显示原始或简化的模型。

      现在简化的网格就可以传递到下游啦,而且包含导出场景中所有的摄像机和物体运动。

    • #30690

      追光
      参与者
      机构认证

      六、除了摄影测量的第二种方法

      虽然本教程着重讲的是从 Photo Survey 点云中生成网格,但是 Photo Mesh 节点并不仅仅限于摄影测量。我们还可以从 PFTrack 中解算的摄像机创建网格,从统一坐标系中的多个摄像机中可以生成一个网格模型。

      当处理运动摄像机,而不是图片集的时候,通常是不需要从每个单帧中创建深度图的。在这些情况下,Path Sampling 参数可以用来减少工作量,该参数默认值为1,会从每一帧创建一个深度图;如果我们将值增加到2,就会每隔一帧创建一个深度图;值为5时就每隔5帧创建一个深度图,以此类推。

      本帖未经允许不得转载,禁止二次转载,未经书面授权严禁转载,谢谢!

    • #30693

      小仙女
      参与者
      军士

      Mark,好赞,大神请收下我的膝盖orz!

      希望再出一个基础操作教程,期待😍~

    • #30702

      Winnie
      参与者
      军士

      怎么加入的那么多摄像机我一张图,什么点都不显示呢 😯

    • #37032

      j1jj2j
      参与者
      军士

      请问怎样才能导出生成的贴图?我只能导出模型,不能导出生成的法线贴图

      • #37082

        Mocha追踪
        参与者
        机构认证
        圣骑士

        Exporting Textures

        PFTrack 可以导出映射在 Geometry Track 和 Image Modelling 等节点生成的几何体上的纹理贴图。Textures 列表显示每个物体可用的纹理贴图,以及导出格式或路径。 Name 列中的勾选框可以用来启用或禁用单个纹理的导出。要为指定的纹理更改导出格式或路径,请双击 Format 或 Path 列。要同时改变所有纹理的格式或路径,点击列表顶部的 Edit Formats 按钮。更多详情可以仔细阅读下PFTrack文档

        PFTrack文档

    • #47923

      xxxx
      参与者
      军士

      请教一下,PFTrack导出的OBJ可以在C4D中制作动画吗?还有,导出的纹理贴图如何手动重链接?谢谢!

      • #47924

        追光
        参与者
        机构认证

        可以,但不建议使用。PFtrack核心的功能是追踪画面中物体并反求出三维点的位置,具有非常简单的建模的功能,但是建模和给模型贴图只是PFtrack用于测试模型的小功能。
        建议导出摄影机,模型点位置,然后到C4d/maya/houdini里面根据PFtrack追踪出的某个点进行建模,材质,贴图,做动画。 关于三维建模与贴图,动画这方面的知识,就需要去学习三维软件的应用了。
        PFtrack仅仅是一个追踪工具,其目的是将拍摄的画面和 三维软件中制作的元素,无缝的整合起来。

        ♦ 在本篇文章的演示中,也仅仅是为了得到一个大概范围的模型(相当于草图),为后续使用别的三维软件建模提供一个基础参考,是不能直接使用的。

        后续需要进行模型修补,然后对模型进行重拓补,进行完这几个步骤后才能进行动画,重新绘制模型贴图。

        直接扫描反求出来的模型都是三角面构成,一做动画很多地方会出现破裂,必须要重拓补后才行。

    • #47931

      xxxx
      参与者
      军士

      非常感谢在百忙中回复!知道了

    • #49093

      施主请留步
      参与者
      军士

      这个生成模型后怎么才能像点云一样到处 还有摄像机跟随   按照之前的方式连接后 还只是点云  没有模型

      • #49094

        追光
        参与者
        机构认证

        1 帖子中的第五步 使用photo mesh节点是单独导出模型,在导出前可对模型进行重采样再导出。
        2 导出摄像机在export节点中,有选择摄像机,点,贴图的各种选项。
        3 导出时候可以选择只导出特点需要的点,方便后期与模型重新对位。因为导出的模型只能用作参考并不能直接使用的(原因在上方的回复里有)。

正在查看 13 条回复
  • 在下方一键注册,登录后就可以回复啦。
error: 提示:内容受到保护!!
-->