Вейвлетная очистка от шумов и сжатие сигналов
Подавление высокочастотных составляющих (шума) из спектра сигнала. Удаление шума и сжатие одномерных и двумерных сигналов. Изменение вейвлет-коэффициентов. Пакетные функции очистки и сжатия. Удаление шумов и сжатие с использованием пакетных вейвлетов.
Рубрика | Физика и энергетика |
Вид | статья |
Язык | русский |
Дата добавления | 15.11.2018 |
Размер файла | 336,5 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Тема 7: Вейвлетная очистка от шумов и сжатие сигналов
вейвлетные преобразования сигналов
А.В. Давыдов
Сорняки растут не везде, а только там, где они не нужны.
Михаил Генин.
Писатель, специалист по афоризмам.
Шум в сигнале, что сорняк на поле. Во время не избавишься, все затянет.
Аркадий Шампаров.
Уральский геофизик, любитель афоризмов.
Введение
Типовой метод подавления шумов - удаление высокочастотных составляющих из спектра сигнала. Применительно к вейвлетным разложениям это может быть реализовано непосредственно удалением детализирующих коэффициентов высокочастотных уровней. Но вейвлеты имеют в этом отношении более широкие возможности. Шумовые компоненты, и особенно большие случайные выбросы значений сигналов, можно также рассматривать в виде множеств локальных особенностей сигналов. Задавая некоторый порог для их уровня и срезая по нему детализирующие коэффициенты, можно не только уменьшать уровень шумов, но и устанавливать пороговые ограничения на нескольких уровнях разложения с учетом конкретных характеристик шумов и сигналов для различных типов вейвлетов. Это позволяет создавать адаптивные системы очистки сигналов от шумов в зависимости от их особенностей. Эти технологии и будут рассматриваться в данной теме.
Операция сжатия сигналов с удалением малозначимых значений вейвлет-коэффициентов также выполняется на основе определенных пороговых ограничений их значений, и во многом практически тождественна операциям удаления шумов.
Утилиты, которые рассматриваются в настоящей теме, используются в пакете расширения Wavelet Toolbox системы Matlab.
При очистке сигналов от шумов и сжатии используется быстрое вейвлет-преобразование (БВП). При этом всегда следует учитывать, что если полный размер сигнала составляет М-отсчетов, а максимальный уровень разложения равен N, то для обеспечения нормальной работы БВП отношение M/2N должно быть целым числом, что обеспечивает целое число коэффициентов на последнем уровне разложения. Если это условие не выполняется, рекомендуется дополнять массив отсчетов нулевыми или любыми другими значениями.
Изучение технологий и методик очистки сигналов от шумов и сжатия сигналов удобно проводить на тестовых сигналах, которые генерируются функциями:
X = wnoise(FUN, N) - вектор-сигнал функции FUN (с номерами от 1 до 6) на 2N сетке в интервале [0,1].
[X, XN] = wnoise(FUN, N, SQRT) - то же, со средним квадратическим отклонением std(X) = SQRT. Вектор XN является суммой вектора Х и белого шума Гаусса (0,1).
[X, XN] = wnoise(FUN, N, SQRT, INIT) - то же, с заданием начального числа INIT для генерации псевдослучайных чисел. INIT обеспечивает повторение одной и той же последовательности случайных чисел при моделировании и отладке программ.
Пример моделирования тестовых сигналов (рис. 0.1).
n=10; ind=linspace(0,1,2^n);
for i=1:6
[x, xn]=wnoise(i, n, 2);
subplot(6,2,2*i-1); plot(ind, x);
subplot(6,2,2*i); plot(ind, xn);
end
высокочастотный шум сигнал удаление
Рис. 0.1.
Кроме этих типовых функций можно использовать также стандартные демонстрационные сигналы с шумами из пакета toolbox\wavelet\wavedemo\nois*.mat, которые считываются командой load.
1. Основные функции /3/
Модель зашумленного сигнала обычно принимается аддитивной: s(n) = f(n)+k·e(n) с равномерным шагом по аргументу n, где f(n) - полезная информационная составляющая, e(n) - шумовой сигнал, например, белый шум определенного уровня со средним нулевым значением. Процедура удаления шума выполняется с использованием ортогональных вейвлетов и включает в себя следующие операции:
- Вейвлет-разложение сигнала s(n) до уровня N. Значение уровня N определяется частотным спектром информационной части f(n) сигнала, которую желательно оставлять в рядах аппроксимационных коэффициентов. Тип и порядок вейвлета может существенно влиять на качество очистки сигнала от шума в зависимости как от формы сигналов f(n), так и от корреляционных характеристик шумов.
- Задание типа и пороговых уровней очистки по известным априорным данным о характере шумов или по определенным критериям шумов во входном сигнале. Пороговые уровни очистки могут быть гибкими (в зависимости от номера уровня разложения) или жесткими (глобальными).
- Модификация коэффициентов детализации вейвлет-разложения в соответствии с установленными условиями очистки.
- Восстановление сигнала на основе коэффициентов аппроксимации и модифицированных детализационных коэффициентов.
Автоматическое удаление шумов из одномерных сигналов, записанных в массивах X или непосредственно с использованием структуры вейвлет-разложения [C, L] на уровне N ортогональным вейвлетом 'wname', выполняется функциями:
[XD, CXD, LXD] = wden(X, TPTR, SORH, SCAL, N, 'wname'),
[XD, CXD, LXD] = wden(C, L, TPTR, SORH, SCAL, N, 'wname').
Функции возвращают очищенный от шума сигнал XD и структуру декомпрессии вейвлет-разложения [CXD, LXD], полученную ограничением вейвлет-коэффициентов преобразования сигнала Х, реконструкцией из которой и является сигнал XD. Вычисляется обычно только значение XD.
Параметры функций имеют следующее назначение.
TPTR - строковый параметр установки правила вычисления порогового значения для ограничения коэффициентов разложения:
- 'rigrsure' - адаптивный порог на основе алгоритма Штейна несмещенной оценки;
- 'heursure' - эвристический вариант порога по методу Штейна;
- 'sqtwolog' - универсальный порог ;
- 'minimaxi' - по минимаксной оценке.
SORH - строковый параметр установки гибкого ('s' - soft) или жесткого ('h' - hard) типа порога очистки. При гибком (или мягком) пороге заданное пороговое значение вычитается из значений коэффициентов (по модулю), при жестком (или твердом) пороге значения коэффициентов, меньшие пороговых значений (по модулю), обнуляются. Жесткий порог обычно применяется при компрессии (сжатии) сигналов.
SCAL - строковый параметр порогового перемасштабирования на уровнях:
- 'one' - перемасштабирования нет, применяется для сигналов типа s(n)=f(n)+e(n), где е(n) - белый шум [0,1];
- 'sln' - перемасштабирование выполняется с использованием оценки уровня шума по детализационным коэффициентам первого уровня разложения;
- 'mln' - перемасштабирование производится с использованием оценок шума для каждого уровня по своим детализационным коэффициентам.
Пример автоматического удаления шумов (рис. 1.1).
load noisbloc; x=noisbloc; N=8; wl='sym8';
subplot(411); plot(x); ylabel('Signal'); axis([0,1000,-6,20]);
xh=wden(x, 'heursure', 's', 'one', N, wl);
subplot(412); plot(xh); ylabel('Heursure'); axis([0,1000,-6,20]);
xs=wden(x, 'sqtwolog', 's', 'sln', N, wl);
subplot(413); plot(xs); ylabel('Sqtwolog'); axis([0,1000,-6,20]);
xm=wden(x, 'minimaxi', 's', 'sln', N, wl);
subplot(414); plot(xm); ylabel('Minimaxi'); axis([0,1000,-6,20]);
Рис. 1.1.
В приведенном примере массивы значений CXD и LXD не вычисляются, т.к. в них обычно нет необходимости. В примере ниже и на рис. 1.2 приведены графики коэффициентов С вейвлет-разложения и этих же коэффициентов после удаления из них шумов с разными типами пороговых ограничений.
Примеры структур коэффициентов декомпрессии (рис. 1.2).
load noisbloc; x=noisbloc; N=8; wl='sym8';
[C,L] = wavedec(x, N, wl); subplot(411); plot(C); ylabel('Coef. C'); axis([0,1000,-6,6]);
[xh, ch]=wden(C, L, 'heursure', 's', 'one', N, wl);
subplot(412); plot(ch); ylabel('Coef. ch'); axis([0,1000,-6,6]);
[xs, cs]=wden(C, L, 'sqtwolog', 's', 'sln', N, wl);
subplot(413); plot(cs); ylabel('Coef. cs'); axis([0,1000,-6,6]);
[xm, cm]=wden(C, L, 'minimaxi', 's', 'sln', N, wl);
subplot(414); plot(cm); ylabel('Coef. cm'); axis([0,1000,-6,6]);
Рис. 1.2.
шума и сжатие одномерных и двумерных сигналов X (или сигналов, представленных структурой вейвлет-разложения C,L) на уровне разложения N вейвлетом 'wname' выполняется функциями:
[XC,CXC,LXC,PERF0,PERFL2] = wdencmp(TYPE,X,'wname',N,THR,SORN,KEEPAPP),
[XC,CXC,LXC,PERF0,PERFL2] = wdencmp(TYPE,C,L,'wname',N,THR,SORN,KEEPAPP),
где XC, CXC, CXL - обработанный выходной сигнал и структура его вейвлет-разложения. Дополнительные аргументы PERF0 и PERFL2 - нормы сжатия и восстановления CXC в процентах относительно нормы C исходного сигнала. Во входных данных параметр KEEPAPP = 1 включает сохранение коэффициентов аппроксимации без изменений, SORN = 's' или 'h' - гибкий или жесткий порог, THR - задаваемое значение порога, однозначное глобальное при TYPE = 'gbl' или зависимое от уровня N коэффициентов при TYPE = 'lvd'. В последнем случае THR должен быть N-вектором со значениями порогов для каждого значения N для одномерных сигналов, или матрицей 3 N значений порогов для горизонтальных, диагональных и вертикальных коэффициентов разложения двумерных сигналов. При параметре 'lvd' параметр KEEPAPP не задается.
Рис. 1.3.
Пример удаления шумов (рис. 1.3).
load noisbloc; x=noisbloc; N=3; wl='sym4';
[thr, sh, kp]=ddencmp('den', 'wv', x);
[XC, CXC, LXC, F0, FL2] = wdencmp('gbl', x, wl, N, thr, sh, kp);
subplot(211); plot(x); ylabel('signal'); axis([0,1000,-7,20]);
subplot(212); plot(XC); ylabel('clear signal'); axis([0,1000,-7,20]);
Нормы сжатия и восстановления сигналов:
F0 = 85.2539 FL2 = 96.7110
Для произвольных зашумленных сигналов установка входных параметров может вызвать затруднения, т.к. потребует определенных априорных данных или анализа статистических характеристик высокочастотных составляющих сигналов.
Параметры удаления шумов и сжатия сигналов для матрицы данных Х (одномерной или двумерной) могут определяться функциями, одна из которых и была применена в предыдущем примере:
[THR, SORH, KEEPAPP] = ddencmp(IN, 'wv', X), для простого вейвлета,
[THR, SORH, KEEPAPP, CRIT] = ddencmp(IN, 'wp', X), для пакетного вейвлета.
Функции возвращают рекомендуемые значения параметров. Строковый параметр IN функции может принимать два значения: 'den' - для удаления шумов, или 'cmp' - для компрессии сигнала. Выходной аргумент THR - число, вектор или матрица пороговых значений. CRIT используется только для пакетного вейвлета и включает тип энтропии.
Пример установки параметров для шумового сигнала.
init=3333; randn('seed',init); X=randn(1,10000);
xm=mean(X); xe= max(X); xs=std(X); % xm= -0.0221, xe= 3.0000, xs= 1.0074
[th1,sh1,kp1]=ddencmp('den','wv',X); % th1= 4.3122, sh1= s, kp1= 1
[th2,sh2,kp2]=ddencmp('cmp','wv' ,X); % th2= 0.6777, sh1= h, kp1= 1
[th3,sh3,kp3,cr]=ddencmp('den','wp',X); % th2= 4.8574, sh1= h, kp1= 1, cr= sure
Пороговое значение THR для вектора Х может быть вычислено с учетом правил выбора по параметру TPTR, который уже приводился выше при рассмотрении функции wden. Формат функции:
THR= thselect(X, TPTR).
Пример установки порогового значения для удаления шумов.
init=3333; randn('seed',init); X=randn(1,10000);
thr1=thselect(X, 'rigrsure') % th1 = 3.7822
thr2=thselect(X, 'sqtwolog') % th2 = 4.2919
thr3=thselect(X, 'heursure') % th3 = 4.2919
thr4=thselect(X, 'minimaxi') % th4 = 2.8239
Глобальный порог THR для удаления шумов с управляемой настройкой (с использованием априорных данных) может быть установлен функцией
THR= wbmpen(C, L, SIGMA, ALPHA),
где [C,L] - структура разложения одно- или двумерного сигнала, SIGMA - стандартное отклонение белого шума Гаусса в данной модели, ALPHA - параметр настройки выбора вейвлет-коэффициентов с использованием "штрафного" метода Бирге-Массарта. Значение ALPHA должно быть больше 1 (типовое значение равно 2).
Рис. 1.4.
Пример удаления шумов с настройкой глобального порога (рис. 1.4).
load noismima; x= noismima; wn='sym6'; N=4;
[c,l]=wavedec(x,N,wn); sigma=wnoisest(c,l,1); alpha=1;
thr= wbmpen(c,l,sigma,alpha); keepapp=1;
xd=wdencmp('gbl', c, l, wn, N, thr, 's', keepapp);
subplot(211); plot(x); ylabel('signal'); axis([0,1000,-10,10]);
subplot(212); plot(xd); ylabel('de-noised signal'); axis([0,1000,-10,10]);
Функции для одномерного разложения
[THR, NKEER] = wdcbm(C, L, ALPHA, M),
[THR, NKEER] = wdcbm(C, L, ALPHA), по умолчанию M=L(1),
возвращают порог (по методу Бирге-Массарта) и число сохраненных коэффициентов NKEER. THR - вектор длины j = length(L)-2 и содержит пороги для каждого уровня разложения. Параметры ALPHA и М должны быть вещественными числами больше 1. Типичное значение ALPHA для сжатия сигнала 1.5, для удаления шумов порядка 3. Рекомендуемое значение М от L(1) до удвоенного значения L(1).
Пример удаления шумов с настройкой локальных порогов уровней (рис. 1.5).
load noismima; x= noismima; wn='db8'; N=6;
[c,l]=wavedec(x,N,wn); alpha=1.6; m=l(1);
[thr, nkeer]= wdcbm(c,l,alpha,m);
[xd,cxd,lxd,pf0,pf2]=wdencmp('lvd', c, l, wn, N, thr, 'h');
subplot(211); plot(x); ylabel('signal'); axis([0,1000,-10,10]);
subplot(212); plot(xd); ylabel('de-noise'); axis([0,1000,-10,10]);
Рис. 1.5.
Сравнением рисунков 1.4 и 1.5 можно убедиться в существенной зависимости результатов операции от метода установки порога удаления шумов и типа вейвлета. На этих моделях можно рекомендовать опробовать и другие типы вейвлетов и параметров настройки порогов.
Для определения параметров двумерного разложения из структуры [C,S] используются аналогичные функции:
[THR, NKEER] = wdcbm2(C, S, ALPHA, M),
[THR, NKEER] = wdcbm2(C, S, ALPHA), по умолчанию M=prod(S(1,:)).
Параметр THR в этих функциях - матрица размером 3 size(S,1)-2. Рекомендуемое значение M от prod(S(1,:)) до шести значений prod(S(1,:)).
Пример сжатия сигналов с применением локальных порогов уровней разложения сигнала (рис. 1.6).
load detfingr; nbs=size(map,1); wn='sym4'; N=3;
[c,s]=wavedec2(X,N,wn); alpha=1.5; m=2.7*prod(s(1,:));
thr= wdcbm2(c,s,alpha,m);
[xd,cxd,sxd,pf0,pf2]=wdencmp('lvd', c, s, wn, N, thr, 'h');
colormap(pink(nbs)); subplot(221); image(wcodemat(X,nbs));
subplot(222); image(wcodemat(xd,nbs));
Рис. 1.6.
На рис. 1.6 отпечаток пальца внизу сжат в десятки раз, но разрешающая способность по основным линиям дактилоскопии при этом практически не изменилась. Сжатие изображений в настоящее время широко применяется при хранении огромных объемов технической информации.
При установке порогов может использоваться функция оценки стандартного отклонения детальных коэффициентов структуры вейвлет-разложения [C,L]:
CTDC = wnoisest(C, L, S),
где S - вектор значений уровней оценки, CTDC - вектор оценок CTDC(k) для коэффициентов С(k) на k-уровнях одномерного разложения или для коэффициентов C(k,:) для двумерного разложения.
Пример вычисления оценок стандартного отклонения для модели шумового сигнала.
init=3333; randn('seed',init); X=randn(1,10000);
[C,L]=wavedec(X,4,'db3'); wnt=wnoisest(C,L,1:4)
Результаты вычисления:
wnt = 1.0451 1.0153 0.9934 1.0088
Изменение вейвлет-коэффициентов одномерной структуры разложения [C,L] выполняется функциями
NC = wthcoef('d', C, L, N, P) - работает с детализирующими коэффициентами (параметр 'd') и возвращает коэффициенты с компрессией по уровням, определенным в одноразмерных векторах N и P. N - номера детализирующих уровней для компрессии, P - порог обнуления коэффициентов, указанных вектором N, в процентах от максимальных значений.
NC = wthcoef('d', C, L, N) - то же, с установкой нулевыми всех детальных коэффициентов уровней, указанных вектором N.
NC = wthcoef('t', C, L, N, P, SORH) - то же, с установкой гибкого (SORH='s') или жесткого (SORH='h') порогов.
NC = wthcoef('a', C, L) - возвращает структуру C с обнуленными коэффициентами аппроксимации.
Соответственно, для двумерной структуры разложения применяются функции:
NC = wthcoef2('type', C, S, N, P, SORN). Для type = 'h', 'v' или 'd' возвращаются соответственно горизонтальные, вертикальные или диагональные коэффициенты компрессии.
NC = wthcoef2('t', C, S, N, P, SORN) - то же, для всех коэффициентов ('h', 'v', 'd').
NC = wthcoef2('type', C, S, N) - то же, с установкой нулевых коэффициентов, указанных вектором N.
NC = wthcoef2('a', C, S) - возвращает структуру C с обнуленными коэффициентами аппроксимации.
Рис. 1.
Пример изменения коэффициентов структуры разложения (рис. 1.7).
load noismima; x= noismima; wn='db8'; n=6; [C,L]=wavedec(x,n,wn);
N1=1; NC1 = wthcoef('d', C, L, N1);
N2=[1:5]; P= [100 100 15 5 5]; NC2=wthcoef('t', C, L, N3, P, 's');
X=waverec(NC2, L, wn);
subplot(221); plot(C); ylabel('coef C'); axis([0,1000,-10,10]);
subplot(222); plot(NC1); ylabel('coef NC1'); axis([0,1000,-10,10]);
subplot(223); plot(NC2); ylabel('coef NC2'); axis([0,1000,-10,10]);
subplot(224); plot(X); ylabel('rec X/NC2'); axis([0,1000,-10,10]);
Сравнение сигнала, восстановленного в примере по измененным коэффициентам, с рисунками 1.4 и 1.5, наглядно показывает возможности направленного изменения сигнала. Если при анализе имеются достаточно надежные априорные данные о форме информационной составляющей зашумленного сигнала, то соответствующим подбором порогов изменения коэффициентов на разных уровнях разложения можно добиться очень высокого качества фильтрации сигналов.
Рис. 1.8.
Имеется также возможность прямого порогового изменения массива коэффициентов Х, гибкого или жесткого (SORH), по заданному значению порога (THR), что выполняется функцией
Y = wthresh(X, SORH, THR).
Пример порогового изменения числового ряда (рис. 1.8).
y=linspace(-1,1,100); thr=0.4;
yhard= wthresh(y, 'h', thr);
ysoft= wthresh(y, 's', thr);
subplot(311); plot(y); ylabel('signal');
subplot(312); plot(yhard); ylabel('hard thr');
subplot(313); plot(ysoft); ylabel('soft thr');
Для установки порогов THR очистки от шумов и компрессии сигналов может также использоваться пороговый менеджер параметров настройки
THR = wthrmngr(OPTION, METHOD, VARARGIN).
Параметры функции довольно обширны. С ними можно познакомиться, выполнив команду help wthrmngr.
2. Пакетные функции очистки и сжатия /3/
Удаление шумов и сжатие с использованием пакетных вейвлетов выполняется функцией wpdencmp, аналогичной функциям wden и wdencmp, непосредственно по массиву входного сигнала Х или по дереву его разложения TREE:
[XD,TREED,PERF0,PERFL2] = wpdencmp(X,SORN,N,'wname',CRIT,THR,KEEPAPP),
[XD,TREED,PERF0,PERFL2] = wpdencmp(TREE, SORN,CRIT,THR,KEEPAPP),
Дополнительный выходной аргумент TREED - оптимальное дерево вейвлет-разложения вектора XD. CRIT - критерий энтропии.
Пример удаления шумов с пакетными вейвлетами (рис. 2.1).
load noiswom; nbc=size(map,1); wl='coif4'; N=2;
tree=wpdec2(X, N, wl);
det1=[wpcoef(tree,2) wpcoef(tree,3) wpcoef(tree,4)];
sigma=median(abs(det1(:)))/0.6745;
alpha=1; keepapp=1;
thr=wpbmpen(tree,sigma,alpha);
xd=wpdencmp(tree, 's', 'nobest', thr, keepapp);
colormap(pink(nbc));
subplot(121); image(wcodemat(X,nbc)); title('original');
subplot(122); image(wcodemat(xd,nbc)); title('de-noised');
Рис. 2.1.
Функцией wpbmpen в приведенном примере задается параметр глобального порога для удаления шумов. Аналогично функции wbmpen, он вычисляется по правилу выбора коэффициентов пакетного вейвлета с использованием метода Бирге-Массарта.
THR= wbmpen(T, SIGMA, ALPHA),
где Т - дерево пакетного вейвлета вейвлет-разложения сигнала или изображения.
Пример удаления шумов при пакетном разложении сигнала (рис. 2.2).
[x,xn]=wnoise(2,10,2); N=3; wn='sym8';
tree=wpdec(xn,N,wn); det1=wpcoef(tree,2);
sigma=median(abs(det1))/0.6745; alpha=2; keepapp=1;
thr=wpbmpen(tree,sigma,alpha);
xd=wpdencmp(tree, 's', 'nobest', thr, keepapp);
subplot(311); plot(x); ylabel('signal'); axis([0,1000,-2,8]);
subplot(312); plot(xn); ylabel('signal+noise'); axis([0,1000,-2,8]);
subplot(313); plot(xd); ylabel('de-noised'); axis([0,1000,-2,8]);
Рис. 2.2.
Если кроме очистки от шумов требуется получить и дерево пакетного разложения с новыми коэффициентами (для каких-либо других операций обработки этих коэффициентов), то оно возвращается функцией
NT= wbthcoef(T, KEEPAPP, SORH, THR).
3. Очистка сигналов от шума в пакете GUI /3/
Интерфейс GUI удобен для работы в диалоговом режиме при исследовании возможностей очистки от шумов произвольных сигналов и при определении основных параметров операций для последующего закрепления в виде программ. Интерфейс включается командой wavemenu или из окна редактора, Wavelet Toolbox Main Menu и показан на рис. 3.1.
Рис. 3.1. Входное окно wavemenu.
Меню в разделах Specialized Tools 1-D и 2-D имеет кнопки SWT De-noising, включение которых открывает специальные окна работы очистки сигналов от шумов.
На рис. 3.2 приведен пример включения окна одномерных сигналов. Через меню File Example Analysis Noisy Signals загружен сигнал noischir (график вверху слева). В правой части окна на панели управления устанавливается тип вейвлета (Wavelet) и количество уровней разложения (Level). После нажатия кнопки "Decomposite Signal" выполняется вейвлет-преобразование, и на графики в левой половине графической части окна выводятся функции детализирующих коэффициентов dn всех заказанных уровней и аппроксимирующие коэффициента aN последнего уровня.
Рис. 3.2. Окно SWT De-noising 1-D.
После декомпозиции в окне управления очисткой от шумов (Select thresholding method) появляются предлагаемые системой параметры очистки и значения порогов, которые можно изменять, в том числе по значениям порогов индивидуально для каждого детального уровня. Значения уровней отображаются на графиках детализирующих коэффициентов (см. рис. 3.2).
Графики детализирующих коэффициентов и пороги очистки можно рассматривать и уточнять в увеличенном масштабе в отдельном окне, если включить кнопку "Int. dependent threshold settings". Если средний уровень детализирующих коэффициентов резко различается по координатной оси, то в этом окне можно нажать кнопку "Generate", которая при этом заменяется панелькой "Select Number of Intervals".
Рис. 3.3.
Как можно видеть на рис. 3.3, в этом окне для любого уровня разложения (переключатель "Level") можно разделить весь интервал коэффициентов на несколько подинтервалов (переключатель "Number") и непосредственно мышью на экране установить границы подинтервалов и пороговые уровни режекции шумов. При закрытии окна нужно ответить на вопрос "Update thresholds?" и закрепить значения порогов по установленным интервалам (Yes) или отменить (No). По умолчанию, разделение на подинтервалы появляется при этом и на всех уровнях основного окна (рис. 3.2), после чего изменение уровней может производиться аналогично непосредственно на графиках основного окна.
После установки порогов режекции шумов нажимается кнопка "De-noise", и на правой части графического окна появляются графики детализирующих коэффициентов после селекции, а в верхней части окна - график реконструкции сигнала по этим коэффициентам и график исключенной из входного сигнала части. Сигнал реконструкции можно записать на диск в mat-форме.
При обработке данных, записанных не mat-форматах, следует сначала перевести данные в mat-формат из основного окна Matlab (Файл Импорт данных), или из окна команд. При обработке одномерных сигналов второе предпочтительнее, так как одновременно дает возможность подготовить для GUI векторные массивы соответствующей длины, с учетом условия целого значения M/2N. Ниже приведен пример считывания каротажных геофизических данных из файла формата .las, предварительно переименованного в формат .prn для использования функции dlmread, и перевода столбца 5 считанного массива (диаграмма ГК) в строковый вектор с последующей записью в файл в формате .mat.
fprn='c:\MATLAB6p1\work\MainData\Заг3\Zag3f.prn';
fn=72; A=dlmread(fprn,' ',fn); rows=size(A,1); cols=size(A,2);
xn=1; xk=12320; Zag3f_9_2473=A(xn:xk,1:5);
DEPT=A(xn:xk,1); GK=A(xn:xk,5);
save 'c:\MATLAB6p1\work\MainData\Заг3\gk3f.mat' GK;
Запись файлов в формате .mat может выполняться и непосредственно из окна рабочей области (клик правой кнопкой мыши на выбранном для записи массиве "сохранить выбранное как...).
Литература
1. Дьяконов В., Абраменкова И. MATLAB. Обработка сигналов и изображений. Специальный справочник. - СПб.: Питер, 2002, 608 с.
Размещено на Allbest.ru
...Подобные документы
Принцип действия и классификация машин для сжатия и перемещения газов. Степень сжатия, принципы и критерии ее измерения. Порядок составления индикаторной диаграммы. Объемный коэффициент полезного действия и производительность. Многоступенчатое сжатие.
презентация [318,2 K], добавлен 28.09.2013Понятие шумов как флуктуаций напряжения, возникающих в усилителе одновременно с исследуемыми сигналами. Проблема соотношения мощности сигнала и мощности шума. Анализ основных источников и видов шумов, вызванных флуктуациями электрических зарядов.
контрольная работа [1,8 M], добавлен 12.02.2015Внецентренное растяжение (сжатие). Ядро сечения при сжатии. Определение наибольшего растягивающего и сжимающего напряжения в поперечном сечении короткого стержня, главные моменты инерции. Эюры изгибающих моментов и поперечных сил консольной балки.
курсовая работа [2,1 M], добавлен 13.05.2013Определение расхода смеси, ее средней молекулярной массы и газовой постоянной, плотности и удельного объема при постоянном давлении в интервале температур. Определение характера процесса (сжатие или расширение). Процесс подогрева воздуха в калорифере.
контрольная работа [404,8 K], добавлен 05.03.2015Понятие и содержание квантования по уровню как процесса преобразования сигнала с непрерывным множеством значений в сигнал с дискретными значениями. Определение погрешности квантования и его шума. Особенности квантования сигналов при наличии помех.
презентация [130,4 K], добавлен 19.08.2013Построение эпюры нормальных сил и напряжений. Методика расчета задач на прочность. Подбор поперечного сечения стержня. Определение напряжения в любой точке поперечного сечения при растяжении и сжатии. Определение удлинения стержня по формуле Гука.
методичка [173,8 K], добавлен 05.04.2010Определение напряжений при растяжении–сжатии. Деформации при растяжении-сжатии и закон Гука. Напряженное состояние и закон парности касательных напряжений. Допускаемые напряжения, коэффициент запаса и расчеты на прочность при растяжении-сжатии.
контрольная работа [364,5 K], добавлен 11.10.2013Способы преобразования звука. Применение преобразования Фурье в цифровой обработке звука. Свойства дискретного преобразования Фурье. Медианная фильтрация одномерных сигналов. Применение вейвлет-анализа для определения границ речи в зашумленном сигнале.
курсовая работа [496,8 K], добавлен 18.05.2014Определение параметров цикла со смешанным подводом теплоты в характерных точках. Политропное сжатие, изохорный подвод тепла, изобарный подвод тепла, политропное расширение, изохорный отвод тепла. Количество подведённого и отведённого тепла, КПД.
контрольная работа [83,3 K], добавлен 22.04.2015Рассмотрение особенностей корреляционной функции полезного сигнала. Общая характеристика матрицы Калмана. Анализ структурной схемы оптимального фильтра "цветного" шума. Основные способы нахождения дифференциального уравнения оптимального фильтра.
курсовая работа [392,3 K], добавлен 27.05.2013Нахождение работы в обратимых термодинамических процессах. Теоретический цикл поршневого двигателя внутреннего сгорания с комбинированным подводом теплоты. Работа расширения и сжатия. Уравнение состояния газа. Теплоотдача при свободной конвекции.
контрольная работа [1,8 M], добавлен 22.10.2011Характеристика спектрального метода анализа сигналов, при помощи которого можно оценить спектральный состав сигнала, а также количественно выяснить его энергетические показатели. Корреляционный анализ сигнала для оценки прохождения сигнала через эфир.
курсовая работа [169,7 K], добавлен 17.07.2010Расчет пружины сжатия. Определение погрешностей пружины, суммарной погрешности, номинальных размеров конструкции, предельных отклонений. Решение обратной задачи расчета размерной цепи. Схема сборочного состава. Создание плана для оформления чертежей.
курсовая работа [436,4 K], добавлен 14.12.2014Знакомство с термодинамическими процессами и циклами в тепловых двигателях и установках, способы определения изменения внутренней энергии. Рассмотрение особенностей адиабатного процесса сжатия. Этапы расчета производительности эквивалентного компрессора.
практическая работа [559,6 K], добавлен 24.04.2013Определение нормальных напряжений в произвольной точке поперечного сечения балки при косом и пространственном изгибе. Деформация внецентренного сжатия и растяжения. Расчет массивных стержней, для которых можно не учитывать искривление оси стержня.
презентация [156,2 K], добавлен 13.11.2013Анализ зависимости веса тела от ускорения опоры, на которой оно стоит, изменения взаимного положения частиц тела, связанного с их перемещением друг относительно друга. Исследование основных видов деформации: кручения, сдвига, изгиба, растяжения и сжатия.
презентация [2,9 M], добавлен 04.12.2011Измерение и анализ данных об уровне громкости источников звука вокруг учащихся нашей школы и предложение способов защиты от шума. Физическая характеристика звука. Влияние звуков и шумов на человека. Измерение уровня громкости своего шепота, разговора.
лабораторная работа [1,1 M], добавлен 22.02.2016Расчет параметров состояния в контрольных точках цикла Брайтона без регенерации тепла. Изучение конца адиабатного процесса сжатия. Нахождение коэффициента теплоемкости при постоянном объеме и при постоянном давлении. Вычисление теплообменного аппарата.
курсовая работа [902,9 K], добавлен 01.04.2019Формула для сигнала при гармонической модуляции. Амплитуда и частота несущего колебания. Компьютерное моделирование ЧМ-сигналов с помощью программного пакета Electronics Workbench. Спектр частотно-модулированного сигнала. Частота модулирующего колебания.
лабораторная работа [565,1 K], добавлен 04.06.2015Основные понятия и определения систем передачи дискретных сообщений. Сигнальные созвездия при АФМ и квадратурная АМ. Спектральные характеристики сигналов с АФМ. Модулятор и демодулятор сигналов, помехоустойчивость когерентного приема сигналов с АФМ.
дипломная работа [1,9 M], добавлен 09.07.2013