總結|圖像分割5大經(jīng)典方法

極市導讀
本文為作者對圖像分割的5種傳統(tǒng)方法:基于閾值、基于邊緣、基于區(qū)域、基于圖論、基于能量泛函的分割的總結,附有相關文章的鏈接。 >>加入極市CV技術交流群,走在計算機視覺的最前沿
神經(jīng)網(wǎng)絡部分尚未收集整理。
下面內(nèi)容是從網(wǎng)上獲取整理得出的,且都放了鏈接。
第一次寫,若侵權之類的麻煩跟我說下,我立馬修改。謝謝~ = =
ps: Wiki也有完整介紹
https://www.wiki-wiki.top/zh-hans/%E5%9B%BE%E5%83%8F%E5%88%86%E5%89%B2
圖片分割根據(jù)灰度、顏色、紋理、和形狀等特征將圖像進行劃分區(qū)域,讓區(qū)域間顯差異性,區(qū)域內(nèi)呈相似性。主要分割方法有:
基于閾值的分割 基于邊緣的分割 基于區(qū)域的分割 基于圖論的分割 基于能量泛函的分割
基于閾值的分割方法
參考:基于閾值的圖像分割方法
閾值法的基本思想是基于圖像的灰度特征來計算一個或多個灰度閾值,并將圖像中每個像素的灰度值與閾值相比較,最后將像素根據(jù)比較結果分到合適的類別中。因此,該類方法最為關鍵的一步就是按照某個準則函數(shù)來求解最佳灰度閾值。
固定閾值分割:
固定某像素值為分割點。 直方圖雙峰法:
Prewitt 等人于六十年代中期提出的直方圖雙峰法(也稱 mode 法) 是典型的全局單閾值分割方法。該方法的基本思想是:假設圖像中有明顯的目標和背景,則其灰度直方圖呈雙峰分布,當灰度級直方圖具有雙峰特性時,選取兩峰之間的谷對應的灰度級作為閾值。如果背景的灰度值在整個圖像中可以合理地看作為恒定,而且所有物體與背景都具有幾乎相同的對比度,那么,選擇一個正確的、固定的全局閾值會有較好的效果.算法實現(xiàn):找到第一個峰值和第二個峰值,再找到第一和第二個峰值之間的谷值,谷值就是那個閥值了。 迭代閾值圖像分割:
1.統(tǒng)計圖像灰度直方圖,求出圖象的最大灰度值和最小灰度值,分別記為ZMAX和ZMIN,令初始閾值T0=(ZMAX+ZMIN)/2; 2. 根據(jù)閾值TK將圖象分割為前景和背景,計算小于TO所有灰度的均值ZO,和大于TO的所有灰度的均值ZB。 3. 求出新閾值TK+1=(ZO+ZB)/2; 4. 若TK==TK+1,則所得即為閾值;否則轉2,迭代計算。 自適應閾值圖像分割: 有時候物體和背景的對比度在圖像中不是處處一樣的,普通閾值分割難以起作用。這時候可以根據(jù)圖像的局部特征分別采用不同的閾值進行分割。只要我們將圖像分為幾個區(qū)域,分別選擇閾值,或動態(tài)地根據(jù)一定鄰域范圍選擇每點處的閾值,從而進行圖像分割。
把圖像分成m*n塊子圖,求取每一塊子圖的灰度均值就是所有像素灰度值之和除以像素點的數(shù)量,這個均值就是閾值了。這種方法明顯不比大津法好,因為均值法和大津法都是從圖像整體來考慮閾值的,但是大津法找了一個類間方差最大值來求出最佳閾值的;這兩種方法子圖越多應該分割效果會好一點,但效率可能會變慢 日本學者大津在1979年提出的自適應閾值確定方法。按照圖像的灰度特性,將圖像分為背景和目標兩部分。背景和目標之間的類間方差越大,說明構成圖像的2部分的差別越大,當部分目標錯分為背景或部分背景錯分為目標都會導致2部分差別變小。因此,使類間方差最大的分割意味著錯分概率最小。 大津法 OTSU (最大類間方差法):
均值法:
最佳閾值:
閾值選擇需要根據(jù)具體問題來確定,一般通過實驗來確定。如對某類圖片,可以分析其直方圖等。
基于邊緣的分割方法
參考:圖像分割之(一)概述
https://blog.csdn.net/zouxy09/article/details/8532106
圖像中兩個不同區(qū)域的邊界線上連續(xù)的像素點的集合,是圖像局部特征不連續(xù)性的反映,體現(xiàn)了灰度、顏色、紋理等圖像特性的突變。通常情況下,基于邊緣的分割方法指的是基于灰度值的邊緣檢測,它是建立在邊緣灰度值會呈現(xiàn)出階躍型或屋頂型變化這一觀測基礎上的方法。階躍型邊緣兩邊像素點的灰度值存在著明顯的差異,而屋頂型邊緣則位于灰度值上升或下降的轉折處。正是基于這一特性,可以使用微分算子進行邊緣檢測,即使用一階導數(shù)的極值與二階導數(shù)的過零點來確定邊緣,具體實現(xiàn)時可以使用圖像與模板進行卷積來完成。
邊緣角點和興趣點的檢測器有:
SIFT的改進版。 尺度不變特征轉換,檢測是用來識別興趣點的第二中方法。不同與Harris角點檢測器,SIFT將尺度和方向與結果中的興趣點相關聯(lián)。為了找到興趣點,,交替使用多種算子?!队嬎銠C視覺:模型、學習和推理》第13章(http://125.216.241.100:51004/view/29) 對每個點周圍的水平方向垂直方向的據(jù)ubu梯度進行考慮。目的在于找到圖像中亮度在兩個方向上均發(fā)生變化的點,而非一個方向(一條邊緣)或者零個方向(平坦區(qū)域)。Harris角點檢測器是基于對圖像結構張量的決策。《計算機視覺:模型、學習和推理》第13章 將圖像P模糊化,然后與一堆正交微分濾波器(如Prewitt濾波器)做卷積生成分別包括水平和垂直方向上的導數(shù)的圖像H和V,對像素(i,j)計算其梯度方向和幅度。若幅度超過臨界值就分配一條邊緣(此處稱為閾值法,但效果不佳)。canny使用非極大抑制的方法對那些不需要響應的進行刪除。《計算機視覺:模型、學習和推理》第13章 Canny邊緣檢測器:
Harris角點檢測器:
SIFT檢測器:
SURF檢測器 *
基于區(qū)域的分割方法
參考:圖像分割之(一)概述 https://blog.csdn.net/zouxy09/article/details/8532106
按照圖像的相似性準則劃分為不同區(qū)域塊。主要有種子區(qū)域生長法、區(qū)域分裂合并法、分水嶺法等。
種子區(qū)域生長法
根據(jù)統(tǒng)一物體區(qū)域的像素相似性來聚集像素點達到區(qū)域生長的方法。其中由一組表示不同區(qū)域的種子像素開始,逐步合并種子周圍相似的像素從而擴大區(qū)域。直到無法合并像素點或小領域為止。其中區(qū)域內(nèi)的相似性的度量可用平均灰度值、紋理、顏色等等信息。關鍵在于選擇初始種子像素及生長準則。最早的區(qū)域生長圖像分割方法是由Levine等人提出。 區(qū)域分裂合并法
區(qū)域分裂合并法(Gonzalez,2002),確定分裂合并的準則,然后將圖像任意分成若干互不相交的區(qū)域,按準則對這些區(qū)域進行分裂合并。它可用于灰度圖像分割及紋理圖像分割。 分水嶺法
分水嶺法(Meyer,1990)是一種基于拓撲理論的數(shù)學形態(tài)學的分割方法,其基本思想是把圖像看作是測地學上的拓撲地貌,圖像中每一點像素的灰度值表示該點的海拔高度,每一個局部極小值及其影響區(qū)域稱為集水盆,而集水盆的邊界則形成分水嶺。該算法的實現(xiàn)可以模擬成洪水淹沒的過程,圖像的最低點首先被淹沒,然后水逐漸淹沒整個山谷。當水位到達一定高度的時候?qū)绯?,這時在水溢出的地方修建堤壩,重復這個過程直到整個圖像上的點全部被淹沒,這時所建立的一系列堤壩就成為分開各個盆地的分水嶺。分水嶺算法對微弱的邊緣有著良好的響應,但圖像中的噪聲會使分水嶺算法產(chǎn)生過分割的現(xiàn)象
基于圖論的分割方法
參考:圖像分割之(一)概述 https://blog.csdn.net/zouxy09/article/details/8532106
此類方法把圖像分割問題與圖的最小割(min cut)問題相關聯(lián)。首先將圖像映射為帶權無向圖G=,圖中每個節(jié)點N∈V對應于圖像中的每個像素,每條邊∈E連接著一對相鄰的像素,邊的權值表示了相鄰像素之間在灰度、顏色或紋理方面的非負相似度。而對圖像的一個分割s就是對圖的一個剪切,被分割的每個區(qū)域C∈S對應著圖中的一個子圖。而分割的最優(yōu)原則就是使劃分后的子圖在內(nèi)部保持相似度最大,而子圖之間的相似度保持最小?;趫D論的分割方法的本質(zhì)就是移除特定的邊,將圖劃分為若干子圖從而實現(xiàn)分割。目前所了解到的基于圖論的方法有GraphCut,GrabCut和Random Walk等。
GraphCut 圖割
算法基于灰度圖; 需要人工標注至少一個前景點和一個背景點; 結果為硬分割結果,未考慮邊緣介于0~1之間的透明度。 Boykov Y Y, Jolly M P. Interactive graph cuts for optimal boundary & region segmentation of objects in N-D images[C]// IEEE International Conference on Computer Vision. IEEE Computer Society, 2001:105. 圖像分割之(二)Graph Cut(圖割)(https://blog.csdn.net/zouxy09/article/details/8532111) 參考:
非常有用和流行的能量優(yōu)化算法,在計算機視覺領域普遍應用于前背景分割(Image segmentation)、立體視覺(stereo vision)、摳圖(Image matting)等。
將一幅圖像分為目標和背景兩個不相交的部分,那就相當于完成了圖像分割。
此類方法把圖像分割問題與圖的最小割(min cut)問題相關聯(lián)。最小割把圖的頂點劃分為兩個不相交的子集S和T。這兩個子集就對應于圖像的前景像素集和背景像素集??梢酝ㄟ^最小化圖割來最小化能量函數(shù)得到。能量函數(shù)由區(qū)域項(regional term)和邊界項(boundary term)構成。
整個流程的限制是:
GrabCut 分割和摳圖
Graph Cut的目標和背景的模型是灰度直方圖,Grab Cut取代為RGB三通道的混合高斯模型GMM; Graph Cut的能量最小化(分割)是一次達到的,而Grab Cut取代為一個不斷進行分割估計和模型參數(shù)學習的交互迭代過程; Graph Cut需要用戶指定目標和背景的一些種子點,但是Grab Cut只需要提供背景區(qū)域的像素集就可以了。也就是說你只需要框選目標,那么在方框外的像素全部當成背景,這時候就可以對GMM進行建模和完成良好的分割了。即Grab Cut允許不完全的標注(incomplete labelling)。 將基于灰度分布的模型替換為高斯混合模型(Gaussian Mixture Model,GMM)以支持彩色圖片; 將能一次性得到結果的算法改成了『強大的』迭代流程;將用戶的交互簡化到只需要框選前景物體即可。 Rother C, Kolmogorov V, Blake A. "GrabCut": interactive foreground extraction using iterated graph cuts[J]. Acm Transactions on Graphics, 2004, 23(3):309-314. 讀《"GrabCut" -- Interactive Foreground Extraction using Iterated Graph Cuts》(https://zhuanlan.zhihu.com/p/20255114) 圖像分割之(三)從Graph Cut到Grab Cut(https://blog.csdn.net/zouxy09/article/details/8534954) 參考:
是Graphcut圖隔的改進版,是迭代的GraphCut。改進包括:
與Graph Cut不同處:
彩色像素值的稀疏問題比灰度圖要嚴重得多(256 vs 17M),所以,繼續(xù)使用histogram是不現(xiàn)實的,需要信息壓縮得更好一點的模型,作者在這里參考前人,對前景和背景各建了K=5的高斯混合模型。
GrabCut是按顏色分布和邊緣對比度來分割圖片的,對一些常見的與此原則相悖的圖片,效果確實不好。比如前景人物的帽子、鞋、墨鏡,通常顏色跟前景主體有較大區(qū)別;再如前景中的孔,有可能由于顏色區(qū)分和邊緣的對比度不足,導致邊緣的懲罰占上風,而沒有扣出來背景。所以,GrabCut還是保留了人工修正的操作,定義了兩種標記:絕對是背景和可能是前景。對分割錯誤人工修正后,分割還是可以比較準確的。對自然場景圖片的分割,比Bayes matte等方法得到的邊緣明顯看起來舒服得多。
基于能量泛函的分割方法
參考:
圖像分割之(一)概述 https://blog.csdn.net/zouxy09/article/details/8532106
該類方法主要指的是活動輪廓模型(active contour model)以及在其基礎上發(fā)展出來的算法,其基本思想是使用連續(xù)曲線來表達目標邊緣,并定義一個能量泛函使得其自變量包括邊緣曲線,因此分割過程就轉變?yōu)榍蠼饽芰糠汉淖钚≈档倪^程,一般可通過求解函數(shù)對應的歐拉(Euler.Lagrange)方程來實現(xiàn),能量達到最小時的曲線位置就是目標的輪廓所在。
活動輪廓模型逐漸形成了不同的分類方式,較常見的是根據(jù)曲線演化方式的不同,將活動輪廓模型分為基于邊界、基于區(qū)域和混合型活動輪廓模型。按照模型中曲線表達形式的不同,活動輪廓模型可以分為兩大類:參數(shù)活動輪廓模型(parametric active contour model)和幾何活動輪廓模型(geometric active contour model)。
參數(shù)活動輪廓模型(parametric active contour model):
參考:
CLM是有約束的局部模型,ASM也屬于CLM的一種。CLM通過初始化平均臉的位置,然后讓每個平均臉上的特征點在其鄰域位置上進行搜索匹配來完成人臉點檢測。整個過程分兩個階段:模型構建階段和點擬合階段。模型構建階段又可以細分兩個不同模型的構建:
機器學習理論與實戰(zhàn)(十六)概率圖模型04(https://blog.csdn.net/marvin521/article/details/11489453) 形狀模型構建: 對人臉模型形狀進行建模,說白了就是一個ASM的點分布函數(shù)(PDM),它描述了形狀變化遵循的準則. Patch模型構建: 對每個特征點周圍鄰域進行建模,也就說建立一個特征點匹配準則,怎么判斷特征點是最佳匹配. 參考:
ASM是基于統(tǒng)計形狀模型的基礎上進行的,而AAM則是在ASM的基礎上,進一步對紋理(將人臉圖像變形到平均形狀而得到的形狀無關圖像)進行統(tǒng)計建模,并將形狀和紋理兩個統(tǒng)計模型進一步融合為表觀模型。
AAM模型相對于ASM模型的改進為:
Cootes T F, Edwards G J, Taylor C J. Active Appearance Models[C]// European Conference on Computer Vision. Springer Berlin Heidelberg, 1998:484-498. AAM(Active Appearance Model)算法介紹(https://blog.csdn.net/carson2005/article/details/8196996) 使用兩個統(tǒng)計模型融合 取代 ASM的灰度模型。 主要對特征點的特征描述子進行了改進,增加了描述子的復雜度和魯棒性 參考:
ASM(主動形狀模型)是建立在PDM(點分布模型)的基礎上,通過訓練圖像樣本獲取訓練圖像樣本的特征點分布的統(tǒng)計信息,并且獲取特征點允許存在的變化方向,實現(xiàn)在目標圖像上尋找對應的特征點的位置。訓練樣本需要手動的標記所有的特征點的位置,記錄特征點的坐標,并且計算每一個特征點對應的局部灰度模型作為局部特征點調(diào)整用的特征向量。在將訓練好的模型放在目標圖像上,尋找每一個特征點的下一個位置的時候,采用局部灰度模型尋找在當前特征點指定方向上局部灰度模型馬氏距離最小的特征點作為當前特征點即將移動到的位置,稱為suggested point, 找到所有的suggested points就可以獲得一個搜索的suggested shape, 然后將當前的模型通過調(diào)整參數(shù)使得當前的模型最可能相似的調(diào)整到suggest shape,重復迭代直到實現(xiàn)收斂。
Cootes T F, Taylor C J. Active Shape Models — ‘Smart Snakes’[M]// BMVC92. Springer London, 1992:266--275. ASM(Active Shape Model) 主動形狀模型總結(https://blog.csdn.net/watkinsong/article/details/8891071) 參考:
在處理如邊緣檢測、角點識別、動態(tài)跟蹤以及立體匹配等任務上非常成功。
SNAKE模型就是一條可變形的參數(shù)曲線及相應的能量函數(shù),以最小化能量目標函數(shù)為目標,控制參數(shù)曲線變形,具有最小能量的閉合曲線就是目標輪廓。模型的形變受到同時作用在模型上的許多不同的力所控制,每一種力所產(chǎn)生一部分能量,這部分能量表示為活動輪廓模型的能量函數(shù)的一個獨立的能量項。
基本Snakes模型的能量函數(shù)由三項組成,彈性能量和彎曲能量合稱內(nèi)部能量(內(nèi)部力),用于控制輪廓線的彈性形變,起到保持輪廓連續(xù)性和平滑性的作用。而第三項代表外部能量,也被稱為圖像能量,表示變形曲線與圖像局部特征吻合的情況。內(nèi)部能量僅僅跟snake的形狀有關,而跟圖像數(shù)據(jù)無關。而外部能量僅僅跟圖像數(shù)據(jù)有關。在某一點的α和β的值決定曲線可以在這一點伸展和彎曲的程度。最終對圖像的分割轉化為求解能量函數(shù)Etotal(v)極小化(最小化輪廓的能量)。在能量函數(shù)極小化過程中,彈性能量迅速把輪廓線壓縮成一個光滑的圓,彎曲能量驅(qū)使輪廓線成為光滑曲線或直線,而圖像力則使輪廓線向圖像的高梯度位置靠攏?;維nakes模型就是在這3個力的聯(lián)合作用下工作的。
snake相對于經(jīng)典的特征提取方法有以下優(yōu)點:
snake的缺點:
Michael Kass et al. Snakes: Active contour models. International Journal of Computer Vision, pages 321-331, 1987. 圖像分割之(五)活動輪廓模型之Snake模型簡介(https://blog.csdn.net/zouxy09/article/details/8712287) 計算機視覺之圖像分割——Snake模型(1譯文)(https://blog.csdn.net/VictoriaW/article/details/59110318) 通過正確設置和項前系數(shù),可交互方式控制snake; 容易操控,因為圖像力是以直觀的方式表現(xiàn); 在尋找最小能量狀態(tài)的時候它們是自主的和自適應的; 可以通過在圖像能量函數(shù)中加入高斯平滑而對圖像尺度敏感; 可以用于跟蹤時間或者空間維度上的動態(tài)目標。 初始位置不同使得結果不同; 經(jīng)常陷入局部最小狀態(tài),這也許可以通過使用模擬退火技術來克服,代價就是計算時間增加; 在最小化整個輪廓路徑上的能量過程中經(jīng)常忽略微小特征; 精度由能量最小化技術中使用的收斂標準控制;更高的精度要求更嚴格的收斂標準,因此需要更長的計算時間。 參數(shù)活動輪廓模型基于Lagrange框架,直接以曲線的參數(shù)化形式來表達曲線,最具代表性的是由Kasset a1(1987)所提出的Snake模型。該類模型在早期的生物圖像分割領域得到了成功的應用,但其存在著分割結果受初始輪廓的設置影響較大以及難以處理曲線拓撲結構變化等缺點,此外其能量泛函只依賴于曲線參數(shù)的選擇,與物體的幾何形狀無關,這也限制了其進一步的應用。
Snake模型:
ASM(Active Shape Model)
AAM(Active Appearance Models)
CLM(Constrained local model)有約束的局部模型
幾何活動輪廓模型(geometric active contour model):
·S.Osher,J.A.Sethian,Fronts propagating with curvature dependent speed:algorithms basedon Hamilton-Jacobi formulations.Journal of Computational Physics,1988,79:12—49 圖像分割___圖像分割方法綜述(https://blog.csdn.net/vast_sea/article/details/8196507) 參考:
幾何活動輪廓模型的曲線運動過程是基于曲線的幾何度量參數(shù)而非曲線的表達參數(shù),因此可以較好地處理拓撲結構的變化,并可以解決參數(shù)活動輪廓模型難以解決的問題。而水平集(Level Set)方法(Osher,1988)的引入,則極大地推動了幾何活動輪廓模型的發(fā)展,因此幾何活動輪廓模型一般也可被稱為水平集方法。
幾何活動輪廓模型(Geometric Active Contours Model)是以曲線演化理論和水平集方法為理論基礎,繼參數(shù)活動輪廓模型后形變模型的又一發(fā)展,是圖像分割和邊界提取的重要工具之一。相對于參數(shù)活動輪廓模型,幾何活動輪廓模型具有很多優(yōu)點,如可以處理曲線的拓撲變化、對初始位置不敏感、具有穩(wěn)定的數(shù)值解等.
幾何活動輪廓模型又可分為基于邊界的活動輪廓模型、基于區(qū)域的活動輪廓模型?;谶吔绲幕顒虞喞P椭饕蕾噲D像的邊緣信息控制曲線的運動速度。在圖像邊緣強度較弱或是遠離邊緣的地方,輪廓曲線運動速度較大,而在圖像邊緣強度較強的地方,輪廓曲線運動速度較小甚至停止,使得最終的輪廓曲線運動到邊緣位置.
傳統(tǒng)方法的收集大致結束。
推薦閱讀
2021-01-25
2021-02-14
2021-02-05

# CV技術社群邀請函 #
備注:姓名-學校/公司-研究方向-城市(如:小極-北大-目標檢測-深圳)
即可申請加入極市目標檢測/圖像分割/工業(yè)檢測/人臉/醫(yī)學影像/3D/SLAM/自動駕駛/超分辨率/姿態(tài)估計/ReID/GAN/圖像增強/OCR/視頻理解等技術交流群
每月大咖直播分享、真實項目需求對接、求職內(nèi)推、算法競賽、干貨資訊匯總、與 10000+來自港科大、北大、清華、中科院、CMU、騰訊、百度等名校名企視覺開發(fā)者互動交流~

