MATLAB 函數之resample

resample
Change sampling rate by rational factorexpand all in pageSyntax

用有理因子改變採樣率
y = resample(x,p,q)
y = resample(x,p,q,n)
y = resample(x,p,q,n,beta)
y = resample(x,p,q,b)
[y,b] = resample(x,p,q)
Description

描述
y = resample(x,p,q) resamples the sequence in vector x at p/q times the original sampling rate, using a polyphase filter implementation. p and q must be positive integers. The length of y is equal to ceil(length(x)*p/q). If x is a matrix, resample works down the columns of x.

y = resample(x,p,q)   使用多相濾波器實現對矢量X中的序列在原始採樣率的P/Q倍上重新採樣。p和q必須是正數。y的長度等於ceil(length(x)*p/q).如果x是矩陣,重採樣作用於x的列
resample applies an anti-aliasing (lowpass) FIR filter to x during the resampling process. It designs the filter using firls with a Kaiser window.

重採樣將FIR濾波器應用於重採樣過程中的X。使用Kaiser窗口設計濾波器。
y = resample(x,p,q,n) uses n terms on either side of the current sample, x(k), to perform the resampling. The length of the FIR filter resample uses is proportional to n; larger values of n provide better accuracy at the expense of more computation time. The default for n is 10. If you let n = 0, resample performs a nearest-neighbor interpolation
y(k) = x(round((k-1)*q/p)+1)
where y(k) = 0 if the index to x is greater than length(x).
y = resample(x,p,q,n,beta) uses beta as the design parameter for the Kaiser window that resample employs in designing the lowpass filter. The default for beta is 5.
y = resample(x,p,q,b) filters x using the vector of filter coefficients b.
[y,b] = resample(x,p,q) returns the vector b, which contains the coefficients of the filter applied to x during the resampling process.

返回向量B,其中包含在重採樣過程中應用到x的濾波器的係數。

實例:

Y = resample(X,100000,8000);

內插實現增採樣,100000/8000 = 25,提高25倍 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章