歐嘯天,胡偉
(北京化工大學信息科學與技術學院,北京100029)
Logo標識是代表某種特定含義的圖案,例如商業品牌商標,交通標識等。Logo在日常生活中廣泛的使用,對Logo的檢測在商品檢測、自動駕駛、自動化倉庫等方面都有重要作用。檢測自然拍攝圖像中的商業品牌Logo的位置和類別,一直是圖像內容檢測研究中的熱點問題。
Logo檢測[1]作為圖像內容檢測的一個分支,與普通圖像物體檢測的方法基本相同。傳統方法提取圖像特征,如尺度不變特征變換(SIFT)[2],方向梯度直方圖(HOG)[3]特征,并使用這些特征訓練一個N分類器;而檢測時則使用滑動窗口或其他區域提取方法生成候選區域,對候選區域分類。可形變部件模型(DPM)[4]是傳統物體檢測方法的高峰。而從2012年開始,隨著AlexNet[5]在ImageNet[6]圖像分類比賽上的突破,基于深度卷積神經網絡(CNN)[7]的方法成為了檢 測 問 題 的 主 流 方 法 ,如 R-CNN[8]、Fast-RCNN[9]、YOLO[10]等檢測框架不斷出現。文獻[11]指出深度學習的效果依賴大量輸入數據,而如何獲得高質量的訓練數據在很多時候成為了應用深度學習的瓶頸。
獲取自然場景中特定Logo檢測所需訓練數據最直接的途徑是利用搜索引擎在因特網上搜索該Logo,并獲取包含該Logo圖片然后進行人工標注。但在實際操作中,搜索引擎搜出的圖片幾乎都是Logo的設計圖,這些圖片以整個Logo圖案為主體,并使用標準外觀。但是,自然拍攝圖像中的Logo往往是處于復雜的背景中,并且含有光照、噪聲等影響。因此通過搜索引擎獲取的Logo圖片并不適合作為訓練數據集。
針對深度學習的數據獲取困難的問題,有一些研究工作從合成數據[12-14]的方向進行探索,同樣針對訓練數據難以真實獲取的問題。基于Logo檢測的特點(Logo圖案基本都分布在平面上且畫面內容穩定;真實訓練數據獲取和標注工作量大),文中提出了一個合成Logo標識數據集的完整框架,利用計算機自動生成Logo檢測所需要的訓練圖片集以及對應的標注數據。
文中方法生成訓練樣本的基本思路是:將原始輸入的標準Logo模版圖案進行各種幾何和紋理變換,然后合成到背景圖像上。方法的具體計算過程分3步:
1)Logo模版處理。對Logo模版進行各種幾何和光照的處理;
2)背景圖像處理。在背景圖像上選擇合適的區域并進行其他操作;
3)整體合成。將處理后的Logo模版和背景圖像進行合成。
圖1使用3個示例表現本文方法的完整處理流程。以左圖為例,首先對輸入的ESSO標準Logo模版進行透視變換、擾動等處理;同時在背景圖像集合中隨機選擇一張圖像作為當前背景圖像,進行區域選擇和添加色塊等操作;最后將兩者進行融合,并添加一些光照處理以形成最終的合成圖像。下面本文將詳細介紹這3個處理過程。

圖1 Logo樣本的生成流程示例
待檢測Logo均需要標準的圖案輸入系統。有些Logo只需形狀信息(如Adidas,其內部可填充各種顏色和紋理),那么就僅需表示Logo區域信息蒙版位圖;有些Logo圖案本身紋理信息非常重要(如星巴克),除了蒙版位圖外還需要一個圖案位圖,這個位圖和蒙版尺寸相同,形狀匹配(此時蒙版實際上是對圖案的Logo部分作摳圖的結果)。
為模擬真實圖像中的效果,本文對模版進行各種幾何和色彩處理,具體方法包括;
1)透視變換。自然場景中因為視角變換,Logo圖案會有相應的透視效果。本文方法即提供隨機產生視點和視線方向,計算平面Logo圖案對應的透視變換效果,以模擬真實場景中的透視效果。
2)擾動。本文方法可以對Logo圖像的每個像素點,取其鄰域內的隨機一點顏色值作為該點的新顏色值,以使Logo的紋理產生小幅變化形成擾動,模擬真實場景中logo的輕微、不規則的形變,避免模型對Logo的細節特征過擬合。
3)紋理疊加。部分只關注輪廓的Logo圖案在真實場景中會填充不同的紋理內容,為模擬該效果,本文方法使用紋理集合中預先準備好的紋理圖像,與Logo圖像做線性融合,為生成的Logo樣本增加更豐富的紋理效果。
4)色彩調整。自然場景中Logo在不同顏色的環境光照射下色彩會發生變化。為了模擬該效果,本文方法可以隨機選取顏色,與Logo進行融合。此外,在現實場景中,Logo與背景會有一定對比度,為了在合成圖像中體現這種對比度,我們使用下述方法對Logo的亮度進行調整:
1)計算Logo的平均亮度Ll和所在背景區域(該區域在背景圖像處理中計算)的平均亮度Lb(使用Lab色彩空間,亮度范圍為[0,100])。本文方法主要調整Logo的亮度以保證Logo與背景的區分度。
2)計算Lc作為Logo亮度的參考值是一個隨機偏移量

然后調整Logo圖像上的每一點的亮度值Lp使得Logo的平均亮度與背景有足夠反差。

5)噪聲。真實場景中Logo表面會有污痕,同時照片成像時也可能產生噪點。本文方法通過對Logo圖像逐像素添加高斯噪聲以模擬此類效果。在實驗中我們發現噪點過多會降低Logo檢測模型的準確率,因此對尺寸較小的Logo,所添加的噪點強度也會相應減小。同時,我們會對圖像添加一些模糊處理以更好地模擬污痕效果。
為更好模擬真實場景,我們從MIT Places數據集[15]中選擇了一些常見的室內和室外場景圖片用作背景圖像數據集。對背景圖像的處理則包含以下內容:
1)區域選擇。實際場景中的Logo圖案可能分布在背景圖像的不同位置,其尺寸也會發生變化。為模擬該效果,我們需要對Logo在背景圖像中的位置和尺寸進行設定。但簡單的使用隨機分布會有一個問題:大多數Logo在自然場景中處于平緩(低頻)區域,而隨機選取位置很容易把Logo繪制到復雜紋理(高頻)區域。如果生成的Logo分布在高頻區域,Logo圖案本身的特征反而會被背景干擾,難以學習,影響最終模型的檢測效果。
為了選取盡可能合適的區域和尺寸,避免Logo落入復雜背景區域,我們只使用雜亂程度較低的區域。具體而言,算法從圖像中隨機選取若干候選區域,計算每個區域的三階導數,用該區域的平均三階導數表示其雜亂程度,然后在平均三階導數最小的區域填入Logo圖像。具體計算方法如下:
假設圖像為I,?是圖像卷積運算,x、y分別表示水平和垂直兩個方向,則圖像在x和y方向上的導數為:

則圖像的一階導數為:

將M1作為I輸入進行求導運算得到M2,并再次運算得到圖像I的三階導數M3。那么對于隨機選擇的第i個區域Ω,其紋理復雜度為Pi為

選擇雜亂程度較小的區域作為Logo的輸出位置,可以使得Logo的位置和尺寸分布得到控制,減少了Logo被復雜背景干擾的概率。
2)添加色塊。很多時候自然場景中的Logo不僅處在平坦區域,而且Logo所在背景與周圍有明顯的分界,例如交通標識通常在路牌上、酒標通常在酒瓶上。這些背景區域的輪廓可能會影響模型對Logo的定位。我們使用隨機繪制多邊形或橢圓形色塊的方法模擬此類效果,提高Logo檢測的準確率。
在處理完Logo標準模版圖像,并選好背景圖像和融合區域后,我們需要將兩者進行融合處理:根據Logo圖像和選取的背景圖像和區域,利用Logo的Mask進行線性融合。為了更加近似真實場景,該過程中本文方法還將進行如下處理:
1)模擬光照。可隨機為生成的Logo增加高光、陰影等效果。因為自然場景中的光照會影響到Logo和附近區域,所以該處理過程需要在Logo繪制到背景之后進行。我們通過增加圖像像素點的亮度模擬光照,支持兩種形狀的高光效果:點狀高光和帶狀高光。
2)JPEG壓縮。真實場景的圖像在采集和儲存時經常會被壓縮,導致圖像質量下降。我們在生成訓練圖片時加入了JPEG壓縮的效果,并可根據參數隨機調整輸出壓縮后的圖像。
總之,通過標準Logo模版處理、背景圖像處理和融合處理,利用隨機性產生每個處理過程中的各個參數,就能夠由計算機合成大量模擬的Logo圖像,并且得到相應的檢測標注數據。圖2給出了由我們方法生成的部分Logo檢測訓練樣本圖像。
為了驗證合成Logo檢測訓練數據集的實際應用效果,我們在FlickrLogos-32[16]數據集上進行測試實驗。該數據集收集了包含32類Logo圖案,共2 240張真實拍攝的圖片。該數據集每類Logo對應70張圖片,每張圖片中含有至少一個Logo位置,且每張圖片只包含該類Logo。在原始數據集中,每類70張圖像包含10張訓練樣本,30驗證樣本和30測試樣本,在實驗中我們使用測試集進行測試。

