AI偽裝目標(biāo)檢測(cè):讓變色龍現(xiàn)出原形!
如今,隨著CV領(lǐng)域在深度學(xué)習(xí)方向上的發(fā)展,學(xué)者們把目光投向了目標(biāo)檢測(cè)這一領(lǐng)域。與通用目標(biāo)檢測(cè)以及顯著性目標(biāo)檢測(cè)不一樣,通用目標(biāo)檢測(cè)與顯著性目標(biāo)檢測(cè)中目標(biāo)與背景均有較為明顯的差異性,這種差異通常情況下通過(guò)人眼也能較容易地分辨出來(lái)。但偽裝目標(biāo)檢測(cè)中偽裝目標(biāo)與背景之間存在高度的相似性,因此關(guān)于偽裝目標(biāo)的檢測(cè)顯得更具挑戰(zhàn)性。
在我看來(lái),偽裝目標(biāo)的檢測(cè)與通用目標(biāo)檢測(cè)有所區(qū)別,但和顯著性目標(biāo)檢測(cè)有點(diǎn)類似,更多的是做語(yǔ)義分割,但不同于語(yǔ)義分割,偽裝目標(biāo)里的分割時(shí)一個(gè)二分類的問(wèn)題(即前景和背景的分割)顯著性目標(biāo)檢測(cè)把輸入圖像分為顯著物體和背景,偽裝目標(biāo)是分割為偽裝目標(biāo)和背景。鑒于顯著性目標(biāo)和偽裝目標(biāo)研究的相似性,于是我將顯著性目標(biāo)與偽裝目標(biāo)合在一起進(jìn)行研究。特征提取網(wǎng)絡(luò)與特征融合技術(shù)是我研究的重點(diǎn)。
關(guān)于偽裝目標(biāo)研究可應(yīng)用的領(lǐng)域十分廣闊,除了其學(xué)術(shù)價(jià)值外,偽裝物體檢測(cè)還有助于推動(dòng)諸如軍事上偽裝隱蔽目標(biāo)的搜索探測(cè)、醫(yī)學(xué)領(lǐng)域上病情的判斷以及農(nóng)業(yè)遙感中蝗蟲的入侵等等。
目前,由于缺乏規(guī)模足夠大的數(shù)據(jù)集,偽裝物體檢測(cè)的研究還不夠深入,所以目前所有的研究都是基于由南開大學(xué)團(tuán)隊(duì)為COD任務(wù)專門構(gòu)建出的COD10K數(shù)據(jù)集。
本次涉及三個(gè)方法,前兩個(gè)是針對(duì)顯著性目標(biāo)檢測(cè)所提出的,分別是EGNet和PFANet;而后面的是專門針對(duì)于偽裝目標(biāo)檢測(cè)提出的SINet。
首先對(duì)EGNet進(jìn)行介紹,EGNet,也稱為邊緣引導(dǎo)網(wǎng)絡(luò),顧名思義,我們知道他在保護(hù)邊緣信息上做了功夫,整個(gè)方法可以分為三個(gè)步驟,第一步是提取邊緣特征(PSFEM),第二步是將局部的邊緣信息和全局的位置信息聚合(NLSEM),最后一步則是將特征進(jìn)行平衡,得到我們想要的最后的特征(O2OGM)。
下面我們來(lái)詳細(xì)看一下各個(gè)結(jié)構(gòu),首先是PSFEM。EGNet采用的結(jié)構(gòu)是U-net的結(jié)構(gòu),將六個(gè)特征層,依次進(jìn)行卷積的操作,然后再經(jīng)過(guò)一個(gè)卷積層。從Conv3-3、Conv4-3、Conv5-3、Conv6-3四條路徑分別提取目標(biāo)不同層次的特征信息。其中從骨架最后一層的Conv6-3提取的特征卷積后與邊緣信息結(jié)合用于O2OGM模塊;Conv3-3、Conv4-3、Conv5-3、Conv6-3之間都一個(gè)從深層到上一淺層的連接(從Conv6-3開始,Conv3-3結(jié)束),用來(lái)豐富特征信息。
然后是NLSEM模塊,采用骨架中的Conv-2-2提取目標(biāo)的邊緣特征。不使用Conv1-2是因?yàn)槠涮咏斎雽樱ㄔ肼暥啵┎⑶移涓惺芤拜^小,不使用Conv3-3及更深的層提取邊緣特征是因?yàn)樗麄兯玫降膄eature map包含的邊緣信息較少,他們更多包含的是語(yǔ)義信息。
最后是O2OGM模塊,將Conv6-3提取的顯著性目標(biāo)特征信息與Conv2-2提取的邊緣特征結(jié)合后的特征分別與Conv3-3、Conv4-3、Conv5-3、Conv6-3每層提取的顯著性目標(biāo)特征進(jìn)行融合,即圖中FF模塊的操作。FF操作很簡(jiǎn)單,就是將高層特征上采樣然后進(jìn)行拼接的操作,就可以達(dá)到融合的效果。
PFANet的結(jié)構(gòu)相對(duì)簡(jiǎn)單,采用VGG網(wǎng)絡(luò)作為特征提取網(wǎng)絡(luò),然后將前兩層特征稱為低層特征,后三層特征稱為高層特征,對(duì)他們采用了不同的方式進(jìn)行特征增強(qiáng),以增強(qiáng)檢測(cè)效果。
首先是對(duì)于高層特征,先是采用了一個(gè)CPFE來(lái)增大感受野,然后再接一個(gè)通道注意力模塊,即完成了對(duì)高層特征的特征增強(qiáng)(這里的這個(gè)CPFE,其實(shí)就是ASPP)。
然后再對(duì)經(jīng)過(guò)了CPFE后的高層特征使用通道注意力(CA)。
以上即是高層特征的增強(qiáng)方法,而對(duì)于低層特征,處理得則更為簡(jiǎn)單,只需要使用空間注意力模塊(SA),即可完成。
整個(gè)PFANet的網(wǎng)絡(luò)結(jié)構(gòu)很清晰,如下圖所示。
介紹完EGNet和PFANet兩種方法以后,就剩下SINet了。SINet的思路來(lái)自于19年的一篇CVPR的文章《.Cascaded partial decoder for fast and accurate salient object detection》。這篇文章里提出了CPD的這樣一個(gè)結(jié)構(gòu),具體的可以取搜索一下這篇論文,詳細(xì)了解一下。
接下來(lái)我將介紹一個(gè)用于偽裝目標(biāo)檢測(cè)的網(wǎng)絡(luò)SINet。假設(shè)你是一頭饑腸轆轆的雄獅,此刻你掃視著周圍,視線突然里出現(xiàn)了兩匹斑馬,他們就是你今天的獵物,美食。確定好了目標(biāo)之后,那么就開始你的獵殺時(shí)刻。所以整個(gè)過(guò)程是你先掃視周圍,我們稱之為搜索,然后,就是確認(rèn)目標(biāo),開始獵殺,我們稱之為確認(rèn)。我們的SINet就是這樣的一個(gè)結(jié)構(gòu),他分為搜索和確認(rèn)兩個(gè)模塊,前者用于搜索偽裝目標(biāo),后者用于精確定位去檢測(cè)他。
我們現(xiàn)在就具體來(lái)看看我們的SINet到底是怎么一回事。首先,我們都知道低層特征有著較多的空間細(xì)節(jié),而我們的高層特征,卻有著較多的語(yǔ)義信息。所以低層的特征我們可以用來(lái)構(gòu)建目標(biāo)區(qū)域,而高層特征我們則可以用來(lái)進(jìn)行目標(biāo)定位。我們將這樣一張圖片,經(jīng)過(guò)一個(gè)ResNet的特征提取器。按照我們剛才的說(shuō)法,于是我們將前兩層稱為低層特征,最后兩層稱之為高層特征,而第三層我們稱之為中層特征。那么有了這樣的五層特征圖,東西已經(jīng)給我們了?我們?cè)撛趺慈ダ煤眠@些東西呢?
首先是我們的搜索模塊,通過(guò)特征提取,我們得到了這么一些特征,我們希望能夠從這些特征中搜索到我們想要的東西。那我們想要的是什么呢?自然就是我們的偽裝線索了。所以我們需要對(duì)我們的特征們做一些增強(qiáng)的處理,來(lái)幫助我們完成搜索的這樣一個(gè)任務(wù)。而我們用到的方法就是RF。我們來(lái)看一下具體是怎么樣實(shí)現(xiàn)的。首先我們把整個(gè)模塊分為5個(gè)分支,這五個(gè)分支都進(jìn)行了1×1的卷積降維,我們都知道,空洞卷積的提出,其目的就是為了增大感受野,所以我們對(duì)第一個(gè)分支進(jìn)行空洞數(shù)為3的空洞卷積,對(duì)第二個(gè)分支進(jìn)行空洞數(shù)為5的空洞卷積,對(duì)第3個(gè)分支進(jìn)行空洞數(shù)為7的空洞卷積,然后將前四個(gè)分支的特征圖拼接起來(lái),這時(shí)候,我們?cè)俨捎靡粋€(gè)1×1卷積降維的操作,與第五個(gè)分支進(jìn)行相加的操作,最后輸出增強(qiáng)后的特征圖。
這個(gè)RF的結(jié)構(gòu)來(lái)自于ECCV2018的一篇論文《 Receptive field block net for accurate and fast object detection》,其作用就是幫助我們獲得足夠的感受野。
我們用RF對(duì)感受野增大來(lái)進(jìn)行搜索,那么搜索過(guò)后,我們得到了增強(qiáng)后的候選特征。我們要從候選特征得到我們最后要的偽裝目標(biāo)的檢測(cè)結(jié)果,這里我們用到的方法是PDC模塊(即是部分解碼組件)。
具體操作是這樣的,所以接下來(lái)就應(yīng)該是對(duì)它們進(jìn)行處理了逐元素相乘方式來(lái)減少相鄰特征之間的差距。我們把RF增強(qiáng)后的特征圖作為輸入,輸入到網(wǎng)絡(luò)里面。首先對(duì)低層的進(jìn)行一個(gè)上采樣,然后進(jìn)行3×3的卷積操作(這里面包含了卷積層,BN層還有Relu層),然后與更高一層的特征圖進(jìn)行乘法的這樣一個(gè)操作,我們?yōu)槭裁词褂弥鹪叵喑四??因?yàn)橹鹪叵喑朔绞侥軠p少相鄰特征之間的差距。然后我們?cè)倥c輸入的低層特征進(jìn)行拼接。
我們前面提到了,我們利用增強(qiáng)后的特征通過(guò)PDC得到了我們想要得到的檢測(cè)結(jié)果,但這樣的一個(gè)結(jié)果足夠精細(xì)嗎?其實(shí),這樣得到的檢測(cè)結(jié)果是比較粗略的。這是為什么呢?這是因?yàn)槲覀兊奶卣髦g并不是有和偽裝檢測(cè)不相關(guān)的特征?對(duì)于這樣的多余的特征,我們要消滅掉。我們將前面得到的檢測(cè)圖稱之為 ,而我們要得到精細(xì)的結(jié)果圖 ,就得使用我們的注意力機(jī)制了。這里我們引入了搜索注意力,具體是怎么實(shí)現(xiàn)的呢?大家想一想我們前面把特征分成了低層特征、高層特征還有中層特征。我們平時(shí)一般都叫低層特征和高層特征,很少有提到中層特征的。其實(shí)我們這里這樣叫,是有打算的,我們認(rèn)為中層特征他既不像低層特征那么淺顯,也不像高層特征那樣抽象,所以我們對(duì)他進(jìn)行一個(gè)卷積操作(但是我們的卷積核用的是高斯核函數(shù)方差取32,核的尺寸我們?nèi)?,我們學(xué)過(guò)數(shù)字圖像處理,都知道這樣的一個(gè)操作能起到一個(gè)濾波的作用,我們的不相關(guān)特征能被過(guò)濾掉)但是有同學(xué)就會(huì)問(wèn)了,那你這樣一過(guò)濾,有用的特征不也過(guò)濾掉了嗎?基于這樣的考慮,我們把過(guò)濾后的特征圖與剛才的這個(gè) 再來(lái)做一個(gè)函數(shù),什么函數(shù)呢?就是一個(gè)最大化函數(shù),這樣我們不就能來(lái)突出偽裝圖 初始的偽裝區(qū)域了嗎?
SINet整體的框架如圖所示:
講了這么多,我們最后來(lái)看看實(shí)驗(yàn)的效果,通過(guò)對(duì)這三篇文章的復(fù)現(xiàn),我得到了下面的這樣一些結(jié)果。
可以看出,在精度指標(biāo)的評(píng)價(jià)方面,SINet相比于其他兩種方法都有很大提升,而PFANet模型結(jié)構(gòu)雖然很簡(jiǎn)單,但他的效果也是最差的。
下面我們?cè)倏纯纯梢暬男Ч?/span>
*博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請(qǐng)聯(lián)系工作人員刪除。
手機(jī)電池相關(guān)文章:手機(jī)電池修復(fù)