我想从MATLAB中的文件夹中读取RGB图像(.jpg),扫描图像的每个像素并检查它是否具有特定颜色(例如,如果它是紫罗兰:R 128,G 0, B 255
)并计数有多少像素具有这种特定的颜色。
你有什么想法吗?
答案 0 :(得分:2)
假设图像被加载到名为A
的变量中:
pixelMask = A(:,:,1) == 128 & A(:,:,2) == 0 & A(:,:,3) == 255;
count = nnz(pixelMask);
另一种方法是使用bxsfun
和单例扩展:
pixel = cat(3,128,0,255);
S = all(bsxfun(@eq, A, pixel), 3);
count = nnz(S);