视频网址:https://www.bilibili.com/video/av37567072/
代码网址:https://download.youkuaiyun.com/download/lykymy/10833542
实现思想
本次实验主要是根据《Denoising point sets via L0 minimization》以及《Image Smoothing via L0 Graient Minimization》这两篇论文实现的。在这两篇论文中它们都涉及到同一个思想,那就是L0范式的优化问题。其实际上就是借助辅助变量,将L0优化问题转化为L2优化问题,从而较为方便地进行求解。在这,我们可以发现,针对不同的处理对象,其设计的函数也不相同。下面将具体进行介绍。
关于L0以及其他的相关范式的定义,可以参考我写的相关博客。
L0范式实际上就是求解一个向量中非0向量的个数,其具体的表达式如下所示:
其中符号|*|0就是代表求解非0的个数。
我们的目的便是为了实现L0能量公式的最小化,即如下所示:
由于该公式很难直接求解出最优问题,因此需要引入辅助变量,将其转化为基于L2的范式进行最优解的求取。因此,上述公式可以转化为下列公式:
下面就需要根据具体进行具体分析:
针对一维的信号,S是表示输入图像,D(S)是表示向量中非0的个数
针对二维的图像,S是表示图像中每个像素的颜色,D(S)是表示颜色的梯度
针对三维的图像,S是表示网格中点的位置,D(S)是表示基于Laplcaian算子的边缘的导数
为了更好的求解上述公式,我们需要将其分解为两个子问题:一个是求解S,另一个是求解辅助变量。
在求解辅助变量的时候,我们需要将S看成是一个常量,利用下述公式进行求解
通过归纳证明,可以得出