任意の線形フィルタ処理

V2.4.11, V3.0.0
In [1]:
# -*- coding: utf-8 -*-
import cv2
import numpy as np

#Ipythonで表示用の設定
import matplotlib.pyplot as plt
%matplotlib inline

#画像読込
in_img = cv2.imread("lena.jpg")

#任意の線形フィルタ(ここでは、11x11の移動平均)
kernel = np.ones((11,11),np.float32)/121
out_img = cv2.filter2D(in_img,-1,kernel)

#OpenCVがBGRなのでRGBに変換
disp_in_img  = cv2.cvtColor(in_img,  cv2.COLOR_BGR2RGB)
disp_out_img = cv2.cvtColor(out_img, cv2.COLOR_BGR2RGB)

#画像表示
plt.subplot(121)
plt.imshow(disp_in_img)
plt.subplot(122)
plt.imshow(disp_out_img)
Out[1]:
<matplotlib.image.AxesImage at 0x57fa470>
inserted by FC2 system