人脸检测-模糊操作(6)

模糊操作

深入理解请参参照

原理简述:

均值滤波及算法实现

均值模糊:

opencv官网对cv.blur()的详解

  • 代码:
def blur_demo(image):
	dst = cv.blur(image, [5, 5]);
	cv.imshow("blur demo", dst);
  • 应用:去除图像噪声

中值模糊:

opencv官网对cv.medianBlur()的详解

  • 代码:
def median_blur_demo(image):
	dst = median(image, 5 );
	cv.imshow("median demo", dst);
  • 应用:去除椒盐噪声

自定义模糊:

opencv官网对filter2D的详解

  • 应用:可以对图像进行锐化、增强立体感
  • 代码:
def custom_blur_demo(image):
    kernel = np.ones([5, 5], np.float32)/25; #allow overfloading
    dst = cv.filter2D(image, -1, kernel = kernel);
    #(-1) means same with 之前的图像
    cv.imshow("custom_blur_demo", dst);
  • 区分:
  • cv.blur()是均值滤波,应用卷积进行计算,输出图像的对应像素值 == (卷积和)/ height*width。
  • cv.median()是中值滤波,第二个参数是孔径尺寸(必须为奇数),输出图像的对应像素值 == 对应区域像素值的中值。
  • cv.filter2D()是自定义的滤波,得到的结果需要/(对应尺寸)以防止overfloading。
发布了42 篇原创文章 · 获赞 6 · 访问量 1517

猜你喜欢

转载自blog.csdn.net/qq_41156733/article/details/95932141