0
本文作者: AI研習(xí)社-譯站 | 2019-02-20 10:03 |
本文為 AI 研習(xí)社編譯的技術(shù)博客,原標(biāo)題 :
Image Segmentation Overview & ENet Implementation
作者 | Aviv Shamsian
翻譯 | sherry3255、alexchung
校對(duì) | 鄧普斯·杰弗 審核 | 醬番梨 整理 | 立魚王
原文鏈接:
https://medium.com/@mista2311/image-segmentation-overview-enet-implementation-8394ff71cf26
在這篇博文中,我將概述圖像分割并介紹ENet論文。
論文鏈接:
https://s3-us-west-2.amazonaws.com/mlsurveys/54.pdf
?庫鏈接:
https://github.com/iArunava/ENet-Real-Time-Semantic-Segmentation
在計(jì)算機(jī)視覺領(lǐng)域中,將一幅數(shù)字圖像分割為多個(gè)組成部分(一系列像素,或所熟知的超像素)的過程即為圖像分割。分割的目標(biāo)就是簡(jiǎn)化并/或變換可以將圖像轉(zhuǎn)換為更有意義和更易分析的內(nèi)容的表達(dá)。圖像分割通常被用來定位圖像中目標(biāo)和邊界(線、曲面)的位置。更準(zhǔn)確地說,圖像分割是為圖像中的每一個(gè)像素打上標(biāo)簽,其中具有相同標(biāo)簽的像素具有相同特征。在圖像分割領(lǐng)域中有多種技術(shù):
基于區(qū)域的分割技術(shù)
邊界檢測(cè)分割技術(shù)
基于聚類的分割技術(shù)
過去,提出了很多不同的算法來進(jìn)行圖像分割,有:
閾值技術(shù)--該技術(shù)的主要目的在于確定圖像的最佳閾值。強(qiáng)度值超過閾值的像素其強(qiáng)度將變?yōu)?,其余像素的強(qiáng)度值將變?yōu)榱悖詈笮纬梢粋€(gè)二值圖。用于選擇閾值的方法有:Otsu,k均值聚類,和最大熵法。
運(yùn)動(dòng)與交互分割--該技術(shù)基于圖像中的運(yùn)動(dòng)來進(jìn)行分割。其思想很直觀,在假設(shè)目標(biāo)是運(yùn)動(dòng)的情況下找出兩幅圖中的差異,那么不同之處一定就是目標(biāo)位置。
邊界檢測(cè)--包含多種數(shù)學(xué)方法,其目的在于標(biāo)出數(shù)字圖像中處于圖像亮度變化劇烈,或者更正式的講,具有不連貫性的區(qū)域中的點(diǎn)。由于區(qū)域邊界和邊具有很高關(guān)聯(lián)性,因此邊界檢測(cè)通常是另一種分割技術(shù)的前提步驟。
區(qū)域增長方法--主要建立在同一區(qū)域中相鄰像素具有相近像素值的假設(shè)之上。常見步驟為將像素與其近鄰像素作比較,如果滿足相似性標(biāo)準(zhǔn),則該像素就可以被劃分到以一個(gè)或更多其近鄰點(diǎn)組成的聚類中去。相似性標(biāo)準(zhǔn)的選擇很關(guān)鍵,并且在所有實(shí)例中其結(jié)果易受到噪聲影響。
還有很多用于圖像分割的方法在上文中未提及,比如雙聚類方法、快速匹配法、分水嶺變換法等等。
UNet--u-net是用來快速準(zhǔn)確的分割圖像的一種卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)。到目前為止,在ISBI挑戰(zhàn)中,該網(wǎng)絡(luò)較先前最好的模型(一種基于滑動(dòng)窗口的卷積網(wǎng)絡(luò))已在分割電子顯微鏡下神經(jīng)元結(jié)構(gòu)的任務(wù)中取得了更好的效果。在2015年ISBI大會(huì)上,它贏得了計(jì)算機(jī)自動(dòng)檢測(cè)咬翼片中重齲病的大挑戰(zhàn),并且在很大程度上(參見我們的公告)可被認(rèn)為是兩個(gè)最具挑戰(zhàn)性的透射光顯微鏡類別上(相位對(duì)比度和DIC顯微鏡),贏得了細(xì)胞跟蹤的挑戰(zhàn)。
SegNet--SegNet由編碼器和解碼器構(gòu)成,但沒有全連接層。SegNet是一個(gè)包含全卷積網(wǎng)絡(luò)(FCN)的13 VGG16卷積層。
Mask R-CNN--Faster R-CNN采用一個(gè)CNN特征提取其來提取圖像特征。然后使用CNN區(qū)域建議網(wǎng)絡(luò)來生成感興趣區(qū)域(Roi)。我們應(yīng)用RoI池化層將它們打包以形成固定維度。然后將其作為全連接層的輸入來進(jìn)行分類和邊界框預(yù)測(cè)。
全分辨率殘差網(wǎng)絡(luò)(FRRN)--FRRN通過執(zhí)行必要的額外處理步驟來獲取全圖像分辨率下像素精度的分割掩碼。
金字塔場(chǎng)景解析網(wǎng)絡(luò)(PSPNet)--全分辨率殘差網(wǎng)絡(luò)的計(jì)算非常密集,應(yīng)用在全尺度照片上非常緩慢。為了解決這個(gè)問題,PSPNet采用了4種不同的最大池化操作,這些操作分別對(duì)應(yīng)4種不同的窗口大小和步長。使用最大池化層可以更有效地提取不同尺度中特征信息。
DeepLabv3+ --先前的網(wǎng)絡(luò)可以通過使用不同變化率的過濾器和池操作來編碼多尺度上下文信息。更新的網(wǎng)絡(luò)可以通過恢復(fù)空間信息來捕捉更清晰的目標(biāo)邊界。DeepLabv3+結(jié)合了這兩種方法。DeepLabv3+同時(shí)采用了編碼器、解碼器和空間金字塔池化模塊。
ENet(Efficient Neural Network)提供了執(zhí)行實(shí)時(shí)逐像素語義分割的能力。ENet的執(zhí)行速度快了18倍,且需要的浮點(diǎn)運(yùn)算次數(shù)少了75倍,同時(shí)參數(shù)減少了79倍,并且提供了與現(xiàn)有模型對(duì)比相似或更高的精度(根據(jù)2016年)。在CamVid, CityScapes 和SUN數(shù)據(jù)集執(zhí)行測(cè)試。
模型體系結(jié)構(gòu)由初始?jí)K和五個(gè)bottlenecks組成。 前三個(gè)bottlenecks用于編碼輸入圖像,另外兩個(gè)用于解碼輸入圖像。
每個(gè)bottlenecks模塊包含:
1x1 投影可降低維度
主卷積層(conv)(任意常規(guī)、膨脹或者全卷積)(3x3)
1x1 擴(kuò)張
在所有卷積層之間進(jìn)行批量標(biāo)準(zhǔn)化和PReLU
如果bottleneck是降采樣,則將最大池化層添加到主分支。同時(shí)使用步長為2的 2x2 的卷積替換第一個(gè) 1x1的投影。
它們零填充激活以匹配功能圖的數(shù)量。
卷積有時(shí)候是非對(duì)稱卷積,例如一系列5 * 1 的卷積與1 * 5的卷積。
他們使用空間Dropout進(jìn)行正則化:
p = 0.01,在 bottleneck2.0前
p = 0.1,之后
如果你想要訓(xùn)練ENet模型并一次性復(fù)現(xiàn)結(jié)果,你可以通過閱讀原文查看鏈接打開筆記本并運(yùn)行它。無需下載既可運(yùn)行和用。
如果喜歡, 不要忘記鼓掌, 標(biāo)星 和 fork這個(gè)項(xiàng)目!!!!
https://github.com/iArunava/ENet-Real-Time-Semantic-Segmentation
想要繼續(xù)查看該篇文章相關(guān)鏈接和參考文獻(xiàn)?
長按鏈接點(diǎn)擊打開或點(diǎn)擊【圖像分割概述&ENet實(shí)例】:
https://ai.yanxishe.com/page/TextTranslation/1469
AI研習(xí)社每日更新精彩內(nèi)容,觀看更多精彩內(nèi)容:雷鋒網(wǎng)雷鋒網(wǎng)雷鋒網(wǎng)
等你來譯:
游戲 AI 入門指南
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。