Innholdsfortegnelse:

Stemmestyrt kamera ved bruk av Raspberry Pi: 6 trinn
Stemmestyrt kamera ved bruk av Raspberry Pi: 6 trinn

Video: Stemmestyrt kamera ved bruk av Raspberry Pi: 6 trinn

Video: Stemmestyrt kamera ved bruk av Raspberry Pi: 6 trinn
Video: Моя работа наблюдать за лесом и здесь происходит что-то странное 2024, November
Anonim
Stemmestyrt kamera ved bruk av Raspberry Pi
Stemmestyrt kamera ved bruk av Raspberry Pi

Utvikle et kamera som kan kjøres på voice over -kommandoer, dette er hovedsakelig designet for mennesker av alle slag, spesielt for folk som søker for morsom fotografering.

Trinn 1: Maskinvarehåndbok

Maskinvarehåndbok
Maskinvarehåndbok

VDC er designet på Raspberry Pi (modell B) og krever litt ekstra maskinvare som en wifi-adapter (valgfri) og USB-mikrofon. Den foreslåtte maskinvaren er angitt nedenfor med lenker for ytterligere detaljer. Du kan prøve litt forskjellige merker/spesifikasjoner for maskinvare. VDC er ikke tilknyttet noen av de tilknyttede maskinvareleverandørene.

Den komplette listen

  1. Bringebær Pi modell B
  2. Picamera
  3. USB mini mikrofon
  4. SD kort
  5. Ethernet -kabel
  6. Mini-USB-adapter (valgfritt)
  7. Micro USB - vegglader
  8. Høyttalere som fungerer gjennom Raspberry Pi-lydkontakten (må sannsynligvis være selvdrevne)

Raspberry Pi Verified Peripherals List kan være nyttig for å finne erstatninger for produktene som er anbefalt ovenfor.

montering

Montering av nødvendige komponenter er grei. Sett inn mikrofonen, SD-kortet, den trådløse adapteren (hvis du har en), mikro-USB-kabel, ethernet-kabel og høyttalere i Raspberry Pi. USB -veggladeadapteren anbefales å fungere som en frittstående enhet.

Ethernet -kabelen brukes til å logge på pi -en fra en datamaskin under installasjonen av programvaren. Etter installasjon, hvis du foretrekker å bruke en trådløs tilkobling, kan denne kabelen fjernes.

Internett-tilkobling

Som nevnt ovenfor er den trådløse adapteren valgfri. Det går fint på en kablet tilkobling (via ethernet), så du kan velge mellom de to oppsettene, avhengig av hva som fungerer best for deg.

Trinn 2: OS -installasjon på Raspberry Pi

OS -installasjon på Raspberry Pi
OS -installasjon på Raspberry Pi

Introduksjon

Raspberry Pi er en mikroprosessor i kredittkortstørrelse tilgjengelig i forskjellige modeller med forskjellig behandlingshastighet fra 700 MHz. Enten du har en modell B eller en modell B+, eller en veldig gammel versjon, er installasjonsprosessen den samme. Folk som har sjekket ut det offisielle Raspberry Pi -nettstedet, kan ha sett dem anbefale operativsystemet "NOOBS" eller "NOOBS LITE" (alias "OS") for nybegynnere. Men å bruke Pi er veldig enkelt, og fra å være nybegynner vil man bli profesjonell på kort tid. Så det er bedre å gå med det kraftigere og mer effektive operativsystemet, Raspbian. Hovedårsaken til at Raspbian er ekstremt populær er at den har tusenvis av forhåndsbygde biblioteker for å utføre mange oppgaver og optimalisere operativsystemet. Dette utgjør en stor fordel når du bygger applikasjoner.

Last ned Raspbian og Image writer

Last ned den siste versjonen av Raspbian herfra. Du kan laste den ned direkte eller via torrents.

Raspbian side

Last ned lenke til Raspbian OS

Du trenger en bildeskriver for å skrive det nedlastede operativsystemet til SD -kortet (micro SD -kort i tilfelle Raspberry Pi B+ -modell). Så last ned "win32 diskavbilderen" herfra.

Skriver bildet

