Turinys:

Balso valdoma kamera naudojant „Raspberry Pi“: 6 žingsniai
Balso valdoma kamera naudojant „Raspberry Pi“: 6 žingsniai

Video: Balso valdoma kamera naudojant „Raspberry Pi“: 6 žingsniai

Video: Balso valdoma kamera naudojant „Raspberry Pi“: 6 žingsniai
Video: Control Position and Speed of Stepper motor with L298N module using Arduino 2024, Liepa
Anonim
Balso valdoma kamera naudojant „Raspberry Pi“
Balso valdoma kamera naudojant „Raspberry Pi“

Sukurkite fotoaparatą, galintį vykdyti balso komandas, tai daugiausia skirta visų rūšių žmonėms, ypač tiems, kurie nori smagiai fotografuoti.

1 žingsnis: Aparatūros vadovas

Techninės įrangos vadovas
Techninės įrangos vadovas

„VDC“sukurtas „Raspberry Pi“(B modelis) ir reikalauja papildomos aparatūros, tokios kaip „wifi“adapteris (pasirinktinai) ir USB mikrofonas. Siūloma aparatinė įranga nurodyta toliau su nuorodomis, kad gautumėte daugiau informacijos. Galite išbandyti šiek tiek skirtingų markių/techninės įrangos technines charakteristikas. VDC nėra susijęs su jokiais susijusiais aparatūros tiekėjais.

Pilnas sąrašas

  1. „Raspberry Pi“modelis B.
  2. „Picamera“
  3. USB mini mikrofonas
  4. SD kortelė
  5. Ethernet kabelis
  6. Mini USB adapteris (neprivaloma)
  7. Mikro USB - sieninis įkroviklis
  8. Garsiakalbiai, kurie veikia per „Raspberry Pi“garso lizdą (tikriausiai turi būti maitinami savarankiškai)

Raspberry Pi patikrintų išorinių įrenginių sąrašas gali būti naudingas ieškant aukščiau rekomenduojamų produktų pakaitalų.

Surinkimas

Reikiamų komponentų surinkimas yra paprastas. Įdėkite mikrofoną, SD kortelę, belaidį adapterį (jei turite), „micro-USB“kabelį, „Ethernet“laidą ir garsiakalbius į „Raspberry Pi“. USB sieninį įkrovimo adapterį rekomenduojama naudoti kaip atskirą įrenginį.

Eterneto kabelis bus naudojamas prisijungiant prie kompiuterio iš kompiuterio programinės įrangos diegimo metu. Jei po įdiegimo norite naudoti belaidį ryšį, šį kabelį galima nuimti.

Interneto ryšys

Kaip minėta aukščiau, belaidis adapteris yra neprivalomas. Jis puikiai veikia laidiniu ryšiu (per eternetą), todėl galite pasirinkti vieną iš dviejų sąrankų, priklausomai nuo to, kas jums labiausiai tinka.

2 veiksmas: OS diegimas „Raspberry Pi“

OS diegimas „Raspberry Pi“
OS diegimas „Raspberry Pi“

Įvadas

„Raspberry Pi“yra kreditinės kortelės dydžio mikroprocesorius, prieinamas skirtingais modeliais ir skirtingu apdorojimo greičiu, pradedant nuo 700 MHz. Nesvarbu, ar turite B ar B+modelį, ar labai seną versiją, diegimo procesas išlieka tas pats. Žmonės, kurie peržiūrėjo oficialią „Raspberry Pi“svetainę, galėjo matyti, kad pradedantiesiems jie rekomenduoja „NOOBS“arba „NOOBS LITE“operacinę sistemą (dar žinomą kaip „OS“). Tačiau naudotis „Pi“yra labai paprasta ir nuo to, kad esate pradedantysis, akimirksniu tapsite profesionalu. Taigi geriau rinktis galingesnę ir efektyvesnę OS - Raspbian. Pagrindinė priežastis, kodėl „Raspbian“yra labai populiari, yra ta, kad joje yra tūkstančiai iš anksto sukurtų bibliotekų, kurios atlieka daugybę užduočių ir optimizuoja OS. Tai yra didžiulis pranašumas kuriant programas.

Atsisiųskite Raspbian ir Image Writer

Atsisiųskite naujausią „Raspbian“versiją iš čia. Galite atsisiųsti tiesiogiai arba per torrentus.

