matlab实现直方图均衡化

版权声明:文章版权归作者所有,请不要随意转载抄袭,情节严重,追究法律责任!! https://blog.csdn.net/Ibelievesunshine/article/details/79961027

直方图均衡化是一种利用灰度变换自动调节图像对比度质量的方法,基本思想是通过灰度级的概率密度函数求出灰度变换函数,它是一种以累计分布函数变换法为基础的直方图修正法。

直方图均衡化处理的步骤如下:

1. 求出给定待处理图像的直方图

2. 利用累计分布函数对原图像的统计直方图做变换,得到新的图像灰度。

3. 进行近似处理,将新灰度代替旧灰度,同时将灰度值相等或相近的每个灰度直方图合并在一起

MATLAB实现直方图均衡化处理的函数是:J=histeq(I,n):I为输入的原图像,J为直方图均衡化后得到的图像,n为均衡化后的灰度级数,默认值为64

直方图均衡化操作是对图像直方图进行处理,使得处理后的直方图为平坦形状。函数histeq()不仅能够对灰度图像进行直方图均衡化,还可以对索引图像进行直方图均衡化。

函数histeq()对图像进行直方图均衡化处理实例:

close all;clear all;clc;
%函数histeq()进行直方图均衡化处理
I=imread('tire.tif');
J=histeq(I);  %直方图均衡化
figure,
subplot(121),imshow(uint8(I));
title('原图')
subplot(122),imshow(uint8(J));
title('均衡化后')
figure,
subplot(121),imhist(I,64);
title('原图像直方图');
subplot(122),imhist(J,64);
title('均衡化后的直方图');


------坚持就是胜利------

猜你喜欢

转载自blog.csdn.net/Ibelievesunshine/article/details/79961027