第二节 灰度修正

  灰度修正式对图像在空间于进行增强的简单而效果明显的方法。根据图像不同降质的现象以及所需要的不同图像特征而采用不同的修正方法。一般常用的方法主要有三种:

  (1)一种式针对图像成像不均匀(如曝光不均匀,使图像半边暗半边亮)。对图像逐点进行不同程度的灰度级校正,目的使整幅图像灰度均匀。

  (2)另一种使针对图像某一部分或整幅图像曝光不足而使用的灰度级变换,其目的使增加图像灰度对比度。

  (3)还有一种使直方图修正,能够使图像具有所需要的灰度分布,从而有选择地突出所需要地图像特征,来满足人们地需要。

  一、灰度级校正

  图像在成像过程中,往往由于光照 、摄像 、靶面灵敏度以及光学系统等不均匀性而引起图像某些部分较暗或较亮。对这类图像使用灰度级校正,能够获得满意地视觉效果。具体实现方法如下:

  设原来的图像为 ,不均匀降质图像为 ,代表降质性质的函数为 。则降质过程可用下式描述:

     (6.2.1)

  从式(6.2.1)可以看出,只要能够获得降质函数 ,不难由降质图像 来重建原始图像 。但降质函数 往往是不知道的,需设法根据图像降质系统的特性来计算或测量。最简单的方法是用一个以及灰度级全部为常熟C的图像来标定测量这个降质系统的降质函数。也就是架设输入这个图像降质系统的图像为 ,那么可获得其输出图像为 。根据式(6.2.1)则下式成立:

     (6.2.2)

  由此即可获得 为:

     (6.2.3)

  再将式(6.2.3)带入式(6.2.1)即可由降质图像 求出原始图像

     (6.2.4)

  应用灰度即校正方法由两个问题要注意:

  (1)按式(6.2.4)对降质图像进行逐点灰度级校正所获得的图像,其中某些象素的灰度级值有可能要超出记录器建或显示器输入灰度级的动态范围。若要不失真地输出,还要采用其他办法来进一步修正。最简单的方法式:令所有灰度级值小于的象素其灰度值都等于;所有灰度级值大于 的象素灰度级值皆等于 。或者采用下节要介绍的灰度级变换方法来修正。

  (2)降质图像在数字化时,各象素灰度级都被量化在 离散集合中离散值 上,但经校正后的图像各象素灰度级值并不一定都再这些离散值上。因此必须对校正后的图像再进行量化。

  二、灰度变换

  在某些情况下,为了将图像灰度级整个范围 ,与记录器件灰度级动态范围之内,以便是充分利用记录器件灰度级动态范围,记录显示出图像中所需要的图像细节,往往采用灰度变换方法。基本方法是:

  假定原来图像灰度级范围为 ,其中某以灰度级为 ,经过变换后为 ,要求 应在记录器件灰度级动态范围 之内。为此,我们用下列关系式将 映射到

     (6.2.5)

  显然,我们要根据图像灰度级范围 ,与记录器件灰度级动态范围 的不同关系,采用不同关系,采用不同的映射关系。如图6-2-1中所示的几种关系。

  (1)图像曝光不充分,使 的子区,即

  我们选用的 函数形式为式(6.2.6)。其曲线形状见图6-2-1(a)。

   (6.2.6)

  根据式(6.2.6)从 计算到 ,即可获得从 之间所有对应的灰度级值。也就是把 区间扩展到区间 。十几上使曝光补充分图像中黑的更黑,白的更白,从而提高了图像灰度对比度。

