本文做者淨浩澤,公衆號:計算機視覺life,編輯成員面試
圖像分割是計算機視覺研究中的一個經典難題,已經成爲圖像理解領域關注的一個熱點,圖像分割是圖像分析的第一步,是計算機視覺的基礎,是圖像理解的重要組成部分,同時也是圖像處理中最困難的問題之一。所謂圖像分割是指根據灰度、彩色、空間紋理、幾何形狀等特徵把圖像劃分紅若干個互不相交的區域,使得這些特徵在同一區域內表現出一致性或類似性,而在不一樣區域間表現出明顯的不一樣。簡單的說就是在一副圖像中,把目標從背景中分離出來。對於灰度圖像來講,區域內部的像素通常具備灰度類似性,而在區域的邊界上通常具備灰度不連續性。 關於圖像分割技術,因爲問題自己的重要性和困難性,從20世紀70年代起圖像分割問題就吸引了不少研究人員爲之付出了巨大的努力。雖然到目前爲止,還不存在一個通用的完美的圖像分割的方法,可是對於圖像分割的通常性規律則基本上已經達成的共識,已經產生了至關多的研究成果和方法。算法
本文對於目前正在使用的各類圖像分割方法進行了必定的概括總結,因爲筆者對於圖像分割的瞭解也是初窺門徑,因此不免會有一些錯誤,還望各位讀者多多指正,共同窗習進步。編程
這一大部分咱們將要介紹的是深度學習大火以前人們利用數字圖像處理、拓撲學、數學等方面的只是來進行圖像分割的方法。固然如今隨着算力的增長以及深度學習的不斷髮展,一些傳統的分割方法在效果上已經不能與基於深度學習的分割方法相比較了,可是有些天才的思想仍是很是值得咱們去學習的。
1.基於閾值的分割方法
閾值法的基本思想是基於圖像的灰度特徵來計算一個或多個灰度閾值,並將圖像中每一個像素的灰度值與閾值做比較,最後將像素根據比較結果分到合適的類別中。所以,該方法最爲關鍵的一步就是按照某個準則函數來求解最佳灰度閾值。
閾值法特別適用於目標和背景佔據不一樣灰度級範圍的圖。
圖像若只有目標和背景兩大類,那麼只須要選取一個閾值進行分割,此方法成爲單閾值分割;可是若是圖像中有多個目標須要提取,單一閾值的分割就會出現做物,在這種狀況下就須要選取多個閾值將每一個目標分隔開,這種分割方法相應的成爲多閾值分割。
如圖所示即爲對數字的一種閾值分割方法。
閥值分割方法的優缺點:網絡
基於邊緣檢測的圖像分割算法試圖經過檢測包含不一樣區域的邊緣來解決分割問題。它能夠說是人們最早想到也是研究最多的方法之一。一般不一樣區域的邊界上像素的灰度值變化比較劇烈,若是將圖片從空間域經過傅里葉變換到頻率域,邊緣就對應着高頻部分,這是一種很是簡單的邊緣檢測算法。
邊緣檢測技術一般能夠按照處理的技術分爲串行邊緣檢測和並行邊緣檢測。串行邊緣檢測是要想肯定當前像素點是否屬於檢測邊緣上的一點,取決於先前像素的驗證結果。並行邊緣檢測是一個像素點是否屬於檢測邊緣高尚的一點取決於當前正在檢測的像素點以及與該像素點的一些臨近像素點。
最簡單的邊緣檢測方法是並行微分算子法,它利用相鄰區域的像素值不連續的性質,採用一階或者二階導數來檢測邊緣點。近年來還提出了基於曲面擬合的方法、基於邊界曲線擬合的方法、基於反應-擴散方程的方法、串行邊界查找、基於變形模型的方法。
邊緣檢測的優缺點:
(1)邊緣定位準確;
(2)速度快;
(3)不能保證邊緣的連續性和封閉性;
(4)在高細節區域存在大量的碎邊緣,難以造成一個大區域,可是又不宜將高細節區域分紅小碎片;
因爲上述的(3)(4)兩個難點,邊緣檢測只能產生邊緣點,而非完整意義上的圖像分割過程。這也就是說,在邊緣點信息獲取到以後還須要後續的處理或者其餘相關算法相結合才能完成分割任務。
在之後的研究當中,用於提取初始邊緣點的自適應閾值選取、用於圖像的層次分割的更大區域的選取以及如何確認重要邊緣以去除假邊緣將變得很是重要。數據結構
小波變換是近年來獲得的普遍應用的數學工具,也是如今數字圖像處理必學部分,它在時間域和頻率域上都有量高的局部化性質,能將時域和頻域統一於一體來研究信號。並且小波變換具備多尺度特性,可以在不一樣尺度上對信號進行分析,所以在圖像分割方面的獲得了應用,
二進小波變換具備檢測二元函數的局部突變能力,所以可做爲圖像邊緣檢測工具。圖像的邊緣出如今圖像局部灰度不連續處,對應於二進小波變換的模極大值點。經過檢測小波變換模極大值點能夠肯定圖像的邊緣小波變換位於各個尺度上,而每一個尺度上的小波變換都能提供必定的邊緣信息,所以可進行多尺度邊緣檢測來獲得比較理想的圖像邊緣。
上圖左圖是傳統的閾值分割方法,右邊的圖像就是利用小波變換的圖像分割。能夠看出右圖分割獲得的邊緣更加準確和清晰
另外,將小波和其餘方法結合起來處理圖像分割的問題也獲得了普遍研究,好比一種局部自適應閾值法就是將Hilbert圖像掃描和小波相結合,從而得到了連續光滑的閾值曲線。架構
遺傳算法(Genetic Algorithms,簡稱GA)是1973年由美國教授Holland提出的,是一種借鑑生物界天然選擇和天然遺傳機制的隨機化搜索算法。是仿生學在數學領域的應用。其基本思想是,模擬由一些基因串控制的生物羣體的進化過程,把該過程的原理應用到搜索算法中,以提升尋優的速度和質量。此算法的搜索過程不直接做用在變量上,而是在參數集進行了編碼的個體,這使得遺傳算法可直接對結構對象(圖像)進行操做。整個搜索過程是從一組解迭代到另外一組解,採用同時處理羣體中多個個體的方法,下降了陷入局部最優解的可能性,並易於並行化。搜索過程採用機率的變遷規則來指導搜索方向,而不採用肯定性搜索規則,並且對搜索空間沒有任何特殊要求(如連通性、凸性等),只利用適應性信息,不須要導數等其餘輔助信息,適應範圍廣。
遺傳算法擅長於全局搜索,但局部搜索能力不足,因此常把遺傳算法和其餘算法結合起來應用。將遺傳算法運用到圖像處理主要是考慮到遺傳算法具備與問題領域無關且快速隨機的搜索能力。其搜索從羣體出發,具備潛在的並行性,能夠進行多個個體的同時比較,能有效的加快圖像處理的速度。可是遺傳算法也有其缺點:搜索所使用的評價函數的設計、初始種羣的選擇有必定的依賴性等。要是可以結合一些啓發算法進行改進且遺傳算法的並行機制的潛力獲得充分的利用,這是當前遺傳算法在圖像處理中的一個研究熱點。框架
主動輪廓模型(active contours)是圖像分割的一種重要方法,具備統一的開放式的描述形式,爲圖像分割技術的研究和創新提供了理想的框架。在實現主動輪廓模型時,能夠靈活的選擇約束力、初始輪廓和做用域等,以獲得更佳的分割效果,因此主動輪廓模型方法受到愈來愈多的關注。
該方法是在給定圖像中利用曲線演化來檢測目標的一類方法,基於此能夠獲得精確的邊緣信息。其基本思想是,先定義初始曲線C,而後根據圖像數據獲得能量函數,經過最小化能量函數來引起曲線變化,使其向目標邊緣逐漸逼近,最終找到目標邊緣。這種動態逼近方法所求得的邊緣曲線具備封閉、光滑等優勢。
傳統的主動輪廓模型大體分爲參數主動輪廓模型和幾何主動輪廓模型。參數主動輪廓模型將曲線或曲面的形變以參數化形式表達,Kass等人提出了經典的參數活動輪廓模型即「Snake」模型,其中Snake定義爲能量極小化的樣條曲線,它在來自曲線自身的內力和來自圖像數據的外力的共同做用下移動到感興趣的邊緣,內力用於約束曲線形狀,而外力則引導曲線到特徵此邊緣。參數主動輪廓模型的特色是將初始曲線置於目標區域附近,無需人爲設定曲線的的演化是收縮或膨脹,其優勢是可以與模型直接進行交互,且模型表達緊湊,實現速度快;其缺點是難以處理模型拓撲結構的變化。好比曲線的合併或分裂等。而使用水平集(level set)的幾何活動輪廓方法剛好解決了這一問題。dom
在特徵提取領域中VGGnet和ResNet是兩個很是有統治力的方法,接下來的一些篇幅會對這兩個方法進行簡短的介紹機器學習
由牛津大學計算機視覺組合和Google DeepMind公司研究員一塊兒研發的深度卷積神經網絡。它探索了卷積神經網絡的深度和其性能之間的關係,經過反覆的堆疊33的小型卷積核和22的最大池化層,成功的構建了16~19層深的卷積神經網絡。VGGNet得到了ILSVRC 2014年比賽的亞軍和定位項目的冠軍,在top5上的錯誤率爲7.5%。目前爲止,VGGNet依然被用來提取圖像的特徵。
VGGNet的優缺點函數
隨着深度學習的應用,各類深度學習模型隨之出現,雖然在每一年都會出現性能更好的新模型,可是對於前人工做的提高卻不是那麼明顯,其中有重要問題就是深度學習網絡在堆疊到必定深度的時候會出現梯度消失的現象,致使偏差升高效果變差,後向傳播時沒法將梯度反饋到前面的網絡層,使得前方的網絡層的參數難以更新,訓練效果變差。這個時候ResNet剛好站出來,成爲深度學習發展歷程中一個重要的轉折點。
ResNet是由微軟研究院的Kaiming He等四名華人提出,他們經過本身提出的ResNet Unit成功訓練出來152層的神經網絡並在ILSVRC2015比賽中斬獲冠軍。ResNet語義分割領域最受歡迎且最普遍運用的神經網絡.ResNet的核心思想就是在網絡中引入恆等映射,容許原始輸入信息直接傳到後面的層中,在學習過程當中能夠只學習上一個網絡輸出的殘差(F(x)),所以ResNet又叫作殘差網絡。、
使用到ResNet的分割模型:
Regional proposal 在計算機視覺領域是一個很是經常使用的算法,尤爲是在目標檢測領域。其核心思想就是檢測顏色空間和類似矩陣,根據這些來檢測待檢測的區域。而後根據檢測結果能夠進行分類預測。
在語義分割領域,基於區域選擇的幾個算法主要是由前人的有關於目標檢測的工做漸漸延伸到語義分割的領域的,接下來小編將逐步介紹其箇中關係。
伯克利大學的Girshick教授等人共同提出了首個在目標檢測方向應用的深度學習模型:Region-based Convolutional Neural Network(R-CNN)。該網絡模型以下圖所示,其主要流程爲:先使用selective search算法提取2000個候選框,而後經過卷積網絡對候選框進行串行的特徵提取,再根據提取的特徵使用SVM對候選框進行分類預測,最後使用迴歸方法對區域框進行修正。
R-CNN的優缺點:
因爲R-CNN的效率過低,2015年由Ross等學者提出了它的改進版本:Fast R-CNN。其網絡結構圖以下圖所示(從提取特徵開始,略掉了region的選擇)Fast R-CNN在傳統的R-CNN模型上有所改進的地方是它是直接使用一個神經網絡對整個圖像進行特徵提取,就省去了串行提取特徵的時間;接着使用一個RoI Pooling Layer在全圖的特徵圖上摘取每個RoI對應的特徵,再經過FC進行分類和包圍框的修正。
Fast R-CNN的優缺點
2016年提出的Faster R-CNN能夠說有了突破性的進展(雖然仍是目標檢測哈哈哈),由於它改變了它的前輩們最耗時最致命的部位:selective search算法。它將selective search算法替換成爲RPN,使用RPN網絡進行region的選取,將2s的時間下降到10ms,其網絡結構以下圖所示:
Faster R-CNN優缺點:
Mask R-CNN(終於到分割了!)是何愷明大神團隊提出的一個基於Faster R-CNN模型的一種新型的分割模型,此論文斬獲ICCV 2017的最佳論文,在Mask R-CNN的工做中,它主要完成了三件事情:目標檢測,目標分類,像素級分割。
愷明大神是在Faster R-CNN的結構基礎上加上了Mask預測分支,而且改良了ROI Pooling,提出了ROI Align。其網絡結構真容就以下圖所示啦:
Mask R-CNN的優缺點:
最後要提出的是2019年CVPR的oral,來自華中科技大學的研究生黃釗金同窗提出的
MS R-CNN,這篇文章的提出主要是對上文所說的Mask R-CNN的一點點缺點進行了修正。他的網絡結構也是在Mask R-CNN的網絡基礎上作了一點小小的改進,添加了Mask-IoU。
黃同窗在文章中提到:愷明大神的Mask R-CNN已經很好啦!可是有個小毛病,就是評價函數只對目標檢測的候選框進行打分,而不是分割模板(就是上文提到的優缺點中最後一點),因此會出現分割模板效果不好可是打分很高的狀況。因此黃同窗增長了對模板進行打分的MaskIoU Head,而且最終的分割結果在COCO數據集上超越了愷明大神,下面就是MS R-CNN的網絡結構啦~
MS R-CNN的優缺點:
Recurrent neural networks(RNNs)除了在手寫和語音識別上表現出色外,在解決計算機視覺的任務上也表現不俗,在本篇文章中咱們就將要介紹RNN在2D圖像處理上的一些應用,其中也包括介紹使用到它的結構或者思想的一些模型。
RNN是由Long-Short-Term Memory(LSTM)塊組成的網絡,RNN來自序列數據的長期學習的能力以及隨着序列保存記憶的能力使其在許多計算機視覺的任務中游刃有餘,其中也包括語義分割以及數據標註的任務。接下來的部分咱們將介紹幾個使用到RNN結構的用於分割的網絡結構模型:
ReSeg可能不被許多人所熟知,在百度上搜索出的相關說明與解析也很少,可是這是一個頗有效的語義分割方法。衆所周知,FCN可謂是圖像分割領域的開山做,而RegNet的做者則在本身的文章中大膽的提出了FCN的不足:沒有考慮到局部或者全局的上下文依賴關係,而在語義分割中這種依賴關係是很是有用的。因此在ReSeg中做者使用RNN去檢索上下文信息,以此做爲分割的一部分依據。
該結構的核心就是Recurrent Layer,它由多個RNN組合在一塊兒,捕獲輸入數據的局部和全局空間結構。
優缺點:
傳統的RNN在一維序列學習問題上有着很好的表現,好比演講(speech)和在線手寫識別。可是 在多爲問題中應用卻並不到位。MDRNNs在必定程度上將RNN拓展到多維空間領域,使之在圖像處理、視頻處理等領域上也能有所表現。
該論文的基本思想是:將單個遞歸鏈接替換爲多個遞歸鏈接,相應能夠在必定程度上解決時間隨數據樣本的增長呈指數增加的問題。如下就是該論文提出的兩個前向反饋和反向反饋的算法。
卷積神經網絡在進行採樣的時候會丟失部分細節信息,這樣的目的是獲得更具特徵的價值。可是這個過程是不可逆的,有的時候會致使後面進行操做的時候圖像的分辨率過低,出現細節丟失等問題。所以咱們經過上採樣在必定程度上能夠不全一些丟失的信息,從而獲得更加準確的分割邊界。
接下來介紹幾個很是著名的分割模型:
是的!講來說去終於講到這位大佬了,FCN!在圖像分割領域已然成爲一個業界標杆,大多數的分割方法多多少少都會利用到FCN或者其中的一部分,好比前面咱們講過的Mask R-CNN。
在FCN當中的反捲積-升採樣結構中,圖片會先進性上採樣(擴大像素);再進行卷積——經過學習得到權值。FCN的網絡結構以下圖所示:
固然最後咱們仍是須要分析一下FCN,不能無腦吹啦~
優缺點:
SegNet是劍橋提出的旨在解決自動駕駛或者智能機器人的圖像語義分割深度網絡,SegNet基於FCN,與FCN的思路十分類似,只是其編碼-解碼器和FCN的稍有不一樣,其解碼器中使用去池化對特徵圖進行上採樣,並在分各類保持高頻細節的完整性;而編碼器不使用全鏈接層,所以是擁有較少參數的輕量級網絡:
圖像分割是計算機視覺研究中的一個經典難題,已經成爲圖像理解領域關注的一個熱點,圖像分割是圖像分析的第一步,是計算機視覺的基礎,是圖像理解的重要組成部分,同時也是圖像處理中最困難的問題之一。所謂圖像分割是指根據灰度、彩色、空間紋理、幾何形狀等特徵把圖像劃分紅若干個互不相交的區域,使得這些特徵在同一區域內表現出一致性或類似性,而在不一樣區域間表現出明顯的不一樣。簡單的說就是在一副圖像中,把目標從背景中分離出來。對於灰度圖像來講,區域內部的像素通常具備灰度類似性,而在區域的邊界上通常具備灰度不連續性。 關於圖像分割技術,因爲問題自己的重要性和困難性,從20世紀70年代起圖像分割問題就吸引了不少研究人員爲之付出了巨大的努力。雖然到目前爲止,還不存在一個通用的完美的圖像分割的方法,可是對於圖像分割的通常性規律則基本上已經達成的共識,已經產生了至關多的研究成果和方法。
本文對於目前正在使用的各類圖像分割方法進行了必定的概括總結,因爲筆者對於圖像分割的瞭解也是初窺門徑,因此不免會有一些錯誤,還望各位讀者多多指正,共同窗習進步。
SetNet的優缺點:
在這一個模塊中咱們主要給你們介紹一下基於提高特徵分辨率的圖像分割的方法。換一種說法其實能夠說是恢復在深度卷積神經網絡中降低的分辨率,從而獲取更多的上下文信息。這一系列我將給你們介紹的是Google提出的DeepLab 。
DeepLab是結合了深度卷積神經網絡和機率圖模型的方法,應用在語義分割的任務上,目的是作逐像素分類,其先進性體如今DenseCRFs(機率圖模型)和DCNN的結合。是將每一個像素視爲CRF節點,利用遠程依賴關係並使用CRF推理直接優化DCNN的損失函數。
在圖像分割領域,FCN的一個衆所周知的操做就是平滑之後再填充,就是先進行卷積再進行pooling,這樣在下降圖像尺寸的同時增大感覺野,可是在先減少圖片尺寸(卷積)再增大尺寸(上採樣)的過程當中必定有一些信息損失掉了,因此這裏就有能夠提升的空間。
接下來我要介紹的是DeepLab網絡的一大亮點:Dilated/Atrous Convolution,它使用的採樣方式是帶有空洞的採樣。在VGG16中使用不一樣採樣率的空洞卷積,能夠明確控制網絡的感覺野。
圖a對應3x3的1-dilated conv,它和普通的卷積操做是相同的;圖b對應3x3的2-dilated conv,事蹟卷積核的尺寸仍是3x3(紅點),可是空洞爲1,其感覺野可以達到7x7;圖c對應3x3的4-dilated conv,其感覺野已經達到了15x15.寫到這裏相信你們已經明白,在使用空洞卷積的狀況下,加大了感覺野,使每一個卷積輸出都包含了較大範圍的信息。
這樣就解決了DCNN的幾個關於分辨率的問題:
1)內部數據結構丟失;空間曾計劃信息丟失;
2)小物體信息沒法重建;
固然空洞卷積也存在必定的問題,它的問題主要體如今如下兩方面:
1)網格效應
加入咱們僅僅屢次疊加dilation rate 2的 3x3 的卷積核則會出現如下問題
咱們發現卷積核並不連續,也就是說並非全部的像素都用來計算了,這樣會喪失信息的連續性;
2)小物體信息處理不當
咱們從空洞卷積的設計背景來看能夠推測出它是設計來獲取long-ranged information。然而空洞步頻選取得大獲取只有利於大物體得分割,而對於小物體的分割可能並無好處。因此如何處理好不一樣大小物體之間的關係也是設計好空洞卷積網絡的關鍵。
基於特徵加強的分割方法包括:提取多尺度特徵或者從一系列嵌套的區域中提取特徵。在圖像分割的深度網絡中,CNN常常應用在圖像的小方塊上,一般稱爲以每一個像素爲中心的固定大小的卷積核,經過觀察其周圍的小區域來標記每一個像素的分類。在圖像分割領域,可以覆蓋到更大部分的上下文信息的深度網絡一般在分割的結果上更加出色,固然這也伴隨着更高的計算代價。多尺度特徵提取的方法就由此引進。
在這一模塊中我先給你們介紹一個叫作SLIC,全稱爲simple linear iterative cluster的生成超像素的算法。
首先咱們要明確一個概念:啥是超像素?其實這個比較容易理解,就像上面說的「小方塊」同樣,咱們日常處理圖像的最小單位就是像素了,這就是像素級(pixel-level);而把像素級的圖像劃分紅爲區域級(district-level)的圖像,把區域當成是最基本的處理單元,這就是超像素啦。
算法大體思想是這樣的,將圖像從RGB顏色空間轉換到CIE-Lab顏色空間,對應每一個像素的(L,a,b)顏色值和(x,y)座標組成一個5維向量V[l, a, b, x, y],兩個像素的類似性便可由它們的向量距離來度量,距離越大,類似性越小。
算法首先生成K個種子點,而後在每一個種子點的周圍空間裏搜索距離該種子點最近的若干像素,將他們歸爲與該種子點一類,直到全部像素點都歸類完畢。而後計算這K個超像素裏全部像素點的平均向量值,從新獲得K個聚類中心,而後再以這K箇中心去搜索其周圍與其最爲類似的若干像素,全部像素都歸類完後從新獲得K個超像素,更新聚類中心,再次迭代,如此反覆直到收斂。
有點像聚類的K-Means算法,最終會獲得K個超像素。
Mostahabi等人提出的一種前向傳播的分類方法叫作Zoom-Out就使用了SLIC的算法,它從多個不一樣的級別提取特徵:局部級別:超像素自己;遠距離級別:可以包好整個目標的區域;全局級別:整個場景。這樣綜合考慮多尺度的特徵對於像素或者超像素的分類以及分割來講都是頗有意義的。
接下來的部分我將給你們介紹另外一種完整的分割網絡:PSPNet:Pyramid Scene Parsing Network
論文提出在場景分割是,大多數的模型會使用FCN的架構,可是FCN在場景之間的關係和全局信息的處理能力存在問題,其典型問題有:1.上下文推斷能力不強;2.標籤之間的關係處理很差;3.模型可能會忽略小的東西。
本文提出了一個具備層次全局優先級,包含不一樣子區域時間的不一樣尺度的信息,稱之爲金字塔池化模塊。
該模塊融合了4種不一樣金字塔尺度的特徵,第一行紅色是最粗糙的特徵–全局池化生成單個bin輸出,後面三行是不一樣尺度的池化特徵。爲了保證全局特徵的權重,若是金字塔共有N個級別,則在每一個級別後使用1×1 1×11×1的卷積將對於級別通道降爲本來的1/N。再經過雙線性插值得到未池化前的大小,最終concat到一塊兒。其結構以下圖:
最終結果就是,在融合不一樣尺度的feature後,達到了語義和細節的融合,模型的性能表現提高很大,做者在不少數據集上都作過訓練,最終結果是在MS-COCO數據集上預訓練過的效果最好。
爲了捕捉多尺度特徵,高層特徵包含了更多的語義和更少的位置信息。結合多分辨率圖像和多尺度特徵描述符的優勢,在不丟失分辨率的狀況下提取圖像中的全局和局部信息,這樣就能在必定程度上提高網絡的性能。
首先讓咱們熟悉熟悉到底啥是MRF的CRF的。
MRF全稱是Marcov Random Field,馬爾可夫隨機場,其實提及來筆者在剛讀碩士的時候有一次就有同窗在彙報中提到了隱馬爾可夫、馬爾可夫鏈啥的,當時還啥都不懂,小白一枚(如今是準小白hiahia),以爲馬爾可夫這個名字賊帥,後來才慢慢了解什麼馬爾科夫鏈呀,馬爾可夫隨機場,而且在接觸到圖像分割了之後就對馬爾科夫隨機場有了更多的瞭解。
MRF實際上是一種基於統計的圖像分割算法,馬爾可夫模型是指一組事件的集合,在這個集合中,事件逐個發生,而且下一刻事件的發生只由當前發生的事件決定,而與再以前的狀態沒有關係。而馬爾可夫隨機場,就是具備馬爾可夫模型特性的隨機場,就是場中任何區域都只與其臨近區域相關,與其餘地方的區域無關,那麼這些區域裏元素(圖像中能夠是像素)的集合就是一個馬爾可夫隨機場。
CRF的全稱是Conditional Random Field,條件隨機場實際上是一種特殊的馬爾可夫隨機場,只不過是它是一種給定了一組輸入隨機變量X的條件下另外一組輸出隨機變量Y的馬爾可夫隨機場,它的特色是埃及設輸出隨機變量構成馬爾可夫隨機場,能夠看做是最大熵馬爾可夫模型在標註問題上的推廣。
在圖像分割領域,運用CRF比較出名的一個模型就是全鏈接條件隨機場(DenseCRF),接下來咱們將花費一些篇幅來簡單介紹一下。
CRF在運行中會有一個問題就是它只對相鄰節點進行操做,這樣會損失一些上下文信息,而全鏈接條件隨機場是對全部節點進行操做,這樣就能獲取儘量多的臨近點信息,從而得到更加精準的分割結果。
在Fully connected CRF中,吉布斯能量能夠寫做:
咱們重點關注二元部分:
其中k(m)爲高斯核,寫做:
該模型的一元勢能包含了圖像的形狀,紋理,顏色和位置,二元勢能使用了對比度敏感的的雙核勢能,CRF的二元勢函數通常是描述像素點與像素點之間的關係,鼓勵類似像素分配相同的標籤,而相差較大的像素分配不一樣標籤,而這個「距離」的定義與顏色值和實際相對距離有關,這樣CRF可以使圖像儘可能在邊界處分割。全鏈接CRF模型的不一樣就在於其二元勢函數描述的是每個像素與其餘全部像素的關係,使用該模型在圖像中的全部像素對上創建點對勢能從而實現極大地細化和分割。
在分割結果上咱們能夠看看以下的結果圖:
能夠看到它在精細邊緣的分割比日常的分割方法要出色得多,並且文章中使用了另外一種優化算法,使得原本須要及其大量運算的全鏈接條件隨機場也能在很短的時間裏給出不錯的分割結果。
至於其優缺點,我以爲能夠總結爲如下幾方面:
能夠用來恢復細緻的局部結構,可是相應的須要較高的代價。
OK,那麼本次的推送就到這裏結束啦,本文的主要內容是對圖像分割的算法進行一個簡單的分類和介紹。綜述對於各位想要深刻研究的看官是很是很是重要的資源:大佬們常常看綜述一方面能夠了解算法的不足並在此基礎上作出改進;萌新們能夠經過閱讀一篇好的綜述入門某一個學科,好比今天的內容就是圖像分割。
謝謝各位朋友們的觀看!
如何從零開始系統化學習視覺SLAM?
從零開始一塊兒學習SLAM | 爲何要學SLAM?
從零開始一塊兒學習SLAM | 學習SLAM到底須要學什麼?
從零開始一塊兒學習SLAM | SLAM有什麼用?
從零開始一塊兒學習SLAM | C++新特性要不要學?
從零開始一塊兒學習SLAM | 爲何要用齊次座標?
從零開始一塊兒學習SLAM | 三維空間剛體的旋轉
從零開始一塊兒學習SLAM | 爲啥須要李羣與李代數?
從零開始一塊兒學習SLAM | 相機成像模型
從零開始一塊兒學習SLAM | 不推公式,如何真正理解對極約束?
從零開始一塊兒學習SLAM | 神奇的單應矩陣
從零開始一塊兒學習SLAM | 你好,點雲
從零開始一塊兒學習SLAM | 給點雲加個濾網
從零開始一塊兒學習SLAM | 點雲平滑法線估計
從零開始一塊兒學習SLAM | 點雲到網格的進化
從零開始一塊兒學習SLAM | 理解圖優化,一步步帶你看懂g2o代碼
從零開始一塊兒學習SLAM | 掌握g2o頂點編程套路
從零開始一塊兒學習SLAM | 掌握g2o邊的代碼套路
零基礎小白,如何入門計算機視覺?
SLAM領域牛人、牛實驗室、牛研究成果梳理
我用MATLAB擼了一個2D LiDAR SLAM
可視化理解四元數,願你再也不掉頭髮
最近一年語義SLAM有哪些表明性工做?
視覺SLAM技術綜述
彙總 | VIO、激光SLAM相關論文分類集錦
研究SLAM,對編程的要求有多高?
2018年SLAM、三維視覺方向求職經驗分享
2018年SLAM、三維視覺方向求職經驗分享
深度學習遇到SLAM | 如何評價基於深度學習的DeepVO,VINet,VidLoc?
視覺SLAM關鍵方法總結
SLAM方向公衆號、知乎、博客上有哪些大V能夠關注?
SLAM實驗室
SLAM方向國內有哪些優秀公司?
SLAM面試常見問題
SLAM相關領域數據集調研
從零開始一塊兒學習SALM-ICP原理及應用
解放雙手——相機與IMU外參的在線標定
目標檢測