照片里其他游客太多?三星研究員提出LaMa模型,一鍵全部摳掉
【導讀】照片里面有不想要的東西,摳起來又太麻煩?神器來了!三星研究員最近提出一個圖像修復模型:LaMa,在高分辨率圖像輸入下也無需太多計算量,并且效果十分驚人!
拍照的時候,想必大家都有過一種經歷:背景永遠有一大堆其他游客,拍完照還得找半天哪個是自己。
除了其他游客外,如果照片里有一個垃圾桶,或者跟畫面無關的元素過多也會破壞整張照片的美感。對于PS圖片技術不過關的小伙伴來說,想把這些元素從畫面里摳出去,那可真是太難了。
但人工智能技術發展的目的就是讓這種工作變得簡單!
只需一鍵,就可以把畫面中不想要的元素統統摳掉,而且「毫無PS痕跡」!
圖像修復
長期以來,大量的研究人員一直在研究如何更好地移除畫面中的元素,并將其正確地替換背景,這個任務也稱為圖像修復(image inpainting)。
這個任務看起來簡單,但實現起來卻相當難,因為被遮擋掉的背景信息對于AI來說是完全未知的,生成背景全靠腦補。
并且一些遮擋掉的元素也并非是規則的背景圖,也可能是相當復雜的元素。
但從2016年Image Inpainting的開山之作發布以來,目前圖像修復的效果已經相當驚人了,在人臉修復上尚有「想象」的成分存在,但對于摳背景來說簡直小菜一碟。
人類在進行圖像腦補的時候,會很自然而然地利用上人類對三維世界的信息理解,但對于AI來說,他所能接收到的信息只有二維圖像中的像素點。這種信息接收上的差異也是AI圖像修復的難點之一。
并且人類也能根據視覺常識,從物體的一部分來推測出物體的全貌。所以想讓AI學會圖像修復,我們首先需要教會機器一件事:世界究竟是什么樣子?
ImageNet數據集提供了大量二維圖片,所以讓機器了解世界這點很容易做到。
另一個問題是,通常需要修復的真實照片分辨率都很高,所以需要的計算成本也更高。但目前大多數圖像修復方法都聚焦于低質量的圖像。雖然可以用各種方法來講圖像降低分辨率為小圖像,然后把修復的結果放大應用于原圖像,但最終結果肯定不如在原始圖像上進行修復的效果好。
高分辨率圖像帶來的是更真實的圖像修復,但也需要更多的時間來進行訓練和圖像處理,難道真的沒有兩全之法?
LaMa模型
針對上面提到的問題,三星的研究人員提出了一個新模型LaMa(LArge MAsk inpainting),能夠在高分辨率圖像的情況下,隨意刪除圖像中的各種元素。
LaMa的主要創新點為:提出一種新的修復網絡結構,使用快速傅立葉卷積,具有圖像寬接收域, 高感受野感知損失, 較大的訓練掩碼(mask),可以有效提升前兩個組件的性能潛力。
該模型還可以很好地泛化到比訓練時更高的分辨率圖像,以較低的參數量和計算成本實現與基準相媲美的性能。
論文地址:https://arxiv.org/abs/2109.07161
代碼地址:https://github.com/saic-mdal/lama
例如下面圖片中的各種樹、窗臺,路燈、汽車都可以一鍵P掉。
模型的主要架構如下圖所示。包含一個mask的黑白圖,一張原始圖像。將掩碼圖覆蓋圖像后輸入Inpainting網絡中,先是降采樣到低分辨率,再經過幾個快速傅里葉卷積FFC殘差塊,最后輸出上采樣,生成了一張高分辨的修復圖像。
和一般的圖像修復網絡一樣,LaMa也必須理解圖像并嘗試填充它認為最適合的像素。因此,在這種情況下,為了減少計算,它也需要在網絡的開始階段縮小圖像。但不一樣的是,LaMa在處理圖像時采用了一些特別的技術來保證降采樣后的圖像質量和原始高分辨率圖像相同。
網絡主要分為兩步。
首先,模型會進行圖像壓縮并嘗試僅保存重要的相關信息。網絡最后將主要保留有關圖像的通用信息,如顏色、整體風格或出現的常見的物體,但不會保留精確的細節。然后,模型會嘗試使用相同的原理但向后重建圖像。研究人員使用了一些技巧,例如跳過連接(skipt-connections)可以保存來自網絡前幾層的信息,并將其傳遞到第二步,以便模型可以將其定向到正確的對象。
簡單來說,模型能夠知道圖片里有一個塔,藍天和樹木,這種就叫全局信息(global information),但仍然需要一些skip connections來讓模型識別到埃菲爾鐵塔在圖片的中央。
對于更細粒度的信息,例如這里或那里有云,樹有哪些顏色等細節,研究人員稱之為局部信息(local information)。
但還存在一個問題,就是在這種情況下,模型正在處理的是質量較低的圖像,這會降低圖像修復的質量。所以特殊之處在于,LaMa不是像在常規卷積網絡中那樣使用卷積并跳過連接來保持局部知識,而是使用快速傅里葉卷積,也就是說網絡將在空間域和頻域中同時工作,并且不需要回到前面的層來理解圖像的上下文。
每一層都將與空間域中的卷積一起處理局部特征,并在頻域中使用傅里葉卷積來分析全局特征。
頻域有點特殊,基本上就是將輸入圖像轉換為所有可能的頻率,所以這個新創建的圖像的每個像素都將代表一個覆蓋整個空間圖像的頻率以及它的存在量,而不是顏色。當然,這里的頻率并非是聲音頻率,而是代表不同尺度的重復模式。
因此,對新的傅里葉圖像進行卷積可以讓模型在卷積過程的每個步驟中處理整個圖像,因此即使在前幾層也可以更好地理解圖像,而無需太多計算成本,這種效果通過常規的卷積是無法實現的。
然后,全局和局部的結果都被保存并發送到下一層,下一層將重復這些步驟,最終將獲得可以放大回來的最終圖像。
傅立葉域的使用使其可以擴展到更大的圖像,因為圖像分辨率不會影響傅立葉域,它使用整個圖像的頻率而非顏色作為特征,并且尋找的重復模式需要是相同的圖像的大小,這意味著即使在用小圖像訓練這個網絡時,也能取得相同的效果。
研究人員在CelebA-HQ數據集上的圖像修復進行了實驗,采用可學習感知圖像斑塊相似性(LPIP)和FID作為定量評估指標。與LaMa傅立葉模型相比,幾乎所有的模型的性能都更弱(紅色上箭頭)。表中還包括了不同的測試掩碼生成的不同策略的度量,即窄掩碼(narrow)、寬掩碼(wide)和分段掩碼(segmentation),LaMa傅里葉的性能仍然更強,表明了實驗方法更有效地利用了可訓練參數。
下面是一些模型的圖像修復樣例。
也有一些修復的不是很好的樣例。
雖然結果有好有壞,但LaMa模型仍然性能出眾,向現實應用邁出了重要一步。
參考資料:
https://www.louisbouchard.ai/lama/
本文來自微信公眾號“新智元”(ID:AI_era),編輯:LRS,36氪經授權發布。