黑栗子 發自 凹非寺
量子位 報道 | 公眾號 QbitAI
這是黑客帝國,尼奧和史密斯雨中打鬥的樣子。
而目標追蹤AI要在光照急劇變化、物體形狀大小也不斷改變的場景裡,準確鎖定尼奧的頭。
紅色是商湯最新算法SiamRPN++的表現,它中選了CVPR 2019的Oral。
藍色是它的對手,來自ECCV 2018的優秀前輩UPDT。自古紅藍出CP。
動作太快,看不出紅藍誰更強?有截圖啊:
肉眼看去,商湯SiamRPN++更勝一籌,幾乎不受複雜場景的影響。
不止如此,它已經在多個數據集上成為了State-of-the-Art。
同時也成了商湯Siam家族的驕傲。現在,整個家族都開源了:
· SiamMask (CVPR 2019)
· SiamRPN++ (CVPR 2019 oral)
· DaSiamRPN (ECCV 2018)
· SiamRPN (CVPR 2018)
· SiamFC (ECCV 2016)
但這到底是一個怎樣的家族?
顯赫之家
Siam是Siamese的縮略,所以整個家族都是孿生網絡。
所謂孿生,就是兩個網絡的所有權重都一樣。
給它們輸入不同的數據,便可以測量兩個輸入的相似度,做分類之用。
經年累月,團隊死磕孿生網絡,用這類算法來做目標跟蹤。
在這之中,SiamRPN赫然挺立,中選了CVPR 2018的Spotlight。
SiamRPN:把檢測算法引入跟蹤
這隻AI的誕生,是因為團隊發現:雖然孿生網絡能對目標快速定位,但不能對目標框作出調整,也就不能調節目標的形狀。
可目標跟蹤並不是只要定一個點,目標所在的範圍也同樣重要。
於是,團隊為孿生網絡引入了區域推薦網絡 (RPN) 。
孿生網絡可以實現對目標的適應,利用被跟蹤目標的信息,完成檢測器的初始化;而RPN可以讓算法對目標位置 (範圍) 做出更精準的預測。
兩者結合,就有了可以端到端訓練的SiamRPN。除了算法上的創新之外,由於支持端到端訓練, (在VID之外) 大規模數據集Youtube-BB也成了它的訓練集,進一步提升性能。
於是,在OTB100、VOT15/16/17數據集上,SiamRPN都比基線算法SiamFC高出了5%以上,速度也更快。它被CVPR 2018選作了Spotlight。
DaSiamRPN:改進訓練集,增強判別能力
雖然,SiamRPN取得了好成績,但它是用VID和Youtube-BB訓練的:裡面的類別非常少,大概二三十類,很難勝任現實任務。
而COCO和ImageNet DET的檢測數據集,分別有80類和200類。且孿生網絡的訓練只需要圖像對,不用完整的視頻,所以輕鬆就把這些數據集引入了。
可引入之後又有新問題:這個網絡會對所有有語義的樣本進行響應,不只對目標物體有響應。比如目標是一個人,而AI遇到一把椅子也有很高的響應。
因為之前的訓練中,負樣本 (和目標無關的樣本) 只有背景信息,限制了網絡的判別能力。
於是,團隊改進了方法——增加一些有語意的負樣本對,來增強跟蹤器的判別能力。
這就是說,訓練過程中不再讓模板 (Template) 和搜索區域 (Search Region) 是相同目標;是讓網絡學習判別能力,去搜索區域裡找模版更相似的物體,而不是一個簡單的有語義的物體。
做了這樣的改動,DaSiamRPN可以從短時跟蹤拓展到長時跟蹤,且在UAV20L數據集上比之前成績最好的方法提高了6%。
DaSiamRPN被ECCV 2018收錄,且在VOT workshop比賽上,獲得了實時賽的冠軍,比上年冠軍提升了80%。
SiamRPN++:讓孿生網絡用上深度架構
算法也改過了,訓練集也改過了。
所以,團隊這一次瞄準了還沒改過的孿生網絡本身。
之前的孿生網絡,都是基於比較淺的卷積網絡 (比如AlexNet) 。但如果直接引入深度網絡,性能反而會大幅下降。
想有效利用深網絡,就要解決位置偏見的問題。於是,研究人員提出了“位置均衡的採樣策略”:
不把正樣本放在中心,而是以均勻分佈的採樣方式,讓目標在中心點附近進行偏移。
隨著偏移範圍增大,深度網絡慢慢開始發揮作用。不止可以跟蹤更多細節信息 (淺層網絡特徵) ,也能跟蹤更多語義信息 (深層網絡特徵) 。多層融合信息,來進一步提升性能。
除此之外,團隊還提出了新的連接部件,Depthwise Cross Correlation (下圖c) 。它可以極大減少參數量,平衡兩支的參數量,同時讓訓練更加穩定,也更好地收斂。
結果,SiamRPN++在5個大型跟蹤數據集上,都拿到了最好成績:OTB2015,VOT2018,UAV123,LaSOT,以及TrackingNet。
突破了孿生網絡和深度架構之間的障礙,這隻AI順理成章地中選了CVPR 2019的Oral。
大規模開源
這些孿生網絡,現在都開源了。
商湯發佈了一個叫做PySOT的目標跟蹤庫,基於PyTorch,把整個Siam家族裝了進去。回顧一下,包括這些模型:
· SiamMask (CVPR 2019)
· SiamRPN++ (CVPR 2019 oral)
· DaSiamRPN (ECCV 2018)
· SiamRPN (CVPR 2018)
· SiamFC (ECCV 2016)
PySOT庫提供了3種不同的backbone,有深有淺:
· ResNet{18, 34, 50}
· MobileNetV2
· AlexNet
模型評估,目前支持這些數據集:
· OTB2015
· VOT16/18/19
· VOT18-LT
· LaSOT
· UAV123
PySOT裡面,還包含了評估工具的接口。
所以,大家可以盡情探索了。
PySOT傳送門:
https://github.com/STVIR/pysot
SiamRPN論文傳送門:
http://openaccess.thecvf.com/content_cvpr_2018/papers/Li_High_Performance_Visual_CVPR_2018_paper.pdf
DaSiamRPN論文傳送門:
https://arxiv.org/abs/1808.06048
SiamRPN++論文傳送門:
https://arxiv.org/abs/1812.11703
— 完 —
誠摯招聘
量子位正在招募編輯/記者,工作地點在北京中關村。期待有才氣、有熱情的同學加入我們!相關細節,請在量子位公眾號(QbitAI)對話界面,回覆“招聘”兩個字。
量子位 QbitAI · 頭條號簽約作者
վ'ᴗ' ի 追蹤AI技術和產品新動態