圖2 更多合成訓練樣本的例子
我們使用本文提出方法生成每類400張圖像,以及FlickrLogos本身的訓練驗證數據,共組合提供6組訓練樣本:1)使用FlickrLogos訓練集(每類10張)作為訓練數據;2)從FlickrLogos訓練和驗證集中隨機選20張作為訓練數據;3)從FlickrLogos訓練驗證集中隨機選30張作為訓練數據;4)使用FlickrLogos完整的訓練驗證集(每類40張)作為訓練數據;5)使用本文方法生成的每類400張圖像作為訓練數據;(6)使用包含本文方法生成數據和FlickrLogos訓練驗證集,每類總共100張作為訓練數據。
我們使用了Faster RCNN[17]分別訓練上述6組訓練數據,并在FlickrLogos測試集上檢驗訓練效果,實驗結果如表1所示。

表1 使用不同訓練集得到的模型檢測結果對比

表2 幾種典型logo分析
從表1的結果可以發現使用人工標注的真實圖片效果較好,但使用自動生成的訓練數據依然取得了接近的準確率。雖然自動生成數據樣本本身與自然圖像有一定差距,但由于可以產生更大的數據量,保證了訓練樣本的多樣性,彌補了數據質量上的不足。而且將真實數據與生成數據混合,則準確率進一步提升至71%,也說明了機器生成訓練數據確實有增加樣本多樣性的優勢。
實驗中我們發現對于有些類別,使用自動生成的數據訓練效果較好,而對于另一些類別,效果則較差。我們分析了4個典型類別的準確率(表2)和相應Logo的真實圖片(圖3、圖4),發現Apple和Shell這些效果較好的Logo圖案相對比較簡單,變化不復雜。在這種情況下,使用機器生成訓練樣本保持了比較好的樣本豐富性。而對于類似NVIDIA這種Logo(見圖4)本身就存在多種復雜變化(顏色組合有黑+綠、白+綠、純綠等多種);另一方面,真實場景中,NVIDIA的Logo下方往往有“NVIDIA”文字,雖然這個文字本身不在Logo的標注中,但作為一個特征,我們生成的樣本中缺少這種情況。而從圖5中可見,類似CHIMAY這樣的Logo常常有曲面的變形,而我們的樣本生成程序缺少這種效果。

圖3 Apple和Shell的真實圖片

圖4 NVIDIA(a)和CHIMAY(b)的真實圖片

圖5 背景區塊對logo檢測時定位的影響

