Future

Закупились LED-лентами, внедрили AI в процессы и создали систему навигации по парковке. Прямо как в NFS Underground

Привет! Меня зовут Ярослав Шмулёв, я сооснователь студии R77.AI — интегратора AI в корпорации. К нам обратились за разработкой проекта умного паркинга для ЖК бизнес класса. В статье расскажу, как решали задачи с помощью принципов Data Science, с какими трудностями столкнулись, как их решали, и на что нас вдохновила игра NFS Underground.

Закупились LED-лентами, внедрили AI в процессы и создали систему навигации по парковке. Прямо как в NFS Underground
Article image

Вдохновились NFS Underground и реализовали проект умного паркинга

Заказчик пришёл за целой стратегией цифровизации жилого комплекса в Москве. Мы работали над серией проектов, где умный паркинг — лишь малая часть. Но об остальном расскажу чуть позже.

Первое, что мы решили сделать — решить вопрос навигации. Проблема подземных парковок в том, что по ним очень тяжело ориентироваться из-за нескончаемого количества этажей и поворотов.

Когда мы сели думать, как решить эту боль, я сразу же вспомнил свою первую компьютерную игру — NFS Underground. Это игра в жанре аркадных автогонок, в которой путь машине игрока указывают неоновые стрелки.

Мы с командой сошлись во мнении, что это штука вообще-то гениальна, и пошли думать как всё это дело реализовать.

Article image

Организовали офис прямо на парковке и приступили к работе

Мы не из тех ребят, которые просят заказчика всё самостоятельно организовать и обеспечить стабильный приход данных, а только потом приступают к задачам.

На проектах мы часто используем алгоритмы CV для обработки и анализа данных. Нам важно делать всё своими руками — устанавливать девайсы, тестировать решения и ошибаться.

На -1 этаже этого ЖК мы выделили зону, для тестов. А в кладовке организовали серверную часть.

Использовали готовое решение для детекции машин

Тут ничего нового выдумывать не пришлось — люди давно научились распознавать номера и лица.

Подобрали сервис, который устроил и нас по функционалу, и клиента по бюджету.

Перед тем, как навигировать машины, нужно разобраться как их трекать

Собрали hardware device из четырех камер, колонок и звуковых датчиков.

Камеры направили по четырем плоскостям: две из них контролировали сам проезд и трекали машины, а ещё две — соседние парковочные места.

Установили Raspberry Pi и поставили отдельный сервер с GPU, чтобы считывать и стримить видеопоток с камер. А всю функциональность оркестрировал бэкенд.

Так как у Raspberry Pi четыре USB-разъема, мы решили, что подключить к нему все наши камеры, чтобы считывать видеопотоки — отличная идея.

Это решение оказалось главной ошибкой на проекте.

Article image

Мы не учли потенциальные проблемы с сетевыми коммуникациями и специфику работы с Hardware

Нужно было создать систему, которая сможет качественно и без перебоев стримить все видеопотоки на сервер. Но уже на этапе тестов возникли проблемы.

Главная проблема была в USB-камерах — они отправляли на сервер не сжатые кадры. Из-за этого файлы не влезали в стандартный Ethernet.

Чтобы решить эту проблему, нам приходилось уменьшать frame rate и разрешение видео.

Ещё одна проблема была в том, что серверная часть находилась в 100 метрах от самого девайса.

И несмотря на то, что рядом с устройствами стоял коммутатор, расстояние не обрабатывалось и сигнал не проходил. Также помехи могли создавать силовые кабели вокруг парковки.

Как только мы переносили оборудование к устройствам — всё начинало работать.

Так, спустя несколько итераций, мы стали таскать с собой раскладные стулья и стол, чтобы прямо там сидеть и прогать.

Дружеский совет — заменяйте USB-камеры на сетевые, чтобы уменьшить лаги и нагрузку на сеть.

Как мы разработали алгоритм навигации?

Идея была в том, что по LED-ленте будет бежать жучок и сопровождать машину до назначенного ей места.

Одна машина — один жучок, который гаснет на той части пути, которую водитель уже преодолел.

Превратили парковку в футбольное поле

Чтобы трекать машину на уровне пикселей, мы разделили всё пространство на небольшие сектора — квадраты 3х3 со своим уникальным ID.

