Inhoudsopgave:
- Stap 1: Hardwarehandleiding
- Stap 2: OS-installatie op Raspberry Pi
- Stap 3: Stel VNC op Raspberry Pi in om op afstand te bedienen
- Stap 4: Cameraconfiguratie
- Stap 5: Installatie en configuratie
- Stap 6: OUTPUT Screenshots
Video: Spraakgestuurde camera met Raspberry Pi - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:19
Ontwikkel een camera die op voice-over-commando's kan draaien, deze is voornamelijk ontworpen voor allerlei soorten mensen, vooral voor mensen die op zoek zijn naar fotografie voor de lol.
Stap 1: Hardwarehandleiding
VDC is ontworpen op de Raspberry Pi (Model B) en vereist wat extra hardware zoals een wifi-adapter (optioneel) en USB-microfoon. De voorgestelde hardware wordt hieronder aangegeven met links voor meer details. U kunt iets andere merken/specificaties van hardware proberen. VDC is niet gelieerd aan een van de gekoppelde hardwareleveranciers.
De volledige lijst
- Raspberry Pi Model B
- Picamera
- USB mini-microfoon
- SD-kaart
- ethernetkabel
- Mini-USB-adapter (optioneel)
- Micro USB - wandoplader
- Luidsprekers die werken via de Raspberry Pi-audio-aansluiting (moeten waarschijnlijk zelfaangedreven zijn)
De lijst met geverifieerde randapparatuur van Raspberry Pi kan nuttig zijn bij het vinden van vervangingen voor de hierboven aanbevolen producten.
samenkomst
De montage van de benodigde componenten is eenvoudig. Steek de microfoon, SD-kaart, draadloze adapter (als je die hebt), micro-USB-kabel, ethernetkabel en luidsprekers in de Raspberry Pi. De USB-wandoplaadadapter wordt aanbevolen om als zelfstandig apparaat van stroom te voorzien.
De ethernetkabel wordt gebruikt om in te loggen op de pi vanaf een computer tijdens de software-installatiestap. Mocht je na installatie toch liever een draadloze verbinding gebruiken, dan kan deze kabel worden verwijderd.
Internetverbinding
Zoals hierboven vermeld, is de draadloze adapter optioneel. Het werkt prima op een bekabelde verbinding (via ethernet), dus je kunt kiezen tussen de twee opstellingen, afhankelijk van wat voor jou het beste werkt.
Stap 2: OS-installatie op Raspberry Pi
Invoering
Raspberry Pi is een microprocessor ter grootte van een creditcard die verkrijgbaar is in verschillende modellen met verschillende verwerkingssnelheden vanaf 700 MHz. Of je nu een model B of model B+ hebt, of de hele oude versie, het installatieproces blijft hetzelfde. Mensen die de officiële Raspberry Pi-website hebben bekeken, hebben ze misschien het besturingssysteem "NOOBS" of "NOOBS LITE" (ook bekend als "OS") voor beginners zien aanbevelen. Maar het gebruik van de Pi is heel eenvoudig en van een beginner wordt je in een mum van tijd een professional. Het is dus beter om te gaan met het krachtigere en efficiëntere besturingssysteem, de Raspbian. De belangrijkste reden waarom Raspbian extreem populair is, is dat het duizenden vooraf gebouwde bibliotheken heeft om veel taken uit te voeren en het besturingssysteem te optimaliseren. Dit vormt een enorm voordeel bij het bouwen van applicaties.
Raspbian en Image writer downloaden
Download hier de nieuwste versie van Raspbian. Je kunt het direct downloaden of via de torrents.
Raspbische pagina
Raspbian OS-downloadlink
U hebt een beeldschrijver nodig om het gedownloade besturingssysteem naar de SD-kaart te schrijven (micro SD-kaart in het geval van het Raspberry Pi B+-model). Dus download hier de "win32 disk imager".
De afbeelding schrijven
Steek de SD-kaart in de laptop/pc en voer de imagewriter uit. Eenmaal geopend, blader en selecteer je het gedownloade Raspbian-afbeeldingsbestand. Selecteer het juiste apparaat, dat wil zeggen het station dat de SD-kaart vertegenwoordigt. Als het geselecteerde station (of apparaat) verschilt van de SD-kaart, raakt het andere geselecteerde station beschadigd. Dus wees voorzichtig.
Klik daarna op de knop "Schrijven" onderaan. Zie als voorbeeld de onderstaande afbeelding, waar de SD-kaart (of micro SD)-drive wordt weergegeven door de letter "G:\"
Zodra het schrijven is voltooid, verwijdert u de SD-kaart en plaatst u deze in de Raspberry Pi en schakelt u deze in. Het zou moeten opstarten.
De Pi. instellen
Houd er rekening mee dat er na het opstarten van de Pi situaties kunnen zijn waarin de gebruikersgegevens zoals de "gebruikersnaam" en het wachtwoord worden gevraagd. Raspberry Pi wordt geleverd met een standaard gebruikersnaam en wachtwoord en gebruik deze dus altijd wanneer daarom wordt gevraagd. De geloofsbrieven zijn:
inloggen: pi
wachtwoord: framboos
Wanneer de Pi voor de eerste keer is opgestart, zou een configuratiescherm met de naam "Setup-opties" moeten verschijnen en het zal eruitzien als de onderstaande afbeelding.
Als u het scherm "Instellingsopties" hebt gemist, is dit geen probleem, u kunt het altijd krijgen door de volgende opdracht in de terminal te typen.
sudo raspi-config
Nadat u deze opdracht hebt uitgevoerd, verschijnt het scherm "Instellingsopties" zoals weergegeven in de afbeelding hierboven.
Nu het venster Setup-opties is geopend, moeten we een paar dingen instellen. Als u na het voltooien van elk van de onderstaande stappen wordt gevraagd om de Pi opnieuw op te starten, doe dit dan. Als u na het opnieuw opstarten het scherm "Instellingsopties" niet krijgt, volg dan de bovenstaande opdracht om het scherm/venster te krijgen.
Het eerste wat u moet doen:
selecteer de eerste optie in de lijst van het venster met instellingsopties, dat wil zeggen selecteer de
Uitvouwen Bestandssysteem
optie en druk op de enter-toets. Dit doen we om alle beschikbare ruimte op de SD-kaart als volledige partitie te gebruiken. Het enige dat dit doet, is het besturingssysteem uitbreiden om in de hele ruimte op de SD-kaart te passen, die vervolgens kan worden gebruikt als opslaggeheugen voor de Pi. Het tweede wat je moet doen:
selecteer de derde optie in de lijst van het setup-optiesvenster, dat wil zeggen selecteer de optie "Enable Boot To Desktop/Scratch" en druk op de enter-toets. Het brengt je naar een ander venster genaamd het "kies opstartoptie"-venster dat eruitziet als de afbeelding hieronder.
Selecteer in het "kies opstartoptievenster" de tweede optie, dat wil zeggen "Desktop Log in als gebruiker 'pi' op het grafische bureaublad" en druk op de enter-knop. Als u klaar bent, keert u terug naar de pagina "Setup-opties", zo niet selecteert u de knop "OK" onderaan dit venster en keert u terug naar het vorige venster. We doen dit omdat we willen opstarten in de desktopomgeving die we kennen. Als we deze stap niet uitvoeren, start de Raspberry Pi elke keer op in een terminal zonder GUI-opties. Zodra beide stappen zijn voltooid, selecteert u de knop "Voltooien" onderaan de pagina en het zou automatisch opnieuw moeten opstarten. Als dit niet het geval is, gebruik dan de volgende opdracht in de terminal om opnieuw op te starten.
sudo reboot
De firmware bijwerken
Na het opnieuw opstarten van de vorige stap, als alles goed is gegaan, komt u op het bureaublad terecht dat eruitziet als de onderstaande afbeelding.
Zodra u op het bureaublad bent, opent u een terminal en voert u de volgende opdracht in om de firmware van de Pi bij te werken.
sudo rpi-update
Het bijwerken van de firmware is noodzakelijk omdat bepaalde modellen van de Pi mogelijk niet alle vereiste afhankelijkheden hebben om soepel te werken of omdat er een bug kan zijn. De nieuwste firmware heeft mogelijk de oplossing voor die bugs, dus het is erg belangrijk om deze in het begin zelf bij te werken.
hier is de videolink beschikbaar:
Raspbian Jessie-besturingssysteem installeren en configureren op Raspberry Pi (klik op de link)
Stap 3: Stel VNC op Raspberry Pi in om op afstand te bedienen
VNC (Virtual Network Computing)
Soms is het niet handig om direct op de Raspberry Pi te werken. Misschien wilt u er vanaf een ander apparaat op afstand mee werken.
VNC is een grafisch systeem voor het delen van desktops waarmee u de desktopinterface van een computer (met VNC Server) op afstand kunt bedienen vanaf een andere computer of mobiel apparaat (met VNC Viewer). VNC Viewer verzendt het toetsenbord en muis- of aanraakgebeurtenissen naar VNC Server en ontvangt in ruil daarvoor updates op het scherm.
U ziet het bureaublad van de Raspberry Pi in een venster op uw computer of mobiele apparaat. Je kunt het bedienen alsof je aan de Raspberry Pi zelf werkt.
VNC Connect van RealVNC wordt meegeleverd met Raspbian. Het bestaat uit zowel VNC Server, waarmee u uw Raspberry Pi op afstand kunt bedienen, en VNC Viewer, waarmee u desktopcomputers op afstand vanaf uw Raspberry Pi kunt bedienen als u dat wilt.
U moet VNC Server inschakelen voordat u het kunt gebruiken: instructies hiervoor worden hieronder gegeven. Standaard geeft VNC Server je externe toegang tot de grafische desktop die op je Raspberry Pi draait, alsof je ervoor zit.
VNC-server inschakelen
Voer op je Raspberry Pi de volgende opdrachten uit om er zeker van te zijn dat je de nieuwste versie van VNC Connect hebt:
sudo apt-get update
sudo apt-get install realvnc-vnc-server realvnc-vnc-viewer
Schakel nu VNC-server in. U kunt dit grafisch of op de opdrachtregel doen.
VNC-server grafisch inschakelen
Start op je Raspberry Pi op naar het grafische bureaublad.
Selecteer Menu > Voorkeuren > Raspberry Pi-configuratie > Interfaces.
Zorg ervoor dat VNC is ingeschakeld. VNC-server inschakelen op de opdrachtregel
U kunt VNC Server op de opdrachtregel inschakelen met raspi-config:
sudo raspi-config
Schakel nu VNC Server in door het volgende te doen:
Navigeer naar interface-opties
Scroll naar beneden en selecteer VNC > Ja. Verbinding maken met uw Raspberry Pi met VNC Viewer
Er zijn twee manieren om verbinding te maken met je Raspberry Pi. U kunt een van beide of beide gebruiken, afhankelijk van wat voor u het beste werkt.
Een directe verbinding tot stand brengen
Directe verbindingen zijn snel en eenvoudig, op voorwaarde dat u bent aangesloten op hetzelfde particuliere lokale netwerk als uw Raspberry Pi. Dit kan bijvoorbeeld een bekabeld of draadloos netwerk zijn thuis, op school of op kantoor).
Gebruik op uw Raspberry Pi (met behulp van een terminalvenster of via SSH) deze instructies of voer ifconfig uit om uw privé-IP-adres te ontdekken.
ifconfig
Download VNC Viewer op het apparaat dat je gaat gebruiken om de controle over te nemen. Gebruik voor de beste resultaten de compatibele app van RealVNC.
Voer het privé-IP-adres van uw Raspberry Pi in VNC Viewer in:
Een cloudverbinding tot stand brengen
U hebt recht op gratis gebruik van de cloudservice van RealVNC, op voorwaarde dat toegang op afstand alleen voor educatieve of niet-commerciële doeleinden is.
Cloudverbindingen zijn handig en end-to-end versleuteld. Ze worden ten zeerste aanbevolen om via internet verbinding te maken met uw Raspberry Pi. Er is geen herconfiguratie van de firewall of router en u hoeft het IP-adres van uw Raspberry Pi niet te weten of een statisch adres op te geven.
Meld u hier aan voor een RealVNC-account: het is gratis en het duurt maar een paar seconden.
Meld u op uw Raspberry Pi aan bij VNC Server met uw nieuwe RealVNC-accountgegevens:
Download VNC Viewer op het apparaat dat je gaat gebruiken om de controle over te nemen. U moet de compatibele app van RealVNC gebruiken
Meld u aan bij VNC Viewer met dezelfde RealVNC-accountgegevens en tik of klik vervolgens om verbinding te maken met uw Raspberry Pi:
Verifiëren naar VNC-server
Om een directe of cloudverbinding tot stand te brengen, moet u zich verifiëren bij VNC Server.
Als u verbinding maakt vanuit de compatibele VNC Viewer-app van RealVNC, voert u de gebruikersnaam en het wachtwoord in die u normaal gebruikt om in te loggen op uw gebruikersaccount op de Raspberry Pi. Standaard zijn deze referenties pi en raspberry.
Als u verbinding maakt vanuit een niet-RealVNC Viewer-app, moet u eerst het authenticatieschema van VNC Server downgraden, een wachtwoord opgeven dat uniek is voor VNC Server en dat in plaats daarvan invoeren. Open hiervoor het VNC Server-dialoogvenster op uw Raspberry Pi, selecteer Menu > Opties > Beveiliging, en kies VNC-wachtwoord uit de verificatie.
Deze functie inschakelen:
Open op uw Raspberry Pi het dialoogvenster VNC Server.
Navigeer naar Menu > Opties > Problemen oplossen en selecteer Experimentele directe opnamemodus inschakelen.
Op het apparaat dat je gaat gebruiken om de controle over te nemen, voer je VNC Viewer uit en maak je verbinding.
Let op: bestaande verbindingen moeten opnieuw worden opgestart om deze wijzigingen door te voeren.
Als de prestaties verminderd lijken, probeer dan deze stappen voor probleemoplossing of laat het RealVNC weten.
Een virtueel bureaublad maken
Als uw Raspberry Pi headless is (d.w.z. niet aangesloten op een monitor) of een robot bestuurt, is het onwaarschijnlijk dat deze een grafische desktop heeft.
VNC Server kan een virtuele desktop voor u creëren, waardoor u op aanvraag grafische toegang op afstand krijgt. Deze virtuele desktop bestaat alleen in het geheugen van je Raspberry Pi:
Een virtuele desktop maken en er verbinding mee maken:
Voer op uw Raspberry Pi (met Terminal of via SSH) de vnc-server uit. Noteer het IP-adres/weergavenummer dat VNC Server naar uw terminal zal afdrukken (bijv. 192.167.**.**).
Op het apparaat dat u gaat gebruiken om de controle over te nemen, voert u deze informatie in VNC Viewer in. Voer de volgende opdracht uit om een virtuele desktop te vernietigen:
vncserver -kill:
Hierdoor worden ook alle bestaande verbindingen met deze virtuele desktop stopgezet.
Stap 4: Cameraconfiguratie
De camerahardware instellen
Waarschuwing: camera's zijn gevoelig voor statische elektriciteit. Aard uzelf voordat u de printplaat aanraakt. Een gootsteenkraan of iets dergelijks zou voldoende moeten zijn als je geen aardingsband hebt.
Het camerabord wordt via een 15-polige lintkabel aan de Raspberry Pi bevestigd. Er zijn slechts twee aansluitingen nodig: de lintkabel moet worden aangesloten op de camera-printplaat en op de Raspberry Pi zelf. Je moet de kabel er goed omheen doen, anders werkt de camera niet. Op de camera-printplaat moet de blauwe achterkant van de kabel van de print af zijn gericht en op de Raspberry Pi moet deze naar de Ethernet-verbinding wijzen (of waar de Ethernet-connector zou zijn als u een model A gebruikt).
Hoewel de connectoren op de printplaat en de Pi verschillend zijn, werken ze op dezelfde manier. Trek op de Raspberry Pi zelf de lipjes aan elk uiteinde van de connector omhoog. Het moet gemakkelijk omhoog kunnen schuiven en lichtjes kunnen draaien. Steek de lintkabel volledig in de sleuf en zorg ervoor dat deze recht is geplaatst, en druk vervolgens voorzichtig op de lipjes om hem op zijn plaats te klikken. Voor de connector van de camera-printplaat moet u ook de lipjes van het bord wegtrekken, de kabel voorzichtig insteken en vervolgens de lipjes terugduwen. De PCB-connector kan iets onhandiger zijn dan die op de Pi zelf.
De camerasoftware instellen
Voer de volgende instructies uit op de opdrachtregel om de nieuwste kernel, GPU-firmware en applicaties te downloaden en te installeren. Je hebt een internetverbinding nodig om dit correct te laten werken.
sudo apt-get update
sudo apt-get upgrade
Nu moet u camera-ondersteuning inschakelen met de
raspi-config
programma dat u hebt gebruikt toen u uw Raspberry Pi voor het eerst instelde.
sudo raspi-config
Gebruik de cursortoetsen om naar de camera-optie te gaan en selecteer 'inschakelen'. Bij het afsluiten van raspi-config zal het vragen om opnieuw op te starten. De optie inschakelen zorgt ervoor dat bij het opnieuw opstarten de juiste GPU-firmware wordt uitgevoerd met het camerastuurprogramma en de afstemming, en dat de GPU-geheugensplitsing voldoende is om de camera voldoende geheugen te laten verwerven om correct te werken.
Als het niet is ingeschakeld, schakelt u het in en start u uw Pi opnieuw op om te beginnen
Probeer de volgende opdracht om te testen of het systeem is geïnstalleerd en werkt:
raspistill -v -o test.jpg
Het scherm moet een voorbeeld van vijf seconden van de camera weergeven en vervolgens een foto maken, opgeslagen in het bestand test.jpg, terwijl verschillende informatieve berichten worden weergegeven.
RASPIVID
Raspivid is de opdrachtregeltool voor het vastleggen van video met de cameramodule.
Met de cameramodule aangesloten en ingeschakeld, neemt u een video op met de volgende opdracht:
raspivid -o vid.h264
Vergeet niet te gebruiken
-hf
en
-vf
om de afbeelding indien nodig om te draaien, zoals met
raspist
Hiermee wordt een videobestand van 5 seconden opgeslagen in het pad dat hier wordt gegeven als vid.h264 (standaard tijdsduur).
Specificeer de lengte van de video
Om de lengte van de gemaakte video te specificeren, geeft u de vlag -t op met een aantal milliseconden. Bijvoorbeeld:
raspivid -o video.h264 -t 10000
Hiermee wordt 10 seconden video opgenomen.
MP4-videoformaat
De Pi legt video vast als een onbewerkte H264-videostream. Veel mediaspelers weigeren het af te spelen, of spelen het op een verkeerde snelheid af, tenzij het is "verpakt" in een geschikt containerformaat zoals MP4. De gemakkelijkste manier om een MP4-bestand te verkrijgen van de
raspivid
commando gebruikt MP4Box.
Installeer MP4Box met deze opdracht:
sudo apt-get install -y gpac
Leg uw onbewerkte video vast met raspivid en wikkel deze in een MP4-container zoals deze:
# Leg 30 seconden onbewerkte video vast met een bitsnelheid van 640 x 480 en een bitsnelheid van 150 kB/s in een pivideo.h264-bestand:
raspivid -t 30000 -w 640 -h 480 -fps 25 -b 1200000 -p 0, 0, 640, 480 -o pivideo.h264 # Wikkel de onbewerkte video in met een MP4-container MP4Box -add pivideo.h264 pivideo.mp4 # Verwijderen het onbewerkte bronbestand en laat het resterende pivideo.mp4-bestand rm pivideo.h264. afspelen
U kunt ook MP4 om uw bestaande raspivid-uitvoer wikkelen, zoals deze:
MP4Box -video.h264 video.mp4 toevoegen
Stap 5: Installatie en configuratie
Volg deze instructies alleen als u uw software helemaal opnieuw wilt compileren. Deze onderstaande stappen zijn noodzakelijk en worden aanbevolen als hetzelfde installatieproces op uw Raspberry pi.
De afhankelijkheden installeren
Sphinxbase/Pocketsphinx installeren
Eerst moet je Pocketsphinx installeren. Als u Debian Sid (instabiel) of Jessie (testen) gebruikt, kunt u het volgende doen:
sudo apt-get update
sudo apt-get install pocketsphinx
Begin met het installeren van enkele afhankelijkheden:
sudo apt-get install subversion autoconf libtool automake gfortran g++ --yes
Ga vervolgens naar je thuismap (of Jasper) om CMUCLMTK uit te checken en te installeren:
svn co
cd cmuclmtk/
./autogen.sh && make && sudo make install
cd..
Wanneer u de CMUCLTK-directory hebt verlaten, downloadt u vervolgens de volgende bibliotheken:
Installeren van Phonetisaurus, m2m-aligner en MITLM
Om de Pocketsphinx STT-engine te gebruiken, moet u ook MIT Language Modeling Toolkit, m2m-aligner en Phonetisaurus (en dus OpenFST) installeren.
Als u Debian niet gebruikt, voert u deze stappen uit:
#-origineel:
# wget
#-nieuwe:
wget
wget
wget
wget
Untar de downloads:
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
OpenFST bouwen:
cd openfst-1.3.4/
sudo./configure --enable-compact-fsts --enable-const-fsts --enable-far --enable-lookahead-fsts --enable-pdt
time sudo make install # kom na een hele lange tijd terug
cd..
echt 66m38.394s
gebruiker 64m42.620s
sys 1m2.150s
df -h /
Bestandssysteem Grootte Gebruikt Beschikbaar Gebruik% Gekoppeld op /dev/root 14G 4.4G 8.3G 35% /
Bouw M2M:
cd m2m-aligner-1.2/
sudo maken
cd..
Bouw MITLMT:
cd mitlm-0.4.1/
sudo./configure
sudo make install
cd..
Bouw fonetisaurus:
cd is2013-conversie/phonetisaurus/src
sudo maken
CD
Verplaats enkele van de gecompileerde bestanden:
sudo cp ~/m2m-aligner-1.2/m2m-aligner /usr/local/bin/m2m-aligner
#-origineel:
# sudo cp ~/phonetisaurus-0.7.8/phonetisaurus-g2p /usr/local/bin/phonetisaurus-g2p
#-moet zijn:
sudo cp ~/is2013-conversion/bin/phonetisaurus-g2p /usr/local/bin/phonetisaurus-g2p
Let op het gewijzigde pad voor het uitvoerbare bestand.
Download en bouw het Phonetisaurus FST-model
wget
tar -xvf g014b2b.tgz
cd-g014b2b/
./compile-fst.sh
cd..
Wijzig ten slotte de naam van de volgende map voor het gemak:
mv ~/g014b2b ~/fonetisaurus
Zodra de installaties zijn voltooid, start u uw Pi opnieuw op.
Volg de instructies van
Ik heb ook het (nieuwe) bestand `/etc/modprobe.d/alsa-base.conf` met deze inhoud toegevoegd:
# Dit stelt de indexwaarde van de kaarten in, maar herschikt niet.
opties snd_usb_audio index=0
opties snd_bcm2835 index=1
# Doet de nabestelling.
opties snd slots=snd_usb_audio, snd_bcm2835
om de juiste volgorde van de geluidsapparaten te garanderen (hoewel niet helemaal zeker of dit echt nodig is)
Gedaan met installaties - wat debuggen volgende …
Jaspis proberen te starten:
pi@AVIV:~ $./jaspis/jaspis.py
Hertraceren (meest recente oproep als laatste)
Bestand "./jasper/jasper.py", regel 12, in van client import tts, stt, jasperpath, diagnosebestand "/home/pi/jasper/client/tts.py", regel 41, in importdiagnosebestand "/ home/pi/jasper/client/diagnose.py", regel 9, in import pip.req Bestand "/usr/lib/python2.7/dist-packages/pip/_init_.py", regel 74, in van pip. vcs import git, mercurial, subversion, bazaar # noqa Bestand "/usr/lib/python2.7/dist-packages/pip/vcs/mercurial.py", regel 9, in van pip.download import path_to_url Bestand "/usr/ lib/python2.7/dist-packages/pip/download.py", regel 25, in from requests.compat import IncompleteRead ImportError: kan naam niet importeren IncompleteRead
Vast met:
sudo easy_install -U pip
Volgend probleem:
pi@AVIV:~ $./jaspis/jaspis.py
*******************************************************
* JASPER - DE TALKING COMPUTER * * (c) 2015 Shubhro Saha, Charlie Marsh & Jan Holthuis * ****************************** ************************* FOUT:root:Er is een fout opgetreden! Traceback (meest recente oproep als laatste): Bestand "./jasper/jasper.py", regel 143, in app = Jasper()Bestand "./jasper/jasper.py", regel 88, in _init_ stt_engine_class = stt.get_engine_by_slug(stt_engine_slug) Bestand "/home/pi/jasper/client/stt.py", regel 648, in get_engine_by_slug"dependencies, etc.)") % slug)
ValueError: STT-engine 'sphinx' is niet beschikbaar (vanwege ontbrekende afhankelijkheden, ontbrekende afhankelijkheden, enz.)
proberen
sudo apt-get install -y python-pocketsphinx
Pad naar `../phonetisaurus/g014b2b.fst` repareren om in plaats daarvan `/home/pi/phonetisaurus/g014b2b.fst` te zijn (in `.jasper/profile.yml`)
pi@AVIV:~ $./jaspis/jaspis.py
*******************************************************
* JASPER - DE TALKING COMPUTER * * (c) 2015 Shubhro Saha, Charlie Marsh & Jan Holthuis * ****************************** ************************** FOUT:client.stt:hmm_dir '/usr/local/share/pocketsphinx/model/hmm/en_US/hub4wsj_sc_8k ' bestaat niet! Zorg ervoor dat je de juiste hmm_dir hebt ingesteld in je profiel.
Fix/activeer pad hiervoor ook in `profile.yml`:
hmm_dir: '/usr/share/pocketsphinx/model/hmm/en_US/hub4wsj_sc_8k' #optioneel
(let op de afwezigheid van "lokaal" in het pad)
Gedeeltelijk succes --:
pi@AVIV:~ $./jaspis/jaspis.py
*******************************************************
* JASPER - DE TALKING COMPUTER * * (c) 2015 Shubhro Saha, Charlie Marsh & Jan Holthuis * ****************************** ************************** ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Onbekende PCM-kaarten.pcm.rear ALSA lib pcm.c: 2239:(snd_pcm_open_noupdate) Onbekende PCM-kaarten.pcm.center_lfe ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Onbekende PCM-kaarten.pcm.side ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Onbekende PCM-kaarten ALSA libmi.hd pcm.c:2239:(snd_pcm_open_noupdate) Onbekende PCM-kaarten.pcm.hdmi ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Onbekende PCM-kaarten.pcm.modem ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Onbekende PCM-kaarten.pcm.modem ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Onbekende PCM-kaarten.pcm.phoneline ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Onbekende PCM-kaarten.pcm.phoneline ALSA lib pulse.c:243:(pulse_connect) PulseAudio: Kan geen verbinding maken: Verbinding geweigerd ALSA lib pulse.c:243:(pulse_connect) PulseAudio: Kan geen verbinding maken: Verbinding geweigerd Kan geen verbinding maken om te dienen r socket err = Geen dergelijk bestand of map Kan geen verbinding maken met serververzoekkanaal jack server is niet actief of kan niet worden gestart Expressie 'paInvalidSampleRate' is mislukt in 'src/hostapi/alsa/pa_linux_alsa.c', regel: 2048 Expressie 'PaAlsaStreamComponent_InitialConfigure(&self ->capture, inParams, self->primeBuffers, hwParamsCapture, &realSr)' mislukt in 'src/hostapi/alsa/pa_linux_alsa.c', regel: 2719 Expression 'PaAlsaStream_Configure(stream, inputParameters, outputParameters, sampleRate,out framesputLaffertency, &, &hostBufferSizeMode)' mislukt in 'src/hostapi/alsa/pa_linux_alsa.c', regel: 2843 Traceback (meest recente oproep als laatste): bestand "./jasper/jasper.py", regel 148, in app.run() Bestand "./jasper/jasper.py", regel 118, in run conversation.handleForever() Bestand "/home/pi/jasper/client/conversation.py", regel 31, in handleForever-drempel, getranscribeerd = self.mic.passiveListen (self.persona) Bestand "/home/pi/jasper/client/mic.py", regel 110, in passiveListen frames_per_buffer=CHUNK) Bestand "/usr/lib/python2.7/dist-packages/pyaudio.py", regel 747, in open stream = Stream(self, *args, **kwargs) Bestand "/usr/lib/python2.7/dist -packages/pyaudio.py", regel 442, in _init_ self._stream = pa.open(**argumenten) IOError: [Errno Ongeldige samplefrequentie] -9997
OK, de vaststelling van RATE en CHUNK op deze manier lijkt verder te komen:
diff --git a/client/mic.py b/client/mic.py
index 401cddb..dee49fe 100644
--- een/client/mic.py
+++ b/client/mic.py
@@ -93, 8 +93, 8 @@ klasse Mic:
"""
THRESHOLD_MULTIPLIER = 1,8
- TARIEF = 16000
- CHUNK = 1024
+ TARIEF = 44100 # 16000
+ CHUNK = 4096 # 1024
# aantal seconden om de drempel vast te stellen
THRESHOLD_TIME = 1
Stap 6: OUTPUT Screenshots
Aanbevolen:
Spraakgestuurde afstandsbedieningsknop: 4 stappen (met afbeeldingen)
Spraakgestuurde afstandsbedieningsknop: als je mijn andere instructables hebt gezien, weet je dat onze zoon spierdystrofie heeft. Dit is een onderdeel van een project om dingen voor hem toegankelijker te maken. We hebben een deur die wordt bediend met een afstandsbediening voor de garagedeuropener. Dit was fantastisch in l
Home/Lab Spraakgestuurde assistent: 14 stappen (met afbeeldingen)
Home/Lab Spraakgestuurde Assistent: Over MeHello! Dit is mijn eerste instructable, ik ben 17 jaar oud. Ik kom uit Griekenland, dus mijn Engels is misschien niet perfect, maar ik zal mijn best doen. Dus ik heb deze app 2 jaar geleden voor het eerst ontworpen en ik vond deze wedstrijd een kans om mijn oude project bij te werken
Spraakgestuurde BT: 3 stappen (met afbeeldingen)
Spraakgestuurde BT: spraakgestuurde domotica met behulp van Arduino: in dit project gebruik ik een spraakfunctie om apparaten in huis te bedienen. Dit project maakt deel uit van mijn Home Automation-serie. Dit project is heel gemakkelijk te gebruiken in het echte leven. Mensen van elke leeftijd hebben controle over
Hoe een spraakgestuurde robot te maken: 3 stappen (met afbeeldingen)
Hoe een spraakgestuurde robot te maken: heb je ooit dingen op je stem willen bedienen? Dan ben je op de juiste plek, je kunt alle dingen besturen met behulp van arduino, je hoeft alleen die dingen aan te sluiten en in het programma te declareren. Ik heb een eenvoudige stem gemaakt bestuurde robot, maar u kunt verbinding maken
Spraakgestuurde domotica: 8 stappen (met afbeeldingen)
Spraakgestuurde domotica: Hallo daar, in deze instructable ga ik je leren om een spraakgestuurde domotica te maken. We tikken gewoon op onze mobiel en bedienen onze apparaten met onze stem. Geloof me, het is niet zo moeilijk om te maken als het klinkt. Volg gewoon de stappen en je