吴忠躺衫网络科技有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

SiamRPN:High Performance Visual Tracking with Siamese Region Proposal Network 孿生網絡

jf_96884364 ? 來源:代碼的路 ? 作者: 代碼的路 ? 2023-01-11 17:41 ? 次閱讀

原文鏈接

論文地址:http://openaccess.thecvf.com/content_cvpr_2018/papers/Li_High_Performance_Visual_CVPR_2018_paper.pdf

摘要

大多數性能優越的視覺目標跟蹤器很難有實時速度。在這篇文章中,我們提出了孿生候選區域生成網絡(Siamese region proposal network),簡稱Siamese-RPN,它能夠利用大尺度的圖像對離線端到端訓練。具體來講,這個結構包含用于特征提取的 孿生子網絡 (Siamese subnetwork)和 候選區域生成網絡 (region proposal subnetwork),其中候選區域生成網絡包含分類回歸兩條支路。在跟蹤階段,我們提出的方法被構造成為單樣本檢測任務(one-shot detection task)。

我們預先計算孿生子網絡中的模板支路,也就是第一幀,并且將它構造成一個檢測支路中區域提取網絡里面的一個卷積層,用于在線跟蹤。得益于這些改良,傳統的多尺度測試和在線微調可以被舍棄,這樣做也大大提高了速度。Siamese-RPN跑出了160FPS的速度,并且在VOT2015,VOT2016和VOT2017上取得了領先的成績。

1.引言

與適當設計的最先進的基于相關濾波器的方法相比,基于離線訓練的基于深度學習的跟蹤器可以獲得較好的結果。關鍵是候選的孿生候選區域生成網絡(Siamese-RPN)。它由模板分支檢測分支組成,它們以端到端的方式對大規模圖像對進行離線訓練。受到最先進的候選區域提取方法RPN 的啟發,我們對相關feature map進行提議提取。與標準RPN不同,我們使用兩個分支的相關特征映射進行提議提取。在跟蹤任務中,我們沒有預定義的類別,因此我們需要模板分支將目標的外觀信息編碼到RPN要素圖中以區分前景和背景。

在跟蹤階段,作者將此任務視為單目標檢測任務(one-shot detection),什么意思呢,就是把第一幀的bb視為檢測的樣例,在其余幀里面檢測與它相似的目標。

綜上所述,作者的貢獻有以下三點:

1.提出了Siamese region proposal network,能夠利用ILSVRC和YouTube-BB大量的數據進行離線端到端訓練。

2.在跟蹤階段將跟蹤任務構造出局部單目標檢測任務。

3.在VOT2015, VOT2016和VOT2017上取得了領先的性能,并且速度能都達到160fps。

2.相關工作

2.1 RPN

RPN即Region Proposal Network,是用RON來選擇感興趣區域的,即proposal extraction。例如,如果一個區域的p>0.5,則認為這個區域中可能是80個類別中的某一類,具體是哪一類現在還不清楚。到此為止,網絡只需要把這些可能含有物體的區域選取出來就可以了,這些被選取出來的區域又叫做ROI(Region of Interests),即感興趣的區域。當然RPN同時也會在feature map上框定這些ROI感興趣區域的大致位置,即輸出Bounding Box。

RPN詳細介紹:https://mp.weixin.qq.com/s/VXgbJPVoZKjcaZjuNwgh-A

2.2 One-shot learning

最常見的例子就是人臉檢測,只知道一張圖片上的信息,用這些信息來匹配出要檢測的圖片,這就是單樣本檢測,也可以稱之為一次學習。

3 Siamese-RPN framework

3.1 SiamFC

SiamFC詳細介紹:https://mp.weixin.qq.com/s/kS9osb2JBXbgb_WGU_3mcQ

所謂的Siamese(孿生)網絡,是指網絡的主體結構分上下兩支,這兩支像雙胞胎一樣,共享卷積層的權值。上面一支(z)稱為模板分支(template),用來提取模板幀的特征。φ表示一種特征提取方法,文中提取的是深度特征,經過全卷積網絡后得到一個6×6×128的feature map φ(z)。下面一支(x)稱為檢測分支(search),是根據上一幀的結果在當前幀上crop出的search region。同樣提取了深度特征之后得到一個22×22×128的feature map φ(x)。模版支的feature map在當前幀的檢測區域的feature map上做匹配操作,可以看成是φ(z)在φ(x)上滑動搜索,最后得到一個響應圖,圖上響應最大的點就是對應這一幀目標的位置。

Siamese網絡的優點在于,把tracking任務做成了一個檢測/匹配任務,整個tracking過程不需要更新網絡,這使得算法的速度可以很快(FPS:80+)。此外,續作CFNet將特征提取和特征判別這兩個任務做成了一個端到端的任務,第一次將深度網絡和相關濾波結合在一起學習。

Siamese也有明顯的缺陷:

1.模板支只在第一幀進行,這使得模版特征對目標的變化不是很適應,當目標發生較大變化時,來自第一幀的特征可能不足以表征目標的特征。至于為什么只在第一幀提取模版特征,我認為可能因為:

(1)第一幀的特征最可靠也最魯棒,在tracking過程中無法確定哪一幀的結果可靠的情況下,只用第一幀特征足以得到不錯的精度。

(2)只在第一幀提取模板特征的算法更精簡,速度更快。

2.Siamese的方法只能得到目標的中心位置,但是得不到目標的尺寸,所以只能采取簡單的多尺度加回歸,這即增加了計算量,同時也不夠精確。

網絡訓練原理

如圖所示,上一幀的目標模板與下一幀的搜索區域可以構成很多對的模板-候選對(exemplar-candidate pair), 但是根據判別式跟蹤原理,僅僅下一幀的目標與上一幀的目標區域(即 exemplar of T frame-exemplar of T+1 frame)屬于模型的正樣本,其余大量的exemplar-candidate pair都是負樣本。這樣就完成了網絡結構的端到端的訓練。

3.2 Siamese-RPN

左邊是孿生網絡結構,上下支路的網絡結構和參數完全相同,上面是輸入第一幀的bounding box,靠此信息檢測候選區域中的目標,即模板幀。下面是待檢測幀,顯然,待檢測幀的搜索區域比模板幀的區域大。中間是RPN結構,又分為兩部分,上部分是分類支路,模板幀和檢測幀的經過孿生網絡后的特征再經過一個卷積層,模板幀特征經過卷積層后變為2k×256通道,k是anchor數量,因為分為兩類,所以是2k。下面是邊界框回歸支路,因為有四個量[x, y, w, h],所以是4k右邊是輸出。

3.3 孿生特征提取子網絡

預訓練的AlexNet,剔除了conv2 conv4兩層 。φ(z)是模板幀輸出,φ(x)是檢測幀輸出

3.4 候選區域提取子網絡

分類支路和回歸支路分別對模板幀和檢測幀的特征進行卷積運算:

A^{cls}{w×h×2k}=[\\psi(x)]{cls}×[\\psi(z)]{cls}\\
A^{reg}
{w×h×4k}=[\\psi(x)]{reg}×[\\psi(z)]{reg}

**A^{cls}{w×h×2k}**包含2k個通道向量,中的每個點表示正負激勵,通過交叉熵損失分類;**A^{reg}{w×h×4k}**包含4k個通道向量,每個點表示anchor和gt之間的dx,dy,dw,dh,通過smooth L1 損失得到:

\\delta[0]=\\frac{T_x-A_x}{A_w},
\\delta[1]=\\frac{T_y-A_y}{A_h}\\
\\delta[2]=ln\\frac{T_w}{A_w},
\\delta[3]=ln\\frac{T_h}{A_h}

Ax, Ay, Aw, Ah是anchor boxes中心點坐標和長寬; Tx, Ty, Tw, Th是gt boxes,為什么要這樣呢,因為不同圖片之間的尺寸存在差異,要對它們做正規化。

smoothL1損失:

smooth_{L1}(x,\\sigma)=\\begin{cases} 0.5\\sigma^2x^2, & \\text |x|<\\frac{1}{{\\sigma^2}} \\ |x|-\\frac{1}{{2\\sigma^2}}, & \\text |x|≥\\frac{1}{{\\sigma^2}} \\end{cases}

3.5 訓練階段:端到端訓練孿生RPN

因為跟蹤中連續兩幀的變化并不是很大,所以anchor只采用一種尺度,5種不同的長寬比(與RPN中的3×3個anchor不同)。當IoU大于0.6時是前景,小于0.3時是背景。

