Мой блог
Локальное компьютерное зрение на одном ядре CPU: как система «Ночной глаз» распознает объекты на воде
Лаборатория Comexp Research Lab и группа компаний «Барс» завершили серию испытаний совместного аппаратно-программного решения: навигационная система ночного видения для катеров под названием «Ночной глаз» получила специализированный модуль детекции на базе технологии TAPe+ML. Разработка объединяет комбинированную съемку с оптической RGB-камеры и тепловизора с нейросетевыми алгоритмами распознавания препятствий непосредственно на борту судна.
Внедрение компактной модели позволяет экипажу не просто просматривать видеопоток в сумерках или полной темноте, но и автоматически классифицировать навигационные знаки, суда и плавающие преграды. Локальное компьютерное зрение обеспечивает обнаружение объектов в кадре без постоянного подключения к облачной инфраструктуре и без применения энергоемких дискретных видеокарт.
Зачем навигационным комплексам ночного видения компьютерное зрение
Управление маломерным судном в ночных условиях создает высокую когнитивную нагрузку на судоводителя. Картинки с камеры или тепловизора в темноте часто недостаточно: оператору необходимо непрерывно контролировать акваторию, выдерживать створ и следить за появлением потенциально опасных препятствий. В реальных условиях на воде присутствуют не только крупные суда и подсвеченные буи, но и полузатопленные бревна, отмели или выступающие камни, которые трудно различить невооруженным глазом.
Комплекс «Ночной глаз» изначально разрабатывался для формирования контрастного изображения при критически низкой освещенности. Интеграция алгоритмов детекции трансформирует комплекс в аналитический прибор: контуры обнаруженных плавсредств и ориентиров маркируются ограничивающими рамками с указанием класса прямо на дисплее. По итогам предварительного тестирования и сопоставления с архитектурами семейства YOLO разработчики выбрали платформу TAPe+ML за счет ее низких требований к вычислительным ресурсам.
Архитектурные особенности TAPe+ML и возможности для встраиваемых систем
Технология TAPe позиционируется разработчиками как компактный подход к обработке информации, позволяющий запускать ресурсоемкие нейросетевые сценарии на ограниченном оборудовании. При объеме параметров менее 100 тысяч модель TAPe+ML достигает точности 88,1% на датасете ImageNet-1k и показателя 65,3% mAP50–95 на бенчмарке COCO.

Для производителей портативных и бортовых устройств такие параметры открывают возможность внедрять компьютерное зрение класса SOTA в формате On-Premise. В рамках проекта лаборатория предоставила команде комплекса «Ночной глаз» инструментарий платформы ml.comexp.net:
- модуль пакетной загрузки обучающих и валидационных датасетов;
- инструменты ручной разметки и полуавтоматической аннотации;
- вычислительные средства для тренировки моделей и оценки точности;
- программный интерфейс (API) для интеграции с исполнительными устройствами и автоматизации обработки данных.
Сбор предметного датасета и специфика работы на воде
Разработкой компонента машинного зрения со стороны проекта «Ночной глаз» руководил специалист по внедрению ИИ Илья Егоров. Инженер взял на себя подготовку обучающей выборки, дообучение модели и программное сопряжение с аппаратурой, в то время как аппаратная команда отвечала за оптические сенсоры и вычислительные блоки на катере.
Первоначальный массив данных состоял из стандартных RGB-фотографий катеров и буев. Позже выборку расширили ночными видеозаписями, кадрами с собственных сенсоров комплекса и тепловизионными термограммами. На финальном этапе тренировочный набор насчитывал 2205 снимков, а валидационный — 506 изображений. Ключевая задача состояла в том, чтобы зафиксировать объекты под разными углами, на различных дистанциях и на контрастном фоне береговой линии.
Нехватка редких классов: бревна, малые препятствия и погодные помехи
В ходе разметки выяснилось, что доступность иллюстративного материала в сети обратно пропорциональна его ценности для безопасности судоходства. Найти кадры катеров и маркировочных знаков не составляет труда, тогда как качественные изображения топляка или едва выступающих из воды камней практически отсутствуют в открытых базах.

