Привет, Хабр! Это вторая часть статьи по мотивам доклада реверс-инженера Дмитрия Ильина для прикладной конференции по Data Sience Ai Conf 2025. Дмитрий рассказаПривет, Хабр! Это вторая часть статьи по мотивам доклада реверс-инженера Дмитрия Ильина для прикладной конференции по Data Sience Ai Conf 2025. Дмитрий рассказа

Edge AI: почти всё о видеокамерах с искусственным интеллектом. Часть 2

2026/03/04 14:00
13м. чтение
Для обратной связи или замечаний по поводу данного контента, свяжитесь с нами по адресу [email protected]

Привет, Хабр! Это вторая часть статьи по мотивам доклада реверс-инженера Дмитрия Ильина для прикладной конференции по Data Sience Ai Conf 2025. Дмитрий рассказал о своём проекте OpenIPC, где IPC — это аббревиатура от IP-камера. Изначально он задумывался как специализированный дистрибутив Linux для IP-камер, но со временем превратился в большое комьюнити любителей опенсорса, каждый из которых является носителем уникального кусочка знаний.

85bb63499fe39e1d9d8a8e25b69c18f3.png

В предыдущем материале мы разбирали вопросы видеоаналитики, сравнивали Cloud AI протв Edge AI и изучали, что есть интересного кроме GPU. Освежить материал в памяти можно по ссылке. Сегодня поговорим о многокамерных массивах (Multi Camera Array), мультисенсоры и разберём конкретные кейсы.

Edge Paradigm: проблемы видеоаналитики и варианты решения

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

781c79666284f9a067379a77dafbb3bb.jpeg

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

Computer-Vision-инженеры привыкли использовать инструменты, проверенные временем, и не любят экспериментировать с разными кодеками. Например, знаменитый стандарт сжатия H.264, который мы до сих пор используем в интернете для видео, был выпущен в 2003 году. А стандарт JPEG, который до сих пор многие телефоны используют для фото, был выпущен в 1992-м. С тех пор утекло много времени, и в новых алгоритмах появилось много возможностей оптимизации. В том числе можно сгладить края блоков, но проблема всё равно остаётся.

Что может помочь

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

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

3bba581b7ac30eaa310fcd55d29fd838.jpeg

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

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

09b5960f4b02e91ff720a503911e949c.jpeg

Точность распознавания на RAW-форматах для больших объектов лишь на несколько процентов будет лучше, чем в традиционных RGB-изображениях. Благодаря тому, что нет лишней конвертации цветов, latency такого решения будет гораздо лучше, чем в случае RGB.

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

dd0b45806ac318633c472b2526bb9d02.jpeg

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

Можно установить во дворе лучшую светочувствительную оптику и в принципе получить какое-то изображение автомобилей.

4ade9e04c172f071af703f4a7af8e63b.jpeg

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

3a4bc28f9823e8ddef2def203631870d.jpeg

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

Что касается движущихся объектов, то первый алгоритм для работы с ними появился в чипах ещё 15 лет назад — это детекция движения по двум соседним кадрам.

8b4d27bd07677826442b4e09739f22f1.jpeg

С точки зрения разработчика ПО, внутри камеры появляется специализированный API, вы настраиваете параметры, сколько раз в секунду необходимо производить детекцию. Чип аппаратно выполняет расчёт границ bounded-боксов там, где происходит какое-то движение, и передаёт вам прикладное ПО. Алгоритм основан на определении разницы яркости блоков и вообще не использует никаких нейросетей.

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

Комбинируя детекцию движений и детекцию объектов внутри зон движения, можно оптимизировать вычислительные ресурсы, что особенно важно для слабых устройств. В погоне за оптимизацией можно использовать гибридные онлайн- и офлайн-алгоритмы. Например, в реал-тайме можно определять лицо, а в фоне проводить face-embedding.

3A-алгоритмы

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

bb81f14e296e115e27d39102ee43db2c.jpeg

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

Во всех ISP есть три ключевые функции: автоэкспозиция, баланс белого и автофокус. Они вместе называются 3A, так как настройка любых двух из них зависит от настройки третьей.

Первая из них Auto Exposure (AE). Автоэкспозиция автоматически регулирует выдержку, диафрагму и усиление сигнала, чтобы сделать яркость изображения оптимальной.

