背景
在視覺設計領域中,設計師們往往會因為一些簡單需求付出相當多的時間,比如修改文案內容,設計簡單的海報版式,針對不同機型、展位的多尺寸擴充等。這些工作需要耗費大量的時間、人力成本(5~6張/人日),但對設計師的進步成長起到的作用卻非常有限。另一方面,精準營銷是未來的大趨勢,在大流量背景下,首頁的海報資源展位需要展示“千人千面”的效果,這對海報的生產效率也提出了非常高的要求。所以,我們美團外賣技術團隊嘗試結合AI技術,來協助設計師避免這種低收益、高重複的任務,同時低成本、高效率、高質量地完成海報圖片的生成。本文以Banner(橫版海報)為例,介紹我們在海報設計與AI技術結合方面所進行的一些探索和研究。
分析
什麼是Banner的設計過程?我們嘗試總結了對Banner設計的理解,Banner的設計過程是一系列的具備某種特徵屬性的素材圖層的有序疊加過程。這裡的特徵屬性既包括顏色、形狀、紋理、主題等視覺屬性,也包括位置、大小、貼邊等空間屬性。在這個過程中,哪些環節可以被機器演算法所探索呢?文獻[1]研究瞭如何調整影象的顏色分佈,使雜誌封面的視覺效果更加符合人眼的視覺特性;文獻[2]以此為基礎,引入了基於顯著性識別的影象裁剪,並使用優化方法來解決佈局問題。阿里巴巴的鹿班系統在去年雙十一當天,生成1.7億張Banner;京東內部也在孵化玲瓏和莎士比亞系統,更加智慧地設計文案和Banner。
在設計領域的一些子問題上,可以用演算法來挖掘出資料背後的規律(如圖1所示)。那麼,能否構建一個完整的學習演算法和處理系統,統一解決Banner設計中所有的子問題(配色、佈局、搭配、生成)呢?
技術方案
素材圖層是Banner的基礎元素,其本身可以被特徵化,同時組成Banner的若干元素間的疊加順序可以被序列化,因此,演算法實際是在學習“在什麼時候,選擇某種素材,放在哪裡”。
如圖2所示,為了解決這個問題,我們設計規劃器、優化器、生成器來共同構建海報設計的學習與生產過程。其中:
1. 規劃器從資料中學習設計師對不同風格下的設計習慣與規律;
2. 優化器基於美學質量和設計原則,對前者的輸出結果做精細化調整;
3. 最後,由生成器選取/生成素材並渲染成圖;
4. 素材庫作為這三個環節的基礎,負責素材管理和素材標籤化。
素材庫
如何提取素材圖片的特徵屬性,這是比較典型的分類問題。在計算機視覺領域,傳統方案是提取影象的顏色、梯度等低階語義特徵[3],結合傳統的分類器(LR、SVM等)來實現分類。近年來,基於深度學習的方法因為能表達更為複雜的語義特徵,逐漸成為主流方法[4]。如圖3所示我們提取傳統的低階語義特徵,以及基於CNN的高階語義特徵,來共同完成素材特徵屬性提取。
規劃器
完成素材的資料化工作後,怎樣學習Banner的設計過程?
作為一種生成模型,對抗生成網路(GAN)[5]在近年廣為應用,其優勢是可以端到端地訓練影象生成模型,但在我們的應用場景下,GAN存在以下兩個問題:
1. GAN的過程更像是“黑盒”的過程:輸入方面,雖然Conditional-GAN之類的方法可以實現某種程度有條件地可控生成,但對於Banner設計任務來說,其輸入資訊(文案、目標風格、主體資訊)仍然過於複雜;
2. 輸出方面,GAN直接生成源資料(即影象),但非常缺乏解釋性。我們需要的是更加直觀、更有解釋性的資訊,比如素材的型別、顏色、輪廓、位置等。
在上文中有提到,Banner設計過程是素材圖層依次疊加的過程。因此,我們可以用序列生成模型來擬合這個過程[6]。在建模過程中,我們把素材視作詞彙(Word),海報視作句子(Sentence),詞彙索引視為離散化的特徵索引,素材疊加順序就可以視為句子中的詞順序[7]。
圖4是我們使用的序列生成模型,輸入主體資訊和目標風格,輸出素材特徵的序列。為了增強預測過程中多條路徑結果的多樣性,我們在監督性地訓練每個時刻的輸出之外,還引入了評估整個序列合理性的Object loss。如圖5所示,借鑑SeqGAN的思想,Object loss可以由判別器來提供[8]。
優化器
規劃器預測素材的量化特徵,為了確保最終成圖符合美學標準,需要一個後處理的過程(圖6)。我們用優化器來解決這個問題。從本質上講,這是一個優化過程。通過和設計師們的溝通,我們設計了一些基於常規設計理念和美學標準的目標函式,動作集合包括移動、縮放、亮度調整等,結合優化方法,提升Banner的視覺效果。
生成器
優化後的素材特徵序列,通過生成器來渲染成圖。如圖7所示,對於素材庫檢索不到符合某種特徵屬性的素材的情況,我們設計了影象風格遷移的方法來實現影象特徵遷移。這裡的特徵可以是顏色、形狀、紋理等低階特徵,也可以是某種語義化的視覺風格特徵,對後者來說,可以將源影象的內容Content和目標影象的風格Style在某種特徵空間(CNN中的某一層)裡做融合,實現風格遷移[9,10]。
應用場景及功能擴充
“千人千面”的精準營銷是未來營銷策略的趨勢,這對商品素材的豐富性提出了非常高的要求;從為商家賦能的角度來說,也需要為商家提供更多樣的海報版式,這也要求系統具備海報風格的快速學習能力和擴充能力。對此,在常規設計風格的研究之外,我們從以下3個方面做了一些擴充研究。
主體圖片加工
商品素材的豐富度與美學質量是精細化營銷及海報美學質量非常重要的一環。其中最核心的要求是影象分割的能力[11,12]。以全卷積網路(FCN)為基礎,如圖8所示,我們採取以下幾個在目標分割領域常見的技巧,來實現商品圖片的目標分割:
1. Encoder-Decoder結構
2. 空洞卷積
3. 多尺度特徵融合
4. Two-Stage微調網路
這種基於語義分割方法的結果,在專業設計師人工評審質量的過程中,發現主體邊緣有時會出現明顯的鋸齒感。經過分析,我們認為有以下兩個原因:
1. 語義分割模型把問題建模為一個“畫素級分類過程”,每一個畫素的類別都天然地被假設為“非此即彼”,大多數的Segmentation模型都採用Cross-Entropy作為損失函式;
2. 因此,無論是從模型結構(CNN)還是從損失函式的角度來說,分割模型會更傾向於全域性資訊從而丟棄區域性結構資訊,導致只能得到邊緣比較粗糙的分割結果。
為此,如圖8所示,我們在影象分割的輸出結果之外,結合了Image Matting方法:
1. 對分割模型的輸出結果做形態學變換,生成三值Trimap,分別表示前景區、背景區、未知區;
2. 應用常規的Matting方法,比如Bayesian、Close-Form等,以原影象和Trimap影象為輸入,輸出前景圖的Alpha通道;
3. Matting可以使前景主體的邊緣更加平滑,視覺質量更高(圖9)。
另外,基於影象美學質量評分模型,我們會優先選擇質量分高的圖片作為主體素材來源。對中低分的圖片,未來可以考慮借鑑Cycle-GAN[13]的思想,設計基於半監督和GAN的影象增強網路,美化後再經過影象分割產生主體素材。
海報模板擴充
上述的常規設計風格的學習屬於一種廣義的設計風格,需要設計師先期投入很多精力做風格劃分以及資料收集、處理。為了快速適配熱點場景,我們借鑑影象檢索技術(如圖10所示),提取素材圖片的CNN特徵及顏色特徵,使用歐式距離來度量素材相似度,這能節省人工打標籤的成本,實現基於固定模板的自動擴充及生成(海報臨摹)。
多解析度擴充
在日常工作中,設計師在設計出Banner後,往往要花費很長時間對不同展位、不同版本、不同機型做多尺寸適配(如圖11所示)。能否用演算法來協助人工提效?在素材已經確定,並且相互的位置關係近乎確定的條件下做多解析度適配,這本質上是一個優化問題,我們在上文佈局優化器的基礎上,增加元素的區域性相對位置與全域性絕對位置的拓撲關係作為目標函式。目前,系統支援在某個固定寬高比±30%範圍內的任意解析度適配,未來會進一步擴大適配範圍。
總結
目前,我們的Banner智慧設計系統為鑽展(外賣首頁廣告位)、商家店鋪裝修等業務提供穩定的設計能力;素材加工等子能力也在為外賣、閃購等商品圖片提供技術支援。後續我們會從擴充套件常規設計風格、語義相關的顏色及素材挖掘、自動解析資料、構建自評估學習閉環等方面繼續研究,進一步提高演算法的設計能力和適用性,儘可能協助設計師提高效率,降低高重複性工作的時間和經濟成本。
參考文獻
[1] A. Jahanian, J. Liu, D. Tretter, Q. Lin, E. O’Brien-Strain, S. Lee, N. Lyons, and J. P. Allebach. "Automatic Design of Colors for Magazine Covers". In Proc. IS&T/SPIE Electronic Imaging, International Society for Optics and Photonics, 2013
[2] X. Y. Yang, T. Mei, Y. Q. Xu, Y. Rui, S. P. Li. "Automatic Generation of Visual-Textual Presentation Layout". ACM Transactions on Multimedia Computing, Communications, and Applications, 2017
[3] David G. Lowe. "Distinctive Image Features from Scale-Invariant Keypoints". International journal of computer vision, 2004
[4] Alex Krizhevsky, Ilya Sutskever, Geoffrey E. Hinton. "ImageNet Classification with Deep Convolutional Neural Networks". NIPS, 2012
[5] I. Goodfellow, J. Pouget-Abadie, M. Mirza, B. Xu, D. Warde-Farley, S. Ozair, A. Courville, Y. Bengio. "Generative Adversarial Networks". NIPS, 2014
[6] K. Kawakami. "Supervised Sequence Labelling with Recurrent Neural Networks". Studies in Computational Intelligence, 2008
[7] T. Mikolov. "Statistical Language Models based on Neural Networks". 2012
[8] L. Yu, W. Zhang, J. Wang, Y. Yu. "SeqGAN: Sequence Generative Adversarial Nets with Policy Gradient". AAAI, 2017
[9] L.A. Gatys, A.S. Ecker, M. Bethge. "Image Style Transfer Using Convolutional Neural Networks". CVPR, 2016
[10] Y. Li, M.Y. Liu, X. Li, M.H. Yang, J. Kautz. "A Closed-form Solution to Photorealistic Image Stylization". ECCV, 2018
[11] J. Long, E. Shelhamer, T. Darrell. "Fully Convolutional Networks for Semantic Segmentation". CVPR, 2015
[12] L.C. Chen, Y. Zhu, G. Papandreou, F. Schroff, H. Adam. "Encoder-Decoder with Atrous Separable Convolution for Semantic Image Segmentation". ECCV, 2018
[13] J.Y. Zhu, T. Park, P. Isola, A. A. Efros. "Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks". ICCV, 2017