Детектор движения объектов

Ответить
alexander756

Activity
professional
professional
Сообщения: 301
Зарегистрирован: 12 июн 2008, 19:56
Награды: 1
Версия LabVIEW: 8.6; 2009
Откуда: Montreal
Контактная информация:

Детектор движения объектов

Сообщение alexander756 »

Как определить в какую сторону проиходит движение объектов перед камерой ? Я пробовал использовать IMAQ LineProfile и определял в какую сторону сместился минимум, но это не всегда работает т.к. (если объекты движутся слева на право и минимум смещается вправо относительно предыдущего положения, то иногда появляется еще меньшее значение слева и сигнал что движение справа налево. Может кто может подсказать (аллгоритм) как сделать детектор движения объектов с определением в какую сторону?
Аватара пользователя
Forward

Activity Tutorials Black
professional
professional
Сообщения: 337
Зарегистрирован: 03 мар 2008, 12:41
Награды: 3
Версия LabVIEW: 2010
Откуда: Кишинев
Контактная информация:

Re: детектор движения объектов

Сообщение Forward »

К сожалению, никогда этим не занимался, так что конкретно не скажу.
Но одним LineProfile тут не отделаешься. Прежде всего тебе нужно путем различных фильтраций выделить изображение, которое ты отслеживаешь (в простейшем случае - все черное, твое изображение белое пятно). Ну а далее уже ищешь центр масс этого пятна например.
Насколько я помню при установки Vision модуля появляется много примеров, в которых показано как выделять изображения. Посмотри туда.
Аватара пользователя
mzu2006

Professionalism Tutorials Black
doctor
doctor
Сообщения: 2456
Зарегистрирован: 16 авг 2008, 02:12
Награды: 3
Версия LabVIEW: 7.1 10 11 12
Откуда: St-Petersburg (RU), Phila, Boston, Washington DC
Контактная информация:

Re: детектор движения объектов

Сообщение mzu2006 »

alexander756,
1. выделить фон, вычесть его (или иначе удалить)
2. считать центр масс своего объекта.
2а. Либо считать корреляцию последовательных изображений, тогда (x,y) максимума в корреляционной картинке - (x,y) вектора перемещения.
2б. Если перемещение минимальное - то сделать из камеры квадратичный детектор, разбив её на 4 ROI.
alexander756

Activity
professional
professional
Сообщения: 301
Зарегистрирован: 12 июн 2008, 19:56
Награды: 1
Версия LabVIEW: 8.6; 2009
Откуда: Montreal
Контактная информация:

Re: детектор движения объектов

Сообщение alexander756 »

У меня это либо текст либо картинки либо то и другое вместе и всегда изображение черно-белое, и это все движется быстро. Я еще попробую преобразовать изображение в цифровой график (0:1) и потом определять смещение границ белое-черное
Аватара пользователя
Eugen Graf

Activity Professionalism Silver Black
guru
guru
Сообщения: 6502
Зарегистрирован: 13 ноя 2007, 02:20
Награды: 4
Версия LabVIEW: 2009
Откуда: Saarbrücken
Контактная информация:

Re: детектор движения объектов

Сообщение Eugen Graf »

А можно увидеть пример картинки? Это какой нибудь типографический станок с видеонаблюдением?
Аватара пользователя
mzu2006

Professionalism Tutorials Black
doctor
doctor
Сообщения: 2456
Зарегистрирован: 16 авг 2008, 02:12
Награды: 3
Версия LabVIEW: 7.1 10 11 12
Откуда: St-Petersburg (RU), Phila, Boston, Washington DC
Контактная информация:

Re: детектор движения объектов

Сообщение mzu2006 »

eg писал(а):пример картинки
да, хотелось бы увидеть. Предлагаю alexander756 покрутить её в Vision Assistant либо в JImage (бывш. NIH Image)
alexander756 писал(а):Я еще попробую преобразовать изображение в цифровой график (0:1) и потом определять смещение границ белое-черное
имеет смысл если нет полутонов и только при предварительно проведённой нормализации освещённости
alexander756

Activity
professional
professional
Сообщения: 301
Зарегистрирован: 12 июн 2008, 19:56
Награды: 1
Версия LabVIEW: 8.6; 2009
Откуда: Montreal
Контактная информация:

Re: детектор движения объектов

Сообщение alexander756 »

eg писал(а):А можно увидеть пример картинки? Это какой нибудь типографический станок с видеонаблюдением?
Это типографический станок и хочется установить видеокамеру чтобы отслеживать движение бумаги и в некоторых случаях останавливать станок.
Аватара пользователя
Eugen Graf

Activity Professionalism Silver Black
guru
guru
Сообщения: 6502
Зарегистрирован: 13 ноя 2007, 02:20
Награды: 4
Версия LabVIEW: 2009
Откуда: Saarbrücken
Контактная информация:

Re: детектор движения объектов

Сообщение Eugen Graf »

Так тебя больше интересует смещение влево вправо линии с бумагой?

Кстати эта проблема на самом деле не тривиальная, знаю непонаслышке. Если вал с огромным диаметром сдвигается хоть на градус, вся линия улетает и остановка линии длится из за несущего момета очень долго. Бумаги уходит огого...
Наша фирма разработала для этого систему синхронизации валов - т.е. калибрация направлений валов друг к другу. Но к теме это имеет малое отношение, видеонаблюдение требуется для раннего распознавания такого случая.
Аватара пользователя
mzu2006

Professionalism Tutorials Black
doctor
doctor
Сообщения: 2456
Зарегистрирован: 16 авг 2008, 02:12
Награды: 3
Версия LabVIEW: 7.1 10 11 12
Откуда: St-Petersburg (RU), Phila, Boston, Washington DC
Контактная информация:

Re: детектор движения объектов

Сообщение mzu2006 »

eg писал(а):Если вал с огромным диаметром сдвигается хоть на градус
Я предложил бы нанести специальную маркировку на вал (не исключено сто она там уже есть) или
если речь идёт о действительно микроскопических смещениях (микроны) - какой-нить интерферометр ...

alexander756 покажи картинку
alexander756

Activity
professional
professional
Сообщения: 301
Зарегистрирован: 12 июн 2008, 19:56
Награды: 1
Версия LabVIEW: 8.6; 2009
Откуда: Montreal
Контактная информация:

Re: детектор движения объектов

Сообщение alexander756 »

mzu2006 писал(а): alexander756 покажи картинку

Картинка простая, перед камерой движется бумага с текстом и рисунками
Аватара пользователя
mzu2006

Professionalism Tutorials Black
doctor
doctor
Сообщения: 2456
Зарегистрирован: 16 авг 2008, 02:12
Награды: 3
Версия LabVIEW: 7.1 10 11 12
Откуда: St-Petersburg (RU), Phila, Boston, Washington DC
Контактная информация:

Re: детектор движения объектов

Сообщение mzu2006 »

alexander756 писал(а): Картинка простая, перед камерой движется бумага с текстом и рисунками
Надо посмотреть на гистограмму, освещённость, на характерные контуры итд итп. Что-то определённое советовать без
картинки я не берусь
alexander756

Activity
professional
professional
Сообщения: 301
Зарегистрирован: 12 июн 2008, 19:56
Награды: 1
Версия LabVIEW: 8.6; 2009
Откуда: Montreal
Контактная информация:

Re: детектор движения объектов

Сообщение alexander756 »

Я уже разобрался с тем как определять в какую сторону движется бумага с текстом и картинками. Я получаю два кадра, затем на первом кадре сохраняю какую-то область как template а на втором кадре ищу его и затем сравниваю координаты, но если бумага движется очень быстро, то возникают проблемы, так как нет ничего общего между двумя кадрами.
Аватара пользователя
mzu2006

Professionalism Tutorials Black
doctor
doctor
Сообщения: 2456
Зарегистрирован: 16 авг 2008, 02:12
Награды: 3
Версия LabVIEW: 7.1 10 11 12
Откуда: St-Petersburg (RU), Phila, Boston, Washington DC
Контактная информация:

Re: детектор движения объектов

Сообщение mzu2006 »

alexander756 писал(а):Я получаю два кадра, затем на первом кадре сохраняю какую-то область как template а на втором кадре ищу его и затем сравниваю координаты
Т.е. реально считается cross-correlation.
alexander756 писал(а):нет ничего общего между двумя кадрами
Если действительно нет ничего общего - то никак и не определить :)
Может камеру побыстрее взять (если освещённость позволяет, конечно).
Аватара пользователя
Eugen Graf

Activity Professionalism Silver Black
guru
guru
Сообщения: 6502
Зарегистрирован: 13 ноя 2007, 02:20
Награды: 4
Версия LabVIEW: 2009
Откуда: Saarbrücken
Контактная информация:

Re: детектор движения объектов

Сообщение Eugen Graf »

А на самом деле mzu2006 предложил отличный вариант. Разместить на вале разметку и определить её в программе. Как только разметка исчезает останавливать станок. Очень логично и легко выполнимо.
Ответить

Вернуться в «Vision / IMAQ»