Комментарии 47
Позже это планируется сделать опенсурс проектом? Что-бы каждый человек при должно умение и хорошей документации смог сделать это сам?
Он изначально позиционируется как Open Source. Ссылка на trac есть в статье.
а как логин получить к этому trac'у?
Регистрация по OpenID на opensvn.ru
Залогинился в opensvn.ru по openid.
Выставил пароль для trac.
Прошёл по вашей ссылке для trac с выставленным логином.
Теперь везде ошибка:
Error: Forbidden
TIMELINE_VIEW privileges are required to perform this operation
По ссылке на вики:
Error: Forbidden
WIKI_VIEW privileges are required to perform this operation on TracGuide
По trac.opensvn.ru/ion/ тоже самое.
?
Выставил пароль для trac.
Прошёл по вашей ссылке для trac с выставленным логином.
Теперь везде ошибка:
Error: Forbidden
TIMELINE_VIEW privileges are required to perform this operation
По ссылке на вики:
Error: Forbidden
WIKI_VIEW privileges are required to perform this operation on TracGuide
По trac.opensvn.ru/ion/ тоже самое.
?
Поправил права.
спасибо.
я уже потестировал его с помощью:
После настройки микрофона показывал сносные результаты. Но и ошибок было достаточно.
Относительно синтеза звука правильно подсказывают внизу: festival
И в приведённой вами в прошлый раз ссылке: ab-log.ru/smart-house/speech/voice-synthesis
он тоже есть.
Впрочем как и распознавание:
ab-log.ru/smart-house/speech/speech-recognition
я уже потестировал его с помощью:
#!/bin/bash
# installation:
# sudo apt-get install sox curl perl
# sudo sh -c "curl -s -L cpanmin.us | perl - JSON::XS"
while [ true ]; do
echo "recording..."
rec -q -c 1 -r 16000 current.wav silence 1 0.3 2% 1 0.3 2%
if [ -z current.wav ]; then
echo "nothing was recorded (check mic setting, silence level)"
continue
fi
echo "recognizing..."
sox current.wav current.flac
text=`curl -s -H 'Content-Type: audio/x-flac; rate=16000' --data-binary '@current.flac' 'https://www.google.com/speech-api/v1/recognize?xjerr=1&client=chromium&lang=ru-RU'| perl -MJSON::XS -CO -nE'say decode_json($_)->{hypotheses}->[0]->{utterance}'`
echo "recognized text: '$text'"
# wrapper around festival for Russian language
# festival installation/configuration is needed for this
#saytext-ru.sh "$text"
done
После настройки микрофона показывал сносные результаты. Но и ошибок было достаточно.
Относительно синтеза звука правильно подсказывают внизу: festival
И в приведённой вами в прошлый раз ссылке: ab-log.ru/smart-house/speech/voice-synthesis
он тоже есть.
Впрочем как и распознавание:
ab-log.ru/smart-house/speech/speech-recognition
> Если мы запустим несколько (предположим, 5) копий скрипта с интервалом в 1 секунду, получим непрерывное распознавание голоса.
То есть система непрерывно шлёт на сервер Гугла аудио для распознавания, да еще в несколько потоков. Какой при этом трафик генерируется?
Моих скромных 5 мбит хватает за глаза.
Для ADSL-щиков это может оказаться критично, у них исходящий канал — больное место :)
Ну у кого-то с глубинки нет такой скорости. Правда с моими 2 мбитами тоже можно разгулятся, но у нас я чуть ли не буржуй с такой скоростью.
А Гугл не ограничивает кол-во запросов к API? Все-таки постоянно отправлять аудио нa распознавание, имхо, не лучшая идея.
У меня проходят без проблем все запросы на распознавание. А по поводу, как распознавать — предлагайте, если будет хорошая идея, почему бы и не реализовать :)
Вот еще какая идея родилась… Каждая команда начинается с ключевого слова, обозначающего, что вы обращаетесь именно к системе. Можно распознавать это ключевое слово локально, и только если оно обнаружено, слать последующие 5 секунд (саму команду) в гугл. Плюсы очевидны:
1) не пересылаем аудиопоток вхолостую, не забиваем канал
2) настроить движок на распознавание одного слова, имхо, легче, чем научить отличать одну команду от другой.
1) не пересылаем аудиопоток вхолостую, не забиваем канал
2) настроить движок на распознавание одного слова, имхо, легче, чем научить отличать одну команду от другой.
Неплохая идея. Спасибо!
В сериале StarTrek персонажи обращаются к компьютеру ключевой фразой «компьютер»
Например:
-Компьютер, где находится Тувок?
-Тувок находится у себя в каюте.
Причем, я бы не отказался от тех писков, которые выдает компьютер (после обращения «компьютер» раздается серия звуков, подтверждающая готовность к приему команды)
Например:
-Компьютер, где находится Тувок?
-Тувок находится у себя в каюте.
Причем, я бы не отказался от тех писков, которые выдает компьютер (после обращения «компьютер» раздается серия звуков, подтверждающая готовность к приему команды)
Есть идея реализовать такую схему:
1. Ключевое слово, после которого включается прием команды (например, «компьютер»)
2. ПК подтверждает пререход к готовности принимать команды (например говорит: «слушаю»)
3. Запись 5-10 секундного файла, который уже и отправляется гуглу.
Комментирующие советуют отлавливать ключевое слово средствами не гугла. Порывшись в сети, ничего лучше CMU sphinx не нашел… Но с настройкой его вышел затык. Информации крайне мало и она скудна. Может кто подскажет, как вообще прикрутить к нему русский язык и заставить слушать микрофон?
1. Ключевое слово, после которого включается прием команды (например, «компьютер»)
2. ПК подтверждает пререход к готовности принимать команды (например говорит: «слушаю»)
3. Запись 5-10 секундного файла, который уже и отправляется гуглу.
Комментирующие советуют отлавливать ключевое слово средствами не гугла. Порывшись в сети, ничего лучше CMU sphinx не нашел… Но с настройкой его вышел затык. Информации крайне мало и она скудна. Может кто подскажет, как вообще прикрутить к нему русский язык и заставить слушать микрофон?
Вместо писка можно вибрацию лёгкую пускать. Таким образом не пугая людей или детей.
А чет так слабо — шлете все, что происходит в вашем доме только в Google? Шлите сразу путену, милиции, ну и в организацию воров-домушников. Это ж верх патриотизма — гражданин не только не против, чтоб его прослушивали, он сам устанавливает у себя жучки и выдает наружу.
Гугл, вроде, переводит translate-API на платные рельсы. Не отвалится ли озвучивание текста после этого?
Все-таки решение с гуглом не очень. Передача команды по сети, ожидание обработки и результата — это не очень хорошее решение. Нет, скажем, движка, который можно было бы обучить командам со своего голоса? Ведь гугл — вещь универсальная, а команды распознавать система должна только от определенного круга пользователей.
Посматриваю в сторону CMU Sphinx. Но по отзывам, там с распознаванием все не так гладко.
Обучить его нельзя? Пользователь говорит команду, он разбирает ее по своему алгоритму и я присваиваю результату разборки свой текст, если есть отклонения (к примеру).
Так используйте его как запасной вариант. Есть интернет — распознает через гугль, нет интернета — все равно распознает, через сфинкс, пусть и хуже.
Интересно. Мы разрабатываем из этой же области проект. Вот снял чуток:
www.youtube.com/watch?feature=player_detailpage&v=LV3Dq-DtISE#t=15s
www.youtube.com/watch?feature=player_detailpage&v=LV3Dq-DtISE#t=15s
Давно на хабре не был, а тут зашел и будущее.
Также критичен по поводу выбора гугла и многих скриптов, многим нужно какое-то решение под ключ без знаний шелскриптинга и интернета. Но как вариант с микробюджетом то!
Также критичен по поводу выбора гугла и многих скриптов, многим нужно какое-то решение под ключ без знаний шелскриптинга и интернета. Но как вариант с микробюджетом то!
Идейка с распознанием голоса хорошая. Но нужно учесть, что человек может слушать громкую музыку, и в словах, к примеру, песен могут быть команды + человека может быть не слышно. По этому, как совет, добавьте еще и обработку голоса. Такое добавление поможет решить некоторые проблемы, к примеру с интернетом.
меня все мучает вопрос и ситуацией когда нет инета:
сколько не говори тогда «Дом, включи свет» — ничего же и не дождешься.
Вариант как предложил Ocelot вообще предусмотрен?
Что-то я не доверяю такому управлению.
У меня тут, недавно, без всякого лишнего управления микроволновка играла в «восстание роботов» и сама включалась — хорошо что еще уснуть не успел.
сколько не говори тогда «Дом, включи свет» — ничего же и не дождешься.
Вариант как предложил Ocelot вообще предусмотрен?
Что-то я не доверяю такому управлению.
У меня тут, недавно, без всякого лишнего управления микроволновка играла в «восстание роботов» и сама включалась — хорошо что еще уснуть не успел.
А вы не рассматривали festival для синтеза голоса, чем он плох? На том же сайте есть упоминание о нём: ab-log.ru/smart-house/speech/voice-synthesis
Спасибо за статью. Вот бы еще код на Java/C# бы. С перлом не работал никогда. Код тяжело воспринимается.
Попробуйте Iris (An interactive desktop assistant — uses voice commands to answer and automate simple lookup and playing tasks For simple tasks like checking the weather and brief wikipedia queries.)
github.com/samirahmed/Iris-Voice-Automation
github.com/samirahmed/Iris-Voice-Automation
Вспоминается из Шумилова отрывок…
— А почему Дик всё время туда-сюда очки дёргает?
— А он их надевает, когда голосовые команды отдаёт. А то скажет он тебе «Отвяжись!», а комп примет на свой счёт. И что-нибудь отвяжет. Будет обидно.
Как-то так =)
Собственно, всё это весьма прикольно. Но — постоянно слать куски аудио в корпорацию добра? Во-первых, куски — попадание текста на разрыв уже заставит повторить команду. Во-вторых, такой объём траффика… И в-третьих, слить полностью аудио-запись своей жизни в гугль — весьма смелое решение =)
Имхо, лучше всё-таки делать запись только при опредлённых условиях. Лучше всего реагировать при этом не на голос, а на какой-нить редкий звук — хлопок, свист… Для эстетов можно носить с собой колокольчик и настроить программу реагировать на издаваемый им звон =) Хлопок, теоретически, даже можно использовать как триггер для записи по уровню звука.
— А почему Дик всё время туда-сюда очки дёргает?
— А он их надевает, когда голосовые команды отдаёт. А то скажет он тебе «Отвяжись!», а комп примет на свой счёт. И что-нибудь отвяжет. Будет обидно.
Как-то так =)
Собственно, всё это весьма прикольно. Но — постоянно слать куски аудио в корпорацию добра? Во-первых, куски — попадание текста на разрыв уже заставит повторить команду. Во-вторых, такой объём траффика… И в-третьих, слить полностью аудио-запись своей жизни в гугль — весьма смелое решение =)
Имхо, лучше всё-таки делать запись только при опредлённых условиях. Лучше всего реагировать при этом не на голос, а на какой-нить редкий звук — хлопок, свист… Для эстетов можно носить с собой колокольчик и настроить программу реагировать на издаваемый им звон =) Хлопок, теоретически, даже можно использовать как триггер для записи по уровню звука.
Проблемы не будет. Вы же знаете, что Гугл закрывает translate API? Все потому, что это «Корпорация добра», а не халявы.
А от статьи двоякое ощущение — техническая сторона хороша для перл-кодера, например, иногда похвастаться голосовым управлением сервером (перед начальством) полезно.
Но вот отношение к доступным ресурсам, в частности, того же Гугла — как у пацанов, включающих громкий БУМЦ_БУМЦ ночью во дворе — мне хорошо, а на остальных — … (сами догадываетесь)
А представьте, что приедут братки, у которых и машина побольше и музыка погромче…
Почему бы не взять SpeechAPI (под Win) или просто записать звуковые файлы, а потом собрать нужную фразу?
А от статьи двоякое ощущение — техническая сторона хороша для перл-кодера, например, иногда похвастаться голосовым управлением сервером (перед начальством) полезно.
Но вот отношение к доступным ресурсам, в частности, того же Гугла — как у пацанов, включающих громкий БУМЦ_БУМЦ ночью во дворе — мне хорошо, а на остальных — … (сами догадываетесь)
А представьте, что приедут братки, у которых и машина побольше и музыка погромче…
Почему бы не взять SpeechAPI (под Win) или просто записать звуковые файлы, а потом собрать нужную фразу?
Будет закрыто синтезерование голоса — значит будут другие ресурсы. Благо синтез не такая большая проблема, как распознавание. О каком начальстве вы говорите? Моя сфера работы несколько в стороне от программирования. А насчет отношения к ресурсам считаю так — если гугл не ограничивает кол-во запросов к своим сервисам, значит для него это приемлемо.
Синтез, действительно, не такая проблема как распознавание — существуют готовые библиотеки, с помощью которых это реализуется.
А насчет распознавания — а нужно ли оно, на самом деле, в этом проекте? Я имею в виду, что требуется то не распознавание речи, чтобы получить сказанное в виде текста, а только отделение команд от других звуков — голосовое управление. А в этом случае можно использовать опять же готовые библиотеки, для которых можно «нарезать» образцы команд, а затем использовать их для применения действий. Как при голосовом наборе номера в сотовом — он же не распознает сказанное, а просто сравнивает спектрограммы или сигналограммы.
А насчет распознавания — а нужно ли оно, на самом деле, в этом проекте? Я имею в виду, что требуется то не распознавание речи, чтобы получить сказанное в виде текста, а только отделение команд от других звуков — голосовое управление. А в этом случае можно использовать опять же готовые библиотеки, для которых можно «нарезать» образцы команд, а затем использовать их для применения действий. Как при голосовом наборе номера в сотовом — он же не распознает сказанное, а просто сравнивает спектрограммы или сигналограммы.
а гугл не забанит за большое кол-во запросов? ;)
Может уже существует готовый вариант распознователя голоса google под Win? Пока устраивает андроид на виртуалке, но может уже есть решения.
Нет, только не это — мечта становится реальностью!
Спасибо вам огромное за STT и TTS ссылки. Пойду через AutoIt прикручивать их. Уже есть даже готовые скрипты
Прощай работа =( — Привет отлаживание сутками на пролет умного дома =)
Спасибо вам огромное за STT и TTS ссылки. Пойду через AutoIt прикручивать их. Уже есть даже готовые скрипты
Прощай работа =( — Привет отлаживание сутками на пролет умного дома =)
На моем андроиде 4.4.4 в настройках голосового поиска есть пункт «распознавание речи оффлайн», в котором я указал, что хочу использовать дополнительно к предустановленному английскому словарю еще русский и немецкий. Каждый хранится локально и весит около 20 мегабайт. Вроде бы, распознавание при этом должно делаться без интернета. Может, как-то к подобному прикрутиться? Андроидофон или планшет в систему ввести…
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
«Умный дом» собственными руками. Часть 3. Синтез и распознавание голоса с помощью Google