高斯滤波python代码
时间: 2024-06-22 22:03:38 浏览: 110
高斯滤波是一种常见的图像处理技术,用于平滑图像,去除噪声。在Python中,我们可以使用`scipy.ndimage`库来实现高斯滤波。以下是一个简单的高斯滤波器应用示例:
```python
from scipy import ndimage
import numpy as np
import matplotlib.pyplot as plt
# 创建一个简单的图像数据
image = np.random.rand(50, 50)
# 定义高斯核(标准差可以根据需求调整)
sigma = 5
gaussian_kernel = ndimage.gaussian_filter(np.eye(2), sigma)
# 应用高斯滤波
blurred_image = ndimage.convolve(image, gaussian_kernel, mode='constant')
# 显示原图和模糊后的图像
fig, axs = plt.subplots(1, 2, figsize=(10, 5))
axs.imshow(image, cmap='gray')
axs.set_title('Original Image')
axs.imshow(blurred_image, cmap='gray')
axs.set_title('Blurred Image (Gaussian Filtered)')
for ax in axs:
ax.set_axis_off()
plt.show()
相关问题
图像高斯滤波python代码
下面是一份Python中使用OpenCV库实现高斯滤波的代码:
```python
import cv2
# 读取图像
img = cv2.imread('image.jpg')
# 高斯滤波
blur_img = cv2.GaussianBlur(img, (5, 5), 0)
# 显示原图和处理后的图像
cv2.imshow('Original Image', img)
cv2.imshow('Blurred Image', blur_img)
# 等待键盘输入关闭窗口
cv2.waitKey(0)
cv2.destroyAllWindows()
```
其中,`cv2.GaussianBlur`函数实现了高斯滤波,第一个参数是输入的图像,第二个参数是高斯核的大小,第三个参数是高斯核的标准差。在本例中,高斯核大小为(5,5),标准差为0。
自适应高斯滤波python代码
以下是一个简单的自适应高斯滤波的Python代码:
```python
import cv2
import numpy as np
def adaptive_gaussian_filter(image, kernel_size=5, sigma=5, threshold=0.03):
"""
自适应高斯滤波函数
:param image: 待处理的图像,要求为灰度图像
:param kernel_size: 高斯核的尺寸
:param sigma: 高斯核的标准差
:param threshold: 阈值,决定了是否进行滤波操作
:return: 滤波后的图像
"""
# 1. 计算图像的梯度幅值
grad_x = cv2.Sobel(image, cv2.CV_64F, 1, 0, ksize=3)
grad_y = cv2.Sobel(image, cv2.CV_64F, 0, 1, ksize=3)
grad_mag = np.sqrt(grad_x ** 2 + grad_y ** 2)
# 2. 计算像素点的局部方差
var = cv2.GaussianBlur(grad_mag ** 2, (kernel_size, kernel_size), sigma)
var = var - cv2.blur(grad_mag, (kernel_size, kernel_size))
# 3. 计算自适应系数
coef = np.exp(-np.abs(var) / (2 * (threshold ** 2)))
# 4. 进行滤波操作
filtered_image = cv2.GaussianBlur(image, (kernel_size, kernel_size), sigma)
filtered_image = filtered_image + coef * (image - filtered_image)
return filtered_image
```
该函数接受一个灰度图像,然后计算图像的梯度幅值,并计算每个像素点的局部方差。接着,它根据局部方差计算自适应系数,然后使用自适应系数对图像进行滤波操作。最后,返回滤波后的图像。
阅读全文