ecg中值滤波Java代码
时间: 2023-10-20 14:05:50 浏览: 48
以下是Java中实现ECG中值滤波的代码:
```java
public class ECGMedianFilter {
public static void main(String[] args) {
// 假设有一个ECG信号,存储在数组中
int[] ecgSignal = {1, 3, 7, 5, 9, 2, 6, 8, 4};
// 定义滤波窗口大小为3
int windowSize = 3;
// 调用中值滤波函数
int[] filteredSignal = medianFilter(ecgSignal, windowSize);
// 输出滤波后的信号
for (int i = 0; i < filteredSignal.length; i++) {
System.out.print(filteredSignal[i] + " ");
}
}
/**
* 中值滤波函数
* @param signal 原始信号
* @param windowSize 滤波窗口大小
* @return 滤波后的信号
*/
public static int[] medianFilter(int[] signal, int windowSize) {
int[] filteredSignal = new int[signal.length];
// 对于滤波窗口大小为奇数的情况,取中间值
if (windowSize % 2 != 0) {
for (int i = 0; i < signal.length; i++) {
int[] window = new int[windowSize];
int count = 0;
for (int j = i - windowSize / 2; j <= i + windowSize / 2; j++) {
if (j >= 0 && j < signal.length) {
window[count] = signal[j];
count++;
}
}
Arrays.sort(window);
filteredSignal[i] = window[windowSize / 2];
}
}
// 对于滤波窗口大小为偶数的情况,取中间两个数的平均值
else {
for (int i = 0; i < signal.length; i++) {
int[] window = new int[windowSize];
int count = 0;
for (int j = i - windowSize / 2; j <= i + windowSize / 2; j++) {
if (j >= 0 && j < signal.length) {
window[count] = signal[j];
count++;
}
}
Arrays.sort(window);
filteredSignal[i] = (window[windowSize / 2] + window[windowSize / 2 - 1]) / 2;
}
}
return filteredSignal;
}
}
```
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)