根据曲率对三维模型进行空域分割的方法

文档序号:9811389阅读:363来源:国知局
根据曲率对三维模型进行空域分割的方法
【技术领域】
[0001] 本发明属于三维动画模型压缩的多媒体技术领域,具体涉及一种根据曲率对三维 模型进行空域分割的方法。
【背景技术】
[0002] 随着三维数据获取手段的不断丰富,计算机图形学相关理论及技术的日臻成熟和 网络技术的迅猛发展,三维模型作为继文本、音频、图像(图形)和视频之后的第五种多媒体 数据类型在工业制造、产品展示、建筑设计、机器人技术、医学、电子商务、教育培训、军事模 拟仿真以及影视娱乐等诸多领域里扮演着日益重要的角色并发挥其独有的优势。
[0003] 但日益精细完美的三维模型被广泛应用的同时,其数据量和复杂度的激增给PC机 图形显示卡、手持移动计算终端的图形处理能力及网络带宽带来了极大的挑战,这无疑严 重阻碍了该类型媒体的使用和传播。要解决这一问题,仅仅依靠提高处理器的处理速度和 能力、增加存储器容量和网络带宽等硬件方面的措施是不现实的,必须还要采取一些相应 的算法来减少三维模型数据,三维几何数据压缩技术便是其中一种行之有效的方法。
[0004] 对于客户端而言,所需的三维模型存储数据越少、重构误差越小越好。当然前人也 研究了一些方法,对于聚类来说,有效且最常用的是κ-means聚类算法。但该算法存在这其 固有的缺点,首先算法中k是事先给定的,该k值的选定是很难估计的,因为在大多数情况 下,并不知道给定的数据集应该分成多少个类别才合适;其次该算法对初始值的选取依赖 性极大,而且算法常陷入局部极小解,不同的初始值结果往往不同;最后该算法需要不断地 进行样本分类调整,不断地计算调整后的新聚类中心,因此当数据量非常大时,该算法的时 间开销也很大。

【发明内容】