Sett inn SD -kortet i den bærbare datamaskinen og kjør bildeskriveren. Når den er åpen, bla gjennom og velg den nedlastede Raspbian -bildefilen. Velg riktig enhet, det vil si stasjonen som representerer SD -kortet. Hvis stasjonen (eller enheten) som er valgt er forskjellig fra SD -kortet, blir den andre valgte stasjonen ødelagt. Så vær forsiktig.

Deretter klikker du på "Skriv" -knappen nederst. Som et eksempel, se bildet nedenfor, der SD -kort (eller micro SD) -stasjonen er representert med bokstaven "G: \"

Når skrivingen er fullført, kaster du ut SD -kortet og setter det inn i Raspberry Pi og slår det på. Det bør begynne å starte opp.

Setter opp Pi

Husk at etter oppstart av Pi, kan det være situasjoner der brukerlegitimasjonen som "brukernavn" og passord vil bli spurt. Raspberry Pi kommer med et standard brukernavn og passord, så bruk det alltid når det blir spurt. Legitimasjonen er:

pålogging: pi

passord: bringebær

Når Pi har blitt startet for første gang, skal det vises en konfigurasjonsskjerm som heter "Setup Options", og den vil se ut som bildet nedenfor.

Hvis du har gått glipp av "Oppsettalternativer" -skjermen, er det ikke noe problem, du kan alltid få det ved å skrive følgende kommando i terminalen.

sudo raspi-config

Når du har utført denne kommandoen, kommer "Setup Options" -skjermen opp som vist på bildet ovenfor.

Nå som Setup -vinduet er oppe, må vi sette noen ting. Etter å ha fullført hvert av trinnene nedenfor, hvis det ber om å starte Pi på nytt, vennligst gjør det. Etter omstarten, hvis du ikke får "Setup Options" -skjermen, følger du kommandoen ovenfor for å få skjermen/vinduet.

Det første du må gjøre:

velg det første alternativet i listen over oppsettalternativer -vinduet, det vil si

Utvid filsystemet

alternativet og trykk enter. Vi gjør dette for å utnytte all plassen på SD -kortet som en full partisjon. Alt dette gjør er å utvide operativsystemet slik at det passer hele plassen på SD -kortet som deretter kan brukes som lagringsminne for Pi. Den andre tingen å gjøre:

velg det tredje alternativet i listen over oppsettalternativer -vinduet, det vil si alternativet "Aktiver oppstart til skrivebord/skrape" og trykk enter -tasten. Det tar deg til et annet vindu som heter "velg oppstartsalternativ" -vinduet som ser ut som bildet nedenfor.

I vinduet "velg oppstartsalternativ", velg det andre alternativet, det vil si "Desktop Logg inn som bruker 'pi' på det grafiske skrivebordet" og trykk enter -knappen. Når du er ferdig, vil du bli ført tilbake til "Oppsettalternativer" -siden, hvis ikke, velg "OK" -knappen nederst i dette vinduet, og du vil bli ført tilbake til forrige vindu. Vi gjør dette fordi vi ønsker å starte opp på skrivebordsmiljøet som vi er kjent med. Hvis vi ikke gjør dette trinnet, starter Raspberry Pi inn i en terminal hver gang uten GUI -alternativer. Når begge trinnene er utført, velger du "fullfør" -knappen nederst på siden, og den skal starte på nytt automatisk. Hvis den ikke gjør det, kan du bruke følgende kommando i terminalen for å starte på nytt.

sudo omstart

Oppdaterer fastvaren

Etter omstart fra forrige trinn, hvis alt gikk riktig, vil du ende opp på skrivebordet som ser ut som bildet nedenfor.

Når du er på skrivebordet, åpner du en terminal og skriver inn følgende kommando for å oppdatere fastvaren til Pi.

sudo rpi-oppdatering

Oppdatering av fastvaren er nødvendig fordi enkelte modeller av Pi kanskje ikke har alle de nødvendige avhengighetene for å kjøre jevnt eller det kan ha en feil. Den siste fastvaren kan ha feilen på disse feilene, og derfor er det veldig viktig å oppdatere den i begynnelsen.

