在Matlab中如何实现灰度图区间灰度赋值?
例如:灰度区间为, 则凡是灰度值小于150的点都赋值为0, 凡是灰度值大于200的都赋值为255, 在区间内的灰度值不变.
如果某像素点的灰度值为(125,125,1225)则应该更改为(0,0,0),如果某点的灰度值为(205,205,205)则应更改为(255,255,255),如果像素点的灰度值为(180,180,180)则不变。
该如何实现呢? 用什么命令呢? 我用imshow(I,没有实现.
难道需要对每个像素点作灰度值大小判断吗? 有没有简单一点的办法?
[ 本帖最后由 ChaChing 于 2010-7-11 13:01 编辑 ]
回复:(gxqcdit)高手进啊: 在Matlab中如何实现灰度图...
IMSHOW(I,) displays I as a grayscale intensity<BR> image, specifying the data range for I. The value LOW (and<BR> any value less than LOW) displays as black, the HIGH (and any<BR> value greater than HIGH) displays as white, and values in<BR> between display as intermediate shades of gray. IMSHOW uses<BR> the default number of gray levels. If you use an empty matrix<BR> ([]) for , IMSHOW uses ; the<BR> minimum value in I displays as black, and the maximum value<BR> displays as white.<BR><BR>根据说明是可以的,但是我试了一下也不行<BR>而且不光是IMSHOW(I,) 不行<BR>imshow其他好多的显示方式都不行,郁闷死了 同感,同感!我用下列代码尝试,还是不行,还是原图没变。
I=imread('E:\\1.bmp');
imshow(I,);
有谁知道怎么弄?
为何原图中(0,0,0)的点处理后变为(1,0,0)???
[ 本帖最后由 ChaChing 于 2010-7-11 13:00 编辑 ]
页:
[1]