怎么用Matlab实现图像亮度分布统计图(matlab,开发技术)

时间:2024-05-05 23:26:58 作者 : 石家庄SEO 分类 : 开发技术
  • TAG :

写了一个输入图片,便会生成美观的图像各通道亮度分布图的函数,大概效果如下:

怎么用Matlab实现图像亮度分布统计图

怎么用Matlab实现图像亮度分布统计图

老样子,工具函数放在最前面,之后会介绍咋用这个函数:

工具函数

functionHistogramPic(pic)FreqNum=zeros(size(pic,3),256);fori=1:size(pic,3)forj=0:255FreqNum(i,j+1)=sum(sum(pic(:,:,i)==j));endendax=gca;hold(ax,'on');boxon;gridonifsize(FreqNum,1)==3bar(0:255,FreqNum(1,:),'FaceColor',[0.63500.07800.1840],'FaceAlpha',0.5);bar(0:255,FreqNum(2,:),'FaceColor',[0.24000.53000.0900],'FaceAlpha',0.5);bar(0:255,FreqNum(3,:),'FaceColor',[00.44700.7410],'FaceAlpha',0.5);ax.XLabel.String='RGBbrightness';rrange=[num2str(min(pic(:,:,1),[],[1,2])),',',num2str(max(pic(:,:,1),[],[1,2]))];grange=[num2str(min(pic(:,:,2),[],[1,2])),',',num2str(max(pic(:,:,2),[],[1,2]))];brange=[num2str(min(pic(:,:,3),[],[1,2])),',',num2str(max(pic(:,:,3),[],[1,2]))];legend({['R:range[',rrange,']'],['G:range[',grange,']'],['B:range[',brange,']']},...'Location','northwest','Color',[0.94120.94120.9412],...'FontName','Cambria','LineWidth',0.8,'FontSize',11);elsebar(0:255,FreqNum(1,:),'FaceColor',[0.500.500.50],'FaceAlpha',0.5);ax.XLabel.String='Grayscale';krange=[num2str(min(pic(:,:,1),[],[1,2])),',',num2str(max(pic(:,:,1),[],[1,2]))];legend(['Gray:range[',krange,']'],...'Location','northwest','Color',[0.94120.94120.9412],...'FontName','Cambria','LineWidth',0.8,'FontSize',11);endax.LineWidth=1;ax.GridLineStyle='--';ax.XLim=[-5255];ax.XTick=[0:45:255,255];ax.YLabel.String='Frequencynumber';ax.FontName='Cambria';ax.FontSize=13;end

函数调用

非常简单的使用方法,就是读取图片后调用函数即可:

pic=imread('test.png');HistogramPic(pic)

若图像是彩图则效果如下:

怎么用Matlab实现图像亮度分布统计图

怎么用Matlab实现图像亮度分布统计图

若图像为灰度图则效果如下:

怎么用Matlab实现图像亮度分布统计图

怎么用Matlab实现图像亮度分布统计图

 </div> <div class="zixun-tj-product adv-bottom"></div> </div> </div> <div class="prve-next-news">
本文:怎么用Matlab实现图像亮度分布统计图的详细内容,希望对您有所帮助,信息来源于网络。
上一篇:jquery异步请求的方法有哪些下一篇:

4 人围观 / 0 条评论 ↓快速评论↓

(必须)

(必须,保密)

阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18