找回密码
 注册
关于网站域名变更的通知
查看: 411|回复: 2
打印 上一主题 下一主题

咨询一下MatlabGUI按钮的问题?请大神帮忙啊

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-7-23 15:27 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
最近做了一个gui界面,本意是想点击按钮后在可编辑文本框中显示数字,结果运行gui点击这个按钮后,弹出了一个新的一模一样的gui界面,在这个界面的可编辑文本框中显示了数字,实在是搞不懂为什么点击按钮后会生成一个新的gui界面6 e( u) @  C, f4 K2 h: ]

该用户从未签到

3#
 楼主| 发表于 2020-7-23 16:29 | 只看该作者
这是按钮的回调函数,KNN是其中调用到的一个函数2 G: H: d) h# s$ W. N2 n$ J
function train_Callback(hObject, eventdata, handles)
5 K6 h5 p7 {3 F5 T+ nglobal fea  L2 k  d; I0 U; m
global classifier/ G: W6 u1 V+ l2 Z3 E: u0 X9 g
global rnum
! K$ }. c7 o$ x
5 \; z; C* x/ U' Y; }    load('feature.mat');( J9 x" y5 [* y5 h( ^& j3 q3 Y
    load('label1');
# u! y& Y  M; s3 I    if fea==[0 0 0 0 0]6 t4 }0 C5 s2 s; H  E- d% o
        errordlg('Error!Please choose features','Error');
, z2 i1 e! E. i2 Y3 W. E( v) }& ~9 ^    elseif fea==[1 0 0 0 0]
# c7 D$ I/ E) x3 w) @  Z8 ?2 _        feature=[ampmat];
1 q" u* b: y* J( S' I    elseif fea==[0 1 0 0 0]7 k$ K* ^. e: V& P! i7 c" }+ r7 f% L
        feature=[energymat];% F) v5 Z! A& P, k
    elseif fea==[0 0 1 0 0]
0 z# }! g( j+ C; d        feature=[entropymat];  K, B0 {0 [( s) P3 Q& l% ~
    elseif fea==[0 0 0 1 0]
: ]2 L$ b, f: X8 g5 I        feature=[fremat];
' W, |$ y* [( N& Q* O+ d* S    elseif fea==[0 0 0 0 1]. }0 t( T9 Z2 q% E
        feature=[mfccmat];
8 j! m4 U& i# K( {- h0 n4 k    elseif fea==[1 1 0 0 0]# n9 G6 }, f6 ~1 v3 K) o5 @& Z
        feature=[ampmat,energymat];# R2 i# ^) s/ n- m. T3 A$ V
    elseif fea==[1 0 1 0 0]
5 ?3 }2 e0 f& T+ G' _! X8 j2 \+ u        feature=[ampmat,entropymat];
: A% ]; J7 C3 r' X6 U1 N  N# `% O5 [    elseif fea==[1 0 0 1 0]9 V; ?. J3 `# S6 W- U% P. _
        feature=[ampmat,fremat];# A+ A+ A/ G. f- M3 g2 P5 H8 t. S
    elseif fea==[1 0 0 0 1]
7 u% h* Y0 t+ y        feature=[ampmat,mfccmat];; R  ]  Y& o9 p* O9 |2 [1 |
    elseif fea==[0 1 1 0 0]
! l, j. P3 y; Q1 S" O$ R        feature=[energymat,entropymat];$ P" U1 p- U3 ]
    elseif fea==[0 1 0 1 0]
2 \* V+ i/ f+ X5 p0 h; r' T- A        feature=[energymat,fremat];
3 ?  l  Y( \# P  o: W  W    elseif fea==[0 1 0 0 1]' L/ J- W3 Y6 Z
        feature=[energymat,mfccmat];7 h  k  ~% x8 I& R/ w0 ^  {
    elseif fea==[0 0 1 1 0]
0 h7 C) ]2 p* b8 k) O        feature=[entropymat,fremat];
4 O  c$ |* `& s0 `! x9 i+ b: `    elseif fea==[0 0 1 0 1]6 F+ i0 h5 }% i
        feature=[entropymat,mfccmat];+ E3 s# U% Z4 g6 A! D8 @% r% q
    elseif fea==[0 0 0 1 1]% d8 [8 z8 `  K5 n; g* z; b
        feature=[fremat,mfccmat];6 C/ O7 j* u. Y% C0 B; N- Y
    elseif fea==[1 1 1 0 0]
, }# n- o7 j# `' ?# g4 v- F        feature=[ampmat,energymat,entropymat];" E9 b( R) w! i# v4 [- m0 q% a5 T
    elseif fea==[1 1 0 1 0]4 N1 I# i4 L8 Y
        feature=[ampmat,energymat,fremat];+ _$ h. d' u& Y* v2 `2 y, q# O# b8 o
    elseif fea==[1 1 0 0 1]$ B1 W7 T# v/ G! a  f% g4 e6 i
        feature=[ampmat,energymat,mfccmat];
