Как реализовать оверлей на захватываемое видеоизображение

Ответить
LabYURK
interested
interested
Сообщения: 4
Зарегистрирован: 24 мар 2011, 21:28
Версия LabVIEW: 2010
Контактная информация:

Как реализовать оверлей на захватываемое видеоизображение

Сообщение LabYURK »

На захватываемое средствами IMAQdx в объект IMAQImage (создаваемый IMAQ Create) и отображаемое в Vision\Image Display видеоизображение необходимо оверлеить множество различных меток, надписей и т.д. Содержание планирующегося оверлея тоже меняется во времени и должно переписываться время от времени. Использование Overlay VIs имеет тот изъян, что каждый новый захваченный фрэйм обнуляет в соотв. области памяти весь созданный ранее оверлей - если я правильно понимаю. В результате весь многокомпонентный оверлей надо постоянно, как минимум с частотой захвата, заново перезаливать. Но даже в этом случае он периодически (не всегда) начинает противно мигать на экране. Короче - не простой способ.
Вопрос - можно ли каким-то образом захватить фрейм и при этом не затереть оверлей предыдущего фрейма?
Есть ли другие способы реализации многокомпонентного динамического оверлея?
Спасибо.
Аватара пользователя
mark
beginner
beginner
Сообщения: 39
Зарегистрирован: 18 ноя 2010, 21:35
Версия LabVIEW: 2015

Re: Как реализовать оверлей на захватываемое видеоизображени

Сообщение mark »

LabYURK,
Вопрос - можно ли каким-то образом захватить фрейм и при этом не затереть оверлей предыдущего фрейма?
Да, конечно. Обычно в своих проектах я делаю так - захваченое изображение хранится в памяти и никакие функции overlay к нему не применяются. Я копирую захваченое изображение в другое изображение и уже для него делаю overlay такой, какой мне хочется.

Если есть желание один раз нарисовать overlay и всегда его накладывать без изменений, то можно один раз наложить все элементы на отдельное изображение, которое больше не обновлять, и использовать его как Imgage Src в IMAQ Copy Overlay для каждого вновь полученного.
LabYURK
interested
interested
Сообщения: 4
Зарегистрирован: 24 мар 2011, 21:28
Версия LabVIEW: 2010
Контактная информация:

Re: Как реализовать оверлей на захватываемое видеоизображени

Сообщение LabYURK »

mark,
первое предложение не подойдет, т.к. мне необходимо реализовать просмотр изображения и соотв. оверлея в реалтайме.
... можно один раз наложить все элементы на отдельное изображение, которое больше не обновлять, и использовать его как Imgage Src в IMAQ Copy Overlay для каждого вновь полученного.
о, вот это хорошая мысль, спасибище. Раз уж не избежать копирование оверлея в каждый захватываемый фрейм десятки раз в секунду, то по крайней мере сам код таким образом можно сделать простым и красивым. Теперь и избавиться от миганий оверлея просто - обновлять Image Display после копирования оверлея.
Ответить

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