24.10.2017, 21:17
kopeПользователь
Прогресс по проекту создания стикер-бот

Участники:

  • Оборин Дмитрий ФО-260001
  • Айрапетян Арманд ФО-260001
  • Копылов Дмитрий ФО-260001

Перед нами были поставлены следующие задачи:

  1. Научиться распознавать человеческое лицо на изображении
  2. Суметь вырезать нужную область работы, т.е. лицо
  3. Создать пустого telegram-бота
  1. Для решения поставленной задачи мы использовали библиотеку dlib. Пример работы предоставлен на изображениях 1 и 2 ниже. Как можно заметить, с помощью данной библиотеки возможно распознать лицо и выделить его контуры.

  2. Для работы непосредственно с лицом нам необходимо вырезать нужную рабочую область. Контур лицо состоит из 68 точек, соединенных между собой. Нами был составлен алгоритм, который решает поставленную задачу. Рассмотрим пример на изображениях 3 и 4 ниже. Нам дано изображение размер 10х10 пикселей и координаты точек (в нашем случае точек 9). После выполнения программы мы получаем нужную нам рабочую область. В нашем случае это получилось изображение 5х4 пикселя. Стоит заметить, что изображение подверглось обрезке и ненужные нам области имеют прозрачный фон.

  3. Создание telegram-бота без функционала не составило нам каких-либо проблем. Изображение 5. 

Второй отчёт по проекту

Участники:

  • Касимов Нур
  • Павел Овечкин
  • Екатерина Букина

Поставленные задачи в период с 16.10.17 по 22.10.17:

  • Определить модель проекта
  • Разобраться и наладить работу с базой данных
  • Разработка нейронной сети

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

Основная модель проекта

Проект будет состоять из двух основных частей: сервера анализатора и веб-сайта.

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

Примерная модель анализирующей части проекта

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

Прогресс по проекту "Разработка модели движения гусеничного робота и реализация алгоритма управления" (16.10.2017 - 22.10.2017)

Участники:

  • Тростницкий Сергей
  • Ивачевский Иван
  • Волкова Виктория

Задачи:

  • Изучить документацию текущего алгоритма движения
  • Изучить работу регуляторов
  • Дописать П- и ПД-регуляторы
  • Написать ПИД-регулятор

В ходе изучения документации и алгоритма движения было выяснено, что робот двигается по релейному регулятору. Также в коде присутствуют недоработанные П- и ПД- регуляторы.

Была изучена работа П-, ПД- и ПИД-регуляторов.

Было выяснено, что ПИД-регулятор самый плавный. На графике:

  • Вариант 1 - ПИД-регулятор
  • Вариант 2 - ПД-регулятор
  • Вариант 3 - П-регулятор
  • «Ожидаемое» – это то, что мы хотим получить.

Были дописаны П- и ПД-регуляторы, а также был написан ПИД-регулятор. 

ПИД-регулятор вычисляет управляющую воздействия по следующей формуле:

Где 

  • u (t) — управляющая воздействия
  • P — пропорциональная составляющая
  • I — интегральная составляющая
  • D — дифференциальная составляющая
  • e (t) – текущее отклонение от цели (текущая ошибка)
  • Kp — пропорциональный коэффициент
  • Ki — интегральный коэффициент
  • Kd — дифференциальный коэффициент

Реализуется это в коде следующим способом:

P = Kp * err;
I = I_old + Ki * err;
D = Kd * (errerr_old};
u = P + I + D;

Прогресс по проекту «Интерактивное расписание»

Команда:

  1. Шаповалов Андрей, ФО-260003.
  2. Елизаров Кирилл, ФО-260003.

Что мы делаем:

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

  • Требуется реализовать 2 части приложения
    • Приложение для интерактивной доски, на котором быдет выводиться расписание для учеников
    • Инструмент для составления расписания
  • Данные нужно хранить на сервере (можно и локальном), для обеспечения синхронизации доски и базы данных
  • Реализовать базу данных с расписанием

Зачем мы это делаем:

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

Приложение будет реализованно на WPF, данные будут храниться на SQL server Express, администрирование БД планирутеся на WEB.

Прототип обговорен с кураторм. Ведется работа по разработке интерфейса программы и составление полноценной БД (создана тестовая, для проверки корректности извлечения данных).

Участники: Никита Лебедев Юрий Меньшиков Максим Наговицин Андрей Костюченко Первокурсники: Елизаров Сергей

Выполненные задачи:
Прочитана книга "Создай свою нейросеть" Тарик Рашид

Найдены фреймворки для работы с нейросетями на python (Tensorflow, Keras, Theano)

