%matplotlib inline
from skimage import feature
from skimage import data
from skimage import transform
import matplotlib.pyplot as plt
image = data.chelsea()
def shift(xy):
xy[:, 1] -= 30
return xy
image_shifted = transform.warp(image, inverse_map=shift)
f, (ax0, ax1) = plt.subplots(1, 2)
ax0.imshow(image)
ax1.imshow(image_shifted)
<matplotlib.image.AxesImage at 0x5fc03d0>
out = feature.match_template(image, image_shifted, pad_input=True)
import numpy as np
np.array(image.shape)//2. - np.unravel_index(out.argmax(), image.shape)
array([ 30., 0., 0.])