ЖУРНАЛ СТА №2/2026
для прохождения до объекта и обратно к камере). Улучшение мощности си- стем обработки привело к смене пара- дигмы в компьютерном зрении. В част- ности, классификация изображений и распознавание объектов перешли на использование нейронных сетей. Од- ной из первых таких сетей была так на- зываемая AlexNet в 2012 году. Кроме то- го, этот тип сети можно использовать для обнаружения конкретных элемен- тов, таких как пешеходы. Этот тип сети использует наборы свёр- точных слоёв, извлекающих данные, ко- торые используются плотной нейрон- ной сетью для классификации изобра- жения. Для обучения этих сетей исполь- зуются размеченные наборы данных, что позволяет получить классификато- ры с высокой способностью к обобще- ниюи значениями точности, далеко вы- ходящими за рамки тех, что дают клас- сические методы. Для правильного об- учения эти наборы данных должны быть большого объёма, а в случае их не- достаточности существуют методы, поз- воляющие улучшить обучение с мень- шим количеством изображений, решая проблему переобучения. Несмотря на хо- рошие результаты в точности, необхо- димо учитывать высокую вычислитель- ную стоимость при работе с этим типом сети, что делает её дорогой и сложной для работы в реальном времени. Для улучшения работы в реальном времени и ускорения вычислений было предложено несколько математических моделей. Они обычно называются алго- ритмами «один выстрел» из-за их спо- собности локализовать область с наибо- лее релевантной информацией на изоб- ражении. Среди этих алгоритмов наибо- лее известны Faster R-CNN, SSD и YOLO. Эти алгоритмымогут обрабатывать изоб- ражения в реальном времени на устрой- ствах с ограниченными ресурсами. Рас- смотрим алгоритм для обнаружения лю- дей SSD. По сравнению с классическими методами, он медленнее в обучении, но имеет лучшие результаты как по време- ни, так и по точности в выводе. Встраиваемая система обработки: аппаратные и программные компоненты Поскольку одним из требований к предлагаемой системе является её пор- тативность и гибкость для развёртыва- ния, выбор аппаратной встраиваемой платформы является одной из основ- ных задач, решаемых в разработке. Од- ной из целей была разработка прило- жения ИИ для встраиваемой системы, которое могло бы обнаруживать, отсле- живать и подсчитывать людей. Пред- ложенная архитектура была основана на распараллеливании нескольких про- цессов для наиболее эффективного ис- пользования доступных аппаратных модулей. Анализ был разделён на два процесса, которые общаются через ис- пользование независимых буферов. Для тестирования алгоритмов искус- ственного интеллекта на VPU наибо- лее часто используется платформа OpenVINO™, упрощающая оптимизацию и развёртывание свёрточных нейрон- ных сетей (CNN). Платформа OpenVINO™ включает два различных инструмента, показанных на рис. 1: оптимизатор мо- делей (Model Optimizer) и движок вывода (Inference Engine). Эти инструменты поз- воляют оптимизировать модель и сни- зить время выполнения, используя для этого различные аппаратные платфор- мы, например процессоры Intel (CPU), ускорители нейросетей (VPU) или графи- ческие процессоры (GPU). Одно из пре- имуществ этой платформы заключается в том, что её можно установить на любое устройство, отвечающее минимальным требованиям. Это также позволяет уста- навливать оба модуля раздельно: опти- мизатор моделей – на компьютере, ис- пользуемом для обучения сети, а движок вывода – во встраиваемой системе. Оптимизатор моделей представляет собой консольное приложение, которое позволяет адаптировать и оптимизиро- вать нейронные модели для ускоре- ния вывода. Оптимизатор моделей OpenVINO™ поддерживает различные фреймворки, такие как TensorFlow, PyTorch или Caffe. В результате его рабо- ты создаются файлы промежуточного представления: файл с расширением .xml, описывающий слои, размеры и со- единения архитектуры, и файл с расши- рением .bin, содержащий веса парамет- ров этой архитектуры. Что касается движка вывода, он может быть установ- лен на любом устройстве независимо от оптимизатора моделей. Движок вывода загружает IR-файлы и выполняет вывод на выбранном пользователем оборудо- вании, будь то CPU, VPU или GPU. Кроме того, движок вывода отвечает за балан- сировку нагрузки при выводе, чтобы не перегружать отдельные устройства. Та- ким образом, вычислительная нагрузка распределяется либо между ядрами CPU, либо между несколькими VPU. Обработка изображений с применением ИИ для обнаружения и отслеживания людей на встраиваемых системах Основной идеей разработки прило- жения на основе ИИ является создание инструментария, способного обнару- живать, отслеживать и подсчитывать людей во встраиваемой системе. На рис. 2 представлена архитектура реше- ния, основанная на параллелизации нескольких процессов с целью макси- мально эффективного использования доступных аппаратных модулей. Ана- лиз был разделён на два взаимосвязан- ных процесса, обменивающихся дан- ными через промежуточные буферы. В первом процессе – так называемом процессе аналитики данных – выпол- нялись предварительная обработка изображения и постобработка инфор- мации, возвращённой движком вывода ИИ. До предварительной обработки к изображению могли применяться раз- личные алгоритмы: снижение шума, детектор границ или другие методы низкоуровневой обработки пикселей для улучшения качества изображения. Однако, поскольку такая низкоуровне- вая предобработка зависит от конкрет- ного сценария применения и привно- сит дополнительные вычислительные затраты, она была сведена к минимуму: выбор области интереса (ROI), 300 пик- селей и нормализация значений пиксе- СТА 2/2026 48 www.cta.ru ОБ ЗОРЫ Рис. 1. Архитектура OpenVINO™ Предобработка набора данных Модель фреймворка Обученная модель Движок вывода OpenVINO Оптимизатор модели OpenVINO IR (.xml, .bin) Фаза обучения Фаза инференса/развёртывания Данные приложения Пример предсказания
Made with FlippingBook
RkJQdWJsaXNoZXIy MTQ4NjUy