【信号去噪】基于小波变换、中值滤波多种算法实现心电信号预处理含Matlab源码
1 简介
【信号去噪】基于小波变换、中值滤波多种算法实现心电信号预处理含Matlab源码
2 部分代码
function varargout = XBLBCS(varargin)% XBLBCS MATLAB code for XBLBCS.fig% XBLBCS, by itself, creates a new XBLBCS or raises the existing% singleton*.%% H = XBLBCS returns the handle to a new XBLBCS or the handle to% the existing singleton*.%% XBLBCS('CALLBACK',hObject,eventData,handles,...) calls the local% function named CALLBACK in XBLBCS.M with the given input arguments.%% XBLBCS('Property','Value',...) creates a new XBLBCS or raises the% existing singleton*. Starting from the left, property value pairs are% applied to the GUI before XBLBCS_OpeningFcn gets called. An% unrecognized property name or invalid value makes property application% stop. All inputs are passed to XBLBCS_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 XBLBCS% Last Modified by GUIDE v2.5 11-Jan-2016 19:29:07% Begin initialization code - DO NOT EDITgui_Singleton = 1;gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @XBLBCS_OpeningFcn, ... 'gui_OutputFcn', @XBLBCS_OutputFcn, ... 'gui_LayoutFcn', [] , ... 'gui_Callback', []);if nargin && ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1});endif 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 XBLBCS is made visible.function XBLBCS_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 XBLBCS (see VARARGIN)% Choose default command line output for XBLBCShandles.output = hObject;% Update handles structureguidata(hObject, handles);ha=axes('units','normalized','position',[0 0 1 1]);uistack(ha,'down')II=imread('aa6.jpg');%里面的参数可以是你自己的图片,把名字连同格式写进去就可以了image(II)colormap grayset(ha,'handlevisibility','off','visible','off');% UIWAIT makes XBLBCS wait for user response (see UIRESUME)% uiwait(handles.figure1);% --- Outputs from this function are returned to the command line.function varargout = XBLBCS_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 structurevarargout{1} = handles.output;% --- Executes on button press in goon_3.function goon_3_Callback(hObject, eventdata, handles)% hObject handle to goon_3 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)global f0;global Y1;global xd;Ts=0.001;fs=1/Ts;NLen=512;n=0:NLen-1;%陷波器的设计apha=-2*cos(2*pi*f0*Ts);beta=0.96;b=[1 apha 1];a=[1 apha*beta beta^2];Y1=dlsim(b,a,xd);%陷波器滤波处理 close(gcf); JGXS;% --- Executes on button press in exit_6.function exit_6_Callback(hObject, eventdata, handles)% hObject handle to exit_6 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) close(gcf); XZLB;% --- Executes when selected object is changed in uipanel2.function uipanel2_SelectionChangeFcn(hObject, eventdata, handles)% hObject handle to the selected object in uipanel2 % eventdata structure with the following fields (see UIBUTTONGROUP)% EventName: string 'SelectionChanged' (read only)% OldValue: handle of the previously selected object or empty if none was selected% NewValue: handle of the currently selected object% handles structure with handles and user data (see GUIDATA)global f0;tString=get(hObject,'tag');switch tString case 'X_60' f0=60; case 'X_50' f0=50; %进行相应的操作 case 'X_Q' myvalue=inputdlg('请输入所需陷波频率','输入框'); f0=str2double(myvalue);end
3 仿真结果




4 参考文献
[1]马小磊. 基于小波变换的心电信号预处理算法研究及Android实现[D]. 东北大学, 2014.

