Vous souvenez-vous de la scène de Blade Runner, où Deckard met une photo dans un inspecteur photo ? La caméra virtuelle peut effectuer un panoramique et se déplacer autour de la scène capturée, en extrayant des détails impossibles. Il paraît que [Ben Wang] découvert comment faire de cette astuce une réalité, mais avec de l’audio au lieu de la vidéo. La sauce secrète n’est pas un microphone sophistiqué, mais tout un tas de microphones très simples. Dans ce cas, ce sont 192 d’entre eux, disposés sur de longs PCB fonctionnant comme les rayons d’une roue d’art mural. Tout à fait le morceau de conversation.
Vous pouvez imaginer que capturer les données de 192 microphones à la fois est un défi en soi, et cela semble être une évaluation précise. Le premier problème de capture de données était dû aux PCB impairs poussant le processus de fabrication à ses limites. Environ la moitié des rayons étaient morts à l’arrivée, les micros individuels ayant tendance à court-circuiter la ligne d’horloge partagée à la terre ou à la ligne d’alimentation. Ensuite, pour extraire toutes ces données, un Colorlight est utilisé comme FPGA à usage général avec un facteur de forme pratique. Cet ancien contrôleur de pixels peut être utilisé pour une grande variété de projets, grâce à un effort d’ingénierie inverse Open Source, et est même pris en charge par la chaîne d’outils Project Trellis, qui a également été utilisée pour cet effort.
La mise en paquets de tous ces microphones dans des paquets UDP finit par pousser un énorme 715 Mbps, ce qui parvient à s’adapter parfaitement à une connexion Gigabit Ethernet. Ces données sont introduites dans un noyau GPU écrit avec Triton, une alternative Open Source à CUDA. Ceci effectue l’une des deux opérations de formation de faisceaux. La formation de faisceaux en champ proche divise l’espace directement devant le réseau de microphones en une grille 64x64x64 de voxels de 5 cm et peut localiser une source sonore dans cet espace 3D. Alternativement, le système peut exécuter une forme de faisceau en champ lointain et localiser une source sonore dans une direction 2D, sur une grille 512 × 512.
Dans le cadre de l’étalonnage, la vitesse du son est également un paramètre qui est optimisé pour obtenir le meilleur modèle du système, ce qui permet à toute cette procédure d’agir comme un thermomètre ridiculement surdimensionné.
L’astuce la plus impressionnante consiste à exécuter le processus dans l’autre sens et à isoler l’audio entrant provenant d’une direction spécifique. La démo ici consistait à jouer de la musique statique à partir d’une source et de la musique à partir d’une seconde source proche. Lorsque vous écoutez à partir d’un seul microphone, le résultat est un désordre confus. Mais l’application de l’algorithme de formation de faisceau fait un travail impressionnant d’isolation de l’audio directionnel. Cliquez pour entendre les résultats.
Et si cela ne suffit pas, consultez les détails d’un autre projet de réseau de microphones similaire.