王博
摘要:本文探討了物體檢測(cè)模型在一些領(lǐng)域的應(yīng)用困難,比如基于熱像圖的物體檢測(cè),基于x射線圖的物體檢測(cè),由于這類(lèi)圖像信息量低,傳統(tǒng)物體檢測(cè)模型難以應(yīng)用。本文提出了一種統(tǒng)一化的解決方案,利用pix2pix模型將信息含量較低的圖片轉(zhuǎn)化為常規(guī)圖片,再利用SSD模型偵測(cè)圖像中的物體。通過(guò)實(shí)驗(yàn),驗(yàn)證了算法的可行性。
Abstract: This paper discusses the application difficulties of object detection models in some fields, such as object detection based on thermal image, object detection based on x-ray image. Due to the low information volume of such images, traditional object detection models are difficult to apply. This paper proposes a unified solution that uses the pix2pix model to convert images with lower information content into regular images, and then uses SSD models to detect objects in the image. The feasibility of the algorithm is verified by experiments.
關(guān)鍵詞:深度學(xué)習(xí);物體檢測(cè);pix2pix;SSD
Key words: deep learning;object detection;pix2pix;SSD
中圖分類(lèi)號(hào):TP391.4? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 文章編號(hào):1006-4311(2019)24-0256-04
1? 緒論
1.1 引言
現(xiàn)在圖像中的物體檢測(cè)技術(shù)在日常生活和一些專(zhuān)業(yè)領(lǐng)域中應(yīng)用的非常廣泛,比如人臉識(shí)別系統(tǒng),醫(yī)學(xué)圖像分析等。智能的物體檢測(cè)技術(shù)給人們的生活和工作帶來(lái)了非常大的便利。本文經(jīng)過(guò)調(diào)查發(fā)現(xiàn),還有許多場(chǎng)景有應(yīng)用物體檢測(cè)技術(shù)的需求。比如,在進(jìn)入車(chē)站或者機(jī)場(chǎng)時(shí)都要經(jīng)過(guò)安檢。乘客的行李通過(guò)安檢儀,安檢儀用x射線掃描行李,x射線圖像在屏幕上顯示,安檢員通過(guò)屏幕觀察是否有違禁品。如果能有一種物體檢測(cè)技術(shù)自動(dòng)的在x射線圖中標(biāo)注出物體的話,那將大大提高安檢的效率。還有,在發(fā)生火災(zāi)或者其他自然災(zāi)害時(shí),救援人員會(huì)用到紅外熱像儀去探測(cè)災(zāi)變現(xiàn)場(chǎng)中的物體。與安檢的場(chǎng)景類(lèi)似,只不過(guò)這里需要分析的圖像是熱像圖。
那么上面遇到的問(wèn)題該怎么解決呢?通常的做法是這樣,以熱像圖為例,需要準(zhǔn)備大量的熱像圖,并在上面標(biāo)注出現(xiàn)的物體,然后用這些標(biāo)注好的圖像去訓(xùn)練一個(gè)物體檢測(cè)模型。這里最大的問(wèn)題是標(biāo)注大量圖片是不可能完成的任務(wù)。那么有沒(méi)有開(kāi)源的別人訓(xùn)練好的模型可以直接用呢?答案是有的。但是這些開(kāi)源模型都是用PASCAL VOC、ImageNet、COCO等數(shù)據(jù)集訓(xùn)練的,這些數(shù)據(jù)集以日常圖片為主(如圖1),因此用它們?nèi)z測(cè)特殊圖像時(shí)效果不好。
于是,問(wèn)題似乎卡在了這里,從新標(biāo)注圖片是不可能完成的任務(wù),開(kāi)源的已訓(xùn)練好的模型又不能直接用在熱像圖和x射線圖這類(lèi)圖片上(如圖2和圖3)。
1.2 解決方案
圖1和圖3這種的應(yīng)用場(chǎng)景中出現(xiàn)的圖片本文統(tǒng)一稱為低信息量圖片,把圖1這種開(kāi)源物體檢測(cè)模型接受的圖片稱為高信息量圖片。既然開(kāi)源物體檢測(cè)模型只能接受高信息量圖片,那么很自然的想到,低信息量圖片是不是可以轉(zhuǎn)化為高信息量圖片呢?答案是肯定的??梢钥纯磮D3,人可以從圖片里的物體輪廓大致猜測(cè)出物體本來(lái)的樣子。那么有沒(méi)有一種人工智能技術(shù)模仿出人的這種能力呢?答案也是肯定的。經(jīng)過(guò)調(diào)查,條件生成對(duì)抗網(wǎng)絡(luò)(簡(jiǎn)稱C-GAN)可以做到[1]。C-GAN可以做到的事情如圖4所示。
input是C-GAN的輸入,output是C-GAN的輸出,target是input對(duì)應(yīng)的真實(shí)圖像。
于是本文的解決方案就是,把低信息量的圖片先輸入C-GAN,用C-GAN生成高信息量圖片,再把生成的高信息量圖片送入目標(biāo)檢測(cè)網(wǎng)絡(luò)里面。這樣,整個(gè)過(guò)程只需要訓(xùn)練一個(gè)條件生成對(duì)抗網(wǎng)絡(luò),不需要從新訓(xùn)練一個(gè)目標(biāo)檢測(cè)網(wǎng)絡(luò)。這樣,只需要收集類(lèi)似圖4中input和target對(duì)應(yīng)的樣本就可以了,這種數(shù)據(jù)的收集難度要遠(yuǎn)遠(yuǎn)的小于在圖片上標(biāo)注物體。為了驗(yàn)證算法的可行性,本文實(shí)驗(yàn)選取的是開(kāi)源的cityscape數(shù)據(jù)集。
2? 模型概述
2.1 條件生成性對(duì)抗網(wǎng)絡(luò)(谷歌pix2pix模型)
條件生成性對(duì)抗網(wǎng)絡(luò),即C-GAN。顧名思義,它是一種生成性的神經(jīng)網(wǎng)絡(luò)模型。如圖5中所示,一個(gè)條件生成網(wǎng)絡(luò)稱為G,可以接受一個(gè)物體的輪廓,描繪出輪廓對(duì)應(yīng)的物體圖片。如何訓(xùn)練G呢?用“對(duì)抗”的思想。訓(xùn)練G的同時(shí),會(huì)訓(xùn)練一個(gè)鑒別網(wǎng)絡(luò)稱為D。D可以分辨出物體的圖片是真實(shí)的(真實(shí)的訓(xùn)練樣本),還是虛構(gòu)的(G所生成的)。通過(guò)設(shè)計(jì)損失函數(shù),讓G和D互相對(duì)抗提升,最終訓(xùn)練出表現(xiàn)比較好的生成網(wǎng)絡(luò)G[2]。
2.2 物體檢測(cè)模型
目標(biāo)檢測(cè)的任務(wù)是找出圖像中所有感興趣的目標(biāo)(物體),確定它們的位置和大小,是機(jī)器視覺(jué)領(lǐng)域的核心問(wèn)題之一。由于各類(lèi)物體有不同的外觀、形狀、姿態(tài),加上成像時(shí)光照,遮擋等因素的干擾,目標(biāo)檢測(cè)一直是機(jī)器視覺(jué)領(lǐng)域最具有挑戰(zhàn)性的問(wèn)題。
2.2.1 基于候選框的目標(biāo)檢測(cè)算法
基于候選框的目標(biāo)檢測(cè)算法把目標(biāo)檢測(cè)過(guò)程分為兩個(gè)子過(guò)程,候選框選擇和圖片分類(lèi)[3]。基于這個(gè)思路,研究者主要從以下兩個(gè)方面提升檢測(cè)效率:不斷探索和優(yōu)化候選框選擇算法,加快檢測(cè)速度;加深CNN網(wǎng)絡(luò),獲得更高的檢測(cè)準(zhǔn)確率。但是這類(lèi)算法最大的缺陷是無(wú)法達(dá)到實(shí)時(shí)性的要求。
2.2.2 基于回歸位置的目標(biāo)檢測(cè)算法
制約基于候選框的目標(biāo)檢測(cè)算法的速度提升的關(guān)鍵是將目標(biāo)檢測(cè)問(wèn)題轉(zhuǎn)化成了對(duì)圖像局部區(qū)域的分類(lèi)問(wèn)題,不能充分利用局部對(duì)象在整個(gè)圖片中的上下文信息。對(duì)此,研究者們又提出了基于回歸位置的目標(biāo)檢測(cè)算法,如YOLO[5],SSD[6],DSSD[7]等?;诨貧w位置的目標(biāo)檢測(cè)算法只使用一個(gè)卷積網(wǎng)絡(luò)便完成了在整個(gè)圖像上對(duì)檢測(cè)框的回歸和類(lèi)別概率的預(yù)測(cè),網(wǎng)絡(luò)結(jié)構(gòu)簡(jiǎn)單,實(shí)現(xiàn)了端到端的優(yōu)化,且使檢測(cè)速度有很大的提升,能實(shí)現(xiàn)實(shí)時(shí)處理。
總結(jié):通過(guò)對(duì)比現(xiàn)今開(kāi)源的目標(biāo)檢測(cè)算法,如表1[4],綜合考慮各個(gè)算法的優(yōu)缺點(diǎn),考慮到如果想要將本文的算法用在視頻中的物體檢測(cè)的話,實(shí)時(shí)性是一個(gè)很重要的方面,所以本文的實(shí)驗(yàn)選取開(kāi)源的SSD算法作為的目標(biāo)檢測(cè)算法。
3? 實(shí)驗(yàn)
3.1 數(shù)據(jù)集
本文訓(xùn)練圖像轉(zhuǎn)換模型是用的谷歌開(kāi)源項(xiàng)目pix2pix。本項(xiàng)目中有幾個(gè)預(yù)設(shè)的數(shù)據(jù)集,本文選取的是其中的cityscape數(shù)據(jù)集。該數(shù)據(jù)集包含兩部分,訓(xùn)練集2975張圖片,每張圖片分為左右兩部分,一半是低信息量圖片,另一半是其對(duì)應(yīng)的正常圖片。驗(yàn)證集500張圖片。
3.2 實(shí)驗(yàn)流程
第一步,用cityscapes數(shù)據(jù)集訓(xùn)練出一個(gè)圖像轉(zhuǎn)換模型C-GAN。如圖6所示。
第二步,如圖7,將C-GAN和目標(biāo)檢測(cè)網(wǎng)絡(luò)連接起來(lái),用測(cè)試集測(cè)試效果。測(cè)試集圖片包括兩部分,一部分是input,即低信息量的圖片,第二部分是其對(duì)應(yīng)的真實(shí)圖片ground truth。把input從SSD端輸入,得到結(jié)果的第一列,把input從C-GAN端輸入得到結(jié)果的第二列,把ground truth從SSD端輸入得到結(jié)果的第三列。
4? 實(shí)驗(yàn)結(jié)果
因?yàn)闇y(cè)試圖片太多,限于篇幅的關(guān)系,選取四組測(cè)試結(jié)果展示,如圖8。其中每一列的意義與3.1第二步中敘述的一致。
從實(shí)驗(yàn)結(jié)果來(lái)看,本文的思路,即把低信息量的圖片通過(guò)轉(zhuǎn)換,拿轉(zhuǎn)換后的圖片進(jìn)行目標(biāo)檢測(cè),總體上是可行的。在一些場(chǎng)景中,轉(zhuǎn)換來(lái)的圖片表現(xiàn)與真實(shí)圖片十分相近,甚至在一些場(chǎng)景中(第三組),轉(zhuǎn)換來(lái)的圖片表現(xiàn)還更好一點(diǎn)。但是本文也發(fā)現(xiàn)一些問(wèn)題,比如圖片中一些遠(yuǎn)處的物體、行人、汽車(chē)等,有可能在轉(zhuǎn)換來(lái)的圖片中看不到。這可能是因?yàn)槭芟抻趯?shí)驗(yàn)條件,在訓(xùn)練圖片轉(zhuǎn)換網(wǎng)絡(luò)時(shí)訓(xùn)練集中圖片比較少,而且訓(xùn)練的輪數(shù)也比較少。如果用更好的機(jī)器,更多的圖片(現(xiàn)在網(wǎng)絡(luò)上cityscapes的公開(kāi)數(shù)據(jù)集已經(jīng)非常多了),更多的訓(xùn)練輪數(shù),那么圖片轉(zhuǎn)換網(wǎng)絡(luò)會(huì)更加的精確。還有,在一些場(chǎng)景中很明顯的物體,目標(biāo)檢測(cè)網(wǎng)絡(luò)卻檢測(cè)不到,這有待于目標(biāo)檢測(cè)領(lǐng)域的進(jìn)步。
5? 應(yīng)用討論
算法應(yīng)用的抽象過(guò)程如圖9所示,把訓(xùn)練好的C-GAN和開(kāi)源的目標(biāo)檢測(cè)網(wǎng)絡(luò)SSD封裝成一個(gè)模型,輸入熱成像圖或者x射線圖,輸出標(biāo)注好的圖片。
本研究提出的這一套算法,利用深度學(xué)習(xí)的方法解決了在圖像信息不完整的情況下的目標(biāo)檢測(cè)問(wèn)題。本文設(shè)想了如下幾個(gè)應(yīng)用場(chǎng)景:
①火災(zāi):在火災(zāi)的場(chǎng)景中,人們使用紅外探測(cè)器探測(cè)失火地點(diǎn)中的人和其他物體。但是紅外圖像信息量低,容易照成人們誤判??梢园堰@套算法嵌入到裝有紅外探測(cè)器的設(shè)備中,比如無(wú)人機(jī)。這樣通過(guò)算法輸出高質(zhì)量并標(biāo)出物體的圖像,可以更加準(zhǔn)確的判斷出火災(zāi)中物體的位置,為救援提供更加準(zhǔn)確的信息。
②安檢:現(xiàn)在不管是地鐵、高鐵或是機(jī)場(chǎng)中,安檢一般都是利用x射線設(shè)備。但是x射線圖只有物體的輪廓,可疑物品需要安檢員通過(guò)x射線掃描圖肉眼判斷。當(dāng)人流量特別大時(shí),這種安檢方式不僅效率低,而且漏檢的概率比較大。如果利用本文的算法,只需提供一些物體和其對(duì)應(yīng)的x射線圖作為數(shù)據(jù),然后對(duì)算法進(jìn)行微調(diào)后,就能將其用于安檢場(chǎng)景。這不僅降低了安檢員的工作量,而且提高了安檢效率。
③自動(dòng)駕駛:自動(dòng)駕駛汽車(chē)通過(guò)攝像頭和雷達(dá)發(fā)現(xiàn)周?chē)那闆r。但是在夜晚或者氣候惡劣的情況下,攝像頭能拍到的畫(huà)面就有限,這樣容易照成計(jì)算機(jī)判斷不準(zhǔn)而導(dǎo)致車(chē)禍。如果將本文的算法嵌入車(chē)載計(jì)算機(jī)系統(tǒng),在處理攝像頭拍到的畫(huà)面時(shí),可以利用的算法進(jìn)行物體檢測(cè)。這樣能進(jìn)一步提高自動(dòng)駕駛汽車(chē)在夜晚或惡劣天氣情況下的安全系數(shù)。
6? 總結(jié)與展望
本文通過(guò)分析引言中提到的應(yīng)用場(chǎng)景,指出在這些場(chǎng)景中的目標(biāo)檢測(cè)是非常困難的問(wèn)題。因?yàn)槭芟抻谝褬?biāo)注數(shù)據(jù)量的問(wèn)題,現(xiàn)有的目標(biāo)檢測(cè)工具在這些場(chǎng)景中表現(xiàn)都很差。于是本文提出一套算法,利用深度學(xué)習(xí)的方法將低信息量的圖像轉(zhuǎn)換成適用于目標(biāo)檢測(cè)工具的圖像。然后,通過(guò)實(shí)驗(yàn),發(fā)現(xiàn)這套算法是可行的:通過(guò)深度學(xué)習(xí)方法生成的模擬圖像,不僅能在上面標(biāo)注出物體,而且在許多實(shí)驗(yàn)結(jié)果中,它的表現(xiàn)和正常圖像非常接近。但是,本文也發(fā)現(xiàn)一些問(wèn)題。首先,圖像轉(zhuǎn)換網(wǎng)絡(luò)表現(xiàn)還有非常大的進(jìn)步空間,這有待于實(shí)驗(yàn)設(shè)備與數(shù)據(jù)集的進(jìn)步。此外,本文發(fā)現(xiàn)現(xiàn)在最優(yōu)的目標(biāo)檢測(cè)網(wǎng)絡(luò)依然需要更進(jìn)一步的發(fā)展。
展望:本文的研究現(xiàn)在只是第一步,它僅僅驗(yàn)證了的算法的可行性。后面還可以有許多實(shí)驗(yàn)可以做,比如:
①如果把算法應(yīng)用于視頻中目標(biāo)檢測(cè)的任務(wù),就需要研究整個(gè)算法處理一張圖片的時(shí)間。然后結(jié)合具體的應(yīng)用需求,調(diào)整算法,使其滿足視頻的幀率要求。
②實(shí)驗(yàn)中的圖像轉(zhuǎn)換網(wǎng)絡(luò)使用的是谷歌的pix2pix模型,它本身的網(wǎng)絡(luò)結(jié)構(gòu)就有待于更多的調(diào)整和實(shí)驗(yàn)。
③訓(xùn)練圖像轉(zhuǎn)換網(wǎng)絡(luò)(C-GAN)利用的數(shù)據(jù)是街景和其“對(duì)應(yīng)”的低信息量圖片。現(xiàn)在已經(jīng)有一種叫cycle-GAN[8]的網(wǎng)絡(luò)不需要這種完全“對(duì)應(yīng)”的數(shù)據(jù)集,就能達(dá)到和C-GAN相似的效果。但是總體來(lái)說(shuō),cycle-GAN的效果還是低于C-GAN。但是如果進(jìn)一步研究cycle-GAN,使其比肩甚至超過(guò)C-GAN的話,就能更進(jìn)一步降低收集數(shù)據(jù)集的難度。
參考文獻(xiàn):
[1][2]Phillip Isola, Jun Yan Zhu, Tinghui Zhou, et al. Image-to-Image Translation with Conditional Adversarial Networks. arXiv preprint arXiv: 1611.07004v1, 2016.
[3][4]王慧玲,綦小龍,武港山.基于深度卷積神經(jīng)網(wǎng)絡(luò)的目標(biāo)檢測(cè)技術(shù)的研究進(jìn)展[J].計(jì)算機(jī)科學(xué),2018,45(9):11-19.
[5]Redmon J, Divvala S, Girshick R. et al. You Only Look Once: Unified, Real-Time Object Detection[C]. Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. New York: IEEE Press, 2016: 779-788.
[6]Liu W, Anguelov D, Erhan D, et al. SSD: Single shot multibox detector[C]. European conference on computer vision.Cham, Springer, 2016: 21-37.
[7]Fu C Y, Liu W, Ranga A, et al. DSSD: Deconvolutional Single Shot Detector[C]. Proceedings of IEEE Conference on Computer Vision and Pattern Recognition. New York: IEEE Press, 2017: 2301-2312.
[8]Jun Yan Zhu, Taesung Park, Phillip Isola, et al. Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks. arXiv preprint arXiv: 1703.10593v1, 2017.