demo:用matlab app designer做一个简易app
GUI(guide)的教程挺多,但app designer是matlab后续版本中才添加的,界面更友好但度娘资源比较少
1、点击新建—APP设计工具,或者直接在命令行输入appdesigner运行
2、拖动画布上的图标,大概建立这样一个布局
右下角属性中可以设置一些基本参数,选择代码视图,属性中可选项更多,比如Xlim,Ylim,颜色,字号等
3、在按钮上右键,函数回调,光标自动到指定区域,进行编程
简单写个调用Alexnet和笔记本摄像头进行识别的函数吧
app和guide的许多语法变了,比如,
1、赋值不再是set(…)语句,而是app.变量名.Value
2、绘图imshow(picture ,‘Parent’,app.UIAxes),原先的axes(…),imshow(axes…)已经不能使用了
3、plot没怎么变,唯一就是改成了app.如 plot(app.a,x,y)
加载网络按钮回调
(加载我单独拿出来了,省的每次运行都加载很慢。最初打算用 if exist(‘nnet’) == 0来判断,不知道为啥不行,全局变量?)
确保多个按钮函数共享参数,每次都要定义全局变量。
global nnet;
global A ;
nnet = alexnet;
A = 0;%识别开始与停止判断参数
char_str = '网络加载完毕!';
app.title.Value = char_str;
运行按钮
global A
global nnet;
camera = webcam;%调用电脑摄像头
A=1;
while A
picture = camera.snapshot; % Take a picture
picture = imresize(picture,[227,227]); % Resize the picture
label = classify(nnet, picture);
label = char(label);
imshow(picture ,'Parent',app.UIAxes)
app.title.Value = label;
end
停止按钮
global A
A=0;
4、运行
6、导出为可执行文件
stp1
stp2
等一会之后,就可以得到单独的exe文件,可以不用打开matlab使用(用户电脑需要有matlab,可以选择完全打包,但是文件要大得多得多)