抑或对新的映射表进行一定水平的高斯模糊710官方网站

  在很久前贯彻相比较度受限的自适应直方图均衡化时,就已经想过对该算法实行自然水准的恢弘,之后选择机动相比较度和自动色阶代替直方图均衡化也提议了新的算法,也达到了正确的成效。本文进一步对该算法进行一定水准的庞大和增加补充优化。

一、本文算法的概述

  根据选择的优化的程度和垂直网格数,将图像切分成三个一个的子块,然后总计每种子块的直方图音讯,并和原图全部的直方图音信实行某种混合,对于彩色图像,为了防止差别通道之间管理后变化过于不协调,还扩展了各通道直方图与亮度通道直方图的新闻合成,然后对合成后的直方图实行直方图裁剪和均衡化的,获取各子块新的酷炫直方图,为了防止新的映射表中的数据有很大的奇点或噪音,对映射表的数额开始展览多点取样,然后利用样条插值算法对取样点实行插值,可能对新的映射表进行自然水平的高斯模糊,拿到一张较为平缓的映射表。最后动用类似CLAHE算法中的双线性插值对各样子块之间的映射表实行插值获得新的像素值。本方法总结量小,速度飞快,对映射表举办平整插值或高斯模糊能使得的压制比较度调治时发出的噪音,幸免了音信的过于放大形成图片失真,是一种高效并且职能优秀的相比度巩固算法。

二、算法进度详解

  1、水平和垂直网格数的分明

  类似于CALHE算法,对网格的合理性选拔也会对本算法的结果发生主要的熏陶,过多的网格数会使得计算量明显加大,过少的网格数使得结果趋于临近全部的直方图均衡化,一般情状下,可选拔八*7个网格,这里能够透过以下条件来大约的做个优化:图像的亮度的均方差越小,即整幅图像的明暗相比同样,使用较多的网格数,比如8*八,不然使用较少的网格,比方4*四。那是因为当图像明暗较为壹致时,各小块的直方图数据差别不会非常大,而只要明暗不平等,选用比较小的块,各块之间的直方图消息差别只怕比比较大,会导致插值时出现明显的弱项。

   
二、按规定的网格数划分图像,并收获每块的直方图音讯HistB,HistG,HistEscort。

 
叁、获取全图的直方图数据HistgramB,HistgramG,Histgram哈弗以及亮度直方图HistgramL。

       当中亮度定义为:  Lightness =
(Tiggo*19595 + G*38469 + B*7472) >> 16

   
4、对子块直方图和全局直方图实行融合,如下代码所示:

HistB[Index] = (HistB[Index] * Adaptation + (100 - Adaptation) * HistgramB[Index]) / 100;
HistG[Index] = (HistG[Index] * Adaptation + (100 - Adaptation) * HistgramG[Index]) / 100;
HistR[Index] = (HistR[Index] * Adaptation + (100 - Adaptation) * HistgramR[Index]) / 100;
HistL[Index] = (HistL[Index] * Adaptation + (100 - Adaptation) * HistgramL[Index]) / 100;

  当中Adaptation为同甘共苦因子,其一蹴而就限制为[0,100],当取值越时辰,全局直方图其主导功效,效果越左近一般的直方图均衡。

  伍、对上述融入后的结果再行和亮度直方图实行融入,融合进程如下所示:

HistB[Index] = (HistB[Index] * Correction + (100 - Correction) * HistL[Index]) / 100;
HistG[Index] = (HistG[Index] * Correction + (100 - Correction) * HistL[Index]) / 100;
HistR[Index] = (HistR[Index] * Correction + (100 - Correction) * HistL[Index]) / 100;

   在那之中Correction为颜色校对因子,其卓有成效限制为[0,100],当取值越大时,各通道之间越独立,效果越附近一般的直方图均衡。

  上述代码中Index表示直方图色阶的目录范围,有效值[0,Bins
– 1],Bins为直方图的多少,六个人时为25陆。

  陆、根据CALHE的章程对直方图实行裁剪,之后对裁剪的直方图进行均衡化获得每种小块的映射表。

  7、局地均衡化后映射表的坦荡。

    壹)  将映射表的
Bins取K等份,获得每等份数据对应的投射表值,构成K个二维坐标点连串,亦可以依据直方图的总共数据,把一齐数据平均分为K等分,获得K个2维系列点。

    二)依据K个2维坐标点,使用样条插值算法拟合出一条过各类取样点的平滑映射曲线。

    三)在平滑曲线表中取0至于Bins中各色阶对应的插值结果,作为新的映射表结果。

     对于Bins
=25陆的图像,K值提出可取32左右。

    大概其余1种管理格局正是对映射表进行1维主旋律的均值只怕高斯平滑,平滑窗口可选WindowSize
= 柒左右。

  这种平滑能够带来一定的功利,特别是对于图像转换相比温和的区域,能够在一定水平上弱化由于加强带来的色块以为,而且这种方式拓宽到独具基于直方图巩固技能的算法中。

  8、依据CLAHE算法的进程对每一种小块举办双线性插值得到最后的升高功效,当然对第一行、第1列、最终一行、最终1列的子块临近图像边缘的那二分之一都只行使映射表单个方向的线性插值,而这几个子块的别样一些以及其余子块均运用映射表双线性插值获得最终结果。

     
 要是输入图像是灰度图,由于只有1个通路,则本算法中的Correction在此场景中是可放弃的。

  整个经过的流程框图如下所示:

                           
 710官方网站 1

 

     
 3、测试结果

下图为未通过管理的原来图像,可知原始图中相比度很差,图像的底细消息很少,图像饱和度也很差。右边是选拔本算法后甩卖的效益图,管理后图像饱和度自然,色彩鲜艳,隐藏在原图左边的一对不行易见的细节也能理解的显示出。

710官方网站 2 
         710官方网站 3

                  原始图像                                
          Adaptation = 50,Correction = 50, ClipLimit =
20时的效率

710官方网站 4 
        710官方网站 5

              Adaptation =
0,Correction = 50, ClipLimit = 20时的效果                            
                                                         Adaptation =
拾0,Correction = 50, ClipLimit = 20时的意义

710官方网站 6 
       710官方网站 7

         Adaptation =
50,Correction = 0, ClipLimit =
20时的作用                         Adaptation =
50,Correction = 100, ClipLimit = 20时的功效

   
 上面作图是其它壹副未经管理的图像,那副图像音信较为完整,色彩也较为丰富,但是通过本算法管理后,获得的结果图(右图)则呈现愈加惊艳和灿烂,由此对此正规的图像,本算法也具有较强的实用性。

 710官方网站 8     
  710官方网站 9

  特别重申,该算法不适宜处理人脸图像。

     
 该算法难以使用SSE优化,作者在思考是或不是还有别的情势优化。速度上1080P的彩图差不离30ms能够解决。

     
 测试工程的地方:http://files.cnblogs.com/files/Imageshop/SSE_Optimization_Demo.rar

710官方网站 10

      写博不易,招待点赞只怕打赏。

710官方网站 11

相关文章