使用MATLAB计算RGB数据的颜色直方图
展开全部
I=imread('sample.bmp'); % 文件名自己改
siz=size(I);
I1=reshape(I,siz(1)*siz(2),siz(3)); % 每个颜色通道变为一列
I1=double(I1);
[N,X]=hist(I1, [0:1:255]); % 如果需要小矩形宽一点,划分区域少点,可以把步长改大,比如0:5:255
bar(X,N(:,[3 2 1])); % 柱形图,用N(:,[3 2 1])是因为默认绘图的时候采用的颜色顺序为b,g,r,c,m,y,k,跟图片的rgb顺序正好相反,所以把图片列的顺序倒过来,让图片颜色通道跟绘制时的颜色一致
xlim([0 255])
hold on
plot(X,N(:,[3 2 1])); % 上边界轮廓
hold off
siz=size(I);
I1=reshape(I,siz(1)*siz(2),siz(3)); % 每个颜色通道变为一列
I1=double(I1);
[N,X]=hist(I1, [0:1:255]); % 如果需要小矩形宽一点,划分区域少点,可以把步长改大,比如0:5:255
bar(X,N(:,[3 2 1])); % 柱形图,用N(:,[3 2 1])是因为默认绘图的时候采用的颜色顺序为b,g,r,c,m,y,k,跟图片的rgb顺序正好相反,所以把图片列的顺序倒过来,让图片颜色通道跟绘制时的颜色一致
xlim([0 255])
hold on
plot(X,N(:,[3 2 1])); % 上边界轮廓
hold off
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
--
2022-12-05 广告
2022-12-05 广告
图形化编程简单理解为用积木块形式编程,scratch和python也是其中的一种,属于入门级编程,以其简单生动的画面获得无数学生的喜爱,深圳市创客火科技有限公司是一家做教育无人机的公司,旗下有编程无人机,积木无人机及室内外编队,每款飞机含有...
点击进入详情页
本回答由--提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询