Opencv 之 图像模糊(图像平滑)

开头几句题外话:

小伙伴们我回来了,想做友链的小伙伴,想租广告位的小伙伴,我们邮箱联系!虽然站目前的流量并不大,不过日后上了Alex排名,势必丰厚回馈各位小伙伴。相信我的诚意与努力小伙伴们都有目共睹,我们会共同创造一个美好的站的。(有会seo的小伙伴也可以联系我,创造价值的小伙伴我一定重金酬谢)我是Y,下面开始我们今天的行程吧!

Opencv 之 图像模糊(图像平滑)

想实现图像模糊可以用低通滤波器,而且去噪也可以用这个,我们上一章说过。

是什么原理呢?

答:去除高频。

-什么是高频?

-比如说噪音,边界

-那图像边界不没有了?

-并不是没有了,只是模糊了。

 

我们有四种方法可以实现模糊:

  1. 平均
  2. 高斯模糊
  3. 中值模糊
  4. 双边滤波

今天我们来说一下第一种:

Opencv 模糊之 平均法。

平均法使用了这个函数:

  • cv2.blur()

这个函数有 两个参数

  1. 输入图像
  2. 低通滤波器的大小(模板大小)

来看下模糊后是啥样的~

看看模糊后是什么样的~

 

原图像也发一下

原图像

我很纳闷啊,为啥这是白色的背景,处理完就变黑了呢?

其实原来就有这个问题,有人知道原因吗?

上源码!

# -*- coding:utf-8 -*-
"""
Created on Thu Mar 13 20:43:11 2017

@author: Y

"""

import cv2
import numpy as np
from matplotlib import pyplot as plt

img = cv2.imread('C:\Users\Administrator\Desktop\opencvimg\Logo.png')

blur = cv2.blur(img,(3,3))

plt.subplot(121), plt.imshow(img), plt.title('Original')
plt.xticks([]), plt.yticks([])
plt.subplot(122), plt.imshow(blur), plt.title('Blurred')
plt.xticks([]), plt.yticks([])
plt.show()

 

 

今天的内容不多,很快会有下一章的内容更新的。大家都看了开头语吧,希望有意向的小伙伴能和我邮箱联系,成为我的友链,你会一直佩服自己的眼光;来组我的广告位,未来的你一定会庆幸自己在一个网站成长之前就预见了美好的发展。我是Y,各位小伙伴,晚安!