ImageVerifierCode 换一换
格式:DOCX , 页数:39 ,大小:1.24MB ,
资源ID:17566375      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/17566375.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(图像处理Word格式文档下载.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

图像处理Word格式文档下载.docx

1、作业四:图像配准、运动跟踪我编写了矩匹配算法,可以实现模板和图片的匹配。效果如下:第一幅图为模板,在第二幅图上进行了匹配。运动匹配学习了ppt上的算法。程序代码如下:% 主程序:读取图像,调用不同函数(处理算法)。clear clc f=imread(F:matlabshipintuxiangchulifiltertest.jpg);f=f(:,:,2); %取灰度值,第三个值定值figureimshow(f);title(原始图像) ;% % subplot(3,1,1),imshow(f);f1=imnoise(f,gaussian,0.1);imshow(f1);f2=imnoise(f

2、,salt & pepper% figure% imshow(f2);% % subplot(3,1,2),imshow(f2);% title(加入椒盐噪声f3=imnoise(f1,% imshow(f3);% % subplot(2,3,3),imshow(f2);加入白噪声和椒盐噪声% %中值滤波情况ff1=mid_filter(f1,3);f_mid_filter_1=uint8(ff1);imshow(f_mid_filter_1);% subplot(3,1,3),imshow(f_mid_filter_1);3*3中值滤波% ff2=mid_filter(f2,5);% f_m

3、id_filter_2=uint8(ff2);% imshow(f_mid_filter_2);% % subplot(2,3,6),imshow(f_mid_filter_2);5*5中值滤波% %均值滤波情况% ff1=ave_filter(f3,3);% f_ave_filter_1=uint8(ff1);% imshow(f_ave_filter_1);% ff2=ave_filter(f3,5);% f_ave_filter_2=uint8(ff2);% imshow(f_ave_filter_2);%超限邻域平均法% ff1=superave_filter(f2,3);% f_su

4、perave_filter_1=uint8(ff1);% imshow(f_superave_filter_1);3*3超限邻域平均(加入椒盐噪声,阈值50)% %选择式掩膜平滑% ff1=Sel_masking_smoothing(f1);选择式掩膜平滑(白噪声) % 中值滤波算法函数function x2=mid_filter(f,n)x1=double(f);x2=x1;height,width=size(x1);for i=(n+1)/2):height-(n+1)/2) for j=(n+1)/2):width-(n+1)/2) %取窗口元素 temp1=x1(i-(n-1)/2):

5、i+(n-1)/2),j-(n-1)/2):j+(n-1)/2); temp2=temp1(1,: for u=2:n temp2=temp2,temp1(u,:); %将窗口元素转化成行矩阵 end m=median(temp2); %取中值 x2(i,j)=m; %取窗口中值作为像素点end% 均值滤波算法函数function x2=ave_filter(f,n) s=sum(sum(temp1); %求和 x2(i,j)=s/n2; %取窗口均值作为像素点% 超限邻域平均算法函数function x2=superave_filter(f,n)a=50; %求周围n*n-1个点的和 s=(

6、sum(sum(temp1)-x1(i,j)/(n2-1); %判断像素点与周围像素的均值之差是否超过阈值 if abs(x1(i,j)-s)a x2(i,j)=s;% else% x2(i,j)=x1(i,j);% 选择式掩模平滑算法function x2=Sel_masking_smoothing(f)k(1,1:9)=0;for i=3:height-3 for j=3:width-3 %周围9邻近 a1=x1(i-1,j-1:j+1) x1(i,j-1:j+1) x1(i+1,j-1:j+1); s(1)=sum(a1)/9; for b=1:9 k(1)=k(1)+(a1(b)2-s

7、(1)2); %左7邻近 a2=x1(i-2,j-1:j+1) x1(i-1,j-1:j+1) x1(i,j); s(2)=sum(a2)/7;7 k(2)=k(2)+(a2(b)2-s(2)2); %上7邻近 a3=x1(i-1:i+1,j-2) x1(i-1:i+1,j-1) x1(i,j); s(3)=sum(a3)/7; k(3)=k(3)+(a3(b)2-s(3)2); %右7邻近 a4=x1(i+1,j-1:j+1) x1(i+2,j-1: s(4)=sum(a4)/7; k(4)=k(4)+(a4(b)2-s(4)2); %下7邻近 a5=x1(i-1:i+1,j+1)i+1,j

8、+2) s(5)=sum(a5)/7; k(5)=k(5)+(a5(b)2-s(5)2); %左上7邻近 a6=x1(i-2,j-2:j-1) x1(i-1,j-2:j) x1(i,j-1:j); s(6)=sum(a6)/7; k(6)=k(6)+(a6(b)2-s(6)2); %右上7邻近 a7=x1(i,j-1:j) x1(i+1,j-2:j) x1(i+2,j-2: s(7)=sum(a7)/7; k(7)=k(7)+(a7(b)2-s(7)2); %右下7邻近 a8=x1(i,j:j+1) x1(i+1,j:j+2) x1(i+2,j:j+2); s(8)=sum(a8)/7; k(

9、8)=k(8)+(a8(b)2-s(8)2); %左下邻近 a9=x1(i-2,j+1:j+2) x1(i-1,j:j+2) x1(i,j: s(9)=sum(a9)/7; k(9)=k(9)+(a9(b)2-s(9)2); maxr,index=min(k); x2(i,j)=s(index); %Canny算子clearclcclose all1.jpgfigure,imshow(f);原图灰度图q1=double(f);J=q1;height,width=size(q1);%一般情况下,使用高斯平滑滤波器卷积降噪.K为size=5的高斯内核K=1/139*2 4 5 4 2; 4 9 1

10、2 9 4; 5 12 15 12 5; 2 4 5 4 2; %对图像实施高斯滤波 for i=1:height for j=1:width sum=0; for m=1:5 for n=1:% sum=sum+K(m,n)*q1(i,j); if (i-3+m)0 & (i-3+m) (j-3+n)abs(gradX) weight=abs(gradX)/abs(gradY);%权重 grad2=d(i,j-1); grad4=d(i,j+1);%如果x、y方向导数符号相同%像素点位置关系% g1 g2% C% g4 g3 if gradX*gradY grad1=d(i-1,j-1);

11、grad3=d(i+1,j+1);%如果x、y方向导数符号反% g2 g1%g3 g4 grad1=d(i+1,j-1); grad3=d(i-1,j+1);%如果X方向幅度值较大 weight=abs(gradY)/abs(gradX); grad2=d(i-1,j); grad4=d(i+1,j);%g3%g4 C g2% g1 grad1=d(i-1,j+1); grad3=d(i+1,j-1);% g4 C g2% g3 %利用grad1grad4权重关系对梯度进行插值 gradTemp1=weight*grad1+(1-weight)*grad2; gradTemp2=weight*

12、grad3+(1-weight)*grad4; %当前像素的梯度是局部的最大值,可能是边缘点 if gradTemp=gradTemp1 & gradTemp=gradTemp2 D(i,j)=gradTemp; %不可能是边缘点figure,imshow(D,);非极大值抑制后的结果%滞后阈值:高阈值和低阈值EP_MIN=30;EP_MAX=60;EdgeLarge=zeros(height,width);%边缘像素EdgeBetween=zeros(height,width);%记录可能存在的边缘点% dd=zeros(height,width);% for i=2:% for j=2:%

13、 if D(i,j)=D_max;%如果超过高阈值,像素被保留为边缘像素% % EdgeLarge(i,j)=D(i,j);% dd=D(i,j);% else if D(i,j)=D_min & (D(i,j+1)=D_max|D(i,j-1)=D_max.% |D(i+1,j)=D_max|D(i-1,j)=D_max)%在两个阈值之间,暂时保留在此处,接下来进行连接计算% % EdgeBetween(i,j)=D(i,j);% end%低于低阈值的,被排除% figure,imshow(dd,)滞后阈值的结果for i=1: if D(i,j)=EP_MAX%大于最大阈值,为边缘点 Ed

14、geLarge(i,j)=D(i,j); else if D(i,j)=EP_MIN%在两个阈值之间,进行下一步判断 EdgeBetween(i,j)=D(i,j);%把EdgeLarge的边缘连成连续的轮廓MAXSIZE=999999;Queue=zeros(MAXSIZE,2);%用数组模拟队列front=1;%队头rear=1;%队尾edge=zeros(height,width); if EdgeLarge(i,j) %强点入队 Queue(rear,1)=i; Queue(rear,2)=j; rear=rear+1; edge(i,j)=EdgeLarge(i,j); EdgeLa

15、rge(i,j)=0;%避免重复计算 while front=rear%队不空 %队头出队 temp_i=Queue(front,1); temp_j=Queue(front,2); front=front+1; %8-连通域寻找可能的边缘点 %左上方 if EdgeBetween(temp_i-1,temp_j-1)0%把在强点周围的弱点变为强点 EdgeLarge(temp_i-1,temp_j-1)=D(temp_i-1,temp_j-1); EdgeBetween(temp_i-1,temp_j-1)=0; %入队 Queue(rear,1)=temp_i-1; Queue(rear,

16、2)=temp_j-1; %正上方 if EdgeBetween(temp_i-1,temp_j) EdgeLarge(temp_i-1,temp_j)=D(temp_i-1,temp_j); EdgeBetween(temp_i-1,temp_j)=0; Queue(rear,2)=temp_j; %右上方 if EdgeBetween(temp_i-1,temp_j+1) EdgeLarge(temp_i-1,temp_j+1)=D(temp_i-1,temp_j+1); EdgeBetween(temp_i-1,temp_j+1)=0; Queue(rear,2)=temp_j+1; %

17、正左方 if EdgeBetween(temp_i,temp_j-1) EdgeLarge(temp_i,temp_j-1)=D(temp_i,temp_j-1); EdgeBetween(temp_i,temp_j-1)=0; Queue(rear,1)=temp_i; %正右方 if EdgeBetween(temp_i,temp_j+1) EdgeLarge(temp_i,temp_j+1)=D(temp_i,temp_j+1); EdgeBetween(temp_i,temp_j+1)=0; %左下方 if EdgeBetween(temp_i+1,temp_j-1) EdgeLarge(temp_i+1,temp_j-1)=D(temp_i+1,temp_j-1); EdgeBetween(temp_i+1,temp_j-1)=0; Queue(rear,1)=temp_i+1; %正下方 if EdgeBet

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1