Построение системы ANPR с помощью Ultralytics YOLO11 и GPT-4o Mini

Абирами Вина

5 минут чтения

10 февраля 2025 г.

Узнайте, как построить систему ANPR, используя Ultralytics YOLO11 для распознавания номерных знаков и GPT-4o Mini для распознавания текста с точностью до реального времени.

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

Компьютерное зрение изменило ситуацию, позволив в режиме реального времени распознавать номерные знаки по изображениям и видеопотокам. Например, Ultralytics YOLO11 - это продвинутая модель компьютерного зрения, которая может выполнять такие сложные задачи искусственного интеллекта, как обнаружение, классификация и отслеживание объектов. Используя возможности YOLO11 по обнаружению объектов, вы можете точно определять номерные знаки автомобилей на изображениях. 

Ultralytics предлагает комплексные блокноты Google Colab, которые упрощают процесс создания решений на базе искусственного интеллекта Vision. Эти блокноты поставляются с готовыми конфигурациями, необходимыми зависимостями, моделями и пошаговыми руководствами, что упрощает создание приложений. В частности, есть специальный блокнот Colab для ANPR (автоматического распознавания номерных знаков).

В этой статье, используя ноутбук Ultralytics Colab для ANPR, мы рассмотрим, как построить ANPR-решение, используя Ultralytics YOLO11 для обнаружения номерных знаков и GPT-4o Mini для распознавания текста. 

Понимание ANPR 

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

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

__wf_reserved_inherit
Рис. 1. Пример использования YOLO11 для обнаружения номерного знака.

В настоящее время пункты взимания платы, парковочные системы и правоохранительные органы все чаще полагаются на ANPR для эффективного отслеживания транспортных средств.

Проблемы, связанные с технологией ANPR

Хотя система ANPR быстро идентифицирует транспортные средства, все же существуют некоторые проблемы, которые могут повлиять на ее точность. Вот несколько распространенных проблем, которые могут повлиять на эффективность работы системы ANPR:

  • Плохое освещение и плохая погода: Ночью и в плохую погоду номерные знаки становится труднее читать. Туман, дождь и блики фар могут размыть текст, сделав его нечитаемым.
  • Размытые или заблокированные номера: Быстро движущийся автомобиль может оставить размытое изображение, особенно если выдержка камеры слишком длинная. Грязь, царапины или закрытые части номерного знака также могут вызвать проблемы с распознаванием. Использование высококачественных камер с правильными настройками помогает получить более четкие результаты.
  • Несоответствующий дизайн тарелок: Не все таблички выглядят одинаково. Некоторые имеют причудливые шрифты, дополнительный текст или логотипы, которые запутывают систему.
  • Риски конфиденциальности и безопасность данных: Безопасное хранение данных об автомобиле имеет большое значение. Правильные меры безопасности могут предотвратить несанкционированный доступ и обеспечить защиту информации. При надлежащих мерах безопасности системы ANPR могут быть надежными и безопасными.

Как YOLO11 улучшает системы ANPR

Ultralytics YOLO11 позволяет сделать системы ANPR более быстрыми и точными. Он быстро обрабатывает изображения, сохраняя при этом точность, и не требует больших вычислительных мощностей, поэтому хорошо подходит для любых систем - от небольших камер наблюдения до крупных дорожных систем.

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

Благодаря мгновенной идентификации автомобилей YOLO11 помогает сократить время ожидания, предотвратить ошибки и повысить безопасность. Это делает движение более плавным, а работу парковок, пунктов взимания платы и систем видеонаблюдения - более эффективной.

Построение системы ANPR с помощью YOLO11 и GPT-4o Mini

Далее мы рассмотрим, как построить систему ANPR с помощью YOLO11 и GPT-4o Mini. 

Для этого решения мы будем использовать код, представленный в блокноте Ultralytics Google Collab. Блокнот Google Colab прост в использовании, и каждый может создать систему ANPR, не прибегая к сложной настройке.

Шаг 1: Настройка среды

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

Мы установим пакет Ultralytics Python, как показано ниже. Этот пакет содержит предварительно обученные модели, утилиты для обучения и инструменты для вывода, облегчающие обнаружение и распознавание номерных знаков с помощью YOLO11.

__wf_reserved_inherit
Рис. 2. Установка пакета Ultralytics Python.

Также нам понадобится настроить GPT-4o Mini для распознавания текста. Поскольку GPT-4o Mini отвечает за извлечение текста из обнаруженных табличек, нам нужен API-ключ для доступа к модели. Этот ключ можно получить, подписавшись на GPT-4o Mini API. После получения ключа его можно добавить в блокнот Colab, чтобы система могла подключаться к модели и обрабатывать номера номерных знаков.

После завершения настройки и запуска кода установки YOLO11 будет готов к обнаружению номерных знаков, а GPT-4o Mini - к распознаванию и извлечению из них текста.

Шаг 2: Загрузите обученную модель

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

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

__wf_reserved_inherit
Рис. 3. Загрузка модели и видеофайла.

Шаг 3: Загрузите видео и начните обнаружение

Когда модель готова, пора посмотреть на нее в действии. Сначала видеофайл загружается для обработки, обеспечивая его корректное открытие. Затем настраивается программа записи видео, чтобы сохранить обработанный материал с обнаруженными номерными знаками, сохранив при этом исходный размер и частоту кадров. Наконец, загружается модель для обнаружения номерных знаков в каждом кадре видео.

__wf_reserved_inherit
Рис. 4. Чтение видео и загрузка модели.

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

Шаг 4: Извлечение текста из номерных знаков

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

Как только пластина выделена, GPT-4o Mini анализирует изображение, выделяет цифры и буквы и преобразует их в читаемый текст. Распознанный текст затем добавляется в видео, маркируя каждую обнаруженную пластину в режиме реального времени.

После выполнения этих шагов система ANPR полностью готова к работе и легко распознает номерные знаки. 

Шаг 5: Сохранение обработанного видео

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

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

__wf_reserved_inherit
Рис. 5. Использование YOLO11 и GPT-4o Mini для ANPR.

Развертывание системы ANPR

После создания и тестирования решения ANPR следующим шагом будет его развертывание в реальной среде. Большинство моделей Vision AI зависят от высокопроизводительных вычислений, но Ultralytics YOLO11 оптимизирован для Edge AI. Она может эффективно работать на небольших устройствах, не требуя облачных вычислений или постоянного подключения к Интернету, что делает ее отличным выбором для мест с ограниченными ресурсами.

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

__wf_reserved_inherit
Рис. 6. Обнаружение номерных знаков с помощью YOLO11.

В то же время в районах со стабильным интернет-соединением облачные системы ANPR могут работать с несколькими камерами одновременно. Например, в торговом центре она может отслеживать автомобили на разных въездах и сохранять номера в центральной системе, облегчая мониторинг парковки, повышая безопасность и удаленно управляя потоком автомобилей.

Дальнейшая судьба ANPR

Создать систему автоматического распознавания номерных знаков (ANPR) очень просто с помощью Ultralytics YOLO11. Она точно распознает номерные знаки и может быть настроена для адаптации к различным условиям и требованиям.

Системы ANPR повышают безопасность, упрощают управление парковками и улучшают контроль за дорожным движением. Автоматизация распознавания номерных знаков позволяет сократить количество ошибок, ускорить идентификацию и повысить эффективность отслеживания транспортных средств в различных приложениях.

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

Давайте вместе построим будущее
искусственного интеллекта!

Начните свое путешествие в будущее машинного обучения

Начните бесплатно
Ссылка копируется в буфер обмена