NumPy / SciPy: переместите маску на изображение и проверьте равенство - PullRequest
6 голосов
/ 01 июня 2011

Я пытаюсь выполнить обработку изображений, используя NumPy и scipy .У меня есть шаблонное изображение, соответствующее фону, и я хочу выяснить все места, где оно встречается во входном изображении, и установить соответствующие позиции массива в выводе на 1, иначе установить их на 0. Как я могу это сделать?

1 Ответ

3 голосов
/ 01 июня 2011

Вы можете использовать scipy.ndimage.correlate, чтобы сопоставить ваш шаблон с изображением.Тогда ищите яркие пятна, которые дадут вам ваши спички.Пример:

import scipy.ndimage
from numpy import mean, std

# a, b contain image and template in numpy arrays
correlation = scipy.ndimage.correlate(a, b)
matches = (correlation-mean(correlation)) > 5*std(correlation) # tune depending on level of noise
...