美文网首页
图像傅里叶变换

图像傅里叶变换

作者: 乘瓠散人 | 来源:发表于2021-05-17 21:03 被阅读0次

对图像进行傅里叶变换,分出低频和高频部分。


image.png
def compute_fft(args, dataloader):
    #device = args.device if args.device == "cpu" else int(args.device)
    device = 0  # Do not modify
    h, w = args.img_size, args.img_size

    lpf = torch.zeros((h, w))
    R = (h + w) // 8
    for x in range(w):
        for y in range(h):
            if ((x - w/2)**2 + (y - h/2)**2) < R**2:
                lpf[y, x] = 1
    hpf = 1 - lpf
    hpf, lpf = hpf.to(device), lpf.to(device)

    with torch.no_grad():
        for i, (image_name, img, lbl) in enumerate(dataloader):
            print("img: %d" % i, image_name, 'label:', lbl)

            img = img.to(device)
            lbl = lbl.to(device)
            # print('img size', img.size())  # [1, 3, 224, 224]
            # img = normalize(img)

            fft_img = torch.fft.fftn(img, dim=(2, 3))
            # print('fft size', fft_img.size()) # [1, 3, 224, 224]
            # put low_freq into the center of img
            fft_img = torch.roll(fft_img, (h//2, w//2), dims=(2, 3))
            f_low = fft_img * lpf
            f_high = fft_img * hpf
            X_low = torch.abs(torch.fft.ifftn(f_low, dim=(2,3)))
            X_high = torch.abs(torch.fft.ifftn(f_high, dim=(2,3)))
            X_low_pil = transforms.ToPILImage()((torch.squeeze(X_low, dim=0)).float())
            X_low_pil.save('low_' + image_name[0])
            X_high_pil = transforms.ToPILImage()((torch.squeeze(X_high, dim=0)).float())
            X_high_pil.save('high_' + image_name[0])
           

着重参考->分别使用numpy和pytorch进行图像傅里叶变换和频域分析
图像处理之高通滤波及低通滤波_ReWz的博客-CSDN博客

相关文章

  • 11 MRI图像分析--连续离散傅里叶变换

    前言 连续傅里叶变换和离散傅里叶变换经常用于MRI 图像分析之中,第11块主要讲MRI 图像和傅里叶变换的细节,涉...

  • 图像傅里叶变换

    对图像进行傅里叶变换,分出低频和高频部分。 着重参考->分别使用numpy和pytorch进行图像傅里叶变换和频域...

  • 图像的傅里叶变换

    参考: 傅里叶变换学习图像变换第四章 图像变换图像傅里叶变换频谱特性研究 傅里叶定理指出: 任何信号都可以表示成(...

  • OpenCV离散傅里叶变换

    离散傅里叶变换 作用:得到图像中几何结构信息 结论:傅里叶变换后的白色部分(即幅度较大的低频部分),表示的是图像中...

  • 傅里叶变换(上)

    傅里叶变换 傅里叶变换的重要性 我们现在机器学习上音频和图像上处理上都会用到傅里叶变换,今天我们在 app 中用到...

  • 图像傅里叶变换(二维离散傅里叶变换)

    应用:二维离散傅里叶变换是将图像从空间域转至频域,在图像增强、图像去噪、图像边缘检测、图像特征提取、图像压缩等等应...

  • 图像的傅里叶变换

    备份自:http://blog.rainy.im/2015/11/03/fourier-transform-in-...

  • image processing

    贴资源: 图像显著性检测 傅里叶变换 低通滤波器 高通滤波

  • 频率域图像增强

    基本概念: 1、图像增强: a.空间域增强:对图像的像素直接处理b.频域增强:修改图像的傅里叶变换 1.1空间域增...

  • OpenCV+Python 频域分析

    参考: opencv-python官方文档《刚萨雷斯数字图像处理(MATLAB版)》 图像处理中的傅里叶变换 二维...

网友评论

      本文标题:图像傅里叶变换

      本文链接:https://www.haomeiwen.com/subject/kpddjltx.html