卷积公式的几何学理解

news2024/9/22 11:27:40

1、Required Knowledge

1.1、概率密度函数

用于描述连续型随机变量在不同取值上的概率密度,记作 f ( x ) f(x) f(x)
如随机变量 X X X的分布为正态分布,则其概率密度函数为:
f ( x ) = 1 σ 2 π e − ( x − μ ) 2 2 σ 2 f(x)=\frac{1}{\sigma\sqrt{2\pi}}e^{-\frac{(x-\mu)^2}{2\sigma^2}} f(x)=σ2π 1e2σ2(xμ)2
记作:
X ∼ N ( μ , σ 2 ) X \sim \mathcal{N}(\mu, \sigma^2) XN(μ,σ2)

1.2、联合概率密度

用于描述两个或多个连续型随机变量联合分布的概率密度。它表明这些随机变量在不同取值上的概率密度,是多个变量的联合概率分布的具体表现形式。
例如,记往坐标轴上打靶的位置为随机事件 A A A,该事件受到随机变量 X X X Y Y Y的影响,那么打靶的位置,即二维随机变量 ( X , Y ) (X, Y) (X,Y)的概率密度叫作 X X X Y Y Y的联合概率密度,记作 f ( x , y ) f(x,y) f(x,y)

1.3、边缘分布概率密度

二维随机变量 ( X , Y ) (X, Y) (X,Y)有概率密度函数,而 X X X Y Y Y都是随机变量,各自也有各自的概率密度,分别记作 f X ( x ) f_X(x) fX(x) f Y ( y ) f_Y(y) fY(y),有:
f X ( x ) = ∫ − ∞ ∞ f X , Y ( x , y )   d y f_X(x) = \int_{-\infty}^{\infty} f_{X,Y}(x, y) \, dy fX(x)=fX,Y(x,y)dy
f Y ( y ) = ∫ − ∞ ∞ f X , Y ( x , y )   d x f_Y(y) = \int_{-\infty}^{\infty} f_{X,Y}(x, y) \, dx fY(y)=fX,Y(x,y)dx

1.4、独立性

A、B是两事件,如果满足
P ( A ∩ B ) = P ( A ) P ( B ) P(A∩B) = P(A)P(B) P(AB)=P(A)P(B)
等同于:
P ( A B ) = P ( A ) P ( B ) P(AB) = P(A)P(B) P(AB)=P(A)P(B)
则称事件 A A A B B B 相互独立。事件 A A A 和事件 B B B 同时发生的概率等于事件A发生的概率乘以事件B发生的概率,即:事件 A A A B B B 是否发生不受另一事件的影响。

2、独立二维随机变量的联合概率密度

如二维随机变量 ( X , Y ) (X,Y) (X,Y)相互独立,则其联合概率密度 f ( x , y ) = f ( x ) f ( y ) f(x,y)=f(x)f(y) f(x,y)=f(x)f(y)。现有变量 X , Y X,Y X,Y均服从标准正态分布,其联合分布的概率密度为如图 A A A 所示的曲面。

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

# 假设 X 和 Y 都是独立的标准正态分布 N(0, 1)
mu_X, sigma_X = 0, 1
mu_Y, sigma_Y = 0, 1

# 定义网格范围和步长
x = np.linspace(-4, 4, 200)
normal_x = norm.pdf(x, mu_X, sigma_X)
y = np.linspace(-4, 4, 200)
normal_y = norm.pdf(y, mu_Y, sigma_Y)
x, y = np.meshgrid(x, y)


# 计算联合概率密度 f(x, y)
f_X = norm.pdf(x, mu_X, sigma_X)
f_Y = norm.pdf(y, mu_Y, sigma_Y)
f_XY = f_X * f_Y  # 由于独立性,联合密度等于单独密度的乘积


# 计算 Z = X + Y 的概率密度
z = x + y  # Z 的值
f_Z = norm.pdf(z, mu_X + mu_Y, np.sqrt(sigma_X**2 + sigma_Y**2))


# 创建一个三维图形对象
fig = plt.figure(figsize=(18, 6))

