圖像處理作業(yè)(燕大)(共20頁)_第1頁
圖像處理作業(yè)(燕大)(共20頁)_第2頁
圖像處理作業(yè)(燕大)(共20頁)_第3頁
圖像處理作業(yè)(燕大)(共20頁)_第4頁
圖像處理作業(yè)(燕大)(共20頁)_第5頁
已閱讀5頁,還剩19頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、PAGE PAGE 24雪花(xuhu)啤酒廠準(zhǔn)備上一套視覺檢測系統(tǒng)以控制產(chǎn)品的質(zhì)量。要求分辨率最小是2*2mm像素(xin s),選擇CCD分辨率,確定鏡頭的焦距并確定物距(8分)。2.把燕大的校標(biāo)(128*128)進(jìn)行(jnxng)3*3放大處理,分別敘述用雙線性插值和最近領(lǐng)域插值兩種方法的算法步驟(10分)。3.用圖像處理的方法確定下列啤酒瓶的缺口和破口(12分)。4.旋轉(zhuǎn)設(shè)備潤滑油中鐵屑的大小和多少反映了其磨損狀況,下圖是某潤滑油的鐵譜照片,請用圖像處理的方法識別其潤滑狀況(10分)。5. 請用圖像處理的方法(fngf)自動(dòng)確定下列靶面射擊(shj)的環(huán)數(shù)(其中白點(diǎn)為射擊孔,20分)。

2、6. 設(shè)計(jì)一個(gè)圖像處理的算法分別對下圖的紅細(xì)胞和白細(xì)胞計(jì)數(shù)(j sh)(假設(shè)淺色點(diǎn)為紅細(xì)胞,深色點(diǎn)為白細(xì)胞,20分)。7. 對附件中的三幅眼底圖像,分別設(shè)計(jì)邊緣增強(qiáng)的算法(即在結(jié)果圖像的顯示中,邊緣特征突出了,不是邊緣提取,20分)。1解:取圖像(t xin)元尺寸(ch cun)為,則雜質(zhì)(zzh)所成的像的尺寸最少為,設(shè)物距為1米,對5mm5mm的雜質(zhì)成像,可知此鏡頭的焦距為 對于相機(jī)分辨率,則要根據(jù)成像視野對應(yīng)的實(shí)際范圍而定。例如若視野范圍為,則相機(jī)分辨率應(yīng)不小于 像素2 解:(1)讀入原圖像,得到圖像的高度和寬度;(2)根據(jù)放大倍數(shù)得到新圖像的高度和寬度,并創(chuàng)建空白新圖像;(3)得到像

3、素點(diǎn)(x ,y)的值并寫回新圖像;最鄰近插值法:將原始像素簡單復(fù)制到其鄰域內(nèi),進(jìn)行圖像放大。 雙線性插值法:利用需要處理的原圖像像素點(diǎn)周圍的個(gè)鄰點(diǎn)的像素值在,兩個(gè)方向上作線性內(nèi)插,即待插點(diǎn)處的數(shù)值用離待插點(diǎn)最近的四個(gè)點(diǎn)的值加權(quán)求得。對于一個(gè)目的像素,設(shè)置坐標(biāo)通過向后映射法得到浮點(diǎn)坐標(biāo)。其中,是非負(fù)整數(shù),,是取值區(qū)間的浮點(diǎn)數(shù),隨放大后像素行列坐標(biāo)的不同而改變,則這個(gè)像素的值可由原圖像中坐標(biāo)為, ,所對應(yīng)的周圍四個(gè)像素的值決定,公式為:其中,表示源圖像處的像素值。得到放大圖像。采用matlab7.1進(jìn)行圖像處理,將原圖像保存目錄為為E:picture.jpg。(1)雙線性插值:A=imread(E

4、:picture.jpg);B=imresize(A,128*3 128*3,bilinear); %采用雙線性插值將原始圖像放大三倍imshow(B); 運(yùn)行(ynxng)結(jié)果:(2)最近(zujn)領(lǐng)域插值:A=imread(E:picture.jpg);B=imresize(A,128*3 128*3,nearest); %采用最近領(lǐng)域(ln y)插值將原始圖像放大三倍imshow(B);運(yùn)行(ynxng)結(jié)果:3解:首先對圖像進(jìn)行分析。只要(zhyo)圖像中的圓形是不間斷的完整的,就說明是合格的,如果圓形有間斷,則說明是不合格的。(1)對圖像進(jìn)行(jnxng)濾波。(2)對圖像進(jìn)行閾值

5、分割,進(jìn)行二值化處理。(3)對圖像所有點(diǎn)做出一個(gè)索引表,將表內(nèi)數(shù)據(jù)全部賦值為1。(4)取圖像左上角一點(diǎn),然后對該點(diǎn)四周的點(diǎn)進(jìn)行判斷,是否為黑色點(diǎn),如有,則記錄下該點(diǎn)位置,并在索引表中將該點(diǎn)的索引值改為0。(5)分析與上一點(diǎn)相鄰近的為黑色的點(diǎn)的四周,用相同方法處理。(6)當(dāng)所有點(diǎn)處理完畢之后,分析索引表中為1的點(diǎn)的數(shù)量,如果大于某個(gè)比例,則說明該圓形封閉良好,說明圓形沒有間斷,所以是合格的。4解:(1)對圖像進(jìn)行濾波。(2)對圖像進(jìn)行閾值分割,進(jìn)行二值化處理。(3)對圖像所有點(diǎn)做出一個(gè)索引表,將表內(nèi)數(shù)據(jù)全部賦值為1。(4)取圖像左上角一點(diǎn),然后對該點(diǎn)四周的點(diǎn)進(jìn)行判斷,是否為黑色點(diǎn),如有,則記錄下

6、該點(diǎn)位置,并在索引表中將該點(diǎn)的索引值改為0。(5)分析與上一點(diǎn)相鄰近的為黑色的點(diǎn)的四周,用相同方法處理。(6)當(dāng)所有點(diǎn)處理完畢之后,分析索引表中為1的點(diǎn)的數(shù)量,根據(jù)1的點(diǎn)的數(shù)量與0的點(diǎn)的數(shù)量,計(jì)算其磨損度。原始(yunsh)圖像picture4.jpg采用(ciyng)matlab7.1進(jìn)行圖像處理,將原圖像保存目錄為為E:picture4.jpg。采用閾值100,然后(rnhu)統(tǒng)計(jì)白色小塊占整個(gè)圖像百分比(假設(shè)不大于0.1潤滑效果好)程序如下:A=imread(E:picture4.jpg);B=im2bw(A,100/255); %閾值100分割figure, subplot(1,2,1

7、); imhist(B); title(二值圖像直方圖 );subplot(1,2,2); imshow(B); title(閾值100分割圖 ); %圖像顯示C=numel(B); %查找圖像像素個(gè)數(shù)D=find(B=0); %查找圖像中為1的像素個(gè)數(shù)E=numel(D);if(E/C=0.1) %判斷元素為1所占整個(gè)像素比值并進(jìn)行顯示 fprintf(潤滑效果OKn);else fprintf(潤滑效果NGn);end;運(yùn)行結(jié)果:潤滑效果NG5解:(1)首先對圖像進(jìn)行濾波操作。(2)首先取射擊前情況圖像一張。(3)取射擊后情況圖像一張。(4)將兩張圖像進(jìn)行比較,取出發(fā)生變化的點(diǎn),既是當(dāng)前射

8、擊中擊中的點(diǎn)。(5)根據(jù)閾值(y zh)分析法,及濾波操作,得出靶上的中心圓位置。(6)根據(jù)直徑最長原理,兩直徑相交點(diǎn)為圓心的原理,計(jì)算(j sun)出圓心位置。(7)現(xiàn)在設(shè)圓心點(diǎn)為O,擊中點(diǎn)為P,按照射線OP方向,計(jì)算出O點(diǎn)距離(jl)中心圓環(huán)外圍的距離L1。(8)計(jì)算出OP兩點(diǎn)的距離L2。(9)當(dāng)前的靶數(shù)即為:10-L2/L1假設(shè)環(huán)與靶心距離方程已知,F(xiàn)=10+(i-1)*30,環(huán)數(shù)為i,間距30。只需確定靶心與彈孔坐標(biāo),然后確定環(huán)數(shù)。采用matlab進(jìn)行圖像處理,將原圖像保存目錄為E:1.jpg。程序如下:A=imread(E:picture51.jpg);B=im2bw(A,240/2

9、55); %閾值240分割L,n=bwlabel(B); %查找彈孔連通域r,c=find(L=1);x1=mean(r); %求平均值y1=mean(c);B1=im2bw(A,35/255); %閾值35二值分割D=medfilt2(B1, 41,41); %B1圖像進(jìn)行4141模板中值濾波figure,subplot(1,2,1); imshow(B); title(彈孔閾值240分割圖);subplot(1,2,2); imshow(D); title(靶心閾值35濾波4141模板);L1,n1=bwlabel(D); %查找靶心連通域r1,c1=find(L1=1);x0=mean(

10、r1); %求平均值y0=mean(c1);figure,imshow(A);hold on;plot(y1,x1,Marker,+,MarkerEdgeColor,b); %彈孔用藍(lán)色+表示plot(y0,x0,Marker,+,MarkerEdgeColor,r); %靶心用紅色+表示title(靶心與彈孔中心點(diǎn)坐標(biāo)示意圖);figure,hold on;plot(y1,x1,Marker,+,MarkerEdgeColor,b); plot(y0,x0,Marker,+,MarkerEdgeColor,r); title(靶心與彈孔中心點(diǎn)坐標(biāo)圖);E=sqrt(x0-x1)2+(y0-y

11、1)2); %靶心與彈孔之間距離flag=0;for i=1:10 %計(jì)算環(huán)數(shù) F=10+(i-1)*30;if(flag=0) if(E=F) fprintf(%d環(huán)n, 11-i); %顯示結(jié)果 flag=1; break; end;else end;end;運(yùn)行(ynxng)結(jié)果:6環(huán)(2) 假設(shè)環(huán)與靶心(b xn)距離方程已知,F(xiàn)=60+(i-1)*40,環(huán)數(shù)為i,間距(jin j)40。只需確定靶心與彈孔坐標(biāo)(zubio),然后確定環(huán)數(shù)。采用matlab7.1進(jìn)行圖像處理,將原圖像保存目錄為為E: 2.jpg。程序如下:A=imread(E:picture52.jpg);B=im2b

12、w(A,240/255); %閾值240分割L,n=bwlabel(B); %查找彈孔連通域r,c=find(L=1);x1=mean(r); %求平均值y1=mean(c);figure,B1=im2bw(A,100/255); %閾值100分割D=medfilt2(B1, 45,45); %B1圖像進(jìn)行4545模板中值濾波L1,n1=bwlabel(D); %查找靶心連通域r1,c1=find(L1=2); %由圖像聯(lián)通域分析確定靶心連通域?yàn)?x0=mean(r1); %求平均值y0=mean(c1);figure,imshow(A);hold on;plot(y1,x1,Marker,+

13、,MarkerEdgeColor,b); %彈孔用藍(lán)色+表示plot(y0,x0,Marker,+,MarkerEdgeColor,r); %靶心用紅色+表示title(靶心與彈孔中心點(diǎn)坐標(biāo)示意圖);figure,hold on;plot(y1,x1,Marker,+,MarkerEdgeColor,b); plot(y0,x0,Marker,+,MarkerEdgeColor,r);title(靶心(b xn)與彈孔中心點(diǎn)坐標(biāo)圖);E=sqrt(x0-x1)2+(y0-y1)2); %靶心(b xn)與彈孔之間距離flag=0;for i=1:10%計(jì)算(j sun)環(huán)數(shù) F=60+(i-1

14、)*40;if(flag=0) if(E=F) fprintf(%d環(huán)n,11-i); %顯示結(jié)果 flag=1; break; end;else end;end;運(yùn)行結(jié)果:8環(huán)6 解: K均值聚類、分水嶺算法計(jì)算(j sun)圖片中紅白細(xì)胞個(gè)數(shù)K均值(jn zh)聚類 1、任取0,255中K個(gè)值作為(zuwi)第一次分類中心 2、把圖像(gray)中的每一個(gè)點(diǎn)與K個(gè)中心值進(jìn)行比較,按差值分成K組,求出新的K個(gè)中心點(diǎn) 3、重復(fù)上一步驟直到前后兩次算出的中心點(diǎn)值相同 4、按最后得到的中心點(diǎn)把圖像依據(jù)點(diǎn)到中心點(diǎn)的距離分成K類。 程序 function cen,copy=Kmeans(I,k) %

