Skip to content
← Все новости

· автор — Команда OpenIPC

Голова для объектива и камера, которая чистит шум нейросетью

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

Камера умеет вести трансфокатор и поворотную голову одновременно

Камера умеет вести сразу и объектив с трансфокатором, и голову, на которой он стоит, даже если они висят на разных проводах. Ключ ptz.head задаёт протокол головы — пока это Pelco-D, — а ptz.headPort говорит, где её искать: на том же порту, что и объектив, на отдельном tty или, если голова сидит за последовательным шлюзом в сети, по адресу tcp:// с хостом и портом шлюза. Объективы Sony VISCA камера теперь тоже понимает, причём такой блок сам сообщает ей своё усиление как ISO — и настройки картинки знают, что сейчас делает объектив.

Проверено на XiongMai N51813L: объектив VISCA на UART0, голова Pelco-D за шлюзом socat, и всё это крутится с пульта в веб-интерфейсе. Перед тем как паять, прочитайте новую страницу: порт CN2, подписанный у XiongMai как «485», на самом деле TTL на 3,3 вольта, и на странице написано, что с этим делать.

Камера чистит шум нейросетью, и мы измерили, во что это обходится

Hi3516CV610 с NPU теперь умеет прогонять картинку через нейросеть-шумодав прямо перед кодированием — ключом isp.aibnr. Новая страница объясняет, у каких вариантов чипа есть NPU, как это понять по socmodel, какие файлы моделей нужны прошивке ultimate и как всё это включить.

И там же честно написано, чем вы за это платите. Замеры на IMX662 в 1080p: NPU тратит на кадр около 33 миллисекунд, поэтому с сенсора на 30 кадрах в секунду до вас доходит 28, NPU занят на 94%, а свободной памяти остаётся 44 мегабайта вместо 76. Если ограничить ключом isp.aibnrFps: 25, загрузка NPU падает до 82%. По краям кадра срезается по 8 пикселей с каждой стороны — шумодав оставляет там слабый узор. На пяти мегапикселях NPU вытянет кадров десять в секунду.

Чего страница не обещает: насколько лучше станет тёмная детальная сцена. Это пока не померили, и так и написано.

У белого фонаря появились собственные настройки

Белый свет больше не привязан к тому, что делают ноги инфракрасной подсветки. Ключ nightMode.whiteLightPin вешает фонарь на обычную ногу процессора, а на SigmaStar он ещё и плавно гаснет через штатный драйвер PWM — со своей частотой, своими пределами и своей кривой, отдельно от ИК-лампы. Ключ colorToGray решает, уходит ли картинка в серое, когда фонарь белый. Все ключи собраны на странице стримера.

Веб-интерфейс подтянулся следом: рядом с остальными появился выключатель White, переключатель ИК-фильтра теперь говорит, какое положение включено, нога фонаря видна на карте выводов, а все четыре выключателя помещаются на экран телефона.

Камера замечает, когда сама неверно прочла цифру

На прошлой неделе камера научилась считать мигания импульсного светодиода на счётчике. Лабораторная «Энергомера» показывает единицу и двойку так, что камера читает их как семёрку, — а это ровно та ошибка, которая ломает учёт. Теперь камера сверяет прочитанные цифры с миганиями. Показание, убежавшее вперёд дальше, чем позволяют импульсы, она отбрасывает, сколько бы раз оно ни повторилось; пока импульсы считаются, показание не едет назад; а барабан, застрявший на цифре, засчитывается как остановка, и счёт дальше ведут сами импульсы. На оба случая завели по метрике, и они описаны в majestic-meters.

Через регистратор XM можно говорить в камеру

Камера на регистраторе XM или в XMEye теперь умеет передавать звук в обе стороны — оператор может ответить тому, кто стоит перед объективом.

Переход между сотами заработал, и сразу на трёх

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

На стенде теперь работают сразу три соты на трёх каналах, и устройство переезжает между ними по собственным замерам: оно докладывает, что слышит, контроллер выбирает самого сильного соседа, и устройство попадает в свой слот в новой соте в 99,9–100% случаев, не теряя ход часов. Заработало это благодаря окну глухоты — запланированному моменту, когда устройство слушает соту, к которой не подключено. Без таких окон два перехода из шести не измерялись вообще.

