我的代码作在循环工作,但是工作正常在做手工。请找到错误

23日视图(30天)
代码和运行第一形象虽然在文件夹中添加第二个图像DWT过滤器部分不做得很好,给出了如下所示的错误。基本上我的代码应阅读image1从一个文件夹和处理它,等到第二个图片上传的文件夹和文件夹应该过程中同时检测image2等等。请能告诉我错误在哪里。
代码是
clc;
关闭所有;
清晰;
waitMax = 20;
k = 1;
而k < 6
jpgFilename = sprintf(图像% d.jpg, k);
fullFileName = fullfile (C: \用户项目Matlab桌面\ \新User1 \ \ ', jpgFilename);
如果存在(fullFileName,“文件”)%如果图像中存在文件夹中
% rgbImage = imread (fullFileName);
%,imshow (rgbImage)
myimg = imread (fullFileName);
J = im2gray (myimg);
mygrayimg = imresize (J(256 256),“最近”);
New2 = im2double (mygrayimg);
次要情节(2、3、1);
imshow (New2);
标题(“原始图像”);
%添加高斯噪声均值为0,方差为0.01
高斯= imnoise (mygrayimg,“高斯”,0,0.01);
次要情节(2、3、2);
imshow(高斯);
新= im2double(高斯);
标题(“高斯噪声图像”);
%执行Coiflet小波去噪
%设置去噪参数
waveletType =“coif5”;% Coiflet小波类型
水平= 4;%小波分解层次
阈值= ' s ';%的阈值方法
thrSettings = 1.231;%的阈值设置
%进行小波分解
[C, S] = wavedec2(新的水平,waveletType);
%计算噪声估计使用通用阈值
σ= (abs (C)) /中值0.6745;
%应用阈值
D = wthresh (C、阈值、σ* thrSettings);
%进行逆小波变换得到去噪图像
denoisedImage = waverec2 (D S waveletType);
%显示图像去噪
次要情节(2、3、6);
imshow (denoisedImage);
标题(“DWT头巾的去噪图像);
mse_coif = immse (denoisedImage New2)
psnr_coif = psnr (denoisedImage New2)
其他的
数= 1:waitMax
%等20秒的图像
暂停(1)
如果存在(fullFileName,“文件”)
k = k - 1;
打破;%退出这个循环(返回到主循环)
结束
结束
结束
k = k + 1;
结束
3评论
沃尔特·罗伯森
沃尔特·罗伯森 2023年5月7日16:56
运行并达到错误之后,请说明
哪一个abs中值
我怀疑还有其他行代码中,您没有告诉我们

登录置评。

答案(0)

类别

找到更多的在去噪和压缩帮助中心文件交换

下载188bet金宝搏


释放

R2021a

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!