[发明专利]一种基于AABB包围盒模型分割和迭代的碰撞检测算法在审

专利信息
申请号: 202310283532.X 申请日: 2023-03-22
公开(公告)号: CN116386025A 公开(公告)日: 2023-07-04
发明(设计)人: 熊文;吴承轩 申请(专利权)人: 东南大学
主分类号: G06V20/64 分类号: G06V20/64;G06V10/26;G06V10/764;G06T17/20
代理公司: 南京经纬专利商标代理有限公司 32200 代理人: 陈月菊
地址: 210096 *** 国省代码: 江苏;32
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 aabb 包围 模型 分割 碰撞 检测 算法
【权利要求书】:

1.一种基于AABB包围盒模型分割和迭代的碰撞检测算法,其特征在于,包括:

S1、使用AABB包围盒对待测模型分别进行包裹并生成模型包围盒,以模型包围盒为对象进行碰撞检测,并判断模型包围盒之间是否发生碰撞,若发生碰撞则进行步骤S2,否则结束检测,输出待测模型不发生碰撞;

S2、以模型包围盒的形心为球心、以模型包围盒的棱与形心距离的最大值为半径,生成模型包围球,以模型包围球为对象进行碰撞检测,并判断模型包围球之间是否发生碰撞,若发生碰撞则进行步骤S3,否则结束检测,输出待测模型不发生碰撞;

S3、求出待测模型表面的极值点坐标和鞍部坐标,根据极值点坐标所在的xy、xz和yz三个平面对待测模型进行分割,生成若干个待测子模型,使用AABB包围盒对每个待测子模型分别进行包裹并生成子模型包围盒,并标记属于同一待测模型的子模型包围盒;

S4、对非同一待测模型的子模型包围盒之间分别进行行碰撞检测,并判断非同一待测模型的子模型包围盒之间是否发生碰撞,若发生碰撞则进行步骤S5,否则结束检测,输出待测模型不发生碰撞;

S5、提取发生碰撞的子模型包围盒,并将其内部的模型进行三维网格分割,生成若干个网格单元,对非同一子模型包围盒的网格单元之间分别进行行碰撞检测,若存在碰撞,则提取发生碰撞的网格单元,并减小网格单元大小再次进行三维网格分割,循环本步骤进行碰撞检测;当网格单元达到网格单元大小的下限值时终止迭代,输出待测模型发生碰撞;若迭代过程中未出现碰撞,则输出待测模型不存在碰撞问题。

2.根据权利要求1所述的基于AABB包围盒模型分割和迭代的碰撞检测算法,其特征在于,S2中判断模型包围球之间是否发生碰撞的方法具体包括:

若两个模型包围球的距离≥两个模型包围球的球心到表面的最小距离和的平方,则判定为未发生碰撞,否则判定为发生碰撞。

3.根据权利要求1或2所述的基于AABB包围盒模型分割和迭代的碰撞检测算法,其特征在于,S2中判断模型包围球之间是否发生碰撞的公式如下:

(pos1-pos2)·length2≤(r1+r2)2

其中,pos1与pos2分别为两个待测模型的包围盒形心的位置坐标,pos1-pos2为待测模型2指向待测模型1的向量,length2为由待测模型2指向待测模型1的向量长度的平方。

4.根据权利要求1所述的基于AABB包围盒模型分割和迭代的碰撞检测算法,其特征在于,S3中计算待测模型表面的极值点坐标和鞍部坐标具体包括:

S3-1:设待测模型的表面方程为:

z=f(x,y)

S3-2:求解表面方程在(x0,y0)点处的导数:

其中,h表示一个趋于0的小量;

S3-3:计算Hessian矩阵:

S3-4:求解Hessian矩阵的特征值和特征向量:

其中,λ表示特征值,表示特征向量;

S3-5:根据特征值的正负性判断极值点的类型:当特征值均为正时,为局部极小值;当特征值均为负时,为局部极大值;当特征值一个为正一个为负时,为鞍点。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于东南大学,未经东南大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202310283532.X/1.html,转载请声明来源钻瓜专利网。

同类专利
专利分类
×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top