YOLOv5 對(duì)決 Faster RCNN,誰(shuí)贏誰(shuí)輸?
撇開(kāi)所有爭(zhēng)議不談,YOLOv5 看起來(lái)是一個(gè)“很有前途”的模型。因此,我將它與 Faster RCNN 進(jìn)行了比較,F(xiàn)aster RCNN 是最好的 two stage 檢測(cè)器之一。為了進(jìn)行比較,我選取了三段背景不同的視頻,并將這兩個(gè)模型并排運(yùn)行。我的評(píng)估包括對(duì)結(jié)果質(zhì)量和推理速度的觀察結(jié)果。那么,讓我們言歸正傳。
YOLOv5 的實(shí)現(xiàn)是在 PyTorch 中完成的,與之前基于 DarkNet 框架的開(kāi)發(fā)形成了鮮明的對(duì)比。這使得該模型的理解、訓(xùn)練和部署變得更加容易(目前暫時(shí)沒(méi)有使用 YOLO-v5 的論文發(fā)表)。以我的理解來(lái)看,在架構(gòu)上,它和 YOLO-v4 很相似。一個(gè)不同之處可能是使用了 Cross Stage Partial Network(CSP)來(lái)降低計(jì)算成本。目前尚不清楚 YOLOv5 的運(yùn)行速度是否比 YOLO-v4 更快,但我更喜歡 PyTorch 的實(shí)現(xiàn),而且讓驚訝的是,使用這個(gè)模型進(jìn)行訓(xùn)練是如此的容易。就我個(gè)人經(jīng)驗(yàn)而言,通過(guò)它進(jìn)行推理的體驗(yàn)也是如此。
這次發(fā)布的 YOLOv5 包括五種不同尺寸的模型:YOLOv5s(最?。?、YOLOv5m、YOLOv5l、YOLOv5x(最大)。這些模型的推理速度和平均精度均值(mean average precision,mAP)如下圖所示:

第一步就是克隆 YOLO-v5 的 repo,并安裝所有的依賴(lài)要求。我使用的是 PyTorch 1.5,代碼可以正常工作,沒(méi)有任何問(wèn)題。
你可以按照以下方法下載不同預(yù)訓(xùn)練 COCO 模型的所有權(quán)重:
bash weights/download_weights.sh
要對(duì)視頻進(jìn)行推理,就必須將傳遞給視頻的路徑以及要使用的模型的權(quán)重。如果沒(méi)有設(shè)置權(quán)重參數(shù),那么在默認(rèn)情況下,代碼在 YOLO 小模型上運(yùn)行。我使用的示例參數(shù)如下所示。
python detect.py --source video/MOT20-01-raw-cut1.mp4 --output video_out/ --weights weights/yolov5s.pt --conf-thres 0.4
輸出視頻將保存在輸出文件夾中。
對(duì)于 Faster RCNN 模型,我使用了 TensorFlow Object Detection 中的預(yù)訓(xùn)練模型。TensorFlow Object Detection 共享 COCO 預(yù)訓(xùn)練的 Faster RCNN,用于各種主干。對(duì)于這個(gè)博客,我使用了 Faster RCNN ResNet 50 主干。這個(gè) repo 分享了一個(gè)很不錯(cuò)的教程,介紹如何使用他們的預(yù)訓(xùn)練模型進(jìn)行推理。
考慮到對(duì)自動(dòng)駕駛行業(yè)的重要性,我選擇的第一個(gè)場(chǎng)景是街道駕駛場(chǎng)景。這兩個(gè)模型的結(jié)果分別如下:

YOLOv5 模型評(píng)估駕駛視頻

Faster RCNN 評(píng)估駕駛視頻
YOLO 模型似乎更善于檢測(cè)較小的目標(biāo),在這種情況下是紅綠燈,并且還能夠在當(dāng)汽車(chē)距離較遠(yuǎn)(即在透視上看起來(lái)較?。⑵溥M(jìn)行標(biāo)記。
YOLOv5s 的運(yùn)行速度(端到端包括讀取視頻、運(yùn)行模型和將結(jié)果保存到文件)為 52.8 FPS。
而 Faser RCNN ResNet 50 的運(yùn)行速度(端到端包括讀取視頻、運(yùn)行模型和將結(jié)果保存到文件)為 21.7 FPS。
以上結(jié)果是在 NVIDIA 1080 Ti 上進(jìn)行評(píng)估的。
到目前為止,YOLOv5 看上去比 Faster RCNN 更好一些。

YOLOv5 與 Faster RCNN 的比較(1)
下一段視頻是 YouTube 的籃球比賽視頻。兩個(gè)模型的結(jié)果如下所示:

YOLOv5 評(píng)估籃球比賽視頻

Faster RCNN ResNet 50 評(píng)估籃球比賽視頻
Faster RCNN 模型在 60% 的閾值下運(yùn)行,可以說(shuō)它是用“Person”標(biāo)簽對(duì)人群進(jìn)行標(biāo)記,但我個(gè)人更喜歡 YOLO,因?yàn)樗慕Y(jié)果干凈整潔。不過(guò),這兩種模型在視頻右下角的 abc(美國(guó)廣播公司)徽標(biāo)上都存在假正類(lèi)誤報(bào)。
我也很失望,雖然運(yùn)動(dòng)球也是 COCO 的類(lèi)別之一,但這兩個(gè)模型都沒(méi)有檢測(cè)到籃球。它們現(xiàn)在的統(tǒng)計(jì)情況如下:

YOLOv5 與 Faster RCNN 的比較 (2)
在最后一段視頻中,我從 MOT 數(shù)據(jù)集中選擇了一個(gè)室內(nèi)擁擠的場(chǎng)景。這是一段很有挑戰(zhàn)性的視頻,因?yàn)楣饩€(xiàn)不足,距離遙遠(yuǎn),人群密集。這兩個(gè)模型的結(jié)果如下所示:

YOLOv5 模型在來(lái)自 MOT 數(shù)據(jù)集中的室內(nèi)擁擠場(chǎng)景進(jìn)行測(cè)試

Faster RCNN 模型在來(lái)自 MOT 數(shù)據(jù)集中的室內(nèi)擁擠場(chǎng)景進(jìn)行測(cè)試
這一次的測(cè)試很有趣。我想說(shuō)的是,當(dāng)人們走進(jìn)走廊的時(shí)候,這兩種模型都很難檢測(cè)到遠(yuǎn)處的人。這可能是由于光線(xiàn)較弱和目標(biāo)較小所致。當(dāng)人群靠近攝像機(jī)方向時(shí),這兩種模型都能對(duì)重疊的人進(jìn)行標(biāo)記。

YOLOv5 與 Faster RCNN 的比較(3)
最后對(duì)比兩種模型可以看出,YOLOv5 在運(yùn)行速度上有明顯優(yōu)勢(shì)。小型 YOLOv5 模型運(yùn)行速度加快了約 2.5 倍,同時(shí)在檢測(cè)較小的目標(biāo)時(shí)具有更好的性能。結(jié)果也更干凈,幾乎沒(méi)有重疊的邊框。Ultralytics 在他們的 YOLOv5 上做得非常出色,并開(kāi)源了一個(gè)易于訓(xùn)練和運(yùn)行推理的模型。
該博文還顯示了計(jì)算機(jī)視覺(jué)目標(biāo)檢測(cè)的一個(gè)新興趨勢(shì),即朝既快又準(zhǔn)確的模型發(fā)展。
原文鏈接:
https://towardsdatascience.com/yolov5-compared-to-faster-rcnn-who-wins-a771cd6c9fb4

轉(zhuǎn)自:AI前線(xiàn)
