音容笑貌,两臻佳妙,AI换脸技术复刻《卡萨布兰卡》名场面
影史经典《卡萨布兰卡》是大家耳熟能详的传世名作,那一首壮怀激烈,激奋昂扬的马赛曲,应当是通片最为激动人心的经典桥段了,本次我们基于faceswap和so-vits库让AI川普复刻美国演员保罗·亨雷德高唱《马赛曲》的名场面。
配置人脸替换DeepFakes项目
关于人脸替换,业内鼎鼎有名的deepfakes代表了这个人工智能细分领域的最高水平,旗下的faceswap库正好适合这种视频二次创作的场景。
首先克隆faceswap项目:
(资料图片仅供参考)
git clone https://github.com/deepfakes/faceswap.git
随后进入项目的目录:
cd faceswap
确保本地已经配置好python3.10的开发环境。
随后在根目录即可编译安装:
python3.10 setup.py
这里的setup.py脚本会自动判断系统本地软件环境进行依赖的安装,如果想要手动安装依赖,也可以通过pip命令:
For Nvidia GPU users: pip install -r ./requirements/requirements_nvidia.txtFor AMD GPU users: pip install -r ./requirements/requirements_amd.txtFor CPU users: pip install -r ./requirements/requirements_cpu.txt
这里分为三种用户,N卡用户使用requirements_nvidia.txt,也是最主流的解决方案,其次是A卡用户:requirements_amd.txt,最后是cpu用户requirements_cpu.txt。
事实上,这里并不推荐cpu运行项目,因为无论是训练还是推理,速度实在是太慢了,就算是Intel最新的第十三代酷睿I9处理器,也是杯水车薪,更遑论苹果的M系列芯片,吹得再牛逼,也只是送人头的水平。
所以,玩深度学习,最低的要求就是手里得有一块N卡,不需要太高端,倾家荡产买一块3090或者是4090其实没有任何必要,一块相对亲民的4050或者是4060足矣,当然,有钱任性则另当别论。
至此,faceswap就配置好了。
构建训练集
让我们再来回顾一下需求场景,现在需要将懂王的脸替换到《卡萨布兰卡》中保罗·亨雷德的脸,所以我们现在需要收集两张脸,即原视频保罗·亨雷德的脸,以及替换者懂王的脸。
此时原视频素材是存在的,即《卡萨布兰卡》电影,而懂王的脸则需要在网上寻找视频素材进行下载,这里需要注意的是,素材中最好包含脸部的特写,并且不包括其他人的脸,否则会在模型训练环节产生“噪音”。
由于《卡萨布兰卡》中还有很多别的场景,而我们需要的只是保罗·亨雷德高唱《马赛曲》的面部特写片段,所以需要对素材进行剪辑,这里推荐使用ffmpeg,首先运行安装命令:
winget install ffmpeg
接着将可执行目录配置到系统的环境变量中:
C:\Users\[用户名]\AppData\Local\Microsoft\WinGet\Packages\Gyan.FFmpeg_Microsoft.Winget.Source_8wekyb3d8bbwe\ffmpeg-6.0-full_build\bin
随后通过命令将片段从原始素材中扣取出来:
ffmpeg -ss 01:34:00 -i 卡萨布兰卡.mp4 -to 01:55:00 -c copy 保罗面部素材.mp4
这里视频素材就保存好了。
接着利用faceswarp脚本将素材转换为面部的图片集合:
python3.10 faceswap.py extract -i ~/faceswap/src/保罗面部素材.mp4 -o ~/faceswap/faces/paul
效果就是将视频逐帧进行保存,只保留面部信息:
懂王的训练集也如法炮制。
至此,训练集就构建好了。
模型训练
当训练集配置好之后,下一步就是模型训练,模型训练是指使用已知的数据集对机器学习模型进行调整和优化,以便它能够更准确地对未知数据进行预测,没错,所谓换脸,就是在处理预测问题。
运行命令,开始训练:
python3.10 faceswap.py train -A ~/faceswap/faces/paul -B ~/faceswap/faces/trump -m ~/faceswap/mymodel/ -p
这里A数据集为保罗的,B则是懂王,-m参数是模型的保存目录,-p参数则可以对模型效果进行预览。
模型训练过程中会不断输出损失率函数,一般情况下,训练过程中损失率稳定在0.01左右代表模型已经收敛。
训练过程中每隔一段时间会保存一次模型,程序中断后再次执行会在上次的模型基础上训练,训练需要手动停止,训练完后模型保存在上面指定的路径下。
这里需要注意的是,模型训练过程将会付出大量的时间成本,多长时间取决于许多因素,使用的模型,训练集的数量,N卡等级等等。在GTX4060的GPU上大概5个小时左右损失率会相对稳定,如果在CPU上训练,短时间内很难看到损失率下降。
本地推理
模型训练完毕后,我们就可以使用模型来进行换脸的推理操作,这里有个问题需要澄清一下,即我们训练的不是通用模型,而是针对训练集的模型,也就是说,这个模型只是为了将原素材中保罗的脸替换为懂王的脸而训练的,并不是在任意素材中都能够这样替换。
因此,就算模型有过拟合问题,也不会影响最终效果。
所以,我们就可以直接使用训练集数据进行验证,运行命令进行推理:
python3.10 faceswap.py convert -i ~/faceswap/faces/paul -o ~/faceswap/faces/output -m ./mymodel/
这里使用模型针对原训练集数据进行替换。
效果如下:
保罗英俊的面庞瞬间灰飞烟灭,懂王睿智的面容缓缓浮现。
相同的流程,将片中好莱坞巨星英格丽·褒曼的脸:
替换为漫威超级女英雄寡姐的脸:
脸型有些违和,但音容宛在。
最后,只须将《马赛曲》的歌声替换为懂王即可,请移步:AI天后,在线飙歌,人工智能AI孙燕姿模型应用实践,复刻《遥远的歌》,原唱晴子(Python3.10) ,囿于篇幅,这里不再赘述。
结语
看到这里,相信很多朋友都不约而同地有了一些非常大胆却又不太成熟的想法,但请记住,无论何时何地,互联网都并非法外之地,当运行推理脚本的那一刻,需要思考一下自己是不是真的很刑。在Youtube(B站)搜索刘悦的技术博客,即可欣赏复刻版本的《卡萨布兰卡》,欢迎诸君品鉴。
标签:
相关文章
音容笑貌,两臻佳妙,AI换脸技术复刻《卡萨布兰卡》名场面
影史经典《卡萨布兰卡》是大家耳熟能详的传世名作,那一首壮怀激烈,激奋昂扬的马赛曲,应当是通片最为激动
传兰大老师课上歪曲历史? 校方:教师明确指出观点是错的
昨日(22日),网络传出两张课堂拍摄的照片,指相中的教师对“抗美援朝战争”有不实的描述,事件即时引起网民
农村精神文明建设工作总结_精神文明建设工作总结 热消息
1、强调环境卫生与管理的重要性。2、没有范文以下供参考,主要写一下主要的工作内容,如何努力工作,取得的
世界新动态:尚太科技(001301)5月23日主力资金净买入755.64万元
截至2023年5月23日收盘,尚太科技(001301)报收于71 85元,下跌0 66%,换手率1 89%,成交量1 23万手,成交额8955 73万元。
聚焦地方特色、线上线下联动,聊城多措并举刺激消费激发市场活力
聚焦地方特色、线上线下联动,聊城多措并举刺激消费激发市场活力,年货,大集,老字号,聊城市,大运河,中国文物
每日热门:我国首台国产化150兆瓦级大型冲击式转轮成功下线
5月16日,记者从东方电气集团东方电机有限公司获悉,东方电气自主研制的国内首台单机容量最大功率150兆瓦级
腾景科技:目前在手订单情况稳定 生产经营情况正常 每日速讯
腾景科技5月22日在投资者互动平台表示,公司目前在手订单情况稳定,生产经营情况正常,公司会根据自身战略
世界视点!高空上的爱情:塔吊夫妻携手十余载 在天地对望中守护别样浪漫
佛山顺德,广州中医药大学顺德医院项目工地里,一对年轻夫妇正准备爬上塔吊,开启一天的工作。夫妻二人都是
重返2.98万元!宏光MINIEV大降价
5月22日,五菱汽车宣布五菱宏光MINIEV(图片|配置|询价)家族至高直降1 3万元,全系2 98万元起售,新老用户选
宝马MINI展台直播被拖走女子:已起诉将维权到底 要求公开道歉
5月22日消息,在今年4月举行的2023上海车展上,宝马MINI展台因冰淇淋”事件疑区别对待外籍人士和中国人引起
齐鲁喜报!齐鲁软件园13家企业入选济南市民营企业重点培育库
齐鲁网·闪电新闻5月22日讯 日前,2023年济南市民营企业重点培育库入库企业名单公布,在济南市注册独立核
全球微动态丨广东1a院校排名 广东3a大专院校排名是怎样的?
今天,大学路小编为大家带来了广东1a院校排名广东3a大专院校排名是怎样的?,希望能帮助到广大考生和家长,
环球热议:ST泛海:控股股东及其一致行动人增持公司股份超过1%
ST泛海:控股股东及其一致行动人增持公司股份超过1%:*ST泛海公告,公司控股股东中国泛海及其一致行动人于2
申达股份:公司董事长姚明华、总经理陆志军辞职
申达股份(行情600626,诊股)5月22日晚间公告,公司董事会于近日收到董事长姚明华、总经理陆志军提交的书面辞
“机动车道走着走着成了自行车道……”,交管部门回应_环球快资讯
小康之后北京之治近日,有市民反映,他开车在北京建国门桥附近行驶时发现,建国门外大街辅路自西向东有一段