溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

4種語義分割數(shù)據(jù)集Cityscapes上SOTA方法分別是什么

發(fā)布時間:2022-01-18 15:37:30 來源:億速云 閱讀:359 作者:柒染 欄目:大數(shù)據(jù)

4種語義分割數(shù)據(jù)集Cityscapes上SOTA方法分別是什么,針對這個問題,這篇文章詳細(xì)介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。


1 Cityscapes數(shù)據(jù)集介紹

Cityscapes評測數(shù)據(jù)集即城市景觀數(shù)據(jù)集,在2015年由奔馳公司推動發(fā)布,是目前公認(rèn)的機器視覺領(lǐng)域內(nèi)最具權(quán)威性和專業(yè)性的圖像分割數(shù)據(jù)集之一。Cityscapes擁有5000張精細(xì)標(biāo)注的在城市環(huán)境中駕駛場景的圖像(2975train,500 val,1525test)。它具有19個類別的密集像素標(biāo)注(97%coverage),其中8個具有實例級分割。具體類別名稱見于下表1。

4種語義分割數(shù)據(jù)集Cityscapes上SOTA方法分別是什么

表1 Cityscapes數(shù)據(jù)集中的類別名稱

2 Deep High-Resolution Representation Learning for Visual Recognition(HRNet)

2.1動機

當(dāng)前語義分割方法面臨3個挑戰(zhàn),其中第一個挑戰(zhàn)是基于FCN的分辨率由高到低會損失信息。

語義分割方法需要高分辨率特征,圖中1展示了幾種基于FCN的經(jīng)典方法的,它們的共同點通過一個網(wǎng)絡(luò)得到 低分辨 feature map,然后通過上采樣或反卷積恢復(fù)到高分辨率。

4種語義分割數(shù)據(jù)集Cityscapes上SOTA方法分別是什么

圖1 基于FCN方法的幾種經(jīng)典結(jié)構(gòu)

這些看起來不同,但本質(zhì)核心思路是差不多的。這些方法存在一個缺點,分辨率由高到低會損失信息!

2.2 模型結(jié)構(gòu)與核心代碼

為了解決2.1中的問題,作者團隊(MSRA和中科院)提出一個方法,核心思路是“不恢復(fù)高分辨率,而是保持分辨率”。如下圖2中是一個基本的高分辨率保持網(wǎng)絡(luò)結(jié)構(gòu),該結(jié)構(gòu)把不同分辨率的feature map并聯(lián),相同分辨率的占一條分支,不同分辨率的占不同分支。并在不同分支之間添加通路(圖中的斜線),形成high-resolution network。

4種語義分割數(shù)據(jù)集Cityscapes上SOTA方法分別是什么

圖2 基本的high-resolution network結(jié)構(gòu)

圖2中的機構(gòu)由4個stage組成,每一個藍底色塊為一個stage。在SOTA方法中,采用的是HRNet-W48,其結(jié)構(gòu)圖如圖3所示。

4種語義分割數(shù)據(jù)集Cityscapes上SOTA方法分別是什么

圖3 HRNet-W48結(jié)構(gòu)圖

HRNet V2-W48是在4個stage(圖3中藍、綠、紅、黃4種底色區(qū)域)的頭部加上stem net(圖3中白色底色區(qū)域),尾部加上segment head后(圖中未畫出)組成。下面按照先后順序依次對stem net、4個stage以及segment head進行介紹。

(1)stem net

stem net由兩個Bottelneck組成,與Resnet的結(jié)構(gòu)一樣,經(jīng)過兩個Bottelneck以后,輸入圖像的維度由H*W*3變成了(H/4)*(W/4)*256

(2)4個stage

  • 每個 stage 上的各個組件配置如下表2,以 hrnet_48 為例

  • stage之間通過transition_layer連接,stage內(nèi)由重復(fù)的基本單元HighResolutionModule組成。

  • HighResolutionModule由分支以及分支末尾的fuse_layers組成。

  • 每條分支內(nèi)由重復(fù)的basicblock組成,具體數(shù)量見表2

4種語義分割數(shù)據(jù)集Cityscapes上SOTA方法分別是什么

表2 HRNet-W48模型配置表

