丁香五月天婷婷久久婷婷色综合91|国产传媒自偷自拍|久久影院亚洲精品|国产欧美VA天堂国产美女自慰视屏|免费黄色av网站|婷婷丁香五月激情四射|日韩AV一区二区中文字幕在线观看|亚洲欧美日本性爱|日日噜噜噜夜夜噜噜噜|中文Av日韩一区二区

您正在使用IE低版瀏覽器,為了您的雷峰網(wǎng)賬號(hào)安全和更好的產(chǎn)品體驗(yàn),強(qiáng)烈建議使用更快更安全的瀏覽器
此為臨時(shí)鏈接,僅用于文章預(yù)覽,將在時(shí)失效
人工智能開發(fā)者 正文
發(fā)私信給AI研習(xí)社
發(fā)送

17

十分鐘看懂圖像語義分割技術(shù)

本文作者: AI研習(xí)社 編輯:賈智龍 2017-05-03 16:12
導(dǎo)語:圖像語義分割真的沒你想的那么難。

大多數(shù)人接觸 “語義” 都是在和文字相關(guān)的領(lǐng)域,或語音識(shí)別,期望機(jī)器能夠識(shí)別你發(fā)出去的消息或簡(jiǎn)短的語音,然后給予你適當(dāng)?shù)姆答伜突貜?fù)。嗯,看到這里你應(yīng)該已經(jīng)猜到了,圖像領(lǐng)域也是存在 “語義” 的。

今天是 AI 大熱年,很多人都關(guān)注與機(jī)器人的語音交互,可是有沒有想過,將來的機(jī)器人如果不能通過圖像來識(shí)別主人,家里的物品、寵物,那該多沒意思。說近一些,假如掃地機(jī)器人能夠機(jī)智地繞開你丟在地上的臭襪子而掃走旁邊的紙屑,一定能為你的生活解決不少麻煩。

沒錯(cuò),圖像語義分割是 AI 領(lǐng)域中一個(gè)重要的分支,是機(jī)器視覺技術(shù)中關(guān)于圖像理解的重要一環(huán),是不是聽上去即重要又牛 X 閃閃的。

近年的自動(dòng)駕駛技術(shù)中,也需要用到這種技術(shù)。車載攝像頭探查到圖像,后臺(tái)計(jì)算機(jī)可以自動(dòng)將圖像分割歸類,以避讓行人和車輛等障礙。

十分鐘看懂圖像語義分割技術(shù)


十分鐘看懂圖像語義分割技術(shù)

圖像語義分割

圖像語義分割的意思就是機(jī)器自動(dòng)分割并識(shí)別出圖像中的內(nèi)容,比如給出一個(gè)人騎摩托車的照片,機(jī)器判斷后應(yīng)當(dāng)能夠生成右側(cè)圖,紅色標(biāo)注為人,綠色是車(黑色表示 back ground)。

十分鐘看懂圖像語義分割技術(shù)

所以圖像分割對(duì)圖像理解的意義,就好比讀古書首先要斷句一樣。

在 Deeplearning 技術(shù)快速發(fā)展之前,就已經(jīng)有了很多做圖像分割的技術(shù),其中比較著名的是一種叫做 “Normalized cut” 的圖劃分方法,簡(jiǎn)稱 “N-cut”。

N-cut 的計(jì)算有一些連接權(quán)重的公式,這里就不提了,它的思想主要是通過像素和像素之間的關(guān)系權(quán)重來綜合考慮,根據(jù)給出的閾值,將圖像一分為二。

下圖是將像素間的關(guān)系信息簡(jiǎn)單描述成為距離,根據(jù)距離差距來劃分圖像的示例:

十分鐘看懂圖像語義分割技術(shù)

在實(shí)際運(yùn)用中,每運(yùn)行一次 N-cut,只能切割一次圖片,為了分割出圖像上的多個(gè)物體,需要多次運(yùn)行,下圖示例了對(duì)原圖 a 進(jìn)行 7 次 N-cut 后,每次分割出的結(jié)果。

十分鐘看懂圖像語義分割技術(shù)

但是可以很明顯的看到這種簡(jiǎn)單粗暴的分割方式并不準(zhǔn)確,趴在地上的運(yùn)動(dòng)員肢體在 b 圖中分割出來,而他的手臂則在 h 圖中被分割,顯然是錯(cuò)誤的。

N-cut 技術(shù)的缺陷很明顯,于是有了一種更新的優(yōu)化方式,這種優(yōu)化方式為了避免機(jī)器不能很好的分割類似上面例子中 “衣服和肢體顏色反查太大導(dǎo)致分割錯(cuò)誤” 的情況,增加了人機(jī)交互,在分割過程中,需要人工干預(yù)參與完成。

這種需要人機(jī)交互的技術(shù)叫 Grab Cut。

[敲黑板]~~ 注意,PS 里就使用了這種技術(shù)。

這種技術(shù)其實(shí)是這樣的,給定一張圖片,然后人工在想要摳圖(也就是我們說的分割)的區(qū)域畫一個(gè)紅框,然后機(jī)器會(huì)對(duì)略小于這個(gè)框的內(nèi)容進(jìn)行 “主體計(jì)算”,嗯,這個(gè) “主體計(jì)算” 是我起的名字,為了你們更好的理解背后復(fù)雜的設(shè)計(jì)和公式,因?yàn)闄C(jī)器會(huì)默認(rèn)紅框中部是用戶期望得到的結(jié)果,所以將中部作為主體參考,然后剔除和主體差異較大的部分,留下結(jié)果。

十分鐘看懂圖像語義分割技術(shù)

此技術(shù)中,摳出來的部分叫 “前景”,剔除的部分叫 “背景”。

有時(shí)候還挺好用的,但是稍微復(fù)雜一點(diǎn)的時(shí)候問題就來了:比如要摳下面這個(gè)戴頭盔的大兵,頭盔顏色和背后巖石顏色很相近,結(jié)果機(jī)器就會(huì)把頭盔部分剔除,同樣脖子附近的山巖也被當(dāng)做了前景而保留了進(jìn)來。

十分鐘看懂圖像語義分割技術(shù)

此時(shí)又需要進(jìn)行人工干預(yù)了,需要手動(dòng)在圖像上進(jìn)行標(biāo)注,畫白色線表示是希望保留的前景,紅色表示背景,指導(dǎo)輔助機(jī)器進(jìn)行判斷,再次運(yùn)算后,得到了較好的期望結(jié)果。

雖然看上去 Grab Cut 給出的結(jié)果還不錯(cuò),但缺點(diǎn)也很明顯,首先,它同 N-cut 一樣也只能做二類語義分割,說人話就是一次只能分割一類,非黑即白,多個(gè)目標(biāo)圖像就要多次運(yùn)算。其次,它需要人工干預(yù),這個(gè)弱點(diǎn)在將來批量化處理和智能時(shí)代簡(jiǎn)直就是死穴

OK,人類的智慧是無止境的,DeepLearning(深度學(xué)習(xí))終于開始大行其道了。

深度學(xué)習(xí)

深度學(xué)習(xí)是機(jī)器學(xué)習(xí)的一個(gè)分支,主要指深度神經(jīng)網(wǎng)絡(luò)算法,深度神經(jīng)網(wǎng)絡(luò)比普通神經(jīng)網(wǎng)絡(luò)層次更多,能夠更好地捕捉數(shù)據(jù)中的深層次關(guān)系,得到的模型較為準(zhǔn)確,主要用來進(jìn)行特征學(xué)習(xí)。

先別急著暈,我們先來看看神經(jīng)網(wǎng)絡(luò)是怎么工作的。

神經(jīng)網(wǎng)絡(luò)是模仿人的神經(jīng)元而建立的人工神經(jīng)元系統(tǒng),多輸入單輸出,同時(shí)輸出又作為下一個(gè)神經(jīng)元的輸入……(請(qǐng)自行腦補(bǔ)那張牙舞爪妖孽的神經(jīng)元細(xì)胞~ 什么?沒見過?文科生,拖出去~~)

下圖表示的是一個(gè)單個(gè)神經(jīng)元:

十分鐘看懂圖像語義分割技術(shù)

把這些單個(gè)神經(jīng)元組織在一起,便形成了神經(jīng)網(wǎng)絡(luò)。下圖便是一個(gè)三層神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu):

十分鐘看懂圖像語義分割技術(shù)

上圖中最左邊的原始輸入信息稱之為輸入層,最右邊的神經(jīng)元稱之為輸出層(上圖中輸出層只有一個(gè)神經(jīng)元),中間的叫隱藏層。

深度神經(jīng)網(wǎng)絡(luò)系統(tǒng)中的層數(shù)比較多,達(dá)到 8-10 層(普通神經(jīng)網(wǎng)絡(luò)的層數(shù)通常 3-4 層)。

在此前使用的圖像識(shí)別算法中,主流的技術(shù)是卷積神經(jīng)網(wǎng)絡(luò)算法(Convolutional Neural Networks),簡(jiǎn)稱 CNN。卷積神經(jīng)網(wǎng)絡(luò)就是一種深度神經(jīng)網(wǎng)絡(luò)。

但是在 2015 年的 CVPR 上發(fā)表了一篇很牛 X 的論文(路人甲:請(qǐng)問 CVPR 是神馬?答:CVPR 可以簡(jiǎn)單理解為這個(gè)領(lǐng)域的最重量級(jí)的會(huì)議:國(guó)際計(jì)算機(jī)視覺與模式識(shí)別會(huì)議),提出了 FCN 即 全卷積神經(jīng)網(wǎng)絡(luò)(Fully Convolutional Networks)。

為什么說這個(gè) FCN 論文很牛叉呢?看起來只是多了一個(gè)字而已呀,有什么不得了的呢?

嗯,不得不說,真是 “差之毫厘,謬以千里” 啊。

我還是先來幫大家復(fù)習(xí)一下卷積。

我查了很多書,卷積有各種各樣的公式,還有各種各樣的推導(dǎo)算法,但是為了降低本文的難讀指數(shù),所以我直接跳到卷積的物理意義,不要太 care 那些公式,其實(shí)卷積的物理意義,就是 “加權(quán)疊加”。

在對(duì)圖像處理進(jìn)行卷積時(shí),根據(jù)卷積核的大小,輸入和輸出之間也會(huì)有規(guī)模上的差異。

來看一張動(dòng)圖(僅做示例)

十分鐘看懂圖像語義分割技術(shù)

上圖左邊 5*5 的方塊視為圖像輸入,黃色移動(dòng)的 3*3 以及里面的數(shù)字(*1/*0)是卷積核,該卷積核按照步長(zhǎng)為 1 的順序依次從原始輸入的左上角一直移動(dòng)計(jì)算疊加到右下角,卷積核一共移動(dòng) 9 次。

九次的位置對(duì)應(yīng)到右側(cè)的 3*3 的相應(yīng)格內(nèi),格中的數(shù)字便是卷積值,(此處是卷積核所覆蓋的面積內(nèi)元素相乘再累加的結(jié)果)。

9 次移動(dòng)計(jì)算完畢后,右側(cè) 3*3 的新矩陣為此次卷積層的計(jì)算結(jié)果。

如果這么說還是不太好理解,沒關(guān)系,我有更直觀的辦法 ^_^。

在實(shí)際計(jì)算過程中,輸入是一張?jiān)紙D片和濾波器 filter(一組固定的權(quán)重,也就是上面我們說的卷積核對(duì)應(yīng)的實(shí)際意義)做內(nèi)積后得到新的二維數(shù)據(jù)。

不同的濾波器 filter 會(huì)得到不同的輸出數(shù)據(jù),比如輪廓、顏色深淺,如果想提取圖像的不同特征,需要用不同的濾波器 filter 提取想要的關(guān)于圖像的特定信息。

十分鐘看懂圖像語義分割技術(shù)

上圖為一個(gè)卷積層中的卷積處理過程,注意上下兩次卷積核內(nèi)容是不同的,所以得到兩種處理結(jié)果。

等號(hào)右邊的新的二維信息在 CNN 網(wǎng)絡(luò)中,會(huì)作為下一個(gè)卷積層的輸入,即在下一個(gè)卷積層計(jì)算時(shí),右邊的圖像會(huì)作為輸入的原始圖像。

在 CNN 網(wǎng)絡(luò)中,一共會(huì)進(jìn)行 5 次卷積層計(jì)算。

路人甲:那最后會(huì)得到一個(gè)什么鬼?

沈 MM:咳咳,在連續(xù)的 5 個(gè)卷積層計(jì)算后,緊跟這的是 3 個(gè)全連接層。

路人甲:什么是全連接層?

沈 MM:全連接層,并不是一個(gè)二維圖像,而是—— 一個(gè)一維向量

路人甲已哭暈在廁所。

這三個(gè)一維向量的前兩個(gè)向量長(zhǎng)度是 4096,最后一個(gè)向量長(zhǎng)度是 1000.

為什么是 1000?

因?yàn)樵?CNN 網(wǎng)絡(luò)中,有 1000 個(gè)分類,最后的這個(gè)向量中的 1000 個(gè)元素表達(dá)的信息是:這張?jiān)驾斎雸D片中的東西可能是這 1000 個(gè)分類中的物體的概率。

是的,一張圖,算了半天,最后給出的是,這張圖是個(gè)什么玩意的答案。

十分鐘看懂圖像語義分割技術(shù)

右側(cè)綠色箭頭指向的表示最后一個(gè)全連接層的向量中,表示各種物體的概率,上圖被識(shí)別為一輛車。

好了,上面說的是卷積神經(jīng)網(wǎng)絡(luò) CNN 的處理過程(相信我我已經(jīng)很簡(jiǎn)化了)。

那么全卷積神經(jīng)網(wǎng)絡(luò)呢?

大家應(yīng)該注意到,CNN 的輸入是圖像,輸出是一個(gè)結(jié)果,或者說是一個(gè)值,一個(gè)概率值。

FCN 提出所追求的是,輸入是一張圖片是,輸出也是一張圖片,學(xué)習(xí)像素到像素的映射

十分鐘看懂圖像語義分割技術(shù)

上圖上半部分是 CNN 網(wǎng)絡(luò),下半部分是 CN 網(wǎng)絡(luò)

那么 “全卷積” 又體現(xiàn)在哪里呢?

CNN 網(wǎng)絡(luò)中的后三層,都是一維的向量,計(jì)算方式不再采用卷積,所以丟失了二維信息,而 FCN 網(wǎng)絡(luò)中,將這三層全部轉(zhuǎn)化為 1*1 的卷積核所對(duì)應(yīng)等同向量長(zhǎng)度的多通道卷積層,使后三層也全部采用卷積計(jì)算,整個(gè)模型中,全部都是卷積層,沒有向量,所以稱為 “全卷積”。

FCN 將第 6 層和 7 層分別從 4096 長(zhǎng)度的向量轉(zhuǎn)化為 4096 通道的卷積層,第 8 層則是 21 通道的卷積層。之所以第 8 層從 1000 縮減到 21,是因?yàn)?FCN 使用的識(shí)別庫(kù)是 PASCAL VOC,在 PASCAL VOC 中有 20 種物體分類,另外一個(gè) background 分類。(關(guān)于 PASCAL VOC 參見附錄

再多說一句,以下(甚至全文)所用到的分割圖片中不同的顏色就表示不同的物體類別,一共有 21 種顏色:

十分鐘看懂圖像語義分割技術(shù)

CNN 的識(shí)別是圖像級(jí)的識(shí)別,也就是從圖像到結(jié)果,而 FCN 的識(shí)別是像素級(jí)的識(shí)別,對(duì)輸入圖像的每一個(gè)像素在輸出上都有對(duì)應(yīng)的判斷標(biāo)注,標(biāo)明這個(gè)像素最可能是屬于一個(gè)什么物體 / 類別。

在此處特別要指出的是,在實(shí)際的圖像語義分割測(cè)試時(shí),輸入是一個(gè) H*W*3 的三通道彩色圖像,而輸出是一個(gè) H*W 的矩陣。

這就可以簡(jiǎn)單看做每一個(gè)像素所攜帶的信息是多維的,比如顏色,就分為 3 層,分別對(duì)應(yīng) R、G、B 三個(gè)值。(不知道什么是 RGB 的,鑒定為文科生,請(qǐng)迅速撤離,謝謝)

所以在進(jìn)行卷積的時(shí)候,每一個(gè)通道都是要獨(dú)立計(jì)算的,計(jì)算完之后再疊加,得到最終卷積層結(jié)果。

如果卷積核移動(dòng)的步長(zhǎng)為 1,那么卷積是按照像素排列去挨個(gè)計(jì)算的,計(jì)算量可想而知會(huì)有多么龐大。但是在實(shí)際中,相鄰的像素往往都是一類,按照像素依次計(jì)算就顯得冗余,所以在卷積之后會(huì)對(duì)輸出進(jìn)行一次池化(pooling)處理

那么什么又是池化呢?

來,我們?cè)賮砜匆粡垊?dòng)圖:

十分鐘看懂圖像語義分割技術(shù)

池化簡(jiǎn)單來說就是將輸入圖像切塊,大部分時(shí)候我們選擇不重疊的區(qū)域,假如池化的分割塊大小為 h*h,分割的步長(zhǎng)為 j,那么一般 h=j,就像上圖,如果需要重疊,只需要 h>j 即可。

對(duì)完整圖像切分,再取切分區(qū)域中所有值的均值或最大值作為代表該區(qū)域的新值,放入池化后的二維信息圖中。得到的新圖就是池化結(jié)果。

在 CNN 和 FCN 的網(wǎng)絡(luò)模型中,每一個(gè)卷積層,都包含了 [卷積 + 池化] 處理,這就是傳說中的 “下采樣”,但這樣處理之后的結(jié)果是:圖像的像素信息變小了,每一層的像素信息都是前一層的 1/2 大小,到第五層的時(shí)候,圖像大小為原始圖像的 1/32

在 CNN 算法里,這并沒有什么要緊的,因?yàn)?CNN 最終只輸出一個(gè)結(jié)果:“這個(gè)圖上是個(gè)啥”,但是 FCN 不同,F(xiàn)CN 是像素級(jí)別的識(shí)別,也就是輸入有多少像素,輸出就要多少像素,像素之間完全映射,并且在輸出圖像上有信息標(biāo)注,指明每一個(gè)像素可能是什么物體 / 類別。

所以就必須對(duì)這 1/32 的圖像進(jìn)行還原。

這里用到個(gè)純數(shù)學(xué)技術(shù),叫 “反卷積”,對(duì)第 5 層進(jìn)行反卷積,可以將圖像擴(kuò)充至原來的大小(嚴(yán)格說是近似原始大小,一般會(huì)大一點(diǎn),但是會(huì)裁剪掉,為什么會(huì)大的原理略復(fù)雜,這里先不提,以后寫進(jìn)階版再放進(jìn)來)。

——這個(gè) “反卷積” 稱為 “上采樣”。(和下采樣對(duì)應(yīng))

十分鐘看懂圖像語義分割技術(shù)

在技術(shù)上,我們可以對(duì)任一層卷積層做反卷積處理,得到最后的圖像,比如用第三層 (8s-8 倍放大),第四層 (16s-16 倍放大),第五層 (32s-32 倍放大) 得到的分割結(jié)果。

十分鐘看懂圖像語義分割技術(shù)

來看一張各層還原后的對(duì)比圖,分別是:

十分鐘看懂圖像語義分割技術(shù)

通過對(duì)比可以很明顯看到:在 16 倍還原和 8 倍還原時(shí),能夠看到更好的細(xì)節(jié),32 倍還原出來的圖,在邊緣分割和識(shí)別上,雖然大致的意思都出來了,但細(xì)節(jié)部分(邊緣)真的很粗糙,甚至無法看出物體形狀。

為什么會(huì)這樣呢?

這里就涉及到一個(gè)感受域(receptive field)的概念。較淺的卷積層(靠前的)的感受域比較小,學(xué)習(xí)感知細(xì)節(jié)部分的能力強(qiáng),較深的隱藏層 (靠后的),感受域相對(duì)較大,適合學(xué)習(xí)較為整體的、相對(duì)更宏觀一些的特征。

所以在較深的卷積層上進(jìn)行反卷積還原,自然會(huì)丟失很多細(xì)節(jié)特征。

于是我們會(huì)在反卷積步驟時(shí),考慮采用一部分較淺層的反卷積信息輔助疊加,更好的優(yōu)化分割結(jié)果的精度:

十分鐘看懂圖像語義分割技術(shù)

盡管 FCN 的提出是一條很牛叉的路,但還是無法避免有很多問題,比如,精度問題,對(duì)細(xì)節(jié)不敏感,以及像素與像素之間的關(guān)系,忽略空間的一致性等問題。

于是更牛的大牛就出現(xiàn)了。

有牛人提出一種新的卷積計(jì)算方式,開始稱為 “帶 hole” 的卷積,也就是使用一種 “疏松的卷積核” 來計(jì)算,以此來取代池化的處理。

上面已經(jīng)講過,池化操作能夠減少計(jì)算量,同時(shí)也能防止計(jì)算結(jié)果過擬合,那么單純?nèi)∠鼗僮饔謺?huì)使單層網(wǎng)絡(luò)的感受域縮小,但如果使用 “疏松的卷積核” 來處理卷積,可以達(dá)到在不增加計(jì)算量的情況下增加感受域,彌補(bǔ)不進(jìn)行池化處理后的精度問題。

括?。哼@種帶洞的卷積方式后來起了一個(gè)高雅的名字叫做:“Dilated Convolutions”。

這種方式人為加大了卷積核內(nèi)部元素之間的距離,可參考下圖:

十分鐘看懂圖像語義分割技術(shù)

紅點(diǎn)表示卷積核的元素,綠色表示感受域,黑線框表示輸入圖像。

a 為原始卷積核計(jì)算時(shí)覆蓋的感受域,b 為當(dāng)卷積核覆蓋的元素間距離增大的情況,不再在連續(xù)的空間內(nèi)去做卷積,跳著做,當(dāng)這個(gè)距離增加的越大時(shí),單次計(jì)算覆蓋的感受域面積越大。

上圖不太好理解的話再來看一張圖:(個(gè)人覺得下面這個(gè)圖非常好理解)

十分鐘看懂圖像語義分割技術(shù)

上層綠色點(diǎn)表示輸入層像素點(diǎn),下層黃色是輸出層(單次計(jì)算時(shí)的層級(jí)關(guān)系),當(dāng)卷積核元素間距為 0 時(shí)(相鄰),123 對(duì)應(yīng)輸出 A,234 對(duì)應(yīng)輸出 B,345 對(duì)應(yīng)輸出 C,那么輸出 ABC 三個(gè)元素結(jié)果的感受域只覆蓋了 12345 這幾個(gè)原始像素點(diǎn)。

如果采用稀疏的卷積核,假設(shè)間距為 1(相當(dāng)于卷積計(jì)算時(shí)跳一個(gè)像素再取值計(jì)算),如圖示,那么結(jié)果 A 對(duì)應(yīng)的輸入是 135,結(jié)果 B 對(duì)應(yīng)的輸入是 246,結(jié)果 C 對(duì)應(yīng)的輸入是 357,同樣輸出 ABC 三個(gè)結(jié)果,在原始圖像上取的像素點(diǎn)的長(zhǎng)度就多了。

這是水平 X 軸方向上的擴(kuò)展,在 Y 軸上也會(huì)有同樣的擴(kuò)展,感受域在沒有增加計(jì)算(相對(duì)于池化操作后)的情況下增大了,并且保留了足夠多的細(xì)節(jié)信息,對(duì)圖像還原后的精度有明顯的提升。

看一下對(duì)比圖:

十分鐘看懂圖像語義分割技術(shù)

第一列是原始圖像,最后一列是手工標(biāo)注的訓(xùn)練輸入圖像,第二列為 FCN 在 1/8 倍數(shù)下的還原,第三列則是采用了新的卷積算法的還原圖像,可以很明顯看到,第三列對(duì)細(xì)節(jié)的分割明顯優(yōu)于第二列 FCN 8 倍的圖像。

剛才還提到了第二個(gè)問題,即像素與像素之間的邏輯關(guān)系的問題,畢竟前面再牛叉的算法也只是單純的計(jì)算沒有根據(jù)物理意義進(jìn)行判斷在輸出的標(biāo)注里這些結(jié)果是否合法(符合現(xiàn)實(shí)邏輯)。

很多以深度學(xué)習(xí)為框架的圖像語義分割系統(tǒng)都使用了一種叫做 “條件隨機(jī)場(chǎng)”( Conditional Random Field,簡(jiǎn)稱 CRF)的技術(shù)作為輸出結(jié)果的優(yōu)化后處理手段。其實(shí)類似技術(shù)種類較多,比如還有馬爾科夫隨機(jī)場(chǎng) (MRF) 和高斯條件隨機(jī)場(chǎng) (G-CRF) 用的也比較多,但原理都較為類似。

簡(jiǎn)單來介紹一下 “條件隨機(jī)場(chǎng)” 的概念。

FCN 是像素到像素的影射,所以最終輸出的圖片上每一個(gè)像素都是標(biāo)注了分類的,將這些分類簡(jiǎn)單地看成是不同的變量,每個(gè)像素都和其他像素之間建立一種連接,連接就是相互間的關(guān)系。

于是就會(huì)得到一個(gè) “完全圖”:

十分鐘看懂圖像語義分割技術(shù)

上圖是以 4*6 大小的圖像像素陣列表示的簡(jiǎn)易版。

那么在全鏈接的 CRF 模型中,有一個(gè)對(duì)應(yīng)的能量函數(shù):

十分鐘看懂圖像語義分割技術(shù)

嗯,不要問我這個(gè)公式里各種符號(hào)是啥,我看不懂。但是我知道這個(gè)公式是干嘛滴:

其中等號(hào)右邊第一個(gè)一元項(xiàng),表示像素對(duì)應(yīng)的語義類別,其類別可以由 FCN 或者其他語義分割模型的預(yù)測(cè)結(jié)果得到;而第二項(xiàng)為二元項(xiàng),二元項(xiàng)可將像素之間的語義聯(lián)系 / 關(guān)系考慮進(jìn)去。

這么說太抽象,舉個(gè)簡(jiǎn)單的例子,“天空”和 “鳥” 這樣的像素在物理空間是相鄰的概率,應(yīng)該要比 “天空” 和 “魚” 這樣像素相鄰的概率大,那么天空的邊緣就更應(yīng)該判斷為鳥而不是魚(從概率的角度)。

通過對(duì)這個(gè)能量函數(shù)優(yōu)化求解,把明顯不符合事實(shí)識(shí)別判斷剔除,替換成合理的解釋,得到對(duì) FCN 的圖像語義預(yù)測(cè)結(jié)果的優(yōu)化,生成最終的語義分割結(jié)果。

優(yōu)化后的對(duì)比圖:

十分鐘看懂圖像語義分割技術(shù)

上圖第二列是 FCN 網(wǎng)絡(luò) 8 倍還原分割結(jié)果,第三列是將 CRF 植入 FCN 處理后的結(jié)果。

可以很明顯的看到,第三列的物體識(shí)別無論是輪廓細(xì)節(jié)分割還是物體識(shí)別,都優(yōu)于第二列,特別是第二行的沙發(fā)中有奇怪的紅色東西的識(shí)別,在進(jìn)行 CRF 優(yōu)化之后,還原成了綠色的沙發(fā)。

OK,說了這么多,終于快要講完了(好累)。

以上就是目前較為前沿的圖像語義分割技術(shù)。

目前的這種機(jī)器學(xué)習(xí)方式還屬于監(jiān)督性學(xué)習(xí),牛叉閃閃的科學(xué)家們還是希望將來可以實(shí)現(xiàn)半監(jiān)督或弱監(jiān)督式學(xué)習(xí),這樣更類似人類的學(xué)習(xí)認(rèn)知方式。

在這條道路上,還有很多有趣的東西,比如示例級(jí)別(instance level)的圖像語義分割問題也同樣熱門。

該類問題不僅需要對(duì)不同語義物體進(jìn)行圖像分割,同時(shí)還要求對(duì)同一語義的不同個(gè)體進(jìn)行分割(例如需要對(duì)圖中出現(xiàn)的九把椅子的像素用不同顏色分別標(biāo)示出來)。

十分鐘看懂圖像語義分割技術(shù)

另外,在目前的計(jì)算技術(shù)水平下(硬件軟件),使用 FCN 訓(xùn)練建模的時(shí)間大約需要三周,這也說明在這個(gè)領(lǐng)域里還有很多值得探索和需要解決的問題。

對(duì)此有興趣的同學(xué)們自己去繼續(xù)研究吧,哈哈。

曾有一個(gè)業(yè)界大牛說過這樣一段話,送給大家:

“華人在計(jì)算機(jī)視覺領(lǐng)域的研究水平越來越高,這是非常振奮人心的事。我們中國(guó)錯(cuò)過了工業(yè)革命,錯(cuò)過了電氣革命,信息革命也只是跟隨狀態(tài)。但人工智能的革命,我們跟世界上的領(lǐng)先國(guó)家是并肩往前跑的。能身處這個(gè)時(shí)代浪潮之中,做一番偉大的事業(yè),經(jīng)常激動(dòng)的夜不能寐?!?/span>

AI 的浪潮即將席卷而來,你,準(zhǔn)備好了么?

------ 附錄的分割線 -----

PASCAL VOC(patternanalysis,statistical modelling and computational learning visual objectclasses) 模式分析,統(tǒng)計(jì)建模,計(jì)算學(xué)習(xí),視覺物體分類。

PASCAL VOC 挑戰(zhàn)賽是視覺對(duì)象的分類識(shí)別和檢測(cè)的一個(gè)基準(zhǔn)測(cè)試,提供了檢測(cè)算法和學(xué)習(xí)性能的標(biāo)準(zhǔn)圖像注釋數(shù)據(jù)集和標(biāo)準(zhǔn)的評(píng)估系統(tǒng)。從 2005 年至今,該組織每年都會(huì)提供一系列類別的、帶標(biāo)簽的圖片,挑戰(zhàn)者通過設(shè)計(jì)各種精妙的算法,僅根據(jù)分析圖片內(nèi)容來將其分類,最終通過準(zhǔn)確率、召回率、效率來一決高下。如今,挑戰(zhàn)賽和其所使用的數(shù)據(jù)集已經(jīng)成為了對(duì)象檢測(cè)領(lǐng)域普遍接受的一種標(biāo)準(zhǔn)。

委員會(huì)所提供的圖片集包括 20 個(gè)目錄:人類;動(dòng)物(鳥、貓、牛、狗、馬、羊);交通工具(飛機(jī)、自行車、船、公共汽車、小轎車、摩托車、火車);室內(nèi)(瓶子、椅子、餐桌、盆栽植物、沙發(fā)、電視)。都是一些日常中最常見的物體,為的就是能更好的體現(xiàn)算法的實(shí)用性。

后記 

很多人跟我說過,不要寫那么長(zhǎng)的文章,因?yàn)楝F(xiàn)在沒人會(huì)看長(zhǎng)文。

可是我卻 “變本加厲” 寫這么長(zhǎng)的技術(shù)文章。

為了寫這文章,中秋三天都在家里查資料,碼字。除了圖片在網(wǎng)上能找到現(xiàn)成的,其他沒有從哪里照搬過原話,6 千 6 百多字全是基于自己的理解然后盡量淺顯易懂滴寫出來~  

但還是太技術(shù)了,因?yàn)檫@本身就是技術(shù)。

18 號(hào)我做了一個(gè)關(guān)于此項(xiàng)技術(shù)非學(xué)術(shù)性非正式的小范圍交流,會(huì)上大家也覺得偏技術(shù)流,于是我又根據(jù)交流過程中一些沒有闡述清楚的點(diǎn)補(bǔ)全了這篇文章,即便不會(huì)有多少人看,卻也還是要寫,要發(fā)的。

因?yàn)槭裁茨兀?nbsp;執(zhí)著吧。

其實(shí)我也想寫諸如 “一張圖看懂全卷積神經(jīng)網(wǎng)絡(luò)” 這樣粗淺易讀的東西,但是我對(duì)信息的精煉程度還達(dá)不到一張圖就能講清楚的水平,能力有限。

嗯,就醬。

雷鋒網(wǎng)按:原作者沈MM,本文原載于微信公眾號(hào)沈MM的小喇叭(ID:VoiceOfShenMM)。本文參考了知乎專欄,部分圖片來自。


實(shí)戰(zhàn)特訓(xùn):遠(yuǎn)場(chǎng)語音交互技術(shù)  

智能音箱這么火,聽聲智科技CTO教你深入解析AI設(shè)備語音交互關(guān)鍵技術(shù)!

課程鏈接:http://www.mooc.ai/course/80

加入AI慕課學(xué)院人工智能學(xué)習(xí)交流QQ群:624413030,與AI同行一起交流成長(zhǎng)

雷峰網(wǎng)版權(quán)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知

十分鐘看懂圖像語義分割技術(shù)

分享:

編輯

聚焦數(shù)據(jù)科學(xué),連接 AI 開發(fā)者。更多精彩內(nèi)容,請(qǐng)?jiān)L問:yanxishe.com
當(dāng)月熱門文章
最新文章
請(qǐng)?zhí)顚懮暾?qǐng)人資料
姓名
電話
郵箱
微信號(hào)
作品鏈接
個(gè)人簡(jiǎn)介
為了您的賬戶安全,請(qǐng)驗(yàn)證郵箱
您的郵箱還未驗(yàn)證,完成可獲20積分喲!
請(qǐng)驗(yàn)證您的郵箱
立即驗(yàn)證
完善賬號(hào)信息
您的賬號(hào)已經(jīng)綁定,現(xiàn)在您可以設(shè)置密碼以方便用郵箱登錄
立即設(shè)置 以后再說