Журнал "Системы Безопасности" № 1‘2024
Л юбое программное обеспечение имеет определенный свой жизненный цикл, и системы с использованием машинного зрения не исключение. На Новолипецком металлурги- ческом комбинате (НМЛК) существуют стан- дартные шаги по подготовке инфраструктуры, обучению моделей машинного зрения, по про- мышленной опытной эксплуатации и непосред- ственному введению в продакшн-эксплуатацию. На каждом из этих этапов возникают опреде- ленные вопросы, вызывающие вопросы у раз- работчиков. Подготовка инфраструктуры Для того чтобы развернуть систему с машинным зрением, прежде всего требуется инфраструк- тура. Как выбрать инфраструктуру и какая она бывает? Первый вариант – это публичные облака, где можно арендовать серверные мощности, вто- рой – сервера, которые разворачиваются непо- средственно в компании. Какие критерии выбо- ра мы выделяем в пользу того или иного реше- ния? Прежде всего следует обращать внимание на: l требуемые мощности; l вопросы безопасности; l скорость обработки; l экспертизу поддержки. Основной критерий – это, конечно, требования к вычислительным мощностям. Если, скажем, требуется одна тысяча высокопроизводитель- ных видеокарт, то закупать подобный объем будет не так выгодно, как арендовать. Следующий параметр – скорость обработки видеопотоков. Существуют системы, которые оценивают картинку в реальном времени. Но при переброске видеопотока в публичное обла- ко происходят большие сетевые задержки, это очень серьезная нагрузка на сеть, так как видео- поток – "тяжелая" вещь. Помимо этого, возни- кает и проблема безопасности. Хотим ли мы хранить за контуром нашей компании какие-то видеофайлы, где у нас потенциально могут быть коммерческие тайны, готовы ли мы к инцидентам безопасности? С этой точки зрения обработка видео на собственных серверных мощностях выглядит более привлекательно. Однако у собственных серверных мощностей есть один большой недостаток – это экспертиза поддержки. Если мы арендуем готовые docker-контейнеры, например, у Сбер Cloud или у Selectel, то там уже все готово: настроены видеокарты, установ- лены драйверы, остается лишь загрузить свой docker-образ в облако. С собственным решением все сложнее. Нам нужно самим как-то поддерживать сервер, сле- дить за состоянием железа, программного обеспечения (ПО) – все эти действия требуют значительной экспертизы. Кроме того, если вы выбираете какие-то облач- ные сервисы для запуска таких продуктов, то нужно позаботиться о том, как прокидывать трафик в эти облака. Несмотря на то что IP-камеры сейчас достаточно распространенная вещь, на производстве мы зачастую используем только те камеры, которые доступны в определенной подсети. Это, напри- мер, камеры таких производителей, как DALSA или Hikrobot. У таких камер есть большое пре- имущество: они высокопроизводительные, у них есть широкие настройки, позволяющие отладить все что угодно, начиная от экспозиции и до раз- мера пакета, который будет передаваться по сети. Обучение моделей Помимо инфраструктуры, на начальных этапах возникает вопрос обучения моделей машинно- го зрения. Достаточно распространенная прак- тика – использование предобученных моделей на открытых датасетах. Такие модели имеют неплохие базовые навыки, однако производ- ственные задачи крайне редко похожи на те, на которых учится базовая модель. Дообучение такой модели или обучение ее с нуля – главное требование к большому и качественному датасету. Возникает проблема разметки таких датасетов, причем сложность представляют и объем, и качество разметки. Например, если нам требуется оценить про- цент загрязненности какой-либо поверхности, то субъективная оценка пользователем может существенно различаться для одних и тех же кадров с течением времени. Если мы даем экс- перту оценить один кадр с загрязненной поверхностью один раз и затем через месяц, то он, скорее всего, даст совсем другую оценку в процентах. Существуют определенные подходы, позволяю- щие условно обойти эти ограничения: 1. Автоматическая разметка данных: мы выби- раем некоторое количество кадров, большая группа экспертов со 100%-ной вероятностью оценивает, достоверный ли это кадр, и мы начинаем кластеризацией пытаться подогнать все эти кадры в одну группу. 2. Подход Metric Learning, который изначально был создан для того, чтобы подбирать товары в интер- нет-магазинах, но достаточно неплохо зарекомен- довал себя и в производственных задачах. Однако остается вопрос про неоднородные и сложноструктурированные данные. Когда мы говорим о производстве, то, скорее всего, на любом большом производстве есть такая система, как MES (Manufacturing Execution System), – система управления производствен- ными процессами, которая решает задачи син- хронизации, координации, анализа и оптими- зации выпуска продукции на производстве. То есть мы прослеживаем единицы, которые обра- батываем, и информация об этих единицах обработки бывает сложноструктурированная. Где-то нам приходится "мапить" (отображать) по одним ключам, где-то по другим. В третьем случае нам приходится мапить данные вообще по временным меткам. Камеры машинного зре- ния, как правило, ничего не знают о каких-то единицах обработки, они просто видят картин- ку. Например, подъезжает автомобиль, разгру- жается погрузчик или кран везет какую-то упа- ковку нашего сырья или готовой продукции. Поэтому перед специалистами стоит задача такого сложного мапинга. Машинное зрение предполагает потоковую обра- ботку видео в реальном времени. Для обучения наших моделей мы должны иметь очень большие февраль – март 2024 www.secuteck.ru МАШИННОЕ ЗРЕНИЕ В И Д Е О Н А Б Л Ю Д Е Н И Е И В И Д Е О А Н А Л И Т И К А 120 Алексей Тюрин Fullstack-разработчик НЛМК https://media.nlmk.com/ru/ О внедрении систем компьютерного и машинного зрения: мнение разработчика Этапы разработки систем видеонаблюдения и видеоаналитики для решения тех или иных задач промышленного предприятия имеют свои особенности. На каждом этапе возникают вопросы, ответы на которые редко являются универсальными. В этой статье я поделюсь теми моментами, с которыми мы сталкиваемся при разработке систем компьютерного и машинного зрения на НЛМК
Made with FlippingBook
RkJQdWJsaXNoZXIy Mzk4NzYw