【无标题】

有没有大佬看看,代码哪里出问题了,急急急!!!

本人没学过matlab遇到好多问题,如果有热心的大佬愿意解答可以私信我,有偿!

问题一:用差不多的代码分别处理matlab自带图片和我自己的图片,在含噪图像那一步就结果不同了。

  • 处理matlab自带图片的代码
>> load facets;
>> subplot(2,2,1);
>> image(X);
>> colormap(map);
>> xlabel('原始图像');
>> axis square;

在这里插入图片描述

>> init=2055615866;
>> randn('seed',init);
>> x = X + 50*randn(size(X));
>> subplot(2,2,2);image(x);
>> colormap(map);
>> xlabel('含噪声图像');
>> axis square;

在这里插入图片描述

  • 处理我自己用的图片的代码
>> load facets;
>> X=imread('cat.jpg');
>> subplot(2,2,1);
>> image(X);
>> colormap(map);
>> xlabel('原始图像');
>> axis square;

p1

%产生含噪声图像
>> init=2055615866;
>> randn('seed',init);
>> x = X + 50*randn(size(X));
>> subplot(2,2,2);image(x);
>> colormap(map);
>> xlabel('含噪声图像');
>> axis square;

p2

为什么p2变成这个样子?

问题2:进行第二次去噪后的图像变成了很乱的样子,就像音频的一样
代码(接上面的原始图像代码)

%图像的去噪处理
%用小波函数coif3对x进行2层小波分解
>> [c,s] = wavedec2(x,2,'coif3');
%提取小波分解中第一层的低频图像,即实现了低通滤波去噪
%设置尺度向量
>> n = [1,2];
%设置阈值向量p
>> p = [10.12,23.28];
%对三个方向高频系数进行阈值处理
>> nc = wthcoef2('h',c,s,n,p,'s');
>> nc = wthcoef2('v',nc,s,n,p,'s');
%对新的小波分解结构[c,s]进行重构
>> x1 = waverec2(nc,s,'coif3');
>> subplot(2,2,3);image(x1);
>> colormap(map);
>> xlabel('第一次去噪图像');
>> axis square;
>%对nc再次进行滤波去噪
>> x2 = wthcoef2('v',nc,s,n,p,'s');
>> subplot(2,2,4);image(x2);
>>colormap(map);
>> xlabel('第二次去噪图像');
>> axis square;

在这里插入图片描述
第二次去噪的图像没保存,大概是这样在这里插入图片描述
白色线条是彩色的,这个不重要,就是错的离谱!!!
网上做出来的结果是这样在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值