码迷,mamicode.com
首页 > 编程语言 > 详细

数学之路-python计算实战(17)-机器视觉-滤波去噪(中值滤波)

时间:2014-07-21 13:37:14      阅读:2184      评论:0      收藏:0      [点我收藏+]

标签:des   style   blog   http   color   strong   

Blurs an image using the median filter.

C++: void medianBlur(InputArray src, OutputArray dst, int ksize)
Python: cv2.medianBlur(src, ksize[, dst]) → dst
Parameters:
  • src – input 1-, 3-, or 4-channel image; when ksize is 3 or 5, the image depth should be CV_8UCV_16U, or CV_32F, for larger aperture sizes, it can only be CV_8U.
  • dst – destination array of the same size and type as src.
  • ksize – aperture linear size; it must be odd and greater than 1, for example: 3, 5, 7 ...

The function smoothes an image using the median filter with the bubuko.com,布布扣aperture. Each channel of a multi-channel image is processed independently. In-place operation is supported.

中值滤波将图像的每个像素用邻域 (以当前像素为中心的正方形区域)像素的 中值 代替 。与邻域平均法类似,但计算的是中值

# -*- coding: utf-8 -*-   
#code:myhaspl@myhaspl.com
#中值滤波
import cv2
import numpy as np
fn="test3.jpg"
myimg=cv2.imread(fn)
img=cv2.cvtColor(myimg,cv2.COLOR_BGR2GRAY)

#加上椒盐噪声
#灰阶范围
w=img.shape[1]
h=img.shape[0]
newimg=np.array(img)
#噪声点数量
noisecount=50000
for k in xrange(0,noisecount):
    xi=int(np.random.uniform(0,newimg.shape[1]))
    xj=int(np.random.uniform(0,newimg.shape[0]))
    newimg[xj,xi]=255


#滤波去噪
lbimg=cv2.medianBlur(newimg,3)
cv2.imshow(‘src‘,newimg)
cv2.imshow(‘dst‘,lbimg)
cv2.waitKey()
cv2.destroyAllWindows()       

中值滤波忽略了较高阶灰度和较低阶灰度,直接取中值,因为有效得过滤椒盐噪声 

bubuko.com,布布扣

对高斯噪声的滤波


bubuko.com,布布扣

数学之路-python计算实战(17)-机器视觉-滤波去噪(中值滤波),布布扣,bubuko.com

数学之路-python计算实战(17)-机器视觉-滤波去噪(中值滤波)

标签:des   style   blog   http   color   strong   

原文地址:http://blog.csdn.net/myhaspl/article/details/37997977

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!