A:stage間的transition layer:完成 stage之間通道轉(zhuǎn)換和尺寸下采樣,即圖3中不同底色之間連接的直線和斜線stage之間的斜線,指向不做任何處理。

4種語義分割數(shù)據(jù)集Cityscapes上SOTA方法分別是什么

4種語義分割數(shù)據(jù)集Cityscapes上SOTA方法分別是什么

4種語義分割數(shù)據(jù)集Cityscapes上SOTA方法分別是什么

圖4 stage間的transition layer構(gòu)建代碼

B:構(gòu)建stage

每個stag均是有若干重復(fù)的HighResolutionModule組成,因此構(gòu)架stage的核心在與構(gòu)建HighResolutionModule。構(gòu)建HighResolutionModule分兩步:構(gòu)建分支、構(gòu)建分支末尾的fuse_layers。

構(gòu)建分支:圖3種的4個連續(xù)的basicblock即一個分支。

4種語義分割數(shù)據(jù)集Cityscapes上SOTA方法分別是什么

圖5 HighResolutionModule內(nèi)分支構(gòu)建代碼

構(gòu)建fuselayer:

以下圖中藍色框為例說明fuselayer層的處理過程:

4種語義分割數(shù)據(jù)集Cityscapes上SOTA方法分別是什么

圖6 fuselayer層

4種語義分割數(shù)據(jù)集Cityscapes上SOTA方法分別是什么

圖6 HighResolutionModule內(nèi)fuselayer層構(gòu)建代碼

3 Object-Contextual Representations for Semantic Segmentation(OCR)

3.1 動機

當(dāng)前語義分割方法面臨3個挑戰(zhàn)中第二個挑戰(zhàn)是沒有解決好物體上下文信息。

上下文特征:圖像中的每一個像素點不可能是孤立的,一個像素一定和周圍像素是有一定的關(guān)系的,大量像素的互相聯(lián)系才產(chǎn)生了圖像中的各種物體,所以上下文特征就指像素以及周邊像素的某種聯(lián)系。具體到圖像語義分割,就是在判斷某一個位置上的像素屬于哪種類別的時候,不僅考察到該像素的灰度值,還充分考慮和它臨近的像素。

當(dāng)前方法分析上下文信息如下圖7所示,比如說紅色點是我們關(guān)注的點,周圍綠色幾個點是采樣出來的,可以看到,綠色點分為兩部分,一部分是屬于車的,還有一部分是屬于背景的。當(dāng)前方法并沒有進行區(qū)分。

4種語義分割數(shù)據(jù)集Cityscapes上SOTA方法分別是什么

圖7 上下文信息圖

那我們該怎么辦?我們找這個物體,要通過周圍物體的象素表征來幫助。因此,我們需要把紅色像素周圍屬于 object 的pixel取出來做為上下文,如下圖8所示:

4種語義分割數(shù)據(jù)集Cityscapes上SOTA方法分別是什么

圖8 對象區(qū)域上下文信息圖

3.2 模型結(jié)構(gòu)與核心代碼

核心思路:OCR提出了一種新的關(guān)系上下文方法,該方法根據(jù)粗分割結(jié)果學(xué)習(xí)像素與對象區(qū)域特征之間的關(guān)系來增強像素特征的描述。模型結(jié)構(gòu)如下圖所示。

4種語義分割數(shù)據(jù)集Cityscapes上SOTA方法分別是什么

圖9 OCR模型結(jié)構(gòu)圖

計算步驟:

  • STEP1:獲得粗分割結(jié)果。

從backbone最后輸出的FM,在接上一組conv的操作,然后計算cross-entropy loss。

  • STEP2:獲得對象區(qū)域特征。

結(jié)合圖9中可知,該步驟需要兩個分支的tensor進行矩陣乘:

Tensor1:pixel representation,骨干網(wǎng)絡(luò)最后一層FM,維度為b×c×h×w->b×c×hw

Tensor2:soft object region,F(xiàn)M經(jīng)過softmax后的結(jié)果,維度為b×k×h×w->b×k×hw

將Tensor1和tensor2相乘后的輸出結(jié)果為b×k×c,b×k×c便是圖9中對象區(qū)域特征的表示。