4. Tracking as one-shot detection

平均損失函數L:

\\min_{W'} \\frac{1}{n} \\sum_{i=1}^n L(\\psi(x_i;w(z_i,W')),l_i)

如上所述,讓z表示模板patch,x表示檢測patch,函數φ表示Siamese特征提取子網,函數ζ表示區域建議子網,則一次性檢測任務可以表示為:

\\min_{W} \\frac{1}{n} \\sum_{i=1}^n L(\\zeta(\\psi(x_i;W);\\psi(z_i;W)),l_i)

如圖,紫色的部分像原始的Siamese網絡,經過同一個CNN之后得到了兩個feature map,藍色的部分是RPN。模板幀在RPN中經過卷積層,** \\phi (x){reg}** 和 ** \\phi (x){cls}** 當作檢測所用的核。

簡單的說,就是預訓練模版分支,利用第一幀的目標特征輸出一系列weights,而這些weights,包含了目標的信息,作為檢測分支RPN網絡的參數去detect目標。這樣做的好處是:

(1)模板支能學到一個encode了目標的特征,用這個特征去尋找目標,這會比直接用第一幀的feature map去做匹配更魯棒。

(2)相比原始的Siamese網絡,RPN網絡可以直接回歸出目標的坐標和尺寸,既精確,又不需要像multi-scale一樣浪費時間。

經過網絡后,我們將分類和回歸特征映射表示為點集:

A^{cls}{w×h×2k}={(x_i^{cls},y_j^{cls},c_l^{cls})}\\
A^{reg}
{w×h×4k}={(x_i^{reg},y_i^{reg},dx_p^{reg},dy_p^{reg},dw_p^{reg},dh_p^{reg})}\\
i∈[0,w),j∈[0,h),l∈[0,2k),p∈[0,k)

由于分類特征圖上的奇數通道代表正激活,我們收集所有**A^{cls}_{w×h×2k}**中的前K個點,其中l是奇數,并表示點集為:

CLS^*={(x_i^{cls},y_j^{cls},c_l^{cls})_{i∈I,j∈J,l∈L}}

其中I,J,L是一些索引集。

變量i和j分別編碼相應錨點的位置,l編碼相應錨點的比率,因此我們可以導出相應的錨點集合為:

ANC^*={(x_i^{an},y_j^{an},w_l^{an},h_l^{an})_{i∈I,j∈J,l∈L}}

此外,我們發現**A^{cls}_{w×h×2k}**上ANC*的激活得到相應的細化坐標為:

FEG^*={(x_i^{reg},y_j^{reg},dx_l^{reg},dy_l^{reg},dw_l^{reg},dh_l^{reg})_{i∈I,j∈J,l∈L}}

因為是分類,**A^{cls}_{w×h×2k}**選前k個點,分兩步選擇:

第一步,舍棄掉距離中心太遠的bb,只在一個比原始特征圖小的固定正方形范圍里選擇,如下圖:

中心距離為7,仔細看圖可以看出,每個網格都有k個矩形。

第二步,用余弦窗(抑制距離過大的)和尺度變化懲罰(抑制尺度大變化)來對proposal進行排序,選最好的。具體公式可看論文。

用這些點對應的anchor box結合回歸結果得出bounding box:

x_i^{pro}=x_i^{an}+dx_l^{reg}*w_l^{an}

y_j^{pro}=y_j^{an}+dy_l^{reg}*h_l^{an}\\

w_l^{pro}=w_l^{an}*e^{dw_l}\\

h_l^{pro}=h_l^{an}*e^{dh_l}

an就是anchor的框,pro是最終得出的回歸后的邊界框 至此,proposals set就選好了。

然后再通過非極大抑制(NMS),顧名思義,就是將不是極大的框都去除掉,由于anchor一般是有重疊的overlap,因此,相同object的proposals也存在重疊。為了解決重疊proposal問題,采用NMS算法處理:兩個proposal間IoU大于預設閾值,則丟棄score較低的proposal。

IoU閾值的預設需要謹慎處理,如果IoU值太小,可能丟失objects的一些 proposals;如果IoU值過大,可能會導致objects出現很多proposals。IoU典型值為0.6。

5.實施細節

我們使用從ImageNet [28]預訓練的改進的AlexNet,前三個卷積層的參數固定,只調整Siamese-RPN中的最后兩個卷積層。這些參數是通過使用SGD優化等式5中的損耗函數而獲得的。共執行了50個epoch,log space的學習率從10-2降低到10-6。我們從VID和Youtube-BB中提取圖像對,通過選擇間隔小于100的幀并執行進一步的裁剪程序。如果目標邊界框的大小表示為(w,h),我們以大小A×A為中心裁剪模板補丁,其定義如下:

(w+p)×(h+p)=A^2

其中p =(w + h)/2

之后將其調整為127×127。以相同的方式在當前幀上裁剪檢測補丁,其大小是模板補丁的兩倍,然后調整為255×255。

在推理階段,由于我們將在線跟蹤制定為一次性檢測任務,因此沒有在線適應。我們的實驗是在帶有Intel i7,12G RAM,NVidia GTX 1060的PC上使用PyTorch實現的。

學習更多編程知識,請關注我的公眾號:

[代碼的路]

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 神經網絡
    +關注

    關注

    42

    文章

    4779

    瀏覽量

    101169
  • 圖像處理
    +關注

    關注

    27

    文章

    1300

    瀏覽量

    56893
  • 機器學習
    +關注

    關注

    66

    文章

    8438

    瀏覽量

    133084
