Телефон: 8-800-350-22-65
Напишите нам:
WhatsApp:
Telegram:
MAX:
Прием заявок круглосуточно
График работы офиса: с 9:00 до 21:00 Нск (с 5:00 до 19:00 Мск)

Статья опубликована в рамках: Научного журнала «Студенческий» № 17(355)

Рубрика журнала: Информационные технологии

Скачать книгу(-и): Сборник статей конференции

Библиографическое описание:
Борисов К.А. РАЗРАБОТКА СРЕДЫ ПРОГРАММНОЙ ЭМУЛЯЦИИ API MAIXCAM ДЛЯ РАЗРАБОТКИ И ОТЛАДКИ ПРИЛОЖЕНИЙ КОМПЬЮТЕРНОГО ЗРЕНИЯ НА ПЕРСОНАЛЬНОМ КОМПЬЮТЕРЕ // Студенческий: электрон. научн. журн. 2026. № 17(355). URL: https://sibac.info/journal/student/355/414769 (дата обращения: 14.06.2026).

РАЗРАБОТКА СРЕДЫ ПРОГРАММНОЙ ЭМУЛЯЦИИ API MAIXCAM ДЛЯ РАЗРАБОТКИ И ОТЛАДКИ ПРИЛОЖЕНИЙ КОМПЬЮТЕРНОГО ЗРЕНИЯ НА ПЕРСОНАЛЬНОМ КОМПЬЮТЕРЕ

Борисов Кирилл Аркадьевич

студент, Физико-технический институт, Петрозаводский государственный университет,

РФ, г. Петрозаводск

Екимов Константин Анатольевич

научный руководитель,

канд. физ.-мат. наук, доц., Физико-технический институт, Петрозаводский государственный университет,

РФ, г. Петрозаводск

DEVELOPMENT OF A MAIXCAM API EMULATION ENVIRONMENT FOR DEVELOPING AND DEBUGGING COMPUTER VISION APPLICATIONS ON A PERSONAL COMPUTER

 

Borisov Kirill Arkadevich

student, Physics and Technology Institute, Petrozavodsk State University,

Russia, Petrozavodsk

Ekimov Konstantin Anatolevich

Scientific supervisor, Candidate of Physical and Mathematical Sciences, Associate Professor, Physics and Technology Institute, Petrozavodsk State University,

Russia, Petrozavodsk

 

АННОТАЦИЯ

В статье рассматривается проблема разработки и отладки приложений компьютерного зрения для встраиваемых платформ с аппаратным ускорением нейронных сетей. На примере устройства MaixCAM анализируются ограничения существующих средств разработки, включая отсутствие полноценной эмуляции среды выполнения и невозможность эффективной многопользовательской работы. Предложен подход к созданию среды программной эмуляции API платформы, обеспечивающий разработку, отладку и тестирование приложений на персональном компьютере без модификации исходного кода. Разработан набор библиотек, реализующих ключевые компоненты системы, включая захват видеопотока, нейросетевую детекцию и отслеживание объектов. Представлена архитектура решения, основанная на подмене реализации API при сохранении интерфейса. Реализована методика автоматического определения среды выполнения. Дополнительно показана возможность применения разработанной системы в образовательных задачах и для быстрого прототипирования алгоритмов без необходимости использования аппаратной платформы.

ABSTRACT

This article examines the development and debugging of computer vision applications for embedded platforms with hardware-accelerated neural networks. Using the MaixCAM device as an example, it analyzes the limitations of existing development tools, including the lack of full runtime emulation and the inability to effectively support multi-user operation. An approach to creating a software emulation environment for the platform's API is proposed, enabling the development, debugging, and testing of applications on a personal computer without modifying the source code. A set of libraries implementing key system components, including video stream capture, neural network detection, and object tracking, is developed. A solution architecture based on replacing the API implementation while preserving the interface is presented. A method for automatically detecting the runtime environment is implemented. Additionally, the system can be used for educational purposes and rapid prototyping without requiring access to hardware.

 

Ключевые слова: компьютерное зрение, embedded системы, MaixCAM, эмуляция API, разработка, отладка.

Keywords: computer vision, embedded systems, MaixCAM, API emulation, development, debugging.

 

Введение

Современные технологии компьютерного зрения активно внедряются во встраиваемые системы, что обусловлено развитием технологий edge computing. Использование специализированных платформ, таких как MaixCAM, позволяет обрабатывать видеопоток в реальном времени непосредственно на устройстве.

Однако процесс создания и тестирования программного обеспечения для подобных систем сопряжён с рядом трудностей. Основными из них являются ограниченный доступ к аппаратным ресурсам, невозможность одновременной работы нескольких разработчиков, а также отсутствие полноценных средств эмуляции среды выполнения [1].

Существующие инструменты разработки, такие как MaixCDK, MaixPy и среда MaixVision [1], позволяют выполнять отдельные компоненты на персональном компьютере, однако не обеспечивают целостной среды разработки и не поддерживают отладку приложений без использования устройства.

Дополнительной областью применения подобных решений является образовательный процесс. Использование встраиваемых платформ в учебных курсах затруднено из-за ограниченного количества оборудования и сложности его настройки. В этих условиях программная эмуляция интерфейса устройства позволяет выполнять лабораторные работы и изучать алгоритмы без необходимости физического доступа к платформе.

В рамках данной работы разработка системы ориентировалась не только на задачи прикладного программирования, но и на использование в образовательной среде, что определяет требования к переносимости, воспроизводимости и простоте использования.

Целью данной работы является разработка программной платформы, реализующей эмуляцию программного интерфейса платформы MaixCAM, обеспечивающей разработку, тестирование и прототипирование алгоритмов компьютерного зрения на персональном компьютере, а также возможность их применения в образовательных и исследовательских задачах без использования физического устройства.

 

Рисунок 1. Фото MaixCAM

 

Архитектура системы

Предложенное решение основано на создании слоя программной эмуляции API, обеспечивающего единый способ взаимодействия с системой независимо от среды выполнения.

 

Рисунок 2. Архитектура системы

 

Архитектура включает следующие уровни:

  • прикладное приложение;
  • единый API;
  • реализация для устройства и ПК.

Ключевым элементом является механизм автоматического определения среды выполнения:

try:

    import maix.nn as nn

    IS_MAIXCAM = True

except ImportError:

    import maix_Libs.nn as nn

    IS_MAIXCAM = False

Данный подход обеспечивает возможность разработки и отладки одного и того же приложения в различных средах без изменения исходного кода.

Реализация

Система включает следующие модули:

  • camera - захват видеопотока;
  • nn - нейросетевая детекция;
  • tracker - отслеживание объектов;
  • display - визуализация;
  • image - обработка изображений;
  • app - управление выполнением;
  • sys - системные функции.

Обработка данных осуществляется в рамках унифицированного конвейера:

 

Рисунок 3. Обработка данных

 

На персональном компьютере используются библиотеки OpenCV [3] и YOLOv8 [2], что позволяет выполнять разработку и тестирование алгоритмов без физического устройства.

Для решения задачи детекции объектов используются современные нейросетевые подходы семейства YOLO [4].

Для отслеживания объектов применяется подход, аналогичный алгоритму ByteTrack [5].

 

Рисунок 4. Запуск кода на устройстве MaixCAM.

 

Рисунок 5. Запуск кода на ПК

 

Сравнение с существующим решением

Таблица 1.

Сравнение с MaixCDK

Критерий

MaixCDK

Предложенное решение

Запуск на ПК

Да

Да

Среда разработки

Ограничена

Частично

Отладка без устройства

Ограничена

Да

Эмуляция API

Частичная

Расширенная

Работа с видеопотоком

Ограничена

Да

Офлайн-тестирование

Нет

Да

 

Как видно из таблицы, предложенное решение обеспечивает более удобную среду разработки и отладки приложений.

Результаты

Применение разработанной системы позволило:

  • обеспечить создание программных решений без доступа к устройству;
  • реализовать тестирование алгоритмов на персональном компьютере;
  • сократить время разработки;
  • обеспечить многопользовательскую работу над проектом.
  • использовать систему в образовательных лабораторных работах.

Реализованная система может использоваться как среда разработки, позволяющая выполнять отладку алгоритмов компьютерного зрения на ранних этапах.

Анализ применения разработанного решения показывает, что основная часть логики приложения может быть реализована и протестирована на персональном компьютере.

Ограничения

Предложенный подход не является полной эмуляцией устройства и не учитывает:

  • особенности работы аппаратного ускорителя;
  • задержки видеопотока;
  • периферийные интерфейсы.

Заключение

В работе предложена среда программной эмуляции API платформы MaixCAM, обеспечивающая разработку и отладку приложений компьютерного зрения на персональном компьютере.

Реализованная система позволяет выполнять разработку без физического устройства, ускоряет процесс создания приложений и обеспечивает возможность коллективной работы.

Система изначально ориентирована на применение в образовательных задачах, что позволяет использовать её для проведения лабораторных работ и изучения методов компьютерного зрения без необходимости использования специализированного оборудования.

Практическая значимость работы заключается в возможности использования разработанной системы как инструмента создания и тестирования embedded AI-приложений.

 

Список литературы:

  1. Sipeed. Документация MaixCAM и MaixPy [Электронный ресурс]. – Режим доступа: https://wiki.sipeed.com/maixpy/ (дата обращения: 01.05.2026).
  2. Ultralytics. YOLOv8 Documentation [Электронный ресурс]. – Режим доступа: https://docs.ultralytics.com/ (дата обращения: 01.05.2026).
  3. Bradski G., Kaehler A. OpenCV Library // Dr. Dobb’s Journal of Software Tools. – 2000.
  4. Redmon J., Farhadi A. YOLOv3: An Incremental Improvement // arXiv:1804.02767. – 2018.
  5. Zhang Y., Sun P., Jiang Y. et al. ByteTrack: Multi-Object Tracking by Associating Every Detection Box // Proceedings of ECCV. – 2022.