mcpField
S
subject-compositing

subject-compositing

github.com/scrollmark创意与媒体1643 次安装1 天前更新
代码仓库

关于 subject-compositing

为 video-studio 提供真人素材合成指导,涵盖拍摄条件、道具分层和指向事件复核,并强调在确定镜头方案前先检查素材。

主要功能

  1. 01适合分割模型的拍摄指导
  2. 02叠加主体、道具与背景
  3. 03处理手臂穿过道具的遮挡
  4. 04分析指向事件

适用场景

  1. 01合成前评估拍摄素材
  2. 02规划主体位于前景道具之后
  3. 03复核检测到的指向时刻

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/scrollmark/social-skills --skill subject-compositing

安装后在 Claude Code 中输入/subject-compositing确认已加载。

详细介绍

主体合成

适用于那些没人能拍出来、生成器也无法逼真呈现的镜头:他在飞船里、 在小丑车里、在月球上。将真实拍摄的片段从真实环境中分割出来, 叠加到替换背景素材上,并在前景放置道具。成败取决于源片段—— 先选定素材,再承诺拍出这个镜头。

依赖

先运行 pip install 'video-studio-engine[vision] @ https://github.com/scrollmark/social-skills/archive/refs/heads/master.tar.gz',然后运行 video-studio composite_subject … 和 video-studio track_pointing …。这两个工具都不包含在此处——它们都会导入 MediaPipe、 NumPy 和 OpenCV,并在首次运行时下载模型文件,因此不能作为普通文件随技能一同分发; [vision] 是此软件包中体积最大的可选依赖。没有它,这里的内容都无法执行:没有遮罩、 没有带羽化效果的遮挡接缝、没有手臂穿出道具的效果,也没有手势时序。仍然适用的是下面的素材拍摄建议——它会告诉用户该拍什么,值得在开拍前提供。指向动作的规则见 video-formats。

分割器对拍摄素材的要求

这决定了镜头是否可用,而这个决定是在片场做出的,不是在后期。该模型 是自拍分割器——适用于一人、正面、上半身、谈话距离的画面。它无法处理的情况都源于此。

  • 画面中只有一人,且能看到靠近镜头的手臂。 姿态关键点会选取分割器 能看到的手腕。画面中出现第二个人,或手臂移出画面,都会导致自由手臂效果失效。
  • 主体与背景在色调上要有区分。 头发、深色墙面前的深色衣服,或主体与其背后背景 亮度相近,都会导致遮罩啃掉轮廓。它不会报错,只是看起来很粗糙。
  • 光线均匀,避免运动模糊。 快速摇摄和生硬的阴影边缘会让遮罩在帧与帧之间闪烁, 一眼就显得虚假。固定相机,让主体移动。
  • 画面要留出足够空间进行裁切。 --occlude-below 会沿道具顶边裁切主体,并用羽化接缝—— 这能营造“身处其中”的效果,也能遮住他们原本坐着的椅子,但需要裁切线下方有身体部分 才能生效。
  • 拍摄短片段。 每一帧都会单独经过分割器处理;几秒钟是合适的工作时长。这是一个镜头, 不是一段连续序列。

合成

video-studio composite_subject out.mp4 --in take.mp4 --ss 39.9 --t 2.5 \
    --bg crowd.webm --bg-crop 405:600:430:15 --bg-eq eq=contrast=1.9:saturation=0 \
    --fg art/car.png --occlude-below 1215 --free-arm --travel -330 430 --flip-h

图层顺序为:背景 → 主体 → 道具 → 穿回道具前方的手势前臂。--free-arm 会将肘部、手腕和手部周围的胶囊区域与真实遮罩求交,因此只有身体像素会移到前景; 如果没有这一步求交,漂移的姿态估计会在道具上切出一个人形背景孔洞。--travel、 --flip-h 和 --flip-v 会让主体与道具作为一个整体在静态背景上移动;镜像发生在移动 之前——如果之后再翻转,移动方向也会随之反转。--scale 以主体为锚点,而不是以画面原点为锚点。

道具应绘制得粗略一些,并带有 alpha 通道。 不规整的手绘图案能掩饰 遮罩的柔和边缘;干净的矢量图与这些边缘放在一起,反而会显得不自然。没有 alpha 通道的 PNG 会被直接拒绝。此外,合成前先检查背景裁切效果—— 柔和的档案素材经过紧密裁切后会变成一团灰,而体育场素材里满是清晰可辨的第三方广告,你刚刚已经把它放进品牌视频里了。

指向

video-studio track_pointing analyze 会输出事件——食指伸直并保持稳定位置的时间段——并将指向的位置从指尖向外推算,以画布比例表示。layers 会将这些位置转换为分镜图层,并向画面中心偏移,避免弹出内容遮住手部。这里由素材决定布局,而不是由分镜决定,因此合成之前,请先与用户核对事件列表:提取每个时间戳对应的帧,并确认数量。设计上,持续时间不足半秒的动作会被当作抖动丢弃,而且只会追踪一只手——快速点按者和双手讲解者都会导致结果偏少,看起来像追踪器故障,而不是阈值设置在起作用。

反模式

  • 还没看素材就承诺镜头效果。 背景对比度和摄像机运动会决定效果,而且这两者都无法在后期修复。
  • 使用干净利落的矢量道具。 这会让蒙版看起来像是坏掉了;粗糙的美术处理反而能掩盖问题。
  • 轻信事件列表。 提取帧,并与用户核对数量。

评论

支持 Markdown