Разработаны и обучены две тестовые нейросети: 1. Распознает рукописные цифры 2. Классифицирует объекты на фото

Разработан макет пользовательского интерфейса

Выбран VPS хостинг для проекта (Digital ocean)

Прогресс по проекту «Алгоритм одновременного позиционирования и картографирования для наземного робота (SLAM)» (09.10.2017 - 15.10.2017)

Участники:

  • Клещев Алексей
  • Галембо Егор
  • Кирьянов Данил

Поставленные задачи в период с 09.10.2017 по 15.10.2017:

  1. Найти узел SLAM отвечающий за построение карты в роботе, на wiki
  2. Разобраться в устройстве получения показаний с lidar’а
  3. Разобраться в технологии определения препятствий (метод нахождения разрывов)
  • 1. После продолжительных поисков каталогов в файловой системе робота, было установлено, что исходные файлы хранящиеся на роботе не пригодны для дальнейшей разработки. Это послужило причиной поиска исходников в интернете. Источником стал http://wiki.ros.org. На нем был найден архив со всей документацией и исходниками.

  • 2. Устройство получения показаний с лидара происходит следующим образом: световой импульс, а затем и его отражения проходят через оптический элемент. Отраженный импульс принимается фотодиодом, где преобразуется в электрический сигнал. Далее сигнал усиливается усилителем, преобразуется в «цифру» с помощью АЦП (аналого-цифрового преобразователя), а затем обрабатывается микропроцессором.

  • 3. Поиск разрыва - алгоритм, который ищет первое препятствие по следующему принципу: просматриваются элементы массива, заполненные информацией об удаленности препятствия от робота, пока не встретился первый разрыв или пока не изучили все 360 элементов. (Под разрывом подразумевается существенная разница между соседними элементами массива). Если текущий элемент и следующий примерно совпадают по значению, то это одно препятствие и разрыва нет. Иначе найден разрыв и нужно запомнить, где закончилось первое препятствие, и продолжить поиск.
Прогресс по проекту «Алгоритм одновременного позиционирования и картографирования для наземного робота (SLAM)» (2.10.2017 - 08.10.2017)

Презентация


Участники:

  • Клещев Алексей
  • Галембо Егор
  • Кирьянов Данил

Поставленные задачи в период с 02.10.2017 по 08.10.2017:

  1. Научиться работать с роботом // первый запуск
  2. Получить доступ к каталогам в роботе с помощью клиента putty и утилиты psftp
  3. Рассмотреть существующие способы реализации SLAM
  4. Изучение теоретического материала полученного от второго курса

В результате были выполнены все поставленные задачи в период с 02.10.2017 по 08.10.2017:

1.

При первом запуске были наглядно рассмотрены возможности робота, было уделено особое внимание RPLidar (далее Лидар).

Лидар способен сканировать окружающее пространство с частотой 5.5 Гц в угловом охвате 360 градусов на расстоянии до 6 метров. Он создает 2D облако точек, так называемый плоский срез. Каждая точка облака имеет точные координаты относительно системы координат лазера.

2.Так как ROS работает только на Unix-платформах, то для подключения к нему используется клиент PuTTY. Клиент позволяет подключиться и управлять удаленным узлом (например, сервером). В PuTTY реализована только клиентская сторона соединения — сторона отображения, в то время как сама работа выполняется на стороне сервера.

У клиента PuTTY есть утилита PSFTP, предназначенная для работы с файлами. С помощью нее возможно извлечение исходников с робота, для редактирования, так как редактировать в PuTTY непродуктивно и неприятно для глаз. 

Разница значительна

3.

Метод МонтеКарло — рекурсивный алгоритм для численного решения проблем оценивания (фильтрации, сглаживания), особенно для нелинейных случаев. Метод заключается в том, что в фильтре поддерживается множество гипотез о текущем положении робота. В начальный момент генерируется случайный набор гипотез. В ходе работы алгоритма некоторые из них будут отсеиваться из-за несоответствия вторичным признакам системы, которые могут быть измерены более точно. После завершения цикла сканирования выбирается наиболее вероятная из оставшихся в фильтре гипотез – она будет искомой картой, на которой к тому же будет отмечена траектория движения исполнителя.

Метод отжига (метод симуляции отжига, simulated annealing) – 10 это техника оптимизации, использующая упорядоченный случайный поиск. Одним из главных преимуществ этой методики является то, что в условиях нехватки вычислительных ресурсов метод отжига и его модификации, выдает решение, очень близкое к одному из локальных экстремумов.

  • DPSLAM – реализация, использующая показания лазерного дальномера и фильтр частиц для хранения гипотез о положении робота и конфигурации окружающей его сцены.
  • Grid Maps – подход, описывающий средства 8 хранения и обновления информации о сцене, окружающей робота. Эта методика имеет ряд полезных свойств, благодаря которым она отлично подходит для решения поставленной задачи:

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

2. Каждая клетка либо полностью занята, либо полностью свободна.

3. Реализация не очень затратна по памяти.

4. Не важно, откуда поступает информация об окружающем мире и каким образом она была получена, что обеспечивает модульность системы.

  • ORB SLAM является универсальным и довольно точным решением задачи
    3D. Monocular SLAM - система способна в реальном времени вычислять траекторию камеры и строить разреженную трёхмерную реконструкцию сцен самых разных размеров: от рабочего стола до нескольких городских кварталов. Система отлично справляется с восстановлением довольно беспорядочных траекторий, в ней также реализованы некоторые дополнительные эвристические методы для замыкания объёмных циклов.

4 Был прочитан отчет «Разработка и реализация алгоритма обнаружения и остановки наземного робота перед внезапно возникшим препятствием» предоставленный второкурсниками.

Глоссарий

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

Прогресс по проекту "Разработка модели движения гусеничного робота и реализация алгоритма управления" (9.10.2017 - 15.10.2017)

Участники:

  • Тростницкий Сергей
  • Ивачевский Иван
  • Волкова Виктория
  • Ананьин Павел

Задачи:

  • Развернуть OS Ubuntu 16.04 на виртуальной машине (VMware Workstation)
  • Развернуть Framework ROS (Robot Operating System) на ранее установленной Ubuntu
  • Запустить TurtleSim в ROS

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

Скриншоты:

Первый отчёт по проекту Мониторинг трендов в социальных сетях в режиме реального времени (на примере Твиттер)
Участники:
  • Касимов Нур
  • Павел Овечкин
  • Екатерина Букина

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

Далее, следующей задачей стало - разобраться в о всех технологиях, а именно:

  1. Twitter API
  2. Sentiment analysis (Построение классификатора, с использованием TF, TF-IDF, терм-документную матрицу, Naive Bayes)
  3. Topic Modeling и Word Cloud

В результате работа с twitter API налажена и определена структура БД, новый материал изучен.

Было выяснено:

  • Два типа twitter API:
    • basic REST API
      Имеют ряд жёстких ограничений, а так-же необходимые для проекта API ориентированы в первую очередь на актуальность твитов, а не на полноту. Однако имеется возможность получить твиты опубликованные до 7 дней назад, без платной подписки.
    • Streaming API
      Ограничения мягче, поступают все твиты удовлетворяющие фильтру после публикации с момента подключения к API
    • В ходе анализа, выяснилось,что для решения задач проекта нужно использовать оба типа.
  • Виды классификации:
    • Классификация по бинарной шкале 
    • Классификация по многополосной шкале 
    • Системы шкалирования 
    • Субъективность/объективность
  • Подходы к классификации тональности
  • Семантические тезаурусы:
    • WordNet-Affect 
    • SentiWordNet 
    • SenticNet 
  • Методы классификации тональности:
    • Методы, основанные на правилах и словарях 
    • Машинное обучение с учителем
    • Машинное обучение без учителя 
    • Метод, основанный на теоретико-графовых моделях 
  • Topic modeling или тематическое моделирование:
    Понимание того что, готового алгоритма в виде "скормили" массив документов и все сделалось хорошо не существует. Наиболее близки LDA, LSI
  • В проекте мы будем использовать реляционную структуру базу данных, то есть хранить данные на пересечении необходимых строк и столбцов.
    Будет использоваться известная СУБД MySQL.
    Естественно, будут задействованы суррогатные ключи.
  • Из твиттера берется субъективная информация и проводится ее сентимент-анализ. Информация представляет собой отзывы о банках и о услугах того или иного банка.
Первый отчет по выбранной теме, первое собрание с заказчиком.

Команда:
Бабичева Татьяна ФО-260001
Глухих Олег ФО-260001
Порубов Андрей ФО-260003
Станислав Власов РИ-170013
Георгий Титов РИ-170013
На сайте cosmoport.club была выбрана тема № 18 (http://cosmoport.club/post/proektnyi-praktikum-dly...)

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

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

Подписка на новости
Контакты

Адрес: г. Екатеринбург, ул. Мамина-Сибиряка 145, к. 1119 (на карте)

Тел.: +7 (343) 355-93-88

info@cosmoport.club