her er videolinken tilgjengelig:

Installere og konfigurere Raspbian Jessie -operativsystem på Raspberry Pi (klikk på lenken)

Trinn 3: Sett opp VNC på Raspberry Pi for å fjernstyre

Sett opp VNC på Raspberry Pi for å fjernkontrollere
Sett opp VNC på Raspberry Pi for å fjernkontrollere

VNC (Virtual Network Computing)

Noen ganger er det ikke praktisk å jobbe direkte på Raspberry Pi. Kanskje du vil jobbe med det fra en annen enhet med fjernkontroll.

VNC er et grafisk delingssystem for skrivebord som lar deg fjernstyre skrivebordet til en datamaskin (som kjører VNC Server) fra en annen datamaskin eller mobil enhet (som kjører VNC Viewer). VNC Viewer overfører tastaturet og enten mus eller berøringshendelser til VNC Server, og mottar oppdateringer til skjermen i retur.

Du vil se skrivebordet til Raspberry Pi i et vindu på datamaskinen eller mobilenheten. Du vil kunne kontrollere det som om du jobbet med selve Raspberry Pi.

VNC Connect fra RealVNC er inkludert med Raspbian. Den består av både VNC Server, som lar deg styre Raspberry Pi eksternt og VNC Viewer, som lar deg styre stasjonære datamaskiner eksternt fra Raspberry Pi hvis du vil.

Du må aktivere VNC Server før du kan bruke den: instruksjoner for dette er gitt nedenfor. Som standard gir VNC Server deg ekstern tilgang til det grafiske skrivebordet som kjører på Raspberry Pi, som om du satt foran det.

Aktiverer VNC -server

Kjør følgende kommandoer på Raspberry Pi for å sikre at du har den nyeste versjonen av VNC Connect:

sudo apt-get oppdatering

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

Aktiver nå VNC Server. Du kan gjøre dette grafisk eller på kommandolinjen.

Aktiverer VNC Server grafisk

Start på det grafiske skrivebordet på Raspberry Pi.

Velg Meny> Innstillinger> Raspberry Pi -konfigurasjon> Grensesnitt.

Sørg for at VNC er aktivert. Aktivering av VNC -server på kommandolinjen

Du kan aktivere VNC Server på kommandolinjen ved å bruke raspi-config:

sudo raspi-config

Aktiver nå VNC Server ved å gjøre følgende:

Naviger til Grensesnittalternativer

Rull ned og velg VNC> Ja. Koble til Raspberry Pi med VNC Viewer

Det er to måter å koble til Raspberry Pi på. Du kan bruke en eller begge deler, avhengig av hva som fungerer best for deg.

Etablere en direkte forbindelse

Direkte tilkoblinger er raske og enkle, forutsatt at du er koblet til det samme private lokale nettverket som din Raspberry Pi. Dette kan for eksempel være et kablet eller trådløst nettverk hjemme, på skolen eller på kontoret).

På din Raspberry Pi (ved hjelp av et terminalvindu eller via SSH) bruker du disse instruksjonene eller kjører ifconfig for å finne din private IP -adresse.

ifconfig

Last ned VNC Viewer på enheten du vil bruke til å ta kontroll. For best resultat, bruk den kompatible appen fra RealVNC.

Skriv inn din Raspberry Pi private IP -adresse i VNC Viewer:

Etablere en skyforbindelse

Du har rett til å bruke RealVNCs skytjeneste gratis, forutsatt at ekstern tilgang kun er til utdannelse eller ikke-kommersielle formål.

Skytilkoblinger er praktiske og krypterte ende-til-ende. De anbefales på det sterkeste for å koble til Raspberry Pi over internett. Det er ingen brannmur eller omkonfigurering av ruteren, og du trenger ikke å vite IP -adressen til Raspberry Pi, eller oppgi en statisk.

Registrer deg for en RealVNC -konto her: det er gratis, og det tar bare noen få sekunder.

Logg på VNC -serveren på Raspberry Pi ved å bruke de nye legitimasjonene for RealVNC -kontoen din:

