日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > 綜合技術 > 論文閱讀:SSD: Single Shot MultiBox Detector

論文閱讀:SSD: Single Shot MultiBox Detector

來源:程序員人生   發布時間:2016-10-10 08:15:24 閱讀次數:9657次

Preface

這是今年 ECCV 2016 的1篇文章,是 UNC Chapel Hill(北卡羅來納大學教堂山分校) 的 Wei Liu 大神的新作,論文代碼:https://github.com/weiliu89/caffe/tree/ssd

這里寫圖片描述

有幾點更新:
1. 看到1篇 blog 對檢測做了1個總結、搜集,強烈推薦: Object Detection
2. 還有,今天在微博上看到 VOC2012 的榜單又被刷新了,微博原地址為:這里,以下圖:

這里寫圖片描述
3. 目前 voc 2012 的榜單 以下:
這里寫圖片描述

做目標檢測這塊的多關注哦~


Abstract

這篇文章在既保證速度,又要保證精度的情況下,提出了 SSD 物體檢測模型,與現在流行的檢測模型1樣,將檢測進程全部成1個 single deep neural network。便于訓練與優化,同時提高檢測速度。

SSD 將輸出1系列 離散化(discretization) 的 bounding boxes,這些 bounding boxes 是在 不同層次(layers) 上的 feature maps 上生成的,并且有著不同的 aspect ratio

在 prediction 階段

  • 要計算出每個 default box 中的物體,其屬于每一個種別的可能性,即 score,得分。如對 PASCAL VOC 數據集,總共有 20 類,那末得出每個 bounding box 中物體屬于這 20 個種別的每種的可能性。

  • 同時,要對這些 bounding boxes 的 shape 進行微調,以使得其符合物體的 外接矩形

  • 還有就是,為了處理相同物體的不同尺寸的情況,SSD 結合了不同分辨率的 feature maps 的 predictions。

相對那些需要 object proposals 的檢測模型,本文的 SSD 方法完全取消了 proposals generation、pixel resamplingfeature resampling 這些階段。這樣使得 SSD 更容易去優化訓練,也更容易地將檢測模型融會進系統當中。

在 PASCAL VOC、MS COCO、ILSVRC 數據集上的實驗顯示,SSD 在保證精度的同時,其速度要比用 region proposals 的方法要快很多。

SSD 相比較于其他單結構模型(YOLO),SSD 獲得更高的精度,即是是在輸入圖象較小的情況下。如輸入 300×300 大小的 PASCAL VOC 2007 test 圖象,在 Titan X 上,SSD 以 58 幀的速率,同時獲得了 72.1% 的 mAP。

如果輸入的圖象是 500×500,SSD 則獲得了 75.1% 的 mAP,比目前最 state-of-art 的 Faster R-CNN 要好很多。


Introduction

現金流行的 state-of-art 的檢測系統大致都是以下步驟,先生成1些假定的 bounding boxes,然后在這些 bounding boxes 中提取特點,以后再經過1個分類器,來判斷里面是否是物體,是甚么物體。

這類 pipeline 自從 IJCV 2013, Selective Search for Object Recognition 開始,到如今在 PASCAL VOC、MS COCO、ILSVRC 數據集上獲得領先的基于 Faster R-CNN 的 ResNet 。但這類方法對嵌入式系統,所需要的計算時間太久了,不足以實時的進行檢測。固然也有很多工作是朝著實時檢測邁進,但目前為止,都是犧牲檢測精度來換取時間。

本文提出的實時檢測方法,消除中間的 bounding boxes、pixel or feature resampling 的進程。雖然本文不是第1篇這樣做的文章(YOLO),但是本文做了1些提升性的工作,既保證了速度,也保證了檢測精度。

這里面有1句非常關鍵的話,基本概括了本文的核心思想:

Our improvements include using a small convolutional filter to predict object categories and offsets in bounding box locations, using separate predictors (filters) for different aspect ratio detections, and applying these filters to multiple feature maps from the later stages of a network in order to perform detection at multiple scales.

本文的主要貢獻總結以下:

  • 提出了新的物體檢測方法:SSD,比本來最快的 YOLO: You Only Look Once 方法,還要快,還要精確。保證速度的同時,其結果的 mAP 可與使用 region proposals 技術的方法(如 Faster R-CNN)相媲美。

  • SSD 方法的核心就是 predict object(物體),和其 歸屬種別的 score(得分);同時,在 feature map 上使用小的卷積核,去 predict 1系列 bounding boxes 的 box offsets

  • 本文中為了得到高精度的檢測結果,在不同層次的 feature maps 上去 predict objectbox offsets,同時,還得到不同 aspect ratio 的 predictions。

  • 本文的這些改進設計,能夠在當輸入分辨率較低的圖象時,保證檢測的精度。同時,這個整體 end-to-end 的設計,訓練也變得簡單。在檢測速度、檢測精度之間獲得較好的 trade-off

  • 本文提出的模型(model)在不同的數據集上,如 PASCAL VOC、MS COCO、ILSVRC, 都進行了測試。在檢測時間(timing)、檢測精度(accuracy)上,均與目前物體檢測領域 state-of-art 的檢測方法進行了比較。


