ОПК 
13 марта 2024

Адаптация программного комплекса «ЧИЖ» для работы на отечественном ускорителе NM Vision

Одна из приоритетных задач современной России - оснащение отечественного произ­водства системами на основе "искусственного интеллекта" (ИИ). Эти системы решают ши­рокий круг задач, в частности - обеспечивают контроль продукции в режиме реального времени, безопасность в сложных условиях и т.д.

Развитие и внедрение систем ИИ требует сильной и производительной элементной базы - т.н. ускорителей нейросетевых вычислений. Во встраиваемых производственных системах и системах безопасности такие ускорители реализованы в виде одноплатных микрокомпьютеров. До недавнего времени домини­рующие позиции в России занимал микрокомпьютер Jetson Nano компании NVIDIA. Однако в марте 2022 г. NVIDIA официально объявила об уходе из России.

И сегодня перед отечественными компаниями стоит задача обеспечения импортозамещения в области ИИ. Одним из примеров успеш­ной работы в этом направлении является адаптация программного комплексча "ЧИЖ" для работы на отечественном микрокомпьютере NM Vision, вы­пускаемом НТЦ "Модуль".

КОМПЛЕКС "ЧИЖ"

Программно-технический комплекс компьютерно­го зрения "ЧИЖ" (производства компании "Техтранс") включает в себя ПО, использующее модель компьютер­ного зрения YOLOv4 для детекции людей на железно­дорожном переходе. Задача комплекса - обнаружение человека на объектах инфраструктуры железных до­рог и его информирование о необходимости выхода из опасной зоны путем подачи светового или звукового сигнала. Работа ПТК "ЧИЖ" предполагает считыва­ние RTSP-потока с четырех камер и программного объ­единения четырех кадров в единый кадр, на котором происходит обнаружение объектов. Ведется контроль состояния камеры и проверка факторов влияния внеш­ней среды, таких как засветление и запыление и т. д.

ХОД АДАПТАЦИИ ПТК "ЧИЖ" ПОД ОТЕЧЕСТВЕННЫЙ МИКРОКОМПЬЮТЕР

В связи с уходом компании NVIDIA с российского рынка встал вопрос об адаптации программного ком­плекса "ЧИЖ" для работы на отечественном ускори­теле. Российским ана­логом NVIDIA Jetson Nano является микрокомпьютер NM Vision про­изводства НТЦ "Модуль". Однако он заметно отличается от зарубежного образца.

В ходе работ по адаптации вы­явился ряд дополнительных осо­бенностей. Первой из них стала несовместимость программного обе­спечения. Специальный компилятор нейронных сетей NMDL (NeuroMatrix Deep Learning), входящий в состав ПО ядер NeuroMatrix (производства НТЦ "Модуль"), реали­зован на языке программирования C++, а ПТК "ЧИЖ" -на языке Python, из-за чего было невозможно напря­мую управлять NM Mezzo mini. В качестве решения произведена интеграция C++ функций в библиотеку для языка Python с помощью модуля Pybind11, который связывает скомпилированные биб­лиотеки в формате .so с интерпретатором Python. Это позволило использо­вать программное обеспечение модуля NM Mezzo mini на языке Python.

Вторая особенность заключается в ограниченной поддержке различных слоев, используемых для по­строения сверточных нейронных сетей, ускорителем NeuroMatrix, в результате чего использование детекто­ра YOLOv4 не представлялось возможным. Для реше­ния этой задачи был произведен переход на детектор YOLOv5, все слои которого поддерживаются нейро­ускорителем. Данный переход позволил дообучить бо­лее точную и легкую модель на имеющихся трениро­вочных данных.

Третья особенность нейроускорителя заключает­ся в поддержке операций FP32 и FP64, в то время как Jetson Nano поддерживает FP32 и FP16. Кроме того Jetson Nano, являясь продуктом NVIDIA, поддерживает библиотеку для ускорения нейросетевых вычислений TensorRT, что в совокупности с использованием опера­ций половинной точности FP16 дает высокую скорость обработки. Тесты показали, что Jetson Nano выигры­вает по скорости примерно в пять раз по сравнению с NM Mezzo mini. Для ликвидации этого отставания раз­работчики воспользовались уникальной возможностью NM Mezzo mini производить обработку сразу на четы­рех независимых юнитах, по сути, запуская четыре не­зависимые модели, которые обрабатывают данные па­раллельно, что невозможно реализовать на Jetson Nano.

Потоковая обработка шла в несколько этапов и позволила одновременно загрузить все четыре юнита нейроускорителя, получая данные с каждого из них в тот момент, пока остальные заняты обработкой. Также потоковая обработка позволила увеличить скорость об­работки кадров примерно в три раза, достигнув таким образом 30 FPS для модели YOLOv5n с разрешением 320х320. Таким образом, удалось достичь результатов детекции, сравнимых по точности и скорости с моделью YOLOv4 на Jetson Nano.

Анализ хода адаптации ПТК "ЧИЖ" под отечествен­ный микрокомпьютер позволяет сделать ряд выводов. Отечественные вычислители дают большой спектр воз­можностей по разработке программного обеспечения, использующего различные модели сверточных нейрон­ных сетей, с учетом некоторых ограничений, связанных с использованием определенных слоев нейронных се­тей. Описанная уникальная возможность производить независимые вычисления на четырех юнитах позволи­ла увеличить скорость обработки в три раза без поте­ри точности. Таким образом, скорость обработки на NM Vision сравнима со скоростью обработки на Jetson Nano, при этом точность обработки NM Vision выше.


Научно-технический центр "Модуль" (НТЦ "Модуль") - российский лидер в области разработки и производства бортового оборудования и микроэлектронного дизайна. Компания основана в 1990 году. Ключевые направления деятельности: бортовая аппаратура, микроэлектронные компоненты и IP-блоки, искусственный интеллект, нейронные сети, навигация.


ООО "Техтранс" более 25 лет занимается разработкой аппаратуры обеспечения безопасности на объектах ОАО "РЖД". Приоритетное направление - разработка программно-технических комплексов компьютерного зрения на основе ИИ. Оборудование компании представлено на объектах инфраструктуры шести железных дорог России. "Техтранс" специализируется на оказании услуг по разработке программных и аппаратных решений на основе современных технологий компьютерного зрения и глубокого машинного обучения, а также проведении практических исследований для применения технологий искусственного интеллекта в сфере медицины и энергосбережения.