dot(Deepfake Offensive Toolkit)使虛擬攝像頭實(shí)現(xiàn)實(shí)時(shí)、可控的深度偽造。dot用于執(zhí)行銀行身份驗(yàn)證或視頻會(huì)議系統(tǒng)等場(chǎng)景的滲透測(cè)試,適用群體包括安全分析師、Red Team成員和生物識(shí)別研究者。
該項(xiàng)目創(chuàng)建僅6天已經(jīng)收獲了1.9k的Star。
- 項(xiàng)目地址:https://github.com/sensity-ai/dot
- 開(kāi)源協(xié)議:BSD-3-Clause
dot的開(kāi)發(fā)僅用于研究和展示目的。作為終端用戶(hù),你有責(zé)任在使用該項(xiàng)目時(shí)遵守所有的適用法律。項(xiàng)目作者和貢獻(xiàn)研究者對(duì)濫用該項(xiàng)目或使用時(shí)導(dǎo)致自身受到損害不負(fù)責(zé)任。
工作原理
簡(jiǎn)言之,dot的工作原理如下。
__________________ _____________________________ __________________________ | your webcam feed | -> | suite of realtime deepfakes | -> | virtual camera injection | —————— —————————– ————————–
dot支持的所有深度偽造不需要額外訓(xùn)練,它們可以實(shí)時(shí)地用在一張照片上,這張照片成為人臉模擬的目標(biāo)。支持的技術(shù)如下:
- 人臉互換(通過(guò)SimSwap),分辨率為224和512。還可以選擇人臉超分辨率(通過(guò)GPen),分辨率為256和512。
- 更低質(zhì)量人臉互換(通過(guò)OpenCV)。
- FOMM(First Order Motion Model,用于圖像動(dòng)畫(huà)的一階動(dòng)作模型)。
安裝
安裝預(yù)要求
Linux系統(tǒng):
sudo apt install ffmpeg cmake
MacOS系統(tǒng):
brew install ffmpeg cmake
創(chuàng)建Conda環(huán)境
GPU支持(推薦)
conda env create -f envs/environment-gpu.yamlconda activate dot
CPU支持(速度慢,不推薦)
conda env create -f envs/environment-cpu.yamlconda activate dot
安裝dot
pip install -e .
下載模型
下載模型權(quán)重時(shí)有如下兩種選擇。
- GDrive:從https://drive.google.com/drive/folders/1FX1QoXragN4aKJZFo2DLiDE8fqKHeXEB中下載文件夾、解壓縮并將該文件夾放在庫(kù)的根目錄中。
- gdown:運(yùn)行如下命令:
gdown https://drive.google.com/drive/folders/1FX1QoXragN4aKJZFo2DLiDE8fqKHeXEB -O ./saved_models –folder
用法
運(yùn)行dot
運(yùn)行dot –help以獲得可用技術(shù)的完整列表。
1.Simswap
dot –swap_type simswap –target 0 –source “./data” –parsing_model_path ./saved_models/simswap/parsing_model/checkpoint/79999_iter.pth –arcface_model_path ./saved_models/simswap/arcface_model/arcface_checkpoint.tar –checkpoints_dir ./saved_models/simswap/checkpoints –show_fps –use_gpu
2.SimSwapHQ
dot –swap_type simswap –target 0 –source “./data” –parsing_model_path ./saved_models/simswap/parsing_model/checkpoint/79999_iter.pth –arcface_model_path ./saved_models/simswap/arcface_model/arcface_checkpoint.tar –checkpoints_dir ./saved_models/simswap/checkpoints –crop_size 512 –show_fps –use_gpu
3.FOMM
dot –swap_type fomm –target 0 –source “./data” –model_path ./saved_models/fomm/vox-adv-cpk.pth.tar –show_fps –use_gpu
4.FaceSwap
dot –swap_type faceswap_cv2 –target 0 –source “./data” –model_path ./saved_models/faceswap_cv/shape_predictor_68_face_landmarks.dat –show_fps –use_gpu
控制dot
使用來(lái)自./data文件夾中的源圖像,通過(guò)以上任何方法都可以在輸入視頻feed上生成實(shí)時(shí)的深度偽造。這里使用SimSwap技術(shù)進(jìn)行展示。
當(dāng)運(yùn)行dot時(shí),可用控制選項(xiàng)(control options)的列表出現(xiàn)在終端窗口上,如上圖所示。你可以通過(guò)按相關(guān)的控制鍵來(lái)切換和選擇不同的源圖像。如下demo視頻幫助你更好地理解控制選項(xiàng):
更多細(xì)節(jié)內(nèi)容請(qǐng)參閱原項(xiàng)目。