Поработав над адаптивным формированием луча, я бы действительно стеснялся взломать что-нибудь сам для этого, пока не приобрел некоторый опыт. (Примечание. Профессиональные решения с 60 каналами стоят около 100 тыс. Евро. Со многими каналами ваше пространственное разрешение становится намного лучше, но вы получаете только ограниченный объем информации через порт USB ...)
Для надежного формирования луча важно, чтобы все микрофоны использовали одну и ту же временную базу. Самый простой способ добиться этого - использовать внешнюю звуковую карту USB с несколькими входными каналами. Это не очень дешево, хотя. Вы смотрели на то, что можно найти на Ebay?
Альтернатива - пожертвовать общей временной базой, используя несколько звуковых карт USB, например, с двумя каналами. Однако вам необходимо откалибровать свою систему сбора данных. Это действительно не так сложно, как кажется:
Для калибровки вы настраиваете свой массив и производите короткий звук (например, трещина / хлопок / и т. Д.) На расстоянии от вашего массива, которое имеет порядок размера вашего массива. Затем вы записываете этот звук и используете Matlab или подобное для вычисления взаимной корреляции между хлопком / трещиной / и т. Д. на разных каналах. Это даст вам список временных смещений, которые необходимо применить к каналам для их выравнивания перед подачей данных в алгоритм формирования луча.
Чтобы изучить адаптивное формирование луча, это, вероятно, тот путь, если вы не можете заключить сделку по многоканальной звуковой карте.
Редактировать 1
Эта редакция предназначена для ответа на вопросы, заданные в комментариях.
Основная идея формирования задержки и суммарного формирования луча состоит в том, чтобы применить задержки к различным каналам сбора данных таким образом, чтобы звуки, исходящие из одной точки в пространстве, выравнивались и «усиливались» при добавлении сигнала из разных каналов. Звуки, которые звучат из других областей пространства, не совпадают и, следовательно, не «усиливаются».
Точка в пространстве, для которой звуки выравниваются с использованием определенного набора задержек, называется фокусом массива микрофонов (или фокусным пятном). В действительности, однако, фокус - это не идеальная точка, а небольшая (иш) (в зависимости от массива) область пространства, для которой звуки хорошо выравниваются. Размер этой области называется размером фокусного пятна.
Геометрия (размер, форма и т. Д.) Зависит от точных деталей массива: количества микрофонов, расстояния между микрофонами, частотного содержания сигналов, представляющих интерес. Смотрите, например, эту статью .
Для получения дополнительной информации ищите тексты о фокусировке "фазированных массивов" или "линейных массивов" в ультразвуке. Формирование луча может использоваться при приеме (для усиления сигналов из определенной точки пространства) или при излучении (для создания «громкого» пятна в комнате). Принципы идентичны: просто замените «микрофон» на «громкоговоритель» в вашем мышлении.
Что касается процедуры калибровки: вы правы. Процедура, которую я изложил, слишком упрощена. Это хорошо работает только в том случае, если вы можете создать калибровочный хлопок на гораздо большем расстоянии, чем интересующая вас область пространства (т.е. для обеспечения ровной волны).
Если это невозможно, вы должны принять во внимание положение хлопка. В этом случае простейшей процедурой является исправление задержек путем взаимной корреляции, как описано, но затем добавление кривизны волнового фронта обратно к сигналу путем применения набора задержек «обратного формирования луча», рассчитанного с положением начала координат хлопок. (То есть, если вы используете переменную глубины + t0 (или + z0) в своем «обычном» алгоритме формирования луча, вам нужно использовать -t0 (или -z0) для алгоритма обратного формирования луча.)
В чем смысл этой калибровки: она устраняет любые ошибки, связанные с тем, что разные звуковые карты начинают запись в несколько разное время. Это обычно препятствует правильному выравниванию сигналов даже с правильными задержками и, таким образом, предотвращает эффект усиления, который вы ищете.