Новости

А.Сёмочкин: ”3D камера Intel® RealSense™ - оптимальное решение для многих проектов”

Алексей Викторович Сёмочкин - учитель программирования, заведующий кафедрой дизайна и технологии Международной гимназии инновационного центра “Сколково”. Его проект - учебный кейс “Разработка алгоритмов машинного зрения с использованием 3D камеры для беспилотного автомобиля на базе Raspberry Pi” занял первое место среди преподавательских работ на конкурсе творческих проектов Intel® AI for Youth “Технологии ИИ для каждого”. В процессе работы над ним учащиеся изучают принципы работы камеры и ее применение в прикладных задачах беспилотных автомобилей, программируют мобильную платформу на движение и остановку в случае обнаружения препятствия на дорожной полосе, а также на распознавание дорожных знаков. Алексей Викторович готов рассказать о своем проекте и планах на будущее.

Как давно вы работаете с камерой Intel® RealSense™?

  • С 3D камерой Intel RealSense я познакомился пару лет назад, когда сильно заинтересовался технологиями компьютерного зрения в робототехнике. В рамках школьных учебных проектов для демонстрации возможностей технического зрения я создавал экспериментальную робототехническую платформу, которая в качестве камеры использовала сенсорный игровой контроллер Microsoft Kinect®, позволяющий, помимо цветных изображений, получать матрицу расстояний до каждой точки этих изображений. Но платформа, ввиду больших размеров устройства, получалась громоздкой, и после непродолжительных поисков оптимальным вариантом стало использование 3D камеры Intel RealSense. Она имеет компактный размер, подходящие параметры разрешения и частоты кадров, минимальное и максимальное расстояния до точек карты глубины, мультиплатформенный набор средств разработки и готовые библиотеки для языка программирования Python*. На занятиях по изучению технологий искусственного интеллекта в рамках программы  Intel® AI for Youth “Технологии ИИ для каждого” я стал знакомить учеников с 3D камерой только в этом году, когда мы перешли на этап глубокого погружения в ИИ и практику решения технических задач машинного зрения. 

Какие ее преимущества Вы можете отметить для проведения занятий с детьми?

  • Использование 3D камеры на занятиях позволяет познакомить учеников с особенностями работы стереокамер и формированием карты глубин для разных практических задач, а также шире раскрыть возможности современных технологий компьютерного зрения. 3D камера Intel RealSense имеет полный набор инструментов библиотеки pyrealsense2 языка программирования Python*, который студенты изучают в рамках нашего курса. Библиотека позволяет получать с камеры как rgb-кадры разрешения до 1024x768 px с частотой обновления до 90 fps, так и парные им depth-кадры, которые в дальнейшем можно обрабатывать стандартными инструментами OpenCV, NumPy и другими. Благодаря встроенным примерам от разработчиков мы можем на практике разобрать алгоритмы удаления фона с кадров в реальном времени, находить расстояние до распознанного нейросетью объекта, сканировать объект и сохранять в виде 3D модели, а также использовать эти подходы для ученических проектов в сфере транспортной и медицинской робототехники, проектов по распознаванию лиц и жестов в системах наблюдения или дистанционного управления.

Насколько учащиеся быстро осваивают технологию работы с камерой? 

  • В нашей гимназии мы имеем в наличии пока только одну 3D камеру Intel RealSense. В связи с тем, что группы на внеурочных курсах у нас немногочисленные, мы используем ее как демонстрационное устройство, когда необходимо показать принцип работы камеры и процесс получения кадров глубины, а также для выполнения практических задач из области управления беспилотным транспортом на базе самостоятельно разработанной мобильной платформы. Несмотря на то, что мобильная платформа имеется в единичном экземпляре, она поддерживает возможность удаленного подключения к ней всей учебной группы и позволяет по очереди провести испытание написанной программы на Python. В рамках занятий мы изучаем простые функции для работы с 3D камерой: получение выровненных rgb и depth кадров, вырезание из кадра ближайшего объекта, нахождение среднего расстояния до точек интересующего нас объекта, но в дальнейшем я планирую добавить в учебную программу написание гибридных систем компьютерного зрения, объединяющих алгоритмы анализа карты глубины и цветных изображений для повышения качества детектирования объектов.

В идеале, сколько 3D камер нужно для проведения максимально плодотворных занятий?

  • В связи с тем, что 3D камеры на занятиях мы используем в задачах управления беспилотным транспортом, я создал мобильные платформы на базе Raspberry Pi и шасси с рулевым управлением Аккермана и определил, что для комфортного проведения урока в группе из 12 человек необходимо иметь минимум 4 таких мобильных платформы с установленной камерой Intel RealSense на них. Каждая из мобильных платформ позволяет удалённо подключаться к ним одновременно трём ученикам со своих настольных компьютеров по WiFi, по очереди запускать демонстрационные или тестовые программы на языке Python и в процессе их выполнение через VNC подключение наблюдать за выводом обработанных кадров с 3D камеры на рабочий стол. Если знакомиться с 3D камерами в рамках индивидуальной работы над другими задачами из области технического зрения, то, думаю, что для класса необходимо не менее шести устройств Intel RealSense, которые ученики, объединенные в группы по 2 человека, смогут по очереди подключать к своему настольному компьютеру или ноутбуку во время исполнения программы.

Что вызывает наибольшие затруднения у ребят?

  • В процессе изучения компьютерного зрения в школе есть немало сложностей. Одна из основных — это большое количество функций и параметров, которые нужно использовать для обработки и анализа изображений, а в случае использования 3D камеры их количество только возрастает. Кроме того, эти функции основаны на сложных математических операциях, которые не изучаются в школе. Мне, как учителю, приходится всё время искать варианты наглядного и понятного объяснения изучаемых алгоритмов компьютерного зрения и машинного обучения (благо, многое разъясняется в материалах для педагога от разработчиков Программы Intel® AI for Youth).

Говорите ли вы с детьми об уже реализованных решениях? Разбираете готовые алгоритмы, чтобы продолжать, а не начинать?

  • В качестве примеров из жизни мы всегда используем достижения в области беспилотного транспорта коммерческих компаний Яндекс*, СтарЛайн*, СберАвтоТех*. В частности, рассматриваем набор установленных на них сенсоров и принципы работы используемых алгоритмов компьютерного зрения и машинного обучения. Разработанная мобильная платформа, на которой ученики практикуются в процессе изучения этих технологий, не обладает таким большим набором сенсоров, как реальные беспилотники. Однако, благодаря установленной на ней 3D камере, ученики могут как анализировать расстояния до объектов и их форму, так и выполнять задачи распознавания этих объектов на изображении, что в рамках учебных задач позволяет без использования избыточного количества датчиков, как на реальных автомобилях,  познакомиться с основными технологиями управления беспилотным транспортом и углубиться в изучение компьютерного зрения и машинного обучения. Также хочется отметить, что на занятиях дети не только разбирают готовые алгоритмы распознавания объектов, но и разрабатывают и исследуют свои подходы, в частности, пробуют обучать модели сверточных нейронных сетей собственной архитектуры, применять методы использования предварительно обученных архитектур (Feature extraction и Fine Tuning). В дальнейшем я планирую внедрить в учебный процесс изучение алгоритмов глубокого обучения для обнаружения объектов с помощью моделей нейронных сетей серии R-CNN*, Fast R-CNN* и Faster R-CNN*.

Вы сами давно занимаетесь темой беспилотных автомобилей?

  • Тема беспилотных автомобилей меня увлекла ещё три года назад, когда командой педагогов, сопровождающих своих учеников на соревнования по робототехнике фестиваля «Робофинист», мы поучаствовали в хакатоне «Умный автомобиль» от компании СтарЛайн*. В рамках этого хакатона мы разрабатывали систему распознавания дорожных знаков на базе мобильного робота с мини-ПК Intel® NUC  и 3D камерой Orbbec Astra*. После мероприятия я продолжил изучение технологий машинного обучения и технического зрения для мобильных платформ, что впоследствии помогло сформировать проект по разработке образовательной платформы для освоения автономного управления беспилотными автомобилями для детей среднего и старшего школьного возраста. Основная идея состоит в использовании 3D камеры, которая может заменить датчики расстояния и датчики линии, которые часто используются в мобильных платформах, добавив новые возможности к автономному управлению моделью беспилотного автомобиля, а также сосредоточить всё обучение вокруг технологий компьютерного зрения и машинного обучения.  Проект получил грантовую поддержку от Фонда содействия инновациям, и сейчас работы над ним продолжаются.

Пробовали ли Вы ездить на таком?

  • Мне с коллегами из Международной Гимназии посчастливилось ездить на беспилотном автомобиле на территории Сколково около двух лет назад, когда компания Яндекс в рамках тестирования организовала там бесплатный сервис по перевозке участников этого тестирования от Технопарка до офисных зданий Фонда. Мы вживую увидели, как автомобиль сам ускоряется и замедляется, подруливает, меняет полосу движения, паркуется, исходя из обработанных данных своих сенсоров, которые в реальном времени визуализируются на большой панели в салоне. Ненадолго я оказался в том технологическом будущем, о котором мы всегда говорим и которого так с нетерпением ожидаем с учениками на своих занятиях.

Ваше отношение к проектной деятельности молодежи? 

  • По моему мнению, проектная деятельность должна являться неотъемлемой частью учебного процесса, особенно для предметов технической направленности, потому что она формирует положительное отношение к учёбе, как к источнику решения конкретных проблем. В рамках подхода Международного бакалавриата, реализуемого на основных предметах в нашей Гимназии, мы проходим с детьми все основные этапы проектной деятельности: анализируем потребности или проблемы целевой аудитории, расписываем требования и рисуем схемы и чертежи своих идей, изготавливаем и тестируем продукт, после чего уже демонстрируем его клиентам и общественности. Эти же методики применяются и в программе Intel® AI for Youth “Технологии ИИ для каждого” для создания социально значимых проектов с использованием элементов искусственного интеллекта, примером чего может служить приложение, помогающее отслеживать распространение коронавируса, определяя перемещение людей в здании, занявшее второе место в конкурсе проектов Программы в этом году. 

Чуть подробнее расскажите, пожалуйста, о Ваших учениках. Как завоевать их авторитет?

  • Ввиду того, что в Гимназии идет уклон в развитие гуманитарных навыков, детей на внеурочных курсах технической направленности немного, но все они ответственно относятся к посещению уроков и выполнению практических заданий. Для занятий по искусственному интеллекту у нас сформированы две группы: первая группа в основном состоит из учеников 8 – 9 класса, вторая – из учеников 10 – 11 класса. В основном это мальчики, которые увлекаются информатикой и параллельно посещают занятия внеурочного курса «Основы программирования», где изучают основные понятия и конструкции языка Python. Также на курс записываются дети, которые увлечены проектами из других предметов (например, биологии, географии), но которые хотят использовать в них технологии искусственного интеллекта. Например, сейчас у нас есть команда из двух учеников 8 и 9 класса, которые работают над проектом протеза руки, используя алгоритмы анализа данных с мышечных датчиков и технологии машинного обучения для управления этим протезом с помощью мышечной активности. Живые примеры реализованных школьных проектов и достижений на конкурсах мотивируют и других учеников попробовать начать заниматься технологиями искусственного интеллекта. Не последнюю роль играет и авторитет учителя. Но чтобы завоевать авторитет у учеников, я считаю, нужно в первую очередь быть для них примером: примером ответственности, целеустремленности, находчивости. 

Как преподаватель, чему бы Вы хотели научить современных детей больше всего?

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

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