Raspbian puslapis

Raspbian OS atsisiuntimo nuoroda

Jums reikės vaizdo rašytojo, kad įrašytumėte atsisiųstą OS į SD kortelę („micro SD“kortelę „Raspberry Pi B+“modelio atveju). Taigi atsisiųskite „win32 disk imager“iš čia.

Vaizdo rašymas

Įdėkite SD kortelę į nešiojamąjį kompiuterį ir paleiskite vaizdo rašytoją. Atidarę naršykite ir pasirinkite atsisiųstą „Raspbian“vaizdo failą. Pasirinkite tinkamą įrenginį, tai yra diską, vaizduojantį SD kortelę. Jei pasirinktas diskas (arba įrenginys) skiriasi nuo SD kortelės, kitas pasirinktas diskas bus sugadintas. Būk atsargus.

Po to apačioje spustelėkite mygtuką „Rašyti“. Pavyzdžiui, žiūrėkite žemiau esantį paveikslėlį, kuriame SD kortelės (arba „micro SD“) įrenginys žymimas raide „G: \“

Kai įrašymas bus baigtas, išimkite SD kortelę ir įdėkite ją į „Raspberry Pi“ir įjunkite. Tai turėtų pradėti paleisti.

„Pi“nustatymas

Atminkite, kad paleidus „Pi“gali kilti situacijų, kai bus paprašyta vartotojo prisijungimo duomenų, tokių kaip „vartotojo vardas“ir slaptažodis. „Raspberry Pi“pateikiamas numatytasis vartotojo vardas ir slaptažodis, todėl visada naudokite jį, kai jo prašoma. Įgaliojimai yra šie:

prisijungimas: pi

slaptažodis: avietė

Kai „Pi“buvo paleistas pirmą kartą, turėtų būti rodomas konfigūracijos ekranas, vadinamas „Sąrankos parinktys“, ir jis atrodys kaip žemiau pateiktas vaizdas.

Jei praleidote ekraną „Sąrankos parinktys“, tai nėra problema, jį visada galite gauti įvesdami šią komandą terminale.

sudo raspi-config

Kai vykdysite šią komandą, pasirodys ekranas „Sąrankos parinktys“, kaip parodyta aukščiau esančiame paveikslėlyje.

Dabar, kai atidaromas sąrankos parinkčių langas, turėsime nustatyti keletą dalykų. Atlikę kiekvieną iš toliau nurodytų veiksmų, prašykite tai padaryti iš naujo. Jei po perkrovimo negaunate ekrano „Sąrankos parinktys“, vykdykite aukščiau pateiktą komandą, kad gautumėte ekraną/langą.

Pirmas dalykas, kurį reikia padaryti:

pasirinkite pirmą parinktį sąrankos parinkčių lango sąraše, tai yra

Išplėskite failų sistemą

parinktį ir paspauskite įvesties klavišą. Mes tai darome, kad išnaudotume visą SD kortelėje esančią erdvę kaip pilną skaidinį. Visa tai yra išplėsti OS, kad tilptų visa SD kortelės vieta, kuri vėliau gali būti naudojama kaip „Pi“atmintinė. Antras dalykas, kurį reikia padaryti:

pasirinkite trečią parinktį sąrankos parinkčių lango sąraše, tai yra pasirinkite parinktį „Įgalinti įkrovą darbalaukiui/įbrėžimams“ir paspauskite įvesties klavišą. Jūs pateksite į kitą langą, pavadintą „pasirinkti įkrovos parinktį“, kuris atrodo kaip žemiau pateiktas vaizdas.

„Pasirinkti įkrovos parinkties langą“pasirinkite antrą parinktį, ty „Desktop Prisijunkite kaip vartotojo„ pi “grafiniame darbalaukyje“ir paspauskite įvesties mygtuką. Baigę būsite grąžinti į puslapį „Sąrankos parinktys“, jei nepasirinksite šio lango apačioje esančio mygtuko „Gerai“ir būsite grąžinti į ankstesnį langą. Mes tai darome, nes norime paleisti į mums žinomą darbalaukio aplinką. Jei neatliksime šio veiksmo, „Raspberry Pi“kiekvieną kartą įsijungs į terminalą be jokių GUI parinkčių. Kai abu veiksmai bus atlikti, puslapio apačioje pasirinkite mygtuką „Baigti“ir jis turėtų būti automatiškai paleistas iš naujo. Jei taip nėra, naudokite šią terminalo komandą, kad paleistumėte iš naujo.

