【发布时间】:2014-09-06 02:36:37
【问题描述】:
我想用 MATLAB 求彩色图像中黑色像素的数量,我该怎么做?
谢谢。
【问题讨论】:
标签: image matlab image-processing
我想用 MATLAB 求彩色图像中黑色像素的数量,我该怎么做?
谢谢。
【问题讨论】:
标签: image matlab image-processing
像这样使用nnz -
nnz(all(im==0,3))
im 是您的图像数据。
替代方案 - sum(reshape(all(im==0,3),[],1)) 和 sum(sum(all(im==0,3)))。
这里假设黑色像素是三元组(0,0,0)。
如果您将黑色像素定义为所有通道中相同像素位置的值在区间 [0 th] 内的像素,请使用此 -
nnz(all(im<=th,3))
【讨论】:
black 的定义是所有RGB 值都恰好是0,即接近黑色的值,例如1,1,1(我假设比例为@987654332 @) 不是黑色的。