LabView IMAQ (Visual Assistant)

Делись идеей, получай поддержку и критику!

LabView IMAQ (Visual Assistant)

Postby Cobb on 04 Dec 2013, 02:06

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

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

Собственно, ТЗ (краткое):
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
Last edited by Cobb on 19 Dec 2013, 02:36, edited 3 times in total.
User avatar
Cobb
beginner
beginner
 
Posts: 15
Joined: 29 Nov 2013, 03:33
Medals: 2
Автор (2)
LabVIEW Version: 2012
Karma: 25

Re: LabView IMAQ Oracle

Postby Pavel Krivozubov on 04 Dec 2013, 10:56

Спасибо большое, с нетерпением ждём продолжения!
Перенёс тему в раздел "Проекты", это более подходящий формат.
User avatar
Pavel Krivozubov
professor
professor
 
Posts: 4385
Joined: 07 Feb 2008, 16:39
Location: г. Электросталь
Medals: 3
Activity (2) Bronze (1)
LabVIEW Version: 7.0 - 2013
Karma: 218
hardware I/O PDA VIP vision bloggers internet teachers students freelance

Re: LabView IMAQ Oracle

Postby Cobb on 12 Dec 2013, 03:41

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Для реализации этого метода я использую:
-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:):
Image

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

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

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


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

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

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

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

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

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

Patch 1.0.2 :D :
Добавил вложения:
1. :vi: из примера
2. SUB :vi: для дальнейшего построения алгоритма
3. Изображения микроструктуры до обработки и после (8 бит)
Attachments
VI пороговая бинаризация.vi
(26.59 KiB) Downloaded 213 times
to_binary.vi
(34.87 KiB) Downloaded 283 times
зерна.jpg
зернаBIN.png
Last edited by Cobb on 19 Dec 2013, 02:40, edited 3 times in total.
User avatar
Cobb
beginner
beginner
 
Posts: 15
Joined: 29 Nov 2013, 03:33
Medals: 2
Автор (2)
LabVIEW Version: 2012
Karma: 25

Re: LabView IMAQ Oracle

Postby Cobb on 12 Dec 2013, 03:42

Если бы я знал как вложить файлы-я бы прикрепил к своему краткому обзору :think:
User avatar
Cobb
beginner
beginner
 
Posts: 15
Joined: 29 Nov 2013, 03:33
Medals: 2
Автор (2)
LabVIEW Version: 2012
Karma: 25

Re: LabView IMAQ Oracle

Postby Pavel Krivozubov on 12 Dec 2013, 08:58

Супер!
Когда починим сайт, это первый материал на главную!
А файлы добавлять просто - внизу при создании сообщения есть кнопка "добавить вложения"
User avatar
Pavel Krivozubov
professor
professor
 
Posts: 4385
Joined: 07 Feb 2008, 16:39
Location: г. Электросталь
Medals: 3
Activity (2) Bronze (1)
LabVIEW Version: 7.0 - 2013
Karma: 218
hardware I/O PDA VIP vision bloggers internet teachers students freelance

Re: LabView IMAQ Oracle

Postby ESeid on 12 Dec 2013, 09:38

Cobb, большое спасибо! Очень интересная тема, и что ценно - используются очень простые средства для достижения цели.
Pavel Krivozubov, если Вы не против, я тоже выложу что-нибудь из своего, но это - область биомедицинских исследований. Если она кому-то интересна.
ESeid
assistant
assistant
 
Posts: 149
Joined: 30 Mar 2011, 22:41
Medals: 1
Автор (1)
LabVIEW Version: 8.2-2013
Karma: 34

Re: LabView IMAQ Oracle

Postby Cobb on 12 Dec 2013, 14:52

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

Очень рад, что статья пришлась ко двору.
... и что ценно - используются очень простые средства для достижения цели.

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

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

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

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

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

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

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

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

З.Ы. Вечером добавлю файлы :vi: из указанного примера
User avatar
Cobb
beginner
beginner
 
Posts: 15
Joined: 29 Nov 2013, 03:33
Medals: 2
Автор (2)
LabVIEW Version: 2012
Karma: 25

Re: LabView IMAQ Oracle

Postby Pavel Krivozubov on 12 Dec 2013, 17:54

