2017-02-21 25 views
0

Я пытаюсь создать коалиционные последовательные изображения астрономического объекта, используя match_template from skiimage. Изображения - это число 500х500 и очень похоже. Единственное различие заключается в медленном вращении самого объекта (движение меньше пикселя между изображениями, я пытался увеличить разницу, сделав средний шаблон более 10 изображений, но это мало помогло, результат почти такой же). В результате я получаю только 1x1 массивmatch_template from skimage возвращает 1X1 область

In [22]: result 
    Out[22]: array([[ 0.98132336]], dtype=float32) 

Почему это происходит?

ответ

0

Ну, мне потребовалось некоторое время, но я понял, что происходит.
Проблема в том, что изображения слишком похожи друг на друга. Если изменение между изображениями является субпиксельным разрешением, этот конкретный код вернет только одно число, просто потому, что изображения соответствуют друг другу почти идеально.
Обходной путь, который я нашел, был основан на моем старом коде, написанном в IDL, где, используя преобразование Фурье, мне удалось вычислить величину сдвига, которую мне нужно использовать между изображениями последовательно, чтобы я мог совмещать их. Мне нужна была очень хорошая точность из-за анализа, который мне нужно сделать на изображениях.
Если вы столкнулись с той же проблемой, пришлите мне сообщение. Я с удовольствием поделюсь этим кодом. Вы можете использовать его, пока вы цитируете меня в своей статье.
Когда я публикую документ, я положу все коды, которые я использовал для анализа (включая этот) на GitHub. Это же условие применимо.