问题标签 [fourier-descriptors]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
matlab - Matlab傅里叶描述符有什么问题?
我正在使用 Gonzalezfrdescp
函数来获取边界的傅立叶描述符。我使用这段代码,我得到了两组完全不同的数字,描述了两个相同但不同的比例形状。
那么有什么问题呢?
为什么我会得到相同但规模不同的两个圆圈的不同描述符?
c++ - 用 dft 粗略估计质心
我想要质心的坐标,并且我已经计算了 DFT(用于不同的目的)。我看过一些幻灯片,这些幻灯片暗示了通过查看矩阵的第一个值来粗略估计质心的可能性。代码基于:http ://docs.opencv.org/doc/tutorials/core/discrete_fourier_transform/discrete_fourier_transform.html
但是每次 y 值变为 0。x 值似乎是正确的。我错过了什么吗?
matlab - 在matlab中理解傅里叶描述符程序的前提是什么?
我是数字图像处理的新手,必须模拟一个仿射不变的傅里叶描述符程序,我想知道能够理解这个程序所需的先决条件,我的参考是 Gonzalez 的使用 MATLAB 进行数字图像处理,我看过一个这个网站上的问题,关于相同的程序,但无法理解程序以及解决方案,问题是:
“我正在使用 Gonzalez frdescp 函数来获取边界的傅立叶描述符。我使用这段代码,我得到了两组完全不同的数字,描述了两个相同但不同的比例形状。
那么有什么问题吗?”
一些机构可以帮助我了解了解该程序的先决条件并进一步帮助我吗?
matlab - 使傅里叶结果对旋转、缩放、平移保持不变
我想知道傅立叶矩阵中的哪些值对图像的大小、旋转、平移等变化负责。
我编写了一个二维 DFT 函数,该函数输出复数的 dft 矩阵。
如何删除负责图像缩放、平移和旋转的值,例如当我有 2 个图像时:
图片1
Image2 = Image1 旋转 90 度
一旦我们比较了两幅图像的 DFT 矩阵,我们就会发现它们是相等的。
这是我拥有的 DFT 函数的代码:
matlab - 如何使傅里叶描述符结果不敏感?
我试图通过使用傅里叶描述符来区分 Matlab 中图像的形状。我想要做的是: 1.为每个图像生成傅里叶描述符;2. 计算这些傅里叶描述符之间的欧几里得距离以比较形状。
我的问题是我不能使计算傅里叶描述符的结果对几何变换不敏感(例如旋转和缩放)。
我现在使用的代码是“Gonzales matlab 版本”,这个链接中的那个。我试图通过这样做来规范化结果:
但我不认为它按我预期的那样工作。如果我改变同一图像的方向或比例,结果会有所不同。
我被这个问题困住了几天。我将不胜感激任何建议,提前谢谢大家!
image - 傅里叶形状描述符
我正在看一篇名为“使用通用傅里叶描述符的基于形状的图像检索”的论文,但只有傅里叶描述符的基本知识。我正在尝试实现论文第 12 页上的算法,并得到了一些我无法真正理解的结果。
如果我创建一个小图像,计算图像的 FD,并将 FD 与在 x 和 y 方向上由单个像素平移的同一图像进行比较,描述符完全不同,除了第一个条目 -这是完全相同的。首先,一个问题是,这些描述符是否应该在两个图像之间完全相同(因为描述符显然是缩放、旋转和平移不变的)?
其次,在论文中,它提到两个独立图像的描述符通过简单的欧几里德距离进行比较 - 因此,通过取上述两个描述符之间的欧几里德距离,欧几里德距离显然为 0。
我快速整理了一些 Javascript 代码来测试算法,如下所示。
有没有人有任何意见、想法和前进的方法?
谢谢,保罗
matlab - 如何使用傅里叶级数执行卷积
好的,让我切入正题。
我正在尝试使用 MATLAB(i)根据已知系数生成傅立叶级数,然后(ii)在已知脉冲时确定输出函数。
到目前为止,我使用此代码获取傅立叶级数:
这可以按需要工作。现在脉冲响应如下:
现在,为了获得函数,我们需要对各自的函数进行卷积。但是当我输入以下内容时,我得到了错误:
任何帮助,将不胜感激
c++ - 离散傅里叶变换实现与 OpenCV DFT 给出不同的结果
我们已经实现了 DFT,并想用 OpenCV 的实现对其进行测试。结果是不同的。
- 我们的 DFT 的结果是按从小到大的顺序排列的,而 OpenCV 的结果没有任何顺序。
- 两个计算的第一个 (0th) 值相同,在这种情况下,复数部分为 0 (因为 e^0 = 1,在公式中)。其他值是不同的,例如 OpenCV 的结果包含负值,而我们的没有。
这是我们对 DFT 的实现:
这就是我们使用 OpenCV 计算 DFT 的方式:
变量centroidDistance在上一步中计算。
注意:请避免回答说使用 OpenCV 而不是您自己的实现。
opencv - 使用 Python 从图像中提取傅里叶描述符
我有一些带有形状的标签图像(圆形、矩形和空白)。在使用中值模糊和 Gabor 过滤器处理图像后,我可以消除可变照明对图像的大部分影响,它们看起来像这样:
我尝试使用 HOG、LDA、PCA 和像素本身训练 SVM,但我几乎无法达到 40-60% 的准确率。我真正想做的是在图像形状的信息中使用。我向我推荐了傅立叶描述符,虽然我找到了一个关于使用 NumPy 和 OpenCV 对图像应用傅立叶变换的很好的教程,但我不确定如何从图像中提取傅立叶描述符然后识别那些是独特的不同形状。有谁知道如何做到这一点,或者可以推荐一种替代技术来从这些图像中获取允许 SVM 区分它们的特征?
matlab - 形状识别神经网络性能不佳
我正在尝试实现一个用于形状识别的神经网络——实际上这些形状是字母。我想实现这个网络来处理从形状中检索到的傅里叶描述符。我的问题是,无论我做什么,改变隐藏层神经元的数量,使用不同的训练函数等等,我总是得到或多或少等于 0.25 的网络性能。我已经为此苦苦挣扎了几天,我真的在这里碰到了一堵砖墙,所以我将不胜感激在这件事上的任何帮助。
F 是实数值傅立叶描述符。