【PFTrack教程】ST-Map是什么?怎样使用ST-Map图?

VFX大学 PFtrack,3DEqualizer,Mocha追踪 【PFTrack教程】ST-Map是什么?怎样使用ST-Map图?

正在查看 10 条回复
  • 作者
    帖子
    • #31116

      追光
      参与者
      机构认证

      V友们下午好,我是追光。PFTrack 可以制作镜头畸变数据,用于 VFX 工作流。用于合成软件的 PFBarrel 插件也提供了在第三方软件中使用 PFTrack 导出的镜头畸变模型。然而,随着广泛的合成软件包的日益增长,以及他们支持越来越多的镜头畸变模型,我们需要一种更有用的方法。所以追光要向大家介绍如何将镜头畸变导出为 ST-Map 图序列,以及将 PFTrack 的镜头畸变应用到各种合成软件中的简单便捷的方法。所以:

      ——————

      1. 什么是 ST-Map 图?

      上图是一个 ST-Map 图示例,使用红通道和绿通道的颜色来描述每个像素扭曲的方式,以此对图像应用或移除镜头畸变。

      国内最专业的影视人社区

      来自国际最前沿的技术, 分享一线实战经验

      null

      扫描二维码,关注NewVFX社区

    • #31118

      追光
      参与者
      机构认证

       2. ST-Map 图的工作原理?

      ——————

      用常规方法解算镜头畸变

      我们可以使用 ST-Map 图校正镜头畸变,无论是在 Undistort 节点,摄像机解算时的 Camera Solver、Survey Solver 或 Photo Survey 节点中,还是使用镜头预置。生成的镜头畸变模型都会通过节点树传递到 Export 节点中。

      ——————

      导出变形的 ST-Map 图

      在 Export 节点中我们可以找到 Distortion Export 选项卡,我们可以在这里导出 ST-Map 图,用于去畸变和添加畸变。去畸变和添加畸变都会生成为与输入片段长度相同的图像序列,一帧一张 ST-Map 图。点击 Export ST-Maps 将 ST-Map 片段写入磁盘中。

      ——————

      使用代理

      及时我们是使用代理文件进行跟踪的,也可以使用 ST-Map 图。ST-Map 图存储归一化的像素坐标,所以哪怕图像进行了缩放,它们依然会从正确的位置采样。比如,我们跟踪的是半分辨率代理素材,我们只必须将生成的 ST-Map 图放大一倍,以便使用原始素材。

    • #31120

      追光
      参与者
      机构认证

      3. 使用 ST-Map 图对素材去畸变或添加畸变

      大多数合成软件都可以读入 ST-Map 图,并应用编码的变换,因而使我们可以使用 PFTrack 的镜头畸变模型对素材进行去畸变或添加畸变。下面是一个在 Nuke 中使用 ST-Map 图的例子。

      ——————

      在 Nuke 中使用 ST-Map 图

      使用 STMap 节点对原始片段去畸变或添加畸变。在上面的例子中,STMap1 是用来校正原始视频的畸变的,使用的 PFTrack 中导出的去畸变 ST-Map 图。STMap1 的输出连到了 STMap2 上,使用 PFTrack 中导出的重新畸变 ST-Map 图,用来重新添加镜头畸变,最后得到的结果和原始输入片段是一样的。(虽然这两个的做法看上去比较脑残,并没有什么制作意义,但是可以说明用法用途哈哈)

      在 STMap 节点中,注意将 UV channels 设置为 rgb,这样才能读入正确的通道。

      ——————

      好啦,之前有不少V友反应前几天的教程有些复杂深奥,不太懂,这次写个基础的,希望大家学得开心😄。

      另外,如有疑问,可以跟帖留言,追光会尽己所能,尽快回复大家的。

      点击追光的头像可以查看更多精彩教程,希望大家持续关注我哦,最好可以关注 NewVFX 社区公众号,把帖子推荐给你的朋友哟~

      本帖未经许可严禁转载,转载请注明出处并保留在本站的完整链接,且严禁二次转载,谢谢~

    • #50418

      QQ
      参与者
      军士

      你好我用這方法生成的ST-MAP 在nuke合成裡會在畫面裡出現一條細線,請問一下你有碰到類式的情況嗎?  有沒有甚麼解決方法呢?

      • #50419

        追光
        参与者
        机构认证

        没有遇到过类似的问题,出现这样的问题,实在无解的情况下:

        1 如果不是做复合跟踪,建议使用nuke自己的cameratracker 来进行追踪。

        2 可以尝试下其他的素材,是否出现同样的问题。如果不管是哪段素材都出现这样的问题,建议关闭显卡试试。

    • #50420

      QQ
      参与者
      军士

      好的  很謝謝老師的解答    因為目前不是每一楨都會有出現

      所以我現在是挑選了其中一張不會有出現 線來做合成,因為不是一個最好的解決方法,所以來請教一下,

      很感謝老師的解答

    • #51906

      水上月.
      参与者
      军士

      您好,我的pf track是2015版本的,在Export节点下找不到导出ST-Map图选项,请问老师15的版本ST-Map图选项在哪?或者您用的是哪个版本呢?请求回复,急,在线等……

      • #51907

        追光
        参与者
        机构认证

        PFtrack 2015 需要将手工做好的含有ST坐标的标准图片导入,经过镜头畸变反求后输出,得到变形过的ST-Map。

        PFtrack 2017 内置有STmap,计算出镜头畸变后,直接输出可以生成ST MAp。

    • #54327

      汉尼拔不出来
      参与者
      军士

      PFBarrel在网上搜到的插件大部分都是支持到nuke9,现在都nuke11了,请问有最新的安装包和教程么

    • #55380

      濮仲
      参与者
      军士

      pftrack去完畸变后 素材边缘有锯齿 STMAP还原后边缘还会有一个像素宽度的锯齿印 请问这个怎么解决

      • #55384

        追光
        参与者
        机构认证

        你用的PFtrack是哪个版本的? 2015版本的吗?刚使用PFtrack2017测试了一遍后,暂时没有发现这个问题。

        操作系统:Mac 10.13.6  Mac10.14.4  操作软件版本:PFtrack2017

        操作流程如下

        在素材上添加Undistort节点————>添加镜头畸变模型或者使用直线计算镜头畸变—–>添加Export节点—–>选择输出到哪个系统(Maya,Nuke,Houdini~~),设置路径。在右侧有Export Distort:

        这里选择输出,去畸变和还原畸变(为三维素材还原畸变做准备),得到.exr格式的Stmap序列如下:

        按照PFtrack2017的操作流程结束。(如果Stmap有锯齿,则视频肯定会出现锯齿,视频的位置完全是受控于Stmap的),在此操作流程中暂时没有发现问题,建议把流程贴出来,看下问题具体发生在哪个步骤。

        • #55400

          濮仲
          参与者
          军士

          老师好,之前是我自己犯傻了,把原素材连上 undistort做调整后,出最终效果时没有用原素材,大概就是这样

          PFtrack出的undistort的ST-Map图有锯齿,所以还原后会有锯齿印。之前一门心思纠结怎么修锯齿了,没往这方面想。给老师添麻烦了,实在不好意思。

          借楼说一下上面有位兄弟说的ST-Map还原素材后有细线的问题,说的应该是下面这种情况吧

          这种情况可以将前后两帧ST-Map图在nuke中用Merge合到一起,叠加方式改为min

          需要输出的话,Write节点要输出32 bit的,16 bit的不能用。我用这方法测试了三个镜头,暂时没什么问题。

          最后再说下,非常抱歉,给老师添麻烦了,感谢老师的回复。

        • #65557

          esau2
          参与者
          军士

          pf出的stmap的细线问题,不知道是软件bug还是破解不完全,期望下一版能解决这个问题。两针合并这个方法,只能算权宜之计,对定焦的没什么问题,变焦镜头就没辙了。

        • #65559

          追光
          参与者
          机构认证

          没有出现过这个问题,很可能是Gpu渲染的问题,出现一些扰乱的非正常像素~~实在不行就自己导入图片序列弯曲后做输出,根之前的版本一样用~~

    • #65562

      面条先生
      参与者
      军士

      细线问题是软件bug,PF出了一套针对nuke的畸变流程,可惜没有继续更新到最新版本nuke

    • #66578

      esau2
      参与者
      军士

      3de中如何生成stmap呢

      • #66625

        追光
        参与者
        机构认证

        在3DEqualizer中不能生成ST-Map,其配套有一个镜头畸变渲染工具:warp4,在安装根目录下的bin文件夹可以找到,其可以渲染多种模式的镜头畸变处理结果。 一般而言在这里输出矫正过的画面可以在Maya或者Houdini等三维软件中(五镜头畸变环境中)用于检测实景与三维动画之间的匹配精度使用。

        在后期合成中,我们往往需要将镜头畸变数据逆变回去,即给制作好三维动画或者模型的渲染图加上镜头畸变数据,使三维制作的VFX场景与实拍镜头一致,3DE中提供了几种方法:通过Menu 输出的选项中可以找到,输出畸变数据,可以是网格畸变参数,这样不需要渲染即可在Nuke中将畸变网格给原始画面使用。

        当然最极致的匹配方法需要开发插件或者借用一些方法,比如Weta Digital工业光魔之类的工作流程中,有比较多的针对3DE的开发~~社区会逐步释放这些脚本的。

    • #69770

      椰蒸鱼
      参与者
      军士

      各位亲,用PFTrack导出ST-Map时,会生成Undistort和Redistort两套和原视频同样帧数的序列帧,我在Nuke合成时发现无论用序列帧还是单帧(任意帧),在对原视频进行畸变并畸变还原后,达到的效果是一样的。所以ST-Map生成序列帧有意义吗?
      【PS:我的视频是锁定焦距拍的,拍摄过程中没改变焦距】

      • #69833

        追光
        参与者
        机构认证

        您好,今天有空才回复您,在相对定焦镜头的情况下,每只镜头的畸变相对是固定的。所以,你只需要拍摄一张棋盘格进行矫正,或者使用特征明显的单帧图片进行矫正即可。

        ST-Map生成序列帧的意义在于矫正动态畸变,在每一帧的畸变参数都发生变化的情况下使用。

        • #69880

          椰蒸鱼
          参与者
          军士

          感谢追光大大,完全明白了 ^_^

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