我想通过dwt2检测图像的边缘。事实上,我将模拟这个article。
边缘检测的第一步是基于用零替换所有近似系数。但是当我用零替换近似系数时,边缘与文章中的结果不相似。
这是我的代码:
clc;
clear all,close all
img=imread('2.png');
img=img(:,:,1);
imshow(img);
L = medfilt2(img,[3 3]);
L=im2double(L);
[A,H,V,D]=dwt2(L,'haar');
A=zeros(size(A));
Q1 = idwt2(A,H,V,D,'haar');
figure;
subplot(1,2,1);
imshow(img);
subplot(1,2,2);
imshow(Q1);`
enter code here
clc;
clear all,close all
img=imread('2.png');
img=rgb2gray(img);
L = medfilt2(img,[3 3]);
t=graythresh(L);
b=im2bw(L,t);
[A,H,V,D]=dwt2(b,'haar');
A1=zeros(size(A));
Q1 = idwt2(A1,H,V,D,'haar');
figure;
subplot(1,2,1);
imshow(img);
subplot(1,2,2);
imshow(Q1);