Chcesz macierz mini-mikrofon USB. Czy to możliwe?

13

Nauczyłem się dużo o adaptacyjnym formowaniu wiązki i bawiłem się różnymi Simami w MATLAB itp.

Ale czy jest lepszy sposób, aby coś zrozumieć - naprawdę to zrozumieć - niż bawić się całym systemem?

W tym celu chciałbym znaleźć (zbudować?) Tablicę mikrofonów podłączoną przez USB, na przykład około 5 mikrofonów. Będą w stanie pozyskiwać sygnały ze środowiska (aka, gdziekolwiek jest mój laptop), a następnie będę w stanie odbierać te sygnały i przetwarzać je w MATLAB lub cokolwiek innego.

Naprawdę wolałbym nie budować tego wszystkiego, więc mam nadzieję, że ktoś już w przeszłości korzystał z zestawów mikrofonów podłączonych przez USB i może wskazać właściwy kierunek?

Mikrofony nie muszą być czymś wymyślnym, jeśli chodzi o rozdzielczość bitową ich A / D itp. Mikrofony KISS o przyzwoitej jakości dobrze sobie poradzą.

Spacey
źródło

Odpowiedzi:

8

Playstation Eye kamera posiada 4-liniowy element tablicy mikrofonu. Zapewnia 16-bitowe próbki przy 48 KHz przy SNR 90 dB. Jest łatwy w użyciu: wymienia jako standardowe urządzenie audio USB z czterema osobnymi kanałami.

Przykład użycia w ten sposób można znaleźć w: 4-kanałowych testach audio PS3 Eye na Ubuntu Karmic

Jim Paris
źródło
1
@Mohammad To byłoby prawdopodobnie dobrym rozwiązaniem, jeśli z przyjemnością ograniczysz się do czterech kanałów. Cztery kanały dają efekt kształtowania wiązki około 12dB. Minusem jest to, że ze względu na to, że całkowity zasięg matrycy jest dość mały, będziesz miał dość duży ogniskowy kształt wiązki: nie możesz oddzielić źródeł dźwięku, które są zbyt blisko siebie. Dlatego głównym zastosowaniem tej tablicy prawdopodobnie nie byłoby izolowanie źródeł dźwięku, a raczej śledzenie pojedynczego źródła dźwięku w przestrzeni. Tzn. Wiem, gdzie osoba stoi przed głosem ...
ARF
1
@ArikRaffaelFunke Hmm, nie wiem wystarczająco dużo o adaptacyjnym formowaniu wiązki, aby wiedzieć, co to jest ognisko. :-) Jednak myślę, że nadal byłbym w stanie oddzielić źródła za pomocą nie natychmiastowego ICA. (w tej chwili skupiam się na ICA). Poza tym tak 4 nie jest tak bardzo, jak się spodziewałem ... Ale może to być początek… c
Spacey
3

Pracując intensywnie w adaptacyjnym kształtowaniu wiązki, naprawdę unikałbym samodzielnego włamania się do tego, dopóki nie miałem doświadczenia. (Uwaga: profesjonalne rozwiązania z około 60 kanałami kosztują około 100 000 €. W przypadku wielu kanałów rozdzielczość przestrzenna staje się znacznie lepsza, ale przez port USB można uzyskać tylko ograniczoną ilość informacji ...)

Dla niezawodnego kształtowania wiązki ważne jest, aby wszystkie mikrofony używały tej samej podstawy czasu. Najłatwiej to osiągnąć za pomocą zewnętrznej karty dźwiękowej USB z wieloma kanałami wejściowymi. Nie są to jednak naprawdę tanie. Czy spojrzałeś na to, co można znaleźć w serwisie eBay?

Alternatywą jest poświęcenie wspólnej podstawy czasu za pomocą szeregu kart dźwiękowych USB z np. Dwoma kanałami. Będziesz jednak musiał skalibrować system akwizycji. To naprawdę nie jest tak trudne, jak się wydaje:

Aby skalibrować, ustawiasz tablicę i wydajesz krótki dźwięk (np. Trzask / klask / itp.) W pewnej odległości od tablicy, która jest rzędu wielkości tablicy. Następnie nagrywasz ten dźwięk i używasz Matlaba lub podobnego narzędzia do obliczenia korelacji krzyżowej między klaśnięciem / pęknięciem / itp. na różnych kanałach. To da ci listę przesunięć czasowych, które musisz zastosować do swoich kanałów, aby wyrównać je przed podaniem danych do algorytmu kształtowania wiązki.

Aby zapoznać się z adaptacyjnym kształtowaniem wiązki, jest to prawdopodobnie najlepsza droga, chyba że można zawrzeć umowę na wielokanałową kartę dźwiękową.


Edytuj 1

Ta edycja ma odpowiedzieć na pytania postawione w komentarzach.

Podstawową ideą formowania wiązki opóźnienia i sumy jest zastosowanie opóźnień do różnych kanałów akwizycji, tak aby dźwięki pochodzące z jednego punktu w przestrzeni były wyrównane i „wzmacniane” po dodaniu sygnału z różnych kanałów. Dźwięki, które pochodzą z innych regionów przestrzeni, nie są wyrównane i dlatego nie są „wzmacniane”.

Punkt w przestrzeni, dla którego dźwięki wyrównują się przy użyciu określonego zestawu opóźnień, nazywany jest ogniskiem zestawu mikrofonów (lub ogniskowym). W rzeczywistości jednak skupienie nie jest idealnym punktem, ale raczej małym (ish) (w zależności od układu) obszarem przestrzeni, w którym dźwięki dobrze się wyrównują. Rozmiar tego regionu nazywany jest rozmiarem ogniskowej.

Geometria (rozmiar, kształt itp.) Zależy od dokładnych szczegółów tablicy: liczby mikrofonów, odstępów mikrofonów, zawartości częstotliwości sygnałów będących przedmiotem zainteresowania. Zobacz np. Ten artykuł .

Aby uzyskać więcej informacji, poszukaj tekstów dotyczących skupiania się na „układach fazowych” lub „układach liniowych” w ultradźwiękach. Formowanie wiązki może być stosowane przy odbiorze (w celu wzmocnienia sygnałów z określonego punktu w przestrzeni) lub przy emisji (w celu stworzenia „głośnego” miejsca w pokoju). Zasady są identyczne: po prostu zamień „mikrofon” na „głośnik” w swoim myśleniu.

Odnośnie procedury kalibracji: masz rację. Procedura, którą opisałem, jest zbyt uproszczona. Działa to dobrze tylko wtedy, gdy można utworzyć klapkę kalibracyjną z dużo większej odległości niż region, który Cię interesuje. (Tj., Aby zapewnić gładką falę).

Jeśli nie jest to możliwe, musisz wziąć pod uwagę pozycję klaśnięcia. W tym przypadku najprostszą procedurą jest skorygowanie opóźnień poprzez korelację krzyżową, jak opisano, ale następnie dodanie krzywizny frontu z powrotem do sygnału poprzez zastosowanie zestawu opóźnień „odwrotnego kształtowania wiązki” obliczonego na podstawie położenia początku klaskać. (Tj. Jeśli używasz zmiennej głębokości + t0 (lub + z0) w swoim „normalnym” algorytmie kształtowania wiązki, musisz użyć -t0 (lub -z0) dla algorytmu odwrotnego kształtowania wiązki.)

Jaki jest sens tej kalibracji: eliminuje wszelkie błędy wynikające z tego, że różne karty dźwiękowe rozpoczynają nagrywanie w nieco innym czasie. Zwykle uniemożliwiałoby to prawidłowe wyrównanie sygnałów, nawet przy prawidłowych opóźnieniach, a tym samym uniemożliwiłoby poszukiwany efekt wzmocnienia.

ARF
źródło
Dzięki Arik. Nie jestem jednak pewien, dlaczego chcesz zrekompensować opóźnienia. Na przykład niektóre adaptacyjne kształtowanie wiązki, jak wiadomo, jest opóźnieniem i sumą, więc automatycznie zajmuje się problemami z opóźnieniem czasowym. Drugą rzeczą (myślę, że to, co mówisz), jest to, że nie chcą wspólnej czasową synchronizację. (tj. naciśnij przycisk, wszystkie mikrofony zaczynają nagrywać w tym samym czasie), ale nie chcę, aby miały one wspólne opóźnienia czasowe.
Spacey,
Właściwie mam wbudowany w laptopie układ mikrofonów, myślę, że to tylko dwa mikrofony, ale może to być punkt wyjścia, jednak nie mam pojęcia, jak uzyskać dostęp do ich danych z minimalnym zamieszaniem osobno ...
Spacey
@Mohammad - problem nie kompensuje znanych opóźnień czasowych, lecz kompensuje nieznane opóźnienia czasowe. Zasadniczo będzie istniał pewien czas przetwarzania dla każdej oddzielnej karty dźwiękowej USB i może się różnić w zależności od urządzenia (w którym to przypadku można to skompensować), a nawet może nie być stały / zmieniać się w zależności od obciążenia magistrali USB.
Connor Wolf,
@Mohammad What FakeName powiedział ... Aby wszystko było jeszcze jaśniejsze: Podstawa czasowa dla dowolnego kształtowania wiązki musi być lepsza niż półokres składowej najwyższej częstotliwości, którą chcesz wziąć pod uwagę. Uważam, że nie da się tego osiągnąć za pomocą niezależnych kart dźwiękowych, po prostu rozpoczynając nagrywanie w tym samym czasie. Rzeczy są różne, jeśli masz jedną kartę dźwiękową z wieloma kanałami.
ARF,
@ArikRaffaelFunke Rozumiem, co masz na myśli o kalibracji, źle zrozumiałem twoje oświadczenie. Nie widzę jednak sposobu, w jaki można usunąć opóźnienie czasowe z nietypowej podstawy czasowej, nieumyślnie usuwając opóźnienie czasowe z kanału (który chcesz zachować). Jedynym sposobem jest upewnienie się, że odległość do każdego mikrofonu od klaskania jest taka sama, ale nie jest to możliwe dla matrycy liniowej> 2. Być może, jeśli wystarczająco daleko (a więc na czoło fali płaskiej) nie będzie to miało większego znaczenia?
Spacey