Far Fields mic (Mic array) - héros discret dans une colonne intelligente

Dans cet article, je veux parler de ma passion de longue date - étudier et travailler avec des microphones à champs lointains (réseau de microphones) - des matrices de microphones.


L'article sera intéressant pour ceux qui aiment construire leurs assistants vocaux, il répondra à certaines questions aux personnes qui perçoivent l'ingénierie comme un art, et qui souhaitent également s'essayer dans le rôle de Q ( ceci vient de Bond ). Mon humble histoire, j'espère que cela peut vous aider à comprendre pourquoi une colonne d'assistant intelligent faite strictement selon le tutoriel ne fonctionne bien que s'il n'y a pas de bruit du tout. Et si mal où ils sont, par exemple dans la cuisine.


Il y a de nombreuses années, je me suis intéressé à la programmation, j'ai commencé à écrire du code simplement parce que des professeurs sages ne me permettaient de jouer que des jeux écrits par moi-même. C'était un an donc 87 et c'était une Yamaha MSX. A ce sujet, il y a également eu une première startup. Tout est strictement selon la sagesse: «Choisissez un travail à votre guise, et vous n'aurez pas à travailler un seul jour dans votre vie» (Confucius).


Et donc les années ont passé, et j'écris toujours du code. Même un passe-temps avec un code - enfin, sauf pour le patin à roulettes, pour réchauffer le cerveau et "je n'oublierai pas matan", cela fonctionne avec le micro Far Fields (réseau de microphones). En vain, les professeurs ont passé du temps avec moi.


Qu'est-ce que c'est et où est-il appliqué


L'assistant vocal qui vous écoute possède généralement une gamme de microphones. On les retrouve dans les systèmes de visioconférence. Dans la communication collective, la part du lion de l'attention est accordée à la parole, bien sûr, nous ne regardons pas constamment le haut-parleur lors de la communication, mais parler directement dans le microphone ou le casque est contraignant et peu pratique.


Presque tout le monde, un client respecté, un fabricant de téléphones mobiles utilise à partir de 2 microphones ou plus dans ses créations (oui, les microphones sont assis derrière ces trous au-dessus, en dessous, derrière). Par exemple, dans l'iPhone 3G / 3GS, il était le seul, dans la quatrième génération d'iPhones, il y en avait deux, et dans la cinquième, il y avait déjà trois microphones. En général, il s'agit également d'un ensemble de microphones. Et tout cela pour une meilleure audibilité du son.


Mais revenons à nos assistants vocaux


Comment augmenter la portée de l'audition?


"besoin de grandes oreilles"


Une idée simple: si pour entendre celui qui se trouve à proximité, un seul microphone suffit, alors pour entendre de loin, vous devez utiliser un microphone plus cher avec un réflecteur, semblable aux oreilles des renards fenech:



(Wikipedia)




En fait, cela ne fait pas partie de la suite à fourrure, mais un appareil sérieux pour les chasseurs et les éclaireurs.



La même chose, uniquement sur les tubes résonateurs



Dans l'habitat.


