樊雪倩,陳春雨
哈爾濱工程大學(xué) 信息與通信工程學(xué)院,黑龍江 哈爾濱 150001
在大型商場(chǎng)中,經(jīng)常可以看到帶有液晶顯示器的廣告牌,但是這些廣告牌大多只能按照預(yù)設(shè)內(nèi)容進(jìn)行循環(huán)播放,無(wú)法針對(duì)特定群體進(jìn)行有針對(duì)性的定向廣告投放。因此,要在廣告費(fèi)用不變的情況下,讓廣告的宣傳效果達(dá)到最好,是一個(gè)很有研究意義的問(wèn)題。人工神經(jīng)網(wǎng)絡(luò)是對(duì)動(dòng)物神經(jīng)網(wǎng)絡(luò)的簡(jiǎn)單模仿,依靠系統(tǒng)的復(fù)雜程度,通過(guò)調(diào)節(jié)內(nèi)部節(jié)點(diǎn)之間的相互連接關(guān)系,從而達(dá)到處理信息的目的,被廣泛應(yīng)用于圖像識(shí)別、計(jì)算機(jī)視覺(jué)等領(lǐng)域,取得了許多突出的成果[1]。近年來(lái),深度學(xué)習(xí)技術(shù)的蓬勃發(fā)展使計(jì)算機(jī)視覺(jué)技術(shù)取得了極大的突破,運(yùn)用深度學(xué)習(xí)技術(shù),計(jì)算機(jī)可以從圖像以及視頻中識(shí)別各種物體,并給出相應(yīng)的位置、置信度等信息。本文為改善傳統(tǒng)液晶廣告牌針對(duì)不同人群推送相同廣告的問(wèn)題,設(shè)計(jì)并實(shí)現(xiàn)了一種與深度學(xué)習(xí)目標(biāo)檢測(cè)算法相結(jié)合的智能廣告牌。根據(jù)正在觀(guān)看廣告牌的行人的性別年齡和服飾信息,返回針對(duì)不同特點(diǎn)人群的廣告,提升廣告推送的效果,以更少的廣告費(fèi)完成更好的宣傳效果。
基于深度學(xué)習(xí)的智能廣告牌的核心是目標(biāo)檢測(cè)技術(shù)[2]。隨著深度學(xué)習(xí)的迅速發(fā)展,硬件計(jì)算能力不斷增強(qiáng),相應(yīng)的數(shù)據(jù)集不斷構(gòu)建,深度神經(jīng)網(wǎng)絡(luò)在不同的視覺(jué)任務(wù)中取得了巨大的成功,深度網(wǎng)絡(luò)模型也在目標(biāo)檢測(cè)領(lǐng)域得到了廣泛的應(yīng)用[3]。經(jīng)過(guò)數(shù)年的研究,Girshick 等[4-5]在2013 年提出了將深度學(xué)習(xí)應(yīng)用到目標(biāo)檢測(cè)上的RCNN 檢測(cè)算法,成為后續(xù)目標(biāo)檢測(cè)技術(shù)發(fā)展的基礎(chǔ),也為從事深度學(xué)習(xí)研究的科研人員提供了新思路。2016 年,R-CNN 系列的最高代表作Faster R-CNN 實(shí)現(xiàn)了端到端的檢測(cè),達(dá)到了最優(yōu)的檢測(cè)精度[6]。同樣是在2016 年,YOLO 目標(biāo)檢測(cè)算法和SSD 目標(biāo)檢測(cè)算法相繼被提出,YOLO 和SSD轉(zhuǎn)向回歸問(wèn)題的研究,一步實(shí)現(xiàn)分類(lèi)和目標(biāo)定位,達(dá)到了端到端的實(shí)時(shí)檢測(cè),速度上較RCNN系列有非常大的提升[7-8]。YOLO 算法中使用由維度聚類(lèi)得到的先驗(yàn)框,對(duì)邊界框預(yù)測(cè)[9]。2017 年到2018 年間,YOLO 的升級(jí)算法YOLOv2 和YOLOv3相繼被提出,YOLOv2 解決了YOLO 存在的主要問(wèn)題,包括定位不準(zhǔn)和召回率不高的問(wèn)題;而后面提出的YOLOv3 則在小目標(biāo)的識(shí)別方面進(jìn)行了改善[10-11]。由于移動(dòng)端的運(yùn)行內(nèi)存小,不適合部署參數(shù)量大的模型,本文采用改進(jìn)后的SSD 目標(biāo)檢測(cè)算法,將原始VGG16 網(wǎng)絡(luò)替換為輕量級(jí)的mobilenet 網(wǎng)絡(luò),大大加快了模型推理時(shí)間,確保目標(biāo)檢測(cè)與廣告推送的實(shí)時(shí)性。
總體的設(shè)計(jì)思路為:首先制作基于深度學(xué)習(xí)的目標(biāo)檢測(cè)模型,然后通過(guò)Android 平臺(tái)將模型部署到嵌入式端,最后通過(guò)編寫(xiě)服務(wù)器端與嵌入式端程序?qū)崿F(xiàn)針對(duì)性廣告的返回[12]。目標(biāo)檢測(cè)模型基于tensorflow 框架,選取SSD_MobileNet 目標(biāo)檢測(cè)模型,通過(guò)訓(xùn)練自己制作的數(shù)據(jù)集制作模型,實(shí)現(xiàn)實(shí)時(shí)檢測(cè)行人的性別、年齡以及特定服飾的功能。模型部署采用TensorFlow Lite,將模型文件轉(zhuǎn)為tflite 文件,然后在Android 平臺(tái)上使用;服務(wù)器端與嵌入式端的通信采用Socket 通信,完成服務(wù)器端與嵌入式端檢測(cè)結(jié)果、廣告圖片以及商品店鋪網(wǎng)址的穩(wěn)定傳送。將訓(xùn)練好的模型部署到RK3399,RK3399 啟動(dòng)攝像頭拍攝實(shí)時(shí)畫(huà)面,獲取一幀實(shí)時(shí)畫(huà)面照片后送往目標(biāo)檢測(cè)模型進(jìn)行實(shí)時(shí)檢測(cè);檢測(cè)到目標(biāo)后,將檢測(cè)結(jié)果發(fā)送到服務(wù)器;服務(wù)器收到檢測(cè)結(jié)果后將相應(yīng)的廣告圖片與廣告鏈接發(fā)送到嵌入式端;最終,在顯示屏上顯示實(shí)時(shí)檢測(cè)結(jié)果和返回的廣告圖片,總體設(shè)計(jì)框圖如圖1 所示。

