首頁>技術>

翻開家裡的的相片冊,可以看到每張照片都是那麼的彌足珍貴,特別是很久以前的照片,都是美好的回憶,還有那些年錯過的場景,都被記錄下來了,不過可惜的是,隨著時間的流逝,照片可能泛黃,出現劃痕,畫質損失等等,那麼這時候,如果可以讓這些老舊的照片修復回來,那就忒棒啊!

如何使用呢?今天小帥b和你一起玩一下,把舊照片修復清晰。

在此之前,確保你的電腦有:

Python3的執行環境

GPU或者CPU

環境準備

首先將微軟的「Bringing-Old-Photos-Back-to-Life」庫 clone 到本地:

git clone https://github.com/microsoft/Bringing-Old-Photos-Back-to-Life.git

下載 Synchronized-BatchNorm-PyTorch

接著進入專案檔案,進入 「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

進入 「Face_Enhancement」,使用 wget 命令下載地標檢測預訓練模型:

wget http://dlib.net/files/shapepredictor68facelandmarks.dat.bz2

接著解壓:

bzip2 -d shapepredictor68facelandmarks.dat.bz2

下載訓練模組

進入「Face_Enhancement」,使用 wget 下載:

wget https://facevc.blob.core.windows.net/zhanbo/oldphoto/pretrain/FaceEnhancement/checkpoints.zip

接著解壓一波:

unzip checkpoints.zip

進入 「Global」,下載:

wget https://facevc.blob.core.windows.net/zhanbo/old_photo/pretrain/Global/checkpoints.zip

同樣解壓一波:

unzip checkpoints.zip

建立 python3 虛擬環境

python3 -m venv .venv

source .venv/bin/activate

安裝專案依賴庫

pip3 install -r requirements.txt

至此,我們該安裝都特麼安裝完成了,接下來就可以使用了。

修復沒有劃痕的老照片

我們可以建立兩資料夾,分別用來存放舊照片和生成的修復照片:

比如你要修復這樣的舊照片:

把它放進 「old」資料夾中,然後使用這樣的命令進行修復:

python run.py --inputfolder [舊照片的資料夾路徑] --outputfolder [新照片的資料夾路徑] --GPU 0

像這樣:

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

開啟可以看到新的照片:

是不是清晰了很多?

當然你也可以批次修復,把舊照片都放入你建立的 old 資料夾就可以。

修復有劃痕的老照片

使用方式和剛剛的命令一樣,只不過我們需要在命令後面新增 「--with_scratch」。

rm -rf test/out/*

修復:

python run.py --inputfolder [舊照片的資料夾路徑] --outputfolder [新照片的資料夾路徑] --GPU 0 --with_scratch

得到的效果就是這樣的:

寫到這裡,小帥b在某寶搜了一下「老照片修復」,這...商機啊!

31
最新評論
  • BSA-TRITC(10mg/ml) TRITC-BSA 牛血清白蛋白改性標記羅丹明
  • 一個關於Android Crash 收集的開源專案