示例#1
0
import sift
from PIL import Image
import numpy as np
from pylab import *
import imtools

close('all')
imname = 'lena.png'
im1 = np.array(Image.open(imname).convert('L'))
im2 = np.array(Image.open(imname).convert('L'))
sift.process_image(imname,'lena1.sift')
l1,d1 = sift.read_features_from_file('lena1.sift')
figure()
gray()
sift.plot_features(im1,l1,circle=True)
show()


#########################
figure()
sift.process_image(imname,'lena2.sift')
l2,d2 = sift.read_features_from_file('lena2.sift')


print 'strarting matching'
matches = sift.match_twosided(d1,d2)

gray()
imtools.plot_matches(im1,im2,l1, l2, matches)
show()
示例#2
0

im = np.array(Image.open('lena.png').convert('L'))
harrisim = imtools.compute_harris_response(im)
filtered_coords = imtools.get_harris_points(harrisim,6,threshold = 0.05)
imtools.plot_harris_points(im, filtered_coords)


## matching
figure()
wid = 5
im1 = np.array(Image.open('lena.png').convert('L'))
im2 = np.array(Image.open('lena.png').convert('L'))


harrisim = imtools.compute_harris_response(im1,5)
filtered_coords1 = imtools.get_harris_points(harrisim,wid+1)
d1 = imtools.get_descriptors(im1,filtered_coords1,wid)

harrisim = imtools.compute_harris_response(im2,5)
filtered_coords2 = imtools.get_harris_points(harrisim,wid+1)
d2 = imtools.get_descriptors(im2,filtered_coords2,wid)

print 'strarting matching'
matches = imtools.match_twosided(d1,d2)

gray()
imtools.plot_matches(im1,im2,filtered_coords1, filtered_coords2, matches[:100])
show()