У меня есть большой вектор записанных данных, которые мне нужно переделать. Проблема я сталкиваюсь в том, что при использовании resample
, я получаю следующее сообщение об ошибке:Факторы resample слишком велики
??? Error using ==> upfirdn at 82 The product of the downsample factor Q and the upsample factor P must be less than 2^31.
Теперь я понимаю, почему это происходит - мои две частоты дискретизации очень близко друг к другу, так что целые факторы должны быть достаточно большим (что-то вроде 73999/74000). К сожалению, это означает, что соответствующий фильтр не может быть создан MATLAB. Я также попробовал передискретизацию только с целью повторной дискретизации, но для этого недостаточно памяти, чтобы сделать это даже с 1 миллионом образцов данных (у меня 93M).
Какие еще методы я могу использовать для правильной перевыборки этих данных?
Можно ли применить 'resample' дважды? – Rashid
@Kamtal Как вы бы применили его дважды? Используйте меньшие коэффициенты, которые, когда они выполняются последовательно, эквивалентны тому, что я желаю? Я пробовал простейшую версию этого, начиная с восходящей выборки, затем с понижающей дискретизации, но для этого у меня недостаточно памяти. –
Напишите свой собственный? [Этот документ] (http://www.ucalgary.ca/engo_webdocs/SpecialPublications/KIS%2001/PDF/1002.PDF) дает хорошее описание того, как реализовать надежный повторитель. – AnonSubmitter85