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

感谢所有能够为我提供更好理解的提示/链接。

问候

最佳答案

FT
计算结果幅度

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

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))

关于opencv - 使用离散傅立叶变换[OpenCV]查找高频,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34991121/

10-13 04:37