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

А управление и обслуживание отдела по контролю качества в среднем требует от 100 до 200 человек рабочего персонала, каждый из которых за один рабочий день производит оценку качества не более 1200 наименований товаров. В то время как сеть из 15 камер, оснащённых модулями компьютерного зрения и анализа изображений, позволит оценивать качество товаров с большей скоростью, позволит увеличить скорость конвейера и уменьшить процент ошибок при оценке качества изделий на производстве.

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

На сегоднящний день существует 6 основных и наиболле популярных алгоритмов сегментации изображений: Метод выращивания регионов, метод нормальных разрезов, метод водораздела (WaterShed), метод сдвига среднего (MeanShift), метод наводнения (FloodFill) и метод среза (GrabCut).

Применительно к задаче выделения деталей на конвейере наиболее точно работает метод среза (GrabCut). Он выделяет изделие на конвейере, считая его за объект, а фон заливает черным. Затем сегментированные изображения попадают на вход алгоритма анализа изображений [1].

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

В решении задач анализа изображений преуспели четыре вида нейронных сетей: многослойный перцептрон (MLP), рекуррентная нейронная сеть (RNN), сверточная нейронная сеть (CNN) и нейронная сеть обратной свертки (DNN) [2].

Для того, чтобы определить оптимальную модель нейронной сети для решения задачи анализа дефектов, было проведено сравнение методов анализа изображений. Сравнение проводилось по скорости и точности работы метода на задачах распознавания. Эксперименты по тестированию нейронных сетей проводились на ПК с процессором Intel Core i5-7200U, работающим на частоте 2,5 ГГц на SSD. Кроме того, использовался графический процессор NVIDIA GeForce 940M.

Была использована система обучения нейросетей DIGITS Dev 5 для создания наборов обучающих и проверочных выборок изображений. Для создания модели были протестированы несколько  стандартных сетей: MLP-300 (MLP), LSTM (RNN), LeNet5 (CNN), ResUNet (DNN),  на наборе данных chars74k20 для распознавания символов. Этот набор данных состоит из рукописных цифр и английских символов, т. е. содержит 62 класса объектов. Для экспериментов по сравнению этот набор данных был поделен на 34658 обучающих изображений, 12586 проверочных изображений (20%) и 15748 тестовых изображений (25%).

Для MLP сети была использована полносвязная модель со скрытым слоем из 300 нейронов. MLP обучается по алгоритму обратного распространения ошибки. Сеть LSTM представляет собой стандартную рекуррентную нейронную сеть с модификацией долгой краткосрочной памяти. Для сети CNN использовалась стандартная модификация LeNet5 c ядром свертки 5х5 и ядром субдискретизации 2х2.Сеть ResUNet структурно представляет собой комбинацию CNN и RNN с чередование сверточных и полносвязных слоев.

В таблице 1 показана производительность обучения и классификации MLP, LSTM, LeNet5 и ResUNet на наборе данных chars74k. По данным тестов можно видеть, что CNN, RNN и DNN превосходят MLP в примерно 1,35 раза по точности обучения и в 2 раза по точности классификации. Среди нейронных сетей можно выделить лидирование ResUNet.

Таблица 1. Сравнение точности обучения нейросетей

НейросетьТочность обучения (%)Точность классификации (%)
MLP-300 (MLP)70.7243.4
LSTM (RNN)8888.39
LeNet5 (CNN)86.2385.53
ResUNet (DNN)89.9090.56

Также была проведена оценка времени обучения и классификации на GPU на наборе данных chars74k. Таблица 2 показывает общее время обработки для обучения и классификации всех символов набора данных с использованием размера батча в 64 символа.

Таблица 2. Сравнение времени обучения нейросетей

НейросетьОбучение (с.)Классиф. (с.)Класс 1-ого симв. (мс.)
LSTM (RNN)120100.635
LeNet5 (CNN)100100.635
ResUNet (DNN)556191.2

Можно заметить, что ResUNet несмотря на более высокую точность проигрывает в скорости LSTM и LeNet5. Это связано с тем, что модель ResUNet обрабатывает изображения 60 × 60, а LSTM и LeNet5 обрабатывают соответственно изображения 28 × 28 и 32 × 32.

На основании полученных результатов было принято решение для решения задачи анализа дефектов использовать глубокую нейронную сеть (DNN) модели ResUNet.

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

На вход нейронной сети поступают изображения поверхности металла размером 250 на 1600 пикселей, на которых может  присутствовать 4 вида дефектов, в разных количествах и комбинациях.  Тренировочная выборка состоит из 12600 изображений, тестовая из 5000. В тренировочной выборке только 6700 изображений имеют различные дефекты, остальные 5900 дефектов не имеют. Таким образом на входной слой нейронной сети поступает трехканальное изображение 250х1600: 4500000 параметров. На выходном слое – 5 однозначно определяемых классов.

Максимальное количество эпох (циклов) обучения было установлено на 25. Однако, минимизация целевой функции достигла своего предела на 18 эпохе, завершив обучение нейронной сети. Точность предсказания нейросети на 18 эпохе на обучающей и валидационной выборках была соответственно равна 0.7985 и 0.7505, график роста точности представлен на рисунке 1.

Рисуно1  

Рис. 1. График роста точности предсказания нейронной сети

На рисунках 2 и 3 представлен результат классификации дефектов.

Рисуно2  

Рис. 2. Изображение смешанного класса «Дефекты 3 и 4 типов»

Рисуно3  

Рис. 3. Изображение смешанного класса «Дефекты 1, 2 и 3 типов»

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

Список литературы

1. Zhang Yong, Yuan Jiazheng, LiuHongzhe, Li Qing. GrabCut image segmentation algorithm based on structure tensor // The Journal of China Universities of Posts and Telecommunications – 2017. – v. 24-2, pp. 38-47.

2. Marius-Constantin Popescu, Valentina E. Balas, Liliana Perescu-Popescu, Nikos Mastorakis. Multilayer Perceptron and Neural Networks // WSEAS TRANSACTIONS on CIRCUITS and SYSTEMS – Issue 7, Volume 8, July 2009 – pp. 579-588.