0
本文作者: AI研習(xí)社-譯站 | 2020-09-01 17:50 |
字幕組雙語(yǔ)原文:通過(guò)視頻著色進(jìn)行自監(jiān)督跟蹤
英語(yǔ)原文:Self-Supervised Tracking via Video Colorization
翻譯:雷鋒字幕組(李珺毅)
在本文中,我們將學(xué)習(xí)一種新穎的自監(jiān)督目標(biāo)跟蹤方法。自我監(jiān)督是模型自我學(xué)習(xí)的一種方法 ?,這本身就使得這個(gè)話題非常有趣。在這里,我們將看到如何學(xué)會(huì)自己跟蹤對(duì)象。我們將從基本的目標(biāo)跟蹤開(kāi)始,然后討論什么是計(jì)算機(jī)視覺(jué)的自我監(jiān)督學(xué)習(xí),最后詳細(xì)討論這種方法。
此方法的實(shí)現(xiàn)可以在這里找到。
用簡(jiǎn)單的語(yǔ)言描述它,可以理解為識(shí)別整個(gè)視頻序列中唯一的對(duì)象。要跟蹤的對(duì)象通常被稱為目標(biāo)對(duì)象。跟蹤可以通過(guò)邊界框或?qū)嵗指顏?lái)完成。有兩種類型的公共對(duì)象跟蹤挑戰(zhàn)。
單目標(biāo)跟蹤:在整個(gè)視頻序列中跟蹤感興趣的目標(biāo)。如VOT挑戰(zhàn)。
多目標(biāo)跟蹤:在整個(gè)視頻序列中跟蹤多個(gè)感興趣的目標(biāo),例如 MOT 挑戰(zhàn)。
一些著名經(jīng)典的用于解決目標(biāo)跟蹤C(jī)V算法的是 :
Mean shift
Optical flow
Kalman filters
SORT是最著名的多目標(biāo)跟蹤算法之一,它以卡爾曼濾波器為核心,并且非常成功。
隨著深度學(xué)習(xí)時(shí)代的到來(lái),非常創(chuàng)新的研究進(jìn)入了該研究領(lǐng)域,并且深度學(xué)習(xí)方法成功地勝過(guò)了傳統(tǒng)的CV方法來(lái)應(yīng)對(duì)公共跟蹤挑戰(zhàn)。 盡管在公共挑戰(zhàn)方面取得了巨大成功,但深度學(xué)習(xí)仍在努力為現(xiàn)實(shí)世界中的問(wèn)題陳述提供通用的解決方案。
在訓(xùn)練深度CNN模型時(shí),我們面臨的主要挑戰(zhàn)之一是訓(xùn)練數(shù)據(jù)。
訓(xùn)練數(shù)據(jù):深度學(xué)習(xí)方法需要大量數(shù)據(jù),而這幾乎每次都成為瓶頸。此外,像多目標(biāo)跟蹤這樣的任務(wù)很難注釋,而且這個(gè)過(guò)程變得不切實(shí)際,而且代價(jià)昂貴。
深度模型數(shù)據(jù)永遠(yuǎn)不嫌多
我們都知道監(jiān)督和非監(jiān)督學(xué)習(xí)技術(shù)。這是一種被稱為自監(jiān)督學(xué)習(xí)的新型學(xué)習(xí)方式。在這些類型的學(xué)習(xí)中,我們?cè)囍脭?shù)據(jù)中已經(jīng)存在的信息,而不是任何外部標(biāo)簽,或者有時(shí)我們說(shuō)模型是自己學(xué)習(xí)的。 在現(xiàn)實(shí)中,我們所做的是訓(xùn)練CNN模型去完成一些其他的任務(wù),這些任務(wù)間接地幫助我們實(shí)現(xiàn)目標(biāo),這個(gè)模型自我監(jiān)督。這些任務(wù)稱為”代理任務(wù)”或“借口任務(wù)”。
代理任務(wù)的幾個(gè)例子是:
顏色化
CNN模型學(xué)習(xí)從灰度圖像預(yù)測(cè)顏色。[資源鏈接]
將圖像補(bǔ)丁放在正確的位置
從圖像中提取補(bǔ)丁并將其打亂。模型學(xué)習(xí)如何解開(kāi)拼圖并按照正確 的順序排列,如圖3所示。[資源鏈接]
按正確的順序放置視頻幀
該模型學(xué)習(xí)在視頻序列中對(duì)打亂的幀進(jìn)行排序。[資源鏈接]
許多這樣的任務(wù)可以用作計(jì)算機(jī)視覺(jué)問(wèn)題的代理任務(wù)。此類訓(xùn)練的一個(gè)主要好處是,訓(xùn)練不需要手動(dòng)注釋數(shù)據(jù),并且適合解決現(xiàn)實(shí)生活中的用例。
我們已經(jīng)了解了什么是自監(jiān)督模型,您一定已經(jīng)猜到了我們將使用著色作為代理任務(wù)的名稱。
通過(guò)給視頻著色來(lái)實(shí)現(xiàn)跟蹤。 |
著色是代理任務(wù)或借口任務(wù),目標(biāo)跟蹤是主要任務(wù)或下游任務(wù)。采用大規(guī)模的無(wú)標(biāo)記視頻對(duì)模型進(jìn)行訓(xùn)練,不需要人工進(jìn)行任何單一像素的標(biāo)注。該模型利用視頻的時(shí)間相干性對(duì)灰度視頻進(jìn)行著色。這看起來(lái)可能有點(diǎn)混亂,但我會(huì)慢慢給大家講明白。
我們將取兩個(gè)幀,一個(gè)目標(biāo)幀(時(shí)刻t),一個(gè)參考幀(時(shí)刻t-1),并通過(guò)模型。該模型期望通過(guò)對(duì)參考幀顏色的先驗(yàn)知識(shí)來(lái)預(yù)測(cè)目標(biāo)幀的顏色。通過(guò)這種方式,模型內(nèi)部學(xué)會(huì)了指向正確的區(qū)域,以便從參考框架復(fù)制顏色,如圖所示。這種指向機(jī)制可以用作推理期間的跟蹤機(jī)制,我們將很快看到如何做到這一點(diǎn)。
模型接收一個(gè)彩色幀和一個(gè)灰度視頻作為輸入,并預(yù)測(cè)下一幀的顏色。模型學(xué)會(huì)從參考系復(fù)制顏色,這使得跟蹤機(jī)制可以在沒(méi)有人類監(jiān)督的情況下學(xué)習(xí)。[資源鏈接]
我們不復(fù)制網(wǎng)絡(luò)中的顏色,而是訓(xùn)練我們的CNN網(wǎng)絡(luò)學(xué)習(xí)目標(biāo)幀的像素與參考幀的像素之間的相似度(相似度在灰度像素之間),然后線性組合時(shí)使用此相似度矩陣參考幀中的真實(shí)顏色會(huì)給出預(yù)測(cè)的顏色。從數(shù)學(xué)上講,令C?為參考幀中每個(gè)像素i的真實(shí)顏色,而C?為目標(biāo)幀中每個(gè)像素j的真實(shí)顏色。 該模型給出了目標(biāo)框架和參考框架之間的相似度矩陣A??。 我們可以通過(guò)線性組合獲得預(yù)測(cè)的顏色y?。
公式1:預(yù)測(cè)顏色與參考顏色的線性組合
無(wú)論是圖像、參考幀還是目標(biāo)幀都經(jīng)過(guò)模型學(xué)習(xí)后對(duì)每個(gè)像素進(jìn)行了低層次的嵌入,這里f?是像素i在參考幀中的嵌入,類似地,f是像素j在目標(biāo)幀中的嵌入。然后,計(jì)算相似度矩陣:
公式2:用softmax歸一化的內(nèi)積相似度。
相似度矩陣中的每一行代表參考幀的所有像素i和目標(biāo)幀的像素j之間的相似性,因此為了使總權(quán)重為1,我們對(duì)每一行應(yīng)用softmax。
Lets look an example with dimension to make it clear,we try to find a similarity matrix of 1 pixel from target frame. An illustration of this example is shown below.Consider reference image and target image, size (5, 5) => (25,1)for each pixel, cnn gives embedding of size (64, 1) , embedding for reference frame, size (64, 25) , embedding for target frame, size (64, 25) , embedding for 3rd pixel in target frame, size (64, 1)Similarity Matrix, between reference frame and target pixel, j=2 =softmax , size (25, 64) (64, 1) => (25,1) => (5, 5) we get a similarity between all the ref pixels and a target pixel at j=2.Colorization, To copy the color (here, colours are not RGB but quantized colour of with 1 channel) from reference frame, , Colors of reference frame size (5, 5) => (25, 1) , Similarity matrix, size (5, 5) => (1, 25)Predicted color at j=2, , size (1, 25) (25, 1) => (1, 1)From the similarity matrix in below figure, we can see reference color at i=1 is dominant(0.46), thus we have a color copied for target, j=2 from reference, i=1PS:1. ? denotes transpose2. matrix indices starts from 0 |
(a)為2幀大小(5,5),(b)為參考幀嵌入與目標(biāo)像素在j =2處嵌入的內(nèi)積,(c) softmax后的相似度矩陣,(d)相似度矩陣與參考幀真顏色的線性組合[資源鏈接]
類似地,對(duì)于目標(biāo)幀中的每個(gè)目標(biāo)像素((5,5)=> 25個(gè)像素),我們將具有大小為(5,5)的相似度矩陣,即大小為(5,5,25)的完整相似度矩陣A?? =(25,25)。
在實(shí)現(xiàn)中,我們將使用(256 x 256)圖像擴(kuò)展相同的概念。
第一行顯示原始幀,第二行顯示來(lái)自實(shí)驗(yàn)室空間的ab顏色通道。第三行將顏色空間量化到離散的容器中,并打亂顏色,使效果更加明顯。[資源鏈接]
顏色的空間頻率較低,因此我們可以處理低分辨率的幀。 我們不需要C(255,3)顏色組合,因此我們創(chuàng)建16個(gè)聚類并將顏色空間量化為這些聚類。 現(xiàn)在,我們只有16種獨(dú)特的顏色簇(請(qǐng)參見(jiàn)上圖的第三列)。聚類使用k均值完成。 16個(gè)群集將丟失一些顏色信息,但足以識(shí)別對(duì)象。 我們可以增加聚類的數(shù)量來(lái)提高著色的精度,但要以增加計(jì)算為代價(jià)。
為了將圖像量化為簇,我們將使用LAB顏色空間而不是RGB顏色空間的AB通道。 上圖顯示了RGB和LAB通道間的相關(guān)性,我們可以從圖中得出結(jié)論:
RGB往往比LAB具有更多的相關(guān)性。
LAB將迫使模型學(xué)習(xí)不變性,它將迫使其學(xué)習(xí)更強(qiáng)大的表示形式,而不是依賴于本地顏色信息。
可以使用sklearn的KMeans軟件包進(jìn)行聚類。
這類將用于制作顏色的簇,我們將把它存儲(chǔ)為一個(gè)pickle。
注意:我使用pytorch來(lái)實(shí)現(xiàn),它遵循(N,C,H,W)格式。 處理矩陣重塑時(shí),請(qǐng)記住這一點(diǎn)。 如果您對(duì)形狀有任何疑問(wèn),請(qǐng)隨時(shí)與我們聯(lián)系。
該模型學(xué)習(xí)從參考幀為視頻幀著色。 [資源鏈接]
該模型的輸入是四個(gè)灰度視頻幀,其下采樣為256×256。三個(gè)參考幀和一個(gè)目標(biāo)幀。
首先,我們將所有培訓(xùn)視頻減少到6fps。 然后預(yù)處理框架以創(chuàng)建兩個(gè)不同的集合。 一種用于CNN模型,另一種用于著色任務(wù)。
- Video fps is reduced to 6 fpsSET 1 - for CNN Model- Down sampled to 256 x 256- Normalise to have intensities between [-1, 1]SET 2 - for Colourization- Convert to LAB colour space- Downsample to 32 x 32- Quantize in 16 clusters using k-means- Create one-hot vector corresponding to the nearest cluster centroid |
模型結(jié)構(gòu)
使用的主干是ResNet-18,因此結(jié)果與其他方法相當(dāng)。ResNet-18的最后一層被更新為尺寸輸出為32 x 32 x 256 然后將ResNet-18的輸出傳遞到3D轉(zhuǎn)換網(wǎng)絡(luò)中,最終輸出為32 x 32 x64。(下面的代碼塊顯示了從ResNet-18網(wǎng)絡(luò)獲取輸入的3D網(wǎng)絡(luò))
訓(xùn)練可以分為以下三個(gè)步驟:
1.網(wǎng)絡(luò)傳遞
我們將使用SET 1的預(yù)處理幀,即通過(guò)網(wǎng)絡(luò)傳遞大小為(256 x 256)的4個(gè)灰度幀,以獲得具有64個(gè)通道的(32 x 32)空間圖。 對(duì)于(32 x 32)圖像的每個(gè)像素,這可以解釋為64維嵌入。 因此,我們有四個(gè)這樣的像素級(jí)嵌入,三個(gè)用于參考圖像,一個(gè)用于目標(biāo)圖像 。
2. 相似度矩陣
通過(guò)這五個(gè)嵌入,我們?cè)趨⒖紟湍繕?biāo)幀之間找到了一個(gè)相似矩陣。 對(duì)于目標(biāo)幀中的像素,我們將獲得一個(gè)相似度值,其中所有三個(gè)參考幀中的所有像素均通過(guò)softmax歸一化為1。
3.色處理
我們將使用SET 2的預(yù)處理幀,即將四個(gè)降采樣為(32 x 32)并量化的幀用于著色。 將三個(gè)參考幀與相似度矩陣組合以獲得預(yù)測(cè)的量化幀。 我們發(fā)現(xiàn)了具有預(yù)測(cè)顏色的交叉熵?fù)p失(請(qǐng)記住,我們將幀量化為16個(gè)簇,現(xiàn)在我們有16種類別。我們發(fā)現(xiàn)了這些顏色的多類別交叉熵?fù)p失。)
跟蹤預(yù)測(cè)的例子 [資源鏈接]
在學(xué)習(xí)了著色任務(wù)之后,我們有了一個(gè)可以為一對(duì)目標(biāo)框架和參考框架計(jì)算相似度矩陣A??的模型。 現(xiàn)在,對(duì)于跟蹤的實(shí)際任務(wù),我們利用模型在標(biāo)簽空間中為非參數(shù)的屬性。我們只是簡(jiǎn)單地使用等式1進(jìn)行傳播,但是我們傳播類別的分布而不是傳播顏色。對(duì)于第一幀,我們具有真實(shí)框掩碼,我們將所有實(shí)例掩碼布置為一獨(dú)熱矢量c?(這類似于訓(xùn)練期間使用的量化顏色的一獨(dú)熱矢量)。將c?與我們的相似性矩陣A相結(jié)合,以找到掩碼的新位置,但請(qǐng)記住,隨后幾幀中的c?預(yù)測(cè)將變得很柔和,表明模型的置信度。 要做出艱難的決定,我們可以簡(jiǎn)單地選擇最自信的類別。 推理算法為:
WHILE (target frame, reference frames) in the videostep 1. Pass the target and reference frames through CNN modelstep 2. Find Similarity Matrixstep 3. Take ground truth object masks as one-hot encodingstep 4. Linear combine the object masks with similarity matrixstep 5. Update ground truth object masks by predicted masks |
讓我們討論一下,在某些情況下模型何時(shí)傾向于失敗(大多數(shù)情況下是著色失?。?,這意味著著色與跟蹤具有高度的相關(guān)性。
在以下情況下會(huì)發(fā)現(xiàn)一些故障:
當(dāng)光線在視頻中劇烈或頻繁變化時(shí) 。
該方法成功地跟蹤了小到中等遮擋情況下的目標(biāo),但在大遮擋情況下仍然無(wú)法跟蹤目標(biāo)。
物體大小的突然變化 。
在這里,我們看到了一個(gè)模型如何在沒(méi)有任何手動(dòng)注釋數(shù)據(jù)的情況下學(xué)習(xí)自己的模型。我們學(xué)習(xí)了如何在一些代理任務(wù)上訓(xùn)練CNN模型,并利用這種學(xué)習(xí)來(lái)完成實(shí)際任務(wù)。我們使用著色作為代理,但這并不局限于此,各種新的方法正在出現(xiàn)作為新的代理任務(wù)。自我監(jiān)督的方法是必要的,而且它們可以消除現(xiàn)實(shí)用例中昂貴的數(shù)據(jù)收集的主要約束。這種模式還不能擊敗當(dāng)前的最頂尖的監(jiān)督模型,但優(yōu)于許多其他模式。
就其方法和靈活性而言,該方法前景一片大好,憑借其優(yōu)勢(shì),自監(jiān)督模型很快將成為解決機(jī)器學(xué)習(xí)問(wèn)題的首選。 本文基于“ Google Research ”的研究成果, 我試圖根據(jù)我的知識(shí)和理解來(lái)解釋這項(xiàng)研究。
雷鋒字幕組是一個(gè)由 AI 愛(ài)好者組成的翻譯團(tuán)隊(duì),匯聚五百多位志愿者的力量,分享最新的海外AI資訊,交流關(guān)于人工智能技術(shù)領(lǐng)域的行業(yè)變革與技術(shù)創(chuàng)新的見(jiàn)解。
團(tuán)隊(duì)成員有大數(shù)據(jù)專家、算法工程師、圖像處理工程師、產(chǎn)品經(jīng)理、產(chǎn)品運(yùn)營(yíng)、IT咨詢?nèi)?、在校師生;志愿者們?lái)自IBM、AVL、Adobe、阿里、百度等知名企業(yè),北大、清華、港大、中科院、南卡羅萊納大學(xué)、早稻田大學(xué)等海內(nèi)外高校研究所。
如果,你也是位熱愛(ài)分享的AI愛(ài)好者。歡迎與雷鋒字幕組一起,學(xué)習(xí)新知,分享成長(zhǎng)。
雷鋒網(wǎng)雷鋒網(wǎng)
雷峰網(wǎng)版權(quán)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見(jiàn)轉(zhuǎn)載須知。