最近在微信群里,总能看到一些朋友发那种会动、而且脸是自己的表情包,感觉特别好玩。我就想着自己也做一个,结果折腾了好几天,踩了不少坑。今天把动态表情换脸的完整流程和注意事项写下来,希望对想尝试的朋友有帮助。
一、动态表情换脸到底是怎么一回事?
简单来说,动态表情换脸就是把一段现成的动态表情(比如GIF或者短视频),通过技术手段把里面的脸替换成你自己的脸,或者你想用的任何一张脸。跟静态照片换脸类似,但因为画面是动态的,所以难度会大一些,尤其是要保证每一帧的画面都自然、不跳帧。
目前主流的做法有两种:一种是在手机上用专门的App或者小程序直接操作,另一种是在电脑上用专业软件处理。对于大多数人来说,手机端更方便,但效果上限有限;电脑端效果更好,但操作门槛高一些。
二、手机端做动态表情换脸的详细步骤
我主要试的是手机端的方法,因为不用开电脑,随时随地都能搞。下面是我摸索出来的流程:
第一步:准备好素材
- 一张清晰的正面照片(最好是五官没有遮挡、光线均匀的证件照风格)
- 一段你想要换脸的动态表情源文件(可以是GIF,也可以是短视频,质量越高越好)
注意:照片和动态表情里的人脸角度、大小最好接近一些,这样换上去之后不会太违和。我第一张试的时候用的自拍侧脸,结果换上去之后眼睛位置全歪了,看起来像外星人。
第二步:选择处理方式
目前手机端常见的有两种方式:一种是自动识别换脸,你只需要上传照片和动态图就行;另一种是手动调整关键点,需要你把照片上的眼睛、鼻子、嘴巴位置跟动态图里的对应位置手动对齐。自动的方便,但碰到复杂的动态表情容易翻车;手动的麻烦,但效果更可控。
- 自动模式:适合新手,或者源动态表情比较简单的(比如只有点头、眨眼这种小幅度动作)
- 手动模式:适合有一定经验,或者动态表情动作幅度比较大的(比如跳舞、做鬼脸)
我个人建议第一次先用自动模式试试水,如果效果不好再切手动调整。
第三步:预览和导出
处理完一定不要直接保存,先预览几遍。重点看这几个地方:
- 人脸边缘有没有明显的拼接痕迹
- 眼睛、嘴巴在动的时候有没有出现偏移
- 肤色和光影是否跟原动态图协调
如果发现有问题,可以尝试重新上传照片或者调整关键点。导出格式一般选择GIF或者视频,看你要用在什么场景。微信聊天的话GIF兼容性最好,但文件大小有限制(一般不超过10MB)。
三、常见问题和我踩过的坑
问题1:换脸之后表情很假,像贴上去的
这是最常见的问题。原因一般是照片光线跟动态图不匹配,或者照片分辨率太高/太低。解决办法:尽量找跟动态图里人脸光线方向一致的照片,或者用修图软件先把照片的亮度和色温调一下。
问题2:动态表情导出后画质变差
很多免费工具导出时会压缩画质,尤其是GIF格式。如果发现画质太差,可以试试导出为视频格式(比如MP4),然后在微信里作为视频发送,画质会好很多。不过视频文件容易比GIF大,注意不要超过微信的限制。
问题3:换脸后嘴型对不上
如果源动态表情里的人物在说话或者唱歌,换脸之后嘴型跟声音对不上是很正常的。目前手机端的工具大多解决不了这个问题,只能尽量选择没有大幅度嘴部动作的动态表情。
问题4:工具提示“检测不到人脸”
这种情况一般是照片或者动态图的问题。检查一下:照片里是不是有多个人的脸?动态图是不是太模糊?或者人脸被遮挡了?把照片裁剪到只剩一张脸,或者换一张更清晰的动态图试试。
四、电脑端的方法(适合追求效果的朋友)
如果你对手机端的效果不满意,可以试试电脑端。电脑端的原理跟手机端类似,但可以手动调整的参数更多,比如每一帧的光影、颜色、边缘融合程度等。常用的工具是开源的DeepFaceLab系列,或者一些整合包。操作流程大概是:
- 提取动态图里的每一帧
- 对每一帧进行人脸识别和关键点标注
- 用照片替换人脸并逐帧融合
- 合成导出
这个方法的效果上限很高,几乎能做到以假乱真,但缺点也很明显:需要一定的电脑配置(尤其是显卡),而且学习成本高,处理一个几秒钟的动态表情可能要花几个小时甚至更久。如果不是特别追求极致效果,手机端其实就够用了。
五、关于版权和隐私的提醒
这一点我觉得有必要单独说一下。做动态表情换脸的时候,不要随便拿别人的照片或者受版权保护的动态表情来玩。比如把明星的脸换到搞笑表情包里发到群里,如果被追究的话可能会有麻烦。自己的照片和自制的表情包相对安全,但也要注意不要用于商业用途或者恶意恶搞。
另外,上传照片到一些工具时,尽量选择信誉好的平台,避免照片被滥用。我一般只用那些明确说明“不上传服务器、本地处理”的工具。
六、补充方案:我实际用过的一个工具
上面说的都是通用方法,下面补充一个我实际用过比较多的工具,叫“表情包制作助手”(微信小程序里能搜到)。这个工具是我在朋友圈看到别人用的,自己试了大概两周。
优点:操作确实简单,上传照片和动态图之后点一下就能出结果,适合完全不想折腾的人。它内置了几十个现成的动态表情模板,你可以直接用自己的脸套进去,不用自己找源文件。导出速度也挺快,一般十几秒就能完成。
明显限制:第一,免费版导出的画质比较一般,尤其是GIF格式,能看到明显的像素点。想要高清画质需要付费,但价格倒是不贵,几块钱一次。第二,它的自动识别算法对于侧脸、戴眼镜、或者光线不好的照片处理效果很差,经常出现人脸扭曲或者边缘锯齿。我试过一张戴眼镜的照片,换完之后眼镜框直接飞到额头上去了。第三,内置模板虽然多,但更新频率不高,翻来覆去就是那几个,用久了会腻。
总的来说,这个工具适合应急或者刚入门的时候玩玩,如果对效果要求高,还是建议用电脑端的方法。另外提醒一下,这种工具类的微信小程序经常会有隐私政策变动,用之前最好看一眼它的用户协议,确认不会收集你的照片数据。
七、最后几点建议
- 刚开始做的时候不要追求完美,先做出来一个能用的就行,慢慢再调整优化
- 多试试不同的源动态表情,有些适合换脸,有些天生就不适合(比如动作太快、人脸遮挡太严重的)
- 保存好你的原始照片和动态图,万一做坏了可以重新来
- 做完之后发到只有自己的群里测试一下,看看在微信里的实际显示效果
以上就是我关于动态表情换脸的全部经验了。虽然过程有点折腾,但看到自己做的表情包在群里被大家使用,还是挺有成就感的。如果你也试了,欢迎在评论区分享你的作品和踩坑经历。