三维网格去噪算法(L0 Minimization)
[He et al. 2013]文章提出了一种基于L0范数最小化的三角网格去噪算法。该思想最初是由[Xu et al. 2011]提出并应用于图像平滑,假设c为图像像素的颜色向量,▽c为颜色向量的梯度,设置目标函数为:minc |c – c*|2 + |▽c|0,其中|▽c|0为▽c的L0范数,c*为原始图像的颜色向量。通过引入辅助变量δ,优化函数变为:minc,δ |c – c*|2 + β|▽c – δ|2 + λ|δ|0,其中λ用于控制最终图像的平滑程度。优化过程分两步:第一步固定c优化δ,即minδ β|▽c – δ|2 + λ|δ|0;第二步固定δ优化c,即minc |c – c*|2 + β|▽c – δ|2。然后循环迭代这两步,每次迭代中β乘以2,使得最终▽c ≈ δ。
当将L0范数最小化的思想应用于三角网格去噪时,网格顶点坐标p可以代替c,但是还需要设置一个离散微分算子来代替▽c,其满足网格平坦区域值为0,其中一个选择就是离散Laplacian算子。文章提出了一种应用于网格边的微分算子D(e),其表达式为:
但是当有角度接近0时,微分算子的权重会变成inf,因此文章又提出了一种优化后的微分算子表达式:
微分算子D(e)中的符号说明
对于非均匀噪声网格,文章在优化过程中加入了正则化项R(e) = (p1 – p2 + p3 – p4)2,于是优化目标变为:minp,δ |p – p*|2 + α|R(p)|2 + β|D(p) – δ|2 + λ|δ|0,其中p*为初始网格顶点坐标,D(p)代表与p相关的表达式,其第i项对应第i条边的微分算子,R(p)的第i项对应第i条边的正则项。同样优化过程分两步:第一步固定p优化δ,即minδ β|D(p) – δ|2 + λ|δ|0,当,δi = 0,否则δi = Di;第二步固定δ优化p,即minp |p – p*|2 + α|R(p)|2 + β|D(p) – δ|2,相当于求解稀疏矩阵方程组。然后循环迭代上述两个步骤直到达到预定条件。
效果:
本文为原创,转载请注明出处:http://www.cnblogs.com/shushen。
参考文献:
[1] Lei He and Scott Schaefer, "Mesh denoising via L0 minimization," ACM Trans. Graph. 32, 4, Article 64 (July 2013), 8 pages, 2013.
[2] Li Xu, Cewu Lu, Yi Xu, and Jiaya Jia, "Image smoothing via L0 gradient minimization," In Proceedings of the 2011 SIGGRAPH Asia Conference (SA '11). ACM, New York, NY, USA, , Article 174 , 12 pages, 2011.
三维网格去噪算法(L0 Minimization)的更多相关文章
- 三维网格去噪算法(two-step framework)
基于两步法的网格去噪算法顾名思义包含两个步骤:首先对网格表面的法向进行滤波,得到调整后的网格法向信息,然后根据调整后的法向更新顶点坐标位置,下面介绍三篇该类型的文章. [Sun et al. 2007 ...
- 三维网格去噪算法(bilateral filter)
受图像双边滤波算法的启发,[Fleishman et al. 2003]和[Jones et al. 2003]分别提出了利用双边滤波算法对噪声网格进行光顺去噪的算法,两篇文章都被收录于当年的SIGG ...
- Vertex-Based Diffusion for 3-D Mesh Denoising(三维网格去噪中基于顶点的扩散算法)
Abstract—We present a vertex-based diffusion for 3-D mesh denoising by solving a nonlinear discrete ...
- Atitit.java图片图像处理attilax总结 BufferedImage extends java.awt.Image获取图像像素点image.getRGB(i, lineIndex); 图片剪辑/AtiPlatf_cms/src/com/attilax/img/imgx.javacutImage图片处理titit 判断判断一张图片是否包含另一张小图片 atitit 图片去噪算法的原理与
Atitit.java图片图像处理attilax总结 BufferedImage extends java.awt.Image 获取图像像素点 image.getRGB(i, lineIndex); ...
- 三维网格形变算法(Linear rotation-invariant coordinates和As-Rigid-As-Possible)
在三维网格形变算法中,个人比较喜欢下面两个算法,算法的效果都比较不错, 不同的是文章[Lipman et al. 2005]算法对控制点平移不太敏感.下面分别介绍这两个算法: 文章[Lipman et ...
- 三维网格分割算法(Random Walks)
首先以一维随机游走(1D Random Walks)为例来介绍下随机游走(Random Walks)算法,如下图所示,从某点出发,随机向左右移动,向左和向右的概率相同,都为1/2,并且到达0点或N点则 ...
- 基于谱聚类的三维网格分割算法(Spectral Clustering)
谱聚类(Spectral Clustering)是一种广泛使用的数据聚类算法,[Liu et al. 2004]基于谱聚类算法首次提出了一种三维网格分割方法.该方法首先构建一个相似矩阵用于记录网格上相 ...
- 基于随机游走的三维网格分割算法(Random Walks)
首先以一维随机游走(1D Random Walks)为例来介绍下随机游走(Random Walks)算法,如下图所示,从某点出发,随机向左右移动,向左和向右的概率相同,都为1/2,并且到达0点或N点则 ...
- 【算法随记六】一段Matlab版本的Total Variation(TV)去噪算法的C语言翻译。
最近看到一篇文章讲IMAGE DECOMPOSITION,里面提到了将图像分为Texture layer和Structure layer,测试了很多方法,对于那些具有非常强烈纹理的图像,总觉得用TV去 ...
随机推荐
- atom编辑markdown之上传图片
01atom编辑markdown之上传图片 :first-child { margin-top: 0px; } .markdown-preview:not([data-use-github-style ...
- go语言 类型:布尔类型
Go语言中的布尔类型与其他语言基本一致,关键字也为bool,可赋值为预定义的true和false示例代码如下: var v1 bool v1 = true v2 := (1 == 2) // v2也会 ...
- CSS3滚动条-webkit-scrollbar
webkit现在支持拥有overflow属性的区域,列表框,下拉菜单,textarea的滚动条自定义样式. 如果你想跳过介绍,直接看demo的话,请点击demo 滚动条是一个伪元素,可以自定义样式.这 ...
- console命令详解
Firebug是网页开发的利器,能够极大地提升工作效率. 但是,它不太容易上手.我曾经翻译过一篇<Firebug入门指南>,介绍了一些基本用法.今天,继续介绍它的高级用法. ======= ...
- Oracle11g 统计信息——统计信息自动收集任务
参考文献: Oracle11g 统计信息(一)-----统计信息自动收集任务 背景: 在使用cacti监控oracle数据库IO的时候发现每天晚上10点钟的时候oracle数据库读写明显增加,如下图所 ...
- 在android用Get方式发送http请求
烦人的日子终于过去啦,终于又可以写博客啦,对自己的android学习做个总结,方便以后查看...... 一.在android用Get方式发送http请求,使用的是java标准类,也比较简单. 主要分以 ...
- Ida动态修改android程序的内存数据和寄存器数值,绕过so文件的判断语句
我们继续分析自毁程序密码这个app,我们发现该程序会用fopen ()打开/proc/[pid]/status这个文件,随后会用fgets()和strstr()来获取,于是我们在strstr()处下个 ...
- UIApplicationDelegate
App受到干扰时,UIApplication会通知它的delegate对象,让delegate处理系统事件. 项目中的AppDelegate已经遵守了UIApplicationDelegate协议 ...
- 新萝卜家园GHOST WIN7系统32,64位极速装机特别版
系统来自:系统妈:http://www.xitongma.com 新萝卜家园GHOST win7系统32位极速装机特别版 V2016年3月 系统概述 新萝卜家园ghost win7系统32位极速装机特 ...
- 学习 HTML5-页面结构(1)
缘起 2014年10月29日,万维网联盟宣布,经过几乎8年的艰辛努力,HTML5标准规范终于最终制定完成了,并已公开发布. 而HTML5的草稿版本在13年就已经放出.作为一个有追求的程序猿这次想赶一次 ...