計(jì)算機(jī)視覺課程設(shè)計(jì)報(bào)告文獻(xiàn)_第1頁(yè)
計(jì)算機(jī)視覺課程設(shè)計(jì)報(bào)告文獻(xiàn)_第2頁(yè)
計(jì)算機(jī)視覺課程設(shè)計(jì)報(bào)告文獻(xiàn)_第3頁(yè)
已閱讀5頁(yè),還剩10頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、精選計(jì)算機(jī)視覺課程設(shè)計(jì)實(shí)驗(yàn)報(bào)告1題目 : 圖 像 變 形2組員: 曹英 (E03640201) 葉超 (E03640124) 李淑珍 (E03640104)3實(shí)驗(yàn)?zāi)康模赫莆請(qǐng)D像幾何運(yùn)算中變形算法4實(shí)驗(yàn)原理:對(duì)兩幅圖分別進(jìn)行卷繞、插值,每幅圖得到一序列圖片,然后對(duì)這些序列圖片進(jìn)行加權(quán)求和, 得到一序列幀, 再將其顯示出來, 就得到了由一幅圖到另一幅圖的變形。5實(shí)驗(yàn)步驟:對(duì)一幅圖分別選 4 行 4 列的 16個(gè)控制點(diǎn),在每條邊上進(jìn)行五等分,每條邊形成六個(gè)點(diǎn),加上原來的 16個(gè)就是 36個(gè)控制點(diǎn),這樣就把它分成了不規(guī)則的 25 小塊,對(duì)每小塊進(jìn)行卷繞、插值,本實(shí)驗(yàn)我們用的是最近鄰插值,目標(biāo)控制點(diǎn)就是

2、將圖片分成標(biāo)準(zhǔn)并且相同大小的 25 小塊的 36個(gè)點(diǎn)。 這樣會(huì)得到一幅不規(guī)則圖片, 讓它作為新的原圖進(jìn)行如前所述一樣的處理, 控制點(diǎn)都是這樣自動(dòng)產(chǎn)生的:一開始所選每個(gè)控制點(diǎn)到相應(yīng)標(biāo)準(zhǔn)控制點(diǎn)等距離(本實(shí)驗(yàn)我們是分成 9 等分 )產(chǎn)生一序列的36個(gè)控制點(diǎn)。這樣每產(chǎn)生一幅圖都對(duì)它進(jìn)行相類似的處理, 控制點(diǎn)的產(chǎn)生方法就是上面所說的那樣。 得到的一序列圖片越來越接近原圖,最后一幅與原圖一樣。 這樣我們就可以得到這樣的一序列圖片: 原圖, 手工選控制點(diǎn)進(jìn)行處理后得到的不規(guī)則圖,循環(huán)產(chǎn)生控制點(diǎn)得到的越來越接近原圖的 9幅圖 (最后一幅與原圖一樣) 。 為了描述的方便, 這里我把它編號(hào)為 1_1 到 1_11

3、。對(duì)目標(biāo)圖進(jìn)行與原圖一樣的處理。編號(hào)也類似,即 2_1 到 2_11。最后進(jìn)行加權(quán)求和,第一幀是原圖,第二幀是1_10與 2_2加權(quán)求和,其中 1_10的權(quán)值是0.9, 2_2 的權(quán)值是 0.1,第三幀是1_9與 2_3加權(quán)求和,其中 1_9 的權(quán)值是0.8, 2_3的權(quán)值是0.2,,第十幀是1_2與2_10加權(quán)求和,其中1_10 的權(quán)值是0.1, 2_2的權(quán)值是0.9,第十一幀是目標(biāo)圖。這樣就得到了所要的結(jié)果。這里需要說明的是兩幅手工選擇的控制點(diǎn)最好是那些有代表性的特征點(diǎn),這樣的話結(jié)果會(huì)更好。下面的程序的源代碼:clear all; clc;x1=imread(im1.jpg);x2=imr

4、ead(im2.jpg);m,n,p=size(x1);subplot(2,2,1),imshow(x1);subplot(2,2,2),imshow(x2);x1=double(x1);x2=double(x2);newx=;newy=;%在圖片上選36個(gè)點(diǎn)將圖片分成標(biāo)準(zhǔn)并且相同大小的25小塊for k=1:36newx(k)=fix(n/5)*(mod(k-1,6)+1;newy(k)=fix(m/5)*fix(k-1)/6)+1;end%對(duì)原圖進(jìn)行分塊for k=1:36switch kcase1,2,3,4,5,6,7,12,13,18,19,24,25,30,31,32,33,34,

5、35,36 %邊界上的點(diǎn)還是標(biāo)準(zhǔn)的等分點(diǎn)oldx1(k)=newx(k);oldy1(k)=newy(k);otherwise%在圖片中選擇4行4歹!J的16個(gè)控制點(diǎn)oldx1(k),oldy1(k)=ginput(1);hold on;subplot(2,2,1),plot(oldx1(k),oldy1(k),o);endend%對(duì)目標(biāo)圖進(jìn)行分塊,方法同上for k=1:36switch kcase 1,2,3,4,5,6,7,12,13,18,19,24,25,30,31,32,33,34,35,36oldxx1(k)=newx(k);oldyy1(k)=newy(k);otherwise

6、oldxx1(k),oldyy1(k)=ginput(1);hold on;subplot(2,2,2),plot(oldxx1(k),oldyy1(k),*);end end精選for rgb=1:3%對(duì)第一張進(jìn)行卷繞,插值fo門=1:29newspic=;if mod(i,6)=0for j=1:4%每個(gè)小塊分別處理if j=1newspic=1 newx(i) newy(i) newx(i)*newy(i);elseif j=2newspic=newspic;1 newx(i+1) newy(i) newx(i+1)*newy(i);elseif j=3newspic=newspic;1

7、 newx(i) newy(i+6) newx(i)*newy(i+6);elseif j=4newspic=newspic;1 newx(i+1) newy(i+7) newx(i+1)*newy(i+7);endendoldx1_1=oldx1(i);oldx1(i+1);oldx1(i+6);oldx1(i+7);% 卷繞oldy1_1=oldy1(i);oldy1(i+1);oldy1(i+6);oldy1(i+7);cofx=inv(newspic)*oldx1_1;cofy=inv(newspic)*oldy1_1;for k=newy(i):newy(i+6)%進(jìn)行最近鄰插值fo

