当前位置:首页 > 心得体会 > 直方图算法_两种直方图规定化实现算法的分析
 

直方图算法_两种直方图规定化实现算法的分析

发布时间:2019-01-11 04:02:16 影响了:

  摘要:直方图规定化可以将图像的直方图转化为需要的形状,有目的地增加某个灰度区间的图像,使用户获得感兴趣的信息。本文介绍了直方图规定化的两种经典的实现算法――单映射规则(SML)和组映射规则(GML)的基本原理,并应用这两种算法对实例图像进行规定化处理和比较分析,证明了GML相对于SML的优越性。
  关键词:直方图规定化;单映射规则;组映射规则
  中图分类号:TP391 文献标识码:A文章编号:1009-3044(2007)18-31705-02
  Analysis of Two Implementing of Method of Histogram Specification
  LI Shao-jun,GAN lan
  (School of Information Engineering,East China Jiaotong University, Nanchang 330013,China)
  Abstract:Histogram specification can change the histogram of image into an specific form,and it can enhance the image of one gray range ,so as to give the information that users interested in. This paper introduces the basic principle of two classical implementing of method about histogram specification. By comparative analysis of the specification processing an example of image, the superiority of GML to SML has been proved.
  Key words:Histogram specification; single mapping law; group mapping law
  
  1 引言
  
  图像增强的首要目标是改善图像,以使图像更适合于特定应用。图像增强的方法主要取决于图像希望达到的特定效果,一般来说,图像增强的方法分为两大类:基于图像灰度值统计的方法和基于图像空间频率的方法[1]。用灰度直方图增强图像对比度是基于图像灰度值统计的一种重要方法,它以概率论为基础的,常用的实现算法主要是直方图均衡化和直方图规定化。
  直方图均衡化主要用于增强动态范围较小的图像的反差,基本思想是把原始图的直方图变换为均匀分布的形式,这样就增强了像素灰度值的动态范围,从而达到增强图像整体对比度的效果。直方图均衡化的优点是能自动地增强整个图像的对比度,但它的具体的增强效果不好控制,处理的结果总是得到全局均衡化的直方图。实际中有时需要变换直方图使之成为某个需要的形状,从而有选择地增强某个灰度值范围内的对比度或使图像灰度值的分布满足特定的要求,这时可以采用比较灵活的直方图规定化方法。
  
  2 直方图规定化原理和算法
  
  在直方图规定化的过程中,正确地选择规定化的函数有可能获得比直方图均衡化更好的效果,一般分为三个步骤:
  (1)对原始图的直方图进行灰度均衡化
  然后将ps(si)对应到pu(uj)去,由于这里每个ps(si)是分别对应过去的,故这种方法简单直观,但有时会有较大的取整误。
  组映射规则(group mapping law, GML):设有一个整数函数I(l),l=0,1,N-1,满足:0≤I(0)≤...≤I(l)≤...≤I(N-1)≤M-1,确定使下式能达到最小的I(l)
  这时,如果l=0,则将其i从 到I(0)的ps(si)都对应到pu(u0)去;如果l≥1,则将其i从I(l-1)+1到I(l)都对应到pu(uj)去[2]。
  具体算法为(编程实现):
  //计算原始图像到目标图像累积直方图各灰度级的差的绝对值,存放在一个二维数组里
  for(j=0;j diff [i][j])
  {minvalue= diff [i][j];
  minx=i;}}
  HistogramSML[j]=minx;}
  //GML映射
  lastStartY=0;lastEndY=0;startY=0;endY=0;
  for(i=0;i diff [i][j])
  {minvalue= diff [i][j];
  endY=j;}}
  if(startY!=lastStartY||endY!=lastEndY)
  {for(k=startY;k 本文为全文原貌 未安装PDF浏览器用户请先下载安装 原版全文

猜你想看
相关文章

Copyright © 2008 - 2022 版权所有 职场范文网

工业和信息化部 备案号:沪ICP备18009755号-3