计算白色和黑色像素

时间:2014-12-15 06:13:50

标签: matlab image-processing

我正在编写一个计算黑白像素的函数 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

但我正在寻找一些更简单的方法。你知道任何方法吗?

1 个答案:

答案 0 :(得分:5)

如果im是二进制图像,则:

cb = sum(im(:))
cw = numel(im) - cb

如果im是灰度图像,那么:

cb = sum(im(:) == 255)
cw = sum(im(:) == 0)