matlab 判断图像每个像素值的灰度值,灰度值小于某值时用白色显示出来

matlab入门者。。现在想比较一幅图像A,将每个像素的灰度值与一个固定阈值进行比较,值大于固定阈值时在B图像中用白色像素点显示出来,B图像是新建的黑色图像。运行出来发现B图都为黑色,无白色像素点,请高手帮我看看我的代码,哪里错了。。谢谢。。
A = imread('d:\sx\sx4.jpg');
A = rgb2gray(A);
[m,n] = size(A);
light=200;
B= zeros(256,256);
for i=2:m-1
for j=2:n-1
if A(i,j)>light
B(i,j)=0;
end
end
end
imshow(A);
figure;
imshow(B);

假设A是图像所代表的矩阵,value为某一灰度值,num为图像A中该灰度值的像素个数,则有:[r,c]=find(A==value);num=length(r);或者num=sum(sum(A==value));
温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答