基于WBCT变换的水下图像高效压缩方法*
2017-03-11李庆忠
张 洋, 李庆忠
(中国海洋大学工程学院,山东省海洋工程重点实验室,山东 青岛 266100)
基于WBCT变换的水下图像高效压缩方法*
张 洋, 李庆忠**
(中国海洋大学工程学院,山东省海洋工程重点实验室,山东 青岛 266100)
针对压缩效率和重建质量无法兼顾的问题,提出一种基于WBCT变换 (Wavelet-based contourlet transform)的水下图像高效压缩算法。首先根据水下图像和人类视觉系统的特点,在WBCT变换域提出了一种改进的人眼最小可觉察失真(JND)模型,以自适应去除水下图像中的视觉冗余。然后,对重要的低频系数采用定长量化和无损压缩;而对高频系数,采用基于WBCT树结构的变精度定长量化和位置差降编码策略进行编码。实验结果表明,提出的算法不仅具有较高的压缩效率,而且能获得视觉上较为满意的解码效果,适用于水下图像在甚低比特率下的压缩传输。
水下图像; 图像压缩; WBCT变换; JND模型
受水声信道的传输带宽限制,水下自主机器人(AUVs)采集的图像信息必需经过有效压缩才能实时传输到水面工作站。水下图像是操作人员遥控AUVs完成深海探测和作业任务的重要依据之一[1],故水下图像的压缩方法不仅要满足水声信道的带宽要求,还应满足人眼的视觉特性。
与陆上图像相比,水下图像具有对比度低、细节信息少和颜色不丰富等特点。针对这些特点,许多学者提出了水下图像特有的压缩算法。Iglesias等[2]提出一种基于压缩感知的水下图像传输系统,因压缩感知的随机采样特性,其具有较好的抗误码能力,但压缩比仅能达到8∶1。为了获得高压缩比,Murphy等[3]提出一种基于矢量量化的海底图像压缩算法,将图像分块并与样本库匹配,仅需编码匹配索引即可实现高效压缩,但解码图像块效应严重,影响人眼观测效果。当前较多的水下图像压缩研究采用的是基于小波变换的方法[4-6],利用小波树中系数的父子关系,实现高效编码。然而,小波变换有限的三个分解方向决定了其无法充分描述图像边缘和轮廓信息,不符合人眼的多方向感知特性。特别在AUVs观测海洋生物或水下人造物体等具有明显轮廓特征的目标时,操作人员无法获得低比特率下视觉质量较好的解码图像。因此,目前的水下图像压缩方法还无法同时兼顾压缩效率和重建质量。
针对以上问题,本文结合水下图像和人类视觉系统的特点,提出一种基于WBCT变换 (Wavelet-based contourlet transform)的水下图像高效压缩算法。该算法在WBCT域中,提出一种改进的人眼最小可觉察失真(JND)模型以有效去除水下图像中的视觉冗余,采用基于WBCT树结构的变精度定长量化和位置差降编码算法实现高效压缩,并通过实验验证了提出算法的性能。
1 基于WBCT变换的水下图像高效压缩算法
由于小波基函数仅具有正方形的支撑区间,导致小波变换无法以最优形式逼近奇异曲线,不能充分利用图像本身特有的几何特征。为此,本文采用多尺度几何分析方法中的WBCT变换,以克服小波变换方向性不足的缺点,既能有效捕捉图像中的几何结构,还可以提供接近最优的稀疏表达形式。本文提出的水下图像高效压缩编码算法流程如图1所示。
首先根据水下图像和人类视觉系统的特点,对图像亮度分量Y和颜色分量U、V分别进行冗余去除,提出一种改进的JND模型以合理地消除亮度分量Y的视觉冗余。对低频系数采用定长量化和无损压缩;在高频子带间,构造WBCT树结构以扫描重要高频系数,其中对重要系数的数值采用变精度定长量化编码策略,而对重要系数的位置采用位置差降编码算法以实现高效压缩。下面具体介绍各模块的实现过程。
图1 水下图像编码算法框图
1.1 WBCT变换
轮廓波(Contourlet)变换是一种能够有效捕捉图像轮廓信息的多尺度几何分析方法,首先采用拉普拉斯金字塔滤波器对图像进行多尺度分解,然后利用方向滤波器对各个尺度的高频信息进行多方向分解,因此Contourlet变换能够充分刻画图像边缘特征。然而由于拉普拉斯金字塔自身的冗余性,导致Contourlet变换具有4/3冗余度,故采用Contourlet变换进行图像压缩编码的效率较低。WBCT变换是一种改进的Contourlet变换,它采用小波分解替代Contourlet变换中的拉普拉斯金斯塔分解,再对小波高频子带进行多方向分解,使得WBCT变换不仅具备了小波变换的非冗余性,而且继承了Contourlet变换的多方向性和各向异性[7]。有研究表明,人类的视皮层具有局部、方向和带通特性,可以用最少的视觉神经元捕捉自然场景中的关键信息,也就是以最稀疏的形式表达自然图像,而WBCT变换的特点正好与人类视觉系统特性相吻合,既能有效描述图像几何结构,也可以显著提升压缩效率。对于含有重要观测目标的水下图像,采用WBCT变换可以获得更好的解码重建效果。所以,本文将WBCT变换用于水下图像压缩编码。
图2 Barbara图像的4级WBCT变换结果
WBCT变换由小波分解和方向滤波器组两部分实现。在小波分解部分,本文采用Daub5/3小波提升变换,以加快计算速度。在方向滤波部分,考虑到一般水下图像含有的细节信息较少,同时兼顾计算速度,不需要对小波高频子带进行较多的方向分解,因此本文采用四级WBCT变换,对前三级小波高频子带均进行四方向分解,即每级可得到12个不同的方向子带。图2是Barbara图像的四级WBCT变换结果,由图可以看出,各高频子带从不同方向描述了图像的边缘和纹理。采用WBCT变换的优点是:首先,WBCT变换继承了小波变换的非冗余性和小波树结构,有利于实现高效编码;其次,WBCT变换具有多方向分解,能充分刻画图像的细节信息,获得较好的图像解码质量,以符合人眼视觉特性。
1.2 基于改进的JND模型的预处理
与陆上图像相比,水下图像具有对比度低、细节信息少和颜色不丰富的特点,所以水下图像含有大量视觉冗余,必须对其进行冗余去除。由于人眼对颜色变化不敏感,而水下图像多呈蓝绿色,本文首先将水下彩色图像由RGB空间转换到YUV空间,对颜色通道U和V进行四级WBCT变换,仅保留U和V的低频部分以供编码。而人眼对亮度变化较敏感,因此不能像去除颜色冗余一样简单舍弃亮度通道Y的高频部分,需要根据人眼特性对亮度分量Y进行合理的冗余去除。
JND模型是一种基于人眼视觉特性建立的最小可觉察失真阈值检测模型,能够很好地表征人眼视觉敏感度[8]。它可以根据图像内容自适应地建立一个阈值,以屏蔽掉人眼不敏感的变换系数,保留视觉上的重要系数,从而达到去除视觉冗余的目的。因此,本文针对水下图像特点,提出一种改进的JND模型,以消除水下图像亮度分量Y中的视觉冗余。JND模型由对比度敏感函数、亮度自适应调节因子和对比掩盖因子三部分组成,公式如下:
TJND(λ,θ,i,j)=fs(λ,θ)al(λ,θ,i,j)ac(λ,θ,i,j),
(1)
其中:λ为WBCT变换级数;θ为高频子带方向;TJND(λ,θ,i,j)为(λ,θ)子带中(i,j)位置系数的JND阈值;fs(λ,θ)是对比度敏感函数;al(λ,θ,i,j)是亮度自适应调节因子;ac(λ,θ,i,j)是对比掩盖因子。
对比度敏感函数fs反映了人眼对不同空间频率的敏感程度。人眼的对比度敏感性随着空间频率的增加而减小,即人眼对低频敏感,对高频不敏感。另外,人眼对水平和垂直方向敏感,对倾斜方向不敏感。因此,人眼对不同的图像变换子带具有不同的敏感程度。对比度敏感函数fs(λ,θ)的公式如下:
(2)
其中:Aλ,θ为(λ,θ)子带的基函数幅值[9];γ为显示器可视分辨率;gθ为方向权值,对于水平和垂直子带,gθ取1,对于倾斜方向子带,gθ取0.534。
亮度自适应调节因子al反映了人眼对于背景亮度变化的敏感程度。由于水下环境光线较弱,采用人工照明使得水下图像出现光照不均现象。人眼视觉注意力多集中在较亮的区域,而对较暗的区域不敏感,所以对于水下图像中不同亮度区域应采用不同的JND阈值。亮度自适应调节因子al(λ,θ,i,j)采用如图3所示的幂函数曲线形式[9],公式如下:
(3)
图3 亮度自适应调节因子al的幂函数曲线
对比掩盖因子ac反映了人眼对于不同的图像成分具有不同的敏感度。由于人眼较难辨别出纹理区域的失真变化,所以纹理区域可以掩盖更多的噪声,像水下图像中海底沙石构成的纹理区域可赋予较大的JND阈值。但是人眼却对边缘区域的失真变化较为敏感,所以对于水下图像中人造目标或者海洋生物的边缘区域应赋予较小的JND阈值,以保留更多人眼敏感的图像细节。另外由于水下图像中的光滑区域一般为海水,并不是人眼感兴趣的部分,所以在光滑区域可以容忍一定程度的失真。对比度掩盖因子ac(λ,θ,i,j)采用如图4所示的幂函数表示[9],其公式如下:
ac(λ,θ,i,j)=
(4)
其中:d1为高频子带(λ,1)到(λ,k)中相同位置(i,j)的系数v的标准差;d2为高频子带(λ,1)到(λ,k)中相同位置(i,j)的对比度敏感函数fs与亮度自适应调节因子al乘积的标准差,当λ=1,2,3时k取12,当λ=4时k取3,ζ取0.25。
图4 对比度掩盖因子ac的幂函数曲线
因此,本文基于JND模型的预处理方法的具体实现步骤如下:
(1)将水下彩色图像从RGB空间转换到YUV空间,以去除RGB各颜色分量间的相关性。
(2)对Y、U和V三个分量均进行4级WBCT变换,对前三级小波高频子带均进行四方向分解。
(3)对于颜色分量U和V,仅保留低频部分以供后续量化编码;对于亮度分量Y,除了保留低频部分外,对各高频子带进行上述JND阈值检测,对小于阈值TJND的高频系数置零,保留大于阈值TJND的高频系数以进行后续量化编码。
根据人眼视觉特性和水下图像特点,利用JND模型可以自适应地去除水下图像视觉冗余,使高频系数最大程度稀疏化,有利于提高编码效率。
1.3WBCT变换后系数的量化与编码
经过以上WBCT变换和预处理之后,待编码的图像信息为:亮度分量Y和颜色分量U、V的低频部分;经过JND模型去冗余后的Y分量高频部分。
因低频含有人眼较为敏感的重要图像信息,对于Y、U和V三个分量的低频子带LL4,分别进行7位、6位和6位的定长量化,并利用差分脉冲编码调制(DPCM)预测和熵编码算法进行无损压缩。
对于Y分量的高频子带,构建WBCT树以扫描重要系数,对重要系数的数值进行变精度定长量化编码,对重要系数的位置采用位置差降的编码策略。下面具体介绍Y分量高频子带的量化编码方法。
1.3.1 构建WBCT树WBCT变换依旧保留了类似小波树的父子系数关系,并且水下图像通常对比度低、纹理细节较少,经WBCT变换后会出现较多零树,所以可以利用树结构进行扫描编码,以充分提高压缩效率。图5为4级WBCT变换的树结构示意图,图中实线为WBCT变换中的小波分解,虚线为方向分解,本文以不同层级间同一方向子带的高频系数构造WBCT树。由于采用的WBCT变换中前三级分解方向数相同,因此可直接构造WBCT树,扫描前无需对系数进行重新排列组合。
图5 WBCT树构造示意图
所有WBCT树以首尾相接的方式进行扫描,在首轮扫描前取全部高频系数中最大绝对值的二分之一作为初始扫描阈值T,扫描完全部WBCT树后将阈值减半,作为下一轮扫描的阈值。扫描时,将小于阈值T的高频系数作为非重要系数,置零且无需编码操作;将大于阈值T的高频系数作为重要系数,对其数值和位置分别采用如下的变精度量化编码和位置差降编码方法。
1.3.2 重要高频系数的变精度量化编码 根据人眼视觉特性,人眼对频率较低的子带的敏感程度要高于频率较高的子带,对于水平和垂直方向子带的敏感程度要高于对角方向子带。因此,根据人眼对不同子带的敏感程度,本文按图5所示将所有高频子带划分为3大类:红色子带为第一类;黄色子带为第二类;绿色子带为第三类。对这三类高频系数分别采用4位、3位和2位二进制定长量化编码,其中一位用于系数的正负符号编码,剩下的位用于系数的绝对值编码。
图6 量化位数为3时的变精度量化编码示意图
采用变精度定长量化编码可以根据系数对重建质量的重要程度,实施不同精度的量化,以兼顾重建质量和压缩效率,并且采用定长编码可以避免传输差错的传输和扩散。
1.3.3 重要高频系数的位置编码 对重要高频系数的数值进行变精度定长量化编码后,本文采用位置差降(WDR)算法对重要系数的位置进行编码。记录第一个重要系数的位置,以及剩余重要系数和上一个重要系数的位置差。将位置差编码成二进制形式,由于最高位一定为1,所以可将其省略。最后重要系数的位置编码序列中只剩0、1和位置差之间的间隔符3种符号。
总结亮度分量Y的高频子带编码策略,实施步骤如下:
(1)找出所有方向高频子带中绝对值最大的系数,作为初始阈值T。
(3)所有WBCT树以首尾相接的方式进行扫描,将绝对值大于阈值T的高频系数作为重要系数,对重要系数的数值采用1.3.2节所述的变精度量化编码策略。(4)对重要系数的位置采用上述位置差降算法进行编码。
(5)每个重要系数与它的反量化重建值相减,得到一差值,在该重要系数的位置用这个差值替代当前的重要系数。
(6)重复步骤(2)至(5),直到达到目标压缩比为止。
综上所述,本文采用的编码方法的特点是:低频和高频分开处理,保护了图像的重要信息;充分利用WBCT树结构,有效提高编码效率;采用变精度量化,有利于保证图像重构质量;编码计算复杂度低,易于硬件实现。
2 实验结果与分析
本文通过3组实验对提出的水下图像压缩算法的性能进行测试:一是基于JND模型的预处理可行性验证;二是本文算法与基于小波变换的SPIHT[4]和WDR[5]编码算法的比较;三是本文算法在较高压缩比下的解码效果测试。测试图像均为256×256像素的水下图像。
首先对大量水下彩色图像进行基于JND模型的去冗余预处理,图7是预处理后未经压缩的重建效果对比图。由图可知,人眼很难觉察出去冗余之后的重建图像与原图的差别,预处理后仍然较好地保持了人眼感兴趣的图像边缘和光滑区域不变。表1给出了重建图像YUV3个通道的峰值信噪比(PSNR)和采用JND模型去除的高频系数占Y分量总系数数量的百分比,从表中可以看出,各分量PSNR值大于35dB,JND模型去除的Y分量高频系数大于70%。通过主观观察和客观评价指标可知,本文的预处理方法能有效去除视觉冗余,符合人眼的观测质量要求。对于较模糊的水下图像,该方法不但能去除更多冗余,而且对重建质量的影响更小。因此,本文基于JND模型的预处理方法是可行的。
((a)、(c)、(e)和(g):原始图像;(b)、(d)、(f)和(h):预处理后图像。(a)、(c)、(e)and(g):Originalimages; (b)、(d)、(f)and(h):Preprocessedimages.)
图7 基于JND模型的预处理结果
Fig.7PreprocessedresultsbasedonJND
表1 基于JND模型的预处理结果
第二组实验是本文算法与基于小波变换的SPIHT和WDR算法在相同压缩比下解码灰度图像的对比结果。3种算法程序均采用MicrosoftVisualC++ 2008编写。对水下灰度图像,本文算法进行4级WBCT变换,SPIHT和WDR算法进行4级Daub5/3小波变换,采用相同预处理方法,然后分别利用各自编码策略实现压缩。图8给出了压缩比为0.2bpp时3种算法的重建效果对比图。其中图(a)和(b)是原始灰度图像,图(c)和(d)是WDR算法重建结果,图(e)和(f)是SPIHT算法重建结果,图(g)和(h)是本文算法重建结果。从图中可以看出,在较高压缩比下,3种算法的重建图像细节均有不同程度的损失。但是本文算法的PSNR值高于另外两种算法,且整体视觉效果最佳,尤其是在人眼感兴趣的区域,SPIHT和WDR算法得到的重建图像在边缘部分已经出现模糊,而本文算法依然可以较好地还原图像边缘信息。这主要是因为,与SPIHT和WDR算法采用的小波变换相比,本文算法采用的WBCT变换具有更好的各向异性,能够分解出更多方向子带,只需较少的系数就可以有效逼近图像的边缘和轮廓信息,而这部分图像特征正是人眼比较关注的区域,因此本文算法的视觉效果更优。另外,SPIHT和WDR算法的重建图像背景也有一定失真。这是因为本文算法与SPIHT和WDR算法对高频系数的编码扫描路径不同,本文算法对含有图像主要信息的低频子带单独采用无损编码,然后扫描高频子带,这样可以在高压缩比下保护图像的主要信息。而SPIHT和WDR算法则是从低频子带就开始扫描,可能造成某些低频系数被误认为“0”,进而导致图像背景失真。
((a)和(b):原始图像; (c)和(d):WDR算法重建图像; (e)和(f):SPIHT算法重建图像; (g)和(h):本文算法重建图像。(a)and(b):Originalimages; (c)和(d):ReconstructionimagesbyWDRalgorithm; (e)和(f):ReconstructionimagesbySPIHTalgorithm; (g)和(h):Reconstructionimagesbyproposedalgorithm.)
图8 在0.2bpp条件下三种算法解码灰度图像的对比结果
Fig.8Comparisonofdecodedgrayimagesbythethreealgorithmsat0.2bpprate
图9 三种算法在不同压缩比下重建图6(a)的PSNR对比结果
图10 三种算法在不同压缩比下重建图6(b)的PSNR对比结果
((a)、(e)、(i)和(m):原始图像;(b)-(d)、(f)-(h)、(j)-(l)和(n)-(p):不同压缩比下的解码图像。(a), (e), (i)and(m):Originalimages; (b)-(d), (f)-(h), (j)-(l)and(n)-(p):Decodedimagesatdifferentcompressionratio.)
图11 较高压缩比下本文算法解码图像的结果
Fig.11Decodedimagesbyproposedalgorithmathighcompressionratio
图9和10给出了对图6(a)和(b)采用3种算法在不同压缩比下重建图像的PSNR对比结果。由图可知,在不同压缩比下,本文算法的PSNR值均高于SPIHT算法和WDR算法,并且随着压缩比增加,本文算法的优越性也愈加明显。产生这种结果的原因是:首先如前文所述,本文算法采用的WBCT变换本身具有更强的捕捉图像细节信息的能力;其次,由于本文算法单独对低频子带采用无损编码,在高压缩比下能够获得比SPIHT算法更多的零树结构,并且WDR算法并没有采用更高效的树结构进行扫描编码。因此,本文提出的算法具有较高的编码效率。
第三组实验测试了本文算法在较高压缩比下彩色图像的解码效果。如图11所示,随着压缩比增加,重建图像的视觉质量逐渐下降,但当压缩比高于150:1时,解码图像的视觉效果仍然是可以接受的,所以本文算法可以保证高压缩比下的解码质量。
3 结语
根据水下图像和人眼视觉的特点,提出一种基于WBCT变换的水下图像高效压缩算法。该算法采用WBCT变换,克服了小波变换方向性不足的缺点,能够更好地表征图像细节,保证图像重建质量。依据人眼视觉敏感度,提出一种专门针对水下图像的JND模型,能自适应去除图像中的视觉冗余,显著增加了图像的稀疏程度。分开处理低频和高频,并采用基于树结构的变精度量化和位置差降编码策略,有利于提高压缩效率。实验结果表明:与基于小波变换的编码算法相比,本文提出的算法具有更好的解码效果,符合人眼视觉质量要求;可以实现高效压缩,适用于水下图像在甚低比特率下的压缩传输。如何提高压缩算法的抗误码能力是下一步研究的目标。
[1]LiQ,ZhangY,ZangF.Fastmulti-cameravideostitchingforunderwaterwideFOVobservation[J].JournalofElectronicImaging, 2014, 23(2): 1-15.
[2]IglesiasI,SongA,GarciaJ,etal.Imagetransmissionovertheunderwateracousticchannelviacompressivesensing[C].Baltimore: 45thAnnualConferenceonInformationSciencesandSystems, 2011: 1-6.
[3]MurphyC,WangR,SinghH.Seafloorimagecompressionwithlargetilesizevectorquantization[C].Monterey:IEEEAUVConference, 2010: 1-8.
[4]MurphyC,WallsJ,SchneiderT,etal.CAPTURE:Acommunicationsarchitectureforprogressivetransmissionviaunderwaterrelayswitheavesdropping[J].IEEEJournalofOceanicEngineering, 2014, 39(1): 120-130.
[5]LiQ,WangW.Low-bit-ratecodingofunderwatercolorimageusingimprovedwaveletdifferencereduction[J].JournalofVisualCommunicationandImageRepresentation, 2010, 21(7): 762-769.
[6] 李庆忠, 王中琦, 李长顺. 适合水声信道传输的水下图像高效编码算法 [J]. 计算机工程与应用, 2012, 48(6): 209-213.LiQ,WangZ,LiC.Efficientunderwaterimagecodingalgorithmsuitableforunderwateracousticchanneltransmission[J].ComputerEngineeringandApplications, 2012, 48(6): 209-213.
[7]EslamiR,RadhaH.Wavelet-basedcontourlettransformanditsapplicationtoimagecoding[C].Singapore:IEEEInternationalConferenceonImageProcessing, 2004: 3189-3192.
[8]LinW,KuoC.Perceptualvisualqualitymetrics:Asurvey[J].JournalofVisualCommunicationandImageRepresentation, 2011, 22(4): 297-312.
[9]LiuZ,KaramL,WatsonA.JPEG2000encodingwithperceptualdistortioncontrol[J].IEEETransactionsonImageProcessing, 2006, 15(7): 1763-1778.
责任编辑 陈呈超
Efficient Underwater Image Compression Method Based on WBCT
ZHANG Yang, LI Qing-Zhong
(College of Engineering, Ocean University of China, Shandong Provincial Key Laboratory of Ocean Engineering, Qingdao 266100, China)
A key application for underwater image compression is the real-time transmission of imagery from an autonomous underwater vehicle to a surface station, e.g., for man-in-the loop monitoring and inspection operations, through acoustic channels that have limited bandwidth. To achieve high compression efficiency while keeping visually pleasing reconstruction quality for underwater images, this paper presents an efficient underwater image compression method based on the wavelet-based contourlet transform (WBCT). According to the characteristics of underwater images and human vision system (HVS), an improved just noticeable distortion (JND) model is fist proposed to adaptively remove the visual redundancy of underwater images in the WBCT domain. In order to fully exploit the property of HVS, the JND-based preprocessor incorporates three modulation factors, including the contrast sensitivity, lamination adaption and contrast masking functions, respectively. For both luminance and chrominance components, the low frequency coefficients are quantized in the fixed length and encoded losslessly. For luminance channel, the high frequency coefficients are quantized by variable precision and fixed length method, and are coded by the difference reduction algorithm based on WBCT trees. The proposed scheme is compared with traditional wavelet-based encoders to assess the coding performance. The experimental results with underwater images confirm that the proposed compression algorithm provides both high coding efficiency and satisfactory reconstruction quality, which is highly desired for the transmission of underwater imagery at very low-bit rates.
underwater imagery; image compression; wavelet-based contourlet transform; just noticeable distortion
国家高技术研究与发展计划项目(2006AA09Z237)资助 Supported by National High-Tech R&D Program (2006AA09Z237)
2014-09-15;
2015-10-11
张 洋(1987-),男,博士生,主要研究方向为水下图像处理与水下机器人视觉。E-mail:zzephyyr@qq.com
** 通讯作者: E-mail:liqingzhong@ouc.edu.cn
TP391.41
A
1672-5174(2017)03-124-09
10.16441/j.cnki.hdxb.20140201
张洋, 李庆忠. 基于WBCT变换的水下图像高效压缩方法[J]. 中国海洋大学学报(自然科学版), 2017, 47(3): 124-132.
ZHANG Yang, LI Qing-Zhong. Efficient underwater image compression method based on WBCT[J]. Periodical of Ocean University of China, 2017, 47(3): 124-132.