(Tiré de https://forum.guns.ru )



Diamètre du miroir de 200 mm à 1,5 m


(pour plus d'informations, voir http://elektronicspy.narod.ru/next.html )


"Besoin de plus de microphones"


Ou peut-être que si vous mettez beaucoup de microphones bon marché, la quantité ira en qualité et tout ira bien? Zerghrash uniquement avec des microphones.


Étrange, mais cela fonctionne dans la vraie vie. C'est vrai avec beaucoup de matan, mais ça marche. Et nous en parlerons dans la section suivante.


Et comment apprendre à entendre davantage sans belles cornes?



L'un des problèmes des systèmes de klaxon est que vous pouvez clairement entendre ce qui est au point. Mais si vous avez besoin d'entendre quelque chose dans une direction différente, vous devez faire une "feinte avec vos oreilles" et rediriger physiquement le système dans une autre direction.


Et en ce qui concerne le rapport signal / bruit dans les systèmes avec des matrices de microphone, il est en quelque sorte meilleur par rapport à un microphone conventionnel.


Dans les réseaux de microphones, ainsi que dans leurs plus proches parents - PAR (antennes réseau phasées), vous n'avez rien à faire. En savoir plus dans la section Beamforming. Facile à voir:



Un microphone non focalisé (image de gauche) enregistre tous les sons de toutes les directions, pas seulement celui dont vous avez besoin.


D'où vient la grande gamme? Dans l'image de droite, le microphone n'écoute attentivement qu'une seule source. Comme pour la mise au point, il reçoit un signal provenant uniquement d'une source sélectionnée, et non un gâchis provenant de sources possibles de bruit, et un signal pur est simplement amplifié (rendu plus fort) sans l'utilisation de techniques sophistiquées de réduction du bruit. Un peu comme un embout buccal, mais sur une traction mate.


Quel est le problème avec la réduction du bruit?


Lors de l'application d'une réduction de bruit complexe, de nombreux défauts signifient qu'une partie du signal disparaîtra, ainsi qu'une partie du signal, le son changera et, à l'oreille, il ressemble à une coloration caractéristique du son avec réduction du bruit et en raison de l'illisibilité. Cette illisibilité est visible pour les russophones qui veulent entendre ces sifflements de l'interlocuteur. Eh bien, et en plus - en raison de l'annulation du bruit, l'auditeur n'entend aucun signal d'identification qui le relie à l'interlocuteur (respiration, reniflement et autres bruits accompagnant la parole en direct). Cela crée des problèmes, car dans le langage courant tout cela est entendu, et cela aide simplement à évaluer l'état et l'attitude de l'interlocuteur envers vous. Leur absence (bruit) pendant que nous entendons la voix provoque des sensations désagréables et réduit le niveau de perception, de compréhension et d'identification. Eh bien, si un assistant vocal vous écoute, la réduction du bruit rend difficile la reconnaissance de la phrase clé et du discours après. Certes, il y a un hack de vie - vous devez former le module de reconnaissance sur un échantillon enregistré en tenant compte des distorsions de la réduction du bruit utilisée.


Ceux qui connaissent le problème des cocktails peuvent toujours prendre un café ou un cocktail et mener une expérience sur le terrain, ceux qui ont envie de lire continuent.



En bref sur le matan sur lequel il travaille:


Estimation DOA (détermination de la direction de la source sonore) et formation du faisceau


DOA (détermination de la direction et, si possible, localisation vers la source):
Je serai bref, parce que le sujet est très vaste, cela se fait avec l'aide de la magie blanche, grise ou sombre (selon le sujet préféré dans l'EDI) et matan. le principal Une façon fréquente de jouer au DOA consiste à analyser les corrélations et d'autres choses entre des paires de microphones (généralement de diamètre opposé).
Life hack: pour la recherche, il est préférable de choisir un réseau avec une disposition circulaire de microphones. L'avantage est qu'il est facile de collecter des statistiques à partir de paires avec des distances différentes entre les microphones - de diamètre maximum et au minimum entre microphones - si vous prenez des paires en accords et avec différents azimuts (directions) à la source.


Formation de faisceau - La façon la plus simple et la plus facile de comprendre est -delay & sum (DAS et FDAS) - la formation de faisceau basée sur le retard et la somme.


Pour les visuels:



(Tiré de http://www.labbookpages.co.uk/audio/beamforming/delaySum.html )


Life hack: N'oubliez pas les différentes longueurs d'onde et pour chaque fréquence nous calculons notre différence de phase tn


Un diagramme de rayonnement approximatif ressemblera à ceci



Détails et avec formules


Ceux qui n'ont pas oublié comment fumer un matan peuvent participer aux JIO-RLS (moindres carrés de rang réduit adaptatif interarmées). Très similaire au goût de la descente en pente, vous savez.



Nous résumons donc: en utilisant des méthodes conventionnelles, obtenir une qualité comparable à un microphone matriciel est difficile. Après avoir appliqué la définition de la direction à la source, et par conséquent, nous n'entendons que la source qui est nécessaire, nous nous débarrassons du bruit et de la réverbération du médium, même celui qui est mal audible (effet Haas).


Assistant vocal - à quoi il ressemble à l'intérieur


Alors, à quoi ressemble le schéma de traitement du son d'un assistant vocal expérimenté:



Le signal du réseau de microphones est envoyé à un appareil dans lequel nous formons un faisceau vers une source sonore (formation de faisceau), éliminant ainsi les interférences. Ensuite, nous commençons à reconnaître le son de ce rayon, généralement ce n'est pas suffisant pour une reconnaissance de haute qualité des ressources de l'appareil, et le plus souvent, le signal va vers le cloud pour être reconnu (Microsoft, Google, Amazon le choisissent).


Le lecteur attentif remarquera: Et dans l'image avec la description, il y a une sorte de carré du mot Non, et pourquoi pas immédiatement une reconnaissance, comme promis?



Pourquoi ce carré supplémentaire est-il probablement dessiné sur le diagramme?


Et parce que vous diffusez constamment un signal de toutes les sources de bruit sur Internet pendant écoute la reconnaissance des ressources ne suffit pas. Par conséquent, nous commençons à reconnaître seulement lorsqu'ils ont réalisé qu'ils voulaient vraiment de nous - et pour cela, ils ont dit un sort spécial - ok Google, Siri ou Alex, ou ils m'ont appelé un cortan. Et le classificateur de mots Notifier est le plus souvent un neurone et fonctionne directement sur l'appareil. Dans la construction du classificateur, il y a aussi beaucoup de choses intéressantes, mais pas à ce sujet aujourd'hui.


Et en fait, le diagramme ressemble à ceci:



(mes gribouillis)


Plusieurs rayons peuvent se former sur différentes sources de signaux, et nous recherchons un mot spécial dans chacune d'elles. Mais nous traiterons plus loin celui qui a dit le bon mot.


La prochaine étape est la reconnaissance dans le cloud, couverte à plusieurs reprises sur Internet, il y a beaucoup de tutoriels dessus.


Comment pouvez-vous rejoindre cette matana de vacances


La façon la plus simple d'acheter une planche de développement. Aperçu des devboards existants: l'un des plus complets - par référence .


Le plus convivial pour les débutants:


https://www.seeedstudio.com/ReSpeaker-4-Mic-Array-for-Raspberry-Pi-p-2941.html


https://www.seeedstudio.com/ReSpeaker-Mic-Array-v2-0-p-3053.html


basé sur XMOS XVF-3000.


Je l'applique moi-même


Fabriqué comme j'aime - FPGA avec une interface ouverte contrôle les microphones de la matrice, communiquant avec elle via SDA.


Mes exploits pour avoir croisé Android Things et Mic Array:


Il y a certainement beaucoup d'exemples sur cette carte (Voice), mais c'est juste pratique pour moi de l'utiliser sous Things.


Arguments pour les choses:


Vous pouvez créer un outil flexible et puissant:


  • pratique que vous pouvez utiliser l'écran comme un appareil séparé
  • peut être utilisé comme un appareil sans tête, c'est-à-dire effectuer un transfert sur le réseau (créer une api pour le transfert vers un autre appareil)
  • débogage pratique
  • de nombreuses bibliothèques, y compris pour la transmission sur le réseau;
  • outils d'analyse - beaucoup.
  • et si cela semblait un peu, alors il est possible de connecter les bibliothèques Sishnoy

Par exemple, j'utilise:


  • analyse de fichiers sonores
  • HRTF,
  • Formation \ classificateurs de construction.

Et puis, si vous devez porter / réécrire le code dans une sorte d'intégration, il est en quelque sorte plus facile de le faire avec du code Java.


Malheureusement, l'exemple des auteurs du forum pour les choses était un peu inopérant, alors j'ai fait mon projet de démonstration (naturellement - je le peux).


En bref, qu'y a-t-il - toute la magie noire des micros à sondage rapide, nous faisons la FFT en C ++, et la visualisation, l'analyse, l'interaction réseau - en Java.


Plans de développement futurs


Source de plans et d'inspiration à la fois: ODAS .



Je veux donc faire de même, uniquement sur Things et sans pépins.


  • Parce que ODAS est un peu gênant à utiliser.
  • J'ai besoin d'un outil normal pour travailler
  • Parce que je peux et j'aime ce sujet
  • Les outils matériels utilisés répondent à la complexité de la tâche.

Mes plans sont basés sur ce (mon) référentiel .


Et rappelle


"Si vous avez quelque chose à compléter ou à critiquer, n'hésitez pas à en parler dans les commentaires, car une tête est pire que deux, deux sont pires que trois et n-1 est pire que n" nikitasius

Source: https://habr.com/ru/post/fr431144/


All Articles