Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#1 |
初级会员
注册日期: 2009-03-02
年龄: 38
帖子: 9
声望力: 0 ![]() |
![]()
图象毕业设计 图象分割
问题是M文件可以得到结果图,但是作为GUI按扭程序以后就得不到相同的结果 以下是M文件 %切割 l=imread('lena.bmp'); imshow(l); I=double(l); [m,n]=size(I); for k=1:8;% J=zeros(m,n); for i=1:m for j=1:n temp=I(i,j); s1=0;s2=0; range=[k:-1:1]; for d=range; s1=2^(8-d)+s1;s2=2^(8-d+1); if temp>=s1 & temp<s2; J(i,j)=255;break; end end end end K(:,:,k)=uint8(J); end %分割以后组合 a1=K(:,:,1)/255*128; a2=K(:,:,2)/255*64; a3=K(:,:,3)/255*32; a4=K(:,:,4)/255*16; b=a1+a2+a3+a4; imshow(b); 以下是GUI的按扭程序 I=double(im); [m,n]=size(I); for k=1:8 J=zeros(m,n); for i=1:m for j=1:n temp=I(i,j); s1=0;s2=0; range=[k:-1:1]; for d=range s1=2^(8-d)+s1;s2=2^(8-d+1); if temp>=s1 & temp<s2; J(i,j)=255;break; end end end end K(:,:,k)=uint8(J); end axes(handles.axes2); q=K(:,:,1); imshow(q); axes(handles.axes3); q=K(:,:,2); imshow(q); axes(handles.axes4); q=K(:,:,3); imshow(q); axes(handles.axes5); q=K(:,:,4); imshow(q); axes(handles.axes6); q=K(:,:,5); imshow(q); axes(handles.axes7); q=K(:,:,6); imshow(q); axes(handles.axes8); q=K(:,:,7); imshow(q); axes(handles.axes9); q=K(:,:,8); imshow(q); a1=K(:,:,1)/255*128; a2=K(:,:,2)/255*64; a3=K(:,:,3)/255*32; a4=K(:,:,4)/255*16; axes(handles.axes10); b=a1+a2+a3+a4; imshow(b); 大家帮我看看 是为什么 谢谢了 :lovely: |
![]() |
![]() |
![]() |
#2 |
高级会员
注册日期: 2008-11-01
年龄: 39
帖子: 406
声望力: 26 ![]() |
![]()
lz 能否告诉你使用的代码 使用方法的文章的名字可以么?
搜集积累一下 大家一起讨论学习 同时解决问题 非常感谢 |
![]() |
![]() |
![]() |
#3 |
初级会员
注册日期: 2009-03-02
年龄: 38
帖子: 9
声望力: 0 ![]() |
![]()
这些程序来自于我的教科书<数字图象处理>姚敏著,机械工业出版社 是例题4.4
当然我自己做了修改,特别是位图切割以后再还原的部分是我自己写的 M文件运行的很正常 还原以后效果很好. 但是作为GUI的一个按扭的程序的时候完全显示不出来还原的结果 |
![]() |
![]() |
![]() |
#4 |
高级会员
注册日期: 2008-11-01
年龄: 39
帖子: 406
声望力: 26 ![]() |
![]()
lz .fig做好了吧? 你的代码目的是什么 是分割么? 想得到什么效果呢?
如果是刚开始做的话 你可以到GUI区down一个sample code(建议你这个帖子不错 http://www.labfans.com/t3613/ 非常简单 但是基本状况告诉你了) 另外 多参考一下MatLAB中的help,你可以通过GUI 或者Example GUI进行搜索,然后通过例程进行学习。7.5带的例子就很经典,我给老师做做的供上课演示的小project参考了其中不少。 Thx for reading. PS:若还算满意,直接点击“Thanks”,再次登陆时亦便于查看回答是否真的帮到你了。 |
![]() |
![]() |