sudo perkraukite

Firmware atnaujinimas

Iš naujo paleisdami ankstesnį veiksmą, jei viskas pavyko teisingai, atsidursite darbalaukyje, kuris atrodo kaip paveikslėlis žemiau.

Kai būsite darbalaukyje, atidarykite terminalą ir įveskite šią komandą, kad atnaujintumėte „Pi“programinę įrangą.

sudo rpi atnaujinimas

Būtina atnaujinti programinę -aparatinę įrangą, nes kai kurie „Pi“modeliai gali neturėti visų reikalingų priklausomybių, kad jie veiktų sklandžiai, arba gali būti klaidų. Naujausia programinė įranga gali ištaisyti šias klaidas, todėl labai svarbu ją atnaujinti pačioje pradžioje.

čia yra vaizdo įrašo nuoroda:

„Raspbian Jessie“operacinės sistemos diegimas ir konfigūravimas „Raspberry Pi“(spustelėkite nuorodą)

3 veiksmas: nustatykite VNC „Raspberry Pi“, kad galėtumėte valdyti nuotoliniu būdu

Nustatykite VNC „Raspberry Pi“, kad galėtumėte valdyti nuotoliniu būdu
Nustatykite VNC „Raspberry Pi“, kad galėtumėte valdyti nuotoliniu būdu

VNC (virtualiojo tinklo skaičiavimas)

Kartais nėra patogu dirbti tiesiogiai su „Raspberry Pi“. Galbūt norėtumėte dirbti su juo iš kito įrenginio nuotolinio valdymo pultu.

VNC yra grafinė darbalaukio bendrinimo sistema, leidžianti nuotoliniu būdu valdyti vieno kompiuterio (kuriame veikia VNC serveris) darbalaukio sąsają iš kito kompiuterio ar mobiliojo įrenginio (kuriame veikia „VNC Viewer“). „VNC Viewer“perduoda klaviatūrą ir pelės arba liečiamus įvykius į „VNC Server“ir mainais gauna ekrano atnaujinimus.

„Raspberry Pi“darbalaukį pamatysite kompiuterio ar mobiliojo įrenginio lange. Galėsite jį valdyti taip, lyg dirbtumėte su pačiu „Raspberry Pi“.

„VNC Connect“iš „RealVNC“yra įtrauktas į „Raspbian“. Jį sudaro „VNC Server“, leidžiantis nuotoliniu būdu valdyti „Raspberry Pi“, ir „VNC Viewer“, leidžianti nuotoliniu būdu valdyti stalinius kompiuterius iš „Raspberry Pi“.

Prieš naudodami VNC serverį, turite jį įjungti: instrukcijos pateikiamos žemiau. Pagal numatytuosius nustatymus „VNC Server“suteikia nuotolinę prieigą prie grafinio darbalaukio, kuris veikia jūsų „Raspberry Pi“, tarsi sėdėtumėte priešais jį.

Įjungiamas VNC serveris

„Raspberry Pi“paleiskite šias komandas, kad įsitikintumėte, jog turite naujausią „VNC Connect“versiją:

sudo apt-get atnaujinimas

sudo apt-get install realvnc-vnc-server realvnc-vnc-viewer

Dabar įjunkite VNC serverį. Tai galite padaryti grafiškai arba komandinėje eilutėje.

Grafinis VNC serverio įgalinimas

„Raspberry Pi“paleiskite grafinį darbalaukį.

Pasirinkite Meniu> Nuostatos> Raspberry Pi Configuration> Sąsajos.

Įsitikinkite, kad VNC įjungtas. VNC serverio įgalinimas komandų eilutėje

VNC serverį galite įjungti komandų eilutėje naudodami raspi-config:

sudo raspi-config

Dabar įjunkite „VNC Server“atlikdami šiuos veiksmus:

Eikite į sąsajos parinktis

Slinkite žemyn ir pasirinkite VNC> Taip. Prisijungimas prie „Raspberry Pi“naudojant „VNC Viewer“

Yra du būdai prisijungti prie „Raspberry Pi“. Galite naudoti abu arba abu, priklausomai nuo to, kas jums labiausiai tinka.

Tiesioginio ryšio užmezgimas

Tiesioginiai ryšiai yra greiti ir paprasti, jei esate prisijungę prie to paties privataus vietinio tinklo kaip ir „Raspberry Pi“. Pavyzdžiui, tai gali būti laidinis arba belaidis tinklas namuose, mokykloje ar biure).

Raspberry Pi (naudodami terminalo langą arba per SSH) vadovaukitės šiomis instrukcijomis arba paleiskite ifconfig, kad sužinotumėte savo asmeninį IP adresą.

ifconfig

Įrenginyje, kurį valdysite, atsisiųskite „VNC Viewer“. Norėdami gauti geriausius rezultatus, naudokite suderinamą „RealVNC“programą.

Įveskite savo Raspberry Pi privatų IP adresą į „VNC Viewer“:

Debesų ryšio užmezgimas

Jūs turite teisę nemokamai naudotis „RealVNC“debesies paslauga, jei nuotolinė prieiga skirta tik švietimo ar nekomerciniais tikslais.

„Cloud“ryšiai yra patogūs ir užšifruoti nuo galo iki galo. Jie labai rekomenduojami prisijungti prie „Raspberry Pi“internetu. Nėra ugniasienės ar maršrutizatoriaus konfigūracijos, jums nereikia žinoti „Raspberry Pi“IP adreso ar pateikti statinio.

Užsiregistruokite „RealVNC“paskyrai čia: tai nemokama ir užtrunka tik kelias sekundes.

„Raspberry Pi“prisijunkite prie „VNC Server“naudodami naujus „RealVNC“paskyros kredencialus:

Įrenginyje, kurį valdysite, atsisiųskite „VNC Viewer“. Turite naudoti suderinamą „RealVNC“programą

Prisijunkite prie „VNC Viewer“naudodami tuos pačius „RealVNC“paskyros kredencialus, tada bakstelėkite arba spustelėkite, kad prisijungtumėte prie „Raspberry Pi“:

Autentifikuojama VNC serveryje

Norėdami užmegzti tiesioginį arba debesies ryšį, turite autentifikuoti VNC serverį.

Jei jungiatės iš suderinamos „VNC Viewer“programos iš „RealVNC“, įveskite vartotojo vardą ir slaptažodį, kuriuos paprastai naudojate prisijungdami prie savo vartotojo abonemento „Raspberry Pi“. Pagal numatytuosius nustatymus šie įgaliojimai yra pi ir aviečių.

Jei jungiatės iš ne „RealVNC Viewer“programos, pirmiausia turėsite grąžinti ankstesnės versijos „VNC Server“autentifikavimo schemą, nurodyti unikalų „VNC Server“slaptažodį ir tada jį įvesti. Norėdami tai padaryti, Raspberry Pi atidarykite dialogo langą VNC Server, pasirinkite Meniu> Funkcijos> Sauga, ir pasirinkite VNC slaptažodį iš autentifikavimo.

Norėdami įjungti šią funkciją:

„Raspberry Pi“atidarykite dialogo langą „VNC Server“.

Eikite į Meniu> Parinktys> Trikčių šalinimas ir pasirinkite Įgalinti eksperimentinio tiesioginio fiksavimo režimą.

Įrenginyje, kurį naudosite valdyti, paleiskite „VNC Viewer“ir prisijunkite.

Pastaba: norint, kad šie pakeitimai įsigaliotų, reikia iš naujo paleisti esamus ryšius.

Jei našumas atrodo sutrikęs, išbandykite šiuos trikčių šalinimo veiksmus arba praneškite „RealVNC“.

Virtualiojo darbalaukio kūrimas

Jei jūsų „Raspberry Pi“neturi galvos (t. Y. Nėra prijungtas prie monitoriaus) arba valdo robotą, mažai tikėtina, kad jis veiks su grafiniu darbalaukiu.

„VNC Server“gali sukurti jums virtualų darbalaukį, suteikdamas grafinę nuotolinę prieigą pagal poreikį. Šis virtualus darbalaukis egzistuoja tik jūsų „Raspberry Pi“atmintyje:

Norėdami sukurti virtualų darbalaukį ir prisijungti prie jo:

