如何用MATLAB绘制图像的时域和频域图
对有高斯噪声,椒盐噪声的图片画出它的时域和频域
% 加载图像
img = imread('example.png');
gray_img = rgb2gray(img);
% 添加高斯噪声和椒盐噪声
gaussian_noise_img = imnoise(gray_img,'gaussian',0,0.01);
salt_pepper_noise_img = imnoise(gray_img,'salt & pepper',0.05);
% 显示时域图像
subplot(2,3,1), imshow(gray_img), title('Original Image');
subplot(2,3,2), imshow(gaussian_noise_img), title('Gaussian Noise');
subplot(2,3,3), imshow(salt_pepper_noise_img), title('Salt & Pepper Noise');
% 显示频域图像(幅度谱和相位谱)
gray_fft = fft2(gray_img);
gray_fft_shift = fftshift(gray_fft);
gray_amp = abs(gray_fft_shift);
gray_phase = angle(gray_fft_shift);
gaussian_fft = fft2(gaussian_noise_img);
gaussian_fft_shift = fftshift(gaussian_fft);
gaussian_amp = abs(gaussian_fft_shift);
gaussian_phase = angle(gaussian_fft_shift);
salt_pepper_fft = fft2(salt_pepper_noise_img);
salt_pepper_fft_shift = fftshift(salt_pepper_fft);
salt_pepper_amp = abs(salt_pepper_fft_shift);
salt_pepper_phase = angle(salt_pepper_fft_shift);
subplot(2,3,4), imshow(log(1+gray_amp), []), title('Original Image FFT');
subplot(2,3,5), imshow(log(1+gaussian_amp), []), title('Gaussian Noise FFT');
subplot(2,3,6), imshow(log(1+salt_pepper_amp), []), title('Salt & Pepper Noise FFT');