图像加运动模糊 python代码
时间: 2024-06-22 12:04:18 浏览: 247
在Python中,我们可以使用OpenCV库来添加运动模糊效果到图像上。OpenCV提供了丰富的图像处理功能,包括模糊操作。以下是一个简单的例子,展示如何对图像进行径向或高斯运动模糊:
```python
import cv2
import numpy as np
# 加载图像
image = cv2.imread('image.jpg', cv2.IMREAD_COLOR)
# 定义模糊核(kernel),例如高斯核或径向核
# 高斯模糊核
kernel_size = 5
gaussian_kernel = cv2.getGaussianKernel(kernel_size, 0)
# 或者径向模糊核
# radial_kernel = cv2.getStructuringElement(cv2.MORPH_ELLIPSE, (kernel_size, kernel_size), (kernel_size // 2, kernel_size // 2))
# 对图像应用模糊
# 高斯模糊
blurred_image = cv2.filter2D(image, -1, gaussian_kernel)
# 或径向模糊,这里径向模糊需要先进行腐蚀操作(预处理),因为OpenCV的motion_blur函数不支持单独的径向模糊
blurred_image = cv2.morphologyEx(image, cv2.MORPH_DILATE, radial_kernel)
blurred_image = cv2.filter2D(blurred_image, -1, gaussian_kernel)
# 显示原图和模糊后的图像
cv2.imshow("Original Image", image)
cv2.imshow("Blurred Image", blurred_image)
# 等待按键,然后关闭窗口
cv2.waitKey(0)
cv2.destroyAllWindows()
```
阅读全文