Управление Умным Домом с помощью голоса

Обсуждение статей, технологий домашней автоматизации, программных и аппаратных решений
midaw
Сообщения: 93
Зарегистрирован: 14 янв 2012, 14:38
Откуда: Москва
Контактная информация:

Re: Управление Умным Домом с помощью голоса

Сообщение midaw » 02 фев 2012, 18:41

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

midaw
Сообщения: 93
Зарегистрирован: 14 янв 2012, 14:38
Откуда: Москва
Контактная информация:

Re: Управление Умным Домом с помощью голоса

Сообщение midaw » 02 фев 2012, 18:51

Как я понял вышло ПО. Голосового управления на андроид. Пока сам несмотрел, но хвалят. https://market.android.com/details?id=c ... h.remindit

admiral
Сообщения: 35
Зарегистрирован: 15 ноя 2011, 17:27

Re: Управление Умным Домом с помощью голоса

Сообщение admiral » 05 фев 2012, 20:52

midaw писал(а):Как я понял вышло ПО. Голосового управления на андроид. Пока сам несмотрел, но хвалят. https://market.android.com/details?id=c ... h.remindit
Так это приложение все равно работает через гугл. Так что лучше уж напрямую гугл использовать.

mirsum
Сообщения: 3
Зарегистрирован: 26 янв 2012, 17:25

Re: Управление Умным Домом с помощью голоса

Сообщение mirsum » 27 фев 2012, 22:53

API сервиса Google у кого работает? у меня нет.
вот что я использую: texttocmd.php
<?
// Используем cURL для формирования HTTP POST-запроса к Google API
// Пакет php5-curl в Debian
$file_to_upload = array('myfile'=>'@current.flac');
$ch = curl_init();
curl_setopt($ch, CURLOPT_CAINFO,'curl-ca-bundle.ctr');
curl_setopt($ch, CURLOPT_POST,1);
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: audio/x-flac; rate=16000"));
curl_setopt($ch, CURLOPT_POSTFIELDS, $file_to_upload);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
$result = curl_exec ($ch);
print_r(curl_getinfo($ch));
echo "\n\ncURL error number:" .curl_errno($ch);
echo "\n\ncURL error:" . curl_error($ch);
curl_close ($ch);

// Описываем команды, которые мы будем выполнять
$cmd_matrix = array(array(array("включ", "свет"), "switch on"), array(array("выключ", "свет"), "switch off"));
// Google возвращает JSON, поэтому парсим стандартной функцией. Доступна в PHP 5.2
$json_array = json_decode($result, true);
$voice_cmd = $json_array["hypotheses"][0]["utterance"];

// Ищем в ответе Google наши команды.
// Если находим, выполняем заранее запрограммированное действие. В данном случае, вывод на экран
for ( $i = 0; $i < count($cmd_matrix); $i++ )
{
        $ok = 1;
        for ( $k = 0; $k < count($cmd_matrix[$i][0]); $k++ )
        {
                if ( !preg_match("/".$cmd_matrix[$i][0][$k]."/", $voice_cmd) )
                $ok = 0;
        }
        if ( $ok == 1 )
        echo $cmd_matrix[$i][1];
}

?>


запускаю: googl.sh
#!/bin/bash
while [ true ]; do
rec -q -c 1 current.wav silence 1 0.3 3% 1 0.3 3%
sox current.wav current1.wav rate 16000
flac -f -s current1.wav -o current.flac
php texttocmd.php
done

в корне лежит файл curl-ca-bundle.crt
или его кудато в другое место надо кидать?

выходит ошибка:
PHP Parse error: syntax error, unexpected T_VARIABLE in /var/www/googl/texttocmd.php on line 27
это строка -         $ok = 1;

midaw
Сообщения: 93
Зарегистрирован: 14 янв 2012, 14:38
Откуда: Москва
Контактная информация:

Re: Управление Умным Домом с помощью голоса

Сообщение midaw » 28 фев 2012, 00:01

Сертификат нужен был для виндового PHP и мне лично. А про линукс с сертификатов вроде сверху ничего не сказано. Ну и у тебя сказано что ошибка в 27 строке, что это у тебя за строка я хз...

AlexSmok
Сообщения: 4
Зарегистрирован: 03 янв 2012, 12:27

Re: Управление Умным Домом с помощью голоса

Сообщение AlexSmok » 02 мар 2012, 10:24

Если скрипт ничего не возвращает (у меня так было) то можно либо как сказано выше использовать сертификат, либо

// Отключить ошибку "SSL certificate problem, verify that the CA cert is OK"
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
// Отключить ошибку "SSL: certificate subject name 'hostname.ru' does not match target host name '123.123.123.123'"
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);

AlexSmok
Сообщения: 4
Зарегистрирован: 03 янв 2012, 12:27

Re: Управление Умным Домом с помощью голоса

Сообщение AlexSmok » 02 мар 2012, 10:41

Люди, как долго у Вас выполняется распознавание?

$t1 = time();
$result = curl_exec($ch);
echo time()-$t1." секунд \n";

У меня 17-18 секунд.
Размер файла current.flac 28 kb.

Как-то это долго. Быстрее никак?

andvas
Сообщения: 177
Зарегистрирован: 07 ноя 2011, 23:04
Откуда: Россия, Самара
Контактная информация:

Re: Управление Умным Домом с помощью голоса

Сообщение andvas » 02 мар 2012, 10:47

AlexSmok писал(а):Люди, как долго у Вас выполняется распознавание?

$t1 = time();
$result = curl_exec($ch);
echo time()-$t1." секунд \n";

У меня 17-18 секунд.
Размер файла current.flac 28 kb.

Как-то это долго. Быстрее никак?
У меня от голоса, до выполнения команды секунд 5-6 проходит

midaw
Сообщения: 93
Зарегистрирован: 14 янв 2012, 14:38
Откуда: Москва
Контактная информация:

Re: Управление Умным Домом с помощью голоса

Сообщение midaw » 02 мар 2012, 11:29

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

иначе получается, вроде настроил программу на микрофон. отошел подальше и все. программа не воспринимает, что ты там вообще чего то говорил. то есть до распознавания дело вообще не доходит...

andvas
Сообщения: 177
Зарегистрирован: 07 ноя 2011, 23:04
Откуда: Россия, Самара
Контактная информация:

Re: Управление Умным Домом с помощью голоса

Сообщение andvas » 02 мар 2012, 11:39

midaw писал(а):вот именно для этого нужна гарнитура. тогда четкость и скорость опознания будет увеличиваться. хотя пока не тестировал на практике.

иначе получается, вроде настроил программу на микрофон. отошел подальше и все. программа не воспринимает, что ты там вообще чего то говорил. то есть до распознавания дело вообще не доходит...
Меня пока мой Шорох-7 устраивает, установил его на кухне у стены рядом со столом, т.е. сидя за столом, или вообще в радиусе 1,5 метра 90% распознаётся с первого раза. Но как уже тут где то упоминал Andrey_B , жену у меня практически не распознаёт. :) Так что получается, все таки я главный в доме :D

midaw
Сообщения: 93
Зарегистрирован: 14 янв 2012, 14:38
Откуда: Москва
Контактная информация:

Re: Управление Умным Домом с помощью голоса

Сообщение midaw » 02 мар 2012, 11:42

У женщин больше эмоций и чувств в голосе. Что именно женщина хочет сам черт не поймет. Отсюда и проблемы. :) А что за шорох такой? Можно ссылочку?

andvas
Сообщения: 177
Зарегистрирован: 07 ноя 2011, 23:04
Откуда: Россия, Самара
Контактная информация:

Re: Управление Умным Домом с помощью голоса

Сообщение andvas » 02 мар 2012, 11:47

midaw писал(а):У женщин больше эмоций и чувств в голосе. Что именно женщина хочет сам черт не поймет. Отсюда и проблемы. :) А что за шорох такой? Можно ссылочку?
Вот у себя в городе покупал http://vm-sb.ru/p3160847-miniatyurnyj-a ... rofon.html, а подробнее не сложно найти в интернете.

Andrey_B
Администратор
Сообщения: 5327
Зарегистрирован: 18 мар 2011, 12:06

Re: Управление Умным Домом с помощью голоса

Сообщение Andrey_B » 02 мар 2012, 11:50

midaw писал(а):Что именно женщина хочет сам черт не поймет.
А еще говорят Корпорация Добра... ;)

midaw
Сообщения: 93
Зарегистрирован: 14 янв 2012, 14:38
Откуда: Москва
Контактная информация:

Re: Управление Умным Домом с помощью голоса

Сообщение midaw » 02 мар 2012, 11:54

andvas писал(а): Вот у себя в городе покупал http://vm-sb.ru/p3160847-miniatyurnyj-a ... rofon.html, а подробнее не сложно найти в интернете.
Да, я сразу нашел. А вопрос надо было задать так. Куда это чудо подключается вообще и в вашем частном случае? Может настала покупать крутую аудиокарту.

