matlab中一些函数用法的介绍:
1、class(im)主要是返回对象im的数据类型,返回的值可能为以下几种:
数据类型 | 解释 |
---|---|
double | 双精度 |
single | 单精度 |
logical | 逻辑值(0和1) |
char | 字符 |
cell | 元胞 |
struct | 结构体 |
function_handle | 函数句柄 |
int8 | 8位有符号整型 |
uint8 | 8位无符号整型 |
int16 | 16位有符号整型 |
uint16 | 16位无符号整型 |
<class_name> | MATLAB class name for MATLAB objects |
<java_class> | Java class name for java objects |
2、strcmp用法,用来比较字符串是否相同
(1)TF=strcmp(s1,s2);%s1和s2都是字符串
(2)TF=strcmp(s,c);s%是字符串,c是一个cell,将cell中的每一个元素和s比较,返回值是一个数组,cell的第一个元素和s一样返回1,否则返回0;
(3)TF=strcmp(c1,c1);%c1和c2都是cell,返回也是数组,大小和cell一样;
3、max函数用法
(1)[Y,I] = max(A) %Y 返回A中每列中的最大数,I是返回这个最大数在第几行。Y,I都是行向量
(2)[p,q] = max(A,[],2) %p是返回每行的最大值,q是这个最大值所在的列。p,q都是列向量(可看作投影到Y轴上)
(3)max(a(?)将数组a的列竖着排起来求最大值
4、im2double、im2single函数
im2uint8 将输入中所有小于0的设置为0,而将输入中所有大于1的设置为255 其他的所有乘以255
im2uint16 将输入中所有小于0的设置为0,而将输入中所有大于1的设置为65535
mat2gray 把一个double类的任意数组转换成值范围在[0,1]的归一化double类数组
im2double 将输入转换为double类.若输入是uint8类 uint16 类 logical类则函数将其转换为范围[0,1]之间的类;若输入是double类,则函数im2double将返回一个与输入相等的数组.
4、STATS = regionprops(L,properties)函数用法
将矩阵中的每一个元素当做一个字段,改矩阵字段数为元素最大的值max(L(?),函数regionprops返回一个长度为max(segimage(?)的结构数组STATS ,结构数组中的每一个元素是矩阵中所有属于该字段的元素下标(下标从列开始计算)
例子:其中matlab中数组的下标是按列数的,第一列数完再数第二列