[0005] 本发明针对现有聚类技术在三维场景应用方面的不足,提供了一种根据曲率对三 维模型进行空域分割的方法。
[0006] 本发明解决其技术问题所采用的技术方案如下:
[0007] 步骤一:求出每个顶点在所有帧中的曲率期望。
[0008] 假设帧数为F,每一帧所含有的顶点数为N,F>0,N>0。将待求曲率的顶点在所有帧 中的坐标连接成曲线,在某帧中的曲率即为该曲线上对应点的曲率将求出的曲率保存至元 胞矩阵k中,其中k = cell(l,N),k{i}为一行向量,且length(k{i}) =F-2,1 < i 仝 N。
[0009] 求出每个顶点在所有帧中的曲率期望存入矩阵E中并画出曲率期望图,其中E为一 行向量,且length(E) =N:
[0011]步骤二:根据顶点曲率期望将顶点初始归为S块,即将曲率期望相近的顶点分为一 块,将其索引存入矩阵A中,length(A)=S,A{i}均为一列向量;
[0012]步骤三:对上述的S块根据拓扑进一步分块,将S块中拓扑连续的顶点归为一块并 将顶点索引存入元胞矩阵B中,length(B)=S,具体如下:
[0013]假设η表示目前正在处理A{ i}中拓扑连续的第η块,初始n= 1,n的最终值表示本块 即B{i}中所含拓扑连续的块数。
[0014] 从A{i}中随机选取一点t当作特殊点放入矩阵B{i} {η}中,根据拓扑信息将此块即 A{i}中与t拓扑连续的顶点取出继续放入B{i} {η}中,然后从矩阵B{i} {η}中选取没有被当 作特殊点的顶点作为特殊点继续从A{ i}中找寻与特殊点拓扑连续的点加入到B{ i} {η}中, 直到任意从A{i}选取一个顶点都不能与B{i} {η}中的顶点拓扑连续为止。
[0015] 当然A{i}中可能存在两块、三块甚至更多拓扑连续的块,但块与块间拓扑是不连 续的。上述的B{i} {η}仅仅是找到其中的一块而已,如果发现此时A{i}不为空说明里面还有 与拓扑不连续的顶点,则η = η+1,重复步骤三直到A{i}中没有顶点为止。
[0016] 步骤四:将上述进一步划分的块进行相邻块间的聚类。
[0017] 若B{i}中的块能与B{i + 1}中包含的某块中顶点拓扑连续且这两块中有一块所含 顶点少于总顶点数的5%时,则可进一步将这两块合并组成更大的一块。
[0018] 本发明的有益效果:本发明用曲率衡量模型的运动剧烈程度,将顶点曲率期望相 近且拓扑连续的点聚为一类。这样便可使拓扑连续且具有相同的运动趋势的顶点聚为一 类,使得分割效果更优。
【具体实施方式】
[0019] 以下对本发明作进一步说明。
[0020] 本发明方法具体是:
[0021] 步骤一:求出每个顶点在所有帧中的曲率期望。
[0022] 假设帧数为F,每一帧所含有的顶点数为N,F>0,N>0。将待求曲率的顶点在所有帧 中的坐标连接成曲线,在某帧中的曲率即为该曲线上对应点的曲率将求出的曲率保存至元 胞矩阵1^中,其中1^ = 〇611(1,1'〇,1^{;〇为一行向量,且161^七11(1^{;〇)=?-2,1<;[<1'1。求出每 个顶点在所有帧中的曲率期望存入矩阵E中并画出曲率期望图,其中E为一行向量,且 length(E) =N:
[0024]步骤二:根据顶点曲率期望将顶点初始归为S块,即将曲率期望相近的顶点分为一 块,将其索引存入矩阵A中,length(A)=S,A{i}均为一列向量。
[0025]步骤三:对上述的S块根据拓扑进一步分块,将S块中拓扑连续的顶点归为一块并 将顶点索引存入元胞矩阵B中,length(B)=S,以B{i}为例,其中i = l···,S具体做法如下: [0026]假设η表示目前正在处理A{i}中拓扑连续的第η块,初始n=l,n的最终值表示本块 即B{i}中所含拓扑连续的块数。
[0027]从A{i}中随机选取一点t当作特殊点放入矩阵B{i} {η}中,根据拓扑信息将此块即 A{i}中与t拓扑连续的顶点取出继续放入B{i} {η}中,然后从矩阵B{i} {η}中选取没有被当 作特殊点的顶点作为特殊点继续从A{ i}中找寻与特殊点拓扑连续的点加入到B{ i} {η}中, 直到任意从A{i}选取一个顶点都不能与B{i} {η}中的顶点拓扑连续为止。需要说明的是每 次找下一个特殊点时均把上一个特殊点在原始A{i}中删除以免重复。
[0028] 当然A{i}中可能存在两块、三块甚至更多拓扑连续的块,但块与块间拓扑是不连 续的。上述的B{i} {η}仅仅是找到其中的一块而已,如果发现此时A{i}不为空说明里面还有 与拓扑不连续的顶点,则η = η+1,重复步骤三直到A{i}中没有顶点为止。
[0029] 步骤四:将上述进一步划分的块进行相邻块间的聚类。
[0030] 若B{i}中的块能与BU + 1}中包含的某块中顶点拓扑连续且这两块中有一块所含 顶点少于总顶点数的5%时,,则可进一步将这两块合并组成更大的一块。这样便完成了最 终的分割。
【主权项】
1.根据曲率对Ξ维模型进行空域分割的方法,其特征在于该方法包括如下步骤: 步骤一:求出每个顶点在所有帖中的曲率期望; 假设帖数为F,每一帖所含有的顶点数为N,F〉0,N〉0;将待求曲率的顶点在所有帖中的 坐标连接成曲线,在某帖中的曲率即为该曲线上对应点的曲率将求出的曲率保存至元胞矩 阵k中,其中k = cell(l,N),k{i}为一行向量,且lengtMk{i})=F-2,l£i£N; 求出每个顶点在所有帖中的曲率期望存入矩阵E中并画出曲率期望图,其中E为一行向 量,且 lengtME) =N:1 < / < /V 步骤二:根据顶点曲率期望将顶点初始归为s块,即将曲率期望相近的顶点分为一块, 将其索引存入矩阵A中,length(A)=S,A{i}均为一列向量; 步骤Ξ:对上述的S块根据拓扑进一步分块,将S块中拓扑连续的顶点归为一块并将顶 点索引存入元胞矩阵B中,length(B)=S,具体如下: 假设η表示目前正在处理A{i}中拓扑连续的第η块,初始n=l,n的最终值表示本块即B U}中所含拓扑连续的块数; 从AU}中随机选取一点t当作特殊点放入矩阵BU} {η}中,根据拓扑信息将此块即AU} 中与t拓扑连续的顶点取出继续放入BU} {η}中,然后从矩阵BU} {η}中选取没有被当作特 殊点的顶点作为特殊点继续从A{i}中找寻与特殊点拓扑连续的点加入到BU} {η}中,直到 任意从AU}选取一个顶点都不能与BU} {η}中的顶点拓扑连续为止; 当然AU}中可能存在两块、Ξ块甚至更多拓扑连续的块,但块与块间拓扑是不连续的; 上述的B{i} {η}仅仅是找到其中的一块而已,如果发现此时AU}不为空说明里面还有与Β UHn}拓扑不连续的顶点,则η = η+1,重复步骤Ξ直到AU}中没有顶点为止; 步骤四:将上述进一步划分的块进行相邻块间的聚类; 若B{i}中的块能与B{i + 1}中包含的某块中顶点拓扑连续且运两块中有一块所含顶点 少于总顶点数的5%,则可进一步将运两块合并组成更大的一块。
【专利摘要】本发明公开了一种根据曲率对三维模型进行空域分割的方法。本发明首先求出每个顶点在所有帧中的曲率期望。其次根据顶点曲率期望将顶点初始归为块。然后对上述的s块根据拓扑进一步分块,将s块中拓扑连续的顶点归为一块并将顶点索引存入元胞矩阵B中,最后将上述进一步划分的块进行相邻块间的聚类。本发明用曲率衡量模型的运动剧烈程度,将顶点曲率期望相近且拓扑连续的点聚为一类。这样便可使拓扑连续且具有相同的运动趋势的顶点聚为一类,使得分割效果更优。
【IPC分类】G06T7/00
【公开号】CN105574867
【申请号】CN201510937455
【发明人】杨柏林, 张露红, 金剑秋, 王勋
【申请人】浙江工商大学
【公开日】2016年5月11日
【申请日】2015年12月15日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1