图 6-2-1 灰度变换

  (2)若图像绝大部分灰度级集中在 之间,则选用的 函数形式为式(6.2.7)。其曲线形状见图(6-2-1)(b)

   (6.2.7)

  注意:这种变换扩展了 区间灰度级,但将小于和大于范围内的灰度级分别压缩为 。这样就会使图像中灰度级在上述两个范围内的象素都变成一个灰度级,使这一部分信息损失了。只要合理选择 ,在某些实际应用场合下,是可以允许这种失真的存在。如遥感图像分类技术中,这些过黑或过白的象素往往是对应玄武岩,冰,水和雪等。其中冰不包括所需要的地貌特征。因此完全可以将他们压缩为一个灰度级。

  (3)如要突出图像中具有某些灰度级的物体细节,而又不惜牺牲其他灰度级上的细节,可以分段压变换。使需要的细节灰度级拉伸,增强对比度。而不需要的细节灰度级压缩。下面用一个简单例子说明一下。

  设某图像中有30个灰度级,分别为 。我们希望将 灰度级区域扩展,而将其他灰度级区域压缩,就可以选择 函数形式为式(6.2.8)。其曲线形状见图6-2-1(c)。

   (6.2.8)

  (4)有些情况下,实际应用需要将图像的灰度级几个子区域都扩展到显示器见的整个动态范围,人为地构成假轮廓,从而获得满意的视觉效果。它所采用的变换关系为公式(6.2.9)。其曲线形状见图6-2-1(d)

   (6.2.9)

  以上讨论的变换关系式都是分段折线式,当然也可将 设计承某种合适的平滑曲线。如指数、对数等。假如图像经第一次变换后,其灰度超过或没有占满记录器件允许的动态范围,可以再选用合适的关系式,进行第二此变换,就可以使第一次变换后的图像灰度级范围 占满记录器件动态范围

   (6.2.10)

  式中 为第一次变换函数。 为第二此变换函数。 分别为第一次变换后图像灰度级的最小值和最大值。注意这里同样存在一个重新量化的问题。

  三、直方图修正

  (一)直方图概念

  设图像 的灰度级范围为 表示 内所有灰度级出现的相对频率。显然 的函数。往往称 的图形为图像 的直方图。

  若将图像当做一个各态历经随机过程,那么 就是图像中的灰度机概率密度函数的估计值。要注意的是一幅图像对应一个直方图,但一个直方图并不一定只对应一幅图像。几幅图像只要灰度分布密度相同,那么它们的直方图也是相同的。据最简单的一个例子。假定有一个只有两个灰度级,且分布密度相同的直方图如图6-2-2(a)。这样的直方图就可以对应所有只有灰度级 且概率相等的图像如图6-2-2(b)

图 6-2-2 不同内容的图像可能具有相同直方图实例


  (二)直方图修正

图 6-2-3 直方图修正示意图

  直方图修正是图像灰度级变换的最常用的一种方法。例如一幅过曝光的图片,其灰度级都集中在低亮度范围内( 即 值大的区域)而曝光不足的图片,其灰度集中在低亮度范围内,分别见图6-2-3(a)、(b)所示。具有这样直方图的图片一定看不清楚。

  如果将图6-2-3中(a)、(b)变换成图6-2-3(c)或(d),那么直方图(c)或(d)所对应的图像一定比(a)(b)所对应的图像清楚。当然也可以将直方图修正成实际应用所需要的指定形状,以满足人们的需要。直方图修正只要给定转换函数,由计算机可以方便的给予实现。例如,为了让图像灰度级分布集中在人眼分辨率最强的一段亮度适当范围内,将图6-2-4中(c)修正为(d)。为了适应某些期间输入动态范围,图像灰度级只能集中在一个较窄的范围内,将图6-2-4(e)修正为(f)等。

