Virtuālā jarvis. Mīklas - balss vadības dators

Lielākā daļa lietotāju zina, ka Siri sistēma tiek uzskatīta par populārāko personīgo asistentu un aptaujas tehnoloģijas iOS sīkrīkiem. Par laimi, ne tikai Siri sistēma ir pieejama tirgū. Tātad, fani daiļliteratūras un komiksi, ko rada Melvel, personīgais asistents Jarvis no filmas "Iron Man" tiek piedāvāts.

Ja ierīces īpašnieks redzēja filmu "dzelzs cilvēks", tad tas noteikti ir zināms, ka Butler Tony STARK, kura vārds ir Jarvis. Līdz ar to lietotājs varēs izmantot virtuālā kalpa palīdzību pati portatīvie aparāti. Turklāt Jarvis programma ir unikāla attīstība, kas piemēro balsi un Jarvis rakstzīmes attēlu.

Jarvis lietderības darbība sākas ar parastajiem audio norādījumiem, izmantojot un pārvaldīt norādīto rīku. Pēc uzstādīšanas beigās lietotājam būs jānorāda savu dzimumu (tā, ka virtuālais palīgs var pareizi piekļūt ierīces īpašniekam). Turklāt tai būs jānosaka galveno temperatūras apstākļu mērvienība (jo īpaši grādi Kelvin, Fārenheita vai, protams, Celsija).


Jūs varat iepazīties ar detalizētu norādījumu sarakstu, pieskaroties ikonas, kas ievietotas displeja augšējā stūrī. Tajā pašā laikā, visām komandām noteikti jāsāk ar apelāciju "Jarvis" un parasti satur vienu vārdu (piemēram, "JARVIS, laika prognoze"). Jarvis arī zina, kā informēt ierīču īpašnieku nākotnes sanāksmēm un parādīt pašreizējo laiku. Programmā var izveidot dažādus audio nosaukumus.

Ir svarīgi atzīmēt, ka optisko disku īpašnieki ar filmas bloku "Iron Man" Jarvis lietderība nodrošina papildus iespējas. Piemēram, lietotājs var viegli pārvaldīt atbilstošās filmas atskaņošanu, izmantojot šo virtuālo butleru.


Noderīga informācija: Ja jūs jautājat savam virtuālajam asistentam: vai tas ir vērts iegādāties BMW 740 (http://www.bmw-avtoport.ru/auto/7/), tad viņa atbilde ar simts procentu varbūtību būs apstiprinoša! Starp citu, jūs varat iegādāties BMW Septīto sēriju tieši tagad par ienesīgākajiem apstākļiem sev! Viss, kas jums jādara, lai tas būtu apmeklēt vietni www.bmw-avtoport.ru.

Šodien mēs runāsim par mūsu runu. Es gribētu jums braukšanas datora balss, bez pirkstu galā? Un, kā viņi saka, - domāšanas spēks! Tiesa, mēs pārvaldīsim datoru ar domu spēku, bet tas ir ļoti reāli.

Mīklas programma - Šī ir viena no labākajām programmām, lai pārvaldītu datoru caur balsi. Uz vietām komentāros uz šo programmu, viedokļi saplūst.

Tiesa ir jūsu trūkumi. Bet vairāk par to vēlāk. Starp citu, ja jūs interesē - izlasiet manu pārskatu.

Jūs varat lejupielādēt programmu šeit: http://freesoft.ru/typle

Kā to izmantot? Sākumā, uzsākt to un skatiet galvenās vadības pogas:

Programma atzinīgi vērtē mūs un nekavējoties dod mums uzaicinājumus, kā izmantot mīklu. Sākumā noklikšķiniet uz pogas Pievienot un uzrakstiet vārdu, piemēram, "Open". Lai to izdarītu, teiksim šo vārdu mikrofonā:

Pēc tam noklikšķiniet uz Pievienot. Tātad, mēs esam saglabājuši vārdu "atvērts" programmā. Jūs varat runāt mikrofonā citiem vārdiem. Galvenais nav sajaukt.

Nākamais solis pievienos komandas. Lai to izdarītu, dodieties uz šo punktu:

Tad mēs uzstādījām atzīmi pretī šim vienumam, kas mums nepieciešams:

Izvēlieties programmu, programmu vai darbību un noklikšķiniet uz sarkanās ieraksta pogas. Ja dators uztver savu balsi, noklikšķiniet uz "Pievienot":

Un tagad būs redzams mūsu profilā balss komanda. Iebildums Šis gadījums Tas, kas atver 7-zip:

Un tagad, noklikšķinot uz gala pogas "Start Talk"

mēs runājam frāzi "Open Semen Zip". Manā gadījumā viss darbosies. Un 7-ZIP programma atvērsies. Atcerieties šādu frāzi: sim SIM atvērts? Tas ir kaut kas tāds pats.

Programma ne vienmēr darbojas adekvāti. Tagad varenā krievu valoda nav pilnībā pētīta valodu programmētāji ... bet joprojām ir jauki, kad dators klausās jums.

Tāpēc, lai pārbaudītu un banālu zinātkāri, mīklas programma atbilst 100%.

Šajā videoklipā jūs varat redzēt pirmās balss dzinēju izveides vēsturi un ko vēl mums vajadzētu strādāt:

Ir tik briesmīgi nosaukumi citiem analogiem programmas, piemēram, gorynych, perpetuum, dotograph, balss komandieris. Bet tie visi ir "ne, ka." Nelietojiet kritizēt pienācīgu programmu.

Es devos 5 minūtes, lai apgūtu šo programmu. Tas ir diezgan ilgs laiks (galvenokārt šādās programmās, es saprotu 1-2 minūtes). Ja rodas jautājumi - rakstiet. Līdz drīz sanāksmēm, draugiem :)!


