Python機器學習之實現(xiàn)模糊照片人臉恢復清晰
前言
最近看到一個有意思的機器學習項目——GFPGAN,他可以將模糊的人臉照片恢復清晰。開源項目的Github地址:https://github.com/TencentARC/GFPGAN
我們看一看作者給出的對比圖。
最右側(cè)的就是GFPGAN的效果,看一下最左層的輸入圖片,可以發(fā)現(xiàn)GFPGAN將圖片恢復的非常清晰。這個效果非常驚艷。
按照以前的慣例,我還是先把這個項目安裝使用一下,看看能不能對代碼重新封裝,變成可以工程化的項目。
環(huán)境安裝
我們先看一下項目README給的提示。
首先需要的python版本是>=3.7的,所以我用Anaconda創(chuàng)建了一個python3.9的虛擬環(huán)境。Pytorch的安裝直接從官網(wǎng)獲取命令安裝一個最新版本即可。
因為還有一些基礎依賴的安裝,照著安裝一下就行,其實setup.py是已經(jīng)在項目中的,如下圖。
由于模型比較大,所以作者沒有放在github上,給了下面的下載提示。該模型是作者提供已經(jīng)訓練好的模型。
如果下載很慢的話,可以從我的網(wǎng)盤下載。
鏈接提取碼:TUAN
作者還提供了基礎模型可供自行訓練。
驗證模型
下面我準備了一些圖,挑了一些比較典型的圖片,有黑白的、彩色的以及馬賽克的,想看看是不是都可以實現(xiàn)清晰化處理。
準備的圖片如下:
按照README提供的指令
python inference_gfpgan.py --upscale 2 --test_path inputs/newImages --save_root results
看一下執(zhí)行結(jié)果:
(pytorch39) C:\Users\yi\PycharmProjects\GFPGAN>python inference_gfpgan.py --upscale 2 --test_path inputs/newImages --save_root results C:\Users\yi\PycharmProjects\GFPGAN\inference_gfpgan.py:45: UserWarning: The unoptimized RealESRGAN is very slow on CPU. We do not use it. If you really want to use it, p lease modify the corresponding codes. warnings.warn('The unoptimized RealESRGAN is very slow on CPU. We do not use it. ' Processing 331.jpg ... E:\ProgramData\Anaconda3\envs\pytorch39\lib\site-packages\torch\nn\functional.py:3679: UserWarning: The default behavior for interpolate/upsample with float scale_factor changed in 1.6.0 to align with other frameworks/libraries, and now uses scale_factor directly, instead of relying on the computed output size. If you wish to restore th e old behavior, please set recompute_scale_factor=True. See the documentation of nn.Upsample for details. warnings.warn( Processing 333.jpg ... Processing 334.jpg ... Processing 335.jpg ... Results are in the [results] folder. (pytorch39) C:\Users\yi\PycharmProjects\GFPGAN>
按照默認參數(shù),會在results結(jié)果文件夾中生成4個目錄分別為前后對比圖、原檢測出來的臉部圖、處理后的臉部圖、處理后的最終圖。
我們看看效果
?
可以看出兩點:
1、馬賽克不能消除,有一張全馬賽克的圖片,直接無法修復。
2、常規(guī)的模糊照片修復的是真的很清晰呀。
總結(jié)
總的來說該項目是非常優(yōu)秀的,從最終圖片的效果上來說,非常好了,至于去除馬賽克還是得看別的項目了。后面研究研究這么項目,看能不能改改。
以上就是Python機器學習之實現(xiàn)模糊照片人臉恢復清晰的詳細內(nèi)容,更多關于Python模糊照片人臉恢復清晰的資料請關注腳本之家其它相關文章!
相關文章
淺析python實現(xiàn)scrapy定時執(zhí)行爬蟲
這篇文章主要介紹了淺析python實現(xiàn)scrapy定時執(zhí)行爬蟲的相關資料,需要的朋友可以參考下2018-03-03Python操作Excel神器openpyxl使用教程(超詳細!)
openpyxl庫是一個很好處理xlsx的python庫,下面這篇文章主要給大家介紹了關于Python辦公自動化openpyxl使用的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2023-01-01python內(nèi)置函數(shù):lambda、map、filter簡單介紹
Python 內(nèi)置了一些比較特殊且實用的函數(shù),使用這些能使你的代碼簡潔而易讀。下面對python內(nèi)置函數(shù):lambda、map、filter簡單介紹下,需要的朋友參考下吧2017-11-11python處理csv數(shù)據(jù)動態(tài)顯示曲線實例代碼
這篇文章主要介紹了python處理csv數(shù)據(jù)動態(tài)顯示曲線實例代碼,分享了相關代碼示例,小編覺得還是挺不錯的,具有一定借鑒價值,需要的朋友可以參考下2018-01-01用Python復現(xiàn)二戰(zhàn)德軍enigma密碼機
大家好,本篇文章主要講的是用Python復現(xiàn)二戰(zhàn)德軍enigma密碼機,感興趣的同學趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽2022-01-01