Автокорреляция и сдвиг векторов - PullRequest
1 голос
/ 05 октября 2009

В основном я буду использовать метод автокорреляции, чтобы попытаться найти клонированные области в изображении.

Это то, что я сделал в MATLAB

i = imread ('D: \ image.jpg') I = rgb2gray (i); imshow (I); f = fspecial ('LOG'); h = фильтр (I, f); x = xcorr2 (double (h), double (h)); imagesc (х); фигура (ГКМ)

в основном загружает изображение, изменяет его на оттенки серого, применяет к нему фильтр верхних частот и выполняет автокорреляцию.

Исходное изображение http: // i38.tinypic.com/2u7ojdz.jpg

после автокорреляции http: // i38.tinypic.com/2z3nh9w.jpg

Хорошо, здесь возникает вопрос. Я хотел бы найти вектор смещения между самой большой точкой в ​​середине и маленькой белой точкой вверху. У меня была идея, и теперь я чувствую, что она больше не работает.

Какие-либо советы / идеи о том, как они будут достигнуты (при расчете вектора сдвига)?

Я немного новичок во всей этой обработке изображений / matlab, так что любая помощь будет оценена по достоинству

1 Ответ

1 голос
/ 19 декабря 2009

например. для преобразования в формат HSB используйте max, чтобы найти самую яркую точку в каждой строке, а затем выполните обнаружение пиков, чтобы найти локальные экстремумы. Это даст вам координаты каждой из двух точек интереса на вашем изображении. Из этих координат легко найти дельта-функцию.

...