zhangyan 发表于 2006-4-10 13:44

[求助]matlab图象处理的问题

<P>大家帮帮忙啊,帮帮小妹.以下程序有几句不太懂,麻烦有力之人了~~~<BR> a=imread('a.bmp');<BR> c=zeros(size(a));  这句话是什么意思啊<BR> pos=find(a&lt;20);<BR> c(pos)=a(pos);   这句呢?<BR> b(:,:,3)=c;     b(:,:,3)是什么呢?<BR> c=zeros(size(a));<BR> pos=find((a&gt;=20)&amp;(a&lt;40));<BR> c(pos)=a(pos);<BR> b(:,:,2)=c;<BR> c=zeros(size(a));<BR> pos=find(a&gt;=40);<BR> c(pos)=a(pos);<BR> b(:,:,1)=c;<BR> b=uint8(b);<BR>万分感谢啊!!各位高手帮帮忙啊</P>

happy 发表于 2006-4-10 15:15

回复:(zhangyan)[求助]matlab图象处理的问题

<DIV class=quote><B>以下是引用<I>zhangyan</I>在2006-4-10 13:44:56的发言:</B><BR>
<P>大家帮帮忙啊,帮帮小妹.以下程序有几句不太懂,麻烦有力之人了~~~<BR> a=imread('a.bmp');<BR> c=zeros(size(a));  这句话是什么意思啊<BR><FONT color=#ff0000>建一个零矩阵c,该矩阵的大小和a一致</FONT><BR> pos=find(a&lt;20);<BR> c(pos)=a(pos);   这句呢?<BR><FONT color=#ff0000>将a中所有pos对应的元素赋给C,其中pos的对应的是a中小于20的元素<BR></FONT> b(:,:,3)=c;     b(:,:,3)是什么呢?<BR><FONT color=#ff0000>b(:,:,3)是b中第三页的所有元素,不过在这里这句话是错的</FONT><BR> c=zeros(size(a));<BR> pos=find((a&gt;=20)&amp;(a&lt;40));<BR> c(pos)=a(pos);<BR> b(:,:,2)=c;<BR> c=zeros(size(a));<BR> pos=find(a&gt;=40);<BR> c(pos)=a(pos);<BR> b(:,:,1)=c;<BR> b=uint8(b);<BR>万分感谢啊!!各位高手帮帮忙啊</P></DIV>
<br>

zhangyan 发表于 2006-4-10 19:50

再帮帮忙~~

太感谢了!!!<BR>这是我在其它地方看见的关于用密度分割法编写的一个程序:灰度值0-20为蓝色,20-40为绿色,40以上为红色.<BR><BR>a=imread('a.bmp');<BR> c=zeros(size(a));  <BR> pos=find(a&lt;20);<BR> c(pos)=a(pos);   <BR> b(:,:,3)=c;     <BR> c=zeros(size(a));<BR> pos=find((a&gt;=20)&amp;(a&lt;40));<BR> c(pos)=a(pos);<BR> b(:,:,2)=c;<BR> c=zeros(size(a));<BR> pos=find(a&gt;=40);<BR> c(pos)=a(pos);<BR> b(:,:,1)=c;<BR> b=uint8(b);<BR>如何给一个灰度值区间赋值呢,大哥再帮帮忙,万分感谢.
页: [1]
查看完整版本: [求助]matlab图象处理的问题