CN104680567A - 根据曲率对三维模型进行帧聚类的方法 - Google Patents
根据曲率对三维模型进行帧聚类的方法 Download PDFInfo
- Publication number
- CN104680567A CN104680567A CN201510057363.3A CN201510057363A CN104680567A CN 104680567 A CN104680567 A CN 104680567A CN 201510057363 A CN201510057363 A CN 201510057363A CN 104680567 A CN104680567 A CN 104680567A
- Authority
- CN
- China
- Prior art keywords
- prime
- frame
- frames
- curvatures
- clustering
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 27
- 239000011159 matrix material Substances 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 abstract description 2
- 230000000694 effects Effects 0.000 abstract description 2
- 238000012163 sequencing technique Methods 0.000 abstract 1
- 238000004422 calculation algorithm Methods 0.000 description 8
- 238000006073 displacement reaction Methods 0.000 description 8
- 230000001133 acceleration Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000003814 drug Substances 0.000 description 1
- 238000003064 k means clustering Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Landscapes
- Image Analysis (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种根据曲率对三维模型进行帧聚类的方法。本发明首先求出所有帧的中心点。其次分别求出这些中心点在x,y,z方向上的一阶导数、二阶导数存入相应的矩阵。然后求各帧中心点的曲率,对所有曲率进行从大到小排序,再选取合适的前k个曲率。最后把选出来的k个曲率对应的帧索引当作聚类簇的节点,将所有的帧分为k+1簇。本发明利用曲率的物理意义、三维空间中曲率的求解方法及中心差分法求某离散点的导数,从而达到很好的聚类效果且计算简单。
Description
技术领域
本发明属于三维动画模型压缩的多媒体技术领域,具体涉及一种根据曲率对三维模型进行帧聚类的方法。
背景技术
随着三维数据获取手段的不断丰富,计算机图形学相关理论及技术的日臻成熟和网络技术的迅猛发展,三维模型作为继文本、音频、图像(图形)和视频之后的第五种多媒体数据类型在工业制造、产品展示、建筑设计、机器人技术、医学、电子商务、教育培训、军事模拟仿真以及影视娱乐等诸多领域里扮演着日益重要的角色并发挥其独有的优势。
但日益精细完美的三维模型被广泛应用的同时,其数据量和复杂度的激增给PC机图形显示卡、手持移动计算终端的图形处理能力及网络带宽带来了极大的挑战,这无疑严重阻碍了该类型媒体的使用和传播。要解决这一问题,仅仅依靠提高处理器的处理速度和能力、增加存储器容量和网络带宽等硬件方面的措施是不现实的,必须还要采取一些相应的算法来减少三维模型数据,三维几何数据压缩技术便是其中一种行之有效的方法。
对于客户端而言,所需的三维模型存储数据越少、重构误差越小越好。当然前人也研究了一些方法,对于聚类来说,有效且最常用的是K-means聚类算法。但该算法存在这其固有的缺点,首先算法中k是事先给定的,该k值的选定是很难估计的,因为在大多数情况下,并不知道给定的数据集应该分成多少个类别才合适;其次该算法对初始值的选取依赖性极大,而且算法常陷入局部极小解,不同的初始值结果往往不同;最后该算法需要不断地进行样本分类调整,不断地计算调整后的新聚类中心,因此当数据量非常大时,该算法的时间开销也很大。
发明内容
本发明针对现有聚类技术在三维场景应用方面的不足,提供了一种根据曲率对三维模型进行帧聚类的方法。
本发明解决其技术问题所采用的技术方案如下:
首先求出所有帧的中心点;
假设帧数为F(F>0),每一帧所含有的顶点数为N(N>0)。设为第f帧模型中任意一个顶点,为第f帧模型的中心点,其中的值分别如下:
将其保存于矩阵A中,A的维数是3*F。
其次分别求出这些中心点在x,y,z方向上的一阶导数、二阶导数存入相应的矩阵(用中心差分的方法去求导数)。具体做法如下:
结构动力学中的中心差分法是基于有限差分代替位移对时间求导(对位移一阶求导得到速度,对位移二阶求导得加速度)。如果采用等时间步长,Δt(i)=Δt(Δt为常数),用u代表位移,则速度和加速度的中心差分近似为:
u′(i)=[u(i+1)-u(i-1)]/(2Δt);
u″(i)=[u(i+1)-2u(i)+u(i-1)]/(Δt*Δt).
因而可以利用这种巧妙的方法来分别计算各帧三维离散顶点的导数。这里,分别对各顶点的x,y,z方向上使用中心差分法,即我们要计算第f帧的导数可利用第f‐1和f+1帧的坐标来计算,这样第一帧和最后一帧省略不计:
x,y,z方向上的一阶导数:
x(1,i)=(A(1,i+1)-A(1,i-1))/2;
y(1,i)=(A(2,i+1)-A(2,i-1))/2;
z(1,i)=(A(3,i+1)-A(3,i-1))/2.
x,y,z方向上的二阶导数:
xx(1,i)=A(1,i+1)-2*A(1,i)+A(1,i-1);
yy(1,i)=A(2,i+1)-2*A(2,i)+A(2,i-1);
zz(1,i)=A(3,i+1)-2*A(3,i)+A(3,i-1).
将它们分别存入如下阵中,
D1=[x;y;z];
D2=[xx;yy;zz].
然后求各帧中心点的曲率;
设空间曲线Γ由一般参数方程给定,则Γ在点的曲率为:
那么对于空间曲线公式则转换为:
然后对所有曲率进行从大到小排序,再选取合适的前k个曲率;
最后把选出来的k个曲率对应的帧索引当作聚类簇的节点,将所有的帧分为k+1簇。
本发明的有益结果:本发明是一种根据曲率对三维模型进行聚类的方法,利用曲率的物理意义、三维空间中曲率的求解方法及中心差分法求某离散点的导数,从而达到很好的聚类效果且计算简单。
具体实施方式
步骤一:求出所有帧的平均顶点;
假设帧数为F(F>0),每一帧所含有的顶点数为N(N>0)。
设为第f帧模型中任意一个顶点,为第f帧模型模型的中心点,其中的值分别如下:
将其保存与矩阵A中,A的维数是3*F。
步骤二:分别求出这些平均顶点在x,y,z方向上的一阶导数、二阶导数存入相应的矩阵(用中心差分的方法去求导数)。具体做法如下:
结构动力学中的中心差分法是基于有限差分代替位移对时间求导(对位移一阶求导得到速度,对位移二阶求导得加速度)。如果采用等时间步长,Δt(i)=Δt(Δt为常数),用u代表位移,则速度和加速度的中心差分近似为:
u′(i)=[u(i+1)-u(i-1)]/(2Δt);
u″(i)=[u(i+1)-2u(i)+u(i-1)]/(Δt*Δt).
因而可以利用这种巧妙的方法来分别计算各帧三维离散顶点的导数。这里,分别对各顶点的x,y,z方向上使用中心差分法,即要计算第f帧的导数可利用第f‐1和f+1帧的坐标来计算,这样第一帧和最后一帧省略不计:
x,y,z方向上的一阶导数:
x(1,i)=(A(1,i+1)-A(1,i-1))/2;
y(1,i)=(A(2,i+1)-A(2,i-1))/2;
z(1,i)=(A(3,i+1)-A(3,i-1))/2.
x,y,z方向上的二阶导数:
xx(1,i)=A(1,i+1)-2*A(1,i)+A(1,i-1);
yy(1,i)=A(2,i+1)-2*A(2,i)+A(2,i-1);
zz(1,i)=A(3,i+1)-2*A(3,i)+A(3,i-1).
将它们分别存入如下阵中,
D1=[x;y;z];
D2=[xx;yy;zz].
步骤三:求各帧中心顶点的曲率;
设空间曲线Γ由一般参数方程给定,则Γ在点的曲率为:
那么对于空间曲线公式则转换为:
步骤四:对所有曲率进行从大到小排序,再选取合适的前k个曲率。
步骤五:把选出来的k个曲率对应的帧索引当作聚类簇的节点,将所有的帧分为k+1簇。
这样便最终完成了帧聚类。
Claims (1)
1.根据曲率对三维模型进行帧聚类的方法,其特征在于该方法包括如下步骤:
步骤一:求出所有帧的中心点,具体是:
假设帧数为F,每一帧所含有的顶点数为N,其中F>0,N>0;
设为第f帧模型中第i个顶点,为第f帧模型的中心点,其中的值分别如下:
将其保存于矩阵A中,矩阵A的维数是3*F;
步骤二:分别求出这些中心点在x,y,z方向上的一阶导数、二阶导数存入相应的矩阵,具体是:
计算第f帧的导数利用第f-1和f+1帧的坐标来计算,这样第一帧和最后一帧省略不计:
x,y,z方向上的一阶导数:
x(1,i)=(A(1,i+1)-A(1,i-1))/2
y(1,i)=(A(2,i+1)-A(2,i-1))/2
z(1,i)=(A(3,i+1)-A(3,i-1))/2
x,y,z方向上的二阶导数:
xx(1,i)=A(1,i+1)-2*A(1,i)+A(1,i-1)
yy(1,i)=A(2,i+1)-2*A(2,i)+A(2,i-1)
zz(1,i)=A(3,i+1)-2*A(3,i)+A(3,i-1)
将它们分别存入如下矩阵中,
D1=[x;y;z]
D2=[xx;yy;zz]
步骤三:求各帧中心点的曲率,具体是:
设空间曲线Γ由一般参数方程给定,则Γ在点的曲率为:
那么对于空间曲线公式则转换为:
步骤四:对所有曲率进行从大到小排序,再选取合适的前k个曲率;
步骤五:把选出来的k个曲率对应的帧当作聚类簇的节点,将所有的帧分为k+1簇,这样便最终完成了帧聚类。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510057363.3A CN104680567B (zh) | 2015-02-04 | 2015-02-04 | 根据曲率对三维模型进行帧聚类的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510057363.3A CN104680567B (zh) | 2015-02-04 | 2015-02-04 | 根据曲率对三维模型进行帧聚类的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104680567A true CN104680567A (zh) | 2015-06-03 |
CN104680567B CN104680567B (zh) | 2016-05-11 |
Family
ID=53315559
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510057363.3A Active CN104680567B (zh) | 2015-02-04 | 2015-02-04 | 根据曲率对三维模型进行帧聚类的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104680567B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105574867A (zh) * | 2015-12-15 | 2016-05-11 | 浙江工商大学 | 根据曲率对三维模型进行空域分割的方法 |
CN105590320A (zh) * | 2015-12-21 | 2016-05-18 | 浙江工商大学 | 用改进的k-means对三维模型进行空域分割的方法 |
CN105654536A (zh) * | 2015-12-21 | 2016-06-08 | 浙江工商大学 | 根据曲率对三维模型进行时域聚类的方法 |
CN106023255A (zh) * | 2016-05-19 | 2016-10-12 | 浙江工商大学 | 基于运动的三维模型空域分割的方法 |
CN111220163A (zh) * | 2018-11-26 | 2020-06-02 | 厦门雅迅网络股份有限公司 | 基于曲率半径计算的弯道判断方法、终端设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6556696B1 (en) * | 1997-08-19 | 2003-04-29 | The United States Of America As Represented By The Department Of Health And Human Services | Method for segmenting medical images and detecting surface anomalies in anatomical structures |
CN103530899A (zh) * | 2013-10-10 | 2014-01-22 | 浙江万里学院 | 基于几何特征性的点云简化方法 |
-
2015
- 2015-02-04 CN CN201510057363.3A patent/CN104680567B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6556696B1 (en) * | 1997-08-19 | 2003-04-29 | The United States Of America As Represented By The Department Of Health And Human Services | Method for segmenting medical images and detecting surface anomalies in anatomical structures |
CN103530899A (zh) * | 2013-10-10 | 2014-01-22 | 浙江万里学院 | 基于几何特征性的点云简化方法 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105574867A (zh) * | 2015-12-15 | 2016-05-11 | 浙江工商大学 | 根据曲率对三维模型进行空域分割的方法 |
CN105574867B (zh) * | 2015-12-15 | 2018-06-29 | 浙江工商大学 | 根据曲率对三维模型进行空域分割的方法 |
CN105590320A (zh) * | 2015-12-21 | 2016-05-18 | 浙江工商大学 | 用改进的k-means对三维模型进行空域分割的方法 |
CN105654536A (zh) * | 2015-12-21 | 2016-06-08 | 浙江工商大学 | 根据曲率对三维模型进行时域聚类的方法 |
CN105590320B (zh) * | 2015-12-21 | 2018-07-03 | 浙江工商大学 | 用改进的k-means对三维模型进行空域分割的方法 |
CN105654536B (zh) * | 2015-12-21 | 2019-04-12 | 浙江工商大学 | 根据曲率对三维模型进行时域聚类的方法 |
CN106023255A (zh) * | 2016-05-19 | 2016-10-12 | 浙江工商大学 | 基于运动的三维模型空域分割的方法 |
CN111220163A (zh) * | 2018-11-26 | 2020-06-02 | 厦门雅迅网络股份有限公司 | 基于曲率半径计算的弯道判断方法、终端设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN104680567B (zh) | 2016-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104680567B (zh) | 根据曲率对三维模型进行帧聚类的方法 | |
CN106127297B (zh) | 基于张量分解的深度卷积神经网络的加速与压缩方法 | |
Howard et al. | Mobilenets: Efficient convolutional neural networks for mobile vision applications | |
CN105184362B (zh) | 基于参数量化的深度卷积神经网络的加速与压缩方法 | |
Barbič et al. | Subspace self-collision culling | |
CN107133955A (zh) | 一种多层次结合的协同显著性检测方法 | |
US11954802B2 (en) | Method and system for generating polygon meshes approximating surfaces using iteration for mesh vertex positions | |
CN111985597B (zh) | 模型压缩方法及装置 | |
Deng et al. | Fluid simulation on neural flow maps | |
US12141921B2 (en) | Method and system for generating polygon meshes approximating surfaces using root-finding and iteration for mesh vertex positions | |
Ning et al. | Point-voxel and bird-eye-view representation aggregation network for single stage 3D object detection | |
TW201921264A (zh) | 在基於處理器系統中使用矩陣處理器提供高效浮點運算 | |
Wang et al. | An FPGA-based online reconfigurable CNN edge computing device for object detection | |
CN109767480B (zh) | 基于显著性和空间特征的三维网格动画压缩方法 | |
CN115577793A (zh) | 一种面向网络结构的映射式蒸馏方法及其训练方法 | |
CN105574867B (zh) | 根据曲率对三维模型进行空域分割的方法 | |
CN107644393A (zh) | 一种基于gpu的丰度估计算法的并行实现方法 | |
Zolfaghari et al. | 3D human pose estimation from image using couple sparse coding | |
CN105590320B (zh) | 用改进的k-means对三维模型进行空域分割的方法 | |
Zhao et al. | A gradient optimization and manifold preserving based binary neural network for point cloud | |
Cai et al. | Violence detection based on spatio-temporal feature and fisher vector | |
CN110909473B (zh) | 基于SP H与shape matching混合模型的动态流固交互仿真方法 | |
CN116269312A (zh) | 基于脑图谱融合模型的个体脑图谱绘制方法及装置 | |
CN112560326B (zh) | 压力场的确定方法及装置 | |
CN112784471B (zh) | 水环境可视仿真方法、终端设备以及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |