Virtualni jarvis. Typle - Kompjuter za kontrolu glasa

Većina korisnika zna da se Siri sistem smatra najpopularnijim tehnologijom ličnog asistenta i ispitivanja na iOS uređajima. Srećom, ne samo Siri sustav nije dostupan na tržištu. Dakle, ljubitelji fikcije i stripovi koji su stvorili Marvel, lični asistent Jarvis iz filma "Iron Man" nudi se.

Ako je vlasnik uređaja ugledao film "Iron Man", onda je sigurno poznat Butler Tonyjem Starku, čije je ime Jarvis. Shodno tome, korisnik će moći pribjeći pomoći virtualnog sluge samostalno prijenosni aparat. Pored toga, program Jarvis jedinstven je razvoj koji primjenjuje glas i sliku jarvis karaktera.

Rad uslužnog programa Jarvis započinje konvencionalnim audio uputama za korištenje i upravljanje navedenim alatom. Na kraju postavljanja korisnik će morati odrediti svoj spol (tako da virtualni asistent može ispravno pristupiti vlasniku uređaja). Pored toga, morat će postaviti jedinicu mjerenja glavnih temperaturnih uvjeta (posebno, stepeni u Kelvinu, Fahrenheitu, ili, naravno, Celzijusa).


Možete se upoznati sa detaljnim popisom uputa, dodirujući ikone postavljene u gornjem uglu ekrana. Istovremeno, svi timovi moraju sigurno započeti sa žalbom "Jarvis" i obično sadrže jednu riječ (na primjer ", Jarvis, Vremenska prognoza)). Jarvis također zna kako obavijestiti vlasnika uređaja budućih sastanaka i prikazati trenutno vrijeme. U programu se može kreirati različita audio imena.

Važno je napomenuti da vlasnici optičkih diskova sa filmskim blokom "Iron Man", Utility Jarvis pruža dodatne funkcije. Na primjer, korisnik može lako upravljati reprodukcijom odgovarajućeg filma pomoću ovog virtualnog batlera.


Korisne informacije: Ako pitate svoje virtualno pitanje: Da li vrijedi kupiti BMW 740 (http://www.bmw-avtoport.ru/auto/7/), tada će njegov odgovor sa sto posto vjerojatnosti potvrditi! Usput, možete kupiti BMW Sedmu serije trenutno na najprofitabilnijim uvjetima za sebe! Sve što trebate učiniti za ovo je posjetiti stranicu www.bmw-avtoport.ru.

Danas ćemo razgovarati o našem govoru. Volio bih ti vožnja računarskom glasom, Bez pomoći dohvatajućih prstiju? I, kako kažu, - snaga misli! Tačno, računaru nećemo upravljati snagom misli, ali to je vrlo realno.

Typle program - Ovo je jedan od najboljih programa za upravljanje računarom putem glasa. Na web lokacijama u komentarima ovog programa, mišljenja se konvergiraju.

Tačno, postoje vaši nedostaci. Ali više o tome kasnije. Uzgred, ako vas zanima - pročitajte moj pregled.

Program možete preuzeti ovdje: http://freesoft.ru/tiple

Kako ga koristiti? Na početku ga pokrenite i pogledajte glavnu kontrolnu tipke:

Program nas pozdravlja i odmah nam daje upute kako koristiti Typle. Na početku kliknite gumb Dodaj i napišite riječ, poput "otvorenog". Da biste to učinili, recite ovu riječ u mikrofon:

Zatim kliknite Dodaj. Dakle, u programu smo spasili riječ "Otvori". Možete govoriti u mikrofonu bilo koje druge riječi. Glavna stvar se ne može zbuniti.

Sljedeći korak će biti dodavanje naredbi. Da to učinim, idemo u ovu tačku:

Zatim smo postavili krpelj nasuprot toj stavci koji nam treba:

Odaberite program, aplikaciju ili radnju i kliknite na dugme Red Record. Ako je računar uočio naš glas, kliknite "Dodaj":

A sada će biti vidljivo u našoj profilu govorni tim. U ovaj slučaj Ona koja otvara 7-zip:

A sada klikom na završno dugme "Start Talk"

govorimo frazu "otvoreni skup zip". U mom slučaju sve će raditi. A otvorit će se 7-Zip program. Sjetite se takve fraze: Sim SIM otvoren? To je nešto približno isto.

Program ne radi uvijek adekvatno. Sada moćni ruski jezik nije u potpunosti u potpunosti proučava jezički programeri ... ali još uvijek je lijepo kad vas računar sluša.

Stoga će za testiranje i banalnu radoznalost, program Typleu će odgovarati 100%.

U ovom videu možete vidjeti povijest stvaranja prvih glasovnih motora i šta drugo trebamo raditi na:

Postoje tako strašna imena drugih analoga programa, poput Gorynyha, Perpetuum, Dotografa, glasovnog zapovjednika. Ali oni su sve "nisu to". Ne kritikujte pristojan program.

Prije sam otišao 5 minuta da savladam ovaj program. Ovo je prilično dugo (uglavnom u takvim programima koje razumijem 1-2 minute). Ako se pojave pitanja - pišu. Do uskoro sastanci, prijatelji :)!


Dugo nisam ostavio ideju svog "jarvisa" i upravljanja tehnikom u kući glasa. I na kraju, ruke su došle do stvaranja ovog čuda. Dugo nisam morao razmišljati o "mozgu", malina PI je pogodan.

Tako gvožđe:

  • Raspberry pi 3 model b
  • USB Logitech kamera

Prodaja

Naš pomoćnik će raditi na principu Alexa / Hub:
  1. Aktivirajte izvan mreže na određenoj riječi
  2. Prepoznajte naredbu u oblaku
  3. Pokrenite naredbu
  4. Izvještaj o radu ili informirati podatke o zahtjevu
Jer Moja kamera je podržana iz okvira, niste se morali nerijezati sa vozačima, pa odmah idemo na program programa.

Offline Aktivacija

Aktivacija će se pojaviti sa CMU sfingom, a sve bi bilo u redu, ali prepoznat je vrlo spor iz kutije, više od 10 sekundi, što apsolutno nije prikladno, za rješavanje problema koji trebate očistiti od nepotrebnih riječi.

Instalirajte sve što vam treba:

Pip3 Install SporteCognition PIP3 Instalirajte Pocketsphinx
Dalje

Sudo nano /usr/local/lib/python3.4/dist-packages/speech_recognitition/pocketsphinx-data/en-us /Prooncional-diction.dict
Skidamo sve osim Jarvisa koje treba:

JARVIS JH AA R V AH S
Sada se Pocketphinx prepoznaje prilično brzo.

Prepoznavanje govora

U početku je postojala ideja za korištenje Google usluge, a njegova podrška je u govoru. Ali kako se ispostavilo, Google uzima novac za ovo i ne radi s Filesom. Osobe.

Prednost Yandexa također pruža takvu priliku, slobodnu i izuzetno jednostavnu.

Registriramo se, dobivamo ključni API. Sav posao može biti curl'om.

Curl -X Post -H "Sadržaj tip: Audio / X-WAV" --Data-binarni "@File" "https://asr.yandex.net/asr_xml?uuid\u003dya_uid&key\u003dyf_api_key&topic 21Queries»

Sinteza govora

Ovdje će nam Yandex ponovo pomoći. Tekst šaljemo kao odgovor da biste dobili datoteku sa sintetiziranim tekstom.

Curl "https://tts.voictech.yandex.net/generate?format\u003dwav&lang\u003dru-ru&speaker\u003dzahar&motion\u003dgood&key\u003dya_api_key" -g --data-urlencode "Tekst \u003d Tekst"\u003e datoteka

Jarvis

Svi zajedno sakupljamo i dobivamo takav scenarij.

#! / * Bin / env python # - * - kodiranje: uvozi uvoz uvoz_rekognition kao sr from xml.dom import minidom uvoz sys uvoz slučajnog r \u003d sr.recognizer () ya_uuid \u003d "" ya_api_key \u003d "" # OS.System ("Echo" Assists + ut Zap + Town "| Festival --TTS - DEF Convert_ya_asr_to_key (): xmldoc \u003d miniDom.Parse (" ./ asr_answer.xml ") artistal \u003d xmldoc.geteriementsbytagname ("Variant") ako je len (artikal)\u003e 0: povratni predmet popis.firstchild.nodevalue weard: povratak lažno def jarvis_on (): sa sr.wavfile ("send.wav") kao izvor: audio \u003d r.record (izvor) TRY: T \u003d R.RECOGNIS_SPHINX (Audio) Ispis (T) Osim LookUProrROR: Print ("Nije moguće razumjeti audio") povratak T \u003d\u003d ("Jarvis") Def Jarvis_Say (fraza): OS.System ("Curl" https: //tts.voictech.yandex.net/generate?format\u003dwav&lang\u003dru-rub&speaker\u003dzahar&motion\u003dgood&key \u003d "" -g --data-urlencode "tekst \u003d" + "\u003e jarvis_speech.wav) OS.System ("Aplay jarvis_speech.wav") def jarvis_say_good (): fraze \u003d ["spreman", "Gotovo", "Slušaj "" ",", "Nešto drugo?",] Randitem \u003d Random.Choice (fraze) Jarvis_Say (Randitem) Pokušaj: Iako istina: OS.System ("Arecord -b --Buffer-time \u003d 1000000 -F Dat -R 16000 -D 3 -D PLUGHW: 1.0 Send.WAV ") IF 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 "Sadržaj tipa: Audio / X-WAV" --Data-binarni "@Send .wav" "HTDPS: //asr.yandex.net/asr_xml?uuid\u003d"+ya_uuid + "k + ya_uuid +" i tipka \u003d "K + ya_api_key +" i tema \u003d upiti "\u003e asr_answer.xml") command_key \u003d convert_ya_asr_to_key () ako (Command_key): ako ( Command_key in ['key_word ",' key_word1 ',' key_word2"]): OS.System ('') jarvis_say_good () Nastavi osim izuzeća: Jarvis_Say ("nešto je pošlo po zlu")
Šta se događa ovde. Pokrenite beskonačnu petlju, arecord'om pišite tri sekunde i pošaljite sfingu da prizna ako se u datoteci nalazi riječ "jarvis"

Ako Jarvis_on ():
Izgubimo unaprijed snimljene datoteke upozorenja za aktiviranje.

Opet pišemo 3 sekunde i pošalji Yandex, dobivam naš tim kao odgovor. Zatim izvršite akcije na osnovu naredbe.

Na ovo zapravo sve. Scenariji performansi mogu smisliti sjajan set.

Upotreba

Sada neki primjeri stvarne upotrebe

Philips Hue.

Instalirati

PIP Instalirajte Phue.
U aplikaciji HUE instalirajte statički IP:

Run:

#! / USR / bin / Python uvoz uvoza iz Phue uvoznog mosta b \u003d most ("192.168.0.100") # unesite most IP ovdje. #If trčanje po prvi put pritisnite tipku na mostu i pokrenite s B.Connect () koji se ne može zaključiti () ispisati () ispis (b.get_scene ())
Opisali smo ID željenih shema, obrazac "470d4c3c8-on-0"

Krajnja verzija skripte:

#! / USR / bin / Python uvoz uvoza iz Phue uvoznog mosta b \u003d most ("192.168.0.100") # unesite most IP ovdje. #Iok koji radi prvi put pritisnite tipku na mostu i pokrenite s B.Connect () ukommentiranom # b.connect () ako (sys.argv \u003d\u003d "OFF"): B.Set_light (, "na", lažno) Inače: B.Activevate_scene (1, sys.argv)
Dodaj u Jarvis:

Ako (Command_key in ["svjetlo", "Uključite svjetlo", "Light"]): OS.System ("Python3 /home/pi/smarthome/hue/hue.py A1167AA91-on-0") Jarvis_Say_good () Nastavite IF (Command_key in ["Light", "MUTE Light"]): OS.System ("Python3 /home/pi/smarthome/hue/hue.py ac637e2f0-on-0") jarvis_say_good () Nastavi ako (Command_key in [ "Isključite svjetlost", "Isključite svjetlo"]): OS.System ("Python3 /home/pi/smarthome/hue/Hue.py" OFF ") JARVIS_SAY_GOOD () Nastavite

LG TV.

Scenarij uzimamo odavde. Nakon prvog početka i unosa koda za konjugaciju, sam kôd ne mijenja, tako da možete presjeći ovaj dio iz skripte i ostaviti samo kontrolu.

Dodaj u Jarvis:

# 1 - VOLUNE_UP # 25 - VOLUME_DOWN # 400 - 3D_Video IF (Command_key in ["Twn TWC", "Isključi TV"]): OS.System ("Python3 / Početna / PI / Smarthome / TV / TV2. PY 1 ") Jarvis_Say_good () Nastavite ako (Command_key in ['Add volume", "glasniji"]): OS.System ("Python3 /home/pi/smarthome/tv/tv2.py 24") Jarvis_Say_good () Nastaviti

Radio

Sudo apt-get install mpg123
Dodaj u Jarvis:

IF (Command_key u [Novosti ", 'isključite vijesti', 'Što se događa']): OS.System ('MPG123 URL) Nastavite
Još uvijek možete staviti HomeBridge i upravljati svemu kroz Siri, ako ne završite jarvis.

Što se tiče kvaliteta prepoznavanja govora, a ne Alexa naravno, već na udaljenosti od 5 metara procenat vjernih sastojaka. Glavni problem je govor iz TV-a "evidentiran sa naredbima i ometa prepoznavanje.

To je sve, hvala.

Oznake:

  • raspberry Pi
  • python
Dodajte oznake