如何实现复杂的正弦函数?
How can I implement a complex sinusoidal function?
下面是二维复数正弦函数,
u0和v0分别代表X方向和Y方向的基频
我需要以目前的形式实现正弦函数,这样我就可以绘制它并将其保存在位图图像文件中。
如何表示 j(虚数)?
我应该分别为 u0 和 v0 分配什么值来绘制正弦函数?
任何人都可以给我任何提示吗?
编辑:
这是我的用例:…………我需要使用空间域和频域方程来实现 Gabor 滤波器。在link ... http://www.cs.utah.edu/~arul/report/node13.html ...中,可以看到有几个等式。 (14)是空间域Gabor滤波器的方程。 (15) 是频域 Gabor 滤波器的方程。因此,我的问题。
你需要用真正的数学来实际计算复数值
为此,您可以利用这个常用公式(通常用于 DFT/DFFT):
e^(j*x) = cos(x) + j*sin(x)
现在因为您没有复数,所以您需要将复值作为 2 元素向量处理 cplx = re + j*im
所以:
e^(-j*2*pi*(u0*x+v0*y)) = cos(-2*pi*(u0*x+v0*y)) + j*sin(-2*pi*(u0*x+v0*y))
---------------------------------------------------------------------------
re(x,y) = cos(-2*pi*(u0*x+v0*y))
im(x,y) = sin(-2*pi*(u0*x+v0*y))
绘制值
复杂域有 2 个部分 (re,im
),您的函数是 2D,因此您可以得到 4D 图。你需要把它转换成人类可以理解的东西,我会用很多方法来制作 3D 图,其中:
x,y
是位置(同输入变量)
z
是实部 re
color
是虚部 im
编码为色标(类似于 IR 图像)或灰度
不要忘记旋转投影图,以便从侧面看到它有点倾斜,不会隐藏重要特征。此处查看带有颜色编码的 3D 图形示例:
当然,输出样式取决于您的任务,您需要什么 see/emphasize 什么重要,什么不重要。例如,您可以绘制 2D 功率图:
x,y
是位置(同输入变量)
color
被 sqrt(re*re+im*im)
编码为色阶或灰阶
或者您可以创建 2 个单独的图,一个用于 re
,一个用于 im
,请在此处查看一些示例:
- What should be the input and output for an FFT image transformation?
下面是二维复数正弦函数,
u0和v0分别代表X方向和Y方向的基频
我需要以目前的形式实现正弦函数,这样我就可以绘制它并将其保存在位图图像文件中。
如何表示 j(虚数)?
我应该分别为 u0 和 v0 分配什么值来绘制正弦函数?
任何人都可以给我任何提示吗?
编辑:
这是我的用例:…………我需要使用空间域和频域方程来实现 Gabor 滤波器。在link ... http://www.cs.utah.edu/~arul/report/node13.html ...中,可以看到有几个等式。 (14)是空间域Gabor滤波器的方程。 (15) 是频域 Gabor 滤波器的方程。因此,我的问题。
你需要用真正的数学来实际计算复数值
为此,您可以利用这个常用公式(通常用于 DFT/DFFT):
e^(j*x) = cos(x) + j*sin(x)
现在因为您没有复数,所以您需要将复值作为 2 元素向量处理
cplx = re + j*im
所以:e^(-j*2*pi*(u0*x+v0*y)) = cos(-2*pi*(u0*x+v0*y)) + j*sin(-2*pi*(u0*x+v0*y)) --------------------------------------------------------------------------- re(x,y) = cos(-2*pi*(u0*x+v0*y)) im(x,y) = sin(-2*pi*(u0*x+v0*y))
绘制值
复杂域有 2 个部分 (
re,im
),您的函数是 2D,因此您可以得到 4D 图。你需要把它转换成人类可以理解的东西,我会用很多方法来制作 3D 图,其中:x,y
是位置(同输入变量)z
是实部re
color
是虚部im
编码为色标(类似于 IR 图像)或灰度
不要忘记旋转投影图,以便从侧面看到它有点倾斜,不会隐藏重要特征。此处查看带有颜色编码的 3D 图形示例:
当然,输出样式取决于您的任务,您需要什么 see/emphasize 什么重要,什么不重要。例如,您可以绘制 2D 功率图:
x,y
是位置(同输入变量)color
被sqrt(re*re+im*im)
编码为色阶或灰阶
或者您可以创建 2 个单独的图,一个用于
re
,一个用于im
,请在此处查看一些示例:- What should be the input and output for an FFT image transformation?