# 绘制联合分布的三维图
ax1 = fig.add_subplot(131, projection='3d')
surf = ax1.plot_surface(x, y, f_XY, cmap='hot', edgecolor='k', alpha=0.5)
ax1.set_title('Joint Probability Density of X and Y')
ax1.set_xlabel('X')
ax1.set_ylabel('Y')
ax1.set_zlabel('Density')
ax1.view_init(elev=30, azim=45)  # 调整视角

# 分别在x=4、y=4的平面上绘制原始的X、Y标准正态分布图
ax1.plot(x[0, :], np.full_like(x[0, :], 4), normal_x, color='green', lw=2, label='Normal X')
ax1.plot(np.full_like(y[:, 0], 4), y[:, 0], normal_y, color='black', lw=2, label='Normal Y')

# 添加图例
ax1.legend()


plt.tight_layout()
plt.show()

在这里插入图片描述
如图所示,绿色和黑色分别为 X X X Y Y Y 的标准正态概率密度函数图,而曲面是联合概率密度函数图像。可以看出 ( 0 , 0 ) (0, 0) (0,0) 这个点的概率密度最大,符合标准正态分布的特性。

3、边缘分布的几何学解释

由联合分布的概率密度函数可知:
f X ( x ) = ∫ − ∞ ∞ f X , Y ( x , y )   d y f_X(x) = \int_{-\infty}^{\infty} f_{X,Y}(x, y) \, dy fX(x)=fX,Y(x,y)dy
f Y ( y ) = ∫ − ∞ ∞ f X , Y ( x , y )   d x f_Y(y) = \int_{-\infty}^{\infty} f_{X,Y}(x, y) \, dx fY(y)=fX,Y(x,y)dx
如何理解这个公式呢?

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

# 假设 X 和 Y 都是独立的标准正态分布 N(0, 1)
mu_X, sigma_X = 0, 1
mu_Y, sigma_Y = 0, 1

# 定义网格范围和步长
x = np.linspace(-4, 4, 200)
normal_x = norm.pdf(x, mu_X, sigma_X)
y = np.linspace(-4, 4, 200)
normal_y = norm.pdf(y, mu_Y, sigma_Y)
x, y = np.meshgrid(x, y)


# 计算联合概率密度 f(x, y)
f_X = norm.pdf(x, mu_X, sigma_X)
f_Y = norm.pdf(y, mu_Y, sigma_Y)
f_XY = f_X * f_Y  # 由于独立性,联合密度等于单独密度的乘积


# 计算 Z = X + Y 的概率密度
z = x + y  # Z 的值
f_Z = norm.pdf(z, mu_X + mu_Y, np.sqrt(sigma_X**2 + sigma_Y**2))

## 创建一个三维图形对象
fig = plt.figure(figsize=(18, 6))

# 绘制联合分布的三维图
ax1 = fig.add_subplot(131, projection='3d')
surf = ax1.plot_surface(x, y, f_XY, cmap='hot', edgecolor='k', alpha=0.5)
ax1.set_title('Joint Probability Density of X and Y')
ax1.set_xlabel('X')
ax1.set_ylabel('Y')
ax1.set_zlabel('Density')
ax1.view_init(elev=30, azim=45)  # 调整视角

# 分别在x=4、y=4的平面上绘制原始的 X、Y 标准正态分布图
ax1.plot(x[0, :], np.full_like(x[0, :], 4), normal_x, color='green', lw=2, label='Normal X')
ax1.plot(np.full_like(y[:, 0], 4), y[:, 0], normal_y, color='black', lw=2, label='Normal Y')


# 计算边缘分布
# 计算边缘分布
marginal_x = np.sum(f_XY, axis=1) * (y[1, 0] - y[0, 0])  # 对 y 积分得到 x 的边缘分布
marginal_y = np.sum(f_XY, axis=0) * (x[0, 1] - x[0, 0])  # 对 x 积分得到 y 的边缘分布


# 分别在x=4.2、y=4.2的平面上绘制计算 X、Y 边缘分布图
ax1.plot(x[0, :], np.full_like(x[0, :], 4.2), marginal_x, color='red', lw=2, label='Marginal X')
ax1.plot(np.full_like(y[:, 0], 4.2), y[:, 0], marginal_y, color='blue', lw=2, label='Marginal Y')

# 添加图例
ax1.legend()

plt.tight_layout()
plt.show()

在这里插入图片描述
可以看到,原始的 X、Y 分布与基于联合分布函数计算得到的边缘分布是一样的。

以 X 为例,根据代码 marginal_x = np.sum(f_XY, axis=1) * (y[1, 0] - y[0, 0]) 可知,这就是对公式的代码化表达。

要想绘制 X X X 的边缘分布,就是对每个 X X X 的取值计算其概率密度。不妨令 X = 0 X=0 X=0 来理解这个公式。当 X = 0 X=0 X=0 时,联合概率密度如下图:

import numpy as np
import matplotlib.pyplot as plt
from scipy.stats import norm

# 定义网格范围和步长
y = np.linspace(-4, 4, 200)  # y 的取值范围
x = np.linspace(-4, 4, 200)  # x 的取值范围
y, x = np.meshgrid(y, x)

# 假设 X 和 Y 都是独立的标准正态分布 N(0, 1)
mu_X, sigma_X = 0, 1
mu_Y, sigma_Y = 0, 1

# 计算联合概率密度 f(x, y)
f_X = norm.pdf(x, mu_X, sigma_X)
f_Y = norm.pdf(y, mu_Y, sigma_Y)
f_XY = f_X * f_Y  # 由于独立性,联合密度等于单独密度的乘积

# 仅保留 x = 0 的值
tolerance = 0.05  # 容差,用于确定接近0的范围
mask = np.abs(x) < tolerance
f_XY_filtered = np.where(mask, f_XY, 0)  # 将不满足条件的设为 NaN

# 创建一个三维图形对象
fig = plt.figure(figsize=(10, 8))

# 绘制 f(x,y) (仅当 x = 0 时)
ax = fig.add_subplot(111, projection='3d')
surf = ax.plot_surface(x, y, f_XY_filtered, cmap='viridis', edgecolor='k', alpha=0.7)
ax.set_title('f(x,y) (with $x = 0$)')
ax.set_xlabel('X')
ax.set_ylabel('Y')
ax.set_zlabel('Density')

plt.tight_layout()
plt.show()

在这里插入图片描述
x = 0 x = 0 x=0 时, f ( x , y ) f(x,y) f(x,y) 为图中平面。
f X ( 0 ) = ∫ − ∞ ∞ f X , Y ( 0 , y )   d y f_X(0) = \int_{-\infty}^{\infty} f_{X,Y}(0, y) \, dy fX(0)=fX,Y(0,y)dy
f ( x , y ) f(x,y) f(x,y) y y y 轴上求积分,就是图中面的面积。就等于 X X X 的边缘分布函数(标准正态分布)在 x = 0 x=0 x=0 时的值。

4、两个随机变量的函数的分布

之前讲了单个随机变量的概率密度函数,两个随机变量的概率密度函数,那么两个随机变量组成的新的随机变量,其概率密度函数是什么?

( X , Y ) (X,Y) (X,Y) 是二维连续型随机变量,它具有的概率密度 f ( x , y ) f(x,y) f(x,y),则 Z = X + Y Z=X+Y Z=X+Y 仍为连续型随机变量,其概率密度为:
f Z ( z ) = ∫ − ∞ ∞ f ( z − y , y )   d y f_Z(z) = \int_{-\infty}^{\infty} f(z-y,y)\, dy fZ(z)=f(zy,y)dy

