直方图均衡

前言

这学期开设了数据图像处理,简单记录下学习过程

什么是数字图像的直方图

首先来看灰度级的定义:

  • 灰度级:表示像素明暗程度的整数量

    例如:像素的取值范围为0-255,就称该 图像为256个灰度级的图像

对于直方图而言,一个灰度级在范围[0,L-1]的数字图像的直方图是一个离散函数:

$n_k$是图像中灰度级为$r_k$的像素个数

$r_k$ 是第k个灰度级k = 0,1,2,…,L-1

由于灰度级r_k的增量是1,直方图函数可以表示为:$$

什么是直方图均衡化

  • 希望一幅图像的像素占有全部可能的灰度级 且分布均匀,能够具有高对比度
  • 使用的方法是灰度级变换:s = T(r)
  • 基本思想是把原始图的直方图变换为均匀分 布的形式,这样就增加了像素灰度值的动态 范围,从而达到增强图像整体对比度的效果

MATLAB代码实现

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
I = imread('content_1400.png');

% 对图片进行转换
figure
subplot(2,2,1)
imshow(I)
I1=rgb2gray(I) %转为灰度图片
subplot(2,2,2)
imshow(I1)
subplot(2,2,3)
imhist(I,64)

%直方图均匀化
figure
J = histeq(I1) %直方图均匀化函数
subplot(1,2,1)
imshow(J)
subplot(1,2,2)
imhist(J,64) %直方图

可以看到对于其直方图分布来说,已经变得均匀了许多。

镜头边界的检测

什么是镜头?

  • 从视频的制造产生来看,视频由一个个镜头 (shot)所组成
  • 一个镜头是指一系列连续记录的图像帧,用于 表示一个时间段或相同地点连续的动作
  • 镜头由摄像机一次摄像的开始和结束所决

空间滤波器

M×N 的图像f上,使用 m×n 的滤波器进行空间滤波,可以由下式表示:

其中,m=2a+1,n=2b+1, w(s,t)是滤波器系数,f(x,y)是图像值,x与y为可变变量使得w中的每个像素可以访问f中的每个像素。

摘自《数字图像处理》