imread函数 matlab_MATLAB中的直方图处理及均衡化

fc69c3de02a61528d820cbee82f8197b.png点击上方“蓝字”,关注我们.

直方图是多种空间域处理技术的基础。仿图操作能有效地用于图像增强,直方图固有的信息在其他图像处理应用中也是非常有用的。

如图像压缩与分割。仿图在软件中易于计算,也适用于商用硬件设备,因此直方图成为实时图像处理的一个流行工具。

imhist函数

1ca8bb43f49284c658b7f77c0c15315c.png

在MATLAB中,我们使用imhist函数来显示一-幅图像的直方图。 imhist函数多用于根据导入的图像绘制直方图,应用范围较广,其基本语法是:
h=imhist(f,b)
其中的f是输入的图像,h为其直方图,b是灰度级的个数。默认情况下,可直接写作:
imhist(f)
例如,导入一张图片,然后运行:
I=imread('hx.jpg');
imhist(I)

71de2f44de437c43d4e96825e7f85b64.png

可以看到,我们这里已经绘制出了这幅图片的直方图。二 直方图处理实践

1ca8bb43f49284c658b7f77c0c15315c.png

题目:自定义一个函数,将输入图像(hx.jpg)进行直方图均衡化处理,该函数输入参数为处理前的图像,输出处理后的图像并显示处理过程中的灰度直方图。

3ef8f0654b968f279d87305998e04755.png

1.读取图像并显示
I=imread('hx.jpg');   %读入图像
figure
subplot(2,3,1); %在窗口中排列图像
imshow(I) %X显示图像
title('原始图像'); %赋标题
2.转化为灰度图
J=rgb2gray(I);     %转化为灰度图
subplot(2,3,2);
imshow(J);
title('原图像灰度图');
3.绘制灰度直方图
subplot(2,3,3);
imhist(J);
title('灰度直方图');
4.直方图均衡化,这里用到了adapthisteq函数,adapthisteq函数使用限制对比度的自适应直方图均衡化 (CLAHE) 来变换值,从而增强灰度图像 I 的对比度[1]。
subplot(2,3,4);
H=adapthisteq(J); %对灰度直方图均衡化处理
imhist(H);
title('直方图均衡化');
5.输出均衡化后的图像。
subplot(2,3,5);
imshow(H);
title('均衡化后的图像');

53cf49eafad4a76e03b57650443a81ca.png

运行结果如图所示,可以看到我们处理的效果还是不错的。 3b2597da84f685d3b3fa80f2975984ca.pngEND

另外直方图的均衡化可以通过一串源代码来实现,由于篇幅有限,编程实现的代码请到公众号回复 直方图均衡化 获取。

关于MATLAB的学习:

大家可以关注我们的知乎专栏——数据可视化和数据分析中matlab的使用:

https://zhuanlan.zhihu.com/c_1131568134137692160

欢迎大家加入我们的MATLAB学习交流群:

953314432

▼往期精彩回顾▼数学建模与MATLAB应用——图与网络模型数学建模与MATLAB--非线性规划数学建模与MATLAB——动态规划 bc133aa9dc15af958ec0c05bf75e040e.png 80f5bdc666a6471d0498b9a440fb3037.png f0da3d54c700c2a45212f4c0e64a8a36.gif扫码关注我们更多精彩等待你发现 出品:Asoul水云天课堂工作室 f0da3d54c700c2a45212f4c0e64a8a36.gif
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值