我已经完成了一个编程,可以通过使用从000到111的RGB方法计算图像中的8种颜色。我需要对其进行一些修改。到目前为止,我声明的数字,如果128以上将等于1 &低于128将是0.它会计数8种颜色。如何增加颜色数量?下面是代码的一个例子数到8种颜色:计算图像中颜色的百分比数
rgbImage = imread('football.jpg');
imshow(rgbImage);
[w,h,d] = size(rgbImage)
redChannel = rgbImage(:,:, 1);
greenChannel = rgbImage(:,:, 2);
blueChannel = rgbImage(:,:, 3);
quantizedImage=zeros(size(rgbImage));
count=zeros(1,8);
for i = 1:w
for j = 1:h
if redChannel(i,j) > 128,
aredChannel2 = 1;
else
aredChannel2=0;
end
quantizedImage(i,j,1)=aredChannel2*255;
if greenChannel(i,j) > 128,
agreenChannel2 = 1;
else
agreenChannel2=0;
end
quantizedImage(i,j,2)=agreenChannel2*255;
if blueChannel(i,j) > 128,
ablueChannel2 = 1;
else
ablueChannel2=0;
end
quantizedImage(i,j,3)=ablueChannel2*255;
bin=4*aredChannel2+2*agreenChannel2+ablueChannel2+1;
count(bin)=count(bin)+1;
end
end
figure, imshow(uint8(quantizedImage));
正如上面的代码最多只能计算8种颜色。假设我想将颜色数增加到64个颜色数。 –
@rayryeng你能帮我解决这个问题吗? –