feb442c47fa17bfc97328b80357e4f20.jpeg

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

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

Второй алгоритм — это автобаланс белого, Auto White Balance (AWB).

В среде видеоинженеров есть анекдот, что жители Шэньчжэня (Китай), где производится большинство камер в мире, никогда не видели снега. Потому что когда в России наступает зима, на всех форумах видеонаблюдения каждый год появляются вопросы, как «починить» синий снег.

706c1e33ed1de9e85a8005c2ed559220.jpeg

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

Третий алгоритм — Auto Focus (AF).

Алгоритм автофокуса применяется только на камеры с моторизированным объективом, где есть одновременно и оптический зум, и фокус. Современные IP-камеры поддерживают оптический зум вплоть до x50.

536737efbcb2b7399fb7f20a73d61eee.jpeg

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

Мультисенсор

К одному камерному процессору можно подключить несколько сенсоров.

32cb558c6c1a2894dbc45833045e5ac6.jpeg

Например, такая конфигурация синхронизированных сенсоров позволяет снимать панорамы на 180 градусов, что экономит количество камер и стоимость их установки. Более того, модели внутри камеры уже получают склеенные изображения, и не нужно придумывать алгоритмы перехода между разными углами обзора для вашей нейросети. Можно развернуть сенсоры в одну сторону и расположить на расстоянии 6−7 см. Тогда будет сниматься стереоизображение, которое тоже можно подавать на вход специализированным моделям.

Многокамерный массив (Multi Camera Array)

Ещё одна полезная идея — это создание массива из дешёвых однотипных камер.

c4961e32805c3eaab1ff4cdbbfb3c582.jpeg

Это позволяет дёшево решить две проблемы: снять видео с несколькими тысячами FPS и наблюдать за объектами через кусты. Изображения, которые видит каждая камера, немного различаются, и, соотнеся десятки этих изображений друг с другом, мы можем оставить только те детали, которые нас интересуют.

Кейсы: как использовать автономность камер с ИИ?

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

Автономная камера

Недавно один из инженеров проекта купил дачный участок. Залил фундамент под забор, пока не успел его смонтировать и привёз стройматериалы. Так как на его участке пока нет никаких строений, он повесил камеру с модемом в виде USB-свистка на стоящий рядом электрический столб.

8de6220f525fd0ca5fd2caf3d6df7f9a.jpeg

Оказалось, что на этом месте не было даже 4G-связи, поэтому про передачу видео можно было забыть. Но так как это была одна из первых камер с искусственным интеллектом, на которых появилась возможность запускать нейросети, инженер написал простой скрипт для детекции людей и настроил отправку снапшотов в Telegram. Эту камеру никто не увидел, и, как он и опасался, всего за неделю все стройматериалы с участка растащили. Но благодаря снапшотам стало известно, кто это сделал, и материалы удалось вернуть.

Проекционный переход

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

eb8378631574a61c9afc9a3f9156058a.jpeg

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

2e70b69bc4ada8126410a18742c57aa4.jpeg

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

Роботы

16366aba0003d8758ff83ab0d9a2e19b.jpeg

В последние годы появились хорошие доступные технологии, которые могут передать видео по воздуху, используя модифицированный Wi-Fi и технологии избыточного кодирования. Но это не даёт полноценно раскрыться современным ML-моделям. Главная проблема здесь в latency, решив которую, можно давать роботу нечеловеческие возможности, например возможность обходить препятствия на скоростях больше 200 километров в час.

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

e3b438d12722e32f21e5534e772c1afc.jpeg

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

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

Например, этот модуль позволяет рыбаку заранее подготовиться к моменту, когда начинает клевать действительно крупная рыба. Он получает оповещение в мобильном приложении и дальше следит, чтобы добыча не ушла.

Простые камеры могут использоваться и для серьёзных научных исследований, одно из которых провёл в прошлом году на Байкале Лимнологический институт Российской академии наук.

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

f50e17dabc07b43f44c0599e714fd1c8.jpeg

В качестве подводной камеры использовался модуль с прошивкой OpenIPC (также за 10 долларов), способный выдержать давление на глубине 1500 метров. Так как радиоволны под водой на таком расстоянии использовать не получится, то для связи и питания применяется отдельный кабель-трос с тремя проводами, где по одной жиле оболочки вниз передаётся питание 300 вольт постоянного тока, а ещё по двум проводам подключён DSL-модем.

