摘 要:遺傳算法是對生物進化論中自然選擇和遺傳學機理中生物進化過程的模擬來計算最優解的方法。遺傳算法具有眾多的優點,如魯棒性、并行性、自適應性和快速收斂,可以應用在圖像處理技術領域中圖像分割技術來確定分割閾值。圖像分割是圖像處理技術的研究對象之一,它對于圖像特征提取、圖像識別等圖像處理技術等有著重要意義。主要研究基于遺傳算法的圖像分割效果,采用Matlab軟件進行仿真實驗,對不同圖像分割算法的效果進行比較。實驗表明,遺傳算法是處理圖像分割的優秀算法,圖像分割效果相比于傳統的圖像分割算法更加優秀。
關鍵詞:圖像分割; 閾值計算; 遺傳算法; 圖像特征
中圖分類號:TP919.8 文獻標識碼:A
文章編號:1004-373X(2010)14-0042-03
Image Segmentation Based on Genetic Algorithm
CHEN Jie, FU Yan
(Guangdong Institute of Science Technology, Guangzhou 510640, China)
Abstract: Genetic algorithm is an optimal solution method of using natural selection in biological evolution and biological evolution in genetic mechanism. Genetic algorithm has many advantages such as robustness, parallel, adaptive, and fast convergence, can be used in the field of image processing to determine the threshold value. Image segmentation is one of the objects of image processing, it is meaningful to the image feature extraction, image recognition and other image processing technologies. The image segmentation effect based on genetic algorithm of using MATLAB software to simulate the different image segmentation algorithms and compare the result .Experiments indicate that the genetic algorithm is outstanding to deal with the image segmentation ,the results is more outstanding than traditional image segmentation algorithm.
Keywords: image segmentation;threshold computation;genetic algorithm; image feature
0 引 言
圖像分割是圖像處理中的一項關鍵技術,隨著20世紀數字圖像處理技術的興起而受到人們的廣泛深入的研究,提出了很多優秀的算法。但這些算法往往只在某一個方面表現出優秀的解決問題的能力,在另外的一些領域則需要其他的圖像分割算法。因此,現有的圖像分割算法并沒有一般意義上的通用性。另外,圖像分割效果的評估也沒有相應的評判標準,通常的處理方式只能是具體問題具體分析。圖像的分割是以灰度值作為分割的依據,通過各個像素的灰度值和事先確定的閾值的比較來分割圖像。從算法中可以看出,如何確定最合適的閾值成為處理好圖像分割的關鍵,這自然成為一直以來分割算法研究的焦點。
圖像分割是數字圖像處理技術與計算機視覺的基本問題之一,其要點是:把圖像劃分成若干互不交疊區域的像素的集合,這些區域要么對當前的分割有意義,是目標物體與背景的邊緣,要么有助于說明它們之間的對應關系。圖像分割伴隨著數字圖像處理技術在實際中已經得到廣泛的應用,例如在工業工程,產品檢驗,工業控制,圖像處理,衛星圖片、生物醫學圖像分析、保安監控以及軍事、衛生、農業工程等諸多領域[1]。概括來說,在各種圖像應用中,只需對圖像物體目標進行提取、測量等進一步操作都離不開圖像分割,圖像分割往往是這些處理步驟的準備階段,圖像分割的效果直接影響后續任務的有效性,因此圖像分割具有重要的研究意義。圖像分割技術的發展和更新與許多學科和領域密切相關,例如數學、物理學、心理學、電子學、無線電、計算機科學等。隨著各學科不同的新理論和新方法的提出,人們也嘗試用來解決圖像分割問題,發展出許多具有特點理論、方法和工具的分割技術。每當有新的數學理論、方法或工具提出來,它往往就被嘗試用于圖像分割,也因此提出了不少特殊的算法。例如利用數學形態學、模糊ART、模擬退火、遺傳算法等[2]。其中,遺傳算法具有魯棒性、并行性、自適應性和快速收斂的突出優點。遺傳算法在各個應用領域取得的巨大成功引起了廣大學者的關注并開始嘗試用來解決圖像分割問題。遺傳算法是一種迭代式的優化算法,能夠在圖像分割時來幫助合理地確定分割閾值。
圖像分割方法可以大致分為4類[3]:
(1) 利用圖像灰度值統計的方法,常用方法有一維直方圖閾值化方法和二維直方圖閾值化方法。
(2) 利用圖像空間域信息和光譜信息的圖像分割方法,常用的有區域分裂、合并生長法、紋理分割法和多光譜圖像分割法等。
(3) 利用圖像中灰度變化最強烈的區域信息方法,即邊緣檢測方法,它在圖像分割研究領域中占的比例最大,利用不同的算子進行邊緣檢測,比較常用的如canny算子。
(4) 利用圖像分類技術進行圖像分割的像素分類方法。常用的有統計分類方法、模糊分類方法與神經網絡分類方法等。
1 圖像閥值
一幅圖像通常包括目標物體、背景高斯噪聲、運動模糊等,由于目標物體和背景的灰度有較大差異,和噪聲產生的麻點的灰度值相差更多,要從多值的灰度圖像中提取目標物體,常用的方法就是設定某一閾值,將圖像像素分成2大部分:大于閾值的像素和小于閾值的像素即灰度圖像的二值化。二值化處理只要功能就是把目標物體和背景灰度差異較大的圖像分成2個部分。二值化是數字圖像處理中一項最簡單的變換方法,通過采用固定閾值、雙固定閾值等不同算法,把一幅灰度圖變成二值圖像,將所需的目標物體地從復雜的圖像背景中脫離出來[4]。具體的操作過程是先由通過算法找到一個合適閾值,要求是閾值處于目標物體閾值和背景閾值之間。若圖像中的像素灰度值小于該閾值,則將該像素的灰度值設置為0或255,若圖像中的像素灰度值大于該閾值,則將該像素的灰度值設置為255或0。也就是說通過一個以閾值灰度值為跳變點的階躍函數來實現圖像處理。其中閾值灰度值需要同多合適的算法來確定。經過處理后的圖像是一幅二值圖。
1.1 固定閾值法
固定閾值法就是為灰度圖像設定一個閾值,把灰度值小于給定閾值的像素置為0(或者255),大于閾值的像素置為255(或者0),從而實現灰度圖像到二值圖像的變換[5]。
1.2 雙固定閾值法
雙固定閾值法預先設置2個閾值,當對圖像進行處理時,如果某個像素的灰度值在兩者之間時置0(或者255);其余情況則置255(或者置0)。應當根據具體情況選擇雙固定閾值法改變圖像灰度值的方向。
2 基于遺傳算法的圖像分割
遺傳算法(genetic algorithm)最早應用于對生物系統的計算機模擬,研究方面主要涉及到算法結構,算法參數,算法適用范圍等方面。遺傳算法采用整體搜索策略和優化搜索。遺傳算法是通用的一種方法,不涉及具體的研究領域和內容,只關心相應的目標函數和輔助函數,即所謂魯棒性。因此廣泛應用于工業工程、計算科學、工控系統、交通、計算機、通信、電子科學與技術等領域。在圖像分割過程中,最關鍵的就是找到最優的閾值,遺傳算法可以說是解決這個問題的優秀算法之一,它的整體搜索策略和優化搜索方法能夠快速準確地得到基于成個灰度圖像的閥值最優解[6]。
遺傳算法運算的基本流程:
(1)針對圖像分割編寫代碼:遺傳算法一般不直接處理空間的參數而是集進行編碼,即用0和1構成的字符串形成矩陣。
(2)隨機初始化像素群體X(0):=(x1,x2,…,xn):遺傳算法從這些群體出發,模擬生物進化過程進行選擇,最后得出需要的個體集合,滿足優化搜索的要求。
(3) 對當前像素群體X(t)中每個個體xi計算其適應度F(xi),適應度表示了該像素的灰度值:遺傳算法不涉及問題的具體領域,只需依據適應度函數控制像素變化。根據適應度函數對每個像素計算其適應度,為選擇提供依據。設計適應度函數的方法是把問題的目標函數轉換成合適的適應度函數和輔助函數[7]。
(4) 應用選擇算子產生Xr(t)。
(5) 對Xr(t)應用其他的算子,產生新一代像素群體X(t+1),應用其他的算子可以擴展圖片像素的覆蓋面,體現整體計算的策略。
(6)選擇:這是是遺傳算法的關鍵,它參照了適者生存的理論。
(7) 變異:模擬了生物的基因突變現象。對像素進行重新評價、選擇如此循環往復,使圖像中目標物體平均適應度不斷提高直到上限則迭代過程收斂,算法結束。變異算子保證的是算法能搜索到圖像的每一個像素,也是體現全局的策略。
遺傳算法最常用的算子:
(1)選擇算子: 選擇算子從群體中按某一概率成對選擇個體,某個體xi被選擇的概率Pi與其適應度值成正比。最通常的實現方法是輪盤賭模型[8]。
(2)交叉算子: 交叉算子將被選中的2個個體的基因鏈按概率進行交叉,生成2個新的個體,交叉位置是隨機的。其中是一個系統參數。
(3)變異算子: 變異算子將新個體的基因鏈的各位按概率進行變異,對二值基因鏈來說即是取反[9]。
上述各種算子的實現是多種多樣的,而且許多新的算子正在不斷地提出,以改進遺傳算法的某些性能。系統參數(個體數n,基因鏈長度l,交叉概率Pc,變異概率Pm等)對算法的收斂速度及結果有很大的影響,應視具體問題選取不同的值。
遺傳算法是一種通用的算法,在程序設計應時也應考慮到程序的重用性,而且應該能夠代入其他算子進行運算。面向對象的編程中的類的繼承提供了這一可能[10]。
3 仿真實驗
仿真實驗如圖1所示。
圖1 仿真實驗圖示
實驗分析:
比較未采用遺傳算法的圖像分割、遺傳算法的圖像分割的結果:
(1) 用遺傳算法做圖像分割比未采用遺傳算法的圖像分割實際視覺效果好。
(2) 遺傳算法同時對多處理,因此遺傳算法具有較好的全局性。
(3) 遺傳算法采用適應度函數,對個體進行分割,能求得最優解,即獲得最佳分割點。
提出基于遺傳算法的圖像分割方法及適應度選取,在Matlab平臺上對圖像進行仿真,實驗結果表明,圖像二值化效果優秀。
4 結 語
(1) 圖像分割是圖像處理和計算機視覺中基本技術,是大多數圖像處理和視覺系統過程的重要預處理階段。圖像分割是應用一種或多種運算將圖像分成一些 具有相似特性的區域,主要有閾值法和區域法。前者如:直方圖法、一維二維最大熵法、最小誤差法、最大類問方差法等。后者是利用局部空間信息進行分割,將具有相似特性的像素集合起來構成區域,主要有區域生長法和分裂合并法。在實際應用中應根據實際需要選取不同的圖像分割方法。
(2) 遺傳算法是模擬自然界機制和生物進化論而形成的一種搜索最優解的算法。它不需要求解問題的任何信息而僅需目標函數的信息,只關心目標函數。通過產生初始群種,計算個體適應度,依據適應度選擇再生個體、交叉、變異生成新的個體。本文通過仿真實驗證明,遺傳算法作為一種優化算法在用于圖像分割時,縮短了尋找閾值的運算時間,圖像分割處理質量好,有著廣闊的應用潛力。
參考文獻
[1]汪筱紅,須文波.基于遺傳算法的閾值圖像分割研究[J].太原師范學院學報:自然科學版,2007,6(3):111-113,144.
[2]LI Wei-wei, HUANG Hui-xian, ZHANG Dong-bo, et al. A color image segmentation method based on automatic seeded region growing[C]//2007IEEE International Conference on Automation and Logistics. Washington DC: IEEE Computer Society, 2007: 1925-1929.
[3]LI Yong-cang, YIN Hai-ming, SHI Mei-hong, et al. A method of color image segmentation based on DPCNN[C]//Proceedings of the2008International Conference on Cyberworlds. Washington DC: IEEE Computer Society, 2008: 725-729.
[4]屠昂燕,陳建成.遺傳算法的收斂性研究[J].湖北第二師范學院學報,2008,25(2):49-51.
[5]李紅梅.遺傳算法概述[J].軟件導刊,2009(1):67-68.
[6]汪慧蘭.圖像檢索中圖像分割方法綜述[J].皖西學院學報,2009,25(2):18-21.
[7]楊金龍,張光南,厲樹忠,等.基于二維直方圖的圖像分割算法研究[J].激光與紅外,2008,38(4):400-403.
[8]葉志偉,張金平,賴旭東.基于粒子群算法的最大交叉熵的圖像分割方法[J].安徽農業科學,2007,35(23):7037-7038,7041.
[9]張超,張家樹,賈東立.基于混沌遺傳算法的圖像閾值分割[J].計算機工程與應用,2006,42(2):45-47.
[10]徐小慧,張安.基于粒子群優化算法的最佳熵閾值圖像分割[J].計算機工程與應用,2006,42(10):8-11.