数字图像处理(DFT变换、DCT变换、几何变换、灰度级变换).pptx
文本预览下载声明
%DFT变换
clear all
clc
im1=imread(132.jpg); %读取图像
figure
subplot(2,2,1),imshow(im1),title(原图); %显示原图像
im2=rgb2gray(im1); %将彩色图像灰度化
subplot(2,2,2),imshow(im2),title(灰度化图像); %显示灰度化图像
DFTim2=fftshift(fft2(im2)); %计算傅里叶变换并移位
im3=abs(DFTim2); %求模
subplot(2,2,3),imshow(log(1+im3),[]),title(DFT频谱图); %显示DFT频谱图
top=max(im3(:)); %求模的最大值
bottom=min(im3(:)); %求模的最小值
im3=(im3-bottom)/(top-bottom)*100; %把模规划到[0 100]
subplot(2,2,4),imshow(im3),title(规范化DFT频谱图); %显示规范化频谱图;%DCT变换
figure
subplot(2,2,1),imshow(im1),title(原图); %显示原图
subplot(2,2,2),imshow(im2),title(灰度化图像); %显示灰度化图像
DCTim2=dct2(im2); %进行离散余弦变换
ADCTim2=abs(DCTim2); %求模
%subplot(2,2,3),imshow(DCTim2),title(132DCT频谱图);
subplot(2,2,3),imshow(log(1+ADCTim2),[]),title(DCT频谱图); %显示DCT频谱图
top=max(ADCTim2(:)); %求模的最大值
bottom=min(ADCTim2(:)); %求模的最小值
ADCTim2=(ADCTim2-bottom)/(top-bottom)*100; %把模规划到[0 100]
subplot(2,2,4),imshow(ADCTim2),title(规范化DCT频谱图); %显示规范化DCT频谱图;%几何变换-翻转
clear all
im=imread(132.jpg); %读取原图
im=rgb2gray(im); %灰度化图像
figure
Him=flipdim(im,2); %im图像按列翻转
Vim=flipdim(im,1); %im图像按行翻转
Cim=flipdim(Him,1); %Him图像按行翻转
subplot(221),imshow(im);
subplot(222),imshow(Him);
subplot(223),imshow(Vim);
subplot(224),imshow(Cim);;%灰度级变换-窗口线性变换
figure
%im=rgb2gray(im);
[h,w]=size(im);
a1=70/256;b1=190/256;c1=100/256;d1=250/256; %参数设置
result1=imadjust(im,[a1;b1],[c1;d1]); %截取式灰度变换
result2=im;
for x=1:w
for y=1:h
if im(y,x)a1im(y,x)b1
result2(y,x)=(im(y,x)-a1)*(d1-c1)/(b1-a1)+c1; %高低端灰度保持
end
end
end
subplot(1,3,1),imshow(im),title(原灰度图像);
subplot(1,3,2),imshow(result1),title(截取式灰度变换);
subplot(1,3,3),imshow(result2),title(高低端灰度保持);
显示全部