andvas
Сообщения: 177
Зарегистрирован: 07 ноя 2011, 23:04
Откуда: Россия, Самара
Контактная информация:

Re: Управление Умным Домом с помощью голоса

Сообщение andvas » 02 мар 2012, 12:10

midaw писал(а):
andvas писал(а): Вот у себя в городе покупал http://vm-sb.ru/p3160847-miniatyurnyj-a ... rofon.html, а подробнее не сложно найти в интернете.
Да, я сразу нашел. А вопрос надо было задать так. Куда это чудо подключается вообще и в вашем частном случае? Может настала покупать крутую аудиокарту.
У себя я подключил напрямую в сервер, в mic. от него метра 4 экранированной витой парой до того места которое описывал выше. У себя на сервере я правда не стал до конца разбираться с настройками, шумов, громкости, уровня и.т.д., потому что то что у меня получилось сразу, меня вполне устраивает.

AlexSmok
Сообщения: 4
Зарегистрирован: 03 янв 2012, 12:27

Re: Управление Умным Домом с помощью голоса

Сообщение AlexSmok » 02 мар 2012, 12:11

После поиска откуда косяк со скоростью удалось только обнаружить что

CURLINFO_NAMELOOKUP_TIME: 15.007158
CURLINFO_PRETRANSFER_TIME: 15.299692

ну и следовательно

CURLINFO_STARTTRANSFER_TIME: 16.300858
CURLINFO_TOTAL_TIME: 18.119222

Следовательно косяк где-то в дугом месте.

midaw
Сообщения: 93
Зарегистрирован: 14 янв 2012, 14:38
Откуда: Москва
Контактная информация:

Re: Управление Умным Домом с помощью голоса

Сообщение midaw » 02 мар 2012, 12:22

AlexSmok писал(а): Следовательно косяк где-то в дугом месте.
По моему основной косяк будет здесь:
rec -q -c 1 -r 16000 current.wav silence 1 0.3 3% 1 0.3 3%
А там где ты разбираешься. Если даже и поймешь, что долго гугл преобразуют голос в текст. Ничего изменить нельзя.

AlexSmok
Сообщения: 4
Зарегистрирован: 03 янв 2012, 12:27

Re: Управление Умным Домом с помощью голоса

Сообщение AlexSmok » 02 мар 2012, 12:30

Разобрался я с вопросом.

Для белорусов: на debian поменяйте DNS на гугловский 8.8.8.8 (DNS от байфлая тут не помощник)

CURLINFO_NAMELOOKUP_TIME: 0.091166
CURLINFO_PRETRANSFER_TIME: 0.385008
CURLINFO_STARTTRANSFER_TIME: 1.386168
CURLINFO_TOTAL_TIME: 2.511629

Как-то так. С 18-ти секунд до 2-х. Уже радует.
Распознаёт неплохо если говорить с одинаковой громкостью... осталось Шорох прикупить и с ним попробовать.

midaw, я там копал. Запись и перекодировка влёт. Да и распознавание теперь то же.

И разобраться с озвучиванием текста. Предварительно попробовав я понял что это посложнее будет. Но это другая тема.

midaw
Сообщения: 93
Зарегистрирован: 14 янв 2012, 14:38
Откуда: Москва
Контактная информация:

Re: Управление Умным Домом с помощью голоса

Сообщение midaw » 02 мар 2012, 12:43

AlexSmok писал(а): Для белорусов: на debian поменяйте DNS на гугловский 8.8.8.8 (DNS от байфлая тут не помощник)
хех, а я давно на этом наркотике сижу 8.8.8.8 (гугловский DNS). интернет также шустрее работает с ним.
хотя по хорошему и правильнее будет ссылаться на IP, если он конечно не меняется.

а вообще конечно 8.8.8.8 опасная штука. ведь они знают теперь куда мы ходим и какую рекламу сувать... для тех кому это важно )))

ну и да, я забираю свои слова обратно. на счет не стоит разбираться. забыл про DNS.

vtec
Сообщения: 459
Зарегистрирован: 19 сен 2011, 09:28

Re: Управление Умным Домом с помощью голоса

Сообщение vtec » 02 мар 2012, 15:56

Кто нибудь обдумывал места расположения микрофона?
Точно вижу целесообразно разместить на кухне (например: руки грязные) и в коридоре (например когда уходишь подал команду). В комнате уже не та потребность, т.к. под рукой может быть планшет, телефон и т.д.
А Вы как считаете?

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

Ответить