中值滤波算法--C 语言实现

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

中值滤波就是先排序然后找到中位值下边是c语言的实现供参考


// 交换两个数的值 
void swap(int* a, int* b) 

int temp = *a; 
*a = *b; 
*b = temp; 

//实现中值滤波
int mid_filt(int data[], int size) 

int temp[size]; 

// 复制数组 
for (int i = 0; i < size; i++) 
temp[i] = data[i]; 

// 冒泡排序 
for (int i = 0; i < size - 1; i++) 
for (int j = 0; j < size - 1 - i; j++) 
if (temp[j] > temp[j + 1]) 
swap(&temp[j], &temp[j + 1]); 

//基数返回中位数 
if (size % 2 == 1) 
return temp[size / 2]; 
//偶数返回中间两个中的平均值 
else 
return (temp[size / 2] + temp[(size / 2) - 1]) / 2; 
}

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6