Laplace算子和Laplacian矩阵
1 Laplace算子的物理意义
Laplace算子的定义为梯度的散度。

在Cartesian坐标系下也可表示为:

或者,它是Hessian矩阵的迹:

以热传导方程为例,因为热流与温度的梯度成正比,那么温度的梯度的散度就是热量的损失率。

由此可见,Laplace算子可用于表现由于物质分布不均引起的物质输送。
2 Laplace算子的数学意义
现在,在一维空间中简单分析上面的式子:

也可以写作:

把分子第一项和第二项分别按泰勒展开:

可以看出Laplace算子实际上是一个使函数取平均的算子。多维空间相似。
3 Laplace方程
若Laplace算子右边为零,称为Laplace方程。Laplace方程的解称为调和函数。若右边是一个函数,称为泊松方程。
4 Laplace算子在图像处理的运用
图像处理是以像素作为基础离散化,如下:

5 Laplacian 矩阵
是一种用于表示图的矩阵。 它的维度是 |V|-by-|V| ( |V| 是节点的数目 )。 James Demmel提供了一种由Incidence matrix转化为Laplacian矩阵的方法。
In(G)是一个 |V|-by-|E| 矩阵( |E| 是边的数目 ), 设边e=(i,j),这一列除了第i行(为+1)和第j行(为-1)外都为零。 需要说明的是,根据这个定义,对于无向图 e=(i,j) 和 e=(j,i) 是等价的, 看似会生成很多不同的In图(根据每条边不同的取向)。但是实际上可以证明,无论边的方向怎么取,由In图生成的L图都是唯一的。 也就是说, e=(i,j) 和 e=(j,i) 怎么取是无关紧要的。 如何使用In图生成L图:


可得知Laplacian矩阵的两个重要性质:一是为对称阵。二是存在一个为零的特征值(秩为|V|-1)。三是一个半正定矩阵。 注意Laplace算子是负定的。
在求解含Laplacian矩阵的方程组时,常常要求为正定矩阵。观察发现这是因为Laplacian矩阵每列相加等于零。这时只需要手动更改第一行和第一列(比如第一个元素设为1,其余设为零),破坏其结构,令秩等于|V|就可以了。
对于非正定矩阵,左乘个transpose of the matrix, 推导如下:
Ax – b = 0
最小化 ||Ax – b||^2,展开后对x求导数:

可转化为正定方程组。
6 Laplace算子和Laplacian矩阵的关系
Laplace算子可以推广到多维情况计算。Laplacian矩阵主要用于三维以下的图形学计算,可以表现复杂的几何结构。而Lapace方程使用了Laplace算子来表示Laplacian矩阵。
Laplace算子和Laplacian矩阵的更多相关文章
- [转]Laplace算子和Laplacian矩阵
1 Laplace算子的物理意义 Laplace算子的定义为梯度的散度. 在Cartesian坐标系下也可表示为: 或者,它是Hessian矩阵的迹: 以热传导方程为例,因为热流与温度的梯度成正比,那 ...
- Python 图像处理 OpenCV (12): Roberts 算子、 Prewitt 算子、 Sobel 算子和 Laplacian 算子边缘检测技术
前文传送门: 「Python 图像处理 OpenCV (1):入门」 「Python 图像处理 OpenCV (2):像素处理与 Numpy 操作以及 Matplotlib 显示图像」 「Python ...
- Python 图像处理 OpenCV (13): Scharr 算子和 LOG 算子边缘检测技术
前文传送门: 「Python 图像处理 OpenCV (1):入门」 「Python 图像处理 OpenCV (2):像素处理与 Numpy 操作以及 Matplotlib 显示图像」 「Python ...
- SBX(Simulated binary crossover)模拟二进制交叉算子和DE(differential evolution)差分进化算子
一起来学演化计算-SBX(Simulated binary crossover)模拟二进制交叉算子和DE(differential evolution)差分进化算子 觉得有用的话,欢迎一起讨论相互学习 ...
- Java流中的map算子和flatMap算子的区别
map算子和flatMap算子 map和flatMap都是映射(转换),那么他们之间究竟有什么区别呢? 1.我们先简单了解下map算子: @org.junit.Test public void tes ...
- 灰度图像--图像分割 Sobel算子,Prewitt算子和Scharr算子平滑能力比较
学习DIP第47天 转载请标明本文出处:http://blog.csdn.net/tonyshengtan ,出于尊重文章作者的劳动,转载请标明出处!文章代码已托管,欢迎共同开发: https://g ...
- mit6.830-lab2-常见算子和 volcano 执行模型
一.实验概览 github : https://github.com/CreatorsStack/CreatorDB 这个实验需要完成的内容有: 实现过滤.连接运算符,这些类都是继承与OpIterat ...
- opencv学习笔记(六)---图像梯度
图像梯度的算法有很多方法:sabel算子,scharr算子,laplacian算子,sanny边缘检测(下个随笔)... 这些算子的原理可参考:https://blog.csdn.net/poem_q ...
- 斑点检测(LoG,DoG) [上]
斑点检测(LoG,DoG) [上] 维基百科,LoG,DoG,DoH 在计算机视觉中,斑点检测是指在数字图像中找出和周围区域特性不同的区域,这些特性包括光照或颜色等.一般图像中斑点区域的像素特性相似甚 ...
随机推荐
- Index Skip Scan in Oracle in 11g
http://viralpatel.net/blogs/oracle-index-skip-scan/ in 11g the same sql use index skip scan but in 1 ...
- input 单选按钮radio 取消选中
//需要先引入JQ.js <input name="rdo" value="AA" type="radio" tag="0& ...
- UGUI 切割图片
1.图片设置为以下格式,然后点击Sprite Editor. 2.点击Slice. 3.再点击Slice. 4.效果图.
- Unity Transform
public class PlayerControll : MonoBehaviour { Transform playerTransform; Animation playerAnimation; ...
- [转]FireFox与IE 下js兼容触发click事件的代码
本文转自:http://www.jb51.net/article/16549.htm FireFox与IE 下js兼容触发click事件 ,对于需要兼容这两者的朋友,就需要参考下下面的代码了<a ...
- 学习用node.js建立一个简单的web服务器
一.建立简单的Web服务器涉及到Node.js的一些基本知识点: 1.请求模块 在Node.js中,系统提供了许多有用的模块(当然你也可以用JavaScript编写自己的模块,以后的章节我们将详细讲解 ...
- Js获取移动设备分辨率
在<head>中引入 <meta name="viewport" content="width=device-width, initial-scale ...
- VCL
vcl常用配置 不缓存摸一个资源 在vcl_recv中 if (req.url ~ "private") { return (pass); } 动静分离 先定一个多个backend ...
- 如何结合后台数据库 启动vue项目
一:连接数据库 1. 点击打开后输入密码 2.查看数据库 show databases; 3.创建数据库 create database jd; 删除数据库 drop database jd; 4.使 ...
- Devexpress Xtrareports 创建多栏报表
根据官方回答:多列或多行(取决于当前的多栏设置)呈现数据的报表 这种报表是有用的,例如,当每个明细区都只显示少量数据.并且需要在一列的右侧打印下一个明细区时,这样就能充分利用整个页面的宽度,此外,当创 ...