Появилось и новое железо: карты PCIe RTL8822BE, RTL8822CE и RTL8852BE.

Это по-прежнему стенд, и мы по-прежнему говорим об этом прямо: впереди проверка на движущемся устройстве в реальной обстановке — с затуханием, с несколькими устройствами и с проходом под открытым небом. Всё это происходит в задаче проекта.

Дамп флешки больше не утащит с собой ваш пароль от Wi-Fi

Каталог плат собирается из дампов, которые присылают люди. В дампе лежит куда больше, чем опознавательные данные платы, поэтому сайт теперь вычищает из отчёта пароли от Wi-Fi, ключи Gwell P2P и доступы к облакам ещё до того, как сохранит его, а дамп, который должен был стать публичным, остаётся закрытым, если в нём нашлись хозяйские секреты. Фотографии сайт уменьшает и разбирает в рамках заданного объёма памяти, а не принимает всё, что прислал телефон.

По мелочи

За неделю работа шла в тридцати двух репозиториях. О трёх из них — devourer, majestic-webui и wiki — рассказано выше, вот остальные.

  • qemu-bench собрал двойник Hi3516CV610: кодировщик пятого поколения, VI и VPSS в онлайне, статистика ISP в раскладке V5 — чтобы экспозиция и баланс белого в стримере сходились, — и 29 операций чипового ускорителя как задачи NPU. Баланс белого теперь сходится и в старых двойниках, перед камерой можно поставить сцену и померить её кадр за кадром, а образ флешки Xiongmai V1 загружается.
  • microsnander вырос в серьёзный программатор: ещё 143 микросхемы NOR и 32 NAND, незнакомая микросхема опознаётся по своей таблице SFDP, NOR больше 16 МБ, заводские бэд-блоки можно сохранить или пропустить, дамп сохраняется только если два чтения совпали, а CH347 пишет примерно на 30% быстрее.
  • majestic заодно подтянул Fullhan до остальных — снимки, живые ползунки, потолки автоэкспозиции, экранное меню, тон и насыщенность через цветовую матрицу, ручной баланс белого, — а первому поколению HiSilicon дал кадрирование и плагины, T31 — поворот картинки, и научил длинную выдержку следовать вендорскому правилу.
  • linux принял захват на Anyka EV200 и EV300, сопроцессор ARC у Fullhan FH8626, раздельную раскладку NOR для SigmaStar и правки выводов PWM.
  • firmware собрал драйверы Wi-Fi ATBM из исходников, дал SigmaStar раздельный образ NOR, добавил вариант neo для hi3520dv200 и подогнал длинный список сенсоров под стоковые камеры.
  • u-boot перевёл SigmaStar на общий слой с проверками на каждом кристалле и в NOR, и в NAND, и загрузил Allwinner V831/V833 на живом кремнии.
  • openhisilicon восстановил шесть драйверов сенсоров для hi3516cv6xx и сверил их с даташитами Sony.
  • ipctool научился снимать карту GPIO — мультиплексор и уровень каждой ноги, только на чтение, — читать температуру кристалла у трёх чипов Novatek и опознавать AR0230, IMX662 и детали Anyka.
  • builder добавил семь плат, среди них Tapo C210 v2, Amcrest на S3L и HeimVision PE3020-W.
  • majestic-af получил привод VISCA и порт головы, motors — отправку Pelco-D «на ногах», чтобы такую голову можно было отлаживать.
  • website заодно починил фильтры плат и выделил загрузкам прошивок свой пул соединений; divinus, viewer, decoder, PixelPilot_rk и hevc-wasm приняли правки плеера и наложений; vectis и camex навели порядок в консоли; waybeam повёл IMX335 и IMX662 на CV610; openxiongmai подогнал усиление на SC5332 и SC5235; coupler, defib, openingenic, u-boot-ingenic, atbm-wifi, atbm_60xx, rda-wlan и sbc-groundstations несли работу по платам, драйверам и сборке.