帧间SAMP算法在视频编码的应用
2019-03-22赵雁丁邦旭铜陵学院数学与计算机学院
赵雁 丁邦旭 铜陵学院数学与计算机学院
视频图像数据变换的时候考虑到用来表示视频的连续图像由一连串时间序列表示,在表述视频数据信号的切实性时需要采样的数据繁多,容易造成量化过程中大部分稀疏的数据被遗弃,资源浪费变成难以避免的一种现象。信号的采样率必须大于等于2 倍的信号带宽,信号的准确重构被实现,传统的奈奎斯特采样定理[1]就是这样,现有的视频压缩编码标准是在此基础上的。近年,在传统的奈奎斯特采样定理中压缩感知CS(Compressive Sensing)[2]打破了信号采样数目的要求,得到在信号处理理论方面的一个重大突破。
一、SAMP的算法流程
SAMP算法无需知道稀疏度K,在迭代循环中,根据新残差与旧残差的比较来确定选择原子的个数。算法的具体流程为:依据传感矩阵与观 测向量参数输入,经过迭代循环计算,得出稀疏参数估计与残差。
输入:
(1) M×N 的传感矩阵A=ΦΨ
(2) N×1 维观测向量y
(3)步长S
输出:
(2) N×1 维残差rM=y-AM
以下流程中:aj表示矩阵A 的第j 列,A={aj}(for all J Ck)表示按索引集合Ck选出的矩阵A 的列集合(设列数为Lt),θt为Lt×1 的列向量,符号∪表示运算中的合并集合,<·,·>表示求向量的内积,abs[·]表示求模值(也是绝对值)。
ri用以表示残差,Ф 表示为空集,t 用来表示迭代的次数,Λt表示t 次选代的索引(是列序号)集合,这个集合是元素个数L,L 等于S 的整数倍步长。
(1)初始化 r0= y,Λ0=Ф,L=S,t=1;
(2) A 的列序号j 构成集合Sk(列序号集合)中的值对应为:计算的u=abs[AГrt-1](即计算
(3)令 Ck=Λt-1Sk,A={aj}(for all J Ck);
(4)求 y=Atθt最小二乘解:=arg min‖y-Atθt‖=(AГtAt)-1AГty;
(5)最大对应At中的L 列记为AtL,在t中选出是绝对值的L 项,列序号记为ΛtL,记集合 F=AtL;
(6)更新残差rtnew=y-AtL(ALtLAt)-1AГtLy;
(7)若在残差rtnew=0 的情况下则进入第(8)步;
若 ‖rtnew‖2≥‖rt-1‖2, 更 新 L=L+S, 返 回第(2)步进行迭代。前面两个条件依次都不满足,则 Λt=F,rt=rtnew,t=t+1,如果 t≤M 停止迭代进入第(8)步,否则返回第(2)步继续迭代;
(8) 在ΛtM处重构有非零项,其值分别为最后一次选代所得。
注2:参考代码[2]中用的是 while 循环并没有限定循环次数,这里在第(7)步中将迭代次数上限简单设为测量数M。
二、实验结果
按照我们的实验SAMP重构算法流程,信号为随机生成,所以每次结果均不一样
2) Command windows
Elapsed time is 0.079620 seconds.
恢复残差:
ans=1.3008e-014
程序在联想笔记本(4GB 内存,i5-6200)上运行共耗时295.723 秒,将所有数据均通过“save SAMPM to Percentage1000”存储,之后可以再想实验并分析,只需“load SAMPM to Percentage1000”即可。
我们的程序中将所有数据均通过“save SAMPM to Percentage1000”存储了下来,以后只需“load SAMPM to Percentage1000”可以再实验,这个程序在联想笔记本(4GB 内存,i5-6200)上运行的,共耗时373.899 秒。
从上述的实验结果可得出:稀疏度自适应匹配追踪(SAMP)算法的压缩率高,具有更好的压缩效果。
三、结语
本文中,设计了自适应压缩感知算法,能根据帧间信号的稀疏性,提出自适应感知模型,自适应的选择重构域及稀疏域,结果通过仿真分析表明SAMP算法的效应。在未来的学习中,将如何由帧间信号的稀疏性来自适应调整作为研究重点,同时研究如何提高节省储存空间及提高帧间编码效果的方法。