f Z ( z ) = ∫ − ∞ ∞ f ( x , z − x )   d x f_Z(z) = \int_{-\infty}^{\infty} f(x,z-x)\, dx fZ(z)=f(x,zx)dx
若 X 和 Y 相互独立,X和Y的边缘概率密度分别为 f X ( x ) f_X(x) fX(x) f Y ( y ) f_Y(y) fY(y),上式变为:
f Z ( z ) = ∫ − ∞ ∞ f X ( z − y ) f Y ( y )   d y f_Z(z) = \int_{-\infty}^{\infty} f_X(z-y) f_Y(y) \, dy fZ(z)=fX(zy)fY(y)dy
f Z ( z ) = ∫ − ∞ ∞ f X ( x ) f Y ( z − x )   d x f_Z(z) = \int_{-\infty}^{\infty} f_X(x) f_Y(z - x) \, dx fZ(z)=fX(x)fY(zx)dx
这两个公式称为 f X f_X fX f Y f_Y fY的卷积公式,记为 f X ∗ f Y f_X*f_Y fXfY

4.1、随机变量 Z 的概率密度

因为正态分布的随机变量的线性组合仍为正态分布(证明可见概率论与数理统计),所以随机变量 Z Z Z 服从均值为 0,方差为 2 的正态分布。

随机变量 Z Z Z 的概率密度的三维和二维图像如图 B B B C C C
Z = 0 Z=0 Z=0 时,概率密度为 0.25 0.25 0.25 左右,对应图 B B B 中过原点,斜率为 0.5 的直线上对应的 X X X Y Y Y 值。对应图 C C C Z = 0 Z=0 Z=0 时的概率密度,同样约为 0.25 0.25 0.25

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

# 定义网格范围和步长
x = np.linspace(-4, 4, 200)
y = np.linspace(-4, 4, 200)
x, y = np.meshgrid(x, y)

# 假设 X 和 Y 都是独立的标准正态分布 N(0, 1)
mu_X, sigma_X = 0, 1
mu_Y, sigma_Y = 0, 1

# 计算联合概率密度 f(x, y)
f_X = norm.pdf(x, mu_X, sigma_X)
f_Y = norm.pdf(y, mu_Y, sigma_Y)
f_XY = f_X * f_Y  # 由于独立性,联合密度等于单独密度的乘积

# 计算 Z = X + Y 的概率密度
z = x + y  # Z 的值
f_Z = norm.pdf(z, mu_X + mu_Y, np.sqrt(sigma_X**2 + sigma_Y**2))

# 计算边缘分布
marginal_x = np.sum(f_XY, axis=0) * (x[0, 1] - x[0, 0])
marginal_y = np.sum(f_XY, axis=1) * (y[1, 0] - y[0, 0])

# 创建一个三维图形对象
fig = plt.figure(figsize=(18, 6))

# 绘制联合分布的三维图
ax1 = fig.add_subplot(131, projection='3d')
ax1.plot_surface(x, y, f_XY, cmap='viridis', edgecolor='k', alpha=0.5)
ax1.set_title('Joint Probability Density of X and Y')
ax1.set_xlabel('X')
ax1.set_ylabel('Y')
ax1.set_zlabel('Density')
ax1.view_init(elev=30, azim=45)  # 调整视角

# 绘制边缘分布图
ax1.plot(x[0, :], np.full_like(x[0, :], 4), marginal_x, color='red', lw=2, label='Marginal X')
ax1.plot(np.full_like(y[:, 0], 4), y[:, 0], marginal_y, color='blue', lw=2, label='Marginal Y')

# 添加图例
ax1.legend()

# 绘制 Z = X + Y 的三维图
ax2 = fig.add_subplot(132, projection='3d')
ax2.plot_surface(x, y, f_Z, cmap='plasma', edgecolor='k', alpha=0.5)
ax2.set_title('Probability Density of Z = X + Y')
ax2.set_xlabel('X')
ax2.set_ylabel('Y')
ax2.set_zlabel('Density')
ax2.view_init(elev=45, azim=0)  # 调整视角

# 绘制 Z 的边缘概率密度图
z_values = np.linspace(-8, 8, 400)
f_Z_marginal = norm.pdf(z_values, mu_X + mu_Y, np.sqrt(sigma_X**2 + sigma_Y**2))

ax3 = fig.add_subplot(133)
ax3.plot(z_values, f_Z_marginal, color='blue', lw=2)
ax3.fill_between(z_values, f_Z_marginal, color='blue', alpha=0.3)
ax3.set_title('Marginal Probability Density of Z = X + Y')
ax3.set_xlabel('Z')
ax3.set_ylabel('Density')