Разметили их футбольными конусами, просто потому что удобно.

Article image
Article image

Тут появился ещё один вопрос — а как навигировать машину так, чтобы она добралась до места, даже если водитель сбился с маршрута?

Связали LED-ленты с секторами парковки

Сама лента тоже состоит из секторов. Мы связали определенные участки ленты с квадратами, чтобы понимать, какие отрезки ленты зажигать. А когда водитель сбивается с маршрута — отрабатывает алгоритм детекции.

Если машина должна находиться в другом секторе — автоматически отправляется сигнал на микроконтроллер, который включает другие светодиоды и перестраивает маршрут.

Тестировали точность и обучали модели ИИ на размеченных секторах.

Этим же алгоритмом закрыли вопрос определения местоположения автомобиля

И смогли определять, когда машина заняла часть соседнего квадрата, а значит — чужое место или участок дороги.

Article image

Разработали алгоритм определения корректности парковки

Никаких готовых решений этой задачи мы не нашли, поэтому стали думать как это реализовать самостоятельно.

Мы сразу учли, что в ЖК часто паркуются машины S-класса, которые могут не помещаться на своё место из-за длины машины. И трекали автомобили только относительно боковых границ парковки.

Article image

Нашли несколько Open source моделей, которые могли бы нам подойти

Сначала задаётся проекция машины на плоскость, затем модели нейросетей прогнозируют маску этой проекции.

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

Мы поняли, что если пойдём этим путём, то точно прогорим, потому что такой алгоритм не устойчив к высоте и углу, на котором будет расположена камера.

К тому же, большинство готовых датасетов заточены только под сами дороги, и их пришлось бы серьёзно дорабатывать.

Задумались, а как люди в реальной жизни понимают, что машина припарковалась неправильно?

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

Article image

Как мы это провернули?

Мы создали проекцию боковых линий машины на землю, чтобы проверять пересечения с границами парковочного места.

Article image

Чтобы построить эти линии, мы использовали алгоритм, который включает аппроксимацию по ключевым точкам и линейную регрессию.

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

Article image

А что дальше?

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

Article image

Логика решения

Article image

Команда

  • 1x Project Manager
  • 2x Hardware / Network Engineers
  • 2x Data Scientist
  • 1x Data science Lead
  • 1x Back end Developer

Стоимость

Общая стоимость проекта составила ~50k USD.

FIN!

B подписывайтесь на наш телеграм. Там не будет новостей о новом ChatGPT и ответов на вопрос «Заменят ли нейросети человека». Будем рассказывать о разработке ПО (AI для ентерпрайза).

Похожие статьи

10 полезных исследований для PR и SMM-специалиста
Future

10 полезных исследований для PR и SMM-специалиста

Вы тоже заметили, что день PR-щика не обходится без упоминания искусственного интеллекта? Генеративные модели довольно стремительно становятся желанным помощником в работе. По данным исследования компании Muck Rack, в 2025 году PR-специалисты всё чаще используют в своей работе генеративный искусственный интеллект (ИИ). С марта 2023 года его востребованность в отрасли выросла почти в три раза.

Еще вчера ИИ в госпроектах был интересной идеей, а сегодня это обязательное требование
Future

Еще вчера ИИ в госпроектах был интересной идеей, а сегодня это обязательное требование

Компания «Кеды профессора» занимается цифровизацией государственных организаций и активно внедряет решения на основе искусственного интеллекта, LMS-платформы, аналитические системы и HR-сервисы. О том, какие именно решения востребованы у госучреждений, рассказал Константин Егошин, генеральный директор компании.

PWA — технология, которая превратит ваш сайт в приложение
Future

PWA — технология, которая превратит ваш сайт в приложение

Если вы часто или циклично взаимодействуете через сайт со своими клиентами, партнерами или коллегами, то наверняка задумывались о создании мобильного приложения. Но зачастую разработка приложения — это дорого и долго. К тому же продвигать и поддерживать его также затратно. Поэтому многие откладывают создание приложения до лучших времен. А что, если превратить в приложение уже имеющийся сайт? Это возможно с помощью технологии Progressive Web Application (PWA).

Написать