Select Page

FaceFusion 的價值,是把換臉、人臉修復、遮罩與影片輸出放在同一套本地工具裡,可以控制素材與處理流程,也能逐項調整效果。但想讓成品自然,關鍵通常不是把所有增強功能打開,而是先選對素材、選對要處理的人,再修正最明顯的問題。

這篇從第一次安裝與圖片換臉開始,接著處理多人畫面、側臉穿幫、影片閃爍及音源錯誤,最後說明如何透過 Cpolar 遠端操作。

先用自己的照片,或已取得同意的素材練習,做出一小段穩定成果,再擴大到整支影片。

FaceFusion 是什麼?換臉、修臉與換頭先分清楚

FaceFusion是一套可在本機執行的人臉處理平台,支援圖片與影片,它不是單一換臉模型,而是把不同模型與處理器整合起來,讓你依需求選擇換臉、表情還原、人臉增強、畫面增強或唇形同步。

最容易搞混的是「換臉」與「換整個頭部」,一般 face_swapper 主要替換臉部身份特徵,不應預期它會把頭髮、耳環、整個頭型與所有化妝細節一起重建,若目標是改髮型或重做角色造型,通常還需要其他影像編輯步驟,可以搭配多圖參考與圖像編輯工作流理解不同工具的分工。

如果需求偏向即時鏡頭,而非事後處理影片,也可比較站內的Deep Live Cam 即時換臉介紹

下載前官方專案

官方原始碼位於 facefusion/facefusion,可自行下載安裝,官方也提供付費的 Windows 與 macOS 安裝器,協助處理環境設定。

本地安裝:先把環境與推論後端配好

手動安裝需要 Git、Conda 與 FFmpeg。官方安裝文件分別提供 Windows、macOS 與 Linux 的準備方式。先完成所用平台的環境與加速器設定,再建立獨立環境,避免與其他 AI 工具的套件互相影響。

conda init --all
conda create --name facefusion python=3.12 pip=25.0
conda activate facefusion
git clone https://github.com/facefusion/facefusion
cd facefusion

接著只選一種符合環境的安裝方式。CPU 或 macOS CoreML 路徑使用 default,已備妥對應 CUDA 環境的 NVIDIA 電腦可依官方範例選 cuda@12。Windows DirectML、Linux MIGraphX 與 OpenVINO 則各有對應選項,請按平台文件確認支援條件。

# CPU 或 macOS 路徑
python install.py default

# NVIDIA CUDA 路徑,擇一使用
python install.py cuda@12

完成後重新啟用環境,再啟動操作頁面。

conda deactivate
conda activate facefusion
python facefusion.py run --open-browser

較舊教學常出現 python install.py --onnxruntime cuda,但官方從 3.7.0 起改用位置參數,後續也區分 CUDA 版本。

遇到參數無法識別時,先執行 python install.py --help,對照目前安裝的程式,不要把不同年代的指令混在一起,更新紀錄可用來追查這類差異。

啟動成功後,依終端機顯示的本機網址開啟介面,常見範例是 http://127.0.0.1:7860。

首次選用模型可能需要下載檔案,預覽暫時沒有結果時,先看下載與載入紀錄。

顯示記憶體與速度:先跑通,再追求高畫質

官方 FAQ把 8GB 顯示記憶體列為最低建議,並表示 12GB 起通常較合適。

推論後端應依硬體與已安裝套件選擇,NVIDIA 可用 CUDA,Apple Silicon 可確認 CoreML,其他平台則視支援情況選擇 DirectML、MIGraphX 等,CPU 可以作為排錯與基本測試路徑,但不代表長影片處理會很快。Execution 設定列出了後端與執行緒選項。

不要只因顯示記憶體較大,就直接把執行緒拉高,比較可靠的方式是固定一小段素材,先記錄預設值的耗時,再只改一個設定。速度沒有改善,或記憶體開始吃緊,就回到原本設定。

第一次換臉:只開必要功能,先完成一張圖片

1. 放對 Source 與 Target

Source 是提供臉部身份的來源照片,Target 是要被修改的圖片或影片。初次練習選一張光線均勻、五官清楚、沒有被頭髮或手遮住的正面照,搭配只有一個人的目標圖片。先避免大幅側轉、模糊與極端表情,較容易判斷是哪個環節出了問題。

2. 先保留 face_swapper

第一次只啟用換臉需要的 face_swapper,先確認來源臉與目標臉都能被辨識,不要一開始就同時啟用唇形同步、人臉增強與整幅畫面增強,否則一旦失敗,很難看出是哪個處理器造成的。

3. 先預覽,再增加修復

先看臉部位置是否正確,再看身份相似度、嘴部、眼睛、下巴與髮際線。若換對人但細節不足,再加 face_enhancer。frame_enhancer 處理的是整幅畫面,會增加計算量,並非每次換臉都必須開啟。過強的修復也可能讓皮膚變得過度平滑,需要保留原始版本比較。

模型怎麼選?用同一段素材比較最有用

官方 Face Swapper 文件列有 HyperSwap、GHOST、INSwapper、SimSwap 等選項。

可以先用目前版本的預設模型做基準,再換另一個模型,觀察身份相似度、表情保留、輪廓接合與連續畫面的穩定度。
Pixel Boost 是換臉處理的解析度選項,也不等於整支影片直接升級成高品質 4K。調高前先確認它是否真的改善臉部細節,以及增加多少處理時間。

多人畫面與遮擋:先決定處理誰,再決定處理哪裡

多人同框時,先使用參考臉方式指定目標人物,並檢查不同時間點是否仍選到同一個人。

Face Selector控制人物選擇與參考匹配,模型本身並不能代替這個步驟。人物交錯、遠近變化或離開畫面再出現,都值得單獨檢查。

遮罩則決定臉部哪些位置參與合成,Face Masker提供 box、occlusion、area 與 region 等方式,遇到手、眼鏡或頭髮擋住臉,可以先測試遮擋遮罩,並檢查嘴部、下巴與髮際線的邊界。模糊邊緣只能改善接合,無法補回素材中根本看不到的臉部資訊。

檢查影片時,不只停在最好看的一格,應挑出正面、轉頭、張嘴、遮擋與人物交錯的片段,再連續播放,新版追蹤功能可協助補足部分漏偵測,但仍要逐段確認,不能當成「完全不閃爍」的保證。

一直要求選擇音源檔?先檢查 lip_syncer

單純把照片中的臉換到影片上,不代表你一定要另外提供音訊,如果啟動後出現「請選擇音源檔案」,先看是不是同時勾選了 lip_syncer。這個處理器是讓嘴形配合音訊,與基本換臉不同。

本次核對官方 lip_syncer 程式,它在前置檢查時確實要求來源檔中有音訊,若只要換臉,先取消 lip_syncer,再用 face_swapper 測試。若需要重新配音與對嘴,才加入合適的音源,並另外驗收聲畫同步。

用 Cpolar 遠端操作:運算仍在家中的電腦

FaceFusion 在本機跑穩後,才需要考慮遠端入口,Cpolar可以把本地 Web 服務透過隧道提供給外部裝置,手機瀏覽器只是操作介面,真正的換臉運算仍由原本的電腦執行,電腦休眠、FaceFusion 關閉或隧道中斷,都會讓遠端入口失效。

基本順序是安裝並登入 Cpolar,在本機管理頁建立 HTTP 隧道,把本地地址填成 FaceFusion 實際使用的連接埠,再從在線隧道列表取得網址,常見的 7860 是 FaceFusion 服務範例,9200 則是 Cpolar 管理頁,兩者用途不同,不要把管理頁當成要分享的換臉入口。

固定網址與登入保護也要分開設定,依Cpolar 官方文件,保留固定二級子網域需要基礎方案或以上,不能把它寫成所有免費帳號都能永久保留,官方也提供 HTTP Basic Auth。對外使用時,應使用 HTTPS 入口與存取驗證,並先測試沒有登入的人是否確實無法進入。

站內的本地 AI 遠端連線教學可協助理解「服務在哪台機器跑」與「從哪個入口連入」的差別。

免費取得,不代表每個模型都適合商業專案

FaceFusion 官方標示軟體採 OpenRAIL-AS,模型則各有授權,官方授權清單目前把 HyperSwap 列為 ResearchRAIL,INSwapper 與 AlphaFace 列為 Non-Commercial,GHOST 列為 Apache 2.0。這些是不同資產的標示,不能只看主程式名稱就推定整套流程可商用。

如果要用在客戶影片,請把實際使用的換臉、偵測、增強與其他模型一起列出,逐一核對條款及素材使用同意。某個換臉模型的授權較寬鬆,也不會自動涵蓋其他模型或照片中人物的使用權利。

常見問題

FaceFusion 可以免費使用嗎?

官方原始碼可自行取得與安裝,官方安裝器及部分服務另外收費。模型與其他資產仍有各自的授權條件。

FaceFusion 換臉會連髮型一起更換嗎?

一般 face_swapper 主要處理臉部身份,不應預期它會完整重建頭髮、頭型與飾品。換整個頭部通常需要其他編輯流程。

為什麼影片換臉要求選擇音源?

先檢查是否啟用了 lip_syncer。純換臉可先取消它,只保留 face_swapper 測試,需要對嘴時才加入音訊。

FaceFusion 側臉穿幫或閃爍怎麼辦?

先比較來源與目標的角度,再檢查人物選擇、遮擋遮罩與不同模型。用轉頭、張嘴與遮擋片段測試,不能只驗收單張預覽。

手機能透過 Cpolar 使用 FaceFusion 嗎?

可以透過瀏覽器操作已建立的遠端入口,但運算仍在原本電腦上。需要維持主機與服務在線,並設定存取驗證。

先把一小段做好,再把流程擴大

FaceFusion 的可調空間很大,也因此更需要固定測試方式。先用單張圖片確認身份與輪廓,再挑包含轉頭或遮擋的短片段驗收。只有當模型、遮罩與輸出設定穩定後,再加入增強、批次處理與遠端入口。

當你開始串接更多素材整理與輸出步驟,也可參考本地 AI 影片工作流的部署方式。真正省時間的,是知道每個步驟為什麼存在,以及出了問題要回頭檢查哪裡。