Laplace算子和Laplacian矩阵

摘要:
拉普拉斯算子的物理意义拉普拉斯算子的定义是梯度的散度。因此,拉普拉斯算子可以用来表示由材料的不均匀分布引起的材料传输。如果拉普拉斯算子的右侧为零,则拉普拉斯方程称为拉普拉斯方程。4在图像处理中使用了拉普拉斯算子。图像处理基于像素离散化,如下所示:5拉普拉斯矩阵是用于表示图形的矩阵。注意拉普拉斯算子是负定的。据观察,这是因为拉普拉斯矩阵的每一列的和等于零。6拉普拉斯算子和拉普拉斯矩阵拉普拉斯算子之间的关系可以扩展到多维计算。拉普拉斯方程使用拉普拉斯算子来表示拉普拉斯矩阵。

1 Laplace算子的物理意义

Laplace算子的定义为梯度的散度。

Laplace算子和Laplacian矩阵第1张

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

Laplace算子和Laplacian矩阵第2张

或者,它是Hessian矩阵的迹:

Laplace算子和Laplacian矩阵第3张

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

Laplace算子和Laplacian矩阵第4张

由此可见,Laplace算子可用于表现由于物质分布不均引起的物质输送。 

2 Laplace算子的数学意义

现在,在一维空间中简单分析上面的式子:

Laplace算子和Laplacian矩阵第5张

也可以写作:

Laplace算子和Laplacian矩阵第6张

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

Laplace算子和Laplacian矩阵第7张

可以看出Laplace算子实际上是一个使函数取平均的算子。多维空间相似。 

3 Laplace方程

若Laplace算子右边为零,称为Laplace方程。Laplace方程的解称为调和函数。若右边是一个函数,称为泊松方程。

4 Laplace算子在图像处理的运用

图像处理是以像素作为基础离散化,如下: 

Laplace算子和Laplacian矩阵第8张

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图:

Laplace算子和Laplacian矩阵第9张 

Laplace算子和Laplacian矩阵第10张

可得知Laplacian矩阵的两个重要性质:一是为对称阵。二是存在一个为零的特征值(秩为|V|-1)。三是一个半正定矩阵。 注意Laplace算子是负定的。

在求解含Laplacian矩阵的方程组时,常常要求为正定矩阵。观察发现这是因为Laplacian矩阵每列相加等于零。这时只需要手动更改第一行和第一列(比如第一个元素设为1,其余设为零),破坏其结构,令秩等于|V|就可以了。

对于非正定矩阵,左乘个transpose of the matrix, 推导如下: 

Ax – b = 0

最小化 ||Ax – b||^2,展开后对x求导数:

Laplace算子和Laplacian矩阵第11张

可转化为正定方程组。

6 Laplace算子和Laplacian矩阵的关系

Laplace算子可以推广到多维情况计算。Laplacian矩阵主要用于三维以下的图形学计算,可以表现复杂的几何结构。而Lapace方程使用了Laplace算子来表示Laplacian矩阵。

免责声明:文章转载自《Laplace算子和Laplacian矩阵》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇VS 项目(c#)引用了 DLL文件,也写了Using,但是编译时提示:未能找到类型或命名空间名称Spring Boot 2.4 配置文件将加载机制大变化下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

二维数组实现回型数算法

import java.util.Arrays; class Main { public static void main(String[] args) { System.out.println("-----------回型数实现-----------"); int n=3;// 总数 int[][] ar...

php 二维数组索引乱序 shuffle() 函数;

在实际开发中有一个打乱数组排序的案例   案例代码如下 public function index(){ if(IS_POST){ #获取卖单列表 $buy_list=M('buy')->where(['status'=>1])->field('num')->sele...

matlab学习:人脸识别之PCA( Principal Component Analysis )

1.链接推荐 关于理解PCA的推荐链接:http://www.cnblogs.com/LeftNotEasy/archive/2011/01/08/lda-and-pca-machine-learning.html 关于理解SVD的推荐链接:http://www.cnblogs.com/LeftNotEasy/archive/2011/01/19/svd-...

说说高斯过程回归

说说高斯过程回归作者介绍:新浪微博ID @妖僧老冯, 9月将赴南京大学(直博生),方向是机器学习与数据挖掘 编者:小便和作者打过几次交道,一直以为是他是已“修成正果”的某某博士,便“毕恭毕敬”地去邀请他写篇牛文。细聊之后才得知小伙子原来是90后,9月份才博士入学。这篇文章对GP进行了深度科普,数学公式是有一些的,但耐心读读,都不是问题的。高斯过程是机器学习...

单应矩阵

定义 2D单应性变换定义为从一个平面到另一个平面的投影映射, 单应矩阵形式如下: [H= egin{bmatrix} h_{00} & h_{01} & h_{02} \ h_{10} & h_{11} & h_{12} \ h_{20} & h_{21} & h_{22} end{bmatrix} ]...

PHP二维数组如何根据某个字段排序

分享下PHP二维数组如何根据某个字段排序的方法。 从两个不同的表中获取各自的4条数据,然后整合(array_merge)成一个数组,再根据数据的创建时间降序排序取前4条。 本文记录的要实现的功能类似于 MySQL 中的 ORDER BY,上个项目中有遇到这样的一个需求。 要求:从两个不同的表中获取各自的4条数据,然后整合(array_merge)成一个数组...