引导影像滤波器

✍ dations ◷ 2025-04-27 05:02:16 #非线性滤波器,图像处理,计算机图形学

在图像处理上,引导影像滤波器(英语:Guided Image Filter)是一种能使影像平滑化的非线性滤波器。

与双边滤波器(Bilateral Filter)相同,这个影像滤波器同样能够在清楚保持影像边界的情况下,达到让影像平滑的效果。

但不同于双边滤波器,引导影像滤波器有两个优点:首先,双边滤波器有非常大的计算复杂度,但引导影像滤波器因为并未用到过于复杂的数学计算,有线性的计算复杂度。再来,双边滤波器因为数学模型的缘故,在某些时候会发生梯度反转(gradient reverse)的状况,出现影像有损;而在引导影像滤波器,因为这个滤波器在数学上以线性组合为基础出发,输出图片(Output Image)必与引导图片(Guidance Image)的梯度方向一致,并不会出现梯度反转的问题。

为了达到将影像平滑化、即去除噪声的效果,首先定义输出的结果图片是输入图片减去噪声后的结果;同时,为了让输出的图片符合引导图片的影像边界,将输出图片定为引导图片的线性组合。

以下为引导影像滤波器的基础模型:


(1)   q i = p i n i {\displaystyle q_{i}=p_{i}-n_{i}}

(2)   q i = a I i + b {\displaystyle q_{i}=aI_{i}+b}


在上述公式中, q i {\displaystyle q_{i}} 是第i个输出的像素, p i {\displaystyle p_{i}} 是第i个输入的像素, n i {\displaystyle n_{i}} 是第i个输入像素的噪声成分, I i {\displaystyle I_{i}} 是第i个引导图片的像素, a , b {\displaystyle a,b} 则是用来衡量输入权重的参数。


定义为线性组合(Linear Combination)的原因在于,一对象的边界与其梯度(Gradient)相关,而在线性组合的定义下,输出图片之梯度必与引导图片之梯度成对比(微分时高幂次系数保留而常量项则被去除),故可以达到保留梯度的效果、保留影像边界的目的。

为了导出上述线性组合的参数,将(1)及(2)相减得到公式(3);同时,定义一个代价方程式(cost function)(4):


(3)   n i = p i a I i b {\displaystyle n_{i}=p_{i}-aI_{i}-b}

(4)   E ( a k , b k ) = i ϵ ω k ( ( a k I i + b k p i ) 2 + ϵ a k 2 ) {\displaystyle E(a_{k},b_{k})=\sum _{i{\epsilon }{\omega }_{k}}^{}((a_{k}I_{i}+b_{k}-p{i})^{2}+{\epsilon }a_{k}^{2})}


在上式中, ϵ {\displaystyle \epsilon } 是一用来惩罚(penalize)过大的 a k {\displaystyle a_{k}} 的参数, ω k {\displaystyle \omega _{k}} 是以第 k {\displaystyle k} 个像素为中心点的窗格(window)。

在这个方程式中可以看到,希望同时让最终的输出图片做到让噪声减少以及让引导图片在输出图片的影响减小(引导图片的系数项)两件事,遂定义每个像素噪声和系数项的平方总合为最后须付出的价值项(cost)。并且,基于让价值项最小化的原则,可以将(4)以线性回归(linear regression)的方法找出它的线性模型,从而求得、使得出它的价值方程式有最小解的到以下两参数 a k {\displaystyle a_{k}} b k {\displaystyle b_{k}}


(5)   a k = 1 ω i ϵ ω k I i p i μ k p k ¯ σ k 2 + ϵ {\displaystyle a_{k}={\frac {{\frac {1}{\omega }}\sum _{i\epsilon \omega _{k}}I_{i}p_{i}-\mu _{k}{\bar {p_{k}}}}{\sigma _{k}^{2}+\epsilon }}}

(6)   b k = p k ¯ a k μ k {\displaystyle b_{k}={\bar {p_{k}}}-a_{k}\mu _{k}}


在这里, μ k {\displaystyle \mu _{k}} σ k 2 {\displaystyle \sigma _{k}^{2}} 分别是引导图片 I {\displaystyle I} 在窗格 ω k {\displaystyle \omega _{k}} 的平均数(mean)和标准差(variance),而 p ¯ k = 1 | ω | i ϵ ω k p i {\displaystyle {\bar {p}}_{k}={\frac {1}{\left|\omega \right|}}\sum _{i\epsilon \omega _{k}}p_{i}} 是在窗格 ω i {\displaystyle \omega _{i}} 中像素的平均值;这两项系数,换句话说,即是一以输入图片为考虑计算权重之平均滤波器(weighted mean)。

依据上式,可以列出此滤波器之算法:


Algorithm 1. 引导图片滤波器

输入: 输入图片 p {\displaystyle p} ,引导图片 I {\displaystyle I} ,窗格半径 r {\displaystyle r} ,修正项 ϵ {\displaystyle \epsilon }

输出: 输出图片 q {\displaystyle q}

第一部分

                    m        e        a                  n                      I                                {\displaystyle mean_{I}}   =                               f                      m            e            a            n                          (        I        )              {\displaystyle f_{mean}(I)}                      m        e        a                  n                      p                                {\displaystyle mean_{p}}   =                               f                      m            e            a            n                          (        p        )              {\displaystyle f_{mean}(p)}                      c        o        r                  r                      I                                {\displaystyle corr_{I}}   =                               f                      m            e            a            n                          (        I        .                I        )              {\displaystyle f_{mean}(I.*I)}                      c        o        r                  r                      I            p                                {\displaystyle corr_{Ip}}   =                               f                      m            e            a            n                          (        I        .                p        )              {\displaystyle f_{mean}(I.*p)}  

第二部分

                    v        a                  r                      I                                {\displaystyle var_{I}}   =                     c        o        r                  r                      I                                  m        e        a                  n                      I            .                                  m        e        a                  n                      I                                {\displaystyle corr_{I}-mean_{I.}*mean_{I}}                      c        o                  v                      I            p                                {\displaystyle cov_{Ip}}   =                     c        o        r                  r                      I            p                                  m        e        a                  n                      I            .                                  m        e        a                  n                      p                                {\displaystyle corr_{Ip}-mean_{I.}*mean_{p}}  

第三部分

                    a              {\displaystyle a}   =                     c        o                  v                      I            p                          .                  /                (        v        a                  r                      I                          +        ϵ        )              {\displaystyle cov_{Ip}./(var_{I}+\epsilon )}                      b              {\displaystyle b}   =                     m        e        a                  n                      p                                  a        .                m        e        a                  n                      I                                {\displaystyle mean_{p}-a.*mean_{I}}  

第四部分

                    m        e        a                  n                      a                                {\displaystyle mean_{a}}   =                               f                      m            a            e            a            n                          (        a        )              {\displaystyle f_{maean}(a)}                      m        e        a                  n                      b                                {\displaystyle mean_{b}}   =                               f                      m            a            e            a            n                          (        b        )              {\displaystyle f_{maean}(b)}  

第五部分

                    q              {\displaystyle q}   =                     m        e        a                  n                      a            .                                  I        +        m        e        a                  n                      b                                {\displaystyle mean_{a.}*I+mean_{b}}  

/* f m e a n {\displaystyle f_{mean}} 是一个有线性计算复杂度的平均滤波器(mean filter)*/

引导图片滤波器保留边界的特性,其实也可以被理解为是保留梯度的特性。由下图可以看到,可以将一张图分为细节图层和基底图层两层,基底图层的能量并无小幅度的升降,只有大幅度诸入梯度的能量升降;而细节图层,只有噪声式的小幅度能量升降。而引导图片滤波器所作的,其实就是将细节层和基底层分离并保留基底层,也就是保留梯度而去除噪声,达到平滑效果。

由引导图片滤波器的特性,可以延伸出除了原先的平滑化外的几项功能

当一影像图同时为输出图片和引导图片时,可知最终得到的会是以该图片的边界为依据的基底层和细节层;因此,若要加强依影像之细节,可以将细节层的能量放大n倍后再次叠加回基底层,以达到增强细节的效果。

无论是利用光场(light field)技术或是焦点合成(focal-stack)所制作的深度图(depth map),在出制作完成时往往都会有一些坑洞(holo);而这时若使用引导影像滤波器,以原始影像为引导图片、以深度图为输入图片,便可得到一完整、无坑洞的深度图。

相关

  • 米诺斯文明迈诺斯文明(Minoan civilization),或译作米诺斯文明、弥诺斯文明、迈诺安文明或迈诺亚文明,是爱琴海地区的古代文明,出现于古希腊,迈锡尼文明之前的青铜时代,约公元前3650年—前140
  • 员工价员工价(英语:staff price)指劳工或雇员于任职的公司或关系企业或是签约过的特约商店,提供低于市价的商品或服务,贩卖给劳工。
  • 和歌山县立医科大学和歌山县立医科大学(日语:わかやまけんりついかだいがく)是日本的公立大学。1945年创校。1948年设立大学部。大学略称为和医大。
  • 汪品先汪品先(1936年11月14日-),出生于江苏苏州,中国海洋地质学家。1960年毕业于莫斯科大学地质系。曾在上海华东师范大学地质系和地理系任教,1972年随华东师范大学地理系海洋地质专业调
  • metabolite代谢产物 (英语:Metabolite),又称代谢物是代谢的中间或最后产物,这个词汇是通常指的是小分子。他们有诸如作为燃料、结构、讯号、刺激、抑止酵素(通常作为酵素的辅因子)、防卫或
  • 核桃核桃(walnut)是胡桃属植物的核果。但在植物学上,核桃是胡桃属植物核果中的种子,不属于坚果。核桃可食用(英语:List of edible seeds),最常见的是普通胡桃的坚果,而黑核桃(英语:Juglans
  • 吴怡霈吴怡霈的Facebook专页吴怡霈(1980年2月9日-),台湾女艺人、主持人,曾任记者、主播。原为三立新闻、纬来体育台记者、主播,2009年11月离开主播界,接受王伟忠邀约,于2010年7月成为金星
  • 次氯酸钙次氯酸钙是钙的次氯酸盐,化学式为Ca(ClO)2,是漂白粉的主要成分之一,有杀菌性及氧化性。与其性质类似的还有氯气及次氯酸钠,但是它们都不如次氯酸钙的稳定性高。漂白粉的组分包含
  • 伊朗副总统伊朗副总统是伊朗宪法第124条明确定下的一个官职,由总统委任,负责领导与总统事务相关的组织。副总统的人数不定,位列第一的被称为“第一副总统”。截至2009年7月,伊朗同时有12位
  • 转转乐园《转转乐园》(日语:クルクルランド,英语:Clu Clu Land,又译作“豆豆迷魂阵”)是任天堂开发、于1984年于红白机发行的益智类电子游戏。游戏后来再版或重制于任天堂对战系统街机、FC