Разработка AI-системы распознавания дорожных знаков и разметки

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

Распознавание дорожных знаков: где ломается на реальных дорогах

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

Первая группа сбоев — свет. Низкое солнце в контровом режиме даёт блик на щите, и знак превращается в белое пятно без читаемого контура; ночью к этому добавляются засветка от фар и пересвет от встречных источников. Зимой картина усугубляется: заснеженный щит теряет форму, а наклонённый после ветра знак уходит из зоны уверенного обнаружения.

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

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

Дальше разбираем, как каждый из этих классов отказов закрывается — на уровне съёма кадра, предобработки и постфильтрации событий.

Измеримый эффект: точность, устойчивость, время реакции

Точность детекции и полнота распознавания измеряются не «на глаз», а на отложенной выборке кадров с разметкой по ГОСТ Р 52290 — отдельно по знакам, отдельно по разметке и стоп-линиям. Метрики разводят по классам: редкие знаки приоритета и временные таблички проваливаются первыми, поэтому по ним отчётность отдельная. Итог внедрения — доля кадров, где система уверенно выдаёт объект, а не усреднённая цифра по всей выборке.

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

Время обработки кадра — это бюджет, который делится между обнаружением объекта, сопровождением его между кадрами и фильтрацией ложных отметок. Если кадр в него не укладывается, система либо теряет темп, либо «догоняет» и отдаёт координаты с задержкой — на скорости это смещает точку реакции. После оптимизации конвейера разброс времени на кадр падает, и задержка становится предсказуемой.

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

Подходы к распознаванию: сравнение режимов работы

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

Вариант Когда подходит Ограничения
Обработка на борту Магистрали и участки с нестабильной связью, требования к мгновенной реакции, работа в тоннелях Железо в машине ограничено, обновление модели требует регламента раздачи на парк
Обработка на сервере Городской парк с устойчивым каналом, централизованный мониторинг, частые обновления модели Чувствительность к качеству связи и задержке канала, объём трафика с камер
Гибридная схема Смешанный парк: на борту — быстрый отбор кандидатов, на сервере — проверка и аналитика Сложнее в отладке: нужно согласовать версии модели на борту и в контуре

Отдельная ось — дообучение под регион: набор знаков, состояние разметки и сезонные условия отличаются, поэтому базовую модель мы доводим на локальной выборке кадров. В гибридной схеме это удобнее всего: обновлённая модель раздаётся на борт без перепрошивки, а спорные кадры уходят в разбор и возвращаются в обучающий набор.

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

Как проходит внедрение: этапы инженерной работы

Порядок работ одинаков для любого объекта — меняется только объём: магистраль, платная трасса и территория предприятия дают разную плотность знаков и разметки. Внедрение идёт итерациями, и после каждого этапа остаётся проверяемый артефакт.

  1. Аудит дорожной сцены. Разбираем маршрут: какие знаки и типы разметки встречаются, при каком освещении, где знак перекрыт кустами, фурой или грязью. На выходе — перечень классов и сценариев, которые система обязана закрывать.
  2. Сбор и разметка датасета. Берём реальные записи объекта, а не только открытые наборы: у каждого региона своя форма опор, дублирующие щиты, временные знаки на ремонте. Разметку ведём с перекрёстной проверкой — иначе модель выучит ошибку как норму.
  3. Обучение и валидация модели. Часть данных держим отдельно и не показываем при обучении. Смотрим не общую точность, а поведение по каждому классу: ошибка на редком знаке обходится дороже, чем на массовом.
  4. Настройка порогов. Подбираем уверенность, при которой система выдаёт решение, а при которой передаёт кадр оператору. Для ассистента важнее не пропустить, для фиксации нарушений — не выдать ложное срабатывание.
  5. Приёмка на контрольном участке. Проверяем на записях, которых не было ни в обучении, ни в настройке: ночь, дождь, засветка от фар. Считаем пропуски и ложные срабатывания по классам и фиксируем как базу для сравнения после обновлений.
  6. Передача в эксплуатацию. Отдаём конфигурацию, схему развёртывания, порядок дообучения на новых данных и отката к прошлой версии модели.

Комплект поставки: конфигурации, схемы и регламенты

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

  • Конфигурация системы: пороги уверенности по классам, перечень распознаваемых знаков и типов разметки, привязка камер к зонам и полосам, правила отбраковки дубликатов. Хранится в системе контроля версий — изменение прослеживается до автора и даты.
  • Схемы потоков данных: путь кадра от захвата до записи события, точки буферизации при обрыве канала, поведение очереди при перегрузке, состав и формат выходного события для смежных систем.
  • Политики доступа и роли: кто меняет пороги, кто только смотрит метрики, кто выгружает кадры для разбора, как ведётся журнал действий администраторов.
  • Документация на модель: состав классов, точность и полнота по каждому на отложенной выборке, условия применимости и границы деградации — ночь, дождь, загрязнённый или частично закрытый знак.
  • Регламент сопровождения: периодичность проверки качества на свежих данных, порядок добавления нового класса знака, условия отката на предыдущую версию и время восстановления.
  • Порядок разбора ошибок: карточка инцидента с кадром и вердиктом, критерии отнесения кадра в обучающую выборку, ответственный и срок реакции.
  • Набор эталонных кадров и протокол приёмки: зафиксированные сцены, по которым качество замеряется до и после любого изменения.

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

