В 2019 году (кажется, целую вечность назад), мы начали эксперимент. Решили использовать наши знания в области нейронных сетей, чтобы создать продукт для многообещающей, как нам казалось, ниши. Целью было разработать аналитическую систему для застройщиков, которая с помощью камер и нейронных сетей следила бы за происходящим на строительных площадках. У нас была гипотеза. Мы изучили бизнесы, делающие подобную аналитику. Нашли несколько зарубежных стартапов, которые получили значительные инвестиции. Естественно, мы задались вопросом: «Почему мы не можем сделать то же самое?» И что могло пойти не так?
Концепция проекта
В основу нашей системы лег простой алгоритм:
использовать камеры для наблюдения за строительными площадками;
скормить видеопоток нейронкам, которые распознают объекты в кадре и фиксируют их появление, исчезновение и поведение;
построить на основе этих данных аналитику, которую руководство компании-застройщика сможет посмотреть на симпатичном дашборде.
Можно, например, в реальном времени показывать, как проходит строительство, сколько машин на объекте и кто из рабочих что делает. Не сервис, а мечта контрол-фрика.
Мы прикинули, какая аналитика может заинтересовать застройщиков и отправились делать MVP, уверенные, что оно сразу же взлетит.
Разработка в стиле MVP
Первым делом:
Реализовали детекцию строительной техники, людей, огня и дыма на основе YOLO.
Для skeleton detection воспользовались HR-NET.
Для сегментации, точнее подсчета этажей строящегося здания, выбрали UNET.
Задачу трекинга объектов возложили на Deep sort.
На самом деле, в этом стеке нет ничего особенного, потому что ни времени, ни ресурсов на глубокий ресерч у нас не было. Работая над MVP, всегда выбираешь привычные инструменты, но совсем без кастомизации, конечно, не обошлось.
YOLO обладает внушительной функциональностью, однако «из коробки» она распознает ограниченное количество классов объектов. Легковые автомобили, грузовики, люди в ее арсенале есть, но нейросеть не различает модели автомобилей и одежду. Нам же важно распознавать строительные каски и жилеты на рабочих; экскаваторы, бульдозеры, бетономешалки на стройплощадке.
Чтобы добиться специализированной детекции, пришлось собрать собственный датасет. Мы парсили результаты поисковой выдачи, брали видео из YouTube, искали открытые датасеты и сборники изображений, а затем передавали все это разметчикам. Так получили датасет из примерно 20 тысяч картинок с нужными нам классами объектов и обучили на нем сетку.
Также мы столкнулись с задачей сопоставления объектов. Чтобы от такой системы был прок, к видеоаналитике должно быть подключено несколько камер, которые покрывают всю или почти всю площадь строительной площадки. Когда объект, скажем, грузовик, выходит из поля зрения одной камеры и входит в поле зрения другой, алгоритмы должны понимать, что это один и тот же объект. Иначе мы не сможем корректно подсчитать их количество.
Для этого каждому уникальному объекту, снятому с разных камер, должен быть присвоен уникальный ID. Это достаточно сложная задача — ML Re-identification. Чтобы решить ее, можно применить подход, основанный на сравнении BBox-объектов в виде векторов, эмбейдингов. Можно присваивать один ID тем объектам, у которых параметры BBox будут достаточно схожи.
Однако это не идеальный вариант. Например, могут возникнуть проблемы с идентификацией объектов, которые находятся далеко от камеры или сняты с необычного ракурса. Но в качестве baseline это решение подходит.
Обкатали на стройке и разработали интерфейс
Когда мы запустили все модули распознавания, то протестировали их на реальном объекте. Установили камеры на одной стройплощадке, снимали с них видео и обрабатывали в реальном времени.
Вот что мы реализовали:
Распознавание касок и жилетов — стандартного защитного снаряжения строителей.
Распознавание различных типов строительной техники и ее трекинг — отслеживание перемещений по строительной площадке.
Мониторинг задымления и открытого огня.
Все это мы обернули в симпатичный веб-интерфейс с тепловой картой — планом строительной площадки, на котором отображаются зоны повышенной активности. Это те участки, где было зафиксировано больше всего событий, например, где обнаружено больше всего строительной техники.
Не взлетело
В итоге мы получили набор микросервисов, более-менее отлаженные ML-решения, front-end и back-end с соответствующими API. Получилась крепкая легковесная платформа для реализации новых функций, интеграции и дополнительной настройки под потребности конкретного заказчика.
Уже на том этапе мы могли отслеживать грузы, поступающие на стройплощадку, подсчитывать количество построенных этажей, следить за работой строителей или проверять, не курят ли они где-нибудь в сторонке.
Мы рассчитывали, что этого будет достаточно для привлечения инвесторов, но просчитались — переоценили интерес со стороны строительных компаний. Вся разработка шла за наш счет, и мы не могли продолжать вкладываться в проект. В результате, его пришлось заморозить до недавнего времени.
Что изменилось на рынке?
Сейчас ситуация выглядит иначе. За последние пару лет, технологии машинного зрения значительно продвинулись. И что самое важное, им нашлось множество практических применений, и их уже активно внедряют за рубежом.
Отслеживание перемещений по стройплощадке
Мониторинг в реальном времени и аналитика с использованием таких инструментов, как тепловые карты, дают понимание того, как выполняется работа, и позволяют находить проблемные места.
Нейронки позволяют отслеживать число людей на стройплощадке и строить траектории движения техники и рабочих. Это помогает выявить узкие места в процессе строительства. Например, может быть нужно перенести место хранения материалов, чтобы минимизировать ненужные перемещения по объекту. Кроме того, так можно отслеживать, что строительная техника не блокирует въезды и выезды с объекта. Это важно для пожарной безопасности.
Контроль состояния строительной техники
Благодаря компьютерному зрению стало доступно обнаружение и даже прогнозирование поломок строительной техники. Так, можно заранее предупредить рабочих, когда техника начинает изнашиваться, и ее необходимо отремонтировать или заменить.
Предотвращение несанкционированного доступа
Распознавая номерные знаки транспортных средств и лица рабочих, нейросети могут контролировать доступ на территорию строительной площадки.
Мониторинг безопасности
Отслеживание средств индивидуальной защиты работников сейчас реализуют более полно, не ограничиваясь касками и жилетами. Компьютерное зрение позволяет отслеживать использование перчаток, масок, специальной обуви и других предметов защитной одежды. На основе этих данных можно вычислять «средний балл безопасности» на основе количества работников, надевающих необходимые средства индивидуальной защиты.
Компьютерное зрение также может помочь выявить потенциальные угрозы на строительных площадках. Его можно использовать для обнаружения небезопасных методов работы или определения опасных зон. Например, если на кране висит тяжелый груз, система может пометить зону под ним как опасную и отправить предупреждение рабочим, чтобы они держались от нее подальше.
Мониторинг производительности и измерение продолжительности работ
Руководители строительных проектов часто говорят, что продуктивность в этой сфере трудно измерить. Однако системы компьютерного зрения могут в этом помочь. Специализированные алгоритмы позволяют замерять длительность ручных операций. Этот подход имеет особую актуальность, например, при измерении времени, необходимого для выполнения конкретных задач, таких как укладка тротуарной плитки.
Это ценная аналитика для планирования и контроля выполнения проектов. Схожим образом происходит мониторинг выполнения работ по 3D-модели в BIM (Building Information Modeling), где компьютерное зрение помогает получать реалистичные оценки сроков завершения проектов и проверять, насколько ход строительных работ соответствует утвержденному графику проекта.
Измерение расстояний и объемов
С помощью приложений, основанных на машинном обучении, можно оценивать расстояния, углы и другие геометрические параметры, что полезно при разработке планов и разметке строительных площадок.
Кроме того, существуют подходы для оценки объемов строительных материалов. По картинке с камер можно оценить объемы материалов, которые привозят на стройплощадку. Эта технология в состоянии предупредить об окончании запасов, а также позволяет сверять объемы поставленных материалов с заявленными в заказе.
3D-сканирование и информационное моделирование зданий
Компьютерное зрение позволяет создавать детализированные 3D-модели зданий, которые используют для информационного моделирования, BIM и анализа строительного процесса: отслеживания хода работ с течением времени, сравнения фактического хода работ с графиком проекта и выявления задержек.
Контроль соблюдения процедур и регламентов
Алгоритмы машинного обучения могут служить гарантией правильной работы, даже когда поблизости нет прораба.
Они способны отслеживать широкий спектр действий и нарушений протоколов безопасности, включая небезопасное вождение, соблюдение противопожарных процедур, нормы складирования стройматериалов, правильное выполнение технологических процессов и многое другое.
Обнаружение структурных дефектов
Также системы машинного зрения могут быть задействованы для автоматизированного контроля качества. С их помощью можно оценивать проверять качество строительных материалов или отделки, обнаруживать и описывать опасные дефекты, например, искать трещины на стенах.
Автоматизация отчетности
Машинное зрение позволяет документировать состояния строительной площадки на различных этапах работы. С его помощью можно создавать подробные иллюстрированные отчеты о ходе строительства. Статистика, получаемая при использовании машинного зрения, имеет огромный потенциал вплоть до поштучного подсчета уложенных кирпичей. Это путь к более тщательному контролю хода работ и точнейшему планированию.
Вывод: путь к информатизации строительства открыт
Зарубежный опыт активного использования технологий машинного зрения в строительстве уже не оставляет сомнений в их полезности. Список применений говорит сам за себя. Российский рынок тоже изменился и готов к внедрению инноваций. На них сформировался спрос, даже существуют гранты, поддерживающие внедрение подобных технологий в строительство.
С учетом этих тенденций, мы возобновили наш проект. Сейчас проводим повторный анализ: привлекаем потенциальных заказчиков, обсуждаем их проблемы и стараемся понять потребности отдельных игроков бизнеса и потребностей рынка. Наша цель — выяснить, какие из перечисленных фич в первую очередь будут востребованы на российском рынке. Полагаем, время для реализации этих мер, наконец, пришло. А как считаете вы?
Gryphon88
Можете сказать, что конкретно изменилось за эти 4 года? Что и почему было невозможно/нерентабельно, а теперь продается?