Перейти к содержимому


Полностью роботизированная платформа Endurance open-source


  • Авторизуйтесь для ответа в теме
В этой теме нет ответов

#1 ENDURANCE

ENDURANCE

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 45 сообщений
  • ГородMoscow
  • Род занятийРобототехника

Отправлено 16 августа 2016 - 09:32

Полностью роботизированная платформа Endurance open-source

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

Начали мы с наиболее простой задачи – синтеза голоса, поскольку задача эта уже давно решена многими вендорами.  Еще в  1984 году Стив Джобс, анонсируя свой Макнтош, удивил всех на презентации, когда первый Мак заговорил.

С выбором модулей по синтезу речи проблем не было. Они все довольно хорошо работают и имеют большой  выбор голосов.

В результате мы использовали стандартный SAPI от Microsoft. Данный функционал с различными языковыми наборами распространяется бесплатно.
Что касается распознавания образов, то здесь задача более сложная, т.к. необходимо не просто распознавание картинки или лица, а распознавание образа в потоковом видео, идущем от камеры. Здесь важен выбор используемых программой ресурсов. Если для компьютера это не имеет значения, то для планшета это принципиально, так как программа должна работать эффективно и не «подвешивать» систему.

Для данного решения мы использовали открытую библиотеку OpenCV. Для ускорения работы сначала ведется поиск любого лица определенного размера в области видимости. Поиск идет с помощью каскадов Хаара и готового обученного шаблона, входящего  в состав библиотеки OpenCV.

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

Теперь перейдем к наиболее сложной части - распознаванию  голоса.
Здесь мы потратили 90% всех усилий. И признаемся, что только сейчас полностью удовлетворены качеством работы. Мы старались использовать готовые решения Open Source.
К сожалению,  99% этих решений либо платные, либо плохо работают. Т.е. вы говорите «Манчестер», а система слышит «Ливерпуль».  Пришлось долго выбирать и пробовать различные слова и комбинации.

Например, широко известное Open Source решение Sphinx работает локально, представлены все инструменты, но требует много времени для обучения и получения минимально приемлемого уровня распознавания.

В результате мы остановились на Google Speech API,  поддерживающий не более 50 запросов в сутки (около 15 минут распознавания). Для демо это вполне подходит.
У Google хорошее качество распознавания. Даже с расстояния нескольких метров распознавание происходит вполне прилично.Изображение
Итак, в чем же суть программы?

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

(
Tim = Добрый день, Тим. Мы приветствуем Вас на нашей конференции.

Steve = Спасибо, что пришли, Стив, вас сейчас встретят. Хорошего дня!

35310204 = Срок погашения Вашего кредита до 30 числа следующего месяца.

)

Здесь идет речь не об искусственном интеллекте, а о простом интерфейсе распознавания образов и речи и синтеза речи.
Итак, какие же возможности открывает данная программа и подобный интерфейс? Их можно использовать для создания некой полноценной роботизированной платформы, которые существуют сейчас в виде электронных киосков.
На наш взгляд, эта программа будет выглядеть более элегантно, если использовать ее совместно с DIY SelfieBot.

Рассмотрим  теоретические варианты использования платформы


1.   Стойка регистрация на конференции СелфиБот
Решаемая проблема: снизить расходы на обслуживающий персонал для конференций.
Задача: Обеспечить посетителей и гостей конференции удобным пользовательским интерфейсом  для автоматической регистрации онлайн.
Решение: Гость подходит к стойке. Произносит свое имя и фамилию. Система распознает его, проверяет в базе и производит онлайн регистрацию гостя.
Пример:
- Представьтесь, пожалуйста.
- Тим Кук.
- Добрый день, Тим. Мы приветствуем Вас на нашей конференции.

Изображение


Изображение


2.   Виртуальный секретарь СелфиБот
Решаемая проблема: Снизить расходы на секретаря в офисном центре.
Задача:  Предоставить посетителям удобный интерфейс для регистрации при посещении того или иного офисного центра.
Решение: Гость подходит к СелфиБоту, называет свое имя и фамилию, после чего данная информация посредством смс, мэйла или голосового сообщения передается принимающей стороне.
Пример:
- Представьтесь, пожалуйста.
- Стив Возняк.
- Спасибо что пришли, Стив, вас сейчас встретят. Хорошего дня!


Изображение


Изображение

3.   Терминал самообслуживания СелфиБот
Решаемая проблема: Снизить расходы на самообслуживание клиентов и повысить качество предоставляемых услуг.
Задача:  Обеспечить клиента  удобным, простым интерфейсом для взаимодействия и терминалом самообслуживания. Голосовое общение с терминалом.
Решение: Клиент подходит к терминалу и говорит, какие операции хочет совершить. Нет необходимости набирать что-то на экране.
Пример:
- Добрый день! Какую операцию вы хотели бы совершить?
- Я хотел бы узнать срок погашения кредита. Номер счета 35310204.
- До 30-го числа следующего месяца.

Изображение

4.   Помощник в магазине или торговом зале СелфиБот
Решаемая проблема: Снизить расходы на персонал и предоставить клиентам возможность виртуального получения информации.
Задача: Обеспечить клиента удобным и простым интерфейсом для взаимодействия с электронным помощником/продавцом.
Решение: Клиент подходит к помощнику,  задает те или иные вопросы и получает  желаемую информацию.
Пример:
- Добрый день! Рады видеть вас у нас в магазине.
- Какие у вас специальные скидки?
- Для постоянных гостей у нас действуют 10% скидки на все товары.
- Есть ли у вас новые коллекции?
- Да в правом дальнем ряду есть все новые коллекции.

Изображение

Изображение

5.   Робот-официант СелфиБот в кафе/ресторане

Решаемая проблема: Снизить расходы на персонал, уменьшить время ожидания клиента.
Задача: Обеспечить клиента удобным и простым интерфейсом для взаимодействия с электронным официантом.
Решение: Робот-официант подъезжает к клиенту,  осведомляется о его выборе и принимает  заказ.
Пример:
- Добрый день! Рады видеть вас у нас в кафе. Вы уже выбрали что-нибудь?
- Да, мне капучино и круассан.
- Спасибо за заказ. Он будет доставлен вам в течение 5 минут.

Изображение

Изображение





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


Напоминаем, что проект open-source и распространяется среди образовательных учреждений  бесплатно.
Пишите нам gf@EnduranceRobots.com
Skype: George.fomitchev
Моб тел: +7 916 225 4302 (в т.ч. Воцап и Вайбер)

http://EnduranceRobots.com




Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных