数字图像的表示
可以用f(s,t)表示一幅具有两个连续变量s和t的连续图像函数通过取样(数字化坐标轴)和量化(数字化幅度值),可以该函数转化成为数字图像。我们取样到了一个二维阵列f(x,y),(x,y)是离散坐标。同时也可以将该二维阵列看成是M行N列的矩阵,该矩阵中的每个元素称为图像单元、或者像素。
灰度:单色图像在任何坐标(x,y)处的强度。[Lmin,Lmax]称为灰度级,通常另起区间为[0,L-1],其中为0的时候显示为黑色,为L-1的时候在灰度级中显示为白色。
动态范围:有事灰度级取值范围称为图像的动态范围,高动态范围图像占有灰度级全部有效段,具有较高的对比度,而低动态范围图像是冲淡了的灰暗格调
图像的数字化过程,要考虑M、N值和离散灰度级数L做出判定,出于存储和量化硬件的考虑,灰度级数典型的取为2的整数次幂,即L=2^k
。
那么存储数字图像所需的比特数b为b=MNk。
采样分辨率:单位长度上所包含的采样数
空间分辨率:图像中可辨别的最小细节的度量。每单位距离线对数和每单位距离点数(像素数)是最常用的度量。
灰度分辨率:在灰度级中可分辨的最小变化,不像空间分辨率必须以每单位距离作为量化基础,灰度分辨率指的是用于量化灰度的比特数
数字图像的处理
-
点运算
Gb=f(Ga)=aG+b
a=1,b=0图像没有变化
a=1.b>0或b<0,图像变亮或者变暗
a>1,b=0,图像对比度增强
a<1,b=0,图像对比度减弱
总结:点对点的灰度值进行计算
-
代数运算
C(x,y) = A(x,y) + B(x,y) C(x,y) = A(x,y) - B(x,y) C(x,y) = A(x,y) * B(x,y) C(x,y) = A(x,y) / B(x,y)
加减乘除等点对点的代数运算,不是矩阵的运算
eg:图像混合
imgadd.png
-
几何运算
对于点的运算都不会改变图像各部分之间的几何关系,图像转动、扭曲、倾斜、拉伸是几何运算的结果,
点运算、代数运算只涉及到特定点的灰度值的变化,而几何变换涉及到空间点位置的变化、灰度值的变化等
1.最临近插值法
最简单的插值方法是所谓零阶插值或称为最近邻插值,即令输出像素的灰度值等于离它所映射到的位置最近的输入像素的灰度值
2.双线插值算法
一阶插值(或称双线性插值法)和零阶插值法相比可产生更令人满意的效果。只是程序稍复杂一些,运行时间稍长一些。由于通过四点确定一个平面是一个过约束问题,所以在一个矩形栅格上进行的一阶插值就需要用到双线性函数。
eg:令f(x,y)为两个变量的函数,其在单位正方形顶点的值已知。假设我们希望通过插值得到正方形内任意点的f(x,y)值。我们可由如下双曲线方程:
f(x,y)=ax+by+cxy+d
-
基于灰度变换的图像增强
常见办法: 将f(.)中的象素按EH操作直接变换以得到g(.); 借助f(.)的直方图进行变换;借助对一系列图像间的操作进行变换
灰度变换:将一个灰度区间映射到另一个灰度区间的变换称为灰度变换
灰度变换的目的:灰度变换可使图像动态范围加大,图像对比度扩展,图像清晰,特征明显,是图像增强的重要手段。
基本直接灰度变换:图像反转,增强对比度,压缩动态范围,灰度切片
-
直方图处理
横坐标为灰度级的值,纵坐标为某个灰度级出现的次数。为了便于表示,往往将纵坐标用出现概率表示
直方图均衡方法的基本思想是对在图像中像素个数多的灰度级进行展宽,而对像素个数少的灰度级进行缩减。从而达到清晰图像的目的
直方图均衡化基本算法
设有Kbit图像f做直方图均衡化后得到图像g。以下以k=8为例说明
1)求出原图f的灰度直方图,设为h。 h为一个2^k维的向量
2)求出图像f的总体像素个数 Nf=m*n (m,n分别为图像的长和宽)计算每个灰度级的像素个数在整个图像中
所占的百分比。 hs(i)=h(i)/Nf (i=0,1,…,255)
3)计算图像各灰度级的累计分布hp。
hp(i)=hs(k)的累加
4)求出新图像g的灰度值
g=(2^k-1)*hp(i)
-
区别与联系
幅度分布函数
幅度密度函数
灰度直方图
灰度直方图是关于灰度级分布的函数,是对图像中灰度级分布的统计。灰度直方图是将数字图像中的所有像素,按照灰度值的大小,统计其出现的频率。灰度直方图是灰度级的函数,它表示图像中具有某种灰度级的像素的个数,反映了图像中某种灰度出现的频率。
累计直方图
累计直方图代表图像组成成分在灰度级的累计概率分布情况,每一个概率值代表小于等于此灰度值的概率,P(rk)=n1+n2+n3+...Nk
当图像中的特征不能取遍所有可能值时,颜色直方图中会出现很多零值。这些零值会影响直方图相交运算,从而使匹配值不能正确地反映两幅图像之间的颜色差别。由颜色直方图演化而来的累积直方图可以解决上述问题。
网友评论