MATLAB在數(shù)值分析中的應(yīng)用_第1頁(yè)
MATLAB在數(shù)值分析中的應(yīng)用_第2頁(yè)
MATLAB在數(shù)值分析中的應(yīng)用_第3頁(yè)
MATLAB在數(shù)值分析中的應(yīng)用_第4頁(yè)
MATLAB在數(shù)值分析中的應(yīng)用_第5頁(yè)
已閱讀5頁(yè),還剩15頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、1牛頓插值代碼%1-1 homework of someone (ID)%創(chuàng)建插值原始數(shù)據(jù)x,yx=-1:0.2:1;y=1./(1+9.*x.2);%讀取插值維數(shù)n = length(x);%定義需要的變量c(1:n) = 0.0;syms t;f = y(1);y1 = 0;l = 1;%循環(huán)生成插值多項(xiàng)式for(i=1:n-1) for(j=i+1:n) y1(j) = (y(j)-y(i)/(x(j)-x(i); end c(i) = y1(i+1); l = l*(t-x(i); f = f + c(i)*l; simplify(f); y = y1; %化簡(jiǎn) f = collect

2、(f); f = vpa(f, 6);end%輸出ff%畫(huà)圖sym p;q=1/(1+9*p2);ezplot(q,-1,1)%標(biāo)題hold onezplot(f,-1,1)title('牛頓插值 someone (ID)') 牛頓插值運(yùn)行截圖:三次樣條插值代碼%1-1 homework of someone (ID)%創(chuàng)建插值原始數(shù)據(jù)x0,y0x0=-1:0.2:1;y0=1./(1+9.*x0.2);yy=spline(x0,y0);%讀取插值維數(shù)n=length(x0);%創(chuàng)建符號(hào)變量xsyms xfor i=1:n-1 y=yy.coefs(i,1)*(x-x0(i)3

3、+yy.coefs(i,2)*(x-x0(i)2+yy.coefs(i,3)*(x-x0(i)1+yy.coefs(i,4);%因三次樣條插值與原圖過(guò)于相似,為避免重合,分列在兩張圖里面 subplot(2,1,1) ezplot(y,x0(i),x0(i+1) title('someone (ID) 三次樣條') hold on axis(-1 1 0 1)endy=1/(1+9*x2);subplot(2,1,2)ezplot(y,-1,1);title('someone (ID) 三次樣條')三次樣條插值截圖因三次樣條插值與原圖過(guò)于相似,為避免重合,分列在

4、兩張圖里面2二次勒讓德逼近代碼%2 homework of someone (ID)%定義逼近原始函數(shù)%創(chuàng)建符號(hào)變量xsyms x;%定義目標(biāo)函數(shù),并作等值變換使得自變量的區(qū)間為-1,1azf=sin(0.5*pi+0.5*pi*x);%定義逼近次數(shù)n=2;%定義Legender多項(xiàng)式f1=1 x 1.5*x2-0.5;%通過(guò)循環(huán)依次計(jì)算系數(shù)for i=1:n+1 g(i)=f1(i)*f; temp(i)=int(g(i),-1,1); a(i)=(2*i-1)*temp(i)/2;end%累加得出插值多項(xiàng)式pf=0;for i=1:n+1 pf=pf+a(i)*f1(i);end%化簡(jiǎn),取

5、六位有效數(shù)字pf=simplify(pf);pf=vpa(pf,6);ezplot(pf,0,1)hold onezplot(f,0,1)title('someone (ID) 逼近')二次勒讓德逼近截圖3-1牛頓插值代碼:%3-1 homework of someone (ID)%創(chuàng)建插值原始數(shù)據(jù)x,yx=-5:5;y=1./(1+x.2);%讀取插值維數(shù)n = length(x);%定義需要的變量c(1:n) = 0.0;syms t;f = y(1);y1 = 0;l = 1;%循環(huán)生成插值多項(xiàng)式for(i=1:n-1) for(j=i+1:n) y1(j) = (y(j

6、)-y(i)/(x(j)-x(i); end c(i) = y1(i+1); l = l*(t-x(i); f = f + c(i)*l; simplify(f); y = y1; %化簡(jiǎn) f = collect(f); f = vpa(f, 6);end%畫(huà)圖syms p;q=1/(1+p2);ezplot(q,-5,5)%標(biāo)題hold onezplot(f,-5,5)title('牛頓插值 someone (ID)')牛頓插值截屏:3-2拉格朗日插值代碼:%3-2 homework of someone (ID)%創(chuàng)建插值原始數(shù)據(jù)p=0:20;x=5*cos(2*p+1)*

7、pi/42);y=1./(x.2+1);%創(chuàng)建符號(hào)變量syms t;n = length(x);f = 0.0;%循環(huán)生成基函數(shù),分兩段以繞過(guò)xi=xjfor(i = 1:n) l = y(i); for(j = 1:i-1) l = l*(t-x(j)/(x(i)-x(j); end; for(j = i+1:n) l = l*(t-x(j)/(x(i)-x(j); end; f = f + l;%化簡(jiǎn) simplify(f);end; %將插值多項(xiàng)式展開(kāi)f = collect(f); %將插值多項(xiàng)式的系數(shù)化成6位精度的小數(shù)f = vpa(f,6); %輸出ff%畫(huà)圖 ezplot(f,-5

8、,5);%標(biāo)題title('拉格朗日 someone (ID)')hold onsyms s;q=1/(s2+1);ezplot(q,-5,5)拉格朗日插值截圖3-3分段線性插值代碼:%3-3 homework of someone (ID)%創(chuàng)建插值原始數(shù)據(jù)x0,y0x0=-5:5;y0=1./(1+x0.2);%讀取插值維數(shù)n = length(x0);%生成符號(hào)變量xsyms x;%循環(huán)生成每段直線for i=1:n-1;%斜率 k=(y0(i)-y0(i+1)/(x0(i)-x0(i+1);%生成插值函數(shù) y=k*(x-x0(i)+y0(i);%畫(huà)圖 ezplot(y,

9、x0(i),x0(i+1);%設(shè)置坐標(biāo)軸 axis(-5 5 0 2); hold onend%畫(huà)原圖syms p;p=1/(1+x2);ezplot(p,-5 5);title('someone 分段線性 (ID)');分段線性插值截圖3-5三次保形(埃爾米特)插值代碼:%3-4 homework of someone (ID)%創(chuàng)建插值原始數(shù)據(jù)x0,y0x0=-5:5;y0=1./(1+x0.2);yy=pchip(x0,y0);%讀取插值維數(shù)n=length(x0);%創(chuàng)建符號(hào)變量xsyms xfor i=1:n-1 y=yy.coefs(i,1)*(x-x0(i)3+y

10、y.coefs(i,2)*(x-x0(i)2+yy.coefs(i,3)*(x-x0(i)1+yy.coefs(i,4);%因三保形條插值與原圖過(guò)于相似,為避免重合,分列在兩張圖里面 subplot(2,1,1) ezplot(y,x0(i),x0(i+1) title('someone (ID) 三次保形') hold on axis(-5 5 0 1)endy=1/(1+x2);subplot(2,1,2)ezplot(y); axis(-5 5 0 1)title('someone (ID) 三次保形')三次保形(埃爾米特)插值截屏:3-5三次樣條插值代碼

11、:%3-5 homework of someone (ID)%創(chuàng)建插值原始數(shù)據(jù)x0,y0x0=-5:5;y0=1./(1+x0.2);yy=spline(x0,y0);%讀取插值維數(shù)n=length(x0);%創(chuàng)建符號(hào)變量xsyms xfor i=1:n-1 y=yy.coefs(i,1)*(x-x0(i)3+yy.coefs(i,2)*(x-x0(i)2+yy.coefs(i,3)*(x-x0(i)1+yy.coefs(i,4);%因三次樣條插值與原圖過(guò)于相似,為避免重合,分列在兩張圖里面 subplot(2,1,1) ezplot(y,x0(i),x0(i+1) title('so

12、meone (ID) 三次樣條') hold on axis(-5 5 0 1)endy=1/(1+x2);subplot(2,1,2)ezplot(y); axis(-5 5 0 1)title('someone (ID) 三次樣條')三次樣條插值截屏:因三次樣條插值與原圖過(guò)于相似,為避免重合,分列在兩張圖里面4圖像放大原理思路在進(jìn)行圖像放大處理時(shí),需要把原有的像素點(diǎn)拆開(kāi),在原有的像素點(diǎn)之間插入新的像素點(diǎn),并計(jì)算新的像素點(diǎn)的顏色,為保證圖片比例協(xié)調(diào),一般對(duì)其縱橫兩向同時(shí)放大,此時(shí)如果在圖片中取出一個(gè)3*3像素大小的矩陣,則其四角的元素為已知的。其余元素均為未知。(如圖

13、所示)如何計(jì)算出上述圖示的未知量是圖像放大算法成功的關(guān)鍵,可以采用雙線性插值的方法進(jìn)行計(jì)算,也即在行方向和列方向分別進(jìn)行一次線性插值,具體的流程為:步已知像素點(diǎn)可求像素點(diǎn)11,1,1,31,213,1,3,33,221,1,3,12,121,2,3,22,221,1,3,22,3圖像放大代碼%4 homework of someone (ID)%讀取圖片“4像素.jpg”到矩陣AA=imread('C:UsersEdimionDesktop學(xué)習(xí)文檔4像素4像素.jpg');%讀取圖片的大小a,b,c=size(A);%創(chuàng)建放大后尺寸在矩陣 B=zeros(2*a-1,2*b-1

14、,c);%通過(guò)循環(huán)語(yǔ)句把原來(lái)圖片中的像素點(diǎn)間隔布置到放大后的矩陣中去for i=1:c; for j=1:a; for k=1:b; B(2*j-1,2*k-1,i)=A(j,k,i); end endend%首先對(duì)行進(jìn)行線性插值for i=1:c; for j=1:2*a-1; for k=1:b-1; B(j,2*k,i)=0.5*B(j,2*k+1,i)+0.5*B(j,2*k-1,i); end endend%然后在列方向插值for i=1:c; for k=1:2*b-1; for j=1:a-1; B(2*j,k,i)=0.5*B(2*j-1,k,i)+0.5*B(2*j+1,k,

15、i); end endendimwrite(B,'C:UsersEdimionDesktop學(xué)習(xí)文檔4像素4像素-big.jpg')imshow('C:UsersEdimionDesktop學(xué)習(xí)文檔4像素4像素-big.jpg')%為保證運(yùn)算速度,使用了較小的圖片(4*4像素,放大為7*7像素),原理和效果已經(jīng)很明確。截圖過(guò)小請(qǐng)老師見(jiàn)諒運(yùn)行結(jié)果說(shuō)明原圖像的矩陣:val(:,:,1) = 0 0 255 255 0 0 255 255 255 255 0 0 255 255 0 0val(:,:,2) = 0 0 255 255 0 0 255 255 255 2

16、55 0 0 255 255 0 0val(:,:,3) = 0 0 255 255 0 0 255 255 255 255 0 0 255 255 0 0放大后圖像的矩陣:val(:,:,1) = 0 8 0 255 255 254 255 16 6 0 255 236 251 246 0 0 9 255 255 255 250 255 255 255 246 255 226 248 255 245 255 255 0 13 18 250 255 255 246 0 0 0 255 254 241 252 12 10 0val(:,:,2) = 0 8 0 255 255 254 255 16 6 0 255 236 251 246 0 0 9 255 255 255 250 255 255 255 246 255 226 24

溫馨提示

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

評(píng)論

0/150

提交評(píng)論