版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 目錄</b></p><p><b> 摘要1</b></p><p> Abstract2</p><p> 1.MATLAB簡介3</p><p> 1.1 MATLAB說明3</p><p> 1.2 MATLAB的語言特
2、點(diǎn)3</p><p> 1.3 MATLAB系統(tǒng)構(gòu)成4</p><p> 1.4 MATLAB數(shù)值計(jì)算4</p><p> 1.4.1極限的計(jì)算、微分的計(jì)算、積分的計(jì)算、級(jí)數(shù)的計(jì)算、求解代數(shù)方程、求解常微分方程4</p><p> 1.4.2矩陣的最大值、最小值、均值、方差、轉(zhuǎn)置、逆、行列式、特征值的計(jì)算、矩陣的相乘、右除、左
3、除、冪運(yùn)算6</p><p> 1.4.3多項(xiàng)式加減乘除運(yùn)算、多項(xiàng)式求導(dǎo)、求根和求值運(yùn)算、多項(xiàng)式的部分分式展開、多項(xiàng)式的擬合、插值運(yùn)算10</p><p> 2圖像選擇及變換14</p><p> 2.1 原始圖像選擇讀取14</p><p> 2.2 圖像的變換16</p><p> 3 圖像處理
4、及代碼程序17</p><p> 3.1 圖像亮度對比度調(diào)整17</p><p> 3.1.1 函數(shù)及其參數(shù)的說明17</p><p> 3.1.2 源程序及運(yùn)行結(jié)果17</p><p> 3.2 圖像放大和縮小19</p><p> 3.2.1 函數(shù)及其參數(shù)的說明19</p>&l
5、t;p> 3.2.2 源程序及運(yùn)行結(jié)果19</p><p> 3.3 圖像任意角度的旋轉(zhuǎn)21</p><p> 3.3.1 函數(shù)及其參數(shù)的說明21</p><p> 3.3.2 源程序及運(yùn)行結(jié)果22</p><p> 3.4圖像直方圖統(tǒng)計(jì)和均衡23</p><p> 3.4.1 函數(shù)及其參數(shù)
6、的說明23</p><p> 3.4.2 源程序及運(yùn)行結(jié)果24</p><p> 3.5 圖像加入噪聲26</p><p> 3.5.1 函數(shù)及其參數(shù)的說明26</p><p> 3.5.2 源程序及運(yùn)行結(jié)果26</p><p> 4感悟體會(huì)小結(jié)29</p><p><
7、;b> 參考文獻(xiàn)30</b></p><p> 全部源程序代碼31</p><p><b> 摘要</b></p><p> MATLAB是主要面對科學(xué)計(jì)算、可視化以及交互式程序設(shè)計(jì)的高科技計(jì)算環(huán)境。 MATLAB強(qiáng)大的擴(kuò)展功能為各個(gè)領(lǐng)域的應(yīng)用提供了基礎(chǔ),由各個(gè)領(lǐng)域的專家相繼給出了MATLAB工具箱,其中主要有信號(hào)
8、處理,控制系統(tǒng),神經(jīng)網(wǎng)絡(luò),圖像處助,魯棒控制, 非線性系統(tǒng)控制設(shè)計(jì),最優(yōu)化,小波,通信等工具箱,這此工具箱給各個(gè)領(lǐng)域的研究和工程應(yīng)用提供了有力的工具。借助于這些“巨人肩膀上的工具”,各個(gè)層次的研究人員可直現(xiàn)方便地進(jìn)行分析、計(jì)算及設(shè)計(jì)工作,從而大大地節(jié)省了時(shí)間。</p><p> 本次課程設(shè)計(jì)的目的在于較全面了解常用的數(shù)據(jù)分析與處理原理及方法,能夠運(yùn)用相關(guān)軟件進(jìn)行模擬分析。通過對采集的圖像進(jìn)行常規(guī)的圖像的亮度和對
9、比度的調(diào)整,并進(jìn)行最近鄰插值和雙線性插值等算法將用戶所選取的圖像區(qū)域進(jìn)行放大和縮小整數(shù)倍的和旋轉(zhuǎn)操作,并保存,比較幾種插值的效果,以及對圖像進(jìn)行直方圖和直方圖均衡并加入噪聲進(jìn)行對比,達(dá)到本次課程設(shè)計(jì)的目的。</p><p> 關(guān)鍵詞:MATLAB 亮度和對比度 插值 放大 旋轉(zhuǎn) 噪聲</p><p><b> Abstract</b></p&
10、gt;<p> MATLAB is main face of scientific calculation, visualization and interactive program design of the high-tech computing environment. MATLAB is a powerful extension application in various fields to provide
11、a basis by experts in various fields have been given a MATLAB toolbox, which are signal processing, control systems, neural networks, image processing support, robust control, nonlinear control system design, optimizatio
12、n, wavelets, communications toolkit, which this kit to the various areas of </p><p> 1.MATLAB簡介</p><p> 1.1 MATLAB說明</p><p> MATLAB是由美國mathworks公司發(fā)布的主要面對科學(xué)計(jì)算、可視化以及交互式程序設(shè)計(jì)的高科技計(jì)算環(huán)境
13、。它將數(shù)值分析、矩陣計(jì)算、科學(xué)數(shù)據(jù)可視化以及非線性動(dòng)態(tài)系統(tǒng)的建模和仿真等諸多強(qiáng)大功能集成在一個(gè)易于使用的視窗環(huán)境中,為科學(xué)研究、工程設(shè)計(jì)以及必須進(jìn)行有效數(shù)值計(jì)算的眾多科學(xué)領(lǐng)域提供了一種全面的解決方案,并在很大程度上擺脫了傳統(tǒng)非交互式程序設(shè)計(jì)語言(如C、Fortran)的編輯模式,代表了當(dāng)今國際科學(xué)計(jì)算軟件的先進(jìn)水平?!?</p><p> MATLAB和Mathematica、Maple并稱為三大數(shù)學(xué)軟件。它在
14、數(shù)學(xué)類科技應(yīng)用軟件中在數(shù)值計(jì)算方面首屈一指。MATLAB可以進(jìn)行矩陣運(yùn)算、繪制函數(shù)和數(shù)據(jù)、實(shí)現(xiàn)算法、創(chuàng)建用戶界面、連接其他編程語言的程序等,主要應(yīng)用于工程計(jì)算、控制設(shè)計(jì)、信號(hào)處理與通訊、圖像處理、信號(hào)檢測、金融建模設(shè)計(jì)與分析等領(lǐng)域。</p><p> 1.2 MATLAB的語言特點(diǎn)</p><p> ?。?)語言簡潔緊湊,使用方便靈活,庫函數(shù)極其豐富。運(yùn)算符豐富。 </p&
15、gt;<p> ?。?)MATLAB既具有結(jié)構(gòu)化的控制語句(如for循環(huán),while循環(huán),break語句和 if語句),又有面向?qū)ο缶幊痰奶匦浴?lt;/p><p> (3)程序限制不嚴(yán)格,程序設(shè)計(jì)自由度大。</p><p> ?。?)MATLAB的圖形功能強(qiáng)大。</p><p> ?。?)MATLAB的缺點(diǎn)是,它和其他高級(jí)程序相比,程序的執(zhí)行速度較慢。
16、</p><p> (6)由于MATLAB的程序不用編譯等預(yù)處理,也不生成可執(zhí)行文件,程序?yàn)榻忉寛?zhí)行,所以速度較慢。</p><p> 1.3 MATLAB系統(tǒng)構(gòu)成 </p><p> 主要由以下五部分構(gòu)成: MATLAB系統(tǒng)構(gòu)成 (1) MATLAB語言 (2)MATLAB工作環(huán)境 (3)圖形處理 (4)MATLAB數(shù)學(xué)函數(shù)庫
17、 (5)MATLAB應(yīng)用編程人員接口(API)</p><p> 1.4 MATLAB數(shù)值計(jì)算</p><p> 1.4.1極限的計(jì)算、微分的計(jì)算、積分的計(jì)算、級(jí)數(shù)的計(jì)算、求解代數(shù)方程、求解常微分方程</p><p><b> ?、贅O限的計(jì)算</b></p><p><b> 舉例:求極限 。</
18、b></p><p><b> 源代碼如下:</b></p><p> syms x y f</p><p> y=(x+2)./(x.^2-x+3);</p><p> f=limit(y,x,0)</p><p><b> 結(jié)果:f =2/3</b><
19、;/p><p><b> ?、谖⒎值挠?jì)算</b></p><p> 舉例:求函數(shù)f(x)=3-2x+1的導(dǎo)數(shù)。</p><p><b> 源代碼如下:</b></p><p> syms x f y </p><p> y=3*x^2-2*x+1;</p>
20、<p> f=diff(y,x)</p><p> 結(jié)果:f =6x-2</p><p><b> ?、鄯e分的計(jì)算</b></p><p> 舉例:求函數(shù)分別對兩個(gè)變量的積分。</p><p><b> 源代碼如下:</b></p><p> syms
21、 x s f y</p><p> f=cos(3*x)+x^2-2*s;</p><p> y=int(f,x)</p><p> y=int(f,s)</p><p> 結(jié)果:y =1/3*sin(3*x)+1/3*x^3-2*s*x</p><p> y =cos(3*x)*s+x^2*s-s^2<
22、;/p><p><b> ?、芗?jí)數(shù)的計(jì)算</b></p><p><b> 舉例:求級(jí)數(shù)之和</b></p><p><b> 源代碼如下:</b></p><p> syms n f y</p><p> f=1/(n^2+2);</p>
23、;<p> y=symsum(f,n,1,inf)</p><p><b> 結(jié)果:y =</b></p><p> 1/4*i*2^(1/2)*Psi(1-i*2^(1/2))-1/4*i*2^(1/2)*Psi(1+i*2^(1/2))</p><p><b> ?、萸蠼獯鷶?shù)方程</b></p
24、><p> 舉例:求多項(xiàng)式方程的根。</p><p><b> 源代碼:</b></p><p> p=[1,-2,3,-4,5,-6,7]</p><p><b> roots(p)</b></p><p><b> 結(jié)果:</b></p&
25、gt;<p><b> ans =</b></p><p> 1.3079 + 0.5933i</p><p> 1.3079 - 0.5933i</p><p> -0.7104 + 1.1068i</p><p> -0.7104 - 1.1068i</p><p>
26、 0.4025 + 1.3417i</p><p> 0.4025 - 1.3417i</p><p><b> ?、耷蠼獬N⒎址匠?lt;/b></p><p> 舉例:求微分方程 , y(0)=2的解。</p><p><b> 源代碼:</b></p><
27、p> dsolve('Dy=2+y^2') </p><p> dsolve('Dy=2+y^2','y(0)=2')</p><p><b> 結(jié)果:</b></p><p> ans =2^(1/2)*tan(2^(1/2)*t+2^(1/2)*C1)-1/(t-C1) &l
28、t;/p><p> ans =2^(1/2)*tan(2^(1/2)*t+atan(2^(1/2)))</p><p> 1.4.2矩陣的最大值、最小值、均值、方差、轉(zhuǎn)置、逆、行列式、特征值的計(jì)算、矩陣的相乘、右除、左除、冪運(yùn)算</p><p> ?、倬仃嚨淖畲笾?、最小值</p><p> 舉例:求矩陣A的最大值、最小值</p>
29、<p><b> 源代碼如下:</b></p><p><b> clear all</b></p><p><b> A=[</b></p><p> 1 2 3</p><p> 4 5 6</p><
30、p> 7 8 9]</p><p> max(A),min(A)</p><p><b> 結(jié)果:</b></p><p><b> ans =</b></p><p> 7 8 9</p><p><b> ans =
31、</b></p><p> 1 2 3</p><p><b> ?、诰仃嚨木?lt;/b></p><p> 舉例:求矩陣A的均值</p><p><b> 源代碼如下:</b></p><p><b> clear all</
32、b></p><p><b> A=[ </b></p><p> 1 2 3</p><p> 4 5 6</p><p> 7 8 9]</p><p><b> mean2(A)</b></p>
33、<p> 結(jié)果:ans =5 </p><p><b> ?、劬仃嚨姆讲?lt;/b></p><p> 舉例:求矩陣A的方差</p><p><b> 源代碼如下:</b></p><p><b> clear all</b></p><
34、p><b> A=[ </b></p><p> 1 2 3</p><p> 4 5 6</p><p> 7 8 9]</p><p><b> std2(A)</b></p><p> 結(jié)果:ans = 2
35、.7386</p><p><b> ?、芫仃嚨霓D(zhuǎn)置</b></p><p> 舉例:已知矩陣 ,求A的轉(zhuǎn)置</p><p><b> 源代碼如下:</b></p><p><b> clear all</b></p><p><b>
36、 A=[ </b></p><p> 1 2 3</p><p> 4 5 6</p><p> 7 8 9]</p><p><b> A'</b></p><p><b> 結(jié)果:ans =</b>
37、</p><p> 1 4 7</p><p> 2 5 8</p><p> 3 6 9</p><p><b> ?、菥仃嚨哪?lt;/b></p><p> 舉例:已知,求A得逆。</p><p><b>
38、 源代碼如下:</b></p><p><b> clear all</b></p><p><b> A=[ </b></p><p> 1 2 3</p><p> 4 5 6</p><p> 7 8 9
39、]</p><p><b> inv(A)</b></p><p><b> 結(jié)果:ans =</b></p><p> 1.0e+016 *</p><p> -0.4504 0.9007 -0.4504</p><p> 0.9007 -1.801
40、4 0.9007</p><p> -0.4504 0.9007 -0.4504</p><p><b> ⑥矩陣的行列式</b></p><p> 舉例:已知,求A的行列式。</p><p><b> 源代碼如下:</b></p><p><b
41、> clear all</b></p><p> A=[1,2,3;4,5,6;7,8,9]</p><p><b> det(A)</b></p><p><b> 結(jié)果:ans =0</b></p><p><b> ?、呔仃嚨奶卣髦?lt;/b><
42、;/p><p> 舉例:求矩陣A的特征值</p><p><b> 源代碼如下:</b></p><p><b> clear all</b></p><p> A=[1 2 3; 4 5 6;7 8 9]</p><p><b> eig(A)</b&
43、gt;</p><p> 結(jié)果:ans = 16.1168</p><p><b> -1.1168</b></p><p><b> -0.0000</b></p><p> ?、嗑仃嚨南喑恕⒂页?、左除、冪運(yùn)算</p><p> 舉例:,,,求AB和AC。<
44、;/p><p><b> 源代碼如下:</b></p><p><b> clear all</b></p><p> A=[1,2,3;4,5,6;7,8,9],B=[1,2;3,4;5,6],C=[1,2,3,4;5,6,7,8;9,10,11,12]</p><p><b> A
45、*B,A*C</b></p><p><b> 結(jié)果:ans =</b></p><p><b> 22 28</b></p><p><b> 49 64</b></p><p><b> 76 100</b><
46、/p><p><b> ans =</b></p><p> 38 44 50 56</p><p> 83 98 113 128</p><p> 128 152 176 200</p><p> 舉例:已知,,求A\B,B/A。</p&g
47、t;<p><b> 源代碼如下:</b></p><p><b> clear all</b></p><p> A=[1,2,4;7,4,27;-3,9,12],B=[1,-3,4;-6,9,1;27,8,-2]</p><p><b> A\B,B/A</b></p&
48、gt;<p><b> 結(jié)果:ans =</b></p><p> -3.3733 -4.4311 3.7511</p><p> 1.2533 -3.1956 2.8356</p><p> 0.4667 1.9556 -1.3556</p><p><b>
49、; ans =</b></p><p> -2.6667 0.5333 0.0222</p><p> 1.0667 -0.5733 1.0178</p><p> 29.9333 -2.4267 -4.6844</p><p><b> 舉例:設(shè),求。</b><
50、/p><p><b> 源代碼如下:</b></p><p><b> clear all</b></p><p> A=[1,-1;1,1]</p><p> A^10 ,A.^10</p><p><b> 結(jié)果:ans =</b></p
51、><p><b> 0 -32</b></p><p><b> 32 0</b></p><p><b> ans =</b></p><p><b> 1 1</b></p><p><b>
52、 1 1</b></p><p> 1.4.3多項(xiàng)式加減乘除運(yùn)算、多項(xiàng)式求導(dǎo)、求根和求值運(yùn)算、多項(xiàng)式的部分分式展開、多項(xiàng)式的擬合、插值運(yùn)算</p><p> ?、俣囗?xiàng)式加減乘除運(yùn)算</p><p><b> 舉例:f(x)=</b></p><p><b> g(x)=</b&g
53、t;</p><p><b> 源代碼如下:</b></p><p><b> clear all</b></p><p> f=[1 -2 3 -4 0 -6 7 -8 9]</p><p> g=[0 0 0 5 4 -3 20 -1 2]</p><p><
54、;b> h=f+g</b></p><p><b> h=f-g</b></p><p> h=conv(f,g)</p><p> 結(jié)果:h = 1 -2 3 1 4 -9 27 -9 11</p><p> h = 1 -2
55、 3 -9 -4 -3 -13 -7 7</p><p> h = Columns 1 through 9 </p><p> 0 0 0 5 -6 4 18 -66 46</p><p> Columns 10 through 17 </p>&l
56、t;p> -76 16 -136 206 -206 202 -25 18</p><p><b> 源代碼如下:</b></p><p><b> clear all</b></p><p> f=[1 -2 3 -4 0 -6 7 -8 9];</p><p&
57、gt; g=[5 4 -3 20 -1 2];</p><p> [q,r]=deconv(f,g)</p><p><b> 結(jié)果:q =</b></p><p> 0.2000 -0.5600 1.1680 -2.8704</p><p><b> r =</b><
58、/p><p> Columns 1 through 5 </p><p> 0 0 -0.0000 0 26.3856</p><p> Columns 6 through 9 </p><p> -38.9312 66.6960 -13.2064 14.7408</p>&
59、lt;p><b> ②多項(xiàng)式求導(dǎo)</b></p><p><b> 舉例:g(x)=</b></p><p><b> 源代碼如下:</b></p><p><b> clear all</b></p><p> g=[5 -4 3 -2
60、1 -10];</p><p> polyder(g)</p><p><b> 結(jié)果:ans =</b></p><p> 25 -16 9 -4 1</p><p><b> ?、矍蟾颓笾颠\(yùn)算</b></p><p><b>
61、 舉例:g(x)=</b></p><p><b> 源代碼如下:</b></p><p><b> clear all</b></p><p> g=[5 -4 3 -2 1 -10];</p><p><b> roots(g)</b></p>
62、;<p><b> 結(jié)果:ans =</b></p><p> 1.2628 </p><p> 0.4804 + 1.1213i</p><p> 0.4804 - 1.1213i</p><p> -0.7118 + 0.7468i</p><p>
63、 -0.7118 - 0.7468i</p><p> ?、芏囗?xiàng)式的部分分式展開</p><p> 舉例:將有理多項(xiàng)式展開成部分多項(xiàng)式</p><p><b> 源代碼如下:</b></p><p> B=[1,-3,5];</p><p> A=[1,5,-2,15];</p>
64、;<p> [R,P,K]=residue(B,A)</p><p><b> 結(jié)果:</b></p><p> R =1.3731 </p><p> -0.1866 - 0.0325i</p><p> -0.1866 + 0.0325i</p><p&g
65、t; P = -5.7924 </p><p> 0.3962 + 1.5597i</p><p> 0.3962 - 1.5597i</p><p><b> K =</b></p><p><b> []</b></p><p> ?、荻囗?xiàng)式的
66、擬合、插值</p><p><b> 舉例:</b></p><p> 源代碼(插值)如下:</p><p> x=[1 3 5 7 9];</p><p> y=[2 4 6 8 10];</p><p> x1=[1.2 3.4 6.5 ];</p><p>
67、 y1=interp1(x,y,x1)</p><p><b> 結(jié)果:</b></p><p> y1 = 2.2000 4.4000 7.5000</p><p><b> 舉例:</b></p><p> 源代碼(擬合)如下:</p><p>
68、x=[1 2 3 4 5];</p><p> y=[0 0.2 0.4 0.9 1.5];</p><p> z=polyfit(x,y,2)</p><p><b> 結(jié)果:</b></p><p> z = 0.0786 -0.1014 0.0400</p><p><
69、;b> 2圖像選擇及變換</b></p><p> 2.1 原始圖像選擇讀取</p><p><b> 原始圖片如下:</b></p><p> 圖1 原始圖片(來自網(wǎng)絡(luò))</p><p> MATLAB為用戶提供了專門的函數(shù)以從圖像格式的文件中讀寫圖像數(shù)據(jù)。采用的是imread函數(shù)來實(shí)現(xiàn)圖
70、像文件的讀取操作,采用的格式如下:</p><p> A=imread(’filename.fmt’)</p><p> 該語句用于讀取字符串“filename”對應(yīng)的灰度圖像或彩色圖像,“fmt”指定了文件的格式。</p><p> 采用imfinfo函數(shù)查詢圖像文件的信息。其語句格式如下:</p><p> Info=imfinf
71、o(‘filename.fmt’)</p><p> 該語句可以在命令窗口會(huì)顯示出文件的基本信息。</p><p> 采用imshow函數(shù)進(jìn)行圖像的顯示,采用的格式如下:</p><p> A=imread(‘filename.fmt’); </p><p> imshow(A);</p><p> 當(dāng)這種顯
72、示方式要求被顯示的圖像要么在當(dāng)前目錄下或MATLAB的目錄下。</p><p> 采用rgb2gray函數(shù)進(jìn)行真彩色圖像與灰階強(qiáng)度圖像的轉(zhuǎn)變,其格式調(diào)用如下: A=rgb2gry(‘filename.fmt’);</p><p> 得到的圖像可以進(jìn)行統(tǒng)計(jì)與處理,能完成要求。</p><p> 圖像讀入與顯示和變化的源代碼如下:<
73、/p><p> close all;</p><p> clear all;</p><p> x=imread('xuewu.jpg');</p><p> imshow(x);</p><p> imfinfo('xuewu.jpg')</p><p>
74、 程序運(yùn)行結(jié)果如下圖2所示:</p><p> 圖2 讀取后顯示圖片</p><p> 命令窗口中,顯示如下:</p><p> Filename: 'xuewu.jpg'</p><p> FileModDate: '27-Dec-2011 08:58:56'</p><p&g
75、t; FileSize: 348015</p><p> Format: 'jpg'</p><p> FormatVersion: ''</p><p> Width: 1024</p><p> Height: 768</p><p> BitDepth: 24</
76、p><p> ColorType: 'truecolor'</p><p> FormatSignature: ''</p><p> NumberOfSamples: 3</p><p> CodingMethod: 'Huffman'</p><p> Codi
77、ngProcess: 'Sequential'</p><p> Comment: {}2.2 轉(zhuǎn)換圖像為灰階圖像</p><p><b> 2.2 圖像的變換</b></p><p> 在后期的處理中,有部分程序需要用到灰階圖片,因此提前將圖片進(jìn)行轉(zhuǎn)換,得到灰階圖片。采用rgb2gray函數(shù)進(jìn)行真彩色圖像與灰階強(qiáng)度圖像的
78、轉(zhuǎn)變其格式調(diào)用如下:</p><p> A=rgb2gry(‘filename.fmt’);</p><p> 得到的圖像可以進(jìn)行統(tǒng)計(jì)與處理。</p><p><b> 程序源代碼如下:</b></p><p> x1=rgb2gray(x);</p><p> figure,imsho
79、w(x1)</p><p> 程序運(yùn)行結(jié)果如下圖3所示:</p><p><b> 圖3 灰階圖片</b></p><p> 3 圖像處理及代碼程序</p><p> 3.1 圖像亮度對比度調(diào)整</p><p> 3.1.1 函數(shù)及其參數(shù)的說明</p><p>
80、 亮度的調(diào)節(jié)采用的是imadd函數(shù),其調(diào)用格式如下:</p><p> Z=imadd(X,Y);</p><p> 說明:imadd函數(shù)可以將兩幅圖像相加或在圖像上加上一個(gè)常量。其中,X為圖像數(shù)據(jù)矩陣,也可以是M*N*3的RGB圖像矩陣。Y可以是與X的格式類型完全的相同圖像數(shù)據(jù)矩陣或者是一個(gè)double類型的數(shù)值。</p><p> 對比度的調(diào)節(jié)采用的是i
81、majust函數(shù),其調(diào)用格式如下:</p><p> Z=imadjust(X,[low_in,high_in],[low_out,high_out]);</p><p> 說明:imadjust函數(shù)將圖像矩陣X中的亮度值線性變換到輸出矩陣Z中的新值。輸入圖像X因?yàn)閡int8類,uint16類或double類圖像,輸出圖像Z與輸入圖像X有著相同的數(shù)據(jù)類型。low_in、high_in、
82、low_out與high_out這四個(gè)參數(shù)的取值范圍不論輸入X的數(shù)據(jù)類型為何都為[0,1]。</p><p> 3.1.2 源程序及運(yùn)行結(jié)果</p><p><b> 源程序如下:</b></p><p> x2=imadd(x1,50); %亮度調(diào)節(jié)</p><p> figure,
83、imshow(x2)</p><p> x3=imadjust(x1,[0.3,0.7],[0,1]); %對比度調(diào)節(jié)</p><p> figure,imshow(x3)</p><p> 運(yùn)行結(jié)果如圖4和圖5所示:</p><p><b> 圖4 亮度調(diào)節(jié)</b></p><p&g
84、t;<b> 圖5 對比度調(diào)節(jié)</b></p><p> 3.2 圖像放大和縮小</p><p> 3.2.1 函數(shù)及其參數(shù)的說明</p><p> 對圖像進(jìn)行放大和縮小可以采用imresize函數(shù),其調(diào)用格式如下:</p><p> B = imresize(A,[mrows ncols], method
85、)</p><p> 說明:mrows ncols 是選擇放大或縮小的倍數(shù),method表示選用的插值方法,其可選值為nearest(最鄰近插值法)、bilinear(雙線性插值)和bicubic(雙三次插值法),并且method的缺省表示為nearest。</p><p> 3.2.2 源程序及運(yùn)行結(jié)果</p><p><b> 源程序如下所示:&
86、lt;/b></p><p><b> clc</b></p><p> x1=imread('91.jpg');</p><p> imshow(x1)</p><p> title('原圖');</p><p> Info=imfinfo(
87、9;91.jpg')</p><p><b> %放大2倍</b></p><p> x2=imresize(x1,2); %最鄰近插法</p><p> figure,imshow(x2)</p><p> title('最鄰近插法放大');</p>
88、<p> x3=imresize(x1,2,'bilinear'); %雙線性插值法</p><p> figure,imshow(x3)</p><p> title('雙線性插值法放大'); %縮小到原來的1/5</p><p> x4=imresize(x1,0.2);
89、 %最鄰近插法</p><p> figure,imshow(x4)</p><p> title('最鄰近插法縮小');</p><p> x5=imresize(x1,0.2,'bilinear'); %雙線性插值法</p><p> figure,imshow(x5)<
90、;/p><p> title('雙線性插值法縮小');</p><p> x6=imrotate(x1,45); </p><p> figure,imshow(x6)</p><p> %將原始灰度以雙線性插值的方式將圖像順時(shí)針旋轉(zhuǎn)45°</p><p> x7
91、=imrotate(x1,45,'bilinear'); </p><p> figure,imshow(x7)</p><p> 程序運(yùn)行結(jié)果如圖6、7、8、9所示:</p><p> 圖6 最鄰近插法放大一倍</p><p> 圖7 雙線性插值法放大</p><p>
92、 圖8 最鄰近插法縮小</p><p> 圖9 雙線性插值法縮小</p><p> 3.3 圖像任意角度的旋轉(zhuǎn)</p><p> 3.3.1 函數(shù)及其參數(shù)的說明</p><p> 對圖像進(jìn)行旋轉(zhuǎn)可以采用imrotate函數(shù),其調(diào)用格式如下所示:</p><p> B = imrotate(A,angle,
93、method,bbox)</p><p> 說明:A為輸入二維圖像矩陣,其數(shù)據(jù)類型不限。angel為逆時(shí)針旋轉(zhuǎn)的角度值,如果希望順時(shí)針旋轉(zhuǎn),則選擇該值為負(fù)。method表示選用的插值方法,其可選值為nearest(最鄰近插值法)、bilinear(雙線性插值)和bicubic(雙三次插值法),并且method的缺省表示為nearest。bbox為指定輸出圖像尺寸的字符串,’crop’表示的通過裁剪使輸出圖像尺寸
94、與輸入圖像一致,’loose’表示的不進(jìn)行裁剪,故輸出圖像尺寸會(huì)比輸入圖像尺寸大,它在默認(rèn)情況下為’loose’。</p><p> 3.3.2 源程序及運(yùn)行結(jié)果</p><p><b> 源程序如下:</b></p><p><b> clc</b></p><p> x1=imread(
95、'91.jpg');</p><p> imshow(x1)</p><p> title('原圖');</p><p> %將原始灰度以最鄰近插值的方式將圖像順時(shí)針旋轉(zhuǎn)45°</p><p> x6=imrotate(x1,45); </p><p&
96、gt; figure,imshow(x6)</p><p> %將原始灰度以雙線性插值的方式將圖像順時(shí)針旋轉(zhuǎn)45°</p><p> x7=imrotate(x1,45,'bilinear'); </p><p> figure,imshow(x7)</p><p> 程序的運(yùn)行結(jié)果下圖
97、10和圖11所示</p><p> 圖10 最鄰近插值法45°逆時(shí)針旋轉(zhuǎn)</p><p> 圖11 雙線性插值法逆時(shí)針45°旋轉(zhuǎn)</p><p> 3.4圖像直方圖統(tǒng)計(jì)和均衡</p><p> 3.4.1 函數(shù)及其參數(shù)的說明</p><p> 要進(jìn)行圖像直方圖統(tǒng)計(jì)可以采用imhist函
98、數(shù),其調(diào)用格式如下:</p><p> h=imhist(X,n)</p><p> 其中,X為輸入圖像,h為其直方圖,n是用于形成直方圖的灰度級(jí)的個(gè)數(shù)。一個(gè)灰度級(jí)可以包含幾個(gè)灰度值,換言之,uint8類型的圖像直方圖的灰度級(jí)可以有256級(jí),也可以只有8級(jí),每個(gè)灰度級(jí)都有32個(gè)灰度值。參數(shù)n可以缺省,在默認(rèn)的情況下,如果X是灰度圖像,則n為256個(gè)灰度級(jí),如果X是二值圖像,則n為2,表
99、示有2個(gè)灰度級(jí)。</p><p> 要進(jìn)行圖像直方圖均衡可以采用histeq函數(shù),其調(diào)用格式如下:</p><p> Z=histeq(X,n)</p><p> 其中,X為輸入灰度圖像矩陣,其數(shù)據(jù)類型為double或uint8類型。n為均衡后直方圖的灰度等級(jí)數(shù),其默認(rèn)值為64。Z為直方圖均衡后的圖像矩陣。</p><p> 3.4.
100、2 源程序及運(yùn)行結(jié)果</p><p><b> 源程序如下:</b></p><p> figure,imhist(x1)</p><p> x4=histeq(x1);</p><p> figure,imhist(x4)</p><p> figure,imshow(x4)</
101、p><p> 運(yùn)行結(jié)果如下圖12、13、14所示</p><p> 圖12 原始圖像直方圖</p><p> 圖13 經(jīng)過直方圖均衡后的圖像</p><p> 圖14 均衡后的直方圖</p><p> 3.5 圖像加入噪聲</p><p> 3.5.1 函數(shù)及其參數(shù)的說明</
102、p><p> 函數(shù)使用imnoise函數(shù)進(jìn)行圖片的噪聲加入,其調(diào)用格式如下:</p><p> J = imnoise(I,type,parameters)</p><p> 期中,type是噪聲的類型,由高斯噪聲,椒鹽噪聲,乘性噪聲。類型名分別是:gaussian、salt & pepper、speckle。</p><p>
103、對圖像加入噪聲可以采用imnoise函數(shù),其調(diào)用格式如下:</p><p> Z=imnoise(X,type,parameters)</p><p> 說明:X為輸入的二維或三維圖像矩陣,其數(shù)據(jù)類型不限。type為字符串指定噪聲的類型(gaussian、salt & pepper、poisson與speckle),parameters為與特定噪聲類型相對應(yīng)的參數(shù)。</p
104、><p> 3.5.2 源程序及運(yùn)行結(jié)果</p><p><b> %加入高斯噪聲</b></p><p> x11=imnoise(x1,'gaussian',0,0.01);</p><p> figure,imshow(x11)</p><p> %加入濃度為0.25的
105、椒鹽噪聲</p><p> x12=imnoise(x1,'salt & pepper',0.25);</p><p> figure,imshow(x12)</p><p><b> %加入泊松噪聲</b></p><p> x13=imnoise(x1,'poisson'
106、;);</p><p> figure,imshow(x13)</p><p> x14=imnoise(x1,'speckle');</p><p> figure,imshow(x14)</p><p> 程序結(jié)果如下圖15 、16、17、18所示:</p><p> 圖15 加入高斯噪
107、聲</p><p> 圖16 加入椒鹽噪聲</p><p><b> 圖17 泊松噪聲</b></p><p> 圖18 加入乘性噪聲</p><p><b> 4感悟體會(huì)小結(jié)</b></p><p> 做這次課設(shè)花了不少時(shí)間,尤其是占用了很多復(fù)習(xí)考試的時(shí)間,
108、因?yàn)榻浑娮痈逭檬俏⒃碗姶挪荚囍虚g的28號(hào)這天。但是還是擠擠時(shí)間把它做好了,當(dāng)然不得不承認(rèn)這里面有很多調(diào)用的函數(shù),編寫的程序我是借鑒了參考書上面的,這一點(diǎn)表示很慚愧。但是不管怎樣,畢竟是做過,且手打了一遍,再運(yùn)行調(diào)試了的,然后把圖片一個(gè)一個(gè)弄好的,也費(fèi)了不少功夫。總的來說吧,這次的課程設(shè)計(jì)做的挺高興的,以前用Matlab軟件時(shí)完全是為了完成任務(wù),去實(shí)驗(yàn)室就是把這次要做的敲進(jìn)電腦,然后按下回車鍵就OK啦。但這次絕對不一樣,這次做的是圖
109、像處理,第一次感到Matlab的強(qiáng)悍。為什么呢?以前你絕對聽說過用美圖秀秀,photoshop,coredraw等專門的圖像處理軟件處理照片啊,可能你還用過它,但我想應(yīng)該不會(huì)有人用Matlab軟件去處理照片。而這一次能耐著性子一步一步做下去,真的很不容易啊。</p><p> 每一次對著題目要求在相應(yīng)參考書上找到相關(guān)函數(shù),自己便迫不及待的想將代碼敲進(jìn)電腦,運(yùn)行,看看我的雪屋是不是會(huì)變成我想象的美景,抑或是變成我
110、想象不到的爛風(fēng)景?隨著代碼的不斷敲入,idol變大,縮小,旋轉(zhuǎn),甚者很刺眼??匆姾敛黄鹧鄣拇a在左右這個(gè)idol,仰頭長嘆,Matlab,原來你不僅數(shù)值計(jì)算牛,圖像處理也不遜色,相信其他同學(xué)的課題你也一樣很犀利,不愧為公認(rèn)的好軟件啊。</p><p> 在這次課程設(shè)計(jì)中,參考了Matlab自帶的《圖像處理用戶指南》,感覺學(xué)習(xí)一個(gè)軟件,最重要的參考資料就是它本身自帶的,只可惜英語不太好,不是很懂,因此,下去后好好
111、加強(qiáng)英語的學(xué)習(xí)。</p><p> 同時(shí),為完成這份Matlab課程設(shè)計(jì),好友小明和鵬哥為我提供了筆記本電腦和網(wǎng)絡(luò),其室友為我提供其他必備的資源,以便我能順利進(jìn)行。因此,在這里,對小明和鵬哥及其605室友表示衷心的感謝。</p><p> 這次的課程設(shè)計(jì)算是為我的基于Matlab的圖像處理做了一次啟蒙教育,深感要學(xué)的知識(shí)還很多,還需多加努力,加油!</p><p&g
112、t;<b> 參考文獻(xiàn)</b></p><p> [1] 高展宏,徐文波.基于MATLAB的數(shù)字圖像處理案例教程.北京:清華大學(xué)出版社,2011</p><p> [2] 賀興華等.MATLAB7.x圖像處理.北京:人民郵電出版社,2006</p><p> [3] 陳杰.MATLAB寶典.北京:電子工業(yè)出版社,2007.</p&
113、gt;<p> [4] 張德豐. MATLAB數(shù)值分析與應(yīng)用. 北京:國防工業(yè)出版社,2009.</p><p> [5] [美]岡薩雷斯.溫茨著.數(shù)字圖像處理.2版.阮秋琦,等譯. 北京:電子工業(yè)出版社,2002.</p><p> [6] 汪曉銀,鄒庭榮.數(shù)學(xué)軟件與數(shù)學(xué)實(shí)驗(yàn).武漢:華中農(nóng)業(yè)大學(xué)教務(wù)處,2007</p><p><b>
114、; 全部源程序代碼:</b></p><p> >> %Matlab 課程設(shè)計(jì)</p><p> % 讀取圖像并顯示圖像和輸出圖像信息</p><p> close all;</p><p> clear all;</p><p> x=imread('xuewu.jpg
115、39;); % x表示彩色圖片</p><p> imshow(x);title('雪屋');</p><p> imfinfo('xuewu.jpg')</p><p><b> %得到灰度圖像</b></p><p> x1=rgb2gray(x
116、); %x1表示灰度圖像</p><p> figure,imshow(x1);title('灰度圖像');</p><p> %基于灰度圖像的亮度和對比度調(diào)節(jié)</p><p> x2=imadd(x1,50); %x2表示經(jīng)亮度調(diào)節(jié)后的圖像</p>
117、<p> figure,imshow(x2);title('增加亮度');</p><p> x3=imadjust(x1,[0.3,0.7],[0,1]); %x3表示經(jīng)對比度調(diào)節(jié)后的圖像</p><p> figure,imshow(x3);title('增加對比度');</p><p> %
118、基于灰度圖像的放大和縮小</p><p><b> %放大2倍</b></p><p> x5=imresize(x1,2); %x5表示經(jīng)最鄰近插法放大后的圖像</p><p> figure,imshow(x5);title('最鄰近插法放大');</p><p
119、> x6=imresize(x1,2,'bilinear'); % x6表示經(jīng)雙線性插值法放大后的圖像</p><p> figure,imshow(x6);title('雙線性插值法放大');</p><p> %縮小到原來的1/5</p><p> x7=imresize(x1,0.2);
120、 %x7表示經(jīng)最鄰近插法縮小后的圖像</p><p> figure,imshow(x7);title('最鄰近插法縮小');</p><p> x8=imresize(x1,0.2,'bilinear'); %x8表示經(jīng)雙線性插值法縮小后的圖像</p><p> figure,im
121、show(x8);title('雙線性插值法縮小');</p><p> %基于灰度圖像的旋轉(zhuǎn)</p><p> %x9表示以最鄰近插值的方式將圖像順時(shí)針旋轉(zhuǎn)45°后的圖像</p><p> x9=imrotate(x1,45); </p><p> figure,imshow(x9);ti
122、tle('最鄰近插值旋轉(zhuǎn)45°');</p><p> % x10表示以雙線性插值的方式將圖像順時(shí)針旋轉(zhuǎn)45°后的圖像</p><p> x10=imrotate(x1,45,'bilinear'); </p><p> figure,imshow(x10);title('雙線性插值旋
123、轉(zhuǎn)45°');</p><p> %基于灰度圖像的直方圖統(tǒng)計(jì)和均衡</p><p> %x4表示經(jīng)過均衡后的圖像</p><p> figure,imhist(x1)</p><p> x4=histeq(x1);</p><p> figure,imhist(x4)</p>
124、<p> figure,imshow(x4);title('均衡后的圖像');</p><p> %基于灰度圖像的各種噪聲加入</p><p> %x11表示加入高斯噪聲后的圖像</p><p> x11=imnoise(x1,'gaussian',0,0.01);</p><p> fig
125、ure,imshow(x11);title('高斯噪聲');</p><p> % x12加入濃度為0.15椒鹽噪聲后的圖像</p><p> x12=imnoise(x1,'salt & pepper',0.15);</p><p> figure,imshow(x12);title('椒鹽噪聲');&
126、lt;/p><p> % x13加入泊松噪聲后的圖像</p><p> x13=imnoise(x1,'poisson');</p><p> figure,imshow(x13);title('泊松噪聲');</p><p> % x14加入乘性噪聲后的圖像</p><p> x
127、14=imnoise(x1,'speckle');</p><p> figure,imshow(x14);title('乘性噪聲'); </p><p> J=imread('91.jpg');</p><p> Imshow(J);</p><p> x1=imresize(J,2)
128、%放大為原來的兩倍</p><p> x2=imresize(J,0.5)%縮小為原來的1/2</p><p> figure,imshow(x1);</p><p> figure,imshow(x2)</p><p> 本科生課程設(shè)計(jì)成績評(píng)定表</p><p> 指導(dǎo)教師簽字:
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- matlab課程設(shè)計(jì)--圖像處理
- matlab課程設(shè)計(jì)圖像處理
- matlab課程設(shè)計(jì)--應(yīng)用圖像處理
- mtalab課程設(shè)計(jì) matlab圖像處理
- matlab課程設(shè)計(jì)--gui圖像處理
- matlab圖像處理課程設(shè)計(jì)報(bào)告
- matlab軟件課程設(shè)計(jì)-- 應(yīng)用圖像處理
- 圖像處理課程設(shè)計(jì)--基于matlab的數(shù)字圖像處理
- 基于matlab的圖像處理的課程設(shè)計(jì)
- 數(shù)字圖像處理-課程設(shè)計(jì)報(bào)告-matlab
- 基于matlab的圖像處理的課程設(shè)計(jì)
- matlab課程設(shè)計(jì)(基于matlab的圖像處理的基本運(yùn)算)
- 數(shù)字圖像處理課程設(shè)計(jì)--基于matlab的數(shù)字圖像處理
- 圖像處理課程設(shè)計(jì)--應(yīng)用matlab語言編制圖像處理軟件
- matlab課程設(shè)計(jì)報(bào)告-數(shù)字圖像處理研究
- 數(shù)字圖像處理課程設(shè)計(jì)--基于matlab的數(shù)字圖像處理
- 數(shù)字信號(hào)處理課程設(shè)計(jì)--基于matlab的數(shù)字圖像處理
- 圖像處理課程設(shè)計(jì)
- 基于matlab的圖像處理的課程設(shè)計(jì)(車牌識(shí)別系統(tǒng))
- 圖像處理課程設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論