徐慶偉, 馬志喜, 劉洲峰
(1.中原工學院, 鄭州 450007; 2.河南省同力水泥有限公司, 河南 鶴壁 458000)
基于MIL的圖像分割算法研究
徐慶偉1, 馬志喜2, 劉洲峰1
(1.中原工學院, 鄭州 450007; 2.河南省同力水泥有限公司, 河南 鶴壁 458000)
傳統(tǒng)分水嶺圖像分割算法主要基于梯度模值圖像,尋找集水盆地,易產生過分割現象。本文提出了基于MIL改進的分水嶺圖像分割算法,借助MIL軟件開發(fā)性強、函數庫功能強大等特點,對粘連目標圖像進行了分割。實驗證明,該方法具有較強的有效性和實用性。
分水嶺圖像分割算法;梯度模值;集水盆地;過分割;粘連目標
圖像分割根據顏色、灰度、紋理和輪廓形狀等特征把圖像劃分成若干互不交迭、具有獨特性質的區(qū)域,并使這些特征在同一區(qū)域內呈現出更多相似性,而在不同區(qū)域間呈現出較明顯的差異性。其分割過程相當于對圖像中的每個像素加一標簽,使得具有同類標簽的像素顯現出相近的視覺感知特性[1]。
當前,主要的圖像分割算法有基于閾值的分割算法、基于邊緣的分割算法、基于區(qū)域的分割算法、基于聚類分析和基于形態(tài)學的分水嶺圖像分割算法等。其中,分水嶺圖像分割算法具有計算速度較快、對圖像微弱邊緣具有良好響應、便于得到封閉連續(xù)邊緣等優(yōu)點,成為目前使用較為廣泛的分割算法之一。
分水嶺算法是一種基于拓撲理論的數學形態(tài)學梯度分割處理方法。其基本思想是把圖像看作是地理上的拓撲地貌,圖像中每個像素灰度值表示該點的海拔高度,每一個局部極小值及其影響區(qū)域稱為集水盆地,相鄰集水盆地的邊界則形成了分水嶺[2],如圖1所示。
如果圖像中出現多個目標重疊現象,重疊部分的像素灰度值較接近,目標分割難度就會很大,如圖2所示。分水嶺分割算法因其自身的特點,圖像中亮度較強區(qū)域像素值較大,較暗區(qū)域像素值則較小,并對圖像中的前景對象和背景對象進行區(qū)分標記[3],通過尋找“集水盆地”和“分水嶺邊界”,可對圖像中重疊目標進行較好的分割。
圖1 集水盆地構造
圖2 粘連藥丸
MIL全稱為Matrox Imaging Library,由加拿大Matrox公司開發(fā)。MIL軟件包是一個獨立于硬件的、含有多個標準模塊或組件的32位圖像庫,可以對圖像進行采集、處理、分析、顯示和存取操作。
采用MIL軟件進行應用程序開發(fā)首先要設置開發(fā)環(huán)境,放好動態(tài)鏈接庫位置,鏈接導入庫文件,引入必要的.h頭文件。
2.1 MIL基本組成
與C++的對象一樣,MIL中的5大基本對象(Application、System、Display、Digtizer、Date Buffer)可看作一個結構體[4]。圖3是這5大基本對象的關系圖。
圖3 MIL基本對象之間關系
Application指的是自己開發(fā)的一個應用程序。一般應用程序同一時刻只存在一個Application對象,主要用來提供一個用于控制和執(zhí)行MIL應用程序的基本環(huán)境。
System包含CPU或GPU、內存或顯存,為圖像控制器單元分配的一個虛擬訪問對象,能夠通過加上相機和顯示器來采集、保存和顯示。每個Application下可以包含多個System,如同一臺電腦可以插上多塊Matrox圖像板卡。
Date Buffer對應一塊內存,可以對它賦予不同的屬性,對圖像作相應處理,如存儲、顯示、采集、處理。
Digtizer用于相機的采集和相機屬性的調整等。
Display對應顯示器,用于完成所有和顯示有關的操作,默認分配的Display對象不需要選擇要顯示的窗口句柄。
2.2 MIL圖像新建和顯示
操作步驟為:
①分配默認的應用和系統(tǒng)。首先分配Application和默認的System、Date Buffer、Display。默認的System是PC,默認的Date Buffer包含MIL安裝時指定的DCF文件定義,默認的Display和默認Date Buffer關聯(lián)為MIL內建的Windowed Display。
②分配顯示的圖像Date Buffer。
③初始化Date Buffer,內存中繪制相應圖像。
④分配顯示Display。
⑤圖像Date Buffer內容顯示到相應Display上,即Windows窗口中。
⑥釋放分配的資源。
分水嶺圖像分割算法可以將圖像分割為互不重疊區(qū)域,其應用對象是灰度梯度圖像。梯度圖像可由Sobel算子在灰度圖像上得到[5]。
Sobel算子是一種離散性差分算子,包含2組3×3矩陣的算子。一個是橫向矩陣,一個是縱向矩陣,主要用于圖像邊緣檢測。使用Sobel邊緣算子對圖像進行水平和垂直方向的濾波,然后求取模值。Sobel算子濾波后的圖像在邊界處會顯示比較大的值,在沒有邊界處的值會很小。用I代表原始圖像,Dx和Dy分別代表經水平和垂直方向邊緣檢測的圖像,如式(1)和式(2)所示:
(1)
(2)
梯度大小D如式(3)所示:
(3)
梯度方向角θ如式(4)所示:
(4)
使用MIL軟件的MimEdgeDetect( )函數對原始圖像進行邊緣檢測操作,尋找“集水盆地”。源程序代碼如下:
MimEdgeDetect(MilImageWatershed,MilImageWatershed,M_NULL,M_SOBEL,M_REGULAR_EDGE_DETECT,M_NULL);
MimWatershed(MilImageWatershed,M_NULL,MilImageWatershed,WATERSHED_MINIMAL_GRADIENT_VARIATION,M_MINIMAL_FILL+M_BASIN);
但是,直接對梯度模值圖像進行分水嶺算法分割往往會存在過分割現象[5-7]。本文改進后的算法為,取下背景的標簽,將其剪輯為零,并將其他標簽加至緩沖區(qū)的最大值,以獲得更好的分割效果。源程序代碼如下:
MbufGet2d(MilImageWatershed,M_PIXEL_FETCH_POSITION_X,M_PIXEL_FETCH_POSITION_Y, 1, 1,lFetchedValue);
MimClip(MilImageWatershed,MilImageWatershed,M_EQUAL,lFetchedValue, 0, 0, 0);
MimClip(MilImageWatershed,MilImage,M_NOT_EQUAL, 0, 0, 0xFF, 0);
處理后藥丸二值化圖像如圖4所示:
圖4 藥丸二值化圖像
采用歐幾里得距離變換,將二值化圖像前景中的像素值轉化為該點到達最近的背景點的距離[8]。尋找圖像的分水嶺,采用數學形態(tài)學“與”操作來分離粘連的藥丸,分割效果較滿意,如圖5所示。源程序代碼如下:
MimDistance(MilImage,MilImageWatershed,M_CHAMFER_3_4);
MimWatershed(MilImageWatershed,M_NULL,MilImageWatershed,WATERSHED_MINIMAL_DISTANCE_VARIATION,M_STRAIGHT_WATERSHED+M_MAXIMAL_FILL+M_SKIP_LAST_LEVEL);
MimArith(MilImageWatershed,MilImage,MilImage,M_AND);
圖5 分離后的藥丸
借助于MIL軟件采用改進的分水嶺圖像分割算法,通過數學形態(tài)學操作對粘連圖像進行了很好的分割,達到了預期的實驗目的。該方法將會在機器視覺、圖像模式識別領域得到更加廣泛的應用。
[1] (美)岡薩雷斯.數字圖像處理(MATLAB)[M].北京:電子工業(yè)出版社,2004:30-35.
[2]GonzalezRC,WoodsRE.DigitalImageProcessing[M].北京:電子工業(yè)出版社,2004:500-507.
[3] 楊文明,陳國斌,沈曄湖.一種基于分水嶺變換的圖像分割方案[J]. 浙江大學學報(工學版),2006, 40(9): 1503-1510.
[4] 文洲.MIL開發(fā)基礎概念和步驟[EB/OL].(2013-10-18).http://blog.csdn.net/wenzhou1219/article/details/12857933.
[5] 陳婷婷.采用模糊形態(tài)學和分水嶺算法的圖像分割研究[D].重慶:西南大學,2008.
[6] 陳琳.基于分形和分水嶺的圖像分割方法[J]. 計算機應用與軟件, 2008, 25(8):227-228.
[7] 杜俊利,李樂.基于標記提取分水嶺算法的醫(yī)學圖像分割[J].中原工學院學報,2012(6):42-47.
[8]KimJB,KimHJ.Multiresolution-basedWatershedsforEfficientImageSegmentation[J].PatternRecognitionLetters, 2003,24(1-3): 473-488.
(責任編輯:陸俊杰)
Study of Image Segmentation Algorithm Based on MIL
XU Qing-wei1, MA Zhi-xi2, LIU Zhou-feng1
(1.Zhongyuan University of Technology, Zhengzhou 450007;2.Henan Tongli Cement Co., Ltd., Hebi 458000, China)
The traditional watershed image segmentation algorithm acting on gradient modulus value image and looking for catchment basin, easyly brings over segmentation phenomenon. This paper proposes an improved watershed image segmentation algorithm based on MIL software, using Mil software's strong development and powerful function library, the object images of adhesion have good segmentation. The method is demonstrated it’s validity and practicability by the experiments.
watershed image segmentation algorithm; gradient modulus value; catchment basin; over segmentation; object images of adhesion
2016-10-12
河南省基礎與前沿研究項目(142300410042)
徐慶偉(1980-),男,河南焦作人,講師,碩士,主要研究方向為機器視覺圖形圖像處理、模式識別。
1671-6906(2016)06-0087-04
TP11
A
10.3969/j.issn.1671-6906.2016.06.018