ИИ-управление умной парковкой
Парковочный комплекс на 600 машиномест, 24 камеры. Оператор следит за экраном с 24 тайлами и вручную обновляет табло «свободно/занято». Ошибки неизбежны — особенно в часы пик, когда состояние меняется каждые 20–30 секунд. CV-система заменяет оператора и ведёт точный real-time учёт мест.
Детекция занятости парковочного места
Задача проще, чем кажется. Не нужно детектировать каждый автомобиль целиком — достаточно классифицировать статус каждого парковочного слота: occupied / free. Два подхода:
Slot-based classification — каждый слот — фиксированный ROI (region of interest) на кадре камеры. Классификатор (MobileNetV3 или EfficientNet-B0) работает на кропе каждого слота. Этот подход быстрее и устойчивее к частичному перекрытию.
Object detection — YOLOv8 детектирует все автомобили, их bounding boxes сопоставляются с разметкой слотов через IoU. Подходит, когда нет фиксированной разметки или парковка open-plan.
На практике slot-based работает надёжнее для крытых многоуровневых паркингов — из-за стабильного ракурса камер. На открытых парковках с переменным освещением (день/ночь, тени от деревьев) лучше YOLOv8 с IR-камерами.
# Slot-based классификация: параллельный инференс всех слотов
import torch
from torchvision import transforms
def classify_slots(frame, slot_coords, model, device='cuda'):
transform = transforms.Compose([
transforms.Resize((64, 64)),
transforms.ToTensor(),
transforms.Normalize([0.485, 0.456, 0.406],
[0.229, 0.224, 0.225])
])
crops = [frame.crop(coord) for coord in slot_coords]
batch = torch.stack([transform(c) for c in crops]).to(device)
with torch.no_grad():
logits = model(batch) # (N_slots, 2)
return logits.argmax(1).cpu().numpy() # 0=free, 1=occupied
MobileNetV3-Small на 600 слотах: 45ms на RTX 3060, что позволяет обрабатывать 22 кадра в секунду — более чем достаточно для парковки, где статус меняется в секунды.
Распознавание номерных знаков на въезде/выезде
Integration с шлагбаумом: ANPR (Automatic Number Plate Recognition) на въездной камере. Стек: YOLOv8 для детекции зоны номера → crop → PaddleOCR или EasyOCR для распознавания символов.
Точность на российских номерах (ГОСТ Р 50577): precision 0.97 при confidence > 0.85, reject rate ~4% (пропущенные или нечёткие номера). Для пропущенных — fallback на ручной ввод или повторное считывание при выезде.
Ночная съёмка: ИК-подсветка 850нм + camera с low-light сенсором (Sony IMX327 или IMX585). PaddleOCR обучен на мультиспектральных данных.
Аналитика и навигация
Реальная ценность системы — не только «занято/свободно», но и:
- Время поиска места (время между въездом и фиксацией занятия слота): среднее и по зонам
- Оборачиваемость мест по часам и дням недели
- Прогноз заполняемости — временные ряды через Prophet или LSTM, горизонт 2–4 часа
Навигация: мобильное приложение или экраны внутри паркинга показывают направление к ближайшим свободным местам. Граф паркинга + алгоритм кратчайшего пути (Dijkstra) от текущей позиции.
Сроки и масштабируемость
| Объём парковки | Камеры | Срок внедрения |
|---|---|---|
| до 100 мест | 4–8 | 3–5 недель |
| 100–500 мест | 8–24 | 5–10 недель |
| 500+ мест, многоуровневая | 24–80 | 10–20 недель |
Edge-деплой на Jetson Orin NX снижает требования к сетевой инфраструктуре — обработка локально, в облако уходит только агрегированная статистика. Стоимость рассчитывается индивидуально.







