You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在MATLAB或Python中绘制2D高斯拉普拉斯(LoG)函数的3D图?

没问题!既然你已经掌握了高斯函数的绘制方法,那实现二维高斯拉普拉斯(LoG)的3D图其实很容易上手——核心就是先明确LoG的数学表达式,再基于它生成网格数据,最后用绘图工具渲染出来就行。我给你分别整理了MATLAB和Python的可直接运行代码片段:

MATLAB 实现方法

二维高斯拉普拉斯的数学表达式为:
$$LoG(x,y) = \frac{1}{\pi\sigma^4} \left( \frac{x^2 + y2}{2\sigma2} - 1 \right) e{-\frac{x2 + y2}{2\sigma2}}$$
其中*σ(标准差)*是控制LoG核大小的关键参数。以下是完整代码:

% 设置核心参数
sigma = 1;          % 高斯核的标准差,可根据需求调整
step = 0.1;         % 网格点的步长,步长越小图越精细
range = 3*sigma;    % 取3σ范围,覆盖LoG函数的主要分布区域

% 生成二维坐标网格
[x, y] = meshgrid(-range:step:range, -range:step:range);

% 计算每个网格点的LoG函数值
r_squared = x.^2 + y.^2;  % 计算每个点到原点的距离平方
log_val = (1/(pi*sigma^4)) .* ((r_squared/(2*sigma^2)) - 1) .* exp(-r_squared/(2*sigma^2));

% 绘制3D曲面图
figure;
surf(x, y, log_val);
shading interp;           % 启用平滑着色,让曲面更细腻
colormap jet;             % 选择jet配色方案,便于区分数值高低
colorbar;                 % 添加颜色条,直观对应数值
title('二维高斯拉普拉斯(LoG)函数3D图');
xlabel('X');
ylabel('Y');
zlabel('LoG Value');
Python 实现方法

Python这边我们用numpy生成数据,matplotlib绘制3D图,逻辑和MATLAB一致:

import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D

# 设置核心参数
sigma = 1
step = 0.1
range_val = 3 * sigma  # 同样取3σ范围

# 生成二维坐标网格
x = np.arange(-range_val, range_val + step, step)
y = np.arange(-range_val, range_val + step, step)
X, Y = np.meshgrid(x, y)

# 计算LoG函数值
r_squared = X**2 + Y**2
log_val = (1/(np.pi * sigma**4)) * ((r_squared/(2*sigma**2)) - 1) * np.exp(-r_squared/(2*sigma**2))

# 创建3D绘图对象
fig = plt.figure(figsize=(10, 7))
ax = fig.add_subplot(111, projection='3d')

# 绘制平滑曲面
surf = ax.plot_surface(X, Y, log_val, cmap='jet', shading='interp')

# 添加图表元素
ax.set_title('二维高斯拉普拉斯(LoG)函数3D图', fontsize=12)
ax.set_xlabel('X')
ax.set_ylabel('Y')
ax.set_zlabel('LoG Value')
fig.colorbar(surf, shrink=0.5, aspect=5)  # 添加颜色条

plt.show()

你可以根据需要调整sigma和step参数:σ越大,LoG的“中心环”越宽;步长越小,曲面的细节越丰富。

内容的提问来源于stack exchange,提问作者john

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.12 04:05:13