劉付桂蘭



摘要:在社會信息化高速發展的今天,我們的身邊被各種各樣的信息包圍著,人們在種類繁雜的各類信息中努力尋找屬于自己的有用信息,從而使自己以更快的步伐追趕時代的潮流,以防被時代淘汰。隨著計算機技術的發展,數字圖像處理技術廣泛地被應用至社會各個領域,圖像處理則成為一門學科。MATLAB又稱矩陣實驗室,具備強大的矩陣運算能力,非常適用于圖像處理。本文通過實例分析,重點介紹了基于Matlab GUI的常見圖像處理算法實現。
關鍵詞:MATLAB;平滑處理;圖像增強
科學技術的不斷發展,數字圖像處理技術應用需求激增,前景空前廣闊,技術本身也得到了迅速的發展。數字圖像處理已經成為認識和改造世界的重要手段,成為人類生產和生活當中必不可少的部分。
1 用戶界面的創建
1.1 創建一個GUI的界面
首先打開matlab 軟件,在創建界面之前首先選擇工作路徑,點擊搜索欄旁邊的白色文檔按鈕,選擇對應你需要儲備本次設計的路徑,在界面選項欄點擊guide按鈕可以直接進行gui界面的選擇,同時也可以在語句框里輸入guide同時也可以彈出如圖1界面,進行一個gui的用戶創建。
彈出對話框,其中會有兩個選項,一個是創建新的gui,另一個是讀取之前存儲的gui的設計。本次為第一次創建則是點擊第一個選項,創建新的gui.點擊borse可以對文檔進行更名,方便后面查找文件。
點擊確認后,彈出兩個窗口,左邊窗口為設計的基本窗口,右邊的是程序的窗口。通過設計的窗口,幾乎可以實現任何的設計,通過程序窗口來決定設計如何運作。接下來進行界面的基本設計,對旁邊的選項按鈕進行一系列的搭建,就能完成我們需要的設計。
1.2 用戶圖像的讀取
按照系統的需求分析,需要先建立一個可以解決圖像顯示和讀取的功能模塊,以及對圖像進行篩選,圖像顯示以及圖像保存等處理,最后將經過處理后的圖像在GUI里進行顯示。
本模塊詳細設計中,添加相應組件時一定要考慮組件的類型,要添加相應功能按鈕以實現圖像的顯示和讀取,還要添加“文件”菜單并添加子菜單以實現“新建”“打開”“保存”和“退出”功能等。具體模塊框圖如圖5所示:
完成基本設計后,右鍵點擊按鈕組件,也就是編輯后的“讀取圖片”按鈕,選擇callback,當用戶觸發程序設計時,在按下一個pushbutton或者拖動一個進度條按鈕時,所要執行的字符功能。點擊進去后進行程序函數設計界面,如下圖6。
2 圖像的基本處理方式
2.1圖像的邊緣檢測模塊
1)基本原理
本實驗的主要目的是對圖像的邊緣進行提取,通過對圖像邊緣的分析來解構圖像的特征。
在邊緣檢測當中,主要是提取圖像中不連續部分的特征,然后根據閉合的邊緣來確定區域。而在區域劃分中,則把圖像分割成各個特征相同的區域,各區域之間的邊界即為邊緣。因為邊緣檢測方法無需將圖像逐個像素進行分割,故其更適用于大圖像的分割。接下來開始進行具體的操作,操作:點開matlab軟件,輸入或者點擊GUIDE,彈出對話框后,點擊讀取歷史文檔,從而進行操作,如圖7。
2.2直方圖處理模塊
根據系統的需求分析和總體功能設計,本模塊需解決圖像的顯示和讀取,直方圖的顯示,包括對圖像進行直方圖均衡化、統計等處理,還包括最后的輸出。
總體而言,本模塊功能設計應包括4個部分,一是選擇圖像和直方圖顯示部分;二是直方圖處理方式的選擇部分;三是處理后圖像及其直方圖顯示部分;四是處理后圖像的輸出、保存部分。具體模塊框圖如圖9所示。
本次設計新增組件popumenu,GUIDE中右鍵popmenu控件,將屬性 Value的默認值改成 3,彈出式菜單有兩種方式,一種就是你直接雙擊控件,彈出屬性框,在string屬性中填寫下拉菜單的內容,沒有內容請用回車分開,另一種就是在M文件中的open函數中。
3 matlab GUI 設計一個學生成績查詢系統
3.1 學生成績查詢界面設計
(1)目的
以某個班級某個學生作為研究者,導入一個txt文件內容,設計一個GUI的仿真設計,實現以下功能。
①顯示這個班級5個人的個人信息和3個科目;
②查詢到5個人對應3個科目的成績情況。
實現方法
①利用Matlab語言編寫程序和GUI設計系統對話框;
②利用matlab函數實現圖像處理的數據統計。
(2)設計內容及步驟
打開Matlab建立新的GUI界面,添加需要的控件對象,添加需要的按鈕組件,和菜單控件。主要是創建一個listbox來顯示學生的姓名,創建三個text來顯示目標學生的對應三個科目,創建一個text顯示目標學生的成績顯示。初始text組件只能顯示一行字,需要右鍵點擊MAX選項,對于‘radiobutton和‘listbox是用戶所能選擇的最大值,必須比Min的值要大,默認為一,即只能顯示一欄,對于‘edit型組件,max-min<=1只能進行單項選擇,max-min>=1,即可進行多項選擇。故將max的值填5,將列表最大值改到學生的人數也就是5,同樣listbox也許要同樣對Max選項進行同樣的調整最大人數的操作,也增加到對應的5個學生,如圖11。
3.2 matlab GUI 學生成績查詢程序設計
創建一個txt文件“chengji”,主要是為了讓matlab GUI 讀取txt文件,來導入一些信息,在平時的生活工作中,我們也會需要將一些文本檔的內容進行編輯,這里添加GUI的組件設計,就是為了實現,一個完整的學生成績查詢系統。編輯內容如下: