深度學習之目標跟蹤

2021-08-01 03:59:26 字數 2212 閱讀 3782

一. 跟蹤進展(advances in visual tracking)

作者在前面的機器學習文章中也講到了 tracking,感興趣的童鞋可以 review一下:機器學習實踐系列之5 - 目標跟蹤

前面只是基於傳統方法的跟蹤,這一篇我們 focus 在深度學習上。

關注跟蹤演算法的進展,只需要 follow vot challenge 就可以了,visual object tracking大餐全在這裡咯。閒話少說,上圖(盜用了 mengmeng wang ppt上的圖):

二. 引入cnn

cnn在分類、檢測領域火的一塌糊塗的時候,目標跟蹤貌似並未找到感覺,原因是顯而易見的:

1)由於跟蹤的特殊性,無法有效區分正負樣本,只有當前跟蹤的目標是正樣本,其餘crop均為副樣本,下乙個時候可能又會不同,這種特殊性導致很難訓練;

雖然如此,但人們相信 深度學習必然能解決 tracking的問題,而大量資料也應該在 tracking 領域發揮其價值。

三. multi-domain network (mdnet)

這是一篇經典文獻,提出乙個共享層(shared layers) + 多目標分支網路(domain-specific layers)來實現目標跟蹤。

md-net 實現的跟蹤,實際上是 通過在上一幀目標周圍進行candidate取樣,通過對候選目標分類,得到概率最大的乙個作為目標,其實就是 tracking by classification的思路。multi-domain 體現在訓練過程,提高了共享部分的特徵提取能力。

剖析一下網路組成:

1)input網路輸入是 107*107 的rgb影象(採集的candidate)。

2)shared layers

共享層包含3個卷積層+2個全連線層,共享層輸出為 512 channel 的 feature。

3)domain-specific layers

上圖 fc6對應乙個二分類的全連線層,通過 softmax crossentropy loss 區分目標和背景。

● 訓練過程:

1. 對整個network,訓練n次(文中n=100)

1.1 對於每個 branch網路 k( k=1...k ),do:

訓練乙個 mini-batch, 選擇32個正樣本 和 96個負樣本(負樣本從1024個負樣本中hard select得到),

● 跟蹤過程:

1. 對應每個待跟蹤目標,建立乙個 fc6 全連線層(記為 fc6-k,每個fc6 負責乙個目標,前面網路多個目標共享);

1.1. 對於輸入每一幀影象,在該目標位置附近取樣256個 box 作為candidates;

1.2. 所有candidate 歸一化到 107*107尺寸,輸入到訓練好的 md-net 網路(shared + fc6-k);

1.3. 網路輸出是乙個二維的向量(box id,目標概率),最終目標是概率值最高的box;

2. 每隔一段時間,根據得到的正負樣本(置信度較高的),進行網路更新;

mdnet 的特點概括為:

1)引入cnn,通過分類實現跟蹤;3)採用 hard negative mining 得到高質量的負樣本;4)bounding box regression 策略,通過回歸使得結果更加精確;

四. 公共資料集

object tracking benchmark

vot: 【2014】【2015】【2016】

基於深度學習的目標跟蹤

基於深度學習的目標檢測 基於深度學習的目標檢測綜述 目標檢測演算法匯聚 目標檢測演算法總結 10行 實現目標檢測 深度學習目標檢測 綜述 作者的個人理解 一刀流 tensorflow實現的目標檢測 有github 目標檢測演算法簡介,都是文字 內容摘要 r cnn是region based conv...

深度學習之多目標檢測與跟蹤

支援用自己的資料訓練模型。tensorflow實現,包含了以下部分 快速開始 四個步驟,速速上車。1.複製這個檔案 2.在使用 前,先安裝一些依賴項 cd tensorflow yolov3 pip install r docs requirements.txt3.把載入好的coco權重匯出為tf ...

黃金時代 深度學習 多目標跟蹤 2021

long term tracking with meta updater ltmu 2020 長時跟蹤資料集有 深度學習基礎的短時跟蹤,往往都從 one shot learning和online learning兩個角度 one shot學習如 siamfc siamrpn 等速度會更加快 splt...