无线网络中三维模型拓扑数据鲁棒传输的编码和重构方法

文档序号:7795174阅读:344来源:国知局
无线网络中三维模型拓扑数据鲁棒传输的编码和重构方法
【专利摘要】本发明公开了一种无线网络中三维模型拓扑数据鲁棒传输的编码和重构方法。本发明首先在服务端将三维模型拓扑数据编码。具体是:按照一定规则遍历三维模型的顶点,得到每个顶点的遍历序号、度信息及相邻点信息。其次,根据改进的顺序着色算法,按照顶点被遍历的序号将每个顶点着上颜色。然后,对模型按照颜色分组,将同种颜色顶点作为一个分组。最后,对分组使用哈夫曼编码进行压缩。然后在服务端将三维模型拓扑重构,具体是:接收到分组后,将接收到的顶点按序号从小到大的顺序排序,再基于价驱动解码方法重构模型拓扑结构。本发明通过有效的模型拓扑数据编码和客户端重构技术,使三维模型在高丢包率的网络传输时,仍能获得较好的重构效果。
【专利说明】无线网络中三维模型拓扑数据鲁棒传输的编码和重构方法
【技术领域】
[0001]本发明属于无线网络中与便携移动设备相关的多媒体【技术领域】,特别涉及一种无线网络中三维模型拓扑数据鲁棒传输的编码和重构方法。
【背景技术】
[0002]2013年底移动、联通和电信三大运营商获得4G运营牌照,标志着我国正式进入4G时代。随着3G/4G移动网络的逐步铺开和无线网络的广泛应用,面向手持移动设备的各种三维图形应用得到了迅速发展。然而,无线网络的窄带宽和高丢包率及移动设备本身所固有的有限功耗供给和计算存储资源等缺陷,还不能很好地满足三维图形在移动计算终端中的强烈真实感展现的要求。如何在无线移动网络上对三维图形数据进行鲁棒传输并在移动设备上展现真实感3D场景成为目前研究的热点问题。
[0003]不同于有线网络,无线网络由于信号衰退、信道噪声以及终端节点的移动性导致数据在传输中有较高的丢失率和误码率。虽然相对于传统2G移动网络,3G/4G移动网络的丢包率有所降低,但对于终端应用程序用户来说,丢包所带来视觉影响仍然较为严重。为克服网络丢包的缺陷,研究者们提出了多种解决方法。这些方法通常分为基于网络和模型两大类。
[0004]基于网络的方法的相关研究在网络传输层提出了若干解决方法,从而改善无线网络中传输协议的性能。此类方法通常使用重传或FEC客服数据链路层丢包现象,但重传数据浪费网络带宽并且耗时,明显地影响了模型的整体传输速度和绘制视觉效果。基于模型的方法考虑到模型编码存在的依赖性问题。其中,典型的基于分割方法的目标就是减少模型数据之间的依赖性,将整个模型分成多个独立的片段并进行分包编码。这样一个分组的丢失所带来的影响被限制在其所在的片段这样一个局部范围之内。但是,模型被分割后的片段之间的边界处理尤为重要,在传输中通常对其采用冗余的错误复原编码方法,从而降低了模型编码效率。并且,基于此种分割方法丢失的分组信息不能正常恢复,从而将会影响模型重构效果。
[0005]因此,通过有效的模型编码方法,降低甚至切断模型数据之间的依赖性;同时,设计一种重构方法,最大程度恢复丢失的信息,将能够极大地减少因无线网络高丢包率而对三维模型在移动客户端的绘制视觉效果造成的影响。

【发明内容】

[0006]本发明针对现有技术的不足,提供了一种无线网络中三维模型拓扑数据鲁棒传输的编码和重构方法。
[0007]本发明解决其技术问题所采用的技术方案如下:
[0008]I)三维模型拓扑数据编码。为适应真实不稳定的无线网络,提出一种面向三维模型拓扑数据鲁棒传输的编码方法。首先,按照一定规则遍历三维模型的顶点,得到每个顶点的遍历序号、度信息及相邻点信息。其次,根据改进的顺序着色算法,按照顶点被遍历的序号将每个顶点着上颜色。然后,对模型按照颜色分组,将同种颜色顶点作为一个分组。最后,对分组使用哈夫曼编码进行压缩。
[0009]2)三维模型拓扑重构。在服务端,三维模型拓扑经过编码,采用非可靠的UDP协议传输,在客户端,接收到分组后,将接收到的顶点按序号从小到大的顺序排序,再基于价驱动解码方法重构模型拓扑结构。基于改进后的编码方法,客户端针对丢失的数据主要从顶点的度及遍历方法结合、顶点的相邻点信息方面考虑重构模型。
[0010]本发明与【背景技术】相比,具有的有益的效果是:
[0011]本发明是一种适用于无线有损网络中三维模型拓扑数据编码和重构方法,能够在移动客户端实现三维模型拓扑丢失后仍较大程度恢复模型的功能。
【专利附图】

