中北大学数图实验报告.docx
- 文档编号:9318198
- 上传时间:2023-02-04
- 格式:DOCX
- 页数:18
- 大小:742.61KB
中北大学数图实验报告.docx
《中北大学数图实验报告.docx》由会员分享,可在线阅读,更多相关《中北大学数图实验报告.docx(18页珍藏版)》请在冰豆网上搜索。
中北大学数图实验报告
数字图像处理实验报告
实验一图像变换
一、实验名称:
图像变换
二、实验要求
用Matlab语言编制图像变换软件,并对某幅图像进行图像的离散付里叶变换、离散余弦变换、KL变换,完成上述代码编写,并按要求完成实验报告
三、实验目的
1.掌握傅立叶变换2.理解频域变换的通用公式
3.掌握离散余弦变换4.掌握KL变换
四、实验过程及代码编写
clear;
RGB=imread('aershan.jpg');
GR=rgb2gray(RGB);%彩色图像变换灰度图像
figure
(1);
imshow(GR);
title('彩色图像转换灰度图像后的图像');
D=dct2(GR);%DCT变换
figure
(2);imshow(log(abs(D)),[]);
title('离散余弦变换后图像');
colormap(gray(4));colorbar;
D(abs(D)<0.1)=0;
I=idct2(D)/255;
figure(3);imshow(I)
title('灰度图像');
Y=fft2(GR);
figure(4);%FFT变换
imshow(Y);
title('傅里叶变换图像');
c=edge(GR,'sobel',0.03);
[m,n]=size(c);
figure(5),imshow(c);
[row,column]=find(c==1);
XX=reshape(c,m/2,[]);
figure(6),imshow(XX);
title('kl变换')
XX=im2double(XX);%图像转化为双精度
covx=cov(XX);%求图像的协方差
[pc,variances,explained]=pcacov(covx);%求解K_L变换矩阵,即PCA
pc
myKL=XX*pc;%进行K_L变换
pic2=myKL(:
1);
pic2=reshape(pic2,[256,256]);
figure(7);
imshow(pic2,[]);
title('K_L第一分量');
figure(8);
pic3=myKL(:
2);
pic3=reshape(pic3,[256256]);
imshow(pic3,[]);
title('K_L第二分量');
my=myKL*pc;
my1=my(:
1);
my1=reshape(my1,[256,256]);
figure(9);
imshow(my1,[]);
五、实验结果如下
图1原始图像变成灰度图像
图2离散傅里叶变换图像
图3离散余弦变化图像
图4KL变换图像
六、实验总结
经过本次图像变换处理实验,基本掌握图像离散傅里叶变换、离散余弦变换和KL变换的算法编写,其中KL变换稍显难度,基本掌握相关变换函数的编写,同时也看到了自己matlab语言编写的生疏,需要进一步熟悉。
另外,经过本次实验,也深刻的认识到了,数字变化以及matlab的神秘性
实验二图像增强
一、实验名称
图像增强
二、实验要求
用Matlab语言、C语言或C++语言编制图像处理软件,并对某幅图像进行图像空间域处理、图像的频域处理,空间与处理包括图像灰度变化以及图像直方图的编写,频域增强主要是滤波器的应用,完成相关代码和实验报告
三、实验目的
1.掌握图像灰度变换的方法
2.掌握直方图修正的方法
3.频域图像增强方法
四、实验过程及代码
clear;
RGB=imread('aershan.jpg');%¶ÁÈëͼÏñ
GR=rgb2gray(RGB);
figure
(1);
imshow(GR);
title('原始图像');
B1=GR+80;%灰度值增加80
figure
(2);
imshow(B1);
title('灰度值增加80');
J=imadjust(GR);%把I的范围拉伸到[01]
figure(3);
imshow(J);
title('原始图像灰度拉伸');
K=imadjust(GR,[0.30.7],[]);%局部拉伸,把[0.30.7]内的灰度拉伸为[01]
figure(4);
imshow(K);
title('原始图像部分灰度拉伸');
figure(5);
imhist(GR);
title('原始图像的直方图');
%%b=f(a)
b1=1.25*double(GR)+45;
figure(6);imhist(uint8(b1));
title('变换后的直方图');
J0=imnoise(GR,'salt&pepper',0.01);%加均值为0,方差为0.01的椒盐噪声
subplot(2,3,2),imshow(J0);%显示处理后的图像
title('salt&peppernoiseimage');%设置图像标题
text(-20,320,'Med-valueFilterfor3*3window');%添加说明文字
K0=medfilt2(J0);
%用于3×3的滤波窗口对图像J进行中值滤波。
%若用[m,n]的滤波窗口做中值滤波,语法为K=medfilt2(J,[m,n])
subplot(2,3,3),imshow(K0,[]);%显示处理后的图像
title('medfilterimage');%设置图像标题
I2=imread('rice.png');%读入图像
subplot(2,3,4),imshow(I2);%显示原始图像
title('originalimage');%设置图像标题
J2=imnoise(I2,'gaussian',0.01);%加均值为0,方差为0.01的高斯噪声
subplot(2,3,5),imshow(J2);%显示处理后的图像
title('gaussiannoiseimage');%设置图像标题
K2=medfilt2(J2);%图像滤波处理
subplot(2,3,6),imshow(K2,[]);%显示处理后的图像
title('medfilterimage');%设置图像标题
五、实验结果如图
图1原始图像
图2灰度值增加80图像
图3全局灰度拉伸图像
图4部分灰度拉伸图像
图5原始图像直方图
图6频域变换后图像
六、实验总结
经过本次图像增强实验,掌握了图像灰度值的变换相关操作,了解了如何增加和减少图像的灰度值,掌握了了图像绘图直方图算法的编写,基本熟悉了相关函数的参数,并在频域对图像进行了相关滤波等操作,进一步了解了数字图像处理的方法,为以后的数字图像处理实验奠定了一定的基础。
实验三图像编码
一、实验名称
图像编码
二、实验要求
用Matlab语言、C语言或C++语言编制图像处理软件,对某幅图像进行时域和频域的编码压缩,主要是哈夫曼编码,完成以上软件编制,正确书写实验报告
三、实验目的
1.掌握哈夫曼编码、香农-范诺编码、行程编码
2.了解图像压缩国际标准
四、实验过程及代码
clearall;
RGB=imread('aershan.jpg');
I=rgb2gray(RGB);%彩色图像转换灰度图像
I=im2double(I);
T=dctmtx(8);%图片存储类型转化
B=blkproc(I,[88],'P1*x*P2',T,T');%离散余弦变换
mask=[11110000;11100000;...
11000000;10000000;...
00000000;00000000;...
00000000;00000000];
B2=blkproc(B,[88],'P1.*x',mask);
I2=blkproc(B2,[88],'P1*x*P2',T',T);
figure;
subplot(1,2,1);imshow(I);
xlabel('(a)原始图像');
subplot(1,2,2);imshow(I2);
xlabel('(b)压缩后图像');
五、实验结果
图1图像时域压缩
六、实验总结
通过本次实验,掌握了图像编码的相关原理,基本了解了哈夫曼编码、香农-范诺编码、行程编码,学会了用Matlab语言编写哈夫曼编码,熟悉了哈夫曼在Matlab中相关函数的内容。
实验四图像分割
一、实验名称
图像分割
二、实验要求
用Matlab语言、C语言或C++语言编制图像处理软件,并对某幅图像进行阈值分割处理、边缘检测处理、区域分割处理,掌握相关分割算法,完成以上软件编制,完成实验报告
三、实验目的
1.掌握基于阈值选取的图像分割方法
2.掌握基于区域的图像分割方法
3.掌握基于边缘检测的图像分割方法
实验过程及代码:
clearall;
RGB=imread('aershan.jpg');
I=rgb2gray(RGB);%彩色图像变换灰度图像
figure;imhist(I);
xlabel('(b)直方图');
newI=im2bw(I,150/255);%根据上面直方图选择阈值150,划分图像的前背景
figure;
subplot(1,2,1);imshow(I);
xlabel('(a)原始图像');
subplot(1,2,2);imshow(newI);
xlabel('(b)分割后图像');
%区域分割
ZMAX=max(max(I));%取出最大灰度值
ZMIN=min(min(I));%取出最小灰度值
TK=(ZMAX+ZMIN)/2;
BCal=1;
iSize=size(I);%图像的大小
while(BCal)
%定义前景和背景数
iForeground=0;
iBackground=0;
%定义前景和背景灰度总和
ForegroundSum=0;
BackgroundSum=0;
fori=1:
iSize
(1)
forj=1:
iSize
(2)
tmp=I(i,j);
if(tmp>=TK)
%前景灰度值
iForeground=iForeground+1;
ForegroundSum=ForegroundSum+double(tmp);
else
iBackground=iBackground+1;
BackgroundSum=BackgroundSum+double(tmp);
end
end
end
%计算前景和背景的平均值
ZO=ForegroundSum/iForeground;
ZB=BackgroundSum/iBackground;
TKTmp=uint8((ZO+ZB)/2);
if(TKTmp==TK)
BCal=0;
else
TK=TKTmp;
end
%当阈值不再变化的时候,说明迭代结束
end
disp(strcat('迭代后的阈值:
',num2str(TK)));
newI=im2bw(I,double(TK)/255);
figure;
subplot(1,2,1);imshow(I);
xlabel('(a)原始图像');
subplot(1,2,2);imshow(newI);
xlabel('(b)迭代法分割效果图');
%边缘检测
BW1=edge(I,'roberts');%以自动阈值选择法地图像进行Roberts算子检测
[BW1,thresh1]=edge(I,'roberts');
%返回当前Roberts算子边缘检测的阈值
disp('Roberts算子自动选择阈值为:
');
disp(thresh1)
figure;
subplot(1,2,1);imshow(BW1);
title('自动阈值的Roberts算子检测');
BW1=edge(I,'roberts',0.05);%以阈值为0.05对图像进行Roberts算子检测
subplot(1,2,2);imshow(BW1);
title('阈值为0.05的Roberts算子边缘检测');
BW2=edge(I,'sobel');%以自动阈值选择法地图像进行sobel算子检测
figure;
subplot(1,3,1);imshow(BW2);
title('自动阈值的sobel算子边缘检测');
[BW2,thresh2]=edge(I,'sobel');%返回当前Roberts算子边缘检测的阈值
disp('Sobel算子自动选择阈值为:
');
disp(thresh2)
%以阈值为0.05水平方向对图像进行Sobel算子检测
BW2=edge(I,'roberts',0.05,'horizontal');
subplot(1,3,2);imshow(BW2);
title('阈值为0.05水平方向Sobel算子');
BW2=edge(I,'roberts',0.05,'vertical');
%以阈值为0.05垂直方向对图像进行Sobel算子检测
subplot(1,3,3);imshow(BW2);
title('阈值为0.05垂直方向Sobel算子');
BW3=edge(I,'prewitt');%以自动阈值选择法地图像进行prewitt算子检测
figure;
subplot(1,3,1);imshow(BW3);
title('自动阈值的prewitt算子边缘检测');
[BW3,thresh3]=edge(I,'prewitt');%返回当前prewitt算子边缘检测的阈值
disp('Prewitt算子自动选择阈值为:
');
disp(thresh3)
%以阈值为0.05水平方向对图像进行prewitt算子检测
BW3=edge(I,'prewitt',0.05,'horizontal');
subplot(1,3,2);imshow(BW3);
title('阈值为0.05水平方向prewitt算子');
%以阈值为0.05垂直方向对图像进行Sobel算子检测
BW3=edge(I,'prewitt',0.05,'vertical');
subplot(1,3,3);imshow(BW3);
title('阈值为0.05垂直方向prewitt算子');
五、实验结果
图1原始图直方图
图2原始图像和阈值分割后图像
图3原始图像和区域分割后图像
图4Robets算法的边缘检测
图5Sobel算法边缘检测
图6Prewitt算法的边缘检测
六、实验总结
(1)进一步了解了数字图像处理的方法,为以后的数字图像处理实验奠定了一定的基础。
(2)本次实验也同时认识到自己专业方面的不足,需要努力学好本专业及相关知识。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 北大 学数图 实验 报告