《數(shù)字圖像處理:Matlab算法設(shè)計與解譯》 課件 第3、4章 圖像的基本運算、空間域圖像增強_第1頁
《數(shù)字圖像處理:Matlab算法設(shè)計與解譯》 課件 第3、4章 圖像的基本運算、空間域圖像增強_第2頁
《數(shù)字圖像處理:Matlab算法設(shè)計與解譯》 課件 第3、4章 圖像的基本運算、空間域圖像增強_第3頁
《數(shù)字圖像處理:Matlab算法設(shè)計與解譯》 課件 第3、4章 圖像的基本運算、空間域圖像增強_第4頁
《數(shù)字圖像處理:Matlab算法設(shè)計與解譯》 課件 第3、4章 圖像的基本運算、空間域圖像增強_第5頁
已閱讀5頁,還剩242頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

第三章數(shù)字圖像的基本運算

從嚴格的意義上來說,各種圖像處理方法都是一種圖像運算方法。

從一般意義上來說,圖像運算僅指對圖像中的所有像素實施了相同處理的那些運算,比如對圖像的點運算、直方圖運算、代數(shù)運算、幾何運算、灰度插值運算等。3.1灰度反轉(zhuǎn)

3.1灰度反轉(zhuǎn)

黑白圖像的反轉(zhuǎn)就是使灰度值為1的像素值變成0,使灰度值為0的像素值變成1。

對于256灰度級圖像來說,圖像的灰度反轉(zhuǎn)值就是用255分別減去原圖像的各個像素的灰度值。

設(shè)圖像的灰度級為L,則圖像的灰度反轉(zhuǎn)可表示為:3.1灰度反轉(zhuǎn)

256灰度級圖像的灰度反轉(zhuǎn)如圖1所示。

2552550負片正片fg

【例3.1】

灰度反轉(zhuǎn)(Grayscaleinversion)matlab程序%灰度反轉(zhuǎn)matlab程序clc;clearall;closeall;img0=imread('d:\0_matlab圖像課編程\lena.jpg');result_img=256-1-img0;%圖像陣列中的所有像素的灰度值反轉(zhuǎn)subplot(1,2,1);imshow(img0);title('原圖像');%顯示原圖像subplot(1,2,2);imshow(result_img);title('灰度反轉(zhuǎn)圖像(負片)');3.1灰度反轉(zhuǎn)3.1灰度反轉(zhuǎn)

【例3.1】

灰度反轉(zhuǎn)(Grayscaleinversion)matlab程序3.2對數(shù)變換

對原圖像f(x,y)進行對數(shù)變換的解析式可表示為:2552550對數(shù)曲線fg

對數(shù)變換曲線如下圖所示:

3.2對數(shù)變換

對數(shù)變換的作用:

(1)通過對圖像的灰度值的動態(tài)范圍進行壓縮,來主要用于調(diào)高輸入圖像的低灰度值。(2)人的視覺感覺與進入人眼的光的強度成對數(shù)關(guān)系,常先給圖像進行對數(shù)變換后再顯示輸出。3.2對數(shù)變換

典型的應(yīng)用是:

傅里葉頻譜要顯示的值的范圍往往比較大,而傅里葉頻譜要顯示的重點是突出最亮的像素(對應(yīng)于低頻成分)。

但在這在一個8比特的顯示系統(tǒng)中會把頻譜圖像中的低灰度值部分(對應(yīng)于高頻成分)損失掉。

因此,就可利用對數(shù)變換調(diào)高頻譜圖像的低灰度值而對高灰度值又盡可能地影響最小。3.2對數(shù)變換(a)圖像的傅里葉頻譜(b)對數(shù)變換的結(jié)果

【例3.2】對數(shù)圖像進行對數(shù)變換運算的matlab程序。clc;clearall;closeall;img0=imread('d:\0_matlab圖像課編程\fft_img.jpg');img1=double(img0);log_img=log(1+img1);%對圖像進行對數(shù)運算subplot(1,2,1);imshow(img0);title('原傅里葉頻譜圖像');subplot(1,2,2);imshow(log_img);title('提升低頻成分后的傅里葉頻譜圖像');3.2對數(shù)變換

【例3.2】對數(shù)圖像進行對數(shù)變換運算的matlab程序。3.2對數(shù)變換3.3灰度直方圖

1、灰度圖像直方圖

灰度圖像的直方圖是關(guān)于灰度級分布的函數(shù),描述的是灰度圖像中的每一灰度級與其出現(xiàn)的頻數(shù)(該灰度級的像素數(shù)目)的統(tǒng)計關(guān)系,是一種表示數(shù)字圖像中灰度級分布函數(shù)關(guān)系的柱狀圖表示形式。

灰度圖像直方圖的橫坐標表示灰度級(也即亮度級別),取值范圍為0~255;灰度直方圖的縱坐標表示圖像中每一灰度級的像素的數(shù)目。3.3.1灰度圖像直方圖與灰度圖像的對比度1、灰度圖像直方圖

設(shè)一幅數(shù)字圖像的灰度級別范圍為[0,L-1],則該圖像的灰度直方圖是一個離散函數(shù),并可定義為:

3.3.1灰度圖像直方圖與灰度圖像的對比度(3.3)

其中,表示第級灰度;表示圖像中灰度級別

為的像素的個數(shù);是灰度圖像的直方圖函數(shù)。3.3.1灰度圖像直方圖與灰度圖像的對比度(3.3)

1、灰度圖像直方圖灰度直方圖表明圖像中每一個灰度級有多少個象素由matlab直方圖計算程序計算所得3.3.1灰度圖像直方圖與灰度圖像的對比度直觀的來理解直方圖:

一是“左黑右白”或“左暗右亮”。

二是橫軸上各(亮度值)點對應(yīng)的柱狀高度就是分布在該亮度的像素個數(shù)。

三是當柱狀接近分布在整個橫軸上,且至少有一個峰值時,圖像的對比度較好。

3.3.1灰度圖像直方圖與灰度圖像的對比度

2、灰度圖像的對比度

灰度圖像的對比度是對一幅圖像中最亮的白和最暗的黑之間亮度層級的測量,一般用圖像畫面中最大的灰度值(最白亮度)與最小的灰度值(最黑亮度)的比值來表示。

因此,白色越亮、黑色越暗,對比度就越高(大);對比度越大,圖像越清晰醒目;對比度越小,圖像畫面會顯得灰蒙蒙而不清晰3.3.1灰度圖像直方圖與灰度圖像的對比度

3、圖像直方圖的分布特征及其與圖像對比度的關(guān)系{下面用一組圖像及其直方圖的實例,說明圖像直方圖的分布特征及其與圖像對比度的關(guān)系

}(a)圖2.15四種基本圖像類型圖像及其灰度直方圖根據(jù)圖像直方圖分布特點,分析對應(yīng)圖像的特征:

1、直方圖總體上偏左,說明圖像的灰度值普遍偏小,也即圖像偏暗。

2、直方圖分布在局部區(qū)域,說明圖像的對比度較低。3.3.1灰度圖像直方圖與灰度圖像的對比度(b)圖2.15四種基本圖像類型圖像及其灰度直方圖根據(jù)圖像直方圖分布特點,分析對應(yīng)圖像的特征:

