搞一张照片,搞一段语音,合成照片和语音,同时让照片中的人物动起来,特别是头、眼睛和嘴。
语音合成的方法很多,也比较成熟了,大家可以选择自己方便的,直接录音也可以,只要能生成一个语音文件就行了。
如下图所示:输入你的文字,选择播音员,填写验证码,点击转换按钮。
生成速度挺快的,然后在左边这里可以试听和下载。
这里介绍的方法需要使用比较真实的照片,如果太二次元了,视频人脸的效果会比较差。大家可以使用自己真实的照片,也可以使用StableDiffusion生成一张,也可以使用图生图稍微改造下自己的照片,总之要尽量真实一些。
另外这张照片尽量正面一些,侧脸生成的视频可能会出现头和身体拼接不太好的情况,所以如果有证件照是最好的。
我这里演示生成一张真实照片,看AI生成的美女都有些厌倦了,今天我们生成个帅哥。
(1)生成工具使用StableDiffusionWebUI,模型选择realisticVisionV20,这个模型生成的图片看起来比较真实。
提示词:bestquality,frontphotoofayoungman,chinese,portrait,blackt-shirt,shorthair,(lookingatviewer),Senseoftechnology,inanoffice,computers,screen,books,upperbody,
反向提示词:easy_negative,(worstquality:2),(lowquality:2),(normalquality:2),lowres,normalquality,skinspots,acnes,skinblemishes,agespot,(ugly:1.331),(duplicate:1.331),(morbid:1.21),(mutilated:1.21),(tranny:1.331),mutatedhands,(poorlydrawnhands:1.5),blurry,(badanatomy:1.21),(badproportions:1.331),extralimbs,(disfigured:1.331),(missingarms:1.331),(extralegs:1.331),(fusedfingers:1.61051),(toomanyfingers:1.61051),(uncleareyes:1.331),lowers,badhands,missingfingers,extradigit,badhands,missingfingers,(((extraarmsandlegs))),
(2)采样器这里选择DPM++2MSDEKarras,选择别的也没问题,只要生成一张人物照片就可以了。
采样步数根据采样器选择,这里是40,建议20-40,以实际出图效果为准。
尺寸这里选择竖版,放到手机里会比较合适。
(3)这里我选择一张自认为看起来还不错的图片,把这张图下载下来备用。
这是最关键的一步,这里还是使用StableDiffusionWebUI,不过只是使用其中的一个插件,这个插件的名字就是SadTalker。
这里默认大家都安装好StableDiffusionWebUI了,如果还没安装过的朋友,建议去AutoDL上租一个服务器体验下,方便不贵,选择A5000规格的就差不多了,安装教程网上应该挺多的,这里就不啰嗦了,还不会的可以联系我。
关于SadTalker插件的安装方法我这里介绍两种。
适合访问Github或者外网比较顺畅的用户,因为需要自动下载很多东西。
在SDWebUI中通过扩展插件页面安装,如下图所示:
这个插件需要下载的文件很多,有的文件还比较大,请耐心等待。如果不确定是不是出问题了,可以看看控制台输出的内容,有没有错误。
安装完了,不要忘了重启StableDiffusion,要整个重启,不要只重启WebUI。
适合访问外网不太方便的用户,把这个插件需要的文件通过别的方式提前下载好,比如迅雷下载,只要上传到指定的目录就行了。
放到stable-diffusion-webui/extensions/SadTalker
放到stable-diffusion-webui/extensions/SadTalker/checkpoints
放到stable-diffusion-webui/extensions/SadTalker/gfpgan/weights和stable-diffusion-webui/models/GFPGAN
(1)首先把文件下载到本地或者你的云环境,这里以AutoDL为例,我把它放到/root目录中。
(2)然后解压文件到stablediffusionwebui的扩展目录,并拷贝几个文件到SD模型目录:
tar-xvf/root/SadTalker.tar-C/root/stable-diffusion-webui/extensionscp-r/root/stable-diffusion-webui/extensions/SadTalker/gfpgan/weights/*/root/stable-diffusion-webui/models/GFPGAN/看到下边的结果,就基本上差不多了。
扩展目录下边有这个文件夹:
SDmodels目录下有这几个文件:
部署完毕,不要忘了重启。
在SDWebUI的Tab菜单中找到SadTalker,按照下边的顺序进行设置。
1、上传人物照片。
2、上传语音文件。
3、选择视频人物的姿势:实际就是人说话时头部的动作,个人感觉有点摇头晃脑,可以使用不同的数字看看。
4、分辨率:512的视频分辨率比256大。
5、图片处理方法:corp是从图片截取头部做视频,resize适合大头照或者证件照,full就是全身照做视频,extcorp和extfull没做细致研究,大家自己对比下。
6、StillModel:让头部不要动作太大,以致偏离身体,负面效果是头不怎么动了。
7、GFPGAN:修脸,说话时嘴和眼的动作可能让脸有些变形,选上他让脸部好看一些。
我这里生成的视频(视频太占地,截个图算了):
(1)启动的时候报错:SadTalkerwillnotsupportdownload...
这个错误就是模型下载不下来,告诉我们要去手动下载。
这里有两个方法:
(2)合成视频时报错:Nomodulenamed'xxx'
使用pipinstallxxx就可以了,注意如果使用了python虚拟环境,需要先激活它,比如这里要先执行sourcexxx。
source/root/stable-diffusion-webui/venv/bin/activatepipinstalllibrosa
(3)合成视频时报错:Nosuchfileordirectory:'/tmp/gradio/xxx',创建目录就可以了:
mkdir-p/tmp/gradio
以上就是本文的主要内容了,使用这种方法就可以无限制作自己的AI专属数字人,想要什么样的风格都可以,想做多少个都可以,有兴趣的快去试试吧。当然要遵纪守法,不要搞出事情来。