何凌志,華國(guó)亮,王 晗
(南京理工大學(xué)紫金學(xué)院, 江蘇 南京 210023)
隨著中國(guó)城鎮(zhèn)化進(jìn)程加快,人們的生活水平和質(zhì)量日益得到改善,日常生活中參加足球運(yùn)動(dòng)的人也日漸增多。 由于足球比賽錄像直播時(shí)間長(zhǎng)及足球觀眾對(duì)精彩競(jìng)技比賽十分感興趣,因此足球視頻的精彩比賽事件檢測(cè)也逐漸成為體育競(jìng)技分析領(lǐng)域研究的一個(gè)熱門話題。 在這其中,足球錄像中球的檢測(cè)是當(dāng)前主要的研究基礎(chǔ)之一,它的檢測(cè)質(zhì)量也將直接影響對(duì)足球錄像分析和檢索的最后效果,所以一直受到眾多學(xué)者的普遍重視。
近年來(lái),YOLOv4[1]深度卷積神經(jīng)網(wǎng)絡(luò)以其檢測(cè)效率高而被廣泛使用。 本項(xiàng)目設(shè)計(jì)了一個(gè)基于嵌入式的智能足球數(shù)據(jù)檢測(cè)分析系統(tǒng),把人工智能和嵌入式平臺(tái)相結(jié)合。
YOLO[2]網(wǎng)絡(luò)是一種基于回歸的目標(biāo)數(shù)據(jù)檢測(cè)分析算法,檢測(cè)速度較快且檢測(cè)結(jié)果質(zhì)量高,故在許多任務(wù)具有良好的成效[3]。 YOLO 的多尺度預(yù)測(cè)算法相較于其他算法檢測(cè)目標(biāo)更具優(yōu)勢(shì)。 YOLOv4 目標(biāo)數(shù)據(jù)檢測(cè)分析算法廣泛使用了近些年CNN 領(lǐng)域中最優(yōu)的數(shù)據(jù)優(yōu)化處理策略,從網(wǎng)絡(luò)數(shù)據(jù)處理、主干數(shù)據(jù)網(wǎng)絡(luò)、網(wǎng)絡(luò)管理訓(xùn)練、激活處理函數(shù)、損失補(bǔ)償函數(shù)等各個(gè)方面都有著不同程度的優(yōu)化提升。 YOLOv4 5 個(gè)基本組件分別是CBM(Conv+Bn+Mish),BL(Conv+Bn+Leaky_relu),Resunit,CSPX,SPP,其中,輸入端的改進(jìn)是YOLOv4 最為重要之一,主要包括了Mosaic 數(shù)據(jù)增強(qiáng),在YOLOv4 中所運(yùn)用的Mosaic 是根據(jù)2019 年年底提出的CutMix 數(shù)據(jù)增強(qiáng)的方式,而CutMix 只采用了二幅圖像進(jìn)行拼接,Mosaic 數(shù)據(jù)增強(qiáng)則是用的四幅圖像,通過(guò)隨機(jī)縮放、隨機(jī)裁剪、隨機(jī)排布的方式進(jìn)行處理拼接。 Yolov4 的Backbone 中都使用了Mish 激活函數(shù),而后面的網(wǎng)絡(luò)則還是使用Leaky _ relu 函數(shù), 使用CSPDarknet53 網(wǎng)絡(luò)在ImageNet 數(shù)據(jù)集上做圖像分類任務(wù),其中在對(duì)比中發(fā)現(xiàn)使用了Mish 激活函數(shù)的TOP-1和TOP-5 的精度比沒有使用時(shí)都略高一些,因此YoLov4 的目標(biāo)檢測(cè)任務(wù)時(shí),主干網(wǎng)絡(luò)Backbone 還是使用Mish 激活函數(shù)。 Mish 激活圖像如圖1 所示。
圖1 Mish 激活圖像
在目標(biāo)檢測(cè)領(lǐng)域,為了更好地提取融合特征,通常在Backbone 和輸出層,會(huì)插入一些層,這個(gè)部分稱為Neck,相當(dāng)于目標(biāo)檢測(cè)網(wǎng)絡(luò)的頸部,也是非常重要的。其中,Yolov4 的Neck 結(jié)構(gòu)主要采用了SPP 模塊,以及FPN+PAN 的方式。 在SPP 模塊中,使用k ={1×1,5×5,9×9,13×13}的最大池化的方式,通過(guò)進(jìn)行concat 操作,可以把不同尺度的特征圖結(jié)合起來(lái)。 采用SPP 模塊的方式,比單純地使用k×k 最大池化的方式,更有效的增加主干特征的接收范圍,SPP 模塊顯著的分離了最重要的上下文特征。 SPP 模塊簡(jiǎn)介如圖2 所示。
圖2 SPP 模塊簡(jiǎn)介
本次項(xiàng)目選用公開的足球數(shù)據(jù)集,通過(guò)網(wǎng)絡(luò)爬蟲的方式收集了3 000 張照片。 通過(guò)LableImage 標(biāo)注工具給每張照片加以標(biāo)記,所產(chǎn)成的目標(biāo)信息儲(chǔ)存于相對(duì)應(yīng)的xml 文檔。 本次研究采用的是VOC 格式的數(shù)據(jù)集,因此收集到的足球照片會(huì)放入VOC 文件夾下的JPEGlmages 文件夾下,利用LableImage 標(biāo)注工具標(biāo)注足球照片生成的xml 文件存放在VOC2007 文件夾下的Annotation 文件夾中,通過(guò)編寫好的腳本生成與圖片對(duì)應(yīng)的文件。 修改data/voc.names、cfg/voc.data、cfg/yolov4-voc.cfg 這3 個(gè)文件,添加自己的數(shù)據(jù),文件夾層次如圖3 所示。
圖3 文件夾層次
由于深度學(xué)習(xí)及網(wǎng)絡(luò)模型訓(xùn)練對(duì)于平臺(tái)配置須高要求,YOLOv4 訓(xùn)練通常在CPU 或GPU 環(huán)境下完成,經(jīng)測(cè)試,其中GPU 的運(yùn)算能力遠(yuǎn)遠(yuǎn)高于CPU,因此本次采用GPU 進(jìn)行訓(xùn)練,在Ubuntu18.04 的操作系統(tǒng)下完成,CUDA 為10.1,CUDNN 為7.6.5,Python 為3.7,Opencv 為3.4.4。 其中訓(xùn)練文檔如圖4 所示。
圖4 訓(xùn)練迭代
2.3.1 模型算法平均準(zhǔn)確率
在目標(biāo)精度檢測(cè)中,判斷目標(biāo)識(shí)別精度的主要指標(biāo)是mAP(mean average precision)。 其中,每一個(gè)類別都可以根據(jù)reall 和precision 繪制一條曲線,AP 就是該曲線下的面積,mAP 是類別中AP 的平均值。 因?yàn)槭褂玫氖荲OC 格式的數(shù)據(jù)集,所以應(yīng)該有訓(xùn)練的源文件以及通過(guò)LableImage 標(biāo)注生成的xml 文件,但是YOLOv4 的網(wǎng)絡(luò)并不能直接檢測(cè),而是需要每張照片對(duì)應(yīng)的描述文件(txt 格式),記錄每一張照片的類別、位置、大小等等信息。 另外,通過(guò)YOLOV4 的命令./darknet detector map cfg/voc.data cfg/yolov4-voc.cfg/yolov4-voc_final.weights 可得,本次足球算法模型的mAP 值達(dá)到96.78%。
2.3.2 模型算法交并比
IoU (Intersection over Union)的具體中文名稱是直譯為“交并比”,即為虛擬預(yù)測(cè)區(qū)域邊界和真實(shí)預(yù)測(cè)邊框的一個(gè)交集,即對(duì)二框的并集之進(jìn)行比較。 在諸多基于ai 和深度學(xué)習(xí)的目標(biāo)檢測(cè)算法中,IoU 均被認(rèn)為是一項(xiàng)關(guān)鍵的預(yù)測(cè)區(qū)綜合域計(jì)算測(cè)量指標(biāo)。 一般在檢測(cè)中,若IoU>0.5,則認(rèn)為完全正確,并且一般閾值設(shè)為0.5。 其中,通過(guò)測(cè)試可得我們的這次足球模型算法的IoU 值大于0.5。
本次實(shí)驗(yàn)采用基于linux 的樹莓派4B 作為檢測(cè)的嵌入式平臺(tái),該嵌入式平臺(tái)采用ARMCortex-A721.5GHz(四核)的CPU,以及500MHzVIDE OCOREIV 的GPU,是一款集成了多功能的微型電腦主板。 其中內(nèi)存卡和硬盤為SD/MicroSD 卡的卡片式,同時(shí)4 個(gè)USB 數(shù)據(jù)接口以及一個(gè)以太網(wǎng)接口在卡片主板周圍。
首先更換國(guó)內(nèi)源(本次實(shí)驗(yàn)采用中科大源)以及新建pip 源,通過(guò)下載Opencv3.4.4 和OpenCV_Contrib 的源文件從而進(jìn)行源碼構(gòu)建Opencv。 后通過(guò)命令git clone https:/github.com/AlexeyAB/darknet.git 獲取源碼,之后進(jìn)入Darknet 目錄下尋找Makefile 文件,其中修改Opencv 對(duì)應(yīng)的值,把0 改成1。 最后重新進(jìn)行編譯處理。
為驗(yàn)證YOLOv4 模型的可行性和足球檢測(cè)系統(tǒng)的檢測(cè)能力,組內(nèi)人員將模型移植到樹莓派嵌入式平臺(tái)。同時(shí),相關(guān)人員使用FileZilla 傳輸軟件把訓(xùn)練好的模型通過(guò)連接IP 地址的方式傳輸?shù)綐漭啥恕?由于樹莓派的GPU 受限,故本次測(cè)試對(duì)視頻處理效果會(huì)有一定的影響,但是結(jié)果顯示,即使存在不利因素,搭載了YOLOv4 目標(biāo)檢測(cè)算法模型的樹莓派對(duì)足球的檢測(cè)效果依舊良好。
試驗(yàn)數(shù)據(jù)表明,通過(guò)命令./darknet detector demo ./cfg/voc.data ./cfg/yolov4-voc.cfg ./yolov4-voc.weights
即可看到經(jīng)過(guò)YOLOv4 的目標(biāo)檢測(cè)算法模型處理的最后結(jié)果。 因此采用YOLOv4 作為足球檢測(cè)算法,結(jié)果準(zhǔn)確率較高。 YOLOv4 在檢測(cè)方面具有一定的優(yōu)勢(shì),它基本可以滿足檢測(cè)要求。 訓(xùn)練測(cè)試如圖5 所示。
圖5 訓(xùn)練測(cè)試
本研究主體是基于YOLOv4 目標(biāo)數(shù)據(jù)檢測(cè)分析算法,計(jì)算機(jī)系統(tǒng)將攝像頭所收集到的圖像信號(hào)傳輸?shù)綐漭?樹莓派根據(jù)訓(xùn)練模型算法進(jìn)行數(shù)據(jù)計(jì)算處理。該研究實(shí)現(xiàn)了人工智能和嵌入式平臺(tái)相結(jié)合,并實(shí)現(xiàn)了對(duì)足球的定位和識(shí)別。 其中,本研究最高識(shí)別率為98%,平均識(shí)別率為96%,目標(biāo)檢測(cè)算法模型的mAP(平均精度值)為96.78%,該數(shù)據(jù)滿足足球視頻的分析和檢索的效果。 當(dāng)然,當(dāng)下目標(biāo)數(shù)據(jù)檢測(cè)分析算法,除YOLOv4,其他目標(biāo)檢測(cè)算法也各有優(yōu)勢(shì)。 作為后來(lái)研究學(xué)者應(yīng)該緊隨當(dāng)下信息時(shí)代的步伐,不斷地去認(rèn)識(shí)學(xué)習(xí)更多的知識(shí)。