
Оценка быстродействия детекторов YOLO на Raspberry Pi 5 HAT+
c_eye 11 минут назад Оценка быстродействия детекторов YOLO на Raspberry Pi 5 HAT+ Средний 7 мин 309 Python * Raspberry Pi * Linux * Машинное обучение * Искусственный интеллект Кейс В предыдущей статье я описал процесс...
<5 — 2026'da uzaya kaç SpaceX Starship fırlatması ulaşacak?
Значимый прорыв формирует отрасль ИИ: c_eye 11 минут назад Оценка быстродействия детекторов YOLO на Raspberry Pi 5 HAT+ Средний 7 мин 309 Python * Raspberry Pi * Linux * Машинное обучение * Искусственный интеллект Кейс В предыдущей статье я описал процесс компиляции модели yolo8n в HEF-файл для нейрочипа HAILO-8L в модуле HAT+. В этой работе я оцениваю быстродействие инференса нескольких моделей YOLO для этого же чипа. ЗадумкаРасскажу немного о поставленной задаче, для которой все это и задумывалось.
Я решил сделать систему видеонаблюдения с сервером на базе малинки с использованием своей нейросети. Да, производители уже давно встраивают в свои видеокамеры наблюдения алгоритмы, распознающие людей и движения в кадре. Но после некоторого опыта использования устройств Xiaomi я сделал вывод, что мне не нравится работа встроенных нейронок: людей иногда не детектирует, а срабатывания на движения слишком частые (ветер двигает ветки, траву, насекомые летают и тд.
Технические детали
К тому же все видеоданные идут через китайские сервера, из-за этого возникают большие задержки записи в NAS. Появилась идея сделать стандартную систему наблюдения со своим сервером, но внести немного своей лепты в виде личной нейронки и обработки детекций с записью и доп сигналами. Если это будет интересно, то может еще что-то напишу о развитии этой задумки.
А пока выбираем нейронку для детекции. ЗадачаБерем несколько моделей YOLO и пробуем скомпилировать для них соответствующие бинарники для имеющегося нейрочипа малинки для оценки быстродействия их инференса, чтобы:Выяснить соответствие закладываемых возможностей, а именно: сколько потоков видео сможет обрабатывать нейрочип в режиме реального времени, и сможет ли вообще тянуть больше одного. Понимать возможности нейрочипа для нескольких разных моделей.
Я решил взять следующий пул моделей:YOLO8nYOLO8sYOLO10nYOLO10sYOLO12nYOLO12sYOLO26nYOLO26sКомпиляция HEFВ момент проведения работ я решил взять модели, экспортированные в onnx формат с разрешением входа (640, 640). В будущем для видеонаблюдения буду брать (640, 480). В данный момент это не критично.
Отраслевые последствия
Действуя по алгоритму из предыдущей статьи с небольшими изменениями, готовим конфигурационные файлы, необходимые для компиляции. Сначала получаем первичные har файлы для каждой модели. Для этого каждую модель прогоняем через netron.
app и берем оттуда названия конечных узлов. Образец ниже:from hailo_sdk_client import ClientRunner TARGET_CHIP = "hailo8l" END_NODES = print("Формирование har runner = ClientRunner(hw_arch=TARGET_CHIP) runner. translate_onnx_model( "yolo8n.
onnx", end_node_names=END_NODES ) print("Сохранение har файла модели runner. har Проделывая так для каждой модели по очереди я обнаружил, что у моделей семейства 12n и 12s узлы reshape и transpose пронизывают всю модель, встречаясь в архитектуре уже от самой середины.
Этот прогресс даёт важные сигналы о будущем отрасли, и технологический мир внимательно наблюдает.