1、直方圖總體上偏右,說明圖像的灰度值普遍偏大,也即圖像偏亮。

2、直方圖分布在局部區(qū)域,說明圖像的對比度較低。3.3.1灰度圖像直方圖與灰度圖像的對比度?圖2.15四種基本圖像類型圖像及其灰度直方圖根據(jù)圖像直方圖分布特點,分析對應(yīng)圖像的特征:

1、直方圖總體上居中,說明圖像的灰度值不太大也不太小,也即圖像亮度適中。

2、直方圖分布在局部區(qū)域,說明圖像的對比度較低。3.3.1灰度圖像直方圖與灰度圖像的對比度(d)圖2.15四種基本圖像類型圖像及其灰度直方圖根據(jù)圖像直方圖分布特點,分析對應(yīng)圖像的特征:

1、直方圖總體上均勻分布于整個灰度區(qū)間,且有峰值,說明圖像亮度值黑白分明,也即圖像清晰醒目。

2、直方圖分布均勻,說明圖像的對比度高。3.3.1灰度圖像直方圖與灰度圖像的對比度3.3.2灰度直方圖的特征

(1)直方圖僅能描述圖像中每個灰度值具有的像素個數(shù),不能表示圖像中每個像素的位置(空間)信息。3.3.2灰度直方圖的特征

(2)任一特定的圖像都有惟一的直方圖,不同的圖像可以具有相同的直方圖;3.3.2灰度直方圖的特征

(3)對于空間分辨率為M×N,且灰度級范圍為[0,L-1]的圖像,有關(guān)系:=M×N

3.3.2灰度直方圖的特征

(1)直方圖僅能描述圖像中每個灰度值具有的像素個數(shù),不能表示圖像中每個像素的位置(空間)信息;

(2)任一特定的圖像都有惟一的直方圖,不同的圖像可以具有相同的直方圖;(3)對于空間分辨率為M×N,且灰度級范圍為[0,L-1]的圖像,有關(guān)系:=M×N(4)如果一幅圖像由兩個不連接的區(qū)域組成,則整幅圖像的直方圖等于兩個不連接的區(qū)域的直方圖之和。3.3.3歸一化灰度圖像直方圖由于式(3.3)所定義的灰度直方圖反映的是圖像中各灰度的實際出現(xiàn)頻(個)數(shù),這樣當某個灰度值的頻數(shù)(計數(shù)值)遠遠大于其它灰度值的頻數(shù)時,根據(jù)圖像的某個或某些像素出現(xiàn)的最大頻數(shù)來確定直方圖的縱坐標的最大尺寸既不方便也不太現(xiàn)實,所以就引入了歸一化直方圖的概念

(3.3)

3.3.3歸一化灰度圖像直方圖

設(shè)為圖像的第級灰度,是圖像中灰度級別為的像素的個數(shù),是圖像中的像素總數(shù),則圖像的歸一化灰度直方圖定義為:

=0,1,…,L-1(3.5)3.3.3歸一化灰度圖像直方圖

【例3.3】編寫matlab程序生成灰度圖像的灰度直方圖,并與由matlab直方圖函數(shù)得到的灰度直方圖進行比較。clc;clearall;closeall;%清除命令窗口和工作空間,關(guān)閉Figure窗口img0=imread('d:\0_matlab圖像課編程\lena.jpg');%讀入圖像文件[h,w]=size(img0);%獲取圖像的大?。ǜ叨萮,寬度w)gray_num=zeros(1,256);%創(chuàng)建一個1到256的數(shù)組記錄各像素值出現(xiàn)的頻數(shù)imshow(img0);title('原圖像');%顯示原圖像fori=1:hforj=1:wfork=0:255%統(tǒng)計各像素值出現(xiàn)的頻數(shù)ifimg0(i,j)==kgray_num(k+1)=gray_num(k+1)+1;%matlab矩陣的第一個元素下標應(yīng)是1endendendendfigure;subplot(1,2,1);%在另一個figure顯示直方圖bar(gray_num);%創(chuàng)建顯示窗口,畫直方圖title('編程畫的圖像灰度直方圖');xlabel('灰度值');ylabel('出現(xiàn)個數(shù)');subplot(1,2,2);imhist(img0);%用matlab的直方圖函數(shù)顯示直方圖title('matlab函數(shù)畫的圖像灰度直方圖');3.3.3歸一化灰度圖像直方圖

【例3.3】編寫matlab程序生成灰度圖像的灰度直方圖,并與由matlab直方圖函數(shù)得到的灰度直方圖進行比較。3.4圖像的代數(shù)運算

○、概念

圖像相加是通過對兩幅大小相同的圖像對應(yīng)位置像素的相加運算,以產(chǎn)生一幅新的含有兩幅圖像信息的圖像的方法。圖像相加也稱為圖像合成。3.4.1圖像的相加運算

3.4.1圖像的相加運算

+=3.4.1圖像的相加運算

設(shè)和分別表示大小為×的兩幅輸入圖像,圖像和圖像相加后得到的結(jié)果輸出圖像為,且:

[0,M-1],[0,N-1],則兩幅圖像的相加運算可表示為:(3.6)3.4.1圖像的相加運算

1.兩幅圖像內(nèi)容的疊加/合成

圖像相加運算的實現(xiàn)方式:

(1)灰度值折半相加(2)按不同比例灰度值的相加

其中:(3.7)(3.8)

【例3.4】

編寫圖像相加(合成)運算的matlab程序。clc;clearall;closeall;f1=imread('d:\0_matlab圖像課編程\parrot.jpg');f2=imread('d:\0_matlab圖像課編程\sea_cloud.jpg');f3=0.5*f1+0.5*f2;subplot(1,3,1);imshow(f1);title('鸚鵡圖像');subplot(1,3,2);imshow(f2);title('湖面圖像');subplot(1,3,3);imshow(f3);title('合成結(jié)果圖像');3.4.1圖像的相加運算

3.4.1圖像的相加運算

+=3.4.1圖像的相加運算

2、相加多幅圖像的疊加去加性噪聲

通過對同一場景的多幅圖像的灰度值求平均值(多幅灰度圖像的疊加運算),可以去除加性(Sdditive)隨機噪聲。(3.9)3.4.1圖像的相加運算

2、相加多幅圖像的疊加去加性噪聲63.4.2圖像的相減運算

設(shè)和分別表示大小為×

的兩幅輸入圖像,從圖像中的各位置的像素中減去的相應(yīng)位置的像素值后,得到的結(jié)果輸出圖像為,且[0,M-1],[0,N-1],則兩幅圖像的相減運算可表示為:(3.10)3.4.2圖像的相減運算

=—

【例3.5】

編寫圖像相減(圖像變化檢測)運算的matlab程序。clc;clearall;closeall;f1=imread('d:\0_matlab圖像課編程\nopeson.jpg');f2=imread('d:\0_matlab圖像課編程\haspeson.jpg');f3=f1-f2;subplot(1,3,1);imshow(f1);title('無人的樓道圖像');subplot(1,3,2);imshow(f2);title('有人的樓道圖像');subplot(1,3,3);imshow(f3);title('變化檢測結(jié)果圖像');3.4.2圖像的相減運算

3.4.2圖像的相減運算

=—3.4.2圖像的相減運算

