影象分割演算法及與目標檢測、目標識別、目標跟蹤的關係
本篇主要彙總一下影象分割領域的一些常用方法及其優缺點。
影象分割概述:
影象分割是指將一幅影象分成若干互不重疊的子區域,使得每個子區域具有一定的相似性、而不同子區域有較為明顯的差異。影象分割是影象識別、場景理解、物體檢測等任務的基礎預處理工作。常用的影象分割方法有:基於閾值的分割;基於邊緣的分割;基於區域的分割;基於圖論的分割;基於能量泛函的分割;基於小波的分割;基於神經網路的分割等。
基於閾值的分割:
閾值分割直接對影象灰度資訊閾值化處理,用一個或幾個閾值將影象灰度直方圖進行分類,將灰度值在同一個灰度類內的畫素歸為同一個物體。直接利用影象灰度特性進行分割,實現簡單、實用性強;但是當影象灰度差異不明顯、或各物體的灰度範圍值有大部分重疊現象時,難以得到準確的分割結果。
常見的基於閾值的分割方法有:固定閾值分割,直方圖雙峰法,OTSU法等,可參見部落格。
基於邊緣的分割方法:
邊緣總是以強度突變的形式出現,不同區域之間畫素灰度值變化比較劇烈;一般採用影象一階導數極值和二階導數過零點資訊作為邊緣點的判斷依據,該方法的優點是:邊緣定位準確,運算速度快;侷限性是:邊緣的連續性和封閉性難以保證,對於複雜影象分割效果較差,出現邊緣模糊或丟失等現象。邊緣檢測方法一般依賴於邊緣檢測運算元,常用的檢測運算元有:Roberts運算元(精度高、對噪聲敏感)、Sobel運算元(對噪聲有平滑,精度低)、Prewitt運算元、Canny運算元(檢測階躍型邊緣效果好,抗噪聲)、Laplacian運算元和Marr運算元(即LOG運算元,速度快但對噪聲敏感)。
基於區域的分割方法:
基於區域的分割方法考慮影象的空間資訊,如影象灰度、紋理、顏色和畫素統計特性等,按照特徵相似性將目標物件劃分為不同區域。常見的區域分割方法有:區域生長法、分裂合併法和分水嶺分割方法。
區域生長法的基本思想是:根據一定的相似性原則,滿足這一原則的畫素合併起來構成區域,關鍵點是生長種子和生長準則的選取;而分裂合併法恰恰相反,從整個影象開始分裂,後合併得到各個區域;分水嶺分割方法是基於拓撲理論的數學形態學分割方法,基本思想是將影象看作測地學上的拓撲地貌,畫素的灰度值表示該點的海拔,一個區域性極小值及其影響區域稱為集水盆,集水盆的邊界則形成分水嶺。
基於圖論的分割方法:
基於圖論的方法是一種自頂向下的全域性分割方法,主要思想是將整幅影象對映為一幅帶權無向圖 G=(V,E), V是頂點的集合,E是邊的集合,每個畫素對應圖中一個頂點,畫素之間的相鄰關係對應圖的邊,畫素特徵之間的相似性或差異性表示為邊的權值。將影象分割問題轉換成圖的劃分問題,通過對目標函式的最優化求解,完成影象分割過程。
基於圖論的分割方法有:Normalized Cuts演算法,Graph Cuts演算法,Superpixel lattice演算法等,可以參見部落格1,部落格2
基於能量泛函的分割方法:
該類方法主要是在主動輪廓模型(active contour model)基礎上發展出來的演算法,其基本思想是使用連續曲線表示目標邊緣,並定義一個能量泛函使其自變數包括邊緣曲線,將分割過程轉變為求解能量泛函最小值的過程。
基於小波的分割方法:
在影象分割中,波變換是一種多尺度多通道分析工具,較適合對影象進行多尺度邊緣檢測。小波變換的極大值點對應於訊號的突變點,在二維空間中,小波變換適用於檢測影象的區域性奇異性,通過檢測極大值點來確定影象的邊緣。影象邊緣和噪聲在不同尺度上具有不同的特性,在不同的尺度上檢測到的邊緣,在定位精度與抗噪效能上是互補的。在大尺度上,邊緣比較穩定,噪聲不敏感,但由於取樣移位的影響,邊緣的定位精度較差;在小尺度上,邊緣細節資訊比較豐富,邊緣定位精度較高,但對噪聲比較敏感。因此,多尺度邊緣提取可以綜合兩者的優勢。
基於神經網路的分割方法:
基於神經網路分割方法的基本思想是:通過訓練多層感知機來得到線性決策函式,後用決策函式物件素進行分類來達到分割的目的。當前,深度學習如火如荼,基於深度神經網路的影象分割方法也不斷湧現。具體可參見參考4和參考5.
目標分割、目標識別、目標檢測和目標跟蹤之間的關係:
典型的技術路線是:目標分割 ——>目標檢測 ——>目標識別 ——>目標跟蹤
(1)目標分割,Target Segmentation,data/image segmentation的一種。
假定資料是影象,任務是把目標分割出來。對於一般的光學影象,是要提取哪一些畫素是用於表述目標的。問題可以看成是分類問題,即把每一個畫素標籤化,找出感興趣的那一類標籤對應的畫素;也可以是聚類問題,即不知道畫素的標籤,但通過某些特徵可以對畫素進行分類區分開。
(2)目標識別,Target Recognition。
這是一個基於分類的識別問題,即在所有的給定資料中,找出哪些是目標。這個分類的層面往往不是針對畫素,而是給定的一些分類,或定義的物件,或影象本身。
(3)目標檢測,Target Detection。
以雷達檢測系統為例,需要從隨機又充滿干擾和噪音的訊號中,找到有資訊的特徵。最簡單的方式是對一段雷達回波設定閾值,高於閾值的部分認為是探測到了高速大面積飛行器之類的高回波目標。
(4)目標追蹤,Target Tracking。
這個任務涉及的資料一般是時間序列,完成這個任務首先要目標定位。常見的情況是目標被定位以後,演算法需要在後面的序列資料中,快速高效地對目標進行再定位。為了避免不必要的重複計算,可以充分利用時間序列的相關性,可能涉及到一些幾何變換(旋轉,縮放等),運動偽影處理等問題。