第七章 图像的点运算.ppt
图像的点运算是图像处理中相对处理基础的技术,它主要用于改变图像的点运算是图像处理中相对处理基础的技术,它主要用于改变一幅图像的灰度分布范围,一幅图像的灰度分布范围,点运算通过变换函数将图像的像素一一转换,点运算通过变换函数将图像的像素一一转换,最终构成一副新的图像。最终构成一副新的图像。由于操作对象是图像的单个像素值,故得名为由于操作对象是图像的单个像素值,故得名为 点运算点运算。点运算的最大特点是输出像素值只与当前输入像素值有关。点运算的最大特点是输出像素值只与当前输入像素值有关。其处理过程可以用以下公式表示:其处理过程可以用以下公式表示:g(x,y)=Tf(x,y)g(x,y)=Tf(x,y)其中其中f(x,y)f(x,y)表示输入图像,表示输入图像,g(x,y)g(x,y)表示输出图像。函数表示输出图像。函数T T是对是对f f的的一个变一个变换操作,在这里它表示灰度变换公式。可以看到,对于点运算而言,最换操作,在这里它表示灰度变换公式。可以看到,对于点运算而言,最重要的是重要的是灰度变换公式。灰度变换公式。第七章 图像的点运算本章的主要内容为:本章的主要内容为:本章的主要内容为:本章的主要内容为:灰度非灰度非线性变换线性变换灰度阈灰度阈值变换值变换灰度拉伸灰度拉伸灰度均衡灰度均衡图像的点运算灰度直灰度直方图方图灰度线灰度线性变换性变换7.1灰度直方图是一个二维图灰度直方图是一个二维图。从数学上来说,。从数学上来说,它描述了图像各灰它描述了图像各灰度值的统计特性,显示了各个灰度值出现的次数或概率度值的统计特性,显示了各个灰度值出现的次数或概率。从图形上。从图形上来说,其横坐标表示图像的灰度值,取值范围是来说,其横坐标表示图像的灰度值,取值范围是02550255。其纵坐标。其纵坐标则通过高度来表示出现次数的多少或者概率的高低则通过高度来表示出现次数的多少或者概率的高低.灰度直方图灰度直方图灰度直方图灰度直方图7.1在在高亮度图像的直方图高亮度图像的直方图中,像素集中在灰度高的一侧。中,像素集中在灰度高的一侧。8 8位灰度图能表示位灰度图能表示256256种灰度,也就是灰度取值范围为种灰度,也就是灰度取值范围为0255.0255.其其中中0 0表示黑色,表示黑色,255255表示白色。表示白色。对于对于高亮度图像高亮度图像,整个画面的颜色偏亮,故灰度直方图,整个画面的颜色偏亮,故灰度直方图偏向灰度高偏向灰度高的一侧。的一侧。相反,低亮度图像的直方图则偏向灰度较低的一侧。相反,低亮度图像的直方图则偏向灰度较低的一侧。亮度灰度直方图灰度直方图7.1在在高对比图像的直方图中,灰度的覆盖范围很广高对比图像的直方图中,灰度的覆盖范围很广。图像在任。图像在任意一段灰度范围中都有一定的像素数量。同时,高对比图像的灰意一段灰度范围中都有一定的像素数量。同时,高对比图像的灰度分布相比其他图像而言较为均匀,度分布相比其他图像而言较为均匀,整个直方图显得比较平滑整个直方图显得比较平滑。而而低对比度图像的灰度低对比度图像的灰度则主要分布在中间狭窄的区域,图像则主要分布在中间狭窄的区域,图像效果就像被冲淡了一样效果就像被冲淡了一样对比度:图像中灰度反差的大小图像灰度直方图图像灰度直方图基本原理 灰度直方图的灰度直方图的基本思想是数量统计基本思想是数量统计。对于拥有。对于拥有256256种灰度的图像,种灰度的图像,灰度值为灰度值为k k的像素个数由一个离散函数确定:的像素个数由一个离散函数确定:其中其中表示当前图像灰度值为表示当前图像灰度值为k k的像素的个数,则对应的出现概的像素的个数,则对应的出现概率可以使用如下公式公式表示:率可以使用如下公式公式表示:其中其中n n表示图像像素个数的综合,可以用图像宽度与高度的乘积表示图像像素个数的综合,可以用图像宽度与高度的乘积来表示。来表示。基本原理灰度直方图的坐标系为(灰度直方图的坐标系为(x=k,y=)x=k,y=),横坐标表示输入灰度值,横坐标表示输入灰度值k k,而纵坐标表示对应灰度值的统计个数而纵坐标表示对应灰度值的统计个数 。绘制直方图最重要的是确定灰度值为绘制直方图最重要的是确定灰度值为k k的像素的个数的像素的个数。直方图在绘。直方图在绘制时采用相对高度。制时采用相对高度。代码分析1.1.各级灰度数量的统计各级灰度数量的统计 统计数据是绘制灰度直方图的依据。该对话框在初始化时,也就是在统计数据是绘制灰度直方图的依据。该对话框在初始化时,也就是在OnInitDialogOnInitDialog函数中完成统计工作。正如前面介绍的一样,函数中完成统计工作。正如前面介绍的一样,MagicHouseMagicHouse将图将图像保存在一个线性数组中,图像的每一个像素都统一采用像保存在一个线性数组中,图像的每一个像素都统一采用3232位形式存储,位形式存储,故故8 8位灰度图的一个像素也会占用位灰度图的一个像素也会占用3232位。为方便统计,对话框默认当前处理位。为方便统计,对话框默认当前处理图像为灰度图,即图像为灰度图,即R=G=BR=G=B,故每次只需要统计出其中一种颜色的数量。,故每次只需要统计出其中一种颜色的数量。代码分析2.2.灰度直方图绘制过程灰度直方图绘制过程 绘制工作主要有绘制工作主要有RefreshRefresh函数完成,它完成了以下功能。函数完成,它完成了以下功能。*双缓存的创建双缓存的创建 *绘制直方图的坐标系和刻度绘制直方图的坐标系和刻度 *查找所有灰度中最多的出现次数。查找所有灰度中最多的出现次数。*以相对高度绘制直方图以相对高度绘制直方图 *利用鼠标操作改变显示灰度的上下限。利用鼠标操作改变显示灰度的上下限。7.27.2灰度线性变换是灰度变换灰度线性变换是灰度变换的一种,图像的灰度变换通过建立灰度映的一种,图像的灰度变换通过建立灰度映射来调整原图像的灰度,射来调整原图像的灰度,从而达到图像增强的目的从而达到图像增强的目的。灰度映射通常是用。灰度映射通常是用灰度变换曲线来表示的灰度变换曲线来表示的1001002552550 0变换函数变换函数T(x)T(x)输输出出灰灰度度值值y y输入灰度值输入灰度值x x图图7-77-7灰度线性变换灰度线性变换如果图像灰度局限在一个很小的范围内,显示出来的将是一个模糊不清、似如果图像灰度局限在一个很小的范围内,显示出来的将是一个模糊不清、似乎没有灰度层次的图像乎没有灰度层次的图像。通过对左图采用线性变换通过对左图采用线性变换,对图像每一个像素灰度作线性变换,有效地改善对图像每一个像素灰度作线性变换,有效地改善图像视觉效果图像视觉效果。线性变换7.27.2基本原理灰度线性变换就是灰度线性变换就是将图像的像素值通过指定的线性函数进行变换,以将图像的像素值通过指定的线性函数进行变换,以此增强或者减弱图像的灰度。此增强或者减弱图像的灰度。灰度灰度线性变换的公式就是常见的一维线性函线性变换的公式就是常见的一维线性函数数。g(x,y)=k*f(x,y)+dg(x,y)=k*f(x,y)+d设设x x为原始灰度值,则变换后的灰度值为原始灰度值,则变换后的灰度值y y为:为:y=kx+d y=kx+d 基本原理由数学知识可以知道由数学知识可以知道k k表示直线的斜率,也就是倾斜程度;表示直线的斜率,也就是倾斜程度;d d为线性函数为线性函数在在y y轴的斜率轴的斜率。下面通过讨论。下面通过讨论k k的取值来分析灰度线性变换的效果。的取值来分析灰度线性变换的效果。1 1)当)当k1k1时时此时可用于增加图像的对比度。此时可用于增加图像的对比度。图像的像素值在变换后全部增大,整体图像的像素值在变换后全部增大,整体显示效果被增强,如图显示效果被增强,如图7-87-8所示。可以看到,图像经过变换后,其灰度分布被所示。可以看到,图像经过变换后,其灰度分布被拉伸了。拉伸了。2 2)当)当k=1k=1时时这种情况常用于调节图像亮度。这种情况常用于调节图像亮度。这种情况下可以通过改变这种情况下可以通过改变d d的值达到增的值达到增加或者减少图像亮度的目的。加或者减少图像亮度的目的。基本原理 3 3)当)当0k10k1k1时刚刚相反,图像的对比度和整体效果都被消弱了。时刚刚相反,图像的对比度和整体效果都被消弱了。从图从图7-7-1010中直方图可以看到,灰度分布被集中在一段区域上。中直方图可以看到,灰度分布被集中在一段区域上。k k越小,图像的灰度越小,图像的灰度分布越窄,图像看起来也越显得灰暗。分布越窄,图像看起来也越显得灰暗。4 4)当)当k0k=2),r=2),整个变幻曲线趋近于一条垂直线。此时原始图像中的绝大部分灰度值经过变整个变幻曲线趋近于一条垂直线。此时原始图像中的绝大部分灰度值经过变换后变成最大值,产生的图像几乎全黑,失去了非线性变换的意义。在实际运用中换后变成最大值,产生的图像几乎全黑,失去了非线性变换的意义。在实际运用中经常对基本表达式的经常对基本表达式的x x和和y y进行约束,让他们的取值在进行约束,让他们的取值在0101之间。之间。下面修改幂次变化公式使下面修改幂次变化公式使x x与与y y的取值范围都在的取值范围都在02550255之间。之间。修改后的幂次变换函数曲线如图修改后的幂次变换函数曲线如图7-197-19灰度幂次变换 图图7-197-19十分直观地表明了以下关系。十分直观地表明了以下关系。l当当 r1 r1r1时,变换函数曲线在正比函数下方。此时扩展高灰度级,压缩低灰度时,变换函数曲线在正比函数下方。此时扩展高灰度级,压缩低灰度级,使图像变暗。级,使图像变暗。幂幂次变换常用于显示设备的伽马校正中。目前几乎所有的次变换常用于显示设备的伽马校正中。目前几乎所有的CRTCRT显示设备、显示设备、摄影胶片和许多电子相机的光电转换特性都是非线性的,也就是说设备显示的摄影胶片和许多电子相机的光电转换特性都是非线性的,也就是说设备显示的图像效果没有完全还原原始图像,它们之间存在一个幂次关系图像效果没有完全还原原始图像,它们之间存在一个幂次关系 灰度幂次变换 为了精确显示图像,常常在显示前对图像进行伽马校正,即在显示之前通为了精确显示图像,常常在显示前对图像进行伽马校正,即在显示之前通过幂次变换对图像进行修正。整个过程利用公式表示如下:过幂次变换对图像进行修正。整个过程利用公式表示如下:可得出伽马校正函数可得出伽马校正函数 :其中其中 表示显示设备转换特征方程的指数。可以看到,经过伽马校正后的表示显示设备转换特征方程的指数。可以看到,经过伽马校正后的图像已经与实际图像十分接近。如果涉及图像的精确显示,伽马校正是十分重图像已经与实际图像十分接近。如果涉及图像的精确显示,伽马校正是十分重要的要的 7.3.3 7.3.3 指数指数变换的基本表达式变换的基本表达式 :其中参数其中参数b b、c c控制曲线形状,参数控制曲线形状,参数a a控制曲线的左右位置。指数变换的曲线控制曲线的左右位置。指数变换的曲线如图如图7-227-22所示。所示。指数变换的作用是拓展图像的高灰度级,压缩低灰度级。虽然指数变换的作用是拓展图像的高灰度级,压缩低灰度级。虽然幂次变换也有这个功能,但是图像经过指数变换后对比度更高,高灰度级也被幂次变换也有这个功能,但是图像经过指数变换后对比度更高,高灰度级也被扩展到了更宽的范围扩展到了更宽的范围。灰度指数变换 阈值,又称为临界值阈值,又称为临界值,它的目的是要确定出一个范围,然后这个范围内的,它的目的是要确定出一个范围,然后这个范围内的部分使用同一种方法处理,而阈值之外的部分则使用另一种处理方法或者保持部分使用同一种方法处理,而阈值之外的部分则使用另一种处理方法或者保持原样。原样。灰度的阈值变换可以让一幅图像变成黑白二值图,灰度的阈值变换可以让一幅图像变成黑白二值图,其表达式为:其表达式为:7.4其中其中T T为阈值,如果图像的像素小于阈值,则变换后该点的灰度值为为阈值,如果图像的像素小于阈值,则变换后该点的灰度值为0 0,反之则为,反之则为255.255.轮廓线提供了一个确立图像中简单物体的边界的有效的方法。使用轮廓线轮廓线提供了一个确立图像中简单物体的边界的有效的方法。使用轮廓线作为边界的技术被称为阈值化。作为边界的技术被称为阈值化。假定一幅图背景是深色的,其中有一个浅色的物体。物体中的浅色像素产假定一幅图背景是深色的,其中有一个浅色的物体。物体中的浅色像素产生了直方图上的右峰,而背景中大量的灰度级产生了直方图上的左峰。生了直方图上的右峰,而背景中大量的灰度级产生了直方图上的左峰。物体边界附近具有两个峰值之间灰度级的像素数目相对较少,从而产生了物体边界附近具有两个峰值之间灰度级的像素数目相对较少,从而产生了两峰之间的谷。选择谷作为灰度阈值将得到合理的边界。两峰之间的谷。选择谷作为灰度阈值将得到合理的边界。7.4 7.4 7.5.7.5.1 1 基本原理基本原理由于环境光线或采集设备等原因,由于环境光线或采集设备等原因,图像的灰度有时会集中于某一较小区域,图像的灰度有时会集中于某一较小区域,如图像过亮或过暗等,这时就需要对图像的灰度进行拉伸使其覆盖较大的取值如图像过亮或过暗等,这时就需要对图像的灰度进行拉伸使其覆盖较大的取值区间,从而提高图像的对比度以便观察。区间,从而提高图像的对比度以便观察。这种处理就可以利用线性变换曲线建这种处理就可以利用线性变换曲线建立灰度映射来完成。立灰度映射来完成。灰度拉伸又叫做对比度拉伸,灰度拉伸又叫做对比度拉伸,它与线性变换有些类似,它与线性变换有些类似,不同之处在于灰度不同之处在于灰度拉伸使用的是分段线性变换,所以它最大的优势是变换函数可以由用户任意合拉伸使用的是分段线性变换,所以它最大的优势是变换函数可以由用户任意合成。成。7.5灰度拉伸的关系为:灰度拉伸的关系为:当当 x x 时,时,当当 x x 时时7.5可见,灰度拉伸需要指定俩个控制点,他们用于控制灰度拉伸变换函数的可见,灰度拉伸需要指定俩个控制点,他们用于控制灰度拉伸变换函数的图形。图形。一般情况下有一般情况下有 ,y2 y1 ,y2 y1 成立。正如其名,灰度拉伸常用于扩成立。正如其名,灰度拉伸常用于扩展指定灰度范围,以改善图片质量。展指定灰度范围,以改善图片质量。下面通过讨论控制点来分析灰度拉伸的作用下面通过讨论控制点来分析灰度拉伸的作用1)1)即中间线段的斜率大于即中间线段的斜率大于1 1,如果一幅图像对比度较低,就可以利用这类控,如果一幅图像对比度较低,就可以利用这类控制点图像就行灰度拉伸制点图像就行灰度拉伸,如图,如图7-287-28所示所示.从图从图7-287-28中可以明显发现原始图像的对比度较低,其灰度主要分布在中可以明显发现原始图像的对比度较低,其灰度主要分布在5015050150的范围内。经过(的范围内。经过(50,2050,20)、()、(150,230150,230)两个控制点的灰度拉伸变换后,)两个控制点的灰度拉伸变换后,灰度分布范围被拉伸了,达到灰度分布范围被拉伸了,达到20230,20230,图像的对比度大大增加,整体显示效果图像的对比度大大增加,整体显示效果得到加强。得到加强。7.52)1即中间线段的斜率小于即中间线段的斜率小于1 1,作用于上一条刚好相反,用于降低图像的对比,作用于上一条刚好相反,用于降低图像的对比度。度。如图如图7-297-29所示。图中的原始图像对比度高,但是经过控制点为(所示。图中的原始图像对比度高,但是经过控制点为(20,5020,50)、)、(230,120230,120)的灰度拉伸后,图像的灰度分布基本被压缩在)的灰度拉伸后,图像的灰度分布基本被压缩在5012050120之间。变换之间。变换后的图像对比度降低,整体画面偏灰色。后的图像对比度降低,整体画面偏灰色。7.53)=1此时变换此时变换 函数变化为一条线性函数,它将产生一条没有变换的图像。函数变化为一条线性函数,它将产生一条没有变换的图像。4 4)这也是一种情况,此时变换函数变为阈值函数,产生二值图像。这也是一种情况,此时变换函数变为阈值函数,产生二值图像。7.5补充补充灰度均衡是增强图像的有效方法之一灰度均衡是增强图像的有效方法之一。它是以累计分布函数变换为基础。它是以累计分布函数变换为基础的直方图修正法,它可以产生一幅灰度级分布概率均匀的图像。也就说,经的直方图修正法,它可以产生一幅灰度级分布概率均匀的图像。也就说,经过灰度均匀后的图像在每一级灰度上像素点的数量相差不大,对应灰度直方过灰度均匀后的图像在每一级灰度上像素点的数量相差不大,对应灰度直方图的每一级灰度高度也相差不多。灰度均衡同样属于改进图像的方法,灰度图的每一级灰度高度也相差不多。灰度均衡同样属于改进图像的方法,灰度均衡的图像具有较大的信息量。均衡的图像具有较大的信息量。图图7-337-33显示了高亮度和低对比度图像经过灰度均衡后的效果,可以看到灰显示了高亮度和低对比度图像经过灰度均衡后的效果,可以看到灰度均衡对图像效果进行了重要的改进。从变换后图像的直方图来看,度均衡对图像效果进行了重要的改进。从变换后图像的直方图来看,灰度分灰度分布更加均匀。布更加均匀。原始影像直方图均衡化后的影像7.67.6直方图均衡化方法的基本思想是,直方图均衡化方法的基本思想是,对在图像中像素个数多的灰度级进行对在图像中像素个数多的灰度级进行展宽,而对像素个数少的灰度级进行缩减。从而达到清晰图像的目的(增强展宽,而对像素个数少的灰度级进行缩减。从而达到清晰图像的目的(增强图像的整体对比度)。图像的整体对比度)。直方图均衡化处理的直方图均衡化处理的中心思想是把原始图像的灰度直方图从比较集中的中心思想是把原始图像的灰度直方图从比较集中的某个灰度区间变成在全部灰度范围内的均匀分布。某个灰度区间变成在全部灰度范围内的均匀分布。直方图均衡化的优点是能自动的增强整体图像的对比度,但是它的具体直方图均衡化的优点是能自动的增强整体图像的对比度,但是它的具体增强效果却不易控制,处理的结果总是得到全局均衡化的直方图。增强效果却不易控制,处理的结果总是得到全局均衡化的直方图。下面进行灰度均衡变换函数的推导下面进行灰度均衡变换函数的推导设转换前图像的密度函数为设转换前图像的密度函数为 ,其中,其中0 0r1,r1,转化后图像的密度函转化后图像的密度函数为数为 同样有同样有0s1;0s1;灰度均衡变换函数为灰度均衡变换函数为s=T(r)s=T(r)。从概率理论可以得到如下。从概率理论可以得到如下公式:公式:转化后图像灰度均匀分布,有转化后图像灰度均匀分布,有 =1,=1,故故 ds=dr ds=dr两边积分有:两边积分有:这就是图像的累计分布函数。对于图像而言,密度函数为:这就是图像的累计分布函数。对于图像而言,密度函数为:其中其中x x表示灰度值,表示灰度值,表示灰度级为表示灰度级为x x的像素的个数,的像素的个数,n n 表示图像总像素的表示图像总像素的个数。个数。通过上面的公式就能推导出基于离散型的灰度均衡公式:通过上面的公式就能推导出基于离散型的灰度均衡公式:(x=0,1,2,.,255)(x=0,1,2,.,255)7.7.7 7直方图均衡化校正不具备交互作用特性,而直方图规定化校正在运用均衡化原理的基础上,向人们提供了根据给定直方图作图像增强的手段。指定希望处理的图像所具有的直方图形状,这种用于产生处理后又特殊直方图的图像方法,叫做直方图匹配或直方图规格化处理。直方图规定化可以有选择的增强某个灰度值范围内的对比度或使图像灰度值的分布满足特定的要求。7.7.7 7完善P221COPY,增加功能: