欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    2022年数字图像处理代码大全.docx

    • 资源ID:79908308       资源大小:119.63KB        全文页数:42页
    • 资源格式: DOCX        下载积分:4.3金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要4.3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    2022年数字图像处理代码大全.docx

    精选学习资料 - - - - - - - - - 1.图像反转MATLAB 程序实现如下:I=imread'xian.bmp' J=doubleI; J=-J+256-1; H=uint8J; %图像反转线性变换subplot1,2,1,imshowI; subplot1,2,2,imshowH; 2.灰度线性变换 MATLAB 程序实现如下:I=imread'xian.bmp' subplot2,2,1,imshowI; title' 原始图像 ' axis50,250,50,200; axis on; %显示坐标系 I1=rgb2grayI; subplot2,2,2,imshowI1; title' 灰度图像 ' axis50,250,50,200; axis on; %显示坐标系J=imadjustI1,0.1 0.5,; % 为0 1 局部拉伸,把0.1 0.5 内的灰度拉伸名师归纳总结 - - - - - - -第 1 页,共 22 页精选学习资料 - - - - - - - - - subplot2,2,3,imshowJ; title' 线性变换图像 0.1 0.5' axis50,250,50,200; grid on; %显示网格线 axis on; %显示坐标系K=imadjustI1,0.3 伸为 0 1 0.7,; % 局部拉伸,把 0.3 0.7内的灰度拉subplot2,2,4,imshowK; title' 线性变换图像 0.3 0.7' axis50,250,50,200; grid on; %显示网格线 axis on; %显示坐标系3.非线性变换 MATLAB 程序实现如下:I=imread'xian.bmp' I1=rgb2grayI; subplot1,2,1,imshowI1; title' 灰度图像 ' axis50,250,50,200; grid on; %显示网格线 axis on; %显示坐标系 J=doubleI1; 名师归纳总结 - - - - - - -第 2 页,共 22 页精选学习资料 - - - - - - - - - J=40*logJ+1; H=uint8J; subplot1,2,2,imshowH; title' 对数变换图像 ' axis50,250,50,200; grid on; %显示网格线axis on; %显示坐标系4.直方图均衡化 MATLAB 程序实现如下:I=imread'xian.bmp' I=rgb2grayI; figure; subplot2,2,1; imshowI; subplot2,2,2; imhistI; I1=histeqI; figure; subplot2,2,1; imshowI1; subplot2,2,2; imhistI1; 名师归纳总结 - - - - - - -第 3 页,共 22 页精选学习资料 - - - - - - - - - 5.线性平滑滤波器 用 MATLAB 实现领域平均法抑制噪声程序:I=imread'xian.bmp' subplot231 imshowI title' 原始图像 ' I=rgb2grayI; I1=imnoiseI,'salt & pepper',0.02; subplot232 imshowI1 title' 添加椒盐噪声的图像 ' k1=filter2fspecial'average',3,I1/255; 板平滑滤波k2=filter2fspecial'average',5,I1/255; %进行 3*3模%进行 5*5模板平滑滤波k3=filter2fspecial'average',7,I1/255; 板平滑滤波 k4=filter2fspecial'average',9,I1/255; 板平滑滤波 subplot233,imshowk1;title'3*3 模板平滑滤波 ' subplot234,imshowk2;title'5*5 模板平滑滤波 ' subplot235,imshowk3;title'7*7 模板平滑滤波 ' %进行 7*7模%进行 9*9模名师归纳总结 - - - - - - -第 4 页,共 22 页精选学习资料 - - - - - - - - - subplot236,imshowk4;title'9*9 6.中值滤波器模板平滑滤波 ' 用 MATLAB 实现中值滤波程序如下:I=imread'xian.bmp' I=rgb2grayI; J=imnoiseI,'salt&pepper',0.02; subplot231,imshowI;title' 原图像 ' subplot232,imshowJ;title' k1=medfilt2J; k2=medfilt2J,5,5; k3=medfilt2J,7,7; k4=medfilt2J,9,9; 添加椒盐噪声图像 ' %进行 3*3模板中值滤波 %进行 5*5 模板中值滤波 %进行 7*7 模板中值滤波 %进行 9*9 模板中值滤波subplot233,imshowk1;title'3*3 模板中值滤波 ' subplot234,imshowk2;title'5*5 subplot235,imshowk3;title'7*7 subplot236,imshowk4;title'9*9模板中值滤波 ' 模板中值滤波 ' 模板中值滤波 ' 7.用 Sobel 算子和拉普拉斯对图像锐化:I=imread'xian.bmp' subplot2,2,1,imshowI; title' 原始图像 ' axis50,250,50,200; 名师归纳总结 - - - - - - -第 5 页,共 22 页精选学习资料 - - - - - - - - - grid on; %显示网格线axis on; %显示坐标系 I1=im2bwI; subplot2,2,2,imshowI1; title' 二值图像 ' axis50,250,50,200; grid on; %显示网格线 axis on; %显示坐标系 H=fspecial'sobel' %挑选 sobel 算子 J=filter2H,I1; % 卷积运算 subplot2,2,3,imshowJ; title'sobel 算子锐化图像 ' axis50,250,50,200; grid on; %显示网格线 axis on; %显示坐标系 h=0 1 0,1 -4 1,0 1 0; %拉普拉斯算子 J1=conv2I1,h,'same' %卷积运算 subplot2,2,4,imshowJ1; title' 拉普拉斯算子锐化图像 ' axis50,250,50,200; 名师归纳总结 grid on; %显示网格线第 6 页,共 22 页axis on; %显示坐标系- - - - - - -精选学习资料 - - - - - - - - - 8.梯度算子检测边缘 用 MATLAB 实现如下:I=imread'xian.bmp' subplot2,3,1; imshowI; title' 原始图像 ' axis50,250,50,200; grid on; %显示网格线 axis on; %显示坐标系 I1=im2bwI; subplot2,3,2; imshowI1; title' 二值图像 ' axis50,250,50,200; grid on; %显示网格线 axis on; %显示坐标系 I2=edgeI1,'roberts' figure; subplot2,3,3; imshowI2; title'roberts 算子分割结果 ' axis50,250,50,200; 名师归纳总结 - - - - - - -第 7 页,共 22 页精选学习资料 - - - - - - - - - grid on; %显示网格线axis on; %显示坐标系 I3=edgeI1,'sobel' subplot2,3,4; imshowI3; title'sobel 算子分割结果 ' axis50,250,50,200; grid on; %显示网格线 axis on; %显示坐标系 I4=edgeI1,'Prewitt' subplot2,3,5; imshowI4; title'Prewitt 算子分割结果 ' axis50,250,50,200; grid on; %显示网格线 axis on; %显示坐标系9.LOG 算子检测边缘 用 MATLAB 程序实现如下:I=imread'xian.bmp' subplot2,2,1; imshowI; title' 原始图像 ' 名师归纳总结 - - - - - - -第 8 页,共 22 页精选学习资料 - - - - - - - - - I1=rgb2grayI; subplot2,2,2; imshowI1; title' 灰度图像 ' I2=edgeI1,'log' subplot2,2,3; imshowI2; title'log 算子分割结果 ' 10.Canny 算子检测边缘 用 MATLAB 程序实现如下:I=imread'xian.bmp' subplot2,2,1; imshowI; title' 原始图像 ' I1=rgb2grayI; subplot2,2,2; imshowI1; title' 灰度图像 ' I2=edgeI1,'canny' subplot2,2,3; imshowI2; title'canny 算子分割结果 ' 名师归纳总结 - - - - - - -第 9 页,共 22 页精选学习资料 - - - - - - - - - 11.边界跟踪( bwtraceboundary 函数)clc clear all I=imread'xian.bmp' figure imshowI; title' 原始图像 ' I1=rgb2grayI; threshold=graythreshI1; 值图像所需的门限%将彩色图像转化灰度图像 %运算将灰度图像转化为二BW=im2bwI1, threshold; %将灰度图像转化为二值图像figure imshowBW; title' 二值图像 ' dim=sizeBW; col=rounddim2/2-90; row=findBW:,col,1; connectivity=8; num_points=180; %运算起始点列坐标 %运算起始点行坐标contour=bwtraceboundaryBW,row,col,'N',connectivity,num_p oints; 名师归纳总结 - - - - - - -第 10 页,共 22 页精选学习资料 - - - - - - - - - %提取边界figure imshowI1; hold on; plotcontour:,2,contour:,1, 'g','LineWidth' ,2; title' 边界跟踪图像 ' 12.Hough 变换 I= imread'xian.bmp' rotI=rgb2grayI; subplot2,2,1; imshowrotI; title' 灰度图像 ' axis50,250,50,200; grid on; axis on; BW=edgerotI,'prewitt' subplot2,2,2; imshowBW; title'prewitt 算子边缘检测后图像 ' axis50,250,50,200; grid on; axis on; 名师归纳总结 - - - - - - -第 11 页,共 22 页精选学习资料 - - - - - - - - - H,T,R=houghBW; subplot2,2,3; imshowH,'XData',T,'YData',R,'InitialMagnification','fit' title' 霍夫变换图 ' xlabel'theta',ylabel'rho' axis on , axis normal, hold on; P=houghpeaksH,5,'threshold',ceil0.3*maxH:; x=TP:,2;y=RP:,1; plotx,y,'s','color','white' lines=houghlinesBW,T,R,P,'FillGap',5,'MinLength',7; subplot2,2,4;,imshowrotI; title' 霍夫变换图像检测 ' axis50,250,50,200; grid on; axis on; hold on; max_len=0; for k=1:lengthlines xy=linesk.point1;linesk.point2; plotxy:,1,xy:,2,'LineWidth',2,'Color','green' plotxy1,1,xy1,2,'x','LineWidth',2,'Color','yellow' plotxy2,1,xy2,2,'x','LineWidth',2,'Color','red' 名师归纳总结 - - - - - - -第 12 页,共 22 页精选学习资料 - - - - - - - - - len=normlinesk.point1-linesk.point2; iflen>max_len max_len=len; xy_long=xy; end end plotxy_long:,1,xy_long:,2,'LineWidth',2,'Color','cyan' 13. 直方图阈值法 用 MATLAB 实现直方图阈值法:I=imread'xian.bmp' I1=rgb2grayI; figure; subplot2,2,1; imshowI1; title' 灰度图像 ' axis50,250,50,200; grid on; %显示网格线 axis on; %显示坐标系m,n=sizeI1; 参数% 测量图像尺寸GP=zeros1,256; %预创建存放灰度显现概率的向量名师归纳总结 - - - - - - -第 13 页,共 22 页精选学习资料 - - - - - - - - - for k=0:255 GPk+1=lengthfindI1=k/m*n; 显现的概率,将其存入 GP 中相应位置end % 运算每级灰度subplot2,2,2,bar0:255,GP,'g' %绘制直方图title' 灰度直方图 ' xlabel' 灰度值 ' ylabel' 显现概率 ' I2=im2bwI,150/255; subplot2,2,3,imshowI2; title' 阈值 150 的分割图像 ' axis50,250,50,200; grid on; % %显示网格线axis on; %显示坐标系I3=im2bwI,200/255; subplot2,2,4,imshowI3; title' 阈值 200 的分割图像 ' axis50,250,50,200; grid on; %显示网格线 axis on; %显示坐标系14. 自动阈值法: Otsu 法名师归纳总结 - - - - - - -第 14 页,共 22 页精选学习资料 - - - - - - - - - 用 MATLAB 实现 Otsu 算法:clc clear all I=imread'xian.bmp' subplot1,2,1,imshowI; title' 原始图像 ' axis50,250,50,200; grid on; %显示网格线 axis on; %显示坐标系 level=graythreshI; %确定灰度阈值 BW=im2bwI,level; subplot1,2,2,imshowBW; title'Otsu 法阈值分割图像 ' axis50,250,50,200; grid on; %显示网格线 axis on; %显示坐标系15. 膨胀操作 I=imread'xian.bmp' %载入图像 I1=rgb2grayI; subplot1,2,1; imshowI1; title' 灰度图像 ' 名师归纳总结 - - - - - - -第 15 页,共 22 页精选学习资料 - - - - - - - - - axis50,250,50,200; grid on; %显示网格线axis on; %显示坐标系se=strel'disk',1; I2=imdilateI1,se; 行膨胀subplot1,2,2; imshowI2; %生成圆形结构元素 %用生成的结构元素对图像进title' 膨胀后图像 ' axis50,250,50,200; grid on; %显示网格线 axis on; %显示坐标系16. 腐蚀操作 MATLAB 实现腐蚀操作 I=imread'xian.bmp' %载入图像 I1=rgb2grayI; subplot1,2,1; imshowI1; title' 灰度图像 ' axis50,250,50,200; 名师归纳总结 grid on; %显示网格线第 16 页,共 22 页axis on; %显示坐标系- - - - - - -精选学习资料 - - - - - - - - - se=strel'disk',1; I2=imerodeI1,se; 蚀 subplot1,2,2; imshowI2; % 生成圆形结构元素 %用生成的结构元素对图像进行腐title' 腐蚀后图像 ' axis50,250,50,200; grid on; %显示网格线 axis on; %显示坐标系17. 开启和闭合操作 用 MATLAB 实现开启和闭合操作I=imread'xian.bmp' %载入图像 subplot2,2,1,imshowI; title' 原始图像 ' axis50,250,50,200; axis on; %显示坐标系 I1=rgb2grayI; subplot2,2,2,imshowI1; title' 灰度图像 ' axis50,250,50,200; axis on; %显示坐标系se=strel'disk',1; %采纳半径为 1的圆作为结构元素名师归纳总结 - - - - - - -第 17 页,共 22 页精选学习资料 - - - - - - - - - I2=imopenI1,se; % 开启操作 I3=imcloseI1,se; %闭合操作 subplot2,2,3,imshowI2; title' 开启运算后图像 ' axis50,250,50,200; axis on; %显示坐标系 subplot2,2,4,imshowI3; title' 闭合运算后图像 ' axis50,250,50,200; axis on; %显示坐标系18. 开启和闭合组合操作 I=imread'xian.bmp' %载入图像 subplot3,2,1,imshowI; title' 原始图像 ' axis50,250,50,200; axis on; %显示坐标系 I1=rgb2grayI; subplot3,2,2,imshowI1; title' 灰度图像 ' axis50,250,50,200; axis on; %显示坐标系 se=strel'disk',1; 名师归纳总结 - - - - - - -第 18 页,共 22 页精选学习资料 - - - - - - - - - I2=imopenI1,se; % 开启操作I3=imcloseI1,se; %闭合操作subplot3,2,3,imshowI2; title' 开启运算后图像 ' axis50,250,50,200; axis on; %显示坐标系subplot3,2,4,imshowI3; title' 闭合运算后图像 ' axis50,250,50,200; axis on; %显示坐标系se=strel'disk',1; I4=imopenI1,se; I5=imcloseI4,se; subplot3,2,5,imshowI5; title' 开闭运算图像 ' axis50,250,50,200; %开闭运算图像axis on; %显示坐标系 I6=imcloseI1,se; I7=imopenI6,se; subplot3,2,6,imshowI7; title' 闭开运算图像 ' axis50,250,50,200; %闭开运算图像名师归纳总结 - - - - - - -第 19 页,共 22 页精选学习资料 - - - - - - - - - axis on; %显示坐标系19. 形状学边界提取 利用 MATLAB 实现如下:I=imread'xian.bmp' %载入图像 subplot1,3,1,imshowI; title' 原始图像 ' axis50,250,50,200; grid on; %显示网格线 axis on; %显示坐标系 I1=im2bwI; subplot1,3,2,imshowI1; title' 二值化图像 ' axis50,250,50,200; grid on; %显示网格线 axis on; %显示坐标系I2=bwperimI1; %猎取区域的周长subplot1,3,3,imshowI2; title' 边界周长的二值图像 ' axis50,250,50,200; grid on; axis on; 名师归纳总结 - - - - - - -第 20 页,共 22 页精选学习资料 - - - - - - - - - 20. 形状学骨架提取 利用 MATLAB 实现如下:I=imread'xian.bmp' subplot2,2,1,imshowI; title' 原始图像 ' axis50,250,50,200; axis on; I1=im2bwI; subplot2,2,2,imshowI1; title' 二值图像 ' axis50,250,50,200; axis on; I2=bwmorphI1,'skel',1; subplot2,2,3,imshowI2; title'1 次骨架提取 ' axis50,250,50,200; axis on; I3=bwmorphI1,'skel',2; subplot2,2,4,imshowI3; title'2 次骨架提取 ' axis50,250,50,200; axis on; 名师归纳总结 - - - - - - -第 21 页,共 22 页精选学习资料 - - - - - - - - - 21. 直接提取四个顶点坐标 I = imread'xian.bmp' I = I:,:,1; BW=im2bwI; figure imshowBW x,y=getpts 名师归纳总结 - - - - - - -第 22 页,共 22 页

    注意事项

    本文(2022年数字图像处理代码大全.docx)为本站会员(H****o)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开