„Raspberry Pi“(naudodami terminalą arba per SSH) paleiskite „vnc“serverį. Atkreipkite dėmesį į IP adresą/rodomą numerį, kurį „VNC Server“išspausdins į jūsų terminalą (pvz., 192.167. **. **).

Įrenginyje, kurį naudosite valdymui, įveskite šią informaciją į „VNC Viewer“. Norėdami sunaikinti virtualų darbalaukį, paleiskite šią komandą:

vncserver -kill:

Tai taip pat sustabdys visus esamus ryšius su šiuo virtualiu darbalaukiu.

4 žingsnis: fotoaparato konfigūravimas

Fotoaparato konfigūracija
Fotoaparato konfigūracija

Fotoaparato aparatūros nustatymas

Įspėjimas: fotoaparatai yra jautrūs statikai. Prieš tvarkydami PCB, įžeminkite save. Jei neturite įžeminimo diržo, turėtų pakakti kriauklės čiaupo ar pan.

Fotoaparato plokštė pritvirtinama prie „Raspberry Pi“per 15 krypčių juostinį kabelį. Yra tik dvi jungtys: juostinis kabelis turi būti pritvirtintas prie fotoaparato PCB ir prie paties „Raspberry Pi“. Kabelį reikia surinkti teisingai, kitaip fotoaparatas neveiks. Fotoaparato PCB mėlyna kabelio atrama turi būti nukreipta nuo PCB, o „Raspberry Pi“- į eterneto jungtį (arba ten, kur būtų „Ethernet“jungtis, jei naudojate A modelį).

Nors PCB ir Pi jungtys skiriasi, jos veikia panašiai. Pačiame „Raspberry Pi“ištraukite skirtukus kiekviename jungties gale. Jis turėtų lengvai pasislinkti ir šiek tiek pasukti. Visiškai įkiškite juostos kabelį į angą, įsitikinkite, kad jis pastatytas tiesiai, tada švelniai paspauskite skirtukus, kad užsifiksuotų. Fotoaparato PCB jungtis taip pat reikalauja, kad atitrauktumėte skirtukus nuo plokštės, švelniai įkiškite kabelį, tada stumkite skirtukus atgal. PCB jungtis gali būti šiek tiek nepatogesnė nei pati Pi.

Fotoaparato programinės įrangos nustatymas

Vykdykite šias instrukcijas komandų eilutėje, kad atsisiųstumėte ir įdiegtumėte naujausią branduolį, GPU programinę įrangą ir programas. Kad tai veiktų tinkamai, jums reikės interneto ryšio.

sudo apt-get atnaujinimas

sudo apt-get atnaujinimas

Dabar turite įjungti fotoaparato palaikymą naudodami

raspi-config

programą, kurią naudojote pirmą kartą nustatydami „Raspberry Pi“.

sudo raspi-config

Naudodami žymeklio klavišus pereikite prie fotoaparato parinkties ir pasirinkite „įjungti“. Išeidamas iš raspi-config, jis paprašys paleisti iš naujo. Įgalinimo parinktis užtikrins, kad iš naujo paleidus teisingą GPU programinę įrangą bus paleista kartu su fotoaparato tvarkykle ir derinama, o GPU atminties padalijimo pakanka, kad fotoaparatas galėtų įgyti pakankamai atminties, kad galėtų tinkamai veikti.

Jei jis neįjungtas, įjunkite jį ir iš naujo paleiskite „Pi“, kad pradėtumėte

Norėdami patikrinti, ar sistema įdiegta ir veikia, išbandykite šią komandą:

raspistill -v -o test.jpg

Ekrane turėtų būti rodoma penkių sekundžių peržiūra iš fotoaparato, tada nufotografuota, išsaugota faile test.jpg, ir rodomi įvairūs informaciniai pranešimai.

RASPIVID

„Raspivid“yra komandų eilutės įrankis, skirtas vaizdo įrašymui naudojant fotoaparato modulį.

Kai fotoaparato modulis prijungtas ir įjungtas, įrašykite vaizdo įrašą naudodami šią komandą:

Raspivid -o vid.h264

Nepamirškite naudoti

-hf

ir

-vf

jei reikia, apverskite vaizdą, pvz., su

raspistill

Taip bus išsaugotas 5 sekundžių vaizdo įrašo failas į kelią, nurodytą čia kaip vid.h264 (numatytoji trukmė).

Nurodykite vaizdo įrašo ilgį

Norėdami nurodyti nufilmuoto vaizdo įrašo trukmę, įveskite vėliavą -t su milisekundžių skaičiumi. Pavyzdžiui:

raspivid -o video.h264 -t 10000

Tai įrašys 10 sekundžių vaizdo įrašą.

MP4 vaizdo formatas

„Pi“fiksuoja vaizdo įrašą kaip neapdorotą H264 vaizdo srautą. Daugelis daugialypės terpės grotuvų atsisakys jį paleisti arba paleisti netinkamu greičiu, nebent jis būtų „įvyniotas“į tinkamą konteinerio formatą, pvz., MP4. Lengviausias būdas gauti MP4 failą iš

rausvas

komanda naudoja MP4Box.

Įdiekite MP4Box naudodami šią komandą:

sudo apt -get install -y gpac

Užfiksuokite neapdorotą vaizdo įrašą naudodami „raspivid“ir įvyniokite jį į MP4 talpyklą taip:

# Fiksuokite 30 sekundžių neapdorotą vaizdo įrašą 640x480 ir 150 KB/s bitų sparta į „pivideo.h264“failą:

raspivid -t 30000 -w 640 -h 480 -fps 25 -b 1200000 -p 0, 0, 640, 480 -o pivideo.h264 # Apvyniokite neapdorotą vaizdo įrašą MP4 konteineriu MP4Box -add pivideo.h264 pivideo.mp4 # Remove šaltinio neapdorotas failas, paliekant likusį failą pivideo.mp4 paleisti rm pivideo.h264

Arba apvyniokite MP4 aplink esamą „raspivid“išvestį, pavyzdžiui:

MP4Box -pridėkite video.h264 video.mp4

5 veiksmas: diegimas ir konfigūravimas

Vykdykite šias instrukcijas tik tada, jei norite surinkti programinę įrangą nuo nulio. Šie toliau nurodyti veiksmai yra būtini ir rekomenduojami kaip ir ta pati diegimo programa „Raspberry pi“.

Priklausomybių diegimas

Sphinxbase/Pocketsphinx diegimas

Pirmiausia turite įdiegti „Pocketsphinx“. Jei naudojate „Debian Sid“(nestabilus) arba „Jessie“(testavimas), galite tiesiog atlikti šiuos veiksmus:

sudo apt-get atnaujinimas

sudo apt-get install pocketsphinx

Pradėkite diegdami kai kurias priklausomybes:

sudo apt-get install subversion autoconf libtool automake gfortran g ++-taip

Tada pereikite prie namų (arba „Jasper“) katalogo, kad patikrintumėte ir įdiegtumėte CMUCLMTK:

svn co

cd cmuclmtk/

./autogen.sh && make && sudo make install

cd..

Tada, kai išėjote iš CMUCLTK katalogo, atsisiųskite šias bibliotekas:

„Phonetisaurus“, „m2m-aligner“ir „MITLM“diegimas

Norėdami naudoti „Pocketsphinx STT“variklį, taip pat turite įdiegti „MIT Language Modeling Toolkit“, „m2m-aligner“ir „Phonetisaurus“(taigi ir „OpenFST“).

Jei nenaudojate „Debian“, atlikite šiuos veiksmus:

#-originalas:

# wget

#-naujas:

wget

wget

wget

wget

Atsisiųskite atsisiuntimus:

tar -xvf m2m-aligner-1.2.tar.gz

tar -xvf openfst -1.3.4.tar.gz

tar -xvf is2013 -conversion.tgz

tar -xvf mitlm -0.4.1.tar.gz

Sukurkite „OpenFST“:

cd openfst-1.3.4/

sudo./configure --enable-compact-fsts --enable-const-fsts --enable-far --enable-lookahead-fsts --enable-pdt

laikas sudo padaryti install # grįžti po tikrai ilgo laiko

cd..

tikrasis 66m38.394s

vartotojas 64m42.620s

sys 1m2.150s

df -h /

Naudotas failų sistemos dydis Laisvas naudojimas% Sumontuota /dev /root 14G 4.4G 8.3G 35% /

Sukurkite M2M:

cd m2m-aligner-1.2/

sudo padaryti

cd..

Sukurkite MITLMT:

CD mitlm-0.4.1/

sudo./configure

sudo make install

cd..

Sukurkite „Phonetisaurus“:

