IMAQ Shape Match Tool

Ответить
Лариса
interested
interested
Сообщения: 8
Зарегистрирован: 10 дек 2011, 19:10
Версия LabVIEW: 8.5
Контактная информация:

IMAQ Shape Match Tool

Сообщение Лариса »

Уважаемые Знатоки LabView!
Я начинающий пользователь. Пытаюсь самостоятельно освоить способы обнаружения объектов. Столкнулась с тем, что стандартный пример с сайта NI.com создан в LV 5.0 и не открывается в моей 10-й версии. Больше нигде примеров нет.
С помощью примера из книги Вильзитера Ю.В. и др. "Обработка и анализ цифровых цифровых изображений" попыталась создать простейшу программу, но почему-то образцы не обнаруживаются, а изображения выводятся просто в виде черного фона.
Буду очень благодарна за объяснения ошибок и, если возможно, за работающий образец программы.
Вложения
Поиск образца.vi
(44.18 КБ) 296 скачиваний
Лариса
interested
interested
Сообщения: 8
Зарегистрирован: 10 дек 2011, 19:10
Версия LabVIEW: 8.5
Контактная информация:

Re: IMAQ Shape Match Tool

Сообщение Лариса »

Прилагаю файлы, служащие образцом поиска и, соответственно, местом поиска. (в оригинале они имеют расширение .bmp, но, т.к. прилагать такие файлы нельзя, показываю их с расширением .jpg).
Вложения
original.jpg
shape.jpg
AndreyDmitriev

Activity Professionalism Tutorials Gold Black
VIP
VIP
Сообщения: 1327
Зарегистрирован: 03 фев 2010, 00:42
Награды: 6
Версия LabVIEW: 6.1 - 2024
Откуда: Германия
Благодарил (а): 1 раз
Поблагодарили: 37 раз
Контактная информация:

Re: IMAQ Shape Match Tool

Сообщение AndreyDmitriev »

Threshold надо выставлять чуть иначе, например 0...200, ну и Tolerance увеличить

Ну как-то вот так:
Вложения
shapematch.png
screenshot.png
Лариса
interested
interested
Сообщения: 8
Зарегистрирован: 10 дек 2011, 19:10
Версия LabVIEW: 8.5
Контактная информация:

Re: IMAQ Shape Match Tool

Сообщение Лариса »

Огромное спасибо за помощь!
Лариса
interested
interested
Сообщения: 8
Зарегистрирован: 10 дек 2011, 19:10
Версия LabVIEW: 8.5
Контактная информация:

Re: IMAQ Shape Match Tool

Сообщение Лариса »

Еще раз хочу поблагодарить за созданную программу, она работает замечательно. Но у меня возник еще вопрос.
Если изображение получать из 8-битного файла, то проблем нет. Когда я попыталась подключить камеру для захвата изображения, то, если напрямую связывать Image Out камеры и Image блока Threshold, то появляется сообщение о неверном типе файла.
Если поступать так, как на прилагаемом рисунке, то ошибок нет, но файл с камеры идет 32-битным, что приводит к ошибкам поиска образца в дальнейшем.
Подскажите, пожалуйста, есть ли выход из этой ситуации - возможно, существует инструмент, преобразующий формат файла до нужного типа?
Вложения
Захват с камеры.jpg
Аватара пользователя
IvanLis

Activity Professionalism Tutorials Gold Man of the year 2012
Автор
guru
guru
Сообщения: 5461
Зарегистрирован: 02 дек 2009, 17:44
Награды: 7
Версия LabVIEW: 2015, 2016
Откуда: СССР
Благодарил (а): 27 раз
Поблагодарили: 86 раз

Re: IMAQ Shape Match Tool

Сообщение IvanLis »

Я не помню как называется, посмотреть негде.
Там есть функции преобразования типов, Вам нужно преобразовать 32 -> 8 bit
А уже после этого обрабатывать, как раньше.
AndreyDmitriev

Activity Professionalism Tutorials Gold Black
VIP
VIP
Сообщения: 1327
Зарегистрирован: 03 фев 2010, 00:42
Награды: 6
Версия LabVIEW: 6.1 - 2024
Откуда: Германия
Благодарил (а): 1 раз
Поблагодарили: 37 раз
Контактная информация:

Re: IMAQ Shape Match Tool

Сообщение AndreyDmitriev »

Лариса писал(а):Если поступать так, как на прилагаемом рисунке, то ошибок нет, но файл с камеры идет 32-битным, что приводит к ошибкам поиска образца в дальнейшем.
Подскажите, пожалуйста, есть ли выход из этой ситуации - возможно, существует инструмент, преобразующий формат файла до нужного типа?
Надо использовать IMAQ ExtractSingleColorPlane. Использовать можно двумя способами - либо в режиме Intensity - это стандартный способ преобразования цветного в чёрно-белое, либо можно взять только одну из цветовых компонент - скажем, если в исходной цветной картинке преобладает красный цвет, то можно взять компоненту Red - тогда контраст будет повыше.
Лариса
interested
interested
Сообщения: 8
Зарегистрирован: 10 дек 2011, 19:10
Версия LabVIEW: 8.5
Контактная информация:

