高斯滤波是一种常用的图像处理技术,用于平滑图像并减少噪声。在本文中,我们将使用C语言来实现一个简单的高斯滤波函数。
首先,让我们来了解一下高斯滤波的原理。高斯滤波基于高斯函数的核,通过计算每个像素周围邻域的加权平均值来平滑图像。邻域中像素的权重根据其与中心像素的距离计算,距离越远的像素权重越小。这样可以保留图像的整体结构并减少噪声。
接下来,我们将实现一个简单的高斯滤波函数。我们将使用二维数组表示图像,其中每个元素的值表示像素的灰度级别。函数将采用图像数组、图像的宽度和高度以及高斯核的标准差作为输入参数,并返回滤波后的图像数组。
下面是实现高斯滤波函数的C代码:
#include <stdio.h>
#include <stdlib.h>