In [2]:
%matplotlib inline
import matplotlib.pyplot as plt
import numpy as np
In [4]:
from PIL import Image
img = np.array(Image.open('einstein_small.jpg').convert('RGB'))[:,:,0]
plt.imshow(img, cmap=plt.get_cmap('gray'))
Out[4]:
<matplotlib.image.AxesImage at 0x113c92ba8>
In [6]:
filters = np.load('filters.npy')
for f in filters:
    plt.figure(); plt.imshow(f)
In [7]:
from scipy.signal import convolve2d
In [8]:
for f in filters:
    out = convolve2d(img, f, mode='same')
    plt.figure(); plt.imshow(out, cmap=plt.get_cmap('gray'))
In [11]:
dog = filters[1]-filters[2]
plt.figure(); plt.imshow(dog)
Out[11]:
<matplotlib.image.AxesImage at 0x1c161c8860>
In [12]:
plt.figure(); plt.plot(dog[27,:])
Out[12]:
[<matplotlib.lines.Line2D at 0x113fcc630>]
In [13]:
out = convolve2d(img, dog, mode='same')
plt.figure(); plt.imshow(out, cmap = plt.get_cmap('gray'))
Out[13]:
<matplotlib.image.AxesImage at 0x113d882b0>
In [14]:
dog = filters[0]-filters[1]
out = convolve2d(img, dog, mode='same')
plt.figure(); plt.imshow(out, cmap = plt.get_cmap('gray'))
Out[14]:
<matplotlib.image.AxesImage at 0x1c162be080>
In [ ]: