Розробка 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