一种基于相邻像素相关性的测量域压缩感知编码算法

文档序号:25650504发布日期:2021-06-29 20:10阅读:222来源:国知局
一种基于相邻像素相关性的测量域压缩感知编码算法

1.本发明属于压缩感知技术领域,具体涉及一种基于相邻像素相关性的测量域压缩感知编码算法。


背景技术:

2.由于压缩感知可以突破传统采样中奈奎斯特定律对采样频率的限制,近年来,压缩感知理论在各类信号采集及处理领域发展迅速。在基于压缩感知的cmos图像传感器中,对变换域近似稀疏的图像信号以较低的采样率进行采样,可以得到低维测量值,即像素的线性组合。这一过程中,采样和压缩同时被实现,n个像素可以被m个测量值代替。压缩感知的优势在于:更少的数据量降低了模数转换器的吞吐率和功耗数字(a/d)转换,同时也有利于硬件实现,这在信号采集资源受限的应用中具有广阔的应用前景。
3.然而,压缩感知采样过程中的数据量缩减不完全等于信号压缩,虽然这些测量可以直接传输,但仍然具有较大的带宽。为了进一步降低传输的负载,获得的测量值需要进一步处理生成压缩后的位流。由于压缩感知传感器的输出是测量值而不是像素,这打破了像素域中的空间相邻相关性,不能直接应用传统的基于像素的编码算法,这对压缩感知的实际应用造成了很大的障碍。因此,一种简单、计算量小的测量域编码算法成为了一个急需解决的问题。


技术实现要素:

4.本发明的目的在于提出一种基于相邻像素相关性的测量域压缩感知编码算法,以有效地提高率失真性能,减少压缩感知码流的比特率,降低传输带宽。
5.本发明提供的测量域压缩感知编码算法,是基于像素的空间相关性的,即利用一种特别设计的测量矩阵(apmm)将每个块的像素域边界信息嵌入到测量域中,再利用处于块边缘的测量值作为参考值,预测相邻分块的测量值,最终利用测量值与预测值之间的残差进行传输,从而有效减少数据带宽,降低硬件开销,提高图像重建质量。
6.本发明提出的基于相邻像素相关性的测量域压缩感知编码算法,具体步骤如下。
7.(1)将图像进行分块,得到若干正方形图像分块,每个分块包含n个像素点;假定压缩感知的目标压缩率为r,计算每个图像分块经过测量矩阵处理后得到的测量值数目:
8.m=round(n
×
r)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)
9.其中,m<<n。
10.(2)构造m
×
n的apmm矩阵(即基于相邻像素的确定性测量矩阵):首先,在图像分块中选择一个像素点为中心,扩展若干个像素点得到一个小分区;然后,围绕中心像素点,在分区中利用二维高斯方程计算得到不同位置像素点的权重,越靠近中心像素点,权重越大,分区内所有像素的总权重为1,而分区外的所有像素权重为0;至此,得到图像分块中n个像素的一种线性组合方式,即apmm矩阵的一行;重复以上步骤m次,在图像分块中均匀选择m个像素点,得到m个不同分区对应的权重分配方案,产生apmm矩阵;由于每一种方案都有大量
像素点位于分区之外,对应权重为0,使得apmm矩阵元素大部分为0,矩阵稀疏便于硬件计算;
11.二维高斯方程:
[0012][0013]
其中,(r,c)表示块内像素点的坐标,(r0,c0)为分区中心像素点的坐标;参数σ
r
和σ
c
分别是行方向和列方向的方差,用于调整分区在水平和垂直方向上扩展的权重,一般设置为相同的值;参数a是振幅,用于保证分区总权重为1。
[0014]
(3)将m
×
n的测量矩阵apmm与原始图像分块对应的n
×
1的像素矩阵相乘,得到当前图像分块的测量值集合y,其中,包含m个测量值。
[0015]
(4)生成参考测量值:测量值集合y分别对应图像分块中的不同分区,将测量值与分区中心像素点的位置一一匹配,由于测量值数量m远少于像素数量n,分块中存在n

m个空缺位置没有匹配测量值;图像分块的最右列、最底行包含分块的边界信息,拷贝相邻的测量值填补其中的空缺位置,得到个参考测量值,用于后续预测编码。
[0016]
(5)从上至下,从左至右,对所有图像分块进行预测;参考intraprediction(帧内预测),设计四种不同的预测模式:垂直模式、水平模式、dc模式、对角模式;其中:
[0017]
垂直模式下,将当前分块顶端分块(up块)的底行作为预测值;
[0018]
水平模式下,将当前分块左侧分块(left块)的最右列作为预测值;
[0019]
dc模式下,计算up块底行测量值和left块最右列测量值的算数平均值作为预测值;
[0020]
对角模式下,综合up块底行、left块最右列和左上角分块的右下参考测量值,从左上到右下45
°
,根据1:2:1的权重计算得到预测值;如果up块和left块不存在,则用像素的平均值代替;
[0021]
在不同预测模式下,用当前分块的测量值y减去候选预测值得到绝对值差(sad),比较不同预测模式下sad的大小,选择sad最小的模式作为当前块的预测模式;记录预测模式,该模式下的候选预测值作为当前分块的预测值y
pred
,计算得到当前块残差y
r
=y

y
pred

[0022]
(6)根据量化步长qstep,用当前块的残差除以2
qstep
得到量化后的残差y
r_q
;在编码端内置解码模块,对y
r_q
进行反量化,再与预测值y
pred
相加,得到重构的测量值存储每个分块的重构值作为参考用于(5)中后续图像分块的预测。
[0023]
(7)扫描整个图像的y
r_q
,统计各数值出现的频率,利用得到的频率值创建哈夫曼树,并将把树的信息保存起来;根据第一遍扫描得到的哈夫曼树,再次扫描y
r_q
进行编码,把分块的预测模式和编码后得到的码字串联存储。
[0024]
在本发明中,观测矩阵apmm为确定性稀疏矩阵,计算复杂度低,易于硬件实现;同时apmm的测量值代表块中的各个分区而不是整个块,空间相关性强,避免了距离较远的像素的干扰,因此重构图像质量高。原始像素值经过压缩感知与预测编码两次压缩后,数据量大幅减少,数据传输带宽下降。
附图说明
[0025]
图1本发明方法流程图示。
[0026]
图2测量值产生方式。
[0027]
图3分区及权重分配图示。
[0028]
图4参考测量值产生方式。
[0029]
图5四种预测模式。
具体实施方式
[0030]
结合示意图,图像以8
×
8分块为例,对本发明做进一步描述。
[0031]
根据压缩感知理论,原始图像数据经过测量矩阵得到测量值,这一过程中,像素域的像素值转变为测量域的测量值,数据量减小。过程如图2所示:测量值是图像分块中像素的线性组合,不同测量矩阵的设计对应不同组合方式。假设目标压缩率为r,每个图像分块包含n
b
个像素值,需要得到m
b
个测量值代替像素值,其中m
b
=round(n
b
×
r),这m
b
个测量值通过m
b
×
n
b
的测量矩阵与的n
b
×
1的像素矩阵相乘产生,这里n
b
=64。
[0032]
已知测量值数目m
b
以及分块的像素数目n
b
,构造基于相邻像素的确定性测量矩阵(apmm),这个m
b
×
n
b
的apmm矩阵的行与测量值一一对应,通过在图像分块中划分不同区域产生测量值。在图像分块中,均匀选择m
b
个像素点,并围绕每个像素点扩展得到共m
b
个分区。然后利用二维高斯分布,通过这些分区得到m
b
种分块像素的线性组合,最终表现为apmm矩阵的m行。针对不同的压缩率,本发明预先设计了相应的分区选择方案,以压缩率r=0.2为例,8
×
8的块需要产生13个测量值。
[0033]
分区及权重分配的实现如图3所示,以第i行的构造为例:中心像素点位于第四行第四列,构造分区,将图像分块中的分区作为边界,分区内,通过二维高斯方程计算像素的权重,越靠近中心像素点权重越大(通过像素点阴影深度表示),分区中像素的总权重为1;分区外,所有像素的权重均为0。由于每次测量仅代表块的一小部分像素,所以apmm的行列中大多数值为0,这意味着apmm是一个稀疏矩阵。与基于整块进行运算的传统测量矩阵相比,apmm具有硬件友好性和低计算复杂度。同时,每个块的测量值是分区内像素群的线性组合(二维高斯函数),具有较高的空间相关性。
[0034]
将构造的apmm与像素矩阵相乘,得到当前图像分块的测量值集合y,其中包含m
b
=13个测量值,这些测量值分别对应图像分块中的不同分区,将测量值与分区中心像素位置一一匹配,如图4左图所示,由于测量值数量m远少于像素数量n,分块中存在空缺位置。像素域中,图像分块边缘的像素值与相邻图像分块的像素值接近,因此在测量域中,分块边缘位置的测量值具有更强的空间相关性,可以用于预测相邻块的信息。参考测量值的扩展如图4右图所示,在图像分块的底行和最右列,直接拷贝y3,y6,y9,y
10
,y
11
,y
12
,y
13
的测量值填充空缺位置。
[0035]
每个块的预测值y
pred
根据先前编码后再重构的块生成。本发明设计的预测编码参考了intraprediction的预测模式,包含4种可选预测模式,如图5所示,分别是垂直模式(vertical),水平模式(horizontal),dc模式和对角模式(diagonal)。在垂直模式中,当前块的行直接拷贝up块最底行的参考测量值;在水平模式中,当前块的列直接拷贝left块最右列的参考测量值;在dc模式中,当前块位于(r,c)坐标的预测值是参考测量值uc和lr的算
数平均值;对角模式同hevc的角度预测,从左上到右下45
°
,根据1:2:1的加权平均值计算得到预测值。计算实际测量值与四种模式下预测值的差,根据最小绝对值差,选取最佳预测模式,得到预测值与测量值的残差y
r

[0036]
利用标准量化处理残差(全部除以量化步长)得到量化值。注意,预测和量化需要逐块进行:在编码器中设计解码部分重构量化后的图像分块,存储在缓存中,在后续预测中使用这些预测后再重构的分块,这样编码器和解码器中预测的参考测量值相同,可以减少误差。最后,统计残差量化值的频率,创建哈夫曼树,并再次扫描量化值逐块进行编码,得到熵编码(huffman编码)后的位流。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1