15、K均值聚類函數(shù) mm=max(max(I); % mm為I的最大灰度值 copy=I; cen=(1:k)*mm/k; % 求出首次中心值 cen1=zeros(1,k); d=ones(1,k)./255; m,n=size(I); J=zeros(m,n); while(1) for i=1:m for j=1:n c=abs(I(i,j)-cen); % c為I中元素與各中心點(diǎn)的差值數(shù)組 cc=find(min(c)=c); % cc為距中心值最近的元素下標(biāo) J(i,j)=cc; end end % 求新的中心點(diǎn) for r=1:k h=0; J1,J2=find(J=r); p=len

16、gth(J1); for s=1:p h=h+I(J1(s),J2(s); copy(J1(s),J2(s)=cen(r); % 按中心值把原圖像灰度分為K類 end cen1(r)=h/p; end if (abs(cen1-cen)=d) break; else cen=cen1; end end I=imread(blood.jpg); % 讀入處理圖像 R=I(:,:,1); % 分離R分量 G=I(:,:,2); B=I(:,:,3); clc; % 清屏 close all; % 關(guān)閉圖像(t xin)窗口 figure, % 開辟圖像(t xin)顯示窗口 subplot(2,3

17、,1),imshow(R),title(R分量(fn ling); subplot(2,3,2),imshow(G),title(G分量); subplot(2,3,3),imshow(B),title(B分量); K=rgb2hsv(I); % RGB圖像轉(zhuǎn)換成HSV圖像 H=K(:,:,1); S=K(:,:,2); V=K(:,:,3); subplot(2,3,4),imshow(H),title(H分量); subplot(2,3,5),imshow(S),title(S分量); subplot(2,3,6),imshow(V),title(V分量); 白細(xì)胞計(jì)數(shù) % 分割出只有白細(xì)

18、胞的二值圖像 cenwhite,copywhite=Kmeans(H,3); % K均值聚類函數(shù)調(diào)用 cenwhite; % 查看聚類后的中心值 figure, subplot(1,3,1),imshow(copywhite, ),title(H分量K均值聚類結(jié)果); A=copywhite; m,n=size(A); % 把聚類后圖像二值化 for i=1:m for j=1:n if A(i,j)=cenwhite(2) A(i,j)=1; else A(i,j)=0; end end end subplot(1,3,2),imshow(A, ),title(白細(xì)胞二值化結(jié)果); C1=i

19、mdilate(A,ones(5); % 對二值化圖像腐蝕膨脹處理達(dá)到去噪效果 C2=imerode(C1,ones(11); C=imdilate(C2,ones(6); subplot(1,3,3),imshow(C, ),title(白細(xì)胞去噪結(jié)果); E=bwdist(C); E=-E; E(C)=-Inf; L0=watershed(E); rgb=label2rgb(L0,jet); subplot(1,2,2),imshow(rgb, ),title(法二白細(xì)胞分水嶺結(jié)果); NumWhite=max(max(L0)-1; NumWhite; % NumWhite為分水嶺算法計(jì)數(shù)

20、結(jié)果顯示結(jié)果 紅細(xì)胞計(jì)數(shù)(j sh) % 分割出只有(zhyu)紅細(xì)胞的二值圖像并對其做必需(bx)處理 I1(:,:,1)=double(I(:,:,1).*C; % 把二值圖像還原為彩色圖像 I1(:,:,2)=double(I(:,:,2).*C; I1(:,:,3)=double(I(:,:,3).*C; figure,subplot(1,2,1),imshow(uint8(I1),title(白細(xì)胞); J=double(I)-double(I1); % 原圖減去白細(xì)胞圖得紅細(xì)胞彩圖 subplot(1,2,2),imshow(uint8(J),title(紅細(xì)胞); J=rgb2h

21、sv(J); % 紅細(xì)胞圖轉(zhuǎn)換成HSV圖 HH=J(:,:,1); SS=J(:,:,2); % 提取S分量 VV=J(:,:,3); subplot(1,3,1),imshow(HH),title(紅細(xì)胞圖H分量); subplot(1,3,2),imshow(SS),title(紅細(xì)胞圖S分量); subplot(1,3,3),imshow(VV),title(紅細(xì)胞圖V分量); cenred,copyred=Kmeans(SS,2); % 對S分量圖均值聚類 cenred; % 查看聚類后的中心值 figure,subplot(2,2,1),imshow(copyred, ),title

22、(S分量K均值聚類結(jié)果); H=copyred; m,n=size(H); % 把聚類后圖像二值化 for i=1:m for j=1:n if H(i,j)=cenred(2) H(i,j)=1; else H(i,j)=0; end end end subplot(2,2,2),imshow(H, ),title(紅細(xì)胞二值化結(jié)果); G=imfill(H,holes); % 紅細(xì)胞圖填充孔洞 subplot(2,2,3),imshow(G, ),title(紅細(xì)胞填洞結(jié)果); C1=imerode(G,ones(9); % 開運(yùn)算去除噪聲 G=imdilate(C1,ones(9); s

23、ubplot(2,2,4),imshow(G, ),title(紅細(xì)胞去噪結(jié)果); D=bwdist(G); D=-D; D(G)=-Inf; L=watershed(D); rgb=label2rgb(L,jet); subplot(1,2,2),imshow(rgb, ),title(紅細(xì)胞分水嶺算法結(jié)果); numred2=max(max(L)-1; numred2; % 查看分水嶺算法得到的紅細(xì)胞個(gè)數(shù)numred2 % 為縮小(suxio)誤差把兩種方法得出(d ch)的紅細(xì)胞個(gè)數(shù)的平均值作為紅細(xì)胞的最終個(gè)數(shù) % NumRed=floor(numred1+numred2)/2); %

24、floor()為向上(xingshng)取整。相關(guān)函數(shù)有ceil()向上取整,round()四舍五入。 NumRed; % 查看最終得到的紅細(xì)胞個(gè)數(shù)NumRed 程序運(yùn)行結(jié)果 7 解:(1)原始(yunsh)圖像 1112.bmp首先將真彩圖像轉(zhuǎn)化為灰度圖像,采用濾鏡銳化圖像,使用canny算法提取(tq)圖像邊緣,求連通域去除較小的連通域,以減少邊緣擴(kuò)充后的毛刺現(xiàn)象,然后進(jìn)行圖像擴(kuò)充,再次使用連通域方法,去除擴(kuò)充后圖像中較小連通域,合并邊緣圖像與原始圖像以達(dá)到增強(qiáng)血管邊緣的效果采用matlab7.1進(jìn)行圖像(t xin)處理,將原圖像保存目錄為為E:1112.bmp。程序如下:clear a

25、ll;clc;A=imread(E:1112.bmp);B=rgb2gray(A);%灰度值變換E=fspecial(motion,2,0); %消除失真晶格B=imfilter(B,E,replicate); %應(yīng)用濾鏡銳化圖像E=fspecial(unsharp); %對比度增強(qiáng)G=imfilter(B,E,replicate); C1=edge(G,canny,0.02,0.03,2); %canny算法提取圖像邊緣L,n=bwlabel(C1,8);刪除寬度小于30或者高度小于30的連通域 for i=1:nr,c=find(L=i); left=min(c); right=max(c); top=min(r); buttom=max(r); width(i)=right-left+1; height(i)=buttom-top+1; if width(i)=30|height(i)=30L

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論