當兩幅256灰度級圖像對應(yīng)坐標位置像素值相減的結(jié)果大于或等于零時,則取其為結(jié)果圖像中的像素的灰度值;當相減結(jié)果小于零時,一般都是取零為結(jié)果值。對于某些特殊的應(yīng)用目的,也可以取其絕對值為結(jié)果值。

圖像相減運算的典型應(yīng)用是圖像的變化檢測。

3.5圖像的幾何運算

圖像的幾何運算又稱為圖像的幾何變換,包括:

1、圖像的平移變換;

2、圖像的旋轉(zhuǎn)變換;

3、圖像鏡像;

4、圖像轉(zhuǎn)置;

5、圖像的縮放。

圖像平移變換是指將一幅圖像或一幅圖像中的子圖像塊(以下簡稱為圖像塊)中的所有像素點,都按指定的X方向偏移量△X和Y方向偏移量△Y進行移動。

3.5.1圖像平移變換

3.5.1圖像平移變換

設(shè)初始坐標為的像素平移后的坐標為,則有0(3.11)圖像平移變換式的矩陣形式為

(3.12)3.5.1圖像平移變換

實現(xiàn)方式:

(1)圖像塊平移

原圖像平移圖像子塊后的圖像

3.5.1圖像平移變換

實現(xiàn)方式:

(2)整幅圖像平移:圖像平移保持原幅面大??;被移出的部分被截掉。

移動前的圖像平移后的圖像(背景灰度值為255)

3.5.1圖像平移變換

實現(xiàn)方式:

(2)整幅圖像平移:圖像平移保持原幅面大?。槐灰瞥龅牟糠直唤氐?。

(背景灰度值為0)

【例3.6】

編寫原圖像在x方向平移dx(設(shè)為20)個像素位置、在y方向平移dy(設(shè)為40)個像素位置的matlab平移,整幅圖像平移后不放大而將移出的部分截斷。3.5.1圖像平移變換

clc;clearall;closeall;%清除命令窗口和工作空間,關(guān)閉Figure窗口img0=imread('d:\0_matlab圖像課編程\lena.jpg');%讀入圖像文件[h,w]=size(img0);%獲取圖像的大?。ǜ叨萮,寬度w)img1=zeros(h,w);%建立大小為h×w的0值矩陣,暫存平移結(jié)果

dx=20;dy=40;%在x方向和y方向的平移距離(像素個數(shù))初值h1=h-dx;%行方向向下移dx個像素位置,根據(jù)式(3.11)w1=w-dy;%列方向向右移dy個像素位置,根據(jù)式(3.11)

fori=1:h1forj=1:w1x=i+dx;%計算平移后像素的行坐標

y=j+dy;%計算平移后像素的列坐標img1(x,y)=img0(i,j);%將(i,j)處的像素點平移到(x,y)處endendresult_img=uint8(img1);

subplot(1,2,1);imshow(img0);title('平移前原圖像');%顯示原圖像subplot(1,2,2);imshow(result_img);title('平移后結(jié)果圖像');3.5.2圖像旋轉(zhuǎn)變換

圖像旋轉(zhuǎn)變換是指,以圖像的中心為原點,將圖像中的所有像素(也即整幅圖像)旋轉(zhuǎn)一個相同的角度。

3.5.2圖像旋轉(zhuǎn)變換

實現(xiàn)方式:

(1)旋轉(zhuǎn)后的圖像幅面被放大(按外接矩形尺寸)。(2)保持圖像旋轉(zhuǎn)前后的幅面大小,把旋轉(zhuǎn)后圖像被轉(zhuǎn)出原幅面大小的那部分截斷。3.5.2圖像旋轉(zhuǎn)變換

1、旋轉(zhuǎn)后圖像幅面放大的圖像旋轉(zhuǎn)變換

從分析圖像的旋轉(zhuǎn)原理角度,下面的討論假設(shè)原圖像旋轉(zhuǎn)后的圖像幅面仍小于屏幕大?。ㄐD(zhuǎn)后超出屏幕大小的部分被截掉),也即不考慮因圖像幅面變大而超出屏幕大小需要截斷的情況。3.5.2圖像旋轉(zhuǎn)變換

1、旋轉(zhuǎn)后圖像幅面放大的圖像旋轉(zhuǎn)變換

實現(xiàn)圖像旋轉(zhuǎn)變換的實質(zhì)是以圖像的中心為原點,將圖像中的所有像素(也即整幅圖像)旋轉(zhuǎn)一個相同的角度;因此圖像旋轉(zhuǎn)變換公式的推導(dǎo)分為兩步:

第一步是先把待旋轉(zhuǎn)圖像的中心看作是圖像平面的xoy顯示坐標系的原點(按圖像顯示坐標,橫坐標為

軸y,縱坐標為

軸x),并基于該圖像平面的

顯示坐標系推導(dǎo)出圖像上像素點的旋轉(zhuǎn)變換公式

第二步再把第一步推導(dǎo)的變換公式映射到原點位于屏幕左上角的圖像顯示坐標,最終得出在顯示坐標下的圖像旋轉(zhuǎn)變換公式。(1)基于圖像平面的xoy坐標系(橫軸y,縱軸x)原點的旋轉(zhuǎn)變換設(shè)位于處的點到坐標原點的直線與軸的夾角為,直線順時針旋轉(zhuǎn)角度后使位于處的點被旋轉(zhuǎn)至處。{設(shè)像素點x和y仍按數(shù)學(xué)坐標}

則有:旋轉(zhuǎn)前:

旋轉(zhuǎn)后:

旋轉(zhuǎn)前式代入旋轉(zhuǎn)后式(點旋轉(zhuǎn)變換表示形式):

·

···(3.13)(3.14)(3.15)(1)基于圖像xoy坐標系原點的旋轉(zhuǎn)變換(以順時針為例)

3.5.2圖像旋轉(zhuǎn)變換根據(jù)式(3.15)可得點旋轉(zhuǎn)變換的矩陣表示形式為:

(3.16)(3.15)

(1)基于圖像xoy坐標系原點的旋轉(zhuǎn)變換(以順時針為例)3.5.2圖像旋轉(zhuǎn)變換

(2)整幅圖像中像素點的順時針旋轉(zhuǎn)變換

由于圖像像素點的旋轉(zhuǎn)變換是基于圖像的顯示坐標的,所以還需將式(3.16)的變換結(jié)果映射到圖像的顯示坐標中。(3.16)

3.5.2圖像旋轉(zhuǎn)變換圖像的像素點與圖像的顯示坐標和xoy平面坐標的關(guān)系示例0.5w0.5h

·

···(2)整幅圖像中像素點的順時針旋轉(zhuǎn)變換

假設(shè)圖像的寬度width用w表示,圖像的高度high用表示h,由圖可知:在原點位于左上角、軸方向朝下、軸方向朝右的圖像顯示坐標中,如果用表示在圖像顯示坐標中的位置,用表示在圖像顯示坐標中的位置,則有:

0.5w0.5h

·

···(3.18)(3.19)

3.5.2圖像旋轉(zhuǎn)變換的矩陣形式分別為:(3.20)

(3.21)

(2)整幅圖像中像素點的順時針旋轉(zhuǎn)變換

式(3.18)和式(3.19):(3.18)(3.19)3.5.2圖像旋轉(zhuǎn)變換

