蘭連意 李波
摘 要 由于彩色圖像提供了比灰度圖像更為豐富的信息,因此彩色圖像處理正受到人們越來越多的關注。彩色圖像分割是彩色圖像處理的重要問題,彩色圖像分割可以看成是灰度圖像分割技術在各種顏色空間上的應用,為了使該領域的研究人員對當前各種彩色圖像分割方法有較全面的了解,因此對各種彩色圖像分割方法進行了系統論述,即先對各種顏色空間進行簡單介紹,然后對直方圖閾值法、特征空間聚類、基于區域的方法、邊緣檢測、模糊方法、神經元網絡、基于物理模型方法等主要的彩色圖像分割技術進行綜述,并比較了它們的優缺點,通過比較發現模糊技術由于能很好地表達和處理不確定性問題,因此在彩色圖像分割領域會有更廣闊的應用前景。
關鍵詞 彩色圖像分割 顏色空間 直方圖閾值化 邊緣檢測 模糊方法 神經網絡
中圖分類號:TP312 文獻標識碼:A
1 數字圖像技術概述
數字圖像處理工具箱函數包括以下15類:(1)圖像顯示函數;(2)圖像文件輸入、輸出函數;(3)圖像幾何操作函數;(4)圖像像素值及統計函數;(5)圖像分析函數;(6)圖像增強函數;(7)線性濾波函數;(8)二維線性濾波器設計函數;(9)圖像變換函數;(10)圖像鄰域及塊操作函數;(11)二值圖像操作函數;(12)基于區域的圖像處理函數;(13)顏色圖操作函數;(14)顏色空間轉換函數;(15)圖像類型和類型轉換函數。
MATLAB圖像處理工具箱支持四種圖像類型,分別為真彩色圖像、索引色圖像、灰度圖像、二值圖像,由于有的函數對圖像類型有限制,這四種類型可以用工具箱的類型轉換函數相互轉換。MATLAB可操作的圖像文件包括JPG、HDF、JPEG、PCX、TIFF、XWD等格式。下面就圖像處理的基本過程討論工具箱所實現的常用功能。
圖像的讀寫與顯示操作:用imread( )讀取圖像,imwrite( )輸出圖像,把圖像顯示于屏幕有imshow( ),image( )等函數。imcrop()對圖像進行裁剪,圖像的插值縮放可用imresize( )函數實現,旋轉用imrotate( )實現。
圖像增強是數字圖像處理過程中常用的一種方法,目的是采用一系列技術去改善圖像的視覺效果或將圖像轉換成一種更適合于人眼觀察和機器自動分析的形式。
2 MATLAB圖像處理工具箱運用實例
為了證明MATLAB語言是一種簡潔,可讀性較強的高效率編程軟件,本文通過運用圖像處理工具箱中的有關函數對一實拍的芯片圖像進行處理。如圖1,圖“Fig.jpg”為一幅原圖像,該圖像右邊的剪切圖像為從“Fig.jpg”中剪切出的將用于分析的子圖像塊。為了便于分析與觀察,把子圖像塊旋轉90度置于水平位置并把該圖存在名為“Fig1.jpg”的圖像文件中。以上的過程可用以下代碼實現。
x=imread('E:\study\電子與通信\Term 2\數字圖像處理DIP\Fig.jpg');
figure,imshow(x);
y=imcrop(x);
figure,imshow(y,[]);
z=imrotate(y,90);
imwrite(z,'E:\study\電子與通信\Term 2\數字圖像處理DIP\Fig1.jpg','jpg');
isrgb(z)
原圖Fig.jpg 剪貼圖Fig1.jpg
圖1
經判斷得知該圖像為一真彩色圖像,首先把它轉換為灰度圖像,以下所有的進一步處理均采用經過灰度化處理后的圖像作為原圖。
通過比較灰度原圖和經均衡化后的圖形可見圖像變得清晰,均衡化后的直方圖形狀比原直方圖的形狀更理想。效果比較見圖2,程序代碼如下:
x=imread('E:\study\電子與通信\Term 2\數字圖像處理DIP\Fig1.jpg');
y=rgb2gray(x);
subplot(221),imshow(y);title('Fig1.jpg 灰度化圖像');
subplot(222),imhist(y);title('均衡化前直方圖');
I=histeq(y);
subplot(223),imshow(I);title('均衡化后圖像');
subplot(224),imhist(I);title('均衡化后直方圖');
圖2
3 結論
以上圖像處理實例只是對MATLAB圖像工具箱的一小部分進行運用,經過更進一步的圖像分割、二值化、歸一化等處理,可以把芯片中的字符特征提取出來送入神經網絡分類器進行識別,我們應用MATLAB神經網絡工具箱對字符分類進行模擬仿真也取得了較好的效果。由此可以看出MATLAB語言簡潔,可讀性強,工具箱涉及的專業領域廣泛且功能強大。圖像工具箱幾乎包括所有經典的圖像處理方法。由于工具箱具有可靠性和開放性,我們可以方便地直接加以使用,也可以把自己的代碼加到工具箱中以改進函數功能,同時,MATLAB中的小波工具箱也有許多函數可運用于圖像處理技術。因此,在圖像處理技術中使用MATLAB語言可以快速實現模擬仿真,大大提高實驗效率, 如果要開發實用程序,MATLAB語言還可以通過MEX動態連接庫實現與C語言的混合編程,為工程應用提供了更多的便利條件。
參考文獻
[1] 王新成.高級圖像處理技術[M] .北京:中國科學技術出版社,2001,18-90.
[2] Kenneth·R·Castleman.數字圖像處理技術[M].北京:電子工業出版社,1998,14-16.
[3] 周龍,等.基于MATLAB的儲糧害蟲圖像處理方法[J].微計算機信息,2005,2-0.