灰度直方图
图像处理6灰度直方图和直方图均衡化

图像处理6灰度直⽅图和直⽅图均衡化灰度直⽅图介绍灰度直⽅图(Gray histogram)是关于灰度级分布的函数,是对图像中灰度级分布的统计。
灰度直⽅图是将数字图像中的所有像素,按照灰度值的⼤⼩,统计其出现的频率。
灰度直⽅图是灰度级的函数,它表⽰图像中具有某种灰度级的像素的个数,反映了图像中某种灰度出现的频率。
如果将图像总像素亮度(灰度级别)看成是⼀个随机变量,则其分布情况就反映了图像的统计特性,这可⽤probability density function (PDF)来刻画和描述,表现为灰度直⽅图。
实现以下代码便于理解灰度直⽅图的计算,其中histogram函数是基于numpy简化的,运⾏结果如下。
# coding: utf8from skimage import dataimport matplotlib.pyplot as pltimport numpy as npdef histogram(a, bins=10, range=None):"""Compute the histogram of a set of data."""import numpy as npfrom numpy.core import linspacefrom numpy.core.numeric import (arange, asarray)# 转成⼀维数组a = asarray(a)a = a.ravel()mn, mx = [mi + 0.0 for mi in range]ntype = np.dtype(np.intp)n = np.zeros(bins, ntype)# 预计算直⽅图缩放因⼦norm = bins / (mx - mn)# 均分,计算边缘以进⾏潜在的校正bin_edges = linspace(mn, mx, bins + 1, endpoint=True)# 分块对于⼤数组可以降低运⾏内存,同时提⾼速度BLOCK = 65536for i in arange(0, len(a), BLOCK):tmp_a = a[i:i + BLOCK]tmp_a_data = tmp_a.astype(float)# 减去Range下限,乘以缩放因⼦,向下取整tmp_a = tmp_a_data - mntmp_a *= normindices = tmp_a.astype(np.intp)# 对indices标签分别计数,标签等于bins减⼀indices[indices == bins] -= 1n += np.bincount(indices, weights=None,minlength=bins).astype(ntype)return n, bin_edgesif__name__ =="__main__":img=data.coffee()fig = plt.figure()f1 = fig.add_subplot(141)f1.imshow(img)f1.set_title("image")f2 = fig.add_subplot(142)arr=img.flatten()n, bins, patches = f2.hist(arr, bins=256, facecolor='red')f2.set_title("plt_hist")f3 = fig.add_subplot(143)hist, others = np.histogram(arr, range=(0, arr.max()), bins=256)f3.plot(others[1:],hist)f3.set_title("np_hist1")f4 = fig.add_subplot(144)hist, others = histogram(arr, range=(0, arr.max()), bins=256)f4.plot(others[1:], hist)f4.set_title("np_hist2")plt.show()关于bincount函数,可以参考Xurtle的博⽂https:///xlinsist/article/details/51346523bin的数量⽐x中的最⼤值⼤1,每个bin给出了它的索引值在x中出现的次数。
灰度直方图的用途

灰度直方图的用途灰度直方图(grayscale histogram)是一种统计图表,用于表示图像中每个灰度级别的像素数量。
它将图像的灰度级别作为横坐标,像素数量作为纵坐标,能够直观地展示图像中各个灰度级别像素的分布情况。
灰度直方图在计算机视觉和图像处理领域有着广泛的应用,以下将详细介绍它的用途。
1. 图像增强与调整灰度直方图可以帮助我们快速了解图像的亮度分布情况。
通过观察图像的灰度直方图,我们可以判断图像的亮度范围,并根据需要进行图像增强和调整。
例如,如果图像的灰度分布集中在较低的亮度范围,我们可以通过直方图均衡化等算法来增强图像的对比度,使得图像更加清晰明亮。
2. 图像分割与阈值处理利用灰度直方图,我们可以选择适当的阈值来进行图像分割。
图像分割是将图像划分为几个具有独立意义的区域,常用于目标检测和图像识别等应用。
通过分析灰度直方图可以确定一个或多个阈值,将图像分割成不同的区域,从而提取出感兴趣的目标。
3. 图像质量评估灰度直方图可以用于图像质量的评估和比较。
不同的图像质量可能对应着不同的灰度分布情况,通过对比不同图像的灰度直方图,我们可以直观地了解图像的细节信息和对比度。
在图像压缩、图像传输和图像复原等应用中,可以通过灰度直方图的对比来评估图像的质量,并确定是否需要使用图像增强或去噪等算法来改善图像的质量。
4. 图像匹配与检索利用灰度直方图可以进行图像的匹配与检索。
在图像数据库中,通过计算图像的灰度直方图,我们可以建立索引来加速图像的匹配和搜索。
通过对比查询图像与数据库中图像的灰度直方图相似性,可以找到与查询图像最相似的图像,从而实现图像的检索和识别。
5. 图像分类与识别灰度直方图也可用于图像分类与识别。
通过将图像的灰度直方图作为特征向量,我们可以训练分类器或者使用统计模型来对图像进行分类和识别。
例如,基于灰度直方图的人脸识别算法可以通过计算人脸图像的灰度直方图来进行人脸匹配和识别。
6. 图像分析与检测利用灰度直方图还可以进行图像的分析与检测。
第五章 遥感图像处理—图像增强