cd is2013-conversion/phonetisaurus/src

sudo padaryti

cd

Perkelkite kai kuriuos surinktus failus:

sudo cp ~/m2m-aligner-1.2/m2m-aligner/usr/local/bin/m2m-aligner

#-originalas:

# sudo cp ~/phonetisaurus-0.7.8/phonetisaurus-g2p/usr/local/bin/phonetisaurus-g2p

#-reikia būti:

sudo cp ~/is2013-conversion/bin/phonetisaurus-g2p/usr/local/bin/phonetisaurus-g2p

Atkreipkite dėmesį į pakeistą vykdomojo failo kelią.

Gaukite ir sukurkite „Phonetisaurus FST“modelį

wget

tar -xvf g014b2b.tgz

cd g014b2b/

./compile-fst.sh

cd..

Galiausiai patogumui pervardykite šį aplanką:

mv ~/g014b2b ~/fonetisaurus

Baigę diegti, iš naujo paleiskite „Pi“.

Vykdydami instrukcijas iš

Taip pat pridėjau (naują) failą „/etc/modprobe.d/alsa-base.conf“su šiuo turiniu:

# Tai nustato kortelių indekso vertę, bet ne pertvarkoma.

parinktys snd_usb_audio indeksas = 0

parinktys snd_bcm2835 indeksas = 1

# Ar pertvarkoma.

parinktys snd lizdai = snd_usb_audio, snd_bcm2835

užtikrinti tinkamą garso įrenginių užsakymą (nors nesu visiškai tikras, ar tai tikrai reikalinga)

Baigta diegti - toliau derinimas …

Bandant paleisti jaspį:

pi@AVIV: ~ $./jasper/jasper.py

Atsekimas (paskutinis paskutinis skambutis):

Failas "./jasper/jasper.py", 12 eilutė, iš kliento importavimo tts, stt, jasperpath, diagnozuoti Failas "/home/pi/jasper/client/tts.py", 41 eilutė, importo diagnozės faile "/ home/pi/jaspis/klientas/diagnose.py ", 9 eilutė, importuojamame pip.req Failas" /usr/lib/python2.7/dist-packages/pip/_init_.py ", 74 eilutė, iš pip. vcs import git, mercurial, subversion, bazaar # noqa Failas "/usr/lib/python2.7/dist-packages/pip/vcs/mercurial.py", 9 eilutė, iš pip.download importavimo kelias_to_url failas "/usr/ lib/python2.7/dist-package/pip/download.py ", 25 eilutė, iš užklausų

Ištaisyta naudojant:

sudo easy_install -U pip

Kitas numeris:

pi@AVIV: ~ $./jasper/jasper.py

*******************************************************

*JASPERIS - KALBAMASIS KOMPIUTERIS**(c) 2015 m. Shubhro Saha, Charlie Marsh ir Jan Holthuis***************************** ************************** KLAIDA: šaknis: įvyko klaida! Atsekimas (paskutinis paskutinis skambutis): failas „./jasper/jasper.py“, 143 eilutė, programoje = Jasper () failas „./jasper/jasper.py“, 88 eilutė, _init_ stt_engine_class = stt.get_engine_by_slug (stt_engine_slug) failas „/home/pi/jasper/client/stt.py“, 648 eilutė, „get_engine_by_slug“priklausomybėse ir kt.) ) % šliužas)

ValueError: STT variklio „sfinksas“nepasiekiamas (dėl trūkstamų priklausomybių, trūkstamų priklausomybių ir pan.)

bando

sudo apt-get install -y python-pocketsphinx

Pataisykite kelią į „../ phonetisaurus/g014b2b.fst“, kad jis būtų „/home/pi/phonetisaurus/g014b2b.fst“(vietoj „.jasper/profile.yml“)

pi@AVIV: ~ $./jasper/jasper.py

*******************************************************

*JASPERIS - KALBAMASIS KOMPIUTERIS**(c) 2015 m. Shubhro Saha, Charlie Marsh ir Jan Holthuis***************************** ************************** KLAIDA: client.stt: hmm_dir '/usr/local/share/pocketsphinx/model/hmm/lt_US/hub4wsj_sc_8k ' neegzistuoja! Įsitikinkite, kad savo profilyje nustatėte teisingą hmm_dir.

Taip pat pataisykite/suaktyvinkite kelią „profile.yml“:

hmm_dir: '/usr/share/pocketsphinx/model/hmm/lt_US/hub4wsj_sc_8k' #optional

(atkreipkite dėmesį, kad kelyje nėra „vietinio“)

Dalinė sėkmė -:

pi@AVIV: ~ $./jasper/jasper.py

*******************************************************

*JASPERIS - KALBAMASIS KOMPIUTERIS**(c) 2015 m. Shubhro Saha, Charlie Marsh ir Jan Holthuis***************************** ************************** ALSA lib pcm.c: 2239: (snd_pcm_open_noupdate) Nežinomos PCM kortelės.pcm.rear ALSA lib pcm.c: 2239: (snd_pcm_open_noupdate) Nežinomos PCM kortelės.pcm.center_lfe ALSA lib pcm.c: 2239: (snd_pcm_open_noupdate) Nežinomos PCM kortelės.pcm.side ALSA lib pcm.c: 2239: (snd_pcm_open_noupdate ALP libmM pcm.c: 2239: (snd_pcm_open_noupdate) Nežinomos PCM kortelės.pcm.hdmi ALSA lib pcm.c: 2239: (snd_pcm_open_noupdate) Nežinomos PCM kortelės.pcm.modem ALSA lib pcm.c: 2239: (snd_pcm_open_noupMcd).modem ALSA lib pcm.c: 2239: (snd_pcm_open_noupdate) Nežinomos PCM kortelės. pcm.phoneline ALSA lib pcm.c: 2239: (snd_pcm_open_noupdate) Nežinomos PCM kortelės.pcm.phoneline ALSA lib pulse.c: 243: (pulseAudio): Nepavyksta prisijungti: Ryšys atmestas ALSA lib pulse. C: 243: (pulse_connect) PulseAudio: Nepavyksta prisijungti: Ryšys atmestas Nepavyksta prisijungti r socket err = Nėra tokio failo ar katalogo Nepavyksta prisijungti prie serverio užklausos kanalo lizdo serveris neveikia arba jo negalima paleisti Išraiška „paInvalidSampleRate“nepavyko „src/hostapi/alsa/pa_linux_alsa.c“, line: 2048 Išraiška „PaAlsaStreamComponent_InitialConfigure (& self -> užfiksuoti, inParams, self-> primeBuffers, hwParamsCapture ir realSr) "nepavyko" src/hostapi/alsa/pa_linux_alsa.c ", eilutė: 2719 Išraiška" PaAlsaStream_Configure (stream, inputParameters, outputParameters, outputParameters, sampleRufat, & hostBufferSizeMode) 'nepavyko' src/hostapi/alsa/pa_linux_alsa.c ', line: 2843 Traceback (paskutinis paskutinis skambutis): failas "./jasper/jasper.py", 148 eilutė, faile app.run () "./jasper/jasper.py", 118 eilutė, vykdant pokalbį.handleForever () failas "/home/pi/jasper/client/conversation.py", 31 eilutė, rankenos laikiklio slenkstyje, transkribuotas = self.mic.passiveListen (self.persona) Failas „/home/pi/jasper/client/mic.py“, 110 eilutė, pasyvaus klausymo kadrų_per_bufferis = CHUNK) Failas "/usr/lib/python2.7/dist-packages/pyaudio.py", 747 eilutė, atvirame sraute = Srautas (savarankiškas, *args, ** kwargs) Failas "/usr/lib/python2.7/dist -packages/pyaudio.py ", 442 eilutė, _init_ self._stream = pa.open (** argumentai) IOError: [Errno Invalid sample rate] -9997

Gerai, atrodo, kad nustatant RATE ir CHUNK taip toliau:

skirtumas --git a/client/mic.py b/client/mic.py

indeksas 401cddb..dee49fe 100644

--- a/klientas/mic.py

+++ b/client/mic.py

@@ -93, 8 +93, 8 @@ klasės mikrofonas:

"""

THRESHOLD_MULTIPLIER = 1.8

- KAINA = 16000

- CHUNK = 1024

+ ĮVERTINIMAS = 44100 # 16000

+ CHUNK = 4096 # 1024

# sekundžių skaičius, leidžiantis nustatyti slenkstį

THRESHOLD_TIME = 1

6 žingsnis: Išvesties ekrano nuotraukos

Rekomenduojamas: