. ܽ
ĤƬǯѹźڲɼʱһĽģźţֱӱȽָΪܶȵɢʱźţڱ֤ʧ£ʹضпٴźŴȷٶȿص㡣ȻźŵĴ̲û漰ֵ̫㣬MATLAB̹ҲҶſγ̵⡣
ллʦʵĿγ̺ϸpptлл۵ͬѧǣǵÿһݸŬѧϰĶ
¼.ִ
1.ź
function SignalSearch(Obj,handles)
%źź
lowlim=str2double(get(handles.edit_f1,'String')); gdbase=str2double(get(handles.edit_gdbase,'String')); err=str2double(get(handles.edit_err,'String')); ishand=get(handles.checkbox_hand,'Value'); index=get(handles.datalist,'Value'); if(index<1) return end
data=Obj.DM.datas{index};
autocut=get(handles.checkbox_autocut,'Value');
[signaldata cut]=Obj.test1(data,lowlim,autocut,ishand,gdbase,err); Obj.DM.signaldatas{index}=signaldata; Obj.DM.cuts{index}=cut; return
2.źеõtest1źźͽ
function [signals num]=findsignal(data2,base,d,lowlim,start,num)%һݶѰźŵĺ
data=data2(:,2);
c_signals=find(data<(base-d));%źŵλõ if(isempty(c_signals)) signals=[]; return end
len=length(data);
signals_place=find(c_signals(2:end)-c_signals(1:end-1)>1);
d_signals=[[1;signals_place+1] [signals_place;length(c_signals)]];% ˵ʽźŷn*2
e_signals=c_signals(d_signals);
5ҳ 7ҳ
if(length(e_signals)==2) e_signals=e_signals'; end
f_signals=[e_signals(:,1)*2-e_signals(:,2)
e_signals(:,2)*2-e_signals(:,1)];% źŵķΧǰźųͬijȷΧf_signals(f_signals<1)=1;
f_signals(f_signals>len)=len;%ȥЧֵ
g_signals=[e_signals(:,1)-10 e_signals(:,2)+10];%Ѱ˵ķΧ g_signals(g_signals<1)=1;
g_signals(g_signals>len)=len;%ȥЧֵ
signals=[]; i=1;
while(i<=size(e_signals,1))
minpoint=base-min(data(e_signals(i,1):e_signals(i,2))); bdata=data(f_signals(i,1):f_signals(i,2)); maxpoint=max(bdata)-base;
if(maxpoint>minpoint)%ǷеŸɸѡ e_signals(i,:)=[]; f_signals(i,:)=[]; g_signals(i,:)=[]; else
if(g_signals(i,2)<40||g_signals(i,1)>length(data)-40) e_signals(i,:)=[]; f_signals(i,:)=[]; g_signals(i,:)=[]; else
bddata=data(g_signals(i,1):g_signals(i,2)); diffdata=[0;diff(bddata)];
e_signals(i,1)=g_signals(i,1)-1+find(diffdata<=0.27*min(diffdata),1); temp=find(diffdata>=0.25*max(diffdata)); e_signals(i,2)=g_signals(i,1)-1+temp(end); num=num+1;
if(e_signals(i,2) e_signals(i,2)=e_signals(i,1); e_signals(i,1)=temp; end signals{i}=SignalAnalysis(data2,e_signals(i,:),start,num); i=i+1; end end end end 6ҳ 7ҳ οף 1. . źŴ[M]. :廪ѧ, 2003. 1-3 2. ˼, ź, , Ժ, ΰ, ». оչ[C]. :ѧ, 2010. 280-285 3. Jacob, K, Rosenstein, Meni, Wanunu, Christopher, A, Merchant, Marija, Drndic, Kenneth, L, Shepard. Integrated nanopore sensing platform with sub-microsecond temporal resolution[C]. New York, USA:nature methods, 2012. 487-487 7ҳ 7ҳ