* L3 C! k/ q3 D, a1 `+ V    elseif fea==[1 0 1 1 0]6 X' d8 N( z' m' {2 E, Q
        feature=[ampmat,entropymat,fremat];
6 P+ P6 c8 @. L2 q7 D# q$ c    elseif fea==[1 0 1 0 1]& K7 d. f1 z1 z6 ]
        feature=[ampmat,entropymat,mfccmat];
& }% P- Q" W  m. J1 q3 c7 ]    elseif fea==[1 0 0 1 1]( l$ h; H2 W0 k) F
        feature=[ampmat,fremat,mfccmat];
4 ^' w3 s1 M, d: P) D    elseif fea==[0 1 1 1 0]+ X# ]3 L+ |5 o% g+ K( C0 B# x" |
        feature=[energymat,entropymat,fremat];
5 d' {$ E0 B- Z0 }7 P    elseif fea==[0 1 1 0 1]1 C# w1 o& q) u$ z. ]
        feature=[energymat,entropymat,mfccmat];$ W' E7 _# {' q! ~
    elseif fea==[0 1 0 1 1]
- m! ?+ w' R4 G        feature=[energymat,fremat,mfccmat];
! f0 F3 z; R2 r5 x    elseif fea==[0 0 1 1 1]
2 @8 Z6 {8 w! d$ k6 ?        feature=[entropymat,fremat,mfccmat];  H9 v2 q: K! f$ B
    elseif fea==[1 1 1 1 0]& t- j  _2 C# @9 s! K+ l, ?5 ~
        feature=[ampmat,energymat,entropymat,fremat];: V4 g# E$ O* \+ x
    elseif fea==[1 1 1 0 1]' z3 y/ P7 @. A9 v
        feature=[ampmat,energymat,entropymat,mfccmat];
' c. i: [( X7 N. j, t    elseif fea==[1 1 0 1 1]; E+ v( [8 ^1 I3 l1 d
        feature=[ampmat,energymat,fremat,mfccmat];2 L" t/ i$ x% t8 d7 {; x
    elseif fea==[1 0 1 1 1]
, V% s- L2 M4 s7 j        feature=[ampmat,entropymat,fremat,mfccmat];
# a' V4 s$ D9 q. i+ Q7 S    elseif fea==[0 1 1 1 1]+ ]0 w% X# y/ i1 `7 f
        feature=[energymat,entropymat,fremat,mfccmat];
; X  h2 s$ q, ~    elseif fea==[1 1 1 1 1]
6 A1 J# ~1 u9 [5 G        feature=[ampmat,energymat,entropymat,fremat,mfccmat];. V! |7 f" c7 f6 ?" a
    else
# W( q1 X6 N& R6 J4 _6 N5 Q        errordlg('Error!Please choose features','Error');8 k6 `+ r9 H5 C; M4 }# a
    end. T( H  a! q5 l! t: U, W) h
        
3 [( o2 V' v- `1 Y6 f' Y8 Z% x   
% b* x# _3 m' i3 t0 v; F    r=randperm(600);( x- ?8 ~3 v+ y" }$ n& W
    X0=feature(r,;
) E! M- @7 a  Y- Z. h& S! `    Xtrain=X0(1:420,;/ C$ D2 l# M  d- C7 k% C
    Xtest=X0(421:600,;3 v* ~- H  w$ {3 M0 _' d: A9 y8 w
    label0=label1(r,:);7 h9 ^: i! h9 @6 U
    labeltrain=label0(1:420,:);
6 V& q- e" T8 @) w9 h$ O' U# ^    labeltest=label0(421:600,:);
* m! U# K* ?) \) x( P/ N    TResult=KNN(Xtrain,Xtest,labeltrain); : \) H. t: |; {2 c& l0 ]8 W9 r& z6 d
    rnum=0;
) T5 Y. d1 i" j* D7 k    for i=1:180
: `  F6 ?5 l/ w        if TResult(i)==labeltest(i)% ]6 |6 i6 j% ]+ l9 e0 m
            rnum=rnum+1;
( d0 v( O. O4 n$ d        end
( d3 F: H# |3 o; S& h    end
2 m6 n$ T0 @: S4 ~' ?   5 _3 l' u5 [6 |: q/ P
    set(handles.edit1,'String','loading completed');
$ G' Q2 U2 |. ^7 {' E. V    set(handles.edit2,'String',num2str(rnum/180));
# }9 ~" }0 c$ }: y" I8 S0 ^5 t1 M
function result=KNN(train,test,trainlabel)0 m$ }# v$ a: [' g& v& E% y; \) w! |
k=2;7 J# y' f' `, y5 Q, @
testlength=length(test(:,1));
* I9 f( a1 R, d% z. l4 D$ ztrainlength=length(train(:,1));
6 R4 u  a5 [6 |; `$ H0 `' k9 ^for i=1:testlength
; U+ S; a' W: B& X: V& k8 T    dist=zeros(trainlength,1);
) W# [! Z/ ]% g2 D) {. y' o    for j=1:trainlength; D0 K1 U5 |1 {5 U. S
        dist(j)=distance(test(i,:),train(j,:),1);
- S! }7 i6 k* B& f% V9 X    end- B& n+ ?7 F9 w* Q& A( L
    [Y,I]=sort(dist,1);: h0 M! a) ]# _  q
    k=min(k,length(Y));* e: j# A9 Z$ T8 y. L) O
    labels=trainlabel(I);
6 {8 G/ o# w9 u! \+ V- |5 ?    result(i)=mode(labels(1:k));3 ]3 t! c7 i  U
end

该用户从未签到

2#
发表于 2020-7-23 16:14 | 只看该作者
没搞过这个
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-24 19:32 , Processed in 0.156250 second(s), 24 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表