使用 Python 讓舊照片修復(fù)清晰
翻開家里的的相片冊,可以看到每張照片都是那么的彌足珍貴,特別是很久以前的照片,都是美好的回憶,還有那些年錯過的場景,都被記錄下來了,不過可惜的是,隨著時間的流逝,照片可能泛黃,出現(xiàn)劃痕,畫質(zhì)損失等等,那么這時候,如果可以讓這些老舊的照片修復(fù)回來,那就忒棒??!

如何使用呢?今天小帥b和你一起玩一下,把舊照片修復(fù)清晰。
在此之前,確保你的電腦有:
Python3的運行環(huán)境
GPU或著CPU
環(huán)境準(zhǔn)備
首先將微軟的「Bringing-Old-Photos-Back-to-Life」庫 clone 到本地:
git clone https://github.com/microsoft/Bringing-Old-Photos-Back-to-Life.git
下載 Synchronized-BatchNorm-PyTorch
接著進(jìn)入項目文件,進(jìn)入 「Face_Enhancement/models/networks/」,把「Synchronized-BatchNorm-PyTorch」clone下來:
clone https://github.com/vacancy/Synchronized-BatchNorm-PyTorch

同樣的,在「Global/detection_models」下同步下載 「Synchronized-BatchNorm-PyTorch」:

下載 landmark detection pretrained model
進(jìn)入 「Face_Enhancement」,使用 wget 命令下載地標(biāo)檢測預(yù)訓(xùn)練模型:
wget http://dlib.net/files/shapepredictor68facelandmarks.dat.bz2

接著解壓:
bzip2 -d shapepredictor68facelandmarks.dat.bz2

下載訓(xùn)練模塊
進(jìn)入「Face_Enhancement」,使用 wget 下載:
wget https://facevc.blob.core.windows.net/zhanbo/oldphoto/pretrain/FaceEnhancement/checkpoints.zip
接著解壓一波:
unzip checkpoints.zip

進(jìn)入 「Global」,下載:
wget https://facevc.blob.core.windows.net/zhanbo/old_photo/pretrain/Global/checkpoints.zip
同樣解壓一波:
unzip checkpoints.zip

創(chuàng)建 python3 虛擬環(huán)境
python3 -m venv .venv
source .venv/bin/activate
安裝項目依賴庫
pip3 install -r requirements.txt

至此,我們該安裝都特么安裝完成了,接下來就可以使用了。
修復(fù)沒有劃痕的老照片
我們可以創(chuàng)建兩文件夾,分別用來存放舊照片和生成的修復(fù)照片:

比如你要修復(fù)這樣的舊照片:

把它放進(jìn) 「old」文件夾中,然后使用這樣的命令進(jìn)行修復(fù):
python run.py --inputfolder [舊照片的文件夾路徑] --outputfolder [新照片的文件夾路徑] --GPU 0
像這樣:

這時候在 「out」中就可以得到修復(fù)好的照片了:

打開可以看到新的照片:

是不是清晰了很多?
當(dāng)然你也可以批量修復(fù),把舊照片都放入你創(chuàng)建的 old 文件夾就可以。
修復(fù)有劃痕的老照片
使用方式和剛剛的命令一樣,只不過我們需要在命令后面添加 「--with_scratch」。
刪除剛剛 out 下生成的文件:
rm -rf test/out/*
修復(fù):
python run.py --inputfolder [舊照片的文件夾路徑] --outputfolder [新照片的文件夾路徑] --GPU 0 --with_scratch
得到的效果就是這樣的:

寫到這里,小帥b在淘寶搜了一下「老照片修復(fù)」,這...商機?。?/p>

哈哈,OK,以上就是小帥b今天給你帶來的分享,希望對你有幫助。
推薦閱讀
下回見,peace!
渣男們,點個贊咯