收藏 人收藏

    評論

    相關推薦

    HIP5061 HIGH EFFICIENCY, HIGH PERFORMANCE,HIGH POWER CONVERTER

    efficiency, high performance andhigh power converters continues to expand. Demand forsmaller, lighter
    發表于 05-12 11:13

    high performance stereo routin

    high performance stereo routing switcher
    發表于 04-18 20:37 ?48次下載
    <b class='flag-5'>high</b> <b class='flag-5'>performance</b> stereo routin

    Designing a High Performance S

    Designing a High Performance SDRAM Controller Using ispMACH Devices Synchronous DRAMs have become
    發表于 05-14 11:03 ?28次下載

    Designing a High Performance S

    Designing a High Performance SDRAM Controller Using ispMACH Devices Synchronous DRAMs have become
    發表于 06-14 08:55 ?24次下載

    High-performance RF design for

    High-performance RF design for PXI:PXI presents a significant opportunity for RF instrumentation.
    發表于 07-23 22:50 ?11次下載

    GC5325 Envelope Tracking

    Solutiondevice operating in conjunction with a Nujira High Accuracy Tracking (HAT) Voltage Modulator in anEnvelope Tr
    發表于 07-08 17:40 ?13次下載

    Use high-performance simultane

    This application note will help the designer of high-performance multichannel data acquisition
    發表于 07-04 12:15 ?7701次閱讀
    Use <b class='flag-5'>high-performance</b> simultane

    文本匹配任務中常用的孿生網絡

    Siamese”中的“Siam”是古時泰國的稱呼,中文譯作暹羅,所以“Siamese”就是指“暹羅”人或“泰國”人。“Siamese”在英語中同時表示“孿生”,這又是為什么呢?
    的頭像 發表于 03-05 15:47 ?3684次閱讀
    文本匹配任務中常用的<b class='flag-5'>孿生</b><b class='flag-5'>網絡</b>

    基于信息熵的級聯Siamese網絡目標跟蹤方法

    目標跟蹤是計算機視覺領域的一個重要研究方向,針對目前算法對于目標外觀變化的魯棒性較差等問題,提出了一種基于信息熵的級聯 Siamese網絡目標跟蹤方法。首先利用孿生神經網絡
    發表于 05-07 14:11 ?1次下載

    RPN:Region Proposal Networks (區域候選網絡)

    圖片在輸入網絡后,依次經過一系列卷積+ReLU得到的51×39×256維feature map,準備后續用來選取proposal
    的頭像 發表于 01-11 16:55 ?1443次閱讀
    RPN:<b class='flag-5'>Region</b> <b class='flag-5'>Proposal</b> Networks (區域候選<b class='flag-5'>網絡</b>)

    SiamFC:用于目標跟蹤的全卷積孿生網絡 fully-convolutional siamese networks for object tracking

    原文鏈接 SiamFC網絡 圖中z代表的是模板圖像,算法中使用的是第一幀的ground truth;x代表的是search region,代表在后面的待跟蹤幀中的候選框搜索區域;?代表的是一種特征
    的頭像 發表于 01-11 17:35 ?1550次閱讀
    SiamFC:用于目標跟蹤的全卷積<b class='flag-5'>孿生</b><b class='flag-5'>網絡</b> fully-convolutional <b class='flag-5'>siamese</b> networks for object <b class='flag-5'>tracking</b>

    SiamRPN++: Evolution of Siamese Visual Tracking with Very Deep Networks 深層網絡連體視覺跟蹤的演變

    /SiamRPN_plus_plus_PyTorch 摘要 基于孿生網絡的跟蹤器將跟蹤表述為目標模板和搜索區域之間的卷積特征互相關。然而孿生網絡
    的頭像 發表于 01-11 17:52 ?1174次閱讀
    <b class='flag-5'>SiamRPN</b>++: Evolution of <b class='flag-5'>Siamese</b> <b class='flag-5'>Visual</b> <b class='flag-5'>Tracking</b> with Very Deep Networks  深層<b class='flag-5'>網絡</b>連體視覺跟蹤的演變

    SA-Siam:用于實時目標跟蹤的孿生網絡A Twofold Siamese Network for Real-Time Object Tracking

    /He_A_Twofold_Siamese_CVPR_2018_paper.pdf 摘要 1.本文核心一:將圖像分類任務中的 語義特征 (Semantic features) 與相似度匹配任務中的 外觀特征(Appearance features)互補結合,非常適合
    的頭像 發表于 01-11 17:54 ?1098次閱讀
    SA-Siam:用于實時目標跟蹤的<b class='flag-5'>孿生</b><b class='flag-5'>網絡</b>A Twofold <b class='flag-5'>Siamese</b> <b class='flag-5'>Network</b> for Real-Time Object <b class='flag-5'>Tracking</b>

    DW-Siam:Deeper and Wider Siamese Networks for Real-Time Visual Tracking 更寬更深的孿生網絡

    原文鏈接 論文地址:https://arxiv.org/pdf/1901.01660.pdf 摘要 目前在孿生網絡追蹤器中使用的主干網絡相對較淺,例AlexNet。本文研究如何利用更深和更廣的卷積
    的頭像 發表于 01-12 09:24 ?906次閱讀
    DW-Siam:Deeper and Wider <b class='flag-5'>Siamese</b> Networks for Real-Time <b class='flag-5'>Visual</b> <b class='flag-5'>Tracking</b> 更寬更深的<b class='flag-5'>孿生</b><b class='flag-5'>網絡</b>

    GA-RPN:Region Proposal by Guided Anchoring 引導錨點的建議區域網絡

    Detection Toolbox and Benchmark 1.RPN RPN即Region Proposal Network,是用RON來選擇感興趣區域的,即proposal
    的頭像 發表于 01-12 09:32 ?765次閱讀
    GA-RPN:<b class='flag-5'>Region</b> <b class='flag-5'>Proposal</b> by Guided Anchoring 引導錨點的建議區域<b class='flag-5'>網絡</b>
    百家乐官网电子| 苏尼特左旗| 百家乐重要心态| 武城县| 荷规则百家乐的玩法技巧和规则 | 澳门百家乐官网职业赌客| 赌场百家乐怎么破解| 百家乐官网赢家电子书| 南通热线棋牌中心| 百家乐最好打法与投注| 赌场百家乐官网技巧| 大发888送58体验金| 百家乐现实赌场| 百家乐官网游戏的玩法| 大发888com| 百家乐游戏试玩免费| 百家乐官网游戏开发软件| 大发888娱乐城备用网址| 百家乐有方法赚反水| 百家乐官网网上投注代理商| 大发888通宝| 百家乐澳门路规则算法| 百家乐官网筹码真伪| 网上梭哈| 百家乐平玩法可以吗| 博坊百家乐游戏| 澳门百家乐官网技巧皇冠网 | 大发888开户| 百家乐智能软件| 百家乐官网娱乐平台网77scs| 皇冠网赌球安全吗| Bet百家乐娱乐城| 百家乐冯氏坐庄法| 乐天堂百家乐官网娱乐场| 真人网上娱乐城| 太阳城娱乐总站| 百家乐积分| 金满堂百家乐官网的玩法技巧和规则 | 劳力士百家乐官网的玩法技巧和规则| 百家乐官网会骗人吗| 大发888娱乐城备用网址|