基于matlab GUI均值+中值+高斯低通+多种小波变换图像去噪

基于matlab GUI均值+中值+高斯低通+多种小波变换图像去噪

一、简介

基于matlab GUI均值+中值+高斯低通+多种小波变换图像去噪

二、源代码

global ImagesShownCnt;

ImagesShownCnt = 0;



set(handles.axes1,'visible','off')

set(handles.axes2,'visible','off')

set(handles.axes3,'visible','off')

set(handles.axes4,'visible','off')

set(handles.axes5,'visible','off')

set(handles.axes6,'visible','off')

set(handles.axesSrcImg,'visible','off')

setappdata(0,'thr',0.0);

handles.output = hObject;



% Update handles structure

guidata(hObject, handles);

% UIWAIT makes ImageProcess wait for user response (see UIRESUME)

% uiwait(handles.figure1);





% --- Outputs from this function are returned to the command line.

function varargout = ImageProcess_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 structure

varargout{1} = handles.output;





% --------------------------------------------------------------------

function File_Callback(hObject, eventdata, handles)

% hObject    handle to File (see GCBO)

% eventdata  reserved - to be defined in a future version of MATLAB

% handles    structure with handles and user data (see GUIDATA)





% --------------------------------------------------------------------

function Open_Callback(hObject, eventdata, handles)

% hObject    handle to Open (see GCBO)

% eventdata  reserved - to be defined in a future version of MATLAB

% handles    structure with handles and user data (see GUIDATA)





% --------------------------------------------------------------------

function Save_Callback(hObject, eventdata, handles)

% hObject    handle to Save (see GCBO)

% eventdata  reserved - to be defined in a future version of MATLAB

% handles    structure with handles and user data (see GUIDATA)





% --------------------------------------------------------------------

function Save_As_Callback(hObject, eventdata, handles)

% hObject    handle to Save_As (see GCBO)

% eventdata  reserved - to be defined in a future version of MATLAB

% handles    structure with handles and user data (see GUIDATA)





% --- Executes on button press in pushbutton3.

function pushbutton3_Callback(hObject, eventdata, handles)

% hObject    handle to pushbutton3 (see GCBO)

% eventdata  reserved - to be defined in a future version of MATLAB

% handles    structure with handles and user data (see GUIDATA)

global srcImg;

global dstImg;

global doubledstImg;

global doublesrcImg;

% IMGTYPE

% 0  Gray

% 1  Color

global IMGTYPE;

[filename, pathname] = uigetfile({'*.bmp;*.jpg;*.png;*.jpeg;*.tif'},'Pick an image');

if isequal(filename,0)||isequal(pathname,0)

    return;

end

fpath=[pathname filename];

srcImg=imread(fpath);

axes(handles.axesSrcImg);

imshow(srcImg);

if length(size(srcImg))>2

    IMGTYPE = 1;

else

    IMGTYPE = 0;

end

dstImg = srcImg;

doubledstImg = im2double(dstImg);

doublesrcImg = im2double(srcImg);

%title('原始图像','fontsize',8);





% --- Executes on button press in pushbuttonSave.

function pushbuttonSave_Callback(hObject, eventdata, handles)

% hObject    handle to pushbuttonSave (see GCBO)

% eventdata  reserved - to be defined in a future version of MATLAB

% handles    structure with handles and user data (see GUIDATA)



function varargout = getthreshold(varargin)

% GETTHRESHOLD MATLAB code for getthreshold.fig

%      GETTHRESHOLD, by itself, creates a new GETTHRESHOLD or raises the existing

%      singleton*.

%

%      H = GETTHRESHOLD returns the handle to a new GETTHRESHOLD or the handle to

%      the existing singleton*.

%

%      GETTHRESHOLD('CALLBACK',hObject,eventData,handles,...) calls the local

%      function named CALLBACK in GETTHRESHOLD.M with the given input arguments.

%

%      GETTHRESHOLD('Property','Value',...) creates a new GETTHRESHOLD or raises the

%      existing singleton*.  Starting from the left, property value pairs are

%      applied to the GUI before getthreshold_OpeningFcn gets called.  An

%      unrecognized property name or invalid value makes property application

%      stop.  All inputs are passed to getthreshold_OpeningFcn via varargin.

%

%      *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 getthreshold



% Last Modified by GUIDE v2.5 25-May-2015 21:49:34



% Begin initialization code - DO NOT EDIT

gui_Singleton = 1;

gui_State = struct('gui_Name',       mfilename, ...

                   'gui_Singleton',  gui_Singleton, ...

                   'gui_OpeningFcn', @getthreshold_OpeningFcn, ...

                   'gui_OutputFcn',  @getthreshold_OutputFcn, ...

                   'gui_LayoutFcn',  [] , ...

                   'gui_Callback',   []);

if nargin && ischar(varargin{1})

    gui_State.gui_Callback = str2func(varargin{1});

end



if nargout

    [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});

else

    gui_mainfcn(gui_State, varargin{:});

end

% End initialization code - DO NOT EDIT





% --- Executes just before getthreshold is made visible.

function getthreshold_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   command line arguments to getthreshold (see VARARGIN)



% Choose default command line output for getthreshold

handles.output = hObject;



% Update handles structure

guidata(hObject, handles);



% UIWAIT makes getthreshold wait for user response (see UIRESUME)

% uiwait(handles.figure1);





% --- Outputs from this function are returned to the command line.

function varargout = getthreshold_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 structure

varargout{1} = handles.output;







function edit1_Callback(hObject, eventdata, handles)

% hObject    handle to edit1 (see GCBO)

% eventdata  reserved - to be defined in a future version of MATLAB

% handles    structure with handles and user data (see GUIDATA)



% Hints: get(hObject,'String') returns contents of edit1 as text

%        str2double(get(hObject,'String')) returns contents of edit1 as a double





% --- Executes during object creation, after setting all properties.

function edit1_CreateFcn(hObject, eventdata, handles)

% hObject    handle to edit1 (see GCBO)

% eventdata  reserved - to be defined in a future version of MATLAB

% handles    empty - handles not created until after all CreateFcns called



% Hint: edit controls usually have a white background on Windows.

%       See ISPC and COMPUTER.

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

    set(hObject,'BackgroundColor','white');

end





% --- Executes on button press in pushbuttonDonoho.

function pushbuttonDonoho_Callback(hObject, eventdata, handles)

% hObject    handle to pushbuttonDonoho (see GCBO)

% eventdata  reserved - to be defined in a future version of MATLAB

% handles    structure with handles and user data (see GUIDATA)

global doubledstImg;

thresh = Donoho(doubledstImg);

set(handles.edit1,'string',num2str(thresh));

三、运行结果

基于matlab GUI均值+中值+高斯低通+多种小波变换图像去噪_第1张图片

你可能感兴趣的:(你好,MATLAB,matlab)