Python opencv(五) 模糊操作

前提条件

使用工具python3.x
使用库numpy;opencv,

api简介

1.cv.blur()
对某一方向进行模糊操作
2.cv.medianBlur()
中值模糊
2.cv.filter2D
对图片进行2D卷积

代码示例

import cv2 as cvimport numpy as npdef blurDemo(image):
	dst = cv.blur(image, (1,15)) #(1,15)=>(rows,cols) 水平方向和垂直方向模糊
	cv.imshow('blurDemo',dst)def medianBlurDemo(image): #中值模糊,降噪(就是除去斑点,小黑点),根据卷积原理
	dst = cv.medianBlur(image, 5)
	cv.imshow("medianBlurDemo", dst)def customBlurDemo(image):#自定义中值模糊
	#5*5的卷积核
	#5*5=25
	# kernel = np.ones([5,5], np.float32)/25 #保证不溢出255

	#3*3=9
	# kernel = np.array([[1,1,1],[1,1,1],[1,1,1]], np.float32)/9
	
	#里面数组的值和为0,1  0:提取边缘。1:增强对比度什么的
	#几种操作
	kernel = np.array([[0,-1,0],[-1,5,-1],[0,-1,0]], np.float32)
	# kernel = np.array([[0,-1,-1],[-1,5,-1],[0,-1,0]], np.float32)

	dst = cv.filter2D(image, -1, kernel=kernel) #进行2D卷积
	cv.imshow("customBlurDemo", dst) #输出卷积结果src=cv.imread("D:/openCV_image/image/1.png")# src=cv.imread("D:/openCV_image/image/2_2.png")print(src)cv.namedWindow("input image",cv.WINDOW_AUTOSIZE)cv.imshow("input image",src)# blurDemo(src)# medianBlurDemo(src)customBlurDemo(src)cv.waitKey(0)cv.destroyAllWindows()

               

上一篇:第9章:字符串、字符和字节


下一篇:opencv——机器视觉检测和计数