• 压缩算法--TP(1978)


    TP压缩算法又称为转折点算法,是Mueller在1978年提出的一种压缩算法,你别嫌这个算法老,还是很好用的。

    1、算法原理

    1)保留第一个点

    2)从第一个点开始依此选择三个点,y1,y2,y3,求得三个点的幅度差,(y2-y1),(y3-y2)

    3) 如果(y2-y1)*(y3-y2)<0,说明中间值y2是转折点,则保留y2,否则说明三个点处于一致上升或者下降趋势,则保留最后一个值y3

    2、算法优缺点

    优点:保真度高,速度快,算法易于实现

    缺点:压缩比只能为2,且不能在此基础上再次压缩,否则会造成信号失真。

    3、算法实现效果展示

    将压缩前后的信号按照采样点画出,从图中可以看出,原本的3600个sample已经压缩到1800个sample,压缩比为2。

    将压缩前后的信号按照时间轴画在同一个坐标轴上面,下图可以看出,重合效果很好,保真度很高。

     

     

    function sigCompressed = TPCompressionAlg(sig)
    %%==========================================================
    % TP 压缩算法
    % sig:原始信号;sigCompressed:压缩后的信号
    % author:xhs
    % time:20190402
    %%=========================================================
    len = length(sig);
    sigCompressed = zeros(1,floor(len/2));
    j = 1;
    sigCompressed(1) = sig(j);
    for i = 3:2:len
        if((sig(i)-sig(i-1))*(sig(i-1)-sig(1))<0)
            temp = sig(i-1);
        else
            temp = sig(i);
        end
        j = j+1;
        sigCompressed(j) = temp;
    end
    end

    温馨提示:如果你不需要很高的压缩比,且希望压缩后的信号保真度比较高,那么推荐该算法

  • 相关阅读:
    Linux下查看文件内容的命令
    windows下vmware配置nat网络
    xshell连接linux
    django 常见过滤器
    Django模板语言中的自定义方法filter过滤器实现web网页的瀑布流
    关于python开发CRM系统
    关于django form验证是否用户名已存在
    Django model 中的 class Meta 详解
    ERROR 3009 (HY000): Column count of mysql.user is wrong. Expected 45, found 43. Created with MySQL 5
    并发编程之线程池
  • 原文地址:https://www.cnblogs.com/xhslovecx/p/10647403.html
Copyright © 2020-2023  润新知