company_banner

Промышленные безвентиляторные ПК на базе Intel NUC в объектовой видеоаналитике

Пост-призер новогоднего NUCо-конкурса Intel.

Мы в компании ComBox работаем с Intel NUC начиная с четвертого поколения и используем их для исполнения нейронных сетей в объектовой видеоаналитике. В 2014 году мы начали знакомство с модели Intel NUC4i5MYHE, потом решения были мигрированы на Intel NUC5i3RYB, сейчас применяются Intel NUC8i5BEK.

image
Пример решения на базе Intel NUC: сервер на 8 Intel NUC8i5BEK в форм-факторе 1U и Outdoor Box NUC (промышленный безвентиляторный ПК для наружного использования) на базе Intel NUC5i3RYB

image
Пример решения на базе Intel NUC: сервер на 8 Intel NUC8i5BEK в форм-факторе 1U и Outdoor Box NUC (промышленный безвентиляторный ПК для наружного использования) на базе Intel NUC5i3RYB

Основное назначение устройств, в нашем случае – это инференс, процесс непрерывного исполнения предобученных нейронных сетей для детекции и распознавания марок, моделей и номеров транспортных средств.

Области применения решений:

  • Фото-видеофиксация нарушений правил дорожного движения (нарушение скоростного режима, нарушение разметки, правил парковки и остановки ТС и т.д.).
  • Интеграция решений по распознаванию и детекции объектов в СКУД.

Пример фиксации нарушений:

image
Пример фиксации и нарушения ПДД и траекторный анализ движения ТС на ЖД-переезде

Для того чтобы зафиксировать подобное нарушение необходимо:

  1. Определить разрешен ли проезд в данный момент времени
  2. Определить факт наличия ТС в контролируемой зоне
  3. Определить местоположение номерного знака ТС
  4. Распознать содержание номерного знака
  5. Определить марку и модель ТС (и, опционально, цвет)
  6. Зафиксировать событие в локальной БД с указанием номерного знака, марки, модели, цвета ТС и траектории его движения в области правонарушения
  7. Предоставить доступ по требованию к событиям за период для систем сбора данных

Общая схема работы выглядит следующим образом:

  1. Видеокамера направлена на одну или более полос движения ТС
  2. Видеопоток передается на устройства для инференса:
    • В случае централизованного инференса и наличия канала связи – в ДЦ на сервера.
    • В случае наличия технической возможности инференс выполняется непосредственно в камере (на ARM-архитектуре).
    • В случае отсутствия технической возможности инференса в камере и проблем с постоянным устойчивым каналом связи – на устройствах для инференса (промышленные ПК) через коммутатор.
image
Общая схема работы гибридного инференса

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

Определение номерного знака автомобиля выполняется в три этапа:

  1. Обнаружение номерной пластины и маскирование остальной части изображения
  2. Поиск углов номерной пластины и ее поворот, чтобы символы располагались вертикально
  3. Распознавание текста на номерной пластине

Все три этапа выполняются нейронной сетью, изначально обученной и написанной на Tensorflow. Выполнение этой сети происходит в Intel OpenVINO. К сожалению, Tensorflow не может задействовать Intel GPU.

Сравнение Tensorflow и OpenVINO в рамках наших задач:

image

Как мы видим, исполнение одной и той же нейросети в Tensorflow и OpenVINO различается по скорости более чем в 2,5 раза в пользу OpenVINO. GPU, на котором мы, в принципе, не может запуститься в Tensorflow, показывает результат в 4 раза лучше, чем исходный на CPU в Tensorflow.

Выбор конечных устройств осуществляется исходя из стоимости ресурсов, необходимых для обработки заданного числа FPS и наличия возможности параллельного исполнения множества сетей на различных видах устройств (в NUC’ах – это CPU и GPU).

Некоторая выдержка данных из таблицы сравнения устройств:

image

Сервер на базе Intel NUC8i5BEK


Назначение – исполнение нейронных сетей, обработка 80-ти потоков RTSP Full HD, 15 FPS, H.264, детекция и распознавание номеров ТС, марок и моделей. Область применения: множество камер, данные с которых без предварительной подготовки направляются в ДЦ для обработки и формирования событий.

Технические характеристики сервера:

  • Intel NUC8i5BEK (без корпуса с доработанной системой охлаждения), 8 шт.
  • Модули памяти DDR4 SO-DIMM, 8 Гб, 8 шт.
  • SSD M.2 накопитель, 240Gb, 8 шт.
  • Корпус форм-фактора 1U
  • Маршрутизатор MikroTik (без корпуса с доработанной системой охлаждения), 1 шт.
  • БП, 550 Вт.

image
Сервер для инференса в форм-факторе 1U на базе 8 шт. Intel NUC8i5BEK

Видео 1. Демонстрация работы сервера в форм-факторе 1U на базе 8 шт. Intel NUC8i5BEK

image
Климатические испытания работы сервера под нагрузкой в предельном температурном диапазоне

image
Этап проектирования сервера на базе 8 микрокомпьютеров

Преимущества решения:

  • высокая плотность установки CPU и GPU (64 ядра и 8 шт., соответственно, для 1U) для серверных решений
  • относительно низкая себестоимость при высокой плотности CPU и GPU на 1U
  • энергоэффективность (энергопотребление до 500 Вт при полной 100% нагрузке для 8 SBC)
  • аппаратное декодирование аудио и видеопотоков
  • наличие возможности распределения инференса между CPU и GPU
  • наличие возможности одновременной работы с различными типам данных INT8/FP16/FP32 за счет использования CPU и GPU одновременно

Промышленный безвентиляторный ПК на базе Intel NUC5i3RYB


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

image
Промышленный безвентиляторный ПК на базе Intel NUC5i3RYB

Так как сами микрокомпьютеры не являются промышленными, то для наружной эксплуатации нужен не только корпус, но и соответствующие климатические условия. Нам требовалась защита от пыли и влаги IP66, а также температурный режим эксплуатации от -40 до +50 градусов Цельсия.

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

Для запуска устройства в минусовых температурах мы использовали керамику для подогрева. Для удобства эксплуатации и внедрения в различных сферах были установлены блоки питания широкого диапазона 6-36 В.

Основной функционал программно-аппаратного комплекса:

  • Распознавание номеров и марок/моделей ТС
  • Инициирование распознавания данных по датчику
  • Открытие шлагбаума по факту распознавания номера
  • Хранение журнала событий и доступ по требованию через REST API
  • Формирование отчетов по количеству событий за период
  • Интеграция со сторонними системами контроля доступа
  • Отправка сигнала о проезде во внешние информационные системы
  • Фиксация ручного открытия шлагбаума
  • Просмотр видео в LIVE-режиме
  • Интеграция распознавания со всеми видами 1С

image
Интерфейс системы распознавания номеров, марок и моделей ТС для оператора
Intel
Компания