圖1 總體設(shè)計(jì)框圖
客戶(hù)端與服務(wù)器端采用socket 進(jìn)行通信,通信的過(guò)程如圖2 所示[13]。客戶(hù)端將實(shí)時(shí)檢測(cè)到的結(jié)果發(fā)送至服務(wù)器端;服務(wù)器端收到檢測(cè)結(jié)果對(duì)應(yīng)的數(shù)字(共17 個(gè)類(lèi)別,分別對(duì)應(yīng)數(shù)字0~16)后,根據(jù)檢測(cè)結(jié)果發(fā)送對(duì)應(yīng)商品的商家網(wǎng)址到客戶(hù)端;客戶(hù)端收到網(wǎng)址后,向服務(wù)器端發(fā)送確認(rèn)信息表示已經(jīng)收到商家網(wǎng)址;服務(wù)器端收到客戶(hù)端發(fā)送的確認(rèn)信息后,將要發(fā)送的圖片大小發(fā)送至客戶(hù)端;客戶(hù)端收到圖片大小后,向服務(wù)器端發(fā)送確認(rèn)信息表示已經(jīng)收到了將要接收的圖片的大小;服務(wù)器端收到確認(rèn)信息后,向客戶(hù)端發(fā)送針對(duì)性的廣告圖片。