В 2025 году вышел документальный фильм об этой экспедиции «Кольца межсезонья. Байкал», который получил приз на фестивале «Неизвестная Россия».

b5e36144a70c96bfa1f50423ae87203c.jpeg

На кадре из этого фильма макрогектопусы (местные ракообразные). Они присутствуют в воде Байкала на любых глубинах, но больше всего их в придонной области. Именно они и несколько других ракообразных обеспечивают чистоту байкальской воды, поскольку фильтруют частицы. От камеры требовалось не только показать, что находится на дне озера на глубине 1500 метров, но и посчитать плотность этих ракообразных в каждом слое воды.

Недостатки камер с ИИ

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

Если посмотреть на релизный цикл чипов для IP-камер от несколько производителей, которые готовы делиться своими планами, видно, что он растянут сразу несколько лет.

e6625bebd787f55123d6ad1652dce4ba.png

Над дизайном чипа параллельно работают несколько команд. На схеме использованы обозначения:

  • Красный цвет — модели, которые уже можно вставить в свои платы.

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

  • Серый — прототипы чипов, которые пока существуют только в виде Verilog-кода и запускаются на FPGA.

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

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

Второй момент, что чипмейкеры не любят использовать не проверенные временем инновации, и в сам NPU новые фичи добавляются с большой задержкой.

3a72b2b2f0fe68291fea8a619016c9ec.jpeg

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

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

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

Так как это embedded, здесь нет традиционных для сервера файлов подкачки, за счёт которых можно подстраховаться, но есть трюки, которые позволяют через сжатие данных гонять нейронки даже на системах с 32 MB оперативной памяти. Для разработчика хороший выход здесь — взять топовый процессор из линейки производителя устройств и сделать решение на нём. Дальше посмотреть, что в этой линейке есть из младших процессоров и попытаться путём оптимизации попасть в младший чип.

Выводы

С учётом своего опыта Дмитрий Ильин даёт ключевые советы:

  • Пробуйте технологию, это доступно.

Начать что-то делать своими руками можно прямо сегодня и даже бесплатно. Для опенсорс-разработчиков, например, есть ресурсы лаборатории OpenIPC, а производители уже сейчас бесплатно раздают инженерные образцы своего железа, которое будет на рынке выпущено только в 2026 году.

  • Делитесь опытом с другими, как с вами делились другие, когда вы только начинали.
    Это поможет каждому не начинать с чистого листа.

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

  • Учитесь работать с источниками на китайском языке.

Знать английский для IT-специалистов — это уже давно стандарт. Но китайский считается языком будущего опенсорса в мире искусственного интеллекта. Например, сейчас китайские промпты на DeepSeek и Qwen работают гораздо лучше английских. Но ещё важно, что весь кладезь информации остаётся на китайских профильных форумах. Дмитрий не призывает учить язык целиком, но познакомиться с китайским техническим и не страдать при виде иероглифов будет большим заделом на будущее. На помощь придут большие языковые модели, потому что, например, DeepSeek тренировался на большом корпусе китайских научных текстов и прекрасно переводит технические тексты.

Скрытый текст

А пока не упустите шанс зарегистрироваться на крупнейшую независимую конференцию по Data Science AI Conf 2026! На конференции развития мы разберём ключевые темы, которые интересуют нас (и всех участников рынка) больше всего: роботы и автономный транспорт, LLM, оптимизация железа, сбор Dataset, продуктизация Ai-решений, классический ML и Ai-инструменты для жизни.

Источник

Отказ от ответственности: Статьи, размещенные на этом веб-сайте, взяты из общедоступных источников и предоставляются исключительно в информационных целях. Они не обязательно отражают точку зрения MEXC. Все права принадлежат первоисточникам. Если вы считаете, что какой-либо контент нарушает права третьих лиц, пожалуйста, обратитесь по адресу [email protected] для его удаления. MEXC не дает никаких гарантий в отношении точности, полноты или своевременности контента и не несет ответственности за любые действия, предпринятые на основе предоставленной информации. Контент не является финансовой, юридической или иной профессиональной консультацией и не должен рассматриваться как рекомендация или одобрение со стороны MEXC.

Цены на криптовалюту