plt.tight_layout()
plt.show()

在这里插入图片描述

4.2、卷积公式的几何学解释

如上边缘分布的几何学解释,我们已知联合分布函数 ( X , Y ) (X,Y) (X,Y),有 Z = X + Y Z=X+Y Z=X+Y,那么Z的概率密度函数 f Z ( z ) f_Z(z) fZ(z) 如下,也就是卷积公式。

要想知道并理解 Z Z Z 的概率密度公式。不妨令 Z = 0 Z=0 Z=0 来理解这个公式。当 Z = 0 Z=0 Z=0 时,联合概率密度如下图:

f Z ( z ) = ∫ − ∞ ∞ f X ( − y ) f Y ( y )   d y = ∫ − ∞ ∞ f X ( x ) f Y ( − x )   d x f_Z(z) = \int_{-\infty}^{\infty} f_X(-y) f_Y(y) \, dy = \int_{-\infty}^{\infty} f_X(x) f_Y( - x) \, dx fZ(z)=fX(y)fY(y)dy=fX(x)fY(x)dx

f Z ( z ) = ∫ − ∞ ∞ f X ( − y ) f Y ( y )   d y f_Z(z) = \int_{-\infty}^{\infty} f_X(-y) f_Y(y) \, dy fZ(z)=fX(y)fY(y)dy 为例, f Y ( y ) f_Y(y) fY(y)为标准正态分布, f X ( − y ) f_X(-y) fX(y)也是标准正态分布,其中 x = − y x = -y x=y

即固定了 y y y x x x也就为 − y -y y f X ( − y ) ∗ f Y ( y ) f_X(-y)*f_Y(y) fX(y)fY(y) 的图像就是 f ( x , y ) f(x,y) f(x,y) 的一个切面,如下图所示。平面方程为 x + y = 0 x+y=0 x+y=0

卷积公式就是对两个变量的其中一个做积分,积分结果就是 Z = 0 Z=0 Z=0 的概率密度。

f X ( − y ) f Y ( y ) f_X(-y)f_Y(y) fX(y)fY(y) 函数在 x x x y y y 方向上进行积分,可以理解为将该三维曲线投影到 x x x y y y 平面上,然后计算投影曲线与坐标轴围成的面积。

由于 45 ° 45° 45° 的原因,使得该曲线在 x x x y y y 平面的投影面积相同。

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

# 定义网格范围和步长
y = np.linspace(-4, 4, 200)
x = np.linspace(-4, 4, 200)
y, x = np.meshgrid(y, x)  # x 和 y 分别用于计算 f_X(-y) 和 f_Y(y)

# 假设 X 和 Y 都是独立的标准正态分布 N(0, 1)
mu_X, sigma_X = 0, 1
mu_Y, sigma_Y = 0, 1

# 计算 f_X(-y) 和 f_Y(y)
f_X = norm.pdf(x, mu_X, sigma_X)
f_Y = norm.pdf(y, mu_Y, sigma_Y)

# 计算 f_X(-y) * f_Y(y)
f_XY = f_X * f_Y

# 仅保留 x + y = 0 的值
tolerance = 0.05
mask = np.abs(x+y) < tolerance
f_XY_filtered = np.where(mask, f_XY, np.nan)
# f_XY_filtered = np.where(mask, f_XY, 0)

# 创建一个三维图形对象
fig = plt.figure(figsize=(10, 8))

# 绘制 f_X(-y) * f_Y(y) 的三维图(仅当 x + y = 0 时)
ax = fig.add_subplot(111, projection='3d')
surf = ax.plot_surface(x, y, f_XY_filtered, cmap='viridis', edgecolor='k', alpha=0.7)
ax.set_title(r'$f_X(-y) \times f_Y(y)$ (with $x + y = 0$)')
ax.set_xlabel('X')
ax.set_ylabel('Y')
ax.set_zlabel('Density')

plt.tight_layout()
plt.show()

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2096227.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