圖2 通信過(guò)程
1.2.1 服務(wù)器端
服務(wù)器首先會(huì)創(chuàng)建套接字,然后綁定端口號(hào),監(jiān)聽(tīng)客戶(hù)端的請(qǐng)求。當(dāng)客戶(hù)端與服務(wù)器端建立連接后,會(huì)開(kāi)啟新的線(xiàn)程進(jìn)行通信;如果沒(méi)有建立連接,則繼續(xù)監(jiān)聽(tīng)客戶(hù)端的請(qǐng)求。服務(wù)器會(huì)通過(guò)輸入流獲得檢測(cè)結(jié)果和確認(rèn)信息;通過(guò)輸出流寫(xiě)入將要發(fā)送的網(wǎng)址和廣告圖片,判斷是否拋出異常,如果沒(méi)有拋出異常就繼續(xù)監(jiān)聽(tīng),如果拋出異常則結(jié)束程序。服務(wù)器端的程序流程如圖3 所示。

圖3 服務(wù)器端流程
1.2.2 客戶(hù)端
客戶(hù)端的程序流程與服務(wù)器端大致相同,如圖4 所示。

圖4 客戶(hù)端流程
SSD 模型以VGG16 為基礎(chǔ)網(wǎng)絡(luò),但是將VGG16的全連接層fc6 和fc7 轉(zhuǎn)換成卷積層conv6 和conv7,conv6 層和conv7 層的卷積核大小分別為3*3 和1*1,并添加特征提取層[14]。 SSD 的網(wǎng)絡(luò)結(jié)構(gòu)利用了多尺度的特征圖做檢測(cè)。模型的輸入圖片大小是300×300 或512×512,其與前者網(wǎng)絡(luò)結(jié)構(gòu)沒(méi)有差別,只是最后新增一個(gè)卷積層。
當(dāng)對(duì)圖像進(jìn)行分類(lèi)、分割以及目標(biāo)檢測(cè)時(shí),會(huì)涉及到大量的數(shù)據(jù)運(yùn)算。而卷積神經(jīng)網(wǎng)絡(luò)以它特有的結(jié)構(gòu),在速度上遠(yuǎn)遠(yuǎn)快于傳統(tǒng)的圖像處理方法。雖然卷積神經(jīng)網(wǎng)絡(luò)在時(shí)間上有明顯的優(yōu)越性,但是其在精度方面卻不如傳統(tǒng)算法。如果想提高模型的精度,那么網(wǎng)絡(luò)中參數(shù)的計(jì)算量會(huì)大大增加,占用的空間將會(huì)很大。使用嵌入式系統(tǒng)部署檢測(cè)模型經(jīng)濟(jì)實(shí)惠且易于實(shí)現(xiàn),但是常見(jiàn)的嵌入式系統(tǒng)內(nèi)存有限,為了將檢測(cè)模型部署至嵌入式系統(tǒng),需要對(duì)模型進(jìn)行壓縮以減少內(nèi)存的占用,提升模型檢測(cè)速度。壓縮模型的方法有很多,列出幾種常用的方法:1)將N×N的卷積核分解成1×N和N×1 的卷積核;2)使用輸入維度大而輸出維度小的網(wǎng)絡(luò)結(jié)構(gòu);3)將高精度的浮點(diǎn)數(shù)參數(shù)轉(zhuǎn)化為低精度參數(shù);4)對(duì)圖像進(jìn)行去冗余操作,包括對(duì)圖像進(jìn)行編碼等。
深度可分離卷積的原理是對(duì)圖像進(jìn)行去冗余操作,控制圖像冗余信息大小的參數(shù)分別為寬度因子和分辨率因子。但是模型的衡量指標(biāo)有多個(gè),在確保模型精度和模型運(yùn)行速度對(duì)實(shí)際應(yīng)用不會(huì)產(chǎn)生影響的情況下,盡量減少冗余和模型占用空間,是最終想要達(dá)到的目的。最終經(jīng)過(guò)多年研究,Google 團(tuán)隊(duì)設(shè)計(jì)出了適合部署到移動(dòng)端的網(wǎng)絡(luò)模型MobileNet。MobileNet 是輕量級(jí)的卷積神經(jīng)網(wǎng)絡(luò),如果將其作為目標(biāo)檢測(cè)中的基礎(chǔ)網(wǎng)絡(luò),則會(huì)大大減小目標(biāo)檢測(cè)模型的體積和模型的運(yùn)行時(shí)間。
SSD 目標(biāo)檢測(cè)算法使用VGG16 作為基礎(chǔ)網(wǎng)絡(luò)進(jìn)行特征提取,但是VGG16 卷積神經(jīng)網(wǎng)絡(luò)多次使用3×3 卷積核和2×2 最大池化層,因此內(nèi)部參數(shù)數(shù)量多,運(yùn)算量也十分大,導(dǎo)致模型占用的內(nèi)存會(huì)非常大,模型預(yù)測(cè)時(shí)間也比較長(zhǎng),不適合將訓(xùn)練后的模型部署到內(nèi)存空間小、實(shí)時(shí)性要求高的嵌入式端或移動(dòng)端。如果要將模型應(yīng)用到移動(dòng)平臺(tái),減少模型大小、提高模型運(yùn)算速度,則需要結(jié)合模型參數(shù)少、占用空間小的MobileNet 卷積神經(jīng)網(wǎng)絡(luò)。因此,用MobileNet[15]卷積神經(jīng)網(wǎng)絡(luò)替換VGG16 卷積神經(jīng)網(wǎng)絡(luò),然后再由后續(xù)的卷積層生成4 個(gè)特征圖,總計(jì)6 個(gè)特征圖,進(jìn)行后續(xù)的回歸運(yùn)算,最終檢測(cè)出目標(biāo)。經(jīng)過(guò)上述步驟改進(jìn)后的SSD-MobileNet 目標(biāo)檢測(cè)算法,具有權(quán)重參數(shù)少、運(yùn)算速度快和占用空間小等優(yōu)點(diǎn)[15]。
為了便于部署到嵌入式端,提高模型檢測(cè)準(zhǔn)確率,本文對(duì)SSD 目標(biāo)檢測(cè)算法進(jìn)行如下改進(jìn):1)將原始特征提取網(wǎng)絡(luò)修改為MobileNet 卷積神經(jīng)網(wǎng)絡(luò),修改后的網(wǎng)絡(luò)命名為SSD-MobileNet;2)將原始特征提取網(wǎng)絡(luò)修改為MobileNet 卷積神經(jīng)網(wǎng)絡(luò),并加入特征金字塔網(wǎng)絡(luò)(feature pyramid network,F(xiàn)PN),修改后的網(wǎng)絡(luò)命名為SSDMobileNet-FPN;3)將原始特征提取網(wǎng)絡(luò)修改為Inception2 卷積神經(jīng)網(wǎng)絡(luò),通過(guò)增加網(wǎng)絡(luò)的寬度來(lái)提高網(wǎng)絡(luò)性能,修改后的網(wǎng)絡(luò)命名為SSD-Inception2;4)將原始特征提取網(wǎng)絡(luò)修改為Resnet50 卷積神經(jīng)網(wǎng)絡(luò),通過(guò)增加網(wǎng)絡(luò)的深度來(lái)提高網(wǎng)絡(luò)性能,修改后的網(wǎng)絡(luò)命名為SSDResnet50。
使用改進(jìn)后的SSD 網(wǎng)絡(luò)SSD-MobileNet、SSD-MobileNet-FPN、SSD-Inception2、SSD-Resnet50分別進(jìn)行測(cè)試,測(cè)試圖片共633 張。表1 所示為改進(jìn)后的各網(wǎng)絡(luò)對(duì)應(yīng)每個(gè)類(lèi)別的召回率。

表1 改進(jìn)后各網(wǎng)絡(luò)召回率
表2 所示為改進(jìn)后各網(wǎng)絡(luò)對(duì)應(yīng)每個(gè)類(lèi)別的平均精度(average precision, AP)。

表2 改進(jìn)后各網(wǎng)絡(luò)平均精度
SSD-MobileNet 模型均值平均精度(mean average precision, mAP)為0.8150,速度為21.46 f/s。SSD-MobileNet-FPN 模型mAP 為0.8550,速度為20.57 f/s。SSD-Inception2 模型mAP 為0.8069,速度為18.14 f/s。SSD-Resnet50 模型mAP 為0.8910,速度為16.37 f/s。通過(guò)對(duì)比修改網(wǎng)絡(luò)結(jié)構(gòu)后的模型的mAp 值和速度,發(fā)現(xiàn)SSD-Resnet50 模型準(zhǔn)確率最高,但是同時(shí)考慮精度和速度后,SSDMobileNet-FPN 效果最好,在保證精度的同時(shí)速度較快,可以保證部署到嵌入式設(shè)備后檢測(cè)的實(shí)時(shí)性。最終選擇SSD-MobileNet-FPN 訓(xùn)練模型,并部署到嵌入式設(shè)備來(lái)模擬檢測(cè)和廣告推送。
本次設(shè)計(jì)訓(xùn)練的目標(biāo)檢測(cè)模型共有17 個(gè)分類(lèi),包括特定服飾、性別和年齡等,訓(xùn)練總步數(shù)為500000 步,batch_size 最初設(shè)置為16,但是由于電腦內(nèi)存不足,訓(xùn)練中斷,于是將batch_size 修改為12。學(xué)習(xí)率起始為0.0001,最初每經(jīng)過(guò)2000 步,學(xué)習(xí)率下降為原來(lái)的0.95 倍,訓(xùn)練了20000 步左右后發(fā)現(xiàn)損失函數(shù)(loss function)值下降十分緩慢。于是調(diào)整訓(xùn)練步數(shù)為20000 步,每經(jīng)過(guò)20000步,學(xué)習(xí)率下降為原來(lái)的0.95 倍。
部分測(cè)試結(jié)果如圖5 和圖6 所示,展示了男女青年、連衣裙、西裝、帽子和風(fēng)衣的檢測(cè)結(jié)果。通過(guò)結(jié)果可以看出,模型檢測(cè)效果較好,檢測(cè)框與真實(shí)框位置基本一致,分類(lèi)準(zhǔn)確,分類(lèi)置信度較高。

圖5 男女青年服裝測(cè)試結(jié)果

圖6 帽子及風(fēng)衣測(cè)試結(jié)果
在RK3399 上進(jìn)行實(shí)際速度測(cè)試。圖7 為RK3399 實(shí)物,在實(shí)際部署到RK3399 后,Android程序加載目標(biāo)檢測(cè)模型,檢測(cè)一幀圖片的時(shí)長(zhǎng)為200 ms 左右。所以,在嵌入式開(kāi)發(fā)板RK3399 上運(yùn)行目標(biāo)檢測(cè),加載檢測(cè)模型后,在正常運(yùn)行的情況下,檢測(cè)幀率可以達(dá)到5 f/s[16]。

圖7 RK3399 實(shí)物
本文智能廣告牌設(shè)計(jì)思路是根據(jù)識(shí)別到的服飾和不同性別年齡段推薦廣告。當(dāng)識(shí)別到服飾,會(huì)推送對(duì)應(yīng)服飾的廣告內(nèi)容;當(dāng)識(shí)別到性別年齡時(shí),會(huì)推送符合該性別年齡常用的商品。屏幕識(shí)別到多目標(biāo)情況時(shí),會(huì)優(yōu)先推送檢測(cè)置信度最高物體所對(duì)應(yīng)的廣告。由于智能廣告牌是根據(jù)檢測(cè)結(jié)果推送對(duì)應(yīng)廣告,當(dāng)檢測(cè)結(jié)果準(zhǔn)確時(shí),推送的廣告內(nèi)容準(zhǔn)確。因此推送準(zhǔn)確率可由目標(biāo)檢測(cè)模型的AP 值和召回率來(lái)代替。
本次設(shè)計(jì)制作的目標(biāo)檢測(cè)模型共包含17 個(gè)類(lèi)別:服飾包括針織帽、墨鏡、羽絨服、連衣裙、西服、風(fēng)衣和牛仔褲;性別年齡包括男嬰兒、男兒童、男青年、男中年、男老年、女?huà)雰骸⑴畠和⑴嗄辍⑴心旰团夏辍>唧w實(shí)現(xiàn)的功能為用RK3399 外接攝像頭拍攝實(shí)時(shí)畫(huà)面,當(dāng)檢測(cè)到目標(biāo)時(shí),將檢測(cè)結(jié)果發(fā)送給服務(wù)器端,服務(wù)器端根據(jù)檢測(cè)結(jié)果推送針對(duì)性的廣告圖片。廣告圖片共170 張,針對(duì)每個(gè)類(lèi)別推送的廣告圖片共10 張,當(dāng)檢測(cè)到該類(lèi)別時(shí),會(huì)隨機(jī)返回10 張圖片中的1 張,廣告每2 s 返回1 次,當(dāng)行人對(duì)廣告圖片中的內(nèi)容感興趣時(shí),可通過(guò)點(diǎn)擊屏幕上方的“打開(kāi)店鋪”按鈕查看店鋪和商品詳情。部分類(lèi)別的結(jié)果展示和廣告返回情況如圖8 所示。

