Розпізнавання дорожніх знаків: де ламається на реальних дорогах
На розмічених наборах даних системи розпізнавання дорожніх знаків показують точність, близьку до ідеальної, а на реальній дорозі починають помилятися.
Розрив виникає не через модель, а через різницю між тестовою вибіркою та потоком з камери: змінюється світло, експозиція, стан покриття й самі щити. Розбираємо, де саме ламається детекція знаків на відео.
Перша група збоїв — світло. Низьке сонце в контровому режимі дає відблиск на щиті, і знак перетворюється на білу пляму без читаного контуру; уночі до цього додаються засвітка від фар і пересвіт від зустрічних джерел.
Узимку картина ускладнюється: засніжений щит втрачає форму, а нахилений після вітру знак виходить із зони впевненого виявлення.
Складні погодні умови працюють у парі з якістю дорожньої розмітки. Стерта, заметена снігом або перекрита потоком розмітка збиває прив'язку: знак знайдено, але незрозуміло, до якої смуги він належить, і рішення щодо маневру будувати немає на чому. Та сама невизначеність виникає, коли щит перекритий вантажівкою або йде за перегин дороги.
Окрема стаття — хибні спрацювання. Рекламні конструкції з подібною геометрією, яскраві банери, наклейки на кузовах дають події там, де жодного знака немає.
Поки фільтрація за формою, кольором і положенням у кадрі слабка, оператор отримує потік сумнівних тривог і перестає довіряти системі.
Далі розбираємо, як кожен із цих класів відмов закривається — на рівні знімання кадру, попередньої обробки та постфільтрації подій.
Вимірюваний ефект: точність, стійкість, час реакції
Точність детекції та повнота розпізнавання вимірюються не «на око», а на відкладеній вибірці кадрів з розміткою за ГОСТ Р 52290 — окремо за знаками, окремо за розміткою та стоп-лініями.
Метрики розводять за класами: рідкісні знаки пріоритету та тимчасові таблички провалюються першими, тому за ними звітність окрема. Підсумок впровадження — частка кадрів, де система впевнено видає об'єкт, а не усереднена цифра по всій вибірці.
Стійкість до погоди перевіряється сценаріями, а не середньою точністю: зустрічне сонце, сутінки, дощ зі струменями на склі, сніг, заліплений брудом знак, тінь від фури.
За кожним сценарієм фіксується частка пропусків і частка хибних спрацювань — вони розходяться на порядок і визначають, чи потрібне на конкретній ділянці друге джерело даних.
Час обробки кадру — це бюджет, який ділиться між виявленням об'єкта, супроводом його між кадрами та фільтрацією хибних відміток. Якщо кадр у нього не вкладається, система або втрачає темп, або «наздоганяє» й віддає координати із затримкою — на швидкості це зміщує точку реакції. Після оптимізації конвеєра розкид часу на кадр падає, і затримка стає передбачуваною.
Зниження ручних правок вважається в частці кадрів, які оператор дорозмічує сам. Замкнений цикл — система позначає невпевнені кадри, розмітник підтверджує або виправляє, корпус іде на донавчання — за кілька ітерацій зсуває цю частку в рази.
Далі приймання йде за метриками на фіксованому наборі сценаріїв, регрес проганяється на кожному оновленні моделі, а спірні кадри потрапляють в навчальний корпус, а не в ручний розбір.
Підходи до розпізнавання: порівняння режимів роботи
Вибір режиму — це компроміс між затримкою реакції, стійкістю каналу та вартістю обчислювального заліза в машині.
Якщо зв'язок на ділянці рветься, а рішення потрібне за частки секунди, вся логіка їде на борт; якщо парк різнорідний і модель часто оновлюється, дешевше рахувати на сервері. Нижче — порівняння режимів, які ми застосовуємо в проєктах розпізнавання дорожніх знаків і розмітки.
| Варіант | Коли підходить | Обмеження |
|---|---|---|
| Обробка на борту | Магістралі та ділянки з нестабільним зв'язком, вимоги до миттєвої реакції, робота в тунелях | Залізо в машині обмежене, оновлення моделі потребує регламенту роздачі на парк |
| Обробка на сервері | Міський парк зі стійким каналом, централізований моніторинг, часті оновлення моделі | Чутливість до якості зв'язку та затримки каналу, обсяг трафіку з камер |
| Гібридна схема | Змішаний парк: на борту — швидкий відбір кандидатів, на сервері — перевірка й аналітика | Складніше в налагодженні: потрібно узгодити версії моделі на борту та в контурі |
Окрема вісь — донавчання під регіон: набір знаків, стан розмітки та сезонні умови відрізняються, тому базову модель ми доводимо на локальній вибірці кадрів.
У гібридній схемі це найзручніше: оновлена модель роздається на борт без перепрошивки, а спірні кадри йдуть у розбір і повертаються в навчальний набір.
Режим вибирається за вашою ділянкою та парком — розбираємо це до старту, щоб не переробляти контур потім.
Як відбувається впровадження: етапи інженерної роботи
Порядок робіт однаковий для будь-якого об'єкта — змінюється лише обсяг: магістраль, платна траса та територія підприємства дають різну щільність знаків і розмітки. Впровадження йде ітераціями, і після кожного етапу залишається перевірюваний артефакт.
- Аудит дорожньої сцени. Розбираємо маршрут: які знаки та типи розмітки трапляються, за якого освітлення, де знак перекритий кущами, фурою або брудом. На виході — перелік класів і сценаріїв, які система зобов'язана закривати.
- Збір і розмітка датасету. Беремо реальні записи об'єкта, а не лише відкриті набори: у кожного регіону своя форма опор, дублювальні щити, тимчасові знаки на ремонті. Розмітку ведемо з перехресною перевіркою — інакше модель вивчить помилку як норму.
- Навчання та валідація моделі. Частину даних тримаємо окремо й не показуємо під час навчання. Дивимося не загальну точність, а поведінку за кожним класом: помилка на рідкісному знаку коштує дорожче, ніж на масовому.
- Налаштування порогів. Підбираємо впевненість, за якої система видає рішення, а за якої передає кадр оператору. Для асистента важливіше не пропустити, для фіксації порушень — не видати хибне спрацювання.
- Приймання на контрольній ділянці. Перевіряємо на записах, яких не було ні в навчанні, ні в налаштуванні: ніч, дощ, засвітка від фар. Рахуємо пропуски та хибні спрацювання за класами й фіксуємо як базу для порівняння після оновлень.
- Передача в експлуатацію. Віддаємо конфігурацію, схему розгортання, порядок донавчання на нових даних і відкату до попередньої версії моделі.
Комплект постачання: конфігурації, схеми та регламенти
Комплект постачання — це не архів файлів, а набір артефактів, за якими ваші інженери зможуть вести систему без нас: розгорнути її на новому контурі, змінити поріг спрацювання, додати клас знака.
Кожен пункт перевіряється на прийманні — якщо за документом не можна відтворити конфігурацію або підняти розпізнавання з нуля, пункт вважається неповним.
- Конфігурація системи: пороги впевненості за класами, перелік розпізнаваних знаків і типів розмітки, прив'язка камер до зон і смуг, правила відбраковування дублікатів. Зберігається в системі контролю версій — зміна простежується до автора й дати.
- Схеми потоків даних: шлях кадру від захоплення до запису події, точки буферизації при обриві каналу, поведінка черги при перевантаженні, склад і формат вихідної події для суміжних систем.
- Політики доступу та ролі: хто змінює пороги, хто лише дивиться метрики, хто вивантажує кадри для розбору, як ведеться журнал дій адміністраторів.
- Документація на модель: склад класів, точність і повнота за кожним на відкладеній вибірці, умови застосовності та межі деградації — ніч, дощ, забруднений або частково закритий знак.
- Регламент супроводу: періодичність перевірки якості на свіжих даних, порядок додавання нового класу знака, умови відкату на попередню версію та час відновлення.
- Порядок розбору помилок: картка інциденту з кадром і вердиктом, критерії віднесення кадру в навчальну вибірку, відповідальний і строк реакції.
- Набір еталонних кадрів і протокол приймання: зафіксовані сцени, за якими якість замірюється до і після будь-якої зміни.
Комплект закриває три питання: як система налаштована, чому працює саме так і що робити при збої. Передаємо його разом із навчанням ваших інженерів — опишіть задачу, повернемося з оцінкою та планом.
Кейс: точність на складній ділянці до та після
Проєкт запускали на ділянці з щільним потоком і частою зміною покриття: асфальт, бетонні плити, затяжний ремонт зі стертою розміткою.
Працювали з Оператором регіональної мережі дорожнього моніторингу — до впровадження загальна модель розпізнавала знаки на 82% кадрів удень, а в дощ і контровому світлі пропускала до 14 знаків на 100.
Хибних спрацювань на кілометр шляху було близько шести: система реагувала на рекламні щити та покажчики, схожі за формою.
Що дало приріст
Три зміни. Перше — донавчання на рідкісних класах: тимчасові знаки, знаки в чохлах, стерта й залита водою розмітка. Друге — підтвердження об'єкта за кількома кадрами підряд, щоб одиночні спалахи моделі не доходили до оповіщення. Третє — окрема гілка обробки для ночі та опадів з автоматичним підлаштуванням експозиції кадру.
Як перевіряли
Контрольну ділянку довжиною 12 км розмітили вручну двома незалежними операторами, спірні кадри виносили на третій розбір.
Метрики знімали в чотирьох погодних вікнах — ясно, дощ, сніг, ніч — на одній і тій самій ділянці та одному й тому самому транспорті, щоб порівняння було чесним.
Підсумок: точність удень зросла з 82% до 96%, у негоду та вночі — з 61% до 89%. Пропуски скоротилися з 14 до 2 на 100 знаків, хибні спрацювання — з шести до менш ніж двох на кілометр.
Окремо відзначили стабільність: у снігопад супровід об'єкта більше не розривався, а відкат на попередню модель займав один цикл оновлення.
Що робити, якщо систему вже розгорнуто на автопарку
Чинну систему розпізнавання дорожніх знаків рідко варто переписувати цілком — починаємо з аудиту поточної моделі на записах з вашого парку. Дивимося, де саме вона помиляється: знаки обмеження швидкості в сутінках, тимчасові знаки в зоні ремонту, ділянки зі стертою розміткою.
Окремо звіряємо датасет з реальними умовами — модель нерідко навчена на чистих денних кадрах, а працює на запиленій оптиці.
Аудит розбирає конвеєр по шарах: захоплення кадрів, детекція, прив'язка до маршруту, видача події в телеметрію.
Часто причина збоїв не в самій моделі, а в розсинхроні часу між камерами, битих кадрах або різній калібруванні оптики — це лікується налаштуванням, без перенавчання та заміни обладнання.
Якщо точності не вистачає, робимо доналаштування без простою: нова версія йде паралельно з чинною на тому самому потоці, розходження рахуються за кожним класом знаків, і перемикання відбувається лише після того, як вони вкладаються в узгоджений поріг. Відкат на попередню версію — один крок.
Сумісність з парком вирішується за групами: тип машини, висота й кут установки камери, сезонний бруд дають помітно різну якість. Кадри проблемних груп ідуть на донавчання точково, а не усереднюються по всьому потоці.
Поетапна міграція дозволяє змінювати шарами — наприклад, лише детекцію, зберігши попередню логіку видачі подій. Експлуатація при цьому не зупиняється: переходимо за групами транспорту, і наступна стартує лише після циклу без деградації.
Технічні сумніви перед стартом проєкту
Питання на старті стосуються частіше умов експлуатації, ніж самої моделі: що буде в дощ, уночі, на стертій розмітці та при обриві зв'язку. Нижче — короткі відповіді на ті, що задають до підписання плану робіт.
Як система працює вночі та в негоду?
Ніч, дощ і засвітка від фар ідуть у навчальній вибірці окремими блоками, а не залишком кадрів. Кожен об'єкт отримує оцінку впевненості: темний або змазаний кадр позначається як непідтверджений і йде на перевірку, а не вгадується.
Що зі стертою розміткою?
Лінію добудовують за поздовжніми кромками, контрастом покриття та слідом з попередніх кадрів — короткі розриви й затерті ділянки перекриваються. Там, де відновити не можна, ділянка отримує знижену вагу в розрахунку.
Чи можна донавчити модель на наших даних?
Так. Розмічаємо записи з ваших ділянок, додаємо до навчальної вибірки й перенавчаємо. Класи, на яких модель уже працює, залишаються у вибірці — інакше якість на них просяде. Спірні кадри відкладаємо до наступного циклу.
Що відбувається при втраті сигналу або збої?
Розпізнавання йде на бортовому обчислювачі, тому обрив зв'язку його не зупиняє: кадри та результати пишуться в буфер і довантажуються, коли канал повернеться. Окремий процес стежить за модулями й перезапускає завислий — відновлення займає секунди.
Як ви перевіряєте якість?
Тестовий набір збираємо з поїздок, що не потрапили в навчання, і рахуємо повноту та точність за кожним класом окремо — удень і вночі, у дощ і по сухій дорозі. Розходження з навчальною вибіркою показує, яких даних моделі не вистачає.
Обговоримо задачу та повернемося з планом робіт
Щоб повернутися до вас із планом впровадження, а не із загальними міркуваннями, нам потрібен мінімальний набір вхідних даних щодо розпізнавання дорожніх знаків і розмітки.
Нижче — що саме запитуємо в замовника до старту: цього достатньо, щоб оцінити обсяг робіт, ризики та назвати реалістичні строки.
- Постановка задачі. Які класи знаків і типи розмітки в пріоритеті, чи потрібен лише факт виявлення або ще оцінка стану — знос, перекриття, часткове стирання.
- Вихідні матеріали. Відеозйомка з реальних камер на ваших ділянках, включно зі складними умовами: ніч, дощ, низьке сонце, брудна оптика. За ними оцінюємо реальну точність, а не лабораторну.
- Критерії приймання. На якій частці кадрів вважаємо спрацювання правильним, як формуємо перевірочну вибірку і що вважаємо критичною помилкою — пропуск знака або хибне спрацювання.
- Точки інтеграції. Куди йде результат: карта, диспетчерський пункт, бортова система, база даних. Потрібен формат вивантаження та допустима затримка.
- Обмеження за строками. Чи є жорсткі дати — випробування, здача етапу, запуск на об'єкті, — і чи можна розбити роботу на черги за ділянками.
- Доступи та майданчик. Тестовий контур, куди розгортаємо модель, права на дані зйомки та вимоги щодо їх зберігання.
Опишіть задачу в цих рамках — повернемося з оцінкою, планом етапів і тим, що потрібно буде від вашого боку на кожному з них.







