引导影像滤波器

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

在图像处理上,引导影像滤波器(英语: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);而这时若使用引导影像滤波器,以原始影像为引导图片、以深度图为输入图片,便可得到一完整、无坑洞的深度图。

相关

  • 宗教宗教是美国文化中非常显著的一部分。与欧洲基督信仰衰落的情况不同,在美国,基督宗教作为第一大宗教,一直占有主流的社会地位。现在七成以上的美国人信仰基督宗教(包括新教、天主
  • 黏液素黏液素(英语:Mucins,或简称黏素)是一类高分子量蛋白家族,且高度糖基化(属于糖缀合物(英语:glycoconjugate)),在大部分后生动物的上皮组织中都有表达。黏液素的特色是它可以构成胶状物;因
  • N02A·B·C·D·G·H·QI·J·L·M·N·P·R·S·VATC代码N02(镇痛药)是解剖学治疗学及化学分类系统的一个药物分组,这是由世界卫生组织药物统计方法整合中心(The WHO Collaboratin
  • 周官四配颜回 · 孟子 · 曾参 · 孔伋日本藤原惺窝 · 林罗山 · 室鸠巢新井白石 · 雨森芳洲朝鲜薛聪 · 权近 · 吉再 · 安珦 · 李穑李滉 · 王仁 · 李齐贤 
  • 波士顿凯尔特人波士顿凯尔特人(英语:Boston Celtics,英语发音:/bɔstən sɛltɪks/)是基于马赛诸塞州波士顿的一支美国职业篮球队。球队作为东部联盟大西洋赛区参加美国职业篮球联赛的比赛。19
  • 高雄市日治时期建筑列表此列表列出台湾高雄市日治时期的建筑。
  • 原台南州立农事试验场办公厅舍原台南州立农事试验场办公厅舍,为日治时期台南州从事农业相关的研究与试验的机构的农事试验场办公厅舍,1923年设立于台南市竹篙厝,现今台南市东区的西侧。台南州立农事试验场在
  • 杨弦杨弦(1950年11月2日-)生于台湾花莲,台湾民谣歌手,母亲为会计,父亲担任国民党花莲县党部主任委员,于杨弦四岁时过世。父亲逝世后,移居台北,与母亲相依为命。大学时代进入台大农化系,在
  • 抱犊崮抱犊崮,归属兰陵县,位于山东省临沂市兰陵县西北40公里处,高584米,为鲁南群山最高峰。汉代叫“楼山”,魏晋称“仙台山”,直至唐宋时才称“抱犊崮”。,现建有抱犊崮国家森林公园。192
  • 马援马援(前14年-49年),字文渊,东汉扶风郡茂陵县(今陕西省兴平市东北)人,著名军事家。汉光武帝时,拜为伏波将军,封新息侯,世称“马伏波”。出身官宦世家,先祖赵奢为赵将,长相俊美,新莽时,任扶风