Erkenning van de toespraak van de animatronic Talking boom - deel 2 - (4 / 8 stap)

Stap 4: Grammaticabestanden


Op dit punt zou je kunnen afvragen waarom de schets is alleen herkennen van cijfers. Misschien heeft u nota genomen van het feit dat we naar het cijfer grammatica bestand in deze lijn van code verwezen.

Dus wat is een grammatica bestand?

Hoewel voce de mogelijkheid heeft om ongeveer 120000 woorden herkennen, voor de meeste doeleinden zullen alleen een paar commando's worden vereist. De woorden die zijn gedefinieerd in een grammatica bestand zijn de woorden die voor een toepassing wordt herkend. Dus voor elk programma of schets, die u maakt met behulp van stem zal een grammatica bestand vereist.

Grammaticabestanden voor voce voldoen aan de indeling van het bestand van de grammatica van de toespraak van Java (JSGF).

De cijfers grammatica bestand dat we gebruikt is het voorbeeld .gram bestand dat wasincluded met de download. Laten we eens een kijkje op een eenvoudig .gram bestand.

grammatica kleding;
publiek < clothesTypes > = (broek | shirt | sokken);

In dit voorbeeld zou de naam van de grammatica kleren, dus we zouden ook de naam van onze clothes.gram bestand. De grammatica regel clothesTypes zou zijn voldaan wanneer de herkenning van de woorden int de lijst (shirt, broek, sokken horen zou).

Dat is een bestand van de basisgrammatica. We zullen iets meer complex gebruiken, maar het is eigenlijk niet verplicht voor een project van deze omvang. Het geeft ons een kans om te bouwen van fatsoenlijke .gram bestand zodat we de structuur begrijpen als we willen om het te implementeren in iets complexer.

Open Kladblok of uw favoriete tekst-editor, en typt u het volgende. (of het pak)

#JSGF V1.0;

/**
* Voorbeeld van een registerbestand grammatica voor Animatronic boom
*/

boom van de grammatica;

publiek < boom > = < adres >< verzoek >< requestTypes >;

publiek < woordenschat > = (< adres > Hallo | Hallo < adres > | dank u) *;

publiek < extra > = (weet | hoe | waarom | die | u | hoo | shoo);

< adres > = (boom);

< verzoek > = (vertellen | krijgen de | wat);

< requestTypes > = (een grap | weer | tijd is het | dag is het);

Laat nu eens een kijkje op onze definities.

We beginnen met de naam van de grammatica, in dit geval boom. We hebben dan een grammatica regel < boom >, waarbij drie voorwaarden waaraan moet worden voldaan. Adres, aanvraag en type aanvraag. Scroll naar beneden en kijken naar degenen nu laat.

Adres, zou het woord "boom", die in mijn geval wat ik noem mijn boom is, of behandelen hem als. U kunt dit wijzigen wat je wilt, zolang het in het woordenboek van bekende woorden. Er zijn een paar gewone namen in het bestand, maar voor dit project hield ik boom. Een definitie mag ook een zin, zodat u kunt creatief, ik gebruikte "Skull weten we" als naam voor een ander project. (Zijn eigennaam was Skullduino)

Verzoek en aanvraag type definiëren hoe om te vragen voor iets, zodat de structuur wanneer we met de robot praten zal zijn 'Boom, verzoek, requestType'. Zoals je kunt zien ben ik op een aantal manieren om dingen te zeggen.

Als we teruggaan tot dat de twee regels dat we verdoezeld, zullen we zien eerst een regel woordenschat, onderdelen voldoet voor sommige met het adres, en sommige zonder. Voor begroeting van de boom en dank te zeggen.

Dan hebben we extra, die zijn slechts enkele woorden die dreigen te worden gezegd tussen grappen. We zetten ze in niet zozeer om te reageren op wat iets te horen tussen vraag en punch lijnen van grappen. Als we geen rekening met deze gehouden ' buffer'words, de herkenning zou zitten wachten om te horen van een van de opdrachten of de structuren die wij getroffen hebben voor de afwerking van een grap.

Sla uw grammatica-bestand in de map gram in de omslag van de bibliotheken die we eerder hebt gemaakt. Noem het "tree.gram".

Aanwijzer wijzigen van "cijfers" "boom" in uw code voce initiatie, merken dat wij niet schrijven van de .gram, en probeer het uit. Uw schets moet nu proberen te erkennen de woorden die we gedefinieerd in plaats van de nummers van vóór.

de volgende initieert de voce-bibliotheek
voce. SpeechInterface.init ("libraries/voce-0.9.1/lib", true, true,"libraries/voce-0.9.1/lib/gram","boom");

Gerelateerde Artikelen

Animatronic Talking kerstboom - deel 1

Animatronic Talking kerstboom - deel 1

In dit Instrutable zal ik u tonen hoe om te zetten van een regelmatige goedkoop decoratieve kunstmatige kerstboom in een ontzagwekkende animatronic robot-platform voor de geek in de familie.In de tweede aflevering, zal ik u tonen hoe u spraakherkenni
Robot - erkenning van de stem

Robot - erkenning van de stem

