いくつかの画像フィルタリング操作OpenCVの

我々は動作をノイズ除去する必要があるので、読み取り画像において、このようないくつかのホワイトノイズのようないくつかの音響ポイントせっかち、が存在するであろう。そのような平均値フィルタ、ブロックフィルタリング、ガウシアンフィルタリングおよびメディアンフィルタなど。ここではどのように特定の操作とポストフィルタリング効果を示す4つのフィルタリング方法にあります

import cv2
import numpy as np

# 1.图片中存在一些噪音点
img = cv2.imread('lenaNoise.png')
cv2.imshow('original', img)
cv2.waitKey(0)
cv2.destroyAllWindows()

ここに画像を挿入説明

# 2. cv2.blur 使用均值滤波,即当对一个值进行滤波时,使用当前值与周围8个值之和,取平均做为当前值

mean = cv2.blur(img, (3, 3))
cv2.imshow('mean', mean)
cv2.waitKey(0)
cv2.destroyAllWindows()

ここに画像を挿入説明

# 3. cv2.boxFilter 表示进行方框滤波,normalize=True时和均值滤波是等价的
box = cv2.boxFilter(img, -1, (3, 3), normalize=True)
cv2.imshow('box', box)
cv2.waitKey(0)
cv2.destroyAllWindows()
# 当normalize=False 表示对加和后的9个点,不进行求平均的操作,如果加和后的值大于255,使用255表示
box_1 = cv2.boxFilter(img, -1, (3, 3), normalize=False)
cv2.imshow('box_1', box_1)
cv2.waitKey(0)
cv2.destroyAllWindows()

ここに画像を挿入説明ここに画像を挿入説明

# 4. cv2.GaussianBlur 根据设置的均方差σ,利用高斯公式
#对周围的点进行加权求平均
gaussian = cv2.GaussianBlur(img, (5, 5), 1)
cv2.imshow('gaussian', gaussian)
cv2.waitKey(0)
cv2.destroyAllWindows()

ここに画像を挿入説明

# 5. cv2.medianBlur #将9个数据从小到大排列,取中间值作为当前值
median = cv2.medianBlur(img, 3)
cv2.imshow('median', median)
cv2.waitKey(0)
cv2.destroyAllWindows()

ここに画像を挿入説明

公開された27元の記事 ウォン称賛20 ビュー1554

おすすめ

転載: blog.csdn.net/qq_39507748/article/details/104507053