Как найти количество пикселей, на которое сдвинулось изображение?

Я пытаюсь рассчитать, насколько объект сместился на каждом последующем изображении, снятом с стационарной камеры. То, что мы тестируем здесь, — это повторяемость нашей установки, чтобы каждый раз размещать объект в одном и том же месте.

В центре рассматриваемого объекта находится штамп простой формы (см. ниже). Камера имеет обзор всего в несколько квадратных миллиметров (~ 25). На изображении могут быть и другие артефакты, которые нужно будет убрать, но все, что я могу сейчас показать, — это простой рисунок.

Шаблон

То, что я пытаюсь рассчитать, - это смещение пересечения линий на каждом изображении по сравнению с предыдущим. На картинке ниже красные линии обозначают место пересечения линий на втором изображении, т.е. как далеко они продвинулись.

Проблема

Мой вопрос: используя библиотеку С# для распознавания изображений, предпочтительно EmguCV, как я могу рассчитать размеры зеленого прямоугольника (смещение)? Я следил за несколькими учебными пособиями Emgu, и благодаря хитрым преобразованиям программное обеспечение может обнаружить только две линии, но я не знаю, как добраться до места их пересечения, поскольку библиотека создает более 500 мини-линий вместо 2 длинных.

Любая помощь, идеи и предложения приветствуются. Спасибо!


person Pudpuduk    schedule 03.08.2010    source источник


Ответы (2)


В качестве примечания: если вы много крутите пиксели, вы можете серьезно подумать об использовании атрибута «небезопасно» — это не позволит среде выполнения проверять каждый подписанный доступ к массиву пикселей, что даст вам обратно в исходный диапазон производительности - иначе ваши алгоритмы будут работать очень slooowwwwwwllllllyyyyyy :-)

person Mark Mullin    schedule 04.08.2010
comment
Я надеюсь избежать переписывания вещей самостоятельно, поскольку я уверен, что то, что я пытаюсь сделать, возможно с EmguCV или другой библиотекой для обработки изображений. Но я буду иметь это в виду, если я пойду таким путем. Спасибо - person Pudpuduk; 04.08.2010

Вам следует изучить алгоритмы «отслеживания изображений», такие как, например, алгоритм среднего сдвига: http://en.wikipedia.org/wiki/Mean-shift.

person Protector one    schedule 04.08.2010