Files
scikit-image/doc/examples/plot_censure.py
T
2013-11-30 18:25:56 +01:00

42 lines
1.0 KiB
Python

"""
========================
CenSurE feature detector
========================
The CenSurE feature detector is a scale-invariant center-surround detectors
(CenSurE) that claims to outperform other detectors and is capable of real-time
implementation.
"""
from skimage import data
from skimage import transform as tf
from skimage.feature import CenSurE
from skimage.color import rgb2gray
import matplotlib.pyplot as plt
img1 = rgb2gray(data.lena())
tform = tf.AffineTransform(scale=(1.5, 1.5), rotation=0.5,
translation=(150, -200))
img2 = tf.warp(img1, tform)
detector = CenSurE()
keypoints1, scales1 = detector.detect(img1)
keypoints2, scales2 = detector.detect(img2)
fig, ax = plt.subplots(nrows=1, ncols=2)
plt.gray()
ax[0].imshow(img1)
ax[0].axis('off')
ax[0].scatter(keypoints1[:, 1], keypoints1[:, 0], 2 ** scales1,
facecolors='none', edgecolors='r')
ax[1].imshow(img2)
ax[1].axis('off')
ax[1].scatter(keypoints2[:, 1], keypoints2[:, 0], 2 ** scales2,
facecolors='none', edgecolors='r')
plt.show()