群体图像编码结构生成方法与流程

文档序号:12554379阅读:471来源:国知局
群体图像编码结构生成方法与流程

本发明属于图像编码领域,更进一步涉及一种群体图像编码结构生成方法,可用于云端群体图像压缩,及与专业领域图像压缩、个人相册图像压缩、图像数据库压缩的类似场景。



背景技术:

图像通常以JPEG的格式存储,虽然能够实现存取方便,但也造成了存储空间大、编码效率低的缺点。现有群体图像编码主要利用群体图像间的相关性生成伪视频结构,再采用视频压缩技术进行压缩。伪视频结构即为群体图像编码结构。生成群体图像编码结构主要考虑两个方面:一是提高编码效率,二是保证用户能随时读取图像。提高编码效率通过对群体图像进行相关性描述,并生成树形结构,即先利用距离长短表征群体图像之间的相关性,相关性越高,距离越短。而要保证用户能随时读取图像,必须对树形结构进行深度限制,深度越大,用户读取图片需要时间越长。现有得到深度限制的最小生成树的方法主要有图像集层次聚类方法和最小化预测代价方法。图像集层次方法是利用传统自下而上或者自上而下的方法对群体图像进行聚类,形成一个具有深度限制的聚类树形结构,如HAP方法,但此类方法通常得到的树形结构并不是最优结构,编码效率提升不高;最小化预测代价方法则是对无向图进行搜索,得到深度限制的最小生成树,该类方法主要利用图论知识或智能算法实现,主要实现方式有一次性构造树OTTC、蚁群方法、遗传方法等,但此类方法通常不适用于群体图像。

Yonggen Ling,Oscar C.Au,Ruobing Zou,Jiahao Pang,Haiyan Yang,Amin Zheng在其发表的论文“Photo Album Compression By Leveraging Temporal-Spatial Correlations and HEVC”(《IEEE International Symposium on Circuits&Systems》2014)提出采用HAP方法得到深度限制的有向图最小生成树,HAP方法是通过聚类的思想将图像分类并形成中心点,低层的聚类中心点作为高层的图像,依次从低层到高层迭代,直至最后得到一个聚类中心作为根图像。但HAP方法通过公式自动迭代,过程难于理解,且对于图像个数较多,相关性相差较大的情况,该聚类方法往往会产生生成树代价过大的情况。

石磊,冯祖针,杨建强提出的“蚁群算法求解直径约束最小生成树问题”(《红河学院学报》2012)通过蚁群算法,模拟蚂蚁寻路的方法,改进图像选择规则,对满足直径约束的图像进行离心率筛选,在走过的路径上留下信息素,迭代完成后得到满足条件的最小生成树。该方法的提出主要适用于无向图,而对抽象结果为有向图的群体图像不适用。

王立东在其硕士学位论文中“约束最小生成树算法的研究”(西安电子科技大学,2009)提出了解决直径约束的最小生成树的遗传算法以及一次性构造树方法OTTC,该遗传算法通过选择、交叉、变异的特定的适应度函数对有向边进行筛选,最终得到最小树形图;一次性构造树方法OTTC是基于贪婪思想,每次迭代选择最近的顶点,在不违背直径限制的条件下加入这个顶点,不断更新在树中的图像到不在树中的图像的距离,并相应选出最短距离,直至生成一棵树,但这两种方法主要使用于无向图,并不适用于群体图像结构生成。

综上,现有方法基本不适应生成群体图像编码结构,而HAP方法,对于图像之间相关性相差较大的情况下,得到的生成树的代价较大,编码效率不够高。



技术实现要素:

本发明在于针对上述现有技术的不足,提出一种群体图像编码结构生成方法,以减小生成树的代价,提高群体图像编码效率。

本发明技术思路是:将群体图像抽象为有权有向图,依次搜索根节点s经过1个中间节点,2个中间节点,…n个中间节点到达其余所有节点的最短路径,得到一棵有重复节点的生成树;通过遍历根节点s到其余每个节点的路径,去除重复节点,得到群体图像编码结构。其实现步骤包括如下:

(1)构造有权有向图:

