使用离散傅立叶变换 [OpenCV] 查找高频

Find High Frequencies with Discrete Fourier Transform [OpenCV]

我想通过图像中高频的数量来确定图像清晰度。据我了解 OpenCV 中的 dft() 函数 returns 两个具有实数和复数的矩阵。 这就是我被困的地方。我如何从这些数据中确定高频的数量?

感谢每一个hint/link让我加深理解的人。

问候

制作金融时报
计算结果的大小

现在你有了二维矩阵。考虑左上象限(其他是真实源的镜像)。
这里Magn[0][0]条目对应零频,Magn[(n-1)/2][(n-1)/2]条目对应最高频。
此子矩阵的左上部分包含 low-frequency 个样本,因此您可以计算此部分和其余部分的值之和并比较这些和。例如(伪代码):

cvIntegral(Magn, Rect(0..n/4, 0..n/4)) compare with 
cvIntegral(Magn, Rect(0..n/2, 0..n/2)) - cvIntegral(Magn, Rect(0..n/4, 0..n/4))