二維碼太醜?用風格遷移生成個性二維碼瞭解一下

機器之心發表於2019-03-04
文章選自arXiv,作者:Mingliang Xu等,機器之心編譯
手機二維碼太普通,換來換去還是不好看。何不自定義一個自己喜歡的呢?近日,鄭州大學、浙江大學、微軟亞洲研究院、北京航空航天大學的研究者釋出論文,提出一種設計個性化的藝術風格二維碼的方法,通過三步自定義獨特二維碼,並且能保持掃描成功率。
隨著網際網路和智慧移動裝置不斷普及,二維碼(Quick Response code)已成為世界上應用最為廣泛的資訊載體之一。一般的二維碼觀感並不好,帶有人眼無法識別的單調的黑/白編碼模組。最近,二維碼的視覺美化在學界和業界興起了一波熱潮。如圖 1 所示,當前方法可分為四類: i) 嵌入式 [1]–[5],嵌入影像以覆蓋二維碼中的附加位元; ii) 變形型別 [5],改變二維碼模組的形狀/顏色,比如把正方塊轉化為圓形、三角形或星狀; iii) 手動型 [5],來自手工設計和渲染; iv) 融合型 [6]–[12],把影像融合進二維碼。其中,融合型方法的視覺效果最好,也最為吸引眼球。
二維碼太醜?用風格遷移生成個性二維碼瞭解一下
圖 1:4 種美化二維碼的已有方法。
雖然已有的融合型別的方法可以提升二維碼的視覺品質,但仍存在如下幾個有待提升的方面:(1)多樣化和個性化,主流方法通過改變融合影像來生成不同外觀的藝術二維碼,但實際上,使用者希望對獨特的融合影像(例如 logo、個人照片或商標等)生成多樣化和個性化的藝術二維碼;(2)藝術品質,一方面,大多數的方法將「美」定義為「和融合影像更加相似」,即理想的結果是原始影像不被藝術元素「反客為主」。另一方面,已有的融合型別二維碼通常直接、機械地將影像和黑/白編碼模組相結合,導致編碼模組外觀不可變動和單調乏味,即使用很漂亮的影像融合也是這樣(如圖 4(a)-(d))。(3)魯棒性,在不影響可讀性的前提下將藝術元素融合到二維碼並不容易,大多數已有方法缺乏錯誤校正機制來保證結果的魯棒性,從而導致二維碼被錯誤解碼。
二維碼太醜?用風格遷移生成個性二維碼瞭解一下
圖 2:(a)(b) 本文介紹的方法能直接美化基線藝術二維碼,並生成藝術風格的二維碼。(c)(d) 如果用傳統的融合型別方法生成藝術風格結果,必須將美觀的影像和黑/白編碼模組相結合。但基本上,(c)(d) 的結果仍然被歸類為基線藝術二維碼,雖然融合了藝術影像,但仍然不是真正的藝術風格二維碼。和步驟 (c)(d) 相比,本文方法有兩個優點:(1)減少了生成步驟。(2)進一步將模組和融合影像統合為一個風格,增強視覺吸引力(如圖 4(e)-(l))。
解決這些問題而不犧牲其它特性是一項很大的挑戰。幸運的是,通過基於 CNN 的風格遷移網路,我們找到了有效的解決方案。本文提出了一種自動化生成魯棒藝術風格二維碼的方法——SEE QR Code。對於問題(1),如圖 3 所示,我們的 SEE QR Code 是風格導向的藝術二維碼,使用者可以通過嵌入單張影像生成多種藝術風格的二維碼。因此,使用者可以按照自己的偏好和需求進行個性化選擇。對於問題(2),我們的 SEE QR Code 應該被稱為藝術品,而不僅僅是原始影像的風格化;此外,該方法可直接風格化基線藝術二維碼(如圖 2(a)(b)),可同時為編碼模組和融合影像賦予藝術元素,增強其視覺吸引力(如圖 4(e)-(l))。對於問題(3),我們設計了一個錯誤校正機制以量化和平衡兩個競爭要素,即視覺品質和可讀性,從而得到魯棒的結果。
二維碼太醜?用風格遷移生成個性二維碼瞭解一下
圖 3:一些 SEE 二維碼的例項,看起來就像是藝術品;並且使用者可根據單一的背景影像生成不同藝術風格的美化影像。
二維碼太醜?用風格遷移生成個性二維碼瞭解一下
圖 4:(a)-(d) 傳統方法結果之中的編碼模組(參見圖 2)。(e)-(l) 我們方法結果中的編碼模組。可看到 SEE 二維碼中的編碼模組同樣具有吸引人的藝術元素。
上述現有工作僅聚焦於二維碼美化的第一階段,即通過改變嵌入圖(參見圖 2(a)(d))產生有美感的二維碼。相比之下,我們的方法主要美化基線審美的二維碼(參見圖 2(b))。總結一下,我們的主要貢獻有:
  • 我們提出了一種藝術風格審美的二維碼——SEE 二維碼,在以下方面表現優於現有方法:多樣性與個性化、美學品質和魯棒性。
  • 我們設計了一種高效演算法,可在基線藝術二維碼中設定模組安排的優先性,從而最小化黑/白編碼模組和融合影像之間的視覺對比。
  • 我們調整風格遷移網路以適應把基線藝術二維碼作為內容目標,這不僅有效避免了像噪音一樣的編碼模組造成的視覺影響,還減少了由網路引起的誤差模組的數量。
  • 我們提出了一種基於迭代更新的誤差修正機制,並通過平衡互相競爭的兩個要素:視覺質量和可讀性,來保證二維碼的魯棒性。
如下所示為整個系統的架構,在 Stage A 中,我們結合圖片與編碼資訊的二維碼而生成藝術二維碼。隨後再把需要遷移的風格與前面生成的藝術二維碼結合,並在 Stage C 中與抽出來的資訊編碼做誤差修正而提升解碼魯棒性。
二維碼太醜?用風格遷移生成個性二維碼瞭解一下
圖 6:方法概覽。共包括三步:Stage A:生成藝術二維碼; Stage B:風格遷移;Stage C:誤差修正。
後面將簡要介紹該系統的各個階段與實驗結果,因此我們需要了解表 1 所描述的符號意義:
二維碼太醜?用風格遷移生成個性二維碼瞭解一下

Stage A:生成藝術二維碼

A. 方法概覽
如圖 6 所示,我們的方法共分為三步:Stage A、Stage B 和 Stage C。在 Stage A 中,我們生成一個優化過的藝術二維碼 Q_a。在 Stage B 中,我們使用一個調整過的神經風格遷移網路對 Q_a 進行風格化,並輸出非魯棒的藝術風格二維碼 Q_b。最後,在 Stage C 中,我們通過誤差修正機制修復 Q_b 的可讀性,獲得魯棒的結果 Q_c。以下將分別介紹這三個基本步驟。
二維碼太醜?用風格遷移生成個性二維碼瞭解一下
圖 7:Stage A 的流程圖。我們根據融合影像的灰度分佈設定可變模組的優先順序,以最小化融合影像和類似噪點黑白模組之間的視覺對比,並最終輸出基線藝術二維碼 Q_a。
二維碼基於 RS 糾錯碼的編碼規則,表達為方形的編碼模組。[13] 中證明我們可以使用 Gauss-Jordan 消去法在有限範圍內修改模組的顏色(即黑色或白色),而無需考慮機器可讀性。主流研究([7] [8] [10])通常使用 [13] 中的方法,通過考慮融合影像的區域性視覺特徵(如顯著性圖、邊緣圖或感興趣區域)來選擇可變模組。在 Stage A 中,我們提出一種高效策略來設定可變模組的優先順序,即根據混合影像 I 的全域性特徵進行選擇,並最終輸出基線藝術二維碼 Q_a,其最小化影像 I 和類似噪點黑白模組之間的視覺對比。
關於融合影像 I^g 的灰度,每個畫素的灰度值在 [0, 255] 區間內,黑白模組的灰度值分別是恆定值 0 和 255。因此,我們認為當模組的顏色最接近影像 I 中的對應區域時視覺對比度最小。也就是說,將影像 I 中最黑/最白顏色的區域賦予高權重來對應黑白模組,將大大優化 Q_a 的視覺感知度。基於此,我們將 Stage A 分為計算權重矩陣和融合影像兩個步驟。

Stage B:風格遷移

本論文使用的風格遷移架構如下圖 8 所示,我們大致 yan 用了由 J. Johnson[16] 等人提出的框架。對於風格遷移來說,我們輸入需要遷移風格的目標影像 a_c 和風格影像 a_s,而輸出的 a hat 應該組合 a_c 的內容和 a_s 的風格特徵。
二維碼太醜?用風格遷移生成個性二維碼瞭解一下
圖 8:Stage B 的流程圖。我們大致遵循 [16] 所提出的風格遷移系統,並進一步調整了損失網路 φ 的內容重構層和特徵,因而不再使用如同噪點那樣的黑白方塊來增強二維碼的風格與美學特徵。
在 Stage B 中,基線藝術二維碼 Q_a 有非常密集的黑白編碼模組作為需要遷移風格的內容,那麼這就要求我們解決兩個問題:1)為了更強的魯棒性,所產生的錯誤模組數需要最小化;2)為了視覺質量,避免類似噪點的模組帶來視覺影響是非常重要的。因此為了解決這兩個問題,如下我們對內容重構層和風格重構層等網路架構做了進一步的修改:
二維碼太醜?用風格遷移生成個性二維碼瞭解一下
圖 9:與 L. A. Gatys[14] 和 J. Johnson[16] 等人提出的框架相似,我們從預訓練 VGG-16 損失網路重構了風格特徵,以上分別表示 relu1_2、relu2_2、relu3_3 和 relu4_3 層的風格特徵重構結果。此外,我們發現低層的重構風格特徵與藝術二維碼的密集編碼模組非常相似。
二維碼太醜?用風格遷移生成個性二維碼瞭解一下
表 2:特徵重構層的調整。

Stage C:誤差修正

雖然我們在 Stage B 中顯著地優化了魯棒性弱的問題,然而,在 Q_b 中仍然存在少量誤差模組(error-modules)。因此,在 Stage C,我們設計了一個誤差修正機制,通過平衡魯棒性和視覺品質來檢測和校正 Q_b 的誤差模組,以生成魯棒的結果 Q_c。
B 編碼模組的魯棒性評估
二維碼太醜?用風格遷移生成個性二維碼瞭解一下
圖 10:(a)在取樣階段,收集的畫素可能被不直接相關的因素(例如影像縮放、傾斜角度等)影響而導致錯誤,而本質影響因素是編碼模組的尺寸。(b)在閾值化階段,取樣的畫素可能被不直接相關的因素(例如,光照、光色等)錯誤地閾值化,而本質影響因素是編碼模組的顏色。
C 誤差修正機制
二維碼太醜?用風格遷移生成個性二維碼瞭解一下
圖 11:Stage C 的流程圖。(a)迭代地檢測、校正非魯棒的模組,並更新閾值,直到每個模組都變得魯棒為止。(b)通過建立編碼點預處理非魯棒的模組。(c)轉換灰度魯棒藝術風格二維碼到 RGB 空間。
二維碼太醜?用風格遷移生成個性二維碼瞭解一下
圖 12:(a)圖 11(b)的具體步驟,預處理 Q_b 中的非魯棒模組,其中區域性平均顏色通過一種簡單的方法當作 C_k 的顏色來計算。(b)修正一個灰度非魯棒編碼模組的具體步驟。(c)未通過步驟(a)處理生成的 Q_c,即 Q_c 中的修正點可能有很嚴重的視覺失真。
二維碼太醜?用風格遷移生成個性二維碼瞭解一下
圖 13:兩種定位器的一些例項。一個是由黑色和白色組成的標準定位器,另一個是在風格遷移和誤差修正之後的顏色定位器。

實驗

二維碼太醜?用風格遷移生成個性二維碼瞭解一下
圖 14Q_a 和 TS(基於 [10] 中的 Two-Stage 生成結果)的實驗結果對比。我們的結果聚焦於背景影像 I 的全域性特徵,黑白編碼模組儘量分配給影像 I 中更深/更淺的區域,以最小化模組和影像 I 之間的視覺反差。
二維碼太醜?用風格遷移生成個性二維碼瞭解一下
圖 17:最初風格遷移系統 [16] 與我們調整後的結果。在最初風格遷移的結果中,不規則的色彩變化通常發生在較大的區域中,這非常影響視覺且很容易導致解碼失敗。我們的調整顯著地改善了解碼魯棒性和視覺質量等問題。
二維碼太醜?用風格遷移生成個性二維碼瞭解一下
表 4:不同移動裝置上的二維碼掃描成功率。
論文:Stylize Aesthetic QR Code
二維碼太醜?用風格遷移生成個性二維碼瞭解一下
摘要:隨著智慧移動裝置的持續發展,二維碼的使用越來越廣泛。現有研究試圖美化二維碼的外觀,並開發了一系列相關技術。但是,這些研究仍有很大改進空間,如視覺多樣性、美學質量、靈活性、通用性質和魯棒性。為了解決這些問題,本論文提出了一種美化二維碼的新方法 SEE(Stylize aEsthEtic),只需三步即可自動生成魯棒的藝術風格二維碼。具體來說,第一步,我們提出一種方法來生成優化的基線藝術二維碼,減少噪聲類黑白模組和融合影像之間的視覺對比度。第二步,為獲取藝術風格的二維碼,我們調整一個合適的神經風格遷移網路,給基線藝術二維碼增加一些抽象化的藝術元素。第三步,我們設計了一種誤差修正機制,通過平衡兩種這兩種存在競爭的元素:視覺質量和可讀性,以確保效能的魯棒性。大量實驗證明 SEE 二維碼在外觀和魯棒性方面都保持高質量,同時使使用者擁有更多個性化選擇。

相關文章