先把人像和语音备齐——再让 HOMIE 跑第一段视频

文章导读
第一次用 HOMIE,最少要准备的东西其实只有两样:一张能被检测到的人脸图片,一段没有背景音乐的干净语音;配置里只需要填输入、输出和片段时长这几项必需字段,其余可选项先留空。跑通的目标不是做出成品,而是用 5 秒左右的片段确认「人像→音频→驱动→合成视频」这条链路能完整闭环。人像或音频任何一侧不合格,通常在预处理阶段就会失败,不会走到生成;所以顺序上先备素材、再填配置、最后跑短片段,比先调参数更省
📋 目录
  1. 挑一张正面清晰人像,确认人脸可被检测到
  2. 录一段无背景音乐的干净语音,导出为常见音频格式
  3. 按仓库说明填配置项,只保留必需字段
  4. 跑 5 秒片段,检查人脸稳定性与口型是否跟上
  5. 记录这次成功的输入与配置,作为后续扩展基线
A A

第一次用 HOMIE,最少要准备的东西其实只有两样:一张能被检测到的人脸图片,一段没有背景音乐的干净语音;配置里只需要填输入、输出和片段时长这几项必需字段,其余可选项先留空。跑通的目标不是做出成品,而是用 5 秒左右的片段确认「人像→音频→驱动→合成视频」这条链路能完整闭环。人像或音频任何一侧不合格,通常在预处理阶段就会失败,不会走到生成;所以顺序上先备素材、再填配置、最后跑短片段,比先调参数更省时间。

如果这是第一次跑 HOMIE,建议先收敛到「一张正面清晰人像 + 一段 5 秒左右无背景音乐语音 + 只填必需配置」再执行。人像要正面、无遮挡、光照均匀,语音建议常见格式、单声道、无混音;配置字段名以仓库 README 为准,先用占位符填输入输出路径。跑完抽帧检查人脸稳定性和口型是否大致对上,把这次成功的输入规格和配置记下来当基线。人像检测失败或音频参数异常时,先回去修素材,不要在参数上反复试。

挑一张正面清晰人像,确认人脸可被检测到

HOMIE 这类流程一般在读取图片之后、进入生成之前先做人脸检测和对齐,所以人像不合格的失败点很靠前。判断标准是:脸要正面朝向镜头,五官不被口罩、手、刘海、眼镜反光遮挡,脸部占画面的比例别太小,光照别过曝或过暗,背景太乱虽然不一定直接失败,但建议先用干净背景。

  • 检测在哪一步体现:加载图片后紧接的前处理阶段,通常会有单独的检测或对齐调用,日志里能看到它读了几张图、找到几张脸。
  • 失败时的输出特征:报错信息里出现类似 no face detected / face not found;或者检测结果为空、边界框为零;也可能不报错但后续生成被跳过,输出视频时长为 0 或完全没有口部动作。
  • 验证方式:先用仓库自带的人脸检测 demo 或脚本单独跑这张图,确认检测数量为 1、边界框位置在人脸区域,再把它作为生成输入。

录一段无背景音乐的干净语音,导出为常见音频格式

首跑阶段音频只求「干净、能对上时间」,不要加音乐、音效和明显混响,也不建议先做重度降噪,过度处理反而会引入不自然的气声。建议用 wav、mp3、m4a、flac 这类常见格式;如果需要转码,wav、16 kHz 或 44.1 kHz、单声道、16-bit PCM 是比较省事的选择。时长上建议 5 到 15 秒,首跑用 5 秒左右,句子完整、语速正常即可。

ffprobe -v error -show_entries stream=codec_name,sample_rate,channels,duration -of default=noprint_wrappers=1 input.wav

上面这条命令用来确认音频的实际参数:编码、采样率、声道数、时长。如果时长对不上预期,或者声道数和配置里写的默认值不一致,先转码再跑,不要指望生成阶段自动纠正。

按仓库说明填配置项,只保留必需字段

配置字段名各家实现不一样,必须以仓库 README 或示例配置文件里的实际写法为准,下面只是骨架占位,字段名不要照抄。填的时候只保留必需项,超分、增强、长视频分段、批量处理这类可选项全部先关掉,减少首跑的干扰变量。

# 以下为占位骨架,字段名请按仓库 README 实际填写
image_path:   PATH_TO_PORTRAIT_IMAGE
audio_path:   PATH_TO_SPEECH_AUDIO
output_path:  PATH_TO_OUTPUT_VIDEO
fps:          USE_REPO_DEFAULT
duration:     5
# 若 README 要求指定模型权重或检查点路径,一并填入:
checkpoint:   PATH_TO_CHECKPOINT

每一项的作用很直接:image_path 和 audio_path 是这次首跑的两份输入,output_path 是落盘位置,fps 和 duration 决定片段长度。执行前把路径改成绝对路径,避免工作目录不同导致找不到文件;如果日志里报权重缺失或路径不存在,先补齐路径再重跑。

先把人像和语音备齐——再让 HOMIE 跑第一段视频

跑 5 秒片段,检查人脸稳定性与口型是否跟上

生成完成后不要只看一眼就把文件收起来,要分段看。做法是把视频抽成帧再看,或者把播放器停到每一秒的整数点观察。抽帧命令示例:

ffmpeg -i out.mp4 -vf fps=5 frames/%04d.png

观察时按下面几项逐一记录,每条只记现象,不下结论:

  • 人脸位置:整段里头部是否漂移、抖动,边缘有没有明显跳变。
  • 五官形态:眼睛、牙齿、下颌边缘有没有扭曲或糊成一团。
  • 口型同步:嘴部开合是否大致跟得上语音的重音,明显错位要记下来。
  • 长度与帧数:输出时长是否接近设置的 duration,有没有黑帧、丢帧或末尾截断。
  • 运行信息:生成耗时、出现过的警告或回退提示,原样抄进记录里。

记录这次成功的输入与配置,作为后续扩展基线

这份基线是后面加时长、提分辨率、换素材时的对照物。没有它,改动之后就分不清是人像换了还是参数变了导致结果不同。建议用一张简单的表记下来,字段如下:

记录项填写内容
素材规格人像分辨率、构图(正面/半身)、语音格式、采样率、声道、时长
配置项本次实际填写的字段与值,含 fps、duration、权重路径
片段时长设置的秒数与实际输出秒数
观察结果人脸稳定性、口型同步、有无警告,按上面五项逐条记

后续扩展时一次只改一个变量,比如先把 duration 从 5 秒加到 15 秒,其他不动,再和这份基线对比;确认稳定后再动人像分辨率或帧率。这样每一次变化都能对应到具体原因。