医学图像预处理程序(12页).doc
-function varargout = tuxiangyuchuli(varargin)%TUXIANGYUCHULI M-file for tuxiangyuchuli.fig% TUXIANGYUCHULI, by itself, creates a new TUXIANGYUCHULI or raises the existing% singleton*.% H = TUXIANGYUCHULI returns the handle to a new TUXIANGYUCHULI or the handle to% the existing singleton*.% TUXIANGYUCHULI('Property','Value',.) creates a new TUXIANGYUCHULI using the% given property value pairs. Unrecognized properties are passed via% varargin to tuxiangyuchuli_OpeningFcn. This calling syntax produces a% warning when there is an existing singleton*.% TUXIANGYUCHULI('CALLBACK') and TUXIANGYUCHULI('CALLBACK',hObject,.) call the% local function named CALLBACK in TUXIANGYUCHULI.M with the given input% arguments.% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one% instance to run (singleton)".% See also: GUIDE, GUIDATA, GUIHANDLES % Edit the above text to modify the response to help tuxiangyuchuli % Last Modified by GUIDE v2.5 07-Sep-2014 18:05:07 % Begin initialization code - DO NOT EDITgui_Singleton = 1;gui_State = struct('gui_Name', mfilename, . 'gui_Singleton', gui_Singleton, . 'gui_OpeningFcn', tuxiangyuchuli_OpeningFcn, . 'gui_OutputFcn', tuxiangyuchuli_OutputFcn, . 'gui_LayoutFcn', , . 'gui_Callback', );if nargin && ischar(varargin1) gui_State.gui_Callback = str2func(varargin1);end if nargout varargout1:nargout = gui_mainfcn(gui_State, varargin:);else gui_mainfcn(gui_State, varargin:);end% End initialization code - DO NOT EDIT % - Executes just before tuxiangyuchuli is made visible.function tuxiangyuchuli_OpeningFcn(hObject, eventdata, handles, varargin)% This function has no output args, see OutputFcn.% hObject handle to figure% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% varargin unrecognized PropertyName/PropertyValue pairs from the% command line (see VARARGIN) % Choose default command line output for tuxiangyuchulihandles.output = hObject; % Update handles structureguidata(hObject, handles); % UIWAIT makes tuxiangyuchuli wait for user response (see UIRESUME)% uiwait(handles.figure1); % - Outputs from this function are returned to the command line.function varargout = tuxiangyuchuli_OutputFcn(hObject, eventdata, handles)% varargout cell array for returning output args (see VARARGOUT);% hObject handle to figure% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Get default command line output from handles structurevarargout1 = handles.output; % - Executes during object creation, after setting all properties.function axes1_CreateFcn(hObject, eventdata, handles)% hObject handle to axes1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called % Hint: place code in OpeningFcn to populate axes1 % - Executes on mouse press over axes background.function axes1_ButtonDownFcn(hObject, eventdata, handles)% hObject handle to axes1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % - Executes on mouse press over axes background.function axes5_ButtonDownFcn(hObject, eventdata, handles)% hObject handle to axes5 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % -function Untitled_1_Callback(hObject, eventdata, handles)% hObject handle to Untitled_1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % -function Untitled_2_Callback(hObject, eventdata, handles)% hObject handle to Untitled_2 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % -function Untitled_3_Callback(hObject, eventdata, handles)% hObject handle to Untitled_3 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % -%显示灰度图像function Untitled_4_Callback(hObject, eventdata, handles)% hObject handle to Untitled_4 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)handles.img=getimage(handles.axes1);axes(handles.axes2);if isrgb(handles.img);y=rgb2gray(handles.img);imshow(y);else handles.img=getimage(handles.axes1); axes(handles.axes2); imshow(handles.img);end % -%显示直方图function Untitled_31_Callback(hObject, eventdata, handles)% hObject handle to Untitled_31 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)handles.img=getimage(handles.axes2);axes(handles.axes3);imhist(handles.img); % -function Untitled_32_Callback(hObject, eventdata, handles)% hObject handle to Untitled_32 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % -function Untitled_21_Callback(hObject, eventdata, handles)% hObject handle to Untitled_21 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % -function Untitled_22_Callback(hObject, eventdata, handles)% hObject handle to Untitled_21 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % -function Untitled_23_Callback(hObject, eventdata, handles)% hObject handle to Untitled_22 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % -%打开文件function Untitled_11_Callback(hObject, eventdata, handles)% hObject handle to Untitled_11 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)%选取图片路径filename,pathname=uigetfile('*.*','选取图片');%合成路径+文件名str=pathname filename; %读取图片im=imread(str); %使用第一个axesaxes(handles.axes1); %显示图片imshow(im) % -function Untitled_12_Callback(hObject, eventdata, handles)% hObject handle to Untitled_12 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % -%关闭程序function Untitled_13_Callback(hObject, eventdata, handles)% hObject handle to Untitled_13 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)clc;close all;close(gcf); % -function Untitled_231_Callback(hObject, eventdata, handles)% hObject handle to Untitled_211 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % -function Untitled_232_Callback(hObject, eventdata, handles)% hObject handle to Untitled_212 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % -function Untitled_221_Callback(hObject, eventdata, handles)% hObject handle to Untitled_211 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % -function Untitled_222_Callback(hObject, eventdata, handles)% hObject handle to Untitled_212 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % -%上下翻转function Untitled_211_Callback(hObject, eventdata, handles)% hObject handle to Untitled_211 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)x=getimage(handles.axes1);axes(handles.axes4);if isrgb(x) for k=1:3 y(:,:,k)=flipud(x(:,:,k);%上下翻转函数endimshow(y);else y=flipud(x); imshow(y);end% -%左右翻转function Untitled_212_Callback(hObject, eventdata, handles)% hObject handle to Untitled_212 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)x=getimage(handles.axes1);axes(handles.axes4);if isrgb(x) for k=1:3 y(:,:,k)=fliplr(x(:,:,k);%左右翻转函数endimshow(y);else y=flipud(x); imshow(y);end % -%任意角度旋转function Untitled_213_Callback(hObject, eventdata, handles)% hObject handle to Untitled_213 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)a=getimage(handles.axes1);axes(handles.axes4);prompt='输入参数1:'defans='30'p=inputdlg(prompt,'输入参数',1,defans);p1=str2num(p1);y=imrotate(a,p1); imshow(y);% -%显示处理前图像频谱function Untitled_321_Callback(hObject, eventdata, handles)% hObject handle to Untitled_321 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)x=getimage(handles.axes2);axes(handles.axes5);if isrgb(x) m=fft2(x(:,:,1); y=fftshift(m); imshow(log(abs(y),);else m=fft2(x); y=fftshift(m); imshow(log(abs(y),);end % -%显示处理后图像频谱function Untitled_322_Callback(hObject, eventdata, handles)% hObject handle to Untitled_322 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)a=getimage(handles.axes4);axes(handles.axes6);if isrgb(a);x=rgb2gray(a);else x=getimage(handles.axes4); axes(handles.axes6);endif isrgb(x) m=fft2(x(:,:,1); y=fftshift(m); imshow(log(abs(y),);else m=fft2(x); y=fftshift(m); imshow(log(abs(y),);end % -%邻近的两点插值缩小function Untitled_2221_Callback(hObject, eventdata, handles)% hObject handle to Untitled_2221 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)a=getimage(handles.axes1);axes(handles.axes4);%邻近插值放大prompt='输入放大倍数:'defans='0.2'p=inputdlg(prompt,'输入放大倍数',1,defans);p1=str2num(p1);y=imresize(a,p1,'nearest'); %邻近的两点插值缩小imshow(y); % -%线性插值缩小function Untitled_2222_Callback(hObject, eventdata, handles)% hObject handle to Untitled_2222 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)a=getimage(handles.axes1);axes(handles.axes4);%邻近插值放大prompt='输入放大倍数:'defans='0.2'p=inputdlg(prompt,'输入放大倍数',1,defans);p1=str2num(p1);y=imresize(a,p1,'bilinear'); %线性插值缩小imshow(y); % -%三次样条插值缩小function Untitled_2223_Callback(hObject, eventdata, handles)% hObject handle to Untitled_2223 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)a=getimage(handles.axes1);axes(handles.axes4);%邻近插值放大prompt='输入放大倍数:'defans='0.2'p=inputdlg(prompt,'输入放大倍数',1,defans);p1=str2num(p1);y=imresize(a,p1,'bicubic'); %三次样条插值放大imshow(y); % -%邻近的两点插值放大function Untitled_2211_Callback(hObject, eventdata, handles)% hObject handle to Untitled_2211 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)a=getimage(handles.axes1);axes(handles.axes4);%邻近插值放大prompt='输入放大倍数:'defans='2'p=inputdlg(prompt,'输入放大倍数',1,defans);p1=str2num(p1);y=imresize(a,p1,'nearest'); %最近邻插值法放大imshow(y);% -%线性插值放大function Untitled_2212_Callback(hObject, eventdata, handles)% hObject handle to Untitled_2212 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)a=getimage(handles.axes1);axes(handles.axes4);%邻近插值放大prompt='输入放大倍数:'defans='2'p=inputdlg(prompt,'输入放大倍数',1,defans);p1=str2num(p1);y=imresize(a,p1,'