容器化你的应用:使用 Docker 入门指南

Docker 是一个流行的平台&#xff0c;它允许开发者将应用程序及其依赖项打包在一起&#xff0c;形成一个轻量级、可移植的容器。这种做法极大地简化了开发、测试和部署流程&#xff0c;因为无论是在本地还是在云端&#xff0c;容器都能确保应用的一致性。本指南将带你从头开始学…

粗心的懒洋洋做Python二级真题(错一大堆,分享错题)

以下内容&#xff0c;皆为原创&#xff0c;制作不易。感谢大家的点赞和关注。 一.数据流图 数据流图&#xff08;Data Flow Diagram&#xff0c;简称DFD&#xff09;是一种图形化表示法&#xff0c;用于展示信息系统中数据的流动和处理过程。 考点&#xff1a;数据流图是系统逻…

【我要成为配环境高手】Visual Studio中Qt安装与配置(无伤速通)

1.下载安装Qt和VSIX插件 2.本地环境变量配置 添加如下&#xff1a; D:\ProgramData\Qt\Qt5.14.2\5.14.2\msvc2017_64\libD:\ProgramData\Qt\Qt5.14.2\5.14.2\msvc2017_64\bin3.VS配置 ⭐项目右键->属性->调试->环境&#xff0c;添加如下&#xff1a;(很重要&#x…

TCP的连接与断开

三次握手 主动发起连接建立的应用进程叫做客户端(client)。被动等待连接建立的应用进程叫做服务器(server)。 第一次握手&#xff1a;Client将同步比特SYN置为1&#xff08;表示这是一个连接请求或连接接受报文&#xff09;&#xff0c;并发送初始报文段序号seq x&#xff0…

kali——nikto的使用

目录 前言 使用方法 查看帮助&#xff08;--help&#xff09; 常规扫描&#xff08;-h&#xff09; 指定端口扫描&#xff08;-h -p&#xff09; 目录猜解&#xff08;-h -C&#xff09; 扫描敏感目录&#xff08;-h&#xff09; 保存扫描信息 前言 linux自带的nikto工…

【Motion Forecasting】SIMPL:简单且高效的自动驾驶运动预测Baseline

SIMPL: A Simple and Efficient Multi-agent Motion Prediction Baseline for Autonomous Driving 这项工作发布于2024年&#xff0c;前一段时间我已经对这篇文章的摘要和结论进行了学习和总结&#xff0c;这一部分详见https://blog.csdn.net/Coffeemaker88/article/details/1…

快速构建一个ui界面程序--pyqt入门

快速构建一个ui界面程序--pyqt入门 0 背景1 环境准备1.1 安装python1.2 安装pyqt 2 UI设计2.1 启动UI设计可视化工具2.2 生成*.ui文件2.3 编译ui生成对应的py 3 使用UI 0 背景 本文档用于记录开发者如何快速构建一个简单UI程序。开发者使用文档中提及的工具并用于商业活动时&a…

【法如faro】三维激光软件Scene2023数据处理(自动配准并转换坐标)流程

Scene2023数据处理(自动配准并转换坐标)的主要流程为:新建项目、导入数据、处理、自动注册、坐标系转换、模型导出立和面模型导出等。 文章目录 一、新建项目二、导入数据三、处理四、自动注册五、坐标系转换六、模型导出七、立面模型导出八、创建项目点云九、导出一、新建项…

将二叉搜索树转化为排序的双向链表

题目描述 将一个 二叉搜索树 就地转化为一个 已排序的双向循环链表 。 对于双向循环列表&#xff0c;你可以将左右孩子指针作为双向循环链表的前驱和后继指针&#xff0c;第一个节点的前驱是最后一个节点&#xff0c;最后一个节点的后继是第一个节点。 特别地&#xff0c;我…

shell了解和问答机制

GUI&#xff08;图形用户界面&#xff09; 定义与特点&#xff1a; GUI全称为Graphical User Interface&#xff0c;即图形用户界面。 它是一种采用图形方式显示的计算机操作用户界面&#xff0c;允许用户使用鼠标等输入设备操纵屏幕上的图标或菜单选项&#xff0c;以选择命令…

