我正在编写一个计算黑白像素的函数
Matlab
中是否有任何函数可以计算白色和黑色像素?
我知道我可以使用size方法,2可以使用循环和计数
像这样:
[row, column]= size(im);
cb = 0;
cw = 0;
for i=1:row
for j=1:column
if(im(i,j) == 0 )
cb = cb + 1;
end
if(im(i,j) == 255)
cw = cw + 1;
end
end
end
但我正在寻找一些更简单的方法。你知道任何方法吗?
答案 0 :(得分:5)
如果im
是二进制图像,则:
cb = sum(im(:))
cw = numel(im) - cb
如果im
是灰度图像,那么:
cb = sum(im(:) == 255)
cw = sum(im(:) == 0)