zoukankan      html  css  js  c++  java
  • 任意采样率变化的简单处理

    由于没有什么时间编写解释部分,详细查看源代码:

    function [Out] = SampChang(In,OldSamp,NewSamp)
        len = length(In);
        oldInterval = 1/OldSamp;
        newInterval = 1/NewSamp;
        data = zeros(1,len*NewSamp/OldSamp);
        if(OldSamp > NewSamp)
            Fp=NewSamp/2; % 通带
            Fs=OldSamp; % 采样频率
            Rs=60; % 阻带衰减为60dB  
            Wn=Fp*2/Fs;
            % 切比雪夫II型滤波器  
            [C2b C2a]=cheby2(10,Rs,Wn,'low'); % 调用MATLAB cheby2函数快速设计低通滤波器   
            tmp=filter(C2b,C2a,In); % 进行低通滤波
    
            temp = 0;
            for(i=0:1:length(data)-1)
                for(k=temp:1:len-2)
                    if(k*oldInterval <= i*newInterval && (k+1)*oldInterval >= i*newInterval)
                        k2 = (tmp(k+2) - tmp(k+1))/oldInterval;
                        d2 = tmp(k+2) - k2*(k+1)*oldInterval;
                        data(i+1) =  k2*i*newInterval + d2;
                        temp = k;
                    end
                end
            end
        elseif(OldSamp < NewSamp)
            temp = 0;
            for(i=0:1:length(data)-1)
                for(k=temp:1:len-2)
                    if(k*oldInterval <= i*newInterval && (k+1)*oldInterval >= i*newInterval)
                        k2 = (In(k+2) - In(k+1))/oldInterval;
                        d2 = In(k+2) - k2*(k+1)*oldInterval;
                        data(i+1) =  k2*i*newInterval + d2;
                        temp = k;
                    end
                end
            end
            Fp=OldSamp/2; % 通带
            Fs=NewSamp; % 采样频率
            Rs=60; % 阻带衰减为60dB  
            Wn=Fp*2/Fs;
            % 切比雪夫II型滤波器  
            [C2b C2a]=cheby2(10,Rs,Wn,'low'); % 调用MATLAB cheby2函数快速设计低通滤波器   
            data=filter(C2b,C2a,data); % 进行低通滤波
        end
        Out = data;
    end
    

      

  • 相关阅读:
    [MAC]如何抹掉 Mac 磁盘
    [MAC]出售、赠送或折抵 Mac 前该怎么做
    转载 软件项目计划如何编写举例
    GIT
    AWR实战分析之----direct path read temp
    ASM 磁盘组的的scrip
    巨杉db
    High waits on control file sequential read
    如何减小SQL 的物理读,。
    block size大小
  • 原文地址:https://www.cnblogs.com/karl-wu/p/4765534.html
Copyright © 2011-2022 走看看