MATLAB7.0使用詳解-第15章圖像處理工具箱.ppt_第1頁
MATLAB7.0使用詳解-第15章圖像處理工具箱.ppt_第2頁
MATLAB7.0使用詳解-第15章圖像處理工具箱.ppt_第3頁
MATLAB7.0使用詳解-第15章圖像處理工具箱.ppt_第4頁
MATLAB7.0使用詳解-第15章圖像處理工具箱.ppt_第5頁
已閱讀5頁,還剩20頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第15章 圖像處理工具箱,數字圖像處理的研究主要在兩個方面:其一是為了便于人們分析而對圖像信息的改進,包括圖像增強和圖像恢復;其二是為了便于機器自動理解對圖像的分割、理解等。本章內容主要針對的是數字圖像處理的增強和恢復。 本章首先討論數字圖像處理中涉及的一些概念,以及MATLAB中一些基本的圖像數據操作,15.2至15.6分別介紹數字圖像的灰度變換、代數運算、幾何運算及圖像濾波等內容。,15.1 數字圖像基礎,本節(jié)介紹一些與數字圖像相關的概念,包括數字圖像的采樣和量化、數字圖像的類型及表示,這些概念以及相關的符號將會在本章后續(xù)內容中經常用到。 本節(jié)另一個重要的內容是對MATLAB中圖像數據的讀入、顯示、輸出等操作進行介紹,這些操作是后續(xù)圖像處理的前提。,15.1.1 圖像的采樣和量化,一般得到的圖像都是連續(xù)的,可以用連續(xù)函數表示,需要對連續(xù)圖像進行采樣和量化,得到數字圖像,然后才能用于計算機處理。 圖說明了圖像采樣和量化的基本概念。圖(a)顯示的是一幅連續(xù)圖像,需要將其轉化為數字形式以便于計算機處理。圖像的x、y坐標值和幅度值都有可能是連續(xù)的,為了把它轉化為數字形式,必須在坐標和幅度上進行采樣操作。數字化坐標稱為采樣,數字化幅值稱為量化。,15.1.2 圖像類型,不同類型的數字圖像差別在于對像素的表示方法不同,MATLAB圖像處理工具箱中支持的圖像類型有以下4種。 1二值圖(Binary image) 像素值為邏輯類型(logical),有兩個離散灰度級,即0和1。二值圖即是通常所稱的黑白圖。 2索引圖(Indexed image) 3灰度圖(Grayscale image) 像素值可以是8位無符號整型(unit8)、16位無符號整型(unit16)、16位整型(int16)、單精度浮點型(single)、雙精度浮點型(double),表示灰度級別。MATLAB利用自帶的Colormap顯示灰度圖。 4RGB圖 具有R(紅)、G(綠)、B(藍)3個顏色通道,每個像素由的向量R, G, B表示,R、G、B可以是8位無符號整型(unit8)、16位無符號整型(unit16)、單精度浮點型(single)、雙精度浮點型(double),它們分別表示3種顏色的深度級別。,15.1.3 圖像數據的讀寫和顯示,1讀入圖像 函數imread從圖像文件中讀取圖像數據,imread支持大多數常用的圖像格式。 2顯示圖像 MATLAB圖像處理工具箱有兩個函數可以用于數字圖像的顯示,它們是mshow和imtools函數。 3圖像數據的寫入 函數imwrite將工作區(qū)間的圖像數據保存到圖像文件中,例如對上述的圖像數據I(pout.tif圖像數據)。 imwrite(I,pout1.png),15.1.4 圖像的轉換,圖像的轉換是圖像處理過程中經常要做的工作,往往需要將圖像從一種格式轉換為另一種格式,這樣才能完成某些圖像處理任務,之后再將圖像轉換到原來的格式。圖像的轉換包括圖像類型的轉換,如灰度圖轉換為二值圖,和圖像數據存儲格式之間的轉換,如uint8型灰度圖轉換為single型灰度圖。,15.2 圖像的灰度變換,15.2.1 直方圖,灰度圖(包括二值圖)的直方圖表示每個灰度級范圍內像素點的個數,索引圖的直方圖表示每個色條(即Colormap矩陣的每一行)對應的像素點個數。 MATLAB圖像處理工具箱利用imhist得到灰度圖、索引圖的直方圖,一般的調用格式為 imhist(I) imhist(I,n) imhist(X,map) 其中,I為灰度圖或二值圖,n為直方圖的柱數,X為索引圖,map為對應的Colormap。imhist(I,n)得到灰度圖(二值圖)I的直方圖,n為直方圖的柱數,對于二值圖,n只能為2。當n未指定時,n根據I的不同類型取256(灰度圖)或2(二值圖)。imhist(X,map)得到索引圖X的直方圖,map為X的colormap。,15.2.2 灰度變換,灰度變換經常用于改變圖像的對比度。例如,對灰度圖pout(圖(a),其直方圖如圖(b)所示。從直方圖上可以看到,pout的大部分像素分布在中間較窄的灰度范圍內,使得pout整體對比度較低。利用灰度變換,將pout直方圖中間部分拉伸至整個灰度范圍0,255能夠增強對比度,MATLAB圖像處理工具箱中實現該功能的函數是imadjust。,15.2.3 直方圖均衡,15.2.2小節(jié)的灰度變換實際上是指定了灰度變換函數的灰度變換,對不同的圖像需要設定不同的參數,因此這種方法的效率是很低的。 直方圖均衡能夠根據待處理圖像的直方圖自適應地給出灰度變換函數,使得調整后圖像的直方圖盡可能地接近預先定義的直方圖。 MATLAB圖像處理工具箱中利用函數histeq對灰度圖和索引圖作直方圖均衡,histeq函數的一般調用格式為 J = histeq(I,hgram) J = histeq(I,n) J = histeq(I) J,T = histeq(I,.) newmap = histeq(X,map,hgram) newmap = histeq(X,map) newmap,T = histeq(X,.),15.3 圖像的代數運算,15.3.1 圖像加法,對同一幅受加性噪聲污染的圖像求平均可以提高圖像的信噪比。,15.3.2 圖像乘法,利用1、0組成的掩膜圖與待處理圖像相乘可以遮住圖像的某部分。 【例6】利用圖像乘法遮住圖像的某部分,15.3.3 圖像減法,圖像減法可以用于去除背景和運動目標檢測等。 比較上例圖中的(a)、(b),假設(b)中間的黑色小方塊是一個運動目標,通過圖像的減法能夠檢測到該目標。 圖中的(a)、(b)相減得到的差如圖所示。 imshow(imsubtract(I,J),15.3.4 圖像除法,圖像除法可以產生對彩色或多光譜圖像十分重要的比率圖像,關于這部分內容,這里不作介紹,讀者如有興趣可以查閱相關的書籍和MATLAB幫助文檔。,15.4 圖像的幾何運算,幾何運算改變圖像的形狀,如圖所示。圖像的幾何運算涉及到空間變換和灰度插值,空間變換防止圖像內容支離破碎,灰度插值計算目標圖像中對應原圖像非整點的像素點灰度值。本節(jié)中介紹幾種最基本的幾何運算,包括圖像的縮放、旋轉和裁剪。,15.4.1 縮放,MATLAB圖像處理工具箱利用函數imresize對圖像進行縮放操作,imresize的一般調用格式為 B = imresize(A,m) B = imresize(A,m,method) B = imresize(A,mrows ncols,method) 其中A、B分別為輸入、輸出圖像。method是縮放過程中使用的插值方法,可以是nearest(最近鄰插值)、bilinear(雙線性插值)或bicubic(雙立方插值),默認的插值方法是最近鄰插值。m為放大因子,m大于1時,圖像被放大,小于1時,圖像被縮小。也可以分別設置變換后圖像的高度mrows和寬度ncols,這種方法能克服放大因子只能對高度和寬度同比縮放的缺陷。,15.4.2 旋轉,MATLAB圖像處理工具箱利用函數imrotate對圖像進行旋轉操作,imrotate的一般調用格式為 B = imrotate(A,angle) B = imrotate(A,angle,method) 其中A、B分別為輸入、輸出圖像,angle為逆時針旋轉的角度,angle為負時,表示順時針旋轉。method是旋轉過程中使用的插值方法,可以是nearest(最近鄰插值)、bilinear(雙線性插值)或bicubic(雙立方插值),默認的插值方法是最近鄰插值。 旋轉操作會使圖像尺寸變大,imrotate對原圖像邊界之外的像素用0填充,顯示的是黑色的背景。,15.4.3 裁剪,圖像的裁剪得到圖像的部分圖。MATLAB圖像工具箱利用函數imcrop實現圖像的裁剪,其一般的調用格式為 I2 = imcrop(I,rect) X2 = imcrop(X,map,rect) RGB2 = imcrop(RGB,rect) 分別用于灰度圖(包括二值圖)、索引圖和RGB圖的裁剪。rect定義裁剪的矩形區(qū)域,如果不指定rect,MATLAB允許用戶通過鼠標選定裁剪區(qū)域。,15.5 線性濾波,線性濾波是一類非常重要的圖像處理方法,主要用于圖像增強、圖像去噪等。線性濾波是一種鄰域處理(Neighbothood Operation)方法,輸出圖像的像素值是輸入圖像對應像素及其鄰域像素的線性組合。本節(jié)首先介紹與線性濾波相關的兩個概念,卷積和相關,接著介紹線性濾波函數imfilter。,15.5.1 卷積和相關,線性濾波可以用卷積實現,輸出圖像的像素值是輸入圖像對應像素及其鄰域像素的線性加權,權重矩陣稱為卷積窗。,15.5.2 線性濾波,線性濾波器由相關或卷積實現,默認情況下由相關實現。MATLAB中利用函數imfilter對圖像線性濾波,imfilter的一般調用格式為 B = imfilter(A,H) B = imfilter(A,H,option1,option2,.) 其中A、B為輸入輸出圖像。H為相關窗或卷積窗,默認情況下為相關窗,可以通過設置option3 = conv,使線性濾波由卷積實現。通過設置option1決定線性濾波器對邊界的處理方式,replicate使用最近鄰邊界填充,默認情況下,用0填充。 下面的例子利用等權重的濾波器對受加性噪聲污染的coins圖像作線性濾波,通常稱這種等權重的線性濾波器為均值濾波器(averaging filter)。,15.6 圖像的排序濾波,15.5節(jié)介紹的線性濾波,通過對鄰域像素的線性組合得到輸出圖像的像數值,這是一種線性處理方法。本節(jié)將要介紹的排序濾波是一種非線性處理方法。排序濾波通過對鄰域像素的升序排序,取第r個像素值作為輸出圖像的像素值。 排序濾波也有對應的濾波窗口,濾波窗口超出圖像邊界時需要考慮邊界的處理,可以用0填充或是最近鄰邊界填充等。 MATLAB圖像處理工具箱中利用函數ordfilt2對圖像作排序濾波,一般的調用格式為 B = ordfilt2(A, order, h),15.6.1 中值濾波,中值濾波是排序濾波的一種,通過取鄰域像素值的中位數作為輸出圖像的像素值。MATLAB圖像處理工具箱為中值濾波提供了專門的函數medfilt2,其一般的調用格式為 B = medfilt2(A, M N) 其中A、B為輸入輸出圖像,為濾波窗口的大小,默認情況下。 雖然也可以利用odrfilt2實現中值濾波,但是考慮到效率,通常不這樣做。 通過15.5節(jié)的例子知道,線性濾波不能在去噪和保留細節(jié)方面同時兼顧。中值濾波器在去噪的同時,能夠較

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論