资源链接
https://gitee.com/chending006/shuzituxianghttps://gitee.com/chending006/shuzituxiang
- 课题介绍
matlab具有完备的图形处理功能、友好的用户界面以及功能强大的图形处理工具箱,能够实现对数字图像的编辑和处理工作,实现功能包括数字图像的读取、存储、显示、去色、图像翻转、局部放大、透明度调整、去噪、平滑、锐化、压缩、边缘检测等操作。
本文的主要内容如下:
1.研究图像处理技术,包括图像处理技术的分类、数字图像处理的特点,主要内容以及应用。
2.分析MATLAB软件及其在图像处理中的应用。
3.完成系统的总体设计,各功能模块设计。由于篇幅有限,本文重点论述了图像变换模块的设计,对已有的算法进行了分析,并进行了改进,利用MATLAB软件完成了算法的实现,最后通过实例说明处理效果。
4.设计友好的、易于操作的图形用户界面,方便用户对结果的观察以及对已有算法的比较研究和新算法的开发。
5. 向做好的平台中添加图像,图像的读取、存储、显示、去色、图像翻转、局部放大、透明度调整、去噪、平滑、锐化、压缩、边缘检测等操作。
二、菜单介绍
![v2-f57595ae8e876112e1a5f4533d46cf00_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/42aee09101157750583d7cd39e3c5d0f.jpeg)
- 源码
- 二值图像处理
global img_src
axes(handles.axes_dst);
x=im2bw(img_src);
imshow(x);
title('二值图片处理')
![v2-66c8c148428537f8182c7b01fb17c2ca_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/f8a156ebb884c1b5ca32506f6ac5a2f9.jpeg)
- 图片旋转
W=imrotate(img_src,180,'crop');
imshow(W);
title('旋转180后的图片')
![v2-fdaa204b7fe8ffa8a805530952eb1560_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/0391b455175fc2082fee02d424e05788.jpeg)
- 图片剪切
I=imcrop(img_src);
imshow(I);
title('剪切图片');
![v2-64a30d76e307a796ddcd74bb99a2cea1_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/c7b9e98418b57e4520cd7922811040a5.jpeg)
- 离散余弦变换
K=dct2(I);
imshow(K);
title('DCT变换后的图片')
![v2-7ad6fc6790d3831a92e2851dc21fc61b_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/619bfdb465e5bc73ac976b38822000a2.jpeg)
- 离散小波变换
[cA,cH,cV,cD]=dwt2(M,'db1'); %use db1 wavelet to discompose the picture
A=upcoef2('a',cA,'db1',1);
H=upcoef2('h',cH,'db1',1);
V=upcoef2('v',cV,'db1',1);
D=upcoef2('d',cD,'db1',1); % coding
![v2-fee91d67845815357d7ed01ab0391ea7_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/38fae95f7943f389b8cfa1f4c26f9894.jpeg)
- 均值滤波
H=ones(4,4)/16;
K=imfilter(img_src,H);%%%%对图片进行均值滤波
imshow(K);
title('均值滤波后的图片')
![v2-c1b61045560db2c545529179652dc1d5_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/af4a85c3632b4fac255f3e6016c1800b.jpeg)
- 边缘检测
BW1=edge(K,'sobel');%%
BW2=edge(K,'roberts',0.005);
BW3=edge(K,'prewitt');
BW4=edge(K,'log',0.0005);
![v2-24989aed377aa1673ae6435f3428b89f_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/9dfb7a281e3f38ef52b7816bed92213b.jpeg)
- 图片压缩
B=rgb2gray(img_src);
[c,s]=wavedec2(B,2,'db1');
a=appcoef2(c,s,'db1',1);
h=detcoef2('h',c,s,1);
v=detcoef2('v',c,s,1);
d=detcoef2('d',c,s,1);
k=[a h;v d];
b=wcodemat(a,500,'mat');
a1=0.5*b;
subplot(221);
imshow(B)
title('原始灰度图片')
subplot(222);
image(k);
title('变换后各频率分量')
r=appcoef2(c,s,'db1',2);
b=wcodemat(r,500,'mat');
a2=0.25*b;
subplot(223);
image(a1);
title('第一次压缩图片');
subplot(224);
image(a2);
title('第二次压缩图片');
whos('a1');
whos('a2');
![v2-405e13c40ad451e5a40575a56e216996_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/e02b38443e69ceee26f5b222df5f6bac.jpeg)
- 图像去噪
J=imnoise(B,'gaussian',0,0.09);
%%M=imnoise(B,'salt & pepper');
subplot(121);
imshow(J);
title('加噪声的图片');
[a,b,c]=ddencmp('den','wv',J);
K=wdencmp('gbl',J,'sym4',2,a,b,c);
K=uint8(K);
subplot(122);
imshow(K);
title('去噪后的图片');
![v2-12fd3e0a79f67547d9b7ecd0095feafa_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/8c8476285de158230f7eebba956d5f8b.jpeg)