zoukankan      html  css  js  c++  java
  • 数字图像处理实验(6):PROJECT 04-02,Fourier Spectrum and Average Value 标签: 图像处理MATLABfft 2017-05-07 23:1

    实验要求:

    Objective:
    To observe the Fourier spectrum by FFT and the average value of an image.
    Main requirements:
    Ability of programming with C, C++, or Matlab.
    Instruction manual:
    (a) Download Fig. 4.18(a) and compute its (centered) Fourier spectrum.
    (b) Display the spectrum.
    (c) Use your result in (a) to compute the average value of the image.

    实验中我们要观察图像进行FFT后的傅里叶频谱图,并且输出其均值。

    代码:

    %%
    close all;
    clc;
    clear all;
    
    %%
    img = imread('gray_image.jpg');
    imshow(img);
    title('original image');
    
    % 计算傅里叶变换
    img_F = fft2(img);
    
    [M, N] = size(img);
    s = sum(abs(img_F(1:M, 1:N)));  % 行求和
    s = sum(s);     % 列求和
    ave = s / (M * N);
    disp(['average value of image is: ',num2str(ave)]);
    
    S = log(1 + abs(img_F));
    % figure;
    % plot(S);
    % title('二维图像显示幅度谱');
    
    x = 0:1:255;
    y = 0:1:255;
    [x, y] = meshgrid(x, y);
    figure;
    mesh(S);
    title('三维图像显示幅度谱');
    
    img_Q = angle(img_F);
    % figure;
    % plot(img_Q);
    % title('二维图像显示相位谱');
    
    x = 0:1:255;
    y = 0:1:255;
    [x, y] = meshgrid(x, y);
    figure;
    mesh(img_Q);
    title('三维图像显示相位谱');

    实验结果:
    这里写图片描述
    上图是原始图像。

    这里写图片描述
    上图是FFT之后3维幅度谱。

    这里写图片描述
    上图是FFT之后3维幅度谱。

    这里写图片描述
    均值。

  • 相关阅读:
    LeetCode "Jump Game"
    LeetCode "Pow(x,n)"
    LeetCode "Reverse Linked List II"
    LeetCode "Unique Binary Search Trees II"
    LeetCode "Combination Sum II"
    LeetCode "Divide Two Integers"
    LeetCode "First Missing Positive"
    LeetCode "Clone Graph"
    LeetCode "Decode Ways"
    LeetCode "Combinations"
  • 原文地址:https://www.cnblogs.com/xuhongbin/p/7134166.html
Copyright © 2011-2022 走看看