Упаковали свой опыт развертывания системы мониторинга транспортного потока — Smart Traffic System — на Rockchip и SOPHON в один стройный R&D пайплайн. Пошагово, со сроками. Как от сердца отрываем.
Сохраняйте, чтобы под рукой иметь план на случай, если задумаете исследовать возможность развертывания системы видеоаналитики на целевом устройстве.
Ну что, начнём?
Этап #1: выбор операционной системы и дистрибутивов (2-5 дней)
-
Анализ документации и выбор ОС
Изучение документации по поддерживаемым операционным системам.
Анализ совместимости различных дистрибутивов с целевой аппаратной платформой.
Выбор наиболее подходящей операционной системы на основе требований проекта и возможности использования нейросетевых (или других) ускорителей.
-
Установка и тестирование ОС
Установка выбранной операционной системы на целевое устройство.
Установка необходимых драйверов для аппаратного ускорителя.
Проведение базового тестирования ОС для проверки её корректной работы.
Этап #2: настройка аппаратно-программной среды (2-10 дней)
-
Установка драйверов и библиотек
Установка драйверов для всех подключенных устройств и компонентов системы.
Установка библиотек для обработки видеопотоков (например, OpenCV, Gstreamer).
Установка библиотек для конвертации и inference обученных моделей с использованием аппаратных ускорителей (например, Rknn-toolkit, BMCV).
-
Настройка среды разработки
Конфигурация среды разработки и настройка переменных окружения.
Проверка возможности запуска базовых скриптов и примеров от производителя для удостоверения в корректной настройке среды.
Этап #3: запуск и анализ демонстрационных примеров (2-5 дней)
-
Ознакомление с примерами
Изучение доступных демонстрационных примеров от производителя аппаратной платформы.
Запуск демонстрационных примеров на целевом устройстве.
Анализ производительности примеров и их соответствие целям проекта.
-
Проверка производительности
Тестирование системы на базовых примерах для оценки её производительности.
Выявление и документирование потенциальных проблем и узких мест.
Этап #4: конвертация модели детекции объектов (1-6 дней)
Выбор модели для детекции объектов
Выбор оптимальной модели на основе требований к точности и производительности, а также доступных версий модели YOLO.
-
Конвертация модели
Преобразование модели для работы на целевой аппаратной платформе (например, использование TensorRT).
Тестирование производительности конвертированной модели на целевом устройстве.
Этап #5: конвертация и тестирование трекера объектов (10-15 дней)
-
Анализ и выбор трекеров объектов
Исследование доступных трекеров объектов (например, DeepSORT, ByteTracker).
Выбор оптимального трекера на основе требований к скорости и точности трекинга.
-
Конвертация трекеров
Преобразование трекеров (конвертация моделей и подготовка препроцессинга и постпроцессинга) для работы на целевой платформе.
Тестирование производительности трекеров на целевом устройстве.
Этап #6: интеграция детектора и трекера и оптимизация производительности (10-15 дней)
-
Интеграция детектора и трекера
Объединение детектора и трекера в единую систему для обработки видеопотоков.
Проверка функциональности интегрированной системы.
-
Оптимизация производительности
Оптимизация кода для достижения стабильной обработки видеопотоков в реальном времени.
Тестирование системы для обеспечения стабильности и высокой производительности.
Этап #7: экспериментальные настройки для повышения точности (от 3 дней)
-
Оценка текущей точности
Анализ текущей точности детекции и трекинга на тестовых данных.
-
Экспериментальные настройки моделей
Проведение серии экспериментов с различными гиперпараметрами моделей.
-
Финальная оценка точности
Проведение тестов на валидационных данных для подтверждения улучшений в точности.
Документирование достигнутого уровня точности и сравнение с целевыми показателями.
Этап #8: установка и настройка административного интерфейса
-
Подготовка к установке:
Проверка системных требований административного интерфейса.
Обеспечение совместимости интерфейса с новым устройством.
-
Установка административного интерфейса:
Инсталляция и настройка административного интерфейса (сервисы для админ панели).
-
Интеграция в сервис компьютерного зрения (rtdts):
Добавление нового способа inference в сервис.
Создание настроек для нового способа inference
-
Тестирование и проверка:
Проведение функционального тестирования административного интерфейса.
Проверка корректности работы всех функций и модулей интерфейса.
Исправление выявленных ошибок и повторное тестирование.
-
Документация:
Подготовка документации по установке и настройке интерфейса.
На этом всё. Был ли у вас аналогичный опыт? Будем рады обратной связи.
Подробнее о развертывании Smart Traffic System на устройствах Rockchip и Sophon в предыдущих статьях:
Есть ли жизнь после Nvidia? Часть 1: исследование возможностей Rockchip RK-3588S-PC
Есть ли жизнь после Nvidia? Часть 2: исследование возможностей SOPHON AI Micro Server SE5-16
Подробнее о системе мониторинга транспортного потока Smart Traffic System — на официальном сайте.
ivankudryavtsev
А в чем вы видите смысл и пользу от статьи? Чтобы читатель что <placeholder>?
Выглядит как статья ради ссылочной массы, потому что пользы от нее, я, в частном порядке, вижу ровно ноль.
CodeInsideTeam Автор
Иван, спасибо за комментарий.
Возможно для вас она оказалось примитивной, и вместе с тем, для тех людей, которые никогда не разворачивали софт на платформе, последовательность шагов может оказаться полезной.
ivankudryavtsev
Хорошо, что хоть вы сами в это верите)