Python OpenCV学习笔记之:图像滤波处理 4年前

# -*- coding: utf-8 -*-

图像滤波

''' 图像处理也支持低通滤波(LPF)和高通滤波(HPF)处理 OpenCV提供filter2D函数对图像进行滤波处理 '''

import cv2 as cv import numpy as np import matplotlib.pyplot as plt

读取图像

img = cv.imread('../../../datas/images/fish.jpg')

滤波Kernel,求平均值

kernel = np.ones((5,5),np.float32) / 25

均值滤波

执行滤波处理,图像将变得模糊

dst = cv.filter2D(img,-1,kernel)

dist = cv.blur(img,(5,5))

# 显示结果

plt.subplot(121)

plt.imshow(img)

plt.title('Original')

plt.xticks([])

plt.yticks([])

plt.subplot(122)

plt.imshow(dst)

plt.title('Averaging')

plt.xticks([])

plt.yticks([])

#plt.show()

cv.imshow("image",img) cv.imshow("Filter-Avg",dst)

高斯滤波

dst = cv.GaussianBlur(img,(5,5),0) cv.imshow("Gaussian Blur",dst)

中值滤波

dst = cv.medianBlur(img,5) cv.imshow("Median Blur",dst)

双边滤波,可以用来做一些简单的美颜处理

dst = cv.bilateralFilter(img,9,75,75) cv.imshow("Bilateral Filter",dst)

cv.waitKey() cv.destroyAllWindows()

O
OoHopeoO
人只会看到自己想看到的、听到自己想听到的,我也并不例外。
5
发布数
1
关注者
12645
累计阅读

热门教程文档

Linux
51小节
Vue
25小节
MyBatis
19小节
Redis
14小节
QT
33小节
广告