Scancam использует ML.NET для предотвращения кражи топлива
Клиент
Scancam Industries
Продукты и службы
ML.NET
ASP.NET Core
Xamarin
Azure
Промышленность
Безопасность и расследования
Размер организации
Малый (от 1 до 100 сотрудников)
Страна/регион
Австралия
Scancam — это компания, занимающаяся предотвращением убытков. Одним из ее основных продуктов является средство для борьбы с кражей топлива, которое обслуживает розничных продавцов топлива и обеспечивает комплексное решение для предотвращения и управления кражей топлива, включая взыскание долгов.
Бизнес-проблема
Кража топлива ежегодно обходится австралийскому сектору розничной торговли топливом в миллионы долларов. На заправочных станциях в Австралии клиенты сначала заполняют топливные баки, а затем расплачиваются. Некоторые автомобилисты уезжают, не заплатив за топливо, а некоторые понимают, что забыли кошелек или у них недостаточно денег, чтобы заплатить за только что отпущенное топливо. Такие случаи бегства и неоплаты приводят к тысячам долларов убытков для розничных продавцов топлива.
Решение Scancam использует технологию распознавания номерных знаков для обнаружения транспортных средств на заправочных станциях и предоставляет предупреждения для известных правонарушителей (людей, которые должны деньги на любой из заправочных станций в их сети). Он также включает в себя возможность сообщать о кражах топлива, автоматическое создание видеозаписи инцидентов, онлайн-платежи и взыскание долгов.
Почему ML.NET?
Scancam — это прежде всего магазин .NET. До появления ML.NET компания выполняла обнаружение объектов в отдельном контейнере Docker с кодом Python. Когда в Custom Vision был добавлен экспорт моделей обнаружения объектов, Scancam перенесла его на ML.NET, что позволило компании размещать компоненты машинного обучения в той же кодовой базе, что и их приложения.
Scancam запускает код C# от самых маленьких пограничных устройств на месте до облака. Они могут использовать один и тот же знакомый язык C# и инструменты для любого компонента своих решений и могут легко перемещать код из облака в периферию и наоборот (например, из функций Azure в образы контейнеров ASP.NET Core, работающие на устройствах ARM32).
Влияние ML.NET
ML.NET дает Scancam возможность легко перемещаться туда, где выполняется их код, то есть на периферийных устройствах, мобильных устройствах или в облаке. Полученная в результате функция обнаружения объектов ML.NET снизила требования к пропускной способности Scancam на 35% и, следовательно, уменьшила их требования к облачным вычислениям, в то время как компоненты обнаружения аномалий будут активно отслеживать сотни устройств.
ML.NET позволил нам повысить производительность, позволив кодировать наши компоненты ML на том же языке и инструментах, которые мы используем для всего остального. ML.NET предоставил нашим разработчикам .NET самую простую отправную точку для начала интеграции машинного обучения в наши приложения".
Учитывая ограниченное время, доступное с момента обнаружения транспортного средства до момента, когда водитель инициирует подачу топлива (5–7 секунд), ML.NET позволила Scancam добавить обнаружение объектов в конвейер обработки, что практически не влияет на производительность благодаря среднему значению 300 мс.
Архитектура решения
Технический стек Scancam состоит из ML.NET, ASP.NET Core, Xamarin для iOS и Azure (служба приложений, функции Azure, служебная шина Azure, хранилище Azure, Azure Cosmos DB, SignalR, база данных SQL Azure).
Когда транспортное средство подъезжает к заправочной станции, камера инициирует событие для конечной точки HTTP, работающей на ASP.NET Core в Docker. Затем ML.NET используется, чтобы сначала определить наличие транспортных средств, а затем определить наличие номерных знаков на этих транспортных средствах. Затем они используют отдельную технологию распознавания номерных знаков для сканирования номеров и букв и передачи их функции Azure для запуска оставшегося конвейера облачной обработки на основе Azure, включая перекрестную проверку номерного знака с базой данных известных правонарушителей и трансляцию обнаруженных номерных знаков на iPad и дисплеи телевизоров через SignalR.
Клиентское приложение
Основное приложение для конечного пользователя — это приложение Xamarin, которое используется обслуживающим персоналом заправочной станции на iPad. Это приложение отображает все номерные знаки, обнаруженные на каждой заправочной станции, и показывает предупреждение, если номерной знак есть в базе данных известных правонарушителей. Это позволяет оператору пульта предотвратить выдачу топлива и попросить клиента внести предоплату за топливо перед включением насоса.
Обнаружение объекта
Большинство камер, используемых Scancam, обнаруживают подъезд транспортных средств к топливным колонкам и их отъезд путем регистрации движения. Компания получает сотни тысяч событий от сотен камер ежедневно. Учитывая загрузку заправок, Scancam может получать тонны ложных срабатываний, каждое из которых требует обработки и распознавания номерных знаков. Это сильно загружает и без того ограниченную пропускную способность Интернета на заправочных станциях.
Чтобы сократить количество событий, которые необходимо отправить в облако для обработки, Scancam использовала Пользовательское визуальное распознавание Azure в целях обучения модели обнаружения объектов для обнаружения присутствия транспортного средства и видимости области номерного знака на изображении и экспортировала модель в формате ONNX. Затем они используют модель с ML.NET на периферийных устройствах для предварительной обработки событий камеры перед отправкой в облако для дальнейшей обработки.
Обнаружение аномалий
Scancam также внедряет ML.NET для обнаружения аномалий, чтобы обнаруживать всплески (например, неправильные области срабатывания по движению, слишком низкий порог срабатывания) и провалы (например, камера была выбита из положения, заблокирована, неправильные настройки экспозиции) в событиях камеры, в рамках контроля за исправностью настроек камеры. Это обнаружение позволяет Scancam легко выявлять потенциальные проблемы с сотнями камер без необходимости ручного поиска в журналах.
Классификация изображений
Scancam также планирует добавить марку и идентификацию модели транспортного средства в свое ML.NET решение.
Готовы приступить?
Наше пошаговое руководство поможет вам запустить ML.NET на вашем компьютере.