你已經是一個成熟的AI了,用GitHub項目技術手段實現「穿越」……
- 2020 年 2 月 26 日
- 筆記
2020年才剛開始,就被各位網友稱之為末日之年。 「如果能穿越,我想重啟2020」 想必是大家本年度最大心愿。

那麼穿越是否真的存在?是否有實現穿越的可能呢?愛因斯坦說了,當年的研究狹義相對論,認為只要比光跑得快,那就有可能實現穿越。
不過暫且還只是理論

GitHub上有位大佬為了想要更清晰地看到過去,實現「穿越」,創造了一個給老照片修復的項目:DeOldify,其初衷也是是讓記憶不再模糊。 好歹也是穿越:過一過穿越癮也行。

GitHub地址:
https://github.com/jantic/DeOldify/blob/master/README.md


AI修復下的港星照片
「你我當年」運用主要是CNN、GAN等AI技術,即卷積神經網路和生成式對抗網路」,讓人想到美圖秀秀的一鍵磨皮,它們雖然都利用了卷積神經網路,但二者並不一樣。
美顏軟體中常見的磨皮功能是做減法,將照片去掉細節,做模糊處理。
常用的磨皮演算法包括均值模糊、高斯模糊、中值濾波等,它們的去噪效果好,但視覺效果差。

例如踩雷的林徽因
林徽因這麼「剛」一先生,卻被AI修復成了網紅臉。出塵的書卷氣沒有了,接地氣的網紅氣息撲面而來。 你我當年:是做加法,可以自動補充細節,即利用AI演算法替代影像中缺失或者損壞的數據。

AI修復的大小S照片在網上引起驚嘆


《羅馬假日》劇照
影像修復一般用「擴散」的方法來處理,這種方法將局部結構應用到其他部分。
或者用「示例」的方法,每一次構建缺失部分的一個像素點(塊)保持和周圍像素點的一致性。 但是當缺失部分很大時,這些方法會失效,因此就需要運用機器學習。由一個高階模型提供補充的資訊。

例如深度神經網路
深度神經網路使用監督影像分類,在監督影像分類中,每個影像都有一個特定的標籤,神經網路通過一連串的基本操作運算來學習影像到標籤之間的映射。

通過輸入學習大量的數據集(數百萬張帶有成千個的標籤的影像),神經網路可以實現準確的分類,實施一個判別式預訓練的神經網路來指導影像重建。 當然場主也找到了個笨辦法,人人都可實踐。 人臉修復的精髓就在於對人臉的把控,其中所用到的主要技術為1、人臉檢測2、人臉關鍵點檢測3、人臉對齊這三個預處理操作。

##使用方法:
(來源https://github.com/RiweiChen/FaceTools) 由於是調用在windows下的.exe二進位軟體,所以本工具僅限於在Windows下執行。 參照main.py中,指定需要預處理的影像文件夾、檢測到的人臉影像的保存文件夾、對齊後的影像人臉文件夾路徑等系列參數,調用test()函數即可。 使用實例:
(來源:https://github.com/RiweiChen/FaceTools)
if __name__ == "__main__" : ''' @param: 提供的參數:1,影像的文件名位置,2,需要保留的文件位置,3,影像的格式列表 ''' ImagePath=r'D:TestVal' #原始的影像路徑 savePathDetect=r'D:TestVal_detect'#保存中間檢測到的影像的路徑 savePathAligned=r'D:TestVal_aligned'#對齊後的人臉影像的保存路徑 test(ImagePath,savePathDetect,savePathAligned,tag_recover=True,savesize=[128,128])
其中,Tag_Recovery參數在人臉影像中人臉大小相差比較大的時候使用,如果人臉影像大小大致已經是摳出來的並且大小已經相同,就沒有必要在設置這個參數了。 Like this :

- 打開ps,把所有的照片都調整成透明度50%以下。開始照片疊加。
- 疊加時注意疊加錨點,按照最不易被改變的錨點來疊加,即可完成。
最後,場主想說的是,人臉影像處理技術作為時下最新興的深度學習模型,也只是AI技術的九牛一毛。相信在不久的未來,AI能在更多場景帶給我們驚喜,甚至可以實現像人類一樣進行思考。
-END-
2080年,AI自我覺醒,程式猿工程獅們在一次程式異常後,發現了他們從沒見到的問題,而修復已經來不及。
在那一瞬間,歷史上第一個自我覺醒的AI開始瘋狂複製自己,人類開始面臨……

