OpenCV – メディアンフィルタの仕組みと cv2.medianBlur の使い方

概要
メディアンフィルタについて解説し、OpenCV の cv2.medianBlur でメディアンフィルタを適用する方法を紹介します。
Advertisement
メディアンフィルタ
メディアンフィルタとは、フィルタ内の画素を小さい順にソートしたときに真ん中にくる画素を出力する非線形フィルタです。
cv2.bilateralFilter
cv2.bilateralFilter()
でバイラテラルフィルタを適用できます。
In [1]:
import cv2
import numpy as np
from IPython.display import Image, display
def imshow(img):
"""ndarray 配列をインラインで Notebook 上に表示する。
"""
ret, encoded = cv2.imencode(".jpg", img)
display(Image(encoded))
# 画像を読み込む。
img = cv2.imread("sample.jpg")
# バイラテラルフィルタ
dst = cv2.medianBlur(img, 3)
imshow(dst)

メディアンフィルタにより、白いノイズが削除できたことを確認しました。
-
前の記事
OpenCV – 長方形、円、線、ポリゴンなどを描画する方法 2020.09.02
-
次の記事
OpenCV – バイラテラルフィルタの仕組みと cv2.bilateralFilter の使い方 2020.09.03