(商洛學(xué)院數(shù)學(xué)與計算機(jī)應(yīng)用學(xué)院 盧晶)
MATLAB的數(shù)字圖像處理技術(shù)分析
(商洛學(xué)院數(shù)學(xué)與計算機(jī)應(yīng)用學(xué)院 盧晶)
數(shù)字圖像處理的目的在于幫助人們理解圖像信息的內(nèi)涵。MATLAB的數(shù)字圖像處理技術(shù)是將圖像信號直接轉(zhuǎn)化為數(shù)字信號,通過計算機(jī)去噪、復(fù)原、增強(qiáng)、分割、提取等操作步驟,實(shí)現(xiàn)圖像信息的直觀表現(xiàn)。MATLAB數(shù)字圖像處理技術(shù)具有以下幾點(diǎn)顯著優(yōu)勢(1)處理方便??梢岳糜嬎銠C(jī)對數(shù)字圖像進(jìn)行任意的修改,如復(fù)制、刪除、放大、縮小等一部分?jǐn)?shù)據(jù),還能改變顏色。(2)具有較好的重復(fù)性。數(shù)字圖像可以儲存在光盤中的,有效的避免模擬圖像隨時間流是而發(fā)黃、褪色等缺點(diǎn),存儲上百年,數(shù)字圖像也無任何的改變。(3)精度比較高。MATLAB的數(shù)字圖像處理技術(shù)可以將數(shù)字圖像的亮度量化到12位。因此,MATLAB的數(shù)字圖像處理技術(shù)值得被推薦。
MATLAB軟件由美國MathWork公司推出,主要是用來圖像處理和數(shù)值計算。MATLAB軟件包含具有許多功能的工具箱,可以有效的解決各領(lǐng)域待定問題。MATLAB軟件的工具箱由通信、圖像處理、濾波器設(shè)計、控制系統(tǒng)、系統(tǒng)識別、魯棒控制、非線性控制設(shè)計、最優(yōu)化、統(tǒng)計、神經(jīng)網(wǎng)絡(luò)、信號處理、模糊邏輯等構(gòu)成,可以方便各領(lǐng)域計算、分析、設(shè)計工作。
MATLAB是一種高級科學(xué)計算機(jī)語言以及高級的交互式環(huán)境,集中作用于算法開發(fā)、數(shù)據(jù)分析、數(shù)值計算以及數(shù)據(jù)可視化,較傳統(tǒng)的計算機(jī)編程語言,能夠更加快速的解決科學(xué)計算問題。MATLAB更加直觀簡單的圖像處理技術(shù),更加符合人們思維習(xí)慣的代碼,能夠有效的代替冗長的C語言代碼,方便數(shù)據(jù)的輸送、整理,已經(jīng)成為最為廣泛的工程應(yīng)用軟件。MATLAB能夠給廣大的用戶帶來最直接的程序開發(fā)環(huán)境,主要體現(xiàn)在:(1)運(yùn)算豐富;(2)使用靈活方便,語言設(shè)計簡潔緊湊,而且具有豐富的可函數(shù);(3)同時具備結(jié)構(gòu)化的控制語句以及面向?qū)ο缶幊痰奶匦?;?)程序設(shè)計的自由度不受嚴(yán)格限制;(5)圖形處理功能強(qiáng)大;(6)具有比較開放的源程序;(7)具有較好的可移植性,可以適用于各種型號的計算機(jī)系統(tǒng);(8)強(qiáng)大功能的工具箱。
1、圖像的縮放
通過MATLAB軟件將圖像的大小進(jìn)行縮小或擴(kuò)大,如:對于一張行數(shù)、列數(shù)分別薇薇m、n的圖像,通過MATLAB數(shù)字圖像處理,將圖像擴(kuò)大為黃鼠、列數(shù)分別為2m、2n的矩陣圖像,并且在轉(zhuǎn)化的過程中,要運(yùn)用圖像的差值算法。
MATLAB數(shù)字圖像處理過程中,圖像縮放的函數(shù)表達(dá)式為imresize,調(diào)節(jié)圖像的大小可以采取以下方法:
B=imresize(A,scale)
B=imresize(A,scale,method)
B=imresize(A,[mrows ncols])
在上述的調(diào)節(jié)方法中,A表示進(jìn)行圖像縮放的矩陣;scale表示圖像縮放的倍數(shù),而且1為圖像縮放的界線,即,scale小于1,則表示執(zhí)行的是縮小錯做,scale大于1,則表示執(zhí)行的是擴(kuò)大操作;method表示具有指定效果的圖像縮放,主要采取的算法有:最鄰近法(nearest)、雙三次插值法(bicublic)以及雙線性插值法(bilinear);[mrows ncols]表示指定效果的縮放圖像的行數(shù)以及列數(shù)。
2、圖像的灰度調(diào)節(jié)
充分了利用MATLAB軟件強(qiáng)大的工具箱提供的imadjust函數(shù)圖像灰度調(diào)節(jié)功能,將圖像的對比度增強(qiáng),所采用的語法格式為:
J=imadjust(i,[bottom,top],[low,high],gamma)
在上述的調(diào)節(jié)方法中,J、i表示圖像i經(jīng)過灰度調(diào)節(jié),轉(zhuǎn)變?yōu)閳D像J。其中[bottom,top]表示圖像指定變化后的圖像灰度范圍,且轉(zhuǎn)變前后圖像的默認(rèn)值均為[0,1];[low,high]表示源圖像變換的灰度范圍;gamma表示圖像的矯正量,其取值主要取決于灰度影射方式(輸入圖像-輸出圖像),它決定了圖像屬于增強(qiáng)低灰度還是增強(qiáng)高灰度,另外,gamma值=1時,則表示為線性變換,大于1時,則表示圖像影射加權(quán)后的灰度值要比原有的灰度值小,小于1時,則表示圖像影射會對像素值加權(quán)。
3、圖像的裁剪
在MATLAB數(shù)字圖像處理技術(shù)中,圖像裁剪的函數(shù)表達(dá)式為imcrop,可以采取以下裁剪圖像的方法:
IO=imcrop
IO=imcrop(I,rect)
在上述的裁剪方法中,IO=imcrop是一種交互式裁剪方式,即在計算機(jī)屏幕上顯示出一幅圖像,然后輸入執(zhí)行命令,用鼠標(biāo)圈中感興趣的部分,將感興趣的部分粗出在矩陣IO中即可。IO=imcrop(I,rect)是一種規(guī)定了圖像裁剪區(qū)域的方法。
本文主要介紹了MATLAB軟件以及MATLAB數(shù)字圖像處理的應(yīng)用,旨在為廣大的用戶提供更加科學(xué)的理論指導(dǎo)。MATLAB的數(shù)字圖像處理技術(shù)具有十分廣闊的發(fā)展前景,可以運(yùn)用到醫(yī)學(xué)CT檢查、物理化學(xué)分析、公安軍事等多個領(lǐng)域,對人們的生活以及經(jīng)濟(jì)發(fā)展具有不可估量的現(xiàn)實(shí)價值。