圖8 針織帽測(cè)試結(jié)果
圖8 為將目標(biāo)檢測(cè)模型部署到RK3399 端后,實(shí)際的檢測(cè)效果圖。圖8(a)圖藍(lán)色框標(biāo)注的是當(dāng)前畫(huà)面置信度較高的類(lèi)別,紅色框標(biāo)注的類(lèi)別置信度比藍(lán)色框低,設(shè)置一張圖片中最多可以檢測(cè)10 個(gè)目標(biāo)。圖8(a)中帽子的置信度為0.7527,女青年的置信度為0.9623,檢測(cè)幀率為每秒6 次。圖8(a)為實(shí)時(shí)檢測(cè)和廣告返回結(jié)果,圖8(b)為點(diǎn)擊按鈕后顯示的畫(huà)面。可以看到,模型對(duì)帽子的檢測(cè)效果基本符合要求,檢測(cè)框與真實(shí)框之間沒(méi)有大幅度偏移,檢測(cè)類(lèi)別也沒(méi)有出現(xiàn)錯(cuò)誤,廣告推送內(nèi)容合適。廣告圖片每2 s 更新一次,每個(gè)類(lèi)別對(duì)應(yīng)的廣告圖片為10 張,大小為300 pixel×300 pixel。
圖9、圖10 為將目標(biāo)檢測(cè)模型部署到RK3399端后的實(shí)際檢測(cè)效果。圖9(a)為實(shí)時(shí)檢測(cè)和廣告返回結(jié)果,圖9(b)為點(diǎn)擊按鈕后顯示的畫(huà)面。男老年的置信度為0.9971,檢測(cè)幀率為每秒5 次。可以看到,模型對(duì)男老年的檢測(cè)效果基本符合要求,檢測(cè)框沒(méi)有大幅度偏移,檢測(cè)類(lèi)別也沒(méi)有出現(xiàn)錯(cuò)誤,廣告推送內(nèi)容合適。

圖9 男老年測(cè)試結(jié)果