The Single Shot Detector(SSD)

這部份詳細講授了 SSD 物體檢測框架,和 SSD 的訓練方法。

這里,先弄清楚下文所說的 default boxfeature map cell 是甚么。看下圖:

  • feature map cell 就是將 feature map 切分成 8×84×4 以后的1個個 格子

  • 而 default box 就是每個格子上,1系列固定大小的 box,即圖中虛線所構成的1系列 boxes。

這里寫圖片描述


Model

SSD 是基于1個前向傳播 CNN 網絡,產生1系列 固定大小(fixed-size) 的 bounding boxes,和每個 box 中包括物體實例的可能性,即 score。以后,進行1個 非極大值抑制(Non-maximum suppression) 得到終究的 predictions。

SSD 模型的最開始部份,本文稱作 base network,是用于圖象分類的標準架構。在 base network 以后,本文添加了額外輔助的網絡結構:

  • Multi-scale feature maps for detection
    在基礎網絡結構后,添加了額外的卷積層,這些卷積層的大小是逐層遞減的,可以在多尺度下進行 predictions。

  • Convolutional predictors for detection
    每個添加的特點層(或在基礎網絡結構中的特點層),可使用1系列 convolutional filters,去產生1系列固定大小的 predictions,具體見 Fig.2。對1個大小為 m×n,具有 p 通道的特點層,使用的 convolutional filters 就是 3×3×p 的 kernels。產生的 predictions,那末就是歸屬種別的1個得分,要末就是相對 default box coordinate 的 shape offsets。
    在每個 m×n 的特點圖位置上,使用上面的 3×3 的 kernel,會產生1個輸出值。bounding box offset 值是輸出的 default box 與此時 feature map location 之間的相對距離(YOLO 架構則是用1個全連接層來代替這里的卷積層)。

  • Default boxes and aspect ratios
    每個 box 相對與其對應的 feature map cell 的位置是固定的。 在每個 feature map cell 中,我們要 predict 得到的 boxdefault box 之間的 offsets,和每個 box 中包括物體的 score(每個種別幾率都要計算出)。
    因此,對1個位置上的 k 個boxes 中的每個 box,我們需要計算出 c 個類,每個類的 score,還有這個 box 相對 它的默許 box 的 4 個偏移值(offsets)。因而,在 feature map 中的每個 feature map cell 上,就需要有 (c+4)×kfilters。對1張 m×n 大小的 feature map,即會產生 (c+4)×k×m×n 個輸出結果。

這里的 default box 很類似于 Faster R-CNN 中的 Anchor boxes,關于這里的 Anchor boxes,詳細的參見原論文。但是又不同于 Faster R-CNN 中的,本文中的 Anchor boxes 用在了不同分辨率的 feature maps 上。

這里寫圖片描述


Training

在訓練時,本文的 SSD 與那些用 region proposals + pooling 方法的區分是,SSD 訓練圖象中的 groundtruth 需要賦予到那些固定輸出的 boxes 上。在前面也已提到了,SSD 輸出的是事前定義好的,1系列固定大小的 bounding boxes。

以下圖中,狗狗的 groundtruth 是紅色的 bounding boxes,但進行 label 標注的時候,要將紅色的 groundtruth box 賦予 圖(c)中1系列固定輸出的 boxes 中的1個,即 圖(c)中的紅色虛線框。

這里寫圖片描述

事實上,文章中指出,像這樣定義的 groundtruth boxes 不止在本文中用到。在 YOLO 中,在 Faster R-CNN 中的 region proposal 階段,和在 MultiBox 中,都用到了。

當這類將訓練圖象中的 groundtruth 與固定輸出的 boxes 對應以后,就能夠 end-to-end 的進行 loss function 的計算和 back-propagation 的計算更新了。

訓練中會遇到1些問題:

  • 選擇1系列 default boxes

  • 選擇上文中提到的 scales 的問題

  • hard negative mining

  • 數據增廣的策略

下面會談本文的解決這些問題的方式,分為以下下面的幾個部份。

Matching strategy

如何將 groundtruth boxes 與 default boxes 進行配對,以組成 label 呢?

在開始的時候,用 MultiBox 中的 best jaccard overlap 來匹配每個 ground truth box 與 default box,這樣就可以保證每個 groundtruth box 與唯1的1個 default box 對應起來。

但是又不同于 MultiBox ,本文以后又將 default box 與任何的 groundtruth box 配對,只要二者之間的 jaccard overlap 大于1個閾值,這里本文的閾值為 0.5。

Training objective

SSD 訓練的目標函數(training objective)源自于 MultiBox 的目標函數,但是本文將其拓展,使其可以處理多個目標種別。用 xpij=1 表示 i 個 default box種別 pj 個 ground truth box 相匹配,否則若不匹配的話,則 xpij=0

根據上面的匹配策略,1定有 ixpij1,意味著對 j 個 ground truth box,有可能有多個 default box 與其相匹配。

總的目標損失函數(objective loss function)就由 localization loss(loc)confidence loss(conf) 的加權求和:

L(x,c,l,g)=1N(Lconf(x,c)+αLloc(x,l,g))


其中:

  • N 是與 ground truth box 相匹配的 default boxes 個數

  • localization loss(loc) 是 Fast R-CNN 中 Smooth L1 Loss,用在 predict box(lground truth box(g 參數(即中心坐標位置,width、height)中,回歸 bounding boxes 的中心位置,和 width、height

  • confidence loss(conf) 是 Softmax Loss,輸入為每類的置信度 c

  • 權重項 α,設置為 1


Choosing scales and aspect ratios for default boxes

大部份 CNN 網絡在越深的層,feature map 的尺寸(size)會愈來愈小。這樣做不單單是為了減少計算與內存的需求,還有個好處就是,最后提取的 feature map 就會有某種程度上的平移與尺度不變性。

同時為了處理不同尺度的物體,1些文章,如 ICLR 2014, Overfeat: Integrated recognition, localization and detection using convolutional networks,還有 ECCV 2014, Spatial pyramid pooling in deep convolutional networks for visual recognition,他們將圖象轉換成不同的尺度,將這些圖象獨立的通過 CNN 網絡處理,再將這些不同尺度的圖象結果進行綜合。

但是其實,如果使用同1個網絡中的、不同層上的 feature maps,也能夠到達相同的效果同時在所有物體尺度中同享參數

之前的工作,如 CVPR 2015, Fully convolutional networks for semantic segmentation,還有 CVPR 2015, Hypercolumns for object segmentation and fine-grained localization 就用了 CNN 前面的 layers,來提高圖象分割的效果,由于越底層的 layers,保存的圖象細節越多。文章 ICLR 2016, ParseNet: Looking wider to see better 也證明了以上的想法是可行的。

因此,本文同時使用 lower feature maps、upper feature maps 來 predict detections。下圖展現了本文中使用的兩種不同尺度的 feature map,8×8 的feature map,和 4×4 的 feature map:

這里寫圖片描述

1般來講,1個 CNN 網絡中不同的 layers 有著不同尺寸的 感受野(receptive fields)。所幸的是,SSD 結構中,default boxes 沒必要要與每層 layer 的 receptive fields 對應。本文的設計中,feature map 中特定的位置,來負責圖象中特定的區域,和物體特定的尺寸。加入我們用 m 個 feature maps 來做 predictions,每個 feature map 中 default box 的尺寸大小計算以下:

sk=smin+smax?sminm?1
生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 国产高清免费视频 | 久久av一区二区 | 黄色毛片免费看 | 亚洲综合色自拍一区 | 亚洲精品一区二区在线 | 国产激情一区二区三区在线观看 | 久久久久久国产精品免费免费狐狸 | 久久亚洲愉拍国产自367391 | 欧美精品成人一区二区在线观看 | 青草福利| 99热99精品 | 中文字幕三区 | 玖玖色资源 | 日韩毛片免费看 | 国产成人在线一区二区 | 亚洲在线中文字幕 | 亚洲91视频 | 午夜成人在线视频 | 国产精品99| 精品粉嫩aⅴ一区二区三区四区 | 欧美一区二 | 精品一区二区国产 | 一区二区精品在线 | 久久久www成人免费精品张筱雨 | av资源网在线观看 | 久久精品久久久 | www.激情 | 久久久久成人精品 | 亚洲第一区在线 | 久久国产精品首页 | 久久看片网| 欧美三区 | 在线v片| 亚洲欧美视频一区 | 天堂网在线最新版www中文网 | 国产免费一级特黄录像 | 欧美日韩精品免费 | 免费成人黄色网址 | 日韩精品1区2区3区 精品视频首页 | 毛片网页 | 日韩综合精品 |