Hey Leute, kennt von euch jemand eine möglichst kompakte Library für Spracherkennung, die man auf einer Cortex-M7 CPU laufen lassen kann? Audio-Input kommt via PDM Mems Mikrofon. Es muss natürlich nicht die gleiche Intelligenz wie Alexa oder Siri haben, aber einfache Befehle erkennen können um ein paar GPIOs zu schalten. Danke! Alternativ könnte ich mir tatsächlich auch eine Anbindung an eine Cloud-basierte Lösung vorstellen, sodass ich das Audio über eine Ethernet-Verbindung tunneln würde. (falls sowas schonmal jemand probiert hat)?
hier ist ein Ansatz mit Tensorflow lite: https://os.mbed.com/docs/mbed-os/v6.12/mbed-os-pelion/machine-learning-with-tensorflow-and-mbed-os.html aber das ist sicher keine Lib die man mal eben einbindet.
Johannes S. schrieb: > aber das ist sicher keine Lib die man mal eben einbindet. Vor allem sollte man einige Kenntnisse in der Problematik der Spracherkennung haben! Und das ist nicht wenig...und wird auch bei vorhandener "Bibliothek" keine "sorglos" Applikation werden. Abgesehen davon kenne ich erst mal keine Software für den Cortex-M7. Heist aber nix... Gruß Rainer
Das einzige Projekt in der Richtung das ich kenne ist. https://www.audeme.com/movi.html Und sobald ich einen Deutschen Händler finde, werde ich es mir zulegen. Aber die USA sind kein Land in den ich gerne bestellen würde. Die Versandkosten schlagen mir auch den Magen.
Alexa schrieb: > Es muss natürlich nicht die gleiche Intelligenz wie Alexa oder Siri > haben, aber einfache Befehle erkennen können um ein paar GPIOs zu > schalten. Und sicher hast du vermutlich keine Lust, dir zu überlegen, wie du das selbst implementieren würdest :-) Zumindest Rohdatenaufbereitung und die eigentliche Erkennung sollten als Konzept da sein und vielleicht noch das Bewußtsein, dass das eine harte Echtzeit-Aufgabe ist... Wünsche trotzdem viel Spass. Gruß Rainer
Google-Suchmuster: speech recognition chips liefert z.B. ein Nuvoton ISD9160 der als Board unter 20€ kostet. DigiKey hat ein DemoBoard: ISD-DMK_9160-ND Und dort ist auch ein Datenblatt verlinkt. Das zeigt schon mal was auf einem Microcontroller möglich ist. Weitere Treffer habe ich nicht geschaut, aber vielleicht ist die gewünschte Library dabei.
:
Bearbeitet durch User
Bei den Movi-Projekt setzten die eine A13 CPU nur für die Audio-Umwandlung und die Sprache ein. Offiziell schafft die 150 Worte, es sollen laut Foren bis zu 200 möglich sein. Da man das Teil aber via Schnittstelle selbst programmieren kann, sollte es kein großes Problem sein, via Kombi's auch mehr Freiheit zu programmieren. Das ganze wird dann via Arduino angesteuert. Ich kann mir eine Ansteuerung via Beere auch vorstellen. Wenn du was größeres vor hast, sollte es möglich sein, die Daten vom Arduino weiterzuleiten. In meinen Augen ist das Problem aber weniger ein Hardware als eine Software frage. Du musst die Sprache in Phoneme zerstückeln, die dann erkennen und in der Datenbank nachschauen. Das Problem dabei ist, das jeder Mensch unterschiedlich spricht. Ich erinnere mich noch an eine Cbit wo die DRAGON-SPEAK vorgestellt haben, und die nette Dame mit sehr trainierter Stimme das vorgeführt hat. Dabei hat sie erklärt das man den System erst man 2 Std. seine Aussprache mitteilen muss und auf meine Frage wie das ist wenn ich Abends gefeiert habe, sagte sie das würde die Erkennung um 40-60 % vermindern. Das Problem ist immer noch aktuell, nur haben die Server bei den Anbietern genug Power das zu kompensieren unter der Voraussetzung das du nur Standard-Sachen redest. Ich weiß bis heute noch nicht wie man bei Android einen PUNKT oder einen Absatzschaltung diktiert. ;) Und wie gesagt, die haben mehr Rechenpower als dein armseliger Chip. Und das Movi-System musst du an deine Sprache trainieren.
Alexa schrieb: > kennt von euch jemand eine möglichst kompakte Library für > Spracherkennung, die man auf einer Cortex-M7 CPU laufen lassen kann? Also das ist mir wie immer jetzt zu wenig an Angaben. Es macht schon einen kleinen Unterschied, ob du für dein Wohnzimmer etwas Konfortableres als den lausige Klatschschalter, "Licht ein, Licht aus" haben möchtest oder ob du mit dem gesprochenen Begriff eine Suchmaschine antriggern möchtest. Es geht - wie gesagt - sehr schnell in Richtung harter Echtzeit, denn du möchtest wahrscheinlich nicht 5 sek oder länger warten, wenn du z.B. "Stop" ausgeführt haben willst! Oder bei einem Abfragewunsch das beliebte "habe ihren Wunsch nicht verstanden, bitte wiederholen" quasi in Echtzeitschleife endlos ausführen möchtest. Gruß Rainer
Schlaumaier schrieb: > Das Problem dabei ist, das > jeder Mensch unterschiedlich spricht. Genau. Mit Training für einen Sprecher kann man Spacherkennung für einige Wörter sogar auf sehr kleinen µC implementieren, sogar auf welchen in der Größenordnung etwa eines Tiny85. Aber eine Spracherkennung für beliebige Sprecher, das ist eine ganz andere Dimension, selbst wenn es nur um einige wenige Schlüsselwörter geht und nicht noch um eine semantische Analyse des Gesagten.
Selbst bei diesem Alexa Lautsprecher funktioniert die Spracherkennung schlecht. Es wurde bekannt, dass er viel zu häufig aktiviert wird, obwohl niemand das Kommando gegeben hat.
Alexa schrieb: > kennt von euch jemand eine möglichst kompakte Library für > Spracherkennung, die man auf einer Cortex-M7 CPU laufen lassen kann? Scheint wohl einer der Stammtischfragen zu sein, bei denen das nächste Bier wichtiger ist...ich antworte jetzt mal einfach mit Nein. Würde mich wundern, wenn jemand mit einen Ja käme, ohne die üblichen Mutmassungen und Selbstdarstellungen, die so eine Frage immer nach sich zieht! Also was willste machen...Alexa... Gruß Rainer
Schlaumaier schrieb: > Ich erinnere mich noch an eine Cbit wo die DRAGON-SPEAK vorgestellt > haben, Das wurde mal mit OS/2 Warp ausgeliefert und sollte da ein Zugpferd sein. Es hatte auch den Anspruch ein Diktiersystem zu sein, also beliebige Texte erkennen zu können. Aber richtig praxistauglich war es durch zu hohe Fehlerrate nicht und es hat die damals aktuellen 486er ganz schön lahmgelegt. In PKW sind die Systeme aber schon recht gut, vor min. 12 Jahren hatte BMW schon einen Sprachassistenten der Kommandos ganz gut versteht. Auch Zahlen zur Telefonnummerneingabe, auch wenn die in zusammhängenden Blöcken gesprochen werden. Da sitzt man nah am Mikrofon und hat wenig Umgebungsgeräusche. Für eine Alexa ist es da schon schwieriger, bei 2 m Abstand und sehr Variablem Satzbau. Stefan ⛄ F. schrieb: > Selbst bei diesem Alexa Lautsprecher funktioniert die Spracherkennung > schlecht. das ist zwar nur das Aktivierungswort, aber wenn das zu unempfindlich ist, dann macht das ja auch keine Freude. Alexa benutze ich mit ioBroker, da können dann beliebige Geräte gesteuert werden, auch Selbstbau Aktoren über eigene Schnittstellen. Aber das ist dann auch wieder die fette Cloud Lösung.
Naja, Google hat auch eine OFFLINE-Spracherkennung. Funktioniert halbwegs brauchbar, ABER die erkennbaren Worte sind sehr begrenzt und von der Phonetik her sehr unterschiedlich und deshalb einfach zu erkennen. Ist m.M.n. das selbe Verfahren wie das Movi-Zeug. Die greifen da ja teilweise auch auf offenen Libs zu. Fakt ist aber. Die ganze Technik ist kompliziert. Wir brauchen noch 20 Jahre bevor es wie bei der Enterprice funktioniert. Und selbst das ist ein ONLINE-System. ;)
Schlaumaier schrieb: > Und sobald ich einen Deutschen Händler finde, werde ich es mir zulegen. > Aber die USA sind kein Land in den ich gerne bestellen würde. Die > Versandkosten schlagen mir auch den Magen. Du kannst mal bei mouser.de schauen. Die versenden aus USA, aber ab 50Euro (netto) fallen keine Versandkosten an. Das spezielle Board konnte ich dort nicht finden, aber das liegt auch an dem ungünstigen Suchbegriff "MOVI" für den es 426 Treffer gibt. Die Preise dort sind immer Nettopreise, d.h. die Mehrwertsteuer musst du noch dazurechnen. Michael
Schlaumaier schrieb: > Naja, Google hat auch eine OFFLINE-Spracherkennung. Google? Hat nicht mein Vertrauen.
https://github.com/espressif/esp-sr Nix für den Cortex aber für den ESP32. Evtl gibt es da Hinweise. Man scheint eigene Wörter anlegen zu können. Hab es noch nicht asuprobiert und weiß nicht wie gut das funktioniert In der c't wurde vor langer Zeit mal Snips vorgestellt. Das war ein Cloudservice der mit eigenen Kommandos angelernt werden konnte. Aber keine Ahnung ob es das noch gibt.
Michael D. schrieb: > as spezielle Board konnte > ich dort nicht finden, aber das liegt auch an dem ungünstigen > Suchbegriff "MOVI" für den es 426 Treffer gibt Ich vermute eher das es deshalb ist, weil es ein Crowdfunding Modul ist. Und von der Entwicklergruppe selbst vertrieben wird.
NXP hatte vor kurzem was veröffentlicht https://www.nxp.com/design/designs/nxp-edgeready-mcu-based-solution-for-local-voice-control:MCU-LOCAL-VOICE ansonst gab es mal die google API .. das konnte sogar ein Atmel mit ENC leider glaube nicht mehr kostenlos NXP hatte mit den LPCs mal eine demo auf der eine Malaspina lib lief eine hand voll vordefinierter worte ging da schon recht gut nuja ansonst die amazon API nutzen ...
Johannes S. schrieb: > Jason schrieb: >> Google? Hat nicht mein Vertrauen. > > aber sowieso schon alle deine Daten... Da ich Google nicht verwende und alle Seiten, die mit Google verbunden sind, von uMatrix & uBlock Origin blockieren lasse, ist die Frage woher Google meine Daten hat und vor allem welche?
" die mit Google verbunden sind, von uMatrix & uBlock Origin blockieren lasse" LOL, mehr gibt es dazu wohl nicht zu sagen...
funky schrieb: > In der c't wurde vor langer Zeit mal Snips vorgestellt. Das war ein > Cloudservice der mit eigenen Kommandos angelernt werden konnte. Aber > keine Ahnung ob es das noch gibt. Vor zwei Jahren von Sonos aufgekauft und vom Markt genommen.
No Y. schrieb: > Wenn es was professionelles sein darf: > https://www.voiceinterconnect.de/de/ Hat keiner meinen Beitrag gelesen?? Was spricht hier dagegen?
No Y. schrieb: > Hat keiner meinen Beitrag gelesen?? Was spricht hier dagegen? Alexa beteiligt sich die ganz Zeit nicht an ihrer eigenen Diskussion. Beschwere dich bei ihr, nur sie kann etwas zu deinem Vorschlag sagen. Alle anderen wissen schließlich nicht, ob es für sie "etwas professionelles" sein darf.
:
Bearbeitet durch User
Alexa schrieb: > Alexa ...ist vermutlich eine KI, die mal testen will, wie sehr ihr die Bleichgesichter schon auf den Pelz rücken könnten :-) Gruß Rainer
Rainer V. schrieb: > ...ist vermutlich eine KI, die mal testen will, wie sehr ihr die > Bleichgesichter schon auf den Pelz rücken könnten :-) Wohl eher: klassischer Traffic-Troll. Der Seitenbetreiber liebt die...
In edge impulse ist das schnell zusammengeklickt. Nur Rohdaten musst du halt sammeln oder irgendwo finden. Sollte dann laufen aber die frage ist halt mit wieviel Verzögerung auf einem MCU. M7 kann zwar relativ mächtig sein ...
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.