2009-10-05 11 views
1

Fondamentalement, je vais utiliser la méthode Autocorrélation pour essayer de trouver des régions clonées dans une image.Vecteurs d'autocorrélation et de décalage

C'est ce que je l'ai fait dans Matlab

i = imread ('D: \ image.jpg') I = rgb2gray (i); imshow (I); f = fspecial ('LOG'); h = imfiltre (I, f); x = xcorr2 (double (h), double (h)); imagesc (x); figure (gcf)

de charger une image, de la convertir en échelle de gris, d'appliquer un filtre passe-haut et d'effectuer une autocorrélation.

image originale http: // i38.tinypic.com/2u7ojdz.jpg

Après autocorrelation http: // i38.tinypic.com/2z3nh9w.jpg

est D'accord ici la question. Je voudrais trouver le vecteur de décalage entre le plus gros point au milieu et le petit point blanc en haut. J'avais une idée en tête maintenant j'ai l'impression que ça ne marche plus.

Des conseils/idées sur la façon dont ils seraient atteints (dans le calcul du vecteur de décalage)?

Je suis un peu nouveau à ce traitement toute image/chose Matlab, de sorte que toute aide sera appréciée

Répondre

1

par exemple convertir au format HSB utiliser max pour trouver le point le plus lumineux de chaque rangée, puis faire une détection de pointe pour trouver les extrema locaux. Cela vous donnera les coordonnées de chacun des deux points d'intérêt dans votre image. De ces coordonnées trouver la fonction delta est facile.