將式(3.16):和式(3.20):依次代入式(3.21),可得到圖像中像素點的順時針旋轉(zhuǎn)變換公式為:化簡和整理上式,則有:(3.22)(2)整幅圖像中像素點的順時針旋轉(zhuǎn)變換

【例3.7】*編寫圖像旋轉(zhuǎn)后,保持原圖像幅面大?。ú唤財啵?,即結(jié)果圖像變大的matlab程序。{程序自學(xué)}3.5.2圖像旋轉(zhuǎn)變換3.5.2圖像旋轉(zhuǎn)變換

2、旋轉(zhuǎn)前后幅面大小保持不變的圖像旋轉(zhuǎn)變換

當圖像旋轉(zhuǎn)前后幅面大小保持不變時,就要把旋轉(zhuǎn)后超出原幅面大小的那部分圖像像素截斷。

設(shè)原圖像被旋轉(zhuǎn)角度

(弧度制)后,原圖像中位于

處的像素點經(jīng)旋轉(zhuǎn)后,被移位到了

處。3.5.2圖像旋轉(zhuǎn)變換

2、旋轉(zhuǎn)前后幅面大小保持不變的圖像旋轉(zhuǎn)變換

(1)圖像順時針旋轉(zhuǎn)的圖像變換公式(3.23)3.5.2圖像旋轉(zhuǎn)變換

2、旋轉(zhuǎn)前后幅面大小保持不變的圖像旋轉(zhuǎn)變換

(1)圖像順時針旋轉(zhuǎn)的圖像變換公式3.5.2圖像旋轉(zhuǎn)變換

2、旋轉(zhuǎn)前后幅面大小保持不變的圖像旋轉(zhuǎn)變換

(2)圖像逆時針旋轉(zhuǎn)的圖像變換公式(3.24)3.5.2圖像旋轉(zhuǎn)變換

2、旋轉(zhuǎn)前后幅面大小保持不變的圖像旋轉(zhuǎn)變換

(2)圖像逆時針旋轉(zhuǎn)的圖像變換公式

【例3.8】

編寫保持原圖像尺寸大小不變(超出原圖像大小部分被截斷)的圖像旋轉(zhuǎn)matlab程序。3.5.2圖像旋轉(zhuǎn)變換clc;clearall;closeall;%清除命令窗口和工作空間,關(guān)閉Figure窗口img0=imread('d:\0_matlab圖像課編程\girl.jpg');%讀入原始圖像[h,w,m]=size(img0);%獲取圖像大小img1=255*ones(h,w,m);%構(gòu)造結(jié)果矩陣。每個像素點默認初始化為255(白色)alfa=15*3.1415926/180.0;%旋轉(zhuǎn)角度賦值(設(shè)為15度),并將其轉(zhuǎn)換成弧度

tras=[cos(alfa)-sin(alfa)0;sin(alfa)cos(alfa)0;001];%順時針旋轉(zhuǎn)變換矩陣

%tras=[cos(alfa)sin(alfa)0;-sin(alfa)cos(alfa)0;001];%逆時針旋轉(zhuǎn)變換矩陣fori=1:hforj=1:wtemp=[i;j;1];%按數(shù)學(xué)坐標(x=j,y=i)temp=tras*temp;%坐標變換:變換后像素坐標向量=變換矩陣*變換前坐標向量x=uint16(temp(1,1));%取出i值并轉(zhuǎn)換成16位的無符號數(shù)據(jù)y=uint16(temp(2,1));%取出j值并轉(zhuǎn)換成16位的無符號數(shù)據(jù)%判斷變換后的像素坐標是否越界,只保留原圖像幅面大小范圍內(nèi)的像素值if(x<=h)&(y<=w)&(x>=1)&(y>=1)img1(i,j,:)=img0(x,y,:);endendend;subplot(1,2,1);imshow(img0);subplot(1,2,2);imshow(uint8(img1));3.5.3圖像的鏡像變換

圖像鏡像變換分為:

(1)圖像水平鏡像變換

(2)圖像垂直鏡像變換3.5.3圖像的鏡像變換1.圖像水平鏡像原圖像水平鏡像結(jié)果圖像

(1)水平鏡像的概念

圖像水平鏡像是指以原圖像為參照,使原圖像和水平鏡像結(jié)果圖像與虛擬的垂直軸成對稱關(guān)系。3.5.3圖像的鏡像變換1.圖像水平鏡像

(1)水平鏡像的概念

圖像水平鏡像是指以原圖像為參照,使原圖像和水平鏡像結(jié)果圖像與虛擬的垂直軸成對稱關(guān)系。1.圖像水平鏡像(2)水平鏡像的數(shù)學(xué)表達及變換設(shè)圖像的高度high為,寬度width為;原圖像中位于處的像素點,經(jīng)水平鏡像后在水平鏡像結(jié)果圖像上的對應(yīng)像素點為。則圖像水平鏡像變換可表示為:(3.25)3.5.3圖像的鏡像變換圖像水平鏡像變換:

圖像水平鏡像變換矩陣表示形式為:

(3.26)(3.25)(2)水平鏡像的數(shù)學(xué)表達及變換3.5.3圖像的鏡像變換【例3.9】

編寫圖像水平鏡像(HorizontalMirroring)matlab程序。img0=imread('d:\0_matlab圖像課編程\lena.bmp');

[h,w]=size(img0);%獲取矩陣的行數(shù)h和列數(shù)w

forx0=1:h%把原圖像最(偏)右邊的列移到新圖像的最(偏)左邊f(xié)ory0=1:wresult_img(x0,w-y0+1)=img0(x0,y0);%根據(jù)式(3.24)進行坐標變換endend

subplot(1,2,1);imshow(img0);title('原圖像');%顯示原圖像subplot(1,2,2);imshow(result_img);title('水平鏡像結(jié)果圖像');3.5.3圖像的鏡像變換【例3.9】

編寫圖像水平鏡像(HorizontalMirroring)matlab程序。3.5.3圖像的鏡像變換3.5.3圖像的鏡像變換2.圖像垂直鏡像(1)垂直鏡像的概念

圖像垂直鏡像是指以原圖像為參照,使原圖像和垂直鏡像結(jié)果圖像與虛擬的水平軸成對稱關(guān)系。

2.圖像垂直鏡像設(shè)圖像的高度high為,寬度width為;原圖像中位于處的像素點,經(jīng)垂直鏡像后在垂直鏡像結(jié)果圖像上的對應(yīng)像素點為。,則圖像垂直鏡像變換可表示為:原圖像·垂直鏡像圖像

·

(2)垂直鏡像的數(shù)學(xué)表達及變換(3.27)3.5.3圖像的鏡像變換

圖像垂直鏡像變換:

圖像垂直鏡像變換矩陣表示形式為:

(2)垂直鏡像的數(shù)學(xué)表達及變換(3.27)(3.28)3.5.3圖像的鏡像變換【例3.10】

編寫圖像垂直鏡像(VerticalMirroring)matlab程序。img0=imread('d:\0_matlab圖像課編程\lena.bmp');

[h,w]=size(img0);%獲取矩陣的行數(shù)h和列數(shù)w

forx0=1:h%把原圖像最/偏下邊的行移到新圖像最/偏上邊的行fory0=1:wresult_img(h-x0+1,y0)=img0(x0,y0);%根據(jù)式(3.26)進行坐標變換endend

subplot(2,1,1);imshow(img0);%顯示原圖像subplot(2,1,2);imshow(result_img);%顯示垂直鏡像結(jié)果圖像3.5.3圖像的鏡像變換3.5.3圖像的鏡像變換【例3.10】

編寫圖像垂直鏡像(VerticalMirroring)matlab程序。3.5.4圖像轉(zhuǎn)置變換

1、圖像的轉(zhuǎn)置概念

圖像轉(zhuǎn)置變換是指將圖像的行坐標和列坐標互換。需要注意的是,圖像轉(zhuǎn)置和圖像旋轉(zhuǎn)是兩回事,圖像旋轉(zhuǎn)是將圖像旋轉(zhuǎn)多少度。原圖像不論是順時針旋轉(zhuǎn)90°,還是逆時針旋轉(zhuǎn)90°都不會得到圖像轉(zhuǎn)置后的結(jié)果。

轉(zhuǎn)置前圖像轉(zhuǎn)置后圖像

3.5.4圖像轉(zhuǎn)置變換

2、圖像轉(zhuǎn)置表示及變換轉(zhuǎn)置后圖像顯示坐標

·原圖像顯示坐標·轉(zhuǎn)置前圖像轉(zhuǎn)置后圖像

(3.29)3.5.4圖像轉(zhuǎn)置變換

2、圖像轉(zhuǎn)置表示及變換

設(shè)原圖像位于處的像素點,經(jīng)圖像轉(zhuǎn)置變換后在轉(zhuǎn)置變換結(jié)果圖像上的對應(yīng)像素點為。則圖像轉(zhuǎn)置變換可表示為:

(3.29)(3.30)【例3.11】

編寫圖像轉(zhuǎn)置(imagetranspose)matlab程序。img0=imread('d:\0_matlab圖像課編程\lena.bmp');

[h,w]=size(img0);%獲取矩陣的行數(shù)h和列數(shù)w

fori=1:hforj=1:wresult_img(j,i)=img0(i,j);%根據(jù)式(3.29)進行坐標變換endend

subplot(1,2,1);imshow(img0);title('轉(zhuǎn)置前原圖像');%顯示原圖像subplot(1,2,2);imshow(result_img);title('轉(zhuǎn)置后的圖像');%顯示結(jié)果3.5.4圖像轉(zhuǎn)置變換【例3.11】

編寫圖像轉(zhuǎn)置(imagetranspose)matlab程序。3.5.4圖像轉(zhuǎn)置變換3.5.5圖像縮放

圖像縮放(imagescaling)是指對圖像進行縮小或放大,也即對數(shù)字圖像的大小進行調(diào)整的過程。

3.5.5圖像縮放

設(shè)原圖像中位于處的像素點,經(jīng)對原圖像的行和列按相同比例縮放后,在縮放后的結(jié)果圖像上的對應(yīng)像素點為。則圖像縮放前后像素點的坐標可表示為:圖像縮放的矩陣表示形式為:

(3.31)(3.32)

圖像縮小的目的:一是為了使縮小后的圖像符合顯示區(qū)域的大小要求;二是為了生成原圖像的縮略圖。

3.5.5圖像縮放1.圖像縮小

最簡單的圖像縮小方法是:將圖像的行和列都縮小一半(保留原圖像的奇數(shù)行或偶數(shù)行和奇數(shù)列或偶數(shù)列),從整體上看就是將原圖像縮小到原來大小的四分之一。

一般小方法是:按整數(shù)比例縮小圖像。3.5.5圖像縮放僅取偶數(shù)行和偶數(shù)列像素縮小原圖像

僅取奇數(shù)行和奇數(shù)列像素縮小原圖像

【例3.12】

編寫僅取奇數(shù)行和奇數(shù)列像素的圖像縮?。╥mageshrink)matlab程序。3.5.5圖像縮放clc;clearall;closeall;%清除命令窗口和工作空間,關(guān)閉Figure窗口

img0=imread('d:\0_matlab圖像課編程\lena.jpg');[h,w]=size(img0);N=2;%圖像縮小倍數(shù)(每N行/列留1行/列)result_row=round(h/N);result_col=round(w/N);%結(jié)果圖像行數(shù)和列數(shù)temp_img=zeros(result_row,result_col);%生成全零值結(jié)果圖像陣列x1=1;%保留的行方向的初始行數(shù)值forx0=1:N:h%行數(shù)按步長N=2循環(huán),也即去掉偶數(shù)行y1=1;%保留的列方向的初始列數(shù)值fory0=1:N:w%列數(shù)按步長N=2循環(huán),也即去掉偶數(shù)列temp_img(x1,y1)=img0(x0,y0);%像素值賦值y1=y1+1;endx1=x1+1;endresult_img=uint8(temp_img);%轉(zhuǎn)換成8位圖像figure;imshow(img0);title('原圖像');%顯示原圖像figure;imshow(result_img);title('縮小1倍后的圖像');

【例3.12】編寫僅取奇數(shù)行和奇數(shù)列像素的圖像縮小(imageshrink)matlab程序。3.5.5圖像縮放

放大圖像的目的一般是為了使放大后的圖像更好地顯示在更高分辨率的顯示設(shè)備上。3.5.5圖像縮放2.放大圖像

放大圖像的方法較多,也較復(fù)雜。典型的圖像放大方法是最近鄰域插值法和雙線性插值放大圖像方法。3.5.5圖像縮放2.圖像放大(2)最近鄰域插值放大圖像方法

1)按整數(shù)倍放大圖像的最近鄰域插值法

基本思想:將原圖像中的每一個原像素原封不動地復(fù)制映射到放大后的新圖像中的四個像素中。

(3.33)(3.34)3.5.5圖像縮放(2)最近鄰域插值放大圖像方法

2)按非整數(shù)倍放大圖像的最近鄰域插值法

例3.1

設(shè)已知有一個3×3的灰度圖像如圖(a)所示。按非整數(shù)倍數(shù)放大圖像的最近鄰域插值法將該圖像放大為4×4的圖像。

2343822

234382222674412

67441212896563

89656363

89656363(a)原圖像(b)放大后的圖像(3.30)

同理,可得新圖像中位于(0,2)處和(0,3)處的像素值都是22;

位于(1,0)處、(1,1)處、(1,2)和(1,3)處的像素值分別是67、44、12和12;

位于(2,0)處、(2,1)處、(2,2)和(2,3)處的像素值分別是89、65、63和63;

位于(3,0)處、(3,1)處、(3,2)和(3,3)處的像素值分別是89、65、63和63。

放大后的結(jié)果圖像如圖(b)所示。

【例3.13】

編寫以任意倍數(shù)k放大圖像的matlab程序。3.5.5圖像縮放clc;clearall;closeall;%清除命令窗口和工作空間,關(guān)閉Figure窗口img=imread('d:\0_matlab圖像課編程\girl.jpg');

[h_old,w_old]=size(img);m=input('\n請輸入任意值的圖像放大倍數(shù)k=');%整數(shù)、小數(shù)或分數(shù)值h_new=round(m*h_old);%確保非整數(shù)的k倍放大后,圖像大小為整數(shù)w_new=round(m*w_old);fori=1:h_new%逐像素點賦值forj=1:w_new%變換公式(3.32):x_old=x_new*(h_old/h_new),y_old=y_new*(h_old/h_new)x_old=round(i/m);ifx_old>h_oldx_old=h_old;elsex_old(x_old<1)=1;end

y_old=round(j/m);y_old(y_old>w_old)=w_old;y_old(y_old<1)=1;img1(i,j)=img(x_old,y_old);endend

figure,imshow(img);axison;title(['原圖像(大小:',num2str(h_old),'*',num2str(w_old),')']);figure;imshow(img1);axison;title(['放大后的圖像(大小:',num2str(h_new),'*',num2str(w_new),')']);【例3.13】編寫編寫以任意倍數(shù)k放大圖像的matlab程序。3.5.5圖像縮放3.5.5圖像縮放

2.圖像放大(2)雙線性插值放大圖像方法

雙線性插值法通過計算輸出像素被映射到輸入圖像中4個像素之間的非整數(shù)位置的那個像素點的灰度值,并將具有該灰度值的像素點插入到該位置,來實現(xiàn)對輸入圖像的放大。

(2)雙線性插值放大圖像方法

已知像素點(0,0)、(0,1)、(1,0)和(1,1),要插值的點為(x,y)。

雙線性插值的基本思路是:首先在x方向上線性插值,也即在(0,0)和(1,0)兩個點之間插入點(x,0),在(0,1)和(1,1)兩個點之間插入點(x,1)。然后在y方向線性插值,也即通過計算出的點(x,0)和(x,1),在y方向上插值計算出點(x,y)。

同時,在已知f(0,0)、f(0,1)、f(1,0)和f(1,1)的情況下,按如下的雙線性方程計算處f(x,y)值。(a)插值點關(guān)系示意圖

(b)插值運算示意圖(3.35)3.5.5圖像縮放

整理上式,即可得雙線性插值公式為:

基于上述算法原理,進行二次線性插值的結(jié)果圖像的過程如下圖所示:(3.35)謝謝第四章

空間域圖像增強

由于圖像在成像、傳輸和轉(zhuǎn)換等過程中受設(shè)備條件、傳輸信道、照明不足等客觀因素的限制,所獲得的圖像往往存在某種程度的質(zhì)量下降。

圖像增強就是通過對圖像的某些特征,如邊緣、輪廓、對比度等,進行強調(diào)或尖銳化,使之更適合于人眼的觀察或機器的處理的一種技術(shù)。

圖像增強技術(shù)分為:

空間域增強方法,也即在圖像平面中對圖像的像素灰度值直接進行運算處理的方法。

頻率域增強方法,是指在圖像的頻率域中對圖像進行增強處理的方法(見第5章)。

空間域圖像增強方法包括:

逐像素點對圖像進行增強的灰度變換方法;

通過全部或局部地改變圖像的對比度進行圖像增強的直方圖增強處理方法;

利用模板或掩模對圖像的鄰域像素進行處理的空間運算方法。4.1基于點運算的圖像增強方法

對比度增強是一種通過增加原圖像中某些灰度值間的反差和動態(tài)范圍來增強圖像的方法。

也即根據(jù)應(yīng)用目的的不同,通過設(shè)計出不同的變換函數(shù)來進行灰度拉伸,增強原圖像的對比度。4.1.1對比度增強

典型的灰度拉伸變換可表示成如式(4.1)所示的線性變換函數(shù):

(4.1)4.1.1對比度增強fLL0gabγβαgbga圖4.12552550fg45o不變均勻變亮均勻變暗

圖4.2(a)灰度拉伸的幾種典型情況

(a)原圖像(b)均勻變亮(c)均勻變暗4.1.1對比度拉伸β2552550gagab

(a)原圖像(d)[a.b]區(qū)間線性變化(e)亮區(qū)均勻變化

4.1.1對比度增強f2552550ga圖4.2(b,c)灰度拉伸的幾種典型情況2552550fg45o不變均勻變亮均勻變暗β2552550gagab(a)均勻變亮、變暗(b)[a.b]區(qū)間線性變化(c)亮區(qū)均勻變化

4.1.1對比度增強f2552550ga

原圖像均勻變亮均勻變暗區(qū)內(nèi)線性其余0值亮區(qū)均勻變化窗切片也稱為灰度切片,是一種提高圖像中某個灰度級范圍的亮度,使其變得比較突出的增強對比度的方法。4.1.2窗切片基本的實現(xiàn)方法包括兩種:

◆一種是給所關(guān)心的灰度范圍指定一個較高的灰度值,而給其它部分指定一個較低的灰度值或0值。

◆另一種是給所關(guān)心的灰度范圍指定一個較高的灰度值,而其它部分的灰度值保持不變。f2552550gabf2552550gabf2552550gab圖4.5(a,f-g)窗切片的兩種基本方法圖示

原圖像區(qū)域外低灰度值

區(qū)域外為0值區(qū)域外灰度值不變

4.1.2窗切片2552550fg45o不變均勻變亮均勻變暗β2552550gagab(a)均勻變亮、變暗(b)[a.b]區(qū)間線性變化(c)亮區(qū)均勻變化

f2552550gaf2552550gabf2552550gabf2552550gab(a)區(qū)域外低灰度值(b)區(qū)域外為0值(c)區(qū)域外灰度值不變

圖4.2圖4.4(a)原圖像、(b)均勻變亮、(c)均勻變暗、(d)區(qū)內(nèi)線性其余0值(e)亮區(qū)均勻變化、(f)區(qū)外低值、(g)區(qū)外0值、(h)區(qū)外值不變

圖4.5灰度拉伸與窗切片灰度變換結(jié)果示例;藍4.4;紅4.5

4.1.2窗切片4.2基于直方圖的圖像增強方法

4.2直方圖增強處理

由圖3.3(d)可知:當一幅圖像的像素占據(jù)了所有可能的灰度級范圍并呈均勻分布時,則該圖像具有比較高的對比度和多變的灰度色調(diào)。(d)4.2直方圖增強處理

像的直方圖增強處理方法,就是一種通過把原始圖像的灰度直方圖,從相對比較集中的某個灰度區(qū)間變成在全部灰度范圍內(nèi)的均勻分布,來進行圖像增強的方法。

4.2.1直方圖均衡1.

直方圖均衡的基本思想

所謂直方圖均衡,就是對于一幅已知灰度概率分布的灰度圖像,通過擴大該圖像中像素個數(shù)較多的灰度級別的分布范圍,縮減其像素個數(shù)較少的灰度級別的分布范圍,使該圖像的直方圖變換成具有均勻灰度概率分布的新圖像,以此來達到增加該圖像的對比度的圖像增強技術(shù)和方法。1.

直方圖均衡的基本思想(續(xù)1)

設(shè)r為待增強的原圖像的歸一化灰度值,

0≤r≤1

;s為增強后的新圖像的歸一化灰度值,且0≤s≤1;n(r)為原圖像中灰度值為r的像素的個數(shù),其概率分布密度為pr(r)。直方圖均衡即是找一種變換,使具有任意概率分布密度的直方圖的圖像,變換成接近于均勻概率分布密度的直方圖的圖像。4.2.1直方圖均衡1.

直方圖均衡的基本思想(續(xù)2)

1104.2.1直方圖均衡10(a)任意概率分布密度的直方圖(b)均勻概率分布密度的直方圖1.

直方圖均衡的基本思想(續(xù)3)

基于上述思想的直方圖均衡變換函數(shù):

s=T(r)0≤r≤1(4.2)的選取應(yīng)滿足如下條件:

1)T(r)在區(qū)間0≤r≤1中為單值單調(diào)增加函數(shù);

2)對于0≤r≤1,有0≤T(r)≤1,也即0≤s≤1。

4.2.1直方圖均衡1.

直方圖均衡的基本思想(續(xù)4)

顯然,滿足上述條件的變換函數(shù)存在反變換,并可把從s到r的反變換表示為:

r=T-1(s)0≤s≤1(4.3)且式(4.7)也滿足上述兩個條件。4.2.1直方圖均衡1.

直方圖均衡的基本思想(續(xù)5)

1011014.2.1直方圖均衡圖4.7單值單調(diào)遞增的灰度級變換函數(shù)2.

變換函數(shù)的選取在一幅圖像中,可以認為灰度值是一個在[0,1]區(qū)間取值的隨機變量R,其概率分布密度PR(r)是一個在[0,1]區(qū)間變化的單調(diào)增加的單值函數(shù)。由概率理論可知,任何一個其隨機變量R的概率分布密度在[0,1]區(qū)間變化的單調(diào)增加單值函數(shù),都滿足變換要求的兩個條件,因此取變換函數(shù)為:0≤r≤1(4.4)

4.2.1直方圖均衡4.2.1直方圖均衡2.

變換函數(shù)的選取

可以證明,所得新圖像的灰度級分布是歸一化的均勻概率密度分布。0≤r≤1(4.4)

3.

離散變換函數(shù)由于數(shù)字圖像的灰度級是離散值,所以可以用灰度級rk的頻數(shù)近似替代概率值。這樣,一幅圖像中第k個灰度級rk出現(xiàn)的概率為:

K=0,1,…,L-1(4.8)4.2.1直方圖均衡其中:(1)n是一幅數(shù)字圖像中像素的總數(shù),

是圖像中灰度級為

的像素的個數(shù),L為圖像的灰度級數(shù)。(2)3.

離散變換函數(shù)

由此可得對應(yīng)于式

的離散灰度變換函數(shù)為:

;K=0,1,…,L-1

上式也即直方圖均衡化公式,簡化地表示為:;K=0,1,…,L-1

(4.9)

4.2.1直方圖均衡4.

直方圖均衡化方法的實現(xiàn)步驟

假設(shè)原圖像f

的灰度級為L,對原圖像f

進行直方圖均衡化得到的新圖像為g

。圖像直方圖均衡化方法步驟如下:

(1)統(tǒng)計原圖像f

中不同灰度級像素的個數(shù)(也即,統(tǒng)計原圖像的灰度級分布)。4.2.1直方圖均衡4.

直方圖均衡化方法的實現(xiàn)步驟

(2)依據(jù)式(4.8),計算原圖像f

的歸一化灰度級分布概率,并畫出原圖像

的灰度直方圖。4.2.1直方圖均衡K=0,1,…,L-1(4.8)4.

直方圖均衡化方法的實現(xiàn)步驟

(3)根據(jù)直方圖均衡化公式(4.9),求各灰度級對應(yīng)的變換函數(shù)值。4.2.1直方圖均衡;K=0,1,…,L-1

(4.9)

(4)將原圖像f

的灰度級

,映射到新圖像

g

的灰度級

。

已知

為由式(4.9)求得的變換函數(shù)值,則原圖像f

的灰度級

(k=0,1,…,L-1)被映射到新圖像

g

的灰度級

(k=0,1,…,L-1)的則映射函數(shù)為:

;K=0,1,…,L-1

(4.9)

(4.10)4.2.1直方圖均衡4.

直方圖均衡化方法的實現(xiàn)步驟4.

直方圖均衡化方法的實現(xiàn)步驟

(5)求原圖像f

被均衡化后得到的新圖像g

中各個像素的灰度值,灰度值計算公式為4.2.1直方圖均衡=0,,…,L-1(4.11)4.

直方圖均衡化方法的實現(xiàn)步驟

(6)統(tǒng)計新圖像g

中不同灰度級像素的個數(shù)

(也即,統(tǒng)計新圖像的灰度級分布)。

(7)計算新圖像

g

的歸一化灰度級分布概率

,并畫出新圖像

的灰度直方圖。4.2.1直方圖均衡4.

直方圖均衡化方法的實現(xiàn)步驟

【例4.2】

已知有一幅如圖4.8的圖像

,灰度級為8。利用直方圖均衡化方法增強該圖像。4.2.1直方圖均衡8

解:(1)統(tǒng)計原灰度圖像中不同灰度級像素的個數(shù)(原圖像的灰度級分布),結(jié)果如表4.1所示。

(2)依據(jù)式(4.8),計算原圖像的歸一化灰度級分布概率,并畫出原圖像的灰度直方圖。

(2)依據(jù)式(4.8),計算原圖像的歸一化灰度級分布概率,并畫出原圖像的灰度直方圖。圖4.9原圖像的直方圖

(3)依據(jù)式(4.9),求各灰度級對應(yīng)的變換函數(shù)值。;K=0,1,…,L-1

(4.9)

(3)依據(jù)式(4.9),求各灰度級對應(yīng)的變換函數(shù)值。4.2.1直方圖均衡圖4.10變換函數(shù)

(4)根據(jù)式(4.10),將原圖像的灰度級

,映射到新圖像的灰度級

。(4.10)

(5)根據(jù)式(4.11),求原圖像f

被均衡化后得到的新圖像g

中各個像素的灰度值,得到的均衡化后的新圖像如圖4.10所示。=0,,…,L-1(4.11)4.2.1直方圖均衡

(6)統(tǒng)計新灰度圖像中不同灰度級像素的個數(shù)(新圖像的灰度級分布),結(jié)果如表4.3所示。4.2.1直方圖均衡

(7)求新圖像的歸一化灰度級分布概率,并畫出新圖像的灰度直方圖,結(jié)果如表4.4所示。

均衡化后得到的新圖像的直方圖如圖4.11所示。

【例4.3】

已知有一幅大小為64×64的圖像,灰度級為8。圖像中各灰度級的像素個數(shù)如表4.5所示。要求:

(1)利用直方圖均衡方法對該圖像進行直方圖均衡化。

(2)分別畫出原圖像的直方圖和均衡化后所得新圖像的直方圖。4.2.1直方圖均衡

解:直方圖均衡化的步驟和結(jié)果如表4.6所示。

解:直方圖均衡化的步驟和結(jié)果如表4.6所示。t0=IntegerRound(7*0.19)=1t1=IntegerRound(7*0.44)=3t2=IntegerRound(7*0.65)=5t3=IntegerRound(7*0.81)=6t4=IntegerRound(7*0.89)=6t5=IntegerRound(7*0.95)=7t6=IntegerRound(7*0.98)=7t5=IntegerRound(7*1.0)=7

解:直方圖均衡化的步驟和結(jié)果如表4.6所示。4.2.1直方圖均衡問題:

直方圖均衡化方法為什么能增強圖像?

直方圖均衡化處理后,原來像素值相對比較集中的一些像素,會被分配到別的灰度值上去,處理后灰度范圍變大,對比度變大,清晰度變大,所以能有效增強圖像。

4.2.2直方圖規(guī)定化

直方圖均衡方法雖然能顯著地增強圖像的對比度。但由于該方法總是僅產(chǎn)生近于似均勻分布的直方圖結(jié)果,而且其增強效果不易控制,所以在某些特定的情況下,必然限制了其效能的發(fā)揮和應(yīng)用。

實際應(yīng)用中,有時可能需要的是具有某種特定形狀的直方圖的圖像,以便有選擇地對圖像中某個特定的灰度級范圍進行增強。

直方圖規(guī)定化就是一種把已知直方圖的圖像變換成具有某種期望的直方圖的圖像增強方法。

1.

直方圖規(guī)定化的基本思想設(shè)pr(r)表示待增強的原圖像的灰度概率分布密度,pz(z)表示按指定直方圖的思路增強后的新圖像的灰度概率分布密度。直方圖規(guī)定化即是找一種變換,使得原圖像經(jīng)變換后,變成了具有指定概率分布密度pz(z)的新圖像。4.2.2直方圖規(guī)定化1.

直方圖規(guī)定化的基本思想(續(xù)1)假設(shè)對原圖像進行直方圖均衡處理,即取變換:

就可得到具有歸一化均勻分布概率密度ps(s)的增強后的圖像。

若設(shè):將原圖像變換成指定的直方圖對應(yīng)的圖像的處理過程,可以表示成類似于直方圖均衡處理的變換形式,且(概率密度為pu(u)

):

0≤z≤1(4.13)

4.2.2直方圖規(guī)定化0≤r≤1(4.12)

1.

直方圖規(guī)定化的基本思想(續(xù)2)由于兩幅圖像都做的是直方圖均衡處理,所以其結(jié)果圖像灰度的概率分布密度ps(s)和pu(u)都應(yīng)具有歸一化的均勻分布,也即:0≤s,u≤1(4.14)

4.2.2直方圖規(guī)定化1.

直方圖規(guī)定化的基本思想(續(xù)3)也就是說均勻分布的隨機變量S和U有完全相同的統(tǒng)計特性。換句話說,在統(tǒng)計意義上說,它們是完全相同的。因此,對式(4.13,)的反變換:用s替代u,且注意即:4.2.2直方圖規(guī)定化就可獲得新圖像中相應(yīng)的各灰度值。

(4.15)

2.

直方圖規(guī)定化的步驟2.

直方圖規(guī)定化的步驟4.2.2直方圖規(guī)定化

【例4.4】

已知有一幅大小為64×64的圖像,灰度級為8,圖像中各灰度級的像素個數(shù)及歸一化分布概率如表4.7所示,規(guī)定的直方圖數(shù)據(jù)如表4.8所示。(1)對該圖像進行直方圖規(guī)定化。(2)畫出原圖像的直方圖和直方圖規(guī)定化結(jié)果圖像的直方圖。

解:(1)對原圖像進行直方圖均衡化處理。

由于本例圖像與例4.3中的圖像的像素個數(shù)相同,所以直接采用例4.3的直方圖均衡化結(jié)果如表4.9所示。

解:(2)對得到的新圖像進行直方圖規(guī)定化,過程和結(jié)果如表4.10。

【例4.4】

解:原圖像的直方圖、規(guī)定直方圖和直方圖規(guī)定化所得結(jié)果圖像的直方圖如圖4.15所示。4.2.2直方圖規(guī)定化

一個直方圖規(guī)定化的實例結(jié)果如圖4.16所示。4.2.2直方圖規(guī)定化4.3基于空間平滑濾波的圖像增強方法

4.3.1線性平滑濾波圖像增強方法——鄰域平均法0.

問題的提出及相關(guān)概念

圖像在獲取和傳輸過程中,常常會被稱為“噪聲”的隨機信號所污染。(1)圖像噪聲

圖像噪聲是一種空間上不相聯(lián)系的、離散的、孤立的像素變化現(xiàn)象,其灰度值與它們相鄰像素的灰度值有明顯不同。4.3.1線性平滑濾波圖像增強方法——鄰域平均法0.

問題的提出及相關(guān)概念(2)典型的圖像噪聲①椒鹽噪聲:把圖像中隨機出現(xiàn)的黑白亮度值稱為椒鹽噪聲,黑點對應(yīng)椒,白點對應(yīng)鹽。

②脈沖噪聲:把圖像中隨機出現(xiàn)的白亮度值(正脈沖噪聲)或黑亮度值(負脈沖噪聲)稱為脈沖噪聲。4.3.1線性平滑濾波圖像增強方法——鄰域平均法0.

問題的提出及相關(guān)概念(3)高頻信號與低頻信號①高頻信號:把圖像中變化劇烈的部分,例如邊緣和噪聲等,稱為高頻信號。

②低頻信號:把圖像中像素值變化平緩的部分,稱為低頻信號。4.3.1線性平滑濾波圖像增強方法——鄰域平均法0.

問題的提出及相關(guān)概念(4)低通濾波與高通濾波①低通濾波:把保留低頻信號并濾掉高頻信號的處理過程,稱為低通濾波。②高通濾波:把保留高頻信號并濾掉低頻信號的處理過程,稱為高通濾波。

利用鄰域平均法消除圖像中噪聲的方法是一種低通濾波方法,也稱為平滑濾波。4.3.1線性平滑濾波圖像增強方法——鄰域平均法1.

鄰域平均法設(shè)f(x,y)表示圖像中位于(x,y)處的像素點的灰度值,(i=1,2,…,8)表示與f(x,y)相鄰的8

鄰域像素的灰度值,則鄰域平均法可表示為:(4.16)

1238x,y4765其中:ε是圖像f(x,y)中在點(x,y)處的灰度值與其相鄰的8鄰域像素灰度值之和的平均值的誤差門限,ε可根據(jù)容許的誤差程度通過實驗選取。1238x,y47651.

鄰域平均法

對式(4.16)中前一個運算公式的理解:

對于每一個(x,y),的計算式可理解為:g(x,y)=0for(i=0,1,3))for(j=0,1,3)g(i,j)=g(x,y)+f(i,j)g(x,y)=(g(x,y)-f(x,y))/84.3.1線性平滑濾波圖像增強方法——鄰域平均法

【例】域平均法圖像噪聲平滑matlab程序。clc;clearall;closeall;img0=imread('d:\0_matlab圖像課編程\lena.jpg')Noisy_img=imnoise(img0,‘salt&pepper’,0.03);%噪聲密度為0.03的椒鹽噪聲f=double(Noisy_img);

%將加噪聲圖像灰度值轉(zhuǎn)換成雙精度數(shù)據(jù)result_f=f;

%建立結(jié)果圖像信息[h,w]=size(img0);fori=1:h-2forj=1:w-2

x=(f(i,j)+f(i,j+1)+f(i,j+2)+f(i+1,j)+f(i+1,j+2)+f(i+2,j)+

f(i+2,j+1)+f(i+2,j+2))/8;ifabs(x-f(i+1,j+1))

溫馨提示

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

評論

0/150

提交評論