Re: IMAQ Shape Match Tool

Сообщение Лариса »

Огромное спасибо всем, кто помог мне решить проблему. Преобразование получилось.
Сейчас буду работать со светом, т.к. получить и распознать картинку с камеры можно , насколько сегодня я поняла, только при идеально ровном размещении страницы и ровном освещении. В противном случае программа фиксирует все малейшие перепады интенсивности.
AndreyDmitriev

Activity Professionalism Tutorials Gold Black
VIP
VIP
Сообщения: 1327
Зарегистрирован: 03 фев 2010, 00:42
Награды: 6
Версия LabVIEW: 6.1 - 2024
Откуда: Германия
Благодарил (а): 1 раз
Поблагодарили: 37 раз
Контактная информация:

Re: IMAQ Shape Match Tool

Сообщение AndreyDmitriev »

Лариса писал(а):Огромное спасибо всем, кто помог мне решить проблему. Преобразование получилось.
Сейчас буду работать со светом, т.к. получить и распознать картинку с камеры можно , насколько сегодня я поняла, только при идеально ровном размещении страницы и ровном освещении. В противном случае программа фиксирует все малейшие перепады интенсивности.
Конечно, это недостаток функции Threshold с фиксированным порогом. Она хорошо работает только в условиях, близких к идеальным.
Обычно есть несколько вариантов. Можно использовать динамический Threshold, в котором уровень отсечки плавает в зависимости от гистограммы изображения. Можно пытаться применить Threshold как к целой картинке (если освещение равномерное, но яркость меняется от картинки к картинке), так и разбивая изображения на небольшие регионы (это если освещение неравномерное). Иногда применяют такой трюк - делают медианную фильтрацию с довольно большим ядром (в некоторых случаях и Low Pass можно обойтись), а потом вычитают фильтрованную картинку из исходной. В этом случае в результате вычитания останется чистый объект на почти чёрном фоне - можно применять Threshold с фиксированным порогом. Либо можно кардинально сменить подход и воспользоваться Pattern Matching - там не требуется наличия бинарной картинки и он не так чувствителен к перепадам освещения (ну, в разумных пределах, естественно).
Где-то так.
Андрей.
Лариса
interested
interested
Сообщения: 8
Зарегистрирован: 10 дек 2011, 19:10
Версия LabVIEW: 8.5
Контактная информация:

Re: IMAQ Shape Match Tool

Сообщение Лариса »

Спасибо за квалифицированный совет.
Лариса
interested
interested
Сообщения: 8
Зарегистрирован: 10 дек 2011, 19:10
Версия LabVIEW: 8.5
Контактная информация:

Re: IMAQ Shape Match Tool

Сообщение Лариса »

Следующий вопрос не совсем по теме, но он как бы продолжение предыдущего.
По Вашему совету попыталась фрагмент программы переписать с использованием Pattern Matching. Выдается ошибка: неверный дескриптор ROI.
Подскажите, пожалуйста, что я делаю неверно?
Если программа заработает, то, если будет интересно, я смогу выложить полученные результаты изображений, обработанные двумя обсуждаемыми здесь методами.
Вложения
Pattern.png
AndreyDmitriev

Activity Professionalism Tutorials Gold Black
VIP
VIP
Сообщения: 1327
Зарегистрирован: 03 фев 2010, 00:42
Награды: 6
Версия LabVIEW: 6.1 - 2024
Откуда: Германия
Благодарил (а): 1 раз
Поблагодарили: 37 раз
Контактная информация:

Re: IMAQ Shape Match Tool

Сообщение AndreyDmitriev »

Лариса писал(а):Следующий вопрос не совсем по теме, но он как бы продолжение предыдущего.
По Вашему совету попыталась фрагмент программы переписать с использованием Pattern Matching. Выдается ошибка: неверный дескриптор ROI.
Подскажите, пожалуйста, что я делаю неверно?
Если программа заработает, то, если будет интересно, я смогу выложить полученные результаты изображений, обработанные двумя обсуждаемыми здесь методами.
А ROI там вообще говоря не нужен. Если же он требуется, то его обычно берут прямо с контрола картинки, либо генерируют по координатам, как-то так:
ROI.png
Но проблема в другом. Темплейт - он должен быть обучен. Поэтому либо надо использовать IMAQ Learn Pattern 2, либо приготовить его, скажем в Vision Assistant, сохранить в PNG, и открывать через IMAQ Read Image and Vision Info (Сохранённые темплейты нельзя открывать обычной IMAQ Read Image, потому что теряется внутренняя служебная информация)

Посмотрите пример в "LabVIEW\examples\Vision\2. Functions\Pattern Matching\Pattern Matching Example.llb"
Лариса
interested
interested
Сообщения: 8
Зарегистрирован: 10 дек 2011, 19:10
Версия LabVIEW: 8.5
Контактная информация:

Re: IMAQ Shape Match Tool

Сообщение Лариса »

Спасибо, буду работать.
Ответить
  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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