CAD教程 行业资讯 3D模型下载 Pro/E教程 CAD书店 软件下载 联系我们
技术资料 CAD招聘 发布招聘 CAD问答 设计竞赛 CAD认证 北京CAD培训
视频教程 PS教程 CAD图纸 图书推荐 Solidworks教程 CAD培训 CAD软件商

 最新视频教程Pro/ENGINEER Wildfire2.0 工业设计实例视频教程 (全套免费在线学习)   AutoCAD视频教程每日更新
 
首页 > CAD在线问答 > matlab

这段代码的错误是什么?我是matlab初学者,英文也不太好,看不大懂,希望有人能快点解答,比较着急

2013-06-09 51自学网




lz 你好,是因为这句imshow(wr);,wr为逻辑型数据,imshow不支持,支持uint8,需要转换,修改如下:

f=imread('lena(hui).png');
subplot(2,2,1)
imshow(f);
title('(a)原始图像');
f=double(f);
hv=fspecial('prewitt');
hh=hv.';
gv=abs(imfilter(f,hv,'replicate'));
gh=abs(imfilter(f,hh,'replicate'));
g=sqrt(gv.^2+gh.^2);
subplot(2,2,2);
L=watershed(g);
wr=L==0;
ww=uint8(wr);%必须把逻辑变量转换为uint8型,imshow才能读取
imshow(ww);%
title('(b)分水岭');

figure
L1=uint8(L);%
imshow(L1);%
提问者评价
谢谢,这次能出现图片了
我来回答 共有条 回答
用户名: 密码:
验证码: 匿名发表
| AutoCAD | Pro/E | UG | 3Dmax | catia | solidworks | maya | photoshop | 模具设计 | 有限元 | matlab | 计算机图形学 | 室内设计 |