Что такое машинное зрение и как мы смогли его использовать в горной добыче
Компьютерное зрение (машинное зрение) — направление в области искусственного интеллекта, которое включает алгоритмы для обнаружения, отслеживания и классификации объектов по их изображениям.
Машинное зрение — это попытка смоделировать механизм получения и обработки визуальной информации в человеческом мозге.
Хорошо, а как видит человек?
Глаза принимают данные, мозг их анализирует. Зрение — это непрерывный механический алгоритм в системе «глаза — мозг», плюс процесс восприятия. Алгоритм не трудно себе представить.
Мы начали с запроса в Google «how human gets visual info for dummies».
Чувствительные клетки на поверхности глаза улавливают свет определённых длин волн (видимый свет); глазной хрусталик проецирует его на сетчатку, где свет преобразуется в электрические импульсы и через зрительные нервы передаётся в мозг.
Дальше происходит самое интересное — восприятие информации. По одной из теорий, процесс разбивается на подзадачи для нескольких отделов мозга: одна часть занимается определением форм, другая — цветов, а третья отвечает за распознавание движений и ориентацию в пространстве. Ещё есть теория, согласно которой анализ информации не разделяется и происходит интегрировано всеми системами.
Так или иначе то, какую картинку мы видим, определяется нашим предыдущим опытом. Посредством не до конца понятных механизмов мозг достаёт значимую информацию, которая связывается с паттернами в нашей памяти, и позволяет взаимодействовать с миром.
Картинка немного отфильтрована, но всё ещё видно клубнику, верно?
На изображении нет ни одного(!) красного пикселя. Просто мы знаем, что клубника красного цвета.
Возвращаясь к компьютерному зрению здесь и возникают основные сложности:
1) Если не точно известны механизмы и форма передачи данных у человека, как понять, в каком виде передавать информацию компьютеру?
Идём на рынок выбирать клубнику, фотографируем ягоды и просим компьютер и друга подсказать, какие ягоды лучше. Но с камерой случилась беда, и по цветопередаче фотография похожа на ту, что выше. Скорее всего друг скажет: «клубника ок, бери». А компьютер «увидит» на фотографии серые холмы с высоты птичьего полёта.
2) А сколько «опыта» должно быть в памяти компьютера, чтобы он делал какие-человеку-хочется выводы? Какой должен быть опыт?
Взаимодействие человека с внешним миром определяется предыдущим опытом. Для компьютера пока существует два глобальных способа определения действий на основе полученных данных: классические методы и машинное обучение.
Классические методы впервые были применены для отличия печатного и рукописного текстов ещё в 1970-х годах. В основе лежит работа с контрастом и цветами изображения, выделение геометрических фигур и границ предметов.
Думаю, лучше объяснить на примере. Задача: написать программу, которая на вход получает картинку с геометрическими формами, а после выполнения возвращает ту же картинку с корректными названиями данных фигур.
(Полное решение (вместе с кодом на python и подробным описанием) можно найти здесь.)
— Сначала компьютеру нужен жизненный опыт. В отдельный файл записываются все геометрические формы, которые программа должна уметь распознавать. Также записываются особенности, по которым можно однозначно определить фигуру. Например, у треугольника три стороны, у квадрата четыре, у прямоугольника тоже четыре, но они не равны.
— Дальше код, который загружает картинку в программу, и предобработка: перевод в ч/б, уменьшение размера изображения, размытие и подбор параметров для создания «маски» (все чёрные участки - чёрные, все остальные — белые).
— С помощью готового (взятого из библиотеки) алгоритма на изображении выявляются границы фигур. Информация записывается в виде координат точек, формирующих контуры.
— После сглаживания контуров, можно достать количество и длину сторон фигуры.
— Наконец, по особенностям каждой формы (количество, длина сторон) программа может определить её название.
Простецкая задача для человека оказывается нетривиальной для машины. Всё дело в сложнейшем устройстве мозга. Пока не придумали компьютер, который имел бы такую же производительность при столь малом потреблении энергии, 25-30 Вт.
Оценка расходуемой мощности гипотетического компьютера, который смог бы догнать мозг, составляет 12 000 000 000 Вт.
Ещё один подход к решению задач — машинное обучение. Это иной способ накопления опыта: набор методов, которые умеют замечать и запоминать взаимосвязи между признаками.
В задаче распознавания лиц признаками являются расстояние между глаз и их форма, толщина губ и различные измерения, которые в сумме позволяют уникально идентифицировать конкретного человека или, например, его эмоции.
Беспилотный автомобиль должен в режиме онлайн анализировать обстановку вокруг. Признаки — это ширина дороги, расстояния до объектов и т.д. На основании многочисленных факторов искусственный интеллект выбирает режим движения.
Мы в «Цифре» запустили мониторинг соблюдения норм безопасности на предприятии. Решение интегрируется во внутреннюю систему видеонаблюдения. При помощи технологий машинного зрения решение следит за ношением масок, перчаток и спецодежды; в режиме онлайн определяет дистанцию между сотрудниками и следит за соблюдением других требований к процессам.
Система «Умный экскаватор» при помощи компьютерного зрения контролирует состояние зубьев ковша экскаватора и определяет размер кусков горной массы (гранулометрический состав), полученных в забое при ведении буровзрывных работ.
Буровзрывные работы применяются в подземной и открытой добыче полезных ископаемых и для отделения горной породы – угля или руды – от массива. Чем меньше и равномернее куски горной массы, тем выше скорость погрузки их экскаваторами и больше загрузка самосвалов. Обнаружение фрагментов породы больше заданного размера – негабарита – позволяет предотвратить их попадание в дробилку, которое приводит к простою механизма и повышению потребления им электроэнергии.
Система также в реальном времени отслеживает состояние зубьев ковша экскаватора. Поломка зуба обнаруживается в течение пяти секунд, после чего система подает предупреждающий сигнал оператору и диспетчеру.
Мониторинг состояния зубьев дает возможность планировать их своевременную замену, что уменьшает количество поломок и время простоя экскаватора. Кроме того, снижается вероятность поломки дробильно-сортировочного комплекса из-за попадания в него зубьев. Ремонт и простой комплекса приводит к значительным финансовым потерям.
про фото клубники - там серьезно нет ни одного красного пикселя??? ппц как врет мозг:)
Интересно. Живу в горняцком городе. Сам в производстве не задействован, но отец и дед были горняками.
С интересом наблюдаю, как постепенно с появлением технологий уходят в небытие горные специальности.
Сначала механизация торкретирования, теперь дистанционное управление буровой установкой.
То ли ещё будет.