Last ned VNC Viewer på enheten du vil bruke til å ta kontroll. Du må bruke den kompatible appen fra RealVNC

Logg på VNC Viewer med de samme legitimasjonene for RealVNC -kontoen, og trykk eller klikk deretter for å koble til Raspberry Pi:

Godkjenning til VNC -server

For å fullføre enten en direkte eller skyforbindelse, må du autentisere deg til VNC Server.

Hvis du kobler til fra den kompatible VNC Viewer -appen fra RealVNC, skriver du inn brukernavnet og passordet du vanligvis bruker for å logge deg på brukerkontoen din på Raspberry Pi. Som standard er disse legitimasjonene pi og bringebær.

Hvis du kobler til fra en ikke-RealVNC Viewer-app, må du først nedgradere VNC Servers godkjenningsopplegg, angi et passord som er unikt for VNC Server, og deretter angi det i stedet. For å gjøre dette, åpne VNC Server -dialogboksen på Raspberry Pi, velg Meny> Alternativer> Sikkerhet, og velg VNC -passord fra godkjenningen.

Slik slår du på denne funksjonen:

Åpne dialogboksen VNC Server på Raspberry Pi.

Naviger til Meny> Alternativer> Feilsøking og velg Aktiver eksperimentell modus for direkte fangst.

På enheten du vil bruke til å ta kontroll, kjør VNC Viewer og koble til.

Merk: eksisterende tilkoblinger må startes på nytt for at disse endringene skal tre i kraft.

Hvis ytelsen virker svekket, kan du prøve disse feilsøkingstrinnene eller gi beskjed til RealVNC.

Opprette et virtuelt skrivebord

Hvis din Raspberry Pi er hodeløs (dvs. ikke koblet til en skjerm) eller styrer en robot, er det lite sannsynlig at den kjører et grafisk skrivebord.

VNC Server kan lage et virtuelt skrivebord for deg, noe som gir deg grafisk ekstern tilgang på forespørsel. Dette virtuelle skrivebordet eksisterer bare i Raspberry Pi -minnet:

Slik oppretter og kobler du til et virtuelt skrivebord:

Kjør vnc -server på Raspberry Pi (ved hjelp av Terminal eller via SSH). Legg merke til IP -adressen/visningsnummeret som VNC Server vil skrive ut til terminalen din (f.eks. 192.167. **. **).

På enheten du vil bruke til å ta kontroll, skriver du inn denne informasjonen i VNC Viewer. For å ødelegge et virtuelt skrivebord, kjør følgende kommando:

vncserver -kill:

Dette vil også stoppe eventuelle eksisterende tilkoblinger til dette virtuelle skrivebordet.

Trinn 4: Kamerakonfigurasjon

Kamerakonfigurasjon
Kamerakonfigurasjon

Sette opp kameraets maskinvare

Advarsel: Kameraer er følsomme for statisk. Jord deg selv før du håndterer PCB. En vaskekran eller lignende bør være tilstrekkelig hvis du ikke har en jordingsrem.

Kamerakortet festes til Raspberry Pi via en 15-veis båndkabel. Det er bare to tilkoblinger å gjøre: båndkabelen må festes til kameraets PCB, og til selve Raspberry Pi. Du må få kabelen riktig vei, ellers fungerer ikke kameraet. På kameraets PCB skal den blå støtten på kabelen vende vekk fra PCB, og på Raspberry Pi skal den vende mot Ethernet -tilkoblingen (eller der Ethernet -kontakten ville være hvis du bruker en modell A).

Selv om kontaktene på PCB og Pi er forskjellige, fungerer de på en lignende måte. På selve Raspberry Pi trekker du opp tappene i hver ende av kontakten. Den skal lett gli opp og kunne svinge litt rundt. Sett båndkabelen helt inn i sporet, og sørg for at den er rett, og trykk deretter tappene forsiktig ned for å feste den på plass. Kameraets PCB -kontakt krever også at du trekker tappene bort fra kortet, setter kabelen forsiktig inn og skyver tappene tilbake. PCB -kontakten kan være litt vanskeligere enn den på selve Pi.

Sette opp kameraprogramvaren