海康二次开发学习笔记12-从Group外部输入图像

从Group外部输入图像 用OpenCV从本地读图 当Group内部无图像源模块时,可以通过代码的方式将图片传入Group内部.实现方式有多种,可以使用OpenCV从本地读图,可在程序集搜索引用OpenCvSharp&#xff0c;同时将其复制本地的属性改为False. 1. 界面设计 增加加载图像按钮 2. 处理…

【学习笔记】卫星通信NTN 3GPP标准化进展分析(二)- 3GPP Release16 内容

一、引言&#xff1a; 本文来自3GPP Joern Krause, 3GPP MCC (May 14,2024) Non-Terrestrial Networks (NTN) (3gpp.org) 本文总结了NTN标准化进程以及后续的研究计划&#xff0c;是学习NTN协议的入门。 【学习笔记】卫星通信NTN 3GPP标准化进展分析&#xff08;一&#xff…

学习Kerberos

学习Kerberos Kerberos的 是一种分布式、基于票证的身份验证服务&#xff0c;因为基于分布式&#xff0c;可能这种类型的协议我们平时接触比较少&#xff0c;Web端一般都是通过Cookie、Token、Oauth、Password等各种协议认证&#xff0c;客户端通过Ssh、Password等认证方式&am…

WAF的功能、检测、指纹及绕过

吉祥知识星球http://mp.weixin.qq.com/s?__bizMzkwNjY1Mzc0Nw&mid2247485367&idx1&sn837891059c360ad60db7e9ac980a3321&chksmc0e47eebf793f7fdb8fcd7eed8ce29160cf79ba303b59858ba3a6660c6dac536774afb2a6330&scene21#wechat_redirect 《网安面试指南》…

尝试用java spring boot+VUE3实现前后端分离部署

前言 这几天开学了&#xff0c;公司这边几个和学校对接的项目都挺忙的&#xff0c;然后我又开始有点闲的情况了。问大佬能不能继续看看若依的项目&#xff0c;大佬让我自己去学了。在看若依的项目的时候在想&#xff0c;python的FLASK后端实现和JAVA spring boot的实现差别大不…

Redis与SpringMVC的整合与最佳实践

整合Redis与Spring MVC&#xff08;现在通常是Spring Boot的一部分&#xff09;可以提高应用性能&#xff0c;特别是在处理大量数据缓存和会话状态管理方面。 下面是一些关于如何整合Redis与Spring MVC的最佳实践&#xff1a; 1. 引入依赖 首先&#xff0c;你需要在你的项目中…

Linux之grafana+onealert报警

grafana介绍 Grafana是一个开源的度量分析和可视化工具&#xff0c;可以通过将采集的数据分析&#xff0c;查询&#xff0c;然后进行可视化的展示,并能实现报警。 grafana安装与登录 在grafana服务器上安装grafana 下载地址&#xff1a;https://grafana.com/grafana/downloa…

包装类及常量池

1、基本数据类型byte、short、int、long、char、boolean的包装类用到了常量池&#xff0c;大小在127以内的从常量池获取&#xff1b; 2、基本数据类型中float、double没有实现常量池技术&#xff1b; 3、java中字符串实现常量池技术&#xff1b; public class Test {public …

电机设计及电机仿真“新工具”—仿真APP

电机仿真APP可以广泛应用于电机设计、制造、测试和维护领域&#xff0c;具有强大的计算能力&#xff0c;能够模拟电机的各种工作状态和参数变化。用户可通过调整仿真参数&#xff0c;快速得到电机的响应和性能参数&#xff0c;从而进行针对性的优化和改进。借助仿真APP&#xf…

动态规划法例题

第一个空&#xff0c;用手工计算&#xff0c;可以用贪心法 先选择价值最大的物品&#xff0c;有两个价值是6的物品&#xff0c;重量合计246 剩余4个空间&#xff0c;只能放重量为2的物品&#xff0c;一共是66315 第二个空&#xff0c;需要将所有物品都放进背包舱室&#xff…