一种基于JPEG2000压缩域的图像检索算法
2022-02-23
来源:易榕旅网
维普资讯 http://www.cqvip.com 一种基于JPEG2OO0压缩域的图像检索算法 文 缩号 oo3—585o(2006-)o4—0044一o3 一。。 _ 、。 。 _‘・ _ ・’‘’。r f’。 种基 于JPEG2000压缩域的图像检索算 法’ An Image Retrieval Arithmetic based on JPEG2000 Compressed Domain ’ 刘 嵘: 郑兆端孙雪 :(太原理工大学 太原030024) 0.. 【摘 要】互联网上存在大量图像信息,如何有效地对图像资源进行组织并检索到用户所需的图像,便成为人们 研究的课题。随着新一代压缩标准JPEG2Ooo的逐渐普及,互联网上采用此标准编码的图像文件 :jp2会大量涌 现,并最终会取代现有的JPEG标准的图像。在此背景下,提出了一种简单快速的基于JPEG2OOO‘图像压缩域的 检索算法,特征提取综合考虑形状、颜色、纹理和空间信息。所有的特征在解压缩过程中,熵解码之后获得。实验 结果表明,相对于传统的基于像素域的图像检索,此算法具有很高的检索效率,而且算法相对简单。 【关键词1 JPEG2OOO,压缩域,图像检索 中田分类号:TP391.41 文献标识码:A ・ ’ 一 A BSTRACT A large number of picture information are excists on Internet・How t0 effectively structure the image source and retrieve the image that users need become a research subject of people.With the increasing popularity of new image compression standard JPEG2000,on Internet,there are more and more jp2 image files based on this standard emerging,which will replace existing JPEG standard image.Against thes background,this paper presents a simple and quick retrieve arithmetic based on JPEG2000 image compression domain,and the shape,color,texture and space information are also considered in the feature extracting.All features are obtained after entropy decoding during the decompression processing.Experiments results shows that this algorithm has a good efficiency and is simple by comparing the traditional image retrieval algorithm based on pixel domain. KEYWORDS JPEG2000,compressed domain,image retrieval 目前网络上对图像的检索大都根据图像的文件名 对图像在一个参考网格(坐标系)下进行分割,分 或目录名 路径名、链路、ALT标签以及图像周围的文 成互不重叠的大小相等的长方形子块(图像边缘的子 本信息等外部信息进行检索,检索速度虽然快,但是不 块大小可以不相同),每个子块称为瓦片(tile)。瓦片是 准确,经常出现答非所问的检索结果。现有的基于内容 进行后面一系列操作的基本单位,相对于以整个图像 的检索方式,虽然检索效果相对好,但需要对图像进行 为单位进行操作,将图像分成瓦片能够降低内存需求, 完全解压缩,然后提取特征再检索,这样会消耗大量内 但如果分块很多,在高压缩比下,恢复的图像会出现块 存空间,检索速度慢,无法在网络上实时地检索,于是 效应。具体分割方法如图1所示。 许多人提出基于压缩域的图像检索算法。但大都局限 在 JPEG这种旧的压缩标准之上。由于JPEG2000的 压缩率高,解压缩后图像清晰,还能实现渐进传输和针 对感兴趣区域(ROI)的高质量恢复,故JPEG2000最 终会取代现有的JPEG压缩标准,成为新一代的压缩 标准。因此针对JPEG2ooo压缩格式图片的压缩域的 检索有很好的实用价值。本文首先介绍JPEG2000静 止图像的压缩和解码过程,进而详细介绍用于检索的 特征向量的计算过程,第三部分给出实验结果。 图1瓦片分割 1.2 DC层进与分量变换。 1 JPEG2000编、解码过程 彩色图像有尺、G、B三个分量,灰度图像只有一 1.1.图像区域的瓦片分割(tiling) 个亮度分量。这些分量中如果有无符号分量则需要进 *. 2006一O1一O6收到,2006一O3一O2改回 . ** 刘蝾,女,1976年生,硕士研究生,研究方向;图像搜索,图像处理。 维普资讯 http://www.cqvip.com 第19卷第4期 电脑开发与应用 行DC层进。如果原来的数值范围是(0.2 1),DC层 重要性传播过程、幅度精练过程、清理过程,并与算术 进2¨即所有数值减去2e-1后,数值范围变为(一2 ,2¨ 编码过程结合在一起。编码完成后开始进行EBCOT 1)。 过程,EBC0T对每个编码块产生的码流,根据需要截 分量变换是将图像由RGB彩色空间转换到 取不同的长度厶,设编码块B 的码流长度为L ,失 YCbCr彩色空间,即将R、G、B三个分量转变为一个 真为D ,最终压缩数据的长度为L ,则每一个编码 亮度分量和两个色度分量。转换时既可以采用可逆分 块的截断点可以自由选择,只需最后的码流长度 量变换,也可以采用不可逆分量变换。 满足 £ ≤max即可,如果用每一个编码块的失真 1.3离散小波变换 之和来表示重建图像的失真,则重建图像的失真为D 在JPEG2000标准中,采用“双正交对称9—7小 一波滤波器”进行有损压缩,用“双正交对称5—3小波滤 ∑D 。 波器”进行无损压缩。以瓦片分量为照位,对图像进行 嵌入式块编码算法将全部编码块的码流包装成若 干个封包流(pack—stream)质量层(Layer)送出。每个 小波分解,小波变换将图像分解为一组子带信号。n级 小波变换将图像分解为3 +1个子带,它们分别是: 质量层将分别从每个编码块中取一小部分码流,故此 R1HH,R1LH,R1HL。R2HH,R2HL,R2I H,…… 质量层将会从全部编码区块中.各取其编码块中一小 R HH,RnHL,R1HL,R1HH。例如:对一个图像块进 部分的码流。在此输出层中,每个一小部分的码流称为 行2层小波分解,得到7个子带分量,它们分别为 贡献(Contribution),而此一小部分码流的长度称为贡 献长度。 R2LL,R2LH,R2HL,R2HH,R1LH.R1HL,R1HH。 比如说,假设全部有6个编码块,则此输出层将从 JPEG2000的离散小波变换的工作过程是:将每个待 6个编码块中各取其中的一小部分码流,此输出层一 鼬 舭 变换的图像块在水平方向和垂直方向与两个滤波器 共就有6个一小部分码流,也就共有6个贡献。质量层 (高通、低通)相卷积,得到4块面积为原图像1/4的子 与编码块的关系如图3所示。这样码流就被按质量分 图,分别为水平方向低频和垂直方向低频(A1LL),水 层组织在了一起,可以实现渐进传输。 平方向低频和垂直方向高频(A1LH),水平方向高频 和垂直方向低频(A1HL),水平方向高频和垂直方向 鱼l嘲 囊: 慷3哪 睫●哪 睫S■ B鱼‘ I} 高频(A1HH)。A1HL,A1LH和A1HH称为细节子 图,AILL称为源图像的低分辨率子图,以上是图像的 『 ] 广 1 厂 ]l 广 1 一级小波分解。在实际压缩图像时,具体进行多少次小 厂 1 f 1 广 , 『 1 f 1 波分解,由JPEG2000编码器决定,一般进行5或6次 r 1 r 1 .’F 1 分解能够达到最优的编码效率。两级小波分解结果如 I l I 一 曩 l l _ I 图2所示。 1.4量化 R2I上 R2HL RlHL 2 l 囊 l l I I i _ 一 将小波变换后得到的子带系 R2I』{ R2HH 图3质量层 数精度进行调整,以得到必要编码 R1UH R1HI-I 1.6形成一定格式的压缩码流 率为目的的处理就是量化。量化只 为了适合图像变换,更好地应用压缩码流功能, 在不可逆编码中实施,即在有损压图2两级小波分解 JPEG2000标准规定了存放压缩位流和解码所需参数 缩中进行。在采用了可逆分量变换和可逆小波变换的 的JPEG2000格式,把压缩码流以包为单元进行组织, 可逆编码方面,因变换系数是整数值,故不进行量化。 形成最终码流。 量化后,原有的很小的小波系数被置为零,其余的系数 解码过程是编码的逆过程,解码所需要的信息都 都转化为整数。 存放在最终码流组织结构的包头中。编码和解码过程 1.5熵编码与EBcoT(嵌入式块最优截断编码) 如图4所示。 将量化后的小波子带分成几个区域,再将区域分 2检索算法描述 成相对小的子块,如64×64或32×32,这些子块称为 2.1相关系数优化 中每一个位平面是由该编码块所有相 兰 蓑原始图像一 L一———J L——— L L———— 一 一函一区蔓 压缩码流 关系数的同一个位的比特所构成。对重构图像——匡亘 垂 一匡亘 亘 — 压缩码流 每个位平面分别进行三种编码过程, 图4编码和解码过程 维普资讯 http://www.cqvip.com 一种基于JPEG2000压缩域的图像检索算法 本算法对图像的检索在熵解码之后,反量化之前 进行,相对于全部解压缩之后再检索的算法,有很高的 检索效率。但由于小波系数的能量主要集中在粗尺度 即低频子带,大的小波系数比小的小波系数更重要,故 还可以继续减少内存压力,提高检索效率。小波系数C 的显著性通过和一个特定的阈值丁相比较确定。如果 C≥丁,就认为是显著的,否则被看作是不显著的。只有 显著系数被存储并被用于重建图像,而其他系数被置 为零。决定显著性系数的阈值的选择对于在不同的分 辨率重建图像至关重要。高的阈值产生少量的显著性 系数,得到的重建图像质量差。假定用 表示分辨率级 别,C 表示DWT系数的最大值,丁 表示第i级分辨 率的阈值,则丁,计算如下: T1一C /2 T,一T /2 ( >1) 通常不显著系数占了很大比例,所以能够很好的 降低计算量,同时也不会降低检索质量。 2.2特征向量生成算法 低频子带是原图像的分辨率较低的图像,高频子 带包括图像的细节信息。用于检索的向量来源于图像 的特征,本文中图像的特征用子带的方差表示,并且只 对重要相关系数进行计算。通常每个子带有多个图像 块。通过这些图像块的方差是无法计算出一个子带的 方差的。然而假定这些图像块有相同数目的相关系数, 子带的方差就能够从相关系数的一阶矩和二阶矩计算 求得。假设一个子带有两个图像块x和y,X的一阶 矩和二阶距的求法如式(1)和(2)所示,y的一阶矩和 二阶距的求法如式(3)和式(4)所示。这个子带的一阶 矩和二阶矩由式(5)、式(6)求得。那么 与y总的方 差即这个子带的方差由式(7)得出。 . EEx-I一兰 (1) 』Y .r EEx。]一兰 (2) 』 v. EEY-I一 (3) 』 v EEY。]一兰 (4) N NEEz3== E—[X]-FE[Y](5) 2Ⅳ T2 EEZ ]一 ± 一 : ± [ 2N 2 (6) ( 墅 一(坐 )z (7) 如果一个子带包含 个图像块,则整个子带的方 差由式(8)求出。对所有的子带按式(8)求出各自的方 差后,由这些方差组成特征向量。特征向量的维数与图 像经过小波分解后得到的子带数目相等。 r(z)一墨 墅 一(墨 )z (8) 2.3图像搜索过程 首先从图像库中选择一个被检索图像,然后在图 像库中查找,每提取出一幅图像,就对其进行熵解码操 作,得到还未反量化的小波系数,对亮度分量计算出它 的特征向量,并按照式(9)计算出与被检索图的欧几里 德距离,如果在指定的距离范围内,则将其作为检索结 果选出来。其中X为被检索图的特征向量,X,为X的 第i个分量,y为图像库中任意一幅图的特征向量,y 为y的第i个分量。 厂 ————一 D x,y)一√,(Xi-y ̄ (9) 3 实验结果 实验中使用的图像库包 括I20幅野生动物图像,并 ● 以JPEG2000压缩标准存 一 储。其中彩色的共有100幅, 蜷 其余2O幅只有亮度分量的 图5被检索图像 图像是由前100幅彩图中随机选取的图像转换成的。 压缩时没有对图像实施瓦片分割,并且共进行了5次 小波分解,能够产生出具有16个分量的特征向量。进 行多次检索实验后发现,检索结果中排列在第一位的 图像始终是被检索图,说明采用本文使用的算法有很 好的检索效果。虽然特征向量只是从亮度分量中计算 出来的,但并不影响对彩色图像的检索。检索实例如图 5、图6所示,其中图5为被检索图,图6为检索结果, 发现被检索图排在检索结果首位。 由于JPEG2000的各种优秀性能,取代JPEG指 图6检索结果 (下转第49页) 维普资讯 http://www.cqvip.com 第19卷第4期 电脑开发与应用 体完全位于工件的内部时。由于进行切削的工件外形 比较简单,所以根据子立方体8个顶点的坐标很容易 判断出它与工件的具体位置关系。如此循环下去直到 所有递归全部停止为止。在碰撞检测过程中,根据工件 的运动状态,如转速,来设置时间段,在每一时间段检 方和45。等轴测4个视角同时对物体进行检测,避免了 由于视角不合适而产生的误判;每个视角中采用动态 八叉树算法,根据设定的分解条件只对发生碰撞的立 方体进行适当的层次细分,这样既减少了运算量又实 现了精确的碰撞检测。仿真结果表明,使用本多视角的 测一次碰撞情况,对八叉树结构刷新一次,即使八叉树 结构总处于变化中,从而实现动态的碰撞检测。 动态八叉树碰撞检测算法,既成功地避免误判,又减小 了误差,在基于JAVA3D的虚拟切削系统中实现了精 动态八叉树碰撞检测算法通过设定分解条件,只 对发生碰撞的立方体进行适当的层次细分,这在保证 实现对工件的碰撞检测的基础上,既减小了运算量,又 实现了精确的碰撞检测。 3动态八叉树的立方体表示法 动态八叉树的基本组成是基 元立方体,采用立方体的中心坐 标位置和立方体的边长来描述立 方体的几何信息,如图1所示。由 自定义类BoxCollision( ,Y, , 惫 口,k)表示基元立方体,其中z,Y, 图1图 基元 方体几何 基元立方体几何 是立方体的中心点坐标,n是立 模型 方体的边长,k是基元裂变控制按钮,其初始值为 false,当该单元检测到与刀具发生碰撞且未达到精度 要求、也不是完全位于工件内部或外部时设为true。则 立方体的8个顶点坐标分别为:A( --a/2,Y+a/2, +a/2),B( --a/2,Y+a/2, —a/2),C( +a/2,Y+ a/2, —a/2),D( +口/2,Y+a/2, +a/2),E(z一口/ 2, 一口/2, +a/2),F(z一口/2, 一口/2, —a/2),G( +a/2,Y—a/2, —a/2),H( +a/2,Y—a/2, +口/ 2)。 有了基元立方体之后,以 它为基体,采用自相似分解规 则,对立方体进行多级层次分 解,进而实现动态八又树碰撞 检测。图2是多层次几何结构 实例,其中被填充的单元表示 达到碰撞检测要求的子立方 体,该单元的k值为false,即不 图2多层次几何结构 再对其进行分解。 4结束语 尽管JAVA3D在虚拟制造方面得到了广泛的应 用,但是JAVA3D在进行碰撞检测时会由于视角不合 适而产生误判,而且误差也很大,不能满足系统精确碰 撞检测的要求。针对这个不足,本文提出了基于多视角 的动态八叉树碰撞检测算法,从正前方、正上方、正左 确的碰撞检测。 ’参考文献 Sun Microsystems lnc.The Java2 Platform[-EB/OL] http://www.javasoft.com/products/jdk/1.4.2,2001一 O4一O5. [2] Sun Microsystems Inc.The Java 3D(tm)API Specification[EB/0L].http://www.javasoft.corn/ products/java—media/3D/index.html。2001一O3—24. [3] 王志强,洪嘉振,杨辉.碰撞检测问题研究综述[J].软 件学报,1999,10(5):545—551. [4] 张 杰.JAVA3D交互式三维图形编程[M].北京:人民 邮电出版社,1999. [5] 一 李 敏,丁友东.Java图形与动画编程实例[M].北京:清 华大学出版社,2003. 罗亚波,陈定房,肖田元.虚拟加工环境中的工件动态建 模方法研究[】].武汉大学学报,2003,28(2):238—241. 李 超,陈一民,施 华.JAVA3D与VRML在机器人仿 真和碰撞检测中的应用[J].计算机工程与科学,2002,24 (5):83—85. 、 (上接第46页) 日可待。针对互联网上即将大量出现的jp2压缩格式 的图像,如何进行有效并且是快速地检索的问题被提 了出来,所以本文提出的对JPEG2000图像压缩域的 检索算法有很高的实用价值。本算法虽然简单易行,但 是不具备平移与旋转不变性,计算量相对还比较高,这 些方面依然有待改进。 参考文献 [1]Ziyou Xiong,Thomas S,Huang.Subband—based Memory efficient Compressed—domain JPEG2000 Image Indexing. Santa Fe. New Mexico:Proceedings Of Southwest Symposium on Image Analysis and Interpretati0n(SSIAI),2002:290—294. [2]傅 蓉,许宏丽.基于小波多尺度分析的彩色图像检索方 法[J].中国图像图形学报,2004(11):1 326—1 330. E3]刘正光,刘子晓,申旭刚.JPEG2000算法原理及实现框架 [J].多媒体技术及应用,2004(10):161—163. [4][日]小野定康,铃木纯司.JPEG2000技术[J].北京:科学 出版社,2004.