表3 不同繪制效果對準確率的影響
綜上所述,我們的Logo檢測方法保證了樣本本身的豐富和多樣性,非常適合部分Logo的檢測訓練。但是對于一些存在更復雜的變化(曲面、柔性變形等)的Logo,鑒于本文方法模擬的效果有限,實際檢測效果還有待提高。
本文方法利用計算機生成與真實自然圖像相似的合成圖像。自然圖像中Logo的變化是非常復雜的,模擬的近似程度很大程度會影響實際效果。表3展示了添加處理方法對準確率的影響(注意表中由上到下是增量式的,即高序號的組包含了低序號組的變換特性;基準只包含透視變換和紋理色彩調整)。很顯然,樣本生成器加入的模擬效果越多,訓練樣本越豐富,得到的模型準確率就越高。
從表中可知候選區域篩選對準確率影響顯著,原因在于其避免了生成的logo被復雜的環境干擾,影響網絡學習到正確的特征。光照的裁剪對結果影響也比較大,應該是局部遮擋提升了網絡的健壯性。背景區塊對準確率的影響雖然不大,但實際應用中顯示其提升了logo的準確定位能力,加入背景區塊后,logo與背景反差更大,學習坐標回歸更容易。圖5以ESSO為例,上圖是未使用背景區塊的檢測效果,下圖是使用了背景區塊后的檢測效果;深色是標注框,淺色表示正確檢測。可以發現,雖然2張圖中的都檢測到了目標logo,但下方的檢測框要更準確。
針對自然場景圖像中的Logo檢測,本文提出了一種用于深度學習網絡模型訓練的樣本生成方法,能夠實現快速靈活地生成大量訓練樣本。實驗證明基于本方法生成的訓練數據,檢測準確率基本達到了使用人工標注訓練數據的效果。考慮到實際中Logo的種類遠遠超過32個類別,而獲得高質量的真實場景中的Logo圖像以及標注數據非常困難,依賴人工收集數據并標注的成本非常高昂,本文方法具有較高的實用價值。
本文的方法依然存在不足之處,主要在于尚不能模擬很多真實場景中Logo復雜的變換效果,例如曲面變形、柔性變形、圖案本身變體多、背景與Logo的關聯度等。為解決這些問題,未來可以通過增加模擬效果的種類(曲面變形等),以及可考慮使用對抗生成網絡(GAN)[18-20]提高生成樣本的效果。
此外,對類似的圖像內容檢測也可以使用合成訓練樣本的思路。例如漢字就有與Logo相似的特點,其形狀比較固定,而且漢字數目較多,常用漢字有超過2 000個,加上常見字體有幾十種,顯然從真實場景中收集到漢字的標注數據代價非常高,而合成訓練樣本則相對容易很多。我們嘗試使用本文方法生成了常用500個漢字的訓練數據并進行訓練,達到了可用的水平。由此可見本文的方法具有一定通用性,在其他檢測領域也有潛在的應用價值。
參考文獻:
[1]張瑞.基于卷積神經網絡的Logo檢測與識別研究[D].杭州:浙江大學,2015.
[2]Lowe D G.Object recognition from local scaleinvariant features[C]//international conference on computer vision,1999:1150-1157.
[3]Dalal N,Triggs B.Histograms of oriented gradients for human detection[C]//computer vision and pattern recognition,2005:886-893.
[4]Felzenszwalb P,Mcallester D,Ramanan D.A discriminatively trained,multiscale,deformable part model[C]//IEEE Computer Society Conference on Computer Vision and Pattern Recognition.DBLP,2008:1-8.
[5]Krizhevsky A,Sutskever I,Hinton G E.ImageNet classification with deep convolutional neural networks[J]. Advances in neural information processing systems,2012,25(2):1097-1105.
[6]Russakovsky O,Deng J,Su H,et al.ImageNet large scale visual recognition challenge[J].International Journal of Computer Vision,2015,115(3):211-252.
[7]Lecun Y,Bottou L,Bengio Y,et al.Gradientbased learning applied to document recognition[J].Proceedings of the IEEE,1998,86(11):2278-2324.
[8]Girshick R,Donahue J,Darrell T,et al.Rich feature hierarchies for accurate object detection and semantic segmentation[C].computer vision and pattern recognition,2014:580-587.
[9]Girshick R.Fast R-CNN[C].international conference on computer vision,2015:1440-1448.
[10]Redmon J,Divvala S K,Girshick R,et al.You Only Look Once:Unified,real-time object detection[C]//computer vision and pattern recognition,2015:779-788.
[11]LeCun Y,Bengio Y,Hinton G E.Deep learning[J].Nature 521.7553(2015):436-444.
[12]Gupta A,Vedaldi A,Zisserman A,et al.Synthetic data for text localisation in natural images[C]//computer vision and pattern recognition,2016:2315-2324.
[13]Gaidon A,Wang Q,Cabon Y,et al.Virtual worlds as proxy for multi-object tracking analysis[C]//computer vision and pattern recognition,2016:4340-4349.
[14]Richter S R,Vineet V,Roth S,et al.Playing for data:ground truth from computer games[C]//europeanconferenceoncomputervision,2016:102-118.
[15]Zhou B,Garcia A L,Xiao J,et al.Learning Deep features for scene recognition using places database[J].Advances in Neural Information Processing Systems,2014,1:487-495.
[16]Romberg S,Pueyo L G,Lienhart R,et al.Scalable logo recognition in real-world images[C]//International Conference on Multimedia Retrieval,ICMR 2011,Trento,Italy,April.DBLP,2011:25.
[17]Ren S,He K,Girshick R,et al.Faster R-CNN:towards real-time object detection with region proposal networks[C]//neural information processing systems,2015:91-99.
[18]Goodfellow I J,Pougetabadie J,Mirza M,et al.Generative Adversarial Networks[J].Advances in Neural Information Processing Systems,2014,3:2672-2680.
[19]嚴明,李剛,楊少華,等.基于CMOS圖像傳感器的高實時遠程圖像采集系統設計[J].現代應用物理,2016(4):61-66.
[20]李雪,朱欣娟.二維人臉表情仿真技術研究[J].紡織高校基礎科學學報,2014(3):385-391.