MATLAB知识二filter2、unique、hist、强行停止调试

时间:2021-04-16 18:25:57

1.filter2

filter2(B,X),B为滤波器.X为要滤波的数据,这里将B放在X上,一个一个移动进行模板滤波.

MATLAB知识二filter2、unique、hist、强行停止调试

可以看出,这里是将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相反,它首先使滤波器的右下角与数据的左上角重合,然后移动模板进行滤波.

MATLAB知识二filter2、unique、hist、强行停止调试

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)         %取集合a的不重复元素的第一个数值
b = unique (A,'rows')   %返回A 值不同的行组成的矩阵
[b,i,j] = unique (…)     %i体现b中元素在原向量(矩阵a)中的位置--其中二维数组的话,是一列一列的计数;

j体现原向量(矩阵a)

3、hist函数使用

hist 绘制直方图函数
以算例来说明:

data=[4 1 2 3 1 3 1 3 2 4];
z=hist(data,4)

输出结果为:

z =

     3     2     3     2


解释:

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是范围中心的位置,可以换算成以上提到的范围)

MATLAB知识二filter2、unique、hist、强行停止调试


2、强行停止调试的方法

试过在命令窗口ctrl+c