【附图说明】
[0012]图1三维网格遍历结果;
[0013]图2顶点着色结果;
[0014]图3三维模型重构流程图。
【具体实施方式】
[0015]I)三维模型 拓扑数据编码。
[0016]首先,遍历三维模型。对任一三维模型,遍历三维模型拓扑过程为:
[0017]步骤1:在网格上任选一三角形,将其三顶点放入一个活动列表中(ActiveList),并取其中一个顶点作为焦点(Focus)。
[0018]步骤2:按逆时针次序遍历所有与该焦点连接的未访问的边,每处理一条边,对应的新顶点添加到活动列表。活动列表有新的顶点加入时,都会输出一个Add〈degree>命令,记录该顶点的度。
[0019]步骤3:当处理完所有与焦点连接的边之后,把活动列表中的下一个顶点选为焦点,重复(2)操作。
[0020]步骤4:直至网格中所有的边被遍历完。生成许多构成拓扑结构的顶点信息。每个顶点拓扑信息包括其遍历序号、度、额外信息及相邻点的序号、度和额外信息。
[0021]本发明遍历结果中每个顶点信息格式如下:
[0022]{某顶点序号,某顶点度,该顶点额外信息[(第I个相邻点的序号,第2个相邻点的序号,……,第η个相邻点的序号),(第I个相邻点的度,额外信息,第2个相邻点的度,额外信息,……,Mn个相邻点的度,额外信息)]}
[0023]其中,顶点序号表示三维模型中顶点被遍历的顺序号码,如1、2、3、……(如图1);顶点度表示顶点所连接边的个数;η表示某顶点的相邻点个数;额外信息是标注遍历三维模型过程中遇到的特殊情况(split, dummy, merge等情况)。
[0024]其次,执行顶点着色。本发明提出一个改进的顺序着色算法,按照顶点序号对其进行着色。
[0025]设图G的顶点数为n,对图G进行顶点着色,本发明改进的顺序着色算法总体步骤如下。
[0026]步骤1:用i表示顶点序号,i=lo[0027]步骤2:用&表示给顶点i着色为第&种颜色,j=l。
[0028]步骤3:对第i个顶点着色,考虑它的一邻接点和二邻接点,如果都没有使用第Cj种颜色,则给顶点i着色为第&种颜色,并转第5步;只要有一个顶点使用了第&种颜色,则转第4步。
[0029]步骤4:Cj = Cj+1 ;并转第3步。
[0030]步骤5:若还有顶点未着色,则i=i+l,并转向第2步,否则算法结束。
[0031]如图2是三维模型按顶点遍历顺序着色后的结果。
[0032]然后,对模型按照颜色分组。本发明将同种颜色顶点作为一个分组。对于大模型,同种颜色顶点按序分多个分组。
[0033]最后,对分组进行压缩。本发明使用哈夫曼编码对分组进行压缩。
[0034]2)三维模型拓扑重构。
[0035]在服务端三维模型拓扑经过编码,采用非可靠的UDP协议传输,在客户端接收到分组后,本发明将接收到的顶点按序号从小到大的顺序排序,再基于价驱动解码方法重构模型拓扑结构。基于改进后的编码方法,本发明客户端针对丢失的数据主要从顶点的度及遍历方法结合、顶点的相邻点信息方面考虑重构模型。但是,无线网络的不稳定,导致某些顶点信息丢失,本发明提出以下方法恢复:
[0036]三维模型拓扑重构时,当焦点F的度满,焦点F转移至下一个顶点NF,而NF的信息丢失,不知NF的度(即相邻点个数)。此时,从接收的分组中,寻找顶点序号Vn0.大于焦点序号Fn0.并且d= I Vn0.-Fn0.|最小的顶点Vtl,利用该顶点Vtl与其相邻点的关系,将V。作为焦点,继续恢复模型,先顺时针恢复,直到将NF的相邻点恢复出,再逆时针恢复模型。其中:若Vtl及其相邻点都已恢复出,按序寻找下一个大于焦点序号的顶点,直到该顶点与其相邻点没完全被恢复出为止。
[0037]下面针对Vtl列举四种情况:
[0038]①如果顶点Vci的相邻点有一个顶点没被恢复(不包括Vfl及Vc1-1),那么增加这一顶点同时也会产生两个新三角形,新顶点设为\,新三角形为Of0, V1, Vtl-1 >、<V0, V1, VfD。
[0039]②如果顶点Vci的相邻点有两个顶点没被恢复(不包括Vfl及Vc1-1),分别为\、V3(V2<v3),则会新增三个三角形〈V。,V2, v0-l>,〈V。,V2, V3>、〈V。,V3, ν0+1>ο
[0040]③如果顶点Vci的相邻点有三个顶点没被恢复(不包括Vd+Ι及Vc1-1),分别为v4、v5、V6 (v4〈v5〈v6),则会新增四个三角形〈VQ-1,V0, V4>、〈V。,V4, V5>、〈V。,V5, V6>、<V0, V6, V0+l>o
[0041]④若顶点Vtl的相邻中没被恢复的包括Vfl和Vtl-1,那么在上面①②③情况下再新增三角形。分两种情况:(a)如果已恢复的顶点为一个V7,新增三角形〈I Vc1-1J7X〈V。,V0+l, V7> ; (b)如果已恢复的顶点是两个V8、V9,新增三角形〈V。,V8, v0-l>,〈V。,V8, \>、<V0, VI,V。
[0042]第①②③情况模型恢复:
[0043]顺时针方向恢复:即Vtl及其相邻点恢复完,焦点移至Vtl-1,由Vtl-1的度恢复其相邻点,这里顶点是按降序顺序恢复。恢复到顶点NF相邻点时,不知道NF的度,通过NF+1与NF-1作为焦点时恢复的最后一个顶点来判断NF是否有相邻点未被恢复。比如说NF+1与NF-1作为焦点时恢复的最后一个顶点分别为14、12,那么顶点13肯定是NF的相邻点。
[0044]如果在顺时针恢复过程还未恢复到NF作为焦点的相邻点时,那么顺时针恢复暂时停止,焦点移至Vo+l,继续逆时针恢复模型。
[0045]第④种情况模型恢复:
[0046](a)情况焦点移至V7-1,顺时针方向恢复;逆时针恢复时,焦点移至V7+l,继续重构;(b)情况焦点移至V8-1,顺时针方向恢复;逆时针恢复时,焦点移至V9+l,继续重构。如果再次碰到下一个焦点信息丢失情况,此时,将焦点移至Vtl-1,重复①②③情况的模型恢复。
[0047]如图3展示了三维模型重构的一个过程。此时假设客户端仅仅接收到颜色为C2的分组,该分组包含顶点有2、14、17、27、36、39,每个顶点包含相邻点信息,那么客户端收到的所有信息如下所示:
[0048]{2,7 [ (1,3,7,8,9,10,11) (6,6,6,4,6,6,6)]}
[0049]{14,6 [ (4,13,15,29,30,31) (6,6,6,5,4,5) ]}
[0050]{17,5 [ (5,16,18,33,34) (7,5,6,5,5) ]}
[0051]{27,4 [(12,26,28) (6,5,5)]}
[0052]{36,5 [ (19,20,35,37) (5,6,5,5) ]}
[0053]{39,5 [ (21,22,38,40) (8,5,4,4,dummy 18) ]}
[0054]根据以上顶点信息,三维模型重构流程过程如下:
[0055]图3(a):由顶点2及相邻点1、3初始化三角形,顶点I为焦点。顶点1、2、3的度分别为6、7、6,图中虚线表不未恢复的相邻点。
[0056]图3(b):顶点I的度为6,平面网格恢复到顶点7。因顶点6的信息没有,故其相邻点个数未知,不能使用虚线表示未恢复的相邻点个数。
[0057]图3(c):顶点I的度已满,焦点移至顶点2。
[0058]图3(d):同上方法三角网格恢复至顶点18,此时焦点为6。但是,顶点6的度未知,不能以6为焦点继续恢复模型。
[0059]图3(e):从接收到的信息中,找到顶点序号(Vn0.)大于焦点6 (Fn0.)并且d=|Vn0.-Fn0.|最小的顶点Vtl,此处,V0为顶点14。顶点14的相邻点29、30、31未被绘制,符合上面提到对V。列举的四种情况中的情况,那么新增三个三角形,〈13,14,29>、<14,29,30>、〈14,30,15>。并且焦点移至顶点13,顺时针恢复模型。
[0060]图3 (f):顺时针恢复模型至顶点20,此时顶点7的度已满,所有相邻点都被恢复。
[0061]图3(g):焦点移至顶点15,准备下一阶段的逆时针恢复。
[0062]图3(h):顶点7作为焦点时恢复的最后一个顶点是20,顶点6作为焦点时恢复的最后一个顶点是18,而顶点7的度已满,所以顶点19应该是顶点6的相邻点,新增三角形〈6,19,20X6,18,19>。
[0063]图3(i):依次以15、16、17、18、19、20、21、22为焦点,逆时针恢复平面网格直顶点40。
[0064]图3 (j):焦点移至23。
[0065]图3 (k):从顶点40的额外信息dummyl8,添加虚拟顶点,将从40倒数18个顶点(40,39,38,37,36,35,34,33,32,31,30,29,28,27,26,25,24,23)与之相连。
[0066]图3(1):平面网格完成重构。
【权利要求】
1.无线网络中三维模型拓扑数据鲁棒传输的编码和重构方法,其特征在于该方法包括如下步骤: 1)服务端的三维模型拓扑数据编码,具体是: 首先,按照一定规则遍历三维模型的顶点,得到每个顶点的拓扑信息,包括如下步骤: 步骤1-1:在网格上任选一三角形,将其三顶点放入一个活动列表中,并取其中一个顶点作为焦点; 步骤1-2:按逆时针次序遍历所有与该焦点连接的未访问的边,每处理一条边,对应的新顶点添加到活动列表;活动列表有新的顶点加入时,都会输出一个Add〈degree>命令,记录该顶点的度; 步骤1-3:当处理完所有与焦点连接的边之后,把活动列表中的下一个顶点选为焦点,重复步骤1-2操作; 步骤1-4:直至网格中所有的边被遍历完; 其次,根据改进的顺序着色算法,按照顶点被遍历的序号将每个顶点着上颜色,包括如下步骤: 步骤2-1:用i表示顶点序号,i=l ; 步骤2-2:用&表示给顶点i着色为第&种颜色,j=l ; 步骤2-3:对第i个顶点着色,考虑它的一邻接点和二邻接点,如果都没有使用第Cj种颜色,则给顶点i着色为第&种颜色,并转步骤2-5 ;只要有一个顶点使用了第&种颜色,则转步骤2-4 ; 步骤2-4 =Cj=Cfl ;并转步骤2-3 ; 步骤2-5:若还有顶点未着色,则i=i+l,并转向步骤2-2,否则算法结束; 然后,对模型按照颜色分组,将同种颜色顶点作为一个分组; 最后,对分组使用哈夫曼编码进行压缩; 2)客户端的三维模型拓扑重构,具体是: 三维模型拓扑重构时,当焦点F的度满,焦点F转移至下一个顶点NF,而NF的信息丢失,不知NF的度;此时,从接收的分组中,寻找顶点序号Vn0.大于焦点序号Fn0.并且d= I Vn0.-Fn0.|最小的顶点Vtl,利用该顶点Vtl与其相邻点的关系,将Vtl作为焦点,继续恢复模型,先顺时针恢复,直到将NF的相邻点恢复出,再逆时针恢复模型;其中:若Vtl及其相邻点都已恢复出,按序寻找下一个大于焦点序号的顶点,直到该顶点与其相邻点没完全被恢复出为止。
2.根据权利要求1所述的无线网络中三维模型拓扑数据鲁棒传输的编码和重构方法,其特征在于:所述的每个顶点拓扑信息包括其遍历序号、度、额外信息及相邻点的序号、度和额外信息,其中,顶点序号表示三维模型中顶点被遍历的顺序号码,顶点度表示顶点所连接边的个数;额外信息是标注遍历三维模型过程中遇到的特殊情况。
【文档编号】H04L1/00GK103840871SQ201410016396
【公开日】2014年6月4日 申请日期:2014年1月14日 优先权日:2014年1月14日
【发明者】杨柏林, 王会琴, 王勋, 江照意 申请人:浙江工商大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1