Utfør følgende instruksjoner på kommandolinjen for å laste ned og installere den nyeste kjernen, GPU -fastvaren og applikasjoner. Du trenger en internettforbindelse for at dette skal fungere skikkelig.

sudo apt-get oppdatering

sudo apt-get oppgradering

Nå må du aktivere kamerastøtte med

raspi-config

programmet du vil ha brukt da du først konfigurerte Raspberry Pi.

sudo raspi-config

Bruk markørtastene til å gå til kameraalternativet, og velg 'aktiver'. Når du avslutter raspi-config, vil den be om å starte på nytt. Aktiveringsalternativet vil sikre at ved omstart vil riktig GPU -fastvare kjøre med kameradriveren og tuning, og GPU -minnesplittingen er tilstrekkelig til at kameraet får nok minne til å kjøre riktig.

Hvis den ikke er aktivert, aktiver den og start Pi på nytt for å begynne

For å teste at systemet er installert og fungerer, prøv følgende kommando:

raspistill -v -o test.jpg

Skjermen skal vise en forhåndsvisning på fem sekunder fra kameraet og deretter ta et bilde, lagret i filen test.jpg, mens den viser forskjellige informasjonsmeldinger.

RASPIVID

Raspivid er kommandolinjeverktøyet for å ta opp video med kameramodulen.

Med kameramodulen tilkoblet og aktivert, ta opp en video ved å bruke følgende kommando:

raspivid -o vid.h264

Husk å bruke

-hf

og

-vf

for å snu bildet om nødvendig, som med

raspistill

Dette vil lagre en 5 sekunders videofil til banen som er gitt her som vid.h264 (standard tid).

Angi lengden på videoen

For å spesifisere lengden på videoen som er tatt, send inn -t -flagget med et antall millisekunder. For eksempel:

raspivid -o video.h264 -t 10000

Dette vil ta opp 10 sekunder med video.

MP4 videoformat

Pi tar video som en rå H264 -videostrøm. Mange mediespillere vil nekte å spille den, eller spille den med feil hastighet, med mindre den er "pakket" i et passende beholderformat som MP4. Den enkleste måten å få tak i en MP4 -fil fra

raspivid

kommandoen bruker MP4Box.

Installer MP4Box med denne kommandoen:

sudo apt -get install -y gpac

Ta opp den rå videoen din med raspivid og pakk den inn i en MP4 -beholder slik:

# Ta opp 30 sekunder med rå video med 640x480 og 150 kB/s bithastighet i en pivideo.h264 -fil:

raspivid -t 30000 -w 640 -h 480 -fps 25 -b 1200000 -p 0, 0, 640, 480 -o pivideo.h264 # Pakk den rå videoen med en MP4 -beholder MP4Box -legg til pivideo.h264 pivideo.mp4 # Fjern kilde -råfilen, og lar den gjenværende pivideo.mp4 -filen spille rm pivideo.h264

Alternativt kan du pakke MP4 rundt din eksisterende raspivid -utgang, slik:

MP4Box -legg til video. H264 video.mp4

Trinn 5: Installasjon og konfigurasjon

Følg disse instruksjonene bare hvis du ønsker å kompilere programvaren din fra bunnen av. Disse trinnene nedenfor er nødvendige og anbefalte som den samme installasjonsprosessen på Raspberry pi.

Installere avhengighetene

Installere Sphinxbase/Pocketsphinx

Først må du installere Pocketsphinx. Hvis du bruker Debian Sid (ustabil) eller Jessie (tester), kan du bare gjøre:

sudo apt-get oppdatering

sudo apt-get install pocketphinx

Begynn med å installere noen avhengigheter:

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

Deretter går du inn i hjemmekatalogen (eller Jasper) for å sjekke ut og installere CMUCLMTK:

svn co

cd cmuclmtk/

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

cd..

Når du har forlatt CMUCLTK -katalogen, laster du ned følgende biblioteker:

Installere Phonetisaurus, m2m-aligner og MITLM

For å bruke Pocketsphinx STT-motoren må du også installere MIT Language Modeling Toolkit, m2m-aligner og Phonetisaurus (og dermed OpenFST).

Hvis du ikke bruker Debian, utfører du disse trinnene:

#-opprinnelig:

# wget

#-ny:

wget

wget

wget

wget

For å laste ned:

tjære -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

Bygg OpenFST:

cd openfst-1.3.4/

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

tid sudo gjør install # komme tilbake etter veldig lang tid

cd..

ekte 66m38.394s

bruker 64m42.620s

sys 1m2.150s

df -h /

Filsystemstørrelse som brukes Tilgjengelighet Bruk% Mounted on /dev /root 14G 4.4G 8.3G 35% /

Bygg M2M:

cd m2m-aligner-1.2/

sudo lage

cd..

Bygg MITLMT:

cd mitlm-0.4.1/

sudo./configure

sudo gjør installering

cd..

Bygg Phonetisaurus:

cd is2013-conversion/phonetisaurus/src

sudo lage

cd

Flytt noen av de kompilerte filene:

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

#-opprinnelig:

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

#-må være:

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

Legg merke til den endrede banen for den kjørbare.

Få og bygg Phonetisaurus FST -modellen

wget

tjære -xvf g014b2b.tgz

cd g014b2b/

./compile-fst.sh

cd..

Endelig gi nytt navn til følgende mappe for enkelhets skyld:

mv ~/g014b2b ~/phonetisaurus

Når installasjonene er fullført, starter du Pi på nytt.

Følger instruksjonene fra

Jeg har også lagt til (ny) filen `/etc/modprobe.d/alsa-base.conf` med dette innholdet:

# Dette angir indeksverdien til kortene, men ordner ikke om.

alternativer snd_usb_audio index = 0

alternativer snd_bcm2835 index = 1

# Gjør omleggingen.

alternativer snd slots = snd_usb_audio, snd_bcm2835

for å sikre riktig bestilling av lydenhetene (ikke helt sikker på at dette virkelig er nødvendig)

Ferdig med installasjoner - litt feilsøking neste …

Prøver å starte jaspis:

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

Spor tilbake (siste samtale sist):

Fil "./jasper/jasper.py", linje 12, inn fra klientimport tts, stt, jasperpath, diagnostiser fil "/home/pi/jasper/client/tts.py", linje 41, i importdiagnostiseringsfil "/ home/pi/jasper/client/diagnose.py ", linje 9, i import pip.req File" /usr/lib/python2.7/dist-packages/pip/_init_.py ", linje 74, inn fra pip. vcs import git, mercurial, subversion, bazaar # noqa File "/usr/lib/python2.7/dist-packages/pip/vcs/mercurial.py", line 9, in from pip.download import path_to_url File "/usr/ lib/python2.7/dist-packages/pip/download.py ", linje 25, inn fra requests.compat import IncompleteRead ImportError: kan ikke importere navnet IncompleteRead

Fikset med:

sudo easy_install -U pip

Neste nummer:

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

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

*JASPER - DEN TALENDE DATAMASKINEN**(c) 2015 Shubhro Saha, Charlie Marsh og Jan Holthuis***************************** ************************** ERROR: root: Det oppsto en feil! Traceback (siste anrop sist): Fil "./jasper/jasper.py", linje 143, i app = Jasper () Fil "./jasper/jasper.py", linje 88, i _init_ stt_engine_class = stt.get_engine_by_slug (stt_engine_slug) Fil "/home/pi/jasper/client/stt.py", linje 648, i get_engine_by_slug "avhengigheter, etc.)") % slug)

ValueError: STT -motorens 'sfinx' er ikke tilgjengelig (på grunn av manglende avhengigheter, manglende avhengigheter, etc.)

prøver

sudo apt-get install -y python-pocketsphinx

Fix banen til `../ phonetisaurus/g014b2b.fst` for å være`/home/pi/phonetisaurus/g014b2b.fst` i stedet (i `.jasper/profile.yml`)

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

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

*JASPER - DEN TALENDE DATAMASKINEN**(c) 2015 Shubhro Saha, Charlie Marsh og Jan Holthuis***************************** ************************** FEIL: client.stt: hmm_dir '/usr/local/share/pocketsphinx/model/hmm/no_US/hub4wsj_sc_8k ' eksisterer ikke! Sørg for at du har angitt riktig hmm_dir i profilen din.

