日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人工智能 > ChatGpt >内容正文

ChatGpt

faceswap深度学习AI实现视频换脸详解

發布時間:2024/4/15 ChatGpt 56 豆豆
生活随笔 收集整理的這篇文章主要介紹了 faceswap深度学习AI实现视频换脸详解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

給大家介紹最近超級火的黑科技應用deepfake,這是一個實現圖片和視頻換臉的app。前段時間神奇女俠加爾蓋朵的臉被換到了愛情動作片上,233333。我們這里將會從github項目faceswap開始一步一步實現一個視頻換臉的教程。

注意:

本技術存在一定的使用風險,本教程僅做技術交流,請不要用在其他不應該被使用的地方。

技術分析

faceswap?項目是一個學習重建臉部特征的深度學習算法。你給它一堆的圖片,它學習幾個小時后,通過分辨哪些是合成的圖片最終。但是它并不是僅僅把相似的圖片替換,而是通過對不同的表情進行學習分析,最后可以對給出的圖片進行模型替換達到以假亂真的效果。詳細分析可參考Reddit。

假設你可以連續12小時盯著一個人看,觀察他的表情并記在大腦里面。然后他跟你說畫個我微笑的樣子,悲傷的樣子,你瞬間就可以完成這個要求并且能夠達到高清的圖片效果。這就是深度學習的威力。

?

換臉針對訓練的是臉部特征,因此對于輸入的圖片應該也是只有臉部的圖片,所以如果是非臉部的圖片需要提取臉部再來進行替換,這也是后面一開始出錯的原因。

?

AI換臉詳細步驟

拷貝項目到本地并開始訓練模型

首先需要安裝git,使用git clone拷貝faceswap項目到本地。從本站上傳的文件下載測試數據,faceswap項目地址https://github.com/deepfakes/faceswap

?

git clone https://github.com/deepfakes/faceswap cd faceswap pip install -r requirements.txt wget https://www.bobobk.com/wp-content/uploads/2019/01/input.zip unzip input.zip

?

解壓后可以看到目錄下有了input_A和input_B訓練數據文件夾。

由于訓練耗時較長,如果GPU不強的話會更久,建議使用screen運行,本教程訓練使用GTX1080ti訓練。代碼如下:

screen -S faceswap python faceswap.py train

模型將會保存在model文件夾下。這里我運行到損失函數小于0.03就沒有繼續訓練了。

?

輸入文件準備

模型訓練好了就是大家喜聞樂見的換臉環節了,由于我們的測試數據是川普和尼古拉斯凱奇,所以首先我們找一張最新的一小段視頻。視頻來源https://www.youtube.com/watch?v=S73swRzxs8Y,由于模型只是用來進行圖片替換的,這里需要首先將視頻轉換為圖片,項目文件中toos.py可以進行此項工作,用法:

?

mkdir input mkdir outputpython tools.py effmpeg -i cage.mp4 -o input -s 00:0148 -e 00:0156 ####視頻1分48秒可以到1分56秒結束。

?

運行失敗,為什么,因為沒有安裝FFmpeg,其中一個功能就是將視頻里面的圖片提取出來,圖片合成會視頻。安裝可看https://cloud.tencent.com/developer/article/1027379,這里直接給出centos7安裝代碼

yum install -y vim yum install -y epel-release rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 yum repolist rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-1.el7.nux.noarch.rpm yum repolist yum update -y yum install -y ffmpeg ffmpeg -version

 

安裝后就可以了,切割后的圖片存在于input文件夾中,接下來就是轉換了。

運行報錯  

python faceswap.py convert -i original -o modified

?

 

?

?

原因是沒有比對的文件,想想也是,我們的輸入是一張人臉圖片,給的確實一整個電影的一幀,比對就是先把臉部給提取出來以用來替換,所以這里需要先做臉部比對。這在項目里就是使用extract命令(一開始我以為extract是解壓文件呢,233333)

把前面從視頻中提取的圖片文件進行臉部提取,使用方法

python faceswap.py extract -i original -o input

?

運行訓練好的模型換臉

繼續運行convert命令

python faceswap.py convert -i input -o output

可以看到已經在逐步輸出換臉后的圖片,想想還有點小激動呢。

?

?

將換臉后的圖片重新合成回視頻

代碼:

python tools.py effmpeg -i output -r input/cage.mp4 -o modified/cage.mp4 -a gen-vid

生成的mp4在modified文件夾下,下載播放即可。播放時還真的是樂趣多多。

應用

該技術自開發一來就有各種聲音,恐懼其威力,想想別人使用你的樣子發表一段根本不是你自己錄制的視頻是什么情景。

個人認為這是一個非常好玩的東西,你可以把自己換到自己喜歡的角色身上,比如哈利波特什么的啊。想想就很有意思。像這篇文章作者把妻子換到節目主持人身上,他妻子得多激動,啊哈哈哈。

總結

本文一步一步地從模型訓練,到視頻文件的處理,再到圖片換臉并重新根據原始視頻合成生成的視頻。是一個完整的使用faceswap 深度學習AI實現視頻換臉教程,理論上可以運用于任何的視頻和想替換的人臉,只需要給與足夠的目標模型和訓練模型的圖片即可,這也是很多明星被換到小電影上的原因。

這項換臉技術相信會在未來產生大量好玩的視頻,應用,敬請期待!!!

另:由于使用的是深度學習,在訓練模型上需要耗費大量的計算資源,因此最好使用GU或者TPU訓練較好。

?

轉載地址:https://www.bobobk.com/258.html

轉載于:https://www.cnblogs.com/taohuaya/p/10809217.html

總結

以上是生活随笔為你收集整理的faceswap深度学习AI实现视频换脸详解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。