图像增强中直方图均衡化的Matlab 实现

时间:2026-04-23

图像增强中直方图均衡化的Matlab 实现

摘要:本文采用直方图均衡化的图像增强的基本原理, 借助数学公式, 在Matlab环境下, 对数字图像进行直方图均衡化处理, 实现原始图像直方图均匀分布, 增加像素灰度值的动态范围, 提高了图像的对比度。

关键词:图像增强, 直方图,均衡化, Matlab

ABSTRACT:In this paper, the basic principle of histogram equalization , image enhancement , with the mathematical formula , in the Matlab environment for digital image histogram equalization , to achieve uniform distribution of the original image histogram , increasing the dynamic range of pixel gray value , improve contrast of the image .

KEYWORDS:image enhancement;histograme ;qualization;Matlab

1引言

图像增强是指对图像的某些特征,如边缘、轮廓或对比度等进行强调或尖锐化。当一幅图像曝光不足或过度,造成对比度过小或过大而不能显示具体细节,通过增加这些细节的动态范围改善图像的视觉效果。图像增强可以突出图像中所感兴趣的特征信息,改善图像的主观视觉质量,提高图像的可懂度。

增强的首要目标是处理图像使其比原始图像更适合于特定应用。图像增强的方法分为两大类:空间域方法和频域方法。“空间域”一词是指图像平面本身,这类方法是以对图像的像素直接处理为基础的。“频域”处理技术是以修改图像的傅氏变换为基础的。一般说来,原始遥感数据的灰度值范围都比较窄,这个范围通常比显示器的显示范围小的多。增强处理可将其灰度范围拉伸到0-255的灰度级之间来显示,从而使图像对比度提高,质量改善。增强主要以图像的灰度直方图最为分析处理的基础。直方图均衡化能够增强整个图像的对比度,提高图像的辨析程度,算法简单,增强效果好。本文主要讨论了空间域的直方图均衡化增强, 并用Matlab 进行实验验证。

2 直方图图像增强的基本理论

大多数原始的遥感图像由于其灰度分布集中在较窄的范围内,使图像的细节不够清晰,对比度较低。为了使图像的灰度范围拉开或使灰度均匀分布,从而增大反差,使图像细节清晰,以达到增强的目的,通常采用直方图均衡化及直方图规定化两种变换。本文主要介绍直方图均衡化并进行实验。

2.1 直方图均衡化的概念

直方图均衡化(Histogram Equalization) 又称直方图平坦化,实质上是对图像进行非线性拉伸,重新分配图像象元值,使一定灰度范围内象元值的数量大致相等。这样,原来直方图中间的峰顶部分对比度得到增强,而两侧的谷底部分对比度降低,输出图像的直方图是一个较平的分段直方图:如果输出数据分段值较小的话,会产生粗略分类的视觉效果。

2.2 图像灰度直方图

直方图是表示数字图像中每一灰度出现频率的统计关系。直方图能给出图像灰度范围、每个灰度的频度和灰度的分布、整幅图像的平均明暗和对比度等概貌性描述。灰度直方图是灰度级的函数, 反映的是图像中具有该灰度级像素的个数, 其横坐标是灰度级r, 纵坐标是该灰度级出现的频率( 即像素的个数) pr( r) , 整个坐标系描述的是图像灰度级的分布情况, 由此可以看出图像的灰度分布特性, 即若大部分像素集中在低灰度区域, 图像呈现暗的特性; 若像素集中在高灰度区域, 图像呈现亮的特性。

2.3 直方图均衡化

图1所示就是直方图均衡化, 即将随机分布的图像直方图修改成均匀分布的直方图。基本思想是对原始图像的像素灰度做某种映射变换, 使变换后图像灰 度的概率密度呈均匀分布。这就意味着图像灰度的动态范围得到了增加, 提高了图像的对比度。

图1 直方图均衡化

通过这种技术可以清晰地在直方图上看到图像亮度的分布情况, 并可按照需要对图像亮度调整。另外,这种方法是可逆的, 如果已知均衡化函数, 就可以恢复原始直方图。

3 直方图均衡化算法分析

设变量r 代表图像中像素灰度级。对灰度级进行归一化处理, 则0≤r≤1, 其中r= 0表示黑, r= 1表示白。对于一幅给定的图像来说, 每个像素值在[ 0,1] 的灰度级是随机的。用概率密度函数pr(r)来表示图像灰度级的分布。

为了有利于数字图像处理, 引入离散形式。在离散形式下, 用rk 代表离散灰度级, 用Pr(rk) 代表pr(r) , 并且下式成立:Pr(rk) nkn

其中, 0≤rk≤1, k=0, 1, 2, , n-1。式中nk 为图像中出现rk这种灰度的像素数, n是图像中的像素总数, 而

图均衡化的函数表达式为:

k 1nkn就是概率论中的频数。图像进行直方

Si T(ri)

i 0nin

式中, k为灰度级数。相应的反变换为:

r Ti 1(Si)

4 Matlab环境下算法实现及结果分析

4.1实验过程

本文选取一张人物图像进行算法实验, 文件可存储栅格、矢量、DEM等多种格式,支持用户自定义数据, 是一种开放式的数据格式。为了便于操作, 实验采用IMG格式的数据结构。

在Matlab中自定义M文件, 输入如下算法程序:

clc;

clear;

I= imread('a.jpg');

I= rgb2gray(I) ; %将图像转换为灰度图像

J= histeq( I) ; %对I 进行直方图均衡化

subplot( 121) ,imshow(I) ,title('原始图像') ;

subplot (122), imshow(J), title('直方图均衡化后的图像');

figure( 2) ;

subplot( 121) ,imhist(I, 64), title( '原始的直方图');

subplot( 122) ,

imhist(J,64) ,

title(' 均衡化后的直方图');

4.2 实验结果

Matlab环境下的实验结果 …… 此处隐藏:481字,全部文档内容请下载后查看。喜欢就下载吧 ……

图像增强中直方图均衡化的Matlab 实现.doc 将本文的Word文档下载到电脑

    精彩图片

    热门精选

    大家正在看

    × 游客快捷下载通道(下载后可以自由复制和排版)

    限时特价:4.9 元/份 原价:20元

    支付方式:

    开通VIP包月会员 特价:19元/月

    注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
    微信:fanwen365 QQ:370150219