老照片作為時光記憶的載體,不只是過去美好時光的傳承者,同時也是每個人的情結(jié)和懷念的寄托。
隨著時間的流逝,許多老照片都因為自然或人為原因,受到了侵蝕損壞,畫面模糊、褪色、照片磨損嚴重等現(xiàn)象,甚至還有的因為保管不好導(dǎo)致照片面目全非。
今天的這個Python模塊叫GFPGAN,它能夠讓這些老照片恢復(fù)原有的光澤,使用了GAN算法對照片進行修復(fù),效果比其他同類模型都有更好的表現(xiàn)。本模塊支持Python3.7+版本。
1.準備
開始之前,你要確保Python和pip已經(jīng)成功安裝在電腦上,如果沒有,可以訪問這篇文章:超詳細Python安裝指南 進行安裝。
**(可選1) **如果你用Python的目的是數(shù)據(jù)分析,可以直接安裝Anaconda:Python數(shù)據(jù)分析與挖掘好幫手—Anaconda,它內(nèi)置了Python和pip.
**(可選2) **此外,推薦大家用VSCode編輯器,它有許多的優(yōu)點:Python 編程的最好搭檔—VSCode 詳細指南。
請選擇以下任一種方式輸入命令安裝依賴 :
- Windows 環(huán)境 打開 Cmd (開始-運行-CMD)。
- MacOS 環(huán)境 打開 Terminal (command+空格輸入Terminal)。
- 如果你用的是 VSCode編輯器 或 Pycharm,可以直接使用界面下方的Terminal.
# 克隆項目
git clone https://github.com/TencentARC/GFPGAN.git
# 進入項目
cd GFPGAN
# 安裝依賴
pip install basicsr
pip install facexlib
pip install -r requirements.txt
pip install realesrgan
# 安裝程序
python setup.py develop
2.使用GFPGAN修復(fù)老照片
GFPGAN模型需要通過數(shù)據(jù)集訓(xùn)練得到,由于訓(xùn)練需要使用的數(shù)據(jù)量和算力非常大,作者團隊提供了許多預(yù)處理好的模型給普通用戶下載,這樣我們就能繞過訓(xùn)練這個步驟直接使用模型,下載地址如下:
https://github.com/TencentARC/GFPGAN/releases/download/v0.2.0/GFPGANCleanv1-NoCE-C2.pth
如果你無法訪問GitHub,也可以在Python實用寶典后臺回復(fù):**GFPGAN **下載。里面包含了本項目源代碼及許多其他預(yù)訓(xùn)練好的模型,包括:
- GFPGANCleanv1-NoCE-C2.pth:無法染色;不需要 CUDA 擴展。
- GFPGANv1.pth:論文使用的模型,能夠?qū)εf照片進行染色。
將想要使用的預(yù)訓(xùn)練模型放入 experiments/pretrained_models 文件夾下就可以開始使用了。
使用方法非常簡單,進入項目目錄后輸入以下命令:
python inference_gfpgan.py --model_path experiments/pretrained_models/GFPGANv1.pth --test_path inputs/cropped_faces --save_root results
其中,各個參數(shù)的意義如下:
** model_path
** : 使用的模型的位置。
** test_path
** : 需要轉(zhuǎn)換的老照片的路徑。
** save_root
** : 轉(zhuǎn)換結(jié)果存放的路徑。
可見其修復(fù)效果是非常優(yōu)秀的,如果你們也有需要修復(fù)的老照片,可以嘗試使用手機的照片掃描儀軟件掃描后使用此模塊修復(fù)。
3.微調(diào)模型
如果你對模型的輸出結(jié)果不是很滿意,你還可以基于作者團隊給出的模型做微調(diào)。微調(diào)能實現(xiàn)以下目的:
1.如果你有更高質(zhì)量的人臉數(shù)據(jù),可以提高修復(fù)效果。
2.你可能需要對數(shù)據(jù)做一些微處理,比如美妝等。
微調(diào)流程如下:
1.準備好訓(xùn)練數(shù)據(jù)集:https://github.com/NVlabs/ffhq-dataset
2.下載預(yù)訓(xùn)練模型和其他你自己的數(shù)據(jù),把它們放在 ** experiments/pretrained_models
** 文件夾里。我們公眾號后臺提供以下預(yù)訓(xùn)練模型:
- StyleGAN2 模型:StyleGAN2_512_B12G4_scratch_800k.pth
- FFHQ 位置模型:FFHQ_eye_mouth_landmarks_512.pth
- 簡單的 ArcFace 模型:arcface_resnet18.pth
3.根據(jù)自身需求,相應(yīng)地修改配置文件 options/train_gfpgan_v1.yml。
4.輸入命令訓(xùn)練:
python -m torch.distributed.launch --nproc_per_node=4 --master_port=22021 gfpgan/train.py -opt options/train_gfpgan_v1.yml --launcher pytorch
模型微調(diào)的難度比較大,可能會遇到不少問題,需要大家善于利用搜索引擎解決問題。
-
模塊
+關(guān)注
關(guān)注
7文章
2714瀏覽量
47508 -
WINDOWS
+關(guān)注
關(guān)注
4文章
3547瀏覽量
88767 -
數(shù)據(jù)分析
+關(guān)注
關(guān)注
2文章
1451瀏覽量
34063 -
python
+關(guān)注
關(guān)注
56文章
4797瀏覽量
84727
發(fā)布評論請先 登錄
相關(guān)推薦
評論