Rett/aktiver banen for dette i `profile.yml` også:

hmm_dir: '/usr/share/pocketsphinx/model/hmm/no_US/hub4wsj_sc_8k' #valgfritt

(merk fraværet av "lokalt" i banen)

Delvis suksess -:

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

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

*JASPER - DEN TALENDE DATAMASKINEN**(c) 2015 Shubhro Saha, Charlie Marsh og Jan Holthuis***************************** ************************** ALSA lib pcm.c: 2239: (snd_pcm_open_noupdate) Ukjent PCM -kort.pcm.bakst ALSA lib pcm.c: 2239: (snd_pcm_open_noupdate) Ukjent PCM -kort.pcm.center_lfe ALSA lib pcm.c: 2239: (snd_pcm_open_noupdate) Ukjent PCM -kort.pcm. Side ALSA lib pcm.c: 2239: (snd_pcm_open_noupdate) Ukjent PCM -kort.pcm. pcm.c: 2239: (snd_pcm_open_noupdate) Ukjent PCM -kort.pcm.hdmi ALSA lib pcm.c: 2239: (snd_pcm_open_noupdate) Ukjent PCM -kort.pcm.modem ALSA lib pcm.c: 2239: (snd_pcm_open_noupdate) Ukjent.modem ALSA lib pcm.c: 2239: (snd_pcm_open_noupdate) Ukjent PCM -kort.pcm.phoneline ALSA lib pcm.c: 2239: (snd_pcm_open_noupdate) Ukjent PCM -kort.pcm.telefon ALSA lib pulse.c: 243: (pulse_connect) Puls: Kan ikke koble til: Tilkobling nektet ALSA lib pulse. C: 243: (pulse_connect) PulseAudio: Kan ikke koble til: Tilkobling nektet Kan ikke koble til for å vise r socket err = Ingen slik fil eller katalog Kan ikke koble til serverforespørsel kanal jack server kjører ikke eller kan ikke startes Expression 'paInvalidSampleRate' failed in 'src/hostapi/alsa/pa_linux_alsa.c', line: 2048 Expression 'PaAlsaStreamComponent_InitialConfigure (& self -> capture, inParams, self-> primeBuffers, hwParamsCapture, & realSr) 'failed in' src/hostapi/alsa/pa_linux_alsa.c ', line: 2719 Expression' PaAlsaStream_Configure (stream, inputParameters, outputParameters, sampleRate, framesPerBuffer, framesPerBuffer,, & hostBufferSizeMode) 'mislyktes i' src/hostapi/alsa/pa_linux_alsa.c ', linje: 2843 Traceback (siste anrop sist): Fil "./jasper/jasper.py", linje 148, i app.run () Fil "./jasper/jasper.py", linje 118, i kjøre conversation.handleForever () Fil "/home/pi/jasper/client/conversation.py", linje 31, i handleForever -terskel, transkribert = self.mic.passiveListen (self.persona) Fil "/home/pi/jasper/client/mic.py", linje 110, i passiveListen frames_per_buffer = CHUNK) File "/usr/lib/python2.7/dist-packages/pyaudio.py", line 747, in open stream = Stream (self, *args, ** kwargs) File "/usr/lib/python2.7/dist -pakker/pyaudio.py ", linje 442, i _init_ self._stream = pa.open (** argumenter) IOError: [Errno Ugyldig samplingsfrekvens] -9997

OK, å fikse RATE og CHUNK slik ser ut til å komme lenger:

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

indeks 401cddb..dee49fe 100644

--- a/client/mic.py

+++ b/client/mic.py

@@ -93, 8 +93, 8 @@ klasse Mikrofon:

"""

THRESHOLD_MULTIPLIER = 1.8

- RATE = 16000

- CHUNK = 1024

+ RATE = 44100 # 16000

+ CHUNK = 4096 # 1024

# antall sekunder for å tillate terskel

THRESHOLD_TIME = 1

Trinn 6: OUTPUT -skjermbilder

Anbefalt: