В начале года мы с коллегой начали интересоваться различными технологиями связанными с искусственным интеллектом и машинным обучением. Для начала решили попробовать освоить продукт компании Amazon – камеру AWS DeepLens. Мы заказали устройство на официальном сайте и хотим поделиться опытом использования. В настройке и подключении камеры есть множество нюансов и на данный момент по этому вопросу мало структурированной документации, что приводит к большим трудозатратам при установке и настройке. Надеемся, этот tutorial поможет избежать траты времени и вы сможете быстро начать пользоваться устройством.

Что такое AWS DeepLens?


AWS DeepLens – это камера с поддержкой глубокого обучения (Deep Learning) компании Amazon. Представляет собой камеру закрепленную на небольшом системном блоке с процессором Intel Atom и системой Ubuntu 16.04 LTS. О ней пару лет назад была новость на Хабре.

Особенность устройства в изначальной настройке под работу с Deep Learning. На AWS DeepLens предустановлено специальное ПО, позволяющее развернуть несколько проектов подготовленных для работы с Deep Learning.

Для развертывания подготовлены следующие проекты:

  • Точное обнаружение и распознавание объектов;
  • Классификация еды по критерию «хот?дог или не хот?дог»;
  • Распознавание собак и кошек с помощью DeepLens;
  • Распознавание около двухсот видов птиц;
  • Распознавание более чем 30 видов действий, таких как чистка зубов, нанесение губной помады или игра на гитаре;
  • Обнаружение человеческих лиц;
  • Определение положения головы под девятью разными углами.

Каждый проект представляет собой обученную модель, готовую к использованию. Само обучение моделей делать на AWS DeepLens нельзя. Проекты загружаются из интернета. Но после загрузки камера может делать логические выводы без интернета – локально.

Для подготовки и обучения модели необходимо использовать отдельный сервис – AWS SageMaker. После того как модель подготовлена и обучена её можно переносить на AWS DeepLens и уже здесь тестировать и дорабатывать. В AWS DeepLens также можно импортировать обученную во внешней среде модель.

Распаковка


Посылка с AWS DeepLens пришла через 2 недели после заказа на официальном сайте. Доставили прямо в офис по указанному адресу. Камера пришла в фирменном пакете амазоновской службы быстрой доставки “Prime”.



Сама камера упакована в фирменную коробку.



Внутри коробки руководство по быстрому старту со ссылкой на страницу регистрации продукта.



В комплекте идет:

  • MicroSD карта памяти от SanDisk на 32 Гб;
  • Адаптер для подключения к сети из 2-х частей;
  • USB-провод для подключения к компьютеру.



Вот так выглядит сама камера спереди и сзади.





Само устройство компактное (94х47х168 мм), места на столе занимает немного, что очень удобно.



Подключение и настройка


Весь процесс подключения и настройки состоит нескольких шагов:

  • Первичное подключение камеры к компьютеру через провод и регистрация продукта локально;
  • Подключение к интернету через Wi-fi и регистрация в AWS Management Console;
  • Создание нового проекта и выбор подготовленной модели;
  • Загрузка проекта с моделью на устройство AWS DeepLens (на устройстве 16 ГБ встроенной памяти + карта на 32 Гб в комплекте);
  • Развертывание проекта на устройстве;

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

1. Подключаем камеру к интернету


Для подключения AWS DeepLens к интернету необходимо зайти в административную панель камеры со своего компьютера и прописать настройки wi-fi для этого подключения. Cвяжем ваш компьютер и AWS DeepLens по wi-fi.

Для начала берем зубочистку и нажимаем кнопку «Reset»:



Ждем пока индикатор wi-fi загорится синим:



Подключаемся к AWS DeepLens через wi-fi со своего компьютера. Сеть AWS DeepLens может называется, например “AMDC-Q4US”. У каждого устройства сеть может называться по своему, её название обозначено на упаковке.



Затем открываем браузер и заходим в устройство по ссылке: deeplens.config



Далее войдя в админку подключаемся к Wi-fi, используя номер устройства и пароль указанные на нижней стороне камеры.



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



2. Устанавливаем сертификат безопасности


Для безопасной, зашифрованной передачи данных между камерой и серверами Amazon необходим сертификат безопасности. Его можно загрузить по ссылке указанной на шагах установки в deeplens.config



После того, как сертификат загружен, нужно задать и запомнить код доступа к устройству (ssh-password).
Важно: если вы забудете пароль, придется делать «factory reset» и полностью переустанавливать операционную систему на AWS DeepLens.

Соединяем устройство и ПК проводом


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



После того как сертификат установлен нужно связать камеру и компьютер с помощью USB-провода для последующей регистрации на сайте Amazon.



Если всё сделано корректно, загорится синий индикатор.



После того как провод подключен – вводим серийный номер устройства.



Убеждаемся что камера подключена к вашему компьютеру и сети по USB.



4. Регистрируем устройство на сайте Amazon


Для начала необходимо создать AWS-аккаунт, если его у вас нет: portal.aws.amazon.com/billing/signup



После того, как аккаунт создан, идём на страницу продукта и нажимаем “Зарегистрировать ваш DeepLens”: aws.amazon.com/deeplens



Далее выбираем “Root user” и вводим логин и пароль от аккаунта AWS.



Вводим имя устройства и нажимаем «Register Device».



Ждем когда наше устройство зарегистрируется.



Ура, зарегистрировалось!



Теперь можно отсоединить USB и управлять камерой по Wi-fi.
С каждой отдельной Wi-fi сети необходимо зарегистрировать новое устройство. То есть с домашнего и офисного компа будут отображаться разные устройства.

5. Создаем проект


После входа в панель управления, набираем название нашего устройство в строке “AWS services” и выбираем “AWS DeepLens”.



Далее выбираем “Create new project”.



Выбираем “Use a project template”. Ниже отмечаем готовый шаблон проекта. Нажимаем “Далее”. Обращаем внимание, что можно выбрать проект «с чистого листа», но это отдельная тема для последующего изучения.



Далее попадаем на экран “особые детали проекта”. Здесь можно посмотреть схему работы шаблона. Можно ничего не менять и нажать “создать”.







Затем выбираем развертываемый проект еще раз.



Выбираем устройство на котором развертываем проект.



Проверяем всю ранее введенную информацию и нажимаем «Deploy».



Далее ждём когда проект будет развёрнут на устройстве.



После того как проект развернут на устройстве выбираем «View Input».



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



Нажимаем “View Stream”.



Выбираем ранее загруженный сертификат безопасности:



И, наконец-то получаем вывод видеопотока из камеры в браузер!



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



Поздравляем, вы установили и настроили AWS DeepLens и готовы к работе с данными!

P. S. Некоторые скриншоты взяты из официального руководства