Для анализа занятости парковки нужно отдельно проверить:
- геометрию каждого места;
- перекрытия соседними автомобилями;
- дальние ряды;
- тени;
- снег;
- мокрый асфальт;
- ночное освещение.
Что должна отвечать система
Для каждого места нужен статус:
- свободно;
- занято;
- неизвестно.
Статус «неизвестно» важен.
Если:
- место закрыто грузовиком;
- камера засвечена;
- снег скрывает разметку;
- обзор временно перекрыт,
лучше честно показать неопределённость, чем ошибочно заявить «свободно».
Сначала нумеруем места
Каждому парковочному месту задаём:
- ID;
- область анализа в кадре (ROI);
- направление;
- соседние места.
Так можно отдельно анализировать ошибки по конкретной зоне.
Ракурс
Критично:
- видеть границы мест;
- не допускать существенного перекрытия автомобилей друг другом;
- учитывать колонны;
- не ставить камеру слишком низко;
- учитывать перспективное уменьшение дальних мест.
Один широкий обзор иногда охватывает много мест, но дальние места могут стать ненадёжными для анализа.
День и ночь
Проверяем:
- солнце;
- тени;
- фары;
- фонари;
- IR;
- мокрый асфальт;
- отражения.
Пилот только днём не подтверждает круглосуточную работу.
Разные автомобили
В тест должны попадать:
- маленькая машина;
- SUV;
- фургон;
- высокий автомобиль;
- мотоцикл — если он релевантен площадке.
Большая машина может перекрыть соседнее место и изменить перспективу.
Снег
Если объект работает зимой:
- разметка может исчезнуть;
- сугробы меняют геометрию;
- свободное место физически становится непригодным.
Это нужно либо учитывать алгоритмом/сценарием, либо обозначать как ограничение.
Занятость парковки и распознавание номеров — разные задачи
Занятость парковки
Ответ: место свободно или занято?
LPR/ANPR
Ответ: какой автомобиль/номер?
Для номера нужны другие:
- угол;
- экспозиция;
- выдержка;
- расстояние.
Hanwha прямо предупреждает, что настройка распознавания номеров может делать изображение слишком тёмным для обычного общего наблюдения.
Поэтому одна камера не обязана идеально решать обе задачи.
Въезд/выезд и количество свободных мест
Есть два разных подхода к определению занятости:
По каждому месту
Аналитика проверяет отдельные парковочные места.
По входу/выходу
Считается поток автомобилей: въехало - выехало = занятость.
Второй подход не показывает, какое конкретно место свободно, но может быть полезен для оценки общей вместимости.
Номера на въезде
LPR может использоваться для:
- доступа;
- поиска автомобиля;
- списки разрешённых и запрещённых номеров;
- истории въезда.
Axis License Plate Verifier поддерживает сценарии парковки и контроля доступа с обработкой на совместимой камере.
Но это отдельный модуль проекта.
Табло свободных мест
После проверки определения занятости данные можно передавать:
- на табло;
- карту;
- приложение;
- API.
Сначала валидируем источник данных, потом делаем интеграцию.
Навигация к свободным местам
Можно показывать:
- число свободных мест;
- свободно по этажам;
- направление.
Но точность навигации не может быть выше точности исходного определения занятости.
Уведомление «парковка заполнена»
Axis приводит практический пример анализа занятости: при заполнении всех мест система может активировать визуальный сигнал.
То есть результат определения занятости может не только отображаться на панели, но и запускать действие.
Незаконная парковка
Это другой сценарий:
- остановившийся автомобиль;
- парковка в запрещённой зоне;
- превышение допустимого времени стоянки.
Не смешиваем его с обычным определением свободного или занятого места.
Пилот
Сначала тестируем:
- 5–20 характерных мест;
- ближние/дальние;
- разные условия.
Фиксируем:
- фактическая занятость по ручной проверке;
- результат аналитики;
- ошибочное определение свободного места как занятого;
- ошибочное определение занятого места как свободного;
- неопределённый результат.
Точность
Не сводим всё к одному проценту.
Полезно отдельно считать:
- ошибочное определение места как свободного — наиболее опасная ошибка для навигации;
- ошибочное определение свободного места как занятого;
- неопределённый результат.
Для бизнеса эти ошибки имеют разную цену.
Как проходит проект
1. Карта
Места и ряды.
2. Показатель
Занятость отдельных мест или всей парковки.
3. Rакурс
Существующие или новые камеры.
4. Пилотная проверка
Разные условия.
5. Ручная проверка фактической занятости
Ручная сверка.
6. Анализ ошибок
Ошибочное определение места как свободного или занятого.
7. Интеграция
Только после проверки результатов.
Как принимаем
Берём список реальных мест.
Для каждого:
- фактический статус;
- статус системы;
- время;
- условие.
Отдельно проверяем:
- ночь;
- сложный автомобиль;
- частичное перекрытие.
Что прислать
- план парковки;
- число мест;
- фото/видео;
- существующие камеры;
- нужно ли определять занятость конкретного места;
- нужен ли LPR;
- табло/API;
- крытая/открытая парковка.
Частые вопросы
Можно использовать существующие камеры?
Иногда, если геометрия подходит.
Нужно распознавание номеров для определения занятости?
Нет.
Можно одной камерой и места, и номера?
Иногда, но задачи имеют разные требования и должны проверяться отдельно.
Нужен сервер?
Зависит от архитектуры аналитики; часть функций может работать на самой камере.
Что важнее — общий процент точности?
Лучше отдельно контролировать ошибки «свободно», ошибки «занято» и неопределённые результаты.