%加载图像 peppers.png,这张彩色照片显示了几种辣椒和其他一些蔬菜。8 位无符号整数数组 rgb 包含图像数据。
号令行键入:
rgb = imread('peppers.png');
号令行键入:
imshow(rgb)
为每个像素的红、绿 RGB 值绘制二元直方图,以可视化形式呈现颜色分布。
号令行键入:
r = rgb(:,:,1);
号令行键入:
g = rgb(:,:,2);
号令行键入:
b = rgb(:,:,3);
号令行键入:
histogram2(r,g,'DisplayStyle','tile','ShowEmptyBins','on', ...
'XBinLimits',[0 255],'YBinLimits',[0 255]);
号令行键入:
axis equal
号令行键入:
colorbar
号令行键入:
xlabel('Red Values')
号令行键入:
ylabel('Green Values')
号令行键入:
title('Green vs. Red Pixel Components')
此直方图较着趋势于色阶底部,原因是有些 bin 的计数很大。这导致大部门 bin 在颜色图中显示为第一种颜色,即蓝色。若是没有供给更多具体信息,很可贵出关于哪种颜色更占本家儿导性的结论。
要查看更多具体信息,请经由过程将坐标区的 CLim 属性设置为介于 0 和 500 之间的规模,从头调整直方图的色阶。其成果就是直方图入彀数达到 500 或以上的 bin 在颜色图中显示为最后一种颜色,即黄色。因为大部门 bin 的计数在这个较小规模内,是以所显示的 bin 的颜色转变较大。
号令行键入:
ax = gca;
号令行键入:
ax.CLim = [0 500];
利用近似的方式可以比力红色与蓝色以及绿色与蓝色的本家儿导性。
号令行键入:
histogram2(g,b,'DisplayStyle','tile','ShowEmptyBins','on',...
'XBinLimits',[0 255],'YBinLimits',[0 255]);
axis equal
colorbar
xlabel('Green Values')
ylabel('Blue Values')
title('Green vs. Blue Pixel Components')
ax = gca;
ax.CLim = [0 500];
在每种环境下,蓝色都是最不占本家儿导性的颜色旌旗灯号。看看所有这三个直方图,红色似乎为本家儿导颜色。
在 RGB 颜色空间中建立一个颜色直方图,对成果进行确认。对于所有这三个颜色分量,较小的 RGB 值都有峰值。但比拟其他任何分量,100 以上的值更多呈现在红色分量中。
0 篇文章
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!