1.filter2
filter2(B,X),B为滤波器.X为要滤波的数据,这里将B放在X上,一个一个移动进行模板滤波.
可以看出,这里是将d对c 进行模板滤,重叠区相*,然后相加,得到的值,38=4*1+2*3+5*2+3*6; 24=4*6;.........
这时默认滤婆器的左上角,首先将与数据的左上角相重合,然后移动模板进行滤波.
还有其它设置.
filter2(c,d ,'same')与上一致.same是默认的.
filter2(c,d,'valid'),
这时默认滤婆器的左上角,首先将与数据的左上角相重合,然后移动模板进行滤波.
但是要保证移动过程中,滤波器所有地方都要与数据重合,都是全部重合的,
filter(c,d,'full')这与same相反,它首先使滤波器的右下角与数据的左上角重合,然后移动模板进行滤波.
2、unique函数的使用
A=[1 1 2 2 3 3 4 4 6 4 6];
[c,j,i]=unique(A)
B=[1 2 2 4;1 1 4 6;1 1 4 6]
[h,k,l]=unique(B)
结果为:
c =
1 2 3 4 6
j =1 3 5 7 9
i= 1 1 2 2 3 3 4 4 5 4 5
h=1 2 4 6
k= 1 4 8 11
l= 1 1 1 2 1 1 2 3 3 3 4 4
格式
b = unique (A,'rows')
[b,i,j] = unique (…)
j体现原向量(矩阵a)
3、hist函数使用
hist 绘制直方图函数
以算例来说明:
data=[4 1 2 3 1 3 1 3 2 4];
z=hist(data,4)
输出结果为:
z =
解释:
x轴是范围(bin),y轴是频率(个数),它的bin是1-1.75, 1.75-2.5, 2.5-3.25, 3.25-4 四个范围,3,2,3,2是这些data有多少个属于bin对应的范围,即 3个数据在1-1.75这个范围,2个数据在1.75-2.5的范围,...
[n,bins]=hist(data,4),可以输出对应的bin(这里输出的bin是范围中心的位置,可以换算成以上提到的范围)
2、强行停止调试的方法
试过在命令窗口ctrl+c