Евгений разумеется выкладывайте!
User avatar
Pavel Krivozubov
professor
professor
 
Posts: 4385
Joined: 07 Feb 2008, 16:39
Location: г. Электросталь
Medals: 3
Activity (2) Bronze (1)
LabVIEW Version: 7.0 - 2013
Karma: 218
hardware I/O PDA VIP vision bloggers internet teachers students freelance

Re: LabView IMAQ Oracle

Postby dadreamer on 12 Dec 2013, 18:01

Всё-таки вместо радикала лучше загрузить картинки на форум и подправить верхние сообщения. А то сейчас размеры изображений великоваты, да и с хостингов могут удалить через некоторое время, если к картинке не было обращений.
User avatar
dadreamer
professor
professor
 
Posts: 3157
Joined: 17 Feb 2013, 16:33
Medals: 4
Activity (1) Professionalism (1) Автор (2)
LabVIEW Version: 2.5 — 2018
Karma: 803
I/O VIP vision internet

Re: LabView IMAQ (Visual Assistant)

Postby Cobb on 13 Dec 2013, 03:15

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

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

По моему скромному мнению каждая из озвученных тем требует пояснения и детализации... Так что корифеев форума прошу сильно не бить! :thank:
User avatar
Cobb
beginner
beginner
 
Posts: 15
Joined: 29 Nov 2013, 03:33
Medals: 2
Автор (2)
LabVIEW Version: 2012
Karma: 25

Re: LabView IMAQ (Visual Assistant)

Postby Cobb on 18 Dec 2013, 03:57

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

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

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

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

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

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

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

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

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

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

Image

Скажу честно-я давно уже отошел от промышленной автоматизации, так что мог нюансы позабыть. Если есть металлурги-то прошу поправить меня :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:
Справка:
Image
На практике микроструктурный метод Смирнова-Аляева выглядит так:
1. На заданный участок исследуемой поверхности накладывается сетка-транспортир ( с градацией от 0 до 180 градусов/от 0 до 360 градусов), из центра которой через заданное (постоянное) число радиан откладывается луч, пересекающий определенное число зерен.

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

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

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

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

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

Продолжение следует...
Attachments
r-f1.png
User avatar
Cobb
beginner
beginner
 
Posts: 15
Joined: 29 Nov 2013, 03:33
Medals: 2
Автор (2)
LabVIEW Version: 2012
Karma: 25

Re: LabView IMAQ (Visual Assistant)

Postby Cobb on 19 Dec 2013, 02:33

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

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

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

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

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

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

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

Фрагмент кода:

CalcROI.png
CalcROI.png (10.08 KiB) Viewed 10376 times



Тут мы получаем данные нашего прямоугольника. Выделяем из него координаты начала и конца отрезка (с помощью 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
Attachments
Draw Edges Position2-1.vi
(12.96 KiB) Downloaded 224 times
Аналитика 1-1.vi
(192.7 KiB) Downloaded 213 times
User avatar
Cobb
beginner
beginner
 
Posts: 15
Joined: 29 Nov 2013, 03:33
Medals: 2
Автор (2)
LabVIEW Version: 2012
Karma: 25

Re: LabView IMAQ (Visual Assistant)

Postby Pavel Krivozubov on 19 Dec 2013, 09:02

Спасибо, это бесценный и интересный материал.
Как только починим сайт, выложим эти труды в раздел "Уроки"! :1stplace:
User avatar
Pavel Krivozubov
professor
professor
 
Posts: 4385
Joined: 07 Feb 2008, 16:39
Location: г. Электросталь
Medals: 3
Activity (2) Bronze (1)
LabVIEW Version: 7.0 - 2013
Karma: 218
hardware I/O PDA VIP vision bloggers internet teachers students freelance

Re: LabView IMAQ (Visual Assistant)

Postby Cobb on 15 Apr 2014, 03:02

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

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

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

На чем мы остановились? На БД и WEB-сервисах...
Вроде еще актуально...
Подготовлю небольшой экскурс :think:
User avatar
Cobb
beginner
beginner
 
Posts: 15
Joined: 29 Nov 2013, 03:33
Medals: 2
Автор (2)
LabVIEW Version: 2012
Karma: 25


Return to Проекты

Who is online

Users browsing this forum: No registered users and 2 guests

cron