特征;其余三个分量与地物特征没有明确的对应关系。
七、多元信息复合
遥感图像信息融合(Fusion)是将多源遥感数据在统一的 地理坐标系中,采用一定的算法生成一组新的信息或合
其中:
k ( g 'max g 'min ) /( gmax gmin ) 255/ 52 4.9
b g 'ij kgij 0 49 49
2、非线性拉伸
(1)指数变换
xb be
(2)对数变换
axa
c
xb b度进行分层,每一层所包含的亮度值范围可以不
同。
图像密度分割原理可以按如下步骤进行:
(1)求图像的极大值dmax和极小值dmin; (2)求图像的密度区间ΔD = dmax-dmin + 1; (3)求分割层的密度差Δd =ΔD/n ,其中 n为需分割的层数;
(4)求各层的密度区间;
(5)定出各密度层灰度值或颜色。
减法运算可以增加不同地物间光谱反射率以及在 两个波段上变化趋势相反时的反差。不同时相同 一波段图像相减时,可以提取波段间的变化信息。
T M 4 影 像
T M 3 影 像
TM4-TM3影像
87 年 影 像
92 年 影 像 变化监测结果影像
(二)加法运算
B= i /m
i=1 m
加法运算可以加宽波段,如绿色波段和红色波 段图像相加可以得到近似全色图像;而绿色波 段,红色波段和红外波段图像相加可以得到全 色红外图像。
-1 -2 -1 0 0 0 1 2 1 1 2 0 -2 1 0 -1
第三章.图像灰度直方图变换

