<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          干貨 | 深度學(xué)習(xí)檢測(cè)小目標(biāo)常用方法

          共 5790字,需瀏覽 12分鐘

           ·

          2021-04-19 10:16


          點(diǎn)擊上方小白學(xué)視覺(jué)”,選擇加"星標(biāo)"或“置頂

          重磅干貨,第一時(shí)間送達(dá)

          本文轉(zhuǎn)自|視覺(jué)算法

          github地址:https://github.com/Captain1986/CaptainBlackboard

          來(lái)源opencv學(xué)堂 文字編輯:gloomyfish 

          引言



          ????????????????????在深度學(xué)習(xí)目標(biāo)檢測(cè)中,特別是人臉檢測(cè)中,小目標(biāo)、小人臉的檢測(cè)由于分辨率低,圖片模糊,信息少,噪音多,所以一直是一個(gè)實(shí)際且常見(jiàn)的困難問(wèn)題。不過(guò)在這幾年的發(fā)展中,也涌現(xiàn)了一些提高小目標(biāo)檢測(cè)性能的解決手段,本文對(duì)這些手段做一個(gè)分析、整理和總結(jié)。


          傳統(tǒng)的圖像金字塔和多尺度滑動(dòng)窗口檢測(cè)

          最開(kāi)始在深度學(xué)習(xí)方法流行之前,對(duì)于不同尺度的目標(biāo),大家普遍使用將原圖build出不同分辨率的圖像金字塔,再對(duì)每層金字塔用固定輸入分辨率的分類(lèi)器在該層滑動(dòng)來(lái)檢測(cè)目標(biāo),以求在金字塔底部檢測(cè)出小目標(biāo);或者只用一個(gè)原圖,在原圖上,用不同分辨率的分類(lèi)器來(lái)檢測(cè)目標(biāo),以求在比較小的窗口分類(lèi)器中檢測(cè)到小目標(biāo)。


          在著名的人臉檢測(cè)器MTCNN中,就使用了圖像金字塔的方法來(lái)檢測(cè)不同分辨率的人臉目標(biāo)。

          不過(guò)這種方式速度慢(雖然通常build圖像金字塔可以使用卷積核分離加速或者直接簡(jiǎn)單粗暴地resize,但是還是需要做多次的特征提取呀),后面有人借鑒它的思想搞出了特征金字塔網(wǎng)絡(luò)FPN,它在不同層取特征進(jìn)行融合,只需要一次前向計(jì)算,不需要縮放圖片,也在小目標(biāo)檢測(cè)中得到了應(yīng)用,在本文后面會(huì)講到。

          簡(jiǎn)單粗暴又可靠的Data Augmentation

          深度學(xué)習(xí)的效果在某種意義上是靠大量數(shù)據(jù)喂出來(lái)的,小目標(biāo)檢測(cè)的性能同樣也可以通過(guò)增加訓(xùn)練集中小目標(biāo)樣本的種類(lèi)和數(shù)量來(lái)提升。在《深度學(xué)習(xí)中不平衡樣本的處理》一文中已經(jīng)介紹了許多數(shù)據(jù)增強(qiáng)的方案,這些方案雖然主要是解決不同類(lèi)別樣本之間數(shù)量不均衡的問(wèn)題的,但是有時(shí)候小目標(biāo)檢測(cè)之難其中也有數(shù)據(jù)集中小樣本相對(duì)于大樣本來(lái)說(shuō)數(shù)量很少的因素,所以其中很多方案都可以用在小樣本數(shù)據(jù)的增強(qiáng)上,這里不贅述。另外,在19年的論文Augmentation for small object detection中,也提出了兩個(gè)簡(jiǎn)單粗暴的方法:


          方法一


          針對(duì)COCO數(shù)據(jù)集中包含小目標(biāo)的圖片數(shù)量少的問(wèn)題,使用過(guò)采樣OverSampling策略;

          方法二


          針對(duì)同一張圖片里面包含小目標(biāo)數(shù)量少的問(wèn)題,在圖片內(nèi)用分割的Mask摳出小目標(biāo)圖片再使用復(fù)制粘貼的方法(當(dāng)然,也加上了一些旋轉(zhuǎn)和縮放,另外要注意不要遮擋到別的目標(biāo))。

          在同一張圖中有更多的小目標(biāo),在Anchor策略的方法中就會(huì)匹配出更多的正樣本。

          特征融合的FPN

          不同階段的特征圖對(duì)應(yīng)的感受野不同,它們表達(dá)的信息抽象程度也不一樣。淺層的特征圖感受野小,比較適合檢測(cè)小目標(biāo)(要檢測(cè)大目標(biāo),則其只“看”到了大目標(biāo)的一部分,有效信息不夠);深層的特征圖感受野大,適合檢測(cè)大目標(biāo)(要檢測(cè)小目標(biāo),則其”看“到了太多的背景噪音,冗余噪音太多)。所以,有人就提出了將不同階段的特征圖,都融合起來(lái),來(lái)提升目標(biāo)檢測(cè)的性能,這就是特征金字塔網(wǎng)絡(luò)FPN。

          在人臉領(lǐng)域,基本上性能好一點(diǎn)的方法都是用了FPN的思想,其中比較有代表性的有:

          RetinaFace:Single-stage Dense Face Localisation in the Wild


          另外一個(gè)思路

          既然可以在不同分辨率特征圖做融合來(lái)提升特征的豐富度和信息含量來(lái)檢測(cè)不同大小的目標(biāo),那么自然也有人會(huì)進(jìn)一步地猜想,如果只用高分辨率的特征圖(淺層特征)去檢測(cè)小臉;用中間分辨率的特征圖(中層特征)去檢測(cè)大臉;最后用地分辨率的特征圖(深層特征)去檢測(cè)小臉。比如人臉檢測(cè)中的SSH。

          合適的訓(xùn)練方法SNIP,SNIPER,SAN

          機(jī)器學(xué)習(xí)里面有個(gè)重要的觀點(diǎn),模型預(yù)訓(xùn)練的分布要盡可能地接近測(cè)試輸入的分布。所以,在大分辨率(比如常見(jiàn)的224 x 224)下訓(xùn)練出來(lái)的模型,不適合檢測(cè)本身是小分辨率再經(jīng)放大送入模型的圖片。如果是小分辨率的圖片做輸入,應(yīng)該在小分辨率的圖片上訓(xùn)練模型;再不行,應(yīng)該用大分辨率的圖片訓(xùn)練的模型上用小分辨率的圖片來(lái)微調(diào)fine-tune;最差的就是直接用大分辨率的圖片來(lái)預(yù)測(cè)小分辨率的圖(通過(guò)上采樣放大)。但是這是在理想的情況下的(訓(xùn)練樣本數(shù)量、豐富程度都一樣的前提下,但實(shí)際上,很多數(shù)據(jù)集都是小樣本嚴(yán)重缺乏的),所以放大輸入圖像+使用高分率圖像預(yù)訓(xùn)練再在小圖上微調(diào),在實(shí)踐中要優(yōu)于專(zhuān)門(mén)針對(duì)小目標(biāo)訓(xùn)練一個(gè)分類(lèi)器。

          在下圖中示意的是SNIP訓(xùn)練方法,訓(xùn)練時(shí)只訓(xùn)練合適尺寸的目標(biāo)樣本,只有真值的尺度和Anchor的尺度接近時(shí)來(lái)用來(lái)訓(xùn)練檢測(cè)器,太小太大的都不要,預(yù)測(cè)時(shí)輸入圖像多尺度,總有一個(gè)尺寸的Anchor是合適的,選擇那個(gè)最合適的尺度來(lái)預(yù)測(cè)。對(duì)R-FCN提出的改進(jìn)主要有兩個(gè)地方,一是多尺寸圖像輸入,針對(duì)不同大小的輸入,在經(jīng)過(guò)RPN網(wǎng)絡(luò)時(shí)需要判斷valid GT和invalid GT,以及valid anchor和invalid anchor,通過(guò)這一分類(lèi),使得得到的預(yù)選框更加的準(zhǔn)確;二是在RCN階段,根據(jù)預(yù)選框的大小,只選取在一定范圍內(nèi)的預(yù)選框,最后使用NMS來(lái)得到最終結(jié)果。

          SNIPER是SNIP的實(shí)用升級(jí)版本,這里不做詳細(xì)介紹了。

          稠密Anchor采樣和匹配策略S3FD,FaceBoxes

          在前面Data Augmentation部分已經(jīng)講了,復(fù)制小目標(biāo)到一張圖的多個(gè)地方可以增加小目標(biāo)匹配的Anchor框的個(gè)數(shù),增加小目標(biāo)的訓(xùn)練權(quán)重,減少網(wǎng)絡(luò)對(duì)大目標(biāo)的bias。同樣,反過(guò)來(lái)想,如果在數(shù)據(jù)集已經(jīng)確定的情況下,我們也可以增加負(fù)責(zé)小目標(biāo)的Anchor的設(shè)置策略來(lái)讓訓(xùn)練時(shí)對(duì)小目標(biāo)的學(xué)習(xí)更加充分。例如人臉檢測(cè)中的FaceBoxes其中一個(gè)Contribution就是Anchor densification strategy,Inception3的anchors有三個(gè)scales(32,64,128),而32 scales是稀疏的,所以需要密集化4倍,而64 scales則需要密集化2倍。在S3FD人臉檢測(cè)方法中,則用了Equal-proportion interval principle來(lái)保證不同大小的Anchor在圖中的密度大致相等,這樣大臉和小臉匹配到的Anchor的數(shù)量也大致相等了。

          另外,對(duì)小目標(biāo)的Anchor使用比較寬松的匹配策略(比如IoU > 0.4)也是一個(gè)比較常用的手段。

          先生成放大特征再檢測(cè)的GAN

          Perceptual GAN使用了GAN對(duì)小目標(biāo)生成一個(gè)和大目標(biāo)很相似的Super-resolved Feature(如下圖所示),然后把這個(gè)Super-resolved Feature疊加在原來(lái)的小目標(biāo)的特征圖(如下下圖所示)上,以此增強(qiáng)對(duì)小目標(biāo)特征表達(dá)來(lái)提升小目標(biāo)(在論文中是指交通燈)的檢測(cè)性能。

          利用Context信息的Relation Network和PyramidBox

          小目標(biāo),特別是像人臉這樣的目標(biāo),不會(huì)單獨(dú)地出現(xiàn)在圖片中(想想單獨(dú)一個(gè)臉出現(xiàn)在圖片中,而沒(méi)有頭、肩膀和身體也是很恐怖的)。像PyramidBox方法,加上一些頭、肩膀這樣的上下文Context信息,那么目標(biāo)就相當(dāng)于變大了一些,上下文信息加上檢測(cè)也就更容易了。

          這里順便再提一下通用目標(biāo)檢測(cè)中另外一種加入Context信息的思路,Relation Networks雖然主要是解決提升識(shí)別性能和過(guò)濾重復(fù)檢測(cè)而不是專(zhuān)門(mén)針對(duì)小目標(biāo)檢測(cè)的,但是也和上面的PyramidBox思想很像的,都是利用上下文信息來(lái)提升檢測(cè)性能,可以歸類(lèi)為Context一類(lèi)。


          總結(jié)

          本文比較詳細(xì)地總結(jié)了一些在通用目標(biāo)檢測(cè)和專(zhuān)門(mén)人臉檢測(cè)領(lǐng)域常見(jiàn)的小目標(biāo)檢測(cè)的解決方案,后面有時(shí)間會(huì)再寫(xiě)一些專(zhuān)門(mén)在人臉領(lǐng)域的困難點(diǎn)(比如ROP的側(cè)臉,RIP的360度人臉)及現(xiàn)在學(xué)術(shù)界的解決方案。


          參考鏈接

          Joint Face Detection and Alignment using Multi-task Cascaded Convolutional Networks
          https://arxiv.org/abs/1604.02878

          Augmentation for small object detection
          https://arxiv.org/pdf/1902.07296.pdf

          Feature Pyramid Networks for Object Detection
          https://arxiv.org/abs/1612.03144

          RetinaFace: Single-stage Dense Face Localisation in the Wild
          https://arxiv.org/pdf/1905.00641.pdf

          SSH: Single Stage Headless Face Detector
          https://arxiv.org/pdf/1708.03979.pdf

          An Analysis of Scale Invariance in Object Detection - SNIP
          https://arxiv.org/abs/1711.08189

          R-FCN: Object Detection via Region-based Fully Convolutional Networks
          https://arxiv.org/abs/1605.06409

          SNIPER: Efficient Multi-Scale Training
          https://arxiv.org/pdf/1805.09300.pdf

          SAN: Learning Relationship between Convolutional Features for Multi-Scale Object Detection
          https://arxiv.org/pdf/1808.04974.pdf

          ScratchDet: Training Single-Shot Object Detectors from Scratch
          https://arxiv.org/pdf/1810.08425.pdf

          FaceBoxes: A CPU Real-time Face Detector with High Accuracy
          https://arxiv.org/abs/1708.05234

          S3FD: Single Shot Scale-Invariant Face Detector
          http://openaccess.thecvf.com/content_ICCV_2017/papers/Zhang_S3FD_Single_Shot_ICCV_2017_paper.pdf

          Perceptual Generative Adversarial Networks for Small Object Detection
          https://arxiv.org/abs/1706.05274

          PyramidBox: A Context-assisted Single Shot Face Detector
          https://arxiv.org/abs/1803.07737

          Relation Networks for Object Detection
          https://arxiv.org/abs/1711.11575



          - END -
          下載1:OpenCV-Contrib擴(kuò)展模塊中文版教程
          在「小白學(xué)視覺(jué)」公眾號(hào)后臺(tái)回復(fù):擴(kuò)展模塊中文教程,即可下載全網(wǎng)第一份OpenCV擴(kuò)展模塊教程中文版,涵蓋擴(kuò)展模塊安裝、SFM算法、立體視覺(jué)、目標(biāo)跟蹤、生物視覺(jué)、超分辨率處理等二十多章內(nèi)容。

          下載2:Python視覺(jué)實(shí)戰(zhàn)項(xiàng)目52講
          小白學(xué)視覺(jué)公眾號(hào)后臺(tái)回復(fù):Python視覺(jué)實(shí)戰(zhàn)項(xiàng)目,即可下載包括圖像分割、口罩檢測(cè)、車(chē)道線檢測(cè)、車(chē)輛計(jì)數(shù)、添加眼線、車(chē)牌識(shí)別、字符識(shí)別、情緒檢測(cè)、文本內(nèi)容提取、面部識(shí)別等31個(gè)視覺(jué)實(shí)戰(zhàn)項(xiàng)目,助力快速學(xué)校計(jì)算機(jī)視覺(jué)。

          下載3:OpenCV實(shí)戰(zhàn)項(xiàng)目20講
          小白學(xué)視覺(jué)公眾號(hào)后臺(tái)回復(fù):OpenCV實(shí)戰(zhàn)項(xiàng)目20講,即可下載含有20個(gè)基于OpenCV實(shí)現(xiàn)20個(gè)實(shí)戰(zhàn)項(xiàng)目,實(shí)現(xiàn)OpenCV學(xué)習(xí)進(jìn)階。

          交流群


          歡迎加入公眾號(hào)讀者群一起和同行交流,目前有SLAM、三維視覺(jué)、傳感器、自動(dòng)駕駛、計(jì)算攝影、檢測(cè)、分割、識(shí)別、醫(yī)學(xué)影像、GAN、算法競(jìng)賽等微信群(以后會(huì)逐漸細(xì)分),請(qǐng)掃描下面微信號(hào)加群,備注:”昵稱(chēng)+學(xué)校/公司+研究方向“,例如:”張三 + 上海交大 + 視覺(jué)SLAM“。請(qǐng)按照格式備注,否則不予通過(guò)。添加成功后會(huì)根據(jù)研究方向邀請(qǐng)進(jìn)入相關(guān)微信群。請(qǐng)勿在群內(nèi)發(fā)送廣告,否則會(huì)請(qǐng)出群,謝謝理解~


          瀏覽 47
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  成人黄色视频免费看 | 成人18禁秘 啪啪网站网站 | 大鷄巴成人A片 | 黄色电影在线看片 | 大香伊人啪啪 |