傅里叶变换
cv2.dft(src[, dst[, flags]]) 傅里叶变换
- src:输入(必须先转换成np.float32格式)
- dst:输出
- flags:转换标志
numpy.fft.fftshift(x, axes=None) 将频率为0的部分转换到频谱的中心
将在左上角频率为0的部分转换到中心位置(一般会将低频部分置于频谱中心,高频部分由中心向四周发散,越远离中心,频率越高)
- x:输入(经过傅里叶变换(cv2.dft))
cv2.magnitude(x, y[, magnitude]) 计算2D向量的大小
- x:经过傅里叶变换(cv2.dft)和频谱转换(numpy.fft.fftshift)后的某一通道
- y:经过傅里叶变换(cv2.dft)和频谱转换(numpy.fft.fftshift)后的某一通道(必须和x有相同的size)
- 把结果映射到0~255:20*np.log(cv2.magnitude())
cv2.idft(src[, dst[, flags]]) 傅里叶逆变换
- src:输入(必须先转换成np.float32格式)
- dst:输出
- flags:转换标志