三维服装与人体模型的碰撞检测方法及装置制造方法及图纸

技术编号:14478511 阅读:108 留言:0更新日期:2017-01-25 11:11
本发明专利技术提供了一种三维服装与人体模型的碰撞检测方法及装置,其中,该方法包括:获取待展示服装对应的三维服装版片及三维人体模型;设置三维服装版片中各个离散网格点的碰撞参数,建立三维服装版片对应的质点弹簧模型;在质点弹簧模型移动到与三维人体模型匹配的碰撞位置时,根据包围盒树算法对质点弹簧模型和三维人体模型进行碰撞检测,以确定三维服装版片是否真实贴合到三维人体模型上。上述过程使得待展示的服装在三维人体模型上的展示效果更加逼真、真实;同时包围盒树算法的应用使得三维服装版片和三维人体模型间的碰撞检测能够快速完成,保证了整个过程的实时性。

【技术实现步骤摘要】

本专利技术涉及计算机辅助服装造型
,具体而言,涉及一种三维服装与人体模型的碰撞检测方法及装置
技术介绍
基于虚拟现实技术的快速发展,人们迫切希望能对现实世界进行真实模拟。对于目前的网上服装消费者来说,他们不仅想要看到服装穿在模特身上的标准样式,更希望看到服装穿在自己身上的真实效果,从而针对性的选择服装的款式、型号、色彩搭配、整体造型。目前,基于计算机辅助服装造型技术,它是将服装穿在利用计算机软件事先做好的模特上的,具体包括:获取三维服装版片与三维人体模型,然后将三维服装版片通过手动方式移动到三维人体模型上,最终通过缝合技术将服装展示在三维人体模型上。但是,通过上述手动方法实现的三维服装版片与三维人体模型间的匹配过程中,因为手动操作存在误差,所以服装展示在三维人体模型上的效果不精确。
技术实现思路
有鉴于此,本专利技术实施例的目的在于提供一种三维服装与人体模型的碰撞检测方法及装置,以模拟布料与人体的对碰撞效果,得到服装在人体模型上的穿衣效果。第一方面,本专利技术实施例提供了一种三维服装与人体模型的碰撞检测方法,所述方法包括:获取待展示服装对应的三维服装版片及三维人体模型;所述三维服装版片包括多个三角形,所述三角形包括多个公共顶点和非公共顶点;设置所述三维服装版片中各个离散网格点的碰撞参数,建立所述三维服装版片对应的质点弹簧模型;所述碰撞参数至少包括:质量、弹性力和阻力;所述质点弹簧模型包括质点、拉伸剪切弹簧和弯曲弹簧,分别对应所述三维服装版片的公共顶点、三角形边和两个相邻三角形非公共顶点的连接线段;所述离散网格点包括所述公共顶点和非公共顶点;在所述质点弹簧模型移动到与所述三维人体模型匹配的碰撞位置时,根据包围盒树算法对所述质点弹簧模型和所述三维人体模型进行碰撞检测,以确定所述三维服装版片是否真实贴合到所述三维人体模型上;其中,所述三维人体模型由多个三角面组成。结合第一方面,本专利技术实施例提供了第一方面的第一种可能的实施方式,其中,所述获取待展示服装对应的三维服装版片,包括:获取待展示服装对应的多个二维服装版片;建立各个所述二维服装版片的第一外包围盒;其中,所述第一外包围盒包括根据预设密度阈值生成的均匀的离散网格点;通过三角形剖分方法对所述离散网格点进行剖分处理,得到三角面化的三维服装版片。结合第一方面,本专利技术实施例提供了第一方面的第二种可能的实施方式,其中,所述根据包围盒树算法对所述质点弹簧模型和所述三维人体模型进行碰撞检测,包括:建立所述三维人体模型的第二外包围盒;确定所述第二外包围盒与所述质点弹簧模型的质点的初始碰撞位置;根据所述初始碰撞位置,计算所述第二外包围盒与所述质点弹簧模型的质点的精确碰撞点;根据计算得到的所述精确碰撞点,进行所述第二外包围盒与所述质点弹簧模型的质点的碰撞检测。结合第一方面的第二种可能的实施方式,本专利技术实施例提供了第一方面的第三种可能的实施方式,其中,所述建立所述三维人体模型的第二外包围盒,包括:通过三角形标记分组方法对所述三维人体模型的三角面进行标记分组处理,得到标记分组后的三角面化的三维人体模型;按照以下公式计算网格尺寸:其中S代表网格尺寸,Pmax代表所述三维人体模型的三角面在空间上x、y、z方向上的极大值,Pmin代表所述三维人体模型的三角面在空间上x、y、z方向上的极小值;根据计算得到的网格尺寸和所述质点弹簧模型的三角面的x、y、z方向的哈希表关键字,计算哈希表;根据所述哈希表,建立所述三维人体模型的第二外包围盒。结合第一方面的第三种可能的实施方式,本专利技术实施例提供了第一方面的第四种可能的实施方式,其中,所述根据所述初始碰撞位置,计算所述第二外包围盒与所述质点弹簧模型的质点的精确碰撞点,包括:根据公式计算所述第二外包围盒与所述质点弹簧模型的质点的精确碰撞点;其中,X代表质点位置,Δx代表上一时刻质点和本次质点位置的矢量差,Δt代表时间变化,F代表质点受到的力,M代表质点质量。结合第一方面的第四种可能的实施方式,本专利技术实施例提供了第一方面的第五种可能的实施方式,其中,所述根据计算得到的所述精确碰撞点,进行所述第二外包围盒与所述质点弹簧模型的质点的碰撞检测,包括:根据公式检测所述质点弹簧模型的质点和所述三维人体模型的第二外包围盒的平面是否发生碰撞;其中,X表示质点的位置,V表示质点的速度,P表示平面上的一点,N代表平面的法向量;ε表示布料的厚度,(X-P)*N<ε表示布料和平面发生了接触;N*V<0表示粒子像平面方向运动;当检测到所述质点弹簧模型的质点和所述三维人体模型的平面接触且,所述质点向平面方向运动,判定所述质点和所述平面发生碰撞。结合第一方面的第四种可能的实施方式,本专利技术实施例提供了第一方面的第六种可能的实施方式,其中,所述根据计算得到的所述精确碰撞点,进行所述第二外包围盒与所述质点弹簧模型的质点的碰撞检测,包括:判断当前时刻的质点弹簧模型的质点位置和下一时间的所述质点位置形成的向量和所述第二外包围盒是否相交;若相交,则所述质点弹簧模型的质点和所述三维人体模型发生碰撞。第二方面,本专利技术实施例提供了一种三维服装与人体模型的碰撞检测装置,所述碰撞检测装置包括:获取模块,用于获取待展示服装对应的三维服装版片及三维人体模型;所述三维服装版片为三角形,所述三角形包括多个公共顶点和非公共顶点;建立模块,用于设置所述三维服装版片中各个离散网格点的碰撞参数,建立所述三维服装版片对应的质点弹簧模型;所述碰撞参数至少包括:质量、弹性力和阻力;所述质点弹簧模型包括质点、拉伸剪切弹簧和弯曲弹簧,分别对应所述三维服装版片的公共顶点、三角形边和两个相邻三角形非公共顶点的连接线段;所述离散网格点包括所述公共顶点和非公共顶点;碰撞检测模块,用于在所述质点弹簧模型移动到与所述三维人体模型匹配的碰撞位置时,根据包围盒树算法对所述质点弹簧模型和所述三维人体模型进行碰撞检测,以确定所述三维服装版片是否真实贴合到所述三维人体模型上。结合第二方面,本专利技术实施例提供了第二方面的第一种可能的实施方式,其中,所述获取模块,包括:获取单元,用于获取待展示服装对应的多个二维服装版片;第一建立单元,用于建立各个所述二维服装版片的第一外包围盒;其中,所述第一外包围盒包括根据预设密度阈值生成的均匀的离散网格点;剖分处理单元,用于通过三角形剖分方法对所述离散网格点进行剖分处理,得到三角面化的三维服装版片。结合第二方面的第一种可能的实施方式,本专利技术实施例提供了第二方面的第二种可能的实施方式,其中,所述碰撞检测模块,包括:第二建立单元,用于建立所述三维人体模型的第二外包围盒;确定单元,用于确定所述第二外包围盒与所述质点弹簧模型的质点的初始碰撞位置;计算单元,用于根据所述初始碰撞位置,计算所述第二外包围盒与所述质点弹簧模型的质点的精确碰撞点;碰撞检测单元,用于根据计算得到的所述精确碰撞点,进行所述第二外包围盒与所述质点弹簧模型的质点的碰撞检测。本专利技术实施例提供的一种三维服装与人体模型的碰撞检测方法及装置,包括获取待展示服装对应的三维服装版片及三维人体模型;三维服装版片为三角形,三角形包括多个公共顶点和非公共顶点;设置三维服装版片中各个离散网格点的碰撞参数,建立三维服装版片对应的质点弹簧模型;碰撞参数至少包括:质本文档来自技高网...
三维服装与人体模型的碰撞检测方法及装置

【技术保护点】
一种三维服装与人体模型的碰撞检测方法,其特征在于,所述方法包括:获取待展示服装对应的三维服装版片及三维人体模型;所述三维服装版片包括多个三角形,所述三角形包括多个公共顶点和非公共顶点;设置所述三维服装版片中各个离散网格点的碰撞参数,建立所述三维服装版片对应的质点弹簧模型;所述碰撞参数至少包括:质量、弹性力和阻力;所述质点弹簧模型包括质点、拉伸剪切弹簧和弯曲弹簧,分别对应所述三维服装版片的公共顶点、三角形边和两个相邻三角形非公共顶点的连接线段;所述离散网格点包括所述公共顶点和非公共顶点;在所述质点弹簧模型移动到与所述三维人体模型匹配的碰撞位置时,根据包围盒树算法对所述质点弹簧模型和所述三维人体模型进行碰撞检测,以确定所述三维服装版片是否真实贴合到所述三维人体模型上;其中,所述三维人体模型由多个三角面组成。

【技术特征摘要】
1.一种三维服装与人体模型的碰撞检测方法,其特征在于,所述方法包括:获取待展示服装对应的三维服装版片及三维人体模型;所述三维服装版片包括多个三角形,所述三角形包括多个公共顶点和非公共顶点;设置所述三维服装版片中各个离散网格点的碰撞参数,建立所述三维服装版片对应的质点弹簧模型;所述碰撞参数至少包括:质量、弹性力和阻力;所述质点弹簧模型包括质点、拉伸剪切弹簧和弯曲弹簧,分别对应所述三维服装版片的公共顶点、三角形边和两个相邻三角形非公共顶点的连接线段;所述离散网格点包括所述公共顶点和非公共顶点;在所述质点弹簧模型移动到与所述三维人体模型匹配的碰撞位置时,根据包围盒树算法对所述质点弹簧模型和所述三维人体模型进行碰撞检测,以确定所述三维服装版片是否真实贴合到所述三维人体模型上;其中,所述三维人体模型由多个三角面组成。2.根据权利要求1所述的方法,其特征在于,所述获取待展示服装对应的三维服装版片,包括:获取待展示服装对应的多个二维服装版片;建立各个所述二维服装版片的第一外包围盒;其中,所述第一外包围盒包括根据预设密度阈值生成的均匀的离散网格点;通过三角形剖分方法对所述离散网格点进行剖分处理,得到三角面化的三维服装版片。3.根据权利要求1所述的方法,其特征在于,所述根据包围盒树算法对所述质点弹簧模型和所述三维人体模型进行碰撞检测,包括:建立所述三维人体模型的第二外包围盒;确定所述第二外包围盒与所述质点弹簧模型的质点的初始碰撞位置;根据所述初始碰撞位置,计算所述第二外包围盒与所述质点弹簧模型的质点的精确碰撞点;根据计算得到的所述精确碰撞点,进行所述第二外包围盒与所述质点弹簧模型的质点的碰撞检测。4.根据权利要求3所述的方法,其特征在于,所述建立所述三维人体模型的第二外包围盒,包括:通过三角形标记分组方法对所述三维人体模型的三角面进行标记分组处理,得到标记分组后的三角面化的三维人体模型;按照以下公式计算网格尺寸:其中S代表网格尺寸,Pmax代表所述三维人体模型的三角面在空间上x、y、z方向上的极大值,Pmin代表所述三维人体模型的三角面在空间上x、y、z方向上的极小值;根据计算得到的网格尺寸和所述质点弹簧模型的三角面的x、y、z方向的哈希表关键字,计算哈希表;根据所述哈希表,建立所述三维人体模型的第二外包围盒。5.根据权利要求4所述的方法,其特征在于,所述根据所述初始碰撞位置,计算所述第二外包围盒与所述质点弹簧模型的质点的精确碰撞点,包括:根据公式计算所述第二外包围盒与所述质点弹簧模型的质点的精确碰撞点;其中,X代表质点位置,Δx代表上一时刻质点和本次质点位置的矢量差,Δt代表时间变化,F代表质点受到的力,M代表质点质量。6.根据权利要求...

【专利技术属性】
技术研发人员:徐艳霞俞俊平李家兴
申请(专利权)人:北京维盛视通科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1