数字图像处理课程实习——傅里叶变换与频域滤波

本次实验采用Python和OpenCV库,通过傅里叶变换将图像转换到频率域,设计并应用理想低通、高通及巴特沃斯滤波器进行图像处理。实验结果显示,低通滤波器能去除噪声但可能导致图像模糊,高通滤波器则可强化边缘但可能加剧噪声。巴特沃斯滤波器在抑制振铃现象上表现优于理想滤波器。调整截止频率会影响滤波效果,如增大低通截止频率会减弱平滑效果,增大高通截止频率则增强锐化效果。

        本次实验的目标主要是为了为了学会使用傅里叶变换将图像由空间域变到频率域,并设计和使用理想低通滤波器、理想高通滤波器和巴特沃斯低通滤波器来对图像在频域范围进行处理,而后进行逆傅里叶变换,最终得到空间域里被滤波器处理过的图像。

        本次实验主要完成了使用python语言读取图像并对其进行傅里叶变换、频谱平移,设计了理想低通、高通滤波器和巴特沃斯低通滤器并对频谱图像进行滤波处理,而后进行了逆频谱平移和逆傅里叶变换得到了空间域中被不同滤波器处理过后的图像,同时进行改变截止频率大小的操作来观察不同截止频率对图像滤波效果的影响。

代码:

import cv2
import numpy as np
import matplotlib.pyplot as plt
import math


def main():
    grayimg = cv2.imread('camera.png', cv2.IMREAD_GRAYSCALE)
    #原始图像显示在画布的一号位
    plt.subplot(331), plt.imshow(grayimg, cmap='gray'), plt.title('original img'), plt.axis('off')
    #转换数据类型
    grayimg = np.float64(grayimg / 255.0)
    #进行傅里叶变化
    f = np.fft.fft2(grayimg)
    magnitude_spectrum1 = np.log(np.abs(f) + 1)
    #显示傅里叶变换后的平移前的频谱图像
    plt.subplot(332), plt.imshow(magnitude_spectrum1, cmap='gray'), plt.title('FF
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值