圖10 羽絨服測(cè)試結(jié)果
圖10 中羽絨服的置信度為0.996 8,檢測(cè)幀率為每秒7 次,圖10(a)為實(shí)時(shí)檢測(cè)和廣告返回結(jié)果,圖10(b)為點(diǎn)擊按鈕后顯示的畫(huà)面。可以看到,模型對(duì)羽絨服的檢測(cè)效果基本符合要求,檢測(cè)框沒(méi)有大幅度偏移,檢測(cè)類(lèi)別也沒(méi)有出現(xiàn)錯(cuò)誤,廣告推送內(nèi)容合適。廣告圖片每2 s 更新一次,每個(gè)類(lèi)別對(duì)應(yīng)的廣告圖片為10 張,大小為300×300。
本文基于深度學(xué)習(xí)設(shè)計(jì)并實(shí)現(xiàn)了智能廣告牌。將深度學(xué)習(xí)、計(jì)算機(jī)視覺(jué)技術(shù)、目標(biāo)檢測(cè)技術(shù)與液晶顯示廣告牌相結(jié)合,實(shí)現(xiàn)了智能識(shí)別廣告牌前行人的特征信息,包括性別年齡和特定服飾,并根據(jù)識(shí)別結(jié)果有針對(duì)性的推送廣告圖片,從而改善廣告宣傳效果。
1)制作了包括羽絨服、風(fēng)衣等7 個(gè)服飾類(lèi)別,男女?huà)雰骸⒛信嗄甑?0 個(gè)性別年齡組合類(lèi)別的數(shù)據(jù)集,使用SSD-MobileNet-FPN 訓(xùn)練便于部署到移動(dòng)設(shè)備的輕量級(jí)目標(biāo)檢測(cè)模型。模型最終的mAp 值達(dá)到了0.855 0,系統(tǒng)檢測(cè)速度達(dá)到了5 f/s。
2)設(shè)計(jì)模擬服務(wù)器端和廣告牌的通信收發(fā)流程,模擬智能廣告牌識(shí)別特定類(lèi)別后廣告推送流程,并借助RK3399 開(kāi)發(fā)板完成演示。
3)本文根據(jù)識(shí)別結(jié)果有針對(duì)性地推送廣告,從而達(dá)到改善廣告宣傳效果的目的,以盡量少的廣告費(fèi)用達(dá)到理想的宣傳效果。同時(shí),可以為行人減少無(wú)用廣告信息的推送,節(jié)省了行人的時(shí)間。本文使用RK3399 開(kāi)發(fā)板模擬廣告牌,利用改進(jìn)后的目標(biāo)檢測(cè)算法SSD,訓(xùn)練出一個(gè)可以檢測(cè)特定服飾和性別年齡的目標(biāo)檢測(cè)模型,實(shí)時(shí)檢測(cè)攝像頭前行人特征,并根據(jù)檢測(cè)到的行人的不同特征返回不同廣告信息,解決了傳統(tǒng)液晶廣告牌只能按照預(yù)設(shè)內(nèi)容循環(huán)播放廣告的問(wèn)題,使得廣告推送更具針對(duì)性,宣傳效果更好。
通過(guò)分析研究發(fā)現(xiàn)該設(shè)計(jì)可以在以下方面進(jìn)行改進(jìn)和提升:
1)數(shù)據(jù)的采集方面。由于圖像來(lái)源有限,均從百度、淘寶和影視劇劇照中獲得,數(shù)據(jù)集小。如果有途徑獲得各個(gè)類(lèi)別的大量圖片,可以對(duì)模型的檢測(cè)效果有很大改善,模型的泛化能力也會(huì)相應(yīng)增強(qiáng)。
2)采集的服裝類(lèi)別有限。文中服飾類(lèi)別只包括了針織帽、墨鏡、羽絨服、連衣裙、西裝、風(fēng)衣和牛仔褲。如果想要擴(kuò)大廣告牌的識(shí)別目標(biāo)的類(lèi)型范圍,則需要新增加更多常見(jiàn)的服裝類(lèi)別。
3)服裝類(lèi)別劃分寬泛。如果對(duì)服裝類(lèi)別再進(jìn)行細(xì)致劃分,加上領(lǐng)型、顏色、衣長(zhǎng)、版型、花紋、袖長(zhǎng)等屬性,根據(jù)檢測(cè)結(jié)果可以更具針對(duì)性地返回廣告信息。