图 6-2-4 几种实用的直方图修正

  直方图修正的具体应用有:医学方面为了改善操作 射线人员的工作条件,可以应用低强度 射线曝光,但这样可获得的 光片灰度级集中在暗区,许多图像细节无法看清而引起判读困难,通过修正使灰度级分布在人眼适合的亮度区域,就可以使 片中的细节如筋骨、关节等清晰可见。另外还有一些非可见光成像的工业无损检查,军事公安侦察等照片的处理。

  为了研究方便,往往先将直方图归一化,即让原图像灰度范围 归一化为 。设其中任一灰度级 归一化为 ,变换后的图像任一个灰度级 归一化为 。显然 应当满足。

  

  因此,直方图修正就是对下列公式计算过程:

      (6.2.11)

     (6.2.12)

  式中 为变换函数。它必须满足下列两个条件:

  (1) 区域内式单值函数,且单调增加。

  (2) 内满足

  条件(1)保证了灰度级从黑到白的次序。而条件(2)保证变换的象素灰度级仍在允许的灰度级范围内。

   为逆变换函数。同样要满足上述两个条件。

  假定用 分别表示原图像和变换后图像的灰度级概率密度函数。根据概率论的只是,在已知 时,且 可由下式求出:

   (6.2.13)

  可见,使用灰度变换进行图像增强技术的实质,就是选用合适的变换函数 来修正图像灰度级概率密度函数 ,从而得到灰度级具有 分布的新图像。

   往往是根据需要来选择,为了从图像中能够获得尽量多的信息亮,也就是使图像嫡尽可能大。我们常常要求 ,即所谓直方图均匀化。也就是将,图像中所有灰度级出现概率相等的图像,所包含的信息量最大。

  (三)直方图均匀化

  设变换函数为:

   (6.2.14)

  式中 为假设变量。若满足上面所讲条件,式(6.2.14)对 来讲 的倒数为:

   (6.2.15)

  则下式也成立

   (6.2.16)

  将式(6.2.16)带入式(6.2.13)得:

   (6.2.17)

  可见对 来讲变换后的概率密度是均匀的。

  例如给定一幅图像其灰度级分布概率密度函数 为:

  

  为使其变换为一幅灰度级军用机那分布的图像,即直方图均匀化处理,我们必须先求出变换函数 ,应用式(6.2.14)求得的 即可使图像灰度级均匀化,由此得:

  

  有了 ,即可由 计算 。亦即由 分布的图像得到 分布图像。为了加深理解,我们来验证一下,按 变换后的图像灰度级分布是否均匀,亦即 是否为1。这里要注意,由 按式(6.2.14)求得的 存在,但由 求得的逆变换函数 不一定式解析式,一般式不易获得的,而这个例子式可以求得的。

  

  解此一元二次方程即可得到:

  

  因为给定条件式 区间有值,

  所以上式“+”号不存在,即变为 :

  

  将此式带入式(6.2.13)得:

  

  由此可见,按 变换后所得图像灰度即分布是均匀的。

  对一幅数字图像而言,需引出离散形式的公式:

     (6.2.18)

  式中 式图像灰度级数; 是第 个灰度级出现的概率; 是图像中第 个灰度级象素数, 是图像总象素数。

  为了进行直方图均匀化处理,根据式(6.2.14)先求出变换函数为:

   (6.2.19)

  逆变换函数为:

   (6.2.20)

  (四)直方图均匀化一般运算法

  上节介绍的图像直方图均匀化,运算输出图像的直方图并不是真正均匀。夜就是讲各灰度级所包含象素并不相等。要构成真正的均匀直方图,需采用另外一种比较复杂的方法。下面我们介绍其原理。

  设变换前后图像都是 个象素。共有 个灰度级。原图像灰度级 上象素为 ,变换后图像灰度级 上图像数为 ,显然下式应成立:

   (6.2.21)

  因为我们要求将直方图均匀化即 满足

   (6.2.22)

  现在来逐个求出

  (1) 求 ,先找出一个 ,使下式成立

   (6.2.23)

  此式表示,变换后直方图灰度级第一级的象素数 是由原图像直方图灰度级第一级到第 级加上第 级中部分象素所组成。

  (2)求 ,再找出一个 ,使下式成立

   (6.2.24)

  此式表示, 由三部分组成:

  1.原直方图第 级中没有变成 象素。

  2.原直方图第 级 到第 中所有象素。

  3.原直方图第 级中部分象素。

  (2)用下式一次类推找出全部

   (6.2.25)

  (五)直方图修正的一般方法

  前面讨论的直方图均匀化处理,使图像获得了较高的对比度,或者讲增强了图像 ,从信息论角度出发也就是增加了信源熵 。若真正均匀化即 ,此时信源熵最大,比较直观地讲,在直方图均匀化过程中,使得图像中灰度级稠密区域的象点强占了更多的灰度等级,而稀疏区的点退出了一些灰度等级,从而使得各个灰度级上包含的象素点差不多,这样充分利用了各个灰度级,因此图像获得了对比度增强的效果。但是这样的图像并不一定适合人的礼堂观察,或者并不适合应用要求,因此就提出了如何按给定的形状来修正直方图问题。首先介绍一下给定直方图的两种方法,其一是给定的直方图可用一个规定的概率密度函数来表示的。

  第二种方法是用可以控制一组直线段来构成直方图,从而获得希望开头。然后再数字化并规一化。如图6-2-5(a)、(b)就是两组直线段构成方法。图(a)中的直线段构成直方图形状受 四个参量控制,其中 区间内任意选定; 从0到90度变化,分别引起 点沿两点 连线移动。只要改变上述四个参量就可以得到许多有用的直方图,如取 ,就可以得到一个矩形,即均匀直方图,图6-2-5(b)中的四个参量是 ,这种方法构成的直方图适用于突出亮区和暗区的灰度级,图6-2-5(c)是表明如何借助于操纵杆互相作用来实现希望有的直方图,这对交互式处理十分方便。

