基於深度學習的Image Inpainting (圖像修復)論文整理與概述

爲個人需要,整理一波這方面的論文。同時也參考了 山水之間整理的結果 ,非常感謝。


1. 《Context Encoders: Feature Learning by Inpainting》

CVPR 2016

鏈接:https://arxiv.org/abs/1604.07379

Github代碼:

基於torch:https://github.com/pathak22/context-encoder

基於pytorch:https://github.com/BoyuanJiang/context_encoder_pytorch

主要貢獻:

提出了基於上下文像素預測驅動的無監督視覺特徵學習算法,通過利用周圍圖像信息來推斷損失部分的圖像信息。其貢獻點在於對於大範圍圖像損失,傳統方法已經無法滿足修復要求,作者首次提出了基於CNN和GAN的修補方法,首次較好地解決了大範圍圖像損失修補問題。

主要思路:(CNN+GAN)

通過結合Encoder-Decoder網絡結構和GAN,利用L2損失(Reconstruction Loss)和對抗損失(Adversarial Loss)來修復圖像。Encoder-Decoder結構用來學習全局圖像特徵和推斷損失部分,GAN部分用來判斷預測推斷的圖片和真實圖片。不過一個主要的區別是,這裏GAN只固定Generator,試圖通過極大化Loss來訓練更強的Discriminator。當GAN無法區分兩者的區別時,則默認爲網絡模型參數已經達到最有狀態。

缺陷:

1) 由於沒有考慮填補區域與周圍像素信息的一致性,得到的圖片有時候缺少比較好的紋理細節,在填補的邊緣能看到明顯的痕跡。

2) 當輸入圖片較大時難以訓練Adversarial Loss,因此無法解決高分辨率的圖片修復問題;

3) 輸入圖片尺寸是固定的。

 

2. 《High-Resolution Image Inpainting using Muti-Scale Neural Patch Synthesis》

CVPR2017

鏈接:https://arxiv.org/abs/1611.09969

Github代碼:

基於torch:https://github.com/leehomyc/Faster-High-Res-Neural-Inpainting

主要貢獻:

提出了結合圖像內容與紋理的多尺度CNN匹配方法,不僅可以保留紋理結構,而且可以通過提取分類網絡的中間層生成高頻細節部分。以一定方式解決了高清圖像補全問題。

主要思路:(Encoder-Decoder + CNNMRF)

整體架構分爲內容網絡與結構網絡。內容網絡採用Encoder-Decoder 形式,其損失函數使用了L2損失和對抗損失的組合。結構網絡採用訓練好的VGG分類網絡,原因在於其中間層的特徵對於紋理變化表現出很強的不變性,因此有助於更加準確地補全缺失部分的內容。其損失部分分爲三個部分,即Pixel-wise的歐式距離,基於已訓練好紋理網絡的feature layer的perceptual loss,和用於平滑的TV Loss。

缺陷:

紋理部分尋找patch時只是在該圖片內尋找,沒有利用數據集的數據。因此補全效果並沒有特別理想。

參考

 

3. 《On-Demand Learning for Deep Image Restoration》

ICCV 2017

鏈接:https://arxiv.org/abs/1612.01380

Github代碼:

基於torch:https://github.com/rhgao/on-demand-learning

主要貢獻:自動對原始圖像修復難度進行分級,然後進行圖像填補,像素插值,去模糊,去噪。

4. 《Globally and Locally Consistent Image Completion》

SIGGRAPH 2017

鏈接:http://iizuka.cs.tsukuba.ac.jp/projects/completion/en/

Github代碼:

基於torch:https://github.com/satoshiiizuka/siggraph2017_inpainting​github.com

基於TF:https://github.com/shinseung428/GlobalLocalImageCompletion_TF

基於Pytorch:https://github.com/akmtn/pytorch-siggraph2017-inpainting

主要貢獻:

在Context Encoder中加入 Global context discriminator 和 Local context discriminator 使其從全局和局部兩個角度判別生成效果的好壞。與此同時,可以修補任意不規則形狀的缺損區域。

主要思路:

 將需要進行填補的原始圖片輸入Encoder-Decoder網絡,然後通過全局判別其和局部判別器從兩個方面判別生成效果。全局判別器將完整圖像作爲輸入,識別場景的全局一致性,而局部判別器僅在填充區域上觀測,識別局部一致性。最後經過快速匹配方法[Telea 2004]後處理,從而將生成的邊緣更加友好地融入全圖。

[引]Alexandru Telea. 2004. An Image Inpainting Technique Based on the Fast Marching Method. Journal of Graphics Tools 9, 1 (2004), 23–34.

5. 《Image Inpainting for Irregular Holes Using Partial Convolutions》

ECCV 2018 

鏈接:https://arxiv.org/abs/1804.07723

Github代碼:

基於Pytorch:https://github.com/NVIDIA/partialconv

基於Pytorch:https://github.com/naoto0804/pytorch-inpainting-with-partial-conv

主要貢獻:

可以解決任意形狀缺損的圖像修補,並且不需要額外的後期處理。

主要思路:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章