MATLAB实现小波变换边缘提取 程序哪里放要处理的图片名

MATLAB实现小波变换边缘提取哪里放要处理的图片名程序如下,不用MATLAB自带图片实现,怎样更换?另外对图片的格式,大小有什么要求吗?谢谢clearall;loadw... MATLAB实现小波变换边缘提取 哪里放要处理的图片名
程序如下,不用MATLAB自带图片实现,怎样更换? 另外对图片的格式,大小有什么要求吗?
谢谢
clear all;
load wbarb; %小波变换边缘提取程序
I = ind2gray(X,map);%检索图转成灰度图
imshow(I);
I1 = imadjust(I,stretchlim(I),[0,1]);%调整图像的像素值,可以改变对比度和颜色
figure;
imshow(I1);
[N,M] = size(I);

h = [0.125,0.375,0.375,0.125];
g = [0.5,-0.5];
delta = [1,0,0];

J = 3;

a(1:N,1:M,1,1:J+1) = 0;
dx(1:N,1:M,1,1:J+1) = 0;
dy(1:N,1:M,1,1:J+1) = 0;
d(1:N,1:M,1,1:J+1) = 0;

a(:,:,1,1) = conv2(h,h,I,'same');
dx(:,:,1,1) = conv2(delta,g,I,'same');
dy(:,:,1,1) = conv2(g,delta,I,'same');

x = dx(:,:,1,1);
y = dy(:,:,1,1);
d(:,:,1,1) = sqrt(x.^2+y.^2);
I1 = imadjust(d(:,:,1,1),stretchlim(d(:,:,1,1)),[0 1]);figure;imshow(I1);

lh = length(h);
lg = length(g);

for j = 1:J+1
lhj = 2^j*(lh-1)+1;
lgj = 2^j*(lg-1)+1;
hj(1:lhj)=0;
gj(1:lgj)=0;
for n = 1:lh
hj(2^j*(n-1)+1)=h(n);
end

for n = 1:lg
gj(2^j*(n-1)+1)=g(n);
end

a(:,:,1,j+1) = conv2(hj,hj,a(:,:,1,j),'same');
dx(:,:,1,j+1) = conv2(delta,gj,a(:,:,1,j),'same');
dy(:,:,1,j+1) = conv2(gj,delta,a(:,:,1,j),'same');

x = dx(:,:,1,j+1);
y = dy(:,:,1,j+1);
dj(:,:,1,j+1) = sqrt(x.^2+y.^2);

I1 = imadjust(dj(:,:,1,j+1),stretchlim(dj(:,:,1,j+1)),[0 1]);figure;imshow(I1);
end
我还尝试把matlab自带的wbarb图片换成lean图片,但提示有错误??? Error using ==> load
Unable to read file lean: No such file or directory.请问是什么原因
展开
 我来答
你有问_我来答
2009-02-23 · TA获得超过602个赞
知道小有建树答主
回答量:224
采纳率:0%
帮助的人:266万
展开全部
从你的load wbarb; %小波变换边缘提取程序
I = ind2gray(X,map);%检索图转成灰度图
可以看出wbarb预先已经有了X和map
先确保你的lean业含有X和map参数,如果没有,可以试着先转换成索引图片,然后再运行该程序
日向淳正
2009-02-21 · TA获得超过2811个赞
知道大有可为答主
回答量:2770
采纳率:0%
帮助的人:1500万
展开全部
你把你的图片保存到原来的图片所在的文件夹,不然可能不识别你的路径.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式