摘要:數(shù)字圖像處理是一種通過(guò)計(jì)算機(jī)采用一定的算法對(duì)圖形圖像進(jìn)行處理的技術(shù)。數(shù)字圖像處理技術(shù)已經(jīng)在各個(gè)領(lǐng)域上都有了比較廣泛的應(yīng)用,圖像處理的信息量很大,對(duì)處理速度的要求也比較高。MATLAB強(qiáng)大的運(yùn)算和圖形展示功能,使數(shù)字圖像處理變得更加的簡(jiǎn)單和直觀。該文介紹如何利用MATLAB及其圖像處理工具箱進(jìn)行圖像灰度、亮度、截圖和查找邊緣效果處理,通過(guò)簡(jiǎn)單的例子來(lái)說(shuō)明利用MATLAB圖像處理工具箱及函數(shù)進(jìn)行圖像處理的方法。
關(guān)鍵詞:MATLAB函數(shù);圖像處理;算法;工具箱;GUI界面
中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2013)15-3610-04
1 圖像編輯軟件
基本目標(biāo):加強(qiáng)對(duì)圖像編輯的算法的理解和認(rèn)識(shí),利用MATLAB軟件實(shí)現(xiàn)對(duì)圖像灰度、亮度、截圖以及查找邊緣等操作,綜合運(yùn)用MATLAB工具箱實(shí)現(xiàn)圖像處理的GUI界面程序設(shè)計(jì)。
主要內(nèi)容:學(xué)習(xí)MATLAB GUI程序設(shè)計(jì),利用MATLAB圖像處理工具箱,實(shí)現(xiàn)圖像編輯算法,動(dòng)態(tài)演示算法的執(zhí)行過(guò)程,設(shè)計(jì)和實(shí)現(xiàn)自己的圖像編輯,該軟件能實(shí)現(xiàn)以下功能:圖像的打開(kāi)和保存;設(shè)計(jì)圖形用戶界面,讓用戶通過(guò)菜單能夠?qū)D像進(jìn)行亮度和灰度調(diào)整,顯示和對(duì)比變換前后的圖像;編寫程序通過(guò)按鈕的回調(diào)函數(shù)實(shí)現(xiàn)對(duì)圖像截圖以及查找邊緣操作,并保存。
采用的方法和模型:在快速發(fā)展的信息社會(huì),我們可以借助計(jì)算機(jī),利用MATLAB軟件圖像處理工具箱來(lái)實(shí)現(xiàn)對(duì)數(shù)字圖像進(jìn)行處理,以達(dá)到不同的效果。
2 工具箱選擇及常用函數(shù)介紹
選用圖像處理工具箱(Image Processing Toolbox)。
常用的函數(shù):1) imread 讀入圖像;2) uicontrol 建立并設(shè)置控件屬性;3) axes 建立坐標(biāo)系;4) imwrite或 uiputfile保存圖像;5) uigetfile 文件打開(kāi)對(duì)話框;6)imshow顯示圖像;7)close退出;8)imadjust 圖像的亮度調(diào)整;9)rgb2gray圖像的灰度調(diào)整;10)edge查找邊緣;11)imcrop截圖。
YM0bXp7J55IHbpr+sWz1Pw==3 程序設(shè)計(jì)思路及步驟
3.1 界面設(shè)計(jì)(窗口布局,菜單設(shè)計(jì),所選擇各種圖形窗口對(duì)象等)
窗口布局:兩個(gè)圖像窗口,分別顯示原始圖像和處理后的圖像結(jié)果。利用菜單命令和回調(diào)函數(shù)來(lái)實(shí)現(xiàn)文件的打開(kāi)、保存,退出以及對(duì)圖像的灰度和亮度設(shè)置,圖像的截圖和查找邊緣是用按鈕來(lái)實(shí)現(xiàn)。界面使用了工具箱中的static text, pushbutton,axes工具。工具的屬性設(shè)置有:fontsize,foregroundcolor,string,tag等。
界面設(shè)計(jì)如圖1所示:
3.2回調(diào)函數(shù)的編寫
3.2.1 打開(kāi)
通過(guò)對(duì)話框的形式來(lái)選擇文件,利用uigetfile函數(shù)來(lái)實(shí)現(xiàn),uigetfile函數(shù)顯示一個(gè)打開(kāi)文件對(duì)話框,該對(duì)話框自動(dòng)列出當(dāng)前路徑下的目錄和文件,文件后綴名為“.jpg”。uigetfile函數(shù)的調(diào)用格式為[name,path]=uigetfile(...)。
打開(kāi)菜單的回調(diào)函數(shù)的程序如下:
3.2.2 保存
通過(guò)對(duì)話框的形式來(lái)保存圖像,通過(guò)uiputfile函數(shù)選擇文件名和路徑,用getimage取出坐標(biāo)2變換后的圖像數(shù)據(jù)保存到變量i中,用imwrite函數(shù),把數(shù)據(jù)i存到指定的文件。
保存菜單的回調(diào)函數(shù)的程序如下:
將RGB圖像轉(zhuǎn)換灰度圖像,通過(guò)rgb2gray()函數(shù)來(lái)調(diào)整。
灰度菜單的回調(diào)函數(shù)的程序如下:
查找邊緣按鈕的回調(diào)函數(shù)的程序如下:
4 運(yùn)行結(jié)果
先運(yùn)行MATLAB軟件,然后打開(kāi)相應(yīng)的GUI界面的.m文件,然后打開(kāi)GUI界面,進(jìn)行程序的運(yùn)行。
4.1 打開(kāi)菜單運(yùn)行界面(圖2)
4.2灰度菜單運(yùn)行界面(圖3)
4.3亮度菜單運(yùn)行界面(圖4)
4.4截圖按鈕運(yùn)行界面(圖5)
4.5查找邊緣按鈕運(yùn)行界面(圖6)
利用MATLAB軟件對(duì)圖像進(jìn)行簡(jiǎn)單處理設(shè)計(jì),GUI界面設(shè)計(jì)對(duì)圖像的操作處理及其方便。
參考文獻(xiàn):
[1] 鄭阿奇,曹戈,趙陽(yáng).MATLAB實(shí)用教程[M].3版.北京:電子工業(yè)出版社,2012,1.
[2] 程衛(wèi)國(guó),馮峰,姚東,徐聽(tīng).MATLAB5.3應(yīng)用指南[M].北京:人民郵電出版社,1999,11.
[3] 陳楊.MATLAB 6.X圖像編程與圖像處理[M].西安:西安電子科技大學(xué)出版社,2002.10.1.
[4] 秦襄培.MATLAB圖像處理與界面編程寶典[M].北京:電子工業(yè)出版社,2009.3.1.