Комментарии 28

    0
    Давно хочу подобную штуку собрать для построения распределенной системы. Если не секрет где корпус заказывали?
      0

      Корпус проектировали и изготавливали сами. На тот момент готовых решений не было. А дальше свое решение адаптировали под новые серии Нюков

        0

        У китайцев есть безвентиляторные, на aliexpress можно взять, за довольно скромные деньги. достаточно в поиске добавить "NUC"

          0
          Есть, но там возникает много вопросов. Во-первых, это не промышленные ПК, там должен быть установлен климатический модуль для наружной эксплуатации (в нашем варианте диапазон рабочих температур -40+50). Во-вторых, под нагрузкой тепловыделение, например, 8-ого поколения достигает 45 Вт и далеко не каждая пассивная система охлаждения в состоянии отвезти такое количество тепла (особенно, в рабочем диапазоне +50 градусов).
            0

            Да. то, что есть в продаже рассчитано на более комфортные условия внешней среды. Но с надежностью все ок (или мне так везло) — купленые у китайцев железки работают 24/7 который год без нареканий. Для сравнения первый же купленый официальный nuc начал глючить на вторые сутки работы. С отводом тепла отдельный больной вопрос...

              0
              В каких условиях эксплуатации у вас заглючил NUC?
                0

                Практически любых — какой-то дефект железа. Memtest ничего не ловит но через ~сутки в зависимости от нагрузки подвисает вне зависимости от ОС.

                  0
                  А наружняя температура какая?
                    0

                    У NUC — снаружи вполне комфортные +20, внутри незначительно выше. У китайцев — по разному, в т ч в почти закрытой коробке перегревались (90° на датчиках под нагрузкой — недостаток любого пассивного охлаждения), уходили в тротлинг но работали.

                      0

                      Если точнее речь о NUC7i3BNK — покупался и тестировался порядка двух лет назад

                        0

                        Не должно быть тротлинга при 20 градусах даже при использовании пассивного охлаждения. Вопрос в отведении тепла. Мы использовали медную пластину в качестве теплосъемника и алюминиевый радиатор для отвода тепла. Даже при расположении множества Intel NUC8i5BEK (45 Вт каждый) и общим теплообменником для 4-ых устройств максимальная температура в пике (при 100% загрузке) была 86 градусов, что вполне допустимо для мобильных процессоров. Подробно процесс проектирования описывали здесь — https://m.habr.com/ru/post/477430/

                          0

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

          0

          Поиск углов номерного знака? А как отреагирует нейросеть если углов будет больше 4? Скажем если углы прикрыты черной изолентой?

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

            Заклеить ее изолентой так, чтобы это казалось неумышленным не получится.

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

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

            Вот подробнее про сегментацию номеров писал ранее Nikkolohabr.com/ru/company/recognitor/blog/277781
            0
            Какое-то странное у вас понятие «безвентиляторности» в решении…
              0
              В статье описано несколько разных решений: промышленный Intel NUC и сервер на базе множества NUC'ов 8-го поколения. В промышленном аутдор решении используется как раз пассивное охлаждение, а в серверном 1U форм-факторе — активное воздушное охлаждение.

              Собственно, безвентиляторный вариант исполнения
              Промышленный безвентиляторный ПК на базе Intel NUC5i3RYB
                0
                Прикольное крепление обогревателя канцелярскими зажимами.
                А где разрядники и диоды по входам? Грозу переживёт?
                  0

                  Грозозащита и молниезащита — опционально. В шкаф на DIN-рейку монтируется устройство защиты для сети Ethernet и разрядник для защиты сети питания, соответственно.


                  Канцелярские зажимы — это недооценённый супер-крепёж! Изготовленные из качественной пружинной стали клипсы обеспечивают надёжную фиксацию. Соединённые им детали способны выдержать сильную вибрацию и «космические» перегрузки. :)


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

              0
              Какой путь проходить картинка с переезда до NUC в серверной?
                0
                Как и описано в статье, есть два варианта для исполнения нейронных сетей: в непосредственной близости от источника данных и централизованный инференс в ДЦ (при наличии соответствующих каналов связи). Если мы говорим о втором варианте, то в ДЦ приходит RTSP-поток, который принимается, RTSP граббером, разбивается на кадры и каждый из кадров отдается на исполнение. В первом варианте нарезка кадров, их обработка и распознавание выполняется «на краю», а на сервер отдается только зафиксированное событие (картинка и сопровождающие ее метаданные).
                  0
                  Хорошо. Возле переезда какое оборудование расположено? Каким каналом связи это оборудование связано с сервером?
                    0
                    Камера, сетевой коммутатор, пром ПК Outdoor Box Micro (одноплатник на базе Intel Atom x5) или Outdoor Box NUC, лидар (при необходимости детекции факта наличия ТС на путях). Между камерой и одноплатником — 100 Мбит/сек. Между одноплатником и сервером — 3G (поток данных небольшой, т.к. передаются только события: картинка и метаданные).
                0
                Ребят, возьмите/закажите расчет вашей модели в SolidWorks Flow Simulation. То что я тут вижу если честно ужасно!
                1) Кто так куллеры вообще додумался устанавливать? Они самое горячее место не остужают, плюс второй же ряд вам такие вихри создает и воздушные пробки, что понятно почему температуры такие высокие.
                2) почему не попробовали единый радиатор сделать? Стоимость метра такого радиатора 500-3000р +обработка.
                3) попробуйте куллеры поставить только в начале и в конце стойки. Намного эффективнее, особенно если вы их оборотами еще управлять можете правильно.
                  0
                  Добрый день! Спасибо за ваш замечательный совет и вопрос. На него коротко не ответить, поэтому извините, сейчас будет много букв…

                  Для начала, немного истории. Первая версия нашего сервера на Intel NUC была полностью с пассивным охлаждением и вся его верхняя поверхность представляла собой огромный ребристый радиатор. Уникальность решения состояла в отсутствии движущихся частей (кроме вентилятора БП), что существенно увеличивало срок не обслуживаемой эксплуатации, но и как следствие, рабочие температуры. К сожалению от этого решения пришлось отказаться, в стойки не удалось установить данное «ноу-хау», так как смонтированное выше оборудование начинало сильно нагреваться нашей восьмидесяти градусной «печкой». Мы получили бесценный опыт и много наработок по пассивной системе охлаждения с применением тепловых трубок и ввернулись к традиционной (для ЦОД) активной системе охлаждения. Чуть подробнее — habr.com/ru/post/477430

                  Сейчас NUC сервер выполнен с набором функционала и свойственной Enterprise-системам избыточностью. Был реализован следующий основной функционал:

                  • IPMI/BMC — мониторинг и управлением компонентами системы;
                  • графический OLED дисплей на передней панели с индикацией текущих состояний каждого модуля NUC, IP-адресами, нагрузки на систему, сообщений об ошибках и сбоях, температур всех и вся, оборотов вентиляторов и т.д.;
                  • быстрая горячая замена (Hot Swap) модулей NUC;
                  • быстрая горячая замена высокопроизводительных вентиляторов;
                  • активное управление вентиляторами по температуре с модулей NUC и дополнительных датчиков входящего и выходящего воздуха;
                  • избавились от обилия сетевых проводов- развели их на плате;
                  • установили два БП с поддержкой Power Management и возможностью горячей замены.

                  Схема сервера на базе Intel NUC


                  Кстати, на выставках мы всегда демонстрируем как работает наше оборудование под полной нагрузкой. Один из NUC транслирует восемьдесят RTSP потоков, предварительно записанных с живых камер, остальные семь NUC распознают проезжающий транспорт, создают события (марки авто, номера, время) и отправляют их в отдельный агрегатор, который накапливает события, привязывает их к карте и выводит на экран.

                  Теперь про «ужасное» на фото — это специально изготовленный выставочный образец, с тихими низкооборотистыми вентиляторами, который может функционировать под полной нагрузкой в выставочном помещении при 26 градусной температуре с открытой крышкой. Именно открытая крышка и требования к шуму обуславливают данную компоновку системы. Вы наверняка слышали как в ЦОД «поют» серверные вентиляторы при 23000 оборотов? Да нас просто выгонят с выставки и занесут в чёрный список!

                  Также существует отдельная «ветка» NUC сервера с применением циркуляционной системы охлаждения на базе безопасного для электроники Novec от компании 3M. Одна версия со встроенным в корпус сервера радиатором с вентиляторами и помпой, другая версия (без движущихся частей) с выведенными наружу фитингами для подключения к магистралям с теплонесущей жидкостью.

                  Да, чуть не забыл, конечно же мы моделируем в САПР и воздушные потоки и распределение тепла например в сборках теплосъёмник/радиатор. Обязательно приходите на одну из выставок с нашим участием, с радостью пообщаемся и по-дружески подискутируем о ламинарных/вихревых потоках.
                  0
                  В каком смысле безвентиляторный? Я вижу минимум 16 ревущих вентиляторов
                    0

                    В статье описано несколько разных решений: промышленный Intel NUC и сервер на базе множества NUC'ов 8-го поколения. В промышленном аутдор решении используется как раз пассивное охлаждение, а в серверном 1U форм-факторе — активное воздушное охлаждение. 

                    0
                    Вы пишите "… были установлены блоки питания широкого диапазона 6-36 В..."
                    А что это за БП? Имеется ввиду DC-DC преобразователь? Обычно они от 9В..., какие модели, если не секрет, вы использовали?
                      0

                      БП это DCDC на основе LTC3780. Также там стоит бесперебойник, к нему аккумуляторную батарею можно подключать. На новых сериях Outdoor Box Micro мы ставим TPS54560, но там 5В питание на плату идет, а в большой коробке 12В.

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

                    Самое читаемое