图 6-2-5 操纵杆对话式直方图修正

  下面来讨论一下如何根据给定直方图来修正图像的数值计算方法。

  设 为原始图像的灰度概率密度函数, 为希望图像的灰度概率密度函数。

  假定对原始图像应用式(6.2.14)所求得的变换函数 进行了均匀化处理,那么

   (6.2.26)

  对希望的图像也进行匀化处理,即

   (6.2.27)

  因为对原始图像和希望图像都进行均匀处理,其结果获得的图像灰度概率密度函数 应该是相等的,(从理论分析上来讲,连续均匀图像的 ,而数字图像应基本相同)那么我们就可以用 来代替 ,再使用 逆变换来获得希望的图像,将(6.2.26)式代入即可得到:

   (6.2.28)

  在连续图像中,问题这些变换和逆变换是否存在解析式,但在数字图中变换和逆变换都是象素灰度级值的一一对应的映射。因此也就避开了这个问题,总是可行的。现在我们仍用上节讲的那个图像(表6-1)或图6-2-9为例,具体介绍一下变换方法。

  例6-3设有一幅图像 ,8个灰度级,其直方图为6-2-6(a),要求将它修正为具有图6-2-6(b)的形状(具体数值见表6-2-1(a))



表 6-2-1(a) 例6-3给定数值

  四、使用对照表对图像进行灰度变换

  要把图像 经过灰度变换变成新图像 ,可以使用计算机按照对照表一点一点变换,若用一个对照表变换后,满意可以使用几个对照表 。一个接一个对照变换直到满意为止。见图6-2-7。

  所谓对照表就是我们面前讲的变换函数,如果是简单的函数如 ,那么就可以得 直接放入程序。查对照表,实质就是对这个函数的运算,如 在计算机运算时只需左移一位,即很方便又不占用多少存贮量。如果是一个比较复杂的函数,甚至用曲线方程都不好表示的函数,那么就要预先计算好每一个 所对应 值,存入计算机。以原图像灰度级值 作为地址,新图像对应的灰度级值作为地址内容,按地址排列依次存入。输入和输出的图像存在大型存贮器中,每一输入输出图像称为一个文件,一个文件分为512个记录,每一个记录又分为512个字节,每一个文件分多少记录,每个记录又分多少字节是可以改变的,由程序决定。


图 6-2-6 例6-3图

 

图 6-2-7 查表法灰度变换示意框图

  重要的是在每个文件,每个记录开始和结束都要有标志,这样可以避免写错或读错,起保护作用。

  若一个文件存1024个记录,一个记录存256字节,对于 个象素的图像,每读一个记录就读出图像矩阵的半个列,若每逢奇数(即1,3,5…记录)读出记录,那么就得出上半个图像,这样的处理是很需要的。有时处理整个一幅图像花很多时间,可以先取出一小块来处理,比较一下处理前后的图像效果是否满意,假如满意了再做整幅图像的处理。这种取小方块的处理办法称为开窗口。窗口的形状可以为长方形或多边形,但长方形窗口只要确定长方形的两个坐标,就决定了窗口的大小。按次序取出图像矩阵中的数。若在窗口之外,就不进行处理,原数输出,若在窗口之内就进行处理后再输出。

  图像和对照表是存放在磁盘中,有关磁盘中数据信息的存取由软件的文件系统来处理(磁盘操作系统来管理),文件存入或读出磁盘,必须给文件命名,编成目录。如何编目录最好,这是属于计算机科学中数据结构设计问题。