您的位置:首页 > 其它

直方图均衡化原理之概率论相关知识

2015-06-24 02:05 357 查看

直方图均衡化原理之概率论相关知识

写这篇文章的主要目的是解释一下在直方图均衡化理论基础中所用到的概率论知识。

先大致介绍一下直方图均衡化理论基础(个人比较懒,书上说的很好,直接上图啦,哈哈):





原理大致就是这样的,其中会涉及一个由概率论所得的公式(3-9),猛的一看不知道是从哪来的,而且一般的原理介绍中都是直接给出。其实这个公式是概率论随机变量函数分布中的一个定理,其具体内容及推导过程仍然如下图所示(感兴趣的也可以自己随便找本概率论书看一下);





多嘴一句,其实直方图均衡化就是使一幅图片占有尽可能多的灰度级并尽量均匀分布,从而使图片对比度更高,灰度色调更为丰富。如下图为使用MATLAB写的一个例程利用直方图均衡化技术实现图像的灰度归一化,效果图:



MATLAB代码:

I = imread('pout.tif');     % 读入原图像
I = im2double(I);           % 转换数据类型为double

%对比度较高的图像均衡化效果
I1 = 2*I - 55/255;
subplot( 4, 4, 1);
imshow(I1);
subplot( 4, 4, 2);
imhist(I1);
title('对比度较高图像(左)的直方图均衡化效果(右)');
subplot( 4, 4, 3);
imshow(histeq(I1));%histeq(I)为MATLAB中用于直方图均衡化的函数
subplot( 4, 4, 4);
imhist(histeq(I1));
%对比度较低的图像均衡化效果
I2 = 0.5*I + 55/255;
subplot( 4, 4, 5);
imshow(I2);
subplot( 4, 4, 6);
imhist(I2);
title('对比度较低图像(左)的直方图均衡化效果(右)');
subplot( 4, 4, 7);
imshow(histeq(I2));%histeq(I)为MATLAB中用于直方图均衡化的函数
subplot( 4, 4, 8);
imhist(histeq(I2));
%亮度较高的图像均衡化效果
I3 = I + 55/255;
subplot( 4, 4, 9);
imshow(I3);
subplot( 4, 4, 10);
imhist(I3);
title('亮度较高图像(左)的直方图均衡化效果(右)');
subplot( 4, 4, 11);
imshow(histeq(I3));%histeq(I)为MATLAB中用于直方图均衡化的函数
subplot( 4, 4, 12);
imhist(histeq(I3));
%亮度较低的图像均衡化效果
I4 = I - 55/255;
subplot( 4, 4, 13);
imshow(I4);
subplot( 4, 4, 14);
imhist(I4);
title('亮度较低图像(左)的直方图均衡化效果(右)');
subplot( 4, 4, 15);
imshow(histeq(I4));%histeq(I)为MATLAB中用于直方图均衡化的函数
subplot( 4, 4, 16);
imhist(histeq(I4));
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: