c语言滑动窗口滤波算法
时间: 2023-10-26 12:16:03 浏览: 206
滑动窗口算法
5星 · 资源好评率100%
C语言滑动窗口滤波算法,也叫滑动平均滤波法,是一种常见的信号滤波方法。它的原理是在一定时间窗口内取样,来平均化信号的波动。滑动窗口的大小一般可以根据需要来调整。具体实现可以使用数组和循环来实现,代码如下:
```
#define WINDOW_SIZE 5 // 窗口大小
int input[10] = {1, 3, 5, 7, 9, 11, 13, 15, 17, 19}; // 待处理的信号
// 滤波函数
int sliding_window_filter(int data[], int size, int window_size) {
int output = 0;
int i, j;
for (i = 0; i < size - window_size + 1; i++) {
int sum = 0;
for (j = 0; j < window_size; j++) {
sum += data[i + j];
}
output += sum / window_size;
}
return output;
}
int main() {
int output = sliding_window_filter(input, 10, WINDOW_SIZE);
printf("Output: %d\n", output);
return 0;
}
```
这段代码演示了一个窗口大小为 5 的滑动窗口滤波算法。对待处理的信号 input 进行滤波后,输出平均化后的信号。
阅读全文