将群体图像抽象为有权有向图,即将图像抽象为节点,并根据图像的相关性表征两两节点之间的距离,相关性越大,距离越短,得到满足各个节点之间相互关系的有权有向图G;

(2)初始化限制深度D,节点个数为m,节点j的当前距离Cj为根节点S到该节点j的直接距离,根节点S到节点j经过的中间节点数n置为1,其中j=1,2,...m且j≠s;

(3)定义节点j的距离变量Lj等于当前距离Cj,定义为经过n个中间节点数时节点j的直接前驱节点,其中0≤n≤D-2,当不经过中间节点时,

(4)判断中间节点数n是否大于D-2,若是,则跳转到步骤(7),否则,更新节点j的当前距离Cj

(5)判断节点j的当前距离Cj是否等于距离变量Lj,若是,令节点j的直接前驱节点执行步骤(6),否则,直接执行步骤(6);

(6)判断是否所有节点j都已更新当前距离Cj,若是,更新所有节点j的距离变量Lj等于当前距离Cj,中间节点数n加1,返回步骤(4),否则,直接返回步骤(4);

(7)判断限制深度D是否大于1,若是,令根节点S到节点j的实际中间节点数Mj=D-2,执行步骤(8),否则,令所有节点j的最终前驱Fj等于根节点S,跳转到步骤(11);

(8)取节点j,令节点j的最终前驱节点Fj等于节点j的直接前驱节点判断Fj是否为根节点S,若是,则令实际中间节点个数Mj等于0,跳转到步骤(10),否则,执行步骤(9);

(9)通过回溯根节点S到节点j的路径去除重复节点;

(10)判断根节点S到所有节点的路径是否已经回溯,若是,则执行步骤(11),否则,返回步骤(8);

(11)将每个节点j的最终前驱Fj输出,并将节点还原为图像,构成群体图像编码结构。

本发明通过限制中间节点的个数,逐层更新根节点s到达其余节点的最短路径,并通过遍历去除重复节点,得到一棵深度受限的最小生成树,相对于现有HAP方法,易于实现,便于理解,且对图像个数较多、相关性相差较大的群体图像得到结构更优,编码效率更高。

附图说明

图1为本发明的实现流程图;

图2为本发明与现有HAP方法的群体图像编码效率曲线对比图。

具体实施方式

参照附图1,对本发明的做进一步的详细描述。

步骤1,构造有权有向图:

将群体图像抽象为有权有向图,即将图像抽象为节点,节点之间的距离表示图像间的相关性,即通过尺度不变特征转换方法SIFT匹配两两图像的局部特征点,并依次计算两两匹配特征点的距离,统计平均后得到两两图像之间的平均距离E,相关性越大,平均距离E越小,得到满足各个节点之间相互关系的有权有向图G。

步骤2,初始化:

初始化限制深度D和节点个数为m;

将节点j的当前距离Cj初始化为根节点S到该节点j的直接距离,其中j=1,2,...m且j≠s;

将根节点S到节点j经过的中间节点数n初始化为1。

步骤3,定义变量:

定义节点j的距离变量Lj,即将当前距离Cj赋值给距离变量Lj

定义为经过n个中间节点数时节点j的直接前驱节点,其中0≤n≤D-2,当不经过中间节点时,

步骤4,判断中间节点数n是否大于D-2,若是,则跳转到步骤(7),否则,更新节点j的当前距离Cj

所述更新节点j的当前距离Cj,按如下步骤进行:

(4a)取节点u,其中u≠s且u≠j,判断节点j当前距离Cj是否大于节点u的距离变量Lu与节点u到节点j的直接距离之和,若是,则将节点j的当前距离Cj更新为节点u的距离变量Lu与节点u到节点j的直接距离之和,并将节点j的直接前驱节点更新为节点u,再执行步骤(4b),否则,直接执行步骤(4b);

(4b)判断满足u≠s且u≠j的节点是否已经全部经过(4a)处理,若是,则执行步骤(5),否则,返回步骤(4a)。

步骤5,判断节点j的当前距离Cj是否等于距离变量Lj,若是,则令节点j的直接前驱节点再执行步骤(6),否则,直接执行步骤(6)。

