模式识别作业1

时间:2022-01-31 21:54:53

l  加上close all;clear all;clc;

l  开头注释函数功能,重要参数含义,

l  GUI不同控件的变量传递:全局变量、句柄

l  列表显示变量用set()函数和list控件

l  表格显示矩阵用uistable

l  figure可以设置画框大小和在屏幕的位置

l  var求方差,std求均方差即标准差

l  用mean求向量均值,二维矩阵用两次,sum同理

l  调试发现一个累加中间变量值停留在255,原因:变量类型为uint8,范围限制

l  imread读到的图像是uint8型的,计算的时候最好转成double

l  isnan处理edit控件无输入:if isnan(str2double(get(handles.angle,'string')))

l  if end或者for end不匹配会导致函数嵌套问题(函数或者循环的那个框框都不对)

l  函数重载:传递参数用可变长度参数varargin,narginchk(minargs,maxargs)统计输入参数个数,得到参数varargin{1}、varargin{2}..

l  图像数据进行计算,如果结果也是图像,注意数据类型,图像数据是uint8类型,如果两个图像相减不先转换类型,则减完结果也是同类型uint8,则不能表示负数

l  注意所使用图片的类型,各种情况要考虑完,RGB,灰度

 

l   

l  函数重载输入参数varargin,输出varargout;nargin判断输入参数个数,varargin{i}得到第i个参数,varargout{i}得到第i个返回值

l  定义符号变量syms,给符号函数的符号变量赋值求结果用subs;符号函数得到的值是syms类型,用作数值记得转为double

#   使用对话框输入参数:prompt={'Input Label Number'}; 

title='输入类别数:';

lines=1;

def={'2'};

label=inputdlg(prompt,title,lines,def);

#   Ezplot可以直接画函数,但是不能像plot指定颜色等,要用 h1=ezplot(Dec12);

    set(h1,'color','k');

l  Hold on继续在图上画

l  H=legend(‘’,’’,’’)作图标

l  Xlabel(‘’)里面只能有一个表达式,如果要组合输出字符串和变量则用中括号都括起来:xlabel([‘字符串’,变量名,’字符串’])