Алгоритмы компьютерного зрения для встраиваемых систем

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

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

Основные направления

Моно- и стереозрение

Мы разрабатываем алгоритмы для одиночных и стереокамер:

  • обнаружение и сопровождение объектов;
  • оценка движения в кадре;
  • поиск препятствий;
  • выделение границ, контуров и характерных точек;
  • оценка геометрии сцены;
  • построение карты глубины;
  • оценка расстояний;
  • восстановление трехмерной структуры сцены.

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

Системы кругового обзора

Мы разрабатываем алгоритмы для многокамерных систем кругового обзора:

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

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

Локализация и построение карты

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

Решаемые задачи:

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

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

Обнаружение и сопровождение объектов

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

Возможные задачи:

  • обнаружение людей, автомобилей, препятствий, разметки, знаков и промышленных объектов;
  • сопровождение объектов между кадрами;
  • оценка скорости и направления движения;
  • фильтрация ложных срабатываний;
  • объединение результатов от нескольких камер;
  • оценка расстояния до объектов;
  • контроль зон безопасности.

Мы оптимизируем алгоритмы не только по точности отдельного кадра, но и по устойчивости во времени.

Трехмерная реконструкция в реальном времени

Мы разрабатываем алгоритмы восстановления пространственной структуры сцены:

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

Такие решения используются там, где важно понимать не только изображение, но и форму, расстояние и положение объектов в пространстве.

Работа с разными типами датчиков

Мы обрабатываем данные не только с камер, но и с лидаров, радаров, ультразвуковых и инерциальных датчиков.

Для таких данных решаются задачи:

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

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

Объединение данных датчиков

Мы разрабатываем алгоритмы объединения данных от камер, лидаров, радаров, ультразвуковых и инерциальных датчиков.

Это позволяет:

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

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

Автоматическая калибровка

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

Калибровка может выполняться:

  • по калибровочным таблицам;
  • по известным геометрическим объектам;
  • по разметке сцены;
  • по движению камеры;
  • по естественным признакам реального окружения;
  • по данным, накопленным во время эксплуатации.

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

Автоматическая калибровка особенно важна для серийных продуктов, где ручная настройка каждой системы дорога, медленна и плохо масштабируется.

Калибровка по таблицам и в реальных сценах

Мы используем два дополняющих подхода.

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

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

Сочетание этих подходов позволяет получить точную начальную настройку и поддерживать качество калибровки в течение всего жизненного цикла продукта.

Метрики и проверка качества

Мы строим разработку вокруг измеримых показателей качества.

В зависимости от задачи оцениваются:

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

Такие метрики позволяют сравнивать версии алгоритмов, контролировать ухудшения при изменениях и подтверждать готовность решения к внедрению.

Лабораторная и полевая валидация

Мы проверяем алгоритмы в лаборатории и в реальных условиях эксплуатации.

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

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

Работа в реальном времени

Для встраиваемых систем важно, чтобы алгоритм был не только точным, но и вычислительно эффективным.

Мы оптимизируем решения с учетом:

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

Цель — получить решение, которое стабильно работает в реальном времени и не перегружает систему.

Для каких задач

Наши услуги подходят для проектов, где требуется автоматическое понимание сцены и пространственного окружения:

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

Что получает заказчик

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

Мы можем подготовить:

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

Наш подход

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

Наш подход основан на трех принципах:

  1. Измеримая точность — качество алгоритма подтверждается объективными метриками.
  2. Работа в реальном времени — решение соответствует ограничениям конечного устройства.
  3. Системная надежность — камеры, датчики, калибровка и алгоритмы работают как единая согласованная система.