步骤6,判断是否所有节点j都已对当前距离Cj进行了更新,若是,则先将所有节点j的距离变量Lj更新为当前距离Cj,再将中间节点数n加1,返回步骤(4),否则,直接返回步骤(4)。

步骤7,判断限制深度D是否大于1,若是,将根节点S到节点j的实际中间节点数Mj赋值为D减2,执行步骤(8),否则,将所有节点j的最终前驱节点Fj赋值为根节点S,跳转到步骤(11)。

步骤8,取节点j,将节点j的最终前驱节点Fj赋值为节点j的直接前驱节点判断Fj是否为根节点S,若是,则将实际中间节点个数Mj更新为0,跳转到步骤(10),否则,执行步骤(9)。

步骤9:回溯根节点S到节点j的实际路径。

(9a)定义节点变量x,将节点j的最终前驱节点Fj赋值给x,定义变量y,将限制深度D减2赋值给y;

(9b)更新节点变量x的最终前驱节点Fx及实际中间节点数Mx

判断根节点S到节点变量x的实际中间节点数Mx是否大于变量y减1,若是,则将x的最终前驱节点Fx更新为x的直接前驱节点将实际中间节点数Mx更新为变量y-1,执行步骤(9c),否则,直接执行步骤(9c)。

(9c)令变量y=y-1,判断该变量是否大于等于0,若是,将节点变量x更新为x的直接前驱节点执行(9d),否则,执行步骤(10);

(9d)判断节点变量x是否为根节点S,若是,则说明根节点S到节点j的路径已经回溯完成,执行步骤(10),否则,返回步骤(9b)。

步骤10,判断根节点S到所有节点的路径是否已经回溯,若是,则执行步骤(11),否则,返回步骤(8)。

步骤11,将每个节点j的最终前驱Fj输出,并将节点还原为图像,根据两两图像之间的前驱关系得到编码参考关系,构成群体图像编码结构。

本发明的效果通过以下实验进一步说明:

1.实验条件:

本发明仿真实验是在windows7系统,处理器Intel(R)Core(Tm)i5-2450M CPU主频2.50GHz,RAM 4GB的环境下进行的。编程语言是C++,编程软件为VS2010。

本发明选取3个测试图集:图集1抽象为有权有向图后,节点个数为7,总边数为42;图集2抽象为有权有向图后,节点个数为16,总边数为240;图集3抽象为有权有向图后,节点个数为18,总边数为306。

2.实验内容及结果分析:

仿真1,使用本发明与现有的HAP方法分别对上述3个图集进行三层限制、四层限制、五层限制,得到的群体图像编码结构对应的最小生成树权值如表1。

表1两种方法测试结果

从表1可以看出:图集1中,总图像个数较少,生成的群体图像编码结构为三层树形结构,在进行4层、5层的深度限制时,也会得到3层结构,所以两种方法在限制3层、4层、5层得到的最小生成树的权值都一样,但本发明的权值更小;图集2中,在进行3层和5层深度限制时,本发明能够得到比HAP方法更优的解,而在进行4层深度限制时,本发明得到最小生成树的权值略大于HAP方法,这是因为图集2中任意两幅图像之间的相关性很强,本发明从根节点开始搜索时,基本不需要经过中间节点就可以到达其他节点,造成总权值较大;图集3中,本发明在深度限制为3层、4层、5层时得到的权值均小于HAP方法,原因是HAP方法会依照距离相似性将节点分为多个类,在多个类之间找到各自的中心节点,而这些中心节点权值差异较大,在下一次聚类时难以找到距离小的边,从而导致得到的生成树权值很大,而本发明避免了将距离相似的节点作为一类,所以得到的生成树权值比HAP小。

仿真2,使用本发明和HAP方法图集1分别进行3层、4层、5层深度限制,得到群体图像编码结构,并按照该结构进行编码,得到两种方法的编码效率对比曲线图,结果如图2。

从图2可以看出,针对图集1,本发明在3层、4层、5层深度限制时,其编码效率均优于HAP方法。

综上所述,本发明相对于HAP方法,易于理解,得到的群体图像编码结构提升了编码效率。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1