我是Simulink的新手。我想从一个块做平均传入数据(在一些间隔之后)。例如,42个样本的连续帧数据来自一个块。与框架数据一起,还有另一个输出(标签),它告诉这些框架/样本属于哪个类别。标签是1-6的数字。输出是随机的。我想平均相同的类别数据。就像第一帧是cat1一样,然后经过4帧后,cat1帧又来了。现在我应该如何使用前一帧平均这个新帧?我想为所有类别执行此操作。请帮帮我。
答案 0 :(得分:0)
快速而肮脏的解决方案是为每个类别实施一个arraylist。使用NaN初始化列表并为每个类别的最后一个样本保留一个计数器。使用平均函数,您可以获得所有测量的平均值。
如果你只想要当前帧和前一帧的平均值,你可以简单地做mean([cat1(n1) cat1(n1+1)])
,其中cat1是类别1中帧的arraylist,而n1是cat1中前一帧的索引。
如果你想要一个"实时"的加权移动平均线。实现,为每个类别创建一个平均变量(称为av1,av2等)并计算av1 = alpha*av1 + (1-alpha)*cat1(n1+1)
(其中alpha是分配给先前平均值的重量(alpha <1)和cat1(n1 + 1)是每当cat1帧出现时,新的测量值。