Ilgu laiku es neatstāju ideju par manu "Jarvis" un tehnikas pārvaldību balss namā. Un visbeidzot, rokas sasniedza šī brīnuma izveidi. Man nebija jādomā par "smadzenēm" uz ilgu laiku, aveņu pi ir piemērots.

Tik dzelzs:

  • Aveņu pi 3 modelis b
  • USB logitech kamera

Pārdošana

Mūsu palīgs darbosies ar Alexa / Hub principu:
  1. Aktivizēt bezsaistē konkrētā vārdā
  2. Atpazīt komandu mākonī
  3. Palaist komandu
  4. Ziņojums par darba vai informēšanas pieprasījuma informāciju
Jo Mana kamera tiek atbalstīta no kastes, jums nebija jādodas apkārt ar vadītājiem, tāpēc mēs nekavējoties doties uz programmas daļu.

Bezsaistes aktivizēšana

Aktivizēšana notiks ar CMU Sphinx, un viss būtu labi, bet atzīšana ir ļoti lēna no kastes, vairāk nekā 10 sekundes, kas ir absolūti nav piemērots, lai atrisinātu problēmu, kas nepieciešama, lai nodzēstu vārdnīcu no nevajadzīgiem vārdiem.

Instalējiet visu nepieciešamo:

Pip3 instalēt speechrecognition pip3 instalēt pocketsphinx
Tālāk

Sudo nano /usr/local/lib/python3.4/dist-packages/speech_Recognition/pocketsPhinx-data/en-us /pronounciation-dictionary.dict
Mēs noņemam visu, izņemot Jarvis, kas mums nepieciešams:

Jarvis jh aa r v ah s
Tagad Pocketsphinx diezgan ātri atpazīst.

Runas atpazīšana

Sākumā bija ideja izmantot Google pakalpojumu, un tā atbalsts ir speechrecognition. Bet, kā izrādījās, Google ņem naudu par to un nedarbojas ar Phys. personas.

Yandex ieguvums arī nodrošina šādu iespēju, bezmaksas un ļoti vienkāršu.

Mēs reģistrējāmies, mēs iegūstam atslēgu API. Visi darbi var būt curl'om.

Curl -x post -H "satura veids: audio / x-wav" --data-binārs "@file" "https://asr.yandex.net/asr_xml?uiid\u003dya_uid&key\u003dyf_api_key&topic\u003dQueries»

Runas sintēze

Šeit Yandex mums palīdzēs vēlreiz. Mēs nosūtām tekstu, atbildot saņemt failu ar sintezētu tekstu.

Čokurošanās "https://tts.voictech.yandex.net/generate?format\u003dwav&lang\u003dru-ru&speaker\u003dzahar&motion\u003dgood&key\u003dya_api_key" -g --data-urlencode "teksts \u003d teksts"\u003e Fails

Jarvis

Mēs apkopojam visus kopā un saņemam šādu skriptu.

#! / USR / BIN / ENV PYTHON # - * - Kodēšana: UTF-8 - * - Importēt OS Import Speech_Recognition AS SR no XML # Os.System ("atbalss" palīdz + UT Zap + pilsēta "festivāls --Tts --language angļu") def convert_ya_asr_to_key (): xmldoc \u003d minidom.parse ("./ asr_answer.xml") itemlist \u003d xmldoc.getelementsBytagname ("Variants"), ja len (vienības saraksts)\u003e 0: atgriešanās itemlist.Firstchild.nodevalue cits: atgriešanās viltus def jarvis_on (): ar sr.wavfile ("send.wav") kā Audio \u003d R.Record (avots) Izmēģiniet: T \u003d R.Recognize_Sphinx (audio) drukāšana (t), izņemot LOOPUPERROR: Drukāt ("Nevarēja saprast audio") Atgriezties t \u003d\u003d ("JARVIS") DEF JARVIS_SAY (frāze): os.System ("čokurošanās" https: //TTS.Voictech.yandex.net/generate?format\u003dwav&lang\u003dru-rub&speaker\u003dzahar&motion\u003dgood&key \u003d "" -G --data-urlencode "teksts \u003d" + frāze + "\u003e jarvis_speech.wav) os.System ("APLAY JARVIS_SPEECH.WAV") DEF JARVIS_SAY_GOOD (): frāzes \u003d ["Gatavs", "Gatavs", "Klausieties "," Ir "," kaut kas cits? ",] Randitem \u003d random.choice (frāzes) jarvis_say (Randitem) mēģināt: bet taisnība: os.System (" Arecord -b - -buffer-time \u003d 1000000 -f dat -r 16000 -D 3 -D PLUGHW: 1.0 send.wav ") ja jarvis_on (): os.System (" APLAY JARVIS_ON.WAV ") OS.System (" Arecord -b --buffer-Time \u003d 1000000 - F DAT -R 16000 -D 3 -D PLUGHW: 1.0 send.wav ") os.System (" curl -x post -h "satura veids: audio / x-wav" --data-binārs "@send .wav" https: //asr.yandex.net/asr_xml?uiid\u003d"+ya_uuid + "k + ya_uuid +" & taustiņš \u003d "k + ya_api_key +" un topic \u003d vaicājumi "\u003e asr_answer.xml") command_key \u003d convert_ya_asr_to_key (), ja (Command_key): ja ( Command_key ['taustiņš "," taustiņš_word1 "," key_word2 "]): os.System (' ') jarvis_say_good () Turpināt izņemot izņēmumu: Jarvis_say (" kaut kas noiet greizi ")
Kas šeit notiek. Palaidiet bezgalīgu cilpa, Arecord'om rakstīt trīs sekundes un nosūtiet sfinksu uz atpazīšanu, ja failā ir atrasts vārds "Jarvis"

Ja jarvis_on ():
Mēs zaudējam iepriekš ierakstīto aktivizēšanas brīdinājuma failu.

Mēs atkal uzrakstām 3 sekundes un nosūtiet Yandex, es saņemu mūsu komandu atbildē. Tālāk veiciet darbības, pamatojoties uz komandu.

Šajā patiesībā viss. Veiktspējas scenāriji var nākt klajā ar lielisku komplektu.

Izmantot gadījumu.

Tagad daži reālas izmantošanas piemēri

Philips Hue.

Uzstādīt

PIP instalēšanas phue.
Hue lietojumprogrammā instalējiet statisko IP:

Palaist:

#! / USR / bin / Python Importēšana Sys no phue importa tilta B \u003d tilts ("192.168.0.100") # Ievadiet tiltu IP šeit. #F darbojas pirmo reizi, nospiediet pogu uz tilta un palaist ar B.Connect () Uncommented # B.Connect () Print (B.Get_scene ())
Mēs uzrakstām vēlamo shēmu ID, formu "470d4c3c8-on-0"

Skripta beigu versija:

#! / USR / bin / Python Importēšana Sys no phue importa tilta B \u003d tilts ("192.168.0.100") # Ievadiet tiltu IP šeit. #F darbojas pirmo reizi, nospiediet pogu uz tilta un palaist ar B.Connect () Uncommented # B.Connect (), ja (SYS.ARGV \u003d\u003d "OFF"): B.Set_light (, "ON", FALSE)) Cits: b.ActiveVate_scene (1, SYS.ARGV)
Pievienot Jarvis:

Ja (Command_key ["Light", "Ieslēgt gaismu", "Light"]): os.System ("python3 /home/pi/smarthome/hue/hue.py A1167AA91-on-0") jarvis_say_good () Turpināt Ja (Command_key ["Light", "Mute Light")): Os.System ("python3 /home/pi/smarthome/hue/hue.py AC637E2F0-on-0") jarvis_say_good () Turpināt, ja (Command_Key () "Izslēdziet gaismu", "izslēdziet gaismu"]): os.System ("python3 /home/pi/smarthome/hue/hue.py" izslēgts ") jarvis_say_good () Turpināt

LG TV.

Mēs no šejienes ņemam skriptu. Pēc pirmā sākuma un konjugācijas koda ievadīšanas, pats kods nemainās, lai jūs varētu samazināt šo daļu no skripta un atstāt tikai kontroli.

Pievienot Jarvis:

# 1 - Jauda # 24 - Volune_Up # 25 - Volume_down # 400 - 3D_Video Ja (Command_Key In ["TWN TWC", "Izslēdziet televizoru")): Os.System ("Python3 / Sākums / Pi / Smarthome / TV / TV2. Py 1 ") jarvis_say_good () Turpināt, ja (Command_Key in ['Pievienot tilpumu", "skaļāk"): os.System ("python3 /home/pi/smarthome/tv/tv2.py 24") jarvis_say_good () Turpināt

Radio

Sudo apt-get instalēt mpg123
Pievienot Jarvis:

Ja (Command_key [News "," izslēdziet ziņas "," Kas notiek "): Os.System (" MPG123 URL) turpinās \\ t
Jūs joprojām varat ievietot homebridge un pārvaldīt visu, izmantojot Siri, ja jums nav pabeigt Jarvis.

Attiecībā uz runas atzīšanas kvalitāti, nevis Alexa, protams, bet 5 metru attālumā no uzticīgo sastāvdaļu procentuālo daļu. Galvenā problēma ir runa no TV skaļruņiem tiek ierakstīts ar komandām un traucē atpazīstamību.

Tas viss, paldies.

Tags:

  • aveņu pi
  • python
Pievienojiet tagus