第三章图像灰度直方图变换在数字图像处理中,灰度直方图是最简单且最有用的工具,可以说,对图像的分析与观察直到形成一个有效的处理方法,都离不开直方图。
直方图的定义:一个灰度级别在范围[0,L-1]的数字图象的直方图是一个离散函数p(rk)= nk/nn 是图象的像素总数,nk是图象中第k个灰度级的像素总数,rk 是第k个灰度级,k = 0,1,2,…,L-直方图的性质1)灰度直方图只能反映图像的灰度分布情况,而不能反映图像像素的位置,即丢失了像素的位置信息。
2)一幅图像对应唯一的灰度直方图,反之不成立。
不同的图像可对应相同的直方图。
直方图的应用:用来判断图像量化是否恰当灰度变换一、对比度展宽的目的:是一点对一点的灰度级的影射。
设新、旧图的灰度级分别为g 和f,g和f 均在[0,255]间变化。
目的:将人所关心的部分强调出来。
对比度展宽方法:二、灰级窗:只显示指定灰度级范围内的信息。
如: α=γ=0三、灰级窗切片:只保留感兴趣的部分,其余部分置为0。
直方图均衡化算法:设f、g分别为原图象和处理后的图像。
求出原图f的灰度直方图,设为h。
h为一个256维的向量。
求出图像f的总体像素个数Nf=m*n (m,n分别为图像的长和宽)计算每个灰度级的像素个数在整个图像中所占的百分比。
hs(i)=h(i)/Nf (i=0,1, (255)3)计算图像各灰度级的累计分布hp。
4)求出新图像g的灰度值。
作业1. 在图像灰度变换处理中,请总结出线性变换,非线性变换的适应性及各自的特点?. 已知一幅图像为:∑==ikkhihp)()(255,...,2,1=i⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡=22789321227881112388712439881228291010636921001001073910101002552547120025520010022525551f请对其进行灰度直方图的均衡化处理。
灰度直方图

第二章
一、灰度直方图的定义
3. 离散图像灰度直方图表明该灰度级上有多少个象素
H ( D) A( D) A( D 1)
H ( D) lim
D
A( D) A( D D) d A( D) D dD
第二章
一、灰度直方图的定义
4. 彩色图像二维直方图
坐标(Dx,Dy)处的值是指在红光图像中具有灰度值Dx,同时在蓝 光图像中具有灰度值Dy的象素对个数。
255
3.通过除以图像的面积来归一化灰度图像可以得到概率密度函数 (PDF)--与图像本身的象素个数无关 4.对面积函数进行同样的归一化处理可得到图象的累积分布函数 (CDF) 5.图像直方图为不连接区域直方图之和
第二章
三、灰度直方图的应用
1. 数字化参数
观察直方图可
以看出不合适的 数字化
第二章:灰度直方图
一、灰度直方图的定义 二、灰度直方图的性质 三、灰度直方图的应用
第二章
一、灰度直方图的定义
1.灰度直方图是灰度级的函数 2. 连续图像灰度直方图是阀值面积函数的导数的负值
A( D) A( D D) d H ( D) lim A( D) D D dD
第二章
三、灰度直方图的应用
2. 边界阈值选择(物体边界和面积的确定)
简单物体面积的 确定(见灰度直方 图的性质)
选取146为阀值点的二值化
第二章
三、灰度直方图的应用 3. 综合光密度、灰度级平均值
IOD是反映图像质量的一种有用度量
IOD可以通过图像的直方图求得
直方图

j 0 j 0 k k
nj n
乘以n,再四舍五 入取整
44
说明
由于数字图像灰度取值的离散性,通过四 舍五入使得变换后的灰度值出现了归并现 象,从而致使变换后的图像并非完全均匀 分布,但是相比原始直方图要均匀得多
直方图修正
2.直方图规定化/直方图匹配 在某些情况下,并不一定需要具有均匀直 方图的图像,有时需要具有特定的直方图 的图像,以便能够增强图像中某些灰度级。 直方图规定化方法就是针对上述思想提出 来的。 直方图规定化是使原图像灰度直方图变成 规定形状的直方图而对图像作修正的增强 方法
0.89
0.95 0.98 1.00
6/7
1 1 1
s3=6/7
985
0.24
s4=1
448
0.11
41
例:
原图像的直方图
均衡后图像的直方图
42
例:直方图均衡化示例
43
例:
思考问题: 若在原图像一行上连续8个像素的灰度值分 别为:0、1、2、3、4、5、6、7,则均衡 后,对应的灰度值为多少?
46
直方图规定化
可见,它是对直方图均衡化处理的一种有 效的扩展。直方图均衡化处理是直方图规 定化的一个特例 对于直方图规定化,下面仍从灰度连续变 化的概率密度函数出发进行推导,然后推 广出灰度离散的图像直方图规定化算法
47
直方图规定化
假设pr(r)和pz(z)分别表示已归一化的原始 图像灰度分布的概率密度函数和希望得到 的图像的概率密度函数 首先对原始图像进行直方图均衡化,即求 变换函数:
H Pi log2 Pi
i 0 L 1
17
灰度直方图

边界阈值选择
轮廓线提供了一个确立图像中简单物体的边界的 有效的方法。使用轮廓线作为边界的技术被称为 阈值化。 假定一幅图背景是深色的,其中有一个浅色的物 体。物体中的浅色像素产生了直方图上的右峰, 而背景中大量的灰度级产生了直方图上的左峰。 物体边界附近具有两个峰值之间灰度级的像素数 目相对较少,从而产生了两峰之间的谷。选择谷 作为灰度阈值将得到合理的边界。
直方图均衡化
直方图均衡化方法的基本思想是,对在图 像中像素个数多的灰度级进行展宽,而对 像素个数少的灰度级进行缩减。从而达到 清晰图像的目的(增强图像的整体对比 度)。 直方图均衡化处理的中心思想是把原始图 像的灰度直方图从比较集中的某个灰度区 间变成在全部灰度范围内的均匀分布。
直方图匹配(规定化)
对于两峰之间的最低点的灰度级作为阈值来确定边界是最 适合的。直方图是面积函数的导数。在谷底的附近,直方 图的值相对较小,意味着面积函数随阈值灰度级的变化很 缓慢。如果我们选择谷底处的灰度作为阈值,将可以使其 对物体的边界的影响达到最小。如果我们试图测量物体的 面积,选择谷底处阈值将使测量对于阈值灰度变化的敏感 降低到最小。
直方图均衡化校正不具备交互作用特性, 而直方图规定化校正在运用均衡化原理的 基础上,向人们提供了根据给定直方图作 图像增强的手段。 指定希望处理的图像所具有的直方图形状, 这种用于产生处理后又特殊直方图的图像 方法,叫做直方图匹配或直方图规格化处 理。
特点:
直方图均衡化的优点是能自动的增强整体 图像的对比度,但是它的具体增强效果却 不易控制,处理的结果总是得到全局均衡 化的直方图。 直方图规定化可以有选择的增强某个灰度 值范围内的对比度或使图像灰度值的分布 满足特的事图 像中该灰度级的像素个数。即:横坐标表 示灰度级,纵坐标表示图像中该灰度级出 现的频率(对数字图像即指像素的个数)。
灰度直方图

第三章灰度直方图目录1.灰度直方图2.直方图均衡化3.直方图规范化4.色彩直方图作业1.灰度直方图灰度直方图(histogram)是灰度级的函数,是图象的最基本的统计特征。
它表示图象中具有每种灰度级的象素的个数,反映图象中每种灰度出现的频率。
如下图所示,横坐标:灰度-r纵坐标:为某一灰度值ri的像素个数ni,或是灰度出现的概率P(r)从概率的观点来理解,灰度出现的频率可看作其出现的概率,这样直方图就对应于概率密度函数pdf(probability density function),而概率分布函数就是直方图的累积和,即概率密度函数的积分,如下图所示:灰度直方图的计算是很简单的,依据定义,若图象具有L (通常L=256,即8位灰度级)级灰度,则大小为MxN的灰度图象f(x,y)的灰度直方图hist[0…L-1]可用如下计算获得:1.初始化hist[k]=0 ; k=0,…,L-12.统计hist[k] ; x, y =0,…,M-1, 0,…,N-13.如果需要标准化,则hist[k]/=M*N例:直方图算法实现例: 通过直方图求图像中的灰度的最大、最小和中值。
例:通过直方图求图像的亮度和对比度。
注2:图像的亮度和对比度图像的亮度(brightness ):即图像矩阵的平均值,其值越小越暗。
Brightness=图像的对比度(contrast ):即图像矩阵的均方差(标准差),对比度越大,图像中黑白反差越明显。
Contrast=1100(,)MN y x g x y M N −−==×∑∑11200((,))M N y x M Ng x y brightness −−==×−∑∑1)unsigned long hist[256]; unsigned char *pCur;for(int i=0;i<256;i++)hist[i]=0;int ImgSize=width*height;for(i=0,pCur=pImg;i<ImgSize;i++) hist[*(pCur++)]++;2)for (g=255;g>=0;g--)if (hist[g])break;maxGray=g;for (g=0;g<256;g++)I f (hist[g])break;minGray=g;for(g=sum=0;g<256;g++) {sum+=hist[g];if (sum>=ImgSize/2)break;}medGray=g;3)for(g=sum=0;g<256;g++)sum+=g*hist[g];brightness=1.0*sum/ImgSize;for(g=sum=0;g<256;g++)sum+= (g-brightness)* (g-brightness)*hist[g]; contrast=sqrt(sum/ImgSize);直方图具有很多的优点,直方图能反映图象的概貌,比如图像中有几类目标,目标和背景的分布如何;通过直方图可以直接计算图像中的最大亮度、最小亮度、平均亮度、对比度以及中间亮度等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.灰度直方图
灰度直方图(histogram)是灰度级的函数,它表示图象中具有每种灰度级的象素的个数,反映图象中每种灰度出现的频率。
如下图所示,灰度直方图的横坐标是灰度级,纵坐标是该灰度级出现的频率,是图象的最基本的统计特征。
从概率的观点来理解,灰度出现的频率可看作其出现的概率,这样直方图就对应于概率密度函数pdf(probability density function),而概率分布函数就是直方图的累积和,即概率密度函数的积分,如下图所示:
若直接从代表每种灰度的象素数目的直方图来观察,常用如下的表示:
dr
r dP r p dr r p r P r
)()(,
)()(0
=
=⎰∑⎰⎰⎰===≈
===
==
=k
i i
k k k k k r
r
n
n
r P n n r p n r n A dA
r p dr dr
r H A r P A dr
r dA A r H r p dr
r H A dr r H r A 00
0000255
00
)()()(1)(1)(,/)()()()()(,
)()(,而概率分布函数,则概率密度的象素数为,灰度为若记象素总数为,时,在离散情况下,取概率密度象素总数一幅图象的总面积,或
灰度直方图的计算是很简单的,依据定义,若图象具有L(通常L=256,
即8位灰度级)级灰度,则大小为MxN的灰度图象f(x,y)的灰度直方图hist[0…L-1]可用如下计算获得:
1. 1.初始化 hist[k]=0 ; k=0,…,L-1
2. 2.统计 hist[f(x,y)]++ ; x, y =0,…,M-1, 0,…,N-1
3. 3.标准化 hist[f(x,y)]/=M*N
2.直方图均衡化
直方图均衡化是通过灰度变换将一幅图象转换为另一幅具有均衡直方图,即在每个灰度级上都具有相同的象素点数的过程。
设灰度变换s=f(r)为斜率有限的非减连续可微函数,它将输入图象A(x,y)
转换为输出图象B(x,y),输入图象的直方图为H
A (r),输出图象的直方图为H
B
(s),
则它们的关系可由如下过程导出:
例如,下图是直方图均衡化后的飞机图片及其直方图,可见其直方图与原图的直方图相比是很均衡的,但必须说明的是,离散情况下不可能作到绝对的一致。
∑
⎰⎰=======
k
i i
k k m r
A m r A m A m
B n
n r P r P R r f dr r H A r P r P R dr r H A R r f r H A R r f s H 00
0000
)(,)()()(1)(,)()()()()(')(其中离散情况下,数(概率分布函数)。
变换函数是累积分布函使直方图均衡化的灰度结论:其中常数,即:一比例常数时,它就为的分子和分母函数只差由此可见,当上式中)
(,'))(('))
(()(')()()()()(111s f r dr
df
f s f f s f H r f r H dr ds r H s H dr
r H ds s H A A A B A B ---===
===其中故面积元相等:过灰度变换后对应的小根据直方图的含义,经
3.直方图规范化
直方图规范化是指将一幅图象通过灰度变换后,使其具有特定的直方图形式,如使图象与某一标准图象具有相同的直方图,或使图象具有某一特定函数形式的直方图。
(D)的图象C(x,y)。
首如下图所示,希望将图象A(x,y)变换为具有特定直方图H
3
先利用直方图均衡化将图象A(x,y)变换为具有平坦直方图的图象B(x,y),再利用第二个灰度变换将B(x,y)变换为C(x,y):
4.色彩直方图
色彩直方图是高维直方图的特例,它统计色彩的出现频率,即色彩的概率分布信息。
通常这需要一定的量化过程,将色彩分成若干互不重叠的种类。
一般不直接在RGB 色彩空间中统计,而是在将亮度分离出来后,对代表色彩部分的信息进行统计,如在HSI 空间的HS 子空间、YUV 空间的UV 子空间,以及其它反映人类视觉特点的彩色空间表示中进行。
例如,下图是统计肤色分布情况的例子。
)]},([{)]},([{),()()/()()],([),(,)],([),(1133133y x A P P y x A f g y x C r P R R r P r g y x C P R y x B y x B g y x C m m m --===∴==故的反函数
是且Θ
直方图英文名称是(HISTOGRAM),相机上显示的直方图和PHOTOSHOP使用的直方图都是灰度直方图,从图形上说,它是一个二维图,,用坐标表示。
横坐标表示图象中各个像素点的灰度级。
(0到255个级别,一般人眼能够分辨的只有32个级别,人眼对光的强度变化非常敏感,而对颜色的变化就比较弱,目前,流行的视频压缩软件都是应用这一原理,比如RM)它是多种空间域处理技术的基础。
直方图操作能够有效用于图像增强;提供有用的图像统计资料,其在软件中易于计算,适用于商用硬件设备。
纵坐标为各个灰度级上图象各个像素点出现的次数或概率.各个软件细分程度不同。
1.表征了图像的一维信息。
只反映图像中像素不同灰度值出现的次数(或频数)而未反映像
素所在位置。
2.与图像之间的关系是多对一的映射关系。
一幅图像唯一确定出与之对应的直方图,但不同图像可能有相同的直方图。
3.子图直方图之和为整图的直方图。
灰度直方图
以通过直方图的状态来评断图像的一些性质:明亮图像的直方图倾向于灰度级高的一侧;低对比度图像的直方图窄而集中于灰度级的中部,高对比度图像的直方图成分覆盖的灰度级很宽而且像素的分布没有不太均匀,只有少量的垂线比其他高许多。
直观上来说:若一幅图像其像素占有全部可能的灰度级并且分布均匀,则这样的图像有高对比度和多变的灰度色调。
从概率的观点来理解,灰度出现的频率可看作其出现的概率,这样直方图就对应于概率密度函数(probabilitydensityfunction),而概率分布函数就是直方图的累积和,即概率密度函数的积分。