4種語義分割數(shù)據(jù)集Cityscapes上SOTA方法分別是什么

圖10 對象區(qū)域特征計算代碼

  • STEP3:獲得pixel-region relation。

結(jié)合圖9中可知,該步驟需要兩個分支的tensor進行矩陣乘:

Tensor1:pixel representation,骨干網(wǎng)絡(luò)最后一層FM,維度為b×c×h×w->b×c×hw

Tensor2:STEP2中的對象區(qū)域特征,維度為b×k×c

代碼中將兩個tensor的維度進行了轉(zhuǎn)化,轉(zhuǎn)化兩個tensor的維度分別為b×key×hw和b×key×k。兩個tensor相乘后得到pixel-region relation的表達式為b×k×h×w。

  • STEP4:計算最終對象特征上下文表示。

結(jié)合圖9中可知,該步驟需要兩個分支的tensor進行矩陣乘:

Tensor1:STEP3中獲得的pixel-region relation,維度為b×k×h×w

Tensor2:STEP2中的對象區(qū)域特征,維度為b×k×c

兩個特征相乘后便得到對象上下文特征,即圖10中的紅色塊。

4種語義分割數(shù)據(jù)集Cityscapes上SOTA方法分別是什么

4種語義分割數(shù)據(jù)集Cityscapes上SOTA方法分別是什么

圖11 step2-step4中相關(guān)代碼

4 SegFix: Model-Agnostic Boundary Refinement for Segmentation(SegFix)

4.1SegFix的動機

基于FCN的方法面臨的第三個挑戰(zhàn)是邊緣分割不準(zhǔn)確。下圖12顯示了分割結(jié)果的誤差圖。下圖12中的第一列顯示了分割GT圖,第二列/第三/ 第四列分別顯示了DeepLabv3 / HRNet / Gated-SCNN的誤差圖。 這些示例是從Cityscapes val set中裁剪的。 我們可以看到,對于這三種方法,在細(xì)邊界上都存在許多錯誤。

4種語義分割數(shù)據(jù)集Cityscapes上SOTA方法分別是什么

圖12 模型分割結(jié)果誤差圖

基于經(jīng)驗觀察的結(jié)果,即內(nèi)部像素的標(biāo)簽預(yù)測更加可靠,因此用內(nèi)部像素的預(yù)測代替邊界像素的最初不可靠的預(yù)測,可能提高模型對邊緣的分割效果。提出了一種新穎的模型無關(guān)的后處理機制,通過將邊界像素的標(biāo)簽替換為對應(yīng)內(nèi)部像素的標(biāo)簽來減少分割結(jié)果,從而減少了邊界誤差。

4.2模型結(jié)構(gòu)與核心代碼

根據(jù)4.1中的描述,理所當(dāng)然的會牽引出兩個問題:(1)如何確定邊緣(2)如何關(guān)聯(lián)邊緣像素與內(nèi)部像素。這里借助于一個邊緣預(yù)測分支和一個方向預(yù)測分支來完成。在獲得良好的邊界和方向預(yù)測之后,就可以直接拿來優(yōu)化現(xiàn)有方法預(yù)測的分割圖了。所以另一問題在于,如何將現(xiàn)有的針對邊緣的關(guān)聯(lián)方向的預(yù)測應(yīng)用到實際的預(yù)測優(yōu)化上。這主要借助于一個坐標(biāo)偏移分支。這三個分支構(gòu)成了SegFix的主要結(jié)構(gòu),其結(jié)構(gòu)圖如圖13所示。

4種語義分割數(shù)據(jù)集Cityscapes上SOTA方法分別是什么

圖13 SegFix模型結(jié)構(gòu)圖

邊緣預(yù)測分支

4種語義分割數(shù)據(jù)集Cityscapes上SOTA方法分別是什么

方向預(yù)測分支

4種語義分割數(shù)據(jù)集Cityscapes上SOTA方法分別是什么

獲取真值:

4種語義分割數(shù)據(jù)集Cityscapes上SOTA方法分別是什么

4種語義分割數(shù)據(jù)集Cityscapes上SOTA方法分別是什么

坐標(biāo)偏移分支:

4種語義分割數(shù)據(jù)集Cityscapes上SOTA方法分別是什么

5 Hierarchical Multi-Scale Attention for Semantic Segmentation

5.1動機

大尺度物體在較小分辨率的特征圖上會分割的更好,而小尺度物體則需要精細(xì)的細(xì)節(jié)去推理分割結(jié)果,所以在較高分辨率的特征圖上進行預(yù)測結(jié)果會更好。且論文也舉例分析了此情況的緣由,如下圖所示。

4種語義分割數(shù)據(jù)集Cityscapes上SOTA方法分別是什么

圖12 不同尺寸物體在不同分辨率上的分割表現(xiàn)

因此本文采用注意力機制的方法讓網(wǎng)絡(luò)去學(xué)習(xí)如何最好地組合多個尺度的推理預(yù)測。非常直觀的做法就是輸入不同分辨率的圖片,讓網(wǎng)絡(luò)學(xué)習(xí)一下,什么樣的物體應(yīng)該用什么樣的分辨率。

5.2模型結(jié)構(gòu)

4種語義分割數(shù)據(jù)集Cityscapes上SOTA方法分別是什么

圖13 分層多尺度注意力機制

訓(xùn)練階段:

上面提出的attention機制與之前的某個方法類似(Attention to scale: Scale-aware semantic image segmentation,圖13中左側(cè)方法),對于每個尺度學(xué)習(xí)一個密集的mask,然后不同尺度的預(yù)測再結(jié)合起來,這些多尺度預(yù)測通過在mask之間進行像素相乘,然后在不同尺度之間進行像素求和,從而得到最終結(jié)果。

在本文的分層方法中,學(xué)習(xí)相鄰尺度之間的相對attention掩碼,而不是學(xué)習(xí)每個固定尺度集的所有attention掩碼。在訓(xùn)練網(wǎng)絡(luò)時,只訓(xùn)練相鄰尺度對。如上圖13所示,給出一組來自lower scale的特征圖,預(yù)測一個兩個圖像尺度之間的密集的相關(guān)attention。在實驗中,為了得到scaled圖像對,使用一個輸入圖像然后將其下采樣兩倍利用scale尺度2,這樣,就有一個1x的輸入和一個0.5x的縮放輸入,當(dāng)然其他scale-down尺度也可以選擇。需要注意的是,網(wǎng)絡(luò)輸入本身是原始訓(xùn)練圖像的重新縮放版本,因為我們在訓(xùn)練時使用圖像縮放增強。這使得網(wǎng)絡(luò)學(xué)會預(yù)測一個范圍內(nèi)的圖像尺度的相對注意力。

在訓(xùn)練過程中,給定的輸入圖像按因子r進行縮放,其中r= 0.5表示向下采樣按因子2進行,r= 2.0表示向上采樣按因子2進行,r= 1表示不進行操作。對于訓(xùn)練過程,選擇r= 0.5和r= 1.0。因此,對于兩種尺度的訓(xùn)練和推斷,以U為雙線性上采樣操作,將?和+分別作為像素級的乘法和加法,方程可以形式化為:

上式中注意力權(quán)重α的計算步驟:

1)獲得OCR模塊輸出的augmentations,即圖9中的正藍色塊。

2)見過若干次連續(xù)的conv-bn-relu后,獲得維度為b×1的向量

3)對b×1的向量進行sogmoid后,便獲得一個batch上的注意力權(quán)重α。

推理階段:

在推理階段,分層的應(yīng)用學(xué)到的注意力來結(jié)合N個不同的scale預(yù)測。關(guān)于各尺度的組合優(yōu)先考慮較低的scale,然后逐步上升到較高的scale,因為,它們具有更多的全局上下文信息,對于需要改進的scale可以使用更高scale的預(yù)測。

多尺度推理時,各尺度組合先后順序:{2.0,1.5,1.0,0.5}

4種語義分割數(shù)據(jù)集Cityscapes上SOTA方法分別是什么

關(guān)于4種語義分割數(shù)據(jù)集Cityscapes上SOTA方法分別是什么問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注億速云行業(yè)資訊頻道了解更多相關(guān)知識。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI