AI模型用一段语音让一张照片动起来
flyfish
输入是一段语音和一张照片,输出就是照片里的人在说话的视频. 模型与源码一起提供,拖到文章末尾出有下载地址。
看例子
原始图片 AI模型让它动起来后
实现
这里是初始的使用教程比官网更加详细一些,因为增加一些容易使用的代码。 因为下载模型稍微有困难,所以这里模型与源码一起提供,点击这里下载。并且都已经各安其位,各司其职。 总共需要三部
第一步下载
模型与源码一起提供 链接:https://pan.baidu.com/s/1WvlRVUVbTOahpNedl9EUQA 提取码:hrvp
第二步看自然人脸的效果
为了一键执行,原始文件没动,增加了执行程序quick_demo.py可以什么都不用操心了,等着程序完成就行了。 在Python环境一条一条的执行
sudo apt-get install ffmpeg
pip install -r requirements.txt
python quick_demo.py
还可以使用下面的命令看效果
python main_end2end.py
第三步看卡通脸的效果
卡通人说话
python main_end2end_cartoon.py --jpg wilk.png --jpg_bg wilk_bg.png
如果出现结果是
libswresample 2. 9.100 / 2. 9.100
libpostproc 54. 7.100 / 54. 7.100
[image2 @ 0x55e0ebefab40] Could find no file with path '%06d.tga' and index in the range 0-4
%06d.tga: No such file or directory
官网提供的方法是在Ubuntu16.04安装winehq-stable运行facewarp.exe。这里是把facewarp.exe放在windows系统运行。出现这种错误不用担心。 把源码中windows文件夹放到windows操作系统中运行 运行命令如下 这里放置的E盘
E:\facewarp>facewarp.exe examples_cartoon/wilk.png out/triangulation.txt out/reference_points.txt out/warped_points.txt examples_cartoon/wilk_bg.jpg -novsync -dump
生成了一堆tga图片 写一段代码将tga图片合并成gif
import imageio as iio, os
def merge_gif(source_path,target_path):
lst = os.listdir(source_path)
with iio.get_writer(target_path+"result.gif", mode='I') as writer:
for i in lst:
tmp=source_path + i
print("process",tmp)
writer.append_data(iio.imread(tmp))
if __name__ == "__main__":
source_path = "./2/"
target_path = "./1/"
merge_gif(source_path,target_path)
出处
论文题目是《MakeItTalk: Speaker-Aware Talking-Head Animation》 框架流程
原始的代码地址 https://github.com/adobe-research/MakeItTalk.git 更容易使用的代码地址 链接:https://pan.baidu.com/s/1WvlRVUVbTOahpNedl9EUQA 提取码:hrvp
|