Mijn excuses als u spelfouten of onzinnige tekst zoeken, mijn taal is Spaans en niet gemakkelijk te vertalen is geweest, ik zal het verbeteren van mijn Engels om door te gaan met het componeren van instructables.Stap 1: stukken.Het is interessant om
De muis van de erkenning van het gebaar met Matlab beeldverwerking.

De muis van de erkenning van het gebaar met Matlab beeldverwerking.

Ooit denken dat wearables belangrijke positie in de behandeling van de computer bezetten zal?Gebaar doet het allemaal.Welkom op mijn nieuwe project met de muis van de erkenning van het gebaar.Hier zijn de projectvereisten:1) kleur penningen/markering
Erkenning van de stem van de Arduino Via Bluetooth HC-05

Erkenning van de stem van de Arduino Via Bluetooth HC-05

Het is echt eenvoudig en snelle controle van de stem aan uw arduino project toevoegen. Of het nu gaat om huis automatisering of deurslot of robots, controle van de stem kan worden één oog springende functie in een arduino project. In deze tutorial ik
Intel Edison Opecv erkenning van het beeld met AfricasTalking SMS gateway (knooppunt mailer)

Intel Edison Opecv erkenning van het beeld met AfricasTalking SMS gateway (knooppunt mailer)

In dit instrueren-kunnen we gebruiken Opencv Image recognition zodanig dat wanneer een bepaalde afbeelding wordt herkend dat een tekst wordt verzonden naar een gebruiker met behulp van AfricasTalking Sms gateway. Deze tech kan worden toegepast in vei
De erkenning van de stem van de Arduino. (Basis)

De erkenning van de stem van de Arduino. (Basis)

Hey guys, vandaag we een groot project voor jou hebben. De erkenning van de stem van de Arduino! We gebruiken de gemakkelijke VR en een Arduino. Dit project zal je leren hoe te gebruiken de easyVR voor spraakherkenning: Opmerking: erkenning van de st
Een microfoon aan de Omnitech GPS-systeem voor erkenning van de stem toe te voegen

Een microfoon aan de Omnitech GPS-systeem voor erkenning van de stem toe te voegen

terwijl het knutselen met mijn eenheid vond ik een gemakkelijke en snelle manier om toe te voegen een microfoon aan deze dove eenheid. Met een microfoon zult u in staat om te profiteren van de erkenning van de stem voor navigatie. Het brengt een klei
Overspuiten van metaal arcade game onderdelen - deel II

Overspuiten van metaal arcade game onderdelen - deel II

In dit instructable ik je laten zien hoe ik opgeruimd bouten die ging op mijn Centuri Tunnel Hunt.  Het spel werd opgeslagen in een schuur voor een aantal jaren, en veel van de onderdelen op het waren vreselijk geroest tijdens het verblijf.In deze ee
Het gebruik van een seriële Module voor de erkenning van de stem - Arduino tutorial Arduino Tutorial

Het gebruik van een seriële Module voor de erkenning van de stem - Arduino tutorial Arduino Tutorial

In deze tutorial leert u hoe een stem erkenning - seriële - module met de Arduino uno board. Deze module kan maximaal 15 spraakopdrachten worden opgeslagen. Die zijn onderverdeeld in 3 groepen, met 5 opdrachten in elke groep.We moeten eerst de module
RomoBOT - gezicht van de Animatronic Robot

RomoBOT - gezicht van de Animatronic Robot

Dit is mijn eerste instructable, dus wees zacht. De RomoBOT was een project van mij in het laatste jaar van mijn studie werktuigbouwkunde. Het was een onafhankelijke studie en gericht op robotica. Het project veranderde enkele malen en het oorspronke
Erkenning van de stem van de Arduino met Android

Erkenning van de stem van de Arduino met Android

Hey vrienden!! Sinds mijn eerste tutorial voor het beheersen van met Android motoren ik vroeg me af wat als ik een robot kunt bepalen met mijn toespraak, zou het niet interessant? Dus ik met behulp van MIT app uitvinder kundig voor zeggenschap Arduin
Bouwen van uw eigen Talking Tom speelgoed met kras en Arduino

Bouwen van uw eigen Talking Tom speelgoed met kras en Arduino

Hou je van praten Tom? Wat over het maken van onze eigen interactieve (Arduino/Scratch) praten Tomspeelgoed?In dit instructable zal tonen we u hoe te bouwen van dit speelgoed met behulp van sensoren en bi-directionele Scratch <> - Arduino mededeling
Snelheid van Controllers voor goedkope Robots, deel 2: PID-regelaar

Snelheid van Controllers voor goedkope Robots, deel 2: PID-regelaar

Hey! Dit is deel twee van een tweedelige zelfstudie over hoe maak je een snelheidsregelaar uit een fles dop en pen lente! Als u nog niet hebt, check it out! Als u bevalt, kunt u overwegen stemmen voor mij in de sensoren-wedstrijd! Bedankt!Zelfs dat a
Snelheid van Controllers voor goedkope Robots, deel 1: schacht Encoders

Snelheid van Controllers voor goedkope Robots, deel 1: schacht Encoders

Kunt u vertellen waarom ik heb enthousiast voor dit project? Ken jij hoe serieus cool dit is?"Nee, Jay" Ik hoor u zeggen, zuchten als je jezelf voor een andere versterken enthousiast uitleg. "Waarom niet u uitleggen aan ons?"Oke, laat