博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于Retinex图像增强算法的一些新学习。
阅读量:5855 次
发布时间:2019-06-19

本文共 2457 字,大约阅读时间需要 8 分钟。

  最近再次看了一下IPOL网站,有一篇最近发表的文章,名字就是Multiscale Retinex,感觉自己对这个已经基本了解了,但还是进去看了看,也有一些收获,于是抽空把他们稍微整理了下,原始文章及其配套代码详见:。

      之前在我的  一文中已经较为详细的描述了Multiscale Retinex的基本原理和应用,这里就不再做过多的说明。为表述方便,还是贴出其基本的计算原理:

    

  上式中,I为原始输入图像,F是滤波函数,一般为高斯函数,N为尺度的数量,W为每个尺度的权重,一般都为1/N, R表示在对数域的图像的输出。

  由于R是对数域的输出,要转换为数字图像,必须将他们量化为[0,255]的数字图像范畴,关于这个量化的算法,有这极为重要的意义,他的好坏直接决定了最终输出的图像的品质。

  目前,结合上述文章中提出的一些过程,有4种方式进行处理:

  第一种,也是最容易想到的就是,直接线性量化,即采用下式进行处理:

       

  这种方式,由于Retinex数据处理后的高动态特性,数据分布很广,会出现严重的两极化现象,一般难以获得满意的结果。

  第二种,就是在经典的MSRCR文章《A Multiscale Retinex for Bridging the Gap Between Color Images and the Human Observation of Scenes》中提出的Canonical Gain/Offset 算法。计算公式如下:

             

  其中G和b为经验参数。

  第三种,实在上述文章中提到的Simplest Color Balance(我简写为SCR)方式,这种方式的处理类似于Photoshop中的自动色阶,他把数据按照一定的百分比去除最小和最大的部分,然后中间的部分重新线性量化到0和255之间。

  第四种,就是GIMP的Retinex算法,这个可详见  一文的描述。

  还有一种方式,就是大家知道HDR的过程吧,他也是将高动态的数据量化到图像的可视范围,因此可以直接将这类算法应用与这个问题上。我也做了实验,效果似乎一般。

  在用第二种或第三种方式处理时,最好还需要有个Color Restoration的过程,因为如果直接对MSR处理的结果进行量化,得到的图像往往整体偏灰度,这是由于原始的彩色值经过log处理后的数据范围就比较小了,这样各通道之间的差异也很小,而之后的线性量化比log曲线要平滑很多,因此整体就丧失了彩色。

  论文中提出了修正方式如下:

          

          

          

 

   其中β=46,α=125为经验参数,但是最终我的分析认为β不可能取这么大,取1试验表明效果还不错。

   对于一些原始图像HUE较为合理的图,如果用经典的MSRCR算法,会导致处理后的图容易偏色,上述论文提出了对图像的Intensity数据进行Retinex处理,然后再把数据根据原始的RGB的比例映射到每个通道,这样就能在保留原始颜色分布的基础上增强图像,文章中称其为MSRCP。

  这个算法的编码论文的附带代码里已经有了很好的例子了,其实真是很简单的工作,需要的朋友自己去参考。

  我自己做了5种算法的比较,分别是:

      MSRCRGIMP    -    Gimp内嵌的Retinex增强算法

      MSRCRStandard  -    按照《A Multiscale Retinex ....  the Human Observation of Scenes》一文写的算法,其中G=30,B=-6,β=1,α=125

      MSRCRSCR      -          使用Color Restoration + Simplest Color Balance算法量化得到的结果

        MSRCPSCR      -          使用Intensity数据 + Simplest Color Balance算法量化得到的结果

      MSRHSV      -    对HSV空间的V分量进行(用的SCR量化)Retinex处理并返回RGB空间后的结果

  他们的效果比较如下:

  

        original                         MSRCRGIMP                                   MSRCRStandard

  

           MSRCRSCR                        MSRCPSCR                        MSRHSV

  

        original                           MSRCRGIMP                                MSRCRStandard

  

       MSRCRSCR                            MSRCPSCR                        MSRHSV

  

        original                           MSRCRGIMP                                MSRCRStandard

  

         MSRCRSCR                            MSRCPSCR                        MSRHSV  

  孰好孰坏给位自己去斟酌吧。

  算法效果测试:

  很久没有写博客了,其实也没有江郎才尽的感觉,就是呢没有想写的冲动。现在写也无以前那么认真了,感觉就是像计流水账一样。算了,记账就记账吧。

 

****************************作者: laviewpbt   时间: 2014.6.26    联系QQ:  1664462947  转载请保留本行信息********************

 

 

转载于:https://www.cnblogs.com/Imageshop/p/3810402.html

你可能感兴趣的文章
百度上线新算法-绿萝算法
查看>>
SIEM期待实时安全分析
查看>>
SANS:2018年度事件响应调查报告
查看>>
利用百度翻译API做的在线翻译(python)
查看>>
php+ajax+json实现分页
查看>>
ios文件操作
查看>>
HTML5 之美:推荐9款优秀的 HTML5 音乐播放器
查看>>
SCDPM2012 R2实战一:基于SQL 2008 R2集群的SCDPM2012 R2的安装
查看>>
C语言打印100 ——200之间的素数
查看>>
tomcat7 的server.xml 里面 Connector 配置官方说明
查看>>
安装Ruby2.0
查看>>
SQL SERVER中字段类型与C#数据类型的对应关系
查看>>
StringBuffer
查看>>
2017年6月8日 笔记
查看>>
ZStack--查询API
查看>>
IP地址规划
查看>>
vue.js component 学习手记
查看>>
openssl passwd 手动生成密码
查看>>
idea 为insert 加粗状态
查看>>
linux系统命令审计
查看>>