В этом примере показано, как удалить высокочастотные выбросы из сигнала потоковой передачи использование dsp.MedianFilter
Системный объект?.
Используйте dsp.MatFileReader
Системный объект, чтобы считать файл MAT гироскопа. Файл MAT гироскопа содержит 3 столбца данных с каждым столбцом, содержащим 7 140 выборок. Эти три столбца представляют Ось X, Ось Y и данные оси Z из датчика движения гироскопа. Выберите формат кадра 714 выборок так, чтобы каждый столбец данных содержал 10 систем координат. dsp.MedianFilter
Системный объект использует длину окна 10. Создайте timescope
объект просмотреть отфильтрованный вывод.
reader = dsp.MatFileReader('SamplesPerFrame',714,... 'Filename','LSM9DS1gyroData73.mat',... 'VariableName','data'); medFilt = dsp.MedianFilter(10); scope = timescope('NumInputPorts',1,... 'SampleRate',119,... 'YLimits',[-300 300],... 'ChannelNames',{'Input','Filtered Output'},... 'TimeSpanSource','Property',... 'TimeSpan',60,'ShowLegend',true);
Отфильтруйте данные о гироскопе с помощью dsp.MedianFilter
Системный объект. Просмотрите отфильтрованные данные оси Z в осциллографе времени.
for i = 1:10 gyroData = reader(); filteredData = medFilt(gyroData); scope([gyroData(:,3),filteredData(:,3)]); end
Исходные данные содержат несколько выбросов. Увеличьте масштаб данных, чтобы подтвердить, что средний фильтр удаляет все выбросы.