以下是2d复数正弦函数,
u0和v0分别代表X和Y方向的基频。
我需要在当前形式中实现正弦函数,以便我可以将其绘制并保存在位图图像文件中。
我如何表示j(虚数)?
我应该分别给u0和v0分配什么值来绘制正弦函数?
任何人都可以给我任何暗示吗?
修改:
这是我的用例:......我需要使用空间和频域方程实现Gabor滤波器。在链接... http://www.cs.utah.edu/~arul/report/node13.html ...中,您可以看到有几个方程式。 (14)是空间域中的Gabor滤波器的等式。 (15)是频域中的Gabor滤波器的等式。因此,我的问题。
答案 0 :(得分:1)
您需要使用真实数学计算复杂值
为此你可以利用这个常用的公式(通常在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图形示例:
粗略的输出风格取决于你的任务你需要看什么/强调什么是重要的和什么不是。例如,您可以改为绘制 2D 功率图:
x,y
是位置(与输入变量相同)color
sqrt(re*re+im*im)
编码为色阶或灰度或者,您可以为re
创建一个单独的图表,为im
创建一个图表: