當前位置:
首頁 > 科技 > 基於GAN的圖像水印去除器,效果堪比PS高手

基於GAN的圖像水印去除器,效果堪比PS高手

作者 | 李翔

轉載自視說AI(ID:techtalkai)

簡介:李翔,國內某互聯網大廠AI民工,前攜程酒店圖像技術負責人,計算機視覺和深度學習重度愛好者,在ICCV和CVPR等會議上發表論文十餘篇。

寫在前面

當前互聯網飛速發展,越來越多的公司、組織和個人都選擇在網上展示和分享圖像。為了保護圖像版權,大家都會選擇在圖像上打上透明或者半透明的水印。隨著水印被廣泛地使用,針對水印的各種處理技術也在不斷發展,如何有效去除圖像上的水印引發了越來越多人的研究興趣。

今天的文章中,我們會介紹一種更為強大的水印去除器。這次我們藉助生成對抗網路來實現,進一步提升水印去除器的性能,從而達到更為理想的去除效果。

生成對抗網路的前世今生

生成對抗網路(Generative Adversarial Networks,GAN),是由Ian Goodfellow等人在2014年首次提出。一般來說,生成對抗網路由兩部分組成:生成器(Generator)和判別器(Discriminator)。生成器通過接收輸入數據,學習訓練數據的分布來生成目標數據。判別器通常是一個二分類模型,用來判別生成器生成數據的真假性。

我們可以將生成器和判別器看作互相對抗的雙方,生成器的目的是令生成的數據儘可能的真實,讓判別器無法區分真假;而判別器的目的是儘可能地識別出生成器生成的數據。在生成對抗網路的訓練過程中,上面的對抗場景會持續進行,生成器和判別器的能力都得到了不斷提升。訓練的過程可以用如下公式表示:

其中G和D分別表示生成器和判別器,x為真實數據,z是生成器的輸入數據。最後訓練結束我們就可以使用生成器來生成以假亂真的數據。一個直觀的生成對抗網路結構如下圖所示。

生成對抗網路近些年被大量應用於計算機視覺領域,根據具體應用不同可以分為圖像生成和圖像轉換兩種類型的任務。圖像生成可以看成是一種學後聯想任務,其中的代表是圖像自動生成模型(DCGAN),網路結構如下圖所示。這類任務只給出我們希望生成的目標圖像,此時生成器的輸入是服從某一分布的雜訊,通過和判別器的對抗訓練,將其轉換成目標圖像的數據分布。

圖像轉換可以看成是一種目標引導任務,其中的代表是圖像超解析度模型(SRGAN),SRGAN的網路結構如下圖所示。這類任務除了給出我們希望生成的目標圖像外,還會給出轉換前的原始圖像,此時生成器的輸入變為原始圖像,生成器在和判別器的對抗訓練過程中還要同時保證生成的圖像和目標圖像儘可能的相近。

生成對抗網路的發展非常迅速,近些年出現了各式各樣GAN的變種,例如在訓練上優化的WGAN和LSGAN,通過對輸入添加條件限制來引導學習過程的Conditional GAN,圖像生成任務中的BigGAN和StyleGAN,圖像轉換任務中的Pixel2Pixel和CycleGAN等等。期待未來生成對抗網路在計算機視覺領域給我們帶來更多的驚喜。

生成對抗網路 vs 圖像水印

上一節中我們介紹了生成對抗網路的核心思想和一些應用,現在我們嘗試將生成對抗網路用於圖像的水印去除。去水印的目的是將帶水印的圖像轉變為無水印的圖像,這本質上也是一種圖像轉換任務。

因此生成器的輸入為帶水印的圖像,輸出為無水印的圖像;而判別器用於識別結果到底是原始真實的無水印圖像,還是經過生成器生成的無水印圖像。通過兩者之間不斷的對抗訓練,生成器生成的無水印圖像變得足夠「以假亂真」,從而達到理想的去水印效果。

在實際的實踐過程中,我們還做了一系列優化改進。下面我們分別介紹生成器和判別器的具體結構以及訓練細節。在生成器的選擇上,我們繼續使用U-net網路結構,U-net通過在輸入和輸出之間添加跳躍連接,融合了低層級特徵和高層級特徵。與直接的編解碼器結構相比,能夠保留更多的圖像背景信息,保證去除水印後的圖像的真實性。

在判別器方面,我們使用了基於區域判別的全卷積網路。與傳統的判別器直接輸出整張圖像的真假結果不同,我們通過對圖像區域級別的判別,可以更好地對圖像上的無水印和有水印部分進行區分。

此外,我們採用了Conditional GAN的思想,判別器在對原始真實的無水印圖像和生成器生成的無水印圖像進行區分的時候會加入帶水印圖像的條件信息,從而進一步提升生成器和判別器的學習性能。生成器和判別器的具體結構和細節如下圖所示。

生成器生成的無水印圖像除了要令判別器分辨不了真假之外,還需要保證和真實的無水印圖像儘可能接近。為此我們組合一範數損失(L1 Loss)和感知損失(Perceptual Loss)作為內容損失,在生成器和判別器對抗的過程中加入訓練。最終的損失函數為

其中的條件對抗損失為

最終我們使用生成器作為水印去除器實現圖像上的水印去除。為了對比和單一全卷積網路實現的水印去除器的效果,我們可視化了一些去水印結果,左列是輸入的水印區域,中間列是單一全卷積網路得到的無水印區域,右列是生成對抗網路得到的無水印區域。從可視化的結果可以看出,經過對抗訓練後的生成器對水印的去除效果更優。

寫在最後

圖像水印去除問題吸引了越來越多人的研究興趣,本篇文章介紹了如何利用生成對抗網路來實現水印自動去除。去水印研究的目的是為了驗證水印的魯棒性,更好地提升水印的反去除能力。如何設計一種AI去不掉的水印是一個極具挑戰的問題,接下來我們會在這方面做一些嘗試,希望能夠為版權保護盡一份力。

參考資料:

[1] Towards photo-realistic visible watermark removal with conditional generative adversarial networks

[2]Image-to-image translation with conditional adversarial networks

[3] Photo-realistic single image super-resolution using a generative adversarial networ

(*本文為 AI科技大本營轉載文章,轉載請聯繫作者)

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 AI科技大本營 的精彩文章:

李理:為什麼說人工智慧可以實現?
AI假新聞滿天飛,打假神器GROVER幫你看清一切

TAG:AI科技大本營 |