边缘保留滤波
之前的几种图像卷积处理之后图像的边缘信息会丢失,所谓图像的边缘信息,不是指的图像四个边的那一部分的信息,而是图像在像素层面上,像素值跃迁,差异值比较大的地方。而边缘保留滤波算法(EPF Edge Preserving Filter)则可以解决这个问题,滤波之后的输出可以完整的保存图像整体边缘的信息。常见的边缘保留滤波算法有:
1.高斯双边滤波
2.均值迁移滤波
主要来看一下代码学习
# 边缘保留滤波(EPF)
# 高斯双边
# 均值迁移
# 操作
import cv2
import numpy as np
def bi_demo(image):
dst=cv2.bilateralFilter(image,0,100,15) #高斯双边模糊
cv2.imshow("bi_demo",dst)
def shift_demo(image):
dst=cv2.pyrMeanShiftFiltering(image,10,50) #均值迁移,有时候过度模糊
cv2.imshow("shift_demo",dst)
print("-------HELLO-------")
src=cv2.imread("123.jpg")
cv2.imshow("Source Image",src)
bi_demo(src)
shift_demo(src)
cv2.waitKey(0)
cv2.destroyAllWindows()
(1)原图
(2)高斯双边滤波
(3)均值迁移滤波