%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) 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)