1、10、骨架化11、噪声消除(1)算术均值滤波消除噪声 (2)几何均值滤波消除噪声 (3)谐波均值滤波消除噪声 (4)中值滤波消除噪声 (5)中点滤波消除噪声 (6)修正的阿尔法均值滤波消除噪声三、总体设计 如图1图1四、具体设计4.1 Menu Editor 如图2图24.2 图像的读取与保存(1)利用“文件”菜单中的“打开”、“保存”分别实现图像的读取与保存。1)图像的读取 如图3图32)图像的保存 如图4 图44.3 直接灰度变换(1)灰度线性变换 1)负相变换 如图5图51)指数变换 如图6图64.3噪声(1)高斯噪声 如图7图74.4编辑(1)灰度(2)亮度 如图8图8(3)放大1)最
2、近邻插值法 如图9图9(4)缩小2)双线性插值法 如图10图10 4.5位置变换(1)平移 如图11图11(2)裁剪 如图12图125)任意角度旋转 如图13图13(4)错切变换 如图14图14(5)镜像变换 如图15图154.6 直方图统计 (1)直方图均衡化 如图16图164.7 灰度图像处理(1)二值化 如图17图17(2)图像腐蚀 如图18图18(3)创建索引图像 如图19图194.8 频谱分析(1)频谱图 如图20图20(2)高斯高通滤波器 如图21如图21(3)巴特沃斯低通滤波器 如图22图214.9 提取边界 如图22图224.10 骨架化 如图23图234.11 图像复原 (1
3、)算术均值消除噪声 如图24如图24图24(2)几何均值滤波消除噪声 如图25图25(3)谐波均值滤波消除噪声 如图26图26(4)中值滤波消除噪声 如图27图27(5)中点滤波消除噪声 如图28图28(6)修正的阿尔法均值滤波消除噪声 如图29图29总结:在这个系统中,只是简单的实现一些数字图像处理的方法,一些功能还没实现比如:图像的分割、霍夫变换等,还有界面也存在一些问题,是本来在设计的时候没有考虑清楚的,在经过老师的指点之后,也发现了一些问题,经过自己后来的修改也改正了一些错误。在这个系统中,由于本人前期需求分析做得不是特别完整,导致有些功能只能实现灰度图像,有些功能只能实现彩色图像,这
4、可能会给不熟悉的用户在使用本系统的时候会出现错误,但是今后会通过自己的学习,增加自己的知识,完善该系统。参考文献:1.高成.Matlab图像处理与应用M.北京:国防工业出版社,2007.4(第2版).2.蒙以正.Matlab5.X应用与技术M.北京:科学出版社,1999.11(第2版).3.张学敏.Matlab基础及应用M.北京:中国电力出版社,2011.12(第2版).4.张德丰.Matlab数字图像处理M.北京:人民邮电出版社,2009.10.5.刘保柱.Matlab7.0从入门到精通M.北京:人民邮电出版社,2010.5(修订版).附录:function varargout = unti
5、tled3(varargin)gui_Singleton = 1;gui_State = struct(gui_Name, mfilename, . gui_Singleton, gui_Singleton, .gui_OpeningFcn, untitled3_OpeningFcn, .gui_OutputFcn, untitled3_OutputFcn, .gui_LayoutFcn, , .gui_Callback, );if nargin & ischar(varargin1) gui_State.gui_Callback = str2func(varargin1);endif nar
6、gout varargout1:nargout = gui_mainfcn(gui_State, varargin:);else gui_mainfcn(gui_State, varargin:function untitled3_OpeningFcn(hObject, eventdata, handles, varargin)handles.output = hObject;guidata(hObject, handles);function varargout = untitled3_OutputFcn(hObject, eventdata, handles) varargout1 = h
7、andles.output;function m_file_Callback(hObject, eventdata, handles)function m_file_open_Callback(hObject, eventdata, handles)name,path=uigetfile(*.bmp,载入图像);if isequal(name,0)|isequal(path,0) errordlg(没有选中文件,出错 return;x=imread(path,name); axes(handles.axes1);imshow(x);handles.img=x;handles.noise_img
8、=x;guidata(hObject,handles)%-function m_file_save_Callback(hObject, eventdata, handles)filename,pathname = uiputfile(图片保存为if isequal(filename,pathname,0,0)没有保存file=strcat(pathname,filename);(handles.axes2);i=getimage(gca);imwrite(i,file);function m_file_exit_Callback(hObject, eventdata, handles)clc;
9、close all;close(gcf);function Untitled_1_Callback(hObject, eventdata, handles)function Untitled_2_Callback(hObject, eventdata, handles)function Untitled_3_Callback(hObject, eventdata, handles)function Untitled_4_Callback(hObject, eventdata, handles)function Untitled_10_Callback(hObject, eventdata, h
10、andles)function Untitled_26_Callback(hObject, eventdata, handles)function pingyi_Callback(hObject, eventdata, handles)axes(handles.axes2);a=handles.img;H=size(a);a_x=50;a_y=50;a_move(a_y+1:H(1),a_x+1:H(2),1:H(3)=a(1:H(1)-a_x,1:H(2)-a_x,1:H(3);imshow(a_move);function caijian_Callback(hObject, eventda
11、ta, handles)I=imcrop(handles.img,80 60 50 50);imshow(I);function Untitled_32_Callback(hObject, eventdata, handles)function Untitled_33_Callback(hObject, eventdata, handles)function cuoqie_Callback(hObject, eventdata, handles)A=handles.img;A=double(A);h=size(A);I=zeros(h(1)+round(h(2)*tan(pi/6),h(2),
12、h(3);for m=1:h(1) for n=1:h(2) I(m+round(n*tan(pi/6),n,1:h(3)=A(m,n,1:h(3); endI1=uint8(I);imshow(I1);function jingxiang_Callback(hObject, eventdata, handles)A_fliplr(1:h(1),1:h(2),1:h(3)=A(h(1):-1:1,h(2):1,1:imshow(A_fliplr);function huidu_Callback(hObject, eventdata, handles)if isrgb(handles.img)
13、y=rgb2gray(handles.img); %RGBimshow(y);msgbox(这已经是灰度图像转换失败function liangdu_Callback(hObject, eventdata, handles)prompt=输入参数1输入参数2输入gamma;defans=0 0.70 11p=inputdlg(prompt,输入参数,1,defans);p1=str2num(p1);p2=str2num(p2);p3=str2num(p3);gamma=p3;x=(handles.img);y=imadjust(x,p1,p2,gamma);function jietu_Cal
14、lback(hObject, eventdata, handles)set(handles.axes2,HandleVisibilityONy=imcrop(handles.img,80 60 50 50); handles.Timage=y;function Untitled_22_Callback(hObject, eventdata, handles)function Untitled_27_Callback(hObject, eventdata, handles)function gaosi_Callback(hObject, eventdata, handles)输入参数1:00.0
15、2 p2=str2num(p2); y=imnoise(handles.img,gaussian,p1,p2);handles.noise_img=y;guidata(hObject,handles);function jiaoyan_Callback(hObject, eventdata, handles) defans= axes(handles.axes2);y=imnoise(x,salt & pepper,p1);function junyunfenbu_Callback(hObject, eventdata, handles) %对话框的设置,用户输入的是字符串 %缺省值 %字符串
16、转化为数值specklefunction suiji_Callback(hObject, eventdata, handles)snoise=0.1*randn(size(x);y=imadd(x,im2uint8(snoise);function bosong_Callback(hObject, eventdata, handles)poissonfunction duishu_Callback(hObject, eventdata, handles)Image_in=(handles.img); m,n=size(Image_in); for c=38:2:50 %c的值分别取:38 40
17、 42 44 46 48 50 for i=1:m for j=1:n Image_out(i,j)=c*log(1+double(Image_in(i,j); %利用公式s=c*log(1+f(x,y) end Image_out=uint8(Image_out); %转换图像数据类型 imshow(Image_out);function zhishu_Callback(hObject, eventdata, handles)function fuxiang_Callback(hObject, eventdata, handles)image_in=(handles.img);m,n=siz
18、e(image_in);max_image=max(max(image_in);min_image=min(min(image_in);n image_out(i,j)=max_image-double(image_in(i,j);image_out=uint8(image_out);imshow(image_out);function fenduan_Callback(hObject, eventdata, handles) image_in=(handles.img); m,n=size(image_in); max_image=max(max(image_in); min_image=m
19、in(min(image_in); a=50;b=60; c=235;d=245;n if image_in(i,j)=0&image_in(i,j)=a; image_out(i,j)=a/b*image_in(i,j); else=c&=d; image_out(i,j)=(d-b)/(c-a)*(image_in(i,j)-a)+c; else image_out(i,j)=(c-a)/(d-b)*(double(image_in(i,j)-b)+a; image_out=uint8(image_out);function quanyu_Callback(hObject, eventda
20、ta, handles)I=(handles.img);m,n=size(I);max_I=max(max(I);min_I=min(min(I);for i=1: if(I(i,j)210) I1(i,j)=230; else I1(i,j)=(230-4)/(210-10)*(I(i,j)-min_I)+4;function quezhi_Callback(hObject, eventdata, handles) d=double(I); a=80.0; a1=0.0;b1=200.0; n1=find(ia); n2=find(i d2=d; d2(n1)=b1; d2(n2)=a1;
21、i2=uint8(d2);imshow(i2);function suoxiaozuijin_Callback(hObject, eventdata, handles)输入放大倍数:0.2输入放大倍数y=imresize(handles.img,p1,nearest %最近邻插值法缩小function suoxiaoshuangxianing_Callback(hObject, eventdata, handles)bilinearfunction lincha_Callback(hObject, eventdata, handles)% hObject handle to lincha (see 2 %最近邻插值法放大%-function shuangchazhi_Callback(hObject, eventdata, handles)
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2