技术领域
[0001] 本
发明涉及一种用于联合图像专家组(JPEG2000)的感兴趣区域编码方法,特别涉及编码码率给定或者背景不重要的场合下感兴趣区域编码问题。
背景技术
[0002] 目前国际最新的JPEG2000标准具备
帧内编码、压缩效果好、支持感兴趣区域(Region of Interest,ROI)编码和渐进式传输等品质,因而在高端数字图像应用中得到了推广。在不含ROI编码的JPEG2000系统中,首先采用离散小波(DWT)处理原始图像,之后采用位平面编码(Bit-plane Coding,BPC)和算术编码(Arithmetic Coding,AC)得到各码
块的码流,最后优化截断码流,并组织输出。
[0003] ROI编码将图像的部分区域以更高的
质量编码,在码率受限或者背景不重要的应用中,重要的信息被优先地保留下来。ROI编码两个典型应用如下:(1)遥感图像编码。遥感图像中多包含低价值甚至无价值的信息,此类信息在编码时占据较多码流,关键信息失真较大,此时应用ROI编码可减少甚至舍弃背景区域生成的码流;(2)带宽有限的通信环境,如卫星通信、视频传输中每帧图像在给定码率下编码等。此类应用中,ROI编码可使感兴趣区域分配到更多带宽,更多有用信息被保留。
[0004] 当前ROI编码的主流
算法是基于小波系数提升,即小波子带中ROI系数的位平面上移,使其在BPC和AC时被优先编码,进而在优化截断时被优先保留。此时,ROI编码模块位于DWT和BPC之间。JPEG2000协议中采纳的最大移位法(Maxshift)和一般移位法(Scaling Based Method,SBM)均属此类,并在此
基础上衍生出多种
优化算法,如部分移位法(Partial Significant Bitplanes Shift,PSBS)等。然而,此类算法由于使系数位平面数增加,极大地增加了JPEG2000系统的计算量,尤其是对于JPEG2000
硬件系统,后续BPC、AC和优化截断等模块均需作出适应性改变,不利于系统的维护。其他ROI编码方法,如隐式加权法等,增加的系统计算量较少,然而无法获得可媲美系数移位法的ROI编码质量。总之,当前的ROI编码技术无法均衡ROI编码质量和系统计算量。
发明内容
[0005] 本发明提出一种具有高ROI编码质量和极低系统计算量的基于预截断的JPEG2000感兴趣区域编码方法。
[0006] 本发明的基于预截断的JPEG2000感兴趣区域编码方法,包括以下步骤:
[0007] a)在具体应用场合下,建立码率查找表;
[0008] b)在具体应用场合下,建立面积查找表;
[0009] c)所述步骤a)和b)得到的查找表,分别用码率和ROI面积索引,输出分别设为Srate和Sarea,并计算两查找表输出之和,设为Sbg;
[0010] d)根据
指定的原图像中感兴趣区域
位置,计算各小波子带中感兴趣区域的边界。多层
小波变换时,当前子带ROI边界由原图像或其上一层LL子带中ROI边界计算获得;
[0011] e)根据所述步骤d)计算的各子带ROI边界,判断当前子带系数是否为ROI系数;是则不作任何处理,否则仅保留此系数Sbg个最高位平面,其余位平面置零。
[0012] 本发明方法的优选方案中,步骤a)的具体流程为:
[0013] 首先,采集具体应用场景中N(N≥10)幅图像,并在每幅图像中指定ROI。ROI面积为图像面积的30%,不限制形状。
[0014] 然后,建立待测试的码率表。如码率以步长0.025bpp(bit per pixel)从0.025bpp增大到1bpp,以步长0.25bpp从1bpp增大到4bpp。
[0015] 再次,对码率表中每个码率,计算Sbg从2增大到S(量化后系数位平面数)时,N幅图像中ROI的PSNR平均值,并选取Sbg的最优值,计为Srate,使其获得的ROI的PSNR值高于但尽可能接近此码率下ROI的PSNR
阈值。
[0016] 最后,简化码率表。由于邻近码率极有可能获得相同的Srate,所以码率表可以简化以提高索引效率。
[0017] 本发明方法的优选方案中,步骤b)的具体流程为:
[0018] 首先,建立待测试的面积表。如ROI面积以增幅5%,从5%增大到75%。
[0019] 然后,对面积表中每个ROI面积,
选定Sbg初值为码率查找表中0.5bpp对应的Sbg值,计为Sbg0。当ROI面积低于30%时,Sbg从Sbg0递减到2,当ROI面积高于30%时,Sbg从Sbg0递增到S。对上述范围中每个Sbg值,计算N幅图像中ROI的PSNR平均值。再选取Sbg的最优值,使其获得的ROI的PSNR值高于但尽可能接近此码率下ROI的PSNR阈值。最后,用Sbg减去Sbg0,计为Sarea,作为此面积对应的输出。
[0020] 最后,简化面积表。由于邻近面积极有可能获得相同的Sarea,所以面积表可以简化以提高索引效率。
[0021] 本发明方法的优选方案中,步骤c)的具体流程为:
[0022] 分别用当前码率和ROI面积索引码率查找表和面积查找表,设输出分别为Srate和Sarea,最终根据公式(2)获得Sbg值。
[0023]
[0024] 本发明方法的优选方案中,步骤d)的具体流程为:
[0025] 子带ROI边界由图像或者上层LL子带中ROI边界计算得到。一维小波变换是二维小波变换的基础,一维序列小波变换ROI边界计算如公式(3)(4)所示。
[0026]
[0027]
[0028] 其中,l和r分别为原一维序列ROI的左边界和右边界,lsub为L、H子带的左边界,rL、rH分别为L、H子带的右边界。扩展到二维小波变换,矩形左上(右下)
顶点坐标决定其左、上(右、下)边界,对应一维序列的左(右)边界。
[0029] 本发明与
现有技术相比,具有如下优点:
[0030] 1、本发明的基于预截断的ROI编码方法,其具有极高的ROI编码质量。本发明方法中,ROI系数始终被优化截断,保证了码流在各码块ROI之间合理分配,进而获得高质量的ROI编码。当前主流的ROI编码算法,如PSBS,其各码块中ROI系数均保留同样数目的位平面,而非优化截断,因而其ROI编码质量低于本发明。
[0031] 2、当前主流的ROI编码算法,如Maxshift、PSBS等,均由于位平面数的增加而极大增加了系统计算量,对于已有的JPEG2000硬件系统,更是需要对多个模块进行较大规模的适应性调整。本发明由于不增加系数位平面数,JPEG2000系统其他模块无需作任何改动,即没有增加其他模块的计算量,因而极易嵌入已有JPEG2000软硬件系统。
[0032] 3、当前主流的ROI编码算法,如Maxshift、PSBS等,均存在极低码率下背景完全丢失的问题,造成极差的视觉效果。本发明由于保留了背景数个最高位平面,且在优化截断时背景码流不会完全舍弃,因而解码图像中背景不会完全丢失,保证了在低码率下解码图像具有可接受的背景质量。
[0033] 采用基于预截断的JPEG2000感兴趣区域编码方法,可在相同码率下,在无需改变JPEG2000其他模块的同时提供更高的图像细节,可在极低代价下提升已有JPEG2000软硬件系统,具有广泛的应用前景。
附图说明
[0034] 图1为预截断方法编码流程。
[0035] 图2为码率查找表建立流程。
[0036] 图3为面积查找表建立流程。
[0037] 图4为各子带矩形ROI边界生成流程。
[0038] 图5为预截断方法效果图。
具体实施方式
[0039] 为了使本技术领域的人员更好地理解本发明,下面结合
实施例和
说明书附图来对本发明中的技术方案进行清楚、完整的描述说明,应理解这些实施例仅用于说明本发明技术方案的具体实施方式,而不用于限制本发明的范围。在阅读了本发明之后,本领域技术人员对本发明的各种等同形式的
修改和替换均落于本
申请权利要求所限定的保护范围。
[0040] 实施例:
[0041] 将预截断方法嵌入已有JPEG2000系统(图像大小为512×512,码块大小为32×32,3层9/7小波变换,量化后系数位平面数S为11),并应用于采集图像中低频信息为主的场景(楼道监控)。预截断方法编码流程如图1所示。为精确控制不同码率和ROI面积时背景保留的位平面数,使ROI获得高质量的同时背景能保持一定的辨识度,需在系统应用之前,为此场景定制码率查找表和面积查找表。则系统首次运行之前需进行两项工作:
[0042] a)建立码率查找表。流程如图2所示,图2为通用性流程,当前场景下N取10。其具体步骤为:
[0043] 首先,在此场景中采集10幅图像,并在每幅图像中指定ROI。ROI面积为图像面积的30%,形状为矩形,位置位于图像中间区域。
[0044] 然后,建立待测试的码率表。此场景中码率表为码率以步长0.025bpp从0.025bpp增大到1bpp,以步长0.25bpp从1bpp增大到4bpp。
[0045] 再次,对码率表中每个码率,计算Sbg从2增大到11时,10幅图像中ROI的PSNR平均值,并选取Sbg的最优值,计为Srate,使其获得的ROI的PSNR值高于但尽可能接近此码率下的阈值。对于当前场景(采集图像中低频信息为主),典型的PSNR阈值为:码率低于0.05bpp时为20dB;码率从0.05bpp至0.55bpp,每增加0.1bpp,PSNR阈值增加3dB;码率从0.55bpp至1.05bpp,每增加0.1pp,PSNR阈值增加2dB;码率从1.05bpp至2.05bpp,每增加0.5bpp,PSNR阈值增加1dB。
[0046] 最后,简化码率表。由于邻近码率极有可能获得相同的Srate,所以码率表可以简化以提高索引效率。最终的码率查找表包含的码率值较少,此应用场景下的码率查找表如表1所示。
[0047] 表1 简化后码率查找表
[0048]
[0049] b)建立面积查找表。流程如图3所示,其具体步骤为:
[0050] 首先,建立待测试的面积表,ROI面积以增幅5%,从5%增大到75%。
[0051] 然后,对面积表中每个ROI面积,选定Sbg初值(计为Sbg0)为码率查找表中0.5bpp对应的Sbg值。当前应用场景下Sbg0为4。当ROI面积低于30%时,Sbg从Sbg0递减到2,当ROI面积高于30%时,Sbg从Sbg0递增到S。对上述范围中每个Sbg值,计算N幅图像中ROI的PSNR平均值。再选取Sbg的最优值,使其获得的ROI的PSNR值高于但尽可能接近此码率下的阈值。最后,用Sbg减去Sbg0,计为Sarea,作为此面积对应的输出。
[0052] 最后,简化面积表。由于邻近面积极有可能获得相同的Sarea,所以面积表可以简化以提高索引效率。最终的面积查找表包含的值较少,此应用场景下的面积查找表如表2所示。
[0053] 表2 简化后面积查找表
[0054]面积(%) (0,25] (25,50] (50,100]
Sarea 1 0 -1
[0055] 系统实际运行时进行了如下操作:
[0056] c)分别用当前码率和ROI面积索引码率查找表和面积查找表。ROI面积为ROI
像素数占图像总像素数的比例,设原图像中矩形ROI的左上和右下顶点坐标分别为(x0,y0)和(x1,y1),则ROI面积通过公式(1)计算。设两查找表输出分别为Srate和Sarea,[0057] 再根据公式(2)计算Sbg值。
[0058]
[0059] 其中,M和N分别为图像的高和宽,A为ROI面积。当前场景下,M和N均为512。
[0060]
[0061] 当前场景下,S为11。
[0062] d)当前场景使用矩形ROI,JPEG2000系统获取原图像中ROI顶点坐标,计算各小波子带中感兴趣区域的边界,流程如图4所示。图4所示为通用性的流程,针对当前场景,图4中LEVEL为3。子带ROI边界由图像或者上层LL子带中ROI边界计算得到。一维小波变换是二维小波变换的基础,一维序列小波变换ROI边界计算如公式(3)(4)所示。
[0063]
[0064]
[0065] 其中,l和r分别为原一维序列ROI的左边界和右边界,lsub为L、H子带的左边界,rL、rH分别为L、H子带的右边界。扩展到二维小波变换,矩形左上(右下)顶点坐标决定其左、上(右、下)边界,对应一维序列的左(右)边界。
[0066] e)ROI模块读入当前子带系数,设其坐标为(x,y),根据公式(5)判断其是否为ROI系数。
[0067]
[0068] 其中,up、down等值与子带及其所在小波变换层数有关,如对第一层HL子带,up、down、left、right分别为图4中lev为0时所得的up、down_L、left、right_H。
[0069] flag为1时此系数为ROI系数,此时不作任何处理;flag为0时系数为背景系数。此时仅保留其Sbg个最高位平面,其余位平面置零。预截断方法处理过程如公式(6)所示,处理后的效果如图5所示。
[0070]