Для тестовой тренировки детектора бревен удалось собрать лишь 15 изображений (10 для обучения и 5 для валидации), чего хватило для начальной калибровки компактной сети, но потребовало выделения малых препятствий в отдельную программу сбора данных. Также в базовых материалах отсутствовали снимки в условиях плотного тумана. В план следующих релизов заложили системную съемку водных объектов в тумане и сбор тепловизионных кадров на коротких дистанциях непосредственно с бортовых камер.
Полуавтоматическая разметка и очистка аннотаций через API
Процесс разметки оптимизировали с помощью встроенного в платформу механизма автоаннотации. Вместо ручной отрисовки каждого полигона инженер проверял и корректировал предложенные алгоритмом варианты. Параллельно проводилась чистка базы: удалялись ошибочные наложения рамок и устранялись конфликты классификации. В общей сложности через скрипты было удалено 416 дублирующихся боксов в 282 файлах.
Интерфейс API позволил автоматизировать рутинные манипуляции с каталогом: менять классификаторы у размеченных объектов (например, при слиянии категорий обычных и светящихся буев), а также подсчитывать распределение классов между тренировочной и тестовой выборками перед каждым этапом дообучения.
Формирование базового набора классов
Для первой рабочей версии разработчики сузили спектр распознаваемых сущностей. Схожие подклассы объединили, сосредоточившись на двух магистральных направлениях: плавсредствах любого типа и навигационных буях. Такой подход помог достичь устойчивой детекции ключевых навигационных ориентиров без распыления ресурсов на второстепенные цели.

Результаты испытаний комплекса на акватории
После тренировки модель связали с бортовой аппаратурой «Ночного глаза». В ходе полевых заездов видеопоток с тепловизора и оптического сенсора направлялся через API на обработку, а результирующие координаты объектов передавались в пользовательский интерфейс. В итоговом прогоне точность модели достигла показателей F1 0,723 и mAP50 0,735.
Дифференциация буев и плавсредств
Одной из главных практических задач стало разграничение буев и маломерных лодок. На тепловизионной картинке низкого разрешения точечный силуэт лодки на дистанции внешне похож на навигационный знак. Базовая открытая модель классифицировала точечные объекты на воде исключительно как лодки, тогда как дообученная сеть безошибочно присваивала метку буя на основании специфических признаков формы и теплового следа.
Аппаратная связка и программный конвейер
Тестовая конфигурация оборудования включала оптическую камеру, тепловизор и компактный микрокомпьютер RDBox. В ходе испытаний соединение с облачной платформой организовывалось через мобильный модем. Разработанный интегратором сервис на Python считывал координаты рамок от API TAPe+ML и накладывал графические оверлеи поверх видеоряда на мониторе судоводителя в режиме реального времени.
Дальность фиксации и отработка ложных срабатываний
Натурные испытания подтвердили способность алгоритма обнаруживать лодки на удалении до 500 метров. Участники тестов зафиксировали, что на “сырых” кадрах тепловизора и камеры на таком расстоянии объект еще не определялся глазом как судно. В то же время проявились краевые эффекты: при проходе под мостом система ошибочно приняла красные габаритные огни пролета за световой буй. Эту особенность планируют устранить добавлением в датасет отдельного класса мостовых конструкций и отражений ночной подсветки.

Локальное компьютерное зрение без облака и видеокарт
Следующим этапом развития проекта стал отказ от облачного сервиса в пользу полной автономности. В качестве серийного дисплейного модуля рассматривается защищенный планшет на Android с подключенными сенсорами. Бортовой формат гарантирует работу ассистента в открытых водоемах вне зон покрытия сотовых сетей.
В процессе адаптации TAPe+ML под архитектуру центрального процессора исходный размер дистрибутива сократился с 28–30 МБ (потреблявших 30–60% одного ядра RDBox) до 4,2 МБ. Столь компактный размер позволил полностью разместить параметры нейросети во встроенной кеш-памяти процессора, исключив постоянную пересылку весов через оперативную память. Время инференса одного кадра на единственном ядре CPU составляет от 8,6 до 15,8 миллисекунд.
Коммерческая модель и процесс интеграции решения
Сотрудничество между разработчиком платформы и производителем навигационного оборудования выстраивается по интеграционной схеме. Лицензирование привязывается к объему обработанных кадров: базовый пакет ресурсов входит в цену готового комплекта «Ночного глаза», а дальнейшее пополнение рассчитывается исходя из интенсивности эксплуатации (для сезонных частных катеров или круглогодичных коммерческих судов). Комплекс планируется вывести на рынки Ближнего Востока и Европы.

Для внедрения аналогичных CV-модулей в сторонние промышленные системы платформа ml.comexp.net предлагает стандартизированный цикл адаптации:
- Загрузка специализированного набора изображений (RGB, ночная оптика, ИК-диапазон).
- Первичная разметка и подключение механизма полуавтоматической аннотации.
- Обучение, аналитика метрик детекции и балансировка классов.
- Программная связка через REST/WebSocket API для валидации прототипа.
- Сборка оптимизированного On-Premise бинарного файла объемом 4,2 МБ под процессорную платформу заказчика.