8、r l=newx(i):newx(i+1)精選testx=1,l,k,k*l*cofx;testy=1,l,k,k*l*cofy;if round(testx)1 | round(testy)n | round(testy)mpic1(k,l,rgb)=0;elsepic1(k,l,rgb)=x1(round(testy),round(testx),rgb);endendendendendend%后面的連續(xù)楨(9幀)for Q=1:9for k=1:36switch kcase 1,2,3,4,5,6,7,12,13,18,19,24,25,30,31,32,33,34,35,36oldx2(

9、k)=newx(k);oldy2(k)=newy(k);otherwise%用循環(huán)控制產(chǎn)生新的控制點(diǎn)oldx2(k)=(newx(k)-oldx1(k)*Q/9+oldx1(k);oldy2(k)=(newy(k)-oldy1(k)*Q/9+oldy1(k);endendfo門=1:29%下面是卷繞,插值,方法同上newspic=;if mod(i,6)=0for j=1:4if j=1newspic=1 newx(i) newy(i) newx(i)*newy(i);elseif j=2newspic=newspic;1 newx(i+1) newy(i) newx(i+1)*newy(i)

10、;elseif j=3newspic=newspic;1 newx(i) newy(i+6) newx(i)*newy(i+6);elseif j=4newspic=newspic;1 newx(i+1) newy(i+7) newx(i+1)*newy(i+7);endendoldx2_1=oldx2(i);oldx2(i+1);oldx2(i+6);oldx2(i+7);oldy2_1=oldy2(i);oldy2(i+1);oldy2(i+6);oldy2(i+7);cofx=inv(newspic)*oldx2_1;cofy=inv(newspic)*oldy2_1;for k=new

11、y(i):newy(i+6)for l=newx(i):newx(i+1)for rgb=1:3testx=1,l,k,k*l*cofx;testy=1,l,k,k*l*cofy;if round(testx)1 | round(testy)n | round(testy)mpic2(k,l,rgb,Q)=0;elsepic2(k,l,rgb,Q)=x1(round(testy),round(testx),rgb);endendendendendendend%對(duì)第二張進(jìn)行卷繞,插值,方法同上fo門=1:29newspic=;if mod(i,6)=0for j=1:4if j=1newspic

12、=1 newx(i) newy(i) newx(i)*newy(i);elseif j=2newspic=newspic;1 newx(i+1) newy(i) newx(i+1)*newy(i);elseif j=3newspic=newspic;1 newx(i) newy(i+6) newx(i)*newy(i+6);elseif j=4newspic=newspic;1 newx(i+1) newy(i+7) newx(i+1)*newy(i+7);endendoldxx1_1=oldxx1(i);oldxx1(i+1);oldxx1(i+6);oldxx1(i+7);oldyy1_1

13、=oldyy1(i);oldyy1(i+1);oldyy1(i+6);oldyy1(i+7);cofx=inv(newspic)*oldxx1_1;cofy=inv(newspic)*oldyy1_1;for k=newy(i):newy(i+6)for l=newx(i):newx(i+1)for rgb=1:3testx=1,l,k,k*l*cofx;testy=1,l,k,k*l*cofy;if round(testx)1 | round(testy)n |round(testy)mpic3(k,l,rgb,Q)=0;elsepic3(k,l,rgb)=x2(round(testy),r

14、ound(testx),rgb);endendendendendend%后面的連續(xù)楨for Q=1:9for k=1:36switch kcase 1,2,3,4,5,6,7,12,13,18,19,24,25,30,31,32,33,34,35,36oldxx2(k)=newx(k);oldyy2(k)=newy(k);otherwiseoldxx2(k)=(newx(k)-oldx1(k)*Q/9+oldxx1(k);oldyy2(k)=(newy(k)-oldy1(k)*Q/9+oldyy1(k);endendfor i=1:29newspic=;if mod(i,6)=0for j=1

15、:4if j=1newspic=1 newx(i) newy(i) newx(i)*newy(i);elseif j=2newspic=newspic;1 newx(i+1) newy(i) newx(i+1)*newy(i);elseif j=3newspic=newspic;1 newx(i) newy(i+6) newx(i)*newy(i+6);elseif j=4newspic=newspic;1 newx(i+1) newy(i+7) newx(i+1)*newy(i+7); endendoldxx2_1=oldxx2(i);oldxx2(i+1);oldxx2(i+6);oldx

16、x2(i+7);oldyy2_1=oldyy2(i);oldyy2(i+1);oldyy2(i+6);oldyy2(i+7);cofx=inv(newspic)*oldxx2_1;cofy=inv(newspic)*oldyy2_1;for k=newy(i):newy(i+6)for l=newx(i):newx(i+1)for rgb=1:3testx=1,l,k,k*l*cofx;testy=1,l,k,k*l*cofy;if round(testx)1 | round(testy)n | round(testy)mpic4(k,l,rgb,Q)=0;elsepic4(k,l,rgb,Q

17、)=x2(round(testy),round(testx),rgb);endendendendendendends1=size(pic1);s2=size(pic3);s(1)=min(s1(1),s2(1);s(2)=min(s1(2),s2(2);s(3)=min(s1(3),s2(3);%對(duì)兩幅圖片產(chǎn)生的序列圖進(jìn)行加權(quán)求和,將結(jié)果放在一個(gè)4維數(shù)組中,產(chǎn)生11幀圖像picture(1:m,1:n,1:p,1)=x1;s(3);picture(1:s(1),1:s(2),1:s(3),2)=0.9*pic2(1:s(1),1:s(2),1:s(3),8)+0.1*pic3(1:s(1),1

18、:s(2),1for i=3:9picture(1:s(1),1:s(2),1:s(3),i)=(1.1-0.1*i)*pic2(:,:,:,10-i)+(i-1)*0.1*pic4(:,:,:,i-2);end picture(1:s(1),1:s(2),1:s(3),10)=0.1*pic1(1:s(1),1:s(2),1:s(3)+0.9*pic4(:,:,:,8);picture(1:m,1:n,1:p,11)=x2;picture=uint8(picture);fo門=1:11subplot(2,2,3),imshow(picture(:,:,:,i);pause(0.5);endmov=avifile(movie1.avi);mov.fps

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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)論