智能硬件与机器视觉:基于树莓派、Python和OpenCV
上QQ阅读APP看书,第一时间看更新

4.2.6 平滑图像

在许多图像处理流程中,必须模糊图像以减少高频噪声,使算法更容易检测和理解图像的实际内容,从而避免算法被噪声“干扰”。在OpenCV中模糊图像非常容易,并且还有很多其他方法也可以实现。

我经常使用GaussianBlur函数来实现模糊图像。


 # 将11x11卷积核的高斯模糊应用于图像以使其平滑,#68
# 这在降低高频噪声时非常有用 #69
blurred = cv2.GaussianBlur(image, (11, 11), 0)  #70
cv2.imshow("Blurred", blurred)  #71
cv2.waitKey(0)  #72

在第70行使用了一个11×11卷积核的高斯模糊,其结果如图4-9所示。模糊是许多图像处理流程中重要的一步,可以降低高频噪声。较大的卷积核会产生更模糊的图像。较小的卷积核将产生较轻微模糊的图像。

图4-9 用OpenCV的11×11的卷积核进行了高斯模糊