LabView IMAQ (Visual Assistant)

Делись идеей, получай поддержку и критику!
Ответить
Аватара пользователя
Cobb

Автор
beginner
beginner
Сообщения: 15
Зарегистрирован: 29 ноя 2013, 03:33
Награды: 2
Версия LabVIEW: 2012
Контактная информация:

LabView IMAQ (Visual Assistant)

Сообщение Cobb »

Здравствуйте, люди добрые!

Хочу поделиться с вами решением небольшой промышленной задачи, которой в недавнем прошлом озадачили меня и моих коллег.

Собственно, ТЗ (краткое):
1. С помощью оптических приборов происходит съемка микроструктуры материала (металлы, сплавы) до и после деформации.
2. Необходимо:
2.1. Оценить степень износа основных элементов, составляющих конструктивное исполнение системы (промышленная эксплуатация)
2.2. Оценить качество полученной продукции после пластической деформации
2.3. Произвести расчетно-проектировочные работы согласно п.п. 2.1. и п.п. 2.2
3. Передать/сохранить их(расчетные данные) для последующего анализа
--------------------------------
Скажу честно:
п.1 Olimpus_IPLEX SA -под рукой его нет:( А посему будем довольствоваться теми съемками микроструктуры, которые удалось добыть из Гугла
п.2 Заказанные методы расчета деформации не стану приводить ввиду их сложности для рядового пользователя
п.3 По факту планирую показать "кустарные" решения по интеграции следующего ПО:
- LabView+Oracle (клиент-сервер)
- LabView+Apache+Oracle (трехзвенная архитектура)
-------------------------------

В этой статье я решил убить сразу несколько зайцев. А именно:
-Дать небольшой обзор на NI IMAQ (Visual Assistant)
-Дать небольшой обзор на Database Connectivity Toolkit
-Показать базовые возможности :labview: в связке с другим ПО: Oracle, Apache

С небольшими примерами...

P.S. Решения и описание к ним буду выкладывать в последующих сообщениях...
P.P.S. Не судите строго... :thank:

Patch 1.0.1: п.2 -приведу пример, ибо в нем раскрываются многие возможности Visual Assistant
Последний раз редактировалось Cobb 19 дек 2013, 02:36, всего редактировалось 3 раза.
Аватара пользователя
Pavel Krivozubov

Activity Bronze
professor
professor
Сообщения: 4421
Зарегистрирован: 07 фев 2008, 16:39
Награды: 3
Версия LabVIEW: 7.0 - 2013
Откуда: г. Электросталь
Благодарил (а): 24 раза
Поблагодарили: 9 раз
Контактная информация:

Re: LabView IMAQ Oracle

Сообщение Pavel Krivozubov »

Спасибо большое, с нетерпением ждём продолжения!
Перенёс тему в раздел "Проекты", это более подходящий формат.
Аватара пользователя
Cobb

Автор
beginner
beginner
Сообщения: 15
Зарегистрирован: 29 ноя 2013, 03:33
Награды: 2
Версия LabVIEW: 2012
Контактная информация:

Re: LabView IMAQ Oracle

Сообщение Cobb »

Приветствую всех! :bye:

Прошу прощения-по долгу службы пришлось отсутствовать некоторое время. :cantbe:

Итак, приступим...

Задание:
По указанному выше ТЗ мы имеем изображения микроструктуры образцов до и после деформации (нагрузочных работ для частей механизмов, температурных и/или применения внешних знакопеременных нагрузок).
Нужно эти графические данные подготовить и обработать для нашего технологического анализа.
Для этого нам потребуются:
1. :labview: версии 7.1 и выше (я использую версию 12.0.1f2)
2. Модуль автоматизации СТЗ-NI Visual Assistant (IMAQ Vision 6.5 и выше)-я использую версию 2012
3. Базовые знания в теории построения графических объектов и их анализа

Исходные данные:
Кто мало знаком с LabView или только начинает знакомиться с этой промышленно-прикладной средой разработки-то я рекомендую ознакомиться с базовыми элементами и основами работы в этой ветке нашего замечательного форума: http://www.labviewportal.org/viewforum.php?f=21

Вступление:
В современном мире графическое представление может дать наиболее полный набор свойств и характеристик нужного нам объекта.
Будь то график, эпюра, гистограмма или даже фотографическая съемка.
Существует много различного программного обеспечения для работы с графическими данными. Диапазон применения зависит от поставленных задач.
В рамках поставленной задачи нам необходимо преобразовать картинку в цифры.
Так что никаких бабочек!(с) :nono:

Остановим свой выбор на NI Visual Assistant.

Visual Assistant (далее VA)-модуль LabView, предназначенный для автоматизации работ на ниве систем технического зрения, научных исследований и проектирования аналитического ПО.
Это программное средство позволяет не только варьировать и преобразовывать свойства графических объектов, но и проводить измерения, анализ и встраивать свои технические решения в автоматизированную систему. Возможность работы как со стационарными, так и с подвижными графическими данными, делает VA мощным инструментом для СТЗ и АСНИ в сфере распознавания образов.

На входе мы имеем изображение микроструктуры материала (в примере-металлическое изделие):
Изображение

Справка:
Изображение :
Микроструктура металла (от микро... и лат. structura — строение), строение металла, выявляемое с помощью микроскопа (оптического или электронного). Металлы и сплавы состоят из большого числа кристаллов неправильной формы (зёрен), чаще всего неразличимых невооружённым глазом. Зёрна имеют округлую или вытянутую форму, могут быть крупными либо мелкими и располагаться друг относительно друга в определённом порядке или случайно. Форма, размеры и взаимное расположение, а также ориентировка зёрен зависят от условий их образования.

Вот как раз распознаванием зерен и анализом их свойств мы и займемся.

Поскольку исходное изображение не дает нам возможности провести хоть какой нибудь приемлемый анализ, то нам необходимо провести обработку данных. А именно:
1. Выделить зерна материала на полученном изображении
2. Получить обработанное изображение с четким разделением материала от примесей
3. Создать программный модуль, решающий п.1 и п.2 для дальнейших исследований

Для выделения зерен предлагаю преобразовать входное изображение в бинарное.
Справка:
Изображение :
Бинаризация изображений -это перевод полноцветного или в градациях серого изображения в монохромное, где присутствуют только два типа пикселей (темные и светлые).

Я буду использовать пороговую бинаризацию в цветовой модели RGB (кубическое построение цветовоспроизведения).
Пороговая бинаризация работает со всем изображением, находя какую-то характеристику (порог), позволяющую разделить все изображение на 2 значения (чёрное и белое).
Порог определяется в Декартовой системе координат, где вместо XYZ выступают цвета R(Красный) G(зеленый) B (синий):
Изображение

Для реализации этого метода я использую:
-IMAQ Create-Выделяет в RAM временное место для изображения, которое будет обрабатываться
-IMAQ ReadFile -Открывает графический файл по указанному пути (BMP, TIFF, JPEG,PNG, AIPD)
-IMAQ Threshold-Применяет пороговую величину к изображению
-IMAQ Separation-Отделяет выделяемые частицы, особенно мелкие границы между ними (сегментация)
-IMAQ FillHole -Заполняет цветовые искажения внутри выделенной частицы изображения (так называемые "пиксельные дыры")
-IMAQ Particle Filter-Фильтр графических объектов на изображении, согласно измеренным значениям
-IMAQ Get Palette-Считывание цветовых настроек изображения (палитры)
-IMAQ WindDraw-Выводит изображение на экран
-IMAQ CastImage-Конвертирует изображение в указанный формат
-IMAQ WriteFile-Сохраняет изображение в указанном формате
-IMAQ Dispose-Освобождает RAM от сегмента памяти, выделенного под изображение
-IMAQ WindClose-Закрывает окно изображения (окончание работы с графикой в LabView)
-стандартные методы :labview:
(Описание встроенных :vi: можно получить на сайте NI)

Вот пример решения задачи (сделал простой :vi:):
Изображение

Панель определения порога выведена на пользовательский интерфейс (для более наглядной настройки):
Изображение

Далее оформляем наш :vi: как SUB :vi: , чтобы использовать его в дальнейшем:
Изображение

- Кто хочет-может представленный :vi: оформить как цикл/*.exe/*.dll и играться с настройками порога
- Можно адаптировать к любому режиму цветовоспроизведения
- Выложенный выше пример легко применяется к адаптированной бинаризации (если кому интересно-пишите)


"А что в итоге?"-спросите Вы....
"Знание!"- скажу я.... (с)

В итоге заявленного ТЗ мы получаем бинарное изображение:
Изображение

Которое можно анализировать...

Спасибо за внимание! Надеюсь кому нибудь пригодится...

З.Ы. Я не претендую на достижения и лавры, просто рассказываю как можно решить поставленные задачи самым простым и "кустарным" способом...
З.З.Ы. В следующем сообщении планирую рассказать, как применить математические методы анализа к полученному бинарному изображению...
З.З.З.Ы. А так же как считать это снова в цифры (IMAQ Edge Tool и прочее)...

Так получилось... :dntknw:

Patch 1.0.2 :D :
Добавил вложения:
1. :vi: из примера
2. SUB :vi: для дальнейшего построения алгоритма
3. Изображения микроструктуры до обработки и после (8 бит)
Вложения
VI пороговая бинаризация.vi
(26.59 КБ) 376 скачиваний
to_binary.vi
(34.87 КБ) 447 скачиваний
зерна.jpg
зернаBIN.png
Последний раз редактировалось Cobb 19 дек 2013, 02:40, всего редактировалось 3 раза.
Аватара пользователя
Cobb

Автор
beginner
beginner
Сообщения: 15
Зарегистрирован: 29 ноя 2013, 03:33
Награды: 2
Версия LabVIEW: 2012
Контактная информация:

Re: LabView IMAQ Oracle

Сообщение Cobb »

Если бы я знал как вложить файлы-я бы прикрепил к своему краткому обзору :think:
Аватара пользователя
Pavel Krivozubov

Activity Bronze
professor
professor
Сообщения: 4421
Зарегистрирован: 07 фев 2008, 16:39
Награды: 3
Версия LabVIEW: 7.0 - 2013
Откуда: г. Электросталь
Благодарил (а): 24 раза
Поблагодарили: 9 раз
Контактная информация:

Re: LabView IMAQ Oracle

Сообщение Pavel Krivozubov »

Супер!
Когда починим сайт, это первый материал на главную!
А файлы добавлять просто - внизу при создании сообщения есть кнопка "добавить вложения"
ESeid

Автор
advanced
advanced
Сообщения: 150
Зарегистрирован: 30 мар 2011, 22:41
Награды: 1
Версия LabVIEW: 8.2-2013
Контактная информация:

Re: LabView IMAQ Oracle

Сообщение ESeid »

Cobb, большое спасибо! Очень интересная тема, и что ценно - используются очень простые средства для достижения цели.
Pavel Krivozubov, если Вы не против, я тоже выложу что-нибудь из своего, но это - область биомедицинских исследований. Если она кому-то интересна.
Аватара пользователя
Cobb

Автор
beginner
beginner
Сообщения: 15
Зарегистрирован: 29 ноя 2013, 03:33
Награды: 2
Версия LabVIEW: 2012
Контактная информация:

Re: LabView IMAQ Oracle

Сообщение Cobb »

Добрый день! :bye:

Очень рад, что статья пришлась ко двору.
... и что ценно - используются очень простые средства для достижения цели.
Так в этом и весь смысл-дать людям представление о возможностях СТЗ.
Спектр решений такой же многогранный как и спектр задач.

Существует много критериев бинаризации изображений (в своем примере я использовал критерий Отсу-он прост, быстр и эффективен).

Вообще процесс обработки графики очень сильно зависит от качества исходных данных.
Можно применять пороговую бинаризацию в несколько этапов.

Если проводить несколько фильтраций, выделяя на каждом этапе "пиксельные дыры" внутри замкнутого контура обнаруженных объектов-то можно более точно рассчитать площадь зерна (в моем примере). Или рассчитать относительную долю примесей в металле. Оценить деформацию...etc...

На исходном изображении невооруженным глазом видны контуры зерен, а так же элементы примесей внутри них:
Изображение

Если поиграться с настройками порога (у меня по всем осям выставлено 104)-то можно более четко выделить их на бинарном изображении (в представленной схеме IMAQ Threshold и IMAQ Separation)

Я для наглядности не стал их выделять и сделал заполнение контуров (IMAQ FillHole).

Для более детальной обработки можно использовать адаптивный режим бинаризации, но тут существенно усложняется алгоритм и появляется необходимость обработки погрешностей.

З.Ы. Вечером добавлю файлы :vi: из указанного примера
Аватара пользователя
Pavel Krivozubov

Activity Bronze
professor
professor
Сообщения: 4421
Зарегистрирован: 07 фев 2008, 16:39
Награды: 3
Версия LabVIEW: 7.0 - 2013
Откуда: г. Электросталь
Благодарил (а): 24 раза
Поблагодарили: 9 раз
Контактная информация:

Re: LabView IMAQ Oracle

Сообщение Pavel Krivozubov »

Евгений разумеется выкладывайте!
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 126 раз
Контактная информация:

Re: LabView IMAQ Oracle

Сообщение dadreamer »

Всё-таки вместо радикала лучше загрузить картинки на форум и подправить верхние сообщения. А то сейчас размеры изображений великоваты, да и с хостингов могут удалить через некоторое время, если к картинке не было обращений.
Аватара пользователя
Cobb

Автор
beginner
beginner
Сообщения: 15
Зарегистрирован: 29 ноя 2013, 03:33
Награды: 2
Версия LabVIEW: 2012
Контактная информация:

Re: LabView IMAQ (Visual Assistant)

Сообщение Cobb »

Доброго времени суток! :bye:

Решил отделить мух от котлет -и разделить заявленное ТЗ на несколько тем, ибо сложно подать комплексный материал
А посему в этой теме буду вести рассказ по VA, а в других про сопряжение с Oracle и Apache

По моему скромному мнению каждая из озвученных тем требует пояснения и детализации... Так что корифеев форума прошу сильно не бить! :thank:
Аватара пользователя
Cobb

Автор
beginner
beginner
Сообщения: 15
Зарегистрирован: 29 ноя 2013, 03:33
Награды: 2
Версия LabVIEW: 2012
Контактная информация:

Re: LabView IMAQ (Visual Assistant)

Сообщение Cobb »

Приветствую Вас, люди добрые! :bye:

Предлагаю продолжить постигать возможности замечательного инструмента LabView IMAQ (Visual Assistant)

Вступление:
В предыдущей серии мы с Вами:
- Разобрали основные теоретические понятия, необходимые нам для решения поставленного ТЗ.
- Определили что такое бинарное изображение и как можно получить его из исходного фотоснимка.
- Подобрали необходимый нам набор программных компонент для обработки исходных данных.
- Создали :vi: и подготовили его для использования в дальнейшей разработке.
- Получили бинарное изображение, которое можем анализировать.

Нас окружает множество визуальных образов со своими определенными свойствами. И чтобы эти свойства определить и использовать в нужном русле-необходимо привести исходные данные к такому формату, который понимает техника на современном уровне развития. Для нас таким форматом является бинарное изображение, которое мы адаптировали под нашу задачу (см. предыдущие сообщения):
Изображение

"Но одно дело-найти кактус. Другое-сделать из него текилу!"(с)

Всем прекрасно известно, что анализ и обработка данных-дело не простое. В СТЗ-это куда более трудоемкий процесс, нежели чем получение графических данных.
В данном уроке мы с вами приступим к получению интересующей нас информации и автоматизации процесса расчета.

Поскольку реализация поставленного ТЗ имеет прикладное значение, то предлагаю создать алгоритм расчета характеристик пластической деформации и пользовательский интерфейс.

Для расчета изменения свойств микроструктуры воспользуемся методом профессора Георгия Александровича Смирнова-Аляева.
Подробно ознакомиться с описанием этого метода можно тут: http://delta-grup.ru/bibliot/2/1.htm

В расчетах мы используем теорию сопротивления материала пластическим деформациям, а именно свойство сохранение объема в процессе приложения внешней нагрузки.

Справка:
Изображение
Применяемые в промышленности металлы и сплавы имеют поликристаллическое строение.
При обработке давлением таких металлов происходит пластичecкая деформация отдельных зерен путем скольжения и двойникования и смещение их относительно друг друга. Деформация сопровождается раздроблением зерен и их удлинением в направлении наибольшего течения металла:

Изображение

Скажу честно-я давно уже отошел от промышленной автоматизации, так что мог нюансы позабыть. Если есть металлурги-то прошу поправить меня :thank:

Друзья, давайте составим список того, что мы имеем для анализа:
- Обработанное (бинарное изображение) +
- Метод аналитической обработки +
- Базовые знания определения геометрического места точек на плоскости (графики) +
- Программное решение -
Да, дела.... :dntknw:
"Пуля спела, что ей за дело, Такой у песенки конец. Похоже, друг попал На тот весёлый бал, Где пляшет сталь, поёт свинец. «" (с) из к/ф "Гардемарины" (великолепный фильм кстати :wink: )

Не стоит паниковать! :nono:

Начнем подбирать программные компоненты для решения поставленной задачи...
-Для подготовки инструментов анализа бинарного изображения я использую:
- IMAQ Create-Выделяет в RAM временное место для изображения, которое будет обрабатываться
- IMAQ WindMove-Определяет и устанавливает положение окна, в котором показывается изображение
- IMAQ WindToolsSelect-Считывает или назначает инструмент (геометрический объект), который используется для анализа текущего изображения
- IMAQ WindROIColor-Выбирает цвет для отображения контура интересующего нас сегмента в окне изображения. ROI (Region Of Interest — регион интересов — интересующая область изображения)
- IMAQ ReadFile -Открывает графический файл по указанному пути (BMP, TIFF, JPEG,PNG, AIPD)
- IMAQ Cast Image-Конвертирует изображение в указанный формат
- IMAQ WindDraw-Выводит изображение на экран
- IMAQ WindLastEvent-Возвращает тип последнего действия (и данные связанные с этим действием) в окне, где открывается изображение

Да, дамы и господа, в этом примере есть уже знакомые нам компоненты (по предыдущему уроку), так и новые-которые уже используются для аналитики графических данных.

Перед тем как перейти к коду :labview: снова дам небольшую справочку :rtfm:
Справка:
Изображение
На практике микроструктурный метод Смирнова-Аляева выглядит так:
1. На заданный участок исследуемой поверхности накладывается сетка-транспортир ( с градацией от 0 до 180 градусов/от 0 до 360 градусов), из центра которой через заданное (постоянное) число радиан откладывается луч, пересекающий определенное число зерен.

В чем соль:
-Ориентацию объекта на плоскости проще анализировать в полярной системе координат
-Можно оценить границы зерен с помощью радиус-вектора R и угла отклонения f
-С заданной частотой дискретизации(угол f) можно определить положение границы зерна (порогового значения на бинарном изображении) относительно заданного центра
-Можно определить длину радиус-вектора (линейное значение-удлинение/сужение зерна) относительно заданного центра

Соотношение Декартовой (изображение) и Полярной (аналитика свойств изображения) систем координат:
Изображение

Предлагаю перейти к исполняемому коду...
Создадим инструмент для анализа бинарного изображения:
Изображение

Пояснения:
-Поскольку в указанном выше методе используется радиус-вектор -то выбираем аналитическим инструментом отрезок (задает центр транспортира и начальную ориентацию на плоскости-IMAQ WindToolsSelect)
-Поскольку мы анализируем плоскость (и бинарное изображение), то для ROI указаны (255;255;0)-Декартова плоскость
-И проверяем был ли указан стартовый радиус-вектор, от которого ведется отсчет уже в Полярной системе координат (IMAQ WIndLastEvent)
-Если стартовый отрезок был указан на интересующем нас изображении, то можно переходить к расчету по указанному методу

Если оформить этот фрагмент кода как отдельный :vi: ( на скриншоте именно фрагмент)-то для пользователя мы получим начальное направление радиус-вектора R и нулевое значение угла отклонения f=0:
Изображение

Продолжение следует...
Вложения
r-f1.png
Аватара пользователя
Cobb

Автор
beginner
beginner
Сообщения: 15
Зарегистрирован: 29 ноя 2013, 03:33
Награды: 2
Версия LabVIEW: 2012
Контактная информация:

Re: LabView IMAQ (Visual Assistant)

Сообщение Cobb »

И снова здравствуйте! :bye:

Продолжаем изучать LabView IMAQ (Visual Assistant)

Спешу напомнить, что подробное описание указанных мною :vi: (да множества других) можно посмотреть в интернете, например тут: http://zone.ni.com

Итак...
Мы с вами задали начальное положение полярного угла и полярного радиуса. Теперь приступим к автоматизации нашего аналитического инструмента.

Думаете зря я вам рассказал про системы координат и их соотношение? Линии рисуем впустую? Да, Вы правы! :D
На самом деле мы дифференцируем нашу графическую систему. А именно:
1. Определяем изображение как ROI (Region Of Interest — регион интересов — интересующая область изображения)
2. Заданием координат отрезка мы выделяем сегмент внутри фотоснимка.
Наш отрезок-не что иное, как диагональ прямоугольника, которым мы и выделяем интересующую нас область:
Изображение
Шаг за шагом мы разбиваем наше изображение на участки для выявления интересующих нас свойств (с повышенной точностью).

И вот настал тот момент, когда от визуальной составляющей мы переходим к аналитической-получаем координаты нашего отрезка.

Для этого воспользуемся следующим :vi: :
-IMAQ WindGetROI-Возвращает описание выделенного изображения (координаты)

Фрагмент кода:
CalcROI.png
CalcROI.png (10.08 КБ) 15791 просмотр

Тут мы получаем данные нашего прямоугольника. Выделяем из него координаты начала и конца отрезка (с помощью Array Palette-набора инструментов для работы с массивами) и вычисляем длину отрезка.
Для вычисления используем IMAQ Point Distances

Но это только один отрезок, а нам нужно наложить сетку-транспортир, причем автоматически... :dntknw:

Скажу сразу в :labview: такого механизма нет... :shok:

Но мы то с вами не зря пришли на наш замечательный форум-мы пришли за знаниями.
Вот тут нам и пригодится полученная информация из предыдущего сообщения. Мы создадим свой механизм автоматического анализа.

Сначала научим систему выводить отрезки через нужный нам интервал относительно исходного радиус-вектора.
Будем смещать наш дискретный ROI (прямоугольник) относительно заданного центра в полярной системе координат.
Для этого применим следующий алгоритм (выводил и программировал сам... потому не шибко красиво, но работает :dntknw: ):
round.png
Множество линий привязки, множество блоков формул...
Задачей этой части кода является фиксация начальной точки координат и автоматический расчет положения каждого последующего отрезка.
Согласен, выглядит немного сумбурно, но если запускать в режиме подсветки (Higlight execution-пошаговое выполнение алгоритма)-будет понятно преобразование системы координат

Представленный выше фрагмент будет использован для каждого отрезка в нашей сетке, поэтому разумнее организовать цикл. Для более точного анализа я буду использовать диапазон 0-360 градусов с варьируемым шагом.

Тут у нас целое пространство для творчества....
Внутри цикла мы будем иcкусственно создавать ROI с описанием (блок Bundle by Name) и по созданному алгоритму отображать на нашем бинарном изображении лучи из заданного центра (блоки Формул и IMAQ Overlay Line).
Да, друзья, все это будет делать :vi: ! Доверьтесь мне и увидите какую красоту может творить Visual Assistant :super:

Хорошо...мы худо-бедно написали алгоритм автоматической визуализации процесса расчета... :dntknw:
Но что же сам расчет? А как же пороговая бинаризация? Границы зерен?
Вот тут мы создаем код, который определяет пороги в нашем бинарном изображении, рассчитывает расстояние между порогами и интегрирует наши ROI дабы получить величину изменения микроструктуры до деформации (кол-во исследуемых объектов задается пользователем):
edge.png
-IMAQ ROIProfile-Собирает информацию об интересующем нас сегменте изображения
-IMAQ Edge Tool-Определяет границы порогов на изображении и передает их координаты

В :labview: нет готового :vi: для визуального отображения границ объектов на изображении.... :dntknw:
Специально для нашего форума я набросал простенький визуализатор обработки порогов.

В данном блоке мы определяем расстояние между одноименными порогами.

И так на каждом шаге мы определяем средний радиус зерна. А после наложения Всей сетки-транспортира-средний радиус зерна в искомом изображении, а заодно и угол наибольшего изменения линейного удлинения...

Вышеуказанные алгоритмы применимы к изображению поверхности материала уже после деформации. Так же рассчитываются компоненты и происходит определение относительного смещения... :wink:

Послесловие
-Вот собственно и все, что я хотел рассказать в рамках данной темы...
-На самом деле возможности IMAQ практически безграничны. Вся соль в ТЗ и знании...
-В свое время я так и не нашел более-менее удобоваримого примера по комплексному IMAQ, а посему пришлось создавать самому-вот и решил поделиться...
-Прекрасно понимаю, что эта тема будет интересна узкому кругу лиц, но поверьте, представленные тут методы и :vi: могут быть применимы в практически любой СТЗ...
-Старался объяснить как можно более простым языком, так что на шутки прошу не обижаться-целью было донести прелести IMAQ до самого рядового посетителя форума...

А теперь пример обещанной красоты. Показываю с уменьшением шага дифференциации... По картинкам станет понятно в чем соль метода :wink:
1. Скриншот работы алгоритма при шаге равном 15 градусов:
15.png
2. Скриншот работы алгоритма при шаге равном 5 градусов:
5.png
Уже более четко выделяются границы объектов, которые удалось проанализировать...

3. Скриншот работы алгоритма при шаге равном 1 градус:
1.png
Тут уже невооруженным глазом видно как наша СТЗ сама определяет, вырисовывает и анализирует графический объект...
Любопытные читатели сразу подметят совпадение границ графических объектов при бинаризации и при математическом анализе...

4. Но и это еще не все. Если мощность ПК позволяет-то сделаем акцент на точность... 0.1 градуса-вот шаг на следующем скриншоте (скажу сразу 6-8 Гб RAM минимум... Ибо :labview: изображение загружает именно в ОЗУ) :
"Пакмэн" :D
packman.png

И вот видно, как разработанная СТЗ более точно автоматически определяет границы объектов и рассчитывает нужные данные...

Считаю, что это победа. Причем Победа каждого, кто прочитал эту тему от начала и до конца! :1stplace:

Очень надеюсь, что хоть какие то теоретические и практические навыки у Вас, друзья мои, останутся! :drink:

З.Ы. Вот незадача-забыл про совмещение уроков. Во вложении- :vi: из двух последних сообщений

З.З.Ы. А мы с вами перейдем к следующему этапу нашего Квеста!
А именно-к сохранению полученных данных! Во вложенном примере используется сохранение данных измерений в текстовый файл.
Это не промышленное решение. А посему будем копить данные в БД...

Предлагаю использовать самую сложную и дорогую БД... Oracle :suicide:
Но это будет в другой теме...
И с решением других проблем...

А пока надеюсь, что хоть чем-то Вам помог!


С Уважением, Cobb
Вложения
Draw Edges Position2-1.vi
(12.96 КБ) 382 скачивания
Аналитика 1-1.vi
(192.7 КБ) 381 скачивание
Аватара пользователя
Pavel Krivozubov

Activity Bronze
professor
professor
Сообщения: 4421
Зарегистрирован: 07 фев 2008, 16:39
Награды: 3
Версия LabVIEW: 7.0 - 2013
Откуда: г. Электросталь
Благодарил (а): 24 раза
Поблагодарили: 9 раз
Контактная информация:

Re: LabView IMAQ (Visual Assistant)

Сообщение Pavel Krivozubov »

Спасибо, это бесценный и интересный материал.
Как только починим сайт, выложим эти труды в раздел "Уроки"! :1stplace:
Аватара пользователя
Cobb

Автор
beginner
beginner
Сообщения: 15
Зарегистрирован: 29 ноя 2013, 03:33
Награды: 2
Версия LabVIEW: 2012
Контактная информация:

Re: LabView IMAQ (Visual Assistant)

Сообщение Cobb »

Привет, люди добрые! :bye:

Гляжу мой гайд по VA не особо пригодился.
Ну да ладно...

Прошу прощения за долгое отсутствие-работа делает свое дело...

На чем мы остановились? На БД и WEB-сервисах...
Вроде еще актуально...
Подготовлю небольшой экскурс :think:
Ответить
  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Проекты»