導讀:數字影像處理技術是一個跨學科的領域,隨著計算機科學技術的不斷發展,影像處理和分析逐漸形成了自己的科學體系,新的處理方法層出不窮,盡管其發展歷史不長,但卻引起各方面人士的廣泛關注,

為了方便大家學習交流,我建了一個扣裙:966367816
另外我還整理了整整python人工智能學習筆記、課程視頻、面試寶典一并可以無套路免費
分享給大家!掃描文末二維碼加V免費咨詢學習問題領取資料
定義
影像分割就是把影像分成若干個特定的、具有獨特性質的區域并提出感興趣目標的技術和程序,它是由影像處理到影像分析的關鍵步驟,現有的影像分割方法主要分以下幾類:基于閾值的分割方法、基于區域的分割方法、基于邊緣的分割方法以及基于特定理論的分割方法等,從數學角度來看,影像分割是將數字影像劃分成互不相交的區域的程序,影像分割的程序也是一個標記程序,即把屬于同一區域的像素賦予相同的編號

在通信領域中,影像分割技術對可視電話等活動影像的傳輸很重要,需要把影像中活動部分與靜止的背景分開,還要把活動部分中位移量不同的區域分開,對不同運動量的區域用不同的編碼傳輸,以降低傳輸所需的碼率,

影像分割是需要進一步研究的技術,人們希望引入一些人為的知識導向和人工智能的方法,用于糾正某些分割中的錯誤,是很有前途的方法,但是這又增加了解決問題的復雜性,
分割方法
閾值分割
灰度閾值分割法是一種最常用的并行區域技術,它是影像分割中應用數量最多的一類,閾值分割方法實際上是輸入影像f到輸出影像g的如下變換:

其中,T為閾值,對于物體的影像元素g(i,j)=1,對于背景的影像元素g(i,j)=0,
由此可見,閾值分割演算法的關鍵是確定閾值,如果能確定一個合適的閾值就可準確地將影像分割開來,閾值確定后,將閾值與像素點的灰度值逐個進行比較,而且像素分割可對各像素并行地進行,分割的結果直接給出影像區域,
閾值分割的優點是計算簡單、運算效率較高、速度快,在重視運算效率的應用場合(如用于硬體實作),它得到了廣泛應用,
人們發展了各種各樣的閾值處理技術,包括全域閾值、自適應閾值、最佳閾值等等,
全域閾值是指整幅影像使用同一個閾值做分割處理,適用于背景和前景有明顯對比的影像,它是根據整幅影像確定的:T=T(f),但是這種方法只考慮像素本身的灰度值,一般不考慮空間特征,因而對噪聲很敏感,常用的全域閾值選取方法有利用影像灰度直方圖的峰谷法、最小誤差法、最大類間方差法、最大熵自動閾值法以及其它一些方法,
在許多情況下,物體和背景的對比度在影像中的各處不是一樣的,這時很難用一個統一的閾值將物體與背景分開,這時可以根據影像的區域特征分別采用不同的閾值進行分割,實際處理時,需要按照具體問題將影像分成若干子區域分別選擇閾值,或者動態地根據一定的鄰域范圍選擇每點處的閾值,進行影像分割,這時的閾值為自適應閾值,
閾值的選擇需要根據具體問題來確定,一般通過實驗來確定,對于給定的影像,可以通過分析直方圖的方法確定最佳的閾值,例如當直方圖明顯呈現雙峰情況時,可以選擇兩個峰值的中點作為最佳閾值,
圖1(a)和(b)分別為用全域閾值和自適應閾值對經典的Lena影像進行分割的結果,

區域分割
區域生長和分裂合并法是兩種典型的串行區域技術,其分割程序后續步驟的處理要根據前面步驟的結果進行判斷而確定,
區域生長:區域生長的基本思想是將具有相似性質的像素集合起來構成區域,具體先對每個需要分割的區域找一個種子像素作為生長的起點,然后將種子像素周圍鄰域中與種子像素有相同或相似性質的像素(根據某種事先確定的生長或相似準則來判定)合并到種子像素所在的區域中,將這些新像素當作新的種子像素繼續進行上面的程序,直到再沒有滿足條件的像素可被包括進來,這樣一個區域就長成了,

