Детектор акустических данных. Акустический детектор - программа ACD_AUTO, определяющая моменты прихода плоских волн на группу микробарографов. Работает на том же компьютере, который принимает данные. Детектор постоянно проверяет, не появился ли в компьютере новый CSS-файл, и если да - обрабатывает его и заносит в список уже обработанных файлов. Если обнаружена волна, выделяет соответствующий ей фрагмент записи в отдельный CSS-файл для ручного контроля и заносит сопутствующую информацию в базу данных (азимут, угол подхода, отношение сигнал-шум, уровень когерентности). Ниже рассмотрим принцип работы детектора. 1. Алгоритм. Пусть Fsi - i-ый отсчет на записи, сделанной на s-том датчике инфразвуковой группы, s=1Nдатчиков, i=1Nотсчетов, шаг по времени между отсчетами h. Пусть последовательность отсчетов Fs* получена из исходных замеров с помощью полосовой фильтрации. Рассмотрим плоскую волну, приходящую на датчики с азимута и с углом к дневной поверхности (далее будем называть этот угол углом тангажа). Задержки времен приходов волны на датчики ts=(Xscos + Yssin) cos / vзвука. Задержки, выраженные в количестве отсчетов is=Round(ts/h). Определим два типа «пучков» для каждой пары углов (, ) : а) средний «пучок» : Nдатчиков Ai = Fs i-is / Nдатчиков s=1 б) максимальный «пучок» : Mi = Max Fs i-is s В идеализированном случае, когда (, ) – истинные параметры падающей плоской волны, датчики одинаковы, нет шума и затухания сигнала из-за рельефа, Ai=Mi, в противном случае Ai < Mi. В принципе можно использовать отношение Ai/Mi для детектирования, но могут быть неопределенности когда M мало. Чтобы избежать этого, мы используем усреднение со скользящим окном для Ai и Bi . Nусредн Nусредн Aaj = Ai+(j-1)*Nусредн; Maj = Mi+(j-1)*Nусредн i=1 ; i=1 Rj = Aaj/Maj, Отношение Rj имеет смысл когерентности между записями на разных датчиках. Можно использовать Rj (его высокие значения, скажем, больше 0.8) для детектирования. Однако проверка на Апатитских инфразвуковых данных показала, что записи на разных датчиках слегка отличаются (до 1.5 раз) и что эти различия не постоянны, а зависят от направления подхода волны (мы предполагаем, из-за того, что датчики расположены вокруг вершины холма). Эти факторы уменьшают отношение Rj. Если мы возьмем меньшее значение для порога детектирования, тем самым существенно увеличим количество ложных срабатываний. Чтобы избежать этого, мы используем следующий подход : расчитываем так называемые «нормализованные» записи Nnorm Fsi = Fsi / Fs i+j (Nnorm>>Nусредн) j=-Nnorm то есть записи, нормированные на собственные средние в скользящем окне, а затем вычисляем отношение для таких записей используем его для детектирования. Fsi , как описано выше (обозначим его Rj) и Когда этот подход был проверен, мы обнаружили, что, хотя трудности с разницей амплитуд были устранены, появился новый источник ложных срабатываний. Они часто случаются, когда участки записей с очень разной амплитудой (очевидный шум) оказываются сильно когерентными после такой нормализации. В результате мы решили использовать оба отношения – полученное по исходным записям Rj и по нормализованным записям Rj. Мы выбираем меньший порог срабатывания для исходного отношения (скажем, 0.5-0.6), чтобы быть уверенными, что амплитуды записей на разных датчиках достаточно близки друг к другу. «нормализованного» отношения (0.75-0.8), чтобы быть И бОльший порог для уверенными в высокой когерентности участков записей. Третьим параметром, используемым для детектирования, является отношение сигналшум. Оно рассчитывается для среднего «пучка» Aaj. Этот «пучок» представляет собой набор положительных чисел, большая часть которых является преобразованной записью шума, и только маленькая часть отсчетов принадлежит сигналу (Рис.1) Рис.1. Пример трассы Aaj с рассчитанным шумом (прямая линия) Для расчета шума разработан новый алгоритм, основанный на анализе гистограмм трассы (как указано выше, отсчеты трассы – положительные числа, которые далее для краткости будем обозначать Ai, i=1,N). Вначале вычисляем максимальное значение трассы, которое будем считать еще шумом – Aшум.макс, затем усредняем значения, меньшие Aшум.макс и принимаем результат за оценку шума. Для оценки Aшум.макс последовательно строим гистограммы из трех столбцов от минимального значения трассы до предполагаемого Aшум макс (которое вначале берем равным Amax), и в зависимости от количества отсчетов, попавших в столбцы гистограммы (N1,N2,N3) либо уменьшаем предполагаемое Aшум определенным и переходим к усреднению. макс, либо считаем его окончательно Как показала практика, шум, оцененный с помощью данного алгоритма, оказывается очень близок к шуму, оцененному человеком-интерпретатором интуитивно. Окончательно, акустическое событие считается обнаруженным, если для некой пары (,) (детектор производит перебор по углу от 0 до 359 с шагом 1 и по углу от 0 до 80 с шагом 10) оказывается, что (далее SNR-signal-to-noise ratio-отношение сигнал/шум): Rj>Rпороговое Rj>Rпороговое SNRj=Aaj/(Noise(Aa))>SNRпороговое Вычисляется рейтинговая функция параметров Rj, Rj и SNRj : Ratingj = (Rj + Rj + (1-exp(-SNRj/SNRтипичное))/3 и выбираются такие (,), на которых Ratingj достигает максимума. Момент времени (номер отсчета j) на котором это произошло, запоминается. Предполагается, что в результирующей базе данных будет сохранен фрагмент исходной записи от tj-dt до tj+dt (в настоящей версии dt=15 сек). Если детектор срабатывает для других знечениях tj, принадлежащих этому интервалу, интервал модифицируется. В настоящее время детектор непрерывно обрабатывает поступающие данные, собирается база данных акустических событий. Рис.2. Пример сильного акустического события, обнаруженного и детектором. сохраненного