Метрология
Термические приборы
Главная / Articles / Нейронная сеть в программном обеспечении AXALIT

Articles

Категории
Нейронная сеть в программном обеспечении AXALIT
15 июня, 12:19

Объединив проверенные технологии с новейшими разработками, компания «АКСАЛИТ Софт» вывела анализ изображений микро- и макроструктуры различных объектов на новый уровень. С 2018 года программное обеспечение «AXALIT» работает с применением искусственного интеллекта. Точнее, на основополагающей составляющей искусственного интеллекта - нейронных сетях. Сегодня мы расскажем, что это такое и как оно работает в программном обеспечении «AXALIT». Поехали!

Искусственная нейронная сеть

Нейронные сети — это математические модели, работающие по принципу сетей нервных клеток животного организма. Структура нейронной сети пришла в мир программирования прямиком из биологии. Благодаря такой структуре машина обретает способность анализировать и даже запоминать различную информацию. Нейронные сети также способны не только анализировать входящую информацию, но и воспроизводить ее из своей памяти. Другими словами, нейросеть это машинная интерпретация мозга человека, в котором находятся миллионы нейронов, передающих информацию в виде электрических импульсов.

Как это работает?

Основным преимуществом нейросетей над обычными алгоритмами вычисления, которые ранее использовались в ПО «AXALIT», является их возможность обучения. Теперь при поиске объектов программа основывается не на математические алгоритмы, а на приобретенный опыт обучения.

Процесс обучения ПО с использованием нейронных сетей происходит следующим образом:

  1. Сигналы от поступивших данных программа распределяет по нейросети;
  2. Программа выдаёт свой ответ;
  3. Если выданный ответ не является действительность, нам необходимо указать на ошибку;
  4. При последующей обработке данных сеть учтет полученный «опыт» и вероятность получения правильного ответа будет больше, чем в предыдущие разы.

Простые вещи

Представим новую нейронную сеть с совершенно пустой памятью, которую мы обучим распознавать арабские цифры.

Загрузим изображение печатных цифр в программу «Axalit Soft». Программа быстро распознала и выделила объекты, но пока не знает что это (Рисунок 1).

Программа «Axalit Soft» выделила цифры и классифицировала их как «Неизвестные».

Рисунок 1. Программа «AXALIT» выделила цифры и классифицировала их как «Неизвестные».

Создадим базу данных (Рисунок 2) согласно поставленным задачам. В данном случае – наименование арабских цифр.

База данных «Арабские цифры» и их условные обозначения

Рисунок 2. База данных «Арабские цифры» и их условные обозначения.

Обучим программу как маленького ребенка различать цифры, грубо говоря, по их контуру, не вдаваясь в сложный механизм нейронных связей (Рисунок 3).

Обучение нейронной сети в программе «Axalit Soft».

Рисунок 3. Обучение нейронной сети в программе «AXALIT».

Усвоить полученную информацию ПО получается не сразу. Но при периодическом исправлении ошибок, совсем скоро (в данном случае речь идет о минутах) программа начнет стабильно различать все цифры (Рисунок 4).

Нейронные сети в ПО "Axalit Soft" обучены различать арабские цифры

Рисунок 4. Нейронные сети в ПО "AXALIT" обучены различать арабские цифры.

Для проверки полноценной работоспособности сети, загрузим изображение с цифрами, написанными от руки (Рисунок 5).

Рукописные арабские цифры

Рисунок 5. Рукописные арабские цифры.

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

Программа «Axalit Soft» успешно прошла обучение и правильно определила все цифры

Рисунок 6. Программа «AXALIT» успешно прошла обучение и правильно определила все цифры.

Level up

Усложним задачу и научим программу распознавать объекты различные по форме, цвету и размеру. В данном случае это канцелярский набор – кнопки-гвоздики, скрепки, зажимы для бумаги и монетки (Рисунок 7).

Канцелярский набор и монетки

Рисунок 7. Канцелярский набор и монетки.

Для данного набора база данных «Арабские цифры» не подойдет. Создаём новую базу данных применимую к данному изображению (Рисунок 8).

База данных для распознавания канцелярских товаров

Рисунок 8. База данных для распознавания канцелярских товаров.

Выделив новые объекты, программа классифицирует их как неизвестные (Рисунок 9). Обучим нейронную сеть новым «знаниям».

Не обученное программное обеспечение "Axalit Soft"

Рисунок 9. Не обученное программное обеспечение "AXALIT".

После недолго обучения программа с легкостью отличает все предметы на изображении друг от друга (Рисунок 10).

Обученное ПО распознает предметы различные по форме, цвету и размеру

Рисунок 10. Обученное ПО распознает предметы различные по форме, цвету и размеру.

Вывод

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

Готовый продукт

Вы спросите: как, например, лаборанту-металлографу пригодится программное обеспечение, умеющее различать «цифры» и «скрепки»?

Дело в том, что программное обеспечение «AXALIT» создано для решения разноплановых задач в анализе изображений микро- и макроструктур объектов. Внедрение нейронной сети в ПО ускорило процесс работы и расширило спектр задач, требуемые конечному пользователю. На этих простых и привычных примерах мы разобрались только с принципом работы обновлённого ПО. А лаборант-металлограф может применить программу, например, для анализа неметаллических включений в стали уже сейчас. Смотрите пример работы на видеоролике снизу!