这个项目能做什么
ComfyUI-H3-FaceRefine 是一组用于对 MiniMax H3 视频进行后处理的 ComfyUI 自定义节点。它解决的是 H3 因头部在源画面中占比过小而导致人脸渲染质量较差的问题。该流程会检测并跟踪人脸,将裁剪区域归一化到更大的画布,把该裁剪区域送入 H3,再利用记录的裁剪变换将生成的人脸缝回原始视频。其方法借鉴了 Impact Pack 的 FaceDetailer,但扩展为面向逐帧视频的处理。
主要组件包括:
- H3 Load Video + Face Select:加载视频和音频,检测人脸,可选检测硬切,并在图运行前选择主体。它可以使用手动 Pick faces 界面、排序规则或身份参考图像。
- H3 Face Track + Crop:在每个镜头中跟踪选定主体,生成裁剪区域和变换数据,输出画布尺寸和帧数,并处理平滑、插值、人脸缺失以及镜头边界。
- H3 Per-Frame Denoise:以模型路径补丁的形式应用逐帧降噪控制,接收并返回 MODEL 输入。
- H3 Face Stitch Back:将精修后的 H3 输出合成回源帧,并保留原始音频路径。
主体选择支持多种自动排序模式,例如最大、最小、最靠左、最靠右、最靠上、最靠下、最居中、最接近 X/Y 坐标,以及检测器分数。基于身份的选择可对真人照片人脸使用 InsightFace;对于插画或动漫素材,则建议使用 CLIP Vision 或 CCIP。需要用户自行提供人脸检测器,例如 face_yolov8m.pt;对于非摄影内容,建议使用动漫人脸检测器。
该节点包使用 PySceneDetect 进行可选的硬切检测。可用时,硬切会将视频拆分为多个镜头,从而可以按镜头分别选择主体,并且跟踪不会跨切点平滑。如果 PySceneDetect 不可用,则视频会被视为单个镜头。跟踪报告可识别丢帧范围,并且可在预览中高亮丢失帧。当主体消失时,跟踪器会避免跳到另一个人,并可在淡出合成以保留原始像素的同时对裁剪区域进行插值。
节点包包含两个带注释的工作流模板:Auto Select 通过排序规则选择人脸;Manual Select 由用户为每个镜头选择一张人脸。这些模板可通过 ComfyUI 的模板浏览器使用,也可从 example_workflows 目录加载。它们使用跟踪节点的帧数和画布尺寸,使 H3 生成与源片段保持对齐。
安装方式是将仓库克隆到 ComfyUI/custom_nodes,然后重启 ComfyUI。节点会显示在 MiniMax H3/Face Refine 菜单下。包括 ultralytics、scipy、insightface 和 scenedetect 在内的 Python 包可根据项目 requirements 安装。还需要较新的、包含核心 MiniMax H3 节点的 ComfyUI 版本,以及 H3 模型、文本编码器和 VAE,除非这些已经安装。
示例工作流还使用 VideoHelperSuite 进行保存,使用 ComfyUI-H3-NativeAudioLock 处理音频/口型同步,并使用 Impact Pack 进行模型文件夹注册。SAM 和 GGUF 组件存在但默认处于静音状态;SAM 模型、GGUF 加载器支持、CLIP Vision、InsightFace 模型和 turbo LoRA 均为可选项,具体取决于工作流配置。
对于通过粘贴绝对路径加载的视频,节点包会为 ComfyUI 的 input 目录之外的本地预览提供服务。将 H3_FACEREFINE_STRICT_PATHS 设置为非空值会将这些路由限制为 ComfyUI 自身文件夹内的文件;当 ComfyUI 暴露到 localhost 之外时,这很有用。
评论
0 评分人数达到10人后显示
登录后参与讨论。