アンシャープマスク

V2.4.11, V3.0.0

In [2]:
# -*- coding: utf-8 -*-
import cv2
import numpy as np

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

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

# カーネルの定義
kernel = np.array([[0,-1,0],
                   [-1,5,-1],
                   [0,-1,0] ],np.float32)

# カーネルでフィルタリング
unsharp = cv2.filter2D(in_img,-1,kernel) # -1:入力画像と同じ深さ

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

#画像表示
plt.figure(figsize=(12,6))
plt.subplot(121)
plt.imshow(disp_in_img)
plt.subplot(122)
plt.imshow(disp_out_img)
Out[2]:
<matplotlib.image.AxesImage at 0x9bd48d0>

inserted by FC2 system