На матлаб не смотрим, расписал максимально просто, мне нужно больше понять алгоритм.
Самое краткое описание найти максимально похожий массив в другом массиве.
Задача есть 2 изображения, 1 из них является куском второго (может и не являться), необходимо найти координаты где более малое изображение похоже больше всего в большом.
Сравнивать изображения решил взаимной ковариационной функцией, где f изображения, N ширины изображении, M высоты
Первая проблема появившаяся в этой формуле это суммы, изображения имеют различные длины и высоты (2 меньше 1 всегда). Так же умножая светлые пиксели (255) будет чаще всего максимум, а черные (0) минимум, тоесть новый созданный массив не является картой похожести если можно это так назвать.
1 проблема была решена поиском суммы произведении пикселей наименьшего изображения с сдвигом с изображением большего.
for i = 1:N1
for j = 1:M1
for i1 = 1:N2
for j1 = 1:M2
B(i, j) = B(i, j) + f1(i + i1, j + j1) * f2(i1, j1);
end
end
end
end
Может кто поможет разобраться и пояснит где я ошибаюсь