嵌入式算法11---矩阵转置与压缩

本文介绍了如何利用矩阵转置算法优化嵌入式设备上的数据压缩。针对环境监测数据,通过将数据组织成二维矩阵并转置,使得数据中的连续性增强,更适合行程编码进行压缩。实验展示了转置前后数据的变化,并提出按一定数据组划分进行转置压缩以提高压缩比。这种方法对于固定长度且内部变化趋于稳定的数据包压缩非常有效。

在整个物联网系统中,嵌入式设备作为数据采集、过滤、缓存、传输的节点,前面系列文章分别介绍了嵌入式设备相关的各种数据过滤、校验和压缩存储算法。缓存和传输阶段,考虑到嵌入式设备的存储空间和传输带宽限制,数据包的压缩还可进一步优化。

以嵌入式终端环境数据采集为例,以10秒间隔采样温度、湿度、气压、风速、四项环境数据,正常情况下,数据在短时间内都是小幅波动或者维持不变。假如采集结果(瞎编的,表意为主)如下表:

时间戳 温度 湿度 气压 风速
10 27 75 98 3
20 27 75 98 3
30 27 75 99 3
40 27 76 99 3
50 28 76 99 2
60 29 76 99 2

数据按字节流存储到文件或者传输出去,占30字节。

unsigned char source_data[30]={
   
   10,27,75,98,3,20,27,75,98,3,30,27,75,99,3,40,27,76,99,3,50,28,76,99,2,60,29,76,99,2}

前文行程编码要求数据中尽可能出现连续的内容,上表数据并不适合行程编码来压缩。

线性代数的基础是矩阵,此时此刻,矩阵转置的算法就可发挥作用了。将数据原始数据以二维数据的方式保存。

unsigned char source_matrix[5][6]={
   
   
10,10,30,98,3,
20,27,75,98,3,
30,27,75,99,3,
40,27
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值