每日最新頭條.有趣資訊

拍照總被路人甲搶鏡?那就用這個項目消Ta

選自Github

作者:Jiahui Yu

機器之心編譯

參與:Jamin、思

自己的照片有路人甲入鏡是常有的事,但有些未免太過搶鏡,甚至蓋過了主角的風頭。P 圖高手往往選擇自己手動去掉背景裡不相乾的人,但開發者不想那麽麻煩,於是開發了一些項目來一鍵消掉路人甲。

項目地址:https://github.com/JiahuiYu/generative_inpainting

該項目的作者是 Google Brain 的華人研究員 Jiahui Yu,剛剛在 2020 年獲得了 University of Illinois at Urbana-Champaign 的 PhD 學位,導師為 Thomas Huang。他本科 2016 年畢業於中國科學技術大學。作者曾在多家 AI 相關公司豐富實習經歷,如曠視、Adobe、Snap、百度研究院、微軟亞研等。主要的研究方向在於視覺感知,生成模型,序列以及高性能計算。

該項目因最近引入了 ICCV 2019 Oral 論文《Free-Form Image Inpainting with Gated Convolution》中的方法提升了效果而突然火起來,在GitHub上的star量達到1.5k。這篇論文的一作就是這位華人。

論文鏈接:https://arxiv.org/pdf/1806.03589.pdf

圖像補全效果

很多時候,我們對於圖像補全的效果都持有懷疑態度,論文上展示的生成效果,或者 Demo 視頻演示的效果看起來非常驚豔,但實際我們採用預訓練模型時,修複效果並沒有那麽理想。如下可以先看看理想情況下的修複效果,尤其是第二行,地面上的線條和手推車都有補全。

作者在項目中提供了互動式 Demo,我們可以自由 Mask 掉圖像的某些部分,然後查看它的生成效果。Deepfill v2 一共提供了兩個模型,分別在 Places2 和 CelebaHQ 兩個數據集上進行了預訓練。從效果上看,至少對於這兩個數據集,在場景和人臉圖像上,它做得還是非常不錯的,尤其是人臉的補全效果。

第一行為真實圖像,第二行為抹掉細節的圖像,第三行為 DeepFill v2 修複的圖像。

後面,我們就要試試自己的圖像了,看看模型的泛化能力怎麽樣。當然,因為預訓練模型取自 Places2 和 CelebaHQ 數據集,我們也會找相似的圖像進行測試。

作者表示,該項目的依賴項主要只有三項,即 Python 3、TensorFlow 和他做的一個 TF 工具包 neuralgym。其中作者在 TF 1.3、1.4、1.5、1.6、1.7 版本上都測試,且各種模型超參都放在了 YML 文件中,方便調整。

如果讀者有自己的數據集或者想要複現一下,可以具體看看原 GitHub 項目,後面我們將下載預訓練模型,並試試它的效果。

從總體運行情況來看,因為是新建的環境,所以除了項目描述的庫外,還需要 OpenCV、PIL 和 YAML 三個包,它們的安裝都還簡單。我們先運行了一下測試樣本,得到的效果確實非常不錯,和論文中描述的差不多:

下面,我們就要試試網上找到的圖片,試試模型的泛化效果了:

因為試了幾次,手動構建的 Mask 圖像都存在一些問題,因此這裡直接用已有的 Mask 圖像,試試模型泛化到互聯網圖片的效果。為了不為難模型,我們找了一張背景稍微簡單的圖像:

圖像的修複效果還是挺不錯的,線條與背景都沒多大問題。之前機器之心測試過的圖像修複模型,很多都只能在特定數據上有比較好的效果,模型過擬合現象比較明顯。而在這個項目中,即使從網上找一張圖像,效果也還挺不錯。

這麽優秀的效果,它的論文也非常不錯,DeepFill v2 的原論文被 ICCV 2019 接收為 Oral 論文。作者提出了一種新型門控卷積神經網絡來修複圖像,論文利用了 GAN 生成與判別模式,生成的修複圖會經過提煉,並期待能欺騙判別器,令判別器將其判斷為「真實修複圖」。

整體模型的主要框架,它能對各種缺損的圖像進行修複。

最後,這個 1.5K Star 量的項目,還有論文都值得讀者們入手測試測試。

本文為機器之心編譯,轉載請聯繫本公眾號獲得授權。

------------------------------------------------

獲得更多的PTT最新消息
按讚加入粉絲團