Кейс: точность на сложном участке до и после

Проект запускали на участке с плотным потоком и частой сменой покрытия: асфальт, бетонные плиты, затяжной ремонт со стёртой разметкой. Работали с Оператором региональной сети дорожного мониторинга — до внедрения общая модель распознавала знаки на 82% кадров днём, а в дождь и контровом свете пропускала до 14 знаков на 100. Ложных срабатываний на километр пути было около шести: система реагировала на рекламные щиты и указатели, похожие по форме.

Что дало прирост

Три изменения. Первое — дообучение на редких классах: временные знаки, знаки в чехлах, стёртая и залитая водой разметка. Второе — подтверждение объекта по нескольким кадрам подряд, чтобы одиночные вспышки модели не доходили до оповещения. Третье — отдельная ветка обработки для ночи и осадков с автоматической подстройкой экспозиции кадра.

Как проверяли

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

Итог: точность днём выросла с 82% до 96%, в непогоду и ночью — с 61% до 89%. Пропуски сократились с 14 до 2 на 100 знаков, ложные срабатывания — с шести до менее двух на километр. Отдельно отметили стабильность: в снегопад сопровождение объекта больше не разрывалось, а откат на предыдущую модель занимал один цикл обновления.

Что делать, если система уже развёрнута на автопарке

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

Аудит разбирает конвейер по слоям: захват кадров, детекция, привязка к маршруту, выдача события в телеметрию. Часто причина сбоев не в самой модели, а в рассинхроне времени между камерами, битых кадрах или разной калибровке оптики — это лечится настройкой, без переобучения и замены оборудования.

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

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

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

Технические сомнения перед стартом проекта

Вопросы на старте касаются чаще условий эксплуатации, чем самой модели: что будет в дождь, ночью, на стёртой разметке и при обрыве связи. Ниже — короткие ответы на те, что задают до подписания плана работ.

Как система работает ночью и в непогоду?

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

Что со стёртой разметкой?

Линию достраивают по продольным кромкам, контрасту покрытия и следу с предыдущих кадров — короткие разрывы и затёртые участки перекрываются. Там, где восстановить нельзя, участок получает пониженный вес в расчёте.

Можно ли дообучить модель на наших данных?

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

Что происходит при потере сигнала или сбое?

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

Как вы проверяете качество?

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

Обсудим задачу и вернёмся с планом работ

Чтобы вернуться к вам с планом внедрения, а не с общими соображениями, нам нужен минимальный набор входных данных по распознаванию дорожных знаков и разметки. Ниже — что именно запрашиваем у заказчика до старта: этого хватает, чтобы оценить объём работ, риски и назвать реалистичные сроки.

  • Постановка задачи. Какие классы знаков и типы разметки в приоритете, нужен ли только факт обнаружения или ещё оценка состояния — износ, перекрытие, частичное стирание.
  • Исходные материалы. Видеосъёмка с реальных камер на ваших участках, включая сложные условия: ночь, дождь, низкое солнце, грязная оптика. По ним оцениваем реальную точность, а не лабораторную.
  • Критерии приёмки. На какой доле кадров считаем срабатывание верным, как формируем проверочную выборку и что считаем критичной ошибкой — пропуск знака или ложное срабатывание.
  • Точки интеграции. Куда уходит результат: карта, диспетчерский пункт, бортовая система, база данных. Необходим формат выгрузки и допустимая задержка.
  • Ограничения по срокам. Есть ли жёсткие даты — испытания, сдача этапа, запуск на объекте, — и можно ли разбить работу на очереди по участкам.
  • Доступы и площадка. Тестовый контур, куда разворачиваем модель, права на данные съёмки и требования по их хранению.

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

Направления AI-разработки

Последние работы

  • Разработка сайта компании B2B ADVANCE
    Разработка сайта компании B2B ADVANCE
    1542
  • Разработка веб-приложения для компании FEEDME
    Разработка веб-приложения для компании FEEDME
    1394
  • Разработка веб-сайта для компании БЕЛФИНГРУПП
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    1081
  • Разработка интернет магазина для компании FURNORO
    Разработка интернет магазина для компании FURNORO
    1369
  • Разработка логотипа компании B2B Advance
    Разработка логотипа компании B2B Advance
    816
  • Разработка веб-приложения для компании Enviok
    Разработка веб-приложения для компании Enviok
    1142