很難衡量一個(gè)檢測(cè)算法的好壞佛析,因?yàn)槌怂惴ū旧淼乃悸分馑偃铮€有許多因素影響它的速度和精度,比如:
- 特征提取網(wǎng)絡(luò)(VGG, ResNet, Inception, MobileNet);
- 輸出的步長(zhǎng),越大分類數(shù)目越多喝峦,相應(yīng)的速度也會(huì)受影響;
- IOU的評(píng)判方式呜达;
- nms的閾值谣蠢;
- 難樣本挖掘的比率(正樣本和負(fù)樣本的比率);
- 生成的proposal的數(shù)目(不同的方法輸出是不同的)查近;
- bbox的編碼方式眉踱,是預(yù)測(cè)offset還是相對(duì)位置?
- 數(shù)據(jù)預(yù)處理的數(shù)據(jù)增廣方法霜威;
- 用哪個(gè)特征層來做檢測(cè)谈喳;
- 定位誤差函數(shù)的實(shí)現(xiàn)方法;
- 不同的框架戈泼;
- 訓(xùn)練時(shí)候的不同設(shè)置參數(shù)婿禽,如batch_size, 輸入圖片大小,學(xué)習(xí)率大猛,學(xué)習(xí)衰減率等因素扭倾;
為了對(duì)比不同的算法,可以不考慮上述的所有影響因素挽绩,直接對(duì)論文結(jié)果評(píng)測(cè)膛壹,應(yīng)該能大體看出不同方法的速度差異。
上圖是一個(gè)所有方法的預(yù)覽。從圖中可以看出RFCN的準(zhǔn)確度是最高的恢筝。
上圖可以看出哀卫,速度最快的還是yolo和SSD一體化的方法。
這是在ms-coo數(shù)據(jù)集上的測(cè)試效果撬槽,從效果可以看出此改,Retina-Net在mAP效果是最好的。其中Faster-RCNN改用Resnet作為特征抽取網(wǎng)絡(luò)準(zhǔn)確率有較大的提升侄柔。
最后是Google做的一個(gè)research共啃,在TensorFlow上統(tǒng)一的實(shí)現(xiàn)了所有的檢測(cè)算法,yolo沒有包含在內(nèi)暂题。最終的測(cè)試結(jié)果可以表示為:
從上面可以大致的看出移剪,F(xiàn)aster-RCNN的準(zhǔn)確度更加精確,而RFCN和SSD更快薪者。
上述只是一個(gè)預(yù)覽纵苛,但是除了這些之外,我們還需要考慮一些更加細(xì)化的因素言津。
不同的特征抽取網(wǎng)絡(luò)
特征抽取網(wǎng)絡(luò)不通攻人,最終的結(jié)果也不同。簡(jiǎn)單來說悬槽,一個(gè)更加復(fù)雜的特征抽取網(wǎng)絡(luò)可以大大的提高Faster-RCNN和RFCN的精確度怀吻,但是對(duì)于SSD,更好的特征抽取網(wǎng)絡(luò)對(duì)結(jié)果影響不大初婆,所以你看SSD+MobileNet也不會(huì)太大的影響結(jié)果蓬坡。從這個(gè)圖可以看得很清楚:
目標(biāo)物體的大小
對(duì)于大物體,SSD即使使用一個(gè)較弱的特征抽取器也可以獲取較好的精確度磅叛。但在小物體上SSD的表現(xiàn)結(jié)果非常不好屑咳。
具體來看,SSD在一張圖片里面就經(jīng)常漏檢測(cè)小物體宪躯,比如:
Proposal的數(shù)目
不同的Proposal數(shù)目會(huì)影響檢測(cè)器的速度和精度乔宿。這個(gè)很重要,很多人想加速Faaster-RCNN但是不知道從何下手访雪,顯然這里是一個(gè)很好的切入點(diǎn)详瑞。
將Proposal的數(shù)目從300削減到50,速度可以提高3倍臣缀,但是精度僅僅降低4%坝橡,可以說非常值了。我們從這張圖可以看得很清楚:
最終我們可以得到一個(gè)很科學(xué)的結(jié)果:
- 最高精度
使用Faster-RCNN毫無疑問精置,使用Inception ResNet作為特征抽取網(wǎng)絡(luò)计寇,但是速度是一張圖片1s;
還有一種方法是一種叫做集成的動(dòng)態(tài)選擇模型的方法(這個(gè)你就不要追求速度了)工育;
- 最快
SSD+MobileNet是速度最快的颅和,但是小目標(biāo)檢測(cè)效果差;
- 平衡
如果既要保證精度又要保持速度框杜,采用Faster-RCNN將proposla的數(shù)目減少到50蝶押,同時(shí)還能夠達(dá)到RFCN和SSD的速度踱蠢,但mAP更優(yōu)。
最后棋电,歡迎廣大AI從業(yè)者茎截、創(chuàng)業(yè)者加入深圳地區(qū)AI交流群,添加本人微信 jintianiloveu 發(fā)送信息:深圳AI交流 拉群赶盔。