相似性準則,制定讓生長停止的條件或準則,相似性準則可以是灰度級、彩色、紋理、梯度等特性,選取的種子像素可以是單個像素,也可以是包含若干個像素的小區域,大部磁區域生長準則使用影像的區域性質,生長準則可根據不同原則制定,而使用不同的生長準則會影響區域生長的程序,區域生長法的優點是計算簡單,對于較均勻的連通目標有較好的分割效果,它的缺點是需要人為確定種子點,對噪聲敏感,可能導致區域內有空洞,另外,它是一種串行演算法,當目標較大時,分割速度較慢,因此在設計演算法時,要盡量提高效率,
區域分裂合并
區域生長是從某個或者某些像素點出發,最后得到整個區域,進而實作目標提取,分裂合并差不多是區域生長的逆程序:從整個影像出發,不斷分裂得到各個子區域,然后再把前景區域合并,實作目標提取,分裂合并的假設是對于一幅影像,前景區域由一些相互連通的像素組成的,因此,如果把一幅影像分裂到像素級,那么就可以判定該像素是否為前景像素,當所有像素點或者子區域完成判斷以后,把前景區域或者像素合并就可得到前景目標,

圖3 四叉樹分割后的影像
在這類方法中,最常用的方法是四叉樹分解法(如圖3所示),設R代表整個正方形影像區域,P代表邏輯謂詞,基本分裂合并演算法步驟如下:(1)對任一個區域,如果H(Ri)=FALSE就將其分裂成不重疊的四等份;
(2)對相鄰的兩個區域Ri和Rj,它們也可以大小不同(即不在同一層),如果條件H(Ri∪Rj)=TRUE滿足,就將它們合并起來,
(3)如果進一步的分裂或合并都不可能,則結束,
分裂合并法的關鍵是分裂合并準則的設計,這種方法對復雜影像的分割效果較好,但演算法較復雜,計算量大,分裂還可能破壞區域的邊界,
邊緣分割
影像分割的一種重要途徑是通過邊緣檢測,即檢測灰度級或者結構具有突變的地方,表明一個區域的終結,也是另一個區域開始的地方,這種不連續性稱為邊緣,不同的影像灰度不同,邊界處一般有明顯的邊緣,利用此特征可以分割影像,
影像中邊緣處像素的灰度值不連續,這種不連續性可通過求導數來檢測到,對于階躍狀邊緣,其位置對應階導數的極值點,對應二階導數的過零點(零交叉點),因此常用微分算子進行邊緣檢測,常用的一階微分算子有Roberts算子、Prewitt算子和Sobel演算法,二階微分算子有Laplace算子和Kirsh算子等,在實際中各種微分算子常用小區域模板來表示,微分運算是利用模板和影像卷積來實作,這些算子對噪聲敏感,只適合于噪聲較小不太復雜的影像,

圖4 邊緣檢測結果
(a)LoG算子 (b)Canny算子由于邊緣和噪聲都是灰度不連續點,在頻域均為高頻分量,直接采用微分運算難以克服噪聲的影響,因此用微分算子檢測邊緣前要對影像進行平滑濾波,LoG算子和Canny算子是具有平滑功能的二階和一階微分算子,邊緣檢測效果較好,如圖4所示,其中LoG算子是采用Laplacian算子求高斯函式的二階導數,Canny算子是高斯函式的一階導數,它在噪聲抑制和邊緣檢測之間取得了較好的平衡,關于微分算子的邊緣檢測的詳細內容可參考文獻,
直方圖法
與其他影像分割方法相比,基于直方圖的方法是非常有效的影像分割方法,因為他們通常只需要一個通過像素,在這種方法中,直方圖是從影像中的像素的計算,并在直方圖的波峰和波谷是用于定位影像中的簇,顏色和強度可以作為衡量,
這種技術的一種改進是遞回應用直方圖求法的集群中的形象以分成更小的簇,重復此操作,使用更小的簇直到沒有更多的集群的形成,
基于直方圖的方法也能很快適應于多個幀,同時保持他們的單通效率,直方圖可以在多個幀被考慮的時候采取多種方式,同樣的方法是采取一個框架可以應用到多個,和之后的結果合并,山峰和山谷在以前很難識別,但現在更容易區分,直方圖也可以應用于每一個像素的基礎上,將得到的資訊被用來確定的像素點的位置最常見的顏色,這種方法部分基于主動物件和一個靜態的環境,導致在不同型別的視頻分割提供跟蹤
小編整理了有關Python人工智能的資料,有影像處理opencv\自然語言處理、機器學習、數學基礎等資源庫,想學習人工智能或者轉行到高薪資行業的,大學生也非常實用,無任何套路免費提供, 掃碼+vx(更方便)領取,或者加我裙【966367816】
歡迎大家掃碼找我免費咨詢學習問題呀~
?
????????
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/333549.html
標籤:其他
下一篇:四、Nginx負載均衡實體
