• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

图像小波变换去噪——MATLAB实现 - warmbeast

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

 

clear;                   
[A,map]=imread(\'C:\Users\wangd\Documents\MATLAB\1.jpg\');                
X=rgb2gray(A);  
%画出原始图像  
subplot(2,2,1);imshow(X);
title(\'原始图像\');  
%产生含噪图像  
x=imnoise(X ,\'gaussian\',0,0.003);
%画出含噪图像  
subplot(2,2,2);imshow(x);  
title(\'含噪声图像\');  
%下面进行图像的去噪处理  
%用小波函数sym4对x进行2层小波分解  
[c,s]=wavedec2(x,2,\'sym4\');  
%提取小波分解中第一层的低频图像,即实现了低通滤波去噪  
a1=wrcoef2(\'a\',c,s,\'sym4\');  % a1为 double 型数据;
%画出去噪后的图像  
subplot(2,2,3); imshow(uint8(a1)); % 注意 imshow()和image()显示图像有区别,imshow()不能显示 double 型数据,必须进行转换 uint8(a1);
title(\'第一次去噪图像\');           % 并且image() 显示图像有坐标;
%提取小波分解中第二层的低频图像,即实现了低通滤波去噪  
%相当于把第一层的低频图像经过再一次的低频滤波处理  
a2=wrcoef2(\'a\',c,s,\'sym4\',2);  
%画出去噪后的图像  
subplot(2,2,4); imshow(uint8(a2)); %image(a2);
title(\'第二次去噪图像\');
%保存图像  
imwrite(x,\'C:\Users\wangd\Desktop\2.jpg\');
imwrite(uint8(a1),\'C:\Users\wangd\Desktop\3.jpg\'); %imwrite()保存图像,也需要将数据类型转化为uint8
imwrite(uint8(a2),\'C:\Users\wangd\Desktop\4.jpg\');

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
图像增强:直方图均衡和小波变换【matlab】发布时间:2022-07-18
下一篇:
matlab 中max函数用法发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap